@warmhub/sdk-ts 0.114.0 → 0.116.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,25 +1,25 @@
1
- import {z as z$1}from'zod';var Hn="X-WarmHub-Client-Flags",_n="compatibility-override";var Gn=/^[a-z0-9-]+$/;function Pn(n){return Gn.test(n)}function Mn(n){return [...new Set(n)].sort().join(",")}var kn="X-WarmHub-Client",Un="@warmhub/sdk-ts",Jn="warmhub-cli",vn="warmhub-sdk-py";function Kn(n,B){return `${n}/${B}`}var Vn=["add","revise","retract","reaffirm","rename"];var jn=["shape","thing","assertion","collection"];function CB(n){let B=n.indexOf("/");return B===-1?null:{shapePrefix:n.slice(0,B),bareName:n.slice(B+1)}}function re(n){return n.kind==="shape"||n.kind==="thing"||n.kind==="assertion"||n.kind==="collection"?n.kind:n.about!==void 0?"assertion":typeof n.type=="string"&&n.type.length>0&&Array.isArray(n.members)?"collection":(n.name?n.name.split("/").filter(Boolean):[]).length>=3?"assertion":"thing"}var Yn="X-WarmHub-Install-Repo",Qn="X-WarmHub-Signature",Wn="X-WarmHub-Timestamp",qn=/^[A-Za-z0-9\-._~]$/;function Qe(n){let B="",e=new TextEncoder().encode(n);for(let t of e){let i=String.fromCharCode(t);qn.test(i)?B+=i:B+=`%${t.toString(16).toUpperCase().padStart(2,"0")}`;}return B}function zn(n){return typeof n=="boolean"?n?"true":"false":typeof n=="number"?JSON.stringify(n):n}function Xn(n){return n==="POST"||n==="PUT"||n==="PATCH"}function We(n){let B=[];for(let[e,t]of Object.entries(n))t!=null&&B.push([e,zn(t)]);return B.sort(([e],[t])=>e<t?-1:e>t?1:0),B.map(([e,t])=>`${Qe(e)}=${Qe(t)}`).join("&")}function qe(n){let B="";for(let e of n)B+=e.toString(16).padStart(2,"0");return B}async function ze(n){let B=await crypto.subtle.digest("SHA-256",new TextEncoder().encode(n));return qe(new Uint8Array(B))}var Xe="e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";function $e(n){return [n.method,n.path,n.canonicalQuery,n.installRepo,n.bodyHash,String(n.timestamp)].join(`
2
- `)}async function $n(n,B){let e=new TextEncoder,t=await crypto.subtle.importKey("raw",e.encode(n),{name:"HMAC",hash:"SHA-256"},false,["sign"]),i=await crypto.subtle.sign("HMAC",t,e.encode(B));return qe(new Uint8Array(i))}var Zn=/^sha256=([0-9a-f]{64})$/,Bi=300;async function ei(n){let B=Zn.exec(n.signature);if(!B)return {ok:false,reason:"invalid-format"};let e=B[1],t=n.toleranceSec??Bi;if(Math.abs(n.nowUnixSeconds-n.timestamp)>t)return {ok:false,reason:"expired"};let r=n.body.length===0?Xe:await ze(n.body),s=$e({method:n.method,path:n.path,canonicalQuery:We(n.query),installRepo:n.installRepo,bodyHash:r,timestamp:n.timestamp}),C=await $n(n.secret,s);return ti(e,C)?{ok:true}:{ok:false,reason:"invalid-signature"}}function ti(n,B){if(n.length!==B.length)return false;let e=0;for(let t=0;t<n.length;t++)e|=n.charCodeAt(t)^B.charCodeAt(t);return e===0}var Ze=["repo:read","repo:checkpoint-read","repo:checkpoint-generate","repo:write","repo:configure","repo:admin","repo:action-callback"];function ni(n){return Ze.includes(n)}var tt=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function ii(n){return tt.test(n)?n:null}function Bt(n){let B=tt.exec(n);return {major:Number(B[1]),minor:Number(B[2]),patch:Number(B[3]),prerelease:B[4]?B[4].split("."):[]}}var et=/^(0|[1-9]\d*)$/;function ri(n,B){if(n.length===0&&B.length===0)return 0;if(n.length===0)return 1;if(B.length===0)return -1;let e=Math.min(n.length,B.length);for(let t=0;t<e;t++){let i=n[t],r=B[t];if(i===void 0||r===void 0)break;if(i===r)continue;let s=et.test(i),C=et.test(r);return s&&C?Number(i)<Number(r)?-1:1:s?-1:C?1:i<r?-1:1}return n.length===B.length?0:n.length<B.length?-1:1}function si(n,B){let e=Bt(n),t=Bt(B);return e.major!==t.major?e.major<t.major?-1:1:e.minor!==t.minor?e.minor<t.minor?-1:1:e.patch!==t.patch?e.patch<t.patch?-1:1:ri(e.prerelease,t.prerelease)}var D=class oB{static FOLD_CASE=1;static LITERAL=2;static CLASS_NL=4;static DOT_NL=8;static ONE_LINE=16;static NON_GREEDY=32;static PERL_X=64;static UNICODE_GROUPS=128;static WAS_DOLLAR=256;static LOOKBEHIND=512;static MATCH_NL=oB.CLASS_NL|oB.DOT_NL;static PERL=oB.CLASS_NL|oB.ONE_LINE|oB.PERL_X|oB.UNICODE_GROUPS;static POSIX=0;static UNANCHORED=0;static ANCHOR_START=1;static ANCHOR_BOTH=2},X={CASE_INSENSITIVE:1,DOTALL:2,MULTILINE:4,DISABLE_UNICODE_GROUPS:8,LONGEST_MATCH:16,LOOKBEHINDS:512},OB=128,ae=new Int32Array(OB),le=new Int32Array(OB),GB=65535;for(let n=0;n<OB;n++)n>=97&&n<=122?ae[n]=n-32:ae[n]=n,n>=65&&n<=90?le[n]=n+32:le[n]=n;var E=class{static CODES=new Map([["\x07",7],["\b",8],[" ",9],[`
3
- `,10],["\v",11],["\f",12],["\r",13],[" ",32],['"',34],["$",36],["&",38],["'",39],["(",40],[")",41],["*",42],["+",43],["-",45],[".",46],["0",48],["1",49],["2",50],["3",51],["4",52],["5",53],["6",54],["7",55],["8",56],["9",57],[":",58],["<",60],[">",62],["?",63],["A",65],["B",66],["C",67],["F",70],["P",80],["Q",81],["U",85],["Z",90],["[",91],["\\",92],["]",93],["^",94],["_",95],["`",96],["a",97],["b",98],["f",102],["i",105],["m",109],["n",110],["r",114],["s",115],["t",116],["v",118],["x",120],["z",122],["{",123],["|",124],["}",125]]);static toUpperCase(n){if(n<OB)return ae[n];let B=String.fromCodePoint(n).toUpperCase(),e=B.codePointAt(0)>GB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toLowerCase(),i=t.codePointAt(0)>GB?2:1;return t.length>i||t.codePointAt(0)!==n?n:B.codePointAt(0)}static toLowerCase(n){if(n<OB)return le[n];let B=String.fromCodePoint(n).toLowerCase(),e=B.codePointAt(0)>GB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toUpperCase(),i=t.codePointAt(0)>GB?2:1;return t.length>i||t.codePointAt(0)!==n?n:B.codePointAt(0)}},a=class{constructor(n,B=false){this.data=n,this.isStride1=B,this.SIZE=B?2:3;}getLo(n){return this.data[n*this.SIZE]}getHi(n){return this.data[n*this.SIZE+1]}getStride(n){return this.isStride1?1:this.data[n*this.SIZE+2]}get length(){return this.data.length/this.SIZE}},Lt=new Uint8Array(256);for(let n=0,B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-";n<64;n++)Lt[B.charCodeAt(n)]=n;var wt=n=>{let B=[],e=0,t=0;for(let i=0;i<n.length;i++){let r=Lt[n.charCodeAt(i)];e|=(r&31)<<t,(r&32)===0?(B.push(e),e=0,t=0):t+=5;}return B},l=(n,B)=>{let e=wt(n),t=B?e.length/2:e.length/3,i=new Uint32Array(t*3),r=0,s=0;for(let C=0;C<t;C++)r+=e[s++],i[C*3]=r,r+=e[s++],i[C*3+1]=r,i[C*3+2]=B?1:e[s++];return i},Ci=n=>{let B=wt(n),e=new Map,t=0;for(let i=0;i<B.length;i+=2){t+=B[i];let r=B[i+1],s=r>>>1^-(r&1);e.set(t,t+s);}return e},PB=class{constructor(n){this.initializer=n,this.cache=new Map;}has(n){return n in this.initializer}get(n){if(this.cache.has(n))return this.cache.get(n);let B=this.initializer[n],e=B?B():null;return this.cache.set(n,e),e}},v=class{static _CASE_ORBIT=null;static get CASE_ORBIT(){return this._CASE_ORBIT||(this._CASE_ORBIT=Ci("rCgCIgCY+rQI4QiCuuBLgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCCgCBgCBgCBgCBgCBgCBgCB+7OB-BB-BB-BB-BB-BBskQB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BC-BB-BB-BB-BB-BB-BB-BByHBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBDCBBBCBBBCBBCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBxHBCBBBCBBBCBBB3SBmMBkNBCBBBCBBB8MBCBBB6MB6MBCBBC+EB0MB2MBCBBB6MB+MBiGBmNBiNBCBBBmKBikzCBmNBqNBkIBsNBCBBBCBBBCBBB0NBCBBB0NDCBBB0NBCBBByNByNBCBBBCBBB2NBCBBDCBBCwDFCBCBDBCBCBDBCBCBDBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBB9EBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCCBCBDBCBBBhGBvDBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBjICCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBH2iVBCBBBlKBwiVB+jVB+jVBCBBBlMBqEBuEBCBBBCBBBCBBBCBBBCBBB+hVB4hVB8hVBjNB7MC5MB5MCzMC1MB+0yCE5MB20yCC9MBu2yCBwyyCBo0yCChNBlNBo0yCBu-UBi0yCDlNC6-UBpNDrNIu+UDzNCm0yCBzNE0yyCBzNBpEBxNBxNBtEG1NLqxyCBkxyCnFoFrBCBBBCBBDCBBEkIBkIBkICoHHsCCqCBqCBqCCgEC+DB+DBmkOBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCC+BBgCBgCBgCBgCBgCBgCBgCBgCBrCBpCBpCBpCBmjOB-BB8BB-BB-BBgEB-BB-BByBBqgOBsDB-BBtwBB-BB-BB-BBsBBgDBCB-BB-BB-BBeB-BB-BB61OB-BB-BB-DB9DB9DBQB7DBmCE9CBrDBPBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBrFB-EBOBnHB3FB-FCCBBBNBCBBCjIBjIBjIBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB8kMB-BB6kMB-BB-BB-BB-BB-BB-BB-BB-BB-BBokMB-BB-BBkkMBkkMB-BB-BB-BB-BB-BB-BB-BB4jMB-BB-BB-BB-BB-BB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EBCBBBCBoiMBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBJCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBeBCBBBCBBBCBBBCBBBCBBBCBBBCBBBdBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDL-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-C64CgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOCgmOGgmODg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FDg8FBg8FBg8FhVg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBQBQBQBQBQBQDPBPBPBPBPBPjkC7mMB5mMBnmMBjmMBCBlmMB3lMBpiMBk8kCBCBBG-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FD-7FB-7FB-7F6FoglCEsuHRwjlCyDCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCB0DBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBG1DD97OCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQDPBPBPBPBPBPDQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQDPBPBPBPBPBPEQCQCQCQCPCPCPCPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPB0EB0EBsFBsFBsFBsFBoGBoGBgIBgIBgHBgHB8HB8HDQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQCSFPBPBzEBzEBRCxnOFSFrFBrFBrFBrFBREQBQClkOFPBPBnGBnGFQBQCljOCODPBPB-GB-GBNHSF-HB-HB7HB7HBRqJ53OE9tQBrmQH4Bc3BSgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfECBByZ0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzB34BgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CBCBBBt-UBruHBt+UB1iVBviVBCBBBCBBBCBBB3hVB5-UB9hVB7hVCCBBCCBBI9jVB9jVBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBICBBBCBBECBBN-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOC-lOG-lOzoeCBBBCBBBCBBBCBBBCBBBCBl8kCBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBTCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBnECBBBCBBBCBBBCBBBCBBBCBBBCBBDCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBKCBBBCBBBnglCBCBBBCBBBCBBBCBBBCBBECBBBvyyCDCBBBCBBBgDCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBn0yCB90yCB10yCBh0yCBn0yCCjxyCBzyyCBpxyCBg6BBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBB-CBl0yCBvjlCBCBBBCBBBt2yCBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBhkzCZCBB9a-5Bd-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCm6TCBB7gBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCH-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BmlBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvChDwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCFvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvC1DuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCCuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCCuCBuCBuCBuCBuCBuCBuCCuCBuCCtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCCtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCCtCBtCBtCBtCBtCBtCBtCCtCBtCk2BgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEO-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-D+CgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCL-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-B74CgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BhrVgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BhB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BD1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BtxekCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjC")),this._CASE_ORBIT}static _Print=null;static get Print(){return this._Print||(this._Print=new a(l("hB9CBjBLBCpWBDFBFGBCCCBSBCsMBClBBDxBBDCBC2BBJaBFFBSVBC-FBCvBBD6BBDkDBP6BBDwBBDOBCbBDCCBJBGfBIqCBCgFBCHBDBBDVBCGBCEEBCBDIBDBBDDBJFFBCCBDBDYBDCBCFBFBBDVBCGBCBBCBBCBBDCCBDBFBBDCBEIIBCBCIIBPBLCBCIBCCBCVBCGBCBBCEBDJBCCBCCBDQQBCBDLBIGBCCBCHBDBBDVBCGBCBBCEBDIBDBBDCBICBFBBCEBDRBLBBCFBECBCDBEBBCCCBEEBEEBBBELBFEBECBCDBDHHPUBGMBCCBCWBCPBDIBCCBCDBIBBCCBCBBDDBDJBIVBCCBCWBCJBCEBDIBCCBCDBIBBGCBCDBDJBCCBNMBCCBCyBBCCBCFBFPBDZBCCBCRBEXBCIBCDDBFBEFFBEBCCCBGBHJBDCBN5BBFcBmBBBCCCBDBCXBCCCBVBDEBCCCBFBCJBDDBhBnCBCjBBFmBBCjBBCOBCMBmBlGBCGGD4LBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBDfBEZBH1CBDFBD-TBCbBE4CBIVBKXBKTBNMBCCBCBBN9CBDJBHJBHNBCKBH4CBIqBBGlCBLeBCLBFLBFEEBoBBDEBMrBBFZBHKBE9BBDgCBCcBDKBHJBHNBDtBBDLBVsCBClFBJ7BBEOBE9BBGqBBDKBJqBBG1QBDFBDlBBDFBDHBCGCBdBD0BBCOBCNBDFBCSBDCBCIBSXBJuBBSBBDaBCMBEhBBPgBBQrEBF5UBXKBWz4BBD9LBGsBBCGGD3BBIBBPXBKGBCGBCGBCGBCGBCGBCGBCGBC9DBjBZBC4CBN1GBbPBC+BBC1CBDmDBGqBBC9CBC1CBKvBBCszcBE2BBK7KBV3FBJ8GBV7BBEJBH3BBJlCBJLBHzDBMdBEtCBCKBFgBBC2BBKNBDJBDmDBZbBLFBDFBDFBKGBCGBC7BBF9DBDJBHj9KBNWBFwBBloItLBDpDBnBGBNEBGZBCEBCCCBCCBCCBoUBhBpBBHyBBCSBCDBFEBCmEBF9FBEFBDFBDFBDCBEGBCGBOBBDLBCZBCSBCBBCOBDNBjB6DBGCBFsBBE3CBCMBEwBwBBsBBjEcBEwBBQbBFjBBKdBGqBBGdBCkBBFNBrB9EBDJBHjBBFjBBFnBBJzBBMLBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBCnCBJIBxBSBCBBGgBBEaBGaBnB3BBFTBDxBBCBBGHBCCBCcBDCBFJBIIBI-BBhBmBBFLBK1BBEcBDaBGZBIDBNGBxCoCB4ByBBOyBBItBBJJBHlBBEcBJBBxGeBCpBBCCBDBBRFBJIBiBtBBJpBBXZBnBbBVWBKtCBFjBBK9BBCEBOYBIJBH0BBCRBJmBBK-CBCTBMRBCuBB-BGBCCCBCBCOBCKBH6BBGJBHDBCHBDBBDVBCGBCBBCEBCJBDBBDCBDHHGGBDGBEEBMJBCDDClBBCJBCDDCDBCJBCBBJBBe7CBCEBfnCBJJBnF1BBDlBBjBkCBMJBHMBU5BBHJBHTBdaBDOBFWB6F7BBlDyCBNHBDDDBGBCBBCdBCBBDLBKJBnCHBDtBBDKBcnCBJyCBOoCBIJB3CHB5ChBBPJBHIBCsBBCNBLcBEfBDVBCNBqCGBCBBCrBBECCBCCBHBJJBHFBCBBCkBBCBBCFBIJBHrBBFJB3HYBIQBCoBBEcB2CQQBwBBO6cBnDuDBCEBMjGBtyCiDBOvhBBRVBL68DBGmSB61G5BBn2B4RBIeBCJBFwCBCJBHdBDFBLlCBLJBCGBCUBGSBxN5BBnG6CBGYBDYBtBqCBF4BBIQBhCEBMGBK1mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBDDBh7D8HBEzNBHWBQQBQtBBDWBKzDB9B1HBLmBBDpCBJvDBWlCB7DTBNTBN2CBKYBoE0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBD9VBQEBCOBxiBeBHFB2GGBCQBDGBCBBCEBG9BBiBxDxDBrBBENBDJBFBBhKeBS5BBGxOxOBoBB3GqBBFhGhGBdBCVBJBBhHGBCDBCBBCOBCkGBDPBqBrCBFJBFBByYjCBtC8BBjGDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBBvIrBBFjDBNOBDOBCOBCkBBLtFB5BcBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBCmDBmgB-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIBnkzVvHB",false))),this._Print}static CATEGORIES=new PB({C:()=>new a(l("AfBgDgBBOrWrWBHHBCBICCVuMuMnBBBzBBBE4B4BBGBcDBHQBXhGhGxBBB8BBBmDNB8BBByBBBQddBCCMEBhBGBsCiFiFJBBDBBXIICCBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBPMMBEB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKMMBDBbEByBPBDBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBjoIBvLBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCB-FCBHBBHBBHBBECBIIIBLBDBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIB-BGGBLBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMBxhBPBXJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBF-6DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBrCHBxDUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBNDBLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIlkzVBxHvw-FB",false)),Cc:()=>new a(l("AfgDgB",true)),Cf:()=>new a(l("tFzqBzqBBEBXhGhGyBhMhMBxCxCs5D9-B9-BBDBbEByBEBCJBw03B6H6HBBBimEQQj7IPBhjiBDBwmFHBn0rYffB+CB",false)),Cn:()=>new a(l("4bBBHDBICCVuMuMnBBBzBBBE4B4BBGBcDBHKBvI9B9BBmDmDBMB8BBByBBBQddBCCMEBjBEBuHJJBDDBXXICCBBBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBbFB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKmDmDNBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBDBvzIBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCC-FCBHBBHBBHBBECBIIIBIBGBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIBlCJBCBBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMB3iBJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBJ76DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBjGUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBNDBLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIm8yVBCdBhD-DBxHvw-BB---BBB---BBB",false)),Co:()=>new a(l("gg4B-nGh4hc9--BD9--B",true)),Cs:()=>new a(l("gg2B--B",true)),L:()=>new a(l("hCZBHZBwBLLFGGBVBCeBCpOBFLBPEBICCiEEBCBBDDBCHHCCBCCCBSBCyCBCqEBJlFBClBBDHHBnBBoCaBFDBuBqBBkBBBCiDBCQQBIIBLLBBBDRRCdBe4CBMZZBfBKBBFGGBUBFKKEYYBXBIKBGXBCGBRpBB7B1BBETTIJBQPBFHBDBBDVBCGBCEEBCBERROBBCCBPBBLJJBEBFBBDVBCGBCBBCBBCBBgBDBCUUBBBRIBCCBCVBCGBCBBCEBETTQBBYMMBGBDBBDVBCGBCBBCEBEffBCCBBBQSSCFBECBCDBEBBCCCBEEBEEBBBELBX1B1BBGBCCBCWBCPBEbbBBBCBBDBBfFFBGBCCBCWBCJBCEBEffBBBCBBQBBSIBCCBCoBBDRRGCBJCBZFBGRBEXBCIBCDDBFB7BvBBCBBNGB7BBBCCCBDBCXBCCCBIBCBBKDDBDBCWWBCBhBgCgCBGBCjBBcEB0DqBBVRRBEBFDBEEEBIIBBBFMBNSSBkBBCGGDqBBCsKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPBR1CBDFBErTBDQBCZBGqCBHHBIRBOSBPRBPMBCCBQzBBkBFFkC4CBIEBDhBBCGGBkCBLeByBdBDEBMrBBFZB3BWBK0BBzC+C+CBtBBSHB3BdBOBBLrBBbjBBqBCBLjBBDKBGqBBDCBqBDBCFBCBBEGGB+FBhC1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGB1DOORMBmDFFDJBCEEBDBHGCBCBCKBDDBGEBF1B1BB8zC8zCBjHBHDBEBBNlBBCGGD3BBIRRBVBKGBCGBCGBCGBCGBCGBCGBCGBxC2O2OBrBrBBDBGBBF1CBHCBC5CBCDBGqBBC9CBSfBxBPBhQ-tGBhCs0VBkCtBBDsIBEPBLBBVuBBReBDlCByBIBDmDBDxCBVQBCCBCDBCWBezBBPxBB-BFBECCBMMBaBLWBacBIuBBdRRBDBCJBLEBCoBBYCBCHBVWBEEEBwBBCEEBDDBDBDCCZCBDKBICBNFBDFBDFBKGBCGBCqBBCNBHyDBej9KBNWBFwBBloItLBDpDBnBGBNEBGCCBIBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBlBZBHZBM4CBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmMcBEwBBwBfBOTBCHBHlBBLdBDjBBFHBxB9EBTjBBFjBBFnBBJzBBNKBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCQQBCBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4ByBBOyBBOjBBnBbBKWB7HpBBHBBRFB5BcBLJJBUBrBRBvBUBcWBN0BB6BBBDOOBrBBhBYBbjBBeDDJiBBENNBuBBPDBWCCkBRBCYBUBBgCGBCCCBCBCOBCJBIuBBnBHBDBBDVBCGBCBBCEBETTNEBfJBCDDClBBCaaCtBtBBzBBTDBVCBfvBBVBBC5F5FBtBBqBDBlBvBBV8B8BBpBBOoCoCBZBmBGB6FrBB1D-BBgBHBDDDBGBCBBCXBQCC-CHBDmBBRCCdLLBmBBIWWMtBBUTTBnCBoGgBBgBIBCkBBSyByBBcBxDGBCBBClBBWaaBEBCBBCfBPYYBqBBlISBQCCBLBChBB9DwCwCB4cBnHjGBtyCgDBQvhBBSFBa68DBGmSB61GdBj3B4RBIeBSuCBSdBTvBBRDBgBUBGSBxNsBB0G-BBhBYBDYBtBqCBGjCjCBLBhCBBCPPBNNB0mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBn7F0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BeBHFBmI9BBzEsBBLGBRiKiKBcBTrBBlPbBlHdBDwGwGBdBCCBCBBCGBDEBKBBhHGBCDBCBBCOBCkGB8BjCBI1lB1lBBCBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQBlqE-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB",false)),LC:()=>new a(l("hCZBHZB7BLLBVBCeBCiGBCDBFvGBDZBhGDBDBBECBCHHCCBCCCBSBCyCBCqEBJlFBClBBKoBB44ClBBCGGDqBBDCBhV1CBDFBjkCKBGqBBDCBhCrBBgCMBChBBmD1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGBmIFFDJBCEEBDBHGCBCBCFBFDDBCBGEBF1B1BB8zC8zCB6DBDmDBHDBEBBNlBBCGGzoetBBTbBnEtCBCWBEDBCsCBZBBE2Z2ZBpBBGIBIvCBh6TGBNEBqgBZBHZBmlBvCBhDjBBFjBB1DKBCOBCGBCBBCKBCOBCGBCBBk2ByBBOyBB+CVBLVB74C-BBhrV-BBhBYBDYBtpZ0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BJBCTBHFB2uCjCB",false)),Ll:()=>new a(l("hDZB7BqBqBBWBCHBC2BCBQCBuBCDECBBBDCCDEEBFFDEEBBBDDDCCCDCCBCCDEECDDBDDBBBHGDCOCBSCBDDCEEC4BCBFBDDDBCCFICBjCBDZBiGCCEEEBBBTccBhBBCBBECBCWCBDBCGDB0B0BBuBBCgBCK0BCDMCBgDCxBoBBo6CqBBDCB5XFBjkCIBC2D2DBqBBgCMBChBBnD0ECBHBCgDCBHBJFBLHBJHBJFBLHBJHBJNBDHBJHBJHBJEBCBBHEEBBBCBBJDBDBBJHBLCBCBBzIEEBEEcKFDBBJDBF2B2Bs1CvBBCEEBGCFCCBCCBEBGiDCBIICFFNlBBCGG0oesBCUaCoEMCBBBC+BCBGBCCCDICFCCDCCBBBCSCGGGCMCFCCDOCbEE2ZqBBGIBIvCBh6TGBNEBqhBZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBnqZZBbGBCRBbZBbDBCCCBFBCKBbZBbZBbZBbZBbZBbZBbZBbZBbbBdYBCFBbYBCFBbYBCFBbYBCFBbYBCFBC15B15BBIBCTBHFB4vChBB",false)),Lm:()=>new a(l("wVRBFLBPEBICCmEGG-OnHnHlFBBuIBBFgBgBKEEhFoFoF1mBgEgE2R72B72BsDkTkTxOFBvF+BBOjBjBBjBByVOORMBg-CBByHgGgG2OsBsBBDBGiDiDB+C+CBBB34bjnBjnBBEBvIzDzDdBB6DIBxCYYpDDBEBB2OXXqEtDtDWBBoDDBKngVngVuBBBh-BFBCpBBCIB0sBhBhB2K04D04DnrTDB9PCBpBBBnRMBhCBBCPPB9-P9-PBCBCGBCBByhM9BBqGGBud0Q0QsSAB",false)),Lo:()=>new a(l("qFQQhIFFBCBxGBB7ZaBFDBuBfBCJBkBBBCiDBCZZBLLBBBDRRCdBe4CBMZZBfBWVBrBYBIKBGXBCGBRoBB8B1BBETTIJBROBFHBDBBDVBCGBCEEBCBERROBBCCBPBBLJJBEBFBBDVBCGBCBBCBBCBBgBDBCUUBBBRIBCCBCVBCGBCBBCEBETTQBBYMMBGBDBBDVBCGBCBBCEBEffBCCBBBQSSCFBECBCDBEBBCCCBEEBEEBBBELBX1B1BBGBCCBCWBCPBEbbBBBCBBDBBfFFBGBCCBCWBCJBCEBEffBBBCBBQBBSIBCCBCoBBDRRGCBJCBZFBGRBEXBCIBCDDBFB7BvBBCBBNFB8BBBCCCBDBCXBCCCBIBCBBKDDBDBYDBhBgCgCBGBCjBBcEB0DqBBVRRBEBFDBEEEBIIBBBFMBNyDyDBnKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPByDrTBDQBCZBGqCBHHBIRBOSBPRBPMBCCBQzBBpBkCkCBhBBC0BBIEBDhBBCGGBkCBLeByBdBDEBMrBBFZB3BWBK0BBxFuBBSHB3BdBOBBLrBBbjBBqBCBLdByDDBCFBCBBE7hB7hBBCB4-C3BBZWBKGBCGBCGBCGBCGBCGBCGBCGBoR2B2BF1CBJCCB4CBFGGBpBBC9CBSfBxBPBhQ-tGBhC0wUBC2jBBkCnBBJrIBFPBLBBjCyByBBkCBqFoDoDEGBCCBCDBCWBezBBPxBB-BFBECCBMMBaBLWBacBIuBBuBEBDIBLEBCoBBYCBCHBVPBCFBEEEBwBBCEEBDDBDBDCCZBBEKBIPPBEBDFBDFBKGBCGByEiBBej9KBNWBFwBBloItLBDpDBkCCCBIBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBqDJBCsBBDeBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmMcBEwBBwBfBOTBCHBHlBBLdBDjBBFHBhEtCBjDnBBJzBB9CzBBN2JBKVBLHB5EFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCQQBCBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4FjBBnBDBCxJxJBoBBHBBRCBCBB5BcBLJJBUBrBRBvBUBcWBN0BB6BBBDOOBrBBhBYBbjBBeDDJiBBENNBuBBPDBWCCkBRBCYBUBBgCGBCCCBCBCOBCJBIuBBnBHBDBBDVBCGBCBBCEBETTNEBfJBCDDClBBCaaCtBtBBzBBTDBVCBfvBBVBBC5F5FBtBBqBDBlBvBBV8B8BBpBBOoCoCBZBmBGB6FrBB0GHBDDDBGBCBBCXBQCC-CHBDmBBRCCdLLBmBBIWWMtBBUTTBnCBoGgBBgBIBCkBBSyByBBcBxDGBCBBClBBWaaBEBCBBCfBPYYBnBBCBBlISBQCCBLBChBB9DwCwCB4cBnHjGBtyCgDBQvhBBSFBa68DBGmSB61GdBj3B4RBIeBSuCBSdBTvBB0BUBGSB0NnBB2MqCBGwFwFB0mHBqBfBiDyDBuwIiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBxzI2P2PBrBBiBiKiKBcBTrBBlPaBmHdBDwGwGBdBCCBCBBCGBDEBKiHiHBFBCDBCBBCOBCkGB8pBDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQBlqE-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB",false)),Lt:()=>new a(l("lOGDnB2sH2sHBGBJHBJHBNQQwBAB",false)),Lu:()=>new a(l("hCZBmDWBCGBiB2BCDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIJDCMCDQCDDDCCBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBDDBBBEWCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBpCDBNDBNDBNEBMDBnIFFECBDCBDEEBDBHGCBCBDDBLBBG+B+B9zCvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoqZZBbZBbZBbCCBGDBDDBCBCHBbZBbBBCDBDHBCGBcBBCDBCEBCEEBFBcZBbZBbZBbZBbZBbZBfYBiBYBiBYBiBYBiBYBiB2pE2pEBgBB",false)),M:()=>new a(l("gYvDB0IGBoIsBBCCCBCCBCCpCKBxBUBRmDmDBFBDFBDBBCDBkBffBZB8CKB7BIBKZZBCBCIBCCBCEBsBCB8BIBrBXBCgBB3BCBCRBCGBLBBeCB5BCCBFBDBBDCBKLLBbbDCB5BCCBDBFBBDCBEffBEEMCB5BCCBGBCCBCCBVBBXFBCCB5BCCBFBDBBDCBICBLBBf8B8BBDBECBCDBKpBpBBDB4BCCBFBCCBCDBIBBMBBeCB5BCCBFBCCBCDBIBBMBBQNNBCB4BBBCGBCCBCDBKLLBeeBBBnCFFBEBCCCBGBTBB+BDDBFBNHBjDDDBHBMGBqCBBcECFBByBTBCBBGKBCjBBKlDlDBSBYDBFCBCCBDGBEDBOLBCLLBCBgWCBzdDBdCBeBBfBBhCfBKuBuBBBBC2D2DBjBjB3DLBFLB8GEB6BJBCcBDxBxBBsBBDLBVEBwBQBnBIBNCBfMB5BNBxBTB5ECBCUBFHHDCBnG-BBxWgBB--CCBuEhDhDBeBrRFBqDBB1udDBCJBhBBBxCBBxIEEFYYBDBF0C0CBzBzBBQBbRBOnBnBBGBaMBtBDBwBNBlBkCkCBMBNJJBuBuBBBBzBCCBBBDBBGBBCqBqBBDBGBBtHHBCBBx5TiXiXBOBRPBuejHjH2EEBn0BCBCBBGDBpBCBFmFmFB+R+RBCBiCEB+JBBuCFBnCKByBDB7DCB2BOBqBDDBLLBCBuBKBI+B+BBBBlBNBRBBtBNNBBBxBNBJDBCBB9CLBHDD+ELBWDB4BBBCGBDBBDCBKLLBDDBFBEEBkCIBCDDCDBCEBCPPBzCzCBQBYyCyCBSBsHGBDIBcBBzCQBrDMBmDOBhIOB2HFBCBBDDBCCCBuEuEBFBDGBEddBIBpBGBCDBJKKBJBvBPBnGHBoGHBCHBzCVBCNB7DFBECCBCCBFBCjCjCBDBCBBCEB8KDBKBBCxBxBBFBEEBYmnFmnFHOBpmLRBhuCEB8BGB5gBCCB1BBIDByCMMBslTslTBizEizEBsBBDWB-QEBEFBJHBDGBfDB1ECB89B2BBFxBBJPPXEBCOBxqBGBCQBDGBCBBCEBlDhFhFBFB4L+B+BBCB9PDB-HBB0HDDIBBG7O7OBFBuDGB29lYvHB",false)),Mc:()=>new a(l("joC4B4BDCBJDBCBBzBBB7BCBHBBDBBLsBsB7BCBjC7B7BBBBJCCB2B2BB7B7BCHHBDDBLLnDBBCBBECBCCBLqBqBBBB+BDB+BBB7BCCBDBDBBCBBKBBdPPB7B7BBBBGCBCCBLrBrBBsCsCBBBHHBTBBrKBBgCsFsFBFFHDDBaaBLLBBBDGBWBBDFBDLLBBB5zBffiEIIBGBCBB7KDBDCBFBBCFBhHBB7BCCKCCBJJBEByExBxBGCCBDBCBB+BffFBBD9B9BDCBCEEBxBxBBGBJBBsFWW35EBB0-dBBD5C5CBzBzBBOBvEBBwBxBxBBFFBDDBBBvDBBDBBZuBuBCuDuDDBBGuHuHBCCBCCBCC0gZCCgEuBuBBBBFBB0DZZB8B8BxBCBKBBO+C+CBBBEBBCrFrFBBBgBBB7BBBCDBDBBDCBKLLB1C1CBBBIDDCDBCBBCmDmDBBBJBBErDrDBBBHCCBCBDuHuHBBBHDBDyDyDBBBJBBCuDuDCBBHoDoDCBBFmImIBBBK4H4HBEBCBBFDDCvEvEBBBJDBF1C1CeBB-BqGqGECCoGPPrDIID2G2GBDBFBBC-K-KBNNxBBBJBBCpvQpvQBBBlxD2BBpDBB0rYBBHFB",false)),Me:()=>new a(l("okBBB1xF-wB-wBBCBCCBsshBCB",false)),Mn:()=>new a(l("gYvDB0IEBqIsBBCCCBCCBCCpCKBxBUBRmDmDBFBDFBDBBCDBkBffBZB8CKB7BIBKZZBCBCIBCCBCEBsBCB8BIBrBXBCfB4BCCFHBFEEBFBLBBe7B7BFDBJVVBbbDBB6BFFBFFBDDBBBEffBEEMBB6BFFBDBCBBFVVBXXBEBC7B7BDCCBCBJIIBMMBff+BNNzBEE4BCCBBBGCBCDBIBBMBBe7B7BDHHGBBVBBdBB6BBBFDBJVVBeepCIIBBBC7C7CDGBNHBjDDDBHBMGBqCBBcEC4BNBCEBCBBGKBCjBBKnDnDBCBCFBCBBDBBaBBFCBRDBODDBHHQgWgWBBBzdCBeBBfBBfBBhCBBCGBJDDBJBKuBuBBBBC2D2DBjBjB3DCBFBBKHHBBB8GBBD7B7BCGBCCCDHBHJBDxBxBBMBCeBDLBVDBxBCCBDBCGGpBIBNBBhBDBDBBCCB5BCCBEECCB7BHBDBB5ECBCMBCGBFHHEBBnG-BBxWMBFEEBKB--CCBuEhDhDBeBrRDBsDBB1udFFBIBhBBBxCBBxIEEFaaBGG4EBBbRBOnBnBBGBaKBvBCBxBDDBCBDBBoBkCkCBEBDBBDBBNJJwB0B0BCCBDBBGBBCrBrBBJJvHDDFx5Tx5TiXPBRPBuejHjH2EEBn0BCBCBBGDBpBCBFmFmFB+R+RBCBiCEB+JBBuCFBnCKByBDB8D3B3BBNBqBDDBLLBBByBDBDBBI+B+BBBBlBEBCHB-BNNB1B1BBHBLDBDgDgDBBBDCCBHHD+E+EEHBWBB6BBBEmBmBBFBEEBnCFBOECPBB2CHBDCBCYY1CFBCFFBCCBvHvHBCBHBBCBBcBB2CHBDCCBrDrDCDDBEBCmDmDCDDBCBCEBkIIBCBBhIBBCFFxEDBDBBFhBhBBIBpBFBDDBJKKBEBDCBvBMBCBBnGCCBBBCqGqGBFBCFBCzCzCBUBDGBCBBCBB7DFBECCBCCBFBCpCpCBEEC8K8KBMMB1B1BBDBGCCYmnFmnFHOBpmLLBECBhuCEB8BGB5gBgCgCBCByC5lT5lTBizEizEBsBBDWBhRCBSHBDGBfDB1ECB89B2BBFxBBJPPXEBCOBxqBGBCQBDGBCBBCEBlDhFhFBFB4L+B+BBCB9PDB-HBB0HDDIBBG7O7OBFBuDGB29lYvHB",false)),N:()=>new a(l("wBJB5DBBGDDBBBitBJBnEJBnGJB9MJB3DJBFFBtDJB3DJB3DJBDFBvDMB0DJBJGBoDJBpDGBISBuDJBhDJB3DJBnCTBtIJBnCJBwWTBybCBwHJBHJBXJBtJJBhEKBmFJBHJB3FJB3CJBnEJBHJB3gBEEBEBHJBnGyBBDEB3W7BBvCVB3TdBqrBqYqYaIBPCB4KDBrEJBfHBCOBhBJBoBOBh7cJB9FJBhKFB7EJBnBJBnGJBXJB3CJB3MJB34UJBuPsBBN4BBSBB2KaBlBDBeJJnEEBrGJBvdHBaGBoBIBsCEBXFBhFBBDPBDtBBhCIB1BBBfCBsCEBpDHBZHBqBGBrKFBxBJBHJB3IeB-EJBrBDBxDGBnEdBhEJB9BJBxEJBITB8HJB3KJB3DJB3LJBnDJBHTBtCLBlNSB+CJB3UJB3CcBkHJBnCJB3BJBnLJBnDUBshBuDBimPJBnpCJB3CJBnEJBCGBvQJBnIWB+KCB6nXJBnuBTBNTBtDYB2iBxBBhqCJBnNJB3PJB4HJBtWIBhEJB4Y6BBCCBCDBtCsBBCOBjeMBk3CJB",false)),Nd:()=>new a(l("wBJnxBJnEJnGJ9MJ3DJ3DJ3DJ3DJ3DJ3DJ3DJ3DJ3DJhDJ3DJnCJ3IJnCJn6BJnBJtJJhEJnFJHJ3FJ3CJnEJHJnuiBJnVJnBJnGJXJ3CJ3MJ34UJnsBJnkCJHJ9YJhEJ9BJxEJ3IJ3KJ3DJ3LJnDJHTtCJnNJnDJ3UJ3CJ3HJnCJ3BJnLJ3uQJnpCJ3CJnEJ3QJ37XJ12CxBhqCJnNJ3PJ4HJ2aJ30EJ",true)),Nl:()=>new a(l("u3FCBwzCiBBDDB-zDaaBHBPCBs1dJBxyW0BBtOJJnEEBrhIuDBm8SCB",false)),No:()=>new a(l("yFBBGDDBBB2pCFB5LFB5DCBmEGB6GGBSIByNJB2hBTB0jBJBhP20B20BEFBHJBnGPBqB3W3WB6BBvCVB3TdBqrB1kB1kBBCBrEJBfHBCOBhBJBoBOBxrdFBymWsBBiCDBSBB2KaBlBDB1pBHBaGBoBIBsCEBXFBhFBBDPBDtBBhCIB1BBBfCBsCEBpDHBZHBqBGBrKFBhLeB-EJBrBDBxDGBnETB8LTBmqBBBvNIBobSB0aUBn8SGB-YWBqhZTBNTBtDYBvqFIBid6BBCCBCDBtCsBBCOBjeMB",false)),P:()=>new a(l("hBCBCFBCDBLBBEBBbCBCccCkBkBGEELBBEEE-VJJzOFBqBBB0BCCDDDtBBBVBBCBBOCCBBBrCDBnDsBsBBMBqHCB3BOBgBmImIBLLtE5D5D6DnMnMNwLwL7CLLBpFpFBNBCmBmBBCBoCrCrCBDBFBBwDFBsFlTlTBHB4EuTuTtBBBvCCBoCBB+ECBCCBmBKB6JBB5GBBhEGBCFBhFBBLGBdCB9DDB8BEB-BBBhCHBM9Z9ZBWBJTBCMBCLBfBBPBB6TDBeBB+hBNBwCBBgBJB0MVBgCDBhBBB8XDBCBBxDwEwEBtBBCfBDLBkNCBFJBDLBRNNjD7C7CjgdBBuICBkDLL0DFB9LDB3CBBpBCBCyByBBwBwBiDMBRBB9DDB-DBBRBB6HzqUzqUBxGxGBIBXiBBCNBCFFCBB2ECBCFBCDBLBBEBBbCBCccCCCBFB7MCB9UxBxB-MoXoXoGgBgBxIIBnBxDxDBFBjCGB6CDByO-J-JjBlElEBDBtBDB+FGBuDBBCDB-DDBxBBBwCDBFOOCCB5CFBsDrJrJBCCBzDzDBDBLBBCpDpD7HWBqDCBdMBtCjEjEBBB9HpIpIBBB8E9C9CBGB0CCBCEB+CJB4GgDgDBDBrBBBmUBBrCMBwFxjBxjBBDB97CBB8zOBBmEiCiCBDBJpRpRBBBoJDBoK9lT9lTovHEB07C-a-aBAB",false)),Pc:()=>new a(l("-Cg-Hg-HBUU-u3BBBZCBwHAB",false)),Pd:()=>new a(l("tB9qB9qB0BiyDiyDmgBqgCqgCBEBiwDDDgBBBFdd-NUUwDxszBxszBBmBmBLqFqFhzD-J-J",false)),Pe:()=>new a(l("pB0B0BgB+1D+1DC-6B-6BqtC4B4BQ7T7TCff-hBMCxChBhBCGC1MUChCCCiBmhBmhBCECtBGCtNICEGCDBB-ozB6G6GeOCESSCCCrF0B0BgBGD",false)),Pf:()=>new a(l("7F+6H+6HEddpuDCCFDDQEE",false)),Pi:()=>new a(l("rFt7Ht7HDBBDaapuDCCFDDQEE",false)),Po:()=>new a(l("hBCBCCBDECBLLBEEBcclCGGPBBI-V-VJzOzOBEBqB3B3BDDDtBBBVBBCBBOCCBBBrCDBnDsBsBBMBqHCB3BOBgBmImIBLLtE5D5D6DnMnMNwLwL7CLLBpFpFBNBCxDxDrCEBFBBwDFBsFlTlTBHBmY9D9DBBBoCBB+ECBCCBmBFBCDB6JBB5GBBhEGBCFBhFBBLGBdCB9DDB8BEB-BBBhCHBMjajaBJJBGBJIBDDBDCBEKBCCCBIB7kDDBCBBxDwEwEBFFBBBDDDBHBCBBCDDBLLBDBCJBDDBCCCBLBDCBtNCB6B+F+FjgdBBuICBkDLL0DFB9LDB3CBBpBCBCyByBBwBwBiDMBRBB9DDB-DBBRBB6HlxUlxUBFBDXXVBBDDBECBCDBICBHCCB2E2EBBBCCBDECBLLBEEBcclBDDB7M7MBBB9UxBxB-MoXoXoGgBgBxIIBnBxDxDBFBjCGB6CDB0ZlElEBDBtBDB+FGBuDBBCDB-DDBxBBBwCDBFOOCCB5CFBsDrJrJBCCBzDzDBDBLBBCpDpD7HWBqDCBdMBtCjEjEBBB9HpIpIBBB8E9C9CBGB0CCBCEB+CJB4GgDgDBDBrBBBmUBBrCMBwFxjBxjBBDB97CBB8zOBBmEiCiCBDBJpRpRBBBoJDBoK9lT9lTovHEB07C-a-aBAB",false)),Ps:()=>new a(l("oBzBzBgB-1D-1DC-6B-6B-rCEEnB4B4BQ7T7TCff-hBMCxChBhBCGC1MUChCCCiBmhBmhBCECaTTCECtNICEGCDipzBipzB4GeeCMCESSCCCrFzBzBgBEEDAB",false)),S:()=>new a(l("kBHHRCBgBCCcCCkBEBCBBDCCBCBDEEfgBgBrODBNNBGGBCCCBPB2DPPBxDxDsErIrIBBB3DCBDDDBvGvGLUUB4H4HIBBpEqLqLBHHB2H2H-DjEjEBGBlEwGwGqBmGmGiGCBQCCBBBDFBVECmEHBCFBCBBGDBmGBBxXJB0WuLuLlL+E+EBgBBiLJBKIBhiBCCBBBMCBOCBOCBOBBmCOOoBCBOCBUhBB-BBBCDBCBBLCCBBBGFBCECFMMBFFBDBGDBC7B7BBFFB2LBFcBD+HBXKByCtCBXnTBtBwBBDeBLyMBX+BBFfBD1LBDpEBmHFBmLBBvBZBC4CBN1GBbPBFOOBNNWBBHBB8CBB0HBBFJBhBlBBKRRBdBMdBJQQBeBLmBBQ-JBhuG-BBx0V2BB6RWBKBBoDBB+EDBLDB+RCBiHPPB+9T+9TpEgBBuLPBhCBB3BHBtBDBjDCCBBBD7E7EHRRBBBgBCCcCCiEGBCGBOBB6JIB6BQBDCBCMBEwBwBBrBB7zBBBwSmWmWBiKiKBGBnjC2kC2kCBbBr6SDBG3qU3qUk7DvHBLCBEzNBHWBQQBgDzDB9B1HBLmBBD7BBGCBXBBIdBF8BBWhCBE7F7FB1CBrbaagBaagBaagBaagBaa9B-PB4BDBzBHBCNBCBBp2BwNwNttCEE+DiOiOBvIvIBqBBFjDBNOBDOBCOBCkBBYgFB5BcBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBC7CBLAB",false)),Sc:()=>new a(l("kB+D+DBCBqnB8D8DzPBBzPBBI2H2HoImSmS8sClmClmCBgBB37hBkuVkuVtD7E7E8GBBEBB3-HDB-4wBxtCxtC",false)),Sk:()=>new a(l("+CCCoCHHFEEqQDBNNBGGBCCCBPB2DPPBjoBjoB15FCCBBBMCBOCBOCBOBB9kEBBkzdWBKBBoDBBxePPBniUniUBPB8bCCjF4g9B4g9BBDB",false)),Sm:()=>new a(l("rBRRBBB+BCCuBFFmBgBgB-XwQwQBBB8xGOOoBCBOCBsEoBoBBDBHlClCBDBGBBFGDIgBgBBDDCgBgBBqIBhBBB7CffBXBpBFB2OKK3BHBwDxKxKBDBDeBLPBhIiEBX+BBFfBDhIBxBUBDFB9+zB5Z5ZCCBlFRRBBB+BCCkEHHBCBitDBBhrwBx+Bx+BagBgBagBgBagBgBagBgBat5Ft5FB-uC-uCBHB",false)),So:()=>new a(l("mFDDFCCyerIrIBgEgEBvGvGLUUB4H4HkQ2L2LjEFBClElEwGqBqBoMCBQCCBBBDFBVECmEHBCFBCBBGDBmGBBxXJB0WzWzW+EhBBiLJBKIBksBBBCDBCBBLCCBHHBEBCECFMMBPPCBBC7B7BBKKBDBDDBCBBCBBCGBCeBDBBCCCBdBtIHBFTBDGBDwCBCdBanBBHnCBXKByCtCBX2FBCIBC1BBJuDBC3HBtBrBBhC-HBhQvBBWBBHmBBDpEBmHFBmLBBvBZBC4CBN1GBbPBFOOBNNWBBHBBxKBBFJBhBlBBKRRBdBMdBJQQBeBLmBBQ-JBhuG-BBx0V2BBibDBLBBC+R+RBBBqqUPBuLPBhCBB3BHBuBCBlPEEFBBOBB6JIB6BQBDCBCMBEwBwBBrBB7zBBBwSpgBpgBBGBnjC2kC2kCBGBFQBr6SDBG3qU3qUk7DvHBLCBEzNBHWBQPBhDzDB9B1HBLmBBD7BBGCBXBBIdBF8BBWhCBE7F7FB1CBqlB-PB4BDBzBHBCNBCBBp2B96C96CiEyWyWBqBBFjDBNOBDOBCOBCkBBYgFB5BcBOrBBFIBIBBPFB7E6HBG4WBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBB-B3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBC7CBLAB",false)),Z:()=>new a(l("gBgEgEgvFgsCgsCBJBeBBGwBwBh9DAB",false)),Zl:()=>new a(l("ohIA",true)),Zp:()=>new a(l("phIA",true)),Zs:()=>new a(l("gBgEgEgvFgsCgsCBJBlBwBwBh9DAB",false)),ASCII_Hex_Digit:()=>new a(l("wBJIFbF",true)),Alphabetic:()=>new a(l("hCZBHZBwBLLFGGBVBCeBCpOBFLBPEBICC3CeeBQBCBBDDBCHHCCBCCCBSBCyCBCqEBJlFBClBBDHHBnBBoBNBCCCBCCBCCJaBFDBeKBG3BBCGBPlDBCHBFHBFCBLCBDRRBuBBOkDBZgBBKBBFGGBWBDSBUYBIKBGXBCGBIJJBoBBLLBEGBHrCBCPBCCBFOBOSBCHBDBBDVBCGBCEEBCBEHBDBBDBBCJJFBBCEBNBBLFFBBBCFBFBBDVBCGBCBBCBBCBBFEBFBBDBBFIIBCBCSSBEBMCBCIBCCBCVBCGBCBBCEBEIBCCBCBBEQQBCBWDBFCBCHBDBBDVBCGBCBBCEBEHBDBBDBBKBBFBBCEBORRBCCBEBECBCDBEBBCCCBEEBEEBBBELBFEBECBCCBEHHpBMBCCBCWBCPBEHBCCBCCBJBBCCBCBBDDBdDBCHBCCBCWBCJBCEBEHBCCBCCBJBBGCBCDBOCBNMBCCBCoBBDHBCCBCCBCGGBCBIEBXFBCCBCRBEXBCIBCDDBFBJFBCCCBGBTBBO5BBGGBH0B0BBECBDBCXBCCCBRBCCBDEBCHHPDBhBgCgCBGBCjBBFSBFPBCjBBkC2BBCDDBDBR-BBLDBDlBBCGGDqBBCsKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPBR1CBDFBErTBDQBCZBGqCBEKBITBMUBNTBNMBCCBCBBNzBBDSBPFFkC4CBIqBBGlCBLeBCLBFIBYdBDEBMrBBFZB3BbBF+BBDTBzBYYBMMBBByBzBBCOBCHB0BpBBDDBLrBBCKBP2BBXCBLjBBDKBGqBBDCBqBDBCFBCBBEGGB+FBUhBBM1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGB1DOORMBmDFFDJBCEEBDBHGCBCBCKBDDBGEBFSSBnBBuZzBB34BkHBHDBEBBNlBBCGGD3BBIRRBVBKGBCGBCGBCGBCGBCGBCGBCGBCfBwB2O2OBBBaIBIEBDEBF1CBHCBC5CBCDBGqBBC9CBSfBxBPBhQ-tGBhCs0VBkCtBBDsIBEPBLBBVuBBGHBEwDBoBIBDmDBDxCBVUBCgBBZzBBNjCBCtBtBBEBECCBBBLgBBGiBBOcBEyBBCLBQRRBOBLEBC2BBKNBTWBEkCBCCCZCBDPBDDBMFBDFBDFBKGBCGBCqBBCNBH6DBWj9KBNWBFwBBloItLBDpDBnBGBNEBGLBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBlBZBHZBM4CBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmC0BBsIcBEwBBwBfBOdBGqBBGdBDjBBFHBCEBrB9EBTjBBFjBBFnBBJzBBNKBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCDBCBBGHBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4ByBBOyBBOnBBjBbBEGGBVB7HpBBCBBEBBRFBzBCBEcBLJJBUBrBRBvBUBcWBKlCBsBEBL4BBKOOBXBYyBBSDBJiBBEKKB+BBCDBKBBLCCkBRBChBBDHHBCB-BGBCCCBCBCOBCJBI4BBYDBCHBDBBDVBCGBCBBCEBEHBDBBDBBEHHGGBdJBCDDClBBCJBCDDCDBCBBECCtBhCBCCBCDBVCBfhCBDBBC5F5FB0BBDGBaFBjB+BBCEE8B1BBDoCoCBZBDNBWGB6F4BBoD-BBgBHBDDDBGBCBBCdBCBBDBBDDB+CHBDtBBDFBCCCBccBxBBDJBSnCBGTTBnCBoDHB5CgBBgBIBCsBBCGBCyByBBcBDVBCNBqCGBCBBCrBBECCBCCBBBCDDBZZBEBCBBCkBBCBBCDBCYYBqBBlIWBKQBCoBBECBwDwCwCB4cBnDuDBSjGBtyCgDBQvhBBSFBa68DBGmSB61GuBBy2B4RBIeBSuCBSdBTvBBRDBgBUBGSBxNsBB0G-BBhBYBDYBtBqCBF4BBIQBhCBBCNNBFBK1mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBFi7Fi7FBzCBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BeBHFB2GGBCQBDGBCBBCEBG9BBiBxDxDBrBBLGBRiKiKBcBTrBBlPbBlHdBDwGwGBdBCVBJBBhHGBCDBCBBCOBCkGB8BjCBEEE1lBDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1TZBHZBHZB3zD-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB",false)),Dash:()=>new a(l("tB9qB9qB0BiyDiyDmgBqgCqgCBEB+BoBoBQnMnMlgDDDgBBBFdd-NUUwDxszBxszBBmBmBLqFqFhzD-J-J",false)),Emoji:()=>new a(l("jBHHGJBwDFFu8HNN5GXX7CFBQBBwLBBNnFnFaKBFCBoGoHoHBLLK7B7BBCBCEBKGDBDDFDDCBBDIEBJJBBBGCCGLBMBBDCCBCCTDDBTTBEBCCCBEEBGGDBBFBBMBBGBBDGGBECBVVBGGBEBCDBDFFDDDBEBCDDCCCHEEHLLBQQDFFCFFBBBCMMBxBxBBBBKeP1LBBwOCBUBB0BFF7mBNN6SCCrrvDrGrGhFBBNBBPDDBIBsCZBCBBYVVDIBWBBvFhBBDvDBDBBCCBDyCBDCBCmIBC+BBMFBCXBIBBDHBNDDBCBDFFBOOBDDJBBKGGBBBNCBJCBDCCFHHEHHB0CBxBlCBGHBDDBEJBECCBEEDJBkHLBF8I8IBtBBCJBC4FBxDMBEKBE4BBCFFBOBDLBFJB",false)),Emoji_Component:()=>new a(l("jBHHGJB0+H2G2Gsp3B3+8B3+8BBYB8PEBxtBDBtzhY-CB",false)),Emoji_Modifier:()=>new a(l("7-8DE",true)),Emoji_Modifier_Base:()=>new a(l("9wJ8G8GRDB4jzD9B9BBBBDDDBBB2DBBDKBWSBEFFBBBCCBICCZqGqGBFFWFFBvFvFBBBEEB0CRRBBBKMMgSDDJHBHKKBIBDCB5B+B+BBCCBCCSCBCMBmHCBrBIB",false)),Emoji_Presentation:()=>new a(l("64IBBuGDBEDDqQBBWBBzBLBsBUUOJJBSSBGGBJJGWWIBBCFFDIIFBBdkBkBCFFBBBC+B+BBBBZPP8aBB0BFFvlxDrGrG-FDDBIBsCZBCZZVDDBDBCCBWBBvFgBBNIBClCBCVBNqBBFEBNQBEEEBlCBCCCB5FBD+BBODBCXBTbbBOO3C0CBxBlCBHEEBBBDDBEDBMBBIIBkHLBF8I8IBtBBCJBC4FBxDMBEKBE4BBCFFBOBDLBFJB",false)),Extended_Pictographic:()=>new a(l("pFFFu8HNN5GXX7CFBQBBwLBBNnFnFaKBFCBoGoHoHBLLK7B7BBCBCEBKGDBDDFDDCBBDIEBJJBBBGCCGLBMBBDCCBCCTDDBTTBEBCCCBEEBGGDBBFBBMBBGBBDGGBECBVVBGGBEBCDBDFFDDDBEBCDDCCCHEEHLLBQQDFFCFFBBBCMMBxBxBBBBKeP1LBBwOCBUBB0BFF7mBNN6SCCrrvDoBoBBCBlDLBQBBQPPBmBmBBIBxDBBNBBPDDBIBU3BBcOBLVVDIBCDBKWBH7FBDvDBDBBCCBDyCBDCBCDBG9HBC+BBMFBCXBIBBDHBNDDBCBDFFBOOBDDJBBKGGBBBNCBJCBDCCFHHEHHB0CBxBlCBGHBDQBECCBEBDMB7GlBBNDB5BHBLFBpBHBfBBNDBDNBKmBBNuBBCJBC4FB5CHBPxEBhI9fB",false)),Hex_Digit:()=>new a(l("wBJIFbFq1-BJIFbF",true)),Lowercase:()=>new a(l("hDZBwBLLFlBlBBWBCHBC2BCBQCBuBCDECBBBDCCDEEBFFDEEBBBDDDCCCDCCBCCDEECDDBDDBBBHGDCOCBSCBDDCEEC4BCBFBDDDBCCFICBjCBDiBBIBBfEBhDsBsBCEEDDBTccBhBBCBBECBCWCBDBCGDB0B0BBuBBCgBCK0BCDMCBgDCxBoBBo6CqBBCDB5XFBjkCIBC2D2DB+FBiC0ECBHBCgDCBHBJFBLHBJHBJFBLHBJHBJNBDHBJHBJHBJEBCBBHEEBBBCBBJDBDBBJHBLCBCBB6DOORMBuDEEBEEcKFDBBJDBFiBiBBOBFsasaBYBn6BvBBCEEBGCFCCBCCBGBEiDCBIICFFNlBBCGG0oesBCUaCBBBmEMCBBBC8BCBIBCCCDICFCCDCCBBBCSCGGGCMCFCCDOCWDBCCCBBB2ZqBBCNBHvCBh6TGBNEBqhBZBumBnBBpEjBB8EKBCOBCGBCBBkODDBBBCpBBCIBmoByBB+DVB75CfBhsVfB8BYBnqZZBbGBCRBbZBbDBCCCBFBCKBbZBbZBbZBbZBbZBbZBbZBbZBbbBdYBCFBbYBCFBbYBCFBbYBCFBbYBCFBC15B15BBIBCTBHFBmI9BB1lChBB",false)),Math:()=>new a(l("rBRRBBBgBeeCuBuBFmBmBgB5W5WBBBDbbBDDBBBwQCBuwGccBBBMEEOPPBCBWEBMEBiCMBFEEBFFBDBTFFDJBCDDBEBHEEBDDBCCBBBCFBENBClClCBWBCFBCBBFBBFfBCHHBPPBqIBJDBVBB7CffBZBCZZMGB+NBBNJBFFBFBBDBBEEBPCCDFBMHBGBB6BCCeDBKCBxK-BBhI-PBxBUBDFB9+zB4Z4ZBEBCjFjFRCBeCCeCCkEHHBCBitDBBhrwBwoBwoBBzCBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBDxBBhwFDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBB-uCIB",false)),Quotation_Mark:()=>new a(l("iBFFkEQQ96HHBaBBowDqOqOBCBOCBixzBDB+FFF7CBB",false)),Terminal_Punctuation:()=>new a(l("hBLLCMMBEE-ZJJiQ6B6BpCPPCCB1FsBsBBJBCsHsHB3B3BBEBCHBgBmImIB1nB1nBBtFtFFFB4JBB2YHBmY9D9DBBBoCBB+ECBEoBoBBCBDBB7JBBjLDBjFBBLBBCCBeCB8FEB-BBBldYYBKKBBBwlDCBzJOOFLLCBBEBBtNBB8ndBBuICBkHEB-LBB3CBBgD4E4EBBB0ECBgERRB6H6HnxUDDB6B6BBBBCDBqFLLCMMBEEiCDD7hBxBxBnkBoGoG3JBB5EFBlCFB6CDB5dEBtBDB+FGBxDDBgECBiEBBHRRB5C5CBDBtDrJrJB2D2DBBBNBBnLDBEOBqDBB6HCBmQCC8HBB4CBBFBB-MCBuBmUmUBrCrCBspBspBBDB6vRBBmEiCiCBBBLqRqRBoJoJBnwTnwTovHDB",false)),Uppercase:()=>new a(l("hCZBmDWBCGBiB2BCDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIJDCMCDQCDDDCCBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBDDBBBEWCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBpCDBNDBNDBNEBMDBnIFFECBDCBDEEBDBHGCBCBDDBLBBGbbBOBUzZzZBYBx5BvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoqZZBbZBbZBbCCBGDBDDBCBCHBbZBbBBCDBDHBCGBcBBCDBCEBCEEBFBcZBbZBbZBbZBbZBbZBfYBiBYBiBYBiBYBiBYBiB2pE2pEBgBBvgCZBHZBHZB",false)),White_Space:()=>new a(l("JEBTlDlDbgvFgvFgsCKBeBBGwBwBh9DAB",false))});static get Upper(){return this.CATEGORIES.get("Lu")}static SCRIPTS=new PB({Adlam:()=>new a(l("go6DrCFJFB",true)),Ahom:()=>new a(l("g4lCaDOFW",true)),Anatolian_Hieroglyphs:()=>new a(l("ggxCmS",true)),Arabic:()=>new a(l("gwBEBCFBCNBCCBCfBCJBMZBCrDBChBBxCvBBxHhBBGqCBCcBxy8BtPBDvEBhBPBxDEBCmEBk7DeBkCFBJIBiBFBh43BDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBB",false)),Armenian:()=>new a(l("xpBlBDxBDCks9BE",true)),Avestan:()=>new a(l("g4iC1BEG",true)),Balinese:()=>new a(l("g4GsCCxB",true)),Bamum:()=>new a(l("g1pB3CpowB4R",true)),Bassa_Vah:()=>new a(l("w26CdDF",true)),Batak:()=>new a(l("g+GzBJD",true)),Bengali:()=>new a(l("gsCDBCHBDBBDVBCGBCEEBCBDIBDBBDDBJFFBCCBDBDYB",false)),Beria_Erfe:()=>new a(l("g17CYDY",true)),Bhaiksuki:()=>new a(l("ggnCICsBCNLc",true)),Bopomofo:()=>new a(l("qXB6wLqBxDf",true)),Brahmi:()=>new a(l("ggkCtCFjBKA",true)),Braille:()=>new a(l("ggK-H",true)),Buginese:()=>new a(l("gwGbDB",true)),Buhid:()=>new a(l("g6FT",true)),Canadian_Aboriginal:()=>new a(l("ggF-TxRlC7tgCP",true)),Carian:()=>new a(l("g1gCwB",true)),Caucasian_Albanian:()=>new a(l("wphCzBMA",true)),Chakma:()=>new a(l("gokC0BCR",true)),Cham:()=>new a(l("gwqB2BKNDJDD",true)),Cherokee:()=>new a(l("g9E1CDFz7lBvC",true)),Chorasmian:()=>new a(l("w9jCb",true)),Common:()=>new a(l("AgCBbFBbuBBCOBCEBYgBgBiOmBBGEBDTB1DKKHCC+THHPEEhB9E9ElQiEiEB6mB6mB2MDBjJwvBwvBBBBoCBBsGBBCumBumBOIIBCBCFBCCBDmYmYBKBD2CBCKBEKBCOBShBB-BlBBCCBDFBCaBCQBqBCBF5UBXKBW-cBhIzTBDpEBhQ9CBzMUBCCCBXBQHBFDB8CBBE7C7CB0E0EBOBhBlBBKxBxBB+BBgBwCBwB5C5CBmFBhuG-BBhoWhBBnDCBmFJB1HhFhFsMPPBzuUzuUBxGxGBIBXiBBCSBCDB0ECCBeBbFBbKBLuBuBBhChCBFBCGBLEBjICBFsBBEIBxCMB0BsBBlHaBltuBDB96D8HBEzNBHWBQQBgDzDB9B1HBLmBBD9BBEQBJBBIdBF8BB2GTBNTBN2CBKYBoE0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBDxBByjFjCBtC8BBjWrBBFjDBNOBDOBCOBCkBBLtFB5BZBCBBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBCmDBnghYffB+CB",false)),Coptic:()=>new a(l("ifNxkKzDGG",true)),Cuneiform:()=>new a(l("ggoC5cnDuDCEMjG",true)),Cypriot:()=>new a(l("ggiCFBDCCBqBBCBBEDD",false)),Cypro_Minoan:()=>new a(l("w8rCiD",true)),Cyrillic:()=>new a(l("ggBkEBDoFBx6FKBhFtCtCojEfBhie-CBv8VBBhw4B9BBiBAB",false)),Deseret:()=>new a(l("gghCvC",true)),Devanagari:()=>new a(l("goCwCFODZh7nBfhwcJ",true)),Dives_Akuru:()=>new a(l("gomCGBDDDBGBCBBCdBCBBDLBKJB",false)),Dogra:()=>new a(l("ggmC7B",true)),Duployan:()=>new a(l("ggvDqDGMEIIJDD",true)),Egyptian_Hieroglyphs:()=>new a(l("ggsC1iBL68D",true)),Elbasan:()=>new a(l("gohCnB",true)),Elymaic:()=>new a(l("g-jCW",true)),Ethiopic:()=>new a(l("gwEoCBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBDfBEZBnvGWBKGBCGBCGBCGBCGBCGBCGBCGBjpfFBDFBDFBKGBCGBylvCGBCDBCBBCOB",false)),Garay:()=>new a(l("gqjClBEcJB",true)),Georgian:()=>new a(l("glElBBCGGDqBBCDBx8CqBBDCBhiElBBCGG",false)),Glagolitic:()=>new a(l("ggL-Ch9sDGCQDGCBCE",true)),Gothic:()=>new a(l("w5gCa",true)),Grantha:()=>new a(l("g4kCDBCHBDBBDVBCGBCBBCEBDIBDBBDCBDHHGGBDGBEEB",false)),Greek:()=>new a(l("wbDBCCBDDBCFFCCCBBBCCCBSBC+BBPPBnpGEBzBEBFEB1ChKhKBUBDFBDlBBDFBDHBCGCBdBD0BBCOBCNBDFBCSBDCBCIBoJ-xiB-xiB7uVuCBSgj0Bgj0BBkCB",false)),Gujarati:()=>new a(l("h0CCBCIBCCBCVBCGBCBBCEBDJBCCBCCBDQQBCBDLBIGB",false)),Gunjala_Gondi:()=>new a(l("grnCFCBCkBCBCFIJ",true)),Gurmukhi:()=>new a(l("hwCCBCFBFBBDVBCGBCBBCBBCBBDCCBDBFBBDCBEIIBCBCIIBPB",false)),Gurung_Khema:()=>new a(l("go4C5B",true)),Han:()=>new a(l("g0LZBC4CBN1GBwBCCaIBPDBle-tGBhC-vUBhoWtLBDpDBpodBBNGBqgkB-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB",false)),Hangul:()=>new a(l("goE-HvxHBiI9CyDeiCei3dckUj9KNWFwBl9JeEFDFDFDC",true)),Hanifi_Rohingya:()=>new a(l("gojCnBJJ",true)),Hanunoo:()=>new a(l("g5FU",true)),Hatran:()=>new a(l("gniCSCBGE",true)),Hebrew:()=>new a(l("xsB2BBJaBFFBpp9BZBCEBCCCBCCBCCBIB",false)),Hiragana:()=>new a(l("hiM1CBHCBi7-C+IBTeeBBBulQAB",false)),Imperial_Aramaic:()=>new a(l("giiCVCI",true)),Inherited:()=>new a(l("gYvDB2IBBlOKBbhXhXBCB8qEtBBDLBlPCBCMBCGBFHHEBBnG-BBtQBBjGgBB65DDBsDBBmrzBPBRNBwejHjH7iEl+uBl+uBBsBBDWBhRCBSHBDGBfDBz6rYvHB",false)),Inscriptional_Pahlavi:()=>new a(l("g7iCSGH",true)),Inscriptional_Parthian:()=>new a(l("g6iCVDH",true)),Javanese:()=>new a(l("gsqBtCDJFB",true)),Kaithi:()=>new a(l("gkkCiCLA",true)),Kannada:()=>new a(l("gkDMCCCWCJCEDICCCDIBGCCDDJCC",true)),Katakana:()=>new a(l("hlM5CBDCBxHPBxGuBBC3CBvgzBJBCsBBzisBDBCGBCBBCgJgJBBBzBPPBCB",false)),Kawi:()=>new a(l("g4nCQCoBEc",true)),Kayah_Li:()=>new a(l("goqBtBCA",true)),Kharoshthi:()=>new a(l("gwiCDCBGHCCCcDCFJII",true)),Khitan_Small_Script:()=>new a(l("k-7C84G84GB0OBqBAB",false)),Khmer:()=>new a(l("g8F9CDJHJnPf",true)),Khojki:()=>new a(l("gwkCRCuB",true)),Khudawadi:()=>new a(l("w1kC6BGJ",true)),Kirat_Rai:()=>new a(l("gq7C5B",true)),Lao:()=>new a(l("h0DBBCCCBDBCXBCCCBVBDEBCCCBFBCJBDDB",false)),Latin:()=>new a(l("hCZBHZBwBQQGWBCeBCgOBoBEB8wGlBBHwBBGDBGMBClCBiC-HByLOORMBuEBBHccSoBB42CfBj1elDBExCBVOBxZqBBCIBCDB38TGB7gBZBHZBmhCFBCpBBCIBm61BeBHFB",false)),Lepcha:()=>new a(l("ggH3BEOEC",true)),Limbu:()=>new a(l("goGeBCLBFLBFEEBKB",false)),Linear_A:()=>new a(l("gwhC2JKVLH",true)),Linear_B:()=>new a(l("gggCLCZCSCBCODNjB6D",true)),Lisu:()=>new a(l("wmpBvBx1eA",true)),Lycian:()=>new a(l("g0gCc",true)),Lydian:()=>new a(l("gpiCZGA",true)),Mahajani:()=>new a(l("wqkCmB",true)),Makasar:()=>new a(l("g3nCY",true)),Malayalam:()=>new a(l("goDMCCCyBCCCFFPDZ",true)),Mandaic:()=>new a(l("giCbDA",true)),Manichaean:()=>new a(l("g2iCmBFL",true)),Marchen:()=>new a(l("wjnCfDVCN",true)),Masaram_Gondi:()=>new a(l("gonCGBCBBCrBBECCBCCBHBJJB",false)),Medefaidrin:()=>new a(l("gy7C6C",true)),Meetei_Mayek:()=>new a(l("g3qBWqGtBDJ",true)),Mende_Kikakui:()=>new a(l("gg6DkGDP",true)),Meroitic_Cursive:()=>new a(l("gtiCXFTDtB",true)),Meroitic_Hieroglyphs:()=>new a(l("gsiCf",true)),Miao:()=>new a(l("g47CqCF4BIQ",true)),Modi:()=>new a(l("gwlCkCMJ",true)),Mongolian:()=>new a(l("ggGBBDCCBSBH4CBIqBB2t-BMB",false)),Mro:()=>new a(l("gy6CeCJFB",true)),Multani:()=>new a(l("g0kCGBCCCBCBCOBCKB",false)),Myanmar:()=>new a(l("ggE-EhqmBeiDfxibT",true)),Nabataean:()=>new a(l("gkiCeJI",true)),Nag_Mundari:()=>new a(l("wm5DpB",true)),Nandinagari:()=>new a(l("gtmCHDtBDK",true)),New_Tai_Lue:()=>new a(l("gsGrBFZHKEB",true)),Newa:()=>new a(l("gglC7CCE",true)),Nko:()=>new a(l("g+B6BDC",true)),Nushu:()=>new a(l("h-7CvsQvsQBqMB",false)),Nyiakeng_Puachue_Hmong:()=>new a(l("go4DsBENDJFB",true)),Ogham:()=>new a(l("g0Fc",true)),Ol_Chiki:()=>new a(l("wiHvB",true)),Ol_Onal:()=>new a(l("wu5DqBFA",true)),Old_Hungarian:()=>new a(l("gkjCyBOyBIF",true)),Old_Italic:()=>new a(l("g4gCjBKC",true)),Old_North_Arabian:()=>new a(l("g0iCf",true)),Old_Permic:()=>new a(l("w6gCqB",true)),Old_Persian:()=>new a(l("g9gCjBFN",true)),Old_Sogdian:()=>new a(l("g4jCnB",true)),Old_South_Arabian:()=>new a(l("gziCf",true)),Old_Turkic:()=>new a(l("ggjCoC",true)),Old_Uyghur:()=>new a(l("w7jCZ",true)),Oriya:()=>new a(l("h4CCCHDBDVCGCBCEDIDBDCICFBCEDR",true)),Osage:()=>new a(l("wlhCjBFjB",true)),Osmanya:()=>new a(l("gkhCdDJ",true)),Pahawh_Hmong:()=>new a(l("g46ClCLJCGCUGS",true)),Palmyrene:()=>new a(l("gjiCf",true)),Pau_Cin_Hau:()=>new a(l("g2mC4B",true)),Phags_Pa:()=>new a(l("giqB3B",true)),Phoenician:()=>new a(l("goiCbEA",true)),Psalter_Pahlavi:()=>new a(l("g8iCRIDNG",true)),Rejang:()=>new a(l("wpqBjBMA",true)),Runic:()=>new a(l("g1FqCEK",true)),Samaritan:()=>new a(l("ggCtBDO",true)),Saurashtra:()=>new a(l("gkqBlCJL",true)),Sharada:()=>new a(l("gskC-ChsCH",true)),Shavian:()=>new a(l("wihCvB",true)),Siddham:()=>new a(l("gslC1BDlB",true)),Sidetic:()=>new a(l("gqiCZ",true)),SignWriting:()=>new a(l("gg2DrUQECO",true)),Sinhala:()=>new a(l("hsDCBCRBEXBCIBCDDBFBEFFBEBCCCBGBHJBDCBt-gCTB",false)),Sogdian:()=>new a(l("w5jCpB",true)),Sora_Sompeng:()=>new a(l("wmkCYIJ",true)),Soyombo:()=>new a(l("wymCyC",true)),Sundanese:()=>new a(l("g8G-BhIH",true)),Sunuwar:()=>new a(l("g+mChBPJ",true)),Syloti_Nagri:()=>new a(l("ggqBsB",true)),Syriac:()=>new a(l("g4BNC7BDCxIK",true)),Tagalog:()=>new a(l("g4FVKA",true)),Tagbanwa:()=>new a(l("g7FMCCCB",true)),Tai_Le:()=>new a(l("wqGdDE",true)),Tai_Tham:()=>new a(l("gxG+BCcDKHJHN",true)),Tai_Viet:()=>new a(l("g0qBiCZE",true)),Tai_Yo:()=>new a(l("g25DeCVJB",true)),Takri:()=>new a(l("g0lC5BHJ",true)),Tamil:()=>new a(l("i8CBBCFBECBCDBEBBCCCBEEBEEBBBELBFEBECBCDBDHHPUBm+kCxBBOAB",false)),Tangsa:()=>new a(l("wz6CuCCJ",true)),Tangut:()=>new a(l("g-7CgBgBB+3GBhQeBiDyDB",false)),Telugu:()=>new a(l("ggDMCCCWCPDICCCDIBCCCBDDDJII",true)),Thaana:()=>new a(l("g8BxB",true)),Thai:()=>new a(l("hwD5BGb",true)),Tibetan:()=>new a(l("g4DnCCjBFmBCjBCOCGFB",true)),Tifinagh:()=>new a(l("wpL3BIBPA",true)),Tirhuta:()=>new a(l("gklCnCJJ",true)),Todhri:()=>new a(l("guhCzB",true)),Tolong_Siki:()=>new a(l("wtnCrBFJ",true)),Toto:()=>new a(l("w04De",true)),Tulu_Tigalari:()=>new a(l("g8kCJBCDDClBBCJBCDDCDBCJBCBBJBB",false)),Ugaritic:()=>new a(l("g8gCdCA",true)),Unknown:()=>new a(l("4bBBHDBICCVuMuMnBBBzBBBE4B4BBGBcDBHKBvI9B9BBmDmDBMB8BBByBBBQddBCCMEBjBEBuHJJBDDBXXICCBBBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBbFB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKmDmDNBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBjoIBvLBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCC-FCBHBBHBBHBBECBIIIBIBGBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIBlCJBCBBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMB3iBJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBJ76DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBjGUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBNDBLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIm8yVBCdBhD-DBxHvw-FB",false)),Vai:()=>new a(l("gopBrJ",true)),Vithkuqi:()=>new a(l("wrhCKCOCGCBCKCOCGCB",true)),Wancho:()=>new a(l("g24D5BGA",true)),Warang_Citi:()=>new a(l("glmCyCNA",true)),Yezidi:()=>new a(l("g0jCpBCCDB",true)),Yi:()=>new a(l("ggoBskBE2B",true)),Zanabazar_Square:()=>new a(l("gwmCnC",true))});static FOLD_CATEGORIES=new PB({L:()=>new a(l("laA",true)),LC:()=>new a(l("laA",true)),Ll:()=>new a(l("hCZBmDWBCGBiBuBCEECDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIBBCBBCBBCOCDQCDBBCCCBBBC4BCIBBCBBDCCBCBCGC3HrBrBCEEJHHCCBCCCBCCBPBCIBkBJJCUCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBZHBJHBJHBJEBMEBMDBNEBMEBqJEEBHHxC9zC9zCBuBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoyehBB",false)),Lt:()=>new a(l("kOCCBCCBCClBCCtsHHBJHBJHBMQQwBAB",false)),Lu:()=>new a(l("hDZB7BqBqBBWBCHBCuBCEECDOCDsBCDECBBBDCCDEEGDDECBDDDCCCDFFDEECDDECCGBBCBBCBBCOCBSCDBBCEECkBCEQCJDDBCCFICBEBCBBCCCBEEBCCBCBCEBDCCBDDIDDCBBEFBGLLBnFnFsBCCEEEBBBvBDBCdBCBBECBCWCBDBCGD1BvBBCgBCK0BCDMCBgDCyBlBBq6CqBBDCB5XFBjkCIBCvHvHERRzD0ECGGGC8CCBHBJFBLHBJHBJFBMGCJHBJNBzBBBNSSBPPBEEpL2B2Bs1CvBBCEEBGCHDDLiDCJCCFNNBkBBCGG0oesBCUaCoEMCE8BCLCCDICFFFCBBDSCMOCFCCDOCb9a9advCBi8UZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBvyehBB",false)),M:()=>new a(l("5cgBgBlgHAB",false)),Mn:()=>new a(l("5cgBgBlgHAB",false)),Emoji:()=>new a(l("8mJA",true)),Extended_Pictographic:()=>new a(l("8mJA",true)),Lowercase:()=>new a(l("hCZBmDWBCGBiBuBCEECDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIBBCBBCBBCOCDQCDBBCCCBBBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBJJCUCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBZHBJHBJHBJEBMEBMDBNEBMEBqJEEBHHuBPBUzZzZBYBx5BvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoyehBB",false)),Math:()=>new a(l("ycGDCHHFMMDDDCHHFAB",false)),Uppercase:()=>new a(l("hDZB7BqBqBBWBCHBCuBCEECDOCDsBCDECBBBDCCDEEGDDECBDDDCCCDFFDEECDDECCGBBCBBCBBCOCBSCDBBCEECkBCEQCJDDBCCFICBEBCBBCCCBEEBCCBCBCEBDCCBDDIDDCBBEFBGLLBnFnFsBCCEEEBBBvBDBCdBCBBECBCWCBDBCGD1BvBBCgBCK0BCDMCBgDCyBlBBq6CqBBDCB5XFBjkCIBCvHvHERRzD0ECGGGC8CCBHBJFBLHBJHBJFBMGCJHBJNBzBBBNSSBPPBEEpLiBiBBOBFsasaBYBn6BvBBCEEBGCHDDLiDCJCCFNNBkBBCGG0oesBCUaCoEMCE8BCLCCDICFFFCBBDSCMOCFCCDOCb9a9advCBi8UZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBvyehBB",false))});static FOLD_SCRIPT=new PB({Common:()=>new a(l("8cgBgB",false)),Greek:()=>new a(l("1FwUwU",false)),Inherited:()=>new a(l("5cgBgBlgHAB",false))})},m=class j{static MAX_RUNE=1114111;static MAX_ASCII=127;static MAX_LATIN1=255;static MAX_BMP=65535;static MIN_FOLD=65;static MAX_FOLD=125251;static MIN_HIGH_SURROGATE=55296;static MAX_HIGH_SURROGATE=56319;static MIN_LOW_SURROGATE=56320;static MAX_LOW_SURROGATE=57343;static MIN_SUPPLEMENTARY_CODE_POINT=65536;static is32(B,e){let t=0,i=B.length;for(;t<i;){let r=t+Math.floor((i-t)/2),s=B.getLo(r),C=B.getHi(r);if(s<=e&&e<=C){let o=B.getStride(r);return (e-s)%o===0}e<s?i=r:t=r+1;}return false}static is(B,e){if(e<=j.MAX_LATIN1){for(let t=0;t<B.length;t++){if(e>B.getHi(t))continue;let i=B.getLo(t);if(e<i)return false;let r=B.getStride(t);return (e-i)%r===0}return false}return B.length>0&&e>=B.getLo(0)&&j.is32(B,e)}static isUpper(B){if(B<=j.MAX_LATIN1){let e=String.fromCodePoint(B);return e.toUpperCase()===e&&e.toLowerCase()!==e}return j.is(v.Upper,B)}static isPrint(B){return B<=j.MAX_LATIN1?B>=32&&B<j.MAX_ASCII||B>=161&&B!==173:j.is(v.Print,B)}static simpleFold(B){if(v.CASE_ORBIT.has(B))return v.CASE_ORBIT.get(B);let e=E.toLowerCase(B);return e!==B?e:E.toUpperCase(B)}static equalsIgnoreCase(B,e){if(B===e)return true;if(B<0||e<0)return false;if(B<=j.MAX_ASCII&&e<=j.MAX_ASCII)return 65<=B&&B<=90&&(B|=32),65<=e&&e<=90&&(e|=32),B===e;for(let t=j.simpleFold(B);t!==B;t=j.simpleFold(t))if(t===e)return true;return false}},he=256,bt=new Uint8Array(he);for(let n=0;n<he;n++)bt[n]=97<=n&&n<=122||65<=n&&n<=90||48<=n&&n<=57||n===95?1:0;var se=null,Ce=null,F=class J{static METACHARACTERS="\\.+*?()|[]{}^$";static EMPTY_BEGIN_LINE=1;static EMPTY_END_LINE=2;static EMPTY_BEGIN_TEXT=4;static EMPTY_END_TEXT=8;static EMPTY_WORD_BOUNDARY=16;static EMPTY_NO_WORD_BOUNDARY=32;static EMPTY_ALL=-1;static emptyInts(){return []}static isByteArray(B){return Array.isArray(B)||B instanceof Uint8Array}static isalnum(B){return E.CODES.get("0")<=B&&B<=E.CODES.get("9")||E.CODES.get("a")<=B&&B<=E.CODES.get("z")||E.CODES.get("A")<=B&&B<=E.CODES.get("Z")}static unhex(B){return E.CODES.get("0")<=B&&B<=E.CODES.get("9")?B-E.CODES.get("0"):E.CODES.get("a")<=B&&B<=E.CODES.get("f")?B-E.CODES.get("a")+10:E.CODES.get("A")<=B&&B<=E.CODES.get("F")?B-E.CODES.get("A")+10:-1}static escapeRune(B){let e="";if(m.isPrint(B))J.METACHARACTERS.indexOf(String.fromCodePoint(B))>=0&&(e+="\\"),e+=String.fromCodePoint(B);else switch(B){case E.CODES.get('"'):e+='\\"';break;case E.CODES.get("\\"):e+="\\\\";break;case E.CODES.get(" "):e+="\\t";break;case E.CODES.get(`
4
- `):e+="\\n";break;case E.CODES.get("\r"):e+="\\r";break;case E.CODES.get("\b"):e+="\\b";break;case E.CODES.get("\f"):e+="\\f";break;default:{let t=B.toString(16);B<256?(e+="\\x",t.length===1&&(e+="0"),e+=t):e+=`\\x{${t}}`;break}}return e}static stringToRunes(B){let e=String(B),t=[],i=0;for(;i<e.length;){let r=e.codePointAt(i);t.push(r),i+=r>m.MAX_BMP?2:1;}return t}static runeToString(B){return String.fromCodePoint(B)}static isWordRune(B){return B<he?bt[B]===1:false}static emptyOpContext(B,e){let t=0;return B<0&&(t|=J.EMPTY_BEGIN_TEXT|J.EMPTY_BEGIN_LINE),B===10&&(t|=J.EMPTY_BEGIN_LINE),e<0&&(t|=J.EMPTY_END_TEXT|J.EMPTY_END_LINE),e===10&&(t|=J.EMPTY_END_LINE),J.isWordRune(B)!==J.isWordRune(e)?t|=J.EMPTY_WORD_BOUNDARY:t|=J.EMPTY_NO_WORD_BOUNDARY,t}static quoteMeta(B){return B.split("").map(e=>J.METACHARACTERS.indexOf(e)>=0?`\\${e}`:e).join("")}static charCount(B){return B>m.MAX_BMP?2:1}static toArray(B){let e=B.length,t=new Array(e);for(let i=0;i<e;i++)t[i]=B[i];return t}static stringToUtf8ByteArray(B){if(globalThis.TextEncoder)return se||(se=new TextEncoder),J.toArray(se.encode(B));{let e=[],t=0;for(let i=0;i<B.length;i++){let r=B.charCodeAt(i);r<128?e[t++]=r:r<2048?(e[t++]=r>>6|192,e[t++]=r&63|128):(r&64512)===m.MIN_HIGH_SURROGATE&&i+1<B.length&&(B.charCodeAt(i+1)&64512)===m.MIN_LOW_SURROGATE?(r=m.MIN_SUPPLEMENTARY_CODE_POINT+((r&1023)<<10)+(B.charCodeAt(++i)&1023),e[t++]=r>>18|240,e[t++]=r>>12&63|128,e[t++]=r>>6&63|128,e[t++]=r&63|128):(e[t++]=r>>12|224,e[t++]=r>>6&63|128,e[t++]=r&63|128);}return e}}static utf8ByteArrayToString(B){if(globalThis.TextDecoder){Ce||(Ce=new TextDecoder("utf-8"));let e=B instanceof Uint8Array?B:new Uint8Array(B);return Ce.decode(e)}else {let e=[],t=0,i=0;for(;t<B.length;){let r=B[t++];if(r<128)e[i++]=String.fromCharCode(r);else if(r>191&&r<224){let s=B[t++];e[i++]=String.fromCharCode((r&31)<<6|s&63);}else if(r>239&&r<365){let s=B[t++],C=B[t++],o=B[t++],u=((r&7)<<18|(s&63)<<12|(C&63)<<6|o&63)-m.MIN_SUPPLEMENTARY_CODE_POINT;e[i++]=String.fromCharCode(m.MIN_HIGH_SURROGATE+(u>>10)),e[i++]=String.fromCharCode(m.MIN_LOW_SURROGATE+(u&1023));}else {let s=B[t++],C=B[t++];e[i++]=String.fromCharCode((r&15)<<12|(s&63)<<6|C&63);}}return e.join("")}}},yt=(n=[],B=0)=>{let e=Object.create(null);for(let t=0;t<n.length;t++){let i=n[t],r=B+t;e[i]=r,e[r]=i;}return Object.freeze(e)},EB=class ue{static Encoding=yt(["UTF_16","UTF_8"]);getEncoding(){throw Error("not implemented")}asCharSequence(){throw Error("not implemented")}asBytes(){throw Error("not implemented")}length(){throw Error("not implemented")}isUTF8Encoding(){return this.getEncoding()===ue.Encoding.UTF_8}isUTF16Encoding(){return this.getEncoding()===ue.Encoding.UTF_16}},nt=class extends EB{constructor(n=null){super(),this.bytes=n;}getEncoding(){return EB.Encoding.UTF_8}asCharSequence(){return F.utf8ByteArrayToString(this.bytes)}asBytes(){return this.bytes}length(){return this.bytes.length}},oi=class extends EB{constructor(n=null){super(),this.charSequence=n;}getEncoding(){return EB.Encoding.UTF_16}asCharSequence(){return this.charSequence}asBytes(){return F.stringToUtf8ByteArray(this.charSequence.toString())}length(){return this.charSequence.length}},IB=class{static utf16(n){return new oi(n)}static utf8(n){return F.isByteArray(n)?new nt(n):new nt(F.stringToUtf8ByteArray(n))}},k=class{static EOF(){return -8}constructor(){this.end=0;}canCheckPrefix(){return true}endPos(){return this.end}hasString(){return false}hasAnyString(){return false}prefixLength(){return 0}},ai=class extends k{constructor(n,B=0,e=n.length){super(),this.bytes=n,this.start=B,this.end=e;}hasString(n,B){let e=n.bytes;if(e.length===0)return true;let t=this.indexOf(this.bytes,e,this.start+B);return t!==-1&&t<=this.end-e.length}hasAnyString(n,B){return n.ac8?n.ac8.searchUTF8(this.bytes,this.start+B,this.end):false}step(n){if(n+=this.start,n>=this.end)return k.EOF();let B=this.bytes[n]&255;if(B<128)return B<<3|1;if(B>=194&&B<=223&&n+1<this.end){let e=this.bytes[n+1]&255;return (e&192)!==128?B<<3|1:((B&31)<<6|e&63)<<3|2}else if(B>=224&&B<=239&&n+2<this.end){let e=this.bytes[n+1]&255;if((e&192)!==128)return B<<3|1;let t=this.bytes[n+2]&255;return (t&192)!==128?B<<3|1:((B&15)<<12|(e&63)<<6|t&63)<<3|3}else if(B>=240&&B<=244&&n+3<this.end){let e=this.bytes[n+1]&255;if((e&192)!==128)return B<<3|1;let t=this.bytes[n+2]&255;if((t&192)!==128)return B<<3|1;let i=this.bytes[n+3]&255;return (i&192)!==128?B<<3|1:((B&7)<<18|(e&63)<<12|(t&63)<<6|i&63)<<3|4}else return B<<3|1}index(n,B){B+=this.start;let e=this.indexOf(this.bytes,n.prefixUTF8,B);return e<0?e:e-B}context(n){n+=this.start;let B=-1;if(n>this.start&&n<=this.end){let t=n-1;if(B=this.bytes[t--],B>=128){let i=n-4;for(i<this.start&&(i=this.start);t>=i&&(this.bytes[t]&192)===128;)t--;t<this.start&&(t=this.start),B=this.step(t-this.start)>>3;}}let e=n<this.end?this.step(n-this.start)>>3:-1;return F.emptyOpContext(B,e)}indexOf(n,B,e=0){let t=B.length;if(t===0)return e<=this.end?e:-1;let i=B[0],r=this.end-t,s=typeof n.indexOf=="function",C=e;for(;C<=r;){if(s){if(C=n.indexOf(i,C),C===-1||C>r)return -1}else {for(;C<=r&&n[C]!==i;)C++;if(C>r)return -1}let o=true;for(let u=1;u<t;u++)if(n[C+u]!==B[u]){o=false;break}if(o)return C;C++;}return -1}prefixLength(n){return n.prefixUTF8.length}},li=class extends k{constructor(n,B=0,e=n.length){super(),this.charSequence=n,this.start=B,this.end=e;}hasString(n,B){let e=this.charSequence.indexOf(n.str,this.start+B);return e!==-1&&e<=this.end-n.str.length}hasAnyString(n,B){return n.ac16?n.ac16.searchUTF16(this.charSequence,this.start+B,this.end):false}step(n){if(n+=this.start,n>=this.end)return k.EOF();let B=this.charSequence.charCodeAt(n);if(B<m.MIN_HIGH_SURROGATE||B>m.MAX_HIGH_SURROGATE||n+1>=this.end)return B<<3|1;let e=this.charSequence.charCodeAt(n+1);return e>=m.MIN_LOW_SURROGATE&&e<=m.MAX_LOW_SURROGATE?(B-m.MIN_HIGH_SURROGATE)*1024+(e-m.MIN_LOW_SURROGATE)+m.MIN_SUPPLEMENTARY_CODE_POINT<<3|2:B<<3|1}index(n,B){B+=this.start;let e=this.charSequence.indexOf(n.prefix,B);return e<0||e>this.end-n.prefix.length?-1:e-B}context(n){n+=this.start;let B=n>this.start&&n<=this.end?this.charSequence.charCodeAt(n-1):-1,e=n<this.end?this.charSequence.charCodeAt(n):-1;return F.emptyOpContext(B,e)}prefixLength(n){return n.prefix.length}},x=class{static fromUTF8(n,B=0,e=n.length){return new ai(n,B,e)}static fromUTF16(n,B=0,e=n.length){return new li(n,B,e)}},FB=class extends Error{constructor(n){super(n),this.name="RE2JSException";}},H=class extends FB{constructor(n,B=null){let e=`error parsing regexp: ${n}`;B&&(e+=`: \`${B}\``),super(e),this.name="RE2JSSyntaxException",this.message=e,this.error=n,this.input=B;}getDescription(){return this.error}getPattern(){return this.input}},xt=class extends FB{constructor(n){super(n),this.name="RE2JSCompileException";}},z=class extends FB{constructor(n){super(n),this.name="RE2JSGroupException";}},ui=class extends FB{constructor(n){super(n),this.name="RE2JSFlagsException";}},pB=class extends FB{constructor(n){super(n),this.name="RE2JSInternalException";}},it=class Ht{static MAX_REPLACER_ARGS=65535;static quoteReplacement(B,e=false){return e?B.indexOf("\\")<0&&B.indexOf("$")<0?B:B.split("").map(t=>{let i=t.codePointAt(0);return i===E.CODES.get("\\")||i===E.CODES.get("$")?`\\${t}`:t}).join(""):B.indexOf("$")<0?B:B.split("").map(t=>t.codePointAt(0)===E.CODES.get("$")?"$$":t).join("")}constructor(B,e){if(B===null)throw new Error("pattern is null");this.patternInput=B;let t=this.patternInput.re2();this.patternGroupCount=t.numberOfCapturingGroups(),this.groups=[],this.namedGroups=t.namedGroups,this.numberOfInstructions=t.numberOfInstructions(),e instanceof EB?this.resetMatcherInput(e):F.isByteArray(e)?this.resetMatcherInput(IB.utf8(e)):this.resetMatcherInput(IB.utf16(e));}pattern(){return this.patternInput}reset(){return this.matcherInputLength=this.matcherInput.length(),this.appendPos=0,this.hasMatch=false,this.hasGroups=false,this.anchorFlag=0,this}resetMatcherInput(B){if(B===null)throw new Error("input is null");return this.matcherInput=B,this.reset(),this}start(B=0){if(typeof B=="string"){let e=this.namedGroups[B];if(!Number.isFinite(e))throw new z(`group '${B}' not found`);B=e;}return this.loadGroup(B),this.groups[2*B]}end(B=0){if(typeof B=="string"){let e=this.namedGroups[B];if(!Number.isFinite(e))throw new z(`group '${B}' not found`);B=e;}return this.loadGroup(B),this.groups[2*B+1]}programSize(){return this.numberOfInstructions}group(B=0){if(typeof B=="string"){let i=this.namedGroups[B];if(!Number.isFinite(i))throw new z(`group '${B}' not found`);B=i;}let e=this.start(B),t=this.end(B);return e<0&&t<0?null:this.substring(e,t)}getNamedGroups(){if(!this.hasMatch)throw new z("perhaps no match attempted");let B=Object.create(null);for(let e of Object.keys(this.namedGroups))B[e]=this.group(e);return B}groupCount(){return this.patternGroupCount}loadGroup(B){if(B<0||B>this.patternGroupCount)throw new z(`Group index out of bounds: ${B}`);if(!this.hasMatch)throw new z("perhaps no match attempted");if(B===0||this.hasGroups)return;let e=this.matcherInputLength,t=this.patternInput.re2().matchMachineInput(this.matcherInput,this.groups[0],e,this.anchorFlag,1+this.patternGroupCount);if(!t[0])throw new z("inconsistency in matching group data");this.groups=t[1],this.hasGroups=true;}matches(){return this.genMatch(0,D.ANCHOR_BOTH)}lookingAt(){return this.genMatch(0,D.ANCHOR_START)}find(B=null){if(B!==null){if(B<0||B>this.matcherInputLength)throw new z(`start index out of bounds: ${B}`);return this.reset(),this.genMatch(B,0)}if(B=0,this.hasMatch&&(B=this.groups[1],this.groups[0]===this.groups[1])){let e=(this.matcherInput.isUTF16Encoding()?x.fromUTF16(this.matcherInput.asCharSequence(),0,this.matcherInputLength):x.fromUTF8(this.matcherInput.asBytes(),0,this.matcherInputLength)).step(B);e<0?B++:B+=e&7;}return this.genMatch(B,D.UNANCHORED)}genMatch(B,e){let t=this.patternInput.re2().matchMachineInput(this.matcherInput,B,this.matcherInputLength,e,1);return t[0]?(this.groups=t[1],this.hasMatch=true,this.hasGroups=this.patternGroupCount===0,this.anchorFlag=e,true):false}substring(B,e){return this.matcherInput.isUTF8Encoding()?F.utf8ByteArrayToString(this.matcherInput.asBytes().slice(B,e)):this.matcherInput.asCharSequence().substring(B,e).toString()}inputLength(){return this.matcherInputLength}appendReplacement(B,e=false){let t="",i=this.start(),r=this.end();return this.appendPos<i&&(t+=this.substring(this.appendPos,i)),this.appendPos=r,t+=e?this.appendReplacementInternalJava(B):this.appendReplacementInternalJs(B),t}appendReplacementInternalJava(B){let e="",t=0,i=B.length;for(let r=0;r<i-1;r++){if(B.codePointAt(r)===E.CODES.get("\\")){t<r&&(e+=B.substring(t,r)),r++,t=r;continue}if(B.codePointAt(r)===E.CODES.get("$")){let s=B.codePointAt(r+1);if(E.CODES.get("0")<=s&&s<=E.CODES.get("9")){let C=s-E.CODES.get("0");for(t<r&&(e+=B.substring(t,r)),r+=2;r<i&&(s=B.codePointAt(r),!(s<E.CODES.get("0")||s>E.CODES.get("9")||C*10+s-E.CODES.get("0")>this.patternGroupCount));r++)C=C*10+s-E.CODES.get("0");if(C>this.patternGroupCount)throw new z(`n > number of groups: ${C}`);let o=this.group(C);o!==null&&(e+=o),t=r,r--;continue}else if(s===E.CODES.get("{")){t<r&&(e+=B.substring(t,r)),r++;let C=r+1;for(;C<B.length&&B.codePointAt(C)!==E.CODES.get("}")&&B.codePointAt(C)!==E.CODES.get(" ");)C++;if(C===B.length||B.codePointAt(C)!==E.CODES.get("}"))throw new z("named capture group is missing trailing '}'");let o=B.substring(r+1,C),u=this.group(o);u!==null&&(e+=u),t=C+1,r=C;continue}}}return t<i&&(e+=B.substring(t,i)),e}appendReplacementInternalJs(B){let e="",t=0,i=B.length;for(let r=0;r<i-1;r++)if(B.codePointAt(r)===E.CODES.get("$")){let s=B.codePointAt(r+1);if(E.CODES.get("$")===s){t<r&&(e+=B.substring(t,r)),e+="$",r++,t=r+1;continue}else if(E.CODES.get("&")===s){t<r&&(e+=B.substring(t,r));let C=this.group(0);C!==null?e+=C:e+="$&",r++,t=r+1;continue}else if(E.CODES.get("`")===s){t<r&&(e+=B.substring(t,r)),e+=this.substring(0,this.start(0)),r++,t=r+1;continue}else if(E.CODES.get("'")===s){t<r&&(e+=B.substring(t,r)),e+=this.substring(this.end(0),this.matcherInputLength),r++,t=r+1;continue}else if(E.CODES.get("1")<=s&&s<=E.CODES.get("9")){let C=s-E.CODES.get("0");for(t<r&&(e+=B.substring(t,r)),r+=2;r<i&&(s=B.codePointAt(r),!(s<E.CODES.get("0")||s>E.CODES.get("9")||C*10+s-E.CODES.get("0")>this.patternGroupCount));r++)C=C*10+s-E.CODES.get("0");if(C>this.patternGroupCount){e+=`$${C}`,t=r,r--;continue}let o=this.group(C);o!==null&&(e+=o),t=r,r--;continue}else if(s===E.CODES.get("<")){t<r&&(e+=B.substring(t,r)),r++;let C=r+1;for(;C<B.length&&B.codePointAt(C)!==E.CODES.get(">")&&B.codePointAt(C)!==E.CODES.get(" ");)C++;if(C===B.length||B.codePointAt(C)!==E.CODES.get(">")){e+=B.substring(r-1,C+1),t=C+1,r=C;continue}let o=B.substring(r+1,C);if(Object.prototype.hasOwnProperty.call(this.namedGroups,o)){let u=this.group(o);u!==null&&(e+=u);}else e+=`$<${o}>`;t=C+1,r=C;continue}}return t<i&&(e+=B.substring(t,i)),e}appendTail(){return this.substring(this.appendPos,this.matcherInputLength)}replaceAll(B,e=false){return this.replace(B,true,e)}replaceFirst(B,e=false){return this.replace(B,false,e)}replace(B,e=true,t=false){let i="";this.reset();let r=typeof B=="function",s=Object.keys(this.namedGroups).length>0,C=null;if(r){if(this.groupCount()>=Ht.MAX_REPLACER_ARGS)throw new z("Too many capture groups to safely invoke replacer function");C=this.matcherInput.isUTF8Encoding()?this.matcherInput.asBytes():this.matcherInput.asCharSequence();}for(;this.find()&&(i+=r?this.appendReplacementFunc(B,s,C):this.appendReplacement(B,t),!!e););return i+=this.appendTail(),i}appendReplacementFunc(B,e,t){let i="",r=this.start(),s=this.end();this.appendPos<r&&(i+=this.substring(this.appendPos,r)),this.appendPos=s;let C=this.buildReplacerArgs(r,e,t);return i+=String(B(...C)),i}buildReplacerArgs(B,e,t){let i=[this.group(0)],r=this.groupCount();for(let s=1;s<=r;s++){let C=this.start(s);C<0?i.push(void 0):i.push(this.substring(C,this.end(s)));}if(i.push(B),i.push(t),e){let s=this.getNamedGroups();for(let C in s)s[C]===null&&(s[C]=void 0);i.push(s);}return i}},f=class G{static ALT=1;static ALT_MATCH=2;static CAPTURE=3;static EMPTY_WIDTH=4;static FAIL=5;static MATCH=6;static NOP=7;static RUNE=8;static RUNE1=9;static RUNE_ANY=10;static RUNE_ANY_NOT_NL=11;static LB_WRITE=12;static LB_CHECK=13;static isRuneOp(B){return G.RUNE<=B&&B<=G.RUNE_ANY_NOT_NL}static escapeRunes(B){let e='"';for(let t of B)e+=F.escapeRune(t);return e+='"',e}constructor(B){this.op=B,this.out=0,this.arg=0,this.runes=[],this.next=null;}matchRune(B){if(this.runes.length===1){let s=this.runes[0];return (this.arg&D.FOLD_CASE)!==0?m.equalsIgnoreCase(s,B):B===s}let e=this.runes.length;if(e===0)return false;if(e===2||e===4||e===6||e===8){for(let s=0;s<e;s+=2){if(B<this.runes[s])return false;if(B<=this.runes[s+1])return true}return false}let t=0,i=e>>1;for(;i>1;){let s=i>>1;t+=this.runes[t+s<<1]<=B?s:0,i-=s;}t+=this.runes[t<<1]<=B?1:0;let r=t-1;return r>=0&&B<=this.runes[r<<1|1]}matchRunePos(B){if(this.runes.length===1){let s=this.runes[0];return (this.arg&D.FOLD_CASE)!==0?m.equalsIgnoreCase(s,B)?0:-1:B===s?0:-1}let e=this.runes.length;if(e===0)return -1;if(e===2||e===4||e===6||e===8){for(let s=0;s<e;s+=2){if(B<this.runes[s])return -1;if(B<=this.runes[s+1])return Math.floor(s/2)}return -1}let t=0,i=e>>1;for(;i>1;){let s=i>>1;t+=this.runes[t+s<<1]<=B?s:0,i-=s;}t+=this.runes[t<<1]<=B?1:0;let r=t-1;return r>=0&&B<=this.runes[r<<1|1]?r:-1}toString(){switch(this.op){case G.ALT:return `alt -> ${this.out}, ${this.arg}`;case G.ALT_MATCH:return `altmatch -> ${this.out}, ${this.arg}`;case G.CAPTURE:return `cap ${this.arg} -> ${this.out}`;case G.EMPTY_WIDTH:return `empty ${this.arg} -> ${this.out}`;case G.MATCH:return `match${this.arg!==0?` ${this.arg}`:""}`;case G.FAIL:return "fail";case G.NOP:return `nop -> ${this.out}`;case G.LB_WRITE:return `lbwrite ${this.arg} -> ${this.out}`;case G.LB_CHECK:return `lbcheck ${this.arg} -> ${this.out}`;case G.RUNE:return this.runes===null?"rune <null>":["rune ",G.escapeRunes(this.runes),(this.arg&D.FOLD_CASE)!==0?"/i":""," -> ",this.out].join("");case G.RUNE1:return `rune1 ${G.escapeRunes(this.runes)} -> ${this.out}`;case G.RUNE_ANY:return `any -> ${this.out}`;case G.RUNE_ANY_NOT_NL:return `anynotnl -> ${this.out}`;default:throw new Error("unhandled case in Inst.toString")}}},ci=class{constructor(){this.inst=null,this.cap=null;}},rt=class{constructor(n){this.sparse=new Int32Array(n),this.densePcs=new Int32Array(n),this.denseThreads=new Array(n),this.size=0;}contains(n){let B=this.sparse[n];return B<this.size&&this.densePcs[B]===n}isEmpty(){return this.size===0}add(n){let B=this.size++;return this.sparse[n]=B,this.denseThreads[B]=null,this.densePcs[B]=n,B}clear(){for(let n=0;n<this.size;n++)this.denseThreads[n]=null;this.size=0;}toString(){let n="{";for(let B=0;B<this.size;B++)B!==0&&(n+=", "),n+=this.densePcs[B];return n+="}",n}},JB=class vB{static THREADS_CHUNK_SIZE=128;static fromRE2(B){let e=new vB;return e.prog=B.prog,e.re2=B,e.q0=new rt(e.prog.numInst()),e.q1=new rt(e.prog.numInst()),e.pool=[],e.poolSize=0,e.matched=false,e.matchcap=new Int32Array(e.prog.numCap<2?2:e.prog.numCap),e.ncap=0,e}static fromMachine(B){return vB.fromRE2(B.re2)}constructor(){this.prog=null,this.re2=null,this.q0=null,this.q1=null,this.pool=[],this.poolSize=0,this.matched=false,this.matchcap=null,this.ncap=0,this.lbTable=null;}init(B){this.ncap=B,B>this.matchcap.length?this.initNewCap(B):this.resetCap(),this.prog.numLb>0&&((!this.lbTable||this.lbTable.length<this.prog.numLb+1)&&(this.lbTable=new Int32Array(this.prog.numLb+1)),this.lbTable.fill(-1));}resetCap(){for(let B=0;B<this.poolSize;B++)this.pool[B].cap.fill(-1);}initNewCap(B){for(let e=0;e<this.poolSize;e++){let t=this.pool[e];t.cap=new Int32Array(B).fill(-1);}this.matchcap=new Int32Array(B).fill(-1);}submatches(){return this.ncap===0?F.emptyInts():F.toArray(this.matchcap.subarray(0,this.ncap))}alloc(B){if(this.poolSize===0){let t=this.matchcap.length;for(let i=0;i<vB.THREADS_CHUNK_SIZE;i++){let r=new ci;r.cap=new Int32Array(t),this.pool[this.poolSize++]=r;}}this.poolSize--;let e=this.pool[this.poolSize];return e.inst=B,e}freeQueue(B,e=0){for(let t=e;t<B.size;t++){let i=B.denseThreads[t];i!==null&&(this.pool[this.poolSize++]=i);}B.clear();}freeThread(B){this.pool[this.poolSize++]=B;}match(B,e,t){let i=this.re2.cond;if(i===F.EMPTY_ALL||(t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return false;this.matched=false,this.matchcap.fill(-1);let r=this.prog.numLb>0?0:e,s=e,C=this.q0,o=this.q1,u=B.step(r),c=u>>3,p=u&7,g=-1,d=0;u!==k.EOF()&&(u=B.step(r+p),g=u>>3,d=u&7);let O;for(r===0?O=F.emptyOpContext(-1,c):O=B.context(r);;){if(C.isEmpty()){if((i&F.EMPTY_BEGIN_TEXT)!==0&&r!==0||(t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&r!==0||this.matched)break;if(this.prog.numLb===0&&this.re2.prefix.length!==0&&g!==this.re2.prefixRune&&B.canCheckPrefix()){let R=B.index(this.re2,r);if(R<0)break;r+=R,u=B.step(r),c=u>>3,p=u&7,u=B.step(r+p),g=u>>3,d=u&7;}}if(r===0&&this.prog.numLb>0)for(let R=0;R<this.prog.lbStarts.length;R++)this.add(C,this.prog.lbStarts[R],r,this.matchcap,O,null);!this.matched&&(r===0||t===D.UNANCHORED)&&r>=s&&(this.ncap>0&&(this.matchcap[0]=r),this.add(C,this.prog.start,r,this.matchcap,O,null));let S=r+p;if(O=B.context(S),this.step(C,o,r,S,c,O,t,r===B.endPos()),p===0||this.ncap===0&&this.matched)break;r+=p,c=g,p=d,c!==-1&&(u=B.step(r+p),g=u>>3,d=u&7);let L=C;C=o,o=L;}return this.freeQueue(o),this.matched}matchSet(B,e,t){let i=this.re2.cond;if(i===F.EMPTY_ALL)return [];if((t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return [];let r=this.prog.numLb>0?0:e,s=e,C=this.q0,o=this.q1,u=B.step(r),c=u>>3,p=u&7,g=-1,d=0;u!==k.EOF()&&(u=B.step(r+p),g=u>>3,d=u&7);let O=r===0?F.emptyOpContext(-1,c):B.context(r),S=new Set;for(;!(C.isEmpty()&&((i&F.EMPTY_BEGIN_TEXT)!==0&&r!==0||(t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&r!==0));){if(r===0&&this.prog.numLb>0)for(let U=0;U<this.prog.lbStarts.length;U++)this.add(C,this.prog.lbStarts[U],r,this.matchcap,O,null);(r===0||t===D.UNANCHORED)&&r>=s&&this.add(C,this.prog.start,r,this.matchcap,O,null);let L=r+p;O=B.context(L);for(let U=0;U<C.size;U++){let y=C.denseThreads[U];if(y===null)continue;let W=y.inst,q=false;switch(W.op){case f.MATCH:if(t===D.ANCHOR_BOTH&&r!==B.endPos())break;S.add(W.arg);break;case f.RUNE:q=W.matchRune(c);break;case f.RUNE1:q=c===W.runes[0];break;case f.RUNE_ANY:q=true;break;case f.RUNE_ANY_NOT_NL:q=c!==E.CODES.get(`
5
- `);break;default:throw new pB("bad inst")}q&&(y=this.add(o,W.out,L,y.cap,O,y)),y!==null&&(this.freeThread(y),C.denseThreads[U]=null);}if(C.clear(),p===0)break;r+=p,c=g,p=d,c!==-1&&(u=B.step(r+p),g=u>>3,d=u&7);let R=C;C=o,o=R;}return this.freeQueue(o),Array.from(S).sort((L,R)=>L-R)}step(B,e,t,i,r,s,C,o){let u=this.re2.longest;for(let c=0;c<B.size;c++){let p=B.denseThreads[c];if(p===null)continue;if(u&&this.matched&&this.ncap>0&&this.matchcap[0]<p.cap[0]){this.freeThread(p);continue}let g=p.inst,d=false;switch(g.op){case f.MATCH:if(C===D.ANCHOR_BOTH&&!o)break;this.ncap>0&&(!u||!this.matched||this.matchcap[1]<t)&&(p.cap[1]=t,this.matchcap.set(p.cap.subarray(0,this.ncap))),u||this.freeQueue(B,c+1),this.matched=true;break;case f.RUNE:d=g.matchRune(r);break;case f.RUNE1:d=r===g.runes[0];break;case f.RUNE_ANY:d=true;break;case f.RUNE_ANY_NOT_NL:d=r!==E.CODES.get(`
6
- `);break;default:throw new pB("bad inst")}d&&(p=this.add(e,g.out,i,p.cap,s,p)),p!==null&&(this.freeThread(p),B.denseThreads[c]=null);}B.clear();}add(B,e,t,i,r,s){for(;;){if(e===0||B.contains(e))return s;let C=B.add(e),o=this.prog.inst[e];switch(o.op){case f.FAIL:return s;case f.ALT:case f.ALT_MATCH:s=this.add(B,o.out,t,i,r,s),e=o.arg;continue;case f.EMPTY_WIDTH:if((o.arg&~r)===0){e=o.out;continue}return s;case f.NOP:e=o.out;continue;case f.CAPTURE:if(o.arg<this.ncap){let u=i[o.arg];return i[o.arg]=t,this.add(B,o.out,t,i,r,null),i[o.arg]=u,s}else {e=o.out;continue}case f.LB_WRITE:this.lbTable[Math.abs(o.arg)]=t,e=o.out;continue;case f.LB_CHECK:if(o.arg>0){if(this.lbTable[o.arg]===t){e=o.out;continue}}else if(this.lbTable[-o.arg]!==t){e=o.out;continue}return s;case f.MATCH:case f.RUNE:case f.RUNE1:case f.RUNE_ANY:case f.RUNE_ANY_NOT_NL:if(s===null?s=this.alloc(o):s.inst=o,this.ncap>0&&s.cap!==i)for(let u=0;u<this.ncap;u++)s.cap[u]=i[u];return B.denseThreads[C]=s,s=null,s;default:throw new Error("unhandled")}}}},st=n=>{let B=-2128831035;for(let e=0;e<n.length;e++)B^=n[e],B=Math.imul(B,16777619);return B},hi=(n,B)=>{if(n.length!==B.length)return false;for(let e=0;e<n.length;e++)if(n[e]!==B[e])return false;return true},pi=class{constructor(n,B,e=[]){this.nfaStates=n,this.isMatch=B,this.matchIDs=e,this.nextLatin1=new Array(m.MAX_LATIN1+1).fill(null),this.nextLatin1Anchored=new Array(m.MAX_LATIN1+1).fill(null),this.transKeys=[],this.transVals=[],this.lastSeen=0;}},_t=class ce{static MAX_CACHE_CLEARS=5;static STATE_MEMORY_ESTIMATE=838;constructor(B,e=8388608){this.prog=B,this.stateCache=new Map,this.stateCount=0,this.startState=null,this.stateLimit=Math.max(1,Math.floor(e/ce.STATE_MEMORY_ESTIMATE)),this.cacheClears=0,this.failed=false,this.clock=0;}computeClosure(B){let e=new Set,t=[...B],i=false,r=[];for(;t.length>0;){let C=t.pop();if(e.has(C))continue;e.add(C);let o=this.prog.getInst(C);switch(o.op){case f.MATCH:i=true,r.includes(o.arg)||r.push(o.arg);break;case f.ALT:case f.ALT_MATCH:t.push(o.out),t.push(o.arg);break;case f.NOP:case f.CAPTURE:t.push(o.out);break;case f.EMPTY_WIDTH:case f.LB_WRITE:case f.LB_CHECK:return null}}let s=Int32Array.from(e).sort();return r.sort((C,o)=>C-o),{pcs:s,isMatch:i,matchIDs:r}}getState(B){let e=this.computeClosure(B);if(!e)return null;let t=e.pcs,i=st(t),r=this.stateCache.get(i);if(r)for(let C=0;C<r.length;C++){let o=r[C];if(hi(o.nfaStates,t))return o.lastSeen=++this.clock,o}else r=[],this.stateCache.set(i,r);if(this.failed)return null;if(this.stateCount>=this.stateLimit){if(this.cacheClears++,this.cacheClears>=ce.MAX_CACHE_CLEARS)return this.failed=true,this.stateCache.clear(),this.stateCount=0,this.startState=null,null;this.evictCache(),r=this.stateCache.get(i),r||(r=[],this.stateCache.set(i,r));}let s=new pi(t,e.isMatch,e.matchIDs);return s.lastSeen=++this.clock,r.push(s),this.stateCount++,s}evictCache(){let B=[];for(let s of this.stateCache.values())for(let C=0;C<s.length;C++)B.push(s[C]);B.sort((s,C)=>s.lastSeen-C.lastSeen);let e=Math.max(1,Math.floor(this.stateLimit/2)),t=B.length-e,i=B.slice(t),r=new Set(i);this.stateCache.clear(),this.stateCount=0;for(let s=0;s<i.length;s++){let C=i[s];C.nextLatin1.fill(null),C.nextLatin1Anchored.fill(null),C.transKeys.length=0,C.transVals.length=0;let o=st(C.nfaStates),u=this.stateCache.get(o);u||(u=[],this.stateCache.set(o,u)),u.push(C),this.stateCount++;}this.startState&&!r.has(this.startState)&&(this.startState=null);}step(B,e,t){if(e<=m.MAX_LATIN1)if(t===D.UNANCHORED){let s=B.nextLatin1[e];if(s!==null)return s}else {let s=B.nextLatin1Anchored[e];if(s!==null)return s}else {let s=e+(t===D.UNANCHORED?0:m.MAX_RUNE+1),C=B.transKeys,o=C.length;for(let u=0;u<o;u++)if(C[u]===s)return B.transVals[u]}let i=[];for(let s=0;s<B.nfaStates.length;s++){let C=B.nfaStates[s],o=this.prog.getInst(C);f.isRuneOp(o.op)&&o.matchRune(e)&&i.push(o.out);}t===D.UNANCHORED&&i.push(this.prog.start);let r=this.getState(i);if(e<=m.MAX_LATIN1)t===D.UNANCHORED?B.nextLatin1[e]=r:B.nextLatin1Anchored[e]=r;else {let s=e+(t===D.UNANCHORED?0:m.MAX_RUNE+1);B.transKeys.push(s),B.transVals.push(r);}return r}match(B,e,t){if((t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return false;if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let i=B.endPos(),r=this.startState;if(r.isMatch)if(t===D.ANCHOR_BOTH){if(e===i)return true}else return true;let s=e;for(;s<i;){let C=B.step(s),o=C>>3,u=C&7;if(u===0)break;if(r=t===D.UNANCHORED&&o<=m.MAX_LATIN1&&r.nextLatin1[o]||this.step(r,o,t),r===null)return null;if(r.lastSeen=++this.clock,r.isMatch)if(t===D.ANCHOR_BOTH){if(s+u===i)return true}else return true;if(r.nfaStates.length===0&&t!==D.UNANCHORED)return false;s+=u;}return false}matchSet(B,e,t){if((t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return [];if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let i=B.endPos(),r=this.startState,s=new Set,C=(u,c)=>{u.isMatch&&(t===D.ANCHOR_BOTH?c===i&&u.matchIDs.forEach(p=>s.add(p)):u.matchIDs.forEach(p=>s.add(p)));};C(r,e);let o=e;for(;o<i;){let u=B.step(o),c=u>>3,p=u&7;if(p===0)break;if(r=t===D.UNANCHORED&&c<=m.MAX_LATIN1&&r.nextLatin1[c]||this.step(r,c,t),r===null)return null;if(r.lastSeen=++this.clock,o+=p,C(r,o),r.nfaStates.length===0&&t!==D.UNANCHORED)break}return Array.from(s).sort((u,c)=>u-c)}},Ei=32,fi=500,oe=256,Di=256*1024,gi=class{constructor(){this.end=0,this.cap=new Int32Array(0),this.matchcap=new Int32Array(0),this.ncap=0,this.jobPc=new Int32Array(oe),this.jobArg=new Uint8Array(oe),this.jobPos=new Int32Array(oe),this.jobLen=0,this.visited=new Uint32Array(0);}reset(n,B,e){this.end=B,this.jobLen=0,this.ncap=e;let t=n.numInst()*(B+1)+Ei-1>>>5;this.visited.length<t?this.visited=new Uint32Array(t):this.visited.fill(0,0,t),this.cap.length<e?this.cap=new Int32Array(e).fill(-1):this.cap.fill(-1,0,e),this.matchcap.length<e?this.matchcap=new Int32Array(e).fill(-1):this.matchcap.fill(-1,0,e);}shouldVisit(n,B){let e=n*(this.end+1)+B,t=e>>>5,i=1<<(e&31);return (this.visited[t]&i)!==0?false:(this.visited[t]|=i,true)}push(n,B,e,t){if(n.prog.getInst(B).op!==f.FAIL&&(t||this.shouldVisit(B,e))){if(this.jobLen>=this.jobPc.length){let i=this.jobPc.length*2,r=new Int32Array(i);r.set(this.jobPc),this.jobPc=r;let s=new Uint8Array(i);s.set(this.jobArg),this.jobArg=s;let C=new Int32Array(i);C.set(this.jobPos),this.jobPos=C;}this.jobPc[this.jobLen]=B,this.jobArg[this.jobLen]=t?1:0,this.jobPos[this.jobLen]=e,this.jobLen++;}}tryBacktrack(n,B,e,t,i){let r=n.longest;for(this.push(n,e,t,false);this.jobLen>0;){this.jobLen--;let s=this.jobPc[this.jobLen],C=this.jobArg[this.jobLen]===1,o=this.jobPos[this.jobLen],u=true;for(;!(!u&&!this.shouldVisit(s,o));){u=false;let c=n.prog.getInst(s);switch(c.op){case f.FAIL:throw new pB("unexpected InstFail");case f.ALT:if(C){C=false,s=c.arg;continue}else {this.push(n,s,o,true),s=c.out;continue}case f.ALT_MATCH:{let p=n.prog.getInst(c.out);if(f.isRuneOp(p.op)){this.push(n,c.arg,o,false),s=c.arg,o=this.end;continue}this.push(n,c.out,this.end,false),s=c.out;continue}case f.RUNE:{let p=B.step(o);if(p===k.EOF()||!c.matchRune(p>>3))break;o+=p&7,s=c.out;continue}case f.RUNE1:{let p=B.step(o);if(p===k.EOF()||p>>3!==c.runes[0])break;o+=p&7,s=c.out;continue}case f.RUNE_ANY_NOT_NL:{let p=B.step(o);if(p===k.EOF()||p>>3===10)break;o+=p&7,s=c.out;continue}case f.RUNE_ANY:{let p=B.step(o);if(p===k.EOF())break;o+=p&7,s=c.out;continue}case f.CAPTURE:if(C){this.cap[c.arg]=o;break}else {c.arg<this.ncap&&(this.push(n,s,this.cap[c.arg],true),this.cap[c.arg]=o),s=c.out;continue}case f.EMPTY_WIDTH:{let p=B.context(o);if((c.arg&~p)!==0)break;s=c.out;continue}case f.NOP:s=c.out;continue;case f.MATCH:{if(i===D.ANCHOR_BOTH&&o!==this.end)break;if(this.ncap===0)return true;this.ncap>1&&(this.cap[1]=o);let p=this.matchcap[1];if((p===-1||r&&o>0&&o>p)&&this.matchcap.set(this.cap),!r||o===this.end)return true;break}case f.LB_WRITE:case f.LB_CHECK:throw new pB("Backtracker cannot evaluate Lookbehind instructions");default:throw new pB("bad inst")}break}}return r&&this.matchcap.length>1&&this.matchcap[1]>=0}},MB=[],kB=class Gt{static shouldBacktrack(B){return B.numInst()<=fi}static maxBitStateLen(B){return Gt.shouldBacktrack(B)?Math.floor(Di/B.numInst()):0}static execute(B,e,t,i,r){let s=B.cond;if(s===F.EMPTY_ALL||(i===D.ANCHOR_START||i===D.ANCHOR_BOTH)&&t!==0||(s&F.EMPTY_BEGIN_TEXT)!==0&&t!==0)return null;let C=MB.length>0?MB.pop():new gi,o=e.endPos();C.reset(B.prog,o,r);let u=false;if((s&F.EMPTY_BEGIN_TEXT)!==0||i===D.ANCHOR_START||i===D.ANCHOR_BOTH)C.ncap>0&&(C.cap[0]=t),C.tryBacktrack(B,e,B.prog.start,t,i)&&(u=true);else {let p=-1;for(;t<=o&&p!==0;t+=p){if(B.prefix.length>0){let d=e.index(B,t);if(d<0)break;t+=d;}if(C.ncap>0&&(C.cap[0]=t),C.tryBacktrack(B,e,B.prog.start,t,i)){u=true;break}let g=e.step(t);p=g===k.EOF()?0:g&7;}}if(!u)return MB.push(C),null;let c=r===0?[]:F.toArray(C.matchcap.subarray(0,r));return MB.push(C),c}},Ct=class{constructor(n){this.sparse=new Uint32Array(n),this.dense=new Uint32Array(n),this.size=0,this.nextIndex=0;}empty(){return this.nextIndex>=this.size}next(){return this.dense[this.nextIndex++]}clear(){this.size=0,this.nextIndex=0;}contains(n){return n<this.sparse.length&&this.sparse[n]<this.size&&this.dense[this.sparse[n]]===n}insert(n){this.contains(n)||this.insertNew(n);}insertNew(n){n>=this.sparse.length||(this.sparse[n]=this.size,this.dense[this.size]=n,this.size++);}},di=(n,B,e,t)=>{let i=n.length,r=B.length,s=0,C=0,o=[],u=[],c=true,p=-1,g=d=>{let O=d?n:B,S=d?s:C,L=d?e:t;return p>0&&O[S]<=o[p]?false:(o.push(O[S],O[S+1]),d?s+=2:C+=2,p+=2,u.push(L),true)};for(;s<i||C<r;)if(C>=r?c=g(true):s>=i||B[C]<n[s]?c=g(false):c=g(true),!c)return null;return {merged:o,next:u}},mi=class{constructor(n){this.start=n.start,this.numCap=n.numCap,this.inst=new Array(n.inst.length);for(let B=0;B<n.inst.length;B++){let e=n.inst[B],t=new f(e.op);t.out=e.out,t.arg=e.arg,t.runes=e.runes?e.runes.slice():[],t.next=null,this.inst[B]=t;}}},Oi=n=>{let B=new mi(n);for(let e=0;e<B.inst.length;e++){let t=B.inst[e];if(t.op!==f.ALT&&t.op!==f.ALT_MATCH)continue;let i="out",r="arg",s=B.inst[t[r]];if(s.op!==f.ALT&&s.op!==f.ALT_MATCH&&(i="arg",r="out",s=B.inst[t[r]],s.op!==f.ALT&&s.op!==f.ALT_MATCH))continue;let C=B.inst[t[i]];if(C.op===f.ALT||C.op===f.ALT_MATCH)continue;let o="out",u="arg",c=false;s.out===e?c=true:s.arg===e&&(c=true,o="arg",u="out"),c&&(s[o]=t[i]),t[i]===s[o]&&(t[r]=s[u]);}return B},Ii=n=>{if(n.inst.length>=1e3)return null;let B=new Ct(n.inst.length),e=new Ct(n.inst.length),t=new Array(n.inst.length),i=new Array(n.inst.length).fill(false),r=s=>{let C=true,o=n.inst[s];if(e.contains(s))return true;switch(e.insert(s),o.op){case f.ALT:case f.ALT_MATCH:{C=r(o.out)&&r(o.arg);let u=i[o.out],c=i[o.arg];if(u&&c)return false;if(c){let g=o.out;o.out=o.arg,o.arg=g;let d=u;u=c,c=d;}u&&(i[s]=true,o.op=f.ALT_MATCH);let p=di(t[o.out]||[],t[o.arg]||[],o.out,o.arg);if(!p)return false;t[s]=p.merged,o.next=new Uint32Array(p.next);break}case f.CAPTURE:case f.EMPTY_WIDTH:case f.NOP:C=r(o.out),i[s]=i[o.out],t[s]=t[o.out]?t[o.out].slice():[],o.next=new Uint32Array(Math.floor(t[s].length/2)+1).fill(o.out);break;case f.MATCH:case f.FAIL:i[s]=o.op===f.MATCH;break;case f.RUNE:{if(i[s]=false,o.next&&o.next.length>0)break;if(B.insert(o.out),!o.runes||o.runes.length===0){t[s]=[],o.next=new Uint32Array([o.out]);break}let u=[];if(o.runes.length===1&&(o.arg&D.FOLD_CASE)!==0){let c=o.runes[0];u.push(c,c);for(let p=m.simpleFold(c);p!==c;p=m.simpleFold(p))u.push(p,p);u.sort((p,g)=>p-g);}else for(let c=0;c<o.runes.length;c++)u.push(o.runes[c]);t[s]=u,o.next=new Uint32Array(Math.floor(u.length/2)+1).fill(o.out),o.op=f.RUNE;break}case f.RUNE1:{if(i[s]=false,o.next&&o.next.length>0)break;B.insert(o.out);let u=[];if((o.arg&D.FOLD_CASE)!==0){let c=o.runes[0];u.push(c,c);for(let p=m.simpleFold(c);p!==c;p=m.simpleFold(p))u.push(p,p);u.sort((p,g)=>p-g);}else u.push(o.runes[0],o.runes[0]);t[s]=u,o.next=new Uint32Array(Math.floor(u.length/2)+1).fill(o.out),o.op=f.RUNE;break}case f.RUNE_ANY:if(i[s]=false,o.next&&o.next.length>0)break;B.insert(o.out),t[s]=[0,m.MAX_RUNE],o.next=new Uint32Array([o.out]);break;case f.RUNE_ANY_NOT_NL:if(i[s]=false,o.next&&o.next.length>0)break;B.insert(o.out),t[s]=[0,9,11,m.MAX_RUNE],o.next=new Uint32Array(Math.floor(t[s].length/2)+1).fill(o.out);break}return C};for(B.clear(),B.insert(n.start);!B.empty();)if(e.clear(),!r(B.next()))return null;for(let s=0;s<n.inst.length;s++)t[s]&&(n.inst[s].runes=t[s]);return n},Fi=(n,B)=>{for(let e=0;e<B.inst.length;e++){let t=B.inst[e];switch(t.op){case f.ALT:case f.ALT_MATCH:case f.RUNE:break;case f.CAPTURE:case f.EMPTY_WIDTH:case f.NOP:case f.MATCH:case f.FAIL:n.inst[e].next=null;break;case f.RUNE1:case f.RUNE_ANY:case f.RUNE_ANY_NOT_NL:n.inst[e].next=null,n.inst[e].op=t.op,n.inst[e].runes=t.runes?t.runes.slice():[];break}}},ot=class Pt{static compile(B){if(B.start===0||B.numLb>0)return null;let e=B.inst[B.start];if(e.op!==f.EMPTY_WIDTH||(e.arg&F.EMPTY_BEGIN_TEXT)===0)return null;let t=false;for(let r=0;r<B.inst.length;r++)if(B.inst[r].op===f.ALT||B.inst[r].op===f.ALT_MATCH){t=true;break}for(let r=0;r<B.inst.length;r++){let s=B.inst[r],C=B.inst[s.out].op;switch(s.op){case f.ALT:case f.ALT_MATCH:if(C===f.MATCH||B.inst[s.arg].op===f.MATCH)return null;break;case f.EMPTY_WIDTH:if(C===f.MATCH){if((s.arg&F.EMPTY_END_TEXT)===F.EMPTY_END_TEXT)continue;return null}break;default:if(C===f.MATCH&&t)return null;break}}let i=Oi(B);return i=Ii(i),i!==null&&Fi(i,B),i}static next(B,e){let t=B.matchRunePos(e);return t>=0?B.next[t]:B.op===f.ALT_MATCH?B.out:0}static execute(B,e,t,i,r){let s=B.onepass;if(!s)return null;let C=new Int32Array(r).fill(-1),o=false,u=e.step(t),c=u>>3,p=u&7,g=k.EOF(),d=-1,O=0;u!==k.EOF()&&(g=e.step(t+p),g!==k.EOF()&&(d=g>>3,O=g&7));let S=t===0?F.emptyOpContext(-1,c):e.context(t),L=s.start,R;for(;;){switch(R=s.inst[L],L=R.out,R.op){case f.MATCH:return i===D.ANCHOR_BOTH&&t!==e.endPos()?null:(o=true,C.length>0&&(C[0]=0,C[1]=t),r===0?[]:F.toArray(C));case f.RUNE:if(!R.matchRune(c))return null;break;case f.RUNE1:if(c!==R.runes[0])return null;break;case f.RUNE_ANY:break;case f.RUNE_ANY_NOT_NL:if(c===10)return null;break;case f.ALT:case f.ALT_MATCH:L=Pt.next(R,c);continue;case f.FAIL:return null;case f.NOP:continue;case f.EMPTY_WIDTH:if((R.arg&~S)!==0)return null;continue;case f.CAPTURE:R.arg<C.length&&(C[R.arg]=t);continue;default:throw new pB("bad inst")}if(p===0)break;S=F.emptyOpContext(c,d),t+=p,c=d,p=O,c!==-1&&(g=e.step(t+p),g!==k.EOF()?(d=g>>3,O=g&7):(d=-1,O=0));}return o?r===0?[]:F.toArray(C):null}},h=class A{static Op=yt(["NO_MATCH","EMPTY_MATCH","LITERAL","CHAR_CLASS","ANY_CHAR_NOT_NL","ANY_CHAR","BEGIN_LINE","END_LINE","BEGIN_TEXT","END_TEXT","WORD_BOUNDARY","NO_WORD_BOUNDARY","CAPTURE","STAR","PLUS","QUEST","REPEAT","CONCAT","ALTERNATE","PLB","NLB","LEFT_PAREN","VERTICAL_BAR"]);static isPseudoOp(B){return B>=A.Op.LEFT_PAREN}static emptySubs(){return []}static quoteIfHyphen(B){return B===E.CODES.get("-")?"\\":""}static fromRegexp(B){let e=new A(B.op);return e.flags=B.flags,e.subs=B.subs,e.runes=B.runes,e.cap=B.cap,e.min=B.min,e.max=B.max,e.name=B.name,e.namedGroups=B.namedGroups,e.lb=B.lb,e}constructor(B){this.op=B,this.flags=0,this.subs=A.emptySubs(),this.runes=[],this.min=0,this.max=0,this.cap=0,this.name=null,this.namedGroups=Object.create(null),this.lb=0;}reinit(){this.flags=0,this.subs=A.emptySubs(),this.runes=[],this.cap=0,this.min=0,this.max=0,this.name=null,this.namedGroups=Object.create(null),this.lb=0;}toString(){return this.appendTo()}appendTo(){let B="";switch(this.op){case A.Op.NO_MATCH:B+="[^\\x00-\\x{10FFFF}]";break;case A.Op.EMPTY_MATCH:B+="(?:)";break;case A.Op.STAR:case A.Op.PLUS:case A.Op.QUEST:case A.Op.REPEAT:{let e=this.subs[0];switch(e.op>A.Op.CAPTURE||e.op===A.Op.LITERAL&&e.runes.length>1?B+=`(?:${e.appendTo()})`:B+=e.appendTo(),this.op){case A.Op.STAR:B+="*";break;case A.Op.PLUS:B+="+";break;case A.Op.QUEST:B+="?";break;case A.Op.REPEAT:B+=`{${this.min}`,this.min!==this.max&&(B+=",",this.max>=0&&(B+=this.max)),B+="}";break}(this.flags&D.NON_GREEDY)!==0&&(B+="?");break}case A.Op.CONCAT:for(let e of this.subs)e.op===A.Op.ALTERNATE?B+=`(?:${e.appendTo()})`:B+=e.appendTo();break;case A.Op.ALTERNATE:{let e="";for(let t of this.subs)B+=e,e="|",B+=t.appendTo();break}case A.Op.LITERAL:(this.flags&D.FOLD_CASE)!==0&&(B+="(?i:");for(let e of this.runes)B+=F.escapeRune(e);(this.flags&D.FOLD_CASE)!==0&&(B+=")");break;case A.Op.ANY_CHAR_NOT_NL:B+="(?-s:.)";break;case A.Op.ANY_CHAR:B+="(?s:.)";break;case A.Op.PLB:B+=`(?<=${this.subs[0].appendTo()})`;break;case A.Op.NLB:B+=`(?<!${this.subs[0].appendTo()})`;break;case A.Op.CAPTURE:this.name===null||this.name.length===0?B+="(":B+=`(?P<${this.name}>`,this.subs[0].op!==A.Op.EMPTY_MATCH&&(B+=this.subs[0].appendTo()),B+=")";break;case A.Op.BEGIN_TEXT:B+="\\A";break;case A.Op.END_TEXT:(this.flags&D.WAS_DOLLAR)!==0?B+="(?-m:$)":B+="\\z";break;case A.Op.BEGIN_LINE:B+="^";break;case A.Op.END_LINE:B+="$";break;case A.Op.WORD_BOUNDARY:B+="\\b";break;case A.Op.NO_WORD_BOUNDARY:B+="\\B";break;case A.Op.CHAR_CLASS:if(this.runes.length%2!==0){B+="[invalid char class]";break}if(B+="[",this.runes.length===0)B+="^\\x00-\\x{10FFFF}";else if(this.runes[0]===0&&this.runes[this.runes.length-1]===m.MAX_RUNE){B+="^";for(let e=1;e<this.runes.length-1;e+=2){let t=this.runes[e]+1,i=this.runes[e+1]-1;B+=A.quoteIfHyphen(t),B+=F.escapeRune(t),t!==i&&(B+="-",B+=A.quoteIfHyphen(i),B+=F.escapeRune(i));}}else for(let e=0;e<this.runes.length;e+=2){let t=this.runes[e],i=this.runes[e+1];B+=A.quoteIfHyphen(t),B+=F.escapeRune(t),t!==i&&(B+="-",B+=A.quoteIfHyphen(i),B+=F.escapeRune(i));}B+="]";break;default:B+=this.op;break}return B}maxCap(){let B=0;if(this.op===A.Op.CAPTURE&&(B=this.cap),this.subs!==null)for(let e of this.subs){let t=e.maxCap();B<t&&(B=t);}return B}equals(B){if(!(B!==null&&B instanceof A)||this.op!==B.op)return false;switch(this.op){case A.Op.END_TEXT:if((this.flags&D.WAS_DOLLAR)!==(B.flags&D.WAS_DOLLAR))return false;break;case A.Op.LITERAL:case A.Op.CHAR_CLASS:if(this.runes===null&&B.runes===null)break;if(this.runes===null||B.runes===null||this.runes.length!==B.runes.length)return false;for(let e=0;e<this.runes.length;e++)if(this.runes[e]!==B.runes[e])return false;break;case A.Op.ALTERNATE:case A.Op.CONCAT:if(this.subs.length!==B.subs.length)return false;for(let e=0;e<this.subs.length;++e)if(!this.subs[e].equals(B.subs[e]))return false;break;case A.Op.STAR:case A.Op.PLUS:case A.Op.QUEST:if((this.flags&D.NON_GREEDY)!==(B.flags&D.NON_GREEDY)||!this.subs[0].equals(B.subs[0]))return false;break;case A.Op.REPEAT:if((this.flags&D.NON_GREEDY)!==(B.flags&D.NON_GREEDY)||this.min!==B.min||this.max!==B.max||!this.subs[0].equals(B.subs[0]))return false;break;case A.Op.CAPTURE:if(this.cap!==B.cap||(this.name===null?B.name!==null:this.name!==B.name)||!this.subs[0].equals(B.subs[0]))return false;break;case A.Op.PLB:case A.Op.NLB:if(this.lb!==B.lb||!this.subs[0].equals(B.subs[0]))return false;break}return true}},at=class{constructor(n){this.next=[Object.create(null)],this.fail=[0],this.match=[false];for(let e of n){let t=0;for(let i=0;i<e.length;i++){let r=e[i];r in this.next[t]||(this.next.push(Object.create(null)),this.fail.push(0),this.match.push(false),this.next[t][r]=this.next.length-1),t=this.next[t][r];}this.match[t]=true;}let B=[];for(let e in this.next[0])if(Object.prototype.hasOwnProperty.call(this.next[0],e)){let t=this.next[0][e];this.fail[t]=0,B.push(t);}for(;B.length>0;){let e=B.shift();for(let t in this.next[e])if(Object.prototype.hasOwnProperty.call(this.next[e],t)){let i=this.next[e][t],r=this.fail[e];for(;r!==0&&!(t in this.next[r]);)r=this.fail[r];t in this.next[r]?this.fail[i]=this.next[r][t]:this.fail[i]=0,this.match[i]=this.match[i]||this.match[this.fail[i]],B.push(i);}}}searchUTF16(n,B,e){let t=0;for(let i=B;i<e;i++){let r=n.charCodeAt(i);for(;t!==0&&!(r in this.next[t]);)t=this.fail[t];if(r in this.next[t]&&(t=this.next[t][r]),this.match[t])return true}return false}searchUTF8(n,B,e){let t=0;for(let i=B;i<e;i++){let r=n[i];for(;t!==0&&!(r in this.next[t]);)t=this.fail[t];if(r in this.next[t]&&(t=this.next[t][r]),this.match[t])return true}return false}},b=class mB{static Type={NONE:0,EXACT:1,AND:2,OR:3};constructor(B){this.type=B,this.subs=[],this.str="",this.bytes=null,this.ac16=null,this.ac8=null;}eval(B,e){switch(this.type){case mB.Type.NONE:return true;case mB.Type.EXACT:return B.hasString(this,e);case mB.Type.AND:for(let t=0;t<this.subs.length;t++)if(!this.subs[t].eval(B,e))return false;return true;case mB.Type.OR:if(this.ac16&&this.ac8)return B.hasAnyString(this,e);for(let t=0;t<this.subs.length;t++)if(this.subs[t].eval(B,e))return true;return false;default:return true}}},Si=class eB{static build(B){let e=eB.fromRegexp(B);return eB.simplify(e)}static fromRegexp(B){if(!B)return new b(b.Type.NONE);switch(B.op){case h.Op.PLB:case h.Op.NLB:case h.Op.NO_MATCH:case h.Op.EMPTY_MATCH:case h.Op.BEGIN_LINE:case h.Op.END_LINE:case h.Op.BEGIN_TEXT:case h.Op.END_TEXT:case h.Op.WORD_BOUNDARY:case h.Op.NO_WORD_BOUNDARY:case h.Op.CHAR_CLASS:case h.Op.ANY_CHAR_NOT_NL:case h.Op.ANY_CHAR:return new b(b.Type.NONE);case h.Op.LITERAL:{if(B.runes.length===0||(B.flags&D.FOLD_CASE)!==0)return new b(b.Type.NONE);let e=new b(b.Type.EXACT),t="";for(let i=0;i<B.runes.length;i++)t+=String.fromCodePoint(B.runes[i]);return e.str=t,e.bytes=F.stringToUtf8ByteArray(e.str),e}case h.Op.CAPTURE:case h.Op.PLUS:return eB.fromRegexp(B.subs[0]);case h.Op.REPEAT:return B.min>=1?eB.fromRegexp(B.subs[0]):new b(b.Type.NONE);case h.Op.CONCAT:{let e=new b(b.Type.AND);for(let t of B.subs)e.subs.push(eB.fromRegexp(t));return e}case h.Op.ALTERNATE:{let e=new b(b.Type.OR);for(let t of B.subs)e.subs.push(eB.fromRegexp(t));return e}default:return new b(b.Type.NONE)}}static simplify(B){if(B.type===b.Type.EXACT||B.type===b.Type.NONE)return B;if(B.type===b.Type.AND){let e=[];for(let t of B.subs){let i=eB.simplify(t);if(i.type!==b.Type.NONE)if(i.type===b.Type.AND)for(let r=0;r<i.subs.length;r++)e.push(i.subs[r]);else e.push(i);}return e.length===0?new b(b.Type.NONE):e.length===1?e[0]:(B.subs=e,B)}if(B.type===b.Type.OR){let e=[];for(let s of B.subs){let C=eB.simplify(s);if(C.type===b.Type.NONE)return new b(b.Type.NONE);if(C.type===b.Type.OR)for(let o=0;o<C.subs.length;o++)e.push(C.subs[o]);else e.push(C);}if(e.length===0)return new b(b.Type.NONE);if(e.length===1)return e[0];let t=new Set,i=[];for(let s of e)s.type===b.Type.EXACT?t.has(s.str)||(t.add(s.str),i.push(s)):i.push(s);B.subs=i;let r=true;for(let s of i)if(s.type!==b.Type.EXACT){r=false;break}return r&&i.length>1&&(B.ac16=new at(i.map(s=>{let C=[];for(let o=0;o<s.str.length;o++)C.push(s.str.charCodeAt(o));return C})),B.ac8=new at(i.map(s=>s.bytes))),B}return B}},Y=class{constructor(n=0,B=0){this.head=n,this.tail=B;}},Ai=class{constructor(){this.inst=[],this.start=0,this.numCap=2,this.lbStarts=[],this.numLb=0;}getInst(n){return this.inst[n]}numInst(){return this.inst.length}addInst(n){this.inst.push(new f(n));}skipNop(n){let B=this.inst[n];for(;B.op===f.NOP||B.op===f.CAPTURE;)B=this.inst[n],n=B.out;return B}prefix(){let n="",B=this.skipNop(this.start);if(!f.isRuneOp(B.op)||B.runes.length!==1)return [B.op===f.MATCH,n];for(;f.isRuneOp(B.op)&&B.runes.length===1&&(B.arg&D.FOLD_CASE)===0;)n+=String.fromCodePoint(B.runes[0]),B=this.skipNop(B.out);return [B.op===f.MATCH,n]}startCond(){let n=0,B=this.start;B:for(;;){let e=this.inst[B];switch(e.op){case f.EMPTY_WIDTH:n|=e.arg;break;case f.FAIL:return -1;case f.CAPTURE:case f.NOP:break;default:break B}B=e.out;}return n}patch(n,B){let e=n.head;for(;e!==0;){let t=this.inst[e>>1];(e&1)===0?(e=t.out,t.out=B):(e=t.arg,t.arg=B);}}append(n,B){if(n.head===0)return B;if(B.head===0)return n;let e=this.inst[n.tail>>1];return (n.tail&1)===0?e.out=B.head:e.arg=B.head,new Y(n.head,B.tail)}toString(){let n="";for(let B=0;B<this.inst.length;B++){let e=n.length;n+=B,B===this.start&&(n+="*"),n+=" ".substring(n.length-e),n+=this.inst[B],n+=`
7
- `;}return n}},UB=class{constructor(n=0,B=new Y,e=false){this.i=n,this.out=B,this.nullable=e;}},Mt=class cB{static ANY_RUNE_NOT_NL(){return [0,E.CODES.get(`
1
+ import {z}from'zod';var D=class CB{static FOLD_CASE=1;static LITERAL=2;static CLASS_NL=4;static DOT_NL=8;static ONE_LINE=16;static NON_GREEDY=32;static PERL_X=64;static UNICODE_GROUPS=128;static WAS_DOLLAR=256;static LOOKBEHIND=512;static MATCH_NL=CB.CLASS_NL|CB.DOT_NL;static PERL=CB.CLASS_NL|CB.ONE_LINE|CB.PERL_X|CB.UNICODE_GROUPS;static POSIX=0;static UNANCHORED=0;static ANCHOR_START=1;static ANCHOR_BOTH=2},$={CASE_INSENSITIVE:1,DOTALL:2,MULTILINE:4,DISABLE_UNICODE_GROUPS:8,LONGEST_MATCH:16,LOOKBEHINDS:512},OB=128,oe=new Int32Array(OB),ae=new Int32Array(OB),GB=65535;for(let n=0;n<OB;n++)n>=97&&n<=122?oe[n]=n-32:oe[n]=n,n>=65&&n<=90?ae[n]=n+32:ae[n]=n;var E=class{static CODES=new Map([["\x07",7],["\b",8],[" ",9],[`
2
+ `,10],["\v",11],["\f",12],["\r",13],[" ",32],['"',34],["$",36],["&",38],["'",39],["(",40],[")",41],["*",42],["+",43],["-",45],[".",46],["0",48],["1",49],["2",50],["3",51],["4",52],["5",53],["6",54],["7",55],["8",56],["9",57],[":",58],["<",60],[">",62],["?",63],["A",65],["B",66],["C",67],["F",70],["P",80],["Q",81],["U",85],["Z",90],["[",91],["\\",92],["]",93],["^",94],["_",95],["`",96],["a",97],["b",98],["f",102],["i",105],["m",109],["n",110],["r",114],["s",115],["t",116],["v",118],["x",120],["z",122],["{",123],["|",124],["}",125]]);static toUpperCase(n){if(n<OB)return oe[n];let B=String.fromCodePoint(n).toUpperCase(),e=B.codePointAt(0)>GB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toLowerCase(),i=t.codePointAt(0)>GB?2:1;return t.length>i||t.codePointAt(0)!==n?n:B.codePointAt(0)}static toLowerCase(n){if(n<OB)return ae[n];let B=String.fromCodePoint(n).toLowerCase(),e=B.codePointAt(0)>GB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toUpperCase(),i=t.codePointAt(0)>GB?2:1;return t.length>i||t.codePointAt(0)!==n?n:B.codePointAt(0)}},a=class{constructor(n,B=false){this.data=n,this.isStride1=B,this.SIZE=B?2:3;}getLo(n){return this.data[n*this.SIZE]}getHi(n){return this.data[n*this.SIZE+1]}getStride(n){return this.isStride1?1:this.data[n*this.SIZE+2]}get length(){return this.data.length/this.SIZE}},mt=new Uint8Array(256);for(let n=0,B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-";n<64;n++)mt[B.charCodeAt(n)]=n;var Ot=n=>{let B=[],e=0,t=0;for(let i=0;i<n.length;i++){let r=mt[n.charCodeAt(i)];e|=(r&31)<<t,(r&32)===0?(B.push(e),e=0,t=0):t+=5;}return B},l=(n,B)=>{let e=Ot(n),t=B?e.length/2:e.length/3,i=new Uint32Array(t*3),r=0,s=0;for(let C=0;C<t;C++)r+=e[s++],i[C*3]=r,r+=e[s++],i[C*3+1]=r,i[C*3+2]=B?1:e[s++];return i},Pn=n=>{let B=Ot(n),e=new Map,t=0;for(let i=0;i<B.length;i+=2){t+=B[i];let r=B[i+1],s=r>>>1^-(r&1);e.set(t,t+s);}return e},PB=class{constructor(n){this.initializer=n,this.cache=new Map;}has(n){return n in this.initializer}get(n){if(this.cache.has(n))return this.cache.get(n);let B=this.initializer[n],e=B?B():null;return this.cache.set(n,e),e}},v=class{static _CASE_ORBIT=null;static get CASE_ORBIT(){return this._CASE_ORBIT||(this._CASE_ORBIT=Pn("rCgCIgCY+rQI4QiCuuBLgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCCgCBgCBgCBgCBgCBgCBgCB+7OB-BB-BB-BB-BB-BBskQB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BC-BB-BB-BB-BB-BB-BB-BByHBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBDCBBBCBBBCBBCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBxHBCBBBCBBBCBBB3SBmMBkNBCBBBCBBB8MBCBBB6MB6MBCBBC+EB0MB2MBCBBB6MB+MBiGBmNBiNBCBBBmKBikzCBmNBqNBkIBsNBCBBBCBBBCBBB0NBCBBB0NDCBBB0NBCBBByNByNBCBBBCBBB2NBCBBDCBBCwDFCBCBDBCBCBDBCBCBDBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBB9EBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCCBCBDBCBBBhGBvDBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBjICCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBH2iVBCBBBlKBwiVB+jVB+jVBCBBBlMBqEBuEBCBBBCBBBCBBBCBBBCBBB+hVB4hVB8hVBjNB7MC5MB5MCzMC1MB+0yCE5MB20yCC9MBu2yCBwyyCBo0yCChNBlNBo0yCBu-UBi0yCDlNC6-UBpNDrNIu+UDzNCm0yCBzNE0yyCBzNBpEBxNBxNBtEG1NLqxyCBkxyCnFoFrBCBBBCBBDCBBEkIBkIBkICoHHsCCqCBqCBqCCgEC+DB+DBmkOBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCC+BBgCBgCBgCBgCBgCBgCBgCBgCBrCBpCBpCBpCBmjOB-BB8BB-BB-BBgEB-BB-BByBBqgOBsDB-BBtwBB-BB-BB-BBsBBgDBCB-BB-BB-BBeB-BB-BB61OB-BB-BB-DB9DB9DBQB7DBmCE9CBrDBPBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBrFB-EBOBnHB3FB-FCCBBBNBCBBCjIBjIBjIBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB8kMB-BB6kMB-BB-BB-BB-BB-BB-BB-BB-BB-BBokMB-BB-BBkkMBkkMB-BB-BB-BB-BB-BB-BB-BB4jMB-BB-BB-BB-BB-BB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EBCBBBCBoiMBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBJCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBeBCBBBCBBBCBBBCBBBCBBBCBBBCBBBdBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDL-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-C64CgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOCgmOGgmODg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FDg8FBg8FBg8FhVg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBQBQBQBQBQBQDPBPBPBPBPBPjkC7mMB5mMBnmMBjmMBCBlmMB3lMBpiMBk8kCBCBBG-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FD-7FB-7FB-7F6FoglCEsuHRwjlCyDCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCB0DBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBG1DD97OCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQDPBPBPBPBPBPDQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQDPBPBPBPBPBPEQCQCQCQCPCPCPCPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPB0EB0EBsFBsFBsFBsFBoGBoGBgIBgIBgHBgHB8HB8HDQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQCSFPBPBzEBzEBRCxnOFSFrFBrFBrFBrFBREQBQClkOFPBPBnGBnGFQBQCljOCODPBPB-GB-GBNHSF-HB-HB7HB7HBRqJ53OE9tQBrmQH4Bc3BSgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfECBByZ0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzB34BgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CBCBBBt-UBruHBt+UB1iVBviVBCBBBCBBBCBBB3hVB5-UB9hVB7hVCCBBCCBBI9jVB9jVBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBICBBBCBBECBBN-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOC-lOG-lOzoeCBBBCBBBCBBBCBBBCBBBCBl8kCBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBTCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBnECBBBCBBBCBBBCBBBCBBBCBBBCBBDCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBKCBBBCBBBnglCBCBBBCBBBCBBBCBBBCBBECBBBvyyCDCBBBCBBBgDCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBn0yCB90yCB10yCBh0yCBn0yCCjxyCBzyyCBpxyCBg6BBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBB-CBl0yCBvjlCBCBBBCBBBt2yCBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBhkzCZCBB9a-5Bd-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCm6TCBB7gBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCH-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BmlBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvChDwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCFvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvC1DuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCCuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCCuCBuCBuCBuCBuCBuCBuCCuCBuCCtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCCtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCCtCBtCBtCBtCBtCBtCBtCCtCBtCk2BgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEO-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-D+CgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCL-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-B74CgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BhrVgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BhB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BD1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BtxekCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjC")),this._CASE_ORBIT}static _Print=null;static get Print(){return this._Print||(this._Print=new a(l("hB9CBjBLBCpWBDFBFGBCCCBSBCsMBClBBDxBBDCBC2BBJaBFFBSVBC-FBCvBBD6BBDkDBP6BBDwBBDOBCbBDCCBJBGfBIqCBCgFBCHBDBBDVBCGBCEEBCBDIBDBBDDBJFFBCCBDBDYBDCBCFBFBBDVBCGBCBBCBBCBBDCCBDBFBBDCBEIIBCBCIIBPBLCBCIBCCBCVBCGBCBBCEBDJBCCBCCBDQQBCBDLBIGBCCBCHBDBBDVBCGBCBBCEBDIBDBBDCBICBFBBCEBDRBLBBCFBECBCDBEBBCCCBEEBEEBBBELBFEBECBCDBDHHPUBGMBCCBCWBCPBDIBCCBCDBIBBCCBCBBDDBDJBIVBCCBCWBCJBCEBDIBCCBCDBIBBGCBCDBDJBCCBNMBCCBCyBBCCBCFBFPBDZBCCBCRBEXBCIBCDDBFBEFFBEBCCCBGBHJBDCBN5BBFcBmBBBCCCBDBCXBCCCBVBDEBCCCBFBCJBDDBhBnCBCjBBFmBBCjBBCOBCMBmBlGBCGGD4LBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBDfBEZBH1CBDFBD-TBCbBE4CBIVBKXBKTBNMBCCBCBBN9CBDJBHJBHNBCKBH4CBIqBBGlCBLeBCLBFLBFEEBoBBDEBMrBBFZBHKBE9BBDgCBCcBDKBHJBHNBDtBBDLBVsCBClFBJ7BBEOBE9BBGqBBDKBJqBBG1QBDFBDlBBDFBDHBCGCBdBD0BBCOBCNBDFBCSBDCBCIBSXBJuBBSBBDaBCMBEhBBPgBBQrEBF5UBXKBWz4BBD9LBGsBBCGGD3BBIBBPXBKGBCGBCGBCGBCGBCGBCGBCGBC9DBjBZBC4CBN1GBbPBC+BBC1CBDmDBGqBBC9CBC1CBKvBBCszcBE2BBK7KBV3FBJ8GBV7BBEJBH3BBJlCBJLBHzDBMdBEtCBCKBFgBBC2BBKNBDJBDmDBZbBLFBDFBDFBKGBCGBC7BBF9DBDJBHj9KBNWBFwBBloItLBDpDBnBGBNEBGZBCEBCCCBCCBCCBoUBhBpBBHyBBCSBCDBFEBCmEBF9FBEFBDFBDFBDCBEGBCGBOBBDLBCZBCSBCBBCOBDNBjB6DBGCBFsBBE3CBCMBEwBwBBsBBjEcBEwBBQbBFjBBKdBGqBBGdBCkBBFNBrB9EBDJBHjBBFjBBFnBBJzBBMLBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBCnCBJIBxBSBCBBGgBBEaBGaBnB3BBFTBDxBBCBBGHBCCBCcBDCBFJBIIBI-BBhBmBBFLBK1BBEcBDaBGZBIDBNGBxCoCB4ByBBOyBBItBBJJBHlBBEcBJBBxGeBCpBBCCBDBBRFBJIBiBtBBJpBBXZBnBbBVWBKtCBFjBBK9BBCEBOYBIJBH0BBCRBJmBBK-CBCTBMRBCuBB-BGBCCCBCBCOBCKBH6BBGJBHDBCHBDBBDVBCGBCBBCEBCJBDBBDCBDHHGGBDGBEEBMJBCDDClBBCJBCDDCDBCJBCBBJBBe7CBCEBfnCBJJBnF1BBDlBBjBkCBMJBHMBU5BBHJBHTBdaBDOBFWB6F7BBlDyCBNHBDDDBGBCBBCdBCBBDLBKJBnCHBDtBBDKBcnCBJyCBOoCBIJB3CHB5ChBBPJBHIBCsBBCNBLcBEfBDVBCNBqCGBCBBCrBBECCBCCBHBJJBHFBCBBCkBBCBBCFBIJBHrBBFJB3HYBIQBCoBBEcB2CQQBwBBO6cBnDuDBCEBMjGBtyCiDBOvhBBRVBL68DBGmSB61G5BBn2B4RBIeBCJBFwCBCJBHdBDFBLlCBLJBCGBCUBGSBxN5BBnG6CBGYBDYBtBqCBF4BBIQBhCEBMGBK1mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBDDBh7D8HBEzNBHWBQQBQtBBDWBKzDB9B1HBLmBBDpCBJvDBWlCB7DTBNTBN2CBKYBoE0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBD9VBQEBCOBxiBeBHFB2GGBCQBDGBCBBCEBG9BBiBxDxDBrBBENBDJBFBBhKeBS5BBGxOxOBoBB3GqBBFhGhGBdBCVBJBBhHGBCDBCBBCOBCkGBDPBqBrCBFJBFBByYjCBtC8BBjGDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBBvIrBBFjDBNOBDOBCOBCkBBLtFB5BcBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBCmDBmgB-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIBnkzVvHB",false))),this._Print}static CATEGORIES=new PB({C:()=>new a(l("AfBgDgBBOrWrWBHHBCBICCVuMuMnBBBzBBBE4B4BBGBcDBHQBXhGhGxBBB8BBBmDNB8BBByBBBQddBCCMEBhBGBsCiFiFJBBDBBXIICCBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBPMMBEB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKMMBDBbEByBPBDBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBjoIBvLBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCB-FCBHBBHBBHBBECBIIIBLBDBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIB-BGGBLBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMBxhBPBXJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBF-6DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBrCHBxDUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBNDBLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIlkzVBxHvw-FB",false)),Cc:()=>new a(l("AfgDgB",true)),Cf:()=>new a(l("tFzqBzqBBEBXhGhGyBhMhMBxCxCs5D9-B9-BBDBbEByBEBCJBw03B6H6HBBBimEQQj7IPBhjiBDBwmFHBn0rYffB+CB",false)),Cn:()=>new a(l("4bBBHDBICCVuMuMnBBBzBBBE4B4BBGBcDBHKBvI9B9BBmDmDBMB8BBByBBBQddBCCMEBjBEBuHJJBDDBXXICCBBBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBbFB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKmDmDNBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBDBvzIBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCC-FCBHBBHBBHBBECBIIIBIBGBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIBlCJBCBBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMB3iBJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBJ76DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBjGUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBNDBLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIm8yVBCdBhD-DBxHvw-BB---BBB---BBB",false)),Co:()=>new a(l("gg4B-nGh4hc9--BD9--B",true)),Cs:()=>new a(l("gg2B--B",true)),L:()=>new a(l("hCZBHZBwBLLFGGBVBCeBCpOBFLBPEBICCiEEBCBBDDBCHHCCBCCCBSBCyCBCqEBJlFBClBBDHHBnBBoCaBFDBuBqBBkBBBCiDBCQQBIIBLLBBBDRRCdBe4CBMZZBfBKBBFGGBUBFKKEYYBXBIKBGXBCGBRpBB7B1BBETTIJBQPBFHBDBBDVBCGBCEEBCBERROBBCCBPBBLJJBEBFBBDVBCGBCBBCBBCBBgBDBCUUBBBRIBCCBCVBCGBCBBCEBETTQBBYMMBGBDBBDVBCGBCBBCEBEffBCCBBBQSSCFBECBCDBEBBCCCBEEBEEBBBELBX1B1BBGBCCBCWBCPBEbbBBBCBBDBBfFFBGBCCBCWBCJBCEBEffBBBCBBQBBSIBCCBCoBBDRRGCBJCBZFBGRBEXBCIBCDDBFB7BvBBCBBNGB7BBBCCCBDBCXBCCCBIBCBBKDDBDBCWWBCBhBgCgCBGBCjBBcEB0DqBBVRRBEBFDBEEEBIIBBBFMBNSSBkBBCGGDqBBCsKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPBR1CBDFBErTBDQBCZBGqCBHHBIRBOSBPRBPMBCCBQzBBkBFFkC4CBIEBDhBBCGGBkCBLeByBdBDEBMrBBFZB3BWBK0BBzC+C+CBtBBSHB3BdBOBBLrBBbjBBqBCBLjBBDKBGqBBDCBqBDBCFBCBBEGGB+FBhC1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGB1DOORMBmDFFDJBCEEBDBHGCBCBCKBDDBGEBF1B1BB8zC8zCBjHBHDBEBBNlBBCGGD3BBIRRBVBKGBCGBCGBCGBCGBCGBCGBCGBxC2O2OBrBrBBDBGBBF1CBHCBC5CBCDBGqBBC9CBSfBxBPBhQ-tGBhCs0VBkCtBBDsIBEPBLBBVuBBReBDlCByBIBDmDBDxCBVQBCCBCDBCWBezBBPxBB-BFBECCBMMBaBLWBacBIuBBdRRBDBCJBLEBCoBBYCBCHBVWBEEEBwBBCEEBDDBDBDCCZCBDKBICBNFBDFBDFBKGBCGBCqBBCNBHyDBej9KBNWBFwBBloItLBDpDBnBGBNEBGCCBIBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBlBZBHZBM4CBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmMcBEwBBwBfBOTBCHBHlBBLdBDjBBFHBxB9EBTjBBFjBBFnBBJzBBNKBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCQQBCBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4ByBBOyBBOjBBnBbBKWB7HpBBHBBRFB5BcBLJJBUBrBRBvBUBcWBN0BB6BBBDOOBrBBhBYBbjBBeDDJiBBENNBuBBPDBWCCkBRBCYBUBBgCGBCCCBCBCOBCJBIuBBnBHBDBBDVBCGBCBBCEBETTNEBfJBCDDClBBCaaCtBtBBzBBTDBVCBfvBBVBBC5F5FBtBBqBDBlBvBBV8B8BBpBBOoCoCBZBmBGB6FrBB1D-BBgBHBDDDBGBCBBCXBQCC-CHBDmBBRCCdLLBmBBIWWMtBBUTTBnCBoGgBBgBIBCkBBSyByBBcBxDGBCBBClBBWaaBEBCBBCfBPYYBqBBlISBQCCBLBChBB9DwCwCB4cBnHjGBtyCgDBQvhBBSFBa68DBGmSB61GdBj3B4RBIeBSuCBSdBTvBBRDBgBUBGSBxNsBB0G-BBhBYBDYBtBqCBGjCjCBLBhCBBCPPBNNB0mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBn7F0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BeBHFBmI9BBzEsBBLGBRiKiKBcBTrBBlPbBlHdBDwGwGBdBCCBCBBCGBDEBKBBhHGBCDBCBBCOBCkGB8BjCBI1lB1lBBCBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQBlqE-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB",false)),LC:()=>new a(l("hCZBHZB7BLLBVBCeBCiGBCDBFvGBDZBhGDBDBBECBCHHCCBCCCBSBCyCBCqEBJlFBClBBKoBB44ClBBCGGDqBBDCBhV1CBDFBjkCKBGqBBDCBhCrBBgCMBChBBmD1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGBmIFFDJBCEEBDBHGCBCBCFBFDDBCBGEBF1B1BB8zC8zCB6DBDmDBHDBEBBNlBBCGGzoetBBTbBnEtCBCWBEDBCsCBZBBE2Z2ZBpBBGIBIvCBh6TGBNEBqgBZBHZBmlBvCBhDjBBFjBB1DKBCOBCGBCBBCKBCOBCGBCBBk2ByBBOyBB+CVBLVB74C-BBhrV-BBhBYBDYBtpZ0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BJBCTBHFB2uCjCB",false)),Ll:()=>new a(l("hDZB7BqBqBBWBCHBC2BCBQCBuBCDECBBBDCCDEEBFFDEEBBBDDDCCCDCCBCCDEECDDBDDBBBHGDCOCBSCBDDCEEC4BCBFBDDDBCCFICBjCBDZBiGCCEEEBBBTccBhBBCBBECBCWCBDBCGDB0B0BBuBBCgBCK0BCDMCBgDCxBoBBo6CqBBDCB5XFBjkCIBC2D2DBqBBgCMBChBBnD0ECBHBCgDCBHBJFBLHBJHBJFBLHBJHBJNBDHBJHBJHBJEBCBBHEEBBBCBBJDBDBBJHBLCBCBBzIEEBEEcKFDBBJDBF2B2Bs1CvBBCEEBGCFCCBCCBEBGiDCBIICFFNlBBCGG0oesBCUaCoEMCBBBC+BCBGBCCCDICFCCDCCBBBCSCGGGCMCFCCDOCbEE2ZqBBGIBIvCBh6TGBNEBqhBZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBnqZZBbGBCRBbZBbDBCCCBFBCKBbZBbZBbZBbZBbZBbZBbZBbZBbbBdYBCFBbYBCFBbYBCFBbYBCFBbYBCFBC15B15BBIBCTBHFB4vChBB",false)),Lm:()=>new a(l("wVRBFLBPEBICCmEGG-OnHnHlFBBuIBBFgBgBKEEhFoFoF1mBgEgE2R72B72BsDkTkTxOFBvF+BBOjBjBBjBByVOORMBg-CBByHgGgG2OsBsBBDBGiDiDB+C+CBBB34bjnBjnBBEBvIzDzDdBB6DIBxCYYpDDBEBB2OXXqEtDtDWBBoDDBKngVngVuBBBh-BFBCpBBCIB0sBhBhB2K04D04DnrTDB9PCBpBBBnRMBhCBBCPPB9-P9-PBCBCGBCBByhM9BBqGGBud0Q0QsSAB",false)),Lo:()=>new a(l("qFQQhIFFBCBxGBB7ZaBFDBuBfBCJBkBBBCiDBCZZBLLBBBDRRCdBe4CBMZZBfBWVBrBYBIKBGXBCGBRoBB8B1BBETTIJBROBFHBDBBDVBCGBCEEBCBERROBBCCBPBBLJJBEBFBBDVBCGBCBBCBBCBBgBDBCUUBBBRIBCCBCVBCGBCBBCEBETTQBBYMMBGBDBBDVBCGBCBBCEBEffBCCBBBQSSCFBECBCDBEBBCCCBEEBEEBBBELBX1B1BBGBCCBCWBCPBEbbBBBCBBDBBfFFBGBCCBCWBCJBCEBEffBBBCBBQBBSIBCCBCoBBDRRGCBJCBZFBGRBEXBCIBCDDBFB7BvBBCBBNFB8BBBCCCBDBCXBCCCBIBCBBKDDBDBYDBhBgCgCBGBCjBBcEB0DqBBVRRBEBFDBEEEBIIBBBFMBNyDyDBnKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPByDrTBDQBCZBGqCBHHBIRBOSBPRBPMBCCBQzBBpBkCkCBhBBC0BBIEBDhBBCGGBkCBLeByBdBDEBMrBBFZB3BWBK0BBxFuBBSHB3BdBOBBLrBBbjBBqBCBLdByDDBCFBCBBE7hB7hBBCB4-C3BBZWBKGBCGBCGBCGBCGBCGBCGBCGBoR2B2BF1CBJCCB4CBFGGBpBBC9CBSfBxBPBhQ-tGBhC0wUBC2jBBkCnBBJrIBFPBLBBjCyByBBkCBqFoDoDEGBCCBCDBCWBezBBPxBB-BFBECCBMMBaBLWBacBIuBBuBEBDIBLEBCoBBYCBCHBVPBCFBEEEBwBBCEEBDDBDBDCCZBBEKBIPPBEBDFBDFBKGBCGByEiBBej9KBNWBFwBBloItLBDpDBkCCCBIBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBqDJBCsBBDeBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmMcBEwBBwBfBOTBCHBHlBBLdBDjBBFHBhEtCBjDnBBJzBB9CzBBN2JBKVBLHB5EFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCQQBCBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4FjBBnBDBCxJxJBoBBHBBRCBCBB5BcBLJJBUBrBRBvBUBcWBN0BB6BBBDOOBrBBhBYBbjBBeDDJiBBENNBuBBPDBWCCkBRBCYBUBBgCGBCCCBCBCOBCJBIuBBnBHBDBBDVBCGBCBBCEBETTNEBfJBCDDClBBCaaCtBtBBzBBTDBVCBfvBBVBBC5F5FBtBBqBDBlBvBBV8B8BBpBBOoCoCBZBmBGB6FrBB0GHBDDDBGBCBBCXBQCC-CHBDmBBRCCdLLBmBBIWWMtBBUTTBnCBoGgBBgBIBCkBBSyByBBcBxDGBCBBClBBWaaBEBCBBCfBPYYBnBBCBBlISBQCCBLBChBB9DwCwCB4cBnHjGBtyCgDBQvhBBSFBa68DBGmSB61GdBj3B4RBIeBSuCBSdBTvBB0BUBGSB0NnBB2MqCBGwFwFB0mHBqBfBiDyDBuwIiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBxzI2P2PBrBBiBiKiKBcBTrBBlPaBmHdBDwGwGBdBCCBCBBCGBDEBKiHiHBFBCDBCBBCOBCkGB8pBDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQBlqE-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB",false)),Lt:()=>new a(l("lOGDnB2sH2sHBGBJHBJHBNQQwBAB",false)),Lu:()=>new a(l("hCZBmDWBCGBiB2BCDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIJDCMCDQCDDDCCBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBDDBBBEWCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBpCDBNDBNDBNEBMDBnIFFECBDCBDEEBDBHGCBCBDDBLBBG+B+B9zCvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoqZZBbZBbZBbCCBGDBDDBCBCHBbZBbBBCDBDHBCGBcBBCDBCEBCEEBFBcZBbZBbZBbZBbZBbZBfYBiBYBiBYBiBYBiBYBiB2pE2pEBgBB",false)),M:()=>new a(l("gYvDB0IGBoIsBBCCCBCCBCCpCKBxBUBRmDmDBFBDFBDBBCDBkBffBZB8CKB7BIBKZZBCBCIBCCBCEBsBCB8BIBrBXBCgBB3BCBCRBCGBLBBeCB5BCCBFBDBBDCBKLLBbbDCB5BCCBDBFBBDCBEffBEEMCB5BCCBGBCCBCCBVBBXFBCCB5BCCBFBDBBDCBICBLBBf8B8BBDBECBCDBKpBpBBDB4BCCBFBCCBCDBIBBMBBeCB5BCCBFBCCBCDBIBBMBBQNNBCB4BBBCGBCCBCDBKLLBeeBBBnCFFBEBCCCBGBTBB+BDDBFBNHBjDDDBHBMGBqCBBcECFBByBTBCBBGKBCjBBKlDlDBSBYDBFCBCCBDGBEDBOLBCLLBCBgWCBzdDBdCBeBBfBBhCfBKuBuBBBBC2D2DBjBjB3DLBFLB8GEB6BJBCcBDxBxBBsBBDLBVEBwBQBnBIBNCBfMB5BNBxBTB5ECBCUBFHHDCBnG-BBxWgBB--CCBuEhDhDBeBrRFBqDBB1udDBCJBhBBBxCBBxIEEFYYBDBF0C0CBzBzBBQBbRBOnBnBBGBaMBtBDBwBNBlBkCkCBMBNJJBuBuBBBBzBCCBBBDBBGBBCqBqBBDBGBBtHHBCBBx5TiXiXBOBRPBuejHjH2EEBn0BCBCBBGDBpBCBFmFmFB+R+RBCBiCEB+JBBuCFBnCKByBDB7DCB2BOBqBDDBLLBCBuBKBI+B+BBBBlBNBRBBtBNNBBBxBNBJDBCBB9CLBHDD+ELBWDB4BBBCGBDBBDCBKLLBDDBFBEEBkCIBCDDCDBCEBCPPBzCzCBQBYyCyCBSBsHGBDIBcBBzCQBrDMBmDOBhIOB2HFBCBBDDBCCCBuEuEBFBDGBEddBIBpBGBCDBJKKBJBvBPBnGHBoGHBCHBzCVBCNB7DFBECCBCCBFBCjCjCBDBCBBCEB8KDBKBBCxBxBBFBEEBYmnFmnFHOBpmLRBhuCEB8BGB5gBCCB1BBIDByCMMBslTslTBizEizEBsBBDWB-QEBEFBJHBDGBfDB1ECB89B2BBFxBBJPPXEBCOBxqBGBCQBDGBCBBCEBlDhFhFBFB4L+B+BBCB9PDB-HBB0HDDIBBG7O7OBFBuDGB29lYvHB",false)),Mc:()=>new a(l("joC4B4BDCBJDBCBBzBBB7BCBHBBDBBLsBsB7BCBjC7B7BBBBJCCB2B2BB7B7BCHHBDDBLLnDBBCBBECBCCBLqBqBBBB+BDB+BBB7BCCBDBDBBCBBKBBdPPB7B7BBBBGCBCCBLrBrBBsCsCBBBHHBTBBrKBBgCsFsFBFFHDDBaaBLLBBBDGBWBBDFBDLLBBB5zBffiEIIBGBCBB7KDBDCBFBBCFBhHBB7BCCKCCBJJBEByExBxBGCCBDBCBB+BffFBBD9B9BDCBCEEBxBxBBGBJBBsFWW35EBB0-dBBD5C5CBzBzBBOBvEBBwBxBxBBFFBDDBBBvDBBDBBZuBuBCuDuDDBBGuHuHBCCBCCBCC0gZCCgEuBuBBBBFBB0DZZB8B8BxBCBKBBO+C+CBBBEBBCrFrFBBBgBBB7BBBCDBDBBDCBKLLB1C1CBBBIDDCDBCBBCmDmDBBBJBBErDrDBBBHCCBCBDuHuHBBBHDBDyDyDBBBJBBCuDuDCBBHoDoDCBBFmImIBBBK4H4HBEBCBBFDDCvEvEBBBJDBF1C1CeBB-BqGqGECCoGPPrDIID2G2GBDBFBBC-K-KBNNxBBBJBBCpvQpvQBBBlxD2BBpDBB0rYBBHFB",false)),Me:()=>new a(l("okBBB1xF-wB-wBBCBCCBsshBCB",false)),Mn:()=>new a(l("gYvDB0IEBqIsBBCCCBCCBCCpCKBxBUBRmDmDBFBDFBDBBCDBkBffBZB8CKB7BIBKZZBCBCIBCCBCEBsBCB8BIBrBXBCfB4BCCFHBFEEBFBLBBe7B7BFDBJVVBbbDBB6BFFBFFBDDBBBEffBEEMBB6BFFBDBCBBFVVBXXBEBC7B7BDCCBCBJIIBMMBff+BNNzBEE4BCCBBBGCBCDBIBBMBBe7B7BDHHGBBVBBdBB6BBBFDBJVVBeepCIIBBBC7C7CDGBNHBjDDDBHBMGBqCBBcEC4BNBCEBCBBGKBCjBBKnDnDBCBCFBCBBDBBaBBFCBRDBODDBHHQgWgWBBBzdCBeBBfBBfBBhCBBCGBJDDBJBKuBuBBBBC2D2DBjBjB3DCBFBBKHHBBB8GBBD7B7BCGBCCCDHBHJBDxBxBBMBCeBDLBVDBxBCCBDBCGGpBIBNBBhBDBDBBCCB5BCCBEECCB7BHBDBB5ECBCMBCGBFHHEBBnG-BBxWMBFEEBKB--CCBuEhDhDBeBrRDBsDBB1udFFBIBhBBBxCBBxIEEFaaBGG4EBBbRBOnBnBBGBaKBvBCBxBDDBCBDBBoBkCkCBEBDBBDBBNJJwB0B0BCCBDBBGBBCrBrBBJJvHDDFx5Tx5TiXPBRPBuejHjH2EEBn0BCBCBBGDBpBCBFmFmFB+R+RBCBiCEB+JBBuCFBnCKByBDB8D3B3BBNBqBDDBLLBBByBDBDBBI+B+BBBBlBEBCHB-BNNB1B1BBHBLDBDgDgDBBBDCCBHHD+E+EEHBWBB6BBBEmBmBBFBEEBnCFBOECPBB2CHBDCBCYY1CFBCFFBCCBvHvHBCBHBBCBBcBB2CHBDCCBrDrDCDDBEBCmDmDCDDBCBCEBkIIBCBBhIBBCFFxEDBDBBFhBhBBIBpBFBDDBJKKBEBDCBvBMBCBBnGCCBBBCqGqGBFBCFBCzCzCBUBDGBCBBCBB7DFBECCBCCBFBCpCpCBEEC8K8KBMMB1B1BBDBGCCYmnFmnFHOBpmLLBECBhuCEB8BGB5gBgCgCBCByC5lT5lTBizEizEBsBBDWBhRCBSHBDGBfDB1ECB89B2BBFxBBJPPXEBCOBxqBGBCQBDGBCBBCEBlDhFhFBFB4L+B+BBCB9PDB-HBB0HDDIBBG7O7OBFBuDGB29lYvHB",false)),N:()=>new a(l("wBJB5DBBGDDBBBitBJBnEJBnGJB9MJB3DJBFFBtDJB3DJB3DJBDFBvDMB0DJBJGBoDJBpDGBISBuDJBhDJB3DJBnCTBtIJBnCJBwWTBybCBwHJBHJBXJBtJJBhEKBmFJBHJB3FJB3CJBnEJBHJB3gBEEBEBHJBnGyBBDEB3W7BBvCVB3TdBqrBqYqYaIBPCB4KDBrEJBfHBCOBhBJBoBOBh7cJB9FJBhKFB7EJBnBJBnGJBXJB3CJB3MJB34UJBuPsBBN4BBSBB2KaBlBDBeJJnEEBrGJBvdHBaGBoBIBsCEBXFBhFBBDPBDtBBhCIB1BBBfCBsCEBpDHBZHBqBGBrKFBxBJBHJB3IeB-EJBrBDBxDGBnEdBhEJB9BJBxEJBITB8HJB3KJB3DJB3LJBnDJBHTBtCLBlNSB+CJB3UJB3CcBkHJBnCJB3BJBnLJBnDUBshBuDBimPJBnpCJB3CJBnEJBCGBvQJBnIWB+KCB6nXJBnuBTBNTBtDYB2iBxBBhqCJBnNJB3PJB4HJBtWIBhEJB4Y6BBCCBCDBtCsBBCOBjeMBk3CJB",false)),Nd:()=>new a(l("wBJnxBJnEJnGJ9MJ3DJ3DJ3DJ3DJ3DJ3DJ3DJ3DJ3DJhDJ3DJnCJ3IJnCJn6BJnBJtJJhEJnFJHJ3FJ3CJnEJHJnuiBJnVJnBJnGJXJ3CJ3MJ34UJnsBJnkCJHJ9YJhEJ9BJxEJ3IJ3KJ3DJ3LJnDJHTtCJnNJnDJ3UJ3CJ3HJnCJ3BJnLJ3uQJnpCJ3CJnEJ3QJ37XJ12CxBhqCJnNJ3PJ4HJ2aJ30EJ",true)),Nl:()=>new a(l("u3FCBwzCiBBDDB-zDaaBHBPCBs1dJBxyW0BBtOJJnEEBrhIuDBm8SCB",false)),No:()=>new a(l("yFBBGDDBBB2pCFB5LFB5DCBmEGB6GGBSIByNJB2hBTB0jBJBhP20B20BEFBHJBnGPBqB3W3WB6BBvCVB3TdBqrB1kB1kBBCBrEJBfHBCOBhBJBoBOBxrdFBymWsBBiCDBSBB2KaBlBDB1pBHBaGBoBIBsCEBXFBhFBBDPBDtBBhCIB1BBBfCBsCEBpDHBZHBqBGBrKFBhLeB-EJBrBDBxDGBnETB8LTBmqBBBvNIBobSB0aUBn8SGB-YWBqhZTBNTBtDYBvqFIBid6BBCCBCDBtCsBBCOBjeMB",false)),P:()=>new a(l("hBCBCFBCDBLBBEBBbCBCccCkBkBGEELBBEEE-VJJzOFBqBBB0BCCDDDtBBBVBBCBBOCCBBBrCDBnDsBsBBMBqHCB3BOBgBmImIBLLtE5D5D6DnMnMNwLwL7CLLBpFpFBNBCmBmBBCBoCrCrCBDBFBBwDFBsFlTlTBHB4EuTuTtBBBvCCBoCBB+ECBCCBmBKB6JBB5GBBhEGBCFBhFBBLGBdCB9DDB8BEB-BBBhCHBM9Z9ZBWBJTBCMBCLBfBBPBB6TDBeBB+hBNBwCBBgBJB0MVBgCDBhBBB8XDBCBBxDwEwEBtBBCfBDLBkNCBFJBDLBRNNjD7C7CjgdBBuICBkDLL0DFB9LDB3CBBpBCBCyByBBwBwBiDMBRBB9DDB-DBBRBB6HzqUzqUBxGxGBIBXiBBCNBCFFCBB2ECBCFBCDBLBBEBBbCBCccCCCBFB7MCB9UxBxB-MoXoXoGgBgBxIIBnBxDxDBFBjCGB6CDByO-J-JjBlElEBDBtBDB+FGBuDBBCDB-DDBxBBBwCDBFOOCCB5CFBsDrJrJBCCBzDzDBDBLBBCpDpD7HWBqDCBdMBtCjEjEBBB9HpIpIBBB8E9C9CBGB0CCBCEB+CJB4GgDgDBDBrBBBmUBBrCMBwFxjBxjBBDB97CBB8zOBBmEiCiCBDBJpRpRBBBoJDBoK9lT9lTovHEB07C-a-aBAB",false)),Pc:()=>new a(l("-Cg-Hg-HBUU-u3BBBZCBwHAB",false)),Pd:()=>new a(l("tB9qB9qB0BiyDiyDmgBqgCqgCBEBiwDDDgBBBFdd-NUUwDxszBxszBBmBmBLqFqFhzD-J-J",false)),Pe:()=>new a(l("pB0B0BgB+1D+1DC-6B-6BqtC4B4BQ7T7TCff-hBMCxChBhBCGC1MUChCCCiBmhBmhBCECtBGCtNICEGCDBB-ozB6G6GeOCESSCCCrF0B0BgBGD",false)),Pf:()=>new a(l("7F+6H+6HEddpuDCCFDDQEE",false)),Pi:()=>new a(l("rFt7Ht7HDBBDaapuDCCFDDQEE",false)),Po:()=>new a(l("hBCBCCBDECBLLBEEBcclCGGPBBI-V-VJzOzOBEBqB3B3BDDDtBBBVBBCBBOCCBBBrCDBnDsBsBBMBqHCB3BOBgBmImIBLLtE5D5D6DnMnMNwLwL7CLLBpFpFBNBCxDxDrCEBFBBwDFBsFlTlTBHBmY9D9DBBBoCBB+ECBCCBmBFBCDB6JBB5GBBhEGBCFBhFBBLGBdCB9DDB8BEB-BBBhCHBMjajaBJJBGBJIBDDBDCBEKBCCCBIB7kDDBCBBxDwEwEBFFBBBDDDBHBCBBCDDBLLBDBCJBDDBCCCBLBDCBtNCB6B+F+FjgdBBuICBkDLL0DFB9LDB3CBBpBCBCyByBBwBwBiDMBRBB9DDB-DBBRBB6HlxUlxUBFBDXXVBBDDBECBCDBICBHCCB2E2EBBBCCBDECBLLBEEBcclBDDB7M7MBBB9UxBxB-MoXoXoGgBgBxIIBnBxDxDBFBjCGB6CDB0ZlElEBDBtBDB+FGBuDBBCDB-DDBxBBBwCDBFOOCCB5CFBsDrJrJBCCBzDzDBDBLBBCpDpD7HWBqDCBdMBtCjEjEBBB9HpIpIBBB8E9C9CBGB0CCBCEB+CJB4GgDgDBDBrBBBmUBBrCMBwFxjBxjBBDB97CBB8zOBBmEiCiCBDBJpRpRBBBoJDBoK9lT9lTovHEB07C-a-aBAB",false)),Ps:()=>new a(l("oBzBzBgB-1D-1DC-6B-6B-rCEEnB4B4BQ7T7TCff-hBMCxChBhBCGC1MUChCCCiBmhBmhBCECaTTCECtNICEGCDipzBipzB4GeeCMCESSCCCrFzBzBgBEEDAB",false)),S:()=>new a(l("kBHHRCBgBCCcCCkBEBCBBDCCBCBDEEfgBgBrODBNNBGGBCCCBPB2DPPBxDxDsErIrIBBB3DCBDDDBvGvGLUUB4H4HIBBpEqLqLBHHB2H2H-DjEjEBGBlEwGwGqBmGmGiGCBQCCBBBDFBVECmEHBCFBCBBGDBmGBBxXJB0WuLuLlL+E+EBgBBiLJBKIBhiBCCBBBMCBOCBOCBOBBmCOOoBCBOCBUhBB-BBBCDBCBBLCCBBBGFBCECFMMBFFBDBGDBC7B7BBFFB2LBFcBD+HBXKByCtCBXnTBtBwBBDeBLyMBX+BBFfBD1LBDpEBmHFBmLBBvBZBC4CBN1GBbPBFOOBNNWBBHBB8CBB0HBBFJBhBlBBKRRBdBMdBJQQBeBLmBBQ-JBhuG-BBx0V2BB6RWBKBBoDBB+EDBLDB+RCBiHPPB+9T+9TpEgBBuLPBhCBB3BHBtBDBjDCCBBBD7E7EHRRBBBgBCCcCCiEGBCGBOBB6JIB6BQBDCBCMBEwBwBBrBB7zBBBwSmWmWBiKiKBGBnjC2kC2kCBbBr6SDBG3qU3qUk7DvHBLCBEzNBHWBQQBgDzDB9B1HBLmBBD7BBGCBXBBIdBF8BBWhCBE7F7FB1CBrbaagBaagBaagBaagBaa9B-PB4BDBzBHBCNBCBBp2BwNwNttCEE+DiOiOBvIvIBqBBFjDBNOBDOBCOBCkBBYgFB5BcBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBC7CBLAB",false)),Sc:()=>new a(l("kB+D+DBCBqnB8D8DzPBBzPBBI2H2HoImSmS8sClmClmCBgBB37hBkuVkuVtD7E7E8GBBEBB3-HDB-4wBxtCxtC",false)),Sk:()=>new a(l("+CCCoCHHFEEqQDBNNBGGBCCCBPB2DPPBjoBjoB15FCCBBBMCBOCBOCBOBB9kEBBkzdWBKBBoDBBxePPBniUniUBPB8bCCjF4g9B4g9BBDB",false)),Sm:()=>new a(l("rBRRBBB+BCCuBFFmBgBgB-XwQwQBBB8xGOOoBCBOCBsEoBoBBDBHlClCBDBGBBFGDIgBgBBDDCgBgBBqIBhBBB7CffBXBpBFB2OKK3BHBwDxKxKBDBDeBLPBhIiEBX+BBFfBDhIBxBUBDFB9+zB5Z5ZCCBlFRRBBB+BCCkEHHBCBitDBBhrwBx+Bx+BagBgBagBgBagBgBagBgBat5Ft5FB-uC-uCBHB",false)),So:()=>new a(l("mFDDFCCyerIrIBgEgEBvGvGLUUB4H4HkQ2L2LjEFBClElEwGqBqBoMCBQCCBBBDFBVECmEHBCFBCBBGDBmGBBxXJB0WzWzW+EhBBiLJBKIBksBBBCDBCBBLCCBHHBEBCECFMMBPPCBBC7B7BBKKBDBDDBCBBCBBCGBCeBDBBCCCBdBtIHBFTBDGBDwCBCdBanBBHnCBXKByCtCBX2FBCIBC1BBJuDBC3HBtBrBBhC-HBhQvBBWBBHmBBDpEBmHFBmLBBvBZBC4CBN1GBbPBFOOBNNWBBHBBxKBBFJBhBlBBKRRBdBMdBJQQBeBLmBBQ-JBhuG-BBx0V2BBibDBLBBC+R+RBBBqqUPBuLPBhCBB3BHBuBCBlPEEFBBOBB6JIB6BQBDCBCMBEwBwBBrBB7zBBBwSpgBpgBBGBnjC2kC2kCBGBFQBr6SDBG3qU3qUk7DvHBLCBEzNBHWBQPBhDzDB9B1HBLmBBD7BBGCBXBBIdBF8BBWhCBE7F7FB1CBqlB-PB4BDBzBHBCNBCBBp2B96C96CiEyWyWBqBBFjDBNOBDOBCOBCkBBYgFB5BcBOrBBFIBIBBPFB7E6HBG4WBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBB-B3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBC7CBLAB",false)),Z:()=>new a(l("gBgEgEgvFgsCgsCBJBeBBGwBwBh9DAB",false)),Zl:()=>new a(l("ohIA",true)),Zp:()=>new a(l("phIA",true)),Zs:()=>new a(l("gBgEgEgvFgsCgsCBJBlBwBwBh9DAB",false)),ASCII_Hex_Digit:()=>new a(l("wBJIFbF",true)),Alphabetic:()=>new a(l("hCZBHZBwBLLFGGBVBCeBCpOBFLBPEBICC3CeeBQBCBBDDBCHHCCBCCCBSBCyCBCqEBJlFBClBBDHHBnBBoBNBCCCBCCBCCJaBFDBeKBG3BBCGBPlDBCHBFHBFCBLCBDRRBuBBOkDBZgBBKBBFGGBWBDSBUYBIKBGXBCGBIJJBoBBLLBEGBHrCBCPBCCBFOBOSBCHBDBBDVBCGBCEEBCBEHBDBBDBBCJJFBBCEBNBBLFFBBBCFBFBBDVBCGBCBBCBBCBBFEBFBBDBBFIIBCBCSSBEBMCBCIBCCBCVBCGBCBBCEBEIBCCBCBBEQQBCBWDBFCBCHBDBBDVBCGBCBBCEBEHBDBBDBBKBBFBBCEBORRBCCBEBECBCDBEBBCCCBEEBEEBBBELBFEBECBCCBEHHpBMBCCBCWBCPBEHBCCBCCBJBBCCBCBBDDBdDBCHBCCBCWBCJBCEBEHBCCBCCBJBBGCBCDBOCBNMBCCBCoBBDHBCCBCCBCGGBCBIEBXFBCCBCRBEXBCIBCDDBFBJFBCCCBGBTBBO5BBGGBH0B0BBECBDBCXBCCCBRBCCBDEBCHHPDBhBgCgCBGBCjBBFSBFPBCjBBkC2BBCDDBDBR-BBLDBDlBBCGGDqBBCsKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPBR1CBDFBErTBDQBCZBGqCBEKBITBMUBNTBNMBCCBCBBNzBBDSBPFFkC4CBIqBBGlCBLeBCLBFIBYdBDEBMrBBFZB3BbBF+BBDTBzBYYBMMBBByBzBBCOBCHB0BpBBDDBLrBBCKBP2BBXCBLjBBDKBGqBBDCBqBDBCFBCBBEGGB+FBUhBBM1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGB1DOORMBmDFFDJBCEEBDBHGCBCBCKBDDBGEBFSSBnBBuZzBB34BkHBHDBEBBNlBBCGGD3BBIRRBVBKGBCGBCGBCGBCGBCGBCGBCGBCfBwB2O2OBBBaIBIEBDEBF1CBHCBC5CBCDBGqBBC9CBSfBxBPBhQ-tGBhCs0VBkCtBBDsIBEPBLBBVuBBGHBEwDBoBIBDmDBDxCBVUBCgBBZzBBNjCBCtBtBBEBECCBBBLgBBGiBBOcBEyBBCLBQRRBOBLEBC2BBKNBTWBEkCBCCCZCBDPBDDBMFBDFBDFBKGBCGBCqBBCNBH6DBWj9KBNWBFwBBloItLBDpDBnBGBNEBGLBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBlBZBHZBM4CBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmC0BBsIcBEwBBwBfBOdBGqBBGdBDjBBFHBCEBrB9EBTjBBFjBBFnBBJzBBNKBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCDBCBBGHBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4ByBBOyBBOnBBjBbBEGGBVB7HpBBCBBEBBRFBzBCBEcBLJJBUBrBRBvBUBcWBKlCBsBEBL4BBKOOBXBYyBBSDBJiBBEKKB+BBCDBKBBLCCkBRBChBBDHHBCB-BGBCCCBCBCOBCJBI4BBYDBCHBDBBDVBCGBCBBCEBEHBDBBDBBEHHGGBdJBCDDClBBCJBCDDCDBCBBECCtBhCBCCBCDBVCBfhCBDBBC5F5FB0BBDGBaFBjB+BBCEE8B1BBDoCoCBZBDNBWGB6F4BBoD-BBgBHBDDDBGBCBBCdBCBBDBBDDB+CHBDtBBDFBCCCBccBxBBDJBSnCBGTTBnCBoDHB5CgBBgBIBCsBBCGBCyByBBcBDVBCNBqCGBCBBCrBBECCBCCBBBCDDBZZBEBCBBCkBBCBBCDBCYYBqBBlIWBKQBCoBBECBwDwCwCB4cBnDuDBSjGBtyCgDBQvhBBSFBa68DBGmSB61GuBBy2B4RBIeBSuCBSdBTvBBRDBgBUBGSBxNsBB0G-BBhBYBDYBtBqCBF4BBIQBhCBBCNNBFBK1mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBFi7Fi7FBzCBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BeBHFB2GGBCQBDGBCBBCEBG9BBiBxDxDBrBBLGBRiKiKBcBTrBBlPbBlHdBDwGwGBdBCVBJBBhHGBCDBCBBCOBCkGB8BjCBEEE1lBDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1TZBHZBHZB3zD-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB",false)),Dash:()=>new a(l("tB9qB9qB0BiyDiyDmgBqgCqgCBEB+BoBoBQnMnMlgDDDgBBBFdd-NUUwDxszBxszBBmBmBLqFqFhzD-J-J",false)),Emoji:()=>new a(l("jBHHGJBwDFFu8HNN5GXX7CFBQBBwLBBNnFnFaKBFCBoGoHoHBLLK7B7BBCBCEBKGDBDDFDDCBBDIEBJJBBBGCCGLBMBBDCCBCCTDDBTTBEBCCCBEEBGGDBBFBBMBBGBBDGGBECBVVBGGBEBCDBDFFDDDBEBCDDCCCHEEHLLBQQDFFCFFBBBCMMBxBxBBBBKeP1LBBwOCBUBB0BFF7mBNN6SCCrrvDrGrGhFBBNBBPDDBIBsCZBCBBYVVDIBWBBvFhBBDvDBDBBCCBDyCBDCBCmIBC+BBMFBCXBIBBDHBNDDBCBDFFBOOBDDJBBKGGBBBNCBJCBDCCFHHEHHB0CBxBlCBGHBDDBEJBECCBEEDJBkHLBF8I8IBtBBCJBC4FBxDMBEKBE4BBCFFBOBDLBFJB",false)),Emoji_Component:()=>new a(l("jBHHGJB0+H2G2Gsp3B3+8B3+8BBYB8PEBxtBDBtzhY-CB",false)),Emoji_Modifier:()=>new a(l("7-8DE",true)),Emoji_Modifier_Base:()=>new a(l("9wJ8G8GRDB4jzD9B9BBBBDDDBBB2DBBDKBWSBEFFBBBCCBICCZqGqGBFFWFFBvFvFBBBEEB0CRRBBBKMMgSDDJHBHKKBIBDCB5B+B+BBCCBCCSCBCMBmHCBrBIB",false)),Emoji_Presentation:()=>new a(l("64IBBuGDBEDDqQBBWBBzBLBsBUUOJJBSSBGGBJJGWWIBBCFFDIIFBBdkBkBCFFBBBC+B+BBBBZPP8aBB0BFFvlxDrGrG-FDDBIBsCZBCZZVDDBDBCCBWBBvFgBBNIBClCBCVBNqBBFEBNQBEEEBlCBCCCB5FBD+BBODBCXBTbbBOO3C0CBxBlCBHEEBBBDDBEDBMBBIIBkHLBF8I8IBtBBCJBC4FBxDMBEKBE4BBCFFBOBDLBFJB",false)),Extended_Pictographic:()=>new a(l("pFFFu8HNN5GXX7CFBQBBwLBBNnFnFaKBFCBoGoHoHBLLK7B7BBCBCEBKGDBDDFDDCBBDIEBJJBBBGCCGLBMBBDCCBCCTDDBTTBEBCCCBEEBGGDBBFBBMBBGBBDGGBECBVVBGGBEBCDBDFFDDDBEBCDDCCCHEEHLLBQQDFFCFFBBBCMMBxBxBBBBKeP1LBBwOCBUBB0BFF7mBNN6SCCrrvDoBoBBCBlDLBQBBQPPBmBmBBIBxDBBNBBPDDBIBU3BBcOBLVVDIBCDBKWBH7FBDvDBDBBCCBDyCBDCBCDBG9HBC+BBMFBCXBIBBDHBNDDBCBDFFBOOBDDJBBKGGBBBNCBJCBDCCFHHEHHB0CBxBlCBGHBDQBECCBEBDMB7GlBBNDB5BHBLFBpBHBfBBNDBDNBKmBBNuBBCJBC4FB5CHBPxEBhI9fB",false)),Hex_Digit:()=>new a(l("wBJIFbFq1-BJIFbF",true)),Lowercase:()=>new a(l("hDZBwBLLFlBlBBWBCHBC2BCBQCBuBCDECBBBDCCDEEBFFDEEBBBDDDCCCDCCBCCDEECDDBDDBBBHGDCOCBSCBDDCEEC4BCBFBDDDBCCFICBjCBDiBBIBBfEBhDsBsBCEEDDBTccBhBBCBBECBCWCBDBCGDB0B0BBuBBCgBCK0BCDMCBgDCxBoBBo6CqBBCDB5XFBjkCIBC2D2DB+FBiC0ECBHBCgDCBHBJFBLHBJHBJFBLHBJHBJNBDHBJHBJHBJEBCBBHEEBBBCBBJDBDBBJHBLCBCBB6DOORMBuDEEBEEcKFDBBJDBFiBiBBOBFsasaBYBn6BvBBCEEBGCFCCBCCBGBEiDCBIICFFNlBBCGG0oesBCUaCBBBmEMCBBBC8BCBIBCCCDICFCCDCCBBBCSCGGGCMCFCCDOCWDBCCCBBB2ZqBBCNBHvCBh6TGBNEBqhBZBumBnBBpEjBB8EKBCOBCGBCBBkODDBBBCpBBCIBmoByBB+DVB75CfBhsVfB8BYBnqZZBbGBCRBbZBbDBCCCBFBCKBbZBbZBbZBbZBbZBbZBbZBbZBbbBdYBCFBbYBCFBbYBCFBbYBCFBbYBCFBC15B15BBIBCTBHFBmI9BB1lChBB",false)),Math:()=>new a(l("rBRRBBBgBeeCuBuBFmBmBgB5W5WBBBDbbBDDBBBwQCBuwGccBBBMEEOPPBCBWEBMEBiCMBFEEBFFBDBTFFDJBCDDBEBHEEBDDBCCBBBCFBENBClClCBWBCFBCBBFBBFfBCHHBPPBqIBJDBVBB7CffBZBCZZMGB+NBBNJBFFBFBBDBBEEBPCCDFBMHBGBB6BCCeDBKCBxK-BBhI-PBxBUBDFB9+zB4Z4ZBEBCjFjFRCBeCCeCCkEHHBCBitDBBhrwBwoBwoBBzCBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBDxBBhwFDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBB-uCIB",false)),Quotation_Mark:()=>new a(l("iBFFkEQQ96HHBaBBowDqOqOBCBOCBixzBDB+FFF7CBB",false)),Terminal_Punctuation:()=>new a(l("hBLLCMMBEE-ZJJiQ6B6BpCPPCCB1FsBsBBJBCsHsHB3B3BBEBCHBgBmImIB1nB1nBBtFtFFFB4JBB2YHBmY9D9DBBBoCBB+ECBEoBoBBCBDBB7JBBjLDBjFBBLBBCCBeCB8FEB-BBBldYYBKKBBBwlDCBzJOOFLLCBBEBBtNBB8ndBBuICBkHEB-LBB3CBBgD4E4EBBB0ECBgERRB6H6HnxUDDB6B6BBBBCDBqFLLCMMBEEiCDD7hBxBxBnkBoGoG3JBB5EFBlCFB6CDB5dEBtBDB+FGBxDDBgECBiEBBHRRB5C5CBDBtDrJrJB2D2DBBBNBBnLDBEOBqDBB6HCBmQCC8HBB4CBBFBB-MCBuBmUmUBrCrCBspBspBBDB6vRBBmEiCiCBBBLqRqRBoJoJBnwTnwTovHDB",false)),Uppercase:()=>new a(l("hCZBmDWBCGBiB2BCDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIJDCMCDQCDDDCCBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBDDBBBEWCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBpCDBNDBNDBNEBMDBnIFFECBDCBDEEBDBHGCBCBDDBLBBGbbBOBUzZzZBYBx5BvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoqZZBbZBbZBbCCBGDBDDBCBCHBbZBbBBCDBDHBCGBcBBCDBCEBCEEBFBcZBbZBbZBbZBbZBbZBfYBiBYBiBYBiBYBiBYBiB2pE2pEBgBBvgCZBHZBHZB",false)),White_Space:()=>new a(l("JEBTlDlDbgvFgvFgsCKBeBBGwBwBh9DAB",false))});static get Upper(){return this.CATEGORIES.get("Lu")}static SCRIPTS=new PB({Adlam:()=>new a(l("go6DrCFJFB",true)),Ahom:()=>new a(l("g4lCaDOFW",true)),Anatolian_Hieroglyphs:()=>new a(l("ggxCmS",true)),Arabic:()=>new a(l("gwBEBCFBCNBCCBCfBCJBMZBCrDBChBBxCvBBxHhBBGqCBCcBxy8BtPBDvEBhBPBxDEBCmEBk7DeBkCFBJIBiBFBh43BDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBB",false)),Armenian:()=>new a(l("xpBlBDxBDCks9BE",true)),Avestan:()=>new a(l("g4iC1BEG",true)),Balinese:()=>new a(l("g4GsCCxB",true)),Bamum:()=>new a(l("g1pB3CpowB4R",true)),Bassa_Vah:()=>new a(l("w26CdDF",true)),Batak:()=>new a(l("g+GzBJD",true)),Bengali:()=>new a(l("gsCDBCHBDBBDVBCGBCEEBCBDIBDBBDDBJFFBCCBDBDYB",false)),Beria_Erfe:()=>new a(l("g17CYDY",true)),Bhaiksuki:()=>new a(l("ggnCICsBCNLc",true)),Bopomofo:()=>new a(l("qXB6wLqBxDf",true)),Brahmi:()=>new a(l("ggkCtCFjBKA",true)),Braille:()=>new a(l("ggK-H",true)),Buginese:()=>new a(l("gwGbDB",true)),Buhid:()=>new a(l("g6FT",true)),Canadian_Aboriginal:()=>new a(l("ggF-TxRlC7tgCP",true)),Carian:()=>new a(l("g1gCwB",true)),Caucasian_Albanian:()=>new a(l("wphCzBMA",true)),Chakma:()=>new a(l("gokC0BCR",true)),Cham:()=>new a(l("gwqB2BKNDJDD",true)),Cherokee:()=>new a(l("g9E1CDFz7lBvC",true)),Chorasmian:()=>new a(l("w9jCb",true)),Common:()=>new a(l("AgCBbFBbuBBCOBCEBYgBgBiOmBBGEBDTB1DKKHCC+THHPEEhB9E9ElQiEiEB6mB6mB2MDBjJwvBwvBBBBoCBBsGBBCumBumBOIIBCBCFBCCBDmYmYBKBD2CBCKBEKBCOBShBB-BlBBCCBDFBCaBCQBqBCBF5UBXKBW-cBhIzTBDpEBhQ9CBzMUBCCCBXBQHBFDB8CBBE7C7CB0E0EBOBhBlBBKxBxBB+BBgBwCBwB5C5CBmFBhuG-BBhoWhBBnDCBmFJB1HhFhFsMPPBzuUzuUBxGxGBIBXiBBCSBCDB0ECCBeBbFBbKBLuBuBBhChCBFBCGBLEBjICBFsBBEIBxCMB0BsBBlHaBltuBDB96D8HBEzNBHWBQQBgDzDB9B1HBLmBBD9BBEQBJBBIdBF8BB2GTBNTBN2CBKYBoE0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBDxBByjFjCBtC8BBjWrBBFjDBNOBDOBCOBCkBBLtFB5BZBCBBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBCmDBnghYffB+CB",false)),Coptic:()=>new a(l("ifNxkKzDGG",true)),Cuneiform:()=>new a(l("ggoC5cnDuDCEMjG",true)),Cypriot:()=>new a(l("ggiCFBDCCBqBBCBBEDD",false)),Cypro_Minoan:()=>new a(l("w8rCiD",true)),Cyrillic:()=>new a(l("ggBkEBDoFBx6FKBhFtCtCojEfBhie-CBv8VBBhw4B9BBiBAB",false)),Deseret:()=>new a(l("gghCvC",true)),Devanagari:()=>new a(l("goCwCFODZh7nBfhwcJ",true)),Dives_Akuru:()=>new a(l("gomCGBDDDBGBCBBCdBCBBDLBKJB",false)),Dogra:()=>new a(l("ggmC7B",true)),Duployan:()=>new a(l("ggvDqDGMEIIJDD",true)),Egyptian_Hieroglyphs:()=>new a(l("ggsC1iBL68D",true)),Elbasan:()=>new a(l("gohCnB",true)),Elymaic:()=>new a(l("g-jCW",true)),Ethiopic:()=>new a(l("gwEoCBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBDfBEZBnvGWBKGBCGBCGBCGBCGBCGBCGBCGBjpfFBDFBDFBKGBCGBylvCGBCDBCBBCOB",false)),Garay:()=>new a(l("gqjClBEcJB",true)),Georgian:()=>new a(l("glElBBCGGDqBBCDBx8CqBBDCBhiElBBCGG",false)),Glagolitic:()=>new a(l("ggL-Ch9sDGCQDGCBCE",true)),Gothic:()=>new a(l("w5gCa",true)),Grantha:()=>new a(l("g4kCDBCHBDBBDVBCGBCBBCEBDIBDBBDCBDHHGGBDGBEEB",false)),Greek:()=>new a(l("wbDBCCBDDBCFFCCCBBBCCCBSBC+BBPPBnpGEBzBEBFEB1ChKhKBUBDFBDlBBDFBDHBCGCBdBD0BBCOBCNBDFBCSBDCBCIBoJ-xiB-xiB7uVuCBSgj0Bgj0BBkCB",false)),Gujarati:()=>new a(l("h0CCBCIBCCBCVBCGBCBBCEBDJBCCBCCBDQQBCBDLBIGB",false)),Gunjala_Gondi:()=>new a(l("grnCFCBCkBCBCFIJ",true)),Gurmukhi:()=>new a(l("hwCCBCFBFBBDVBCGBCBBCBBCBBDCCBDBFBBDCBEIIBCBCIIBPB",false)),Gurung_Khema:()=>new a(l("go4C5B",true)),Han:()=>new a(l("g0LZBC4CBN1GBwBCCaIBPDBle-tGBhC-vUBhoWtLBDpDBpodBBNGBqgkB-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB",false)),Hangul:()=>new a(l("goE-HvxHBiI9CyDeiCei3dckUj9KNWFwBl9JeEFDFDFDC",true)),Hanifi_Rohingya:()=>new a(l("gojCnBJJ",true)),Hanunoo:()=>new a(l("g5FU",true)),Hatran:()=>new a(l("gniCSCBGE",true)),Hebrew:()=>new a(l("xsB2BBJaBFFBpp9BZBCEBCCCBCCBCCBIB",false)),Hiragana:()=>new a(l("hiM1CBHCBi7-C+IBTeeBBBulQAB",false)),Imperial_Aramaic:()=>new a(l("giiCVCI",true)),Inherited:()=>new a(l("gYvDB2IBBlOKBbhXhXBCB8qEtBBDLBlPCBCMBCGBFHHEBBnG-BBtQBBjGgBB65DDBsDBBmrzBPBRNBwejHjH7iEl+uBl+uBBsBBDWBhRCBSHBDGBfDBz6rYvHB",false)),Inscriptional_Pahlavi:()=>new a(l("g7iCSGH",true)),Inscriptional_Parthian:()=>new a(l("g6iCVDH",true)),Javanese:()=>new a(l("gsqBtCDJFB",true)),Kaithi:()=>new a(l("gkkCiCLA",true)),Kannada:()=>new a(l("gkDMCCCWCJCEDICCCDIBGCCDDJCC",true)),Katakana:()=>new a(l("hlM5CBDCBxHPBxGuBBC3CBvgzBJBCsBBzisBDBCGBCBBCgJgJBBBzBPPBCB",false)),Kawi:()=>new a(l("g4nCQCoBEc",true)),Kayah_Li:()=>new a(l("goqBtBCA",true)),Kharoshthi:()=>new a(l("gwiCDCBGHCCCcDCFJII",true)),Khitan_Small_Script:()=>new a(l("k-7C84G84GB0OBqBAB",false)),Khmer:()=>new a(l("g8F9CDJHJnPf",true)),Khojki:()=>new a(l("gwkCRCuB",true)),Khudawadi:()=>new a(l("w1kC6BGJ",true)),Kirat_Rai:()=>new a(l("gq7C5B",true)),Lao:()=>new a(l("h0DBBCCCBDBCXBCCCBVBDEBCCCBFBCJBDDB",false)),Latin:()=>new a(l("hCZBHZBwBQQGWBCeBCgOBoBEB8wGlBBHwBBGDBGMBClCBiC-HByLOORMBuEBBHccSoBB42CfBj1elDBExCBVOBxZqBBCIBCDB38TGB7gBZBHZBmhCFBCpBBCIBm61BeBHFB",false)),Lepcha:()=>new a(l("ggH3BEOEC",true)),Limbu:()=>new a(l("goGeBCLBFLBFEEBKB",false)),Linear_A:()=>new a(l("gwhC2JKVLH",true)),Linear_B:()=>new a(l("gggCLCZCSCBCODNjB6D",true)),Lisu:()=>new a(l("wmpBvBx1eA",true)),Lycian:()=>new a(l("g0gCc",true)),Lydian:()=>new a(l("gpiCZGA",true)),Mahajani:()=>new a(l("wqkCmB",true)),Makasar:()=>new a(l("g3nCY",true)),Malayalam:()=>new a(l("goDMCCCyBCCCFFPDZ",true)),Mandaic:()=>new a(l("giCbDA",true)),Manichaean:()=>new a(l("g2iCmBFL",true)),Marchen:()=>new a(l("wjnCfDVCN",true)),Masaram_Gondi:()=>new a(l("gonCGBCBBCrBBECCBCCBHBJJB",false)),Medefaidrin:()=>new a(l("gy7C6C",true)),Meetei_Mayek:()=>new a(l("g3qBWqGtBDJ",true)),Mende_Kikakui:()=>new a(l("gg6DkGDP",true)),Meroitic_Cursive:()=>new a(l("gtiCXFTDtB",true)),Meroitic_Hieroglyphs:()=>new a(l("gsiCf",true)),Miao:()=>new a(l("g47CqCF4BIQ",true)),Modi:()=>new a(l("gwlCkCMJ",true)),Mongolian:()=>new a(l("ggGBBDCCBSBH4CBIqBB2t-BMB",false)),Mro:()=>new a(l("gy6CeCJFB",true)),Multani:()=>new a(l("g0kCGBCCCBCBCOBCKB",false)),Myanmar:()=>new a(l("ggE-EhqmBeiDfxibT",true)),Nabataean:()=>new a(l("gkiCeJI",true)),Nag_Mundari:()=>new a(l("wm5DpB",true)),Nandinagari:()=>new a(l("gtmCHDtBDK",true)),New_Tai_Lue:()=>new a(l("gsGrBFZHKEB",true)),Newa:()=>new a(l("gglC7CCE",true)),Nko:()=>new a(l("g+B6BDC",true)),Nushu:()=>new a(l("h-7CvsQvsQBqMB",false)),Nyiakeng_Puachue_Hmong:()=>new a(l("go4DsBENDJFB",true)),Ogham:()=>new a(l("g0Fc",true)),Ol_Chiki:()=>new a(l("wiHvB",true)),Ol_Onal:()=>new a(l("wu5DqBFA",true)),Old_Hungarian:()=>new a(l("gkjCyBOyBIF",true)),Old_Italic:()=>new a(l("g4gCjBKC",true)),Old_North_Arabian:()=>new a(l("g0iCf",true)),Old_Permic:()=>new a(l("w6gCqB",true)),Old_Persian:()=>new a(l("g9gCjBFN",true)),Old_Sogdian:()=>new a(l("g4jCnB",true)),Old_South_Arabian:()=>new a(l("gziCf",true)),Old_Turkic:()=>new a(l("ggjCoC",true)),Old_Uyghur:()=>new a(l("w7jCZ",true)),Oriya:()=>new a(l("h4CCCHDBDVCGCBCEDIDBDCICFBCEDR",true)),Osage:()=>new a(l("wlhCjBFjB",true)),Osmanya:()=>new a(l("gkhCdDJ",true)),Pahawh_Hmong:()=>new a(l("g46ClCLJCGCUGS",true)),Palmyrene:()=>new a(l("gjiCf",true)),Pau_Cin_Hau:()=>new a(l("g2mC4B",true)),Phags_Pa:()=>new a(l("giqB3B",true)),Phoenician:()=>new a(l("goiCbEA",true)),Psalter_Pahlavi:()=>new a(l("g8iCRIDNG",true)),Rejang:()=>new a(l("wpqBjBMA",true)),Runic:()=>new a(l("g1FqCEK",true)),Samaritan:()=>new a(l("ggCtBDO",true)),Saurashtra:()=>new a(l("gkqBlCJL",true)),Sharada:()=>new a(l("gskC-ChsCH",true)),Shavian:()=>new a(l("wihCvB",true)),Siddham:()=>new a(l("gslC1BDlB",true)),Sidetic:()=>new a(l("gqiCZ",true)),SignWriting:()=>new a(l("gg2DrUQECO",true)),Sinhala:()=>new a(l("hsDCBCRBEXBCIBCDDBFBEFFBEBCCCBGBHJBDCBt-gCTB",false)),Sogdian:()=>new a(l("w5jCpB",true)),Sora_Sompeng:()=>new a(l("wmkCYIJ",true)),Soyombo:()=>new a(l("wymCyC",true)),Sundanese:()=>new a(l("g8G-BhIH",true)),Sunuwar:()=>new a(l("g+mChBPJ",true)),Syloti_Nagri:()=>new a(l("ggqBsB",true)),Syriac:()=>new a(l("g4BNC7BDCxIK",true)),Tagalog:()=>new a(l("g4FVKA",true)),Tagbanwa:()=>new a(l("g7FMCCCB",true)),Tai_Le:()=>new a(l("wqGdDE",true)),Tai_Tham:()=>new a(l("gxG+BCcDKHJHN",true)),Tai_Viet:()=>new a(l("g0qBiCZE",true)),Tai_Yo:()=>new a(l("g25DeCVJB",true)),Takri:()=>new a(l("g0lC5BHJ",true)),Tamil:()=>new a(l("i8CBBCFBECBCDBEBBCCCBEEBEEBBBELBFEBECBCDBDHHPUBm+kCxBBOAB",false)),Tangsa:()=>new a(l("wz6CuCCJ",true)),Tangut:()=>new a(l("g-7CgBgBB+3GBhQeBiDyDB",false)),Telugu:()=>new a(l("ggDMCCCWCPDICCCDIBCCCBDDDJII",true)),Thaana:()=>new a(l("g8BxB",true)),Thai:()=>new a(l("hwD5BGb",true)),Tibetan:()=>new a(l("g4DnCCjBFmBCjBCOCGFB",true)),Tifinagh:()=>new a(l("wpL3BIBPA",true)),Tirhuta:()=>new a(l("gklCnCJJ",true)),Todhri:()=>new a(l("guhCzB",true)),Tolong_Siki:()=>new a(l("wtnCrBFJ",true)),Toto:()=>new a(l("w04De",true)),Tulu_Tigalari:()=>new a(l("g8kCJBCDDClBBCJBCDDCDBCJBCBBJBB",false)),Ugaritic:()=>new a(l("g8gCdCA",true)),Unknown:()=>new a(l("4bBBHDBICCVuMuMnBBBzBBBE4B4BBGBcDBHKBvI9B9BBmDmDBMB8BBByBBBQddBCCMEBjBEBuHJJBDDBXXICCBBBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBbFB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKmDmDNBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBjoIBvLBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCC-FCBHBBHBBHBBECBIIIBIBGBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIBlCJBCBBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMB3iBJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBJ76DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBjGUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBNDBLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIm8yVBCdBhD-DBxHvw-FB",false)),Vai:()=>new a(l("gopBrJ",true)),Vithkuqi:()=>new a(l("wrhCKCOCGCBCKCOCGCB",true)),Wancho:()=>new a(l("g24D5BGA",true)),Warang_Citi:()=>new a(l("glmCyCNA",true)),Yezidi:()=>new a(l("g0jCpBCCDB",true)),Yi:()=>new a(l("ggoBskBE2B",true)),Zanabazar_Square:()=>new a(l("gwmCnC",true))});static FOLD_CATEGORIES=new PB({L:()=>new a(l("laA",true)),LC:()=>new a(l("laA",true)),Ll:()=>new a(l("hCZBmDWBCGBiBuBCEECDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIBBCBBCBBCOCDQCDBBCCCBBBC4BCIBBCBBDCCBCBCGC3HrBrBCEEJHHCCBCCCBCCBPBCIBkBJJCUCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBZHBJHBJHBJEBMEBMDBNEBMEBqJEEBHHxC9zC9zCBuBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoyehBB",false)),Lt:()=>new a(l("kOCCBCCBCClBCCtsHHBJHBJHBMQQwBAB",false)),Lu:()=>new a(l("hDZB7BqBqBBWBCHBCuBCEECDOCDsBCDECBBBDCCDEEGDDECBDDDCCCDFFDEECDDECCGBBCBBCBBCOCBSCDBBCEECkBCEQCJDDBCCFICBEBCBBCCCBEEBCCBCBCEBDCCBDDIDDCBBEFBGLLBnFnFsBCCEEEBBBvBDBCdBCBBECBCWCBDBCGD1BvBBCgBCK0BCDMCBgDCyBlBBq6CqBBDCB5XFBjkCIBCvHvHERRzD0ECGGGC8CCBHBJFBLHBJHBJFBMGCJHBJNBzBBBNSSBPPBEEpL2B2Bs1CvBBCEEBGCHDDLiDCJCCFNNBkBBCGG0oesBCUaCoEMCE8BCLCCDICFFFCBBDSCMOCFCCDOCb9a9advCBi8UZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBvyehBB",false)),M:()=>new a(l("5cgBgBlgHAB",false)),Mn:()=>new a(l("5cgBgBlgHAB",false)),Emoji:()=>new a(l("8mJA",true)),Extended_Pictographic:()=>new a(l("8mJA",true)),Lowercase:()=>new a(l("hCZBmDWBCGBiBuBCEECDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIBBCBBCBBCOCDQCDBBCCCBBBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBJJCUCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBZHBJHBJHBJEBMEBMDBNEBMEBqJEEBHHuBPBUzZzZBYBx5BvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoyehBB",false)),Math:()=>new a(l("ycGDCHHFMMDDDCHHFAB",false)),Uppercase:()=>new a(l("hDZB7BqBqBBWBCHBCuBCEECDOCDsBCDECBBBDCCDEEGDDECBDDDCCCDFFDEECDDECCGBBCBBCBBCOCBSCDBBCEECkBCEQCJDDBCCFICBEBCBBCCCBEEBCCBCBCEBDCCBDDIDDCBBEFBGLLBnFnFsBCCEEEBBBvBDBCdBCBBECBCWCBDBCGD1BvBBCgBCK0BCDMCBgDCyBlBBq6CqBBDCB5XFBjkCIBCvHvHERRzD0ECGGGC8CCBHBJFBLHBJHBJFBMGCJHBJNBzBBBNSSBPPBEEpLiBiBBOBFsasaBYBn6BvBBCEEBGCHDDLiDCJCCFNNBkBBCGG0oesBCUaCoEMCE8BCLCCDICFFFCBBDSCMOCFCCDOCb9a9advCBi8UZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBvyehBB",false))});static FOLD_SCRIPT=new PB({Common:()=>new a(l("8cgBgB",false)),Greek:()=>new a(l("1FwUwU",false)),Inherited:()=>new a(l("5cgBgBlgHAB",false))})},m=class j{static MAX_RUNE=1114111;static MAX_ASCII=127;static MAX_LATIN1=255;static MAX_BMP=65535;static MIN_FOLD=65;static MAX_FOLD=125251;static MIN_HIGH_SURROGATE=55296;static MAX_HIGH_SURROGATE=56319;static MIN_LOW_SURROGATE=56320;static MAX_LOW_SURROGATE=57343;static MIN_SUPPLEMENTARY_CODE_POINT=65536;static is32(B,e){let t=0,i=B.length;for(;t<i;){let r=t+Math.floor((i-t)/2),s=B.getLo(r),C=B.getHi(r);if(s<=e&&e<=C){let o=B.getStride(r);return (e-s)%o===0}e<s?i=r:t=r+1;}return false}static is(B,e){if(e<=j.MAX_LATIN1){for(let t=0;t<B.length;t++){if(e>B.getHi(t))continue;let i=B.getLo(t);if(e<i)return false;let r=B.getStride(t);return (e-i)%r===0}return false}return B.length>0&&e>=B.getLo(0)&&j.is32(B,e)}static isUpper(B){if(B<=j.MAX_LATIN1){let e=String.fromCodePoint(B);return e.toUpperCase()===e&&e.toLowerCase()!==e}return j.is(v.Upper,B)}static isPrint(B){return B<=j.MAX_LATIN1?B>=32&&B<j.MAX_ASCII||B>=161&&B!==173:j.is(v.Print,B)}static simpleFold(B){if(v.CASE_ORBIT.has(B))return v.CASE_ORBIT.get(B);let e=E.toLowerCase(B);return e!==B?e:E.toUpperCase(B)}static equalsIgnoreCase(B,e){if(B===e)return true;if(B<0||e<0)return false;if(B<=j.MAX_ASCII&&e<=j.MAX_ASCII)return 65<=B&&B<=90&&(B|=32),65<=e&&e<=90&&(e|=32),B===e;for(let t=j.simpleFold(B);t!==B;t=j.simpleFold(t))if(t===e)return true;return false}},ce=256,St=new Uint8Array(ce);for(let n=0;n<ce;n++)St[n]=97<=n&&n<=122||65<=n&&n<=90||48<=n&&n<=57||n===95?1:0;var re=null,se=null,I=class J{static METACHARACTERS="\\.+*?()|[]{}^$";static EMPTY_BEGIN_LINE=1;static EMPTY_END_LINE=2;static EMPTY_BEGIN_TEXT=4;static EMPTY_END_TEXT=8;static EMPTY_WORD_BOUNDARY=16;static EMPTY_NO_WORD_BOUNDARY=32;static EMPTY_ALL=-1;static emptyInts(){return []}static isByteArray(B){return Array.isArray(B)||B instanceof Uint8Array}static isalnum(B){return E.CODES.get("0")<=B&&B<=E.CODES.get("9")||E.CODES.get("a")<=B&&B<=E.CODES.get("z")||E.CODES.get("A")<=B&&B<=E.CODES.get("Z")}static unhex(B){return E.CODES.get("0")<=B&&B<=E.CODES.get("9")?B-E.CODES.get("0"):E.CODES.get("a")<=B&&B<=E.CODES.get("f")?B-E.CODES.get("a")+10:E.CODES.get("A")<=B&&B<=E.CODES.get("F")?B-E.CODES.get("A")+10:-1}static escapeRune(B){let e="";if(m.isPrint(B))J.METACHARACTERS.indexOf(String.fromCodePoint(B))>=0&&(e+="\\"),e+=String.fromCodePoint(B);else switch(B){case E.CODES.get('"'):e+='\\"';break;case E.CODES.get("\\"):e+="\\\\";break;case E.CODES.get(" "):e+="\\t";break;case E.CODES.get(`
3
+ `):e+="\\n";break;case E.CODES.get("\r"):e+="\\r";break;case E.CODES.get("\b"):e+="\\b";break;case E.CODES.get("\f"):e+="\\f";break;default:{let t=B.toString(16);B<256?(e+="\\x",t.length===1&&(e+="0"),e+=t):e+=`\\x{${t}}`;break}}return e}static stringToRunes(B){let e=String(B),t=[],i=0;for(;i<e.length;){let r=e.codePointAt(i);t.push(r),i+=r>m.MAX_BMP?2:1;}return t}static runeToString(B){return String.fromCodePoint(B)}static isWordRune(B){return B<ce?St[B]===1:false}static emptyOpContext(B,e){let t=0;return B<0&&(t|=J.EMPTY_BEGIN_TEXT|J.EMPTY_BEGIN_LINE),B===10&&(t|=J.EMPTY_BEGIN_LINE),e<0&&(t|=J.EMPTY_END_TEXT|J.EMPTY_END_LINE),e===10&&(t|=J.EMPTY_END_LINE),J.isWordRune(B)!==J.isWordRune(e)?t|=J.EMPTY_WORD_BOUNDARY:t|=J.EMPTY_NO_WORD_BOUNDARY,t}static quoteMeta(B){return B.split("").map(e=>J.METACHARACTERS.indexOf(e)>=0?`\\${e}`:e).join("")}static charCount(B){return B>m.MAX_BMP?2:1}static toArray(B){let e=B.length,t=new Array(e);for(let i=0;i<e;i++)t[i]=B[i];return t}static stringToUtf8ByteArray(B){if(globalThis.TextEncoder)return re||(re=new TextEncoder),J.toArray(re.encode(B));{let e=[],t=0;for(let i=0;i<B.length;i++){let r=B.charCodeAt(i);r<128?e[t++]=r:r<2048?(e[t++]=r>>6|192,e[t++]=r&63|128):(r&64512)===m.MIN_HIGH_SURROGATE&&i+1<B.length&&(B.charCodeAt(i+1)&64512)===m.MIN_LOW_SURROGATE?(r=m.MIN_SUPPLEMENTARY_CODE_POINT+((r&1023)<<10)+(B.charCodeAt(++i)&1023),e[t++]=r>>18|240,e[t++]=r>>12&63|128,e[t++]=r>>6&63|128,e[t++]=r&63|128):(e[t++]=r>>12|224,e[t++]=r>>6&63|128,e[t++]=r&63|128);}return e}}static utf8ByteArrayToString(B){if(globalThis.TextDecoder){se||(se=new TextDecoder("utf-8"));let e=B instanceof Uint8Array?B:new Uint8Array(B);return se.decode(e)}else {let e=[],t=0,i=0;for(;t<B.length;){let r=B[t++];if(r<128)e[i++]=String.fromCharCode(r);else if(r>191&&r<224){let s=B[t++];e[i++]=String.fromCharCode((r&31)<<6|s&63);}else if(r>239&&r<365){let s=B[t++],C=B[t++],o=B[t++],u=((r&7)<<18|(s&63)<<12|(C&63)<<6|o&63)-m.MIN_SUPPLEMENTARY_CODE_POINT;e[i++]=String.fromCharCode(m.MIN_HIGH_SURROGATE+(u>>10)),e[i++]=String.fromCharCode(m.MIN_LOW_SURROGATE+(u&1023));}else {let s=B[t++],C=B[t++];e[i++]=String.fromCharCode((r&15)<<12|(s&63)<<6|C&63);}}return e.join("")}}},It=(n=[],B=0)=>{let e=Object.create(null);for(let t=0;t<n.length;t++){let i=n[t],r=B+t;e[i]=r,e[r]=i;}return Object.freeze(e)},EB=class le{static Encoding=It(["UTF_16","UTF_8"]);getEncoding(){throw Error("not implemented")}asCharSequence(){throw Error("not implemented")}asBytes(){throw Error("not implemented")}length(){throw Error("not implemented")}isUTF8Encoding(){return this.getEncoding()===le.Encoding.UTF_8}isUTF16Encoding(){return this.getEncoding()===le.Encoding.UTF_16}},We=class extends EB{constructor(n=null){super(),this.bytes=n;}getEncoding(){return EB.Encoding.UTF_8}asCharSequence(){return I.utf8ByteArrayToString(this.bytes)}asBytes(){return this.bytes}length(){return this.bytes.length}},Mn=class extends EB{constructor(n=null){super(),this.charSequence=n;}getEncoding(){return EB.Encoding.UTF_16}asCharSequence(){return this.charSequence}asBytes(){return I.stringToUtf8ByteArray(this.charSequence.toString())}length(){return this.charSequence.length}},SB=class{static utf16(n){return new Mn(n)}static utf8(n){return I.isByteArray(n)?new We(n):new We(I.stringToUtf8ByteArray(n))}},k=class{static EOF(){return -8}constructor(){this.end=0;}canCheckPrefix(){return true}endPos(){return this.end}hasString(){return false}hasAnyString(){return false}prefixLength(){return 0}},kn=class extends k{constructor(n,B=0,e=n.length){super(),this.bytes=n,this.start=B,this.end=e;}hasString(n,B){let e=n.bytes;if(e.length===0)return true;let t=this.indexOf(this.bytes,e,this.start+B);return t!==-1&&t<=this.end-e.length}hasAnyString(n,B){return n.ac8?n.ac8.searchUTF8(this.bytes,this.start+B,this.end):false}step(n){if(n+=this.start,n>=this.end)return k.EOF();let B=this.bytes[n]&255;if(B<128)return B<<3|1;if(B>=194&&B<=223&&n+1<this.end){let e=this.bytes[n+1]&255;return (e&192)!==128?B<<3|1:((B&31)<<6|e&63)<<3|2}else if(B>=224&&B<=239&&n+2<this.end){let e=this.bytes[n+1]&255;if((e&192)!==128)return B<<3|1;let t=this.bytes[n+2]&255;return (t&192)!==128?B<<3|1:((B&15)<<12|(e&63)<<6|t&63)<<3|3}else if(B>=240&&B<=244&&n+3<this.end){let e=this.bytes[n+1]&255;if((e&192)!==128)return B<<3|1;let t=this.bytes[n+2]&255;if((t&192)!==128)return B<<3|1;let i=this.bytes[n+3]&255;return (i&192)!==128?B<<3|1:((B&7)<<18|(e&63)<<12|(t&63)<<6|i&63)<<3|4}else return B<<3|1}index(n,B){B+=this.start;let e=this.indexOf(this.bytes,n.prefixUTF8,B);return e<0?e:e-B}context(n){n+=this.start;let B=-1;if(n>this.start&&n<=this.end){let t=n-1;if(B=this.bytes[t--],B>=128){let i=n-4;for(i<this.start&&(i=this.start);t>=i&&(this.bytes[t]&192)===128;)t--;t<this.start&&(t=this.start),B=this.step(t-this.start)>>3;}}let e=n<this.end?this.step(n-this.start)>>3:-1;return I.emptyOpContext(B,e)}indexOf(n,B,e=0){let t=B.length;if(t===0)return e<=this.end?e:-1;let i=B[0],r=this.end-t,s=typeof n.indexOf=="function",C=e;for(;C<=r;){if(s){if(C=n.indexOf(i,C),C===-1||C>r)return -1}else {for(;C<=r&&n[C]!==i;)C++;if(C>r)return -1}let o=true;for(let u=1;u<t;u++)if(n[C+u]!==B[u]){o=false;break}if(o)return C;C++;}return -1}prefixLength(n){return n.prefixUTF8.length}},Un=class extends k{constructor(n,B=0,e=n.length){super(),this.charSequence=n,this.start=B,this.end=e;}hasString(n,B){let e=this.charSequence.indexOf(n.str,this.start+B);return e!==-1&&e<=this.end-n.str.length}hasAnyString(n,B){return n.ac16?n.ac16.searchUTF16(this.charSequence,this.start+B,this.end):false}step(n){if(n+=this.start,n>=this.end)return k.EOF();let B=this.charSequence.charCodeAt(n);if(B<m.MIN_HIGH_SURROGATE||B>m.MAX_HIGH_SURROGATE||n+1>=this.end)return B<<3|1;let e=this.charSequence.charCodeAt(n+1);return e>=m.MIN_LOW_SURROGATE&&e<=m.MAX_LOW_SURROGATE?(B-m.MIN_HIGH_SURROGATE)*1024+(e-m.MIN_LOW_SURROGATE)+m.MIN_SUPPLEMENTARY_CODE_POINT<<3|2:B<<3|1}index(n,B){B+=this.start;let e=this.charSequence.indexOf(n.prefix,B);return e<0||e>this.end-n.prefix.length?-1:e-B}context(n){n+=this.start;let B=n>this.start&&n<=this.end?this.charSequence.charCodeAt(n-1):-1,e=n<this.end?this.charSequence.charCodeAt(n):-1;return I.emptyOpContext(B,e)}prefixLength(n){return n.prefix.length}},x=class{static fromUTF8(n,B=0,e=n.length){return new kn(n,B,e)}static fromUTF16(n,B=0,e=n.length){return new Un(n,B,e)}},IB=class extends Error{constructor(n){super(n),this.name="RE2JSException";}},_=class extends IB{constructor(n,B=null){let e=`error parsing regexp: ${n}`;B&&(e+=`: \`${B}\``),super(e),this.name="RE2JSSyntaxException",this.message=e,this.error=n,this.input=B;}getDescription(){return this.error}getPattern(){return this.input}},Ft=class extends IB{constructor(n){super(n),this.name="RE2JSCompileException";}},X=class extends IB{constructor(n){super(n),this.name="RE2JSGroupException";}},Jn=class extends IB{constructor(n){super(n),this.name="RE2JSFlagsException";}},pB=class extends IB{constructor(n){super(n),this.name="RE2JSInternalException";}},qe=class At{static MAX_REPLACER_ARGS=65535;static quoteReplacement(B,e=false){return e?B.indexOf("\\")<0&&B.indexOf("$")<0?B:B.split("").map(t=>{let i=t.codePointAt(0);return i===E.CODES.get("\\")||i===E.CODES.get("$")?`\\${t}`:t}).join(""):B.indexOf("$")<0?B:B.split("").map(t=>t.codePointAt(0)===E.CODES.get("$")?"$$":t).join("")}constructor(B,e){if(B===null)throw new Error("pattern is null");this.patternInput=B;let t=this.patternInput.re2();this.patternGroupCount=t.numberOfCapturingGroups(),this.groups=[],this.namedGroups=t.namedGroups,this.numberOfInstructions=t.numberOfInstructions(),e instanceof EB?this.resetMatcherInput(e):I.isByteArray(e)?this.resetMatcherInput(SB.utf8(e)):this.resetMatcherInput(SB.utf16(e));}pattern(){return this.patternInput}reset(){return this.matcherInputLength=this.matcherInput.length(),this.appendPos=0,this.hasMatch=false,this.hasGroups=false,this.anchorFlag=0,this}resetMatcherInput(B){if(B===null)throw new Error("input is null");return this.matcherInput=B,this.reset(),this}start(B=0){if(typeof B=="string"){let e=this.namedGroups[B];if(!Number.isFinite(e))throw new X(`group '${B}' not found`);B=e;}return this.loadGroup(B),this.groups[2*B]}end(B=0){if(typeof B=="string"){let e=this.namedGroups[B];if(!Number.isFinite(e))throw new X(`group '${B}' not found`);B=e;}return this.loadGroup(B),this.groups[2*B+1]}programSize(){return this.numberOfInstructions}group(B=0){if(typeof B=="string"){let i=this.namedGroups[B];if(!Number.isFinite(i))throw new X(`group '${B}' not found`);B=i;}let e=this.start(B),t=this.end(B);return e<0&&t<0?null:this.substring(e,t)}getNamedGroups(){if(!this.hasMatch)throw new X("perhaps no match attempted");let B=Object.create(null);for(let e of Object.keys(this.namedGroups))B[e]=this.group(e);return B}groupCount(){return this.patternGroupCount}loadGroup(B){if(B<0||B>this.patternGroupCount)throw new X(`Group index out of bounds: ${B}`);if(!this.hasMatch)throw new X("perhaps no match attempted");if(B===0||this.hasGroups)return;let e=this.matcherInputLength,t=this.patternInput.re2().matchMachineInput(this.matcherInput,this.groups[0],e,this.anchorFlag,1+this.patternGroupCount);if(!t[0])throw new X("inconsistency in matching group data");this.groups=t[1],this.hasGroups=true;}matches(){return this.genMatch(0,D.ANCHOR_BOTH)}lookingAt(){return this.genMatch(0,D.ANCHOR_START)}find(B=null){if(B!==null){if(B<0||B>this.matcherInputLength)throw new X(`start index out of bounds: ${B}`);return this.reset(),this.genMatch(B,0)}if(B=0,this.hasMatch&&(B=this.groups[1],this.groups[0]===this.groups[1])){let e=(this.matcherInput.isUTF16Encoding()?x.fromUTF16(this.matcherInput.asCharSequence(),0,this.matcherInputLength):x.fromUTF8(this.matcherInput.asBytes(),0,this.matcherInputLength)).step(B);e<0?B++:B+=e&7;}return this.genMatch(B,D.UNANCHORED)}genMatch(B,e){let t=this.patternInput.re2().matchMachineInput(this.matcherInput,B,this.matcherInputLength,e,1);return t[0]?(this.groups=t[1],this.hasMatch=true,this.hasGroups=this.patternGroupCount===0,this.anchorFlag=e,true):false}substring(B,e){return this.matcherInput.isUTF8Encoding()?I.utf8ByteArrayToString(this.matcherInput.asBytes().slice(B,e)):this.matcherInput.asCharSequence().substring(B,e).toString()}inputLength(){return this.matcherInputLength}appendReplacement(B,e=false){let t="",i=this.start(),r=this.end();return this.appendPos<i&&(t+=this.substring(this.appendPos,i)),this.appendPos=r,t+=e?this.appendReplacementInternalJava(B):this.appendReplacementInternalJs(B),t}appendReplacementInternalJava(B){let e="",t=0,i=B.length;for(let r=0;r<i-1;r++){if(B.codePointAt(r)===E.CODES.get("\\")){t<r&&(e+=B.substring(t,r)),r++,t=r;continue}if(B.codePointAt(r)===E.CODES.get("$")){let s=B.codePointAt(r+1);if(E.CODES.get("0")<=s&&s<=E.CODES.get("9")){let C=s-E.CODES.get("0");for(t<r&&(e+=B.substring(t,r)),r+=2;r<i&&(s=B.codePointAt(r),!(s<E.CODES.get("0")||s>E.CODES.get("9")||C*10+s-E.CODES.get("0")>this.patternGroupCount));r++)C=C*10+s-E.CODES.get("0");if(C>this.patternGroupCount)throw new X(`n > number of groups: ${C}`);let o=this.group(C);o!==null&&(e+=o),t=r,r--;continue}else if(s===E.CODES.get("{")){t<r&&(e+=B.substring(t,r)),r++;let C=r+1;for(;C<B.length&&B.codePointAt(C)!==E.CODES.get("}")&&B.codePointAt(C)!==E.CODES.get(" ");)C++;if(C===B.length||B.codePointAt(C)!==E.CODES.get("}"))throw new X("named capture group is missing trailing '}'");let o=B.substring(r+1,C),u=this.group(o);u!==null&&(e+=u),t=C+1,r=C;continue}}}return t<i&&(e+=B.substring(t,i)),e}appendReplacementInternalJs(B){let e="",t=0,i=B.length;for(let r=0;r<i-1;r++)if(B.codePointAt(r)===E.CODES.get("$")){let s=B.codePointAt(r+1);if(E.CODES.get("$")===s){t<r&&(e+=B.substring(t,r)),e+="$",r++,t=r+1;continue}else if(E.CODES.get("&")===s){t<r&&(e+=B.substring(t,r));let C=this.group(0);C!==null?e+=C:e+="$&",r++,t=r+1;continue}else if(E.CODES.get("`")===s){t<r&&(e+=B.substring(t,r)),e+=this.substring(0,this.start(0)),r++,t=r+1;continue}else if(E.CODES.get("'")===s){t<r&&(e+=B.substring(t,r)),e+=this.substring(this.end(0),this.matcherInputLength),r++,t=r+1;continue}else if(E.CODES.get("1")<=s&&s<=E.CODES.get("9")){let C=s-E.CODES.get("0");for(t<r&&(e+=B.substring(t,r)),r+=2;r<i&&(s=B.codePointAt(r),!(s<E.CODES.get("0")||s>E.CODES.get("9")||C*10+s-E.CODES.get("0")>this.patternGroupCount));r++)C=C*10+s-E.CODES.get("0");if(C>this.patternGroupCount){e+=`$${C}`,t=r,r--;continue}let o=this.group(C);o!==null&&(e+=o),t=r,r--;continue}else if(s===E.CODES.get("<")){t<r&&(e+=B.substring(t,r)),r++;let C=r+1;for(;C<B.length&&B.codePointAt(C)!==E.CODES.get(">")&&B.codePointAt(C)!==E.CODES.get(" ");)C++;if(C===B.length||B.codePointAt(C)!==E.CODES.get(">")){e+=B.substring(r-1,C+1),t=C+1,r=C;continue}let o=B.substring(r+1,C);if(Object.prototype.hasOwnProperty.call(this.namedGroups,o)){let u=this.group(o);u!==null&&(e+=u);}else e+=`$<${o}>`;t=C+1,r=C;continue}}return t<i&&(e+=B.substring(t,i)),e}appendTail(){return this.substring(this.appendPos,this.matcherInputLength)}replaceAll(B,e=false){return this.replace(B,true,e)}replaceFirst(B,e=false){return this.replace(B,false,e)}replace(B,e=true,t=false){let i="";this.reset();let r=typeof B=="function",s=Object.keys(this.namedGroups).length>0,C=null;if(r){if(this.groupCount()>=At.MAX_REPLACER_ARGS)throw new X("Too many capture groups to safely invoke replacer function");C=this.matcherInput.isUTF8Encoding()?this.matcherInput.asBytes():this.matcherInput.asCharSequence();}for(;this.find()&&(i+=r?this.appendReplacementFunc(B,s,C):this.appendReplacement(B,t),!!e););return i+=this.appendTail(),i}appendReplacementFunc(B,e,t){let i="",r=this.start(),s=this.end();this.appendPos<r&&(i+=this.substring(this.appendPos,r)),this.appendPos=s;let C=this.buildReplacerArgs(r,e,t);return i+=String(B(...C)),i}buildReplacerArgs(B,e,t){let i=[this.group(0)],r=this.groupCount();for(let s=1;s<=r;s++){let C=this.start(s);C<0?i.push(void 0):i.push(this.substring(C,this.end(s)));}if(i.push(B),i.push(t),e){let s=this.getNamedGroups();for(let C in s)s[C]===null&&(s[C]=void 0);i.push(s);}return i}},f=class G{static ALT=1;static ALT_MATCH=2;static CAPTURE=3;static EMPTY_WIDTH=4;static FAIL=5;static MATCH=6;static NOP=7;static RUNE=8;static RUNE1=9;static RUNE_ANY=10;static RUNE_ANY_NOT_NL=11;static LB_WRITE=12;static LB_CHECK=13;static isRuneOp(B){return G.RUNE<=B&&B<=G.RUNE_ANY_NOT_NL}static escapeRunes(B){let e='"';for(let t of B)e+=I.escapeRune(t);return e+='"',e}constructor(B){this.op=B,this.out=0,this.arg=0,this.runes=[],this.next=null;}matchRune(B){if(this.runes.length===1){let s=this.runes[0];return (this.arg&D.FOLD_CASE)!==0?m.equalsIgnoreCase(s,B):B===s}let e=this.runes.length;if(e===0)return false;if(e===2||e===4||e===6||e===8){for(let s=0;s<e;s+=2){if(B<this.runes[s])return false;if(B<=this.runes[s+1])return true}return false}let t=0,i=e>>1;for(;i>1;){let s=i>>1;t+=this.runes[t+s<<1]<=B?s:0,i-=s;}t+=this.runes[t<<1]<=B?1:0;let r=t-1;return r>=0&&B<=this.runes[r<<1|1]}matchRunePos(B){if(this.runes.length===1){let s=this.runes[0];return (this.arg&D.FOLD_CASE)!==0?m.equalsIgnoreCase(s,B)?0:-1:B===s?0:-1}let e=this.runes.length;if(e===0)return -1;if(e===2||e===4||e===6||e===8){for(let s=0;s<e;s+=2){if(B<this.runes[s])return -1;if(B<=this.runes[s+1])return Math.floor(s/2)}return -1}let t=0,i=e>>1;for(;i>1;){let s=i>>1;t+=this.runes[t+s<<1]<=B?s:0,i-=s;}t+=this.runes[t<<1]<=B?1:0;let r=t-1;return r>=0&&B<=this.runes[r<<1|1]?r:-1}toString(){switch(this.op){case G.ALT:return `alt -> ${this.out}, ${this.arg}`;case G.ALT_MATCH:return `altmatch -> ${this.out}, ${this.arg}`;case G.CAPTURE:return `cap ${this.arg} -> ${this.out}`;case G.EMPTY_WIDTH:return `empty ${this.arg} -> ${this.out}`;case G.MATCH:return `match${this.arg!==0?` ${this.arg}`:""}`;case G.FAIL:return "fail";case G.NOP:return `nop -> ${this.out}`;case G.LB_WRITE:return `lbwrite ${this.arg} -> ${this.out}`;case G.LB_CHECK:return `lbcheck ${this.arg} -> ${this.out}`;case G.RUNE:return this.runes===null?"rune <null>":["rune ",G.escapeRunes(this.runes),(this.arg&D.FOLD_CASE)!==0?"/i":""," -> ",this.out].join("");case G.RUNE1:return `rune1 ${G.escapeRunes(this.runes)} -> ${this.out}`;case G.RUNE_ANY:return `any -> ${this.out}`;case G.RUNE_ANY_NOT_NL:return `anynotnl -> ${this.out}`;default:throw new Error("unhandled case in Inst.toString")}}},vn=class{constructor(){this.inst=null,this.cap=null;}},ze=class{constructor(n){this.sparse=new Int32Array(n),this.densePcs=new Int32Array(n),this.denseThreads=new Array(n),this.size=0;}contains(n){let B=this.sparse[n];return B<this.size&&this.densePcs[B]===n}isEmpty(){return this.size===0}add(n){let B=this.size++;return this.sparse[n]=B,this.denseThreads[B]=null,this.densePcs[B]=n,B}clear(){for(let n=0;n<this.size;n++)this.denseThreads[n]=null;this.size=0;}toString(){let n="{";for(let B=0;B<this.size;B++)B!==0&&(n+=", "),n+=this.densePcs[B];return n+="}",n}},JB=class vB{static THREADS_CHUNK_SIZE=128;static fromRE2(B){let e=new vB;return e.prog=B.prog,e.re2=B,e.q0=new ze(e.prog.numInst()),e.q1=new ze(e.prog.numInst()),e.pool=[],e.poolSize=0,e.matched=false,e.matchcap=new Int32Array(e.prog.numCap<2?2:e.prog.numCap),e.ncap=0,e}static fromMachine(B){return vB.fromRE2(B.re2)}constructor(){this.prog=null,this.re2=null,this.q0=null,this.q1=null,this.pool=[],this.poolSize=0,this.matched=false,this.matchcap=null,this.ncap=0,this.lbTable=null;}init(B){this.ncap=B,B>this.matchcap.length?this.initNewCap(B):this.resetCap(),this.prog.numLb>0&&((!this.lbTable||this.lbTable.length<this.prog.numLb+1)&&(this.lbTable=new Int32Array(this.prog.numLb+1)),this.lbTable.fill(-1));}resetCap(){for(let B=0;B<this.poolSize;B++)this.pool[B].cap.fill(-1);}initNewCap(B){for(let e=0;e<this.poolSize;e++){let t=this.pool[e];t.cap=new Int32Array(B).fill(-1);}this.matchcap=new Int32Array(B).fill(-1);}submatches(){return this.ncap===0?I.emptyInts():I.toArray(this.matchcap.subarray(0,this.ncap))}alloc(B){if(this.poolSize===0){let t=this.matchcap.length;for(let i=0;i<vB.THREADS_CHUNK_SIZE;i++){let r=new vn;r.cap=new Int32Array(t),this.pool[this.poolSize++]=r;}}this.poolSize--;let e=this.pool[this.poolSize];return e.inst=B,e}freeQueue(B,e=0){for(let t=e;t<B.size;t++){let i=B.denseThreads[t];i!==null&&(this.pool[this.poolSize++]=i);}B.clear();}freeThread(B){this.pool[this.poolSize++]=B;}match(B,e,t){let i=this.re2.cond;if(i===I.EMPTY_ALL||(t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return false;this.matched=false,this.matchcap.fill(-1);let r=this.prog.numLb>0?0:e,s=e,C=this.q0,o=this.q1,u=B.step(r),c=u>>3,p=u&7,g=-1,d=0;u!==k.EOF()&&(u=B.step(r+p),g=u>>3,d=u&7);let O;for(r===0?O=I.emptyOpContext(-1,c):O=B.context(r);;){if(C.isEmpty()){if((i&I.EMPTY_BEGIN_TEXT)!==0&&r!==0||(t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&r!==0||this.matched)break;if(this.prog.numLb===0&&this.re2.prefix.length!==0&&g!==this.re2.prefixRune&&B.canCheckPrefix()){let R=B.index(this.re2,r);if(R<0)break;r+=R,u=B.step(r),c=u>>3,p=u&7,u=B.step(r+p),g=u>>3,d=u&7;}}if(r===0&&this.prog.numLb>0)for(let R=0;R<this.prog.lbStarts.length;R++)this.add(C,this.prog.lbStarts[R],r,this.matchcap,O,null);!this.matched&&(r===0||t===D.UNANCHORED)&&r>=s&&(this.ncap>0&&(this.matchcap[0]=r),this.add(C,this.prog.start,r,this.matchcap,O,null));let F=r+p;if(O=B.context(F),this.step(C,o,r,F,c,O,t,r===B.endPos()),p===0||this.ncap===0&&this.matched)break;r+=p,c=g,p=d,c!==-1&&(u=B.step(r+p),g=u>>3,d=u&7);let L=C;C=o,o=L;}return this.freeQueue(o),this.matched}matchSet(B,e,t){let i=this.re2.cond;if(i===I.EMPTY_ALL)return [];if((t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return [];let r=this.prog.numLb>0?0:e,s=e,C=this.q0,o=this.q1,u=B.step(r),c=u>>3,p=u&7,g=-1,d=0;u!==k.EOF()&&(u=B.step(r+p),g=u>>3,d=u&7);let O=r===0?I.emptyOpContext(-1,c):B.context(r),F=new Set;for(;!(C.isEmpty()&&((i&I.EMPTY_BEGIN_TEXT)!==0&&r!==0||(t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&r!==0));){if(r===0&&this.prog.numLb>0)for(let U=0;U<this.prog.lbStarts.length;U++)this.add(C,this.prog.lbStarts[U],r,this.matchcap,O,null);(r===0||t===D.UNANCHORED)&&r>=s&&this.add(C,this.prog.start,r,this.matchcap,O,null);let L=r+p;O=B.context(L);for(let U=0;U<C.size;U++){let b=C.denseThreads[U];if(b===null)continue;let q=b.inst,z=false;switch(q.op){case f.MATCH:if(t===D.ANCHOR_BOTH&&r!==B.endPos())break;F.add(q.arg);break;case f.RUNE:z=q.matchRune(c);break;case f.RUNE1:z=c===q.runes[0];break;case f.RUNE_ANY:z=true;break;case f.RUNE_ANY_NOT_NL:z=c!==E.CODES.get(`
4
+ `);break;default:throw new pB("bad inst")}z&&(b=this.add(o,q.out,L,b.cap,O,b)),b!==null&&(this.freeThread(b),C.denseThreads[U]=null);}if(C.clear(),p===0)break;r+=p,c=g,p=d,c!==-1&&(u=B.step(r+p),g=u>>3,d=u&7);let R=C;C=o,o=R;}return this.freeQueue(o),Array.from(F).sort((L,R)=>L-R)}step(B,e,t,i,r,s,C,o){let u=this.re2.longest;for(let c=0;c<B.size;c++){let p=B.denseThreads[c];if(p===null)continue;if(u&&this.matched&&this.ncap>0&&this.matchcap[0]<p.cap[0]){this.freeThread(p);continue}let g=p.inst,d=false;switch(g.op){case f.MATCH:if(C===D.ANCHOR_BOTH&&!o)break;this.ncap>0&&(!u||!this.matched||this.matchcap[1]<t)&&(p.cap[1]=t,this.matchcap.set(p.cap.subarray(0,this.ncap))),u||this.freeQueue(B,c+1),this.matched=true;break;case f.RUNE:d=g.matchRune(r);break;case f.RUNE1:d=r===g.runes[0];break;case f.RUNE_ANY:d=true;break;case f.RUNE_ANY_NOT_NL:d=r!==E.CODES.get(`
5
+ `);break;default:throw new pB("bad inst")}d&&(p=this.add(e,g.out,i,p.cap,s,p)),p!==null&&(this.freeThread(p),B.denseThreads[c]=null);}B.clear();}add(B,e,t,i,r,s){for(;;){if(e===0||B.contains(e))return s;let C=B.add(e),o=this.prog.inst[e];switch(o.op){case f.FAIL:return s;case f.ALT:case f.ALT_MATCH:s=this.add(B,o.out,t,i,r,s),e=o.arg;continue;case f.EMPTY_WIDTH:if((o.arg&~r)===0){e=o.out;continue}return s;case f.NOP:e=o.out;continue;case f.CAPTURE:if(o.arg<this.ncap){let u=i[o.arg];return i[o.arg]=t,this.add(B,o.out,t,i,r,null),i[o.arg]=u,s}else {e=o.out;continue}case f.LB_WRITE:this.lbTable[Math.abs(o.arg)]=t,e=o.out;continue;case f.LB_CHECK:if(o.arg>0){if(this.lbTable[o.arg]===t){e=o.out;continue}}else if(this.lbTable[-o.arg]!==t){e=o.out;continue}return s;case f.MATCH:case f.RUNE:case f.RUNE1:case f.RUNE_ANY:case f.RUNE_ANY_NOT_NL:if(s===null?s=this.alloc(o):s.inst=o,this.ncap>0&&s.cap!==i)for(let u=0;u<this.ncap;u++)s.cap[u]=i[u];return B.denseThreads[C]=s,s=null,s;default:throw new Error("unhandled")}}}},Xe=n=>{let B=-2128831035;for(let e=0;e<n.length;e++)B^=n[e],B=Math.imul(B,16777619);return B},Kn=(n,B)=>{if(n.length!==B.length)return false;for(let e=0;e<n.length;e++)if(n[e]!==B[e])return false;return true},Vn=class{constructor(n,B,e=[]){this.nfaStates=n,this.isMatch=B,this.matchIDs=e,this.nextLatin1=new Array(m.MAX_LATIN1+1).fill(null),this.nextLatin1Anchored=new Array(m.MAX_LATIN1+1).fill(null),this.transKeys=[],this.transVals=[],this.lastSeen=0;}},Nt=class ue{static MAX_CACHE_CLEARS=5;static STATE_MEMORY_ESTIMATE=838;constructor(B,e=8388608){this.prog=B,this.stateCache=new Map,this.stateCount=0,this.startState=null,this.stateLimit=Math.max(1,Math.floor(e/ue.STATE_MEMORY_ESTIMATE)),this.cacheClears=0,this.failed=false,this.clock=0;}computeClosure(B){let e=new Set,t=[...B],i=false,r=[];for(;t.length>0;){let C=t.pop();if(e.has(C))continue;e.add(C);let o=this.prog.getInst(C);switch(o.op){case f.MATCH:i=true,r.includes(o.arg)||r.push(o.arg);break;case f.ALT:case f.ALT_MATCH:t.push(o.out),t.push(o.arg);break;case f.NOP:case f.CAPTURE:t.push(o.out);break;case f.EMPTY_WIDTH:case f.LB_WRITE:case f.LB_CHECK:return null}}let s=Int32Array.from(e).sort();return r.sort((C,o)=>C-o),{pcs:s,isMatch:i,matchIDs:r}}getState(B){let e=this.computeClosure(B);if(!e)return null;let t=e.pcs,i=Xe(t),r=this.stateCache.get(i);if(r)for(let C=0;C<r.length;C++){let o=r[C];if(Kn(o.nfaStates,t))return o.lastSeen=++this.clock,o}else r=[],this.stateCache.set(i,r);if(this.failed)return null;if(this.stateCount>=this.stateLimit){if(this.cacheClears++,this.cacheClears>=ue.MAX_CACHE_CLEARS)return this.failed=true,this.stateCache.clear(),this.stateCount=0,this.startState=null,null;this.evictCache(),r=this.stateCache.get(i),r||(r=[],this.stateCache.set(i,r));}let s=new Vn(t,e.isMatch,e.matchIDs);return s.lastSeen=++this.clock,r.push(s),this.stateCount++,s}evictCache(){let B=[];for(let s of this.stateCache.values())for(let C=0;C<s.length;C++)B.push(s[C]);B.sort((s,C)=>s.lastSeen-C.lastSeen);let e=Math.max(1,Math.floor(this.stateLimit/2)),t=B.length-e,i=B.slice(t),r=new Set(i);this.stateCache.clear(),this.stateCount=0;for(let s=0;s<i.length;s++){let C=i[s];C.nextLatin1.fill(null),C.nextLatin1Anchored.fill(null),C.transKeys.length=0,C.transVals.length=0;let o=Xe(C.nfaStates),u=this.stateCache.get(o);u||(u=[],this.stateCache.set(o,u)),u.push(C),this.stateCount++;}this.startState&&!r.has(this.startState)&&(this.startState=null);}step(B,e,t){if(e<=m.MAX_LATIN1)if(t===D.UNANCHORED){let s=B.nextLatin1[e];if(s!==null)return s}else {let s=B.nextLatin1Anchored[e];if(s!==null)return s}else {let s=e+(t===D.UNANCHORED?0:m.MAX_RUNE+1),C=B.transKeys,o=C.length;for(let u=0;u<o;u++)if(C[u]===s)return B.transVals[u]}let i=[];for(let s=0;s<B.nfaStates.length;s++){let C=B.nfaStates[s],o=this.prog.getInst(C);f.isRuneOp(o.op)&&o.matchRune(e)&&i.push(o.out);}t===D.UNANCHORED&&i.push(this.prog.start);let r=this.getState(i);if(e<=m.MAX_LATIN1)t===D.UNANCHORED?B.nextLatin1[e]=r:B.nextLatin1Anchored[e]=r;else {let s=e+(t===D.UNANCHORED?0:m.MAX_RUNE+1);B.transKeys.push(s),B.transVals.push(r);}return r}match(B,e,t){if((t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return false;if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let i=B.endPos(),r=this.startState;if(r.isMatch)if(t===D.ANCHOR_BOTH){if(e===i)return true}else return true;let s=e;for(;s<i;){let C=B.step(s),o=C>>3,u=C&7;if(u===0)break;if(r=t===D.UNANCHORED&&o<=m.MAX_LATIN1&&r.nextLatin1[o]||this.step(r,o,t),r===null)return null;if(r.lastSeen=++this.clock,r.isMatch)if(t===D.ANCHOR_BOTH){if(s+u===i)return true}else return true;if(r.nfaStates.length===0&&t!==D.UNANCHORED)return false;s+=u;}return false}matchSet(B,e,t){if((t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return [];if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let i=B.endPos(),r=this.startState,s=new Set,C=(u,c)=>{u.isMatch&&(t===D.ANCHOR_BOTH?c===i&&u.matchIDs.forEach(p=>s.add(p)):u.matchIDs.forEach(p=>s.add(p)));};C(r,e);let o=e;for(;o<i;){let u=B.step(o),c=u>>3,p=u&7;if(p===0)break;if(r=t===D.UNANCHORED&&c<=m.MAX_LATIN1&&r.nextLatin1[c]||this.step(r,c,t),r===null)return null;if(r.lastSeen=++this.clock,o+=p,C(r,o),r.nfaStates.length===0&&t!==D.UNANCHORED)break}return Array.from(s).sort((u,c)=>u-c)}},jn=32,Yn=500,Ce=256,Qn=256*1024,Wn=class{constructor(){this.end=0,this.cap=new Int32Array(0),this.matchcap=new Int32Array(0),this.ncap=0,this.jobPc=new Int32Array(Ce),this.jobArg=new Uint8Array(Ce),this.jobPos=new Int32Array(Ce),this.jobLen=0,this.visited=new Uint32Array(0);}reset(n,B,e){this.end=B,this.jobLen=0,this.ncap=e;let t=n.numInst()*(B+1)+jn-1>>>5;this.visited.length<t?this.visited=new Uint32Array(t):this.visited.fill(0,0,t),this.cap.length<e?this.cap=new Int32Array(e).fill(-1):this.cap.fill(-1,0,e),this.matchcap.length<e?this.matchcap=new Int32Array(e).fill(-1):this.matchcap.fill(-1,0,e);}shouldVisit(n,B){let e=n*(this.end+1)+B,t=e>>>5,i=1<<(e&31);return (this.visited[t]&i)!==0?false:(this.visited[t]|=i,true)}push(n,B,e,t){if(n.prog.getInst(B).op!==f.FAIL&&(t||this.shouldVisit(B,e))){if(this.jobLen>=this.jobPc.length){let i=this.jobPc.length*2,r=new Int32Array(i);r.set(this.jobPc),this.jobPc=r;let s=new Uint8Array(i);s.set(this.jobArg),this.jobArg=s;let C=new Int32Array(i);C.set(this.jobPos),this.jobPos=C;}this.jobPc[this.jobLen]=B,this.jobArg[this.jobLen]=t?1:0,this.jobPos[this.jobLen]=e,this.jobLen++;}}tryBacktrack(n,B,e,t,i){let r=n.longest;for(this.push(n,e,t,false);this.jobLen>0;){this.jobLen--;let s=this.jobPc[this.jobLen],C=this.jobArg[this.jobLen]===1,o=this.jobPos[this.jobLen],u=true;for(;!(!u&&!this.shouldVisit(s,o));){u=false;let c=n.prog.getInst(s);switch(c.op){case f.FAIL:throw new pB("unexpected InstFail");case f.ALT:if(C){C=false,s=c.arg;continue}else {this.push(n,s,o,true),s=c.out;continue}case f.ALT_MATCH:{let p=n.prog.getInst(c.out);if(f.isRuneOp(p.op)){this.push(n,c.arg,o,false),s=c.arg,o=this.end;continue}this.push(n,c.out,this.end,false),s=c.out;continue}case f.RUNE:{let p=B.step(o);if(p===k.EOF()||!c.matchRune(p>>3))break;o+=p&7,s=c.out;continue}case f.RUNE1:{let p=B.step(o);if(p===k.EOF()||p>>3!==c.runes[0])break;o+=p&7,s=c.out;continue}case f.RUNE_ANY_NOT_NL:{let p=B.step(o);if(p===k.EOF()||p>>3===10)break;o+=p&7,s=c.out;continue}case f.RUNE_ANY:{let p=B.step(o);if(p===k.EOF())break;o+=p&7,s=c.out;continue}case f.CAPTURE:if(C){this.cap[c.arg]=o;break}else {c.arg<this.ncap&&(this.push(n,s,this.cap[c.arg],true),this.cap[c.arg]=o),s=c.out;continue}case f.EMPTY_WIDTH:{let p=B.context(o);if((c.arg&~p)!==0)break;s=c.out;continue}case f.NOP:s=c.out;continue;case f.MATCH:{if(i===D.ANCHOR_BOTH&&o!==this.end)break;if(this.ncap===0)return true;this.ncap>1&&(this.cap[1]=o);let p=this.matchcap[1];if((p===-1||r&&o>0&&o>p)&&this.matchcap.set(this.cap),!r||o===this.end)return true;break}case f.LB_WRITE:case f.LB_CHECK:throw new pB("Backtracker cannot evaluate Lookbehind instructions");default:throw new pB("bad inst")}break}}return r&&this.matchcap.length>1&&this.matchcap[1]>=0}},MB=[],kB=class Rt{static shouldBacktrack(B){return B.numInst()<=Yn}static maxBitStateLen(B){return Rt.shouldBacktrack(B)?Math.floor(Qn/B.numInst()):0}static execute(B,e,t,i,r){let s=B.cond;if(s===I.EMPTY_ALL||(i===D.ANCHOR_START||i===D.ANCHOR_BOTH)&&t!==0||(s&I.EMPTY_BEGIN_TEXT)!==0&&t!==0)return null;let C=MB.length>0?MB.pop():new Wn,o=e.endPos();C.reset(B.prog,o,r);let u=false;if((s&I.EMPTY_BEGIN_TEXT)!==0||i===D.ANCHOR_START||i===D.ANCHOR_BOTH)C.ncap>0&&(C.cap[0]=t),C.tryBacktrack(B,e,B.prog.start,t,i)&&(u=true);else {let p=-1;for(;t<=o&&p!==0;t+=p){if(B.prefix.length>0){let d=e.index(B,t);if(d<0)break;t+=d;}if(C.ncap>0&&(C.cap[0]=t),C.tryBacktrack(B,e,B.prog.start,t,i)){u=true;break}let g=e.step(t);p=g===k.EOF()?0:g&7;}}if(!u)return MB.push(C),null;let c=r===0?[]:I.toArray(C.matchcap.subarray(0,r));return MB.push(C),c}},$e=class{constructor(n){this.sparse=new Uint32Array(n),this.dense=new Uint32Array(n),this.size=0,this.nextIndex=0;}empty(){return this.nextIndex>=this.size}next(){return this.dense[this.nextIndex++]}clear(){this.size=0,this.nextIndex=0;}contains(n){return n<this.sparse.length&&this.sparse[n]<this.size&&this.dense[this.sparse[n]]===n}insert(n){this.contains(n)||this.insertNew(n);}insertNew(n){n>=this.sparse.length||(this.sparse[n]=this.size,this.dense[this.size]=n,this.size++);}},qn=(n,B,e,t)=>{let i=n.length,r=B.length,s=0,C=0,o=[],u=[],c=true,p=-1,g=d=>{let O=d?n:B,F=d?s:C,L=d?e:t;return p>0&&O[F]<=o[p]?false:(o.push(O[F],O[F+1]),d?s+=2:C+=2,p+=2,u.push(L),true)};for(;s<i||C<r;)if(C>=r?c=g(true):s>=i||B[C]<n[s]?c=g(false):c=g(true),!c)return null;return {merged:o,next:u}},zn=class{constructor(n){this.start=n.start,this.numCap=n.numCap,this.inst=new Array(n.inst.length);for(let B=0;B<n.inst.length;B++){let e=n.inst[B],t=new f(e.op);t.out=e.out,t.arg=e.arg,t.runes=e.runes?e.runes.slice():[],t.next=null,this.inst[B]=t;}}},Xn=n=>{let B=new zn(n);for(let e=0;e<B.inst.length;e++){let t=B.inst[e];if(t.op!==f.ALT&&t.op!==f.ALT_MATCH)continue;let i="out",r="arg",s=B.inst[t[r]];if(s.op!==f.ALT&&s.op!==f.ALT_MATCH&&(i="arg",r="out",s=B.inst[t[r]],s.op!==f.ALT&&s.op!==f.ALT_MATCH))continue;let C=B.inst[t[i]];if(C.op===f.ALT||C.op===f.ALT_MATCH)continue;let o="out",u="arg",c=false;s.out===e?c=true:s.arg===e&&(c=true,o="arg",u="out"),c&&(s[o]=t[i]),t[i]===s[o]&&(t[r]=s[u]);}return B},$n=n=>{if(n.inst.length>=1e3)return null;let B=new $e(n.inst.length),e=new $e(n.inst.length),t=new Array(n.inst.length),i=new Array(n.inst.length).fill(false),r=s=>{let C=true,o=n.inst[s];if(e.contains(s))return true;switch(e.insert(s),o.op){case f.ALT:case f.ALT_MATCH:{C=r(o.out)&&r(o.arg);let u=i[o.out],c=i[o.arg];if(u&&c)return false;if(c){let g=o.out;o.out=o.arg,o.arg=g;let d=u;u=c,c=d;}u&&(i[s]=true,o.op=f.ALT_MATCH);let p=qn(t[o.out]||[],t[o.arg]||[],o.out,o.arg);if(!p)return false;t[s]=p.merged,o.next=new Uint32Array(p.next);break}case f.CAPTURE:case f.EMPTY_WIDTH:case f.NOP:C=r(o.out),i[s]=i[o.out],t[s]=t[o.out]?t[o.out].slice():[],o.next=new Uint32Array(Math.floor(t[s].length/2)+1).fill(o.out);break;case f.MATCH:case f.FAIL:i[s]=o.op===f.MATCH;break;case f.RUNE:{if(i[s]=false,o.next&&o.next.length>0)break;if(B.insert(o.out),!o.runes||o.runes.length===0){t[s]=[],o.next=new Uint32Array([o.out]);break}let u=[];if(o.runes.length===1&&(o.arg&D.FOLD_CASE)!==0){let c=o.runes[0];u.push(c,c);for(let p=m.simpleFold(c);p!==c;p=m.simpleFold(p))u.push(p,p);u.sort((p,g)=>p-g);}else for(let c=0;c<o.runes.length;c++)u.push(o.runes[c]);t[s]=u,o.next=new Uint32Array(Math.floor(u.length/2)+1).fill(o.out),o.op=f.RUNE;break}case f.RUNE1:{if(i[s]=false,o.next&&o.next.length>0)break;B.insert(o.out);let u=[];if((o.arg&D.FOLD_CASE)!==0){let c=o.runes[0];u.push(c,c);for(let p=m.simpleFold(c);p!==c;p=m.simpleFold(p))u.push(p,p);u.sort((p,g)=>p-g);}else u.push(o.runes[0],o.runes[0]);t[s]=u,o.next=new Uint32Array(Math.floor(u.length/2)+1).fill(o.out),o.op=f.RUNE;break}case f.RUNE_ANY:if(i[s]=false,o.next&&o.next.length>0)break;B.insert(o.out),t[s]=[0,m.MAX_RUNE],o.next=new Uint32Array([o.out]);break;case f.RUNE_ANY_NOT_NL:if(i[s]=false,o.next&&o.next.length>0)break;B.insert(o.out),t[s]=[0,9,11,m.MAX_RUNE],o.next=new Uint32Array(Math.floor(t[s].length/2)+1).fill(o.out);break}return C};for(B.clear(),B.insert(n.start);!B.empty();)if(e.clear(),!r(B.next()))return null;for(let s=0;s<n.inst.length;s++)t[s]&&(n.inst[s].runes=t[s]);return n},Zn=(n,B)=>{for(let e=0;e<B.inst.length;e++){let t=B.inst[e];switch(t.op){case f.ALT:case f.ALT_MATCH:case f.RUNE:break;case f.CAPTURE:case f.EMPTY_WIDTH:case f.NOP:case f.MATCH:case f.FAIL:n.inst[e].next=null;break;case f.RUNE1:case f.RUNE_ANY:case f.RUNE_ANY_NOT_NL:n.inst[e].next=null,n.inst[e].op=t.op,n.inst[e].runes=t.runes?t.runes.slice():[];break}}},Ze=class Tt{static compile(B){if(B.start===0||B.numLb>0)return null;let e=B.inst[B.start];if(e.op!==f.EMPTY_WIDTH||(e.arg&I.EMPTY_BEGIN_TEXT)===0)return null;let t=false;for(let r=0;r<B.inst.length;r++)if(B.inst[r].op===f.ALT||B.inst[r].op===f.ALT_MATCH){t=true;break}for(let r=0;r<B.inst.length;r++){let s=B.inst[r],C=B.inst[s.out].op;switch(s.op){case f.ALT:case f.ALT_MATCH:if(C===f.MATCH||B.inst[s.arg].op===f.MATCH)return null;break;case f.EMPTY_WIDTH:if(C===f.MATCH){if((s.arg&I.EMPTY_END_TEXT)===I.EMPTY_END_TEXT)continue;return null}break;default:if(C===f.MATCH&&t)return null;break}}let i=Xn(B);return i=$n(i),i!==null&&Zn(i,B),i}static next(B,e){let t=B.matchRunePos(e);return t>=0?B.next[t]:B.op===f.ALT_MATCH?B.out:0}static execute(B,e,t,i,r){let s=B.onepass;if(!s)return null;let C=new Int32Array(r).fill(-1),o=false,u=e.step(t),c=u>>3,p=u&7,g=k.EOF(),d=-1,O=0;u!==k.EOF()&&(g=e.step(t+p),g!==k.EOF()&&(d=g>>3,O=g&7));let F=t===0?I.emptyOpContext(-1,c):e.context(t),L=s.start,R;for(;;){switch(R=s.inst[L],L=R.out,R.op){case f.MATCH:return i===D.ANCHOR_BOTH&&t!==e.endPos()?null:(o=true,C.length>0&&(C[0]=0,C[1]=t),r===0?[]:I.toArray(C));case f.RUNE:if(!R.matchRune(c))return null;break;case f.RUNE1:if(c!==R.runes[0])return null;break;case f.RUNE_ANY:break;case f.RUNE_ANY_NOT_NL:if(c===10)return null;break;case f.ALT:case f.ALT_MATCH:L=Tt.next(R,c);continue;case f.FAIL:return null;case f.NOP:continue;case f.EMPTY_WIDTH:if((R.arg&~F)!==0)return null;continue;case f.CAPTURE:R.arg<C.length&&(C[R.arg]=t);continue;default:throw new pB("bad inst")}if(p===0)break;F=I.emptyOpContext(c,d),t+=p,c=d,p=O,c!==-1&&(g=e.step(t+p),g!==k.EOF()?(d=g>>3,O=g&7):(d=-1,O=0));}return o?r===0?[]:I.toArray(C):null}},h=class A{static Op=It(["NO_MATCH","EMPTY_MATCH","LITERAL","CHAR_CLASS","ANY_CHAR_NOT_NL","ANY_CHAR","BEGIN_LINE","END_LINE","BEGIN_TEXT","END_TEXT","WORD_BOUNDARY","NO_WORD_BOUNDARY","CAPTURE","STAR","PLUS","QUEST","REPEAT","CONCAT","ALTERNATE","PLB","NLB","LEFT_PAREN","VERTICAL_BAR"]);static isPseudoOp(B){return B>=A.Op.LEFT_PAREN}static emptySubs(){return []}static quoteIfHyphen(B){return B===E.CODES.get("-")?"\\":""}static fromRegexp(B){let e=new A(B.op);return e.flags=B.flags,e.subs=B.subs,e.runes=B.runes,e.cap=B.cap,e.min=B.min,e.max=B.max,e.name=B.name,e.namedGroups=B.namedGroups,e.lb=B.lb,e}constructor(B){this.op=B,this.flags=0,this.subs=A.emptySubs(),this.runes=[],this.min=0,this.max=0,this.cap=0,this.name=null,this.namedGroups=Object.create(null),this.lb=0;}reinit(){this.flags=0,this.subs=A.emptySubs(),this.runes=[],this.cap=0,this.min=0,this.max=0,this.name=null,this.namedGroups=Object.create(null),this.lb=0;}toString(){return this.appendTo()}appendTo(){let B="";switch(this.op){case A.Op.NO_MATCH:B+="[^\\x00-\\x{10FFFF}]";break;case A.Op.EMPTY_MATCH:B+="(?:)";break;case A.Op.STAR:case A.Op.PLUS:case A.Op.QUEST:case A.Op.REPEAT:{let e=this.subs[0];switch(e.op>A.Op.CAPTURE||e.op===A.Op.LITERAL&&e.runes.length>1?B+=`(?:${e.appendTo()})`:B+=e.appendTo(),this.op){case A.Op.STAR:B+="*";break;case A.Op.PLUS:B+="+";break;case A.Op.QUEST:B+="?";break;case A.Op.REPEAT:B+=`{${this.min}`,this.min!==this.max&&(B+=",",this.max>=0&&(B+=this.max)),B+="}";break}(this.flags&D.NON_GREEDY)!==0&&(B+="?");break}case A.Op.CONCAT:for(let e of this.subs)e.op===A.Op.ALTERNATE?B+=`(?:${e.appendTo()})`:B+=e.appendTo();break;case A.Op.ALTERNATE:{let e="";for(let t of this.subs)B+=e,e="|",B+=t.appendTo();break}case A.Op.LITERAL:(this.flags&D.FOLD_CASE)!==0&&(B+="(?i:");for(let e of this.runes)B+=I.escapeRune(e);(this.flags&D.FOLD_CASE)!==0&&(B+=")");break;case A.Op.ANY_CHAR_NOT_NL:B+="(?-s:.)";break;case A.Op.ANY_CHAR:B+="(?s:.)";break;case A.Op.PLB:B+=`(?<=${this.subs[0].appendTo()})`;break;case A.Op.NLB:B+=`(?<!${this.subs[0].appendTo()})`;break;case A.Op.CAPTURE:this.name===null||this.name.length===0?B+="(":B+=`(?P<${this.name}>`,this.subs[0].op!==A.Op.EMPTY_MATCH&&(B+=this.subs[0].appendTo()),B+=")";break;case A.Op.BEGIN_TEXT:B+="\\A";break;case A.Op.END_TEXT:(this.flags&D.WAS_DOLLAR)!==0?B+="(?-m:$)":B+="\\z";break;case A.Op.BEGIN_LINE:B+="^";break;case A.Op.END_LINE:B+="$";break;case A.Op.WORD_BOUNDARY:B+="\\b";break;case A.Op.NO_WORD_BOUNDARY:B+="\\B";break;case A.Op.CHAR_CLASS:if(this.runes.length%2!==0){B+="[invalid char class]";break}if(B+="[",this.runes.length===0)B+="^\\x00-\\x{10FFFF}";else if(this.runes[0]===0&&this.runes[this.runes.length-1]===m.MAX_RUNE){B+="^";for(let e=1;e<this.runes.length-1;e+=2){let t=this.runes[e]+1,i=this.runes[e+1]-1;B+=A.quoteIfHyphen(t),B+=I.escapeRune(t),t!==i&&(B+="-",B+=A.quoteIfHyphen(i),B+=I.escapeRune(i));}}else for(let e=0;e<this.runes.length;e+=2){let t=this.runes[e],i=this.runes[e+1];B+=A.quoteIfHyphen(t),B+=I.escapeRune(t),t!==i&&(B+="-",B+=A.quoteIfHyphen(i),B+=I.escapeRune(i));}B+="]";break;default:B+=this.op;break}return B}maxCap(){let B=0;if(this.op===A.Op.CAPTURE&&(B=this.cap),this.subs!==null)for(let e of this.subs){let t=e.maxCap();B<t&&(B=t);}return B}equals(B){if(!(B!==null&&B instanceof A)||this.op!==B.op)return false;switch(this.op){case A.Op.END_TEXT:if((this.flags&D.WAS_DOLLAR)!==(B.flags&D.WAS_DOLLAR))return false;break;case A.Op.LITERAL:case A.Op.CHAR_CLASS:if(this.runes===null&&B.runes===null)break;if(this.runes===null||B.runes===null||this.runes.length!==B.runes.length)return false;for(let e=0;e<this.runes.length;e++)if(this.runes[e]!==B.runes[e])return false;break;case A.Op.ALTERNATE:case A.Op.CONCAT:if(this.subs.length!==B.subs.length)return false;for(let e=0;e<this.subs.length;++e)if(!this.subs[e].equals(B.subs[e]))return false;break;case A.Op.STAR:case A.Op.PLUS:case A.Op.QUEST:if((this.flags&D.NON_GREEDY)!==(B.flags&D.NON_GREEDY)||!this.subs[0].equals(B.subs[0]))return false;break;case A.Op.REPEAT:if((this.flags&D.NON_GREEDY)!==(B.flags&D.NON_GREEDY)||this.min!==B.min||this.max!==B.max||!this.subs[0].equals(B.subs[0]))return false;break;case A.Op.CAPTURE:if(this.cap!==B.cap||(this.name===null?B.name!==null:this.name!==B.name)||!this.subs[0].equals(B.subs[0]))return false;break;case A.Op.PLB:case A.Op.NLB:if(this.lb!==B.lb||!this.subs[0].equals(B.subs[0]))return false;break}return true}},Bt=class{constructor(n){this.next=[Object.create(null)],this.fail=[0],this.match=[false];for(let e of n){let t=0;for(let i=0;i<e.length;i++){let r=e[i];r in this.next[t]||(this.next.push(Object.create(null)),this.fail.push(0),this.match.push(false),this.next[t][r]=this.next.length-1),t=this.next[t][r];}this.match[t]=true;}let B=[];for(let e in this.next[0])if(Object.prototype.hasOwnProperty.call(this.next[0],e)){let t=this.next[0][e];this.fail[t]=0,B.push(t);}for(;B.length>0;){let e=B.shift();for(let t in this.next[e])if(Object.prototype.hasOwnProperty.call(this.next[e],t)){let i=this.next[e][t],r=this.fail[e];for(;r!==0&&!(t in this.next[r]);)r=this.fail[r];t in this.next[r]?this.fail[i]=this.next[r][t]:this.fail[i]=0,this.match[i]=this.match[i]||this.match[this.fail[i]],B.push(i);}}}searchUTF16(n,B,e){let t=0;for(let i=B;i<e;i++){let r=n.charCodeAt(i);for(;t!==0&&!(r in this.next[t]);)t=this.fail[t];if(r in this.next[t]&&(t=this.next[t][r]),this.match[t])return true}return false}searchUTF8(n,B,e){let t=0;for(let i=B;i<e;i++){let r=n[i];for(;t!==0&&!(r in this.next[t]);)t=this.fail[t];if(r in this.next[t]&&(t=this.next[t][r]),this.match[t])return true}return false}},y=class mB{static Type={NONE:0,EXACT:1,AND:2,OR:3};constructor(B){this.type=B,this.subs=[],this.str="",this.bytes=null,this.ac16=null,this.ac8=null;}eval(B,e){switch(this.type){case mB.Type.NONE:return true;case mB.Type.EXACT:return B.hasString(this,e);case mB.Type.AND:for(let t=0;t<this.subs.length;t++)if(!this.subs[t].eval(B,e))return false;return true;case mB.Type.OR:if(this.ac16&&this.ac8)return B.hasAnyString(this,e);for(let t=0;t<this.subs.length;t++)if(this.subs[t].eval(B,e))return true;return false;default:return true}}},Bi=class eB{static build(B){let e=eB.fromRegexp(B);return eB.simplify(e)}static fromRegexp(B){if(!B)return new y(y.Type.NONE);switch(B.op){case h.Op.PLB:case h.Op.NLB:case h.Op.NO_MATCH:case h.Op.EMPTY_MATCH:case h.Op.BEGIN_LINE:case h.Op.END_LINE:case h.Op.BEGIN_TEXT:case h.Op.END_TEXT:case h.Op.WORD_BOUNDARY:case h.Op.NO_WORD_BOUNDARY:case h.Op.CHAR_CLASS:case h.Op.ANY_CHAR_NOT_NL:case h.Op.ANY_CHAR:return new y(y.Type.NONE);case h.Op.LITERAL:{if(B.runes.length===0||(B.flags&D.FOLD_CASE)!==0)return new y(y.Type.NONE);let e=new y(y.Type.EXACT),t="";for(let i=0;i<B.runes.length;i++)t+=String.fromCodePoint(B.runes[i]);return e.str=t,e.bytes=I.stringToUtf8ByteArray(e.str),e}case h.Op.CAPTURE:case h.Op.PLUS:return eB.fromRegexp(B.subs[0]);case h.Op.REPEAT:return B.min>=1?eB.fromRegexp(B.subs[0]):new y(y.Type.NONE);case h.Op.CONCAT:{let e=new y(y.Type.AND);for(let t of B.subs)e.subs.push(eB.fromRegexp(t));return e}case h.Op.ALTERNATE:{let e=new y(y.Type.OR);for(let t of B.subs)e.subs.push(eB.fromRegexp(t));return e}default:return new y(y.Type.NONE)}}static simplify(B){if(B.type===y.Type.EXACT||B.type===y.Type.NONE)return B;if(B.type===y.Type.AND){let e=[];for(let t of B.subs){let i=eB.simplify(t);if(i.type!==y.Type.NONE)if(i.type===y.Type.AND)for(let r=0;r<i.subs.length;r++)e.push(i.subs[r]);else e.push(i);}return e.length===0?new y(y.Type.NONE):e.length===1?e[0]:(B.subs=e,B)}if(B.type===y.Type.OR){let e=[];for(let s of B.subs){let C=eB.simplify(s);if(C.type===y.Type.NONE)return new y(y.Type.NONE);if(C.type===y.Type.OR)for(let o=0;o<C.subs.length;o++)e.push(C.subs[o]);else e.push(C);}if(e.length===0)return new y(y.Type.NONE);if(e.length===1)return e[0];let t=new Set,i=[];for(let s of e)s.type===y.Type.EXACT?t.has(s.str)||(t.add(s.str),i.push(s)):i.push(s);B.subs=i;let r=true;for(let s of i)if(s.type!==y.Type.EXACT){r=false;break}return r&&i.length>1&&(B.ac16=new Bt(i.map(s=>{let C=[];for(let o=0;o<s.str.length;o++)C.push(s.str.charCodeAt(o));return C})),B.ac8=new Bt(i.map(s=>s.bytes))),B}return B}},Y=class{constructor(n=0,B=0){this.head=n,this.tail=B;}},ei=class{constructor(){this.inst=[],this.start=0,this.numCap=2,this.lbStarts=[],this.numLb=0;}getInst(n){return this.inst[n]}numInst(){return this.inst.length}addInst(n){this.inst.push(new f(n));}skipNop(n){let B=this.inst[n];for(;B.op===f.NOP||B.op===f.CAPTURE;)B=this.inst[n],n=B.out;return B}prefix(){let n="",B=this.skipNop(this.start);if(!f.isRuneOp(B.op)||B.runes.length!==1)return [B.op===f.MATCH,n];for(;f.isRuneOp(B.op)&&B.runes.length===1&&(B.arg&D.FOLD_CASE)===0;)n+=String.fromCodePoint(B.runes[0]),B=this.skipNop(B.out);return [B.op===f.MATCH,n]}startCond(){let n=0,B=this.start;B:for(;;){let e=this.inst[B];switch(e.op){case f.EMPTY_WIDTH:n|=e.arg;break;case f.FAIL:return -1;case f.CAPTURE:case f.NOP:break;default:break B}B=e.out;}return n}patch(n,B){let e=n.head;for(;e!==0;){let t=this.inst[e>>1];(e&1)===0?(e=t.out,t.out=B):(e=t.arg,t.arg=B);}}append(n,B){if(n.head===0)return B;if(B.head===0)return n;let e=this.inst[n.tail>>1];return (n.tail&1)===0?e.out=B.head:e.arg=B.head,new Y(n.head,B.tail)}toString(){let n="";for(let B=0;B<this.inst.length;B++){let e=n.length;n+=B,B===this.start&&(n+="*"),n+=" ".substring(n.length-e),n+=this.inst[B],n+=`
6
+ `;}return n}},UB=class{constructor(n=0,B=new Y,e=false){this.i=n,this.out=B,this.nullable=e;}},Lt=class cB{static ANY_RUNE_NOT_NL(){return [0,E.CODES.get(`
8
7
  `)-1,E.CODES.get(`
9
- `)+1,m.MAX_RUNE]}static ANY_RUNE(){return [0,m.MAX_RUNE]}static compileRegexp(B){let e=new cB,t=e.compile(B);return e.prog.patch(t.out,e.newInst(f.MATCH).i),e.prog.start=t.i,e.prog}static compileSet(B){let e=new cB;if(B.length===0)return e.prog.start=e.newInst(f.FAIL).i,e.prog;let t=[];for(let r=0;r<B.length;r++){let s=e.compile(B[r]),C=e.newInst(f.MATCH);e.prog.getInst(C.i).arg=r,e.prog.patch(s.out,C.i),t.push(s.i);}let i=t[0];for(let r=1;r<t.length;r++){let s=e.newInst(f.ALT),C=e.prog.getInst(s.i);C.out=i,C.arg=t[r],i=s.i;}return e.prog.start=i,e.prog}constructor(){this.prog=new Ai,this.newInst(f.FAIL);}newInst(B){return this.prog.addInst(B),new UB(this.prog.numInst()-1,new Y,true)}nop(){let B=this.newInst(f.NOP);return B.out=new Y(B.i<<1,B.i<<1),B}fail(){return new UB}cap(B){let e=this.newInst(f.CAPTURE);return e.out=new Y(e.i<<1,e.i<<1),this.prog.getInst(e.i).arg=B,this.prog.numCap<B+1&&(this.prog.numCap=B+1),e}cat(B,e){return B.i===0||e.i===0?this.fail():(this.prog.patch(B.out,e.i),new UB(B.i,e.out,B.nullable&&e.nullable))}alt(B,e){if(B.i===0)return e;if(e.i===0)return B;let t=this.newInst(f.ALT),i=this.prog.getInst(t.i);return i.out=B.i,i.arg=e.i,t.out=this.prog.append(B.out,e.out),t.nullable=B.nullable||e.nullable,t}loop(B,e){let t=this.newInst(f.ALT),i=this.prog.getInst(t.i);return e?(i.arg=B.i,t.out=new Y(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new Y(t.i<<1|1,t.i<<1|1)),this.prog.patch(B.out,t.i),t}quest(B,e){let t=this.newInst(f.ALT),i=this.prog.getInst(t.i);return e?(i.arg=B.i,t.out=new Y(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new Y(t.i<<1|1,t.i<<1|1)),t.out=this.prog.append(t.out,B.out),t}star(B,e){return B.nullable?this.quest(this.plus(B,e),e):this.loop(B,e)}plus(B,e){return new UB(B.i,this.loop(B,e).out,B.nullable)}empty(B){let e=this.newInst(f.EMPTY_WIDTH);return this.prog.getInst(e.i).arg=B,e.out=new Y(e.i<<1,e.i<<1),e}rune(B,e){let t=this.newInst(f.RUNE);t.nullable=false;let i=this.prog.getInst(t.i);return i.runes=B,e&=D.FOLD_CASE,(B.length!==1||m.simpleFold(B[0])===B[0])&&(e&=-2),i.arg=e,t.out=new Y(t.i<<1,t.i<<1),(e&D.FOLD_CASE)===0&&B.length===1||B.length===2&&B[0]===B[1]?i.op=f.RUNE1:B.length===2&&B[0]===0&&B[1]===m.MAX_RUNE?i.op=f.RUNE_ANY:B.length===4&&B[0]===0&&B[1]===E.CODES.get(`
8
+ `)+1,m.MAX_RUNE]}static ANY_RUNE(){return [0,m.MAX_RUNE]}static compileRegexp(B){let e=new cB,t=e.compile(B);return e.prog.patch(t.out,e.newInst(f.MATCH).i),e.prog.start=t.i,e.prog}static compileSet(B){let e=new cB;if(B.length===0)return e.prog.start=e.newInst(f.FAIL).i,e.prog;let t=[];for(let r=0;r<B.length;r++){let s=e.compile(B[r]),C=e.newInst(f.MATCH);e.prog.getInst(C.i).arg=r,e.prog.patch(s.out,C.i),t.push(s.i);}let i=t[0];for(let r=1;r<t.length;r++){let s=e.newInst(f.ALT),C=e.prog.getInst(s.i);C.out=i,C.arg=t[r],i=s.i;}return e.prog.start=i,e.prog}constructor(){this.prog=new ei,this.newInst(f.FAIL);}newInst(B){return this.prog.addInst(B),new UB(this.prog.numInst()-1,new Y,true)}nop(){let B=this.newInst(f.NOP);return B.out=new Y(B.i<<1,B.i<<1),B}fail(){return new UB}cap(B){let e=this.newInst(f.CAPTURE);return e.out=new Y(e.i<<1,e.i<<1),this.prog.getInst(e.i).arg=B,this.prog.numCap<B+1&&(this.prog.numCap=B+1),e}cat(B,e){return B.i===0||e.i===0?this.fail():(this.prog.patch(B.out,e.i),new UB(B.i,e.out,B.nullable&&e.nullable))}alt(B,e){if(B.i===0)return e;if(e.i===0)return B;let t=this.newInst(f.ALT),i=this.prog.getInst(t.i);return i.out=B.i,i.arg=e.i,t.out=this.prog.append(B.out,e.out),t.nullable=B.nullable||e.nullable,t}loop(B,e){let t=this.newInst(f.ALT),i=this.prog.getInst(t.i);return e?(i.arg=B.i,t.out=new Y(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new Y(t.i<<1|1,t.i<<1|1)),this.prog.patch(B.out,t.i),t}quest(B,e){let t=this.newInst(f.ALT),i=this.prog.getInst(t.i);return e?(i.arg=B.i,t.out=new Y(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new Y(t.i<<1|1,t.i<<1|1)),t.out=this.prog.append(t.out,B.out),t}star(B,e){return B.nullable?this.quest(this.plus(B,e),e):this.loop(B,e)}plus(B,e){return new UB(B.i,this.loop(B,e).out,B.nullable)}empty(B){let e=this.newInst(f.EMPTY_WIDTH);return this.prog.getInst(e.i).arg=B,e.out=new Y(e.i<<1,e.i<<1),e}rune(B,e){let t=this.newInst(f.RUNE);t.nullable=false;let i=this.prog.getInst(t.i);return i.runes=B,e&=D.FOLD_CASE,(B.length!==1||m.simpleFold(B[0])===B[0])&&(e&=-2),i.arg=e,t.out=new Y(t.i<<1,t.i<<1),(e&D.FOLD_CASE)===0&&B.length===1||B.length===2&&B[0]===B[1]?i.op=f.RUNE1:B.length===2&&B[0]===0&&B[1]===m.MAX_RUNE?i.op=f.RUNE_ANY:B.length===4&&B[0]===0&&B[1]===E.CODES.get(`
10
9
  `)-1&&B[2]===E.CODES.get(`
11
- `)+1&&B[3]===m.MAX_RUNE&&(i.op=f.RUNE_ANY_NOT_NL),t}lookBehind(B,e){let t=this.newInst(f.LB_WRITE);this.prog.getInst(t.i).arg=e;let i=this.rune(cB.ANY_RUNE(),0),r=this.star(i,true),s=this.cat(r,B);this.prog.patch(s.out,t.i);let C=this.newInst(f.LB_CHECK);return this.prog.getInst(C.i).arg=e,this.prog.lbStarts.push(s.i),Math.abs(e)>this.prog.numLb&&(this.prog.numLb=Math.abs(e)),C.out=new Y(C.i<<1,C.i<<1),C}compile(B){switch(B.op){case h.Op.NO_MATCH:return this.fail();case h.Op.EMPTY_MATCH:return this.nop();case h.Op.LITERAL:if(B.runes.length===0)return this.nop();{let e=null;for(let t of B.runes){let i=this.rune([t],B.flags);e=e===null?i:this.cat(e,i);}return e}case h.Op.CHAR_CLASS:return this.rune(B.runes,B.flags);case h.Op.ANY_CHAR_NOT_NL:return this.rune(cB.ANY_RUNE_NOT_NL(),0);case h.Op.ANY_CHAR:return this.rune(cB.ANY_RUNE(),0);case h.Op.BEGIN_LINE:return this.empty(F.EMPTY_BEGIN_LINE);case h.Op.END_LINE:return this.empty(F.EMPTY_END_LINE);case h.Op.BEGIN_TEXT:return this.empty(F.EMPTY_BEGIN_TEXT);case h.Op.END_TEXT:return this.empty(F.EMPTY_END_TEXT);case h.Op.WORD_BOUNDARY:return this.empty(F.EMPTY_WORD_BOUNDARY);case h.Op.NO_WORD_BOUNDARY:return this.empty(F.EMPTY_NO_WORD_BOUNDARY);case h.Op.PLB:case h.Op.NLB:return this.lookBehind(this.compile(B.subs[0]),B.lb);case h.Op.CAPTURE:{let e=this.cap(B.cap<<1),t=this.compile(B.subs[0]),i=this.cap(B.cap<<1|1);return this.cat(this.cat(e,t),i)}case h.Op.STAR:return this.star(this.compile(B.subs[0]),(B.flags&D.NON_GREEDY)!==0);case h.Op.PLUS:return this.plus(this.compile(B.subs[0]),(B.flags&D.NON_GREEDY)!==0);case h.Op.QUEST:return this.quest(this.compile(B.subs[0]),(B.flags&D.NON_GREEDY)!==0);case h.Op.CONCAT:if(B.subs.length===0)return this.nop();{let e=null;for(let t of B.subs){let i=this.compile(t);e=e===null?i:this.cat(e,i);}return e}case h.Op.ALTERNATE:if(B.subs.length===0)return this.nop();{let e=null;for(let t of B.subs){let i=this.compile(t);e=e===null?i:this.alt(e,i);}return e}default:throw new xt("regexp: unhandled case in compile")}}},kt=class K{static simplify(B){if(B===null)return null;switch(B.op){case h.Op.PLB:case h.Op.NLB:case h.Op.CAPTURE:{let e=K.simplify(B.subs[0]);if(e!==B.subs[0]){let t=h.fromRegexp(B);return t.runes=[],t.subs=[e],t}return B}case h.Op.CONCAT:case h.Op.ALTERNATE:{let e=[],t=false;for(let i=0;i<B.subs.length;i++){let r=B.subs[i],s=K.simplify(r);if(s!==r&&(t=true),B.op===h.Op.CONCAT){if(s.op===h.Op.NO_MATCH)return new h(h.Op.NO_MATCH);if(s.op===h.Op.EMPTY_MATCH){t=true;continue}if(s.op===h.Op.CONCAT){t=true;for(let C=0;C<s.subs.length;C++)e.push(s.subs[C]);continue}}else if(B.op===h.Op.ALTERNATE){if(s.op===h.Op.NO_MATCH){t=true;continue}if(s.op===h.Op.ALTERNATE){t=true;for(let C=0;C<s.subs.length;C++)e.push(s.subs[C]);continue}}e.push(s);}if(t){if(e.length===0)return new h(B.op===h.Op.CONCAT?h.Op.EMPTY_MATCH:h.Op.NO_MATCH);if(e.length===1)return e[0];let i=h.fromRegexp(B);return i.runes=[],i.subs=e,i}return B}case h.Op.CHAR_CLASS:return B.runes===null?B:B.runes.length===0?new h(h.Op.NO_MATCH):B.runes.length===2&&B.runes[0]===0&&B.runes[1]===m.MAX_RUNE?new h(h.Op.ANY_CHAR):B.runes.length===4&&B.runes[0]===0&&B.runes[1]===E.CODES.get(`
10
+ `)+1&&B[3]===m.MAX_RUNE&&(i.op=f.RUNE_ANY_NOT_NL),t}lookBehind(B,e){let t=this.newInst(f.LB_WRITE);this.prog.getInst(t.i).arg=e;let i=this.rune(cB.ANY_RUNE(),0),r=this.star(i,true),s=this.cat(r,B);this.prog.patch(s.out,t.i);let C=this.newInst(f.LB_CHECK);return this.prog.getInst(C.i).arg=e,this.prog.lbStarts.push(s.i),Math.abs(e)>this.prog.numLb&&(this.prog.numLb=Math.abs(e)),C.out=new Y(C.i<<1,C.i<<1),C}compile(B){switch(B.op){case h.Op.NO_MATCH:return this.fail();case h.Op.EMPTY_MATCH:return this.nop();case h.Op.LITERAL:if(B.runes.length===0)return this.nop();{let e=null;for(let t of B.runes){let i=this.rune([t],B.flags);e=e===null?i:this.cat(e,i);}return e}case h.Op.CHAR_CLASS:return this.rune(B.runes,B.flags);case h.Op.ANY_CHAR_NOT_NL:return this.rune(cB.ANY_RUNE_NOT_NL(),0);case h.Op.ANY_CHAR:return this.rune(cB.ANY_RUNE(),0);case h.Op.BEGIN_LINE:return this.empty(I.EMPTY_BEGIN_LINE);case h.Op.END_LINE:return this.empty(I.EMPTY_END_LINE);case h.Op.BEGIN_TEXT:return this.empty(I.EMPTY_BEGIN_TEXT);case h.Op.END_TEXT:return this.empty(I.EMPTY_END_TEXT);case h.Op.WORD_BOUNDARY:return this.empty(I.EMPTY_WORD_BOUNDARY);case h.Op.NO_WORD_BOUNDARY:return this.empty(I.EMPTY_NO_WORD_BOUNDARY);case h.Op.PLB:case h.Op.NLB:return this.lookBehind(this.compile(B.subs[0]),B.lb);case h.Op.CAPTURE:{let e=this.cap(B.cap<<1),t=this.compile(B.subs[0]),i=this.cap(B.cap<<1|1);return this.cat(this.cat(e,t),i)}case h.Op.STAR:return this.star(this.compile(B.subs[0]),(B.flags&D.NON_GREEDY)!==0);case h.Op.PLUS:return this.plus(this.compile(B.subs[0]),(B.flags&D.NON_GREEDY)!==0);case h.Op.QUEST:return this.quest(this.compile(B.subs[0]),(B.flags&D.NON_GREEDY)!==0);case h.Op.CONCAT:if(B.subs.length===0)return this.nop();{let e=null;for(let t of B.subs){let i=this.compile(t);e=e===null?i:this.cat(e,i);}return e}case h.Op.ALTERNATE:if(B.subs.length===0)return this.nop();{let e=null;for(let t of B.subs){let i=this.compile(t);e=e===null?i:this.alt(e,i);}return e}default:throw new Ft("regexp: unhandled case in compile")}}},wt=class K{static simplify(B){if(B===null)return null;switch(B.op){case h.Op.PLB:case h.Op.NLB:case h.Op.CAPTURE:{let e=K.simplify(B.subs[0]);if(e!==B.subs[0]){let t=h.fromRegexp(B);return t.runes=[],t.subs=[e],t}return B}case h.Op.CONCAT:case h.Op.ALTERNATE:{let e=[],t=false;for(let i=0;i<B.subs.length;i++){let r=B.subs[i],s=K.simplify(r);if(s!==r&&(t=true),B.op===h.Op.CONCAT){if(s.op===h.Op.NO_MATCH)return new h(h.Op.NO_MATCH);if(s.op===h.Op.EMPTY_MATCH){t=true;continue}if(s.op===h.Op.CONCAT){t=true;for(let C=0;C<s.subs.length;C++)e.push(s.subs[C]);continue}}else if(B.op===h.Op.ALTERNATE){if(s.op===h.Op.NO_MATCH){t=true;continue}if(s.op===h.Op.ALTERNATE){t=true;for(let C=0;C<s.subs.length;C++)e.push(s.subs[C]);continue}}e.push(s);}if(t){if(e.length===0)return new h(B.op===h.Op.CONCAT?h.Op.EMPTY_MATCH:h.Op.NO_MATCH);if(e.length===1)return e[0];let i=h.fromRegexp(B);return i.runes=[],i.subs=e,i}return B}case h.Op.CHAR_CLASS:return B.runes===null?B:B.runes.length===0?new h(h.Op.NO_MATCH):B.runes.length===2&&B.runes[0]===0&&B.runes[1]===m.MAX_RUNE?new h(h.Op.ANY_CHAR):B.runes.length===4&&B.runes[0]===0&&B.runes[1]===E.CODES.get(`
12
11
  `)-1&&B.runes[2]===E.CODES.get(`
13
- `)+1&&B.runes[3]===m.MAX_RUNE?new h(h.Op.ANY_CHAR_NOT_NL):B;case h.Op.STAR:case h.Op.PLUS:case h.Op.QUEST:{let e=K.simplify(B.subs[0]);return K.simplify1(B.op,B.flags,e,B)}case h.Op.REPEAT:{if(B.min===0&&B.max===0)return new h(h.Op.EMPTY_MATCH);let e=K.simplify(B.subs[0]);if(B.max===-1){if(B.min===0)return K.simplify1(h.Op.STAR,B.flags,e,null);if(B.min===1)return K.simplify1(h.Op.PLUS,B.flags,e,null);let i=new h(h.Op.CONCAT),r=[];for(let s=0;s<B.min-1;s++)r.push(e);return r.push(K.simplify1(h.Op.PLUS,B.flags,e,null)),i.subs=r.slice(0),K.simplify(i)}if(B.min===1&&B.max===1)return e;let t=null;if(B.min>0){t=[];for(let i=0;i<B.min;i++)t.push(e);}if(B.max>B.min){let i=K.simplify1(h.Op.QUEST,B.flags,e,null);for(let r=B.min+1;r<B.max;r++){let s=new h(h.Op.CONCAT);s.subs=[e,i],i=K.simplify1(h.Op.QUEST,B.flags,s,null);}if(t===null)return i;t.push(i);}if(t!==null){let i=new h(h.Op.CONCAT);return i.subs=t.slice(0),K.simplify(i)}return new h(h.Op.NO_MATCH)}}return B}static simplify1(B,e,t,i){if(t.op===h.Op.EMPTY_MATCH)return t;if(t.op===h.Op.NO_MATCH)return B===h.Op.PLUS?t:new h(h.Op.EMPTY_MATCH);if(B===t.op&&(e&D.NON_GREEDY)===(t.flags&D.NON_GREEDY))return t;if(i!==null&&i.op===B&&(i.flags&D.NON_GREEDY)===(e&D.NON_GREEDY)&&t===i.subs[0])return i;let r=new h(B);return r.flags=e,r.subs=[t],r}},w=class{constructor(n,B){this.sign=n,this.cls=B;}},lt=[48,57],ut=[9,10,12,13,32,32],ct=[48,57,65,90,95,95,97,122],ht=new Map([["\\d",new w(1,lt)],["\\D",new w(-1,lt)],["\\s",new w(1,ut)],["\\S",new w(-1,ut)],["\\w",new w(1,ct)],["\\W",new w(-1,ct)]]),pt=[48,57,65,90,97,122],Et=[65,90,97,122],ft=[0,127],Dt=[9,9,32,32],gt=[0,31,127,127],dt=[48,57],mt=[33,126],Ot=[97,122],It=[32,126],Ft=[33,47,58,64,91,96,123,126],St=[9,13,32,32],At=[65,90],Nt=[48,57,65,90,95,95,97,122],Rt=[48,57,65,70,97,102],Tt=new Map([["[:alnum:]",new w(1,pt)],["[:^alnum:]",new w(-1,pt)],["[:alpha:]",new w(1,Et)],["[:^alpha:]",new w(-1,Et)],["[:ascii:]",new w(1,ft)],["[:^ascii:]",new w(-1,ft)],["[:blank:]",new w(1,Dt)],["[:^blank:]",new w(-1,Dt)],["[:cntrl:]",new w(1,gt)],["[:^cntrl:]",new w(-1,gt)],["[:digit:]",new w(1,dt)],["[:^digit:]",new w(-1,dt)],["[:graph:]",new w(1,mt)],["[:^graph:]",new w(-1,mt)],["[:lower:]",new w(1,Ot)],["[:^lower:]",new w(-1,Ot)],["[:print:]",new w(1,It)],["[:^print:]",new w(-1,It)],["[:punct:]",new w(1,Ft)],["[:^punct:]",new w(-1,Ft)],["[:space:]",new w(1,St)],["[:^space:]",new w(-1,St)],["[:upper:]",new w(1,At)],["[:^upper:]",new w(-1,At)],["[:word:]",new w(1,Nt)],["[:^word:]",new w(-1,Nt)],["[:xdigit:]",new w(1,Rt)],["[:^xdigit:]",new w(-1,Rt)]]),rB=class sB{static charClassToString(B,e){let t="[";for(let i=0;i<e;i+=2){i>0&&(t+=" ");let r=B[i],s=B[i+1];r===s?t+=`0x${r.toString(16)}`:t+=`0x${r.toString(16)}-0x${s.toString(16)}`;}return t+="]",t}static cmp(B,e,t,i){let r=B[e]-t;return r!==0?r:i-B[e+1]}static qsortIntPair(B,e,t){let i=((e+t)/2|0)&-2,r=B[i],s=B[i+1],C=e,o=t;for(;C<=o;){for(;C<t&&sB.cmp(B,C,r,s)<0;)C+=2;for(;o>e&&sB.cmp(B,o,r,s)>0;)o-=2;if(C<=o){if(C!==o){let u=B[C];B[C]=B[o],B[o]=u,u=B[C+1],B[C+1]=B[o+1],B[o+1]=u;}C+=2,o-=2;}}e<o&&sB.qsortIntPair(B,e,o),C<t&&sB.qsortIntPair(B,C,t);}constructor(B=F.emptyInts()){this.r=B,this.len=B.length;}toArray(){return this.len===this.r.length?this.r:this.r.slice(0,this.len)}cleanClass(){if(this.len<4)return this;sB.qsortIntPair(this.r,0,this.len-2);let B=2;for(let e=2;e<this.len;e+=2){let t=this.r[e],i=this.r[e+1];if(t<=this.r[B-1]+1){i>this.r[B-1]&&(this.r[B-1]=i);continue}this.r[B]=t,this.r[B+1]=i,B+=2;}return this.len=B,this}appendLiteral(B,e){return (e&D.FOLD_CASE)!==0?this.appendFoldedRange(B,B):this.appendRange(B,B)}appendRange(B,e){if(this.len>0){for(let t=2;t<=4;t+=2)if(this.len>=t){let i=this.r[this.len-t],r=this.r[this.len-t+1];if(B<=r+1&&i<=e+1)return B<i&&(this.r[this.len-t]=B),e>r&&(this.r[this.len-t+1]=e),this}}return this.r[this.len++]=B,this.r[this.len++]=e,this}appendFoldedRange(B,e){if(B<=m.MIN_FOLD&&e>=m.MAX_FOLD)return this.appendRange(B,e);if(e<m.MIN_FOLD||B>m.MAX_FOLD)return this.appendRange(B,e);B<m.MIN_FOLD&&(this.appendRange(B,m.MIN_FOLD-1),B=m.MIN_FOLD),e>m.MAX_FOLD&&(this.appendRange(m.MAX_FOLD+1,e),e=m.MAX_FOLD);for(let t=B;t<=e;t++){this.appendRange(t,t);for(let i=m.simpleFold(t);i!==t;i=m.simpleFold(i))this.appendRange(i,i);}return this}appendClass(B){for(let e=0;e<B.length;e+=2)this.appendRange(B[e],B[e+1]);return this}appendFoldedClass(B){for(let e=0;e<B.length;e+=2)this.appendFoldedRange(B[e],B[e+1]);return this}appendNegatedClass(B){let e=0;for(let t=0;t<B.length;t+=2){let i=B[t],r=B[t+1];e<=i-1&&this.appendRange(e,i-1),e=r+1;}return e<=m.MAX_RUNE&&this.appendRange(e,m.MAX_RUNE),this}appendTable(B){for(let e=0;e<B.length;++e){let t=B.getLo(e),i=B.getHi(e),r=B.getStride(e);if(r===1){this.appendRange(t,i);continue}for(let s=t;s<=i;s+=r)this.appendRange(s,s);}return this}appendNegatedTable(B){let e=0;for(let t=0;t<B.length;++t){let i=B.getLo(t),r=B.getHi(t),s=B.getStride(t);if(s===1){e<=i-1&&this.appendRange(e,i-1),e=r+1;continue}for(let C=i;C<=r;C+=s)e<=C-1&&this.appendRange(e,C-1),e=C+1;}return e<=m.MAX_RUNE&&this.appendRange(e,m.MAX_RUNE),this}appendTableWithSign(B,e){return e<0?this.appendNegatedTable(B):this.appendTable(B)}negateClass(){let B=0,e=0;for(let t=0;t<this.len;t+=2){let i=this.r[t],r=this.r[t+1];B<=i-1&&(this.r[e]=B,this.r[e+1]=i-1,e+=2),B=r+1;}return this.len=e,B<=m.MAX_RUNE&&(this.r[this.len++]=B,this.r[this.len++]=m.MAX_RUNE),this}appendClassWithSign(B,e){return e<0?this.appendNegatedClass(B):this.appendClass(B)}appendGroup(B,e){let t=B.cls;return e&&(t=new sB().appendFoldedClass(t).cleanClass().toArray()),this.appendClassWithSign(t,B.sign)}toString(){return sB.charClassToString(this.r,this.len)}},Ni=class{constructor(n){this.str=n,this.position=0;}pos(){return this.position}rewindTo(n){this.position=n;}more(){return this.position<this.str.length}peek(){return this.str.codePointAt(this.position)}skip(n){this.position+=n;}skipString(n){this.position+=n.length;}pop(){let n=this.str.codePointAt(this.position);return this.position+=F.charCount(n),n}lookingAt(n){return this.str.startsWith(n,this.position)}rest(){return this.str.substring(this.position)}from(n){return this.str.substring(n,this.position)}toString(){return this.rest()}},Ut=class I{static ERR_INTERNAL_ERROR="regexp/syntax: internal error";static ERR_INVALID_CHAR_RANGE="invalid character class range";static ERR_INVALID_ESCAPE="invalid escape sequence";static ERR_INVALID_NAMED_CAPTURE="invalid named capture";static ERR_INVALID_PERL_OP="invalid or unsupported Perl syntax";static ERR_INVALID_REPEAT_OP="invalid nested repetition operator";static ERR_INVALID_REPEAT_SIZE="invalid repeat count";static ERR_MISSING_BRACKET="missing closing ]";static ERR_MISSING_PAREN="missing closing )";static ERR_MISSING_REPEAT_ARGUMENT="missing argument to repetition operator";static ERR_TRAILING_BACKSLASH="trailing backslash at end of expression";static ERR_DUPLICATE_NAMED_CAPTURE="duplicate capture group name";static ERR_UNEXPECTED_PAREN="unexpected )";static ERR_NESTING_DEPTH="expression nests too deeply";static ERR_LARGE="expression too large";static ERR_INVALID_CAPTURE_IN_LOOKBEHIND="invalid capture in lookbehind";static MAX_HEIGHT=1e3;static MAX_SIZE=3355443;static MAX_RUNES=33554432;static ANY_TABLE=new a(new Uint32Array([0,m.MAX_RUNE,1]));static ASCII_TABLE=new a(new Uint32Array([0,127,1]));static ASCII_FOLD_TABLE=new a(new Uint32Array([0,127,1,383,383,1,8490,8490,1]));static unicodeTable(B){return B==="Any"?{tab:I.ANY_TABLE,fold:I.ANY_TABLE,sign:1}:B==="Ascii"?{tab:I.ASCII_TABLE,fold:I.ASCII_FOLD_TABLE,sign:1}:B==="Assigned"?{tab:v.CATEGORIES.get("Cn"),fold:v.CATEGORIES.get("Cn"),sign:-1}:B==="Lc"?{tab:v.CATEGORIES.get("LC"),fold:v.FOLD_CATEGORIES.get("LC"),sign:1}:v.CATEGORIES.has(B)?{tab:v.CATEGORIES.get(B),fold:v.FOLD_CATEGORIES.get(B),sign:1}:v.SCRIPTS.has(B)?{tab:v.SCRIPTS.get(B),fold:v.FOLD_SCRIPT.get(B),sign:1}:null}static minFoldRune(B){if(B<m.MIN_FOLD||B>m.MAX_FOLD)return B;let e=B,t=B;for(B=m.simpleFold(B);B!==t;B=m.simpleFold(B))e>B&&(e=B);return e}static leadingRegexp(B){if(B.op===h.Op.EMPTY_MATCH)return null;if(B.op===h.Op.CONCAT&&B.subs.length>0){let e=B.subs[0];return e.op===h.Op.EMPTY_MATCH?null:e}return B}static literalRegexp(B,e){let t=new h(h.Op.LITERAL);return t.flags=e,t.runes=F.stringToRunes(B),t}static parse(B,e){return new I(B,e).parseInternal()}static parseRepeat(B){let e=B.pos();if(!B.more()||!B.lookingAt("{"))return -1;B.skip(1);let t=I.parseInt(B);if(t===-1||!B.more())return -1;let i;if(!B.lookingAt(","))i=t;else {if(B.skip(1),!B.more())return -1;if(B.lookingAt("}"))i=-1;else if((i=I.parseInt(B))===-1)return -1}if(!B.more()||!B.lookingAt("}"))return -1;if(B.skip(1),t<0||t>1e3||i===-2||i>1e3||i>=0&&t>i)throw new H(I.ERR_INVALID_REPEAT_SIZE,B.from(e));return t<<16|i&m.MAX_BMP}static isValidCaptureName(B){if(B.length===0)return false;for(let e=0;e<B.length;e++){let t=B.codePointAt(e);if(t!==E.CODES.get("_")&&!F.isalnum(t))return false}return true}static parseInt(B){let e=B.pos();for(;B.more()&&B.peek()>=E.CODES.get("0")&&B.peek()<=E.CODES.get("9");)B.skip(1);let t=B.from(e);return t.length===0||t.length>1&&t.codePointAt(0)===E.CODES.get("0")?-1:t.length>8?-2:parseInt(t,10)}static isCharClass(B){return B.op===h.Op.LITERAL&&B.runes.length===1||B.op===h.Op.CHAR_CLASS||B.op===h.Op.ANY_CHAR_NOT_NL||B.op===h.Op.ANY_CHAR}static matchRune(B,e){switch(B.op){case h.Op.LITERAL:return B.runes.length===1&&B.runes[0]===e;case h.Op.CHAR_CLASS:for(let t=0;t<B.runes.length;t+=2)if(B.runes[t]<=e&&e<=B.runes[t+1])return true;return false;case h.Op.ANY_CHAR_NOT_NL:return e!==E.CODES.get(`
14
- `);case h.Op.ANY_CHAR:return true}return false}static mergeCharClass(B,e){switch(B.op){case h.Op.ANY_CHAR:break;case h.Op.ANY_CHAR_NOT_NL:I.matchRune(e,E.CODES.get(`
15
- `))&&(B.op=h.Op.ANY_CHAR);break;case h.Op.CHAR_CLASS:e.op===h.Op.LITERAL?B.runes=new rB(B.runes).appendLiteral(e.runes[0],e.flags).toArray():B.runes=new rB(B.runes).appendClass(e.runes).toArray();break;case h.Op.LITERAL:if(e.runes[0]===B.runes[0]&&e.flags===B.flags)break;B.op=h.Op.CHAR_CLASS,B.runes=new rB().appendLiteral(B.runes[0],B.flags).appendLiteral(e.runes[0],e.flags).toArray();break}}static parseEscape(B){let e=B.pos();if(B.skip(1),!B.more())throw new H(I.ERR_TRAILING_BACKSLASH);let t=B.pop();B:switch(t){case E.CODES.get("1"):case E.CODES.get("2"):case E.CODES.get("3"):case E.CODES.get("4"):case E.CODES.get("5"):case E.CODES.get("6"):case E.CODES.get("7"):if(!B.more()||B.peek()<E.CODES.get("0")||B.peek()>E.CODES.get("7"))break;case E.CODES.get("0"):{let i=t-E.CODES.get("0");for(let r=1;r<3&&!(!B.more()||B.peek()<E.CODES.get("0")||B.peek()>E.CODES.get("7"));r++)i=i*8+B.peek()-E.CODES.get("0"),B.skip(1);return i}case E.CODES.get("x"):{if(!B.more())break;if(t=B.pop(),t===E.CODES.get("{")){let s=0,C=0;for(;;){if(!B.more())break B;if(t=B.pop(),t===E.CODES.get("}"))break;let o=F.unhex(t);if(o<0||(C=C*16+o,C>m.MAX_RUNE))break B;s++;}if(s===0)break B;return C}let i=F.unhex(t);if(!B.more())break;t=B.pop();let r=F.unhex(t);if(i<0||r<0)break;return i*16+r}case E.CODES.get("a"):return E.CODES.get("\x07");case E.CODES.get("f"):return E.CODES.get("\f");case E.CODES.get("n"):return E.CODES.get(`
16
- `);case E.CODES.get("r"):return E.CODES.get("\r");case E.CODES.get("t"):return E.CODES.get(" ");case E.CODES.get("v"):return E.CODES.get("\v");default:if(t<=m.MAX_ASCII&&!F.isalnum(t))return t;break}throw new H(I.ERR_INVALID_ESCAPE,B.from(e))}static parseClassChar(B,e){if(!B.more())throw new H(I.ERR_MISSING_BRACKET,B.from(e));return B.lookingAt("\\")?I.parseEscape(B):B.pop()}static concatRunes(B,e){for(let t=0;t<e.length;t++)B.push(e[t]);return B}static hasCapture(B){if(B===null)return false;if(B.op===h.Op.CAPTURE)return true;if(B.subs){for(let e of B.subs)if(I.hasCapture(e))return true}return false}constructor(B,e=0){this.wholeRegexp=B,this.flags=e,this.numCap=0,this.namedGroups=Object.create(null),this.stack=[],this.free=null,this.numRegexp=0,this.numRunes=0,this.repeats=0,this.height=null,this.size=null,this.nlb=0;}newRegexp(B){let e=this.free;return e!==null&&e.subs!==null&&e.subs.length>0?(this.free=e.subs[0],e.reinit(),e.op=B):(e=new h(B),this.numRegexp+=1),e}reuse(B){this.height!==null&&this.height.has(B)&&this.height.delete(B),B.subs!==null&&B.subs.length>0&&(B.subs[0]=this.free),this.free=B;}checkLimits(B){if(this.numRunes>I.MAX_RUNES)throw new H(I.ERR_LARGE);this.checkSize(B),this.checkHeight(B);}checkSize(B){if(this.size===null){if(this.repeats===0&&(this.repeats=1),B.op===h.Op.REPEAT){let e=B.max;e===-1&&(e=B.min),e<=0&&(e=1),e>Math.floor(I.MAX_SIZE/this.repeats)?this.repeats=I.MAX_SIZE:this.repeats*=e;}if(this.numRegexp<Math.floor(I.MAX_SIZE/this.repeats))return;this.size=new Map;for(let e of this.stack)this.checkSize(e);}if(this.calcSize(B,true)>I.MAX_SIZE)throw new H(I.ERR_LARGE)}calcSize(B,e=false){if(!e&&this.size!==null&&this.size.has(B))return this.size.get(B);let t=0;switch(B.op){case h.Op.LITERAL:t=B.runes.length;break;case h.Op.PLB:case h.Op.NLB:case h.Op.CAPTURE:case h.Op.STAR:t=2+this.calcSize(B.subs[0]);break;case h.Op.PLUS:case h.Op.QUEST:t=1+this.calcSize(B.subs[0]);break;case h.Op.CONCAT:for(let i of B.subs)t=t+this.calcSize(i);break;case h.Op.ALTERNATE:for(let i of B.subs)t=t+this.calcSize(i);B.subs.length>1&&(t=t+B.subs.length-1);break;case h.Op.REPEAT:{let i=this.calcSize(B.subs[0]);if(B.max===-1){B.min===0?t=2+i:t=1+B.min*i;break}t=B.max*i+(B.max-B.min);break}}return t=Math.max(1,t),this.size===null&&(this.size=new Map),this.size.set(B,t),t}checkHeight(B){if(!(this.numRegexp<I.MAX_HEIGHT)){if(this.height===null){this.height=new Map;for(let e of this.stack)this.checkHeight(e);}if(this.calcHeight(B,true)>I.MAX_HEIGHT)throw new H(I.ERR_NESTING_DEPTH)}}calcHeight(B,e=false){if(!e&&this.height!==null&&this.height.has(B))return this.height.get(B);let t=1;for(let i of B.subs){let r=this.calcHeight(i);t<1+r&&(t=1+r);}return this.height===null&&(this.height=new Map),this.height.set(B,t),t}pop(){return this.stack.pop()}popToPseudo(){let B=this.stack.length,e=B;for(;e>0&&!h.isPseudoOp(this.stack[e-1].op);)e--;let t=this.stack.slice(e,B);return this.stack=this.stack.slice(0,e),t}push(B){if(this.numRunes+=B.runes.length,B.op===h.Op.CHAR_CLASS&&B.runes.length===2&&B.runes[0]===B.runes[1]){if(this.maybeConcat(B.runes[0],this.flags&-2))return null;B.op=h.Op.LITERAL,B.runes=[B.runes[0]],B.flags=this.flags&-2;}else if(B.op===h.Op.CHAR_CLASS&&B.runes.length===4&&B.runes[0]===B.runes[1]&&B.runes[2]===B.runes[3]&&m.simpleFold(B.runes[0])===B.runes[2]&&m.simpleFold(B.runes[2])===B.runes[0]||B.op===h.Op.CHAR_CLASS&&B.runes.length===2&&B.runes[0]+1===B.runes[1]&&m.simpleFold(B.runes[0])===B.runes[1]&&m.simpleFold(B.runes[1])===B.runes[0]){if(this.maybeConcat(B.runes[0],this.flags|D.FOLD_CASE))return null;B.op=h.Op.LITERAL,B.runes=[B.runes[0]],B.flags=this.flags|D.FOLD_CASE;}else this.maybeConcat(-1,0);return this.stack.push(B),this.checkLimits(B),B}maybeConcat(B,e){let t=this.stack.length;if(t<2)return false;let i=this.stack[t-1],r=this.stack[t-2];return i.op!==h.Op.LITERAL||r.op!==h.Op.LITERAL||(i.flags&D.FOLD_CASE)!==(r.flags&D.FOLD_CASE)?false:(r.runes=I.concatRunes(r.runes,i.runes),B>=0?(i.runes=[B],i.flags=e,true):(this.pop(),this.reuse(i),false))}newLiteral(B,e){let t=this.newRegexp(h.Op.LITERAL);return t.flags=e,(e&D.FOLD_CASE)!==0&&(B=I.minFoldRune(B)),t.runes=[B],t}literal(B){this.push(this.newLiteral(B,this.flags));}op(B){let e=this.newRegexp(B);return e.flags=this.flags,this.push(e)}repeat(B,e,t,i,r,s){let C=this.flags;if((C&D.PERL_X)!==0&&(r.more()&&r.lookingAt("?")&&(r.skip(1),C^=D.NON_GREEDY),s!==-1))throw new H(I.ERR_INVALID_REPEAT_OP,r.from(s));let o=this.stack.length;if(o===0)throw new H(I.ERR_MISSING_REPEAT_ARGUMENT,r.from(i));let u=this.stack[o-1];if(h.isPseudoOp(u.op))throw new H(I.ERR_MISSING_REPEAT_ARGUMENT,r.from(i));let c=this.newRegexp(B);if(c.min=e,c.max=t,c.flags=C,c.subs=[u],this.stack[o-1]=c,this.checkLimits(c),B===h.Op.REPEAT&&(e>=2||t>=2)&&!this.repeatIsValid(c,1e3))throw new H(I.ERR_INVALID_REPEAT_SIZE,r.from(i))}repeatIsValid(B,e){if(B.op===h.Op.REPEAT){let t=B.max;if(t===0)return true;if(t<0&&(t=B.min),t>e)return false;t>0&&(e=Math.trunc(e/t));}for(let t of B.subs)if(!this.repeatIsValid(t,e))return false;return true}concat(){this.maybeConcat(-1,0);let B=this.popToPseudo();return B.length===0?this.push(this.newRegexp(h.Op.EMPTY_MATCH)):this.push(this.collapse(B,h.Op.CONCAT))}alternate(){let B=this.popToPseudo();return B.length>0&&this.cleanAlt(B[B.length-1]),B.length===0?this.push(this.newRegexp(h.Op.NO_MATCH)):this.push(this.collapse(B,h.Op.ALTERNATE))}cleanAlt(B){B.op===h.Op.CHAR_CLASS&&(B.runes=new rB(B.runes).cleanClass().toArray(),B.runes.length===2&&B.runes[0]===0&&B.runes[1]===m.MAX_RUNE?(B.runes=[],B.op=h.Op.ANY_CHAR):B.runes.length===4&&B.runes[0]===0&&B.runes[1]===E.CODES.get(`
12
+ `)+1&&B.runes[3]===m.MAX_RUNE?new h(h.Op.ANY_CHAR_NOT_NL):B;case h.Op.STAR:case h.Op.PLUS:case h.Op.QUEST:{let e=K.simplify(B.subs[0]);return K.simplify1(B.op,B.flags,e,B)}case h.Op.REPEAT:{if(B.min===0&&B.max===0)return new h(h.Op.EMPTY_MATCH);let e=K.simplify(B.subs[0]);if(B.max===-1){if(B.min===0)return K.simplify1(h.Op.STAR,B.flags,e,null);if(B.min===1)return K.simplify1(h.Op.PLUS,B.flags,e,null);let i=new h(h.Op.CONCAT),r=[];for(let s=0;s<B.min-1;s++)r.push(e);return r.push(K.simplify1(h.Op.PLUS,B.flags,e,null)),i.subs=r.slice(0),K.simplify(i)}if(B.min===1&&B.max===1)return e;let t=null;if(B.min>0){t=[];for(let i=0;i<B.min;i++)t.push(e);}if(B.max>B.min){let i=K.simplify1(h.Op.QUEST,B.flags,e,null);for(let r=B.min+1;r<B.max;r++){let s=new h(h.Op.CONCAT);s.subs=[e,i],i=K.simplify1(h.Op.QUEST,B.flags,s,null);}if(t===null)return i;t.push(i);}if(t!==null){let i=new h(h.Op.CONCAT);return i.subs=t.slice(0),K.simplify(i)}return new h(h.Op.NO_MATCH)}}return B}static simplify1(B,e,t,i){if(t.op===h.Op.EMPTY_MATCH)return t;if(t.op===h.Op.NO_MATCH)return B===h.Op.PLUS?t:new h(h.Op.EMPTY_MATCH);if(B===t.op&&(e&D.NON_GREEDY)===(t.flags&D.NON_GREEDY))return t;if(i!==null&&i.op===B&&(i.flags&D.NON_GREEDY)===(e&D.NON_GREEDY)&&t===i.subs[0])return i;let r=new h(B);return r.flags=e,r.subs=[t],r}},w=class{constructor(n,B){this.sign=n,this.cls=B;}},et=[48,57],tt=[9,10,12,13,32,32],nt=[48,57,65,90,95,95,97,122],it=new Map([["\\d",new w(1,et)],["\\D",new w(-1,et)],["\\s",new w(1,tt)],["\\S",new w(-1,tt)],["\\w",new w(1,nt)],["\\W",new w(-1,nt)]]),rt=[48,57,65,90,97,122],st=[65,90,97,122],Ct=[0,127],ot=[9,9,32,32],at=[0,31,127,127],lt=[48,57],ut=[33,126],ct=[97,122],ht=[32,126],pt=[33,47,58,64,91,96,123,126],Et=[9,13,32,32],ft=[65,90],Dt=[48,57,65,90,95,95,97,122],gt=[48,57,65,70,97,102],dt=new Map([["[:alnum:]",new w(1,rt)],["[:^alnum:]",new w(-1,rt)],["[:alpha:]",new w(1,st)],["[:^alpha:]",new w(-1,st)],["[:ascii:]",new w(1,Ct)],["[:^ascii:]",new w(-1,Ct)],["[:blank:]",new w(1,ot)],["[:^blank:]",new w(-1,ot)],["[:cntrl:]",new w(1,at)],["[:^cntrl:]",new w(-1,at)],["[:digit:]",new w(1,lt)],["[:^digit:]",new w(-1,lt)],["[:graph:]",new w(1,ut)],["[:^graph:]",new w(-1,ut)],["[:lower:]",new w(1,ct)],["[:^lower:]",new w(-1,ct)],["[:print:]",new w(1,ht)],["[:^print:]",new w(-1,ht)],["[:punct:]",new w(1,pt)],["[:^punct:]",new w(-1,pt)],["[:space:]",new w(1,Et)],["[:^space:]",new w(-1,Et)],["[:upper:]",new w(1,ft)],["[:^upper:]",new w(-1,ft)],["[:word:]",new w(1,Dt)],["[:^word:]",new w(-1,Dt)],["[:xdigit:]",new w(1,gt)],["[:^xdigit:]",new w(-1,gt)]]),rB=class sB{static charClassToString(B,e){let t="[";for(let i=0;i<e;i+=2){i>0&&(t+=" ");let r=B[i],s=B[i+1];r===s?t+=`0x${r.toString(16)}`:t+=`0x${r.toString(16)}-0x${s.toString(16)}`;}return t+="]",t}static cmp(B,e,t,i){let r=B[e]-t;return r!==0?r:i-B[e+1]}static qsortIntPair(B,e,t){let i=((e+t)/2|0)&-2,r=B[i],s=B[i+1],C=e,o=t;for(;C<=o;){for(;C<t&&sB.cmp(B,C,r,s)<0;)C+=2;for(;o>e&&sB.cmp(B,o,r,s)>0;)o-=2;if(C<=o){if(C!==o){let u=B[C];B[C]=B[o],B[o]=u,u=B[C+1],B[C+1]=B[o+1],B[o+1]=u;}C+=2,o-=2;}}e<o&&sB.qsortIntPair(B,e,o),C<t&&sB.qsortIntPair(B,C,t);}constructor(B=I.emptyInts()){this.r=B,this.len=B.length;}toArray(){return this.len===this.r.length?this.r:this.r.slice(0,this.len)}cleanClass(){if(this.len<4)return this;sB.qsortIntPair(this.r,0,this.len-2);let B=2;for(let e=2;e<this.len;e+=2){let t=this.r[e],i=this.r[e+1];if(t<=this.r[B-1]+1){i>this.r[B-1]&&(this.r[B-1]=i);continue}this.r[B]=t,this.r[B+1]=i,B+=2;}return this.len=B,this}appendLiteral(B,e){return (e&D.FOLD_CASE)!==0?this.appendFoldedRange(B,B):this.appendRange(B,B)}appendRange(B,e){if(this.len>0){for(let t=2;t<=4;t+=2)if(this.len>=t){let i=this.r[this.len-t],r=this.r[this.len-t+1];if(B<=r+1&&i<=e+1)return B<i&&(this.r[this.len-t]=B),e>r&&(this.r[this.len-t+1]=e),this}}return this.r[this.len++]=B,this.r[this.len++]=e,this}appendFoldedRange(B,e){if(B<=m.MIN_FOLD&&e>=m.MAX_FOLD)return this.appendRange(B,e);if(e<m.MIN_FOLD||B>m.MAX_FOLD)return this.appendRange(B,e);B<m.MIN_FOLD&&(this.appendRange(B,m.MIN_FOLD-1),B=m.MIN_FOLD),e>m.MAX_FOLD&&(this.appendRange(m.MAX_FOLD+1,e),e=m.MAX_FOLD);for(let t=B;t<=e;t++){this.appendRange(t,t);for(let i=m.simpleFold(t);i!==t;i=m.simpleFold(i))this.appendRange(i,i);}return this}appendClass(B){for(let e=0;e<B.length;e+=2)this.appendRange(B[e],B[e+1]);return this}appendFoldedClass(B){for(let e=0;e<B.length;e+=2)this.appendFoldedRange(B[e],B[e+1]);return this}appendNegatedClass(B){let e=0;for(let t=0;t<B.length;t+=2){let i=B[t],r=B[t+1];e<=i-1&&this.appendRange(e,i-1),e=r+1;}return e<=m.MAX_RUNE&&this.appendRange(e,m.MAX_RUNE),this}appendTable(B){for(let e=0;e<B.length;++e){let t=B.getLo(e),i=B.getHi(e),r=B.getStride(e);if(r===1){this.appendRange(t,i);continue}for(let s=t;s<=i;s+=r)this.appendRange(s,s);}return this}appendNegatedTable(B){let e=0;for(let t=0;t<B.length;++t){let i=B.getLo(t),r=B.getHi(t),s=B.getStride(t);if(s===1){e<=i-1&&this.appendRange(e,i-1),e=r+1;continue}for(let C=i;C<=r;C+=s)e<=C-1&&this.appendRange(e,C-1),e=C+1;}return e<=m.MAX_RUNE&&this.appendRange(e,m.MAX_RUNE),this}appendTableWithSign(B,e){return e<0?this.appendNegatedTable(B):this.appendTable(B)}negateClass(){let B=0,e=0;for(let t=0;t<this.len;t+=2){let i=this.r[t],r=this.r[t+1];B<=i-1&&(this.r[e]=B,this.r[e+1]=i-1,e+=2),B=r+1;}return this.len=e,B<=m.MAX_RUNE&&(this.r[this.len++]=B,this.r[this.len++]=m.MAX_RUNE),this}appendClassWithSign(B,e){return e<0?this.appendNegatedClass(B):this.appendClass(B)}appendGroup(B,e){let t=B.cls;return e&&(t=new sB().appendFoldedClass(t).cleanClass().toArray()),this.appendClassWithSign(t,B.sign)}toString(){return sB.charClassToString(this.r,this.len)}},ti=class{constructor(n){this.str=n,this.position=0;}pos(){return this.position}rewindTo(n){this.position=n;}more(){return this.position<this.str.length}peek(){return this.str.codePointAt(this.position)}skip(n){this.position+=n;}skipString(n){this.position+=n.length;}pop(){let n=this.str.codePointAt(this.position);return this.position+=I.charCount(n),n}lookingAt(n){return this.str.startsWith(n,this.position)}rest(){return this.str.substring(this.position)}from(n){return this.str.substring(n,this.position)}toString(){return this.rest()}},yt=class S{static ERR_INTERNAL_ERROR="regexp/syntax: internal error";static ERR_INVALID_CHAR_RANGE="invalid character class range";static ERR_INVALID_ESCAPE="invalid escape sequence";static ERR_INVALID_NAMED_CAPTURE="invalid named capture";static ERR_INVALID_PERL_OP="invalid or unsupported Perl syntax";static ERR_INVALID_REPEAT_OP="invalid nested repetition operator";static ERR_INVALID_REPEAT_SIZE="invalid repeat count";static ERR_MISSING_BRACKET="missing closing ]";static ERR_MISSING_PAREN="missing closing )";static ERR_MISSING_REPEAT_ARGUMENT="missing argument to repetition operator";static ERR_TRAILING_BACKSLASH="trailing backslash at end of expression";static ERR_DUPLICATE_NAMED_CAPTURE="duplicate capture group name";static ERR_UNEXPECTED_PAREN="unexpected )";static ERR_NESTING_DEPTH="expression nests too deeply";static ERR_LARGE="expression too large";static ERR_INVALID_CAPTURE_IN_LOOKBEHIND="invalid capture in lookbehind";static MAX_HEIGHT=1e3;static MAX_SIZE=3355443;static MAX_RUNES=33554432;static ANY_TABLE=new a(new Uint32Array([0,m.MAX_RUNE,1]));static ASCII_TABLE=new a(new Uint32Array([0,127,1]));static ASCII_FOLD_TABLE=new a(new Uint32Array([0,127,1,383,383,1,8490,8490,1]));static unicodeTable(B){return B==="Any"?{tab:S.ANY_TABLE,fold:S.ANY_TABLE,sign:1}:B==="Ascii"?{tab:S.ASCII_TABLE,fold:S.ASCII_FOLD_TABLE,sign:1}:B==="Assigned"?{tab:v.CATEGORIES.get("Cn"),fold:v.CATEGORIES.get("Cn"),sign:-1}:B==="Lc"?{tab:v.CATEGORIES.get("LC"),fold:v.FOLD_CATEGORIES.get("LC"),sign:1}:v.CATEGORIES.has(B)?{tab:v.CATEGORIES.get(B),fold:v.FOLD_CATEGORIES.get(B),sign:1}:v.SCRIPTS.has(B)?{tab:v.SCRIPTS.get(B),fold:v.FOLD_SCRIPT.get(B),sign:1}:null}static minFoldRune(B){if(B<m.MIN_FOLD||B>m.MAX_FOLD)return B;let e=B,t=B;for(B=m.simpleFold(B);B!==t;B=m.simpleFold(B))e>B&&(e=B);return e}static leadingRegexp(B){if(B.op===h.Op.EMPTY_MATCH)return null;if(B.op===h.Op.CONCAT&&B.subs.length>0){let e=B.subs[0];return e.op===h.Op.EMPTY_MATCH?null:e}return B}static literalRegexp(B,e){let t=new h(h.Op.LITERAL);return t.flags=e,t.runes=I.stringToRunes(B),t}static parse(B,e){return new S(B,e).parseInternal()}static parseRepeat(B){let e=B.pos();if(!B.more()||!B.lookingAt("{"))return -1;B.skip(1);let t=S.parseInt(B);if(t===-1||!B.more())return -1;let i;if(!B.lookingAt(","))i=t;else {if(B.skip(1),!B.more())return -1;if(B.lookingAt("}"))i=-1;else if((i=S.parseInt(B))===-1)return -1}if(!B.more()||!B.lookingAt("}"))return -1;if(B.skip(1),t<0||t>1e3||i===-2||i>1e3||i>=0&&t>i)throw new _(S.ERR_INVALID_REPEAT_SIZE,B.from(e));return t<<16|i&m.MAX_BMP}static isValidCaptureName(B){if(B.length===0)return false;for(let e=0;e<B.length;e++){let t=B.codePointAt(e);if(t!==E.CODES.get("_")&&!I.isalnum(t))return false}return true}static parseInt(B){let e=B.pos();for(;B.more()&&B.peek()>=E.CODES.get("0")&&B.peek()<=E.CODES.get("9");)B.skip(1);let t=B.from(e);return t.length===0||t.length>1&&t.codePointAt(0)===E.CODES.get("0")?-1:t.length>8?-2:parseInt(t,10)}static isCharClass(B){return B.op===h.Op.LITERAL&&B.runes.length===1||B.op===h.Op.CHAR_CLASS||B.op===h.Op.ANY_CHAR_NOT_NL||B.op===h.Op.ANY_CHAR}static matchRune(B,e){switch(B.op){case h.Op.LITERAL:return B.runes.length===1&&B.runes[0]===e;case h.Op.CHAR_CLASS:for(let t=0;t<B.runes.length;t+=2)if(B.runes[t]<=e&&e<=B.runes[t+1])return true;return false;case h.Op.ANY_CHAR_NOT_NL:return e!==E.CODES.get(`
13
+ `);case h.Op.ANY_CHAR:return true}return false}static mergeCharClass(B,e){switch(B.op){case h.Op.ANY_CHAR:break;case h.Op.ANY_CHAR_NOT_NL:S.matchRune(e,E.CODES.get(`
14
+ `))&&(B.op=h.Op.ANY_CHAR);break;case h.Op.CHAR_CLASS:e.op===h.Op.LITERAL?B.runes=new rB(B.runes).appendLiteral(e.runes[0],e.flags).toArray():B.runes=new rB(B.runes).appendClass(e.runes).toArray();break;case h.Op.LITERAL:if(e.runes[0]===B.runes[0]&&e.flags===B.flags)break;B.op=h.Op.CHAR_CLASS,B.runes=new rB().appendLiteral(B.runes[0],B.flags).appendLiteral(e.runes[0],e.flags).toArray();break}}static parseEscape(B){let e=B.pos();if(B.skip(1),!B.more())throw new _(S.ERR_TRAILING_BACKSLASH);let t=B.pop();B:switch(t){case E.CODES.get("1"):case E.CODES.get("2"):case E.CODES.get("3"):case E.CODES.get("4"):case E.CODES.get("5"):case E.CODES.get("6"):case E.CODES.get("7"):if(!B.more()||B.peek()<E.CODES.get("0")||B.peek()>E.CODES.get("7"))break;case E.CODES.get("0"):{let i=t-E.CODES.get("0");for(let r=1;r<3&&!(!B.more()||B.peek()<E.CODES.get("0")||B.peek()>E.CODES.get("7"));r++)i=i*8+B.peek()-E.CODES.get("0"),B.skip(1);return i}case E.CODES.get("x"):{if(!B.more())break;if(t=B.pop(),t===E.CODES.get("{")){let s=0,C=0;for(;;){if(!B.more())break B;if(t=B.pop(),t===E.CODES.get("}"))break;let o=I.unhex(t);if(o<0||(C=C*16+o,C>m.MAX_RUNE))break B;s++;}if(s===0)break B;return C}let i=I.unhex(t);if(!B.more())break;t=B.pop();let r=I.unhex(t);if(i<0||r<0)break;return i*16+r}case E.CODES.get("a"):return E.CODES.get("\x07");case E.CODES.get("f"):return E.CODES.get("\f");case E.CODES.get("n"):return E.CODES.get(`
15
+ `);case E.CODES.get("r"):return E.CODES.get("\r");case E.CODES.get("t"):return E.CODES.get(" ");case E.CODES.get("v"):return E.CODES.get("\v");default:if(t<=m.MAX_ASCII&&!I.isalnum(t))return t;break}throw new _(S.ERR_INVALID_ESCAPE,B.from(e))}static parseClassChar(B,e){if(!B.more())throw new _(S.ERR_MISSING_BRACKET,B.from(e));return B.lookingAt("\\")?S.parseEscape(B):B.pop()}static concatRunes(B,e){for(let t=0;t<e.length;t++)B.push(e[t]);return B}static hasCapture(B){if(B===null)return false;if(B.op===h.Op.CAPTURE)return true;if(B.subs){for(let e of B.subs)if(S.hasCapture(e))return true}return false}constructor(B,e=0){this.wholeRegexp=B,this.flags=e,this.numCap=0,this.namedGroups=Object.create(null),this.stack=[],this.free=null,this.numRegexp=0,this.numRunes=0,this.repeats=0,this.height=null,this.size=null,this.nlb=0;}newRegexp(B){let e=this.free;return e!==null&&e.subs!==null&&e.subs.length>0?(this.free=e.subs[0],e.reinit(),e.op=B):(e=new h(B),this.numRegexp+=1),e}reuse(B){this.height!==null&&this.height.has(B)&&this.height.delete(B),B.subs!==null&&B.subs.length>0&&(B.subs[0]=this.free),this.free=B;}checkLimits(B){if(this.numRunes>S.MAX_RUNES)throw new _(S.ERR_LARGE);this.checkSize(B),this.checkHeight(B);}checkSize(B){if(this.size===null){if(this.repeats===0&&(this.repeats=1),B.op===h.Op.REPEAT){let e=B.max;e===-1&&(e=B.min),e<=0&&(e=1),e>Math.floor(S.MAX_SIZE/this.repeats)?this.repeats=S.MAX_SIZE:this.repeats*=e;}if(this.numRegexp<Math.floor(S.MAX_SIZE/this.repeats))return;this.size=new Map;for(let e of this.stack)this.checkSize(e);}if(this.calcSize(B,true)>S.MAX_SIZE)throw new _(S.ERR_LARGE)}calcSize(B,e=false){if(!e&&this.size!==null&&this.size.has(B))return this.size.get(B);let t=0;switch(B.op){case h.Op.LITERAL:t=B.runes.length;break;case h.Op.PLB:case h.Op.NLB:case h.Op.CAPTURE:case h.Op.STAR:t=2+this.calcSize(B.subs[0]);break;case h.Op.PLUS:case h.Op.QUEST:t=1+this.calcSize(B.subs[0]);break;case h.Op.CONCAT:for(let i of B.subs)t=t+this.calcSize(i);break;case h.Op.ALTERNATE:for(let i of B.subs)t=t+this.calcSize(i);B.subs.length>1&&(t=t+B.subs.length-1);break;case h.Op.REPEAT:{let i=this.calcSize(B.subs[0]);if(B.max===-1){B.min===0?t=2+i:t=1+B.min*i;break}t=B.max*i+(B.max-B.min);break}}return t=Math.max(1,t),this.size===null&&(this.size=new Map),this.size.set(B,t),t}checkHeight(B){if(!(this.numRegexp<S.MAX_HEIGHT)){if(this.height===null){this.height=new Map;for(let e of this.stack)this.checkHeight(e);}if(this.calcHeight(B,true)>S.MAX_HEIGHT)throw new _(S.ERR_NESTING_DEPTH)}}calcHeight(B,e=false){if(!e&&this.height!==null&&this.height.has(B))return this.height.get(B);let t=1;for(let i of B.subs){let r=this.calcHeight(i);t<1+r&&(t=1+r);}return this.height===null&&(this.height=new Map),this.height.set(B,t),t}pop(){return this.stack.pop()}popToPseudo(){let B=this.stack.length,e=B;for(;e>0&&!h.isPseudoOp(this.stack[e-1].op);)e--;let t=this.stack.slice(e,B);return this.stack=this.stack.slice(0,e),t}push(B){if(this.numRunes+=B.runes.length,B.op===h.Op.CHAR_CLASS&&B.runes.length===2&&B.runes[0]===B.runes[1]){if(this.maybeConcat(B.runes[0],this.flags&-2))return null;B.op=h.Op.LITERAL,B.runes=[B.runes[0]],B.flags=this.flags&-2;}else if(B.op===h.Op.CHAR_CLASS&&B.runes.length===4&&B.runes[0]===B.runes[1]&&B.runes[2]===B.runes[3]&&m.simpleFold(B.runes[0])===B.runes[2]&&m.simpleFold(B.runes[2])===B.runes[0]||B.op===h.Op.CHAR_CLASS&&B.runes.length===2&&B.runes[0]+1===B.runes[1]&&m.simpleFold(B.runes[0])===B.runes[1]&&m.simpleFold(B.runes[1])===B.runes[0]){if(this.maybeConcat(B.runes[0],this.flags|D.FOLD_CASE))return null;B.op=h.Op.LITERAL,B.runes=[B.runes[0]],B.flags=this.flags|D.FOLD_CASE;}else this.maybeConcat(-1,0);return this.stack.push(B),this.checkLimits(B),B}maybeConcat(B,e){let t=this.stack.length;if(t<2)return false;let i=this.stack[t-1],r=this.stack[t-2];return i.op!==h.Op.LITERAL||r.op!==h.Op.LITERAL||(i.flags&D.FOLD_CASE)!==(r.flags&D.FOLD_CASE)?false:(r.runes=S.concatRunes(r.runes,i.runes),B>=0?(i.runes=[B],i.flags=e,true):(this.pop(),this.reuse(i),false))}newLiteral(B,e){let t=this.newRegexp(h.Op.LITERAL);return t.flags=e,(e&D.FOLD_CASE)!==0&&(B=S.minFoldRune(B)),t.runes=[B],t}literal(B){this.push(this.newLiteral(B,this.flags));}op(B){let e=this.newRegexp(B);return e.flags=this.flags,this.push(e)}repeat(B,e,t,i,r,s){let C=this.flags;if((C&D.PERL_X)!==0&&(r.more()&&r.lookingAt("?")&&(r.skip(1),C^=D.NON_GREEDY),s!==-1))throw new _(S.ERR_INVALID_REPEAT_OP,r.from(s));let o=this.stack.length;if(o===0)throw new _(S.ERR_MISSING_REPEAT_ARGUMENT,r.from(i));let u=this.stack[o-1];if(h.isPseudoOp(u.op))throw new _(S.ERR_MISSING_REPEAT_ARGUMENT,r.from(i));let c=this.newRegexp(B);if(c.min=e,c.max=t,c.flags=C,c.subs=[u],this.stack[o-1]=c,this.checkLimits(c),B===h.Op.REPEAT&&(e>=2||t>=2)&&!this.repeatIsValid(c,1e3))throw new _(S.ERR_INVALID_REPEAT_SIZE,r.from(i))}repeatIsValid(B,e){if(B.op===h.Op.REPEAT){let t=B.max;if(t===0)return true;if(t<0&&(t=B.min),t>e)return false;t>0&&(e=Math.trunc(e/t));}for(let t of B.subs)if(!this.repeatIsValid(t,e))return false;return true}concat(){this.maybeConcat(-1,0);let B=this.popToPseudo();return B.length===0?this.push(this.newRegexp(h.Op.EMPTY_MATCH)):this.push(this.collapse(B,h.Op.CONCAT))}alternate(){let B=this.popToPseudo();return B.length>0&&this.cleanAlt(B[B.length-1]),B.length===0?this.push(this.newRegexp(h.Op.NO_MATCH)):this.push(this.collapse(B,h.Op.ALTERNATE))}cleanAlt(B){B.op===h.Op.CHAR_CLASS&&(B.runes=new rB(B.runes).cleanClass().toArray(),B.runes.length===2&&B.runes[0]===0&&B.runes[1]===m.MAX_RUNE?(B.runes=[],B.op=h.Op.ANY_CHAR):B.runes.length===4&&B.runes[0]===0&&B.runes[1]===E.CODES.get(`
17
16
  `)-1&&B.runes[2]===E.CODES.get(`
18
- `)+1&&B.runes[3]===m.MAX_RUNE&&(B.runes=[],B.op=h.Op.ANY_CHAR_NOT_NL));}collapse(B,e){if(B.length===1)return B[0];let t=0;for(let C of B)t+=C.op===e?C.subs.length:1;let i=new Array(t).fill(null),r=0;for(let C of B)if(C.op===e){for(let o=0;o<C.subs.length;o++)i[r++]=C.subs[o];this.reuse(C);}else i[r++]=C;let s=this.newRegexp(e);if(s.subs=i,e===h.Op.ALTERNATE&&(s.subs=this.factor(s.subs),s.subs.length===1)){let C=s;s=s.subs[0],this.reuse(C);}return s}factor(B){if(B.length<2)return B;let e=0,t=B.length,i=0,r=null,s=0,C=0,o=0;for(let c=0;c<=t;c++){let p=null,g=0,d=0;if(c<t){let O=B[e+c];if(O.op===h.Op.CONCAT&&O.subs.length>0&&(O=O.subs[0]),O.op===h.Op.LITERAL&&(p=O.runes,g=O.runes.length,d=O.flags&D.FOLD_CASE),d===C){let S=0;for(;S<s&&S<g&&r[S]===p[S];)S++;if(S>0){s=S;continue}}}if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let O=this.newRegexp(h.Op.LITERAL);O.flags=C,O.runes=r.slice(0,s);for(let R=o;R<c;R++)B[e+R]=this.removeLeadingString(B[e+R],s),this.checkLimits(B[e+R]);let S=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),L=this.newRegexp(h.Op.CONCAT);L.subs=[O,S],B[i++]=L;}o=c,r=p,s=g,C=d;}t=i,e=0,o=0,i=0;let u=null;for(let c=0;c<=t;c++){let p=null;if(!(c<t&&(p=I.leadingRegexp(B[e+c]),u!==null&&u.equals(p)&&(I.isCharClass(u)||u.op===h.Op.REPEAT&&u.min===u.max&&I.isCharClass(u.subs[0]))))){if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let g=u;for(let S=o;S<c;S++){let L=S!==o;B[e+S]=this.removeLeadingRegexp(B[e+S],L),this.checkLimits(B[e+S]);}let d=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),O=this.newRegexp(h.Op.CONCAT);O.subs=[g,d],B[i++]=O;}o=c,u=p;}}t=i,e=0,o=0,i=0;for(let c=0;c<=t;c++)if(!(c<t&&I.isCharClass(B[e+c]))){if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let p=o;for(let d=o+1;d<c;d++){let O=B[e+p],S=B[e+d];(O.op<S.op||O.op===S.op&&(O.runes!==null?O.runes.length:0)<(S.runes!==null?S.runes.length:0))&&(p=d);}let g=B[e+o];B[e+o]=B[e+p],B[e+p]=g;for(let d=o+1;d<c;d++)I.mergeCharClass(B[e+o],B[e+d]),this.reuse(B[e+d]);this.cleanAlt(B[e+o]),B[i++]=B[e+o];}c<t&&(B[i++]=B[e+c]),o=c+1;}t=i,e=0,o=0,i=0;for(let c=0;c<t;++c)c+1<t&&B[e+c].op===h.Op.EMPTY_MATCH&&B[e+c+1].op===h.Op.EMPTY_MATCH||(B[i++]=B[e+c]);return t=i,e=0,B.slice(e,t)}removeLeadingString(B,e){if(B.op===h.Op.CONCAT&&B.subs.length>0){let t=this.removeLeadingString(B.subs[0],e);if(B.subs[0]=t,t.op===h.Op.EMPTY_MATCH)switch(this.reuse(t),B.subs.length){case 0:case 1:B.op=h.Op.EMPTY_MATCH,B.subs=h.emptySubs();break;case 2:{let i=B;B=B.subs[1],this.reuse(i);break}default:B.subs=B.subs.slice(1,B.subs.length);break}return B}return B.op===h.Op.LITERAL&&(B.runes=B.runes.slice(e,B.runes.length),B.runes.length===0&&(B.op=h.Op.EMPTY_MATCH)),B}removeLeadingRegexp(B,e){if(B.op===h.Op.CONCAT&&B.subs.length>0){switch(e&&this.reuse(B.subs[0]),B.subs=B.subs.slice(1,B.subs.length),B.subs.length){case 0:B.op=h.Op.EMPTY_MATCH,B.subs=h.emptySubs();break;case 1:{let t=B;B=B.subs[0],this.reuse(t);break}}return B}return e&&this.reuse(B),this.newRegexp(h.Op.EMPTY_MATCH)}parseInternal(){if((this.flags&D.LITERAL)!==0)return I.literalRegexp(this.wholeRegexp,this.flags);let B=-1,e=-1,t=-1,i=new Ni(this.wholeRegexp);for(;i.more();){let r=-1;B:switch(i.peek()){case E.CODES.get("("):if((this.flags&D.LOOKBEHIND)!==0){if(i.lookingAt("(?<=")){this.parsePosLookBehind(),i.skip(4);break}if(i.lookingAt("(?<!")){this.parseNegLookBehind(),i.skip(4);break}}if((this.flags&D.PERL_X)!==0&&i.lookingAt("(?")){this.parsePerlFlags(i);break}this.op(h.Op.LEFT_PAREN).cap=++this.numCap,i.skip(1);break;case E.CODES.get("|"):this.parseVerticalBar(),i.skip(1);break;case E.CODES.get(")"):this.parseRightParen(),i.skip(1);break;case E.CODES.get("^"):(this.flags&D.ONE_LINE)!==0?this.op(h.Op.BEGIN_TEXT):this.op(h.Op.BEGIN_LINE),i.skip(1);break;case E.CODES.get("$"):(this.flags&D.ONE_LINE)!==0?this.op(h.Op.END_TEXT).flags|=D.WAS_DOLLAR:this.op(h.Op.END_LINE),i.skip(1);break;case E.CODES.get("."):(this.flags&D.DOT_NL)!==0?this.op(h.Op.ANY_CHAR):this.op(h.Op.ANY_CHAR_NOT_NL),i.skip(1);break;case E.CODES.get("["):this.parseClass(i);break;case E.CODES.get("*"):case E.CODES.get("+"):case E.CODES.get("?"):{r=i.pos();let s=null;switch(i.pop()){case E.CODES.get("*"):s=h.Op.STAR;break;case E.CODES.get("+"):s=h.Op.PLUS;break;case E.CODES.get("?"):s=h.Op.QUEST;break}this.repeat(s,e,t,r,i,B);break}case E.CODES.get("{"):{r=i.pos();let s=I.parseRepeat(i);if(s<0){i.rewindTo(r),this.literal(i.pop());break}e=s>>16,t=(s&m.MAX_BMP)<<16>>16,this.repeat(h.Op.REPEAT,e,t,r,i,B);break}case E.CODES.get("\\"):{let s=i.pos();if(i.skip(1),(this.flags&D.PERL_X)!==0&&i.more())switch(i.pop()){case E.CODES.get("A"):this.op(h.Op.BEGIN_TEXT);break B;case E.CODES.get("b"):this.op(h.Op.WORD_BOUNDARY);break B;case E.CODES.get("B"):this.op(h.Op.NO_WORD_BOUNDARY);break B;case E.CODES.get("C"):throw new H(I.ERR_INVALID_ESCAPE,"\\C");case E.CODES.get("Q"):{let u=i.rest(),c=u.indexOf("\\E");c>=0?(u=u.substring(0,c),i.skipString(u),i.skipString("\\E")):i.skipString(u);let p=0;for(;p<u.length;){let g=u.codePointAt(p);this.literal(g),p+=F.charCount(g);}break B}case E.CODES.get("z"):this.op(h.Op.END_TEXT);break B;default:i.rewindTo(s);break}else i.rewindTo(s);let C=this.newRegexp(h.Op.CHAR_CLASS);if(C.flags=this.flags,i.lookingAt("\\p")||i.lookingAt("\\P")){let u=new rB;if(this.parseUnicodeClass(i,u)){C.runes=u.toArray(),this.push(C);break B}}let o=new rB;if(this.parsePerlClassEscape(i,o)){C.runes=o.toArray(),this.push(C);break B}i.rewindTo(s),this.reuse(C),this.literal(I.parseEscape(i));break}default:this.literal(i.pop());break}B=r;}if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length!==1)throw new H(I.ERR_MISSING_PAREN,this.wholeRegexp);return this.stack[0].namedGroups=this.namedGroups,this.stack[0]}parsePerlFlags(B){let e=B.pos(),t=B.rest();if(t.startsWith("(?P<")||t.startsWith("(?<")){let C=t.charAt(2)==="P"?4:3,o=t.indexOf(">");if(o<0)throw new H(I.ERR_INVALID_NAMED_CAPTURE,t);let u=t.substring(C,o);if(B.skipString(u),B.skip(C+1),!I.isValidCaptureName(u))throw new H(I.ERR_INVALID_NAMED_CAPTURE,t.substring(0,o+1));let c=this.op(h.Op.LEFT_PAREN);if(c.cap=++this.numCap,this.namedGroups[u])throw new H(I.ERR_DUPLICATE_NAMED_CAPTURE,u);this.namedGroups[u]=this.numCap,c.name=u;return}B.skip(2);let i=this.flags,r=1,s=false;B:for(;B.more();){let C=B.pop();switch(C){case E.CODES.get("i"):i|=D.FOLD_CASE,s=true;break;case E.CODES.get("m"):i&=-17,s=true;break;case E.CODES.get("s"):i|=D.DOT_NL,s=true;break;case E.CODES.get("U"):i|=D.NON_GREEDY,s=true;break;case E.CODES.get("-"):if(r<0)break B;r=-1,i=~i,s=false;break;case E.CODES.get(":"):case E.CODES.get(")"):if(r<0){if(!s)break B;i=~i;}C===E.CODES.get(":")&&this.op(h.Op.LEFT_PAREN),this.flags=i;return;default:break B}}throw new H(I.ERR_INVALID_PERL_OP,B.from(e))}parsePosLookBehind(){let B=this.newRegexp(h.Op.LEFT_PAREN);return B.flags=this.flags,B.lb=++this.nlb,this.push(B)}parseNegLookBehind(){let B=this.newRegexp(h.Op.LEFT_PAREN);return B.flags=this.flags,B.lb=-++this.nlb,this.push(B)}parseVerticalBar(){this.concat(),this.swapVerticalBar()||this.op(h.Op.VERTICAL_BAR);}swapVerticalBar(){let B=this.stack.length;if(B>=3&&this.stack[B-2].op===h.Op.VERTICAL_BAR&&I.isCharClass(this.stack[B-1])&&I.isCharClass(this.stack[B-3])){let e=this.stack[B-1],t=this.stack[B-3];if(e.op>t.op){let i=t;t=e,e=i,this.stack[B-3]=t;}return I.mergeCharClass(t,e),this.reuse(e),this.pop(),true}if(B>=2){let e=this.stack[B-1],t=this.stack[B-2];if(t.op===h.Op.VERTICAL_BAR)return B>=3&&this.cleanAlt(this.stack[B-3]),this.stack[B-2]=e,this.stack[B-1]=t,true}return false}parseRightParen(){if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length<2)throw new H(I.ERR_UNEXPECTED_PAREN,this.wholeRegexp);let B=this.pop(),e=this.pop();if(e.op!==h.Op.LEFT_PAREN)throw new H(I.ERR_UNEXPECTED_PAREN,this.wholeRegexp);if(this.flags=e.flags,e.lb!==0){if(I.hasCapture(B))throw new H(I.ERR_INVALID_CAPTURE_IN_LOOKBEHIND,this.wholeRegexp);e.lb>0?e.op=h.Op.PLB:e.op=h.Op.NLB,e.subs=[B],this.push(e);return}e.cap===0?this.push(B):(e.op=h.Op.CAPTURE,e.subs=[B],this.push(e));}parsePerlClassEscape(B,e){let t=B.pos();if((this.flags&D.PERL_X)===0||!B.more()||B.pop()!==E.CODES.get("\\")||!B.more())return false;B.pop();let i=B.from(t),r=ht.has(i)?ht.get(i):null;return r===null?false:(e.appendGroup(r,(this.flags&D.FOLD_CASE)!==0),true)}parseNamedClass(B,e){let t=B.rest(),i=t.indexOf(":]");if(i<0)return false;let r=t.substring(0,i+2);B.skipString(r);let s=Tt.has(r)?Tt.get(r):null;if(s===null)throw new H(I.ERR_INVALID_CHAR_RANGE,r);return e.appendGroup(s,(this.flags&D.FOLD_CASE)!==0),true}parseUnicodeClass(B,e){let t=B.pos();if((this.flags&D.UNICODE_GROUPS)===0||!B.lookingAt("\\p")&&!B.lookingAt("\\P"))return false;B.skip(1);let i=1,r=B.pop();if(r===E.CODES.get("P")&&(i=-1),!B.more())throw B.rewindTo(t),new H(I.ERR_INVALID_CHAR_RANGE,B.rest());r=B.pop();let s;if(r!==E.CODES.get("{"))s=F.runeToString(r);else {let c=B.rest(),p=c.indexOf("}");if(p<0)throw B.rewindTo(t),new H(I.ERR_INVALID_CHAR_RANGE,B.rest());s=c.substring(0,p),B.skipString(s),B.skip(1);}s.length!==0&&s.codePointAt(0)===E.CODES.get("^")&&(i=0-i,s=s.substring(1));let C=I.unicodeTable(s);if(C===null)throw new H(I.ERR_INVALID_CHAR_RANGE,B.from(t));C.sign<0&&(i=0-i);let o=C.tab,u=C.fold;if((this.flags&D.FOLD_CASE)===0||u===null)e.appendTableWithSign(o,i);else {let c=new rB().appendTable(o).appendTable(u).cleanClass().toArray();e.appendClassWithSign(c,i);}return true}parseClass(B){let e=B.pos();B.skip(1);let t=this.newRegexp(h.Op.CHAR_CLASS);t.flags=this.flags;let i=new rB,r=1;B.more()&&B.lookingAt("^")&&(r=-1,B.skip(1),(this.flags&D.CLASS_NL)===0&&i.appendRange(E.CODES.get(`
17
+ `)+1&&B.runes[3]===m.MAX_RUNE&&(B.runes=[],B.op=h.Op.ANY_CHAR_NOT_NL));}collapse(B,e){if(B.length===1)return B[0];let t=0;for(let C of B)t+=C.op===e?C.subs.length:1;let i=new Array(t).fill(null),r=0;for(let C of B)if(C.op===e){for(let o=0;o<C.subs.length;o++)i[r++]=C.subs[o];this.reuse(C);}else i[r++]=C;let s=this.newRegexp(e);if(s.subs=i,e===h.Op.ALTERNATE&&(s.subs=this.factor(s.subs),s.subs.length===1)){let C=s;s=s.subs[0],this.reuse(C);}return s}factor(B){if(B.length<2)return B;let e=0,t=B.length,i=0,r=null,s=0,C=0,o=0;for(let c=0;c<=t;c++){let p=null,g=0,d=0;if(c<t){let O=B[e+c];if(O.op===h.Op.CONCAT&&O.subs.length>0&&(O=O.subs[0]),O.op===h.Op.LITERAL&&(p=O.runes,g=O.runes.length,d=O.flags&D.FOLD_CASE),d===C){let F=0;for(;F<s&&F<g&&r[F]===p[F];)F++;if(F>0){s=F;continue}}}if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let O=this.newRegexp(h.Op.LITERAL);O.flags=C,O.runes=r.slice(0,s);for(let R=o;R<c;R++)B[e+R]=this.removeLeadingString(B[e+R],s),this.checkLimits(B[e+R]);let F=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),L=this.newRegexp(h.Op.CONCAT);L.subs=[O,F],B[i++]=L;}o=c,r=p,s=g,C=d;}t=i,e=0,o=0,i=0;let u=null;for(let c=0;c<=t;c++){let p=null;if(!(c<t&&(p=S.leadingRegexp(B[e+c]),u!==null&&u.equals(p)&&(S.isCharClass(u)||u.op===h.Op.REPEAT&&u.min===u.max&&S.isCharClass(u.subs[0]))))){if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let g=u;for(let F=o;F<c;F++){let L=F!==o;B[e+F]=this.removeLeadingRegexp(B[e+F],L),this.checkLimits(B[e+F]);}let d=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),O=this.newRegexp(h.Op.CONCAT);O.subs=[g,d],B[i++]=O;}o=c,u=p;}}t=i,e=0,o=0,i=0;for(let c=0;c<=t;c++)if(!(c<t&&S.isCharClass(B[e+c]))){if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let p=o;for(let d=o+1;d<c;d++){let O=B[e+p],F=B[e+d];(O.op<F.op||O.op===F.op&&(O.runes!==null?O.runes.length:0)<(F.runes!==null?F.runes.length:0))&&(p=d);}let g=B[e+o];B[e+o]=B[e+p],B[e+p]=g;for(let d=o+1;d<c;d++)S.mergeCharClass(B[e+o],B[e+d]),this.reuse(B[e+d]);this.cleanAlt(B[e+o]),B[i++]=B[e+o];}c<t&&(B[i++]=B[e+c]),o=c+1;}t=i,e=0,o=0,i=0;for(let c=0;c<t;++c)c+1<t&&B[e+c].op===h.Op.EMPTY_MATCH&&B[e+c+1].op===h.Op.EMPTY_MATCH||(B[i++]=B[e+c]);return t=i,e=0,B.slice(e,t)}removeLeadingString(B,e){if(B.op===h.Op.CONCAT&&B.subs.length>0){let t=this.removeLeadingString(B.subs[0],e);if(B.subs[0]=t,t.op===h.Op.EMPTY_MATCH)switch(this.reuse(t),B.subs.length){case 0:case 1:B.op=h.Op.EMPTY_MATCH,B.subs=h.emptySubs();break;case 2:{let i=B;B=B.subs[1],this.reuse(i);break}default:B.subs=B.subs.slice(1,B.subs.length);break}return B}return B.op===h.Op.LITERAL&&(B.runes=B.runes.slice(e,B.runes.length),B.runes.length===0&&(B.op=h.Op.EMPTY_MATCH)),B}removeLeadingRegexp(B,e){if(B.op===h.Op.CONCAT&&B.subs.length>0){switch(e&&this.reuse(B.subs[0]),B.subs=B.subs.slice(1,B.subs.length),B.subs.length){case 0:B.op=h.Op.EMPTY_MATCH,B.subs=h.emptySubs();break;case 1:{let t=B;B=B.subs[0],this.reuse(t);break}}return B}return e&&this.reuse(B),this.newRegexp(h.Op.EMPTY_MATCH)}parseInternal(){if((this.flags&D.LITERAL)!==0)return S.literalRegexp(this.wholeRegexp,this.flags);let B=-1,e=-1,t=-1,i=new ti(this.wholeRegexp);for(;i.more();){let r=-1;B:switch(i.peek()){case E.CODES.get("("):if((this.flags&D.LOOKBEHIND)!==0){if(i.lookingAt("(?<=")){this.parsePosLookBehind(),i.skip(4);break}if(i.lookingAt("(?<!")){this.parseNegLookBehind(),i.skip(4);break}}if((this.flags&D.PERL_X)!==0&&i.lookingAt("(?")){this.parsePerlFlags(i);break}this.op(h.Op.LEFT_PAREN).cap=++this.numCap,i.skip(1);break;case E.CODES.get("|"):this.parseVerticalBar(),i.skip(1);break;case E.CODES.get(")"):this.parseRightParen(),i.skip(1);break;case E.CODES.get("^"):(this.flags&D.ONE_LINE)!==0?this.op(h.Op.BEGIN_TEXT):this.op(h.Op.BEGIN_LINE),i.skip(1);break;case E.CODES.get("$"):(this.flags&D.ONE_LINE)!==0?this.op(h.Op.END_TEXT).flags|=D.WAS_DOLLAR:this.op(h.Op.END_LINE),i.skip(1);break;case E.CODES.get("."):(this.flags&D.DOT_NL)!==0?this.op(h.Op.ANY_CHAR):this.op(h.Op.ANY_CHAR_NOT_NL),i.skip(1);break;case E.CODES.get("["):this.parseClass(i);break;case E.CODES.get("*"):case E.CODES.get("+"):case E.CODES.get("?"):{r=i.pos();let s=null;switch(i.pop()){case E.CODES.get("*"):s=h.Op.STAR;break;case E.CODES.get("+"):s=h.Op.PLUS;break;case E.CODES.get("?"):s=h.Op.QUEST;break}this.repeat(s,e,t,r,i,B);break}case E.CODES.get("{"):{r=i.pos();let s=S.parseRepeat(i);if(s<0){i.rewindTo(r),this.literal(i.pop());break}e=s>>16,t=(s&m.MAX_BMP)<<16>>16,this.repeat(h.Op.REPEAT,e,t,r,i,B);break}case E.CODES.get("\\"):{let s=i.pos();if(i.skip(1),(this.flags&D.PERL_X)!==0&&i.more())switch(i.pop()){case E.CODES.get("A"):this.op(h.Op.BEGIN_TEXT);break B;case E.CODES.get("b"):this.op(h.Op.WORD_BOUNDARY);break B;case E.CODES.get("B"):this.op(h.Op.NO_WORD_BOUNDARY);break B;case E.CODES.get("C"):throw new _(S.ERR_INVALID_ESCAPE,"\\C");case E.CODES.get("Q"):{let u=i.rest(),c=u.indexOf("\\E");c>=0?(u=u.substring(0,c),i.skipString(u),i.skipString("\\E")):i.skipString(u);let p=0;for(;p<u.length;){let g=u.codePointAt(p);this.literal(g),p+=I.charCount(g);}break B}case E.CODES.get("z"):this.op(h.Op.END_TEXT);break B;default:i.rewindTo(s);break}else i.rewindTo(s);let C=this.newRegexp(h.Op.CHAR_CLASS);if(C.flags=this.flags,i.lookingAt("\\p")||i.lookingAt("\\P")){let u=new rB;if(this.parseUnicodeClass(i,u)){C.runes=u.toArray(),this.push(C);break B}}let o=new rB;if(this.parsePerlClassEscape(i,o)){C.runes=o.toArray(),this.push(C);break B}i.rewindTo(s),this.reuse(C),this.literal(S.parseEscape(i));break}default:this.literal(i.pop());break}B=r;}if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length!==1)throw new _(S.ERR_MISSING_PAREN,this.wholeRegexp);return this.stack[0].namedGroups=this.namedGroups,this.stack[0]}parsePerlFlags(B){let e=B.pos(),t=B.rest();if(t.startsWith("(?P<")||t.startsWith("(?<")){let C=t.charAt(2)==="P"?4:3,o=t.indexOf(">");if(o<0)throw new _(S.ERR_INVALID_NAMED_CAPTURE,t);let u=t.substring(C,o);if(B.skipString(u),B.skip(C+1),!S.isValidCaptureName(u))throw new _(S.ERR_INVALID_NAMED_CAPTURE,t.substring(0,o+1));let c=this.op(h.Op.LEFT_PAREN);if(c.cap=++this.numCap,this.namedGroups[u])throw new _(S.ERR_DUPLICATE_NAMED_CAPTURE,u);this.namedGroups[u]=this.numCap,c.name=u;return}B.skip(2);let i=this.flags,r=1,s=false;B:for(;B.more();){let C=B.pop();switch(C){case E.CODES.get("i"):i|=D.FOLD_CASE,s=true;break;case E.CODES.get("m"):i&=-17,s=true;break;case E.CODES.get("s"):i|=D.DOT_NL,s=true;break;case E.CODES.get("U"):i|=D.NON_GREEDY,s=true;break;case E.CODES.get("-"):if(r<0)break B;r=-1,i=~i,s=false;break;case E.CODES.get(":"):case E.CODES.get(")"):if(r<0){if(!s)break B;i=~i;}C===E.CODES.get(":")&&this.op(h.Op.LEFT_PAREN),this.flags=i;return;default:break B}}throw new _(S.ERR_INVALID_PERL_OP,B.from(e))}parsePosLookBehind(){let B=this.newRegexp(h.Op.LEFT_PAREN);return B.flags=this.flags,B.lb=++this.nlb,this.push(B)}parseNegLookBehind(){let B=this.newRegexp(h.Op.LEFT_PAREN);return B.flags=this.flags,B.lb=-++this.nlb,this.push(B)}parseVerticalBar(){this.concat(),this.swapVerticalBar()||this.op(h.Op.VERTICAL_BAR);}swapVerticalBar(){let B=this.stack.length;if(B>=3&&this.stack[B-2].op===h.Op.VERTICAL_BAR&&S.isCharClass(this.stack[B-1])&&S.isCharClass(this.stack[B-3])){let e=this.stack[B-1],t=this.stack[B-3];if(e.op>t.op){let i=t;t=e,e=i,this.stack[B-3]=t;}return S.mergeCharClass(t,e),this.reuse(e),this.pop(),true}if(B>=2){let e=this.stack[B-1],t=this.stack[B-2];if(t.op===h.Op.VERTICAL_BAR)return B>=3&&this.cleanAlt(this.stack[B-3]),this.stack[B-2]=e,this.stack[B-1]=t,true}return false}parseRightParen(){if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length<2)throw new _(S.ERR_UNEXPECTED_PAREN,this.wholeRegexp);let B=this.pop(),e=this.pop();if(e.op!==h.Op.LEFT_PAREN)throw new _(S.ERR_UNEXPECTED_PAREN,this.wholeRegexp);if(this.flags=e.flags,e.lb!==0){if(S.hasCapture(B))throw new _(S.ERR_INVALID_CAPTURE_IN_LOOKBEHIND,this.wholeRegexp);e.lb>0?e.op=h.Op.PLB:e.op=h.Op.NLB,e.subs=[B],this.push(e);return}e.cap===0?this.push(B):(e.op=h.Op.CAPTURE,e.subs=[B],this.push(e));}parsePerlClassEscape(B,e){let t=B.pos();if((this.flags&D.PERL_X)===0||!B.more()||B.pop()!==E.CODES.get("\\")||!B.more())return false;B.pop();let i=B.from(t),r=it.has(i)?it.get(i):null;return r===null?false:(e.appendGroup(r,(this.flags&D.FOLD_CASE)!==0),true)}parseNamedClass(B,e){let t=B.rest(),i=t.indexOf(":]");if(i<0)return false;let r=t.substring(0,i+2);B.skipString(r);let s=dt.has(r)?dt.get(r):null;if(s===null)throw new _(S.ERR_INVALID_CHAR_RANGE,r);return e.appendGroup(s,(this.flags&D.FOLD_CASE)!==0),true}parseUnicodeClass(B,e){let t=B.pos();if((this.flags&D.UNICODE_GROUPS)===0||!B.lookingAt("\\p")&&!B.lookingAt("\\P"))return false;B.skip(1);let i=1,r=B.pop();if(r===E.CODES.get("P")&&(i=-1),!B.more())throw B.rewindTo(t),new _(S.ERR_INVALID_CHAR_RANGE,B.rest());r=B.pop();let s;if(r!==E.CODES.get("{"))s=I.runeToString(r);else {let c=B.rest(),p=c.indexOf("}");if(p<0)throw B.rewindTo(t),new _(S.ERR_INVALID_CHAR_RANGE,B.rest());s=c.substring(0,p),B.skipString(s),B.skip(1);}s.length!==0&&s.codePointAt(0)===E.CODES.get("^")&&(i=0-i,s=s.substring(1));let C=S.unicodeTable(s);if(C===null)throw new _(S.ERR_INVALID_CHAR_RANGE,B.from(t));C.sign<0&&(i=0-i);let o=C.tab,u=C.fold;if((this.flags&D.FOLD_CASE)===0||u===null)e.appendTableWithSign(o,i);else {let c=new rB().appendTable(o).appendTable(u).cleanClass().toArray();e.appendClassWithSign(c,i);}return true}parseClass(B){let e=B.pos();B.skip(1);let t=this.newRegexp(h.Op.CHAR_CLASS);t.flags=this.flags;let i=new rB,r=1;B.more()&&B.lookingAt("^")&&(r=-1,B.skip(1),(this.flags&D.CLASS_NL)===0&&i.appendRange(E.CODES.get(`
19
18
  `),E.CODES.get(`
20
- `)));let s=true;for(;!B.more()||B.peek()!==E.CODES.get("]")||s;){if(B.more()&&B.lookingAt("-")&&(this.flags&D.PERL_X)===0&&!s){let c=B.rest();if(c==="-"||!c.startsWith("-]"))throw B.rewindTo(e),new H(I.ERR_INVALID_CHAR_RANGE,B.rest())}s=false;let C=B.pos();if(B.lookingAt("[:")){if(this.parseNamedClass(B,i))continue;B.rewindTo(C);}if(this.parseUnicodeClass(B,i)||this.parsePerlClassEscape(B,i))continue;B.rewindTo(C);let o=I.parseClassChar(B,e),u=o;if(B.more()&&B.lookingAt("-")){if(B.skip(1),B.more()&&B.lookingAt("]"))B.skip(-1);else if(u=I.parseClassChar(B,e),u<o)throw new H(I.ERR_INVALID_CHAR_RANGE,B.from(C))}(this.flags&D.FOLD_CASE)===0?i.appendRange(o,u):i.appendFoldedRange(o,u);}B.skip(1),i.cleanClass(),r<0&&i.negateClass(),t.runes=i.toArray(),this.push(t);}},Ri=class{constructor(n){this.value=n;}get(){return this.value}set(n){this.value=n;}compareAndSet(n,B){return this.value===n?(this.value=B,true):false}},Ti=class aB{static initTest(B){let e=aB.compile(B),t=new aB(e.expr,e.prog,e.numSubexp,e.longest);return t.cond=e.cond,t.prefix=e.prefix,t.prefixUTF8=e.prefixUTF8,t.prefixComplete=e.prefixComplete,t.prefixRune=e.prefixRune,t.prefilter=e.prefilter,t}static compile(B){return aB.compileImpl(B,D.PERL,false)}static compilePOSIX(B){return aB.compileImpl(B,D.POSIX,true)}static compileImpl(B,e,t){let i=Ut.parse(B,e),r=i.maxCap();i=kt.simplify(i);let s=Si.build(i),C=Mt.compileRegexp(i),o=new aB(B,C,r,t);o.prefilter=s.type===b.Type.NONE?null:s;let[u,c]=C.prefix();return o.prefixComplete=u,o.prefix=c,o.prefixUTF8=F.stringToUtf8ByteArray(o.prefix),o.prefix.length>0&&(o.prefixRune=o.prefix.codePointAt(0)),o.namedGroups=i.namedGroups,o}static match(B,e){return aB.compile(B).match(e)}constructor(B,e,t=0,i=0){this.expr=B,this.prog=e,this.numSubexp=t,this.longest=i,this.cond=e.startCond(),this.prefix=null,this.prefixUTF8=null,this.prefixComplete=false,this.prefixRune=0,this.pooled=new Ri,this.dfa=new _t(this.prog),this.onepass=ot.compile(this.prog),this.prefilter=null;}matchPrefixComplete(B,e,t,i){if((t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return null;let r=-1,s=-1,C=B.prefixLength(this);if(t===D.UNANCHORED){let o=B.index(this,e);if(o<0)return null;r=e+o,s=r+C;}else if(t===D.ANCHOR_BOTH){if(B.endPos()!==C||B.index(this,0)!==0)return null;r=0,s=C;}else if(t===D.ANCHOR_START){if(B.index(this,0)!==0)return null;r=0,s=C;}if(r<0)return null;if(i>0){let o=new Int32Array(i).fill(-1);return o[0]=r,o[1]=s,Array.from(o)}return []}executeEngine(B,e,t,i){if(this.prefixComplete&&(i===0||this.numSubexp===0))return this.matchPrefixComplete(B,e,t,i);if(this.prefilter!==null&&t===D.UNANCHORED&&!this.prefilter.eval(B,e))return null;if(this.onepass!==null)return ot.execute(this,B,e,t,i);if(i>0)return this.prog.numLb===0&&B.endPos()<=kB.maxBitStateLen(this.prog)?kB.execute(this,B,e,t,i):this.doExecuteNFA(B,e,t,i);if(this.prog.numLb===0){let r=this.dfa.match(B,e,t);if(r!==null)return r?[]:null;if(B.endPos()<=kB.maxBitStateLen(this.prog))return kB.execute(this,B,e,t,i)}return this.doExecuteNFA(B,e,t,i)}numberOfCapturingGroups(){return this.numSubexp}numberOfInstructions(){return this.prog.numInst()}get(){let B;do B=this.pooled.get();while(B&&!this.pooled.compareAndSet(B,B.next));return B}reset(){this.pooled.set(null);}put(B,e){let t=this.pooled.get();do t=this.pooled.get(),!e&&t&&(B=JB.fromMachine(B),e=true),B.next!==t&&(B.next=t);while(!this.pooled.compareAndSet(t,B))}toString(){return this.expr}doExecuteNFA(B,e,t,i){let r=this.get(),s=false;r?r.next!==null&&(r=JB.fromMachine(r),s=true):(r=JB.fromRE2(this),s=true),r.init(i);let C=r.match(B,e,t)?r.submatches():null;return this.put(r,s),C}match(B){return this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,0)!==null}matchWithGroup(B,e,t,i,r){return B instanceof EB||(F.isByteArray(B)?B=IB.utf8(B):B=IB.utf16(B)),this.matchMachineInput(B,e,t,i,r)}matchMachineInput(B,e,t,i,r){if(e>t)return [false,null];let s=B.isUTF16Encoding()?x.fromUTF16(B.asCharSequence(),0,t):x.fromUTF8(B.asBytes(),0,t),C=this.executeEngine(s,e,i,2*r);return C===null?[false,null]:[true,C]}matchUTF8(B){return this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,0)!==null}replaceAll(B,e){return this.replaceAllFunc(B,()=>e,2*B.length+1)}replaceFirst(B,e){return this.replaceAllFunc(B,()=>e,1)}replaceAllFunc(B,e,t){let i=0,r=0,s="",C=x.fromUTF16(B),o=0;for(;r<=B.length;){let u=this.executeEngine(C,r,D.UNANCHORED,2);if(u===null||u.length===0)break;s+=B.substring(i,u[0]),(u[1]>i||u[0]===0)&&(s+=e(B.substring(u[0],u[1])),o++),i=u[1];let c=C.step(r)&7;if(r+c>u[1]?r+=c:r+1>u[1]?r++:r=u[1],o>=t)break}return s+=B.substring(i),s}pad(B){if(B===null)return null;let e=(1+this.numSubexp)*2;if(B.length<e){let t=new Array(e).fill(-1);for(let i=0;i<B.length;i++)t[i]=B[i];B=t;}return B}allMatches(B,e,t=i=>i){let i=[],r=B.endPos();e<0&&(e=r+1);let s=0,C=0,o=-1;for(;C<e&&s<=r;){let u=this.executeEngine(B,s,D.UNANCHORED,this.prog.numCap);if(u===null||u.length===0)break;let c=true;if(u[1]===s){u[0]===o&&(c=false);let p=B.step(s);p<0?s=r+1:s+=p&7;}else s=u[1];o=u[1],c&&(i.push(t(this.pad(u))),C++);}return i}findUTF8(B){let e=this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,2);return e===null?null:B.slice(e[0],e[1])}findUTF8Index(B){let e=this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,2);return e===null?null:e.slice(0,2)}find(B){let e=this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,2);return e===null?"":B.substring(e[0],e[1])}findIndex(B){return this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,2)}findUTF8Submatch(B){let e=this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,this.prog.numCap);if(e===null)return null;let t=new Array(1+this.numSubexp).fill(null);for(let i=0;i<t.length;i++)2*i<e.length&&e[2*i]>=0&&(t[i]=B.slice(e[2*i],e[2*i+1]));return t}findUTF8SubmatchIndex(B){return this.pad(this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,this.prog.numCap))}findSubmatch(B){let e=this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,this.prog.numCap);if(e===null)return null;let t=new Array(1+this.numSubexp).fill(null);for(let i=0;i<t.length;i++)2*i<e.length&&e[2*i]>=0&&(t[i]=B.substring(e[2*i],e[2*i+1]));return t}findSubmatchIndex(B){return this.pad(this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,this.prog.numCap))}findAllUTF8(B,e){let t=this.allMatches(x.fromUTF8(B),e,i=>B.slice(i[0],i[1]));return t.length===0?null:t}findAllUTF8Index(B,e){let t=this.allMatches(x.fromUTF8(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAll(B,e){let t=this.allMatches(x.fromUTF16(B),e,i=>B.substring(i[0],i[1]));return t.length===0?null:t}findAllIndex(B,e){let t=this.allMatches(x.fromUTF16(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAllUTF8Submatch(B,e){let t=this.allMatches(x.fromUTF8(B),e,i=>{let r=new Array(i.length/2|0).fill(null);for(let s=0;s<r.length;s++)i[2*s]>=0&&(r[s]=B.slice(i[2*s],i[2*s+1]));return r});return t.length===0?null:t}findAllUTF8SubmatchIndex(B,e){let t=this.allMatches(x.fromUTF8(B),e);return t.length===0?null:t}findAllSubmatch(B,e){let t=this.allMatches(x.fromUTF16(B),e,i=>{let r=new Array(i.length/2|0).fill(null);for(let s=0;s<r.length;s++)i[2*s]>=0&&(r[s]=B.substring(i[2*s],i[2*s+1]));return r});return t.length===0?null:t}findAllSubmatchIndex(B,e){let t=this.allMatches(x.fromUTF16(B),e);return t.length===0?null:t}},Li=class hB{static isHexadecimal(B){return "0"<=B&&B<="9"||"A"<=B&&B<="F"||"a"<=B&&B<="f"}static translate(B){let e="";if(B instanceof RegExp&&(B.ignoreCase&&(e+="i"),B.multiline&&(e+="m"),B.dotAll&&(e+="s"),B=B.source),typeof B!="string")return B;let t="",i=false,r=B.length;r===0&&(t="(?:)",i=true);let s=false,C=0;for(;C<r;){let u=B[C];if(u==="\\"){if(C+1<r)switch(u=B[C+1],u){case "\\":t+="\\\\",C+=2;continue;case "c":if(C+2<r){let g=B[C+2].charCodeAt(0);if(g>=65&&g<=90||g>=97&&g<=122){let d=g%32;t+="\\x",t+=(d>>4).toString(16).toUpperCase(),t+=(d&15).toString(16).toUpperCase(),C+=3,i=true;continue}}t+="c",C+=2,i=true;continue;case "u":if(C+2<r){if(B[C+2]==="{"){let g=C+3,d=false,O=false;for(;g<r;){let S=B[g];if(S==="}"){O=true;break}if(!hB.isHexadecimal(S))break;d=true,g++;}if(O&&d){t+="\\x",C+=2,i=true;continue}}else if(C+5<r){let g=true;for(let d=0;d<4;d++)if(!hB.isHexadecimal(B[C+2+d])){g=false;break}if(g){t+="\\x{"+B.substring(C+2,C+6)+"}",C+=6,i=true;continue}}}t+="u",C+=2,i=true;continue;case "x":{let g=false;if(C+2<r&&B[C+2]==="{"){let d=C+3,O=false,S=false;for(;d<r;){let L=B[d];if(L==="}"){S=true;break}if(!hB.isHexadecimal(L))break;O=true,d++;}S&&O&&(g=true);}else C+3<r&&hB.isHexadecimal(B[C+2])&&hB.isHexadecimal(B[C+3])&&(g=true);g?(t+="\\x",C+=2):(t+="x",C+=2,i=true);continue}case "n":case "r":case "t":case "a":case "f":case "v":case "d":case "D":case "s":case "S":case "w":case "W":case "b":case "B":case "p":case "P":case "A":case "z":case "Q":case "E":case "0":case "1":case "2":case "3":case "4":case "5":case "6":case "7":t+="\\"+u,C+=2;continue;default:{let g=B.codePointAt(C+1);if(g>=48&&g<=57||g>=65&&g<=90||g>=97&&g<=122){let d=F.charCount(g);t+=B.substring(C+1,C+1+d),C+=d+1,i=true;}else {t+="\\";let d=F.charCount(g);t+=B.substring(C+1,C+1+d),C+=d+1;}continue}}}else if(u==="/"){t+="\\/",C+=1,i=true;continue}else if(u==="[")s=true;else if(u==="]")s=false;else if(!s&&u==="("&&C+2<r&&B[C+1]==="?"&&B[C+2]==="<"&&C+3<r&&!"=!>)".includes(B[C+3])){t+="(?P<",C+=3,i=true;continue}let c=B.codePointAt(C),p=F.charCount(c);t+=B.substring(C,C+p),C+=p;}let o=i?t:B;return e.length>0?`(?${e})${o}`:o}},Jt=class P{static CASE_INSENSITIVE=X.CASE_INSENSITIVE;static DOTALL=X.DOTALL;static MULTILINE=X.MULTILINE;static DISABLE_UNICODE_GROUPS=X.DISABLE_UNICODE_GROUPS;static LONGEST_MATCH=X.LONGEST_MATCH;static LOOKBEHINDS=X.LOOKBEHINDS;static quote(B){return F.quoteMeta(B)}static quoteReplacement(B,e=false){return it.quoteReplacement(B,e)}static translateRegExp(B){return Li.translate(B)}static compile(B,e=0){let t=B;if((e&P.CASE_INSENSITIVE)!==0&&(t=`(?i)${t}`),(e&P.DOTALL)!==0&&(t=`(?s)${t}`),(e&P.MULTILINE)!==0&&(t=`(?m)${t}`),(e&-544)!==0)throw new ui("Flags should only be a combination of MULTILINE, DOTALL, CASE_INSENSITIVE, DISABLE_UNICODE_GROUPS, LONGEST_MATCH, LOOKBEHINDS");let i=D.PERL;(e&P.DISABLE_UNICODE_GROUPS)!==0&&(i&=-129),(e&P.LOOKBEHINDS)!==0&&(i|=D.LOOKBEHIND);let r=new P(B,e);return r.re2Input=Ti.compileImpl(t,i,(e&P.LONGEST_MATCH)!==0),r}static matches(B,e){return P.compile(B).testExact(e)}static initTest(B,e,t){if(B==null)throw new Error("pattern is null");if(t==null)throw new Error("re2 is null");let i=new P(B,e);return i.re2Input=t,i}constructor(B,e){this.patternInput=B,this.flagsInput=e,this.re2Input=null;}reset(){this.re2Input.reset();}flags(){return this.flagsInput}pattern(){return this.patternInput}re2(){return this.re2Input}matches(B){return this.testExact(B)}matcher(B){return F.isByteArray(B)&&(B=IB.utf8(B)),new it(this,B)}test(B){return F.isByteArray(B)?this.re2Input.matchUTF8(B):this.re2Input.match(B)}testExact(B){let e=F.isByteArray(B)?x.fromUTF8(B):x.fromUTF16(B);return this.re2Input.executeEngine(e,0,D.ANCHOR_BOTH,0)!==null}split(B,e=0){let t=this.matcher(B),i=[],r=0,s=0;for(;t.find();){if(s===0&&t.end()===0){s=t.end();continue}if(e>0&&i.length===e-1)break;if(s===t.start()){if(e===0){r+=1,s=t.end();continue}}else for(;r>0;)i.push(""),r-=1;i.push(t.substring(s,t.start())),s=t.end();}if(e===0&&s!==t.inputLength()){for(;r>0;)i.push(""),r-=1;i.push(t.substring(s,t.inputLength()));}return (e!==0||i.length===0)&&i.push(t.substring(s,t.inputLength())),i}*matchAll(B){let e=this.matcher(B);for(;e.find();){let t=[e.group(0)];for(let r=1;r<=e.groupCount();r++){let s=e.group(r);t.push(s===null?void 0:s);}t.index=e.start(0),t.input=B;let i=this.namedGroups();if(Object.keys(i).length>0){let r=e.getNamedGroups();for(let s in r)r[s]===null&&(r[s]=void 0);t.groups=r;}else t.groups=void 0;yield t;}}toString(){return this.patternInput}programSize(){return this.re2Input.numberOfInstructions()}groupCount(){return this.re2Input.numberOfCapturingGroups()}namedGroups(){return this.re2Input.namedGroups}equals(B){return this===B?true:B===null||this.constructor!==B.constructor?false:this.flagsInput===B.flagsInput&&this.patternInput===B.patternInput}};var pe=["number","string","boolean","wref","array"],wi=new Set(pe),Z=new Set([...pe,...pe.map(n=>`${n}?`)]);function V(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}var SB=new Set(["minLength","maxLength","pattern","enum"]),AB=new Set(["minimum","maximum","integer"]),NB=new Set(["shape"]),RB=new Set(["items","minItems","maxItems"]),vt=new Set(["type","description"]),VB=new Set([...vt,...SB,...AB,...NB,...RB]),bi={string:SB,number:AB,wref:NB,array:RB,boolean:new Set};function M(n){if(!V(n)||!("type"in n)||typeof n.type!="string"||!Z.has(n.type))return false;let B=n.type.endsWith("?")?n.type.slice(0,-1):n.type,e=bi[B]??new Set;return !(!Object.keys(n).every(t=>vt.has(t)||e.has(t))||"minLength"in n&&typeof n.minLength!="number"||"maxLength"in n&&typeof n.maxLength!="number"||"pattern"in n&&typeof n.pattern!="string"||"pattern"in n&&typeof n.pattern=="string"&&Z.has(n.pattern)&&B!=="string"||"enum"in n&&!Array.isArray(n.enum)||"minimum"in n&&typeof n.minimum!="number"||"maximum"in n&&typeof n.maximum!="number"||"integer"in n&&typeof n.integer!="boolean"||"shape"in n&&typeof n.shape!="string"||"shape"in n&&typeof n.shape=="string"&&Z.has(n.shape)&&B!=="wref"||"items"in n&&typeof n.items=="number"||"items"in n&&typeof n.items=="boolean"||"minItems"in n&&typeof n.minItems!="number"||"maxItems"in n&&typeof n.maxItems!="number")}function yi(n){return typeof n=="string"&&Z.has(n)?n:M(n)?n.type:null}function Kt(n){let B=yi(n);if(!B)return null;let e=B.endsWith("?")?B.slice(0,-1):B;return wi.has(e)?e:null}var Q=64*1024,TB=256,LB=256,xi="uses unsupported regex syntax",Ee=`WarmHub content fields are limited to ${Q} bytes. WarmHub is not a document store; store large documents in S3, Box, Drive, or another document system and reference them from WarmHub instead.`,Hi=new TextEncoder;function lB(n){return Hi.encode(n).byteLength}function fe(n,B){if(B.length*3<=Q)return null;let e=lB(B);return e<=Q?null:`Field "${n}" is ${e} bytes; ${Ee}`}function wB(n,B,e){let t=fe(n,B);t&&e.push(t);}function jB(n){try{return new RegExp(n),!1}catch{return true}}function _i(n){let B="",e=false;for(let t=0;t<n.length;t++){let i=n[t];if(i==="\\"){let r=n[t+1];if(e&&r==="b"){B+="\\x08",t++;continue}B+=i,r!==void 0&&(B+=r,t++);continue}i==="["?e=true:i==="]"&&(e=false),B+=i;}return B}function De(n){try{return Jt.compile(_i(n))}catch{return}}function Vt(n){return De(n)?void 0:xi}function $(n){return typeof n=="string"&&n.endsWith("?")?{spec:n.slice(0,-1),optionalByType:true}:M(n)&&typeof n.type=="string"&&n.type.endsWith("?")?{spec:{...n,type:n.type.slice(0,-1)},optionalByType:true}:{spec:n,optionalByType:false}}function YB(n,B){return n?.endsWith("?")||$(B).optionalByType}var jt=["org:read","org:configure","org:admin","org:action-callback"];function Gi(n){return jt.includes(n)}var Pi="003e7e6c-2f1e-53ea-9dfa-627edd04a8cc",Mi=/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/;function Yt(n){if(!Mi.test(n))throw new Error("Operation-event submission ID must be a canonical UUID");let B=n.toLowerCase().replaceAll("-","");return Uint8Array.from({length:16},(e,t)=>Number.parseInt(B.slice(t*2,t*2+2),16))}function ge(n,B){return (n<<B|n>>>32-B)>>>0}function ki(n){let B=n.length*8,e=Math.ceil((n.length+9)/64)*64,t=new Uint8Array(e);t.set(n),t[n.length]=128;let i=new DataView(t.buffer);i.setUint32(e-8,Math.floor(B/4294967296)),i.setUint32(e-4,B>>>0);let r=1732584193,s=4023233417,C=2562383102,o=271733878,u=3285377520,c=new Uint32Array(80);for(let d=0;d<e;d+=64){for(let y=0;y<16;y+=1)c[y]=i.getUint32(d+y*4);for(let y=16;y<80;y+=1)c[y]=ge((c[y-3]??0)^(c[y-8]??0)^(c[y-14]??0)^(c[y-16]??0),1);let O=r,S=s,L=C,R=o,U=u;for(let y=0;y<80;y+=1){let W,q;y<20?(W=S&L|~S&R,q=1518500249):y<40?(W=S^L^R,q=1859775393):y<60?(W=S&L|S&R|L&R,q=2400959708):(W=S^L^R,q=3395469782);let xn=ge(O,5)+W+U+q+(c[y]??0)>>>0;U=R,R=L,L=ge(S,30),S=O,O=xn;}r=r+O>>>0,s=s+S>>>0,C=C+L>>>0,o=o+R>>>0,u=u+U>>>0;}let p=new Uint8Array(20),g=new DataView(p.buffer);for(let[d,O]of [r,s,C,o,u].entries())g.setUint32(d*4,O);return p}function Ui(n){let B=Array.from(n,e=>e.toString(16).padStart(2,"0")).join("").slice(0,32);return `${B.slice(0,8)}-${B.slice(8,12)}-${B.slice(12,16)}-${B.slice(16,20)}-${B.slice(20)}`}function Ji(n,B){if(!Number.isInteger(B)||B<0||B>2147483647)throw new Error("Stream chunk ordinal must be an integer from 0 through 2147483647");Yt(n);let e=n.toLowerCase(),t=Yt(Pi),i=new TextEncoder().encode(`${e}:${B}`),r=ki(Uint8Array.from([...t,...i])).slice(0,16);return r[6]=(r[6]??0)&15|80,r[8]=(r[8]??0)&63|128,Ui(r)}var de=new Set([8203,8204,8205,8288,8294,8295,8296,8297,8234,8235,8236,8237,8238,8232,8233]);function me(n){return n<=31||n===127||n>=128&&n<=159}function vi(n){return n<=65535?`\\u${n.toString(16).padStart(4,"0")}`:`\\u{${n.toString(16)}}`}function Ki(n){for(let B of n){let e=B.codePointAt(0);if(e!==void 0&&(me(e)||de.has(e)||e===34))return true}return false}function Vi(n){return n.length<=120?n:`${n.slice(0,120)}...<truncated>`}function Qt(n){if(!Ki(n))return n;let B=JSON.stringify(n).slice(1,-1),e="";for(let t of B){let i=t.codePointAt(0);i!==void 0&&(e+=me(i)||de.has(i)?vi(i):t);}return e}function _(n){return Vi(Qt(n))}function ji(n){return Qt(n)}function bB(n){if(n.length===0)return {unsafe:true,reason:"empty field name"};if(n!==n.trim())return {unsafe:true,reason:"leading or trailing whitespace"};for(let B of n){let e=B.codePointAt(0);if(e!==void 0){if(me(e))return {unsafe:true,reason:`control character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`};if(de.has(e))return {unsafe:true,reason:`format or separator character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`}}}return {unsafe:false}}function yB(n){return n.endsWith("?")?n.slice(0,-1):n}function tB(...n){return Wt(_,n)}function xB(...n){return Wt(ji,n)}function Wt(n,B){return B.map(e=>typeof e=="number"?`[${e}]`:n(e)).join(".").replace(/\.\[/g,"[")}function fB(n,B,e,t){let i=Yi(B);if(typeof n=="string"){if(i.length>0)return;wB(t??"<value>",n,e);return}if(Array.isArray(n)){let s=i.filter(Wi);if(i.length>0&&s.length===0)return;let C=QB(s.map(Qi));for(let o=0;o<n.length;o++)fB(n[o],C,e,`${t??"<value>"}[${o}]`);return}if(!V(n))return;let r=QB(i.map(qi));if(!(i.length>0&&r.length===0))for(let[s,C]of Object.entries(n)){let o=t?tB(t,s):_(s);wB(o,s,e),fB(C,QB(r.map(u=>u.get(s))),e,o);}}function Yi(n){return QB(n.map(B=>$(B).spec))}function QB(n){return n.filter(B=>B!==void 0)}function Qi(n){if(Array.isArray(n))return n[0];if(M(n)&&n.type==="array")return n.items}function Wi(n){return n==="array"||Array.isArray(n)?true:M(n)&&n.type==="array"}function qi(n){if(!V(n)||M(n))return;let B=new Map;for(let[e,t]of Object.entries(n))B.set(e.endsWith("?")?e.slice(0,-1):e,t);return B}var WB=500;function zt(n){let B=new Set;for(let e of Object.keys(n))B.add(e.endsWith("?")?e.slice(0,-1):e);return B}function Xt(n,B){let e=[],t=0;for(let i of Object.keys(n))B.has(i)||(t++,e.length<WB&&e.push(i));if(t!==0)return t>WB?{undeclaredFields:e,undeclaredFieldsTruncated:true,totalUndeclared:t}:{undeclaredFields:e}}function $t(n,B={}){let e=Zt(n,B.enforceContentLimits!==false);return (t,i)=>{for(let r of e){let s=t[r.fieldName];if(s==null){r.isOptional||i.push(`Missing required field: "${r.displayName}"`);continue}r.validate(r.displayName,s,i);}}}function Zt(n,B){return Object.entries(n).map(([e,t])=>{let i=e.endsWith("?")?e.slice(0,-1):e,r=$(t);return {fieldName:i,displayName:_(i),isOptional:YB(e,t),validate:Oe(r.spec,B)}})}function Oe(n,B){if(typeof n=="string")return (e,t,i)=>qt(e,t,n,i,B);if(Array.isArray(n)){let e=n.length>0?Oe($(n[0]).spec,B):void 0;return (t,i,r)=>{if(!Array.isArray(i))r.push(`Field "${t}" expected array, got ${typeof i}`);else if(e)for(let s=0;s<i.length;s++)e(`${t}[${s}]`,i[s],r);}}if(M(n)){if((n.type.endsWith("?")?n.type.slice(0,-1):n.type)==="array"){let i="items"in n&&n.items!=null?Oe($(n.items).spec,B):void 0;return (r,s,C)=>{if(!Array.isArray(s)){C.push(`Field "${r}" expected array, got ${typeof s}`);return}if(typeof n.minItems=="number"&&s.length<n.minItems&&C.push(`Field "${r}" has ${s.length} items, minimum is ${n.minItems}`),typeof n.maxItems=="number"&&s.length>n.maxItems&&C.push(`Field "${r}" has ${s.length} items, maximum is ${n.maxItems}`),i)for(let o=0;o<s.length;o++)i(`${r}[${o}]`,s[o],C);}}let t=zi(n);return (i,r,s)=>{qt(i,r,n.type,s,B),t(i,r,s);}}if(V(n)){let e=Zt(n,B);return (t,i,r)=>{if(typeof i!="object"||i===null||Array.isArray(i)){r.push(`Field "${t}" expected object, got ${typeof i}`);return}let s=i;for(let C of e){let o=s[C.fieldName],u=tB(t,C.fieldName);if(o==null){C.isOptional||r.push(`Missing required field: "${u}"`);continue}C.validate(u,o,r);}}}return ()=>{}}function zi(n){let B=typeof n.pattern=="string"?n.pattern:void 0,e=B===void 0?void 0:Xi(B);return (t,i,r)=>{if(typeof i=="string"){if(typeof n.minLength=="number"&&i.length<n.minLength&&r.push(`Field "${t}" length ${i.length} is below minimum ${n.minLength}`),typeof n.maxLength=="number"&&i.length>n.maxLength&&r.push(`Field "${t}" length ${i.length} exceeds maximum ${n.maxLength}`),B!==void 0){let s=_(B);e?.kind==="unsupported"?r.push(`Field "${t}" has unsupported pattern "${s}"`):e?.kind==="invalid"?r.push(`Field "${t}" has invalid pattern "${s}" \u2014 skipping regex check`):e?.kind==="compiled"&&!e.regex.test(i)&&r.push(`Field "${t}" does not match pattern "${s}"`);}Array.isArray(n.enum)&&!n.enum.includes(i)&&r.push(`Field "${t}" value "${_(String(i))}" is not in allowed values: ${n.enum.map(s=>_(String(s))).join(", ")}`);}typeof i=="number"&&(typeof n.minimum=="number"&&i<n.minimum&&r.push(`Field "${t}" value ${i} is below minimum ${n.minimum}`),typeof n.maximum=="number"&&i>n.maximum&&r.push(`Field "${t}" value ${i} exceeds maximum ${n.maximum}`),n.integer===true&&!Number.isInteger(i)&&r.push(`Field "${t}" must be an integer, got ${i}`));}}function Xi(n){if(jB(n))return {kind:"invalid"};let B=De(n);return B?{kind:"compiled",regex:B}:{kind:"unsupported"}}function qt(n,B,e,t,i){switch(e){case "number":typeof B!="number"&&t.push(`Field "${n}" expected number, got ${typeof B}`);break;case "string":typeof B!="string"?t.push(`Field "${n}" expected string, got ${typeof B}`):i&&wB(n,B,t);break;case "wref":typeof B!="string"&&t.push(`Field "${n}" expected string, got ${typeof B}`);break;case "boolean":typeof B!="boolean"&&t.push(`Field "${n}" expected boolean, got ${typeof B}`);break;case "array":Array.isArray(B)||t.push(`Field "${n}" expected array, got ${typeof B}`);break;}}function Ie(n){let B=n.map(i=>$t(i.fields)),e=new Set;for(let i of n)for(let r of zt(i.fields))e.add(r);let t=n.map(i=>i.fields);return i=>{if(typeof i!="object"||i===null||Array.isArray(i))return {valid:false,errors:["Data must be a plain object"]};let r=i,s=[];for(let o of B)o(r,s);fB(r,t,s);let C=Xt(r,e);return s.length>0?C?{valid:false,errors:s,warnings:C}:{valid:false,errors:s}:C?{valid:true,warnings:C}:{valid:true}}}function Bn(n,B){return Fe(B)(n)}function Fe(n){return Ie([{name:"",fields:n}])}function Se(n){return (n.endsWith("?")?n.slice(0,-1):n).toLowerCase()}function en(n){return n.split(".").map(B=>Se(B)).join(".")}function $i(n,B){return n.allowUnsafeFieldNamePaths.has(B)}function HB(n,B,e,t,i){if(typeof e=="string"){Z.has(e)||t.push(`Invalid type at "${n}": "${_(e)}" (expected number|string|boolean|wref|array, optionally with ? suffix)`);return}if(Array.isArray(e)){if(e.length!==1){t.push(`Invalid array type at "${n}": array type spec must have exactly 1 element`);return}HB(`${n}[]`,`${B}[]`,e[0],t,i);return}if(V(e)){if(M(e)){Zi(n,B,e,t,i);return}if("type"in e&&typeof e.type=="string"&&Z.has(e.type)&&Object.keys(e).every(r=>VB.has(r))){let r=e.type.endsWith("?")?e.type.slice(0,-1):e.type,C=r==="string"?SB:r==="number"?AB:r==="wref"?NB:r==="array"?RB:new Set,o=Object.keys(e).filter(c=>c!=="type"&&c!=="description"&&!C.has(c));if(o.length>0&&o.some(p=>{let g=e[p];return typeof g!="string"&&!Array.isArray(g)&&!V(g)})){for(let p of o)t.push(`Constraint "${_(p)}" at "${n}" is not valid for type "${r}"`);return}if(o.length===0){let c=[];for(let[p,g]of Object.entries(e))p==="type"||p==="description"||C.has(p)&&((p==="minLength"||p==="maxLength"||p==="minimum"||p==="maximum"||p==="minItems"||p==="maxItems")&&typeof g!="number"?c.push(`Constraint "${p}" at "${n}" must be a number, got ${typeof g}`):p==="integer"&&typeof g!="boolean"?c.push(`Constraint "${p}" at "${n}" must be a boolean, got ${typeof g}`):p==="pattern"&&typeof g!="string"?c.push(`Constraint "${p}" at "${n}" must be a string, got ${typeof g}`):p==="enum"&&!Array.isArray(g)?c.push(`Constraint "${p}" at "${n}" must be an array, got ${typeof g}`):p==="shape"&&typeof g!="string"&&c.push(`Constraint "${p}" at "${n}" must be a string, got ${typeof g}`));if(c.length>0){t.push(...c);return}}if(Object.entries(e).some(([c,p])=>!(c==="type"||c==="description"||typeof p=="string"||Array.isArray(p)||V(p)))){t.push(`Object at "${n}" looks like a typed field object (type: "${_(String(e.type))}") but has constraint values with invalid types. Check that constraint values match their expected types (e.g., minLength must be a number, not a string).`);return}}for(let[r,s]of Object.entries(e)){let C=yB(r),o=bB(C),u=tB(n,r),c=xB(B,r);if(o.unsafe&&!$i(i,c)){t.push(`Invalid field name at "${u}": ${o.reason}`);continue}HB(u,c,s,t,i);}return}t.push(`Invalid type at "${n}": expected string, array, or object, got ${typeof e}`);}function Zi(n,B,e,t,i){let r=e.type;if(typeof r!="string"){t.push(`Invalid typed field object at "${n}": "type" must be a string`);return}if(!Z.has(r)){t.push(`Invalid type at "${n}.type": "${_(r)}" (expected number|string|boolean|wref|array, optionally with ? suffix)`);return}"description"in e&&typeof e.description!="string"&&t.push(`Invalid typed field object at "${n}": "description" must be a string`);let s=r.endsWith("?")?r.slice(0,-1):r;for(let C of Object.keys(e)){if(C==="type"||C==="description")continue;let o=_(C);s==="string"?SB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "string"`):s==="number"?AB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "number"`):s==="wref"?NB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "wref"`):s==="array"?RB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "array"`):t.push(`Constraint "${o}" at "${n}" is not valid for type "${s}"`);}if("minLength"in e&&(typeof e.minLength!="number"||!Number.isFinite(e.minLength)||e.minLength<0||!Number.isInteger(e.minLength))&&t.push(`"minLength" at "${n}" must be a non-negative finite integer`),"maxLength"in e&&(typeof e.maxLength!="number"||!Number.isFinite(e.maxLength)||e.maxLength<0||!Number.isInteger(e.maxLength))&&t.push(`"maxLength" at "${n}" must be a non-negative finite integer`),"minLength"in e&&"maxLength"in e&&typeof e.minLength=="number"&&typeof e.maxLength=="number"&&e.minLength>e.maxLength&&t.push(`"minLength" at "${n}" cannot exceed "maxLength"`),s==="string"&&typeof e.minLength=="number"&&Number.isFinite(e.minLength)&&Number.isInteger(e.minLength)&&e.minLength>Q&&t.push(`"minLength" at "${n}" cannot exceed ${Q}`),s==="string"&&typeof e.maxLength=="number"&&Number.isFinite(e.maxLength)&&Number.isInteger(e.maxLength)&&e.maxLength>Q&&t.push(`"maxLength" at "${n}" cannot exceed ${Q}`),"pattern"in e&&typeof e.pattern!="string"&&t.push(`"pattern" at "${n}" must be a string`),"pattern"in e&&typeof e.pattern=="string")if(jB(e.pattern))t.push(`"pattern" at "${n}" is not a valid regular expression`);else {let C=Vt(e.pattern);C&&t.push(`"pattern" at "${n}" ${C}`);}if("enum"in e){if(!Array.isArray(e.enum)||e.enum.length===0||!e.enum.every(C=>typeof C=="string"))t.push(`"enum" at "${n}" must be a non-empty array of strings`);else if(s==="string")for(let C of e.enum){let o=lB(C);if(o>Q){t.push(`"enum" value at "${n}" is ${o} bytes; string enum values cannot exceed ${Q} bytes`);break}}}"minimum"in e&&(typeof e.minimum!="number"||!Number.isFinite(e.minimum))&&t.push(`"minimum" at "${n}" must be a finite number`),"maximum"in e&&(typeof e.maximum!="number"||!Number.isFinite(e.maximum))&&t.push(`"maximum" at "${n}" must be a finite number`),"minimum"in e&&"maximum"in e&&typeof e.minimum=="number"&&typeof e.maximum=="number"&&e.minimum>e.maximum&&t.push(`"minimum" at "${n}" cannot exceed "maximum"`),"integer"in e&&typeof e.integer!="boolean"&&t.push(`"integer" at "${n}" must be a boolean`),"shape"in e&&(typeof e.shape!="string"?t.push(`"shape" at "${n}" must be a string (shape name)`):e.shape===""&&t.push(`"shape" at "${n}" must not be empty`)),"minItems"in e&&(typeof e.minItems!="number"||!Number.isFinite(e.minItems)||e.minItems<0||!Number.isInteger(e.minItems))&&t.push(`"minItems" at "${n}" must be a non-negative finite integer`),"maxItems"in e&&(typeof e.maxItems!="number"||!Number.isFinite(e.maxItems)||e.maxItems<0||!Number.isInteger(e.maxItems))&&t.push(`"maxItems" at "${n}" must be a non-negative finite integer`),"minItems"in e&&"maxItems"in e&&typeof e.minItems=="number"&&typeof e.maxItems=="number"&&e.minItems>e.maxItems&&t.push(`"minItems" at "${n}" cannot exceed "maxItems"`),s==="array"&&("items"in e?HB(`${n}.items`,`${B}.items`,e.items,t,i):t.push(`Typed array at "${n}" must have an "items" key specifying the element type`));}function Br(n={}){return {allowUnsafeFieldNamePaths:new Set(n.allowUnsafeFieldNamePaths??[])}}function er(n,B){return n.allowUnsafeFieldNamePaths.has(B)}var tr=new Set(["fields","description"]);function qB(n,B=""){let e=[];for(let[t,i]of Object.entries(n)){let r=t.endsWith("?")?t.slice(0,-1):t,s=B?`${B}.${r}`:r,C=Kt(i);if(C==="string"||C==="wref"||C==="number"||C==="boolean"){e.push(s);continue}M(i)||V(i)&&e.push(...qB(i,s));}return e}function Ne(n){return !(!V(n)||Array.isArray(n)||M(n)||"type"in n&&typeof n.type=="string"&&Z.has(n.type)&&Object.keys(n).every(B=>VB.has(B)))}function tn(n,B,e,t,i=B){let r=new Map;for(let[s,C]of Object.entries(n)){let o=yB(s),u=bB(o),c=tB(B,s),p=xB(i,s);if(u.unsafe&&!er(t,p)){e.push(`Invalid field name at "${c}": ${u.reason}`);continue}let g=Se(s),d=r.get(g);if(d!==void 0){e.push(`${tB(B,s)}: duplicate field name. Shape already declares "${_(d)}" (case-insensitive match).`);continue}r.set(g,s),Ne(C)?tn(C,c,e,t,p):HB(c,p,C,e,t);}}function Ae(n,B,e){if(Array.isArray(B)){B.length===1&&Ae(`${n}[]`,B[0],e);return}if(M(B)){let t=$(B).spec;M(t)&&typeof t.type=="string"&&t.type==="array"&&"items"in t&&Ae(`${n}.items`,t.items,e);return}Ne(B)&&Re(B,n,e);}function Re(n,B,e){for(let[t,i]of Object.entries(n)){let r=xB(B,t);bB(yB(t)).unsafe&&e.push(r),Ne(i)?Re(i,r,e):Ae(r,i,e);}}function nn(n){if(typeof n!="object"||n===null||Array.isArray(n))return [];let B=n.fields;if(typeof B!="object"||B===null||Array.isArray(B))return [];let e=[];return Re(B,"fields",e),e}function rn(n,B={}){if(typeof n!="object"||n===null||Array.isArray(n))return {valid:false,errors:["Shape definition must be a plain object"]};let e=n,t=[];for(let c of Object.keys(e))tr.has(c)||t.push(`Unsupported shape definition key "${_(c)}"`);if(!("fields"in e))return {valid:false,errors:['Shape definition must have a "fields" property']};let i=e.fields;if(typeof i!="object"||i===null||Array.isArray(i))return {valid:false,errors:['"fields" must be a plain object mapping field names to types']};let r=Br(B);tn(i,"fields",t,r);let s=qB(i),C=s.length,o=new Set,u=new Set;for(let c of s){let p=lB(c);p>LB&&t.push(`Indexable field path "${_(c)}" is ${p} bytes; maximum is ${LB}`);let g=en(c);if(o.has(g)){u.add(g);continue}o.add(g);}for(let c of u)t.push(`Shape declares ambiguous indexable field path "${_(c)}"; dotted field names, optional-key suffixes, and case-insensitive folded paths must not collide with another indexable path`);return C>TB&&t.push(`Shape declares ${C} indexable scalar fields; maximum is ${TB}`),"description"in e&&typeof e.description!="string"&&t.push('"description" must be a string'),fB(e,[],t),t.length>0?{valid:false,errors:t}:{valid:true}}function uB(n){if(!n||typeof n!="object")return JSON.stringify(n);if(Array.isArray(n))return `[${n.map(e=>uB(e)).join(",")}]`;let B=n;return `{${Object.keys(B).sort().map(e=>`${JSON.stringify(e)}:${uB(B[e])}`).join(",")}}`}var Te=["Arc","Bond","Pair","Set","List"],sn=["Triple"],rr=[...Te,...sn];function Cn(n){return Te.includes(n)}function zB(n){return sn.includes(n)}function XB(n){return rr.includes(n)}var sr=["Content"];var Cr=["Readme","Agents"],or=["LlmsTxt"],on=n=>n==="Content";var an=n=>Cr.includes(n),ln=n=>or.includes(n);var un=["View"],ar=n=>un.includes(n),cn=["LicenseSubject","LicenseDeclaration"],lr=n=>cn.includes(n);function hn(n){return XB(n)||ar(n)||lr(n)}function $B(n){return Te.includes(n)||sr.includes(n)||un.includes(n)||cn.includes(n)}function pn(n,B){let e=[];return gr(n,e,B?.checkAddAdd??true,B),e}function fr(n,B){return B?.sourceOperationIndexes?.[n]??n}function Dr(n){return n.name}function gr(n,B,e,t){let i=new Map;for(let r=0;r<n.length;r++){let s=n[r];if(!s)continue;let C=Dr(s);if(!C)continue;let u=re({...s,name:C})==="shape"?`shape:${C}`:`thing:${C}`,c=i.get(u)??[];c.push({operation:s.operation,index:fr(r,t)}),i.set(u,c);}for(let[r,s]of i)if(!(s.length<2))for(let C=1;C<s.length;C++){let o=s[C-1],u=s[C];if(!o||!u)continue;let c=`${o.operation}+${u.operation}`;e&&c==="add+add"&&B.push({code:"ILLEGAL_OP_SEQUENCE",operationIndex:u.index,message:`Cannot add "${r}" twice in the same commit`}),c==="revise+add"&&B.push({code:"ILLEGAL_OP_SEQUENCE",operationIndex:u.index,message:`Cannot revise then add "${r}" in the same commit`});}}var dr=["arc","bond","set","list","pair"],mr=["arc","bond","set","list"],Or=["add","revise"],Le="Collection create requires a name. Collections are ordinary named things (ADR 0004).",we='about accepts a wref. Create the collection as its own named operation, then point the assertion at it. Prefer deterministic relationship names, for example: [{"operation":"add","kind":"collection","type":"arc","name":"a-to-b","members":["A","B"]},{"operation":"add","kind":"assertion","about":"Arc/a-to-b","name":"Assertion/example","data":{}}]. For CLI usage, use wh commit submit --file with the two operations.';function Ir(n){return dr.find(B=>B===n)??null}function Fr(n){return Or.find(B=>B===n)??null}function En(n,B){let e=[];return e.push(...Sr(n,B)),e.push(...Ar(n,B)),e.push(...Nr(n,B)),e.push(...Rr(n,B)),e.push(...Tr(n,B)),e}function Sr(n,B){let e=[],t=n.name,i=n.operation==="rename"&&(n.kind==="shape"||n.name!==void 0&&!CB(n.name)),r=i&&t!==void 0&&hn(t)&&n.newName!==void 0&&!XB(n.newName)&&!$B(n.newName);if(t&&zB(t)&&!r&&e.push({code:"RESERVED_NAME",operationIndex:B,message:`Shape "${t}" is a retired collection shape and cannot be written manually`}),n.operation==="rename"&&(n.kind==="shape"||n.name!==void 0&&!CB(n.name))&&n.newName&&zB(n.newName))e.push({code:"RESERVED_NAME",operationIndex:B,message:`Shape "${n.newName}" is a retired collection shape and cannot be written manually`});else {let s=t&&$B(t)&&!r?t:i&&n.newName&&$B(n.newName)?n.newName:void 0;if(s&&(i||n.operation!=="retract"&&n.kind==="shape")){let C=n.operation==="add"?"created":n.operation==="rename"?"renamed":"revised";e.push({code:"RESERVED_NAME",operationIndex:B,message:`Shape "${s}" is a built-in shape and cannot be ${C} manually`});}}if(t){let s=CB(t);if(s&&zB(s.shapePrefix))e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Cannot ${n.operation} under retired collection shape "${s.shapePrefix}". Triple is read-only and retired for new collection writes.`});else if(n.kind==="thing"&&s&&Cn(s.shapePrefix)){let C=n.operation==="add"?`Cannot add kind="thing" under built-in shape "${s.shapePrefix}". Use kind="collection" instead.`:`Cannot revise kind="thing" under built-in shape "${s.shapePrefix}". Use kind="collection" to revise a collection.`;e.push({code:"VALIDATION_ERROR",operationIndex:B,message:C});}}return e}function Ar(n,B){if(n.kind!=="thing"||!n.name)return [];let e=CB(n.name);if(!e||!on(e.shapePrefix))return [];let t=e.bareName;return ln(t)?[{code:"READ_ONLY_BUILTIN_CONTENT",operationIndex:B,message:`${e.shapePrefix}/${t} is synthesized; writes are not allowed`}]:an(t)?[]:[{code:"UNKNOWN_CONTENT_NAME",operationIndex:B,message:`${e.shapePrefix}/${t} is not a recognized well-known content name`}]}function Nr(n,B){let e=[],t=n.name;if(n.newName?.includes("+"))return e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Name "${n.newName}" contains reserved character "+". The "+" character is reserved for the historical collection auto-name namespace and is not allowed in user-supplied names.`}),e;if(t?.includes("+")){if(n.kind==="collection"&&n.operation==="add")return e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Name "${t}" contains reserved character "+". The "+" character is reserved for the historical collection auto-name namespace and is not allowed in user-supplied names.`}),e;if(n.kind==="collection")return e;let i=CB(t);if(i&&XB(i.shapePrefix))return e;e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Name "${t}" contains reserved character "+". The "+" character is reserved for the historical collection auto-name namespace and is not allowed in user-supplied names.`});}return e}function Rr(n,B){let e=[];return !n.about||typeof n.about=="string"||e.push({code:"VALIDATION_ERROR",operationIndex:B,message:we}),e}function Tr(n,B){let e=[];if(n.kind!=="collection"||Fr(n.operation)===null)return e;n.operation==="add"&&!n.name&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:Le});let t=Ir(n.type);if(t===null&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Collection "type" is invalid. Use one of: ${mr.join(", ")}. Got: "${n.type??""}"`}),!n.members||!Array.isArray(n.members))e.push({code:"VALIDATION_ERROR",operationIndex:B,message:'Collection requires a "members" array'});else for(let i=0;i<n.members.length;i++)typeof n.members[i]!="string"&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Collection member at index ${i} must be a string`});if(t!==null&&n.members){let i=Lr(t,n.members);i&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:i});}return e}function Lr(n,B){switch(n){case "arc":return B.length!==2?`Arc requires exactly 2 members, got ${B.length}`:null;case "bond":return B.length!==2?`Bond requires exactly 2 members, got ${B.length}`:null;case "pair":return B.length!==2?`Pair requires exactly 2 members, got ${B.length}`:null;case "set":case "list":return B.length<1?`${n==="set"?"Set":"List"} requires at least 1 member, got 0`:null;default:return n}}function wr(n,B){return En(n,B)}function br(n,B){return pn(n,B)}var yr=new TextEncoder;async function ZB(n){let B=new Uint8Array(await crypto.subtle.digest("SHA-256",Uint8Array.from(n)));return Array.from(B,e=>e.toString(16).padStart(2,"0")).join("")}function _B(n){return nB(n),yr.encode(n)}function nB(n){for(let B=0;B<n.length;B+=1){let e=n.charCodeAt(B);if(e>=55296&&e<=56319){let t=n.charCodeAt(B+1);if(!(t>=56320&&t<=57343))throw new RangeError("Checkpoint text must be valid Unicode");B+=1;}else if(e>=56320&&e<=57343)throw new RangeError("Checkpoint text must be valid Unicode")}}function iB(n,B){nB(n),nB(B);let e=0,t=0;for(;e<n.length&&t<B.length;){let i=n.codePointAt(e),r=B.codePointAt(t);if(i===void 0||r===void 0)break;let s=i-r;if(s!==0)return s;e+=i>65535?2:1,t+=r>65535?2:1;}return e===n.length&&t===B.length?0:e===n.length?-1:1}var He=67108864,Be=10,fn="warmhub-repository-checkpoint",Dn=2,xr="repository-checkpoint.json";var _e=z$1.string().regex(/^[0-9a-f]{64}$/),ye=z$1.number().int().nonnegative().safe(),xe=z$1.number().int().positive().safe(),Hr=z$1.number().finite().refine(n=>!Number.isInteger(n)||Number.isSafeInteger(n),"JSON integers must be safe integers"),DB=z$1.lazy(()=>z$1.union([z$1.null(),z$1.boolean(),Hr,z$1.string(),z$1.array(DB),z$1.record(z$1.string(),DB)])),be=z$1.object({wref:z$1.string().min(1),durableId:z$1.string().min(1),version:z$1.number().int().positive().safe(),active:z$1.literal(true),data:DB}),gn=z$1.string().regex(/^[^\r\n]+@v[1-9]\d*$/,"Checkpoint wref must be pinned with @vN"),_r=z$1.array(gn).superRefine((n,B)=>{for(let e=1;e<n.length;e+=1){let t=n[e-1],i=n[e];t!==void 0&&i!==void 0&&iB(t,i)>=0&&B.addIssue({code:"custom",path:[e],message:"Affirmed wrefs must be unique and strictly increasing"});}}),Ge=z$1.discriminatedUnion("kind",[be.extend({kind:z$1.literal("shape")}).strict(),be.extend({kind:z$1.enum(["thing","collection"]),shapeName:z$1.string().min(1)}).strict(),be.extend({kind:z$1.literal("assertion"),shapeName:z$1.string().min(1),aboutWref:gn,affirmedWrefs:_r}).strict()]),dn=z$1.object({part:ye,path:z$1.string().min(1),recordCount:xe,byteLength:xe,sha256:_e}).strict(),mn=z$1.object({shapeName:z$1.string().min(1),recordCount:xe,chunks:z$1.array(dn).min(1)}).strict(),Gr={format:z$1.literal(fn),formatVersion:z$1.literal(Dn),checkpointId:z$1.string().uuid(),repository:z$1.object({id:z$1.string().uuid(),org:z$1.string().min(1),repo:z$1.string().min(1)}).strict(),repoSeq:ye,complete:z$1.literal(true),recordCount:ye,streams:z$1.array(mn)},Pe=z$1.object(Gr).strict(),ee=Pe.extend({contentSha256:_e}).strict();new TextEncoder;var Pr=new TextDecoder("utf-8",{fatal:true});function Me(n,B){if(n.length===0||n.at(-1)!==10)throw new Error(`${B} must end with one LF`);if(n.length>=3&&n[0]===239&&n[1]===187&&n[2]===191)throw new Error(`${B} must not contain a UTF-8 BOM`);for(let e=0;e<n.length-1;e+=1)if(n[e]===10||n[e]===13)throw new Error(`${B} must contain exactly one LF and no CR`)}function gB(n,B,e){Me(n,e);let t=Pr.decode(n),i=B.parse(JSON.parse(t.slice(0,-1)));if(t!==`${uB(i)}
21
- `)throw new Error(`${e} bytes are not canonical`);return i}var On=10**Be-1;async function Mr(n){if(n.length===0)throw new RangeError("Checkpoint Shape name must not be empty");return ZB(_B(n))}async function kr(n,B){return Ur(B),`records/${await Mr(n)}/part-${B.toString().padStart(Be,"0")}.jsonl`}async function In(n,B,e){let t=await kr(B,e);if(n!==t)throw new Error("Checkpoint chunk path does not match its Shape and part")}function Ur(n){if(!Number.isSafeInteger(n)||n<0||n>On)throw new RangeError(`Checkpoint chunk part must be an integer from 0 through ${On}`)}var Jr=new TextDecoder("utf-8",{fatal:true});async function ke(n){let B=ee.parse(n),{contentSha256:e,...t}=B;await Vr(t);let i=await Kr(t);if(e!==i)throw new Error("Checkpoint manifest content digest does not match");return B}async function Sn(n){let B=await ke(n);return _B(`${uB(B)}
22
- `)}async function vr(n){Me(n,"Checkpoint manifest");let B=Jr.decode(n),e=await ke(ee.parse(JSON.parse(B.slice(0,-1)))),t=await Sn(e);if(!jr(n,t))throw new Error("Checkpoint manifest bytes are not canonical");return e}async function Kr(n){return ZB(_B(uB(n)))}async function Vr(n){let B,e=0;for(let t of n.streams){if(B!==void 0&&iB(B,t.shapeName)>=0)throw new Error("Checkpoint manifest streams must be strictly increasing by Shape name");B=t.shapeName;let i=0;for(let[r,s]of t.chunks.entries()){if(s.part!==r)throw new Error("Checkpoint manifest chunk parts must be contiguous and zero-based");if(await In(s.path,t.shapeName,s.part),s.byteLength>He&&s.recordCount!==1)throw new Error("An oversized checkpoint chunk must contain exactly one row");i=Fn(i,s.recordCount);}if(t.recordCount!==i)throw new Error("Checkpoint manifest stream record count does not match");e=Fn(e,t.recordCount);}if(n.recordCount!==e)throw new Error("Checkpoint manifest record count does not match")}function Fn(n,B){let e=n+B;if(!Number.isSafeInteger(e))throw new RangeError("Checkpoint manifest count sum must be a safe integer");return e}function jr(n,B){return n.length!==B.length?false:n.every((e,t)=>e===B[t])}function Qr(n){return gB(n,Ge,"Checkpoint row")}function Wr(n){if(n.length===0)throw new Error("Checkpoint stream Shape name must not be empty");return nB(n),{shapeName:n,recordCount:0,hasShapeDefinition:false}}function qr(n,B){let e=B;if(nB(e.wref),nB(e.durableId),e.kind==="assertion"&&nB(e.aboutWref),(e.kind==="shape"?e.wref:e.shapeName)!==n.shapeName)throw new Error("Checkpoint row is grouped under the wrong Shape stream");if(e.kind!=="shape"){let i=`${e.shapeName}/`;if(!e.wref.startsWith(i)||e.wref.length===i.length)throw new Error("Checkpoint row wref does not belong to its declared Shape")}if(n.previousWref!==void 0&&iB(n.previousWref,e.wref)>=0)throw new Error("Checkpoint stream rows must be strictly increasing by wref");return e.kind==="shape"&&(n.hasShapeDefinition=true),n.previousWref=e.wref,n.recordCount=Xr(n.recordCount),e}function zr(n){if(!n.hasShapeDefinition)throw new Error("Checkpoint stream must contain its matching Shape definition");return n.recordCount}function Xr(n){let B=n+1;if(!Number.isSafeInteger(B))throw new RangeError("Checkpoint stream record count must be a safe integer");return B}var Nn=3,$r="application/x-ndjson",Rn=z$1.string().regex(/^[0-9a-f]{64}$/),te=z$1.number().int().nonnegative(),Je=z$1.number().int().positive(),Tn=["shape","thing","collection","assertion"],Ln=["heads","ops"],wn=["captured","migration-stamped","reconstructed"],ve=z$1.object({name:z$1.string().min(1),v:Je,durableId:z$1.string().min(1),provenance:z$1.enum(wn),declared:z$1.boolean()}).strict(),Ke=z$1.object({wref:z$1.string().min(1),v:Je.optional(),durableId:z$1.string().min(1)}).strict();function bn(n,B,e,t){let i;n.forEach((r,s)=>{let C=B(r);i!==void 0&&iB(i,C)>=0&&t.addIssue({code:"custom",path:[s],message:e}),i=C;});}var An=z$1.array(ve).superRefine((n,B)=>{bn(n,e=>e.durableId,"Shape certificates must be unique and strictly increasing by durableId",B);}),Zr=z$1.array(Ke).superRefine((n,B)=>{bn(n,e=>e.wref,"Affirmed references must be unique and strictly increasing",B);}),yn={wref:z$1.string().min(1),durableId:z$1.string().min(1),version:Je},Ue={...yn,active:z$1.literal(true),data:z$1.record(z$1.string(),DB)},Bs=z$1.discriminatedUnion("kind",[z$1.object({...Ue,kind:z$1.literal("shape"),shapes:z$1.array(ve).max(0)}).strict(),z$1.object({...Ue,kind:z$1.enum(["thing","collection"]),shapes:An}).strict(),z$1.object({...Ue,kind:z$1.literal("assertion"),shapes:An,about:Ke,affirmed:Zr}).strict()]),es=z$1.object({...yn,kind:z$1.enum(Tn),active:z$1.literal(false)}).strict(),Ve=z$1.union([Bs,es]),je=z$1.object({kind:z$1.literal("header"),formatVersion:z$1.literal(Nn),repo:z$1.string().regex(/^[^/\s]+\/[^/\s]+$/,'repo must be "<org>/<repo>"'),mode:z$1.enum(Ln),sinceRepoSeq:te,atRepoSeq:te}).strict().refine(n=>n.atRepoSeq>=n.sinceRepoSeq,"atRepoSeq must not precede sinceRepoSeq"),Ye=z$1.object({kind:z$1.literal("trailer"),recordCount:te,contentSha256:Rn,atRepoSeq:te}).strict();function ts(n){return n.sinceRepoSeq>0}function ns(n){return gB(n,Ve,"Repository export row")}function is(n){return gB(n,je,"Repository export header")}function rs(n){return gB(n,Ye,"Repository export trailer")}var ss=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Cs=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),dB=64;function BB(n,B){return (n>>>B|n<<32-B)>>>0}var ne=class{#e=Uint32Array.from(Cs);#t=new Uint32Array(64);#n=new Uint8Array(dB);#B=0;#i=0;#r=false;update(B){if(this.#r)throw new Error("SHA-256 hasher is already finalized");if(this.#i+=B.length,!Number.isSafeInteger(this.#i))throw new RangeError("SHA-256 input length must be a safe integer");let e=0;if(this.#B>0){let t=Math.min(dB-this.#B,B.length);if(this.#n.set(B.subarray(0,t),this.#B),this.#B+=t,e=t,this.#B<dB)return;this.#s(this.#n,0),this.#B=0;}for(;e+dB<=B.length;)this.#s(B,e),e+=dB;e<B.length&&(this.#n.set(B.subarray(e),0),this.#B=B.length-e);}digestHex(){if(this.#r)throw new Error("SHA-256 hasher is already finalized");this.#r=true;let B=new Uint8Array(this.#B<56?64:128);B.set(this.#n.subarray(0,this.#B),0),B[this.#B]=128;let e=new DataView(B.buffer);e.setUint32(B.length-8,Math.floor(this.#i/536870912)),e.setUint32(B.length-4,this.#i<<3>>>0);for(let t=0;t<B.length;t+=dB)this.#s(B,t);return Array.from(this.#e,t=>t.toString(16).padStart(8,"0")).join("")}#s(B,e){let t=this.#t;for(let d=0;d<16;d+=1){let O=e+d*4;t[d]=(B[O]<<24|B[O+1]<<16|B[O+2]<<8|B[O+3])>>>0;}for(let d=16;d<64;d+=1){let O=t[d-15],S=t[d-2],L=(BB(O,7)^BB(O,18)^O>>>3)>>>0,R=(BB(S,17)^BB(S,19)^S>>>10)>>>0;t[d]=t[d-16]+L+t[d-7]+R>>>0;}let i=this.#e,r=i[0],s=i[1],C=i[2],o=i[3],u=i[4],c=i[5],p=i[6],g=i[7];for(let d=0;d<64;d+=1){let O=(BB(u,6)^BB(u,11)^BB(u,25))>>>0,S=(u&c^~u&p)>>>0,L=g+O+S+ss[d]+t[d]>>>0,R=(BB(r,2)^BB(r,13)^BB(r,22))>>>0,U=(r&s^r&C^s&C)>>>0,y=R+U>>>0;g=p,p=c,c=u,u=o+L>>>0,o=C,C=s,s=r,r=L+y>>>0;}i[0]=r+i[0]>>>0,i[1]=s+i[1]>>>0,i[2]=C+i[2]>>>0,i[3]=o+i[3]>>>0,i[4]=u+i[4]>>>0,i[5]=c+i[5]>>>0,i[6]=p+i[6]>>>0,i[7]=g+i[7]>>>0;}};var ie=class{#e=new ne;#t=0;get rowCount(){return this.#t}update(B){this.#e.update(B),this.#t+=1;}finalize(){return this.#e.digestHex()}};function os(){return new ie}/*! Bundled license information:
19
+ `)));let s=true;for(;!B.more()||B.peek()!==E.CODES.get("]")||s;){if(B.more()&&B.lookingAt("-")&&(this.flags&D.PERL_X)===0&&!s){let c=B.rest();if(c==="-"||!c.startsWith("-]"))throw B.rewindTo(e),new _(S.ERR_INVALID_CHAR_RANGE,B.rest())}s=false;let C=B.pos();if(B.lookingAt("[:")){if(this.parseNamedClass(B,i))continue;B.rewindTo(C);}if(this.parseUnicodeClass(B,i)||this.parsePerlClassEscape(B,i))continue;B.rewindTo(C);let o=S.parseClassChar(B,e),u=o;if(B.more()&&B.lookingAt("-")){if(B.skip(1),B.more()&&B.lookingAt("]"))B.skip(-1);else if(u=S.parseClassChar(B,e),u<o)throw new _(S.ERR_INVALID_CHAR_RANGE,B.from(C))}(this.flags&D.FOLD_CASE)===0?i.appendRange(o,u):i.appendFoldedRange(o,u);}B.skip(1),i.cleanClass(),r<0&&i.negateClass(),t.runes=i.toArray(),this.push(t);}},ni=class{constructor(n){this.value=n;}get(){return this.value}set(n){this.value=n;}compareAndSet(n,B){return this.value===n?(this.value=B,true):false}},ii=class oB{static initTest(B){let e=oB.compile(B),t=new oB(e.expr,e.prog,e.numSubexp,e.longest);return t.cond=e.cond,t.prefix=e.prefix,t.prefixUTF8=e.prefixUTF8,t.prefixComplete=e.prefixComplete,t.prefixRune=e.prefixRune,t.prefilter=e.prefilter,t}static compile(B){return oB.compileImpl(B,D.PERL,false)}static compilePOSIX(B){return oB.compileImpl(B,D.POSIX,true)}static compileImpl(B,e,t){let i=yt.parse(B,e),r=i.maxCap();i=wt.simplify(i);let s=Bi.build(i),C=Lt.compileRegexp(i),o=new oB(B,C,r,t);o.prefilter=s.type===y.Type.NONE?null:s;let[u,c]=C.prefix();return o.prefixComplete=u,o.prefix=c,o.prefixUTF8=I.stringToUtf8ByteArray(o.prefix),o.prefix.length>0&&(o.prefixRune=o.prefix.codePointAt(0)),o.namedGroups=i.namedGroups,o}static match(B,e){return oB.compile(B).match(e)}constructor(B,e,t=0,i=0){this.expr=B,this.prog=e,this.numSubexp=t,this.longest=i,this.cond=e.startCond(),this.prefix=null,this.prefixUTF8=null,this.prefixComplete=false,this.prefixRune=0,this.pooled=new ni,this.dfa=new Nt(this.prog),this.onepass=Ze.compile(this.prog),this.prefilter=null;}matchPrefixComplete(B,e,t,i){if((t===D.ANCHOR_START||t===D.ANCHOR_BOTH)&&e!==0)return null;let r=-1,s=-1,C=B.prefixLength(this);if(t===D.UNANCHORED){let o=B.index(this,e);if(o<0)return null;r=e+o,s=r+C;}else if(t===D.ANCHOR_BOTH){if(B.endPos()!==C||B.index(this,0)!==0)return null;r=0,s=C;}else if(t===D.ANCHOR_START){if(B.index(this,0)!==0)return null;r=0,s=C;}if(r<0)return null;if(i>0){let o=new Int32Array(i).fill(-1);return o[0]=r,o[1]=s,Array.from(o)}return []}executeEngine(B,e,t,i){if(this.prefixComplete&&(i===0||this.numSubexp===0))return this.matchPrefixComplete(B,e,t,i);if(this.prefilter!==null&&t===D.UNANCHORED&&!this.prefilter.eval(B,e))return null;if(this.onepass!==null)return Ze.execute(this,B,e,t,i);if(i>0)return this.prog.numLb===0&&B.endPos()<=kB.maxBitStateLen(this.prog)?kB.execute(this,B,e,t,i):this.doExecuteNFA(B,e,t,i);if(this.prog.numLb===0){let r=this.dfa.match(B,e,t);if(r!==null)return r?[]:null;if(B.endPos()<=kB.maxBitStateLen(this.prog))return kB.execute(this,B,e,t,i)}return this.doExecuteNFA(B,e,t,i)}numberOfCapturingGroups(){return this.numSubexp}numberOfInstructions(){return this.prog.numInst()}get(){let B;do B=this.pooled.get();while(B&&!this.pooled.compareAndSet(B,B.next));return B}reset(){this.pooled.set(null);}put(B,e){let t=this.pooled.get();do t=this.pooled.get(),!e&&t&&(B=JB.fromMachine(B),e=true),B.next!==t&&(B.next=t);while(!this.pooled.compareAndSet(t,B))}toString(){return this.expr}doExecuteNFA(B,e,t,i){let r=this.get(),s=false;r?r.next!==null&&(r=JB.fromMachine(r),s=true):(r=JB.fromRE2(this),s=true),r.init(i);let C=r.match(B,e,t)?r.submatches():null;return this.put(r,s),C}match(B){return this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,0)!==null}matchWithGroup(B,e,t,i,r){return B instanceof EB||(I.isByteArray(B)?B=SB.utf8(B):B=SB.utf16(B)),this.matchMachineInput(B,e,t,i,r)}matchMachineInput(B,e,t,i,r){if(e>t)return [false,null];let s=B.isUTF16Encoding()?x.fromUTF16(B.asCharSequence(),0,t):x.fromUTF8(B.asBytes(),0,t),C=this.executeEngine(s,e,i,2*r);return C===null?[false,null]:[true,C]}matchUTF8(B){return this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,0)!==null}replaceAll(B,e){return this.replaceAllFunc(B,()=>e,2*B.length+1)}replaceFirst(B,e){return this.replaceAllFunc(B,()=>e,1)}replaceAllFunc(B,e,t){let i=0,r=0,s="",C=x.fromUTF16(B),o=0;for(;r<=B.length;){let u=this.executeEngine(C,r,D.UNANCHORED,2);if(u===null||u.length===0)break;s+=B.substring(i,u[0]),(u[1]>i||u[0]===0)&&(s+=e(B.substring(u[0],u[1])),o++),i=u[1];let c=C.step(r)&7;if(r+c>u[1]?r+=c:r+1>u[1]?r++:r=u[1],o>=t)break}return s+=B.substring(i),s}pad(B){if(B===null)return null;let e=(1+this.numSubexp)*2;if(B.length<e){let t=new Array(e).fill(-1);for(let i=0;i<B.length;i++)t[i]=B[i];B=t;}return B}allMatches(B,e,t=i=>i){let i=[],r=B.endPos();e<0&&(e=r+1);let s=0,C=0,o=-1;for(;C<e&&s<=r;){let u=this.executeEngine(B,s,D.UNANCHORED,this.prog.numCap);if(u===null||u.length===0)break;let c=true;if(u[1]===s){u[0]===o&&(c=false);let p=B.step(s);p<0?s=r+1:s+=p&7;}else s=u[1];o=u[1],c&&(i.push(t(this.pad(u))),C++);}return i}findUTF8(B){let e=this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,2);return e===null?null:B.slice(e[0],e[1])}findUTF8Index(B){let e=this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,2);return e===null?null:e.slice(0,2)}find(B){let e=this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,2);return e===null?"":B.substring(e[0],e[1])}findIndex(B){return this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,2)}findUTF8Submatch(B){let e=this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,this.prog.numCap);if(e===null)return null;let t=new Array(1+this.numSubexp).fill(null);for(let i=0;i<t.length;i++)2*i<e.length&&e[2*i]>=0&&(t[i]=B.slice(e[2*i],e[2*i+1]));return t}findUTF8SubmatchIndex(B){return this.pad(this.executeEngine(x.fromUTF8(B),0,D.UNANCHORED,this.prog.numCap))}findSubmatch(B){let e=this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,this.prog.numCap);if(e===null)return null;let t=new Array(1+this.numSubexp).fill(null);for(let i=0;i<t.length;i++)2*i<e.length&&e[2*i]>=0&&(t[i]=B.substring(e[2*i],e[2*i+1]));return t}findSubmatchIndex(B){return this.pad(this.executeEngine(x.fromUTF16(B),0,D.UNANCHORED,this.prog.numCap))}findAllUTF8(B,e){let t=this.allMatches(x.fromUTF8(B),e,i=>B.slice(i[0],i[1]));return t.length===0?null:t}findAllUTF8Index(B,e){let t=this.allMatches(x.fromUTF8(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAll(B,e){let t=this.allMatches(x.fromUTF16(B),e,i=>B.substring(i[0],i[1]));return t.length===0?null:t}findAllIndex(B,e){let t=this.allMatches(x.fromUTF16(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAllUTF8Submatch(B,e){let t=this.allMatches(x.fromUTF8(B),e,i=>{let r=new Array(i.length/2|0).fill(null);for(let s=0;s<r.length;s++)i[2*s]>=0&&(r[s]=B.slice(i[2*s],i[2*s+1]));return r});return t.length===0?null:t}findAllUTF8SubmatchIndex(B,e){let t=this.allMatches(x.fromUTF8(B),e);return t.length===0?null:t}findAllSubmatch(B,e){let t=this.allMatches(x.fromUTF16(B),e,i=>{let r=new Array(i.length/2|0).fill(null);for(let s=0;s<r.length;s++)i[2*s]>=0&&(r[s]=B.substring(i[2*s],i[2*s+1]));return r});return t.length===0?null:t}findAllSubmatchIndex(B,e){let t=this.allMatches(x.fromUTF16(B),e);return t.length===0?null:t}},ri=class hB{static isHexadecimal(B){return "0"<=B&&B<="9"||"A"<=B&&B<="F"||"a"<=B&&B<="f"}static translate(B){let e="";if(B instanceof RegExp&&(B.ignoreCase&&(e+="i"),B.multiline&&(e+="m"),B.dotAll&&(e+="s"),B=B.source),typeof B!="string")return B;let t="",i=false,r=B.length;r===0&&(t="(?:)",i=true);let s=false,C=0;for(;C<r;){let u=B[C];if(u==="\\"){if(C+1<r)switch(u=B[C+1],u){case "\\":t+="\\\\",C+=2;continue;case "c":if(C+2<r){let g=B[C+2].charCodeAt(0);if(g>=65&&g<=90||g>=97&&g<=122){let d=g%32;t+="\\x",t+=(d>>4).toString(16).toUpperCase(),t+=(d&15).toString(16).toUpperCase(),C+=3,i=true;continue}}t+="c",C+=2,i=true;continue;case "u":if(C+2<r){if(B[C+2]==="{"){let g=C+3,d=false,O=false;for(;g<r;){let F=B[g];if(F==="}"){O=true;break}if(!hB.isHexadecimal(F))break;d=true,g++;}if(O&&d){t+="\\x",C+=2,i=true;continue}}else if(C+5<r){let g=true;for(let d=0;d<4;d++)if(!hB.isHexadecimal(B[C+2+d])){g=false;break}if(g){t+="\\x{"+B.substring(C+2,C+6)+"}",C+=6,i=true;continue}}}t+="u",C+=2,i=true;continue;case "x":{let g=false;if(C+2<r&&B[C+2]==="{"){let d=C+3,O=false,F=false;for(;d<r;){let L=B[d];if(L==="}"){F=true;break}if(!hB.isHexadecimal(L))break;O=true,d++;}F&&O&&(g=true);}else C+3<r&&hB.isHexadecimal(B[C+2])&&hB.isHexadecimal(B[C+3])&&(g=true);g?(t+="\\x",C+=2):(t+="x",C+=2,i=true);continue}case "n":case "r":case "t":case "a":case "f":case "v":case "d":case "D":case "s":case "S":case "w":case "W":case "b":case "B":case "p":case "P":case "A":case "z":case "Q":case "E":case "0":case "1":case "2":case "3":case "4":case "5":case "6":case "7":t+="\\"+u,C+=2;continue;default:{let g=B.codePointAt(C+1);if(g>=48&&g<=57||g>=65&&g<=90||g>=97&&g<=122){let d=I.charCount(g);t+=B.substring(C+1,C+1+d),C+=d+1,i=true;}else {t+="\\";let d=I.charCount(g);t+=B.substring(C+1,C+1+d),C+=d+1;}continue}}}else if(u==="/"){t+="\\/",C+=1,i=true;continue}else if(u==="[")s=true;else if(u==="]")s=false;else if(!s&&u==="("&&C+2<r&&B[C+1]==="?"&&B[C+2]==="<"&&C+3<r&&!"=!>)".includes(B[C+3])){t+="(?P<",C+=3,i=true;continue}let c=B.codePointAt(C),p=I.charCount(c);t+=B.substring(C,C+p),C+=p;}let o=i?t:B;return e.length>0?`(?${e})${o}`:o}},bt=class P{static CASE_INSENSITIVE=$.CASE_INSENSITIVE;static DOTALL=$.DOTALL;static MULTILINE=$.MULTILINE;static DISABLE_UNICODE_GROUPS=$.DISABLE_UNICODE_GROUPS;static LONGEST_MATCH=$.LONGEST_MATCH;static LOOKBEHINDS=$.LOOKBEHINDS;static quote(B){return I.quoteMeta(B)}static quoteReplacement(B,e=false){return qe.quoteReplacement(B,e)}static translateRegExp(B){return ri.translate(B)}static compile(B,e=0){let t=B;if((e&P.CASE_INSENSITIVE)!==0&&(t=`(?i)${t}`),(e&P.DOTALL)!==0&&(t=`(?s)${t}`),(e&P.MULTILINE)!==0&&(t=`(?m)${t}`),(e&-544)!==0)throw new Jn("Flags should only be a combination of MULTILINE, DOTALL, CASE_INSENSITIVE, DISABLE_UNICODE_GROUPS, LONGEST_MATCH, LOOKBEHINDS");let i=D.PERL;(e&P.DISABLE_UNICODE_GROUPS)!==0&&(i&=-129),(e&P.LOOKBEHINDS)!==0&&(i|=D.LOOKBEHIND);let r=new P(B,e);return r.re2Input=ii.compileImpl(t,i,(e&P.LONGEST_MATCH)!==0),r}static matches(B,e){return P.compile(B).testExact(e)}static initTest(B,e,t){if(B==null)throw new Error("pattern is null");if(t==null)throw new Error("re2 is null");let i=new P(B,e);return i.re2Input=t,i}constructor(B,e){this.patternInput=B,this.flagsInput=e,this.re2Input=null;}reset(){this.re2Input.reset();}flags(){return this.flagsInput}pattern(){return this.patternInput}re2(){return this.re2Input}matches(B){return this.testExact(B)}matcher(B){return I.isByteArray(B)&&(B=SB.utf8(B)),new qe(this,B)}test(B){return I.isByteArray(B)?this.re2Input.matchUTF8(B):this.re2Input.match(B)}testExact(B){let e=I.isByteArray(B)?x.fromUTF8(B):x.fromUTF16(B);return this.re2Input.executeEngine(e,0,D.ANCHOR_BOTH,0)!==null}split(B,e=0){let t=this.matcher(B),i=[],r=0,s=0;for(;t.find();){if(s===0&&t.end()===0){s=t.end();continue}if(e>0&&i.length===e-1)break;if(s===t.start()){if(e===0){r+=1,s=t.end();continue}}else for(;r>0;)i.push(""),r-=1;i.push(t.substring(s,t.start())),s=t.end();}if(e===0&&s!==t.inputLength()){for(;r>0;)i.push(""),r-=1;i.push(t.substring(s,t.inputLength()));}return (e!==0||i.length===0)&&i.push(t.substring(s,t.inputLength())),i}*matchAll(B){let e=this.matcher(B);for(;e.find();){let t=[e.group(0)];for(let r=1;r<=e.groupCount();r++){let s=e.group(r);t.push(s===null?void 0:s);}t.index=e.start(0),t.input=B;let i=this.namedGroups();if(Object.keys(i).length>0){let r=e.getNamedGroups();for(let s in r)r[s]===null&&(r[s]=void 0);t.groups=r;}else t.groups=void 0;yield t;}}toString(){return this.patternInput}programSize(){return this.re2Input.numberOfInstructions()}groupCount(){return this.re2Input.numberOfCapturingGroups()}namedGroups(){return this.re2Input.namedGroups}equals(B){return this===B?true:B===null||this.constructor!==B.constructor?false:this.flagsInput===B.flagsInput&&this.patternInput===B.patternInput}};var he=["number","string","boolean","wref","array"],pe=["identity","versioned","either"],si=`${pe.slice(0,-1).join(", ")}, or ${pe.at(-1)}`,Ci=new Set(pe);function xt(n){return typeof n=="string"&&Ci.has(n)}function _t(n,B){return !("binding"in B)||!("type"in B)||typeof B.type!="string"||!Q.has(B.type)||typeof B.binding=="string"&&Q.has(B.binding)?null:(B.type.endsWith("?")?B.type.slice(0,-1):B.type)!=="wref"?`Constraint "binding" at "${n}" is only valid for type "wref"`:xt(B.binding)?null:`"binding" at "${n}" must be ${si}`}var oi=new Set(he),Q=new Set([...he,...he.map(n=>`${n}?`)]);function V(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}var FB=new Set(["minLength","maxLength","pattern","enum"]),AB=new Set(["minimum","maximum","integer"]),NB=new Set(["shape","binding"]),RB=new Set(["items","minItems","maxItems"]),Ht=new Set(["type","description"]),VB=new Set([...Ht,...FB,...AB,...NB,...RB]),ai={string:FB,number:AB,wref:NB,array:RB,boolean:new Set};function M(n){if(!V(n)||!("type"in n)||typeof n.type!="string"||!Q.has(n.type))return false;let B=n.type.endsWith("?")?n.type.slice(0,-1):n.type,e=ai[B]??new Set;return !(!Object.keys(n).every(t=>Ht.has(t)||e.has(t))||"minLength"in n&&typeof n.minLength!="number"||"maxLength"in n&&typeof n.maxLength!="number"||"pattern"in n&&typeof n.pattern!="string"||"pattern"in n&&typeof n.pattern=="string"&&Q.has(n.pattern)&&B!=="string"||"enum"in n&&!Array.isArray(n.enum)||"minimum"in n&&typeof n.minimum!="number"||"maximum"in n&&typeof n.maximum!="number"||"integer"in n&&typeof n.integer!="boolean"||"shape"in n&&typeof n.shape!="string"||"binding"in n&&!xt(n.binding)||"shape"in n&&typeof n.shape=="string"&&Q.has(n.shape)&&B!=="wref"||"items"in n&&typeof n.items=="number"||"items"in n&&typeof n.items=="boolean"||"minItems"in n&&typeof n.minItems!="number"||"maxItems"in n&&typeof n.maxItems!="number")}function li(n){return typeof n=="string"&&Q.has(n)?n:M(n)?n.type:null}function Gt(n){let B=li(n);if(!B)return null;let e=B.endsWith("?")?B.slice(0,-1):B;return oi.has(e)?e:null}var W=64*1024,TB=256,LB=256,ui="uses unsupported regex syntax",Ee=`WarmHub content fields are limited to ${W} bytes. WarmHub is not a document store; store large documents in S3, Box, Drive, or another document system and reference them from WarmHub instead.`,ci=new TextEncoder;function aB(n){return ci.encode(n).byteLength}function fe(n,B){if(B.length*3<=W)return null;let e=aB(B);return e<=W?null:`Field "${n}" is ${e} bytes; ${Ee}`}function wB(n,B,e){let t=fe(n,B);t&&e.push(t);}function jB(n){try{return new RegExp(n),!1}catch{return true}}function hi(n){let B="",e=false;for(let t=0;t<n.length;t++){let i=n[t];if(i==="\\"){let r=n[t+1];if(e&&r==="b"){B+="\\x08",t++;continue}B+=i,r!==void 0&&(B+=r,t++);continue}i==="["?e=true:i==="]"&&(e=false),B+=i;}return B}function De(n){try{return bt.compile(hi(n))}catch{return}}function Pt(n){return De(n)?void 0:ui}function Z(n){return typeof n=="string"&&n.endsWith("?")?{spec:n.slice(0,-1),optionalByType:true}:M(n)&&typeof n.type=="string"&&n.type.endsWith("?")?{spec:{...n,type:n.type.slice(0,-1)},optionalByType:true}:{spec:n,optionalByType:false}}function YB(n,B){return n?.endsWith("?")||Z(B).optionalByType}var pi="X-WarmHub-Client-Flags",Ei="compatibility-override";var fi=/^[a-z0-9-]+$/;function Di(n){return fi.test(n)}function gi(n){return [...new Set(n)].sort().join(",")}var di="X-WarmHub-Client",mi="@warmhub/sdk-ts",Oi="warmhub-cli",Si="warmhub-sdk-py";function Ii(n,B){return `${n}/${B}`}var Fi=["add","revise","retract","reaffirm","rename"];var Ai=["shape","thing","assertion","collection"];function lB(n){let B=n.indexOf("/");return B===-1?null:{shapePrefix:n.slice(0,B),bareName:n.slice(B+1)}}function ge(n){return n.kind==="shape"||n.kind==="thing"||n.kind==="assertion"||n.kind==="collection"?n.kind:n.about!==void 0?"assertion":typeof n.type=="string"&&n.type.length>0&&Array.isArray(n.members)?"collection":(n.name?n.name.split("/").filter(Boolean):[]).length>=3?"assertion":"thing"}var Ni="X-WarmHub-Install-Repo",Ri="X-WarmHub-Signature",Ti="X-WarmHub-Timestamp",Li=/^[A-Za-z0-9\-._~]$/;function Mt(n){let B="",e=new TextEncoder().encode(n);for(let t of e){let i=String.fromCharCode(t);Li.test(i)?B+=i:B+=`%${t.toString(16).toUpperCase().padStart(2,"0")}`;}return B}function wi(n){return typeof n=="boolean"?n?"true":"false":typeof n=="number"?JSON.stringify(n):n}function yi(n){return n==="POST"||n==="PUT"||n==="PATCH"}function kt(n){let B=[];for(let[e,t]of Object.entries(n))t!=null&&B.push([e,wi(t)]);return B.sort(([e],[t])=>e<t?-1:e>t?1:0),B.map(([e,t])=>`${Mt(e)}=${Mt(t)}`).join("&")}function Ut(n){let B="";for(let e of n)B+=e.toString(16).padStart(2,"0");return B}async function Jt(n){let B=await crypto.subtle.digest("SHA-256",new TextEncoder().encode(n));return Ut(new Uint8Array(B))}var vt="e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";function Kt(n){return [n.method,n.path,n.canonicalQuery,n.installRepo,n.bodyHash,String(n.timestamp)].join(`
20
+ `)}async function bi(n,B){let e=new TextEncoder,t=await crypto.subtle.importKey("raw",e.encode(n),{name:"HMAC",hash:"SHA-256"},false,["sign"]),i=await crypto.subtle.sign("HMAC",t,e.encode(B));return Ut(new Uint8Array(i))}var xi=/^sha256=([0-9a-f]{64})$/,_i=300;async function Hi(n){let B=xi.exec(n.signature);if(!B)return {ok:false,reason:"invalid-format"};let e=B[1],t=n.toleranceSec??_i;if(Math.abs(n.nowUnixSeconds-n.timestamp)>t)return {ok:false,reason:"expired"};let r=n.body.length===0?vt:await Jt(n.body),s=Kt({method:n.method,path:n.path,canonicalQuery:kt(n.query),installRepo:n.installRepo,bodyHash:r,timestamp:n.timestamp}),C=await bi(n.secret,s);return Gi(e,C)?{ok:true}:{ok:false,reason:"invalid-signature"}}function Gi(n,B){if(n.length!==B.length)return false;let e=0;for(let t=0;t<n.length;t++)e|=n.charCodeAt(t)^B.charCodeAt(t);return e===0}var Vt=["repo:read","repo:checkpoint-read","repo:checkpoint-generate","repo:write","repo:configure","repo:admin","repo:action-callback"];function Pi(n){return Vt.includes(n)}var Qt=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function Mi(n){return Qt.test(n)?n:null}function jt(n){let B=Qt.exec(n);return {major:Number(B[1]),minor:Number(B[2]),patch:Number(B[3]),prerelease:B[4]?B[4].split("."):[]}}var Yt=/^(0|[1-9]\d*)$/;function ki(n,B){if(n.length===0&&B.length===0)return 0;if(n.length===0)return 1;if(B.length===0)return -1;let e=Math.min(n.length,B.length);for(let t=0;t<e;t++){let i=n[t],r=B[t];if(i===void 0||r===void 0)break;if(i===r)continue;let s=Yt.test(i),C=Yt.test(r);return s&&C?Number(i)<Number(r)?-1:1:s?-1:C?1:i<r?-1:1}return n.length===B.length?0:n.length<B.length?-1:1}function Ui(n,B){let e=jt(n),t=jt(B);return e.major!==t.major?e.major<t.major?-1:1:e.minor!==t.minor?e.minor<t.minor?-1:1:e.patch!==t.patch?e.patch<t.patch?-1:1:ki(e.prerelease,t.prerelease)}var Wt=["org:read","org:configure","org:admin","org:action-callback"];function Ji(n){return Wt.includes(n)}var vi="003e7e6c-2f1e-53ea-9dfa-627edd04a8cc",Ki=/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/;function qt(n){if(!Ki.test(n))throw new Error("Operation-event submission ID must be a canonical UUID");let B=n.toLowerCase().replaceAll("-","");return Uint8Array.from({length:16},(e,t)=>Number.parseInt(B.slice(t*2,t*2+2),16))}function de(n,B){return (n<<B|n>>>32-B)>>>0}function Vi(n){let B=n.length*8,e=Math.ceil((n.length+9)/64)*64,t=new Uint8Array(e);t.set(n),t[n.length]=128;let i=new DataView(t.buffer);i.setUint32(e-8,Math.floor(B/4294967296)),i.setUint32(e-4,B>>>0);let r=1732584193,s=4023233417,C=2562383102,o=271733878,u=3285377520,c=new Uint32Array(80);for(let d=0;d<e;d+=64){for(let b=0;b<16;b+=1)c[b]=i.getUint32(d+b*4);for(let b=16;b<80;b+=1)c[b]=de((c[b-3]??0)^(c[b-8]??0)^(c[b-14]??0)^(c[b-16]??0),1);let O=r,F=s,L=C,R=o,U=u;for(let b=0;b<80;b+=1){let q,z;b<20?(q=F&L|~F&R,z=1518500249):b<40?(q=F^L^R,z=1859775393):b<60?(q=F&L|F&R|L&R,z=2400959708):(q=F^L^R,z=3395469782);let Gn=de(O,5)+q+U+z+(c[b]??0)>>>0;U=R,R=L,L=de(F,30),F=O,O=Gn;}r=r+O>>>0,s=s+F>>>0,C=C+L>>>0,o=o+R>>>0,u=u+U>>>0;}let p=new Uint8Array(20),g=new DataView(p.buffer);for(let[d,O]of [r,s,C,o,u].entries())g.setUint32(d*4,O);return p}function ji(n){let B=Array.from(n,e=>e.toString(16).padStart(2,"0")).join("").slice(0,32);return `${B.slice(0,8)}-${B.slice(8,12)}-${B.slice(12,16)}-${B.slice(16,20)}-${B.slice(20)}`}function Yi(n,B){if(!Number.isInteger(B)||B<0||B>2147483647)throw new Error("Stream chunk ordinal must be an integer from 0 through 2147483647");qt(n);let e=n.toLowerCase(),t=qt(vi),i=new TextEncoder().encode(`${e}:${B}`),r=Vi(Uint8Array.from([...t,...i])).slice(0,16);return r[6]=(r[6]??0)&15|80,r[8]=(r[8]??0)&63|128,ji(r)}var me=new Set([8203,8204,8205,8288,8294,8295,8296,8297,8234,8235,8236,8237,8238,8232,8233]);function Oe(n){return n<=31||n===127||n>=128&&n<=159}function Qi(n){return n<=65535?`\\u${n.toString(16).padStart(4,"0")}`:`\\u{${n.toString(16)}}`}function Wi(n){for(let B of n){let e=B.codePointAt(0);if(e!==void 0&&(Oe(e)||me.has(e)||e===34))return true}return false}function qi(n){return n.length<=120?n:`${n.slice(0,120)}...<truncated>`}function zt(n){if(!Wi(n))return n;let B=JSON.stringify(n).slice(1,-1),e="";for(let t of B){let i=t.codePointAt(0);i!==void 0&&(e+=Oe(i)||me.has(i)?Qi(i):t);}return e}function H(n){return qi(zt(n))}function zi(n){return zt(n)}function yB(n){if(n.length===0)return {unsafe:true,reason:"empty field name"};if(n!==n.trim())return {unsafe:true,reason:"leading or trailing whitespace"};for(let B of n){let e=B.codePointAt(0);if(e!==void 0){if(Oe(e))return {unsafe:true,reason:`control character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`};if(me.has(e))return {unsafe:true,reason:`format or separator character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`}}}return {unsafe:false}}function bB(n){return n.endsWith("?")?n.slice(0,-1):n}function tB(...n){return Xt(H,n)}function xB(...n){return Xt(zi,n)}function Xt(n,B){return B.map(e=>typeof e=="number"?`[${e}]`:n(e)).join(".").replace(/\.\[/g,"[")}function fB(n,B,e,t){let i=Xi(B);if(typeof n=="string"){if(i.length>0)return;wB(t??"<value>",n,e);return}if(Array.isArray(n)){let s=i.filter(Zi);if(i.length>0&&s.length===0)return;let C=QB(s.map($i));for(let o=0;o<n.length;o++)fB(n[o],C,e,`${t??"<value>"}[${o}]`);return}if(!V(n))return;let r=QB(i.map(Br));if(!(i.length>0&&r.length===0))for(let[s,C]of Object.entries(n)){let o=t?tB(t,s):H(s);wB(o,s,e),fB(C,QB(r.map(u=>u.get(s))),e,o);}}function Xi(n){return QB(n.map(B=>Z(B).spec))}function QB(n){return n.filter(B=>B!==void 0)}function $i(n){if(Array.isArray(n))return n[0];if(M(n)&&n.type==="array")return n.items}function Zi(n){return n==="array"||Array.isArray(n)?true:M(n)&&n.type==="array"}function Br(n){if(!V(n)||M(n))return;let B=new Map;for(let[e,t]of Object.entries(n))B.set(e.endsWith("?")?e.slice(0,-1):e,t);return B}var WB=500;function Zt(n){let B=new Set;for(let e of Object.keys(n))B.add(e.endsWith("?")?e.slice(0,-1):e);return B}function Bn(n,B){let e=[],t=0;for(let i of Object.keys(n))B.has(i)||(t++,e.length<WB&&e.push(i));if(t!==0)return t>WB?{undeclaredFields:e,undeclaredFieldsTruncated:true,totalUndeclared:t}:{undeclaredFields:e}}function en(n,B={}){let e=tn(n,B.enforceContentLimits!==false);return (t,i)=>{for(let r of e){let s=t[r.fieldName];if(s==null){r.isOptional||i.push(`Missing required field: "${r.displayName}"`);continue}r.validate(r.displayName,s,i);}}}function tn(n,B){return Object.entries(n).map(([e,t])=>{let i=e.endsWith("?")?e.slice(0,-1):e,r=Z(t);return {fieldName:i,displayName:H(i),isOptional:YB(e,t),validate:Se(r.spec,B)}})}function Se(n,B){if(typeof n=="string")return (e,t,i)=>$t(e,t,n,i,B);if(Array.isArray(n)){let e=n.length>0?Se(Z(n[0]).spec,B):void 0;return (t,i,r)=>{if(!Array.isArray(i))r.push(`Field "${t}" expected array, got ${typeof i}`);else if(e)for(let s=0;s<i.length;s++)e(`${t}[${s}]`,i[s],r);}}if(M(n)){if((n.type.endsWith("?")?n.type.slice(0,-1):n.type)==="array"){let i="items"in n&&n.items!=null?Se(Z(n.items).spec,B):void 0;return (r,s,C)=>{if(!Array.isArray(s)){C.push(`Field "${r}" expected array, got ${typeof s}`);return}if(typeof n.minItems=="number"&&s.length<n.minItems&&C.push(`Field "${r}" has ${s.length} items, minimum is ${n.minItems}`),typeof n.maxItems=="number"&&s.length>n.maxItems&&C.push(`Field "${r}" has ${s.length} items, maximum is ${n.maxItems}`),i)for(let o=0;o<s.length;o++)i(`${r}[${o}]`,s[o],C);}}let t=er(n);return (i,r,s)=>{$t(i,r,n.type,s,B),t(i,r,s);}}if(V(n)){let e=tn(n,B);return (t,i,r)=>{if(typeof i!="object"||i===null||Array.isArray(i)){r.push(`Field "${t}" expected object, got ${typeof i}`);return}let s=i;for(let C of e){let o=s[C.fieldName],u=tB(t,C.fieldName);if(o==null){C.isOptional||r.push(`Missing required field: "${u}"`);continue}C.validate(u,o,r);}}}return ()=>{}}function er(n){let B=typeof n.pattern=="string"?n.pattern:void 0,e=B===void 0?void 0:tr(B);return (t,i,r)=>{if(typeof i=="string"){if(typeof n.minLength=="number"&&i.length<n.minLength&&r.push(`Field "${t}" length ${i.length} is below minimum ${n.minLength}`),typeof n.maxLength=="number"&&i.length>n.maxLength&&r.push(`Field "${t}" length ${i.length} exceeds maximum ${n.maxLength}`),B!==void 0){let s=H(B);e?.kind==="unsupported"?r.push(`Field "${t}" has unsupported pattern "${s}"`):e?.kind==="invalid"?r.push(`Field "${t}" has invalid pattern "${s}" \u2014 skipping regex check`):e?.kind==="compiled"&&!e.regex.test(i)&&r.push(`Field "${t}" does not match pattern "${s}"`);}Array.isArray(n.enum)&&!n.enum.includes(i)&&r.push(`Field "${t}" value "${H(String(i))}" is not in allowed values: ${n.enum.map(s=>H(String(s))).join(", ")}`);}typeof i=="number"&&(typeof n.minimum=="number"&&i<n.minimum&&r.push(`Field "${t}" value ${i} is below minimum ${n.minimum}`),typeof n.maximum=="number"&&i>n.maximum&&r.push(`Field "${t}" value ${i} exceeds maximum ${n.maximum}`),n.integer===true&&!Number.isInteger(i)&&r.push(`Field "${t}" must be an integer, got ${i}`));}}function tr(n){if(jB(n))return {kind:"invalid"};let B=De(n);return B?{kind:"compiled",regex:B}:{kind:"unsupported"}}function $t(n,B,e,t,i){switch(e){case "number":typeof B!="number"&&t.push(`Field "${n}" expected number, got ${typeof B}`);break;case "string":typeof B!="string"?t.push(`Field "${n}" expected string, got ${typeof B}`):i&&wB(n,B,t);break;case "wref":typeof B!="string"&&t.push(`Field "${n}" expected string, got ${typeof B}`);break;case "boolean":typeof B!="boolean"&&t.push(`Field "${n}" expected boolean, got ${typeof B}`);break;case "array":Array.isArray(B)||t.push(`Field "${n}" expected array, got ${typeof B}`);break;}}function Ie(n){let B=n.map(i=>en(i.fields)),e=new Set;for(let i of n)for(let r of Zt(i.fields))e.add(r);let t=n.map(i=>i.fields);return i=>{if(typeof i!="object"||i===null||Array.isArray(i))return {valid:false,errors:["Data must be a plain object"]};let r=i,s=[];for(let o of B)o(r,s);fB(r,t,s);let C=Bn(r,e);return s.length>0?C?{valid:false,errors:s,warnings:C}:{valid:false,errors:s}:C?{valid:true,warnings:C}:{valid:true}}}function nn(n,B){return Fe(B)(n)}function Fe(n){return Ie([{name:"",fields:n}])}function Ae(n){return (n.endsWith("?")?n.slice(0,-1):n).toLowerCase()}function rn(n){return n.split(".").map(B=>Ae(B)).join(".")}function nr(n,B){return n.allowUnsafeFieldNamePaths.has(B)}function _B(n,B,e,t,i){if(typeof e=="string"){Q.has(e)||t.push(`Invalid type at "${n}": "${H(e)}" (expected number|string|boolean|wref|array, optionally with ? suffix)`);return}if(Array.isArray(e)){if(e.length!==1){t.push(`Invalid array type at "${n}": array type spec must have exactly 1 element`);return}_B(`${n}[]`,`${B}[]`,e[0],t,i);return}if(V(e)){let r=_t(n,e);if(r){t.push(r);return}if(M(e)){ir(n,B,e,t,i);return}if("type"in e&&typeof e.type=="string"&&Q.has(e.type)&&Object.keys(e).every(s=>VB.has(s))){let s=e.type.endsWith("?")?e.type.slice(0,-1):e.type,o=s==="string"?FB:s==="number"?AB:s==="wref"?NB:s==="array"?RB:new Set,u=Object.keys(e).filter(p=>p!=="type"&&p!=="description"&&!o.has(p));if(u.length>0&&u.some(g=>{let d=e[g];return typeof d!="string"&&!Array.isArray(d)&&!V(d)})){for(let g of u)t.push(`Constraint "${H(g)}" at "${n}" is not valid for type "${s}"`);return}if(u.length===0){let p=[];for(let[g,d]of Object.entries(e))g==="type"||g==="description"||o.has(g)&&((g==="minLength"||g==="maxLength"||g==="minimum"||g==="maximum"||g==="minItems"||g==="maxItems")&&typeof d!="number"?p.push(`Constraint "${g}" at "${n}" must be a number, got ${typeof d}`):g==="integer"&&typeof d!="boolean"?p.push(`Constraint "${g}" at "${n}" must be a boolean, got ${typeof d}`):g==="pattern"&&typeof d!="string"?p.push(`Constraint "${g}" at "${n}" must be a string, got ${typeof d}`):g==="enum"&&!Array.isArray(d)?p.push(`Constraint "${g}" at "${n}" must be an array, got ${typeof d}`):g==="shape"&&typeof d!="string"&&p.push(`Constraint "${g}" at "${n}" must be a string, got ${typeof d}`));if(p.length>0){t.push(...p);return}}if(Object.entries(e).some(([p,g])=>!(p==="type"||p==="description"||typeof g=="string"||Array.isArray(g)||V(g)))){t.push(`Object at "${n}" looks like a typed field object (type: "${H(String(e.type))}") but has constraint values with invalid types. Check that constraint values match their expected types (e.g., minLength must be a number, not a string).`);return}}for(let[s,C]of Object.entries(e)){let o=bB(s),u=yB(o),c=tB(n,s),p=xB(B,s);if(u.unsafe&&!nr(i,p)){t.push(`Invalid field name at "${c}": ${u.reason}`);continue}_B(c,p,C,t,i);}return}t.push(`Invalid type at "${n}": expected string, array, or object, got ${typeof e}`);}function ir(n,B,e,t,i){let r=e.type;if(typeof r!="string"){t.push(`Invalid typed field object at "${n}": "type" must be a string`);return}if(!Q.has(r)){t.push(`Invalid type at "${n}.type": "${H(r)}" (expected number|string|boolean|wref|array, optionally with ? suffix)`);return}"description"in e&&typeof e.description!="string"&&t.push(`Invalid typed field object at "${n}": "description" must be a string`);let s=r.endsWith("?")?r.slice(0,-1):r;for(let C of Object.keys(e)){if(C==="type"||C==="description")continue;let o=H(C);s==="string"?FB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "string"`):s==="number"?AB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "number"`):s==="wref"?NB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "wref"`):s==="array"?RB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "array"`):t.push(`Constraint "${o}" at "${n}" is not valid for type "${s}"`);}if("minLength"in e&&(typeof e.minLength!="number"||!Number.isFinite(e.minLength)||e.minLength<0||!Number.isInteger(e.minLength))&&t.push(`"minLength" at "${n}" must be a non-negative finite integer`),"maxLength"in e&&(typeof e.maxLength!="number"||!Number.isFinite(e.maxLength)||e.maxLength<0||!Number.isInteger(e.maxLength))&&t.push(`"maxLength" at "${n}" must be a non-negative finite integer`),"minLength"in e&&"maxLength"in e&&typeof e.minLength=="number"&&typeof e.maxLength=="number"&&e.minLength>e.maxLength&&t.push(`"minLength" at "${n}" cannot exceed "maxLength"`),s==="string"&&typeof e.minLength=="number"&&Number.isFinite(e.minLength)&&Number.isInteger(e.minLength)&&e.minLength>W&&t.push(`"minLength" at "${n}" cannot exceed ${W}`),s==="string"&&typeof e.maxLength=="number"&&Number.isFinite(e.maxLength)&&Number.isInteger(e.maxLength)&&e.maxLength>W&&t.push(`"maxLength" at "${n}" cannot exceed ${W}`),"pattern"in e&&typeof e.pattern!="string"&&t.push(`"pattern" at "${n}" must be a string`),"pattern"in e&&typeof e.pattern=="string")if(jB(e.pattern))t.push(`"pattern" at "${n}" is not a valid regular expression`);else {let C=Pt(e.pattern);C&&t.push(`"pattern" at "${n}" ${C}`);}if("enum"in e){if(!Array.isArray(e.enum)||e.enum.length===0||!e.enum.every(C=>typeof C=="string"))t.push(`"enum" at "${n}" must be a non-empty array of strings`);else if(s==="string")for(let C of e.enum){let o=aB(C);if(o>W){t.push(`"enum" value at "${n}" is ${o} bytes; string enum values cannot exceed ${W} bytes`);break}}}"minimum"in e&&(typeof e.minimum!="number"||!Number.isFinite(e.minimum))&&t.push(`"minimum" at "${n}" must be a finite number`),"maximum"in e&&(typeof e.maximum!="number"||!Number.isFinite(e.maximum))&&t.push(`"maximum" at "${n}" must be a finite number`),"minimum"in e&&"maximum"in e&&typeof e.minimum=="number"&&typeof e.maximum=="number"&&e.minimum>e.maximum&&t.push(`"minimum" at "${n}" cannot exceed "maximum"`),"integer"in e&&typeof e.integer!="boolean"&&t.push(`"integer" at "${n}" must be a boolean`),"shape"in e&&(typeof e.shape!="string"?t.push(`"shape" at "${n}" must be a string (shape name)`):e.shape===""&&t.push(`"shape" at "${n}" must not be empty`)),"minItems"in e&&(typeof e.minItems!="number"||!Number.isFinite(e.minItems)||e.minItems<0||!Number.isInteger(e.minItems))&&t.push(`"minItems" at "${n}" must be a non-negative finite integer`),"maxItems"in e&&(typeof e.maxItems!="number"||!Number.isFinite(e.maxItems)||e.maxItems<0||!Number.isInteger(e.maxItems))&&t.push(`"maxItems" at "${n}" must be a non-negative finite integer`),"minItems"in e&&"maxItems"in e&&typeof e.minItems=="number"&&typeof e.maxItems=="number"&&e.minItems>e.maxItems&&t.push(`"minItems" at "${n}" cannot exceed "maxItems"`),s==="array"&&("items"in e?_B(`${n}.items`,`${B}.items`,e.items,t,i):t.push(`Typed array at "${n}" must have an "items" key specifying the element type`));}function rr(n={}){return {allowUnsafeFieldNamePaths:new Set(n.allowUnsafeFieldNamePaths??[])}}function sr(n,B){return n.allowUnsafeFieldNamePaths.has(B)}var Cr=new Set(["fields","description","composes"]);function qB(n,B=""){let e=[];for(let[t,i]of Object.entries(n)){let r=t.endsWith("?")?t.slice(0,-1):t,s=B?`${B}.${r}`:r,C=Gt(i);if(C==="string"||C==="wref"||C==="number"||C==="boolean"){e.push(s);continue}M(i)||V(i)&&e.push(...qB(i,s));}return e}function Re(n){return !(!V(n)||Array.isArray(n)||M(n)||"type"in n&&typeof n.type=="string"&&Q.has(n.type)&&Object.keys(n).every(B=>VB.has(B)))}function sn(n,B,e,t,i=B){let r=new Map;for(let[s,C]of Object.entries(n)){let o=bB(s),u=yB(o),c=tB(B,s),p=xB(i,s);if(u.unsafe&&!sr(t,p)){e.push(`Invalid field name at "${c}": ${u.reason}`);continue}let g=Ae(s),d=r.get(g);if(d!==void 0){e.push(`${tB(B,s)}: duplicate field name. Shape already declares "${H(d)}" (case-insensitive match).`);continue}r.set(g,s),Re(C)?sn(C,c,e,t,p):_B(c,p,C,e,t);}}function Ne(n,B,e){if(Array.isArray(B)){B.length===1&&Ne(`${n}[]`,B[0],e);return}if(M(B)){let t=Z(B).spec;M(t)&&typeof t.type=="string"&&t.type==="array"&&"items"in t&&Ne(`${n}.items`,t.items,e);return}Re(B)&&Te(B,n,e);}function Te(n,B,e){for(let[t,i]of Object.entries(n)){let r=xB(B,t);yB(bB(t)).unsafe&&e.push(r),Re(i)?Te(i,r,e):Ne(r,i,e);}}function Cn(n){if(typeof n!="object"||n===null||Array.isArray(n))return [];let B=n.fields;if(typeof B!="object"||B===null||Array.isArray(B))return [];let e=[];return Te(B,"fields",e),e}function on(n,B={}){if(typeof n!="object"||n===null||Array.isArray(n))return {valid:false,errors:["Shape definition must be a plain object"]};let e=n,t=[];for(let c of Object.keys(e))Cr.has(c)||t.push(`Unsupported shape definition key "${H(c)}"`);if(!("fields"in e))return {valid:false,errors:['Shape definition must have a "fields" property']};let i=e.fields;if(typeof i!="object"||i===null||Array.isArray(i))return {valid:false,errors:['"fields" must be a plain object mapping field names to types']};let r=rr(B);sn(i,"fields",t,r);let s=qB(i),C=s.length,o=new Set,u=new Set;for(let c of s){let p=aB(c);p>LB&&t.push(`Indexable field path "${H(c)}" is ${p} bytes; maximum is ${LB}`);let g=rn(c);if(o.has(g)){u.add(g);continue}o.add(g);}for(let c of u)t.push(`Shape declares ambiguous indexable field path "${H(c)}"; dotted field names, optional-key suffixes, and case-insensitive folded paths must not collide with another indexable path`);return C>TB&&t.push(`Shape declares ${C} indexable scalar fields; maximum is ${TB}`),"description"in e&&typeof e.description!="string"&&t.push('"description" must be a string'),"composes"in e&&(!Array.isArray(e.composes)||!e.composes.every(c=>typeof c=="string"&&c.length>0))&&t.push('"composes" must be an array of non-empty Shape wrefs'),fB(e,[],t),t.length>0?{valid:false,errors:t}:{valid:true}}function uB(n){if(!n||typeof n!="object")return JSON.stringify(n);if(Array.isArray(n))return `[${n.map(e=>uB(e)).join(",")}]`;let B=n;return `{${Object.keys(B).sort().map(e=>`${JSON.stringify(e)}:${uB(B[e])}`).join(",")}}`}var Le=["Arc","Bond","Pair","Set","List"],an=["Triple"],lr=[...Le,...an];function ln(n){return Le.includes(n)}function zB(n){return an.includes(n)}function XB(n){return lr.includes(n)}var ur=["Content"];var cr=["Readme","Agents"],hr=["LlmsTxt"],un=n=>n==="Content";var cn=n=>cr.includes(n),hn=n=>hr.includes(n);var pn=["View"],pr=n=>pn.includes(n),En=["LicenseSubject","LicenseDeclaration"],Er=n=>En.includes(n);function fn(n){return XB(n)||pr(n)||Er(n)}function $B(n){return Le.includes(n)||ur.includes(n)||pn.includes(n)||En.includes(n)}function Dn(n,B){let e=[];return Ir(n,e,B?.checkAddAdd??true,B),e}function Or(n,B){return B?.sourceOperationIndexes?.[n]??n}function Sr(n){return n.name}function Ir(n,B,e,t){let i=new Map;for(let r=0;r<n.length;r++){let s=n[r];if(!s)continue;let C=Sr(s);if(!C)continue;let u=ge({...s,name:C})==="shape"?`shape:${C}`:`thing:${C}`,c=i.get(u)??[];c.push({operation:s.operation,index:Or(r,t)}),i.set(u,c);}for(let[r,s]of i)if(!(s.length<2))for(let C=1;C<s.length;C++){let o=s[C-1],u=s[C];if(!o||!u)continue;let c=`${o.operation}+${u.operation}`;e&&c==="add+add"&&B.push({code:"ILLEGAL_OP_SEQUENCE",operationIndex:u.index,message:`Cannot add "${r}" twice in the same commit`}),c==="revise+add"&&B.push({code:"ILLEGAL_OP_SEQUENCE",operationIndex:u.index,message:`Cannot revise then add "${r}" in the same commit`});}}var Fr=["arc","bond","set","list","pair"],Ar=["arc","bond","set","list"],Nr=["add","revise"],we="Collection create requires a name. Collections are ordinary named things (ADR 0004).",ye='about accepts a wref. Create the collection as its own named operation, then point the assertion at it. Prefer deterministic relationship names, for example: [{"operation":"add","kind":"collection","type":"arc","name":"a-to-b","members":["A","B"]},{"operation":"add","kind":"assertion","about":"Arc/a-to-b","name":"Assertion/example","data":{}}]. For CLI usage, use wh commit submit --file with the two operations.';function Rr(n){return Fr.find(B=>B===n)??null}function Tr(n){return Nr.find(B=>B===n)??null}function gn(n,B){let e=[];return e.push(...Lr(n,B)),e.push(...wr(n,B)),e.push(...yr(n,B)),e.push(...br(n,B)),e.push(...xr(n,B)),e}function Lr(n,B){let e=[],t=n.name,i=n.operation==="rename"&&(n.kind==="shape"||n.name!==void 0&&!lB(n.name)),r=i&&t!==void 0&&fn(t)&&n.newName!==void 0&&!XB(n.newName)&&!$B(n.newName);if(t&&zB(t)&&!r&&e.push({code:"RESERVED_NAME",operationIndex:B,message:`Shape "${t}" is a retired collection shape and cannot be written manually`}),n.operation==="rename"&&(n.kind==="shape"||n.name!==void 0&&!lB(n.name))&&n.newName&&zB(n.newName))e.push({code:"RESERVED_NAME",operationIndex:B,message:`Shape "${n.newName}" is a retired collection shape and cannot be written manually`});else {let s=t&&$B(t)&&!r?t:i&&n.newName&&$B(n.newName)?n.newName:void 0;if(s&&(i||n.operation!=="retract"&&n.kind==="shape")){let C=n.operation==="add"?"created":n.operation==="rename"?"renamed":"revised";e.push({code:"RESERVED_NAME",operationIndex:B,message:`Shape "${s}" is a built-in shape and cannot be ${C} manually`});}}if(t){let s=lB(t);if(s&&zB(s.shapePrefix))e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Cannot ${n.operation} under retired collection shape "${s.shapePrefix}". Triple is read-only and retired for new collection writes.`});else if(n.kind==="thing"&&s&&ln(s.shapePrefix)){let C=n.operation==="add"?`Cannot add kind="thing" under built-in shape "${s.shapePrefix}". Use kind="collection" instead.`:`Cannot revise kind="thing" under built-in shape "${s.shapePrefix}". Use kind="collection" to revise a collection.`;e.push({code:"VALIDATION_ERROR",operationIndex:B,message:C});}}return e}function wr(n,B){if(n.kind!=="thing"||!n.name)return [];let e=lB(n.name);if(!e||!un(e.shapePrefix))return [];let t=e.bareName;return hn(t)?[{code:"READ_ONLY_BUILTIN_CONTENT",operationIndex:B,message:`${e.shapePrefix}/${t} is synthesized; writes are not allowed`}]:cn(t)?[]:[{code:"UNKNOWN_CONTENT_NAME",operationIndex:B,message:`${e.shapePrefix}/${t} is not a recognized well-known content name`}]}function yr(n,B){let e=[],t=n.name;if(n.newName?.includes("+"))return e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Name "${n.newName}" contains reserved character "+". The "+" character is reserved for the historical collection auto-name namespace and is not allowed in user-supplied names.`}),e;if(t?.includes("+")){if(n.kind==="collection"&&n.operation==="add")return e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Name "${t}" contains reserved character "+". The "+" character is reserved for the historical collection auto-name namespace and is not allowed in user-supplied names.`}),e;if(n.kind==="collection")return e;let i=lB(t);if(i&&XB(i.shapePrefix))return e;e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Name "${t}" contains reserved character "+". The "+" character is reserved for the historical collection auto-name namespace and is not allowed in user-supplied names.`});}return e}function br(n,B){let e=[];return !n.about||typeof n.about=="string"||e.push({code:"VALIDATION_ERROR",operationIndex:B,message:ye}),e}function xr(n,B){let e=[];if(n.kind!=="collection"||Tr(n.operation)===null)return e;n.operation==="add"&&!n.name&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:we});let t=Rr(n.type);if(t===null&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Collection "type" is invalid. Use one of: ${Ar.join(", ")}. Got: "${n.type??""}"`}),!n.members||!Array.isArray(n.members))e.push({code:"VALIDATION_ERROR",operationIndex:B,message:'Collection requires a "members" array'});else for(let i=0;i<n.members.length;i++)typeof n.members[i]!="string"&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Collection member at index ${i} must be a string`});if(t!==null&&n.members){let i=_r(t,n.members);i&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:i});}return e}function _r(n,B){switch(n){case "arc":return B.length!==2?`Arc requires exactly 2 members, got ${B.length}`:null;case "bond":return B.length!==2?`Bond requires exactly 2 members, got ${B.length}`:null;case "pair":return B.length!==2?`Pair requires exactly 2 members, got ${B.length}`:null;case "set":case "list":return B.length<1?`${n==="set"?"Set":"List"} requires at least 1 member, got 0`:null;default:return n}}function Hr(n,B){return gn(n,B)}function Gr(n,B){return Dn(n,B)}var Pr=new TextEncoder;async function ZB(n){let B=new Uint8Array(await crypto.subtle.digest("SHA-256",Uint8Array.from(n)));return Array.from(B,e=>e.toString(16).padStart(2,"0")).join("")}function HB(n){return nB(n),Pr.encode(n)}function nB(n){for(let B=0;B<n.length;B+=1){let e=n.charCodeAt(B);if(e>=55296&&e<=56319){let t=n.charCodeAt(B+1);if(!(t>=56320&&t<=57343))throw new RangeError("Checkpoint text must be valid Unicode");B+=1;}else if(e>=56320&&e<=57343)throw new RangeError("Checkpoint text must be valid Unicode")}}function iB(n,B){nB(n),nB(B);let e=0,t=0;for(;e<n.length&&t<B.length;){let i=n.codePointAt(e),r=B.codePointAt(t);if(i===void 0||r===void 0)break;let s=i-r;if(s!==0)return s;e+=i>65535?2:1,t+=r>65535?2:1;}return e===n.length&&t===B.length?0:e===n.length?-1:1}var He=67108864,Be=10,dn="warmhub-repository-checkpoint",mn=2,Mr="repository-checkpoint.json";var Ge=z.string().regex(/^[0-9a-f]{64}$/),xe=z.number().int().nonnegative().safe(),_e=z.number().int().positive().safe(),kr=z.number().finite().refine(n=>!Number.isInteger(n)||Number.isSafeInteger(n),"JSON integers must be safe integers"),DB=z.lazy(()=>z.union([z.null(),z.boolean(),kr,z.string(),z.array(DB),z.record(z.string(),DB)])),be=z.object({wref:z.string().min(1),durableId:z.string().min(1),version:z.number().int().positive().safe(),active:z.literal(true),data:DB}),On=z.string().regex(/^[^\r\n]+@v[1-9]\d*$/,"Checkpoint wref must be pinned with @vN"),Ur=z.array(On).superRefine((n,B)=>{for(let e=1;e<n.length;e+=1){let t=n[e-1],i=n[e];t!==void 0&&i!==void 0&&iB(t,i)>=0&&B.addIssue({code:"custom",path:[e],message:"Affirmed wrefs must be unique and strictly increasing"});}}),Pe=z.discriminatedUnion("kind",[be.extend({kind:z.literal("shape")}).strict(),be.extend({kind:z.enum(["thing","collection"]),shapeName:z.string().min(1)}).strict(),be.extend({kind:z.literal("assertion"),shapeName:z.string().min(1),aboutWref:On,affirmedWrefs:Ur}).strict()]),Sn=z.object({part:xe,path:z.string().min(1),recordCount:_e,byteLength:_e,sha256:Ge}).strict(),In=z.object({shapeName:z.string().min(1),recordCount:_e,chunks:z.array(Sn).min(1)}).strict(),Jr={format:z.literal(dn),formatVersion:z.literal(mn),checkpointId:z.string().uuid(),repository:z.object({id:z.string().uuid(),org:z.string().min(1),repo:z.string().min(1)}).strict(),repoSeq:xe,complete:z.literal(true),recordCount:xe,streams:z.array(In)},Me=z.object(Jr).strict(),ee=Me.extend({contentSha256:Ge}).strict();new TextEncoder;var vr=new TextDecoder("utf-8",{fatal:true});function ke(n,B){if(n.length===0||n.at(-1)!==10)throw new Error(`${B} must end with one LF`);if(n.length>=3&&n[0]===239&&n[1]===187&&n[2]===191)throw new Error(`${B} must not contain a UTF-8 BOM`);for(let e=0;e<n.length-1;e+=1)if(n[e]===10||n[e]===13)throw new Error(`${B} must contain exactly one LF and no CR`)}function gB(n,B,e){ke(n,e);let t=vr.decode(n),i=B.parse(JSON.parse(t.slice(0,-1)));if(t!==`${uB(i)}
21
+ `)throw new Error(`${e} bytes are not canonical`);return i}var Fn=10**Be-1;async function Kr(n){if(n.length===0)throw new RangeError("Checkpoint Shape name must not be empty");return ZB(HB(n))}async function Vr(n,B){return jr(B),`records/${await Kr(n)}/part-${B.toString().padStart(Be,"0")}.jsonl`}async function An(n,B,e){let t=await Vr(B,e);if(n!==t)throw new Error("Checkpoint chunk path does not match its Shape and part")}function jr(n){if(!Number.isSafeInteger(n)||n<0||n>Fn)throw new RangeError(`Checkpoint chunk part must be an integer from 0 through ${Fn}`)}var Yr=new TextDecoder("utf-8",{fatal:true});async function Ue(n){let B=ee.parse(n),{contentSha256:e,...t}=B;await qr(t);let i=await Wr(t);if(e!==i)throw new Error("Checkpoint manifest content digest does not match");return B}async function Rn(n){let B=await Ue(n);return HB(`${uB(B)}
22
+ `)}async function Qr(n){ke(n,"Checkpoint manifest");let B=Yr.decode(n),e=await Ue(ee.parse(JSON.parse(B.slice(0,-1)))),t=await Rn(e);if(!zr(n,t))throw new Error("Checkpoint manifest bytes are not canonical");return e}async function Wr(n){return ZB(HB(uB(n)))}async function qr(n){let B,e=0;for(let t of n.streams){if(B!==void 0&&iB(B,t.shapeName)>=0)throw new Error("Checkpoint manifest streams must be strictly increasing by Shape name");B=t.shapeName;let i=0;for(let[r,s]of t.chunks.entries()){if(s.part!==r)throw new Error("Checkpoint manifest chunk parts must be contiguous and zero-based");if(await An(s.path,t.shapeName,s.part),s.byteLength>He&&s.recordCount!==1)throw new Error("An oversized checkpoint chunk must contain exactly one row");i=Nn(i,s.recordCount);}if(t.recordCount!==i)throw new Error("Checkpoint manifest stream record count does not match");e=Nn(e,t.recordCount);}if(n.recordCount!==e)throw new Error("Checkpoint manifest record count does not match")}function Nn(n,B){let e=n+B;if(!Number.isSafeInteger(e))throw new RangeError("Checkpoint manifest count sum must be a safe integer");return e}function zr(n,B){return n.length!==B.length?false:n.every((e,t)=>e===B[t])}function $r(n){return gB(n,Pe,"Checkpoint row")}function Zr(n){if(n.length===0)throw new Error("Checkpoint stream Shape name must not be empty");return nB(n),{shapeName:n,recordCount:0,hasShapeDefinition:false}}function Bs(n,B){let e=B;if(nB(e.wref),nB(e.durableId),e.kind==="assertion"&&nB(e.aboutWref),(e.kind==="shape"?e.wref:e.shapeName)!==n.shapeName)throw new Error("Checkpoint row is grouped under the wrong Shape stream");if(e.kind!=="shape"){let i=`${e.shapeName}/`;if(!e.wref.startsWith(i)||e.wref.length===i.length)throw new Error("Checkpoint row wref does not belong to its declared Shape")}if(n.previousWref!==void 0&&iB(n.previousWref,e.wref)>=0)throw new Error("Checkpoint stream rows must be strictly increasing by wref");return e.kind==="shape"&&(n.hasShapeDefinition=true),n.previousWref=e.wref,n.recordCount=ts(n.recordCount),e}function es(n){if(!n.hasShapeDefinition)throw new Error("Checkpoint stream must contain its matching Shape definition");return n.recordCount}function ts(n){let B=n+1;if(!Number.isSafeInteger(B))throw new RangeError("Checkpoint stream record count must be a safe integer");return B}var Ln=3,ns="application/x-ndjson",wn=z.string().regex(/^[0-9a-f]{64}$/),te=z.number().int().nonnegative(),ve=z.number().int().positive(),yn=["shape","thing","collection","assertion"],bn=["heads","ops"],xn=["captured","migration-stamped","reconstructed"],Ke=z.object({name:z.string().min(1),v:ve,durableId:z.string().min(1),provenance:z.enum(xn),declared:z.boolean()}).strict(),Ve=z.object({wref:z.string().min(1),v:ve.optional(),durableId:z.string().min(1)}).strict();function _n(n,B,e,t){let i;n.forEach((r,s)=>{let C=B(r);i!==void 0&&iB(i,C)>=0&&t.addIssue({code:"custom",path:[s],message:e}),i=C;});}var Tn=z.array(Ke).superRefine((n,B)=>{_n(n,e=>e.durableId,"Shape certificates must be unique and strictly increasing by durableId",B);}),is=z.array(Ve).superRefine((n,B)=>{_n(n,e=>e.wref,"Affirmed references must be unique and strictly increasing",B);}),Hn={wref:z.string().min(1),durableId:z.string().min(1),version:ve},Je={...Hn,active:z.literal(true),data:z.record(z.string(),DB)},rs=z.discriminatedUnion("kind",[z.object({...Je,kind:z.literal("shape"),shapes:z.array(Ke).max(0)}).strict(),z.object({...Je,kind:z.enum(["thing","collection"]),shapes:Tn}).strict(),z.object({...Je,kind:z.literal("assertion"),shapes:Tn,about:Ve,affirmed:is}).strict()]),ss=z.object({...Hn,kind:z.enum(yn),active:z.literal(false)}).strict(),je=z.union([rs,ss]),Ye=z.object({kind:z.literal("header"),formatVersion:z.literal(Ln),repo:z.string().regex(/^[^/\s]+\/[^/\s]+$/,'repo must be "<org>/<repo>"'),mode:z.enum(bn),sinceRepoSeq:te,atRepoSeq:te}).strict().refine(n=>n.atRepoSeq>=n.sinceRepoSeq,"atRepoSeq must not precede sinceRepoSeq"),Qe=z.object({kind:z.literal("trailer"),recordCount:te,contentSha256:wn,atRepoSeq:te}).strict();function Cs(n){return n.sinceRepoSeq>0}function os(n){return gB(n,je,"Repository export row")}function as(n){return gB(n,Ye,"Repository export header")}function ls(n){return gB(n,Qe,"Repository export trailer")}var us=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),cs=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),dB=64;function BB(n,B){return (n>>>B|n<<32-B)>>>0}var ne=class{#e=Uint32Array.from(cs);#t=new Uint32Array(64);#n=new Uint8Array(dB);#B=0;#i=0;#r=false;update(B){if(this.#r)throw new Error("SHA-256 hasher is already finalized");if(this.#i+=B.length,!Number.isSafeInteger(this.#i))throw new RangeError("SHA-256 input length must be a safe integer");let e=0;if(this.#B>0){let t=Math.min(dB-this.#B,B.length);if(this.#n.set(B.subarray(0,t),this.#B),this.#B+=t,e=t,this.#B<dB)return;this.#s(this.#n,0),this.#B=0;}for(;e+dB<=B.length;)this.#s(B,e),e+=dB;e<B.length&&(this.#n.set(B.subarray(e),0),this.#B=B.length-e);}digestHex(){if(this.#r)throw new Error("SHA-256 hasher is already finalized");this.#r=true;let B=new Uint8Array(this.#B<56?64:128);B.set(this.#n.subarray(0,this.#B),0),B[this.#B]=128;let e=new DataView(B.buffer);e.setUint32(B.length-8,Math.floor(this.#i/536870912)),e.setUint32(B.length-4,this.#i<<3>>>0);for(let t=0;t<B.length;t+=dB)this.#s(B,t);return Array.from(this.#e,t=>t.toString(16).padStart(8,"0")).join("")}#s(B,e){let t=this.#t;for(let d=0;d<16;d+=1){let O=e+d*4;t[d]=(B[O]<<24|B[O+1]<<16|B[O+2]<<8|B[O+3])>>>0;}for(let d=16;d<64;d+=1){let O=t[d-15],F=t[d-2],L=(BB(O,7)^BB(O,18)^O>>>3)>>>0,R=(BB(F,17)^BB(F,19)^F>>>10)>>>0;t[d]=t[d-16]+L+t[d-7]+R>>>0;}let i=this.#e,r=i[0],s=i[1],C=i[2],o=i[3],u=i[4],c=i[5],p=i[6],g=i[7];for(let d=0;d<64;d+=1){let O=(BB(u,6)^BB(u,11)^BB(u,25))>>>0,F=(u&c^~u&p)>>>0,L=g+O+F+us[d]+t[d]>>>0,R=(BB(r,2)^BB(r,13)^BB(r,22))>>>0,U=(r&s^r&C^s&C)>>>0,b=R+U>>>0;g=p,p=c,c=u,u=o+L>>>0,o=C,C=s,s=r,r=L+b>>>0;}i[0]=r+i[0]>>>0,i[1]=s+i[1]>>>0,i[2]=C+i[2]>>>0,i[3]=o+i[3]>>>0,i[4]=u+i[4]>>>0,i[5]=c+i[5]>>>0,i[6]=p+i[6]>>>0,i[7]=g+i[7]>>>0;}};var ie=class{#e=new ne;#t=0;get rowCount(){return this.#t}update(B){this.#e.update(B),this.#t+=1;}finalize(){return this.#e.digestHex()}};function hs(){return new ie}/*! Bundled license information:
23
23
 
24
24
  re2js/build/index.js:
25
25
  (*!
@@ -32,5 +32,5 @@ re2js/build/index.js:
32
32
  * @repository github:le0pard/re2js
33
33
  * @license MIT
34
34
  *)
35
- */export{jt as A,Gi as B,Ji as C,we as D,wr as E,br as F,iB as G,He as H,Be as I,xr as J,_e as K,vr as L,Qr as M,Wr as N,qr as O,zr as P,Nn as Q,$r as R,ts as S,ns as T,is as U,rs as V,os as W,nn as X,rn as Y,Bn as Z,Hn as a,_n as b,Pn as c,Mn as d,kn as e,Un as f,Jn as g,vn as h,Kn as i,Vn as j,jn as k,CB as l,re as m,Yn as n,Qn as o,Wn as p,Xn as q,ei as r,Ze as s,ni as t,ii as u,si as v,V as w,Q as x,Ee as y,fe as z};//# sourceMappingURL=chunk-ZSGCSTLQ.js.map
36
- //# sourceMappingURL=chunk-ZSGCSTLQ.js.map
35
+ */export{Wt as A,Ji as B,Yi as C,ye as D,Hr as E,Gr as F,iB as G,He as H,Be as I,Mr as J,Ge as K,Qr as L,$r as M,Zr as N,Bs as O,es as P,Ln as Q,ns as R,Cs as S,os as T,as as U,ls as V,hs as W,Cn as X,on as Y,nn as Z,V as a,W as b,Ee as c,fe as d,pi as e,Ei as f,Di as g,gi as h,di as i,mi as j,Oi as k,Si as l,Ii as m,Fi as n,Ai as o,lB as p,ge as q,Ni as r,Ri as s,Ti as t,yi as u,Hi as v,Vt as w,Pi as x,Mi as y,Ui as z};//# sourceMappingURL=chunk-DQF5ACN3.js.map
36
+ //# sourceMappingURL=chunk-DQF5ACN3.js.map