@warmhub/sdk-ts 0.93.0 → 0.95.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 en="X-WarmHub-Client-Flags",tn="compatibility-override";var nn=/^[a-z0-9-]+$/;function sn(n){return nn.test(n)}function Cn(n){return [...new Set(n)].sort().join(",")}var rn="X-WarmHub-Client",on="@warmhub/sdk-ts",an="warmhub-cli",ln="warmhub-sdk-py";function un(n,B){return `${n}/${B}`}var cn=["shape","thing","assertion","collection"];function tB(n){let B=n.indexOf("/");return B===-1?null:{shapePrefix:n.slice(0,B),bareName:n.slice(B+1)}}function XB(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 hn="X-WarmHub-Install-Repo",En="X-WarmHub-Signature",pn="X-WarmHub-Timestamp",Dn=/^[A-Za-z0-9\-._~]$/;function Le(n){let B="",e=new TextEncoder().encode(n);for(let t of e){let i=String.fromCharCode(t);Dn.test(i)?B+=i:B+=`%${t.toString(16).toUpperCase().padStart(2,"0")}`;}return B}function fn(n){return typeof n=="boolean"?n?"true":"false":typeof n=="number"?JSON.stringify(n):n}function gn(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,fn(t)]);return B.sort(([e],[t])=>e<t?-1:e>t?1:0),B.map(([e,t])=>`${Le(e)}=${Le(t)}`).join("&")}function be(n){let B="";for(let e of n)B+=e.toString(16).padStart(2,"0");return B}async function Ge(n){let B=await crypto.subtle.digest("SHA-256",new TextEncoder().encode(n));return be(new Uint8Array(B))}var He="e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";function ye(n){return [n.method,n.path,n.canonicalQuery,n.installRepo,n.bodyHash,String(n.timestamp)].join(`
2
- `)}async function mn(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 be(new Uint8Array(i))}var dn=/^sha256=([0-9a-f]{64})$/,On=300;async function Fn(n){let B=dn.exec(n.signature);if(!B)return {ok:false,reason:"invalid-format"};let e=B[1],t=n.toleranceSec??On;if(Math.abs(n.nowUnixSeconds-n.timestamp)>t)return {ok:false,reason:"expired"};let s=n.body.length===0?He:await Ge(n.body),C=ye({method:n.method,path:n.path,canonicalQuery:we(n.query),installRepo:n.installRepo,bodyHash:s,timestamp:n.timestamp}),r=await mn(n.secret,C);return In(e,r)?{ok:true}:{ok:false,reason:"invalid-signature"}}function In(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 _e=["repo:read","repo:checkpoint-read","repo:checkpoint-generate","repo:write","repo:configure","repo:admin","repo:action-callback"];function An(n){return _e.includes(n)}var Me=/^(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 Sn(n){return Me.test(n)?n:null}function Pe(n){let B=Me.exec(n);return {major:Number(B[1]),minor:Number(B[2]),patch:Number(B[3]),prerelease:B[4]?B[4].split("."):[]}}var xe=/^(0|[1-9]\d*)$/;function Nn(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],s=B[t];if(i===void 0||s===void 0)break;if(i===s)continue;let C=xe.test(i),r=xe.test(s);return C&&r?Number(i)<Number(s)?-1:1:C?-1:r?1:i<s?-1:1}return n.length===B.length?0:n.length<B.length?-1:1}function Tn(n,B){let e=Pe(n),t=Pe(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:Nn(e.prerelease,t.prerelease)}var f=class nB{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=nB.CLASS_NL|nB.DOT_NL;static PERL=nB.CLASS_NL|nB.ONE_LINE|nB.PERL_X|nB.UNICODE_GROUPS;static POSIX=0;static UNANCHORED=0;static ANCHOR_START=1;static ANCHOR_BOTH=2},Y={CASE_INSENSITIVE:1,DOTALL:2,MULTILINE:4,DISABLE_UNICODE_GROUPS:8,LONGEST_MATCH:16,LOOKBEHINDS:512},EB=128,ee=new Int32Array(EB),te=new Int32Array(EB),LB=65535;for(let n=0;n<EB;n++)n>=97&&n<=122?ee[n]=n-32:ee[n]=n,n>=65&&n<=90?te[n]=n+32:te[n]=n;var p=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<EB)return ee[n];let B=String.fromCodePoint(n).toUpperCase(),e=B.codePointAt(0)>LB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toLowerCase(),i=t.codePointAt(0)>LB?2:1;return t.length>i||t.codePointAt(0)!==n?n:B.codePointAt(0)}static toLowerCase(n){if(n<EB)return te[n];let B=String.fromCodePoint(n).toLowerCase(),e=B.codePointAt(0)>LB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toUpperCase(),i=t.codePointAt(0)>LB?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}},ut=new Uint8Array(256);for(let n=0,B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-";n<64;n++)ut[B.charCodeAt(n)]=n;var ct=n=>{let B=[],e=0,t=0;for(let i=0;i<n.length;i++){let s=ut[n.charCodeAt(i)];e|=(s&31)<<t,(s&32)===0?(B.push(e),e=0,t=0):t+=5;}return B},l=(n,B)=>{let e=ct(n),t=B?e.length/2:e.length/3,i=new Uint32Array(t*3),s=0,C=0;for(let r=0;r<t;r++)s+=e[C++],i[r*3]=s,s+=e[C++],i[r*3+1]=s,i[r*3+2]=B?1:e[C++];return i},Rn=n=>{let B=ct(n),e=new Map,t=0;for(let i=0;i<B.length;i+=2){t+=B[i];let s=B[i+1],C=s>>>1^-(s&1);e.set(t,t+C);}return e},wB=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}},k=class{static _CASE_ORBIT=null;static get CASE_ORBIT(){return this._CASE_ORBIT||(this._CASE_ORBIT=Rn("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 wB({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 wB({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 wB({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 wB({Common:()=>new a(l("8cgBgB",false)),Greek:()=>new a(l("1FwUwU",false)),Inherited:()=>new a(l("5cgBgBlgHAB",false))})},m=class U{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 s=t+Math.floor((i-t)/2),C=B.getLo(s),r=B.getHi(s);if(C<=e&&e<=r){let o=B.getStride(s);return (e-C)%o===0}e<C?i=s:t=s+1;}return false}static is(B,e){if(e<=U.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 s=B.getStride(t);return (e-i)%s===0}return false}return B.length>0&&e>=B.getLo(0)&&U.is32(B,e)}static isUpper(B){if(B<=U.MAX_LATIN1){let e=String.fromCodePoint(B);return e.toUpperCase()===e&&e.toLowerCase()!==e}return U.is(k.Upper,B)}static isPrint(B){return B<=U.MAX_LATIN1?B>=32&&B<U.MAX_ASCII||B>=161&&B!==173:U.is(k.Print,B)}static simpleFold(B){if(k.CASE_ORBIT.has(B))return k.CASE_ORBIT.get(B);let e=p.toLowerCase(B);return e!==B?e:p.toUpperCase(B)}static equalsIgnoreCase(B,e){if(B===e)return true;if(B<0||e<0)return false;if(B<=U.MAX_ASCII&&e<=U.MAX_ASCII)return 65<=B&&B<=90&&(B|=32),65<=e&&e<=90&&(e|=32),B===e;for(let t=U.simpleFold(B);t!==B;t=U.simpleFold(t))if(t===e)return true;return false}},se=256,ht=new Uint8Array(se);for(let n=0;n<se;n++)ht[n]=97<=n&&n<=122||65<=n&&n<=90||48<=n&&n<=57||n===95?1:0;var $B=null,ZB=null,F=class M{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 p.CODES.get("0")<=B&&B<=p.CODES.get("9")||p.CODES.get("a")<=B&&B<=p.CODES.get("z")||p.CODES.get("A")<=B&&B<=p.CODES.get("Z")}static unhex(B){return p.CODES.get("0")<=B&&B<=p.CODES.get("9")?B-p.CODES.get("0"):p.CODES.get("a")<=B&&B<=p.CODES.get("f")?B-p.CODES.get("a")+10:p.CODES.get("A")<=B&&B<=p.CODES.get("F")?B-p.CODES.get("A")+10:-1}static escapeRune(B){let e="";if(m.isPrint(B))M.METACHARACTERS.indexOf(String.fromCodePoint(B))>=0&&(e+="\\"),e+=String.fromCodePoint(B);else switch(B){case p.CODES.get('"'):e+='\\"';break;case p.CODES.get("\\"):e+="\\\\";break;case p.CODES.get(" "):e+="\\t";break;case p.CODES.get(`
4
- `):e+="\\n";break;case p.CODES.get("\r"):e+="\\r";break;case p.CODES.get("\b"):e+="\\b";break;case p.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 s=e.codePointAt(i);t.push(s),i+=s>m.MAX_BMP?2:1;}return t}static runeToString(B){return String.fromCodePoint(B)}static isWordRune(B){return B<se?ht[B]===1:false}static emptyOpContext(B,e){let t=0;return B<0&&(t|=M.EMPTY_BEGIN_TEXT|M.EMPTY_BEGIN_LINE),B===10&&(t|=M.EMPTY_BEGIN_LINE),e<0&&(t|=M.EMPTY_END_TEXT|M.EMPTY_END_LINE),e===10&&(t|=M.EMPTY_END_LINE),M.isWordRune(B)!==M.isWordRune(e)?t|=M.EMPTY_WORD_BOUNDARY:t|=M.EMPTY_NO_WORD_BOUNDARY,t}static quoteMeta(B){return B.split("").map(e=>M.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 $B||($B=new TextEncoder),M.toArray($B.encode(B));{let e=[],t=0;for(let i=0;i<B.length;i++){let s=B.charCodeAt(i);s<128?e[t++]=s:s<2048?(e[t++]=s>>6|192,e[t++]=s&63|128):(s&64512)===m.MIN_HIGH_SURROGATE&&i+1<B.length&&(B.charCodeAt(i+1)&64512)===m.MIN_LOW_SURROGATE?(s=m.MIN_SUPPLEMENTARY_CODE_POINT+((s&1023)<<10)+(B.charCodeAt(++i)&1023),e[t++]=s>>18|240,e[t++]=s>>12&63|128,e[t++]=s>>6&63|128,e[t++]=s&63|128):(e[t++]=s>>12|224,e[t++]=s>>6&63|128,e[t++]=s&63|128);}return e}}static utf8ByteArrayToString(B){if(globalThis.TextDecoder){ZB||(ZB=new TextDecoder("utf-8"));let e=B instanceof Uint8Array?B:new Uint8Array(B);return ZB.decode(e)}else {let e=[],t=0,i=0;for(;t<B.length;){let s=B[t++];if(s<128)e[i++]=String.fromCharCode(s);else if(s>191&&s<224){let C=B[t++];e[i++]=String.fromCharCode((s&31)<<6|C&63);}else if(s>239&&s<365){let C=B[t++],r=B[t++],o=B[t++],u=((s&7)<<18|(C&63)<<12|(r&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 C=B[t++],r=B[t++];e[i++]=String.fromCharCode((s&15)<<12|(C&63)<<6|r&63);}}return e.join("")}}},Et=(n=[],B=0)=>{let e=Object.create(null);for(let t=0;t<n.length;t++){let i=n[t],s=B+t;e[i]=s,e[s]=i;}return Object.freeze(e)},lB=class ne{static Encoding=Et(["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()===ne.Encoding.UTF_8}isUTF16Encoding(){return this.getEncoding()===ne.Encoding.UTF_16}},ke=class extends lB{constructor(n=null){super(),this.bytes=n;}getEncoding(){return lB.Encoding.UTF_8}asCharSequence(){return F.utf8ByteArrayToString(this.bytes)}asBytes(){return this.bytes}length(){return this.bytes.length}},Ln=class extends lB{constructor(n=null){super(),this.charSequence=n;}getEncoding(){return lB.Encoding.UTF_16}asCharSequence(){return this.charSequence}asBytes(){return F.stringToUtf8ByteArray(this.charSequence.toString())}length(){return this.charSequence.length}},pB=class{static utf16(n){return new Ln(n)}static utf8(n){return F.isByteArray(n)?new ke(n):new ke(F.stringToUtf8ByteArray(n))}},x=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}},wn=class extends x{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 x.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],s=this.end-t,C=typeof n.indexOf=="function",r=e;for(;r<=s;){if(C){if(r=n.indexOf(i,r),r===-1||r>s)return -1}else {for(;r<=s&&n[r]!==i;)r++;if(r>s)return -1}let o=true;for(let u=1;u<t;u++)if(n[r+u]!==B[u]){o=false;break}if(o)return r;r++;}return -1}prefixLength(n){return n.prefixUTF8.length}},bn=class extends x{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 x.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}},L=class{static fromUTF8(n,B=0,e=n.length){return new wn(n,B,e)}static fromUTF16(n,B=0,e=n.length){return new bn(n,B,e)}},DB=class extends Error{constructor(n){super(n),this.name="RE2JSException";}},b=class extends DB{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}},pt=class extends DB{constructor(n){super(n),this.name="RE2JSCompileException";}},j=class extends DB{constructor(n){super(n),this.name="RE2JSGroupException";}},Gn=class extends DB{constructor(n){super(n),this.name="RE2JSFlagsException";}},aB=class extends DB{constructor(n){super(n),this.name="RE2JSInternalException";}},Je=class Dt{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===p.CODES.get("\\")||i===p.CODES.get("$")?`\\${t}`:t}).join(""):B.indexOf("$")<0?B:B.split("").map(t=>t.codePointAt(0)===p.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 lB?this.resetMatcherInput(e):F.isByteArray(e)?this.resetMatcherInput(pB.utf8(e)):this.resetMatcherInput(pB.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 j(`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 j(`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 j(`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 j("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 j(`Group index out of bounds: ${B}`);if(!this.hasMatch)throw new j("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 j("inconsistency in matching group data");this.groups=t[1],this.hasGroups=true;}matches(){return this.genMatch(0,f.ANCHOR_BOTH)}lookingAt(){return this.genMatch(0,f.ANCHOR_START)}find(B=null){if(B!==null){if(B<0||B>this.matcherInputLength)throw new j(`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()?L.fromUTF16(this.matcherInput.asCharSequence(),0,this.matcherInputLength):L.fromUTF8(this.matcherInput.asBytes(),0,this.matcherInputLength)).step(B);e<0?B++:B+=e&7;}return this.genMatch(B,f.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(),s=this.end();return this.appendPos<i&&(t+=this.substring(this.appendPos,i)),this.appendPos=s,t+=e?this.appendReplacementInternalJava(B):this.appendReplacementInternalJs(B),t}appendReplacementInternalJava(B){let e="",t=0,i=B.length;for(let s=0;s<i-1;s++){if(B.codePointAt(s)===p.CODES.get("\\")){t<s&&(e+=B.substring(t,s)),s++,t=s;continue}if(B.codePointAt(s)===p.CODES.get("$")){let C=B.codePointAt(s+1);if(p.CODES.get("0")<=C&&C<=p.CODES.get("9")){let r=C-p.CODES.get("0");for(t<s&&(e+=B.substring(t,s)),s+=2;s<i&&(C=B.codePointAt(s),!(C<p.CODES.get("0")||C>p.CODES.get("9")||r*10+C-p.CODES.get("0")>this.patternGroupCount));s++)r=r*10+C-p.CODES.get("0");if(r>this.patternGroupCount)throw new j(`n > number of groups: ${r}`);let o=this.group(r);o!==null&&(e+=o),t=s,s--;continue}else if(C===p.CODES.get("{")){t<s&&(e+=B.substring(t,s)),s++;let r=s+1;for(;r<B.length&&B.codePointAt(r)!==p.CODES.get("}")&&B.codePointAt(r)!==p.CODES.get(" ");)r++;if(r===B.length||B.codePointAt(r)!==p.CODES.get("}"))throw new j("named capture group is missing trailing '}'");let o=B.substring(s+1,r),u=this.group(o);u!==null&&(e+=u),t=r+1,s=r;continue}}}return t<i&&(e+=B.substring(t,i)),e}appendReplacementInternalJs(B){let e="",t=0,i=B.length;for(let s=0;s<i-1;s++)if(B.codePointAt(s)===p.CODES.get("$")){let C=B.codePointAt(s+1);if(p.CODES.get("$")===C){t<s&&(e+=B.substring(t,s)),e+="$",s++,t=s+1;continue}else if(p.CODES.get("&")===C){t<s&&(e+=B.substring(t,s));let r=this.group(0);r!==null?e+=r:e+="$&",s++,t=s+1;continue}else if(p.CODES.get("`")===C){t<s&&(e+=B.substring(t,s)),e+=this.substring(0,this.start(0)),s++,t=s+1;continue}else if(p.CODES.get("'")===C){t<s&&(e+=B.substring(t,s)),e+=this.substring(this.end(0),this.matcherInputLength),s++,t=s+1;continue}else if(p.CODES.get("1")<=C&&C<=p.CODES.get("9")){let r=C-p.CODES.get("0");for(t<s&&(e+=B.substring(t,s)),s+=2;s<i&&(C=B.codePointAt(s),!(C<p.CODES.get("0")||C>p.CODES.get("9")||r*10+C-p.CODES.get("0")>this.patternGroupCount));s++)r=r*10+C-p.CODES.get("0");if(r>this.patternGroupCount){e+=`$${r}`,t=s,s--;continue}let o=this.group(r);o!==null&&(e+=o),t=s,s--;continue}else if(C===p.CODES.get("<")){t<s&&(e+=B.substring(t,s)),s++;let r=s+1;for(;r<B.length&&B.codePointAt(r)!==p.CODES.get(">")&&B.codePointAt(r)!==p.CODES.get(" ");)r++;if(r===B.length||B.codePointAt(r)!==p.CODES.get(">")){e+=B.substring(s-1,r+1),t=r+1,s=r;continue}let o=B.substring(s+1,r);if(Object.prototype.hasOwnProperty.call(this.namedGroups,o)){let u=this.group(o);u!==null&&(e+=u);}else e+=`$<${o}>`;t=r+1,s=r;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 s=typeof B=="function",C=Object.keys(this.namedGroups).length>0,r=null;if(s){if(this.groupCount()>=Dt.MAX_REPLACER_ARGS)throw new j("Too many capture groups to safely invoke replacer function");r=this.matcherInput.isUTF8Encoding()?this.matcherInput.asBytes():this.matcherInput.asCharSequence();}for(;this.find()&&(i+=s?this.appendReplacementFunc(B,C,r):this.appendReplacement(B,t),!!e););return i+=this.appendTail(),i}appendReplacementFunc(B,e,t){let i="",s=this.start(),C=this.end();this.appendPos<s&&(i+=this.substring(this.appendPos,s)),this.appendPos=C;let r=this.buildReplacerArgs(s,e,t);return i+=String(B(...r)),i}buildReplacerArgs(B,e,t){let i=[this.group(0)],s=this.groupCount();for(let C=1;C<=s;C++){let r=this.start(C);r<0?i.push(void 0):i.push(this.substring(r,this.end(C)));}if(i.push(B),i.push(t),e){let C=this.getNamedGroups();for(let r in C)C[r]===null&&(C[r]=void 0);i.push(C);}return i}},D=class H{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 H.RUNE<=B&&B<=H.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 C=this.runes[0];return (this.arg&f.FOLD_CASE)!==0?m.equalsIgnoreCase(C,B):B===C}let e=this.runes.length;if(e===0)return false;if(e===2||e===4||e===6||e===8){for(let C=0;C<e;C+=2){if(B<this.runes[C])return false;if(B<=this.runes[C+1])return true}return false}let t=0,i=e>>1;for(;i>1;){let C=i>>1;t+=this.runes[t+C<<1]<=B?C:0,i-=C;}t+=this.runes[t<<1]<=B?1:0;let s=t-1;return s>=0&&B<=this.runes[s<<1|1]}matchRunePos(B){if(this.runes.length===1){let C=this.runes[0];return (this.arg&f.FOLD_CASE)!==0?m.equalsIgnoreCase(C,B)?0:-1:B===C?0:-1}let e=this.runes.length;if(e===0)return -1;if(e===2||e===4||e===6||e===8){for(let C=0;C<e;C+=2){if(B<this.runes[C])return -1;if(B<=this.runes[C+1])return Math.floor(C/2)}return -1}let t=0,i=e>>1;for(;i>1;){let C=i>>1;t+=this.runes[t+C<<1]<=B?C:0,i-=C;}t+=this.runes[t<<1]<=B?1:0;let s=t-1;return s>=0&&B<=this.runes[s<<1|1]?s:-1}toString(){switch(this.op){case H.ALT:return `alt -> ${this.out}, ${this.arg}`;case H.ALT_MATCH:return `altmatch -> ${this.out}, ${this.arg}`;case H.CAPTURE:return `cap ${this.arg} -> ${this.out}`;case H.EMPTY_WIDTH:return `empty ${this.arg} -> ${this.out}`;case H.MATCH:return `match${this.arg!==0?` ${this.arg}`:""}`;case H.FAIL:return "fail";case H.NOP:return `nop -> ${this.out}`;case H.LB_WRITE:return `lbwrite ${this.arg} -> ${this.out}`;case H.LB_CHECK:return `lbcheck ${this.arg} -> ${this.out}`;case H.RUNE:return this.runes===null?"rune <null>":["rune ",H.escapeRunes(this.runes),(this.arg&f.FOLD_CASE)!==0?"/i":""," -> ",this.out].join("");case H.RUNE1:return `rune1 ${H.escapeRunes(this.runes)} -> ${this.out}`;case H.RUNE_ANY:return `any -> ${this.out}`;case H.RUNE_ANY_NOT_NL:return `anynotnl -> ${this.out}`;default:throw new Error("unhandled case in Inst.toString")}}},Hn=class{constructor(){this.inst=null,this.cap=null;}},Ue=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}},yB=class _B{static THREADS_CHUNK_SIZE=128;static fromRE2(B){let e=new _B;return e.prog=B.prog,e.re2=B,e.q0=new Ue(e.prog.numInst()),e.q1=new Ue(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 _B.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<_B.THREADS_CHUNK_SIZE;i++){let s=new Hn;s.cap=new Int32Array(t),this.pool[this.poolSize++]=s;}}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===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return false;this.matched=false,this.matchcap.fill(-1);let s=this.prog.numLb>0?0:e,C=e,r=this.q0,o=this.q1,u=B.step(s),c=u>>3,E=u&7,g=-1,d=0;u!==x.EOF()&&(u=B.step(s+E),g=u>>3,d=u&7);let A;for(s===0?A=F.emptyOpContext(-1,c):A=B.context(s);;){if(r.isEmpty()){if((i&F.EMPTY_BEGIN_TEXT)!==0&&s!==0||(t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&s!==0||this.matched)break;if(this.prog.numLb===0&&this.re2.prefix.length!==0&&g!==this.re2.prefixRune&&B.canCheckPrefix()){let w=B.index(this.re2,s);if(w<0)break;s+=w,u=B.step(s),c=u>>3,E=u&7,u=B.step(s+E),g=u>>3,d=u&7;}}if(s===0&&this.prog.numLb>0)for(let w=0;w<this.prog.lbStarts.length;w++)this.add(r,this.prog.lbStarts[w],s,this.matchcap,A,null);!this.matched&&(s===0||t===f.UNANCHORED)&&s>=C&&(this.ncap>0&&(this.matchcap[0]=s),this.add(r,this.prog.start,s,this.matchcap,A,null));let S=s+E;if(A=B.context(S),this.step(r,o,s,S,c,A,t,s===B.endPos()),E===0||this.ncap===0&&this.matched)break;s+=E,c=g,E=d,c!==-1&&(u=B.step(s+E),g=u>>3,d=u&7);let G=r;r=o,o=G;}return this.freeQueue(o),this.matched}matchSet(B,e,t){let i=this.re2.cond;if(i===F.EMPTY_ALL)return [];if((t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return [];let s=this.prog.numLb>0?0:e,C=e,r=this.q0,o=this.q1,u=B.step(s),c=u>>3,E=u&7,g=-1,d=0;u!==x.EOF()&&(u=B.step(s+E),g=u>>3,d=u&7);let A=s===0?F.emptyOpContext(-1,c):B.context(s),S=new Set;for(;!(r.isEmpty()&&((i&F.EMPTY_BEGIN_TEXT)!==0&&s!==0||(t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&s!==0));){if(s===0&&this.prog.numLb>0)for(let X=0;X<this.prog.lbStarts.length;X++)this.add(r,this.prog.lbStarts[X],s,this.matchcap,A,null);(s===0||t===f.UNANCHORED)&&s>=C&&this.add(r,this.prog.start,s,this.matchcap,A,null);let G=s+E;A=B.context(G);for(let X=0;X<r.size;X++){let eB=r.denseThreads[X];if(eB===null)continue;let uB=eB.inst,cB=false;switch(uB.op){case D.MATCH:if(t===f.ANCHOR_BOTH&&s!==B.endPos())break;S.add(uB.arg);break;case D.RUNE:cB=uB.matchRune(c);break;case D.RUNE1:cB=c===uB.runes[0];break;case D.RUNE_ANY:cB=true;break;case D.RUNE_ANY_NOT_NL:cB=c!==p.CODES.get(`
5
- `);break;default:throw new aB("bad inst")}cB&&(eB=this.add(o,uB.out,G,eB.cap,A,eB)),eB!==null&&(this.freeThread(eB),r.denseThreads[X]=null);}if(r.clear(),E===0)break;s+=E,c=g,E=d,c!==-1&&(u=B.step(s+E),g=u>>3,d=u&7);let w=r;r=o,o=w;}return this.freeQueue(o),Array.from(S).sort((G,w)=>G-w)}step(B,e,t,i,s,C,r,o){let u=this.re2.longest;for(let c=0;c<B.size;c++){let E=B.denseThreads[c];if(E===null)continue;if(u&&this.matched&&this.ncap>0&&this.matchcap[0]<E.cap[0]){this.freeThread(E);continue}let g=E.inst,d=false;switch(g.op){case D.MATCH:if(r===f.ANCHOR_BOTH&&!o)break;this.ncap>0&&(!u||!this.matched||this.matchcap[1]<t)&&(E.cap[1]=t,this.matchcap.set(E.cap.subarray(0,this.ncap))),u||this.freeQueue(B,c+1),this.matched=true;break;case D.RUNE:d=g.matchRune(s);break;case D.RUNE1:d=s===g.runes[0];break;case D.RUNE_ANY:d=true;break;case D.RUNE_ANY_NOT_NL:d=s!==p.CODES.get(`
6
- `);break;default:throw new aB("bad inst")}d&&(E=this.add(e,g.out,i,E.cap,C,E)),E!==null&&(this.freeThread(E),B.denseThreads[c]=null);}B.clear();}add(B,e,t,i,s,C){for(;;){if(e===0||B.contains(e))return C;let r=B.add(e),o=this.prog.inst[e];switch(o.op){case D.FAIL:return C;case D.ALT:case D.ALT_MATCH:C=this.add(B,o.out,t,i,s,C),e=o.arg;continue;case D.EMPTY_WIDTH:if((o.arg&~s)===0){e=o.out;continue}return C;case D.NOP:e=o.out;continue;case D.CAPTURE:if(o.arg<this.ncap){let u=i[o.arg];return i[o.arg]=t,this.add(B,o.out,t,i,s,null),i[o.arg]=u,C}else {e=o.out;continue}case D.LB_WRITE:this.lbTable[Math.abs(o.arg)]=t,e=o.out;continue;case D.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 C;case D.MATCH:case D.RUNE:case D.RUNE1:case D.RUNE_ANY:case D.RUNE_ANY_NOT_NL:if(C===null?C=this.alloc(o):C.inst=o,this.ncap>0&&C.cap!==i)for(let u=0;u<this.ncap;u++)C.cap[u]=i[u];return B.denseThreads[r]=C,C=null,C;default:throw new Error("unhandled")}}}},ve=n=>{let B=-2128831035;for(let e=0;e<n.length;e++)B^=n[e],B=Math.imul(B,16777619);return B},yn=(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},_n=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;}},ft=class ie{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/ie.STATE_MEMORY_ESTIMATE)),this.cacheClears=0,this.failed=false,this.clock=0;}computeClosure(B){let e=new Set,t=[...B],i=false,s=[];for(;t.length>0;){let r=t.pop();if(e.has(r))continue;e.add(r);let o=this.prog.getInst(r);switch(o.op){case D.MATCH:i=true,s.includes(o.arg)||s.push(o.arg);break;case D.ALT:case D.ALT_MATCH:t.push(o.out),t.push(o.arg);break;case D.NOP:case D.CAPTURE:t.push(o.out);break;case D.EMPTY_WIDTH:case D.LB_WRITE:case D.LB_CHECK:return null}}let C=Int32Array.from(e).sort();return s.sort((r,o)=>r-o),{pcs:C,isMatch:i,matchIDs:s}}getState(B){let e=this.computeClosure(B);if(!e)return null;let t=e.pcs,i=ve(t),s=this.stateCache.get(i);if(s)for(let r=0;r<s.length;r++){let o=s[r];if(yn(o.nfaStates,t))return o.lastSeen=++this.clock,o}else s=[],this.stateCache.set(i,s);if(this.failed)return null;if(this.stateCount>=this.stateLimit){if(this.cacheClears++,this.cacheClears>=ie.MAX_CACHE_CLEARS)return this.failed=true,this.stateCache.clear(),this.stateCount=0,this.startState=null,null;this.evictCache(),s=this.stateCache.get(i),s||(s=[],this.stateCache.set(i,s));}let C=new _n(t,e.isMatch,e.matchIDs);return C.lastSeen=++this.clock,s.push(C),this.stateCount++,C}evictCache(){let B=[];for(let C of this.stateCache.values())for(let r=0;r<C.length;r++)B.push(C[r]);B.sort((C,r)=>C.lastSeen-r.lastSeen);let e=Math.max(1,Math.floor(this.stateLimit/2)),t=B.length-e,i=B.slice(t),s=new Set(i);this.stateCache.clear(),this.stateCount=0;for(let C=0;C<i.length;C++){let r=i[C];r.nextLatin1.fill(null),r.nextLatin1Anchored.fill(null),r.transKeys.length=0,r.transVals.length=0;let o=ve(r.nfaStates),u=this.stateCache.get(o);u||(u=[],this.stateCache.set(o,u)),u.push(r),this.stateCount++;}this.startState&&!s.has(this.startState)&&(this.startState=null);}step(B,e,t){if(e<=m.MAX_LATIN1)if(t===f.UNANCHORED){let C=B.nextLatin1[e];if(C!==null)return C}else {let C=B.nextLatin1Anchored[e];if(C!==null)return C}else {let C=e+(t===f.UNANCHORED?0:m.MAX_RUNE+1),r=B.transKeys,o=r.length;for(let u=0;u<o;u++)if(r[u]===C)return B.transVals[u]}let i=[];for(let C=0;C<B.nfaStates.length;C++){let r=B.nfaStates[C],o=this.prog.getInst(r);D.isRuneOp(o.op)&&o.matchRune(e)&&i.push(o.out);}t===f.UNANCHORED&&i.push(this.prog.start);let s=this.getState(i);if(e<=m.MAX_LATIN1)t===f.UNANCHORED?B.nextLatin1[e]=s:B.nextLatin1Anchored[e]=s;else {let C=e+(t===f.UNANCHORED?0:m.MAX_RUNE+1);B.transKeys.push(C),B.transVals.push(s);}return s}match(B,e,t){if((t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return false;if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let i=B.endPos(),s=this.startState;if(s.isMatch)if(t===f.ANCHOR_BOTH){if(e===i)return true}else return true;let C=e;for(;C<i;){let r=B.step(C),o=r>>3,u=r&7;if(u===0)break;if(s=t===f.UNANCHORED&&o<=m.MAX_LATIN1&&s.nextLatin1[o]||this.step(s,o,t),s===null)return null;if(s.lastSeen=++this.clock,s.isMatch)if(t===f.ANCHOR_BOTH){if(C+u===i)return true}else return true;if(s.nfaStates.length===0&&t!==f.UNANCHORED)return false;C+=u;}return false}matchSet(B,e,t){if((t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return [];if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let i=B.endPos(),s=this.startState,C=new Set,r=(u,c)=>{u.isMatch&&(t===f.ANCHOR_BOTH?c===i&&u.matchIDs.forEach(E=>C.add(E)):u.matchIDs.forEach(E=>C.add(E)));};r(s,e);let o=e;for(;o<i;){let u=B.step(o),c=u>>3,E=u&7;if(E===0)break;if(s=t===f.UNANCHORED&&c<=m.MAX_LATIN1&&s.nextLatin1[c]||this.step(s,c,t),s===null)return null;if(s.lastSeen=++this.clock,o+=E,r(s,o),s.nfaStates.length===0&&t!==f.UNANCHORED)break}return Array.from(C).sort((u,c)=>u-c)}},Pn=32,xn=500,Be=256,Mn=256*1024,kn=class{constructor(){this.end=0,this.cap=new Int32Array(0),this.matchcap=new Int32Array(0),this.ncap=0,this.jobPc=new Int32Array(Be),this.jobArg=new Uint8Array(Be),this.jobPos=new Int32Array(Be),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)+Pn-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!==D.FAIL&&(t||this.shouldVisit(B,e))){if(this.jobLen>=this.jobPc.length){let i=this.jobPc.length*2,s=new Int32Array(i);s.set(this.jobPc),this.jobPc=s;let C=new Uint8Array(i);C.set(this.jobArg),this.jobArg=C;let r=new Int32Array(i);r.set(this.jobPos),this.jobPos=r;}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 s=n.longest;for(this.push(n,e,t,false);this.jobLen>0;){this.jobLen--;let C=this.jobPc[this.jobLen],r=this.jobArg[this.jobLen]===1,o=this.jobPos[this.jobLen],u=true;for(;!(!u&&!this.shouldVisit(C,o));){u=false;let c=n.prog.getInst(C);switch(c.op){case D.FAIL:throw new aB("unexpected InstFail");case D.ALT:if(r){r=false,C=c.arg;continue}else {this.push(n,C,o,true),C=c.out;continue}case D.ALT_MATCH:{let E=n.prog.getInst(c.out);if(D.isRuneOp(E.op)){this.push(n,c.arg,o,false),C=c.arg,o=this.end;continue}this.push(n,c.out,this.end,false),C=c.out;continue}case D.RUNE:{let E=B.step(o);if(E===x.EOF()||!c.matchRune(E>>3))break;o+=E&7,C=c.out;continue}case D.RUNE1:{let E=B.step(o);if(E===x.EOF()||E>>3!==c.runes[0])break;o+=E&7,C=c.out;continue}case D.RUNE_ANY_NOT_NL:{let E=B.step(o);if(E===x.EOF()||E>>3===10)break;o+=E&7,C=c.out;continue}case D.RUNE_ANY:{let E=B.step(o);if(E===x.EOF())break;o+=E&7,C=c.out;continue}case D.CAPTURE:if(r){this.cap[c.arg]=o;break}else {c.arg<this.ncap&&(this.push(n,C,this.cap[c.arg],true),this.cap[c.arg]=o),C=c.out;continue}case D.EMPTY_WIDTH:{let E=B.context(o);if((c.arg&~E)!==0)break;C=c.out;continue}case D.NOP:C=c.out;continue;case D.MATCH:{if(i===f.ANCHOR_BOTH&&o!==this.end)break;if(this.ncap===0)return true;this.ncap>1&&(this.cap[1]=o);let E=this.matchcap[1];if((E===-1||s&&o>0&&o>E)&&this.matchcap.set(this.cap),!s||o===this.end)return true;break}case D.LB_WRITE:case D.LB_CHECK:throw new aB("Backtracker cannot evaluate Lookbehind instructions");default:throw new aB("bad inst")}break}}return s&&this.matchcap.length>1&&this.matchcap[1]>=0}},bB=[],GB=class gt{static shouldBacktrack(B){return B.numInst()<=xn}static maxBitStateLen(B){return gt.shouldBacktrack(B)?Math.floor(Mn/B.numInst()):0}static execute(B,e,t,i,s){let C=B.cond;if(C===F.EMPTY_ALL||(i===f.ANCHOR_START||i===f.ANCHOR_BOTH)&&t!==0||(C&F.EMPTY_BEGIN_TEXT)!==0&&t!==0)return null;let r=bB.length>0?bB.pop():new kn,o=e.endPos();r.reset(B.prog,o,s);let u=false;if((C&F.EMPTY_BEGIN_TEXT)!==0||i===f.ANCHOR_START||i===f.ANCHOR_BOTH)r.ncap>0&&(r.cap[0]=t),r.tryBacktrack(B,e,B.prog.start,t,i)&&(u=true);else {let E=-1;for(;t<=o&&E!==0;t+=E){if(B.prefix.length>0){let d=e.index(B,t);if(d<0)break;t+=d;}if(r.ncap>0&&(r.cap[0]=t),r.tryBacktrack(B,e,B.prog.start,t,i)){u=true;break}let g=e.step(t);E=g===x.EOF()?0:g&7;}}if(!u)return bB.push(r),null;let c=s===0?[]:F.toArray(r.matchcap.subarray(0,s));return bB.push(r),c}},Ke=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++);}},Jn=(n,B,e,t)=>{let i=n.length,s=B.length,C=0,r=0,o=[],u=[],c=true,E=-1,g=d=>{let A=d?n:B,S=d?C:r,G=d?e:t;return E>0&&A[S]<=o[E]?false:(o.push(A[S],A[S+1]),d?C+=2:r+=2,E+=2,u.push(G),true)};for(;C<i||r<s;)if(r>=s?c=g(true):C>=i||B[r]<n[C]?c=g(false):c=g(true),!c)return null;return {merged:o,next:u}},Un=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 D(e.op);t.out=e.out,t.arg=e.arg,t.runes=e.runes?e.runes.slice():[],t.next=null,this.inst[B]=t;}}},vn=n=>{let B=new Un(n);for(let e=0;e<B.inst.length;e++){let t=B.inst[e];if(t.op!==D.ALT&&t.op!==D.ALT_MATCH)continue;let i="out",s="arg",C=B.inst[t[s]];if(C.op!==D.ALT&&C.op!==D.ALT_MATCH&&(i="arg",s="out",C=B.inst[t[s]],C.op!==D.ALT&&C.op!==D.ALT_MATCH))continue;let r=B.inst[t[i]];if(r.op===D.ALT||r.op===D.ALT_MATCH)continue;let o="out",u="arg",c=false;C.out===e?c=true:C.arg===e&&(c=true,o="arg",u="out"),c&&(C[o]=t[i]),t[i]===C[o]&&(t[s]=C[u]);}return B},Kn=n=>{if(n.inst.length>=1e3)return null;let B=new Ke(n.inst.length),e=new Ke(n.inst.length),t=new Array(n.inst.length),i=new Array(n.inst.length).fill(false),s=C=>{let r=true,o=n.inst[C];if(e.contains(C))return true;switch(e.insert(C),o.op){case D.ALT:case D.ALT_MATCH:{r=s(o.out)&&s(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[C]=true,o.op=D.ALT_MATCH);let E=Jn(t[o.out]||[],t[o.arg]||[],o.out,o.arg);if(!E)return false;t[C]=E.merged,o.next=new Uint32Array(E.next);break}case D.CAPTURE:case D.EMPTY_WIDTH:case D.NOP:r=s(o.out),i[C]=i[o.out],t[C]=t[o.out]?t[o.out].slice():[],o.next=new Uint32Array(Math.floor(t[C].length/2)+1).fill(o.out);break;case D.MATCH:case D.FAIL:i[C]=o.op===D.MATCH;break;case D.RUNE:{if(i[C]=false,o.next&&o.next.length>0)break;if(B.insert(o.out),!o.runes||o.runes.length===0){t[C]=[],o.next=new Uint32Array([o.out]);break}let u=[];if(o.runes.length===1&&(o.arg&f.FOLD_CASE)!==0){let c=o.runes[0];u.push(c,c);for(let E=m.simpleFold(c);E!==c;E=m.simpleFold(E))u.push(E,E);u.sort((E,g)=>E-g);}else for(let c=0;c<o.runes.length;c++)u.push(o.runes[c]);t[C]=u,o.next=new Uint32Array(Math.floor(u.length/2)+1).fill(o.out),o.op=D.RUNE;break}case D.RUNE1:{if(i[C]=false,o.next&&o.next.length>0)break;B.insert(o.out);let u=[];if((o.arg&f.FOLD_CASE)!==0){let c=o.runes[0];u.push(c,c);for(let E=m.simpleFold(c);E!==c;E=m.simpleFold(E))u.push(E,E);u.sort((E,g)=>E-g);}else u.push(o.runes[0],o.runes[0]);t[C]=u,o.next=new Uint32Array(Math.floor(u.length/2)+1).fill(o.out),o.op=D.RUNE;break}case D.RUNE_ANY:if(i[C]=false,o.next&&o.next.length>0)break;B.insert(o.out),t[C]=[0,m.MAX_RUNE],o.next=new Uint32Array([o.out]);break;case D.RUNE_ANY_NOT_NL:if(i[C]=false,o.next&&o.next.length>0)break;B.insert(o.out),t[C]=[0,9,11,m.MAX_RUNE],o.next=new Uint32Array(Math.floor(t[C].length/2)+1).fill(o.out);break}return r};for(B.clear(),B.insert(n.start);!B.empty();)if(e.clear(),!s(B.next()))return null;for(let C=0;C<n.inst.length;C++)t[C]&&(n.inst[C].runes=t[C]);return n},Vn=(n,B)=>{for(let e=0;e<B.inst.length;e++){let t=B.inst[e];switch(t.op){case D.ALT:case D.ALT_MATCH:case D.RUNE:break;case D.CAPTURE:case D.EMPTY_WIDTH:case D.NOP:case D.MATCH:case D.FAIL:n.inst[e].next=null;break;case D.RUNE1:case D.RUNE_ANY:case D.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}}},Ve=class mt{static compile(B){if(B.start===0||B.numLb>0)return null;let e=B.inst[B.start];if(e.op!==D.EMPTY_WIDTH||(e.arg&F.EMPTY_BEGIN_TEXT)===0)return null;let t=false;for(let s=0;s<B.inst.length;s++)if(B.inst[s].op===D.ALT||B.inst[s].op===D.ALT_MATCH){t=true;break}for(let s=0;s<B.inst.length;s++){let C=B.inst[s],r=B.inst[C.out].op;switch(C.op){case D.ALT:case D.ALT_MATCH:if(r===D.MATCH||B.inst[C.arg].op===D.MATCH)return null;break;case D.EMPTY_WIDTH:if(r===D.MATCH){if((C.arg&F.EMPTY_END_TEXT)===F.EMPTY_END_TEXT)continue;return null}break;default:if(r===D.MATCH&&t)return null;break}}let i=vn(B);return i=Kn(i),i!==null&&Vn(i,B),i}static next(B,e){let t=B.matchRunePos(e);return t>=0?B.next[t]:B.op===D.ALT_MATCH?B.out:0}static execute(B,e,t,i,s){let C=B.onepass;if(!C)return null;let r=new Int32Array(s).fill(-1),o=false,u=e.step(t),c=u>>3,E=u&7,g=x.EOF(),d=-1,A=0;u!==x.EOF()&&(g=e.step(t+E),g!==x.EOF()&&(d=g>>3,A=g&7));let S=t===0?F.emptyOpContext(-1,c):e.context(t),G=C.start,w;for(;;){switch(w=C.inst[G],G=w.out,w.op){case D.MATCH:return i===f.ANCHOR_BOTH&&t!==e.endPos()?null:(o=true,r.length>0&&(r[0]=0,r[1]=t),s===0?[]:F.toArray(r));case D.RUNE:if(!w.matchRune(c))return null;break;case D.RUNE1:if(c!==w.runes[0])return null;break;case D.RUNE_ANY:break;case D.RUNE_ANY_NOT_NL:if(c===10)return null;break;case D.ALT:case D.ALT_MATCH:G=mt.next(w,c);continue;case D.FAIL:return null;case D.NOP:continue;case D.EMPTY_WIDTH:if((w.arg&~S)!==0)return null;continue;case D.CAPTURE:w.arg<r.length&&(r[w.arg]=t);continue;default:throw new aB("bad inst")}if(E===0)break;S=F.emptyOpContext(c,d),t+=E,c=d,E=A,c!==-1&&(g=e.step(t+E),g!==x.EOF()?(d=g>>3,A=g&7):(d=-1,A=0));}return o?s===0?[]:F.toArray(r):null}},h=class I{static Op=Et(["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>=I.Op.LEFT_PAREN}static emptySubs(){return []}static quoteIfHyphen(B){return B===p.CODES.get("-")?"\\":""}static fromRegexp(B){let e=new I(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=I.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=I.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 I.Op.NO_MATCH:B+="[^\\x00-\\x{10FFFF}]";break;case I.Op.EMPTY_MATCH:B+="(?:)";break;case I.Op.STAR:case I.Op.PLUS:case I.Op.QUEST:case I.Op.REPEAT:{let e=this.subs[0];switch(e.op>I.Op.CAPTURE||e.op===I.Op.LITERAL&&e.runes.length>1?B+=`(?:${e.appendTo()})`:B+=e.appendTo(),this.op){case I.Op.STAR:B+="*";break;case I.Op.PLUS:B+="+";break;case I.Op.QUEST:B+="?";break;case I.Op.REPEAT:B+=`{${this.min}`,this.min!==this.max&&(B+=",",this.max>=0&&(B+=this.max)),B+="}";break}(this.flags&f.NON_GREEDY)!==0&&(B+="?");break}case I.Op.CONCAT:for(let e of this.subs)e.op===I.Op.ALTERNATE?B+=`(?:${e.appendTo()})`:B+=e.appendTo();break;case I.Op.ALTERNATE:{let e="";for(let t of this.subs)B+=e,e="|",B+=t.appendTo();break}case I.Op.LITERAL:(this.flags&f.FOLD_CASE)!==0&&(B+="(?i:");for(let e of this.runes)B+=F.escapeRune(e);(this.flags&f.FOLD_CASE)!==0&&(B+=")");break;case I.Op.ANY_CHAR_NOT_NL:B+="(?-s:.)";break;case I.Op.ANY_CHAR:B+="(?s:.)";break;case I.Op.PLB:B+=`(?<=${this.subs[0].appendTo()})`;break;case I.Op.NLB:B+=`(?<!${this.subs[0].appendTo()})`;break;case I.Op.CAPTURE:this.name===null||this.name.length===0?B+="(":B+=`(?P<${this.name}>`,this.subs[0].op!==I.Op.EMPTY_MATCH&&(B+=this.subs[0].appendTo()),B+=")";break;case I.Op.BEGIN_TEXT:B+="\\A";break;case I.Op.END_TEXT:(this.flags&f.WAS_DOLLAR)!==0?B+="(?-m:$)":B+="\\z";break;case I.Op.BEGIN_LINE:B+="^";break;case I.Op.END_LINE:B+="$";break;case I.Op.WORD_BOUNDARY:B+="\\b";break;case I.Op.NO_WORD_BOUNDARY:B+="\\B";break;case I.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+=I.quoteIfHyphen(t),B+=F.escapeRune(t),t!==i&&(B+="-",B+=I.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+=I.quoteIfHyphen(t),B+=F.escapeRune(t),t!==i&&(B+="-",B+=I.quoteIfHyphen(i),B+=F.escapeRune(i));}B+="]";break;default:B+=this.op;break}return B}maxCap(){let B=0;if(this.op===I.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 I)||this.op!==B.op)return false;switch(this.op){case I.Op.END_TEXT:if((this.flags&f.WAS_DOLLAR)!==(B.flags&f.WAS_DOLLAR))return false;break;case I.Op.LITERAL:case I.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 I.Op.ALTERNATE:case I.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 I.Op.STAR:case I.Op.PLUS:case I.Op.QUEST:if((this.flags&f.NON_GREEDY)!==(B.flags&f.NON_GREEDY)||!this.subs[0].equals(B.subs[0]))return false;break;case I.Op.REPEAT:if((this.flags&f.NON_GREEDY)!==(B.flags&f.NON_GREEDY)||this.min!==B.min||this.max!==B.max||!this.subs[0].equals(B.subs[0]))return false;break;case I.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 I.Op.PLB:case I.Op.NLB:if(this.lb!==B.lb||!this.subs[0].equals(B.subs[0]))return false;break}return true}},je=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 s=e[i];s in this.next[t]||(this.next.push(Object.create(null)),this.fail.push(0),this.match.push(false),this.next[t][s]=this.next.length-1),t=this.next[t][s];}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],s=this.fail[e];for(;s!==0&&!(t in this.next[s]);)s=this.fail[s];t in this.next[s]?this.fail[i]=this.next[s][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 s=n.charCodeAt(i);for(;t!==0&&!(s in this.next[t]);)t=this.fail[t];if(s in this.next[t]&&(t=this.next[t][s]),this.match[t])return true}return false}searchUTF8(n,B,e){let t=0;for(let i=B;i<e;i++){let s=n[i];for(;t!==0&&!(s in this.next[t]);)t=this.fail[t];if(s in this.next[t]&&(t=this.next[t][s]),this.match[t])return true}return false}},R=class hB{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 hB.Type.NONE:return true;case hB.Type.EXACT:return B.hasString(this,e);case hB.Type.AND:for(let t=0;t<this.subs.length;t++)if(!this.subs[t].eval(B,e))return false;return true;case hB.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}}},jn=class q{static build(B){let e=q.fromRegexp(B);return q.simplify(e)}static fromRegexp(B){if(!B)return new R(R.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 R(R.Type.NONE);case h.Op.LITERAL:{if(B.runes.length===0||(B.flags&f.FOLD_CASE)!==0)return new R(R.Type.NONE);let e=new R(R.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 q.fromRegexp(B.subs[0]);case h.Op.REPEAT:return B.min>=1?q.fromRegexp(B.subs[0]):new R(R.Type.NONE);case h.Op.CONCAT:{let e=new R(R.Type.AND);for(let t of B.subs)e.subs.push(q.fromRegexp(t));return e}case h.Op.ALTERNATE:{let e=new R(R.Type.OR);for(let t of B.subs)e.subs.push(q.fromRegexp(t));return e}default:return new R(R.Type.NONE)}}static simplify(B){if(B.type===R.Type.EXACT||B.type===R.Type.NONE)return B;if(B.type===R.Type.AND){let e=[];for(let t of B.subs){let i=q.simplify(t);if(i.type!==R.Type.NONE)if(i.type===R.Type.AND)for(let s=0;s<i.subs.length;s++)e.push(i.subs[s]);else e.push(i);}return e.length===0?new R(R.Type.NONE):e.length===1?e[0]:(B.subs=e,B)}if(B.type===R.Type.OR){let e=[];for(let C of B.subs){let r=q.simplify(C);if(r.type===R.Type.NONE)return new R(R.Type.NONE);if(r.type===R.Type.OR)for(let o=0;o<r.subs.length;o++)e.push(r.subs[o]);else e.push(r);}if(e.length===0)return new R(R.Type.NONE);if(e.length===1)return e[0];let t=new Set,i=[];for(let C of e)C.type===R.Type.EXACT?t.has(C.str)||(t.add(C.str),i.push(C)):i.push(C);B.subs=i;let s=true;for(let C of i)if(C.type!==R.Type.EXACT){s=false;break}return s&&i.length>1&&(B.ac16=new je(i.map(C=>{let r=[];for(let o=0;o<C.str.length;o++)r.push(C.str.charCodeAt(o));return r})),B.ac8=new je(i.map(C=>C.bytes))),B}return B}},v=class{constructor(n=0,B=0){this.head=n,this.tail=B;}},Yn=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 D(n));}skipNop(n){let B=this.inst[n];for(;B.op===D.NOP||B.op===D.CAPTURE;)B=this.inst[n],n=B.out;return B}prefix(){let n="",B=this.skipNop(this.start);if(!D.isRuneOp(B.op)||B.runes.length!==1)return [B.op===D.MATCH,n];for(;D.isRuneOp(B.op)&&B.runes.length===1&&(B.arg&f.FOLD_CASE)===0;)n+=String.fromCodePoint(B.runes[0]),B=this.skipNop(B.out);return [B.op===D.MATCH,n]}startCond(){let n=0,B=this.start;B:for(;;){let e=this.inst[B];switch(e.op){case D.EMPTY_WIDTH:n|=e.arg;break;case D.FAIL:return -1;case D.CAPTURE:case D.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 v(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}},HB=class{constructor(n=0,B=new v,e=false){this.i=n,this.out=B,this.nullable=e;}},dt=class rB{static ANY_RUNE_NOT_NL(){return [0,p.CODES.get(`
1
+ import {z as z$1}from'zod';var Cn="X-WarmHub-Client-Flags",on="compatibility-override";var an=/^[a-z0-9-]+$/;function ln(n){return an.test(n)}function un(n){return [...new Set(n)].sort().join(",")}var cn="X-WarmHub-Client",hn="@warmhub/sdk-ts",En="warmhub-cli",pn="warmhub-sdk-py";function Dn(n,B){return `${n}/${B}`}var fn=["add","revise","retract","reaffirm","rename"];var gn=["shape","thing","assertion","collection"];function tB(n){let B=n.indexOf("/");return B===-1?null:{shapePrefix:n.slice(0,B),bareName:n.slice(B+1)}}function $B(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 dn="X-WarmHub-Install-Repo",mn="X-WarmHub-Signature",On="X-WarmHub-Timestamp",Fn=/^[A-Za-z0-9\-._~]$/;function be(n){let B="",e=new TextEncoder().encode(n);for(let t of e){let i=String.fromCharCode(t);Fn.test(i)?B+=i:B+=`%${t.toString(16).toUpperCase().padStart(2,"0")}`;}return B}function In(n){return typeof n=="boolean"?n?"true":"false":typeof n=="number"?JSON.stringify(n):n}function An(n){return n==="POST"||n==="PUT"||n==="PATCH"}function Ge(n){let B=[];for(let[e,t]of Object.entries(n))t!=null&&B.push([e,In(t)]);return B.sort(([e],[t])=>e<t?-1:e>t?1:0),B.map(([e,t])=>`${be(e)}=${be(t)}`).join("&")}function ye(n){let B="";for(let e of n)B+=e.toString(16).padStart(2,"0");return B}async function He(n){let B=await crypto.subtle.digest("SHA-256",new TextEncoder().encode(n));return ye(new Uint8Array(B))}var _e="e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";function Pe(n){return [n.method,n.path,n.canonicalQuery,n.installRepo,n.bodyHash,String(n.timestamp)].join(`
2
+ `)}async function Sn(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 ye(new Uint8Array(i))}var Nn=/^sha256=([0-9a-f]{64})$/,Tn=300;async function Rn(n){let B=Nn.exec(n.signature);if(!B)return {ok:false,reason:"invalid-format"};let e=B[1],t=n.toleranceSec??Tn;if(Math.abs(n.nowUnixSeconds-n.timestamp)>t)return {ok:false,reason:"expired"};let s=n.body.length===0?_e:await He(n.body),r=Pe({method:n.method,path:n.path,canonicalQuery:Ge(n.query),installRepo:n.installRepo,bodyHash:s,timestamp:n.timestamp}),C=await Sn(n.secret,r);return Ln(e,C)?{ok:true}:{ok:false,reason:"invalid-signature"}}function Ln(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 xe=["repo:read","repo:checkpoint-read","repo:checkpoint-generate","repo:write","repo:configure","repo:admin","repo:action-callback"];function wn(n){return xe.includes(n)}var Je=/^(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 bn(n){return Je.test(n)?n:null}function Me(n){let B=Je.exec(n);return {major:Number(B[1]),minor:Number(B[2]),patch:Number(B[3]),prerelease:B[4]?B[4].split("."):[]}}var ke=/^(0|[1-9]\d*)$/;function Gn(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],s=B[t];if(i===void 0||s===void 0)break;if(i===s)continue;let r=ke.test(i),C=ke.test(s);return r&&C?Number(i)<Number(s)?-1:1:r?-1:C?1:i<s?-1:1}return n.length===B.length?0:n.length<B.length?-1:1}function yn(n,B){let e=Me(n),t=Me(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:Gn(e.prerelease,t.prerelease)}var f=class nB{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=nB.CLASS_NL|nB.DOT_NL;static PERL=nB.CLASS_NL|nB.ONE_LINE|nB.PERL_X|nB.UNICODE_GROUPS;static POSIX=0;static UNANCHORED=0;static ANCHOR_START=1;static ANCHOR_BOTH=2},Y={CASE_INSENSITIVE:1,DOTALL:2,MULTILINE:4,DISABLE_UNICODE_GROUPS:8,LONGEST_MATCH:16,LOOKBEHINDS:512},pB=128,te=new Int32Array(pB),ne=new Int32Array(pB),wB=65535;for(let n=0;n<pB;n++)n>=97&&n<=122?te[n]=n-32:te[n]=n,n>=65&&n<=90?ne[n]=n+32:ne[n]=n;var p=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<pB)return te[n];let B=String.fromCodePoint(n).toUpperCase(),e=B.codePointAt(0)>wB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toLowerCase(),i=t.codePointAt(0)>wB?2:1;return t.length>i||t.codePointAt(0)!==n?n:B.codePointAt(0)}static toLowerCase(n){if(n<pB)return ne[n];let B=String.fromCodePoint(n).toLowerCase(),e=B.codePointAt(0)>wB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toUpperCase(),i=t.codePointAt(0)>wB?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}},ht=new Uint8Array(256);for(let n=0,B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-";n<64;n++)ht[B.charCodeAt(n)]=n;var Et=n=>{let B=[],e=0,t=0;for(let i=0;i<n.length;i++){let s=ht[n.charCodeAt(i)];e|=(s&31)<<t,(s&32)===0?(B.push(e),e=0,t=0):t+=5;}return B},l=(n,B)=>{let e=Et(n),t=B?e.length/2:e.length/3,i=new Uint32Array(t*3),s=0,r=0;for(let C=0;C<t;C++)s+=e[r++],i[C*3]=s,s+=e[r++],i[C*3+1]=s,i[C*3+2]=B?1:e[r++];return i},Hn=n=>{let B=Et(n),e=new Map,t=0;for(let i=0;i<B.length;i+=2){t+=B[i];let s=B[i+1],r=s>>>1^-(s&1);e.set(t,t+r);}return e},bB=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}},k=class{static _CASE_ORBIT=null;static get CASE_ORBIT(){return this._CASE_ORBIT||(this._CASE_ORBIT=Hn("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 bB({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 bB({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 bB({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 bB({Common:()=>new a(l("8cgBgB",false)),Greek:()=>new a(l("1FwUwU",false)),Inherited:()=>new a(l("5cgBgBlgHAB",false))})},d=class v{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 s=t+Math.floor((i-t)/2),r=B.getLo(s),C=B.getHi(s);if(r<=e&&e<=C){let o=B.getStride(s);return (e-r)%o===0}e<r?i=s:t=s+1;}return false}static is(B,e){if(e<=v.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 s=B.getStride(t);return (e-i)%s===0}return false}return B.length>0&&e>=B.getLo(0)&&v.is32(B,e)}static isUpper(B){if(B<=v.MAX_LATIN1){let e=String.fromCodePoint(B);return e.toUpperCase()===e&&e.toLowerCase()!==e}return v.is(k.Upper,B)}static isPrint(B){return B<=v.MAX_LATIN1?B>=32&&B<v.MAX_ASCII||B>=161&&B!==173:v.is(k.Print,B)}static simpleFold(B){if(k.CASE_ORBIT.has(B))return k.CASE_ORBIT.get(B);let e=p.toLowerCase(B);return e!==B?e:p.toUpperCase(B)}static equalsIgnoreCase(B,e){if(B===e)return true;if(B<0||e<0)return false;if(B<=v.MAX_ASCII&&e<=v.MAX_ASCII)return 65<=B&&B<=90&&(B|=32),65<=e&&e<=90&&(e|=32),B===e;for(let t=v.simpleFold(B);t!==B;t=v.simpleFold(t))if(t===e)return true;return false}},re=256,pt=new Uint8Array(re);for(let n=0;n<re;n++)pt[n]=97<=n&&n<=122||65<=n&&n<=90||48<=n&&n<=57||n===95?1:0;var ZB=null,Be=null,F=class M{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 p.CODES.get("0")<=B&&B<=p.CODES.get("9")||p.CODES.get("a")<=B&&B<=p.CODES.get("z")||p.CODES.get("A")<=B&&B<=p.CODES.get("Z")}static unhex(B){return p.CODES.get("0")<=B&&B<=p.CODES.get("9")?B-p.CODES.get("0"):p.CODES.get("a")<=B&&B<=p.CODES.get("f")?B-p.CODES.get("a")+10:p.CODES.get("A")<=B&&B<=p.CODES.get("F")?B-p.CODES.get("A")+10:-1}static escapeRune(B){let e="";if(d.isPrint(B))M.METACHARACTERS.indexOf(String.fromCodePoint(B))>=0&&(e+="\\"),e+=String.fromCodePoint(B);else switch(B){case p.CODES.get('"'):e+='\\"';break;case p.CODES.get("\\"):e+="\\\\";break;case p.CODES.get(" "):e+="\\t";break;case p.CODES.get(`
4
+ `):e+="\\n";break;case p.CODES.get("\r"):e+="\\r";break;case p.CODES.get("\b"):e+="\\b";break;case p.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 s=e.codePointAt(i);t.push(s),i+=s>d.MAX_BMP?2:1;}return t}static runeToString(B){return String.fromCodePoint(B)}static isWordRune(B){return B<re?pt[B]===1:false}static emptyOpContext(B,e){let t=0;return B<0&&(t|=M.EMPTY_BEGIN_TEXT|M.EMPTY_BEGIN_LINE),B===10&&(t|=M.EMPTY_BEGIN_LINE),e<0&&(t|=M.EMPTY_END_TEXT|M.EMPTY_END_LINE),e===10&&(t|=M.EMPTY_END_LINE),M.isWordRune(B)!==M.isWordRune(e)?t|=M.EMPTY_WORD_BOUNDARY:t|=M.EMPTY_NO_WORD_BOUNDARY,t}static quoteMeta(B){return B.split("").map(e=>M.METACHARACTERS.indexOf(e)>=0?`\\${e}`:e).join("")}static charCount(B){return B>d.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 ZB||(ZB=new TextEncoder),M.toArray(ZB.encode(B));{let e=[],t=0;for(let i=0;i<B.length;i++){let s=B.charCodeAt(i);s<128?e[t++]=s:s<2048?(e[t++]=s>>6|192,e[t++]=s&63|128):(s&64512)===d.MIN_HIGH_SURROGATE&&i+1<B.length&&(B.charCodeAt(i+1)&64512)===d.MIN_LOW_SURROGATE?(s=d.MIN_SUPPLEMENTARY_CODE_POINT+((s&1023)<<10)+(B.charCodeAt(++i)&1023),e[t++]=s>>18|240,e[t++]=s>>12&63|128,e[t++]=s>>6&63|128,e[t++]=s&63|128):(e[t++]=s>>12|224,e[t++]=s>>6&63|128,e[t++]=s&63|128);}return e}}static utf8ByteArrayToString(B){if(globalThis.TextDecoder){Be||(Be=new TextDecoder("utf-8"));let e=B instanceof Uint8Array?B:new Uint8Array(B);return Be.decode(e)}else {let e=[],t=0,i=0;for(;t<B.length;){let s=B[t++];if(s<128)e[i++]=String.fromCharCode(s);else if(s>191&&s<224){let r=B[t++];e[i++]=String.fromCharCode((s&31)<<6|r&63);}else if(s>239&&s<365){let r=B[t++],C=B[t++],o=B[t++],u=((s&7)<<18|(r&63)<<12|(C&63)<<6|o&63)-d.MIN_SUPPLEMENTARY_CODE_POINT;e[i++]=String.fromCharCode(d.MIN_HIGH_SURROGATE+(u>>10)),e[i++]=String.fromCharCode(d.MIN_LOW_SURROGATE+(u&1023));}else {let r=B[t++],C=B[t++];e[i++]=String.fromCharCode((s&15)<<12|(r&63)<<6|C&63);}}return e.join("")}}},Dt=(n=[],B=0)=>{let e=Object.create(null);for(let t=0;t<n.length;t++){let i=n[t],s=B+t;e[i]=s,e[s]=i;}return Object.freeze(e)},lB=class ie{static Encoding=Dt(["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()===ie.Encoding.UTF_8}isUTF16Encoding(){return this.getEncoding()===ie.Encoding.UTF_16}},Ue=class extends lB{constructor(n=null){super(),this.bytes=n;}getEncoding(){return lB.Encoding.UTF_8}asCharSequence(){return F.utf8ByteArrayToString(this.bytes)}asBytes(){return this.bytes}length(){return this.bytes.length}},_n=class extends lB{constructor(n=null){super(),this.charSequence=n;}getEncoding(){return lB.Encoding.UTF_16}asCharSequence(){return this.charSequence}asBytes(){return F.stringToUtf8ByteArray(this.charSequence.toString())}length(){return this.charSequence.length}},DB=class{static utf16(n){return new _n(n)}static utf8(n){return F.isByteArray(n)?new Ue(n):new Ue(F.stringToUtf8ByteArray(n))}},x=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}},Pn=class extends x{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 x.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],s=this.end-t,r=typeof n.indexOf=="function",C=e;for(;C<=s;){if(r){if(C=n.indexOf(i,C),C===-1||C>s)return -1}else {for(;C<=s&&n[C]!==i;)C++;if(C>s)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}},xn=class extends x{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 x.EOF();let B=this.charSequence.charCodeAt(n);if(B<d.MIN_HIGH_SURROGATE||B>d.MAX_HIGH_SURROGATE||n+1>=this.end)return B<<3|1;let e=this.charSequence.charCodeAt(n+1);return e>=d.MIN_LOW_SURROGATE&&e<=d.MAX_LOW_SURROGATE?(B-d.MIN_HIGH_SURROGATE)*1024+(e-d.MIN_LOW_SURROGATE)+d.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}},L=class{static fromUTF8(n,B=0,e=n.length){return new Pn(n,B,e)}static fromUTF16(n,B=0,e=n.length){return new xn(n,B,e)}},fB=class extends Error{constructor(n){super(n),this.name="RE2JSException";}},b=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}},ft=class extends fB{constructor(n){super(n),this.name="RE2JSCompileException";}},j=class extends fB{constructor(n){super(n),this.name="RE2JSGroupException";}},Mn=class extends fB{constructor(n){super(n),this.name="RE2JSFlagsException";}},aB=class extends fB{constructor(n){super(n),this.name="RE2JSInternalException";}},ve=class gt{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===p.CODES.get("\\")||i===p.CODES.get("$")?`\\${t}`:t}).join(""):B.indexOf("$")<0?B:B.split("").map(t=>t.codePointAt(0)===p.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 lB?this.resetMatcherInput(e):F.isByteArray(e)?this.resetMatcherInput(DB.utf8(e)):this.resetMatcherInput(DB.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 j(`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 j(`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 j(`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 j("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 j(`Group index out of bounds: ${B}`);if(!this.hasMatch)throw new j("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 j("inconsistency in matching group data");this.groups=t[1],this.hasGroups=true;}matches(){return this.genMatch(0,f.ANCHOR_BOTH)}lookingAt(){return this.genMatch(0,f.ANCHOR_START)}find(B=null){if(B!==null){if(B<0||B>this.matcherInputLength)throw new j(`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()?L.fromUTF16(this.matcherInput.asCharSequence(),0,this.matcherInputLength):L.fromUTF8(this.matcherInput.asBytes(),0,this.matcherInputLength)).step(B);e<0?B++:B+=e&7;}return this.genMatch(B,f.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(),s=this.end();return this.appendPos<i&&(t+=this.substring(this.appendPos,i)),this.appendPos=s,t+=e?this.appendReplacementInternalJava(B):this.appendReplacementInternalJs(B),t}appendReplacementInternalJava(B){let e="",t=0,i=B.length;for(let s=0;s<i-1;s++){if(B.codePointAt(s)===p.CODES.get("\\")){t<s&&(e+=B.substring(t,s)),s++,t=s;continue}if(B.codePointAt(s)===p.CODES.get("$")){let r=B.codePointAt(s+1);if(p.CODES.get("0")<=r&&r<=p.CODES.get("9")){let C=r-p.CODES.get("0");for(t<s&&(e+=B.substring(t,s)),s+=2;s<i&&(r=B.codePointAt(s),!(r<p.CODES.get("0")||r>p.CODES.get("9")||C*10+r-p.CODES.get("0")>this.patternGroupCount));s++)C=C*10+r-p.CODES.get("0");if(C>this.patternGroupCount)throw new j(`n > number of groups: ${C}`);let o=this.group(C);o!==null&&(e+=o),t=s,s--;continue}else if(r===p.CODES.get("{")){t<s&&(e+=B.substring(t,s)),s++;let C=s+1;for(;C<B.length&&B.codePointAt(C)!==p.CODES.get("}")&&B.codePointAt(C)!==p.CODES.get(" ");)C++;if(C===B.length||B.codePointAt(C)!==p.CODES.get("}"))throw new j("named capture group is missing trailing '}'");let o=B.substring(s+1,C),u=this.group(o);u!==null&&(e+=u),t=C+1,s=C;continue}}}return t<i&&(e+=B.substring(t,i)),e}appendReplacementInternalJs(B){let e="",t=0,i=B.length;for(let s=0;s<i-1;s++)if(B.codePointAt(s)===p.CODES.get("$")){let r=B.codePointAt(s+1);if(p.CODES.get("$")===r){t<s&&(e+=B.substring(t,s)),e+="$",s++,t=s+1;continue}else if(p.CODES.get("&")===r){t<s&&(e+=B.substring(t,s));let C=this.group(0);C!==null?e+=C:e+="$&",s++,t=s+1;continue}else if(p.CODES.get("`")===r){t<s&&(e+=B.substring(t,s)),e+=this.substring(0,this.start(0)),s++,t=s+1;continue}else if(p.CODES.get("'")===r){t<s&&(e+=B.substring(t,s)),e+=this.substring(this.end(0),this.matcherInputLength),s++,t=s+1;continue}else if(p.CODES.get("1")<=r&&r<=p.CODES.get("9")){let C=r-p.CODES.get("0");for(t<s&&(e+=B.substring(t,s)),s+=2;s<i&&(r=B.codePointAt(s),!(r<p.CODES.get("0")||r>p.CODES.get("9")||C*10+r-p.CODES.get("0")>this.patternGroupCount));s++)C=C*10+r-p.CODES.get("0");if(C>this.patternGroupCount){e+=`$${C}`,t=s,s--;continue}let o=this.group(C);o!==null&&(e+=o),t=s,s--;continue}else if(r===p.CODES.get("<")){t<s&&(e+=B.substring(t,s)),s++;let C=s+1;for(;C<B.length&&B.codePointAt(C)!==p.CODES.get(">")&&B.codePointAt(C)!==p.CODES.get(" ");)C++;if(C===B.length||B.codePointAt(C)!==p.CODES.get(">")){e+=B.substring(s-1,C+1),t=C+1,s=C;continue}let o=B.substring(s+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,s=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 s=typeof B=="function",r=Object.keys(this.namedGroups).length>0,C=null;if(s){if(this.groupCount()>=gt.MAX_REPLACER_ARGS)throw new j("Too many capture groups to safely invoke replacer function");C=this.matcherInput.isUTF8Encoding()?this.matcherInput.asBytes():this.matcherInput.asCharSequence();}for(;this.find()&&(i+=s?this.appendReplacementFunc(B,r,C):this.appendReplacement(B,t),!!e););return i+=this.appendTail(),i}appendReplacementFunc(B,e,t){let i="",s=this.start(),r=this.end();this.appendPos<s&&(i+=this.substring(this.appendPos,s)),this.appendPos=r;let C=this.buildReplacerArgs(s,e,t);return i+=String(B(...C)),i}buildReplacerArgs(B,e,t){let i=[this.group(0)],s=this.groupCount();for(let r=1;r<=s;r++){let C=this.start(r);C<0?i.push(void 0):i.push(this.substring(C,this.end(r)));}if(i.push(B),i.push(t),e){let r=this.getNamedGroups();for(let C in r)r[C]===null&&(r[C]=void 0);i.push(r);}return i}},D=class H{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 H.RUNE<=B&&B<=H.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 r=this.runes[0];return (this.arg&f.FOLD_CASE)!==0?d.equalsIgnoreCase(r,B):B===r}let e=this.runes.length;if(e===0)return false;if(e===2||e===4||e===6||e===8){for(let r=0;r<e;r+=2){if(B<this.runes[r])return false;if(B<=this.runes[r+1])return true}return false}let t=0,i=e>>1;for(;i>1;){let r=i>>1;t+=this.runes[t+r<<1]<=B?r:0,i-=r;}t+=this.runes[t<<1]<=B?1:0;let s=t-1;return s>=0&&B<=this.runes[s<<1|1]}matchRunePos(B){if(this.runes.length===1){let r=this.runes[0];return (this.arg&f.FOLD_CASE)!==0?d.equalsIgnoreCase(r,B)?0:-1:B===r?0:-1}let e=this.runes.length;if(e===0)return -1;if(e===2||e===4||e===6||e===8){for(let r=0;r<e;r+=2){if(B<this.runes[r])return -1;if(B<=this.runes[r+1])return Math.floor(r/2)}return -1}let t=0,i=e>>1;for(;i>1;){let r=i>>1;t+=this.runes[t+r<<1]<=B?r:0,i-=r;}t+=this.runes[t<<1]<=B?1:0;let s=t-1;return s>=0&&B<=this.runes[s<<1|1]?s:-1}toString(){switch(this.op){case H.ALT:return `alt -> ${this.out}, ${this.arg}`;case H.ALT_MATCH:return `altmatch -> ${this.out}, ${this.arg}`;case H.CAPTURE:return `cap ${this.arg} -> ${this.out}`;case H.EMPTY_WIDTH:return `empty ${this.arg} -> ${this.out}`;case H.MATCH:return `match${this.arg!==0?` ${this.arg}`:""}`;case H.FAIL:return "fail";case H.NOP:return `nop -> ${this.out}`;case H.LB_WRITE:return `lbwrite ${this.arg} -> ${this.out}`;case H.LB_CHECK:return `lbcheck ${this.arg} -> ${this.out}`;case H.RUNE:return this.runes===null?"rune <null>":["rune ",H.escapeRunes(this.runes),(this.arg&f.FOLD_CASE)!==0?"/i":""," -> ",this.out].join("");case H.RUNE1:return `rune1 ${H.escapeRunes(this.runes)} -> ${this.out}`;case H.RUNE_ANY:return `any -> ${this.out}`;case H.RUNE_ANY_NOT_NL:return `anynotnl -> ${this.out}`;default:throw new Error("unhandled case in Inst.toString")}}},kn=class{constructor(){this.inst=null,this.cap=null;}},Ke=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}},_B=class PB{static THREADS_CHUNK_SIZE=128;static fromRE2(B){let e=new PB;return e.prog=B.prog,e.re2=B,e.q0=new Ke(e.prog.numInst()),e.q1=new Ke(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 PB.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<PB.THREADS_CHUNK_SIZE;i++){let s=new kn;s.cap=new Int32Array(t),this.pool[this.poolSize++]=s;}}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===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return false;this.matched=false,this.matchcap.fill(-1);let s=this.prog.numLb>0?0:e,r=e,C=this.q0,o=this.q1,u=B.step(s),c=u>>3,E=u&7,g=-1,m=0;u!==x.EOF()&&(u=B.step(s+E),g=u>>3,m=u&7);let A;for(s===0?A=F.emptyOpContext(-1,c):A=B.context(s);;){if(C.isEmpty()){if((i&F.EMPTY_BEGIN_TEXT)!==0&&s!==0||(t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&s!==0||this.matched)break;if(this.prog.numLb===0&&this.re2.prefix.length!==0&&g!==this.re2.prefixRune&&B.canCheckPrefix()){let w=B.index(this.re2,s);if(w<0)break;s+=w,u=B.step(s),c=u>>3,E=u&7,u=B.step(s+E),g=u>>3,m=u&7;}}if(s===0&&this.prog.numLb>0)for(let w=0;w<this.prog.lbStarts.length;w++)this.add(C,this.prog.lbStarts[w],s,this.matchcap,A,null);!this.matched&&(s===0||t===f.UNANCHORED)&&s>=r&&(this.ncap>0&&(this.matchcap[0]=s),this.add(C,this.prog.start,s,this.matchcap,A,null));let S=s+E;if(A=B.context(S),this.step(C,o,s,S,c,A,t,s===B.endPos()),E===0||this.ncap===0&&this.matched)break;s+=E,c=g,E=m,c!==-1&&(u=B.step(s+E),g=u>>3,m=u&7);let G=C;C=o,o=G;}return this.freeQueue(o),this.matched}matchSet(B,e,t){let i=this.re2.cond;if(i===F.EMPTY_ALL)return [];if((t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return [];let s=this.prog.numLb>0?0:e,r=e,C=this.q0,o=this.q1,u=B.step(s),c=u>>3,E=u&7,g=-1,m=0;u!==x.EOF()&&(u=B.step(s+E),g=u>>3,m=u&7);let A=s===0?F.emptyOpContext(-1,c):B.context(s),S=new Set;for(;!(C.isEmpty()&&((i&F.EMPTY_BEGIN_TEXT)!==0&&s!==0||(t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&s!==0));){if(s===0&&this.prog.numLb>0)for(let $=0;$<this.prog.lbStarts.length;$++)this.add(C,this.prog.lbStarts[$],s,this.matchcap,A,null);(s===0||t===f.UNANCHORED)&&s>=r&&this.add(C,this.prog.start,s,this.matchcap,A,null);let G=s+E;A=B.context(G);for(let $=0;$<C.size;$++){let eB=C.denseThreads[$];if(eB===null)continue;let cB=eB.inst,hB=false;switch(cB.op){case D.MATCH:if(t===f.ANCHOR_BOTH&&s!==B.endPos())break;S.add(cB.arg);break;case D.RUNE:hB=cB.matchRune(c);break;case D.RUNE1:hB=c===cB.runes[0];break;case D.RUNE_ANY:hB=true;break;case D.RUNE_ANY_NOT_NL:hB=c!==p.CODES.get(`
5
+ `);break;default:throw new aB("bad inst")}hB&&(eB=this.add(o,cB.out,G,eB.cap,A,eB)),eB!==null&&(this.freeThread(eB),C.denseThreads[$]=null);}if(C.clear(),E===0)break;s+=E,c=g,E=m,c!==-1&&(u=B.step(s+E),g=u>>3,m=u&7);let w=C;C=o,o=w;}return this.freeQueue(o),Array.from(S).sort((G,w)=>G-w)}step(B,e,t,i,s,r,C,o){let u=this.re2.longest;for(let c=0;c<B.size;c++){let E=B.denseThreads[c];if(E===null)continue;if(u&&this.matched&&this.ncap>0&&this.matchcap[0]<E.cap[0]){this.freeThread(E);continue}let g=E.inst,m=false;switch(g.op){case D.MATCH:if(C===f.ANCHOR_BOTH&&!o)break;this.ncap>0&&(!u||!this.matched||this.matchcap[1]<t)&&(E.cap[1]=t,this.matchcap.set(E.cap.subarray(0,this.ncap))),u||this.freeQueue(B,c+1),this.matched=true;break;case D.RUNE:m=g.matchRune(s);break;case D.RUNE1:m=s===g.runes[0];break;case D.RUNE_ANY:m=true;break;case D.RUNE_ANY_NOT_NL:m=s!==p.CODES.get(`
6
+ `);break;default:throw new aB("bad inst")}m&&(E=this.add(e,g.out,i,E.cap,r,E)),E!==null&&(this.freeThread(E),B.denseThreads[c]=null);}B.clear();}add(B,e,t,i,s,r){for(;;){if(e===0||B.contains(e))return r;let C=B.add(e),o=this.prog.inst[e];switch(o.op){case D.FAIL:return r;case D.ALT:case D.ALT_MATCH:r=this.add(B,o.out,t,i,s,r),e=o.arg;continue;case D.EMPTY_WIDTH:if((o.arg&~s)===0){e=o.out;continue}return r;case D.NOP:e=o.out;continue;case D.CAPTURE:if(o.arg<this.ncap){let u=i[o.arg];return i[o.arg]=t,this.add(B,o.out,t,i,s,null),i[o.arg]=u,r}else {e=o.out;continue}case D.LB_WRITE:this.lbTable[Math.abs(o.arg)]=t,e=o.out;continue;case D.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 r;case D.MATCH:case D.RUNE:case D.RUNE1:case D.RUNE_ANY:case D.RUNE_ANY_NOT_NL:if(r===null?r=this.alloc(o):r.inst=o,this.ncap>0&&r.cap!==i)for(let u=0;u<this.ncap;u++)r.cap[u]=i[u];return B.denseThreads[C]=r,r=null,r;default:throw new Error("unhandled")}}}},Ve=n=>{let B=-2128831035;for(let e=0;e<n.length;e++)B^=n[e],B=Math.imul(B,16777619);return B},Jn=(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},Un=class{constructor(n,B,e=[]){this.nfaStates=n,this.isMatch=B,this.matchIDs=e,this.nextLatin1=new Array(d.MAX_LATIN1+1).fill(null),this.nextLatin1Anchored=new Array(d.MAX_LATIN1+1).fill(null),this.transKeys=[],this.transVals=[],this.lastSeen=0;}},dt=class se{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/se.STATE_MEMORY_ESTIMATE)),this.cacheClears=0,this.failed=false,this.clock=0;}computeClosure(B){let e=new Set,t=[...B],i=false,s=[];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 D.MATCH:i=true,s.includes(o.arg)||s.push(o.arg);break;case D.ALT:case D.ALT_MATCH:t.push(o.out),t.push(o.arg);break;case D.NOP:case D.CAPTURE:t.push(o.out);break;case D.EMPTY_WIDTH:case D.LB_WRITE:case D.LB_CHECK:return null}}let r=Int32Array.from(e).sort();return s.sort((C,o)=>C-o),{pcs:r,isMatch:i,matchIDs:s}}getState(B){let e=this.computeClosure(B);if(!e)return null;let t=e.pcs,i=Ve(t),s=this.stateCache.get(i);if(s)for(let C=0;C<s.length;C++){let o=s[C];if(Jn(o.nfaStates,t))return o.lastSeen=++this.clock,o}else s=[],this.stateCache.set(i,s);if(this.failed)return null;if(this.stateCount>=this.stateLimit){if(this.cacheClears++,this.cacheClears>=se.MAX_CACHE_CLEARS)return this.failed=true,this.stateCache.clear(),this.stateCount=0,this.startState=null,null;this.evictCache(),s=this.stateCache.get(i),s||(s=[],this.stateCache.set(i,s));}let r=new Un(t,e.isMatch,e.matchIDs);return r.lastSeen=++this.clock,s.push(r),this.stateCount++,r}evictCache(){let B=[];for(let r of this.stateCache.values())for(let C=0;C<r.length;C++)B.push(r[C]);B.sort((r,C)=>r.lastSeen-C.lastSeen);let e=Math.max(1,Math.floor(this.stateLimit/2)),t=B.length-e,i=B.slice(t),s=new Set(i);this.stateCache.clear(),this.stateCount=0;for(let r=0;r<i.length;r++){let C=i[r];C.nextLatin1.fill(null),C.nextLatin1Anchored.fill(null),C.transKeys.length=0,C.transVals.length=0;let o=Ve(C.nfaStates),u=this.stateCache.get(o);u||(u=[],this.stateCache.set(o,u)),u.push(C),this.stateCount++;}this.startState&&!s.has(this.startState)&&(this.startState=null);}step(B,e,t){if(e<=d.MAX_LATIN1)if(t===f.UNANCHORED){let r=B.nextLatin1[e];if(r!==null)return r}else {let r=B.nextLatin1Anchored[e];if(r!==null)return r}else {let r=e+(t===f.UNANCHORED?0:d.MAX_RUNE+1),C=B.transKeys,o=C.length;for(let u=0;u<o;u++)if(C[u]===r)return B.transVals[u]}let i=[];for(let r=0;r<B.nfaStates.length;r++){let C=B.nfaStates[r],o=this.prog.getInst(C);D.isRuneOp(o.op)&&o.matchRune(e)&&i.push(o.out);}t===f.UNANCHORED&&i.push(this.prog.start);let s=this.getState(i);if(e<=d.MAX_LATIN1)t===f.UNANCHORED?B.nextLatin1[e]=s:B.nextLatin1Anchored[e]=s;else {let r=e+(t===f.UNANCHORED?0:d.MAX_RUNE+1);B.transKeys.push(r),B.transVals.push(s);}return s}match(B,e,t){if((t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return false;if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let i=B.endPos(),s=this.startState;if(s.isMatch)if(t===f.ANCHOR_BOTH){if(e===i)return true}else return true;let r=e;for(;r<i;){let C=B.step(r),o=C>>3,u=C&7;if(u===0)break;if(s=t===f.UNANCHORED&&o<=d.MAX_LATIN1&&s.nextLatin1[o]||this.step(s,o,t),s===null)return null;if(s.lastSeen=++this.clock,s.isMatch)if(t===f.ANCHOR_BOTH){if(r+u===i)return true}else return true;if(s.nfaStates.length===0&&t!==f.UNANCHORED)return false;r+=u;}return false}matchSet(B,e,t){if((t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return [];if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let i=B.endPos(),s=this.startState,r=new Set,C=(u,c)=>{u.isMatch&&(t===f.ANCHOR_BOTH?c===i&&u.matchIDs.forEach(E=>r.add(E)):u.matchIDs.forEach(E=>r.add(E)));};C(s,e);let o=e;for(;o<i;){let u=B.step(o),c=u>>3,E=u&7;if(E===0)break;if(s=t===f.UNANCHORED&&c<=d.MAX_LATIN1&&s.nextLatin1[c]||this.step(s,c,t),s===null)return null;if(s.lastSeen=++this.clock,o+=E,C(s,o),s.nfaStates.length===0&&t!==f.UNANCHORED)break}return Array.from(r).sort((u,c)=>u-c)}},vn=32,Kn=500,ee=256,Vn=256*1024,jn=class{constructor(){this.end=0,this.cap=new Int32Array(0),this.matchcap=new Int32Array(0),this.ncap=0,this.jobPc=new Int32Array(ee),this.jobArg=new Uint8Array(ee),this.jobPos=new Int32Array(ee),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)+vn-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!==D.FAIL&&(t||this.shouldVisit(B,e))){if(this.jobLen>=this.jobPc.length){let i=this.jobPc.length*2,s=new Int32Array(i);s.set(this.jobPc),this.jobPc=s;let r=new Uint8Array(i);r.set(this.jobArg),this.jobArg=r;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 s=n.longest;for(this.push(n,e,t,false);this.jobLen>0;){this.jobLen--;let r=this.jobPc[this.jobLen],C=this.jobArg[this.jobLen]===1,o=this.jobPos[this.jobLen],u=true;for(;!(!u&&!this.shouldVisit(r,o));){u=false;let c=n.prog.getInst(r);switch(c.op){case D.FAIL:throw new aB("unexpected InstFail");case D.ALT:if(C){C=false,r=c.arg;continue}else {this.push(n,r,o,true),r=c.out;continue}case D.ALT_MATCH:{let E=n.prog.getInst(c.out);if(D.isRuneOp(E.op)){this.push(n,c.arg,o,false),r=c.arg,o=this.end;continue}this.push(n,c.out,this.end,false),r=c.out;continue}case D.RUNE:{let E=B.step(o);if(E===x.EOF()||!c.matchRune(E>>3))break;o+=E&7,r=c.out;continue}case D.RUNE1:{let E=B.step(o);if(E===x.EOF()||E>>3!==c.runes[0])break;o+=E&7,r=c.out;continue}case D.RUNE_ANY_NOT_NL:{let E=B.step(o);if(E===x.EOF()||E>>3===10)break;o+=E&7,r=c.out;continue}case D.RUNE_ANY:{let E=B.step(o);if(E===x.EOF())break;o+=E&7,r=c.out;continue}case D.CAPTURE:if(C){this.cap[c.arg]=o;break}else {c.arg<this.ncap&&(this.push(n,r,this.cap[c.arg],true),this.cap[c.arg]=o),r=c.out;continue}case D.EMPTY_WIDTH:{let E=B.context(o);if((c.arg&~E)!==0)break;r=c.out;continue}case D.NOP:r=c.out;continue;case D.MATCH:{if(i===f.ANCHOR_BOTH&&o!==this.end)break;if(this.ncap===0)return true;this.ncap>1&&(this.cap[1]=o);let E=this.matchcap[1];if((E===-1||s&&o>0&&o>E)&&this.matchcap.set(this.cap),!s||o===this.end)return true;break}case D.LB_WRITE:case D.LB_CHECK:throw new aB("Backtracker cannot evaluate Lookbehind instructions");default:throw new aB("bad inst")}break}}return s&&this.matchcap.length>1&&this.matchcap[1]>=0}},GB=[],yB=class mt{static shouldBacktrack(B){return B.numInst()<=Kn}static maxBitStateLen(B){return mt.shouldBacktrack(B)?Math.floor(Vn/B.numInst()):0}static execute(B,e,t,i,s){let r=B.cond;if(r===F.EMPTY_ALL||(i===f.ANCHOR_START||i===f.ANCHOR_BOTH)&&t!==0||(r&F.EMPTY_BEGIN_TEXT)!==0&&t!==0)return null;let C=GB.length>0?GB.pop():new jn,o=e.endPos();C.reset(B.prog,o,s);let u=false;if((r&F.EMPTY_BEGIN_TEXT)!==0||i===f.ANCHOR_START||i===f.ANCHOR_BOTH)C.ncap>0&&(C.cap[0]=t),C.tryBacktrack(B,e,B.prog.start,t,i)&&(u=true);else {let E=-1;for(;t<=o&&E!==0;t+=E){if(B.prefix.length>0){let m=e.index(B,t);if(m<0)break;t+=m;}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);E=g===x.EOF()?0:g&7;}}if(!u)return GB.push(C),null;let c=s===0?[]:F.toArray(C.matchcap.subarray(0,s));return GB.push(C),c}},je=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++);}},Yn=(n,B,e,t)=>{let i=n.length,s=B.length,r=0,C=0,o=[],u=[],c=true,E=-1,g=m=>{let A=m?n:B,S=m?r:C,G=m?e:t;return E>0&&A[S]<=o[E]?false:(o.push(A[S],A[S+1]),m?r+=2:C+=2,E+=2,u.push(G),true)};for(;r<i||C<s;)if(C>=s?c=g(true):r>=i||B[C]<n[r]?c=g(false):c=g(true),!c)return null;return {merged:o,next:u}},Qn=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 D(e.op);t.out=e.out,t.arg=e.arg,t.runes=e.runes?e.runes.slice():[],t.next=null,this.inst[B]=t;}}},Wn=n=>{let B=new Qn(n);for(let e=0;e<B.inst.length;e++){let t=B.inst[e];if(t.op!==D.ALT&&t.op!==D.ALT_MATCH)continue;let i="out",s="arg",r=B.inst[t[s]];if(r.op!==D.ALT&&r.op!==D.ALT_MATCH&&(i="arg",s="out",r=B.inst[t[s]],r.op!==D.ALT&&r.op!==D.ALT_MATCH))continue;let C=B.inst[t[i]];if(C.op===D.ALT||C.op===D.ALT_MATCH)continue;let o="out",u="arg",c=false;r.out===e?c=true:r.arg===e&&(c=true,o="arg",u="out"),c&&(r[o]=t[i]),t[i]===r[o]&&(t[s]=r[u]);}return B},qn=n=>{if(n.inst.length>=1e3)return null;let B=new je(n.inst.length),e=new je(n.inst.length),t=new Array(n.inst.length),i=new Array(n.inst.length).fill(false),s=r=>{let C=true,o=n.inst[r];if(e.contains(r))return true;switch(e.insert(r),o.op){case D.ALT:case D.ALT_MATCH:{C=s(o.out)&&s(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 m=u;u=c,c=m;}u&&(i[r]=true,o.op=D.ALT_MATCH);let E=Yn(t[o.out]||[],t[o.arg]||[],o.out,o.arg);if(!E)return false;t[r]=E.merged,o.next=new Uint32Array(E.next);break}case D.CAPTURE:case D.EMPTY_WIDTH:case D.NOP:C=s(o.out),i[r]=i[o.out],t[r]=t[o.out]?t[o.out].slice():[],o.next=new Uint32Array(Math.floor(t[r].length/2)+1).fill(o.out);break;case D.MATCH:case D.FAIL:i[r]=o.op===D.MATCH;break;case D.RUNE:{if(i[r]=false,o.next&&o.next.length>0)break;if(B.insert(o.out),!o.runes||o.runes.length===0){t[r]=[],o.next=new Uint32Array([o.out]);break}let u=[];if(o.runes.length===1&&(o.arg&f.FOLD_CASE)!==0){let c=o.runes[0];u.push(c,c);for(let E=d.simpleFold(c);E!==c;E=d.simpleFold(E))u.push(E,E);u.sort((E,g)=>E-g);}else for(let c=0;c<o.runes.length;c++)u.push(o.runes[c]);t[r]=u,o.next=new Uint32Array(Math.floor(u.length/2)+1).fill(o.out),o.op=D.RUNE;break}case D.RUNE1:{if(i[r]=false,o.next&&o.next.length>0)break;B.insert(o.out);let u=[];if((o.arg&f.FOLD_CASE)!==0){let c=o.runes[0];u.push(c,c);for(let E=d.simpleFold(c);E!==c;E=d.simpleFold(E))u.push(E,E);u.sort((E,g)=>E-g);}else u.push(o.runes[0],o.runes[0]);t[r]=u,o.next=new Uint32Array(Math.floor(u.length/2)+1).fill(o.out),o.op=D.RUNE;break}case D.RUNE_ANY:if(i[r]=false,o.next&&o.next.length>0)break;B.insert(o.out),t[r]=[0,d.MAX_RUNE],o.next=new Uint32Array([o.out]);break;case D.RUNE_ANY_NOT_NL:if(i[r]=false,o.next&&o.next.length>0)break;B.insert(o.out),t[r]=[0,9,11,d.MAX_RUNE],o.next=new Uint32Array(Math.floor(t[r].length/2)+1).fill(o.out);break}return C};for(B.clear(),B.insert(n.start);!B.empty();)if(e.clear(),!s(B.next()))return null;for(let r=0;r<n.inst.length;r++)t[r]&&(n.inst[r].runes=t[r]);return n},zn=(n,B)=>{for(let e=0;e<B.inst.length;e++){let t=B.inst[e];switch(t.op){case D.ALT:case D.ALT_MATCH:case D.RUNE:break;case D.CAPTURE:case D.EMPTY_WIDTH:case D.NOP:case D.MATCH:case D.FAIL:n.inst[e].next=null;break;case D.RUNE1:case D.RUNE_ANY:case D.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}}},Ye=class Ot{static compile(B){if(B.start===0||B.numLb>0)return null;let e=B.inst[B.start];if(e.op!==D.EMPTY_WIDTH||(e.arg&F.EMPTY_BEGIN_TEXT)===0)return null;let t=false;for(let s=0;s<B.inst.length;s++)if(B.inst[s].op===D.ALT||B.inst[s].op===D.ALT_MATCH){t=true;break}for(let s=0;s<B.inst.length;s++){let r=B.inst[s],C=B.inst[r.out].op;switch(r.op){case D.ALT:case D.ALT_MATCH:if(C===D.MATCH||B.inst[r.arg].op===D.MATCH)return null;break;case D.EMPTY_WIDTH:if(C===D.MATCH){if((r.arg&F.EMPTY_END_TEXT)===F.EMPTY_END_TEXT)continue;return null}break;default:if(C===D.MATCH&&t)return null;break}}let i=Wn(B);return i=qn(i),i!==null&&zn(i,B),i}static next(B,e){let t=B.matchRunePos(e);return t>=0?B.next[t]:B.op===D.ALT_MATCH?B.out:0}static execute(B,e,t,i,s){let r=B.onepass;if(!r)return null;let C=new Int32Array(s).fill(-1),o=false,u=e.step(t),c=u>>3,E=u&7,g=x.EOF(),m=-1,A=0;u!==x.EOF()&&(g=e.step(t+E),g!==x.EOF()&&(m=g>>3,A=g&7));let S=t===0?F.emptyOpContext(-1,c):e.context(t),G=r.start,w;for(;;){switch(w=r.inst[G],G=w.out,w.op){case D.MATCH:return i===f.ANCHOR_BOTH&&t!==e.endPos()?null:(o=true,C.length>0&&(C[0]=0,C[1]=t),s===0?[]:F.toArray(C));case D.RUNE:if(!w.matchRune(c))return null;break;case D.RUNE1:if(c!==w.runes[0])return null;break;case D.RUNE_ANY:break;case D.RUNE_ANY_NOT_NL:if(c===10)return null;break;case D.ALT:case D.ALT_MATCH:G=Ot.next(w,c);continue;case D.FAIL:return null;case D.NOP:continue;case D.EMPTY_WIDTH:if((w.arg&~S)!==0)return null;continue;case D.CAPTURE:w.arg<C.length&&(C[w.arg]=t);continue;default:throw new aB("bad inst")}if(E===0)break;S=F.emptyOpContext(c,m),t+=E,c=m,E=A,c!==-1&&(g=e.step(t+E),g!==x.EOF()?(m=g>>3,A=g&7):(m=-1,A=0));}return o?s===0?[]:F.toArray(C):null}},h=class I{static Op=Dt(["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>=I.Op.LEFT_PAREN}static emptySubs(){return []}static quoteIfHyphen(B){return B===p.CODES.get("-")?"\\":""}static fromRegexp(B){let e=new I(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=I.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=I.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 I.Op.NO_MATCH:B+="[^\\x00-\\x{10FFFF}]";break;case I.Op.EMPTY_MATCH:B+="(?:)";break;case I.Op.STAR:case I.Op.PLUS:case I.Op.QUEST:case I.Op.REPEAT:{let e=this.subs[0];switch(e.op>I.Op.CAPTURE||e.op===I.Op.LITERAL&&e.runes.length>1?B+=`(?:${e.appendTo()})`:B+=e.appendTo(),this.op){case I.Op.STAR:B+="*";break;case I.Op.PLUS:B+="+";break;case I.Op.QUEST:B+="?";break;case I.Op.REPEAT:B+=`{${this.min}`,this.min!==this.max&&(B+=",",this.max>=0&&(B+=this.max)),B+="}";break}(this.flags&f.NON_GREEDY)!==0&&(B+="?");break}case I.Op.CONCAT:for(let e of this.subs)e.op===I.Op.ALTERNATE?B+=`(?:${e.appendTo()})`:B+=e.appendTo();break;case I.Op.ALTERNATE:{let e="";for(let t of this.subs)B+=e,e="|",B+=t.appendTo();break}case I.Op.LITERAL:(this.flags&f.FOLD_CASE)!==0&&(B+="(?i:");for(let e of this.runes)B+=F.escapeRune(e);(this.flags&f.FOLD_CASE)!==0&&(B+=")");break;case I.Op.ANY_CHAR_NOT_NL:B+="(?-s:.)";break;case I.Op.ANY_CHAR:B+="(?s:.)";break;case I.Op.PLB:B+=`(?<=${this.subs[0].appendTo()})`;break;case I.Op.NLB:B+=`(?<!${this.subs[0].appendTo()})`;break;case I.Op.CAPTURE:this.name===null||this.name.length===0?B+="(":B+=`(?P<${this.name}>`,this.subs[0].op!==I.Op.EMPTY_MATCH&&(B+=this.subs[0].appendTo()),B+=")";break;case I.Op.BEGIN_TEXT:B+="\\A";break;case I.Op.END_TEXT:(this.flags&f.WAS_DOLLAR)!==0?B+="(?-m:$)":B+="\\z";break;case I.Op.BEGIN_LINE:B+="^";break;case I.Op.END_LINE:B+="$";break;case I.Op.WORD_BOUNDARY:B+="\\b";break;case I.Op.NO_WORD_BOUNDARY:B+="\\B";break;case I.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]===d.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+=I.quoteIfHyphen(t),B+=F.escapeRune(t),t!==i&&(B+="-",B+=I.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+=I.quoteIfHyphen(t),B+=F.escapeRune(t),t!==i&&(B+="-",B+=I.quoteIfHyphen(i),B+=F.escapeRune(i));}B+="]";break;default:B+=this.op;break}return B}maxCap(){let B=0;if(this.op===I.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 I)||this.op!==B.op)return false;switch(this.op){case I.Op.END_TEXT:if((this.flags&f.WAS_DOLLAR)!==(B.flags&f.WAS_DOLLAR))return false;break;case I.Op.LITERAL:case I.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 I.Op.ALTERNATE:case I.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 I.Op.STAR:case I.Op.PLUS:case I.Op.QUEST:if((this.flags&f.NON_GREEDY)!==(B.flags&f.NON_GREEDY)||!this.subs[0].equals(B.subs[0]))return false;break;case I.Op.REPEAT:if((this.flags&f.NON_GREEDY)!==(B.flags&f.NON_GREEDY)||this.min!==B.min||this.max!==B.max||!this.subs[0].equals(B.subs[0]))return false;break;case I.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 I.Op.PLB:case I.Op.NLB:if(this.lb!==B.lb||!this.subs[0].equals(B.subs[0]))return false;break}return true}},Qe=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 s=e[i];s in this.next[t]||(this.next.push(Object.create(null)),this.fail.push(0),this.match.push(false),this.next[t][s]=this.next.length-1),t=this.next[t][s];}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],s=this.fail[e];for(;s!==0&&!(t in this.next[s]);)s=this.fail[s];t in this.next[s]?this.fail[i]=this.next[s][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 s=n.charCodeAt(i);for(;t!==0&&!(s in this.next[t]);)t=this.fail[t];if(s in this.next[t]&&(t=this.next[t][s]),this.match[t])return true}return false}searchUTF8(n,B,e){let t=0;for(let i=B;i<e;i++){let s=n[i];for(;t!==0&&!(s in this.next[t]);)t=this.fail[t];if(s in this.next[t]&&(t=this.next[t][s]),this.match[t])return true}return false}},R=class EB{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 EB.Type.NONE:return true;case EB.Type.EXACT:return B.hasString(this,e);case EB.Type.AND:for(let t=0;t<this.subs.length;t++)if(!this.subs[t].eval(B,e))return false;return true;case EB.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}}},Xn=class q{static build(B){let e=q.fromRegexp(B);return q.simplify(e)}static fromRegexp(B){if(!B)return new R(R.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 R(R.Type.NONE);case h.Op.LITERAL:{if(B.runes.length===0||(B.flags&f.FOLD_CASE)!==0)return new R(R.Type.NONE);let e=new R(R.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 q.fromRegexp(B.subs[0]);case h.Op.REPEAT:return B.min>=1?q.fromRegexp(B.subs[0]):new R(R.Type.NONE);case h.Op.CONCAT:{let e=new R(R.Type.AND);for(let t of B.subs)e.subs.push(q.fromRegexp(t));return e}case h.Op.ALTERNATE:{let e=new R(R.Type.OR);for(let t of B.subs)e.subs.push(q.fromRegexp(t));return e}default:return new R(R.Type.NONE)}}static simplify(B){if(B.type===R.Type.EXACT||B.type===R.Type.NONE)return B;if(B.type===R.Type.AND){let e=[];for(let t of B.subs){let i=q.simplify(t);if(i.type!==R.Type.NONE)if(i.type===R.Type.AND)for(let s=0;s<i.subs.length;s++)e.push(i.subs[s]);else e.push(i);}return e.length===0?new R(R.Type.NONE):e.length===1?e[0]:(B.subs=e,B)}if(B.type===R.Type.OR){let e=[];for(let r of B.subs){let C=q.simplify(r);if(C.type===R.Type.NONE)return new R(R.Type.NONE);if(C.type===R.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 R(R.Type.NONE);if(e.length===1)return e[0];let t=new Set,i=[];for(let r of e)r.type===R.Type.EXACT?t.has(r.str)||(t.add(r.str),i.push(r)):i.push(r);B.subs=i;let s=true;for(let r of i)if(r.type!==R.Type.EXACT){s=false;break}return s&&i.length>1&&(B.ac16=new Qe(i.map(r=>{let C=[];for(let o=0;o<r.str.length;o++)C.push(r.str.charCodeAt(o));return C})),B.ac8=new Qe(i.map(r=>r.bytes))),B}return B}},K=class{constructor(n=0,B=0){this.head=n,this.tail=B;}},$n=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 D(n));}skipNop(n){let B=this.inst[n];for(;B.op===D.NOP||B.op===D.CAPTURE;)B=this.inst[n],n=B.out;return B}prefix(){let n="",B=this.skipNop(this.start);if(!D.isRuneOp(B.op)||B.runes.length!==1)return [B.op===D.MATCH,n];for(;D.isRuneOp(B.op)&&B.runes.length===1&&(B.arg&f.FOLD_CASE)===0;)n+=String.fromCodePoint(B.runes[0]),B=this.skipNop(B.out);return [B.op===D.MATCH,n]}startCond(){let n=0,B=this.start;B:for(;;){let e=this.inst[B];switch(e.op){case D.EMPTY_WIDTH:n|=e.arg;break;case D.FAIL:return -1;case D.CAPTURE:case D.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 K(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}},HB=class{constructor(n=0,B=new K,e=false){this.i=n,this.out=B,this.nullable=e;}},Ft=class CB{static ANY_RUNE_NOT_NL(){return [0,p.CODES.get(`
8
8
  `)-1,p.CODES.get(`
9
- `)+1,m.MAX_RUNE]}static ANY_RUNE(){return [0,m.MAX_RUNE]}static compileRegexp(B){let e=new rB,t=e.compile(B);return e.prog.patch(t.out,e.newInst(D.MATCH).i),e.prog.start=t.i,e.prog}static compileSet(B){let e=new rB;if(B.length===0)return e.prog.start=e.newInst(D.FAIL).i,e.prog;let t=[];for(let s=0;s<B.length;s++){let C=e.compile(B[s]),r=e.newInst(D.MATCH);e.prog.getInst(r.i).arg=s,e.prog.patch(C.out,r.i),t.push(C.i);}let i=t[0];for(let s=1;s<t.length;s++){let C=e.newInst(D.ALT),r=e.prog.getInst(C.i);r.out=i,r.arg=t[s],i=C.i;}return e.prog.start=i,e.prog}constructor(){this.prog=new Yn,this.newInst(D.FAIL);}newInst(B){return this.prog.addInst(B),new HB(this.prog.numInst()-1,new v,true)}nop(){let B=this.newInst(D.NOP);return B.out=new v(B.i<<1,B.i<<1),B}fail(){return new HB}cap(B){let e=this.newInst(D.CAPTURE);return e.out=new v(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 HB(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(D.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(D.ALT),i=this.prog.getInst(t.i);return e?(i.arg=B.i,t.out=new v(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new v(t.i<<1|1,t.i<<1|1)),this.prog.patch(B.out,t.i),t}quest(B,e){let t=this.newInst(D.ALT),i=this.prog.getInst(t.i);return e?(i.arg=B.i,t.out=new v(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new v(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 HB(B.i,this.loop(B,e).out,B.nullable)}empty(B){let e=this.newInst(D.EMPTY_WIDTH);return this.prog.getInst(e.i).arg=B,e.out=new v(e.i<<1,e.i<<1),e}rune(B,e){let t=this.newInst(D.RUNE);t.nullable=false;let i=this.prog.getInst(t.i);return i.runes=B,e&=f.FOLD_CASE,(B.length!==1||m.simpleFold(B[0])===B[0])&&(e&=-2),i.arg=e,t.out=new v(t.i<<1,t.i<<1),(e&f.FOLD_CASE)===0&&B.length===1||B.length===2&&B[0]===B[1]?i.op=D.RUNE1:B.length===2&&B[0]===0&&B[1]===m.MAX_RUNE?i.op=D.RUNE_ANY:B.length===4&&B[0]===0&&B[1]===p.CODES.get(`
9
+ `)+1,d.MAX_RUNE]}static ANY_RUNE(){return [0,d.MAX_RUNE]}static compileRegexp(B){let e=new CB,t=e.compile(B);return e.prog.patch(t.out,e.newInst(D.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(D.FAIL).i,e.prog;let t=[];for(let s=0;s<B.length;s++){let r=e.compile(B[s]),C=e.newInst(D.MATCH);e.prog.getInst(C.i).arg=s,e.prog.patch(r.out,C.i),t.push(r.i);}let i=t[0];for(let s=1;s<t.length;s++){let r=e.newInst(D.ALT),C=e.prog.getInst(r.i);C.out=i,C.arg=t[s],i=r.i;}return e.prog.start=i,e.prog}constructor(){this.prog=new $n,this.newInst(D.FAIL);}newInst(B){return this.prog.addInst(B),new HB(this.prog.numInst()-1,new K,true)}nop(){let B=this.newInst(D.NOP);return B.out=new K(B.i<<1,B.i<<1),B}fail(){return new HB}cap(B){let e=this.newInst(D.CAPTURE);return e.out=new K(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 HB(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(D.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(D.ALT),i=this.prog.getInst(t.i);return e?(i.arg=B.i,t.out=new K(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new K(t.i<<1|1,t.i<<1|1)),this.prog.patch(B.out,t.i),t}quest(B,e){let t=this.newInst(D.ALT),i=this.prog.getInst(t.i);return e?(i.arg=B.i,t.out=new K(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new K(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 HB(B.i,this.loop(B,e).out,B.nullable)}empty(B){let e=this.newInst(D.EMPTY_WIDTH);return this.prog.getInst(e.i).arg=B,e.out=new K(e.i<<1,e.i<<1),e}rune(B,e){let t=this.newInst(D.RUNE);t.nullable=false;let i=this.prog.getInst(t.i);return i.runes=B,e&=f.FOLD_CASE,(B.length!==1||d.simpleFold(B[0])===B[0])&&(e&=-2),i.arg=e,t.out=new K(t.i<<1,t.i<<1),(e&f.FOLD_CASE)===0&&B.length===1||B.length===2&&B[0]===B[1]?i.op=D.RUNE1:B.length===2&&B[0]===0&&B[1]===d.MAX_RUNE?i.op=D.RUNE_ANY:B.length===4&&B[0]===0&&B[1]===p.CODES.get(`
10
10
  `)-1&&B[2]===p.CODES.get(`
11
- `)+1&&B[3]===m.MAX_RUNE&&(i.op=D.RUNE_ANY_NOT_NL),t}lookBehind(B,e){let t=this.newInst(D.LB_WRITE);this.prog.getInst(t.i).arg=e;let i=this.rune(rB.ANY_RUNE(),0),s=this.star(i,true),C=this.cat(s,B);this.prog.patch(C.out,t.i);let r=this.newInst(D.LB_CHECK);return this.prog.getInst(r.i).arg=e,this.prog.lbStarts.push(C.i),Math.abs(e)>this.prog.numLb&&(this.prog.numLb=Math.abs(e)),r.out=new v(r.i<<1,r.i<<1),r}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(rB.ANY_RUNE_NOT_NL(),0);case h.Op.ANY_CHAR:return this.rune(rB.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&f.NON_GREEDY)!==0);case h.Op.PLUS:return this.plus(this.compile(B.subs[0]),(B.flags&f.NON_GREEDY)!==0);case h.Op.QUEST:return this.quest(this.compile(B.subs[0]),(B.flags&f.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 pt("regexp: unhandled case in compile")}}},Ot=class J{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=J.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 s=B.subs[i],C=J.simplify(s);if(C!==s&&(t=true),B.op===h.Op.CONCAT){if(C.op===h.Op.NO_MATCH)return new h(h.Op.NO_MATCH);if(C.op===h.Op.EMPTY_MATCH){t=true;continue}if(C.op===h.Op.CONCAT){t=true;for(let r=0;r<C.subs.length;r++)e.push(C.subs[r]);continue}}else if(B.op===h.Op.ALTERNATE){if(C.op===h.Op.NO_MATCH){t=true;continue}if(C.op===h.Op.ALTERNATE){t=true;for(let r=0;r<C.subs.length;r++)e.push(C.subs[r]);continue}}e.push(C);}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]===p.CODES.get(`
11
+ `)+1&&B[3]===d.MAX_RUNE&&(i.op=D.RUNE_ANY_NOT_NL),t}lookBehind(B,e){let t=this.newInst(D.LB_WRITE);this.prog.getInst(t.i).arg=e;let i=this.rune(CB.ANY_RUNE(),0),s=this.star(i,true),r=this.cat(s,B);this.prog.patch(r.out,t.i);let C=this.newInst(D.LB_CHECK);return this.prog.getInst(C.i).arg=e,this.prog.lbStarts.push(r.i),Math.abs(e)>this.prog.numLb&&(this.prog.numLb=Math.abs(e)),C.out=new K(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&f.NON_GREEDY)!==0);case h.Op.PLUS:return this.plus(this.compile(B.subs[0]),(B.flags&f.NON_GREEDY)!==0);case h.Op.QUEST:return this.quest(this.compile(B.subs[0]),(B.flags&f.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")}}},It=class J{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=J.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 s=B.subs[i],r=J.simplify(s);if(r!==s&&(t=true),B.op===h.Op.CONCAT){if(r.op===h.Op.NO_MATCH)return new h(h.Op.NO_MATCH);if(r.op===h.Op.EMPTY_MATCH){t=true;continue}if(r.op===h.Op.CONCAT){t=true;for(let C=0;C<r.subs.length;C++)e.push(r.subs[C]);continue}}else if(B.op===h.Op.ALTERNATE){if(r.op===h.Op.NO_MATCH){t=true;continue}if(r.op===h.Op.ALTERNATE){t=true;for(let C=0;C<r.subs.length;C++)e.push(r.subs[C]);continue}}e.push(r);}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]===d.MAX_RUNE?new h(h.Op.ANY_CHAR):B.runes.length===4&&B.runes[0]===0&&B.runes[1]===p.CODES.get(`
12
12
  `)-1&&B.runes[2]===p.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=J.simplify(B.subs[0]);return J.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=J.simplify(B.subs[0]);if(B.max===-1){if(B.min===0)return J.simplify1(h.Op.STAR,B.flags,e,null);if(B.min===1)return J.simplify1(h.Op.PLUS,B.flags,e,null);let i=new h(h.Op.CONCAT),s=[];for(let C=0;C<B.min-1;C++)s.push(e);return s.push(J.simplify1(h.Op.PLUS,B.flags,e,null)),i.subs=s.slice(0),J.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=J.simplify1(h.Op.QUEST,B.flags,e,null);for(let s=B.min+1;s<B.max;s++){let C=new h(h.Op.CONCAT);C.subs=[e,i],i=J.simplify1(h.Op.QUEST,B.flags,C,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),J.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&f.NON_GREEDY)===(t.flags&f.NON_GREEDY))return t;if(i!==null&&i.op===B&&(i.flags&f.NON_GREEDY)===(e&f.NON_GREEDY)&&t===i.subs[0])return i;let s=new h(B);return s.flags=e,s.subs=[t],s}},T=class{constructor(n,B){this.sign=n,this.cls=B;}},Ye=[48,57],Qe=[9,10,12,13,32,32],We=[48,57,65,90,95,95,97,122],qe=new Map([["\\d",new T(1,Ye)],["\\D",new T(-1,Ye)],["\\s",new T(1,Qe)],["\\S",new T(-1,Qe)],["\\w",new T(1,We)],["\\W",new T(-1,We)]]),ze=[48,57,65,90,97,122],Xe=[65,90,97,122],$e=[0,127],Ze=[9,9,32,32],Bt=[0,31,127,127],et=[48,57],tt=[33,126],nt=[97,122],it=[32,126],st=[33,47,58,64,91,96,123,126],Ct=[9,13,32,32],rt=[65,90],ot=[48,57,65,90,95,95,97,122],at=[48,57,65,70,97,102],lt=new Map([["[:alnum:]",new T(1,ze)],["[:^alnum:]",new T(-1,ze)],["[:alpha:]",new T(1,Xe)],["[:^alpha:]",new T(-1,Xe)],["[:ascii:]",new T(1,$e)],["[:^ascii:]",new T(-1,$e)],["[:blank:]",new T(1,Ze)],["[:^blank:]",new T(-1,Ze)],["[:cntrl:]",new T(1,Bt)],["[:^cntrl:]",new T(-1,Bt)],["[:digit:]",new T(1,et)],["[:^digit:]",new T(-1,et)],["[:graph:]",new T(1,tt)],["[:^graph:]",new T(-1,tt)],["[:lower:]",new T(1,nt)],["[:^lower:]",new T(-1,nt)],["[:print:]",new T(1,it)],["[:^print:]",new T(-1,it)],["[:punct:]",new T(1,st)],["[:^punct:]",new T(-1,st)],["[:space:]",new T(1,Ct)],["[:^space:]",new T(-1,Ct)],["[:upper:]",new T(1,rt)],["[:^upper:]",new T(-1,rt)],["[:word:]",new T(1,ot)],["[:^word:]",new T(-1,ot)],["[:xdigit:]",new T(1,at)],["[:^xdigit:]",new T(-1,at)]]),$=class Z{static charClassToString(B,e){let t="[";for(let i=0;i<e;i+=2){i>0&&(t+=" ");let s=B[i],C=B[i+1];s===C?t+=`0x${s.toString(16)}`:t+=`0x${s.toString(16)}-0x${C.toString(16)}`;}return t+="]",t}static cmp(B,e,t,i){let s=B[e]-t;return s!==0?s:i-B[e+1]}static qsortIntPair(B,e,t){let i=((e+t)/2|0)&-2,s=B[i],C=B[i+1],r=e,o=t;for(;r<=o;){for(;r<t&&Z.cmp(B,r,s,C)<0;)r+=2;for(;o>e&&Z.cmp(B,o,s,C)>0;)o-=2;if(r<=o){if(r!==o){let u=B[r];B[r]=B[o],B[o]=u,u=B[r+1],B[r+1]=B[o+1],B[o+1]=u;}r+=2,o-=2;}}e<o&&Z.qsortIntPair(B,e,o),r<t&&Z.qsortIntPair(B,r,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;Z.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&f.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],s=this.r[this.len-t+1];if(B<=s+1&&i<=e+1)return B<i&&(this.r[this.len-t]=B),e>s&&(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],s=B[t+1];e<=i-1&&this.appendRange(e,i-1),e=s+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),s=B.getStride(e);if(s===1){this.appendRange(t,i);continue}for(let C=t;C<=i;C+=s)this.appendRange(C,C);}return this}appendNegatedTable(B){let e=0;for(let t=0;t<B.length;++t){let i=B.getLo(t),s=B.getHi(t),C=B.getStride(t);if(C===1){e<=i-1&&this.appendRange(e,i-1),e=s+1;continue}for(let r=i;r<=s;r+=C)e<=r-1&&this.appendRange(e,r-1),e=r+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],s=this.r[t+1];B<=i-1&&(this.r[e]=B,this.r[e+1]=i-1,e+=2),B=s+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 Z().appendFoldedClass(t).cleanClass().toArray()),this.appendClassWithSign(t,B.sign)}toString(){return Z.charClassToString(this.r,this.len)}},Qn=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()}},Ft=class O{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:O.ANY_TABLE,fold:O.ANY_TABLE,sign:1}:B==="Ascii"?{tab:O.ASCII_TABLE,fold:O.ASCII_FOLD_TABLE,sign:1}:B==="Assigned"?{tab:k.CATEGORIES.get("Cn"),fold:k.CATEGORIES.get("Cn"),sign:-1}:B==="Lc"?{tab:k.CATEGORIES.get("LC"),fold:k.FOLD_CATEGORIES.get("LC"),sign:1}:k.CATEGORIES.has(B)?{tab:k.CATEGORIES.get(B),fold:k.FOLD_CATEGORIES.get(B),sign:1}:k.SCRIPTS.has(B)?{tab:k.SCRIPTS.get(B),fold:k.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 O(B,e).parseInternal()}static parseRepeat(B){let e=B.pos();if(!B.more()||!B.lookingAt("{"))return -1;B.skip(1);let t=O.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=O.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 b(O.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!==p.CODES.get("_")&&!F.isalnum(t))return false}return true}static parseInt(B){let e=B.pos();for(;B.more()&&B.peek()>=p.CODES.get("0")&&B.peek()<=p.CODES.get("9");)B.skip(1);let t=B.from(e);return t.length===0||t.length>1&&t.codePointAt(0)===p.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!==p.CODES.get(`
13
+ `)+1&&B.runes[3]===d.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=J.simplify(B.subs[0]);return J.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=J.simplify(B.subs[0]);if(B.max===-1){if(B.min===0)return J.simplify1(h.Op.STAR,B.flags,e,null);if(B.min===1)return J.simplify1(h.Op.PLUS,B.flags,e,null);let i=new h(h.Op.CONCAT),s=[];for(let r=0;r<B.min-1;r++)s.push(e);return s.push(J.simplify1(h.Op.PLUS,B.flags,e,null)),i.subs=s.slice(0),J.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=J.simplify1(h.Op.QUEST,B.flags,e,null);for(let s=B.min+1;s<B.max;s++){let r=new h(h.Op.CONCAT);r.subs=[e,i],i=J.simplify1(h.Op.QUEST,B.flags,r,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),J.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&f.NON_GREEDY)===(t.flags&f.NON_GREEDY))return t;if(i!==null&&i.op===B&&(i.flags&f.NON_GREEDY)===(e&f.NON_GREEDY)&&t===i.subs[0])return i;let s=new h(B);return s.flags=e,s.subs=[t],s}},T=class{constructor(n,B){this.sign=n,this.cls=B;}},We=[48,57],qe=[9,10,12,13,32,32],ze=[48,57,65,90,95,95,97,122],Xe=new Map([["\\d",new T(1,We)],["\\D",new T(-1,We)],["\\s",new T(1,qe)],["\\S",new T(-1,qe)],["\\w",new T(1,ze)],["\\W",new T(-1,ze)]]),$e=[48,57,65,90,97,122],Ze=[65,90,97,122],Bt=[0,127],et=[9,9,32,32],tt=[0,31,127,127],nt=[48,57],it=[33,126],st=[97,122],rt=[32,126],Ct=[33,47,58,64,91,96,123,126],ot=[9,13,32,32],at=[65,90],lt=[48,57,65,90,95,95,97,122],ut=[48,57,65,70,97,102],ct=new Map([["[:alnum:]",new T(1,$e)],["[:^alnum:]",new T(-1,$e)],["[:alpha:]",new T(1,Ze)],["[:^alpha:]",new T(-1,Ze)],["[:ascii:]",new T(1,Bt)],["[:^ascii:]",new T(-1,Bt)],["[:blank:]",new T(1,et)],["[:^blank:]",new T(-1,et)],["[:cntrl:]",new T(1,tt)],["[:^cntrl:]",new T(-1,tt)],["[:digit:]",new T(1,nt)],["[:^digit:]",new T(-1,nt)],["[:graph:]",new T(1,it)],["[:^graph:]",new T(-1,it)],["[:lower:]",new T(1,st)],["[:^lower:]",new T(-1,st)],["[:print:]",new T(1,rt)],["[:^print:]",new T(-1,rt)],["[:punct:]",new T(1,Ct)],["[:^punct:]",new T(-1,Ct)],["[:space:]",new T(1,ot)],["[:^space:]",new T(-1,ot)],["[:upper:]",new T(1,at)],["[:^upper:]",new T(-1,at)],["[:word:]",new T(1,lt)],["[:^word:]",new T(-1,lt)],["[:xdigit:]",new T(1,ut)],["[:^xdigit:]",new T(-1,ut)]]),Z=class BB{static charClassToString(B,e){let t="[";for(let i=0;i<e;i+=2){i>0&&(t+=" ");let s=B[i],r=B[i+1];s===r?t+=`0x${s.toString(16)}`:t+=`0x${s.toString(16)}-0x${r.toString(16)}`;}return t+="]",t}static cmp(B,e,t,i){let s=B[e]-t;return s!==0?s:i-B[e+1]}static qsortIntPair(B,e,t){let i=((e+t)/2|0)&-2,s=B[i],r=B[i+1],C=e,o=t;for(;C<=o;){for(;C<t&&BB.cmp(B,C,s,r)<0;)C+=2;for(;o>e&&BB.cmp(B,o,s,r)>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&&BB.qsortIntPair(B,e,o),C<t&&BB.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;BB.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&f.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],s=this.r[this.len-t+1];if(B<=s+1&&i<=e+1)return B<i&&(this.r[this.len-t]=B),e>s&&(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<=d.MIN_FOLD&&e>=d.MAX_FOLD)return this.appendRange(B,e);if(e<d.MIN_FOLD||B>d.MAX_FOLD)return this.appendRange(B,e);B<d.MIN_FOLD&&(this.appendRange(B,d.MIN_FOLD-1),B=d.MIN_FOLD),e>d.MAX_FOLD&&(this.appendRange(d.MAX_FOLD+1,e),e=d.MAX_FOLD);for(let t=B;t<=e;t++){this.appendRange(t,t);for(let i=d.simpleFold(t);i!==t;i=d.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],s=B[t+1];e<=i-1&&this.appendRange(e,i-1),e=s+1;}return e<=d.MAX_RUNE&&this.appendRange(e,d.MAX_RUNE),this}appendTable(B){for(let e=0;e<B.length;++e){let t=B.getLo(e),i=B.getHi(e),s=B.getStride(e);if(s===1){this.appendRange(t,i);continue}for(let r=t;r<=i;r+=s)this.appendRange(r,r);}return this}appendNegatedTable(B){let e=0;for(let t=0;t<B.length;++t){let i=B.getLo(t),s=B.getHi(t),r=B.getStride(t);if(r===1){e<=i-1&&this.appendRange(e,i-1),e=s+1;continue}for(let C=i;C<=s;C+=r)e<=C-1&&this.appendRange(e,C-1),e=C+1;}return e<=d.MAX_RUNE&&this.appendRange(e,d.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],s=this.r[t+1];B<=i-1&&(this.r[e]=B,this.r[e+1]=i-1,e+=2),B=s+1;}return this.len=e,B<=d.MAX_RUNE&&(this.r[this.len++]=B,this.r[this.len++]=d.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 BB().appendFoldedClass(t).cleanClass().toArray()),this.appendClassWithSign(t,B.sign)}toString(){return BB.charClassToString(this.r,this.len)}},Zn=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()}},At=class O{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,d.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:O.ANY_TABLE,fold:O.ANY_TABLE,sign:1}:B==="Ascii"?{tab:O.ASCII_TABLE,fold:O.ASCII_FOLD_TABLE,sign:1}:B==="Assigned"?{tab:k.CATEGORIES.get("Cn"),fold:k.CATEGORIES.get("Cn"),sign:-1}:B==="Lc"?{tab:k.CATEGORIES.get("LC"),fold:k.FOLD_CATEGORIES.get("LC"),sign:1}:k.CATEGORIES.has(B)?{tab:k.CATEGORIES.get(B),fold:k.FOLD_CATEGORIES.get(B),sign:1}:k.SCRIPTS.has(B)?{tab:k.SCRIPTS.get(B),fold:k.FOLD_SCRIPT.get(B),sign:1}:null}static minFoldRune(B){if(B<d.MIN_FOLD||B>d.MAX_FOLD)return B;let e=B,t=B;for(B=d.simpleFold(B);B!==t;B=d.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 O(B,e).parseInternal()}static parseRepeat(B){let e=B.pos();if(!B.more()||!B.lookingAt("{"))return -1;B.skip(1);let t=O.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=O.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 b(O.ERR_INVALID_REPEAT_SIZE,B.from(e));return t<<16|i&d.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!==p.CODES.get("_")&&!F.isalnum(t))return false}return true}static parseInt(B){let e=B.pos();for(;B.more()&&B.peek()>=p.CODES.get("0")&&B.peek()<=p.CODES.get("9");)B.skip(1);let t=B.from(e);return t.length===0||t.length>1&&t.codePointAt(0)===p.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!==p.CODES.get(`
14
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:O.matchRune(e,p.CODES.get(`
15
- `))&&(B.op=h.Op.ANY_CHAR);break;case h.Op.CHAR_CLASS:e.op===h.Op.LITERAL?B.runes=new $(B.runes).appendLiteral(e.runes[0],e.flags).toArray():B.runes=new $(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 $().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 b(O.ERR_TRAILING_BACKSLASH);let t=B.pop();B:switch(t){case p.CODES.get("1"):case p.CODES.get("2"):case p.CODES.get("3"):case p.CODES.get("4"):case p.CODES.get("5"):case p.CODES.get("6"):case p.CODES.get("7"):if(!B.more()||B.peek()<p.CODES.get("0")||B.peek()>p.CODES.get("7"))break;case p.CODES.get("0"):{let i=t-p.CODES.get("0");for(let s=1;s<3&&!(!B.more()||B.peek()<p.CODES.get("0")||B.peek()>p.CODES.get("7"));s++)i=i*8+B.peek()-p.CODES.get("0"),B.skip(1);return i}case p.CODES.get("x"):{if(!B.more())break;if(t=B.pop(),t===p.CODES.get("{")){let C=0,r=0;for(;;){if(!B.more())break B;if(t=B.pop(),t===p.CODES.get("}"))break;let o=F.unhex(t);if(o<0||(r=r*16+o,r>m.MAX_RUNE))break B;C++;}if(C===0)break B;return r}let i=F.unhex(t);if(!B.more())break;t=B.pop();let s=F.unhex(t);if(i<0||s<0)break;return i*16+s}case p.CODES.get("a"):return p.CODES.get("\x07");case p.CODES.get("f"):return p.CODES.get("\f");case p.CODES.get("n"):return p.CODES.get(`
16
- `);case p.CODES.get("r"):return p.CODES.get("\r");case p.CODES.get("t"):return p.CODES.get(" ");case p.CODES.get("v"):return p.CODES.get("\v");default:if(t<=m.MAX_ASCII&&!F.isalnum(t))return t;break}throw new b(O.ERR_INVALID_ESCAPE,B.from(e))}static parseClassChar(B,e){if(!B.more())throw new b(O.ERR_MISSING_BRACKET,B.from(e));return B.lookingAt("\\")?O.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(O.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>O.MAX_RUNES)throw new b(O.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(O.MAX_SIZE/this.repeats)?this.repeats=O.MAX_SIZE:this.repeats*=e;}if(this.numRegexp<Math.floor(O.MAX_SIZE/this.repeats))return;this.size=new Map;for(let e of this.stack)this.checkSize(e);}if(this.calcSize(B,true)>O.MAX_SIZE)throw new b(O.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<O.MAX_HEIGHT)){if(this.height===null){this.height=new Map;for(let e of this.stack)this.checkHeight(e);}if(this.calcHeight(B,true)>O.MAX_HEIGHT)throw new b(O.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 s=this.calcHeight(i);t<1+s&&(t=1+s);}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|f.FOLD_CASE))return null;B.op=h.Op.LITERAL,B.runes=[B.runes[0]],B.flags=this.flags|f.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],s=this.stack[t-2];return i.op!==h.Op.LITERAL||s.op!==h.Op.LITERAL||(i.flags&f.FOLD_CASE)!==(s.flags&f.FOLD_CASE)?false:(s.runes=O.concatRunes(s.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&f.FOLD_CASE)!==0&&(B=O.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,s,C){let r=this.flags;if((r&f.PERL_X)!==0&&(s.more()&&s.lookingAt("?")&&(s.skip(1),r^=f.NON_GREEDY),C!==-1))throw new b(O.ERR_INVALID_REPEAT_OP,s.from(C));let o=this.stack.length;if(o===0)throw new b(O.ERR_MISSING_REPEAT_ARGUMENT,s.from(i));let u=this.stack[o-1];if(h.isPseudoOp(u.op))throw new b(O.ERR_MISSING_REPEAT_ARGUMENT,s.from(i));let c=this.newRegexp(B);if(c.min=e,c.max=t,c.flags=r,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 b(O.ERR_INVALID_REPEAT_SIZE,s.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 $(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]===p.CODES.get(`
15
+ `))&&(B.op=h.Op.ANY_CHAR);break;case h.Op.CHAR_CLASS:e.op===h.Op.LITERAL?B.runes=new Z(B.runes).appendLiteral(e.runes[0],e.flags).toArray():B.runes=new Z(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 Z().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 b(O.ERR_TRAILING_BACKSLASH);let t=B.pop();B:switch(t){case p.CODES.get("1"):case p.CODES.get("2"):case p.CODES.get("3"):case p.CODES.get("4"):case p.CODES.get("5"):case p.CODES.get("6"):case p.CODES.get("7"):if(!B.more()||B.peek()<p.CODES.get("0")||B.peek()>p.CODES.get("7"))break;case p.CODES.get("0"):{let i=t-p.CODES.get("0");for(let s=1;s<3&&!(!B.more()||B.peek()<p.CODES.get("0")||B.peek()>p.CODES.get("7"));s++)i=i*8+B.peek()-p.CODES.get("0"),B.skip(1);return i}case p.CODES.get("x"):{if(!B.more())break;if(t=B.pop(),t===p.CODES.get("{")){let r=0,C=0;for(;;){if(!B.more())break B;if(t=B.pop(),t===p.CODES.get("}"))break;let o=F.unhex(t);if(o<0||(C=C*16+o,C>d.MAX_RUNE))break B;r++;}if(r===0)break B;return C}let i=F.unhex(t);if(!B.more())break;t=B.pop();let s=F.unhex(t);if(i<0||s<0)break;return i*16+s}case p.CODES.get("a"):return p.CODES.get("\x07");case p.CODES.get("f"):return p.CODES.get("\f");case p.CODES.get("n"):return p.CODES.get(`
16
+ `);case p.CODES.get("r"):return p.CODES.get("\r");case p.CODES.get("t"):return p.CODES.get(" ");case p.CODES.get("v"):return p.CODES.get("\v");default:if(t<=d.MAX_ASCII&&!F.isalnum(t))return t;break}throw new b(O.ERR_INVALID_ESCAPE,B.from(e))}static parseClassChar(B,e){if(!B.more())throw new b(O.ERR_MISSING_BRACKET,B.from(e));return B.lookingAt("\\")?O.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(O.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>O.MAX_RUNES)throw new b(O.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(O.MAX_SIZE/this.repeats)?this.repeats=O.MAX_SIZE:this.repeats*=e;}if(this.numRegexp<Math.floor(O.MAX_SIZE/this.repeats))return;this.size=new Map;for(let e of this.stack)this.checkSize(e);}if(this.calcSize(B,true)>O.MAX_SIZE)throw new b(O.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<O.MAX_HEIGHT)){if(this.height===null){this.height=new Map;for(let e of this.stack)this.checkHeight(e);}if(this.calcHeight(B,true)>O.MAX_HEIGHT)throw new b(O.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 s=this.calcHeight(i);t<1+s&&(t=1+s);}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]&&d.simpleFold(B.runes[0])===B.runes[2]&&d.simpleFold(B.runes[2])===B.runes[0]||B.op===h.Op.CHAR_CLASS&&B.runes.length===2&&B.runes[0]+1===B.runes[1]&&d.simpleFold(B.runes[0])===B.runes[1]&&d.simpleFold(B.runes[1])===B.runes[0]){if(this.maybeConcat(B.runes[0],this.flags|f.FOLD_CASE))return null;B.op=h.Op.LITERAL,B.runes=[B.runes[0]],B.flags=this.flags|f.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],s=this.stack[t-2];return i.op!==h.Op.LITERAL||s.op!==h.Op.LITERAL||(i.flags&f.FOLD_CASE)!==(s.flags&f.FOLD_CASE)?false:(s.runes=O.concatRunes(s.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&f.FOLD_CASE)!==0&&(B=O.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,s,r){let C=this.flags;if((C&f.PERL_X)!==0&&(s.more()&&s.lookingAt("?")&&(s.skip(1),C^=f.NON_GREEDY),r!==-1))throw new b(O.ERR_INVALID_REPEAT_OP,s.from(r));let o=this.stack.length;if(o===0)throw new b(O.ERR_MISSING_REPEAT_ARGUMENT,s.from(i));let u=this.stack[o-1];if(h.isPseudoOp(u.op))throw new b(O.ERR_MISSING_REPEAT_ARGUMENT,s.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 b(O.ERR_INVALID_REPEAT_SIZE,s.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 Z(B.runes).cleanClass().toArray(),B.runes.length===2&&B.runes[0]===0&&B.runes[1]===d.MAX_RUNE?(B.runes=[],B.op=h.Op.ANY_CHAR):B.runes.length===4&&B.runes[0]===0&&B.runes[1]===p.CODES.get(`
17
17
  `)-1&&B.runes[2]===p.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 r of B)t+=r.op===e?r.subs.length:1;let i=new Array(t).fill(null),s=0;for(let r of B)if(r.op===e){for(let o=0;o<r.subs.length;o++)i[s++]=r.subs[o];this.reuse(r);}else i[s++]=r;let C=this.newRegexp(e);if(C.subs=i,e===h.Op.ALTERNATE&&(C.subs=this.factor(C.subs),C.subs.length===1)){let r=C;C=C.subs[0],this.reuse(r);}return C}factor(B){if(B.length<2)return B;let e=0,t=B.length,i=0,s=null,C=0,r=0,o=0;for(let c=0;c<=t;c++){let E=null,g=0,d=0;if(c<t){let A=B[e+c];if(A.op===h.Op.CONCAT&&A.subs.length>0&&(A=A.subs[0]),A.op===h.Op.LITERAL&&(E=A.runes,g=A.runes.length,d=A.flags&f.FOLD_CASE),d===r){let S=0;for(;S<C&&S<g&&s[S]===E[S];)S++;if(S>0){C=S;continue}}}if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let A=this.newRegexp(h.Op.LITERAL);A.flags=r,A.runes=s.slice(0,C);for(let w=o;w<c;w++)B[e+w]=this.removeLeadingString(B[e+w],C),this.checkLimits(B[e+w]);let S=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),G=this.newRegexp(h.Op.CONCAT);G.subs=[A,S],B[i++]=G;}o=c,s=E,C=g,r=d;}t=i,e=0,o=0,i=0;let u=null;for(let c=0;c<=t;c++){let E=null;if(!(c<t&&(E=O.leadingRegexp(B[e+c]),u!==null&&u.equals(E)&&(O.isCharClass(u)||u.op===h.Op.REPEAT&&u.min===u.max&&O.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 G=S!==o;B[e+S]=this.removeLeadingRegexp(B[e+S],G),this.checkLimits(B[e+S]);}let d=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),A=this.newRegexp(h.Op.CONCAT);A.subs=[g,d],B[i++]=A;}o=c,u=E;}}t=i,e=0,o=0,i=0;for(let c=0;c<=t;c++)if(!(c<t&&O.isCharClass(B[e+c]))){if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let E=o;for(let d=o+1;d<c;d++){let A=B[e+E],S=B[e+d];(A.op<S.op||A.op===S.op&&(A.runes!==null?A.runes.length:0)<(S.runes!==null?S.runes.length:0))&&(E=d);}let g=B[e+o];B[e+o]=B[e+E],B[e+E]=g;for(let d=o+1;d<c;d++)O.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&f.LITERAL)!==0)return O.literalRegexp(this.wholeRegexp,this.flags);let B=-1,e=-1,t=-1,i=new Qn(this.wholeRegexp);for(;i.more();){let s=-1;B:switch(i.peek()){case p.CODES.get("("):if((this.flags&f.LOOKBEHIND)!==0){if(i.lookingAt("(?<=")){this.parsePosLookBehind(),i.skip(4);break}if(i.lookingAt("(?<!")){this.parseNegLookBehind(),i.skip(4);break}}if((this.flags&f.PERL_X)!==0&&i.lookingAt("(?")){this.parsePerlFlags(i);break}this.op(h.Op.LEFT_PAREN).cap=++this.numCap,i.skip(1);break;case p.CODES.get("|"):this.parseVerticalBar(),i.skip(1);break;case p.CODES.get(")"):this.parseRightParen(),i.skip(1);break;case p.CODES.get("^"):(this.flags&f.ONE_LINE)!==0?this.op(h.Op.BEGIN_TEXT):this.op(h.Op.BEGIN_LINE),i.skip(1);break;case p.CODES.get("$"):(this.flags&f.ONE_LINE)!==0?this.op(h.Op.END_TEXT).flags|=f.WAS_DOLLAR:this.op(h.Op.END_LINE),i.skip(1);break;case p.CODES.get("."):(this.flags&f.DOT_NL)!==0?this.op(h.Op.ANY_CHAR):this.op(h.Op.ANY_CHAR_NOT_NL),i.skip(1);break;case p.CODES.get("["):this.parseClass(i);break;case p.CODES.get("*"):case p.CODES.get("+"):case p.CODES.get("?"):{s=i.pos();let C=null;switch(i.pop()){case p.CODES.get("*"):C=h.Op.STAR;break;case p.CODES.get("+"):C=h.Op.PLUS;break;case p.CODES.get("?"):C=h.Op.QUEST;break}this.repeat(C,e,t,s,i,B);break}case p.CODES.get("{"):{s=i.pos();let C=O.parseRepeat(i);if(C<0){i.rewindTo(s),this.literal(i.pop());break}e=C>>16,t=(C&m.MAX_BMP)<<16>>16,this.repeat(h.Op.REPEAT,e,t,s,i,B);break}case p.CODES.get("\\"):{let C=i.pos();if(i.skip(1),(this.flags&f.PERL_X)!==0&&i.more())switch(i.pop()){case p.CODES.get("A"):this.op(h.Op.BEGIN_TEXT);break B;case p.CODES.get("b"):this.op(h.Op.WORD_BOUNDARY);break B;case p.CODES.get("B"):this.op(h.Op.NO_WORD_BOUNDARY);break B;case p.CODES.get("C"):throw new b(O.ERR_INVALID_ESCAPE,"\\C");case p.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 E=0;for(;E<u.length;){let g=u.codePointAt(E);this.literal(g),E+=F.charCount(g);}break B}case p.CODES.get("z"):this.op(h.Op.END_TEXT);break B;default:i.rewindTo(C);break}else i.rewindTo(C);let r=this.newRegexp(h.Op.CHAR_CLASS);if(r.flags=this.flags,i.lookingAt("\\p")||i.lookingAt("\\P")){let u=new $;if(this.parseUnicodeClass(i,u)){r.runes=u.toArray(),this.push(r);break B}}let o=new $;if(this.parsePerlClassEscape(i,o)){r.runes=o.toArray(),this.push(r);break B}i.rewindTo(C),this.reuse(r),this.literal(O.parseEscape(i));break}default:this.literal(i.pop());break}B=s;}if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length!==1)throw new b(O.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 r=t.charAt(2)==="P"?4:3,o=t.indexOf(">");if(o<0)throw new b(O.ERR_INVALID_NAMED_CAPTURE,t);let u=t.substring(r,o);if(B.skipString(u),B.skip(r+1),!O.isValidCaptureName(u))throw new b(O.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 b(O.ERR_DUPLICATE_NAMED_CAPTURE,u);this.namedGroups[u]=this.numCap,c.name=u;return}B.skip(2);let i=this.flags,s=1,C=false;B:for(;B.more();){let r=B.pop();switch(r){case p.CODES.get("i"):i|=f.FOLD_CASE,C=true;break;case p.CODES.get("m"):i&=-17,C=true;break;case p.CODES.get("s"):i|=f.DOT_NL,C=true;break;case p.CODES.get("U"):i|=f.NON_GREEDY,C=true;break;case p.CODES.get("-"):if(s<0)break B;s=-1,i=~i,C=false;break;case p.CODES.get(":"):case p.CODES.get(")"):if(s<0){if(!C)break B;i=~i;}r===p.CODES.get(":")&&this.op(h.Op.LEFT_PAREN),this.flags=i;return;default:break B}}throw new b(O.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&&O.isCharClass(this.stack[B-1])&&O.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 O.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 b(O.ERR_UNEXPECTED_PAREN,this.wholeRegexp);let B=this.pop(),e=this.pop();if(e.op!==h.Op.LEFT_PAREN)throw new b(O.ERR_UNEXPECTED_PAREN,this.wholeRegexp);if(this.flags=e.flags,e.lb!==0){if(O.hasCapture(B))throw new b(O.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&f.PERL_X)===0||!B.more()||B.pop()!==p.CODES.get("\\")||!B.more())return false;B.pop();let i=B.from(t),s=qe.has(i)?qe.get(i):null;return s===null?false:(e.appendGroup(s,(this.flags&f.FOLD_CASE)!==0),true)}parseNamedClass(B,e){let t=B.rest(),i=t.indexOf(":]");if(i<0)return false;let s=t.substring(0,i+2);B.skipString(s);let C=lt.has(s)?lt.get(s):null;if(C===null)throw new b(O.ERR_INVALID_CHAR_RANGE,s);return e.appendGroup(C,(this.flags&f.FOLD_CASE)!==0),true}parseUnicodeClass(B,e){let t=B.pos();if((this.flags&f.UNICODE_GROUPS)===0||!B.lookingAt("\\p")&&!B.lookingAt("\\P"))return false;B.skip(1);let i=1,s=B.pop();if(s===p.CODES.get("P")&&(i=-1),!B.more())throw B.rewindTo(t),new b(O.ERR_INVALID_CHAR_RANGE,B.rest());s=B.pop();let C;if(s!==p.CODES.get("{"))C=F.runeToString(s);else {let c=B.rest(),E=c.indexOf("}");if(E<0)throw B.rewindTo(t),new b(O.ERR_INVALID_CHAR_RANGE,B.rest());C=c.substring(0,E),B.skipString(C),B.skip(1);}C.length!==0&&C.codePointAt(0)===p.CODES.get("^")&&(i=0-i,C=C.substring(1));let r=O.unicodeTable(C);if(r===null)throw new b(O.ERR_INVALID_CHAR_RANGE,B.from(t));r.sign<0&&(i=0-i);let o=r.tab,u=r.fold;if((this.flags&f.FOLD_CASE)===0||u===null)e.appendTableWithSign(o,i);else {let c=new $().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 $,s=1;B.more()&&B.lookingAt("^")&&(s=-1,B.skip(1),(this.flags&f.CLASS_NL)===0&&i.appendRange(p.CODES.get(`
18
+ `)+1&&B.runes[3]===d.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),s=0;for(let C of B)if(C.op===e){for(let o=0;o<C.subs.length;o++)i[s++]=C.subs[o];this.reuse(C);}else i[s++]=C;let r=this.newRegexp(e);if(r.subs=i,e===h.Op.ALTERNATE&&(r.subs=this.factor(r.subs),r.subs.length===1)){let C=r;r=r.subs[0],this.reuse(C);}return r}factor(B){if(B.length<2)return B;let e=0,t=B.length,i=0,s=null,r=0,C=0,o=0;for(let c=0;c<=t;c++){let E=null,g=0,m=0;if(c<t){let A=B[e+c];if(A.op===h.Op.CONCAT&&A.subs.length>0&&(A=A.subs[0]),A.op===h.Op.LITERAL&&(E=A.runes,g=A.runes.length,m=A.flags&f.FOLD_CASE),m===C){let S=0;for(;S<r&&S<g&&s[S]===E[S];)S++;if(S>0){r=S;continue}}}if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let A=this.newRegexp(h.Op.LITERAL);A.flags=C,A.runes=s.slice(0,r);for(let w=o;w<c;w++)B[e+w]=this.removeLeadingString(B[e+w],r),this.checkLimits(B[e+w]);let S=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),G=this.newRegexp(h.Op.CONCAT);G.subs=[A,S],B[i++]=G;}o=c,s=E,r=g,C=m;}t=i,e=0,o=0,i=0;let u=null;for(let c=0;c<=t;c++){let E=null;if(!(c<t&&(E=O.leadingRegexp(B[e+c]),u!==null&&u.equals(E)&&(O.isCharClass(u)||u.op===h.Op.REPEAT&&u.min===u.max&&O.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 G=S!==o;B[e+S]=this.removeLeadingRegexp(B[e+S],G),this.checkLimits(B[e+S]);}let m=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),A=this.newRegexp(h.Op.CONCAT);A.subs=[g,m],B[i++]=A;}o=c,u=E;}}t=i,e=0,o=0,i=0;for(let c=0;c<=t;c++)if(!(c<t&&O.isCharClass(B[e+c]))){if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let E=o;for(let m=o+1;m<c;m++){let A=B[e+E],S=B[e+m];(A.op<S.op||A.op===S.op&&(A.runes!==null?A.runes.length:0)<(S.runes!==null?S.runes.length:0))&&(E=m);}let g=B[e+o];B[e+o]=B[e+E],B[e+E]=g;for(let m=o+1;m<c;m++)O.mergeCharClass(B[e+o],B[e+m]),this.reuse(B[e+m]);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&f.LITERAL)!==0)return O.literalRegexp(this.wholeRegexp,this.flags);let B=-1,e=-1,t=-1,i=new Zn(this.wholeRegexp);for(;i.more();){let s=-1;B:switch(i.peek()){case p.CODES.get("("):if((this.flags&f.LOOKBEHIND)!==0){if(i.lookingAt("(?<=")){this.parsePosLookBehind(),i.skip(4);break}if(i.lookingAt("(?<!")){this.parseNegLookBehind(),i.skip(4);break}}if((this.flags&f.PERL_X)!==0&&i.lookingAt("(?")){this.parsePerlFlags(i);break}this.op(h.Op.LEFT_PAREN).cap=++this.numCap,i.skip(1);break;case p.CODES.get("|"):this.parseVerticalBar(),i.skip(1);break;case p.CODES.get(")"):this.parseRightParen(),i.skip(1);break;case p.CODES.get("^"):(this.flags&f.ONE_LINE)!==0?this.op(h.Op.BEGIN_TEXT):this.op(h.Op.BEGIN_LINE),i.skip(1);break;case p.CODES.get("$"):(this.flags&f.ONE_LINE)!==0?this.op(h.Op.END_TEXT).flags|=f.WAS_DOLLAR:this.op(h.Op.END_LINE),i.skip(1);break;case p.CODES.get("."):(this.flags&f.DOT_NL)!==0?this.op(h.Op.ANY_CHAR):this.op(h.Op.ANY_CHAR_NOT_NL),i.skip(1);break;case p.CODES.get("["):this.parseClass(i);break;case p.CODES.get("*"):case p.CODES.get("+"):case p.CODES.get("?"):{s=i.pos();let r=null;switch(i.pop()){case p.CODES.get("*"):r=h.Op.STAR;break;case p.CODES.get("+"):r=h.Op.PLUS;break;case p.CODES.get("?"):r=h.Op.QUEST;break}this.repeat(r,e,t,s,i,B);break}case p.CODES.get("{"):{s=i.pos();let r=O.parseRepeat(i);if(r<0){i.rewindTo(s),this.literal(i.pop());break}e=r>>16,t=(r&d.MAX_BMP)<<16>>16,this.repeat(h.Op.REPEAT,e,t,s,i,B);break}case p.CODES.get("\\"):{let r=i.pos();if(i.skip(1),(this.flags&f.PERL_X)!==0&&i.more())switch(i.pop()){case p.CODES.get("A"):this.op(h.Op.BEGIN_TEXT);break B;case p.CODES.get("b"):this.op(h.Op.WORD_BOUNDARY);break B;case p.CODES.get("B"):this.op(h.Op.NO_WORD_BOUNDARY);break B;case p.CODES.get("C"):throw new b(O.ERR_INVALID_ESCAPE,"\\C");case p.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 E=0;for(;E<u.length;){let g=u.codePointAt(E);this.literal(g),E+=F.charCount(g);}break B}case p.CODES.get("z"):this.op(h.Op.END_TEXT);break B;default:i.rewindTo(r);break}else i.rewindTo(r);let C=this.newRegexp(h.Op.CHAR_CLASS);if(C.flags=this.flags,i.lookingAt("\\p")||i.lookingAt("\\P")){let u=new Z;if(this.parseUnicodeClass(i,u)){C.runes=u.toArray(),this.push(C);break B}}let o=new Z;if(this.parsePerlClassEscape(i,o)){C.runes=o.toArray(),this.push(C);break B}i.rewindTo(r),this.reuse(C),this.literal(O.parseEscape(i));break}default:this.literal(i.pop());break}B=s;}if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length!==1)throw new b(O.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 b(O.ERR_INVALID_NAMED_CAPTURE,t);let u=t.substring(C,o);if(B.skipString(u),B.skip(C+1),!O.isValidCaptureName(u))throw new b(O.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 b(O.ERR_DUPLICATE_NAMED_CAPTURE,u);this.namedGroups[u]=this.numCap,c.name=u;return}B.skip(2);let i=this.flags,s=1,r=false;B:for(;B.more();){let C=B.pop();switch(C){case p.CODES.get("i"):i|=f.FOLD_CASE,r=true;break;case p.CODES.get("m"):i&=-17,r=true;break;case p.CODES.get("s"):i|=f.DOT_NL,r=true;break;case p.CODES.get("U"):i|=f.NON_GREEDY,r=true;break;case p.CODES.get("-"):if(s<0)break B;s=-1,i=~i,r=false;break;case p.CODES.get(":"):case p.CODES.get(")"):if(s<0){if(!r)break B;i=~i;}C===p.CODES.get(":")&&this.op(h.Op.LEFT_PAREN),this.flags=i;return;default:break B}}throw new b(O.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&&O.isCharClass(this.stack[B-1])&&O.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 O.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 b(O.ERR_UNEXPECTED_PAREN,this.wholeRegexp);let B=this.pop(),e=this.pop();if(e.op!==h.Op.LEFT_PAREN)throw new b(O.ERR_UNEXPECTED_PAREN,this.wholeRegexp);if(this.flags=e.flags,e.lb!==0){if(O.hasCapture(B))throw new b(O.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&f.PERL_X)===0||!B.more()||B.pop()!==p.CODES.get("\\")||!B.more())return false;B.pop();let i=B.from(t),s=Xe.has(i)?Xe.get(i):null;return s===null?false:(e.appendGroup(s,(this.flags&f.FOLD_CASE)!==0),true)}parseNamedClass(B,e){let t=B.rest(),i=t.indexOf(":]");if(i<0)return false;let s=t.substring(0,i+2);B.skipString(s);let r=ct.has(s)?ct.get(s):null;if(r===null)throw new b(O.ERR_INVALID_CHAR_RANGE,s);return e.appendGroup(r,(this.flags&f.FOLD_CASE)!==0),true}parseUnicodeClass(B,e){let t=B.pos();if((this.flags&f.UNICODE_GROUPS)===0||!B.lookingAt("\\p")&&!B.lookingAt("\\P"))return false;B.skip(1);let i=1,s=B.pop();if(s===p.CODES.get("P")&&(i=-1),!B.more())throw B.rewindTo(t),new b(O.ERR_INVALID_CHAR_RANGE,B.rest());s=B.pop();let r;if(s!==p.CODES.get("{"))r=F.runeToString(s);else {let c=B.rest(),E=c.indexOf("}");if(E<0)throw B.rewindTo(t),new b(O.ERR_INVALID_CHAR_RANGE,B.rest());r=c.substring(0,E),B.skipString(r),B.skip(1);}r.length!==0&&r.codePointAt(0)===p.CODES.get("^")&&(i=0-i,r=r.substring(1));let C=O.unicodeTable(r);if(C===null)throw new b(O.ERR_INVALID_CHAR_RANGE,B.from(t));C.sign<0&&(i=0-i);let o=C.tab,u=C.fold;if((this.flags&f.FOLD_CASE)===0||u===null)e.appendTableWithSign(o,i);else {let c=new Z().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 Z,s=1;B.more()&&B.lookingAt("^")&&(s=-1,B.skip(1),(this.flags&f.CLASS_NL)===0&&i.appendRange(p.CODES.get(`
19
19
  `),p.CODES.get(`
20
- `)));let C=true;for(;!B.more()||B.peek()!==p.CODES.get("]")||C;){if(B.more()&&B.lookingAt("-")&&(this.flags&f.PERL_X)===0&&!C){let c=B.rest();if(c==="-"||!c.startsWith("-]"))throw B.rewindTo(e),new b(O.ERR_INVALID_CHAR_RANGE,B.rest())}C=false;let r=B.pos();if(B.lookingAt("[:")){if(this.parseNamedClass(B,i))continue;B.rewindTo(r);}if(this.parseUnicodeClass(B,i)||this.parsePerlClassEscape(B,i))continue;B.rewindTo(r);let o=O.parseClassChar(B,e),u=o;if(B.more()&&B.lookingAt("-")){if(B.skip(1),B.more()&&B.lookingAt("]"))B.skip(-1);else if(u=O.parseClassChar(B,e),u<o)throw new b(O.ERR_INVALID_CHAR_RANGE,B.from(r))}(this.flags&f.FOLD_CASE)===0?i.appendRange(o,u):i.appendFoldedRange(o,u);}B.skip(1),i.cleanClass(),s<0&&i.negateClass(),t.runes=i.toArray(),this.push(t);}},Wn=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}},qn=class iB{static initTest(B){let e=iB.compile(B),t=new iB(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 iB.compileImpl(B,f.PERL,false)}static compilePOSIX(B){return iB.compileImpl(B,f.POSIX,true)}static compileImpl(B,e,t){let i=Ft.parse(B,e),s=i.maxCap();i=Ot.simplify(i);let C=jn.build(i),r=dt.compileRegexp(i),o=new iB(B,r,s,t);o.prefilter=C.type===R.Type.NONE?null:C;let[u,c]=r.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 iB.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 Wn,this.dfa=new ft(this.prog),this.onepass=Ve.compile(this.prog),this.prefilter=null;}matchPrefixComplete(B,e,t,i){if((t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return null;let s=-1,C=-1,r=B.prefixLength(this);if(t===f.UNANCHORED){let o=B.index(this,e);if(o<0)return null;s=e+o,C=s+r;}else if(t===f.ANCHOR_BOTH){if(B.endPos()!==r||B.index(this,0)!==0)return null;s=0,C=r;}else if(t===f.ANCHOR_START){if(B.index(this,0)!==0)return null;s=0,C=r;}if(s<0)return null;if(i>0){let o=new Int32Array(i).fill(-1);return o[0]=s,o[1]=C,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===f.UNANCHORED&&!this.prefilter.eval(B,e))return null;if(this.onepass!==null)return Ve.execute(this,B,e,t,i);if(i>0)return this.prog.numLb===0&&B.endPos()<=GB.maxBitStateLen(this.prog)?GB.execute(this,B,e,t,i):this.doExecuteNFA(B,e,t,i);if(this.prog.numLb===0){let s=this.dfa.match(B,e,t);if(s!==null)return s?[]:null;if(B.endPos()<=GB.maxBitStateLen(this.prog))return GB.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=yB.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 s=this.get(),C=false;s?s.next!==null&&(s=yB.fromMachine(s),C=true):(s=yB.fromRE2(this),C=true),s.init(i);let r=s.match(B,e,t)?s.submatches():null;return this.put(s,C),r}match(B){return this.executeEngine(L.fromUTF16(B),0,f.UNANCHORED,0)!==null}matchWithGroup(B,e,t,i,s){return B instanceof lB||(F.isByteArray(B)?B=pB.utf8(B):B=pB.utf16(B)),this.matchMachineInput(B,e,t,i,s)}matchMachineInput(B,e,t,i,s){if(e>t)return [false,null];let C=B.isUTF16Encoding()?L.fromUTF16(B.asCharSequence(),0,t):L.fromUTF8(B.asBytes(),0,t),r=this.executeEngine(C,e,i,2*s);return r===null?[false,null]:[true,r]}matchUTF8(B){return this.executeEngine(L.fromUTF8(B),0,f.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,s=0,C="",r=L.fromUTF16(B),o=0;for(;s<=B.length;){let u=this.executeEngine(r,s,f.UNANCHORED,2);if(u===null||u.length===0)break;C+=B.substring(i,u[0]),(u[1]>i||u[0]===0)&&(C+=e(B.substring(u[0],u[1])),o++),i=u[1];let c=r.step(s)&7;if(s+c>u[1]?s+=c:s+1>u[1]?s++:s=u[1],o>=t)break}return C+=B.substring(i),C}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=[],s=B.endPos();e<0&&(e=s+1);let C=0,r=0,o=-1;for(;r<e&&C<=s;){let u=this.executeEngine(B,C,f.UNANCHORED,this.prog.numCap);if(u===null||u.length===0)break;let c=true;if(u[1]===C){u[0]===o&&(c=false);let E=B.step(C);E<0?C=s+1:C+=E&7;}else C=u[1];o=u[1],c&&(i.push(t(this.pad(u))),r++);}return i}findUTF8(B){let e=this.executeEngine(L.fromUTF8(B),0,f.UNANCHORED,2);return e===null?null:B.slice(e[0],e[1])}findUTF8Index(B){let e=this.executeEngine(L.fromUTF8(B),0,f.UNANCHORED,2);return e===null?null:e.slice(0,2)}find(B){let e=this.executeEngine(L.fromUTF16(B),0,f.UNANCHORED,2);return e===null?"":B.substring(e[0],e[1])}findIndex(B){return this.executeEngine(L.fromUTF16(B),0,f.UNANCHORED,2)}findUTF8Submatch(B){let e=this.executeEngine(L.fromUTF8(B),0,f.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(L.fromUTF8(B),0,f.UNANCHORED,this.prog.numCap))}findSubmatch(B){let e=this.executeEngine(L.fromUTF16(B),0,f.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(L.fromUTF16(B),0,f.UNANCHORED,this.prog.numCap))}findAllUTF8(B,e){let t=this.allMatches(L.fromUTF8(B),e,i=>B.slice(i[0],i[1]));return t.length===0?null:t}findAllUTF8Index(B,e){let t=this.allMatches(L.fromUTF8(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAll(B,e){let t=this.allMatches(L.fromUTF16(B),e,i=>B.substring(i[0],i[1]));return t.length===0?null:t}findAllIndex(B,e){let t=this.allMatches(L.fromUTF16(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAllUTF8Submatch(B,e){let t=this.allMatches(L.fromUTF8(B),e,i=>{let s=new Array(i.length/2|0).fill(null);for(let C=0;C<s.length;C++)i[2*C]>=0&&(s[C]=B.slice(i[2*C],i[2*C+1]));return s});return t.length===0?null:t}findAllUTF8SubmatchIndex(B,e){let t=this.allMatches(L.fromUTF8(B),e);return t.length===0?null:t}findAllSubmatch(B,e){let t=this.allMatches(L.fromUTF16(B),e,i=>{let s=new Array(i.length/2|0).fill(null);for(let C=0;C<s.length;C++)i[2*C]>=0&&(s[C]=B.substring(i[2*C],i[2*C+1]));return s});return t.length===0?null:t}findAllSubmatchIndex(B,e){let t=this.allMatches(L.fromUTF16(B),e);return t.length===0?null:t}},zn=class oB{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,s=B.length;s===0&&(t="(?:)",i=true);let C=false,r=0;for(;r<s;){let u=B[r];if(u==="\\"){if(r+1<s)switch(u=B[r+1],u){case "\\":t+="\\\\",r+=2;continue;case "c":if(r+2<s){let g=B[r+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(),r+=3,i=true;continue}}t+="c",r+=2,i=true;continue;case "u":if(r+2<s){if(B[r+2]==="{"){let g=r+3,d=false,A=false;for(;g<s;){let S=B[g];if(S==="}"){A=true;break}if(!oB.isHexadecimal(S))break;d=true,g++;}if(A&&d){t+="\\x",r+=2,i=true;continue}}else if(r+5<s){let g=true;for(let d=0;d<4;d++)if(!oB.isHexadecimal(B[r+2+d])){g=false;break}if(g){t+="\\x{"+B.substring(r+2,r+6)+"}",r+=6,i=true;continue}}}t+="u",r+=2,i=true;continue;case "x":{let g=false;if(r+2<s&&B[r+2]==="{"){let d=r+3,A=false,S=false;for(;d<s;){let G=B[d];if(G==="}"){S=true;break}if(!oB.isHexadecimal(G))break;A=true,d++;}S&&A&&(g=true);}else r+3<s&&oB.isHexadecimal(B[r+2])&&oB.isHexadecimal(B[r+3])&&(g=true);g?(t+="\\x",r+=2):(t+="x",r+=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,r+=2;continue;default:{let g=B.codePointAt(r+1);if(g>=48&&g<=57||g>=65&&g<=90||g>=97&&g<=122){let d=F.charCount(g);t+=B.substring(r+1,r+1+d),r+=d+1,i=true;}else {t+="\\";let d=F.charCount(g);t+=B.substring(r+1,r+1+d),r+=d+1;}continue}}}else if(u==="/"){t+="\\/",r+=1,i=true;continue}else if(u==="[")C=true;else if(u==="]")C=false;else if(!C&&u==="("&&r+2<s&&B[r+1]==="?"&&B[r+2]==="<"&&r+3<s&&!"=!>)".includes(B[r+3])){t+="(?P<",r+=3,i=true;continue}let c=B.codePointAt(r),E=F.charCount(c);t+=B.substring(r,r+E),r+=E;}let o=i?t:B;return e.length>0?`(?${e})${o}`:o}},It=class P{static CASE_INSENSITIVE=Y.CASE_INSENSITIVE;static DOTALL=Y.DOTALL;static MULTILINE=Y.MULTILINE;static DISABLE_UNICODE_GROUPS=Y.DISABLE_UNICODE_GROUPS;static LONGEST_MATCH=Y.LONGEST_MATCH;static LOOKBEHINDS=Y.LOOKBEHINDS;static quote(B){return F.quoteMeta(B)}static quoteReplacement(B,e=false){return Je.quoteReplacement(B,e)}static translateRegExp(B){return zn.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 Gn("Flags should only be a combination of MULTILINE, DOTALL, CASE_INSENSITIVE, DISABLE_UNICODE_GROUPS, LONGEST_MATCH, LOOKBEHINDS");let i=f.PERL;(e&P.DISABLE_UNICODE_GROUPS)!==0&&(i&=-129),(e&P.LOOKBEHINDS)!==0&&(i|=f.LOOKBEHIND);let s=new P(B,e);return s.re2Input=qn.compileImpl(t,i,(e&P.LONGEST_MATCH)!==0),s}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=pB.utf8(B)),new Je(this,B)}test(B){return F.isByteArray(B)?this.re2Input.matchUTF8(B):this.re2Input.match(B)}testExact(B){let e=F.isByteArray(B)?L.fromUTF8(B):L.fromUTF16(B);return this.re2Input.executeEngine(e,0,f.ANCHOR_BOTH,0)!==null}split(B,e=0){let t=this.matcher(B),i=[],s=0,C=0;for(;t.find();){if(C===0&&t.end()===0){C=t.end();continue}if(e>0&&i.length===e-1)break;if(C===t.start()){if(e===0){s+=1,C=t.end();continue}}else for(;s>0;)i.push(""),s-=1;i.push(t.substring(C,t.start())),C=t.end();}if(e===0&&C!==t.inputLength()){for(;s>0;)i.push(""),s-=1;i.push(t.substring(C,t.inputLength()));}return (e!==0||i.length===0)&&i.push(t.substring(C,t.inputLength())),i}*matchAll(B){let e=this.matcher(B);for(;e.find();){let t=[e.group(0)];for(let s=1;s<=e.groupCount();s++){let C=e.group(s);t.push(C===null?void 0:C);}t.index=e.start(0),t.input=B;let i=this.namedGroups();if(Object.keys(i).length>0){let s=e.getNamedGroups();for(let C in s)s[C]===null&&(s[C]=void 0);t.groups=s;}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 Ce=["number","string","boolean","wref","array"],Xn=new Set(Ce),Q=new Set([...Ce,...Ce.map(n=>`${n}?`)]);function K(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}var fB=new Set(["minLength","maxLength","pattern","enum"]),gB=new Set(["minimum","maximum","integer"]),mB=new Set(["shape"]),dB=new Set(["items","minItems","maxItems"]),At=new Set(["type","description"]),xB=new Set([...At,...fB,...gB,...mB,...dB]),$n={string:fB,number:gB,wref:mB,array:dB,boolean:new Set};function _(n){if(!K(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=$n[B]??new Set;return !(!Object.keys(n).every(t=>At.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)&&(typeof n.type=="string"&&n.type.endsWith("?")?n.type.slice(0,-1):n.type)!=="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"&&Q.has(n.shape)&&(typeof n.type=="string"&&n.type.endsWith("?")?n.type.slice(0,-1):n.type)!=="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 Zn(n){return typeof n=="string"&&Q.has(n)?n:_(n)?n.type:null}function St(n){let B=Zn(n);if(!B)return null;let e=B.endsWith("?")?B.slice(0,-1):B;return Xn.has(e)?e:null}var V=64*1024,OB=256,FB=256,Bi="uses unsupported regex syntax",re=`WarmHub content fields are limited to ${V} bytes. WarmHub is not a document store; store large documents in S3, Box, Drive, or another document system and reference them from WarmHub instead.`,ei=new TextEncoder;function sB(n){return ei.encode(n).byteLength}function oe(n,B){if(B.length*3<=V)return null;let e=sB(B);return e<=V?null:`Field "${n}" is ${e} bytes; ${re}`}function MB(n,B,e){let t=oe(n,B);t&&e.push(t);}function kB(n){try{return new RegExp(n),!1}catch{return true}}function ti(n){let B="",e=false;for(let t=0;t<n.length;t++){let i=n[t];if(i==="\\"){let s=n[t+1];if(e&&s==="b"){B+="\\x08",t++;continue}B+=i,s!==void 0&&(B+=s,t++);continue}i==="["?e=true:i==="]"&&(e=false),B+=i;}return B}function ae(n){try{return It.compile(ti(n))}catch{return}}function Nt(n){return ae(n)?void 0:Bi}function W(n){return typeof n=="string"&&n.endsWith("?")?{spec:n.slice(0,-1),optionalByType:true}:_(n)&&typeof n.type=="string"&&n.type.endsWith("?")?{spec:{...n,type:n.type.slice(0,-1)},optionalByType:true}:{spec:n,optionalByType:false}}function JB(n,B){return n?.endsWith("?")||W(B).optionalByType}var Tt=["org:read","org:configure","org:admin","org:action-callback"];function ni(n){return Tt.includes(n)}var le=new Set([8203,8204,8205,8288,8294,8295,8296,8297,8234,8235,8236,8237,8238,8232,8233]);function ue(n){return n<=31||n===127||n>=128&&n<=159}function ii(n){return n<=65535?`\\u${n.toString(16).padStart(4,"0")}`:`\\u{${n.toString(16)}}`}function si(n){for(let B of n){let e=B.codePointAt(0);if(e!==void 0&&(ue(e)||le.has(e)||e===34))return true}return false}function Ci(n){return n.length<=120?n:`${n.slice(0,120)}...<truncated>`}function Rt(n){if(!si(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+=ue(i)||le.has(i)?ii(i):t);}return e}function y(n){return Ci(Rt(n))}function ri(n){return Rt(n)}function IB(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(ue(e))return {unsafe:true,reason:`control character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`};if(le.has(e))return {unsafe:true,reason:`format or separator character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`}}}return {unsafe:false}}function AB(n){return n.endsWith("?")?n.slice(0,-1):n}function BB(...n){return Lt(y,n)}function SB(...n){return Lt(ri,n)}function Lt(n,B){return B.map(e=>typeof e=="number"?`[${e}]`:n(e)).join(".").replace(/\.\[/g,"[")}function bt(n,B){return he(B)(n)}function oi(n){let B=new Set;for(let e of Object.keys(n))B.add(e.endsWith("?")?e.slice(0,-1):e);return B}function ai(n,B){let e=[],t=0;for(let i of Object.keys(n))B.has(i)||(t++,e.length<UB&&e.push(i));if(t!==0)return t>UB?{undeclaredFields:e,undeclaredFieldsTruncated:true,totalUndeclared:t}:{undeclaredFields:e}}var UB=500;function he(n){let B=Gt(n),e=oi(n);return t=>{let i=[];if(typeof t!="object"||t===null||Array.isArray(t))return {valid:false,errors:["Data must be a plain object"]};for(let C of B){let r=t[C.fieldName];if(r==null){C.isOptional||i.push(`Missing required field: "${C.displayName}"`);continue}C.validate(C.displayName,r,i);}NB(t,n,i);let s=ai(t,e);return i.length>0?s?{valid:false,errors:i,warnings:s}:{valid:false,errors:i}:s?{valid:true,warnings:s}:{valid:true}}}function NB(n,B,e,t){let i=W(B).spec;if(typeof n=="string"){if(li(i)||ui(i)||i!==void 0)return;MB(t??"<value>",n,e);return}if(Array.isArray(n)){let C=ci(i);if(i!==void 0&&C===void 0&&!hi(i))return;for(let r=0;r<n.length;r++)NB(n[r],C,e,`${t??"<value>"}[${r}]`);return}if(!K(n))return;let s=Ei(i);if(!(i!==void 0&&s===void 0))for(let[C,r]of Object.entries(n)){let o=t?BB(t,C):y(C);MB(o,C,e),NB(r,s?.get(C),e,o);}}function li(n){return n==="string"?true:_(n)&&n.type==="string"}function ui(n){return n==="wref"?true:_(n)&&n.type==="wref"}function ci(n){if(Array.isArray(n))return n[0];if(_(n)&&n.type==="array")return n.items}function hi(n){return n==="array"||Array.isArray(n)?true:_(n)&&n.type==="array"}function Ei(n){if(!K(n)||_(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}function Gt(n){return Object.entries(n).map(([B,e])=>{let t=B.endsWith("?")?B.slice(0,-1):B,i=W(e);return {fieldName:t,displayName:y(t),isOptional:JB(B,e),validate:ce(i.spec)}})}function ce(n){if(typeof n=="string")return (B,e,t)=>wt(B,e,n,t);if(Array.isArray(n)){let B=n.length>0?ce(W(n[0]).spec):void 0;return (e,t,i)=>{if(!Array.isArray(t))i.push(`Field "${e}" expected array, got ${typeof t}`);else if(B)for(let s=0;s<t.length;s++)B(`${e}[${s}]`,t[s],i);}}if(_(n)){if((n.type.endsWith("?")?n.type.slice(0,-1):n.type)==="array"){let t="items"in n&&n.items!=null?ce(W(n.items).spec):void 0;return (i,s,C)=>{if(!Array.isArray(s)){C.push(`Field "${i}" expected array, got ${typeof s}`);return}if(typeof n.minItems=="number"&&s.length<n.minItems&&C.push(`Field "${i}" has ${s.length} items, minimum is ${n.minItems}`),typeof n.maxItems=="number"&&s.length>n.maxItems&&C.push(`Field "${i}" has ${s.length} items, maximum is ${n.maxItems}`),t)for(let r=0;r<s.length;r++)t(`${i}[${r}]`,s[r],C);}}let e=pi(n);return (t,i,s)=>{wt(t,i,n.type,s),e(t,i,s);}}if(K(n)){let B=Gt(n);return (e,t,i)=>{if(typeof t!="object"||t===null||Array.isArray(t)){i.push(`Field "${e}" expected object, got ${typeof t}`);return}let s=t;for(let C of B){let r=s[C.fieldName],o=BB(e,C.fieldName);if(r==null){C.isOptional||i.push(`Missing required field: "${o}"`);continue}C.validate(o,r,i);}}}return ()=>{}}function pi(n){let B=typeof n.pattern=="string"?n.pattern:void 0,e=B===void 0?void 0:Di(B);return (t,i,s)=>{if(typeof i=="string"){if(typeof n.minLength=="number"&&i.length<n.minLength&&s.push(`Field "${t}" length ${i.length} is below minimum ${n.minLength}`),typeof n.maxLength=="number"&&i.length>n.maxLength&&s.push(`Field "${t}" length ${i.length} exceeds maximum ${n.maxLength}`),B!==void 0){let C=y(B);e?.kind==="unsupported"?s.push(`Field "${t}" has unsupported pattern "${C}"`):e?.kind==="invalid"?s.push(`Field "${t}" has invalid pattern "${C}" \u2014 skipping regex check`):e?.kind==="compiled"&&!e.regex.test(i)&&s.push(`Field "${t}" does not match pattern "${C}"`);}Array.isArray(n.enum)&&!n.enum.includes(i)&&s.push(`Field "${t}" value "${y(String(i))}" is not in allowed values: ${n.enum.map(C=>y(String(C))).join(", ")}`);}typeof i=="number"&&(typeof n.minimum=="number"&&i<n.minimum&&s.push(`Field "${t}" value ${i} is below minimum ${n.minimum}`),typeof n.maximum=="number"&&i>n.maximum&&s.push(`Field "${t}" value ${i} exceeds maximum ${n.maximum}`),n.integer===true&&!Number.isInteger(i)&&s.push(`Field "${t}" must be an integer, got ${i}`));}}function Di(n){if(kB(n))return {kind:"invalid"};let B=ae(n);return B?{kind:"compiled",regex:B}:{kind:"unsupported"}}function wt(n,B,e,t){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}`):MB(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 Ee(n){return (n.endsWith("?")?n.slice(0,-1):n).toLowerCase()}function Ht(n){return n.split(".").map(B=>Ee(B)).join(".")}function fi(n,B){return n.allowUnsafeFieldNamePaths.has(B)}function TB(n,B,e,t,i){if(typeof e=="string"){Q.has(e)||t.push(`Invalid type at "${n}": "${y(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}TB(`${n}[]`,`${B}[]`,e[0],t,i);return}if(K(e)){if(_(e)){gi(n,B,e,t,i);return}if("type"in e&&typeof e.type=="string"&&Q.has(e.type)&&Object.keys(e).every(s=>xB.has(s))){let s=e.type.endsWith("?")?e.type.slice(0,-1):e.type,r=s==="string"?fB:s==="number"?gB:s==="wref"?mB:s==="array"?dB:new Set,o=Object.keys(e).filter(c=>c!=="type"&&c!=="description"&&!r.has(c));if(o.length>0&&o.some(E=>{let g=e[E];return typeof g!="string"&&!Array.isArray(g)&&!K(g)})){for(let E of o)t.push(`Constraint "${y(E)}" at "${n}" is not valid for type "${s}"`);return}if(o.length===0){let c=[];for(let[E,g]of Object.entries(e))E==="type"||E==="description"||r.has(E)&&((E==="minLength"||E==="maxLength"||E==="minimum"||E==="maximum"||E==="minItems"||E==="maxItems")&&typeof g!="number"?c.push(`Constraint "${E}" at "${n}" must be a number, got ${typeof g}`):E==="integer"&&typeof g!="boolean"?c.push(`Constraint "${E}" at "${n}" must be a boolean, got ${typeof g}`):E==="pattern"&&typeof g!="string"?c.push(`Constraint "${E}" at "${n}" must be a string, got ${typeof g}`):E==="enum"&&!Array.isArray(g)?c.push(`Constraint "${E}" at "${n}" must be an array, got ${typeof g}`):E==="shape"&&typeof g!="string"&&c.push(`Constraint "${E}" at "${n}" must be a string, got ${typeof g}`));if(c.length>0){t.push(...c);return}}if(Object.entries(e).some(([c,E])=>!(c==="type"||c==="description"||typeof E=="string"||Array.isArray(E)||K(E)))){t.push(`Object at "${n}" looks like a typed field object (type: "${y(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 r=AB(s),o=IB(r),u=BB(n,s),c=SB(B,s);if(o.unsafe&&!fi(i,c)){t.push(`Invalid field name at "${u}": ${o.reason}`);continue}TB(u,c,C,t,i);}return}t.push(`Invalid type at "${n}": expected string, array, or object, got ${typeof e}`);}function gi(n,B,e,t,i){let s=e.type;if(typeof s!="string"){t.push(`Invalid typed field object at "${n}": "type" must be a string`);return}if(!Q.has(s)){t.push(`Invalid type at "${n}.type": "${y(s)}" (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 C=s.endsWith("?")?s.slice(0,-1):s;for(let r of Object.keys(e)){if(r==="type"||r==="description")continue;let o=y(r);C==="string"?fB.has(r)||t.push(`Constraint "${o}" at "${n}" is not valid for type "string"`):C==="number"?gB.has(r)||t.push(`Constraint "${o}" at "${n}" is not valid for type "number"`):C==="wref"?mB.has(r)||t.push(`Constraint "${o}" at "${n}" is not valid for type "wref"`):C==="array"?dB.has(r)||t.push(`Constraint "${o}" at "${n}" is not valid for type "array"`):t.push(`Constraint "${o}" at "${n}" is not valid for type "${C}"`);}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"`),C==="string"&&typeof e.minLength=="number"&&Number.isFinite(e.minLength)&&Number.isInteger(e.minLength)&&e.minLength>V&&t.push(`"minLength" at "${n}" cannot exceed ${V}`),C==="string"&&typeof e.maxLength=="number"&&Number.isFinite(e.maxLength)&&Number.isInteger(e.maxLength)&&e.maxLength>V&&t.push(`"maxLength" at "${n}" cannot exceed ${V}`),"pattern"in e&&typeof e.pattern!="string"&&t.push(`"pattern" at "${n}" must be a string`),"pattern"in e&&typeof e.pattern=="string")if(kB(e.pattern))t.push(`"pattern" at "${n}" is not a valid regular expression`);else {let r=Nt(e.pattern);r&&t.push(`"pattern" at "${n}" ${r}`);}if("enum"in e){if(!Array.isArray(e.enum)||e.enum.length===0||!e.enum.every(r=>typeof r=="string"))t.push(`"enum" at "${n}" must be a non-empty array of strings`);else if(C==="string")for(let r of e.enum){let o=sB(r);if(o>V){t.push(`"enum" value at "${n}" is ${o} bytes; string enum values cannot exceed ${V} 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"`),C==="array"&&("items"in e?TB(`${n}.items`,`${B}.items`,e.items,t,i):t.push(`Typed array at "${n}" must have an "items" key specifying the element type`));}function mi(n={}){return {allowUnsafeFieldNamePaths:new Set(n.allowUnsafeFieldNamePaths??[])}}function di(n,B){return n.allowUnsafeFieldNamePaths.has(B)}var Oi=new Set(["fields","description"]);function vB(n,B=""){let e=[];for(let[t,i]of Object.entries(n)){let s=t.endsWith("?")?t.slice(0,-1):t,C=B?`${B}.${s}`:s,r=St(i);if(r==="string"||r==="wref"||r==="number"||r==="boolean"){e.push(C);continue}_(i)||K(i)&&e.push(...vB(i,C));}return e}function De(n){return !(!K(n)||Array.isArray(n)||_(n)||"type"in n&&typeof n.type=="string"&&Q.has(n.type)&&Object.keys(n).every(B=>xB.has(B)))}function yt(n,B,e,t,i=B){let s=new Map;for(let[C,r]of Object.entries(n)){let o=AB(C),u=IB(o),c=BB(B,C),E=SB(i,C);if(u.unsafe&&!di(t,E)){e.push(`Invalid field name at "${c}": ${u.reason}`);continue}let g=Ee(C),d=s.get(g);if(d!==void 0){e.push(`${BB(B,C)}: duplicate field name. Shape already declares "${y(d)}" (case-insensitive match).`);continue}s.set(g,C),De(r)?yt(r,c,e,t,E):TB(c,E,r,e,t);}}function pe(n,B,e){if(Array.isArray(B)){B.length===1&&pe(`${n}[]`,B[0],e);return}if(_(B)){let t=W(B).spec;_(t)&&typeof t.type=="string"&&t.type==="array"&&"items"in t&&pe(`${n}.items`,t.items,e);return}De(B)&&fe(B,n,e);}function fe(n,B,e){for(let[t,i]of Object.entries(n)){let s=SB(B,t);IB(AB(t)).unsafe&&e.push(s),De(i)?fe(i,s,e):pe(s,i,e);}}function _t(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 fe(B,"fields",e),e}function Pt(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))Oi.has(c)||t.push(`Unsupported shape definition key "${y(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 s=mi(B);yt(i,"fields",t,s);let C=vB(i),r=C.length,o=new Set,u=new Set;for(let c of C){let E=sB(c);E>FB&&t.push(`Indexable field path "${y(c)}" is ${E} bytes; maximum is ${FB}`);let g=Ht(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 "${y(c)}"; dotted field names, optional-key suffixes, and case-insensitive folded paths must not collide with another indexable path`);return r>OB&&t.push(`Shape declares ${r} indexable scalar fields; maximum is ${OB}`),"description"in e&&typeof e.description!="string"&&t.push('"description" must be a string'),NB(e,void 0,t),t.length>0?{valid:false,errors:t}:{valid:true}}function CB(n){if(!n||typeof n!="object")return JSON.stringify(n);if(Array.isArray(n))return `[${n.map(e=>CB(e)).join(",")}]`;let B=n;return `{${Object.keys(B).sort().map(e=>`${JSON.stringify(e)}:${CB(B[e])}`).join(",")}}`}var ge=["Arc","Bond","Pair","Set","List"],xt=["Triple"],Ii=[...ge,...xt];function Mt(n){return ge.includes(n)}function KB(n){return xt.includes(n)}function VB(n){return Ii.includes(n)}var Ai=["Content"];var Si=["Readme","Agents"],Ni=["LlmsTxt"],kt=n=>n==="Content";var Jt=n=>Si.includes(n),Ut=n=>Ni.includes(n);var vt=["View"],Ti=n=>vt.includes(n),Kt=["LicenseSubject","LicenseDeclaration"],Ri=n=>Kt.includes(n);function Vt(n){return VB(n)||Ti(n)||Ri(n)}function jB(n){return ge.includes(n)||Ai.includes(n)||vt.includes(n)||Kt.includes(n)}function jt(n,B){let e=[];return Pi(n,e,B?.checkAddAdd??true,B),e}function yi(n,B){return B?.sourceOperationIndexes?.[n]??n}function _i(n){return n.name}function Pi(n,B,e,t){let i=new Map;for(let s=0;s<n.length;s++){let C=n[s];if(!C)continue;let r=_i(C);if(!r)continue;let u=XB({...C,name:r})==="shape"?`shape:${r}`:`thing:${r}`,c=i.get(u)??[];c.push({operation:C.operation,index:yi(s,t)}),i.set(u,c);}for(let[s,C]of i)if(!(C.length<2))for(let r=1;r<C.length;r++){let o=C[r-1],u=C[r];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 "${s}" twice in the same commit`}),c==="revise+add"&&B.push({code:"ILLEGAL_OP_SEQUENCE",operationIndex:u.index,message:`Cannot revise then add "${s}" in the same commit`});}}var xi=["arc","bond","set","list","pair"],Mi=["arc","bond","set","list"],ki=["add","revise"],me="Collection create requires a name. Collections are ordinary named things (ADR 0004).",de='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 Ji(n){return xi.find(B=>B===n)??null}function Ui(n){return ki.find(B=>B===n)??null}function Yt(n,B){let e=[];return e.push(...vi(n,B)),e.push(...Ki(n,B)),e.push(...Vi(n,B)),e.push(...ji(n,B)),e.push(...Yi(n,B)),e}function vi(n,B){let e=[],t=n.name,i=n.operation==="rename"&&(n.kind==="shape"||n.name!==void 0&&!tB(n.name)),s=i&&t!==void 0&&Vt(t)&&n.newName!==void 0&&!VB(n.newName)&&!jB(n.newName);if(t&&KB(t)&&!s&&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&&!tB(n.name))&&n.newName&&KB(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 C=t&&jB(t)&&!s?t:i&&n.newName&&jB(n.newName)?n.newName:void 0;if(C&&(i||n.operation!=="retract"&&n.kind==="shape")){let r=n.operation==="add"?"created":n.operation==="rename"?"renamed":"revised";e.push({code:"RESERVED_NAME",operationIndex:B,message:`Shape "${C}" is a built-in shape and cannot be ${r} manually`});}}if(t){let C=tB(t);if(C&&KB(C.shapePrefix))e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Cannot ${n.operation} under retired collection shape "${C.shapePrefix}". Triple is read-only and retired for new collection writes.`});else if(n.kind==="thing"&&C&&Mt(C.shapePrefix)){let r=n.operation==="add"?`Cannot add kind="thing" under built-in shape "${C.shapePrefix}". Use kind="collection" instead.`:`Cannot revise kind="thing" under built-in shape "${C.shapePrefix}". Use kind="collection" to revise a collection.`;e.push({code:"VALIDATION_ERROR",operationIndex:B,message:r});}}return e}function Ki(n,B){if(n.kind!=="thing"||!n.name)return [];let e=tB(n.name);if(!e||!kt(e.shapePrefix))return [];let t=e.bareName;return Ut(t)?[{code:"READ_ONLY_BUILTIN_CONTENT",operationIndex:B,message:`${e.shapePrefix}/${t} is synthesized; writes are not allowed`}]:Jt(t)?[]:[{code:"UNKNOWN_CONTENT_NAME",operationIndex:B,message:`${e.shapePrefix}/${t} is not a recognized well-known content name`}]}function Vi(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=tB(t);if(i&&VB(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 ji(n,B){let e=[];return !n.about||typeof n.about=="string"||e.push({code:"VALIDATION_ERROR",operationIndex:B,message:de}),e}function Yi(n,B){let e=[];if(n.kind!=="collection"||Ui(n.operation)===null)return e;n.operation==="add"&&!n.name&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:me});let t=Ji(n.type);if(t===null&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Collection "type" is invalid. Use one of: ${Mi.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=Qi(t,n.members);i&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:i});}return e}function Qi(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 Wi(n,B){return Yt(n,B)}function qi(n,B){return jt(n,B)}var Ae=67108864,QB=10,Qt="warmhub-repository-checkpoint",Wt=1,zi="repository-checkpoint.json";var Se=z$1.string().regex(/^[0-9a-f]{64}$/),Fe=z$1.number().int().nonnegative().safe(),Ie=z$1.number().int().positive().safe(),Xi=z$1.number().finite().refine(n=>!Number.isInteger(n)||Number.isSafeInteger(n),"JSON integers must be safe integers"),YB=z$1.lazy(()=>z$1.union([z$1.null(),z$1.boolean(),Xi,z$1.string(),z$1.array(YB),z$1.record(z$1.string(),YB)])),Oe=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:YB}),$i=z$1.string().regex(/^[^\r\n]+@v[1-9]\d*$/),Ne=z$1.discriminatedUnion("kind",[Oe.extend({kind:z$1.literal("shape")}).strict(),Oe.extend({kind:z$1.enum(["thing","collection"]),shapeName:z$1.string().min(1)}).strict(),Oe.extend({kind:z$1.literal("assertion"),shapeName:z$1.string().min(1),aboutWref:$i}).strict()]),qt=z$1.object({part:Fe,path:z$1.string().min(1),recordCount:Ie,byteLength:Ie,sha256:Se}).strict(),zt=z$1.object({shapeName:z$1.string().min(1),recordCount:Ie,chunks:z$1.array(qt).min(1)}).strict(),Zi={format:z$1.literal(Qt),formatVersion:z$1.literal(Wt),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:Fe,complete:z$1.literal(true),recordCount:Fe,streams:z$1.array(zt)},Te=z$1.object(Zi).strict(),WB=Te.extend({contentSha256:Se}).strict();var Bs=new TextEncoder;async function qB(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 RB(n){return z(n),Bs.encode(n)}function z(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 zB(n,B){z(n),z(B);let e=0,t=0;for(;e<n.length&&t<B.length;){let i=n.codePointAt(e),s=B.codePointAt(t);if(i===void 0||s===void 0)break;let C=i-s;if(C!==0)return C;e+=i>65535?2:1,t+=s>65535?2:1;}return e===n.length&&t===B.length?0:e===n.length?-1:1}var Xt=10**QB-1;async function es(n){if(n.length===0)throw new RangeError("Checkpoint Shape name must not be empty");return qB(RB(n))}async function ts(n,B){return ns(B),`records/${await es(n)}/part-${B.toString().padStart(QB,"0")}.jsonl`}async function $t(n,B,e){let t=await ts(B,e);if(n!==t)throw new Error("Checkpoint chunk path does not match its Shape and part")}function ns(n){if(!Number.isSafeInteger(n)||n<0||n>Xt)throw new RangeError(`Checkpoint chunk part must be an integer from 0 through ${Xt}`)}var is=new TextDecoder("utf-8",{fatal:true});async function Re(n){let B=WB.parse(n),{contentSha256:e,...t}=B;await rs(t);let i=await Cs(t);if(e!==i)throw new Error("Checkpoint manifest content digest does not match");return B}async function Bn(n){let B=await Re(n);return RB(`${CB(B)}
21
- `)}async function ss(n){os(n);let B=is.decode(n),e=await Re(WB.parse(JSON.parse(B.slice(0,-1)))),t=await Bn(e);if(!as(n,t))throw new Error("Checkpoint manifest bytes are not canonical");return e}async function Cs(n){return qB(RB(CB(n)))}async function rs(n){let B,e=0;for(let t of n.streams){if(B!==void 0&&zB(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[s,C]of t.chunks.entries()){if(C.part!==s)throw new Error("Checkpoint manifest chunk parts must be contiguous and zero-based");if(await $t(C.path,t.shapeName,C.part),C.byteLength>Ae&&C.recordCount!==1)throw new Error("An oversized checkpoint chunk must contain exactly one row");i=Zt(i,C.recordCount);}if(t.recordCount!==i)throw new Error("Checkpoint manifest stream record count does not match");e=Zt(e,t.recordCount);}if(n.recordCount!==e)throw new Error("Checkpoint manifest record count does not match")}function Zt(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 os(n){if(n.length===0||n.at(-1)!==10)throw new Error("Checkpoint manifest must end with one LF");if(n.length>=3&&n[0]===239&&n[1]===187&&n[2]===191)throw new Error("Checkpoint manifest must not contain a UTF-8 BOM");for(let B=0;B<n.length-1;B+=1)if(n[B]===10||n[B]===13)throw new Error("Checkpoint manifest must contain exactly one LF and no CR")}function as(n,B){return n.length!==B.length?false:n.every((e,t)=>e===B[t])}new TextEncoder;var ls=new TextDecoder("utf-8",{fatal:true});function us(n){if(n.length===0||n[n.length-1]!==10)throw new Error("Checkpoint row must end with one LF");if(n.length>=3&&n[0]===239&&n[1]===187&&n[2]===191)throw new Error("Checkpoint row must not contain a UTF-8 BOM");for(let t=0;t<n.length-1;t+=1)if(n[t]===10||n[t]===13)throw new Error("Checkpoint row must contain exactly one LF and no CR");let B=ls.decode(n),e=Ne.parse(JSON.parse(B.slice(0,-1)));if(B!==`${CB(e)}
22
- `)throw new Error("Checkpoint row bytes are not canonical");return e}function cs(n){if(n.length===0)throw new Error("Checkpoint stream Shape name must not be empty");return z(n),{shapeName:n,recordCount:0,hasShapeDefinition:false}}function hs(n,B){let e=B;if(z(e.wref),z(e.durableId),e.kind==="assertion"&&z(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&&zB(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=ps(n.recordCount),e}function Es(n){if(!n.hasShapeDefinition)throw new Error("Checkpoint stream must contain its matching Shape definition");return n.recordCount}function ps(n){let B=n+1;if(!Number.isSafeInteger(B))throw new RangeError("Checkpoint stream record count must be a safe integer");return B}/*! Bundled license information:
20
+ `)));let r=true;for(;!B.more()||B.peek()!==p.CODES.get("]")||r;){if(B.more()&&B.lookingAt("-")&&(this.flags&f.PERL_X)===0&&!r){let c=B.rest();if(c==="-"||!c.startsWith("-]"))throw B.rewindTo(e),new b(O.ERR_INVALID_CHAR_RANGE,B.rest())}r=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=O.parseClassChar(B,e),u=o;if(B.more()&&B.lookingAt("-")){if(B.skip(1),B.more()&&B.lookingAt("]"))B.skip(-1);else if(u=O.parseClassChar(B,e),u<o)throw new b(O.ERR_INVALID_CHAR_RANGE,B.from(C))}(this.flags&f.FOLD_CASE)===0?i.appendRange(o,u):i.appendFoldedRange(o,u);}B.skip(1),i.cleanClass(),s<0&&i.negateClass(),t.runes=i.toArray(),this.push(t);}},Bi=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}},ei=class iB{static initTest(B){let e=iB.compile(B),t=new iB(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 iB.compileImpl(B,f.PERL,false)}static compilePOSIX(B){return iB.compileImpl(B,f.POSIX,true)}static compileImpl(B,e,t){let i=At.parse(B,e),s=i.maxCap();i=It.simplify(i);let r=Xn.build(i),C=Ft.compileRegexp(i),o=new iB(B,C,s,t);o.prefilter=r.type===R.Type.NONE?null:r;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 iB.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 Bi,this.dfa=new dt(this.prog),this.onepass=Ye.compile(this.prog),this.prefilter=null;}matchPrefixComplete(B,e,t,i){if((t===f.ANCHOR_START||t===f.ANCHOR_BOTH)&&e!==0)return null;let s=-1,r=-1,C=B.prefixLength(this);if(t===f.UNANCHORED){let o=B.index(this,e);if(o<0)return null;s=e+o,r=s+C;}else if(t===f.ANCHOR_BOTH){if(B.endPos()!==C||B.index(this,0)!==0)return null;s=0,r=C;}else if(t===f.ANCHOR_START){if(B.index(this,0)!==0)return null;s=0,r=C;}if(s<0)return null;if(i>0){let o=new Int32Array(i).fill(-1);return o[0]=s,o[1]=r,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===f.UNANCHORED&&!this.prefilter.eval(B,e))return null;if(this.onepass!==null)return Ye.execute(this,B,e,t,i);if(i>0)return this.prog.numLb===0&&B.endPos()<=yB.maxBitStateLen(this.prog)?yB.execute(this,B,e,t,i):this.doExecuteNFA(B,e,t,i);if(this.prog.numLb===0){let s=this.dfa.match(B,e,t);if(s!==null)return s?[]:null;if(B.endPos()<=yB.maxBitStateLen(this.prog))return yB.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=_B.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 s=this.get(),r=false;s?s.next!==null&&(s=_B.fromMachine(s),r=true):(s=_B.fromRE2(this),r=true),s.init(i);let C=s.match(B,e,t)?s.submatches():null;return this.put(s,r),C}match(B){return this.executeEngine(L.fromUTF16(B),0,f.UNANCHORED,0)!==null}matchWithGroup(B,e,t,i,s){return B instanceof lB||(F.isByteArray(B)?B=DB.utf8(B):B=DB.utf16(B)),this.matchMachineInput(B,e,t,i,s)}matchMachineInput(B,e,t,i,s){if(e>t)return [false,null];let r=B.isUTF16Encoding()?L.fromUTF16(B.asCharSequence(),0,t):L.fromUTF8(B.asBytes(),0,t),C=this.executeEngine(r,e,i,2*s);return C===null?[false,null]:[true,C]}matchUTF8(B){return this.executeEngine(L.fromUTF8(B),0,f.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,s=0,r="",C=L.fromUTF16(B),o=0;for(;s<=B.length;){let u=this.executeEngine(C,s,f.UNANCHORED,2);if(u===null||u.length===0)break;r+=B.substring(i,u[0]),(u[1]>i||u[0]===0)&&(r+=e(B.substring(u[0],u[1])),o++),i=u[1];let c=C.step(s)&7;if(s+c>u[1]?s+=c:s+1>u[1]?s++:s=u[1],o>=t)break}return r+=B.substring(i),r}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=[],s=B.endPos();e<0&&(e=s+1);let r=0,C=0,o=-1;for(;C<e&&r<=s;){let u=this.executeEngine(B,r,f.UNANCHORED,this.prog.numCap);if(u===null||u.length===0)break;let c=true;if(u[1]===r){u[0]===o&&(c=false);let E=B.step(r);E<0?r=s+1:r+=E&7;}else r=u[1];o=u[1],c&&(i.push(t(this.pad(u))),C++);}return i}findUTF8(B){let e=this.executeEngine(L.fromUTF8(B),0,f.UNANCHORED,2);return e===null?null:B.slice(e[0],e[1])}findUTF8Index(B){let e=this.executeEngine(L.fromUTF8(B),0,f.UNANCHORED,2);return e===null?null:e.slice(0,2)}find(B){let e=this.executeEngine(L.fromUTF16(B),0,f.UNANCHORED,2);return e===null?"":B.substring(e[0],e[1])}findIndex(B){return this.executeEngine(L.fromUTF16(B),0,f.UNANCHORED,2)}findUTF8Submatch(B){let e=this.executeEngine(L.fromUTF8(B),0,f.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(L.fromUTF8(B),0,f.UNANCHORED,this.prog.numCap))}findSubmatch(B){let e=this.executeEngine(L.fromUTF16(B),0,f.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(L.fromUTF16(B),0,f.UNANCHORED,this.prog.numCap))}findAllUTF8(B,e){let t=this.allMatches(L.fromUTF8(B),e,i=>B.slice(i[0],i[1]));return t.length===0?null:t}findAllUTF8Index(B,e){let t=this.allMatches(L.fromUTF8(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAll(B,e){let t=this.allMatches(L.fromUTF16(B),e,i=>B.substring(i[0],i[1]));return t.length===0?null:t}findAllIndex(B,e){let t=this.allMatches(L.fromUTF16(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAllUTF8Submatch(B,e){let t=this.allMatches(L.fromUTF8(B),e,i=>{let s=new Array(i.length/2|0).fill(null);for(let r=0;r<s.length;r++)i[2*r]>=0&&(s[r]=B.slice(i[2*r],i[2*r+1]));return s});return t.length===0?null:t}findAllUTF8SubmatchIndex(B,e){let t=this.allMatches(L.fromUTF8(B),e);return t.length===0?null:t}findAllSubmatch(B,e){let t=this.allMatches(L.fromUTF16(B),e,i=>{let s=new Array(i.length/2|0).fill(null);for(let r=0;r<s.length;r++)i[2*r]>=0&&(s[r]=B.substring(i[2*r],i[2*r+1]));return s});return t.length===0?null:t}findAllSubmatchIndex(B,e){let t=this.allMatches(L.fromUTF16(B),e);return t.length===0?null:t}},ti=class oB{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,s=B.length;s===0&&(t="(?:)",i=true);let r=false,C=0;for(;C<s;){let u=B[C];if(u==="\\"){if(C+1<s)switch(u=B[C+1],u){case "\\":t+="\\\\",C+=2;continue;case "c":if(C+2<s){let g=B[C+2].charCodeAt(0);if(g>=65&&g<=90||g>=97&&g<=122){let m=g%32;t+="\\x",t+=(m>>4).toString(16).toUpperCase(),t+=(m&15).toString(16).toUpperCase(),C+=3,i=true;continue}}t+="c",C+=2,i=true;continue;case "u":if(C+2<s){if(B[C+2]==="{"){let g=C+3,m=false,A=false;for(;g<s;){let S=B[g];if(S==="}"){A=true;break}if(!oB.isHexadecimal(S))break;m=true,g++;}if(A&&m){t+="\\x",C+=2,i=true;continue}}else if(C+5<s){let g=true;for(let m=0;m<4;m++)if(!oB.isHexadecimal(B[C+2+m])){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<s&&B[C+2]==="{"){let m=C+3,A=false,S=false;for(;m<s;){let G=B[m];if(G==="}"){S=true;break}if(!oB.isHexadecimal(G))break;A=true,m++;}S&&A&&(g=true);}else C+3<s&&oB.isHexadecimal(B[C+2])&&oB.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 m=F.charCount(g);t+=B.substring(C+1,C+1+m),C+=m+1,i=true;}else {t+="\\";let m=F.charCount(g);t+=B.substring(C+1,C+1+m),C+=m+1;}continue}}}else if(u==="/"){t+="\\/",C+=1,i=true;continue}else if(u==="[")r=true;else if(u==="]")r=false;else if(!r&&u==="("&&C+2<s&&B[C+1]==="?"&&B[C+2]==="<"&&C+3<s&&!"=!>)".includes(B[C+3])){t+="(?P<",C+=3,i=true;continue}let c=B.codePointAt(C),E=F.charCount(c);t+=B.substring(C,C+E),C+=E;}let o=i?t:B;return e.length>0?`(?${e})${o}`:o}},St=class _{static CASE_INSENSITIVE=Y.CASE_INSENSITIVE;static DOTALL=Y.DOTALL;static MULTILINE=Y.MULTILINE;static DISABLE_UNICODE_GROUPS=Y.DISABLE_UNICODE_GROUPS;static LONGEST_MATCH=Y.LONGEST_MATCH;static LOOKBEHINDS=Y.LOOKBEHINDS;static quote(B){return F.quoteMeta(B)}static quoteReplacement(B,e=false){return ve.quoteReplacement(B,e)}static translateRegExp(B){return ti.translate(B)}static compile(B,e=0){let t=B;if((e&_.CASE_INSENSITIVE)!==0&&(t=`(?i)${t}`),(e&_.DOTALL)!==0&&(t=`(?s)${t}`),(e&_.MULTILINE)!==0&&(t=`(?m)${t}`),(e&-544)!==0)throw new Mn("Flags should only be a combination of MULTILINE, DOTALL, CASE_INSENSITIVE, DISABLE_UNICODE_GROUPS, LONGEST_MATCH, LOOKBEHINDS");let i=f.PERL;(e&_.DISABLE_UNICODE_GROUPS)!==0&&(i&=-129),(e&_.LOOKBEHINDS)!==0&&(i|=f.LOOKBEHIND);let s=new _(B,e);return s.re2Input=ei.compileImpl(t,i,(e&_.LONGEST_MATCH)!==0),s}static matches(B,e){return _.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 _(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=DB.utf8(B)),new ve(this,B)}test(B){return F.isByteArray(B)?this.re2Input.matchUTF8(B):this.re2Input.match(B)}testExact(B){let e=F.isByteArray(B)?L.fromUTF8(B):L.fromUTF16(B);return this.re2Input.executeEngine(e,0,f.ANCHOR_BOTH,0)!==null}split(B,e=0){let t=this.matcher(B),i=[],s=0,r=0;for(;t.find();){if(r===0&&t.end()===0){r=t.end();continue}if(e>0&&i.length===e-1)break;if(r===t.start()){if(e===0){s+=1,r=t.end();continue}}else for(;s>0;)i.push(""),s-=1;i.push(t.substring(r,t.start())),r=t.end();}if(e===0&&r!==t.inputLength()){for(;s>0;)i.push(""),s-=1;i.push(t.substring(r,t.inputLength()));}return (e!==0||i.length===0)&&i.push(t.substring(r,t.inputLength())),i}*matchAll(B){let e=this.matcher(B);for(;e.find();){let t=[e.group(0)];for(let s=1;s<=e.groupCount();s++){let r=e.group(s);t.push(r===null?void 0:r);}t.index=e.start(0),t.input=B;let i=this.namedGroups();if(Object.keys(i).length>0){let s=e.getNamedGroups();for(let r in s)s[r]===null&&(s[r]=void 0);t.groups=s;}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 Ce=["number","string","boolean","wref","array"],ni=new Set(Ce),W=new Set([...Ce,...Ce.map(n=>`${n}?`)]);function U(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}var gB=new Set(["minLength","maxLength","pattern","enum"]),dB=new Set(["minimum","maximum","integer"]),mB=new Set(["shape"]),OB=new Set(["items","minItems","maxItems"]),Nt=new Set(["type","description"]),MB=new Set([...Nt,...gB,...dB,...mB,...OB]),ii={string:gB,number:dB,wref:mB,array:OB,boolean:new Set};function P(n){if(!U(n)||!("type"in n)||typeof n.type!="string"||!W.has(n.type))return false;let B=n.type.endsWith("?")?n.type.slice(0,-1):n.type,e=ii[B]??new Set;return !(!Object.keys(n).every(t=>Nt.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"&&W.has(n.pattern)&&(typeof n.type=="string"&&n.type.endsWith("?")?n.type.slice(0,-1):n.type)!=="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"&&W.has(n.shape)&&(typeof n.type=="string"&&n.type.endsWith("?")?n.type.slice(0,-1):n.type)!=="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 si(n){return typeof n=="string"&&W.has(n)?n:P(n)?n.type:null}function Tt(n){let B=si(n);if(!B)return null;let e=B.endsWith("?")?B.slice(0,-1):B;return ni.has(e)?e:null}var V=64*1024,FB=256,IB=256,ri="uses unsupported regex syntax",oe=`WarmHub content fields are limited to ${V} 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 sB(n){return Ci.encode(n).byteLength}function ae(n,B){if(B.length*3<=V)return null;let e=sB(B);return e<=V?null:`Field "${n}" is ${e} bytes; ${oe}`}function AB(n,B,e){let t=ae(n,B);t&&e.push(t);}function kB(n){try{return new RegExp(n),!1}catch{return true}}function oi(n){let B="",e=false;for(let t=0;t<n.length;t++){let i=n[t];if(i==="\\"){let s=n[t+1];if(e&&s==="b"){B+="\\x08",t++;continue}B+=i,s!==void 0&&(B+=s,t++);continue}i==="["?e=true:i==="]"&&(e=false),B+=i;}return B}function le(n){try{return St.compile(oi(n))}catch{return}}function Rt(n){return le(n)?void 0:ri}function Q(n){return typeof n=="string"&&n.endsWith("?")?{spec:n.slice(0,-1),optionalByType:true}:P(n)&&typeof n.type=="string"&&n.type.endsWith("?")?{spec:{...n,type:n.type.slice(0,-1)},optionalByType:true}:{spec:n,optionalByType:false}}function JB(n,B){return n?.endsWith("?")||Q(B).optionalByType}var Lt=["org:read","org:configure","org:admin","org:action-callback"];function ai(n){return Lt.includes(n)}var ue=new Set([8203,8204,8205,8288,8294,8295,8296,8297,8234,8235,8236,8237,8238,8232,8233]);function ce(n){return n<=31||n===127||n>=128&&n<=159}function li(n){return n<=65535?`\\u${n.toString(16).padStart(4,"0")}`:`\\u{${n.toString(16)}}`}function ui(n){for(let B of n){let e=B.codePointAt(0);if(e!==void 0&&(ce(e)||ue.has(e)||e===34))return true}return false}function ci(n){return n.length<=120?n:`${n.slice(0,120)}...<truncated>`}function wt(n){if(!ui(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+=ce(i)||ue.has(i)?li(i):t);}return e}function y(n){return ci(wt(n))}function hi(n){return wt(n)}function SB(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(ce(e))return {unsafe:true,reason:`control character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`};if(ue.has(e))return {unsafe:true,reason:`format or separator character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`}}}return {unsafe:false}}function NB(n){return n.endsWith("?")?n.slice(0,-1):n}function z(...n){return bt(y,n)}function TB(...n){return bt(hi,n)}function bt(n,B){return B.map(e=>typeof e=="number"?`[${e}]`:n(e)).join(".").replace(/\.\[/g,"[")}function uB(n,B,e,t){let i=Ei(B);if(typeof n=="string"){if(i.length>0)return;AB(t??"<value>",n,e);return}if(Array.isArray(n)){let r=i.filter(Di);if(i.length>0&&r.length===0)return;let C=UB(r.map(pi));for(let o=0;o<n.length;o++)uB(n[o],C,e,`${t??"<value>"}[${o}]`);return}if(!U(n))return;let s=UB(i.map(fi));if(!(i.length>0&&s.length===0))for(let[r,C]of Object.entries(n)){let o=t?z(t,r):y(r);AB(o,r,e),uB(C,UB(s.map(u=>u.get(r))),e,o);}}function Ei(n){return UB(n.map(B=>Q(B).spec))}function UB(n){return n.filter(B=>B!==void 0)}function pi(n){if(Array.isArray(n))return n[0];if(P(n)&&n.type==="array")return n.items}function Di(n){return n==="array"||Array.isArray(n)?true:P(n)&&n.type==="array"}function fi(n){if(!U(n)||P(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 vB=500;function yt(n){let B=new Set;for(let e of Object.keys(n))B.add(e.endsWith("?")?e.slice(0,-1):e);return B}function Ht(n,B){let e=[],t=0;for(let i of Object.keys(n))B.has(i)||(t++,e.length<vB&&e.push(i));if(t!==0)return t>vB?{undeclaredFields:e,undeclaredFieldsTruncated:true,totalUndeclared:t}:{undeclaredFields:e}}function _t(n){let B=Pt(n);return (e,t)=>{for(let i of B){let s=e[i.fieldName];if(s==null){i.isOptional||t.push(`Missing required field: "${i.displayName}"`);continue}i.validate(i.displayName,s,t);}}}function Pt(n){return Object.entries(n).map(([B,e])=>{let t=B.endsWith("?")?B.slice(0,-1):B,i=Q(e);return {fieldName:t,displayName:y(t),isOptional:JB(B,e),validate:he(i.spec)}})}function he(n){if(typeof n=="string")return (B,e,t)=>Gt(B,e,n,t);if(Array.isArray(n)){let B=n.length>0?he(Q(n[0]).spec):void 0;return (e,t,i)=>{if(!Array.isArray(t))i.push(`Field "${e}" expected array, got ${typeof t}`);else if(B)for(let s=0;s<t.length;s++)B(`${e}[${s}]`,t[s],i);}}if(P(n)){if((n.type.endsWith("?")?n.type.slice(0,-1):n.type)==="array"){let t="items"in n&&n.items!=null?he(Q(n.items).spec):void 0;return (i,s,r)=>{if(!Array.isArray(s)){r.push(`Field "${i}" expected array, got ${typeof s}`);return}if(typeof n.minItems=="number"&&s.length<n.minItems&&r.push(`Field "${i}" has ${s.length} items, minimum is ${n.minItems}`),typeof n.maxItems=="number"&&s.length>n.maxItems&&r.push(`Field "${i}" has ${s.length} items, maximum is ${n.maxItems}`),t)for(let C=0;C<s.length;C++)t(`${i}[${C}]`,s[C],r);}}let e=gi(n);return (t,i,s)=>{Gt(t,i,n.type,s),e(t,i,s);}}if(U(n)){let B=Pt(n);return (e,t,i)=>{if(typeof t!="object"||t===null||Array.isArray(t)){i.push(`Field "${e}" expected object, got ${typeof t}`);return}let s=t;for(let r of B){let C=s[r.fieldName],o=z(e,r.fieldName);if(C==null){r.isOptional||i.push(`Missing required field: "${o}"`);continue}r.validate(o,C,i);}}}return ()=>{}}function gi(n){let B=typeof n.pattern=="string"?n.pattern:void 0,e=B===void 0?void 0:di(B);return (t,i,s)=>{if(typeof i=="string"){if(typeof n.minLength=="number"&&i.length<n.minLength&&s.push(`Field "${t}" length ${i.length} is below minimum ${n.minLength}`),typeof n.maxLength=="number"&&i.length>n.maxLength&&s.push(`Field "${t}" length ${i.length} exceeds maximum ${n.maxLength}`),B!==void 0){let r=y(B);e?.kind==="unsupported"?s.push(`Field "${t}" has unsupported pattern "${r}"`):e?.kind==="invalid"?s.push(`Field "${t}" has invalid pattern "${r}" \u2014 skipping regex check`):e?.kind==="compiled"&&!e.regex.test(i)&&s.push(`Field "${t}" does not match pattern "${r}"`);}Array.isArray(n.enum)&&!n.enum.includes(i)&&s.push(`Field "${t}" value "${y(String(i))}" is not in allowed values: ${n.enum.map(r=>y(String(r))).join(", ")}`);}typeof i=="number"&&(typeof n.minimum=="number"&&i<n.minimum&&s.push(`Field "${t}" value ${i} is below minimum ${n.minimum}`),typeof n.maximum=="number"&&i>n.maximum&&s.push(`Field "${t}" value ${i} exceeds maximum ${n.maximum}`),n.integer===true&&!Number.isInteger(i)&&s.push(`Field "${t}" must be an integer, got ${i}`));}}function di(n){if(kB(n))return {kind:"invalid"};let B=le(n);return B?{kind:"compiled",regex:B}:{kind:"unsupported"}}function Gt(n,B,e,t){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}`):AB(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 Ee(n){let B=n.map(i=>_t(i.fields)),e=new Set;for(let i of n)for(let s of yt(i.fields))e.add(s);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 s=i,r=[];for(let o of B)o(s,r);uB(s,t,r);let C=Ht(s,e);return r.length>0?C?{valid:false,errors:r,warnings:C}:{valid:false,errors:r}:C?{valid:true,warnings:C}:{valid:true}}}function xt(n,B){return pe(B)(n)}function pe(n){return Ee([{name:"",fields:n}])}function De(n){return (n.endsWith("?")?n.slice(0,-1):n).toLowerCase()}function Mt(n){return n.split(".").map(B=>De(B)).join(".")}function mi(n,B){return n.allowUnsafeFieldNamePaths.has(B)}function RB(n,B,e,t,i){if(typeof e=="string"){W.has(e)||t.push(`Invalid type at "${n}": "${y(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}RB(`${n}[]`,`${B}[]`,e[0],t,i);return}if(U(e)){if(P(e)){Oi(n,B,e,t,i);return}if("type"in e&&typeof e.type=="string"&&W.has(e.type)&&Object.keys(e).every(s=>MB.has(s))){let s=e.type.endsWith("?")?e.type.slice(0,-1):e.type,C=s==="string"?gB:s==="number"?dB:s==="wref"?mB:s==="array"?OB:new Set,o=Object.keys(e).filter(c=>c!=="type"&&c!=="description"&&!C.has(c));if(o.length>0&&o.some(E=>{let g=e[E];return typeof g!="string"&&!Array.isArray(g)&&!U(g)})){for(let E of o)t.push(`Constraint "${y(E)}" at "${n}" is not valid for type "${s}"`);return}if(o.length===0){let c=[];for(let[E,g]of Object.entries(e))E==="type"||E==="description"||C.has(E)&&((E==="minLength"||E==="maxLength"||E==="minimum"||E==="maximum"||E==="minItems"||E==="maxItems")&&typeof g!="number"?c.push(`Constraint "${E}" at "${n}" must be a number, got ${typeof g}`):E==="integer"&&typeof g!="boolean"?c.push(`Constraint "${E}" at "${n}" must be a boolean, got ${typeof g}`):E==="pattern"&&typeof g!="string"?c.push(`Constraint "${E}" at "${n}" must be a string, got ${typeof g}`):E==="enum"&&!Array.isArray(g)?c.push(`Constraint "${E}" at "${n}" must be an array, got ${typeof g}`):E==="shape"&&typeof g!="string"&&c.push(`Constraint "${E}" at "${n}" must be a string, got ${typeof g}`));if(c.length>0){t.push(...c);return}}if(Object.entries(e).some(([c,E])=>!(c==="type"||c==="description"||typeof E=="string"||Array.isArray(E)||U(E)))){t.push(`Object at "${n}" looks like a typed field object (type: "${y(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,r]of Object.entries(e)){let C=NB(s),o=SB(C),u=z(n,s),c=TB(B,s);if(o.unsafe&&!mi(i,c)){t.push(`Invalid field name at "${u}": ${o.reason}`);continue}RB(u,c,r,t,i);}return}t.push(`Invalid type at "${n}": expected string, array, or object, got ${typeof e}`);}function Oi(n,B,e,t,i){let s=e.type;if(typeof s!="string"){t.push(`Invalid typed field object at "${n}": "type" must be a string`);return}if(!W.has(s)){t.push(`Invalid type at "${n}.type": "${y(s)}" (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 r=s.endsWith("?")?s.slice(0,-1):s;for(let C of Object.keys(e)){if(C==="type"||C==="description")continue;let o=y(C);r==="string"?gB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "string"`):r==="number"?dB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "number"`):r==="wref"?mB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "wref"`):r==="array"?OB.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 "${r}"`);}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"`),r==="string"&&typeof e.minLength=="number"&&Number.isFinite(e.minLength)&&Number.isInteger(e.minLength)&&e.minLength>V&&t.push(`"minLength" at "${n}" cannot exceed ${V}`),r==="string"&&typeof e.maxLength=="number"&&Number.isFinite(e.maxLength)&&Number.isInteger(e.maxLength)&&e.maxLength>V&&t.push(`"maxLength" at "${n}" cannot exceed ${V}`),"pattern"in e&&typeof e.pattern!="string"&&t.push(`"pattern" at "${n}" must be a string`),"pattern"in e&&typeof e.pattern=="string")if(kB(e.pattern))t.push(`"pattern" at "${n}" is not a valid regular expression`);else {let C=Rt(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(r==="string")for(let C of e.enum){let o=sB(C);if(o>V){t.push(`"enum" value at "${n}" is ${o} bytes; string enum values cannot exceed ${V} 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"`),r==="array"&&("items"in e?RB(`${n}.items`,`${B}.items`,e.items,t,i):t.push(`Typed array at "${n}" must have an "items" key specifying the element type`));}function Fi(n={}){return {allowUnsafeFieldNamePaths:new Set(n.allowUnsafeFieldNamePaths??[])}}function Ii(n,B){return n.allowUnsafeFieldNamePaths.has(B)}var Ai=new Set(["fields","description"]);function KB(n,B=""){let e=[];for(let[t,i]of Object.entries(n)){let s=t.endsWith("?")?t.slice(0,-1):t,r=B?`${B}.${s}`:s,C=Tt(i);if(C==="string"||C==="wref"||C==="number"||C==="boolean"){e.push(r);continue}P(i)||U(i)&&e.push(...KB(i,r));}return e}function ge(n){return !(!U(n)||Array.isArray(n)||P(n)||"type"in n&&typeof n.type=="string"&&W.has(n.type)&&Object.keys(n).every(B=>MB.has(B)))}function kt(n,B,e,t,i=B){let s=new Map;for(let[r,C]of Object.entries(n)){let o=NB(r),u=SB(o),c=z(B,r),E=TB(i,r);if(u.unsafe&&!Ii(t,E)){e.push(`Invalid field name at "${c}": ${u.reason}`);continue}let g=De(r),m=s.get(g);if(m!==void 0){e.push(`${z(B,r)}: duplicate field name. Shape already declares "${y(m)}" (case-insensitive match).`);continue}s.set(g,r),ge(C)?kt(C,c,e,t,E):RB(c,E,C,e,t);}}function fe(n,B,e){if(Array.isArray(B)){B.length===1&&fe(`${n}[]`,B[0],e);return}if(P(B)){let t=Q(B).spec;P(t)&&typeof t.type=="string"&&t.type==="array"&&"items"in t&&fe(`${n}.items`,t.items,e);return}ge(B)&&de(B,n,e);}function de(n,B,e){for(let[t,i]of Object.entries(n)){let s=TB(B,t);SB(NB(t)).unsafe&&e.push(s),ge(i)?de(i,s,e):fe(s,i,e);}}function Jt(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 de(B,"fields",e),e}function Ut(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))Ai.has(c)||t.push(`Unsupported shape definition key "${y(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 s=Fi(B);kt(i,"fields",t,s);let r=KB(i),C=r.length,o=new Set,u=new Set;for(let c of r){let E=sB(c);E>IB&&t.push(`Indexable field path "${y(c)}" is ${E} bytes; maximum is ${IB}`);let g=Mt(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 "${y(c)}"; dotted field names, optional-key suffixes, and case-insensitive folded paths must not collide with another indexable path`);return C>FB&&t.push(`Shape declares ${C} indexable scalar fields; maximum is ${FB}`),"description"in e&&typeof e.description!="string"&&t.push('"description" must be a string'),uB(e,[],t),t.length>0?{valid:false,errors:t}:{valid:true}}function rB(n){if(!n||typeof n!="object")return JSON.stringify(n);if(Array.isArray(n))return `[${n.map(e=>rB(e)).join(",")}]`;let B=n;return `{${Object.keys(B).sort().map(e=>`${JSON.stringify(e)}:${rB(B[e])}`).join(",")}}`}var me=["Arc","Bond","Pair","Set","List"],vt=["Triple"],Ni=[...me,...vt];function Kt(n){return me.includes(n)}function VB(n){return vt.includes(n)}function jB(n){return Ni.includes(n)}var Ti=["Content"];var Ri=["Readme","Agents"],Li=["LlmsTxt"],Vt=n=>n==="Content";var jt=n=>Ri.includes(n),Yt=n=>Li.includes(n);var Qt=["View"],wi=n=>Qt.includes(n),Wt=["LicenseSubject","LicenseDeclaration"],bi=n=>Wt.includes(n);function qt(n){return jB(n)||wi(n)||bi(n)}function YB(n){return me.includes(n)||Ti.includes(n)||Qt.includes(n)||Wt.includes(n)}function zt(n,B){let e=[];return ki(n,e,B?.checkAddAdd??true,B),e}function xi(n,B){return B?.sourceOperationIndexes?.[n]??n}function Mi(n){return n.name}function ki(n,B,e,t){let i=new Map;for(let s=0;s<n.length;s++){let r=n[s];if(!r)continue;let C=Mi(r);if(!C)continue;let u=$B({...r,name:C})==="shape"?`shape:${C}`:`thing:${C}`,c=i.get(u)??[];c.push({operation:r.operation,index:xi(s,t)}),i.set(u,c);}for(let[s,r]of i)if(!(r.length<2))for(let C=1;C<r.length;C++){let o=r[C-1],u=r[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 "${s}" twice in the same commit`}),c==="revise+add"&&B.push({code:"ILLEGAL_OP_SEQUENCE",operationIndex:u.index,message:`Cannot revise then add "${s}" in the same commit`});}}var Ji=["arc","bond","set","list","pair"],Ui=["arc","bond","set","list"],vi=["add","revise"],Oe="Collection create requires a name. Collections are ordinary named things (ADR 0004).",Fe='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 Ki(n){return Ji.find(B=>B===n)??null}function Vi(n){return vi.find(B=>B===n)??null}function Xt(n,B){let e=[];return e.push(...ji(n,B)),e.push(...Yi(n,B)),e.push(...Qi(n,B)),e.push(...Wi(n,B)),e.push(...qi(n,B)),e}function ji(n,B){let e=[],t=n.name,i=n.operation==="rename"&&(n.kind==="shape"||n.name!==void 0&&!tB(n.name)),s=i&&t!==void 0&&qt(t)&&n.newName!==void 0&&!jB(n.newName)&&!YB(n.newName);if(t&&VB(t)&&!s&&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&&!tB(n.name))&&n.newName&&VB(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 r=t&&YB(t)&&!s?t:i&&n.newName&&YB(n.newName)?n.newName:void 0;if(r&&(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 "${r}" is a built-in shape and cannot be ${C} manually`});}}if(t){let r=tB(t);if(r&&VB(r.shapePrefix))e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Cannot ${n.operation} under retired collection shape "${r.shapePrefix}". Triple is read-only and retired for new collection writes.`});else if(n.kind==="thing"&&r&&Kt(r.shapePrefix)){let C=n.operation==="add"?`Cannot add kind="thing" under built-in shape "${r.shapePrefix}". Use kind="collection" instead.`:`Cannot revise kind="thing" under built-in shape "${r.shapePrefix}". Use kind="collection" to revise a collection.`;e.push({code:"VALIDATION_ERROR",operationIndex:B,message:C});}}return e}function Yi(n,B){if(n.kind!=="thing"||!n.name)return [];let e=tB(n.name);if(!e||!Vt(e.shapePrefix))return [];let t=e.bareName;return Yt(t)?[{code:"READ_ONLY_BUILTIN_CONTENT",operationIndex:B,message:`${e.shapePrefix}/${t} is synthesized; writes are not allowed`}]:jt(t)?[]:[{code:"UNKNOWN_CONTENT_NAME",operationIndex:B,message:`${e.shapePrefix}/${t} is not a recognized well-known content name`}]}function Qi(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=tB(t);if(i&&jB(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 Wi(n,B){let e=[];return !n.about||typeof n.about=="string"||e.push({code:"VALIDATION_ERROR",operationIndex:B,message:Fe}),e}function qi(n,B){let e=[];if(n.kind!=="collection"||Vi(n.operation)===null)return e;n.operation==="add"&&!n.name&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:Oe});let t=Ki(n.type);if(t===null&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Collection "type" is invalid. Use one of: ${Ui.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=zi(t,n.members);i&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:i});}return e}function zi(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 Xi(n,B){return Xt(n,B)}function $i(n,B){return zt(n,B)}var Ne=67108864,WB=10,$t="warmhub-repository-checkpoint",Zt=1,Zi="repository-checkpoint.json";var Te=z$1.string().regex(/^[0-9a-f]{64}$/),Ae=z$1.number().int().nonnegative().safe(),Se=z$1.number().int().positive().safe(),Bs=z$1.number().finite().refine(n=>!Number.isInteger(n)||Number.isSafeInteger(n),"JSON integers must be safe integers"),QB=z$1.lazy(()=>z$1.union([z$1.null(),z$1.boolean(),Bs,z$1.string(),z$1.array(QB),z$1.record(z$1.string(),QB)])),Ie=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:QB}),es=z$1.string().regex(/^[^\r\n]+@v[1-9]\d*$/),Re=z$1.discriminatedUnion("kind",[Ie.extend({kind:z$1.literal("shape")}).strict(),Ie.extend({kind:z$1.enum(["thing","collection"]),shapeName:z$1.string().min(1)}).strict(),Ie.extend({kind:z$1.literal("assertion"),shapeName:z$1.string().min(1),aboutWref:es}).strict()]),Bn=z$1.object({part:Ae,path:z$1.string().min(1),recordCount:Se,byteLength:Se,sha256:Te}).strict(),en=z$1.object({shapeName:z$1.string().min(1),recordCount:Se,chunks:z$1.array(Bn).min(1)}).strict(),ts={format:z$1.literal($t),formatVersion:z$1.literal(Zt),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:Ae,complete:z$1.literal(true),recordCount:Ae,streams:z$1.array(en)},Le=z$1.object(ts).strict(),qB=Le.extend({contentSha256:Te}).strict();var ns=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 LB(n){return X(n),ns.encode(n)}function X(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 XB(n,B){X(n),X(B);let e=0,t=0;for(;e<n.length&&t<B.length;){let i=n.codePointAt(e),s=B.codePointAt(t);if(i===void 0||s===void 0)break;let r=i-s;if(r!==0)return r;e+=i>65535?2:1,t+=s>65535?2:1;}return e===n.length&&t===B.length?0:e===n.length?-1:1}var tn=10**WB-1;async function is(n){if(n.length===0)throw new RangeError("Checkpoint Shape name must not be empty");return zB(LB(n))}async function ss(n,B){return rs(B),`records/${await is(n)}/part-${B.toString().padStart(WB,"0")}.jsonl`}async function nn(n,B,e){let t=await ss(B,e);if(n!==t)throw new Error("Checkpoint chunk path does not match its Shape and part")}function rs(n){if(!Number.isSafeInteger(n)||n<0||n>tn)throw new RangeError(`Checkpoint chunk part must be an integer from 0 through ${tn}`)}var Cs=new TextDecoder("utf-8",{fatal:true});async function we(n){let B=qB.parse(n),{contentSha256:e,...t}=B;await ls(t);let i=await as(t);if(e!==i)throw new Error("Checkpoint manifest content digest does not match");return B}async function rn(n){let B=await we(n);return LB(`${rB(B)}
21
+ `)}async function os(n){us(n);let B=Cs.decode(n),e=await we(qB.parse(JSON.parse(B.slice(0,-1)))),t=await rn(e);if(!cs(n,t))throw new Error("Checkpoint manifest bytes are not canonical");return e}async function as(n){return zB(LB(rB(n)))}async function ls(n){let B,e=0;for(let t of n.streams){if(B!==void 0&&XB(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[s,r]of t.chunks.entries()){if(r.part!==s)throw new Error("Checkpoint manifest chunk parts must be contiguous and zero-based");if(await nn(r.path,t.shapeName,r.part),r.byteLength>Ne&&r.recordCount!==1)throw new Error("An oversized checkpoint chunk must contain exactly one row");i=sn(i,r.recordCount);}if(t.recordCount!==i)throw new Error("Checkpoint manifest stream record count does not match");e=sn(e,t.recordCount);}if(n.recordCount!==e)throw new Error("Checkpoint manifest record count does not match")}function sn(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 us(n){if(n.length===0||n.at(-1)!==10)throw new Error("Checkpoint manifest must end with one LF");if(n.length>=3&&n[0]===239&&n[1]===187&&n[2]===191)throw new Error("Checkpoint manifest must not contain a UTF-8 BOM");for(let B=0;B<n.length-1;B+=1)if(n[B]===10||n[B]===13)throw new Error("Checkpoint manifest must contain exactly one LF and no CR")}function cs(n,B){return n.length!==B.length?false:n.every((e,t)=>e===B[t])}new TextEncoder;var hs=new TextDecoder("utf-8",{fatal:true});function Es(n){if(n.length===0||n[n.length-1]!==10)throw new Error("Checkpoint row must end with one LF");if(n.length>=3&&n[0]===239&&n[1]===187&&n[2]===191)throw new Error("Checkpoint row must not contain a UTF-8 BOM");for(let t=0;t<n.length-1;t+=1)if(n[t]===10||n[t]===13)throw new Error("Checkpoint row must contain exactly one LF and no CR");let B=hs.decode(n),e=Re.parse(JSON.parse(B.slice(0,-1)));if(B!==`${rB(e)}
22
+ `)throw new Error("Checkpoint row bytes are not canonical");return e}function ps(n){if(n.length===0)throw new Error("Checkpoint stream Shape name must not be empty");return X(n),{shapeName:n,recordCount:0,hasShapeDefinition:false}}function Ds(n,B){let e=B;if(X(e.wref),X(e.durableId),e.kind==="assertion"&&X(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&&XB(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=gs(n.recordCount),e}function fs(n){if(!n.hasShapeDefinition)throw new Error("Checkpoint stream must contain its matching Shape definition");return n.recordCount}function gs(n){let B=n+1;if(!Number.isSafeInteger(B))throw new RangeError("Checkpoint stream record count must be a safe integer");return B}/*! 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{de as A,Wi as B,qi as C,Ae as D,QB as E,zi as F,Se as G,ss as H,us as I,cs as J,hs as K,Es as L,bt as M,_t as N,Pt as O,en as a,tn as b,sn as c,Cn as d,rn as e,on as f,an as g,ln as h,un as i,cn as j,tB as k,XB as l,hn as m,En as n,pn as o,gn as p,Fn as q,_e as r,An as s,Sn as t,Tn as u,V as v,re as w,oe as x,Tt as y,ni as z};//# sourceMappingURL=chunk-CC45V5YE.js.map
36
- //# sourceMappingURL=chunk-CC45V5YE.js.map
35
+ */export{ai as A,Fe as B,Xi as C,$i as D,Ne as E,WB as F,Zi as G,Te as H,os as I,Es as J,ps as K,Ds as L,fs as M,Jt as N,Ut as O,xt as P,Cn as a,on as b,ln as c,un as d,cn as e,hn as f,En as g,pn as h,Dn as i,fn as j,gn as k,tB as l,$B as m,dn as n,mn as o,On as p,An as q,Rn as r,xe as s,wn as t,bn as u,yn as v,V as w,oe as x,ae as y,Lt as z};//# sourceMappingURL=chunk-6VZ76RF7.js.map
36
+ //# sourceMappingURL=chunk-6VZ76RF7.js.map