@warmhub/sdk-ts 0.99.0 → 0.101.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 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
- `)-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
- `)-1&&B[2]===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
- `)-1&&B.runes[2]===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
- `);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 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
- `)-1&&B.runes[2]===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
- `),p.CODES.get(`
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:
1
+ import {z as z$1}from'zod';var un="X-WarmHub-Client-Flags",cn="compatibility-override";var hn=/^[a-z0-9-]+$/;function pn(n){return hn.test(n)}function En(n){return [...new Set(n)].sort().join(",")}var Dn="X-WarmHub-Client",fn="@warmhub/sdk-ts",gn="warmhub-cli",dn="warmhub-sdk-py";function mn(n,B){return `${n}/${B}`}var On=["add","revise","retract","reaffirm","rename"];var Fn=["shape","thing","assertion","collection"];function iB(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 In="X-WarmHub-Install-Repo",An="X-WarmHub-Signature",Sn="X-WarmHub-Timestamp",Nn=/^[A-Za-z0-9\-._~]$/;function ye(n){let B="",e=new TextEncoder().encode(n);for(let t of e){let i=String.fromCharCode(t);Nn.test(i)?B+=i:B+=`%${t.toString(16).toUpperCase().padStart(2,"0")}`;}return B}function Tn(n){return typeof n=="boolean"?n?"true":"false":typeof n=="number"?JSON.stringify(n):n}function Rn(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,Tn(t)]);return B.sort(([e],[t])=>e<t?-1:e>t?1:0),B.map(([e,t])=>`${ye(e)}=${ye(t)}`).join("&")}function He(n){let B="";for(let e of n)B+=e.toString(16).padStart(2,"0");return B}async function _e(n){let B=await crypto.subtle.digest("SHA-256",new TextEncoder().encode(n));return He(new Uint8Array(B))}var Pe="e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";function xe(n){return [n.method,n.path,n.canonicalQuery,n.installRepo,n.bodyHash,String(n.timestamp)].join(`
2
+ `)}async function Ln(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 He(new Uint8Array(i))}var wn=/^sha256=([0-9a-f]{64})$/,bn=300;async function yn(n){let B=wn.exec(n.signature);if(!B)return {ok:false,reason:"invalid-format"};let e=B[1],t=n.toleranceSec??bn;if(Math.abs(n.nowUnixSeconds-n.timestamp)>t)return {ok:false,reason:"expired"};let s=n.body.length===0?Pe:await _e(n.body),r=xe({method:n.method,path:n.path,canonicalQuery:Ge(n.query),installRepo:n.installRepo,bodyHash:s,timestamp:n.timestamp}),C=await Ln(n.secret,r);return Gn(e,C)?{ok:true}:{ok:false,reason:"invalid-signature"}}function Gn(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 Me=["repo:read","repo:checkpoint-read","repo:checkpoint-generate","repo:write","repo:configure","repo:admin","repo:action-callback"];function Hn(n){return Me.includes(n)}var Ue=/^(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 _n(n){return Ue.test(n)?n:null}function ke(n){let B=Ue.exec(n);return {major:Number(B[1]),minor:Number(B[2]),patch:Number(B[3]),prerelease:B[4]?B[4].split("."):[]}}var Je=/^(0|[1-9]\d*)$/;function Pn(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=Je.test(i),C=Je.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 xn(n,B){let e=ke(n),t=ke(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:Pn(e.prerelease,t.prerelease)}var f=class sB{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=sB.CLASS_NL|sB.DOT_NL;static PERL=sB.CLASS_NL|sB.ONE_LINE|sB.PERL_X|sB.UNICODE_GROUPS;static POSIX=0;static UNANCHORED=0;static ANCHOR_START=1;static ANCHOR_BOTH=2},z={CASE_INSENSITIVE:1,DOTALL:2,MULTILINE:4,DISABLE_UNICODE_GROUPS:8,LONGEST_MATCH:16,LOOKBEHINDS:512},DB=128,te=new Int32Array(DB),ne=new Int32Array(DB),bB=65535;for(let n=0;n<DB;n++)n>=97&&n<=122?te[n]=n-32:te[n]=n,n>=65&&n<=90?ne[n]=n+32:ne[n]=n;var E=class{static CODES=new Map([["\x07",7],["\b",8],[" ",9],[`
3
+ `,10],["\v",11],["\f",12],["\r",13],[" ",32],['"',34],["$",36],["&",38],["'",39],["(",40],[")",41],["*",42],["+",43],["-",45],[".",46],["0",48],["1",49],["2",50],["3",51],["4",52],["5",53],["6",54],["7",55],["8",56],["9",57],[":",58],["<",60],[">",62],["?",63],["A",65],["B",66],["C",67],["F",70],["P",80],["Q",81],["U",85],["Z",90],["[",91],["\\",92],["]",93],["^",94],["_",95],["`",96],["a",97],["b",98],["f",102],["i",105],["m",109],["n",110],["r",114],["s",115],["t",116],["v",118],["x",120],["z",122],["{",123],["|",124],["}",125]]);static toUpperCase(n){if(n<DB)return te[n];let B=String.fromCodePoint(n).toUpperCase(),e=B.codePointAt(0)>bB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toLowerCase(),i=t.codePointAt(0)>bB?2:1;return t.length>i||t.codePointAt(0)!==n?n:B.codePointAt(0)}static toLowerCase(n){if(n<DB)return ne[n];let B=String.fromCodePoint(n).toLowerCase(),e=B.codePointAt(0)>bB?2:1;if(B.length>e)return n;let t=String.fromCodePoint(B.codePointAt(0)).toUpperCase(),i=t.codePointAt(0)>bB?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}},pt=new Uint8Array(256);for(let n=0,B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-";n<64;n++)pt[B.charCodeAt(n)]=n;var Et=n=>{let B=[],e=0,t=0;for(let i=0;i<n.length;i++){let s=pt[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},Mn=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},yB=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}},J=class{static _CASE_ORBIT=null;static get CASE_ORBIT(){return this._CASE_ORBIT||(this._CASE_ORBIT=Mn("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 yB({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 yB({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 yB({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 yB({Common:()=>new a(l("8cgBgB",false)),Greek:()=>new a(l("1FwUwU",false)),Inherited:()=>new a(l("5cgBgBlgHAB",false))})},m=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(J.Upper,B)}static isPrint(B){return B<=V.MAX_LATIN1?B>=32&&B<V.MAX_ASCII||B>=161&&B!==173:V.is(J.Print,B)}static simpleFold(B){if(J.CASE_ORBIT.has(B))return J.CASE_ORBIT.get(B);let e=E.toLowerCase(B);return e!==B?e:E.toUpperCase(B)}static equalsIgnoreCase(B,e){if(B===e)return true;if(B<0||e<0)return false;if(B<=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,Dt=new Uint8Array(re);for(let n=0;n<re;n++)Dt[n]=97<=n&&n<=122||65<=n&&n<=90||48<=n&&n<=57||n===95?1:0;var ZB=null,Be=null,F=class k{static METACHARACTERS="\\.+*?()|[]{}^$";static EMPTY_BEGIN_LINE=1;static EMPTY_END_LINE=2;static EMPTY_BEGIN_TEXT=4;static EMPTY_END_TEXT=8;static EMPTY_WORD_BOUNDARY=16;static EMPTY_NO_WORD_BOUNDARY=32;static EMPTY_ALL=-1;static emptyInts(){return []}static isByteArray(B){return Array.isArray(B)||B instanceof Uint8Array}static isalnum(B){return E.CODES.get("0")<=B&&B<=E.CODES.get("9")||E.CODES.get("a")<=B&&B<=E.CODES.get("z")||E.CODES.get("A")<=B&&B<=E.CODES.get("Z")}static unhex(B){return E.CODES.get("0")<=B&&B<=E.CODES.get("9")?B-E.CODES.get("0"):E.CODES.get("a")<=B&&B<=E.CODES.get("f")?B-E.CODES.get("a")+10:E.CODES.get("A")<=B&&B<=E.CODES.get("F")?B-E.CODES.get("A")+10:-1}static escapeRune(B){let e="";if(m.isPrint(B))k.METACHARACTERS.indexOf(String.fromCodePoint(B))>=0&&(e+="\\"),e+=String.fromCodePoint(B);else switch(B){case E.CODES.get('"'):e+='\\"';break;case E.CODES.get("\\"):e+="\\\\";break;case E.CODES.get(" "):e+="\\t";break;case E.CODES.get(`
4
+ `):e+="\\n";break;case E.CODES.get("\r"):e+="\\r";break;case E.CODES.get("\b"):e+="\\b";break;case E.CODES.get("\f"):e+="\\f";break;default:{let t=B.toString(16);B<256?(e+="\\x",t.length===1&&(e+="0"),e+=t):e+=`\\x{${t}}`;break}}return e}static stringToRunes(B){let e=String(B),t=[],i=0;for(;i<e.length;){let 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<re?Dt[B]===1:false}static emptyOpContext(B,e){let t=0;return B<0&&(t|=k.EMPTY_BEGIN_TEXT|k.EMPTY_BEGIN_LINE),B===10&&(t|=k.EMPTY_BEGIN_LINE),e<0&&(t|=k.EMPTY_END_TEXT|k.EMPTY_END_LINE),e===10&&(t|=k.EMPTY_END_LINE),k.isWordRune(B)!==k.isWordRune(e)?t|=k.EMPTY_WORD_BOUNDARY:t|=k.EMPTY_NO_WORD_BOUNDARY,t}static quoteMeta(B){return B.split("").map(e=>k.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 ZB||(ZB=new TextEncoder),k.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)===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){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)-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 r=B[t++],C=B[t++];e[i++]=String.fromCharCode((s&15)<<12|(r&63)<<6|C&63);}}return e.join("")}}},ft=(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)},cB=class ie{static Encoding=ft(["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}},ve=class extends cB{constructor(n=null){super(),this.bytes=n;}getEncoding(){return cB.Encoding.UTF_8}asCharSequence(){return F.utf8ByteArrayToString(this.bytes)}asBytes(){return this.bytes}length(){return this.bytes.length}},kn=class extends cB{constructor(n=null){super(),this.charSequence=n;}getEncoding(){return cB.Encoding.UTF_16}asCharSequence(){return this.charSequence}asBytes(){return F.stringToUtf8ByteArray(this.charSequence.toString())}length(){return this.charSequence.length}},fB=class{static utf16(n){return new kn(n)}static utf8(n){return F.isByteArray(n)?new ve(n):new ve(F.stringToUtf8ByteArray(n))}},M=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}},Jn=class extends M{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 M.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}},Un=class extends M{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 M.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}},y=class{static fromUTF8(n,B=0,e=n.length){return new Jn(n,B,e)}static fromUTF16(n,B=0,e=n.length){return new Un(n,B,e)}},gB=class extends Error{constructor(n){super(n),this.name="RE2JSException";}},G=class extends gB{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}},gt=class extends gB{constructor(n){super(n),this.name="RE2JSCompileException";}},q=class extends gB{constructor(n){super(n),this.name="RE2JSGroupException";}},vn=class extends gB{constructor(n){super(n),this.name="RE2JSFlagsException";}},uB=class extends gB{constructor(n){super(n),this.name="RE2JSInternalException";}},Ke=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===E.CODES.get("\\")||i===E.CODES.get("$")?`\\${t}`:t}).join(""):B.indexOf("$")<0?B:B.split("").map(t=>t.codePointAt(0)===E.CODES.get("$")?"$$":t).join("")}constructor(B,e){if(B===null)throw new Error("pattern is null");this.patternInput=B;let t=this.patternInput.re2();this.patternGroupCount=t.numberOfCapturingGroups(),this.groups=[],this.namedGroups=t.namedGroups,this.numberOfInstructions=t.numberOfInstructions(),e instanceof cB?this.resetMatcherInput(e):F.isByteArray(e)?this.resetMatcherInput(fB.utf8(e)):this.resetMatcherInput(fB.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 q(`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 q(`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 q(`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 q("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 q(`Group index out of bounds: ${B}`);if(!this.hasMatch)throw new q("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 q("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 q(`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()?y.fromUTF16(this.matcherInput.asCharSequence(),0,this.matcherInputLength):y.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)===E.CODES.get("\\")){t<s&&(e+=B.substring(t,s)),s++,t=s;continue}if(B.codePointAt(s)===E.CODES.get("$")){let r=B.codePointAt(s+1);if(E.CODES.get("0")<=r&&r<=E.CODES.get("9")){let C=r-E.CODES.get("0");for(t<s&&(e+=B.substring(t,s)),s+=2;s<i&&(r=B.codePointAt(s),!(r<E.CODES.get("0")||r>E.CODES.get("9")||C*10+r-E.CODES.get("0")>this.patternGroupCount));s++)C=C*10+r-E.CODES.get("0");if(C>this.patternGroupCount)throw new q(`n > number of groups: ${C}`);let o=this.group(C);o!==null&&(e+=o),t=s,s--;continue}else if(r===E.CODES.get("{")){t<s&&(e+=B.substring(t,s)),s++;let C=s+1;for(;C<B.length&&B.codePointAt(C)!==E.CODES.get("}")&&B.codePointAt(C)!==E.CODES.get(" ");)C++;if(C===B.length||B.codePointAt(C)!==E.CODES.get("}"))throw new q("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)===E.CODES.get("$")){let r=B.codePointAt(s+1);if(E.CODES.get("$")===r){t<s&&(e+=B.substring(t,s)),e+="$",s++,t=s+1;continue}else if(E.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(E.CODES.get("`")===r){t<s&&(e+=B.substring(t,s)),e+=this.substring(0,this.start(0)),s++,t=s+1;continue}else if(E.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(E.CODES.get("1")<=r&&r<=E.CODES.get("9")){let C=r-E.CODES.get("0");for(t<s&&(e+=B.substring(t,s)),s+=2;s<i&&(r=B.codePointAt(s),!(r<E.CODES.get("0")||r>E.CODES.get("9")||C*10+r-E.CODES.get("0")>this.patternGroupCount));s++)C=C*10+r-E.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===E.CODES.get("<")){t<s&&(e+=B.substring(t,s)),s++;let C=s+1;for(;C<B.length&&B.codePointAt(C)!==E.CODES.get(">")&&B.codePointAt(C)!==E.CODES.get(" ");)C++;if(C===B.length||B.codePointAt(C)!==E.CODES.get(">")){e+=B.substring(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()>=dt.MAX_REPLACER_ARGS)throw new q("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 _{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 _.RUNE<=B&&B<=_.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?m.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?m.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 _.ALT:return `alt -> ${this.out}, ${this.arg}`;case _.ALT_MATCH:return `altmatch -> ${this.out}, ${this.arg}`;case _.CAPTURE:return `cap ${this.arg} -> ${this.out}`;case _.EMPTY_WIDTH:return `empty ${this.arg} -> ${this.out}`;case _.MATCH:return `match${this.arg!==0?` ${this.arg}`:""}`;case _.FAIL:return "fail";case _.NOP:return `nop -> ${this.out}`;case _.LB_WRITE:return `lbwrite ${this.arg} -> ${this.out}`;case _.LB_CHECK:return `lbcheck ${this.arg} -> ${this.out}`;case _.RUNE:return this.runes===null?"rune <null>":["rune ",_.escapeRunes(this.runes),(this.arg&f.FOLD_CASE)!==0?"/i":""," -> ",this.out].join("");case _.RUNE1:return `rune1 ${_.escapeRunes(this.runes)} -> ${this.out}`;case _.RUNE_ANY:return `any -> ${this.out}`;case _.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;}},Ve=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}},PB=class xB{static THREADS_CHUNK_SIZE=128;static fromRE2(B){let e=new xB;return e.prog=B.prog,e.re2=B,e.q0=new Ve(e.prog.numInst()),e.q1=new Ve(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 xB.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<xB.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,p=u&7,g=-1,d=0;u!==M.EOF()&&(u=B.step(s+p),g=u>>3,d=u&7);let I;for(s===0?I=F.emptyOpContext(-1,c):I=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 T=B.index(this.re2,s);if(T<0)break;s+=T,u=B.step(s),c=u>>3,p=u&7,u=B.step(s+p),g=u>>3,d=u&7;}}if(s===0&&this.prog.numLb>0)for(let T=0;T<this.prog.lbStarts.length;T++)this.add(C,this.prog.lbStarts[T],s,this.matchcap,I,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,I,null));let S=s+p;if(I=B.context(S),this.step(C,o,s,S,c,I,t,s===B.endPos()),p===0||this.ncap===0&&this.matched)break;s+=p,c=g,p=d,c!==-1&&(u=B.step(s+p),g=u>>3,d=u&7);let w=C;C=o,o=w;}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,p=u&7,g=-1,d=0;u!==M.EOF()&&(u=B.step(s+p),g=u>>3,d=u&7);let I=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 K=0;K<this.prog.lbStarts.length;K++)this.add(C,this.prog.lbStarts[K],s,this.matchcap,I,null);(s===0||t===f.UNANCHORED)&&s>=r&&this.add(C,this.prog.start,s,this.matchcap,I,null);let w=s+p;I=B.context(w);for(let K=0;K<C.size;K++){let b=C.denseThreads[K];if(b===null)continue;let Q=b.inst,W=false;switch(Q.op){case D.MATCH:if(t===f.ANCHOR_BOTH&&s!==B.endPos())break;S.add(Q.arg);break;case D.RUNE:W=Q.matchRune(c);break;case D.RUNE1:W=c===Q.runes[0];break;case D.RUNE_ANY:W=true;break;case D.RUNE_ANY_NOT_NL:W=c!==E.CODES.get(`
5
+ `);break;default:throw new uB("bad inst")}W&&(b=this.add(o,Q.out,w,b.cap,I,b)),b!==null&&(this.freeThread(b),C.denseThreads[K]=null);}if(C.clear(),p===0)break;s+=p,c=g,p=d,c!==-1&&(u=B.step(s+p),g=u>>3,d=u&7);let T=C;C=o,o=T;}return this.freeQueue(o),Array.from(S).sort((w,T)=>w-T)}step(B,e,t,i,s,r,C,o){let u=this.re2.longest;for(let c=0;c<B.size;c++){let p=B.denseThreads[c];if(p===null)continue;if(u&&this.matched&&this.ncap>0&&this.matchcap[0]<p.cap[0]){this.freeThread(p);continue}let g=p.inst,d=false;switch(g.op){case D.MATCH:if(C===f.ANCHOR_BOTH&&!o)break;this.ncap>0&&(!u||!this.matched||this.matchcap[1]<t)&&(p.cap[1]=t,this.matchcap.set(p.cap.subarray(0,this.ncap))),u||this.freeQueue(B,c+1),this.matched=true;break;case 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!==E.CODES.get(`
6
+ `);break;default:throw new uB("bad inst")}d&&(p=this.add(e,g.out,i,p.cap,r,p)),p!==null&&(this.freeThread(p),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")}}}},je=n=>{let B=-2128831035;for(let e=0;e<n.length;e++)B^=n[e],B=Math.imul(B,16777619);return B},Vn=(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},jn=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;}},mt=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=je(t),s=this.stateCache.get(i);if(s)for(let C=0;C<s.length;C++){let o=s[C];if(Vn(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 jn(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=je(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<=m.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:m.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<=m.MAX_LATIN1)t===f.UNANCHORED?B.nextLatin1[e]=s:B.nextLatin1Anchored[e]=s;else {let r=e+(t===f.UNANCHORED?0:m.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<=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(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(p=>r.add(p)):u.matchIDs.forEach(p=>r.add(p)));};C(s,e);let o=e;for(;o<i;){let u=B.step(o),c=u>>3,p=u&7;if(p===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+=p,C(s,o),s.nfaStates.length===0&&t!==f.UNANCHORED)break}return Array.from(r).sort((u,c)=>u-c)}},Yn=32,Qn=500,ee=256,Wn=256*1024,qn=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)+Yn-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 uB("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 p=n.prog.getInst(c.out);if(D.isRuneOp(p.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 p=B.step(o);if(p===M.EOF()||!c.matchRune(p>>3))break;o+=p&7,r=c.out;continue}case D.RUNE1:{let p=B.step(o);if(p===M.EOF()||p>>3!==c.runes[0])break;o+=p&7,r=c.out;continue}case D.RUNE_ANY_NOT_NL:{let p=B.step(o);if(p===M.EOF()||p>>3===10)break;o+=p&7,r=c.out;continue}case D.RUNE_ANY:{let p=B.step(o);if(p===M.EOF())break;o+=p&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 p=B.context(o);if((c.arg&~p)!==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 p=this.matchcap[1];if((p===-1||s&&o>0&&o>p)&&this.matchcap.set(this.cap),!s||o===this.end)return true;break}case D.LB_WRITE:case D.LB_CHECK:throw new uB("Backtracker cannot evaluate Lookbehind instructions");default:throw new uB("bad inst")}break}}return s&&this.matchcap.length>1&&this.matchcap[1]>=0}},GB=[],HB=class Ot{static shouldBacktrack(B){return B.numInst()<=Qn}static maxBitStateLen(B){return Ot.shouldBacktrack(B)?Math.floor(Wn/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 qn,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 p=-1;for(;t<=o&&p!==0;t+=p){if(B.prefix.length>0){let d=e.index(B,t);if(d<0)break;t+=d;}if(C.ncap>0&&(C.cap[0]=t),C.tryBacktrack(B,e,B.prog.start,t,i)){u=true;break}let g=e.step(t);p=g===M.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}},Ye=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++);}},zn=(n,B,e,t)=>{let i=n.length,s=B.length,r=0,C=0,o=[],u=[],c=true,p=-1,g=d=>{let I=d?n:B,S=d?r:C,w=d?e:t;return p>0&&I[S]<=o[p]?false:(o.push(I[S],I[S+1]),d?r+=2:C+=2,p+=2,u.push(w),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}},Xn=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;}}},$n=n=>{let B=new Xn(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},Zn=n=>{if(n.inst.length>=1e3)return null;let B=new Ye(n.inst.length),e=new Ye(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 d=u;u=c,c=d;}u&&(i[r]=true,o.op=D.ALT_MATCH);let p=zn(t[o.out]||[],t[o.arg]||[],o.out,o.arg);if(!p)return false;t[r]=p.merged,o.next=new Uint32Array(p.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 p=m.simpleFold(c);p!==c;p=m.simpleFold(p))u.push(p,p);u.sort((p,g)=>p-g);}else for(let c=0;c<o.runes.length;c++)u.push(o.runes[c]);t[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 p=m.simpleFold(c);p!==c;p=m.simpleFold(p))u.push(p,p);u.sort((p,g)=>p-g);}else u.push(o.runes[0],o.runes[0]);t[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,m.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,m.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},Bi=(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}}},Qe=class Ft{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=$n(B);return i=Zn(i),i!==null&&Bi(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,p=u&7,g=M.EOF(),d=-1,I=0;u!==M.EOF()&&(g=e.step(t+p),g!==M.EOF()&&(d=g>>3,I=g&7));let S=t===0?F.emptyOpContext(-1,c):e.context(t),w=r.start,T;for(;;){switch(T=r.inst[w],w=T.out,T.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(!T.matchRune(c))return null;break;case D.RUNE1:if(c!==T.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:w=Ft.next(T,c);continue;case D.FAIL:return null;case D.NOP:continue;case D.EMPTY_WIDTH:if((T.arg&~S)!==0)return null;continue;case D.CAPTURE:T.arg<C.length&&(C[T.arg]=t);continue;default:throw new uB("bad inst")}if(p===0)break;S=F.emptyOpContext(c,d),t+=p,c=d,p=I,c!==-1&&(g=e.step(t+p),g!==M.EOF()?(d=g>>3,I=g&7):(d=-1,I=0));}return o?s===0?[]:F.toArray(C):null}},h=class A{static Op=ft(["NO_MATCH","EMPTY_MATCH","LITERAL","CHAR_CLASS","ANY_CHAR_NOT_NL","ANY_CHAR","BEGIN_LINE","END_LINE","BEGIN_TEXT","END_TEXT","WORD_BOUNDARY","NO_WORD_BOUNDARY","CAPTURE","STAR","PLUS","QUEST","REPEAT","CONCAT","ALTERNATE","PLB","NLB","LEFT_PAREN","VERTICAL_BAR"]);static isPseudoOp(B){return B>=A.Op.LEFT_PAREN}static emptySubs(){return []}static quoteIfHyphen(B){return B===E.CODES.get("-")?"\\":""}static fromRegexp(B){let e=new A(B.op);return e.flags=B.flags,e.subs=B.subs,e.runes=B.runes,e.cap=B.cap,e.min=B.min,e.max=B.max,e.name=B.name,e.namedGroups=B.namedGroups,e.lb=B.lb,e}constructor(B){this.op=B,this.flags=0,this.subs=A.emptySubs(),this.runes=[],this.min=0,this.max=0,this.cap=0,this.name=null,this.namedGroups=Object.create(null),this.lb=0;}reinit(){this.flags=0,this.subs=A.emptySubs(),this.runes=[],this.cap=0,this.min=0,this.max=0,this.name=null,this.namedGroups=Object.create(null),this.lb=0;}toString(){return this.appendTo()}appendTo(){let B="";switch(this.op){case A.Op.NO_MATCH:B+="[^\\x00-\\x{10FFFF}]";break;case A.Op.EMPTY_MATCH:B+="(?:)";break;case A.Op.STAR:case A.Op.PLUS:case A.Op.QUEST:case A.Op.REPEAT:{let e=this.subs[0];switch(e.op>A.Op.CAPTURE||e.op===A.Op.LITERAL&&e.runes.length>1?B+=`(?:${e.appendTo()})`:B+=e.appendTo(),this.op){case A.Op.STAR:B+="*";break;case A.Op.PLUS:B+="+";break;case A.Op.QUEST:B+="?";break;case A.Op.REPEAT:B+=`{${this.min}`,this.min!==this.max&&(B+=",",this.max>=0&&(B+=this.max)),B+="}";break}(this.flags&f.NON_GREEDY)!==0&&(B+="?");break}case A.Op.CONCAT:for(let e of this.subs)e.op===A.Op.ALTERNATE?B+=`(?:${e.appendTo()})`:B+=e.appendTo();break;case A.Op.ALTERNATE:{let e="";for(let t of this.subs)B+=e,e="|",B+=t.appendTo();break}case A.Op.LITERAL:(this.flags&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 A.Op.ANY_CHAR_NOT_NL:B+="(?-s:.)";break;case A.Op.ANY_CHAR:B+="(?s:.)";break;case A.Op.PLB:B+=`(?<=${this.subs[0].appendTo()})`;break;case A.Op.NLB:B+=`(?<!${this.subs[0].appendTo()})`;break;case A.Op.CAPTURE:this.name===null||this.name.length===0?B+="(":B+=`(?P<${this.name}>`,this.subs[0].op!==A.Op.EMPTY_MATCH&&(B+=this.subs[0].appendTo()),B+=")";break;case A.Op.BEGIN_TEXT:B+="\\A";break;case A.Op.END_TEXT:(this.flags&f.WAS_DOLLAR)!==0?B+="(?-m:$)":B+="\\z";break;case A.Op.BEGIN_LINE:B+="^";break;case A.Op.END_LINE:B+="$";break;case A.Op.WORD_BOUNDARY:B+="\\b";break;case A.Op.NO_WORD_BOUNDARY:B+="\\B";break;case A.Op.CHAR_CLASS:if(this.runes.length%2!==0){B+="[invalid char class]";break}if(B+="[",this.runes.length===0)B+="^\\x00-\\x{10FFFF}";else if(this.runes[0]===0&&this.runes[this.runes.length-1]===m.MAX_RUNE){B+="^";for(let e=1;e<this.runes.length-1;e+=2){let t=this.runes[e]+1,i=this.runes[e+1]-1;B+=A.quoteIfHyphen(t),B+=F.escapeRune(t),t!==i&&(B+="-",B+=A.quoteIfHyphen(i),B+=F.escapeRune(i));}}else for(let e=0;e<this.runes.length;e+=2){let t=this.runes[e],i=this.runes[e+1];B+=A.quoteIfHyphen(t),B+=F.escapeRune(t),t!==i&&(B+="-",B+=A.quoteIfHyphen(i),B+=F.escapeRune(i));}B+="]";break;default:B+=this.op;break}return B}maxCap(){let B=0;if(this.op===A.Op.CAPTURE&&(B=this.cap),this.subs!==null)for(let e of this.subs){let t=e.maxCap();B<t&&(B=t);}return B}equals(B){if(!(B!==null&&B instanceof A)||this.op!==B.op)return false;switch(this.op){case A.Op.END_TEXT:if((this.flags&f.WAS_DOLLAR)!==(B.flags&f.WAS_DOLLAR))return false;break;case A.Op.LITERAL:case A.Op.CHAR_CLASS:if(this.runes===null&&B.runes===null)break;if(this.runes===null||B.runes===null||this.runes.length!==B.runes.length)return false;for(let e=0;e<this.runes.length;e++)if(this.runes[e]!==B.runes[e])return false;break;case A.Op.ALTERNATE:case A.Op.CONCAT:if(this.subs.length!==B.subs.length)return false;for(let e=0;e<this.subs.length;++e)if(!this.subs[e].equals(B.subs[e]))return false;break;case A.Op.STAR:case A.Op.PLUS:case A.Op.QUEST:if((this.flags&f.NON_GREEDY)!==(B.flags&f.NON_GREEDY)||!this.subs[0].equals(B.subs[0]))return false;break;case A.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 A.Op.CAPTURE:if(this.cap!==B.cap||(this.name===null?B.name!==null:this.name!==B.name)||!this.subs[0].equals(B.subs[0]))return false;break;case A.Op.PLB:case A.Op.NLB:if(this.lb!==B.lb||!this.subs[0].equals(B.subs[0]))return false;break}return true}},We=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}},L=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}}},ei=class Z{static build(B){let e=Z.fromRegexp(B);return Z.simplify(e)}static fromRegexp(B){if(!B)return new L(L.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 L(L.Type.NONE);case h.Op.LITERAL:{if(B.runes.length===0||(B.flags&f.FOLD_CASE)!==0)return new L(L.Type.NONE);let e=new L(L.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 Z.fromRegexp(B.subs[0]);case h.Op.REPEAT:return B.min>=1?Z.fromRegexp(B.subs[0]):new L(L.Type.NONE);case h.Op.CONCAT:{let e=new L(L.Type.AND);for(let t of B.subs)e.subs.push(Z.fromRegexp(t));return e}case h.Op.ALTERNATE:{let e=new L(L.Type.OR);for(let t of B.subs)e.subs.push(Z.fromRegexp(t));return e}default:return new L(L.Type.NONE)}}static simplify(B){if(B.type===L.Type.EXACT||B.type===L.Type.NONE)return B;if(B.type===L.Type.AND){let e=[];for(let t of B.subs){let i=Z.simplify(t);if(i.type!==L.Type.NONE)if(i.type===L.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 L(L.Type.NONE):e.length===1?e[0]:(B.subs=e,B)}if(B.type===L.Type.OR){let e=[];for(let r of B.subs){let C=Z.simplify(r);if(C.type===L.Type.NONE)return new L(L.Type.NONE);if(C.type===L.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 L(L.Type.NONE);if(e.length===1)return e[0];let t=new Set,i=[];for(let r of e)r.type===L.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!==L.Type.EXACT){s=false;break}return s&&i.length>1&&(B.ac16=new We(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 We(i.map(r=>r.bytes))),B}return B}},j=class{constructor(n=0,B=0){this.head=n,this.tail=B;}},ti=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 j(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}},_B=class{constructor(n=0,B=new j,e=false){this.i=n,this.out=B,this.nullable=e;}},It=class aB{static ANY_RUNE_NOT_NL(){return [0,E.CODES.get(`
8
+ `)-1,E.CODES.get(`
9
+ `)+1,m.MAX_RUNE]}static ANY_RUNE(){return [0,m.MAX_RUNE]}static compileRegexp(B){let e=new aB,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 aB;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 ti,this.newInst(D.FAIL);}newInst(B){return this.prog.addInst(B),new _B(this.prog.numInst()-1,new j,true)}nop(){let B=this.newInst(D.NOP);return B.out=new j(B.i<<1,B.i<<1),B}fail(){return new _B}cap(B){let e=this.newInst(D.CAPTURE);return e.out=new j(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 _B(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 j(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new j(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 j(t.i<<1,t.i<<1)):(i.out=B.i,t.out=new j(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 _B(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 j(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 j(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]===E.CODES.get(`
10
+ `)-1&&B[2]===E.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(aB.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 j(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(aB.ANY_RUNE_NOT_NL(),0);case h.Op.ANY_CHAR:return this.rune(aB.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 gt("regexp: unhandled case in compile")}}},At=class U{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=U.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=U.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]===m.MAX_RUNE?new h(h.Op.ANY_CHAR):B.runes.length===4&&B.runes[0]===0&&B.runes[1]===E.CODES.get(`
12
+ `)-1&&B.runes[2]===E.CODES.get(`
13
+ `)+1&&B.runes[3]===m.MAX_RUNE?new h(h.Op.ANY_CHAR_NOT_NL):B;case h.Op.STAR:case h.Op.PLUS:case h.Op.QUEST:{let e=U.simplify(B.subs[0]);return U.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=U.simplify(B.subs[0]);if(B.max===-1){if(B.min===0)return U.simplify1(h.Op.STAR,B.flags,e,null);if(B.min===1)return U.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(U.simplify1(h.Op.PLUS,B.flags,e,null)),i.subs=s.slice(0),U.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=U.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=U.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),U.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}},R=class{constructor(n,B){this.sign=n,this.cls=B;}},qe=[48,57],ze=[9,10,12,13,32,32],Xe=[48,57,65,90,95,95,97,122],$e=new Map([["\\d",new R(1,qe)],["\\D",new R(-1,qe)],["\\s",new R(1,ze)],["\\S",new R(-1,ze)],["\\w",new R(1,Xe)],["\\W",new R(-1,Xe)]]),Ze=[48,57,65,90,97,122],Bt=[65,90,97,122],et=[0,127],tt=[9,9,32,32],nt=[0,31,127,127],it=[48,57],st=[33,126],rt=[97,122],Ct=[32,126],ot=[33,47,58,64,91,96,123,126],at=[9,13,32,32],lt=[65,90],ut=[48,57,65,90,95,95,97,122],ct=[48,57,65,70,97,102],ht=new Map([["[:alnum:]",new R(1,Ze)],["[:^alnum:]",new R(-1,Ze)],["[:alpha:]",new R(1,Bt)],["[:^alpha:]",new R(-1,Bt)],["[:ascii:]",new R(1,et)],["[:^ascii:]",new R(-1,et)],["[:blank:]",new R(1,tt)],["[:^blank:]",new R(-1,tt)],["[:cntrl:]",new R(1,nt)],["[:^cntrl:]",new R(-1,nt)],["[:digit:]",new R(1,it)],["[:^digit:]",new R(-1,it)],["[:graph:]",new R(1,st)],["[:^graph:]",new R(-1,st)],["[:lower:]",new R(1,rt)],["[:^lower:]",new R(-1,rt)],["[:print:]",new R(1,Ct)],["[:^print:]",new R(-1,Ct)],["[:punct:]",new R(1,ot)],["[:^punct:]",new R(-1,ot)],["[:space:]",new R(1,at)],["[:^space:]",new R(-1,at)],["[:upper:]",new R(1,lt)],["[:^upper:]",new R(-1,lt)],["[:word:]",new R(1,ut)],["[:^word:]",new R(-1,ut)],["[:xdigit:]",new R(1,ct)],["[:^xdigit:]",new R(-1,ct)]]),tB=class nB{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&&nB.cmp(B,C,s,r)<0;)C+=2;for(;o>e&&nB.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&&nB.qsortIntPair(B,e,o),C<t&&nB.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;nB.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 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<=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 nB().appendFoldedClass(t).cleanClass().toArray()),this.appendClassWithSign(t,B.sign)}toString(){return nB.charClassToString(this.r,this.len)}},ni=class{constructor(n){this.str=n,this.position=0;}pos(){return this.position}rewindTo(n){this.position=n;}more(){return this.position<this.str.length}peek(){return this.str.codePointAt(this.position)}skip(n){this.position+=n;}skipString(n){this.position+=n.length;}pop(){let n=this.str.codePointAt(this.position);return this.position+=F.charCount(n),n}lookingAt(n){return this.str.startsWith(n,this.position)}rest(){return this.str.substring(this.position)}from(n){return this.str.substring(n,this.position)}toString(){return this.rest()}},St=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:J.CATEGORIES.get("Cn"),fold:J.CATEGORIES.get("Cn"),sign:-1}:B==="Lc"?{tab:J.CATEGORIES.get("LC"),fold:J.FOLD_CATEGORIES.get("LC"),sign:1}:J.CATEGORIES.has(B)?{tab:J.CATEGORIES.get(B),fold:J.FOLD_CATEGORIES.get(B),sign:1}:J.SCRIPTS.has(B)?{tab:J.SCRIPTS.get(B),fold:J.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 G(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!==E.CODES.get("_")&&!F.isalnum(t))return false}return true}static parseInt(B){let e=B.pos();for(;B.more()&&B.peek()>=E.CODES.get("0")&&B.peek()<=E.CODES.get("9");)B.skip(1);let t=B.from(e);return t.length===0||t.length>1&&t.codePointAt(0)===E.CODES.get("0")?-1:t.length>8?-2:parseInt(t,10)}static isCharClass(B){return B.op===h.Op.LITERAL&&B.runes.length===1||B.op===h.Op.CHAR_CLASS||B.op===h.Op.ANY_CHAR_NOT_NL||B.op===h.Op.ANY_CHAR}static matchRune(B,e){switch(B.op){case h.Op.LITERAL:return B.runes.length===1&&B.runes[0]===e;case h.Op.CHAR_CLASS:for(let t=0;t<B.runes.length;t+=2)if(B.runes[t]<=e&&e<=B.runes[t+1])return true;return false;case h.Op.ANY_CHAR_NOT_NL:return e!==E.CODES.get(`
14
+ `);case h.Op.ANY_CHAR:return true}return false}static mergeCharClass(B,e){switch(B.op){case h.Op.ANY_CHAR:break;case h.Op.ANY_CHAR_NOT_NL:O.matchRune(e,E.CODES.get(`
15
+ `))&&(B.op=h.Op.ANY_CHAR);break;case h.Op.CHAR_CLASS:e.op===h.Op.LITERAL?B.runes=new tB(B.runes).appendLiteral(e.runes[0],e.flags).toArray():B.runes=new tB(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 tB().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 G(O.ERR_TRAILING_BACKSLASH);let t=B.pop();B:switch(t){case E.CODES.get("1"):case E.CODES.get("2"):case E.CODES.get("3"):case E.CODES.get("4"):case E.CODES.get("5"):case E.CODES.get("6"):case E.CODES.get("7"):if(!B.more()||B.peek()<E.CODES.get("0")||B.peek()>E.CODES.get("7"))break;case E.CODES.get("0"):{let i=t-E.CODES.get("0");for(let s=1;s<3&&!(!B.more()||B.peek()<E.CODES.get("0")||B.peek()>E.CODES.get("7"));s++)i=i*8+B.peek()-E.CODES.get("0"),B.skip(1);return i}case E.CODES.get("x"):{if(!B.more())break;if(t=B.pop(),t===E.CODES.get("{")){let r=0,C=0;for(;;){if(!B.more())break B;if(t=B.pop(),t===E.CODES.get("}"))break;let o=F.unhex(t);if(o<0||(C=C*16+o,C>m.MAX_RUNE))break B;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 E.CODES.get("a"):return E.CODES.get("\x07");case E.CODES.get("f"):return E.CODES.get("\f");case E.CODES.get("n"):return E.CODES.get(`
16
+ `);case E.CODES.get("r"):return E.CODES.get("\r");case E.CODES.get("t"):return E.CODES.get(" ");case E.CODES.get("v"):return E.CODES.get("\v");default:if(t<=m.MAX_ASCII&&!F.isalnum(t))return t;break}throw new G(O.ERR_INVALID_ESCAPE,B.from(e))}static parseClassChar(B,e){if(!B.more())throw new G(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 G(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 G(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 G(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,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 G(O.ERR_INVALID_REPEAT_OP,s.from(r));let o=this.stack.length;if(o===0)throw new G(O.ERR_MISSING_REPEAT_ARGUMENT,s.from(i));let u=this.stack[o-1];if(h.isPseudoOp(u.op))throw new G(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 G(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 tB(B.runes).cleanClass().toArray(),B.runes.length===2&&B.runes[0]===0&&B.runes[1]===m.MAX_RUNE?(B.runes=[],B.op=h.Op.ANY_CHAR):B.runes.length===4&&B.runes[0]===0&&B.runes[1]===E.CODES.get(`
17
+ `)-1&&B.runes[2]===E.CODES.get(`
18
+ `)+1&&B.runes[3]===m.MAX_RUNE&&(B.runes=[],B.op=h.Op.ANY_CHAR_NOT_NL));}collapse(B,e){if(B.length===1)return B[0];let t=0;for(let C of B)t+=C.op===e?C.subs.length:1;let i=new Array(t).fill(null),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 p=null,g=0,d=0;if(c<t){let I=B[e+c];if(I.op===h.Op.CONCAT&&I.subs.length>0&&(I=I.subs[0]),I.op===h.Op.LITERAL&&(p=I.runes,g=I.runes.length,d=I.flags&f.FOLD_CASE),d===C){let S=0;for(;S<r&&S<g&&s[S]===p[S];)S++;if(S>0){r=S;continue}}}if(c!==o)if(c===o+1)B[i++]=B[e+o];else {let I=this.newRegexp(h.Op.LITERAL);I.flags=C,I.runes=s.slice(0,r);for(let T=o;T<c;T++)B[e+T]=this.removeLeadingString(B[e+T],r),this.checkLimits(B[e+T]);let S=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),w=this.newRegexp(h.Op.CONCAT);w.subs=[I,S],B[i++]=w;}o=c,s=p,r=g,C=d;}t=i,e=0,o=0,i=0;let u=null;for(let c=0;c<=t;c++){let p=null;if(!(c<t&&(p=O.leadingRegexp(B[e+c]),u!==null&&u.equals(p)&&(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 w=S!==o;B[e+S]=this.removeLeadingRegexp(B[e+S],w),this.checkLimits(B[e+S]);}let d=this.collapse(B.slice(e+o,e+c),h.Op.ALTERNATE),I=this.newRegexp(h.Op.CONCAT);I.subs=[g,d],B[i++]=I;}o=c,u=p;}}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 p=o;for(let d=o+1;d<c;d++){let I=B[e+p],S=B[e+d];(I.op<S.op||I.op===S.op&&(I.runes!==null?I.runes.length:0)<(S.runes!==null?S.runes.length:0))&&(p=d);}let g=B[e+o];B[e+o]=B[e+p],B[e+p]=g;for(let d=o+1;d<c;d++)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 ni(this.wholeRegexp);for(;i.more();){let s=-1;B:switch(i.peek()){case E.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 E.CODES.get("|"):this.parseVerticalBar(),i.skip(1);break;case E.CODES.get(")"):this.parseRightParen(),i.skip(1);break;case E.CODES.get("^"):(this.flags&f.ONE_LINE)!==0?this.op(h.Op.BEGIN_TEXT):this.op(h.Op.BEGIN_LINE),i.skip(1);break;case E.CODES.get("$"):(this.flags&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 E.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 E.CODES.get("["):this.parseClass(i);break;case E.CODES.get("*"):case E.CODES.get("+"):case E.CODES.get("?"):{s=i.pos();let r=null;switch(i.pop()){case E.CODES.get("*"):r=h.Op.STAR;break;case E.CODES.get("+"):r=h.Op.PLUS;break;case E.CODES.get("?"):r=h.Op.QUEST;break}this.repeat(r,e,t,s,i,B);break}case E.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&m.MAX_BMP)<<16>>16,this.repeat(h.Op.REPEAT,e,t,s,i,B);break}case E.CODES.get("\\"):{let r=i.pos();if(i.skip(1),(this.flags&f.PERL_X)!==0&&i.more())switch(i.pop()){case E.CODES.get("A"):this.op(h.Op.BEGIN_TEXT);break B;case E.CODES.get("b"):this.op(h.Op.WORD_BOUNDARY);break B;case E.CODES.get("B"):this.op(h.Op.NO_WORD_BOUNDARY);break B;case E.CODES.get("C"):throw new G(O.ERR_INVALID_ESCAPE,"\\C");case E.CODES.get("Q"):{let u=i.rest(),c=u.indexOf("\\E");c>=0?(u=u.substring(0,c),i.skipString(u),i.skipString("\\E")):i.skipString(u);let p=0;for(;p<u.length;){let g=u.codePointAt(p);this.literal(g),p+=F.charCount(g);}break B}case E.CODES.get("z"):this.op(h.Op.END_TEXT);break B;default:i.rewindTo(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 tB;if(this.parseUnicodeClass(i,u)){C.runes=u.toArray(),this.push(C);break B}}let o=new tB;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 G(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 G(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 G(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 G(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 E.CODES.get("i"):i|=f.FOLD_CASE,r=true;break;case E.CODES.get("m"):i&=-17,r=true;break;case E.CODES.get("s"):i|=f.DOT_NL,r=true;break;case E.CODES.get("U"):i|=f.NON_GREEDY,r=true;break;case E.CODES.get("-"):if(s<0)break B;s=-1,i=~i,r=false;break;case E.CODES.get(":"):case E.CODES.get(")"):if(s<0){if(!r)break B;i=~i;}C===E.CODES.get(":")&&this.op(h.Op.LEFT_PAREN),this.flags=i;return;default:break B}}throw new G(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 G(O.ERR_UNEXPECTED_PAREN,this.wholeRegexp);let B=this.pop(),e=this.pop();if(e.op!==h.Op.LEFT_PAREN)throw new G(O.ERR_UNEXPECTED_PAREN,this.wholeRegexp);if(this.flags=e.flags,e.lb!==0){if(O.hasCapture(B))throw new G(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()!==E.CODES.get("\\")||!B.more())return false;B.pop();let i=B.from(t),s=$e.has(i)?$e.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=ht.has(s)?ht.get(s):null;if(r===null)throw new G(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===E.CODES.get("P")&&(i=-1),!B.more())throw B.rewindTo(t),new G(O.ERR_INVALID_CHAR_RANGE,B.rest());s=B.pop();let r;if(s!==E.CODES.get("{"))r=F.runeToString(s);else {let c=B.rest(),p=c.indexOf("}");if(p<0)throw B.rewindTo(t),new G(O.ERR_INVALID_CHAR_RANGE,B.rest());r=c.substring(0,p),B.skipString(r),B.skip(1);}r.length!==0&&r.codePointAt(0)===E.CODES.get("^")&&(i=0-i,r=r.substring(1));let C=O.unicodeTable(r);if(C===null)throw new G(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 tB().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 tB,s=1;B.more()&&B.lookingAt("^")&&(s=-1,B.skip(1),(this.flags&f.CLASS_NL)===0&&i.appendRange(E.CODES.get(`
19
+ `),E.CODES.get(`
20
+ `)));let r=true;for(;!B.more()||B.peek()!==E.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 G(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 G(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);}},ii=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}},si=class rB{static initTest(B){let e=rB.compile(B),t=new rB(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 rB.compileImpl(B,f.PERL,false)}static compilePOSIX(B){return rB.compileImpl(B,f.POSIX,true)}static compileImpl(B,e,t){let i=St.parse(B,e),s=i.maxCap();i=At.simplify(i);let r=ei.build(i),C=It.compileRegexp(i),o=new rB(B,C,s,t);o.prefilter=r.type===L.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 rB.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 ii,this.dfa=new mt(this.prog),this.onepass=Qe.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 Qe.execute(this,B,e,t,i);if(i>0)return this.prog.numLb===0&&B.endPos()<=HB.maxBitStateLen(this.prog)?HB.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()<=HB.maxBitStateLen(this.prog))return HB.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=PB.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=PB.fromMachine(s),r=true):(s=PB.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(y.fromUTF16(B),0,f.UNANCHORED,0)!==null}matchWithGroup(B,e,t,i,s){return B instanceof cB||(F.isByteArray(B)?B=fB.utf8(B):B=fB.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()?y.fromUTF16(B.asCharSequence(),0,t):y.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(y.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=y.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 p=B.step(r);p<0?r=s+1:r+=p&7;}else r=u[1];o=u[1],c&&(i.push(t(this.pad(u))),C++);}return i}findUTF8(B){let e=this.executeEngine(y.fromUTF8(B),0,f.UNANCHORED,2);return e===null?null:B.slice(e[0],e[1])}findUTF8Index(B){let e=this.executeEngine(y.fromUTF8(B),0,f.UNANCHORED,2);return e===null?null:e.slice(0,2)}find(B){let e=this.executeEngine(y.fromUTF16(B),0,f.UNANCHORED,2);return e===null?"":B.substring(e[0],e[1])}findIndex(B){return this.executeEngine(y.fromUTF16(B),0,f.UNANCHORED,2)}findUTF8Submatch(B){let e=this.executeEngine(y.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(y.fromUTF8(B),0,f.UNANCHORED,this.prog.numCap))}findSubmatch(B){let e=this.executeEngine(y.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(y.fromUTF16(B),0,f.UNANCHORED,this.prog.numCap))}findAllUTF8(B,e){let t=this.allMatches(y.fromUTF8(B),e,i=>B.slice(i[0],i[1]));return t.length===0?null:t}findAllUTF8Index(B,e){let t=this.allMatches(y.fromUTF8(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAll(B,e){let t=this.allMatches(y.fromUTF16(B),e,i=>B.substring(i[0],i[1]));return t.length===0?null:t}findAllIndex(B,e){let t=this.allMatches(y.fromUTF16(B),e,i=>i.slice(0,2));return t.length===0?null:t}findAllUTF8Submatch(B,e){let t=this.allMatches(y.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(y.fromUTF8(B),e);return t.length===0?null:t}findAllSubmatch(B,e){let t=this.allMatches(y.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(y.fromUTF16(B),e);return t.length===0?null:t}},ri=class lB{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 d=g%32;t+="\\x",t+=(d>>4).toString(16).toUpperCase(),t+=(d&15).toString(16).toUpperCase(),C+=3,i=true;continue}}t+="c",C+=2,i=true;continue;case "u":if(C+2<s){if(B[C+2]==="{"){let g=C+3,d=false,I=false;for(;g<s;){let S=B[g];if(S==="}"){I=true;break}if(!lB.isHexadecimal(S))break;d=true,g++;}if(I&&d){t+="\\x",C+=2,i=true;continue}}else if(C+5<s){let g=true;for(let d=0;d<4;d++)if(!lB.isHexadecimal(B[C+2+d])){g=false;break}if(g){t+="\\x{"+B.substring(C+2,C+6)+"}",C+=6,i=true;continue}}}t+="u",C+=2,i=true;continue;case "x":{let g=false;if(C+2<s&&B[C+2]==="{"){let d=C+3,I=false,S=false;for(;d<s;){let w=B[d];if(w==="}"){S=true;break}if(!lB.isHexadecimal(w))break;I=true,d++;}S&&I&&(g=true);}else C+3<s&&lB.isHexadecimal(B[C+2])&&lB.isHexadecimal(B[C+3])&&(g=true);g?(t+="\\x",C+=2):(t+="x",C+=2,i=true);continue}case "n":case "r":case "t":case "a":case "f":case "v":case "d":case "D":case "s":case "S":case "w":case "W":case "b":case "B":case "p":case "P":case "A":case "z":case "Q":case "E":case "0":case "1":case "2":case "3":case "4":case "5":case "6":case "7":t+="\\"+u,C+=2;continue;default:{let g=B.codePointAt(C+1);if(g>=48&&g<=57||g>=65&&g<=90||g>=97&&g<=122){let d=F.charCount(g);t+=B.substring(C+1,C+1+d),C+=d+1,i=true;}else {t+="\\";let d=F.charCount(g);t+=B.substring(C+1,C+1+d),C+=d+1;}continue}}}else if(u==="/"){t+="\\/",C+=1,i=true;continue}else if(u==="[")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),p=F.charCount(c);t+=B.substring(C,C+p),C+=p;}let o=i?t:B;return e.length>0?`(?${e})${o}`:o}},Nt=class P{static CASE_INSENSITIVE=z.CASE_INSENSITIVE;static DOTALL=z.DOTALL;static MULTILINE=z.MULTILINE;static DISABLE_UNICODE_GROUPS=z.DISABLE_UNICODE_GROUPS;static LONGEST_MATCH=z.LONGEST_MATCH;static LOOKBEHINDS=z.LOOKBEHINDS;static quote(B){return F.quoteMeta(B)}static quoteReplacement(B,e=false){return Ke.quoteReplacement(B,e)}static translateRegExp(B){return ri.translate(B)}static compile(B,e=0){let t=B;if((e&P.CASE_INSENSITIVE)!==0&&(t=`(?i)${t}`),(e&P.DOTALL)!==0&&(t=`(?s)${t}`),(e&P.MULTILINE)!==0&&(t=`(?m)${t}`),(e&-544)!==0)throw new vn("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=si.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=fB.utf8(B)),new Ke(this,B)}test(B){return F.isByteArray(B)?this.re2Input.matchUTF8(B):this.re2Input.match(B)}testExact(B){let e=F.isByteArray(B)?y.fromUTF8(B):y.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"],Ci=new Set(Ce),$=new Set([...Ce,...Ce.map(n=>`${n}?`)]);function v(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}var dB=new Set(["minLength","maxLength","pattern","enum"]),mB=new Set(["minimum","maximum","integer"]),OB=new Set(["shape"]),FB=new Set(["items","minItems","maxItems"]),Tt=new Set(["type","description"]),kB=new Set([...Tt,...dB,...mB,...OB,...FB]),oi={string:dB,number:mB,wref:OB,array:FB,boolean:new Set};function x(n){if(!v(n)||!("type"in n)||typeof n.type!="string"||!$.has(n.type))return false;let B=n.type.endsWith("?")?n.type.slice(0,-1):n.type,e=oi[B]??new Set;return !(!Object.keys(n).every(t=>Tt.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"&&$.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"&&$.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 ai(n){return typeof n=="string"&&$.has(n)?n:x(n)?n.type:null}function Rt(n){let B=ai(n);if(!B)return null;let e=B.endsWith("?")?B.slice(0,-1):B;return Ci.has(e)?e:null}var Y=64*1024,IB=256,AB=256,li="uses unsupported regex syntax",oe=`WarmHub content fields are limited to ${Y} bytes. WarmHub is not a document store; store large documents in S3, Box, Drive, or another document system and reference them from WarmHub instead.`,ui=new TextEncoder;function CB(n){return ui.encode(n).byteLength}function ae(n,B){if(B.length*3<=Y)return null;let e=CB(B);return e<=Y?null:`Field "${n}" is ${e} bytes; ${oe}`}function SB(n,B,e){let t=ae(n,B);t&&e.push(t);}function JB(n){try{return new RegExp(n),!1}catch{return true}}function ci(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 Nt.compile(ci(n))}catch{return}}function Lt(n){return le(n)?void 0:li}function X(n){return typeof n=="string"&&n.endsWith("?")?{spec:n.slice(0,-1),optionalByType:true}:x(n)&&typeof n.type=="string"&&n.type.endsWith("?")?{spec:{...n,type:n.type.slice(0,-1)},optionalByType:true}:{spec:n,optionalByType:false}}function UB(n,B){return n?.endsWith("?")||X(B).optionalByType}var wt=["org:read","org:configure","org:admin","org:action-callback"];function hi(n){return wt.includes(n)}var pi="003e7e6c-2f1e-53ea-9dfa-627edd04a8cc",Ei=/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/;function bt(n){if(!Ei.test(n))throw new Error("Operation-event submission ID must be a canonical UUID");let B=n.toLowerCase().replaceAll("-","");return Uint8Array.from({length:16},(e,t)=>Number.parseInt(B.slice(t*2,t*2+2),16))}function ue(n,B){return (n<<B|n>>>32-B)>>>0}function Di(n){let B=n.length*8,e=Math.ceil((n.length+9)/64)*64,t=new Uint8Array(e);t.set(n),t[n.length]=128;let i=new DataView(t.buffer);i.setUint32(e-8,Math.floor(B/4294967296)),i.setUint32(e-4,B>>>0);let s=1732584193,r=4023233417,C=2562383102,o=271733878,u=3285377520,c=new Uint32Array(80);for(let d=0;d<e;d+=64){for(let b=0;b<16;b+=1)c[b]=i.getUint32(d+b*4);for(let b=16;b<80;b+=1)c[b]=ue((c[b-3]??0)^(c[b-8]??0)^(c[b-14]??0)^(c[b-16]??0),1);let I=s,S=r,w=C,T=o,K=u;for(let b=0;b<80;b+=1){let Q,W;b<20?(Q=S&w|~S&T,W=1518500249):b<40?(Q=S^w^T,W=1859775393):b<60?(Q=S&w|S&T|w&T,W=2400959708):(Q=S^w^T,W=3395469782);let ln=ue(I,5)+Q+K+W+(c[b]??0)>>>0;K=T,T=w,w=ue(S,30),S=I,I=ln;}s=s+I>>>0,r=r+S>>>0,C=C+w>>>0,o=o+T>>>0,u=u+K>>>0;}let p=new Uint8Array(20),g=new DataView(p.buffer);for(let[d,I]of [s,r,C,o,u].entries())g.setUint32(d*4,I);return p}function fi(n){let B=Array.from(n,e=>e.toString(16).padStart(2,"0")).join("").slice(0,32);return `${B.slice(0,8)}-${B.slice(8,12)}-${B.slice(12,16)}-${B.slice(16,20)}-${B.slice(20)}`}function gi(n,B){if(!Number.isInteger(B)||B<0||B>2147483647)throw new Error("Stream chunk ordinal must be an integer from 0 through 2147483647");bt(n);let e=n.toLowerCase(),t=bt(pi),i=new TextEncoder().encode(`${e}:${B}`),s=Di(Uint8Array.from([...t,...i])).slice(0,16);return s[6]=(s[6]??0)&15|80,s[8]=(s[8]??0)&63|128,fi(s)}var ce=new Set([8203,8204,8205,8288,8294,8295,8296,8297,8234,8235,8236,8237,8238,8232,8233]);function he(n){return n<=31||n===127||n>=128&&n<=159}function di(n){return n<=65535?`\\u${n.toString(16).padStart(4,"0")}`:`\\u{${n.toString(16)}}`}function mi(n){for(let B of n){let e=B.codePointAt(0);if(e!==void 0&&(he(e)||ce.has(e)||e===34))return true}return false}function Oi(n){return n.length<=120?n:`${n.slice(0,120)}...<truncated>`}function yt(n){if(!mi(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+=he(i)||ce.has(i)?di(i):t);}return e}function H(n){return Oi(yt(n))}function Fi(n){return yt(n)}function NB(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(he(e))return {unsafe:true,reason:`control character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`};if(ce.has(e))return {unsafe:true,reason:`format or separator character (U+${e.toString(16).padStart(4,"0").toUpperCase()})`}}}return {unsafe:false}}function TB(n){return n.endsWith("?")?n.slice(0,-1):n}function BB(...n){return Gt(H,n)}function RB(...n){return Gt(Fi,n)}function Gt(n,B){return B.map(e=>typeof e=="number"?`[${e}]`:n(e)).join(".").replace(/\.\[/g,"[")}function hB(n,B,e,t){let i=Ii(B);if(typeof n=="string"){if(i.length>0)return;SB(t??"<value>",n,e);return}if(Array.isArray(n)){let r=i.filter(Si);if(i.length>0&&r.length===0)return;let C=vB(r.map(Ai));for(let o=0;o<n.length;o++)hB(n[o],C,e,`${t??"<value>"}[${o}]`);return}if(!v(n))return;let s=vB(i.map(Ni));if(!(i.length>0&&s.length===0))for(let[r,C]of Object.entries(n)){let o=t?BB(t,r):H(r);SB(o,r,e),hB(C,vB(s.map(u=>u.get(r))),e,o);}}function Ii(n){return vB(n.map(B=>X(B).spec))}function vB(n){return n.filter(B=>B!==void 0)}function Ai(n){if(Array.isArray(n))return n[0];if(x(n)&&n.type==="array")return n.items}function Si(n){return n==="array"||Array.isArray(n)?true:x(n)&&n.type==="array"}function Ni(n){if(!v(n)||x(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 KB=500;function _t(n){let B=new Set;for(let e of Object.keys(n))B.add(e.endsWith("?")?e.slice(0,-1):e);return B}function Pt(n,B){let e=[],t=0;for(let i of Object.keys(n))B.has(i)||(t++,e.length<KB&&e.push(i));if(t!==0)return t>KB?{undeclaredFields:e,undeclaredFieldsTruncated:true,totalUndeclared:t}:{undeclaredFields:e}}function xt(n){let B=Mt(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 Mt(n){return Object.entries(n).map(([B,e])=>{let t=B.endsWith("?")?B.slice(0,-1):B,i=X(e);return {fieldName:t,displayName:H(t),isOptional:UB(B,e),validate:pe(i.spec)}})}function pe(n){if(typeof n=="string")return (B,e,t)=>Ht(B,e,n,t);if(Array.isArray(n)){let B=n.length>0?pe(X(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(x(n)){if((n.type.endsWith("?")?n.type.slice(0,-1):n.type)==="array"){let t="items"in n&&n.items!=null?pe(X(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=Ti(n);return (t,i,s)=>{Ht(t,i,n.type,s),e(t,i,s);}}if(v(n)){let B=Mt(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=BB(e,r.fieldName);if(C==null){r.isOptional||i.push(`Missing required field: "${o}"`);continue}r.validate(o,C,i);}}}return ()=>{}}function Ti(n){let B=typeof n.pattern=="string"?n.pattern:void 0,e=B===void 0?void 0:Ri(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=H(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 "${H(String(i))}" is not in allowed values: ${n.enum.map(r=>H(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 Ri(n){if(JB(n))return {kind:"invalid"};let B=le(n);return B?{kind:"compiled",regex:B}:{kind:"unsupported"}}function Ht(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}`):SB(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=>xt(i.fields)),e=new Set;for(let i of n)for(let s of _t(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);hB(s,t,r);let C=Pt(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 kt(n,B){return De(B)(n)}function De(n){return Ee([{name:"",fields:n}])}function fe(n){return (n.endsWith("?")?n.slice(0,-1):n).toLowerCase()}function Jt(n){return n.split(".").map(B=>fe(B)).join(".")}function Li(n,B){return n.allowUnsafeFieldNamePaths.has(B)}function LB(n,B,e,t,i){if(typeof e=="string"){$.has(e)||t.push(`Invalid type at "${n}": "${H(e)}" (expected number|string|boolean|wref|array, optionally with ? suffix)`);return}if(Array.isArray(e)){if(e.length!==1){t.push(`Invalid array type at "${n}": array type spec must have exactly 1 element`);return}LB(`${n}[]`,`${B}[]`,e[0],t,i);return}if(v(e)){if(x(e)){wi(n,B,e,t,i);return}if("type"in e&&typeof e.type=="string"&&$.has(e.type)&&Object.keys(e).every(s=>kB.has(s))){let s=e.type.endsWith("?")?e.type.slice(0,-1):e.type,C=s==="string"?dB:s==="number"?mB:s==="wref"?OB:s==="array"?FB:new Set,o=Object.keys(e).filter(c=>c!=="type"&&c!=="description"&&!C.has(c));if(o.length>0&&o.some(p=>{let g=e[p];return typeof g!="string"&&!Array.isArray(g)&&!v(g)})){for(let p of o)t.push(`Constraint "${H(p)}" at "${n}" is not valid for type "${s}"`);return}if(o.length===0){let c=[];for(let[p,g]of Object.entries(e))p==="type"||p==="description"||C.has(p)&&((p==="minLength"||p==="maxLength"||p==="minimum"||p==="maximum"||p==="minItems"||p==="maxItems")&&typeof g!="number"?c.push(`Constraint "${p}" at "${n}" must be a number, got ${typeof g}`):p==="integer"&&typeof g!="boolean"?c.push(`Constraint "${p}" at "${n}" must be a boolean, got ${typeof g}`):p==="pattern"&&typeof g!="string"?c.push(`Constraint "${p}" at "${n}" must be a string, got ${typeof g}`):p==="enum"&&!Array.isArray(g)?c.push(`Constraint "${p}" at "${n}" must be an array, got ${typeof g}`):p==="shape"&&typeof g!="string"&&c.push(`Constraint "${p}" at "${n}" must be a string, got ${typeof g}`));if(c.length>0){t.push(...c);return}}if(Object.entries(e).some(([c,p])=>!(c==="type"||c==="description"||typeof p=="string"||Array.isArray(p)||v(p)))){t.push(`Object at "${n}" looks like a typed field object (type: "${H(String(e.type))}") but has constraint values with invalid types. Check that constraint values match their expected types (e.g., minLength must be a number, not a string).`);return}}for(let[s,r]of Object.entries(e)){let C=TB(s),o=NB(C),u=BB(n,s),c=RB(B,s);if(o.unsafe&&!Li(i,c)){t.push(`Invalid field name at "${u}": ${o.reason}`);continue}LB(u,c,r,t,i);}return}t.push(`Invalid type at "${n}": expected string, array, or object, got ${typeof e}`);}function wi(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(!$.has(s)){t.push(`Invalid type at "${n}.type": "${H(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=H(C);r==="string"?dB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "string"`):r==="number"?mB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "number"`):r==="wref"?OB.has(C)||t.push(`Constraint "${o}" at "${n}" is not valid for type "wref"`):r==="array"?FB.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>Y&&t.push(`"minLength" at "${n}" cannot exceed ${Y}`),r==="string"&&typeof e.maxLength=="number"&&Number.isFinite(e.maxLength)&&Number.isInteger(e.maxLength)&&e.maxLength>Y&&t.push(`"maxLength" at "${n}" cannot exceed ${Y}`),"pattern"in e&&typeof e.pattern!="string"&&t.push(`"pattern" at "${n}" must be a string`),"pattern"in e&&typeof e.pattern=="string")if(JB(e.pattern))t.push(`"pattern" at "${n}" is not a valid regular expression`);else {let C=Lt(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=CB(C);if(o>Y){t.push(`"enum" value at "${n}" is ${o} bytes; string enum values cannot exceed ${Y} 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?LB(`${n}.items`,`${B}.items`,e.items,t,i):t.push(`Typed array at "${n}" must have an "items" key specifying the element type`));}function bi(n={}){return {allowUnsafeFieldNamePaths:new Set(n.allowUnsafeFieldNamePaths??[])}}function yi(n,B){return n.allowUnsafeFieldNamePaths.has(B)}var Gi=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,r=B?`${B}.${s}`:s,C=Rt(i);if(C==="string"||C==="wref"||C==="number"||C==="boolean"){e.push(r);continue}x(i)||v(i)&&e.push(...VB(i,r));}return e}function de(n){return !(!v(n)||Array.isArray(n)||x(n)||"type"in n&&typeof n.type=="string"&&$.has(n.type)&&Object.keys(n).every(B=>kB.has(B)))}function Ut(n,B,e,t,i=B){let s=new Map;for(let[r,C]of Object.entries(n)){let o=TB(r),u=NB(o),c=BB(B,r),p=RB(i,r);if(u.unsafe&&!yi(t,p)){e.push(`Invalid field name at "${c}": ${u.reason}`);continue}let g=fe(r),d=s.get(g);if(d!==void 0){e.push(`${BB(B,r)}: duplicate field name. Shape already declares "${H(d)}" (case-insensitive match).`);continue}s.set(g,r),de(C)?Ut(C,c,e,t,p):LB(c,p,C,e,t);}}function ge(n,B,e){if(Array.isArray(B)){B.length===1&&ge(`${n}[]`,B[0],e);return}if(x(B)){let t=X(B).spec;x(t)&&typeof t.type=="string"&&t.type==="array"&&"items"in t&&ge(`${n}.items`,t.items,e);return}de(B)&&me(B,n,e);}function me(n,B,e){for(let[t,i]of Object.entries(n)){let s=RB(B,t);NB(TB(t)).unsafe&&e.push(s),de(i)?me(i,s,e):ge(s,i,e);}}function vt(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 me(B,"fields",e),e}function Kt(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))Gi.has(c)||t.push(`Unsupported shape definition key "${H(c)}"`);if(!("fields"in e))return {valid:false,errors:['Shape definition must have a "fields" property']};let i=e.fields;if(typeof i!="object"||i===null||Array.isArray(i))return {valid:false,errors:['"fields" must be a plain object mapping field names to types']};let s=bi(B);Ut(i,"fields",t,s);let r=VB(i),C=r.length,o=new Set,u=new Set;for(let c of r){let p=CB(c);p>AB&&t.push(`Indexable field path "${H(c)}" is ${p} bytes; maximum is ${AB}`);let g=Jt(c);if(o.has(g)){u.add(g);continue}o.add(g);}for(let c of u)t.push(`Shape declares ambiguous indexable field path "${H(c)}"; dotted field names, optional-key suffixes, and case-insensitive folded paths must not collide with another indexable path`);return C>IB&&t.push(`Shape declares ${C} indexable scalar fields; maximum is ${IB}`),"description"in e&&typeof e.description!="string"&&t.push('"description" must be a string'),hB(e,[],t),t.length>0?{valid:false,errors:t}:{valid:true}}function oB(n){if(!n||typeof n!="object")return JSON.stringify(n);if(Array.isArray(n))return `[${n.map(e=>oB(e)).join(",")}]`;let B=n;return `{${Object.keys(B).sort().map(e=>`${JSON.stringify(e)}:${oB(B[e])}`).join(",")}}`}var Oe=["Arc","Bond","Pair","Set","List"],Vt=["Triple"],_i=[...Oe,...Vt];function jt(n){return Oe.includes(n)}function jB(n){return Vt.includes(n)}function YB(n){return _i.includes(n)}var Pi=["Content"];var xi=["Readme","Agents"],Mi=["LlmsTxt"],Yt=n=>n==="Content";var Qt=n=>xi.includes(n),Wt=n=>Mi.includes(n);var qt=["View"],ki=n=>qt.includes(n),zt=["LicenseSubject","LicenseDeclaration"],Ji=n=>zt.includes(n);function Xt(n){return YB(n)||ki(n)||Ji(n)}function QB(n){return Oe.includes(n)||Pi.includes(n)||qt.includes(n)||zt.includes(n)}function $t(n,B){let e=[];return Wi(n,e,B?.checkAddAdd??true,B),e}function Yi(n,B){return B?.sourceOperationIndexes?.[n]??n}function Qi(n){return n.name}function Wi(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=Qi(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:Yi(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 qi=["arc","bond","set","list","pair"],zi=["arc","bond","set","list"],Xi=["add","revise"],Fe="Collection create requires a name. Collections are ordinary named things (ADR 0004).",Ie='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 $i(n){return qi.find(B=>B===n)??null}function Zi(n){return Xi.find(B=>B===n)??null}function Zt(n,B){let e=[];return e.push(...Bs(n,B)),e.push(...es(n,B)),e.push(...ts(n,B)),e.push(...ns(n,B)),e.push(...is(n,B)),e}function Bs(n,B){let e=[],t=n.name,i=n.operation==="rename"&&(n.kind==="shape"||n.name!==void 0&&!iB(n.name)),s=i&&t!==void 0&&Xt(t)&&n.newName!==void 0&&!YB(n.newName)&&!QB(n.newName);if(t&&jB(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&&!iB(n.name))&&n.newName&&jB(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&&QB(t)&&!s?t:i&&n.newName&&QB(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=iB(t);if(r&&jB(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&&jt(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 es(n,B){if(n.kind!=="thing"||!n.name)return [];let e=iB(n.name);if(!e||!Yt(e.shapePrefix))return [];let t=e.bareName;return Wt(t)?[{code:"READ_ONLY_BUILTIN_CONTENT",operationIndex:B,message:`${e.shapePrefix}/${t} is synthesized; writes are not allowed`}]:Qt(t)?[]:[{code:"UNKNOWN_CONTENT_NAME",operationIndex:B,message:`${e.shapePrefix}/${t} is not a recognized well-known content name`}]}function ts(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=iB(t);if(i&&YB(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 ns(n,B){let e=[];return !n.about||typeof n.about=="string"||e.push({code:"VALIDATION_ERROR",operationIndex:B,message:Ie}),e}function is(n,B){let e=[];if(n.kind!=="collection"||Zi(n.operation)===null)return e;n.operation==="add"&&!n.name&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:Fe});let t=$i(n.type);if(t===null&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:`Collection "type" is invalid. Use one of: ${zi.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=ss(t,n.members);i&&e.push({code:"VALIDATION_ERROR",operationIndex:B,message:i});}return e}function ss(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 rs(n,B){return Zt(n,B)}function Cs(n,B){return $t(n,B)}var os=new TextEncoder;async function WB(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 wB(n){return eB(n),os.encode(n)}function eB(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 pB(n,B){eB(n),eB(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 Te=67108864,zB=10,Bn="warmhub-repository-checkpoint",en=2,as="repository-checkpoint.json";var Re=z$1.string().regex(/^[0-9a-f]{64}$/),Se=z$1.number().int().nonnegative().safe(),Ne=z$1.number().int().positive().safe(),ls=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(),ls,z$1.string(),z$1.array(qB),z$1.record(z$1.string(),qB)])),Ae=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}),tn=z$1.string().regex(/^[^\r\n]+@v[1-9]\d*$/,"Checkpoint wref must be pinned with @vN"),us=z$1.array(tn).superRefine((n,B)=>{for(let e=1;e<n.length;e+=1){let t=n[e-1],i=n[e];t!==void 0&&i!==void 0&&pB(t,i)>=0&&B.addIssue({code:"custom",path:[e],message:"Affirmed wrefs must be unique and strictly increasing"});}}),Le=z$1.discriminatedUnion("kind",[Ae.extend({kind:z$1.literal("shape")}).strict(),Ae.extend({kind:z$1.enum(["thing","collection"]),shapeName:z$1.string().min(1)}).strict(),Ae.extend({kind:z$1.literal("assertion"),shapeName:z$1.string().min(1),aboutWref:tn,affirmedWrefs:us}).strict()]),nn=z$1.object({part:Se,path:z$1.string().min(1),recordCount:Ne,byteLength:Ne,sha256:Re}).strict(),sn=z$1.object({shapeName:z$1.string().min(1),recordCount:Ne,chunks:z$1.array(nn).min(1)}).strict(),cs={format:z$1.literal(Bn),formatVersion:z$1.literal(en),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:Se,complete:z$1.literal(true),recordCount:Se,streams:z$1.array(sn)},we=z$1.object(cs).strict(),XB=we.extend({contentSha256:Re}).strict();var rn=10**zB-1;async function hs(n){if(n.length===0)throw new RangeError("Checkpoint Shape name must not be empty");return WB(wB(n))}async function ps(n,B){return Es(B),`records/${await hs(n)}/part-${B.toString().padStart(zB,"0")}.jsonl`}async function Cn(n,B,e){let t=await ps(B,e);if(n!==t)throw new Error("Checkpoint chunk path does not match its Shape and part")}function Es(n){if(!Number.isSafeInteger(n)||n<0||n>rn)throw new RangeError(`Checkpoint chunk part must be an integer from 0 through ${rn}`)}var Ds=new TextDecoder("utf-8",{fatal:true});async function be(n){let B=XB.parse(n),{contentSha256:e,...t}=B;await ds(t);let i=await gs(t);if(e!==i)throw new Error("Checkpoint manifest content digest does not match");return B}async function an(n){let B=await be(n);return wB(`${oB(B)}
21
+ `)}async function fs(n){ms(n);let B=Ds.decode(n),e=await be(XB.parse(JSON.parse(B.slice(0,-1)))),t=await an(e);if(!Os(n,t))throw new Error("Checkpoint manifest bytes are not canonical");return e}async function gs(n){return WB(wB(oB(n)))}async function ds(n){let B,e=0;for(let t of n.streams){if(B!==void 0&&pB(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 Cn(r.path,t.shapeName,r.part),r.byteLength>Te&&r.recordCount!==1)throw new Error("An oversized checkpoint chunk must contain exactly one row");i=on(i,r.recordCount);}if(t.recordCount!==i)throw new Error("Checkpoint manifest stream record count does not match");e=on(e,t.recordCount);}if(n.recordCount!==e)throw new Error("Checkpoint manifest record count does not match")}function on(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 ms(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 Os(n,B){return n.length!==B.length?false:n.every((e,t)=>e===B[t])}new TextEncoder;var Fs=new TextDecoder("utf-8",{fatal:true});function Is(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=Fs.decode(n),e=Le.parse(JSON.parse(B.slice(0,-1)));if(B!==`${oB(e)}
22
+ `)throw new Error("Checkpoint row bytes are not canonical");return e}function As(n){if(n.length===0)throw new Error("Checkpoint stream Shape name must not be empty");return eB(n),{shapeName:n,recordCount:0,hasShapeDefinition:false}}function Ss(n,B){let e=B;if(eB(e.wref),eB(e.durableId),e.kind==="assertion"&&eB(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&&pB(n.previousWref,e.wref)>=0)throw new Error("Checkpoint stream rows must be strictly increasing by wref");return e.kind==="shape"&&(n.hasShapeDefinition=true),n.previousWref=e.wref,n.recordCount=Ts(n.recordCount),e}function Ns(n){if(!n.hasShapeDefinition)throw new Error("Checkpoint stream must contain its matching Shape definition");return n.recordCount}function Ts(n){let B=n+1;if(!Number.isSafeInteger(B))throw new RangeError("Checkpoint stream record count must be a safe integer");return B}/*! 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{Lt as A,ai as B,Fe as C,Xi as D,$i as E,Ne as F,WB as G,Zi as H,Te as I,os as J,Es as K,ps as L,Ds as M,fs as N,Jt as O,Ut as P,xt as Q,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,U as w,V as x,oe as y,ae as z};//# sourceMappingURL=chunk-2E722CFI.js.map
36
- //# sourceMappingURL=chunk-2E722CFI.js.map
35
+ */export{wt as A,hi as B,gi as C,Ie as D,rs as E,Cs as F,Te as G,zB as H,as as I,Re as J,fs as K,Is as L,As as M,Ss as N,Ns as O,vt as P,Kt as Q,kt as R,un as a,cn as b,pn as c,En as d,Dn as e,fn as f,gn as g,dn as h,mn as i,On as j,Fn as k,iB as l,$B as m,In as n,An as o,Sn as p,Rn as q,yn as r,Me as s,Hn as t,_n as u,xn as v,v as w,Y as x,oe as y,ae as z};//# sourceMappingURL=chunk-JBTUW4MQ.js.map
36
+ //# sourceMappingURL=chunk-JBTUW4MQ.js.map