eslint-plugin-sukka 7.3.5 → 8.0.0-beta.1

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.
package/dist/index.cjs CHANGED
@@ -1,22 +1 @@
1
- "use strict";let e,t;var r,n,u,a,i,o,s,d,l,c,f,p,m,g,y,h,b,E,v,x,D,A,S,C,T,w,_,F,k,P,I,B,O,R,N,L,j,M,$,U,q,z,W,Y,V,Z,G,K,H,X,J,Q,ee,et,er,en,eu,ea,ei,eo,es,ed,el,ec,ef,ep,em,eg,ey,eh,eb,eE,ev,ex,eD,eA,eS,eC,eT,ew,e_,eF,ek,eP,eI,eB,eO,eR,eN,eL,ej,eM,e$,eU,eq,ez,eW,eY,eV,eZ,eG,eK,eH=require("@typescript-eslint/utils/eslint-utils"),eX=require("node:path"),eJ=require("node:util/types"),eQ=require("@eslint-sukka/shared"),e0=require("eslint"),e1=require("foxts/guard"),e3=require("foxts/detect-eol"),e2=require("@typescript-eslint/types"),e4=require("typescript"),e5=require("@typescript-eslint/utils"),e8=(r=Object.create(null),e4&&Object.keys(e4).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(e4,e);Object.defineProperty(r,e,t.get?t:{enumerable:!0,get:function(){return e4[e]}})}}),r.default=e4,Object.freeze(r));function e6(e,t){if("string"==typeof t){let e=t;t=t=>t.type===e}for(;e;){if(t(e))return e;e=e.parent}}function e9(e){return e?.type==="Identifier"||e?.type==="PrivateIdentifier"}function e7(e){return e?.type==="MemberExpression"}function te(e){return e?.type==="AwaitExpression"}function tt(e,t){return!!e9(e)&&("function"==typeof t?t(e.name):Array.isArray(t)?t.includes(e.name):e.name===t)}function tr(e,t){return e?.type==="Literal"&&(Array.isArray(t)?t.includes(e.value):"string"==typeof e.value&&t instanceof RegExp?t.test(e.value):e.value===t)}function tn(e){return!!e&&["ArrowFunctionExpression","FunctionDeclaration","FunctionExpression"].includes(e.type)}function tu(e,t){return e?.type==="Identifier"&&t?.type===e.type&&e.name===t.name}function ta({create:e,defaultOptions:t,meta:r,name:n}){return r.docs&&!r.docs.url&&(r.docs.url=new URL(n,"https://dimensiondev.github.io/eslint-plugin/src/rules/").href),{create(r){let n=eH.applyDefault(t,r.options);return e(r,n)},defaultOptions:t,meta:r,name:n}}function ti(e){if(!e?.program)throw Error("see https://typescript-eslint.io/docs/linting/type-linting")}var to=ta({name:"array/no-unneeded-flat-map",meta:{type:"suggestion",fixable:"code",docs:{description:"Disallow `Array#flatMap((x) => x)` when simpler alternatives exist",recommended:"stylistic"},schema:[],messages:{invalid:"Disallow simple `Array#flatMap()` in array"}},defaultOptions:[],create:e=>({CallExpression(t){var r;if("MemberExpression"!==t.callee.type||!tt(t.callee.property,"flatMap")||!(tn(r=t.arguments[0])&&1===r.params.length&&"Identifier"===r.params[0].type&&r.body&&(tu(r.params[0],r.body)||"BlockStatement"===r.body.type&&1===r.body.body.length&&"ReturnStatement"===r.body.body[0].type&&tu(r.params[0],r.body.body[0].argument))))return;let{property:n}=t.callee;e.report({node:t,messageId:"invalid",*fix(e){yield e.replaceText(n,"flat"),yield*t.arguments.map(t=>e.remove(t))}})}})});let ts=new Set(["href","pathname","search","hash","origin"]);var td=ta({name:"browser/prefer-location-assign",meta:{type:"suggestion",fixable:"code",docs:{description:"Prefer `location.assign(...)` over `location.*`",recommended:"stylistic"},schema:[],messages:{instead:"Use `location.assign(...)` instead of `location.{{name}}`"}},defaultOptions:[],create:e=>({AssignmentExpression(t){let r=function(e,t){if(tt(e,t))return e;for(;e7(e);){if(tt(e.property,t))return e;e=e.object}}(t.left,"location");if(!r)return;let n=tl(r.parent);e.report({node:t,messageId:"instead",data:{name:n},fix:function(e,t,r){let n=tl(t.parent);if(ts.has(n??"href"))return n=>n.replaceText(r,`${e.getText(t)}.assign(${e.getText(r.right)})`)}(e.sourceCode,r,t)})}})});function tl(e){if(e7(e)&&e9(e.property))return e.property.name}var tc=ta({name:"jsx/no-template-literal",meta:{type:"suggestion",fixable:"code",docs:{description:"Disallow use template-literal in JSX",recommended:"stylistic"},schema:[],messages:{invalid:"Disallow use template-literal in JSX"}},defaultOptions:[],create:e=>({JSXExpressionContainer(t){if("TemplateLiteral"!==t.expression.type||t.parent?.type==="JSXAttribute")return;let{expression:r}=t;e.report({node:t,messageId:"invalid",fix(n){let u=[...r.expressions,...r.quasis];u.sort((e,t)=>e.range[0]-t.range[0]);let a=u.map(t=>"TemplateElement"===t.type?t.value.cooked:"{"+e.sourceCode.getText(t)+"}");return n.replaceText(t,a.join(""))}})}})}),tf=ta({name:"jsx/no-unneeded-nested",meta:{type:"suggestion",fixable:"code",docs:{description:"Reduce unneeded JSXFragment nested",recommended:"stylistic"},schema:[],messages:{invalid:"Reduce unneeded JSXFragment nested"}},defaultOptions:[],create(e){let t=e.sourceCode;return{JSXFragment(r){if(1!==r.children.length)return;let n=r.children[0];e.report({node:r,messageId:"invalid",*fix(e){"JSXExpressionContainer"===n.type?"JSXEmptyExpression"!==n.expression.type&&(yield e.replaceText(r,t.getText(n.expression))):yield e.replaceText(r,t.getText(n))}})}}}});let tp=/^toLocale(?<name>Upper|Lower)Case$/g;var tm=ta({name:"string/no-locale-case",meta:{type:"problem",fixable:"code",docs:{description:"Disallow use `String#toLocale{Upper,Lower}Case()`",recommended:"recommended"},schema:[],messages:{instead:"Use `.to{{name}}Case(...)` instead of `.toLocale{{name}}Case()`"}},defaultOptions:[],create:e=>({CallExpression(t){if(t.arguments.length>0||!e7(t.callee)||!e9(t.callee.property))return;let{property:r}=t.callee,n=tp.exec(r.name);n&&e.report({node:t,data:{name:n.groups?.name},messageId:"instead",fix:e=>e.replaceText(r,r.name.replaceAll("Locale",""))})}})}),tg=ta({name:"string/no-simple-template-literal",meta:{type:"suggestion",fixable:"code",docs:{description:"Disallow simple template-literal",recommended:"stylistic"},schema:[],messages:{invalid:"Disallow simple template-literal"}},defaultOptions:[],create:e=>({TemplateLiteral(t){var r,n,u,a;let i=(r=e.sourceCode,(u=n=t,u.parent?.type!=="TaggedTemplateExpression"&&1===u.quasis.length&&!function({loc:e}){return!!e&&e.start.line!==e.end.line}(u.quasis[0])&&0===u.expressions.length)?e=>{let t=JSON.stringify(n.quasis[0].value.cooked),u=e6(n,e=>"Property"===e.type&&e.key===n);return u?e.replaceText(u,`${t}: ${r.getText(u.value)}`):e.replaceText(n,t)}:2===(a=n).quasis.length&&a.quasis.every(({value:e})=>""===e.cooked)&&1===a.expressions.length?e=>e.replaceText(n,r.getText(n.expressions[0])):void 0);i&&e.report({node:t,messageId:"invalid",fix:i})}})});let ty=/\P{ASCII}/u;function th(e,t){return{Program(r){for(let n of r.tokens??[]){let r=function(e){switch(e.type){case"String":case"Template":return e.value.slice(1,-1);case"Identifier":if(e.value.startsWith("#"))return e.value.slice(1);return e.value;case"PrivateIdentifier":case"JSXText":case"JSXIdentifier":return e.value;case"RegularExpression":return e.regex.pattern}return!1}(n);!1!==r&&e.test(r)&&t(n,"code")}for(let n of r.comments??[])e.test(n.value)&&t(n,"comment")}}}function tb(e,t){switch(e.type){case"String":case"Template":return r=>{let n=e.value.slice(0,1),u=e.value.slice(-1),a=tE(e.value.slice(1,-1),t);return r.replaceText(e,`${n}${a}${u}`)};case"JSXText":return r=>{let n=e.value.replace(t,e=>`&#x${tv(e.codePointAt(0))};`);return r.replaceText(e,n)};case"RegularExpression":return r=>{let n=new Set(e.regex.flags);n.add("u");let u=new RegExp(tE(e.regex.pattern,t),[...n].join(""));return r.replaceText(e,u.toString())}}}function tE(e,t){return e.replace(t,e=>{let t=e.codePointAt(0);return t>65535?`\\u{${tv(t)}}`:`\\u${tv(t)}`})}function tv(e){return e.toString(16).padStart(4,"0").toUpperCase()}ta({name:"unicode/specific-set",meta:{type:"problem",fixable:"code",docs:{description:"Limit the range of literal characters"},schema:[{type:"object",properties:{pattern:{type:"string"},flags:{type:"string"},only:{type:"string",enum:["code","comment"]}},additionalProperties:!1}],messages:{illegal:"Illegal character detected"}},defaultOptions:[{pattern:ty.source,flags:"u",only:void 0}],create(e,[{pattern:t,flags:r,only:n}]){let u=t?new RegExp(t,r):ty;return th(u,(t,r)=>{if(n&&n!==r)return;let a=tb(t,RegExp(u.source,"gu"));e.report({node:t,messageId:"illegal",fix:a})})}});let tx=/[\u061C\u202A-\u202E\u2066-\u2069]/;var tD=ta({name:"unicode/no-bidi",meta:{type:"problem",fixable:"code",docs:{description:"Detect and stop Trojan Source attacks",recommended:"recommended"},schema:[],messages:{detected:"Detected potential trojan source attack with unicode bidi introduced in this {{kind}}: {{text}}."}},defaultOptions:[],create:e=>th(tx,(t,r)=>{let n=RegExp(tx.source,"gu"),u={kind:r,text:tE(t.value,n)},a=tb(t,n);e.report({node:t,data:u,messageId:"detected",fix:a})})});let tA=(t=[/\u00AD\u034F\u061C\u17B4\u17B5\uFEFF\uFFFC/,/\u180B-\u180E/,/\u200B-\u200F/,/\u202A-\u202E/,/\u2060-\u206F/,/\uFE00-\uFE0F/,/\uFFF0-\uFFF8/,/\u{1D173}-\u{1D17A}/u,/\u{E0000}-\u{E007F}/u,/\u{E0100}-\u{E01EF}/u].map(e=>"string"==typeof e?e:e.source).join(""),RegExp(`[${t}]`,"u"));var tS=ta({name:"unicode/no-invisible",meta:{type:"problem",fixable:"code",docs:{description:"Disallow invisible characters",recommended:"recommended"},schema:[],messages:{illegal:"Illegal character detected"}},defaultOptions:[],create:e=>th(tA,t=>{let r=tb(t,RegExp(tA.source,"gu"));e.report({node:t,messageId:"illegal",fix:r})})}),tC=ta({name:"no-redundant-variable",meta:{type:"problem",fixable:"code",docs:{description:"Disallow redundant variable",recommended:"stylistic"},schema:[],messages:{invalid:"Disallow Redundant Variable"}},defaultOptions:[],create:e=>({BlockStatement({body:t}){var r,n,u,a,i;let o=t.find(tT);if(!o)return;let s=t[t.indexOf(o)-1];r=s,n=o,r&&"VariableDeclaration"===r.type&&1===r.declarations.length&&r.declarations.some(({init:e,id:t})=>null!==e&&tu(n.argument,t))&&e.report({node:o,messageId:"invalid",fix:(u=e.sourceCode,a=s,i=o,e=>{var t;let{init:r,id:n}=a.declarations[0];if(!(r&&n&&i.argument))return null;let o=!te(t=r)||e6(t,"TryStatement")?t:t.argument,s=(e=>{if(!n.typeAnnotation)return e;let t=u.getText(n.typeAnnotation.typeAnnotation);return`(${e}) as ${te(r)?`Promise<${t}>`:t}`})(u.getText(o));return[e.remove(a),e.replaceText(i.argument,s)]})})}})});function tT(e){return"ReturnStatement"===e.type&&e9(e.argument)}var tw=ta({name:"no-single-return",meta:{type:"suggestion",docs:{description:"Disallow single-return",recommended:"stylistic"},schema:[],messages:{invalid:"Disallow Single Return"}},defaultOptions:[],create:e=>({BlockStatement({parent:t,body:r}){if(!tn(t))return;let n=function(e,t){let r=t.find(t_);if(!r)return;let n=t.find(e=>{var t,n;return t=e,n=r,"VariableDeclaration"===t.type&&"const"!==t.kind&&t.declarations.some(({id:e})=>tu(n.argument,e))});if(n)return e.sourceCode.getDeclaredVariables(n).find(({references:e})=>e.every(e=>e.isWriteOnly()||e.identifier.parent===r))}(e,r);for(let{identifier:t}of n?.references??[])t.parent&&e.report({node:t.parent,messageId:"invalid"})}})});function t_(e){return"ReturnStatement"===e.type&&e9(e.argument)}var tF=ta({name:"prefer-early-return",meta:{type:"problem",fixable:"code",docs:{description:"Prefer early returns over full-body conditional wrapping in function declarations",recommended:"stylistic"},schema:[{type:"object",properties:{maximumStatements:{type:"integer",minimum:0}},additionalProperties:!1}],messages:{prefer:"Prefer an early return to a conditionally-wrapped function body"}},defaultOptions:[{maximumStatements:0}],create:(e,[{maximumStatements:t}])=>({BlockStatement:function({body:r,parent:n}){var u,a;if(!tn(n)||!(1===r.length&&function(e,t){if("IfStatement"!==e.type||null!==e.alternate)return!1;let{consequent:r}=e;return"ExpressionStatement"===r.type&&0===t||"BlockStatement"===r.type&&r.body.length>t}(r[0],t)))return;let i=(u=e,a=r[0],function*(e){var t;let r;if("IfStatement"!==a.type)return;let{test:n,consequent:i}=a;yield e.insertTextBefore(n,"!("),yield e.insertTextAfter(n,")"),yield e.replaceText(i,"return;");let o=(t=u.sourceCode.getText(i),r=t,"BlockStatement"===i.type?r.slice(1,-1):r);yield e.insertTextAfter(a,o)});e.report({node:r[0],messageId:"prefer",fix:i})}})}),tk=ta({name:"prefer-fetch",meta:{type:"problem",docs:{description:"Enforce fetch",recommended:"stylistic"},schema:[],messages:{callee:"Should use 'fetch' instead"}},defaultOptions:[],create:e=>({ImportDeclaration(t){let r=t.source.value;("axios"===r||"request"===r)&&e.report({node:t,messageId:"callee"})},NewExpression(t){var r;((function({callee:e}){return tt(e,"XMLHttpRequest")})(t)||tt((r=t).callee,"ActiveXObject")&&tr(r.arguments[0],/xmlhttp/i))&&e.report({node:t,messageId:"callee"})},CallExpression(t){((function({callee:e}){let t="$http";return tt(e,t)||e7(e)&&tt(e.object,t)})(t)||function({callee:e,parent:t}){let r=["$","jQuery"];return tt(e,r)&&e7(t)&&tt(t.property,"load")||e7(e)&&tt(e.object,r)&&tt(e.property,["ajax","get","post","getJSON","getScript"])}(t)||tP(t,"axios")||tP(t,"request"))&&e.report({node:t,messageId:"callee"})}})});function tP(e,t){return tt(e.callee,"require")&&tr(e.arguments[0],t)}let tI=new Set(["setTimeout","setInterval","requestAnimationFrame","requestIdleCallback"]);var tB=ta({name:"prefer-timer-id",meta:{type:"problem",docs:{description:"Enforce best practice with timer function",recommended:"recommended"},schema:[],messages:{assign:"Timer id should assign to an identifier or member for cleaning up, `const timer = {{name}}(...);`",fix:"Assign timer id to a variable"},hasSuggestions:!0},defaultOptions:[],create:e=>({CallExpression(t){"Identifier"!==t.callee.type||!tI.has(t.callee.name)||function(e){if(!tt(e.callee,"setTimeout"))return!1;let t=e.arguments[1];return!t||tr(t,0)}(t)||t.parent?.type==="AssignmentExpression"&&t.parent.right===t||t.parent?.type==="VariableDeclarator"&&t.parent.init===t||e.report({node:t,messageId:"assign",data:{name:t.callee.name},suggest:[{messageId:"fix",fix:e=>e.insertTextBefore(t,"const timer = ")}]})}})}),tO=ta({name:"string/no-unneeded-to-string",meta:{type:"suggestion",fixable:"code",docs:{description:"Disallow `String#toString()` when simpler alternatives exist",recommended:"stylistic",requiresTypeChecking:!0},schema:[],messages:{invalid:"Disallow use `.toString()` in string"}},defaultOptions:[],create(e){ti(e.sourceCode.parserServices);let{program:t,esTreeNodeToTSNodeMap:r}=e.sourceCode.parserServices,n=t.getTypeChecker();return{CallExpression(t){if("MemberExpression"!==t.callee.type)return;let{object:u,property:a}=t.callee;(tt(a,"toString")||tr(a,"toString"))&&function(e,t){let r=e.getTypeAtLocation(t);if(r.isStringLiteral()||"string"===e.typeToString(r))return!0;let n=r.getSymbol();return n&&"String"===e.symbolToString(n)}(n,r.get(u))&&e.report({node:a,messageId:"invalid",fix:r=>r.replaceText(t,e.sourceCode.getText(u))})}}}}),tR=ta({name:"type/no-force-cast-via-top-type",meta:{type:"problem",docs:{description:"Disallowing cast a type `T` to unrelated or incompatible type `Q` via `T as any as Q`",recommended:"recommended"},schema:[],messages:{invalid:"Don't cast this expression to another type by `as {{type}} as T`"}},defaultOptions:[],create:e=>({TSAsExpression(t){var r,n;if("TSAnyKeyword"!==(r=t.typeAnnotation).type&&"TSUnknownKeyword"!==r.type||!((n=t.parent)&&"TSAsExpression"===n.type&&"TSTypeReference"===n.typeAnnotation.type))return;let u="TSAnyKeyword"===t.typeAnnotation.type?"any":"unknown";e.report({node:t,messageId:"invalid",data:{type:u}})}})});let tN=new Set(["BigInt","Boolean","Number","String","Symbol"]);var tL=ta({name:"type/no-wrapper-type-reference",meta:{type:"problem",fixable:"code",docs:{description:"Disallow wrapper type for type reference",recommended:"recommended"},schema:[],messages:{instead:"Use {{name}} instead"}},defaultOptions:[],create:e=>({TSTypeReference(t){if("Identifier"!==t.typeName.type||!tN.has(t.typeName.name))return;let r=t.typeName.name.toLowerCase();e.report({node:t,messageId:"instead",data:{name:r},fix:e=>e.replaceText(t.typeName,r)})}})}),tj=ta({name:"no-default-error",meta:{type:"problem",docs:{description:"Restrict the usage of default (unextended) error",recommended:"strict",requiresTypeChecking:!0},schema:[],messages:{invalid:"Default error object should not be used in this project"}},defaultOptions:[],create(e){ti(e.sourceCode.parserServices);let{esTreeNodeToTSNodeMap:t,program:r}=e.sourceCode.parserServices,n=r.getTypeChecker();function u(r){"ErrorConstructor"===function(e,t){let r=e.getTypeAtLocation(t).getSymbol();if(!r?.valueDeclaration)return;let n=e.getTypeOfSymbolAtLocation(r,r.valueDeclaration);return e.typeToString(n)}(n,t.get(r))&&e.report({node:r,messageId:"invalid"})}return{ThrowStatement(e){e.argument&&u(e.argument)},NewExpression:u,CallExpression:u}}});let tM={ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],AwaitExpression:["argument"],BinaryExpression:["left","right"],BlockStatement:["body"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],ExportAllDeclaration:["exported","source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportExpression:["source"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXClosingFragment:[],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXFragment:["openingFragment","children","closingFragment"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","attributes"],JSXOpeningFragment:[],JSXSpreadAttribute:["argument"],JSXSpreadChild:["expression"],JSXText:[],LabeledStatement:["label","body"],Literal:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],StaticBlock:["body"],Super:[],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]};for(let e of Object.keys(tM))Object.freeze(tM[e]);Object.freeze(tM);let t$=new Set(["parent","leadingComments","trailingComments"]);function tU(e){return!t$.has(e)&&"_"!==e[0]}function tq(e,t){let r="",n=e;for("string"==typeof t?r=t:(r=t.name,n=function(e,t){let r=t.range[0],n=e,u=!1;do for(let e of(u=!1,n.childScopes)){let t=e.block.range;if(t[0]<=r&&r<t[1]){n=e,u=!0;break}}while(u);return n}(n,t));null!=n;){let e=n.set.get(r);if(null!=e)return e;n=n.upper}return null}function tz(e,t){return"Punctuator"===e.type&&e.value===t}function tW(e){return tz(e,"=>")}function tY(e){return tz(e,",")}function tV(e){return tz(e,";")}function tZ(e){return tz(e,":")}function tG(e){return tz(e,"(")}function tK(e){return tz(e,")")}function tH(e){return tz(e,"{")}let tX=e=>!tV(e);function tJ(e,t){let r=e.parent,n=null,u=null;if("ArrowFunctionExpression"===e.type){let r=t.getTokenBefore(e.body,tW);n=r.loc.start,u=r.loc.end}else{var a,i;n="Property"===r.type||"MethodDefinition"===r.type||"PropertyDefinition"===r.type?r.loc.start:e.loc.start,u=(a=e,i=t,a.id?i.getTokenAfter(a.id,tG):i.getFirstToken(a,tG)).loc.start}return{start:{...n},end:{...u}}}let tQ="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},t0=Object.freeze(new Set(["Array","ArrayBuffer","BigInt","BigInt64Array","BigUint64Array","Boolean","DataView","Date","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","Float32Array","Float64Array","Function","Infinity","Int16Array","Int32Array","Int8Array","isFinite","isNaN","isPrototypeOf","JSON","Map","Math","NaN","Number","Object","parseFloat","parseInt","Promise","Proxy","Reflect","RegExp","Set","String","Symbol","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray","undefined","unescape","WeakMap","WeakSet"])),t1=new Set([Array.isArray,Array.of,Array.prototype.at,Array.prototype.concat,Array.prototype.entries,Array.prototype.every,Array.prototype.filter,Array.prototype.find,Array.prototype.findIndex,Array.prototype.flat,Array.prototype.includes,Array.prototype.indexOf,Array.prototype.join,Array.prototype.keys,Array.prototype.lastIndexOf,Array.prototype.slice,Array.prototype.some,Array.prototype.toString,Array.prototype.values,"function"==typeof BigInt?BigInt:void 0,Boolean,Date,Date.parse,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,escape,isFinite,isNaN,isPrototypeOf,Map,Map.prototype.entries,Map.prototype.get,Map.prototype.has,Map.prototype.keys,Map.prototype.values,...Object.getOwnPropertyNames(Math).filter(e=>"random"!==e).map(e=>Math[e]).filter(e=>"function"==typeof e),Number,Number.isFinite,Number.isNaN,Number.parseFloat,Number.parseInt,Number.prototype.toExponential,Number.prototype.toFixed,Number.prototype.toPrecision,Number.prototype.toString,Object,Object.entries,Object.is,Object.isExtensible,Object.isFrozen,Object.isSealed,Object.keys,Object.values,parseFloat,parseInt,RegExp,Set,Set.prototype.entries,Set.prototype.has,Set.prototype.keys,Set.prototype.values,String,String.fromCharCode,String.fromCodePoint,String.raw,String.prototype.at,String.prototype.charAt,String.prototype.charCodeAt,String.prototype.codePointAt,String.prototype.concat,String.prototype.endsWith,String.prototype.includes,String.prototype.indexOf,String.prototype.lastIndexOf,String.prototype.normalize,String.prototype.padEnd,String.prototype.padStart,String.prototype.slice,String.prototype.startsWith,String.prototype.substr,String.prototype.substring,String.prototype.toLowerCase,String.prototype.toString,String.prototype.toUpperCase,String.prototype.trim,String.prototype.trimEnd,String.prototype.trimLeft,String.prototype.trimRight,String.prototype.trimStart,Symbol.for,Symbol.keyFor,unescape].filter(e=>"function"==typeof e)),t3=new Set([Object.freeze,Object.preventExtensions,Object.seal]),t2=[[Map,new Set(["size"])],[RegExp,new Set(["dotAll","flags","global","hasIndices","ignoreCase","multiline","source","sticky","unicode"])],[Set,new Set(["size"])]];function t4(e,t){let r=[];for(let n=0;n<e.length;++n){let u=e[n];if(null==u)r.length=n+1;else if("SpreadElement"===u.type){let e=t8(u.argument,t);if(null==e)return null;r.push(...e.value)}else{let e=t8(u,t);if(null==e)return null;r.push(e.value)}}return r}let t5=Object.freeze({ArrayExpression(e,t){let r=t4(e.elements,t);return null!=r?{value:r}:null},AssignmentExpression:(e,t)=>"="===e.operator?t8(e.right,t):null,BinaryExpression(e,t){if("in"===e.operator||"instanceof"===e.operator)return null;let r=t8(e.left,t),n=t8(e.right,t);if(null!=r&&null!=n)switch(e.operator){case"==":return{value:r.value==n.value};case"!=":return{value:r.value!=n.value};case"===":return{value:r.value===n.value};case"!==":return{value:r.value!==n.value};case"<":return{value:r.value<n.value};case"<=":return{value:r.value<=n.value};case">":return{value:r.value>n.value};case">=":return{value:r.value>=n.value};case"<<":return{value:r.value<<n.value};case">>":return{value:r.value>>n.value};case">>>":return{value:r.value>>>n.value};case"+":return{value:r.value+n.value};case"-":return{value:r.value-n.value};case"*":return{value:r.value*n.value};case"/":return{value:r.value/n.value};case"%":return{value:r.value%n.value};case"**":return{value:r.value**n.value};case"|":return{value:r.value|n.value};case"^":return{value:r.value^n.value};case"&":return{value:r.value&n.value}}return null},CallExpression(e,t){let r=e.callee,n=t4(e.arguments,t);if(null!=n)if("MemberExpression"===r.type){if("PrivateIdentifier"===r.property.type)return null;let u=t8(r.object,t);if(null!=u){if(null==u.value&&(u.optional||e.optional))return{value:void 0,optional:!0};let a=t6(r,t);if(null!=a){let e=u.value,t=a.value;if(t1.has(e[t]))return{value:e[t](...n)};if(t3.has(e[t]))return{value:n[0]}}}}else{let u=t8(r,t);if(null!=u){if(null==u.value&&e.optional)return{value:void 0,optional:!0};let t=u.value;if(t1.has(t))return{value:t(...n)};if(t3.has(t))return{value:n[0]}}}return null},ConditionalExpression(e,t){let r=t8(e.test,t);return null!=r?r.value?t8(e.consequent,t):t8(e.alternate,t):null},ExpressionStatement:(e,t)=>t8(e.expression,t),Identifier(e,t){if(null!=t){let r=tq(t,e);if(null!=r){if(null!=r&&0===r.defs.length&&t0.has(r.name)&&r.name in tQ)return{value:tQ[r.name]};if(function(e){let t,r,n;if(1!==e.defs.length)return!1;let u=e.defs[0];return!!(u.parent&&"Variable"===u.type&&("const"===u.parent.kind||(r=(t=e.references).filter(e=>e.init).length,n=t.filter(e=>e.isReadOnly()).length,1===r&&n+r===t.length)))}(r)){let e=r.defs[0];if("Identifier"===e.node.id.type){let n=t8(e.node.init,t);return n&&"object"==typeof n.value&&null!==n.value&&function(e,t){for(let r of e.references){let e=r.identifier;for(;e&&e.parent&&"MemberExpression"===e.parent.type;)e=e.parent;if(e&&e.parent&&("AssignmentExpression"===e.parent.type&&e.parent.left===e||"UpdateExpression"===e.parent.type&&e.parent.argument===e||"CallExpression"===e.parent.type&&e.parent.callee===e&&"MemberExpression"===e.type&&function(e){if(null==e||null==e.value)return!1;let t=e.value;return"copyWithin"===t||"fill"===t||"pop"===t||"push"===t||"reverse"===t||"shift"===t||"sort"===t||"splice"===t||"unshift"===t}(t6(e,t))))return!0}return!1}(r,t)?null:n}}}}return null},Literal:e=>(null!=e.regex||null!=e.bigint)&&null==e.value?null:{value:e.value},LogicalExpression(e,t){let r=t8(e.left,t);if(null!=r){if("||"===e.operator&&!0==!!r.value||"&&"===e.operator&&!1==!!r.value||"??"===e.operator&&null!=r.value)return r;let n=t8(e.right,t);if(null!=n)return n}return null},MemberExpression(e,t){if("PrivateIdentifier"===e.property.type)return null;let r=t8(e.object,t);if(null!=r){if(null==r.value&&(r.optional||e.optional))return{value:void 0,optional:!0};let n=t6(e,t);if(null!=n){let e;if(null==(e=function(e,t){let r=e;for(;("object"==typeof r||"function"==typeof r)&&null!==r;){let e=Object.getOwnPropertyDescriptor(r,t);if(e)return e;r=Object.getPrototypeOf(r)}return null}(r.value,n.value))||null==e.get)return{value:r.value[n.value]};for(let[e,t]of t2)if(r.value instanceof e&&t.has(n.value))return{value:r.value[n.value]}}}return null},ChainExpression(e,t){let r=t8(e.expression,t);return null!=r?{value:r.value}:null},NewExpression(e,t){let r=t8(e.callee,t),n=t4(e.arguments,t);if(null!=r&&null!=n){let e=r.value;if(t1.has(e))return{value:new e(...n)}}return null},ObjectExpression(e,t){let r={};for(let n of e.properties)if("Property"===n.type){if("init"!==n.kind)return null;let e=t6(n,t),u=t8(n.value,t);if(null==e||null==u)return null;r[e.value]=u.value}else{if("SpreadElement"!==n.type&&"ExperimentalSpreadProperty"!==n.type)return null;let e=t8(n.argument,t);if(null==e)return null;Object.assign(r,e.value)}return{value:r}},SequenceExpression:(e,t)=>t8(e.expressions[e.expressions.length-1],t),TaggedTemplateExpression(e,t){let r=t8(e.tag,t),n=t4(e.quasi.expressions,t);if(null!=r&&null!=n){let t=r.value,u=e.quasi.quasis.map(e=>e.value.cooked);if(u.raw=e.quasi.quasis.map(e=>e.value.raw),t===String.raw)return{value:t(u,...n)}}return null},TemplateLiteral(e,t){let r=t4(e.expressions,t);if(null!=r){let t=e.quasis[0].value.cooked;for(let n=0;n<r.length;++n)t+=r[n],t+=e.quasis[n+1].value.cooked;return{value:t}}return null},UnaryExpression(e,t){if("delete"===e.operator)return null;if("void"===e.operator)return{value:void 0};let r=t8(e.argument,t);if(null!=r)switch(e.operator){case"-":return{value:-r.value};case"+":return{value:+r.value};case"!":return{value:!r.value};case"~":return{value:~r.value};case"typeof":return{value:typeof r.value}}return null},TSAsExpression:(e,t)=>t8(e.expression,t),TSSatisfiesExpression:(e,t)=>t8(e.expression,t),TSTypeAssertion:(e,t)=>t8(e.expression,t),TSNonNullExpression:(e,t)=>t8(e.expression,t),TSInstantiationExpression:(e,t)=>t8(e.expression,t)});function t8(e,t){return null!=e&&Object.hasOwnProperty.call(t5,e.type)?t5[e.type](e,t):null}function t6(e,t){let r="Property"===e.type?e.key:e.property;return e.computed?t8(r,t):"Identifier"===r.type?{value:r.name}:"Literal"===r.type?r.bigint?{value:r.bigint}:{value:String(r.value)}:null}function t9(e,t=null){try{return t8(e,t)}catch(e){return null}}function t7(e,t=null){if(e&&"Literal"===e.type&&null===e.value){if(e.regex)return`/${e.regex.pattern}/${e.regex.flags}`;if(e.bigint)return e.bigint}let r=t9(e,t);if(r)try{return String(r.value)}catch{}return null}function re(e,t){switch(e.type){case"MemberExpression":if(e.computed)return t7(e.property,t);if("PrivateIdentifier"===e.property.type)break;return e.property.name;case"Property":case"MethodDefinition":case"PropertyDefinition":if(e.computed)return t7(e.key,t);if("Literal"===e.key.type)return String(e.key.value);if("PrivateIdentifier"===e.key.type)break;return e.key.name}return null}function rt(e,t){let r=e.parent,n=[],u="Property"===r.type&&r.value===e,a="MethodDefinition"===r.type&&r.value===e,i="PropertyDefinition"===r.type&&r.value===e;if((a||i)&&(r.static&&n.push("static"),"PrivateIdentifier"===r.key.type&&n.push("private")),e.async&&n.push("async"),e.generator&&n.push("generator"),u||a){if("constructor"===r.kind)return"constructor";"get"===r.kind?n.push("getter"):"set"===r.kind?n.push("setter"):n.push("method")}else i?n.push("method"):("ArrowFunctionExpression"===e.type&&n.push("arrow"),n.push("function"));if(u||a||i)if("PrivateIdentifier"===r.key.type)n.push(`#${r.key.name}`);else{let e=re(r);if(e)n.push(`'${e}'`);else if(t){let e=t.getText(r.key);e.includes("\n")||n.push(`[${e}]`)}}else e.id?n.push(`'${e.id.name}'`):"VariableDeclarator"===r.type&&r.id&&"Identifier"===r.id.type?n.push(`'${r.id.name}'`):("AssignmentExpression"===r.type||"AssignmentPattern"===r.type)&&r.left&&"Identifier"===r.left.type?n.push(`'${r.left.name}'`):"ExportDefaultDeclaration"===r.type&&r.declaration===e&&n.push("'default'");return n.join(" ")}let rr=Object.freeze(new Set(["==","!=","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","|","^","&","in"])),rn=Object.freeze(new Set(["-","+","!","~"]));function ru(e){return null!==e&&"object"==typeof e&&"string"==typeof e.type}let ra=Object.freeze(Object.assign(Object.create(null),{$visit(e,t,r){let{type:n}=e;return"function"==typeof this[n]?this[n](e,t,r):this.$visitChildren(e,t,r)},$visitChildren(e,t,r){let{type:n}=e;for(let u of r[n]||Object.keys(e).filter(tU)){let n=e[u];if(Array.isArray(n)){for(let e of n)if(ru(e)&&this.$visit(e,t,r))return!0}else if(ru(n)&&this.$visit(n,t,r))return!0}return!1},ArrowFunctionExpression:()=>!1,AssignmentExpression:()=>!0,AwaitExpression:()=>!0,BinaryExpression(e,t,r){return!!(t.considerImplicitTypeConversion&&rr.has(e.operator))&&("Literal"!==e.left.type||"Literal"!==e.right.type)||this.$visitChildren(e,t,r)},CallExpression:()=>!0,FunctionExpression:()=>!1,ImportExpression:()=>!0,MemberExpression(e,t,r){return!!t.considerGetters||!!t.considerImplicitTypeConversion&&!!e.computed&&"Literal"!==e.property.type||this.$visitChildren(e,t,r)},MethodDefinition(e,t,r){return!!t.considerImplicitTypeConversion&&!!e.computed&&"Literal"!==e.key.type||this.$visitChildren(e,t,r)},NewExpression:()=>!0,Property(e,t,r){return!!t.considerImplicitTypeConversion&&!!e.computed&&"Literal"!==e.key.type||this.$visitChildren(e,t,r)},PropertyDefinition(e,t,r){return!!t.considerImplicitTypeConversion&&!!e.computed&&"Literal"!==e.key.type||this.$visitChildren(e,t,r)},UnaryExpression(e,t,r){return!!("delete"===e.operator||t.considerImplicitTypeConversion&&rn.has(e.operator)&&"Literal"!==e.argument.type)||this.$visitChildren(e,t,r)},UpdateExpression:()=>!0,YieldExpression:()=>!0}));function ri(e,t,r={}){let{considerGetters:n=!1,considerImplicitTypeConversion:u=!1}=r;return ra.$visit(e,{considerGetters:n,considerImplicitTypeConversion:u},t.visitorKeys||tM)}function ro(e,t,r){let n,u,a,i,o;if("number"==typeof e){if(n=0|e,u=t,a=r,!(n>=1))throw TypeError("'times' should be a positive integer.")}else n=1,u=e,a=t;if(null==u||null==u.parent||"CatchClause"===u.parent.type&&u.parent.param===u)return!1;i=o=u;do i=a.getTokenBefore(i),o=a.getTokenAfter(o);while(null!=i&&null!=o&&tG(i)&&tK(o)&&i!==function(e,t){let r=e.parent;switch(r.type){case"CallExpression":case"NewExpression":if(1===r.arguments.length&&r.arguments[0]===e)return t.getTokenAfter(r.typeArguments||r.typeParameters||r.callee,tG);return null;case"DoWhileStatement":if(r.test===e)return t.getTokenAfter(r.body,tG);return null;case"IfStatement":case"WhileStatement":if(r.test===e)return t.getFirstToken(r,1);return null;case"ImportExpression":if(r.source===e)return t.getFirstToken(r,1);return null;case"SwitchStatement":if(r.discriminant===e)return t.getFirstToken(r,1);return null;case"WithStatement":if(r.object===e)return t.getFirstToken(r,1);return null;default:return null}}(u,a)&&--n>0);return 0===n}let rs=/^(?:Import|Export(?:All|Default|Named))Declaration$/u,rd=Function.call.bind(Object.hasOwnProperty),rl=Symbol("read"),rc=Symbol("call"),rf=Symbol("construct"),rp=Symbol("esm"),rm={require:{[rc]:!0}};function rg(e){return null==e||0!==e.defs.length||e.references.some(e=>e.isWrite())}class ry{constructor(e,t={}){let{mode:r="strict",globalObjectNames:n=["global","globalThis","self","window"]}=t;this.variableStack=[],this.globalScope=e,this.mode=r,this.globalObjectNames=n.slice(0)}*iterateGlobalReferences(e){for(let t of Object.keys(e)){let r=e[t],n=[t],u=this.globalScope.set.get(t);rg(u)||(yield*this._iterateVariableReferences(u,n,r,!0))}for(let t of this.globalObjectNames){let r=[],n=this.globalScope.set.get(t);rg(n)||(yield*this._iterateVariableReferences(n,r,e,!1))}}*iterateCjsReferences(e){for(let{node:t}of this.iterateGlobalReferences(rm)){let r=t7(t.arguments[0]);if(null==r||!rd(e,r))continue;let n=e[r],u=[r];n[rl]&&(yield{node:t,path:u,type:rl,info:n[rl]}),yield*this._iteratePropertyReferences(t,u,n)}}*iterateEsmReferences(e){for(let t of this.globalScope.block.body){if(!rs.test(t.type)||null==t.source)continue;let r=t.source.value;if(!rd(e,r))continue;let n=e[r],u=[r];if(n[rl]&&(yield{node:t,path:u,type:rl,info:n[rl]}),"ExportAllDeclaration"===t.type)for(let e of Object.keys(n)){let r=n[e];r[rl]&&(yield{node:t,path:u.concat(e),type:rl,info:r[rl]})}else for(let e of t.specifiers){let t=rd(n,rp),r=this._iterateImportReferences(e,u,t?n:"legacy"===this.mode?{default:n,...n}:{default:n});if(t)yield*r;else for(let e of r)e.path=e.path.filter(rh),(e.path.length>=2||e.type!==rl)&&(yield e)}}}*iteratePropertyReferences(e,t){yield*this._iteratePropertyReferences(e,[],t)}*_iterateVariableReferences(e,t,r,n){if(!this.variableStack.includes(e)){this.variableStack.push(e);try{for(let u of e.references){if(!u.isRead())continue;let e=u.identifier;n&&r[rl]&&(yield{node:e,path:t,type:rl,info:r[rl]}),yield*this._iteratePropertyReferences(e,t,r)}}finally{this.variableStack.pop()}}}*_iteratePropertyReferences(e,t,r){let n=e;for(;function(e){let t=e.parent;if(t)switch(t.type){case"ConditionalExpression":return t.consequent===e||t.alternate===e;case"LogicalExpression":case"ChainExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":case"TSInstantiationExpression":return!0;case"SequenceExpression":return t.expressions[t.expressions.length-1]===e}return!1}(n);)n=n.parent;let u=n.parent;if("MemberExpression"===u.type){if(u.object===n){let e=re(u);if(null==e||!rd(r,e))return;t=t.concat(e);let n=r[e];n[rl]&&(yield{node:u,path:t,type:rl,info:n[rl]}),yield*this._iteratePropertyReferences(u,t,n)}return}if("CallExpression"===u.type){u.callee===n&&r[rc]&&(yield{node:u,path:t,type:rc,info:r[rc]});return}if("NewExpression"===u.type){u.callee===n&&r[rf]&&(yield{node:u,path:t,type:rf,info:r[rf]});return}if("AssignmentExpression"===u.type){u.right===n&&(yield*this._iterateLhsReferences(u.left,t,r),yield*this._iteratePropertyReferences(u,t,r));return}if("AssignmentPattern"===u.type){u.right===n&&(yield*this._iterateLhsReferences(u.left,t,r));return}"VariableDeclarator"===u.type&&u.init===n&&(yield*this._iterateLhsReferences(u.id,t,r))}*_iterateLhsReferences(e,t,r){if("Identifier"===e.type){let n=tq(this.globalScope,e);null!=n&&(yield*this._iterateVariableReferences(n,t,r,!1));return}if("ObjectPattern"===e.type){for(let n of e.properties){let e=re(n);if(null==e||!rd(r,e))continue;let u=t.concat(e),a=r[e];a[rl]&&(yield{node:n,path:u,type:rl,info:a[rl]}),yield*this._iterateLhsReferences(n.value,u,a)}return}"AssignmentPattern"===e.type&&(yield*this._iterateLhsReferences(e.left,t,r))}*_iterateImportReferences(e,t,r){let n=e.type;if("ImportSpecifier"===n||"ImportDefaultSpecifier"===n){let u="ImportDefaultSpecifier"===n?"default":"Identifier"===e.imported.type?e.imported.name:e.imported.value;if(!rd(r,u))return;t=t.concat(u);let a=r[u];a[rl]&&(yield{node:e,path:t,type:rl,info:a[rl]}),yield*this._iterateVariableReferences(tq(this.globalScope,e.local),t,a,!1);return}if("ImportNamespaceSpecifier"===n)return void(yield*this._iterateVariableReferences(tq(this.globalScope,e.local),t,r,!1));if("ExportSpecifier"===n){let n="Identifier"===e.local.type?e.local.name:e.local.value;if(!rd(r,n))return;t=t.concat(n);let u=r[n];u[rl]&&(yield{node:e,path:t,type:rl,info:u[rl]})}}}function rh(e,t){return 1!==t||"default"!==e}ry.READ=rl,ry.CALL=rc,ry.CONSTRUCT=rf,ry.ESM=rp;let rb="too-deep",rE="should-parenthesized";function rv(e,t){let r=function(e,t){let r=0;for(;ro(r+1,e,t);)r++;return r}(e,t);return 0===r?[]:[...t.getTokensBefore(e,{count:r,filter:tG}),...t.getTokensAfter(e,{count:r,filter:tK})]}function rx(e,t){let r=rv(e,t),[n]=t.getRange(r[0]??e),[,u]=t.getRange(r.at(-1)??e);return[n,u]}function rD(e,t){let[r,n]=rx(e,t);return t.text.slice(r,n)}function rA(e,t){return e?.type==="Literal"&&(null===t?"null"===e.raw:e.value===t)}let rS=e=>e?.type==="Literal"&&"string"==typeof e.value,rC=e=>"Literal"===e.type&&"number"==typeof e.value,rT=e=>"Literal"===e.type&&!!e.regex,rw=e=>"Literal"===e.type&&!!e.bigint;function r_(e,t,r){if(!r.includes(e?.type))return!1;"string"==typeof t&&(t={names:[t]}),Array.isArray(t)&&(t={names:t});let{name:n,names:u,argumentsLength:a,minimumArguments:i,maximumArguments:o,allowSpreadElement:s,optional:d}={minimumArguments:0,maximumArguments:1/0,allowSpreadElement:!1,...t};if(n&&(u=[n]),!0===d&&e.optional!==d||!1===d&&e.optional||"number"==typeof a&&e.arguments.length!==a||0!==i&&e.arguments.length<i||Number.isFinite(o)&&e.arguments.length>o)return!1;if(!s){let t=Number.isFinite(o)?o:a;if("number"==typeof t&&e.arguments.some((e,r)=>"SpreadElement"===e.type&&r<t))return!1}return!Array.isArray(u)||!(u.length>0)||"Identifier"===e.callee.type&&!!u.includes(e.callee.name)}let rF=(e,t)=>r_(e,t,["CallExpression"]),rk=(e,t)=>{if("boolean"==typeof t?.optional)throw TypeError("Cannot check node.optional in `isNewExpression`.");return r_(e,t,["NewExpression"])},rP=(e,t)=>r_(e,t,["CallExpression","NewExpression"]),rI=e=>"ExpressionStatement"===e.type&&"string"==typeof e.directive;function rB(e,t){let{type:r}=e;return"BlockStatement"===r?e.body.every(e=>rB(e,t)):!!("EmptyStatement"===r||t?.(e))}function rO(e){return"ExpressionStatement"===e.type||"ChainExpression"===e.type&&"ExpressionStatement"===e.parent.type}let rR=["FunctionDeclaration","FunctionExpression","ArrowFunctionExpression"];function rN(e){return rR.includes(e.type)}function rL(e,t){if(e?.type!=="MemberExpression")return!1;"string"==typeof t&&(t={properties:[t]}),Array.isArray(t)&&(t={properties:t});let{property:r,properties:n,object:u,objects:a,optional:i,computed:o}={property:"",properties:[],object:"",...t};if(r&&(n=[r]),u&&(a=[u]),!0===i&&e.optional!==i||!1===i&&e.optional)return!1;if(Array.isArray(n)&&n.length>0){if("Identifier"!==e.property.type||!n.includes(e.property.name))return!1;o??=!1}return!(!0===o&&e.computed!==o||!1===o&&e.computed||Array.isArray(a)&&a.length>0&&("Identifier"!==e.object.type||!a.includes(e.object.name)))}function rj(e,t){"string"==typeof t&&(t={methods:[t]}),Array.isArray(t)&&(t={methods:t});let{optionalCall:r,optionalMember:n,method:u,methods:a}={method:"",methods:[],...t};return rF(e,{argumentsLength:t.argumentsLength,minimumArguments:t.minimumArguments,maximumArguments:t.maximumArguments,allowSpreadElement:t.allowSpreadElement,optional:r})&&rL(e.callee,{object:t.object,objects:t.objects,computed:t.computed,property:u,properties:a,optional:n})}let rM=e=>rF(e,{name:"require",argumentsLength:1,optional:!1})&&rS(e.arguments[0]);function r$(e,t){let r=t.trim().split(".");for(let t=r.length-1;t>=0;t--){let n=r[t];if(!n)return!1;if(0===t)return"Identifier"===e.type&&e.name===n||"this"===n&&"ThisExpression"===e.type;if("MemberExpression"!==e.type||e.optional||e.computed||"Identifier"!==e.property.type||e.property.name!==n)return!1;e=e.object}}function rU(e,t){return t.some(t=>r$(e,t))}function rq(e,t){return"TemplateLiteral"===e.type&&"TaggedTemplateExpression"===e.parent.type&&e.parent.quasi===e&&(!t||rU(e.parent.tag,t))}function rz(e){return"Identifier"===e.type&&"undefined"===e.name}let rW=(e,t)=>(function(e,t){let{object:r,property:n,properties:u}={property:"",properties:[],...t};if(!rL(e,{property:n,properties:u,optional:!1}))return;let a=e.object;return rL(a,{object:r,property:"prototype",optional:!1})||"Array"===r&&"ArrayExpression"===a.type&&0===a.elements.length||"Object"===r&&"ObjectExpression"===a.type&&0===a.properties.length})(e,{...t,object:"Array"}),rY=e=>e?.type==="LogicalExpression"&&("&&"===e.operator||"||"===e.operator),rV=e=>e?.type==="UnaryExpression"&&"!"===e.operator,rZ=e=>e?.type==="CallExpression"&&"Identifier"===e.callee.type&&"Boolean"===e.callee.name&&1===e.arguments.length;function rG(e){if(rV(e)||rV(e.parent)&&e.parent.argument===e||rZ(e)||rZ(e.parent)&&e.parent.arguments[0]===e)return!0;let{parent:t}=e;return t?.type==="VExpressionContainer"&&"VAttribute"===t.parent.type&&!!t.parent.directive&&t.parent.value===t&&"VDirectiveKey"===t.parent.key.type&&"VIdentifier"===t.parent.key.name.type&&("if"===t.parent.key.name.rawName||"else-if"===t.parent.key.name.rawName||"show"===t.parent.key.name.rawName)||("IfStatement"===t.type||"ConditionalExpression"===t.type||"WhileStatement"===t.type||"DoWhileStatement"===t.type||"ForStatement"===t.type)&&t.test===e||!!rY(t)&&rG(t)}function rK(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var rH=rK(function(){if(u)return n;u=1;let e={},t=e.hasOwnProperty,r=(e,r)=>{for(let n in e)t.call(e,n)&&r(n,e[n])},a=e=>"\\u"+("0000"+e).slice(-4),i=(e,t)=>{let r=e.toString(16);return t?r:r.toUpperCase()},o=e.toString,s=Array.isArray,d={"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},l=/[\\\b\f\n\r\t]/,c=/[0-9]/,f=/[\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,p=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^]/g,m=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g,g=(e,t)=>{let n,u,y=()=>{A=D,++t.indentLevel,D=t.indent.repeat(t.indentLevel)},h={escapeEverything:!1,minimal:!1,isScriptContext:!1,quotes:"single",wrap:!1,es6:!1,json:!1,compact:!0,lowercaseHex:!1,numbers:"decimal",indent:" ",indentLevel:0,__inline1__:!1,__inline2__:!1},b=t&&t.json;b&&(h.quotes="double",h.wrap=!0),"single"!=(!(I=t)||r(I,(e,t)=>{h[e]=t}),t=h).quotes&&"double"!=t.quotes&&"backtick"!=t.quotes&&(t.quotes="single");let E="double"==t.quotes?'"':"backtick"==t.quotes?"`":"'",v=t.compact,x=t.lowercaseHex,D=t.indent.repeat(t.indentLevel),A="",S=t.__inline1__,C=t.__inline2__,T=v?"":"\n",w=!0,_="binary"==t.numbers,F="octal"==t.numbers,k="decimal"==t.numbers,P="hexadecimal"==t.numbers;if(b&&e&&"function"==typeof e.toJSON&&(e=e.toJSON()),"string"!=typeof(u=e)&&"[object String]"!=o.call(u)){let u,a,i,d;if(u=e,"[object Map]"==o.call(u))return 0==e.size?"new Map()":(v||(t.__inline1__=!0,t.__inline2__=!1),"new Map("+g(Array.from(e),t)+")");if(a=e,"[object Set]"==o.call(a))return 0==e.size?"new Set()":"new Set("+g(Array.from(e),t)+")";if(i=e,"function"==typeof Buffer&&Buffer.isBuffer(i))return 0==e.length?"Buffer.from([])":"Buffer.from("+g(Array.from(e),t)+")";if(s(e)){n=[],t.wrap=!0,S&&(t.__inline1__=!1,t.__inline2__=!0),C||y();var I,B=e,O=e=>{w=!1,C&&(t.__inline2__=!1),n.push((v||C?"":D)+g(e,t))};let r=B.length,u=-1;for(;++u<r;)O(B[u]);return w?"[]":C?"["+n.join(", ")+"]":"["+T+n.join(","+T)+T+(v?"":A)+"]"}if("number"==typeof(d=e)||"[object Number]"==o.call(d)||"bigint"==typeof e){let t;if(b)return JSON.stringify(Number(e));if(k)t=String(e);else if(P){let r=e.toString(16);x||(r=r.toUpperCase()),t="0x"+r}else _?t="0b"+e.toString(2):F&&(t="0o"+e.toString(8));return"bigint"==typeof e?t+"n":t}{let u;if("bigint"==typeof e)return b?JSON.stringify(Number(e)):e+"n";return(u=e,"[object Object]"==o.call(u))?(n=[],t.wrap=!0,y(),r(e,(e,r)=>{w=!1,n.push((v?"":D)+g(e,t)+":"+(v?"":" ")+g(r,t))}),w)?"{}":"{"+T+n.join(","+T)+T+(v?"":A)+"}":b?JSON.stringify(e)||"null":String(e)}}let R=t.escapeEverything?p:m;return n=e.replace(R,(e,r,n,u,o,s)=>{if(r){if(t.minimal)return r;let e=r.charCodeAt(0),n=r.charCodeAt(1);return t.es6?"\\u{"+i((e-55296)*1024+n-56320+65536,x)+"}":a(i(e,x))+a(i(n,x))}if(n)return a(i(n.charCodeAt(0),x));if("\0"==e&&!b&&!c.test(s.charAt(o+1)))return"\\0";if(u)return u==E||t.escapeEverything?"\\"+u:u;if(l.test(e))return d[e];if(t.minimal&&!f.test(e))return e;let p=i(e.charCodeAt(0),x);return b||p.length>2?a(p):"\\x"+("00"+p).slice(-2)}),"`"==E&&(n=n.replace(/\$\{/g,"\\${")),t.isScriptContext&&(n=n.replace(/<\/(script|style)/gi,"<\\/$1").replace(/<!--/g,b?"\\u003C!--":"\\x3C!--")),t.wrap&&(n=E+n+E),n};return g.version="3.0.2",n=g}());function rX(e,t="'"){if("string"!=typeof e)throw TypeError("Unexpected string.");return rH(e,{quotes:'"'===t?"double":"single",wrap:!0,es6:!0,minimal:!0,lowercaseHex:!1})}var rJ={},rQ={},r0={},r1=rK(function(){var e,t;return o?rJ:(o=1,Object.defineProperty(rJ,"__esModule",{value:!0}),Object.defineProperty(rJ,"isIdentifierChar",{enumerable:!0,get:function(){return e.isIdentifierChar}}),Object.defineProperty(rJ,"isIdentifierName",{enumerable:!0,get:function(){return e.isIdentifierName}}),Object.defineProperty(rJ,"isIdentifierStart",{enumerable:!0,get:function(){return e.isIdentifierStart}}),Object.defineProperty(rJ,"isKeyword",{enumerable:!0,get:function(){return t.isKeyword}}),Object.defineProperty(rJ,"isReservedWord",{enumerable:!0,get:function(){return t.isReservedWord}}),Object.defineProperty(rJ,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return t.isStrictBindOnlyReservedWord}}),Object.defineProperty(rJ,"isStrictBindReservedWord",{enumerable:!0,get:function(){return t.isStrictBindReservedWord}}),Object.defineProperty(rJ,"isStrictReservedWord",{enumerable:!0,get:function(){return t.isStrictReservedWord}}),e=function(){if(a)return rQ;a=1,Object.defineProperty(rQ,"__esModule",{value:!0}),rQ.isIdentifierChar=d,rQ.isIdentifierName=function(e){let t=!0;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);if((64512&n)==55296&&r+1<e.length){let t=e.charCodeAt(++r);(64512&t)==56320&&(n=65536+((1023&n)<<10)+(1023&t))}if(t){if(t=!1,!s(n))return!1}else if(!d(n))return!1}return!t},rQ.isIdentifierStart=s;let e="\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲊᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟍꟐꟑꟓꟕ-Ƛꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",t="\xb7̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࢗ-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‌‍‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・",r=RegExp("["+e+"]"),n=RegExp("["+e+t+"]");e=t=null;let u=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],i=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function o(e,t){let r=65536;for(let n=0,u=t.length;n<u&&!((r+=t[n])>e);n+=2)if((r+=t[n+1])>=e)return!0;return!1}function s(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&r.test(String.fromCharCode(e)):o(e,u)))}function d(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&n.test(String.fromCharCode(e)):o(e,u)||o(e,i))))}return rQ}(),t=function(){if(i)return r0;i=1,Object.defineProperty(r0,"__esModule",{value:!0}),r0.isKeyword=function(t){return e.has(t)},r0.isReservedWord=n,r0.isStrictBindOnlyReservedWord=a,r0.isStrictBindReservedWord=function(e,t){return u(e,t)||a(e)},r0.isStrictReservedWord=u;let e=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"]),t=new Set(["implements","interface","let","package","private","protected","public","static","yield"]),r=new Set(["eval","arguments"]);function n(e,t){return t&&"await"===e||"enum"===e}function u(e,r){return n(e,r)||t.has(e)}function a(e){return r.has(e)}return r0}(),rJ)}());let r3=e=>[e,...e.childScopes.flatMap(e=>r3(e))],r2=e=>[...new Set(r3(e).flatMap(({references:e})=>e))],{isIdentifierName:r4,isStrictReservedWord:r5,isKeyword:r8}=r1,r6=new Set(["break","case","catch","class","const","continue","debugger","default","delete","do","else","enum","export","extends","false","finally","for","function","if","import","in","instanceof","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with","as","implements","interface","let","package","private","protected","public","static","yield","any","boolean","constructor","declare","get","module","require","number","set","string","symbol","type","from","of"]),r9=e=>"string"==typeof e&&!r8(e)&&!r5(e,!0)&&r4(e)&&"arguments"!==e&&!r6.has(e),r7=(e,t)=>!t.some(t=>(function(e,t){for(;t;){let r=t.set.get(e);if(r)return r;t=t.upper}})(e,t)||r2(t).some(({identifier:t,resolved:r})=>t?.name===e&&!r)),ne=()=>!0;function nt(e,t,r=ne){if(r9(e)||r9(e+="_")){for(;!r7(e,t)||!r(e,t);)e+="_";return e}}function nr(e,t){let r=e.getTokenAfter(t.callee,tG),[n,u]=e.getLastTokens(t,2);return{openingParenthesisToken:r,closingParenthesisToken:u,trailingCommaToken:tY(n)?n:void 0}}function nn(e,t){let{start:{line:r,column:n}}=t.getLoc(e);return t.getLines()[r-1].slice(0,n).match(/\s*$/)[0]}function nu(e,t){let{sourceCode:r}=e;return r.parserServices.getTemplateBodyTokenStore&&r.ast.templateBody&&r.getRange(r.ast.templateBody)[0]<=r.getRange(t)[0]&&r.getRange(t)[1]<=r.getRange(r.ast.templateBody)[1]?r.parserServices.getTemplateBodyTokenStore():r}let na=({identifiers:e,references:t})=>[...new Set([...e,...t.map(({identifier:e})=>e)])],ni=(e,t)=>{let{references:r=[]}=tq(e,t)||{};return r},no=e=>("AssignmentExpression"===e.parent.type||"AssignmentPattern"===e.parent.type)&&e.parent.left===e||"UpdateExpression"===e.parent.type&&e.parent.argument===e||"ArrayPattern"===e.parent.type&&e.parent.elements.includes(e)||"Property"===e.parent.type&&e.parent.value===e&&"ObjectPattern"===e.parent.parent.type&&e.parent.parent.properties.includes(e.parent)||"UnaryExpression"===e.parent.type&&"delete"===e.parent.operator&&e.parent.argument===e,ns=new Set(["ArrayExpression","BinaryExpression","ClassExpression","Literal","ObjectExpression","TemplateLiteral","UnaryExpression","UpdateExpression"]),nd=new Set(["AssignmentExpression","AwaitExpression","NewExpression","TaggedTemplateExpression","ThisExpression"]);function nl(e,t){return e.loc.start.line===t.loc.start.line}let nc=(e,t)=>"Identifier"===e.type&&"Identifier"===t.type&&e.name===t.name;function nf(e){let t;switch(e?.type){case"MemberExpression":t=e.property;break;case"ChainExpression":return nf(e.expression);case"Property":case"MethodDefinition":t=e.key}if(t){if("Identifier"===t.type&&!e.computed)return t.name;let r=t9(t);if(!r)return;return String(r.value)}}function np(e,t){if(e.type!==t.type)return"ChainExpression"===e.type?np(e.expression,t):"ChainExpression"===t.type&&np(e,t.expression);switch(e.type){case"Super":case"ThisExpression":return!0;case"Identifier":case"PrivateIdentifier":return e.name===t.name;case"Literal":return e.regex||t.regex?!!(e.regex&&t.regex&&e.regex.pattern===t.regex.pattern&&e.regex.flags===t.regex.flags):e.bigint||t.bigint?e.bigint===t.bigint:e.value===t.value;case"ChainExpression":return np(e.expression,t.expression);case"MemberExpression":{let r=nf(e);if(void 0!==r)return np(e.object,t.object)&&r===nf(t);return e.computed===t.computed&&np(e.object,t.object)&&np(e.property,t.property)}default:return!1}}let nm=(e,t)=>e&&t&&e.range[0]===t.range[0]&&e.range[1]===t.range[1],ng=e=>"Property"===e.parent.type&&e.parent.shorthand&&e===e.parent.value,ny=new Set(["String","Null","Boolean","Numeric","RegularExpression"]),nh=new Set(["[","(","/","`","+","-","*",",","."]);function nb(e,t,r){if(""===r||r&&!nh.has(r.charAt(0))||!e)return!1;let{type:n,value:u}=e,a=t.getRange(e),i=t.getNodeByRangeIndex(a[0]);if("Punctuator"===n){if(";"===u)return!1;if("]"===u)return!0;if(")"===u){switch(i.type){case"IfStatement":if(t.getTokenBefore(i.consequent)===e)return!1;break;case"ForStatement":case"ForInStatement":case"ForOfStatement":case"WhileStatement":case"DoWhileStatement":case"WithStatement":if(i.body&&t.getTokenBefore(i.body)===e)return!1}return!0}}return!!ny.has(n)||("Template"===n?u.endsWith("`"):"ObjectExpression"===i.type||"Identifier"===n&&("of"!==u||"ForOfStatement"!==i.type)&&("await"!==u||"AwaitExpression"!==i.type))}let nE=e=>"function"==typeof e?.[Symbol.iterator];class nv extends Error{name="FixAbortError"}let nx={abort(){throw new nv("Fix aborted.")}};function nD(e){return t=>{let r=e(t,nx);if(nE(r))try{return[...r]}catch(e){if(e instanceof nv)return;throw e}return r}}let nA=new Set;function nS(e){if(nA.has(e))return e;let t=t=>{let r={},n=(e,t)=>{r[e]??=[],r[e].push(t)};for(let[r,u]of Object.entries(e(new Proxy(t,{get:(e,t,r)=>"on"===t?(e,t)=>{for(let r of Array.isArray(e)?e:[e])n(r,t)}:"onExit"===t?(e,t)=>{for(let r of Array.isArray(e)?e:[e])n(`${r}:exit`,t)}:Reflect.get(e,t,r)}))??{}))n(r,u);return Object.fromEntries(Object.entries(r).map(([e,r])=>[e,(...e)=>{for(let u of r){var n=u(...e);if(n){for(let e of(nE(n)||(n=[n]),n))if(e){if(e.fix&&=nD(e.fix),Array.isArray(e.suggest))for(let t of e.suggest)t.fix&&=nD(t.fix),t.data={...e.data,...t.data};t.report(e)}}}}]))};return nA.add(t),t}function nC(e,t){let{visitScriptBlock:r}={visitScriptBlock:!0,...t};e=nS(e);let n=t=>{let n=e(t),{parserServices:u}=t.sourceCode;return u?.defineTemplateBodyVisitor?r?u.defineTemplateBodyVisitor(n,n):u.defineTemplateBodyVisitor(n):n};return nA.add(n),n}function nT(e,t){if(e.arguments.length>0)return!0;let[r,n]=t.getLastTokens(e,2);return tG(r)&&tK(n)&&t.getRange(e.callee)[1]<t.getRange(e)[1]}let nw=/^(?:0|0[0-7]*[89]\d*|[1-9](?:_?\d)*)$/u;function n_(e,t){switch(e.type){case"Identifier":case"MemberExpression":case"CallExpression":case"ChainExpression":case"TemplateLiteral":case"ThisExpression":case"ArrayExpression":case"FunctionExpression":return!1;case"NewExpression":return!nT(e,t);case"Literal":let r;if(rC(e)&&(r=e.raw,nw.test(r)))return!0;return!1;default:return!0}}var nF={exports:{}},nk=nF.exports,nP=rK(function(){return s?nF.exports:(s=1,nF.exports=function(){var e=[],t=[],r={},n={},u={};function a(e){return"string"==typeof e?RegExp("^"+e+"$","i"):e}function i(e,t){return e===t?t:e===e.toLowerCase()?t.toLowerCase():e===e.toUpperCase()?t.toUpperCase():e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.substr(1).toLowerCase():t.toLowerCase()}function o(e,t,n){if(!e.length||r.hasOwnProperty(e))return t;for(var u=n.length;u--;){var a=n[u];if(a[0].test(t))return function(e,t){return e.replace(t[0],function(r,n){var u,a,o=(u=t[1],a=arguments,u.replace(/\$(\d{1,2})/g,function(e,t){return a[t]||""}));return""===r?i(e[n-1],o):i(r,o)})}(t,a)}return t}function s(e,t,r){return function(n){var u=n.toLowerCase();return t.hasOwnProperty(u)?i(n,u):e.hasOwnProperty(u)?i(n,e[u]):o(u,n,r)}}function d(e,t,r,n){return function(n){var u=n.toLowerCase();return!!t.hasOwnProperty(u)||!e.hasOwnProperty(u)&&o(u,u,r)===u}}function l(e,t,r){var n=1===t?l.singular(e):l.plural(e);return(r?t+" ":"")+n}return l.plural=s(u,n,e),l.isPlural=d(u,n,e),l.singular=s(n,u,t),l.isSingular=d(n,u,t),l.addPluralRule=function(t,r){e.push([a(t),r])},l.addSingularRule=function(e,r){t.push([a(e),r])},l.addUncountableRule=function(e){if("string"==typeof e){r[e.toLowerCase()]=!0;return}l.addPluralRule(e,"$0"),l.addSingularRule(e,"$0")},l.addIrregularRule=function(e,t){t=t.toLowerCase(),u[e=e.toLowerCase()]=t,n[t]=e},[["I","we"],["me","us"],["he","they"],["she","they"],["them","them"],["myself","ourselves"],["yourself","yourselves"],["itself","themselves"],["herself","themselves"],["himself","themselves"],["themself","themselves"],["is","are"],["was","were"],["has","have"],["this","these"],["that","those"],["echo","echoes"],["dingo","dingoes"],["volcano","volcanoes"],["tornado","tornadoes"],["torpedo","torpedoes"],["genus","genera"],["viscus","viscera"],["stigma","stigmata"],["stoma","stomata"],["dogma","dogmata"],["lemma","lemmata"],["schema","schemata"],["anathema","anathemata"],["ox","oxen"],["axe","axes"],["die","dice"],["yes","yeses"],["foot","feet"],["eave","eaves"],["goose","geese"],["tooth","teeth"],["quiz","quizzes"],["human","humans"],["proof","proofs"],["carve","carves"],["valve","valves"],["looey","looies"],["thief","thieves"],["groove","grooves"],["pickaxe","pickaxes"],["passerby","passersby"]].forEach(function(e){return l.addIrregularRule(e[0],e[1])}),[[/s?$/i,"s"],[/[^\u0000-\u007F]$/i,"$0"],[/([^aeiou]ese)$/i,"$1"],[/(ax|test)is$/i,"$1es"],[/(alias|[^aou]us|t[lm]as|gas|ris)$/i,"$1es"],[/(e[mn]u)s?$/i,"$1s"],[/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i,"$1"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1i"],[/(alumn|alg|vertebr)(?:a|ae)$/i,"$1ae"],[/(seraph|cherub)(?:im)?$/i,"$1im"],[/(her|at|gr)o$/i,"$1oes"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i,"$1a"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i,"$1a"],[/sis$/i,"ses"],[/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i,"$1$2ves"],[/([^aeiouy]|qu)y$/i,"$1ies"],[/([^ch][ieo][ln])ey$/i,"$1ies"],[/(x|ch|ss|sh|zz)$/i,"$1es"],[/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i,"$1ices"],[/\b((?:tit)?m|l)(?:ice|ouse)$/i,"$1ice"],[/(pe)(?:rson|ople)$/i,"$1ople"],[/(child)(?:ren)?$/i,"$1ren"],[/eaux$/i,"$0"],[/m[ae]n$/i,"men"],["thou","you"]].forEach(function(e){return l.addPluralRule(e[0],e[1])}),[[/s$/i,""],[/(ss)$/i,"$1"],[/(wi|kni|(?:after|half|high|low|mid|non|night|[^\w]|^)li)ves$/i,"$1fe"],[/(ar|(?:wo|[ae])l|[eo][ao])ves$/i,"$1f"],[/ies$/i,"y"],[/\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i,"$1ie"],[/\b(mon|smil)ies$/i,"$1ey"],[/\b((?:tit)?m|l)ice$/i,"$1ouse"],[/(seraph|cherub)im$/i,"$1"],[/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i,"$1"],[/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i,"$1sis"],[/(movie|twelve|abuse|e[mn]u)s$/i,"$1"],[/(test)(?:is|es)$/i,"$1is"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1us"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i,"$1um"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i,"$1on"],[/(alumn|alg|vertebr)ae$/i,"$1a"],[/(cod|mur|sil|vert|ind)ices$/i,"$1ex"],[/(matr|append)ices$/i,"$1ix"],[/(pe)(rson|ople)$/i,"$1rson"],[/(child)ren$/i,"$1"],[/(eau)x?$/i,"$1"],[/men$/i,"man"]].forEach(function(e){return l.addSingularRule(e[0],e[1])}),["adulthood","advice","agenda","aid","aircraft","alcohol","ammo","analytics","anime","athletics","audio","bison","blood","bream","buffalo","butter","carp","cash","chassis","chess","clothing","cod","commerce","cooperation","corps","debris","diabetes","digestion","elk","energy","equipment","excretion","expertise","firmware","flounder","fun","gallows","garbage","graffiti","hardware","headquarters","health","herpes","highjinks","homework","housework","information","jeans","justice","kudos","labour","literature","machinery","mackerel","mail","media","mews","moose","music","mud","manga","news","only","personnel","pike","plankton","pliers","police","pollution","premises","rain","research","rice","salmon","scissors","series","sewage","shambles","shrimp","software","species","staff","swine","tennis","traffic","transportation","trout","tuna","wealth","welfare","whiting","wildebeest","wildlife","you",/pok[eé]mon$/i,/[^aeiou]ese$/i,/deer$/i,/fish$/i,/measles$/i,/o[iu]s$/i,/pox$/i,/sheep$/i].forEach(l.addUncountableRule),l}(),nF.exports)}());function nI(e,t,r=0,n=0){let[u,a]=Array.isArray(e)?e:t.getRange(e);return{start:t.getLocFromIndex(u+r),end:t.getLocFromIndex(a+n)}}let nB=e=>e.charAt(0).toUpperCase()+e.slice(1),nO="prefer-event-target",nR=new Set(["@angular/core","eventemitter3"]),nN=e=>"VariableDeclarator"===e.parent.type&&e.parent.id===e&&"VariableDeclaration"===e.parent.parent.type&&"const"===e.parent.parent.kind&&e.parent.parent.declarations.includes(e.parent);function nL(e){let t;return!!e&&(rM(e)?[t]=e.arguments:"AwaitExpression"===e.type&&"ImportExpression"===e.argument.type&&({source:t}=e.argument),!!(rS(t)&&nR.has(t.value)))}let nj={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",186:";",187:"=",188:",",189:"-",190:".",191:"/",219:"[",220:"\\",221:"]",222:"'",224:"Meta"},nM="prefer-keyboard-event-key",n$=new Set(["keyCode","charCode","which"]),nU=e=>e?.type==="CallExpression"&&"MemberExpression"===e.callee.type&&"addEventListener"===e.callee.property.name,nq=(e,t)=>{let r=nz(t,"CallExpression",nU),n=r?.arguments[1];switch(n?.type){case"ArrowFunctionExpression":case"FunctionExpression":{let t=e.sourceCode.getDeclaredVariables(n)[0],r=t?.references;return{event:n.params[0],references:r}}default:return{}}},nz=(e,t,r=()=>!0)=>{let n=e;for(;n;){if(n.type===t&&r(n))return n;n=n.parent}},nW=e=>({messageId:nM,data:{name:e.name},node:e,fix:t=>{let r=((e,t)=>{let r=e;for(;r&&t;)t--,r=r.parent;if(0===t)return r})(e,3);if(!r||"IfStatement"!==r.type)return;let{type:n,operator:u,right:a}=r.test;if(!("BinaryExpression"===n&&("=="===u||"==="===u)&&rC(a)))return;let i=nj[a.value]||String.fromCodePoint(a.value);if(i)return[t.replaceText(e,"key"),t.replaceText(a,rX(i))]}}),nY="error",nV="suggestion";function*nZ(e,t,r){for(let n of rv(e,r))yield t.remove(n)}function nG(e,t,r,n){if("CallExpression"!==t.type)throw Error(`Unexpected node "${t.type}".`);let[u,a]=n.getLastTokens(t,2);return t.arguments.length>0&&(r=tY(u)?` ${r},`:`, ${r}`),e.insertTextBefore(a,r)}function nK(e,t,r){let n=t.parent,u=n.arguments.indexOf(t),a=rv(t,r),i=a[0]||t,o=a.at(-1)||t,[s]=r.getRange(i),[,d]=r.getRange(o);if(0!==u){let e=r.getTokenBefore(i);[s]=r.getRange(e)}if(1===n.arguments.length){let e=r.getTokenBefore(o);tY(e)&&([,d]=r.getRange(e))}return e.removeRange([s,d])}function nH(e,t,r,n){return e.replaceTextRange(rx(t,n),r)}function*nX(e,t,r){if("ReturnStatement"!==t.type&&"ThrowStatement"!==t.type)return;let n=r.getFirstToken(t);yield e.insertTextAfter(n," (");let u=r.getLastToken(t);tV(u)?yield e.insertTextBefore(u,")"):yield e.insertTextAfter(t,")")}function nJ(e,t,r){let n=e;"object"==typeof e&&(n=t.getRange(e)[1]);let[u]=t.text.slice(n).match(/^\s*/);return r.removeRange([n,n+u.length])}function*nQ(e,t,r){let n=t.getFirstToken(e);yield r.remove(n),yield nJ(n,t,r),nT(e,t)||(yield r.insertTextAfter(e,"()")),nl(n,e.callee)||ro(e,t)||(yield*nX(r,e.parent,t))}let n0=({type:e,value:t})=>"Keyword"===e&&/^[a-z]*$/.test(t)||"Identifier"===e&&"of"===t||"Identifier"===e&&"await"===t;function*n1(e,t,r){let n=rx(t,r),u=r.getTokenBefore({range:n},{includeComments:!0});u&&n[0]===r.getRange(u)[1]&&n0(u)&&(yield e.insertTextAfter(u," "));let a=r.getTokenAfter({range:n},{includeComments:!0});a&&n[1]===r.getRange(a)[0]&&n0(a)&&(yield e.insertTextBefore(a," "))}function*n3(e,t,r){var n;yield*n1(r,e,t),yield r.insertTextBefore(e,"new ");let{callee:u}=e;!ro(u,t)&&"MemberExpression"===(n=u).type&&function(e){let t=e.object,r=e.object.type;for(;"MemberExpression"===r;)r=(t=t.object).type;return"CallExpression"===r}(n)&&(yield r.insertTextBefore(u,"("),yield r.insertTextAfter(u,")"))}function n2(e,t,r,n){let[,u]=rx(t.object,r),[,a]=r.getRange(t);return e.replaceTextRange([u,a],n)}let n4=(e,t,r)=>n2(e,t,r,"");function*n5(e,t,r){let n=t.callee;yield n4(e,n,r);let[,u]=rx(n,r),[,a]=r.getRange(t);yield e.removeRange([u,a])}let n8=(e,t,r)=>{let{range:[n,u],tail:a}=t;return e.replaceTextRange([n+1,u-(a?1:2)],r)};function n6(e,t,r){return ng(e)||"AssignmentPattern"===e.parent.type&&e.parent.left===e&&ng(e.parent)?r.replaceText(e,`${e.name}: ${t}`):(e=>{let{type:t,local:r,imported:n}=e.parent;return"ImportSpecifier"===t&&nm(r,n)&&r===e})(e)?r.replaceText(e,`${e.name} as ${t}`):(e=>{let{type:t,local:r,exported:n}=e.parent;return"ExportSpecifier"===t&&nm(r,n)&&r===e})(e)?r.replaceText(e,`${t} as ${e.name}`):e.typeAnnotation?r.replaceTextRange([e.range[0],e.typeAnnotation.range[0]],`${t}${e.optional?"?":""}`):r.replaceText(e,t)}let n9=(e,t,r)=>na(e).map(e=>n6(e,t,r));function*n7(e,t,r,n,u=n){for(let t of rv(e,u))yield*n7(t,"",r,n,u);let[a,i]=n.getRange(e),[o]=n.text.slice(0,a).match(/\s*$/),[s]=o.match(/(?:\r?\n|\r){0,1}/);a-=o.length,yield r.replaceTextRange([a,i],`${s}${t}`)}let ue="require-array-join-separator",ut="no-thenable-object",ur="no-thenable-export",un="no-thenable-class",uu=(e,t)=>t9(e,t.sourceCode.getScope(e))?.value==="then",ua=(e,t)=>"then"===re(e,t.sourceCode.getScope(e)),ui=[{selector:"ObjectExpression",*getNodes(e,t){for(let r of e.properties)"Property"===r.type&&ua(r,t)&&(yield r.key)},messageId:ut},{selectors:["PropertyDefinition","MethodDefinition"],*getNodes(e,t){"then"===re(e,t.sourceCode.getScope(e))&&(yield e.key)},messageId:un},{selector:"MemberExpression",*getNodes(e,t){"AssignmentExpression"===e.parent.type&&e.parent.left===e&&"then"===re(e,t.sourceCode.getScope(e))&&(yield e.property)},messageId:ut},{selector:"CallExpression",*getNodes(e,t){if(!(rj(e,{objects:["Object","Reflect"],method:"defineProperty",minimumArguments:3,optionalCall:!1,optionalMember:!1})&&"SpreadElement"!==e.arguments[0].type))return;let[,r]=e.arguments;uu(r,t)&&(yield r)},messageId:ut},{selector:"CallExpression",*getNodes(e,t){if(rj(e,{object:"Object",method:"fromEntries",argumentsLength:1,optionalCall:!1,optionalMember:!1})&&"ArrayExpression"===e.arguments[0].type){for(let r of e.arguments[0].elements)if(r?.type==="ArrayExpression"&&r.elements[0]&&"SpreadElement"!==r.elements[0].type){let[e]=r.elements;uu(e,t)&&(yield e)}}},messageId:ut},{selector:"Identifier",*getNodes(e){"then"===e.name&&"ExportSpecifier"===e.parent.type&&e.parent.exported===e&&(yield e)},messageId:ur},{selector:"Identifier",*getNodes(e){"then"===e.name&&("FunctionDeclaration"===e.parent.type||"ClassDeclaration"===e.parent.type)&&e.parent.id===e&&"ExportNamedDeclaration"===e.parent.parent.type&&e.parent.parent.declaration===e.parent&&(yield e)},messageId:ur},{selector:"VariableDeclaration",*getNodes(e,t){if("ExportNamedDeclaration"===e.parent.type&&e.parent.declaration===e)for(let r of t.sourceCode.getDeclaredVariables(e))"then"===r.name&&(yield*r.identifiers)},messageId:ur}],uo="no-invalid-remove-event-listener",us="consistent-function-scoping",ud=(e,t)=>e&&t&&(e===t||e.block===t.block),ul=["useState","useEffect","useContext","useReducer","useCallback","useMemo","useRef","useImperativeHandle","useLayoutEffect","useDebugValue"].flatMap(e=>[e,`React.${e}`]),uc=e=>"function"===e.type&&e.block?.type==="ArrowFunctionExpression"&&(e.thisFound||e.childScopes.some(e=>uc(e))),uf=new Set(["FunctionExpression","ArrowFunctionExpression"]),up={create:e=>{let{checkArrowFunctions:t}={checkArrowFunctions:!0,...e.options[0]},{sourceCode:r}=e,{scopeManager:n}=r,u=[];e.on(rR,()=>{u.push(!1)}),e.on("JSXElement",()=>{u.length>0&&(u[u.length-1]=!0)}),e.onExit(rR,e=>{if(!u.pop()&&("ArrowFunctionExpression"!==e.type||t)&&!function(e,t){let r,n=t.acquire(e);if(!n||uc(n))return!0;let u=e.parent;"VariableDeclarator"===u.type&&(u=u.parent),"VariableDeclaration"===u.type&&(u=u.parent),"BlockStatement"===u.type&&(u=u.parent);let a=t.acquire(u);return!!(!a||"global"===a.type||a.block?.parent?.callee&&rU(a.block.parent.callee,ul)||(r=u,uf.has(r.type)&&"CallExpression"===r.parent.type&&r.parent.callee===r))||r2(n).map(({resolved:e})=>e).filter(Boolean).some(e=>e.references.some(e=>{if(ud(a,e.from))return!0;let{resolved:t}=e,[r]=t.defs;return(r?.type!=="FunctionName"||t.name!==r.name.name)&&ud(a,t.scope)})||e.defs.some(e=>ud(a,t.acquire(e.node)))||e.identifiers.some(e=>{if(!e.parent||"FunctionDeclaration"!==e.parent.type||t.acquire(e))return!1;let r=t.acquire(e.parent);return!(!r||ud(n,r))&&ud(a,r.upper)}))}(e,n))return{node:e,loc:tJ(e,r),messageId:us,data:{functionNameWithKind:rt(e,r)}}})},meta:{type:"suggestion",docs:{description:"Move function definitions to the highest possible scope.",recommended:!0},schema:[{type:"object",additionalProperties:!1,properties:{checkArrowFunctions:{type:"boolean"}}}],defaultOptions:[{checkArrowFunctions:!0}],messages:{[us]:"Move {{functionNameWithKind}} to the outer scope."}}},um=(e,t,r)=>"MemberExpression"===e.type&&!e.computed&&!e.optional&&"Identifier"===e.object.type&&e.object.name===t&&"Identifier"===e.property.type&&r.has(e.property.name),ug=(e,t)=>"CallExpression"===e.type&&!e.optional&&"Identifier"===e.callee.type&&e.callee.name===t,uy=new Set(["E","LN2","LN10","LOG2E","LOG10E","PI","SQRT1_2","SQRT2"]),uh=new Set(["abs","acos","acosh","asin","asinh","atan","atanh","atan2","cbrt","ceil","clz32","cos","cosh","exp","expm1","floor","fround","hypot","imul","log","log1p","log10","log2","max","min","pow","random","round","sign","sin","sinh","sqrt","tan","tanh","trunc"]),ub=new Set(["EPSILON","MAX_SAFE_INTEGER","MAX_VALUE","MIN_SAFE_INTEGER","MIN_VALUE","NaN","NEGATIVE_INFINITY","POSITIVE_INFINITY"]),uE=new Set(["parseFloat","parseInt"]),uv=new Set(["-","*","/","%","**","<<",">>","|","^","&"]),ux="error",uD="error-unknown",uA="suggestion";function uS(e,t,r){return function*(n){yield n.insertTextAfter(e.callee,`.${r}`),yield*nQ(e,t,n)}}let uC="no-console-spaces",uT=e=>e.length>1&&" "===e.charAt(0)&&" "!==e.charAt(1),uw=e=>e.length>1&&" "===e.at(-1)&&" "!==e.at(-2),u_="no-empty-file",uF="no-useless-fallback-in-spread",uk="zero-fraction",uP="dangling-dot",uI="error",uB="suggestion",uO=Symbol.for("default"),uR=Symbol("NAMESPACE_SPECIFIER_NAME"),uN=e=>{switch(e.type){case"Identifier":return Symbol.for(e.name);case"Literal":return e.value}},uL=e=>"type"===e.exportKind||"type"===e.parent.exportKind;function*uj(e,t,r){switch(e.type){case"ImportSpecifier":case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":return void(yield*function*(e,t,r,n=!1){let u=e.parent,{specifiers:a}=u;if(1===a.length&&!n)return void(yield t.remove(u));switch(e.type){case"ImportSpecifier":if(a.every(t=>e===t||e.type!==t.type)){let n=r.getTokenAfter(e,e=>"Identifier"===e.type&&"from"===e.value),u=a.some(e=>"ImportDefaultSpecifier"===e.type),i=r.getTokenBefore(e,u?tY:tH),[o]=r.getRange(i),[s]=r.getRange(n),d=r.getTokenBefore(i),l=r.getRange(d)[1]===o;yield t.replaceTextRange([o,s],l?" ":"");return}case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ImportDefaultSpecifier":{yield t.remove(e);let n=r.getTokenAfter(e);tY(n)&&(yield t.remove(n))}}}(e,t,r));case"ImportDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":yield t.remove(e)}}function uM(e,t){let r=t.getTokenBefore(e.source,e=>"Identifier"===e.type&&"from"===e.value),[n]=t.getRange(r),[,u]=t.getRange(e);return t.text.slice(n,u)}let u$={create:function(e){let{sourceCode:t}=e,{ignoreUsedVariables:r}={ignoreUsedVariables:!1,...e.options[0]},n=new Set,u=[];return{ImportDeclaration(e){e.specifiers.length>0&&n.add(e)},ExportNamedDeclaration(e){rS(e.source)&&u.push(e)},*"Program:exit"(e){for(let a of n){let n=t.getDeclaredVariables(a);if(n.some(e=>1!==e.defs.length||e.defs[0].parent!==a)||(n=n.map(e=>{let r=function(e,t){let r=e.defs[0].node,n={node:r,declaration:r.parent,variable:e,isTypeImport:"type"===r.importKind||"type"===r.parent.importKind};switch(r.type){case"ImportDefaultSpecifier":return{name:uO,text:"default",...n};case"ImportSpecifier":return{name:uN(r.imported),text:t.getText(r.imported),...n};case"ImportNamespaceSpecifier":return{name:uR,text:"*",...n}}}(e,t),n=function(e,t){let r=[];for(let{identifier:n}of e.variable.references){let u=function(e,t){let{parent:r}=e;switch(r.type){case"ExportDefaultDeclaration":return{node:r,name:uO,text:"default",isTypeExport:uL(r)};case"ExportSpecifier":return{node:r,name:uN(r.exported),text:t.getText(r.exported),isTypeExport:uL(r)};case"VariableDeclarator":if(r.init===e&&"Identifier"===r.id.type&&!r.id.typeAnnotation&&"VariableDeclaration"===r.parent.type&&"const"===r.parent.kind&&1===r.parent.declarations.length&&r.parent.declarations[0]===r&&"ExportNamedDeclaration"===r.parent.parent.type&&function(e,t){let r=t.getDeclaredVariables(e);if(1!==r.length)return!1;let[{identifiers:n,references:u}]=r;return 1===n.length&&n[0]===e.id&&1===u.length&&u[0].identifier===e.id}(r,t))return{node:r.parent.parent,name:Symbol.for(r.id.name),text:t.getText(r.id)}}}(n,t);u&&(e.name!==uR||u.name!==uO)&&r.push(u)}return r}(r,t);return{variable:e,imported:r,exports:n}}),r&&n.some(({variable:e,exports:t})=>e.references.length!==t.length)))continue;let i=r&&n.some(({variable:e})=>0===e.references.length);for(let{imported:r,exports:a}of n)for(let n of a){let a={node:n.node,messageId:uI,data:{exported:n.text}},o=function({sourceCode:e,imported:t,exported:r,exportDeclarations:n,program:u}){let a,i=t.declaration,o=i.source.value,s=t.isTypeImport||r.isTypeExport;return s&&(a=n.find(({source:e,exportKind:t})=>e.value===o&&"type"===t)),a||=n.find(({source:e,exportKind:t})=>e.value===o&&"type"!==t),function*(n){if(t.name===uR)yield n.insertTextAfter(u,`
2
- export * as ${r.text} ${uM(i,e)}`);else{let o=r.name===t.name?r.text:`${t.text} as ${r.text}`;if(s&&(!a||"type"!==a.exportKind)&&(o=`type ${o}`),a){let t=a.specifiers.at(-1);if(t)yield n.insertTextAfter(t,`, ${o}`);else{let t=e.getFirstToken(a,tH);yield n.insertTextAfter(t,o)}}else yield n.insertTextAfter(u,`
3
- export {${o}} ${uM(i,e)}`)}1===t.variable.references.length&&(yield*uj(t.node,n,e)),yield*uj(r.node,n,e)}}({sourceCode:t,imported:r,exported:n,exportDeclarations:u,program:e});i?a.suggest=[{messageId:uB,fix:o}]:a.fix=o,yield a}}}}},meta:{type:"suggestion",docs:{description:"Prefer `export…from` when re-exporting.",recommended:!0},fixable:"code",hasSuggestions:!0,schema:[{type:"object",additionalProperties:!1,properties:{ignoreUsedVariables:{type:"boolean"}}}],defaultOptions:[{ignoreUsedVariables:!1}],messages:{[uI]:"Use `export…from` to re-export `{{exported}}`.",[uB]:"Switch to `export…from`."}}},uU="prefer-native-coercion-functions",uq=new Set(["String","Number","BigInt","Boolean","Symbol"]),uz=new Set(["every","filter","find","findLast","findIndex","findLastIndex","some"]),uW=(e,t)=>e?.type==="CallExpression"&&!e.optional&&"Identifier"===e.callee.type&&uq.has(e.callee.name)&&e.arguments[0]?.type==="Identifier"&&e.arguments[0].name===t,uY=(e,t)=>{let r={[t]:!0};for(let t of e.split(".").toReversed())r={[t]:r};return r};class uV{#e={};#t;#r;constructor({object:e,objects:t=[e],filter:r,handle:n,type:u=ry.READ}){for(let e of t)Object.assign(this.#e,uY(e,u));this.#t=r,this.#r=n}*track(e){for(let t of new ry(e).iterateGlobalReferences(this.#e)){if(this.#t&&!this.#t(t))continue;let e=this.#r(t);e&&(e[Symbol.iterator]?yield*e:yield e)}}createListeners(e){return{"Program:exit":t=>this.track(e.sourceCode.getScope(t))}}}Object.assign(uV,{READ:ry.READ,CALL:ry.CALL,CONSTRUCT:ry.CONSTRUCT});let uZ="no-document-cookie",uG=new uV({object:"document.cookie",filter:({node:e})=>"AssignmentExpression"===e.parent.type&&e.parent.left===e,handle:({node:e})=>({node:e,messageId:uZ})}),uK=e=>[`webkit${e}`,`o${e.toLowerCase()}`,e.toLowerCase()],uH=new Set(["click","rightclick","dblclick","auxclick","mousedown","mouseup","mouseover","mouseout","mousemove","mouseenter","mouseleave","mousecancel","selectionchange","selectstart","wheel","keypress","keydown","keyup","blur","focus","deactivate","focusin","focusout","change","reset","select","submit","input","propertychange","dragstart","drag","dragenter","dragover","dragleave","drop","dragend","touchstart","touchmove","touchend","touchcancel","beforeunload","consolemessage","contextmenu","devicechange","devicemotion","deviceorientation","DOMContentLoaded","error","help","load","losecapture","orientationchange","readystatechange","resize","scroll","unload","canplay","canplaythrough","durationchange","emptied","ended","loadeddata","loadedmetadata","pause","play","playing","progress","ratechange","seeked","seeking","stalled","suspend","timeupdate","volumechange","waiting","sourceopen","sourceended","sourceclosed","abort","update","updatestart","updateend","hashchange","pagehide","pageshow","popstate","copy","paste","cut","beforecopy","beforecut","beforepaste","online","offline","message","connect","install","activate","fetch","foreignfetch","messageerror","statechange","updatefound","controllerchange",...uK("AnimationStart"),...uK("AnimationEnd"),...uK("AnimationIteration"),...uK("TransitionEnd"),"pointerdown","pointerup","pointercancel","pointermove","pointerover","pointerout","pointerenter","pointerleave","gotpointercapture","lostpointercapture","MSGestureChange","MSGestureEnd","MSGestureHold","MSGestureStart","MSGestureTap","MSGotPointerCapture","MSInertiaStart","MSLostPointerCapture","MSPointerCancel","MSPointerDown","MSPointerEnter","MSPointerHover","MSPointerLeave","MSPointerMove","MSPointerOut","MSPointerOver","MSPointerUp","text","textinput","textInput","compositionstart","compositionupdate","compositionend","beforeinput","exit","loadabort","loadcommit","loadredirect","loadstart","loadstop","responsive","sizechanged","unresponsive","visibilitychange","storage","DOMSubtreeModified","DOMNodeInserted","DOMNodeRemoved","DOMNodeRemovedFromDocument","DOMNodeInsertedIntoDocument","DOMAttrModified","DOMCharacterDataModified","beforeprint","afterprint","beforeinstallprompt","appinstalled","afterblur","beforeblur","cancel","close","dragexit","encrypted","fullscreenchange","invalid","toggle","search","open","show"]),uX="prefer-add-event-listener",uJ={create:e=>{let t,r,n=new Set((e.options[0]||{}).excludedPackages||["koa","sax"]),u=new WeakMap;return{onCodePathStart(e,t){r={node:t,upper:r,returnsSomething:!1}},onCodePathEnd(){u.set(r.node,r.returnsSomething),r=r.upper},CallExpression(e){rM(e)&&!t&&n.has(e.arguments[0].value)&&(t=!0)},Literal(e){"ImportDeclaration"===e.parent.type&&!t&&n.has(e.value)&&(t=!0)},ReturnStatement(e){r.returnsSomething||=!!e.argument},"AssignmentExpression:exit"(r){let n,a;if(t)return;let{left:i,right:o,operator:s}=r;if("MemberExpression"!==i.type||i.computed)return;let d=i.property.name;if(!d||!d.startsWith("on"))return;let l=d.slice(2);if(!uH.has(l))return;let c="addEventListener",f="";if(rz(a=o)||rA(a,null))c="removeEventListener";else"beforeunload"===l&&("ArrowFunctionExpression"!==o.type&&"FunctionExpression"!==o.type||"BlockStatement"!==o.body.type||u.get(o))?f="Use `event.preventDefault(); event.returnValue = 'foo'` to trigger the prompt.":"message"===l?f="Note that there is difference between `SharedWorker#onmessage` and `SharedWorker#addEventListener('message')`.":"error"===l?f="Note that there is difference between `{window,element}.onerror` and `{window,element}.addEventListener('error')`.":"="===s&&"ExpressionStatement"===r.parent.type&&r.parent.expression===r&&(n=t=>{var n,u,a,o;let s,d,l,c;return n=t,u=e.sourceCode,a=r,s=(o=i).property.name.slice(2),d=u.getText(o.object),ro(o.object,u)&&(d=`(${d})`),l=u.getText(a.right),ro(a.right,u)&&(l=`(${l})`),c=`${d}.addEventListener('${s}', ${l})`,n.replaceText(a,c)});return{node:i.property,messageId:uX,data:{replacement:c,method:d,extra:f?` ${f}`:""},fix:n}}}},meta:{type:"suggestion",docs:{description:"Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.",recommended:"unopinionated"},fixable:"code",schema:[{type:"object",additionalProperties:!1,properties:{excludedPackages:{type:"array",items:{type:"string"},uniqueItems:!0}}}],defaultOptions:[{}],messages:{[uX]:"Prefer `{{replacement}}` over `{{method}}`.{{extra}}"}}},uQ=(e,t)=>"BinaryExpression"===e.type&&"==="===e.operator&&(nc(e.left,t)||nc(e.right,t)),u0=({type:e,name:t},r)=>"Identifier"===e&&t===r;function u1({method:e,replacement:t}){let r=`prefer-${t}-over-${e}/`,n=`${r}error`,u=`${r}suggestion`;return{messages:{[n]:({findIndex:"Use `.indexOf()` instead of `.findIndex()` when looking for the index of an item.",findLastIndex:"Use `.lastIndexOf()` instead of `findLastIndex() when looking for the index of an item.`",some:`Use \`.${t}()\` instead of \`.${e}()\` when checking value existence.`})[e],[u]:`Replace \`.${e}()\` with \`.${t}()\`.`},listen:function(r){let{sourceCode:a}=r,{scopeManager:i}=a;r.on("CallExpression",r=>{let o,s,d;if(!rj(r,{method:e,argumentsLength:1,optionalCall:!1})||!("ArrowFunctionExpression"===(d=r.arguments[0]).type&&!d.async&&1===d.params.length&&uQ(d.body,d.params[0])||("ArrowFunctionExpression"===d.type||"FunctionExpression"===d.type)&&!d.async&&!d.generator&&1===d.params.length&&"BlockStatement"===d.body.type&&1===d.body.body.length&&"ReturnStatement"===d.body.body[0].type&&uQ(d.body.body[0].argument,d.params[0])))return;let[l]=r.arguments,c="BinaryExpression"===l.body.type?l.body:l.body.body[0].argument,[f]=l.params,{left:p,right:m}=c,{name:g}=f;if(u0(p,g))o=m,s=p;else{if(!u0(m,g))return;o=p,s=m}let y=i.acquire(l);if(!y||tq(y,f).references.some(({identifier:e})=>e!==s)||function(e,t){if(t.block!==e)throw Error('"functionScope" should be the scope of "functionNode".');let{type:r,id:n}=e;return"ArrowFunctionExpression"!==r&&(!!(t.thisFound||ni(t,"arguments").some(({from:e})=>e===t))||!!n&&!!(ni(t,n).length>0))}(l,y))return;let h=r.callee.property,b={node:h,messageId:n,suggest:[]},E=function*(e){let r=a.getText(o);ro(o,a)&&!ro(l,a)&&(r=`(${r})`),yield e.replaceText(h,t),yield e.replaceText(l,r)};return ri(o,a)?b.suggest.push({messageId:u,fix:E}):b.fix=E,b})}}}let u3=u1({method:"findIndex",replacement:"indexOf"}),u2=u1({method:"findLastIndex",replacement:"lastIndexOf"}),u4={create(e){u3.listen(e),u2.listen(e)},meta:{type:"suggestion",docs:{description:"Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{...u3.messages,...u2.messages}}},u5="error",u8="prefer-date",u6="prefer-date-now-over-methods",u9="prefer-date-now-over-number-data-object",u7=e=>rk(e,{name:"Date",argumentsLength:0}),ae=(e,t,r)=>({node:e,messageId:u8,*fix(t){yield t.replaceText(e,"Date.now()"),"UnaryExpression"===e.type&&(yield*n1(t,e,r))},...t}),{isIdentifierName:at}=r1,ar="prefer-dom-node-dataset",an="prefer-modern-math-apis",au=(e,t)=>"MemberExpression"===e.type&&!e.optional&&!e.computed&&"Identifier"===e.object.type&&"Math"===e.object.name&&"Identifier"===e.property.type&&e.property.name===t,aa=(e,t)=>"CallExpression"===e.type&&!e.optional&&au(e.callee,t)&&1===e.arguments.length&&"SpreadElement"!==e.arguments[0].type;function ai({constantName:e,replacementMethod:t}){let r=`Math.${t}(…)`;return function(n,u){let a,i;if("BinaryExpression"!==n.type||"*"!==n.operator||(aa(n.left,"log")&&au(n.right,e)?(a=n.left,i=`Math.log(…) * Math.${e}`):aa(n.right,"log")&&au(n.left,e)&&(a=n.right,i=`Math.${e} * Math.log(…)`),!a))return;let[o]=a.arguments;return{node:n,messageId:an,data:{replacement:r,description:i},fix:e=>e.replaceText(n,`Math.${t}(${rD(o,u.sourceCode)})`)}}}function ao({constantName:e,replacementMethod:t}){let r={messageId:an,data:{replacement:`Math.${t}(…)`,description:`Math.log(…) / Math.${e}`}};return function(n,u){if(!("BinaryExpression"===n.type&&"/"===n.operator&&aa(n.left,"log")&&au(n.right,e)))return;let[a]=n.left.arguments;return{...r,node:n,fix:e=>e.replaceText(n,`Math.${t}(${rD(a,u.sourceCode)})`)}}}let as=[ai({constantName:"LOG10E",replacementMethod:"log10"}),ai({constantName:"LOG2E",replacementMethod:"log2"}),ao({constantName:"LN10",replacementMethod:"log10"}),ao({constantName:"LN2",replacementMethod:"log2"})],ad=e=>"BinaryExpression"===e.type&&"+"===e.operator?[e.left,e.right].flatMap(e=>ad(e)):[e],al="number-literal-case",ac=(e,{hexadecimalValue:t})=>{let r=e.toLowerCase();return r.startsWith("0x")&&(r="0x"+r.slice(2)["lowercase"===t?"toLowerCase":"toUpperCase"]()),r},af={create:nC(e=>({Literal(t){let{raw:r}=t,n=e.options[0]??{};n.hexadecimalValue??="uppercase";let u=r;if(rC(t)?u=ac(r,n):rw(t)&&(u=ac(r.slice(0,-1),n)+"n"),r!==u)return{node:t,messageId:al,fix:e=>e.replaceText(t,u)}}})),meta:{type:"suggestion",docs:{description:"Enforce proper case for numeric literals.",recommended:"unopinionated"},fixable:"code",schema:[{type:"object",additionalProperties:!1,properties:{hexadecimalValue:{enum:["uppercase","lowercase"]}}}],defaultOptions:[{hexadecimalValue:"uppercase"}],messages:{[al]:"Invalid number literal casing."}}},ap="error",am="suggestion",ag={parseInt:!0,parseFloat:!0,NaN:!0,Infinity:!0,isNaN:!1,isFinite:!1},ay={create:e=>{let{checkInfinity:t,checkNaN:r}={checkInfinity:!1,checkNaN:!0,...e.options[0]},{sourceCode:n}=e;return new uV({objects:Object.keys(ag).filter(e=>(!!t||"Infinity"!==e)&&(!!r||"NaN"!==e)),handle:e=>(function({node:e,path:[t]},r){let{parent:n}=e,u=t;"Infinity"===t&&(u=(e=>{let{parent:t}=e;return"UnaryExpression"===t.type&&"-"===t.operator&&t.argument===e})(e)?"NEGATIVE_INFINITY":"POSITIVE_INFINITY");let a={node:e,messageId:ap,data:{description:t,property:u}};if("NEGATIVE_INFINITY"===u)return a.node=n,a.data.description="-Infinity",a.fix=function*(e){yield e.replaceText(n,"Number.NEGATIVE_INFINITY"),yield*n1(e,n,r)},a;let i=t=>n6(e,`Number.${u}`,t);return ag[t]?a.fix=i:a.suggest=[{messageId:am,fix:i}],a})(e,n),filter:({node:e})=>!no(e)}).createListeners(e)},meta:{type:"suggestion",docs:{description:"Prefer `Number` static properties over global ones.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,schema:[{type:"object",additionalProperties:!1,properties:{checkInfinity:{type:"boolean"},checkNaN:{type:"boolean"}}}],defaultOptions:[{checkInfinity:!1,checkNaN:!0}],messages:{[ap]:"Prefer `Number.{{property}}` over `{{description}}`.",[am]:"Replace `{{description}}` with `Number.{{property}}`."}}},ah="prefer-reflect-apply",ab=(e,t)=>(rA(e,null)||"ThisExpression"===e.type)&&("ArrayExpression"===t.type||"Identifier"===t.type&&"arguments"===t.name),aE=(e,t,r,n)=>`Reflect.apply(${e.getText(t)}, ${e.getText(r)}, ${e.getText(n)})`,av="prefer-set-size",ax=e=>rk(e,{name:"Set"});var aD={exports:{}};let{parse:aA}=rK(function(){var e,t,r,n;return d?aD.exports:(d=1,r=String.fromCodePoint||(e=String.fromCharCode,t=Math.floor,function(){var r,n,u=[],a=-1,i=arguments.length;if(!i)return"";for(var o="";++a<i;){var s=Number(arguments[a]);if(!isFinite(s)||s<0||s>1114111||t(s)!=s)throw RangeError("Invalid code point: "+s);s<=65535?u.push(s):(s-=65536,r=(s>>10)+55296,n=s%1024+56320,u.push(r,n)),(a+1==i||u.length>16384)&&(o+=e.apply(null,u),u.length=0)}return o}),n={parse:function(e,t,n){function u(t,r){return t.range[0]=r,t.raw=e.substring(r,t.range[1]),t}function a(t,r){return{type:"anchor",kind:t,range:[X-r,X],raw:e.substring(X-r,X)}}function i(t,r,n,u){return{type:"value",kind:t,codePoint:r,range:[n,u],raw:e.substring(n,u)}}function o(e,t,r,n){return n=n||0,i(e,t,X-(r.length+n),X)}function s(e){var t,r=e[0],n=r.charCodeAt(0);return H&&1===r.length&&n>=55296&&n<=56319&&(t=h().charCodeAt(0))>=56320&&t<=57343?i("symbol",(n-55296)*1024+t-56320+65536,++X-2,X):i("symbol",n,X-1,X)}function d(t,r,n,u,a){return null==u&&(n=X-1,u=X),{type:"quantifier",min:t,max:r,greedy:!0,body:null,symbol:a,range:[n,u],raw:e.substring(n,u)}}function l(t,r,n,u){return{type:"characterClass",kind:t.kind,body:t.body,negative:r,range:[n,u],raw:e.substring(n,u)}}function c(t,r,n,u){return t.codePoint>r.codePoint&&z("invalid range in character class",t.raw+"-"+r.raw,n,u),{type:"characterClassRange",min:t,max:r,range:[n,u],raw:e.substring(n,u)}}function f(e){return"alternative"===e.type?e.body:[e]}function p(e){X+=e=e||1}function m(e){g(e)||z("character",e)}function g(t){var r=t.length;if(e.substring(X,X+r)===t)return p(r),t}function y(t){if(e[X]===t)return X++,t}function h(){return e[X]}function b(t){return e[X]===t}function E(t){return e[X+1]===t}function v(t){var r=e.substring(X).match(t);return r&&(X+=r[0].length),r}function x(){var t,r=[],n=X;for(r.push(D());y("|");)r.push(D());return 1===r.length?r[0]:{type:"disjunction",body:r,range:[n,t=X],raw:e.substring(n,t)}}function D(){for(var t,r,o=[],d=X;r=function(){if(X>=e.length||b("|")||b(")"))return null;var t,r=function(){switch(h()){case"^":return p(),a("start",1);case"$":return p(),a("end",1);case"\\":if(E("b"))return p(2),a("boundary",2);if(E("B"))return p(2),a("not-boundary",2);break;case"(":return A("(?=","lookahead","(?!","negativeLookahead");default:return}}();if(r){var o=X;if(t=C()||!1){if(!H&&"group"===r.type)return t.body=f(r),u(t,r.range[0]),t;X=o,z("Expected atom")}return r}var d=function(){var t;switch(t=h()){case".":return p(),{type:"dot",range:[X-1,X],raw:"."};case"\\":if(p(),!(t=w())){if(!H&&"c"==h())return i("symbol",92,X-1,X);z("atomEscape")}return t;case"[":return N();case"(":if(n.lookbehind&&(t=A("(?<=","lookbehind","(?<!","negativeLookbehind")))return t;if(n.namedGroups&&g("(?<")){var r,u,a,o,d,l=I();m(">");var c=S("normal",l.range[0]-3);return c.name=l,c}if(!n.modifiers||"(?"!==e.substring(X,X+2)||":"==e[X+2])return A("(?:","ignore","(","normal");return u=X,p(2),a=v(/^[sim]+/),y("-")&&":"!==h()?(r=v(/^[sim]+/))||z("Invalid flags for modifiers group"):a||z("Invalid flags for modifiers group"),((o=(a=a?a[0]:"")+(r=r?r[0]:"")).length>3||function(e){for(var t=0;t<e.length;){if(-1!=e.indexOf(e[t],t+1))return!0;t++}return!1}(o))&&z("flags cannot be duplicated for modifiers group"),y(":")||z("Invalid flags for modifiers group"),(d=S("ignore",u)).modifierFlags={enabling:a,disabling:r},d;case"]":case"}":if(!H)return p(),s(t);break;case"^":case"$":case"*":case"+":case"?":case"{":case")":case"|":break;default:return p(),s(t)}}();if(d||(o=X,(t=C()||!1)&&(X=o,z("Expected atom")),!H&&y("{")?d=s("{"):z("Expected atom")),t=C()||!1){var l=d.type,c=d.behavior;return"group"===l&&("negativeLookbehind"===c||"lookbehind"===c)&&z("Invalid quantifier","",t.range[0],t.range[1]),t.body=f(d),u(t,d.range[0]),t}return d}();)o.push(r);return 1===o.length?o[0]:{type:"alternative",body:o,range:[d,t=X],raw:e.substring(d,t)}}function A(e,t,r,n){var u=null,a=X;if(g(e))u=t;else{if(!g(r))return!1;u=n}return S(u,a)}function S(t,r){var n,u=x();u||z("Expected disjunction"),m(")");var a={type:"group",behavior:t,body:f(u),range:[r,n=X],raw:e.substring(r,n)};return"normal"==t&&V&&Y++,a}function C(){var e,t,r,n,u=X;switch(h()){case"*":p(),e=d(0,void 0,void 0,void 0,"*");break;case"+":p(),e=d(1,void 0,void 0,void 0,"+");break;case"?":p(),e=d(0,1,void 0,void 0,"?");break;case"{":(n=v(/^\{(\d+)\}/))?e=d(t=parseInt(n[1],10),t,u,X):(n=v(/^\{(\d+),\}/))?e=d(t=parseInt(n[1],10),void 0,u,X):(n=v(/^\{(\d+),(\d+)\}/))&&((t=parseInt(n[1],10))>(r=parseInt(n[2],10))&&z("numbers out of order in {} quantifier","",u,X),e=d(t,r,u,X)),(t&&!Number.isSafeInteger(t)||r&&!Number.isSafeInteger(r))&&z("iterations outside JS safe integer range in quantifier","",u,X)}return e&&y("?")&&(e.greedy=!1,e.range[1]+=1),e}function T(t,r){if(r){var n,u;if("unicodeEscape"==t.kind&&(n=t.codePoint)>=55296&&n<=56319&&b("\\")&&E("u")){var a=X;X++;var i=w(!0);"unicodeEscape"==i.kind&&(u=i.codePoint)>=56320&&u<=57343?(t.kind="unicodeCodePointEscape",t.codePoint=(n-55296)*1024+u-56320+65536,t.range[1]=X,t.raw=e.substring(t.range[0],X)):X=a}}return t}n||(n={});function w(t){var r,a,i,d,l=X;switch(d=h()){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return function(t){var r,n,a=X;if(r=v(/^(?!0)\d+/)){n=r[0];var i,d,l=parseInt(r[0],10);if(l<=Y&&!t)return i=r[0],d=X-1-i.length,{type:"reference",matchIndex:parseInt(i,10),range:[d,X],raw:e.substring(d,X)};if(W.push(l),V?Z=!0:_(a,X),p(-r[0].length),r=v(/^[0-7]{1,3}/))return o("octal",parseInt(r[0],8),r[0],1);var c=X;return u(r=s(v(/^[89]/)),c-1)}return!!(r=v(/^[0-7]{1,3}/))&&(("0"!==(n=r[0])&&_(a,X),/^0{1,3}$/.test(n))?o("null",0,"0",n.length):o("octal",parseInt(n,8),n,1))}(t);case"B":if(!t)return R();z("\\B not possible inside of CharacterClass","",l);break;case"b":if(t)return p(),o("singleEscape",8,"\\b");return R();case"c":if(t){if(!H&&(i=v(/^c(\d)/)))return o("controlLetter",i[1]+16,i[1],2);else if(!H&&g("c_"))return o("controlLetter",31,"_",2)}return k();case"d":case"D":case"w":case"W":case"s":case"S":return p(),{type:"characterClassEscape",value:d,range:[X-2,X],raw:e.substring(X-2,X)};case"k":return function(){if(n.namedGroups&&v(/^k<(?=.*?>)/)){var t,r=I();return m(">"),t=r.range[0]-3,{type:"reference",name:r,range:[t,X],raw:e.substring(t,X)}}}()||R();case"p":case"P":return a=X,!!(n.unicodePropertyEscape&&H&&(r=v(/^([pP])\{([^}]+)\}/)))&&{type:"unicodePropertyEscape",negative:"P"===r[1],value:r[2],range:[a-1,X],raw:e.substring(a-1,X)}||R();case"-":if(t&&H)return p(),o("singleEscape",45,"\\-");return R();default:return k()}}function _(e,t){H&&z("Invalid decimal escape in unicode mode",null,e,t)}function F(e){var t;return(t=v(/^u([0-9a-fA-F]{4})/))?T(o("unicodeEscape",parseInt(t[1],16),t[1],2),e):e&&(t=v(/^u\{([0-9a-fA-F]+)\}/))?o("unicodeCodePointEscape",parseInt(t[1],16),t[1],4):void 0}function k(){var e,t=X;switch(h()){case"t":return p(),o("singleEscape",9,"\\t");case"n":return p(),o("singleEscape",10,"\\n");case"v":return p(),o("singleEscape",11,"\\v");case"f":return p(),o("singleEscape",12,"\\f");case"r":return p(),o("singleEscape",13,"\\r");case"c":if(e=v(/^c([a-zA-Z])/))return o("controlLetter",e[1].charCodeAt(0)%32,e[1],2);break;case"x":if(e=v(/^x([0-9a-fA-F]{2})/))return o("hexadecimalEscape",parseInt(e[1],16),e[1],2);break;case"u":if(e=F(H))return(!e||e.codePoint>1114111)&&z("Invalid escape sequence",null,t,X),e}return R()}function P(t){var n=h(),u=X;if("\\"===n){p();var a=F(!0);return a&&t(a.codePoint)||z("Invalid escape sequence",null,u,X),r(a.codePoint)}var i=n.charCodeAt(0);if(i>=55296&&i<=56319){var o=(n+=e[X+1]).charCodeAt(1);o>=56320&&o<=57343&&(i=(i-55296)*1024+o-56320+65536)}if(t(i))return p(),i>65535&&p(),n}function I(){var t,r=X,n=P(B);for(n||z("Invalid identifier");t=P(O);)n+=t;return{type:"identifier",value:n,range:[r,X],raw:e.substring(r,X)}}function B(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=128&&/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDD4A-\uDD65\uDD6F-\uDD85\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC4\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDDD0-\uDDED\uDDF0\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF]/.test(r(e))}function O(e){return B(e)||e>=48&&e<=57||e>=128&&/[\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD803[\uDD24-\uDD27\uDD30-\uDD39\uDD40-\uDD49\uDD69-\uDD6D\uDEAB\uDEAC\uDEFC-\uDEFF\uDF46-\uDF50\uDF82-\uDF85]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC66-\uDC70\uDC73\uDC74\uDC7F-\uDC82\uDCB0-\uDCBA\uDCC2\uDCF0-\uDCF9\uDD00-\uDD02\uDD27-\uDD34\uDD36-\uDD3F\uDD45\uDD46\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDDC9-\uDDCC\uDDCE-\uDDD9\uDE2C-\uDE37\uDE3E\uDE41\uDEDF-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF3B\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74\uDFB8-\uDFC0\uDFC2\uDFC5\uDFC7-\uDFCA\uDFCC-\uDFD0\uDFD2\uDFE1\uDFE2]|\uD805[\uDC35-\uDC46\uDC50-\uDC59\uDC5E\uDCB0-\uDCC3\uDCD0-\uDCD9\uDDAF-\uDDB5\uDDB8-\uDDC0\uDDDC\uDDDD\uDE30-\uDE40\uDE50-\uDE59\uDEAB-\uDEB7\uDEC0-\uDEC9\uDED0-\uDEE3\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDC2C-\uDC3A\uDCE0-\uDCE9\uDD30-\uDD35\uDD37\uDD38\uDD3B-\uDD3E\uDD40\uDD42\uDD43\uDD50-\uDD59\uDDD1-\uDDD7\uDDDA-\uDDE0\uDDE4\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE3E\uDE47\uDE51-\uDE5B\uDE8A-\uDE99\uDFF0-\uDFF9]|\uD807[\uDC2F-\uDC36\uDC38-\uDC3F\uDC50-\uDC59\uDC92-\uDCA7\uDCA9-\uDCB6\uDD31-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD45\uDD47\uDD50-\uDD59\uDD8A-\uDD8E\uDD90\uDD91\uDD93-\uDD97\uDDA0-\uDDA9\uDEF3-\uDEF6\uDF00\uDF01\uDF03\uDF34-\uDF3A\uDF3E-\uDF42\uDF50-\uDF5A]|\uD80D[\uDC40\uDC47-\uDC55]|\uD818[\uDD1E-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDEF0-\uDEF4\uDF30-\uDF36\uDF50-\uDF59]|\uD81B[\uDD70-\uDD79\uDF4F\uDF51-\uDF87\uDF8F-\uDF92\uDFE4\uDFF0\uDFF1]|\uD82F[\uDC9D\uDC9E]|\uD833[\uDCF0-\uDCF9\uDF00-\uDF2D\uDF30-\uDF46]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDC8F\uDD30-\uDD36\uDD40-\uDD49\uDEAE\uDEEC-\uDEF9]|\uD839[\uDCEC-\uDCF9\uDDEE\uDDEF\uDDF1-\uDDFA]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A\uDD50-\uDD59]|\uD83E[\uDFF0-\uDFF9]|\uDB40[\uDD00-\uDDEF]/.test(r(e))}function R(){var t,r=h();return H&&/[\^$.*+?()\\[\]{}|/]/.test(r)||!H&&"c"!==r?"k"===r&&n.lookbehind?null:o("identifier",(t=e.substring(X,X+=1)).charCodeAt(0),t,1):null}function N(){var e,t=X;return(e=g("[^"))?(e=L(),m("]"),l(e,!0,t,X)):y("[")?(e=L(),m("]"),l(e,!1,t,X)):null}function L(){var e,t;return b("]")?{kind:"union",body:[]}:K?function(){var e,t=[],r=M(!0);for(t.push(r),e="classRange"===r.type?"union":b("&")?"intersection":b("-")?"subtraction":"union";!b("]");)"intersection"===e?(m("&"),m("&"),b("&")&&z("&& cannot be followed by &. Wrap it in brackets: &&[&].")):"subtraction"===e&&(m("-"),m("-")),t.push(r=M("union"===e));return{kind:e,body:t}}():((t=j())||z("classAtom"),(e=b("]")?[t]:function e(t){if(b("-")&&!E("]")){r=t.range[0],p(),i=s("-"),(a=j())||z("classAtom"),n=X;var r,n,u,a,i,o,d=L();return(d||z("classContents"),"codePoint"in t&&"codePoint"in a?u=[c(t,a,r,n)]:H?z("invalid character class"):u=[t,i,a],"empty"===d.type)?u:u.concat(d.body)}return(o=j())||z("classAtom"),(u=b("]")?o:e(o))||z("nonEmptyClassRangesNoDash"),[t].concat(u)}(t))||z("nonEmptyClassRanges"),{kind:"union",body:e})}function j(){return y("-")?s("-"):function(){var e;switch(e=h()){case"\\":if(p(),!(e=w(!0))){if(!H&&"c"==h())return s("\\");z("classEscape")}return T(e,H);case"]":case"-":break;default:return p(),s(e)}}()}function M(t){var r,n,u=X;if(y("\\"))if(g("q{"))return function(){var t,r=X-3,n=[];do n.push(function(){for(var t,r,n=[],u=X;r=$();)n.push(r);return{type:"classString",characters:n,range:[u,t=X],raw:e.substring(u,t)}}());while(y("|"));return m("}"),{type:"classStrings",strings:n,range:[r,t=X],raw:e.substring(r,t)}}();else if(n=w(!0))r=n;else{if(n=q())return n;z("Invalid escape","\\"+h(),u)}else if(n=U())r=n;else{if(n=N())return n;z("Invalid character",h())}if(t&&b("-")&&!E("-")){if(p(),n=$())return c(r,n,u,X);z("Invalid range end",h())}return r}function $(){if(y("\\")){var e,t=X;if(e=q())return e;z("Invalid escape","\\"+h(),t)}return U()}function U(){var e;if(v(/^(?:&&|!!|##|\$\$|%%|\*\*|\+\+|,,|\.\.|::|;;|<<|==|>>|\?\?|@@|\^\^|``|~~)/)&&z("Invalid set operation in character class"),e=v(/^[^()[\]{}/\-\\|]/))return s(e)}function q(){var e;if(y("b"))return o("singleEscape",8,"\\b");if(y("B"))z("\\B not possible inside of ClassContents","",X-2);else if(e=v(/^[&\-!#%,:;<=>@`~]/))return o("identifier",e[0].codePointAt(0),e[0]);else if(e=k())return e;else return null}function z(t,r,n,u){n=null==n?X:n,u=null==u?n:u;var a=Math.max(0,n-10),i=Math.min(u+10,e.length),o=" "+e.substring(a,i),s=" "+Array(n-a+1).join(" ")+"^";throw SyntaxError(t+" at position "+n+(r?": "+r:"")+"\n"+o+"\n"+s)}var W=[],Y=0,V=!0,Z=!1,G=-1!==(t||"").indexOf("u"),K=-1!==(t||"").indexOf("v"),H=G||K,X=0;if(K&&!n.unicodeSet)throw Error('The "v" flag is only supported when the .unicodeSet option is enabled.');if(G&&K)throw Error('The "u" and "v" flags are mutually exclusive.');""===(e=String(e))&&(e="(?:)");var J=x();return(J.range[1]!==e.length&&z("Could not parse entire input - got stuck","",J.range[1]),Z=Z||W.some(function(e){return e<=Y}))?(X=0,V=!1,x()):J}},aD.exports?aD.exports=n:window.regjsparser=n,aD.exports)}()),aS="method",aC="pattern",aT=e=>rC(e)?e.value:"UnaryExpression"===e.type&&"-"===e.operator?-aT(e.argument):void 0,aw=e=>e?.type==="MemberExpression"&&!1===e.computed&&"Identifier"===e.property.type&&"length"===e.property.name,a_="prefer-string-trim-start-end",aF="no-unreadable-iife",ak="throw-new-error",aP=/^(?:[A-Z][\da-z]*)*Error$/;var aI=rK(function(){if(g)return m;g=1;let e=function(){if(c)return l;c=1;var e=/[|\\{}()[\]^$+*?.]/g;return l=function(t){if("string"!=typeof t)throw TypeError("Expected a string");return t.replace(e,"\\$&")}}(),t=p?f:(p=1,f=new Map([["[0-9]",{value:"\\d"}],["[^0-9]",{value:"\\D"}],["[a-zA-Z0-9_]",{value:"\\w"}],["[a-zA-Z_0-9]",{value:"\\w"}],["[a-z0-9A-Z_]",{value:"\\w"}],["[a-z0-9_A-Z]",{value:"\\w"}],["[a-z_A-Z0-9]",{value:"\\w"}],["[a-z_0-9A-Z]",{value:"\\w"}],["[A-Za-z0-9_]",{value:"\\w"}],["[A-Za-z_0-9]",{value:"\\w"}],["[A-Z0-9a-z_]",{value:"\\w"}],["[A-Z0-9_a-z]",{value:"\\w"}],["[A-Z_a-z0-9]",{value:"\\w"}],["[A-Z_0-9a-z]",{value:"\\w"}],["[0-9a-zA-Z_]",{value:"\\w"}],["[0-9a-z_A-Z]",{value:"\\w"}],["[0-9A-Za-z_]",{value:"\\w"}],["[0-9A-Z_a-z]",{value:"\\w"}],["[0-9_a-zA-Z]",{value:"\\w"}],["[0-9_A-Za-z]",{value:"\\w"}],["[_a-zA-Z0-9]",{value:"\\w"}],["[_a-z0-9A-Z]",{value:"\\w"}],["[_A-Za-z0-9]",{value:"\\w"}],["[_A-Z0-9a-z]",{value:"\\w"}],["[_0-9a-zA-Z]",{value:"\\w"}],["[_0-9A-Za-z]",{value:"\\w"}],["[a-zA-Z\\d_]",{value:"\\w"}],["[a-zA-Z_\\d]",{value:"\\w"}],["[a-z\\dA-Z_]",{value:"\\w"}],["[a-z\\d_A-Z]",{value:"\\w"}],["[a-z_A-Z\\d]",{value:"\\w"}],["[a-z_\\dA-Z]",{value:"\\w"}],["[A-Za-z\\d_]",{value:"\\w"}],["[A-Za-z_\\d]",{value:"\\w"}],["[A-Z\\da-z_]",{value:"\\w"}],["[A-Z\\d_a-z]",{value:"\\w"}],["[A-Z_a-z\\d]",{value:"\\w"}],["[A-Z_\\da-z]",{value:"\\w"}],["[\\da-zA-Z_]",{value:"\\w"}],["[\\da-z_A-Z]",{value:"\\w"}],["[\\dA-Za-z_]",{value:"\\w"}],["[\\dA-Z_a-z]",{value:"\\w"}],["[\\d_a-zA-Z]",{value:"\\w"}],["[\\d_A-Za-z]",{value:"\\w"}],["[_a-zA-Z\\d]",{value:"\\w"}],["[_a-z\\dA-Z]",{value:"\\w"}],["[_A-Za-z\\d]",{value:"\\w"}],["[_A-Z\\da-z]",{value:"\\w"}],["[_\\da-zA-Z]",{value:"\\w"}],["[_\\dA-Za-z]",{value:"\\w"}],["[^a-zA-Z0-9_]",{value:"\\W"}],["[^a-zA-Z_0-9]",{value:"\\W"}],["[^a-z0-9A-Z_]",{value:"\\W"}],["[^a-z0-9_A-Z]",{value:"\\W"}],["[^a-z_A-Z0-9]",{value:"\\W"}],["[^a-z_0-9A-Z]",{value:"\\W"}],["[^A-Za-z0-9_]",{value:"\\W"}],["[^A-Za-z_0-9]",{value:"\\W"}],["[^A-Z0-9a-z_]",{value:"\\W"}],["[^A-Z0-9_a-z]",{value:"\\W"}],["[^A-Z_a-z0-9]",{value:"\\W"}],["[^A-Z_0-9a-z]",{value:"\\W"}],["[^0-9a-zA-Z_]",{value:"\\W"}],["[^0-9a-z_A-Z]",{value:"\\W"}],["[^0-9A-Za-z_]",{value:"\\W"}],["[^0-9A-Z_a-z]",{value:"\\W"}],["[^0-9_a-zA-Z]",{value:"\\W"}],["[^0-9_A-Za-z]",{value:"\\W"}],["[^_a-zA-Z0-9]",{value:"\\W"}],["[^_a-z0-9A-Z]",{value:"\\W"}],["[^_A-Za-z0-9]",{value:"\\W"}],["[^_A-Z0-9a-z]",{value:"\\W"}],["[^_0-9a-zA-Z]",{value:"\\W"}],["[^_0-9A-Za-z]",{value:"\\W"}],["[^a-zA-Z\\d_]",{value:"\\W"}],["[^a-zA-Z_\\d]",{value:"\\W"}],["[^a-z\\dA-Z_]",{value:"\\W"}],["[^a-z\\d_A-Z]",{value:"\\W"}],["[^a-z_A-Z\\d]",{value:"\\W"}],["[^a-z_\\dA-Z]",{value:"\\W"}],["[^A-Za-z\\d_]",{value:"\\W"}],["[^A-Za-z_\\d]",{value:"\\W"}],["[^A-Z\\da-z_]",{value:"\\W"}],["[^A-Z\\d_a-z]",{value:"\\W"}],["[^A-Z_a-z\\d]",{value:"\\W"}],["[^A-Z_\\da-z]",{value:"\\W"}],["[^\\da-zA-Z_]",{value:"\\W"}],["[^\\da-z_A-Z]",{value:"\\W"}],["[^\\dA-Za-z_]",{value:"\\W"}],["[^\\dA-Z_a-z]",{value:"\\W"}],["[^\\d_a-zA-Z]",{value:"\\W"}],["[^\\d_A-Za-z]",{value:"\\W"}],["[^_a-zA-Z\\d]",{value:"\\W"}],["[^_a-z\\dA-Z]",{value:"\\W"}],["[^_A-Za-z\\d]",{value:"\\W"}],["[^_A-Z\\da-z]",{value:"\\W"}],["[^_\\da-zA-Z]",{value:"\\W"}],["[^_\\dA-Za-z]",{value:"\\W"}],["[a-z0-9_]",{value:"\\w",flags:"i"}],["[a-z_0-9]",{value:"\\w",flags:"i"}],["[0-9a-z_]",{value:"\\w",flags:"i"}],["[0-9_a-z]",{value:"\\w",flags:"i"}],["[_a-z0-9]",{value:"\\w",flags:"i"}],["[_0-9a-z]",{value:"\\w",flags:"i"}],["[^a-z0-9_]",{value:"\\W",flags:"i"}],["[a-z\\d_]",{value:"\\w",flags:"i"}],["[a-z_\\d]",{value:"\\w",flags:"i"}],["[\\da-z_]",{value:"\\w",flags:"i"}],["[\\d_a-z]",{value:"\\w",flags:"i"}],["[_a-z\\d]",{value:"\\w",flags:"i"}],["[_\\da-z]",{value:"\\w",flags:"i"}],["[^a-z0-9_]",{value:"\\W",flags:"i"}],["[^a-z_0-9]",{value:"\\W",flags:"i"}],["[^0-9a-z_]",{value:"\\W",flags:"i"}],["[^0-9_a-z]",{value:"\\W",flags:"i"}],["[^_a-z0-9]",{value:"\\W",flags:"i"}],["[^_0-9a-z]",{value:"\\W",flags:"i"}],["[^a-z\\d_]",{value:"\\W",flags:"i"}],["[^a-z_\\d]",{value:"\\W",flags:"i"}],["[^\\da-z_]",{value:"\\W",flags:"i"}],["[^\\d_a-z]",{value:"\\W",flags:"i"}],["[^_a-z\\d]",{value:"\\W",flags:"i"}],["[^_\\da-z]",{value:"\\W",flags:"i"}]])),r=(e,t)=>!t||t.split("").every(t=>e.includes(t));return m=(n,u)=>{if(u=u||"","string"!=typeof n)throw TypeError(`Expected regexp to be of type \`string\`, got \`${typeof n}\``);if("string"!=typeof u)throw TypeError(`Expected flags to be of type \`string\`, got \`${typeof u}\``);for(let a of t){let t=a[0],i=a[1];r(u,i.flags)&&(n=n.replace(RegExp(e(t),"g"),i.value))}return n}}());function aB(){if(C)return S;function e(e){return e?t[e.type](e):""}C=1;var t={RegExp:function(t){return"/"+e(t.body)+"/"+t.flags},Alternative:function(t){return(t.expressions||[]).map(e).join("")},Disjunction:function(t){return e(t.left)+"|"+e(t.right)},Group:function(t){var r=e(t.expression);return t.capturing?t.name?"(?<"+(t.nameRaw||t.name)+">"+r+")":"("+r+")":"(?:"+r+")"},Backreference:function(e){switch(e.kind){case"number":return"\\"+e.reference;case"name":return"\\k<"+(e.referenceRaw||e.reference)+">";default:throw TypeError("Unknown Backreference kind: "+e.kind)}},Assertion:function(t){switch(t.kind){case"^":case"$":case"\\b":case"\\B":return t.kind;case"Lookahead":var r=e(t.assertion);if(t.negative)return"(?!"+r+")";return"(?="+r+")";case"Lookbehind":var n=e(t.assertion);if(t.negative)return"(?<!"+n+")";return"(?<="+n+")";default:throw TypeError("Unknown Assertion kind: "+t.kind)}},CharacterClass:function(t){var r=t.expressions.map(e).join("");return t.negative?"[^"+r+"]":"["+r+"]"},ClassRange:function(t){return e(t.from)+"-"+e(t.to)},Repetition:function(t){return""+e(t.expression)+e(t.quantifier)},Quantifier:function(e){var t=void 0,r=e.greedy?"":"?";switch(e.kind){case"+":case"?":case"*":t=e.kind;break;case"Range":t=e.from===e.to?"{"+e.from+"}":e.to?"{"+e.from+","+e.to+"}":"{"+e.from+",}";break;default:throw TypeError("Unknown Quantifier kind: "+e.kind)}return""+t+r},Char:function(e){var t=e.value;switch(e.kind){case"simple":if(e.escaped)return"\\"+t;return t;case"hex":case"unicode":case"oct":case"decimal":case"control":case"meta":return t;default:throw TypeError("Unknown Char kind: "+e.kind)}},UnicodeProperty:function(e){var t=e.negative?"P":"p";return"\\"+t+"{"+(e.shorthand||e.binary?"":e.name+"=")+e.value+"}"}};return S={generate:e}}function aO(){if(P)return k;P=1;var e=function(){if(F)return _;F=1;var e=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var r=[],n=!0,u=!1,a=void 0;try{for(var i,o=e[Symbol.iterator]();!(n=(i=o.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){u=!0,a=e}finally{try{!n&&o.return&&o.return()}finally{if(u)throw a}}return r}(e,t);throw TypeError("Invalid attempt to destructure non-iterable instance")};function t(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}var r=void 0,n={},u=void 0,a=void 0;function i(e,t){return n.options.captureLocations?e&&t?{startOffset:e.startOffset,endOffset:t.endOffset,startLine:e.startLine,endLine:t.endLine,startColumn:e.startColumn,endColumn:t.endColumn}:e||t:null}var o=[[-1,1,function(e,t){a=i(t,t),u=e}],[0,4,function(e,t,r,n,o,s,d,l){a=i(o,l),u=B({type:"RegExp",body:t,flags:function(e){var t=new Set,r=!0,n=!1,u=void 0;try{for(var a,i=e[Symbol.iterator]();!(r=(a=i.next()).done);r=!0){var o=a.value;if(t.has(o)||!"gimsuxy".includes(o))throw SyntaxError("Invalid flags: "+e);t.add(o)}}catch(e){n=!0,u=e}finally{try{!r&&i.return&&i.return()}finally{if(n)throw u}}return e.split("").sort().join("")}(n)},O(o,l||d))}],[1,1,function(e,t){a=i(t,t),u=e}],[1,0,function(){a=null,u=""}],[2,1,function(e,t){a=i(t,t),u=e}],[2,2,function(e,t,r,n){a=i(r,n),u=e+t}],[3,1,function(e,t){a=i(t,t),u=e}],[4,1,function(e,t){a=i(t,t),u=e}],[4,3,function(e,t,r,n,o,s){a=i(n,s);var d=null;o&&(d=O(n||o,s||o)),u=B({type:"Disjunction",left:e,right:r},d)}],[5,1,function(e,t){if(a=i(t,t),0===e.length){u=null;return}u=1===e.length?B(e[0],a):B({type:"Alternative",expressions:e},a)}],[6,0,function(){a=null,u=[]}],[6,2,function(e,t,r,n){a=i(r,n),u=e.concat(t)}],[7,1,function(e,t){a=i(t,t),u=B(Object.assign({type:"Assertion"},e),a)}],[7,2,function(e,t,r,n){a=i(r,n),u=e,t&&(u=B({type:"Repetition",expression:e,quantifier:t},a))}],[8,1,function(e,t){a=i(t,t),u={kind:"^"}}],[8,1,function(e,t){a=i(t,t),u={kind:"$"}}],[8,1,function(e,t){a=i(t,t),u={kind:"\\b"}}],[8,1,function(e,t){a=i(t,t),u={kind:"\\B"}}],[8,3,function(e,t,r,n,o,s){a=i(n,s),u={kind:"Lookahead",assertion:t}}],[8,3,function(e,t,r,n,o,s){a=i(n,s),u={kind:"Lookahead",negative:!0,assertion:t}}],[8,3,function(e,t,r,n,o,s){a=i(n,s),u={kind:"Lookbehind",assertion:t}}],[8,3,function(e,t,r,n,o,s){a=i(n,s),u={kind:"Lookbehind",negative:!0,assertion:t}}],[9,1,function(e,t){a=i(t,t),u=e}],[9,1,function(e,t){a=i(t,t),u=e}],[9,1,function(e,t){a=i(t,t),u=e}],[10,1,function(e,t){u=D(e,"simple",a=i(t,t))}],[10,1,function(e,t){a=i(t,t),(u=D(e.slice(1),"simple",a)).escaped=!0}],[10,1,function(e,t){(u=D(e,"unicode",a=i(t,t))).isSurrogatePair=!0}],[10,1,function(e,t){u=D(e,"unicode",a=i(t,t))}],[10,1,function(e,t){u=function(e,t){var r="P"===e[1],n=e.indexOf("="),u=e.slice(3,-1!==n?n:-1),a=void 0,i=-1===n&&x.isGeneralCategoryValue(u),o=-1===n&&x.isBinaryPropertyName(u);if(i)a=u,u="General_Category";else if(o)a=u;else{if(!x.isValidName(u))throw SyntaxError("Invalid unicode property name: "+u+".");if(a=e.slice(n+1,-1),!x.isValidValue(u,a))throw SyntaxError("Invalid "+u+" unicode property value: "+a+".")}return B({type:"UnicodeProperty",name:u,value:a,negative:r,shorthand:i,binary:o,canonicalName:x.getCanonicalName(u)||u,canonicalValue:x.getCanonicalValue(a)||a},t)}(e,a=i(t,t))}],[10,1,function(e,t){u=D(e,"control",a=i(t,t))}],[10,1,function(e,t){u=D(e,"hex",a=i(t,t))}],[10,1,function(e,t){u=D(e,"oct",a=i(t,t))}],[10,1,function(e,t){var r,n,o;r=e,n=a=i(t,t),u=(o=Number(r.slice(1)))>0&&o<=y?B({type:"Backreference",kind:"number",number:o,reference:o},n):D(r,"decimal",n)}],[10,1,function(e,t){u=D(e,"meta",a=i(t,t))}],[10,1,function(e,t){u=D(e,"meta",a=i(t,t))}],[10,1,function(e,t){a=i(t,t),u=function(e,t){var r=e.slice(3,-1),n=I(r);if(h.hasOwnProperty(n))return B({type:"Backreference",kind:"name",number:h[n],reference:n,referenceRaw:r},t);var u=null,a=null,i=null,o=null;t&&(u=t.startOffset,a=t.startLine,i=t.endLine,o=t.startColumn);var s=/^[\w$<>]/,d=void 0,l=[D(e.slice(1,2),"simple",u?{startLine:a,endLine:i,startColumn:o,startOffset:u,endOffset:u+=2,endColumn:o+=2}:null)];for(l[0].escaped=!0,e=e.slice(2);e.length>0;){var c=null;(c=e.match(A))||(c=e.match(S))?(u&&(d={startLine:a,endLine:i,startColumn:o,startOffset:u,endOffset:u+=c[0].length,endColumn:o+=c[0].length}),l.push(D(c[0],"unicode",d)),e=e.slice(c[0].length)):(c=e.match(s))&&(u&&(d={startLine:a,endLine:i,startColumn:o,startOffset:u,endOffset:++u,endColumn:++o}),l.push(D(c[0],"simple",d)),e=e.slice(1))}return l}(e,t)}],[11,1,function(e,t){a=i(t,t),u=e}],[11,0],[12,1,function(e,t){a=i(t,t),u=e}],[12,2,function(e,t,r,n){a=i(r,n),e.greedy=!1,u=e}],[13,1,function(e,t){u=B({type:"Quantifier",kind:e,greedy:!0},a=i(t,t))}],[13,1,function(e,t){u=B({type:"Quantifier",kind:e,greedy:!0},a=i(t,t))}],[13,1,function(e,t){u=B({type:"Quantifier",kind:e,greedy:!0},a=i(t,t))}],[13,1,function(e,t){a=i(t,t);var r=E(e);u=B({type:"Quantifier",kind:"Range",from:r[0],to:r[0],greedy:!0},a)}],[13,1,function(e,t){a=i(t,t),u=B({type:"Quantifier",kind:"Range",from:E(e)[0],greedy:!0},a)}],[13,1,function(e,t){a=i(t,t);var r=E(e);u=B({type:"Quantifier",kind:"Range",from:r[0],to:r[1],greedy:!0},a)}],[14,1,function(e,t){a=i(t,t),u=e}],[14,1,function(e,t){a=i(t,t),u=e}],[15,3,function(e,t,r,o,s,d){a=i(o,d);var l=String(e),c=I(l);if(!n.options.allowGroupNameDuplicates&&h.hasOwnProperty(c))throw SyntaxError('Duplicate of the named group "'+c+'".');h[c]=e.groupNumber,u=B({type:"Group",capturing:!0,name:c,nameRaw:l,number:e.groupNumber,expression:t},a)}],[15,3,function(e,t,r,n,o,s){a=i(n,s),u=B({type:"Group",capturing:!0,number:e.groupNumber,expression:t},a)}],[16,3,function(e,t,r,n,o,s){u=B({type:"Group",capturing:!1,expression:t},a=i(n,s))}],[17,3,function(e,t,r,n,o,s){u=B({type:"CharacterClass",negative:!0,expressions:t},a=i(n,s))}],[17,3,function(e,t,r,n,o,s){u=B({type:"CharacterClass",expressions:t},a=i(n,s))}],[18,0,function(){a=null,u=[]}],[18,1,function(e,t){a=i(t,t),u=e}],[19,1,function(e,t){a=i(t,t),u=[e]}],[19,2,function(e,t,r,n){a=i(r,n),u=[e].concat(t)}],[19,4,function(e,t,r,n,o,s,d,l){a=i(o,l),v(e,r),u=[B({type:"ClassRange",from:e,to:r},O(o,d))],n&&(u=u.concat(n))}],[20,1,function(e,t){a=i(t,t),u=e}],[20,2,function(e,t,r,n){a=i(r,n),u=[e].concat(t)}],[20,4,function(e,t,r,n,o,s,d,l){a=i(o,l),v(e,r),u=[B({type:"ClassRange",from:e,to:r},O(o,d))],n&&(u=u.concat(n))}],[21,1,function(e,t){u=D(e,"simple",a=i(t,t))}],[21,1,function(e,t){a=i(t,t),u=e}],[22,1,function(e,t){a=i(t,t),u=e}],[22,1,function(e,t){u=D(e,"meta",a=i(t,t))}]],s={SLASH:"23",CHAR:"24",BAR:"25",BOS:"26",EOS:"27",ESC_b:"28",ESC_B:"29",POS_LA_ASSERT:"30",R_PAREN:"31",NEG_LA_ASSERT:"32",POS_LB_ASSERT:"33",NEG_LB_ASSERT:"34",ESC_CHAR:"35",U_CODE_SURROGATE:"36",U_CODE:"37",U_PROP_VALUE_EXP:"38",CTRL_CH:"39",HEX_CODE:"40",OCT_CODE:"41",DEC_CODE:"42",META_CHAR:"43",ANY:"44",NAMED_GROUP_REF:"45",Q_MARK:"46",STAR:"47",PLUS:"48",RANGE_EXACT:"49",RANGE_OPEN:"50",RANGE_CLOSED:"51",NAMED_CAPTURE_GROUP:"52",L_PAREN:"53",NON_CAPTURE_GROUP:"54",NEG_CLASS:"55",R_BRACKET:"56",L_BRACKET:"57",DASH:"58",$:"59"},d=[{0:1,23:"s2"},{59:"acc"},{3:3,4:4,5:5,6:6,23:"r10",24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{23:"s7"},{23:"r6",25:"s12"},{23:"r7",25:"r7",31:"r7"},{7:14,8:15,9:16,10:25,14:27,15:42,16:43,17:26,23:"r9",24:"s28",25:"r9",26:"s17",27:"s18",28:"s19",29:"s20",30:"s21",31:"r9",32:"s22",33:"s23",34:"s24",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",52:"s44",53:"s45",54:"s46",55:"s40",57:"s41"},{1:8,2:9,24:"s10",59:"r3"},{59:"r1"},{24:"s11",59:"r2"},{24:"r4",59:"r4"},{24:"r5",59:"r5"},{5:13,6:6,23:"r10",24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",31:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{23:"r8",25:"r8",31:"r8"},{23:"r11",24:"r11",25:"r11",26:"r11",27:"r11",28:"r11",29:"r11",30:"r11",31:"r11",32:"r11",33:"r11",34:"r11",35:"r11",36:"r11",37:"r11",38:"r11",39:"r11",40:"r11",41:"r11",42:"r11",43:"r11",44:"r11",45:"r11",52:"r11",53:"r11",54:"r11",55:"r11",57:"r11"},{23:"r12",24:"r12",25:"r12",26:"r12",27:"r12",28:"r12",29:"r12",30:"r12",31:"r12",32:"r12",33:"r12",34:"r12",35:"r12",36:"r12",37:"r12",38:"r12",39:"r12",40:"r12",41:"r12",42:"r12",43:"r12",44:"r12",45:"r12",52:"r12",53:"r12",54:"r12",55:"r12",57:"r12"},{11:47,12:48,13:49,23:"r38",24:"r38",25:"r38",26:"r38",27:"r38",28:"r38",29:"r38",30:"r38",31:"r38",32:"r38",33:"r38",34:"r38",35:"r38",36:"r38",37:"r38",38:"r38",39:"r38",40:"r38",41:"r38",42:"r38",43:"r38",44:"r38",45:"r38",46:"s52",47:"s50",48:"s51",49:"s53",50:"s54",51:"s55",52:"r38",53:"r38",54:"r38",55:"r38",57:"r38"},{23:"r14",24:"r14",25:"r14",26:"r14",27:"r14",28:"r14",29:"r14",30:"r14",31:"r14",32:"r14",33:"r14",34:"r14",35:"r14",36:"r14",37:"r14",38:"r14",39:"r14",40:"r14",41:"r14",42:"r14",43:"r14",44:"r14",45:"r14",52:"r14",53:"r14",54:"r14",55:"r14",57:"r14"},{23:"r15",24:"r15",25:"r15",26:"r15",27:"r15",28:"r15",29:"r15",30:"r15",31:"r15",32:"r15",33:"r15",34:"r15",35:"r15",36:"r15",37:"r15",38:"r15",39:"r15",40:"r15",41:"r15",42:"r15",43:"r15",44:"r15",45:"r15",52:"r15",53:"r15",54:"r15",55:"r15",57:"r15"},{23:"r16",24:"r16",25:"r16",26:"r16",27:"r16",28:"r16",29:"r16",30:"r16",31:"r16",32:"r16",33:"r16",34:"r16",35:"r16",36:"r16",37:"r16",38:"r16",39:"r16",40:"r16",41:"r16",42:"r16",43:"r16",44:"r16",45:"r16",52:"r16",53:"r16",54:"r16",55:"r16",57:"r16"},{23:"r17",24:"r17",25:"r17",26:"r17",27:"r17",28:"r17",29:"r17",30:"r17",31:"r17",32:"r17",33:"r17",34:"r17",35:"r17",36:"r17",37:"r17",38:"r17",39:"r17",40:"r17",41:"r17",42:"r17",43:"r17",44:"r17",45:"r17",52:"r17",53:"r17",54:"r17",55:"r17",57:"r17"},{4:57,5:5,6:6,24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",31:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{4:59,5:5,6:6,24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",31:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{4:61,5:5,6:6,24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",31:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{4:63,5:5,6:6,24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",31:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{23:"r22",24:"r22",25:"r22",26:"r22",27:"r22",28:"r22",29:"r22",30:"r22",31:"r22",32:"r22",33:"r22",34:"r22",35:"r22",36:"r22",37:"r22",38:"r22",39:"r22",40:"r22",41:"r22",42:"r22",43:"r22",44:"r22",45:"r22",46:"r22",47:"r22",48:"r22",49:"r22",50:"r22",51:"r22",52:"r22",53:"r22",54:"r22",55:"r22",57:"r22"},{23:"r23",24:"r23",25:"r23",26:"r23",27:"r23",28:"r23",29:"r23",30:"r23",31:"r23",32:"r23",33:"r23",34:"r23",35:"r23",36:"r23",37:"r23",38:"r23",39:"r23",40:"r23",41:"r23",42:"r23",43:"r23",44:"r23",45:"r23",46:"r23",47:"r23",48:"r23",49:"r23",50:"r23",51:"r23",52:"r23",53:"r23",54:"r23",55:"r23",57:"r23"},{23:"r24",24:"r24",25:"r24",26:"r24",27:"r24",28:"r24",29:"r24",30:"r24",31:"r24",32:"r24",33:"r24",34:"r24",35:"r24",36:"r24",37:"r24",38:"r24",39:"r24",40:"r24",41:"r24",42:"r24",43:"r24",44:"r24",45:"r24",46:"r24",47:"r24",48:"r24",49:"r24",50:"r24",51:"r24",52:"r24",53:"r24",54:"r24",55:"r24",57:"r24"},{23:"r25",24:"r25",25:"r25",26:"r25",27:"r25",28:"r25",29:"r25",30:"r25",31:"r25",32:"r25",33:"r25",34:"r25",35:"r25",36:"r25",37:"r25",38:"r25",39:"r25",40:"r25",41:"r25",42:"r25",43:"r25",44:"r25",45:"r25",46:"r25",47:"r25",48:"r25",49:"r25",50:"r25",51:"r25",52:"r25",53:"r25",54:"r25",55:"r25",56:"r25",57:"r25",58:"r25"},{23:"r26",24:"r26",25:"r26",26:"r26",27:"r26",28:"r26",29:"r26",30:"r26",31:"r26",32:"r26",33:"r26",34:"r26",35:"r26",36:"r26",37:"r26",38:"r26",39:"r26",40:"r26",41:"r26",42:"r26",43:"r26",44:"r26",45:"r26",46:"r26",47:"r26",48:"r26",49:"r26",50:"r26",51:"r26",52:"r26",53:"r26",54:"r26",55:"r26",56:"r26",57:"r26",58:"r26"},{23:"r27",24:"r27",25:"r27",26:"r27",27:"r27",28:"r27",29:"r27",30:"r27",31:"r27",32:"r27",33:"r27",34:"r27",35:"r27",36:"r27",37:"r27",38:"r27",39:"r27",40:"r27",41:"r27",42:"r27",43:"r27",44:"r27",45:"r27",46:"r27",47:"r27",48:"r27",49:"r27",50:"r27",51:"r27",52:"r27",53:"r27",54:"r27",55:"r27",56:"r27",57:"r27",58:"r27"},{23:"r28",24:"r28",25:"r28",26:"r28",27:"r28",28:"r28",29:"r28",30:"r28",31:"r28",32:"r28",33:"r28",34:"r28",35:"r28",36:"r28",37:"r28",38:"r28",39:"r28",40:"r28",41:"r28",42:"r28",43:"r28",44:"r28",45:"r28",46:"r28",47:"r28",48:"r28",49:"r28",50:"r28",51:"r28",52:"r28",53:"r28",54:"r28",55:"r28",56:"r28",57:"r28",58:"r28"},{23:"r29",24:"r29",25:"r29",26:"r29",27:"r29",28:"r29",29:"r29",30:"r29",31:"r29",32:"r29",33:"r29",34:"r29",35:"r29",36:"r29",37:"r29",38:"r29",39:"r29",40:"r29",41:"r29",42:"r29",43:"r29",44:"r29",45:"r29",46:"r29",47:"r29",48:"r29",49:"r29",50:"r29",51:"r29",52:"r29",53:"r29",54:"r29",55:"r29",56:"r29",57:"r29",58:"r29"},{23:"r30",24:"r30",25:"r30",26:"r30",27:"r30",28:"r30",29:"r30",30:"r30",31:"r30",32:"r30",33:"r30",34:"r30",35:"r30",36:"r30",37:"r30",38:"r30",39:"r30",40:"r30",41:"r30",42:"r30",43:"r30",44:"r30",45:"r30",46:"r30",47:"r30",48:"r30",49:"r30",50:"r30",51:"r30",52:"r30",53:"r30",54:"r30",55:"r30",56:"r30",57:"r30",58:"r30"},{23:"r31",24:"r31",25:"r31",26:"r31",27:"r31",28:"r31",29:"r31",30:"r31",31:"r31",32:"r31",33:"r31",34:"r31",35:"r31",36:"r31",37:"r31",38:"r31",39:"r31",40:"r31",41:"r31",42:"r31",43:"r31",44:"r31",45:"r31",46:"r31",47:"r31",48:"r31",49:"r31",50:"r31",51:"r31",52:"r31",53:"r31",54:"r31",55:"r31",56:"r31",57:"r31",58:"r31"},{23:"r32",24:"r32",25:"r32",26:"r32",27:"r32",28:"r32",29:"r32",30:"r32",31:"r32",32:"r32",33:"r32",34:"r32",35:"r32",36:"r32",37:"r32",38:"r32",39:"r32",40:"r32",41:"r32",42:"r32",43:"r32",44:"r32",45:"r32",46:"r32",47:"r32",48:"r32",49:"r32",50:"r32",51:"r32",52:"r32",53:"r32",54:"r32",55:"r32",56:"r32",57:"r32",58:"r32"},{23:"r33",24:"r33",25:"r33",26:"r33",27:"r33",28:"r33",29:"r33",30:"r33",31:"r33",32:"r33",33:"r33",34:"r33",35:"r33",36:"r33",37:"r33",38:"r33",39:"r33",40:"r33",41:"r33",42:"r33",43:"r33",44:"r33",45:"r33",46:"r33",47:"r33",48:"r33",49:"r33",50:"r33",51:"r33",52:"r33",53:"r33",54:"r33",55:"r33",56:"r33",57:"r33",58:"r33"},{23:"r34",24:"r34",25:"r34",26:"r34",27:"r34",28:"r34",29:"r34",30:"r34",31:"r34",32:"r34",33:"r34",34:"r34",35:"r34",36:"r34",37:"r34",38:"r34",39:"r34",40:"r34",41:"r34",42:"r34",43:"r34",44:"r34",45:"r34",46:"r34",47:"r34",48:"r34",49:"r34",50:"r34",51:"r34",52:"r34",53:"r34",54:"r34",55:"r34",56:"r34",57:"r34",58:"r34"},{23:"r35",24:"r35",25:"r35",26:"r35",27:"r35",28:"r35",29:"r35",30:"r35",31:"r35",32:"r35",33:"r35",34:"r35",35:"r35",36:"r35",37:"r35",38:"r35",39:"r35",40:"r35",41:"r35",42:"r35",43:"r35",44:"r35",45:"r35",46:"r35",47:"r35",48:"r35",49:"r35",50:"r35",51:"r35",52:"r35",53:"r35",54:"r35",55:"r35",56:"r35",57:"r35",58:"r35"},{23:"r36",24:"r36",25:"r36",26:"r36",27:"r36",28:"r36",29:"r36",30:"r36",31:"r36",32:"r36",33:"r36",34:"r36",35:"r36",36:"r36",37:"r36",38:"r36",39:"r36",40:"r36",41:"r36",42:"r36",43:"r36",44:"r36",45:"r36",46:"r36",47:"r36",48:"r36",49:"r36",50:"r36",51:"r36",52:"r36",53:"r36",54:"r36",55:"r36",56:"r36",57:"r36",58:"r36"},{10:70,18:65,19:66,21:67,22:69,24:"s28",28:"s71",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",56:"r54",58:"s68"},{10:70,18:83,19:66,21:67,22:69,24:"s28",28:"s71",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",56:"r54",58:"s68"},{23:"r47",24:"r47",25:"r47",26:"r47",27:"r47",28:"r47",29:"r47",30:"r47",31:"r47",32:"r47",33:"r47",34:"r47",35:"r47",36:"r47",37:"r47",38:"r47",39:"r47",40:"r47",41:"r47",42:"r47",43:"r47",44:"r47",45:"r47",46:"r47",47:"r47",48:"r47",49:"r47",50:"r47",51:"r47",52:"r47",53:"r47",54:"r47",55:"r47",57:"r47"},{23:"r48",24:"r48",25:"r48",26:"r48",27:"r48",28:"r48",29:"r48",30:"r48",31:"r48",32:"r48",33:"r48",34:"r48",35:"r48",36:"r48",37:"r48",38:"r48",39:"r48",40:"r48",41:"r48",42:"r48",43:"r48",44:"r48",45:"r48",46:"r48",47:"r48",48:"r48",49:"r48",50:"r48",51:"r48",52:"r48",53:"r48",54:"r48",55:"r48",57:"r48"},{4:85,5:5,6:6,24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",31:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{4:87,5:5,6:6,24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",31:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{4:89,5:5,6:6,24:"r10",25:"r10",26:"r10",27:"r10",28:"r10",29:"r10",30:"r10",31:"r10",32:"r10",33:"r10",34:"r10",35:"r10",36:"r10",37:"r10",38:"r10",39:"r10",40:"r10",41:"r10",42:"r10",43:"r10",44:"r10",45:"r10",52:"r10",53:"r10",54:"r10",55:"r10",57:"r10"},{23:"r13",24:"r13",25:"r13",26:"r13",27:"r13",28:"r13",29:"r13",30:"r13",31:"r13",32:"r13",33:"r13",34:"r13",35:"r13",36:"r13",37:"r13",38:"r13",39:"r13",40:"r13",41:"r13",42:"r13",43:"r13",44:"r13",45:"r13",52:"r13",53:"r13",54:"r13",55:"r13",57:"r13"},{23:"r37",24:"r37",25:"r37",26:"r37",27:"r37",28:"r37",29:"r37",30:"r37",31:"r37",32:"r37",33:"r37",34:"r37",35:"r37",36:"r37",37:"r37",38:"r37",39:"r37",40:"r37",41:"r37",42:"r37",43:"r37",44:"r37",45:"r37",52:"r37",53:"r37",54:"r37",55:"r37",57:"r37"},{23:"r39",24:"r39",25:"r39",26:"r39",27:"r39",28:"r39",29:"r39",30:"r39",31:"r39",32:"r39",33:"r39",34:"r39",35:"r39",36:"r39",37:"r39",38:"r39",39:"r39",40:"r39",41:"r39",42:"r39",43:"r39",44:"r39",45:"r39",46:"s56",52:"r39",53:"r39",54:"r39",55:"r39",57:"r39"},{23:"r41",24:"r41",25:"r41",26:"r41",27:"r41",28:"r41",29:"r41",30:"r41",31:"r41",32:"r41",33:"r41",34:"r41",35:"r41",36:"r41",37:"r41",38:"r41",39:"r41",40:"r41",41:"r41",42:"r41",43:"r41",44:"r41",45:"r41",46:"r41",52:"r41",53:"r41",54:"r41",55:"r41",57:"r41"},{23:"r42",24:"r42",25:"r42",26:"r42",27:"r42",28:"r42",29:"r42",30:"r42",31:"r42",32:"r42",33:"r42",34:"r42",35:"r42",36:"r42",37:"r42",38:"r42",39:"r42",40:"r42",41:"r42",42:"r42",43:"r42",44:"r42",45:"r42",46:"r42",52:"r42",53:"r42",54:"r42",55:"r42",57:"r42"},{23:"r43",24:"r43",25:"r43",26:"r43",27:"r43",28:"r43",29:"r43",30:"r43",31:"r43",32:"r43",33:"r43",34:"r43",35:"r43",36:"r43",37:"r43",38:"r43",39:"r43",40:"r43",41:"r43",42:"r43",43:"r43",44:"r43",45:"r43",46:"r43",52:"r43",53:"r43",54:"r43",55:"r43",57:"r43"},{23:"r44",24:"r44",25:"r44",26:"r44",27:"r44",28:"r44",29:"r44",30:"r44",31:"r44",32:"r44",33:"r44",34:"r44",35:"r44",36:"r44",37:"r44",38:"r44",39:"r44",40:"r44",41:"r44",42:"r44",43:"r44",44:"r44",45:"r44",46:"r44",52:"r44",53:"r44",54:"r44",55:"r44",57:"r44"},{23:"r45",24:"r45",25:"r45",26:"r45",27:"r45",28:"r45",29:"r45",30:"r45",31:"r45",32:"r45",33:"r45",34:"r45",35:"r45",36:"r45",37:"r45",38:"r45",39:"r45",40:"r45",41:"r45",42:"r45",43:"r45",44:"r45",45:"r45",46:"r45",52:"r45",53:"r45",54:"r45",55:"r45",57:"r45"},{23:"r46",24:"r46",25:"r46",26:"r46",27:"r46",28:"r46",29:"r46",30:"r46",31:"r46",32:"r46",33:"r46",34:"r46",35:"r46",36:"r46",37:"r46",38:"r46",39:"r46",40:"r46",41:"r46",42:"r46",43:"r46",44:"r46",45:"r46",46:"r46",52:"r46",53:"r46",54:"r46",55:"r46",57:"r46"},{23:"r40",24:"r40",25:"r40",26:"r40",27:"r40",28:"r40",29:"r40",30:"r40",31:"r40",32:"r40",33:"r40",34:"r40",35:"r40",36:"r40",37:"r40",38:"r40",39:"r40",40:"r40",41:"r40",42:"r40",43:"r40",44:"r40",45:"r40",52:"r40",53:"r40",54:"r40",55:"r40",57:"r40"},{25:"s12",31:"s58"},{23:"r18",24:"r18",25:"r18",26:"r18",27:"r18",28:"r18",29:"r18",30:"r18",31:"r18",32:"r18",33:"r18",34:"r18",35:"r18",36:"r18",37:"r18",38:"r18",39:"r18",40:"r18",41:"r18",42:"r18",43:"r18",44:"r18",45:"r18",52:"r18",53:"r18",54:"r18",55:"r18",57:"r18"},{25:"s12",31:"s60"},{23:"r19",24:"r19",25:"r19",26:"r19",27:"r19",28:"r19",29:"r19",30:"r19",31:"r19",32:"r19",33:"r19",34:"r19",35:"r19",36:"r19",37:"r19",38:"r19",39:"r19",40:"r19",41:"r19",42:"r19",43:"r19",44:"r19",45:"r19",52:"r19",53:"r19",54:"r19",55:"r19",57:"r19"},{25:"s12",31:"s62"},{23:"r20",24:"r20",25:"r20",26:"r20",27:"r20",28:"r20",29:"r20",30:"r20",31:"r20",32:"r20",33:"r20",34:"r20",35:"r20",36:"r20",37:"r20",38:"r20",39:"r20",40:"r20",41:"r20",42:"r20",43:"r20",44:"r20",45:"r20",52:"r20",53:"r20",54:"r20",55:"r20",57:"r20"},{25:"s12",31:"s64"},{23:"r21",24:"r21",25:"r21",26:"r21",27:"r21",28:"r21",29:"r21",30:"r21",31:"r21",32:"r21",33:"r21",34:"r21",35:"r21",36:"r21",37:"r21",38:"r21",39:"r21",40:"r21",41:"r21",42:"r21",43:"r21",44:"r21",45:"r21",52:"r21",53:"r21",54:"r21",55:"r21",57:"r21"},{56:"s72"},{56:"r55"},{10:70,20:73,21:75,22:76,24:"s28",28:"s71",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",56:"r56",58:"s74"},{24:"r62",28:"r62",35:"r62",36:"r62",37:"r62",38:"r62",39:"r62",40:"r62",41:"r62",42:"r62",43:"r62",44:"r62",45:"r62",56:"r62",58:"r62"},{24:"r63",28:"r63",35:"r63",36:"r63",37:"r63",38:"r63",39:"r63",40:"r63",41:"r63",42:"r63",43:"r63",44:"r63",45:"r63",56:"r63",58:"r63"},{24:"r64",28:"r64",35:"r64",36:"r64",37:"r64",38:"r64",39:"r64",40:"r64",41:"r64",42:"r64",43:"r64",44:"r64",45:"r64",56:"r64",58:"r64"},{24:"r65",28:"r65",35:"r65",36:"r65",37:"r65",38:"r65",39:"r65",40:"r65",41:"r65",42:"r65",43:"r65",44:"r65",45:"r65",56:"r65",58:"r65"},{23:"r52",24:"r52",25:"r52",26:"r52",27:"r52",28:"r52",29:"r52",30:"r52",31:"r52",32:"r52",33:"r52",34:"r52",35:"r52",36:"r52",37:"r52",38:"r52",39:"r52",40:"r52",41:"r52",42:"r52",43:"r52",44:"r52",45:"r52",46:"r52",47:"r52",48:"r52",49:"r52",50:"r52",51:"r52",52:"r52",53:"r52",54:"r52",55:"r52",57:"r52"},{56:"r57"},{10:70,21:77,22:69,24:"s28",28:"s71",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",56:"r62",58:"s68"},{56:"r59"},{10:70,20:79,21:75,22:76,24:"s28",28:"s71",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",56:"r63",58:"s80"},{10:70,18:78,19:66,21:67,22:69,24:"s28",28:"s71",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",56:"r54",58:"s68"},{56:"r58"},{56:"r60"},{10:70,21:81,22:69,24:"s28",28:"s71",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",56:"r62",58:"s68"},{10:70,18:82,19:66,21:67,22:69,24:"s28",28:"s71",35:"s29",36:"s30",37:"s31",38:"s32",39:"s33",40:"s34",41:"s35",42:"s36",43:"s37",44:"s38",45:"s39",56:"r54",58:"s68"},{56:"r61"},{56:"s84"},{23:"r53",24:"r53",25:"r53",26:"r53",27:"r53",28:"r53",29:"r53",30:"r53",31:"r53",32:"r53",33:"r53",34:"r53",35:"r53",36:"r53",37:"r53",38:"r53",39:"r53",40:"r53",41:"r53",42:"r53",43:"r53",44:"r53",45:"r53",46:"r53",47:"r53",48:"r53",49:"r53",50:"r53",51:"r53",52:"r53",53:"r53",54:"r53",55:"r53",57:"r53"},{25:"s12",31:"s86"},{23:"r49",24:"r49",25:"r49",26:"r49",27:"r49",28:"r49",29:"r49",30:"r49",31:"r49",32:"r49",33:"r49",34:"r49",35:"r49",36:"r49",37:"r49",38:"r49",39:"r49",40:"r49",41:"r49",42:"r49",43:"r49",44:"r49",45:"r49",46:"r49",47:"r49",48:"r49",49:"r49",50:"r49",51:"r49",52:"r49",53:"r49",54:"r49",55:"r49",57:"r49"},{25:"s12",31:"s88"},{23:"r50",24:"r50",25:"r50",26:"r50",27:"r50",28:"r50",29:"r50",30:"r50",31:"r50",32:"r50",33:"r50",34:"r50",35:"r50",36:"r50",37:"r50",38:"r50",39:"r50",40:"r50",41:"r50",42:"r50",43:"r50",44:"r50",45:"r50",46:"r50",47:"r50",48:"r50",49:"r50",50:"r50",51:"r50",52:"r50",53:"r50",54:"r50",55:"r50",57:"r50"},{25:"s12",31:"s90"},{23:"r51",24:"r51",25:"r51",26:"r51",27:"r51",28:"r51",29:"r51",30:"r51",31:"r51",32:"r51",33:"r51",34:"r51",35:"r51",36:"r51",37:"r51",38:"r51",39:"r51",40:"r51",41:"r51",42:"r51",43:"r51",44:"r51",45:"r51",46:"r51",47:"r51",48:"r51",49:"r51",50:"r51",51:"r51",52:"r51",53:"r51",54:"r51",55:"r51",57:"r51"}],l=[],c=void 0,f=[[/^#[^\n]+/,function(){}],[/^\s+/,function(){}],[/^-/,function(){return"DASH"}],[/^\//,function(){return"CHAR"}],[/^#/,function(){return"CHAR"}],[/^\|/,function(){return"CHAR"}],[/^\./,function(){return"CHAR"}],[/^\{/,function(){return"CHAR"}],[/^\{\d+\}/,function(){return"RANGE_EXACT"}],[/^\{\d+,\}/,function(){return"RANGE_OPEN"}],[/^\{\d+,\d+\}/,function(){return"RANGE_CLOSED"}],[/^\\k<(([\u0041-\u005a\u0061-\u007a\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376-\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e-\u066f\u0671-\u06d3\u06d5\u06e5-\u06e6\u06ee-\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4-\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u08a0-\u08b4\u08b6-\u08bd\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f-\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc-\u09dd\u09df-\u09e1\u09f0-\u09f1\u09fc\u0a05-\u0a0a\u0a0f-\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32-\u0a33\u0a35-\u0a36\u0a38-\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2-\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0-\u0ae1\u0af9\u0b05-\u0b0c\u0b0f-\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32-\u0b33\u0b35-\u0b39\u0b3d\u0b5c-\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99-\u0b9a\u0b9c\u0b9e-\u0b9f\u0ba3-\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c60-\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0-\u0ce1\u0cf1-\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32-\u0e33\u0e40-\u0e46\u0e81-\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2-\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065-\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae-\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c88\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5-\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2-\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fef\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a-\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7bf\ua7c2-\ua7c6\ua7f7-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd-\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5-\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab67\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]|\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c-\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\udd40-\udd74\ude80-\ude9c\udea0-\uded0\udf00-\udf1f\udf2d-\udf4a\udf50-\udf75\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf\udfd1-\udfd5]|\ud801[\udc00-\udc9d\udcb0-\udcd3\udcd8-\udcfb\udd00-\udd27\udd30-\udd63\ude00-\udf36\udf40-\udf55\udf60-\udf67]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37-\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4-\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe-\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude35\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee4\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udc80-\udcb2\udcc0-\udcf2\udd00-\udd23\udf00-\udf1c\udf27\udf30-\udf45\udfe0-\udff6]|\ud804[\udc03-\udc37\udc83-\udcaf\udcd0-\udce8\udd03-\udd26\udd44\udd50-\udd72\udd76\udd83-\uddb2\uddc1-\uddc4\uddda\udddc\ude00-\ude11\ude13-\ude2b\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udede\udf05-\udf0c\udf0f-\udf10\udf13-\udf28\udf2a-\udf30\udf32-\udf33\udf35-\udf39\udf3d\udf50\udf5d-\udf61]|\ud805[\udc00-\udc34\udc47-\udc4a\udc5f\udc80-\udcaf\udcc4-\udcc5\udcc7\udd80-\uddae\uddd8-\udddb\ude00-\ude2f\ude44\ude80-\udeaa\udeb8\udf00-\udf1a]|\ud806[\udc00-\udc2b\udca0-\udcdf\udcff\udda0-\udda7\uddaa-\uddd0\udde1\udde3\ude00\ude0b-\ude32\ude3a\ude50\ude5c-\ude89\ude9d\udec0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc2e\udc40\udc72-\udc8f\udd00-\udd06\udd08-\udd09\udd0b-\udd30\udd46\udd60-\udd65\udd67-\udd68\udd6a-\udd89\udd98\udee0-\udef2]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e\udc80-\udd43]|\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\uded0-\udeed\udf00-\udf2f\udf40-\udf43\udf63-\udf77\udf7d-\udf8f]|\ud81b[\ude40-\ude7f\udf00-\udf4a\udf50\udf93-\udf9f\udfe0-\udfe1\udfe3]|\ud81c[\udc00-\udfff]|\ud81d[\udc00-\udfff]|\ud81e[\udc00-\udfff]|\ud81f[\udc00-\udfff]|\ud820[\udc00-\udfff]|\ud821[\udc00-\udff7]|\ud822[\udc00-\udef2]|\ud82c[\udc00-\udd1e\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e-\udc9f\udca2\udca5-\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud838[\udd00-\udd2c\udd37-\udd3d\udd4e\udec0-\udeeb]|\ud83a[\udc00-\udcc4\udd00-\udd43\udd4b]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21-\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51-\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61-\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud840[\udc00-\udfff]|\ud841[\udc00-\udfff]|\ud842[\udc00-\udfff]|\ud843[\udc00-\udfff]|\ud844[\udc00-\udfff]|\ud845[\udc00-\udfff]|\ud846[\udc00-\udfff]|\ud847[\udc00-\udfff]|\ud848[\udc00-\udfff]|\ud849[\udc00-\udfff]|\ud84a[\udc00-\udfff]|\ud84b[\udc00-\udfff]|\ud84c[\udc00-\udfff]|\ud84d[\udc00-\udfff]|\ud84e[\udc00-\udfff]|\ud84f[\udc00-\udfff]|\ud850[\udc00-\udfff]|\ud851[\udc00-\udfff]|\ud852[\udc00-\udfff]|\ud853[\udc00-\udfff]|\ud854[\udc00-\udfff]|\ud855[\udc00-\udfff]|\ud856[\udc00-\udfff]|\ud857[\udc00-\udfff]|\ud858[\udc00-\udfff]|\ud859[\udc00-\udfff]|\ud85a[\udc00-\udfff]|\ud85b[\udc00-\udfff]|\ud85c[\udc00-\udfff]|\ud85d[\udc00-\udfff]|\ud85e[\udc00-\udfff]|\ud85f[\udc00-\udfff]|\ud860[\udc00-\udfff]|\ud861[\udc00-\udfff]|\ud862[\udc00-\udfff]|\ud863[\udc00-\udfff]|\ud864[\udc00-\udfff]|\ud865[\udc00-\udfff]|\ud866[\udc00-\udfff]|\ud867[\udc00-\udfff]|\ud868[\udc00-\udfff]|\ud869[\udc00-\uded6\udf00-\udfff]|\ud86a[\udc00-\udfff]|\ud86b[\udc00-\udfff]|\ud86c[\udc00-\udfff]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud86f[\udc00-\udfff]|\ud870[\udc00-\udfff]|\ud871[\udc00-\udfff]|\ud872[\udc00-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud874[\udc00-\udfff]|\ud875[\udc00-\udfff]|\ud876[\udc00-\udfff]|\ud877[\udc00-\udfff]|\ud878[\udc00-\udfff]|\ud879[\udc00-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d])|[$_]|(\\u[0-9a-fA-F]{4}|\\u\{[0-9a-fA-F]{1,}\}))(([\u0030-\u0039\u0041-\u005a\u005f\u0061-\u007a\u00aa\u00b5\u00b7\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0300-\u0374\u0376-\u0377\u037a-\u037d\u037f\u0386-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u0483-\u0487\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u0591-\u05bd\u05bf\u05c1-\u05c2\u05c4-\u05c5\u05c7\u05d0-\u05ea\u05ef-\u05f2\u0610-\u061a\u0620-\u0669\u066e-\u06d3\u06d5-\u06dc\u06df-\u06e8\u06ea-\u06fc\u06ff\u0710-\u074a\u074d-\u07b1\u07c0-\u07f5\u07fa\u07fd\u0800-\u082d\u0840-\u085b\u0860-\u086a\u08a0-\u08b4\u08b6-\u08bd\u08d3-\u08e1\u08e3-\u0963\u0966-\u096f\u0971-\u0983\u0985-\u098c\u098f-\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bc-\u09c4\u09c7-\u09c8\u09cb-\u09ce\u09d7\u09dc-\u09dd\u09df-\u09e3\u09e6-\u09f1\u09fc\u09fe\u0a01-\u0a03\u0a05-\u0a0a\u0a0f-\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32-\u0a33\u0a35-\u0a36\u0a38-\u0a39\u0a3c\u0a3e-\u0a42\u0a47-\u0a48\u0a4b-\u0a4d\u0a51\u0a59-\u0a5c\u0a5e\u0a66-\u0a75\u0a81-\u0a83\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2-\u0ab3\u0ab5-\u0ab9\u0abc-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ad0\u0ae0-\u0ae3\u0ae6-\u0aef\u0af9-\u0aff\u0b01-\u0b03\u0b05-\u0b0c\u0b0f-\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32-\u0b33\u0b35-\u0b39\u0b3c-\u0b44\u0b47-\u0b48\u0b4b-\u0b4d\u0b56-\u0b57\u0b5c-\u0b5d\u0b5f-\u0b63\u0b66-\u0b6f\u0b71\u0b82-\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99-\u0b9a\u0b9c\u0b9e-\u0b9f\u0ba3-\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd0\u0bd7\u0be6-\u0bef\u0c00-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55-\u0c56\u0c58-\u0c5a\u0c60-\u0c63\u0c66-\u0c6f\u0c80-\u0c83\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbc-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5-\u0cd6\u0cde\u0ce0-\u0ce3\u0ce6-\u0cef\u0cf1-\u0cf2\u0d00-\u0d03\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d44\u0d46-\u0d48\u0d4a-\u0d4e\u0d54-\u0d57\u0d5f-\u0d63\u0d66-\u0d6f\u0d7a-\u0d7f\u0d82-\u0d83\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2-\u0df3\u0e01-\u0e3a\u0e40-\u0e4e\u0e50-\u0e59\u0e81-\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0ebd\u0ec0-\u0ec4\u0ec6\u0ec8-\u0ecd\u0ed0-\u0ed9\u0edc-\u0edf\u0f00\u0f18-\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e-\u0f47\u0f49-\u0f6c\u0f71-\u0f84\u0f86-\u0f97\u0f99-\u0fbc\u0fc6\u1000-\u1049\u1050-\u109d\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u135d-\u135f\u1369-\u1371\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176c\u176e-\u1770\u1772-\u1773\u1780-\u17d3\u17d7\u17dc-\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u1820-\u1878\u1880-\u18aa\u18b0-\u18f5\u1900-\u191e\u1920-\u192b\u1930-\u193b\u1946-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u19d0-\u19da\u1a00-\u1a1b\u1a20-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1aa7\u1ab0-\u1abd\u1b00-\u1b4b\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1bf3\u1c00-\u1c37\u1c40-\u1c49\u1c4d-\u1c7d\u1c80-\u1c88\u1c90-\u1cba\u1cbd-\u1cbf\u1cd0-\u1cd2\u1cd4-\u1cfa\u1d00-\u1df9\u1dfb-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u203f-\u2040\u2054\u2071\u207f\u2090-\u209c\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d7f-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2de0-\u2dff\u3005-\u3007\u3021-\u302f\u3031-\u3035\u3038-\u303c\u3041-\u3096\u3099-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fef\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua62b\ua640-\ua66f\ua674-\ua67d\ua67f-\ua6f1\ua717-\ua71f\ua722-\ua788\ua78b-\ua7bf\ua7c2-\ua7c6\ua7f7-\ua827\ua840-\ua873\ua880-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f7\ua8fb\ua8fd-\ua92d\ua930-\ua953\ua960-\ua97c\ua980-\ua9c0\ua9cf-\ua9d9\ua9e0-\ua9fe\uaa00-\uaa36\uaa40-\uaa4d\uaa50-\uaa59\uaa60-\uaa76\uaa7a-\uaac2\uaadb-\uaadd\uaae0-\uaaef\uaaf2-\uaaf6\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab67\uab70-\uabea\uabec-\uabed\uabf0-\uabf9\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe00-\ufe0f\ufe20-\ufe2f\ufe33-\ufe34\ufe4d-\ufe4f\ufe70-\ufe74\ufe76-\ufefc\uff10-\uff19\uff21-\uff3a\uff3f\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]|\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c-\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\udd40-\udd74\uddfd\ude80-\ude9c\udea0-\uded0\udee0\udf00-\udf1f\udf2d-\udf4a\udf50-\udf7a\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf\udfd1-\udfd5]|\ud801[\udc00-\udc9d\udca0-\udca9\udcb0-\udcd3\udcd8-\udcfb\udd00-\udd27\udd30-\udd63\ude00-\udf36\udf40-\udf55\udf60-\udf67]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37-\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4-\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe-\uddbf\ude00-\ude03\ude05-\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude35\ude38-\ude3a\ude3f\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee6\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udc80-\udcb2\udcc0-\udcf2\udd00-\udd27\udd30-\udd39\udf00-\udf1c\udf27\udf30-\udf50\udfe0-\udff6]|\ud804[\udc00-\udc46\udc66-\udc6f\udc7f-\udcba\udcd0-\udce8\udcf0-\udcf9\udd00-\udd34\udd36-\udd3f\udd44-\udd46\udd50-\udd73\udd76\udd80-\uddc4\uddc9-\uddcc\uddd0-\uddda\udddc\ude00-\ude11\ude13-\ude37\ude3e\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udeea\udef0-\udef9\udf00-\udf03\udf05-\udf0c\udf0f-\udf10\udf13-\udf28\udf2a-\udf30\udf32-\udf33\udf35-\udf39\udf3b-\udf44\udf47-\udf48\udf4b-\udf4d\udf50\udf57\udf5d-\udf63\udf66-\udf6c\udf70-\udf74]|\ud805[\udc00-\udc4a\udc50-\udc59\udc5e-\udc5f\udc80-\udcc5\udcc7\udcd0-\udcd9\udd80-\uddb5\uddb8-\uddc0\uddd8-\udddd\ude00-\ude40\ude44\ude50-\ude59\ude80-\udeb8\udec0-\udec9\udf00-\udf1a\udf1d-\udf2b\udf30-\udf39]|\ud806[\udc00-\udc3a\udca0-\udce9\udcff\udda0-\udda7\uddaa-\uddd7\uddda-\udde1\udde3-\udde4\ude00-\ude3e\ude47\ude50-\ude99\ude9d\udec0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc36\udc38-\udc40\udc50-\udc59\udc72-\udc8f\udc92-\udca7\udca9-\udcb6\udd00-\udd06\udd08-\udd09\udd0b-\udd36\udd3a\udd3c-\udd3d\udd3f-\udd47\udd50-\udd59\udd60-\udd65\udd67-\udd68\udd6a-\udd8e\udd90-\udd91\udd93-\udd98\udda0-\udda9\udee0-\udef6]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e\udc80-\udd43]|\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\ude60-\ude69\uded0-\udeed\udef0-\udef4\udf00-\udf36\udf40-\udf43\udf50-\udf59\udf63-\udf77\udf7d-\udf8f]|\ud81b[\ude40-\ude7f\udf00-\udf4a\udf4f-\udf87\udf8f-\udf9f\udfe0-\udfe1\udfe3]|\ud81c[\udc00-\udfff]|\ud81d[\udc00-\udfff]|\ud81e[\udc00-\udfff]|\ud81f[\udc00-\udfff]|\ud820[\udc00-\udfff]|\ud821[\udc00-\udff7]|\ud822[\udc00-\udef2]|\ud82c[\udc00-\udd1e\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99\udc9d-\udc9e]|\ud834[\udd65-\udd69\udd6d-\udd72\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e-\udc9f\udca2\udca5-\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb\udfce-\udfff]|\ud836[\ude00-\ude36\ude3b-\ude6c\ude75\ude84\ude9b-\ude9f\udea1-\udeaf]|\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23-\udc24\udc26-\udc2a\udd00-\udd2c\udd30-\udd3d\udd40-\udd49\udd4e\udec0-\udef9]|\ud83a[\udc00-\udcc4\udcd0-\udcd6\udd00-\udd4b\udd50-\udd59]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21-\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51-\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61-\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud840[\udc00-\udfff]|\ud841[\udc00-\udfff]|\ud842[\udc00-\udfff]|\ud843[\udc00-\udfff]|\ud844[\udc00-\udfff]|\ud845[\udc00-\udfff]|\ud846[\udc00-\udfff]|\ud847[\udc00-\udfff]|\ud848[\udc00-\udfff]|\ud849[\udc00-\udfff]|\ud84a[\udc00-\udfff]|\ud84b[\udc00-\udfff]|\ud84c[\udc00-\udfff]|\ud84d[\udc00-\udfff]|\ud84e[\udc00-\udfff]|\ud84f[\udc00-\udfff]|\ud850[\udc00-\udfff]|\ud851[\udc00-\udfff]|\ud852[\udc00-\udfff]|\ud853[\udc00-\udfff]|\ud854[\udc00-\udfff]|\ud855[\udc00-\udfff]|\ud856[\udc00-\udfff]|\ud857[\udc00-\udfff]|\ud858[\udc00-\udfff]|\ud859[\udc00-\udfff]|\ud85a[\udc00-\udfff]|\ud85b[\udc00-\udfff]|\ud85c[\udc00-\udfff]|\ud85d[\udc00-\udfff]|\ud85e[\udc00-\udfff]|\ud85f[\udc00-\udfff]|\ud860[\udc00-\udfff]|\ud861[\udc00-\udfff]|\ud862[\udc00-\udfff]|\ud863[\udc00-\udfff]|\ud864[\udc00-\udfff]|\ud865[\udc00-\udfff]|\ud866[\udc00-\udfff]|\ud867[\udc00-\udfff]|\ud868[\udc00-\udfff]|\ud869[\udc00-\uded6\udf00-\udfff]|\ud86a[\udc00-\udfff]|\ud86b[\udc00-\udfff]|\ud86c[\udc00-\udfff]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud86f[\udc00-\udfff]|\ud870[\udc00-\udfff]|\ud871[\udc00-\udfff]|\ud872[\udc00-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud874[\udc00-\udfff]|\ud875[\udc00-\udfff]|\ud876[\udc00-\udfff]|\ud877[\udc00-\udfff]|\ud878[\udc00-\udfff]|\ud879[\udc00-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\udb40[\udd00-\uddef])|[$_]|(\\u[0-9a-fA-F]{4}|\\u\{[0-9a-fA-F]{1,}\})|[\u200c\u200d])*>/,function(){return k(r.slice(3,-1),this.getCurrentState()),"NAMED_GROUP_REF"}],[/^\\b/,function(){return"ESC_b"}],[/^\\B/,function(){return"ESC_B"}],[/^\\c[a-zA-Z]/,function(){return"CTRL_CH"}],[/^\\0\d{1,2}/,function(){return"OCT_CODE"}],[/^\\0/,function(){return"DEC_CODE"}],[/^\\\d{1,3}/,function(){return"DEC_CODE"}],[/^\\u[dD][89abAB][0-9a-fA-F]{2}\\u[dD][c-fC-F][0-9a-fA-F]{2}/,function(){return"U_CODE_SURROGATE"}],[/^\\u\{[0-9a-fA-F]{1,}\}/,function(){return"U_CODE"}],[/^\\u[0-9a-fA-F]{4}/,function(){return"U_CODE"}],[/^\\[pP]\{\w+(?:=\w+)?\}/,function(){return"U_PROP_VALUE_EXP"}],[/^\\x[0-9a-fA-F]{2}/,function(){return"HEX_CODE"}],[/^\\[tnrdDsSwWvf]/,function(){return"META_CHAR"}],[/^\\\//,function(){return"ESC_CHAR"}],[/^\\[ #]/,function(){return"ESC_CHAR"}],[/^\\[\^\$\.\*\+\?\(\)\\\[\]\{\}\|\/]/,function(){return"ESC_CHAR"}],[/^\\[^*?+\[()\\|]/,function(){var e=this.getCurrentState();if("u_class"===e&&"\\-"===r);else if("u"===e||"xu"===e||"u_class"===e)throw SyntaxError("invalid Unicode escape "+r);return"ESC_CHAR"}],[/^\(/,function(){return"CHAR"}],[/^\)/,function(){return"CHAR"}],[/^\(\?=/,function(){return"POS_LA_ASSERT"}],[/^\(\?!/,function(){return"NEG_LA_ASSERT"}],[/^\(\?<=/,function(){return"POS_LB_ASSERT"}],[/^\(\?<!/,function(){return"NEG_LB_ASSERT"}],[/^\(\?:/,function(){return"NON_CAPTURE_GROUP"}],[/^\(\?<(([\u0041-\u005a\u0061-\u007a\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376-\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e-\u066f\u0671-\u06d3\u06d5\u06e5-\u06e6\u06ee-\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4-\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u08a0-\u08b4\u08b6-\u08bd\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f-\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc-\u09dd\u09df-\u09e1\u09f0-\u09f1\u09fc\u0a05-\u0a0a\u0a0f-\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32-\u0a33\u0a35-\u0a36\u0a38-\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2-\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0-\u0ae1\u0af9\u0b05-\u0b0c\u0b0f-\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32-\u0b33\u0b35-\u0b39\u0b3d\u0b5c-\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99-\u0b9a\u0b9c\u0b9e-\u0b9f\u0ba3-\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c60-\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0-\u0ce1\u0cf1-\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32-\u0e33\u0e40-\u0e46\u0e81-\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2-\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065-\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae-\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c88\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5-\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2-\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fef\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a-\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7bf\ua7c2-\ua7c6\ua7f7-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd-\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5-\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab67\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]|\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c-\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\udd40-\udd74\ude80-\ude9c\udea0-\uded0\udf00-\udf1f\udf2d-\udf4a\udf50-\udf75\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf\udfd1-\udfd5]|\ud801[\udc00-\udc9d\udcb0-\udcd3\udcd8-\udcfb\udd00-\udd27\udd30-\udd63\ude00-\udf36\udf40-\udf55\udf60-\udf67]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37-\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4-\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe-\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude35\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee4\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udc80-\udcb2\udcc0-\udcf2\udd00-\udd23\udf00-\udf1c\udf27\udf30-\udf45\udfe0-\udff6]|\ud804[\udc03-\udc37\udc83-\udcaf\udcd0-\udce8\udd03-\udd26\udd44\udd50-\udd72\udd76\udd83-\uddb2\uddc1-\uddc4\uddda\udddc\ude00-\ude11\ude13-\ude2b\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udede\udf05-\udf0c\udf0f-\udf10\udf13-\udf28\udf2a-\udf30\udf32-\udf33\udf35-\udf39\udf3d\udf50\udf5d-\udf61]|\ud805[\udc00-\udc34\udc47-\udc4a\udc5f\udc80-\udcaf\udcc4-\udcc5\udcc7\udd80-\uddae\uddd8-\udddb\ude00-\ude2f\ude44\ude80-\udeaa\udeb8\udf00-\udf1a]|\ud806[\udc00-\udc2b\udca0-\udcdf\udcff\udda0-\udda7\uddaa-\uddd0\udde1\udde3\ude00\ude0b-\ude32\ude3a\ude50\ude5c-\ude89\ude9d\udec0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc2e\udc40\udc72-\udc8f\udd00-\udd06\udd08-\udd09\udd0b-\udd30\udd46\udd60-\udd65\udd67-\udd68\udd6a-\udd89\udd98\udee0-\udef2]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e\udc80-\udd43]|\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\uded0-\udeed\udf00-\udf2f\udf40-\udf43\udf63-\udf77\udf7d-\udf8f]|\ud81b[\ude40-\ude7f\udf00-\udf4a\udf50\udf93-\udf9f\udfe0-\udfe1\udfe3]|\ud81c[\udc00-\udfff]|\ud81d[\udc00-\udfff]|\ud81e[\udc00-\udfff]|\ud81f[\udc00-\udfff]|\ud820[\udc00-\udfff]|\ud821[\udc00-\udff7]|\ud822[\udc00-\udef2]|\ud82c[\udc00-\udd1e\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e-\udc9f\udca2\udca5-\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud838[\udd00-\udd2c\udd37-\udd3d\udd4e\udec0-\udeeb]|\ud83a[\udc00-\udcc4\udd00-\udd43\udd4b]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21-\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51-\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61-\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud840[\udc00-\udfff]|\ud841[\udc00-\udfff]|\ud842[\udc00-\udfff]|\ud843[\udc00-\udfff]|\ud844[\udc00-\udfff]|\ud845[\udc00-\udfff]|\ud846[\udc00-\udfff]|\ud847[\udc00-\udfff]|\ud848[\udc00-\udfff]|\ud849[\udc00-\udfff]|\ud84a[\udc00-\udfff]|\ud84b[\udc00-\udfff]|\ud84c[\udc00-\udfff]|\ud84d[\udc00-\udfff]|\ud84e[\udc00-\udfff]|\ud84f[\udc00-\udfff]|\ud850[\udc00-\udfff]|\ud851[\udc00-\udfff]|\ud852[\udc00-\udfff]|\ud853[\udc00-\udfff]|\ud854[\udc00-\udfff]|\ud855[\udc00-\udfff]|\ud856[\udc00-\udfff]|\ud857[\udc00-\udfff]|\ud858[\udc00-\udfff]|\ud859[\udc00-\udfff]|\ud85a[\udc00-\udfff]|\ud85b[\udc00-\udfff]|\ud85c[\udc00-\udfff]|\ud85d[\udc00-\udfff]|\ud85e[\udc00-\udfff]|\ud85f[\udc00-\udfff]|\ud860[\udc00-\udfff]|\ud861[\udc00-\udfff]|\ud862[\udc00-\udfff]|\ud863[\udc00-\udfff]|\ud864[\udc00-\udfff]|\ud865[\udc00-\udfff]|\ud866[\udc00-\udfff]|\ud867[\udc00-\udfff]|\ud868[\udc00-\udfff]|\ud869[\udc00-\uded6\udf00-\udfff]|\ud86a[\udc00-\udfff]|\ud86b[\udc00-\udfff]|\ud86c[\udc00-\udfff]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud86f[\udc00-\udfff]|\ud870[\udc00-\udfff]|\ud871[\udc00-\udfff]|\ud872[\udc00-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud874[\udc00-\udfff]|\ud875[\udc00-\udfff]|\ud876[\udc00-\udfff]|\ud877[\udc00-\udfff]|\ud878[\udc00-\udfff]|\ud879[\udc00-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d])|[$_]|(\\u[0-9a-fA-F]{4}|\\u\{[0-9a-fA-F]{1,}\}))(([\u0030-\u0039\u0041-\u005a\u005f\u0061-\u007a\u00aa\u00b5\u00b7\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0300-\u0374\u0376-\u0377\u037a-\u037d\u037f\u0386-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u0483-\u0487\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u0591-\u05bd\u05bf\u05c1-\u05c2\u05c4-\u05c5\u05c7\u05d0-\u05ea\u05ef-\u05f2\u0610-\u061a\u0620-\u0669\u066e-\u06d3\u06d5-\u06dc\u06df-\u06e8\u06ea-\u06fc\u06ff\u0710-\u074a\u074d-\u07b1\u07c0-\u07f5\u07fa\u07fd\u0800-\u082d\u0840-\u085b\u0860-\u086a\u08a0-\u08b4\u08b6-\u08bd\u08d3-\u08e1\u08e3-\u0963\u0966-\u096f\u0971-\u0983\u0985-\u098c\u098f-\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bc-\u09c4\u09c7-\u09c8\u09cb-\u09ce\u09d7\u09dc-\u09dd\u09df-\u09e3\u09e6-\u09f1\u09fc\u09fe\u0a01-\u0a03\u0a05-\u0a0a\u0a0f-\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32-\u0a33\u0a35-\u0a36\u0a38-\u0a39\u0a3c\u0a3e-\u0a42\u0a47-\u0a48\u0a4b-\u0a4d\u0a51\u0a59-\u0a5c\u0a5e\u0a66-\u0a75\u0a81-\u0a83\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2-\u0ab3\u0ab5-\u0ab9\u0abc-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ad0\u0ae0-\u0ae3\u0ae6-\u0aef\u0af9-\u0aff\u0b01-\u0b03\u0b05-\u0b0c\u0b0f-\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32-\u0b33\u0b35-\u0b39\u0b3c-\u0b44\u0b47-\u0b48\u0b4b-\u0b4d\u0b56-\u0b57\u0b5c-\u0b5d\u0b5f-\u0b63\u0b66-\u0b6f\u0b71\u0b82-\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99-\u0b9a\u0b9c\u0b9e-\u0b9f\u0ba3-\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd0\u0bd7\u0be6-\u0bef\u0c00-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55-\u0c56\u0c58-\u0c5a\u0c60-\u0c63\u0c66-\u0c6f\u0c80-\u0c83\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbc-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5-\u0cd6\u0cde\u0ce0-\u0ce3\u0ce6-\u0cef\u0cf1-\u0cf2\u0d00-\u0d03\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d44\u0d46-\u0d48\u0d4a-\u0d4e\u0d54-\u0d57\u0d5f-\u0d63\u0d66-\u0d6f\u0d7a-\u0d7f\u0d82-\u0d83\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2-\u0df3\u0e01-\u0e3a\u0e40-\u0e4e\u0e50-\u0e59\u0e81-\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0ebd\u0ec0-\u0ec4\u0ec6\u0ec8-\u0ecd\u0ed0-\u0ed9\u0edc-\u0edf\u0f00\u0f18-\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e-\u0f47\u0f49-\u0f6c\u0f71-\u0f84\u0f86-\u0f97\u0f99-\u0fbc\u0fc6\u1000-\u1049\u1050-\u109d\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u135d-\u135f\u1369-\u1371\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176c\u176e-\u1770\u1772-\u1773\u1780-\u17d3\u17d7\u17dc-\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u1820-\u1878\u1880-\u18aa\u18b0-\u18f5\u1900-\u191e\u1920-\u192b\u1930-\u193b\u1946-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u19d0-\u19da\u1a00-\u1a1b\u1a20-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1aa7\u1ab0-\u1abd\u1b00-\u1b4b\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1bf3\u1c00-\u1c37\u1c40-\u1c49\u1c4d-\u1c7d\u1c80-\u1c88\u1c90-\u1cba\u1cbd-\u1cbf\u1cd0-\u1cd2\u1cd4-\u1cfa\u1d00-\u1df9\u1dfb-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u203f-\u2040\u2054\u2071\u207f\u2090-\u209c\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d7f-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2de0-\u2dff\u3005-\u3007\u3021-\u302f\u3031-\u3035\u3038-\u303c\u3041-\u3096\u3099-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fef\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua62b\ua640-\ua66f\ua674-\ua67d\ua67f-\ua6f1\ua717-\ua71f\ua722-\ua788\ua78b-\ua7bf\ua7c2-\ua7c6\ua7f7-\ua827\ua840-\ua873\ua880-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f7\ua8fb\ua8fd-\ua92d\ua930-\ua953\ua960-\ua97c\ua980-\ua9c0\ua9cf-\ua9d9\ua9e0-\ua9fe\uaa00-\uaa36\uaa40-\uaa4d\uaa50-\uaa59\uaa60-\uaa76\uaa7a-\uaac2\uaadb-\uaadd\uaae0-\uaaef\uaaf2-\uaaf6\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab67\uab70-\uabea\uabec-\uabed\uabf0-\uabf9\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe00-\ufe0f\ufe20-\ufe2f\ufe33-\ufe34\ufe4d-\ufe4f\ufe70-\ufe74\ufe76-\ufefc\uff10-\uff19\uff21-\uff3a\uff3f\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]|\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c-\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\udd40-\udd74\uddfd\ude80-\ude9c\udea0-\uded0\udee0\udf00-\udf1f\udf2d-\udf4a\udf50-\udf7a\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf\udfd1-\udfd5]|\ud801[\udc00-\udc9d\udca0-\udca9\udcb0-\udcd3\udcd8-\udcfb\udd00-\udd27\udd30-\udd63\ude00-\udf36\udf40-\udf55\udf60-\udf67]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37-\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4-\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe-\uddbf\ude00-\ude03\ude05-\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude35\ude38-\ude3a\ude3f\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee6\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udc80-\udcb2\udcc0-\udcf2\udd00-\udd27\udd30-\udd39\udf00-\udf1c\udf27\udf30-\udf50\udfe0-\udff6]|\ud804[\udc00-\udc46\udc66-\udc6f\udc7f-\udcba\udcd0-\udce8\udcf0-\udcf9\udd00-\udd34\udd36-\udd3f\udd44-\udd46\udd50-\udd73\udd76\udd80-\uddc4\uddc9-\uddcc\uddd0-\uddda\udddc\ude00-\ude11\ude13-\ude37\ude3e\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udeea\udef0-\udef9\udf00-\udf03\udf05-\udf0c\udf0f-\udf10\udf13-\udf28\udf2a-\udf30\udf32-\udf33\udf35-\udf39\udf3b-\udf44\udf47-\udf48\udf4b-\udf4d\udf50\udf57\udf5d-\udf63\udf66-\udf6c\udf70-\udf74]|\ud805[\udc00-\udc4a\udc50-\udc59\udc5e-\udc5f\udc80-\udcc5\udcc7\udcd0-\udcd9\udd80-\uddb5\uddb8-\uddc0\uddd8-\udddd\ude00-\ude40\ude44\ude50-\ude59\ude80-\udeb8\udec0-\udec9\udf00-\udf1a\udf1d-\udf2b\udf30-\udf39]|\ud806[\udc00-\udc3a\udca0-\udce9\udcff\udda0-\udda7\uddaa-\uddd7\uddda-\udde1\udde3-\udde4\ude00-\ude3e\ude47\ude50-\ude99\ude9d\udec0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc36\udc38-\udc40\udc50-\udc59\udc72-\udc8f\udc92-\udca7\udca9-\udcb6\udd00-\udd06\udd08-\udd09\udd0b-\udd36\udd3a\udd3c-\udd3d\udd3f-\udd47\udd50-\udd59\udd60-\udd65\udd67-\udd68\udd6a-\udd8e\udd90-\udd91\udd93-\udd98\udda0-\udda9\udee0-\udef6]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e\udc80-\udd43]|\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\ude60-\ude69\uded0-\udeed\udef0-\udef4\udf00-\udf36\udf40-\udf43\udf50-\udf59\udf63-\udf77\udf7d-\udf8f]|\ud81b[\ude40-\ude7f\udf00-\udf4a\udf4f-\udf87\udf8f-\udf9f\udfe0-\udfe1\udfe3]|\ud81c[\udc00-\udfff]|\ud81d[\udc00-\udfff]|\ud81e[\udc00-\udfff]|\ud81f[\udc00-\udfff]|\ud820[\udc00-\udfff]|\ud821[\udc00-\udff7]|\ud822[\udc00-\udef2]|\ud82c[\udc00-\udd1e\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99\udc9d-\udc9e]|\ud834[\udd65-\udd69\udd6d-\udd72\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e-\udc9f\udca2\udca5-\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb\udfce-\udfff]|\ud836[\ude00-\ude36\ude3b-\ude6c\ude75\ude84\ude9b-\ude9f\udea1-\udeaf]|\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23-\udc24\udc26-\udc2a\udd00-\udd2c\udd30-\udd3d\udd40-\udd49\udd4e\udec0-\udef9]|\ud83a[\udc00-\udcc4\udcd0-\udcd6\udd00-\udd4b\udd50-\udd59]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21-\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51-\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61-\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud840[\udc00-\udfff]|\ud841[\udc00-\udfff]|\ud842[\udc00-\udfff]|\ud843[\udc00-\udfff]|\ud844[\udc00-\udfff]|\ud845[\udc00-\udfff]|\ud846[\udc00-\udfff]|\ud847[\udc00-\udfff]|\ud848[\udc00-\udfff]|\ud849[\udc00-\udfff]|\ud84a[\udc00-\udfff]|\ud84b[\udc00-\udfff]|\ud84c[\udc00-\udfff]|\ud84d[\udc00-\udfff]|\ud84e[\udc00-\udfff]|\ud84f[\udc00-\udfff]|\ud850[\udc00-\udfff]|\ud851[\udc00-\udfff]|\ud852[\udc00-\udfff]|\ud853[\udc00-\udfff]|\ud854[\udc00-\udfff]|\ud855[\udc00-\udfff]|\ud856[\udc00-\udfff]|\ud857[\udc00-\udfff]|\ud858[\udc00-\udfff]|\ud859[\udc00-\udfff]|\ud85a[\udc00-\udfff]|\ud85b[\udc00-\udfff]|\ud85c[\udc00-\udfff]|\ud85d[\udc00-\udfff]|\ud85e[\udc00-\udfff]|\ud85f[\udc00-\udfff]|\ud860[\udc00-\udfff]|\ud861[\udc00-\udfff]|\ud862[\udc00-\udfff]|\ud863[\udc00-\udfff]|\ud864[\udc00-\udfff]|\ud865[\udc00-\udfff]|\ud866[\udc00-\udfff]|\ud867[\udc00-\udfff]|\ud868[\udc00-\udfff]|\ud869[\udc00-\uded6\udf00-\udfff]|\ud86a[\udc00-\udfff]|\ud86b[\udc00-\udfff]|\ud86c[\udc00-\udfff]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud86f[\udc00-\udfff]|\ud870[\udc00-\udfff]|\ud871[\udc00-\udfff]|\ud872[\udc00-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud874[\udc00-\udfff]|\ud875[\udc00-\udfff]|\ud876[\udc00-\udfff]|\ud877[\udc00-\udfff]|\ud878[\udc00-\udfff]|\ud879[\udc00-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\udb40[\udd00-\uddef])|[$_]|(\\u[0-9a-fA-F]{4}|\\u\{[0-9a-fA-F]{1,}\})|[\u200c\u200d])*>/,function(){return k(r=r.slice(3,-1),this.getCurrentState()),"NAMED_CAPTURE_GROUP"}],[/^\(/,function(){return"L_PAREN"}],[/^\)/,function(){return"R_PAREN"}],[/^[*?+[^$]/,function(){return"CHAR"}],[/^\\\]/,function(){return"ESC_CHAR"}],[/^\]/,function(){return this.popState(),"R_BRACKET"}],[/^\^/,function(){return"BOS"}],[/^\$/,function(){return"EOS"}],[/^\*/,function(){return"STAR"}],[/^\?/,function(){return"Q_MARK"}],[/^\+/,function(){return"PLUS"}],[/^\|/,function(){return"BAR"}],[/^\./,function(){return"ANY"}],[/^\//,function(){return"SLASH"}],[/^[^*?+\[()\\|]/,function(){return"CHAR"}],[/^\[\^/,function(){var e=this.getCurrentState();return this.pushState("u"===e||"xu"===e?"u_class":"class"),"NEG_CLASS"}],[/^\[/,function(){var e=this.getCurrentState();return this.pushState("u"===e||"xu"===e?"u_class":"class"),"L_BRACKET"}]],p={INITIAL:[8,9,10,11,12,13,14,15,16,17,20,22,23,24,26,27,30,31,32,33,34,35,36,37,41,42,43,44,45,46,47,48,49,50,51],u:[8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,26,27,30,31,32,33,34,35,36,37,41,42,43,44,45,46,47,48,49,50,51],xu:[0,1,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,30,31,32,33,34,35,36,37,41,42,43,44,45,46,47,48,49,50,51],x:[0,1,8,9,10,11,12,13,14,15,16,17,20,22,23,24,26,27,30,31,32,33,34,35,36,37,41,42,43,44,45,46,47,48,49,50,51],u_class:[2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],class:[2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,20,22,23,24,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51]},m={type:"$",value:""};n.lexer=c={initString:function(e){return this._string=e,this._cursor=0,this._states=["INITIAL"],this._tokensQueue=[],this._currentLine=1,this._currentColumn=0,this._currentLineBeginOffset=0,this._tokenStartOffset=0,this._tokenEndOffset=0,this._tokenStartLine=1,this._tokenEndLine=1,this._tokenStartColumn=0,this._tokenEndColumn=0,this},getStates:function(){return this._states},getCurrentState:function(){return this._states[this._states.length-1]},pushState:function(e){this._states.push(e)},begin:function(e){this.pushState(e)},popState:function(){return this._states.length>1?this._states.pop():this._states[0]},getNextToken:function(){if(this._tokensQueue.length>0)return this.onToken(this._toToken(this._tokensQueue.shift()));if(!this.hasMoreTokens())return this.onToken(m);for(var e=this._string.slice(this._cursor),n=p[this.getCurrentState()],u=0;u<n.length;u++){var a=f[n[u]],i=this._match(e,a[0]);if(""===e&&""===i&&this._cursor++,null!==i){(r=i).length;var o=a[1].call(this);if(!o)return this.getNextToken();if(Array.isArray(o)){var s,d=o.slice(1);o=o[0],d.length>0&&(s=this._tokensQueue).unshift.apply(s,t(d))}return this.onToken(this._toToken(o,r))}}if(this.isEOF())return this._cursor++,m;this.throwUnexpectedToken(e[0],this._currentLine,this._currentColumn)},throwUnexpectedToken:function(e,t,r){var n=this._string.split("\n")[t-1],u="";throw n&&(u="\n\n"+n+"\n"+" ".repeat(r)+"^\n"),SyntaxError(u+'Unexpected token: "'+e+'" '+("at "+t+":")+r+".")},getCursor:function(){return this._cursor},getCurrentLine:function(){return this._currentLine},getCurrentColumn:function(){return this._currentColumn},_captureLocation:function(e){var t=/\n/g;this._tokenStartOffset=this._cursor,this._tokenStartLine=this._currentLine,this._tokenStartColumn=this._tokenStartOffset-this._currentLineBeginOffset;for(var r=void 0;null!==(r=t.exec(e));)this._currentLine++,this._currentLineBeginOffset=this._tokenStartOffset+r.index+1;this._tokenEndOffset=this._cursor+e.length,this._tokenEndLine=this._currentLine,this._tokenEndColumn=this._currentColumn=this._tokenEndOffset-this._currentLineBeginOffset},_toToken:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return{type:e,value:t,startOffset:this._tokenStartOffset,endOffset:this._tokenEndOffset,startLine:this._tokenStartLine,endLine:this._tokenEndLine,startColumn:this._tokenStartColumn,endColumn:this._tokenEndColumn}},isEOF:function(){return this._cursor===this._string.length},hasMoreTokens:function(){return this._cursor<=this._string.length},_match:function(e,t){var r=e.match(t);return r?(this._captureLocation(r[0]),this._cursor+=r[0].length,r[0]):null},onToken:function(e){return e}},n.tokenizer=c,n.options={captureLocations:!0};var g={setOptions:function(e){return n.options=e,this},getOptions:function(){return n.options},parse:function(e,i){if(!c)throw Error("Tokenizer instance wasn't specified.");c.initString(e);var f=n.options;i&&(n.options=Object.assign({},n.options,i)),g.onParseBegin(e,c,n.options),l.length=0,l.push(0);var p=c.getNextToken(),m=null;do{p||(n.options=f,N());var y=l[l.length-1],h=s[p.type];d[y].hasOwnProperty(h)||(n.options=f,R(p));var b=d[y][h];if("s"===b[0]){var E=null;n.options.captureLocations&&(E={startOffset:p.startOffset,endOffset:p.endOffset,startLine:p.startLine,endLine:p.endLine,startColumn:p.startColumn,endColumn:p.endColumn}),m=this.onShift(p),l.push({symbol:s[m.type],semanticValue:m.value,loc:E},Number(b.slice(1))),p=c.getNextToken()}else if("r"===b[0]){var v=o[b.slice(1)],x="function"==typeof v[2],D=x?[]:null,A=x&&n.options.captureLocations?[]:null;if(0!==v[1])for(var S=v[1];S-- >0;){l.pop();var C=l.pop();x&&(D.unshift(C.semanticValue),A&&A.unshift(C.loc))}var T={symbol:v[0]};if(x){r=m?m.value:null,m&&m.value.length;var w=null!==A?D.concat(A):D;v[2].apply(v,t(w)),T.semanticValue=u,A&&(T.loc=a)}var _=l[l.length-1],F=v[0];l.push(T,d[_][F])}else if("acc"===b){l.pop();var k=l.pop();if((1!==l.length||0!==l[0]||c.hasMoreTokens())&&(n.options=f,R(p)),k.hasOwnProperty("semanticValue"))return n.options=f,g.onParseEnd(k.semanticValue),k.semanticValue;return g.onParseEnd(),n.options=f,!0}}while(c.hasMoreTokens()||l.length>1)},setTokenizer:function(e){return c=e,g},getTokenizer:function(){return c},onParseBegin:function(e,t,r){},onParseEnd:function(e){},onShift:function(e){return e}},y=0,h={},b="";function E(e){var t=e.match(/\d+/g).map(Number);if(Number.isFinite(t[1])&&t[1]<t[0])throw SyntaxError("Numbers out of order in "+e+" quantifier");return t}function v(e,t){if("control"===e.kind||"control"===t.kind||!isNaN(e.codePoint)&&!isNaN(t.codePoint)&&e.codePoint>t.codePoint)throw SyntaxError("Range "+e.value+"-"+t.value+" out of order in character class")}g.onParseBegin=function(e,t){b=e,y=0,h={};var r=e.lastIndexOf("/"),n=e.slice(r);n.includes("x")&&n.includes("u")?t.pushState("xu"):(n.includes("x")&&t.pushState("x"),n.includes("u")&&t.pushState("u"))},g.onShift=function(e){return("L_PAREN"===e.type||"NAMED_CAPTURE_GROUP"===e.type)&&(e.value=new String(e.value),e.value.groupNumber=++y),e};var x=function(){if(w)return T;w=1;var e={General_Category:"gc",Script:"sc",Script_Extensions:"scx"},t=s(e),r={ASCII:"ASCII",ASCII_Hex_Digit:"AHex",Alphabetic:"Alpha",Any:"Any",Assigned:"Assigned",Bidi_Control:"Bidi_C",Bidi_Mirrored:"Bidi_M",Case_Ignorable:"CI",Cased:"Cased",Changes_When_Casefolded:"CWCF",Changes_When_Casemapped:"CWCM",Changes_When_Lowercased:"CWL",Changes_When_NFKC_Casefolded:"CWKCF",Changes_When_Titlecased:"CWT",Changes_When_Uppercased:"CWU",Dash:"Dash",Default_Ignorable_Code_Point:"DI",Deprecated:"Dep",Diacritic:"Dia",Emoji:"Emoji",Emoji_Component:"Emoji_Component",Emoji_Modifier:"Emoji_Modifier",Emoji_Modifier_Base:"Emoji_Modifier_Base",Emoji_Presentation:"Emoji_Presentation",Extended_Pictographic:"Extended_Pictographic",Extender:"Ext",Grapheme_Base:"Gr_Base",Grapheme_Extend:"Gr_Ext",Hex_Digit:"Hex",IDS_Binary_Operator:"IDSB",IDS_Trinary_Operator:"IDST",ID_Continue:"IDC",ID_Start:"IDS",Ideographic:"Ideo",Join_Control:"Join_C",Logical_Order_Exception:"LOE",Lowercase:"Lower",Math:"Math",Noncharacter_Code_Point:"NChar",Pattern_Syntax:"Pat_Syn",Pattern_White_Space:"Pat_WS",Quotation_Mark:"QMark",Radical:"Radical",Regional_Indicator:"RI",Sentence_Terminal:"STerm",Soft_Dotted:"SD",Terminal_Punctuation:"Term",Unified_Ideograph:"UIdeo",Uppercase:"Upper",Variation_Selector:"VS",White_Space:"space",XID_Continue:"XIDC",XID_Start:"XIDS"},n=s(r),u={Cased_Letter:"LC",Close_Punctuation:"Pe",Connector_Punctuation:"Pc",Control:["Cc","cntrl"],Currency_Symbol:"Sc",Dash_Punctuation:"Pd",Decimal_Number:["Nd","digit"],Enclosing_Mark:"Me",Final_Punctuation:"Pf",Format:"Cf",Initial_Punctuation:"Pi",Letter:"L",Letter_Number:"Nl",Line_Separator:"Zl",Lowercase_Letter:"Ll",Mark:["M","Combining_Mark"],Math_Symbol:"Sm",Modifier_Letter:"Lm",Modifier_Symbol:"Sk",Nonspacing_Mark:"Mn",Number:"N",Open_Punctuation:"Ps",Other:"C",Other_Letter:"Lo",Other_Number:"No",Other_Punctuation:"Po",Other_Symbol:"So",Paragraph_Separator:"Zp",Private_Use:"Co",Punctuation:["P","punct"],Separator:"Z",Space_Separator:"Zs",Spacing_Mark:"Mc",Surrogate:"Cs",Symbol:"S",Titlecase_Letter:"Lt",Unassigned:"Cn",Uppercase_Letter:"Lu"},a=s(u),i={Adlam:"Adlm",Ahom:"Ahom",Anatolian_Hieroglyphs:"Hluw",Arabic:"Arab",Armenian:"Armn",Avestan:"Avst",Balinese:"Bali",Bamum:"Bamu",Bassa_Vah:"Bass",Batak:"Batk",Bengali:"Beng",Bhaiksuki:"Bhks",Bopomofo:"Bopo",Brahmi:"Brah",Braille:"Brai",Buginese:"Bugi",Buhid:"Buhd",Canadian_Aboriginal:"Cans",Carian:"Cari",Caucasian_Albanian:"Aghb",Chakma:"Cakm",Cham:"Cham",Cherokee:"Cher",Common:"Zyyy",Coptic:["Copt","Qaac"],Cuneiform:"Xsux",Cypriot:"Cprt",Cyrillic:"Cyrl",Deseret:"Dsrt",Devanagari:"Deva",Dogra:"Dogr",Duployan:"Dupl",Egyptian_Hieroglyphs:"Egyp",Elbasan:"Elba",Ethiopic:"Ethi",Georgian:"Geor",Glagolitic:"Glag",Gothic:"Goth",Grantha:"Gran",Greek:"Grek",Gujarati:"Gujr",Gunjala_Gondi:"Gong",Gurmukhi:"Guru",Han:"Hani",Hangul:"Hang",Hanifi_Rohingya:"Rohg",Hanunoo:"Hano",Hatran:"Hatr",Hebrew:"Hebr",Hiragana:"Hira",Imperial_Aramaic:"Armi",Inherited:["Zinh","Qaai"],Inscriptional_Pahlavi:"Phli",Inscriptional_Parthian:"Prti",Javanese:"Java",Kaithi:"Kthi",Kannada:"Knda",Katakana:"Kana",Kayah_Li:"Kali",Kharoshthi:"Khar",Khmer:"Khmr",Khojki:"Khoj",Khudawadi:"Sind",Lao:"Laoo",Latin:"Latn",Lepcha:"Lepc",Limbu:"Limb",Linear_A:"Lina",Linear_B:"Linb",Lisu:"Lisu",Lycian:"Lyci",Lydian:"Lydi",Mahajani:"Mahj",Makasar:"Maka",Malayalam:"Mlym",Mandaic:"Mand",Manichaean:"Mani",Marchen:"Marc",Medefaidrin:"Medf",Masaram_Gondi:"Gonm",Meetei_Mayek:"Mtei",Mende_Kikakui:"Mend",Meroitic_Cursive:"Merc",Meroitic_Hieroglyphs:"Mero",Miao:"Plrd",Modi:"Modi",Mongolian:"Mong",Mro:"Mroo",Multani:"Mult",Myanmar:"Mymr",Nabataean:"Nbat",New_Tai_Lue:"Talu",Newa:"Newa",Nko:"Nkoo",Nushu:"Nshu",Ogham:"Ogam",Ol_Chiki:"Olck",Old_Hungarian:"Hung",Old_Italic:"Ital",Old_North_Arabian:"Narb",Old_Permic:"Perm",Old_Persian:"Xpeo",Old_Sogdian:"Sogo",Old_South_Arabian:"Sarb",Old_Turkic:"Orkh",Oriya:"Orya",Osage:"Osge",Osmanya:"Osma",Pahawh_Hmong:"Hmng",Palmyrene:"Palm",Pau_Cin_Hau:"Pauc",Phags_Pa:"Phag",Phoenician:"Phnx",Psalter_Pahlavi:"Phlp",Rejang:"Rjng",Runic:"Runr",Samaritan:"Samr",Saurashtra:"Saur",Sharada:"Shrd",Shavian:"Shaw",Siddham:"Sidd",SignWriting:"Sgnw",Sinhala:"Sinh",Sogdian:"Sogd",Sora_Sompeng:"Sora",Soyombo:"Soyo",Sundanese:"Sund",Syloti_Nagri:"Sylo",Syriac:"Syrc",Tagalog:"Tglg",Tagbanwa:"Tagb",Tai_Le:"Tale",Tai_Tham:"Lana",Tai_Viet:"Tavt",Takri:"Takr",Tamil:"Taml",Tangut:"Tang",Telugu:"Telu",Thaana:"Thaa",Thai:"Thai",Tibetan:"Tibt",Tifinagh:"Tfng",Tirhuta:"Tirh",Ugaritic:"Ugar",Vai:"Vaii",Warang_Citi:"Wara",Yi:"Yiii",Zanabazar_Square:"Zanb"},o=s(i);function s(e){var t={};for(var r in e)if(e.hasOwnProperty(r)){var n=e[r];if(Array.isArray(n))for(var u=0;u<n.length;u++)t[n[u]]=r;else t[n]=r}return t}function d(e){return u.hasOwnProperty(e)||a.hasOwnProperty(e)}function l(e){return i.hasOwnProperty(e)||o.hasOwnProperty(e)}return T={isAlias:function(e){return t.hasOwnProperty(e)||n.hasOwnProperty(e)},isValidName:function(u){return e.hasOwnProperty(u)||t.hasOwnProperty(u)||r.hasOwnProperty(u)||n.hasOwnProperty(u)},isValidValue:function(e,t){var r,n;return"General_Category"===(r=e)||"gc"==r?d(t):("Script"===(n=e)||"Script_Extensions"===n||"sc"===n||"scx"===n)&&l(t)},isGeneralCategoryValue:d,isScriptCategoryValue:l,isBinaryPropertyName:function(e){return r.hasOwnProperty(e)||n.hasOwnProperty(e)},getCanonicalName:function(e){return t.hasOwnProperty(e)?t[e]:n.hasOwnProperty(e)?n[e]:null},getCanonicalValue:function(e){return a.hasOwnProperty(e)?a[e]:o.hasOwnProperty(e)?o[e]:n.hasOwnProperty(e)?n[e]:null},NON_BINARY_PROP_NAMES_TO_ALIASES:e,NON_BINARY_ALIASES_TO_PROP_NAMES:t,BINARY_PROP_NAMES_TO_ALIASES:r,BINARY_ALIASES_TO_PROP_NAMES:n,GENERAL_CATEGORY_VALUE_TO_ALIASES:u,GENERAL_CATEGORY_VALUE_ALIASES_TO_VALUES:a,SCRIPT_VALUE_TO_ALIASES:i,SCRIPT_VALUE_ALIASES_TO_VALUE:o}}();function D(t,r,n){var u=void 0,a=void 0;switch(r){case"decimal":u=String.fromCodePoint(a=Number(t.slice(1)));break;case"oct":u=String.fromCodePoint(a=parseInt(t.slice(1),8));break;case"hex":case"unicode":if(t.lastIndexOf("\\u")>0){var i=e(t.split("\\u").slice(1),2),o=i[0],s=i[1];u=String.fromCodePoint(a=((o=parseInt(o,16))-55296)*1024+((s=parseInt(s,16))-56320)+65536)}else{if((a=parseInt(t.slice(2).replace("{",""),16))>1114111)throw SyntaxError("Bad character escape sequence: "+t);u=String.fromCodePoint(a)}break;case"meta":switch(t){case"\\t":a=(u=" ").codePointAt(0);break;case"\\n":a=(u="\n").codePointAt(0);break;case"\\r":a=(u="\r").codePointAt(0);break;case"\\v":a=(u="\v").codePointAt(0);break;case"\\f":a=(u="\f").codePointAt(0);break;case"\\b":a=(u="\b").codePointAt(0);case"\\0":u="\0",a=0;case".":u=".",a=NaN;break;default:a=NaN}break;case"simple":a=(u=t).codePointAt(0)}return B({type:"Char",value:t,kind:r,symbol:u,codePoint:a},n)}var A=/^\\u[0-9a-fA-F]{4}/,S=/^\\u\{[0-9a-fA-F]{1,}\}/,C=/\\u\{[0-9a-fA-F]{1,}\}/;function k(e,t){if(C.test(e)&&"u"!==t&&"xu"!==t&&"u_class"!==t)throw SyntaxError('invalid group Unicode name "'+e+'", use `u` flag.');return e}var P=/\\u(?:([dD][89aAbB][0-9a-fA-F]{2})\\u([dD][c-fC-F][0-9a-fA-F]{2})|([dD][89aAbB][0-9a-fA-F]{2})|([dD][c-fC-F][0-9a-fA-F]{2})|([0-9a-ce-fA-CE-F][0-9a-fA-F]{3}|[dD][0-7][0-9a-fA-F]{2})|\{(0*(?:[0-9a-fA-F]{1,5}|10[0-9a-fA-F]{4}))\})/;function I(e){return e.replace(RegExp(P,"g"),function(e,t,r,n,u,a,i){return t?String.fromCodePoint(parseInt(t,16),parseInt(r,16)):n?String.fromCodePoint(parseInt(n,16)):u?String.fromCodePoint(parseInt(u,16)):a?String.fromCodePoint(parseInt(a,16)):i?String.fromCodePoint(parseInt(i,16)):e})}function B(e,t){return n.options.captureLocations&&(e.loc={source:b.slice(t.startOffset,t.endOffset),start:{line:t.startLine,column:t.startColumn,offset:t.startOffset},end:{line:t.endLine,column:t.endColumn,offset:t.endOffset}}),e}function O(e,t){return n.options.captureLocations?{startOffset:e.startOffset,endOffset:t.endOffset,startLine:e.startLine,endLine:t.endLine,startColumn:e.startColumn,endColumn:t.endColumn}:null}function R(e){"$"===e.type&&N(),c.throwUnexpectedToken(e.value,e.startLine,e.startColumn)}function N(){throw SyntaxError("Unexpected end of input.")}return _=g}(),t=e.parse.bind(e);return e.parse=function(e,r){return t(""+e,r)},e.setOptions({captureLocations:!1}),k=e}function aR(){if(B)return I;B=1;var e=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),t="expressions",r="expression",n=function(){function n(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");this.node=e,this.parentPath=t,this.parent=t?t.node:null,this.property=r,this.index=u}return e(n,[{key:"_enforceProp",value:function(e){if(!this.node.hasOwnProperty(e))throw Error("Node of type "+this.node.type+" doesn't have \""+e+'" collection.')}},{key:"setChild",value:function(e){var u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=void 0;return null!=u?(a||(a=t),this._enforceProp(a),this.node[a][u]=e,i=n.getForNode(e,this,a,u)):(a||(a=r),this._enforceProp(a),this.node[a]=e,i=n.getForNode(e,this,a,null)),i}},{key:"appendChild",value:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;r||(r=t),this._enforceProp(r);var n=this.node[r].length;return this.setChild(e,n,r)}},{key:"insertChildAt",value:function(e,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t;this._enforceProp(u),this.node[u].splice(r,0,e),r<=n.getTraversingIndex()&&n.updateTraversingIndex(1),this._rebuildIndex(this.node,u)}},{key:"remove",value:function(){if(!this.isRemoved()&&(n.registry.delete(this.node),this.node=null,this.parent)){if(null!==this.index){this.parent[this.property].splice(this.index,1),this.index<=n.getTraversingIndex()&&n.updateTraversingIndex(-1),this._rebuildIndex(this.parent,this.property),this.index=null,this.property=null;return}delete this.parent[this.property],this.property=null}}},{key:"_rebuildIndex",value:function(e,t){for(var r=n.getForNode(e),u=0;u<e[t].length;u++)n.getForNode(e[t][u],r,t,u).index=u}},{key:"isRemoved",value:function(){return null===this.node}},{key:"replace",value:function(e){return(n.registry.delete(this.node),this.node=e,this.parent)?(null!==this.index?this.parent[this.property][this.index]=e:this.parent[this.property]=e,n.getForNode(e,this.parentPath,this.property,this.index)):null}},{key:"update",value:function(e){Object.assign(this.node,e)}},{key:"getParent",value:function(){return this.parentPath}},{key:"getChild",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.node.expressions?n.getForNode(this.node.expressions[e],this,t,e):this.node.expression&&0==e?n.getForNode(this.node.expression,this,r):null}},{key:"hasEqualSource",value:function(e){return JSON.stringify(this.node,u)===JSON.stringify(e.node,u)}},{key:"jsonEncode",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.format,r=e.useLoc;return JSON.stringify(this.node,r?null:u,t)}},{key:"getPreviousSibling",value:function(){return this.parent&&null!=this.index?n.getForNode(this.parent[this.property][this.index-1],n.getForNode(this.parent),this.property,this.index-1):null}},{key:"getNextSibling",value:function(){return this.parent&&null!=this.index?n.getForNode(this.parent[this.property][this.index+1],n.getForNode(this.parent),this.property,this.index+1):null}}],[{key:"getForNode",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:-1;if(!e)return null;n.registry.has(e)||n.registry.set(e,new n(e,t,r,-1==u?null:u));var a=n.registry.get(e);return null!==t&&(a.parentPath=t,a.parent=a.parentPath.node),null!==r&&(a.property=r),u>=0&&(a.index=u),a}},{key:"initRegistry",value:function(){n.registry||(n.registry=new Map),n.registry.clear()}},{key:"updateTraversingIndex",value:function(e){return n.traversingIndexStack[n.traversingIndexStack.length-1]+=e}},{key:"getTraversingIndex",value:function(){return n.traversingIndexStack[n.traversingIndexStack.length-1]}}]),n}();function u(e,t){if("loc"!==e)return t}return n.initRegistry(),n.traversingIndexStack=[],I=n}function aN(){if(R)return O;R=1;var e=aR();return O={traverse:function(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{asNodes:!1};function u(t,r,n,u){var a=e.getForNode(r);return e.getForNode(t,a,n,u)}Array.isArray(r)||(r=[r]),r=r.filter(function(e){return"function"!=typeof e.shouldRun||e.shouldRun(t)}),e.initRegistry(),r.forEach(function(e){"function"==typeof e.init&&e.init(t)}),function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.pre,u=r.post,a=r.skipProperty;!function t(r,i,o,s){if(r&&"string"==typeof r.type){var d=void 0;if(n&&(d=n(r,i,o,s)),!1!==d){for(var l in i&&i[o]&&(r=isNaN(s)?i[o]:i[o][s]),r)if(r.hasOwnProperty(l)){if(a?a(l,r):"$"===l[0])continue;var c=r[l];if(Array.isArray(c)){var f=0;for(e.traversingIndexStack.push(f);f<c.length;)t(c[f],r,l,f),f=e.updateTraversingIndex(1);e.traversingIndexStack.pop()}else t(c,r,l)}}u&&u(r,i,o,s)}}(t,null)}(t,{pre:function(e,t,a,i){var o=void 0;n.asNodes||(o=u(e,t,a,i));var s=!0,d=!1,l=void 0;try{for(var c,f=r[Symbol.iterator]();!(s=(c=f.next()).done);s=!0){var p=c.value;if("function"==typeof p["*"])if(o){if(!o.isRemoved()){var m=p["*"](o);if(!1===m)return!1}}else p["*"](e,t,a,i);var g=void 0;if("function"==typeof p[e.type]?g=p[e.type]:"object"==typeof p[e.type]&&"function"==typeof p[e.type].pre&&(g=p[e.type].pre),g)if(o){if(!o.isRemoved()){var y=g.call(p,o);if(!1===y)return!1}}else g.call(p,e,t,a,i)}}catch(e){d=!0,l=e}finally{try{!s&&f.return&&f.return()}finally{if(d)throw l}}},post:function(e,t,a,i){if(e){var o=void 0;n.asNodes||(o=u(e,t,a,i));var s=!0,d=!1,l=void 0;try{for(var c,f=r[Symbol.iterator]();!(s=(c=f.next()).done);s=!0){var p=c.value,m=void 0;if("object"==typeof p[e.type]&&"function"==typeof p[e.type].post&&(m=p[e.type].post),m)if(o){if(!o.isRemoved()){var g=m.call(p,o);if(!1===g)return!1}}else m.call(p,e,t,a,i)}}catch(e){d=!0,l=e}finally{try{!s&&f.return&&f.return()}finally{if(d)throw l}}}},skipProperty:function(e){return"loc"===e}})}}}function aL(){if(L)return N;L=1;var e=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),t=aB(),r=aO(),n=aN(),u=function(){function r(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");this._ast=e,this._source=null,this._string=null,this._regexp=null,this._extra=t}return e(r,[{key:"getAST",value:function(){return this._ast}},{key:"setExtra",value:function(e){this._extra=e}},{key:"getExtra",value:function(){return this._extra}},{key:"toRegExp",value:function(){return this._regexp||(this._regexp=new RegExp(this.getSource(),this._ast.flags)),this._regexp}},{key:"getSource",value:function(){return this._source||(this._source=t.generate(this._ast.body)),this._source}},{key:"getFlags",value:function(){return this._ast.flags}},{key:"toString",value:function(){return this._string||(this._string=t.generate(this._ast)),this._string}}]),r}();return N={TransformResult:u,transform:function(e,t){var a=e;return e instanceof RegExp&&(e=""+e),"string"==typeof e&&(a=r.parse(e,{captureLocations:!0})),n.traverse(a,t),new u(a)}}}function aj(){return X?H:(X=1,H={disjunctionToList:function e(t){if("Disjunction"!==t.type)throw TypeError('Expected "Disjunction" node, got "'+t.type+'"');var r=[];return t.left&&"Disjunction"===t.left.type?r.push.apply(r,(function(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r})(e(t.left)).concat([t.right])):r.push(t.left,t.right),r},listToDisjunction:function(e){return e.reduce(function(e,t){return{type:"Disjunction",left:e,right:t}})},increaseQuantifierByOne:function(e){"*"===e.kind?e.kind="+":"+"===e.kind?(e.kind="Range",e.from=2,delete e.to):"?"===e.kind?(e.kind="Range",e.from=1,e.to=2):"Range"===e.kind&&(e.from+=1,e.to&&(e.to+=1))}})}function aM(){return ew?eT:(ew=1,eT={EPSILON:"ε",EPSILON_CLOSURE:"ε*"})}function a$(){if(eF)return e_;eF=1;var e=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var r=[],n=!0,u=!1,a=void 0;try{for(var i,o=e[Symbol.iterator]();!(n=(i=o.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){u=!0,a=e}finally{try{!n&&o.return&&o.return()}finally{if(u)throw a}}return r}(e,t);throw TypeError("Invalid attempt to destructure non-iterable instance")},t=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),r=aM(),n=r.EPSILON,u=r.EPSILON_CLOSURE;return e_=function(){function r(e,t){if(!(this instanceof r))throw TypeError("Cannot call a class as a function");this.in=e,this.out=t}return t(r,[{key:"matches",value:function(e){return this.in.matches(e)}},{key:"getAlphabet",value:function(){if(!this._alphabet){this._alphabet=new Set;var e=this.getTransitionTable();for(var t in e){var r=e[t];for(var n in r)n!==u&&this._alphabet.add(n)}}return this._alphabet}},{key:"getAcceptingStates",value:function(){return this._acceptingStates||this.getTransitionTable(),this._acceptingStates}},{key:"getAcceptingStateNumbers",value:function(){if(!this._acceptingStateNumbers){this._acceptingStateNumbers=new Set;var e=!0,t=!1,r=void 0;try{for(var n,u=this.getAcceptingStates()[Symbol.iterator]();!(e=(n=u.next()).done);e=!0){var a=n.value;this._acceptingStateNumbers.add(a.number)}}catch(e){t=!0,r=e}finally{try{!e&&u.return&&u.return()}finally{if(t)throw r}}}return this._acceptingStateNumbers}},{key:"getTransitionTable",value:function(){var t=this;if(!this._transitionTable){this._transitionTable={},this._acceptingStates=new Set;var r=new Set,a=new Set;!function n(u){if(!r.has(u)){r.add(u),u.number=r.size,t._transitionTable[u.number]={},u.accepting&&t._acceptingStates.add(u);var i=u.getTransitions(),o=!0,s=!1,d=void 0;try{for(var l,c=i[Symbol.iterator]();!(o=(l=c.next()).done);o=!0){var f=l.value,p=e(f,2),m=p[0],g=p[1],y=[];a.add(m);var h=!0,b=!1,E=void 0;try{for(var v,x=g[Symbol.iterator]();!(h=(v=x.next()).done);h=!0){var D=v.value;n(D),y.push(D.number)}}catch(e){b=!0,E=e}finally{try{!h&&x.return&&x.return()}finally{if(b)throw E}}t._transitionTable[u.number][m]=y}}catch(e){s=!0,d=e}finally{try{!o&&c.return&&c.return()}finally{if(s)throw d}}}}(this.in),r.forEach(function(e){delete t._transitionTable[e.number][n],t._transitionTable[e.number][u]=[].concat(function(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}(e.getEpsilonClosure())).map(function(e){return e.number})})}return this._transitionTable}}]),r}()}function aU(){if(eM)return ej;eM=1;var e=a$(),t=function(){if(eL)return eN;eL=1;var e=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),t=function(){if(eR)return eO;eR=1;var e=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}();return eO=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.accepting;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");this._transitions=new Map,this.accepting=void 0!==r&&r}return e(t,[{key:"getTransitions",value:function(){return this._transitions}},{key:"addTransition",value:function(e,t){return this.getTransitionsOnSymbol(e).add(t),this}},{key:"getTransitionsOnSymbol",value:function(e){var t=this._transitions.get(e);return t||(t=new Set,this._transitions.set(e,t)),t}}]),t}()}(),r=aM().EPSILON;return eN=function(t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function, not "+typeof t);function n(){if(!(this instanceof n))throw TypeError("Cannot call a class as a function");var e=(n.__proto__||Object.getPrototypeOf(n)).apply(this,arguments);if(!this)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e&&("object"==typeof e||"function"==typeof e)?e:this}return n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t),e(n,[{key:"matches",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Set;if(t.has(this))return!1;if(t.add(this),0===e.length){if(this.accepting)return!0;var n=!0,u=!1,a=void 0;try{for(var i,o=this.getTransitionsOnSymbol(r)[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)if(i.value.matches("",t))return!0}catch(e){u=!0,a=e}finally{try{!n&&o.return&&o.return()}finally{if(u)throw a}}return!1}var s=e[0],d=e.slice(1),l=this.getTransitionsOnSymbol(s),c=!0,f=!1,p=void 0;try{for(var m,g=l[Symbol.iterator]();!(c=(m=g.next()).done);c=!0)if(m.value.matches(d))return!0}catch(e){f=!0,p=e}finally{try{!c&&g.return&&g.return()}finally{if(f)throw p}}var y=!0,h=!1,b=void 0;try{for(var E,v=this.getTransitionsOnSymbol(r)[Symbol.iterator]();!(y=(E=v.next()).done);y=!0)if(E.value.matches(e,t))return!0}catch(e){h=!0,b=e}finally{try{!y&&v.return&&v.return()}finally{if(h)throw b}}return!1}},{key:"getEpsilonClosure",value:function(){var e=this;return this._epsilonClosure||function(){var t=e.getTransitionsOnSymbol(r),n=e._epsilonClosure=new Set;n.add(e);var u=!0,a=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(u=(o=s.next()).done);u=!0){var d=o.value;n.has(d)||(n.add(d),d.getEpsilonClosure().forEach(function(e){return n.add(e)}))}}catch(e){a=!0,i=e}finally{try{!u&&s.return&&s.return()}finally{if(a)throw i}}}(),this._epsilonClosure}}]),n}(t)}(),r=aM().EPSILON;function n(r){var n=new t,u=new t({accepting:!0});return new e(n.addTransition(r,u),u)}return ej={alt:function(t){for(var n=arguments.length,u=Array(n>1?n-1:0),a=1;a<n;a++)u[a-1]=arguments[a];var i=!0,o=!1,s=void 0;try{for(var d,l=u[Symbol.iterator]();!(i=(d=l.next()).done);i=!0){var c,f=d.value;c=t,c.out.accepting=!1,f.out.accepting=!0,c.out.addTransition(r,f.in),t=new e(c.in,f.out)}}catch(e){o=!0,s=e}finally{try{!i&&l.return&&l.return()}finally{if(o)throw s}}return t},char:n,e:function(){return n(r)},or:function(n){for(var u=arguments.length,a=Array(u>1?u-1:0),i=1;i<u;i++)a[i-1]=arguments[i];var o=!0,s=!1,d=void 0;try{for(var l,c=a[Symbol.iterator]();!(o=(l=c.next()).done);o=!0){var f=l.value;n=function(n,u){var a=new t,i=new t;return a.addTransition(r,n.in),a.addTransition(r,u.in),i.accepting=!0,n.out.accepting=!1,u.out.accepting=!1,n.out.addTransition(r,i),u.out.addTransition(r,i),new e(a,i)}(n,f)}}catch(e){s=!0,d=e}finally{try{!o&&c.return&&c.return()}finally{if(s)throw d}}return n},rep:function(e){return e.in.addTransition(r,e.out),e.out.addTransition(r,e.in),e},repExplicit:function(n){var u=new t,a=new t({accepting:!0});return u.addTransition(r,n.in),u.addTransition(r,a),n.out.accepting=!1,n.out.addTransition(r,a),a.addTransition(r,n.in),new e(u,a)},plusRep:function(e){return e.out.addTransition(r,e.in),e},questionRep:function(e){return e.in.addTransition(r,e.out),e}}}var aq=rK(eK?eG:(eK=1,eG=function(){if(eZ)return eV;eZ=1;var e=function(){if(M)return j;M=1;var e=A?D:(A=1,D={dotAll:h?y:(h=1,y={_hasUFlag:!1,shouldRun:function(e){return!!e.flags.includes("s")&&(e.flags=e.flags.replace("s",""),this._hasUFlag=e.flags.includes("u"),!0)},Char:function(e){var t=e.node;if("meta"===t.kind&&"."===t.value){var r="\\uFFFF",n="￿";this._hasUFlag&&(r="\\u{10FFFF}",n="\uDBFF\uDFFF"),e.replace({type:"CharacterClass",expressions:[{type:"ClassRange",from:{type:"Char",value:"\\0",kind:"decimal",symbol:"\0"},to:{type:"Char",value:r,kind:"unicode",symbol:n}}]})}}}),namedCapturingGroups:E?b:(E=1,b={_groupNames:{},init:function(){this._groupNames={}},getExtra:function(){return this._groupNames},Group:function(e){var t=e.node;t.name&&(this._groupNames[t.name]=t.number,delete t.name,delete t.nameRaw)},Backreference:function(e){var t=e.node;"name"===t.kind&&(t.kind="number",t.reference=t.number,delete t.referenceRaw)}}),xFlag:x?v:(x=1,v={RegExp:function(e){var t=e.node;t.flags.includes("x")&&(t.flags=t.flags.replace("x",""))}})}),t=aL();return j={transform:function(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],u=n.length>0?n:Object.keys(e),a=void 0,i={};return u.forEach(function(n){if(!e.hasOwnProperty(n))throw Error("Unknown compat-transform: "+n+". Available transforms are: "+Object.keys(e).join(", "));var u=e[n];r=(a=t.transform(r,u)).getAST(),"function"==typeof u.getExtra&&(i[n]=u.getExtra())}),a.setExtra(i),a}}}(),t=aB(),r=function(){if(eC)return eS;eC=1;var e=U?$:(U=1,$=function e(t){if(null===t||"object"!=typeof t)return t;var r=void 0;for(var n in r=Array.isArray(t)?[]:{},t)r[n]=e(t[n]);return r}),t=aO(),r=aL(),n=eA?eD:(eA=1,eD=new Map([["charSurrogatePairToSingleUnicode",z?q:(z=1,q={shouldRun:function(e){return e.flags.includes("u")},Char:function(e){var t=e.node;"unicode"!==t.kind||!t.isSurrogatePair||isNaN(t.codePoint)||(t.value="\\u{"+t.codePoint.toString(16)+"}",delete t.isSurrogatePair)}})],["charCodeToSimpleChar",Y?W:(Y=1,W={Char:function(e){var t=e.node,r=e.parent;if(!isNaN(t.codePoint)&&"simple"!==t.kind&&("ClassRange"!==r.type||(u=(n=r).from,a=n.to,u.codePoint>=48&&u.codePoint<=57&&a.codePoint>=48&&a.codePoint<=57||u.codePoint>=65&&u.codePoint<=90&&a.codePoint>=65&&a.codePoint<=90||u.codePoint>=97&&u.codePoint<=122&&a.codePoint>=97&&a.codePoint<=122))){if((i=t.codePoint)>=32&&i<=126){var n,u,a,i,o,s,d=String.fromCodePoint(t.codePoint),l={type:"Char",kind:"simple",value:d,symbol:d,codePoint:t.codePoint};o=d,("ClassRange"===(s=r.type)||"CharacterClass"===s?/[\]\\^-]/.test(o):/[*[()+?^$./\\|{}]/.test(o))&&(l.escaped=!0),e.replace(l)}}}})],["charCaseInsensitiveLowerCaseTransform",Z?V:(Z=1,V={_AZClassRanges:null,_hasUFlag:!1,init:function(e){this._AZClassRanges=new Set,this._hasUFlag=e.flags.includes("u")},shouldRun:function(e){return e.flags.includes("i")},Char:function(e){var t,r,n,u=e.node,a=e.parent;if(!isNaN(u.codePoint)&&(this._hasUFlag||!(u.codePoint>=4096))){if("ClassRange"===a.type){if(!this._AZClassRanges.has(a)&&(r=(t=a).from,n=t.to,!(r.codePoint>=65)||!(r.codePoint<=90)||!(n.codePoint>=65)||!(n.codePoint<=90)))return;this._AZClassRanges.add(a)}var i=u.symbol.toLowerCase();i!==u.symbol&&(u.value=function(e,t){var r=e.codePointAt(0);if("decimal"===t.kind)return"\\"+r;if("oct"===t.kind)return"\\0"+r.toString(8);if("hex"===t.kind)return"\\x"+r.toString(16);if("unicode"===t.kind)if(t.isSurrogatePair){var n,u={lead:(Math.floor(((n=r)-65536)/1024)+55296).toString(16),trail:((n-65536)%1024+56320).toString(16)},a=u.lead,i=u.trail;return"\\u"+"0".repeat(4-a.length)+a+"\\u"+"0".repeat(4-i.length)+i}else{if(t.value.includes("{"))return"\\u{"+r.toString(16)+"}";var o=r.toString(16);return"\\u"+"0".repeat(4-o.length)+o}return e}(i,u),u.symbol=i,u.codePoint=i.codePointAt(0))}}})],["charClassRemoveDuplicates",K?G:(K=1,G={CharacterClass:function(e){for(var t=e.node,r={},n=0;n<t.expressions.length;n++){var u=e.getChild(n),a=u.jsonEncode();r.hasOwnProperty(a)&&(u.remove(),n--),r[a]=!0}}})],["quantifiersMerge",function(){if(Q)return J;Q=1;var e=aj().increaseQuantifierByOne;function t(e){return e.greedy&&("+"===e.kind||"*"===e.kind||"Range"===e.kind&&!e.to)}function r(e){var t=void 0,r=void 0;return"*"===e.kind?t=0:"+"===e.kind?t=1:"?"===e.kind?(t=0,r=1):(t=e.from,e.to&&(r=e.to)),{from:t,to:r}}return J={Repetition:function(n){var u=n.node;if("Alternative"===n.parent.type&&n.index){var a=n.getPreviousSibling();if(a)if("Repetition"===a.node.type){if(!a.getChild().hasEqualSource(n.getChild()))return;var i=r(a.node.quantifier),o=i.from,s=i.to,d=r(u.quantifier),l=d.from,c=d.to;if(a.node.quantifier.greedy!==u.quantifier.greedy&&!t(a.node.quantifier)&&!t(u.quantifier))return;u.quantifier.kind="Range",u.quantifier.from=o+l,s&&c?u.quantifier.to=s+c:delete u.quantifier.to,(t(a.node.quantifier)||t(u.quantifier))&&(u.quantifier.greedy=!0),a.remove()}else{if(!a.hasEqualSource(n.getChild()))return;e(u.quantifier),a.remove()}}}}}()],["quantifierRangeToSymbol",et?ee:(et=1,ee={Quantifier:function(e){var t,r,n,u;"Range"===e.node.kind&&(0!==(t=e.node).from||t.to||(t.kind="*",delete t.from),1!==(r=e.node).from||r.to||(r.kind="+",delete r.from),1===(u=(n=e).node).from&&1===u.to&&n.parentPath.replace(n.parentPath.node.expression))}})],["charClassClassrangesToChars",en?er:(en=1,er={ClassRange:function(e){var t=e.node;t.from.codePoint===t.to.codePoint?e.replace(t.from):t.from.codePoint===t.to.codePoint-1&&(e.getParent().insertChildAt(t.to,e.index+1),e.replace(t.from))}})],["charClassToMeta",function(){if(ea)return eu;function e(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}ea=1,eu={_hasIFlag:!1,_hasUFlag:!1,init:function(e){this._hasIFlag=e.flags.includes("i"),this._hasUFlag=e.flags.includes("u")},CharacterClass:function(e){var r,a,i,o,s,d,l,c,f,p,m;(r=e).node.expressions.forEach(function(e,t){var n;"ClassRange"===(n=e).type&&"0"===n.from.value&&"9"===n.to.value&&r.getChild(t).replace({type:"Char",value:"\\d",kind:"meta"})}),a=e,i=this._hasIFlag,o=this._hasUFlag,s=a.node,d=null,l=null,c=null,f=null,p=null,m=null,s.expressions.forEach(function(e,t){var r,s,g;n(e,"\\d")?d=a.getChild(t):"ClassRange"===(r=e).type&&"a"===r.from.value&&"z"===r.to.value?l=a.getChild(t):"ClassRange"===(s=e).type&&"A"===s.from.value&&"Z"===s.to.value?c=a.getChild(t):"Char"===(g=e).type&&"_"===g.value&&"simple"===g.kind?f=a.getChild(t):i&&o&&u(e,383)?p=a.getChild(t):i&&o&&u(e,8490)&&(m=a.getChild(t))}),d&&(l&&c||i&&(l||c))&&f&&(!o||!i||p&&m)&&(d.replace({type:"Char",value:"\\w",kind:"meta"}),l&&l.remove(),c&&c.remove(),f.remove(),p&&p.remove(),m&&m.remove()),function(e){var r=e.node;if(!(r.expressions.length<t.length)&&t.every(function(e){return r.expressions.some(function(t){return e(t)})})){var u=r.expressions.find(function(e){return n(e,"\\n")});u.value="\\s",u.symbol=void 0,u.codePoint=NaN,r.expressions.map(function(r,n){return t.some(function(e){return e(r)})?e.getChild(n):void 0}).filter(Boolean).forEach(function(e){return e.remove()})}}(e)}};var t=[function(e){return r(e," ")}].concat(e(["\\f","\\n","\\r","\\t","\\v"].map(function(e){return function(t){return n(t,e)}})),e([160,5760,8232,8233,8239,8287,12288,65279].map(function(e){return function(t){return u(t,e)}})),[function(e){return"ClassRange"===e.type&&u(e.from,8192)&&u(e.to,8202)}]);function r(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"simple";return"Char"===e.type&&e.value===t&&e.kind===r}function n(e,t){return r(e,t,"meta")}function u(e,t){return"Char"===e.type&&"unicode"===e.kind&&e.codePoint===t}return eu}()],["charClassToSingleChar",eo?ei:(eo=1,ei={CharacterClass:function(e){var t=e.node;if(1===t.expressions.length&&function(e){var t=e.parent,r=e.index;if("Alternative"!==t.type)return!0;var n=t.expressions[r-1];return null==n||("Backreference"!==n.type||"number"!==n.kind)&&("Char"!==n.type||"decimal"!==n.kind)}(e)&&"Char"===(r=t.expressions[0]).type&&"\\b"!==r.value){var r,n,u,a,i=t.expressions[0],o=i.value,s=i.kind,d=i.escaped;if(t.negative){if(n=o,!/^\\[dwsDWS]$/.test(n))return;u=o,o=/[dws]/.test(u)?u.toUpperCase():u.toLowerCase()}e.replace({type:"Char",value:o,kind:s,escaped:d||(a=o,/[*[()+?$./{}|]/.test(a))})}}})],["charEscapeUnescape",function(){if(ed)return es;function e(e,t,r){for(var n=e,u=(r?n>=0:n<t.expressions.length)&&t.expressions[n];u&&"Char"===u.type&&"simple"===u.kind&&!u.escaped&&/\d/.test(u.value);)r?n--:n++,u=(r?n>=0:n<t.expressions.length)&&t.expressions[n];return Math.abs(e-n)}function t(e,t){return e&&"Char"===e.type&&"simple"===e.kind&&!e.escaped&&e.value===t}return ed=1,es={_hasXFlag:!1,init:function(e){this._hasXFlag=e.flags.includes("x")},Char:function(r){var n,u,a,i,o,s,d,l,c,f,p,m,g=r.node;!g.escaped||(n=r,u=this._hasXFlag,a=n.node.value,i=n.index,"CharacterClass"!==(o=n.parent).type&&"ClassRange"!==o.type?(s=a,d=i,l=o,c=u,"{"===s?function(r,n){if(null==r)return!1;var u=e(r+1,n),a=r+u+1,i=a<n.expressions.length&&n.expressions[a];if(u){if(t(i,"}"))return!0;if(t(i,","))return u=e(a+1,n),t(i=(a=a+u+1)<n.expressions.length&&n.expressions[a],"}")}return!1}(d,l):"}"===s?function(r,n){if(null==r)return!1;var u=e(r-1,n,!0),a=r-u-1,i=a>=0&&n.expressions[a];return!!(u&&t(i,"{"))||!!t(i,",")&&(u=e(a-1,n,!0),i=(a=a-u-1)<n.expressions.length&&n.expressions[a],u&&t(i,"{"))}(d,l):!!(c&&/[ #]/.test(s))||/[*[()+?^$./\\|]/.test(s)):(f=a,p=i,m=o,"^"===f?0===p&&!m.negative:"-"===f||/[\]\\]/.test(f)))||delete g.escaped}}}()],["charClassClassrangesMerge",function(){if(ec)return el;function e(e,u){var a=t(e),i=t(u);if(a===i){if("ClassRange"===e.type&&"ClassRange"!==u.type)return -1;if("ClassRange"===u.type&&"ClassRange"!==e.type)return 1;if("ClassRange"===e.type&&"ClassRange"===u.type)return t(e.to)-t(u.to);if(r(e)&&r(u)||n(e)&&n(u))return e.value<u.value?-1:1}return a-i}function t(e){return"Char"===e.type?"-"===e.value||"control"===e.kind?1/0:"meta"===e.kind&&isNaN(e.codePoint)?-1:e.codePoint:e.from.codePoint}function r(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return"Char"===e.type&&"meta"===e.kind&&(t?e.value===t:/^\\[dws]$/i.test(e.value))}function n(e){return"Char"===e.type&&"control"===e.kind}function u(e){return 9===e.codePoint||10===e.codePoint||11===e.codePoint||12===e.codePoint||13===e.codePoint||32===e.codePoint||160===e.codePoint||5760===e.codePoint||e.codePoint>=8192&&e.codePoint<=8202||8232===e.codePoint||8233===e.codePoint||8239===e.codePoint||8287===e.codePoint||12288===e.codePoint||65279===e.codePoint}function a(e){return e.codePoint>=48&&e.codePoint<=57}function i(e,t){return a(e)||e.codePoint>=65&&e.codePoint<=90||e.codePoint>=97&&e.codePoint<=122||"_"===e.value||t&&(383===e.codePoint||8490===e.codePoint)}function o(e){return e&&"Char"===e.type&&!isNaN(e.codePoint)&&(i(e,!1)||"unicode"===e.kind||"hex"===e.kind||"oct"===e.kind||"decimal"===e.kind)}return ec=1,el={_hasIUFlags:!1,init:function(e){this._hasIUFlags=e.flags.includes("i")&&e.flags.includes("u")},CharacterClass:function(t){var n=t.node.expressions,s=[];n.forEach(function(e){r(e)&&s.push(e.value)}),n.sort(e);for(var d=0;d<n.length;d++){var l,c,f=n[d];if(function(e,t,n){for(var o=0;o<t.length;o++)if(function e(t,n,o){return"ClassRange"===t.type?e(t.from,n,o)&&e(t.to,n,o):!!("\\S"===n&&(r(t,"\\w")||r(t,"\\d"))||"\\D"===n&&(r(t,"\\W")||r(t,"\\s"))||"\\w"===n&&r(t,"\\d")||"\\W"===n&&r(t,"\\s"))||!("Char"!==t.type||isNaN(t.codePoint))&&("\\s"===n?u(t):"\\S"===n?!u(t):"\\d"===n?a(t):"\\D"===n?!a(t):"\\w"===n?i(t,o):"\\W"===n&&!i(t,o))}(e,t[o],n))return!0;return!1}(f,s,this._hasIUFlags)||function(e,t){if(t&&"ClassRange"===t.type){if(function e(t,r){return!("Char"===t.type&&isNaN(t.codePoint))&&("ClassRange"===t.type?e(t.from,r)&&e(t.to,r):t.codePoint>=r.from.codePoint&&t.codePoint<=r.to.codePoint)}(e,t))return!0;else if(o(e)&&t.to.codePoint===e.codePoint-1)return t.to=e,!0;else if("ClassRange"===e.type&&e.from.codePoint<=t.to.codePoint+1&&e.to.codePoint>=t.from.codePoint-1)return e.from.codePoint<t.from.codePoint&&(t.from=e.from),e.to.codePoint>t.to.codePoint&&(t.to=e.to),!0}return!1}(f,n[d-1])||(l=f,(c=n[d+1])&&"ClassRange"===c.type&&o(l)&&c.from.codePoint===l.codePoint+1&&(c.from=l,1)))n.splice(d,1),d--;else{var p=function(e,t,r){if(!o(e))return 0;for(var n=0;t>0;){var u=r[t],a=r[t-1];if(o(a)&&a.codePoint===u.codePoint-1)n++,t--;else break}return n>1?(r[t]={type:"ClassRange",from:r[t],to:e},n):0}(f,d,n);n.splice(d-p+1,p),d-=p}}}}}()],["disjunctionRemoveDuplicates",function(){if(ep)return ef;ep=1;var e=aR(),t=aj(),r=t.disjunctionToList,n=t.listToDisjunction;return ef={Disjunction:function(t){var u=t.node,a={},i=r(u).filter(function(t){var r=t?e.getForNode(t).jsonEncode():"null";return!a.hasOwnProperty(r)&&(a[r]=t,!0)});t.replace(n(i))}}}()],["groupSingleCharsToCharClass",function(){if(eg)return em;eg=1;var e={RegExp:function(e,t){e.node.body=t},Group:function(e,t){var r=e.node;r.capturing?r.expression=t:e.replace(t)}};return em={Disjunction:function(t){var r=t.node,n=t.parent;if(e[n.type]){var u=new Map;if(function e(t,r){if(!t)return!1;var n=t.type;if("Disjunction"===n){var u=t.left,a=t.right;return e(u,r)&&e(a,r)}if("Char"===n){if("meta"===t.kind&&"."===t.symbol)return!1;var i=t.value;return r.set(i,t),!0}return"CharacterClass"===n&&!t.negative&&t.expressions.every(function(t){return e(t,r)})}(r,u)&&u.size){var a={type:"CharacterClass",expressions:Array.from(u.keys()).sort().map(function(e){return u.get(e)})};e[n.type](t.getParent(),a)}}}}}()],["removeEmptyGroup",eh?ey:(eh=1,ey={Group:function(e){var t=e.node,r=e.parent,n=e.getChild();t.capturing||n||("Repetition"===r.type?e.getParent().replace(t):"RegExp"!==r.type&&e.remove())}})],["ungroup",function(){if(eE)return eb;function e(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}return eE=1,eb={Group:function(t){var r=t.node,n=t.parent,u=t.getChild();if(!r.capturing&&u&&function(e){var t=e.parent,r=e.index;if("Alternative"!==t.type)return!0;var n=t.expressions[r-1];return null==n||("Backreference"!==n.type||"number"!==n.kind)&&("Char"!==n.type||"decimal"!==n.kind)}(t)&&("Disjunction"!==u.node.type||"RegExp"===n.type)&&("Repetition"!==n.type||"Char"===u.node.type||"CharacterClass"===u.node.type))if("Alternative"===u.node.type){var a=t.getParent();"Alternative"===a.node.type&&a.replace({type:"Alternative",expressions:[].concat(e(n.expressions.slice(0,t.index)),e(u.node.expressions),e(n.expressions.slice(t.index+1)))})}else t.replace(u.node)}}}()],["combineRepeatingPatterns",function(){if(ex)return ev;function e(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}ex=1;var t=aR(),r=aj().increaseQuantifierByOne;return ev={Alternative:function(n){for(var u=n.node,a=1;a<u.expressions.length;){var i=n.getChild(a);if((a=Math.max(1,function(r,n,u){for(var a=r.node,i=Math.ceil(u/2),o=0;o<i;){var s=u-2*o-1,d=void 0,l=void 0;if(0===o?(d=n,l=r.getChild(s)):(d=t.getForNode({type:"Alternative",expressions:[].concat(e(a.expressions.slice(u-o,u)),[n.node])}),l=t.getForNode({type:"Alternative",expressions:[].concat(e(a.expressions.slice(s,u-o)))})),d.hasEqualSource(l)){for(var c=0;c<2*o+1;c++)r.getChild(s).remove();return n.replace({type:"Repetition",expression:0===o&&"Repetition"!==d.node.type?d.node:{type:"Group",capturing:!1,expression:d.node},quantifier:{type:"Quantifier",kind:"Range",from:2,to:2,greedy:!0}}),s}o++}return u}(n,i,a)))>=u.expressions.length||(i=n.getChild(a),(a=Math.max(1,function(n,u,a){for(var i=n.node,o=0;o<a;){var s=n.getChild(o);if("Repetition"===s.node.type&&s.node.quantifier.greedy){var d=s.getChild(),l=void 0;if("Group"!==d.node.type||d.node.capturing||(d=d.getChild()),o+1===a?"Group"!==(l=u).node.type||l.node.capturing||(l=l.getChild()):l=t.getForNode({type:"Alternative",expressions:[].concat(e(i.expressions.slice(o+1,a+1)))}),d.hasEqualSource(l)){for(var c=o;c<a;c++)n.getChild(o+1).remove();return r(s.node.quantifier),o}}o++}return a}(n,i,a)))>=u.expressions.length))break;i=n.getChild(a),a=Math.max(1,function(n,u,a){var i=n.node;if("Repetition"===u.node.type&&u.node.quantifier.greedy){var o=u.getChild(),s=void 0;"Group"!==o.node.type||o.node.capturing||(o=o.getChild());var d=void 0;if("Alternative"===o.node.type?(d=o.node.expressions.length,s=t.getForNode({type:"Alternative",expressions:[].concat(e(i.expressions.slice(a-d,a)))})):(d=1,"Group"!==(s=n.getChild(a-1)).node.type||s.node.capturing||(s=s.getChild())),s.hasEqualSource(o)){for(var l=a-d;l<a;l++)n.getChild(a-d).remove();return r(u.node.quantifier),a-d}}return a}(n,i,a)),a++}}}}()]]));return eS={optimize:function(u){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=a.whitelist,o=void 0===i?[]:i,s=a.blacklist,d=void 0===s?[]:s,l=(o.length>0?o:Array.from(n.keys())).filter(function(e){return!d.includes(e)}),c=u;u instanceof RegExp&&(u=""+u),"string"==typeof u&&(c=t.parse(u));var f=new r.TransformResult(c),p=void 0;do p=f.toString(),c=e(f.getAST()),l.forEach(function(t){if(!n.has(t))throw Error("Unknown optimization-transform: "+t+". Available transforms are: "+Array.from(n.keys()).join(", "));var u=n.get(t),a=r.transform(c,u);a.toString()!==f.toString()&&(a.toString().length<=f.toString().length?f=a:c=e(f.getAST()))});while(f.toString()!==p);return f}}}(),n=aO(),u=aL(),a=aN(),i=function(){if(ez)return eq;ez=1;var e=a$(),t=function(){if(eB)return eI;eB=1;var e=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}();function t(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}var r=function(){if(eP)return ek;eP=1;var e=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var r=[],n=!0,u=!1,a=void 0;try{for(var i,o=e[Symbol.iterator]();!(n=(i=o.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){u=!0,a=e}finally{try{!n&&o.return&&o.return()}finally{if(u)throw a}}return r}(e,t);throw TypeError("Invalid attempt to destructure non-iterable instance")};function t(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}var r=null;return ek={minimize:function(n){var u=n.getTransitionTable(),a=Object.keys(u),i=n.getAlphabet(),o=n.getAcceptingStateNumbers();r={};var s=new Set;a.forEach(function(e){e=Number(e),o.has(e)?r[e]=o:(s.add(e),r[e]=s)});var d=[[s,o].filter(function(e){return e.size>0})],l=void 0,c=void 0;for(l=d[d.length-1],c=d[d.length-2];!function(e,r){if(!r||e.length!==r.length)return!1;for(var n=0;n<e.length;n++){var u=e[n],a=r[n];if(u.size!==a.size||[].concat(t(u)).sort().join(",")!==[].concat(t(a)).sort().join(","))return!1}return!0}(l,c);)!function(){var e={},n=!0,a=!1,o=void 0;try{for(var s,f=l[Symbol.iterator]();!(n=(s=f.next()).done);n=!0){var p=s.value,m={},g=Array.isArray(p)?p:Array.from(p),y=g[0],h=g.slice(1);m[y]=new Set([y]);var b=!0,E=!1,v=void 0;try{e:for(var x,D=h[Symbol.iterator]();!(b=(x=D.next()).done);b=!0){var A=x.value,S=!0,C=!1,T=void 0;try{for(var w,_=Object.keys(m)[Symbol.iterator]();!(S=(w=_.next()).done);S=!0){var F=w.value;if(function(e,t,n,u){var a=!0,i=!1,o=void 0;try{for(var s,d=u[Symbol.iterator]();!(a=(s=d.next()).done);a=!0){var l=s.value;if(!function(e,t,n,u){if(!r[e]||!r[t])return!1;var a=n[e][u],i=n[t][u];return!a&&!i||r[e].has(a)&&r[t].has(i)}(e,t,n,l))return!1}}catch(e){i=!0,o=e}finally{try{!a&&d.return&&d.return()}finally{if(i)throw o}}return!0}(A,F,u,i)){m[F].add(A),m[A]=m[F];continue e}}}catch(e){C=!0,T=e}finally{try{!S&&_.return&&_.return()}finally{if(C)throw T}}m[A]=new Set([A])}}catch(e){E=!0,v=e}finally{try{!b&&D.return&&D.return()}finally{if(E)throw v}}Object.assign(e,m)}}catch(e){a=!0,o=e}finally{try{!n&&f.return&&f.return()}finally{if(a)throw o}}r=e;var k=new Set(Object.keys(e).map(function(t){return e[t]}));d.push([].concat(t(k))),l=d[d.length-1],c=d[d.length-2]}();var f=new Map,p=1;l.forEach(function(e){return f.set(e,p++)});var m={},g=new Set,y=!0,h=!1,b=void 0;try{for(var E,v=f.entries()[Symbol.iterator]();!(y=(E=v.next()).done);y=!0){var x=E.value,D=e(x,2),A=D[0],S=D[1];m[S]={};var C=!0,T=!1,w=void 0;try{for(var _,F=i[Symbol.iterator]();!(C=(_=F.next()).done);C=!0){var k=_.value;!function(e,t){var r=!0,n=!1,u=void 0;try{for(var a,i=e[Symbol.iterator]();!(r=(a=i.next()).done);r=!0){var s=a.value;o.has(s)&&g.add(t)}}catch(e){n=!0,u=e}finally{try{!r&&i.return&&i.return()}finally{if(n)throw u}}}(A,S);var P=void 0,I=!0,B=!1,O=void 0;try{for(var R,N=A[Symbol.iterator]();!(I=(R=N.next()).done)&&!(P=u[R.value][k]);I=!0);}catch(e){B=!0,O=e}finally{try{!I&&N.return&&N.return()}finally{if(B)throw O}}P&&(m[S][k]=f.get(r[P]))}}catch(e){T=!0,w=e}finally{try{!C&&F.return&&F.return()}finally{if(T)throw w}}}}catch(e){h=!0,b=e}finally{try{!y&&v.return&&v.return()}finally{if(h)throw b}}return n.setTransitionTable(m),n.setAcceptingStateNumbers(g),n}}}(),n=aM().EPSILON_CLOSURE;return eI=function(){function u(e){if(!(this instanceof u))throw TypeError("Cannot call a class as a function");this._nfa=e}return e(u,[{key:"minimize",value:function(){this.getTransitionTable(),this._originalAcceptingStateNumbers=this._acceptingStateNumbers,this._originalTransitionTable=this._transitionTable,r.minimize(this)}},{key:"getAlphabet",value:function(){return this._nfa.getAlphabet()}},{key:"getAcceptingStateNumbers",value:function(){return this._acceptingStateNumbers||this.getTransitionTable(),this._acceptingStateNumbers}},{key:"getOriginaAcceptingStateNumbers",value:function(){return this._originalAcceptingStateNumbers||this.getTransitionTable(),this._originalAcceptingStateNumbers}},{key:"setTransitionTable",value:function(e){this._transitionTable=e}},{key:"setAcceptingStateNumbers",value:function(e){this._acceptingStateNumbers=e}},{key:"getTransitionTable",value:function(){var e=this;if(this._transitionTable)return this._transitionTable;var r=this._nfa.getTransitionTable(),u=Object.keys(r);this._acceptingStateNumbers=new Set;for(var a=[r[u[0]][n]],i=this.getAlphabet(),o=this._nfa.getAcceptingStateNumbers(),s={};a.length>0;){var d=a.shift(),l=d.join(",");s[l]={};var c=!0,f=!1,p=void 0;try{for(var m,g=i[Symbol.iterator]();!(c=(m=g.next()).done);c=!0){var y=m.value,h=[];!function(t){var r=!0,n=!1,u=void 0;try{for(var a,i=o[Symbol.iterator]();!(r=(a=i.next()).done);r=!0){var s=a.value;if(-1!==t.indexOf(s)){e._acceptingStateNumbers.add(t.join(","));break}}}catch(e){n=!0,u=e}finally{try{!r&&i.return&&i.return()}finally{if(n)throw u}}}(d);var b=!0,E=!1,v=void 0;try{for(var x,D=d[Symbol.iterator]();!(b=(x=D.next()).done);b=!0){var A=r[x.value][y];if(A){var S=!0,C=!1,T=void 0;try{for(var w,_=A[Symbol.iterator]();!(S=(w=_.next()).done);S=!0){var F=w.value;r[F]&&h.push.apply(h,t(r[F][n]))}}catch(e){C=!0,T=e}finally{try{!S&&_.return&&_.return()}finally{if(C)throw T}}}}}catch(e){E=!0,v=e}finally{try{!b&&D.return&&D.return()}finally{if(E)throw v}}var k=new Set(h),P=[].concat(t(k));if(P.length>0){var I=P.join(",");s[l][y]=I,s.hasOwnProperty(I)||a.unshift(P)}}}catch(e){f=!0,p=e}finally{try{!c&&g.return&&g.return()}finally{if(f)throw p}}}return this._transitionTable=this._remapStateNumbers(s)}},{key:"_remapStateNumbers",value:function(e){var t={};this._originalTransitionTable=e;var r={};for(var n in Object.keys(e).forEach(function(e,r){t[e]=r+1}),e){var u=e[n],a={};for(var i in u)a[i]=t[u[i]];r[t[n]]=a}this._originalAcceptingStateNumbers=this._acceptingStateNumbers,this._acceptingStateNumbers=new Set;var o=!0,s=!1,d=void 0;try{for(var l,c=this._originalAcceptingStateNumbers[Symbol.iterator]();!(o=(l=c.next()).done);o=!0){var f=l.value;this._acceptingStateNumbers.add(t[f])}}catch(e){s=!0,d=e}finally{try{!o&&c.return&&c.return()}finally{if(s)throw d}}return r}},{key:"getOriginalTransitionTable",value:function(){return this._originalTransitionTable||this.getTransitionTable(),this._originalTransitionTable}},{key:"matches",value:function(e){for(var t=1,r=0,n=this.getTransitionTable();e[r];)if(!(t=n[t][e[r++]]))return!1;return!!this.getAcceptingStateNumbers().has(t)}}]),u}()}(),r=function(){if(eU)return e$;eU=1;var e=aO(),t=aU(),r=t.alt,n=t.char,u=t.or,a=t.rep,i=t.plusRep,o=t.questionRep;function s(e){if(e&&!d[e.type])throw Error(e.type+" is not supported in NFA/DFA interpreter.");return e?d[e.type](e):""}var d={RegExp:function(e){if(""!==e.flags)throw Error("NFA/DFA: Flags are not supported yet.");return s(e.body)},Alternative:function(e){var t=(e.expressions||[]).map(s);return r.apply(void 0,function(e){if(!Array.isArray(e))return Array.from(e);for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}(t))},Disjunction:function(e){return u(s(e.left),s(e.right))},Repetition:function(e){switch(e.quantifier.kind){case"*":return a(s(e.expression));case"+":return i(s(e.expression));case"?":return o(s(e.expression));default:throw Error("Unknown repeatition: "+e.quantifier.kind+".")}},Char:function(e){if("simple"!==e.kind)throw Error("NFA/DFA: Only simple chars are supported yet.");return n(e.value)},Group:function(e){return s(e.expression)}};return e$={build:function(t){var r=t;return t instanceof RegExp&&(t=""+t),"string"==typeof t&&(r=e.parse(t,{captureLocations:!0})),s(r)}}}();return eq={NFA:e,DFA:t,builders:aU(),toNFA:function(e){return r.build(e)},toDFA:function(e){return new t(this.toNFA(e))},test:function(e,t){return this.toDFA(e).matches(t)}}}(),o=function(){if(eY)return eW;eY=1;var e=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}();return eW={RegExpTree:function(){function t(e,r){var n=r.flags,u=r.groups,a=r.source;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");this._re=e,this._groups=u,this.flags=n,this.source=a||e.source,this.dotAll=n.includes("s"),this.global=e.global,this.ignoreCase=e.ignoreCase,this.multiline=e.multiline,this.sticky=e.sticky,this.unicode=e.unicode}return e(t,[{key:"test",value:function(e){return this._re.test(e)}},{key:"compile",value:function(e){return this._re.compile(e)}},{key:"toString",value:function(){return this._toStringResult||(this._toStringResult="/"+this.source+"/"+this.flags),this._toStringResult}},{key:"exec",value:function(e){var t=this._re.exec(e);if(!this._groups||!t)return t;for(var r in t.groups={},this._groups){var n=this._groups[r];t.groups[r]=t[n]}return t}}]),t}()}}().RegExpTree;return eV={parser:n,fa:i,TransformResult:u.TransformResult,parse:function(e,t){return n.parse(""+e,t)},traverse:function(e,t,r){return a.traverse(e,t,r)},transform:function(e,t){return u.transform(e,t)},generate:function(e){return t.generate(e)},toRegExp:function(e){var t=this.compatTranspile(e);return new RegExp(t.getSource(),t.getFlags())},optimize:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},u=n.blacklist;return r.optimize(e,{whitelist:t,blacklist:u})},compatTranspile:function(t,r){return e.transform(t,r)},exec:function(e,t){if("string"==typeof e){var r=this.compatTranspile(e),n=r.getExtra();e=n.namedCapturingGroups?new o(r.toRegExp(),{flags:r.getFlags(),source:r.getSource(),groups:n.namedCapturingGroups}):r.toRegExp()}return e.exec(t)}}}()));let az="better-regex",aW="better-regex/parse-error",aY={create:e=>{let{sortCharacterClasses:t}=e.options[0]||{},r=[];return!1===t&&r.push("charClassClassrangesMerge"),{Literal(e){if(!rT(e))return;let{raw:t,regex:n}=e;if(n.flags.includes("u")||n.flags.includes("v"))return;let u=t;try{u=aq.optimize(t,void 0,{blacklist:r}).toString()}catch(r){return{node:e,messageId:aW,data:{original:t,error:r.message}}}if(t===u)return;let a={node:e,messageId:az,data:{original:t,optimized:u}};return"MemberExpression"!==e.parent.type||e.parent.object!==e||e.parent.optional||e.parent.computed||"Identifier"!==e.parent.property.type||"toString"!==e.parent.property.name&&"source"!==e.parent.property.name?Object.assign(a,{fix:t=>t.replaceText(e,u)}):a},NewExpression(e){if(!rk(e,{name:"RegExp",minimumArguments:1}))return;let[t,r]=e.arguments;if(!rS(t))return;let n=t.value,u=aI(n,rS(r)?r.value:"");if(n!==u)return{node:e,messageId:az,data:{original:n,optimized:u},fix:e=>e.replaceText(t,rX(u,t.raw.charAt(0)))}}}},meta:{type:"suggestion",docs:{description:"Improve regexes by making them shorter, consistent, and safer.",recommended:!1},fixable:"code",schema:[{type:"object",additionalProperties:!1,properties:{sortCharacterClasses:{type:"boolean"}}}],defaultOptions:[{sortCharacterClasses:!0}],messages:{[az]:"{{original}} can be optimized to {{optimized}}.",[aW]:"Problem parsing {{original}}: {{error}}"}}},aV="escape-uppercase",aZ="escape-lowercase",aG=/(?<=(?:^|[^\\])(?:\\\\)*\\)(?<data>x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|u{[\dA-Fa-f]+})/g,aK=/(?<=(?:^|[^\\])(?:\\\\)*\\)(?<data>x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|u{[\dA-Fa-f]+}|c[A-Za-z])/g,aH=({node:e,original:t,regex:r=aG,lowercase:n,fix:u})=>{let a=t.replace(r,e=>e[0]+e.slice(1)[n?"toLowerCase":"toUpperCase"]());if(a!==t)return{node:e,messageId:n?aZ:aV,fix:t=>u?u(t,a):t.replaceText(e,a)}},aX="no-hex-escape";function aJ(e,t,r){let n=r.replaceAll(/(?<=(?:^|[^\\])(?:\\\\)*\\)x/g,"u00");if(r!==n)return{node:t,messageId:aX,fix:e=>"TemplateElement"===t.type?n8(e,t,n):e.replaceText(t,n)}}let aQ=["hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],a0=["Error","EvalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError","AggregateError","SuppressedError"],a1="missing-message",a3="message-is-empty-string",a2="message-is-not-a-string",a4=new Map([["AggregateError",1],["SuppressedError",2]]),a5=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float16Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],a8=e=>"instanceof"===e.value&&"Keyword"===e.type,a6="no-instanceof-builtins",a9="switch-to-type-of",a7=new Set(["String","Number","Boolean","BigInt","Symbol"]),ie=[...a0,"Map","Set","WeakMap","WeakRef","WeakSet","ArrayBuffer",...a5,"Object","RegExp","Promise","Proxy","DataView","Date","SharedArrayBuffer","FinalizationRegistry"],it=(e,t)=>function*(r){let{left:n,right:u}=e,a=nu(t,e),i=a.getTokenAfter(n,a8),{sourceCode:o}=t,s=o.getAncestors(e).findLast(e=>"VExpressionContainer"===e.type),d=s?'"'===o.getText(s)[0]?"'":'"':"'";yield*n1(r,e,o);let l=rx(n,a);yield r.insertTextBeforeRange(l,"typeof "),yield r.replaceText(i,"===");let c=rx(u,a);yield r.replaceTextRange(c,d+o.getText(u).toLowerCase()+d)},ir={create:nC(e=>{let{useErrorIsError:t=!1,strategy:r="loose",include:n=[],exclude:u=[]}=e.options[0]??{},a=new Set("strict"===r?[...ie,...n]:n);return{BinaryExpression(r){let{right:n,operator:i}=r;if("Identifier"!==n.type||"instanceof"!==i||u.includes(n.name))return;let o=n.name,s={node:r,messageId:a6};if("Array"===o||"Error"===o&&t){let t="Array"===o?"Array.isArray":"Error.isError";return s.fix=function*(n){let{left:u,right:a}=r,i=nu(e,r),o=i.getTokenAfter(u,a8),{sourceCode:s}=e;yield*n1(n,r,s);let d=rx(u,i);yield n.insertTextBeforeRange(d,t+"("),yield n.insertTextAfterRange(d,")"),yield*n7(o,"",n,s,i),yield*n7(a,"",n,s,i)},s}return"Function"===o?(s.fix=it(r,e),s):a7.has(o)?(s.suggest=[{messageId:a9,data:{type:o.toLowerCase()},fix:it(r,e)}],s):a.has(o)?s:void 0}}}),meta:{type:"problem",docs:{description:"Disallow `instanceof` with built-in objects",recommended:"unopinionated"},fixable:"code",schema:[{type:"object",properties:{useErrorIsError:{type:"boolean"},strategy:{enum:["loose","strict"]},include:{type:"array",items:{type:"string"}},exclude:{type:"array",items:{type:"string"}}},additionalProperties:!1}],defaultOptions:[{useErrorIsError:!1,strategy:"loose",include:[],exclude:[]}],hasSuggestions:!0,messages:{[a6]:"Avoid using `instanceof` for type checking as it can lead to unreliable results.",[a9]:"Switch to `typeof … === '{{type}}'`."}}},iu="prefer-type-error",ia=new Set(["isArguments","isArray","isArrayBuffer","isArrayLike","isArrayLikeObject","isBigInt","isBoolean","isBuffer","isDate","isElement","isError","isFinite","isFunction","isInteger","isLength","isMap","isNaN","isNative","isNil","isNull","isNumber","isObject","isObjectLike","isPlainObject","isPrototypeOf","isRegExp","isSafeInteger","isSet","isString","isSymbol","isTypedArray","isUndefined","isView","isWeakMap","isWeakSet","isWindow","isXMLDoc"]),ii=new Set(["isNaN","isFinite"]),io=(e,t,r)=>void 0!==t&&t.arguments.length>0&&"Identifier"===e.type&&(!0===r&&ia.has(e.name)||!1===r&&ii.has(e.name)),is=(e,t)=>!!io(e.property,t,!0)||"MemberExpression"===e.object.type&&is(e.object,t),id=/^(?:[A-Z][\da-z]*)*Error$/,il=(e,t)=>{switch(e.type){case"Identifier":return io(e,t,!1);case"MemberExpression":return is(e,t);case"CallExpression":return il(e.callee,e);case"UnaryExpression":return"typeof"===e.operator||"!"===e.operator&&il(e.argument);case"BinaryExpression":{let{operator:r,left:n,right:u}=e;if("instanceof"===r)return!("Identifier"===u.type?id.test(u.name):"MemberExpression"===u.type&&!u.optional&&!u.computed&&"Identifier"===u.property.type&&id.test(u.property.name));return il(n,t)||il(u,t)}case"LogicalExpression":return il(e.left,t)&&il(e.right,t);default:return!1}},ic="consistentDestructuring",ip="consistentDestructuringSuggest",im=["Object","Array","ArrayBuffer","DataView","Date","Error","Function","Map","WeakMap","Set","WeakSet","Promise","RegExp","SharedArrayBuffer","Proxy","WeakRef","FinalizationRegistry",...a5],ig=["BigInt","Boolean","Number","String","Symbol"],iy="error-date",ih="suggestion-date",ib="error/array-push",iE="suggestion",iv=e=>rL(e,{property:"classList",optional:!1,computed:!1}),ix=[{description:"Array#push()",test:e=>rj(e,{method:"push",optionalCall:!1,optionalMember:!1}),ignore:["stream.push","this.push","this.stream.push","process.stdin.push","process.stdout.push","process.stderr.push"]},{description:"Element#classList.add()",test:e=>rj(e,{method:"add",optionalCall:!1,optionalMember:!1})&&iv(e.callee.object)},{description:"Element#classList.remove()",test:e=>rj(e,{method:"remove",optionalCall:!1,optionalMember:!1})&&iv(e.callee.object)},{description:"importScripts()",test:e=>rF(e,{name:"importScripts",optional:!1})}].map(e=>({...e,test:t=>e.test(t)&&t?.parent.type==="ExpressionStatement"&&t.parent.expression===t})),iD={create:function(e){let{ignore:t}={ignore:[],...e.options[0]},{sourceCode:r}=e;return{*CallExpression(e){for(let{description:n,test:u,ignore:a=[]}of ix){if(!u(e))continue;let i=[...a,...t];if(rU(e.callee,i))continue;let o=function(e,t){let{parent:r}=e;for(let n of t.visitorKeys[r.type]||Object.keys(r)){let t=r[n];if(t===e)return;if(Array.isArray(t)){let r=t.indexOf(e);if(-1!==r)return t[r-1]}}}(e.parent,r)?.expression;if(!u(o)||!np(o.callee,e.callee))continue;let s=e.arguments,d={node:"Identifier"===e.callee.type?e.callee:e.callee.property,messageId:ib,data:{description:n}},l=function*(t){if(s.length>0){let n=function(e,t){let{openingParenthesisToken:r,closingParenthesisToken:n}=nr(e,t),[,u]=e.getRange(r),[a]=e.getRange(n);return e.text.slice(u,a)}(r,e),{trailingCommaToken:u,closingParenthesisToken:a}=nr(r,o);yield u?t.insertTextAfter(u,` ${n}`):t.insertTextBefore(a,o.arguments.length>0?`, ${n}`:n)}let n=o.parent,u=e.parent,a=!tV(r.getLastToken(n))&&tV(r.getLastToken(u)),[,i]=r.getRange(n),[,d]=r.getRange(u);yield t.replaceTextRange([i,d],a?";":"")};s.some(e=>ri(e,r))?d.suggest=[{messageId:iE,fix:l}]:d.fix=l,yield d}}}},meta:{type:"suggestion",docs:{description:"Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,schema:[{type:"object",additionalProperties:!1,properties:{ignore:{type:"array",uniqueItems:!0}}}],defaultOptions:[{}],messages:{[ib]:"Do not call `{{description}}` multiple times.",[iE]:"Merge with previous one."}}},iA="no-process-exit",iS=e=>rA(e,"node:worker_threads")||rA(e,"worker_threads"),iC="no-single-promise-in-promise-methods/error",iT="no-single-promise-in-promise-methods/unwrap",iw="no-single-promise-in-promise-methods/use-promise-resolve",i_=["all","any","race"];function iF(e,{test:t,expected:r,ruleId:n}){if(t?.(e)||(r=(r=Array.isArray(r)?r:[r]).map(e=>"string"==typeof e?{value:e}:e),!t&&r.some(t=>Object.entries(t).every(([t,r])=>e[t]===r))))return;let u=`'${JSON.stringify({value:e.value,type:e.type})}'`;r=r.map(e=>`'${JSON.stringify(e)}'`).join(" or ");let a=`\`${n}\`: Unexpected token ${u}`,i=`https://github.com/sindresorhus/eslint-plugin-unicorn/issues/new?title=${encodeURIComponent(a)}`;throw Error(`Expected token ${r}, got ${u}.
4
- Please open an issue at ${i}.`)}let ik="no-static-only-class",iP=({type:e,value:t})=>"Punctuator"===e&&"="===t,iI=e=>"PropertyDefinition"===e.type,iB="no-unreadable-array-destructuring",iO="spread-in-list",iR="iterable-to-array",iN="iterable-to-array-in-for-of",iL="iterable-to-array-in-yield-star",ij="clone-array",iM=e=>"ArrayExpression"===e.type&&1===e.elements.length&&e.elements[0]?.type==="SpreadElement",i$={ArrayExpression:"array literal",ObjectExpression:"object literal",CallExpression:"arguments",NewExpression:"arguments"};function*iU(e,t,r){let[n,u,a]=r.getFirstTokens(t,3);yield e.remove(n),yield e.remove(u);let[i,o]=r.getLastTokens(t,2);yield e.remove(o),tY(i)&&(yield e.remove(i));let{parent:s}=t;"ReturnStatement"!==s.type&&"ThrowStatement"!==s.type||s.argument!==t||nl(n,a)||ro(t,r)?yield*n1(e,t,r):yield*nX(e,s,r)}let iq="no-useless-switch-case/error",iz="no-useless-switch-case/suggestion",iW=e=>e.consequent.every(e=>rB(e)),iY="no-useless-undefined",iV=new Set(["is","equal","notEqual","strictEqual","notStrictEqual","propertyVal","notPropertyVal","not","include","property","toBe","toHaveBeenCalledWith","toContain","toContainEqual","toEqual","same","notSame","strictSame","strictNotSame"]),iZ={create:e=>{let{sourceCode:t}=e,r=(e,r,n)=>{if(n){let r=(e=>{for(;e;e=e.upper)if("function"===e.type)return e.block})(t.getScope(e));if(r?.returnType)return}return{node:e,messageId:iY,fix:r}},n={checkArguments:!0,checkArrowFunctionBody:!0,...e.options[0]};e.on("Identifier",e=>{if(rz(e)&&"ReturnStatement"===e.parent.type&&e.parent.argument===e)return r(e,r=>n7(e,"",r,t),!0)}),e.on("Identifier",e=>{if(rz(e)&&"YieldExpression"===e.parent.type&&!e.parent.delegate&&e.parent.argument===e)return r(e,r=>n7(e,"",r,t))}),n.checkArrowFunctionBody&&e.on("Identifier",e=>{if(rz(e)&&"ArrowFunctionExpression"===e.parent.type&&e.parent.body===e)return r(e,r=>n7(e," {}",r,t),!0)}),e.on("Identifier",e=>{if(rz(e)&&"VariableDeclarator"===e.parent.type&&e.parent.init===e&&"VariableDeclaration"===e.parent.parent.type&&"const"!==e.parent.parent.kind&&e.parent.parent.declarations.includes(e.parent)){let[,n]=t.getRange(e.parent.id),[,u]=t.getRange(e);return r(e,e=>e.removeRange([n,u]),!0)}}),e.on("Identifier",n=>{if(rz(n)&&"AssignmentPattern"===n.parent.type&&n.parent.right===n)return r(n,function*(r){let u=n.parent,{left:a}=u,[,i]=t.getRange(a),[,o]=t.getRange(n);yield r.removeRange([i,o]),(a.typeAnnotation||/\.(?:ts|mts|cts|tsx)$/i.test(e.physicalFilename))&&!a.optional&&rN(u.parent)&&u.parent.params.includes(u)&&(yield a.typeAnnotation?r.insertTextBefore(a.typeAnnotation,"?"):r.insertTextAfter(a,"?"))},!0)}),n.checkArguments&&e.on("CallExpression",e=>{var r;let n;if("Identifier"===(r=e.callee).type?n=r.name:"MemberExpression"===r.type&&!1===r.computed&&"Identifier"===r.property.type&&(n=r.property.name),iV.has(n)||"push"===n||"unshift"===n||"includes"===n||"add"===n||"has"===n||"delete"===n||"set"===n||"createContext"===n||/^set[A-Z]/.test(n)||"useRef"===n||"ref"===n)return;let u=e.arguments;if(!e.optional&&"MemberExpression"===e.callee.type&&!e.callee.computed&&"Identifier"===e.callee.property.type&&"bind"===e.callee.property.name&&1!==u.length)return;let a=[];for(let e=u.length-1;e>=0;e--){let t=u[e];if(rz(t))a.unshift(t);else break}if(0===a.length)return;let i=a[0],o=a.at(-1);return{messageId:iY,loc:{start:t.getLoc(i).start,end:t.getLoc(o).end},fix(e){let[r]=t.getRange(i),[,n]=t.getRange(o),s=u[u.length-a.length-1];if(s)[,r]=t.getRange(s);else{let e=t.getTokenAfter(o);tY(e)&&([,n]=t.getRange(e))}return e.removeRange([r,n])}}})},meta:{type:"suggestion",docs:{description:"Disallow useless `undefined`.",recommended:"unopinionated"},fixable:"code",schema:[{type:"object",additionalProperties:!1,properties:{checkArguments:{type:"boolean"},checkArrowFunctionBody:{type:"boolean"}}}],defaultOptions:[{}],messages:{[iY]:"Do not use useless `undefined`."}}},iG="numeric-separators-style";function iK(e,{minimumDigits:t,groupLength:r},n){let{length:u}=e;if(u<t)return e;let a=[];if(n)for(let t=0;t<u;t+=r){let n=Math.min(t+r,u);a.push(e.slice(t,n))}else for(let t=u;t>0;t-=r){let n=Math.max(t-r,0);a.unshift(e.slice(n,t))}return a.join("_")}let iH={binary:{minimumDigits:0,groupLength:4},octal:{minimumDigits:0,groupLength:4},hexadecimal:{minimumDigits:0,groupLength:2},number:{minimumDigits:5,groupLength:3}},iX={create:e=>{let{onlyIfContainsSeparator:t,binary:r,octal:n,hexadecimal:u,number:a}={onlyIfContainsSeparator:!1,...e.options[0]},i={"0b":{onlyIfContainsSeparator:t,...iH.binary,...r},"0o":{onlyIfContainsSeparator:t,...iH.octal,...n},"0x":{onlyIfContainsSeparator:t,...iH.hexadecimal,...u},"":{onlyIfContainsSeparator:t,...iH.number,...a}};return{Literal(e){let t,r;if(!(rC(e)||rw(e))||rC(e)&&/^0\d+$/.test(e.raw))return;let{raw:n}=e,u=n,a="";rw(e)&&(u=n.slice(0,-1),a="n");let o=u.replaceAll("_",""),{prefix:s,data:d}=(t="",r=o,/^0[box]/i.test(o)&&(t=o.slice(0,2),r=o.slice(2)),{prefix:t,data:r}),{onlyIfContainsSeparator:l}=i[s.toLowerCase()];if(l&&!n.includes("_"))return;let c=function(e,{prefix:t,data:r},n){let u=n[t.toLowerCase()];if(t)return t+iK(r,u);let{number:a,mark:i,sign:o,power:s}=function(e){let{number:t,mark:r="",sign:n="",power:u=""}=e.match(/^(?<number>[\d._]*?)(?:(?<mark>[Ee])(?<sign>[+-])?(?<power>[\d_]+))?$/).groups;return{number:t,mark:r,sign:n,power:u}}(e);return function(e,t){let{integer:r,dot:n,fractional:u}=function(e){let t=e.split("."),[r,n=""]=t;return{integer:r,dot:2===t.length?".":"",fractional:n}}(e);return iK(r,t)+n+iK(u,t,!0)}(a,u)+i+o+iK(s,n[""])}(o,{prefix:s,data:d},i)+a;if(n!==c)return{node:e,messageId:iG,fix:t=>t.replaceText(e,c)}}}},meta:{type:"suggestion",docs:{description:"Enforce the style of numeric separators by correctly grouping digits.",recommended:"unopinionated"},fixable:"code",schema:[{type:"object",additionalProperties:!1,properties:{...Object.fromEntries(Object.entries(iH).map(([e])=>[e,{type:"object",additionalProperties:!1,properties:{onlyIfContainsSeparator:{type:"boolean"},minimumDigits:{type:"integer",minimum:0},groupLength:{type:"integer",minimum:1}}}])),onlyIfContainsSeparator:{type:"boolean"}}}],defaultOptions:[{onlyIfContainsSeparator:!1,binary:iH.binary,octal:iH.octal,hexadecimal:iH.hexadecimal,number:iH.number}],messages:{[iG]:"Invalid group length in numeric value."}}},iJ="error-zero-index",iQ="error-shift",i0="error-pop",i1="error-at-zero",i3="error-at-minus-one",i2="error-destructuring-declaration",i4="error-destructuring-assignment",i5="error-variable",i8="suggest-nullish-coalescing-operator",i6="suggest-logical-or-operator",i9=(e,t)=>rj(e,{method:"filter",minimumArguments:1,maximumArguments:2,optionalCall:!1,...t}),i7=e=>e?"AssignmentExpression"===e.type?e:"VariableDeclarator"===e.type?{left:e.id,right:e.init}:{}:{};function*oe(e,t,r){let{left:n}=i7(e),[u]=n.elements,a=t.getText("AssignmentPattern"===u.type?u.left:u);yield r.replaceText(n,a),((e,t)=>{if("AssignmentExpression"!==e.type||ro(e,t))return!1;let{left:r}=i7(e),[n]=r.elements,{type:u}="AssignmentPattern"===n.type?n.left:n;return"ObjectExpression"===u||"ObjectPattern"===u})(e,t)&&(yield r.insertTextBefore(e,"("),yield r.insertTextAfter(e,")"))}let ot=e=>"AssignmentPattern"===i7(e).left.elements[0].type,or=(e,t)=>{let r,n,{property:u}=i7(t).right.callee;return ot(t)?r=[{operator:"??",messageId:i8},{operator:"||",messageId:i6}].map(({messageId:r,operator:n})=>({messageId:r,*fix(r){yield r.replaceText(u,"find"),yield((e,t,r,n)=>{let{left:u,right:a}=i7(e),[i]=u.elements,o=i.right,s=t.getText(o);return(ro(o,t)||"LogicalExpression"===o.type&&(o.operator===n||"||"===n&&"??"===o.operator||"??"===n&&("||"===o.operator||"&&"===o.operator))||"ConditionalExpression"===o.type||"AssignmentExpression"===o.type||"YieldExpression"===o.type||"SequenceExpression"===o.type)&&(s=`(${s})`),r.insertTextAfter(a,` ${n} ${s}`)})(t,e,r,n),yield*oe(t,e,r)}})):n=function*(r){yield r.replaceText(u,"find"),yield*oe(t,e,r)},{fix:n,suggest:r}},on=e=>"MemberExpression"===e.parent.type&&!0===e.parent.computed&&e.parent.object===e&&"Literal"===e.parent.property.type&&"0"===e.parent.property.raw,ou=e=>{let{left:t,right:r}=i7(e.parent);return t&&r&&r===e&&"ArrayPattern"===t.type&&1===t.elements.length&&t.elements[0]&&"RestElement"!==t.elements[0].type},oa={create:e=>{let{sourceCode:t}=e,{checkFromLast:r}={checkFromLast:!0,...e.options[0]};e.on("MemberExpression",e=>{if(e.computed&&"Literal"===e.property.type&&"0"===e.property.raw&&i9(e.object)&&!no(e))return{node:e.object.callee.property,messageId:iJ,fix:r=>[r.replaceText(e.object.callee.property,"find"),n4(r,e,t)]}}),e.on("CallExpression",e=>{if(rj(e,{method:"shift",argumentsLength:0,optionalCall:!1,optionalMember:!1})&&i9(e.callee.object))return{node:e.callee.object.callee.property,messageId:iQ,fix:r=>[r.replaceText(e.callee.object.callee.property,"find"),...n5(r,e,t)]}}),e.on("VariableDeclarator",e=>{if("ArrayPattern"===e.id.type&&1===e.id.elements.length&&e.id.elements[0]&&"RestElement"!==e.id.elements[0].type&&i9(e.init,{optionalMember:!1}))return{node:e.init.callee.property,messageId:i2,...or(t,e)}}),e.on("AssignmentExpression",e=>{if("ArrayPattern"===e.left.type&&1===e.left.elements.length&&e.left.elements[0]&&"RestElement"!==e.left.elements[0].type&&i9(e.right,{optionalMember:!1}))return{node:e.right.callee.property,messageId:i4,...or(t,e)}}),e.on("VariableDeclarator",e=>{if(!("Identifier"===e.id.type&&i9(e.init,{optionalMember:!1})&&"VariableDeclaration"===e.parent.type&&e.parent.declarations.includes(e)&&("ExportNamedDeclaration"!==e.parent.parent.type||e.parent.parent.declaration!==e.parent)))return;let r=t.getScope(e),n=tq(r,e.id),u=na(n).filter(t=>t!==e.id);if(0===u.length)return;let a=[],i=[];for(let e of u)if(on(e))a.push(e.parent);else{if(!ou(e))return;i.push(e.parent)}let o={node:e.init.callee.property,messageId:i5};return i.some(e=>ot(e))||(o.fix=function*(u){yield u.replaceText(e.init.callee.property,"find");let o=(e=>{let t=nP.singular(e);if(t!==e)return t})(e.id.name);if(o){let e=nt(o,r3(r));yield*n9(n,e,u),yield*function*(e,t){yield e.insertTextBeforeRange(t,""),yield e.insertTextAfterRange(t,"")}(u,t.getRange(t.ast))}for(let e of a)yield n4(u,e,t);for(let e of i)yield*oe(e,t,u)}),o}),e.on("CallExpression",e=>{if(rj(e,{method:"at",argumentsLength:1,optionalCall:!1,optionalMember:!1})&&"Literal"===e.arguments[0].type&&"0"===e.arguments[0].raw&&i9(e.callee.object))return{node:e.callee.object.callee.property,messageId:i1,fix:r=>[r.replaceText(e.callee.object.callee.property,"find"),...n5(r,e,t)]}}),r&&(e.on("CallExpression",e=>{if(rj(e,{method:"pop",argumentsLength:0,optionalCall:!1,optionalMember:!1})&&i9(e.callee.object))return{node:e.callee.object.callee.property,messageId:i0,fix:r=>[r.replaceText(e.callee.object.callee.property,"findLast"),...n5(r,e,t)]}}),e.on("CallExpression",e=>{if(rj(e,{method:"at",argumentsLength:1,optionalCall:!1,optionalMember:!1})&&"UnaryExpression"===e.arguments[0].type&&"-"===e.arguments[0].operator&&e.arguments[0].prefix&&"Literal"===e.arguments[0].argument.type&&"1"===e.arguments[0].argument.raw&&i9(e.callee.object))return{node:e.callee.object.callee.property,messageId:i3,fix:r=>[r.replaceText(e.callee.object.callee.property,"findLast"),...n5(r,e,t)]}}))},meta:{type:"suggestion",docs:{description:"Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,schema:[{type:"object",additionalProperties:!1,properties:{checkFromLast:{type:"boolean"}}}],defaultOptions:[{checkFromLast:!0}],messages:{[i5]:"Prefer `.find(…)` over `.filter(…)`.",[iJ]:"Prefer `.find(…)` over `.filter(…)[0]`.",[i1]:"Prefer `.find(…)` over `.filter(…).at(0)`.",[iQ]:"Prefer `.find(…)` over `.filter(…).shift()`.",[i0]:"Prefer `.findLast(…)` over `.filter(…).pop()`.",[i3]:"Prefer `.findLast(…)` over `.filter(…).at(-1)`.",[i2]:"Prefer `.find(…)` over destructuring `.filter(…)`.",[i4]:"Prefer `.find(…)` over destructuring `.filter(…)`.",[i8]:"Replace `.filter(…)` with `.find(…) ?? …`.",[i6]:"Replace `.filter(…)` with `.find(…) || …`."}}},oi="prefer-array-flat-map",oo=["React.Children","Children"],os="prefer-array-flat",od=e=>"ArrayExpression"===e.type&&0===e.elements.length,ol={testFunction(e){if(!rj(e,{method:"flatMap",argumentsLength:1,optionalCall:!1}))return!1;let[t]=e.arguments;return"ArrowFunctionExpression"===t.type&&!t.async&&1===t.params.length&&nc(t.params[0],t.body)},getArrayNode:e=>e.callee.object,isOptionalArray:e=>e.callee.optional,description:"Array#flatMap()"},oc={testFunction(e){if(!rj(e,{method:"reduce",argumentsLength:2,optionalCall:!1}))return!1;let[t,r]=e.arguments;if(!("ArrowFunctionExpression"===t.type&&!t.async&&2===t.params.length&&od(r)))return!1;let n=t.body,[u,a]=t.params;return rj(n,{method:"concat",argumentsLength:1,optionalCall:!1,optionalMember:!1})&&nc(u,n.callee.object)&&nc(a,n.arguments[0])||"ArrayExpression"===n.type&&2===n.elements.length&&n.elements.every((e,r)=>e?.type==="SpreadElement"&&"Identifier"===e.argument.type&&nc(t.params[r],e.argument))},getArrayNode:e=>e.callee.object,isOptionalArray:e=>e.callee.optional,description:"Array#reduce()"},of={testFunction:e=>rj(e,{method:"concat",argumentsLength:1,allowSpreadElement:!0,optionalCall:!1,optionalMember:!1})&&od(e.callee.object),getArrayNode(e){let t=e.arguments[0];return"SpreadElement"===t.type?t.argument:t},description:"[].concat()",shouldSwitchToArray:e=>"SpreadElement"!==e.arguments[0].type},op={testFunction(e){if(!(rj(e,{methods:["apply","call"],argumentsLength:2,allowSpreadElement:!0,optionalCall:!1,optionalMember:!1})&&rW(e.callee.object,{property:"concat"})))return!1;let[t,r]=e.arguments;return od(t)&&("call"===e.callee.property.name||"SpreadElement"!==r.type)},getArrayNode(e){let t=e.arguments[1];return"SpreadElement"===t.type?t.argument:t},description:"Array.prototype.concat()",shouldSwitchToArray:e=>"SpreadElement"!==e.arguments[1].type&&"call"===e.callee.property.name},om=["_.flatten","lodash.flatten","underscore.flatten"],og={create:function(e){let{functions:t}={functions:[],...e.options[0]},r=[...t,...om],n=[ol,oc,of,op,{testFunction:e=>rF(e,{argumentsLength:1,optional:!1})&&rU(e.callee,r),getArrayNode:e=>e.arguments[0],description:e=>`${r.find(t=>r$(e.callee,t)).trim()}()`}];return{*CallExpression(t){for(let{testFunction:r,description:u,getArrayNode:a,shouldSwitchToArray:i,isOptionalArray:o}of n){if(!r(t))continue;let n=a(t),s=o?.(t),d={description:"string"==typeof u?u:u(t)},l={node:t,messageId:os,data:d},{sourceCode:c}=e;c.getCommentsInside(t).length===c.getCommentsInside(n).length&&(l.fix=function(e,t,r,n,u){return"function"==typeof n&&(n=n(e)),function*(a){let i=rD(t,r);n?i=`[${i}]`:!ro(t,r)&&n_(t,r)&&(i=`(${i})`),i=`${i}${u?"?":""}.flat()`,nb(r.getTokenBefore(e),r,i)&&(i=`;${i}`),yield a.replaceText(e,i),yield*n1(a,e,r)}}(t,n,c,i,s)),yield l}}}},meta:{type:"suggestion",docs:{description:"Prefer `Array#flat()` over legacy techniques to flatten arrays.",recommended:"unopinionated"},fixable:"code",schema:[{type:"object",additionalProperties:!1,properties:{functions:{type:"array",uniqueItems:!0}}}],defaultOptions:[{}],messages:{[os]:"Prefer `Array#flat()` over `{{description}}` to flatten an array."}}},oy="some",oh="some-suggestion",ob="filter",oE={create:nC(e=>{e.on("CallExpression",t=>{if(!rj(t,{methods:["find","findLast"],minimumArguments:1,maximumArguments:2,optionalCall:!1,optionalMember:!1}))return;let r="BinaryExpression"===t.parent.type&&t.parent.left===t&&(("!="===t.parent.operator||"=="===t.parent.operator||"==="===t.parent.operator||"!=="===t.parent.operator)&&rz(t.parent.right)||("!="===t.parent.operator||"=="===t.parent.operator)&&rA(t.parent.right,null));if(!r&&!rG(t))return;let n=t.callee.property;return{node:n,messageId:oy,data:{method:n.name},suggest:[{messageId:oh,*fix(u){if(yield u.replaceText(n,"some"),!r)return;let{sourceCode:a}=e,i=rx(t,a);yield u.removeRange([i[1],a.getRange(t.parent)[1]]),"!="!==t.parent.operator&&"!=="!==t.parent.operator&&(yield u.insertTextBeforeRange(i,"!"))}}]}}),e.on("BinaryExpression",t=>{let{left:r,right:n,operator:u}=t;if(!(rj(r,{methods:["findIndex","findLastIndex"],argumentsLength:1,optionalCall:!1,optionalMember:!1})&&(["!==","!=",">","===","=="].includes(u)&&"UnaryExpression"===n.type&&"-"===n.operator&&n.argument&&"Literal"===n.argument.type&&1===n.argument.value||[">=","<"].includes(u)&&rA(n,0))))return;let a=r.callee.property;return{node:a,messageId:oy,data:{method:a.name},*fix(n){["===","==","<"].includes(u)&&(yield n.insertTextBefore(t,"!")),yield n.replaceText(a,"some");let{sourceCode:i}=e,o=i.getTokenAfter(r,e=>"Punctuator"===e.type&&e.value===u),[s]=i.getRange(o),[,d]=i.getRange(t);yield n.removeRange([s,d])}}}),e.on("BinaryExpression",t=>{if(!((">"===t.operator||"!=="===t.operator)&&"Literal"===t.right.type&&"0"===t.right.raw&&rL(t.left,{property:"length",optional:!1})&&rj(t.left.object,{method:"filter",optionalCall:!1,optionalMember:!1})))return;let r=t.left.object,[n]=r.arguments;if(!n||ns.has(n.type)||nd.has(n.type)||rz(n)||rF(n)&&!rj(n,{method:"bind",optionalCall:!1,optionalMember:!1}))return;let u=r.callee.property;return{node:u,messageId:ob,*fix(r){yield r.replaceText(u,"some");let{sourceCode:n}=e,a=t.left;yield n4(r,a,n),yield r.removeRange([rx(a,n)[1],n.getRange(t)[1]])}}})}),meta:{type:"suggestion",docs:{description:"Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.",recommended:"unopinionated"},fixable:"code",messages:{[oy]:"Prefer `.some(…)` over `.{{method}}(…)`.",[oh]:"Replace `.{{method}}(…)` with `.some(…)`.",[ob]:"Prefer `.some(…)` over non-zero length check from `.filter(…)`."},hasSuggestions:!0}},ov="preferDefaultParameters",ox="preferDefaultParametersSuggest",oD=(e,t)=>{if(!t)return!1;if("CallExpression"===t.type)return!0;for(let r of e.visitorKeys[t.type]){let n=t[r];if(Array.isArray(n)){for(let t of n)if(oD(e,t))return!0}else if(oD(e,n))return!0}return!1},oA="prefer-logical-operator-over-ternary/error",oS="prefer-logical-operator-over-ternary/suggestion";function oC(e,t,r){if(np(e,t))return!0;if(e.type!==t.type)return!1;switch(e.type){case"AwaitExpression":return oC(e.argument,t.argument,r);case"LogicalExpression":return e.operator===t.operator&&oC(e.left,t.left,r)&&oC(e.right,t.right,r);case"UnaryExpression":return e.operator===t.operator&&e.prefix===t.prefix&&oC(e.argument,t.argument,r);case"UpdateExpression":return!1}return r.getText(e)===r.getText(t)}function oT({sourceCode:e,conditionalExpression:t,left:r,right:n}){return{node:t,messageId:oA,suggest:["??","||"].map(u=>({messageId:oS,data:{operator:u},fix:a=>(function({fixer:e,sourceCode:t,conditionalExpression:r,left:n,right:u,operator:a}){let i=[n,u].map((e,r)=>{let n=ro(e,t),u=n?rD(e,t):t.getText(e);return!n&&function(e,{operator:t,property:r}){return("LogicalExpression"!==e.type||e.operator!==t)&&("AwaitExpression"===e.type||"BinaryExpression"===e.type||"LogicalExpression"===e.type||"ConditionalExpression"===e.type||"AssignmentExpression"===e.type||"ArrowFunctionExpression"===e.type||"YieldExpression"===e.type||"SequenceExpression"===e.type||!1)}(e,{operator:a,property:0===r?"left":"right"})&&(u=`(${u})`),u}).join(` ${a} `);return nb(t.getTokenBefore(r),t,i)&&(i=`;${i}`),e.replaceText(r,i)})({fixer:a,sourceCode:e,conditionalExpression:t,left:r,right:n,operator:u})}))}}let ow="with-name",o_="without-name",oF="regexp-exec",ok="string-match",oP="suggestion",oI=[{type:oF,test:e=>rj(e,{method:"exec",argumentsLength:1,optionalCall:!1,optionalMember:!1}),getNodes:e=>({stringNode:e.arguments[0],methodNode:e.callee.property,regexpNode:e.callee.object}),fix:(e,{methodNode:t})=>e.replaceText(t,"test")},{type:ok,test:e=>rj(e,{method:"match",argumentsLength:1,optionalCall:!1,optionalMember:!1}),getNodes:e=>({stringNode:e.callee.object,methodNode:e.callee.property,regexpNode:e.arguments[0]}),*fix(e,{stringNode:t,methodNode:r,regexpNode:n},u){yield e.replaceText(r,"test");let a=u.getText(t);ro(n,u)||"SequenceExpression"!==t.type||(a=`(${a})`),yield e.replaceText(n,a);let i=u.getText(n);!ro(t,u)&&n_(n,u)&&(i=`(${i})`),yield e.replaceText(t,i)}}],oB=e=>rT(e)||rk(e,{name:"RegExp"}),oO=(e,t)=>{if(rT(e))return!e.regex.flags.includes("g");let r=t9(e,t);if(!r)return!1;let{value:n}=r;return"[object RegExp]"===Object.prototype.toString.call(n)&&!n.global},oR={create:nC(e=>({*CallExpression(t){if(rG(t))for(let{type:r,test:n,getNodes:u,fix:a}of oI){if(!n(t))continue;let i=u(t),{methodNode:o,regexpNode:s}=i;if("Literal"===s.type&&!s.regex)continue;let d={node:r===oF?o:t,messageId:r},{sourceCode:l}=e,c=e=>a(e,i,l);oB(s)||oO(s,l.getScope(s))?d.fix=c:d.suggest=[{messageId:oP,fix:c}],yield d}}})),meta:{type:"suggestion",docs:{description:"Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{[oF]:"Prefer `.test(…)` over `.exec(…)`.",[ok]:"Prefer `RegExp#test(…)` over `String#match(…)`.",[oP]:"Switch to `RegExp#test(…)`."}}},oN="error",oL="suggestion",oj=["concat","copyWithin","fill","filter","flat","flatMap","map","reverse","slice","sort","splice","toReversed","toSorted","toSpliced","with"],oM=new Set(["ForOfStatement","ForStatement","ForInStatement","WhileStatement","DoWhileStatement","FunctionDeclaration","FunctionExpression","ArrowFunctionExpression"]),o$="prefer-string-raw",oU="prefer-switch",oq=(e,t)=>e===t||np(e,t),oz=new Set(["WhileStatement","DoWhileStatement","ForStatement","ForOfStatement","ForInStatement","SwitchStatement"]),oW=e=>{for(;e.parent;e=e.parent)if(oz.has(e.type))return e},oY=(e,t)=>e.range[0]>=t.range[0]&&e.range[1]<=t.range[1],oV={create:e=>{let t={minimumCases:3,emptyDefaultCase:"no-default-comment",...e.options[0]},{sourceCode:r}=e,n=new Set,u=[],a=new Set;return{IfStatement(e){n.add(e)},BreakStatement(e){e.label||u.push(e)},*"Program:exit"(){for(let e of n){if(a.has(e))continue;let{discriminant:n,ifStatements:i}=function(e){let t,r=[];for(;e&&"IfStatement"===e.type;e=e.alternate){let{test:n}=e,u=function(e){let t=[e],r=[];for(;t.length>0;){if("LogicalExpression"===(e=t.pop()).type&&"||"===e.operator){t.push(e.right,e.left);continue}if("BinaryExpression"!==e.type||"==="!==e.operator)return[];r.push(e)}return r}(n);if(0===u.length)break;if(!t){let[{left:e,right:r}]=u;t=[e,r]}let a=function(e,t){for(let{left:r,right:n}of e)if(0===(t=t.filter(e=>oq(e,r)||oq(e,n))).length)break;return t}(u,t);if(0===a.length)break;t=a,r.push({statement:e,compareExpressions:u})}return{ifStatements:r,discriminant:t&&t[0]}}(e);if(!n||i.length<t.minimumCases)continue;for(let{statement:e}of i)a.add(e);let o={loc:{start:r.getLoc(e).start,end:r.getLoc(e.consequent).start},messageId:oU};ri(n,r)||i.some(({statement:e})=>(function(e,t){for(let r of e){if(!oY(r,t))continue;let e=oW(r);if(!e||oY(t,e))return!0}return!1})(u,e))||(o.fix=function({discriminant:e,ifStatements:t},r,n){let u=r.getText(e);return function*(a){let i=t[0].statement,o=nn(i,r);yield a.insertTextBefore(i,`switch (${u}) {`);let s=t.at(-1).statement;if(s.alternate){let{alternate:e}=s;yield a.insertTextBefore(e,`
5
- ${o}default: `)}else switch(n.emptyDefaultCase){case"no-default-comment":yield a.insertTextAfter(i,`
6
- ${o}// No default`);break;case"do-nothing-comment":yield a.insertTextAfter(i,`
7
- ${o}default:
8
- ${o}// Do nothing`)}for(let{statement:n,compareExpressions:u}of(yield a.insertTextAfter(i,`
9
- ${o}}`),t)){let{consequent:t,alternate:i}=n;if(i){let[,e]=r.getRange(t),[n]=r.getRange(i);yield a.removeRange([e,n])}let s=[r.getRange(n)[0],r.getRange(t)[0]];for(let{left:n,right:i}of(yield a.removeRange(s),u)){let u=oq(n,e)?i:n,s=r.getText(u);yield a.insertTextBefore(t,`
10
- ${o}case ${s}: `)}(function e(t){switch(t.type){case"ReturnStatement":case"ThrowStatement":return!1;case"IfStatement":return!t.alternate||e(t.consequent)||e(t.alternate);case"BlockStatement":{let r=function e(t){let{body:r}=t;for(let t=r.length-1;t>=0;t--){let n=r[t];if("FunctionDeclaration"!==n.type&&"EmptyStatement"!==n.type){if("BlockStatement"===n.type){let t=e(n);if(t)return t;continue}return n}}}(t);return!r||e(r)}default:return!0}})(t)&&(yield*function*(e,t,r,n){if("BlockStatement"===e.type){let u=r.getLastToken(e);yield t.insertTextBefore(u,`
11
- ${n}break;
12
- ${n}`)}else yield t.insertTextAfter(e,`
13
- ${n}break;`)}(t,a,r,o),yield*function*(e,t,r){e&&"BlockStatement"!==e.type&&(yield t.insertTextBefore(e,`{
14
- ${r}`),yield t.insertTextAfter(e,`
15
- ${r}}`))}(t,a,o))}}}({discriminant:n,ifStatements:i},r,t)),yield o}}}},meta:{type:"suggestion",docs:{description:"Prefer `switch` over multiple `else-if`.",recommended:"unopinionated"},fixable:"code",schema:[{type:"object",additionalProperties:!1,properties:{minimumCases:{type:"integer",minimum:2},emptyDefaultCase:{enum:["no-default-comment","do-nothing-comment","no-default-case"]}}}],defaultOptions:[{minimumCases:3,emptyDefaultCase:"no-default-comment"}],messages:{[oU]:"Use `switch` instead of multiple `else-if`."}}},oZ="require-number-to-fixed-digits-argument";function oG(e){return(oG="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function oK(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,u,a,i,o=[],s=!0,d=!1;try{if(a=(r=r.call(e)).next,0===t);else for(;!(s=(n=a.call(r)).done)&&(o.push(n.value),o.length!==t);s=!0);}catch(e){d=!0,u=e}finally{try{if(!s&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(d)throw u}}return o}}(e,t)||oH(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function oH(e,t){if(e){if("string"==typeof e)return oX(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?oX(e,t):void 0}}function oX(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function oJ(e,t){return e(t={exports:{}},t.exports),t.exports}var oQ=oJ(function(e,t){!function e(t){var r,n,u,a,i,o;function s(e){var t,r,n={};for(t in e)e.hasOwnProperty(t)&&(r=e[t],n[t]="object"==typeof r&&null!==r?s(r):r);return n}function d(e,t){this.parent=e,this.key=t}function l(e,t,r,n){this.node=e,this.path=t,this.wrap=r,this.ref=n}function c(){}function f(e){return null!=e&&"object"==typeof e&&"string"==typeof e.type}function p(e,t){return(e===r.ObjectExpression||e===r.ObjectPattern)&&"properties"===t}function m(e,t){for(var r=e.length-1;r>=0;--r)if(e[r].node===t)return!0;return!1}function g(e,t){return(new c).traverse(e,t)}return r={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ChainExpression:"ChainExpression",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ComprehensionBlock:"ComprehensionBlock",ComprehensionExpression:"ComprehensionExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DebuggerStatement:"DebuggerStatement",DirectiveStatement:"DirectiveStatement",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",GeneratorExpression:"GeneratorExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportExpression:"ImportExpression",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",ModuleSpecifier:"ModuleSpecifier",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",PrivateIdentifier:"PrivateIdentifier",Program:"Program",Property:"Property",PropertyDefinition:"PropertyDefinition",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchStatement:"SwitchStatement",SwitchCase:"SwitchCase",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"},u={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ComprehensionBlock:["left","right"],ComprehensionExpression:["blocks","filter","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],GeneratorExpression:["blocks","filter","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportExpression:["source"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},n={Break:a={},Skip:i={},Remove:o={}},d.prototype.replace=function(e){this.parent[this.key]=e},d.prototype.remove=function(){return Array.isArray(this.parent)?(this.parent.splice(this.key,1),!0):(this.replace(null),!1)},c.prototype.path=function(){var e,t,r,n,u;function a(e,t){if(Array.isArray(t))for(r=0,n=t.length;r<n;++r)e.push(t[r]);else e.push(t)}if(!this.__current.path)return null;for(u=[],e=2,t=this.__leavelist.length;e<t;++e)a(u,this.__leavelist[e].path);return a(u,this.__current.path),u},c.prototype.type=function(){return this.current().type||this.__current.wrap},c.prototype.parents=function(){var e,t,r;for(r=[],e=1,t=this.__leavelist.length;e<t;++e)r.push(this.__leavelist[e].node);return r},c.prototype.current=function(){return this.__current.node},c.prototype.__execute=function(e,t){var r,n;return n=void 0,r=this.__current,this.__current=t,this.__state=null,e&&(n=e.call(this,t.node,this.__leavelist[this.__leavelist.length-1].node)),this.__current=r,n},c.prototype.notify=function(e){this.__state=e},c.prototype.skip=function(){this.notify(i)},c.prototype.break=function(){this.notify(a)},c.prototype.remove=function(){this.notify(o)},c.prototype.__initialize=function(e,t){this.visitor=t,this.root=e,this.__worklist=[],this.__leavelist=[],this.__current=null,this.__state=null,this.__fallback=null,"iteration"===t.fallback?this.__fallback=Object.keys:"function"==typeof t.fallback&&(this.__fallback=t.fallback),this.__keys=u,t.keys&&(this.__keys=Object.assign(Object.create(this.__keys),t.keys))},c.prototype.traverse=function(e,t){var r,n,u,o,s,d,c,g,y,h,b,E;for(this.__initialize(e,t),E={},r=this.__worklist,n=this.__leavelist,r.push(new l(e,null,null,null)),n.push(new l(null,null,null,null));r.length;)if((u=r.pop())!==E){if(u.node){if(d=this.__execute(t.enter,u),this.__state===a||d===a)return;if(r.push(E),n.push(u),this.__state===i||d===i)continue;if(s=(o=u.node).type||u.wrap,!(h=this.__keys[s])){if(!this.__fallback)throw Error("Unknown node type "+s+".");h=this.__fallback(o)}for(g=h.length;(g-=1)>=0;)if(b=o[c=h[g]]){if(Array.isArray(b)){for(y=b.length;(y-=1)>=0;)if(b[y]&&!m(n,b[y])){if(p(s,h[g]))u=new l(b[y],[c,y],"Property",null);else{if(!f(b[y]))continue;u=new l(b[y],[c,y],null,null)}r.push(u)}}else if(f(b)){if(m(n,b))continue;r.push(new l(b,c,null,null))}}}}else if(u=n.pop(),d=this.__execute(t.leave,u),this.__state===a||d===a)return},c.prototype.replace=function(e,t){var r,n,u,s,c,m,g,y,h,b,E,v,x;function D(e){var t,n,u,a;if(e.ref.remove()){for(n=e.ref.key,a=e.ref.parent,t=r.length;t--;)if((u=r[t]).ref&&u.ref.parent===a){if(u.ref.key<n)break;--u.ref.key}}}for(this.__initialize(e,t),E={},r=this.__worklist,n=this.__leavelist,m=new l(e,null,null,new d(v={root:e},"root")),r.push(m),n.push(m);r.length;)if((m=r.pop())!==E){if(void 0!==(c=this.__execute(t.enter,m))&&c!==a&&c!==i&&c!==o&&(m.ref.replace(c),m.node=c),this.__state!==o&&c!==o||(D(m),m.node=null),this.__state===a||c===a)return v.root;if((u=m.node)&&(r.push(E),n.push(m),this.__state!==i&&c!==i)){if(s=u.type||m.wrap,!(h=this.__keys[s])){if(!this.__fallback)throw Error("Unknown node type "+s+".");h=this.__fallback(u)}for(g=h.length;(g-=1)>=0;)if(b=u[x=h[g]])if(Array.isArray(b)){for(y=b.length;(y-=1)>=0;)if(b[y]){if(p(s,h[g]))m=new l(b[y],[x,y],"Property",new d(b,y));else{if(!f(b[y]))continue;m=new l(b[y],[x,y],null,new d(b,y))}r.push(m)}}else f(b)&&r.push(new l(b,x,null,new d(u,x)))}}else if(m=n.pop(),void 0!==(c=this.__execute(t.leave,m))&&c!==a&&c!==i&&c!==o&&m.ref.replace(c),this.__state!==o&&c!==o||D(m),this.__state===a||c===a)break;return v.root},t.Syntax=r,t.traverse=g,t.replace=function(e,t){return(new c).replace(e,t)},t.attachComments=function(e,t,r){var u,a,i,o,d=[];if(!e.range)throw Error("attachComments needs range information");if(!r.length){if(t.length){for(i=0,a=t.length;i<a;i+=1)(u=s(t[i])).extendedRange=[0,e.range[0]],d.push(u);e.leadingComments=d}return e}for(i=0,a=t.length;i<a;i+=1)d.push(function(e,t){var r;return r=function(e,t){var r,n,u,a;for(n=e.length,u=0;n;)t(e[a=u+(r=n>>>1)])?n=r:(u=a+1,n-=r+1);return u}(t,function(t){return t.range[0]>e.range[0]}),e.extendedRange=[e.range[0],e.range[1]],r!==t.length&&(e.extendedRange[1]=t[r].range[0]),(r-=1)>=0&&(e.extendedRange[0]=t[r].range[1]),e}(s(t[i]),r));return o=0,g(e,{enter:function(e){for(var t;o<d.length&&!((t=d[o]).extendedRange[1]>e.range[0]);)t.extendedRange[1]===e.range[0]?(e.leadingComments||(e.leadingComments=[]),e.leadingComments.push(t),d.splice(o,1)):o+=1;return o===d.length?n.Break:d[o].extendedRange[0]>e.range[1]?n.Skip:void 0}}),o=0,g(e,{leave:function(e){for(var t;o<d.length&&(t=d[o],!(e.range[1]<t.extendedRange[0]));)e.range[1]===t.extendedRange[0]?(e.trailingComments||(e.trailingComments=[]),e.trailingComments.push(t),d.splice(o,1)):o+=1;return o===d.length?n.Break:d[o].extendedRange[0]>e.range[1]?n.Skip:void 0}}),e},t.VisitorKeys=u,t.VisitorOption=n,t.Controller=c,t.cloneEnvironment=function(){return e({})},t}(t)}),o0=oJ(function(e){e.exports&&(e.exports=function(){function e(t,r,n,u){this.message=t,this.expected=r,this.found=n,this.location=u,this.name="SyntaxError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,e)}return function(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}(e,Error),e.buildMessage=function(e,t){var r={literal:function(e){return'"'+u(e.text)+'"'},class:function(e){var t,r="";for(t=0;t<e.parts.length;t++)r+=e.parts[t]instanceof Array?a(e.parts[t][0])+"-"+a(e.parts[t][1]):a(e.parts[t]);return"["+(e.inverted?"^":"")+r+"]"},any:function(e){return"any character"},end:function(e){return"end of input"},other:function(e){return e.description}};function n(e){return e.charCodeAt(0).toString(16).toUpperCase()}function u(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(e){return"\\x0"+n(e)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(e){return"\\x"+n(e)})}function a(e){return e.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(e){return"\\x0"+n(e)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(e){return"\\x"+n(e)})}return"Expected "+function(e){var t,n,u,a=Array(e.length);for(t=0;t<e.length;t++)a[t]=r[(u=e[t]).type](u);if(a.sort(),a.length>0){for(t=1,n=1;t<a.length;t++)a[t-1]!==a[t]&&(a[n]=a[t],n++);a.length=n}switch(a.length){case 1:return a[0];case 2:return a[0]+" or "+a[1];default:return a.slice(0,-1).join(", ")+", or "+a[a.length-1]}}(e)+" but "+(t?'"'+u(t)+'"':"end of input")+" found."},{SyntaxError:e,parse:function(t,r){r=void 0!==r?r:{};var n,u,a,i,o={},s={start:ey},d=ey,l=ec(" ",!1),c=/^[^ [\],():#!=><~+.]/,f=ef([" ","[","]",",","(",")",":","#","!","=",">","<","~","+","."],!0,!1),p=ec(">",!1),m=ec("~",!1),g=ec("+",!1),y=ec(",",!1),h=function(e,t){return[e].concat(t.map(function(e){return e[3]}))},b=ec("!",!1),E=ec("*",!1),v=ec("#",!1),x=ec("[",!1),D=ec("]",!1),A=/^[><!]/,S=ef([">","<","!"],!1,!1),C=ec("=",!1),T=function(e){return(e||"")+"="},w=/^[><]/,_=ef([">","<"],!1,!1),F=ec(".",!1),k=function(e,t,r){return{type:"attribute",name:e,operator:t,value:r}},P=ec('"',!1),I=/^[^\\"]/,B=ef(["\\",'"'],!0,!1),O=ec("\\",!1),R={type:"any"},N=function(e,t){return e+t},L=function(e){return{type:"literal",value:e.join("").replace(/\\(.)/g,function(e,t){switch(t){case"b":return"\b";case"f":return"\f";case"n":return"\n";case"r":return"\r";case"t":return" ";case"v":return"\v";default:return t}})}},j=ec("'",!1),M=/^[^\\']/,$=ef(["\\","'"],!0,!1),U=/^[0-9]/,q=ef([["0","9"]],!1,!1),z=ec("type(",!1),W=/^[^ )]/,Y=ef([" ",")"],!0,!1),V=ec(")",!1),Z=/^[imsu]/,G=ef(["i","m","s","u"],!1,!1),K=ec("/",!1),H=/^[^\/]/,X=ef(["/"],!0,!1),J=ec(":not(",!1),Q=ec(":matches(",!1),ee=ec(":has(",!1),et=ec(":first-child",!1),er=ec(":last-child",!1),en=ec(":nth-child(",!1),eu=ec(":nth-last-child(",!1),ea=ec(":",!1),ei=0,eo=[{line:1,column:1}],es=0,ed=[],el={};if("startRule"in r){if(!(r.startRule in s))throw Error("Can't start parsing from rule \""+r.startRule+'".');d=s[r.startRule]}function ec(e,t){return{type:"literal",text:e,ignoreCase:t}}function ef(e,t,r){return{type:"class",parts:e,inverted:t,ignoreCase:r}}function ep(e){var r,n=eo[e];if(n)return n;for(r=e-1;!eo[r];)r--;for(n={line:(n=eo[r]).line,column:n.column};r<e;)10===t.charCodeAt(r)?(n.line++,n.column=1):n.column++,r++;return eo[e]=n,n}function em(e,t){var r=ep(e),n=ep(t);return{start:{offset:e,line:r.line,column:r.column},end:{offset:t,line:n.line,column:n.column}}}function eg(e){ei<es||(ei>es&&(es=ei,ed=[]),ed.push(e))}function ey(){var e,t,r,n,u=32*ei+0,a=el[u];return a?(ei=a.nextPos,a.result):(e=ei,(t=eh())!==o&&(r=ev())!==o&&eh()!==o?e=t=1===(n=r).length?n[0]:{type:"matches",selectors:n}:(ei=e,e=o),e===o&&(e=ei,(t=eh())!==o&&(t=void 0),e=t),el[u]={nextPos:ei,result:e},e)}function eh(){var e,r,n=32*ei+1,u=el[n];if(u)return ei=u.nextPos,u.result;for(e=[],32===t.charCodeAt(ei)?(r=" ",ei++):(r=o,eg(l));r!==o;)e.push(r),32===t.charCodeAt(ei)?(r=" ",ei++):(r=o,eg(l));return el[n]={nextPos:ei,result:e},e}function eb(){var e,r,n,u=32*ei+2,a=el[u];if(a)return ei=a.nextPos,a.result;if(r=[],c.test(t.charAt(ei))?(n=t.charAt(ei),ei++):(n=o,eg(f)),n!==o)for(;n!==o;)r.push(n),c.test(t.charAt(ei))?(n=t.charAt(ei),ei++):(n=o,eg(f));else r=o;return r!==o&&(r=r.join("")),e=r,el[u]={nextPos:ei,result:e},e}function eE(){var e,r,n,u=32*ei+3,a=el[u];return a?(ei=a.nextPos,a.result):(e=ei,(r=eh())!==o?(62===t.charCodeAt(ei)?(n=">",ei++):(n=o,eg(p)),n!==o&&eh()!==o?e=r="child":(ei=e,e=o)):(ei=e,e=o),e===o&&(e=ei,(r=eh())!==o?(126===t.charCodeAt(ei)?(n="~",ei++):(n=o,eg(m)),n!==o&&eh()!==o?e=r="sibling":(ei=e,e=o)):(ei=e,e=o),e===o&&(e=ei,(r=eh())!==o?(43===t.charCodeAt(ei)?(n="+",ei++):(n=o,eg(g)),n!==o&&eh()!==o?e=r="adjacent":(ei=e,e=o)):(ei=e,e=o),e===o&&(e=ei,32===t.charCodeAt(ei)?(r=" ",ei++):(r=o,eg(l)),r!==o&&(n=eh())!==o?e=r="descendant":(ei=e,e=o)))),el[u]={nextPos:ei,result:e},e)}function ev(){var e,r,n,u,a,i,s,d,l=32*ei+5,c=el[l];if(c)return ei=c.nextPos,c.result;if(e=ei,(r=eD())!==o){for(n=[],u=ei,(a=eh())!==o?(44===t.charCodeAt(ei)?(i=",",ei++):(i=o,eg(y)),i!==o&&(s=eh())!==o&&(d=eD())!==o?u=a=[a,i,s,d]:(ei=u,u=o)):(ei=u,u=o);u!==o;)n.push(u),u=ei,(a=eh())!==o?(44===t.charCodeAt(ei)?(i=",",ei++):(i=o,eg(y)),i!==o&&(s=eh())!==o&&(d=eD())!==o?u=a=[a,i,s,d]:(ei=u,u=o)):(ei=u,u=o);n!==o?e=r=h(r,n):(ei=e,e=o)}else ei=e,e=o;return el[l]={nextPos:ei,result:e},e}function ex(){var e,t,r,n,u,a=32*ei+6,i=el[a];return i?(ei=i.nextPos,i.result):(e=ei,(t=eE())===o&&(t=null),t!==o&&(r=eD())!==o?(u=r,e=t=(n=t)?{type:n,left:{type:"exactNode"},right:u}:u):(ei=e,e=o),el[a]={nextPos:ei,result:e},e)}function eD(){var e,t,r,n,u,a,i,s=32*ei+7,d=el[s];if(d)return ei=d.nextPos,d.result;if(e=ei,(t=eA())!==o){for(r=[],n=ei,(u=eE())!==o&&(a=eA())!==o?n=u=[u,a]:(ei=n,n=o);n!==o;)r.push(n),n=ei,(u=eE())!==o&&(a=eA())!==o?n=u=[u,a]:(ei=n,n=o);r!==o?(i=t,e=t=r.reduce(function(e,t){return{type:t[0],left:e,right:t[1]}},i)):(ei=e,e=o)}else ei=e,e=o;return el[s]={nextPos:ei,result:e},e}function eA(){var e,r,n,u,a,i,s,d=32*ei+8,l=el[d];if(l)return ei=l.nextPos,l.result;if(e=ei,33===t.charCodeAt(ei)?(r="!",ei++):(r=o,eg(b)),r===o&&(r=null),r!==o){if(n=[],(u=eS())!==o)for(;u!==o;)n.push(u),u=eS();else n=o;n!==o?(a=r,s=1===(i=n).length?i[0]:{type:"compound",selectors:i},a&&(s.subject=!0),e=r=s):(ei=e,e=o)}else ei=e,e=o;return el[d]={nextPos:ei,result:e},e}function eS(){var e,r,n,u,a,i,s,d,l,c,f,p,m,g,eo,es,ed,ec,ef,ep,em,ey,eE,eD,eA,eS,e_,eF,ek,eP,eI,eB,eO,eR,eN,eL,ej,eM,e$,eU,eq,ez,eW,eY,eV,eZ,eG,eK,eH,eX,eJ,eQ,e0,e1,e3,e2,e4,e5,e8,e6,e9,e7,te,tt,tr,tn,tu,ta=32*ei+9,ti=el[ta];return ti?(ei=ti.nextPos,ti.result):((tu=(u=el[n=32*ei+10])?(ei=u.nextPos,u.result):(42===t.charCodeAt(ei)?(r="*",ei++):(r=o,eg(E)),r!==o&&(r={type:"wildcard",value:r}),e=r,el[n]={nextPos:ei,result:e},e))===o&&(tu=(l=el[d=32*ei+11])?(ei=l.nextPos,l.result):(a=ei,35===t.charCodeAt(ei)?(i="#",ei++):(i=o,eg(v)),i===o&&(i=null),i!==o&&(s=eb())!==o?a=i={type:"identifier",value:s}:(ei=a,a=o),el[d]={nextPos:ei,result:a},a))===o&&(tu=(eo=el[g=32*ei+12])?(ei=eo.nextPos,eo.result):(c=ei,91===t.charCodeAt(ei)?(f="[",ei++):(f=o,eg(x)),f!==o&&eh()!==o&&(p=(em=el[ep=32*ei+16])?(ei=em.nextPos,em.result):(es=ei,(ed=eC())!==o&&eh()!==o&&(ec=(eS=el[eA=32*ei+14])?(ei=eS.nextPos,eS.result):(ey=ei,33===t.charCodeAt(ei)?(eE="!",ei++):(eE=o,eg(b)),eE===o&&(eE=null),eE!==o?(61===t.charCodeAt(ei)?(eD="=",ei++):(eD=o,eg(C)),eD!==o?ey=eE=T(eE):(ei=ey,ey=o)):(ei=ey,ey=o),el[eA]={nextPos:ei,result:ey},ey))!==o&&eh()!==o?((ef=function(){var e,r,n,u,a,i=32*ei+20,s=el[i];if(s)return ei=s.nextPos,s.result;if(e=ei,"type("===t.substr(ei,5)?(r="type(",ei+=5):(r=o,eg(z)),r!==o)if(eh()!==o){if(n=[],W.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(Y)),u!==o)for(;u!==o;)n.push(u),W.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(Y));else n=o;n!==o&&(u=eh())!==o?(41===t.charCodeAt(ei)?(a=")",ei++):(a=o,eg(V)),a!==o?e=r={type:"type",value:n.join("")}:(ei=e,e=o)):(ei=e,e=o)}else ei=e,e=o;else ei=e,e=o;return el[i]={nextPos:ei,result:e},e}())===o&&(ef=function(){var e,r,n,u,a,i,s=32*ei+22,d=el[s];if(d)return ei=d.nextPos,d.result;if(e=ei,47===t.charCodeAt(ei)?(r="/",ei++):(r=o,eg(K)),r!==o){if(n=[],H.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(X)),u!==o)for(;u!==o;)n.push(u),H.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(X));else n=o;n!==o?(47===t.charCodeAt(ei)?(u="/",ei++):(u=o,eg(K)),u!==o?((a=function(){var e,r,n=32*ei+21,u=el[n];if(u)return ei=u.nextPos,u.result;if(e=[],Z.test(t.charAt(ei))?(r=t.charAt(ei),ei++):(r=o,eg(G)),r!==o)for(;r!==o;)e.push(r),Z.test(t.charAt(ei))?(r=t.charAt(ei),ei++):(r=o,eg(G));else e=o;return el[n]={nextPos:ei,result:e},e}())===o&&(a=null),a!==o?(i=a,e=r={type:"regexp",value:new RegExp(n.join(""),i?i.join(""):"")}):(ei=e,e=o)):(ei=e,e=o)):(ei=e,e=o)}else ei=e,e=o;return el[s]={nextPos:ei,result:e},e}()),ef!==o?es=ed=k(ed,ec,ef):(ei=es,es=o)):(ei=es,es=o),es===o&&(es=ei,(ed=eC())!==o&&eh()!==o&&(ec=(eI=el[eP=32*ei+13])?(ei=eI.nextPos,eI.result):(e_=ei,A.test(t.charAt(ei))?(eF=t.charAt(ei),ei++):(eF=o,eg(S)),eF===o&&(eF=null),eF!==o?(61===t.charCodeAt(ei)?(ek="=",ei++):(ek=o,eg(C)),ek!==o?e_=eF=T(eF):(ei=e_,e_=o)):(ei=e_,e_=o),e_===o&&(w.test(t.charAt(ei))?(e_=t.charAt(ei),ei++):(e_=o,eg(_))),el[eP]={nextPos:ei,result:e_},e_))!==o&&eh()!==o?((ef=function(){var e,r,n,u,a,i,s=32*ei+17,d=el[s];if(d)return ei=d.nextPos,d.result;if(e=ei,34===t.charCodeAt(ei)?(r='"',ei++):(r=o,eg(P)),r!==o){for(n=[],I.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(B)),u===o&&(u=ei,92===t.charCodeAt(ei)?(a="\\",ei++):(a=o,eg(O)),a!==o?(t.length>ei?(i=t.charAt(ei),ei++):(i=o,eg(R)),i!==o?u=a=N(a,i):(ei=u,u=o)):(ei=u,u=o));u!==o;)n.push(u),I.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(B)),u===o&&(u=ei,92===t.charCodeAt(ei)?(a="\\",ei++):(a=o,eg(O)),a!==o?(t.length>ei?(i=t.charAt(ei),ei++):(i=o,eg(R)),i!==o?u=a=N(a,i):(ei=u,u=o)):(ei=u,u=o));n!==o?(34===t.charCodeAt(ei)?(u='"',ei++):(u=o,eg(P)),u!==o?e=r=L(n):(ei=e,e=o)):(ei=e,e=o)}else ei=e,e=o;if(e===o)if(e=ei,39===t.charCodeAt(ei)?(r="'",ei++):(r=o,eg(j)),r!==o){for(n=[],M.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg($)),u===o&&(u=ei,92===t.charCodeAt(ei)?(a="\\",ei++):(a=o,eg(O)),a!==o?(t.length>ei?(i=t.charAt(ei),ei++):(i=o,eg(R)),i!==o?u=a=N(a,i):(ei=u,u=o)):(ei=u,u=o));u!==o;)n.push(u),M.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg($)),u===o&&(u=ei,92===t.charCodeAt(ei)?(a="\\",ei++):(a=o,eg(O)),a!==o?(t.length>ei?(i=t.charAt(ei),ei++):(i=o,eg(R)),i!==o?u=a=N(a,i):(ei=u,u=o)):(ei=u,u=o));n!==o?(39===t.charCodeAt(ei)?(u="'",ei++):(u=o,eg(j)),u!==o?e=r=L(n):(ei=e,e=o)):(ei=e,e=o)}else ei=e,e=o;return el[s]={nextPos:ei,result:e},e}())===o&&(ef=function(){var e,r,n,u,a,i,s=32*ei+18,d=el[s];if(d)return ei=d.nextPos,d.result;for(e=ei,r=ei,n=[],U.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(q));u!==o;)n.push(u),U.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(q));if(n!==o?(46===t.charCodeAt(ei)?(u=".",ei++):(u=o,eg(F)),u!==o?r=n=[n,u]:(ei=r,r=o)):(ei=r,r=o),r===o&&(r=null),r!==o){if(n=[],U.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(q)),u!==o)for(;u!==o;)n.push(u),U.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(q));else n=o;n!==o?(i=n,e=r={type:"literal",value:parseFloat(((a=r)?[].concat.apply([],a).join(""):"")+i.join(""))}):(ei=e,e=o)}else ei=e,e=o;return el[s]={nextPos:ei,result:e},e}())===o&&(ef=(eN=el[eR=32*ei+19])?(ei=eN.nextPos,eN.result):((eO=eb())!==o&&(eO={type:"literal",value:eO}),eB=eO,el[eR]={nextPos:ei,result:eB},eB)),ef!==o?es=ed=k(ed,ec,ef):(ei=es,es=o)):(ei=es,es=o),es===o&&(es=ei,(ed=eC())!==o&&(ed={type:"attribute",name:ed}),es=ed)),el[ep]={nextPos:ei,result:es},es))!==o&&eh()!==o?(93===t.charCodeAt(ei)?(m="]",ei++):(m=o,eg(D)),m!==o?c=f=p:(ei=c,c=o)):(ei=c,c=o),el[g]={nextPos:ei,result:c},c))===o&&(tu=function(){var e,r,n,u,a,i,s,d=32*ei+23,l=el[d];if(l)return ei=l.nextPos,l.result;if(e=ei,46===t.charCodeAt(ei)?(r=".",ei++):(r=o,eg(F)),r!==o)if((n=eb())!==o){for(u=[],a=ei,46===t.charCodeAt(ei)?(i=".",ei++):(i=o,eg(F)),i!==o&&(s=eb())!==o?a=i=[i,s]:(ei=a,a=o);a!==o;)u.push(a),a=ei,46===t.charCodeAt(ei)?(i=".",ei++):(i=o,eg(F)),i!==o&&(s=eb())!==o?a=i=[i,s]:(ei=a,a=o);u!==o?e=r={type:"field",name:u.reduce(function(e,t){return e+t[0]+t[1]},n)}:(ei=e,e=o)}else ei=e,e=o;else ei=e,e=o;return el[d]={nextPos:ei,result:e},e}())===o&&(tu=(eq=el[eU=32*ei+24])?(ei=eq.nextPos,eq.result):(eL=ei,":not("===t.substr(ei,5)?(ej=":not(",ei+=5):(ej=o,eg(J)),ej!==o&&eh()!==o&&(eM=ev())!==o&&eh()!==o?(41===t.charCodeAt(ei)?(e$=")",ei++):(e$=o,eg(V)),e$!==o?eL=ej={type:"not",selectors:eM}:(ei=eL,eL=o)):(ei=eL,eL=o),el[eU]={nextPos:ei,result:eL},eL))===o&&(tu=(eG=el[eZ=32*ei+25])?(ei=eG.nextPos,eG.result):(ez=ei,":matches("===t.substr(ei,9)?(eW=":matches(",ei+=9):(eW=o,eg(Q)),eW!==o&&eh()!==o&&(eY=ev())!==o&&eh()!==o?(41===t.charCodeAt(ei)?(eV=")",ei++):(eV=o,eg(V)),eV!==o?ez=eW={type:"matches",selectors:eY}:(ei=ez,ez=o)):(ei=ez,ez=o),el[eZ]={nextPos:ei,result:ez},ez))===o&&(tu=(e0=el[eQ=32*ei+26])?(ei=e0.nextPos,e0.result):(eK=ei,":has("===t.substr(ei,5)?(eH=":has(",ei+=5):(eH=o,eg(ee)),eH!==o&&eh()!==o&&(eX=function(){var e,r,n,u,a,i,s,d,l=32*ei+4,c=el[l];if(c)return ei=c.nextPos,c.result;if(e=ei,(r=ex())!==o){for(n=[],u=ei,(a=eh())!==o?(44===t.charCodeAt(ei)?(i=",",ei++):(i=o,eg(y)),i!==o&&(s=eh())!==o&&(d=ex())!==o?u=a=[a,i,s,d]:(ei=u,u=o)):(ei=u,u=o);u!==o;)n.push(u),u=ei,(a=eh())!==o?(44===t.charCodeAt(ei)?(i=",",ei++):(i=o,eg(y)),i!==o&&(s=eh())!==o&&(d=ex())!==o?u=a=[a,i,s,d]:(ei=u,u=o)):(ei=u,u=o);n!==o?e=r=h(r,n):(ei=e,e=o)}else ei=e,e=o;return el[l]={nextPos:ei,result:e},e}())!==o&&eh()!==o?(41===t.charCodeAt(ei)?(eJ=")",ei++):(eJ=o,eg(V)),eJ!==o?eK=eH={type:"has",selectors:eX}:(ei=eK,eK=o)):(ei=eK,eK=o),el[eQ]={nextPos:ei,result:eK},eK))===o&&(tu=(e4=el[e2=32*ei+27])?(ei=e4.nextPos,e4.result):(":first-child"===t.substr(ei,12)?(e3=":first-child",ei+=12):(e3=o,eg(et)),e3!==o&&(e3=eT(1)),e1=e3,el[e2]={nextPos:ei,result:e1},e1))===o&&(tu=(e9=el[e6=32*ei+28])?(ei=e9.nextPos,e9.result):(":last-child"===t.substr(ei,11)?(e8=":last-child",ei+=11):(e8=o,eg(er)),e8!==o&&(e8=ew(1)),e5=e8,el[e6]={nextPos:ei,result:e5},e5))===o&&(tu=function(){var e,r,n,u,a,i=32*ei+29,s=el[i];if(s)return ei=s.nextPos,s.result;if(e=ei,":nth-child("===t.substr(ei,11)?(r=":nth-child(",ei+=11):(r=o,eg(en)),r!==o)if(eh()!==o){if(n=[],U.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(q)),u!==o)for(;u!==o;)n.push(u),U.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(q));else n=o;n!==o&&(u=eh())!==o?(41===t.charCodeAt(ei)?(a=")",ei++):(a=o,eg(V)),a!==o?e=r=eT(parseInt(n.join(""),10)):(ei=e,e=o)):(ei=e,e=o)}else ei=e,e=o;else ei=e,e=o;return el[i]={nextPos:ei,result:e},e}())===o&&(tu=function(){var e,r,n,u,a,i=32*ei+30,s=el[i];if(s)return ei=s.nextPos,s.result;if(e=ei,":nth-last-child("===t.substr(ei,16)?(r=":nth-last-child(",ei+=16):(r=o,eg(eu)),r!==o)if(eh()!==o){if(n=[],U.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(q)),u!==o)for(;u!==o;)n.push(u),U.test(t.charAt(ei))?(u=t.charAt(ei),ei++):(u=o,eg(q));else n=o;n!==o&&(u=eh())!==o?(41===t.charCodeAt(ei)?(a=")",ei++):(a=o,eg(V)),a!==o?e=r=ew(parseInt(n.join(""),10)):(ei=e,e=o)):(ei=e,e=o)}else ei=e,e=o;else ei=e,e=o;return el[i]={nextPos:ei,result:e},e}())===o&&(tu=(tn=el[tr=32*ei+31])?(ei=tn.nextPos,tn.result):(e7=ei,58===t.charCodeAt(ei)?(te=":",ei++):(te=o,eg(ea)),te!==o&&(tt=eb())!==o?e7=te={type:"class",name:tt}:(ei=e7,e7=o),el[tr]={nextPos:ei,result:e7},e7)),el[ta]={nextPos:ei,result:tu},tu)}function eC(){var e,r,n,u,a,i,s,d=32*ei+15,l=el[d];if(l)return ei=l.nextPos,l.result;if(e=ei,(r=eb())!==o){for(n=[],u=ei,46===t.charCodeAt(ei)?(a=".",ei++):(a=o,eg(F)),a!==o&&(i=eb())!==o?u=a=[a,i]:(ei=u,u=o);u!==o;)n.push(u),u=ei,46===t.charCodeAt(ei)?(a=".",ei++):(a=o,eg(F)),a!==o&&(i=eb())!==o?u=a=[a,i]:(ei=u,u=o);n!==o?(s=r,e=r=[].concat.apply([s],n).join("")):(ei=e,e=o)}else ei=e,e=o;return el[d]={nextPos:ei,result:e},e}function eT(e){return{type:"nth-child",index:{type:"literal",value:e}}}function ew(e){return{type:"nth-last-child",index:{type:"literal",value:e}}}if((n=d())!==o&&ei===t.length)return n;throw n!==o&&ei<t.length&&eg({type:"end"}),u=ed,a=es<t.length?t.charAt(es):null,i=es<t.length?em(es,es+1):em(es,es),new e(e.buildMessage(u,a),u,a,i)}}}())});function o1(e,t){for(var r=0;r<t.length&&null!=e;++r)e=e[t[r]];return e}var o3="function"==typeof WeakMap?new WeakMap:null;function o2(e){if(null==e)return function(){return!0};if(null!=o3){var t=o3.get(e);return null!=t||(t=o4(e),o3.set(e,t)),t}return o4(e)}function o4(e){switch(e.type){case"wildcard":return function(){return!0};case"identifier":var t=e.value.toLowerCase();return function(e,r,n){return t===e[n&&n.nodeTypeKey||"type"].toLowerCase()};case"exactNode":return function(e,t){return 0===t.length};case"field":var r=e.name.split(".");return function(e,t){return function e(t,r,n,u){for(var a=r,i=u;i<n.length;++i){if(null==a)return!1;var o=a[n[i]];if(Array.isArray(o)){for(var s=0;s<o.length;++s)if(e(t,o[s],n,i+1))return!0;return!1}a=o}return t===a}(e,t[r.length-1],r,0)};case"matches":var n=e.selectors.map(o2);return function(e,t,r){for(var u=0;u<n.length;++u)if(n[u](e,t,r))return!0;return!1};case"compound":var u=e.selectors.map(o2);return function(e,t,r){for(var n=0;n<u.length;++n)if(!u[n](e,t,r))return!1;return!0};case"not":var a=e.selectors.map(o2);return function(e,t,r){for(var n=0;n<a.length;++n)if(a[n](e,t,r))return!1;return!0};case"has":var i=e.selectors.map(o2);return function(e,t,r){var n=!1,u=[];return oQ.traverse(e,{enter:function(e,t){null!=t&&u.unshift(t);for(var a=0;a<i.length;++a)if(i[a](e,u,r))return n=!0,void this.break()},leave:function(){u.shift()},keys:r&&r.visitorKeys,fallback:r&&r.fallback||"iteration"}),n};case"child":var o=o2(e.left),s=o2(e.right);return function(e,t,r){return!!(t.length>0&&s(e,t,r))&&o(t[0],t.slice(1),r)};case"descendant":var d=o2(e.left),l=o2(e.right);return function(e,t,r){if(l(e,t,r)){for(var n=0,u=t.length;n<u;++n)if(d(t[n],t.slice(n+1),r))return!0}return!1};case"attribute":var c=e.name.split(".");switch(e.operator){case void 0:return function(e){return null!=o1(e,c)};case"=":switch(e.value.type){case"regexp":return function(t){var r=o1(t,c);return"string"==typeof r&&e.value.value.test(r)};case"literal":var f="".concat(e.value.value);return function(e){return f==="".concat(o1(e,c))};case"type":return function(t){return e.value.value===oG(o1(t,c))}}throw Error("Unknown selector value type: ".concat(e.value.type));case"!=":switch(e.value.type){case"regexp":return function(t){return!e.value.value.test(o1(t,c))};case"literal":var p="".concat(e.value.value);return function(e){return p!=="".concat(o1(e,c))};case"type":return function(t){return e.value.value!==oG(o1(t,c))}}throw Error("Unknown selector value type: ".concat(e.value.type));case"<=":return function(t){return o1(t,c)<=e.value.value};case"<":return function(t){return o1(t,c)<e.value.value};case">":return function(t){return o1(t,c)>e.value.value};case">=":return function(t){return o1(t,c)>=e.value.value}}throw Error("Unknown operator: ".concat(e.operator));case"sibling":var m=o2(e.left),g=o2(e.right);return function(t,r,n){return g(t,r,n)&&o6(t,m,r,"LEFT_SIDE",n)||e.left.subject&&m(t,r,n)&&o6(t,g,r,"RIGHT_SIDE",n)};case"adjacent":var y=o2(e.left),h=o2(e.right);return function(t,r,n){return h(t,r,n)&&o9(t,y,r,"LEFT_SIDE",n)||e.right.subject&&y(t,r,n)&&o9(t,h,r,"RIGHT_SIDE",n)};case"nth-child":var b=e.index.value,E=o2(e.right);return function(e,t,r){return E(e,t,r)&&o7(e,t,b,r)};case"nth-last-child":var v=-e.index.value,x=o2(e.right);return function(e,t,r){return x(e,t,r)&&o7(e,t,v,r)};case"class":var D=e.name.toLowerCase();return function(t,r,n){if(n&&n.matchClass)return n.matchClass(e.name,t,r);if(n&&n.nodeTypeKey)return!1;switch(D){case"statement":if("Statement"===t.type.slice(-9))return!0;case"declaration":return"Declaration"===t.type.slice(-11);case"pattern":if("Pattern"===t.type.slice(-7))return!0;case"expression":return"Expression"===t.type.slice(-10)||"Literal"===t.type.slice(-7)||"Identifier"===t.type&&(0===r.length||"MetaProperty"!==r[0].type)||"MetaProperty"===t.type;case"function":return"FunctionDeclaration"===t.type||"FunctionExpression"===t.type||"ArrowFunctionExpression"===t.type}throw Error("Unknown class name: ".concat(e.name))}}throw Error("Unknown selector type: ".concat(e.type))}function o5(e,t){var r=t&&t.nodeTypeKey||"type",n=e[r];return t&&t.visitorKeys&&t.visitorKeys[n]?t.visitorKeys[n]:oQ.VisitorKeys[n]?oQ.VisitorKeys[n]:t&&"function"==typeof t.fallback?t.fallback(e):Object.keys(e).filter(function(e){return e!==r})}function o8(e,t){var r=t&&t.nodeTypeKey||"type";return null!==e&&"object"===oG(e)&&"string"==typeof e[r]}function o6(e,t,r,n,u){var a=oK(r,1)[0];if(!a)return!1;for(var i=o5(a,u),o=0;o<i.length;++o){var s=a[i[o]];if(Array.isArray(s)){var d=s.indexOf(e);if(d<0)continue;var l=void 0,c=void 0;"LEFT_SIDE"===n?(l=0,c=d):(l=d+1,c=s.length);for(var f=l;f<c;++f)if(o8(s[f],u)&&t(s[f],r,u))return!0}}return!1}function o9(e,t,r,n,u){var a=oK(r,1)[0];if(!a)return!1;for(var i=o5(a,u),o=0;o<i.length;++o){var s=a[i[o]];if(Array.isArray(s)){var d=s.indexOf(e);if(d<0)continue;if("LEFT_SIDE"===n&&d>0&&o8(s[d-1],u)&&t(s[d-1],r,u)||"RIGHT_SIDE"===n&&d<s.length-1&&o8(s[d+1],u)&&t(s[d+1],r,u))return!0}}return!1}function o7(e,t,r,n){if(0===r)return!1;var u=oK(t,1)[0];if(!u)return!1;for(var a=o5(u,n),i=0;i<a.length;++i){var o=u[a[i]];if(Array.isArray(o)){var s=r<0?o.length+r:r-1;if(s>=0&&s<o.length&&o[s]===e)return!0}}return!1}function se(e,t,r,n){if(t){var u=[],a=o2(t),i=(function e(t,r){if(null==t||"object"!=oG(t))return[];null==r&&(r=t);for(var n=t.subject?[r]:[],u=Object.keys(t),a=0;a<u.length;++a){var i,o=u[a],s=t[o];n.push.apply(n,function(e){if(Array.isArray(e))return oX(e)}(i=e(s,"left"===o?s:r))||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(i)||oH(i)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())}return n})(t).map(o2);oQ.traverse(e,{enter:function(e,t){if(null!=t&&u.unshift(t),a(e,u,n))if(i.length)for(var o=0,s=i.length;o<s;++o){i[o](e,u,n)&&r(e,t,u);for(var d=0,l=u.length;d<l;++d){var c=u.slice(d+1);i[o](u[d],c,n)&&r(u[d],t,c)}}else r(e,t,u)},leave:function(){u.shift()},keys:n&&n.visitorKeys,fallback:n&&n.fallback||"iteration"})}}function st(e,t,r){var n=[];return se(e,t,function(e){n.push(e)},r),n}function sr(e){return o0.parse(e)}function sn(e,t,r){return st(e,sr(t),r)}sn.parse=sr,sn.match=st,sn.traverse=se,sn.matches=function(e,t,r,n){return!t||!!e&&(r||(r=[]),o2(t)(e,r,n))},sn.query=sn;let su="template-indent",sa=new Map,si=[{type:"object",additionalProperties:!1,properties:{indent:{oneOf:[{type:"string",pattern:/^\s+$/.source},{type:"integer",minimum:1}]},tags:{type:"array",uniqueItems:!0,items:{type:"string"}},functions:{type:"array",uniqueItems:!0,items:{type:"string"}},selectors:{type:"array",uniqueItems:!0,items:{type:"string"}},comments:{type:"array",uniqueItems:!0,items:{type:"string"}}}}],so="no-await-in-promise-methods/error",ss="no-await-in-promise-methods/suggestion",sd=["all","allSettled","any","race"],sl="no-negation-in-equality-check/error",sc="no-negation-in-equality-check/suggestion",sf=new Set(["===","!==","==","!="]),sp=e=>"UnaryExpression"===e.type&&e.prefix&&"!"===e.operator;function sm(e,{methods:t,messageId:r}){e.on("CallExpression",n=>{if(!rj(n,{methods:t,argumentsLength:2,optionalCall:!1}))return;let u=n.arguments[1],a=function(e,t){if("Identifier"===e.type&&"Infinity"===e.name)return"Infinity";if(rL(e,{object:"Number",property:"POSITIVE_INFINITY",computed:!1,optional:!1}))return"Number.POSITIVE_INFINITY";let r="ChainExpression"===e.type;if(r&&(e=e.expression),rL(e,{property:"length",computed:!1})&&np(t,e.object))return`${"Identifier"===t.type?t.name:"…"}${r?"?.":"."}length`}(u,n.callee.object);if(!a)return;let i=n.callee.property.name,o={description:a};return"splice"===i?o.argumentName="deleteCount":"toSpliced"===i&&(o.argumentName="skipCount"),{node:u,messageId:r,data:o,fix:t=>nK(t,u,e.sourceCode)}})}let sg="no-unnecessary-slice-end",sy="catch-error-name",sh="invalidExport",sb=/^(?:[A-Z][\da-z]*)*Error$/,sE=e=>{if(!e.superClass)return!1;let{name:t,type:r,property:n}=e.superClass;return"MemberExpression"===r&&({name:t}=n),sb.test(t)},sv=(e,t)=>{if("ExpressionStatement"!==e.type||"AssignmentExpression"!==e.expression.type)return!1;let r=e.expression.left;return!!r.object&&"ThisExpression"===r.object.type&&r.property.name===t};function*sx(e,t){if(!sE(t)||null===t.id)return;let{name:r}=t.id,n=nB(r).replace(/(?:error|)$/i,"Error");r!==n&&(yield{node:t.id,message:`Invalid class name, use \`${n}\`.`});let{sourceCode:u}=e,{body:a}=t.body,i=u.getRange(t.body),o=a.find(e=>"constructor"===e.kind);if(!o)return void(yield{node:t,message:"Add a constructor to your error.",fix:e=>e.insertTextAfterRange([i[0],i[0]+1],`
16
- constructor() {
17
- super();
18
- this.name = '${r}';
19
- }
20
- `)});let s=o.value.body;if(!s)return;let d=s.body,l=d.find(e=>"ExpressionStatement"===e.type&&"CallExpression"===e.expression.type&&"Super"===e.expression.callee.type),c=d.findIndex(e=>sv(e,"message"));if(l){if(-1!==c){let e=d[c];yield{node:l,message:"Pass the error message to `super()` instead of setting `this.message`.",*fix(t){if(0===l.expression.arguments.length){let r=e.expression.right,[n]=u.getRange(l);yield t.insertTextAfterRange([n,n+6],r.raw||r.name)}let r=0===c?u.getRange(s)[0]:u.getRange(d[c-1])[1],[,n]=u.getRange(e);yield t.removeRange([r,n])}}}}else yield{node:s,message:"Missing call to `super()` in constructor."};let f=d.find(e=>sv(e,"name"));if(f)f.expression.right.value!==r&&(yield{node:f?.expression.right??s,message:`The \`name\` property should be set to \`${r}\`.`});else{let e=a.find(e=>"PropertyDefinition"===e.type&&!e.computed&&"Identifier"===e.key.type&&"name"===e.key.name);e?.value&&e.value.value===r||(yield{node:e?.value??s,message:`The \`name\` property should be set to \`${r}\`.`})}}let sD="no-lonely-if",sA=e=>"IfStatement"===e.type&&!e.alternate,sS=e=>"LogicalExpression"===e.type&&("||"===e.operator||"??"===e.operator)||"ConditionalExpression"===e.type||"AssignmentExpression"===e.type||"YieldExpression"===e.type||"SequenceExpression"===e.type;function sC(e,t){let r={};r.ifToken=t.getFirstToken(e),r.openingParenthesisToken=t.getFirstToken(e,1);let{consequent:n}=e;return r.closingParenthesisToken=t.getTokenBefore(n),"BlockStatement"===n.type&&(r.openingBraceToken=t.getFirstToken(n),r.closingBraceToken=t.getLastToken(n)),r}let sT="no-magic-array-flat-depth",sw="no-negated-condition",s_="identifier",sF="non-identifier",sk="prefer-negative-index",sP=new Map([["slice",{argumentsIndexes:[0,1],supportObjects:new Set(["Array","String","ArrayBuffer",...a5])}],["subarray",{argumentsIndexes:[0,1],supportObjects:new Set(a5)}],["splice",{argumentsIndexes:[0],supportObjects:new Set(["Array"])}],["toSpliced",{argumentsIndexes:[0],supportObjects:new Set(["Array"])}],["at",{argumentsIndexes:[0],supportObjects:new Set(["Array","String",...a5])}],["with",{argumentsIndexes:[0],supportObjects:new Set(["Array",...a5])}]]),sI=e=>{let{type:t,property:r}=e;if("MemberExpression"===t&&"Identifier"===r.type)return r.name};var sB=["node:assert","assert","node:assert/strict","assert/strict","node:async_hooks","async_hooks","node:buffer","buffer","node:child_process","child_process","node:cluster","cluster","node:console","console","node:constants","constants","node:crypto","crypto","node:dgram","dgram","node:diagnostics_channel","diagnostics_channel","node:dns","dns","node:dns/promises","dns/promises","node:domain","domain","node:events","events","node:fs","fs","node:fs/promises","fs/promises","node:http","http","node:http2","http2","node:https","https","node:inspector","inspector","node:inspector/promises","inspector/promises","node:module","module","node:net","net","node:os","os","node:path","path","node:path/posix","path/posix","node:path/win32","path/win32","node:perf_hooks","perf_hooks","node:process","process","node:querystring","querystring","node:quic","node:readline","readline","node:readline/promises","readline/promises","node:repl","repl","node:sea","node:sqlite","node:stream","stream","node:stream/consumers","stream/consumers","node:stream/promises","stream/promises","node:stream/web","stream/web","node:string_decoder","string_decoder","node:test","node:test/reporters","node:timers","timers","node:timers/promises","timers/promises","node:tls","tls","node:trace_events","trace_events","node:tty","tty","node:url","url","node:util","util","node:util/types","util/types","node:v8","v8","node:vm","vm","node:wasi","wasi","node:worker_threads","worker_threads","node:zlib","zlib"];function sO(t){if("string"!=typeof t)throw TypeError("Expected a string");return(e??=new Set(sB)).has(t)}let sR="prefer-node-protocol",sN="node:",sL="consistent-date-clone/error",sj="no-accessor-recursion/error",sM=e=>"Identifier"===e.type||"PrivateIdentifier"===e.type,s$=(e,t)=>["type","name"].every(r=>e[r]===t[r]),sU=(e,t)=>"MemberExpression"===e.parent.type&&e.parent.object===e&&!e.parent.computed&&sM(e.parent.property)&&s$(e.parent.property,t.key),sq="error/calculate-dirname",sz="error/calculate-filename";function sW(e,{modules:t,functionName:r,sourceCode:n}){if(!rF(e,{optional:!1,argumentsLength:1}))return!1;let u=new Set;return function e(t,i){if("MemberExpression"===t.type)return!!("property"===i&&rL(t,{property:r,computed:!1,optional:!1}))&&e(t.object,"module");if("CallExpression"===t.type)return"module"===i&&rj(t,{object:"process",method:"getBuiltinModule",argumentsLength:1,optionalMember:!1,optionalCall:!1})&&a(t.arguments[0]);if("Identifier"!==t.type||u.has(t))return!1;u.add(t);let o=tq(n.getScope(t),t);if(o&&1===o.defs.length){var s=o.defs[0],d=i;if("ImportBinding"===s.type){if(!a(s.parent.source))return!1;let e=s.node;return"module"===d?e?.type==="ImportDefaultSpecifier"||e?.type==="ImportNamespaceSpecifier":e?.type==="ImportSpecifier"&&e.imported.name===r}return"Variable"===s.type&&function t(n,u){let{parent:a}=n;return"VariableDeclarator"===a.type?!!a.init&&a.id===n&&"VariableDeclaration"===a.parent.type&&"const"===a.parent.kind&&e(a.init,u):"Property"===a.type&&!!("property"===u&&a.value===n&&!a.computed&&"Identifier"===a.key.type&&a.key.name===r)&&t(a.parent,"module")}(s.name,d)}}(e.callee,"property");function a(e){return e?.type==="Literal"&&t.has(e.value)}}function sY(e,t){return sW(e,{modules:new Set(["url","node:url"]),functionName:"fileURLToPath",sourceCode:t})}function sV(e,t){return sW(e,{modules:new Set(["path","node:path"]),functionName:"dirname",sourceCode:t})}let sZ="no-unnecessary-array-flat-depth",sG="no-unnecessary-array-splice-count",sK="no-useless-error-capture-stack-trace/error",sH="prefer-class-fields/error",sX="prefer-class-fields/suggestion",sJ="prefer-bigint-literals/error",sQ="prefer-bigint-literals/suggestion",s0="prefer-classlist-toggle/error",s1="prefer-classlist-toggle/suggestion",s3=e=>rL(e,{property:"classList",computed:!1}),s2=(e,t,r)=>{let n={node:r??e,messageId:s0};return"IfStatement"===e.type||rO(e)||rO(e.parent)?n.fix=t:n.suggest=[{messageId:s1,fix:t}],n},s4=(e,t,r)=>{let n=rD(e,t);if(r)return ro(e,t)||"UpdateExpression"!==e.type&&"BinaryExpression"!==e.type&&"LogicalExpression"!==e.type&&"ConditionalExpression"!==e.type&&"AssignmentExpression"!==e.type&&"ArrowFunctionExpression"!==e.type&&"YieldExpression"!==e.type&&"SequenceExpression"!==e.type||(n=`(${n})`),n=`!${n}`;return ro(e,t)||"SequenceExpression"!==e.type||(n=`(${n})`),n},s5=(e,t)=>rj(e,{methods:t,argumentsLength:1,optionalCall:!1,optionalMember:!1})&&s3(e.callee.object),s8=(e,t)=>np(e.callee.object,t.callee.object)&&np(e.arguments[0],t.arguments[0]),s6=(e,t,r)=>t?("ChainExpression"===e.type&&(e=e.expression),s5(e,["contains"])&&s8(e,r))?e:void 0:"UnaryExpression"===e.type&&"!"===e.operator&&e.prefix?s6(e.argument,!t,r):void 0,s9="require-module-attributes",s7=/^\s*(?<directive>eslint-disable(?:-(?:next-)?line)?)/,de=/^eslint-disable(?:-next-line|-line)?(?<ruleId>$|(?:\s+(?:@(?:[\w-]+\/){1,2})?[\w-]+)?)/,dt=Symbol("rule-id-no-match");var dr=eQ.createRule({name:"ban-eslint-disable",meta:{type:"problem",docs:{description:"Ban `eslint-disable` comment directive"},schema:[{oneOf:[{type:"boolean"},{type:"string",enum:["allow-with-description"]}]}],messages:{"do-not-use":"Do not use `{{directive}}`","require-description":"Include a description after the `{{directive}}` directive to explain why the `{{directive}}` is necessary.","require-specific-rule":"Enforce specifying rules to disable in `eslint-disable` comments. If you want to disable ESLint on a file altogether, you should ignore it through ESLint configuration."}},create:(e,t="allow-with-description")=>!1===t?{}:{Program(r){if(r.comments&&0!==r.comments.length)for(let n of r.comments){let r=function(e){let t=s7.exec(e);return t?.groups?.directive}(n.value);if(r&&("allow-with-description"!==t||!n.value.includes("--"))){let u="allow-with-description"===t?"require-description":"do-not-use";e.report({node:n,data:{directive:r},messageId:u})}let u=function(e){let t=de.exec(e.trim());return t?t.groups?.ruleId:dt}(n.value);u===dt||u||e.report({node:n,messageId:"require-specific-rule"})}}}});let dn=e1.nullthrow(new e0.Linter({configType:"eslintrc"}).getRules().get("no-return-await"),"[eslint-plugin-sukka] no-return-await rule is removed from ESLint!");var du=eQ.createRule({...dn,meta:{docs:{...dn.meta?.docs,recommended:void 0},...dn.meta,deprecated:!1}}),da=eQ.createRule({name:"no-expression-empty-lines",meta:{messages:{unexpectedEmptyLine:"Unexpected empty line before"},docs:{description:"Disallows empty lines inside expressions."},fixable:"whitespace",type:"suggestion",schema:[]},create(e){let t=e.sourceCode.getText(),r=e3.detectEol(t);return{MemberExpression(n){let u=n.object.range[1],a=di(t.slice(u));if(a.includes("\n")){var i;let t=r+((di(i=a).split(/\r\n|\n/u).at(-1)??"")+i.trimStart());a!==t&&e.report({fix:()=>({range:[u,u+a.length],text:t}),messageId:"unexpectedEmptyLine",node:n.property})}}}}});function di(e){return e.slice(0,e.length-e.trimStart().length)}var ds=eQ.createRule({name:"object-format",meta:{fixable:"whitespace",schema:[{type:"object",properties:{maxLineLength:{type:"number",default:80},maxObjectSize:{type:"number",default:3}},additionalProperties:!1}],docs:{description:"Requires multiline or single-line object format.",recommended:"stylistic"},messages:{preferMultiline:"Prefer multiline object literal",preferSingleLine:"Prefer single-line object literal"},type:"layout"},create(e,t={}){var r;let n=e.sourceCode.getText(),u=e3.detectEol(n),a=`,${u}`,{maxLineLength:i=80,maxObjectSize:o=3}=t,s=(r=n,e=>r.slice(e.range[1]).trimStart().startsWith("//"));return{ObjectExpression(t){let r=t.properties.map(t=>n.slice(Math.min(t.range[0],...e.sourceCode.getCommentsBefore(t).map(e=>e.range[0])),t.range[1]).trim());if(r.length>0){var d;let l,c,f,p,m=e.sourceCode.getText(t),g=r.length>o||r.some(dd)||t.properties.some(s),y=dd(m),h=!m.includes("\n");g&&h&&e.report({fix:()=>({range:t.range,text:`{${u}${r.join(a)}${u}}`}),messageId:"preferMultiline",node:t}),!g&&y&&(l=e.sourceCode.getLocFromIndex(t.range[0]),c=r.reduce((e,t)=>e+t.length,0),f=2*(r.length-1),p=("number"==typeof(d=t.range[1])?n.slice(d):n.slice(...d.range)).split(/\r\n|\n/u)[0].replace(/^((?: as const)?\S*).*/u,"$1").length,l.column+c+f+4+p<=i)&&e.report({fix:()=>({range:t.range,text:`{${r.join(",")}}`}),messageId:"preferSingleLine",node:t})}}}}});function dd(e){return e.includes("\n")}var dl=eQ.createRule({name:"prefer-single-boolean-return",meta:{messages:{replaceIfThenElseByReturn:"Replace this if-then-else flow by a single return statement.",suggest:"Replace with single return statement",suggestCast:'Replace with single return statement using "!!" cast',suggestBoolean:"Replace with single return statement without cast (condition should be boolean!)"},schema:[],type:"suggestion",hasSuggestions:!0,docs:{description:'Return of boolean expressions should not be wrapped into an "if-then-else" statement',recommended:"recommended"}},create:e=>({IfStatement(t){var r,n,u;let a,i,o,s;t.parent.type!==e2.AST_NODE_TYPES.IfStatement&&df(t.consequent)&&function(e){if(e.alternate)return df(e.alternate);let{parent:t}=e;if(t.type===e2.AST_NODE_TYPES.BlockStatement){let r=t.body.indexOf(e);return dc(t.body[r+1])}return!1}(t)&&e.report({messageId:"replaceIfThenElseByReturn",node:t,suggest:(r=t,a=e=>t=>{let n=`return ${e};`;if(r.alternate)return t.replaceText(r,n);let u=r.parent,a=u.body.indexOf(r),i=u.body[a+1],o=[r.range[0],i.range[1]];return t.replaceTextRange(o,n)},i=!1===((n=r.consequent).type===e2.AST_NODE_TYPES.BlockStatement?n.body[0]:n).argument.value,o=!(((u=r.test).type===e2.AST_NODE_TYPES.UnaryExpression||u.type===e2.AST_NODE_TYPES.BinaryExpression)&&["!","==","===","!=","!==","<","<=",">",">=","in","instanceof"].includes(u.operator)),s=e.sourceCode.getText(r.test),i?[{messageId:"suggest",fix:a(`!(${s})`)}]:o?[{messageId:"suggestCast",fix:a(`!!(${s})`)},{messageId:"suggestBoolean",fix:a(s)}]:[{messageId:"suggest",fix:a(s)}])})}})});function dc(e){return e?.type===e2.AST_NODE_TYPES.ReturnStatement&&e.argument?.type===e2.AST_NODE_TYPES.Literal&&"boolean"==typeof e.argument.value}function df(e){return void 0!==e&&(e.type===e2.AST_NODE_TYPES.BlockStatement&&1===e.body.length&&dc(e.body[0])||dc(e))}function dp(e,t,r){var n,u;return Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((e,n)=>dp(e,t[n],r)):!(Array.isArray(e)||Array.isArray(t))&&e.type===t.type&&(n=r.getTokens(e),u=r.getTokens(t),n.length===u.length&&n.every((e,t)=>e.value===u[t].value))}function dm(e){let t=!1;return{branches:e.cases.reduce((r,n,u)=>{var a;return n.test||(t=!0),(u===e.cases.length-1||n.consequent.length>0)&&r.push((a=n.consequent).length>0&&a[a.length-1].type===e2.AST_NODE_TYPES.BreakStatement?a.slice(0,-1):a),r},[]),endsWithDefault:t}}eQ.createRule({name:"no-all-duplicated-branches",meta:{messages:{removeOrEditConditionalStructure:"Remove this conditional structure or edit its code blocks so that they're not all the same.",returnsTheSameValue:'This conditional operation returns the same value whether the condition is "true" or "false".'},schema:[],type:"problem",docs:{description:"All branches in a conditional structure should not have exactly the same implementation",recommended:"recommended"}},create(e){return{IfStatement(r){if(r.parent?.type!==e2.AST_NODE_TYPES.IfStatement){let{branches:n,endsWithElse:u}=function(e){let t=[e.consequent],r=!1,n=e.alternate;for(;n;)if(n.type===e2.AST_NODE_TYPES.IfStatement)t.push(n.consequent),n=n.alternate;else{t.push(n),r=!0;break}return{branches:t,endsWithElse:r}}(r);u&&t(n)&&e.report({messageId:"removeOrEditConditionalStructure",node:r})}},SwitchStatement(r){let{branches:n,endsWithDefault:u}=dm(r);u&&t(n)&&e.report({messageId:"removeOrEditConditionalStructure",node:r})},ConditionalExpression(r){t([r.consequent,r.alternate])&&e.report({messageId:"returnsTheSameValue",node:r})}};function t(t){return t.length>1&&t.slice(1).every((r,n)=>dp(r,t[n],e.sourceCode))}}});var dg=eQ.createRule({name:"no-duplicated-branches",meta:{schema:[],type:"suggestion",docs:{description:"Two branches in a conditional structure should not have exactly the same implementation",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S1871/javascript"},messages:{sameConditionalBlock:"This {{type}}'s code block is the same as the block for the {{type}} on line {{line}}."}},create(e){return{IfStatement(u){!function(u){if(u.parent.type===e2.AST_NODE_TYPES.IfStatement)return;let{branches:a,endsWithElse:i}=function(e){let t=[e.consequent],r=!1,n=e.alternate;for(;n;)if(n.type===e2.AST_NODE_TYPES.IfStatement)t.push(n.consequent),n=n.alternate;else{t.push(n),r=!0;break}return{branches:t,endsWithElse:r}}(u);if(r(a,i))return a.slice(1).forEach((e,t)=>n(e,a[t],"branch"));for(let r=1;r<a.length;r++)if(t([a[r]]))for(let t=0;t<r&&!function(t,r){let u=dh(t,r,e.sourceCode);return u&&"loc"in r&&n(t,r,"branch"),u}(a[r],a[t]);t++);}(u)},SwitchStatement(u){!function(u){let{cases:a}=u,{endsWithDefault:i}=dm(u),o=a.filter(e=>db(dy(e.consequent)).length>0);if(r(o.map(e=>db(dy(e.consequent))),i))return o.slice(1).forEach((e,t)=>n(e,o[t],"case"));for(let r=1;r<a.length;r++){let u=db(dy(a[r].consequent));if(t(u)){for(let t=0;t<r;t++)if(dh(u,db(dy(a[t].consequent)),e.sourceCode)){n(a[r],a[t],"case");break}}}}(u)}};function t(t){if(t.length>0){let r=[...e.sourceCode.getTokens(t[0]),...e.sourceCode.getTokens(t[t.length-1])].filter(e=>"{"!==e.value&&"}"!==e.value);return r.length>0&&r[r.length-1].loc.end.line>r[0].loc.start.line}return!1}function r(t,r){return!r&&t.length>1&&t.slice(1).every((r,n)=>dh(r,t[n],e.sourceCode))}function n(t,r,n){let u=r.loc;e.report({messageId:"sameConditionalBlock",data:{type:n,line:String(u.start.line)},node:t})}}});function dy(e){if(1===e.length){let t=e[0];if(t.type===e2.AST_NODE_TYPES.BlockStatement)return t.body}return e}function dh(e,t,r){var n,u;return Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((e,n)=>dh(e,t[n],r)):!(Array.isArray(e)||Array.isArray(t))&&e.type===t.type&&(n=r.getTokens(e),u=r.getTokens(t),n.length===u.length&&n.every((e,t)=>e.value===u[t].value))}function db(e){return e.length>0&&e[e.length-1].type===e2.AST_NODE_TYPES.BreakStatement?e.slice(0,-1):e}var dE=eQ.createRule({name:"comma-or-logical-or-case",meta:{type:"problem",docs:{description:"Comma and logical OR operators should not be used in switch cases",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S3616/javascript"},schema:[],messages:{specifyCase:'Explicitly specify {{nesting}} separate cases that fall through; currently this case clause only works for "{{expression}}".'}},create(e){function t(t,r,n){var u;e.report({messageId:"specifyCase",data:{nesting:n.toString(),expression:String((u=r).type===e2.AST_NODE_TYPES.Literal?u.value:e.sourceCode.getText(u))},node:t})}return{"SwitchCase > SequenceExpression":function(e){let r=e.expressions;t(e,r[r.length-1],r.length)},"SwitchCase > LogicalExpression":function(r){var n;if((n=function(t){let r=e.sourceCode.getAncestors(t);for(let e=r.length-1;e>=0;e--)if(r[e].type===e2.AST_NODE_TYPES.SwitchStatement)return r[e];throw Error("A switch case should have an enclosing switch statement")}(r)).discriminant.type!==e2.AST_NODE_TYPES.Literal||!0!==n.discriminant.value){let e=function e(t,r){if("||"===t.operator)return t.left.type===e2.AST_NODE_TYPES.LogicalExpression?e(t.left,r+1):[t.left,r+1]}(r,0);e&&t(r,e[0],e[1]+1)}}}}}),dv=eQ.createRule({name:"no-element-overwrite",meta:{schema:[],type:"problem",docs:{description:"Collection elements should not be replaced unconditionally",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4143/javascript"},messages:{verifyIntendedIndex:'Verify this is the index that was intended; "{{index}}" was already set on line {{line}}.'}},create(e){return{SwitchCase(e){t(e.consequent)},BlockStatement(e){t(e.body)},Program(e){t(e.body.filter(e=>{var t;return!((t=e)&&(t.type===e2.AST_NODE_TYPES.ImportDeclaration||t.type===e2.AST_NODE_TYPES.ExportNamedDeclaration||t.type===e2.AST_NODE_TYPES.ExportDefaultDeclaration||t.type===e2.AST_NODE_TYPES.ExportAllDeclaration))}))}};function t(t){let r,n=new Map;t.forEach(t=>{let u=function(t){if(t.type===e2.AST_NODE_TYPES.ExpressionStatement)return function(t){var r,n,u;if((r=t).type===e2.AST_NODE_TYPES.AssignmentExpression&&"="===r.operator&&t.left.type===e2.AST_NODE_TYPES.MemberExpression&&t.left.computed){let r,a,{left:i,right:o}=t,s=dD(i.property);if(void 0!==s&&(n=i.object,u=o,r=e.sourceCode.getTokens(n),void 0===(a=e.sourceCode.getTokens(u)).find((e,t)=>{if(dx(e,r[0]))for(let e=t,n=0;e<a.length&&n<r.length;e++,n++)if(dx(a[e],r[n])){if(n===r.length-1)return!0}else break;return!1})))return{collectionNode:i.object,indexOrKey:s,node:t}}}(t.expression)||function(e){if(e.type===e2.AST_NODE_TYPES.CallExpression&&e.callee.type===e2.AST_NODE_TYPES.MemberExpression){let t=e.callee;if(t.property.type===e2.AST_NODE_TYPES.Identifier){let r=t.property.name,n="add"===r&&1===e.arguments.length,u="set"===r&&2===e.arguments.length;if(n||u){let r=dD(e.arguments[0]);if(r)return{collectionNode:t.object,indexOrKey:r,node:e}}}}}(t.expression)}(t);if(u){r&&!dp(u.collectionNode,r,e.sourceCode)&&n.clear();let t=n.get(u.indexOrKey);t?.node.loc&&e.report({node:u.node,messageId:"verifyIntendedIndex",data:{index:u.indexOrKey,line:t.node.loc.start.line}}),n.set(u.indexOrKey,u),r=u.collectionNode}else n.clear()})}}});function dx(e,t){return e.value===t.value}function dD(e){if(e.type===e2.AST_NODE_TYPES.Literal){let{value:t}=e;return"number"==typeof t||"string"==typeof t?String(t):void 0}if(e.type===e2.AST_NODE_TYPES.Identifier)return e.name}var dA=eQ.createRule({name:"class-prototype",meta:{schema:[],type:"suggestion",docs:{description:'Class methods should be used instead of "prototype" assignments',recommended:"recommended"},messages:{declareClass:'Declare a "{{class}}" class and move this declaration of "{{declaration}}" into it.'}},create(e){let t=e.sourceCode.parserServices,r=eQ.isParserWithTypeInformation(t)?dS:dT;return{AssignmentExpression({left:n,right:u}){if(n.type===e2.AST_NODE_TYPES.MemberExpression&&r(u,t)){let[t,r]=[n.object,n.property];if(t.type===e2.AST_NODE_TYPES.MemberExpression&&r.type===e2.AST_NODE_TYPES.Identifier){let[u,a]=[t.object,t.property];u.type===e2.AST_NODE_TYPES.Identifier&&a.type===e2.AST_NODE_TYPES.Identifier&&"prototype"===a.name&&e.report({messageId:"declareClass",data:{class:u.name,declaration:r.name},node:n})}}}}}});function dS(e,t){eQ.ensureParserWithTypeInformation(t);let r=t.program.getTypeChecker().getTypeAtLocation(t.esTreeNodeToTSNodeMap.get(e));return!!r.symbol&&(r.symbol.flags&e4.SymbolFlags.Function)!=0}let dC=new Set(["FunctionDeclaration","FunctionExpression","ArrowFunctionExpression"]);function dT(e){return dC.has(e.type)}var dw=eQ.createRule({name:"bool-param-default",meta:{schema:[],type:"suggestion",docs:{description:"Optional boolean parameters should have default value"},messages:{provideDefault:"Provide a default value for '{{parameter}}' so that the logic of the function is more evident when this parameter is missing. Consider defining another function if providing default value is not possible."}},create:e=>({"FunctionDeclaration, FunctionExpression, ArrowFunctionExpression":t=>{for(let r of t.params)r.type===e2.AST_NODE_TYPES.Identifier&&function(e){var t;return(t=e).optional&&!!t.typeAnnotation&&t.typeAnnotation.typeAnnotation.type===e2.AST_NODE_TYPES.TSBooleanKeyword||function(e){if(e.typeAnnotation&&e.typeAnnotation.typeAnnotation.type===e2.AST_NODE_TYPES.TSUnionType){let t=e.typeAnnotation.typeAnnotation.types;return 2===t.length&&t.some(e=>e.type===e2.AST_NODE_TYPES.TSBooleanKeyword)&&t.some(e=>e.type===e2.AST_NODE_TYPES.TSUndefinedKeyword)}return!1}(e)}(r)&&e.report({messageId:"provideDefault",data:{parameter:r.name},node:r})}})}),d_=eQ.createRule({name:"call-argument-line",meta:{type:"suggestion",docs:{description:"Function call arguments should not start on new lines",recommended:"recommended"},schema:[],messages:{moveArguments:"Make those call arguments start on line {{line}}.",moveTemplateLiteral:"Make this template literal start on line {{line}}."}},create(e){let t=e.sourceCode;return{CallExpression(r){if(r.callee.type!==e2.AST_NODE_TYPES.CallExpression&&1===r.arguments.length){var n;let u=(n=r).typeArguments??n.callee,a=(t.getLastTokenBetween(u,r.arguments[0],dF)??t.getLastToken(u)).loc.end.line,{start:i}=t.getTokenAfter(u,dk).loc;if(a!==i.line){let{end:n}=t.getLastToken(r).loc;n.line===i.line?e.report({messageId:"moveArguments",data:{line:a.toString()},loc:{start:i,end:n}}):e.report({messageId:"moveArguments",data:{line:a.toString()},loc:i})}}},TaggedTemplateExpression(r){let{quasi:n}=r,u=t.getTokenBefore(n);if(u&&n.loc&&u.loc.end.line!==n.loc.start.line){let t={start:n.loc.start,end:{line:n.loc.start.line,column:n.loc.start.column+1}};e.report({messageId:"moveTemplateLiteral",data:{line:u.loc.start.line.toString()},loc:t})}}}}});function dF(e){return e.type===e2.AST_TOKEN_TYPES.Punctuator&&")"===e.value}function dk(e){return!dF(e)}var dP=eQ.createRule({name:"track-todo-fixme-comment",meta:{type:"suggestion",docs:{description:'Track uses of "FIXME" and "TODO" tags',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S1134/javascript"},schema:[],messages:{fixme:"Take the required action to fix the issue indicated by this comment.",todo:'Complete the task associated to this "TODO" comment.'}},create(e){function t(t,r){e.sourceCode.getAllComments().forEach(n=>{let u=n.value.toLowerCase();if(u.includes(t)){let a=u.split(/\r\n?|\n/);for(let u=0;u<a.length;u++){let i=a[u].indexOf(t);i>=0&&!function(e,t,r){let n=t+r.length,u=t>0&&dI.test(e.charAt(t-1)),a=n<=e.length-1&&dI.test(e.charAt(n));return u||a}(a[u],i,t)&&e.report({messageId:r,loc:function(e,t,r,n){let u=r.loc.start.line+e,a=(0===e?r.loc.start.column+2:0)+t;return{start:{line:u,column:a},end:{line:u,column:a+n.length}}}(u,i,n,t)})}}})}return{"Program:exit":()=>{t("fixme","fixme"),t("todo","todo")}}}});let dI=/\p{Letter}/u,dB=["Array","Map","Set","WeakSet","WeakMap"],dO=new Set(["copyWithin","pop","reverse","shift","sort","clear","delete","concat","flat","flatMap","includes","indexOf","join","lastIndexOf","slice","toSource","toString","toLocaleString","get","has","entries","every","filter","find","findIndex","forEach","keys","map","reduce","reduceRight","some","values"]);var dR=eQ.createRule({name:"no-empty-collection",meta:{schema:[],type:"problem",docs:{description:"Empty collections should not be accessed or iterated",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4158/javascript"},messages:{reviewUsageOfIdentifier:'Review this usage of "{{identifierName}}" as it can only be empty here.'}},create(e){let t=t=>{if(t.references.length<=1||t.defs.some(e=>e.type===e5.TSESLint.Scope.DefinitionType.Parameter||e.type===e5.TSESLint.Scope.DefinitionType.ImportBinding))return;let r=[],n=!1;for(let e of t.references)if(e.isWriteOnly())if(!function(e){let t=dN(e.identifier,e=>e.type===e2.AST_NODE_TYPES.VariableDeclarator||e.type===e2.AST_NODE_TYPES.ExpressionStatement);if(t){if(t.type===e2.AST_NODE_TYPES.VariableDeclarator&&t.init)return dM(t.init);if(t.type===e2.AST_NODE_TYPES.ExpressionStatement){let{expression:r}=t;return r.type===e2.AST_NODE_TYPES.AssignmentExpression&&dj(e,r.left)&&dM(r.right)}}return!1}(e))return;else n=!0;else{var u;if(!(function(e){let{parent:t}=e.identifier;if(t&&t.type===e2.AST_NODE_TYPES.MemberExpression){let e=t.parent;if(e&&e.type===e2.AST_NODE_TYPES.CallExpression)return d$(t.property,...dO)}return!1}(u=e)||function(e){let t=dN(e.identifier,e=>e.type===e2.AST_NODE_TYPES.ForOfStatement||e.type===e2.AST_NODE_TYPES.ForInStatement);return t?.right===e.identifier}(u)||function(e){let{parent:t}=e.identifier;return t&&t.type===e2.AST_NODE_TYPES.MemberExpression&&t.computed&&!function(e){let t=dL(e,new Set),r=t.find(e=>e.type===e2.AST_NODE_TYPES.AssignmentExpression);return!!r&&"="===r.operator&&[e,...t].includes(r.left)}(t)}(u)))return;r.push(e)}n&&r.forEach(t=>{e.report({messageId:"reviewUsageOfIdentifier",data:{identifierName:t.identifier.name},node:t.identifier})})},r=e=>{e.type!==e5.TSESLint.Scope.ScopeType.global&&e.variables.forEach(t),e.childScopes.forEach(r)};return{"Program:exit":t=>{r(e.sourceCode.getScope(t))}}}});function dN(e,t){return dL(e,new Set).find(t)}function dL(e,t){let r=[],n=e.parent;for(;n&&(r.push(n),!t.has(n.type));)n=n.parent;return r}function dj(e,t){return t.type===e2.AST_NODE_TYPES.Identifier&&t===e.identifier}function dM(e){return e&&e.type===e2.AST_NODE_TYPES.ArrayExpression?0===e.elements.length:!!e&&(e.type===e2.AST_NODE_TYPES.CallExpression||e.type===e2.AST_NODE_TYPES.NewExpression)&&d$(e.callee,...dB)&&0===e.arguments.length}function d$(e,...t){return e?.type===e2.AST_NODE_TYPES.Identifier&&(0===t.length||t.some(t=>t===e.name))}let dU=new Set(["!=","==","!==","==="]),dq=new Set(["!==","!="]),dz=new Set(["+=","-="]);var dW=eQ.createRule({name:"no-equals-in-for-termination",meta:{schema:[],messages:{replaceOperator:"Replace '{{operator}}' operator with one of '<=', '>=', '<', or '>' comparison operators."},type:"suggestion",docs:{description:'Equality operators should not be used in "for" loop termination conditions',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S888/javascript"}},create(e){function t(t,r){if(t.type===e2.AST_NODE_TYPES.Identifier){var n;let u=(n=t.name,function(e,t){let r;for(;null==r&&null!=e;)r=e.variables.find(e=>e.name===t),e=e.upper;return r}(e.sourceCode.getScope(t),n)),a=r.range;if(u&&a)return u.references.some(e=>{var t,r;return t=e.identifier,r=a,t.range&&t.range[0]>r[0]&&t.range[1]<r[1]})}return!1}return{ForStatement(r){var n,u;let a,i;if(!r.test||!r.update)return;let o=r.test;(n=o).type===e2.AST_NODE_TYPES.BinaryExpression&&dU.has(n.operator)&&function e(t){return!!dY(t)||t.type===e2.AST_NODE_TYPES.UpdateExpression||t.type===e2.AST_NODE_TYPES.SequenceExpression&&t.expressions.every(e)}(r.update)&&(a=(u=r).test,i=[],function e(t,r){let n;dY(t)?n=t.left:t.type===e2.AST_NODE_TYPES.UpdateExpression?n=t.argument:t.type===e2.AST_NODE_TYPES.SequenceExpression&&t.expressions.forEach(t=>e(t,r)),n&&n.type===e2.AST_NODE_TYPES.Identifier&&r.push(n.name)}(u.update,i),!(a.left.type!==e2.AST_NODE_TYPES.Identifier||!i.includes(a.left.name)||function(e){let r=e.init,n=e.test;if(r&&dV(n)){let u=function(e,r){var n,u;if(n=e,u=r,n.type===e2.AST_NODE_TYPES.UpdateExpression&&!t(n.argument,u)||function(e){if(dY(e)){let t=e.right;return t.type===e2.AST_NODE_TYPES.Literal&&1===t.value}return!1}(n)&&!t(n.left,u)){if("++"===e.operator||"+="===e.operator)return 1;if("--"===e.operator||"-="===e.operator)return -1}return 0}(e.update,e.body);if(0!==u){let e=dZ(r),t=dZ(n);return void 0!==e&&void 0!==t&&u===Math.sign(t-e)}}return!1}(r)))&&e.report({messageId:"replaceOperator",data:{operator:o.operator},node:o})}}}});function dY(e){return e.type===e2.AST_NODE_TYPES.AssignmentExpression&&dz.has(e.operator)}function dV(e){return e.type===e2.AST_NODE_TYPES.BinaryExpression&&dq.has(e.operator)}function dZ(e){var t;return dV(e)?dG(e.right):(t=e).type===e2.AST_NODE_TYPES.VariableDeclaration&&1===t.declarations.length?dG(e.declarations[0].init):e.type===e2.AST_NODE_TYPES.AssignmentExpression?dG(e.right):void 0}function dG(e){if(e&&e.type===e2.AST_NODE_TYPES.Literal&&"number"==typeof e.value)return e.value}var dK=eQ.createRule({name:"no-top-level-this",meta:{hasSuggestions:!0,schema:[],messages:{removeThis:'Remove the use of "this".',suggestRemoveThis:'Remove "this"',suggestUseGlobalThis:'Replace "this" with "globalThis" object'},type:"suggestion",docs:{description:'The global "this" object should not be used',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S2990/javascript"},fixable:"code"},create:e=>({'MemberExpression[object.type="ThisExpression"]':t=>{let r=e.sourceCode.getScope(t).variableScope.type,n=e.sourceCode.getAncestors(t).some(e=>e.type===e2.AST_NODE_TYPES.ClassDeclaration||e.type===e2.AST_NODE_TYPES.ClassExpression);if((r===e5.TSESLint.Scope.ScopeType.global||r===e5.TSESLint.Scope.ScopeType.module)&&!n){let r=[];if(!t.computed){let n=e.sourceCode.getText(t.property);r.push({messageId:"suggestRemoveThis",fix:e=>e.replaceText(t,n)},{messageId:"suggestUseGlobalThis",fix:e=>e.replaceText(t.object,"globalThis")})}e.report({messageId:"removeThis",node:t.object,suggest:r})}}})}),dH=eQ.createRule({name:"no-invariant-returns",meta:{schema:[],type:"suggestion",docs:{description:"Function returns should not be invariant",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S3516/javascript",requiresTypeChecking:!1},messages:{refactorReturn:"Refactor this function to only return once or not always return the same value."}},create(e){let t=[],r=[],n=[],u=r=>{var u,a,i;return u=r,void(!(a=t[t.length-1])||(i=a,n.some(e=>e.reachable)||i.containsReturnWithoutValue||i.returnStatements.length<=1||i.codePath.thrownSegments.length>0)||function(e,t){let r=e[0],n=r?dQ(r,t):void 0;if(void 0!==n)return e.slice(1).every(e=>dQ(e,t)===n);if(r?.type===e2.AST_NODE_TYPES.Identifier){let n=dX(r.name,t);if(n){let t=new Set(n.variable.references.slice(1).map(e=>e.identifier));return e.every(e=>t.has(e))}}return!1}(a.returnStatements.map(e=>e.argument),e.sourceCode.getScope(u))&&e.report({messageId:"refactorReturn",node:u}))};return{onCodePathStart(e){t.push({codePath:e,containsReturnWithoutValue:!1,returnStatements:[]}),r.push(n),n=[]},onCodePathEnd(){t.pop(),n=r.pop()||[]},onCodePathSegmentStart(e){n.push(e)},onCodePathSegmentEnd(){n.pop()},ReturnStatement(e){if(t.length){let r=t[t.length-1];r.containsReturnWithoutValue=r.containsReturnWithoutValue||!e.argument,r.returnStatements.push(e)}},"FunctionDeclaration:exit":u,"FunctionExpression:exit":u,"ArrowFunctionExpression:exit":u}}});function dX(e,t){let r=t.set.get(e);if(r&&!r.references.slice(1).some(e=>{var t;let r;return e.isWrite()||(r=dN((t=e).identifier,e=>e.type===e2.AST_NODE_TYPES.ExpressionStatement||dT(e)))&&r.type===e2.AST_NODE_TYPES.ExpressionStatement&&(dJ(r,t)||r.expression.type===e2.AST_NODE_TYPES.CallExpression)})){let e=null;return 1===r.defs.length&&r.defs[0].type===e5.TSESLint.Scope.DefinitionType.Variable&&(e=r.defs[0].node.init),{variable:r,initExpression:e}}return null}function dJ(e,t,r=!0){return e.expression.type===e2.AST_NODE_TYPES.AssignmentExpression&&function e(t,r,n=!0){return t.type===e2.AST_NODE_TYPES.MemberExpression&&(dj(r,t.object)||n&&e(t.object,r,n))}(e.expression.left,t,r)}function dQ(e,t){if(e){if(e.type===e2.AST_NODE_TYPES.Literal)return e.value;if(e.type===e2.AST_NODE_TYPES.UnaryExpression){let r=dQ(e.argument,t);return void 0===r?void 0:function(e,t){switch(e){case"-":return-Number(t);case"+":return Number(t);case"~":return~Number(t);case"!":return!t;case"typeof":return typeof t}}(e.operator,r)}if(e.type===e2.AST_NODE_TYPES.Identifier){let r=dX(e.name,t);if(r?.initExpression)return dQ(r.initExpression,t)}}}function d0(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d1(e,t){let r=t.variables.find(t=>t.name===e.name);return!r&&t.upper&&(r=t.upper.variables.find(t=>t.name===e.name)),r}class d3 extends Set{constructor(...e){super(...e),d0(this,"type","AssignedValues")}}let d2={type:"UnknownValue"};class d4{add(e){e.resolved&&this.references.add(e)}propagate(e){this.in.clear(),this.segment.prevSegments.forEach(t=>{this.join(e.get(t.id).out)});let t=new Map;return this.references.forEach(e=>this.updateProgramState(e,t)),!function(e,t){if(e.size!==t.size)return!1;for(let[u,a]of e){var r,n;if(!t.has(u)||(r=t.get(u),n=a,"AssignedValues"===r.type&&"AssignedValues"===n.type?!function(e,t){return e.size===t.size&&[...e].every(e=>t.has(e))}(r,n):r!==n))return!1}return!0}(this.out,t)&&(this.out=t,!0)}updateProgramState(e,t){let r=e.resolved;if(!r||!e.isWrite())return;if(!e.writeExpr)return void t.set(r,d2);let n=d5(r,e.writeExpr,t,e.from);t.set(r,n)}join(e){for(let[t,r]of e.entries()){let e=this.in.get(t)??new d3;"AssignedValues"===e.type&&"AssignedValues"===r.type?(r.forEach(t=>e.add(t)),this.in.set(t,e)):this.in.set(t,d2)}}constructor(e){d0(this,"segment",void 0),d0(this,"in",void 0),d0(this,"out",void 0),d0(this,"references",void 0),this.segment=e,this.in=new Map,this.out=new Map,this.references=new Set}}function d5(e,t,r,n){if(!t)return d2;switch(t.type){case e2.AST_NODE_TYPES.Literal:return t.raw?new d3([t.raw]):d2;case e2.AST_NODE_TYPES.Identifier:{let u=d1(t,n);if(u&&u!==e)return r.get(u)??d2;return d2}default:return d2}}class d8{constructor(e){d0(this,"codePath",void 0),d0(this,"reachingDefinitionsMap",void 0),d0(this,"reachingDefinitionsStack",void 0),d0(this,"segments",void 0),d0(this,"assignmentStack",void 0),this.codePath=e,this.reachingDefinitionsMap=new Map,this.reachingDefinitionsStack=[],this.segments=new Map,this.assignmentStack=[]}}class d6{isRhs(e){return this.node.type===e2.AST_NODE_TYPES.AssignmentExpression?this.node.right===e:this.node.init===e}isLhs(e){return this.node.type===e2.AST_NODE_TYPES.AssignmentExpression?this.node.left===e:this.node.id===e}add(e){let t=e.identifier;for(;t;){if(this.isLhs(t)){this.lhs.add(e);break}if(this.isRhs(t)){this.rhs.add(e);break}t=t.parent}}constructor(e){d0(this,"node",void 0),d0(this,"lhs",void 0),d0(this,"rhs",void 0),this.node=e,this.lhs=new Set,this.rhs=new Set}}function d9(e){return e[e.length-1]}var d7=eQ.createRule({name:"no-redundant-assignments",meta:{schema:[],type:"suggestion",docs:{description:"Assignments should not be redundant",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4165/javascript"},messages:{reviewAssignment:'Review this redundant assignment: "{{symbol}}" already holds the assigned value along all execution paths.'}},create(e){let t=[],r=new Map,n=new Map,u=[],a=[];return{AssignmentExpression:o,"VariableDeclarator[init]":o,"AssignmentExpression:exit":i,"VariableDeclarator[init]:exit":i,Identifier(r){var u;r.parent.type===e2.AST_NODE_TYPES.TSEnumBody||r.parent.type===e2.AST_NODE_TYPES.TSEnumDeclaration||r.parent.type===e2.AST_NODE_TYPES.TSEnumMember||(u=r,e.sourceCode.getAncestors(u).some(e=>e.type===e2.AST_NODE_TYPES.TSEnumDeclaration)||function(r){var u;let{ref:a,variable:i}=function e(t,r){if(null===r)return{ref:null,variable:null};let n=r.references.find(e=>e.identifier===t);if(n)return{ref:n,variable:n.resolved};let u=r.variables.find(e=>e.defs.find(e=>e.name===t));return u?{ref:null,variable:u}:e(t,r.upper)}(u=r,e.sourceCode.getScope(u));if(a&&d(a),i){let e=d9(t).codePath.id;n.has(i)?n.get(i).add(e):n.set(i,new Set([e]))}}(r))},"Program:exit":()=>{let e=Array.from(r.values(),e=>e.segment);for(;e.length;){let t=e.pop();r.get(t.id).propagate(r)&&t.nextSegments.forEach(t=>e.push(t))}r.forEach(s),r.clear(),n.clear(),t.length=0},onCodePathSegmentStart(e){r.set(e.id,new d4(e)),a.push(e)},onCodePathStart(e){var r;r=new d8(e),t.push(r),u.push(a),a.length=0},onCodePathEnd(){t.pop(),u.pop()||(a.length=0)},onCodePathSegmentEnd(){a.pop()}};function i(){let e=d9(t).assignmentStack.pop();e.rhs.forEach(d),e.lhs.forEach(d)}function o(e){d9(t).assignmentStack.push(new d6(e))}function s(t){let r=new Map(t.in);t.references.forEach(t=>{let u=t.resolved;if(!u||!t.isWrite()||!function(e){var t;let r=e.resolved;return r&&(e.identifier.type!==e2.AST_NODE_TYPES.Identifier||e.identifier.parent.type!==e2.AST_NODE_TYPES.AssignmentPattern)&&!r.name.startsWith("_")&&!function(e){if(e?.parent){let t=e.parent;return t&&t.type===e2.AST_NODE_TYPES.AssignmentExpression&&"="!==t.operator}return!1}(e.writeExpr)&&(e.writeExpr?.type!==e2.AST_NODE_TYPES.Identifier||e.resolved!==d1(e.writeExpr,e.from))&&!r.defs.some(e=>e.type===e5.TSESLint.Scope.DefinitionType.Parameter||e.type===e5.TSESLint.Scope.DefinitionType.Variable&&!e.node.init)&&(t=r,!(n.get(t).size>1))}(t))return;let a=r.get(u),i=d5(u,t.writeExpr,r,t.from);if(a?.type==="AssignedValues"&&1===a.size){let[r]=[...a];!function({resolved:t},r,n,u,a){if("UnknownValue"===u.type||1!==u.size)return;let[i]=[...u];t&&1!==t.references.filter(e=>e.isWrite()).length&&n===i&&e.report({node:r,messageId:"reviewAssignment",data:{symbol:a}})}(t,t.writeExpr,r,i,u.name)}r.set(u,i)})}function d(e){let{assignmentStack:n}=d9(t);if(n.length>0)d9(n).add(e);else for(let t=0,n=a.length;t<n;t++)(function(e){let t;return r.has(e.id)?t=r.get(e.id):(t=new d4(e),r.set(e.id,t)),t})(a[t]).add(e)}}}),le=eQ.createRule({name:"no-same-line-conditional",meta:{schema:[],type:"layout",docs:{description:"Conditionals should start on new lines",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S3972/javascript"},fixable:"whitespace",messages:{sameLineCondition:'Move this "if" to a new line or add the missing "else".'}},create(e){function t(t){var r;let{sourceCode:n}=e;(r=t).reduce((e,t,n)=>{let u=r[n-1];return t.type===e2.AST_NODE_TYPES.IfStatement&&u&&u.type===e2.AST_NODE_TYPES.IfStatement?[{first:u,following:t},...e]:e},[]).forEach(t=>{let r=t.first,u=t.following;if(r.loc&&u.loc&&r.loc.end.line===u.loc.start.line&&r.loc.start.line!==u.loc.end.line){let t=n.getFirstToken(u);e.report({messageId:"sameLineCondition",loc:t.loc,fix:e=>e.replaceTextRange([r.range[1],u.range[0]],"\n"+" ".repeat(r.loc.start.column))})}})}return{Program:e=>t(e.body),BlockStatement:e=>t(e.body),SwitchCase:e=>t(e.consequent)}}}),lt=eQ.createRule({name:"no-small-switch",meta:{schema:[],messages:{replaceSwitch:'Replace this "switch" statement by "if" statements to increase readability.'},type:"suggestion",docs:{description:'"if" statements should be preferred over "switch" when simpler',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S1301/javascript"}},create:e=>({SwitchStatement(t){let{cases:r}=t,n=r.some(e=>!e.test);if(r.length<2||2===r.length&&n){let r=e.sourceCode.getFirstToken(t);r&&e.report({messageId:"replaceSwitch",loc:r.loc})}}})});let lr=["Array","Map","Set","WeakSet","WeakMap"],ln=["copyWithin","fill","pop","push","reverse","set","shift","sort","splice","unshift","add","clear","delete"];var lu=eQ.createRule({name:"no-unused-collection",meta:{schema:[],messages:{unusedCollection:"Either use this collection's contents or remove the collection."},type:"suggestion",docs:{description:"Collection contents should be used",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4030/javascript",requiresTypeChecking:!1}},create:e=>({"Program:exit":t=>{let r=[];(function e(t,r){t.type!==e5.TSESLint.Scope.ScopeType.global&&t.variables.forEach(e=>{(function(e){if(function(e){if(!e.defs.length)return;let t=e.defs[0];return t.node.parent?.parent?.type.startsWith("Export")}(e)||e.references.length<=1)return!1;let t=!1;for(let r of e.references)if(r.isWriteOnly())if(!function(e){let t=dN(e.identifier,e=>e.type===e2.AST_NODE_TYPES.VariableDeclarator||e.type===e2.AST_NODE_TYPES.ExpressionStatement);if(t){if(t.type===e2.AST_NODE_TYPES.VariableDeclarator&&t.init)return la(t.init);if(t.type===e2.AST_NODE_TYPES.ExpressionStatement){let{expression:r}=t;return r.type===e2.AST_NODE_TYPES.AssignmentExpression&&dj(e,r.left)&&la(r.right)}}return!1}(r))return!1;else t=!0;else if(function(e){let t=dN(e.identifier,e=>e.type===e2.AST_NODE_TYPES.ExpressionStatement);return!t||!dJ(t,e,!1)&&!function(e,t){if(e.expression.type===e2.AST_NODE_TYPES.CallExpression){let{callee:r}=e.expression;if(r.type===e2.AST_NODE_TYPES.MemberExpression){let{property:e,object:n}=r;return dj(t,n)&&d$(e,...ln)}}return!1}(t,e)}(r))return!1;return t})(e)&&r.push(e)}),t.childScopes.forEach(t=>{e(t,r)})})(e.sourceCode.getScope(t),r),r.forEach(t=>{e.report({messageId:"unusedCollection",node:t.identifiers[0]})})}})});function la(e){return!!e&&e.type===e2.AST_NODE_TYPES.ArrayExpression||!!e&&(e.type===e2.AST_NODE_TYPES.CallExpression||e.type===e2.AST_NODE_TYPES.NewExpression)&&d$(e.callee,...lr)}var li=eQ.createRule({name:"no-useless-plusplus",meta:{schema:[],type:"problem",docs:{description:"Values should not be uselessly incremented",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S2123/javascript"},messages:{removeIncrement:"Remove this {{updateOperator}}rement or correct the code not to waste it."}},create(e){function t(t){let r="++"===t.operator?"inc":"dec";e.report({messageId:"removeIncrement",data:{updateOperator:r},node:t})}return{"ReturnStatement > UpdateExpression":function(r){var n;let u=r.argument;!r.prefix&&u.type===e2.AST_NODE_TYPES.Identifier&&(n=u,e.sourceCode.getScope(r).variables.some(e=>e.identifiers.some(e=>e.name===n.name)))&&t(r)},AssignmentExpression(e){let r=e.right;if(r.type===e2.AST_NODE_TYPES.UpdateExpression&&!r.prefix){let n=e.left;n.type===e2.AST_NODE_TYPES.Identifier&&r.argument.type===e2.AST_NODE_TYPES.Identifier&&r.argument.name===n.name&&t(r)}}}}});let lo=new Set(["map","filter","reduce","reduceRight","forEach"]);var ls=eQ.createRule({name:"no-chain-array-higher-order-functions",meta:{type:"problem",fixable:"code",docs:{description:"Prefer `.reduce` over chaining `.filter`, `.map` methods",recommended:"recommended"},schema:[],messages:{detected:"Detected the chaining of array methods: {{methods}}. Reaplce with `.reduce` to reduce array iterations and improve the performance."}},create:e=>({MemberExpression(t){if(ld(t)){let r=t.parent;ld(r.parent)&&e.report({node:r,messageId:"detected",data:{methods:`arr.${t.property.name}().${r.parent.property.name}()`}})}}})});function ld(e){return e.type===e2.AST_NODE_TYPES.MemberExpression&&!e.computed&&e.property.type===e2.AST_NODE_TYPES.Identifier&&lo.has(e.property.name)&&e.parent.type===e2.AST_NODE_TYPES.CallExpression}var ll=eQ.createRule({name:"no-export-const-enum",meta:{type:"suggestion",docs:{description:"Disallow using `const enum` expression as it can not be inlined and tree-shaken by swc/esbuild/babel/webpack/rollup/vite/bun/rspack"},messages:{noConstEnum:"Do not use `const enum` expression"},schema:[]},create(e){let t=(t,r)=>{let n=e5.ASTUtils.findVariable(e.sourceCode.getScope(t),r);n?.defs.forEach(r=>{r.node.type===e2.AST_NODE_TYPES.TSEnumDeclaration&&r.node.const&&e.report({node:t,messageId:"noConstEnum"})})};return{ExportNamedDeclaration(r){let n=r.declaration;if(n?.type===e2.AST_NODE_TYPES.TSEnumDeclaration&&n.const)return void e.report({node:r,messageId:"noConstEnum"});if(n?.type===e2.AST_NODE_TYPES.VariableDeclaration){let e=n.declarations[0].id;e.type===e2.AST_NODE_TYPES.Identifier&&t(r,e)}},ExportDefaultDeclaration(e){let r=e.declaration;r.type===e2.AST_NODE_TYPES.Identifier&&t(e,r)}}}}),lc=eQ.createRule({name:"no-for-in-iterable",meta:{schema:[],type:"suggestion",docs:{description:'"for in" should not be used with iterables',recommended:"strict",url:"https://sonarsource.github.io/rspec/#/rspec/S4139/javascript"},messages:{useForOf:'Use "for...of" to iterate over this "{{iterable}}".'}},create(e){let t=e.sourceCode.parserServices;return{ForInStatement(r){var n,u;eQ.ensureParserWithTypeInformation(t);let a=lf(r.right,t);if(eQ.ensureParserWithTypeInformation(t),(n=a).symbol&&lp.has(n.symbol.name)||((u=a).flags&e4.TypeFlags.StringLike)>0||u.symbol?.name==="String"||function(e,t){var r,n=t.program.getTypeChecker().getBaseConstraintOfType(e)??e,u=t;for(let e of(r=n).isUnion()?r.types:[r])if(!function(e,t){let r=t.program.getTypeChecker();return"isArrayType"in r&&"function"==typeof r.isArrayType&&r.isArrayType(e)}(e,u))return!1;return!0}(a,t)){let t=a.symbol?a.symbol.name:"String";e.report({messageId:"useForOf",data:{iterable:t},loc:e.sourceCode.getFirstToken(r).loc})}}}}});function lf(e,t){return t.program.getTypeChecker().getTypeAtLocation(t.esTreeNodeToTSNodeMap.get(e))}let lp=new Set(["Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array","Set","Map"]);var lm=eQ.createRule({name:"only-await-thenable",meta:{schema:[],type:"suggestion",docs:{description:'"await" should only be used with promises',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4123/javascript"},messages:{refactorAwait:"Refactor this redundant 'await' on a non-promise."}},create(e){let t=e.sourceCode.parserServices;return eQ.ensureParserWithTypeInformation(t),{AwaitExpression(r){let n,u=lf(r.argument,t);(function(e,t){var r,n;if(e.argument.type!==e2.AST_NODE_TYPES.CallExpression)return!1;let u=(r=e.argument,(n=t).program.getTypeChecker().getResolvedSignature(n.esTreeNodeToTSNodeMap.get(r)));return u?.declaration&&function(e){if(!e.jsDoc)return!1;for(let t of e.jsDoc)if(t.tags?.some(e=>lg.has(e.tagName.escapedText.toString())))return!0;return!1}(u.declaration)})(r,t)||(n=u.getProperty("then"),n?.declarations?.some(e=>e.kind===e4.SyntaxKind.MethodSignature||e.kind===e4.SyntaxKind.MethodDeclaration||e.kind===e4.SyntaxKind.PropertyDeclaration))||u.flags&e4.TypeFlags.Any||u.flags&e4.TypeFlags.Unknown||u.flags&e4.TypeFlags.Union||e.report({messageId:"refactorAwait",node:r})}}}});let lg=new Set(["return","returns"]);var ly=eQ.createRule({name:"no-undefined-optional-parameters",meta:{schema:[],type:"suggestion",docs:{description:'"undefined" should not be passed as the value of optional parameters',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4623/javascript",requiresTypeChecking:!0},fixable:"code",hasSuggestions:!0,messages:{removeUndefined:'Remove this redundant "undefined".',suggestRemoveUndefined:"Remove this redundant argument"}},create(e){let t=e.sourceCode.parserServices;return eQ.ensureParserWithTypeInformation(t),{CallExpression(r){var n;let{arguments:u}=r;if(0===u.length)return;let a=u[u.length-1];(n=a).type===e2.AST_NODE_TYPES.Identifier&&"undefined"===n.name&&function(e,t,r){let n=r.program.getTypeChecker().getResolvedSignature(r.esTreeNodeToTSNodeMap.get(t));if(n){var u;let t=n.declaration;if(t&&(u=t,lh.has(u.kind))){let{parameters:r}=t,n=r[e];return n&&(n.initializer||n.questionToken)}}return!1}(u.length-1,r,t)&&e.report({messageId:"removeUndefined",node:a,suggest:[{messageId:"suggestRemoveUndefined",fix(t){if(1===r.arguments.length){let n=e.sourceCode.getTokenAfter(r.callee),u=e.sourceCode.getLastToken(r),[,a]=n.range,[i]=u.range;return t.removeRange([a,i])}let[,n]=u[u.length-2].range,[,i]=a.range;return t.removeRange([n,i])}}]})}}}});let lh=new Set([e4.SyntaxKind.FunctionDeclaration,e4.SyntaxKind.FunctionExpression,e4.SyntaxKind.ArrowFunction,e4.SyntaxKind.MethodDeclaration,e4.SyntaxKind.Constructor,e4.SyntaxKind.GetAccessor,e4.SyntaxKind.SetAccessor]);function lb(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class lE{visit(e,t){let r=e=>{switch(e.type){case e2.AST_NODE_TYPES.AwaitExpression:case e2.AST_NODE_TYPES.CallExpression:case e2.AST_NODE_TYPES.NewExpression:this.callLikeExpressions.push(e);break;case e2.AST_NODE_TYPES.FunctionDeclaration:case e2.AST_NODE_TYPES.FunctionExpression:case e2.AST_NODE_TYPES.ArrowFunctionExpression:return}(function(e,t){let r=[],n=t[e.type];if(n?.length)for(let t of n){let n=e[t];Array.isArray(n)?r.push(...n):r.push(n)}return r.filter(Boolean)})(e,t.sourceCode.visitorKeys).forEach(r)};r(e)}constructor(){lb(this,"callLikeExpressions",[])}}lb(lE,"getCallExpressions",(e,t)=>{let r=new lE;return r.visit(e,t),r.callLikeExpressions});var lv={rules:Object.assign({"array/no-unneeded-flat-map":to,"browser/prefer-location-assign":td,"jsx/no-template-literal":tc,"jsx/no-unneeded-nested":tf,"string/no-locale-case":tm,"string/no-simple-template-literal":tg,"unicode/no-bidi":tD,"unicode/no-invisible":tS,"ban-eslint-disable":dr,"no-redundant-variable":tC,"no-single-return":tw,"prefer-early-return":tF,"prefer-fetch":tk,"prefer-timer-id":tB,"no-return-await":du,"no-expression-empty-lines":da,"object-format":ds,"prefer-single-boolean-return":dl,"no-all-duplicated-branches":dg,"no-duplicated-branches":dg,"bool-param-default":dw,"call-argument-line":d_,"class-prototype":dA,"comma-or-logical-or-case":dE,"track-todo-fixme-comment":dP,"no-element-overwrite":dv,"no-empty-collection":dR,"no-equals-in-for-termination":dW,"no-top-level-this":dK,"no-invariant-returns":dH,"no-redundant-assignments":d7,"no-same-line-conditional":le,"no-small-switch":lt,"no-unused-collection":lu,"no-useless-plusplus":li,"no-chain-array-higher-order-functions":ls,"string/no-unneeded-to-string":tO,"type/no-force-cast-via-top-type":tR,"type/no-wrapper-type-reference":tL,"no-default-error":tj,"no-export-const-enum":ll,"no-for-in-iterable":lc,"only-await-thenable":lm,"no-undefined-optional-parameters":ly,"no-try-promise":eQ.createRule({name:"no-try-promise",meta:{schema:[],type:"problem",docs:{description:'Promise rejections should not be caught by "try" blocks',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4822/javascript",requiresTypeChecking:!0},messages:{addAwait:"Consider using 'await' for the promise{{ending}} inside this 'try' or replace it with 'Promise.prototype.catch(...)' usage{{ending}}.",removeTry:"Consider removing this 'try' statement as promise{{ending}} rejection is already captured by '.catch()' method."}},create(e){let t=e.sourceCode.parserServices;return eQ.ensureParserWithTypeInformation(t),{TryStatement(r){if(r.handler){let n=[],u=[],a=!1;if(lE.getCallExpressions(r.block,e).forEach(e=>{var r,i,o,s,d,l;let c,f;if(e.type===e2.AST_NODE_TYPES.AwaitExpression||(r=e,c=(i=t).esTreeNodeToTSNodeMap.get(r),!(f=i.program.getTypeChecker().getTypeAtLocation(c).getProperty("then"))||!(f.flags&e4.SymbolFlags.Method))){a=!0;return}(o=e).parent&&(o.parent.type===e2.AST_NODE_TYPES.AwaitExpression||o.parent.type===e2.AST_NODE_TYPES.YieldExpression)||(s=e).parent&&s.parent.type===e2.AST_NODE_TYPES.MemberExpression&&s.parent.property.type===e2.AST_NODE_TYPES.Identifier&&"then"===s.parent.property.name||(d=e).type===e2.AST_NODE_TYPES.CallExpression&&d.callee.type===e2.AST_NODE_TYPES.MemberExpression&&d.callee.property.type===e2.AST_NODE_TYPES.Identifier&&"catch"===d.callee.property.name||((l=e).parent&&l.parent.type===e2.AST_NODE_TYPES.MemberExpression&&l.parent.property.type===e2.AST_NODE_TYPES.Identifier&&"catch"===l.parent.property.name?u:n).push(e)}),!a){if(n.length>0){let t=n.length>1?"s":"",u=e.sourceCode.getFirstToken(r);e.report({messageId:"addAwait",data:{ending:t},loc:u.loc})}if(0===n.length&&u.length>0){let t=u.length>1?"s":"",n=e.sourceCode.getFirstToken(r);e.report({messageId:"removeTry",data:{ending:t},loc:n.loc})}}}}}}}),"no-useless-string-operation":eQ.createRule({name:"no-useless-string-operation",meta:{schema:[],messages:{uselessStringOp:"{{symbol}} is an immutable object; you must either store or return the result of the operation."},type:"problem",docs:{description:"Results of operations on strings should not be ignored",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S1154/javascript"}},create(e){let t=e.sourceCode.parserServices;return{'ExpressionStatement > CallExpression[callee.type="MemberExpression"]':r=>{let n,{object:u,property:a}=r.callee;eQ.ensureParserWithTypeInformation(t),(lf(u,t).flags&e8.TypeFlags.StringLike)!=0&&a.type===e2.AST_NODE_TYPES.Identifier&&e.report({messageId:"uselessStringOp",data:{symbol:((n=e.sourceCode.getText(u)).length>30&&(n="String"),n)},node:a})}}}})},Object.fromEntries(Object.entries({"unicorn/better-regex":aY,"unicorn/catch-error-name":{create:e=>{let t={name:"error",ignore:[],...e.options[0]},{name:r}=t,n=t.ignore.map(e=>eJ.isRegExp(e)?e:RegExp(e,"u")),u=e=>e===r||n.some(t=>t.test(e))||e.endsWith(r)||e.endsWith(nB(r));return{Identifier(t){if(("CatchClause"!==t.parent.type||t.parent.param!==t)&&!(("FunctionExpression"===t.parent.type||"ArrowFunctionExpression"===t.parent.type)&&t.parent.params[0]===t&&(rj(t.parent.parent,{method:"then",argumentsLength:2,optionalCall:!1})||rj(t.parent.parent,{method:"catch",argumentsLength:1,optionalCall:!1}))&&t.parent.parent.arguments.at(-1)===t.parent))return;let n=t.name;if(u(n)||u(n.replaceAll(/_+$/g,"")))return;let a=tq(e.sourceCode.getScope(t),t);if(!a||"_"===n&&0===a.references.length)return;let i=nt(r,[a.scope,...a.references.map(({from:e})=>e)]),o={node:t,messageId:sy,data:{originalName:n,fixedName:i||r}};return i&&(o.fix=e=>n9(a,i,e)),o}}},meta:{type:"suggestion",docs:{description:"Enforce a specific parameter name in catch clauses.",recommended:!0},fixable:"code",schema:[{type:"object",additionalProperties:!1,properties:{name:{type:"string"},ignore:{type:"array",uniqueItems:!0}}}],defaultOptions:[{}],messages:{[sy]:"The catch parameter `{{originalName}}` should be named `{{fixedName}}`."}}},"unicorn/custom-error-definition":{create:e=>{e.on("ClassDeclaration",t=>sx(e,t)),e.on("AssignmentExpression",t=>{if("ClassExpression"===t.right.type)return sx(e,t.right)}),e.on("AssignmentExpression",e=>{if("MemberExpression"===e.left.type&&"Identifier"===e.left.object.type&&"exports"===e.left.object.name){let t=e.left.property.name,r=e.right;if("ClassExpression"!==r.type||!sE(r)||!r.id)return;let n=r.id.name;return t!==n?{node:e.left.property,messageId:sh,fix:t=>t.replaceText(e.left.property,n)}:void 0}})},meta:{type:"problem",docs:{description:"Enforce correct `Error` subclassing.",recommended:!1},fixable:"code",messages:{[sh]:"Exported error name should match error class"}}},"unicorn/no-nested-ternary":{create:e=>({ConditionalExpression(t){if([t.test,t.consequent,t.alternate].some(e=>"ConditionalExpression"===e.type))return;let{sourceCode:r}=e,n=r.getAncestors(t).toReversed(),u=n.findIndex(e=>"ConditionalExpression"!==e.type);return 1!==u||ro(t,r)?u>1?{node:u>2?n[u-3]:t,messageId:rb}:void 0:{node:t,messageId:rE,fix:e=>[e.insertTextBefore(t,"("),e.insertTextAfter(t,")")]}}}),meta:{type:"suggestion",docs:{description:"Disallow nested ternary expressions.",recommended:!0},fixable:"code",messages:{[rb]:"Do not nest ternary expressions.",[rE]:"Nested ternary expression should be parenthesized."}}},"unicorn/prefer-event-target":{create:e=>({Identifier(t){if("EventEmitter"!==t.name||("ClassDeclaration"!==t.parent.type&&"ClassExpression"!==t.parent.type||t.parent.superClass!==t)&&("NewExpression"!==t.parent.type||t.parent.callee!==t))return;let r=e.sourceCode.getScope(t);if(!function(e){if(!e)return!1;let t=function(e,t){let r=e=>e.type===t;for(;e.parent;e=e.parent)if(r(e))return e}(e,"ImportDeclaration");return!!(nR.has(t?.source.value)||"Property"===e.parent.type&&e.parent.value===e&&"Identifier"===e.parent.key.type&&"EventEmitter"===e.parent.key.name&&"ObjectPattern"===e.parent.parent.type&&e.parent.parent.properties.includes(e.parent)&&nN(e.parent.parent)&&nL(e.parent.parent.parent.init)||nN(e)&&rL(e.parent.init,{property:"EventEmitter",optional:!1,computed:!1})&&nL(e.parent.init.object))}(tq(r,t)?.defs[0]?.name))return{node:t,messageId:nO}}}),meta:{type:"suggestion",docs:{description:"Prefer `EventTarget` over `EventEmitter`.",recommended:"unopinionated"},messages:{[nO]:"Prefer `EventTarget` over `EventEmitter`."}}},"unicorn/prefer-keyboard-event-key":{create:e=>({Identifier(t){if("keyCode"!==t.name&&"charCode"!==t.name&&"which"!==t.name)return;let{event:r,references:n}=nq(e,t);if(r&&n&&n.some(e=>{let r;return r=e.identifier,t?.parent?.type==="MemberExpression"&&t.parent.object===r}))return nW(t)},Property(t){let r=t.value.name;if(!n$.has(r))return;let{event:n,references:u}=nq(e,t);if(!n)return;let a=nz(t,"VariableDeclarator"),i=a?.init;if(u&&u.some(e=>e.identifier===i))return nW(t.value);if("ObjectPattern"===n.type){for(let e of n.properties)if(e===t)return nW(t.value)}}}),meta:{type:"suggestion",docs:{description:"Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.",recommended:"unopinionated"},fixable:"code",messages:{[nM]:"Use `.key` instead of `.{{name}}`."}}},"unicorn/prefer-text-content":{create:()=>({MemberExpression(e){if(!rL(e,{property:"innerText"}))return;let t=e.property;return{node:t,messageId:nY,suggest:[{messageId:nV,fix:e=>e.replaceText(t,"textContent")}]}},Identifier(e){if("innerText"===e.name&&"Property"===e.parent.type&&e.parent.key===e&&!e.parent.computed&&"init"===e.parent.kind&&"ObjectPattern"===e.parent.parent.type&&e.parent.parent.properties.includes(e.parent))return{node:e,messageId:nY,suggest:[{messageId:nV,fix:t=>t.replaceText(e,e.parent.shorthand?"textContent: innerText":"textContent")}]}}}),meta:{type:"suggestion",docs:{description:"Prefer `.textContent` over `.innerText`.",recommended:"unopinionated"},hasSuggestions:!0,messages:{[nY]:"Prefer `.textContent` over `.innerText`.",[nV]:"Switch to `.textContent`."}}},"unicorn/require-array-join-separator":{create:e=>({CallExpression(t){if(!(rj(t,{method:"join",argumentsLength:0,optionalCall:!1})||rj(t,{method:"call",argumentsLength:1,optionalCall:!1,optionalMember:!1})&&rW(t.callee.object,{property:"join"})))return;let{sourceCode:r}=e,[n,u]=r.getLastTokens(t,2),a=1===t.arguments.length;return{loc:{start:r.getLoc(n)[a?"end":"start"],end:r.getLoc(u).end},messageId:ue,fix:e=>nG(e,t,"','",r)}}}),meta:{type:"suggestion",docs:{description:"Enforce using the separator argument with `Array#join()`.",recommended:"unopinionated"},fixable:"code",messages:{[ue]:"Missing the separator argument."}}},"unicorn/no-thenable":{create:e=>{for(let{selector:t,selectors:r,messageId:n,getNodes:u}of ui)e.on(t??r,function*(t){for(let r of u(t,e))yield{node:r,messageId:n}})},meta:{type:"problem",docs:{description:"Disallow `then` property.",recommended:"unopinionated"},messages:{[ut]:"Do not add `then` to an object.",[ur]:"Do not export `then`.",[un]:"Do not add `then` to a class."}}},"unicorn/no-invalid-remove-event-listener":{create:e=>({CallExpression(t){if(!(rj(t,{method:"removeEventListener",minimumArguments:2,optionalCall:!1})&&"SpreadElement"!==t.arguments[0].type&&("FunctionExpression"===t.arguments[1].type||"ArrowFunctionExpression"===t.arguments[1].type||rj(t.arguments[1],{method:"bind",optionalCall:!1,optionalMember:!1}))))return;let[,r]=t.arguments;return["ArrowFunctionExpression","FunctionExpression"].includes(r.type)?{node:r,loc:tJ(r,e.sourceCode),messageId:uo}:{node:r.callee.property,messageId:uo}}}),meta:{type:"problem",docs:{description:"Prevent calling `EventTarget#removeEventListener()` with the result of an expression.",recommended:"unopinionated"},messages:{[uo]:"The listener argument should be a function reference."}}},"unicorn/consistent-function-scoping":up,"unicorn/no-new-buffer":{create:e=>{let{sourceCode:t}=e;return{NewExpression(e){if(!rk(e,{name:"Buffer"}))return;let r=((e,t)=>{if(1!==e.length)return"from";let[r]=e;if("SpreadElement"===r.type)return;if("ArrayExpression"===r.type||"TemplateLiteral"===r.type)return"from";if(function e(t,r){if(rC(t)||um(t,"Math",uy)||"CallExpression"===t.type&&!t.optional&&um(t.callee,"Math",uh)||ug(t,"Number")||um(t,"Number",ub)||"CallExpression"===t.type&&!t.optional&&um(t.callee,"Number",uE)||ug(t,"parseInt")||ug(t,"parseFloat")||"MemberExpression"===t.type&&!t.computed&&!t.optional&&"Identifier"===t.property.type&&"length"===t.property.name)return!0;switch(t.type){case"AssignmentExpression":{let{operator:n}=t;if("="===n&&e(t.right,r))return!0}case"BinaryExpression":{let{operator:n}=t;if("AssignmentExpression"===t.type&&(n=n.slice(0,-1)),"+"===n&&e(t.left,r)&&e(t.right,r)||">>>"===n||uv.has(n)&&(e(t.left,r)||e(t.right,r)))return!0;break}case"UnaryExpression":{let{operator:n}=t;if("+"===n||("-"===n||"~"===n)&&e(t.argument,r))return!0;break}case"UpdateExpression":if(e(t.argument,r))return!0;break;case"ConditionalExpression":{let n=e(t.consequent,r),u=e(t.alternate,r);if(n&&u)return!0;let a=t9(t.test,r);if(null!==a&&(a.value&&n||!a.value&&u))return!0;break}case"SequenceExpression":if(e(t.expressions.at(-1),r))return!0}return"number"==typeof t9(t,r)?.value}(r,t))return"alloc";let n=t9(r,t);if(n){let{value:e}=n;if("string"==typeof e||Array.isArray(e))return"from"}})(e.arguments,t.getScope(e));return r?{node:e,messageId:ux,data:{method:r},fix:uS(e,t,r)}:{node:e,messageId:uD,suggest:["from","alloc"].map(r=>({messageId:uA,data:{replacement:r},fix:uS(e,t,r)}))}}}},meta:{type:"problem",docs:{description:"Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{[ux]:"`new Buffer()` is deprecated, use `Buffer.{{method}}()` instead.",[uD]:"`new Buffer()` is deprecated, use `Buffer.alloc()` or `Buffer.from()` instead.",[uA]:"Switch to `Buffer.{{replacement}}()`."}}},"unicorn/no-console-spaces":{create:e=>{let{sourceCode:t}=e,r=(e,r,n)=>{let[u,a]=t.getRange(e),i="leading"===n?u+1:a-2,o=[i,i+1];return{loc:nI(o,t),messageId:uC,data:{method:r,position:n},fix:e=>e.removeRange(o)}};return{*CallExpression(e){if(!rj(e,{object:"console",methods:["log","debug","info","warn","error"],minimumArguments:1,optionalCall:!1,optionalMember:!1}))return;let n=e.callee.property.name,{arguments:u}=e,{length:a}=u;for(let[e,i]of u.entries()){if(!rS(i)&&"TemplateLiteral"!==i.type)continue;let u=t.getText(i).slice(1,-1);0!==e&&uT(u)&&(yield r(i,n,"leading")),e!==a-1&&uw(u)&&(yield r(i,n,"trailing"))}}}},meta:{type:"suggestion",docs:{description:"Do not use leading/trailing space between `console.log` parameters.",recommended:"unopinionated"},fixable:"code",messages:{[uC]:"Do not use {{position}} space between `console.{{method}}` parameters."}}},"unicorn/no-empty-file":{create:e=>{let t=e.physicalFilename;if(/\.(?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$/i.test(t))return{Program(t){if(t.body.some(e=>!rB(e,rI)))return;let{sourceCode:r}=e;if(!r.getAllComments().some(e=>"Line"===e.type&&e.value.startsWith("/")))return{node:t,messageId:u_}}}},meta:{type:"suggestion",docs:{description:"Disallow empty files.",recommended:"unopinionated"},messages:{[u_]:"Empty files are not allowed."}}},"unicorn/no-useless-fallback-in-spread":{create:e=>({ObjectExpression(t){if(0===t.properties.length&&"LogicalExpression"===t.parent.type&&t.parent.right===t&&("||"===t.parent.operator||"??"===t.parent.operator)&&"SpreadElement"===t.parent.parent.type&&t.parent.parent.argument===t.parent&&"ObjectExpression"===t.parent.parent.parent.type&&t.parent.parent.parent.properties.includes(t.parent.parent))return{node:t,messageId:uF,*fix(r){let{sourceCode:n}=e,u=t.parent,{left:a}=u,i=ro(a,n),[,o]=i?rx(a,n):n.getRange(a),[,s]=n.getRange(u);yield r.removeRange([o,s]),(i||"SequenceExpression"!==a.type)&&(yield*nZ(u,r,n))}}}}),meta:{type:"suggestion",docs:{description:"Disallow useless fallback when spreading in object literals.",recommended:"unopinionated"},fixable:"code",messages:{[uF]:"The empty object is useless."}}},"unicorn/no-useless-length-check":{create:e=>{let t=[],r=new Set,n=new Set,u=new Set,a=new Set;return{BinaryExpression(e){if("BinaryExpression"===e.type&&"Literal"===e.right.type&&"0"===e.right.raw&&rL(e.left,{property:"length",optional:!1})&&rY(e.parent)){let{operator:t}=e;"==="===t?r.add(e):(">"===t||"!=="===t)&&n.add(e)}},CallExpression(e){rj(e,{optionalCall:!1,optionalMember:!1,computed:!1})&&"Identifier"===e.callee.property.type&&("some"===e.callee.property.name?u.add(e):"every"===e.callee.property.name&&a.add(e))},LogicalExpression(e){rY(e)&&t.push(e)},*"Program:exit"(){let i=new Set(t.flatMap(e=>(function(e){let{operator:t}=e;return(function e(t){return[t.left,t.right].flatMap(r=>"LogicalExpression"===r.type&&r.operator===t.operator?e(r):[r])})(e).filter((e,i,o)=>(function({node:e,operator:t,siblings:i}){return"||"===t&&r.has(e)&&i.some(t=>a.has(t)&&np(e.left.object,t.callee.object))||"&&"===t&&n.has(e)&&i.some(t=>u.has(t)&&np(e.left.object,t.callee.object))})({node:e,operator:t,siblings:[o[i-1],o[i+1]].filter(Boolean)}))})(e))),{sourceCode:o}=e;for(let e of i)yield{loc:{start:o.getLoc(e.left.property).start,end:o.getLoc(e).end},messageId:r.has(e)?"zero":"non-zero",fix(t){let{left:r,right:n}=e.parent,u=rx(r,o),a=rx(n,o),i=[];return r===e?(i[0]=u[0],i[1]=a[0]):(i[0]=u[1],i[1]=a[1]),t.removeRange(i)}}}}},meta:{type:"suggestion",docs:{description:"Disallow useless array length check.",recommended:"unopinionated"},fixable:"code",messages:{"non-zero":"The non-empty check is useless as `Array#some()` returns `false` for an empty array.",zero:"The empty check is useless as `Array#every()` returns `true` for an empty array."}}},"unicorn/no-useless-promise-resolve-reject":{create:e=>{let{sourceCode:t}=e;return{CallExpression(e){if(!(rj(e,{object:"Promise",methods:["resolve","reject"],optionalCall:!1,optionalMember:!1})&&("ArrowFunctionExpression"===e.parent.type&&e.parent.body===e||"ReturnStatement"===e.parent.type&&e.parent.argument===e||"YieldExpression"===e.parent.type&&!e.parent.delegate&&e.parent.argument===e)))return;let{functionNode:r,isInTryStatement:n}=function(e){let t,r=!1;for(;e;e=e.parent){if(rN(e)){t=e;break}"TryStatement"===e.type&&(r=!0)}return{functionNode:t,isInTryStatement:r}}(e);if(r&&(r.async||function(e){if("CallExpression"===e.parent.type&&"MemberExpression"===e.parent.callee.type&&!e.parent.callee.computed&&"Identifier"===e.parent.callee.property.type){let{callee:{property:t},arguments:r}=e.parent;if(1===r.length&&("then"===t.name||"catch"===t.name||"finally"===t.name)&&r[0]===e||2===r.length&&"then"===t.name&&(r[0]===e||"SpreadElement"!==r[0].type&&r[1]===e))return!0}return!1}(r)))return function(e,t){let{callee:r,parent:n}=e,u=r.property.name;return{node:r,messageId:u,data:{type:"YieldExpression"===n.type?"yield":"return"},fix:t}}(e,function(e,t,r){if(e.arguments.length>1)return;let{callee:n,parent:u,arguments:[a]}=e;if(a?.type==="SpreadElement")return;let i="reject"===n.property.name,o="YieldExpression"===u.type;if(!i||!t&&(!o||"ExpressionStatement"===u.parent.type))return function(t){let n="ArrowFunctionExpression"===u.type,s=a?r.getText(a):"";if(a?.type==="SequenceExpression"&&(s=`(${s})`),i){if(s||="undefined",s=`throw ${s}`,o)return t.replaceTextRange(rx(u,r),s);if(s+=";",n)return s=`{ ${s} }`,t.replaceTextRange(rx(e,r),s)}else o?s=`yield${s?" ":""}${s}`:"ReturnStatement"===u.type?s=`return${s?" ":""}${s};`:(a?.type==="ObjectExpression"&&(s=`(${s})`),s||="{}");return t.replaceText(n?e:u,s)}}(e,n,t))}}},meta:{type:"suggestion",docs:{description:"Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks",recommended:"unopinionated"},fixable:"code",messages:{resolve:"Prefer `{{type}} value` over `{{type}} Promise.resolve(value)`.",reject:"Prefer `throw error` over `{{type}} Promise.reject(error)`."}}},"unicorn/no-zero-fractions":{create:e=>({Literal(t){if(!rC(t))return;let{raw:r}=t,n=r.match(/^(?<before>[\d_]*)(?<dotAndFractions>\.[\d_]*)(?<after>.*)$/);if(!n)return;let{before:u,dotAndFractions:a,after:i}=n.groups,o=(u+a.replaceAll(/[.0_]+$/g,"")||"0")+i;if(o===r)return;let s="."===a,{sourceCode:d}=e,l=d.getRange(t)[0]+u.length+a.length;return{loc:nI([l-(r.length-o.length),l],d),messageId:s?uP:uk,*fix(e){let r=o;"MemberExpression"===t.parent.type&&t.parent.object===t&&nw.test(o)&&!ro(t,d)&&(r=`(${r})`,nb(d.getTokenBefore(t),d,r)&&(r=`;${r}`)),yield e.replaceText(t,r),yield*n1(e,t,d)}}}}),meta:{type:"suggestion",docs:{description:"Disallow number literals with zero fractions or dangling dots.",recommended:"unopinionated"},fixable:"code",messages:{[uk]:"Don't use a zero fraction in the number.",[uP]:"Don't use a dangling dot in the number."}}},"unicorn/prefer-export-from":u$,"unicorn/prefer-native-coercion-functions":{create:e=>{e.on(rR,t=>{if(t.async||t.generator||0===t.params.length||"Identifier"!==t.params[0].type||("MethodDefinition"===t.parent.type&&("constructor"===t.parent.kind||"set"===t.parent.kind)||"Property"===t.parent.type&&"set"===t.parent.kind)&&t.parent.value===t)return;let r=function(e){if(("ArrowFunctionExpression"===e.type&&"Identifier"===e.body.type&&e.body.name===e.params[0].name||"BlockStatement"===e.body.type&&1===e.body.body.length&&"ReturnStatement"===e.body.body[0].type&&e.body.body[0].argument?.type==="Identifier"&&e.body.body[0].argument.name===e.params[0].name)&&"CallExpression"===e.parent.type&&!e.parent.optional&&e.parent.arguments[0]===e&&"MemberExpression"===e.parent.callee.type&&!e.parent.callee.computed&&!e.parent.callee.optional&&"Identifier"===e.parent.callee.property.type&&uz.has(e.parent.callee.property.name))return{replacementFunction:"Boolean",fix:t=>t.replaceText(e,"Boolean")}}(t)||function(e){let t,r=(t=e.params[0].name,"ArrowFunctionExpression"===e.type&&uW(e.body,t)?e.body:"BlockStatement"===e.body.type&&1===e.body.body.length&&"ReturnStatement"===e.body.body[0].type&&uW(e.body.body[0].argument,t)?e.body.body[0].argument:void 0);if(!r)return;let{name:n}=r.callee,u={replacementFunction:n};return"FunctionDeclaration"===e.type||1!==r.arguments.length||(u.fix=t=>{let r=n;return"Property"===e.parent.type&&e.parent.method&&e.parent.value===e?r=`: ${r}`:"MethodDefinition"===e.parent.type&&(r=` = ${r};`),t.replaceText(e,r)}),u}(t);if(!r)return;let{sourceCode:n}=e,{replacementFunction:u,fix:a}=r;return r={node:t,loc:tJ(t,n),messageId:uU,data:{functionNameWithKind:rt(t,n),replacementFunction:u}},!a||1!==t.params.length||n.getCommentsInside(t).length>0||(r.fix=a),r})},meta:{type:"suggestion",docs:{description:"Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.",recommended:"unopinionated"},fixable:"code",messages:{[uU]:"{{functionNameWithKind}} is equivalent to `{{replacementFunction}}`. Use `{{replacementFunction}}` directly."}}},"unicorn/no-document-cookie":{create:e=>uG.createListeners(e),meta:{type:"problem",docs:{description:"Do not use `document.cookie` directly.",recommended:"unopinionated"},messages:{[uZ]:"Do not use `document.cookie` directly."}}},"unicorn/prefer-add-event-listener":uJ,"unicorn/prefer-array-index-of":u4,"unicorn/prefer-blob-reading-methods":{create:()=>({CallExpression(e){if(!rj(e,{methods:["readAsText","readAsArrayBuffer"],argumentsLength:1,optionalCall:!1,optionalMember:!1}))return;let t=e.callee.property,r=t.name;return{node:t,messageId:u5,data:{method:r,replacement:"readAsArrayBuffer"===r?"arrayBuffer":"text"}}}}),meta:{type:"suggestion",docs:{description:"Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.",recommended:"unopinionated"},messages:{[u5]:"Prefer `Blob#{{replacement}}()` over `FileReader#{{method}}(blob)`."}}},"unicorn/prefer-date-now":{create:e=>({CallExpression(e){if(rj(e,{methods:["getTime","valueOf"],argumentsLength:0,optionalCall:!1,optionalMember:!1})&&u7(e.callee.object)){let t=e.callee.property;return ae(e,{node:t,messageId:u6,data:{method:t.name}})}if(rF(e,{names:["Number","BigInt"],argumentsLength:1,optional:!1})&&u7(e.arguments[0])){let{name:t}=e.callee;return"Number"===t?ae(e,{messageId:u9}):ae(e.arguments[0])}},UnaryExpression(t){if(("+"===t.operator||"-"===t.operator)&&u7(t.argument))return ae("-"===t.operator?t.argument:t,{},e.sourceCode)},AssignmentExpression(e){if(("-="===e.operator||"*="===e.operator||"/="===e.operator||"%="===e.operator||"**="===e.operator)&&u7(e.right))return ae(e.right)},*BinaryExpression(e){if("-"===e.operator||"*"===e.operator||"/"===e.operator||"%"===e.operator||"**"===e.operator)for(let t of[e.left,e.right])u7(t)&&(yield ae(t))}}),meta:{type:"suggestion",docs:{description:"Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.",recommended:"unopinionated"},fixable:"code",messages:{[u8]:"Prefer `Date.now()` over `new Date()`.",[u6]:"Prefer `Date.now()` over `Date#{{method}}()`.",[u9]:"Prefer `Date.now()` over `Number(new Date())`."}}},"unicorn/prefer-dom-node-dataset":{create:e=>({CallExpression(t){if(!((rj(t,{method:"setAttribute",argumentsLength:2,optionalCall:!1,optionalMember:!1})||rj(t,{methods:["removeAttribute","hasAttribute"],argumentsLength:1,optionalCall:!1,optionalMember:!1})||rj(t,{method:"getAttribute",argumentsLength:1,optionalCall:!1}))&&rS(t.arguments[0])))return;let r=t.callee.property.name;if(("AwaitExpression"!==t.parent.type||t.parent.argument!==t||"getAttribute"!==r)&&t.arguments[0].value.toLowerCase().startsWith("data-"))return{node:t,messageId:ar,data:{method:t.callee.property.name},fix:function(e,t){let r=e.callee.property.name;if(!("setAttribute"===r&&function e(t){return("MemberExpression"===t.type||"CallExpression"===t.type)&&(!!t.optional||"MemberExpression"===t.type&&e(t.object))}(e.callee))){if(("setAttribute"!==r||rO(e.parent))&&("removeAttribute"!==r||rO(e.parent)))return n=>{let[u]=e.arguments,a=u.value.toLowerCase().slice(5).replaceAll(/-[a-z]/g,e=>e[1].toUpperCase()),{sourceCode:i}=t,o="",s=`${i.getText(e.callee.object)}${e.callee.optional?"?":""}.dataset`;switch(r){case"setAttribute":case"getAttribute":case"removeAttribute":o=at(a)?`.${a}`:`[${rX(a,u.raw.charAt(0))}]`,o=`${s}${o}`,"setAttribute"===r?o+=` = ${i.getText(e.arguments[1])}`:"removeAttribute"===r&&(o=`delete ${o}`);break;case"hasAttribute":o=`Object.hasOwn(${s}, ${rX(a,u.raw.charAt(0))})`}return n.replaceText(e,o)}}}(t,e)}}}),meta:{type:"suggestion",docs:{description:"Prefer using `.dataset` on DOM elements over calling attribute methods.",recommended:"unopinionated"},fixable:"code",messages:{[ar]:"Prefer `.dataset` over `{{method}}(…)`."}}},"unicorn/prefer-modern-math-apis":{create:e=>{let t=[];return{CallExpression(t){if(!rj(t,{object:"Math",method:"sqrt",argumentsLength:1,optionalCall:!1,optionalMember:!1}))return;let r=ad(t.arguments[0]);if(r.some(e=>!("BinaryExpression"===e.type&&("*"===e.operator&&np(e.left,e.right)||"**"===e.operator&&rA(e.right,2)))))return;let n=1===r.length?"abs":"hypot",u=new Set(1===r.length?[]:r.map(e=>e.parent));return{node:t.callee.property,messageId:an,data:{replacement:`Math.${n}(…)`,description:"Math.sqrt(…)"},*fix(a){let{sourceCode:i}=e;for(let e of(yield a.replaceText(t.callee.property,n),u)){let t=i.getTokenAfter(e.left,e=>"Punctuator"===e.type&&"+"===e.value);yield*n7(t,",",a,i),yield*nZ(e,a,i)}for(let e of r)yield a.removeRange([rx(e.left,i)[1],i.getRange(e)[1]])}}},BinaryExpression(e){t.push(e)},*"Program:exit"(){for(let r of t)for(let t of as){let n=t(r,e);n&&(yield n)}}}},meta:{type:"suggestion",docs:{description:"Prefer modern `Math` APIs over legacy patterns.",recommended:"unopinionated"},fixable:"code",messages:{[an]:"Prefer `{{replacement}}` over `{{description}}`."}}},"unicorn/number-literal-case":af,"unicorn/prefer-number-properties":ay,"unicorn/prefer-reflect-apply":{create:e=>({CallExpression(t){if(!rj(t,{optionalCall:!1,optionalMember:!1})||"Literal"===t.callee.object.type||"ArrayExpression"===t.callee.object.type||"ObjectExpression"===t.callee.object.type)return;let{sourceCode:r}=e,n=((e,t)=>{if("apply"===re(e.callee)&&2===e.arguments.length&&ab(e.arguments[0],e.arguments[1]))return r=>r.replaceText(e,aE(t,e.callee.object,e.arguments[0],e.arguments[1]))})(t,r)||((e,t)=>{if("call"===re(e.callee)&&"apply"===re(e.callee.object)&&"prototype"===re(e.callee.object.object)&&e.callee.object.object.object?.type==="Identifier"&&"Function"===e.callee.object.object.object.name&&3===e.arguments.length&&ab(e.arguments[1],e.arguments[2]))return r=>r.replaceText(e,aE(t,e.arguments[0],e.arguments[1],e.arguments[2]))})(t,r);if(n)return{node:t,messageId:ah,fix:n}}}),meta:{type:"suggestion",docs:{description:"Prefer `Reflect.apply()` over `Function#apply()`.",recommended:"unopinionated"},fixable:"code",messages:{[ah]:"Prefer `Reflect.apply()` over `Function#apply()`."}}},"unicorn/prefer-set-size":{create:e=>{let{sourceCode:t}=e;return{MemberExpression(e){if(!rL(e,{property:"length",optional:!1})||"ArrayExpression"!==e.object.type||1!==e.object.elements.length||e.object.elements[0]?.type!=="SpreadElement")return;let r=e.object.elements[0].argument;if(function(e,t){if(ax(e))return!0;if("Identifier"!==e.type)return!1;let r=tq(t,e);if(!r||1!==r.defs.length)return!1;let[n]=r.defs;if("Variable"!==n.type||"const"!==n.kind)return!1;let u=n.node;return"VariableDeclarator"===u.type&&"Identifier"===u.id.type&&ax(n.node.init)}(r,t.getScope(r)))return{node:e.property,messageId:av,fix:function(e,t){let{object:r,property:n}=t,u=r.elements[0].argument;if(!(e.getCommentsInside(r).length>e.getCommentsInside(u).length))return function*(a){yield a.replaceText(n,"size"),yield a.replaceText(r,e.getText(u)),yield*n1(a,t,e)}}(t,e)}}}},meta:{type:"suggestion",docs:{description:"Prefer using `Set#size` instead of `Array#length`.",recommended:"unopinionated"},fixable:"code",messages:{[av]:"Prefer using `Set#size` instead of `Array#length`."}}},"unicorn/prefer-string-replace-all":{create:e=>({CallExpression(t){if(!rj(t,{methods:["replace","replaceAll"],argumentsLength:2,optionalCall:!1}))return;let{arguments:[r],callee:{property:n}}=t;if(!((e,t)=>{if(rT(e))return e.regex.flags.includes("g");if(rk(e,{name:"RegExp"})&&e.arguments[0]?.type!=="SpreadElement"&&e.arguments[1]?.type==="Literal"&&"string"==typeof e.arguments[1].value)return e.arguments[1].value.includes("g");let r=t9(e,t);if(!r)return!1;let{value:n}=r;return"[object RegExp]"===Object.prototype.toString.call(n)&&n.global})(r,e.sourceCode.getScope(r)))return;let u=n.name,a=function(e){let t;if(!rT(e))return;let{pattern:r,flags:n}=e.regex;if("g"!==n.replace("u","").replace("v",""))return;try{t=aA(r,n,{unicodePropertyEscape:n.includes("u"),unicodeSet:n.includes("v"),namedGroups:!0,lookbehind:!0})}catch{return}let u="alternative"===t.type?t.body:[t];if(!u.some(e=>"value"!==e.type))return"'"+u.map(e=>{let{kind:t,codePoint:r,raw:n}=e;if("controlLetter"===t)return 13===r?String.raw`\r`:10===r?String.raw`\n`:9===r?String.raw`\t`:`\\u{${r.toString(16)}}`;if("octal"===t)return`\\u{${r.toString(16)}}`;let u=n;return("identifier"===t&&(u=u.slice(1)),"'"===u||"\\"===u)?`\\${u}`:u}).join("")+"'"}(r);if("replaceAll"===u){if(!a)return;return{node:r,messageId:aC,data:{replacement:a.length<20?a:"a string literal"},fix:e=>e.replaceText(r,a)}}return{node:n,messageId:aS,*fix(e){yield e.insertTextAfter(n,"All"),a&&(yield e.replaceText(r,a))}}}}),meta:{type:"suggestion",docs:{description:"Prefer `String#replaceAll()` over regex searches with the global flag.",recommended:"unopinionated"},fixable:"code",messages:{[aS]:"Prefer `String#replaceAll()` over `String#replace()`.",[aC]:"This pattern can be replaced with {{replacement}}."}}},"unicorn/prefer-string-slice":{create:e=>({CallExpression(t){if(!rj(t,{methods:["substr","substring"]}))return;let r=t.callee.property.name;return{node:t,messageId:r,*fix(n,{abort:u}){if(yield n.replaceText(t.callee.property,"slice"),0!==t.arguments.length){if(t.arguments.length>2||t.arguments.some(e=>"SpreadElement"===e.type))return u();yield*("substr"===r?function*({node:e,fixer:t,context:r,abort:n}){let u=e.arguments,[a,i]=u;if(!i)return;let{sourceCode:o}=r,s=t9(a,o.getScope(e)),d=rx(i,o);if(s?.value===0){if(rC(i)||aw(i))return;if("number"==typeof aT(i)){let e;return void(yield(e=Math.max(0,aT(i)),nH(t,i,e,o)))}return yield t.insertTextBeforeRange(d,"Math.max(0, "),void(yield t.insertTextAfterRange(d,")"))}if(u.every(e=>rC(e))){let e;return void(yield(e=a.value+i.value,nH(t,i,e,o)))}return n()}:function*({node:e,fixer:t,context:r,abort:n}){let{sourceCode:u}=r,[a,i]=e.arguments,o=a?aT(a):void 0,s=rD(a,u);if(!i){if(aw(a))return;if(void 0!==o)return void(yield nH(t,a,Math.max(0,o),u));let e=rx(a,u);return yield t.insertTextBeforeRange(e,"Math.max(0, "),void(yield t.insertTextAfterRange(e,")"))}let d=aT(i),l=rD(i,u);if(void 0!==o&&void 0!==d){let e=[Math.max(0,o),Math.max(0,d)];o>d&&e.reverse(),e[0]!==o&&(yield nH(t,a,e[0],u)),e[1]!==d&&(yield nH(t,i,e[1],u));return}if(0===o||0===d){yield nH(t,a,0,u),yield nH(t,i,`Math.max(0, ${0===o?l:s})`,u);return}return n()})({node:t,fixer:n,context:e,abort:u})}}}}}),meta:{type:"suggestion",docs:{description:"Prefer `String#slice()` over `String#substr()` and `String#substring()`.",recommended:"unopinionated"},fixable:"code",messages:{substr:"Prefer `String#slice()` over `String#substr()`.",substring:"Prefer `String#slice()` over `String#substring()`."}}},"unicorn/prefer-string-trim-start-end":{create:()=>({CallExpression(e){if(!rj(e,{methods:["trimLeft","trimRight"],argumentsLength:0,optionalCall:!1}))return;let t=e.callee.property,r=t.name,n="trimLeft"===r?"trimStart":"trimEnd";return{node:t,messageId:a_,data:{method:r,replacement:n},fix:e=>e.replaceText(t,n)}}}),meta:{type:"suggestion",docs:{description:"Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.",recommended:"unopinionated"},fixable:"code",messages:{[a_]:"Prefer `String#{{replacement}}()` over `String#{{method}}()`."}}},"unicorn/no-unreadable-iife":{create:e=>({CallExpression(t){let{sourceCode:r}=e;if("ArrowFunctionExpression"===t.callee.type&&"BlockStatement"!==t.callee.body.type&&ro(t.callee.body,r))return{node:t,loc:nI(rx(t.callee.body,r),r),messageId:aF}}}),meta:{type:"suggestion",docs:{description:"Disallow unreadable IIFEs.",recommended:"unopinionated"},hasSuggestions:!1,messages:{[aF]:"IIFE with parenthesized arrow function body is considered unreadable."}}},"unicorn/throw-new-error":{create:e=>({CallExpression(t){let{callee:r}=t;if(("Identifier"===r.type&&aP.test(r.name)||"MemberExpression"===r.type&&!r.computed&&"Identifier"===r.property.type&&aP.test(r.property.name))&&!rL(r,{object:"Data",property:"TaggedError",computed:!1}))return{node:t,messageId:ak,fix:r=>n3(t,e.sourceCode,r)}}}),meta:{type:"suggestion",docs:{description:"Require `new` when creating an error.",recommended:"unopinionated"},fixable:"code",messages:{[ak]:"Use `new` when creating an error."}}},"unicorn/escape-case":{create:e=>{let t="lowercase"===e.options[0];e.on("Literal",e=>{if(rS(e))return aH({node:e,original:e.raw,lowercase:t})}),e.on("Literal",e=>{if(rT(e))return aH({node:e,original:e.raw,regex:aK,lowercase:t})}),e.on("TemplateElement",e=>{if(!rq(e.parent,["String.raw"]))return aH({node:e,original:e.value.raw,lowercase:t,fix:(t,r)=>n8(t,e,r)})})},meta:{type:"suggestion",docs:{description:"Require escape sequences to use uppercase or lowercase values.",recommended:"unopinionated"},fixable:"code",schema:[{enum:["uppercase","lowercase"]}],defaultOptions:["uppercase"],messages:{[aV]:"Use uppercase characters for the value of the escape sequence.",[aZ]:"Use lowercase characters for the value of the escape sequence."}}},"unicorn/no-hex-escape":{create:e=>({Literal(t){if(rS(t)||rT(t))return aJ(e,t,t.raw)},TemplateElement(t){if(!rq(t.parent,["String.raw"]))return aJ(e,t,t.value.raw)}}),meta:{type:"suggestion",docs:{description:"Enforce the use of Unicode escapes instead of hexadecimal escapes.",recommended:"unopinionated"},fixable:"code",messages:{[aX]:"Use Unicode escapes instead of hexadecimal escapes."}}},"unicorn/prefer-prototype-methods":{create:function(e){let{sourceCode:t}=e,r=[];e.on("CallExpression",e=>{r.push(e)}),e.on("Program:exit",function*(e){let n=new WeakMap;for(let{node:r,path:u}of new ry(t.getScope(e)).iterateGlobalReferences(Object.fromEntries(aQ.map(e=>[e,{[ry.READ]:!0}]))))n.set(r,u);for(let e of r)yield function(e,{sourceCode:t,globalReferences:r}){let n;rj(e,{object:"Reflect",method:"apply",minimumArguments:1,optionalCall:!1,optionalMember:!1})?n=e.arguments[0]:rj(e,{methods:["apply","bind","call"],optionalCall:!1,optionalMember:!1})&&(n=e.callee.object);let{isGlobalReference:u,constructorName:a,methodName:i}=function(e,{sourceCode:t,globalReferences:r}){if(!e)return;if(r.has(e))return{isGlobalReference:!0,constructorName:"Object",methodName:r.get(e).at(-1)};if(!rL(e,{optional:!1}))return;let n=e.object;if("ArrayExpression"===n.type&&0===n.elements.length||"ObjectExpression"===n.type&&0===n.properties.length)return{constructorName:"ArrayExpression"===n.type?"Array":"Object",methodName:re(e,t.getScope(e))}}(n,{sourceCode:t,globalReferences:r})??{};if(a)return{node:n,messageId:i?"known-method":"unknown-method",data:{constructorName:a,methodName:i},*fix(r){if(u)return void(yield r.replaceText(n,`${a}.prototype.${i}`));if(rL(n)){let u=n.object;yield r.replaceText(u,`${a}.prototype`),("ArrayExpression"===u.type||"ObjectExpression"===u.type)&&(yield*n1(r,e,t))}}}}(e,{sourceCode:t,globalReferences:n})})},meta:{type:"suggestion",docs:{description:"Prefer borrowing methods from the prototype instead of the instance.",recommended:"unopinionated"},fixable:"code",messages:{"known-method":"Prefer using `{{constructorName}}.prototype.{{methodName}}`.","unknown-method":"Prefer using method from `{{constructorName}}.prototype`."}}},"unicorn/error-message":{create:e=>{e.on(["CallExpression","NewExpression"],t=>{if(!(rP(t,{names:a0,optional:!1})&&e.sourceCode.isGlobalReference(t.callee)))return;let r=t.callee.name,n=a4.has(r)?a4.get(r):0,u=t.arguments;if(u.some((e,t)=>t<=n&&"SpreadElement"===e.type))return;let a=u[n];if(!a)return{node:t,messageId:a1,data:{constructorName:r}};if("ArrayExpression"===a.type||"ObjectExpression"===a.type)return{node:a,messageId:a2};let i=t9(a,e.sourceCode.getScope(a));if(!i)return;let{value:o}=i;return"string"!=typeof o?{node:a,messageId:a2}:""===o?{node:a,messageId:a3}:void 0})},meta:{type:"problem",docs:{description:"Enforce passing a `message` value when creating a built-in error.",recommended:"unopinionated"},messages:{[a1]:"Pass a message to the `{{constructorName}}` constructor.",[a3]:"Error message should not be an empty string.",[a2]:"Error message should be a string."}}},"unicorn/no-instanceof-builtins":ir,"unicorn/prefer-type-error":{create:()=>({ThrowStatement(e){let t;if(rk(e.argument,{name:"Error"})&&e.parent&&e.parent.body&&1===e.parent.body.length&&e.parent.parent&&"IfStatement"===(t=e.parent.parent).type&&il(t.test)){let t=e.argument.callee;return{node:t,messageId:iu,fix:e=>e.insertTextBefore(t,"Type")}}}}),meta:{type:"suggestion",docs:{description:"Enforce throwing `TypeError` in type checking conditions.",recommended:"unopinionated"},fixable:"code",messages:{[iu]:"`new Error()` is too unspecific for a type check. Use `new TypeError()` instead."}}},"unicorn/consistent-destructuring":{create:e=>{let{sourceCode:t}=e,r=new Map;return{VariableDeclarator(e){"ObjectPattern"===e.id.type&&e.init&&"Literal"!==e.init.type&&(e=>{for(;e;){if(e.computed)return!1;if("MemberExpression"!==e.type)break;e=e.object}return"Identifier"===e.type||"ThisExpression"===e.type})(e.init)&&r.set(t.getText(e.init),{scope:t.getScope(e),variables:t.getDeclaredVariables(e),objectPattern:e.id})},MemberExpression(e){if(e.computed||rP(e.parent)&&e.parent.callee===e||no(e))return;let n=r.get(t.getText(e.object));if(!n)return;let{scope:u,objectPattern:a}=n,i=t.getScope(e);if(!((e,t)=>{for(;e;){if(e===t)return!0;e=e.upper}return!1})(i,u))return;let o=a.properties.filter(e=>"Property"===e.type&&"Identifier"===e.key.type&&"Identifier"===e.value.type),s=a.properties.at(-1),d=s&&"RestElement"===s.type,l=t.getText(e),c=t.getText(e.property),f=o.find(e=>e.key.name===c);if(!f&&(d||nt(c,[i])!==c))return;if("MemberExpression"===e.parent.type)return{node:e,messageId:ic};let p=f?f.value.name:c;return{node:e,messageId:ic,suggest:[{messageId:ip,data:{expression:l,property:p},*fix(t){let{properties:r}=a,n=r.at(-1);yield t.replaceText(e,p),f||(yield n?t.insertTextAfter(n,`, ${p}`):t.replaceText(a,`{${p}}`))}}]}}}},meta:{type:"suggestion",docs:{description:"Use destructured variables over properties.",recommended:!1},hasSuggestions:!0,messages:{[ic]:"Use destructured variables over properties.",[ip]:"Replace `{{expression}}` with destructured property `{{property}}`."}}},"unicorn/new-for-builtins":{create:e=>{let{sourceCode:t}=e,r=new uV({objects:ig,type:uV.CONSTRUCT,handle:e=>(function({node:e,path:[t]},r){let n={node:e,messageId:"disallow",data:{name:t}};return"String"!==t&&"Boolean"!==t&&"Number"!==t&&(n.fix=function*(t){yield*nQ(e,r,t)}),n})(e,t)}),n=new uV({objects:im,type:uV.CALL,handle:e=>(function({node:e,path:[t]},r){if("Object"===t){let{parent:t}=e;if("BinaryExpression"===t.type&&("==="===t.operator||"!=="===t.operator)&&(t.left===e||t.right===e))return}if("Date"===t){function*n(t){yield t.replaceText(e,"String(new Date())"),yield*n1(t,e,r)}let t={node:e,messageId:iy};return 0===r.getCommentsInside(e).length&&0===e.arguments.length?t.fix=n:t.suggest=[{messageId:ih,fix:n}],t}return{node:e,messageId:"enforce",data:{name:t},fix:t=>n3(e,r,t)}})(e,t)});return{*"Program:exit"(e){let u=t.getScope(e);yield*r.track(u),yield*n.track(u)}}},meta:{type:"suggestion",docs:{description:"Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{enforce:"Use `new {{name}}()` instead of `{{name}}()`.",disallow:"Use `{{name}}()` instead of `new {{name}}()`.",[iy]:"Use `String(new Date())` instead of `Date()`.",[ih]:"Switch to `String(new Date())`."}}},"unicorn/prefer-single-call":iD,"unicorn/no-process-exit":{create:e=>{let t;if(0===e.sourceCode.lines[0].indexOf("#!"))return{};let r=!1,n=[];e.on("CallExpression",e=>{rM(e)&&iS(e.arguments[0])&&(r=!0)}),e.on("ImportDeclaration",e=>{"Literal"===e.source.type&&iS(e.source)&&(r=!0)}),e.on("CallExpression",e=>{rj(e,{object:"process",methods:["on","once"],minimumArguments:1,optionalCall:!1,optionalMember:!1})&&(t=e)}),e.onExit("CallExpression",e=>{e===t&&(t=void 0)}),e.on("CallExpression",e=>{!t&&rj(e,{object:"process",method:"exit",optionalCall:!1,optionalMember:!1})&&n.push(e)}),e.onExit("Program",function*(){if(!r)for(let e of n)yield{node:e,messageId:iA}})},meta:{type:"suggestion",docs:{description:"Disallow `process.exit()`.",recommended:"unopinionated"},messages:{[iA]:"Only use `process.exit()` in CLI apps. Throw an error instead."}}},"unicorn/no-static-only-class":{create:function(e){e.on(["ClassDeclaration","ClassExpression"],t=>{if(t.superClass||t.decorators&&t.decorators.length>0||"ClassBody"!==t.body.type||0===t.body.body.length||t.body.body.some(e=>!function(e){let{private:t,static:r,declare:n,readonly:u,accessibility:a,decorators:i,key:o}=e;return!(!iI(e)&&"MethodDefinition"!==e.type||!r||t||"PrivateIdentifier"===o.type||n||u||void 0!==a||Array.isArray(i)&&i.length>0)}(e)))return;let{sourceCode:r}=e;return{node:t,loc:function(e,t){let{body:r}=e,n=t.getTokenBefore(r),{start:u}=t.getLoc(e),{end:a}=t.getLoc(n);return{start:u,end:a}}(t,r),messageId:ik,fix:function(e,t){let{type:r,id:n,body:u,declare:a,abstract:i,implements:o,parent:s}=e;if(a||i||Array.isArray(o)&&o.length>0||"ClassExpression"===r&&n)return;let d="ClassDeclaration"===e.type&&"ExportDefaultDeclaration"===e.parent.type&&e.parent.declaration===e;if(!d||!n){for(let e of u.body)if(iI(e)&&(e.typeAnnotation||e.value&&t.getText(e.value).includes("this")))return;return function*(n){let a=t.getFirstToken(e);if(iF(a,{expected:{type:"Keyword",value:"class"},ruleId:"no-static-only-class"}),d||"ClassExpression"===r)if("ClassExpression"===r&&"ReturnStatement"===s.type&&t.getLoc(u).start.line!==t.getLoc(s).start.line&&t.text.slice(t.getRange(a)[1],t.getRange(u)[0]).trim()){yield n.replaceText(a,"{");let e=t.getFirstToken(u);yield n.remove(e)}else yield n.replaceText(a,""),yield nJ(a,t,n);else yield n.replaceText(a,"const"),yield n.insertTextBefore(u,"= "),yield n.insertTextAfter(u,";");for(let e of u.body)yield*function*(e,t,r){let n=t.getFirstToken(e);iF(n,{expected:{type:"Keyword",value:"static"},ruleId:"no-static-only-class"}),yield r.remove(n),yield nJ(n,t,r);let u=iI(e)?t.getLastToken(e):t.getTokenAfter(e),a=tV(u);if(iI(e)){let{key:n,value:i}=e;if(i){let e=t.getTokenAfter(n,iP);yield r.replaceText(e,":")}else a?yield r.insertTextBefore(u,": undefined"):yield r.insertTextAfter(e,": undefined")}yield a?r.replaceText(u,","):r.insertTextAfter(e,",")}(e,t,n)}}}(t,r)}})},meta:{type:"suggestion",docs:{description:"Disallow classes that only have static members.",recommended:"unopinionated"},fixable:"code",messages:{[ik]:"Use an object instead of a class with only static members."}}},"unicorn/no-unreadable-array-destructuring":{create:e=>{let{sourceCode:t}=e;return{ArrayPattern(e){let{elements:r,parent:n}=e;if(r.length<3||!r.some((e,t,r)=>null===e&&null===r[t+1]))return;let u={node:e,messageId:iB},a=r.filter(e=>null!==e);if("VariableDeclarator"===n.type&&n.id===e&&null!==n.init&&1===a.length){let[i]=a;"AssignmentPattern"!==i.type&&(u.fix=function*(u){let a=r.indexOf(i),o="RestElement"===i.type,s=o?i.argument:i;yield u.replaceText(e,t.getText(s));let d=o?`.slice(${a})`:`[${a}]`,l=n.init;!ro(l,t)&&n_(l,t)?(yield u.insertTextBefore(l,"("),yield u.insertTextAfter(n,`)${d}`)):yield u.insertTextAfter(n,d),yield*n1(u,e,t)})}return u}}},meta:{type:"suggestion",docs:{description:"Disallow unreadable array destructuring.",recommended:"unopinionated"},fixable:"code",messages:{[iB]:"Array destructuring may not contain consecutive ignored values."}}},"unicorn/no-useless-spread":{create:e=>{let{sourceCode:t}=e;e.on(["ArrayExpression","ObjectExpression"],e=>{if(!("SpreadElement"===e.parent.type&&e.parent.argument===e&&("ObjectExpression"===e.type&&"ObjectExpression"===e.parent.parent.type&&e.parent.parent.properties.includes(e.parent)||"ArrayExpression"===e.type&&("ArrayExpression"===e.parent.parent.type&&e.parent.parent.elements.includes(e.parent)||rP(e.parent.parent)&&e.parent.parent.arguments.includes(e.parent)))))return;let r=e.parent,n=t.getFirstToken(r),u=r.parent.type;return{node:n,messageId:iO,data:{argumentType:"ArrayExpression"===e.type?"array":"object",parentDescription:i$[u]},*fix(r){let a;yield r.remove(n),yield*nZ(e,r,t);let i=t.getFirstToken(e);yield r.remove(i);let[o,s]=t.getLastTokens(e,2);if(yield r.remove(s),tY(o)&&(yield r.remove(o)),"CallExpression"===u||"NewExpression"===u)for(let[n,u]of(a=t.getFirstToken(e),e.elements.map((r,n,u)=>{if(n===u.length-1){let r=t.getLastToken(e,{skip:1});return tY(r)?r:void 0}let i=t.getTokenAfter(r||a,tY);return a=i,i})).entries())e.elements[n]||(yield r.insertTextBefore(u,"undefined"))}}}),e.on("ArrayExpression",e=>{if(!iM(e))return;let{parent:r}=e;if(!("ForOfStatement"===r.type&&r.right===e||"YieldExpression"===r.type&&r.delegate&&r.argument===e||(rk(r,{names:["Map","WeakMap","Set","WeakSet"],argumentsLength:1})||rk(r,{names:a5,minimumArguments:1})||rj(r,{object:"Promise",methods:["all","allSettled","any","race"],argumentsLength:1,optionalCall:!1,optionalMember:!1})||rj(r,{objects:["Array",...a5],method:"from",argumentsLength:1,optionalCall:!1,optionalMember:!1})||rj(r,{object:"Object",method:"fromEntries",argumentsLength:1,optionalCall:!1,optionalMember:!1}))&&r.arguments[0]===e))return;let n="",u=iR;switch(r.type){case"ForOfStatement":u=iN;break;case"YieldExpression":u=iL;break;case"NewExpression":n=`new ${r.callee.name}(…)`;break;case"CallExpression":n=`${r.callee.object.name}.${r.callee.property.name}(…)`}return{node:e,messageId:u,data:{parentDescription:n},fix:r=>iU(r,e,t)}}),e.on("ArrayExpression",e=>{if(!iM(e))return;let r=e.elements[0].argument;if(!(rj(r,{methods:["concat","copyWithin","filter","flat","flatMap","map","slice","splice","toReversed","toSorted","toSpliced","with"],optionalCall:!1,optionalMember:!1})||rj(r,{method:"split",optionalCall:!1,optionalMember:!1})||rj(r,{object:"Object",methods:["keys","values"],argumentsLength:1,optionalCall:!1,optionalMember:!1})||"AwaitExpression"===r.type&&rj(r.argument,{object:"Promise",methods:["all","allSettled"],argumentsLength:1,optionalCall:!1,optionalMember:!1})||rj(r,{object:"Array",methods:["from","of"],optionalCall:!1,optionalMember:!1})||rk(r,{name:"Array"})))return;let n={node:e,messageId:ij};return rk(r,{name:"Array"})||"CallExpression"===r.type&&"MemberExpression"===r.callee.type&&"Identifier"===r.callee.property.type&&"slice"===r.callee.property.name?n:Object.assign(n,{fix:r=>iU(r,e,t)})})},meta:{type:"suggestion",docs:{description:"Disallow unnecessary spread.",recommended:"unopinionated"},fixable:"code",messages:{[iO]:"Spread an {{argumentType}} literal in {{parentDescription}} is unnecessary.",[iR]:"`{{parentDescription}}` accepts iterable as argument, it's unnecessary to convert to an array.",[iN]:"`for…of` can iterate over iterable, it's unnecessary to convert to an array.",[iL]:"`yield*` can delegate iterable, it's unnecessary to convert to an array.",[ij]:"Unnecessarily cloning an array."}}},"unicorn/no-useless-switch-case":{create:e=>({*SwitchStatement(t){let{cases:r}=t;if(!(r.length<2)&&null===r.at(-1).test)for(let t=r.length-2;t>=0;t--){let n=r[t];if(!iW(n))break;yield{node:n,loc:function(e,t){let r=e.test||t.getFirstToken(e),n=t.getTokenAfter(r,tZ);return{start:t.getLoc(e).start,end:t.getLoc(n).end}}(n,e.sourceCode),messageId:iq,suggest:[{messageId:iz,fix:e=>e.remove(n)}]}}}}),meta:{type:"suggestion",docs:{description:"Disallow useless case in switch statements.",recommended:"unopinionated"},hasSuggestions:!0,messages:{[iq]:"Useless case in switch statement.",[iz]:"Remove this case."}}},"unicorn/no-useless-undefined":iZ,"unicorn/numeric-separators-style":iX,"unicorn/prefer-array-find":oa,"unicorn/prefer-array-flat-map":{create:e=>({CallExpression(t){if(!(rj(t,{method:"flat",optionalCall:!1,optionalMember:!1})&&(0===t.arguments.length||1===t.arguments.length&&"Literal"===t.arguments[0].type&&"1"===t.arguments[0].raw)&&rj(t.callee.object,{method:"map",optionalCall:!1})))return;let r=t.callee.object;if(rU(r.callee.object,oo))return;let{sourceCode:n}=e,u=r.callee.property;return{node:t,loc:{start:n.getLoc(u).start,end:n.getLoc(t).end},messageId:oi,*fix(e){yield*n5(e,t,n),yield e.replaceText(u,"flatMap")}}}}),meta:{type:"suggestion",docs:{description:"Prefer `.flatMap(…)` over `.map(…).flat()`.",recommended:"unopinionated"},fixable:"code",messages:{[oi]:"Prefer `.flatMap(…)` over `.map(…).flat()`."}}},"unicorn/prefer-array-flat":og,"unicorn/prefer-array-some":oE,"unicorn/prefer-code-point":{create:()=>({CallExpression(e){let t=rj(e,{method:"charCodeAt",optionalCall:!1})?"codePointAt":rj(e,{object:"String",method:"fromCharCode",optionalCall:!1,optionalMember:!1})?"fromCodePoint":void 0;if(!t)return;let r=e.callee.property,n=r.name;return{node:r,messageId:`error/${n}`,suggest:[{messageId:`suggestion/${t}`,fix:e=>e.replaceText(r,t)}]}}}),meta:{type:"suggestion",docs:{description:"Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.",recommended:"unopinionated"},hasSuggestions:!0,messages:{"error/charCodeAt":"Prefer `String#codePointAt()` over `String#charCodeAt()`.","error/fromCharCode":"Prefer `String.fromCodePoint()` over `String.fromCharCode()`.","suggestion/codePointAt":"Use `String#codePointAt()`.","suggestion/fromCodePoint":"Use `String.fromCodePoint()`."}}},"unicorn/prefer-default-parameters":{create:e=>{let{sourceCode:t}=e,r=[],n=(e,n,u,a)=>{let i,o=r.at(-1);if(!o||!n||!u||"Identifier"!==n.type||"LogicalExpression"!==u.type||"||"!==u.operator&&"??"!==u.operator||"Identifier"!==u.left.type||"Literal"!==u.right.type)return;let{name:s}=n,{left:{name:d},right:{raw:l}}=u;if(a&&s!==d)return;let c=tq(t.getScope(e),d);if(!c)return;let{references:f}=c,{params:p}=o,m=p.find(e=>"Identifier"===e.type&&e.name===d);if(((e,t,r)=>{for(let n of t.body.body){if(n===r)break;if(oD(e,n))return!0}return!1})(t,o,e)||a&&f[0].identifier!==n||!a&&f.length>1||(i=p.at(-1),!m||m!==i))return;let g=((e,t)=>{if("ArrowFunctionExpression"!==t.type||t.params.length>1)return!1;let[r]=t.params,n=e.getTokenBefore(r),u=e.getTokenAfter(r);return!u||!n||"("!==n.value||")"!==u.value})(t,o)?`(${s} = ${l})`:`${s} = ${l}`;return{node:e,messageId:ov,suggest:[{messageId:ox,fix:r=>[r.replaceText(m,g),((e,t,r)=>{let{line:n}=t.getLoc(r).start,{column:u}=t.getLoc(r).end,a=t.getText(r),i=t.lines[n-1],o=i.trim()===a,s=" "===i[u];if(o)return e.removeRange([t.getIndexFromLoc({line:n,column:0}),t.getIndexFromLoc({line:n+1,column:0})]);if(s){let[n,u]=t.getRange(r);return e.removeRange([n,u+1])}return e.remove(r)})(r,t,e)]}]}};e.on(rR,e=>{r.push(e)}),e.onExit(rR,()=>{r.pop()}),e.on("AssignmentExpression",e=>{if("ExpressionStatement"===e.parent.type&&e.parent.expression===e)return n(e.parent,e.left,e.right,!0)}),e.on("VariableDeclarator",e=>{if("VariableDeclaration"===e.parent.type&&e.parent.declarations[0]===e)return n(e.parent,e.id,e.init,!1)})},meta:{type:"suggestion",docs:{description:"Prefer default parameters over reassignment.",recommended:"unopinionated"},hasSuggestions:!0,messages:{[ov]:"Prefer default parameters over reassignment.",[ox]:"Replace reassignment with default parameter."}}},"unicorn/prefer-logical-operator-over-ternary":{create:e=>{let{sourceCode:t}=e;return{ConditionalExpression(e){let{test:r,consequent:n,alternate:u}=e;return oC(r,n,t)?oT({sourceCode:t,conditionalExpression:e,left:r,right:u}):"UnaryExpression"===r.type&&"!"===r.operator&&r.prefix&&oC(r.argument,u,t)?oT({sourceCode:t,conditionalExpression:e,left:r.argument,right:n}):void 0}}},meta:{type:"suggestion",docs:{description:"Prefer using a logical operator over a ternary.",recommended:"unopinionated"},hasSuggestions:!0,messages:{[oA]:"Prefer using a logical operator over a ternary.",[oS]:"Switch to `{{operator}}` operator."}}},"unicorn/prefer-optional-catch-binding":{create:e=>({CatchClause(t){let r=t.param;if(!r)return;let{sourceCode:n}=e;if(n.getDeclaredVariables(r.parent).some(e=>e.references.length>0))return;let{type:u,name:a,parent:i}=r;return{node:r,messageId:"Identifier"===u?ow:o_,data:{name:a},*fix(e){let t=n.getTokenBefore(r);iF(t,{test:tG,expected:"(",ruleId:"prefer-optional-catch-binding"});let u=n.getTokenAfter(r);iF(u,{test:tK,expected:")",ruleId:"prefer-optional-catch-binding"}),yield e.remove(t),yield e.remove(r),yield e.remove(u);let[,a]=n.getRange(u),[o]=n.getRange(i.body),s=n.text.slice(a,o),d=s.length-s.trimStart().length;0!==d&&(yield e.removeRange([a,a+d]))}}}}),meta:{type:"suggestion",docs:{description:"Prefer omitting the `catch` binding parameter.",recommended:"unopinionated"},fixable:"code",messages:{[ow]:"Remove unused catch binding `{{name}}`.",[o_]:"Remove unused catch binding."}}},"unicorn/prefer-regexp-test":oR,"unicorn/prefer-set-has":{create:e=>({Identifier(t){let{parent:r}=t;if(!("VariableDeclarator"===r.type&&r.id===t&&r.init&&"VariableDeclaration"===r.parent.type&&r.parent.declarations.includes(r)&&("ExportNamedDeclaration"!==r.parent.parent.type||r.parent.parent.declaration!==r.parent)&&("ArrayExpression"===r.init.type||rP(r.init,{name:"Array",optional:!1})||rj(r.init,{object:"Array",methods:["from","of"],optionalCall:!1,optionalMember:!1})||rj(r.init,{methods:oj,optionalCall:!1,optionalMember:!1}))))return;let n=tq(e.sourceCode.getScope(t),t);if(!n)return;let u=na(n).filter(e=>e!==t);if(0===u.length||u.some(e=>!(rj(e.parent.parent,{method:"includes",optionalCall:!1,optionalMember:!1,argumentsLength:1})&&e.parent.object===e))||1===u.length&&u.every(e=>!((e,t)=>{let r=t.parent.parent.parent,{parent:n}=e.parent;for(;n&&n!==r;){if(oM.has(n.type))return!0;n=n.parent}return!1})(e,t)))return;let a={node:t,messageId:oN,data:{name:t.name}},i=function*(e){for(let r of(yield e.insertTextBefore(t.parent.init,"new Set("),yield e.insertTextAfter(t.parent.init,")"),u))yield e.replaceText(r.parent.property,"has")};return t.typeAnnotation?a.suggest=[{messageId:oL,fix:i}]:a.fix=i,a}}),meta:{type:"suggestion",docs:{description:"Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{[oN]:"`{{name}}` should be a `Set`, and use `{{name}}.has()` to check existence or non-existence.",[oL]:"Switch `{{name}}` to `Set`."}}},"unicorn/prefer-string-raw":{create:e=>{e.on("Literal",t=>{let r;if(!rS(t)||rI(t.parent)||("ImportDeclaration"===t.parent.type||"ExportNamedDeclaration"===t.parent.type||"ExportAllDeclaration"===t.parent.type)&&t.parent.source===t||"Property"===t.parent.type&&!t.parent.computed&&t.parent.key===t||"JSXAttribute"===t.parent.type&&t.parent.value===t||"TSEnumMember"===t.parent.type&&(t.parent.initializer===t||t.parent.id===t)||"ImportAttribute"===t.parent.type&&(t.parent.key===t||t.parent.value===t))return;let{sourceCode:n}=e,{raw:u}=t;if("\\"===u.at(-2)||!u.includes("\\\\")||u.includes("`")||u.includes("${")||n.getLoc(t).start.line!==n.getLoc(t).end.line)return;let a=(r=u.charAt(0),u.slice(1,-1).replaceAll(RegExp(String.raw`\\(?<escapedCharacter>[\\${r}])`,"g"),"$<escapedCharacter>"));if(a===t.value)return{node:t,messageId:o$,*fix(e){yield e.replaceText(t,`String.raw\`${a}\``),yield*n1(e,t,n)}}})},meta:{type:"suggestion",docs:{description:"Prefer using the `String.raw` tag to avoid escaping `\\`.",recommended:"unopinionated"},fixable:"code",messages:{[o$]:"`String.raw` should be used to avoid escaping `\\`."}}},"unicorn/prefer-switch":oV,"unicorn/require-number-to-fixed-digits-argument":{create:e=>({CallExpression(t){if(!rj(t,{method:"toFixed",argumentsLength:0,optionalCall:!1})||"NewExpression"===t.callee.object.type)return;let{sourceCode:r}=e,[n,u]=r.getLastTokens(t,2);return{loc:{start:r.getLoc(n).start,end:r.getLoc(u).end},messageId:oZ,fix:e=>nG(e,t,"0",r)}}}),meta:{type:"suggestion",docs:{description:"Enforce using the digits argument with `Number#toFixed()`.",recommended:"unopinionated"},fixable:"code",messages:{[oZ]:"Missing the digits argument."}}},"unicorn/template-indent":{create:e=>{let{sourceCode:t}=e,r={tags:["outdent","dedent","gql","sql","html","styled"],functions:["dedent","stripIndent"],selectors:[],comments:["HTML","indent"],...e.options[0]};return r.comments=r.comments.map(e=>e.toLowerCase()),{TemplateLiteral(e){if((e=>{if(r.comments.length>0){let n=t.getTokenBefore(e,{includeComments:!0});if(n?.type==="Block"&&r.comments.includes(n.value.trim().toLowerCase()))return!0}if(rj(e.parent,{method:"toMatchInlineSnapshot",argumentsLength:1,optionalCall:!1,optionalMember:!1})&&e.parent.arguments[0]===e&&rF(e.parent.callee.object,{name:"expect",argumentsLength:1,optionalCall:!1,optionalMember:!1})||r.tags.length>0&&rq(e,r.tags)||r.functions.length>0&&"CallExpression"===e.parent.type&&e.parent.arguments.includes(e)&&rU(e.parent.callee,r.functions))return!0;if(r.selectors.length>0){let n=t.getAncestors(e).toReversed();if(r.selectors.some(t=>sn.matches(e,(sa.has(t)||sa.set(t,sn.parse(t)),sa.get(t)),n)))return!0}return!1})(e))return(e=>{let n,u="__PLACEHOLDER__"+Math.random(),a=e.quasis.map(e=>t.getText(e).slice(1,e.tail?-1:-2)).join(u),i=a.match(/\r?\n/);if(!i)return;let o=i[0],s=t.lines[t.getLoc(e).start.line-1].match(/^(\s*)\S/),d=s?s[1]:"";n="string"==typeof r.indent?r.indent:"number"==typeof r.indent?" ".repeat(r.indent):d.startsWith(" ")?" ":" ";let l=(function(e){let t=e.match(/^[ \t]*(?=\S)/gm);if(!t)return e;let r=1/0;for(let e of t)r=Math.min(r,e.length);return 0===r||r===1/0?e:e.replace(RegExp(`^[ \\t]{${r}}`,"gm"),"")})(a).replaceAll(RegExp(`^${o}|${o}[ ]*$`,"g"),""),c=o+function(e,t=1,r={}){let{indent:n=" ",includeEmptyLines:u=!1}=r;if("string"!=typeof e)throw TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if("number"!=typeof t)throw TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(t<0)throw RangeError(`Expected \`count\` to be at least 0, got \`${t}\``);if("string"!=typeof n)throw TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof n}\``);return 0===t?e:e.replace(u?/^/gm:/^(?!\s*$)/gm,n.repeat(t))}(l,1,{indent:d+n})+o+d;if(c!==a)return{node:e,messageId:su,fix:t=>c.split(u).map((r,n)=>n8(t,e.quasis[n],r))}})(e)}}},meta:{type:"suggestion",docs:{description:"Fix whitespace-insensitive template indentation.",recommended:!0},fixable:"code",schema:si,defaultOptions:[{}],messages:{[su]:"Templates should be properly indented."}}},"unicorn/no-single-promise-in-promise-methods":{create:e=>({CallExpression(t){if(!(rj(t,{object:"Promise",methods:i_,optionalMember:!1,optionalCall:!1,argumentsLength:1})&&"ArrayExpression"===t.arguments[0].type&&1===t.arguments[0].elements.length&&t.arguments[0].elements[0]&&"SpreadElement"!==t.arguments[0].elements[0].type))return;let r=t.callee.property.name,n={node:t.arguments[0],messageId:iC,data:{method:r}},{sourceCode:u}=e;if("AwaitExpression"===t.parent.type&&t.parent.argument===t&&("all"!==r||rO(t.parent.parent)))return n.fix=e=>{let[r]=t.arguments[0].elements,n=rD(r,u);return ro(r,u)||"SequenceExpression"!==r.type&&"YieldExpression"!==r.type&&"ArrowFunctionExpression"!==r.type&&"ConditionalExpression"!==r.type&&"AssignmentExpression"!==r.type&&"LogicalExpression"!==r.type&&"BinaryExpression"!==r.type||(n=`(${n})`),e.replaceText(t,n)},n;return"all"===r?n:(n.suggest=[{messageId:iT,fix:e=>{let[r]=t.arguments[0].elements,n=rD(r,u);return ro(r,u)||"Identifier"===r.type||"MemberExpression"===r.type||(n=`(${n})`),nb(u.getTokenBefore(t),u,n)&&(n=`;${n}`),e.replaceText(t,n)}},{messageId:iw,fix:function*(e){let r=t.callee.property;yield e.replaceText(r,"resolve");let[n]=t.arguments,a=u.getFirstToken(n),[i,o]=u.getLastTokens(n,2);yield e.remove(a),yield e.remove(o),tY(i)&&(yield e.remove(i))}}],n)}}),meta:{type:"suggestion",docs:{description:"Disallow passing single-element arrays to `Promise` methods.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{[iC]:"Wrapping single-element array with `Promise.{{method}}()` is unnecessary.",[iT]:"Use the value directly.",[iw]:"Switch to `Promise.resolve(…)`."}}},"unicorn/no-await-in-promise-methods":{create:e=>({*CallExpression(t){if(rj(t,{object:"Promise",methods:sd,optionalMember:!1,optionalCall:!1,argumentsLength:1})&&"ArrayExpression"===t.arguments[0].type)for(let r of t.arguments[0].elements)r?.type==="AwaitExpression"&&(yield{node:r,messageId:so,data:{method:t.callee.property.name},suggest:[{messageId:ss,*fix(t){let{sourceCode:n}=e,u=e.sourceCode.getFirstToken(r);yield t.remove(u),yield nJ(u,n,t)}}]})}}),meta:{type:"suggestion",docs:{description:"Disallow using `await` in `Promise` method parameters.",recommended:"unopinionated"},hasSuggestions:!0,messages:{[so]:"Promise in `Promise.{{method}}()` should not be awaited.",[ss]:"Remove `await`."}}},"unicorn/no-negation-in-equality-check":{create:e=>({BinaryExpression(t){let{operator:r,left:n}=t;if(!("BinaryExpression"===t.type&&sf.has(t.operator)&&sp(n)&&!sp(n.argument)))return;let{sourceCode:u}=e,a=u.getFirstToken(n),i=`${r.startsWith("!")?"=":"!"}${r.slice(1)}`;return{node:a,messageId:sl,suggest:[{messageId:sc,data:{operator:i},*fix(e){yield*n1(e,t,u);let o=u.getTokenAfter(a),{parent:s}=t;("ReturnStatement"===s.type||"ThrowStatement"===s.type)&&!ro(t,u)&&(nl(u.getFirstToken(s),o)||(yield*nX(e,s,u))),yield e.remove(a),nb(u.getTokenBefore(a),u,o.value)&&(yield e.insertTextAfter(a,";"));let d=u.getTokenAfter(n,e=>"Punctuator"===e.type&&e.value===r);yield e.replaceText(d,i)}}]}}}),meta:{type:"problem",docs:{description:"Disallow negated expression in equality check.",recommended:"unopinionated"},hasSuggestions:!0,messages:{[sl]:"Negated expression is not allowed in equality check.",[sc]:"Switch to '{{operator}}' check."}}},"unicorn/no-unnecessary-slice-end":{create:e=>sm(e,{methods:["slice"],messageId:sg}),meta:{type:"suggestion",docs:{description:"Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.",recommended:"unopinionated"},fixable:"code",messages:{[sg]:"Passing `{{description}}` as the `end` argument is unnecessary."}}},"unicorn/no-lonely-if":{create:e=>({IfStatement(t){if(sA(t)&&("BlockStatement"===t.parent.type&&1===t.parent.body.length&&t.parent.body[0]===t&&sA(t.parent.parent)&&t.parent.parent.consequent===t.parent||sA(t.parent)&&t.parent.consequent===t)){var r;return{node:t,messageId:sD,fix:(r=e.sourceCode,function*(e){let n=("BlockStatement"===t.parent.type?t.parent:t).parent,u={...n,...sC(n,r)},a={...t,...sC(t,r)};if(yield e.remove(a.ifToken),yield nJ(a.ifToken,r,e),u.openingBraceToken){yield e.remove(u.openingBraceToken),yield nJ(u.openingBraceToken,r,e),yield e.remove(u.closingBraceToken);let t=r.getTokenBefore(u.closingBraceToken,{includeComments:!0});yield nJ(t,r,e)}for(let{test:t,openingParenthesisToken:n,closingParenthesisToken:i}of(yield e.insertTextBefore(u.openingParenthesisToken,"("),yield e.insertTextAfter(a.closingParenthesisToken,`)${"EmptyStatement"===a.consequent.type?"":" "}`),yield e.insertTextAfter(u.closingParenthesisToken," && "),[u,a]))(ro(t,r)||!sS(t))&&(yield e.remove(n),yield e.remove(i)),yield nJ(i,r,e);if("BlockStatement"!==a.consequent.type){let t=r.getLastToken(a.consequent);if(tX(t)){let n=r.getTokenAfter(u);n&&nb(t,r,n.value)&&(yield e.insertTextBefore(n,";"))}}})}}}}),meta:{type:"suggestion",docs:{description:"Disallow `if` statements as the only statement in `if` blocks without `else`.",recommended:"unopinionated"},fixable:"code",messages:{[sD]:"Unexpected `if` as the only statement in a `if` block without `else`."}}},"unicorn/no-magic-array-flat-depth":{create:e=>({CallExpression(t){if(!rj(t,{method:"flat",argumentsLength:1,optionalCall:!1}))return;let[r]=t.arguments;if(!rC(r)||1===r.value)return;let{sourceCode:n}=e,{openingParenthesisToken:u,closingParenthesisToken:a}=nr(n,t);if(!n.commentsExistBetween(u,a))return{node:r,messageId:sT}}}),meta:{type:"suggestion",docs:{description:"Disallow a magic number as the `depth` argument in `Array#flat(…).`",recommended:"unopinionated"},messages:{[sT]:"Magic number as depth is not allowed."}}},"unicorn/no-negated-condition":{create:e=>{e.on(["IfStatement","ConditionalExpression"],t=>{if("IfStatement"===t.type&&(!t.alternate||"IfStatement"===t.alternate.type))return;let{test:r}=t;if("UnaryExpression"===r.type&&"!"===r.operator||"BinaryExpression"===r.type&&("!="===r.operator||"!=="===r.operator))return{node:r,messageId:sw,*fix(n){let{sourceCode:u}=e;if(yield*function*(e,t,r){let{test:n}=t;if("UnaryExpression"===n.type){let u=r.getFirstToken(n);"IfStatement"===t.type&&(yield*nZ(n.argument,e,r)),yield e.remove(u);return}let u=r.getTokenAfter(n.left,e=>"Punctuator"===e.type&&e.value===n.operator);yield e.replaceText(u,"="+u.value.slice(1))}(n,t,u),yield*function*(e,t,r){let n="IfStatement"===t.type,[u,a]=[t.consequent,t.alternate].map(e=>{let t=rx(e,r),u=r.text.slice(...t);return n&&"BlockStatement"!==e.type&&(u=`{${u}}`),{range:t,text:u}});u.text!==a.text&&(yield e.replaceTextRange(r.getRange(u),a.text),yield e.replaceTextRange(r.getRange(a),u.text))}(n,t,u),"ConditionalExpression"!==t.type||"UnaryExpression"!==r.type)return;yield*n1(n,t,u);let{parent:a}=t,[i,o]=u.getFirstTokens(r,2);"ReturnStatement"!==a.type&&"ThrowStatement"!==a.type||a.argument!==t||nl(i,o)||ro(t,u)||ro(r,u)?nb(u.getTokenBefore(t),u,o.value)&&(yield n.insertTextBefore(t,";")):yield*nX(n,a,u)}}})},meta:{type:"suggestion",docs:{description:"Disallow negated conditions.",recommended:"unopinionated"},fixable:"code",messages:{[sw]:"Unexpected negated condition."}}},"unicorn/no-object-as-default-parameter":{create:()=>({AssignmentPattern(e){if(!("ObjectExpression"===e.right.type&&e.right.properties.length>0&&rN(e.parent)&&e.parent.params.includes(e)))return;let{left:t,right:r}=e;return"Identifier"===t.type?{node:t,messageId:s_,data:{parameter:t.name}}:{node:r,messageId:sF}}}),meta:{type:"problem",docs:{description:"Disallow the use of objects as default parameters.",recommended:"unopinionated"},messages:{[s_]:"Do not use an object literal as default for parameter `{{parameter}}`.",[sF]:"Do not use an object literal as default."}}},"unicorn/prefer-negative-index":{create:e=>({CallExpression(t){if("MemberExpression"!==t.callee.type)return;let r=function(e){let{callee:t,arguments:r}=e,n=t.property.name,u=t.object,a=r;if(sP.has(n))return{method:n,target:u,argumentsNodes:a};if("call"!==n&&"apply"!==n)return;let i="apply"===n;if(n=sI(t.object),!sP.has(n))return;let{supportObjects:o}=sP.get(n),s=t.object.object;if("ArrayExpression"===s.type&&0===s.elements.length||"slice"===n&&rA(s,"")||"prototype"===sI(s)&&"Identifier"===s.object.type&&o.has(s.object.name)){if([u]=r,i){let[,e]=r;if(!e||"ArrayExpression"!==e.type)return;a=e.elements}else a=r.slice(1);return{method:n,target:u,argumentsNodes:a}}}(t);if(!r)return;let{method:n,target:u,argumentsNodes:a}=r,{argumentsIndexes:i}=sP.get(n),o=i.map(e=>(function e(t,r){if(!t)return;let{type:n,operator:u,left:a,right:i}=t;if("BinaryExpression"===n&&"-"===u&&rC(i)&&i.value>0)return"MemberExpression"===a.type&&!a.computed&&!a.optional&&"Identifier"===a.property.type&&"length"===a.property.name&&np(a.object,r)?a:e(a,r)})(a[e],u)).filter(Boolean);if(0!==o.length)return{node:t,messageId:sk,data:{method:n},*fix(t){let{sourceCode:r}=e;for(let e of o)yield function(e,t,r){let[n,u]=rx(e,r);return t.removeRange([n,u+r.text.slice(u).match(/\S|$/).index])}(e,t,r)}}}}),meta:{type:"suggestion",docs:{description:"Prefer negative index over `.length - index` when possible.",recommended:"unopinionated"},fixable:"code",messages:{[sk]:"Prefer negative index over length minus index for `{{method}}`."}}},"unicorn/prefer-node-protocol":{create:e=>({Literal(t){if(!(("ImportDeclaration"===t.parent.type||"ExportNamedDeclaration"===t.parent.type||"ImportExpression"===t.parent.type)&&t.parent.source===t||(rj(t.parent,{object:"process",method:"getBuiltinModule",argumentsLength:1,optionalCall:!1,optionalMember:!1})||rM(t.parent))&&t.parent.arguments[0]===t))return;let{value:r}=t;if(!("string"==typeof r&&!r.startsWith(sN)&&sO(r)&&sO(`${sN}${r}`)))return;let n=e.sourceCode.getRange(t)[0]+1;return{node:t,messageId:sR,data:{moduleName:r},fix:e=>e.insertTextAfterRange([n,n],sN)}}}),meta:{type:"suggestion",docs:{description:"Prefer using the `node:` protocol when importing Node.js builtin modules.",recommended:"unopinionated"},fixable:"code",messages:{[sR]:"Prefer `node:{{moduleName}}` over `{{moduleName}}`."}}},"unicorn/consistent-date-clone":{create:e=>({NewExpression(t){if(!rk(t,{name:"Date",argumentsLength:1}))return;let[r]=t.arguments;if(!rj(r,{method:"getTime",argumentsLength:0,optionalCall:!1,optionalMember:!1}))return;let{sourceCode:n}=e;return{node:r,loc:{start:n.getLoc(r.callee.property).start,end:n.getLoc(r).end},messageId:sL,fix:e=>n5(e,r,n)}}}),meta:{type:"suggestion",docs:{description:"Prefer passing `Date` directly to the constructor when cloning.",recommended:"unopinionated"},fixable:"code",messages:{[sL]:"Unnecessary `.getTime()` call."}}},"unicorn/no-accessor-recursion":{create:e=>{let{sourceCode:t}=e;return{ThisExpression(e){let r=((e,t)=>{for(let r=e.getScope(t);r;r=r.upper){if("class"===r.type)return;if("function"===r.type&&"ArrowFunctionExpression"!==r.block.type)return r}})(t,e);if(!r)return;let n=r.block.parent;if(["Property","MethodDefinition"].includes(n?.type)&&!n.computed&&["set","get"].includes(n.kind)&&sM(n.key)&&("get"===n.kind&&(sU(e,n)||"VariableDeclarator"===e.parent.type&&e.parent.init===e&&"ObjectPattern"===e.parent.id.type&&e.parent.id.properties.some(e=>"Property"===e.type&&!e.computed&&s$(e.key,n.key)))||"set"===n.kind&&((e,t)=>{if(!sU(e,t))return!1;let r=e.parent,{parent:n}=r;return("AssignmentExpression"===n.type||"AssignmentPattern"===n.type)&&n.left===r||"UpdateExpression"===n.type&&n.argument===r||"ArrayPattern"===n.type&&n.elements.includes(r)||"Property"===n.type&&n.value===r&&"ObjectPattern"===n.parent.type&&n.parent.properties.includes(r.parent)})(e,n)))return{node:e.parent,messageId:sj,data:{kind:n.kind}}}}},meta:{type:"problem",docs:{description:"Disallow recursive access to `this` within getters and setters.",recommended:"unopinionated"},defaultOptions:[],messages:{[sj]:"Disallow recursive access to `this` within {{kind}}ters."}}},"unicorn/prefer-import-meta-properties":{create:function(e){let{sourceCode:t}=e;e.on("MetaProperty",function*(e){if("MetaProperty"!==e.type||"import"!==e.meta.name||"meta"!==e.property.name)return;let r=e.parent;if(!rL(r,{properties:["url","filename"],computed:!1,optional:!1}))return;let n=r.property.name;if("url"===n){if(sY(r.parent,t)&&r.parent.arguments[0]===r)return void(yield*a(r.parent,{reportFilenameNode:!0}));if(rk(r.parent,{name:"URL",minimumArguments:1,maximumArguments:2})){var u;let e=r.parent,n=e.parent;if(1===e.arguments.length&&e.arguments[0]===r&&sY(n,t)&&n.arguments[0]===e)return void(yield*a(n,{reportFilenameNode:!0}));2===e.arguments.length&&(u=e.arguments[0],u?.type==="Literal"&&("."===u.value||"./"===u.value))&&e.arguments[1]===r&&sY(n,t)&&n.arguments[0]===e&&(yield i(n,"dirname"))}return}function*a(e,{reportFilenameNode:r=!1}={}){let{parent:n}=e;if(sV(n,t)&&n.arguments[0]===e)return void(yield i(n,"dirname"));if(r&&(yield i(e,"filename")),"VariableDeclarator"!==n.type||n.init!==e||"Identifier"!==n.id.type||"VariableDeclaration"!==n.parent.type||"const"!==n.parent.kind)return;let u=tq(t.getScope(n.id),n.id);if(u)for(let e of u.references){if(!e.isReadOnly())continue;let{parent:r}=e.identifier;sV(r,t)&&r.arguments[0]===e.identifier&&(yield i(r,"dirname"))}}function i(e,t){return{node:e,messageId:"dirname"===t?sq:sz,fix:r=>r.replaceText(e,`import.meta.${t}`)}}"filename"===n&&(yield*a(r))})},meta:{type:"suggestion",docs:{description:"Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.",recommended:!1},fixable:"code",messages:{[sq]:"Do not construct dirname.",[sz]:"Do not construct filename using `fileURLToPath()`."}}},"unicorn/no-unnecessary-array-flat-depth":{create:e=>{e.on("CallExpression",t=>{if(!(rj(t,{method:"flat",argumentsLength:1,optionalCall:!1})&&rA(t.arguments[0],1)))return;let[r]=t.arguments;return{node:r,messageId:sZ,fix:t=>nK(t,r,e.sourceCode)}})},meta:{type:"suggestion",docs:{description:"Disallow using `1` as the `depth` argument of `Array#flat()`.",recommended:"unopinionated"},fixable:"code",messages:{[sZ]:"Passing `1` as the `depth` argument is unnecessary."}}},"unicorn/no-unnecessary-array-splice-count":{create:e=>sm(e,{methods:["splice","toSpliced"],messageId:sG}),meta:{type:"suggestion",docs:{description:"Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.",recommended:"unopinionated"},fixable:"code",messages:{[sG]:"Passing `{{description}}` as the `{{argumentName}}` argument is unnecessary."}}},"unicorn/no-useless-error-capture-stack-trace":{create:e=>{let t=[],r=[];e.on(["ClassDeclaration","ClassExpression"],e=>{t.push(e),r.push(e)}),e.onExit(["ClassDeclaration","ClassExpression"],()=>{t.pop(),r.pop()}),e.on(["FunctionDeclaration","FunctionExpression"],e=>{r.push(e)}),e.onExit(["FunctionDeclaration","FunctionExpression"],()=>{r.pop()}),e.on("CallExpression",n=>{let u,a=t.at(-1);if(!(a?.superClass&&"Identifier"===a.superClass.type&&a0.includes(a.superClass.name)&&e.sourceCode.isGlobalReference(a.superClass)&&(u=r.at(-1),u&&"MethodDefinition"===u.parent.type&&"constructor"===u.parent.kind&&u.parent.value===u&&a.body.body.includes(u.parent))&&rj(n,{object:"Error",method:"captureStackTrace",argumentsLength:2,optionalMember:!1})&&e.sourceCode.isGlobalReference(n.callee.object)))return;let[i,o]=n.arguments;if("ThisExpression"!==i.type||!((e,t,r)=>{if("MetaProperty"===e.type&&"Identifier"===e.meta.type&&"new"===e.meta.name&&"Identifier"===e.property.type&&"target"===e.property.name||rL(e,{property:"constructor",computed:!1,optional:!1})&&"ThisExpression"===e.object.type)return!0;if("Identifier"!==e.type||!t.id)return!1;let n=tq(r.sourceCode.getScope(e),e);return n&&1===n.defs.length&&"ClassName"===n.defs[0].type&&n.defs[0].node===t})(o,a,e))return;let s={node:n,messageId:sK},d="ChainExpression"===n.parent?n.parent.parent:n.parent;return"ExpressionStatement"===d.type&&"BlockStatement"===d.parent.type&&(s.fix=e=>e.remove(d)),s})},meta:{type:"suggestion",docs:{description:"Disallow unnecessary `Error.captureStackTrace(…)`.",recommended:"unopinionated"},fixable:"code",messages:{[sK]:"Unnecessary `Error.captureStackTrace(…)` call."}}},"unicorn/prefer-class-fields":{create:e=>{let{sourceCode:t}=e;return{ClassBody(e){let r=e.body.find(e=>"constructor"===e.kind&&!e.computed&&!e.static&&"MethodDefinition"===e.type&&"FunctionExpression"===e.value.type);if(!r)return;let n=r.value.body.body.find(e=>"EmptyStatement"!==e.type);if(!(n?.type==="ExpressionStatement"&&"AssignmentExpression"===n.expression.type&&"="===n.expression.operator&&"MemberExpression"===n.expression.left.type&&"ThisExpression"===n.expression.left.object.type&&!n.expression.left.computed&&["Identifier","PrivateIdentifier"].includes(n.expression.left.property.type)&&"Literal"===n.expression.right.type))return;let u=n.expression.left.property.name,a=n.expression.right.raw,i=n.expression.left.property.type,o=e.body.find(e=>"PropertyDefinition"===e.type&&!e.computed&&!e.static&&e.key.type===i&&e.key.name===u),s={node:n,messageId:sH};function*d(i){if(yield((e,t,r)=>{let{line:n}=t.getLoc(e).start,u=t.getText(e);return t.lines[n-1].trim()===u?r.removeRange([t.getIndexFromLoc({line:n,column:0}),t.getIndexFromLoc({line:n+1,column:0})]):r.remove(e)})(n,t,i),o){if(o.value)return void(yield i.replaceText(o.value,a));let e=` = ${a}`,r=t.getLastToken(o);return tV(r)?void(yield i.insertTextBefore(r,e)):void(yield i.insertTextAfter(o,`${e};`))}let s=t.getLastToken(e),d=nn(r,t),l=`${d}${u} = ${a};
21
- `;"\n"!==t.getText()[t.getRange(s)[0]-1]&&(l=`
22
- ${l}`);let c=e.body.at(-1);"PropertyDefinition"===c.type&&";"!==t.getLastToken(c).value&&(l=`;${l}`),yield i.insertTextBefore(s,l)}return o?.value?s.suggest=[{messageId:sX,fix:d}]:s.fix=d,s}}},meta:{type:"suggestion",docs:{description:"Prefer class field declarations over `this` assignments in constructors.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{[sH]:"Prefer class field declaration over `this` assignment in constructor for static values.",[sX]:"Encountered same-named class field declaration and `this` assignment in constructor. Replace the class field declaration with the value from `this` assignment."}}},"unicorn/prefer-bigint-literals":{create:e=>({CallExpression(t){if(!rF(t,{name:"BigInt",argumentsLength:1,optional:!1}))return;let[r]=t.arguments,n=function(e){let t;if(rS(e)){let t=e.raw.slice(1,-1);try{BigInt(t)}catch{return}return{shouldUseSuggestion:!1,text:`${t.trimEnd()}n`}}let{value:r,raw:n}=e;if(!Number.isInteger(r))return;try{t=BigInt(r)}catch{return}let u=!(e=>{let t=e.raw.replaceAll("_","").toLowerCase();if(t.includes("."))return!1;let{value:r}=e;for(let{prefix:e,base:n}of[{prefix:"0b",base:2},{prefix:"0o",base:8},{prefix:"0x",base:16}])if(t.startsWith(e))return t.slice(2)===r.toString(n);return!t.includes("e")&&t===String(r)})(e),a=u?`${t}n`:`${n}n`;return{shouldUseSuggestion:u,text:a}}(r);if(!n)return;let u={node:t,messageId:sJ},{shouldUseSuggestion:a,text:i}=n,o=e=>e.replaceText(t,i);return a||e.sourceCode.getCommentsInside(t).length>0?u.suggest=[{messageId:sQ,data:{replacement:i.length<20?`\`${i}\``:"a bigint literal"},fix:o}]:u.fix=o,u}}),meta:{type:"suggestion",docs:{description:"Prefer `BigInt` literals over the constructor.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{[sJ]:"Prefer using bigint literal over `BigInt(…)`.",[sQ]:"Replace with {{replacement}}."}}},"unicorn/prefer-classlist-toggle":{create:e=>{let{sourceCode:t}=e;e.on(["IfStatement","ConditionalExpression"],e=>{let r=[e.consequent,e.alternate].map(e=>{if(e)return"BlockStatement"===e.type&&1===e.body.length&&(e=e.body[0]),"ExpressionStatement"===e.type&&(e=e.expression),"ChainExpression"===e.type&&(e=e.expression),e});if(!r.every(e=>s5(e,["add","remove"])))return;let[n,u]=r;if(n.callee.property.name!==u.callee.property.name&&s8(n,u))return s2(e,function*(r){let a=rD(n.callee.object.object,t),i=rD(n.arguments[0],t),o="ConditionalExpression"===e.type,s="remove"===n.callee.property.name,d=e.test,l=s6(d,s,n),c=l?"":s4(d,t,s),f=n.callee.object.optional||u.callee.object.optional||l?.callee.object.optional,p=`${a}${f?"?":""}.classList.toggle(${i}${c?`, ${c}`:""})`;o||(p=`${p};`),nb(t.getTokenBefore(e),t,p)&&(p=`;${p}`),yield r.replaceText(e,p),o&&(yield*n1(r,e,t))})}),e.on("ConditionalExpression",e=>{let r=[e.consequent,e.alternate];if(!(r.every(e=>rS(e)&&("add"===e.value||"remove"===e.value))&&r[0].value!==r[1].value&&"MemberExpression"===e.parent.type&&e.parent.computed&&!e.parent.optional&&e.parent.property===e&&s3(e.parent.object)&&rF(e.parent.parent,{optional:!1,argumentsLength:1})&&e.parent.parent.callee===e.parent))return;let n=e.parent,u=n.parent;return s2(u,function*(r){let a="remove"===e.consequent.value,i=e.test,o=s6(i,a,u)?"":s4(i,t,a);o&&(yield r.insertTextAfter(u.arguments[0],`, ${o}`)),yield n2(r,n,t,".toggle")},e)})},meta:{type:"suggestion",docs:{description:"Prefer using `Element#classList.toggle()` to toggle class names.",recommended:"unopinionated"},fixable:"code",hasSuggestions:!0,messages:{[s0]:"Prefer using `Element#classList.toggle()` to toggle class names.",[s1]:"Replace with `Element#classList.toggle()`."}}},"unicorn/require-module-attributes":{create:e=>{let{sourceCode:t}=e;e.on(["ImportDeclaration","ExportNamedDeclaration","ExportAllDeclaration"],e=>{let{source:r,attributes:n}=e;if(!r||Array.isArray(n)&&n.length>0)return;let u=t.getTokenAfter(r);if(u?.type!=="Keyword"||"with"!==u.value)return;let a=t.getTokenAfter(u),i=t.getTokenAfter(a);return{node:e,loc:{start:t.getLoc(a).start,end:t.getLoc(i).end},messageId:s9,data:{type:"ImportDeclaration"===e.type?"import statement":"export statement"},fix:e=>[u,i,a].map(t=>e.remove(t))}}),e.on("ImportExpression",r=>{let{options:n}=r;if(n?.type!=="ObjectExpression")return;let u=n.properties.find(e=>"Property"===e.type&&!e.method&&!e.shorthand&&!e.computed&&"init"===e.kind&&("Identifier"===e.key.type&&"with"===e.key.name||"Literal"===e.key.type&&"with"===e.key.value)&&"ObjectExpression"===e.value.type&&0===e.value.properties.length),a=0===n.properties.length||u&&1===n.properties.length?n:u;if(!a)return;let i="Property"===a.type;return{node:u?.value??a,messageId:s9,data:{type:"import expression"},fix:r=>i?function*(e,t,r){let{sourceCode:n}=r;for(let r of n.getTokens(t))yield e.remove(r);let u=n.getTokenAfter(t);if(tY(u))yield e.remove(u);else{let{properties:r}=t.parent;if(r.length>1&&r.at(-1)===t){let r=n.getTokenBefore(t);yield e.remove(r)}}}(r,a,e):[t.getTokenBefore(a,tY),...t.getTokens(a),...rv(a,t)].map(e=>r.remove(e))}})},meta:{type:"suggestion",docs:{description:"Require non-empty module attributes for imports and exports",recommended:"unopinionated"},fixable:"code",messages:{[s9]:"{{type}} with empty attribute list is not allowed."}}}}).map(([e,t])=>{let r;return[e,{meta:{schema:[],...t.meta,docs:{...t.meta.docs,url:(r=eX.basename(e,".js"),`https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/${r}.md`)}},create:nS(t.create)}]})))};module.exports=lv;
1
+ "use strict";var e,t=require("@eslint-sukka/shared"),r=require("eslint"),n=require("foxts/guard"),s=require("foxts/detect-eol"),o=require("@typescript-eslint/types"),i=require("typescript"),a=require("@typescript-eslint/utils"),l=(e=Object.create(null),i&&Object.keys(i).forEach(function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(i,t);Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:function(){return i[t]}})}}),e.default=i,Object.freeze(e));let c=/^\s*(?<directive>eslint-disable(?:-(?:next-)?line)?)/,p=/^eslint-disable(?:-next-line|-line)?(?<ruleId>$|(?:\s+(?:@(?:[\w-]+\/){1,2})?[\w-]+)?)/,u=Symbol("rule-id-no-match");var d=t.createRule({name:"ban-eslint-disable",meta:{type:"problem",docs:{description:"Ban `eslint-disable` comment directive"},schema:[{oneOf:[{type:"boolean"},{type:"string",enum:["allow-with-description"]}]}],messages:{"do-not-use":"Do not use `{{directive}}`","require-description":"Include a description after the `{{directive}}` directive to explain why the `{{directive}}` is necessary.","require-specific-rule":"Enforce specifying rules to disable in `eslint-disable` comments. If you want to disable ESLint on a file altogether, you should ignore it through ESLint configuration."}},create:(e,t="allow-with-description")=>!1===t?{}:{Program(r){if(r.comments&&0!==r.comments.length)for(let n of r.comments){let r=function(e){let t=c.exec(e);return t?.groups?.directive}(n.value);if(r&&("allow-with-description"!==t||!n.value.includes("--"))){let s="allow-with-description"===t?"require-description":"do-not-use";e.report({node:n,data:{directive:r},messageId:s})}let s=function(e){let t=p.exec(e.trim());return t?t.groups?.ruleId:u}(n.value);s===u||s||e.report({node:n,messageId:"require-specific-rule"})}}}});let m=n.nullthrow(new r.Linter({configType:"eslintrc"}).getRules().get("no-return-await"),"[eslint-plugin-sukka] no-return-await rule is removed from ESLint!");var f=t.createRule({...m,meta:{docs:{...m.meta?.docs,recommended:void 0},...m.meta,deprecated:!1}}),g=t.createRule({name:"no-expression-empty-lines",meta:{messages:{unexpectedEmptyLine:"Unexpected empty line before"},docs:{description:"Disallows empty lines inside expressions."},fixable:"whitespace",type:"suggestion",schema:[]},create(e){let t=e.sourceCode.getText(),r=s.detectEol(t);return{MemberExpression(n){let s=n.object.range[1],o=h(t.slice(s));if(o.includes("\n")){var i;let t=r+((h(i=o).split(/\r\n|\n/u).at(-1)??"")+i.trimStart());o!==t&&e.report({fix:()=>({range:[s,s+o.length],text:t}),messageId:"unexpectedEmptyLine",node:n.property})}}}}});function h(e){return e.slice(0,e.length-e.trimStart().length)}var S=t.createRule({name:"object-format",meta:{fixable:"whitespace",schema:[{type:"object",properties:{maxLineLength:{type:"number",default:80},maxObjectSize:{type:"number",default:3}},additionalProperties:!1}],docs:{description:"Requires multiline or single-line object format.",recommended:"stylistic"},messages:{preferMultiline:"Prefer multiline object literal",preferSingleLine:"Prefer single-line object literal"},type:"layout"},create(e,t={}){var r;let n=e.sourceCode.getText(),o=s.detectEol(n),i=`,${o}`,{maxLineLength:a=80,maxObjectSize:l=3}=t,c=(r=n,e=>r.slice(e.range[1]).trimStart().startsWith("//"));return{ObjectExpression(t){let r=t.properties.map(t=>n.slice(Math.min(t.range[0],...e.sourceCode.getCommentsBefore(t).map(e=>e.range[0])),t.range[1]).trim());if(r.length>0){var s;let p,u,d,m,f=e.sourceCode.getText(t),g=r.length>l||r.some(y)||t.properties.some(c),h=y(f),S=!f.includes("\n");g&&S&&e.report({fix:()=>({range:t.range,text:`{${o}${r.join(i)}${o}}`}),messageId:"preferMultiline",node:t}),!g&&h&&(p=e.sourceCode.getLocFromIndex(t.range[0]),u=r.reduce((e,t)=>e+t.length,0),d=2*(r.length-1),m=("number"==typeof(s=t.range[1])?n.slice(s):n.slice(...s.range)).split(/\r\n|\n/u)[0].replace(/^((?: as const)?\S*).*/u,"$1").length,p.column+u+d+4+m<=a)&&e.report({fix:()=>({range:t.range,text:`{${r.join(",")}}`}),messageId:"preferSingleLine",node:t})}}}}});function y(e){return e.includes("\n")}var E=t.createRule({name:"prefer-single-boolean-return",meta:{messages:{replaceIfThenElseByReturn:"Replace this if-then-else flow by a single return statement.",suggest:"Replace with single return statement",suggestCast:'Replace with single return statement using "!!" cast',suggestBoolean:"Replace with single return statement without cast (condition should be boolean!)"},schema:[],type:"suggestion",hasSuggestions:!0,docs:{description:'Return of boolean expressions should not be wrapped into an "if-then-else" statement',recommended:"recommended"}},create:e=>({IfStatement(t){var r,n,s;let i,a,l,c;t.parent.type!==o.AST_NODE_TYPES.IfStatement&&_(t.consequent)&&function(e){if(e.alternate)return _(e.alternate);let{parent:t}=e;if(t.type===o.AST_NODE_TYPES.BlockStatement){let r=t.body.indexOf(e);return T(t.body[r+1])}return!1}(t)&&e.report({messageId:"replaceIfThenElseByReturn",node:t,suggest:(r=t,i=e=>t=>{let n=`return ${e};`;if(r.alternate)return t.replaceText(r,n);let s=r.parent,o=s.body.indexOf(r),i=s.body[o+1],a=[r.range[0],i.range[1]];return t.replaceTextRange(a,n)},a=!1===((n=r.consequent).type===o.AST_NODE_TYPES.BlockStatement?n.body[0]:n).argument.value,l=!(((s=r.test).type===o.AST_NODE_TYPES.UnaryExpression||s.type===o.AST_NODE_TYPES.BinaryExpression)&&["!","==","===","!=","!==","<","<=",">",">=","in","instanceof"].includes(s.operator)),c=e.sourceCode.getText(r.test),a?[{messageId:"suggest",fix:i(`!(${c})`)}]:l?[{messageId:"suggestCast",fix:i(`!!(${c})`)},{messageId:"suggestBoolean",fix:i(c)}]:[{messageId:"suggest",fix:i(c)}])})}})});function T(e){return e?.type===o.AST_NODE_TYPES.ReturnStatement&&e.argument?.type===o.AST_NODE_TYPES.Literal&&"boolean"==typeof e.argument.value}function _(e){return void 0!==e&&(e.type===o.AST_NODE_TYPES.BlockStatement&&1===e.body.length&&T(e.body[0])||T(e))}function A(e,t,r){var n,s;return Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((e,n)=>A(e,t[n],r)):!(Array.isArray(e)||Array.isArray(t))&&e.type===t.type&&(n=r.getTokens(e),s=r.getTokens(t),n.length===s.length&&n.every((e,t)=>e.value===s[t].value))}function v(e){let t=!1;return{branches:e.cases.reduce((r,n,s)=>{var i;return n.test||(t=!0),(s===e.cases.length-1||n.consequent.length>0)&&r.push((i=n.consequent).length>0&&i[i.length-1].type===o.AST_NODE_TYPES.BreakStatement?i.slice(0,-1):i),r},[]),endsWithDefault:t}}t.createRule({name:"no-all-duplicated-branches",meta:{messages:{removeOrEditConditionalStructure:"Remove this conditional structure or edit its code blocks so that they're not all the same.",returnsTheSameValue:'This conditional operation returns the same value whether the condition is "true" or "false".'},schema:[],type:"problem",docs:{description:"All branches in a conditional structure should not have exactly the same implementation",recommended:"recommended"}},create(e){return{IfStatement(r){if(r.parent?.type!==o.AST_NODE_TYPES.IfStatement){let{branches:n,endsWithElse:s}=function(e){let t=[e.consequent],r=!1,n=e.alternate;for(;n;)if(n.type===o.AST_NODE_TYPES.IfStatement)t.push(n.consequent),n=n.alternate;else{t.push(n),r=!0;break}return{branches:t,endsWithElse:r}}(r);s&&t(n)&&e.report({messageId:"removeOrEditConditionalStructure",node:r})}},SwitchStatement(r){let{branches:n,endsWithDefault:s}=v(r);s&&t(n)&&e.report({messageId:"removeOrEditConditionalStructure",node:r})},ConditionalExpression(r){t([r.consequent,r.alternate])&&e.report({messageId:"returnsTheSameValue",node:r})}};function t(t){return t.length>1&&t.slice(1).every((r,n)=>A(r,t[n],e.sourceCode))}}});var b=t.createRule({name:"no-duplicated-branches",meta:{schema:[],type:"suggestion",docs:{description:"Two branches in a conditional structure should not have exactly the same implementation",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S1871/javascript"},messages:{sameConditionalBlock:"This {{type}}'s code block is the same as the block for the {{type}} on line {{line}}."}},create(e){return{IfStatement(s){!function(s){if(s.parent.type===o.AST_NODE_TYPES.IfStatement)return;let{branches:i,endsWithElse:a}=function(e){let t=[e.consequent],r=!1,n=e.alternate;for(;n;)if(n.type===o.AST_NODE_TYPES.IfStatement)t.push(n.consequent),n=n.alternate;else{t.push(n),r=!0;break}return{branches:t,endsWithElse:r}}(s);if(r(i,a))return i.slice(1).forEach((e,t)=>n(e,i[t],"branch"));for(let r=1;r<i.length;r++)if(t([i[r]]))for(let t=0;t<r&&!function(t,r){let s=D(t,r,e.sourceCode);return s&&"loc"in r&&n(t,r,"branch"),s}(i[r],i[t]);t++);}(s)},SwitchStatement(s){!function(s){let{cases:o}=s,{endsWithDefault:i}=v(s),a=o.filter(e=>P(x(e.consequent)).length>0);if(r(a.map(e=>P(x(e.consequent))),i))return a.slice(1).forEach((e,t)=>n(e,a[t],"case"));for(let r=1;r<o.length;r++){let s=P(x(o[r].consequent));if(t(s)){for(let t=0;t<r;t++)if(D(s,P(x(o[t].consequent)),e.sourceCode)){n(o[r],o[t],"case");break}}}}(s)}};function t(t){if(t.length>0){let r=[...e.sourceCode.getTokens(t[0]),...e.sourceCode.getTokens(t[t.length-1])].filter(e=>"{"!==e.value&&"}"!==e.value);return r.length>0&&r[r.length-1].loc.end.line>r[0].loc.start.line}return!1}function r(t,r){return!r&&t.length>1&&t.slice(1).every((r,n)=>D(r,t[n],e.sourceCode))}function n(t,r,n){let s=r.loc;e.report({messageId:"sameConditionalBlock",data:{type:n,line:String(s.start.line)},node:t})}}});function x(e){if(1===e.length){let t=e[0];if(t.type===o.AST_NODE_TYPES.BlockStatement)return t.body}return e}function D(e,t,r){var n,s;return Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((e,n)=>D(e,t[n],r)):!(Array.isArray(e)||Array.isArray(t))&&e.type===t.type&&(n=r.getTokens(e),s=r.getTokens(t),n.length===s.length&&n.every((e,t)=>e.value===s[t].value))}function P(e){return e.length>0&&e[e.length-1].type===o.AST_NODE_TYPES.BreakStatement?e.slice(0,-1):e}var O=t.createRule({name:"comma-or-logical-or-case",meta:{type:"problem",docs:{description:"Comma and logical OR operators should not be used in switch cases",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S3616/javascript"},schema:[],messages:{specifyCase:'Explicitly specify {{nesting}} separate cases that fall through; currently this case clause only works for "{{expression}}".'}},create(e){function t(t,r,n){var s;e.report({messageId:"specifyCase",data:{nesting:n.toString(),expression:String((s=r).type===o.AST_NODE_TYPES.Literal?s.value:e.sourceCode.getText(s))},node:t})}return{"SwitchCase > SequenceExpression":function(e){let r=e.expressions;t(e,r[r.length-1],r.length)},"SwitchCase > LogicalExpression":function(r){var n;if((n=function(t){let r=e.sourceCode.getAncestors(t);for(let e=r.length-1;e>=0;e--)if(r[e].type===o.AST_NODE_TYPES.SwitchStatement)return r[e];throw Error("A switch case should have an enclosing switch statement")}(r)).discriminant.type!==o.AST_NODE_TYPES.Literal||!0!==n.discriminant.value){let e=function e(t,r){if("||"===t.operator)return t.left.type===o.AST_NODE_TYPES.LogicalExpression?e(t.left,r+1):[t.left,r+1]}(r,0);e&&t(r,e[0],e[1]+1)}}}}}),N=t.createRule({name:"no-element-overwrite",meta:{schema:[],type:"problem",docs:{description:"Collection elements should not be replaced unconditionally",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4143/javascript"},messages:{verifyIntendedIndex:'Verify this is the index that was intended; "{{index}}" was already set on line {{line}}.'}},create(e){return{SwitchCase(e){t(e.consequent)},BlockStatement(e){t(e.body)},Program(e){t(e.body.filter(e=>{var t;return!((t=e)&&(t.type===o.AST_NODE_TYPES.ImportDeclaration||t.type===o.AST_NODE_TYPES.ExportNamedDeclaration||t.type===o.AST_NODE_TYPES.ExportDefaultDeclaration||t.type===o.AST_NODE_TYPES.ExportAllDeclaration))}))}};function t(t){let r,n=new Map;t.forEach(t=>{let s=function(t){if(t.type===o.AST_NODE_TYPES.ExpressionStatement)return function(t){var r,n,s;if((r=t).type===o.AST_NODE_TYPES.AssignmentExpression&&"="===r.operator&&t.left.type===o.AST_NODE_TYPES.MemberExpression&&t.left.computed){let r,o,{left:i,right:a}=t,l=Y(i.property);if(void 0!==l&&(n=i.object,s=a,r=e.sourceCode.getTokens(n),void 0===(o=e.sourceCode.getTokens(s)).find((e,t)=>{if(w(e,r[0]))for(let e=t,n=0;e<o.length&&n<r.length;e++,n++)if(w(o[e],r[n])){if(n===r.length-1)return!0}else break;return!1})))return{collectionNode:i.object,indexOrKey:l,node:t}}}(t.expression)||function(e){if(e.type===o.AST_NODE_TYPES.CallExpression&&e.callee.type===o.AST_NODE_TYPES.MemberExpression){let t=e.callee;if(t.property.type===o.AST_NODE_TYPES.Identifier){let r=t.property.name,n="add"===r&&1===e.arguments.length,s="set"===r&&2===e.arguments.length;if(n||s){let r=Y(e.arguments[0]);if(r)return{collectionNode:t.object,indexOrKey:r,node:e}}}}}(t.expression)}(t);if(s){r&&!A(s.collectionNode,r,e.sourceCode)&&n.clear();let t=n.get(s.indexOrKey);t?.node.loc&&e.report({node:s.node,messageId:"verifyIntendedIndex",data:{index:s.indexOrKey,line:t.node.loc.start.line}}),n.set(s.indexOrKey,s),r=s.collectionNode}else n.clear()})}}});function w(e,t){return e.value===t.value}function Y(e){if(e.type===o.AST_NODE_TYPES.Literal){let{value:t}=e;return"number"==typeof t||"string"==typeof t?String(t):void 0}if(e.type===o.AST_NODE_TYPES.Identifier)return e.name}var C=t.createRule({name:"class-prototype",meta:{schema:[],type:"suggestion",docs:{description:'Class methods should be used instead of "prototype" assignments',recommended:"recommended"},messages:{declareClass:'Declare a "{{class}}" class and move this declaration of "{{declaration}}" into it.'}},create(e){let r=e.sourceCode.parserServices,n=t.isParserWithTypeInformation(r)?I:R;return{AssignmentExpression({left:t,right:s}){if(t.type===o.AST_NODE_TYPES.MemberExpression&&n(s,r)){let[r,n]=[t.object,t.property];if(r.type===o.AST_NODE_TYPES.MemberExpression&&n.type===o.AST_NODE_TYPES.Identifier){let[s,i]=[r.object,r.property];s.type===o.AST_NODE_TYPES.Identifier&&i.type===o.AST_NODE_TYPES.Identifier&&"prototype"===i.name&&e.report({messageId:"declareClass",data:{class:s.name,declaration:n.name},node:t})}}}}}});function I(e,r){t.ensureParserWithTypeInformation(r);let n=r.program.getTypeChecker().getTypeAtLocation(r.esTreeNodeToTSNodeMap.get(e));return!!n.symbol&&(n.symbol.flags&i.SymbolFlags.Function)!=0}let k=new Set(["FunctionDeclaration","FunctionExpression","ArrowFunctionExpression"]);function R(e){return k.has(e.type)}var j=t.createRule({name:"bool-param-default",meta:{schema:[],type:"suggestion",docs:{description:"Optional boolean parameters should have default value"},messages:{provideDefault:"Provide a default value for '{{parameter}}' so that the logic of the function is more evident when this parameter is missing. Consider defining another function if providing default value is not possible."}},create:e=>({"FunctionDeclaration, FunctionExpression, ArrowFunctionExpression":t=>{for(let r of t.params)r.type===o.AST_NODE_TYPES.Identifier&&function(e){var t;return(t=e).optional&&!!t.typeAnnotation&&t.typeAnnotation.typeAnnotation.type===o.AST_NODE_TYPES.TSBooleanKeyword||function(e){if(e.typeAnnotation&&e.typeAnnotation.typeAnnotation.type===o.AST_NODE_TYPES.TSUnionType){let t=e.typeAnnotation.typeAnnotation.types;return 2===t.length&&t.some(e=>e.type===o.AST_NODE_TYPES.TSBooleanKeyword)&&t.some(e=>e.type===o.AST_NODE_TYPES.TSUndefinedKeyword)}return!1}(e)}(r)&&e.report({messageId:"provideDefault",data:{parameter:r.name},node:r})}})}),L=t.createRule({name:"call-argument-line",meta:{type:"suggestion",docs:{description:"Function call arguments should not start on new lines",recommended:"recommended"},schema:[],messages:{moveArguments:"Make those call arguments start on line {{line}}.",moveTemplateLiteral:"Make this template literal start on line {{line}}."}},create(e){let t=e.sourceCode;return{CallExpression(r){if(r.callee.type!==o.AST_NODE_TYPES.CallExpression&&1===r.arguments.length){var n;let s=(n=r).typeArguments??n.callee,o=(t.getLastTokenBetween(s,r.arguments[0],M)??t.getLastToken(s)).loc.end.line,{start:i}=t.getTokenAfter(s,F).loc;if(o!==i.line){let{end:n}=t.getLastToken(r).loc;n.line===i.line?e.report({messageId:"moveArguments",data:{line:o.toString()},loc:{start:i,end:n}}):e.report({messageId:"moveArguments",data:{line:o.toString()},loc:i})}}},TaggedTemplateExpression(r){let{quasi:n}=r,s=t.getTokenBefore(n);if(s&&n.loc&&s.loc.end.line!==n.loc.start.line){let t={start:n.loc.start,end:{line:n.loc.start.line,column:n.loc.start.column+1}};e.report({messageId:"moveTemplateLiteral",data:{line:s.loc.start.line.toString()},loc:t})}}}}});function M(e){return e.type===o.AST_TOKEN_TYPES.Punctuator&&")"===e.value}function F(e){return!M(e)}var q=t.createRule({name:"track-todo-fixme-comment",meta:{type:"suggestion",docs:{description:'Track uses of "FIXME" and "TODO" tags',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S1134/javascript"},schema:[],messages:{fixme:"Take the required action to fix the issue indicated by this comment.",todo:'Complete the task associated to this "TODO" comment.'}},create(e){function t(t,r){e.sourceCode.getAllComments().forEach(n=>{let s=n.value.toLowerCase();if(s.includes(t)){let o=s.split(/\r\n?|\n/);for(let s=0;s<o.length;s++){let i=o[s].indexOf(t);i>=0&&!function(e,t,r){let n=t+r.length,s=t>0&&U.test(e.charAt(t-1)),o=n<=e.length-1&&U.test(e.charAt(n));return s||o}(o[s],i,t)&&e.report({messageId:r,loc:function(e,t,r,n){let s=r.loc.start.line+e,o=(0===e?r.loc.start.column+2:0)+t;return{start:{line:s,column:o},end:{line:s,column:o+n.length}}}(s,i,n,t)})}}})}return{"Program:exit":()=>{t("fixme","fixme"),t("todo","todo")}}}});let U=/\p{Letter}/u,B=["Array","Map","Set","WeakSet","WeakMap"],V=new Set(["copyWithin","pop","reverse","shift","sort","clear","delete","concat","flat","flatMap","includes","indexOf","join","lastIndexOf","slice","toSource","toString","toLocaleString","get","has","entries","every","filter","find","findIndex","forEach","keys","map","reduce","reduceRight","some","values"]);var W=t.createRule({name:"no-empty-collection",meta:{schema:[],type:"problem",docs:{description:"Empty collections should not be accessed or iterated",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4158/javascript"},messages:{reviewUsageOfIdentifier:'Review this usage of "{{identifierName}}" as it can only be empty here.'}},create(e){let t=t=>{if(t.references.length<=1||t.defs.some(e=>e.type===a.TSESLint.Scope.DefinitionType.Parameter||e.type===a.TSESLint.Scope.DefinitionType.ImportBinding))return;let r=[],n=!1;for(let e of t.references)if(e.isWriteOnly())if(!function(e){let t=K(e.identifier,e=>e.type===o.AST_NODE_TYPES.VariableDeclarator||e.type===o.AST_NODE_TYPES.ExpressionStatement);if(t){if(t.type===o.AST_NODE_TYPES.VariableDeclarator&&t.init)return G(t.init);if(t.type===o.AST_NODE_TYPES.ExpressionStatement){let{expression:r}=t;return r.type===o.AST_NODE_TYPES.AssignmentExpression&&z(e,r.left)&&G(r.right)}}return!1}(e))return;else n=!0;else{var s;if(!(function(e){let{parent:t}=e.identifier;if(t&&t.type===o.AST_NODE_TYPES.MemberExpression){let e=t.parent;if(e&&e.type===o.AST_NODE_TYPES.CallExpression)return X(t.property,...V)}return!1}(s=e)||function(e){let t=K(e.identifier,e=>e.type===o.AST_NODE_TYPES.ForOfStatement||e.type===o.AST_NODE_TYPES.ForInStatement);return t?.right===e.identifier}(s)||function(e){let{parent:t}=e.identifier;return t&&t.type===o.AST_NODE_TYPES.MemberExpression&&t.computed&&!function(e){let t=$(e,new Set),r=t.find(e=>e.type===o.AST_NODE_TYPES.AssignmentExpression);return r?.operator==="="&&[e,...t].includes(r.left)}(t)}(s)))return;r.push(e)}n&&r.forEach(t=>{e.report({messageId:"reviewUsageOfIdentifier",data:{identifierName:t.identifier.name},node:t.identifier})})},r=e=>{e.type!==a.TSESLint.Scope.ScopeType.global&&e.variables.forEach(t),e.childScopes.forEach(r)};return{"Program:exit":t=>{r(e.sourceCode.getScope(t))}}}});function K(e,t){return $(e,new Set).find(t)}function $(e,t){let r=[],n=e.parent;for(;n&&(r.push(n),!t.has(n.type));)n=n.parent;return r}function z(e,t){return t.type===o.AST_NODE_TYPES.Identifier&&t===e.identifier}function G(e){return e&&e.type===o.AST_NODE_TYPES.ArrayExpression?0===e.elements.length:!!e&&(e.type===o.AST_NODE_TYPES.CallExpression||e.type===o.AST_NODE_TYPES.NewExpression)&&X(e.callee,...B)&&0===e.arguments.length}function X(e,...t){return e?.type===o.AST_NODE_TYPES.Identifier&&(0===t.length||t.some(t=>t===e.name))}let H=new Set(["!=","==","!==","==="]),J=new Set(["!==","!="]),Q=new Set(["+=","-="]);var Z=t.createRule({name:"no-equals-in-for-termination",meta:{schema:[],messages:{replaceOperator:"Replace '{{operator}}' operator with one of '<=', '>=', '<', or '>' comparison operators."},type:"suggestion",docs:{description:'Equality operators should not be used in "for" loop termination conditions',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S888/javascript"}},create(e){function t(t,r){if(t.type===o.AST_NODE_TYPES.Identifier){var n;let s=(n=t.name,function(e,t){let r;for(;null==r&&null!=e;)r=e.variables.find(e=>e.name===t),e=e.upper;return r}(e.sourceCode.getScope(t),n)),o=r.range;if(s&&o)return s.references.some(e=>{var t,r;return t=e.identifier,r=o,t.range&&t.range[0]>r[0]&&t.range[1]<r[1]})}return!1}return{ForStatement(r){var n,s;let i,a;if(!r.test||!r.update)return;let l=r.test;(n=l).type===o.AST_NODE_TYPES.BinaryExpression&&H.has(n.operator)&&function e(t){return!!ee(t)||t.type===o.AST_NODE_TYPES.UpdateExpression||t.type===o.AST_NODE_TYPES.SequenceExpression&&t.expressions.every(e)}(r.update)&&(i=(s=r).test,a=[],function e(t,r){let n;ee(t)?n=t.left:t.type===o.AST_NODE_TYPES.UpdateExpression?n=t.argument:t.type===o.AST_NODE_TYPES.SequenceExpression&&t.expressions.forEach(t=>e(t,r)),n&&n.type===o.AST_NODE_TYPES.Identifier&&r.push(n.name)}(s.update,a),!(i.left.type!==o.AST_NODE_TYPES.Identifier||!a.includes(i.left.name)||function(e){let r=e.init,n=e.test;if(r&&et(n)){let s=function(e,r){var n,s;if(n=e,s=r,n.type===o.AST_NODE_TYPES.UpdateExpression&&!t(n.argument,s)||function(e){if(ee(e)){let t=e.right;return t.type===o.AST_NODE_TYPES.Literal&&1===t.value}return!1}(n)&&!t(n.left,s)){if("++"===e.operator||"+="===e.operator)return 1;if("--"===e.operator||"-="===e.operator)return -1}return 0}(e.update,e.body);if(0!==s){let e=er(r),t=er(n);return void 0!==e&&void 0!==t&&s===Math.sign(t-e)}}return!1}(r)))&&e.report({messageId:"replaceOperator",data:{operator:l.operator},node:l})}}}});function ee(e){return e.type===o.AST_NODE_TYPES.AssignmentExpression&&Q.has(e.operator)}function et(e){return e.type===o.AST_NODE_TYPES.BinaryExpression&&J.has(e.operator)}function er(e){var t;return et(e)?en(e.right):(t=e).type===o.AST_NODE_TYPES.VariableDeclaration&&1===t.declarations.length?en(e.declarations[0].init):e.type===o.AST_NODE_TYPES.AssignmentExpression?en(e.right):void 0}function en(e){if(e&&e.type===o.AST_NODE_TYPES.Literal&&"number"==typeof e.value)return e.value}var es=t.createRule({name:"no-top-level-this",meta:{hasSuggestions:!0,schema:[],messages:{removeThis:'Remove the use of "this".',suggestRemoveThis:'Remove "this"',suggestUseGlobalThis:'Replace "this" with "globalThis" object'},type:"suggestion",docs:{description:'The global "this" object should not be used',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S2990/javascript"},fixable:"code"},create:e=>({'MemberExpression[object.type="ThisExpression"]':t=>{let r=e.sourceCode.getScope(t).variableScope.type,n=e.sourceCode.getAncestors(t).some(e=>e.type===o.AST_NODE_TYPES.ClassDeclaration||e.type===o.AST_NODE_TYPES.ClassExpression);if((r===a.TSESLint.Scope.ScopeType.global||r===a.TSESLint.Scope.ScopeType.module)&&!n){let r=[];if(!t.computed){let n=e.sourceCode.getText(t.property);r.push({messageId:"suggestRemoveThis",fix:e=>e.replaceText(t,n)},{messageId:"suggestUseGlobalThis",fix:e=>e.replaceText(t.object,"globalThis")})}e.report({messageId:"removeThis",node:t.object,suggest:r})}}})}),eo=t.createRule({name:"no-invariant-returns",meta:{schema:[],type:"suggestion",docs:{description:"Function returns should not be invariant",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S3516/javascript",requiresTypeChecking:!1},messages:{refactorReturn:"Refactor this function to only return once or not always return the same value."}},create(e){let t=[],r=[],n=[],s=r=>{var s,i,a;return s=r,void(!(i=t[t.length-1])||(a=i,n.some(e=>e.reachable)||a.containsReturnWithoutValue||a.returnStatements.length<=1||a.codePath.thrownSegments.length>0)||function(e,t){let r=e[0],n=r?el(r,t):void 0;if(void 0!==n)return e.slice(1).every(e=>el(e,t)===n);if(r?.type===o.AST_NODE_TYPES.Identifier){let n=ei(r.name,t);if(n){let t=new Set(n.variable.references.slice(1).map(e=>e.identifier));return e.every(e=>t.has(e))}}return!1}(i.returnStatements.map(e=>e.argument),e.sourceCode.getScope(s))&&e.report({messageId:"refactorReturn",node:s}))};return{onCodePathStart(e){t.push({codePath:e,containsReturnWithoutValue:!1,returnStatements:[]}),r.push(n),n=[]},onCodePathEnd(){t.pop(),n=r.pop()||[]},onCodePathSegmentStart(e){n.push(e)},onCodePathSegmentEnd(){n.pop()},ReturnStatement(e){if(t.length){let r=t[t.length-1];r.containsReturnWithoutValue=r.containsReturnWithoutValue||!e.argument,r.returnStatements.push(e)}},"FunctionDeclaration:exit":s,"FunctionExpression:exit":s,"ArrowFunctionExpression:exit":s}}});function ei(e,t){let r=t.set.get(e);if(r&&!r.references.slice(1).some(e=>{var t;let r;return e.isWrite()||(r=K((t=e).identifier,e=>e.type===o.AST_NODE_TYPES.ExpressionStatement||R(e)))&&r.type===o.AST_NODE_TYPES.ExpressionStatement&&(ea(r,t)||r.expression.type===o.AST_NODE_TYPES.CallExpression)})){let e=null;return 1===r.defs.length&&r.defs[0].type===a.TSESLint.Scope.DefinitionType.Variable&&(e=r.defs[0].node.init),{variable:r,initExpression:e}}return null}function ea(e,t,r=!0){return e.expression.type===o.AST_NODE_TYPES.AssignmentExpression&&function e(t,r,n=!0){return t.type===o.AST_NODE_TYPES.MemberExpression&&(z(r,t.object)||n&&e(t.object,r,n))}(e.expression.left,t,r)}function el(e,t){if(e){if(e.type===o.AST_NODE_TYPES.Literal)return e.value;if(e.type===o.AST_NODE_TYPES.UnaryExpression){let r=el(e.argument,t);return void 0===r?void 0:function(e,t){switch(e){case"-":return-Number(t);case"+":return Number(t);case"~":return~Number(t);case"!":return!t;case"typeof":return typeof t}}(e.operator,r)}if(e.type===o.AST_NODE_TYPES.Identifier){let r=ei(e.name,t);if(r?.initExpression)return el(r.initExpression,t)}}}function ec(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ep(e,t){let r=t.variables.find(t=>t.name===e.name);return!r&&t.upper&&(r=t.upper.variables.find(t=>t.name===e.name)),r}class eu extends Set{constructor(...e){super(...e),ec(this,"type","AssignedValues")}}let ed={type:"UnknownValue"};class em{add(e){e.resolved&&this.references.add(e)}propagate(e){this.in.clear(),this.segment.prevSegments.forEach(t=>{this.join(e.get(t.id).out)});let t=new Map;return this.references.forEach(e=>this.updateProgramState(e,t)),!function(e,t){if(e.size!==t.size)return!1;for(let[s,o]of e){var r,n;if(!t.has(s)||(r=t.get(s),n=o,"AssignedValues"===r.type&&"AssignedValues"===n.type?!function(e,t){return e.size===t.size&&[...e].every(e=>t.has(e))}(r,n):r!==n))return!1}return!0}(this.out,t)&&(this.out=t,!0)}updateProgramState(e,t){let r=e.resolved;if(!r||!e.isWrite())return;if(!e.writeExpr)return void t.set(r,ed);let n=ef(r,e.writeExpr,t,e.from);t.set(r,n)}join(e){for(let[t,r]of e.entries()){let e=this.in.get(t)??new eu;"AssignedValues"===e.type&&"AssignedValues"===r.type?(r.forEach(t=>e.add(t)),this.in.set(t,e)):this.in.set(t,ed)}}constructor(e){ec(this,"segment",void 0),ec(this,"in",void 0),ec(this,"out",void 0),ec(this,"references",void 0),this.segment=e,this.in=new Map,this.out=new Map,this.references=new Set}}function ef(e,t,r,n){if(!t)return ed;switch(t.type){case o.AST_NODE_TYPES.Literal:return t.raw?new eu([t.raw]):ed;case o.AST_NODE_TYPES.Identifier:{let s=ep(t,n);if(s&&s!==e)return r.get(s)??ed;return ed}default:return ed}}class eg{constructor(e){ec(this,"codePath",void 0),ec(this,"reachingDefinitionsMap",void 0),ec(this,"reachingDefinitionsStack",void 0),ec(this,"segments",void 0),ec(this,"assignmentStack",void 0),this.codePath=e,this.reachingDefinitionsMap=new Map,this.reachingDefinitionsStack=[],this.segments=new Map,this.assignmentStack=[]}}class eh{isRhs(e){return this.node.type===o.AST_NODE_TYPES.AssignmentExpression?this.node.right===e:this.node.init===e}isLhs(e){return this.node.type===o.AST_NODE_TYPES.AssignmentExpression?this.node.left===e:this.node.id===e}add(e){let t=e.identifier;for(;t;){if(this.isLhs(t)){this.lhs.add(e);break}if(this.isRhs(t)){this.rhs.add(e);break}t=t.parent}}constructor(e){ec(this,"node",void 0),ec(this,"lhs",void 0),ec(this,"rhs",void 0),this.node=e,this.lhs=new Set,this.rhs=new Set}}function eS(e){return e[e.length-1]}var ey=t.createRule({name:"no-redundant-assignments",meta:{schema:[],type:"suggestion",docs:{description:"Assignments should not be redundant",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4165/javascript"},messages:{reviewAssignment:'Review this redundant assignment: "{{symbol}}" already holds the assigned value along all execution paths.'}},create(e){let t=[],r=new Map,n=new Map,s=[],i=[];return{AssignmentExpression:c,"VariableDeclarator[init]":c,"AssignmentExpression:exit":l,"VariableDeclarator[init]:exit":l,Identifier(r){var s;r.parent.type===o.AST_NODE_TYPES.TSEnumBody||r.parent.type===o.AST_NODE_TYPES.TSEnumDeclaration||r.parent.type===o.AST_NODE_TYPES.TSEnumMember||(s=r,e.sourceCode.getAncestors(s).some(e=>e.type===o.AST_NODE_TYPES.TSEnumDeclaration)||function(r){var s;let{ref:o,variable:i}=function e(t,r){if(null===r)return{ref:null,variable:null};let n=r.references.find(e=>e.identifier===t);if(n)return{ref:n,variable:n.resolved};let s=r.variables.find(e=>e.defs.find(e=>e.name===t));return s?{ref:null,variable:s}:e(t,r.upper)}(s=r,e.sourceCode.getScope(s));if(o&&u(o),i){let e=eS(t).codePath.id;n.has(i)?n.get(i).add(e):n.set(i,new Set([e]))}}(r))},"Program:exit":()=>{let e=Array.from(r.values(),e=>e.segment);for(;e.length;){let t=e.pop();r.get(t.id).propagate(r)&&t.nextSegments.forEach(t=>e.push(t))}r.forEach(p),r.clear(),n.clear(),t.length=0},onCodePathSegmentStart(e){r.set(e.id,new em(e)),i.push(e)},onCodePathStart(e){var r;r=new eg(e),t.push(r),s.push(i),i.length=0},onCodePathEnd(){t.pop(),s.pop()||(i.length=0)},onCodePathSegmentEnd(){i.pop()}};function l(){let e=eS(t).assignmentStack.pop();e.rhs.forEach(u),e.lhs.forEach(u)}function c(e){eS(t).assignmentStack.push(new eh(e))}function p(t){let r=new Map(t.in);t.references.forEach(t=>{let s=t.resolved;if(!s||!t.isWrite()||!function(e){var t;let r=e.resolved;return r&&(e.identifier.type!==o.AST_NODE_TYPES.Identifier||e.identifier.parent.type!==o.AST_NODE_TYPES.AssignmentPattern)&&!r.name.startsWith("_")&&!function(e){if(e?.parent){let t=e.parent;return t&&t.type===o.AST_NODE_TYPES.AssignmentExpression&&"="!==t.operator}return!1}(e.writeExpr)&&(e.writeExpr?.type!==o.AST_NODE_TYPES.Identifier||e.resolved!==ep(e.writeExpr,e.from))&&!r.defs.some(e=>e.type===a.TSESLint.Scope.DefinitionType.Parameter||e.type===a.TSESLint.Scope.DefinitionType.Variable&&!e.node.init)&&(t=r,!(n.get(t).size>1))}(t))return;let i=r.get(s),l=ef(s,t.writeExpr,r,t.from);if(i?.type==="AssignedValues"&&1===i.size){let[r]=[...i];!function({resolved:t},r,n,s,o){if("UnknownValue"===s.type||1!==s.size)return;let[i]=[...s];t&&1!==t.references.filter(e=>e.isWrite()).length&&n===i&&e.report({node:r,messageId:"reviewAssignment",data:{symbol:o}})}(t,t.writeExpr,r,l,s.name)}r.set(s,l)})}function u(e){let{assignmentStack:n}=eS(t);if(n.length>0)eS(n).add(e);else for(let t=0,n=i.length;t<n;t++)(function(e){let t;return r.has(e.id)?t=r.get(e.id):(t=new em(e),r.set(e.id,t)),t})(i[t]).add(e)}}}),eE=t.createRule({name:"no-same-line-conditional",meta:{schema:[],type:"layout",docs:{description:"Conditionals should start on new lines",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S3972/javascript"},fixable:"whitespace",messages:{sameLineCondition:'Move this "if" to a new line or add the missing "else".'}},create(e){function t(t){var r;let{sourceCode:n}=e;(r=t).reduce((e,t,n)=>{let s=r[n-1];return t.type===o.AST_NODE_TYPES.IfStatement&&s&&s.type===o.AST_NODE_TYPES.IfStatement?[{first:s,following:t},...e]:e},[]).forEach(t=>{let r=t.first,s=t.following;if(r.loc&&s.loc&&r.loc.end.line===s.loc.start.line&&r.loc.start.line!==s.loc.end.line){let t=n.getFirstToken(s);e.report({messageId:"sameLineCondition",loc:t.loc,fix:e=>e.replaceTextRange([r.range[1],s.range[0]],"\n"+" ".repeat(r.loc.start.column))})}})}return{Program:e=>t(e.body),BlockStatement:e=>t(e.body),SwitchCase:e=>t(e.consequent)}}}),eT=t.createRule({name:"no-small-switch",meta:{schema:[],messages:{replaceSwitch:'Replace this "switch" statement by "if" statements to increase readability.'},type:"suggestion",docs:{description:'"if" statements should be preferred over "switch" when simpler',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S1301/javascript"}},create:e=>({SwitchStatement(t){let{cases:r}=t,n=r.some(e=>!e.test);if(r.length<2||2===r.length&&n){let r=e.sourceCode.getFirstToken(t);r&&e.report({messageId:"replaceSwitch",loc:r.loc})}}})});let e_=["Array","Map","Set","WeakSet","WeakMap"],eA=["copyWithin","fill","pop","push","reverse","set","shift","sort","splice","unshift","add","clear","delete"];var ev=t.createRule({name:"no-unused-collection",meta:{schema:[],messages:{unusedCollection:"Either use this collection's contents or remove the collection."},type:"suggestion",docs:{description:"Collection contents should be used",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4030/javascript",requiresTypeChecking:!1}},create:e=>({"Program:exit":t=>{let r=[];(function e(t,r){t.type!==a.TSESLint.Scope.ScopeType.global&&t.variables.forEach(e=>{(function(e){if(function(e){if(!e.defs.length)return;let t=e.defs[0];return t.node.parent?.parent?.type.startsWith("Export")}(e)||e.references.length<=1)return!1;let t=!1;for(let r of e.references)if(r.isWriteOnly())if(!function(e){let t=K(e.identifier,e=>e.type===o.AST_NODE_TYPES.VariableDeclarator||e.type===o.AST_NODE_TYPES.ExpressionStatement);if(t){if(t.type===o.AST_NODE_TYPES.VariableDeclarator&&t.init)return eb(t.init);if(t.type===o.AST_NODE_TYPES.ExpressionStatement){let{expression:r}=t;return r.type===o.AST_NODE_TYPES.AssignmentExpression&&z(e,r.left)&&eb(r.right)}}return!1}(r))return!1;else t=!0;else if(function(e){let t=K(e.identifier,e=>e.type===o.AST_NODE_TYPES.ExpressionStatement);return!t||!ea(t,e,!1)&&!function(e,t){if(e.expression.type===o.AST_NODE_TYPES.CallExpression){let{callee:r}=e.expression;if(r.type===o.AST_NODE_TYPES.MemberExpression){let{property:e,object:n}=r;return z(t,n)&&X(e,...eA)}}return!1}(t,e)}(r))return!1;return t})(e)&&r.push(e)}),t.childScopes.forEach(t=>{e(t,r)})})(e.sourceCode.getScope(t),r),r.forEach(t=>{e.report({messageId:"unusedCollection",node:t.identifiers[0]})})}})});function eb(e){return!!e&&e.type===o.AST_NODE_TYPES.ArrayExpression||!!e&&(e.type===o.AST_NODE_TYPES.CallExpression||e.type===o.AST_NODE_TYPES.NewExpression)&&X(e.callee,...e_)}var ex=t.createRule({name:"no-useless-plusplus",meta:{schema:[],type:"problem",docs:{description:"Values should not be uselessly incremented",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S2123/javascript"},messages:{removeIncrement:"Remove this {{updateOperator}}rement or correct the code not to waste it."}},create(e){function t(t){let r="++"===t.operator?"inc":"dec";e.report({messageId:"removeIncrement",data:{updateOperator:r},node:t})}return{"ReturnStatement > UpdateExpression":function(r){var n;let s=r.argument;!r.prefix&&s.type===o.AST_NODE_TYPES.Identifier&&(n=s,e.sourceCode.getScope(r).variables.some(e=>e.identifiers.some(e=>e.name===n.name)))&&t(r)},AssignmentExpression(e){let r=e.right;if(r.type===o.AST_NODE_TYPES.UpdateExpression&&!r.prefix){let n=e.left;n.type===o.AST_NODE_TYPES.Identifier&&r.argument.type===o.AST_NODE_TYPES.Identifier&&r.argument.name===n.name&&t(r)}}}}});let eD=new Set(["map","filter","reduce","reduceRight","forEach"]);var eP=t.createRule({name:"no-chain-array-higher-order-functions",meta:{type:"problem",fixable:"code",docs:{description:"Prefer `.reduce` over chaining `.filter`, `.map` methods",recommended:"recommended"},schema:[],messages:{detected:"Detected the chaining of array methods: {{methods}}. Reaplce with `.reduce` to reduce array iterations and improve the performance."}},create:e=>({MemberExpression(t){if(eO(t)){let r=t.parent;eO(r.parent)&&e.report({node:r,messageId:"detected",data:{methods:`arr.${t.property.name}().${r.parent.property.name}()`}})}}})});function eO(e){return e.type===o.AST_NODE_TYPES.MemberExpression&&!e.computed&&e.property.type===o.AST_NODE_TYPES.Identifier&&eD.has(e.property.name)&&e.parent.type===o.AST_NODE_TYPES.CallExpression}var eN=t.createRule({name:"no-export-const-enum",meta:{type:"suggestion",docs:{description:"Disallow using `const enum` expression as it can not be inlined and tree-shaken by swc/esbuild/babel/webpack/rollup/vite/bun/rspack"},messages:{noConstEnum:"Do not use `const enum` expression"},schema:[]},create(e){let t=(t,r)=>{let n=a.ASTUtils.findVariable(e.sourceCode.getScope(t),r);n?.defs.forEach(r=>{r.node.type===o.AST_NODE_TYPES.TSEnumDeclaration&&r.node.const&&e.report({node:t,messageId:"noConstEnum"})})};return{ExportNamedDeclaration(r){let n=r.declaration;if(n?.type===o.AST_NODE_TYPES.TSEnumDeclaration&&n.const)return void e.report({node:r,messageId:"noConstEnum"});if(n?.type===o.AST_NODE_TYPES.VariableDeclaration){let e=n.declarations[0].id;e.type===o.AST_NODE_TYPES.Identifier&&t(r,e)}},ExportDefaultDeclaration(e){let r=e.declaration;r.type===o.AST_NODE_TYPES.Identifier&&t(e,r)}}}}),ew=t.createRule({name:"no-for-in-iterable",meta:{schema:[],type:"suggestion",docs:{description:'"for in" should not be used with iterables',recommended:"strict",url:"https://sonarsource.github.io/rspec/#/rspec/S4139/javascript"},messages:{useForOf:'Use "for...of" to iterate over this "{{iterable}}".'}},create(e){let r=e.sourceCode.parserServices;return{ForInStatement(n){var s,o;t.ensureParserWithTypeInformation(r);let a=eY(n.right,r);if(t.ensureParserWithTypeInformation(r),(s=a).symbol&&eC.has(s.symbol.name)||((o=a).flags&i.TypeFlags.StringLike)>0||o.symbol?.name==="String"||function(e,t){var r,n=t.program.getTypeChecker().getBaseConstraintOfType(e)??e,s=t;for(let e of(r=n).isUnion()?r.types:[r])if(!function(e,t){let r=t.program.getTypeChecker();return"isArrayType"in r&&"function"==typeof r.isArrayType&&r.isArrayType(e)}(e,s))return!1;return!0}(a,r)){let t=a.symbol?a.symbol.name:"String";e.report({messageId:"useForOf",data:{iterable:t},loc:e.sourceCode.getFirstToken(n).loc})}}}}});function eY(e,t){return t.program.getTypeChecker().getTypeAtLocation(t.esTreeNodeToTSNodeMap.get(e))}let eC=new Set(["Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array","Set","Map"]);var eI=t.createRule({name:"only-await-thenable",meta:{schema:[],type:"suggestion",docs:{description:'"await" should only be used with promises',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4123/javascript"},messages:{refactorAwait:"Refactor this redundant 'await' on a non-promise."}},create(e){let r=e.sourceCode.parserServices;return t.ensureParserWithTypeInformation(r),{AwaitExpression(t){let n,s=eY(t.argument,r);(function(e,t){var r,n;if(e.argument.type!==o.AST_NODE_TYPES.CallExpression)return!1;let s=(r=e.argument,(n=t).program.getTypeChecker().getResolvedSignature(n.esTreeNodeToTSNodeMap.get(r)));return s?.declaration&&function(e){if(!e.jsDoc)return!1;for(let t of e.jsDoc)if(t.tags?.some(e=>ek.has(e.tagName.escapedText.toString())))return!0;return!1}(s.declaration)})(t,r)||(n=s.getProperty("then"),n?.declarations?.some(e=>e.kind===i.SyntaxKind.MethodSignature||e.kind===i.SyntaxKind.MethodDeclaration||e.kind===i.SyntaxKind.PropertyDeclaration))||s.flags&i.TypeFlags.Any||s.flags&i.TypeFlags.Unknown||s.flags&i.TypeFlags.Union||e.report({messageId:"refactorAwait",node:t})}}}});let ek=new Set(["return","returns"]);var eR=t.createRule({name:"no-undefined-optional-parameters",meta:{schema:[],type:"suggestion",docs:{description:'"undefined" should not be passed as the value of optional parameters',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4623/javascript",requiresTypeChecking:!0},fixable:"code",hasSuggestions:!0,messages:{removeUndefined:'Remove this redundant "undefined".',suggestRemoveUndefined:"Remove this redundant argument"}},create(e){let r=e.sourceCode.parserServices;return t.ensureParserWithTypeInformation(r),{CallExpression(t){var n;let{arguments:s}=t;if(0===s.length)return;let i=s[s.length-1];(n=i).type===o.AST_NODE_TYPES.Identifier&&"undefined"===n.name&&function(e,t,r){let n=r.program.getTypeChecker().getResolvedSignature(r.esTreeNodeToTSNodeMap.get(t));if(n){var s;let t=n.declaration;if(t&&(s=t,ej.has(s.kind))){let{parameters:r}=t,n=r[e];return n&&(n.initializer||n.questionToken)}}return!1}(s.length-1,t,r)&&e.report({messageId:"removeUndefined",node:i,suggest:[{messageId:"suggestRemoveUndefined",fix(r){if(1===t.arguments.length){let n=e.sourceCode.getTokenAfter(t.callee),s=e.sourceCode.getLastToken(t),[,o]=n.range,[i]=s.range;return r.removeRange([o,i])}let[,n]=s[s.length-2].range,[,o]=i.range;return r.removeRange([n,o])}}]})}}}});let ej=new Set([i.SyntaxKind.FunctionDeclaration,i.SyntaxKind.FunctionExpression,i.SyntaxKind.ArrowFunction,i.SyntaxKind.MethodDeclaration,i.SyntaxKind.Constructor,i.SyntaxKind.GetAccessor,i.SyntaxKind.SetAccessor]);function eL(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class eM{visit(e,t){let r=e=>{switch(e.type){case o.AST_NODE_TYPES.AwaitExpression:case o.AST_NODE_TYPES.CallExpression:case o.AST_NODE_TYPES.NewExpression:this.callLikeExpressions.push(e);break;case o.AST_NODE_TYPES.FunctionDeclaration:case o.AST_NODE_TYPES.FunctionExpression:case o.AST_NODE_TYPES.ArrowFunctionExpression:return}(function(e,t){let r=[],n=t[e.type];if(n?.length)for(let t of n){let n=e[t];Array.isArray(n)?r.push(...n):r.push(n)}return r.filter(Boolean)})(e,t.sourceCode.visitorKeys).forEach(r)};r(e)}constructor(){eL(this,"callLikeExpressions",[])}}eL(eM,"getCallExpressions",(e,t)=>{let r=new eM;return r.visit(e,t),r.callLikeExpressions});var eF=t.createRule({name:"no-try-promise",meta:{schema:[],type:"problem",docs:{description:'Promise rejections should not be caught by "try" blocks',recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S4822/javascript",requiresTypeChecking:!0},messages:{addAwait:"Consider using 'await' for the promise{{ending}} inside this 'try' or replace it with 'Promise.prototype.catch(...)' usage{{ending}}.",removeTry:"Consider removing this 'try' statement as promise{{ending}} rejection is already captured by '.catch()' method."}},create(e){let r=e.sourceCode.parserServices;return t.ensureParserWithTypeInformation(r),{TryStatement(t){if(t.handler){let n=[],s=[],a=!1;if(eM.getCallExpressions(t.block,e).forEach(e=>{var t,l,c,p,u,d;let m,f;if(e.type===o.AST_NODE_TYPES.AwaitExpression||(t=e,m=(l=r).esTreeNodeToTSNodeMap.get(t),!(f=l.program.getTypeChecker().getTypeAtLocation(m).getProperty("then"))||!(f.flags&i.SymbolFlags.Method))){a=!0;return}(c=e).parent&&(c.parent.type===o.AST_NODE_TYPES.AwaitExpression||c.parent.type===o.AST_NODE_TYPES.YieldExpression)||(p=e).parent&&p.parent.type===o.AST_NODE_TYPES.MemberExpression&&p.parent.property.type===o.AST_NODE_TYPES.Identifier&&"then"===p.parent.property.name||(u=e).type===o.AST_NODE_TYPES.CallExpression&&u.callee.type===o.AST_NODE_TYPES.MemberExpression&&u.callee.property.type===o.AST_NODE_TYPES.Identifier&&"catch"===u.callee.property.name||((d=e).parent&&d.parent.type===o.AST_NODE_TYPES.MemberExpression&&d.parent.property.type===o.AST_NODE_TYPES.Identifier&&"catch"===d.parent.property.name?s:n).push(e)}),!a){if(n.length>0){let r=n.length>1?"s":"",s=e.sourceCode.getFirstToken(t);e.report({messageId:"addAwait",data:{ending:r},loc:s.loc})}if(0===n.length&&s.length>0){let r=s.length>1?"s":"",n=e.sourceCode.getFirstToken(t);e.report({messageId:"removeTry",data:{ending:r},loc:n.loc})}}}}}}}),eq=t.createRule({name:"no-useless-string-operation",meta:{schema:[],messages:{uselessStringOp:"{{symbol}} is an immutable object; you must either store or return the result of the operation."},type:"problem",docs:{description:"Results of operations on strings should not be ignored",recommended:"recommended",url:"https://sonarsource.github.io/rspec/#/rspec/S1154/javascript"}},create(e){let r=e.sourceCode.parserServices;return{'ExpressionStatement > CallExpression[callee.type="MemberExpression"]':n=>{let s,{object:i,property:a}=n.callee;t.ensureParserWithTypeInformation(r),(eY(i,r).flags&l.TypeFlags.StringLike)!=0&&a.type===o.AST_NODE_TYPES.Identifier&&e.report({messageId:"uselessStringOp",data:{symbol:((s=e.sourceCode.getText(i)).length>30&&(s="String"),s)},node:a})}}}});module.exports={rules:{"ban-eslint-disable":d,"no-return-await":f,"no-expression-empty-lines":g,"object-format":S,"prefer-single-boolean-return":E,"no-all-duplicated-branches":b,"no-duplicated-branches":b,"bool-param-default":j,"call-argument-line":L,"class-prototype":C,"comma-or-logical-or-case":O,"track-todo-fixme-comment":q,"no-element-overwrite":N,"no-empty-collection":W,"no-equals-in-for-termination":Z,"no-top-level-this":es,"no-invariant-returns":eo,"no-redundant-assignments":ey,"no-same-line-conditional":eE,"no-small-switch":eT,"no-unused-collection":ev,"no-useless-plusplus":ex,"no-chain-array-higher-order-functions":eP,"no-export-const-enum":eN,"no-for-in-iterable":ew,"only-await-thenable":eI,"no-undefined-optional-parameters":eR,"no-try-promise":eF,"no-useless-string-operation":eq}};