var Regex=(()=>{var Z=Object.defineProperty;var xe=Object.getOwnPropertyDescriptor;var De=Object.getOwnPropertyNames;var be=Object.prototype.hasOwnProperty;var Te=(e,n)=>{for(var t in n)Z(e,t,{get:n[t],enumerable:!0})},Ue=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of De(n))!be.call(e,s)&&s!==t&&Z(e,s,{get:()=>n[s],enumerable:!(r=xe(n,s))||r.enumerable});return e};var Re=e=>Ue(Z({},"__esModule",{value:!0}),e);var Je={};Te(Je,{pattern:()=>H,regex:()=>We,rewrite:()=>Ke});var d=Object.freeze({DEFAULT:"DEFAULT",CHAR_CLASS:"CHAR_CLASS"});function C(e,n,t,r){let s=new RegExp(String.raw`${n}|(?<$skip>\[\^?|\\?.)`,"gsu"),o=[!1],i=0,a="";for(let u of e.matchAll(s)){let{0:c,groups:{$skip:p}}=u;if(!p&&(!r||r===d.DEFAULT==!i)){t instanceof Function?a+=t(u,{context:i?d.CHAR_CLASS:d.DEFAULT,negated:o[o.length-1]}):a+=t;continue}c[0]==="["?(i++,o.push(c[1]==="^")):c==="]"&&i&&(i--,o.pop()),a+=c}return a}function P(e,n,t,r){C(e,n,t,r)}function V(e,n,t=0,r){if(!new RegExp(n,"su").test(e))return null;let s=new RegExp(`${n}|(?<$skip>\\\\?.)`,"gsu");s.lastIndex=t;let o=0,i;for(;i=s.exec(e);){let{0:a,groups:{$skip:u}}=i;if(!u&&(!r||r===d.DEFAULT==!o))return i;a==="["?o++:a==="]"&&o&&o--,s.lastIndex==i.index&&s.lastIndex++}return null}function j(e,n,t){return!!V(e,n,0,t)}function J(e,n){let t=/\\?./gsu;t.lastIndex=n;let r=e.length,s=0,o=1,i;for(;i=t.exec(e);){let[a]=i;if(a==="[")s++;else if(s)a==="]"&&s--;else if(a==="(")o++;else if(a===")"&&(o--,!o)){r=i.index;break}}return e.slice(n,r)}var x="$E$",Q=class e extends RegExp{_captureMap;_namesByIndex;constructor(n,t,r){if(n instanceof RegExp&&r)throw new Error("Cannot provide options when copying a regexp");let s=!!r?.useEmulationGroups,o=s?Fe(n):null;super(o?.expression||n,t);let i=s?o:n instanceof e?n:null;i&&(this._captureMap=i._captureMap,this._namesByIndex=i._namesByIndex)}exec(n){let t=RegExp.prototype.exec.call(this,n);if(!t||!this._captureMap)return t;let r=[...t];t.length=1;let s;this.hasIndices&&(s=[...t.indices],t.indices.length=1);for(let o=1;oi){t[i]=r[o];let a=this._namesByIndex[i];a&&(t.groups[a]=r[o],this.hasIndices&&(t.indices.groups[a]=s[o])),this.hasIndices&&(t.indices[i]=s[o])}}else t.push(r[o]),this.hasIndices&&t.indices.push(s[o]);return t}};function Fe(e){let n=x.replace(/\$/g,"\\$"),t=[{exclude:!1}],r={0:""},s=0;return e=C(e,String.raw`\((?:(?!\?)|\?<(?![=!])(?[^>]+)>)(?(?:\$(?[1-9]\d*))?${n})?`,({0:o,groups:{name:i,mark:a,transfer:u}})=>a?(t.push({exclude:!0,transfer:u&&+u}),o.slice(0,-a.length)):(s++,i&&(r[s]=i),t.push({exclude:!1}),o),d.DEFAULT),{_captureMap:t,_namesByIndex:r,expression:e}}var D=String.raw`\(\?(?:[:=!>A-Za-z\-]|<[=!]|\(DEFINE\))`;function b(e,n,t,r){return e.slice(0,n)+r+e.slice(n+t.length)}var oe=new RegExp(String.raw`(?${D})|(?\((?:\?<[^>]+>)?)|\\?.`,"gsu");function ae(e,n){if(!/\(\?>/.test(e))return e;let t="(?>",r=`(?:(?=(${n?.useEmulationGroups?x:""}`,s=[0],o=0,i=0,a=NaN,u;do{u=!1;let c=0,p=0,E=!1,l;for(oe.lastIndex=Number.isNaN(a)?0:a+r.length;l=oe.exec(e);){let{0:g,index:A,groups:{capturingStart:h,noncapturingStart:S}}=l;if(g==="[")c++;else if(c)g==="]"&&c--;else if(g===t&&!E)a=A,E=!0;else if(E&&S)p++;else if(h)E?p++:(o++,s.push(o+i));else if(g===")"&&E){if(!p){i++,e=`${e.slice(0,a)}${r}${e.slice(a+t.length,A)}))<$$${i+o}>)${e.slice(A+1)}`,u=!0;break}p--}}}while(u);return e=C(e,String.raw`\\(?[1-9]\d*)|<\$\$(?\d+)>`,({0:c,groups:{backrefNum:p,wrappedBackrefNum:E}})=>{if(p){let l=+p;if(l>s.length-1)throw new Error(`Backref "${c}" greater than number of captures`);return`\\${s[l]}`}return`\\${E}`},d.DEFAULT),e}var ie=String.raw`(?:[?*+]|\{\d+(?:,\d*)?\})`,X=new RegExp(String.raw` \\(?: \d+ | c[A-Za-z] | [gk]<[^>]+> | [pPu]\{[^\}]+\} | u[A-Fa-f\d]{4} | x[A-Fa-f\d]{2} ) | \((?: \? (?: [:=!>] | <(?:[=!]|[^>]+>) | [A-Za-z\-]+: | \(DEFINE\) ))? | (?${ie})(?[?+]?)(?[?*+\{]?) | \\?. `.replace(/\s+/g,""),"gsu");function ue(e){if(!new RegExp(`${ie}\\+`).test(e))return e;let n=[],t=null,r=null,s="",o=0,i;for(X.lastIndex=0;i=X.exec(e);){let{0:a,index:u,groups:{qBase:c,qMod:p,invalidQ:E}}=i;if(a==="[")o||(r=u),o++;else if(a==="]")o?o--:r=null;else if(!o)if(p==="+"&&s&&!s.startsWith("(")){if(E)throw new Error(`Invalid quantifier "${a}"`);let l=-1;if(/^\{\d+\}$/.test(c))e=b(e,u+c.length,p,"");else{if(s===")"||s==="]"){let g=s===")"?t:r;if(g===null)throw new Error(`Invalid unmatched "${s}"`);e=`${e.slice(0,g)}(?>${e.slice(g,u)}${c})${e.slice(u+a.length)}`}else e=`${e.slice(0,u-s.length)}(?>${s}${c})${e.slice(u+a.length)}`;l+=4}X.lastIndex+=l}else a[0]==="("?n.push(u):a===")"&&(t=n.length?n.pop():null);s=a}return e}var I=class{#e;constructor(n){this.#e=n}toString(){return String(this.#e)}};function H(e,...n){if(Array.isArray(e?.raw))return new I(e.raw.flatMap((t,r)=>r{try{new RegExp("(?i:)")}catch{return!1}return!0})(),fe=(()=>{try{new RegExp("","v")}catch{return!1}return!0})(),T="&!#$%*+,.:;<=>?@^`~",B=String.raw`\(\?<(?![=!])(?[^>]+)>`,W=String.raw`\((?!\?)(?!(?<=\(\?\()DEFINE\))|${B}`;function pe(e,n){return C(e,String.raw`\\(?[1-9]\d*)`,({groups:{num:t}})=>`\\${+t+n}`,d.DEFAULT)}var Oe=["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"].join("|"),Pe=new RegExp(String.raw` \\(?: c[A-Za-z] | p\{(?${Oe})\} | [pP]\{[^\}]+\} | (?q) | u(?:[A-Fa-f\d]{4}|\{[A-Fa-f\d]+\}) | x[A-Fa-f\d]{2} | . ) | -- | && | . `.replace(/\s+/g,""),"gsu");function Y(e){let n=!1,t;for(let{0:r,groups:s}of e.matchAll(Pe)){if(s.pStrProp||s.qStrProp||r==="["&&n)return!0;if(["-","--","&&"].includes(r))n=!1;else if(r!=="["&&r!=="]"){if(n||t==="]")return!0;n=!0}t=r}return!1}function U(e){let n=0;return P(e,W,()=>n++,d.DEFAULT),n}function ee(e,n){return n===d.CHAR_CLASS?e.replace(new RegExp(String.raw`[()\[\]{}|\\/\-${T}]`,"g"),"\\$&"):e.replace(/[()\[\]{}|\\^$*+?.]/g,"\\$&")}function de(e,n,t){let r=e.replace(/\\./gsu,"");if(r.endsWith("\\"))return"\\";if(n===f.DEFAULT)return ce(r,"(",")");if(n===f.CHAR_CLASS&&!k.has(t))return ce(r,"[","]");if(n===f.INTERVAL_QUANTIFIER||q.has(n)||k.has(t)){if(r.includes("}"))return"}"}else if(n===f.GROUP_NAME&&r.includes(">"))return">";return""}var le=new RegExp(String.raw` (?\(\?<(?![=!])|\\[gk]<) | (?\\[pPu]\{) | (?\\q\{) | (?\{) | (?\\(?: $ | c(?![A-Za-z]) | u(?![A-Fa-f\d]{4})[A-Fa-f\d]{0,3} | x(?![A-Fa-f\d]{2})[A-Fa-f\d]? ) ) | -- | \\?. `.replace(/\s+/g,""),"gsu");function R(e,n){let{regexContext:t,charClassContext:r,charClassDepth:s,lastPos:o}={regexContext:f.DEFAULT,charClassContext:m.DEFAULT,charClassDepth:0,lastPos:0,...n};le.lastIndex=o;let i;for(;i=le.exec(e);){let{0:a,groups:{groupN:u,enclosedPU:c,enclosedQ:p,intervalQ:E,incompleteT:l}}=i;a==="["?(s++,t=f.CHAR_CLASS,r=m.DEFAULT):a==="]"&&t===f.CHAR_CLASS?(s&&s--,s||(t=f.DEFAULT),r=m.DEFAULT):t===f.CHAR_CLASS?l?r=m.INVALID_INCOMPLETE_TOKEN:a==="-"?r=m.RANGE:c?r=a[1]==="u"?m.ENCLOSED_U:m.ENCLOSED_P:p?r=m.ENCLOSED_Q:(a==="}"&&k.has(r)||r===m.INVALID_INCOMPLETE_TOKEN||r===m.RANGE)&&(r=m.DEFAULT):l?t=f.INVALID_INCOMPLETE_TOKEN:u?t=f.GROUP_NAME:c?t=a[1]==="u"?f.ENCLOSED_U:f.ENCLOSED_P:E?t=f.INTERVAL_QUANTIFIER:(a===">"&&t===f.GROUP_NAME||a==="}"&&(t===f.INTERVAL_QUANTIFIER||q.has(t))||t===f.INVALID_INCOMPLETE_TOKEN)&&(t=f.DEFAULT)}return{regexContext:t,charClassContext:r,charClassDepth:s,lastPos:e.length}}function ce(e,n,t){let r=0;for(let[s]of e.matchAll(new RegExp(`[${ee(n+t,d.CHAR_CLASS)}]`,"g")))if(r+=s===n?1:-1,r<0)return t;return r>0?n:""}function ge(e,n,t,r){let s={raw:[]},o=[],i;return e.raw.forEach((a,u)=>{let c=t(a,{...i,lastPos:0},r);if(s.raw.push(c.transformed),i=c.runningContext,u`\\${n}${r+1===e.length?"":n}`)}function M(e,n){return C(e,String.raw`\\0(?!\d)`,"\\x00",n)}var ke="&!#%,:;<=>@`~",Ge=new RegExp(String.raw` \[\^?-? | --?\] | (?[${T}])\k | -- | \\(?[${ke}]) | \\[pPu]\{[^}]+\} | \\?. `.replace(/\s+/g,""),"gsu");function me(e){let n='Invalid unescaped "-" in character class',t=!1,r="";for(let{0:s,groups:{dp:o,vOnlyEscape:i}}of e.matchAll(Ge)){if(s[0]==="["){if(t)throw new Error("Invalid nested character class when flag v not supported; possibly from interpolation");if(s.endsWith("-"))throw new Error(n);t=!0}else if(s.endsWith("]")){if(s[0]==="-")throw new Error(n);t=!1}else if(t){if(s==="&&"||s==="--")throw new Error(`Invalid set operator "${s}" when flag v not supported`);if(o)throw new Error(`Invalid double punctuator "${s}", reserved by flag v`);if("(){}/|".includes(s))throw new Error(`Invalid unescaped "${s}" in character class`);if(i){r+=i;continue}}r+=s}return r}var Me=new RegExp(String.raw` ${D} | \(\?< | (?\\[1-9]\d*) | \\?. `.replace(/\s+/g,""),"gsu");function he(e,n){e=String(e);let t="",r="";for(let{0:s,groups:{backrefNum:o}}of e.matchAll(Me)){t+=s,n=R(t,n);let{regexContext:i}=n;if(i===f.DEFAULT)if(s==="(")r+="(?:";else{if(o)throw new Error(`Invalid decimal escape "${s}" with implicit flag n; replace with named backreference`);r+=s}else r+=s}return{transformed:r,runningContext:n}}var Ce=/^\s$/,ye=/^\\[\s#]$/,te=/^[ \t]$/,ve=/^\\[ \t]$/,Ve=new RegExp(String.raw` \\(?: [gk]< | [pPu]\{ | c[A-Za-z] | u[A-Fa-f\d]{4} | x[A-Fa-f\d]{2} | 0\d+ ) | \[\^ | ${D} | \(\?< | (?[${T}])\k | -- | \\?. `.replace(/\s+/g,""),"gsu");function Ae(e,n,t){e=String(e);let r=!1,s=!1,o=!1,i="",a="",u="",c="",p=!1,E=(l,g)=>{let A={prefix:!0,postfix:!1,...g};return l=(p&&A.prefix?"(?:)":"")+l+(A.postfix?"(?:)":""),p=!1,l};for(let{0:l,index:g}of e.matchAll(Ve)){if(o){l===` `&&(o=!1,p=!0);continue}if(r){if(Ce.test(l))continue;r=!1,p=!0}else if(s){if(te.test(l))continue;s=!1}i+=l,n=R(i,n);let{regexContext:A,charClassContext:h}=n;if(l==="-"&&A===f.CHAR_CLASS&&c===m.RANGE&&(t.flags.includes("v")||t.unicodeSetsPlugin))throw new Error("Invalid unescaped hyphen as the end value for a range");if(A===f.DEFAULT&&/^(?:[?*+]|\?\?)$/.test(l)||A===f.INTERVAL_QUANTIFIER&&l==="{")a+=E(l,{prefix:!1,postfix:u==="("&&l==="?"});else if(A===f.DEFAULT)Ce.test(l)?r=!0:l.startsWith("#")?o=!0:ye.test(l)?a+=E(l[1],{prefix:!1}):a+=E(l);else if(A===f.CHAR_CLASS&&l!=="["&&l!=="[^")if(te.test(l)&&(h===m.DEFAULT||h===m.ENCLOSED_Q||h===m.RANGE))s=!0;else{if(h===m.INVALID_INCOMPLETE_TOKEN)throw new Error(`Invalid incomplete token in character class: "${l}"`);if(ve.test(l)&&(h===m.DEFAULT||h===m.ENCLOSED_Q))a+=E(l[1],{prefix:!1});else if(h===m.DEFAULT){let S=e[g+1]??"",N=M(l);(te.test(S)||l==="^")&&(N=K(N)),a+=E(N)}else a+=E(l)}else a+=E(l);r||s||o||(u=l,c=h)}return{transformed:a,runningContext:n}}function we(e){let n=String.raw`\(\?:\)`;e=C(e,`(?:${n}){2,}`,"(?:)",d.DEFAULT);let t=x.replace(/\$/g,"\\$");return e=C(e,String.raw`(?:${n}(?=[)|.[$\\]|\((?!DEFINE)|$)|(?<=[()|.\]^>]|\\[bBdDfnrsStvwW]|\(\?(?:[:=!]|<[=!])|^)${n}(?![?*+{]))(?!${t})`,"",d.DEFAULT),e}function Se(e,n){let t=Ie(e,{includeContents:!0}),r=Qe(e,t,!!n?.useEmulationGroups);return He(r,t)}var je=String.raw`\\g<(?[^>&]+)>`,y=new RegExp(String.raw` ${je} | (?${W}) | \\(?[1-9]\d*) | \\k<(?[^>]+)> | \\?. `.replace(/\s+/g,""),"gsu");function Qe(e,n,t){if(!/\\g]+>)",d.DEFAULT),s=r?`(${t?x:""}`:"(?:",o=new Map,i=[],a=[0],u=0,c=0,p=0,E=0,l=0,g=e,A;for(y.lastIndex=0;A=y.exec(g);){let{0:h,index:S,groups:{subroutineName:N,capturingStart:z,backrefNum:F,backrefName:v}}=A;if(h==="[")l++;else if(l)h==="]"&&l--;else if(N){if(!n.has(N))throw new Error(`Invalid named capture referenced by subroutine ${h}`);if(o.has(N))throw new Error(`Subroutine ${h} followed a recursive reference`);let w=n.get(N).contents,$=`${s}${w})`;r&&(p=0,c++),o.set(N,{unclosedGroupCount:qe($)}),i.push(N),g=b(g,S,h,$),y.lastIndex-=h.length-s.length}else if(z)o.size?(r&&(p++,c++),h!=="("&&(g=b(g,S,h,s),y.lastIndex-=h.length-s.length)):r&&(a.push(re(a)+1+c-E),E=c,u++);else if((F||v)&&o.size){let w=F?+F:n.get(v)?.groupNum,$=!1;for(let L of i){let _=n.get(L);if(w>=_.groupNum&&w<=_.groupNum+_.numCaptures){$=!0;break}}if($){let L=n.get(re(i)),_=u+c-p,O=`\\k<$$b${w}s${_}r${L.groupNum}c${L.numCaptures}>`;g=b(g,S,h,O),y.lastIndex+=O.length-h.length}}else if(h===")"&&o.size){let w=o.get(re(i));w.unclosedGroupCount--,w.unclosedGroupCount||o.delete(i.pop())}}return r&&(g=C(g,String.raw`\\(?:(?[1-9]\d*)|k<\$\$b(?\d+)s(?\d+)r(?\d+)c(?\d+)>)`,({0:h,groups:{bNum:S,bNumSub:N,subNum:z,refNum:F,refCaps:v}})=>{if(S){let O=+S;if(O>a.length-1)throw new Error(`Backref "${h}" greater than number of captures`);return`\\${a[O]}`}let w=+N,$=+z,L=+F,_=+v;return wL+_?`\\${a[w]}`:`\\${$-L+w}`},d.DEFAULT)),g}var ne=new RegExp(String.raw`${B}|\(\?:\)|(?\\?.)`,"gsu");function He(e,n){let t=V(e,String.raw`\(\?\(DEFINE\)`,0,d.DEFAULT);if(!t)return e;let r=Ne(e,t);if(r.afterPose.length)throw new Error("DEFINE group is unclosed");let s;for(ne.lastIndex=0;s=ne.exec(r.contents);){let{captureName:o,invalid:i}=s.groups;if(o){let a=Ne(r.contents,s),u;if(!n.get(o).isUnique)u=o;else{let c=Ie(a.contents,{includeContents:!1});for(let p of c.keys())if(!n.get(p).isUnique){u=p;break}}if(u)throw new Error(`Duplicate group name "${u}" within DEFINE`);ne.lastIndex=a.afterPos}else if(i)throw new Error("DEFINE group includes unsupported syntax at top level")}return e.slice(0,t.index)}function qe(e){let n=0;return P(e,"\\(",()=>n++,d.DEFAULT),n}function Be(e,n){let t=0,r=0,s;for(;s=V(e,W,r,d.DEFAULT);){let{0:o,index:i,groups:{captureName:a}}=s;if(t++,a===n)break;r=i+o.length}return t}function Ne(e,n){let t=n.index+n[0].length,r=J(e,t),s=t+r.length+1;return{contents:r,afterPos:s}}function Ie(e,{includeContents:n}){let t=new Map;return P(e,B,({0:r,index:s,groups:{captureName:o}})=>{if(t.has(o))t.get(o).isUnique=!1;else{let i={isUnique:!0};if(n){let a=J(e,s+r.length);Object.assign(i,{contents:a,groupNum:Be(e,o),numCaptures:U(a)})}t.set(o,i)}},d.DEFAULT),t}function re(e){return e[e.length-1]}var We=(e,...n)=>{if(Array.isArray(e?.raw))return se({},e,...n);if((typeof e=="string"||e===void 0)&&!n.length)return se.bind(null,{flags:e??""});if({}.toString.call(e)==="[object Object]"&&!n.length)return se.bind(null,e);throw new Error(`Unexpected arguments: ${JSON.stringify([e,...n])}`)},se=(e,n,...t)=>{let r=Le(e),s=$e(n,t,r),o=0,i="",a;s.template.raw.forEach((u,c)=>{let p=!!(s.template.raw[c]||s.template.raw[c+1]);o+=U(u),i+=M(u,d.CHAR_CLASS),a=R(i,a);let{regexContext:E,charClassContext:l}=a;if(ce=a(e,{flags:t,useEmulationGroups:i})),e}function ze(e,n,t,r,s,o){if(e instanceof RegExp&&t!==f.DEFAULT)throw new Error("Cannot interpolate a RegExp at this position because the syntax context does not match");if(t===f.INVALID_INCOMPLETE_TOKEN||r===m.INVALID_INCOMPLETE_TOKEN)throw new Error("Interpolation preceded by invalid incomplete token");if(typeof e=="number"&&(t===f.ENCLOSED_U||r===m.ENCLOSED_U))return e.toString(16);let i=e instanceof I,a="";if(!(e instanceof RegExp)){e=String(e),i||(a=ee(e,t===f.CHAR_CLASS?d.CHAR_CLASS:d.DEFAULT));let u=de(a||e,t,r);if(u)throw new Error(`Unescaped stray "${u}" in the interpolated value would have side effects outside it`)}if(t===f.INTERVAL_QUANTIFIER||t===f.GROUP_NAME||q.has(t)||k.has(r))return i?String(e):a;if(t===f.CHAR_CLASS){if(i){if(j(String(e),"^-|^&&|-$|&&$"))throw new Error("Cannot use range or set operator at boundary of interpolated pattern; move the operation into the pattern or the operator outside of it");let u=Ee(K(e));return Y(e)?`[${u}]`:M(u)}return Y(a)?`[${a}]`:a}if(e instanceof RegExp){let u=Ze(e,n),c=pe(u.value,o);return u.usedModifier?c:`(?:${c})`}return i?`(?:${e})`:s?`(?:${a})`:a}function Ze(e,n){let t={i:null,m:null,s:null},r="\\n\\r\\u2028\\u2029",s=e.source;if(e.ignoreCase!==n.includes("i"))if(G)t.i=e.ignoreCase;else throw new Error("Pattern modifiers not supported, so flag i on the outer and interpolated regex must match");if(e.dotAll!==n.includes("s")&&(G?t.s=e.dotAll:s=C(s,"\\.",e.dotAll?"[^]":`[^${r}]`,d.DEFAULT)),e.multiline!==n.includes("m")&&(G?t.m=e.multiline:(s=C(s,"\\^",e.multiline?`(?<=^|[${r}])`:"(?t[u]===!0).join(""),a=o.filter(u=>t[u]===!1).join("");if(a&&(i+=`-${a}`),i)return{value:`(?${i}:${s})`,usedModifier:!0}}return{value:s}}return Re(Je);})(); //# sourceMappingURL=regex.min.js.map