You are on page 1of 54

{"version":3,"file":"eslintrc.cjs","sources":["..

/lib/config-array/ignore-
pattern.js","../lib/config-array/extracted-config.js","../lib/config-array/config-
array.js","../lib/config-array/config-dependency.js","../lib/config-array/override-
tester.js","../lib/config-array/index.js","../lib/shared/config-ops.js","../lib/
shared/deprecation-warnings.js","../lib/shared/ajv.js","../conf/config-
schema.js","../conf/environments.js","../lib/shared/config-validator.js","../lib/
shared/naming.js","../lib/shared/relative-module-resolver.js","../lib/config-array-
factory.js","../lib/cascading-config-array-factory.js","../lib/flat-
compat.js","../lib/index.js"],"sourcesContent":["/**\n * @fileoverview
`IgnorePattern` class.\n *\n * `IgnorePattern` class has the set of glob patterns
and the base path.\n *\n * It provides two static methods.\n *\n * -
`IgnorePattern.createDefaultIgnore(cwd)`\n * Create the default predicate
function.\n * - `IgnorePattern.createIgnore(ignorePatterns)`\n * Create the
predicate function from multiple `IgnorePattern` objects.\n *\n * It provides two
properties and a method.\n *\n * - `patterns`\n * The glob patterns that
ignore to lint.\n * - `basePath`\n * The base path of the glob patterns. If
absolute paths existed in the\n * glob patterns, those are handled as relative
paths to the base path.\n * - `getPatternsRelativeTo(basePath)`\n * Get
`patterns` as modified for a given base path. It modifies the\n * absolute
paths in the patterns as prepending the difference of two base\n * paths.\n *\
n * `ConfigArrayFactory` creates `IgnorePattern` objects when it processes\n *
`ignorePatterns` properties.\n *\n * @author Toru Nagashima
<https://github.com/mysticatea>\n */\n\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport assert from \"assert\";\nimport path from \"path\";\nimport ignore
from \"ignore\";\nimport debugOrig from \"debug\";\n\nconst debug =
debugOrig(\"eslintrc:ignore-pattern\");\n\n/** @typedef
{ReturnType<import(\"ignore\").default>} Ignore */\n\
n//------------------------------------------------------------------------------\
n// Helpers\
n//------------------------------------------------------------------------------\
n\n/**\n * Get the path to the common ancestor directory of given paths.\n * @param
{string[]} sourcePaths The paths to calculate the common ancestor.\n * @returns
{string} The path to the common ancestor directory.\n */\nfunction
getCommonAncestorPath(sourcePaths) {\n let result = sourcePaths[0];\n\n for
(let i = 1; i < sourcePaths.length; ++i) {\n const a = result;\n
const b = sourcePaths[i];\n\n // Set the shorter one (it's the common
ancestor if one includes the other).\n result = a.length < b.length ? a :
b;\n\n // Set the common ancestor.\n for (let j = 0, lastSepPos = 0;
j < a.length && j < b.length; ++j) {\n if (a[j] !== b[j]) {\n
result = a.slice(0, lastSepPos);\n break;\n }\n
if (a[j] === path.sep) {\n lastSepPos = j;\n }\
n }\n }\n\n let resolvedResult = result || path.sep;\n\n // if
Windows common ancestor is root of drive must have trailing slash to be absolute.\n
if (resolvedResult && resolvedResult.endsWith(\":\") && process.platform
=== \"win32\") {\n resolvedResult += path.sep;\n }\n return
resolvedResult;\n}\n\n/**\n * Make relative path.\n * @param {string} from The
source path to get relative path.\n * @param {string} to The destination path to
get relative path.\n * @returns {string} The relative path.\n */\nfunction
relative(from, to) {\n const relPath = path.relative(from, to);\n\n if
(path.sep === \"/\") {\n return relPath;\n }\n return
relPath.split(path.sep).join(\"/\");\n}\n\n/**\n * Get the trailing slash if
existed.\n * @param {string} filePath The path to check.\n * @returns {string} The
trailing slash if existed.\n */\nfunction dirSuffix(filePath) {\n const isDir =
(\n filePath.endsWith(path.sep) ||\n (process.platform === \"win32\"
&& filePath.endsWith(\"/\"))\n );\n\n return isDir ? \"/\" : \"\";\n}\n\
nconst DefaultPatterns = Object.freeze([\"/**/node_modules/*\"]);\nconst
DotPatterns = Object.freeze([\".*\", \"!.eslintrc.*\", \"!../\"]);\n\
n//------------------------------------------------------------------------------\
n// Public\
n//------------------------------------------------------------------------------\
n\nclass IgnorePattern {\n\n /**\n * The default patterns.\n * @type
{string[]}\n */\n static get DefaultPatterns() {\n return
DefaultPatterns;\n }\n\n /**\n * Create the default predicate function.\n
* @param {string} cwd The current working directory.\n * @returns
{((filePath:string, dot:boolean) => boolean) & {basePath:string;
patterns:string[]}}\n * The preficate function.\n * The first argument is
an absolute path that is checked.\n * The second argument is the flag to not
ignore dotfiles.\n * If the predicate function returned `true`, it means the
path should be ignored.\n */\n static createDefaultIgnore(cwd) {\n
return this.createIgnore([new IgnorePattern(DefaultPatterns, cwd)]);\n }\n\
n /**\n * Create the predicate function from multiple `IgnorePattern`
objects.\n * @param {IgnorePattern[]} ignorePatterns The list of ignore
patterns.\n * @returns {((filePath:string, dot?:boolean) => boolean) &
{basePath:string; patterns:string[]}}\n * The preficate function.\n * The
first argument is an absolute path that is checked.\n * The second argument is
the flag to not ignore dotfiles.\n * If the predicate function returned `true`,
it means the path should be ignored.\n */\n static
createIgnore(ignorePatterns) {\n debug(\"Create with: %o\",
ignorePatterns);\n\n const basePath =
getCommonAncestorPath(ignorePatterns.map(p => p.basePath));\n const patterns
= [].concat(\n ...ignorePatterns.map(p =>
p.getPatternsRelativeTo(basePath))\n );\n const ig =
ignore({ allowRelativePaths: true }).add([...DotPatterns, ...patterns]);\n
const dotIg = ignore({ allowRelativePaths: true }).add(patterns);\n\n
debug(\" processed: %o\", { basePath, patterns });\n\n return
Object.assign(\n (filePath, dot = false) => {\n
assert(path.isAbsolute(filePath), \"'filePath' should be an absolute path.\");\n
const relPathRaw = relative(basePath, filePath);\n const relPath =
relPathRaw && (relPathRaw + dirSuffix(filePath));\n const adoptedIg
= dot ? dotIg : ig;\n const result = relPath !== \"\" &&
adoptedIg.ignores(relPath);\n\n debug(\"Check\", { filePath, dot,
relativePath: relPath, result });\n return result;\n },\n
{ basePath, patterns }\n );\n }\n\n /**\n * Initialize a new
`IgnorePattern` instance.\n * @param {string[]} patterns The glob patterns that
ignore to lint.\n * @param {string} basePath The base path of `patterns`.\n
*/\n constructor(patterns, basePath) {\n
assert(path.isAbsolute(basePath), \"'basePath' should be an absolute path.\");\n\n
/**\n * The glob patterns that ignore to lint.\n * @type
{string[]}\n */\n this.patterns = patterns;\n\n /**\n
* The base path of `patterns`.\n * @type {string}\n */\n
this.basePath = basePath;\n\n /**\n * If `true` then patterns which
don't start with `/` will match the paths to the outside of `basePath`. Defaults to
`false`.\n *\n * It's set `true` for `.eslintignore`,
`package.json`, and `--ignore-path` for backward compatibility.\n * It's
`false` as-is for `ignorePatterns` property in config files.\n * @type
{boolean}\n */\n this.loose = false;\n }\n\n /**\n * Get
`patterns` as modified for a given base path. It modifies the\n * absolute
paths in the patterns as prepending the difference of two base\n * paths.\n
* @param {string} newBasePath The base path.\n * @returns {string[]} Modifired
patterns.\n */\n getPatternsRelativeTo(newBasePath) {\n
assert(path.isAbsolute(newBasePath), \"'newBasePath' should be an absolute
path.\");\n const { basePath, loose, patterns } = this;\n\n if
(newBasePath === basePath) {\n return patterns;\n }\n
const prefix = `/${relative(newBasePath, basePath)}`;\n\n return
patterns.map(pattern => {\n const negative = pattern.startsWith(\"!\");\
n const head = negative ? \"!\" : \"\";\n const body =
negative ? pattern.slice(1) : pattern;\n\n if (body.startsWith(\"/\") ||
body.startsWith(\"../\")) {\n return `${head}${prefix}${body}`;\n
}\n return loose ? pattern : `${head}${prefix}/**/${body}`;\
n });\n }\n}\n\nexport { IgnorePattern };\n","/**\n * @fileoverview
`ExtractedConfig` class.\n *\n * `ExtractedConfig` class expresses a final
configuration for a specific file.\n *\n * It provides one method.\n *\n * -
`toCompatibleObjectAsConfigFileContent()`\n * Convert this configuration to
the compatible object as the content of\n * config files. It converts the
loaded parser and plugins to strings.\n *
`CLIEngine#getConfigForFile(filePath)` method uses this method.\n *\n *
`ConfigArray#extractConfig(filePath)` creates a `ExtractedConfig` instance.\n *\n *
@author Toru Nagashima <https://github.com/mysticatea>\n */\n\nimport
{ IgnorePattern } from
\"./ignore-pattern.js\";\n\n// For VSCode intellisense\n/** @typedef
{import(\"../../shared/types\").ConfigData} ConfigData */\n/** @typedef
{import(\"../../shared/types\").GlobalConf} GlobalConf */\n/** @typedef
{import(\"../../shared/types\").SeverityConf} SeverityConf */\n/** @typedef
{import(\"./config-dependency\").DependentParser} DependentParser */\n/** @typedef
{import(\"./config-dependency\").DependentPlugin} DependentPlugin */\n\n/**\n *
Check if `xs` starts with `ys`.\n * @template T\n * @param {T[]} xs The array to
check.\n * @param {T[]} ys The array that may be the first part of `xs`.\n *
@returns {boolean} `true` if `xs` starts with `ys`.\n */\nfunction startsWith(xs,
ys) {\n return xs.length >= ys.length && ys.every((y, i) => y === xs[i]);\n}\n\
n/**\n * The class for extracted config data.\n */\nclass ExtractedConfig {\n
constructor() {\n\n /**\n * The config name what `noInlineConfig`
setting came from.\n * @type {string}\n */\n
this.configNameOfNoInlineConfig = \"\";\n\n /**\n * Environments.\n
* @type {Record<string, boolean>}\n */\n this.env = {};\n\
n /**\n * Global variables.\n * @type {Record<string,
GlobalConf>}\n */\n this.globals = {};\n\n /**\n *
The glob patterns that ignore to lint.\n * @type {(((filePath:string,
dot?:boolean) => boolean) & { basePath:string; patterns:string[] }) | undefined}\n
*/\n this.ignores = void 0;\n\n /**\n * The flag that
disables directive comments.\n * @type {boolean|undefined}\n */\n
this.noInlineConfig = void 0;\n\n /**\n * Parser definition.\n
* @type {DependentParser|null}\n */\n this.parser = null;\n\n
/**\n * Options for the parser.\n * @type {Object}\n */\n
this.parserOptions = {};\n\n /**\n * Plugin definitions.\n *
@type {Record<string, DependentPlugin>}\n */\n this.plugins = {};\n\
n /**\n * Processor ID.\n * @type {string|null}\n
*/\n this.processor = null;\n\n /**\n * The flag that reports
unused `eslint-disable` directive comments.\n * @type {boolean|undefined}\n
*/\n this.reportUnusedDisableDirectives = void 0;\n\n /**\n *
Rule settings.\n * @type {Record<string, [SeverityConf, ...any[]]>}\n
*/\n this.rules = {};\n\n /**\n * Shared settings.\n
* @type {Object}\n */\n this.settings = {};\n }\n\n /**\n
* Convert this config to the compatible object as a config file content.\n *
@returns {ConfigData} The converted object.\n */\n
toCompatibleObjectAsConfigFileContent() {\n const {\n /* eslint-
disable no-unused-vars */\n configNameOfNoInlineConfig: _ignore1,\n
processor: _ignore2,\n /* eslint-enable no-unused-vars */\n
ignores,\n ...config\n } = this;\n\n config.parser =
config.parser && config.parser.filePath;\n config.plugins =
Object.keys(config.plugins).filter(Boolean).reverse();\n
config.ignorePatterns = ignores ? ignores.patterns : [];\n\n // Strip the
default patterns from `ignorePatterns`.\n if
(startsWith(config.ignorePatterns, IgnorePattern.DefaultPatterns)) {\n
config.ignorePatterns =\n
config.ignorePatterns.slice(IgnorePattern.DefaultPatterns.length);\n }\n\n
return config;\n }\n}\n\nexport { ExtractedConfig };\n","/**\n * @fileoverview
`ConfigArray` class.\n *\n * `ConfigArray` class expresses the full of a
configuration. It has the entry\n * config file, base config files that were
extended, loaded parsers, and loaded\n * plugins.\n *\n * `ConfigArray` class
provides three properties and two methods.\n *\n * - `pluginEnvironments`\n * -
`pluginProcessors`\n * - `pluginRules`\n * The `Map` objects that contain the
members of all plugins that this\n * config array contains. Those map objects
don't have mutation methods.\n * Those keys are the member ID such as
`pluginId/memberName`.\n * - `isRoot()`\n * If `true` then this configuration
has `root:true` property.\n * - `extractConfig(filePath)`\n * Extract the
final configuration for a given file. This means merging\n * every config
array element which that `criteria` property matched. The\n * `filePath`
argument must be an absolute path.\n *\n * `ConfigArrayFactory` provides the
loading logic of config files.\n *\n * @author Toru Nagashima
<https://github.com/mysticatea>\n */\n\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport { ExtractedConfig } from \"./extracted-config.js\";\nimport
{ IgnorePattern } from \"./ignore-pattern.js\";\n\
n//------------------------------------------------------------------------------\
n// Helpers\
n//------------------------------------------------------------------------------\
n\n// Define types for VSCode IntelliSense.\n/** @typedef
{import(\"../../shared/types\").Environment} Environment */\n/** @typedef
{import(\"../../shared/types\").GlobalConf} GlobalConf */\n/** @typedef
{import(\"../../shared/types\").RuleConf} RuleConf */\n/** @typedef
{import(\"../../shared/types\").Rule} Rule */\n/** @typedef
{import(\"../../shared/types\").Plugin} Plugin */\n/** @typedef
{import(\"../../shared/types\").Processor} Processor */\n/** @typedef
{import(\"./config-dependency\").DependentParser} DependentParser */\n/** @typedef
{import(\"./config-dependency\").DependentPlugin} DependentPlugin */\n/** @typedef
{import(\"./override-tester\")[\"OverrideTester\"]} OverrideTester */\n\n/**\n *
@typedef {Object} ConfigArrayElement\n * @property {string} name The name of this
config element.\n * @property {string} filePath The path to the source file of this
config element.\n * @property {InstanceType<OverrideTester>|null} criteria The
tester for the `files` and `excludedFiles` of this config element.\n * @property
{Record<string, boolean>|undefined} env The environment settings.\n * @property
{Record<string, GlobalConf>|undefined} globals The global variable settings.\n *
@property {IgnorePattern|undefined} ignorePattern The ignore patterns.\n *
@property {boolean|undefined} noInlineConfig The flag that disables directive
comments.\n * @property {DependentParser|undefined} parser The parser loader.\n *
@property {Object|undefined} parserOptions The parser options.\n * @property
{Record<string, DependentPlugin>|undefined} plugins The plugin loaders.\n *
@property {string|undefined} processor The processor name to refer plugin's
processor.\n * @property {boolean|undefined} reportUnusedDisableDirectives The flag
to report unused `eslint-disable` comments.\n * @property {boolean|undefined} root
The flag to express root.\n * @property {Record<string, RuleConf>|undefined} rules
The rule settings\n * @property {Object|undefined} settings The shared settings.\n
* @property {\"config\" | \"ignore\" | \"implicit-processor\"} type The element
type.\n */\n\n/**\n * @typedef {Object} ConfigArrayInternalSlots\n * @property
{Map<string, ExtractedConfig>} cache The cache to extract configs.\n * @property
{ReadonlyMap<string, Environment>|null} envMap The map from environment ID to
environment definition.\n * @property {ReadonlyMap<string, Processor>|null}
processorMap The map from processor ID to environment definition.\n * @property
{ReadonlyMap<string, Rule>|null} ruleMap The map from rule ID to rule definition.\n
*/\n\n/** @type {WeakMap<ConfigArray, ConfigArrayInternalSlots>} */\nconst
internalSlotsMap = new class extends WeakMap {\n get(key) {\n let value =
super.get(key);\n\n if (!value) {\n value = {\n
cache: new Map(),\n envMap: null,\n processorMap:
null,\n ruleMap: null\n };\n super.set(key,
value);\n }\n\n return value;\n }\n}();\n\n/**\n * Get the indices
which are matched to a given file.\n * @param {ConfigArrayElement[]} elements The
elements.\n * @param {string} filePath The path to a target file.\n * @returns
{number[]} The indices.\n */\nfunction getMatchedIndices(elements, filePath) {\n
const indices = [];\n\n for (let i = elements.length - 1; i >= 0; --i) {\n
const element = elements[i];\n\n if (!element.criteria || (filePath &&
element.criteria.test(filePath))) {\n indices.push(i);\n }\
n }\n\n return indices;\n}\n\n/**\n * Check if a value is a non-null object.\
n * @param {any} x The value to check.\n * @returns {boolean} `true` if the value
is a non-null object.\n */\nfunction isNonNullObject(x) {\n return typeof x
=== \"object\" && x !== null;\n}\n\n/**\n * Merge two objects.\n *\n * Assign every
property values of `y` to `x` if `x` doesn't have the property.\n * If `x`'s
property value is an object, it does recursive.\n * @param {Object} target The
destination to merge\n * @param {Object|undefined} source The source to merge.\n *
@returns {void}\n */\nfunction mergeWithoutOverwrite(target, source) {\n if (!
isNonNullObject(source)) {\n return;\n }\n\n for (const key of
Object.keys(source)) {\n if (key === \"__proto__\") {\n
continue;\n }\n\n if (isNonNullObject(target[key])) {\n
mergeWithoutOverwrite(target[key], source[key]);\n } else if (target[key]
=== void 0) {\n if (isNonNullObject(source[key])) {\n
target[key] = Array.isArray(source[key]) ? [] : {};\n
mergeWithoutOverwrite(target[key],
source[key]);\n } else if (source[key] !== void 0) {\n
target[key] = source[key];\n }\n }\n }\n}\n\n/**\n * The error
for plugin conflicts.\n */\nclass PluginConflictError extends Error {\n\n /**\n
* Initialize this error object.\n * @param {string} pluginId The plugin ID.\n
* @param {{filePath:string, importerName:string}[]} plugins The resolved plugins.\n
*/\n constructor(pluginId, plugins) {\n super(`Plugin \"${pluginId}\" was
conflicted between ${plugins.map(p => `\"${p.importerName}\"`).join(\"
and \")}.`);\n this.messageTemplate = \"plugin-conflict\";\n
this.messageData = { pluginId, plugins };\n }\n}\n\n/**\n * Merge plugins.\n *
`target`'s definition is prior to `source`'s.\n * @param {Record<string,
DependentPlugin>} target The destination to merge\n * @param {Record<string,
DependentPlugin>|undefined} source The source to merge.\n * @returns {void}\n */\
nfunction mergePlugins(target, source) {\n if (!isNonNullObject(source)) {\n
return;\n }\n\n for (const key of Object.keys(source)) {\n if (key ===
\"__proto__\") {\n continue;\n }\n const targetValue =
target[key];\n const sourceValue = source[key];\n\n // Adopt the
plugin which was found at first.\n if (targetValue === void 0) {\n
if (sourceValue.error) {\n throw sourceValue.error;\n }\n
target[key] = sourceValue;\n } else if (sourceValue.filePath !==
targetValue.filePath) {\n throw new PluginConflictError(key, [\n
{\n filePath: targetValue.filePath,\n
importerName: targetValue.importerName\n },\n {\n
filePath: sourceValue.filePath,\n importerName:
sourceValue.importerName\n }\n ]);\n }\n }\n}\
n\n/**\n * Merge rule configs.\n * `target`'s definition is prior to `source`'s.\n
* @param {Record<string, Array>} target The destination to merge\n * @param
{Record<string, RuleConf>|undefined} source The source to merge.\n * @returns
{void}\n */\nfunction mergeRuleConfigs(target, source) {\n if (!
isNonNullObject(source)) {\n return;\n }\n\n for (const key of
Object.keys(source)) {\n if (key === \"__proto__\") {\n
continue;\n }\n const targetDef = target[key];\n const
sourceDef = source[key];\n\n // Adopt the rule config which was found at
first.\n if (targetDef === void 0) {\n if
(Array.isArray(sourceDef)) {\n target[key] = [...sourceDef];\n
} else {\n target[key] = [sourceDef];\n }\n\n /*\n
* If the first found rule config is severity only and the current rule\n *
config has options, merge the severity and the options.\n */\n }
else if (\n targetDef.length === 1 &&\n
Array.isArray(sourceDef) &&\n sourceDef.length >= 2\n ) {\n
targetDef.push(...sourceDef.slice(1));\n }\n }\n}\n\n/**\n * Create the
extracted config.\n * @param {ConfigArray} instance The config elements.\n * @param
{number[]} indices The indices to use.\n * @returns {ExtractedConfig} The extracted
config.\n */\nfunction createConfig(instance, indices) {\n const config = new
ExtractedConfig();\n const ignorePatterns = [];\n\n // Merge elements.\n
for (const index of indices) {\n const element = instance[index];\n\n
// Adopt the parser which was found at first.\n if (!config.parser &&
element.parser) {\n if (element.parser.error) {\n throw
element.parser.error;\n }\n config.parser = element.parser;\n
}\n\n // Adopt the processor which was found at first.\n if (!
config.processor && element.processor) {\n config.processor =
element.processor;\n }\n\n // Adopt the noInlineConfig which was
found at first.\n if (config.noInlineConfig === void 0 &&
element.noInlineConfig !== void 0) {\n config.noInlineConfig =
element.noInlineConfig;\n config.configNameOfNoInlineConfig =
element.name;\n }\n\n // Adopt the reportUnusedDisableDirectives
which was found at first.\n if (config.reportUnusedDisableDirectives ===
void 0 && element.reportUnusedDisableDirectives !== void 0) {\n
config.reportUnusedDisableDirectives = element.reportUnusedDisableDirectives;\n
}\n\n // Collect ignorePatterns\n if (element.ignorePattern) {\n
ignorePatterns.push(element.ignorePattern);\n }\n\n // Merge others.\
n mergeWithoutOverwrite(config.env, element.env);\n
mergeWithoutOverwrite(config.globals, element.globals);\n
mergeWithoutOverwrite(config.parserOptions, element.parserOptions);\n
mergeWithoutOverwrite(config.settings, element.settings);\n
mergePlugins(config.plugins, element.plugins);\n
mergeRuleConfigs(config.rules, element.rules);\n }\n\n // Create the
predicate function for ignore patterns.\n if (ignorePatterns.length > 0) {\n
config.ignores = IgnorePattern.createIgnore(ignorePatterns.reverse());\n }\n\n
return config;\n}\n\n/**\n * Collect definitions.\n * @template T, U\n * @param
{string} pluginId The plugin ID for prefix.\n * @param {Record<string,T>} defs The
definitions to collect.\n * @param {Map<string, U>} map The map to output.\n *
@param {function(T): U} [normalize] The normalize function for each value.\n *
@returns {void}\n */\nfunction collect(pluginId, defs, map, normalize) {\n if
(defs) {\n const prefix = pluginId && `${pluginId}/`;\n\n for (const
[key, value] of Object.entries(defs)) {\n map.set(\n `$
{prefix}${key}`,\n normalize ? normalize(value) : value\n
);\n }\n }\n}\n\n/**\n * Normalize a rule definition.\n * @param
{Function|Rule} rule The rule definition to normalize.\n * @returns {Rule} The
normalized rule definition.\n */\nfunction normalizePluginRule(rule) {\n return
typeof rule === \"function\" ? { create: rule } : rule;\n}\n\n/**\n * Delete the
mutation methods from a given map.\n * @param {Map<any, any>} map The map object to
delete.\n * @returns {void}\n */\nfunction deleteMutationMethods(map) {\n
Object.defineProperties(map, {\n clear: { configurable: true, value: void
0 },\n delete: { configurable: true, value: void 0 },\n set:
{ configurable: true, value: void 0 }\n });\n}\n\n/**\n * Create `envMap`,
`processorMap`, `ruleMap` with the plugins in the config array.\n * @param
{ConfigArrayElement[]} elements The config elements.\n * @param
{ConfigArrayInternalSlots} slots The internal slots.\n * @returns {void}\n */\
nfunction initPluginMemberMaps(elements, slots) {\n const processed = new
Set();\n\n slots.envMap = new Map();\n slots.processorMap = new Map();\n
slots.ruleMap = new Map();\n\n for (const element of elements) {\n if (!
element.plugins) {\n continue;\n }\n\n for (const
[pluginId, value] of Object.entries(element.plugins)) {\n const plugin =
value.definition;\n\n if (!plugin || processed.has(pluginId)) {\n
continue;\n }\n processed.add(pluginId);\n\n
collect(pluginId, plugin.environments, slots.envMap);\n
collect(pluginId, plugin.processors, slots.processorMap);\n
collect(pluginId, plugin.rules, slots.ruleMap, normalizePluginRule);\n }\n
}\n\n deleteMutationMethods(slots.envMap);\n
deleteMutationMethods(slots.processorMap);\n
deleteMutationMethods(slots.ruleMap);\n}\n\n/**\n * Create `envMap`,
`processorMap`, `ruleMap` with the plugins in the config array.\n * @param
{ConfigArray} instance The config elements.\n * @returns {ConfigArrayInternalSlots}
The extracted config.\n */\nfunction ensurePluginMemberMaps(instance) {\n const
slots = internalSlotsMap.get(instance);\n\n if (!slots.ruleMap) {\n
initPluginMemberMaps(instance, slots);\n }\n\n return slots;\n}\n\
n//------------------------------------------------------------------------------\
n// Public Interface\
n//------------------------------------------------------------------------------\
n\n/**\n * The Config Array.\n *\n * `ConfigArray` instance contains all settings,
parsers, and plugins.\n * You need to call `ConfigArray#extractConfig(filePath)`
method in order to\n * extract, merge and get only the config data which is related
to an arbitrary\n * file.\n * @extends {Array<ConfigArrayElement>}\n */\nclass
ConfigArray extends Array {\n\n /**\n * Get the plugin environments.\n *
The returned map cannot be mutated.\n * @type {ReadonlyMap<string,
Environment>} The plugin environments.\n */\n get pluginEnvironments() {\n
return ensurePluginMemberMaps(this).envMap;\n }\n\n /**\n * Get the
plugin processors.\n * The returned map cannot be mutated.\n * @type
{ReadonlyMap<string, Processor>} The plugin processors.\n */\n get
pluginProcessors() {\n return ensurePluginMemberMaps(this).processorMap;\n
}\n\n /**\n * Get the plugin rules.\n * The returned map cannot be
mutated.\n * @returns {ReadonlyMap<string, Rule>} The plugin rules.\n */\n
get pluginRules() {\n return ensurePluginMemberMaps(this).ruleMap;\n }\n\
n /**\n * Check if this config has `root` flag.\n * @returns {boolean}
`true` if this config array is root.\n */\n isRoot() {\n for (let i =
this.length - 1; i >= 0; --i) {\n const root = this[i].root;\n\n
if (typeof
root === \"boolean\") {\n return root;\n }\n }\n
return false;\n }\n\n /**\n * Extract the config data which is related to
a given file.\n * @param {string} filePath The absolute path to the target
file.\n * @returns {ExtractedConfig} The extracted config data.\n */\n
extractConfig(filePath) {\n const { cache } = internalSlotsMap.get(this);\n
const indices = getMatchedIndices(this, filePath);\n const cacheKey =
indices.join(\",\");\n\n if (!cache.has(cacheKey)) {\n
cache.set(cacheKey, createConfig(this, indices));\n }\n\n return
cache.get(cacheKey);\n }\n\n /**\n * Check if a given path is an
additional lint target.\n * @param {string} filePath The absolute path to the
target file.\n * @returns {boolean} `true` if the file is an additional lint
target.\n */\n isAdditionalTargetPath(filePath) {\n for (const
{ criteria, type } of this) {\n if (\n type
=== \"config\" &&\n criteria &&\n !
criteria.endsWithWildcard &&\n criteria.test(filePath)\
n ) {\n return true;\n }\n }\n
return false;\n }\n}\n\n/**\n * Get the used extracted configs.\n * CLIEngine
will use this method to collect used deprecated rules.\n * @param {ConfigArray}
instance The config array object to get.\n * @returns {ExtractedConfig[]} The used
extracted configs.\n * @private\n */\nfunction getUsedExtractedConfigs(instance) {\
n const { cache } = internalSlotsMap.get(instance);\n\n return
Array.from(cache.values());\n}\n\n\nexport {\n ConfigArray,\n
getUsedExtractedConfigs\n};\n","/**\n * @fileoverview `ConfigDependency` class.\n
*\n * `ConfigDependency` class expresses a loaded parser or plugin.\n *\n * If the
parser or plugin was loaded successfully, it has `definition` property\n * and
`filePath` property. Otherwise, it has `error` property.\n *\n * When
`JSON.stringify()` converted a `ConfigDependency` object to a JSON, it\n * omits
`definition` property.\n *\n * `ConfigArrayFactory` creates `ConfigDependency`
objects when it loads parsers\n * or plugins.\n *\n * @author Toru Nagashima
<https://github.com/mysticatea>\n */\n\nimport util from \"util\";\n\n/**\n * The
class is to store parsers or plugins.\n * This class hides the loaded object from
`JSON.stringify()` and `console.log`.\n * @template T\n */\nclass ConfigDependency
{\n\n /**\n * Initialize this instance.\n * @param {Object} data The
dependency data.\n * @param {T} [data.definition] The dependency if the loading
succeeded.\n * @param {Error} [data.error] The error object if the loading
failed.\n * @param {string} [data.filePath] The actual path to the dependency
if the loading succeeded.\n * @param {string} data.id The ID of this
dependency.\n * @param {string} data.importerName The name of the config file
which loads this dependency.\n * @param {string} data.importerPath The path to
the config file which loads this dependency.\n */\n constructor({\n
definition = null,\n error = null,\n filePath = null,\n id,\n
importerName,\n importerPath\n }) {\n\n /**\n * The loaded
dependency if the loading succeeded.\n * @type {T|null}\n */\n
this.definition = definition;\n\n /**\n * The error object if the
loading failed.\n * @type {Error|null}\n */\n this.error =
error;\n\n /**\n * The loaded dependency if the loading succeeded.\n
* @type {string|null}\n */\n this.filePath = filePath;\n\n
/**\n * The ID of this dependency.\n * @type {string}\n */\
n this.id = id;\n\n /**\n * The name of the config file which
loads this dependency.\n * @type {string}\n */\n
this.importerName = importerName;\n\n /**\n * The path to the config
file which loads this dependency.\n * @type {string}\n */\n
this.importerPath = importerPath;\n }\n\n // eslint-disable-next-line
jsdoc/require-description\n /**\n * @returns {Object} a JSON compatible
object.\n */\n toJSON() {\n const obj = this[util.inspect.custom]();\
n\n // Display `error.message` (`Error#message` is unenumerable).\n
if (obj.error instanceof Error) {\n obj.error = { ...obj.error, message:
obj.error.message };\n }\n\n return obj;\n }\n\n // eslint-
disable-next-line jsdoc/require-description\n /**\n * @returns {Object} an
object to display by `console.log()`.\n */\n [util.inspect.custom]() {\n
const {\n definition: _ignore, // eslint-disable-line no-unused-vars\n
...obj\n } = this;\n\n return obj;\n }\n}\n\n/** @typedef
{ConfigDependency<import(\"../../shared/types\").Parser>} DependentParser */\n/**
@typedef {ConfigDependency<import(\"../../shared/types\").Plugin>} DependentPlugin
*/\n\nexport { ConfigDependency };\n","/**\n * @fileoverview `OverrideTester`
class.\n *\n * `OverrideTester` class handles `files` property and `excludedFiles`
property\n * of `overrides` config.\n *\n * It provides one method.\n *\n * -
`test(filePath)`\n * Test if a file path matches the pair of `files` property
and\n * `excludedFiles` property. The `filePath` argument must be an absolute\
n * path.\n *\n * `ConfigArrayFactory` creates `OverrideTester` objects when
it processes\n * `overrides` properties.\n *\n * @author Toru Nagashima
<https://github.com/mysticatea>\n */\n\nimport assert from \"assert\";\nimport path
from \"path\";\nimport util from \"util\";\nimport minimatch from \"minimatch\";\n\
nconst { Minimatch } = minimatch;\n\nconst minimatchOpts = { dot: true, matchBase:
true };\n\n/**\n * @typedef {Object} Pattern\n * @property
{InstanceType<Minimatch>[] | null} includes The positive matchers.\n * @property
{InstanceType<Minimatch>[] | null} excludes The negative matchers.\n */\n\n/**\n *
Normalize a given pattern to an array.\n * @param {string|string[]|undefined}
patterns A glob pattern or an array of glob patterns.\n * @returns {string[]|null}
Normalized patterns.\n * @private\n */\nfunction normalizePatterns(patterns) {\n
if (Array.isArray(patterns)) {\n return patterns.filter(Boolean);\n }\n
if (typeof patterns === \"string\" && patterns) {\n return [patterns];\
n }\n return [];\n}\n\n/**\n * Create the matchers of given patterns.\n *
@param {string[]} patterns The patterns.\n * @returns {InstanceType<Minimatch>[] |
null} The matchers.\n */\nfunction toMatcher(patterns) {\n if (patterns.length
=== 0) {\n return null;\n }\n return patterns.map(pattern => {\n
if (/^\\.[/\\\\]/u.test(pattern)) {\n return new Minimatch(\n
pattern.slice(2),\n\n // `./*.js` should not match with
`subdir/foo.js`\n { ...minimatchOpts, matchBase: false }\n
);\n }\n return new Minimatch(pattern, minimatchOpts);\n });\n}\n\
n/**\n * Convert a given matcher to string.\n * @param {Pattern} matchers The
matchers.\n * @returns {string} The string expression of the matcher.\n */\
nfunction patternToJson({ includes, excludes }) {\n return {\n includes:
includes && includes.map(m => m.pattern),\n excludes: excludes &&
excludes.map(m => m.pattern)\n };\n}\n\n/**\n * The class to test given paths
are matched by the patterns.\n */\nclass OverrideTester {\n\n /**\n * Create
a tester with given criteria.\n * If there are no criteria, returns `null`.\n
* @param {string|string[]} files The glob patterns for included files.\n *
@param {string|string[]} excludedFiles The glob patterns for excluded files.\n
* @param {string} basePath The path to the base directory to test paths.\n *
@returns {OverrideTester|null} The created instance or `null`.\n */\n static
create(files, excludedFiles, basePath) {\n const includePatterns =
normalizePatterns(files);\n const excludePatterns =
normalizePatterns(excludedFiles);\n let endsWithWildcard = false;\n\n
if (includePatterns.length === 0) {\n return null;\n }\n\n
// Rejects absolute paths or relative paths to parents.\n for (const pattern
of includePatterns) {\n if (path.isAbsolute(pattern) ||
pattern.includes(\"..\")) {\n throw new Error(`Invalid override
pattern (expected relative path not containing '..'): ${pattern}`);\n }\
n if (pattern.endsWith(\"*\")) {\n endsWithWildcard =
true;\n }\n }\n for (const pattern of excludePatterns) {\n
if (path.isAbsolute(pattern) || pattern.includes(\"..\")) {\n throw
new Error(`Invalid override pattern (expected relative path not containing '..'): $
{pattern}`);\n }\n }\n\n const includes =
toMatcher(includePatterns);\n const excludes = toMatcher(excludePatterns);\
n\n return new OverrideTester(\n [{ includes, excludes }],\n
basePath,\n endsWithWildcard\n );\n }\n\n /**\n *
Combine two testers by logical and.\n * If either of the testers was `null`,
returns the other tester.\n * The `basePath` property of the two must be the
same value.\n * @param {OverrideTester|null} a A tester.\n * @param
{OverrideTester|null} b Another tester.\n * @returns {OverrideTester|null}
Combined tester.\n */\n static and(a, b) {\n if (!b) {\n
return a && new OverrideTester(\n a.patterns,\n
a.basePath,\n
a.endsWithWildcard\n );\n }\n if (!a) {\n
return new OverrideTester(\n b.patterns,\n
b.basePath,\n b.endsWithWildcard\n );\n }\n\n
assert.strictEqual(a.basePath, b.basePath);\n return new OverrideTester(\n
a.patterns.concat(b.patterns),\n a.basePath,\n
a.endsWithWildcard || b.endsWithWildcard\n );\n }\n\n /**\n *
Initialize this instance.\n * @param {Pattern[]} patterns The matchers.\n *
@param {string} basePath The base path.\n * @param {boolean} endsWithWildcard
If `true` then a pattern ends with `*`.\n */\n constructor(patterns,
basePath, endsWithWildcard = false) {\n\n /** @type {Pattern[]} */\n
this.patterns = patterns;\n\n /** @type {string} */\n this.basePath =
basePath;\n\n /** @type {boolean} */\n this.endsWithWildcard =
endsWithWildcard;\n }\n\n /**\n * Test if a given path is matched or
not.\n * @param {string} filePath The absolute path to the target file.\n *
@returns {boolean} `true` if the path was matched.\n */\n test(filePath) {\n
if (typeof filePath !== \"string\" || !path.isAbsolute(filePath)) {\n
throw new Error(`'filePath' should be an absolute path, but got ${filePath}.`);\n
}\n const relativePath = path.relative(this.basePath, filePath);\n\n
return this.patterns.every(({ includes, excludes }) => (\n (!includes ||
includes.some(m => m.match(relativePath))) &&\n (!excludes || !
excludes.some(m => m.match(relativePath)))\n ));\n }\n\n // eslint-
disable-next-line jsdoc/require-description\n /**\n * @returns {Object} a
JSON compatible object.\n */\n toJSON() {\n if (this.patterns.length
=== 1) {\n return {\
n ...patternToJson(this.patterns[0]),\n basePath:
this.basePath\n };\n }\n return {\n AND:
this.patterns.map(patternToJson),\n basePath: this.basePath\n };\
n }\n\n // eslint-disable-next-line jsdoc/require-description\n /**\n
* @returns {Object} an object to display by `console.log()`.\n */\n
[util.inspect.custom]() {\n return this.toJSON();\n }\n}\n\nexport
{ OverrideTester };\n","/**\n * @fileoverview `ConfigArray` class.\n * @author Toru
Nagashima <https://github.com/mysticatea>\n */\n\nimport { ConfigArray,
getUsedExtractedConfigs } from \"./config-array.js\";\nimport { ConfigDependency }
from \"./config-dependency.js\";\nimport { ExtractedConfig } from \"./extracted-
config.js\";\nimport { IgnorePattern } from \"./ignore-pattern.js\";\nimport
{ OverrideTester } from \"./override-tester.js\";\n\nexport {\n ConfigArray,\n
ConfigDependency,\n ExtractedConfig,\n IgnorePattern,\n OverrideTester,\n
getUsedExtractedConfigs\n};\n","/**\n * @fileoverview Config file operations. This
file must be usable in the browser,\n * so no Node-specific code can be here.\n *
@author Nicholas C. Zakas\n */\n\
n//------------------------------------------------------------------------------\
n// Private\
n//------------------------------------------------------------------------------\
n\nconst RULE_SEVERITY_STRINGS = [\"off\", \"warn\", \"error\"],\n RULE_SEVERITY
= RULE_SEVERITY_STRINGS.reduce((map, value, index) => {\n map[value] =
index;\n return map;\n }, {}),\n VALID_SEVERITIES = [0, 1, 2, \"off\",
\"warn\", \"error\"];\n\
n//------------------------------------------------------------------------------\
n// Public Interface\
n//------------------------------------------------------------------------------\
n\n/**\n * Normalizes the severity value of a rule's configuration to a number\n *
@param {(number|string|[number, ...*]|[string, ...*])} ruleConfig A rule's
configuration value, generally\n * received from the user. A valid config value is
either 0, 1, 2, the string \"off\" (treated the same as 0),\n * the string \"warn\"
(treated the same as 1), the string \"error\" (treated the same as 2), or an array\
n * whose first element is one of the above values. Strings are matched case-
insensitively.\n * @returns {(0|1|2)} The numeric severity value if the config
value was valid, otherwise 0.\n */\nfunction getRuleSeverity(ruleConfig) {\n
const severityValue = Array.isArray(ruleConfig) ? ruleConfig[0] : ruleConfig;\n\n
if (severityValue === 0 || severityValue === 1 || severityValue === 2) {\n
return severityValue;\n }\n\n if (typeof severityValue === \"string\") {\n
return RULE_SEVERITY[severityValue.toLowerCase()] || 0;\n }\n\n return 0;\n}\
n\n/**\n * Converts old-style severity settings (0, 1, 2) into new-style\n *
severity settings (off, warn, error) for all rules. Assumption is that severity\n *
values have already been validated as correct.\n * @param {Object} config The
config object to normalize.\n * @returns {void}\n */\nfunction
normalizeToStrings(config) {\n\n if (config.rules) {\n
Object.keys(config.rules).forEach(ruleId => {\n const ruleConfig =
config.rules[ruleId];\n\n if (typeof ruleConfig === \"number\") {\n
config.rules[ruleId] = RULE_SEVERITY_STRINGS[ruleConfig] ||
RULE_SEVERITY_STRINGS[0];\n } else if (Array.isArray(ruleConfig) &&
typeof ruleConfig[0] === \"number\") {\n ruleConfig[0] =
RULE_SEVERITY_STRINGS[ruleConfig[0]] || RULE_SEVERITY_STRINGS[0];\n }\n
});\n }\n}\n\n/**\n * Determines if the severity for the given rule
configuration represents an error.\n * @param {int|string|Array} ruleConfig The
configuration for an individual rule.\n * @returns {boolean} True if the rule
represents an error, false if not.\n */\nfunction isErrorSeverity(ruleConfig) {\n
return getRuleSeverity(ruleConfig) === 2;\n}\n\n/**\n * Checks whether a given
config has valid severity or not.\n * @param {number|string|Array} ruleConfig The
configuration for an individual rule.\n * @returns {boolean} `true` if the
configuration has valid severity.\n */\nfunction isValidSeverity(ruleConfig) {\n
let severity = Array.isArray(ruleConfig) ? ruleConfig[0] : ruleConfig;\n\n if
(typeof severity === \"string\") {\n severity = severity.toLowerCase();\n
}\n return VALID_SEVERITIES.indexOf(severity) !== -1;\n}\n\n/**\n * Checks
whether every rule of a given config has valid severity or not.\n * @param {Object}
config The configuration for rules.\n * @returns {boolean} `true` if the
configuration has valid severity.\n */\nfunction isEverySeverityValid(config) {\n
return Object.keys(config).every(ruleId => isValidSeverity(config[ruleId]));\n}\n\
n/**\n * Normalizes a value for a global in a config\n * @param {(boolean|string|
null)} configuredValue The value given for a global in configuration or in\n * a
global directive comment\n * @returns {(\"readable\"|\"writeable\"|\"off\")} The
value normalized as a string\n * @throws Error if global value is invalid\n */\
nfunction normalizeConfigGlobal(configuredValue) {\n switch (configuredValue) {\
n case \"off\":\n return \"off\";\n\n case true:\n
case \"true\":\n case \"writeable\":\n case \"writable\":\n
return \"writable\";\n\n case null:\n case false:\n
case \"false\":\n case \"readable\":\n case \"readonly\":\n
return \"readonly\";\n\n default:\n throw new Error(`'$
{configuredValue}' is not a valid configuration for a global (use 'readonly',
'writable', or 'off')`);\n }\n}\n\nexport {\n getRuleSeverity,\n
normalizeToStrings,\n isErrorSeverity,\n isValidSeverity,\n
isEverySeverityValid,\n normalizeConfigGlobal\n};\n","/**\n * @fileoverview
Provide the function that emits deprecation warnings.\n * @author Toru Nagashima
<http://github.com/mysticatea>\n */\n\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport path from \"path\";\n\
n//------------------------------------------------------------------------------\
n// Private\
n//------------------------------------------------------------------------------\
n\n// Defitions for deprecation warnings.\nconst deprecationWarningMessages = {\n
ESLINT_LEGACY_ECMAFEATURES:\n \"The 'ecmaFeatures' config file property is
deprecated and has no effect.\",\n ESLINT_PERSONAL_CONFIG_LOAD:\
n \"'~/.eslintrc.*' config files have been deprecated. \" +\
n \"Please use a config file per project or the '--config' option.\",\n
ESLINT_PERSONAL_CONFIG_SUPPRESS:\n \"'~/.eslintrc.*' config files have been
deprecated. \" +\n \"Please remove it or add 'root:true' to the config files
in your \" +\n \"projects in order to avoid loading '~/.eslintrc.*'
accidentally.\"\n};\n\nconst sourceFileErrorCache = new Set();\n\n/**\n * Emits a
deprecation warning containing a given filepath. A new deprecation warning is
emitted\n * for each unique file path, but repeated invocations with the same file
path have no effect.\n * No warnings are emitted if the `--no-deprecation` or `--
no-warnings` Node runtime flags are active.\n * @param {string} source The name of
the configuration source to report the warning for.\n * @param {string} errorCode
The warning message to show.\n * @returns {void}\n */\nfunction
emitDeprecationWarning(source, errorCode) {\n const cacheKey =
JSON.stringify({ source, errorCode });\n\n if
(sourceFileErrorCache.has(cacheKey)) {\n return;\n }\n
sourceFileErrorCache.add(cacheKey);\n\n const rel = path.relative(process.cwd(),
source);\n const message = deprecationWarningMessages[errorCode];\n\n
process.emitWarning(\n `${message} (found in \"${rel}\")`,\
n \"DeprecationWarning\",\n errorCode\n );\n}\n\
n//------------------------------------------------------------------------------\
n// Public Interface\
n//------------------------------------------------------------------------------\
n\nexport {\n emitDeprecationWarning\n};\n","/**\n * @fileoverview The instance
of Ajv validator.\n * @author Evgeny Poberezkin\n */\n\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport Ajv from \"ajv\";\n\
n//-----------------------------------------------------------------------------\
n// Helpers\
n//-----------------------------------------------------------------------------\n\
n/*\n * Copied from ajv/lib/refs/json-schema-draft-04.json\n * The MIT License
(MIT)\n * Copyright (c) 2015-2017 Evgeny Poberezkin\n */\nconst metaSchema = {\n
id: \"http://json-schema.org/draft-04/schema#\",\n $schema: \"http://json-
schema.org/draft-04/schema#\",\n description: \"Core schema meta-schema\",\n
definitions: {\n schemaArray: {\n type: \"array\",\n
minItems: 1,\n items: { $ref: \"#\" }\n },\n
positiveInteger: {\n type: \"integer\",\n minimum: 0\n
},\n positiveIntegerDefault0: {\n allOf: [{ $ref:
\"#/definitions/positiveInteger\" }, { default: 0 }]\n },\n
simpleTypes: {\n enum:
[\"array\", \"boolean\", \"integer\", \"null\", \"number\", \"object\", \"string\"]
\n },\n stringArray: {\n type: \"array\",\n
items: { type: \"string\" },\n minItems: 1,\n uniqueItems:
true\n }\n },\n type: \"object\",\n properties: {\n id: {\n
type: \"string\"\n },\n $schema: {\n type: \"string\"\n
},\n title: {\n type: \"string\"\n },\n
description: {\n type: \"string\"\n },\n default: { },\n
multipleOf: {\n type: \"number\",\n minimum: 0,\n
exclusiveMinimum: true\n },\n maximum: {\n
type: \"number\"\n },\n exclusiveMaximum: {\n
type: \"boolean\",\n default: false\n },\n minimum: {\n
type: \"number\"\n },\n exclusiveMinimum: {\n
type: \"boolean\",\n default: false\n },\n maxLength:
{ $ref: \"#/definitions/positiveInteger\" },\n minLength: { $ref:
\"#/definitions/positiveIntegerDefault0\" },\n pattern: {\n type:
\"string\",\n format: \"regex\"\n },\n additionalItems: {\
n anyOf: [\n { type: \"boolean\" },\n
{ $ref: \"#\" }\n ],\n default: { }\n },\n
items: {\n anyOf: [\n { $ref: \"#\" },\n {
$ref: \"#/definitions/schemaArray\" }\n ],\n default: { }\n
},\n maxItems: { $ref: \"#/definitions/positiveInteger\" },\n
minItems: { $ref: \"#/definitions/positiveIntegerDefault0\" },\n
uniqueItems: {\n type: \"boolean\",\n default: false\n
},\n maxProperties: { $ref: \"#/definitions/positiveInteger\" },\n
minProperties: { $ref: \"#/definitions/positiveIntegerDefault0\" },\n
required: { $ref: \"#/definitions/stringArray\" },\n additionalProperties:
{\n anyOf: [\n { type: \"boolean\" },\n
{ $ref: \"#\" }\n ],\n default: { }\n },\n
definitions: {\n type: \"object\",\n additionalProperties:
{ $ref: \"#\" },\n default: { }\n },\n properties: {\n
type: \"object\",\n additionalProperties: { $ref: \"#\" },\n
default: { }\n },\n patternProperties: {\n
type: \"object\",\n additionalProperties: { $ref: \"#\" },\n
default: { }\n },\n dependencies: {\n type: \"object\",\n
additionalProperties: {\n anyOf: [\n
{ $ref: \"#\" },\n { $ref: \"#/definitions/stringArray\" }\n
]\n }\n },\n enum: {\n type: \"array\",\n
minItems: 1,\n uniqueItems: true\n },\n type: {\n
anyOf: [\n { $ref: \"#/definitions/simpleTypes\" },\n
{\n type: \"array\",\n items: { $ref:
\"#/definitions/simpleTypes\" },\n minItems: 1,\n
uniqueItems: true\n }\n ]\n },\n format:
{ type: \"string\" },\n allOf: { $ref: \"#/definitions/schemaArray\" },\n
anyOf: { $ref: \"#/definitions/schemaArray\" },\n oneOf: { $ref:
\"#/definitions/schemaArray\" },\n not: { $ref: \"#\" }\n },\n
dependencies: {\n exclusiveMaximum: [\"maximum\"],\n
exclusiveMinimum: [\"minimum\"]\n },\n default: { }\n};\n\
n//------------------------------------------------------------------------------\
n// Public Interface\
n//------------------------------------------------------------------------------\
n\nexport default (additionalOptions = {}) => {\n const ajv = new Ajv({\n
meta: false,\n useDefaults: true,\n validateSchema: false,\n
missingRefs: \"ignore\",\n verbose: true,\n schemaId: \"auto\",\n
...additionalOptions\n });\n\n ajv.addMetaSchema(metaSchema);\n // eslint-
disable-next-line no-underscore-dangle\n ajv._opts.defaultMeta = metaSchema.id;\
n\n return ajv;\n};\n","/**\n * @fileoverview Defines a schema for configs.\n *
@author Sylvan Mably\n */\n\nconst baseConfigProperties = {\n $schema:
{ type: \"string\" },\n env: { type: \"object\" },\n extends: { $ref:
\"#/definitions/stringOrStrings\" },\n globals: { type: \"object\" },\n
overrides: {\n type: \"array\",\n items: { $ref:
\"#/definitions/overrideConfig\" },\n additionalItems: false\n },\n
parser: { type: [\"string\", \"null\"] },\n parserOptions:
{ type: \"object\" },\n plugins: { type: \"array\" },\n processor:
{ type: \"string\" },\n rules: { type: \"object\" },\n settings:
{ type: \"object\" },\n noInlineConfig: { type: \"boolean\" },\n
reportUnusedDisableDirectives: { type: \"boolean\" },\n\n ecmaFeatures:
{ type: \"object\" } // deprecated; logs a warning when used\n};\n\nconst
configSchema = {\n definitions: {\n stringOrStrings: {\n
oneOf: [\n { type: \"string\" },\n {\n
type: \"array\",\n items: { type: \"string\" },\n
additionalItems: false\n }\n ]\n },\n
stringOrStringsRequired: {\n oneOf: [\n
{ type: \"string\" },\n {\n type: \"array\",\n
items: { type: \"string\" },\n additionalItems: false,\n
minItems: 1\n }\n ]\n },\n\n // Config at
top-level.\n objectConfig: {\n type: \"object\",\n
properties: {\n root: { type: \"boolean\" },\n
ignorePatterns: { $ref: \"#/definitions/stringOrStrings\" },\
n ...baseConfigProperties\n },\n
additionalProperties: false\n },\n\n // Config in `overrides`.\n
overrideConfig: {\n type: \"object\",\n properties: {\n
excludedFiles: { $ref: \"#/definitions/stringOrStrings\" },\n files:
{ $ref: \"#/definitions/stringOrStringsRequired\" },\
n ...baseConfigProperties\n },\n required:
[\"files\"],\n additionalProperties: false\n }\n },\n\n
$ref: \"#/definitions/objectConfig\"\n};\n\nexport default configSchema;\n","/**\n
* @fileoverview Defines environment settings and globals.\n * @author Elan Shanker\
n */\n\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport globals from \"globals\";\n\
n//------------------------------------------------------------------------------\
n// Helpers\
n//------------------------------------------------------------------------------\
n\n/**\n * Get the object that has difference.\n * @param {Record<string,boolean>}
current The newer object.\n * @param {Record<string,boolean>} prev The older
object.\n * @returns {Record<string,boolean>} The difference object.\n */\nfunction
getDiff(current, prev) {\n const retv = {};\n\n for (const [key, value] of
Object.entries(current)) {\n if (!Object.hasOwnProperty.call(prev, key)) {\n
retv[key] = value;\n }\n }\n\n return retv;\n}\n\nconst newGlobals2015
= getDiff(globals.es2015, globals.es5); // 19 variables such as Promise, Map, ...\
nconst newGlobals2017 = {\n Atomics: false,\n SharedArrayBuffer: false\n};\
nconst newGlobals2020 = {\n BigInt: false,\n BigInt64Array: false,\n
BigUint64Array: false,\n globalThis: false\n};\n\nconst newGlobals2021 = {\n
AggregateError: false,\n FinalizationRegistry: false,\n WeakRef: false\n};\n\
n//------------------------------------------------------------------------------\
n// Public Interface\
n//------------------------------------------------------------------------------\
n\n/**
@type {Map<string, import(\"../lib/shared/types\").Environment>} */\nexport
default new Map(Object.entries({\n\n // Language\n builtin: {\n
globals: globals.es5\n },\n es6: {\n globals: newGlobals2015,\n
parserOptions: {\n ecmaVersion: 6\n }\n },\n es2015: {\n
globals: newGlobals2015,\n parserOptions: {\n ecmaVersion: 6\n
}\n },\n es2016: {\n globals: newGlobals2015,\n parserOptions:
{\n ecmaVersion: 7\n }\n },\n es2017: {\n globals: {
...newGlobals2015, ...newGlobals2017 },\n parserOptions: {\n
ecmaVersion: 8\n }\n },\n es2018: {\n globals:
{ ...newGlobals2015, ...newGlobals2017 },\n parserOptions: {\n
ecmaVersion: 9\n }\n },\n es2019: {\n globals:
{ ...newGlobals2015, ...newGlobals2017 },\n parserOptions: {\n
ecmaVersion: 10\n }\n },\n es2020: {\n globals:
{ ...newGlobals2015, ...newGlobals2017, ...newGlobals2020 },\n
parserOptions: {\n ecmaVersion: 11\n }\n },\n es2021: {\n
globals:
{ ...newGlobals2015, ...newGlobals2017, ...newGlobals2020, ...newGlobals2021 },\n
parserOptions: {\n ecmaVersion: 12\n }\n },\n es2022: {\n
globals:
{ ...newGlobals2015, ...newGlobals2017, ...newGlobals2020, ...newGlobals2021 },\n
parserOptions: {\n ecmaVersion: 13\n }\n },\n\n //
Platforms\n browser: {\n globals: globals.browser\n },\n node: {\n
globals: globals.node,\n parserOptions: {\n ecmaFeatures: {\n
globalReturn: true\n }\n }\n },\n \"shared-node-browser\":
{\n globals: globals[\"shared-node-browser\"]\n },\n worker: {\n
globals: globals.worker\n },\n serviceworker: {\n globals:
globals.serviceworker\n },\n\n // Frameworks\n commonjs: {\n
globals: globals.commonjs,\n parserOptions: {\n ecmaFeatures: {\n
globalReturn: true\n }\n }\n },\n amd: {\n globals:
globals.amd\n },\n mocha: {\n globals: globals.mocha\n },\n
jasmine: {\n globals: globals.jasmine\n },\n jest: {\n globals:
globals.jest\n },\n phantomjs: {\n globals: globals.phantomjs\n },\
n jquery: {\n globals: globals.jquery\n },\n qunit: {\n
globals: globals.qunit\n },\n prototypejs: {\n globals:
globals.prototypejs\n },\n shelljs: {\n globals: globals.shelljs\
n },\n meteor: {\n globals: globals.meteor\n },\n mongo: {\n
globals: globals.mongo\n },\n protractor: {\n globals:
globals.protractor\n },\n applescript: {\n globals:
globals.applescript\n },\n nashorn: {\n globals: globals.nashorn\
n },\n atomtest: {\n globals: globals.atomtest\n },\n embertest:
{\n globals: globals.embertest\n },\n webextensions: {\n
globals: globals.webextensions\n },\n greasemonkey: {\n globals:
globals.greasemonkey\n }\n}));\n","/**\n * @fileoverview Validates configs.\n *
@author Brandon Mills\n */\n\n/* eslint class-methods-use-this: \"off\" */\n\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport util from \"util\";\nimport * as ConfigOps from \"./config-ops.js\";\
nimport { emitDeprecationWarning } from \"./deprecation-warnings.js\";\nimport
ajvOrig from \"./ajv.js\";\nimport configSchema from \"../../conf/config-
schema.js\";\nimport BuiltInEnvironments from \"../../conf/environments.js\";\n\
nconst ajv = ajvOrig();\n\nconst ruleValidators = new WeakMap();\nconst noop =
Function.prototype;\n\
n//------------------------------------------------------------------------------\
n// Private\
n//------------------------------------------------------------------------------\
nlet validateSchema;\nconst severityMap = {\n error: 2,\n warn: 1,\n off:
0\n};\n\nconst validated = new WeakSet();\n\
n//-----------------------------------------------------------------------------\
n// Exports\
n//-----------------------------------------------------------------------------\n\
nexport default class ConfigValidator {\n constructor({ builtInRules = new Map()
} = {}) {\n this.builtInRules = builtInRules;\n }\n\n /**\n * Gets
a complete options schema for a rule.\n * @param {{create: Function, schema:
(Array|null)}} rule A new-style rule object\n * @returns {Object} JSON Schema
for the rule's options.\n */\n getRuleOptionsSchema(rule) {\n if (!
rule) {\n return null;\n }\n\n const schema = rule.schema
|| rule.meta && rule.meta.schema;\n\n // Given a tuple of schemas, insert
warning level at the beginning\n if (Array.isArray(schema)) {\n
if (schema.length) {\n return {\n
type: \"array\",\n items: schema,\n minItems:
0,\n maxItems: schema.length\n };\n }\
n return {\n type: \"array\",\n minItems:
0,\n maxItems: 0\n };\n\n }\n\n // Given a
full schema, leave it alone\n return schema || null;\n }\n\n /**\n
* Validates a rule's severity and returns the severity value. Throws an error if
the severity is invalid.\n * @param {options} options The given options for the
rule.\n * @returns {number|string} The rule's severity value\n */\n
validateRuleSeverity(options) {\n const severity = Array.isArray(options) ?
options[0] : options;\n const normSeverity = typeof severity
=== \"string\" ? severityMap[severity.toLowerCase()] : severity;\n\n if
(normSeverity === 0 || normSeverity === 1 || normSeverity === 2) {\n
return normSeverity;\n }\n\n throw new Error(`\\tSeverity should be
one of the following: 0 = off, 1 = warn, 2 = error (you passed '$
{util.inspect(severity).replace(/'/gu, \"\\\"\").replace(/\\n/gu, \"\")}').\\n`);\
n\n }\n\n /**\n * Validates the non-severity options passed to a rule,
based on its schema.\n * @param {{create: Function}} rule The rule to validate\
n * @param {Array} localOptions The options for the rule, excluding severity\n
* @returns {void}\n */\n validateRuleSchema(rule, localOptions) {\n
if (!ruleValidators.has(rule)) {\n const schema =
this.getRuleOptionsSchema(rule);\n\n if (schema) {\n
ruleValidators.set(rule, ajv.compile(schema));\n }\n }\n\n
const validateRule = ruleValidators.get(rule);\n\n if (validateRule) {\n
validateRule(localOptions);\n if (validateRule.errors) {\n
throw new Error(validateRule.errors.map(\n error => `\\tValue $
{JSON.stringify(error.data)} ${error.message}.\\n`\n ).join(\"\"));\
n }\n }\n }\n\n /**\n * Validates a rule's options
against its schema.\n * @param {{create: Function}|null} rule The rule that the
config is being validated for\n * @param {string} ruleId The rule's unique
name.\n * @param {Array|number} options The given options for the rule.\n *
@param {string|null} source The name of the configuration source to report in any
errors. If null or undefined,\n * no source is prepended to the message.\n
* @returns {void}\n */\n validateRuleOptions(rule, ruleId, options, source =
null) {\n try {\n const severity =
this.validateRuleSeverity(options);\n\n if (severity !== 0) {\n
this.validateRuleSchema(rule, Array.isArray(options) ? options.slice(1) : []);\n
}\n } catch (err) {\n const enhancedMessage = `Configuration for
rule \"${ruleId}\" is invalid:\\n${err.message}`;\n\n if (typeof source
=== \"string\") {\n throw new Error(`${source}:\\n\\t$
{enhancedMessage}`);\n } else {\n throw new
Error(enhancedMessage);\n }\n }\n }\n\n /**\n *
Validates an environment object\n * @param {Object} environment The environment
config object to validate.\n * @param {string} source The name of the
configuration source to report in any errors.\n * @param
{function(envId:string): Object} [getAdditionalEnv] A map from strings to loaded
environments.\n * @returns {void}\n */\n validateEnvironment(\n
environment,\n source,\n getAdditionalEnv = noop\n ) {\n\
n // not having an environment is ok\n if (!environment) {\n
return;\n }\n\n Object.keys(environment).forEach(id => {\n
const env = getAdditionalEnv(id) || BuiltInEnvironments.get(id) || null;\n\n
if (!env) {\n const message = `${source}:\\n\\tEnvironment key \"$
{id}\" is unknown\\n`;\n\n throw new Error(message);\n }\
n });\n }\n\n /**\n * Validates a rules config object\n *
@param {Object} rulesConfig The rules config object to validate.\n * @param
{string} source The name of the configuration source to report in any errors.\n
* @param {function(ruleId:string): Object} getAdditionalRule A map from strings to
loaded rules\n * @returns {void}\n */\n validateRules(\n
rulesConfig,\n source,\n getAdditionalRule = noop\n ) {\n
if (!rulesConfig) {\n return;\n }\n\n
Object.keys(rulesConfig).forEach(id => {\n const rule =
getAdditionalRule(id) || this.builtInRules.get(id) || null;\n\n
this.validateRuleOptions(rule, id, rulesConfig[id], source);\n });\n }\n\
n /**\n * Validates a `globals` section of a config file\n * @param
{Object} globalsConfig The `globals` section\n * @param {string|null} source
The name of the configuration source to report in the event of an error.\n *
@returns {void}\n */\n validateGlobals(globalsConfig, source = null) {\n
if (!globalsConfig) {\n return;\n }\n\n
Object.entries(globalsConfig)\n .forEach(([configuredGlobal,
configuredValue]) => {\n try {\n
ConfigOps.normalizeConfigGlobal(configuredValue);\n } catch (err) {\
n throw new Error(`ESLint configuration of global '$
{configuredGlobal}' in ${source} is invalid:\\n${err.message}`);\
n }\n });\n }\n\n /**\n * Validate `processor`
configuration.\n * @param {string|undefined} processorName The processor name.\
n * @param {string} source The name of config file.\n * @param
{function(id:string): Processor} getProcessor The getter of defined processors.\n
* @returns {void}\n */\n validateProcessor(processorName, source,
getProcessor) {\n if (processorName && !getProcessor(processorName)) {\n
throw new Error(`ESLint configuration of processor in '${source}' is invalid: '$
{processorName}' was not found.`);\n }\n }\n\n /**\n * Formats an
array of schema validation errors.\n * @param {Array} errors An array of error
messages to format.\n * @returns {string} Formatted error message\n */\n
formatErrors(errors) {\n return errors.map(error => {\n if
(error.keyword === \"additionalProperties\") {\n const
formattedPropertyPath = error.dataPath.length ? `${error.dataPath.slice(1)}.$
{error.params.additionalProperty}` : error.params.additionalProperty;\n\n
return `Unexpected top-level property \"${formattedPropertyPath}\"`;\
n }\n if (error.keyword === \"type\") {\n
const formattedField = error.dataPath.slice(1);\n const
formattedExpectedType = Array.isArray(error.schema) ? error.schema.join(\"/\") :
error.schema;\n const formattedValue = JSON.stringify(error.data);\
n\n return `Property \"${formattedField}\" is the wrong type
(expected ${formattedExpectedType} but got \\`${formattedValue}\\`)`;\
n }\n\n const field = error.dataPath[0] === \".\" ?
error.dataPath.slice(1) : error.dataPath;\n\n return `\"${field}\" $
{error.message}. Value: ${JSON.stringify(error.data)}`;\n }).map(message =>
`\\t- ${message}.\\n`).join(\"\");\n }\n\n /**\n * Validates the top
level properties of the config object.\n * @param {Object} config The config
object to validate.\n * @param {string} source The name of the configuration
source to report in any errors.\n * @returns {void}\n */\n
validateConfigSchema(config, source = null) {\n validateSchema =
validateSchema || ajv.compile(configSchema);\n\n if (!
validateSchema(config)) {\n throw new Error(`ESLint configuration in $
{source} is invalid:\\n${this.formatErrors(validateSchema.errors)}`);\n }\n\
n if (Object.hasOwnProperty.call(config, \"ecmaFeatures\")) {\n
emitDeprecationWarning(source, \"ESLINT_LEGACY_ECMAFEATURES\");\n }\n }\
n\n /**\n * Validates an entire config object.\n * @param {Object}
config The config object to validate.\n * @param {string} source The name of
the configuration source to report in any errors.\n * @param
{function(ruleId:string): Object} [getAdditionalRule] A map from strings to loaded
rules.\n * @param {function(envId:string): Object} [getAdditionalEnv] A map
from strings to loaded envs.\n * @returns {void}\n */\n validate(config,
source, getAdditionalRule, getAdditionalEnv) {\n
this.validateConfigSchema(config, source);\n
this.validateRules(config.rules, source, getAdditionalRule);\n
this.validateEnvironment(config.env, source, getAdditionalEnv);\n
this.validateGlobals(config.globals, source);\n\n for (const override of
config.overrides || []) {\n this.validateRules(override.rules, source,
getAdditionalRule);\n this.validateEnvironment(override.env, source,
getAdditionalEnv);\n this.validateGlobals(config.globals, source);\n
}\n }\n\n /**\n * Validate config array object.\n * @param
{ConfigArray} configArray The config array to validate.\n * @returns {void}\n
*/\n validateConfigArray(configArray) {\n const getPluginEnv =
Map.prototype.get.bind(configArray.pluginEnvironments);\n const
getPluginProcessor = Map.prototype.get.bind(configArray.pluginProcessors);\n
const getPluginRule = Map.prototype.get.bind(configArray.pluginRules);\n\
n // Validate.\n for (const element of configArray) {\n if
(validated.has(element)) {\n continue;\n }\n
validated.add(element);\n\n this.validateEnvironment(element.env,
element.name, getPluginEnv);\n this.validateGlobals(element.globals,
element.name);\n this.validateProcessor(element.processor, element.name,
getPluginProcessor);\n this.validateRules(element.rules, element.name,
getPluginRule);\n }\n }\n\n}\n","/**\n * @fileoverview Common helpers for
naming of plugins, formatters and configs\n */\n\nconst NAMESPACE_REGEX =
/^@.*\\//iu;\n\n/**\n * Brings package name to correct format based on prefix\n *
@param {string} name The name of the package.\n * @param {string} prefix Can be
either \"eslint-plugin\", \"eslint-config\" or \"eslint-formatter\"\n * @returns
{string} Normalized name of the package\n * @private\n */\nfunction
normalizePackageName(name, prefix) {\n let normalizedName = name;\n\n /**\n
* On Windows, name can come in with Windows slashes instead of Unix slashes.\n
* Normalize to Unix first to avoid errors later on.\n *
https://github.com/eslint/eslint/issues/5644\n */\n if
(normalizedName.includes(\"\\\\\")) {\n normalizedName =
normalizedName.replace(/\\\\/gu, \"/\");\n }\n\n if (normalizedName.charAt(0)
=== \"@\") {\n\n /**\n * it's a scoped package\n * package
name is the prefix, or just a username\n */\n const
scopedPackageShortcutRegex = new RegExp(`^(@[^/]+)(?:/(?:${prefix})?)?$`, \"u\"),\n
scopedPackageNameRegex = new RegExp(`^${prefix}(-|$)`, \"u\");\n\n if
(scopedPackageShortcutRegex.test(normalizedName)) {\n normalizedName =
normalizedName.replace(scopedPackageShortcutRegex, `$1/${prefix}`);\n } else
if (!scopedPackageNameRegex.test(normalizedName.split(\"/\")[1])) {\n\
n /**\n * for scoped packages, insert the prefix after the
first / unless\n * the path is already @scope/eslint or @scope/eslint-
xxx-yyy\n */\n normalizedName =
normalizedName.replace(/^@([^/]+)\\/(.*)$/u, `@$1/${prefix}-$2`);\n }\n }
else if (!normalizedName.startsWith(`${prefix}-`)) {\n normalizedName = `$
{prefix}-${normalizedName}`;\n }\n\n return normalizedName;\n}\n\n/**\n *
Removes the prefix from a fullname.\n * @param {string} fullname The term which may
have the prefix.\n * @param {string} prefix The prefix to remove.\n * @returns
{string} The term without prefix.\n */\nfunction getShorthandName(fullname, prefix)
{\n if (fullname[0] === \"@\") {\n let matchResult = new RegExp(`^(@[^/]
+)/${prefix}$`, \"u\").exec(fullname);\n\n if (matchResult) {\n
return matchResult[1];\n }\n\n matchResult = new RegExp(`^(@[^/]+)/$
{prefix}-(.+)$`, \"u\").exec(fullname);\n if (matchResult) {\n
return `${matchResult[1]}/${matchResult[2]}`;\n }\n } else if
(fullname.startsWith(`${prefix}-`)) {\n return fullname.slice(prefix.length
+ 1);\n }\n\n return fullname;\n}\n\n/**\n * Gets the scope (namespace) of a
term.\n * @param {string} term The term which may have the namespace.\n * @returns
{string} The namespace of the term if it has one.\n */\nfunction
getNamespaceFromTerm(term) {\n const match = term.match(NAMESPACE_REGEX);\n\n
return match ? match[0] : \"\";\n}\n\
n//------------------------------------------------------------------------------\
n// Public Interface\
n//------------------------------------------------------------------------------\
n\nexport {\n normalizePackageName,\n getShorthandName,\n
getNamespaceFromTerm\n};\n","/**\n * Utility for resolving a module relative to
another module\n * @author Teddy Katz\n */\n\nimport Module from \"module\";\n\n/*\
n * `Module.createRequire` is added in v12.2.0. It supports URL as well.\n * We
only support the case where the argument is a filepath, not a URL.\n */\nconst
createRequire = Module.createRequire;\n\n/**\n * Resolves a Node module relative to
another module\n * @param {string} moduleName The name of a Node module, or a path
to a Node module.\n * @param {string} relativeToPath An absolute path indicating
the module that `moduleName` should be resolved relative to. This must be\n * a
file rather than a directory, but the file need not actually exist.\n * @returns
{string} The absolute path that would result from calling
`require.resolve(moduleName)` in a file located at `relativeToPath`\n */\nfunction
resolve(moduleName, relativeToPath) {\n try {\n return
createRequire(relativeToPath).resolve(moduleName);\n
} catch (error) {\n\n // This `if` block is for older Node.js than
12.0.0. We can remove this block in the future.\n if (\n typeof
error === \"object\" &&\n error !== null &&\n error.code
=== \"MODULE_NOT_FOUND\" &&\n !error.requireStack &&\n
error.message.includes(moduleName)\n ) {\n error.message += `\\
nRequire stack:\\n- ${relativeToPath}`;\n }\n throw error;\n }\n}\
n\nexport {\n resolve\n};\n","/**\n * @fileoverview The factory of `ConfigArray`
objects.\n *\n * This class provides methods to create `ConfigArray` instance.\n *\
n * - `create(configData, options)`\n * Create a `ConfigArray` instance from a
config data. This is to handle CLI\n * options except `--config`.\n * -
`loadFile(filePath, options)`\n * Create a `ConfigArray` instance from a config
file. This is to handle\n * `--config` option. If the file was not found,
throws the following error:\n * - If the filename was `*.js`, a
`MODULE_NOT_FOUND` error.\n * - If the filename was `package.json`, an IO
error or an\n * `ESLINT_CONFIG_FIELD_NOT_FOUND` error.\n * - Otherwise,
an IO error such as `ENOENT`.\n * - `loadInDirectory(directoryPath, options)`\n *
Create a `ConfigArray` instance from a config file which is on a given\n *
directory. This tries to load `.eslintrc.*` or `package.json`. If not\n *
found, returns an empty `ConfigArray`.\n * - `loadESLintIgnore(filePath)`\n *
Create a `ConfigArray` instance from a config file that is `.eslintignore`\n *
format. This is to handle `--ignore-path` option.\n * -
`loadDefaultESLintIgnore()`\n * Create a `ConfigArray` instance from
`.eslintignore` or `package.json` in\n * the current working directory.\n *\n *
`ConfigArrayFactory` class has the responsibility that loads configuration\n *
files, including loading `extends`, `parser`, and `plugins`. The created\n *
`ConfigArray` instance has the loaded `extends`, `parser`, and `plugins`.\n *\n *
But this class doesn't handle cascading. `CascadingConfigArrayFactory` class\n *
handles cascading and hierarchy.\n *\n * @author Toru Nagashima
<https://github.com/mysticatea>\n */\n\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport debugOrig from \"debug\";\nimport fs from \"fs\";\nimport importFresh
from \"import-fresh\";\nimport { createRequire } from \"module\";\nimport path from
\"path\";\nimport stripComments from \"strip-json-comments\";\n\nimport {\n
ConfigArray,\n ConfigDependency,\n IgnorePattern,\n OverrideTester\n} from
\"./config-array/index.js\";\nimport ConfigValidator from \"./shared/config-
validator.js\";\nimport * as naming from \"./shared/naming.js\";\nimport * as
ModuleResolver from \"./shared/relative-module-resolver.js\";\n\nconst require =
createRequire(import.meta.url);\n\nconst debug = debugOrig(\"eslintrc:config-array-
factory\");\n\
n//------------------------------------------------------------------------------\
n// Helpers\
n//------------------------------------------------------------------------------\
n\nconst configFilenames = [\n \".eslintrc.js\",\n \".eslintrc.cjs\",\
n \".eslintrc.yaml\",\n \".eslintrc.yml\",\n \".eslintrc.json\",\
n \".eslintrc\",\n \"package.json\"\n];\n\n// Define types for VSCode
IntelliSense.\n/** @typedef {import(\"./shared/types\").ConfigData} ConfigData */\
n/** @typedef {import(\"./shared/types\").OverrideConfigData} OverrideConfigData
*/\n/** @typedef {import(\"./shared/types\").Parser} Parser */\n/** @typedef
{import(\"./shared/types\").Plugin} Plugin */\n/** @typedef
{import(\"./shared/types\").Rule} Rule */\n/** @typedef
{import(\"./config-array/config-dependency\").DependentParser} DependentParser */\
n/** @typedef {import(\"./config-array/config-dependency\").DependentPlugin}
DependentPlugin */\n/** @typedef {ConfigArray[0]} ConfigArrayElement */\n\n/**\n *
@typedef {Object} ConfigArrayFactoryOptions\n * @property {Map<string,Plugin>}
[additionalPluginPool] The map for additional plugins.\n * @property {string} [cwd]
The path to the current working directory.\n * @property {string}
[resolvePluginsRelativeTo] A path to the directory that plugins should be resolved
from. Defaults to `cwd`.\n * @property {Map<string,Rule>} builtInRules The rules
that are built in to ESLint.\n * @property {Object} [resolver=ModuleResolver] The
module resolver object.\n * @property {string} eslintAllPath The path to the
definitions for eslint:all.\n * @property {Function} getEslintAllConfig Returns the
config data for eslint:all.\n * @property {string} eslintRecommendedPath The path
to the definitions for eslint:recommended.\n * @property {Function}
getEslintRecommendedConfig Returns the config data for eslint:recommended.\n */\n\
n/**\n * @typedef {Object} ConfigArrayFactoryInternalSlots\n * @property
{Map<string,Plugin>} additionalPluginPool The map for additional plugins.\n *
@property {string} cwd The path to the current working directory.\n * @property
{string | undefined} resolvePluginsRelativeTo An absolute path the the directory
that plugins should be resolved from.\n * @property {Map<string,Rule>} builtInRules
The rules that are built in to ESLint.\n * @property {Object}
[resolver=ModuleResolver] The module resolver object.\n * @property {string}
eslintAllPath The path to the definitions for eslint:all.\n * @property {Function}
getEslintAllConfig Returns the config data for eslint:all.\n * @property {string}
eslintRecommendedPath The path to the definitions for eslint:recommended.\n *
@property {Function} getEslintRecommendedConfig Returns the config data for
eslint:recommended.\n */\n\n/**\n * @typedef {Object}
ConfigArrayFactoryLoadingContext\n * @property {string} filePath The path to the
current configuration.\n * @property {string} matchBasePath The base path to
resolve relative paths in `overrides[].files`, `overrides[].excludedFiles`, and
`ignorePatterns`.\n * @property {string} name The name of the current
configuration.\n * @property {string} pluginBasePath The base path to resolve
plugins.\n * @property {\"config\" | \"ignore\" | \"implicit-processor\"} type The
type of the current configuration. This is `\"config\"` in normal. This is
`\"ignore\"` if it came from `.eslintignore`. This is `\"implicit-processor\"` if
it came from legacy file-extension processors.\n */\n\n/**\n * @typedef {Object}
ConfigArrayFactoryLoadingContext\n * @property {string} filePath The path to the
current configuration.\n * @property {string} matchBasePath The base path to
resolve relative paths in `overrides[].files`, `overrides[].excludedFiles`, and
`ignorePatterns`.\n * @property {string} name The name of the current
configuration.\n * @property {\"config\" | \"ignore\" | \"implicit-processor\"}
type The type of the current configuration. This is `\"config\"` in normal. This is
`\"ignore\"` if it came from `.eslintignore`. This is `\"implicit-processor\"` if
it came from legacy file-extension processors.\n */\n\n/** @type
{WeakMap<ConfigArrayFactory, ConfigArrayFactoryInternalSlots>} */\nconst
internalSlotsMap = new WeakMap();\n\n/** @type {WeakMap<object, Plugin>} */\nconst
normalizedPlugins = new WeakMap();\n\n/**\n * Check if a given string is a file
path.\n * @param {string} nameOrPath A module name or file path.\n * @returns
{boolean} `true` if the `nameOrPath` is a file path.\n */\nfunction
isFilePath(nameOrPath) {\n return (\n
/^\\.{1,2}[/\\\\]/u.test(nameOrPath) ||\n path.isAbsolute(nameOrPath)\
n );\n}\n\n/**\n * Convenience wrapper for synchronously reading file contents.\
n * @param {string} filePath The filename to read.\n * @returns {string} The file
contents, with the BOM removed.\n * @private\n */\nfunction readFile(filePath) {\n
return fs.readFileSync(filePath, \"utf8\").replace(/^\\ufeff/u, \"\");\n}\n\n/**\n
* Loads a YAML configuration from a file.\n * @param {string} filePath The filename
to load.\n * @returns {ConfigData} The configuration object from the file.\n *
@throws {Error} If the file cannot be read.\n * @private\n */\nfunction
loadYAMLConfigFile(filePath) {\n debug(`Loading YAML config file: $
{filePath}`);\n\n // lazy load YAML to improve performance when not used\n
const yaml = require(\"js-yaml\");\n\n try {\n\n // empty YAML file can
be null, so always use\n return yaml.load(readFile(filePath)) || {};\n }
catch (e) {\n debug(`Error reading YAML file: ${filePath}`);\n
e.message = `Cannot read config file: ${filePath}\\nError: ${e.message}`;\n
throw e;\n }\n}\n\n/**\n * Loads a JSON configuration from a file.\n * @param
{string} filePath The filename to load.\n * @returns {ConfigData} The configuration
object from the file.\n * @throws {Error} If the file cannot be read.\n * @private\
n */\nfunction loadJSONConfigFile(filePath) {\n debug(`Loading JSON config file:
${filePath}`);\n\n try {\n return
JSON.parse(stripComments(readFile(filePath)));\n } catch (e) {\n
debug(`Error reading JSON file: ${filePath}`);\n e.message = `Cannot read
config file: ${filePath}\\nError: ${e.message}`;\n e.messageTemplate
= \"failed-to-read-json\";\n e.messageData = {\n path: filePath,\
n message: e.message\n };\n throw e;\n }\n}\n\n/**\n *
Loads a legacy (.eslintrc) configuration from a file.\n * @param {string} filePath
The filename to load.\n * @returns {ConfigData} The configuration object from the
file.\n * @throws {Error} If the file cannot be read.\n * @private\n */\nfunction
loadLegacyConfigFile(filePath) {\n debug(`Loading legacy config file: $
{filePath}`);\n\n // lazy load YAML to improve performance when not
used\n const yaml = require(\"js-yaml\");\n\n try {\n return
yaml.load(stripComments(readFile(filePath))) || /* istanbul ignore next */ {};\n
} catch (e) {\n debug(\"Error reading YAML file: %s\\n%o\", filePath, e);\n
e.message = `Cannot read config file: ${filePath}\\nError: ${e.message}`;\n
throw e;\n }\n}\n\n/**\n * Loads a JavaScript configuration from a file.\n *
@param {string} filePath The filename to load.\n * @returns {ConfigData} The
configuration object from the file.\n * @throws {Error} If the file cannot be
read.\n * @private\n */\nfunction loadJSConfigFile(filePath) {\n debug(`Loading
JS config file: ${filePath}`);\n try {\n return importFresh(filePath);\n
} catch (e) {\n debug(`Error reading JavaScript file: ${filePath}`);\n
e.message = `Cannot read config file: ${filePath}\\nError: ${e.message}`;\n
throw e;\n }\n}\n\n/**\n * Loads a configuration from a package.json file.\n *
@param {string} filePath The filename to load.\n * @returns {ConfigData} The
configuration object from the file.\n * @throws {Error} If the file cannot be
read.\n * @private\n */\nfunction loadPackageJSONConfigFile(filePath) {\n
debug(`Loading package.json config file: ${filePath}`);\n try {\n const
packageData = loadJSONConfigFile(filePath);\n\n if (!
Object.hasOwnProperty.call(packageData, \"eslintConfig\")) {\n throw
Object.assign(\n new Error(\"package.json file doesn't have
'eslintConfig' field.\"),\n
{ code: \"ESLINT_CONFIG_FIELD_NOT_FOUND\" }\n );\n }\n\n
return packageData.eslintConfig;\n } catch (e) {\n debug(`Error reading
package.json file: ${filePath}`);\n e.message = `Cannot read config file: $
{filePath}\\nError: ${e.message}`;\n throw e;\n }\n}\n\n/**\n * Loads a
`.eslintignore` from a file.\n * @param {string} filePath The filename to load.\n *
@returns {string[]} The ignore patterns from the file.\n * @private\n */\nfunction
loadESLintIgnoreFile(filePath) {\n debug(`Loading .eslintignore file: $
{filePath}`);\n\n try {\n return readFile(filePath)\
n .split(/\\r?\\n/gu)\n .filter(line => line.trim() !== \"\"
&& !line.startsWith(\"#\"));\n } catch (e) {\n debug(`Error
reading .eslintignore file: ${filePath}`);\n e.message = `Cannot
read .eslintignore file: ${filePath}\\nError: ${e.message}`;\n throw e;\n
}\n}\n\n/**\n * Creates an error to notify about a missing config to extend from.\n
* @param {string} configName The name of the missing config.\n * @param {string}
importerName The name of the config that imported the missing config\n * @param
{string} messageTemplate The text template to source error strings from.\n *
@returns {Error} The error object to throw\n * @private\n */\nfunction
configInvalidError(configName, importerName, messageTemplate) {\n return
Object.assign(\n new Error(`Failed to load config \"${configName}\" to
extend from.`),\n {\n messageTemplate,\n messageData:
{ configName, importerName }\n }\n );\n}\n\n/**\n * Loads a configuration
file regardless of the source. Inspects the file path\n * to determine the
correctly way to load the config file.\n * @param {string} filePath The path to the
configuration.\n * @returns {ConfigData|null} The configuration information.\n *
@private\n */\nfunction loadConfigFile(filePath) {\n switch
(path.extname(filePath)) {\n case \".js\":\n case \".cjs\":\n
return loadJSConfigFile(filePath);\n\n case \".json\":\n if
(path.basename(filePath) === \"package.json\") {\n return
loadPackageJSONConfigFile(filePath);\n }\n return
loadJSONConfigFile(filePath);\n\n case \".yaml\":\n case \".yml\":\n
return loadYAMLConfigFile(filePath);\n\n default:\n return
loadLegacyConfigFile(filePath);\n }\n}\n\n/**\n * Write debug log.\n * @param
{string} request The requested module name.\n * @param {string} relativeTo The file
path to resolve the request relative to.\n * @param {string} filePath The resolved
file path.\n * @returns {void}\n */\nfunction writeDebugLogForLoading(request,
relativeTo, filePath) {\n /* istanbul ignore next */\n if (debug.enabled) {\n
let nameAndVersion = null;\n\n try {\n const packageJsonPath =
ModuleResolver.resolve(\n `${request}/package.json`,\n
relativeTo\n );\n const { version = \"unknown\" } =
require(packageJsonPath);\n\n nameAndVersion = `${request}@${version}`;\
n } catch (error) {\n debug(\"package.json was not found:\",
error.message);\n nameAndVersion = request;\n }\n\n
debug(\"Loaded: %s (%s)\", nameAndVersion, filePath);\n }\n}\n\n/**\n * Create a
new context with default values.\n * @param {ConfigArrayFactoryInternalSlots} slots
The internal slots.\n * @param {\"config\" | \"ignore\" | \"implicit-processor\" |
undefined} providedType The type of the current configuration. Default is
`\"config\"`.\n * @param {string | undefined} providedName The name of the current
configuration. Default is the relative path from `cwd` to `filePath`.\n * @param
{string | undefined} providedFilePath The path to the current configuration.
Default is empty string.\n * @param {string | undefined} providedMatchBasePath The
type of the current configuration. Default is the directory of `filePath` or
`cwd`.\n * @returns {ConfigArrayFactoryLoadingContext} The created context.\n */\
nfunction createContext(\n { cwd, resolvePluginsRelativeTo },\n
providedType,\n providedName,\n providedFilePath,\n providedMatchBasePath\
n) {\n const filePath = providedFilePath\n ? path.resolve(cwd,
providedFilePath)\n : \"\";\n const matchBasePath =\n
(providedMatchBasePath && path.resolve(cwd, providedMatchBasePath)) ||\n
(filePath && path.dirname(filePath)) ||\n cwd;\n const name =\n
providedName ||\n (filePath && path.relative(cwd, filePath)) ||\
n \"\";\n const pluginBasePath =\n resolvePluginsRelativeTo ||\n
(filePath && path.dirname(filePath)) ||\n cwd;\n const type =
providedType || \"config\";\n\n return { filePath, matchBasePath, name,
pluginBasePath, type };\n}\n\n/**\n * Normalize a given plugin.\n * - Ensure the
object to have four properties: configs, environments, processors, and rules.\n * -
Ensure the object to not have other properties.\n * @param {Plugin} plugin The
plugin to normalize.\n * @returns {Plugin} The normalized plugin.\n */\nfunction
normalizePlugin(plugin) {\n\n // first check the cache\n let normalizedPlugin
= normalizedPlugins.get(plugin);\n\n if (normalizedPlugin) {\n return
normalizedPlugin;\n }\n\n normalizedPlugin = {\n configs:
plugin.configs || {},\n environments: plugin.environments || {},\n
processors: plugin.processors || {},\n rules: plugin.rules || {}\n };\n\n
// save the reference for later\n normalizedPlugins.set(plugin,
normalizedPlugin);\n\n return normalizedPlugin;\n}\n\
n//------------------------------------------------------------------------------\
n// Public Interface\
n//------------------------------------------------------------------------------\
n\n/**\n * The factory of `ConfigArray` objects.\n */\nclass ConfigArrayFactory {\
n\n /**\n * Initialize this instance.\n * @param
{ConfigArrayFactoryOptions} [options] The map for additional plugins.\n */\n
constructor({\n additionalPluginPool = new Map(),\n cwd =
process.cwd(),\n resolvePluginsRelativeTo,\n builtInRules,\n
resolver = ModuleResolver,\n eslintAllPath,\n getEslintAllConfig,\n
eslintRecommendedPath,\n getEslintRecommendedConfig\n } = {}) {\n
internalSlotsMap.set(this, {\n additionalPluginPool,\n cwd,\n
resolvePluginsRelativeTo:\n resolvePluginsRelativeTo &&\n
path.resolve(cwd, resolvePluginsRelativeTo),\n builtInRules,\n
resolver,\n eslintAllPath,\n getEslintAllConfig,\n
eslintRecommendedPath,\n getEslintRecommendedConfig\n });\n }\
n\n /**\n * Create `ConfigArray` instance from a config data.\n * @param
{ConfigData|null} configData The config data to create.\n * @param {Object}
[options] The options.\n * @param {string} [options.basePath] The base path to
resolve relative paths in `overrides[].files`, `overrides[].excludedFiles`, and
`ignorePatterns`.\n * @param {string} [options.filePath] The path to this
config data.\n * @param {string} [options.name] The config name.\n *
@returns {ConfigArray} Loaded config.\n */\n create(configData, { basePath,
filePath, name } = {}) {\n if (!configData) {\n return new
ConfigArray();\n }\n\n const slots = internalSlotsMap.get(this);\n
const ctx = createContext(slots, \"config\", name, filePath, basePath);\n
const elements = this._normalizeConfigData(configData, ctx);\n\n return new
ConfigArray(...elements);\n }\n\n /**\n * Load a config file.\n *
@param {string} filePath The path to a config file.\n * @param {Object}
[options] The options.\n * @param {string} [options.basePath] The base path to
resolve relative paths in `overrides[].files`, `overrides[].excludedFiles`, and
`ignorePatterns`.\n * @param {string} [options.name] The config name.\n *
@returns {ConfigArray} Loaded config.\n */\n loadFile(filePath, { basePath,
name } = {}) {\n const slots
= internalSlotsMap.get(this);\n const ctx =
createContext(slots, \"config\", name, filePath, basePath);\n\n return new
ConfigArray(...this._loadConfigData(ctx));\n }\n\n /**\n * Load the
config file on a given directory if exists.\n * @param {string} directoryPath
The path to a directory.\n * @param {Object} [options] The options.\n *
@param {string} [options.basePath] The base path to resolve relative paths in
`overrides[].files`, `overrides[].excludedFiles`, and `ignorePatterns`.\n *
@param {string} [options.name] The config name.\n * @returns {ConfigArray}
Loaded config. An empty `ConfigArray` if any config doesn't exist.\n */\n
loadInDirectory(directoryPath, { basePath, name } = {}) {\n const slots =
internalSlotsMap.get(this);\n\n for (const filename of configFilenames) {\n
const ctx = createContext(\n slots,\n \"config\",\n
name,\n path.join(directoryPath, filename),\n
basePath\n );\n\n if (fs.existsSync(ctx.filePath) &&
fs.statSync(ctx.filePath).isFile()) {\n let configData;\n\n
try {\n configData = loadConfigFile(ctx.filePath);\n
} catch (error) {\n if (!error || error.code !
== \"ESLINT_CONFIG_FIELD_NOT_FOUND\") {\n throw error;\n
}\n }\n\n if (configData) {\n
debug(`Config file found: ${ctx.filePath}`);\n return new
ConfigArray(\n ...this._normalizeConfigData(configData,
ctx)\n );\n }\n }\n }\n\n
debug(`Config file not found on ${directoryPath}`);\n return new
ConfigArray();\n }\n\n /**\n * Check if a config file on a given
directory exists or not.\n * @param {string} directoryPath The path to a
directory.\n * @returns {string | null} The path to the found config file. If
not found then null.\n */\n static
getPathToConfigFileInDirectory(directoryPath) {\n for (const filename of
configFilenames) {\n const filePath = path.join(directoryPath,
filename);\n\n if (fs.existsSync(filePath)) {\n if
(filename === \"package.json\") {\n try {\n
loadPackageJSONConfigFile(filePath);\n return filePath;\n
} catch { /* ignore */ }\n } else {\n return
filePath;\n }\n }\n }\n return null;\
n }\n\n /**\n * Load `.eslintignore` file.\n * @param {string}
filePath The path to a `.eslintignore` file to load.\n * @returns {ConfigArray}
Loaded config. An empty `ConfigArray` if any config doesn't exist.\n */\n
loadESLintIgnore(filePath) {\n const slots = internalSlotsMap.get(this);\n
const ctx = createContext(\n slots,\n \"ignore\",\n
void 0,\n filePath,\n slots.cwd\n );\n const
ignorePatterns = loadESLintIgnoreFile(ctx.filePath);\n\n return new
ConfigArray(\n ...this._normalizeESLintIgnoreData(ignorePatterns, ctx)\n
);\n }\n\n /**\n * Load `.eslintignore` file in the current working
directory.\n * @returns {ConfigArray} Loaded config. An empty `ConfigArray` if
any config doesn't exist.\n */\n loadDefaultESLintIgnore() {\n const
slots = internalSlotsMap.get(this);\n const eslintIgnorePath =
path.resolve(slots.cwd, \".eslintignore\");\n const packageJsonPath =
path.resolve(slots.cwd, \"package.json\");\n\n if
(fs.existsSync(eslintIgnorePath)) {\n return
this.loadESLintIgnore(eslintIgnorePath);\n }\n if
(fs.existsSync(packageJsonPath)) {\n const data =
loadJSONConfigFile(packageJsonPath);\n\n if
(Object.hasOwnProperty.call(data, \"eslintIgnore\")) {\n if (!
Array.isArray(data.eslintIgnore)) {\n throw new
Error(\"Package.json eslintIgnore property requires an array of paths\");\n
}\n const ctx = createContext(\n slots,\n
\"ignore\",\n \"eslintIgnore in package.json\",\n
packageJsonPath,\n slots.cwd\n );\n\n
return new ConfigArray(\
n ...this._normalizeESLintIgnoreData(data.eslintIgnore, ctx)\n
);\n }\n }\n\n return new ConfigArray();\n }\n\n
/**\n * Load a given config file.\n * @param
{ConfigArrayFactoryLoadingContext} ctx The loading context.\n * @returns
{IterableIterator<ConfigArrayElement>} Loaded config.\n * @private\n */\n
_loadConfigData(ctx) {\n return
this._normalizeConfigData(loadConfigFile(ctx.filePath), ctx);\n }\n\n /**\n
* Normalize a given `.eslintignore` data to config array elements.\n * @param
{string[]} ignorePatterns The patterns to ignore files.\n * @param
{ConfigArrayFactoryLoadingContext} ctx The loading context.\n * @returns
{IterableIterator<ConfigArrayElement>} The normalized config.\n * @private\n
*/\n *_normalizeESLintIgnoreData(ignorePatterns, ctx) {\n const elements
= this._normalizeObjectConfigData(\n { ignorePatterns },\n
ctx\n );\n\n // Set `ignorePattern.loose` flag for backward
compatibility.\n for (const element of elements) {\n if
(element.ignorePattern) {\n element.ignorePattern.loose = true;\n
}\n yield element;\n }\n }\n\n /**\n * Normalize a
given config to an array.\n * @param {ConfigData} configData The config data to
normalize.\n * @param {ConfigArrayFactoryLoadingContext} ctx The loading
context.\n * @returns {IterableIterator<ConfigArrayElement>} The normalized
config.\n * @private\n */\n _normalizeConfigData(configData, ctx) {\n
const validator = new ConfigValidator();\n\n
validator.validateConfigSchema(configData, ctx.name || ctx.filePath);\n
return this._normalizeObjectConfigData(configData, ctx);\n }\n\n /**\n *
Normalize a given config to an array.\n * @param {ConfigData|
OverrideConfigData} configData The config data to normalize.\n * @param
{ConfigArrayFactoryLoadingContext} ctx The loading context.\n * @returns
{IterableIterator<ConfigArrayElement>} The normalized config.\n * @private\n
*/\n *_normalizeObjectConfigData(configData, ctx) {\n const { files,
excludedFiles, ...configBody } = configData;\n const criteria =
OverrideTester.create(\n files,\n excludedFiles,\n
ctx.matchBasePath\n );\n const elements =
this._normalizeObjectConfigDataBody(configBody, ctx);\n\n // Apply the
criteria to every element.\n for (const element of elements) {\n\n
/*\n * Merge the criteria.\n * This is for the `overrides`
entries that came from the\n * configurations of
`overrides[].extends`.\n */\n element.criteria =
OverrideTester.and(criteria, element.criteria);\n\n /*\n *
Remove `root` property to ignore `root` settings which came from\n *
`extends` in `overrides`.\n */\n if (element.criteria) {\n
element.root = void 0;\n }\n\n yield element;\n }\n
}\n\n /**\n * Normalize a given config to an array.\n * @param
{ConfigData} configData The config data to normalize.\n * @param
{ConfigArrayFactoryLoadingContext} ctx The loading context.\n * @returns
{IterableIterator<ConfigArrayElement>} The normalized config.\n * @private\n
*/\n *_normalizeObjectConfigDataBody(\n {\n env,\n
extends: extend,\n globals,\n ignorePatterns,\n
noInlineConfig,\n parser: parserName,\n parserOptions,\n
plugins: pluginList,\n processor,\n
reportUnusedDisableDirectives,\n root,\n rules,\n
settings,\n overrides: overrideList = []\n },\n ctx\n )
{\n const extendList = Array.isArray(extend) ? extend : [extend];\n
const ignorePattern = ignorePatterns && new IgnorePattern(\n
Array.isArray(ignorePatterns) ? ignorePatterns : [ignorePatterns],\n
ctx.matchBasePath\n );\n\n // Flatten `extends`.\n for (const
extendName of extendList.filter(Boolean)) {\n yield*
this._loadExtends(extendName, ctx);\n }\n\n // Load parser &
plugins.\n const parser = parserName && this._loadParser(parserName, ctx);\n
const plugins = pluginList && this._loadPlugins(pluginList, ctx);\n\n //
Yield pseudo config data for file extension processors.\n if (plugins) {\n
yield* this._takeFileExtensionProcessors(plugins, ctx);\n }\n\n //
Yield the config data except `extends` and `overrides`.\n yield {\n\n
// Debug information.\n type: ctx.type,\n name: ctx.name,\n
filePath: ctx.filePath,\n\n // Config data.\n criteria:
null,\n env,\n globals,\n ignorePattern,\n
noInlineConfig,\n parser,\n parserOptions,\n
plugins,\n processor,\n reportUnusedDisableDirectives,\n
root,\n rules,\n settings\n
};\n\n // Flatten `overries`.\n for (let i = 0; i <
overrideList.length; ++i) {\n yield* this._normalizeObjectConfigData(\n
overrideList[i],\n { ...ctx, name: `${ctx.name}#overrides[${i}]` }\n
);\n }\n }\n\n /**\n * Load configs of an element in `extends`.\n
* @param {string} extendName The name of a base config.\n * @param
{ConfigArrayFactoryLoadingContext} ctx The loading context.\n * @returns
{IterableIterator<ConfigArrayElement>} The normalized config.\n * @private\n
*/\n _loadExtends(extendName, ctx) {\n debug(\"Loading {extends:%j}
relative to %s\", extendName, ctx.filePath);\n try {\n if
(extendName.startsWith(\"eslint:\")) {\n return
this._loadExtendedBuiltInConfig(extendName, ctx);\n }\n if
(extendName.startsWith(\"plugin:\")) {\n return
this._loadExtendedPluginConfig(extendName, ctx);\n }\n return
this._loadExtendedShareableConfig(extendName, ctx);\n } catch (error) {\n
error.message += `\\nReferenced from: ${ctx.filePath || ctx.name}`;\n
throw error;\n }\n }\n\n /**\n * Load configs of an element in
`extends`.\n * @param {string} extendName The name of a base config.\n *
@param {ConfigArrayFactoryLoadingContext} ctx The loading context.\n * @returns
{IterableIterator<ConfigArrayElement>} The normalized config.\n * @private\n
*/\n _loadExtendedBuiltInConfig(extendName, ctx) {\n const {\n
eslintAllPath,\n getEslintAllConfig,\n
eslintRecommendedPath,\n getEslintRecommendedConfig\n } =
internalSlotsMap.get(this);\n\n if (extendName === \"eslint:recommended\")
{\n const name = `${ctx.name} » ${extendName}`;\n\n if
(getEslintRecommendedConfig) {\n if (typeof
getEslintRecommendedConfig !== \"function\") {\n throw new
Error(`getEslintRecommendedConfig must be a function instead of '$
{getEslintRecommendedConfig}'`);\n }\n return
this._normalizeConfigData(getEslintRecommendedConfig(), { ...ctx, name,
filePath: \"\" });\n }\n return this._loadConfigData({\n
...ctx,\n name,\n filePath: eslintRecommendedPath\n
});\n }\n if (extendName === \"eslint:all\") {\n const
name = `${ctx.name} » ${extendName}`;\n\n if (getEslintAllConfig) {\n
if (typeof getEslintAllConfig !== \"function\") {\n throw new
Error(`getEslintAllConfig must be a function instead of '${getEslintAllConfig}'`);\
n }\n return
this._normalizeConfigData(getEslintAllConfig(), { ...ctx, name, filePath: \"\" });\
n }\n return this._loadConfigData({\n ...ctx,\
n name,\n filePath: eslintAllPath\n });\n
}\n\n throw configInvalidError(extendName, ctx.name, \"extend-config-
missing\");\n }\n\n /**\n * Load configs of an element in `extends`.\n
* @param {string} extendName The name of a base config.\n * @param
{ConfigArrayFactoryLoadingContext} ctx The loading context.\n * @returns
{IterableIterator<ConfigArrayElement>} The normalized config.\n * @private\n
*/\n _loadExtendedPluginConfig(extendName, ctx) {\n const slashIndex =
extendName.lastIndexOf(\"/\");\n\n if (slashIndex === -1) {\n
throw configInvalidError(extendName, ctx.filePath, \"plugin-invalid\");\n }\
n\n const pluginName = extendName.slice(\"plugin:\".length, slashIndex);\n
const configName = extendName.slice(slashIndex + 1);\n\n if
(isFilePath(pluginName)) {\n throw new Error(\"'extends' cannot use a
file path for plugins.\");\n }\n\n const plugin =
this._loadPlugin(pluginName, ctx);\n const configData =\n
plugin.definition &&\n plugin.definition.configs[configName];\n\n
if (configData) {\n return this._normalizeConfigData(configData, {\n
...ctx,\n filePath: plugin.filePath || ctx.filePath,\n
name: `${ctx.name} » plugin:${plugin.id}/${configName}`\n });\
n }\n\n throw plugin.error || configInvalidError(extendName,
ctx.filePath, \"extend-config-missing\");\n }\n\n /**\n * Load configs of
an element in `extends`.\n * @param {string} extendName The name of a base
config.\n * @param {ConfigArrayFactoryLoadingContext} ctx The loading context.\
n * @returns {IterableIterator<ConfigArrayElement>} The normalized config.\n
* @private\n */\n _loadExtendedShareableConfig(extendName, ctx) {\n
const { cwd, resolver } = internalSlotsMap.get(this);\n const relativeTo =
ctx.filePath || path.join(cwd, \"__placeholder__.js\");\n let request;\n\n
if (isFilePath(extendName)) {\n request = extendName;\n } else if
(extendName.startsWith(\".\")) {\n request = `./${extendName}`; // For
backward compatibility. A ton of tests depended on this behavior.\n } else
{\n request = naming.normalizePackageName(\n extendName,\
n \"eslint-config\"\n );\n }\n\n let
filePath;\n\n try {\n filePath = resolver.resolve(request,
relativeTo);\n } catch (error) {\n /* istanbul ignore else */\n
if (error && error.code === \"MODULE_NOT_FOUND\") {\n throw
configInvalidError(extendName, ctx.filePath, \"extend-config-missing\");\n
}\n throw error;\n }\n\n writeDebugLogForLoading(request,
relativeTo, filePath);\n return this._loadConfigData({\n ...ctx,\
n filePath,\n name: `${ctx.name} » ${request}`\n });\n
}\n\n /**\n * Load given plugins.\n * @param {string[]} names The plugin
names to load.\n * @param {ConfigArrayFactoryLoadingContext} ctx The loading
context.\n * @returns {Record<string,DependentPlugin>} The loaded parser.\n
* @private\n */\n _loadPlugins(names, ctx) {\n return
names.reduce((map, name) => {\n if (isFilePath(name)) {\n
throw new Error(\"Plugins array cannot includes file paths.\");\n }\n
const plugin = this._loadPlugin(name, ctx);\n\n map[plugin.id] =
plugin;\n\n return map;\n }, {});\n }\n\n /**\n * Load
a given parser.\n * @param {string} nameOrPath The package name or the path to
a parser file.\n * @param {ConfigArrayFactoryLoadingContext} ctx The loading
context.\n * @returns {DependentParser} The loaded parser.\n */\n
_loadParser(nameOrPath, ctx) {\n debug(\"Loading parser %j from %s\",
nameOrPath, ctx.filePath);\n\n const { cwd, resolver } =
internalSlotsMap.get(this);\n const relativeTo = ctx.filePath ||
path.join(cwd, \"__placeholder__.js\");\n\n try {\n const
filePath = resolver.resolve(nameOrPath, relativeTo);\n\n
writeDebugLogForLoading(nameOrPath, relativeTo, filePath);\n\n return
new ConfigDependency({\n definition: require(filePath),\n
filePath,\n id: nameOrPath,\n importerName:
ctx.name,\n importerPath: ctx.filePath\n });\n }
catch (error) {\n\n // If the parser name is \"espree\", load the espree
of ESLint.\n if (nameOrPath === \"espree\") {\n
debug(\"Fallback espree.\");\n return new ConfigDependency({\n
definition: require(\"espree\"),\n filePath:
require.resolve(\"espree\"),\n id: nameOrPath,\n
importerName: ctx.name,\n importerPath: ctx.filePath\n
});\n }\n\n debug(\"Failed to load parser '%s' declared in
'%s'.\", nameOrPath, ctx.name);\n error.message = `Failed to load parser
'${nameOrPath}' declared in '${ctx.name}': ${error.message}`;\n\n return
new ConfigDependency({\n error,\n id: nameOrPath,\n
importerName: ctx.name,\n importerPath: ctx.filePath\
n });\n }\n }\n\n /**\n * Load a given plugin.\n *
@param {string} name The plugin name to load.\n * @param
{ConfigArrayFactoryLoadingContext} ctx The loading context.\n * @returns
{DependentPlugin} The loaded plugin.\n * @private\n */\n
_loadPlugin(name, ctx) {\n debug(\"Loading plugin %j from %s\", name,
ctx.filePath);\n\n const { additionalPluginPool, resolver } =
internalSlotsMap.get(this);\n const request =
naming.normalizePackageName(name, \"eslint-plugin\");\n const id =
naming.getShorthandName(request, \"eslint-plugin\");\n const relativeTo =
path.join(ctx.pluginBasePath, \"__placeholder__.js\");\n\n if
(name.match(/\\s+/u)) {\n const error = Object.assign(\n
new Error(`Whitespace found in plugin name '${name}'`),\n {\n
messageTemplate: \"whitespace-found\",\n messageData:
{ pluginName: request }\n }\n );\n\n return
new ConfigDependency({\n error,\n id,\n
importerName: ctx.name,\n importerPath: ctx.filePath\
n });\n }\n\n // Check for additional pool.\n const
plugin =\n additionalPluginPool.get(request)
||\n additionalPluginPool.get(id);\n\n if (plugin) {\n
return new ConfigDependency({\n definition:
normalizePlugin(plugin),\n filePath: \"\", // It's unknown where the
plugin came from.\n id,\n importerName: ctx.name,\n
importerPath: ctx.filePath\n });\n }\n\n let filePath;\n
let error;\n\n try {\n filePath = resolver.resolve(request,
relativeTo);\n } catch (resolveError) {\n error = resolveError;\n
/* istanbul ignore else */\n if (error && error.code
=== \"MODULE_NOT_FOUND\") {\n error.messageTemplate = \"plugin-
missing\";\n error.messageData = {\n pluginName:
request,\n resolvePluginsRelativeTo: ctx.pluginBasePath,\n
importerName: ctx.name\n };\n }\n }\n\n if
(filePath) {\n try {\n writeDebugLogForLoading(request,
relativeTo, filePath);\n\n const startTime = Date.now();\n
const pluginDefinition = require(filePath);\n\n debug(`Plugin $
{filePath} loaded in: ${Date.now() - startTime}ms`);\n\n return new
ConfigDependency({\n definition:
normalizePlugin(pluginDefinition),\n filePath,\n
id,\n importerName: ctx.name,\n importerPath:
ctx.filePath\n });\n } catch (loadError) {\n
error = loadError;\n }\n }\n\n debug(\"Failed to load
plugin '%s' declared in '%s'.\", name, ctx.name);\n error.message = `Failed
to load plugin '${name}' declared in '${ctx.name}': ${error.message}`;\n
return new ConfigDependency({\n error,\n id,\n
importerName: ctx.name,\n importerPath: ctx.filePath\n });\
n }\n\n /**\n * Take file expression processors as config array
elements.\n * @param {Record<string,DependentPlugin>} plugins The plugin
definitions.\n * @param {ConfigArrayFactoryLoadingContext} ctx The loading
context.\n * @returns {IterableIterator<ConfigArrayElement>} The config array
elements of file expression processors.\n * @private\n */\n
*_takeFileExtensionProcessors(plugins, ctx) {\n for (const pluginId of
Object.keys(plugins)) {\n const processors =\n
plugins[pluginId] &&\n plugins[pluginId].definition &&\n
plugins[pluginId].definition.processors;\n\n if (!processors) {\n
continue;\n }\n\n for (const processorId of
Object.keys(processors)) {\n if (processorId.startsWith(\".\")) {\n
yield* this._normalizeObjectConfigData(\n {\n
files: [`*${processorId}`],\n processor: `${pluginId}/$
{processorId}`\n },\n {\n
...ctx,\n type: \"implicit-processor\",\n
name: `${ctx.name}#processors[\"${pluginId}/${processorId}\"]`\n
}\n );\n }\n }\n }\n }\n}\n\
nexport { ConfigArrayFactory, createContext };\n","/**\n * @fileoverview
`CascadingConfigArrayFactory` class.\n *\n * `CascadingConfigArrayFactory` class
has a responsibility:\n *\n * 1. Handles cascading of config files.\n *\n * It
provides two methods:\n *\n * - `getConfigArrayForFile(filePath)`\n * Get the
corresponded configuration of a given file. This method doesn't\n * throw even
if the given file didn't exist.\n * - `clearCache()`\n * Clear the internal
cache. You have to call this method when\n * `additionalPluginPool` was updated
if `baseConfig` or `cliConfig` depends\n * on the additional plugins.
(`CLIEngine#addPlugin()` method calls this.)\n *\n * @author Toru Nagashima
<https://github.com/mysticatea>\n */\n\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport debugOrig from \"debug\";\nimport os from \"os\";\nimport path
from \"path\";\n\nimport { ConfigArrayFactory } from \"./config-array-
factory.js\";\nimport {\n ConfigArray,\n ConfigDependency,\n
IgnorePattern\n} from \"./config-array/index.js\";\nimport ConfigValidator
from \"./shared/config-validator.js\";\nimport { emitDeprecationWarning }
from \"./shared/deprecation-warnings.js\";\n\nconst debug =
debugOrig(\"eslintrc:cascading-config-array-factory\");\n\
n//------------------------------------------------------------------------------\
n// Helpers\
n//------------------------------------------------------------------------------\
n\n// Define types for VSCode IntelliSense.\n/** @typedef
{import(\"./shared/types\").ConfigData} ConfigData */\n/** @typedef
{import(\"./shared/types\").Parser} Parser */\n/** @typedef
{import(\"./shared/types\").Plugin} Plugin */\n/** @typedef
{import(\"./shared/types\").Rule} Rule */\n/** @typedef
{ReturnType<ConfigArrayFactory[\"create\"]>} ConfigArray */\n\n/**\n * @typedef
{Object} CascadingConfigArrayFactoryOptions\n * @property {Map<string,Plugin>}
[additionalPluginPool] The map for additional plugins.\n * @property {ConfigData}
[baseConfig] The config by `baseConfig` option.\n * @property {ConfigData}
[cliConfig] The config by CLI options (`--env`, `--global`, `--ignore-pattern`, `--
parser`, `--parser-options`, `--plugin`, and `--rule`). CLI options overwrite the
setting in config files.\n * @property {string} [cwd] The base directory to start
lookup.\n * @property {string} [ignorePath] The path to the alternative file of
`.eslintignore`.\n * @property {string[]} [rulePaths] The value of `--rulesdir`
option.\n * @property {string} [specificConfigPath] The value of `--config`
option.\n * @property {boolean} [useEslintrc] if `false` then it doesn't load
config files.\n * @property {Function} loadRules The function to use to load
rules.\n * @property {Map<string,Rule>} builtInRules The rules that are built in to
ESLint.\n * @property {Object} [resolver=ModuleResolver] The module resolver
object.\n * @property {string} eslintAllPath The path to the definitions for
eslint:all.\n * @property {Function} getEslintAllConfig Returns the config data for
eslint:all.\n * @property {string} eslintRecommendedPath The path to the
definitions for eslint:recommended.\n * @property {Function}
getEslintRecommendedConfig Returns the config data for eslint:recommended.\n */\n\
n/**\n * @typedef {Object} CascadingConfigArrayFactoryInternalSlots\n * @property
{ConfigArray} baseConfigArray The config array of `baseConfig` option.\n *
@property {ConfigData} baseConfigData The config data of `baseConfig` option. This
is used to reset `baseConfigArray`.\n * @property {ConfigArray} cliConfigArray The
config array of CLI options.\n * @property {ConfigData} cliConfigData The config
data of CLI options. This is used to reset `cliConfigArray`.\n * @property
{ConfigArrayFactory} configArrayFactory The factory for config arrays.\n *
@property {Map<string, ConfigArray>} configCache The cache from directory paths to
config arrays.\n * @property {string} cwd The base directory to start lookup.\n *
@property {WeakMap<ConfigArray, ConfigArray>} finalizeCache The cache from config
arrays to finalized config arrays.\n * @property {string} [ignorePath] The path to
the alternative file of `.eslintignore`.\n * @property {string[]|null} rulePaths
The value of `--rulesdir` option. This is used to reset `baseConfigArray`.\n *
@property {string|null} specificConfigPath The value of `--config` option. This is
used to reset `cliConfigArray`.\n * @property {boolean} useEslintrc if `false` then
it doesn't load config files.\n * @property {Function} loadRules The function to
use to load rules.\n * @property {Map<string,Rule>} builtInRules The rules that are
built in to ESLint.\n * @property {Object} [resolver=ModuleResolver] The module
resolver object.\n * @property {string} eslintAllPath The path to the definitions
for eslint:all.\n * @property {Function} getEslintAllConfig Returns the config data
for eslint:all.\n * @property {string} eslintRecommendedPath The path to the
definitions for eslint:recommended.\n * @property {Function}
getEslintRecommendedConfig Returns the config data for eslint:recommended.\n */\n\
n/** @type {WeakMap<CascadingConfigArrayFactory,
CascadingConfigArrayFactoryInternalSlots>} */\nconst internalSlotsMap = new
WeakMap();\n\n/**\n * Create the config array from `baseConfig` and `rulePaths`.\n
* @param {CascadingConfigArrayFactoryInternalSlots} slots The slots.\n * @returns
{ConfigArray} The config array of the base configs.\n */\nfunction
createBaseConfigArray({\n configArrayFactory,\n baseConfigData,\n
rulePaths,\n cwd,\n loadRules\n}) {\n const baseConfigArray =
configArrayFactory.create(\n baseConfigData,\n { name: \"BaseConfig\"
}\n );\n\n /*\n * Create the config array element for the default ignore
patterns.\n * This element has `ignorePattern` property that ignores the
default\n * patterns in the current working directory.\n */\n
baseConfigArray.unshift(configArrayFactory.create(\n { ignorePatterns:
IgnorePattern.DefaultPatterns },\n { name: \"DefaultIgnorePattern\" }\n )
[0]);\n\n /*\n * Load rules `--rulesdir` option as a pseudo plugin.\n *
Use a pseudo plugin to define rules of `--rulesdir`, so we can validate\n * the
rule's options with only information in the config array.\n */\n
if (rulePaths && rulePaths.length > 0) {\n baseConfigArray.push({\n
type: \"config\",\n name: \"--rulesdir\",\n filePath: \"\",\n
plugins: {\n \"\": new ConfigDependency({\n
definition: {\n rules: rulePaths.reduce(\n
(map, rulesPath) => Object.assign(\n map,\n
loadRules(rulesPath, cwd)\n ),\n
{}\n )\n },\n
filePath: \"\",\n id: \"\",\n
importerName: \"--rulesdir\",\n importerPath: \"\"\n
})\n }\n });\n }\n\n return baseConfigArray;\n}\n\n/**\n *
Create the config array from CLI options.\n * @param
{CascadingConfigArrayFactoryInternalSlots} slots The slots.\n * @returns
{ConfigArray} The config array of the base configs.\n */\nfunction
createCLIConfigArray({\n cliConfigData,\n configArrayFactory,\n cwd,\n
ignorePath,\n specificConfigPath\n}) {\n const cliConfigArray =
configArrayFactory.create(\n cliConfigData,\n
{ name: \"CLIOptions\" }\n );\n\n cliConfigArray.unshift(\n ...
(ignorePath\n ? configArrayFactory.loadESLintIgnore(ignorePath)\n
: configArrayFactory.loadDefaultESLintIgnore())\n );\n\n if
(specificConfigPath) {\n cliConfigArray.unshift(\
n ...configArrayFactory.loadFile(\n specificConfigPath,\n
{ name: \"--config\", basePath: cwd }\n )\n );\n }\n\n
return cliConfigArray;\n}\n\n/**\n * The error type when there are files matched by
a glob, but all of them have been ignored.\n */\nclass ConfigurationNotFoundError
extends Error {\n\n // eslint-disable-next-line jsdoc/require-description\
n /**\n * @param {string} directoryPath The directory path.\n */\n
constructor(directoryPath) {\n super(`No ESLint configuration found in $
{directoryPath}.`);\n this.messageTemplate = \"no-config-found\";\n
this.messageData = { directoryPath };\n }\n}\n\n/**\n * This class provides the
functionality that enumerates every file which is\n * matched by given glob
patterns and that configuration.\n */\nclass CascadingConfigArrayFactory {\n\
n /**\n * Initialize this enumerator.\n * @param
{CascadingConfigArrayFactoryOptions} options The options.\n */\n
constructor({\n additionalPluginPool = new Map(),\n baseConfig:
baseConfigData = null,\n cliConfig: cliConfigData = null,\n cwd =
process.cwd(),\n ignorePath,\n resolvePluginsRelativeTo,\n
rulePaths = [],\n specificConfigPath = null,\n useEslintrc = true,\n
builtInRules = new Map(),\n loadRules,\n resolver,\n
eslintRecommendedPath,\n getEslintRecommendedConfig,\n
eslintAllPath,\n getEslintAllConfig\n } = {}) {\n const
configArrayFactory = new ConfigArrayFactory({\n additionalPluginPool,\n
cwd,\n resolvePluginsRelativeTo,\n builtInRules,\n
resolver,\n eslintRecommendedPath,\n
getEslintRecommendedConfig,\n eslintAllPath,\n
getEslintAllConfig\n });\n\n internalSlotsMap.set(this, {\n
baseConfigArray: createBaseConfigArray({\n baseConfigData,\n
configArrayFactory,\n cwd,\n rulePaths,\n
loadRules\n }),\n baseConfigData,\n
cliConfigArray: createCLIConfigArray({\n cliConfigData,\n
configArrayFactory,\n cwd,\n ignorePath,\n
specificConfigPath\n }),\n cliConfigData,\n
configArrayFactory,\n configCache: new Map(),\n cwd,\n
finalizeCache: new WeakMap(),\n ignorePath,\n rulePaths,\n
specificConfigPath,\n useEslintrc,\n builtInRules,\n
loadRules\n });\n }\n\n /**\n * The path to the current working
directory.\n * This is used by tests.\n * @type {string}\n */\n get
cwd() {\n const { cwd } = internalSlotsMap.get(this);\n\n return
cwd;\n }\n\n /**\n * Get the config array of a given file.\n * If
`filePath` was not given, it returns the config which contains only\n *
`baseConfigData` and `cliConfigData`.\n * @param {string} [filePath] The file
path to a file.\n * @param {Object} [options] The options.\n * @param
{boolean} [options.ignoreNotFoundError] If `true` then it doesn't throw
`ConfigurationNotFoundError`.\n * @returns {ConfigArray} The config array of
the file.\n */\n getConfigArrayForFile(filePath, { ignoreNotFoundError =
false } = {}) {\n const {\n baseConfigArray,\n
cliConfigArray,\n cwd\n } = internalSlotsMap.get(this);\n\n
if (!filePath) {\n return new
ConfigArray(...baseConfigArray, ...cliConfigArray);\n }\n\n const
directoryPath = path.dirname(path.resolve(cwd, filePath));\n\n debug(`Load
config files for ${directoryPath}.`);\n\n return this._finalizeConfigArray(\
n this._loadConfigInAncestors(directoryPath),\n
directoryPath,\n ignoreNotFoundError\n );\n }\n\n /**\n
* Set the config data to override all configs.\n * Require to call
`clearCache()` method after this method is called.\n * @param {ConfigData}
configData The config data to override all configs.\n * @returns {void}\n
*/\n setOverrideConfig(configData) {\n const slots =
internalSlotsMap.get(this);\n\n slots.cliConfigData = configData;\n }\n\n
/**\n * Clear config cache.\n * @returns {void}\n */\n clearCache()
{\n const slots = internalSlotsMap.get(this);\n\n
slots.baseConfigArray = createBaseConfigArray(slots);\n slots.cliConfigArray
= createCLIConfigArray(slots);\n slots.configCache.clear();\n }\n\n
/**\n * Load and normalize config files from the ancestor directories.\n *
@param {string} directoryPath The path to a leaf directory.\n * @param
{boolean} configsExistInSubdirs `true` if configurations exist in subdirectories.\n
* @returns {ConfigArray} The loaded config.\n * @private\n */\n
_loadConfigInAncestors(directoryPath, configsExistInSubdirs = false) {\n
const {\n baseConfigArray,\n configArrayFactory,\n
configCache,\n cwd,\n useEslintrc\n } =
internalSlotsMap.get(this);\n\n if (!useEslintrc) {\n return
baseConfigArray;\n }\n\n let configArray =
configCache.get(directoryPath);\n\n // Hit cache.\n if (configArray)
{\n debug(`Cache hit: ${directoryPath}.`);\n return
configArray;\n }\n debug(`No cache found: ${directoryPath}.`);\n\n
const homePath = os.homedir();\n\n // Consider this is root.\n if
(directoryPath === homePath && cwd !== homePath) {\n debug(\"Stop
traversing because of considered root.\");\n if (configsExistInSubdirs)
{\n const filePath =
ConfigArrayFactory.getPathToConfigFileInDirectory(directoryPath);\n\n
if (filePath) {\n emitDeprecationWarning(\n
filePath,\n \"ESLINT_PERSONAL_CONFIG_SUPPRESS\"\n
);\n }\n }\n return
this._cacheConfig(directoryPath, baseConfigArray);\n }\n\n // Load
the config on this directory.\n try {\n configArray =
configArrayFactory.loadInDirectory(directoryPath);\n } catch (error) {\n
/* istanbul ignore next */\n if (error.code === \"EACCES\") {\n
debug(\"Stop traversing because of 'EACCES' error.\");\n return
this._cacheConfig(directoryPath, baseConfigArray);\n }\n
throw error;\n }\n\n if (configArray.length > 0 &&
configArray.isRoot()) {\n debug(\"Stop traversing because of
'root:true'.\");\n configArray.unshift(...baseConfigArray);\n
return this._cacheConfig(directoryPath, configArray);\n }\n\n // Load
from the ancestors and merge it.\n const parentPath =
path.dirname(directoryPath);\n const parentConfigArray = parentPath &&
parentPath !== directoryPath\n ? this._loadConfigInAncestors(\n
parentPath,\n configsExistInSubdirs || configArray.length > 0\n
)\n : baseConfigArray;\n\n if (configArray.length > 0) {\n
configArray.unshift(...parentConfigArray);\n } else {\n
configArray = parentConfigArray;\n }\n\n // Cache and return.\n
return this._cacheConfig(directoryPath, configArray);\n }\n\n /**\n *
Freeze and cache a given config.\n * @param {string} directoryPath The path to
a directory as a cache key.\n * @param {ConfigArray} configArray The config
array as a cache value.\n * @returns {ConfigArray} The `configArray` (frozen).\
n */\n _cacheConfig(directoryPath, configArray) {\n const
{ configCache } = internalSlotsMap.get(this);\n\n
Object.freeze(configArray);\n configCache.set(directoryPath, configArray);\
n\n return configArray;\n }\n\n /**\n * Finalize a given config
array.\n * Concatenate
`--config` and other CLI options.\n * @param {ConfigArray} configArray The
parent config array.\n * @param {string} directoryPath The path to the leaf
directory to find config files.\n * @param {boolean} ignoreNotFoundError If
`true` then it doesn't throw `ConfigurationNotFoundError`.\n * @returns
{ConfigArray} The loaded config.\n * @private\n */\n
_finalizeConfigArray(configArray, directoryPath, ignoreNotFoundError) {\n
const {\n cliConfigArray,\n configArrayFactory,\n
finalizeCache,\n useEslintrc,\n builtInRules\n } =
internalSlotsMap.get(this);\n\n let finalConfigArray =
finalizeCache.get(configArray);\n\n if (!finalConfigArray) {\n
finalConfigArray = configArray;\n\n // Load the personal config if there
are no regular config files.\n if (\n useEslintrc &&\n
configArray.every(c => !c.filePath) &&\n cliConfigArray.every(c => !
c.filePath) // `--config` option can be a file.\n ) {\n
const homePath = os.homedir();\n\n debug(\"Loading the config file
of the home directory:\", homePath);\n\n const personalConfigArray =
configArrayFactory.loadInDirectory(\n homePath,\n
{ name: \"PersonalConfig\" }\n );\n\n if (\n
personalConfigArray.length > 0 &&\n !
directoryPath.startsWith(homePath)\n ) {\n const
lastElement =\n
personalConfigArray[personalConfigArray.length - 1];\n\n
emitDeprecationWarning(\n lastElement.filePath,\n
\"ESLINT_PERSONAL_CONFIG_LOAD\"\n );\n }\n\n
finalConfigArray = finalConfigArray.concat(personalConfigArray);\n }\n\n
// Apply CLI options.\n if (cliConfigArray.length > 0) {\n
finalConfigArray = finalConfigArray.concat(cliConfigArray);\n }\n\n
// Validate rule settings and environments.\n const validator = new
ConfigValidator({\n builtInRules\n });\n\n
validator.validateConfigArray(finalConfigArray);\n\n // Cache it.\n
Object.freeze(finalConfigArray);\n finalizeCache.set(configArray,
finalConfigArray);\n\n debug(\n \"Configuration was
determined: %o on %s\",\n finalConfigArray,\n
directoryPath\n );\n }\n\n // At least one element (the
default ignore patterns) exists.\n if (!ignoreNotFoundError && useEslintrc
&& finalConfigArray.length <= 1) {\n throw new
ConfigurationNotFoundError(directoryPath);\n }\n\n return
finalConfigArray;\n }\n}\n\
n//------------------------------------------------------------------------------\
n// Public Interface\
n//------------------------------------------------------------------------------\
n\nexport { CascadingConfigArrayFactory };\n","/**\n * @fileoverview Compatibility
class for flat config.\n * @author Nicholas C. Zakas\n */\n\
n//-----------------------------------------------------------------------------\
n// Requirements\
n//-----------------------------------------------------------------------------\n\
nimport createDebug from \"debug\";\nimport path from \"path\";\n\nimport
environments from \"../conf/environments.js\";\nimport { ConfigArrayFactory }
from \"./config-array-factory.js\";\n\
n//-----------------------------------------------------------------------------\
n// Helpers\
n//-----------------------------------------------------------------------------\n\
n/** @typedef {import(\"../../shared/types\").Environment} Environment */\n/**
@typedef {import(\"../../shared/types\").Processor} Processor */\n\nconst debug =
createDebug(\"eslintrc:flat-compat\");\nconst cafactory = Symbol(\"cafactory\");\n\
n/**\n * Translates an ESLintRC-style config object into a flag-config-style
config\n * object.\n * @param {Object} eslintrcConfig An ESLintRC-style config
object.\n * @param {Object} options Options to help translate the config.\n *
@param {string} options.resolveConfigRelativeTo To the directory to resolve\n *
configs from.\n * @param {string} options.resolvePluginsRelativeTo The directory to
resolve\n * plugins from.\n * @param {ReadOnlyMap<string,Environment>}
options.pluginEnvironments A map of plugin environment\n * names to objects.\n
* @param {ReadOnlyMap<string,Processor>} options.pluginProcessors A map of plugin
processor\n * names to objects.\n * @returns {Object} A flag-config-style
config object.\n */\nfunction translateESLintRC(eslintrcConfig, {\n
resolveConfigRelativeTo,\n resolvePluginsRelativeTo,\n pluginEnvironments,\n
pluginProcessors\n}) {\n\n const flatConfig = {};\n const configs = [];\n
const languageOptions = {};\n const linterOptions = {};\n const keysToCopy =
[\"settings\", \"rules\", \"processor\"];\n const languageOptionsKeysToCopy =
[\"globals\", \"parser\", \"parserOptions\"];\n const linterOptionsKeysToCopy =
[\"noInlineConfig\", \"reportUnusedDisableDirectives\"];\n\n // check for
special settings for eslint:all and eslint:recommended:\n if
(eslintrcConfig.settings) {\n if (eslintrcConfig.settings[\"eslint:all\"]
=== true) {\n return [\"eslint:all\"];\n }\n\n if
(eslintrcConfig.settings[\"eslint:recommended\"] === true) {\n return
[\"eslint:recommended\"];\n }\n }\n\n // copy over simple
translations\n for (const key of keysToCopy) {\n if (key in
eslintrcConfig && typeof eslintrcConfig[key] !== \"undefined\") {\n
flatConfig[key] = eslintrcConfig[key];\n }\n }\n\n // copy over
languageOptions\n for (const key of languageOptionsKeysToCopy) {\n if
(key in eslintrcConfig && typeof eslintrcConfig[key] !== \"undefined\") {\n\n
// create the languageOptions key in the flat config\n
flatConfig.languageOptions = languageOptions;\n\n if (key
=== \"parser\") {\n debug(`Resolving parser '$
{languageOptions[key]}' relative to ${resolveConfigRelativeTo}`);\n\n
if (eslintrcConfig[key].error) {\n throw
eslintrcConfig[key].error;\n }\n\n
languageOptions[key] = eslintrcConfig[key].definition;\n continue;\n
}\n\n // clone any object values that are in the eslintrc config\n
if (eslintrcConfig[key] && typeof eslintrcConfig[key] === \"object\") {\n
languageOptions[key] = {\n ...eslintrcConfig[key]\n
};\n } else {\n languageOptions[key] =
eslintrcConfig[key];\n }\n }\n }\n\n // copy over
linterOptions\n for (const key of linterOptionsKeysToCopy) {\n if (key in
eslintrcConfig && typeof eslintrcConfig[key] !== \"undefined\") {\n
flatConfig.linterOptions = linterOptions;\n linterOptions[key] =
eslintrcConfig[key];\n }\n }\n\n // move ecmaVersion a level up\n
if (languageOptions.parserOptions) {\n\n if (\"ecmaVersion\" in
languageOptions.parserOptions) {\n languageOptions.ecmaVersion =
languageOptions.parserOptions.ecmaVersion;\n delete
languageOptions.parserOptions.ecmaVersion;\n }\n\n if (\"sourceType\"
in languageOptions.parserOptions) {\n languageOptions.sourceType =
languageOptions.parserOptions.sourceType;\n delete
languageOptions.parserOptions.sourceType;\n }\n\n // check to see if
we even need parserOptions anymore and remove it if not\n if
(Object.keys(languageOptions.parserOptions).length === 0) {\n delete
languageOptions.parserOptions;\n }\n }\n\n // overrides\n if
(eslintrcConfig.criteria) {\n flatConfig.files = [absoluteFilePath =>
eslintrcConfig.criteria.test(absoluteFilePath)];\n }\n\n // translate
plugins\n if (eslintrcConfig.plugins && typeof eslintrcConfig.plugins
=== \"object\") {\n debug(`Translating plugins: $
{eslintrcConfig.plugins}`);\n\n flatConfig.plugins = {};\n\n for
(const pluginName of Object.keys(eslintrcConfig.plugins)) {\n\n
debug(`Translating plugin: ${pluginName}`);\n debug(`Resolving plugin '$
{pluginName} relative to ${resolvePluginsRelativeTo}`);\n\n const
{ definition: plugin, error } = eslintrcConfig.plugins[pluginName];\n\n
if (error) {\n throw error;\n }\n\n
flatConfig.plugins[pluginName] = plugin;\n\n // create a config for any
processors\n if (plugin.processors) {\n for (const
processorName of Object.keys(plugin.processors)) {\n if
(processorName.startsWith(\".\")) {\n debug(`Assigning
processor: ${pluginName}/${processorName}`);\n\n
configs.unshift({\n files: [`**/*${processorName}`],\n
processor: pluginProcessors.get(`${pluginName}/${processorName}`)\n
});\n }\n\n }\n }\n }\n }\n\
n // translate env - must come after plugins\n if (eslintrcConfig.env &&
typeof eslintrcConfig.env === \"object\") {\n for (const envName of
Object.keys(eslintrcConfig.env)) {\n\n // only add environments that are
true\n if (eslintrcConfig.env[envName]) {\n
debug(`Translating environment: ${envName}`);\n\n
if (environments.has(envName)) {\n\n // built-in
environments should be defined first\n
configs.unshift(...translateESLintRC(environments.get(envName), {\n
resolveConfigRelativeTo,\n resolvePluginsRelativeTo\n
}));\n } else if (pluginEnvironments.has(envName)) {\n\n
// if the environment comes from a plugin, it should come after the plugin config\n
configs.push(...translateESLintRC(pluginEnvironments.get(envName), {\n
resolveConfigRelativeTo,\n resolvePluginsRelativeTo\n
}));\n }\n }\n }\n }\n\n // only add if
there are actually keys in the config\n if (Object.keys(flatConfig).length > 0)
{\n configs.push(flatConfig);\n }\n\n return configs;\n}\n\n\
n//-----------------------------------------------------------------------------\
n// Exports\
n//-----------------------------------------------------------------------------\n\
n/**\n * A compatibility class for working with configs.\n */\nclass FlatCompat {\
n\n constructor({\n baseDirectory = process.cwd(),\n
resolvePluginsRelativeTo = baseDirectory\n } = {}) {\n this.baseDirectory
= baseDirectory;\n this.resolvePluginsRelativeTo =
resolvePluginsRelativeTo;\n this[cafactory] = new ConfigArrayFactory({\n
cwd: baseDirectory,\n resolvePluginsRelativeTo,\n
getEslintAllConfig: () => ({ settings: { \"eslint:all\": true } }),\n
getEslintRecommendedConfig: () => ({ settings: { \"eslint:recommended\": true } })\
n });\n }\n\n /**\n * Translates an ESLintRC-style config into a
flag-config-style config.\n * @param {Object} eslintrcConfig The ESLintRC-style
config object.\n * @returns {Object} A flag-config-style config object.\n
*/\n config(eslintrcConfig) {\n const eslintrcArray =
this[cafactory].create(eslintrcConfig, {\n basePath: this.baseDirectory\
n });\n\n const flatArray = [];\n let hasIgnorePatterns =
false;\n\n eslintrcArray.forEach(configData => {\n if
(configData.type === \"config\") {\n hasIgnorePatterns =
hasIgnorePatterns || configData.ignorePattern;\n
flatArray.push(...translateESLintRC(configData, {\n
resolveConfigRelativeTo: path.join(this.baseDirectory, \"__placeholder.js\"),\n
resolvePluginsRelativeTo:
path.join(this.resolvePluginsRelativeTo, \"__placeholder.js\"),\n
pluginEnvironments: eslintrcArray.pluginEnvironments,\n
pluginProcessors: eslintrcArray.pluginProcessors\n }));\n
}\n });\n\n // combine ignorePatterns to emulate ESLintRC behavior
better\n if (hasIgnorePatterns) {\n flatArray.unshift({\n
ignores: [filePath => {\n\n // Compute the final config for this
file.\n // This filters config array elements by
`files`/`excludedFiles` then merges the elements.\n const
finalConfig = eslintrcArray.extractConfig(filePath);\n\n // Test
the `ignorePattern` properties of the final config.\n return
Boolean(finalConfig.ignores) && finalConfig.ignores(filePath);\n }]\
n });\n }\n\n return flatArray;\n }\n\n /**\n *
Translates the `env` section of an ESLintRC-style config.\n * @param {Object}
envConfig The `env` section of an ESLintRC config.\n * @returns {Object} A
flag-config object representing the environments.\n */\n env(envConfig) {\n
return this.config({\n env: envConfig\n });\n }\n\n /**\n
* Translates the `extends` section of an ESLintRC-style config.\n * @param
{...string} configsToExtend The names of the configs to load.\n * @returns
{Object} A flag-config object representing the config.\n */\n
extends(...configsToExtend) {\n return this.config({\n extends:
configsToExtend\n });\n }\n\n /**\n * Translates the `plugins`
section of an ESLintRC-style config.\n * @param {...string} plugins The names
of the plugins to load.\n * @returns {Object} A flag-config object representing
the plugins.\n */\n plugins(...plugins) {\n return this.config({\n
plugins\n });\n }\n}\n\nexport { FlatCompat };\n","/**\n * @fileoverview
Package exports for @eslint/eslintrc\n * @author Nicholas C. Zakas\n */\
n//------------------------------------------------------------------------------\
n// Requirements\
n//------------------------------------------------------------------------------\
n\nimport {\n ConfigArrayFactory,\n createContext as
createConfigArrayFactoryContext\n} from \"./config-array-factory.js\";\n\nimport
{ CascadingConfigArrayFactory } from \"./cascading-config-array-factory.js\";\
nimport * as ModuleResolver from \"./shared/relative-module-resolver.js\";\nimport
{ ConfigArray, getUsedExtractedConfigs } from \"./config-array/index.js\";\nimport
{ ConfigDependency } from \"./config-array/config-dependency.js\";\nimport
{ ExtractedConfig } from \"./config-array/extracted-config.js\";\nimport
{ IgnorePattern } from \"./config-array/ignore-pattern.js\";\nimport
{ OverrideTester } from \"./config-array/override-tester.js\";\nimport * as
ConfigOps from \"./shared/config-ops.js\";\nimport ConfigValidator from
\"./shared/config-validator.js\";\nimport * as naming from \"./shared/naming.js\";\
nimport { FlatCompat } from \"./flat-compat.js\";\nimport environments from
\"../conf/environments.js\";\n\
n//-----------------------------------------------------------------------------\
n// Exports\
n//-----------------------------------------------------------------------------\n\
nconst Legacy = {\n ConfigArray,\n createConfigArrayFactoryContext,\n
CascadingConfigArrayFactory,\n ConfigArrayFactory,\n ConfigDependency,\n
ExtractedConfig,\n IgnorePattern,\n OverrideTester,\n
getUsedExtractedConfigs,\n environments,\n\n // shared\n ConfigOps,\n
ConfigValidator,\n ModuleResolver,\n naming\n};\n\nexport {\n\n Legacy,\n\
n FlatCompat\n\n};\n"],"names":
["debug","debugOrig","path","ignore","assert","internalSlotsMap","util","minimatch"
,"Ajv","globals","BuiltInEnvironments","ConfigOps.normalizeConfigGlobal","Module","
require","createRequire","fs","stripComments","importFresh","ModuleResolver.resolve
","naming.normalizePackageName","naming.getShorthandName","os","createDebug","creat
eConfigArrayFactoryContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAC
A;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A
ACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAUA;AACA,MAAMA,OAAK,GAAGC,6B
AAS,CAAC,yBAAyB,CAAC,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A
ACA;AACA,SAAS,qBAAqB,CAAC,WAAW,EAAE;AAC5C,IAAI,IAAI,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,C
AAC;AAChC;AACA,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,EAA
E,CAAC,EAAE;AACjD,QAAQ,MAAM,CAAC,GAAG,MAAM,CAAC;AACzB,QAAQ,MAAM,CAAC,GAAG,WAAW,CAAC
,CAAC,CAAC,CAAC;AACjC;AACA;AACA,QAAQ,MAAM,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,G
AAG,CAAC,GAAG,CAAC,CAAC;AAC7C;AACA;AACA,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,GAA
G,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,E
AAE;AAC3E,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;AAC/
B,gBAAgB,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;AAChD,gBAAgB,MAAM;A
ACtB,aAAa;AACb,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,KAAKC,wBAAI,CAAC,GAAG,EAAE;AACnC,gBAAg
B,UAAU,GAAG,CAAC,CAAC;AAC/
B,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA,IAAI,IAAI,cAAc,GAAG,MAAM,IAAIA,wBAAI,CAAC,GAAG
,CAAC;AAC5C;AACA;AACA,IAAI,IAAI,cAAc,IAAI,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,OAAO,C
AAC,QAAQ,KAAK,OAAO,EAAE;AACxF,QAAQ,cAAc,IAAIA,wBAAI,CAAC,GAAG,CAAC;AACnC,KAAK;AACL,
IAAI,OAAO,cAAc,CAAC;AAC1B,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,QAAQ,CA
AC,IAAI,EAAE,EAAE,EAAE;AAC5B,IAAI,MAAM,OAAO,GAAGA,wBAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EA
AE,CAAC,CAAC;AAC5C;AACA,IAAI,IAAIA,wBAAI,CAAC,GAAG,KAAK,GAAG,EAAE;AAC1B,QAAQ,OAAO,O
AAO,CAAC;AACvB,KAAK;AACL,IAAI,OAAO,OAAO,CAAC,KAAK,CAACA,wBAAI,CAAC,GAAG,CAAC,CAAC,I
AAI,CAAC,GAAG,CAAC,CAAC;AAC7C,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,SAAS,CAA
C,QAAQ,EAAE;AAC7B,IAAI,MAAM,KAAK;AACf,QAAQ,QAAQ,CAAC,QAAQ,CAACA,wBAAI,CAAC,GAAG,CAA
C;AACnC,SAAS,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAChE
,KAAK,CAAC;AACN;AACA,IAAI,OAAO,KAAK,GAAG,GAAG,GAAG,EAAE,CAAC;AAC5B,CAAC;AACD;AACA,M
AAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAC9D,MAAM,WAAW,GAAG,M
AAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;AAClE;AACA;AACA;AAC
A;AACA;AACA,MAAM,aAAa,CAAC;AACpB;AACA;AACA;AACA;AACA;AACA,IAAI,WAAW,eAAe,GAAG;AACjC
,QAAQ,OAAO,eAAe,CAAC;AAC/
B,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,OAAO,mBAAmB,CAAC
,GAAG,EAAE;AACpC,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,aAAa,CAAC,eAAe,EAAE,GAAG,C
AAC,CAAC,CAAC,CAAC;AAC5E,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC
A,IAAI,OAAO,YAAY,CAAC,cAAc,EAAE;AACxC,QAAQF,OAAK,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;AA
CjD;AACA,QAAQ,MAAM,QAAQ,GAAG,qBAAqB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QA
AQ,CAAC,CAAC,CAAC;AACpF,QAAQ,MAAM,QAAQ,GAAG,EAAE,CAAC,MAAM;AAClC,YAAY,GAAG,cAAc,CAA
C,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AACzE,SAAS,CAAC;AACV,QAA
Q,MAAM,EAAE,GAAGG,0BAAM,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GA
AG,WAAW,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;AAC3F,QAAQ,MAAM,KAAK,GAAGA,0BAAM,CAAC,EAAE,kB
AAkB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACzE;AACA,QAAQH,OAAK,CAAC,i
BAAiB,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AACzD;AACA,QAAQ,OAAO,MAAM,CAAC,MAAM;A
AC5B,YAAY,CAAC,QAAQ
,EAAE,GAAG,GAAG,KAAK,KAAK;AACvC,gBAAgBI,0BAAM,CAACF,wBAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,
EAAE,wCAAwC,CAAC,CAAC;AAC5F,gBAAgB,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAA
C;AAChE,gBAAgB,MAAM,OAAO,GAAG,UAAU,KAAK,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC
jF,gBAAgB,MAAM,SAAS,GAAG,GAAG,GAAG,KAAK,GAAG,EAAE,CAAC;AACnD,gBAAgB,MAAM,MAAM,GAAG,
OAAO,KAAK,EAAE,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAC5E;AACA,gBAAgBF,OAAK,CAAC
,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AACjF,g
BAAgB,OAAO,MAAM,CAAC;AAC9B,aAAa;AACb,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE;AAClC,SAAS,CAAC;
AACV,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE;AAC
pC,QAAQI,0BAAM,CAACF,wBAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,wCAAwC,CAAC,CAAC;AACpF;AAC
A;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACjC;AACA;AACA;AACA;AACA;
AACA,QAAQ,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA
CA,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA
;AACA;AACA,IAAI,qBAAqB,CAAC,WAAW,EAAE;AACvC,QAAQE,0BAAM,CAACF,wBAAI,CAAC,UAAU,CAAC,
WAAW,CAAC,EAAE,2CAA2C,CAAC,CAAC;AAC1F,QAAQ,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,
GAAG,IAAI,CAAC;AACnD;AACA,QAAQ,IAAI,WAAW,KAAK,QAAQ,EAAE;AACtC,YAAY,OAAO,QAAQ,CAAC;A
AC5B,SAAS;AACT,QAAQ,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAA
C,CAAC,CAAC;AAC7D;AACA,QAAQ,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,IAAI;AACvC,YAAY,MAAM,QAAQ
,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACrD,YAAY,MAAM,IAAI,GAAG,QAAQ,GAAG,GAAG,G
AAG,EAAE,CAAC;AAC7C,YAAY,MAAM,IAAI,GAAG,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAA
G,OAAO,CAAC;AAC/
D;AACA,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,E
AAE;AAChE,gBAAgB,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;A
ACjD,aAAa;AACb,YAAY,OAAO,KAAK,GAAG,OAAO,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,IAA
I,EAAE,IAAI,CAAC,CAAC,CAAC;AACnE,SAAS,CAAC,CAAC;AACX,KAAK;AACL;;AC3OA;AACA;AACA;AAC
A;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;A
ACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,UAAU,CAAC,EAAE,EAAE
,EAAE,EAAE;AAC5B,IAAI,OAAO,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,KAAK,C
AAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC;AAC
D;AACA;AACA;AACA;AACA,MAAM,eAAe,CAAC;AACtB,IAAI,WAAW,GAAG;AAClB;AACA;AACA;AACA;AACA
;AACA,QAAQ,IAAI,CAAC,0BAA0B,GAAG,EAAE,CAAC;AAC7C;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI
,CAAC,GAAG,GAAG,EAAE,CAAC;AACtB;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,OAAO,GAAG,E
AAE,CAAC;AAC1B;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;AAC
9B;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC;AACrC;AACA;AACA
;AACA;AACA;AACA,QAAQ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;AAC3B;AACA;AACA;AACA;AACA;AACA,Q
AAQ,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;AAChC;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,OAA
O,GAAG,EAAE,CAAC;AAC1B;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;
AAC9B;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,6BAA6B,GAAG,KAAK,CAAC,CAAC;AACpD;AACA
;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;AACxB;AACA;AACA;AACA;AACA;A
ACA,QAAQ,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;AAC3B,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,IAA
I,qCAAqC,GAAG;AAC5C,QAAQ,MAAM;AACd;AACA,YAAY,0BAA0B,EAAE,QAAQ;AAChD,YAAY,SAAS,EAAE,
QAAQ;AAC/
B;AACA,YAAY,OAAO;AACnB,YAAY,GAAG,MAAM;AACrB,SAAS,GAAG,IAAI,CAAC;AACjB;AACA,QAAQ,MAA
M,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;AAChE,QAAQ,MAAM,
CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAA
C,OAAO,EAAE,CAAC;AAC/
E,QAAQ,MAAM,CAAC,cAAc,GAAG,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC;AAChE;AACA;AACA,
QAAQ,IAAI,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,eAAe,CAAC,EAAE;AAC9E,YAAY,MAAM,CA
AC,cAAc;AACjC,gBAAgB,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC,CA
AC;AAClF,SAAS;AACT;AACA,QAAQ,OAAO,MAAM,CAAC;AACtB,KAAK;AACL;;AC9IA;AACA;AACA;AACA;A
ACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA
;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA
CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;
AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC
A;AACA,MAAMG,kBAAgB,GAAG,IAAI,cAAc,OAAO,CAAC;AACnD,IAAI,GAAG,CAAC,GAAG,EAAE;AACb,QA
AQ,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACnC;AACA,QAAQ,IAAI,CAAC,KAAK
,EAAE;AACpB,YAAY,KAAK,GAAG;AACpB,gBAAgB,KAAK,EAAE,IAAI,GAAG,EAAE;AAChC,gBAAgB,MAAM,
EAAE,IAAI;AAC5B,gBAAgB,YAAY,EAAE,IAAI;AAClC,gBAAgB,OAAO,EAAE,IAAI;AAC7B,aAAa,CAAC;A
ACd,YAAY,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAClC,SAAS;AACT;AACA,QAAQ,OAA
O,KAAK,CAAC;AACrB,KAAK;AACL,CAAC,EAAE,CAAC;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,
SAAS,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE;AAC/
C,IAAI,MAAM,OAAO,GAAG,EAAE,CAAC;AACvB;AACA,IAAI,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,
GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;AACnD,QAAQ,MAAM,OAAO,GAAG,QAAQ,CA
AC,CAAC,CAAC,CAAC;AACpC;AACA,QAAQ,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,CAAC
,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE;AAChF,YAAY,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,C
AAC;AAC5B,SAAS;AACT,KAAK;AACL;AACA,IAAI,OAAO,OAAO,CAAC;AACnB,CAAC;AACD;AACA;AACA;AA
CA;AACA;AACA;AACA,SAAS,eAAe,CAAC,CAAC,EAAE;AAC5B,IAAI,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI
,CAAC,KAAK,IAAI,CAAC;AAC/
C,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,qBAAqB,CAAC,MAAM
,EAAE,MAAM,EAAE;AAC/
C,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;AAClC,QAAQ,OAAO;AACf,KAAK;AACL;AACA,IAAI,
KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AAC3C,QAAQ,IAAI,GAAG,KAAK,WA
AW,EAAE;AACjC,YAAY,SAAS;AACrB,SAAS;AACT;AACA,QAAQ,IAAI,eAAe,CAAC,MAAM,CAAC,GAAG,CAA
C,CAAC,EAAE;AAC1C,YAAY,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAA
C,CAAC;AAC5D,SAAS,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,EAAE;AAC3C,YAAY,IAAI
,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;AAC9C,gBAAgB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK
,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;AACnE,gBAAgB,qBAA
qB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAChE,aAAa,MAAM,IAAI
,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,EAAE;AAC/
C,gBAAgB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1C,aAAa;AACb,SAAS;AAC
T,KAAK;AACL,CAAC;AACD;AACA;AACA;AACA;AACA,MAAM,mBAAmB,SAAS,KAAK,CAAC;AACxC;AACA;AAC
A;AACA;AACA;AACA;AACA,IAAI,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE;AACnC,QAAQ,KAAK,CAAC,CAAC,
QAAQ,EAAE,QAAQ,CAAC,yBAAyB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,C
AAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACv
H,QAAQ,IAAI,CAAC,eAAe,GAAG,iBAAiB,CAAC;AACjD,QAAQ,IAAI,CAAC,WAAW,GAAG,EAAE,QAAQ,EAA
E,OAAO,EAAE,CAAC;AACjD,KAAK;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,
SAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE;AACtC,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;AA
ClC,QAAQ,OAAO;AACf,KAAK;AACL;AACA,IAAI,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM
,CAAC,EAAE;AAC3C,QAAQ,IAAI,GAAG,KAAK,WAAW,EAAE;AACjC,YAAY,SAAS;AACrB,SAAS;AACT,QAAQ
,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;AACxC,QAAQ,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,C
AAC,CAAC;AACxC;AACA;AACA,QAAQ,IAAI,WAAW,KAAK,KAAK,CAAC,EAAE;AACpC,YAAY,IAAI,WAAW,CA
AC,KAAK,EAAE;AACnC,gBAAgB,MAAM,WAAW,CAAC,KAAK,CAAC;AACxC,aAAa;AACb,YAAY,MAAM,CAAC,G
AAG,CAAC,GAAG,WAAW,CAAC;AACtC,SAAS,MAAM,IAAI,WAAW,CAAC,QAAQ,KAAK,WAAW,CAAC,QAAQ,EAA
E;AAClE,YAAY,MAAM,IAAI,mBAAmB,CAAC,GAAG,EAAE;AAC/
C,gBAAgB;AAChB,oBAAoB,QAAQ,EAAE,WAAW,CAAC,QAAQ;AAClD,oBAAoB,YAAY,EAAE,WAAW,CAAC,YAA
Y;AAC1D,iBAAiB;AACjB,gBAAgB;AAChB,oBAAoB,QAAQ,EAAE,WAAW,CAAC,QAAQ;AAClD,oBAAoB,YAAY
,EAAE,WAAW,CAAC,YAAY;AAC1D,iBAAiB;AACjB,aAAa,CAAC,CAAC;AACf,SAAS;AACT,KAAK;AACL,CAA
C;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE
;AAC1C,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;AAClC,QAAQ,OAAO;AACf,KAAK;AACL;AACA,
IAAI,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AAC3C,QAAQ,IAAI,GAAG,KA
AK,WAAW,EAAE;AACjC,YAAY,SAAS;AACrB,SAAS;AACT,QAAQ,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAA
C,CAAC;AACtC,QAAQ,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;AACtC;AACA;AACA,QAAQ,IAAI
,SAAS,KAAK,KAAK,CAAC,EAAE;AAClC,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;AAC1C,
gBAAgB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;AAC7C,aAAa,MAAM;AACnB,gBAA
gB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC1C,aAAa;AACb;AACA;AACA;AACA;AACA
;AACA,SAAS,MAAM;AACf,YAAY,SAAS,CAAC,MAAM,KAAK,CAAC;AAClC,YAAY,KAAK,CAAC,OAAO,CAAC,S
AAS,CAAC;AACpC,YAAY,SAAS,CAAC,MAAM,IAAI,CAAC;AACjC,UAAU;AACV,YAAY,SAAS,CAAC,IAAI,CA
AC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,SAAS;AACT,KAAK;AACL,CAAC;AACD
;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE;AACzC,IAAI,M
AAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;AACzC,IAAI,MAAM,cAAc,GAAG,EAAE,CAAC;AAC9B;AACA;AA
CA,IAAI,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;AACjC,QAAQ,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC
,CAAC;AACxC;AACA;AACA,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE;AAC9C,
YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE;AACtC,gBAAgB,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,
CAAC;AAC3C,aAAa;AACb,YAAY,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;AAC3C,SAAS;AACT;A
ACA;AACA,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE;AACpD,YAAY,MAAM,CAA
C,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;AACjD,SAAS;AACT;AACA;AACA,QAAQ,IAAI,MAAM,CAAC,cAAc,
KAAK,KAAK,CAAC,IAAI,OAAO,CAAC,cAAc,KAAK,KAAK,CAAC,EAAE;AACnF,YAAY,MAAM,CAAC,cAAc,GA
AG,OAAO,CAAC,cAAc,CAAC;AAC3D,YAAY,MAAM,CAAC,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;AAC7D,S
AAS;AACT;AACA;AACA,QAAQ,IAAI,MAAM,CAAC,6BAA6B,KAAK,KAAK,CAAC,IAAI,OAAO,CAAC,6BAA6B,
KAAK,KAAK,CAAC,EAAE;AACjH,YAAY,MAAM,CAAC,6BAA6B,GAAG,OAAO,CAAC,6BAA6B,CAAC;AACzF,SA
AS;AACT;AACA;AACA,QAAQ,IAAI,OAAO,CAAC,aAAa,EAAE;AACnC,YAAY,cAAc,CAAC,IAAI,CAAC,OAAO
,CAAC,aAAa,CAAC,CAAC;AACvD,SAAS;AACT;AACA;AACA,QAAQ,qBAAqB,CAAC,MAAM,CAAC,GAAG,EAAE
,OAAO,CAAC,GAAG,CAAC,CAAC;AACvD,QAAQ,qBAAqB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO
,CAAC,CAAC;AAC/
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
EAAE,OAAO;AAC/
B,YAAY,GAAG,GAAG;AAClB,SAAS,GAAG,IAAI,CAAC;AACjB;AACA,QAAQ,OAAO,GAAG,CAAC;AACnB,KAA
K;AACL;;AC7GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA
;AACA;AACA;AACA;AAMA;AACA,MAAM,EAAE,SAAS,EAAE,GAAGC,6BAAS,CAAC;AAChC;AACA,MAAM,aAAa
,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AACrD;AACA;AACA;AACA;AACA;A
ACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB,CAAC,QAAQ,EAAE;AACrC,IAAI,I
AAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AACjC,QAAQ,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAA
C,CAAC;AACxC,KAAK;AACL,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,EAAE;AAClD,QAAQ,OAAO
,CAAC,QAAQ,CAAC,CAAC;AAC1B,KAAK;AACL,IAAI,OAAO,EAAE,CAAC;AACd,CAAC;AACD;AACA;AACA;A
ACA;AACA;AACA;AACA,SAAS,SAAS,CAAC,QAAQ,EAAE;AAC7B,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,CAA
C,EAAE;AAC/
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
AK,EAAE,CAAC,EAAE,IAAI,EAAE,
+BAA+B,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AAC9E,SAAS;AACT,QAAQ,WAAW,EAAE;AACrB
,YAAY,IAAI,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QA
AQ,CAAC;AACvF,SAAS;AACT,QAAQ,WAAW,EAAE;AACrB,YAAY,IAAI,EAAE,OAAO;AACzB,YAAY,KAAK,EA
AE,EAAE,IAAI,EAAE,QAAQ,EAAE;AACrC,YAAY,QAAQ,EAAE,CAAC;AACvB,YAAY,WAAW,EAAE,IAAI;AAC
7B,SAAS;AACT,KAAK;AACL,IAAI,IAAI,EAAE,QAAQ;AAClB,IAAI,UAAU,EAAE;AAChB,QAAQ,EAAE,EAA
E;AACZ,YAAY,IAAI,EAAE,QAAQ;AAC1B,SAAS;AACT,QAAQ,OAAO,EAAE;AACjB,YAAY,IAAI,EAAE,QAAQ
;AAC1B,SAAS;AACT,QAAQ,KAAK,EAAE;AACf,YAAY,IAAI,EAAE,QAAQ;AAC1B,SAAS;AACT,QAAQ,WAAW,
EAAE;AACrB,YAAY,IAAI,EAAE,QAAQ;AAC1B,SAAS;AACT,QAAQ,OAAO,EAAE,GAAG;AACpB,QAAQ,UAAU,
EAAE;AACpB,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,OAAO,EAAE,CAAC;AACtB,YAAY,gBAAgB,EAAE,IAA
I;AAClC,SAAS;AACT,QAAQ,OAAO,EAAE;AACjB,YAAY,IAAI,EAAE,QAAQ;AAC1B,SAAS;AACT,QAAQ,gBA
AgB,EAAE;AAC1B,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,OAAO,EAAE,KAAK;AAC1B,SAAS;AACT,QAAQ,O
AAO,EAAE;AACjB,YAAY,IAAI,EAAE,QAAQ;AAC1B,SAAS;AACT,QAAQ,gBAAgB,EAAE;AAC1B,YAAY,IAAI
,EAAE,SAAS;AAC3B,YAAY,OAAO,EAAE,KAAK;AAC1B,SAAS;AACT,QAAQ,SAAS,EAAE,EAAE,IAAI,EAAE,
+BAA+B,EAAE;AAC5D,QAAQ,SAAS,EAAE,EAAE,IAAI,EAAE,uCAAuC,EAAE;AACpE,QAAQ,OAAO,EAAE;AA
CjB,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,MAAM,EAAE,OAAO;AAC3B,SAAS;AACT,QAAQ,eAAe,EAAE;AA
CzB,YAAY,KAAK,EAAE;AACnB,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE;AACnC,gBAAgB,EAAE,IAAI,EAA
E,GAAG,EAAE;AAC7B,aAAa;AACb,YAAY,OAAO,EAAE,GAAG;AACxB,SAAS;AACT,QAAQ,KAAK,EAAE;AACf
,YAAY,KAAK,EAAE;AACnB,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE;AAC7B,gBAAgB,EAAE,IAAI,EAAE,2
BAA2B,EAAE;AACrD,aAAa;AACb,YAAY,OAAO,EAAE,GAAG;AACxB,SAAS;AACT,QAAQ,QAAQ,EAAE,EAAE,
IAAI,EAAE,
+BAA+B,EAAE;AAC3D,QAAQ,QAAQ,EAAE,EAAE,IAAI,EAAE,uCAAuC,EAAE;AACnE,QAAQ,WAAW,EAAE;AA
CrB,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,OAAO,EAAE,KAAK;AAC1B,SAAS;AACT,QAAQ,aAAa,EAAE,EA
AE,IAAI,EAAE,
+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
AE,QAAQ,EAAE;AAC/
B,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AAC3B,IAAI,OAAO,EAAE,EAAE,IAAI,EAAE,
+BAA+B,EAAE;AACtD,IAAI,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AAC/
B,IAAI,SAAS,EAAE;AACf,QAAQ,IAAI,EAAE,OAAO;AACrB,QAAQ,KAAK,EAAE,EAAE,IAAI,EAAE,8BAA8
B,EAAE;AACvD,QAAQ,eAAe,EAAE,KAAK;AAC9B,KAAK;AACL,IAAI,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC
,QAAQ,EAAE,MAAM,CAAC,EAAE;AACxC,IAAI,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AACrC,IAAI,
OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AAC9B,IAAI,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AA
CjC,IAAI,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AAC7B,IAAI,QAAQ,EAAE,EAAE,IAAI,EAAE,QAA
Q,EAAE;AAChC,IAAI,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;AACvC,IAAI,6BAA6B,EAAE,EAAE,IA
AI,EAAE,SAAS,EAAE;AACtD;AACA,IAAI,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AACpC,CAAC,CAA
C;AACF;AACA,MAAM,YAAY,GAAG;AACrB,IAAI,WAAW,EAAE;AACjB,QAAQ,eAAe,EAAE;AACzB,YAAY,KAA
K,EAAE;AACnB,gBAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE;AAClC,gBAAgB;AAChB,oBAAoB,IAAI,EAAE,OA
AO;AACjC,oBAAoB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AAC7C,oBAAoB,eAAe,EAAE,KAAK;AAC1
C,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT,QAAQ,uBAAuB,EAAE;AACjC,YAAY,KAAK,EAAE;AACnB,gBAA
gB,EAAE,IAAI,EAAE,QAAQ,EAAE;AAClC,gBAAgB;AAChB,oBAAoB,IAAI,EAAE,OAAO;AACjC,oBAAoB,K
AAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;AAC7C,oBAAoB,eAAe,EAAE,KAAK;AAC1C,oBAAoB,QAAQ,EAA
E,CAAC;AAC/
B,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA,QAAQ,YAAY,EAAE;AACtB,YAAY,IAAI,EAAE,QA
AQ;AAC1B,YAAY,UAAU,EAAE;AACxB,gBAAgB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;AACzC,gBAAg
B,cAAc,EAAE,EAAE,IAAI,EAAE,
+BAA+B,EAAE;AACzE,gBAAgB,GAAG,oBAAoB;AACvC,aAAa;AACb,YAAY,oBAAoB,EAAE,KAAK;AACvC,SA
AS;AACT;AACA;AACA,QAAQ,cAAc,EAAE;AACxB,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,UAAU,EAAE;AAC
xB,gBAAgB,aAAa,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE;AACxE,gBAAgB,KAAK,EAAE
,EAAE,IAAI,EAAE,uCAAuC,EAAE;AACxE,gBAAgB,GAAG,oBAAoB;AACvC,aAAa;AACb,YAAY,QAAQ,EAAE
,CAAC,OAAO,CAAC;AAC/
B,YAAY,oBAAoB,EAAE,KAAK;AACvC,SAAS;AACT,KAAK;AACL;AACA,IAAI,IAAI,EAAE,4BAA4B;AACtC,
CAAC;;AC5ED;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A
ACA,SAAS,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE;AAChC,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;AACpB;AA
CA,IAAI,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;
AACxD,QAAQ,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;AACpD,Y
AAY,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC9B,SAAS;AACT,KAAK;AACL;AACA,IAAI,OAAO,IAA
I,CAAC;AAChB,CAAC;AACD;AACA,MAAM,cAAc,GAAG,OAAO,CAACC,2BAAO,CAAC,MAAM,EAAEA,2BAAO,C
AAC,GAAG,CAAC,CAAC;AAC5D,MAAM,cAAc,GAAG;AACvB,IAAI,OAAO,EAAE,KAAK;AAClB,IAAI,iBAAiB
,EAAE,KAAK;AAC5B,CAAC,CAAC;AACF,MAAM,cAAc,GAAG;AACvB,IAAI,MAAM,EAAE,KAAK;AACjB,IAAI
,aAAa,EAAE,KAAK;AACxB,IAAI,cAAc,EAAE,KAAK;AACzB,IAAI,UAAU,EAAE,KAAK;AACrB,CAAC,CAAC
;AACF;AACA,MAAM,cAAc,GAAG;AACvB,IAAI,cAAc,EAAE,KAAK;AACzB,IAAI,oBAAoB,EAAE,KAAK;AAC
/
B,IAAI,OAAO,EAAE,KAAK;AAClB,CAAC,CAAC;AACF;AACA;AACA;AACA;AACA;AACA;AACA,mBAAe,IAAI
,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;AACtC;AACA;AACA,IAAI,OAAO,EAAE;AACb,QAAQ,OAAO,EAAEA,
2BAAO,CAAC,GAAG;AAC5B,KAAK;AACL,IAAI,GAAG,EAAE;AACT,QAAQ,OAAO,EAAE,cAAc;AAC/
B,QAAQ,aAAa,EAAE;AACvB,YAAY,WAAW,EAAE,CAAC;AAC1B,SAAS;AACT,KAAK;AACL,IAAI,MAAM,EAAE
;AACZ,QAAQ,OAAO,EAAE,cAAc;AAC/
B,QAAQ,aAAa,EAAE;AACvB,YAAY,WAAW,EAAE,CAAC;AAC1B,SAAS;AACT,KAAK;AACL,IAAI,MAAM,EAAE
;AACZ,QAAQ,OAAO,EAAE,cAAc;AAC/
B,QAAQ,aAAa,EAAE;AACvB,YAAY,WAAW,EAAE,CAAC;AAC1B,SAAS;AACT,KAAK;AACL,IAAI,MAAM,EAAE
;AACZ,QAAQ,OAAO,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE;AACzD,QAAQ,aAAa,EAAE;AACvB,
YAAY,WAAW,EAAE,CAAC;AAC1B,SAAS;AACT,KAAK;AACL,IAAI,MAAM,EAAE;AACZ,QAAQ,OAAO,EAAE,EA
AE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE;AACzD,QAAQ,aAAa,EAAE;AACvB,YAAY,WAAW,EAAE,CAAC;AAC
1B,SAAS;AACT,KAAK;AACL,IAAI,MAAM,EAAE;AACZ,QAAQ,OAAO,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,
cAAc,EAAE;AACzD,QAAQ,aAAa,EAAE;AACvB,YAAY,WAAW,EAAE,EAAE;AAC3B,SAAS;AACT,KAAK;AACL,
IAAI,MAAM,EAAE;AACZ,QAAQ,OAAO,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAA
E;AAC5E,QAAQ,aAAa,EAAE;AACvB,YAAY,WAAW,EAAE,EAAE;AAC3B,SAAS;AACT,KAAK;AACL,IAAI,MAA
M,EAAE;AACZ,QAAQ,OAAO,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE,GAAG,c
AAc,EAAE;AAC/
F,QAAQ,aAAa,EAAE;AACvB,YAAY,WAAW,EAAE,EAAE;AAC3B,SAAS;AACT,KAAK;AACL,IAAI,MAAM,EAAE
;AACZ,QAAQ,OAAO,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EA
AE;AAC/
F,QAAQ,aAAa,EAAE;AACvB,YAAY,WAAW,EAAE,EAAE;AAC3B,SAAS;AACT,KAAK;AACL;AACA;AACA,IAAI
,OAAO,EAAE;AACb,QAAQ,OAAO,EAAEA,2BAAO,CAAC,OAAO;AAChC,KAAK;AACL,IAAI,IAAI,EAAE;AACV
,QAAQ,OAAO,EAAEA,2BAAO,CAAC,IAAI;AAC7B,QAAQ,aAAa,EAAE;AACvB,YAAY,YAAY,EAAE;AAC1B,gB
AAgB,YAAY,EAAE,IAAI;AAClC,aAAa;AACb,SAAS;AACT,KAAK;AACL,IAAI,qBAAqB,EAAE;AAC3B,QAAQ
,OAAO,EAAEA,2BAAO,CAAC,qBAAqB,CAAC;AAC/
C,KAAK;AACL,IAAI,MAAM,EAAE;AACZ,QAAQ,OAAO,EAAEA,2BAAO,CAAC,MAAM;AAC/
B,KAAK;AACL,IAAI,aAAa,EAAE;AACnB,QAAQ,OAAO,EAAEA,2BAAO,CAAC,aAAa;AACtC,KAAK;AACL;AA
CA;AACA,IAAI,QAAQ,EAAE;AACd,QAAQ,OAAO,EAAEA,2BAAO,CAAC,QAAQ;AACjC,QAAQ,aAAa,EAAE;AA
CvB,YAAY,YAAY,EAAE;AAC1B,gBAAgB,YAAY,EAAE,IAAI;AAClC,aAAa;AACb,SAAS;AACT,KAAK;AACL,
IAAI,GAAG,EAAE;AACT,QAAQ,OAAO,EAAEA,2BAAO,CAAC,GAAG;AAC5B,KAAK;AACL,IAAI,KAAK,EAAE;
AACX,QAAQ,OAAO,EAAEA,2BAAO,CAAC,KAAK;AAC9B,KAAK;AACL,IAAI,OAAO,EAAE;AACb,QAAQ,OAAO,
EAAEA,2BAAO,CAAC,OAAO;AAChC,KAAK;AACL,IAAI,IAAI,EAAE;AACV,QAAQ,OAAO,EAAEA,2BAAO,CAA
C,IAAI;AAC7B,KAAK;AACL,IAAI,SAAS,EAAE;AACf,QAAQ,OAAO,EAAEA,2BAAO,CAAC,SAAS;AAClC,KA
AK;AACL,IAAI,MAAM,EAAE;AACZ,QAAQ,OAAO,EAAEA,2BAAO,CAAC,MAAM;AAC/
B,KAAK;AACL,IAAI,KAAK,EAAE;AACX,QAAQ,OAAO,EAAEA,2BAAO,CAAC,KAAK;AAC9B,KAAK;AACL,IAA
I,WAAW,EAAE;AACjB,QAAQ,OAAO,EAAEA,2BAAO,CAAC,WAAW;AACpC,KAAK;AACL,IAAI,OAAO,EAAE;AA
Cb,QAAQ,OAAO,EAAEA,2BAAO,CAAC,OAAO;AAChC,KAAK;AACL,IAAI,MAAM,EAAE;AACZ,QAAQ,OAAO,EA
AEA,2BAAO,CAAC,MAAM;AAC/
B,KAAK;AACL,IAAI,KAAK,EAAE;AACX,QAAQ,OAAO,EAAEA,2BAAO,CAAC,KAAK;AAC9B,KAAK;AACL,IAA
I,UAAU,EAAE;AAChB,QAAQ,OAAO,EAAEA,2BAAO,CAAC,UAAU;AACnC,KAAK;AACL,IAAI,WAAW,EAAE;AA
CjB,QAAQ,OAAO,EAAEA,2BAAO,CAAC,WAAW;AACpC,KAAK;AACL,IAAI,OAAO,EAAE;AACb,QAAQ,OAAO,E
AAEA,2BAAO,CAAC,OAAO;AAChC,KAAK;AACL,IAAI,QAAQ,EAAE;AACd,QAAQ,OAAO,EAAEA,2BAAO,CAAC
,QAAQ;AACjC,KAAK;AACL,IAAI,SAAS,EAAE;AACf,QAAQ,OAAO,EAAEA,2BAAO,CAAC,SAAS;AAClC,KAA
K;AACL,IAAI,aAAa,EAAE;AACnB,QAAQ,OAAO,EAAEA,2BAAO,CAAC,aAAa;AACtC,KAAK;AACL,IAAI,YA
AY,EAAE;AAClB,QAAQ,OAAO,EAAEA,2BAAO,CAAC,YAAY;AACrC,KAAK;AACL,CAAC,CAAC,CAAC;;AC1MH
;AACA;AACA;AACA;AAcA;AACA,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;AACtB;AACA,MAAM,cAAc,GAAG,I
AAI,OAAO,EAAE,CAAC;AACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC;AAChC;AACA;AACA;AACA;AA
CA,IAAI,cAAc,CAAC;AACnB,MAAM,WAAW,GAAG;AACpB,IAAI,KAAK,EAAE,CAAC;AACZ,IAAI,IAAI,EAA
E,CAAC;AACX,IAAI,GAAG,EAAE,CAAC;AACV,CAAC,CAAC;AACF;AACA,MAAM,SAAS,GAAG,IAAI,OAAO,E
AAE,CAAC;AAChC;AACA;AACA;AACA;AACA;AACe,MAAM,eAAe,CAAC;AACrC,IAAI,WAAW,CAAC,EAAE,YA
AY,GAAG,IAAI,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE;AACnD,QAAQ,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC
;AACzC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,oBAAoB,CAAC,IAAI,EAAE;AAC/
B,QAAQ,IAAI,CAAC,IAAI,EAAE;AACnB,YAAY,OAAO,IAAI,CAAC;AACxB,SAAS;AACT;AACA,QAAQ,MAAM
,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;AA
CpE;AACA;AACA,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AACnC,YAAY,IAAI,MAAM,CAA
C,MAAM,EAAE;AAC/
B,gBAAgB,OAAO;AACvB,oBAAoB,IAAI,EAAE,OAAO;AACjC,oBAAoB,KAAK,EAAE,MAAM;AACjC,oBAAoB,
QAAQ,EAAE,CAAC;AAC/
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
,QAAQ,gBAAgB,GAAG,IAAI;AAC/
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
AAC,CAAC;AAC/
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
AK,CAAC,YAAY;AAC/
B,YAAY,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;AAC9C,UAAU;AACV,YAAY,KAAK,CAAC,OAAO,
IAAI,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC,CAAC;AACrE,SAAS;AACT,QAAQ,MAAM,KAAK,CAAC;AACpB
,KAAK;AACL;;;;;;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;
AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC
A;AACA;AACA;AACA;AACA;AACA;AAsBA;AACA,MAAMC,SAAO,GAAGC,oBAAa,CAAC,mDAAe,CAAC,CAAC;A
AC/C;AACA,MAAMd,OAAK,GAAGC,6BAAS,CAAC,
+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
OAAOiB,
+BAAW,CAAC,QAAQ,CAAC,CAAC;AACrC,KAAK,CAAC,OAAO,CAAC,EAAE;AAChB,QAAQjB,OAAK,CAAC,CAA
C,
+BAA+B,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC5D,QAAQ,CAAC,CAAC,OAAO,GAAG,CAAC,yBAAyB,EAA
E,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;AAChF,QAAQ,MAAM,CAAC,CAAC;AAChB
,KAAK;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,yBAAyB,CAAC,QAAQ,
EAAE;AAC7C,IAAIA,OAAK,CAAC,CAAC,kCAAkC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC3D,IAAI,IAA
I;AACR,QAAQ,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AACzD;AACA,QAAQ,IAAI,CAAC,MAA
M,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE;AACtE,YAAY,MAAM,MAAM,CAAC,MAAM;
AAC/B,gBAAgB,IAAI,KAAK,CAAC,sDAAsD,CAAC;AACjF,gBAAgB,EAAE,IAAI,EAAE,
+BAA+B,EAAE;AACzD,aAAa,CAAC;AACd,SAAS;AACT;AACA,QAAQ,OAAO,WAAW,CAAC,YAAY,CAAC;AACxC
,KAAK,CAAC,OAAO,CAAC,EAAE;AAChB,QAAQA,OAAK,CAAC,CAAC,iCAAiC,EAAE,QAAQ,CAAC,CAAC,CAA
C,CAAC;AAC9D,QAAQ,CAAC,CAAC,OAAO,GAAG,CAAC,yBAAyB,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAA
C,OAAO,CAAC,CAAC,CAAC;AAChF,QAAQ,MAAM,CAAC,CAAC;AAChB,KAAK;AACL,CAAC;AACD;AACA;AACA
;AACA;AACA;AACA;AACA;AACA,SAAS,oBAAoB,CAAC,QAAQ,EAAE;AACxC,IAAIA,OAAK,CAAC,CAAC,4BA
A4B,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AACrD;AACA,IAAI,IAAI;AACR,QAAQ,OAAO,QAAQ,CAAC,QAA
Q,CAAC;AACjC,aAAa,KAAK,CAAC,SAAS,CAAC;AAC7B,aAAa,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI
,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,
CAAC,CAAC,CAAC;AACzE,KAAK,CAAC,OAAO,CAAC,EAAE;AAChB,QAAQA,OAAK,CAAC,CAAC,kCAAkC,EAA
E,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC/
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
AY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;AAC/
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
EAAE;AAC/
B,QAAQ,MAAM,KAAK,GAAGV,kBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjD,QAAQ,MAAM,GAAG,GA
AG,aAAa;AACjC,YAAY,KAAK;AACjB,YAAY,QAAQ;AACpB,YAAY,KAAK,CAAC;AAClB,YAAY,QAAQ;AACpB,
YAAY,KAAK,CAAC,GAAG;AACrB,SAAS,CAAC;AACV,QAAQ,MAAM,cAAc,GAAG,oBAAoB,CAAC,GAAG,CAAC,
QAAQ,CAAC,CAAC;AAClE;AACA,QAAQ,OAAO,IAAI,WAAW;AAC9B,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAAC
,cAAc,EAAE,GAAG,CAAC;AACnE,SAAS,CAAC;AACV,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,IAAI,u
BAAuB,GAAG;AAC9B,QAAQ,MAAM,KAAK,GAAGA,kBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjD,QA
AQ,MAAM,gBAAgB,GAAGH,wBAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;AAC1E,
QAAQ,MAAM,eAAe,GAAGA,wBAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;AACxE;
AACA,QAAQ,IAAIa,sBAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;AAC7C,YAAY,OAAO,IAAI,CAAC,gBA
AgB,CAAC,gBAAgB,CAAC,CAAC;AAC3D,SAAS;AACT,QAAQ,IAAIA,sBAAE,CAAC,UAAU,CAAC,eAAe,CAAC
,EAAE;AAC5C,YAAY,MAAM,IAAI,GAAG,kBAAkB,CAAC,eAAe,CAAC,CAAC;AAC7D;AACA,YAAY,IAAI,MAA
M,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE;AAClE,gBAAgB,IAAI,CAAC,KAAK,CAA
C,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;AACvD,oBAAoB,MAAM,IAAI,KAAK,CAAC,
+DAA+D,CAAC,CAAC;AACrG,iBAAiB;AACjB,gBAAgB,MAAM,GAAG,GAAG,aAAa;AACzC,oBAAoB,KAAK;AA
CzB,oBAAoB,QAAQ;AAC5B,oBAAoB,8BAA8B;AAClD,oBAAoB,eAAe;AACnC,oBAAoB,KAAK,CAAC,GAAG;A
AC7B,iBAAiB,CAAC;AAClB;AACA,gBAAgB,OAAO,IAAI,WAAW;AACtC,oBAAoB,GAAG,IAAI,CAAC,0BAA0
B,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC;AAC9E,iBAAiB,CAAC;AAClB,aAAa;AACb,SAAS;AACT;AA
CA,QAAQ,OAAO,IAAI,WAAW,EAAE,CAAC;AACjC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA
,IAAI,eAAe,CAAC,GAAG,EAAE;AACzB,QAAQ,OAAO,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,GAAG,CAAC
,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;AAC5E,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A
ACA,IAAI,CAAC,0BAA0B,CAAC,cAAc,EAAE,GAAG,EAAE;AACrD,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,0
BAA0B;AACxD,YAAY,EAAE,cAAc,EAAE;AAC9B,YAAY,GAAG;AACf,SAAS,CAAC;AACV;AACA;AACA,QAAQ,
KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;AACxC,YAAY,IAAI,OAAO,CAAC,aAAa,EAAE;AACvC,gBAAgB,OAAO
,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC;AACnD,aAAa;AACb,YAAY,MAAM,OAAO,CAAC;AAC1B,SAAS;
AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,oBAAoB,CAAC,UAAU,EAAE,G
AAG,EAAE;AAC1C,QAAQ,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;AAChD;AACA,QAAQ,SAAS,CAAC,oB
AAoB,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC7E,QAAQ,OAAO,IA
AI,CAAC,0BAA0B,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AAChE,KAAK;AACL;AACA;AACA;AACA;AACA;AA
CA;AACA;AACA;AACA,IAAI,CAAC,0BAA0B,CAAC,UAAU,EAAE,GAAG,EAAE;AACjD,QAAQ,MAAM,EAAE,KA
AK,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,GAAG,UAAU,CAAC;AACnE,QAAQ,MAAM,QAAQ,GAAG,cAAc,CAAC
,MAAM;AAC9C,YAAY,KAAK;AACjB,YAAY,aAAa;AACzB,YAAY,GAAG,CAAC,aAAa;AAC7B,SAAS,CAAC;AAC
V,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,8BAA8B,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AAC9E;AACA;AAC
A,QAAQ,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;AACxC;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,OAAO,
CAAC,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC9E;AACA;AA
CA;AACA;AACA;AACA,YAAY,IAAI,OAAO,CAAC,QAAQ,EAAE;AAClC,gBAAgB,OAAO,CAAC,IAAI,GAAG,KA
AK,CAAC,CAAC;AACtC,aAAa;AACb;AACA,YAAY,MAAM,OAAO,CAAC;AAC1B,SAAS;AACT,KAAK;AACL;AAC
A;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,CAAC,8BAA8B;AACnC,QAAQ;AACR,YAAY,GAAG;AAC
f,YAAY,OAAO,EAAE,MAAM;AAC3B,YAAY,OAAO;AACnB,YAAY,cAAc;AAC1B,YAAY,cAAc;AAC1B,YAAY,MA
AM,EAAE,UAAU;AAC9B,YAAY,aAAa;AACzB,YAAY,OAAO,EAAE,UAAU;AAC/
B,YAAY,SAAS;AACrB,YAAY,6BAA6B;AACzC,YAAY,IAAI;AAChB,YAAY,KAAK;AACjB,YAAY,QAAQ;AACpB
,YAAY,SAAS,EAAE,YAAY,GAAG,EAAE;AACxC,SAAS;AACT,QAAQ,GAAG;AACX,MAAM;AACN,QAAQ,MAAM,U
AAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;AACrE,QAA
Q,MAAM,aAAa,GAAG,cAAc,IAAI,IAAI,aAAa;AACjE,YAAY,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,
cAAc,GAAG,CAAC,cAAc,CAAC;AAC7E,YA
AY,GAAG,CAAC,aAAa;AAC7B,SAAS,CAAC;AACV;AACA;AACA,QAAQ,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC
,MAAM,CAAC,OAAO,CAAC,EAAE;AAC7D,YAAY,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,C
AAC;AACtD,SAAS;AACT;AACA;AACA,QAAQ,MAAM,MAAM,GAAG,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,UAA
U,EAAE,GAAG,CAAC,CAAC;AACvE,QAAQ,MAAM,OAAO,GAAG,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,
EAAE,GAAG,CAAC,CAAC;AACzE;AACA;AACA,QAAQ,IAAI,OAAO,EAAE;AACrB,YAAY,OAAO,IAAI,CAAC,4
BAA4B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACnE,SAAS;AACT;AACA;AACA,QAAQ,MAAM;AACd;AACA;A
ACA,YAAY,IAAI,EAAE,GAAG,CAAC,IAAI;AAC1B,YAAY,IAAI,EAAE,GAAG,CAAC,IAAI;AAC1B,YAAY,QA
AQ,EAAE,GAAG,CAAC,QAAQ;AAClC;AACA;AACA,YAAY,QAAQ,EAAE,IAAI;AAC1B,YAAY,GAAG;AACf,YAA
Y,OAAO;AACnB,YAAY,aAAa;AACzB,YAAY,cAAc;AAC1B,YAAY,MAAM;AAClB,YAAY,aAAa;AACzB,YAAY,O
AAO;AACnB,YAAY,SAAS;AACrB,YAAY,6BAA6B;AACzC,YAAY,IAAI;AAChB,YAAY,KAAK;AACjB,YAAY,QA
AQ;AACpB,SAAS,CAAC;AACV;AACA;AACA,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY
,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;AACtD,YAAY,OAAO,IAAI,CAAC,0BAA0B;AAClD,gBAAgB,YAAY,C
AAC,CAAC,CAAC;AAC/
B,gBAAgB,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC
,CAAC,CAAC,CAAC,EAAE;AAC/
D,aAAa,CAAC;AACd,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,Y
AAY,CAAC,UAAU,EAAE,GAAG,EAAE;AAClC,QAAQf,OAAK,CAAC,qCAAqC,EAAE,UAAU,EAAE,GAAG,CAAC,
QAAQ,CAAC,CAAC;AAC/
E,QAAQ,IAAI;AACZ,YAAY,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;AAClD,gBAAgB,OAAO,IAA
I,CAAC,0BAA0B,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AACxE,aAAa;AACb,YAAY,IAAI,UAAU,CAAC,UAA
U,CAAC,SAAS,CAAC,EAAE;AAClD,gBAAgB,OAAO,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,GAAG,CAAC,C
AAC;AACvE,aAAa;AACb,YAAY,OAAO,IAAI,CAAC,4BAA4B,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AACtE,
SAAS,CAAC,OAAO,KAAK,EAAE;AACxB,YAAY,KAAK,CAAC,OAAO,IAAI,CAAC,mBAAmB,EAAE,GAAG,CAAC,
QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9E,YAAY,MAAM,KAAK,CAAC;AACxB,SAAS;AACT,K
AAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,0BAA0B,CAAC,UAAU,EAAE,GAAG,EA
AE;AAChD,QAAQ,MAAM;AACd,YAAY,aAAa;AACzB,YAAY,kBAAkB;AAC9B,YAAY,qBAAqB;AACjC,YAAY,0B
AA0B;AACtC,SAAS,GAAGK,kBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACvC;AACA,QAAQ,IAAI,UAA
U,KAAK,oBAAoB,EAAE;AACjD,YAAY,MAAM,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,EAA
E,UAAU,CAAC,CAAC,CAAC;AACvD;AACA,YAAY,IAAI,0BAA0B,EAAE;AAC5C,gBAAgB,IAAI,OAAO,0BAA0
B,KAAK,UAAU,EAAE;AACtE,oBAAoB,MAAM,IAAI,KAAK,CAAC,CAAC,0DAA0D,EAAE,0BAA0B,CAAC,CAAC
,CAAC,CAAC,CAAC;AAChI,iBAAiB;AACjB,gBAAgB,OAAO,IAAI,CAAC,oBAAoB,CAAC,0BAA0B,EAAE,EA
AE,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAC/
G,aAAa;AACb,YAAY,OAAO,IAAI,CAAC,eAAe,CAAC;AACxC,gBAAgB,GAAG,GAAG;AACtB,gBAAgB,IAAI;
AACpB,gBAAgB,QAAQ,EAAE,qBAAqB;AAC/
C,aAAa,CAAC,CAAC;AACf,SAAS;AACT,QAAQ,IAAI,UAAU,KAAK,YAAY,EAAE;AACzC,YAAY,MAAM,IAAI,
GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;AACvD;AACA,YAAY,IA
AI,kBAAkB,EAAE;AACpC,gBAAgB,IAAI,OAAO,kBAAkB,KAAK,UAAU,EAAE;AAC9D,oBAAoB,MAAM,IAAI,
KAAK,CAAC,CAAC,kDAAkD,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;AAChH,iBAAiB;AACjB,gBAAg
B,OAAO,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,QAAQ,EA
AE,EAAE,EAAE,CAAC,CAAC;AACvG,aAAa;AACb,YAAY,OAAO,IAAI,CAAC,eAAe,CAAC;AACxC,gBAAgB,G
AAG,GAAG;AACtB,gBAAgB,IAAI;AACpB,gBAAgB,QAAQ,EAAE,aAAa;AACvC,aAAa,CAAC,CAAC;AACf,SA
AS;AACT;AACA,QAAQ,MAAM,kBAAkB,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC;A
AChF,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,yBAAyB,CAAC,UAAU,EAAE,G
AAG,EAAE;AAC/
C,QAAQ,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AACvD;AACA,QAAQ,IAAI,UAAU,
KAAK,CAAC,CAAC,EAAE;AAC/
B,YAAY,MAAM,kBAAkB,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;AACjF,SAAS;A
ACT;AACA,QAAQ,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC
;AAC1E,QAAQ,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;AAC5D;AACA,
QAAQ,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;AACpC,YAAY,MAAM,IAAI,KAAK,CAAC,
+CAA+C,CAAC,CAAC;AAC7E,SAAS;AACT;AACA,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,
EAAE,GAAG,CAAC,CAAC;AACzD,QAAQ,MAAM,UAAU;AACxB,YAAY,MAAM,CAAC,UAAU;AAC7B,YAAY,MAAM,
CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAClD;AACA,QAAQ,IAAI,UAAU,EAAE;AACxB,YAAY,O
AAO,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE;AACzD,gBAAgB,GAAG,GAAG;AACtB,gBAAgB,QAAQ,EAAE,M
AAM,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ;AACzD,gBAAgB,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,C
AAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;AACvE,aAAa,CAAC,CAAC;AAC
f,SAAS;AACT;AACA,QAAQ,MAAM,MAAM,CAAC,KAAK,IAAI,kBAAkB,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ
,EAAE,uBAAuB,CAAC,CAAC;AACpG,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI
,4BAA4B,CAAC,UAAU,EAAE,GAAG,EAAE;AAClD,QAAQ,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAGA,kBA
AgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC7D,QAAQ,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,IAAIH,wB
AAI,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;AAChF,QAAQ,IAAI,OAAO,CAAC;AACpB;AACA,
QAAQ,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;AACpC,YAAY,OAAO,GAAG,UAAU,CAAC;AACjC,SAAS,MAAM,I
AAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAC/
C,YAAY,OAAO,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;AACxC,SAAS,MAAM;AACf,YAAY,OAAO,
GAAGiB,oBAA2B;AACjD,gBAAgB,UAAU;AAC1B,gBAAgB,eAAe;AAC/
B,aAAa,CAAC;AACd,SAAS;AACT;AACA,QAAQ,IAAI,QAAQ,CAAC;AACrB;AACA,QAAQ,IAAI;AACZ,YAAY,
QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC7D,SAAS,CAAC,OAAO,KAAK,EA
AE;AACxB;AACA,YAAY,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE;AAC5D,gBAAgB,MAAM
,kBAAkB,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;AAC5F,aAAa;AACb,YAAY,MA
AM,KAAK,CAAC;AACxB,SAAS;AACT;AACA,QAAQ,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CA
AC;AAC/
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
AE,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC/
D;AACA,QAAQ,MAAM,EAAE,oBAAoB,EAAE,QAAQ,EAAE,GAAGK,kBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,C
AAC;AAC9E,QAAQ,MAAM,OAAO,GAAGc,oBAA2B,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC3E,QAAQ,MAAM
,EAAE,GAAGC,gBAAuB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;AACrE,QAAQ,MAAM,UAAU,GAAGlB,wBAAI,
CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;AAC/
E;AACA,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAChC,YAAY,MAAM,KAAK,GAAG,MAAM,
CAAC,MAAM;AACvC,gBAAgB,IAAI,KAAK,CAAC,CAAC,iCAAiC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAC
tE,gBAAgB;AAChB,oBAAoB,eAAe,EAAE,kBAAkB;AACvD,oBAAoB,WAAW,EAAE,EAAE,UAAU,EAAE,OAAO,
EAAE;AACxD,iBAAiB;AACjB,aAAa,CAAC;AACd;AACA,YAAY,OAAO,IAAI,gBAAgB,CAAC;AACxC,gBAAgB
,KAAK;AACrB,gBAAgB,EAAE;AAClB,gBAAgB,YAAY,EAAE,GAAG,CAAC,IAAI;AACtC,gBAAgB,YAAY,EAA
E,GAAG,CAAC,QAAQ;AAC1C,aAAa,CAAC,CAAC;AACf,SAAS;AACT;AACA;AACA,QAAQ,MAAM,MAAM;AACpB
,YAAY,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC;AAC7C,YAAY,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CA
AC;AACzC;AACA,QAAQ,IAAI,MAAM,EAAE;AACpB,YAAY,OAAO,IAAI,gBAAgB,CAAC;AACxC,gBAAgB,UAA
U,EAAE,eAAe,CAAC,MAAM,CAAC;AACnD,gBAAgB,QAAQ,EAAE,EAAE;AAC5B,gBAAgB,EAAE;AAClB,gBAA
gB,YAAY,EAAE,GAAG,CAAC,IAAI;AACtC,gBAAgB,YAAY,EAAE,GAAG,CAAC,QAAQ;AAC1C,aAAa,CAAC,C
AAC;AACf,SAAS;AACT;AACA,QAAQ,IAAI,QAAQ,CAAC;AACrB,QAAQ,IAAI,KAAK,CAAC;AAClB;AACA,QA
AQ,IAAI;AACZ,YAAY,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC7D,SAAS
,CAAC,OAAO,YAAY,EAAE;AAC/
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
A,SAAS,qBAAqB,CAAC;AAC/
B,IAAI,kBAAkB;AACtB,IAAI,cAAc;AAClB,IAAI,SAAS;AACb,IAAI,GAAG;AACP,IAAI,SAAS;AACb,CA
AC,EAAE;AACH,IAAI,MAAM,eAAe,GAAG,kBAAkB,CAAC,MAAM;AACrD,QAAQ,cAAc;AACtB,QAAQ,EAAE,I
AAI,EAAE,YAAY,EAAE;AAC9B,KAAK,CAAC;AACN;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,eAAe,CAA
C,OAAO,CAAC,kBAAkB,CAAC,MAAM;AACrD,QAAQ,EAAE,cAAc,EAAE,aAAa,CAAC,eAAe,EAAE;AACzD,QA
AQ,EAAE,IAAI,EAAE,sBAAsB,EAAE;AACxC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACV;AACA;AACA;AA
CA;AACA;AACA;AACA,IAAI,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AAC3C,QAAQ,eAAe
,CAAC,IAAI,CAAC;AAC7B,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,YAAY;AAC9B,YAAY,QAAQ
,EAAE,EAAE;AACxB,YAAY,OAAO,EAAE;AACrB,gBAAgB,EAAE,EAAE,IAAI,gBAAgB,CAAC;AACzC,oBAAo
B,UAAU,EAAE;AAChC,wBAAwB,KAAK,EAAE,SAAS,CAAC,MAAM;AAC/
C,4BAA4B,CAAC,GAAG,EAAE,SAAS,KAAK,MAAM,CAAC,MAAM;AAC7D,gCAAgC,GAAG;AACnC,gCAAgC,SAA
S,CAAC,SAAS,EAAE,GAAG,CAAC;AACzD,6BAA6B;AAC7B,4BAA4B,EAAE;AAC9B,yBAAyB;AACzB,qBAAqB
;AACrB,oBAAoB,QAAQ,EAAE,EAAE;AAChC,oBAAoB,EAAE,EAAE,EAAE;AAC1B,oBAAoB,YAAY,EAAE,YAA
Y;AAC9C,oBAAoB,YAAY,EAAE,EAAE;AACpC,iBAAiB,CAAC;AAClB,aAAa;AACb,SAAS,CAAC,CAAC;AACX
,KAAK;AACL;AACA,IAAI,OAAO,eAAe,CAAC;AAC3B,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,S
AAS,oBAAoB,CAAC;AAC9B,IAAI,aAAa;AACjB,IAAI,kBAAkB;AACtB,IAAI,GAAG;AACP,IAAI,UAAU;AA
Cd,IAAI,kBAAkB;AACtB,CAAC,EAAE;AACH,IAAI,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM;AACpD,QAAQ
,aAAa;AACrB,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE;AAC9B,KAAK,CAAC;AACN;AACA,IAAI,cAAc,CAAC,
OAAO;AAC1B,QAAQ,IAAI,UAAU;AACtB,cAAc,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC;AAC7D,cAAc,k
BAAkB,CAAC,uBAAuB,EAAE,CAAC;AAC3D,KAAK,CAAC;AACN;AACA,IAAI,IAAI,kBAAkB,EAAE;AAC5B,Q
AAQ,cAAc,CAAC,OAAO;AAC9B,YAAY,GAAG,kBAAkB,CAAC,QAAQ;AAC1C,gBAAgB,kBAAkB;AAClC,gBAAg
B,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE;AACnD,aAAa;AACb,SAAS,CAAC;AACV,KAAK;
AACL;AACA,IAAI,OAAO,cAAc,CAAC;AAC1B,CAAC;AACD;AACA;AACA;AACA;AACA,MAAM,0BAA0B,SAAS,
KAAK,CAAC;AAC/C;AACA;AACA;AACA;AACA;AACA,IAAI,WAAW,CAAC,aAAa,EAAE;AAC/
B,QAAQ,KAAK,CAAC,CAAC,iCAAiC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,QAAQ,IAAI,CAA
C,eAAe,GAAG,iBAAiB,CAAC;AACjD,QAAQ,IAAI,CAAC,WAAW,GAAG,EAAE,aAAa,EAAE,CAAC;AAC7C,KA
AK;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,MAAM,2BAA2B,CAAC;AAClC;AACA;AACA;AACA;AA
CA;AACA,IAAI,WAAW,CAAC;AAChB,QAAQ,oBAAoB,GAAG,IAAI,GAAG,EAAE;AACxC,QAAQ,UAAU,EAAE,c
AAc,GAAG,IAAI;AACzC,QAAQ,SAAS,EAAE,aAAa,GAAG,IAAI;AACvC,QAAQ,GAAG,GAAG,OAAO,CAAC,GA
AG,EAAE;AAC3B,QAAQ,UAAU;AAClB,QAAQ,wBAAwB;AAChC,QAAQ,SAAS,GAAG,EAAE;AACtB,QAAQ,kBAA
kB,GAAG,IAAI;AACjC,QAAQ,WAAW,GAAG,IAAI;AAC1B,QAAQ,YAAY,GAAG,IAAI,GAAG,EAAE;AAChC,QA
AQ,SAAS;AACjB,QAAQ,QAAQ;AAChB,QAAQ,qBAAqB;AAC7B,QAAQ,0BAA0B;AAClC,QAAQ,aAAa;AACrB,Q
AAQ,kBAAkB;AAC1B,KAAK,GAAG,EAAE,EAAE;AACZ,QAAQ,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC;AA
C1D,YAAY,oBAAoB;AAChC,YAAY,GAAG;AACf,YAAY,wBAAwB;AACpC,YAAY,YAAY;AACxB,YAAY,QAAQ;AA
CpB,YAAY,qBAAqB;AACjC,YAAY,0BAA0B;AACtC,YAAY,aAAa;AACzB,YAAY,kBAAkB;AAC9B,SAAS,CAAC
,CAAC;AACX;AACA,QAAQ,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE;AACnC,YAAY,eAAe,EAAE,qBAAqB,CA
AC;AACnD,gBAAgB,cAAc;AAC9B,gBAAgB,kBAAkB;AAClC,gBAAgB,GAAG;AACnB,gBAAgB,SAAS;AACzB,
gBAAgB,SAAS;AACzB,aAAa,CAAC;AACd,YAAY,cAAc;AAC1B,YAAY,cAAc,EAAE,oBAAoB,CAAC;AACjD,g
BAAgB,aAAa;AAC7B,gBAAgB,kBAAkB;AAClC,gBAAgB,GAAG;AACnB,gBAAgB,UAAU;AAC1B,gBAAgB,kBA
AkB;AAClC,aAAa,CAAC;AACd,YAAY,aAAa;AACzB,YAAY,kBAAkB;AAC9B,YAAY,WAAW,EAAE,IAAI,GAAG
,EAAE;AAClC,YAAY,GAAG;AACf,YAAY,aAAa,EAAE,IAAI,OAAO,EAAE;AACxC,YAAY,UAAU;AACtB,YAAY
,SAAS;AACrB,YAAY,kBAAkB;AAC9B,YAAY,WAAW;AACvB,YAAY,YAAY;AACxB,YAAY,SAAS;AACrB,SAAS,
CAAC,CAAC;AACX,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAAI,GAAG,GAAG;AACd,QAA
Q,MAAM,EAAE,GAAG,EAAE,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACnD;AACA,QAAQ,OAA
O,GAAG,CAAC;AACnB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,
qBAAqB,CAAC,QAAQ,EAAE,EAAE,mBAAmB,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE;AAC1E,QAAQ,MAAM;AAC
d,YAAY,eAAe;AAC3B,YAAY,cAAc;AAC1B,YAAY,GAAG;AACf,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,IA
AI,CAAC,CAAC;AACvC;AACA,QAAQ,IAAI,CAAC,QAAQ,EAAE;AACvB,YAAY,OAAO,IAAI,WAAW,CAAC,GAA
G,eAAe,EAAE,GAAG,cAAc,CAAC,CAAC;AAC1E,SAAS;AACT;AACA,QAAQ,MAAM,aAAa,GAAGC,wBAAI,CAA
C,OAAO,CAACA,wBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;AACxE;AACA,QAAQF,OA
AK,CAAC,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD;AACA,QAAQ,OAAO,IAAI,CA
AC,oBAAoB;AACxC,YAAY,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC;AACtD,YAAY,aAAa;AACzB,YAAY,mBA
AmB;AAC/
B,SAAS,CAAC;AACV,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,iBAAiB,CAAC,UAAU
,EAAE;AAClC,QAAQ,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjD;AACA,QAA
Q,KAAK,CAAC,aAAa,GAAG,UAAU,CAAC;AACzC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,IAAI,UAAU,
GAAG;AACjB,QAAQ,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjD;AACA,QAAQ
,KAAK,CAAC,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC7D,QAAQ,KAAK,CAAC,cAAc,GAAG,oBAA
oB,CAAC,KAAK,CAAC,CAAC;AAC3D,QAAQ,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;AAClC,KAAK;AAC
L;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,sBAAsB,CAAC,aAAa,EAAE,qBAAqB,GAAG,KA
AK,EAAE;AACzE,QAAQ,MAAM;AACd,YAAY,eAAe;AAC3B,YAAY,kBAAkB;AAC9B,YAAY,WAAW;AACvB,YAAY
,GAAG;AACf,YAAY,WAAW;AACvB,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACvC;AAC
A,QAAQ,IAAI,CAAC,WAAW,EAAE;AAC1B,YAAY,OAAO,eAAe,CAAC;AACnC,SAAS;AACT;AACA,QAAQ,IAAI
,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AACzD;AACA;AACA,QAAQ,IAAI,WAAW,EAAE;A
ACzB,YAAYA,OAAK,CAAC,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,YAAY,OAAO,W
AAW,CAAC;AAC/
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
AC,gBAAgB,EAAE;AAC/
B,YAAY,gBAAgB,GAAG,WAAW,CAAC;AAC3C;AACA;AACA,YAAY;AACZ,gBAAgB,WAAW;AAC3B,gBAAgB,WAA
W,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnD,gBAAgB,cAAc,CAAC,KAAK,CAA
C,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;AACtD,cAAc;AACd,gBAAgB,MAAM,QAAQ,GAAGmB,sBAAE,
CAAC,OAAO,EAAE,CAAC;AAC9C;AACA,gBAAgBrB,OAAK,CAAC,gDAAgD,EAAE,QAAQ,CAAC,CAAC;AAClF;
AACA,gBAAgB,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,eAAe;AAC9E,oBAAoB,QAAQ;AAC5B,oBAAoB,EAAE,I
AAI,EAAE,gBAAgB,EAAE;AAC9C,iBAAiB,CAAC;AAClB;AACA,gBAAgB;AAChB,oBAAoB,mBAAmB,CAAC,M
AAM,GAAG,CAAC;AAClD,oBAAoB,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC;AACvD,kBAAkB;AAClB,oB
AAoB,MAAM,WAAW;AACrC,wBAAwB,mBAAmB,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC5E;
AACA,oBAAoB,sBAAsB;AAC1C,wBAAwB,WAAW,CAAC,QAAQ;AAC5C,wBAAwB,6BAA6B;AACrD,qBAAqB,CAA
C;AACtB,iBAAiB;AACjB;AACA,gBAAgB,gBAAgB,GAAG,gBAAgB,CAA
C,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAChF,aAAa;AACb;AACA;AACA,YAAY,IAAI,cAAc,CAAC,MAAM,GAA
G,CAAC,EAAE;AAC3C,gBAAgB,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;AAC3E,aAA
a;AACb;AACA;AACA,YAAY,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC;AAClD,gBAAgB,YAAY;AAC5B,aAAa,CA
AC,CAAC;AACf;AACA,YAAY,SAAS,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAC5D;AACA;AACA,YAAY,
MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC5C,YAAY,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,gBAAg
B,CAAC,CAAC;AAC7D;AACA,YAAYA,OAAK;AACjB,gBAAgB,wCAAwC;AACxD,gBAAgB,gBAAgB;AAChC,gBA
AgB,aAAa;AAC7B,aAAa,CAAC;AACd,SAAS;AACT;AACA;AACA,QAAQ,IAAI,CAAC,mBAAmB,IAAI,WAAW,I
AAI,gBAAgB,CAAC,MAAM,IAAI,CAAC,EAAE;AACjF,YAAY,MAAM,IAAI,0BAA0B,CAAC,aAAa,CAAC,CAAC
;AAChE,SAAS;AACT;AACA,QAAQ,OAAO,gBAAgB,CAAC;AAChC,KAAK;AACL;;AC7gBA;AACA;AACA;AACA;
AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAK,GAAGsB,6BAAW,CAAC,sBAAsB,CAA
C,CAAC;AAClD,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AACtC;AACA;AACA;AACA;AACA;AACA
;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB,CAAC,cAAc,EAAE;
AAC3C,IAAI,uBAAuB;AAC3B,IAAI,wBAAwB;AAC5B,IAAI,kBAAkB;AACtB,IAAI,gBAAgB;AACpB,CAAC,
EAAE;AACH;AACA,IAAI,MAAM,UAAU,GAAG,EAAE,CAAC;AAC1B,IAAI,MAAM,OAAO,GAAG,EAAE,CAAC;AA
CvB,IAAI,MAAM,eAAe,GAAG,EAAE,CAAC;AAC/
B,IAAI,MAAM,aAAa,GAAG,EAAE,CAAC;AAC7B,IAAI,MAAM,UAAU,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,
WAAW,CAAC,CAAC;AAC1D,IAAI,MAAM,yBAAyB,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;
AAC7E,IAAI,MAAM,uBAAuB,GAAG,CAAC,gBAAgB,EAAE,
+BAA+B,CAAC,CAAC;AACxF;AACA;AACA,IAAI,IAAI,cAAc,CAAC,QAAQ,EAAE;AACjC,QAAQ,IAAI,cAAc
,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE;AAC5D,YAAY,OAAO,CAAC,YAAY,CAAC,CAAC;AAClC,
SAAS;AACT;AACA,QAAQ,IAAI,cAAc,CAAC,QAAQ,CAAC,oBAAoB,CAAC,KAAK,IAAI,EAAE;AACpE,YAAY,
OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC1C,SAAS;AACT,KAAK;AACL;AACA;AACA,IAAI,KAAK,MAAM,GAAG,
IAAI,UAAU,EAAE;AAClC,QAAQ,IAAI,GAAG,IAAI,cAAc,IAAI,OAAO,cAAc,CAAC,GAAG,CAAC,KAAK,WA
AW,EAAE;AACjF,YAAY,UAAU,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;AAClD,SAAS;AAC
T,KAAK;AACL;AACA;AACA,IAAI,KAAK,MAAM,GAAG,IAAI,yBAAyB,EAAE;AACjD,QAAQ,IAAI,GAAG,IAA
I,cAAc,IAAI,OAAO,cAAc,CAAC,GAAG,CAAC,KAAK,WAAW,EAAE;AACjF;AACA;AACA,YAAY,UAAU,CAAC,
eAAe,GAAG,eAAe,CAAC;AACzD;AACA,YAAY,IAAI,GAAG,KAAK,QAAQ,EAAE;AAClC,gBAAgB,KAAK,CAAC
,CAAC,kBAAkB,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC;AAC
3G;AACA,gBAAgB,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE;AAC/
C,oBAAoB,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;AACpD,iBAAiB;AACjB;AACA,gBAAgB,eAA
e,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;AACtE,gBAAgB,SAAS;AACzB,aA
Aa;AACb;AACA;AACA,YAAY,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,OAAO,cAAc,CAAC,GAAG,CAAC,KAAK,
QAAQ,EAAE;AAChF,gBAAgB,eAAe,CAAC,GAAG,CAAC,GAAG;AACvC,oBAAoB,GAAG,cAAc,CAAC,GAAG,CA
AC;AAC1C,iBAAiB,CAAC;AAClB,aAAa,MAAM;AACnB,gBAAgB,eAAe,CAAC,GAAG,CAAC,GAAG,cAAc,CAA
C,GAAG,CAAC,CAAC;AAC3D,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;AACA,IAAI,KAAK,MAAM,GAAG,
IAAI,uBAAuB,EAAE;AAC/
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
/
D;AACA;AACA,YAAY,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;AAC7C,gBAAgB,KAAK,CAAC,CAA
C,yBAAyB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;AAC7D;AACA,gBAAgB,IAAI,YAAY,CAAC,GAAG,CAAC,O
AAO,CAAC,EAAE;AAC/
C;AACA;AACA,oBAAoB,OAAO,CAAC,OAAO,CAAC,GAAG,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CA
AC,EAAE;AACpF,wBAAwB,uBAAuB;AAC/
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
B;AAC/
B,IAAI,kBAAkB;AACtB,IAAI,gBAAgB;AACpB,IAAI,eAAe;AACnB,IAAI,aAAa;AACjB,IAAI,cAAc;AAC
lB,IAAI,uBAAuB;AAC3B,IAAI,YAAY;AAChB;AACA;AACA,IAAI,SAAS;AACb,IAAI,eAAe;AACnB,IAAI,
cAAc;AAClB,IAAI,MAAM;AACV;;;;;"}

You might also like