From 2faf0411e488ab437c6a9352cef00fffeebb4ce0 Mon Sep 17 00:00:00 2001 From: InverseBot Date: Tue, 13 Feb 2018 01:31:51 -0500 Subject: [PATCH] (js/css) Update generated files --- .../js/vendor/angular-ui-router.js | 17 ++++++----------- .../js/vendor/angular-ui-router.js.map | 6 +++--- .../js/vendor/angular-ui-router.min.js | 4 ++-- .../js/vendor/angular-ui-router.min.js.map | 6 +++--- 4 files changed, 14 insertions(+), 19 deletions(-) diff --git a/UI/WebServerResources/js/vendor/angular-ui-router.js b/UI/WebServerResources/js/vendor/angular-ui-router.js index 33be2fc10..0c60a51fd 100644 --- a/UI/WebServerResources/js/vendor/angular-ui-router.js +++ b/UI/WebServerResources/js/vendor/angular-ui-router.js @@ -4,7 +4,7 @@ * This causes it to be incompatible with plugins that depend on @uirouter/core. * We recommend switching to the ui-router-core.js and ui-router-angularjs.js bundles instead. * For more information, see https://ui-router.github.io/blog/uirouter-for-angularjs-umd-bundles - * @version v1.0.14 + * @version v1.0.15 * @link https://ui-router.github.io * @license MIT License, http://www.opensource.org/licenses/MIT */ @@ -1028,10 +1028,7 @@ var silentRejection = function (error) { return silenceUncaughtInPromise(services.$q.reject(error)); }; -/** - * @module common - */ -/** for typedoc */ +/** @module common */ var Queue = /** @class */ (function () { function Queue(_items, _limit) { if (_items === void 0) { _items = []; } @@ -6163,16 +6160,14 @@ var isTransition = inArray(TRANSITION_TOKENS); // This function removes resolves for '$transition$' and `Transition` from the treeChanges. // Do not use this on current transitions, only on old ones. var treeChangesCleanup = function (trans) { + var nodes = values(trans.treeChanges()).reduce(unnestR, []).reduce(uniqR, []); // If the resolvable is a Transition, return a new resolvable with null data var replaceTransitionWithNull = function (r) { return isTransition(r.token) ? Resolvable.fromData(r.token, null) : r; }; - var cleanPath = function (path) { return path.map(function (node) { - var resolvables = node.resolvables.map(replaceTransitionWithNull); - return extend(node.clone(), { resolvables: resolvables }); - }); }; - var treeChanges = trans.treeChanges(); - mapObj(treeChanges, cleanPath, treeChanges); + nodes.forEach(function (node) { + node.resolvables = node.resolvables.map(replaceTransitionWithNull); + }); }; /** @module hooks */ /** */ diff --git a/UI/WebServerResources/js/vendor/angular-ui-router.js.map b/UI/WebServerResources/js/vendor/angular-ui-router.js.map index 5de7ecde6..eb3b27e11 100644 --- a/UI/WebServerResources/js/vendor/angular-ui-router.js.map +++ b/UI/WebServerResources/js/vendor/angular-ui-router.js.map @@ -92,7 +92,7 @@ "/** Predicates\n *\n * These predicates return true/false based on the input.\n * Although these functions are exported, they are subject to change without notice.\n *\n * @module common_predicates\n */\n/** */\nimport { and, not, pipe, prop, or } from './hof';\nimport { Predicate } from './common'; // has or is using\nimport { StateObject } from '../state/stateObject';\n\nconst toStr = Object.prototype.toString;\nconst tis = (t: string) => (x: any) => typeof(x) === t;\nexport const isUndefined = tis('undefined');\nexport const isDefined = not(isUndefined);\nexport const isNull = (o: any) => o === null;\nexport const isNullOrUndefined = or(isNull, isUndefined);\nexport const isFunction: (x: any) => x is Function = tis('function');\nexport const isNumber: (x: any) => x is number = tis('number');\nexport const isString = <(x: any) => x is string> tis('string');\nexport const isObject = (x: any) => x !== null && typeof x === 'object';\nexport const isArray = Array.isArray;\nexport const isDate: (x: any) => x is Date = ((x: any) => toStr.call(x) === '[object Date]');\nexport const isRegExp: (x: any) => x is RegExp = ((x: any) => toStr.call(x) === '[object RegExp]');\nexport const isState: (x: any) => x is StateObject = StateObject.isState;\n\n/**\n * Predicate which checks if a value is injectable\n *\n * A value is \"injectable\" if it is a function, or if it is an ng1 array-notation-style array\n * where all the elements in the array are Strings, except the last one, which is a Function\n */\nexport function isInjectable(val: any) {\n if (isArray(val) && val.length) {\n const head = val.slice(0, -1), tail = val.slice(-1);\n return !(head.filter(not(isString)).length || tail.filter(not(isFunction)).length);\n }\n return isFunction(val);\n}\n\n/**\n * Predicate which checks if a value looks like a Promise\n *\n * It is probably a Promise if it's an object, and it has a `then` property which is a Function\n */\nexport const isPromise = <(x: any) => x is Promise> and(isObject, pipe(prop('then'), isFunction));\n\n", "/**\n * This module is a stub for core services such as Dependency Injection or Browser Location.\n * Core services may be implemented by a specific framework, such as ng1 or ng2, or be pure javascript.\n *\n * @module common\n */\n/** for typedoc */\nimport { IInjectable, Obj } from './common';\nimport { Disposable } from '../interface';\nimport { UrlParts } from '../url/interface';\n\nexport let notImplemented = (fnname: string) => () => {\n throw new Error(`${fnname}(): No coreservices implementation for UI-Router is loaded.`);\n};\n\nconst services: CoreServices = {\n $q: undefined,\n $injector: undefined,\n};\n\nexport interface $QLikeDeferred {\n resolve: (val?: any) => void;\n reject: (reason?: any) => void;\n promise: Promise;\n}\n\nexport interface $QLike {\n when(value?: T | PromiseLike): Promise;\n reject(reason: any): Promise;\n defer(): $QLikeDeferred;\n all(promises: { [key: string]: Promise }): Promise;\n all(promises: Promise[]): Promise;\n}\n\nexport interface $InjectorLike {\n strictDi?: boolean;\n get(token: any): any;\n get(token: any): T;\n has(token: any): boolean;\n invoke(fn: IInjectable, context?: any, locals?: Obj): any;\n annotate(fn: IInjectable, strictDi?: boolean): any[];\n}\n\nexport interface CoreServices {\n $q: $QLike;\n $injector: $InjectorLike;\n}\n\nexport interface LocationServices extends Disposable {\n /**\n * Gets the current url string\n *\n * The URL is normalized using the internal [[path]]/[[search]]/[[hash]] values.\n *\n * For example, the URL may be stored in the hash ([[HashLocationServices]]) or\n * have a base HREF prepended ([[PushStateLocationServices]]).\n *\n * The raw URL in the browser might be:\n *\n * ```\n * http://mysite.com/somepath/index.html#/internal/path/123?param1=foo#anchor\n * ```\n *\n * or\n *\n * ```\n * http://mysite.com/basepath/internal/path/123?param1=foo#anchor\n * ```\n *\n * then this method returns:\n *\n * ```\n * /internal/path/123?param1=foo#anchor\n * ```\n *\n *\n * #### Example:\n * ```js\n * locationServices.url(); // \"/some/path?query=value#anchor\"\n * ```\n *\n * @returns the current value of the url, as a string.\n */\n url(): string;\n\n /**\n * Updates the url, or gets the current url\n *\n * Updates the url, changing it to the value in `newurl`\n *\n * #### Example:\n * ```js\n * locationServices.url(\"/some/path?query=value#anchor\", true);\n * ```\n *\n * @param newurl The new value for the URL.\n * This url should reflect only the new internal [[path]], [[search]], and [[hash]] values.\n * It should not include the protocol, site, port, or base path of an absolute HREF.\n * @param replace When true, replaces the current history entry (instead of appending it) with this new url\n * @param state The history's state object, i.e., pushState (if the LocationServices implementation supports it)\n * @return the url (after potentially being processed)\n */\n url(newurl: string, replace?: boolean, state?: any): string;\n\n /**\n * Gets the path part of the current url\n *\n * If the current URL is `/some/path?query=value#anchor`, this returns `/some/path`\n *\n * @return the path portion of the url\n */\n path(): string;\n\n /**\n * Gets the search part of the current url as an object\n *\n * If the current URL is `/some/path?query=value#anchor`, this returns `{ query: 'value' }`\n *\n * @return the search (querystring) portion of the url, as an object\n */\n search(): { [key: string]: any };\n\n /**\n * Gets the hash part of the current url\n *\n * If the current URL is `/some/path?query=value#anchor`, this returns `anchor`\n *\n * @return the hash (anchor) portion of the url\n */\n hash(): string;\n\n /**\n * Registers a url change handler\n *\n * #### Example:\n * ```js\n * let deregisterFn = locationServices.onChange((evt) => console.log(\"url change\", evt));\n * ```\n *\n * @param callback a function that will be called when the url is changing\n * @return a function that de-registers the callback\n */\n onChange(callback: Function): Function;\n}\n\n/**\n * This service returns the location configuration\n *\n * This service returns information about the location configuration.\n * This service is primarily used when building URLs (e.g., for `hrefs`)\n */\nexport interface LocationConfig extends Disposable {\n /**\n * Gets the port, e.g., `80`\n *\n * @return the port number\n */\n port(): number;\n /**\n * Gets the protocol, e.g., `http`\n *\n * @return the protocol\n */\n protocol(): string;\n /**\n * Gets the host, e.g., `localhost`\n *\n * @return the protocol\n */\n host(): string;\n /**\n * Gets the base Href, e.g., `http://localhost/approot/`\n *\n * @return the application's base href\n */\n baseHref(): string;\n /**\n * Returns true when running in pushstate mode\n *\n * @return true when running in pushstate mode\n */\n html5Mode(): boolean;\n /**\n * Gets the hashPrefix (when not running in pushstate mode)\n *\n * If the current url is `http://localhost/app#!/uirouter/path/#anchor`, it returns `!` which is the prefix for the \"hashbang\" portion.\n *\n * @return the hash prefix\n */\n hashPrefix(): string;\n /**\n * Sets the hashPrefix (when not running in pushstate mode)\n *\n * @return the new hash prefix\n */\n hashPrefix(newprefix: string): string;\n}\n\nexport { services };\n", "/**\n * Random utility functions used in the UI-Router code\n *\n * These functions are exported, but are subject to change without notice.\n *\n * @preferred\n * @module common\n */\n/** for typedoc */\nimport { isFunction, isString, isArray, isRegExp, isDate } from './predicates';\nimport { all, any, prop, curry, not } from './hof';\nimport { services } from './coreservices';\nimport { StateObject } from '../state/stateObject';\n\ndeclare const global;\nexport const root: any = (typeof self === 'object' && self.self === self && self) ||\n (typeof global === 'object' && global.global === global && global) || this;\nconst angular = root.angular || {};\n\nexport const fromJson = angular.fromJson || JSON.parse.bind(JSON);\nexport const toJson = angular.toJson || JSON.stringify.bind(JSON);\nexport const forEach = angular.forEach || _forEach;\nexport const extend = Object.assign || _extend;\nexport const equals = angular.equals || _equals;\nexport function identity(x: any) { return x; }\nexport function noop(): any {}\n\nexport type Mapper = (x: X, key?: (string|number)) => T;\nexport interface TypedMap { [key: string]: T; }\nexport type Predicate = (x?: X) => boolean;\n/**\n * An ng1-style injectable\n *\n * This could be a (non-minified) function such as:\n * ```js\n * function injectableFunction(SomeDependency) {\n *\n * }\n * ```\n *\n * or an explicitly annotated function (minify safe)\n * ```js\n * injectableFunction.$inject = [ 'SomeDependency' ];\n * function injectableFunction(SomeDependency) {\n *\n * }\n * ```\n *\n * or an array style annotated function (minify safe)\n * ```js\n * ['SomeDependency', function injectableFunction(SomeDependency) {\n *\n * }];\n * ```\n *\n * @publicapi\n */\nexport type IInjectable = (Function|any[]);\n\nexport interface Obj extends Object {\n [key: string]: any;\n}\n\n/**\n * Builds proxy functions on the `to` object which pass through to the `from` object.\n *\n * For each key in `fnNames`, creates a proxy function on the `to` object.\n * The proxy function calls the real function on the `from` object.\n *\n *\n * #### Example:\n * This example creates an new class instance whose functions are prebound to the new'd object.\n * ```js\n * class Foo {\n * constructor(data) {\n * // Binds all functions from Foo.prototype to 'this',\n * // then copies them to 'this'\n * bindFunctions(Foo.prototype, this, this);\n * this.data = data;\n * }\n *\n * log() {\n * console.log(this.data);\n * }\n * }\n *\n * let myFoo = new Foo([1,2,3]);\n * var logit = myFoo.log;\n * logit(); // logs [1, 2, 3] from the myFoo 'this' instance\n * ```\n *\n * #### Example:\n * This example creates a bound version of a service function, and copies it to another object\n * ```\n *\n * var SomeService = {\n * this.data = [3, 4, 5];\n * this.log = function() {\n * console.log(this.data);\n * }\n * }\n *\n * // Constructor fn\n * function OtherThing() {\n * // Binds all functions from SomeService to SomeService,\n * // then copies them to 'this'\n * bindFunctions(SomeService, this, SomeService);\n * }\n *\n * let myOtherThing = new OtherThing();\n * myOtherThing.log(); // logs [3, 4, 5] from SomeService's 'this'\n * ```\n *\n * @param source A function that returns the source object which contains the original functions to be bound\n * @param target A function that returns the target object which will receive the bound functions\n * @param bind A function that returns the object which the functions will be bound to\n * @param fnNames The function names which will be bound (Defaults to all the functions found on the 'from' object)\n * @param latebind If true, the binding of the function is delayed until the first time it's invoked\n */\nexport function createProxyFunctions(source: Function, target: Obj, bind: Function, fnNames?: string[], latebind = false): Obj {\n const bindFunction = (fnName) =>\n source()[fnName].bind(bind());\n\n const makeLateRebindFn = fnName => function lateRebindFunction() {\n target[fnName] = bindFunction(fnName);\n return target[fnName].apply(null, arguments);\n };\n\n fnNames = fnNames || Object.keys(source());\n\n return fnNames.reduce((acc, name) => {\n acc[name] = latebind ? makeLateRebindFn(name) : bindFunction(name);\n return acc;\n }, target);\n}\n\n\n/**\n * prototypal inheritance helper.\n * Creates a new object which has `parent` object as its prototype, and then copies the properties from `extra` onto it\n */\nexport const inherit = (parent: Obj, extra?: Obj) =>\n extend(Object.create(parent), extra);\n\n/** Given an array, returns true if the object is found in the array, (using indexOf) */\nexport const inArray: typeof _inArray = curry(_inArray) as any;\nexport function _inArray(array: any[], obj: any): boolean;\nexport function _inArray(array: any[]): (obj: any) => boolean;\nexport function _inArray(array, obj?): any {\n return array.indexOf(obj) !== -1;\n}\n\n/**\n * Given an array, and an item, if the item is found in the array, it removes it (in-place).\n * The same array is returned\n */\nexport const removeFrom: typeof _removeFrom = curry(_removeFrom) as any;\nexport function _removeFrom(array: T[], obj: T): T[];\nexport function _removeFrom(array: T[]): (obj: T) => T[];\nexport function _removeFrom(array, obj?) {\n const idx = array.indexOf(obj);\n if (idx >= 0) array.splice(idx, 1);\n return array;\n}\n\n/** pushes a values to an array and returns the value */\nexport const pushTo: typeof _pushTo = curry(_pushTo) as any;\nexport function _pushTo(arr: T[], val: T): T ;\nexport function _pushTo(arr: T[]): (val: T) => T ;\nexport function _pushTo(arr, val?): any {\n return (arr.push(val), val);\n}\n\n/** Given an array of (deregistration) functions, calls all functions and removes each one from the source array */\nexport const deregAll = (functions: Function[]) =>\n functions.slice().forEach(fn => {\n typeof fn === 'function' && fn();\n removeFrom(functions, fn);\n });\n/**\n * Applies a set of defaults to an options object. The options object is filtered\n * to only those properties of the objects in the defaultsList.\n * Earlier objects in the defaultsList take precedence when applying defaults.\n */\nexport function defaults(opts, ...defaultsList: Obj[]) {\n const _defaultsList = defaultsList.concat({}).reverse();\n const defaultVals = extend.apply(null, _defaultsList);\n return extend({}, defaultVals, pick(opts || {}, Object.keys(defaultVals)));\n}\n\n/** Reduce function that merges each element of the list into a single object, using extend */\nexport const mergeR = (memo: Obj, item: Obj) => extend(memo, item);\n\n/**\n * Finds the common ancestor path between two states.\n *\n * @param {Object} first The first state.\n * @param {Object} second The second state.\n * @return {Array} Returns an array of state names in descending order, not including the root.\n */\nexport function ancestors(first: StateObject, second: StateObject) {\n const path: StateObject[] = [];\n\n for (const n in first.path) { // tslint:disable-line:forin\n if (first.path[n] !== second.path[n]) break;\n path.push(first.path[n]);\n }\n return path;\n}\n\n/**\n * Return a copy of the object only containing the whitelisted properties.\n *\n * #### Example:\n * ```\n * var foo = { a: 1, b: 2, c: 3 };\n * var ab = pick(foo, ['a', 'b']); // { a: 1, b: 2 }\n * ```\n * @param obj the source object\n * @param propNames an Array of strings, which are the whitelisted property names\n */\nexport function pick(obj: Obj, propNames: string[]): Obj {\n const objCopy = {};\n for (const _prop in obj) {\n if (propNames.indexOf(_prop) !== -1) {\n objCopy[_prop] = obj[_prop];\n }\n }\n return objCopy;\n}\n\n/**\n * Return a copy of the object omitting the blacklisted properties.\n *\n * @example\n * ```\n *\n * var foo = { a: 1, b: 2, c: 3 };\n * var ab = omit(foo, ['a', 'b']); // { c: 3 }\n * ```\n * @param obj the source object\n * @param propNames an Array of strings, which are the blacklisted property names\n */\nexport function omit(obj: Obj, propNames: string[]): Obj {\n return Object.keys(obj)\n .filter(not(inArray(propNames)))\n .reduce((acc, key) => (acc[key] = obj[key], acc), {});\n}\n\n\n/** Given an array of objects, maps each element to a named property of the element. */\nexport function pluck(collection: Obj[], propName: string): T[];\n/** Given an object, maps each property of the object to a named property of the property. */\nexport function pluck(collection: { [key: string]: any }, propName: string): { [key: string]: any };\n/**\n * Maps an array, or object to a property (by name)\n */\nexport function pluck(collection: any, propName: string): any {\n return map(collection, > prop(propName));\n}\n\n\n/** Given an array of objects, returns a new array containing only the elements which passed the callback predicate */\nexport function filter(collection: T[], callback: (t: T, key?: number) => boolean): T[];\n/** Given an object, returns a new object with only those properties that passed the callback predicate */\nexport function filter(collection: TypedMap, callback: (t: T, key?: string) => boolean): TypedMap;\n/** Filters an Array or an Object's properties based on a predicate */\nexport function filter(collection: any, callback: Function): T {\n const arr = isArray(collection), result: any = arr ? [] : {};\n const accept = arr ? x => result.push(x) : (x, key) => result[key] = x;\n forEach(collection, function(item, i) {\n if (callback(item, i)) accept(item, i);\n });\n return result;\n}\n\n\n/** Given an object, return the first property of that object which passed the callback predicate */\nexport function find(collection: TypedMap, callback: Predicate): T;\n/** Given an array of objects, returns the first object which passed the callback predicate */\nexport function find(collection: T[], callback: Predicate): T;\n/** Finds an object from an array, or a property of an object, that matches a predicate */\nexport function find(collection: any, callback: any) {\n let result;\n\n forEach(collection, function(item, i) {\n if (result) return;\n if (callback(item, i)) result = item;\n });\n\n return result;\n}\n\n/** Given an object, returns a new object, where each property is transformed by the callback function */\nexport let mapObj: (collection: { [key: string]: T }, callback: Mapper, target?: typeof collection) => { [key: string]: U } = map;\n/** Given an array, returns a new array, where each element is transformed by the callback function */\nexport function map(collection: T[], callback: Mapper, target?: typeof collection): U[];\nexport function map(collection: { [key: string]: T }, callback: Mapper, target?: typeof collection): { [key: string]: U };\n/** Maps an array or object properties using a callback function */\nexport function map(collection: any, callback: any, target: typeof collection): any {\n target = target || (isArray(collection) ? [] : {});\n forEach(collection, (item, i) => target[i] = callback(item, i));\n return target;\n}\n\n/**\n * Given an object, return its enumerable property values\n *\n * @example\n * ```\n *\n * let foo = { a: 1, b: 2, c: 3 }\n * let vals = values(foo); // [ 1, 2, 3 ]\n * ```\n */\nexport const values: ( (obj: TypedMap) => T[]) = (obj: Obj) =>\n Object.keys(obj).map(key => obj[key]);\n\n/**\n * Reduce function that returns true if all of the values are truthy.\n *\n * @example\n * ```\n *\n * let vals = [ 1, true, {}, \"hello world\"];\n * vals.reduce(allTrueR, true); // true\n *\n * vals.push(0);\n * vals.reduce(allTrueR, true); // false\n * ```\n */\nexport const allTrueR = (memo: boolean, elem: any) => memo && elem;\n\n/**\n * Reduce function that returns true if any of the values are truthy.\n *\n * * @example\n * ```\n *\n * let vals = [ 0, null, undefined ];\n * vals.reduce(anyTrueR, true); // false\n *\n * vals.push(\"hello world\");\n * vals.reduce(anyTrueR, true); // true\n * ```\n */\nexport const anyTrueR = (memo: boolean, elem: any) => memo || elem;\n\n/**\n * Reduce function which un-nests a single level of arrays\n * @example\n * ```\n *\n * let input = [ [ \"a\", \"b\" ], [ \"c\", \"d\" ], [ [ \"double\", \"nested\" ] ] ];\n * input.reduce(unnestR, []) // [ \"a\", \"b\", \"c\", \"d\", [ \"double, \"nested\" ] ]\n * ```\n */\nexport const unnestR = (memo: any[], elem: any[]) => memo.concat(elem);\n\n/**\n * Reduce function which recursively un-nests all arrays\n *\n * @example\n * ```\n *\n * let input = [ [ \"a\", \"b\" ], [ \"c\", \"d\" ], [ [ \"double\", \"nested\" ] ] ];\n * input.reduce(unnestR, []) // [ \"a\", \"b\", \"c\", \"d\", \"double, \"nested\" ]\n * ```\n */\nexport const flattenR = (memo: any[], elem: any) =>\n isArray(elem) ? memo.concat(elem.reduce(flattenR, [])) : pushR(memo, elem);\n\n/**\n * Reduce function that pushes an object to an array, then returns the array.\n * Mostly just for [[flattenR]] and [[uniqR]]\n */\nexport function pushR(arr: any[], obj: any) {\n arr.push(obj);\n return arr;\n}\n\n/** Reduce function that filters out duplicates */\nexport const uniqR = (acc: T[], token: T): T[] =>\n inArray(acc, token) ? acc : pushR(acc, token);\n\n/**\n * Return a new array with a single level of arrays unnested.\n *\n * @example\n * ```\n *\n * let input = [ [ \"a\", \"b\" ], [ \"c\", \"d\" ], [ [ \"double\", \"nested\" ] ] ];\n * unnest(input) // [ \"a\", \"b\", \"c\", \"d\", [ \"double, \"nested\" ] ]\n * ```\n */\nexport const unnest = (arr: any[]) => arr.reduce(unnestR, []);\n/**\n * Return a completely flattened version of an array.\n *\n * @example\n * ```\n *\n * let input = [ [ \"a\", \"b\" ], [ \"c\", \"d\" ], [ [ \"double\", \"nested\" ] ] ];\n * flatten(input) // [ \"a\", \"b\", \"c\", \"d\", \"double, \"nested\" ]\n * ```\n */\nexport const flatten = (arr: any[]) => arr.reduce(flattenR, []);\n\n/**\n * Given a .filter Predicate, builds a .filter Predicate which throws an error if any elements do not pass.\n * @example\n * ```\n *\n * let isNumber = (obj) => typeof(obj) === 'number';\n * let allNumbers = [ 1, 2, 3, 4, 5 ];\n * allNumbers.filter(assertPredicate(isNumber)); //OK\n *\n * let oneString = [ 1, 2, 3, 4, \"5\" ];\n * oneString.filter(assertPredicate(isNumber, \"Not all numbers\")); // throws Error(\"\"Not all numbers\"\");\n * ```\n */\nexport const assertPredicate: (predicate: Predicate, errMsg: (string|Function)) => Predicate = assertFn;\n/**\n * Given a .map function, builds a .map function which throws an error if any mapped elements do not pass a truthyness test.\n * @example\n * ```\n *\n * var data = { foo: 1, bar: 2 };\n *\n * let keys = [ 'foo', 'bar' ]\n * let values = keys.map(assertMap(key => data[key], \"Key not found\"));\n * // values is [1, 2]\n *\n * let keys = [ 'foo', 'bar', 'baz' ]\n * let values = keys.map(assertMap(key => data[key], \"Key not found\"));\n * // throws Error(\"Key not found\")\n * ```\n */\nexport const assertMap: (mapFn: (t: T) => U, errMsg: (string|Function)) => (t: T) => U = assertFn;\nexport function assertFn(predicateOrMap: Function, errMsg: (string|Function) = 'assert failure'): any {\n return (obj) => {\n const result = predicateOrMap(obj);\n if (!result) {\n throw new Error(isFunction(errMsg) ? ( errMsg)(obj) : errMsg);\n }\n return result;\n };\n}\n\n/**\n * Like _.pairs: Given an object, returns an array of key/value pairs\n *\n * @example\n * ```\n *\n * pairs({ foo: \"FOO\", bar: \"BAR }) // [ [ \"foo\", \"FOO\" ], [ \"bar\": \"BAR\" ] ]\n * ```\n */\nexport const pairs = (obj: Obj) =>\n Object.keys(obj).map(key => [ key, obj[key]] );\n\n/**\n * Given two or more parallel arrays, returns an array of tuples where\n * each tuple is composed of [ a[i], b[i], ... z[i] ]\n *\n * @example\n * ```\n *\n * let foo = [ 0, 2, 4, 6 ];\n * let bar = [ 1, 3, 5, 7 ];\n * let baz = [ 10, 30, 50, 70 ];\n * arrayTuples(foo, bar); // [ [0, 1], [2, 3], [4, 5], [6, 7] ]\n * arrayTuples(foo, bar, baz); // [ [0, 1, 10], [2, 3, 30], [4, 5, 50], [6, 7, 70] ]\n * ```\n */\nexport function arrayTuples(...args: any[]): any[] {\n if (args.length === 0) return [];\n const maxArrayLen = args.reduce((min, arr) => Math.min(arr.length, min), 9007199254740991); // aka 2^53 − 1 aka Number.MAX_SAFE_INTEGER\n const result = [];\n\n for (let i = 0; i < maxArrayLen; i++) {\n // This is a hot function\n // Unroll when there are 1-4 arguments\n switch (args.length) {\n case 1: result.push([args[0][i]]); break;\n case 2: result.push([args[0][i], args[1][i]]); break;\n case 3: result.push([args[0][i], args[1][i], args[2][i]]); break;\n case 4: result.push([args[0][i], args[1][i], args[2][i], args[3][i]]); break;\n default:\n result.push(args.map(array => array[i])); break;\n }\n }\n\n return result;\n}\n\n/**\n * Reduce function which builds an object from an array of [key, value] pairs.\n *\n * Each iteration sets the key/val pair on the memo object, then returns the memo for the next iteration.\n *\n * Each keyValueTuple should be an array with values [ key: string, value: any ]\n *\n * @example\n * ```\n *\n * var pairs = [ [\"fookey\", \"fooval\"], [\"barkey\", \"barval\"] ]\n *\n * var pairsToObj = pairs.reduce((memo, pair) => applyPairs(memo, pair), {})\n * // pairsToObj == { fookey: \"fooval\", barkey: \"barval\" }\n *\n * // Or, more simply:\n * var pairsToObj = pairs.reduce(applyPairs, {})\n * // pairsToObj == { fookey: \"fooval\", barkey: \"barval\" }\n * ```\n */\nexport function applyPairs(memo: TypedMap, keyValTuple: any[]) {\n let key: string, value: any;\n if (isArray(keyValTuple)) [key, value] = keyValTuple;\n if (!isString(key)) throw new Error('invalid parameters to applyPairs');\n memo[key] = value;\n return memo;\n}\n\n/** Get the last element of an array */\nexport function tail(arr: T[]): T {\n return arr.length && arr[arr.length - 1] || undefined;\n}\n\n/**\n * shallow copy from src to dest\n */\nexport function copy(src: Obj, dest?: Obj) {\n if (dest) Object.keys(dest).forEach(key => delete dest[key]);\n if (!dest) dest = {};\n return extend(dest, src);\n}\n\n/** Naive forEach implementation works with Objects or Arrays */\nfunction _forEach(obj: (any[]|any), cb: (el, idx?) => void, _this: Obj) {\n if (isArray(obj)) return obj.forEach(cb, _this);\n Object.keys(obj).forEach(key => cb(obj[key], key));\n}\n\n/** Like Object.assign() */\nexport function _extend(toObj: Obj, ...fromObjs: Obj[]): any;\nexport function _extend(toObj: Obj): any {\n for (let i = 1; i < arguments.length; i++) {\n const obj = arguments[i];\n if (!obj) continue;\n const keys = Object.keys(obj);\n\n for (let j = 0; j < keys.length; j++) {\n toObj[keys[j]] = obj[keys[j]];\n }\n }\n\n return toObj;\n}\n\nfunction _equals(o1: any, o2: any): boolean {\n if (o1 === o2) return true;\n if (o1 === null || o2 === null) return false;\n if (o1 !== o1 && o2 !== o2) return true; // NaN === NaN\n const t1 = typeof o1, t2 = typeof o2;\n if (t1 !== t2 || t1 !== 'object') return false;\n\n const tup = [o1, o2];\n if (all(isArray)(tup)) return _arraysEq(o1, o2);\n if (all(isDate)(tup)) return o1.getTime() === o2.getTime();\n if (all(isRegExp)(tup)) return o1.toString() === o2.toString();\n if (all(isFunction)(tup)) return true; // meh\n\n const predicates = [isFunction, isArray, isDate, isRegExp];\n if (predicates.map(any).reduce((b, fn) => b || !!fn(tup), false)) return false;\n\n const keys: { [i: string]: boolean } = {};\n for (const key in o1) { // tslint:disable-line:forin\n if (!_equals(o1[key], o2[key])) return false;\n keys[key] = true;\n }\n for (const key in o2) {\n if (!keys[key]) return false;\n }\n\n return true;\n}\n\nfunction _arraysEq(a1: any[], a2: any[]) {\n if (a1.length !== a2.length) return false;\n return arrayTuples(a1, a2).reduce((b, t) => b && _equals(t[0], t[1]), true);\n}\n\n// issue #2676\nexport const silenceUncaughtInPromise = (promise: Promise) =>\n promise.catch(e => 0) && promise;\nexport const silentRejection = (error: any) =>\n silenceUncaughtInPromise(services.$q.reject(error));\n", - "import { pushTo } from './common';\n\n/**\n * @module common\n */\n/** for typedoc */\n\nexport class Queue {\n private _evictListeners: ((item: T) => void)[] = [];\n public onEvict = pushTo(this._evictListeners);\n\n constructor(private _items: T[] = [], private _limit: number = null) { }\n\n enqueue(item: T) {\n const items = this._items;\n items.push(item);\n if (this._limit && items.length > this._limit) this.evict();\n return item;\n }\n\n evict(): T {\n const item: T = this._items.shift();\n this._evictListeners.forEach(fn => fn(item));\n return item;\n }\n\n dequeue(): T {\n if (this.size())\n return this._items.splice(0, 1)[0];\n }\n\n clear(): Array {\n const current = this._items;\n this._items = [];\n return current;\n }\n\n size(): number {\n return this._items.length;\n }\n\n remove(item: T) {\n const idx = this._items.indexOf(item);\n return idx > -1 && this._items.splice(idx, 1)[0];\n }\n\n peekTail(): T {\n return this._items[this._items.length - 1];\n }\n\n peekHead(): T {\n if (this.size())\n return this._items[0];\n }\n}\n", + "/** @module common */\nimport { pushTo } from './common';\n\nexport class Queue {\n private _evictListeners: ((item: T) => void)[] = [];\n public onEvict = pushTo(this._evictListeners);\n\n constructor(private _items: T[] = [], private _limit: number = null) { }\n\n enqueue(item: T) {\n const items = this._items;\n items.push(item);\n if (this._limit && items.length > this._limit) this.evict();\n return item;\n }\n\n evict(): T {\n const item: T = this._items.shift();\n this._evictListeners.forEach(fn => fn(item));\n return item;\n }\n\n dequeue(): T {\n if (this.size())\n return this._items.splice(0, 1)[0];\n }\n\n clear(): Array {\n const current = this._items;\n this._items = [];\n return current;\n }\n\n size(): number {\n return this._items.length;\n }\n\n remove(item: T) {\n const idx = this._items.indexOf(item);\n return idx > -1 && this._items.splice(idx, 1)[0];\n }\n\n peekTail(): T {\n return this._items[this._items.length - 1];\n }\n\n peekHead(): T {\n if (this.size())\n return this._items[0];\n }\n}\n", "/**\n * @coreapi\n * @module transition\n */ /** for typedoc */\n'use strict';\nimport { extend, silentRejection } from '../common/common';\nimport { stringify } from '../common/strings';\nimport { is } from '../common/hof';\n\nexport enum RejectType {\n SUPERSEDED = 2, ABORTED = 3, INVALID = 4, IGNORED = 5, ERROR = 6,\n}\n\n/** @hidden */\nlet id = 0;\n\nexport class Rejection {\n $id = id++;\n type: number;\n message: string;\n detail: any;\n redirected: boolean;\n\n /** Returns true if the obj is a rejected promise created from the `asPromise` factory */\n static isRejectionPromise(obj: any): boolean {\n return obj && (typeof obj.then === 'function') && is(Rejection)(obj._transitionRejection);\n }\n\n /** Returns a Rejection due to transition superseded */\n static superseded(detail?: any, options?: any): Rejection {\n const message = 'The transition has been superseded by a different transition';\n const rejection = new Rejection(RejectType.SUPERSEDED, message, detail);\n if (options && options.redirected) {\n rejection.redirected = true;\n }\n return rejection;\n }\n\n /** Returns a Rejection due to redirected transition */\n static redirected(detail?: any): Rejection {\n return Rejection.superseded(detail, { redirected: true });\n }\n\n /** Returns a Rejection due to invalid transition */\n static invalid(detail?: any): Rejection {\n const message = 'This transition is invalid';\n return new Rejection(RejectType.INVALID, message, detail);\n }\n\n /** Returns a Rejection due to ignored transition */\n static ignored(detail?: any): Rejection {\n const message = 'The transition was ignored';\n return new Rejection(RejectType.IGNORED, message, detail);\n }\n\n /** Returns a Rejection due to aborted transition */\n static aborted(detail?: any): Rejection {\n const message = 'The transition has been aborted';\n return new Rejection(RejectType.ABORTED, message, detail);\n }\n\n /** Returns a Rejection due to aborted transition */\n static errored(detail?: any): Rejection {\n const message = 'The transition errored';\n return new Rejection(RejectType.ERROR, message, detail);\n }\n\n /**\n * Returns a Rejection\n *\n * Normalizes a value as a Rejection.\n * If the value is already a Rejection, returns it.\n * Otherwise, wraps and returns the value as a Rejection (Rejection type: ERROR).\n *\n * @returns `detail` if it is already a `Rejection`, else returns an ERROR Rejection.\n */\n static normalize(detail?: Rejection | Error | any): Rejection {\n return is(Rejection)(detail) ? detail : Rejection.errored(detail);\n }\n\n constructor(type: number, message?: string, detail?: any) {\n this.type = type;\n this.message = message;\n this.detail = detail;\n }\n\n toString() {\n const detailString = (d: any) =>\n d && d.toString !== Object.prototype.toString ? d.toString() : stringify(d);\n const detail = detailString(this.detail);\n const { $id, type, message } = this;\n return `Transition Rejection($id: ${$id} type: ${type}, message: ${message}, detail: ${detail})`;\n }\n\n toPromise(): Promise {\n return extend(silentRejection(this), { _transitionRejection: this });\n }\n}\n", "/**\n * # Transition tracing (debug)\n *\n * Enable transition tracing to print transition information to the console,\n * in order to help debug your application.\n * Tracing logs detailed information about each Transition to your console.\n *\n * To enable tracing, import the [[Trace]] singleton and enable one or more categories.\n *\n * ### ES6\n * ```js\n * import {trace} from \"ui-router-ng2\"; // or \"angular-ui-router\"\n * trace.enable(1, 5); // TRANSITION and VIEWCONFIG\n * ```\n *\n * ### CJS\n * ```js\n * let trace = require(\"angular-ui-router\").trace; // or \"ui-router-ng2\"\n * trace.enable(\"TRANSITION\", \"VIEWCONFIG\");\n * ```\n *\n * ### Globals\n * ```js\n * let trace = window[\"angular-ui-router\"].trace; // or \"ui-router-ng2\"\n * trace.enable(); // Trace everything (very verbose)\n * ```\n *\n * ### Angular 1:\n * ```js\n * app.run($trace => $trace.enable());\n * ```\n *\n * @coreapi\n * @module trace\n */\n/* tslint:disable:no-console */\nimport { parse } from '../common/hof';\nimport { isFunction, isNumber } from '../common/predicates';\nimport { Transition } from '../transition/transition';\nimport { ViewTuple } from '../view';\nimport { ActiveUIView, ViewConfig, ViewContext } from '../view/interface';\nimport { stringify, functionToString, maxLength, padString } from './strings';\nimport { Resolvable } from '../resolve/resolvable';\nimport { PathNode } from '../path/pathNode';\nimport { PolicyWhen } from '../resolve/interface';\nimport { TransitionHook } from '../transition/transitionHook';\nimport { HookResult } from '../transition/interface';\nimport { StateObject } from '../state/stateObject';\n\n/** @hidden */\nfunction uiViewString (uiview: ActiveUIView) {\n if (!uiview) return 'ui-view (defunct)';\n const state = uiview.creationContext ? uiview.creationContext.name || '(root)' : '(none)';\n return `[ui-view#${uiview.id} ${uiview.$type}:${uiview.fqn} (${uiview.name}@${state})]`;\n}\n\n/** @hidden */\nconst viewConfigString = (viewConfig: ViewConfig) => {\n const view = viewConfig.viewDecl;\n const state = view.$context.name || '(root)';\n return `[View#${viewConfig.$id} from '${state}' state]: target ui-view: '${view.$uiViewName}@${view.$uiViewContextAnchor}'`;\n};\n\n/** @hidden */\nfunction normalizedCat(input: Category|string): string {\n return isNumber(input) ? Category[input] : Category[Category[input]];\n}\n\n/** @hidden */\nconst consoleLog = Function.prototype.bind.call(console.log, console);\n\n/** @hidden */\nconst consoletable = isFunction(console.table) ? console.table.bind(console) : consoleLog.bind(console);\n\n\n/**\n * Trace categories Enum\n *\n * Enable or disable a category using [[Trace.enable]] or [[Trace.disable]]\n *\n * `trace.enable(Category.TRANSITION)`\n *\n * These can also be provided using a matching string, or position ordinal\n *\n * `trace.enable(\"TRANSITION\")`\n *\n * `trace.enable(1)`\n */\nexport enum Category {\n RESOLVE, TRANSITION, HOOK, UIVIEW, VIEWCONFIG,\n}\n\n/** @hidden */\nconst _tid = parse('$id');\n\n/** @hidden */\nconst _rid = parse('router.$id');\n\n/** @hidden */\nconst transLbl = (trans) => `Transition #${_tid(trans)}-${_rid(trans)}`;\n\n/**\n * Prints UI-Router Transition trace information to the console.\n */\nexport class Trace {\n /** @hidden */\n approximateDigests: number;\n\n /** @hidden */\n private _enabled: { [key: string]: boolean } = {};\n\n /** @hidden */\n constructor() {\n this.approximateDigests = 0;\n }\n\n /** @hidden */\n private _set(enabled: boolean, categories: Category[]) {\n if (!categories.length) {\n categories = Object.keys(Category)\n .map(k => parseInt(k, 10))\n .filter(k => !isNaN(k))\n .map(key => Category[key]);\n }\n categories.map(normalizedCat).forEach(category => this._enabled[category] = enabled);\n }\n\n /**\n * Enables a trace [[Category]]\n *\n * ```js\n * trace.enable(\"TRANSITION\");\n * ```\n *\n * @param categories categories to enable. If `categories` is omitted, all categories are enabled.\n * Also takes strings (category name) or ordinal (category position)\n */\n enable(...categories: (Category|string|number)[]);\n enable(...categories: any[]) { this._set(true, categories); }\n /**\n * Disables a trace [[Category]]\n *\n * ```js\n * trace.disable(\"VIEWCONFIG\");\n * ```\n *\n * @param categories categories to disable. If `categories` is omitted, all categories are disabled.\n * Also takes strings (category name) or ordinal (category position)\n */\n disable(...categories: (Category|string|number)[]);\n disable(...categories: any[]) { this._set(false, categories); }\n\n /**\n * Retrieves the enabled stateus of a [[Category]]\n *\n * ```js\n * trace.enabled(\"VIEWCONFIG\"); // true or false\n * ```\n *\n * @returns boolean true if the category is enabled\n */\n enabled(category: (Category|string|number)): boolean {\n return !!this._enabled[normalizedCat(category)];\n }\n\n /** @internalapi called by ui-router code */\n traceTransitionStart(trans: Transition) {\n if (!this.enabled(Category.TRANSITION)) return;\n console.log(`${transLbl(trans)}: Started -> ${stringify(trans)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceTransitionIgnored(trans: Transition) {\n if (!this.enabled(Category.TRANSITION)) return;\n console.log(`${transLbl(trans)}: Ignored <> ${stringify(trans)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceHookInvocation(step: TransitionHook, trans: Transition, options: any) {\n if (!this.enabled(Category.HOOK)) return;\n const event = parse('traceData.hookType')(options) || 'internal',\n context = parse('traceData.context.state.name')(options) || parse('traceData.context')(options) || 'unknown',\n name = functionToString((step as any).registeredHook.callback);\n console.log(`${transLbl(trans)}: Hook -> ${event} context: ${context}, ${maxLength(200, name)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceHookResult(hookResult: HookResult, trans: Transition, transitionOptions: any) {\n if (!this.enabled(Category.HOOK)) return;\n console.log(`${transLbl(trans)}: <- Hook returned: ${maxLength(200, stringify(hookResult))}`);\n }\n\n /** @internalapi called by ui-router code */\n traceResolvePath(path: PathNode[], when: PolicyWhen, trans?: Transition) {\n if (!this.enabled(Category.RESOLVE)) return;\n console.log(`${transLbl(trans)}: Resolving ${path} (${when})`);\n }\n\n /** @internalapi called by ui-router code */\n traceResolvableResolved(resolvable: Resolvable, trans?: Transition) {\n if (!this.enabled(Category.RESOLVE)) return;\n console.log(`${transLbl(trans)}: <- Resolved ${resolvable} to: ${maxLength(200, stringify(resolvable.data))}`);\n }\n\n /** @internalapi called by ui-router code */\n traceError(reason: any, trans: Transition) {\n if (!this.enabled(Category.TRANSITION)) return;\n console.log(`${transLbl(trans)}: <- Rejected ${stringify(trans)}, reason: ${reason}`);\n }\n\n /** @internalapi called by ui-router code */\n traceSuccess(finalState: StateObject, trans: Transition) {\n if (!this.enabled(Category.TRANSITION)) return;\n console.log(`${transLbl(trans)}: <- Success ${stringify(trans)}, final state: ${finalState.name}`);\n }\n\n /** @internalapi called by ui-router code */\n traceUIViewEvent(event: string, viewData: ActiveUIView, extra = '') {\n if (!this.enabled(Category.UIVIEW)) return;\n console.log(`ui-view: ${padString(30, event)} ${uiViewString(viewData)}${extra}`);\n }\n\n /** @internalapi called by ui-router code */\n traceUIViewConfigUpdated(viewData: ActiveUIView, context: ViewContext) {\n if (!this.enabled(Category.UIVIEW)) return;\n this.traceUIViewEvent('Updating', viewData, ` with ViewConfig from context='${context}'`);\n }\n\n /** @internalapi called by ui-router code */\n traceUIViewFill(viewData: ActiveUIView, html: string) {\n if (!this.enabled(Category.UIVIEW)) return;\n this.traceUIViewEvent('Fill', viewData, ` with: ${maxLength(200, html)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceViewSync(pairs: ViewTuple[]) {\n if (!this.enabled(Category.VIEWCONFIG)) return;\n const uivheader = 'uiview component fqn';\n const cfgheader = 'view config state (view name)';\n const mapping = pairs.map(({ uiView, viewConfig }) => {\n const uiv = uiView && uiView.fqn;\n const cfg = viewConfig && `${viewConfig.viewDecl.$context.name}: (${viewConfig.viewDecl.$name})`;\n return { [uivheader]: uiv, [cfgheader]: cfg };\n }).sort((a, b) => (a[uivheader] || '').localeCompare(b[uivheader] || ''));\n\n consoletable(mapping);\n }\n\n /** @internalapi called by ui-router code */\n traceViewServiceEvent(event: string, viewConfig: ViewConfig) {\n if (!this.enabled(Category.VIEWCONFIG)) return;\n console.log(`VIEWCONFIG: ${event} ${viewConfigString(viewConfig)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceViewServiceUIViewEvent(event: string, viewData: ActiveUIView) {\n if (!this.enabled(Category.VIEWCONFIG)) return;\n console.log(`VIEWCONFIG: ${event} ${uiViewString(viewData)}`);\n }\n}\n\n/**\n * The [[Trace]] singleton\n *\n * #### Example:\n * ```js\n * import {trace} from \"angular-ui-router\";\n * trace.enable(1, 5);\n * ```\n */\nconst trace = new Trace();\nexport { trace };\n", "/**\n * @coreapi\n * @module transition\n */ /** for typedoc */\nimport { StateDeclaration } from '../state/interface';\nimport { Predicate } from '../common/common';\n\nimport { Transition } from './transition';\nimport { StateObject } from '../state/stateObject';\nimport { PathNode } from '../path/pathNode';\nimport { TargetState } from '../state/targetState';\nimport { RegisteredHook } from './hookRegistry';\n\n/**\n * The TransitionOptions object can be used to change the behavior of a transition.\n *\n * It is passed as the third argument to [[StateService.go]], [[StateService.transitionTo]].\n * It can also be used with a `uiSref`.\n */\nexport interface TransitionOptions {\n /**\n * This option changes how the Transition interacts with the browser's location bar (URL).\n *\n * - If `true`, it will update the url in the location bar.\n * - If `false`, it will not update the url in the location bar.\n * - If it is the string `\"replace\"`, it will update the url and also replace the last history record.\n *\n * @default `true`\n */\n location ?: (boolean|string);\n\n /**\n * When transitioning to relative path (e.g '`^`'), this option defines which state to be relative from.\n * @default `$state.current`\n */\n relative ?: (string|StateDeclaration|StateObject);\n\n /**\n * This option sets whether or not the transition's parameter values should be inherited from\n * the current parameter values.\n *\n * - If `true`, it will inherit parameter values from the current parameter values.\n * - If `false`, only the parameters which are provided to `transitionTo` will be used.\n *\n * @default `false`\n */\n inherit ?: boolean;\n\n /**\n * @deprecated\n */\n notify ?: boolean;\n\n /**\n * This option may be used to force states which are currently active to reload.\n *\n * During a normal transition, a state is \"retained\" if:\n * - It was previously active\n * - The state's parameter values have not changed\n * - All the parent states' parameter values have not changed\n *\n * Forcing a reload of a state will cause it to be exited and entered, which will:\n * - Refetch that state's resolve data\n * - Exit the state (onExit hook)\n * - Re-enter the state (onEnter hook)\n * - Re-render the views (controllers and templates)\n *\n * - When `true`, the destination state (and all parent states) will be reloaded.\n * - When it is a string and is the name of a state, or when it is a State object,\n * that state and any children states will be reloaded.\n *\n * @default `false`\n */\n reload ?: (boolean|string|StateDeclaration|StateObject);\n /**\n * You can define your own Transition Options inside this property and use them, e.g., from a Transition Hook\n */\n custom ?: any;\n /** @internalapi */\n reloadState ?: (StateObject);\n /** @internalapi\n * If this transition is a redirect, this property should be the original Transition (which was redirected to this one)\n */\n redirectedFrom?: Transition;\n /** @internalapi */\n current ?: () => Transition;\n /** @internalapi */\n source ?: 'sref' | 'url' | 'redirect' | 'otherwise' | 'unknown';\n}\n\n/** @internalapi */\nexport interface TransitionHookOptions {\n current ?: () => Transition; // path?\n transition ?: Transition;\n hookType ?: string;\n target ?: any;\n traceData ?: any;\n bind ?: any;\n stateHook ?: boolean;\n}\n\n/**\n * TreeChanges encapsulates the various Paths that are involved in a Transition.\n *\n * Get a TreeChanges object using [[Transition.treeChanges]]\n *\n * A UI-Router Transition is from one Path in a State Tree to another Path. For a given Transition,\n * this object stores the \"to\" and \"from\" paths, as well as subsets of those: the \"retained\",\n * \"exiting\" and \"entering\" paths.\n *\n * Each path in TreeChanges is an array of [[PathNode]] objects. Each PathNode in the array corresponds to a portion\n * of a nested state.\n *\n * For example, if you had a nested state named `foo.bar.baz`, it would have three\n * portions, `foo, bar, baz`. If you transitioned **to** `foo.bar.baz` and inspected the [[TreeChanges.to]]\n * Path, you would find a node in the array for each portion: `foo`, `bar`, and `baz`.\n *\n * ---\n *\n * @todo show visual state tree\n */\nexport interface TreeChanges {\n /** @nodoc */\n [key: string]: PathNode[];\n\n /** The path of nodes in the state tree that the transition is coming *from* */\n from: PathNode[];\n\n /** The path of nodes in the state tree that the transition is going *to* */\n to: PathNode[];\n\n /**\n * The path of active nodes that the transition is retaining.\n *\n * These nodes are neither exited, nor entered.\n * Before and after the transition is successful, these nodes are active.\n */\n retained: PathNode[];\n\n /**\n * The path of active nodes that the transition is retaining with updated \"to params\" applied.\n *\n * These nodes are neither exited, nor entered.\n * Before and after the transition is successful, these nodes are active.\n *\n * This is a shallow copy of [[retained]], but with new (dynamic) parameter values from [[to]] applied.\n */\n retainedWithToParams: PathNode[];\n\n /**\n * The path of previously active nodes that the transition is exiting.\n *\n * After the Transition is successful, these nodes are no longer active.\n *\n * Note that a state that is being reloaded (due to parameter values changing, or `reload: true`) may be in both the\n * `exiting` and `entering` paths.\n */\n exiting: PathNode[];\n\n /**\n * The path of nodes that the transition is entering.\n *\n * After the Transition is successful, these nodes will be active.\n * Because they are entering, they have their resolves fetched, `onEnter` hooks run, and their views\n * (component(s) or controller(s)+template(s)) refreshed.\n *\n * Note that a state that is reloaded (due to parameter values changing, or `reload: true`) may be in both the\n * `exiting` and `entering` paths.\n */\n entering: PathNode[];\n}\n\nexport type IHookRegistration = (matchCriteria: HookMatchCriteria, callback: HookFn, options?: HookRegOptions) => Function;\n\n/**\n * The signature for Transition Hooks.\n *\n * Transition hooks are callback functions that hook into the lifecycle of transitions.\n * As a transition runs, it reaches certain lifecycle events.\n * As each event occurs, the hooks which are registered for the event are called (in priority order).\n *\n * A transition hook may alter a Transition by returning a [[HookResult]].\n *\n * #### See:\n *\n * - [[IHookRegistry.onBefore]]\n * - [[IHookRegistry.onStart]]\n * - [[IHookRegistry.onFinish]]\n * - [[IHookRegistry.onSuccess]]\n * - [[IHookRegistry.onError]]\n *\n * @param transition the current [[Transition]]\n * @param injector (for ng1 or ng2 only) the injector service\n *\n * @returns a [[HookResult]] which may alter the transition\n *\n */\nexport interface TransitionHookFn {\n (transition: Transition): HookResult;\n}\n\n/**\n * The signature for Transition State Hooks.\n *\n * A function which hooks into a lifecycle event for a specific state.\n *\n * Transition State Hooks are callback functions that hook into the lifecycle events of specific states during a transition.\n * As a transition runs, it may exit some states, retain (keep) states, and enter states.\n * As each lifecycle event occurs, the hooks which are registered for the event and that state are called (in priority order).\n *\n * #### See:\n *\n * - [[IHookRegistry.onExit]]\n * - [[IHookRegistry.onRetain]]\n * - [[IHookRegistry.onEnter]]\n *\n * @param transition the current [[Transition]]\n * @param state the [[StateObject]] that the hook is bound to\n * @param injector (for ng1 or ng2 only) the injector service\n *\n * @returns a [[HookResult]] which may alter the transition\n */\nexport interface TransitionStateHookFn {\n (transition: Transition, state: StateDeclaration): HookResult;\n}\n\n/**\n * The signature for Transition onCreate Hooks.\n *\n * Transition onCreate Hooks are callbacks that allow customization or preprocessing of\n * a Transition before it is returned from [[TransitionService.create]]\n *\n * @param transition the [[Transition]] that was just created\n * @return a [[Transition]] which will then be returned from [[TransitionService.create]]\n */\nexport interface TransitionCreateHookFn {\n (transition: Transition): void;\n}\n\nexport type HookFn = (TransitionHookFn|TransitionStateHookFn|TransitionCreateHookFn);\n\n/**\n * The return value of a [[TransitionHookFn]] or [[TransitionStateHookFn]]\n *\n * When returned from a [[TransitionHookFn]] or [[TransitionStateHookFn]], these values alter the running [[Transition]]:\n *\n * - `false`: the transition will be cancelled.\n * - [[TargetState]]: the transition will be redirected to the new target state (see: [[StateService.target]])\n * - `Promise`: the transition will wait for the promise to resolve or reject\n * - If the promise is rejected (or resolves to `false`), the transition will be cancelled\n * - If the promise resolves to a [[TargetState]], the transition will be redirected\n * - If the promise resolves to anything else, the transition will resume\n * - Anything else: the transition will resume\n */\nexport type HookResult = (boolean | TargetState | void | Promise);\n\n/**\n * These options may be provided when registering a Transition Hook (such as `onStart`)\n */\nexport interface HookRegOptions {\n /**\n * Sets the priority of the registered hook\n *\n * Hooks of the same type (onBefore, onStart, etc) are invoked in priority order. A hook with a higher priority\n * is invoked before a hook with a lower priority.\n *\n * The default hook priority is 0\n */\n priority?: number;\n\n /**\n * Specifies what `this` is bound to during hook invocation.\n */\n bind?: any;\n\n /**\n * Limits the number of times that the hook will be invoked.\n * Once the hook has been invoked this many times, it is automatically deregistered.\n */\n invokeLimit?: number;\n}\n\n/**\n * This interface specifies the api for registering Transition Hooks. Both the\n * [[TransitionService]] and also the [[Transition]] object itself implement this interface.\n * Note: the Transition object only allows hooks to be registered before the Transition is started.\n */\nexport interface IHookRegistry {\n /** @hidden place to store the hooks */\n _registeredHooks: { [key: string]: RegisteredHook[] };\n\n /**\n * Registers a [[TransitionHookFn]], called *before a transition starts*.\n *\n * Registers a transition lifecycle hook, which is invoked before a transition even begins.\n * This hook can be useful to implement logic which prevents a transition from even starting, such\n * as authentication, redirection\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onBefore` hooks are invoked *before a Transition starts*.\n * No resolves have been fetched yet.\n * Each `onBefore` hook is invoked synchronously, in the same call stack as [[StateService.transitionTo]].\n * The registered `onBefore` hooks are invoked in priority order.\n *\n * Note: during the `onBefore` phase, additional hooks can be added to the specific [[Transition]] instance.\n * These \"on-the-fly\" hooks only affect the currently running transition..\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * If any hook modifies the transition *synchronously* (by throwing, returning `false`, or returning\n * a [[TargetState]]), the remainder of the hooks are skipped.\n * If a hook returns a promise, the remainder of the `onBefore` hooks are still invoked synchronously.\n * All promises are resolved, and processed asynchronously before the `onStart` phase of the Transition.\n *\n * ### Examples\n *\n * #### Default Substate\n *\n * This example redirects any transition from 'home' to 'home.dashboard'. This is commonly referred to as a\n * \"default substate\".\n *\n * @example\n * ```js\n * // ng2\n * transitionService.onBefore({ to: 'home' }, (trans: Transition) =>\n * trans.router.stateService.target(\"home.dashboard\"));\n * ```\n *\n * #### Data Driven Default Substate\n *\n * This example provides data-driven default substate functionality. It matches on a transition to any state\n * which has `defaultSubstate: \"some.sub.state\"` defined. See: [[Transition.to]] which returns the \"to state\"\n * definition.\n *\n * @example\n * ```js\n * // ng1\n * // state declaration\n * {\n * name: 'home',\n * template: '
',\n * defaultSubstate: 'home.dashboard'\n * }\n *\n * var criteria = {\n * to: function(state) {\n * return state.defaultSubstate != null;\n * }\n * }\n *\n * $transitions.onBefore(criteria, function(trans: Transition) {\n * var substate = trans.to().defaultSubstate;\n * return trans.router.stateService.target(substate);\n * });\n * ```\n *\n *\n * #### Require authentication\n *\n * This example cancels a transition to a state which requires authentication, if the user is not currently authenticated.\n *\n * This example assumes a state tree where all states which require authentication are children of a parent `'requireauth'` state.\n * This example assumes `MyAuthService` synchronously returns a boolean from `isAuthenticated()`.\n *\n * #### Example:\n * ```js\n * // ng1\n * $transitions.onBefore( { to: 'requireauth.**' }, function(trans) {\n * var myAuthService = trans.injector().get('MyAuthService');\n * // If isAuthenticated returns false, the transition is cancelled.\n * return myAuthService.isAuthenticated();\n * });\n * ```\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be invoked.\n * @returns a function which deregisters the hook.\n */\n onBefore(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionHookFn]], called when a transition starts.\n *\n * Registers a transition lifecycle hook, which is invoked as a transition starts running.\n * This hook can be useful to perform some asynchronous action before completing a transition.\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onStart` hooks are invoked asynchronously when the Transition starts running.\n * This happens after the `onBefore` phase is complete.\n * At this point, the Transition has not yet exited nor entered any states.\n * The registered `onStart` hooks are invoked in priority order.\n *\n * Note: A built-in `onStart` hook with high priority is used to fetch any eager resolve data.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * ### Example\n *\n * #### Login during transition\n *\n * This example intercepts any transition to a state which requires authentication, when the user is\n * not currently authenticated. It allows the user to authenticate asynchronously, then resumes the\n * transition. If the user did not authenticate successfully, it redirects to the \"guest\" state, which\n * does not require authentication.\n *\n * This example assumes:\n * - a state tree where all states which require authentication are children of a parent `'auth'` state.\n * - `MyAuthService.isAuthenticated()` synchronously returns a boolean.\n * - `MyAuthService.authenticate()` presents a login dialog, and returns a promise which is resolved\n * or rejected, whether or not the login attempt was successful.\n *\n * #### Example:\n * ```js\n * // ng1\n * $transitions.onStart( { to: 'auth.**' }, function(trans) {\n * var $state = trans.router.stateService;\n * var MyAuthService = trans.injector().get('MyAuthService');\n *\n * // If the user is not authenticated\n * if (!MyAuthService.isAuthenticated()) {\n *\n * // Then return a promise for a successful login.\n * // The transition will wait for this promise to settle\n *\n * return MyAuthService.authenticate().catch(function() {\n *\n * // If the authenticate() method failed for whatever reason,\n * // redirect to a 'guest' state which doesn't require auth.\n * return $state.target(\"guest\");\n * });\n * }\n * });\n * ```\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onStart(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionStateHookFn]], called when a specific state is entered.\n *\n * Registers a lifecycle hook, which is invoked (during a transition) when a specific state is being entered.\n *\n * Since this hook is run only when the specific state is being *entered*, it can be useful for\n * performing tasks when entering a submodule/feature area such as initializing a stateful service,\n * or for guarding access to a submodule/feature area.\n *\n * See [[TransitionStateHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * `onEnter` hooks generally specify `{ entering: 'somestate' }`.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onEnter` hooks are invoked when the Transition is entering a state.\n * States are entered after the `onRetain` phase is complete.\n * If more than one state is being entered, the parent state is entered first.\n * The registered `onEnter` hooks for a state are invoked in priority order.\n *\n * Note: A built-in `onEnter` hook with high priority is used to fetch lazy resolve data for states being entered.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * ### Inside a state declaration\n *\n * Instead of registering `onEnter` hooks using the [[TransitionService]], you may define an `onEnter` hook\n * directly on a state declaration (see: [[StateDeclaration.onEnter]]).\n *\n *\n * ### Examples\n *\n * #### Audit Log\n *\n * This example uses a service to log that a user has entered the admin section of an app.\n * This assumes that there are substates of the \"admin\" state, such as \"admin.users\", \"admin.pages\", etc.\n * @example\n * ```\n *\n * $transitions.onEnter({ entering: 'admin' }, function(transition, state) {\n * var AuditService = trans.injector().get('AuditService');\n * AuditService.log(\"Entered \" + state.name + \" module while transitioning to \" + transition.to().name);\n * }\n * ```\n *\n * #### Audit Log (inside a state declaration)\n *\n * The `onEnter` inside this state declaration is syntactic sugar for the previous Audit Log example.\n * ```\n * {\n * name: 'admin',\n * component: 'admin',\n * onEnter: function($transition$, $state$) {\n * var AuditService = $transition$.injector().get('AuditService');\n * AuditService.log(\"Entered \" + state.name + \" module while transitioning to \" + transition.to().name);\n * }\n * }\n * ```\n *\n * Note: A state declaration's `onEnter` function is injected for Angular 1 only.\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onEnter(matchCriteria: HookMatchCriteria, callback: TransitionStateHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionStateHookFn]], called when a specific state is retained/kept.\n *\n * Registers a lifecycle hook, which is invoked (during a transition) for\n * a specific state that was previously active will remain active (is not being entered nor exited).\n *\n * This hook is invoked when a state is \"retained\" or \"kept\".\n * It means the transition is coming *from* a substate of the retained state *to* a substate of the retained state.\n * This hook can be used to perform actions when the user moves from one substate to another, such as between steps in a wizard.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * `onRetain` hooks generally specify `{ retained: 'somestate' }`.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onRetain` hooks are invoked after any `onExit` hooks have been fired.\n * If more than one state is retained, the child states' `onRetain` hooks are invoked first.\n * The registered `onRetain` hooks for a state are invoked in priority order.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * ### Inside a state declaration\n *\n * Instead of registering `onRetain` hooks using the [[TransitionService]], you may define an `onRetain` hook\n * directly on a state declaration (see: [[StateDeclaration.onRetain]]).\n *\n * Note: A state declaration's `onRetain` function is injected for Angular 1 only.\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onRetain(matchCriteria: HookMatchCriteria, callback: TransitionStateHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionStateHookFn]], called when a specific state is exited.\n *\n * Registers a lifecycle hook, which is invoked (during a transition) when a specific state is being exited.\n *\n * Since this hook is run only when the specific state is being *exited*, it can be useful for\n * performing tasks when leaving a submodule/feature area such as cleaning up a stateful service,\n * or for preventing the user from leaving a state or submodule until some criteria is satisfied.\n *\n * See [[TransitionStateHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * `onExit` hooks generally specify `{ exiting: 'somestate' }`.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onExit` hooks are invoked when the Transition is exiting a state.\n * States are exited after any `onStart` phase is complete.\n * If more than one state is being exited, the child states are exited first.\n * The registered `onExit` hooks for a state are invoked in priority order.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * ### Inside a state declaration\n *\n * Instead of registering `onExit` hooks using the [[TransitionService]], you may define an `onExit` hook\n * directly on a state declaration (see: [[StateDeclaration.onExit]]).\n *\n * Note: A state declaration's `onExit` function is injected for Angular 1 only.\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onExit(matchCriteria: HookMatchCriteria, callback: TransitionStateHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionHookFn]], called *just before a transition finishes*.\n *\n * Registers a transition lifecycle hook, which is invoked just before a transition finishes.\n * This hook is a last chance to cancel or redirect a transition.\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onFinish` hooks are invoked after the `onEnter` phase is complete.\n * These hooks are invoked just before the transition is \"committed\".\n * Each hook is invoked in priority order.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onFinish(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionHookFn]], called after a successful transition completed.\n *\n * Registers a transition lifecycle hook, which is invoked after a transition successfully completes.\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onSuccess` hooks are chained off the Transition's promise (see [[Transition.promise]]).\n * If the Transition is successful and its promise is resolved, then the `onSuccess` hooks are invoked.\n * Since these hooks are run after the transition is over, their return value is ignored.\n * The `onSuccess` hooks are invoked in priority order.\n *\n * ### Return value\n *\n * Since the Transition is already completed, the hook's return value is ignored\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onSuccess(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionHookFn]], called after a transition has errored.\n *\n * Registers a transition lifecycle hook, which is invoked after a transition has been rejected for any reason.\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * The `onError` hooks are chained off the Transition's promise (see [[Transition.promise]]).\n * If a Transition fails, its promise is rejected and the `onError` hooks are invoked.\n * The `onError` hooks are invoked in priority order.\n *\n * Since these hooks are run after the transition is over, their return value is ignored.\n *\n * A transition \"errors\" if it was started, but failed to complete (for any reason).\n * A *non-exhaustive list* of reasons a transition can error:\n *\n * - A transition was cancelled because a new transition started while it was still running (`Transition superseded`)\n * - A transition was cancelled by a Transition Hook returning false\n * - A transition was redirected by a Transition Hook returning a [[TargetState]]\n * - A Transition Hook or resolve function threw an error\n * - A Transition Hook returned a rejected promise\n * - A resolve function returned a rejected promise\n *\n * To check the failure reason, inspect the return value of [[Transition.error]].\n *\n * Note: `onError` should be used for targeted error handling, or error recovery.\n * For simple catch-all error reporting, use [[StateService.defaultErrorHandler]].\n *\n * ### Return value\n *\n * Since the Transition is already completed, the hook's return value is ignored\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onError(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Returns all the registered hooks of a given `hookName` type\n *\n * #### Example:\n * ```\n * $transitions.getHooks(\"onEnter\")\n * ```\n */\n getHooks(hookName: string): RegisteredHook[];\n}\n\n/** A predicate type which tests if a [[StateObject]] passes some test. Returns a boolean. */\nexport type IStateMatch = Predicate;\n\n/**\n * This object is used to configure whether or not a Transition Hook is invoked for a particular transition,\n * based on the Transition's \"to state\" and \"from state\".\n *\n * Each property (`to`, `from`, `exiting`, `retained`, and `entering`) can be a state [[Glob]] string,\n * a boolean, or a function that takes a state and returns a boolean (see [[HookMatchCriterion]])\n *\n * All properties are optional. If any property is omitted, it is replaced with the value `true`, and always matches.\n * To match any transition, use an empty criteria object `{}`.\n *\n * #### Example:\n * ```js\n * // This matches a transition coming from the `parent` state and going to the `parent.child` state.\n * var match = {\n * to: 'parent',\n * from: 'parent.child'\n * }\n * ```\n *\n * #### Example:\n * ```js\n * // This matches a transition coming from any substate of `parent` and going directly to the `parent` state.\n * var match = {\n * to: 'parent',\n * from: 'parent.**'\n * }\n * ```\n *\n * #### Example:\n * ```js\n * // This matches a transition coming from any state and going to any substate of `mymodule`\n * var match = {\n * to: 'mymodule.**'\n * }\n * ```\n *\n * #### Example:\n * ```js\n * // This matches a transition coming from any state and going to any state that has `data.authRequired`\n * // set to a truthy value.\n * var match = {\n * to: function(state) {\n * return state.data != null && state.data.authRequired === true;\n * }\n * }\n * ```\n *\n * #### Example:\n * ```js\n * // This matches a transition that is exiting `parent.child`\n * var match = {\n * exiting: 'parent.child'\n * }\n * ```\n */\nexport interface HookMatchCriteria {\n [key: string]: HookMatchCriterion | undefined;\n\n /** A [[HookMatchCriterion]] to match the destination state */\n to?: HookMatchCriterion;\n /** A [[HookMatchCriterion]] to match the original (from) state */\n from?: HookMatchCriterion;\n /** A [[HookMatchCriterion]] to match any state that would be exiting */\n exiting?: HookMatchCriterion;\n /** A [[HookMatchCriterion]] to match any state that would be retained */\n retained?: HookMatchCriterion;\n /** A [[HookMatchCriterion]] to match any state that would be entering */\n entering?: HookMatchCriterion;\n}\n\nexport interface IMatchingNodes {\n [key: string]: PathNode[];\n\n to: PathNode[];\n from: PathNode[];\n exiting: PathNode[];\n retained: PathNode[];\n entering: PathNode[];\n}\n\n/** @hidden */\nexport interface RegisteredHooks {\n [key: string]: RegisteredHook[];\n}\n\n/** @hidden */\nexport interface PathTypes {\n [key: string]: PathType;\n\n to: PathType;\n from: PathType;\n exiting: PathType;\n retained: PathType;\n entering: PathType;\n}\n\n/** @hidden */\nexport interface PathType {\n name: string;\n scope: TransitionHookScope;\n}\n\n/**\n * Hook Criterion used to match a transition.\n *\n * A [[Glob]] string that matches the name of a state.\n *\n * Or, a function with the signature `function(state) { return matches; }`\n * which should return a boolean to indicate if a state matches.\n *\n * Or, `true` to always match\n */\nexport type HookMatchCriterion = (string|IStateMatch|boolean);\n\nexport enum TransitionHookPhase { CREATE, BEFORE, RUN, SUCCESS, ERROR }\nexport enum TransitionHookScope { TRANSITION, STATE }\n", @@ -126,7 +126,7 @@ "/**\n * @coreapi\n * @module core\n */ /** */\nimport { StateParams } from './params/stateParams';\nimport { StateDeclaration } from './state/interface';\nimport { StateObject } from './state/stateObject';\nimport { Transition } from './transition/transition';\nimport { Queue } from './common/queue';\nimport { Disposable } from './interface';\n\n/**\n * Global router state\n *\n * This is where we hold the global mutable state such as current state, current\n * params, current transition, etc.\n */\nexport class UIRouterGlobals implements Disposable {\n /**\n * Current parameter values\n *\n * The parameter values from the latest successful transition\n */\n params: StateParams = new StateParams();\n\n /**\n * Current state\n *\n * The to-state from the latest successful transition\n */\n current: StateDeclaration;\n\n /**\n * Current state (internal object)\n *\n * The to-state from the latest successful transition\n * @internalapi\n */\n $current: StateObject;\n\n /**\n * The current started/running transition.\n * This transition has reached at least the onStart phase, but is not yet complete\n */\n transition: Transition;\n\n /** @internalapi */\n lastStartedTransitionId = -1;\n\n /** @internalapi */\n transitionHistory = new Queue([], 1);\n\n /** @internalapi */\n successfulTransitions = new Queue([], 1);\n\n dispose() {\n this.transitionHistory.clear();\n this.successfulTransitions.clear();\n this.transition = null;\n }\n}\n", "/**\n * @coreapi\n * @module url\n */ /** */\n\nimport { UIRouter } from '../router';\nimport { LocationServices, notImplemented, LocationConfig } from '../common/coreservices';\nimport { noop, createProxyFunctions } from '../common/common';\nimport { UrlConfigApi, UrlSyncApi, UrlRulesApi, UrlParts, MatchResult } from './interface';\n\n/** @hidden */\nconst makeStub = (keys: string[]): any =>\n keys.reduce((acc, key) => (acc[key] = notImplemented(key), acc), { dispose: noop });\n\n/* tslint:disable:align */\n/** @hidden */ const locationServicesFns = ['url', 'path', 'search', 'hash', 'onChange'];\n/** @hidden */ const locationConfigFns = ['port', 'protocol', 'host', 'baseHref', 'html5Mode', 'hashPrefix'];\n/** @hidden */ const umfFns = ['type', 'caseInsensitive', 'strictMode', 'defaultSquashPolicy'];\n/** @hidden */ const rulesFns = ['sort', 'when', 'initial', 'otherwise', 'rules', 'rule', 'removeRule'];\n/** @hidden */ const syncFns = ['deferIntercept', 'listen', 'sync', 'match'];\n/* tslint:enable:align */\n\n/**\n * API for URL management\n */\nexport class UrlService implements LocationServices, UrlSyncApi {\n /** @hidden */\n static locationServiceStub: LocationServices = makeStub(locationServicesFns);\n /** @hidden */\n static locationConfigStub: LocationConfig = makeStub(locationConfigFns);\n\n /**\n * A nested API for managing URL rules and rewrites\n *\n * See: [[UrlRulesApi]] for details\n */\n rules: UrlRulesApi;\n\n /**\n * A nested API to configure the URL and retrieve URL information\n *\n * See: [[UrlConfigApi]] for details\n */\n config: UrlConfigApi;\n\n /** @hidden */\n private router: UIRouter;\n\n /** @hidden */\n constructor(router: UIRouter, lateBind = true) {\n this.router = router;\n this.rules = {} as any;\n this.config = {} as any;\n\n // proxy function calls from UrlService to the LocationService/LocationConfig\n const locationServices = () => router.locationService;\n createProxyFunctions(locationServices, this, locationServices, locationServicesFns, lateBind);\n\n const locationConfig = () => router.locationConfig;\n createProxyFunctions(locationConfig, this.config, locationConfig, locationConfigFns, lateBind);\n\n const umf = () => router.urlMatcherFactory;\n createProxyFunctions(umf, this.config, umf, umfFns);\n\n const urlRouter = () => router.urlRouter;\n createProxyFunctions(urlRouter, this.rules, urlRouter, rulesFns);\n createProxyFunctions(urlRouter, this, urlRouter, syncFns);\n }\n\n /** @inheritdoc */\n url(): string;\n /** @inheritdoc */\n url(newurl: string, replace?: boolean, state?): void;\n url(newurl?, replace?, state?): any { return; }\n /** @inheritdoc */\n path(): string { return; }\n /** @inheritdoc */\n search(): { [key: string]: any } { return; }\n /** @inheritdoc */\n hash(): string { return; }\n /** @inheritdoc */\n onChange(callback: Function): Function { return; }\n\n\n /**\n * Returns the current URL parts\n *\n * This method returns the current URL components as a [[UrlParts]] object.\n *\n * @returns the current url parts\n */\n parts(): UrlParts {\n return { path: this.path(), search: this.search(), hash: this.hash() };\n }\n\n dispose() { }\n\n /** @inheritdoc */\n sync(evt?) { return; }\n /** @inheritdoc */\n listen(enabled?: boolean): Function { return; }\n /** @inheritdoc */\n deferIntercept(defer?: boolean) { return; }\n /** @inheritdoc */\n match(urlParts: UrlParts): MatchResult { return; }\n\n}\n", "/**\n * @coreapi\n * @module core\n */ /** */\nimport { UrlMatcherFactory } from './url/urlMatcherFactory';\nimport { UrlRouter } from './url/urlRouter';\nimport { TransitionService } from './transition/transitionService';\nimport { ViewService } from './view/view';\nimport { StateRegistry } from './state/stateRegistry';\nimport { StateService } from './state/stateService';\nimport { UIRouterGlobals } from './globals';\nimport { UIRouterPlugin, Disposable } from './interface';\nimport { values, removeFrom } from './common/common';\nimport { isFunction } from './common/predicates';\nimport { UrlService } from './url/urlService';\nimport { LocationServices, LocationConfig } from './common/coreservices';\nimport { Trace, trace } from './common/trace';\n\n/** @hidden */\nlet _routerInstance = 0;\n\n/**\n * The master class used to instantiate an instance of UI-Router.\n *\n * UI-Router (for each specific framework) will create an instance of this class during bootstrap.\n * This class instantiates and wires the UI-Router services together.\n *\n * After a new instance of the UIRouter class is created, it should be configured for your app.\n * For instance, app states should be registered with the [[UIRouter.stateRegistry]].\n *\n * ---\n *\n * Normally the framework code will bootstrap UI-Router.\n * If you are bootstrapping UIRouter manually, tell it to monitor the URL by calling\n * [[UrlService.listen]] then [[UrlService.sync]].\n */\nexport class UIRouter {\n /** @hidden */ $id = _routerInstance++;\n /** @hidden */ _disposed = false;\n /** @hidden */ private _disposables: Disposable[] = [];\n\n /** Provides trace information to the console */\n trace: Trace = trace;\n\n /** Provides services related to ui-view synchronization */\n viewService = new ViewService();\n\n /** Global router state */\n globals: UIRouterGlobals = new UIRouterGlobals();\n\n /** Provides services related to Transitions */\n transitionService: TransitionService = new TransitionService(this);\n\n /**\n * Deprecated for public use. Use [[urlService]] instead.\n * @deprecated Use [[urlService]] instead\n */\n urlMatcherFactory: UrlMatcherFactory = new UrlMatcherFactory();\n\n /**\n * Deprecated for public use. Use [[urlService]] instead.\n * @deprecated Use [[urlService]] instead\n */\n urlRouter: UrlRouter = new UrlRouter(this);\n\n /** Provides a registry for states, and related registration services */\n stateRegistry: StateRegistry = new StateRegistry(this);\n\n /** Provides services related to states */\n stateService = new StateService(this);\n\n /** Provides services related to the URL */\n urlService: UrlService = new UrlService(this);\n\n /** @hidden plugin instances are registered here */\n private _plugins: { [key: string]: UIRouterPlugin } = {};\n\n\n /** Registers an object to be notified when the router is disposed */\n disposable(disposable: Disposable) {\n this._disposables.push(disposable);\n }\n\n /**\n * Disposes this router instance\n *\n * When called, clears resources retained by the router by calling `dispose(this)` on all\n * registered [[disposable]] objects.\n *\n * Or, if a `disposable` object is provided, calls `dispose(this)` on that object only.\n *\n * @param disposable (optional) the disposable to dispose\n */\n dispose(disposable?: any): void {\n if (disposable && isFunction(disposable.dispose)) {\n disposable.dispose(this);\n return undefined;\n }\n\n this._disposed = true;\n this._disposables.slice().forEach(d => {\n try {\n typeof d.dispose === 'function' && d.dispose(this);\n removeFrom(this._disposables, d);\n } catch (ignored) {}\n });\n }\n\n /**\n * Creates a new `UIRouter` object\n *\n * @param locationService a [[LocationServices]] implementation\n * @param locationConfig a [[LocationConfig]] implementation\n * @internalapi\n */\n constructor(\n public locationService: LocationServices = UrlService.locationServiceStub,\n public locationConfig: LocationConfig = UrlService.locationConfigStub,\n ) {\n\n this.viewService._pluginapi._rootViewContext(this.stateRegistry.root());\n this.globals.$current = this.stateRegistry.root();\n this.globals.current = this.globals.$current.self;\n\n this.disposable(this.globals);\n this.disposable(this.stateService);\n this.disposable(this.stateRegistry);\n this.disposable(this.transitionService);\n this.disposable(this.urlRouter);\n this.disposable(locationService);\n this.disposable(locationConfig);\n }\n\n /** Add plugin (as ES6 class) */\n plugin(plugin: { new(router: UIRouter, options?: any): T }, options?: any): T;\n /** Add plugin (as javascript constructor function) */\n plugin(plugin: { (router: UIRouter, options?: any): void }, options?: any): T;\n /** Add plugin (as javascript factory function) */\n plugin(plugin: PluginFactory, options?: any): T;\n /**\n * Adds a plugin to UI-Router\n *\n * This method adds a UI-Router Plugin.\n * A plugin can enhance or change UI-Router behavior using any public API.\n *\n * #### Example:\n * ```js\n * import { MyCoolPlugin } from \"ui-router-cool-plugin\";\n *\n * var plugin = router.addPlugin(MyCoolPlugin);\n * ```\n *\n * ### Plugin authoring\n *\n * A plugin is simply a class (or constructor function) which accepts a [[UIRouter]] instance and (optionally) an options object.\n *\n * The plugin can implement its functionality using any of the public APIs of [[UIRouter]].\n * For example, it may configure router options or add a Transition Hook.\n *\n * The plugin can then be published as a separate module.\n *\n * #### Example:\n * ```js\n * export class MyAuthPlugin implements UIRouterPlugin {\n * constructor(router: UIRouter, options: any) {\n * this.name = \"MyAuthPlugin\";\n * let $transitions = router.transitionService;\n * let $state = router.stateService;\n *\n * let authCriteria = {\n * to: (state) => state.data && state.data.requiresAuth\n * };\n *\n * function authHook(transition: Transition) {\n * let authService = transition.injector().get('AuthService');\n * if (!authService.isAuthenticated()) {\n * return $state.target('login');\n * }\n * }\n *\n * $transitions.onStart(authCriteria, authHook);\n * }\n * }\n * ```\n *\n * @param plugin one of:\n * - a plugin class which implements [[UIRouterPlugin]]\n * - a constructor function for a [[UIRouterPlugin]] which accepts a [[UIRouter]] instance\n * - a factory function which accepts a [[UIRouter]] instance and returns a [[UIRouterPlugin]] instance\n * @param options options to pass to the plugin class/factory\n * @returns the registered plugin instance\n */\n plugin(plugin: any, options: any = {}): T {\n const pluginInstance = new plugin(this, options);\n if (!pluginInstance.name) throw new Error('Required property `name` missing on plugin: ' + pluginInstance);\n this._disposables.push(pluginInstance);\n return this._plugins[pluginInstance.name] = pluginInstance;\n }\n\n /**\n * Returns registered plugins\n *\n * Returns the registered plugin of the given `pluginName`.\n * If no `pluginName` is given, returns all registered plugins\n *\n * @param pluginName (optional) the name of the plugin to get\n * @return the named plugin (undefined if not found), or all plugins (if `pluginName` is omitted)\n */\n getPlugin(pluginName: string): UIRouterPlugin;\n getPlugin(): UIRouterPlugin[];\n getPlugin(pluginName?: string): UIRouterPlugin|UIRouterPlugin[] {\n return pluginName ? this._plugins[pluginName] : values(this._plugins);\n }\n}\n\n/** @internalapi */\nexport type PluginFactory = (router: UIRouter, options?: any) => T;\n", - "/** @module hooks */ /** */\nimport { Transition } from '../transition/transition';\nimport { UIRouter } from '../router';\nimport { TransitionService } from '../transition/transitionService';\nimport { Resolvable } from '../resolve';\nimport { extend, inArray, map, mapObj, unnestR, values } from '../common';\nimport { PathNode } from '../path';\nimport { TreeChanges } from \"../transition\";\n\nfunction addCoreResolvables(trans: Transition) {\n trans.addResolvable(Resolvable.fromData(UIRouter, trans.router), '');\n trans.addResolvable(Resolvable.fromData(Transition, trans), '');\n trans.addResolvable(Resolvable.fromData('$transition$', trans), '');\n trans.addResolvable(Resolvable.fromData('$stateParams', trans.params()), '');\n\n trans.entering().forEach(state => {\n trans.addResolvable(Resolvable.fromData('$state$', state), state);\n });\n}\n\nexport const registerAddCoreResolvables = (transitionService: TransitionService) =>\n transitionService.onCreate({}, addCoreResolvables);\n\nconst TRANSITION_TOKENS = ['$transition$', Transition];\nconst isTransition = inArray(TRANSITION_TOKENS);\n\n// References to Transition in the treeChanges pathnodes makes all\n// previous Transitions reachable in memory, causing a memory leak\n// This function removes resolves for '$transition$' and `Transition` from the treeChanges.\n// Do not use this on current transitions, only on old ones.\nexport const treeChangesCleanup = (trans: Transition) => {\n // If the resolvable is a Transition, return a new resolvable with null data\n const replaceTransitionWithNull = (r: Resolvable): Resolvable =>\n isTransition(r.token) ? Resolvable.fromData(r.token, null) : r;\n\n const cleanPath = (path: PathNode[]) => path.map((node: PathNode) => {\n const resolvables = node.resolvables.map(replaceTransitionWithNull);\n return extend(node.clone(), { resolvables });\n });\n\n const treeChanges: TreeChanges = trans.treeChanges();\n mapObj(treeChanges, cleanPath, treeChanges);\n};\n", + "/** @module hooks */ /** */\nimport { Transition } from '../transition/transition';\nimport { UIRouter } from '../router';\nimport { TransitionService } from '../transition/transitionService';\nimport { Resolvable } from '../resolve';\nimport { extend, inArray, map, mapObj, uniqR, unnestR, values } from '../common';\nimport { PathNode } from '../path';\nimport { TreeChanges } from \"../transition\";\n\nfunction addCoreResolvables(trans: Transition) {\n trans.addResolvable(Resolvable.fromData(UIRouter, trans.router), '');\n trans.addResolvable(Resolvable.fromData(Transition, trans), '');\n trans.addResolvable(Resolvable.fromData('$transition$', trans), '');\n trans.addResolvable(Resolvable.fromData('$stateParams', trans.params()), '');\n\n trans.entering().forEach(state => {\n trans.addResolvable(Resolvable.fromData('$state$', state), state);\n });\n}\n\nexport const registerAddCoreResolvables = (transitionService: TransitionService) =>\n transitionService.onCreate({}, addCoreResolvables);\n\nconst TRANSITION_TOKENS = ['$transition$', Transition];\nconst isTransition = inArray(TRANSITION_TOKENS);\n\n// References to Transition in the treeChanges pathnodes makes all\n// previous Transitions reachable in memory, causing a memory leak\n// This function removes resolves for '$transition$' and `Transition` from the treeChanges.\n// Do not use this on current transitions, only on old ones.\nexport const treeChangesCleanup = (trans: Transition) => {\n const nodes = values(trans.treeChanges()).reduce(unnestR, []).reduce(uniqR, []);\n\n // If the resolvable is a Transition, return a new resolvable with null data\n const replaceTransitionWithNull = (r: Resolvable): Resolvable => {\n return isTransition(r.token) ? Resolvable.fromData(r.token, null) : r;\n };\n\n nodes.forEach((node: PathNode) => {\n node.resolvables = node.resolvables.map(replaceTransitionWithNull);\n });\n};\n", "/** @module hooks */ /** */\nimport { isString, isFunction } from '../common/predicates';\nimport { Transition } from '../transition/transition';\nimport { services } from '../common/coreservices';\nimport { TargetState } from '../state/targetState';\nimport { TransitionService } from '../transition/transitionService';\nimport { TransitionHookFn } from '../transition/interface';\n\n/**\n * A [[TransitionHookFn]] that redirects to a different state or params\n *\n * Registered using `transitionService.onStart({ to: (state) => !!state.redirectTo }, redirectHook);`\n *\n * See [[StateDeclaration.redirectTo]]\n */\nconst redirectToHook: TransitionHookFn = (trans: Transition) => {\n const redirect = trans.to().redirectTo;\n if (!redirect) return;\n\n const $state = trans.router.stateService;\n\n function handleResult(result: any) {\n if (!result) return;\n if (result instanceof TargetState) return result;\n if (isString(result)) return $state.target( result, trans.params(), trans.options());\n if (result['state'] || result['params'])\n return $state.target(result['state'] || trans.to(), result['params'] || trans.params(), trans.options());\n }\n\n if (isFunction(redirect)) {\n return services.$q.when(redirect(trans)).then(handleResult);\n }\n return handleResult(redirect);\n};\n\nexport const registerRedirectToHook = (transitionService: TransitionService) =>\n transitionService.onStart({ to: (state) => !!state.redirectTo }, redirectToHook);\n", "/** @module hooks */\n/** for typedoc */\nimport { TransitionStateHookFn } from '../transition/interface';\nimport { Transition } from '../transition/transition';\nimport { TransitionService } from '../transition/transitionService';\nimport { StateDeclaration } from '../state/interface';\nimport { StateObject } from '../state/stateObject';\n\n/**\n * A factory which creates an onEnter, onExit or onRetain transition hook function\n *\n * The returned function invokes the (for instance) state.onEnter hook when the\n * state is being entered.\n *\n * @hidden\n */\nfunction makeEnterExitRetainHook(hookName: string): TransitionStateHookFn {\n return (transition: Transition, state: StateDeclaration) => {\n const _state: StateObject = state.$$state();\n const hookFn: TransitionStateHookFn = _state[hookName];\n return hookFn(transition, state);\n };\n}\n\n/**\n * The [[TransitionStateHookFn]] for onExit\n *\n * When the state is being exited, the state's .onExit function is invoked.\n *\n * Registered using `transitionService.onExit({ exiting: (state) => !!state.onExit }, onExitHook);`\n *\n * See: [[IHookRegistry.onExit]]\n */\nconst onExitHook: TransitionStateHookFn = makeEnterExitRetainHook('onExit');\nexport const registerOnExitHook = (transitionService: TransitionService) =>\n transitionService.onExit({ exiting: state => !!state.onExit }, onExitHook);\n\n/**\n * The [[TransitionStateHookFn]] for onRetain\n *\n * When the state was already entered, and is not being exited or re-entered, the state's .onRetain function is invoked.\n *\n * Registered using `transitionService.onRetain({ retained: (state) => !!state.onRetain }, onRetainHook);`\n *\n * See: [[IHookRegistry.onRetain]]\n */\nconst onRetainHook: TransitionStateHookFn = makeEnterExitRetainHook('onRetain');\nexport const registerOnRetainHook = (transitionService: TransitionService) =>\n transitionService.onRetain({ retained: state => !!state.onRetain }, onRetainHook);\n\n/**\n * The [[TransitionStateHookFn]] for onEnter\n *\n * When the state is being entered, the state's .onEnter function is invoked.\n *\n * Registered using `transitionService.onEnter({ entering: (state) => !!state.onEnter }, onEnterHook);`\n *\n * See: [[IHookRegistry.onEnter]]\n */\nconst onEnterHook: TransitionStateHookFn = makeEnterExitRetainHook('onEnter');\nexport const registerOnEnterHook = (transitionService: TransitionService) =>\n transitionService.onEnter({ entering: state => !!state.onEnter }, onEnterHook);\n\n", "/** @module hooks */\n/** for typedoc */\nimport { noop } from '../common/common';\nimport { Transition } from '../transition/transition';\nimport { ResolveContext } from '../resolve/resolveContext';\nimport { TransitionStateHookFn, TransitionHookFn } from '../transition/interface';\nimport { TransitionService } from '../transition/transitionService';\nimport { val } from '../common/hof';\nimport { StateDeclaration } from '../state/interface';\n\nexport const RESOLVE_HOOK_PRIORITY = 1000;\n\n/**\n * A [[TransitionHookFn]] which resolves all EAGER Resolvables in the To Path\n *\n * Registered using `transitionService.onStart({}, eagerResolvePath, { priority: 1000 });`\n *\n * When a Transition starts, this hook resolves all the EAGER Resolvables, which the transition then waits for.\n *\n * See [[StateDeclaration.resolve]]\n */\nconst eagerResolvePath: TransitionHookFn = (trans: Transition) =>\n new ResolveContext(trans.treeChanges().to)\n .resolvePath('EAGER', trans)\n .then(noop);\n\nexport const registerEagerResolvePath = (transitionService: TransitionService) =>\n transitionService.onStart({}, eagerResolvePath, { priority: RESOLVE_HOOK_PRIORITY });\n\n/**\n * A [[TransitionHookFn]] which resolves all LAZY Resolvables for the state (and all its ancestors) in the To Path\n *\n * Registered using `transitionService.onEnter({ entering: () => true }, lazyResolveState, { priority: 1000 });`\n *\n * When a State is being entered, this hook resolves all the Resolvables for this state, which the transition then waits for.\n *\n * See [[StateDeclaration.resolve]]\n */\nconst lazyResolveState: TransitionStateHookFn = (trans: Transition, state: StateDeclaration) =>\n new ResolveContext(trans.treeChanges().to)\n .subContext(state.$$state())\n .resolvePath('LAZY', trans)\n .then(noop);\n\nexport const registerLazyResolveState = (transitionService: TransitionService) =>\n transitionService.onEnter({ entering: val(true) }, lazyResolveState, { priority: RESOLVE_HOOK_PRIORITY });\n\n\n/**\n * A [[TransitionHookFn]] which resolves any dynamically added (LAZY or EAGER) Resolvables.\n *\n * Registered using `transitionService.onFinish({}, eagerResolvePath, { priority: 1000 });`\n *\n * After all entering states have been entered, this hook resolves any remaining Resolvables.\n * These are typically dynamic resolves which were added by some Transition Hook using [[Transition.addResolvable]].\n *\n * See [[StateDeclaration.resolve]]\n */\nconst resolveRemaining: TransitionHookFn = (trans: Transition) =>\n new ResolveContext(trans.treeChanges().to)\n .resolvePath('LAZY', trans)\n .then(noop);\n\nexport const registerResolveRemaining = (transitionService: TransitionService) =>\n transitionService.onFinish({}, resolveRemaining, { priority: RESOLVE_HOOK_PRIORITY });\n", @@ -186,5 +186,5 @@ "__extends", "id" ], - "mappings": "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" + "mappings": "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" } \ No newline at end of file diff --git a/UI/WebServerResources/js/vendor/angular-ui-router.min.js b/UI/WebServerResources/js/vendor/angular-ui-router.min.js index be1b6a313..344525805 100644 --- a/UI/WebServerResources/js/vendor/angular-ui-router.min.js +++ b/UI/WebServerResources/js/vendor/angular-ui-router.min.js @@ -4,9 +4,9 @@ * This causes it to be incompatible with plugins that depend on @uirouter/core. * We recommend switching to the ui-router-core.js and ui-router-angularjs.js bundles instead. * For more information, see https://ui-router.github.io/blog/uirouter-for-angularjs-umd-bundles - * @version v1.0.14 + * @version v1.0.15 * @link https://ui-router.github.io * @license MIT License, http://www.opensource.org/licenses/MIT */ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("angular")):"function"==typeof define&&define.amd?define(["exports","angular"],e):e(t["@uirouter/angularjs"]={},t.angular)}(this,function(t,e){"use strict";var r=angular,n=e&&e.module?e:r;function i(t){var e=[].slice.apply(arguments,[1]),r=t.length;return function e(n){return n.length>=r?t.apply(null,n):function(){return e(n.concat([].slice.apply(arguments)))}}(e)}function o(){var t=arguments,e=t.length-1;return function(){for(var r=e,n=t[e].apply(this,arguments);r--;)n=t[r].call(this,n);return n}}function a(){for(var t=[],e=0;e=0&&t.splice(r,1),t}var et=i(rt);function rt(t,e){return t.push(e),e}var nt=function(t){return t.slice().forEach(function(e){"function"==typeof e&&e(),X(t,e)})};function it(t){for(var e=[],r=1;rthis._limit&&this.evict(),t},t.prototype.evict=function(){var t=this._items.shift();return this._evictListeners.forEach(function(e){return e(t)}),t},t.prototype.dequeue=function(){if(this.size())return this._items.splice(0,1)[0]},t.prototype.clear=function(){var t=this._items;return this._items=[],t},t.prototype.size=function(){return this._items.length},t.prototype.remove=function(t){var e=this._items.indexOf(t);return e>-1&&this._items.splice(e,1)[0]},t.prototype.peekTail=function(){return this._items[this._items.length-1]},t.prototype.peekHead=function(){if(this.size())return this._items[0]},t}();(Vt=t.RejectType||(t.RejectType={}))[Vt.SUPERSEDED=2]="SUPERSEDED",Vt[Vt.ABORTED=3]="ABORTED",Vt[Vt.INVALID=4]="INVALID",Vt[Vt.IGNORED=5]="IGNORED",Vt[Vt.ERROR=6]="ERROR";var Dt=0,qt=function(){function e(t,e,r){this.$id=Dt++,this.type=t,this.message=e,this.detail=r}return e.isRejectionPromise=function(t){return t&&"function"==typeof t.then&&d(e)(t._transitionRejection)},e.superseded=function(r,n){var i=new e(t.RejectType.SUPERSEDED,"The transition has been superseded by a different transition",r);return n&&n.redirected&&(i.redirected=!0),i},e.redirected=function(t){return e.superseded(t,{redirected:!0})},e.invalid=function(r){return new e(t.RejectType.INVALID,"This transition is invalid",r)},e.ignored=function(r){return new e(t.RejectType.IGNORED,"The transition was ignored",r)},e.aborted=function(r){return new e(t.RejectType.ABORTED,"The transition has been aborted",r)},e.errored=function(r){return new e(t.RejectType.ERROR,"The transition errored",r)},e.normalize=function(t){return d(e)(t)?t:e.errored(t)},e.prototype.toString=function(){var t,e=(t=this.detail)&&t.toString!==Object.prototype.toString?t.toString():ke(t);return"Transition Rejection($id: "+this.$id+" type: "+this.type+", message: "+this.message+", detail: "+e+")"},e.prototype.toPromise=function(){return G(At(this),{_transitionRejection:this})},e}();function Nt(t){if(!t)return"ui-view (defunct)";var e=t.creationContext?t.creationContext.name||"(root)":"(none)";return"[ui-view#"+t.id+" "+t.$type+":"+t.fqn+" ("+t.name+"@"+e+")]"}function Ft(e){return k(e)?t.Category[e]:t.Category[t.Category[e]]}var Ut,Lt=Function.prototype.bind.call(console.log,console),Mt=P(console.table)?console.table.bind(console):Lt.bind(console);(Ut=t.Category||(t.Category={}))[Ut.RESOLVE=0]="RESOLVE",Ut[Ut.TRANSITION=1]="TRANSITION",Ut[Ut.HOOK=2]="HOOK",Ut[Ut.UIVIEW=3]="UIVIEW",Ut[Ut.VIEWCONFIG=4]="VIEWCONFIG";var Bt,Gt,Wt=c("$id"),zt=c("router.$id"),Jt=function(t){return"Transition #"+Wt(t)+"-"+zt(t)},Qt=function(){function e(){this._enabled={},this.approximateDigests=0}return e.prototype._set=function(e,r){var n=this;r.length||(r=Object.keys(t.Category).map(function(t){return parseInt(t,10)}).filter(function(t){return!isNaN(t)}).map(function(e){return t.Category[e]})),r.map(Ft).forEach(function(t){return n._enabled[t]=e})},e.prototype.enable=function(){for(var t=[],e=0;e "+ke(e))},e.prototype.traceTransitionIgnored=function(e){this.enabled(t.Category.TRANSITION)&&console.log(Jt(e)+": Ignored <> "+ke(e))},e.prototype.traceHookInvocation=function(e,r,n){if(this.enabled(t.Category.HOOK)){var i=c("traceData.hookType")(n)||"internal",o=c("traceData.context.state.name")(n)||c("traceData.context")(n)||"unknown",a=Ee(e.registeredHook.callback);console.log(Jt(r)+": Hook -> "+i+" context: "+o+", "+Se(200,a))}},e.prototype.traceHookResult=function(e,r,n){this.enabled(t.Category.HOOK)&&console.log(Jt(r)+": <- Hook returned: "+Se(200,ke(e)))},e.prototype.traceResolvePath=function(e,r,n){this.enabled(t.Category.RESOLVE)&&console.log(Jt(n)+": Resolving "+e+" ("+r+")")},e.prototype.traceResolvableResolved=function(e,r){this.enabled(t.Category.RESOLVE)&&console.log(Jt(r)+": <- Resolved "+e+" to: "+Se(200,ke(e.data)))},e.prototype.traceError=function(e,r){this.enabled(t.Category.TRANSITION)&&console.log(Jt(r)+": <- Rejected "+ke(r)+", reason: "+e)},e.prototype.traceSuccess=function(e,r){this.enabled(t.Category.TRANSITION)&&console.log(Jt(r)+": <- Success "+ke(r)+", final state: "+e.name)},e.prototype.traceUIViewEvent=function(e,r,n){void 0===n&&(n=""),this.enabled(t.Category.UIVIEW)&&console.log("ui-view: "+be(30,e)+" "+Nt(r)+n)},e.prototype.traceUIViewConfigUpdated=function(e,r){this.enabled(t.Category.UIVIEW)&&this.traceUIViewEvent("Updating",e," with ViewConfig from context='"+r+"'")},e.prototype.traceUIViewFill=function(e,r){this.enabled(t.Category.UIVIEW)&&this.traceUIViewEvent("Fill",e," with: "+Se(200,r))},e.prototype.traceViewSync=function(e){if(this.enabled(t.Category.VIEWCONFIG)){var r="uiview component fqn",n=e.map(function(t){var e,n=t.uiView,i=t.viewConfig,o=n&&n.fqn,a=i&&i.viewDecl.$context.name+": ("+i.viewDecl.$name+")";return(e={})[r]=o,e["view config state (view name)"]=a,e}).sort(function(t,e){return(t[r]||"").localeCompare(e[r]||"")});Mt(n)}},e.prototype.traceViewServiceEvent=function(e,r){this.enabled(t.Category.VIEWCONFIG)&&console.log("VIEWCONFIG: "+e+" "+function(t){var e=t.viewDecl,r=e.$context.name||"(root)";return"[View#"+t.$id+" from '"+r+"' state]: target ui-view: '"+e.$uiViewName+"@"+e.$uiViewContextAnchor+"'"}(r))},e.prototype.traceViewServiceUIViewEvent=function(e,r){this.enabled(t.Category.VIEWCONFIG)&&console.log("VIEWCONFIG: "+e+" "+Nt(r))},e}(),Kt=new Qt;(Bt=t.TransitionHookPhase||(t.TransitionHookPhase={}))[Bt.CREATE=0]="CREATE",Bt[Bt.BEFORE=1]="BEFORE",Bt[Bt.RUN=2]="RUN",Bt[Bt.SUCCESS=3]="SUCCESS",Bt[Bt.ERROR=4]="ERROR",(Gt=t.TransitionHookScope||(t.TransitionHookScope={}))[Gt.TRANSITION=0]="TRANSITION",Gt[Gt.STATE=1]="STATE";var Yt=function(){function t(t,e,r,n){this._stateRegistry=t,this._identifier=e,this._identifier=e,this._params=G({},r||{}),this._options=G({},n||{}),this._definition=t.matcher.find(e,this._options.relative)}return t.prototype.name=function(){return this._definition&&this._definition.name||this._identifier},t.prototype.identifier=function(){return this._identifier},t.prototype.params=function(){return this._params},t.prototype.$state=function(){return this._definition},t.prototype.state=function(){return this._definition&&this._definition.self},t.prototype.options=function(){return this._options},t.prototype.exists=function(){return!(!this._definition||!this._definition.self)},t.prototype.valid=function(){return!this.error()},t.prototype.error=function(){var t=this.options().relative;if(!this._definition&&t){var e=t.name?t.name:t;return"Could not resolve '"+this.name()+"' from state '"+e+"'"}return this._definition?this._definition.self?void 0:"State '"+this.name()+"' has an invalid definition":"No such state '"+this.name()+"'"},t.prototype.toString=function(){return"'"+this.name()+"'"+ke(this.params())},t.prototype.withState=function(e){return new t(this._stateRegistry,e,this._params,this._options)},t.prototype.withParams=function(e,r){void 0===r&&(r=!1);var n=r?e:G({},this._params,e);return new t(this._stateRegistry,this._identifier,n,this._options)},t.prototype.withOptions=function(e,r){void 0===r&&(r=!1);var n=r?e:G({},this._options,e);return new t(this._stateRegistry,this._identifier,this._params,n)},t.isDef=function(t){return t&&t.state&&(O(t.state)||O(t.state.name))},t}(),Zt={current:J,transition:null,traceData:{},bind:null},Xt=function(){function e(e,r,n,i){var o=this;this.transition=e,this.stateContext=r,this.registeredHook=n,this.options=i,this.isSuperseded=function(){return o.type.hookPhase===t.TransitionHookPhase.RUN&&!o.options.transition.isActive()},this.options=it(i,Zt),this.type=n.eventType}return e.chain=function(t,e){return t.reduce(function(t,e){return t.then(function(){return e.invokeHook()})},e||N.$q.when())},e.invokeHooks=function(t,r){for(var n=0;n=e.invokeLimit&&e.deregister()}}},e.prototype.handleHookResult=function(t){var e=this,r=this.getNotCurrentRejection();return r||(D(t)?t.then(function(t){return e.handleHookResult(t)}):(Kt.traceHookResult(t,this.transition,this.options),!1===t?qt.aborted("Hook aborted transition").toPromise():d(Yt)(t)?qt.redirected(t).toPromise():void 0))},e.prototype.getNotCurrentRejection=function(){var t=this.transition.router;return t._disposed?qt.aborted("UIRouter instance #"+t.$id+" has been stopped (disposed)").toPromise():this.transition._aborted?qt.aborted().toPromise():this.isSuperseded()?qt.superseded(this.options.current()).toPromise():void 0},e.prototype.toString=function(){var t=this.options,e=this.registeredHook;return(c("traceData.hookType")(t)||"internal")+" context: "+(c("traceData.context.state.name")(t)||c("traceData.context")(t)||"unknown")+", "+Se(200,Ce(e.callback))},e.HANDLE_RESULT=function(t){return function(e){return t.handleHookResult(e)}},e.LOG_REJECTED_RESULT=function(t){return function(e){D(e)&&e.catch(function(e){return t.logError(qt.normalize(e))})}},e.LOG_ERROR=function(t){return function(e){return t.logError(e)}},e.REJECT_ERROR=function(t){return function(t){return At(t)}},e.THROW_ERROR=function(t){return function(t){throw t}},e}();function te(t,e){var r=O(e)?[e]:e;return!!(P(r)?r:function(t){for(var e=r,n=0;n20)throw new Error("Too many consecutive Transition redirects (20+)");var n={redirectedFrom:this,source:"redirect"};"url"===this.options().source&&!1!==t.options().location&&(n.location="replace");var i=G({},this.options(),t.options(),n);t=t.withOptions(i,!0);var o,a=this.router.transitionService.create(this._treeChanges.from,t),u=this._treeChanges.entering,s=a._treeChanges.entering;return fe.matching(s,u,fe.nonDynamicParams).filter(f((o=t.options().reloadState,function(t){return o&&t.state.includes[o.name]}))).forEach(function(t,e){t.resolvables=u[e].resolvables}),a},e.prototype._changedParams=function(){var t=this._treeChanges;if(!this._options.reload&&(!t.exiting.length&&!t.entering.length&&t.to.length===t.from.length&&!Tt(t.to,t.from).map(function(t){return t[0].state!==t[1].state}).reduce(mt,!1))){var e=t.to.map(function(t){return t.paramSchema}),r=[t.to,t.from].map(function(t){return t.map(function(t){return t.paramValues})});return Tt(e,r[0],r[1]).map(function(t){var e=t[0],r=t[1],n=t[2];return se.changed(e,r,n)}).reduce(yt,[])}},e.prototype.dynamic=function(){var t=this._changedParams();return!!t&&t.map(function(t){return t.dynamic}).reduce(mt,!1)},e.prototype.ignored=function(){return!!this._ignoredReason()},e.prototype._ignoredReason=function(){var t=this.router.globals.transition,e=this._options.reloadState,r=function(t,r){if(t.length!==r.length)return!1;var n=fe.matching(t,r);return t.length===n.filter(function(t){return!e||!t.state.includes[e.name]}).length},n=this.treeChanges(),i=t&&t.treeChanges();return i&&r(i.to,n.to)&&r(i.exiting,n.exiting)?"SameAsPending":0===n.exiting.length&&0===n.entering.length&&r(n.from,n.to)?"SameAsCurrent":void 0},e.prototype.run=function(){var e=this,r=Xt.runAllHooks,n=function(t){return e._hookBuilder.buildHooksForPhase(t)},i=n(t.TransitionHookPhase.BEFORE);return Xt.invokeHooks(i,function(){var t=e.router.globals;return t.lastStartedTransitionId=e.$id,t.transition=e,t.transitionHistory.enqueue(e),Kt.traceTransitionStart(e),N.$q.when(void 0)}).then(function(){var e=n(t.TransitionHookPhase.RUN);return Xt.invokeHooks(e,function(){return N.$q.when(void 0)})}).then(function(){Kt.traceSuccess(e.$to(),e),e.success=!0,e._deferred.resolve(e.to()),r(n(t.TransitionHookPhase.SUCCESS))},function(i){Kt.traceError(i,e),e.success=!1,e._deferred.reject(i),e._error=i,r(n(t.TransitionHookPhase.ERROR))}),this.promise},e.prototype.valid=function(){return!this.error()||void 0!==this.success},e.prototype.abort=function(){R(this.success)&&(this._aborted=!0)},e.prototype.error=function(){var t=this.$to();if(t.self.abstract)return"Cannot transition to abstract state '"+t.name+"'";var e=t.parameters(),r=this.params(),n=e.filter(function(t){return!t.validates(r[t.id])});return n.length?"Param values not valid for state '"+t.name+"'. Invalid params: [ "+n.map(function(t){return t.id}).join(", ")+" ]":!1===this.success?this._error:void 0},e.prototype.toString=function(){var t=this.from(),e=this.to(),r=function(t){return null!==t["#"]&&void 0!==t["#"]?t:st(t,["#"])};return"Transition#"+this.$id+"( '"+(x(t)?t.name:t)+"'"+ke(r(this._treeChanges.from.map(u("paramValues")).reduce(ot,{})))+" -> "+(this.valid()?"":"(X) ")+"'"+(x(e)?e.name:e)+"'"+ke(r(this.params()))+" )"},e.diToken=e,e}();function Se(t,e){return e.length<=t?e:e.substr(0,t-3)+"..."}function be(t,e){for(;e.length=0||(a.push(n[s]),o[n[s]]=this[n[s]]);return G({},o,t)},t}();function Le(t){return t.name}function Me(t){return t.self.$$state=function(){return t},t.self}function Be(t){return t.parent&&t.parent.data&&(t.data=t.self.data=K(t.parent.data,t.data)),t.data}var Ge=function(t,e){return function(r){var n=r;n&&n.url&&n.name&&n.name.match(/\.\*\*$/)&&(n.url+="{remainder:any}");var i=function(t){if(!O(t))return!1;var e="^"===t.charAt(0);return{val:e?t.substring(1):t,root:e}}(n.url),o=r.parent,a=i?t.compile(i.val,{params:r.params||{},paramMap:function(t,e){return!1===n.reloadOnSearch&&e&&(t=G(t||{},{dynamic:!0})),t}}):n.url;if(!a)return null;if(!t.isMatcher(a))throw new Error("Invalid url '"+a+"' in state '"+r+"'");return i&&i.root?a:(o&&o.navigable||e()).url.append(a)}},We=function(t){return function(e){return!t(e)&&e.url?e:e.parent?e.parent.navigable:null}},ze=function(t){return function(e){var r=e.url&&e.url.parameters({inherit:!1})||[],n=vt(ht(st(e.params||{},r.map(u("id"))),function(e,r){return t.fromConfig(r,null,e)}));return r.concat(n).map(function(t){return[t.id,t]}).reduce(Pt,{})}};function Je(t){return t.parent?t.parent.path.concat(t):[t]}function Qe(t){var e=t.parent?G({},t.parent.includes):{};return e[t.name]=!0,e}function Ke(t){var e,r,n=function(t){return t.provide||t.token},i=_([[u("resolveFn"),function(t){return new he(n(t),t.resolveFn,t.deps,t.policy)}],[u("useFactory"),function(t){return new he(n(t),t.useFactory,t.deps||t.dependencies,t.policy)}],[u("useClass"),function(t){return new he(n(t),function(){return new t.useClass},[],t.policy)}],[u("useValue"),function(t){return new he(n(t),function(){return t.useValue},[],t.policy,t.useValue)}],[u("useExisting"),function(t){return new he(n(t),z,[t.useExisting],t.policy)}]]),o=_([[a(u("val"),O),function(t){return new he(t.token,z,[t.val],t.policy)}],[a(u("val"),I),function(t){return new he(t.token,kt(t.val),t.val.slice(0,-1),t.policy)}],[a(u("val"),P),function(t){return new he(t.token,t.val,(e=t.val,r=N.$injector,e.$inject||r&&r.annotate(e,r.strictDi)||"deferred"),t.policy);var e,r}]]),s=_([[d(he),function(t){return t}],[function(t){return!(!t.token||!t.resolveFn)},i],[function(t){return!(!t.provide&&!t.token||!(t.useValue||t.useFactory||t.useExisting||t.useClass))},i],[function(t){return!!(t&&t.val&&(O(t.val)||I(t.val)||P(t.val)))},o],[y(!0),function(t){throw new Error("Invalid resolve value: "+ke(t))}]]),c=t.resolve;return(I(c)?c:(e=c,r=t.resolvePolicy||{},Object.keys(e||{}).map(function(t){return{token:t,val:e[t],deps:void 0,policy:r[t]}}))).map(s)}var Ye=function(){function t(t,e){this.matcher=t;var r=this,n=function(){return t.find("")},i=function(t){return""===t.name};this.builders={name:[Le],self:[Me],parent:[function(e){return i(e)?null:t.find(r.parentName(e))||n()}],data:[Be],url:[Ge(e,n)],navigable:[We(i)],params:[ze(e.paramFactory)],views:[],path:[Je],includes:[Qe],resolvables:[Ke]}}return t.prototype.builder=function(t,e){var r=this.builders,n=r[t]||[];return O(t)&&!E(e)?n.length>1?n:n[0]:O(t)&&P(e)?(r[t]=n,r[t].push(e),function(){return r[t].splice(r[t].indexOf(e,1))&&null}):void 0},t.prototype.build=function(t){var e=this.matcher,r=this.builders,n=this.parentName(t);if(n&&!e.find(n,void 0,!1))return null;for(var i in r)if(r.hasOwnProperty(i)){var o=r[i].reduce(function(t,e){return function(r){return e(r,t)}},J);t[i]=o(t)}return t},t.prototype.parentName=function(t){var e=t.name||"",r=e.split(".");if("**"===r.pop()&&r.pop(),r.length){if(t.parent)throw new Error("States that specify the 'parent:' property should not have a '.' in their name ("+e+")");return r.join(".")}return t.parent?O(t.parent)?t.parent:t.parent.name:""},t.prototype.name=function(t){var e=t.name;if(-1!==e.indexOf(".")||!t.parent)return e;var r=O(t.parent)?t.parent:t.parent.name;return r?r+"."+e:e},t}(),Ze=function(){function t(t){this._states=t}return t.prototype.isRelative=function(t){return 0===(t=t||"").indexOf(".")||0===t.indexOf("^")},t.prototype.find=function(t,e,r){if(void 0===r&&(r=!0),t||""===t){var n=O(t),i=n?t:t.name;this.isRelative(i)&&(i=this.resolvePath(i,e));var o=this._states[i];if(o&&(n||!(n||o!==t&&o.self!==t)))return o;if(n&&r){var a=vt(this._states).filter(function(t){return t.__stateObjectCache.nameGlob&&t.__stateObjectCache.nameGlob.matches(i)});return a.length>1&&console.log("stateMatcher.find: Found multiple matches for "+i+" using glob: ",a.map(function(t){return t.name})),a[0]}}},t.prototype.resolvePath=function(t,e){if(!e)throw new Error("No reference point given for path '"+t+"'");for(var r=this.find(e),n=t.split("."),i=n.length,o=0,a=r;o0;){var s=e.shift(),c=s.name,f=n.build(s),l=o.indexOf(s);if(f){var h=u(c);if(h&&h.name===c)throw new Error("State '"+c+"' is already defined");var p=u(c+".**");p&&this.$registry.deregister(p),r[c]=s,this.attachRoute(s),l>=0&&o.splice(l,1),i.push(s)}else{var v=a[c];if(a[c]=e.length,l>=0&&v===e.length)return e.push(s),r;l<0&&o.push(s),e.push(s)}}return i.length&&this.listeners.forEach(function(t){return t("registered",i.map(function(t){return t.self}))}),r},t.prototype.attachRoute=function(t){!t.abstract&&t.url&&this.$urlRouter.rule(this.$urlRouter.urlRuleFactory.create(t))},t}(),tr=function(){function t(t){this._router=t,this.states={},this.listeners=[],this.matcher=new Ze(this.states),this.builder=new Ye(this.matcher,t.urlMatcherFactory),this.stateQueue=new Xe(this,t.urlRouter,this.states,this.builder,this.listeners),this._registerRoot()}return t.prototype._registerRoot=function(){(this._root=this.stateQueue.register({name:"",url:"^",views:null,params:{"#":{value:null,type:"hash",dynamic:!0}},abstract:!0})).navigable=null},t.prototype.dispose=function(){var t=this;this.stateQueue.dispose(),this.listeners=[],this.get().forEach(function(e){return t.get(e)&&t.deregister(e)})},t.prototype.onStatesChanged=function(t){return this.listeners.push(t),function(){X(this.listeners)(t)}.bind(this)},t.prototype.root=function(){return this._root},t.prototype.register=function(t){return this.stateQueue.register(t)},t.prototype._deregisterTree=function(t){var e=this,r=this.get().map(function(t){return t.$$state()}),n=function(t){var e=r.filter(function(e){return-1!==t.indexOf(e.parent)});return 0===e.length?e:e.concat(n(e))},i=n([t]),o=[t].concat(i).reverse();return o.forEach(function(t){var r=e._router.urlRouter;r.rules().filter(s("state",t)).forEach(r.removeRule.bind(r)),delete e.states[t.name]}),o},t.prototype.deregister=function(t){var e=this.get(t);if(!e)throw new Error("Can't deregister state; not found: "+t);var r=this._deregisterTree(e.$$state());return this.listeners.forEach(function(t){return t("deregistered",r.map(function(t){return t.self}))}),r},t.prototype.get=function(t,e){var r=this;if(0===arguments.length)return Object.keys(this.states).map(function(t){return r.states[t].self});var n=this.matcher.find(t,e);return n&&n.self||null},t.prototype.decorator=function(t,e){return this.builder.builder(t,e)},t}();function er(t,e){var r=["",""],n=t.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!e)return n;switch(e.squash){case!1:r=["(",")"+(e.isOptional?"?":"")];break;case!0:n=n.replace(/\/$/,""),r=["(?:/(",")|/)?"];break;default:r=["("+e.squash+"|",")?"]}return n+r[0]+e.type.pattern.source+r[1]}var rr=De("/"),nr=function(){function e(t,r,n,i){var o=this;this.config=i,this._cache={path:[this]},this._children=[],this._params=[],this._segments=[],this._compiled=[],this.pattern=t,this.config=it(this.config,{params:{},strict:!0,caseInsensitive:!1,paramMap:z});for(var a,u,c,f=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,l=/([:]?)([\w\[\].-]+)|\{([\w\[\].-]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,h=[],p=0,v=function(r){if(!e.nameValidator.test(r))throw new Error("Invalid parameter name '"+r+"' in pattern '"+t+"'");if(lt(o._params,s("id",r)))throw new Error("Duplicate parameter name '"+r+"' in pattern '"+t+"'")},d=function(e,n){var i,a=e[2]||e[3],u=n?e[4]:e[4]||("*"===e[1]?"[\\s\\S]*":null);return{id:a,regexp:u,cfg:o.config.params[a],segment:t.substring(p,e.index),type:u?r.type(u)||(i=u,K(r.type(n?"query":"path"),{pattern:new RegExp(i,o.config.caseInsensitive?"i":void 0)})):null}};(a=f.exec(t))&&!((u=d(a,!1)).segment.indexOf("?")>=0);)v(u.id),this._params.push(n.fromPath(u.id,u.type,this.config.paramMap(u.cfg,!1))),this._segments.push(u.segment),h.push([u.segment,kt(this._params)]),p=f.lastIndex;var m=(c=t.substring(p)).indexOf("?");if(m>=0){var y=c.substring(m);if(c=c.substring(0,m),y.length>0)for(p=0;a=l.exec(y);)v((u=d(a,!0)).id),this._params.push(n.fromSearch(u.id,u.type,this.config.paramMap(u.cfg,!0))),p=f.lastIndex}this._segments.push(c),this._compiled=h.map(function(t){return er.apply(null,t)}).concat(er(c))}return e.encodeDashes=function(t){return encodeURIComponent(t).replace(/-/g,function(t){return"%5C%"+t.charCodeAt(0).toString(16).toUpperCase()})},e.pathSegmentsAndParams=function(e){return Tt(e._segments,e._params.filter(function(e){return e.location===t.DefType.PATH}).concat(void 0)).reduce(yt,[]).filter(function(t){return""!==t&&E(t)})},e.queryParams=function(e){return e._params.filter(function(e){return e.location===t.DefType.SEARCH})},e.compare=function(t,r){var n=function(t){return t._cache.weights=t._cache.weights||function(t){return t._cache.segments=t._cache.segments||t._cache.path.map(e.pathSegmentsAndParams).reduce(yt,[]).reduce(qe,[]).map(function(t){return O(t)?rr(t):t}).reduce(yt,[])}(t).map(function(t){return"/"===t?1:O(t)?2:t instanceof se?3:void 0})},i=n(t),o=n(r);!function(t,e,r){for(var n=Math.max(t.length,e.length);t.lengthn.weight?u:n}return n},t.prototype.sync=function(t){if(!t||!t.defaultPrevented){var e=this._router,r=e.urlService,n=e.stateService,i={path:r.path(),search:r.search(),hash:r.hash()},o=this.match(i);_([[O,function(t){return r.url(t,!0)}],[Yt.isDef,function(t){return n.go(t.state,t.params,t.options)}],[d(Yt),function(t){return n.go(t.state(),t.params(),t.options())}]])(o&&o.rule.handler(o.match,i,e))}},t.prototype.listen=function(t){var e=this;if(!1!==t)return this._stopFn=this._stopFn||this._router.urlService.onChange(function(t){return e.sync(t)});this._stopFn&&this._stopFn(),delete this._stopFn},t.prototype.update=function(t){var e=this._router.locationService;t?this.location=e.url():e.url()!==this.location&&e.url(this.location,!0)},t.prototype.push=function(t,e,r){var n=r&&!!r.replace;this._router.urlService.url(t.format(e||{}),n)},t.prototype.href=function(t,e,r){var n=t.format(e);if(null==n)return null;r=r||{absolute:!1};var i=this._router.urlService.config,o=i.html5Mode();if(o||null===n||(n="#"+i.hashPrefix()+n),n=function(t,e,r,n){return"/"===n?t:e?Ie(n)+t:r?n.slice(1)+t:t}(n,o,r.absolute,i.baseHref()),!r.absolute||!n)return n;var a=!o&&n?"/":"",u=i.port(),s=80===u||443===u?"":":"+u;return[i.protocol(),"://",i.host(),s,a,n].join("")},t.prototype.rule=function(t){var e=this;if(!or.isUrlRule(t))throw new Error("invalid rule");return t.$id=this._id++,t.priority=t.priority||0,this._rules.push(t),this._sorted=!1,function(){return e.removeRule(t)}},t.prototype.removeRule=function(t){X(this._rules,t)},t.prototype.rules=function(){return this.ensureSorted(),this._rules.slice()},t.prototype.otherwise=function(t){var e=cr(t);this._otherwiseFn=this.urlRuleFactory.create(y(!0),e),this._sorted=!1},t.prototype.initial=function(t){var e=cr(t);this.rule(this.urlRuleFactory.create(function(t,e){return 0===e.globals.transitionHistory.size()&&!!/^\/?$/.exec(t.path)},e))},t.prototype.when=function(t,e,r){var n=this.urlRuleFactory.create(t,e);return E(r&&r.priority)&&(n.priority=r.priority),this.rule(n),n},t.prototype.deferIntercept=function(t){void 0===t&&(t=!0),this.interceptDeferred=t},t}();function cr(t){if(!(P(t)||O(t)||d(Yt)(t)||Yt.isDef(t)))throw new Error("'handler' must be a string, function, TargetState, or have a state: 'newtarget' property");return P(t)?t:y(t)}var fr=function(){function t(){var t=this;this._uiViews=[],this._viewConfigs=[],this._viewConfigFactories={},this._listeners=[],this._pluginapi={_rootViewContext:this._rootViewContext.bind(this),_viewConfigFactory:this._viewConfigFactory.bind(this),_registeredUIViews:function(){return t._uiViews},_activeViewConfigs:function(){return t._viewConfigs},_onSync:function(e){return t._listeners.push(e),function(){return X(t._listeners,e)}}}}return t.normalizeUIViewTarget=function(t,e){void 0===e&&(e="");var r=e.split("@"),n=r[0]||"$default",i=O(r[1])?r[1]:"^",o=/^(\^(?:\.\^)*)\.(.*$)/.exec(n);o&&(i=o[1],n=o[2]),"!"===n.charAt(0)&&(n=n.substr(1),i="");/^(\^(?:\.\^)*)$/.exec(i)?i=i.split(".").reduce(function(t,e){return t.parent},t).name:"."===i&&(i=t.name);return{uiViewName:n,uiViewContextAnchor:i}},t.prototype._rootViewContext=function(t){return this._rootContext=t||this._rootContext},t.prototype._viewConfigFactory=function(t,e){this._viewConfigFactories[t]=e},t.prototype.createViewConfig=function(t,e){var r=this._viewConfigFactories[e.$type];if(!r)throw new Error("ViewService: No view config factory registered for type "+e.$type);var n=r(t,e);return I(n)?n:[n]},t.prototype.deactivateViewConfig=function(t){Kt.traceViewServiceEvent("<- Removing",t),X(this._viewConfigs,t)},t.prototype.activateViewConfig=function(t){Kt.traceViewServiceEvent("-> Registering",t),this._viewConfigs.push(t)},t.prototype.sync=function(){var e=this,r=this._uiViews.map(function(t){return[t.fqn,t]}).reduce(Pt,{});function n(t){for(var e=t.viewDecl.$context,r=0;++r&&e.parent;)e=e.parent;return r}var o=i(function(t,e,r,n){return e*(t(r)-t(n))}),a=this._uiViews.sort(o(function(t){var e=function(t){return t&&t.parent?e(t.parent)+1:1};return 1e4*t.fqn.split(".").length+e(t.creationContext)},1)).map(function(i){var a=e._viewConfigs.filter(t.matches(r,i));return a.length>1&&a.sort(o(n,-1)),{uiView:i,viewConfig:a[0]}}),u=a.map(function(t){return t.viewConfig}),s=this._viewConfigs.filter(function(t){return!Y(u,t)}).map(function(t){return{uiView:void 0,viewConfig:t}});a.forEach(function(t){-1!==e._uiViews.indexOf(t.uiView)&&t.uiView.configUpdated(t.viewConfig)});var c=a.concat(s);this._listeners.forEach(function(t){return t(c)}),Kt.traceViewSync(c)},t.prototype.registerUIView=function(t){Kt.traceViewServiceUIViewEvent("-> Registering",t);var e=this._uiViews;return e.filter(function(e){return e.fqn===t.fqn&&e.$type===t.$type}).length&&Kt.traceViewServiceUIViewEvent("!!!! duplicate uiView named:",t),e.push(t),this.sync(),function(){-1!==e.indexOf(t)?(Kt.traceViewServiceUIViewEvent("<- Deregistering",t),X(e)(t)):Kt.traceViewServiceUIViewEvent("Tried removing non-registered uiView",t)}},t.prototype.available=function(){return this._uiViews.map(u("fqn"))},t.prototype.active=function(){return this._uiViews.filter(u("$config")).map(u("name"))},t.matches=function(t,e){return function(r){if(e.$type!==r.viewDecl.$type)return!1;var n=r.viewDecl,i=n.$uiViewName.split("."),o=e.fqn.split(".");if(!W(i,o.slice(0-i.length)))return!1;var a=1-i.length||void 0,u=o.slice(0,a).join("."),s=t[u].creationContext;return n.$uiViewContextAnchor===(s&&s.name)}},t}(),lr=function(){function t(){this.params=new Ue,this.lastStartedTransitionId=-1,this.transitionHistory=new Ht([],1),this.successfulTransitions=new Ht([],1)}return t.prototype.dispose=function(){this.transitionHistory.clear(),this.successfulTransitions.clear(),this.transition=null},t}(),hr=function(t){return t.reduce(function(t,e){return t[e]=q(e),t},{dispose:J})},pr=["url","path","search","hash","onChange"],vr=["port","protocol","host","baseHref","html5Mode","hashPrefix"],dr=["type","caseInsensitive","strictMode","defaultSquashPolicy"],mr=["sort","when","initial","otherwise","rules","rule","removeRule"],yr=["deferIntercept","listen","sync","match"],gr=function(){function t(t,e){void 0===e&&(e=!0),this.router=t,this.rules={},this.config={};var r=function(){return t.locationService};Q(r,this,r,pr,e);var n=function(){return t.locationConfig};Q(n,this.config,n,vr,e);var i=function(){return t.urlMatcherFactory};Q(i,this.config,i,dr);var o=function(){return t.urlRouter};Q(o,this.rules,o,mr),Q(o,this,o,yr)}return t.prototype.url=function(t,e,r){},t.prototype.path=function(){},t.prototype.search=function(){},t.prototype.hash=function(){},t.prototype.onChange=function(t){},t.prototype.parts=function(){return{path:this.path(),search:this.search(),hash:this.hash()}},t.prototype.dispose=function(){},t.prototype.sync=function(t){},t.prototype.listen=function(t){},t.prototype.deferIntercept=function(t){},t.prototype.match=function(t){},t.locationServiceStub=hr(pr),t.locationConfigStub=hr(vr),t}(),_r=0,wr=function(){function t(t,e){void 0===t&&(t=gr.locationServiceStub),void 0===e&&(e=gr.locationConfigStub),this.locationService=t,this.locationConfig=e,this.$id=_r++,this._disposed=!1,this._disposables=[],this.trace=Kt,this.viewService=new fr,this.globals=new lr,this.transitionService=new Lr(this),this.urlMatcherFactory=new ir,this.urlRouter=new sr(this),this.stateRegistry=new tr(this),this.stateService=new Mr(this),this.urlService=new gr(this),this._plugins={},this.viewService._pluginapi._rootViewContext(this.stateRegistry.root()),this.globals.$current=this.stateRegistry.root(),this.globals.current=this.globals.$current.self,this.disposable(this.globals),this.disposable(this.stateService),this.disposable(this.stateRegistry),this.disposable(this.transitionService),this.disposable(this.urlRouter),this.disposable(t),this.disposable(e)}return t.prototype.disposable=function(t){this._disposables.push(t)},t.prototype.dispose=function(t){var e=this;t&&P(t.dispose)?t.dispose(this):(this._disposed=!0,this._disposables.slice().forEach(function(t){try{"function"==typeof t.dispose&&t.dispose(e),X(e._disposables,t)}catch(t){}}))},t.prototype.plugin=function(t,e){void 0===e&&(e={});var r=new t(this,e);if(!r.name)throw new Error("Required property `name` missing on plugin: "+r);return this._disposables.push(r),this._plugins[r.name]=r},t.prototype.getPlugin=function(t){return t?this._plugins[t]:vt(this._plugins)},t}();function $r(t){t.addResolvable(he.fromData(wr,t.router),""),t.addResolvable(he.fromData($e,t),""),t.addResolvable(he.fromData("$transition$",t),""),t.addResolvable(he.fromData("$stateParams",t.params()),""),t.entering().forEach(function(e){t.addResolvable(he.fromData("$state$",e),e)})}var Sr=Y(["$transition$",$e]),br=function(t){var e=function(t){return Sr(t.token)?he.fromData(t.token,null):t},r=t.treeChanges();ht(r,function(t){return t.map(function(t){var r=t.resolvables.map(e);return G(t.clone(),{resolvables:r})})},r)},Rr=function(t){var e=t.to().redirectTo;if(e){var r=t.router.stateService;return P(e)?N.$q.when(e(t)).then(n):n(e)}function n(e){if(e)return e instanceof Yt?e:O(e)?r.target(e,t.params(),t.options()):e.state||e.params?r.target(e.state||t.to(),e.params||t.params(),t.options()):void 0}};function Er(t){return function(e,r){return(0,r.$$state()[t])(e,r)}}var Cr=Er("onExit"),Tr=Er("onRetain"),Pr=Er("onEnter"),kr=function(t){return new ge(t.treeChanges().to).resolvePath("EAGER",t).then(J)},Or=function(t,e){return new ge(t.treeChanges().to).subContext(e.$$state()).resolvePath("LAZY",t).then(J)},xr=function(t){return new ge(t.treeChanges().to).resolvePath("LAZY",t).then(J)},Ir=function(t){var e=N.$q,r=t.views("entering");if(r.length)return e.all(r.map(function(t){return e.when(t.load())})).then(J)},Vr=function(t){var e=t.views("entering"),r=t.views("exiting");if(e.length||r.length){var n=t.router.viewService;r.forEach(function(t){return n.deactivateViewConfig(t)}),e.forEach(function(t){return n.activateViewConfig(t)}),n.sync()}},jr=function(t){var e=t.router.globals,r=function(){e.transition===t&&(e.transition=null)};t.onSuccess({},function(){e.successfulTransitions.enqueue(t),e.$current=t.$to(),e.current=e.$current.self,Ot(t.params(),e.params)},{priority:1e4}),t.promise.then(r,r)},Ar=function(t){var e=t.options(),r=t.router.stateService,n=t.router.urlRouter;if("url"!==e.source&&e.location&&r.$current.navigable){var i={replace:"replace"===e.location};n.push(r.$current.navigable.url,r.params,i)}n.update(!0)},Hr=function(t){var e=t.router;var r=t.entering().filter(function(t){return!!t.$$state().lazyLoad}).map(function(e){return Dr(t,e)});return N.$q.all(r).then(function(){if("url"!==t.originalTransition().options().source){var r=t.targetState();return e.stateService.target(r.identifier(),r.params(),r.options())}var n=e.urlService,i=n.match(n.parts()),o=i&&i.rule;if(o&&"STATE"===o.type){var a=o.state,u=i.match;return e.stateService.target(a,u,t.options())}e.urlService.sync()})};function Dr(t,e){var r=e.$$state().lazyLoad,n=r._promise;if(!n){n=r._promise=N.$q.when(r(t,e)).then(function(e){e&&Array.isArray(e.states)&&e.states.forEach(function(e){return t.router.stateRegistry.register(e)});return e}).then(function(t){return delete e.lazyLoad,delete e.$$state().lazyLoad,delete r._promise,t},function(t){return delete r._promise,N.$q.reject(t)})}return n}var qr=function(){return function(t,e,r,n,i,o,a,u){void 0===i&&(i=!1),void 0===o&&(o=Xt.HANDLE_RESULT),void 0===a&&(a=Xt.REJECT_ERROR),void 0===u&&(u=!1),this.name=t,this.hookPhase=e,this.hookOrder=r,this.criteriaMatchPath=n,this.reverseSort=i,this.getResultHandler=o,this.getErrorHandler=a,this.synchronous=u}}();function Nr(t){var e=t._ignoredReason();if(e){Kt.traceTransitionIgnored(t);var r=t.router.globals.transition;return"SameAsCurrent"===e&&r&&r.abort(),qt.ignored().toPromise()}}function Fr(t){if(!t.valid())throw new Error(t.error())}var Ur={location:!0,relative:null,inherit:!1,notify:!0,reload:!1,custom:{},current:function(){return null},source:"unknown"},Lr=function(){function e(t){this._transitionCount=0,this._eventTypes=[],this._registeredHooks={},this._criteriaPaths={},this._router=t,this.$view=t.viewService,this._deregisterHookFns={},this._pluginapi=Q(y(this),{},y(this),["_definePathType","_defineEvent","_getPathTypes","_getEvents","getHooks"]),this._defineCorePaths(),this._defineCoreEvents(),this._registerCoreTransitionHooks(),t.globals.successfulTransitions.onEvict(br)}return e.prototype.onCreate=function(t,e,r){},e.prototype.onBefore=function(t,e,r){},e.prototype.onStart=function(t,e,r){},e.prototype.onExit=function(t,e,r){},e.prototype.onRetain=function(t,e,r){},e.prototype.onEnter=function(t,e,r){},e.prototype.onFinish=function(t,e,r){},e.prototype.onSuccess=function(t,e,r){},e.prototype.onError=function(t,e,r){},e.prototype.dispose=function(t){vt(this._registeredHooks).forEach(function(t){return t.forEach(function(e){e._deregistered=!0,X(t,e)})})},e.prototype.create=function(t,e){return new $e(t,e,this._router)},e.prototype._defineCoreEvents=function(){var e=t.TransitionHookPhase,r=Xt,n=this._criteriaPaths;this._defineEvent("onCreate",e.CREATE,0,n.to,!1,r.LOG_REJECTED_RESULT,r.THROW_ERROR,!0),this._defineEvent("onBefore",e.BEFORE,0,n.to),this._defineEvent("onStart",e.RUN,0,n.to),this._defineEvent("onExit",e.RUN,100,n.exiting,!0),this._defineEvent("onRetain",e.RUN,200,n.retained),this._defineEvent("onEnter",e.RUN,300,n.entering),this._defineEvent("onFinish",e.RUN,400,n.to),this._defineEvent("onSuccess",e.SUCCESS,0,n.to,!1,r.LOG_REJECTED_RESULT,r.LOG_ERROR,!0),this._defineEvent("onError",e.ERROR,0,n.to,!1,r.LOG_REJECTED_RESULT,r.LOG_ERROR,!0)},e.prototype._defineCorePaths=function(){var e=t.TransitionHookScope.STATE,r=t.TransitionHookScope.TRANSITION;this._definePathType("to",r),this._definePathType("from",r),this._definePathType("exiting",e),this._definePathType("retained",e),this._definePathType("entering",e)},e.prototype._defineEvent=function(t,e,r,n,i,o,a,u){void 0===i&&(i=!1),void 0===o&&(o=Xt.HANDLE_RESULT),void 0===a&&(a=Xt.REJECT_ERROR),void 0===u&&(u=!1);var s=new qr(t,e,r,n,i,o,a,u);this._eventTypes.push(s),re(this,this,s)},e.prototype._getEvents=function(t){return(E(t)?this._eventTypes.filter(function(e){return e.hookPhase===t}):this._eventTypes.slice()).sort(function(t,e){var r=t.hookPhase-e.hookPhase;return 0===r?t.hookOrder-e.hookOrder:r})},e.prototype._definePathType=function(t,e){this._criteriaPaths[t]={name:t,scope:e}},e.prototype._getPathTypes=function(){return this._criteriaPaths},e.prototype.getHooks=function(t){return this._registeredHooks[t]},e.prototype._registerCoreTransitionHooks=function(){var t=this._deregisterHookFns;t.addCoreResolves=this.onCreate({},$r),t.ignored=function(t){return t.onBefore({},Nr,{priority:-9999})}(this),t.invalid=function(t){return t.onBefore({},Fr,{priority:-1e4})}(this),t.redirectTo=function(t){return t.onStart({to:function(t){return!!t.redirectTo}},Rr)}(this),t.onExit=function(t){return t.onExit({exiting:function(t){return!!t.onExit}},Cr)}(this),t.onRetain=function(t){return t.onRetain({retained:function(t){return!!t.onRetain}},Tr)}(this),t.onEnter=function(t){return t.onEnter({entering:function(t){return!!t.onEnter}},Pr)}(this),t.eagerResolve=function(t){return t.onStart({},kr,{priority:1e3})}(this),t.lazyResolve=function(t){return t.onEnter({entering:y(!0)},Or,{priority:1e3})}(this),t.resolveAll=function(t){return t.onFinish({},xr,{priority:1e3})}(this),t.loadViews=function(t){return t.onFinish({},Ir)}(this),t.activateViews=function(t){return t.onSuccess({},Vr)}(this),t.updateGlobals=function(t){return t.onCreate({},jr)}(this),t.updateUrl=function(t){return t.onSuccess({},Ar,{priority:9999})}(this),t.lazyLoad=function(t){return t.onBefore({entering:function(t){return!!t.lazyLoad}},Hr)}(this)},e}(),Mr=function(){function e(t){this.router=t,this.invalidCallbacks=[],this._defaultErrorHandler=function(t){t instanceof Error&&t.stack?(console.error(t),console.error(t.stack)):t instanceof qt?(console.error(t.toString()),t.detail&&t.detail.stack&&console.error(t.detail.stack)):console.error(t)};var r=Object.keys(e.prototype).filter(f(Y(["current","$current","params","transition"])));Q(y(e.prototype),this,y(this),r)}return Object.defineProperty(e.prototype,"transition",{get:function(){return this.router.globals.transition},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"params",{get:function(){return this.router.globals.params},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"current",{get:function(){return this.router.globals.current},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"$current",{get:function(){return this.router.globals.$current},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this.defaultErrorHandler(J),this.invalidCallbacks=[]},e.prototype._handleInvalidTargetState=function(t,e){var r=this,n=fe.makeTargetState(this.router.stateRegistry,t),i=this.router.globals,o=function(){return i.transitionHistory.peekTail()},a=o(),u=new Ht(this.invalidCallbacks.slice()),s=new ge(t).injector(),c=function(t){if(t instanceof Yt){var e=t;return(e=r.target(e.identifier(),e.params(),e.options())).valid()?o()!==a?qt.superseded().toPromise():r.transitionTo(e.identifier(),e.params(),e.options()):qt.invalid(e.error()).toPromise()}};return function t(){var r=u.dequeue();return void 0===r?qt.invalid(e.error()).toPromise():N.$q.when(r(e,n,s)).then(c).then(function(e){return e||t()})}()},e.prototype.onInvalid=function(t){return this.invalidCallbacks.push(t),function(){X(this.invalidCallbacks)(t)}.bind(this)},e.prototype.reload=function(t){return this.transitionTo(this.current,this.params,{reload:!E(t)||t,inherit:!1,notify:!1})},e.prototype.go=function(t,e,r){var n=it(r,{relative:this.$current,inherit:!0},Ur);return this.transitionTo(t,e,n)},e.prototype.target=function(t,e,r){if(void 0===r&&(r={}),x(r.reload)&&!r.reload.name)throw new Error("Invalid reload state object");var n=this.router.stateRegistry;if(r.reloadState=!0===r.reload?n.root():n.matcher.find(r.reload,r.relative),r.reload&&!r.reloadState)throw new Error("No such reload state '"+(O(r.reload)?r.reload:r.reload.name)+"'");return new Yt(this.router.stateRegistry,t,e,r)},e.prototype.getCurrentPath=function(){var t=this,e=this.router.globals.successfulTransitions.peekTail();return e?e.treeChanges().to:[new ce(t.router.stateRegistry.root())]},e.prototype.transitionTo=function(e,r,n){var i=this;void 0===r&&(r={}),void 0===n&&(n={});var o=this.router,a=o.globals;n=it(n,Ur);n=G(n,{current:function(){return a.transition}});var u=this.target(e,r,n),s=this.getCurrentPath();if(!u.exists())return this._handleInvalidTargetState(s,u);if(!u.valid())return At(u.error());var c=function(e){return function(r){if(r instanceof qt){var n=o.globals.lastStartedTransitionId===e.$id;if(r.type===t.RejectType.IGNORED)return n&&o.urlRouter.update(),N.$q.when(a.current);var u=r.detail;if(r.type===t.RejectType.SUPERSEDED&&r.redirected&&u instanceof Yt){var s=e.redirect(u);return s.run().catch(c(s))}if(r.type===t.RejectType.ABORTED)return n&&o.urlRouter.update(),N.$q.reject(r)}return i.defaultErrorHandler()(r),N.$q.reject(r)}},f=this.router.transitionService.create(s,u),l=f.run().catch(c(f));return jt(l),G(l,{transition:f})},e.prototype.is=function(t,e,r){r=it(r,{relative:this.$current});var n=this.router.stateRegistry.matcher.find(t,r.relative);if(E(n)){if(this.$current!==n)return!1;if(!e)return!0;var i=n.parameters({inherit:!0,matchingKeys:e});return se.equals(i,se.values(i,e),this.params)}},e.prototype.includes=function(t,e,r){r=it(r,{relative:this.$current});var n=O(t)&&w.fromString(t);if(n){if(!n.matches(this.$current.name))return!1;t=this.$current.name}var i=this.router.stateRegistry.matcher.find(t,r.relative),o=this.$current.includes;if(E(i)){if(!E(o[i.name]))return!1;if(!e)return!0;var a=i.parameters({inherit:!0,matchingKeys:e});return se.equals(a,se.values(a,e),this.params)}},e.prototype.href=function(t,e,r){r=it(r,{lossy:!0,inherit:!0,absolute:!1,relative:this.$current}),e=e||{};var n=this.router.stateRegistry.matcher.find(t,r.relative);if(!E(n))return null;r.inherit&&(e=this.params.$inherit(e,this.$current,n));var i=n&&r.lossy?n.navigable:n;return i&&void 0!==i.url&&null!==i.url?this.router.urlRouter.href(i.url,e,{absolute:r.absolute}):null},e.prototype.defaultErrorHandler=function(t){return this._defaultErrorHandler=t||this._defaultErrorHandler},e.prototype.get=function(t,e){var r=this.router.stateRegistry;return 0===arguments.length?r.get():r.get(t,e||this.$current)},e.prototype.lazyLoad=function(t,e){var r=this.get(t);if(!r||!r.lazyLoad)throw new Error("Can not lazy load "+t);var n=this.getCurrentPath(),i=fe.makeTargetState(this.router.stateRegistry,n);return Dr(e=e||this.router.transitionService.create(n,i),r)},e}(),Br={when:function(t){return new Promise(function(e,r){return e(t)})},reject:function(t){return new Promise(function(e,r){r(t)})},defer:function(){var t={};return t.promise=new Promise(function(e,r){t.resolve=e,t.reject=r}),t},all:function(t){if(I(t))return Promise.all(t);if(x(t)){var e=Object.keys(t).map(function(e){return t[e].then(function(t){return{key:e,val:t}})});return Br.all(e).then(function(t){return t.reduce(function(t,e){return t[e.key]=e.val,t},{})})}}},Gr={},Wr=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,zr=/([^\s,]+)/g,Jr={get:function(t){return Gr[t]},has:function(t){return null!=Jr.get(t)},invoke:function(t,e,r){var n=G({},Gr,r||{}),i=Jr.annotate(t),o=bt(function(t){return n.hasOwnProperty(t)},function(t){return"DI can't find injectable: '"+t+"'"}),a=i.filter(o).map(function(t){return n[t]});return P(t)?t.apply(e,a):t.slice(-1)[0].apply(e,a)},annotate:function(t){if(!H(t))throw new Error("Not an injectable function: "+t);if(t&&t.$inject)return t.$inject;if(I(t))return t.slice(0,-1);var e=t.toString().replace(Wr,"");return e.slice(e.indexOf("(")+1,e.indexOf(")")).match(zr)||[]}},Qr=function(t,e){var r=e[0],n=e[1];return t.hasOwnProperty(r)?I(t[r])?t[r].push(n):t[r]=[t[r],n]:t[r]=n,t},Kr=function(t){return t.split("&").filter(z).map(Ae).reduce(Qr,{})};function Yr(t){var e=function(t){return t||""},r=Ve(t).map(e),n=r[0],i=r[1],o=je(n).map(e);return{path:o[0],search:o[1],hash:i,url:t}}var Zr=function(t){var e=t.path(),r=t.search(),n=t.hash(),i=Object.keys(r).map(function(t){var e=r[t];return(I(e)?e:[e]).map(function(e){return t+"="+e})}).reduce(yt,[]).join("&");return e+(i?"?"+i:"")+(n?"#"+n:"")};function Xr(t,e,r,n){return function(i){var o=i.locationService=new r(i),a=i.locationConfig=new n(i,e);return{name:t,service:o,configuration:a,dispose:function(t){t.dispose(o),t.dispose(a)}}}}var tn,en=function(){function t(t,e){var r=this;this.fireAfterUpdate=e,this._listeners=[],this._listener=function(t){return r._listeners.forEach(function(e){return e(t)})},this.hash=function(){return Yr(r._get()).hash},this.path=function(){return Yr(r._get()).path},this.search=function(){return Kr(Yr(r._get()).search)},this._location=F.location,this._history=F.history}return t.prototype.url=function(t,e){return void 0===e&&(e=!0),E(t)&&t!==this._get()&&(this._set(null,null,t,e),this.fireAfterUpdate&&this._listeners.forEach(function(e){return e({url:t})})),Zr(this)},t.prototype.onChange=function(t){var e=this;return this._listeners.push(t),function(){return X(e._listeners,t)}},t.prototype.dispose=function(t){nt(this._listeners)},t}(),rn=(tn=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},function(t,e){function r(){this.constructor=t}tn(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),nn=function(t){function e(e){var r=t.call(this,e,!1)||this;return F.addEventListener("hashchange",r._listener,!1),r}return rn(e,t),e.prototype._get=function(){return He(this._location.hash)},e.prototype._set=function(t,e,r,n){this._location.hash=r},e.prototype.dispose=function(e){t.prototype.dispose.call(this,e),F.removeEventListener("hashchange",this._listener)},e}(en),on=function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),an=function(t){function e(e){return t.call(this,e,!0)||this}return on(e,t),e.prototype._get=function(){return this._url},e.prototype._set=function(t,e,r,n){this._url=r},e}(en),un=function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),sn=function(t){function e(e){var r=t.call(this,e,!0)||this;return r._config=e.urlService.config,F.addEventListener("popstate",r._listener,!1),r}return un(e,t),e.prototype._getBasePrefix=function(){return Ie(this._config.baseHref())},e.prototype._get=function(){var t=this._location,e=t.pathname,r=t.hash,n=t.search;n=je(n)[1],r=Ve(r)[1];var i=this._getBasePrefix(),o=e===this._config.baseHref(),a=e.substr(0,i.length)===i;return(e=o?"/":a?e.substring(i.length):e)+(n?"?"+n:"")+(r?"#"+r:"")},e.prototype._set=function(t,e,r,n){var i=this._getBasePrefix(),o=r&&"/"!==r[0]?"/":"",a=""===r||"/"===r?this._config.baseHref():i+o+r;n?this._history.replaceState(t,e,a):this._history.pushState(t,e,a)},e.prototype.dispose=function(e){t.prototype.dispose.call(this,e),F.removeEventListener("popstate",this._listener)},e}(en),cn=function(){return function(){var t=this;this.dispose=J,this._baseHref="",this._port=80,this._protocol="http",this._host="localhost",this._hashPrefix="",this.port=function(){return t._port},this.protocol=function(){return t._protocol},this.host=function(){return t._host},this.baseHref=function(){return t._baseHref},this.html5Mode=function(){return!1},this.hashPrefix=function(e){return E(e)?t._hashPrefix=e:t._hashPrefix}}}(),fn=function(){function t(t,e){void 0===e&&(e=!1),this._isHtml5=e,this._baseHref=void 0,this._hashPrefix=""}return t.prototype.port=function(){return location.port?Number(location.port):"https"===this.protocol()?443:80},t.prototype.protocol=function(){return location.protocol.replace(/:/g,"")},t.prototype.host=function(){return location.hostname},t.prototype.html5Mode=function(){return this._isHtml5},t.prototype.hashPrefix=function(t){return E(t)?this._hashPrefix=t:this._hashPrefix},t.prototype.baseHref=function(t){return E(t)?this._baseHref=t:E(this._baseHref)?this._baseHref:this.applyDocumentBaseHref()},t.prototype.applyDocumentBaseHref=function(){var t=document.getElementsByTagName("base")[0];return this._baseHref=t?t.href.substr(location.origin.length):location.pathname||"/"},t.prototype.dispose=function(){},t}();function ln(t){return N.$injector=Jr,N.$q=Br,{name:"vanilla.services",$q:Br,$injector:Jr,dispose:function(){return null}}}var hn=Xr("vanilla.hashBangLocation",!1,nn,fn),pn=Xr("vanilla.pushStateLocation",!0,sn,fn),vn=Xr("vanilla.memoryLocation",!1,an,cn),dn=function(){function t(){}return t.prototype.dispose=function(t){},t}(),mn=Object.freeze({root:F,fromJson:L,toJson:M,forEach:B,extend:G,equals:W,identity:z,noop:J,createProxyFunctions:Q,inherit:K,inArray:Y,_inArray:Z,removeFrom:X,_removeFrom:tt,pushTo:et,_pushTo:rt,deregAll:nt,defaults:it,mergeR:ot,ancestors:at,pick:ut,omit:st,pluck:ct,filter:ft,find:lt,mapObj:ht,map:pt,values:vt,allTrueR:dt,anyTrueR:mt,unnestR:yt,flattenR:gt,pushR:_t,uniqR:wt,unnest:$t,flatten:St,assertPredicate:bt,assertMap:Rt,assertFn:Et,pairs:Ct,arrayTuples:Tt,applyPairs:Pt,tail:kt,copy:Ot,_extend:xt,silenceUncaughtInPromise:jt,silentRejection:At,notImplemented:q,services:N,Glob:w,curry:i,compose:o,pipe:a,prop:u,propEq:s,parse:c,not:f,and:l,or:h,all:p,any:v,is:d,eq:m,val:y,invoke:g,pattern:_,isUndefined:R,isDefined:E,isNull:C,isNullOrUndefined:T,isFunction:P,isNumber:k,isString:O,isObject:x,isArray:I,isDate:V,isRegExp:j,isState:A,isInjectable:H,isPromise:D,Queue:Ht,maxLength:Se,padString:be,kebobString:Re,functionToString:Ee,fnToString:Ce,stringify:ke,beforeAfterSubstr:Oe,hostRegex:xe,stripLastPathElement:Ie,splitHash:Ve,splitQuery:je,splitEqual:Ae,trimHashVal:He,splitOnDelim:De,joinNeighborsR:qe,get Category(){return t.Category},Trace:Qt,trace:Kt,get DefType(){return t.DefType},Param:se,ParamTypes:Fe,StateParams:Ue,ParamType:ie,PathNode:ce,PathUtils:fe,resolvePolicies:pe,defaultResolvePolicy:le,Resolvable:he,NATIVE_INJECTOR_TOKEN:ye,ResolveContext:ge,resolvablesBuilder:Ke,StateBuilder:Ye,StateObject:$,StateMatcher:Ze,StateQueueManager:Xe,StateRegistry:tr,StateService:Mr,TargetState:Yt,get TransitionHookPhase(){return t.TransitionHookPhase},get TransitionHookScope(){return t.TransitionHookScope},HookBuilder:ne,matchState:te,RegisteredHook:ee,makeEvent:re,get RejectType(){return t.RejectType},Rejection:qt,Transition:$e,TransitionHook:Xt,TransitionEventType:qr,defaultTransOpts:Ur,TransitionService:Lr,UrlMatcher:nr,UrlMatcherFactory:ir,UrlRouter:sr,UrlRuleFactory:or,BaseUrlRule:ar,UrlService:gr,ViewService:fr,UIRouterGlobals:lr,UIRouter:wr,$q:Br,$injector:Jr,BaseLocationServices:en,HashLocationService:nn,MemoryLocationService:an,PushStateLocationService:sn,MemoryLocationConfig:cn,BrowserLocationConfig:fn,keyValsToObjectR:Qr,getParams:Kr,parseUrl:Yr,buildUrl:Zr,locationPluginFactory:Xr,servicesPlugin:ln,hashLocationPlugin:hn,pushStateLocationPlugin:pn,memoryLocationPlugin:vn,UIRouterPluginBase:dn});function yn(){var t=null;return function(e,r){return t=t||N.$injector.get("$templateFactory"),[new $n(e,r,t)]}}var gn=function(t,e){return t.reduce(function(t,r){return t||E(e[r])},!1)};function _n(t){if(!t.parent)return{};var e=["component","bindings","componentProvider"],r=["templateProvider","templateUrl","template","notify","async"].concat(["controller","controllerProvider","controllerAs","resolveAs"]),n=e.concat(r);if(E(t.views)&&gn(n,t))throw new Error("State '"+t.name+"' has a 'views' object. It cannot also have \"view properties\" at the state level. Move the following properties into a view (in the 'views' object): "+n.filter(function(e){return E(t[e])}).join(", "));var i={},o=t.views||{$default:ut(t,n)};return B(o,function(n,o){if(o=o||"$default",O(n)&&(n={component:n}),n=G({},n),gn(e,n)&&gn(r,n))throw new Error("Cannot combine: "+e.join("|")+" with: "+r.join("|")+" in stateview: '"+o+"@"+t.name+"'");n.resolveAs=n.resolveAs||"$resolve",n.$type="ng1",n.$context=t,n.$name=o;var a=fr.normalizeUIViewTarget(n.$context,n.$name);n.$uiViewName=a.uiViewName,n.$uiViewContextAnchor=a.uiViewContextAnchor,i[o]=n}),i}var wn=0,$n=function(){function t(t,e,r){var n=this;this.path=t,this.viewDecl=e,this.factory=r,this.$id=wn++,this.loaded=!1,this.getTemplate=function(t,e){return n.component?n.factory.makeComponentTemplate(t,e,n.component,n.viewDecl.bindings):n.template}}return t.prototype.load=function(){var t=this,e=N.$q,r=new ge(this.path),n=this.path.reduce(function(t,e){return G(t,e.paramValues)},{}),i={template:e.when(this.factory.fromConfig(this.viewDecl,n,r)),controller:e.when(this.getController(r))};return e.all(i).then(function(e){return Kt.traceViewServiceEvent("Loaded",t),t.controller=e.controller,G(t,e.template),t})},t.prototype.getController=function(t){var e=this.viewDecl.controllerProvider;if(!H(e))return this.viewDecl.controller;var r=N.$injector.annotate(e),n=I(e)?kt(e):e;return new he("",n,r).get(t)},t}(),Sn=function(){function t(){var t=this;this._useHttp=n.version.minor<3,this.$get=["$http","$templateCache","$injector",function(e,r,n){return t.$templateRequest=n.has&&n.has("$templateRequest")&&n.get("$templateRequest"),t.$http=e,t.$templateCache=r,t}]}return t.prototype.useHttpService=function(t){this._useHttp=t},t.prototype.fromConfig=function(t,e,r){var n=function(t){return N.$q.when(t).then(function(t){return{template:t}})},i=function(t){return N.$q.when(t).then(function(t){return{component:t}})};return E(t.template)?n(this.fromString(t.template,e)):E(t.templateUrl)?n(this.fromUrl(t.templateUrl,e)):E(t.templateProvider)?n(this.fromProvider(t.templateProvider,e,r)):E(t.component)?i(t.component):E(t.componentProvider)?i(this.fromComponentProvider(t.componentProvider,e,r)):n("")},t.prototype.fromString=function(t,e){return P(t)?t(e):t},t.prototype.fromUrl=function(t,e){return P(t)&&(t=t(e)),null==t?null:this._useHttp?this.$http.get(t,{cache:this.$templateCache,headers:{Accept:"text/html"}}).then(function(t){return t.data}):this.$templateRequest(t)},t.prototype.fromProvider=function(t,e,r){var n=N.$injector.annotate(t),i=I(t)?kt(t):t;return new he("",i,n).get(r)},t.prototype.fromComponentProvider=function(t,e,r){var n=N.$injector.annotate(t),i=I(t)?kt(t):t;return new he("",i,n).get(r)},t.prototype.makeComponentTemplate=function(t,e,r,i){i=i||{};var o=n.version.minor>=3?"::":"",a=function(t){var e=Re(t);return/^(x|data)-/.exec(e)?"x-"+e:e},u=function(t){var e=N.$injector.get(t+"Directive");if(!e||!e.length)throw new Error("Unable to find component named '"+t+"'");return e.map(bn).reduce(yt,[])}(r).map(function(r){var n=r.name,u=r.type,s=a(n);if(t.attr(s)&&!i[n])return s+"='"+t.attr(s)+"'";var c=i[n]||n;if("@"===u)return s+"='{{"+o+"$resolve."+c+"}}'";if("&"===u){var f=e.getResolvable(c),l=f&&f.data,h=l&&N.$injector.annotate(l)||[];return s+"='$resolve."+c+(I(l)?"["+(l.length-1)+"]":"")+"("+h.join(",")+")'"}return s+"='"+o+"$resolve."+c+"'"}).join(" "),s=a(r);return"<"+s+" "+u+">"},t}();var bn=function(t){return x(t.bindToController)?Rn(t.bindToController):Rn(t.scope)},Rn=function(t){return Object.keys(t||{}).map(function(e){return[e,/^([=<@&])[?]?(.*)/.exec(t[e])]}).filter(function(t){return E(t)&&I(t[1])}).map(function(t){return{name:t[1][2]||t[0],type:t[1][1]}})},En=function(){function t(e,r){this.stateRegistry=e,this.stateService=r,Q(y(t.prototype),this,y(this))}return t.prototype.decorator=function(t,e){return this.stateRegistry.decorator(t,e)||this},t.prototype.state=function(t,e){return x(t)?e=t:e.name=t,this.stateRegistry.register(e),this},t.prototype.onInvalid=function(t){return this.stateService.onInvalid(t)},t}(),Cn=function(t){return function(e,r){var n=e[t],i="onExit"===t?"from":"to";return n?function(t,e){var r=new ge(t.treeChanges(i)).subContext(e.$$state()),o=G(Mn(r),{$state$:e,$transition$:t});return N.$injector.invoke(n,this,o)}:void 0}},Tn=function(){function t(t){this._urlListeners=[],this.$locationProvider=t;var e=y(t);Q(e,this,e,["hashPrefix"])}return t.monkeyPatchPathParameterType=function(t){var e=t.urlMatcherFactory.type("path");e.encode=function(t){return null!=t?t.toString().replace(/(~|\/)/g,function(t){return{"~":"~~","/":"~2F"}[t]}):t},e.decode=function(t){return null!=t?t.toString().replace(/(~~|~2F)/g,function(t){return{"~~":"~","~2F":"/"}[t]}):t}},t.prototype.dispose=function(){},t.prototype.onChange=function(t){var e=this;return this._urlListeners.push(t),function(){return X(e._urlListeners)(t)}},t.prototype.html5Mode=function(){var t=this.$locationProvider.html5Mode();return(t=x(t)?t.enabled:t)&&this.$sniffer.history},t.prototype.url=function(t,e,r){return void 0===e&&(e=!1),E(t)&&this.$location.url(t),e&&this.$location.replace(),r&&this.$location.state(r),this.$location.url()},t.prototype._runtimeServices=function(t,e,r,n){var i=this;this.$location=e,this.$sniffer=r,t.$on("$locationChangeSuccess",function(t){return i._urlListeners.forEach(function(e){return e(t)})});var o=y(e),a=y(n);Q(o,this,o,["replace","path","search","hash"]),Q(o,this,o,["port","protocol","host"]),Q(a,this,a,["baseHref"])},t}(),Pn=function(){function t(t){this._router=t,this._urlRouter=t.urlRouter}return t.injectableHandler=function(t,e){return function(r){return N.$injector.invoke(e,null,{$match:r,$stateParams:t.globals.params})}},t.prototype.$get=function(){var t=this._urlRouter;return t.update(!0),t.interceptDeferred||t.listen(),t},t.prototype.rule=function(t){var e=this;if(!P(t))throw new Error("'rule' must be a function");var r=new ar(function(){return t(N.$injector,e._router.locationService)},z);return this._urlRouter.rule(r),this},t.prototype.otherwise=function(t){var e=this,r=this._urlRouter;if(O(t))r.otherwise(t);else{if(!P(t))throw new Error("'rule' must be a string or function");r.otherwise(function(){return t(N.$injector,e._router.locationService)})}return this},t.prototype.when=function(e,r){return(I(r)||P(r))&&(r=t.injectableHandler(this._router,r)),this._urlRouter.when(e,r),this},t.prototype.deferIntercept=function(t){this._urlRouter.deferIntercept(t)},t}();n.module("ui.router.angular1",[]);var kn=n.module("ui.router.init",[]),On=n.module("ui.router.util",["ng","ui.router.init"]),xn=n.module("ui.router.router",["ui.router.util"]),In=n.module("ui.router.state",["ui.router.router","ui.router.util","ui.router.angular1"]),Vn=n.module("ui.router",["ui.router.init","ui.router.state","ui.router.angular1"]),jn=(n.module("ui.router.compat",["ui.router"]),null);function An(t){(jn=this.router=new wr).stateProvider=new En(jn.stateRegistry,jn.stateService),jn.stateRegistry.decorator("views",_n),jn.stateRegistry.decorator("onExit",Cn("onExit")),jn.stateRegistry.decorator("onRetain",Cn("onRetain")),jn.stateRegistry.decorator("onEnter",Cn("onEnter")),jn.viewService._pluginapi._viewConfigFactory("ng1",yn());var e=jn.locationService=jn.locationConfig=new Tn(t);function r(t,r,n,i,o,a){return e._runtimeServices(i,t,n,r),delete jn.router,delete jn.$get,jn}return Tn.monkeyPatchPathParameterType(jn),jn.router=jn,jn.$get=r,r.$inject=["$location","$browser","$sniffer","$rootScope","$http","$templateCache"],jn}An.$inject=["$locationProvider"];var Hn=function(t){return["$uiRouterProvider",function(e){var r=e.router[t];return r.$get=function(){return r},r}]};function Dn(t,e,r){N.$injector=t,N.$q=e,r.stateRegistry.get().map(function(t){return t.$$state().resolvables}).reduce(yt,[]).filter(function(t){return"deferred"===t.deps}).forEach(function(e){return e.deps=t.annotate(e.resolveFn,t.strictDi)})}Dn.$inject=["$injector","$q","$uiRouter"];function qn(t){t.$watch(function(){Kt.approximateDigests++})}qn.$inject=["$rootScope"],kn.provider("$uiRouter",An),xn.provider("$urlRouter",["$uiRouterProvider",function(t){return t.urlRouterProvider=new Pn(t)}]),On.provider("$urlService",Hn("urlService")),On.provider("$urlMatcherFactory",["$uiRouterProvider",function(){return jn.urlMatcherFactory}]),On.provider("$templateFactory",function(){return new Sn}),In.provider("$stateRegistry",Hn("stateRegistry")),In.provider("$uiRouterGlobals",Hn("globals")),In.provider("$transitions",Hn("transitionService")),In.provider("$state",["$uiRouterProvider",function(){return G(jn.stateProvider,{$get:function(){return jn.stateService}})}]),In.factory("$stateParams",["$uiRouter",function(t){return t.globals.params}]),Vn.factory("$view",function(){return jn.viewService}),Vn.service("$trace",function(){return Kt}),Vn.run(qn),On.run(["$urlMatcherFactory",function(t){}]),In.run(["$state",function(t){}]),xn.run(["$urlRouter",function(t){}]),kn.run(Dn);var Nn,Fn,Un,Ln,Mn=function(t){return t.getTokens().filter(O).map(function(e){var r=t.getResolvable(e);return[e,"NOWAIT"===t.getPolicy(r).async?r.promise:r.data]}).reduce(Pt,{})};function Bn(t){var e,r=t.match(/^\s*({[^}]*})\s*$/);if(r&&(t="("+r[1]+")"),!(e=t.replace(/\n/g," ").match(/^\s*([^(]*?)\s*(\((.*)\))?\s*$/))||4!==e.length)throw new Error("Invalid state ref '"+t+"'");return{state:e[1]||null,paramExpr:e[3]||null}}function Gn(t){var e=t.parent().inheritedData("$uiView"),r=c("$cfg.path")(e);return r?kt(r).state.name:void 0}function Wn(t,e,r){var n=r.uiState||t.current.name,i=G(function(t,e){return{relative:Gn(t)||e.$current,inherit:!0,source:"sref"}}(e,t),r.uiStateOpts||{}),o=t.href(n,r.uiStateParams,i);return{uiState:n,uiStateParams:r.uiStateParams,uiStateOpts:i,href:o}}function zn(t){var e="[object SVGAnimatedString]"===Object.prototype.toString.call(t.prop("href")),r="FORM"===t[0].nodeName;return{attr:r?"action":e?"xlink:href":"href",isAnchor:"A"===t.prop("tagName").toUpperCase(),clickable:!r}}function Jn(t,e,r,n,i){return function(o){var a=o.which||o.button,u=i();if(!(a>1||o.ctrlKey||o.metaKey||o.shiftKey||t.attr("target"))){var s=r(function(){e.go(u.uiState,u.uiStateParams,u.uiStateOpts)});o.preventDefault();var c=n.isAnchor&&!u.href?1:0;o.preventDefault=function(){c--<=0&&r.cancel(s)}}}}function Qn(t,e,r,n){var i;n&&(i=n.events),I(i)||(i=["click"]);for(var o=t.on?"on":"bind",a=0,u=i;a0)){var r=d(t,e,u);return m(),r}},e.$on("$destroy",(s=n.stateRegistry.onStatesChanged(p),c=n.transitionService.onStart({},h),f=e.$on("$stateChangeSuccess",m),function(){s(),c(),f()})),n.globals.transition&&h(n.globals.transition),m()}]}}],n.module("ui.router.state").directive("uiSref",Nn).directive("uiSrefActive",Un).directive("uiSrefActiveEq",Un).directive("uiState",Fn),Kn.$inject=["$state"],Yn.$inject=["$state"],n.module("ui.router.state").filter("isState",Kn).filter("includedByState",Yn),Ln=["$view","$animate","$uiViewScroll","$interpolate","$q",function(t,e,r,i,o){var a={$cfg:{viewDecl:{$context:t._pluginapi._rootViewContext()}},$uiView:{}},u={count:0,restrict:"ECA",terminal:!0,priority:400,transclude:"element",compile:function(s,f,l){return function(s,f,h){var p,v,d,m,y,g=h.onload||"",_=h.autoscroll,w={enter:function(t,r,i){n.version.minor>2?e.enter(t,null,r).then(i):e.enter(t,null,r,i)},leave:function(t,r){n.version.minor>2?e.leave(t).then(r):e.leave(t,r)}},$=f.inheritedData("$uiView")||a,S=i(h.uiView||h.name||"")(s)||"$default",b={$type:"ng1",id:u.count++,name:S,fqn:$.$uiView.fqn?$.$uiView.fqn+"."+S:S,config:null,configUpdated:function(t){if(t&&!(t instanceof $n))return;if(e=m,r=t,e===r)return;var e,r;Kt.traceUIViewConfigUpdated(b,t&&t.viewDecl&&t.viewDecl.$context),m=t,R(t)},get creationContext(){var t=c("$cfg.viewDecl.$context")($),e=c("$uiView.creationContext")($);return t||e}};function R(t){var e=s.$new(),n=o.defer(),i=o.defer(),a={$cfg:t,$uiView:b},u={$animEnter:n.promise,$animLeave:i.promise,$$animLeave:i};e.$emit("$viewContentLoading",S);var c=l(e,function(t){t.data("$uiViewAnim",u),t.data("$uiView",a),w.enter(t,f,function(){n.resolve(),d&&d.$emit("$viewContentAnimationEnded"),(E(_)&&!_||s.$eval(_))&&r(t)}),function(){if(p&&(Kt.traceUIViewEvent("Removing (previous) el",p.data("$uiView")),p.remove(),p=null),d&&(Kt.traceUIViewEvent("Destroying scope",b),d.$destroy(),d=null),v){var t=v.data("$uiViewAnim");Kt.traceUIViewEvent("Animate out",t),w.leave(v,function(){t.$$animLeave.resolve(),p=null}),p=v,v=null}}()});v=c,(d=e).$emit("$viewContentLoaded",t||m),d.$eval(g)}Kt.traceUIViewEvent("Linking",b),f.data("$uiView",{$uiView:b}),R(),y=t.registerUIView(b),s.$on("$destroy",function(){Kt.traceUIViewEvent("Destroying/Unregistering",b),y()})}}};return u}],Zn.$inject=["$compile","$controller","$transitions","$view","$q","$timeout"];var Xn="function"==typeof n.module("ui.router").component,ti=0;function ei(t,e,r,n,i){!P(r.$onInit)||i.viewDecl.component&&Xn||r.$onInit();var o=kt(i.path).state.self,a={bind:r};if(P(r.uiOnParamsChanged)){var u=new ge(i.path).getResolvable("$transition$").data;n.$on("$destroy",e.onSuccess({},function(t){if(t!==u&&-1===t.exiting().indexOf(o)){var e=t.params("to"),n=t.params("from"),i=t.treeChanges().to.map(function(t){return t.paramSchema}).reduce(yt,[]),a=t.treeChanges().from.map(function(t){return t.paramSchema}).reduce(yt,[]),s=i.filter(function(t){var r=a.indexOf(t);return-1===r||!a[r].type.equals(e[t.id],n[t.id])});if(s.length){var c=s.map(function(t){return t.id}),f=ft(e,function(t,e){return-1!==c.indexOf(e)});r.uiOnParamsChanged(f,t)}}},a))}if(P(r.uiCanExit)){var s=ti++,c=function(t){return!!t&&(t._uiCanExitIds&&!0===t._uiCanExitIds[s]||c(t.redirectedFrom()))},f={exiting:o.name};n.$on("$destroy",e.onBefore(f,function(e){var n,i=e._uiCanExitIds=e._uiCanExitIds||{};return c(e)||(n=t.when(r.uiCanExit(e))).then(function(t){return i[s]=!1!==t}),n},a))}}n.module("ui.router.state").directive("uiView",Ln),n.module("ui.router.state").directive("uiView",Zn),n.module("ui.router.state").provider("$uiViewScroll",function(){var t=!1;this.useAnchorScroll=function(){t=!0},this.$get=["$anchorScroll","$timeout",function(e,r){return t?e:function(t){return r(function(){t[0].scrollIntoView()},0,!1)}}]});t.default="ui.router",t.core=mn,t.watchDigests=qn,t.getLocals=Mn,t.getNg1ViewConfigFactory=yn,t.ng1ViewsBuilder=_n,t.Ng1ViewConfig=$n,t.StateProvider=En,t.UrlRouterProvider=Pn,t.root=F,t.fromJson=L,t.toJson=M,t.forEach=B,t.extend=G,t.equals=W,t.identity=z,t.noop=J,t.createProxyFunctions=Q,t.inherit=K,t.inArray=Y,t._inArray=Z,t.removeFrom=X,t._removeFrom=tt,t.pushTo=et,t._pushTo=rt,t.deregAll=nt,t.defaults=it,t.mergeR=ot,t.ancestors=at,t.pick=ut,t.omit=st,t.pluck=ct,t.filter=ft,t.find=lt,t.mapObj=ht,t.map=pt,t.values=vt,t.allTrueR=dt,t.anyTrueR=mt,t.unnestR=yt,t.flattenR=gt,t.pushR=_t,t.uniqR=wt,t.unnest=$t,t.flatten=St,t.assertPredicate=bt,t.assertMap=Rt,t.assertFn=Et,t.pairs=Ct,t.arrayTuples=Tt,t.applyPairs=Pt,t.tail=kt,t.copy=Ot,t._extend=xt,t.silenceUncaughtInPromise=jt,t.silentRejection=At,t.notImplemented=q,t.services=N,t.Glob=w,t.curry=i,t.compose=o,t.pipe=a,t.prop=u,t.propEq=s,t.parse=c,t.not=f,t.and=l,t.or=h,t.all=p,t.any=v,t.is=d,t.eq=m,t.val=y,t.invoke=g,t.pattern=_,t.isUndefined=R,t.isDefined=E,t.isNull=C,t.isNullOrUndefined=T,t.isFunction=P,t.isNumber=k,t.isString=O,t.isObject=x,t.isArray=I,t.isDate=V,t.isRegExp=j,t.isState=A,t.isInjectable=H,t.isPromise=D,t.Queue=Ht,t.maxLength=Se,t.padString=be,t.kebobString=Re,t.functionToString=Ee,t.fnToString=Ce,t.stringify=ke,t.beforeAfterSubstr=Oe,t.hostRegex=xe,t.stripLastPathElement=Ie,t.splitHash=Ve,t.splitQuery=je,t.splitEqual=Ae,t.trimHashVal=He,t.splitOnDelim=De,t.joinNeighborsR=qe,t.Trace=Qt,t.trace=Kt,t.Param=se,t.ParamTypes=Fe,t.StateParams=Ue,t.ParamType=ie,t.PathNode=ce,t.PathUtils=fe,t.resolvePolicies=pe,t.defaultResolvePolicy=le,t.Resolvable=he,t.NATIVE_INJECTOR_TOKEN=ye,t.ResolveContext=ge,t.resolvablesBuilder=Ke,t.StateBuilder=Ye,t.StateObject=$,t.StateMatcher=Ze,t.StateQueueManager=Xe,t.StateRegistry=tr,t.StateService=Mr,t.TargetState=Yt,t.HookBuilder=ne,t.matchState=te,t.RegisteredHook=ee,t.makeEvent=re,t.Rejection=qt,t.Transition=$e,t.TransitionHook=Xt,t.TransitionEventType=qr,t.defaultTransOpts=Ur,t.TransitionService=Lr,t.UrlMatcher=nr,t.UrlMatcherFactory=ir,t.UrlRouter=sr,t.UrlRuleFactory=or,t.BaseUrlRule=ar,t.UrlService=gr,t.ViewService=fr,t.UIRouterGlobals=lr,t.UIRouter=wr,t.$q=Br,t.$injector=Jr,t.BaseLocationServices=en,t.HashLocationService=nn,t.MemoryLocationService=an,t.PushStateLocationService=sn,t.MemoryLocationConfig=cn,t.BrowserLocationConfig=fn,t.keyValsToObjectR=Qr,t.getParams=Kr,t.parseUrl=Yr,t.buildUrl=Zr,t.locationPluginFactory=Xr,t.servicesPlugin=ln,t.hashLocationPlugin=hn,t.pushStateLocationPlugin=pn,t.memoryLocationPlugin=vn,t.UIRouterPluginBase=dn,Object.defineProperty(t,"__esModule",{value:!0})}); +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("angular")):"function"==typeof define&&define.amd?define(["exports","angular"],e):e(t["@uirouter/angularjs"]={},t.angular)}(this,function(t,e){"use strict";var r=angular,n=e&&e.module?e:r;function i(t){var e=[].slice.apply(arguments,[1]),r=t.length;return function e(n){return n.length>=r?t.apply(null,n):function(){return e(n.concat([].slice.apply(arguments)))}}(e)}function o(){var t=arguments,e=t.length-1;return function(){for(var r=e,n=t[e].apply(this,arguments);r--;)n=t[r].call(this,n);return n}}function a(){for(var t=[],e=0;e=0&&t.splice(r,1),t}var et=i(rt);function rt(t,e){return t.push(e),e}var nt=function(t){return t.slice().forEach(function(e){"function"==typeof e&&e(),X(t,e)})};function it(t){for(var e=[],r=1;rthis._limit&&this.evict(),t},t.prototype.evict=function(){var t=this._items.shift();return this._evictListeners.forEach(function(e){return e(t)}),t},t.prototype.dequeue=function(){if(this.size())return this._items.splice(0,1)[0]},t.prototype.clear=function(){var t=this._items;return this._items=[],t},t.prototype.size=function(){return this._items.length},t.prototype.remove=function(t){var e=this._items.indexOf(t);return e>-1&&this._items.splice(e,1)[0]},t.prototype.peekTail=function(){return this._items[this._items.length-1]},t.prototype.peekHead=function(){if(this.size())return this._items[0]},t}();(Vt=t.RejectType||(t.RejectType={}))[Vt.SUPERSEDED=2]="SUPERSEDED",Vt[Vt.ABORTED=3]="ABORTED",Vt[Vt.INVALID=4]="INVALID",Vt[Vt.IGNORED=5]="IGNORED",Vt[Vt.ERROR=6]="ERROR";var Dt=0,qt=function(){function e(t,e,r){this.$id=Dt++,this.type=t,this.message=e,this.detail=r}return e.isRejectionPromise=function(t){return t&&"function"==typeof t.then&&d(e)(t._transitionRejection)},e.superseded=function(r,n){var i=new e(t.RejectType.SUPERSEDED,"The transition has been superseded by a different transition",r);return n&&n.redirected&&(i.redirected=!0),i},e.redirected=function(t){return e.superseded(t,{redirected:!0})},e.invalid=function(r){return new e(t.RejectType.INVALID,"This transition is invalid",r)},e.ignored=function(r){return new e(t.RejectType.IGNORED,"The transition was ignored",r)},e.aborted=function(r){return new e(t.RejectType.ABORTED,"The transition has been aborted",r)},e.errored=function(r){return new e(t.RejectType.ERROR,"The transition errored",r)},e.normalize=function(t){return d(e)(t)?t:e.errored(t)},e.prototype.toString=function(){var t,e=(t=this.detail)&&t.toString!==Object.prototype.toString?t.toString():ke(t);return"Transition Rejection($id: "+this.$id+" type: "+this.type+", message: "+this.message+", detail: "+e+")"},e.prototype.toPromise=function(){return G(At(this),{_transitionRejection:this})},e}();function Nt(t){if(!t)return"ui-view (defunct)";var e=t.creationContext?t.creationContext.name||"(root)":"(none)";return"[ui-view#"+t.id+" "+t.$type+":"+t.fqn+" ("+t.name+"@"+e+")]"}function Ft(e){return k(e)?t.Category[e]:t.Category[t.Category[e]]}var Ut,Lt=Function.prototype.bind.call(console.log,console),Mt=P(console.table)?console.table.bind(console):Lt.bind(console);(Ut=t.Category||(t.Category={}))[Ut.RESOLVE=0]="RESOLVE",Ut[Ut.TRANSITION=1]="TRANSITION",Ut[Ut.HOOK=2]="HOOK",Ut[Ut.UIVIEW=3]="UIVIEW",Ut[Ut.VIEWCONFIG=4]="VIEWCONFIG";var Bt,Gt,Wt=c("$id"),zt=c("router.$id"),Jt=function(t){return"Transition #"+Wt(t)+"-"+zt(t)},Qt=function(){function e(){this._enabled={},this.approximateDigests=0}return e.prototype._set=function(e,r){var n=this;r.length||(r=Object.keys(t.Category).map(function(t){return parseInt(t,10)}).filter(function(t){return!isNaN(t)}).map(function(e){return t.Category[e]})),r.map(Ft).forEach(function(t){return n._enabled[t]=e})},e.prototype.enable=function(){for(var t=[],e=0;e "+ke(e))},e.prototype.traceTransitionIgnored=function(e){this.enabled(t.Category.TRANSITION)&&console.log(Jt(e)+": Ignored <> "+ke(e))},e.prototype.traceHookInvocation=function(e,r,n){if(this.enabled(t.Category.HOOK)){var i=c("traceData.hookType")(n)||"internal",o=c("traceData.context.state.name")(n)||c("traceData.context")(n)||"unknown",a=Ee(e.registeredHook.callback);console.log(Jt(r)+": Hook -> "+i+" context: "+o+", "+Se(200,a))}},e.prototype.traceHookResult=function(e,r,n){this.enabled(t.Category.HOOK)&&console.log(Jt(r)+": <- Hook returned: "+Se(200,ke(e)))},e.prototype.traceResolvePath=function(e,r,n){this.enabled(t.Category.RESOLVE)&&console.log(Jt(n)+": Resolving "+e+" ("+r+")")},e.prototype.traceResolvableResolved=function(e,r){this.enabled(t.Category.RESOLVE)&&console.log(Jt(r)+": <- Resolved "+e+" to: "+Se(200,ke(e.data)))},e.prototype.traceError=function(e,r){this.enabled(t.Category.TRANSITION)&&console.log(Jt(r)+": <- Rejected "+ke(r)+", reason: "+e)},e.prototype.traceSuccess=function(e,r){this.enabled(t.Category.TRANSITION)&&console.log(Jt(r)+": <- Success "+ke(r)+", final state: "+e.name)},e.prototype.traceUIViewEvent=function(e,r,n){void 0===n&&(n=""),this.enabled(t.Category.UIVIEW)&&console.log("ui-view: "+be(30,e)+" "+Nt(r)+n)},e.prototype.traceUIViewConfigUpdated=function(e,r){this.enabled(t.Category.UIVIEW)&&this.traceUIViewEvent("Updating",e," with ViewConfig from context='"+r+"'")},e.prototype.traceUIViewFill=function(e,r){this.enabled(t.Category.UIVIEW)&&this.traceUIViewEvent("Fill",e," with: "+Se(200,r))},e.prototype.traceViewSync=function(e){if(this.enabled(t.Category.VIEWCONFIG)){var r="uiview component fqn",n=e.map(function(t){var e,n=t.uiView,i=t.viewConfig,o=n&&n.fqn,a=i&&i.viewDecl.$context.name+": ("+i.viewDecl.$name+")";return(e={})[r]=o,e["view config state (view name)"]=a,e}).sort(function(t,e){return(t[r]||"").localeCompare(e[r]||"")});Mt(n)}},e.prototype.traceViewServiceEvent=function(e,r){this.enabled(t.Category.VIEWCONFIG)&&console.log("VIEWCONFIG: "+e+" "+function(t){var e=t.viewDecl,r=e.$context.name||"(root)";return"[View#"+t.$id+" from '"+r+"' state]: target ui-view: '"+e.$uiViewName+"@"+e.$uiViewContextAnchor+"'"}(r))},e.prototype.traceViewServiceUIViewEvent=function(e,r){this.enabled(t.Category.VIEWCONFIG)&&console.log("VIEWCONFIG: "+e+" "+Nt(r))},e}(),Kt=new Qt;(Bt=t.TransitionHookPhase||(t.TransitionHookPhase={}))[Bt.CREATE=0]="CREATE",Bt[Bt.BEFORE=1]="BEFORE",Bt[Bt.RUN=2]="RUN",Bt[Bt.SUCCESS=3]="SUCCESS",Bt[Bt.ERROR=4]="ERROR",(Gt=t.TransitionHookScope||(t.TransitionHookScope={}))[Gt.TRANSITION=0]="TRANSITION",Gt[Gt.STATE=1]="STATE";var Yt=function(){function t(t,e,r,n){this._stateRegistry=t,this._identifier=e,this._identifier=e,this._params=G({},r||{}),this._options=G({},n||{}),this._definition=t.matcher.find(e,this._options.relative)}return t.prototype.name=function(){return this._definition&&this._definition.name||this._identifier},t.prototype.identifier=function(){return this._identifier},t.prototype.params=function(){return this._params},t.prototype.$state=function(){return this._definition},t.prototype.state=function(){return this._definition&&this._definition.self},t.prototype.options=function(){return this._options},t.prototype.exists=function(){return!(!this._definition||!this._definition.self)},t.prototype.valid=function(){return!this.error()},t.prototype.error=function(){var t=this.options().relative;if(!this._definition&&t){var e=t.name?t.name:t;return"Could not resolve '"+this.name()+"' from state '"+e+"'"}return this._definition?this._definition.self?void 0:"State '"+this.name()+"' has an invalid definition":"No such state '"+this.name()+"'"},t.prototype.toString=function(){return"'"+this.name()+"'"+ke(this.params())},t.prototype.withState=function(e){return new t(this._stateRegistry,e,this._params,this._options)},t.prototype.withParams=function(e,r){void 0===r&&(r=!1);var n=r?e:G({},this._params,e);return new t(this._stateRegistry,this._identifier,n,this._options)},t.prototype.withOptions=function(e,r){void 0===r&&(r=!1);var n=r?e:G({},this._options,e);return new t(this._stateRegistry,this._identifier,this._params,n)},t.isDef=function(t){return t&&t.state&&(O(t.state)||O(t.state.name))},t}(),Zt={current:J,transition:null,traceData:{},bind:null},Xt=function(){function e(e,r,n,i){var o=this;this.transition=e,this.stateContext=r,this.registeredHook=n,this.options=i,this.isSuperseded=function(){return o.type.hookPhase===t.TransitionHookPhase.RUN&&!o.options.transition.isActive()},this.options=it(i,Zt),this.type=n.eventType}return e.chain=function(t,e){return t.reduce(function(t,e){return t.then(function(){return e.invokeHook()})},e||N.$q.when())},e.invokeHooks=function(t,r){for(var n=0;n=e.invokeLimit&&e.deregister()}}},e.prototype.handleHookResult=function(t){var e=this,r=this.getNotCurrentRejection();return r||(D(t)?t.then(function(t){return e.handleHookResult(t)}):(Kt.traceHookResult(t,this.transition,this.options),!1===t?qt.aborted("Hook aborted transition").toPromise():d(Yt)(t)?qt.redirected(t).toPromise():void 0))},e.prototype.getNotCurrentRejection=function(){var t=this.transition.router;return t._disposed?qt.aborted("UIRouter instance #"+t.$id+" has been stopped (disposed)").toPromise():this.transition._aborted?qt.aborted().toPromise():this.isSuperseded()?qt.superseded(this.options.current()).toPromise():void 0},e.prototype.toString=function(){var t=this.options,e=this.registeredHook;return(c("traceData.hookType")(t)||"internal")+" context: "+(c("traceData.context.state.name")(t)||c("traceData.context")(t)||"unknown")+", "+Se(200,Ce(e.callback))},e.HANDLE_RESULT=function(t){return function(e){return t.handleHookResult(e)}},e.LOG_REJECTED_RESULT=function(t){return function(e){D(e)&&e.catch(function(e){return t.logError(qt.normalize(e))})}},e.LOG_ERROR=function(t){return function(e){return t.logError(e)}},e.REJECT_ERROR=function(t){return function(t){return At(t)}},e.THROW_ERROR=function(t){return function(t){throw t}},e}();function te(t,e){var r=O(e)?[e]:e;return!!(P(r)?r:function(t){for(var e=r,n=0;n20)throw new Error("Too many consecutive Transition redirects (20+)");var n={redirectedFrom:this,source:"redirect"};"url"===this.options().source&&!1!==t.options().location&&(n.location="replace");var i=G({},this.options(),t.options(),n);t=t.withOptions(i,!0);var o,a=this.router.transitionService.create(this._treeChanges.from,t),u=this._treeChanges.entering,s=a._treeChanges.entering;return fe.matching(s,u,fe.nonDynamicParams).filter(f((o=t.options().reloadState,function(t){return o&&t.state.includes[o.name]}))).forEach(function(t,e){t.resolvables=u[e].resolvables}),a},e.prototype._changedParams=function(){var t=this._treeChanges;if(!this._options.reload&&(!t.exiting.length&&!t.entering.length&&t.to.length===t.from.length&&!Tt(t.to,t.from).map(function(t){return t[0].state!==t[1].state}).reduce(mt,!1))){var e=t.to.map(function(t){return t.paramSchema}),r=[t.to,t.from].map(function(t){return t.map(function(t){return t.paramValues})});return Tt(e,r[0],r[1]).map(function(t){var e=t[0],r=t[1],n=t[2];return se.changed(e,r,n)}).reduce(yt,[])}},e.prototype.dynamic=function(){var t=this._changedParams();return!!t&&t.map(function(t){return t.dynamic}).reduce(mt,!1)},e.prototype.ignored=function(){return!!this._ignoredReason()},e.prototype._ignoredReason=function(){var t=this.router.globals.transition,e=this._options.reloadState,r=function(t,r){if(t.length!==r.length)return!1;var n=fe.matching(t,r);return t.length===n.filter(function(t){return!e||!t.state.includes[e.name]}).length},n=this.treeChanges(),i=t&&t.treeChanges();return i&&r(i.to,n.to)&&r(i.exiting,n.exiting)?"SameAsPending":0===n.exiting.length&&0===n.entering.length&&r(n.from,n.to)?"SameAsCurrent":void 0},e.prototype.run=function(){var e=this,r=Xt.runAllHooks,n=function(t){return e._hookBuilder.buildHooksForPhase(t)},i=n(t.TransitionHookPhase.BEFORE);return Xt.invokeHooks(i,function(){var t=e.router.globals;return t.lastStartedTransitionId=e.$id,t.transition=e,t.transitionHistory.enqueue(e),Kt.traceTransitionStart(e),N.$q.when(void 0)}).then(function(){var e=n(t.TransitionHookPhase.RUN);return Xt.invokeHooks(e,function(){return N.$q.when(void 0)})}).then(function(){Kt.traceSuccess(e.$to(),e),e.success=!0,e._deferred.resolve(e.to()),r(n(t.TransitionHookPhase.SUCCESS))},function(i){Kt.traceError(i,e),e.success=!1,e._deferred.reject(i),e._error=i,r(n(t.TransitionHookPhase.ERROR))}),this.promise},e.prototype.valid=function(){return!this.error()||void 0!==this.success},e.prototype.abort=function(){R(this.success)&&(this._aborted=!0)},e.prototype.error=function(){var t=this.$to();if(t.self.abstract)return"Cannot transition to abstract state '"+t.name+"'";var e=t.parameters(),r=this.params(),n=e.filter(function(t){return!t.validates(r[t.id])});return n.length?"Param values not valid for state '"+t.name+"'. Invalid params: [ "+n.map(function(t){return t.id}).join(", ")+" ]":!1===this.success?this._error:void 0},e.prototype.toString=function(){var t=this.from(),e=this.to(),r=function(t){return null!==t["#"]&&void 0!==t["#"]?t:st(t,["#"])};return"Transition#"+this.$id+"( '"+(x(t)?t.name:t)+"'"+ke(r(this._treeChanges.from.map(u("paramValues")).reduce(ot,{})))+" -> "+(this.valid()?"":"(X) ")+"'"+(x(e)?e.name:e)+"'"+ke(r(this.params()))+" )"},e.diToken=e,e}();function Se(t,e){return e.length<=t?e:e.substr(0,t-3)+"..."}function be(t,e){for(;e.length=0||(a.push(n[s]),o[n[s]]=this[n[s]]);return G({},o,t)},t}();function Le(t){return t.name}function Me(t){return t.self.$$state=function(){return t},t.self}function Be(t){return t.parent&&t.parent.data&&(t.data=t.self.data=K(t.parent.data,t.data)),t.data}var Ge=function(t,e){return function(r){var n=r;n&&n.url&&n.name&&n.name.match(/\.\*\*$/)&&(n.url+="{remainder:any}");var i=function(t){if(!O(t))return!1;var e="^"===t.charAt(0);return{val:e?t.substring(1):t,root:e}}(n.url),o=r.parent,a=i?t.compile(i.val,{params:r.params||{},paramMap:function(t,e){return!1===n.reloadOnSearch&&e&&(t=G(t||{},{dynamic:!0})),t}}):n.url;if(!a)return null;if(!t.isMatcher(a))throw new Error("Invalid url '"+a+"' in state '"+r+"'");return i&&i.root?a:(o&&o.navigable||e()).url.append(a)}},We=function(t){return function(e){return!t(e)&&e.url?e:e.parent?e.parent.navigable:null}},ze=function(t){return function(e){var r=e.url&&e.url.parameters({inherit:!1})||[],n=vt(ht(st(e.params||{},r.map(u("id"))),function(e,r){return t.fromConfig(r,null,e)}));return r.concat(n).map(function(t){return[t.id,t]}).reduce(Pt,{})}};function Je(t){return t.parent?t.parent.path.concat(t):[t]}function Qe(t){var e=t.parent?G({},t.parent.includes):{};return e[t.name]=!0,e}function Ke(t){var e,r,n=function(t){return t.provide||t.token},i=_([[u("resolveFn"),function(t){return new he(n(t),t.resolveFn,t.deps,t.policy)}],[u("useFactory"),function(t){return new he(n(t),t.useFactory,t.deps||t.dependencies,t.policy)}],[u("useClass"),function(t){return new he(n(t),function(){return new t.useClass},[],t.policy)}],[u("useValue"),function(t){return new he(n(t),function(){return t.useValue},[],t.policy,t.useValue)}],[u("useExisting"),function(t){return new he(n(t),z,[t.useExisting],t.policy)}]]),o=_([[a(u("val"),O),function(t){return new he(t.token,z,[t.val],t.policy)}],[a(u("val"),I),function(t){return new he(t.token,kt(t.val),t.val.slice(0,-1),t.policy)}],[a(u("val"),P),function(t){return new he(t.token,t.val,(e=t.val,r=N.$injector,e.$inject||r&&r.annotate(e,r.strictDi)||"deferred"),t.policy);var e,r}]]),s=_([[d(he),function(t){return t}],[function(t){return!(!t.token||!t.resolveFn)},i],[function(t){return!(!t.provide&&!t.token||!(t.useValue||t.useFactory||t.useExisting||t.useClass))},i],[function(t){return!!(t&&t.val&&(O(t.val)||I(t.val)||P(t.val)))},o],[y(!0),function(t){throw new Error("Invalid resolve value: "+ke(t))}]]),c=t.resolve;return(I(c)?c:(e=c,r=t.resolvePolicy||{},Object.keys(e||{}).map(function(t){return{token:t,val:e[t],deps:void 0,policy:r[t]}}))).map(s)}var Ye=function(){function t(t,e){this.matcher=t;var r=this,n=function(){return t.find("")},i=function(t){return""===t.name};this.builders={name:[Le],self:[Me],parent:[function(e){return i(e)?null:t.find(r.parentName(e))||n()}],data:[Be],url:[Ge(e,n)],navigable:[We(i)],params:[ze(e.paramFactory)],views:[],path:[Je],includes:[Qe],resolvables:[Ke]}}return t.prototype.builder=function(t,e){var r=this.builders,n=r[t]||[];return O(t)&&!E(e)?n.length>1?n:n[0]:O(t)&&P(e)?(r[t]=n,r[t].push(e),function(){return r[t].splice(r[t].indexOf(e,1))&&null}):void 0},t.prototype.build=function(t){var e=this.matcher,r=this.builders,n=this.parentName(t);if(n&&!e.find(n,void 0,!1))return null;for(var i in r)if(r.hasOwnProperty(i)){var o=r[i].reduce(function(t,e){return function(r){return e(r,t)}},J);t[i]=o(t)}return t},t.prototype.parentName=function(t){var e=t.name||"",r=e.split(".");if("**"===r.pop()&&r.pop(),r.length){if(t.parent)throw new Error("States that specify the 'parent:' property should not have a '.' in their name ("+e+")");return r.join(".")}return t.parent?O(t.parent)?t.parent:t.parent.name:""},t.prototype.name=function(t){var e=t.name;if(-1!==e.indexOf(".")||!t.parent)return e;var r=O(t.parent)?t.parent:t.parent.name;return r?r+"."+e:e},t}(),Ze=function(){function t(t){this._states=t}return t.prototype.isRelative=function(t){return 0===(t=t||"").indexOf(".")||0===t.indexOf("^")},t.prototype.find=function(t,e,r){if(void 0===r&&(r=!0),t||""===t){var n=O(t),i=n?t:t.name;this.isRelative(i)&&(i=this.resolvePath(i,e));var o=this._states[i];if(o&&(n||!(n||o!==t&&o.self!==t)))return o;if(n&&r){var a=vt(this._states).filter(function(t){return t.__stateObjectCache.nameGlob&&t.__stateObjectCache.nameGlob.matches(i)});return a.length>1&&console.log("stateMatcher.find: Found multiple matches for "+i+" using glob: ",a.map(function(t){return t.name})),a[0]}}},t.prototype.resolvePath=function(t,e){if(!e)throw new Error("No reference point given for path '"+t+"'");for(var r=this.find(e),n=t.split("."),i=n.length,o=0,a=r;o0;){var s=e.shift(),c=s.name,f=n.build(s),l=o.indexOf(s);if(f){var h=u(c);if(h&&h.name===c)throw new Error("State '"+c+"' is already defined");var p=u(c+".**");p&&this.$registry.deregister(p),r[c]=s,this.attachRoute(s),l>=0&&o.splice(l,1),i.push(s)}else{var v=a[c];if(a[c]=e.length,l>=0&&v===e.length)return e.push(s),r;l<0&&o.push(s),e.push(s)}}return i.length&&this.listeners.forEach(function(t){return t("registered",i.map(function(t){return t.self}))}),r},t.prototype.attachRoute=function(t){!t.abstract&&t.url&&this.$urlRouter.rule(this.$urlRouter.urlRuleFactory.create(t))},t}(),tr=function(){function t(t){this._router=t,this.states={},this.listeners=[],this.matcher=new Ze(this.states),this.builder=new Ye(this.matcher,t.urlMatcherFactory),this.stateQueue=new Xe(this,t.urlRouter,this.states,this.builder,this.listeners),this._registerRoot()}return t.prototype._registerRoot=function(){(this._root=this.stateQueue.register({name:"",url:"^",views:null,params:{"#":{value:null,type:"hash",dynamic:!0}},abstract:!0})).navigable=null},t.prototype.dispose=function(){var t=this;this.stateQueue.dispose(),this.listeners=[],this.get().forEach(function(e){return t.get(e)&&t.deregister(e)})},t.prototype.onStatesChanged=function(t){return this.listeners.push(t),function(){X(this.listeners)(t)}.bind(this)},t.prototype.root=function(){return this._root},t.prototype.register=function(t){return this.stateQueue.register(t)},t.prototype._deregisterTree=function(t){var e=this,r=this.get().map(function(t){return t.$$state()}),n=function(t){var e=r.filter(function(e){return-1!==t.indexOf(e.parent)});return 0===e.length?e:e.concat(n(e))},i=n([t]),o=[t].concat(i).reverse();return o.forEach(function(t){var r=e._router.urlRouter;r.rules().filter(s("state",t)).forEach(r.removeRule.bind(r)),delete e.states[t.name]}),o},t.prototype.deregister=function(t){var e=this.get(t);if(!e)throw new Error("Can't deregister state; not found: "+t);var r=this._deregisterTree(e.$$state());return this.listeners.forEach(function(t){return t("deregistered",r.map(function(t){return t.self}))}),r},t.prototype.get=function(t,e){var r=this;if(0===arguments.length)return Object.keys(this.states).map(function(t){return r.states[t].self});var n=this.matcher.find(t,e);return n&&n.self||null},t.prototype.decorator=function(t,e){return this.builder.builder(t,e)},t}();function er(t,e){var r=["",""],n=t.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!e)return n;switch(e.squash){case!1:r=["(",")"+(e.isOptional?"?":"")];break;case!0:n=n.replace(/\/$/,""),r=["(?:/(",")|/)?"];break;default:r=["("+e.squash+"|",")?"]}return n+r[0]+e.type.pattern.source+r[1]}var rr=De("/"),nr=function(){function e(t,r,n,i){var o=this;this.config=i,this._cache={path:[this]},this._children=[],this._params=[],this._segments=[],this._compiled=[],this.pattern=t,this.config=it(this.config,{params:{},strict:!0,caseInsensitive:!1,paramMap:z});for(var a,u,c,f=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,l=/([:]?)([\w\[\].-]+)|\{([\w\[\].-]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,h=[],p=0,v=function(r){if(!e.nameValidator.test(r))throw new Error("Invalid parameter name '"+r+"' in pattern '"+t+"'");if(lt(o._params,s("id",r)))throw new Error("Duplicate parameter name '"+r+"' in pattern '"+t+"'")},d=function(e,n){var i,a=e[2]||e[3],u=n?e[4]:e[4]||("*"===e[1]?"[\\s\\S]*":null);return{id:a,regexp:u,cfg:o.config.params[a],segment:t.substring(p,e.index),type:u?r.type(u)||(i=u,K(r.type(n?"query":"path"),{pattern:new RegExp(i,o.config.caseInsensitive?"i":void 0)})):null}};(a=f.exec(t))&&!((u=d(a,!1)).segment.indexOf("?")>=0);)v(u.id),this._params.push(n.fromPath(u.id,u.type,this.config.paramMap(u.cfg,!1))),this._segments.push(u.segment),h.push([u.segment,kt(this._params)]),p=f.lastIndex;var m=(c=t.substring(p)).indexOf("?");if(m>=0){var y=c.substring(m);if(c=c.substring(0,m),y.length>0)for(p=0;a=l.exec(y);)v((u=d(a,!0)).id),this._params.push(n.fromSearch(u.id,u.type,this.config.paramMap(u.cfg,!0))),p=f.lastIndex}this._segments.push(c),this._compiled=h.map(function(t){return er.apply(null,t)}).concat(er(c))}return e.encodeDashes=function(t){return encodeURIComponent(t).replace(/-/g,function(t){return"%5C%"+t.charCodeAt(0).toString(16).toUpperCase()})},e.pathSegmentsAndParams=function(e){return Tt(e._segments,e._params.filter(function(e){return e.location===t.DefType.PATH}).concat(void 0)).reduce(yt,[]).filter(function(t){return""!==t&&E(t)})},e.queryParams=function(e){return e._params.filter(function(e){return e.location===t.DefType.SEARCH})},e.compare=function(t,r){var n=function(t){return t._cache.weights=t._cache.weights||function(t){return t._cache.segments=t._cache.segments||t._cache.path.map(e.pathSegmentsAndParams).reduce(yt,[]).reduce(qe,[]).map(function(t){return O(t)?rr(t):t}).reduce(yt,[])}(t).map(function(t){return"/"===t?1:O(t)?2:t instanceof se?3:void 0})},i=n(t),o=n(r);!function(t,e,r){for(var n=Math.max(t.length,e.length);t.lengthn.weight?u:n}return n},t.prototype.sync=function(t){if(!t||!t.defaultPrevented){var e=this._router,r=e.urlService,n=e.stateService,i={path:r.path(),search:r.search(),hash:r.hash()},o=this.match(i);_([[O,function(t){return r.url(t,!0)}],[Yt.isDef,function(t){return n.go(t.state,t.params,t.options)}],[d(Yt),function(t){return n.go(t.state(),t.params(),t.options())}]])(o&&o.rule.handler(o.match,i,e))}},t.prototype.listen=function(t){var e=this;if(!1!==t)return this._stopFn=this._stopFn||this._router.urlService.onChange(function(t){return e.sync(t)});this._stopFn&&this._stopFn(),delete this._stopFn},t.prototype.update=function(t){var e=this._router.locationService;t?this.location=e.url():e.url()!==this.location&&e.url(this.location,!0)},t.prototype.push=function(t,e,r){var n=r&&!!r.replace;this._router.urlService.url(t.format(e||{}),n)},t.prototype.href=function(t,e,r){var n=t.format(e);if(null==n)return null;r=r||{absolute:!1};var i=this._router.urlService.config,o=i.html5Mode();if(o||null===n||(n="#"+i.hashPrefix()+n),n=function(t,e,r,n){return"/"===n?t:e?Ie(n)+t:r?n.slice(1)+t:t}(n,o,r.absolute,i.baseHref()),!r.absolute||!n)return n;var a=!o&&n?"/":"",u=i.port(),s=80===u||443===u?"":":"+u;return[i.protocol(),"://",i.host(),s,a,n].join("")},t.prototype.rule=function(t){var e=this;if(!or.isUrlRule(t))throw new Error("invalid rule");return t.$id=this._id++,t.priority=t.priority||0,this._rules.push(t),this._sorted=!1,function(){return e.removeRule(t)}},t.prototype.removeRule=function(t){X(this._rules,t)},t.prototype.rules=function(){return this.ensureSorted(),this._rules.slice()},t.prototype.otherwise=function(t){var e=cr(t);this._otherwiseFn=this.urlRuleFactory.create(y(!0),e),this._sorted=!1},t.prototype.initial=function(t){var e=cr(t);this.rule(this.urlRuleFactory.create(function(t,e){return 0===e.globals.transitionHistory.size()&&!!/^\/?$/.exec(t.path)},e))},t.prototype.when=function(t,e,r){var n=this.urlRuleFactory.create(t,e);return E(r&&r.priority)&&(n.priority=r.priority),this.rule(n),n},t.prototype.deferIntercept=function(t){void 0===t&&(t=!0),this.interceptDeferred=t},t}();function cr(t){if(!(P(t)||O(t)||d(Yt)(t)||Yt.isDef(t)))throw new Error("'handler' must be a string, function, TargetState, or have a state: 'newtarget' property");return P(t)?t:y(t)}var fr=function(){function t(){var t=this;this._uiViews=[],this._viewConfigs=[],this._viewConfigFactories={},this._listeners=[],this._pluginapi={_rootViewContext:this._rootViewContext.bind(this),_viewConfigFactory:this._viewConfigFactory.bind(this),_registeredUIViews:function(){return t._uiViews},_activeViewConfigs:function(){return t._viewConfigs},_onSync:function(e){return t._listeners.push(e),function(){return X(t._listeners,e)}}}}return t.normalizeUIViewTarget=function(t,e){void 0===e&&(e="");var r=e.split("@"),n=r[0]||"$default",i=O(r[1])?r[1]:"^",o=/^(\^(?:\.\^)*)\.(.*$)/.exec(n);o&&(i=o[1],n=o[2]),"!"===n.charAt(0)&&(n=n.substr(1),i="");/^(\^(?:\.\^)*)$/.exec(i)?i=i.split(".").reduce(function(t,e){return t.parent},t).name:"."===i&&(i=t.name);return{uiViewName:n,uiViewContextAnchor:i}},t.prototype._rootViewContext=function(t){return this._rootContext=t||this._rootContext},t.prototype._viewConfigFactory=function(t,e){this._viewConfigFactories[t]=e},t.prototype.createViewConfig=function(t,e){var r=this._viewConfigFactories[e.$type];if(!r)throw new Error("ViewService: No view config factory registered for type "+e.$type);var n=r(t,e);return I(n)?n:[n]},t.prototype.deactivateViewConfig=function(t){Kt.traceViewServiceEvent("<- Removing",t),X(this._viewConfigs,t)},t.prototype.activateViewConfig=function(t){Kt.traceViewServiceEvent("-> Registering",t),this._viewConfigs.push(t)},t.prototype.sync=function(){var e=this,r=this._uiViews.map(function(t){return[t.fqn,t]}).reduce(Pt,{});function n(t){for(var e=t.viewDecl.$context,r=0;++r&&e.parent;)e=e.parent;return r}var o=i(function(t,e,r,n){return e*(t(r)-t(n))}),a=this._uiViews.sort(o(function(t){var e=function(t){return t&&t.parent?e(t.parent)+1:1};return 1e4*t.fqn.split(".").length+e(t.creationContext)},1)).map(function(i){var a=e._viewConfigs.filter(t.matches(r,i));return a.length>1&&a.sort(o(n,-1)),{uiView:i,viewConfig:a[0]}}),u=a.map(function(t){return t.viewConfig}),s=this._viewConfigs.filter(function(t){return!Y(u,t)}).map(function(t){return{uiView:void 0,viewConfig:t}});a.forEach(function(t){-1!==e._uiViews.indexOf(t.uiView)&&t.uiView.configUpdated(t.viewConfig)});var c=a.concat(s);this._listeners.forEach(function(t){return t(c)}),Kt.traceViewSync(c)},t.prototype.registerUIView=function(t){Kt.traceViewServiceUIViewEvent("-> Registering",t);var e=this._uiViews;return e.filter(function(e){return e.fqn===t.fqn&&e.$type===t.$type}).length&&Kt.traceViewServiceUIViewEvent("!!!! duplicate uiView named:",t),e.push(t),this.sync(),function(){-1!==e.indexOf(t)?(Kt.traceViewServiceUIViewEvent("<- Deregistering",t),X(e)(t)):Kt.traceViewServiceUIViewEvent("Tried removing non-registered uiView",t)}},t.prototype.available=function(){return this._uiViews.map(u("fqn"))},t.prototype.active=function(){return this._uiViews.filter(u("$config")).map(u("name"))},t.matches=function(t,e){return function(r){if(e.$type!==r.viewDecl.$type)return!1;var n=r.viewDecl,i=n.$uiViewName.split("."),o=e.fqn.split(".");if(!W(i,o.slice(0-i.length)))return!1;var a=1-i.length||void 0,u=o.slice(0,a).join("."),s=t[u].creationContext;return n.$uiViewContextAnchor===(s&&s.name)}},t}(),lr=function(){function t(){this.params=new Ue,this.lastStartedTransitionId=-1,this.transitionHistory=new Ht([],1),this.successfulTransitions=new Ht([],1)}return t.prototype.dispose=function(){this.transitionHistory.clear(),this.successfulTransitions.clear(),this.transition=null},t}(),hr=function(t){return t.reduce(function(t,e){return t[e]=q(e),t},{dispose:J})},pr=["url","path","search","hash","onChange"],vr=["port","protocol","host","baseHref","html5Mode","hashPrefix"],dr=["type","caseInsensitive","strictMode","defaultSquashPolicy"],mr=["sort","when","initial","otherwise","rules","rule","removeRule"],yr=["deferIntercept","listen","sync","match"],gr=function(){function t(t,e){void 0===e&&(e=!0),this.router=t,this.rules={},this.config={};var r=function(){return t.locationService};Q(r,this,r,pr,e);var n=function(){return t.locationConfig};Q(n,this.config,n,vr,e);var i=function(){return t.urlMatcherFactory};Q(i,this.config,i,dr);var o=function(){return t.urlRouter};Q(o,this.rules,o,mr),Q(o,this,o,yr)}return t.prototype.url=function(t,e,r){},t.prototype.path=function(){},t.prototype.search=function(){},t.prototype.hash=function(){},t.prototype.onChange=function(t){},t.prototype.parts=function(){return{path:this.path(),search:this.search(),hash:this.hash()}},t.prototype.dispose=function(){},t.prototype.sync=function(t){},t.prototype.listen=function(t){},t.prototype.deferIntercept=function(t){},t.prototype.match=function(t){},t.locationServiceStub=hr(pr),t.locationConfigStub=hr(vr),t}(),_r=0,wr=function(){function t(t,e){void 0===t&&(t=gr.locationServiceStub),void 0===e&&(e=gr.locationConfigStub),this.locationService=t,this.locationConfig=e,this.$id=_r++,this._disposed=!1,this._disposables=[],this.trace=Kt,this.viewService=new fr,this.globals=new lr,this.transitionService=new Lr(this),this.urlMatcherFactory=new ir,this.urlRouter=new sr(this),this.stateRegistry=new tr(this),this.stateService=new Mr(this),this.urlService=new gr(this),this._plugins={},this.viewService._pluginapi._rootViewContext(this.stateRegistry.root()),this.globals.$current=this.stateRegistry.root(),this.globals.current=this.globals.$current.self,this.disposable(this.globals),this.disposable(this.stateService),this.disposable(this.stateRegistry),this.disposable(this.transitionService),this.disposable(this.urlRouter),this.disposable(t),this.disposable(e)}return t.prototype.disposable=function(t){this._disposables.push(t)},t.prototype.dispose=function(t){var e=this;t&&P(t.dispose)?t.dispose(this):(this._disposed=!0,this._disposables.slice().forEach(function(t){try{"function"==typeof t.dispose&&t.dispose(e),X(e._disposables,t)}catch(t){}}))},t.prototype.plugin=function(t,e){void 0===e&&(e={});var r=new t(this,e);if(!r.name)throw new Error("Required property `name` missing on plugin: "+r);return this._disposables.push(r),this._plugins[r.name]=r},t.prototype.getPlugin=function(t){return t?this._plugins[t]:vt(this._plugins)},t}();function $r(t){t.addResolvable(he.fromData(wr,t.router),""),t.addResolvable(he.fromData($e,t),""),t.addResolvable(he.fromData("$transition$",t),""),t.addResolvable(he.fromData("$stateParams",t.params()),""),t.entering().forEach(function(e){t.addResolvable(he.fromData("$state$",e),e)})}var Sr=Y(["$transition$",$e]),br=function(t){var e=function(t){return Sr(t.token)?he.fromData(t.token,null):t};vt(t.treeChanges()).reduce(yt,[]).reduce(wt,[]).forEach(function(t){t.resolvables=t.resolvables.map(e)})},Rr=function(t){var e=t.to().redirectTo;if(e){var r=t.router.stateService;return P(e)?N.$q.when(e(t)).then(n):n(e)}function n(e){if(e)return e instanceof Yt?e:O(e)?r.target(e,t.params(),t.options()):e.state||e.params?r.target(e.state||t.to(),e.params||t.params(),t.options()):void 0}};function Er(t){return function(e,r){return(0,r.$$state()[t])(e,r)}}var Cr=Er("onExit"),Tr=Er("onRetain"),Pr=Er("onEnter"),kr=function(t){return new ge(t.treeChanges().to).resolvePath("EAGER",t).then(J)},Or=function(t,e){return new ge(t.treeChanges().to).subContext(e.$$state()).resolvePath("LAZY",t).then(J)},xr=function(t){return new ge(t.treeChanges().to).resolvePath("LAZY",t).then(J)},Ir=function(t){var e=N.$q,r=t.views("entering");if(r.length)return e.all(r.map(function(t){return e.when(t.load())})).then(J)},Vr=function(t){var e=t.views("entering"),r=t.views("exiting");if(e.length||r.length){var n=t.router.viewService;r.forEach(function(t){return n.deactivateViewConfig(t)}),e.forEach(function(t){return n.activateViewConfig(t)}),n.sync()}},jr=function(t){var e=t.router.globals,r=function(){e.transition===t&&(e.transition=null)};t.onSuccess({},function(){e.successfulTransitions.enqueue(t),e.$current=t.$to(),e.current=e.$current.self,Ot(t.params(),e.params)},{priority:1e4}),t.promise.then(r,r)},Ar=function(t){var e=t.options(),r=t.router.stateService,n=t.router.urlRouter;if("url"!==e.source&&e.location&&r.$current.navigable){var i={replace:"replace"===e.location};n.push(r.$current.navigable.url,r.params,i)}n.update(!0)},Hr=function(t){var e=t.router;var r=t.entering().filter(function(t){return!!t.$$state().lazyLoad}).map(function(e){return Dr(t,e)});return N.$q.all(r).then(function(){if("url"!==t.originalTransition().options().source){var r=t.targetState();return e.stateService.target(r.identifier(),r.params(),r.options())}var n=e.urlService,i=n.match(n.parts()),o=i&&i.rule;if(o&&"STATE"===o.type){var a=o.state,u=i.match;return e.stateService.target(a,u,t.options())}e.urlService.sync()})};function Dr(t,e){var r=e.$$state().lazyLoad,n=r._promise;if(!n){n=r._promise=N.$q.when(r(t,e)).then(function(e){e&&Array.isArray(e.states)&&e.states.forEach(function(e){return t.router.stateRegistry.register(e)});return e}).then(function(t){return delete e.lazyLoad,delete e.$$state().lazyLoad,delete r._promise,t},function(t){return delete r._promise,N.$q.reject(t)})}return n}var qr=function(){return function(t,e,r,n,i,o,a,u){void 0===i&&(i=!1),void 0===o&&(o=Xt.HANDLE_RESULT),void 0===a&&(a=Xt.REJECT_ERROR),void 0===u&&(u=!1),this.name=t,this.hookPhase=e,this.hookOrder=r,this.criteriaMatchPath=n,this.reverseSort=i,this.getResultHandler=o,this.getErrorHandler=a,this.synchronous=u}}();function Nr(t){var e=t._ignoredReason();if(e){Kt.traceTransitionIgnored(t);var r=t.router.globals.transition;return"SameAsCurrent"===e&&r&&r.abort(),qt.ignored().toPromise()}}function Fr(t){if(!t.valid())throw new Error(t.error())}var Ur={location:!0,relative:null,inherit:!1,notify:!0,reload:!1,custom:{},current:function(){return null},source:"unknown"},Lr=function(){function e(t){this._transitionCount=0,this._eventTypes=[],this._registeredHooks={},this._criteriaPaths={},this._router=t,this.$view=t.viewService,this._deregisterHookFns={},this._pluginapi=Q(y(this),{},y(this),["_definePathType","_defineEvent","_getPathTypes","_getEvents","getHooks"]),this._defineCorePaths(),this._defineCoreEvents(),this._registerCoreTransitionHooks(),t.globals.successfulTransitions.onEvict(br)}return e.prototype.onCreate=function(t,e,r){},e.prototype.onBefore=function(t,e,r){},e.prototype.onStart=function(t,e,r){},e.prototype.onExit=function(t,e,r){},e.prototype.onRetain=function(t,e,r){},e.prototype.onEnter=function(t,e,r){},e.prototype.onFinish=function(t,e,r){},e.prototype.onSuccess=function(t,e,r){},e.prototype.onError=function(t,e,r){},e.prototype.dispose=function(t){vt(this._registeredHooks).forEach(function(t){return t.forEach(function(e){e._deregistered=!0,X(t,e)})})},e.prototype.create=function(t,e){return new $e(t,e,this._router)},e.prototype._defineCoreEvents=function(){var e=t.TransitionHookPhase,r=Xt,n=this._criteriaPaths;this._defineEvent("onCreate",e.CREATE,0,n.to,!1,r.LOG_REJECTED_RESULT,r.THROW_ERROR,!0),this._defineEvent("onBefore",e.BEFORE,0,n.to),this._defineEvent("onStart",e.RUN,0,n.to),this._defineEvent("onExit",e.RUN,100,n.exiting,!0),this._defineEvent("onRetain",e.RUN,200,n.retained),this._defineEvent("onEnter",e.RUN,300,n.entering),this._defineEvent("onFinish",e.RUN,400,n.to),this._defineEvent("onSuccess",e.SUCCESS,0,n.to,!1,r.LOG_REJECTED_RESULT,r.LOG_ERROR,!0),this._defineEvent("onError",e.ERROR,0,n.to,!1,r.LOG_REJECTED_RESULT,r.LOG_ERROR,!0)},e.prototype._defineCorePaths=function(){var e=t.TransitionHookScope.STATE,r=t.TransitionHookScope.TRANSITION;this._definePathType("to",r),this._definePathType("from",r),this._definePathType("exiting",e),this._definePathType("retained",e),this._definePathType("entering",e)},e.prototype._defineEvent=function(t,e,r,n,i,o,a,u){void 0===i&&(i=!1),void 0===o&&(o=Xt.HANDLE_RESULT),void 0===a&&(a=Xt.REJECT_ERROR),void 0===u&&(u=!1);var s=new qr(t,e,r,n,i,o,a,u);this._eventTypes.push(s),re(this,this,s)},e.prototype._getEvents=function(t){return(E(t)?this._eventTypes.filter(function(e){return e.hookPhase===t}):this._eventTypes.slice()).sort(function(t,e){var r=t.hookPhase-e.hookPhase;return 0===r?t.hookOrder-e.hookOrder:r})},e.prototype._definePathType=function(t,e){this._criteriaPaths[t]={name:t,scope:e}},e.prototype._getPathTypes=function(){return this._criteriaPaths},e.prototype.getHooks=function(t){return this._registeredHooks[t]},e.prototype._registerCoreTransitionHooks=function(){var t=this._deregisterHookFns;t.addCoreResolves=this.onCreate({},$r),t.ignored=function(t){return t.onBefore({},Nr,{priority:-9999})}(this),t.invalid=function(t){return t.onBefore({},Fr,{priority:-1e4})}(this),t.redirectTo=function(t){return t.onStart({to:function(t){return!!t.redirectTo}},Rr)}(this),t.onExit=function(t){return t.onExit({exiting:function(t){return!!t.onExit}},Cr)}(this),t.onRetain=function(t){return t.onRetain({retained:function(t){return!!t.onRetain}},Tr)}(this),t.onEnter=function(t){return t.onEnter({entering:function(t){return!!t.onEnter}},Pr)}(this),t.eagerResolve=function(t){return t.onStart({},kr,{priority:1e3})}(this),t.lazyResolve=function(t){return t.onEnter({entering:y(!0)},Or,{priority:1e3})}(this),t.resolveAll=function(t){return t.onFinish({},xr,{priority:1e3})}(this),t.loadViews=function(t){return t.onFinish({},Ir)}(this),t.activateViews=function(t){return t.onSuccess({},Vr)}(this),t.updateGlobals=function(t){return t.onCreate({},jr)}(this),t.updateUrl=function(t){return t.onSuccess({},Ar,{priority:9999})}(this),t.lazyLoad=function(t){return t.onBefore({entering:function(t){return!!t.lazyLoad}},Hr)}(this)},e}(),Mr=function(){function e(t){this.router=t,this.invalidCallbacks=[],this._defaultErrorHandler=function(t){t instanceof Error&&t.stack?(console.error(t),console.error(t.stack)):t instanceof qt?(console.error(t.toString()),t.detail&&t.detail.stack&&console.error(t.detail.stack)):console.error(t)};var r=Object.keys(e.prototype).filter(f(Y(["current","$current","params","transition"])));Q(y(e.prototype),this,y(this),r)}return Object.defineProperty(e.prototype,"transition",{get:function(){return this.router.globals.transition},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"params",{get:function(){return this.router.globals.params},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"current",{get:function(){return this.router.globals.current},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"$current",{get:function(){return this.router.globals.$current},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this.defaultErrorHandler(J),this.invalidCallbacks=[]},e.prototype._handleInvalidTargetState=function(t,e){var r=this,n=fe.makeTargetState(this.router.stateRegistry,t),i=this.router.globals,o=function(){return i.transitionHistory.peekTail()},a=o(),u=new Ht(this.invalidCallbacks.slice()),s=new ge(t).injector(),c=function(t){if(t instanceof Yt){var e=t;return(e=r.target(e.identifier(),e.params(),e.options())).valid()?o()!==a?qt.superseded().toPromise():r.transitionTo(e.identifier(),e.params(),e.options()):qt.invalid(e.error()).toPromise()}};return function t(){var r=u.dequeue();return void 0===r?qt.invalid(e.error()).toPromise():N.$q.when(r(e,n,s)).then(c).then(function(e){return e||t()})}()},e.prototype.onInvalid=function(t){return this.invalidCallbacks.push(t),function(){X(this.invalidCallbacks)(t)}.bind(this)},e.prototype.reload=function(t){return this.transitionTo(this.current,this.params,{reload:!E(t)||t,inherit:!1,notify:!1})},e.prototype.go=function(t,e,r){var n=it(r,{relative:this.$current,inherit:!0},Ur);return this.transitionTo(t,e,n)},e.prototype.target=function(t,e,r){if(void 0===r&&(r={}),x(r.reload)&&!r.reload.name)throw new Error("Invalid reload state object");var n=this.router.stateRegistry;if(r.reloadState=!0===r.reload?n.root():n.matcher.find(r.reload,r.relative),r.reload&&!r.reloadState)throw new Error("No such reload state '"+(O(r.reload)?r.reload:r.reload.name)+"'");return new Yt(this.router.stateRegistry,t,e,r)},e.prototype.getCurrentPath=function(){var t=this,e=this.router.globals.successfulTransitions.peekTail();return e?e.treeChanges().to:[new ce(t.router.stateRegistry.root())]},e.prototype.transitionTo=function(e,r,n){var i=this;void 0===r&&(r={}),void 0===n&&(n={});var o=this.router,a=o.globals;n=it(n,Ur);n=G(n,{current:function(){return a.transition}});var u=this.target(e,r,n),s=this.getCurrentPath();if(!u.exists())return this._handleInvalidTargetState(s,u);if(!u.valid())return At(u.error());var c=function(e){return function(r){if(r instanceof qt){var n=o.globals.lastStartedTransitionId===e.$id;if(r.type===t.RejectType.IGNORED)return n&&o.urlRouter.update(),N.$q.when(a.current);var u=r.detail;if(r.type===t.RejectType.SUPERSEDED&&r.redirected&&u instanceof Yt){var s=e.redirect(u);return s.run().catch(c(s))}if(r.type===t.RejectType.ABORTED)return n&&o.urlRouter.update(),N.$q.reject(r)}return i.defaultErrorHandler()(r),N.$q.reject(r)}},f=this.router.transitionService.create(s,u),l=f.run().catch(c(f));return jt(l),G(l,{transition:f})},e.prototype.is=function(t,e,r){r=it(r,{relative:this.$current});var n=this.router.stateRegistry.matcher.find(t,r.relative);if(E(n)){if(this.$current!==n)return!1;if(!e)return!0;var i=n.parameters({inherit:!0,matchingKeys:e});return se.equals(i,se.values(i,e),this.params)}},e.prototype.includes=function(t,e,r){r=it(r,{relative:this.$current});var n=O(t)&&w.fromString(t);if(n){if(!n.matches(this.$current.name))return!1;t=this.$current.name}var i=this.router.stateRegistry.matcher.find(t,r.relative),o=this.$current.includes;if(E(i)){if(!E(o[i.name]))return!1;if(!e)return!0;var a=i.parameters({inherit:!0,matchingKeys:e});return se.equals(a,se.values(a,e),this.params)}},e.prototype.href=function(t,e,r){r=it(r,{lossy:!0,inherit:!0,absolute:!1,relative:this.$current}),e=e||{};var n=this.router.stateRegistry.matcher.find(t,r.relative);if(!E(n))return null;r.inherit&&(e=this.params.$inherit(e,this.$current,n));var i=n&&r.lossy?n.navigable:n;return i&&void 0!==i.url&&null!==i.url?this.router.urlRouter.href(i.url,e,{absolute:r.absolute}):null},e.prototype.defaultErrorHandler=function(t){return this._defaultErrorHandler=t||this._defaultErrorHandler},e.prototype.get=function(t,e){var r=this.router.stateRegistry;return 0===arguments.length?r.get():r.get(t,e||this.$current)},e.prototype.lazyLoad=function(t,e){var r=this.get(t);if(!r||!r.lazyLoad)throw new Error("Can not lazy load "+t);var n=this.getCurrentPath(),i=fe.makeTargetState(this.router.stateRegistry,n);return Dr(e=e||this.router.transitionService.create(n,i),r)},e}(),Br={when:function(t){return new Promise(function(e,r){return e(t)})},reject:function(t){return new Promise(function(e,r){r(t)})},defer:function(){var t={};return t.promise=new Promise(function(e,r){t.resolve=e,t.reject=r}),t},all:function(t){if(I(t))return Promise.all(t);if(x(t)){var e=Object.keys(t).map(function(e){return t[e].then(function(t){return{key:e,val:t}})});return Br.all(e).then(function(t){return t.reduce(function(t,e){return t[e.key]=e.val,t},{})})}}},Gr={},Wr=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,zr=/([^\s,]+)/g,Jr={get:function(t){return Gr[t]},has:function(t){return null!=Jr.get(t)},invoke:function(t,e,r){var n=G({},Gr,r||{}),i=Jr.annotate(t),o=bt(function(t){return n.hasOwnProperty(t)},function(t){return"DI can't find injectable: '"+t+"'"}),a=i.filter(o).map(function(t){return n[t]});return P(t)?t.apply(e,a):t.slice(-1)[0].apply(e,a)},annotate:function(t){if(!H(t))throw new Error("Not an injectable function: "+t);if(t&&t.$inject)return t.$inject;if(I(t))return t.slice(0,-1);var e=t.toString().replace(Wr,"");return e.slice(e.indexOf("(")+1,e.indexOf(")")).match(zr)||[]}},Qr=function(t,e){var r=e[0],n=e[1];return t.hasOwnProperty(r)?I(t[r])?t[r].push(n):t[r]=[t[r],n]:t[r]=n,t},Kr=function(t){return t.split("&").filter(z).map(Ae).reduce(Qr,{})};function Yr(t){var e=function(t){return t||""},r=Ve(t).map(e),n=r[0],i=r[1],o=je(n).map(e);return{path:o[0],search:o[1],hash:i,url:t}}var Zr=function(t){var e=t.path(),r=t.search(),n=t.hash(),i=Object.keys(r).map(function(t){var e=r[t];return(I(e)?e:[e]).map(function(e){return t+"="+e})}).reduce(yt,[]).join("&");return e+(i?"?"+i:"")+(n?"#"+n:"")};function Xr(t,e,r,n){return function(i){var o=i.locationService=new r(i),a=i.locationConfig=new n(i,e);return{name:t,service:o,configuration:a,dispose:function(t){t.dispose(o),t.dispose(a)}}}}var tn,en=function(){function t(t,e){var r=this;this.fireAfterUpdate=e,this._listeners=[],this._listener=function(t){return r._listeners.forEach(function(e){return e(t)})},this.hash=function(){return Yr(r._get()).hash},this.path=function(){return Yr(r._get()).path},this.search=function(){return Kr(Yr(r._get()).search)},this._location=F.location,this._history=F.history}return t.prototype.url=function(t,e){return void 0===e&&(e=!0),E(t)&&t!==this._get()&&(this._set(null,null,t,e),this.fireAfterUpdate&&this._listeners.forEach(function(e){return e({url:t})})),Zr(this)},t.prototype.onChange=function(t){var e=this;return this._listeners.push(t),function(){return X(e._listeners,t)}},t.prototype.dispose=function(t){nt(this._listeners)},t}(),rn=(tn=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},function(t,e){function r(){this.constructor=t}tn(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),nn=function(t){function e(e){var r=t.call(this,e,!1)||this;return F.addEventListener("hashchange",r._listener,!1),r}return rn(e,t),e.prototype._get=function(){return He(this._location.hash)},e.prototype._set=function(t,e,r,n){this._location.hash=r},e.prototype.dispose=function(e){t.prototype.dispose.call(this,e),F.removeEventListener("hashchange",this._listener)},e}(en),on=function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),an=function(t){function e(e){return t.call(this,e,!0)||this}return on(e,t),e.prototype._get=function(){return this._url},e.prototype._set=function(t,e,r,n){this._url=r},e}(en),un=function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])};return function(e,r){function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),sn=function(t){function e(e){var r=t.call(this,e,!0)||this;return r._config=e.urlService.config,F.addEventListener("popstate",r._listener,!1),r}return un(e,t),e.prototype._getBasePrefix=function(){return Ie(this._config.baseHref())},e.prototype._get=function(){var t=this._location,e=t.pathname,r=t.hash,n=t.search;n=je(n)[1],r=Ve(r)[1];var i=this._getBasePrefix(),o=e===this._config.baseHref(),a=e.substr(0,i.length)===i;return(e=o?"/":a?e.substring(i.length):e)+(n?"?"+n:"")+(r?"#"+r:"")},e.prototype._set=function(t,e,r,n){var i=this._getBasePrefix(),o=r&&"/"!==r[0]?"/":"",a=""===r||"/"===r?this._config.baseHref():i+o+r;n?this._history.replaceState(t,e,a):this._history.pushState(t,e,a)},e.prototype.dispose=function(e){t.prototype.dispose.call(this,e),F.removeEventListener("popstate",this._listener)},e}(en),cn=function(){return function(){var t=this;this.dispose=J,this._baseHref="",this._port=80,this._protocol="http",this._host="localhost",this._hashPrefix="",this.port=function(){return t._port},this.protocol=function(){return t._protocol},this.host=function(){return t._host},this.baseHref=function(){return t._baseHref},this.html5Mode=function(){return!1},this.hashPrefix=function(e){return E(e)?t._hashPrefix=e:t._hashPrefix}}}(),fn=function(){function t(t,e){void 0===e&&(e=!1),this._isHtml5=e,this._baseHref=void 0,this._hashPrefix=""}return t.prototype.port=function(){return location.port?Number(location.port):"https"===this.protocol()?443:80},t.prototype.protocol=function(){return location.protocol.replace(/:/g,"")},t.prototype.host=function(){return location.hostname},t.prototype.html5Mode=function(){return this._isHtml5},t.prototype.hashPrefix=function(t){return E(t)?this._hashPrefix=t:this._hashPrefix},t.prototype.baseHref=function(t){return E(t)?this._baseHref=t:E(this._baseHref)?this._baseHref:this.applyDocumentBaseHref()},t.prototype.applyDocumentBaseHref=function(){var t=document.getElementsByTagName("base")[0];return this._baseHref=t?t.href.substr(location.origin.length):location.pathname||"/"},t.prototype.dispose=function(){},t}();function ln(t){return N.$injector=Jr,N.$q=Br,{name:"vanilla.services",$q:Br,$injector:Jr,dispose:function(){return null}}}var hn=Xr("vanilla.hashBangLocation",!1,nn,fn),pn=Xr("vanilla.pushStateLocation",!0,sn,fn),vn=Xr("vanilla.memoryLocation",!1,an,cn),dn=function(){function t(){}return t.prototype.dispose=function(t){},t}(),mn=Object.freeze({root:F,fromJson:L,toJson:M,forEach:B,extend:G,equals:W,identity:z,noop:J,createProxyFunctions:Q,inherit:K,inArray:Y,_inArray:Z,removeFrom:X,_removeFrom:tt,pushTo:et,_pushTo:rt,deregAll:nt,defaults:it,mergeR:ot,ancestors:at,pick:ut,omit:st,pluck:ct,filter:ft,find:lt,mapObj:ht,map:pt,values:vt,allTrueR:dt,anyTrueR:mt,unnestR:yt,flattenR:gt,pushR:_t,uniqR:wt,unnest:$t,flatten:St,assertPredicate:bt,assertMap:Rt,assertFn:Et,pairs:Ct,arrayTuples:Tt,applyPairs:Pt,tail:kt,copy:Ot,_extend:xt,silenceUncaughtInPromise:jt,silentRejection:At,notImplemented:q,services:N,Glob:w,curry:i,compose:o,pipe:a,prop:u,propEq:s,parse:c,not:f,and:l,or:h,all:p,any:v,is:d,eq:m,val:y,invoke:g,pattern:_,isUndefined:R,isDefined:E,isNull:C,isNullOrUndefined:T,isFunction:P,isNumber:k,isString:O,isObject:x,isArray:I,isDate:V,isRegExp:j,isState:A,isInjectable:H,isPromise:D,Queue:Ht,maxLength:Se,padString:be,kebobString:Re,functionToString:Ee,fnToString:Ce,stringify:ke,beforeAfterSubstr:Oe,hostRegex:xe,stripLastPathElement:Ie,splitHash:Ve,splitQuery:je,splitEqual:Ae,trimHashVal:He,splitOnDelim:De,joinNeighborsR:qe,get Category(){return t.Category},Trace:Qt,trace:Kt,get DefType(){return t.DefType},Param:se,ParamTypes:Fe,StateParams:Ue,ParamType:ie,PathNode:ce,PathUtils:fe,resolvePolicies:pe,defaultResolvePolicy:le,Resolvable:he,NATIVE_INJECTOR_TOKEN:ye,ResolveContext:ge,resolvablesBuilder:Ke,StateBuilder:Ye,StateObject:$,StateMatcher:Ze,StateQueueManager:Xe,StateRegistry:tr,StateService:Mr,TargetState:Yt,get TransitionHookPhase(){return t.TransitionHookPhase},get TransitionHookScope(){return t.TransitionHookScope},HookBuilder:ne,matchState:te,RegisteredHook:ee,makeEvent:re,get RejectType(){return t.RejectType},Rejection:qt,Transition:$e,TransitionHook:Xt,TransitionEventType:qr,defaultTransOpts:Ur,TransitionService:Lr,UrlMatcher:nr,UrlMatcherFactory:ir,UrlRouter:sr,UrlRuleFactory:or,BaseUrlRule:ar,UrlService:gr,ViewService:fr,UIRouterGlobals:lr,UIRouter:wr,$q:Br,$injector:Jr,BaseLocationServices:en,HashLocationService:nn,MemoryLocationService:an,PushStateLocationService:sn,MemoryLocationConfig:cn,BrowserLocationConfig:fn,keyValsToObjectR:Qr,getParams:Kr,parseUrl:Yr,buildUrl:Zr,locationPluginFactory:Xr,servicesPlugin:ln,hashLocationPlugin:hn,pushStateLocationPlugin:pn,memoryLocationPlugin:vn,UIRouterPluginBase:dn});function yn(){var t=null;return function(e,r){return t=t||N.$injector.get("$templateFactory"),[new $n(e,r,t)]}}var gn=function(t,e){return t.reduce(function(t,r){return t||E(e[r])},!1)};function _n(t){if(!t.parent)return{};var e=["component","bindings","componentProvider"],r=["templateProvider","templateUrl","template","notify","async"].concat(["controller","controllerProvider","controllerAs","resolveAs"]),n=e.concat(r);if(E(t.views)&&gn(n,t))throw new Error("State '"+t.name+"' has a 'views' object. It cannot also have \"view properties\" at the state level. Move the following properties into a view (in the 'views' object): "+n.filter(function(e){return E(t[e])}).join(", "));var i={},o=t.views||{$default:ut(t,n)};return B(o,function(n,o){if(o=o||"$default",O(n)&&(n={component:n}),n=G({},n),gn(e,n)&&gn(r,n))throw new Error("Cannot combine: "+e.join("|")+" with: "+r.join("|")+" in stateview: '"+o+"@"+t.name+"'");n.resolveAs=n.resolveAs||"$resolve",n.$type="ng1",n.$context=t,n.$name=o;var a=fr.normalizeUIViewTarget(n.$context,n.$name);n.$uiViewName=a.uiViewName,n.$uiViewContextAnchor=a.uiViewContextAnchor,i[o]=n}),i}var wn=0,$n=function(){function t(t,e,r){var n=this;this.path=t,this.viewDecl=e,this.factory=r,this.$id=wn++,this.loaded=!1,this.getTemplate=function(t,e){return n.component?n.factory.makeComponentTemplate(t,e,n.component,n.viewDecl.bindings):n.template}}return t.prototype.load=function(){var t=this,e=N.$q,r=new ge(this.path),n=this.path.reduce(function(t,e){return G(t,e.paramValues)},{}),i={template:e.when(this.factory.fromConfig(this.viewDecl,n,r)),controller:e.when(this.getController(r))};return e.all(i).then(function(e){return Kt.traceViewServiceEvent("Loaded",t),t.controller=e.controller,G(t,e.template),t})},t.prototype.getController=function(t){var e=this.viewDecl.controllerProvider;if(!H(e))return this.viewDecl.controller;var r=N.$injector.annotate(e),n=I(e)?kt(e):e;return new he("",n,r).get(t)},t}(),Sn=function(){function t(){var t=this;this._useHttp=n.version.minor<3,this.$get=["$http","$templateCache","$injector",function(e,r,n){return t.$templateRequest=n.has&&n.has("$templateRequest")&&n.get("$templateRequest"),t.$http=e,t.$templateCache=r,t}]}return t.prototype.useHttpService=function(t){this._useHttp=t},t.prototype.fromConfig=function(t,e,r){var n=function(t){return N.$q.when(t).then(function(t){return{template:t}})},i=function(t){return N.$q.when(t).then(function(t){return{component:t}})};return E(t.template)?n(this.fromString(t.template,e)):E(t.templateUrl)?n(this.fromUrl(t.templateUrl,e)):E(t.templateProvider)?n(this.fromProvider(t.templateProvider,e,r)):E(t.component)?i(t.component):E(t.componentProvider)?i(this.fromComponentProvider(t.componentProvider,e,r)):n("")},t.prototype.fromString=function(t,e){return P(t)?t(e):t},t.prototype.fromUrl=function(t,e){return P(t)&&(t=t(e)),null==t?null:this._useHttp?this.$http.get(t,{cache:this.$templateCache,headers:{Accept:"text/html"}}).then(function(t){return t.data}):this.$templateRequest(t)},t.prototype.fromProvider=function(t,e,r){var n=N.$injector.annotate(t),i=I(t)?kt(t):t;return new he("",i,n).get(r)},t.prototype.fromComponentProvider=function(t,e,r){var n=N.$injector.annotate(t),i=I(t)?kt(t):t;return new he("",i,n).get(r)},t.prototype.makeComponentTemplate=function(t,e,r,i){i=i||{};var o=n.version.minor>=3?"::":"",a=function(t){var e=Re(t);return/^(x|data)-/.exec(e)?"x-"+e:e},u=function(t){var e=N.$injector.get(t+"Directive");if(!e||!e.length)throw new Error("Unable to find component named '"+t+"'");return e.map(bn).reduce(yt,[])}(r).map(function(r){var n=r.name,u=r.type,s=a(n);if(t.attr(s)&&!i[n])return s+"='"+t.attr(s)+"'";var c=i[n]||n;if("@"===u)return s+"='{{"+o+"$resolve."+c+"}}'";if("&"===u){var f=e.getResolvable(c),l=f&&f.data,h=l&&N.$injector.annotate(l)||[];return s+"='$resolve."+c+(I(l)?"["+(l.length-1)+"]":"")+"("+h.join(",")+")'"}return s+"='"+o+"$resolve."+c+"'"}).join(" "),s=a(r);return"<"+s+" "+u+">"},t}();var bn=function(t){return x(t.bindToController)?Rn(t.bindToController):Rn(t.scope)},Rn=function(t){return Object.keys(t||{}).map(function(e){return[e,/^([=<@&])[?]?(.*)/.exec(t[e])]}).filter(function(t){return E(t)&&I(t[1])}).map(function(t){return{name:t[1][2]||t[0],type:t[1][1]}})},En=function(){function t(e,r){this.stateRegistry=e,this.stateService=r,Q(y(t.prototype),this,y(this))}return t.prototype.decorator=function(t,e){return this.stateRegistry.decorator(t,e)||this},t.prototype.state=function(t,e){return x(t)?e=t:e.name=t,this.stateRegistry.register(e),this},t.prototype.onInvalid=function(t){return this.stateService.onInvalid(t)},t}(),Cn=function(t){return function(e,r){var n=e[t],i="onExit"===t?"from":"to";return n?function(t,e){var r=new ge(t.treeChanges(i)).subContext(e.$$state()),o=G(Mn(r),{$state$:e,$transition$:t});return N.$injector.invoke(n,this,o)}:void 0}},Tn=function(){function t(t){this._urlListeners=[],this.$locationProvider=t;var e=y(t);Q(e,this,e,["hashPrefix"])}return t.monkeyPatchPathParameterType=function(t){var e=t.urlMatcherFactory.type("path");e.encode=function(t){return null!=t?t.toString().replace(/(~|\/)/g,function(t){return{"~":"~~","/":"~2F"}[t]}):t},e.decode=function(t){return null!=t?t.toString().replace(/(~~|~2F)/g,function(t){return{"~~":"~","~2F":"/"}[t]}):t}},t.prototype.dispose=function(){},t.prototype.onChange=function(t){var e=this;return this._urlListeners.push(t),function(){return X(e._urlListeners)(t)}},t.prototype.html5Mode=function(){var t=this.$locationProvider.html5Mode();return(t=x(t)?t.enabled:t)&&this.$sniffer.history},t.prototype.url=function(t,e,r){return void 0===e&&(e=!1),E(t)&&this.$location.url(t),e&&this.$location.replace(),r&&this.$location.state(r),this.$location.url()},t.prototype._runtimeServices=function(t,e,r,n){var i=this;this.$location=e,this.$sniffer=r,t.$on("$locationChangeSuccess",function(t){return i._urlListeners.forEach(function(e){return e(t)})});var o=y(e),a=y(n);Q(o,this,o,["replace","path","search","hash"]),Q(o,this,o,["port","protocol","host"]),Q(a,this,a,["baseHref"])},t}(),Pn=function(){function t(t){this._router=t,this._urlRouter=t.urlRouter}return t.injectableHandler=function(t,e){return function(r){return N.$injector.invoke(e,null,{$match:r,$stateParams:t.globals.params})}},t.prototype.$get=function(){var t=this._urlRouter;return t.update(!0),t.interceptDeferred||t.listen(),t},t.prototype.rule=function(t){var e=this;if(!P(t))throw new Error("'rule' must be a function");var r=new ar(function(){return t(N.$injector,e._router.locationService)},z);return this._urlRouter.rule(r),this},t.prototype.otherwise=function(t){var e=this,r=this._urlRouter;if(O(t))r.otherwise(t);else{if(!P(t))throw new Error("'rule' must be a string or function");r.otherwise(function(){return t(N.$injector,e._router.locationService)})}return this},t.prototype.when=function(e,r){return(I(r)||P(r))&&(r=t.injectableHandler(this._router,r)),this._urlRouter.when(e,r),this},t.prototype.deferIntercept=function(t){this._urlRouter.deferIntercept(t)},t}();n.module("ui.router.angular1",[]);var kn=n.module("ui.router.init",[]),On=n.module("ui.router.util",["ng","ui.router.init"]),xn=n.module("ui.router.router",["ui.router.util"]),In=n.module("ui.router.state",["ui.router.router","ui.router.util","ui.router.angular1"]),Vn=n.module("ui.router",["ui.router.init","ui.router.state","ui.router.angular1"]),jn=(n.module("ui.router.compat",["ui.router"]),null);function An(t){(jn=this.router=new wr).stateProvider=new En(jn.stateRegistry,jn.stateService),jn.stateRegistry.decorator("views",_n),jn.stateRegistry.decorator("onExit",Cn("onExit")),jn.stateRegistry.decorator("onRetain",Cn("onRetain")),jn.stateRegistry.decorator("onEnter",Cn("onEnter")),jn.viewService._pluginapi._viewConfigFactory("ng1",yn());var e=jn.locationService=jn.locationConfig=new Tn(t);function r(t,r,n,i,o,a){return e._runtimeServices(i,t,n,r),delete jn.router,delete jn.$get,jn}return Tn.monkeyPatchPathParameterType(jn),jn.router=jn,jn.$get=r,r.$inject=["$location","$browser","$sniffer","$rootScope","$http","$templateCache"],jn}An.$inject=["$locationProvider"];var Hn=function(t){return["$uiRouterProvider",function(e){var r=e.router[t];return r.$get=function(){return r},r}]};function Dn(t,e,r){N.$injector=t,N.$q=e,r.stateRegistry.get().map(function(t){return t.$$state().resolvables}).reduce(yt,[]).filter(function(t){return"deferred"===t.deps}).forEach(function(e){return e.deps=t.annotate(e.resolveFn,t.strictDi)})}Dn.$inject=["$injector","$q","$uiRouter"];function qn(t){t.$watch(function(){Kt.approximateDigests++})}qn.$inject=["$rootScope"],kn.provider("$uiRouter",An),xn.provider("$urlRouter",["$uiRouterProvider",function(t){return t.urlRouterProvider=new Pn(t)}]),On.provider("$urlService",Hn("urlService")),On.provider("$urlMatcherFactory",["$uiRouterProvider",function(){return jn.urlMatcherFactory}]),On.provider("$templateFactory",function(){return new Sn}),In.provider("$stateRegistry",Hn("stateRegistry")),In.provider("$uiRouterGlobals",Hn("globals")),In.provider("$transitions",Hn("transitionService")),In.provider("$state",["$uiRouterProvider",function(){return G(jn.stateProvider,{$get:function(){return jn.stateService}})}]),In.factory("$stateParams",["$uiRouter",function(t){return t.globals.params}]),Vn.factory("$view",function(){return jn.viewService}),Vn.service("$trace",function(){return Kt}),Vn.run(qn),On.run(["$urlMatcherFactory",function(t){}]),In.run(["$state",function(t){}]),xn.run(["$urlRouter",function(t){}]),kn.run(Dn);var Nn,Fn,Un,Ln,Mn=function(t){return t.getTokens().filter(O).map(function(e){var r=t.getResolvable(e);return[e,"NOWAIT"===t.getPolicy(r).async?r.promise:r.data]}).reduce(Pt,{})};function Bn(t){var e,r=t.match(/^\s*({[^}]*})\s*$/);if(r&&(t="("+r[1]+")"),!(e=t.replace(/\n/g," ").match(/^\s*([^(]*?)\s*(\((.*)\))?\s*$/))||4!==e.length)throw new Error("Invalid state ref '"+t+"'");return{state:e[1]||null,paramExpr:e[3]||null}}function Gn(t){var e=t.parent().inheritedData("$uiView"),r=c("$cfg.path")(e);return r?kt(r).state.name:void 0}function Wn(t,e,r){var n=r.uiState||t.current.name,i=G(function(t,e){return{relative:Gn(t)||e.$current,inherit:!0,source:"sref"}}(e,t),r.uiStateOpts||{}),o=t.href(n,r.uiStateParams,i);return{uiState:n,uiStateParams:r.uiStateParams,uiStateOpts:i,href:o}}function zn(t){var e="[object SVGAnimatedString]"===Object.prototype.toString.call(t.prop("href")),r="FORM"===t[0].nodeName;return{attr:r?"action":e?"xlink:href":"href",isAnchor:"A"===t.prop("tagName").toUpperCase(),clickable:!r}}function Jn(t,e,r,n,i){return function(o){var a=o.which||o.button,u=i();if(!(a>1||o.ctrlKey||o.metaKey||o.shiftKey||t.attr("target"))){var s=r(function(){e.go(u.uiState,u.uiStateParams,u.uiStateOpts)});o.preventDefault();var c=n.isAnchor&&!u.href?1:0;o.preventDefault=function(){c--<=0&&r.cancel(s)}}}}function Qn(t,e,r,n){var i;n&&(i=n.events),I(i)||(i=["click"]);for(var o=t.on?"on":"bind",a=0,u=i;a0)){var r=d(t,e,u);return m(),r}},e.$on("$destroy",(s=n.stateRegistry.onStatesChanged(p),c=n.transitionService.onStart({},h),f=e.$on("$stateChangeSuccess",m),function(){s(),c(),f()})),n.globals.transition&&h(n.globals.transition),m()}]}}],n.module("ui.router.state").directive("uiSref",Nn).directive("uiSrefActive",Un).directive("uiSrefActiveEq",Un).directive("uiState",Fn),Kn.$inject=["$state"],Yn.$inject=["$state"],n.module("ui.router.state").filter("isState",Kn).filter("includedByState",Yn),Ln=["$view","$animate","$uiViewScroll","$interpolate","$q",function(t,e,r,i,o){var a={$cfg:{viewDecl:{$context:t._pluginapi._rootViewContext()}},$uiView:{}},u={count:0,restrict:"ECA",terminal:!0,priority:400,transclude:"element",compile:function(s,f,l){return function(s,f,h){var p,v,d,m,y,g=h.onload||"",_=h.autoscroll,w={enter:function(t,r,i){n.version.minor>2?e.enter(t,null,r).then(i):e.enter(t,null,r,i)},leave:function(t,r){n.version.minor>2?e.leave(t).then(r):e.leave(t,r)}},$=f.inheritedData("$uiView")||a,S=i(h.uiView||h.name||"")(s)||"$default",b={$type:"ng1",id:u.count++,name:S,fqn:$.$uiView.fqn?$.$uiView.fqn+"."+S:S,config:null,configUpdated:function(t){if(t&&!(t instanceof $n))return;if(e=m,r=t,e===r)return;var e,r;Kt.traceUIViewConfigUpdated(b,t&&t.viewDecl&&t.viewDecl.$context),m=t,R(t)},get creationContext(){var t=c("$cfg.viewDecl.$context")($),e=c("$uiView.creationContext")($);return t||e}};function R(t){var e=s.$new(),n=o.defer(),i=o.defer(),a={$cfg:t,$uiView:b},u={$animEnter:n.promise,$animLeave:i.promise,$$animLeave:i};e.$emit("$viewContentLoading",S);var c=l(e,function(t){t.data("$uiViewAnim",u),t.data("$uiView",a),w.enter(t,f,function(){n.resolve(),d&&d.$emit("$viewContentAnimationEnded"),(E(_)&&!_||s.$eval(_))&&r(t)}),function(){if(p&&(Kt.traceUIViewEvent("Removing (previous) el",p.data("$uiView")),p.remove(),p=null),d&&(Kt.traceUIViewEvent("Destroying scope",b),d.$destroy(),d=null),v){var t=v.data("$uiViewAnim");Kt.traceUIViewEvent("Animate out",t),w.leave(v,function(){t.$$animLeave.resolve(),p=null}),p=v,v=null}}()});v=c,(d=e).$emit("$viewContentLoaded",t||m),d.$eval(g)}Kt.traceUIViewEvent("Linking",b),f.data("$uiView",{$uiView:b}),R(),y=t.registerUIView(b),s.$on("$destroy",function(){Kt.traceUIViewEvent("Destroying/Unregistering",b),y()})}}};return u}],Zn.$inject=["$compile","$controller","$transitions","$view","$q","$timeout"];var Xn="function"==typeof n.module("ui.router").component,ti=0;function ei(t,e,r,n,i){!P(r.$onInit)||i.viewDecl.component&&Xn||r.$onInit();var o=kt(i.path).state.self,a={bind:r};if(P(r.uiOnParamsChanged)){var u=new ge(i.path).getResolvable("$transition$").data;n.$on("$destroy",e.onSuccess({},function(t){if(t!==u&&-1===t.exiting().indexOf(o)){var e=t.params("to"),n=t.params("from"),i=t.treeChanges().to.map(function(t){return t.paramSchema}).reduce(yt,[]),a=t.treeChanges().from.map(function(t){return t.paramSchema}).reduce(yt,[]),s=i.filter(function(t){var r=a.indexOf(t);return-1===r||!a[r].type.equals(e[t.id],n[t.id])});if(s.length){var c=s.map(function(t){return t.id}),f=ft(e,function(t,e){return-1!==c.indexOf(e)});r.uiOnParamsChanged(f,t)}}},a))}if(P(r.uiCanExit)){var s=ti++,c=function(t){return!!t&&(t._uiCanExitIds&&!0===t._uiCanExitIds[s]||c(t.redirectedFrom()))},f={exiting:o.name};n.$on("$destroy",e.onBefore(f,function(e){var n,i=e._uiCanExitIds=e._uiCanExitIds||{};return c(e)||(n=t.when(r.uiCanExit(e))).then(function(t){return i[s]=!1!==t}),n},a))}}n.module("ui.router.state").directive("uiView",Ln),n.module("ui.router.state").directive("uiView",Zn),n.module("ui.router.state").provider("$uiViewScroll",function(){var t=!1;this.useAnchorScroll=function(){t=!0},this.$get=["$anchorScroll","$timeout",function(e,r){return t?e:function(t){return r(function(){t[0].scrollIntoView()},0,!1)}}]});t.default="ui.router",t.core=mn,t.watchDigests=qn,t.getLocals=Mn,t.getNg1ViewConfigFactory=yn,t.ng1ViewsBuilder=_n,t.Ng1ViewConfig=$n,t.StateProvider=En,t.UrlRouterProvider=Pn,t.root=F,t.fromJson=L,t.toJson=M,t.forEach=B,t.extend=G,t.equals=W,t.identity=z,t.noop=J,t.createProxyFunctions=Q,t.inherit=K,t.inArray=Y,t._inArray=Z,t.removeFrom=X,t._removeFrom=tt,t.pushTo=et,t._pushTo=rt,t.deregAll=nt,t.defaults=it,t.mergeR=ot,t.ancestors=at,t.pick=ut,t.omit=st,t.pluck=ct,t.filter=ft,t.find=lt,t.mapObj=ht,t.map=pt,t.values=vt,t.allTrueR=dt,t.anyTrueR=mt,t.unnestR=yt,t.flattenR=gt,t.pushR=_t,t.uniqR=wt,t.unnest=$t,t.flatten=St,t.assertPredicate=bt,t.assertMap=Rt,t.assertFn=Et,t.pairs=Ct,t.arrayTuples=Tt,t.applyPairs=Pt,t.tail=kt,t.copy=Ot,t._extend=xt,t.silenceUncaughtInPromise=jt,t.silentRejection=At,t.notImplemented=q,t.services=N,t.Glob=w,t.curry=i,t.compose=o,t.pipe=a,t.prop=u,t.propEq=s,t.parse=c,t.not=f,t.and=l,t.or=h,t.all=p,t.any=v,t.is=d,t.eq=m,t.val=y,t.invoke=g,t.pattern=_,t.isUndefined=R,t.isDefined=E,t.isNull=C,t.isNullOrUndefined=T,t.isFunction=P,t.isNumber=k,t.isString=O,t.isObject=x,t.isArray=I,t.isDate=V,t.isRegExp=j,t.isState=A,t.isInjectable=H,t.isPromise=D,t.Queue=Ht,t.maxLength=Se,t.padString=be,t.kebobString=Re,t.functionToString=Ee,t.fnToString=Ce,t.stringify=ke,t.beforeAfterSubstr=Oe,t.hostRegex=xe,t.stripLastPathElement=Ie,t.splitHash=Ve,t.splitQuery=je,t.splitEqual=Ae,t.trimHashVal=He,t.splitOnDelim=De,t.joinNeighborsR=qe,t.Trace=Qt,t.trace=Kt,t.Param=se,t.ParamTypes=Fe,t.StateParams=Ue,t.ParamType=ie,t.PathNode=ce,t.PathUtils=fe,t.resolvePolicies=pe,t.defaultResolvePolicy=le,t.Resolvable=he,t.NATIVE_INJECTOR_TOKEN=ye,t.ResolveContext=ge,t.resolvablesBuilder=Ke,t.StateBuilder=Ye,t.StateObject=$,t.StateMatcher=Ze,t.StateQueueManager=Xe,t.StateRegistry=tr,t.StateService=Mr,t.TargetState=Yt,t.HookBuilder=ne,t.matchState=te,t.RegisteredHook=ee,t.makeEvent=re,t.Rejection=qt,t.Transition=$e,t.TransitionHook=Xt,t.TransitionEventType=qr,t.defaultTransOpts=Ur,t.TransitionService=Lr,t.UrlMatcher=nr,t.UrlMatcherFactory=ir,t.UrlRouter=sr,t.UrlRuleFactory=or,t.BaseUrlRule=ar,t.UrlService=gr,t.ViewService=fr,t.UIRouterGlobals=lr,t.UIRouter=wr,t.$q=Br,t.$injector=Jr,t.BaseLocationServices=en,t.HashLocationService=nn,t.MemoryLocationService=an,t.PushStateLocationService=sn,t.MemoryLocationConfig=cn,t.BrowserLocationConfig=fn,t.keyValsToObjectR=Qr,t.getParams=Kr,t.parseUrl=Yr,t.buildUrl=Zr,t.locationPluginFactory=Xr,t.servicesPlugin=ln,t.hashLocationPlugin=hn,t.pushStateLocationPlugin=pn,t.memoryLocationPlugin=vn,t.UIRouterPluginBase=dn,Object.defineProperty(t,"__esModule",{value:!0})}); //# sourceMappingURL=angular-ui-router.min.js.map diff --git a/UI/WebServerResources/js/vendor/angular-ui-router.min.js.map b/UI/WebServerResources/js/vendor/angular-ui-router.min.js.map index 64bf962c5..44b8e4f81 100644 --- a/UI/WebServerResources/js/vendor/angular-ui-router.min.js.map +++ b/UI/WebServerResources/js/vendor/angular-ui-router.min.js.map @@ -86,7 +86,7 @@ "/**\n * This module is a stub for core services such as Dependency Injection or Browser Location.\n * Core services may be implemented by a specific framework, such as ng1 or ng2, or be pure javascript.\n *\n * @module common\n */\n/** for typedoc */\nimport { IInjectable, Obj } from './common';\nimport { Disposable } from '../interface';\nimport { UrlParts } from '../url/interface';\n\nexport let notImplemented = (fnname: string) => () => {\n throw new Error(`${fnname}(): No coreservices implementation for UI-Router is loaded.`);\n};\n\nconst services: CoreServices = {\n $q: undefined,\n $injector: undefined,\n};\n\nexport interface $QLikeDeferred {\n resolve: (val?: any) => void;\n reject: (reason?: any) => void;\n promise: Promise;\n}\n\nexport interface $QLike {\n when(value?: T | PromiseLike): Promise;\n reject(reason: any): Promise;\n defer(): $QLikeDeferred;\n all(promises: { [key: string]: Promise }): Promise;\n all(promises: Promise[]): Promise;\n}\n\nexport interface $InjectorLike {\n strictDi?: boolean;\n get(token: any): any;\n get(token: any): T;\n has(token: any): boolean;\n invoke(fn: IInjectable, context?: any, locals?: Obj): any;\n annotate(fn: IInjectable, strictDi?: boolean): any[];\n}\n\nexport interface CoreServices {\n $q: $QLike;\n $injector: $InjectorLike;\n}\n\nexport interface LocationServices extends Disposable {\n /**\n * Gets the current url string\n *\n * The URL is normalized using the internal [[path]]/[[search]]/[[hash]] values.\n *\n * For example, the URL may be stored in the hash ([[HashLocationServices]]) or\n * have a base HREF prepended ([[PushStateLocationServices]]).\n *\n * The raw URL in the browser might be:\n *\n * ```\n * http://mysite.com/somepath/index.html#/internal/path/123?param1=foo#anchor\n * ```\n *\n * or\n *\n * ```\n * http://mysite.com/basepath/internal/path/123?param1=foo#anchor\n * ```\n *\n * then this method returns:\n *\n * ```\n * /internal/path/123?param1=foo#anchor\n * ```\n *\n *\n * #### Example:\n * ```js\n * locationServices.url(); // \"/some/path?query=value#anchor\"\n * ```\n *\n * @returns the current value of the url, as a string.\n */\n url(): string;\n\n /**\n * Updates the url, or gets the current url\n *\n * Updates the url, changing it to the value in `newurl`\n *\n * #### Example:\n * ```js\n * locationServices.url(\"/some/path?query=value#anchor\", true);\n * ```\n *\n * @param newurl The new value for the URL.\n * This url should reflect only the new internal [[path]], [[search]], and [[hash]] values.\n * It should not include the protocol, site, port, or base path of an absolute HREF.\n * @param replace When true, replaces the current history entry (instead of appending it) with this new url\n * @param state The history's state object, i.e., pushState (if the LocationServices implementation supports it)\n * @return the url (after potentially being processed)\n */\n url(newurl: string, replace?: boolean, state?: any): string;\n\n /**\n * Gets the path part of the current url\n *\n * If the current URL is `/some/path?query=value#anchor`, this returns `/some/path`\n *\n * @return the path portion of the url\n */\n path(): string;\n\n /**\n * Gets the search part of the current url as an object\n *\n * If the current URL is `/some/path?query=value#anchor`, this returns `{ query: 'value' }`\n *\n * @return the search (querystring) portion of the url, as an object\n */\n search(): { [key: string]: any };\n\n /**\n * Gets the hash part of the current url\n *\n * If the current URL is `/some/path?query=value#anchor`, this returns `anchor`\n *\n * @return the hash (anchor) portion of the url\n */\n hash(): string;\n\n /**\n * Registers a url change handler\n *\n * #### Example:\n * ```js\n * let deregisterFn = locationServices.onChange((evt) => console.log(\"url change\", evt));\n * ```\n *\n * @param callback a function that will be called when the url is changing\n * @return a function that de-registers the callback\n */\n onChange(callback: Function): Function;\n}\n\n/**\n * This service returns the location configuration\n *\n * This service returns information about the location configuration.\n * This service is primarily used when building URLs (e.g., for `hrefs`)\n */\nexport interface LocationConfig extends Disposable {\n /**\n * Gets the port, e.g., `80`\n *\n * @return the port number\n */\n port(): number;\n /**\n * Gets the protocol, e.g., `http`\n *\n * @return the protocol\n */\n protocol(): string;\n /**\n * Gets the host, e.g., `localhost`\n *\n * @return the protocol\n */\n host(): string;\n /**\n * Gets the base Href, e.g., `http://localhost/approot/`\n *\n * @return the application's base href\n */\n baseHref(): string;\n /**\n * Returns true when running in pushstate mode\n *\n * @return true when running in pushstate mode\n */\n html5Mode(): boolean;\n /**\n * Gets the hashPrefix (when not running in pushstate mode)\n *\n * If the current url is `http://localhost/app#!/uirouter/path/#anchor`, it returns `!` which is the prefix for the \"hashbang\" portion.\n *\n * @return the hash prefix\n */\n hashPrefix(): string;\n /**\n * Sets the hashPrefix (when not running in pushstate mode)\n *\n * @return the new hash prefix\n */\n hashPrefix(newprefix: string): string;\n}\n\nexport { services };\n", "/**\n * Random utility functions used in the UI-Router code\n *\n * These functions are exported, but are subject to change without notice.\n *\n * @preferred\n * @module common\n */\n/** for typedoc */\nimport { isFunction, isString, isArray, isRegExp, isDate } from './predicates';\nimport { all, any, prop, curry, not } from './hof';\nimport { services } from './coreservices';\nimport { StateObject } from '../state/stateObject';\n\ndeclare const global;\nexport const root: any = (typeof self === 'object' && self.self === self && self) ||\n (typeof global === 'object' && global.global === global && global) || this;\nconst angular = root.angular || {};\n\nexport const fromJson = angular.fromJson || JSON.parse.bind(JSON);\nexport const toJson = angular.toJson || JSON.stringify.bind(JSON);\nexport const forEach = angular.forEach || _forEach;\nexport const extend = Object.assign || _extend;\nexport const equals = angular.equals || _equals;\nexport function identity(x: any) { return x; }\nexport function noop(): any {}\n\nexport type Mapper = (x: X, key?: (string|number)) => T;\nexport interface TypedMap { [key: string]: T; }\nexport type Predicate = (x?: X) => boolean;\n/**\n * An ng1-style injectable\n *\n * This could be a (non-minified) function such as:\n * ```js\n * function injectableFunction(SomeDependency) {\n *\n * }\n * ```\n *\n * or an explicitly annotated function (minify safe)\n * ```js\n * injectableFunction.$inject = [ 'SomeDependency' ];\n * function injectableFunction(SomeDependency) {\n *\n * }\n * ```\n *\n * or an array style annotated function (minify safe)\n * ```js\n * ['SomeDependency', function injectableFunction(SomeDependency) {\n *\n * }];\n * ```\n *\n * @publicapi\n */\nexport type IInjectable = (Function|any[]);\n\nexport interface Obj extends Object {\n [key: string]: any;\n}\n\n/**\n * Builds proxy functions on the `to` object which pass through to the `from` object.\n *\n * For each key in `fnNames`, creates a proxy function on the `to` object.\n * The proxy function calls the real function on the `from` object.\n *\n *\n * #### Example:\n * This example creates an new class instance whose functions are prebound to the new'd object.\n * ```js\n * class Foo {\n * constructor(data) {\n * // Binds all functions from Foo.prototype to 'this',\n * // then copies them to 'this'\n * bindFunctions(Foo.prototype, this, this);\n * this.data = data;\n * }\n *\n * log() {\n * console.log(this.data);\n * }\n * }\n *\n * let myFoo = new Foo([1,2,3]);\n * var logit = myFoo.log;\n * logit(); // logs [1, 2, 3] from the myFoo 'this' instance\n * ```\n *\n * #### Example:\n * This example creates a bound version of a service function, and copies it to another object\n * ```\n *\n * var SomeService = {\n * this.data = [3, 4, 5];\n * this.log = function() {\n * console.log(this.data);\n * }\n * }\n *\n * // Constructor fn\n * function OtherThing() {\n * // Binds all functions from SomeService to SomeService,\n * // then copies them to 'this'\n * bindFunctions(SomeService, this, SomeService);\n * }\n *\n * let myOtherThing = new OtherThing();\n * myOtherThing.log(); // logs [3, 4, 5] from SomeService's 'this'\n * ```\n *\n * @param source A function that returns the source object which contains the original functions to be bound\n * @param target A function that returns the target object which will receive the bound functions\n * @param bind A function that returns the object which the functions will be bound to\n * @param fnNames The function names which will be bound (Defaults to all the functions found on the 'from' object)\n * @param latebind If true, the binding of the function is delayed until the first time it's invoked\n */\nexport function createProxyFunctions(source: Function, target: Obj, bind: Function, fnNames?: string[], latebind = false): Obj {\n const bindFunction = (fnName) =>\n source()[fnName].bind(bind());\n\n const makeLateRebindFn = fnName => function lateRebindFunction() {\n target[fnName] = bindFunction(fnName);\n return target[fnName].apply(null, arguments);\n };\n\n fnNames = fnNames || Object.keys(source());\n\n return fnNames.reduce((acc, name) => {\n acc[name] = latebind ? makeLateRebindFn(name) : bindFunction(name);\n return acc;\n }, target);\n}\n\n\n/**\n * prototypal inheritance helper.\n * Creates a new object which has `parent` object as its prototype, and then copies the properties from `extra` onto it\n */\nexport const inherit = (parent: Obj, extra?: Obj) =>\n extend(Object.create(parent), extra);\n\n/** Given an array, returns true if the object is found in the array, (using indexOf) */\nexport const inArray: typeof _inArray = curry(_inArray) as any;\nexport function _inArray(array: any[], obj: any): boolean;\nexport function _inArray(array: any[]): (obj: any) => boolean;\nexport function _inArray(array, obj?): any {\n return array.indexOf(obj) !== -1;\n}\n\n/**\n * Given an array, and an item, if the item is found in the array, it removes it (in-place).\n * The same array is returned\n */\nexport const removeFrom: typeof _removeFrom = curry(_removeFrom) as any;\nexport function _removeFrom(array: T[], obj: T): T[];\nexport function _removeFrom(array: T[]): (obj: T) => T[];\nexport function _removeFrom(array, obj?) {\n const idx = array.indexOf(obj);\n if (idx >= 0) array.splice(idx, 1);\n return array;\n}\n\n/** pushes a values to an array and returns the value */\nexport const pushTo: typeof _pushTo = curry(_pushTo) as any;\nexport function _pushTo(arr: T[], val: T): T ;\nexport function _pushTo(arr: T[]): (val: T) => T ;\nexport function _pushTo(arr, val?): any {\n return (arr.push(val), val);\n}\n\n/** Given an array of (deregistration) functions, calls all functions and removes each one from the source array */\nexport const deregAll = (functions: Function[]) =>\n functions.slice().forEach(fn => {\n typeof fn === 'function' && fn();\n removeFrom(functions, fn);\n });\n/**\n * Applies a set of defaults to an options object. The options object is filtered\n * to only those properties of the objects in the defaultsList.\n * Earlier objects in the defaultsList take precedence when applying defaults.\n */\nexport function defaults(opts, ...defaultsList: Obj[]) {\n const _defaultsList = defaultsList.concat({}).reverse();\n const defaultVals = extend.apply(null, _defaultsList);\n return extend({}, defaultVals, pick(opts || {}, Object.keys(defaultVals)));\n}\n\n/** Reduce function that merges each element of the list into a single object, using extend */\nexport const mergeR = (memo: Obj, item: Obj) => extend(memo, item);\n\n/**\n * Finds the common ancestor path between two states.\n *\n * @param {Object} first The first state.\n * @param {Object} second The second state.\n * @return {Array} Returns an array of state names in descending order, not including the root.\n */\nexport function ancestors(first: StateObject, second: StateObject) {\n const path: StateObject[] = [];\n\n for (const n in first.path) { // tslint:disable-line:forin\n if (first.path[n] !== second.path[n]) break;\n path.push(first.path[n]);\n }\n return path;\n}\n\n/**\n * Return a copy of the object only containing the whitelisted properties.\n *\n * #### Example:\n * ```\n * var foo = { a: 1, b: 2, c: 3 };\n * var ab = pick(foo, ['a', 'b']); // { a: 1, b: 2 }\n * ```\n * @param obj the source object\n * @param propNames an Array of strings, which are the whitelisted property names\n */\nexport function pick(obj: Obj, propNames: string[]): Obj {\n const objCopy = {};\n for (const _prop in obj) {\n if (propNames.indexOf(_prop) !== -1) {\n objCopy[_prop] = obj[_prop];\n }\n }\n return objCopy;\n}\n\n/**\n * Return a copy of the object omitting the blacklisted properties.\n *\n * @example\n * ```\n *\n * var foo = { a: 1, b: 2, c: 3 };\n * var ab = omit(foo, ['a', 'b']); // { c: 3 }\n * ```\n * @param obj the source object\n * @param propNames an Array of strings, which are the blacklisted property names\n */\nexport function omit(obj: Obj, propNames: string[]): Obj {\n return Object.keys(obj)\n .filter(not(inArray(propNames)))\n .reduce((acc, key) => (acc[key] = obj[key], acc), {});\n}\n\n\n/** Given an array of objects, maps each element to a named property of the element. */\nexport function pluck(collection: Obj[], propName: string): T[];\n/** Given an object, maps each property of the object to a named property of the property. */\nexport function pluck(collection: { [key: string]: any }, propName: string): { [key: string]: any };\n/**\n * Maps an array, or object to a property (by name)\n */\nexport function pluck(collection: any, propName: string): any {\n return map(collection, > prop(propName));\n}\n\n\n/** Given an array of objects, returns a new array containing only the elements which passed the callback predicate */\nexport function filter(collection: T[], callback: (t: T, key?: number) => boolean): T[];\n/** Given an object, returns a new object with only those properties that passed the callback predicate */\nexport function filter(collection: TypedMap, callback: (t: T, key?: string) => boolean): TypedMap;\n/** Filters an Array or an Object's properties based on a predicate */\nexport function filter(collection: any, callback: Function): T {\n const arr = isArray(collection), result: any = arr ? [] : {};\n const accept = arr ? x => result.push(x) : (x, key) => result[key] = x;\n forEach(collection, function(item, i) {\n if (callback(item, i)) accept(item, i);\n });\n return result;\n}\n\n\n/** Given an object, return the first property of that object which passed the callback predicate */\nexport function find(collection: TypedMap, callback: Predicate): T;\n/** Given an array of objects, returns the first object which passed the callback predicate */\nexport function find(collection: T[], callback: Predicate): T;\n/** Finds an object from an array, or a property of an object, that matches a predicate */\nexport function find(collection: any, callback: any) {\n let result;\n\n forEach(collection, function(item, i) {\n if (result) return;\n if (callback(item, i)) result = item;\n });\n\n return result;\n}\n\n/** Given an object, returns a new object, where each property is transformed by the callback function */\nexport let mapObj: (collection: { [key: string]: T }, callback: Mapper, target?: typeof collection) => { [key: string]: U } = map;\n/** Given an array, returns a new array, where each element is transformed by the callback function */\nexport function map(collection: T[], callback: Mapper, target?: typeof collection): U[];\nexport function map(collection: { [key: string]: T }, callback: Mapper, target?: typeof collection): { [key: string]: U };\n/** Maps an array or object properties using a callback function */\nexport function map(collection: any, callback: any, target: typeof collection): any {\n target = target || (isArray(collection) ? [] : {});\n forEach(collection, (item, i) => target[i] = callback(item, i));\n return target;\n}\n\n/**\n * Given an object, return its enumerable property values\n *\n * @example\n * ```\n *\n * let foo = { a: 1, b: 2, c: 3 }\n * let vals = values(foo); // [ 1, 2, 3 ]\n * ```\n */\nexport const values: ( (obj: TypedMap) => T[]) = (obj: Obj) =>\n Object.keys(obj).map(key => obj[key]);\n\n/**\n * Reduce function that returns true if all of the values are truthy.\n *\n * @example\n * ```\n *\n * let vals = [ 1, true, {}, \"hello world\"];\n * vals.reduce(allTrueR, true); // true\n *\n * vals.push(0);\n * vals.reduce(allTrueR, true); // false\n * ```\n */\nexport const allTrueR = (memo: boolean, elem: any) => memo && elem;\n\n/**\n * Reduce function that returns true if any of the values are truthy.\n *\n * * @example\n * ```\n *\n * let vals = [ 0, null, undefined ];\n * vals.reduce(anyTrueR, true); // false\n *\n * vals.push(\"hello world\");\n * vals.reduce(anyTrueR, true); // true\n * ```\n */\nexport const anyTrueR = (memo: boolean, elem: any) => memo || elem;\n\n/**\n * Reduce function which un-nests a single level of arrays\n * @example\n * ```\n *\n * let input = [ [ \"a\", \"b\" ], [ \"c\", \"d\" ], [ [ \"double\", \"nested\" ] ] ];\n * input.reduce(unnestR, []) // [ \"a\", \"b\", \"c\", \"d\", [ \"double, \"nested\" ] ]\n * ```\n */\nexport const unnestR = (memo: any[], elem: any[]) => memo.concat(elem);\n\n/**\n * Reduce function which recursively un-nests all arrays\n *\n * @example\n * ```\n *\n * let input = [ [ \"a\", \"b\" ], [ \"c\", \"d\" ], [ [ \"double\", \"nested\" ] ] ];\n * input.reduce(unnestR, []) // [ \"a\", \"b\", \"c\", \"d\", \"double, \"nested\" ]\n * ```\n */\nexport const flattenR = (memo: any[], elem: any) =>\n isArray(elem) ? memo.concat(elem.reduce(flattenR, [])) : pushR(memo, elem);\n\n/**\n * Reduce function that pushes an object to an array, then returns the array.\n * Mostly just for [[flattenR]] and [[uniqR]]\n */\nexport function pushR(arr: any[], obj: any) {\n arr.push(obj);\n return arr;\n}\n\n/** Reduce function that filters out duplicates */\nexport const uniqR = (acc: T[], token: T): T[] =>\n inArray(acc, token) ? acc : pushR(acc, token);\n\n/**\n * Return a new array with a single level of arrays unnested.\n *\n * @example\n * ```\n *\n * let input = [ [ \"a\", \"b\" ], [ \"c\", \"d\" ], [ [ \"double\", \"nested\" ] ] ];\n * unnest(input) // [ \"a\", \"b\", \"c\", \"d\", [ \"double, \"nested\" ] ]\n * ```\n */\nexport const unnest = (arr: any[]) => arr.reduce(unnestR, []);\n/**\n * Return a completely flattened version of an array.\n *\n * @example\n * ```\n *\n * let input = [ [ \"a\", \"b\" ], [ \"c\", \"d\" ], [ [ \"double\", \"nested\" ] ] ];\n * flatten(input) // [ \"a\", \"b\", \"c\", \"d\", \"double, \"nested\" ]\n * ```\n */\nexport const flatten = (arr: any[]) => arr.reduce(flattenR, []);\n\n/**\n * Given a .filter Predicate, builds a .filter Predicate which throws an error if any elements do not pass.\n * @example\n * ```\n *\n * let isNumber = (obj) => typeof(obj) === 'number';\n * let allNumbers = [ 1, 2, 3, 4, 5 ];\n * allNumbers.filter(assertPredicate(isNumber)); //OK\n *\n * let oneString = [ 1, 2, 3, 4, \"5\" ];\n * oneString.filter(assertPredicate(isNumber, \"Not all numbers\")); // throws Error(\"\"Not all numbers\"\");\n * ```\n */\nexport const assertPredicate: (predicate: Predicate, errMsg: (string|Function)) => Predicate = assertFn;\n/**\n * Given a .map function, builds a .map function which throws an error if any mapped elements do not pass a truthyness test.\n * @example\n * ```\n *\n * var data = { foo: 1, bar: 2 };\n *\n * let keys = [ 'foo', 'bar' ]\n * let values = keys.map(assertMap(key => data[key], \"Key not found\"));\n * // values is [1, 2]\n *\n * let keys = [ 'foo', 'bar', 'baz' ]\n * let values = keys.map(assertMap(key => data[key], \"Key not found\"));\n * // throws Error(\"Key not found\")\n * ```\n */\nexport const assertMap: (mapFn: (t: T) => U, errMsg: (string|Function)) => (t: T) => U = assertFn;\nexport function assertFn(predicateOrMap: Function, errMsg: (string|Function) = 'assert failure'): any {\n return (obj) => {\n const result = predicateOrMap(obj);\n if (!result) {\n throw new Error(isFunction(errMsg) ? ( errMsg)(obj) : errMsg);\n }\n return result;\n };\n}\n\n/**\n * Like _.pairs: Given an object, returns an array of key/value pairs\n *\n * @example\n * ```\n *\n * pairs({ foo: \"FOO\", bar: \"BAR }) // [ [ \"foo\", \"FOO\" ], [ \"bar\": \"BAR\" ] ]\n * ```\n */\nexport const pairs = (obj: Obj) =>\n Object.keys(obj).map(key => [ key, obj[key]] );\n\n/**\n * Given two or more parallel arrays, returns an array of tuples where\n * each tuple is composed of [ a[i], b[i], ... z[i] ]\n *\n * @example\n * ```\n *\n * let foo = [ 0, 2, 4, 6 ];\n * let bar = [ 1, 3, 5, 7 ];\n * let baz = [ 10, 30, 50, 70 ];\n * arrayTuples(foo, bar); // [ [0, 1], [2, 3], [4, 5], [6, 7] ]\n * arrayTuples(foo, bar, baz); // [ [0, 1, 10], [2, 3, 30], [4, 5, 50], [6, 7, 70] ]\n * ```\n */\nexport function arrayTuples(...args: any[]): any[] {\n if (args.length === 0) return [];\n const maxArrayLen = args.reduce((min, arr) => Math.min(arr.length, min), 9007199254740991); // aka 2^53 − 1 aka Number.MAX_SAFE_INTEGER\n const result = [];\n\n for (let i = 0; i < maxArrayLen; i++) {\n // This is a hot function\n // Unroll when there are 1-4 arguments\n switch (args.length) {\n case 1: result.push([args[0][i]]); break;\n case 2: result.push([args[0][i], args[1][i]]); break;\n case 3: result.push([args[0][i], args[1][i], args[2][i]]); break;\n case 4: result.push([args[0][i], args[1][i], args[2][i], args[3][i]]); break;\n default:\n result.push(args.map(array => array[i])); break;\n }\n }\n\n return result;\n}\n\n/**\n * Reduce function which builds an object from an array of [key, value] pairs.\n *\n * Each iteration sets the key/val pair on the memo object, then returns the memo for the next iteration.\n *\n * Each keyValueTuple should be an array with values [ key: string, value: any ]\n *\n * @example\n * ```\n *\n * var pairs = [ [\"fookey\", \"fooval\"], [\"barkey\", \"barval\"] ]\n *\n * var pairsToObj = pairs.reduce((memo, pair) => applyPairs(memo, pair), {})\n * // pairsToObj == { fookey: \"fooval\", barkey: \"barval\" }\n *\n * // Or, more simply:\n * var pairsToObj = pairs.reduce(applyPairs, {})\n * // pairsToObj == { fookey: \"fooval\", barkey: \"barval\" }\n * ```\n */\nexport function applyPairs(memo: TypedMap, keyValTuple: any[]) {\n let key: string, value: any;\n if (isArray(keyValTuple)) [key, value] = keyValTuple;\n if (!isString(key)) throw new Error('invalid parameters to applyPairs');\n memo[key] = value;\n return memo;\n}\n\n/** Get the last element of an array */\nexport function tail(arr: T[]): T {\n return arr.length && arr[arr.length - 1] || undefined;\n}\n\n/**\n * shallow copy from src to dest\n */\nexport function copy(src: Obj, dest?: Obj) {\n if (dest) Object.keys(dest).forEach(key => delete dest[key]);\n if (!dest) dest = {};\n return extend(dest, src);\n}\n\n/** Naive forEach implementation works with Objects or Arrays */\nfunction _forEach(obj: (any[]|any), cb: (el, idx?) => void, _this: Obj) {\n if (isArray(obj)) return obj.forEach(cb, _this);\n Object.keys(obj).forEach(key => cb(obj[key], key));\n}\n\n/** Like Object.assign() */\nexport function _extend(toObj: Obj, ...fromObjs: Obj[]): any;\nexport function _extend(toObj: Obj): any {\n for (let i = 1; i < arguments.length; i++) {\n const obj = arguments[i];\n if (!obj) continue;\n const keys = Object.keys(obj);\n\n for (let j = 0; j < keys.length; j++) {\n toObj[keys[j]] = obj[keys[j]];\n }\n }\n\n return toObj;\n}\n\nfunction _equals(o1: any, o2: any): boolean {\n if (o1 === o2) return true;\n if (o1 === null || o2 === null) return false;\n if (o1 !== o1 && o2 !== o2) return true; // NaN === NaN\n const t1 = typeof o1, t2 = typeof o2;\n if (t1 !== t2 || t1 !== 'object') return false;\n\n const tup = [o1, o2];\n if (all(isArray)(tup)) return _arraysEq(o1, o2);\n if (all(isDate)(tup)) return o1.getTime() === o2.getTime();\n if (all(isRegExp)(tup)) return o1.toString() === o2.toString();\n if (all(isFunction)(tup)) return true; // meh\n\n const predicates = [isFunction, isArray, isDate, isRegExp];\n if (predicates.map(any).reduce((b, fn) => b || !!fn(tup), false)) return false;\n\n const keys: { [i: string]: boolean } = {};\n for (const key in o1) { // tslint:disable-line:forin\n if (!_equals(o1[key], o2[key])) return false;\n keys[key] = true;\n }\n for (const key in o2) {\n if (!keys[key]) return false;\n }\n\n return true;\n}\n\nfunction _arraysEq(a1: any[], a2: any[]) {\n if (a1.length !== a2.length) return false;\n return arrayTuples(a1, a2).reduce((b, t) => b && _equals(t[0], t[1]), true);\n}\n\n// issue #2676\nexport const silenceUncaughtInPromise = (promise: Promise) =>\n promise.catch(e => 0) && promise;\nexport const silentRejection = (error: any) =>\n silenceUncaughtInPromise(services.$q.reject(error));\n", "/**\n * @coreapi\n * @module transition\n */ /** for typedoc */\n'use strict';\nimport { extend, silentRejection } from '../common/common';\nimport { stringify } from '../common/strings';\nimport { is } from '../common/hof';\n\nexport enum RejectType {\n SUPERSEDED = 2, ABORTED = 3, INVALID = 4, IGNORED = 5, ERROR = 6,\n}\n\n/** @hidden */\nlet id = 0;\n\nexport class Rejection {\n $id = id++;\n type: number;\n message: string;\n detail: any;\n redirected: boolean;\n\n /** Returns true if the obj is a rejected promise created from the `asPromise` factory */\n static isRejectionPromise(obj: any): boolean {\n return obj && (typeof obj.then === 'function') && is(Rejection)(obj._transitionRejection);\n }\n\n /** Returns a Rejection due to transition superseded */\n static superseded(detail?: any, options?: any): Rejection {\n const message = 'The transition has been superseded by a different transition';\n const rejection = new Rejection(RejectType.SUPERSEDED, message, detail);\n if (options && options.redirected) {\n rejection.redirected = true;\n }\n return rejection;\n }\n\n /** Returns a Rejection due to redirected transition */\n static redirected(detail?: any): Rejection {\n return Rejection.superseded(detail, { redirected: true });\n }\n\n /** Returns a Rejection due to invalid transition */\n static invalid(detail?: any): Rejection {\n const message = 'This transition is invalid';\n return new Rejection(RejectType.INVALID, message, detail);\n }\n\n /** Returns a Rejection due to ignored transition */\n static ignored(detail?: any): Rejection {\n const message = 'The transition was ignored';\n return new Rejection(RejectType.IGNORED, message, detail);\n }\n\n /** Returns a Rejection due to aborted transition */\n static aborted(detail?: any): Rejection {\n const message = 'The transition has been aborted';\n return new Rejection(RejectType.ABORTED, message, detail);\n }\n\n /** Returns a Rejection due to aborted transition */\n static errored(detail?: any): Rejection {\n const message = 'The transition errored';\n return new Rejection(RejectType.ERROR, message, detail);\n }\n\n /**\n * Returns a Rejection\n *\n * Normalizes a value as a Rejection.\n * If the value is already a Rejection, returns it.\n * Otherwise, wraps and returns the value as a Rejection (Rejection type: ERROR).\n *\n * @returns `detail` if it is already a `Rejection`, else returns an ERROR Rejection.\n */\n static normalize(detail?: Rejection | Error | any): Rejection {\n return is(Rejection)(detail) ? detail : Rejection.errored(detail);\n }\n\n constructor(type: number, message?: string, detail?: any) {\n this.type = type;\n this.message = message;\n this.detail = detail;\n }\n\n toString() {\n const detailString = (d: any) =>\n d && d.toString !== Object.prototype.toString ? d.toString() : stringify(d);\n const detail = detailString(this.detail);\n const { $id, type, message } = this;\n return `Transition Rejection($id: ${$id} type: ${type}, message: ${message}, detail: ${detail})`;\n }\n\n toPromise(): Promise {\n return extend(silentRejection(this), { _transitionRejection: this });\n }\n}\n", - "import { pushTo } from './common';\n\n/**\n * @module common\n */\n/** for typedoc */\n\nexport class Queue {\n private _evictListeners: ((item: T) => void)[] = [];\n public onEvict = pushTo(this._evictListeners);\n\n constructor(private _items: T[] = [], private _limit: number = null) { }\n\n enqueue(item: T) {\n const items = this._items;\n items.push(item);\n if (this._limit && items.length > this._limit) this.evict();\n return item;\n }\n\n evict(): T {\n const item: T = this._items.shift();\n this._evictListeners.forEach(fn => fn(item));\n return item;\n }\n\n dequeue(): T {\n if (this.size())\n return this._items.splice(0, 1)[0];\n }\n\n clear(): Array {\n const current = this._items;\n this._items = [];\n return current;\n }\n\n size(): number {\n return this._items.length;\n }\n\n remove(item: T) {\n const idx = this._items.indexOf(item);\n return idx > -1 && this._items.splice(idx, 1)[0];\n }\n\n peekTail(): T {\n return this._items[this._items.length - 1];\n }\n\n peekHead(): T {\n if (this.size())\n return this._items[0];\n }\n}\n", + "/** @module common */\nimport { pushTo } from './common';\n\nexport class Queue {\n private _evictListeners: ((item: T) => void)[] = [];\n public onEvict = pushTo(this._evictListeners);\n\n constructor(private _items: T[] = [], private _limit: number = null) { }\n\n enqueue(item: T) {\n const items = this._items;\n items.push(item);\n if (this._limit && items.length > this._limit) this.evict();\n return item;\n }\n\n evict(): T {\n const item: T = this._items.shift();\n this._evictListeners.forEach(fn => fn(item));\n return item;\n }\n\n dequeue(): T {\n if (this.size())\n return this._items.splice(0, 1)[0];\n }\n\n clear(): Array {\n const current = this._items;\n this._items = [];\n return current;\n }\n\n size(): number {\n return this._items.length;\n }\n\n remove(item: T) {\n const idx = this._items.indexOf(item);\n return idx > -1 && this._items.splice(idx, 1)[0];\n }\n\n peekTail(): T {\n return this._items[this._items.length - 1];\n }\n\n peekHead(): T {\n if (this.size())\n return this._items[0];\n }\n}\n", "/**\n * # Transition tracing (debug)\n *\n * Enable transition tracing to print transition information to the console,\n * in order to help debug your application.\n * Tracing logs detailed information about each Transition to your console.\n *\n * To enable tracing, import the [[Trace]] singleton and enable one or more categories.\n *\n * ### ES6\n * ```js\n * import {trace} from \"ui-router-ng2\"; // or \"angular-ui-router\"\n * trace.enable(1, 5); // TRANSITION and VIEWCONFIG\n * ```\n *\n * ### CJS\n * ```js\n * let trace = require(\"angular-ui-router\").trace; // or \"ui-router-ng2\"\n * trace.enable(\"TRANSITION\", \"VIEWCONFIG\");\n * ```\n *\n * ### Globals\n * ```js\n * let trace = window[\"angular-ui-router\"].trace; // or \"ui-router-ng2\"\n * trace.enable(); // Trace everything (very verbose)\n * ```\n *\n * ### Angular 1:\n * ```js\n * app.run($trace => $trace.enable());\n * ```\n *\n * @coreapi\n * @module trace\n */\n/* tslint:disable:no-console */\nimport { parse } from '../common/hof';\nimport { isFunction, isNumber } from '../common/predicates';\nimport { Transition } from '../transition/transition';\nimport { ViewTuple } from '../view';\nimport { ActiveUIView, ViewConfig, ViewContext } from '../view/interface';\nimport { stringify, functionToString, maxLength, padString } from './strings';\nimport { Resolvable } from '../resolve/resolvable';\nimport { PathNode } from '../path/pathNode';\nimport { PolicyWhen } from '../resolve/interface';\nimport { TransitionHook } from '../transition/transitionHook';\nimport { HookResult } from '../transition/interface';\nimport { StateObject } from '../state/stateObject';\n\n/** @hidden */\nfunction uiViewString (uiview: ActiveUIView) {\n if (!uiview) return 'ui-view (defunct)';\n const state = uiview.creationContext ? uiview.creationContext.name || '(root)' : '(none)';\n return `[ui-view#${uiview.id} ${uiview.$type}:${uiview.fqn} (${uiview.name}@${state})]`;\n}\n\n/** @hidden */\nconst viewConfigString = (viewConfig: ViewConfig) => {\n const view = viewConfig.viewDecl;\n const state = view.$context.name || '(root)';\n return `[View#${viewConfig.$id} from '${state}' state]: target ui-view: '${view.$uiViewName}@${view.$uiViewContextAnchor}'`;\n};\n\n/** @hidden */\nfunction normalizedCat(input: Category|string): string {\n return isNumber(input) ? Category[input] : Category[Category[input]];\n}\n\n/** @hidden */\nconst consoleLog = Function.prototype.bind.call(console.log, console);\n\n/** @hidden */\nconst consoletable = isFunction(console.table) ? console.table.bind(console) : consoleLog.bind(console);\n\n\n/**\n * Trace categories Enum\n *\n * Enable or disable a category using [[Trace.enable]] or [[Trace.disable]]\n *\n * `trace.enable(Category.TRANSITION)`\n *\n * These can also be provided using a matching string, or position ordinal\n *\n * `trace.enable(\"TRANSITION\")`\n *\n * `trace.enable(1)`\n */\nexport enum Category {\n RESOLVE, TRANSITION, HOOK, UIVIEW, VIEWCONFIG,\n}\n\n/** @hidden */\nconst _tid = parse('$id');\n\n/** @hidden */\nconst _rid = parse('router.$id');\n\n/** @hidden */\nconst transLbl = (trans) => `Transition #${_tid(trans)}-${_rid(trans)}`;\n\n/**\n * Prints UI-Router Transition trace information to the console.\n */\nexport class Trace {\n /** @hidden */\n approximateDigests: number;\n\n /** @hidden */\n private _enabled: { [key: string]: boolean } = {};\n\n /** @hidden */\n constructor() {\n this.approximateDigests = 0;\n }\n\n /** @hidden */\n private _set(enabled: boolean, categories: Category[]) {\n if (!categories.length) {\n categories = Object.keys(Category)\n .map(k => parseInt(k, 10))\n .filter(k => !isNaN(k))\n .map(key => Category[key]);\n }\n categories.map(normalizedCat).forEach(category => this._enabled[category] = enabled);\n }\n\n /**\n * Enables a trace [[Category]]\n *\n * ```js\n * trace.enable(\"TRANSITION\");\n * ```\n *\n * @param categories categories to enable. If `categories` is omitted, all categories are enabled.\n * Also takes strings (category name) or ordinal (category position)\n */\n enable(...categories: (Category|string|number)[]);\n enable(...categories: any[]) { this._set(true, categories); }\n /**\n * Disables a trace [[Category]]\n *\n * ```js\n * trace.disable(\"VIEWCONFIG\");\n * ```\n *\n * @param categories categories to disable. If `categories` is omitted, all categories are disabled.\n * Also takes strings (category name) or ordinal (category position)\n */\n disable(...categories: (Category|string|number)[]);\n disable(...categories: any[]) { this._set(false, categories); }\n\n /**\n * Retrieves the enabled stateus of a [[Category]]\n *\n * ```js\n * trace.enabled(\"VIEWCONFIG\"); // true or false\n * ```\n *\n * @returns boolean true if the category is enabled\n */\n enabled(category: (Category|string|number)): boolean {\n return !!this._enabled[normalizedCat(category)];\n }\n\n /** @internalapi called by ui-router code */\n traceTransitionStart(trans: Transition) {\n if (!this.enabled(Category.TRANSITION)) return;\n console.log(`${transLbl(trans)}: Started -> ${stringify(trans)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceTransitionIgnored(trans: Transition) {\n if (!this.enabled(Category.TRANSITION)) return;\n console.log(`${transLbl(trans)}: Ignored <> ${stringify(trans)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceHookInvocation(step: TransitionHook, trans: Transition, options: any) {\n if (!this.enabled(Category.HOOK)) return;\n const event = parse('traceData.hookType')(options) || 'internal',\n context = parse('traceData.context.state.name')(options) || parse('traceData.context')(options) || 'unknown',\n name = functionToString((step as any).registeredHook.callback);\n console.log(`${transLbl(trans)}: Hook -> ${event} context: ${context}, ${maxLength(200, name)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceHookResult(hookResult: HookResult, trans: Transition, transitionOptions: any) {\n if (!this.enabled(Category.HOOK)) return;\n console.log(`${transLbl(trans)}: <- Hook returned: ${maxLength(200, stringify(hookResult))}`);\n }\n\n /** @internalapi called by ui-router code */\n traceResolvePath(path: PathNode[], when: PolicyWhen, trans?: Transition) {\n if (!this.enabled(Category.RESOLVE)) return;\n console.log(`${transLbl(trans)}: Resolving ${path} (${when})`);\n }\n\n /** @internalapi called by ui-router code */\n traceResolvableResolved(resolvable: Resolvable, trans?: Transition) {\n if (!this.enabled(Category.RESOLVE)) return;\n console.log(`${transLbl(trans)}: <- Resolved ${resolvable} to: ${maxLength(200, stringify(resolvable.data))}`);\n }\n\n /** @internalapi called by ui-router code */\n traceError(reason: any, trans: Transition) {\n if (!this.enabled(Category.TRANSITION)) return;\n console.log(`${transLbl(trans)}: <- Rejected ${stringify(trans)}, reason: ${reason}`);\n }\n\n /** @internalapi called by ui-router code */\n traceSuccess(finalState: StateObject, trans: Transition) {\n if (!this.enabled(Category.TRANSITION)) return;\n console.log(`${transLbl(trans)}: <- Success ${stringify(trans)}, final state: ${finalState.name}`);\n }\n\n /** @internalapi called by ui-router code */\n traceUIViewEvent(event: string, viewData: ActiveUIView, extra = '') {\n if (!this.enabled(Category.UIVIEW)) return;\n console.log(`ui-view: ${padString(30, event)} ${uiViewString(viewData)}${extra}`);\n }\n\n /** @internalapi called by ui-router code */\n traceUIViewConfigUpdated(viewData: ActiveUIView, context: ViewContext) {\n if (!this.enabled(Category.UIVIEW)) return;\n this.traceUIViewEvent('Updating', viewData, ` with ViewConfig from context='${context}'`);\n }\n\n /** @internalapi called by ui-router code */\n traceUIViewFill(viewData: ActiveUIView, html: string) {\n if (!this.enabled(Category.UIVIEW)) return;\n this.traceUIViewEvent('Fill', viewData, ` with: ${maxLength(200, html)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceViewSync(pairs: ViewTuple[]) {\n if (!this.enabled(Category.VIEWCONFIG)) return;\n const uivheader = 'uiview component fqn';\n const cfgheader = 'view config state (view name)';\n const mapping = pairs.map(({ uiView, viewConfig }) => {\n const uiv = uiView && uiView.fqn;\n const cfg = viewConfig && `${viewConfig.viewDecl.$context.name}: (${viewConfig.viewDecl.$name})`;\n return { [uivheader]: uiv, [cfgheader]: cfg };\n }).sort((a, b) => (a[uivheader] || '').localeCompare(b[uivheader] || ''));\n\n consoletable(mapping);\n }\n\n /** @internalapi called by ui-router code */\n traceViewServiceEvent(event: string, viewConfig: ViewConfig) {\n if (!this.enabled(Category.VIEWCONFIG)) return;\n console.log(`VIEWCONFIG: ${event} ${viewConfigString(viewConfig)}`);\n }\n\n /** @internalapi called by ui-router code */\n traceViewServiceUIViewEvent(event: string, viewData: ActiveUIView) {\n if (!this.enabled(Category.VIEWCONFIG)) return;\n console.log(`VIEWCONFIG: ${event} ${uiViewString(viewData)}`);\n }\n}\n\n/**\n * The [[Trace]] singleton\n *\n * #### Example:\n * ```js\n * import {trace} from \"angular-ui-router\";\n * trace.enable(1, 5);\n * ```\n */\nconst trace = new Trace();\nexport { trace };\n", "/**\n * @coreapi\n * @module transition\n */ /** for typedoc */\nimport { StateDeclaration } from '../state/interface';\nimport { Predicate } from '../common/common';\n\nimport { Transition } from './transition';\nimport { StateObject } from '../state/stateObject';\nimport { PathNode } from '../path/pathNode';\nimport { TargetState } from '../state/targetState';\nimport { RegisteredHook } from './hookRegistry';\n\n/**\n * The TransitionOptions object can be used to change the behavior of a transition.\n *\n * It is passed as the third argument to [[StateService.go]], [[StateService.transitionTo]].\n * It can also be used with a `uiSref`.\n */\nexport interface TransitionOptions {\n /**\n * This option changes how the Transition interacts with the browser's location bar (URL).\n *\n * - If `true`, it will update the url in the location bar.\n * - If `false`, it will not update the url in the location bar.\n * - If it is the string `\"replace\"`, it will update the url and also replace the last history record.\n *\n * @default `true`\n */\n location ?: (boolean|string);\n\n /**\n * When transitioning to relative path (e.g '`^`'), this option defines which state to be relative from.\n * @default `$state.current`\n */\n relative ?: (string|StateDeclaration|StateObject);\n\n /**\n * This option sets whether or not the transition's parameter values should be inherited from\n * the current parameter values.\n *\n * - If `true`, it will inherit parameter values from the current parameter values.\n * - If `false`, only the parameters which are provided to `transitionTo` will be used.\n *\n * @default `false`\n */\n inherit ?: boolean;\n\n /**\n * @deprecated\n */\n notify ?: boolean;\n\n /**\n * This option may be used to force states which are currently active to reload.\n *\n * During a normal transition, a state is \"retained\" if:\n * - It was previously active\n * - The state's parameter values have not changed\n * - All the parent states' parameter values have not changed\n *\n * Forcing a reload of a state will cause it to be exited and entered, which will:\n * - Refetch that state's resolve data\n * - Exit the state (onExit hook)\n * - Re-enter the state (onEnter hook)\n * - Re-render the views (controllers and templates)\n *\n * - When `true`, the destination state (and all parent states) will be reloaded.\n * - When it is a string and is the name of a state, or when it is a State object,\n * that state and any children states will be reloaded.\n *\n * @default `false`\n */\n reload ?: (boolean|string|StateDeclaration|StateObject);\n /**\n * You can define your own Transition Options inside this property and use them, e.g., from a Transition Hook\n */\n custom ?: any;\n /** @internalapi */\n reloadState ?: (StateObject);\n /** @internalapi\n * If this transition is a redirect, this property should be the original Transition (which was redirected to this one)\n */\n redirectedFrom?: Transition;\n /** @internalapi */\n current ?: () => Transition;\n /** @internalapi */\n source ?: 'sref' | 'url' | 'redirect' | 'otherwise' | 'unknown';\n}\n\n/** @internalapi */\nexport interface TransitionHookOptions {\n current ?: () => Transition; // path?\n transition ?: Transition;\n hookType ?: string;\n target ?: any;\n traceData ?: any;\n bind ?: any;\n stateHook ?: boolean;\n}\n\n/**\n * TreeChanges encapsulates the various Paths that are involved in a Transition.\n *\n * Get a TreeChanges object using [[Transition.treeChanges]]\n *\n * A UI-Router Transition is from one Path in a State Tree to another Path. For a given Transition,\n * this object stores the \"to\" and \"from\" paths, as well as subsets of those: the \"retained\",\n * \"exiting\" and \"entering\" paths.\n *\n * Each path in TreeChanges is an array of [[PathNode]] objects. Each PathNode in the array corresponds to a portion\n * of a nested state.\n *\n * For example, if you had a nested state named `foo.bar.baz`, it would have three\n * portions, `foo, bar, baz`. If you transitioned **to** `foo.bar.baz` and inspected the [[TreeChanges.to]]\n * Path, you would find a node in the array for each portion: `foo`, `bar`, and `baz`.\n *\n * ---\n *\n * @todo show visual state tree\n */\nexport interface TreeChanges {\n /** @nodoc */\n [key: string]: PathNode[];\n\n /** The path of nodes in the state tree that the transition is coming *from* */\n from: PathNode[];\n\n /** The path of nodes in the state tree that the transition is going *to* */\n to: PathNode[];\n\n /**\n * The path of active nodes that the transition is retaining.\n *\n * These nodes are neither exited, nor entered.\n * Before and after the transition is successful, these nodes are active.\n */\n retained: PathNode[];\n\n /**\n * The path of active nodes that the transition is retaining with updated \"to params\" applied.\n *\n * These nodes are neither exited, nor entered.\n * Before and after the transition is successful, these nodes are active.\n *\n * This is a shallow copy of [[retained]], but with new (dynamic) parameter values from [[to]] applied.\n */\n retainedWithToParams: PathNode[];\n\n /**\n * The path of previously active nodes that the transition is exiting.\n *\n * After the Transition is successful, these nodes are no longer active.\n *\n * Note that a state that is being reloaded (due to parameter values changing, or `reload: true`) may be in both the\n * `exiting` and `entering` paths.\n */\n exiting: PathNode[];\n\n /**\n * The path of nodes that the transition is entering.\n *\n * After the Transition is successful, these nodes will be active.\n * Because they are entering, they have their resolves fetched, `onEnter` hooks run, and their views\n * (component(s) or controller(s)+template(s)) refreshed.\n *\n * Note that a state that is reloaded (due to parameter values changing, or `reload: true`) may be in both the\n * `exiting` and `entering` paths.\n */\n entering: PathNode[];\n}\n\nexport type IHookRegistration = (matchCriteria: HookMatchCriteria, callback: HookFn, options?: HookRegOptions) => Function;\n\n/**\n * The signature for Transition Hooks.\n *\n * Transition hooks are callback functions that hook into the lifecycle of transitions.\n * As a transition runs, it reaches certain lifecycle events.\n * As each event occurs, the hooks which are registered for the event are called (in priority order).\n *\n * A transition hook may alter a Transition by returning a [[HookResult]].\n *\n * #### See:\n *\n * - [[IHookRegistry.onBefore]]\n * - [[IHookRegistry.onStart]]\n * - [[IHookRegistry.onFinish]]\n * - [[IHookRegistry.onSuccess]]\n * - [[IHookRegistry.onError]]\n *\n * @param transition the current [[Transition]]\n * @param injector (for ng1 or ng2 only) the injector service\n *\n * @returns a [[HookResult]] which may alter the transition\n *\n */\nexport interface TransitionHookFn {\n (transition: Transition): HookResult;\n}\n\n/**\n * The signature for Transition State Hooks.\n *\n * A function which hooks into a lifecycle event for a specific state.\n *\n * Transition State Hooks are callback functions that hook into the lifecycle events of specific states during a transition.\n * As a transition runs, it may exit some states, retain (keep) states, and enter states.\n * As each lifecycle event occurs, the hooks which are registered for the event and that state are called (in priority order).\n *\n * #### See:\n *\n * - [[IHookRegistry.onExit]]\n * - [[IHookRegistry.onRetain]]\n * - [[IHookRegistry.onEnter]]\n *\n * @param transition the current [[Transition]]\n * @param state the [[StateObject]] that the hook is bound to\n * @param injector (for ng1 or ng2 only) the injector service\n *\n * @returns a [[HookResult]] which may alter the transition\n */\nexport interface TransitionStateHookFn {\n (transition: Transition, state: StateDeclaration): HookResult;\n}\n\n/**\n * The signature for Transition onCreate Hooks.\n *\n * Transition onCreate Hooks are callbacks that allow customization or preprocessing of\n * a Transition before it is returned from [[TransitionService.create]]\n *\n * @param transition the [[Transition]] that was just created\n * @return a [[Transition]] which will then be returned from [[TransitionService.create]]\n */\nexport interface TransitionCreateHookFn {\n (transition: Transition): void;\n}\n\nexport type HookFn = (TransitionHookFn|TransitionStateHookFn|TransitionCreateHookFn);\n\n/**\n * The return value of a [[TransitionHookFn]] or [[TransitionStateHookFn]]\n *\n * When returned from a [[TransitionHookFn]] or [[TransitionStateHookFn]], these values alter the running [[Transition]]:\n *\n * - `false`: the transition will be cancelled.\n * - [[TargetState]]: the transition will be redirected to the new target state (see: [[StateService.target]])\n * - `Promise`: the transition will wait for the promise to resolve or reject\n * - If the promise is rejected (or resolves to `false`), the transition will be cancelled\n * - If the promise resolves to a [[TargetState]], the transition will be redirected\n * - If the promise resolves to anything else, the transition will resume\n * - Anything else: the transition will resume\n */\nexport type HookResult = (boolean | TargetState | void | Promise);\n\n/**\n * These options may be provided when registering a Transition Hook (such as `onStart`)\n */\nexport interface HookRegOptions {\n /**\n * Sets the priority of the registered hook\n *\n * Hooks of the same type (onBefore, onStart, etc) are invoked in priority order. A hook with a higher priority\n * is invoked before a hook with a lower priority.\n *\n * The default hook priority is 0\n */\n priority?: number;\n\n /**\n * Specifies what `this` is bound to during hook invocation.\n */\n bind?: any;\n\n /**\n * Limits the number of times that the hook will be invoked.\n * Once the hook has been invoked this many times, it is automatically deregistered.\n */\n invokeLimit?: number;\n}\n\n/**\n * This interface specifies the api for registering Transition Hooks. Both the\n * [[TransitionService]] and also the [[Transition]] object itself implement this interface.\n * Note: the Transition object only allows hooks to be registered before the Transition is started.\n */\nexport interface IHookRegistry {\n /** @hidden place to store the hooks */\n _registeredHooks: { [key: string]: RegisteredHook[] };\n\n /**\n * Registers a [[TransitionHookFn]], called *before a transition starts*.\n *\n * Registers a transition lifecycle hook, which is invoked before a transition even begins.\n * This hook can be useful to implement logic which prevents a transition from even starting, such\n * as authentication, redirection\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onBefore` hooks are invoked *before a Transition starts*.\n * No resolves have been fetched yet.\n * Each `onBefore` hook is invoked synchronously, in the same call stack as [[StateService.transitionTo]].\n * The registered `onBefore` hooks are invoked in priority order.\n *\n * Note: during the `onBefore` phase, additional hooks can be added to the specific [[Transition]] instance.\n * These \"on-the-fly\" hooks only affect the currently running transition..\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * If any hook modifies the transition *synchronously* (by throwing, returning `false`, or returning\n * a [[TargetState]]), the remainder of the hooks are skipped.\n * If a hook returns a promise, the remainder of the `onBefore` hooks are still invoked synchronously.\n * All promises are resolved, and processed asynchronously before the `onStart` phase of the Transition.\n *\n * ### Examples\n *\n * #### Default Substate\n *\n * This example redirects any transition from 'home' to 'home.dashboard'. This is commonly referred to as a\n * \"default substate\".\n *\n * @example\n * ```js\n * // ng2\n * transitionService.onBefore({ to: 'home' }, (trans: Transition) =>\n * trans.router.stateService.target(\"home.dashboard\"));\n * ```\n *\n * #### Data Driven Default Substate\n *\n * This example provides data-driven default substate functionality. It matches on a transition to any state\n * which has `defaultSubstate: \"some.sub.state\"` defined. See: [[Transition.to]] which returns the \"to state\"\n * definition.\n *\n * @example\n * ```js\n * // ng1\n * // state declaration\n * {\n * name: 'home',\n * template: '
',\n * defaultSubstate: 'home.dashboard'\n * }\n *\n * var criteria = {\n * to: function(state) {\n * return state.defaultSubstate != null;\n * }\n * }\n *\n * $transitions.onBefore(criteria, function(trans: Transition) {\n * var substate = trans.to().defaultSubstate;\n * return trans.router.stateService.target(substate);\n * });\n * ```\n *\n *\n * #### Require authentication\n *\n * This example cancels a transition to a state which requires authentication, if the user is not currently authenticated.\n *\n * This example assumes a state tree where all states which require authentication are children of a parent `'requireauth'` state.\n * This example assumes `MyAuthService` synchronously returns a boolean from `isAuthenticated()`.\n *\n * #### Example:\n * ```js\n * // ng1\n * $transitions.onBefore( { to: 'requireauth.**' }, function(trans) {\n * var myAuthService = trans.injector().get('MyAuthService');\n * // If isAuthenticated returns false, the transition is cancelled.\n * return myAuthService.isAuthenticated();\n * });\n * ```\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be invoked.\n * @returns a function which deregisters the hook.\n */\n onBefore(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionHookFn]], called when a transition starts.\n *\n * Registers a transition lifecycle hook, which is invoked as a transition starts running.\n * This hook can be useful to perform some asynchronous action before completing a transition.\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onStart` hooks are invoked asynchronously when the Transition starts running.\n * This happens after the `onBefore` phase is complete.\n * At this point, the Transition has not yet exited nor entered any states.\n * The registered `onStart` hooks are invoked in priority order.\n *\n * Note: A built-in `onStart` hook with high priority is used to fetch any eager resolve data.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * ### Example\n *\n * #### Login during transition\n *\n * This example intercepts any transition to a state which requires authentication, when the user is\n * not currently authenticated. It allows the user to authenticate asynchronously, then resumes the\n * transition. If the user did not authenticate successfully, it redirects to the \"guest\" state, which\n * does not require authentication.\n *\n * This example assumes:\n * - a state tree where all states which require authentication are children of a parent `'auth'` state.\n * - `MyAuthService.isAuthenticated()` synchronously returns a boolean.\n * - `MyAuthService.authenticate()` presents a login dialog, and returns a promise which is resolved\n * or rejected, whether or not the login attempt was successful.\n *\n * #### Example:\n * ```js\n * // ng1\n * $transitions.onStart( { to: 'auth.**' }, function(trans) {\n * var $state = trans.router.stateService;\n * var MyAuthService = trans.injector().get('MyAuthService');\n *\n * // If the user is not authenticated\n * if (!MyAuthService.isAuthenticated()) {\n *\n * // Then return a promise for a successful login.\n * // The transition will wait for this promise to settle\n *\n * return MyAuthService.authenticate().catch(function() {\n *\n * // If the authenticate() method failed for whatever reason,\n * // redirect to a 'guest' state which doesn't require auth.\n * return $state.target(\"guest\");\n * });\n * }\n * });\n * ```\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onStart(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionStateHookFn]], called when a specific state is entered.\n *\n * Registers a lifecycle hook, which is invoked (during a transition) when a specific state is being entered.\n *\n * Since this hook is run only when the specific state is being *entered*, it can be useful for\n * performing tasks when entering a submodule/feature area such as initializing a stateful service,\n * or for guarding access to a submodule/feature area.\n *\n * See [[TransitionStateHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * `onEnter` hooks generally specify `{ entering: 'somestate' }`.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onEnter` hooks are invoked when the Transition is entering a state.\n * States are entered after the `onRetain` phase is complete.\n * If more than one state is being entered, the parent state is entered first.\n * The registered `onEnter` hooks for a state are invoked in priority order.\n *\n * Note: A built-in `onEnter` hook with high priority is used to fetch lazy resolve data for states being entered.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * ### Inside a state declaration\n *\n * Instead of registering `onEnter` hooks using the [[TransitionService]], you may define an `onEnter` hook\n * directly on a state declaration (see: [[StateDeclaration.onEnter]]).\n *\n *\n * ### Examples\n *\n * #### Audit Log\n *\n * This example uses a service to log that a user has entered the admin section of an app.\n * This assumes that there are substates of the \"admin\" state, such as \"admin.users\", \"admin.pages\", etc.\n * @example\n * ```\n *\n * $transitions.onEnter({ entering: 'admin' }, function(transition, state) {\n * var AuditService = trans.injector().get('AuditService');\n * AuditService.log(\"Entered \" + state.name + \" module while transitioning to \" + transition.to().name);\n * }\n * ```\n *\n * #### Audit Log (inside a state declaration)\n *\n * The `onEnter` inside this state declaration is syntactic sugar for the previous Audit Log example.\n * ```\n * {\n * name: 'admin',\n * component: 'admin',\n * onEnter: function($transition$, $state$) {\n * var AuditService = $transition$.injector().get('AuditService');\n * AuditService.log(\"Entered \" + state.name + \" module while transitioning to \" + transition.to().name);\n * }\n * }\n * ```\n *\n * Note: A state declaration's `onEnter` function is injected for Angular 1 only.\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onEnter(matchCriteria: HookMatchCriteria, callback: TransitionStateHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionStateHookFn]], called when a specific state is retained/kept.\n *\n * Registers a lifecycle hook, which is invoked (during a transition) for\n * a specific state that was previously active will remain active (is not being entered nor exited).\n *\n * This hook is invoked when a state is \"retained\" or \"kept\".\n * It means the transition is coming *from* a substate of the retained state *to* a substate of the retained state.\n * This hook can be used to perform actions when the user moves from one substate to another, such as between steps in a wizard.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * `onRetain` hooks generally specify `{ retained: 'somestate' }`.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onRetain` hooks are invoked after any `onExit` hooks have been fired.\n * If more than one state is retained, the child states' `onRetain` hooks are invoked first.\n * The registered `onRetain` hooks for a state are invoked in priority order.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * ### Inside a state declaration\n *\n * Instead of registering `onRetain` hooks using the [[TransitionService]], you may define an `onRetain` hook\n * directly on a state declaration (see: [[StateDeclaration.onRetain]]).\n *\n * Note: A state declaration's `onRetain` function is injected for Angular 1 only.\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onRetain(matchCriteria: HookMatchCriteria, callback: TransitionStateHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionStateHookFn]], called when a specific state is exited.\n *\n * Registers a lifecycle hook, which is invoked (during a transition) when a specific state is being exited.\n *\n * Since this hook is run only when the specific state is being *exited*, it can be useful for\n * performing tasks when leaving a submodule/feature area such as cleaning up a stateful service,\n * or for preventing the user from leaving a state or submodule until some criteria is satisfied.\n *\n * See [[TransitionStateHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * `onExit` hooks generally specify `{ exiting: 'somestate' }`.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onExit` hooks are invoked when the Transition is exiting a state.\n * States are exited after any `onStart` phase is complete.\n * If more than one state is being exited, the child states are exited first.\n * The registered `onExit` hooks for a state are invoked in priority order.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * ### Inside a state declaration\n *\n * Instead of registering `onExit` hooks using the [[TransitionService]], you may define an `onExit` hook\n * directly on a state declaration (see: [[StateDeclaration.onExit]]).\n *\n * Note: A state declaration's `onExit` function is injected for Angular 1 only.\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onExit(matchCriteria: HookMatchCriteria, callback: TransitionStateHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionHookFn]], called *just before a transition finishes*.\n *\n * Registers a transition lifecycle hook, which is invoked just before a transition finishes.\n * This hook is a last chance to cancel or redirect a transition.\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onFinish` hooks are invoked after the `onEnter` phase is complete.\n * These hooks are invoked just before the transition is \"committed\".\n * Each hook is invoked in priority order.\n *\n * ### Return value\n *\n * The hook's return value can be used to pause, cancel, or redirect the current Transition.\n * See [[HookResult]] for more information.\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onFinish(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionHookFn]], called after a successful transition completed.\n *\n * Registers a transition lifecycle hook, which is invoked after a transition successfully completes.\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * `onSuccess` hooks are chained off the Transition's promise (see [[Transition.promise]]).\n * If the Transition is successful and its promise is resolved, then the `onSuccess` hooks are invoked.\n * Since these hooks are run after the transition is over, their return value is ignored.\n * The `onSuccess` hooks are invoked in priority order.\n *\n * ### Return value\n *\n * Since the Transition is already completed, the hook's return value is ignored\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onSuccess(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Registers a [[TransitionHookFn]], called after a transition has errored.\n *\n * Registers a transition lifecycle hook, which is invoked after a transition has been rejected for any reason.\n *\n * See [[TransitionHookFn]] for the signature of the function.\n *\n * The [[HookMatchCriteria]] is used to determine which Transitions the hook should be invoked for.\n * To match all Transitions, use an empty criteria object `{}`.\n *\n * ### Lifecycle\n *\n * The `onError` hooks are chained off the Transition's promise (see [[Transition.promise]]).\n * If a Transition fails, its promise is rejected and the `onError` hooks are invoked.\n * The `onError` hooks are invoked in priority order.\n *\n * Since these hooks are run after the transition is over, their return value is ignored.\n *\n * A transition \"errors\" if it was started, but failed to complete (for any reason).\n * A *non-exhaustive list* of reasons a transition can error:\n *\n * - A transition was cancelled because a new transition started while it was still running (`Transition superseded`)\n * - A transition was cancelled by a Transition Hook returning false\n * - A transition was redirected by a Transition Hook returning a [[TargetState]]\n * - A Transition Hook or resolve function threw an error\n * - A Transition Hook returned a rejected promise\n * - A resolve function returned a rejected promise\n *\n * To check the failure reason, inspect the return value of [[Transition.error]].\n *\n * Note: `onError` should be used for targeted error handling, or error recovery.\n * For simple catch-all error reporting, use [[StateService.defaultErrorHandler]].\n *\n * ### Return value\n *\n * Since the Transition is already completed, the hook's return value is ignored\n *\n * @param matchCriteria defines which Transitions the Hook should be invoked for.\n * @param callback the hook function which will be injected and invoked.\n * @returns a function which deregisters the hook.\n */\n onError(matchCriteria: HookMatchCriteria, callback: TransitionHookFn, options?: HookRegOptions): Function;\n\n /**\n * Returns all the registered hooks of a given `hookName` type\n *\n * #### Example:\n * ```\n * $transitions.getHooks(\"onEnter\")\n * ```\n */\n getHooks(hookName: string): RegisteredHook[];\n}\n\n/** A predicate type which tests if a [[StateObject]] passes some test. Returns a boolean. */\nexport type IStateMatch = Predicate;\n\n/**\n * This object is used to configure whether or not a Transition Hook is invoked for a particular transition,\n * based on the Transition's \"to state\" and \"from state\".\n *\n * Each property (`to`, `from`, `exiting`, `retained`, and `entering`) can be a state [[Glob]] string,\n * a boolean, or a function that takes a state and returns a boolean (see [[HookMatchCriterion]])\n *\n * All properties are optional. If any property is omitted, it is replaced with the value `true`, and always matches.\n * To match any transition, use an empty criteria object `{}`.\n *\n * #### Example:\n * ```js\n * // This matches a transition coming from the `parent` state and going to the `parent.child` state.\n * var match = {\n * to: 'parent',\n * from: 'parent.child'\n * }\n * ```\n *\n * #### Example:\n * ```js\n * // This matches a transition coming from any substate of `parent` and going directly to the `parent` state.\n * var match = {\n * to: 'parent',\n * from: 'parent.**'\n * }\n * ```\n *\n * #### Example:\n * ```js\n * // This matches a transition coming from any state and going to any substate of `mymodule`\n * var match = {\n * to: 'mymodule.**'\n * }\n * ```\n *\n * #### Example:\n * ```js\n * // This matches a transition coming from any state and going to any state that has `data.authRequired`\n * // set to a truthy value.\n * var match = {\n * to: function(state) {\n * return state.data != null && state.data.authRequired === true;\n * }\n * }\n * ```\n *\n * #### Example:\n * ```js\n * // This matches a transition that is exiting `parent.child`\n * var match = {\n * exiting: 'parent.child'\n * }\n * ```\n */\nexport interface HookMatchCriteria {\n [key: string]: HookMatchCriterion | undefined;\n\n /** A [[HookMatchCriterion]] to match the destination state */\n to?: HookMatchCriterion;\n /** A [[HookMatchCriterion]] to match the original (from) state */\n from?: HookMatchCriterion;\n /** A [[HookMatchCriterion]] to match any state that would be exiting */\n exiting?: HookMatchCriterion;\n /** A [[HookMatchCriterion]] to match any state that would be retained */\n retained?: HookMatchCriterion;\n /** A [[HookMatchCriterion]] to match any state that would be entering */\n entering?: HookMatchCriterion;\n}\n\nexport interface IMatchingNodes {\n [key: string]: PathNode[];\n\n to: PathNode[];\n from: PathNode[];\n exiting: PathNode[];\n retained: PathNode[];\n entering: PathNode[];\n}\n\n/** @hidden */\nexport interface RegisteredHooks {\n [key: string]: RegisteredHook[];\n}\n\n/** @hidden */\nexport interface PathTypes {\n [key: string]: PathType;\n\n to: PathType;\n from: PathType;\n exiting: PathType;\n retained: PathType;\n entering: PathType;\n}\n\n/** @hidden */\nexport interface PathType {\n name: string;\n scope: TransitionHookScope;\n}\n\n/**\n * Hook Criterion used to match a transition.\n *\n * A [[Glob]] string that matches the name of a state.\n *\n * Or, a function with the signature `function(state) { return matches; }`\n * which should return a boolean to indicate if a state matches.\n *\n * Or, `true` to always match\n */\nexport type HookMatchCriterion = (string|IStateMatch|boolean);\n\nexport enum TransitionHookPhase { CREATE, BEFORE, RUN, SUCCESS, ERROR }\nexport enum TransitionHookScope { TRANSITION, STATE }\n", "/**\n * @coreapi\n * @module state\n */ /** for typedoc */\n\nimport { StateDeclaration, StateOrName, TargetStateDef } from './interface';\nimport { TransitionOptions } from '../transition/interface';\nimport { StateObject } from './stateObject';\nimport { isString } from '../common/predicates';\nimport { stringify } from '../common/strings';\nimport { extend } from '../common';\nimport { StateRegistry } from './stateRegistry';\nimport { RawParams } from '../params';\n\n/**\n * Encapsulate the target (destination) state/params/options of a [[Transition]].\n *\n * This class is frequently used to redirect a transition to a new destination.\n *\n * See:\n *\n * - [[HookResult]]\n * - [[TransitionHookFn]]\n * - [[TransitionService.onStart]]\n *\n * To create a `TargetState`, use [[StateService.target]].\n *\n * ---\n *\n * This class wraps:\n *\n * 1) an identifier for a state\n * 2) a set of parameters\n * 3) and transition options\n * 4) the registered state object (the [[StateDeclaration]])\n *\n * Many UI-Router APIs such as [[StateService.go]] take a [[StateOrName]] argument which can\n * either be a *state object* (a [[StateDeclaration]] or [[StateObject]]) or a *state name* (a string).\n * The `TargetState` class normalizes those options.\n *\n * A `TargetState` may be valid (the state being targeted exists in the registry)\n * or invalid (the state being targeted is not registered).\n */\nexport class TargetState {\n private _definition: StateObject;\n private _params: RawParams;\n private _options: TransitionOptions;\n\n /** Returns true if the object has a state property that might be a state or state name */\n static isDef = (obj): obj is TargetStateDef =>\n obj && obj.state && (isString(obj.state) || isString(obj.state.name));\n\n /**\n * The TargetState constructor\n *\n * Note: Do not construct a `TargetState` manually.\n * To create a `TargetState`, use the [[StateService.target]] factory method.\n *\n * @param _stateRegistry The StateRegistry to use to look up the _definition\n * @param _identifier An identifier for a state.\n * Either a fully-qualified state name, or the object used to define the state.\n * @param _params Parameters for the target state\n * @param _options Transition options.\n *\n * @internalapi\n */\n constructor(\n private _stateRegistry: StateRegistry,\n private _identifier: StateOrName,\n _params?: RawParams,\n _options?: TransitionOptions,\n ) {\n this._identifier = _identifier;\n this._params = extend({}, _params || {});\n this._options = extend({}, _options || {});\n this._definition = _stateRegistry.matcher.find(_identifier, this._options.relative);\n }\n\n /** The name of the state this object targets */\n name(): string {\n return this._definition && this._definition.name || this._identifier;\n }\n\n /** The identifier used when creating this TargetState */\n identifier(): StateOrName {\n return this._identifier;\n }\n\n /** The target parameter values */\n params(): RawParams {\n return this._params;\n }\n\n /** The internal state object (if it was found) */\n $state(): StateObject {\n return this._definition;\n }\n\n /** The internal state declaration (if it was found) */\n state(): StateDeclaration {\n return this._definition && this._definition.self;\n }\n\n /** The target options */\n options() {\n return this._options;\n }\n\n /** True if the target state was found */\n exists(): boolean {\n return !!(this._definition && this._definition.self);\n }\n\n /** True if the object is valid */\n valid(): boolean {\n return !this.error();\n }\n\n /** If the object is invalid, returns the reason why */\n error(): string {\n const base = this.options().relative;\n if (!this._definition && !!base) {\n const stateName = base.name ? base.name : base;\n return `Could not resolve '${this.name()}' from state '${stateName}'`;\n }\n if (!this._definition)\n return `No such state '${this.name()}'`;\n if (!this._definition.self)\n return `State '${this.name()}' has an invalid definition`;\n }\n\n toString() {\n return `'${this.name()}'${stringify(this.params())}`;\n }\n\n /**\n * Returns a copy of this TargetState which targets a different state.\n * The new TargetState has the same parameter values and transition options.\n *\n * @param state The new state that should be targeted\n */\n withState(state: StateOrName): TargetState {\n return new TargetState(this._stateRegistry, state, this._params, this._options);\n }\n\n /**\n * Returns a copy of this TargetState, using the specified parameter values.\n *\n * @param params the new parameter values to use\n * @param replace When false (default) the new parameter values will be merged with the current values.\n * When true the parameter values will be used instead of the current values.\n */\n withParams(params: RawParams, replace = false): TargetState {\n const newParams: RawParams = replace ? params : extend({}, this._params, params);\n return new TargetState(this._stateRegistry, this._identifier, newParams, this._options);\n }\n\n /**\n * Returns a copy of this TargetState, using the specified Transition Options.\n *\n * @param options the new options to use\n * @param replace When false (default) the new options will be merged with the current options.\n * When true the options will be used instead of the current options.\n */\n withOptions(options: TransitionOptions, replace = false): TargetState {\n const newOpts = replace ? options : extend({}, this._options, options);\n return new TargetState(this._stateRegistry, this._identifier, this._params, newOpts);\n }\n}\n", @@ -116,7 +116,7 @@ "/**\n * @coreapi\n * @module core\n */ /** */\nimport { StateParams } from './params/stateParams';\nimport { StateDeclaration } from './state/interface';\nimport { StateObject } from './state/stateObject';\nimport { Transition } from './transition/transition';\nimport { Queue } from './common/queue';\nimport { Disposable } from './interface';\n\n/**\n * Global router state\n *\n * This is where we hold the global mutable state such as current state, current\n * params, current transition, etc.\n */\nexport class UIRouterGlobals implements Disposable {\n /**\n * Current parameter values\n *\n * The parameter values from the latest successful transition\n */\n params: StateParams = new StateParams();\n\n /**\n * Current state\n *\n * The to-state from the latest successful transition\n */\n current: StateDeclaration;\n\n /**\n * Current state (internal object)\n *\n * The to-state from the latest successful transition\n * @internalapi\n */\n $current: StateObject;\n\n /**\n * The current started/running transition.\n * This transition has reached at least the onStart phase, but is not yet complete\n */\n transition: Transition;\n\n /** @internalapi */\n lastStartedTransitionId = -1;\n\n /** @internalapi */\n transitionHistory = new Queue([], 1);\n\n /** @internalapi */\n successfulTransitions = new Queue([], 1);\n\n dispose() {\n this.transitionHistory.clear();\n this.successfulTransitions.clear();\n this.transition = null;\n }\n}\n", "/**\n * @coreapi\n * @module url\n */ /** */\n\nimport { UIRouter } from '../router';\nimport { LocationServices, notImplemented, LocationConfig } from '../common/coreservices';\nimport { noop, createProxyFunctions } from '../common/common';\nimport { UrlConfigApi, UrlSyncApi, UrlRulesApi, UrlParts, MatchResult } from './interface';\n\n/** @hidden */\nconst makeStub = (keys: string[]): any =>\n keys.reduce((acc, key) => (acc[key] = notImplemented(key), acc), { dispose: noop });\n\n/* tslint:disable:align */\n/** @hidden */ const locationServicesFns = ['url', 'path', 'search', 'hash', 'onChange'];\n/** @hidden */ const locationConfigFns = ['port', 'protocol', 'host', 'baseHref', 'html5Mode', 'hashPrefix'];\n/** @hidden */ const umfFns = ['type', 'caseInsensitive', 'strictMode', 'defaultSquashPolicy'];\n/** @hidden */ const rulesFns = ['sort', 'when', 'initial', 'otherwise', 'rules', 'rule', 'removeRule'];\n/** @hidden */ const syncFns = ['deferIntercept', 'listen', 'sync', 'match'];\n/* tslint:enable:align */\n\n/**\n * API for URL management\n */\nexport class UrlService implements LocationServices, UrlSyncApi {\n /** @hidden */\n static locationServiceStub: LocationServices = makeStub(locationServicesFns);\n /** @hidden */\n static locationConfigStub: LocationConfig = makeStub(locationConfigFns);\n\n /**\n * A nested API for managing URL rules and rewrites\n *\n * See: [[UrlRulesApi]] for details\n */\n rules: UrlRulesApi;\n\n /**\n * A nested API to configure the URL and retrieve URL information\n *\n * See: [[UrlConfigApi]] for details\n */\n config: UrlConfigApi;\n\n /** @hidden */\n private router: UIRouter;\n\n /** @hidden */\n constructor(router: UIRouter, lateBind = true) {\n this.router = router;\n this.rules = {} as any;\n this.config = {} as any;\n\n // proxy function calls from UrlService to the LocationService/LocationConfig\n const locationServices = () => router.locationService;\n createProxyFunctions(locationServices, this, locationServices, locationServicesFns, lateBind);\n\n const locationConfig = () => router.locationConfig;\n createProxyFunctions(locationConfig, this.config, locationConfig, locationConfigFns, lateBind);\n\n const umf = () => router.urlMatcherFactory;\n createProxyFunctions(umf, this.config, umf, umfFns);\n\n const urlRouter = () => router.urlRouter;\n createProxyFunctions(urlRouter, this.rules, urlRouter, rulesFns);\n createProxyFunctions(urlRouter, this, urlRouter, syncFns);\n }\n\n /** @inheritdoc */\n url(): string;\n /** @inheritdoc */\n url(newurl: string, replace?: boolean, state?): void;\n url(newurl?, replace?, state?): any { return; }\n /** @inheritdoc */\n path(): string { return; }\n /** @inheritdoc */\n search(): { [key: string]: any } { return; }\n /** @inheritdoc */\n hash(): string { return; }\n /** @inheritdoc */\n onChange(callback: Function): Function { return; }\n\n\n /**\n * Returns the current URL parts\n *\n * This method returns the current URL components as a [[UrlParts]] object.\n *\n * @returns the current url parts\n */\n parts(): UrlParts {\n return { path: this.path(), search: this.search(), hash: this.hash() };\n }\n\n dispose() { }\n\n /** @inheritdoc */\n sync(evt?) { return; }\n /** @inheritdoc */\n listen(enabled?: boolean): Function { return; }\n /** @inheritdoc */\n deferIntercept(defer?: boolean) { return; }\n /** @inheritdoc */\n match(urlParts: UrlParts): MatchResult { return; }\n\n}\n", "/**\n * @coreapi\n * @module core\n */ /** */\nimport { UrlMatcherFactory } from './url/urlMatcherFactory';\nimport { UrlRouter } from './url/urlRouter';\nimport { TransitionService } from './transition/transitionService';\nimport { ViewService } from './view/view';\nimport { StateRegistry } from './state/stateRegistry';\nimport { StateService } from './state/stateService';\nimport { UIRouterGlobals } from './globals';\nimport { UIRouterPlugin, Disposable } from './interface';\nimport { values, removeFrom } from './common/common';\nimport { isFunction } from './common/predicates';\nimport { UrlService } from './url/urlService';\nimport { LocationServices, LocationConfig } from './common/coreservices';\nimport { Trace, trace } from './common/trace';\n\n/** @hidden */\nlet _routerInstance = 0;\n\n/**\n * The master class used to instantiate an instance of UI-Router.\n *\n * UI-Router (for each specific framework) will create an instance of this class during bootstrap.\n * This class instantiates and wires the UI-Router services together.\n *\n * After a new instance of the UIRouter class is created, it should be configured for your app.\n * For instance, app states should be registered with the [[UIRouter.stateRegistry]].\n *\n * ---\n *\n * Normally the framework code will bootstrap UI-Router.\n * If you are bootstrapping UIRouter manually, tell it to monitor the URL by calling\n * [[UrlService.listen]] then [[UrlService.sync]].\n */\nexport class UIRouter {\n /** @hidden */ $id = _routerInstance++;\n /** @hidden */ _disposed = false;\n /** @hidden */ private _disposables: Disposable[] = [];\n\n /** Provides trace information to the console */\n trace: Trace = trace;\n\n /** Provides services related to ui-view synchronization */\n viewService = new ViewService();\n\n /** Global router state */\n globals: UIRouterGlobals = new UIRouterGlobals();\n\n /** Provides services related to Transitions */\n transitionService: TransitionService = new TransitionService(this);\n\n /**\n * Deprecated for public use. Use [[urlService]] instead.\n * @deprecated Use [[urlService]] instead\n */\n urlMatcherFactory: UrlMatcherFactory = new UrlMatcherFactory();\n\n /**\n * Deprecated for public use. Use [[urlService]] instead.\n * @deprecated Use [[urlService]] instead\n */\n urlRouter: UrlRouter = new UrlRouter(this);\n\n /** Provides a registry for states, and related registration services */\n stateRegistry: StateRegistry = new StateRegistry(this);\n\n /** Provides services related to states */\n stateService = new StateService(this);\n\n /** Provides services related to the URL */\n urlService: UrlService = new UrlService(this);\n\n /** @hidden plugin instances are registered here */\n private _plugins: { [key: string]: UIRouterPlugin } = {};\n\n\n /** Registers an object to be notified when the router is disposed */\n disposable(disposable: Disposable) {\n this._disposables.push(disposable);\n }\n\n /**\n * Disposes this router instance\n *\n * When called, clears resources retained by the router by calling `dispose(this)` on all\n * registered [[disposable]] objects.\n *\n * Or, if a `disposable` object is provided, calls `dispose(this)` on that object only.\n *\n * @param disposable (optional) the disposable to dispose\n */\n dispose(disposable?: any): void {\n if (disposable && isFunction(disposable.dispose)) {\n disposable.dispose(this);\n return undefined;\n }\n\n this._disposed = true;\n this._disposables.slice().forEach(d => {\n try {\n typeof d.dispose === 'function' && d.dispose(this);\n removeFrom(this._disposables, d);\n } catch (ignored) {}\n });\n }\n\n /**\n * Creates a new `UIRouter` object\n *\n * @param locationService a [[LocationServices]] implementation\n * @param locationConfig a [[LocationConfig]] implementation\n * @internalapi\n */\n constructor(\n public locationService: LocationServices = UrlService.locationServiceStub,\n public locationConfig: LocationConfig = UrlService.locationConfigStub,\n ) {\n\n this.viewService._pluginapi._rootViewContext(this.stateRegistry.root());\n this.globals.$current = this.stateRegistry.root();\n this.globals.current = this.globals.$current.self;\n\n this.disposable(this.globals);\n this.disposable(this.stateService);\n this.disposable(this.stateRegistry);\n this.disposable(this.transitionService);\n this.disposable(this.urlRouter);\n this.disposable(locationService);\n this.disposable(locationConfig);\n }\n\n /** Add plugin (as ES6 class) */\n plugin(plugin: { new(router: UIRouter, options?: any): T }, options?: any): T;\n /** Add plugin (as javascript constructor function) */\n plugin(plugin: { (router: UIRouter, options?: any): void }, options?: any): T;\n /** Add plugin (as javascript factory function) */\n plugin(plugin: PluginFactory, options?: any): T;\n /**\n * Adds a plugin to UI-Router\n *\n * This method adds a UI-Router Plugin.\n * A plugin can enhance or change UI-Router behavior using any public API.\n *\n * #### Example:\n * ```js\n * import { MyCoolPlugin } from \"ui-router-cool-plugin\";\n *\n * var plugin = router.addPlugin(MyCoolPlugin);\n * ```\n *\n * ### Plugin authoring\n *\n * A plugin is simply a class (or constructor function) which accepts a [[UIRouter]] instance and (optionally) an options object.\n *\n * The plugin can implement its functionality using any of the public APIs of [[UIRouter]].\n * For example, it may configure router options or add a Transition Hook.\n *\n * The plugin can then be published as a separate module.\n *\n * #### Example:\n * ```js\n * export class MyAuthPlugin implements UIRouterPlugin {\n * constructor(router: UIRouter, options: any) {\n * this.name = \"MyAuthPlugin\";\n * let $transitions = router.transitionService;\n * let $state = router.stateService;\n *\n * let authCriteria = {\n * to: (state) => state.data && state.data.requiresAuth\n * };\n *\n * function authHook(transition: Transition) {\n * let authService = transition.injector().get('AuthService');\n * if (!authService.isAuthenticated()) {\n * return $state.target('login');\n * }\n * }\n *\n * $transitions.onStart(authCriteria, authHook);\n * }\n * }\n * ```\n *\n * @param plugin one of:\n * - a plugin class which implements [[UIRouterPlugin]]\n * - a constructor function for a [[UIRouterPlugin]] which accepts a [[UIRouter]] instance\n * - a factory function which accepts a [[UIRouter]] instance and returns a [[UIRouterPlugin]] instance\n * @param options options to pass to the plugin class/factory\n * @returns the registered plugin instance\n */\n plugin(plugin: any, options: any = {}): T {\n const pluginInstance = new plugin(this, options);\n if (!pluginInstance.name) throw new Error('Required property `name` missing on plugin: ' + pluginInstance);\n this._disposables.push(pluginInstance);\n return this._plugins[pluginInstance.name] = pluginInstance;\n }\n\n /**\n * Returns registered plugins\n *\n * Returns the registered plugin of the given `pluginName`.\n * If no `pluginName` is given, returns all registered plugins\n *\n * @param pluginName (optional) the name of the plugin to get\n * @return the named plugin (undefined if not found), or all plugins (if `pluginName` is omitted)\n */\n getPlugin(pluginName: string): UIRouterPlugin;\n getPlugin(): UIRouterPlugin[];\n getPlugin(pluginName?: string): UIRouterPlugin|UIRouterPlugin[] {\n return pluginName ? this._plugins[pluginName] : values(this._plugins);\n }\n}\n\n/** @internalapi */\nexport type PluginFactory = (router: UIRouter, options?: any) => T;\n", - "/** @module hooks */ /** */\nimport { Transition } from '../transition/transition';\nimport { UIRouter } from '../router';\nimport { TransitionService } from '../transition/transitionService';\nimport { Resolvable } from '../resolve';\nimport { extend, inArray, map, mapObj, unnestR, values } from '../common';\nimport { PathNode } from '../path';\nimport { TreeChanges } from \"../transition\";\n\nfunction addCoreResolvables(trans: Transition) {\n trans.addResolvable(Resolvable.fromData(UIRouter, trans.router), '');\n trans.addResolvable(Resolvable.fromData(Transition, trans), '');\n trans.addResolvable(Resolvable.fromData('$transition$', trans), '');\n trans.addResolvable(Resolvable.fromData('$stateParams', trans.params()), '');\n\n trans.entering().forEach(state => {\n trans.addResolvable(Resolvable.fromData('$state$', state), state);\n });\n}\n\nexport const registerAddCoreResolvables = (transitionService: TransitionService) =>\n transitionService.onCreate({}, addCoreResolvables);\n\nconst TRANSITION_TOKENS = ['$transition$', Transition];\nconst isTransition = inArray(TRANSITION_TOKENS);\n\n// References to Transition in the treeChanges pathnodes makes all\n// previous Transitions reachable in memory, causing a memory leak\n// This function removes resolves for '$transition$' and `Transition` from the treeChanges.\n// Do not use this on current transitions, only on old ones.\nexport const treeChangesCleanup = (trans: Transition) => {\n // If the resolvable is a Transition, return a new resolvable with null data\n const replaceTransitionWithNull = (r: Resolvable): Resolvable =>\n isTransition(r.token) ? Resolvable.fromData(r.token, null) : r;\n\n const cleanPath = (path: PathNode[]) => path.map((node: PathNode) => {\n const resolvables = node.resolvables.map(replaceTransitionWithNull);\n return extend(node.clone(), { resolvables });\n });\n\n const treeChanges: TreeChanges = trans.treeChanges();\n mapObj(treeChanges, cleanPath, treeChanges);\n};\n", + "/** @module hooks */ /** */\nimport { Transition } from '../transition/transition';\nimport { UIRouter } from '../router';\nimport { TransitionService } from '../transition/transitionService';\nimport { Resolvable } from '../resolve';\nimport { extend, inArray, map, mapObj, uniqR, unnestR, values } from '../common';\nimport { PathNode } from '../path';\nimport { TreeChanges } from \"../transition\";\n\nfunction addCoreResolvables(trans: Transition) {\n trans.addResolvable(Resolvable.fromData(UIRouter, trans.router), '');\n trans.addResolvable(Resolvable.fromData(Transition, trans), '');\n trans.addResolvable(Resolvable.fromData('$transition$', trans), '');\n trans.addResolvable(Resolvable.fromData('$stateParams', trans.params()), '');\n\n trans.entering().forEach(state => {\n trans.addResolvable(Resolvable.fromData('$state$', state), state);\n });\n}\n\nexport const registerAddCoreResolvables = (transitionService: TransitionService) =>\n transitionService.onCreate({}, addCoreResolvables);\n\nconst TRANSITION_TOKENS = ['$transition$', Transition];\nconst isTransition = inArray(TRANSITION_TOKENS);\n\n// References to Transition in the treeChanges pathnodes makes all\n// previous Transitions reachable in memory, causing a memory leak\n// This function removes resolves for '$transition$' and `Transition` from the treeChanges.\n// Do not use this on current transitions, only on old ones.\nexport const treeChangesCleanup = (trans: Transition) => {\n const nodes = values(trans.treeChanges()).reduce(unnestR, []).reduce(uniqR, []);\n\n // If the resolvable is a Transition, return a new resolvable with null data\n const replaceTransitionWithNull = (r: Resolvable): Resolvable => {\n return isTransition(r.token) ? Resolvable.fromData(r.token, null) : r;\n };\n\n nodes.forEach((node: PathNode) => {\n node.resolvables = node.resolvables.map(replaceTransitionWithNull);\n });\n};\n", "/** @module hooks */ /** */\nimport { isString, isFunction } from '../common/predicates';\nimport { Transition } from '../transition/transition';\nimport { services } from '../common/coreservices';\nimport { TargetState } from '../state/targetState';\nimport { TransitionService } from '../transition/transitionService';\nimport { TransitionHookFn } from '../transition/interface';\n\n/**\n * A [[TransitionHookFn]] that redirects to a different state or params\n *\n * Registered using `transitionService.onStart({ to: (state) => !!state.redirectTo }, redirectHook);`\n *\n * See [[StateDeclaration.redirectTo]]\n */\nconst redirectToHook: TransitionHookFn = (trans: Transition) => {\n const redirect = trans.to().redirectTo;\n if (!redirect) return;\n\n const $state = trans.router.stateService;\n\n function handleResult(result: any) {\n if (!result) return;\n if (result instanceof TargetState) return result;\n if (isString(result)) return $state.target( result, trans.params(), trans.options());\n if (result['state'] || result['params'])\n return $state.target(result['state'] || trans.to(), result['params'] || trans.params(), trans.options());\n }\n\n if (isFunction(redirect)) {\n return services.$q.when(redirect(trans)).then(handleResult);\n }\n return handleResult(redirect);\n};\n\nexport const registerRedirectToHook = (transitionService: TransitionService) =>\n transitionService.onStart({ to: (state) => !!state.redirectTo }, redirectToHook);\n", "/** @module hooks */\n/** for typedoc */\nimport { TransitionStateHookFn } from '../transition/interface';\nimport { Transition } from '../transition/transition';\nimport { TransitionService } from '../transition/transitionService';\nimport { StateDeclaration } from '../state/interface';\nimport { StateObject } from '../state/stateObject';\n\n/**\n * A factory which creates an onEnter, onExit or onRetain transition hook function\n *\n * The returned function invokes the (for instance) state.onEnter hook when the\n * state is being entered.\n *\n * @hidden\n */\nfunction makeEnterExitRetainHook(hookName: string): TransitionStateHookFn {\n return (transition: Transition, state: StateDeclaration) => {\n const _state: StateObject = state.$$state();\n const hookFn: TransitionStateHookFn = _state[hookName];\n return hookFn(transition, state);\n };\n}\n\n/**\n * The [[TransitionStateHookFn]] for onExit\n *\n * When the state is being exited, the state's .onExit function is invoked.\n *\n * Registered using `transitionService.onExit({ exiting: (state) => !!state.onExit }, onExitHook);`\n *\n * See: [[IHookRegistry.onExit]]\n */\nconst onExitHook: TransitionStateHookFn = makeEnterExitRetainHook('onExit');\nexport const registerOnExitHook = (transitionService: TransitionService) =>\n transitionService.onExit({ exiting: state => !!state.onExit }, onExitHook);\n\n/**\n * The [[TransitionStateHookFn]] for onRetain\n *\n * When the state was already entered, and is not being exited or re-entered, the state's .onRetain function is invoked.\n *\n * Registered using `transitionService.onRetain({ retained: (state) => !!state.onRetain }, onRetainHook);`\n *\n * See: [[IHookRegistry.onRetain]]\n */\nconst onRetainHook: TransitionStateHookFn = makeEnterExitRetainHook('onRetain');\nexport const registerOnRetainHook = (transitionService: TransitionService) =>\n transitionService.onRetain({ retained: state => !!state.onRetain }, onRetainHook);\n\n/**\n * The [[TransitionStateHookFn]] for onEnter\n *\n * When the state is being entered, the state's .onEnter function is invoked.\n *\n * Registered using `transitionService.onEnter({ entering: (state) => !!state.onEnter }, onEnterHook);`\n *\n * See: [[IHookRegistry.onEnter]]\n */\nconst onEnterHook: TransitionStateHookFn = makeEnterExitRetainHook('onEnter');\nexport const registerOnEnterHook = (transitionService: TransitionService) =>\n transitionService.onEnter({ entering: state => !!state.onEnter }, onEnterHook);\n\n", "/** @module hooks */\n/** for typedoc */\nimport { noop } from '../common/common';\nimport { Transition } from '../transition/transition';\nimport { ResolveContext } from '../resolve/resolveContext';\nimport { TransitionStateHookFn, TransitionHookFn } from '../transition/interface';\nimport { TransitionService } from '../transition/transitionService';\nimport { val } from '../common/hof';\nimport { StateDeclaration } from '../state/interface';\n\nexport const RESOLVE_HOOK_PRIORITY = 1000;\n\n/**\n * A [[TransitionHookFn]] which resolves all EAGER Resolvables in the To Path\n *\n * Registered using `transitionService.onStart({}, eagerResolvePath, { priority: 1000 });`\n *\n * When a Transition starts, this hook resolves all the EAGER Resolvables, which the transition then waits for.\n *\n * See [[StateDeclaration.resolve]]\n */\nconst eagerResolvePath: TransitionHookFn = (trans: Transition) =>\n new ResolveContext(trans.treeChanges().to)\n .resolvePath('EAGER', trans)\n .then(noop);\n\nexport const registerEagerResolvePath = (transitionService: TransitionService) =>\n transitionService.onStart({}, eagerResolvePath, { priority: RESOLVE_HOOK_PRIORITY });\n\n/**\n * A [[TransitionHookFn]] which resolves all LAZY Resolvables for the state (and all its ancestors) in the To Path\n *\n * Registered using `transitionService.onEnter({ entering: () => true }, lazyResolveState, { priority: 1000 });`\n *\n * When a State is being entered, this hook resolves all the Resolvables for this state, which the transition then waits for.\n *\n * See [[StateDeclaration.resolve]]\n */\nconst lazyResolveState: TransitionStateHookFn = (trans: Transition, state: StateDeclaration) =>\n new ResolveContext(trans.treeChanges().to)\n .subContext(state.$$state())\n .resolvePath('LAZY', trans)\n .then(noop);\n\nexport const registerLazyResolveState = (transitionService: TransitionService) =>\n transitionService.onEnter({ entering: val(true) }, lazyResolveState, { priority: RESOLVE_HOOK_PRIORITY });\n\n\n/**\n * A [[TransitionHookFn]] which resolves any dynamically added (LAZY or EAGER) Resolvables.\n *\n * Registered using `transitionService.onFinish({}, eagerResolvePath, { priority: 1000 });`\n *\n * After all entering states have been entered, this hook resolves any remaining Resolvables.\n * These are typically dynamic resolves which were added by some Transition Hook using [[Transition.addResolvable]].\n *\n * See [[StateDeclaration.resolve]]\n */\nconst resolveRemaining: TransitionHookFn = (trans: Transition) =>\n new ResolveContext(trans.treeChanges().to)\n .resolvePath('LAZY', trans)\n .then(noop);\n\nexport const registerResolveRemaining = (transitionService: TransitionService) =>\n transitionService.onFinish({}, resolveRemaining, { priority: RESOLVE_HOOK_PRIORITY });\n", @@ -1685,5 +1685,5 @@ "$anchorScroll", "scrollIntoView" ], - "mappings": ";;;;;;;;;;kPAMA,IAAMA,EAAiBC,QAEVC,EAAMC,GAAkBC,SAAyBD,EAAiBH,EC4C/E,WAAsBK,GACpB,IAAMC,KAAkBC,MAAMC,MAAMC,WAAY,IAC1CC,EAAmBL,EAAGM,OAS5B,OAPA,WAAiBC,GACf,OAAIA,EAAKD,QAAUD,EACVL,EAAGG,MAAM,KAAMI,GACjB,WACL,OAAOC,EAAQD,EAAKE,UAAUP,MAAMC,MAAMC,cAGvCI,CAAQP,GAWjB,aACE,IAAMM,EAAOH,UACPM,EAAQH,EAAKD,OAAS,EAC5B,OAAO,WAEL,IADA,IAAIK,EAAID,EAAOE,EAASL,EAAKG,GAAOP,MAAMU,KAAMT,WACzCO,KAAKC,EAASL,EAAKI,GAAGG,KAAKD,KAAMD,GACxC,OAAOA,GAUX,iBAAqB,aAAAG,mBAAAA,IAAAC,kBACnB,OAAOC,EAAQd,MAAM,QAASD,MAAMY,KAAKV,WAAWc,WAStD,IAAaC,EAAO,SAACC,GACjB,OAAA,SAACC,GAAa,OAAAA,GAAOA,EAAID,KAShBE,EAASC,EAAM,SAACH,EAAcI,EAAWH,GAAa,OAAAA,GAAOA,EAAID,KAAUI,IAU3EC,EAAQ,SAACL,GAClB,OAAAM,EAAKvB,MAAM,KAAMiB,EAAKO,MAAM,KAAKC,IAAIT,KAM5BU,EAA8C,SAAC7B,GACxD,OAAA,eAAC,aAAAe,mBAAAA,IAAAR,kBAAmB,OAACP,EAAGG,MAAM,KAAMI,KAMxC,WAAoBuB,EAAqBC,GACvC,OAAO,eAAC,aAAAhB,mBAAAA,IAAAR,kBAAmB,OAAAuB,EAAI3B,MAAM,KAAMI,IAASwB,EAAI5B,MAAM,KAAMI,IAOtE,WAAmBuB,EAAqBC,GACtC,OAAO,eAAC,aAAAhB,mBAAAA,IAAAR,kBAAmB,OAAAuB,EAAI3B,MAAM,KAAMI,IAASwB,EAAI5B,MAAM,KAAMI,IAStE,IAAayB,EAAM,SAACF,GAChB,OAAA,SAACG,GAAe,OAAAA,EAAIC,OAAO,SAACC,EAAGC,GAAM,OAAAD,KAAOL,EAAIM,KAAI,KAG3CC,EAAM,SAACP,GAChB,OAAA,SAACG,GAAe,OAAAA,EAAIC,OAAO,SAACC,EAAGC,GAAM,OAAAD,KAAOL,EAAIM,KAAI,KAG3CE,EAAK,SAAKC,GACnB,OAAA,SAAClB,GACG,OAAQ,MAAPA,GAAeA,EAAImB,cAAgBD,GAAQlB,aAAekB,IAGtDE,EAAoC,SAACC,GAAe,OAAA,SAACC,GAC9D,OAAAD,IAAUC,IAGDC,EAAM,SAAKC,GAAS,OAAA,WAAM,OAAAA,IAMvC,WAAuBC,EAAgBvC,GACrC,OAAO,SAACc,GACJ,OAAAA,EAAIyB,GAAQ3C,MAAMkB,EAAKd,IA2C7B,WAAwBwC,GACtB,OAAO,SAASX,GACd,IAAK,IAAIzB,EAAI,EAAGA,EAAIoC,EAAOzC,OAAQK,IACjC,GAAIoC,EAAOpC,GAAG,GAAGyB,GAAI,OAAOW,EAAOpC,GAAG,GAAGyB,IC3K/C,iBAeE,WAAYY,GACVnC,KAAKmC,KAAOA,EACZnC,KAAKoC,KAAOD,EAAKrB,MAAM,KAEvB,IAAMuB,EAAerC,KAAKmC,KAAKrB,MAAM,KAChCC,IAAI,SAAAuB,GACH,MAAY,OAARA,EAAqB,qBACb,MAARA,EAAqB,WACA,MAAQA,IAChCC,KAAK,IAEZvC,KAAKwC,OAAS,IAAIC,OAAO,IAAMJ,EAAe,KAMlD,OA1BSK,KAAP,SAAUP,GACR,QAAS,SAASQ,KAAKR,IAIlBO,aAAP,SAAkBP,GAChB,OAAOO,EAAKjB,GAAGU,GAAQ,IAAIO,EAAKP,GAAQ,MAiB1CO,oBAAA,SAAQnC,GACN,OAAOP,KAAKwC,OAAOI,KAAK,IAAMrC,sBCwDhC,WAAYsC,GACV,OAAOC,EAAYC,OAAOF,OAuE9B,OA9FSC,SAAP,SAAcE,GACZA,EAAYF,EAAYG,aAAaD,GAAa,IAAIA,EAAcA,EAEpE,IAAME,EAAQC,EAAQA,EAAQH,EAAWF,EAAYM,YAMrD,OALAJ,EAAUK,QAAU,WAAM,OAAAH,GAC1BA,EAAMI,KAAON,EACbE,EAAMK,oBACJC,SAAUd,EAAKe,WAAWP,EAAM3C,OAE3B2C,GA4BTJ,eAAA,SAAGY,GACD,OAAO1D,OAAS0D,GAAO1D,KAAKsD,OAASI,GAAO1D,KAAK2D,QAAUD,GAO7DZ,gBAAA,WACE,KAAK9C,KAAK4D,QAAY5D,KAAK4D,kBAAkB5D,KAAK2B,aAAc,OAAO3B,KAAKO,KAC5E,IAAMA,EAAOP,KAAK4D,OAAOD,MACzB,OAAOpD,EAAOA,EAAO,IAAMP,KAAKO,KAAOP,KAAKO,MAQ9CuC,iBAAA,WACE,OAAO9C,KAAK4D,QAAU5D,KAAK4D,OAAOC,QAAU7D,MAY9C8C,uBAAA,SAAWgB,GAGT,QAFAA,EAAOC,GAASD,GAAQX,SAAS,EAAMa,aAAc,QAC9Bb,SAAWnD,KAAK4D,QAAU5D,KAAK4D,OAAOK,kBAC5CrE,OAAOsE,GAAOlE,KAAKmE,SAC/BC,OAAO,SAAAC,GAAS,OAACP,EAAKE,cAAgBF,EAAKE,aAAaM,eAAeD,EAAME,OAUpFzB,sBAAA,SAAUyB,EAAYT,GACpB,oBADoBA,MAEhB9D,KAAKwE,KAAOxE,KAAKwE,IAAIC,UAAUF,EAAIT,IACnCY,GAAKR,GAAOlE,KAAKmE,QAAS1D,EAAO,KAAM8D,KACvCT,EAAKX,SAAWnD,KAAK4D,QAAU5D,KAAK4D,OAAOa,UAAUF,IAI3DzB,qBAAA,WACE,OAAO9C,KAAK2D,OA/EPb,eAAe,SAACE,GACrB,OAAA2B,EAAW3B,KAA+C,IAAjCA,EAA2B,iBAG/CF,UAAU,SAACtC,GAChB,OAAAoE,EAASpE,EAAwB,0BC1H/BqE,EAAQC,OAAO1B,UAAU2B,SACzBC,EAAM,SAACC,GAAc,OAAA,SAAC1D,GAAW,kBAAc0D,IACxCC,EAAcF,EAAI,aAClBG,EAAYnE,EAAIkE,GAChBE,EAAS,SAACC,GAAW,OAAM,OAANA,GACrBC,EAAoBC,EAAGH,EAAQF,GAC/BP,EAA8CK,EAAI,YAClDQ,EAA0CR,EAAI,UAC9CS,EAAqCT,EAAI,UACzCJ,EAAW,SAACrD,GAAW,OAAM,OAANA,GAA2B,iBAANA,GAC5CmE,EAAUC,MAAMD,QAChBE,WAAwCrE,GAAW,MAAkB,kBAAlBsD,EAAM5E,KAAKsB,IAC9DsE,WAA4CtE,GAAW,MAAkB,oBAAlBsD,EAAM5E,KAAKsB,IAClEuE,EAAwChD,EAAYgD,QAQjE,WAA6B/D,GAC3B,GAAI2D,EAAQ3D,IAAQA,EAAItC,OAAQ,CAC9B,IAAMsG,EAAOhE,EAAI1C,MAAM,GAAI,GAAI2G,EAAOjE,EAAI1C,OAAO,GACjD,QAAS0G,EAAK3B,OAAOpD,EAAIyE,IAAWhG,QAAUuG,EAAK5B,OAAOpD,EAAI2D,IAAalF,QAE7E,OAAOkF,EAAW5C,GAQpB,IAAakE,EAA4CC,EAAItB,EAAU/D,EAAKP,EAAK,QAASqE,ICnC/EwB,EAAiB,SAACC,GAAmB,OAAA,WAC9C,MAAM,IAAIC,MAASD,mEAGfE,GACJC,QAAIC,EACJC,eAAWD,GCFA3C,EAA6B,iBAATP,MAAqBA,KAAKA,OAASA,MAAQA,MACvD,iBAAXoD,QAAuBA,OAAOA,SAAWA,QAAUA,aAAW1G,EAClEjB,EAAU8E,EAAK9E,YAER4H,EAAW5H,EAAQ4H,UAAYC,KAAKhG,MAAMiG,KAAKD,MAC/CE,EAAS/H,EAAQ+H,QAAUF,KAAKG,UAAUF,KAAKD,MAC/CI,EAAUjI,EAAQiI,SAsgB/B,SAAkBxG,EAAkByG,EAAwBC,GAC1D,GAAIxB,EAAQlF,GAAM,OAAOA,EAAIwG,QAAQC,EAAIC,GACzCpC,OAAOqC,KAAK3G,GAAKwG,QAAQ,SAAAI,GAAO,OAAAH,EAAGzG,EAAI4G,GAAMA,MAvgBlCC,EAASvC,OAAOwC,QAAUC,GAC1BC,EAASzI,EAAQyI,QAAUC,GACxC,WAAyBlG,GAAU,OAAOA,EAC1C,cA8FA,WAAqCmG,EAAkBC,EAAad,EAAgBe,EAAoBC,gBAAAA,MACtG,IAAMC,EAAe,SAAC7F,GAClB,OAAAyF,IAASzF,GAAQ4E,KAAKA,MAS1B,OAFAe,EAAUA,GAAW9C,OAAOqC,KAAKO,MAElBrG,OAAO,SAAC0G,EAAKxH,GAPH,IAAA0B,EASvB,OADA8F,EAAIxH,GAAQsH,GARW5F,EAQiB1B,EARP,WAEjC,OADAoH,EAAO1F,GAAU6F,EAAa7F,GACvB0F,EAAO1F,GAAQ3C,MAAM,KAAMC,aAMcuI,EAAavH,GACtDwH,GACNJ,GAQL,IAAaxE,EAAU,SAACS,EAAaoE,GACjC,OAAAX,EAAOvC,OAAO/B,OAAOa,GAASoE,IAGrBC,EAA2BvH,EAAMwH,GAG9C,WAAyBC,EAAO3H,GAC9B,OAA+B,IAAxB2H,EAAMC,QAAQ5H,GAOvB,IAAa6H,EAAiC3H,EAAM4H,IAGpD,YAA4BH,EAAO3H,GACjC,IAAM+H,EAAMJ,EAAMC,QAAQ5H,GAE1B,OADI+H,GAAO,GAAGJ,EAAMK,OAAOD,EAAK,GACzBJ,EAIT,IAAaM,GAAyB/H,EAAMgI,IAG5C,YAAwBtH,EAAKW,GAC3B,OAAQX,EAAIuH,KAAK5G,GAAMA,EAIzB,IAAa6G,GAAW,SAACC,GACrB,OAAAA,EAAUxJ,QAAQ2H,QAAQ,SAAA7H,GACV,mBAAPA,GAAqBA,IAC5BkJ,EAAWQ,EAAW1J,MAO5B,YAAyB2E,OAAM,aAAA5D,mBAAAA,IAAA4I,oBAC7B,IAAMC,EAAgBD,EAAalJ,WAAWS,UACxC2I,EAAc3B,EAAO/H,MAAM,KAAMyJ,GACvC,OAAO1B,KAAW2B,EAAaC,GAAKnF,MAAYgB,OAAOqC,KAAK6B,KAI9D,IAAaE,GAAS,SAACC,EAAWC,GAAc,OAAA/B,EAAO8B,EAAMC,IAS7D,YAA0BC,EAAoBC,GAC5C,IAAMC,KAEN,IAAK,IAAMC,KAAKH,EAAME,KAAM,CAC1B,GAAIF,EAAME,KAAKC,KAAOF,EAAOC,KAAKC,GAAI,MACtCD,EAAKZ,KAAKU,EAAME,KAAKC,IAEvB,OAAOD,EAcT,YAAqB/I,EAAUiJ,GAC7B,IAAMC,KACN,IAAK,IAAMC,KAASnJ,GACgB,IAA9BiJ,EAAUrB,QAAQuB,KACpBD,EAAQC,GAASnJ,EAAImJ,IAGzB,OAAOD,EAeT,YAAqBlJ,EAAUiJ,GAC7B,OAAO3E,OAAOqC,KAAK3G,GACd4D,OAAOpD,EAAIiH,EAAQwB,KACnBpI,OAAO,SAAC0G,EAAKX,GAAQ,OAACW,EAAIX,GAAO5G,EAAI4G,GAAMW,OAWlD,YAAsB6B,EAAiBC,GACrC,OAAO9I,GAAI6I,EAAkCtJ,EAAKuJ,IASpD,YAA0BD,EAAiBE,GACzC,IAAM1I,EAAMsE,EAAQkE,GAAa7J,EAAcqB,QACzC2I,EAAS3I,EAAM,SAAAG,GAAK,OAAAxB,EAAO4I,KAAKpH,IAAK,SAACA,EAAG6F,GAAQ,OAAArH,EAAOqH,GAAO7F,GAIrE,OAHAyF,EAAQ4C,EAAY,SAASR,EAAMtJ,GAC7BgK,EAASV,EAAMtJ,IAAIiK,EAAOX,EAAMtJ,KAE5BC,EASZ,YAAqB6J,EAAiBE,GACpC,IAAI/J,EAOJ,OALAiH,EAAQ4C,EAAY,SAASR,EAAMtJ,GAC7BC,GACA+J,EAASV,EAAMtJ,KAAIC,EAASqJ,KAG3BrJ,EAIT,IAAWiK,GAA+HjJ,GAK1I,YAAoB6I,EAAiBE,EAAenC,GAGlD,OAFAA,EAASA,IAAWjC,EAAQkE,UAC5B5C,EAAQ4C,EAAY,SAACR,EAAMtJ,GAAM,OAAA6H,EAAO7H,GAAKgK,EAASV,EAAMtJ,KACrD6H,EAaT,IAAazD,GAA0C,SAAC1D,GACpD,OAAAsE,OAAOqC,KAAK3G,GAAKO,IAAI,SAAAqG,GAAO,OAAA5G,EAAI4G,MAevB6C,GAAY,SAACd,EAAee,GAAc,OAAAf,GAAQe,GAelDC,GAAY,SAAChB,EAAee,GAAc,OAAAf,GAAQe,GAWlDE,GAAY,SAACjB,EAAae,GAAgB,OAAAf,EAAKvJ,OAAOsK,IAYtDG,GAAY,SAAClB,EAAae,GACnC,OAAAxE,EAAQwE,GAAQf,EAAKvJ,OAAOsK,EAAK7I,OAAOgJ,QAAiBC,GAAMnB,EAAMe,IAMzE,YAAsB9I,EAAYZ,GAEhC,OADAY,EAAIuH,KAAKnI,GACFY,EAIT,IAAamJ,GAAQ,SAAKxC,EAAUyC,GAChC,OAAAvC,EAAQF,EAAKyC,GAASzC,EAAMuC,GAAMvC,EAAKyC,IAY9BC,GAAY,SAACrJ,GAAe,OAAAA,EAAIC,OAAO+I,QAWvCM,GAAY,SAACtJ,GAAe,OAAAA,EAAIC,OAAOgJ,QAevCM,GAA4FC,GAiB5FC,GAAmFD,GAChG,YAAyBE,EAA0BC,GACjD,oBADiDA,oBAC1C,SAACvK,GACN,IAAMT,EAAS+K,EAAetK,GAC9B,IAAKT,EACH,MAAM,IAAIsG,MAAM1B,EAAWoG,GAAsBA,EAAQvK,GAAOuK,GAElE,OAAOhL,GAaX,IAAaiL,GAAQ,SAACxK,GAClB,OAAAsE,OAAOqC,KAAK3G,GAAKO,IAAI,SAAAqG,GAAO,OAAEA,EAAK5G,EAAI4G,OAgB3C,kBAA4B,aAAAlH,mBAAAA,IAAAR,kBAC1B,GAAoB,IAAhBA,EAAKD,OAAc,SAIvB,IAHA,IAAMwL,EAAcvL,EAAK2B,OAAO,SAAC6J,EAAK9J,GAAQ,OAAA+J,KAAKD,IAAI9J,EAAI3B,OAAQyL,IAAM,kBACnEnL,gBAEGD,GAGP,OAAQJ,EAAKD,QACX,KAAK,EAAGM,EAAO4I,MAAMjJ,EAAK,GAAGI,KAAM,MACnC,KAAK,EAAGC,EAAO4I,MAAMjJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,KAAM,MAC/C,KAAK,EAAGC,EAAO4I,MAAMjJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,KAAM,MAC3D,KAAK,EAAGC,EAAO4I,MAAMjJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,KAAM,MACvE,QACEC,EAAO4I,KAAKjJ,EAAKqB,IAAI,SAAAoH,GAAS,OAAAA,EAAMrI,QATjCA,EAAI,EAAGA,EAAImL,EAAanL,MAAxBA,GAaT,OAAOC,EAuBT,YAA2BoJ,EAAqBiC,GAC9C,IAAIhE,EAAavF,EAEjB,GADI6D,EAAQ0F,KAAehE,OAAKvF,SAC3B4D,EAAS2B,GAAM,MAAM,IAAIf,MAAM,oCAEpC,OADA8C,EAAK/B,GAAOvF,EACLsH,EAIT,YAAwB/H,GACtB,OAAOA,EAAI3B,QAAU2B,EAAIA,EAAI3B,OAAS,SAAM+G,EAM9C,YAAqB6E,EAAUC,GAG7B,OAFIA,GAAMxG,OAAOqC,KAAKmE,GAAMtE,QAAQ,SAAAI,GAAO,cAAOkE,EAAKlE,KAClDkE,IAAMA,MACJjE,EAAOiE,EAAMD,GAWtB,YAAwBE,GACtB,IAAK,IAAIzL,EAAI,EAAGA,EAAIP,UAAUE,OAAQK,IAAK,CACzC,IAAMU,EAAMjB,UAAUO,GACtB,GAAKU,EAGL,IAFA,IAAM2G,EAAOrC,OAAOqC,KAAK3G,GAEhBgL,EAAI,EAAGA,EAAIrE,EAAK1H,OAAQ+L,IAC/BD,EAAMpE,EAAKqE,IAAMhL,EAAI2G,EAAKqE,IAI9B,OAAOD,EAGT,YAAiBE,EAASC,GACxB,GAAID,IAAOC,EAAI,OAAO,EACtB,GAAW,OAAPD,GAAsB,OAAPC,EAAa,OAAO,EACvC,GAAID,GAAOA,GAAMC,GAAOA,EAAI,OAAO,EACnC,IAAMC,SAAYF,EAClB,GAAIE,WAD8BD,GACV,WAAPC,EAAiB,OAAO,EAEzC,IAqBiBC,EAAWC,EArBtBC,GAAOL,EAAIC,GACjB,GAAIvK,EAAIuE,EAAJvE,CAAa2K,GAAM,OAoBKD,EApBgBH,GAoB3BE,EApBuBH,GAqBjChM,SAAWoM,EAAGpM,QACdsM,GAAYH,EAAIC,GAAIxK,OAAO,SAACC,EAAG2D,GAAM,OAAA3D,GAAKmG,GAAQxC,EAAE,GAAIA,EAAE,MAAK,GArBtE,GAAI9D,EAAIyE,EAAJzE,CAAY2K,GAAM,OAAOL,EAAGO,YAAcN,EAAGM,UACjD,GAAI7K,EAAI0E,EAAJ1E,CAAc2K,GAAM,OAAOL,EAAG1G,aAAe2G,EAAG3G,WACpD,GAAI5D,EAAIwD,EAAJxD,CAAgB2K,GAAM,OAAO,EAGjC,IADoBnH,EAAYe,EAASE,EAAQC,GAClC9E,IAAIS,GAAKH,OAAO,SAACC,EAAGnC,GAAO,OAAAmC,KAAOnC,EAAG2M,KAAM,GAAQ,OAAO,EAEzE,IAAM3E,KACN,IAAK,IAAMC,KAAOqE,EAAI,CACpB,IAAKhE,GAAQgE,EAAGrE,GAAMsE,EAAGtE,IAAO,OAAO,EACvCD,EAAKC,IAAO,EAEd,IAAK,IAAMA,KAAOsE,EAChB,IAAKvE,EAAKC,GAAM,OAAO,EAGzB,OAAO,EAST,ICzkBY6E,GDykBCC,GAA2B,SAACC,GACrC,OAAAA,EAAQC,MAAM,SAAAC,GAAK,OAAA,KAAMF,GAChBG,GAAkB,SAACC,GAC5B,OAAAL,GAAyB5F,EAASC,GAAGiG,OAAOD,mBE1kB9C,WAAoBE,EAA0BC,gBAA1BD,mBAA0BC,QAA1B1M,YAAAyM,EAA0BzM,YAAA0M,EAHtC1M,wBACDA,aAAUyI,GAAOzI,KAAK2M,iBA6C/B,OAzCEC,oBAAA,SAAQxD,GACN,IAAMyD,EAAQ7M,KAAKyM,OAGnB,OAFAI,EAAMlE,KAAKS,GACPpJ,KAAK0M,QAAUG,EAAMpN,OAASO,KAAK0M,QAAQ1M,KAAK8M,QAC7C1D,GAGTwD,kBAAA,WACE,IAAMxD,EAAUpJ,KAAKyM,OAAOM,QAE5B,OADA/M,KAAK2M,gBAAgB3F,QAAQ,SAAA7H,GAAM,OAAAA,EAAGiK,KAC/BA,GAGTwD,oBAAA,WACE,GAAI5M,KAAKgN,OACP,OAAOhN,KAAKyM,OAAOjE,OAAO,EAAG,GAAG,IAGpCoE,kBAAA,WACE,IAAMK,EAAUjN,KAAKyM,OAErB,OADAzM,KAAKyM,UACEQ,GAGTL,iBAAA,WACE,OAAO5M,KAAKyM,OAAOhN,QAGrBmN,mBAAA,SAAOxD,GACL,IAAMb,EAAMvI,KAAKyM,OAAOrE,QAAQgB,GAChC,OAAOb,GAAO,GAAKvI,KAAKyM,OAAOjE,OAAOD,EAAK,GAAG,IAGhDqE,qBAAA,WACE,OAAO5M,KAAKyM,OAAOzM,KAAKyM,OAAOhN,OAAS,IAG1CmN,qBAAA,WACE,GAAI5M,KAAKgN,OACP,OAAOhN,KAAKyM,OAAO,UD3CbR,GAAAA,eAAAA,gDACMA,2BAAaA,2BAAaA,2BAAaA,uBAIzD,IAAI1H,GAAK,gBAkEP,WAAY2I,EAAcC,EAAkBC,GA/D5CpN,SAAMuE,KAgEJvE,KAAKkN,KAAOA,EACZlN,KAAKmN,QAAUA,EACfnN,KAAKoN,OAASA,EAclB,OAzESC,qBAAP,SAA0B7M,GACxB,OAAOA,GAA4B,mBAAbA,EAAI8M,MAAwB7L,EAAG4L,EAAH5L,CAAcjB,EAAI+M,uBAI/DF,aAAP,SAAkBD,EAAcI,GAC9B,IACMC,EAAY,IAAIJ,EAAUpB,aAAWyB,WAD3B,+DACgDN,GAIhE,OAHII,GAAWA,EAAQG,aACrBF,EAAUE,YAAa,GAElBF,GAIFJ,aAAP,SAAkBD,GAChB,OAAOC,EAAUO,WAAWR,GAAUO,YAAY,KAI7CN,UAAP,SAAeD,GAEb,OAAO,IAAIC,EAAUpB,aAAW4B,QADhB,6BACkCT,IAI7CC,UAAP,SAAeD,GAEb,OAAO,IAAIC,EAAUpB,aAAW6B,QADhB,6BACkCV,IAI7CC,UAAP,SAAeD,GAEb,OAAO,IAAIC,EAAUpB,aAAW8B,QADhB,kCACkCX,IAI7CC,UAAP,SAAeD,GAEb,OAAO,IAAIC,EAAUpB,aAAW+B,MADhB,yBACgCZ,IAY3CC,YAAP,SAAiBD,GACf,OAAO3L,EAAG4L,EAAH5L,CAAc2L,GAAUA,EAASC,EAAUY,QAAQb,IAS5DC,qBAAA,WACE,IAAsBa,EAEhBd,GAFgBc,EAEMlO,KAAKoN,SADxBc,EAAEnJ,WAAaD,OAAO1B,UAAU2B,SAAWmJ,EAAEnJ,WAAagC,GAAUmH,GAG7E,MAAO,kGAAgFd,OAGzFC,sBAAA,WACE,OAAOhG,EAAOiF,GAAgBtM,OAASuN,qBAAsBvN,aE7CjE,YAAuBmO,GACnB,IAAKA,EAAQ,MAAO,oBACpB,IAAMjL,EAAQiL,EAAOC,gBAAkBD,EAAOC,gBAAgB7N,MAAQ,SAAW,SACjF,MAAO,YAAY4N,EAAO5J,OAAM4J,EAAOE,UAASF,EAAOxK,SAAQwK,EAAO5N,SAAQ2C,OAWlF,YAAuBoL,GACrB,OAAO9I,EAAS8I,GAASC,WAASD,GAASC,WAASA,WAASD,IAI/D,IAmBYC,GAnBNC,GAAaC,SAASrL,UAAUyD,KAAK5G,KAAKyO,QAAQC,IAAKD,SAGvDE,GAAejK,EAAW+J,QAAQG,OAASH,QAAQG,MAAMhI,KAAK6H,SAAWF,GAAW3H,KAAK6H,UAgBnFH,GAAAA,aAAAA,wCACDA,iCAAYA,qBAAMA,yBAAQA,iCAIrC,ICquBYO,GACAC,GDtuBNC,GAAOpO,EAAM,OAGbqO,GAAOrO,EAAM,cAGbsO,GAAW,SAACC,GAAU,MAAA,eAAeH,GAAKG,OAAUF,GAAKE,kBAa7D,aAHQnP,iBAINA,KAAKoP,mBAAqB,EAkJ9B,OA9IUC,iBAAR,SAAaC,EAAkBC,GAA/B,WACOA,EAAW9P,SACd8P,EAAmBzK,OAAOqC,KAAKoH,YAC1BxN,IAAI,SAAAyO,GAAK,OAAAC,SAASD,EAAG,MACrBpL,OAAO,SAAAoL,GAAK,OAACE,MAAMF,KACnBzO,IAAI,SAAAqG,GAAO,OAAAmH,WAASnH,MAE3BmI,EAAWxO,IAAI4O,IAAe3I,QAAQ,SAAA4I,GAAY,OAAA1I,EAAK2I,SAASD,GAAYN,KAc9ED,mBAAA,eAAO,aAAAnP,mBAAAA,IAAAqP,kBAAwBvP,KAAK8P,MAAK,EAAMP,IAY/CF,oBAAA,eAAQ,aAAAnP,mBAAAA,IAAAqP,kBAAwBvP,KAAK8P,MAAK,EAAOP,IAWjDF,oBAAA,SAAQO,GACN,QAAS5P,KAAK6P,SAASF,GAAcC,KAIvCP,iCAAA,SAAqBF,GACdnP,KAAKsP,QAAQf,WAASwB,aAC3BrB,QAAQC,IAAOO,GAASC,oBAAuBpI,GAAUoI,KAI3DE,mCAAA,SAAuBF,GAChBnP,KAAKsP,QAAQf,WAASwB,aAC3BrB,QAAQC,IAAOO,GAASC,oBAAuBpI,GAAUoI,KAI3DE,gCAAA,SAAoBW,EAAsBb,EAAmB3B,GAC3D,GAAKxN,KAAKsP,QAAQf,WAAS0B,MAA3B,CACA,IAAMC,EAAQtP,EAAM,qBAANA,CAA4B4M,IAAY,WAClD2C,EAAUvP,EAAM,+BAANA,CAAsC4M,IAAY5M,EAAM,oBAANA,CAA2B4M,IAAY,UACnGjN,EAAO6P,GAAkBJ,EAAaK,eAAevG,UACzD4E,QAAQC,IAAOO,GAASC,kBAAqBe,eAAkBC,OAAYG,GAAU,IAAK/P,MAI5F8O,4BAAA,SAAgBkB,EAAwBpB,EAAmBqB,GACpDxQ,KAAKsP,QAAQf,WAAS0B,OAC3BvB,QAAQC,IAAOO,GAASC,4BAA+BmB,GAAU,IAAKvJ,GAAUwJ,MAIlFlB,6BAAA,SAAiB9F,EAAkBkH,EAAkBtB,GAC9CnP,KAAKsP,QAAQf,WAASmC,UAC3BhC,QAAQC,IAAOO,GAASC,0BAA6B5F,OAASkH,QAIhEpB,oCAAA,SAAwBsB,EAAwBxB,GACzCnP,KAAKsP,QAAQf,WAASmC,UAC3BhC,QAAQC,IAAOO,GAASC,mCAAsCwB,UAAkBL,GAAU,IAAKvJ,GAAU4J,EAAWC,SAItHvB,uBAAA,SAAWwB,EAAa1B,GACjBnP,KAAKsP,QAAQf,WAASwB,aAC3BrB,QAAQC,IAAOO,GAASC,oBAAuBpI,GAAUoI,gBAAmB0B,IAI9ExB,yBAAA,SAAayB,EAAyB3B,GAC/BnP,KAAKsP,QAAQf,WAASwB,aAC3BrB,QAAQC,IAAOO,GAASC,oBAAuBpI,GAAUoI,qBAAwB2B,EAAWvQ,OAI9F8O,6BAAA,SAAiBa,EAAea,EAAwB/I,gBAAAA,MACjDhI,KAAKsP,QAAQf,WAASyC,SAC3BtC,QAAQC,IAAI,YAAYsC,GAAU,GAAIf,OAAUgB,GAAaH,GAAY/I,IAI3EqH,qCAAA,SAAyB0B,EAAwBZ,GAC1CnQ,KAAKsP,QAAQf,WAASyC,SAC3BhR,KAAKmR,iBAAiB,WAAYJ,EAAU,kCAAkCZ,QAIhFd,4BAAA,SAAgB0B,EAAwBK,GACjCpR,KAAKsP,QAAQf,WAASyC,SAC3BhR,KAAKmR,iBAAiB,OAAQJ,EAAU,UAAUT,GAAU,IAAKc,KAInE/B,0BAAA,SAAcrE,GACZ,GAAKhL,KAAKsP,QAAQf,WAAS8C,YAA3B,CACA,IAAMC,EAAY,uBAEZC,EAAUvG,EAAMjK,IAAI,SAACyQ,SAAEC,WAAQC,eAC7BC,EAAMF,GAAUA,EAAO9N,IACvBiO,EAAMF,GAAiBA,EAAWG,SAASC,SAASvR,WAAUmR,EAAWG,SAASE,UACxF,aAAUT,GAAYK,EAAKK,EAJX,iCAIwBJ,MACvCK,KAAK,SAACC,EAAG5Q,GAAM,OAAC4Q,EAAEZ,IAAc,IAAIa,cAAc7Q,EAAEgQ,IAAc,MAErE1C,GAAa2C,KAIflC,kCAAA,SAAsBa,EAAewB,GAC9B1R,KAAKsP,QAAQf,WAAS8C,aAC3B3C,QAAQC,IAAI,eAAeuB,MAlMN,SAACwB,GACxB,IAAMU,EAAOV,EAAWG,SAClB3O,EAAQkP,EAAKN,SAASvR,MAAQ,SACpC,MAAO,SAASmR,EAAWW,cAAanP,gCAAmCkP,EAAKE,gBAAeF,EAAKG,yBA+L9DC,CAAiBd,KAIvDrC,wCAAA,SAA4Ba,EAAea,GACpC/Q,KAAKsP,QAAQf,WAAS8C,aAC3B3C,QAAQC,IAAI,eAAeuB,MAASgB,GAAaH,UAa/C0B,GAAQ,IAAIpD,ICojBNP,GAAAA,wBAAAA,iDAA8BA,yBAAQA,mBAAKA,2BAASA,wBACpDC,GAAAA,wBAAAA,yDAAkCA,uBCxxB9C,kBAuBE,WACU2D,EACAC,EACRC,EACAC,GAHQ7S,oBAAA0S,EACA1S,iBAAA2S,EAIR3S,KAAK2S,YAAcA,EACnB3S,KAAK4S,QAAUvL,KAAWuL,OAC1B5S,KAAK6S,SAAWxL,KAAWwL,OAC3B7S,KAAK8S,YAAcJ,EAAeK,QAAQrO,KAAKiO,EAAa3S,KAAK6S,SAASG,UA6F9E,OAzFEC,iBAAA,WACE,OAAOjT,KAAK8S,aAAe9S,KAAK8S,YAAYvS,MAAiBP,KAAK2S,aAIpEM,uBAAA,WACE,OAAOjT,KAAK2S,aAIdM,mBAAA,WACE,OAAOjT,KAAK4S,SAIdK,mBAAA,WACE,OAAOjT,KAAK8S,aAIdG,kBAAA,WACE,OAAOjT,KAAK8S,aAAe9S,KAAK8S,YAAYxP,MAI9C2P,oBAAA,WACE,OAAOjT,KAAK6S,UAIdI,mBAAA,WACE,SAAUjT,KAAK8S,cAAe9S,KAAK8S,YAAYxP,OAIjD2P,kBAAA,WACE,OAAQjT,KAAKuM,SAIf0G,kBAAA,WACE,IAAMC,EAAalT,KAAKwN,UAAUwF,SAClC,IAAKhT,KAAK8S,aAAiBI,EAAM,CAC/B,IAAMC,EAAYD,EAAK3S,KAAO2S,EAAK3S,KAAO2S,EAC1C,MAAO,sBAAsBlT,KAAKO,wBAAuB4S,MAE3D,OAAKnT,KAAK8S,YAEL9S,KAAK8S,YAAYxP,UAAtB,EACS,UAAUtD,KAAKO,qCAFf,kBAAkBP,KAAKO,YAKlC0S,qBAAA,WACE,MAAO,IAAIjT,KAAKO,WAAUwG,GAAU/G,KAAKmE,WAS3C8O,sBAAA,SAAU/P,GACR,OAAO,IAAI+P,EAAYjT,KAAK0S,eAAgBxP,EAAOlD,KAAK4S,QAAS5S,KAAK6S,WAUxEI,uBAAA,SAAW9O,EAAmBiP,gBAAAA,MAC5B,IAAMC,EAAuBD,EAAUjP,EAASkD,KAAWrH,KAAK4S,QAASzO,GACzE,OAAO,IAAI8O,EAAYjT,KAAK0S,eAAgB1S,KAAK2S,YAAaU,EAAWrT,KAAK6S,WAUhFI,wBAAA,SAAYzF,EAA4B4F,gBAAAA,MACtC,IAAME,EAAUF,EAAU5F,EAAUnG,KAAWrH,KAAK6S,SAAUrF,GAC9D,OAAO,IAAIyF,EAAYjT,KAAK0S,eAAgB1S,KAAK2S,YAAa3S,KAAK4S,QAASU,IArHvEL,QAAQ,SAACzS,GACd,OAAAA,GAAOA,EAAI0C,QAAUuC,EAASjF,EAAI0C,QAAUuC,EAASjF,EAAI0C,MAAM3C,aC/B7DgT,IACJtG,QAASuG,EACTC,WAAY,KACZC,aACA7M,KAAM,oBAuGN,WAAoB4M,EACAE,EACAtD,EACA7C,GAHpB,WAAoBxN,gBAAAyT,EACAzT,kBAAA2T,EACA3T,oBAAAqQ,EACArQ,aAAAwN,EAKZxN,kBAAe,WACrB,OAAAkH,EAAKgG,KAAK0G,YAAc9E,sBAAoB+E,MAAQ3M,EAAKsG,QAAQiG,WAAWK,YAL5E9T,KAAKwN,QAAUzJ,GAASyJ,EAAS+F,IACjCvT,KAAKkN,KAAOmD,EAAe0D,UAuH/B,OArKSC,QAAP,SAAaC,EAAyBC,GAIpC,OAAOD,EAAM5S,OAFY,SAAC8S,EAAoBC,GAC5C,OAAAD,EAAK7G,KAAK,WAAM,OAAA8G,EAASC,gBACWH,GAAW5N,EAASC,GAAGkK,SAexDuD,cAAP,SAAsBC,EAAyBK,GAC7C,IAAK,IAAI/L,EAAM,EAAGA,EAAM0L,EAAMxU,OAAQ8I,IAAO,CAC3C,IAAMgI,EAAa0D,EAAM1L,GAAK8L,aAE9B,GAAIpO,EAAUsK,GAAa,CACzB,IAAMgE,EAAiBN,EAAM5U,MAAMkJ,EAAM,GAEzC,OAAOyL,EAAeQ,MAAMD,EAAgBhE,GACzCjD,KAAKgH,IAIZ,OAAOA,KAMFN,cAAP,SAAmBC,GACjBA,EAAMjN,QAAQ,SAAAyN,GAAQ,OAAAA,EAAKJ,gBAc7BL,qBAAA,SAASU,GACP1U,KAAKyT,WAAWkB,OAAOC,aAAaC,qBAApC7U,CAA0D0U,IAG5DV,uBAAA,WAAA,WACQS,EAAOzU,KAAKqQ,eAClB,IAAIoE,EAAKK,cAAT,CAEA,IAAMC,EAAa/U,KAAKgV,yBACxB,GAAID,EAAY,OAAOA,EAEvB,IAAMvH,EAAUxN,KAAKwN,QACrBiF,GAAMwC,oBAAoBjV,KAAMA,KAAKyT,WAAYjG,GAEjD,IAMM0H,EAAc,SAAAR,GAChB,OAAAD,EAAKV,UAAUoB,gBAAgBjO,EAA/BuN,CAAqCC,IAEnCU,EAAe,SAAArV,GACjB,OAAA0U,EAAKV,UAAUsB,iBAAiBnO,EAAhCuN,CAAsC1U,IAE1C,IACE,IAAMA,EAZJ0U,EAAK3K,SAAS7J,KAAKuN,EAAQ3G,KAAMK,EAAKuM,WAAYvM,EAAKyM,cAczD,OAAK3T,KAAKkN,KAAKoI,aAAerP,EAAUlG,GAC/BA,EAAOqM,MAbG,SAAAsI,GACjB,OAAArH,GAAUkI,UAAUb,GAAKc,cAapBlI,KAAK8H,EAAcF,GAEjBE,EAAarV,GAEtB,MAAO2U,GAEP,OAAOQ,EAAY7H,GAAUkI,UAAUb,YAEnCD,EAAKgB,eAAiBhB,EAAKiB,aAAejB,EAAKgB,aACjDhB,EAAKkB,gBAcX3B,6BAAA,SAAiBjU,GAAjB,WACQgV,EAAa/U,KAAKgV,yBACxB,OAAID,IAGA9O,EAAUlG,GAELA,EAAOuN,KAAK,SAAAvL,GAAO,OAAAmF,EAAK0O,iBAAiB7T,MAGlD0Q,GAAMoD,gBAAgB9V,EAAQC,KAAKyT,WAAYzT,KAAKwN,UAGrC,IAAXzN,EAEKsN,GAAUyI,QAAQ,2BAA2BN,YAGhC/T,EAAGwR,GAErB8C,CAAchW,GAETsN,GAAUM,WAAW5N,GAAQyV,iBAFtC,KAWMxB,mCAAR,WACE,IAAMW,EAAS3U,KAAKyT,WAAWkB,OAG/B,OAAIA,EAAOqB,UACF3I,GAAUyI,QAAQ,sBAAsBnB,EAAOtC,oCAAmCmD,YAGvFxV,KAAKyT,WAAWwC,SACX5I,GAAUyI,UAAUN,YAKzBxV,KAAKkW,eAEA7I,GAAUO,WAAW5N,KAAKwN,QAAQP,WAAWuI,iBAFtD,GAMFxB,qBAAA,WACQ,IAAExG,eAAS6C,sBAIjB,OAHczP,EAAM,qBAANA,CAA4B4M,IAAY,0BACxC5M,EAAM,+BAANA,CAAsC4M,IAAY5M,EAAM,oBAANA,CAA2B4M,IAAY,gBAE/D8C,GAAU,IADvC6F,GAAW9F,EAAevG,YA9MhCkK,gBAAkC,SAACS,GAAyB,OAAA,SAAC1U,GAChE,OAAA0U,EAAKmB,iBAAiB7V,KAMnBiU,sBAAwC,SAACS,GAAyB,OAAA,SAAC1U,GACxEkG,EAAUlG,IAAWA,EAAOqM,MAAM,SAAAsI,GAC9B,OAAAD,EAAK2B,SAAS/I,GAAUkI,UAAUb,QAQjCV,YAA6B,SAACS,GAAyB,OAAA,SAAClI,GAC3D,OAAAkI,EAAK2B,SAAS7J,KAEXyH,eAAgC,SAACS,GAAyB,OAAA,SAAClI,GAC9D,OAAAD,GAAgBC,KAEbyH,cAA+B,SAACS,GAAyB,OAAA,SAAClI,GAC/D,MAAMA,SCnCV,YAA2BrJ,EAAoBmT,GAC7C,IAAMC,EAAU7Q,EAAS4Q,IAAcA,GAAaA,EAepD,SADuB1R,EAAW2R,GAAWA,EAZ7C,SAAoBC,GAElB,IADA,IAAMC,EAAyBF,EACtBxW,EAAI,EAAGA,EAAI0W,EAAY/W,OAAQK,IAAK,CAC3C,IAAMsC,EAAO,IAAIM,EAAK8T,EAAY1W,IAElC,GAAKsC,GAAQA,EAAKqU,QAAQF,EAAOhW,QAAY6B,GAAQoU,EAAY1W,KAAOyW,EAAOhW,KAC7E,OAAO,EAGX,OAAO,IAIQ2C,GAOnB,kBAOE,WAAmBwT,EACA3C,EACAjK,EACA6M,EACAC,EACPpJ,gBAAAA,MALOxN,aAAA0W,EACA1W,eAAA+T,EACA/T,cAAA8J,EACA9J,mBAAA2W,EACA3W,4BAAA4W,EARnB5W,iBAAc,EAEdA,oBAAgB,EAQdA,KAAK6W,SAAWrJ,EAAQqJ,UAAY,EACpC7W,KAAK6G,KAAO2G,EAAQ3G,MAAQ,KAC5B7G,KAAKyV,YAAcjI,EAAQiI,YA2F/B,OAzEUqB,2BAAR,SAAuBC,EAAmBV,GACxC,IAAkB,IAAdA,EAAoB,OAAOU,EAC/B,IAAMC,EAAWD,EAAM3S,OAAO,SAAA6S,GAAQ,OAAAC,GAAWD,EAAK/T,MAAOmT,KAC7D,OAAOW,EAASvX,OAASuX,EAAW,MAiB9BF,qCAAR,WACE,OAAO9M,GAAOhK,KAAK0W,QAAQS,WAAWC,gBAAiB,WAAM,OAAA,KAkBvDN,8BAAR,SAA0BO,GAA1B,WACQC,EAAWjQ,EAAOrH,KAAKuX,2BAA4BvX,KAAK2W,eAG9D,OAF0BzS,GAAOlE,KAAK0W,QAAQS,WAAWC,iBAE5C/V,OAAO,SAACmW,EAAoBC,GAGvC,IAAMC,EAAcD,EAASE,QAAU5I,sBAAoB6I,MACrDrO,EAAO8N,EAAYI,EAASlX,UAC5BwW,EAAoBW,EAAcnO,GAAQvD,GAAKuD,IAGrD,OADAiO,EAAGC,EAASlX,MAAQ2G,EAAK2Q,eAAed,EAAOO,EAASG,EAASlX,OAC1DiX,QAUXV,oBAAA,SAAQO,GACN,IAAMZ,EAAUzW,KAAK8X,kBAAkBT,GAIvC,OADmBnT,GAAOuS,GAASsB,MAAMC,GACrBvB,EAAU,MAGhCK,uBAAA,WACE9W,KAAK4W,uBAAuB5W,MAC5BA,KAAK8U,eAAgB,QAKzB,YAA0BmD,EAAyBC,EAAsCnE,GAEvF,IACME,GADmBgE,EAASE,iBAAoBF,EAASE,sBAChCpE,EAAUxT,SACnC6X,EAA+C/P,EAAW4L,GAKhE,WAA4BoE,EAAavO,EAAU0D,gBAAAA,MACjD,IAAM6C,EAAiB,IAAIyG,GAAeoB,EAAmBnE,EAAWjK,EAAUuO,EAAaD,EAAc5K,GAE7G,OADAyG,EAAMtL,KAAK0H,GACJA,EAAesF,WAAW9O,KAAKwJ,GAGxC,OARA4H,EAASlE,EAAUxT,MAAQ+X,EAQpBA,EC7IT,kBACE,WAAoB7E,GAAAzT,gBAAAyT,EAgFtB,OA9EE8E,+BAAA,SAAmBC,GAAnB,WAEE,OADqBxY,KAAKyT,WAAWkB,OAAOuD,kBACxBf,WAAWsB,WAAWD,GACrCzX,IAAI,SAAAmM,GAAQ,OAAAhG,EAAKwR,WAAWxL,KAC5B7L,OAAO+I,OACPhG,OAAO4T,IAYdO,uBAAA,SAAWI,GACT,IAAMlF,EAAazT,KAAKyT,WAClB4D,EAAc5D,EAAW4D,cAGzBuB,EAAgB5Y,KAAK6Y,iBAAiBF,EAAUtB,GACtD,IAAKuB,EAAe,SAEpB,IAAME,GACJrF,WAAYA,EACZxG,QAASwG,EAAWjG,UAAUP,SAsBhC,OAAO2L,EAAc7X,IAnBO,SAAC0T,GAO1B,OALgCA,EAAKgC,QAAQY,GAEHsB,EAASI,kBAAkBxY,MAGhDQ,IAAI,SAAAkW,GACvB,IAAMpE,EAAWxL,GACfR,KAAM4N,EAAK5N,KACX6M,WAAaiF,SAAUA,EAASpY,KAAM4P,QAAS8G,IAC9C6B,GAEG5V,EAAQyV,EAASI,kBAAkBpB,QAAU5I,sBAAoB6I,MAAQX,EAAK/T,MAAMI,KAAO,KAC3F0V,EAAiB,IAAIhF,GAAeP,EAAYvQ,EAAOuR,EAAM5B,GACnE,OAAqB4B,OAAMwC,OAAM+B,sBAKjC3X,OAAO+I,OACP6H,KAwCT,SAAmBgH,gBAAAA,MACjB,OAAO,SAA+BC,EAAcC,GAClD,IAAMC,EAASH,GAAoB,EAAI,EACjCI,GAAcH,EAAEjC,KAAK/T,MAAMqG,KAAK9J,OAAS0Z,EAAElC,KAAK/T,MAAMqG,KAAK9J,QAAU2Z,EAC3E,OAAsB,IAAfC,EAAmBA,EAAaF,EAAE1E,KAAKoC,SAAWqC,EAAEzE,KAAKoC,UA5CtDyC,CAAUX,EAASY,cACxBxY,IAAI,SAAAyY,GAAS,OAAAA,EAAMR,kBAcnBT,6BAAP,SAAwBI,EAA+BtB,GACrD,IAAMoC,EAAWd,EAAS/E,YAAc9E,sBAAoB4K,OAGtDC,EAAe3Z,KAAKyT,WAAWkB,OAAOuD,kBAG5C,OAFmBuB,GAAaE,IAAmB3Z,KAAKyT,WAAYkG,IAElD5Y,IAAI,SAAC6Y,GAAuB,OAAAA,EAAIC,SAASlB,EAASpY,QAC/D6D,OAAOuG,GAAgBjF,EAAS,uBAAuBiT,EAASpY,OAChEc,OAAO+I,OACPhG,OAAO,SAAAqQ,GAAQ,OAAAA,EAAKgC,QAAQY,WCjFrC,kBAiBE,WAAYyC,GAfZ9Z,aAAkB,KAQlBA,cAAU,EAQRqH,EAAOrH,KAAM8Z,GA4CjB,OAtCEC,eAAA,SAAGhY,EAAUqF,GAAyB,OAAO,GAE7C2S,mBAAA,SAAOhY,EAAUqF,GAAmC,OAAOrF,GAE3DgY,mBAAA,SAAOhY,EAAaqF,GAAqB,OAAOrF,GAEhDgY,mBAAA,SAAO7H,EAAQ5Q,GAAmB,OAAO4Q,GAAK5Q,GAG9CyY,wBAAA,WACE,IAAMC,EAAMha,KAAKia,QAAQlV,WACzB,OAAOiV,EAAIE,OAAO,EAAGF,EAAIva,OAAS,IAGpCsa,qBAAA,WACE,MAAO,cAAc/Z,KAAKO,UAI5BwZ,uBAAA,SAAWhY,GACT,OAAO/B,KAAKyB,GAAGM,GAAOA,EAAM/B,KAAKma,OAAOpY,IAa1CgY,qBAAA,SAASK,EAAwBC,GAC/B,IAAKD,EAAM,OAAOpa,KAClB,GAAa,SAAToa,IAAoBC,EAAU,MAAM,IAAIhU,MAAM,kDAClD,OAAO,IAQX,SAAmB6G,EAAiBkN,GAApC,WAEE,WAAmBrY,GACjB,OAAO2D,EAAQ3D,GAAOA,EAAOoD,EAAUpD,IAASA,MAalD,WAAsB+H,EAA2BwQ,GAC/C,OAAO,SAAqBvY,GAC1B,GAAI2D,EAAQ3D,IAAuB,IAAfA,EAAItC,OAAc,OAAOsC,EAC7C,IAAMX,EAAMmZ,EAAUxY,GAChBhC,EAASgB,GAAIK,EAAK0I,GACxB,OAA0B,IAAlBwQ,EAA6D,IAAnClW,GAAOrE,EAAQ,SAAAwB,GAAK,OAACA,IAAG9B,OAd9D,SAAqBsC,GACnB,OAAQA,EAAItC,QACV,KAAK,EAAG,OACR,KAAK,EAAG,MAAgB,SAAT2a,EAAkBrY,EAAI,GAAKA,EAC1C,QAAS,OAAOA,GAUyDyY,CAAYza,IAKzF,WAA4B+J,GAC1B,OAAO,SAAqB2Q,EAAWC,GACrC,IAAMC,EAAOJ,EAAUE,GAAOG,EAAQL,EAAUG,GAChD,GAAIC,EAAKlb,SAAWmb,EAAMnb,OAAQ,OAAO,EACzC,IAAK,IAAIK,EAAI,EAAGA,EAAI6a,EAAKlb,OAAQK,IAC/B,IAAKgK,EAAS6Q,EAAK7a,GAAI8a,EAAM9a,IAAK,OAAO,EAE3C,OAAO,IAIV,SAAU,SAAU,SAAU,cAAckH,QAAQ,SAAAzG,GACnD,IAAMsa,EAAc3N,EAAK3M,GAAMsG,KAAKqG,GAC9B4N,EAA+B,WAATva,EAAoBwa,EAAqBC,EACrE9T,EAAK3G,GAAQua,EAAUD,KAGzBxT,EAAOrH,MACLib,QAAS/N,EAAK+N,QACd1a,KAAM2M,EAAK3M,KACX0Z,QAAS/M,EAAK+M,QACd9W,QAAS+J,EAAK/J,QACd1B,GAAIuZ,EAAa9N,EAAKzL,GAAGoF,KAAKqG,IAAO,GACrCgO,WAAYd,IAzDL,CAAsBpa,KAAMoa,SC/EvC,IAOYe,GAPNC,GAAStW,OAAO1B,UAAUkB,eAG1B+W,GAAc,SAACzJ,GACjB,OAA0F,KAAzF,QAAS,OAAQ,SAAU,QAAS,WAAWxN,OAAOgX,GAAOvU,KAAK+K,QAAYnS,SAGvE0b,GAAAA,YAAAA,iCAEVA,yBACAA,yBA2DF,kBA0DE,WAAY5W,EAAY2I,EAAiBrK,EAA0ByY,EAAmBC,GAEpFrO,EArGJ,SAAiB0E,EAAuB4J,EAAoBF,EAAmB/W,EAAYkX,GACzF,GAAI7J,EAAI1E,MAAQsO,GAA4B,WAAjBA,EAAQjb,KAAmB,MAAM,IAAI8F,MAAM,UAAU9B,oCAChF,GAAIqN,EAAI1E,MAAQsO,GAA4B,WAAjBA,EAAQjb,MAAqBkb,EAAWvO,KAAK0E,EAAI1E,MAAiB,OAAOuO,EAAWvO,KAAK0E,EAAI1E,MACxH,GAAIsO,EAAS,OAAOA,EACpB,IAAK5J,EAAI1E,KAAM,CACb,IAAMA,EAAOoO,IAAaH,UAAQO,OAAS,MACvCJ,IAAaH,UAAQQ,KAAO,OAC5BL,IAAaH,UAAQS,OAAS,QAAU,SAC5C,OAAOH,EAAWvO,KAAKA,GAEzB,OAAO0E,EAAI1E,gBAAgB6M,GAAYnI,EAAI1E,KAAOuO,EAAWvO,KAAK0E,EAAI1E,MA2F7D2O,CADPhZ,EAlHJ,SAAyB+O,GAIvB,aACE,OAAOA,EAAI/P,MAGb,OAPA+P,EAAMyJ,GAAYzJ,KAAU/P,MAAO+P,IAAgBA,EAEnDkK,EAAmC,aAAI,EAKhCzU,EAAOuK,GACZmK,KAAMC,EAAapK,EAAI/P,OAAS+P,EAAI/P,MAAQia,IAyGnCG,CAAgBpZ,GACFqK,EAAMoO,EAAU/W,EAAIgX,EAAkBE,YAC7D,IAWQS,EACAC,EAZFC,GAWEF,GAAkB/T,MAAQmT,IAAaH,UAAQS,QAAS,QACxDO,EAAyB5X,EAAG8X,MAAM,UAAalU,OAAO,MACrDd,EAAO6U,EAAeC,EAAwBtZ,GAAQsF,OAZ/D+E,EAAOkP,EAAYlP,EAAKoP,SAASF,EAAWd,IAAaH,UAAQS,QAAU1O,EAC3E,IAAMqP,OAA8B/V,IAAjB3D,EAAOhB,OAAuByZ,IAAaH,UAAQS,OAChEX,EAAU9V,EAAUtC,EAAOoY,WAAapY,EAAOoY,UAAY/N,EAAK+N,QAChEuB,EAAMrX,EAAUtC,EAAO2Z,OAAS3Z,EAAO2Z,MAAQtP,EAAKsP,IACpDC,EA1FV,SAAyB5Z,EAA0B0Z,EAAqBG,GACtE,IAAMD,EAAS5Z,EAAO4Z,OACtB,IAAKF,IAAyB,IAAXE,EAAkB,OAAO,EAC5C,IAAKtX,EAAUsX,IAAqB,MAAVA,EAAgB,OAAOC,EACjD,IAAe,IAAXD,GAAmBhX,EAASgX,GAAS,OAAOA,EAChD,MAAM,IAAIpW,MAAM,2BAA2BoW,yDAqF1BE,CAAgB9Z,EAAQ0Z,EAAYhB,EAAkBqB,uBAC/DxJ,EAlFV,SAAoBvQ,EAA0BuZ,EAAoBG,EAAqBE,GACrF,IAAMC,IACFG,KAAM,GAAIC,GAAKP,GAAcH,OAAY5V,EAAY,KACrDqW,KAAM,KAAMC,GAAKP,GAAcH,OAAY5V,EAAY,KAGrD4M,EAAU1N,EAAQ7C,EAAOuQ,SAAWvQ,EAAOuQ,WAC7C3N,EAASgX,IAASrJ,EAAQzK,MAAOkU,KAAMJ,EAAQK,QAAItW,IAEvD,IAAMuW,EAAiBhc,GAAIqS,EAAS9S,EAAK,SACzC,OAAO8D,GAAOsY,EAAe,SAAAtT,GAAQ,OAAuC,IAAvC2T,EAAe3U,QAAQgB,EAAKyT,QAAcjd,OAAOwT,GAwEpE4J,CAAWna,EAAQuZ,EAAWG,EAAYE,GACpDtZ,EAAUgC,EAAUtC,EAAOM,WAAaN,EAAOM,UAAY+J,EAAK/J,QAStEkE,EAAOrH,MAAQuE,KAAI2I,OAAMoO,WAAUiB,aAAYtB,UAASuB,MAAKC,SAAQrJ,UAASjQ,UAASgF,MAAOiU,EAAWvZ,WAgE7G,OA5HSoa,SAAP,SAAc9Y,EAAiBD,gBAAAA,MAE7B,IADA,IAAMgZ,SACcC,IAAAjd,WAAAA,KAAf,IAAMmE,OACT6Y,EAAY7Y,EAAME,IAAMF,EAAMxC,MAAMqC,EAAOG,EAAME,KAEnD,OAAO2Y,GAcFD,UAAP,SAAe9Y,EAAiBiZ,EAAyBC,GACvD,oBAD8BD,mBAAyBC,MAChDlZ,EAAOC,OAAO,SAAAC,GAAS,OAACA,EAAM6I,KAAK1F,OAAO4V,EAAQ/Y,EAAME,IAAK8Y,EAAQhZ,EAAME,QAY7E0Y,SAAP,SAAc9Y,EAAiBiZ,EAAcC,GAC3C,oBAD6BD,mBAAcC,MACe,IAAnDJ,EAAMK,QAAQnZ,EAAQiZ,EAASC,GAAS5d,QAI1Cwd,YAAP,SAAiB9Y,EAAiBD,GAChC,oBADgCA,MACzBC,EAAOpD,IAAI,SAAAsD,GAAS,OAAAA,EAAMkZ,UAAUrZ,EAAOG,EAAME,OAAMlD,OAAO4I,IAAU,IAyBjFgT,2BAAA,SAAepb,GACb,OAAO7B,KAAKuc,YAAcvc,KAAKkN,KAAK1F,OAAOxH,KAAK6B,QAASA,IAO3Dob,kBAAA,SAAMpb,GAAN,WA8BE,OAFAA,EAP6B,SAACE,GAC5B,IAAoB,QAAAyP,EAAAtK,EAAKkM,QAALlT,WAAAA,KAAf,IAAMsZ,OACT,GAAIA,EAAMqD,OAAS9a,EAAK,OAAOyX,EAAMsD,GAEvC,OAAO/a,EAGDyb,CAAqB3b,GAEtBqD,EAAYrD,GA1BK,WACtB,GAAIqF,EAAKuW,mBAAoB,OAAOvW,EAAKuW,mBAAmBC,aAE5D,IAAKpX,EAASG,UAAW,MAAM,IAAIJ,MAAM,+DAEzC,IAAMqX,EAAepX,EAASG,UAAUkX,OAAOzW,EAAKrE,OAAOkZ,MAE3D,GAAqB,OAAjB2B,QAA0ClX,IAAjBkX,IAA+BxW,EAAKgG,KAAKzL,GAAGic,GACvE,MAAM,IAAIrX,MAAM,kBAAkBqX,sBAAgCxW,EAAK3C,yCAAwC2C,EAAKgG,KAAK3M,UAM3H,OAJI2G,EAAKrE,OAAOkZ,KAAkB,cAChC7U,EAAKuW,oBAAuBC,iBAGvBA,EAYmBE,GAAoB5d,KAAKkN,KAAK2Q,WAAWhc,IAGvEob,qBAAA,WACE,OAAOjd,KAAKsb,WAAaH,UAAQS,QAGnCqB,sBAAA,SAAUpb,GAER,IAAKqD,EAAYrD,IAAoB,OAAVA,IAAmB7B,KAAKuc,WAAY,OAAO,EAGtE,IAAMuB,EAAa9d,KAAKkN,KAAK2Q,WAAWhc,GACxC,IAAK7B,KAAKkN,KAAKzL,GAAGqc,GAAa,OAAO,EAGtC,IAAMC,EAAU/d,KAAKkN,KAAK8Q,OAAOF,GACjC,QAASrY,EAASsY,KAAa/d,KAAKkN,KAAK+M,QAAQtX,KAAcob,KAGjEd,qBAAA,WACE,MAAO,UAAUjd,KAAKuE,OAAMvE,KAAKkN,kBAAiBlN,KAAKyc,sBAAqBzc,KAAKuc,mCCtLnF,WAAY0B,GACV,GAAIA,aAAuBC,EAAU,CACnC,IAAMjH,EAAiBgH,EACvBje,KAAKkD,MAAQ+T,EAAK/T,MAClBlD,KAAKme,YAAclH,EAAKkH,YAAY9e,QACpCW,KAAKkd,YAAc7V,KAAW4P,EAAKiG,aACnCld,KAAKoe,YAAcnH,EAAKmH,YAAY/e,QACpCW,KAAKqe,MAAQpH,EAAKoH,OAASpH,EAAKoH,MAAMhf,YACjC,CACL,IAAM6D,EAAqB+a,EAC3Bje,KAAKkD,MAAQA,EACblD,KAAKme,YAAcjb,EAAMe,YAAad,SAAS,IAC/CnD,KAAKkd,eACLld,KAAKoe,YAAclb,EAAMkb,YAAYrd,IAAI,SAAAud,GAAO,OAAAA,EAAIC,WA+C1D,OA3CEL,kBAAA,WACE,OAAO,IAAIA,EAASle,OAItBke,2BAAA,SAAe/Z,GAGb,OADAnE,KAAKkd,YAAcld,KAAKme,YAAY9c,OAAO,SAAC8H,EAAMqV,GAAS,OAAAC,GAAWtV,IADjDuV,EACmEF,GADpCja,GAAIma,EAAS7c,MAAMsC,EAAOua,EAASna,OAAnE,IAACma,OAEd1e,MAITke,sBAAA,SAAU3d,GACR,OAAOmE,GAAK1E,KAAKme,YAAa1d,EAAO,KAAMF,KAO7C2d,mBAAA,SAAOjH,EAAgB0H,GACrB,IAAMC,EAAO5e,KAAK4e,KAAK3H,EAAM0H,GAC7B,OAAOC,GAAwB,IAAhBA,EAAKnf,QAetBye,iBAAA,SAAKjH,EAAgB0H,GACnB,GAAI3e,KAAKkD,QAAU+T,EAAK/T,MAAO,OAAO,EAEtC,IAAMiB,EAAkBwa,EAAWA,EAAS3e,MAAQA,KAAKme,YACzD,OAAOlB,GAAMK,QAAQnZ,EAAQnE,KAAKkd,YAAajG,EAAKiG,cAhE/CgB,QAAQ,SAACjH,GAAmB,OAAAA,EAAKsH,4BCZ1C,cA6KA,OA3KSM,kBAAP,SAAuB5G,EAAyB1O,GAC9C,IAAMrG,EAAQ8C,GAAKuD,GAAMrG,MACzB,OAAO,IAAI+P,GAAYgF,EAAU/U,EAAOqG,EAAKxI,IAAIT,EAAK,gBAAgBe,OAAO6H,YAGxE2V,YAAP,SAAiBC,GACf,IAAMC,EAAWD,EAAY3a,SAC7B,OAAO2a,EAAYE,SAASzV,KAAKxI,IAAI,SAAAmC,GAAS,OAAA,IAAIgb,GAAShb,GAAO+b,eAAeF,MAI5EF,cAAP,SAAmBK,EAAsBJ,GACvC,IAAMK,EAAqBN,EAAUO,UAAUN,GAC/C,OAAIA,EAAYtR,UAAUrK,QACjB0b,EAAUQ,cAAcH,EAAUC,EAAQra,OAAOqC,KAAK2X,EAAY3a,WAEpEgb,GAQFN,mBAAP,SAAwBS,EAAoB/V,EAAkBgW,GAE5DhW,EAAKnF,OAAO,SAAA6S,GAAQ,OAAAhP,EAAQsX,EAAQtI,EAAK/T,SAAQ8D,QAAQ,SAAAiQ,GACvD,IAAMuI,EAAgCtb,GAAO+S,EAAK/T,MAAMmb,WAClDoB,EAAUZ,EAAUY,QAAQlW,EAAM,SAAAC,GAAK,OAAAA,IAAMyN,IAC7CyI,EAA8BF,EAAUze,IAAI,SAAAqR,GAAQ,OAAAkN,EAAMK,iBAAiBF,EAASrN,KAC1F6E,EAAKoH,MAAQqB,EAAYre,OAAO+I,UAe7ByU,gBAAP,SAAqBK,EAAsBC,EAAoBS,gBAAAA,MAM7D,IAAMC,EAAYX,EAASne,IAAI,SAAAkW,GAAQ,OAAAA,EAAKkH,cACvC9c,OAAO+I,OACPhG,OAAO,SAAAC,GAAS,OAACA,EAAMlB,UACvBpC,IAAIT,EAAK,OAmBd,OAAoB6e,EAAOpe,IAb3B,SAAiC+e,GAE/B,IAAIC,EAAc1Y,KAAWyY,GAAUA,EAAO5C,aAExC8C,EAAoB/W,GAAK8W,EAAaH,GAC5CG,EAAcE,GAAKF,EAAaH,GAChC,IApBqBrW,EAAkBrG,EACjC+T,EAmBAiJ,EAAgBD,IApBD1W,EAoBoB2V,EApBFhc,EAoBY4c,EAAO5c,MAnBpD+T,EAAiBvS,GAAK6E,EAAM9I,EAAO,QAASyC,IAC3CmE,KAAW4P,GAAQA,EAAKiG,kBAkByC2C,GAElEM,EAA0B9Y,EAAO0Y,EAAaG,EAAeF,GACnE,OAAO,IAAI9B,GAAS4B,EAAO5c,OAAO+b,eAAekB,MAc9CtB,cAAP,SAAmBK,EAAsBC,EAAoBiB,GAO3D,IANA,IAGoBC,EAAiBC,EAcjCzD,EAAkB0D,EAAsBC,EAAqBC,EAjB3DC,EAAMvV,KAAKD,IAAIgU,EAASzf,OAAQ0f,EAAO1f,QACzCkhB,EAAO,EAKJA,EAAOD,GAAOxB,EAASyB,GAAMzd,QAAUkd,IAH1BC,EAGoDnB,EAASyB,GAH5CL,EAGmDnB,EAAOwB,GAF3FN,EAAM7Y,OAAO8Y,EAAOzB,EAAU+B,oBAGhCD,IAaFJ,GADA1D,EAAwBqC,GACK7f,MAAM,EAAGshB,GACtCH,EAAwB3D,EAAKxd,MAAMshB,GAGnC,IAAME,EAAwBN,EAASxf,IAbvC,SAAuB+f,EAAwBvY,GAC7C,IAAMwY,EAASD,EAAavC,QAE5B,OADAwC,EAAO7D,YAAciC,EAAO5W,GAAK2U,YAC1B6D,IAcT,OAHAN,EAAwBtB,EAAO9f,MAAMshB,IAG5B9D,OAAMC,GAFS,EAAuBld,OAAO6gB,GAEnCF,WAAUM,uBAAsBL,UAASC,aAkBvD5B,WAAP,SAAgBmC,EAAmBC,EAAmBtC,GACpD,IAAIuC,GAAO,EAEX,OAD6BnV,GAAYiV,EAAOC,GAClC5f,OAAO,SAAC2V,EAAUxF,OAAC2P,OAAOC,OAEtC,OADAF,EAAOA,IAASC,EAAM3Z,OAAO4Z,EAAOzC,IACtB3H,EAAWA,EAASpX,OAAOuhB,SAYtCtC,SAAP,SAAcmC,EAAmBC,EAAmBtC,GAClD,OAAOqC,EAAMvhB,SAAWwhB,EAAMxhB,QAC1Bof,EAAU7H,SAASgK,EAAOC,EAAOtC,GAAUlf,SAAWuhB,EAAMvhB,QAa3Dof,UAAP,SAAetV,EAAkB8X,GAC/B,IAAMpK,EAAOvS,GAAK6E,EAAM8X,GAClBC,EAAa/X,EAAKnB,QAAQ6O,GAChC,OAAuB,IAAhBqK,OAAoB9a,EAAY+C,EAAKlK,MAAM,EAAGiiB,EAAa,IAzF7DzC,mBAAmB,SAAC5H,GACvB,OAAAA,EAAK/T,MAAMe,YAAad,SAAS,IAC5BiB,OAAO,SAAAC,GAAS,OAACA,EAAM4W,WA2FzB4D,cAAc,SAACtV,GAClB,OAAAA,EAAKlI,OAAO,SAAC0G,EAAKkP,GAAS,OAAA5P,EAAOU,EAAKkP,EAAKiG,wBC/KvCqE,IACT9Q,KAAM,OACN+Q,MAAO,sBAsDP,WAAYC,EAAWC,EAAsBC,EAAcC,EAAwBhR,GACjF,GAjCF5Q,eAAW,EACXA,kBAAwBwG,EAgClBib,aAAgBI,EAClBxa,EAAOrH,KAAMyhB,QACR,GAAI9c,EAAW+c,GAAY,CAChC,GAAIpc,EAAkBmc,GAAO,MAAM,IAAIpb,MAAM,gDAC7C,IAAK1B,EAAW+c,GAAY,MAAM,IAAIrb,MAAM,2DAE5CrG,KAAKwK,MAAQiX,EACbzhB,KAAK4hB,OAASA,EACd5hB,KAAK0hB,UAAYA,EACjB1hB,KAAK2hB,KAAOA,MAEZ3hB,KAAK4Q,KAAOA,EACZ5Q,KAAK8hB,cAAoBtb,IAAToK,EAChB5Q,KAAKmM,QAAUnM,KAAK8hB,SAAWxb,EAASC,GAAGkK,KAAKzQ,KAAK4Q,WAAQpK,OACxD,GAAI5B,EAAS6c,IAASA,EAAKjX,QAAUiX,EAAKnd,eAAe,cAAgBmd,EAAKnd,eAAe,SAAU,CAC5G,IAAMyd,EAA8BN,EACpC,OAAO,IAAII,EAAWE,EAAQvX,MAAOuX,EAAQL,UAAWK,EAAQJ,KAAMI,EAAQH,OAAQG,EAAQnR,OAoFpG,OAhFEiR,sBAAA,SAAU3e,GACR,IAAM8e,EAAahiB,KAAK4hB,WAClBK,EAAc/e,GAASA,EAAMgf,kBACnC,OACEzR,KAAMuR,EAAWvR,MAAQwR,EAAYxR,MAAQ8Q,GAAqB9Q,KAClE+Q,MAAOQ,EAAWR,OAASS,EAAYT,OAASD,GAAqBC,QAWzEK,oBAAA,SAAQM,EAAgChT,GAAxC,WACQ5I,EAAKD,EAASC,GAyBd0Q,EAAiBkL,EAAeC,SAASpiB,MACzCkD,EAAqB+T,GAAQA,EAAK/T,MAClCmf,EAAiD,WAAhCriB,KAAKsiB,UAAUpf,GAAOse,MAR3B,SAACe,GACjB,IAAMC,EAASD,EAAYE,MAAM,GACjC,OAAOD,EAAOE,KAAK,GAAGlN,YAAYlI,KAAK,WAAM,OAAAkV,KAM+BxK,EAY9E,OAAOhY,KAAKmM,QAAU5F,EAAGkK,OACpBnD,KArC6B,WAC9B,OAAA/G,EAAGpF,IAAIghB,EAAeQ,gBAAgBzb,GAAMnG,IAAI,SAAA4P,GAC5C,OAAAA,EAAWiS,IAAIT,EAAgBhT,QAoClC7B,KAjCmB,SAACuV,GACrB,OAAA3b,EAAKwa,UAAUpiB,MAAM,KAAMujB,KAiC1BvV,KAAK+U,GACL/U,KAbsB,SAACwV,GAK1B,OAJA5b,EAAK0J,KAAOkS,EACZ5b,EAAK4a,UAAW,EAChB5a,EAAKwa,UAAY,KACjBjP,GAAMsQ,wBAAwB7b,EAAMiI,GAC7BjI,EAAK0J,QAiBhBiR,gBAAA,SAAIM,EAAgChT,GAClC,OAAOnP,KAAKmM,SAAWnM,KAAKgjB,QAAQb,EAAgBhT,IAGtD0S,qBAAA,WACE,MAAO,qBAAqB9a,GAAU/G,KAAKwK,uBAAsBxK,KAAK2hB,KAAK5gB,IAAIgG,UAGjF8a,kBAAA,WACE,OAAO,IAAIA,EAAW7hB,OAhIjB6hB,WAAW,SAACrX,EAAYoG,GAC7B,OAAA,IAAIiR,EAAWrX,EAAO,WAAM,OAAAoG,GAAM,KAAM,KAAMA,SC+JvCqS,IACTxS,MACEyS,KAAM,OACNC,MAAO,SAET3B,OACE4B,KAAM,OACNC,OAAQ,SACRC,OAAQ,WCtMNC,GAAQN,GAAgBxS,KACxB+S,IAAaD,GAAMJ,MAAOI,GAAML,MAChCO,IAAeF,GAAMJ,OAGdO,GAAgC,gCAe3C,WAAoBC,GAAA3jB,WAAA2jB,EAuJtB,OApJEC,sBAAA,WACE,OAAO5jB,KAAK2jB,MAAMtiB,OAAO,SAAC0G,EAAKkP,GAAS,OAAAlP,EAAInI,OAAOqX,EAAKmH,YAAYrd,IAAI,SAAAoY,GAAK,OAAAA,EAAE3O,cAAanJ,OAAOkJ,QASrGqZ,0BAAA,SAAcpZ,GAIZ,OAAOxE,GAHUhG,KAAK2jB,MAAM5iB,IAAI,SAAAkW,GAAQ,OAAAA,EAAKmH,cACxC/c,OAAO+I,OACPhG,OAAO,SAAC+U,GAAkB,OAAAA,EAAE3O,QAAUA,MAK7CoZ,sBAAA,SAAUjT,GACR,IAAMsG,EAAOjX,KAAKoiB,SAASzR,GAC3B,OAAOA,EAAW2R,UAAUrL,EAAK/T,QA0BnC0gB,uBAAA,SAAW1gB,GACT,OAAO,IAAI0gB,EAAe/E,GAAUY,QAAQzf,KAAK2jB,MAAO,SAAA1M,GAAQ,OAAAA,EAAK/T,QAAUA,MAkBjF0gB,2BAAA,SAAeC,EAA8B3gB,GAC3C,IAAM+T,EAAkBvS,GAAK1E,KAAK2jB,MAAOljB,EAAO,QAASyC,IACnDiE,EAAO0c,EAAe9iB,IAAI,SAAAoY,GAAK,OAAAA,EAAE3O,QACvCyM,EAAKmH,YAAcnH,EAAKmH,YAAYha,OAAO,SAAA+U,GAAK,OAA2B,IAA3BhS,EAAKiB,QAAQ+Q,EAAE3O,SAAe5K,OAAOikB,IAUvFD,wBAAA,SAAYnT,EAA2BtB,GAAvC,wBAAYsB,UAEV,IAGMqT,GAHqB7b,EAAQub,GAAW/S,GAAQA,EAAO,UAGzBwS,GAAgBxS,KAAK0S,MAAQM,GAAcD,GAG/E/Q,GAAMsR,iBAAiB/jB,KAAK2jB,MAAOlT,EAAMtB,GAEzC,IAAM6U,EAAgB,SAACC,EAAwBC,GAC3C,OAAA,SAACvT,GACG,OAAA1I,EAAQgc,EAAc/c,EAAKob,UAAU3R,GAAYuT,MAInDC,EAA2BnkB,KAAK2jB,MAAMtiB,OAAO,SAAC0G,EAAKkP,GACvD,IAAMmN,EAAkBnN,EAAKmH,YAAYha,OAAO4f,EAAcF,EAAc,SACtEO,EAASD,EAAgBhgB,OAAO4f,GAAe,UAAW,UAC1DM,EAAOF,EAAgBhgB,OAAOpD,EAAIgjB,GAAe,UAAW,WAG5DO,EAAard,EAAKqd,WAAWtN,EAAK/T,OAClCshB,EAAY,SAACrL,GAAkB,OAAAA,EAAEyJ,IAAI2B,EAAYpV,GAElD7B,KAAK,SAAAzL,GAAS,OAAG2I,MAAO2O,EAAE3O,MAAO3I,MAAOA,MAE7C,OADAwiB,EAAOrd,QAAQwd,GACRzc,EAAInI,OAAO0kB,EAAKvjB,IAAIyjB,SAI7B,OAAOle,EAASC,GAAGpF,IAAIgjB,IAGzBP,qBAAA,WACE,OAAO5jB,KAAKykB,YAAczkB,KAAKykB,UAAY,IAAIC,GAAe1kB,QAGhE4jB,qBAAA,SAASjT,GACP,OAAOjM,GAAK1E,KAAK2jB,MAAO,SAAC1M,GAAmB,OAAAhP,EAAQgP,EAAKmH,YAAazN,MAQxEiT,4BAAA,SAAgBjT,GAAhB,WACQsG,EAAOjX,KAAKoiB,SAASzR,GAIrBgU,GADsB9F,GAAUY,QAAQzf,KAAK2jB,MAAO,SAAApiB,GAAK,OAAAA,IAAM0V,KAASjX,KAAK2jB,OAE9EtiB,OAAO,SAAC0G,EAAK6c,GAAU,OAAA7c,EAAInI,OAAOglB,EAAMxG,kBACxCha,OAAO,SAAAka,GAAO,OAAAA,IAAQ3N,IAc3B,OAAOA,EAAWgR,KAAK5gB,IAZD,SAACyJ,GACrB,IAAMwM,EAAW2N,EAAqBvgB,OAAO,SAAA+U,GAAK,OAAAA,EAAE3O,QAAUA,IAC9D,GAAIwM,EAASvX,OAAQ,OAAOuG,GAAKgR,GAEjC,IAAM6N,EAAe3d,EAAK4d,WAAWC,UAAUva,GAC/C,GAAItF,EAAY2f,GACd,MAAM,IAAIxe,MAAM,8CAAgDU,GAAUyD,IAG5E,OAAO,IAAIqX,GAAWrX,EAAO,WAAM,OAAAqa,MAAkBA,yBAUzD,WAAmB1U,GAAAnQ,aAAAmQ,EACjBnQ,KAAKglB,OAAShlB,KAAK4iB,IAAIc,KAA0Bpd,EAASG,UA4B9D,OAzBEie,gBAAA,SAAIla,GACF,IAAMmG,EAAa3Q,KAAKmQ,QAAQ8U,cAAcza,GAC9C,GAAImG,EAAY,CACd,GAAiD,WAA7C3Q,KAAKmQ,QAAQmS,UAAU3R,GAAY6Q,MACrC,OAAO7Q,EAAWiS,IAAI5iB,KAAKmQ,SAG7B,IAAKQ,EAAWmR,SACd,MAAM,IAAIzb,MAAM,wCAA0CU,GAAU4J,EAAWnG,QAEjF,OAAOmG,EAAWC,KAGpB,OAAO5Q,KAAK+kB,UAAUva,IAGxBka,qBAAA,SAASla,GACP,IAAMmG,EAAa3Q,KAAKmQ,QAAQ8U,cAAcza,GAC9C,OAAImG,EAAmBA,EAAWiS,IAAI5iB,KAAKmQ,SACpC7J,EAASC,GAAGkK,KAAKzQ,KAAKglB,OAAOpC,IAAIpY,KAG1Cka,sBAAA,SAAUla,GACR,OAAOxK,KAAKglB,QAAUhlB,KAAKglB,OAAOpC,IAAIpY,SC1LpC0a,GAAuD5kB,EAAK,sBA6GhE,WAAY4e,EAAsBJ,EAA0BnK,GAA5D,WAIE,GAnFM3U,eAAYsG,EAASC,GAAG4e,QAOhCnlB,aAAwBA,KAAKolB,UAAUjZ,QAgBvCnM,yBASQA,kBAAe,IAAIuY,GAAYvY,MA0mBvCA,cAAW,WACP,OAAAkH,EAAKyN,OAAO0Q,QAAQ5R,aAAevM,GA3jBrClH,KAAK2U,OAASA,EACd3U,KAAKslB,aAAexG,GAEfA,EAAYyG,QACf,MAAM,IAAIlf,MAAMyY,EAAYvS,SAI9BvM,KAAK6S,SAAWxL,GAAS4F,QAASlL,EAAI/B,OAAS8e,EAAYtR,WAC3DxN,KAAKqS,IAAMsC,EAAOuD,kBAAkBsN,mBACpC,IAAMrG,EAASN,GAAU4G,YAAYvG,EAAUJ,GAC/C9e,KAAK0lB,aAAe7G,GAAUxH,YAAY6H,EAAUC,EAAQnf,KAAK6S,SAASuN,aAC1EpgB,KAAK2lB,6BAEL,IAAMC,EAAgB5lB,KAAK6lB,aAAaC,mBAAmBhX,sBAAoB4K,QAC/E1F,GAAe+R,YAAYH,EAAe,WAAM,OAAA,OAEhD5lB,KAAKgmB,iBAAiBrR,GAgnB1B,OA7qBEsR,qBAAA,SAAS3O,EAA6BxN,EAA4B0D,KAElEyY,oBAAA,SAAQ3O,EAA6BxN,EAA4B0D,KAEjEyY,mBAAA,SAAO3O,EAA6BxN,EAAiC0D,KAErEyY,qBAAA,SAAS3O,EAA6BxN,EAAiC0D,KAEvEyY,oBAAA,SAAQ3O,EAA6BxN,EAAiC0D,KAEtEyY,qBAAA,SAAS3O,EAA6BxN,EAA4B0D,KAElEyY,sBAAA,SAAU3O,EAA6BxN,EAA4B0D,KAEnEyY,oBAAA,SAAQ3O,EAA6BxN,EAA4B0D,KAMzDyY,uCAAR,WAAA,WACEjmB,KAAK2U,OAAOuD,kBAAkBf,WAAWsB,aACpCrU,OAAO,SAAA8I,GAAQ,OAAAA,EAAK0G,YAAc9E,sBAAoB4K,SACtD1S,QAAQ,SAAAkG,GAAQ,OAAAgZ,GAAUhf,EAAMA,EAAKyN,OAAOuD,kBAAmBhL,MAItE+Y,qBAAA,SAASE,GACP,OAAOnmB,KAAKmY,iBAAiBgO,IAoCvBF,6BAAR,SAAyBtR,GACvB,IAAMyR,EAAiBpmB,KAAK0lB,aAAajF,SAAS1f,IAAI,SAAAkW,GAAQ,OAAAA,EAAK/T,QACnE2b,GAAUmH,iBAAiBrR,EAAOuD,kBAAkBoH,MAAOtf,KAAK0lB,aAAa5I,GAAIsJ,IAQnFH,kBAAA,WACE,OAAOjgB,GAAKhG,KAAK0lB,aAAa7I,MAAM3Z,OAQtC+iB,gBAAA,WACE,OAAOjgB,GAAKhG,KAAK0lB,aAAa5I,IAAI5Z,OAUpC+iB,iBAAA,WACE,OAAOjmB,KAAKqmB,QAAQ/iB,MAUtB2iB,eAAA,WACE,OAAOjmB,KAAKsmB,MAAMhjB,MAUpB2iB,wBAAA,WACE,OAAOjmB,KAAKslB,cAOdW,eAAA,SAAGM,GACD,OAAIA,aAAmBN,EAEdjmB,KAAKyB,IAAKqb,GAAIyJ,EAAQD,MAAM/lB,KAAMsc,KAAM0J,EAAQF,QAAQ9lB,SAG9DgmB,EAAQzJ,KAAO5F,GAAWlX,KAAKsmB,MAAOC,EAAQzJ,KAC9CyJ,EAAQ1J,OAAS3F,GAAWlX,KAAKqmB,QAASE,EAAQ1J,QA+BvDoJ,mBAAA,SAAOO,GACL,oBADKA,QACE1hB,OAAO2hB,OAAOzmB,KAAK0lB,aAAac,GAAUzlB,IAAIT,EAAK,gBAAgBe,OAAO6H,SA2DnF+c,qBAAA,SAAS/iB,EAAqBwjB,gBAAAA,QAC5B,IAAInd,EAAmBvJ,KAAK0lB,aAAagB,GAEzC,OADIxjB,IAAOqG,EAAOsV,GAAUY,QAAQlW,EAAM,SAAA0N,GAAQ,OAAAA,EAAK/T,QAAUA,GAAS+T,EAAK/T,MAAM3C,OAAS2C,KACvF,IAAI0gB,GAAera,GAAMub,YAmClCmB,6BAAA,SAAiBO,GACf,oBADeA,QACR,IAAI5C,GAAe5jB,KAAK0lB,aAAac,IAAWG,aAgCzDV,0BAAA,SAActV,EAA0CzN,gBAAAA,MACtDyN,EAAalP,EAAGogB,GAAHpgB,CAAekP,GAAcA,EAAa,IAAIkR,GAAWlR,GAEtE,IAAMwC,EAAsC,iBAAVjQ,EAAsBA,EAAQA,EAAM3C,KAChEqmB,EAAS5mB,KAAK0lB,aAAa5I,GAC3B+J,EAAaniB,GAAKkiB,EAAQ,SAAA3P,GAAQ,OAAAA,EAAK/T,MAAM3C,OAAS4S,IACrB,IAAIyQ,GAAegD,GAC3CE,gBAAgBnW,GAA2BkW,EAAW3jB,QAoBvE+iB,2BAAA,WACE,OAAOjmB,KAAK6S,SAASkU,gBAAkB,MA6BzCd,+BAAA,WACE,IAAMe,EAAKhnB,KAAK+mB,iBAChB,OAAQC,GAAMA,EAAGC,sBAAyBjnB,MAQ5CimB,oBAAA,WACE,OAAOjmB,KAAK6S,UAQdoT,qBAAA,WACE,OAAOllB,GAAIf,KAAK0lB,aAAajF,SAAUngB,EAAK,UAAUS,IAAImkB,KAQ5De,oBAAA,WACE,OAAOllB,GAAIf,KAAK0lB,aAAalF,QAASlgB,EAAK,UAAUS,IAAImkB,IAAW7kB,WAStE4lB,qBAAA,WACE,OAAOllB,GAAIf,KAAK0lB,aAAanF,SAAUjgB,EAAK,UAAUS,IAAImkB,KAe5De,kBAAA,SAAMO,EAAuBtjB,gBAAvBsjB,cACJ,IAAIjd,EAAOvJ,KAAK0lB,aAAac,GAE7B,OADAjd,EAAQrG,EAAeqG,EAAKnF,OAAO3D,EAAO,QAASyC,IAAnCqG,GACJxI,IAAIT,EAAK,UAAU8D,OAAO4T,GAAU3W,OAAO+I,QAiBzD6b,wBAAA,SAAYO,GACV,OAAOA,EAAWxmB,KAAK0lB,aAAac,GAAYxmB,KAAK0lB,cAavDO,qBAAA,SAASnH,GAGP,IAFA,IAAIoI,EAAY,EAAG/X,EAAoBnP,KAEI,OAAnCmP,EAAQA,EAAM4X,mBACpB,KAAMG,EAAY,GAAI,MAAM,IAAI7gB,MAAM,mDAGxC,IAAM8gB,GAAoCJ,eAAgB/mB,KAAM0H,OAAQ,YAK1C,QAA1B1H,KAAKwN,UAAU9F,SAAuD,IAAnCoX,EAAYtR,UAAU8N,WAC3D6L,EAAa7L,SAAW,WAG1B,IAAM8L,EAAa/f,KAAWrH,KAAKwN,UAAWsR,EAAYtR,UAAW2Z,GACrErI,EAAcA,EAAYuI,YAAYD,GAAY,GAElD,IAcyBhH,EAdnBkH,EAAgBtnB,KAAK2U,OAAOuD,kBAAkBnV,OAAO/C,KAAK0lB,aAAa7I,KAAMiC,GAC7EyI,EAAwBvnB,KAAK0lB,aAAajF,SAC1C+G,EAAwBF,EAAc5B,aAAajF,SAyBzD,OAR0C5B,GAAU7H,SAASwQ,EAAuBD,EAAuB1I,GAAU+B,kBAChHxc,OAAOpD,GANaof,EAMOtB,EAAYtR,UAAU4S,YANA,SAACnJ,GACrD,OAAOmJ,GAAenJ,EAAK/T,MAAMukB,SAASrH,EAAY7f,UAQlCyG,QAAQ,SAACiQ,EAAM1O,GACnC0O,EAAKmH,YAAcmJ,EAAsBhf,GAAK6V,cAGzCkJ,GAIDrB,2BAAR,WACE,IAAMyB,EAAK1nB,KAAK0lB,aAIhB,IAAI1lB,KAAK6S,SAAS8U,UAEdD,EAAGlH,QAAQ/gB,SAAUioB,EAAGjH,SAAShhB,QAEjCioB,EAAG5K,GAAGrd,SAAWioB,EAAG7K,KAAKpd,SAEAsM,GAAY2b,EAAG5K,GAAI4K,EAAG7K,MAC9C9b,IAAI,SAAAyY,GAAS,OAAAA,EAAM,GAAGtW,QAAUsW,EAAM,GAAGtW,QACzC7B,OAAO8I,IAAU,IACtB,CAGA,IAAMyd,EAAyBF,EAAG5K,GAAG/b,IAAI,SAACkW,GAAmB,OAAAA,EAAKkH,cAC5D3M,kFAGN,OAFezF,GAAY6b,aAEb7mB,IAAI,SAACyQ,OAACqW,OAAQC,OAAQC,OAAc,OAAA9K,GAAMK,QAAQuK,EAAQC,EAAQC,KAAW1mB,OAAO+I,SAUpG6b,oBAAA,WACE,IAAM+B,EAAUhoB,KAAKioB,iBACrB,QAAQD,GAAkBA,EAAQjnB,IAAI,SAAAQ,GAAK,OAAAA,EAAE0Z,UAAS5Z,OAAO8I,IAAU,IAUzE8b,oBAAA,WACE,QAASjmB,KAAKkoB,kBAIhBjC,2BAAA,WACE,IAAMkC,EAAUnoB,KAAK2U,OAAO0Q,QAAQ5R,WAC9B2M,EAAcpgB,KAAK6S,SAASuN,YAE5BgI,EAAO,SAACpH,EAAOC,GACnB,GAAID,EAAMvhB,SAAWwhB,EAAMxhB,OAAQ,OAAO,EAC1C,IAAMuX,EAAW6H,GAAU7H,SAASgK,EAAOC,GAC3C,OAAOD,EAAMvhB,SAAWuX,EAAS5S,OAAO,SAAA6S,GAAQ,OAACmJ,IAAgBnJ,EAAK/T,MAAMukB,SAASrH,EAAY7f,QAAOd,QAGpG4oB,EAAQroB,KAAKqX,cACbiR,EAASH,GAAWA,EAAQ9Q,cAElC,OAAIiR,GAAUF,EAAKE,EAAOxL,GAAIuL,EAAMvL,KAAOsL,EAAKE,EAAO9H,QAAS6H,EAAM7H,SAAiB,gBAC1D,IAAzB6H,EAAM7H,QAAQ/gB,QAA0C,IAA1B4oB,EAAM5H,SAAShhB,QAAgB2oB,EAAKC,EAAMxL,KAAMwL,EAAMvL,IAAY,qBAApG,GAYFmJ,gBAAA,WAAA,WACQsC,EAAcvU,GAAeuU,YAG7BC,EAAc,SAAChQ,GACjB,OAAAtR,EAAK2e,aAAaC,mBAAmBtN,IAsCnCiQ,EAAiBD,EAAY1Z,sBAAoB4Z,QAKvD,OAJA1U,GAAe+R,YAAY0C,EAbH,WACtB,IAAMpD,EAAUne,EAAKyN,OAAO0Q,QAQ5B,OANAA,EAAQsD,wBAA0BzhB,EAAKmL,IACvCgT,EAAQ5R,WAAavM,EACrBme,EAAQuD,kBAAkBC,QAAQ3hB,GAElCuL,GAAMqW,qBAAqB5hB,GAEpBZ,EAASC,GAAGkK,UAAKjK,KAKrB8G,KAtBiB,WAGpB,IAAMyb,EAAcP,EAAY1Z,sBAAoB+E,KAEpD,OAAOG,GAAe+R,YAAYgD,EADrB,WAAM,OAAAziB,EAASC,GAAGkK,UAAKjK,OAmBjC8G,KAtCqB,WACxBmF,GAAMuW,aAAa9hB,EAAKof,MAAOpf,GAC/BA,EAAK+hB,SAAU,EACf/hB,EAAKke,UAAUpC,QAAQ9b,EAAK4V,MAC5ByL,EAAYC,EAAY1Z,sBAAoBoa,WAGtB,SAACrY,GACvB4B,GAAM0W,WAAWtY,EAAQ3J,GACzBA,EAAK+hB,SAAU,EACf/hB,EAAKke,UAAU5Y,OAAOqE,GACtB3J,EAAKkiB,OAASvY,EACd0X,EAAYC,EAAY1Z,sBAAoBd,UA4BvChO,KAAKmM,SAYd8Z,kBAAA,WACE,OAAQjmB,KAAKuM,cAA4B/F,IAAjBxG,KAAKipB,SAS/BhD,kBAAA,WAEM/gB,EAAYlF,KAAKipB,WACnBjpB,KAAKiW,UAAW,IAYpBgQ,kBAAA,WACE,IAAM/iB,EAAqBlD,KAAKsmB,MAEhC,GAAIpjB,EAAMI,KAAK+lB,SACb,MAAO,wCAAwCnmB,EAAM3C,SAEvD,IAAM+oB,EAAYpmB,EAAMe,aAAcC,EAASlE,KAAKmE,SAC9ColB,EAAgBD,EAAUllB,OAAO,SAAAC,GAAS,OAACA,EAAMkZ,UAAUrZ,EAAOG,EAAME,OAC9E,OAAIglB,EAAc9pB,OACT,qCAAqCyD,EAAM3C,6BAA4BgpB,EAAcxoB,IAAI,SAAAsD,GAAS,OAAAA,EAAME,KAAIhC,KAAK,YAGrG,IAAjBvC,KAAKipB,QACAjpB,KAAKopB,YADd,GASFnD,qBAAA,WACE,IAAMuD,EAAkBxpB,KAAK6c,OACvB4M,EAAgBzpB,KAAK8c,KAErB4M,EAAiB,SAACvlB,GACtB,OAAiB,OAAhBA,EAAO,WAAiCqC,IAAhBrC,EAAO,KAAsBA,EAAS8b,GAAK9b,GAAS,OAU/E,MAAO,cAPInE,KAAKqS,WACLzN,EAAS4kB,GAAmBA,EAAgBjpB,KAAOipB,OAC7CziB,GAAU2iB,EAAe1pB,KAAK0lB,aAAa7I,KAAK9b,IAAIT,EAAK,gBAAgBe,OAAO6H,iBACnFlJ,KAAKulB,QAAU,GAAK,aACzB3gB,EAAS6kB,GAAiBA,EAAclpB,KAAOkpB,OACzC1iB,GAAU2iB,EAAe1pB,KAAKmE,iBA9tBxC8hB,UAAUA,OCtBnB,YAA0BvF,EAAaiJ,GACrC,OAAIA,EAAIlqB,QAAUihB,EAAYiJ,EACvBA,EAAIzP,OAAO,EAAGwG,EAAM,GAAK,MAYlC,YAA0BjhB,EAAgBkqB,GACxC,KAAOA,EAAIlqB,OAASA,GAAQkqB,GAAO,IACnC,OAAOA,EAGT,YAA4BC,GAC1B,OAAOA,EACFxW,QAAQ,WAAY,SAAAyW,GAAM,OAAAA,EAAGC,gBAC7B1W,QAAQ,WAAY,SAAAyW,GAAM,MAAA,IAAMA,EAAGC,gBAG1C,YAaiC3qB,GAC/B,IAAM4qB,EAAQ5T,GAAWhX,GACnB6qB,EAAqBD,EAAM1N,MAAM,8BACjCxX,EAAQmlB,EAAqBA,EAAmB,GAAKD,EAErD9nB,EAAS9C,EAAS,MAAK,GAC7B,OAAI8C,GAAU4C,EAAMwX,MAAM,eACjB,YAAcpa,EAAS4C,EAAMqV,OAAO,GAEtCrV,EAGT,YAA2B1F,GACzB,IAAM8qB,EAAMvkB,EAAQvG,GAAMA,EAAGE,OAAO,GAAG,GAAKF,EAC5C,OAAO8qB,GAAOA,EAAIllB,YAAc,YAGlC,IAAImlB,GAA2C,KACzCC,GAAmB,SAAStoB,GAChC,IAAMuoB,EAAc/c,GAAUgd,mBAc9B,OAZAH,GAA2BA,IAAsBjQ,IAC9CjZ,EAAImE,GAAapD,EAAI,eACrBqD,EAAiBrD,EAAI,UACrBkE,EAAiBlE,EAAI,eACrBqoB,EAAiB,SAAC7oB,GAAW,OAAAA,EAAEgM,qBAAqBxI,cACpDtD,EAAG4L,IAAcsQ,EAAO,cACxBlc,EAAGwkB,IAActI,EAAO,cACxBlc,EAAGogB,IAAclE,EAAO,cACxB3B,EAAiB5L,KACjBrO,GAAI,GAAaiW,MAGMnW,IAG5B,YAA0BwD,GACxB,IAAMilB,KAUN,OAAO1jB,KAAKG,UAAU1B,EAAG,SAAC+B,EAAKvF,GAAU,OARzC,SAAgBA,GACd,GAAI+C,EAAS/C,GAAQ,CACnB,IAA6B,IAAzByoB,EAAKliB,QAAQvG,GAAe,MAAO,iBACvCyoB,EAAK3hB,KAAK9G,GAEZ,OAAOsoB,GAAiBtoB,GAGe0oB,CAAO1oB,KAAQuR,QAAQ,OAAQ,KAI1E,IAAaoX,GAAoB,SAACC,GAAiB,OAAA,SAACd,GAClD,IAAKA,EAAK,OAAQ,GAAI,IACtB,IAAMphB,EAAMohB,EAAIvhB,QAAQqiB,GACxB,OAAa,IAATliB,GAAoBohB,EAAK,KACrBA,EAAIzP,OAAO,EAAG3R,GAAMohB,EAAIzP,OAAO3R,EAAM,MAGlCmiB,GAAY,IAAIjoB,OAAO,yBACvBkoB,GAAuB,SAAChB,GAAgB,OAAAA,EAAIvW,QAAQ,WAAY,KAChEwX,GAAYJ,GAAkB,KAC9BK,GAAaL,GAAkB,KAC/BM,GAAaN,GAAkB,KAC/BO,GAAc,SAACpB,GAAgB,OAAAA,EAAMA,EAAIvW,QAAQ,KAAM,IAAM,IAY1E,YAA6B4X,GAC3B,IAAMC,EAAK,IAAIxoB,OAAO,IAAMuoB,EAAQ,IAAK,KACzC,OAAO,SAACrB,GACJ,OAAAA,EAAI7oB,MAAMmqB,GAAI7mB,OAAO4T,IAgB3B,YAA+BjQ,EAAYxG,GACzC,OAAIkE,EAASO,GAAK+B,KAAStC,EAASlE,GAC3BwG,EAAI1I,MAAM,GAAI,GAAGO,OAAOoG,GAAK+B,GAAOxG,GACtC+I,GAAMvC,EAAKxG,GClIpB,IA0NQ2pB,iBA5CN,aARAlrB,cAAU,EAEVA,kBAGQA,kBAAoBiJ,GAAKkiB,EAAW/nB,WAAY,OAAQ,SAAU,QAAS,OAAQ,MAAO,OAAQ,OAAQ,OAAQ,QAOxHpD,KAAKorB,MAAQjoB,EAAQpC,GAAIf,KAAKqrB,aAFb,SAACC,EAAiC/qB,GAC/C,OAAA,IAAIwZ,GAAU1S,GAAS9G,QAAQ+qB,UAoCvC,OA/BEH,oBAAA,WACEnrB,KAAKorB,UAQPD,iBAAA,SAAK5qB,EAAc+qB,EAAkCC,GACnD,IAAKpmB,EAAUmmB,GAAa,OAAOtrB,KAAKorB,MAAM7qB,GAC9C,GAAIP,KAAKorB,MAAM9mB,eAAe/D,GAAO,MAAM,IAAI8F,MAAM,iBAAiB9F,iCAStE,OAPAP,KAAKorB,MAAM7qB,GAAQ,IAAIwZ,GAAU1S,GAAS9G,QAAQ+qB,IAE9CC,IACFvrB,KAAKwrB,UAAU7iB,MAAOpI,OAAMuZ,IAAKyR,IAC5BvrB,KAAK6oB,SAAS7oB,KAAKyrB,mBAGnBzrB,MAITmrB,4BAAA,WACE,KAAOnrB,KAAKwrB,UAAU/rB,QAAQ,CAC5B,IAAMyN,EAAOlN,KAAKwrB,UAAUze,QAC5B,GAAIG,EAAK+M,QAAS,MAAM,IAAI5T,MAAM,qDAClCgB,EAAOrH,KAAKorB,MAAMle,EAAK3M,MAAO+F,EAASG,UAAUkX,OAAOzQ,EAAK4M,aAQ3DoR,GAAkB,SAACpR,GACvB,IAAM4R,EAAc,SAAC3pB,GACjB,OAAO,MAAPA,EAAcA,EAAIgD,WAAahD,GAE7B4pB,GACJ3N,OAAQ0N,EACRvR,OAAQuR,EACRjqB,GAAIA,EAAGmqB,QACP3R,QAAS,KAETzS,OAAQ,SAAC0K,EAAQ5Q,GAAW,OAAA4Q,GAAK5Q,IAGnC,OAAO+F,KAAWskB,EAAiB7R,IAIrCzS,EAAO8jB,GAAW/nB,WAChByoB,OAAQX,OAER3hB,KAAM2hB,IACJjR,QAAS,UAGX6R,MAAOZ,OAEPa,KAAMb,IACJ/nB,SAAS,IAGX6oB,IAAKd,IACH/Q,OAAQ,SAACpY,GAAgB,OAAA0N,SAAS1N,EAAK,KACvCN,GAAI,SAASM,GACX,OAAQuD,EAAkBvD,IAAQ/B,KAAKma,OAAOpY,EAAIgD,cAAgBhD,GAEpEkY,QAAS,UAGXgS,KAAMf,IACJlN,OAAQ,SAACjc,GAAa,OAAAA,EAAO,EAAK,GAClCoY,OAAQ,SAACpY,GAAgB,OAAsB,IAAtB0N,SAAS1N,EAAK,KACvCN,GAAIA,EAAGyqB,SACPjS,QAAS,QAGXkS,KAAMjB,IACJlN,OAAQ,SAASjc,GACf,OAAQ/B,KAAKyB,GAAGM,IACdA,EAAIqqB,eACH,KAAOrqB,EAAIsqB,WAAa,IAAIhtB,OAAO,IACnC,IAAM0C,EAAIuqB,WAAWjtB,OAAO,IAC7BkD,KAAK,UAJgBiE,GAMzB2T,OAAQ,SAASpY,GACf,GAAI/B,KAAKyB,GAAGM,GAAM,OAAaA,EAC/B,IAAMsa,EAAQrc,KAAKusB,QAAQ5pB,KAAKZ,GAChC,OAAOsa,EAAQ,IAAImQ,KAAKnQ,EAAM,GAAIA,EAAM,GAAK,EAAGA,EAAM,SAAM7V,GAE9D/E,GAAI,SAACM,GAAa,OAAAA,aAAeyqB,OAAS9c,MAAM3N,EAAI0qB,YACpDjlB,gBAAO0R,EAAQC,GACb,OAAQ,cAAe,WAAY,WAC9B9X,OAAO,SAAC0G,EAAK5I,GAAO,OAAA4I,GAAOmR,EAAE/Z,OAAUga,EAAEha,OAAO,IAEvD8a,QAAS,0DACTsS,QAAS,0DAGXG,KAAMxB,IACJlN,OAAQlX,EACRqT,OAAQxT,EACRlF,GAAIA,EAAGqD,QACP0C,OAAQA,EACRyS,QAAS,UAIXzY,IAAK0pB,IACHlN,OAAQhG,EACRmC,OAAQnC,EACRvW,GAAI,WAAM,OAAA,GACV+F,OAAQA,MC9Td,kBAGE,WAAYrD,gBAAAA,MACVkD,EAAOrH,KAAMmE,GA8BjB,OAnBEwoB,qBAAA,SAAStZ,EAAgBuZ,EAAuBtG,GAC9C,IAAIuG,EACEC,EAAUC,GAAUH,EAAUtG,GAChC0G,KACAC,KAEJ,IAAK,IAAMntB,KAAKgtB,EACd,GAAKA,EAAQhtB,IAAOgtB,EAAQhtB,GAAGqE,SAC/B0oB,EAAe/nB,OAAOqC,KAAK2lB,EAAQhtB,GAAGqE,SACpB1E,OAElB,IAAK,IAAM+L,KAAKqhB,EACVI,EAAY7kB,QAAQykB,EAAarhB,KAAO,IAC5CyhB,EAAYtkB,KAAKkkB,EAAarhB,IAC9BwhB,EAAUH,EAAarhB,IAAMxL,KAAK6sB,EAAarhB,KAGnD,OAAOnE,KAAW2lB,EAAW3Z,SCAjC,YAAqBnQ,GACnB,OAAOA,EAAM3C,KAGf,YAAqB2C,GAEnB,OADAA,EAAMI,KAAKD,QAAU,WAAM,OAAAH,GACpBA,EAAMI,KAGf,YAAqBJ,GAInB,OAHIA,EAAMU,QAAUV,EAAMU,OAAOgN,OAC/B1N,EAAM0N,KAAO1N,EAAMI,KAAKsN,KAAOzN,EAAQD,EAAMU,OAAOgN,KAAM1N,EAAM0N,OAE3D1N,EAAM0N,KAGf,IAAMsc,GAAgB,SAACC,EAA+CtpB,GACtE,OAAA,SAAoBX,GAClB,IAAMkqB,EAAmClqB,EAIrCkqB,GAAYA,EAAS5oB,KAAO4oB,EAAS7sB,MAAQ6sB,EAAS7sB,KAAK8b,MAAM,aACnE+Q,EAAS5oB,KAAO,mBAGlB,IAAM6oB,EAlDS,SAAC7oB,GAChB,IAAKiB,EAASjB,GAAM,OAAO,EAC3B,IAAMX,EAAyB,MAAlBW,EAAI8oB,OAAO,GACxB,OAASvrB,IAAK8B,EAAOW,EAAI+oB,UAAU,GAAK/oB,EAAKX,QA+C9B2pB,CAASJ,EAAS5oB,KAAMZ,EAASV,EAAMU,OAChDY,EAAO6oB,EAAwBF,EAA2BM,QAAQJ,EAAOtrB,KAC7EoC,OAAQjB,EAAMiB,WACdupB,SAAU,SAAUC,EAAkBtT,GAEpC,OADgC,IAA5B+S,EAASQ,gBAA4BvT,IAAUsT,EAActmB,EAAOsmB,OAAqB1S,SAAS,KAC/F0S,KAJWP,EAAS5oB,IAQ/B,IAAKA,EAAK,OAAO,KACjB,IAAK2oB,EAA2BU,UAAUrpB,GAAM,MAAM,IAAI6B,MAAM,gBAAgB7B,iBAAkBtB,OAClG,OAAQmqB,GAAUA,EAAOxpB,KAAQW,GAAQZ,GAAUA,EAAOkqB,WAAcjqB,KAAQW,IAAIupB,OAAoBvpB,KAGpGwpB,GAAsB,SAACC,GAC7B,OAAA,SAA0B/qB,GACxB,OAAQ+qB,EAAO/qB,IAAUA,EAAMsB,IAAMtB,EAASA,EAAMU,OAASV,EAAMU,OAAOkqB,UAAY,OAGlFI,GAAmB,SAACC,GAC1B,OAAA,SAAuBjrB,GACrB,IACMkrB,EAAsBlrB,EAAMsB,KAAOtB,EAAMsB,IAAIP,YAAad,SAAS,QACnEkrB,EAAwBnqB,GAAO8F,GAAOiW,GAAK/c,EAAMiB,WAAciqB,EAAUrtB,IAAIT,EAAK,QAFhE,SAACuC,EAAa0B,GAAe,OAAA4pB,EAAaG,WAAW/pB,EAAI,KAAM1B,MAGvF,OAAOurB,EAAUxuB,OAAOyuB,GAActtB,IAAI,SAAAwtB,GAAK,OAACA,EAAEhqB,GAAIgqB,KAAIltB,OAAOod,SAGnE,YAAqBvb,GACnB,OAAOA,EAAMU,OAASV,EAAMU,OAAO2F,KAAK3J,OAAOsD,IAAmBA,GAGpE,YAAyBA,GACvB,IAAMukB,EAAWvkB,EAAMU,OAASyD,KAAWnE,EAAMU,OAAO6jB,aAExD,OADAA,EAASvkB,EAAM3C,OAAQ,EAChBknB,EA4CT,YAAmCvkB,GAIjC,IAA2BsrB,EAAiBvL,EAsBtCwL,EAAoB,SAACF,GAAW,OAAAA,EAAEG,SAAWH,EAAE/jB,OAG/CmkB,EAAqB1U,IACxB3Z,EAAK,aAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAIA,EAAE7M,UAAW6M,EAAE5M,KAAM4M,EAAE3M,WAC7EthB,EAAK,cAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAIA,EAAEK,WAAaL,EAAE5M,MAAQ4M,EAAEM,aAAeN,EAAE3M,WAClGthB,EAAK,YAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAI,WAAM,OAAA,IAAUA,EAAEO,aAAiBP,EAAE3M,WAC3FthB,EAAK,YAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAI,WAAM,OAAAA,EAAEQ,aAAcR,EAAE3M,OAAQ2M,EAAEQ,aACxFzuB,EAAK,eAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAIvW,GAAWuW,EAAES,aAAcT,EAAE3M,YAGhFqN,EAAmBhV,IACtBpZ,EAAKP,EAAK,OAAQmF,GAAa,SAAC+T,GAAiB,OAAA,IAAIqI,GAAWrI,EAAMhP,MAAOwN,GAAYwB,EAAMzX,KAAOyX,EAAMoI,WAC5G/gB,EAAKP,EAAK,OAAQoF,GAAa,SAAC8T,GAAiB,OAAA,IAAIqI,GAAWrI,EAAMhP,MAAOxE,GAAawT,EAAMzX,KAAMyX,EAAMzX,IAAI1C,MAAM,GAAI,GAAIma,EAAMoI,WACpI/gB,EAAKP,EAAK,OAAQqE,GAAa,SAAC6U,GAAiB,OAAA,IAAIqI,GAAWrI,EAAMhP,MAAOgP,EAAMzX,KAhC3D5C,EAgCyEqa,EAAMzX,IA/BlG0E,EAAYH,EAASG,UAIpBtH,EAAY,SAAMsH,GAAaA,EAAUyoB,SAAS/vB,EAAIsH,EAAU0oB,WAAoB,YA2BmB3V,EAAMoI,QAhC5F,IAACziB,EACnBsH,MAkCF2oB,EAA6CnV,IAChDxY,EAAGogB,IAA4B,SAAC1I,GAAkB,OAAAA,KA3B3B,SAAC3Y,GAAa,SAAGA,EAAIgK,QAAShK,EAAIkhB,YA4B1BiN,IAzBR,SAACnuB,GAAa,SAAIA,EAAIkuB,UAAWluB,EAAIgK,SAAWhK,EAAIuuB,UAAYvuB,EAAIouB,YAAcpuB,EAAIwuB,aAAexuB,EAAIsuB,YA0BjGH,IAvBR,SAACnuB,GAAa,SAAGA,GAAOA,EAAIuB,MAAQ0D,EAASjF,EAAIuB,MAAQ2D,EAAQlF,EAAIuB,MAAS4C,EAAWnE,EAAIuB,QAwBrFktB,IAC/BltB,GAAI,GAA2B,SAACvB,GAAe,MAAM,IAAI6F,MAAM,0BAA4BU,GAAUvG,QAKlG6uB,EAAOnsB,EAAM8f,QAEnB,OADqBtd,EAAQ2pB,GAAQA,GAlDVb,EAkDgCa,EAlDfpM,EAkDqB/f,EAAMgf,kBAjDnEpd,OAAOqC,KAAKqnB,OAAkBztB,IAAI,SAAAyJ,GAAS,OAAGA,QAAOzI,IAAKysB,EAAWhkB,GAAQmX,UAAMnb,EAAWob,OAAQqB,EAAgBzY,QAkD7GzJ,IAAIquB,GAenB,kBAIE,WAAoBrc,EAAuBwI,GAAvBvb,aAAA+S,EAClB,IAAMzP,EAAOtD,KAEP6D,EAAO,WAAM,OAAAkP,EAAQrO,KAAK,KAC1BupB,EAAS,SAAC/qB,GAAuB,MAAe,KAAfA,EAAM3C,MAO7CP,KAAKsvB,UACH/uB,MAAQgvB,IACRjsB,MAAQksB,IACR5rB,QARF,SAAuBV,GACrB,OAAI+qB,EAAO/qB,GAAe,KACnB6P,EAAQrO,KAAKpB,EAAKmsB,WAAWvsB,KAAWW,MAO/C+M,MAAQ8e,IAERlrB,KAAO0oB,GAAc3R,EAAmB1X,IAExCiqB,WAAaE,GAAoBC,IACjC9pB,QAAU+pB,GAAiB3S,EAAkB4S,eAG7C9P,SAEA9U,MAAQomB,IAERlI,UAAYmI,IACZxR,aAAeyR,KA+ErB,OAjEEC,oBAAA,SAAQvvB,EAAcpB,GACpB,IAAMmwB,EAAWtvB,KAAKsvB,SAChBnnB,EAAQmnB,EAAS/uB,OAEvB,OAAIkF,EAASlF,KAAU4E,EAAUhG,GAAYgJ,EAAM1I,OAAS,EAAI0I,EAAQA,EAAM,GACzE1C,EAASlF,IAAUoE,EAAWxF,IAEnCmwB,EAAS/uB,GAAQ4H,EACjBmnB,EAAS/uB,GAAMoI,KAAKxJ,GACb,WAAM,OAAAmwB,EAAS/uB,GAAMiI,OAAO8mB,EAAS/uB,GAAM6H,QAAQjJ,EAAI,KAAO,YAJrE,GAcF2wB,kBAAA,SAAM5sB,GACE,IAAE6P,eAASuc,gBACX1rB,EAAS5D,KAAKyvB,WAAWvsB,GAE/B,GAAIU,IAAWmP,EAAQrO,KAAKd,OAAQ4C,GAAW,GAC7C,OAAO,KAGT,IAAK,IAAMY,KAAOkoB,EAChB,GAAKA,EAAShrB,eAAe8C,GAA7B,CACA,IAAMoN,EAAQ8a,EAASloB,GAAK/F,OAAO,SAAC0uB,EAA2B/f,GAA0B,OAAA,SAACuG,GAAW,OAAAvG,EAAKuG,EAAQwZ,KAAWvc,GAC7HtQ,EAAMkE,GAAOoN,EAAMtR,GAErB,OAAOA,GAGT4sB,uBAAA,SAAW5sB,GAET,IAAM3C,EAAO2C,EAAM3C,MAAQ,GAErByvB,EAAWzvB,EAAKO,MAAM,KAM5B,GAFoB,OAFAkvB,EAASC,OAEHD,EAASC,MAE/BD,EAASvwB,OAAQ,CACnB,GAAIyD,EAAMU,OACR,MAAM,IAAIyC,MAAM,mFAAmF9F,OAIrG,OAAOyvB,EAASztB,KAAK,KAGvB,OAAKW,EAAMU,OACJ6B,EAASvC,EAAMU,QAAUV,EAAMU,OAASV,EAAMU,OAAOrD,KADlC,IAI5BuvB,iBAAA,SAAK5sB,GACH,IAAM3C,EAAO2C,EAAM3C,KACnB,IAA2B,IAAvBA,EAAK6H,QAAQ,OAAgBlF,EAAMU,OAAQ,OAAOrD,EAEtD,IAAMkvB,EAAahqB,EAASvC,EAAMU,QAAUV,EAAMU,OAASV,EAAMU,OAAOrD,KACxE,OAAOkvB,EAAaA,EAAa,IAAMlvB,EAAOA,sBC7ThD,WAAqB2vB,GAAAlwB,aAAAkwB,EA0DvB,OAxDEC,uBAAA,SAAWhd,GAET,OAAkC,KADlCA,EAAYA,GAAa,IACR/K,QAAQ,MAAyC,IAA3B+K,EAAU/K,QAAQ,MAI3D+nB,iBAAA,SAAKC,EAA0Bld,EAAoBmd,GACjD,gBADiDA,MAC5CD,GAA+B,KAAhBA,EAApB,CACA,IAAME,EAAQ7qB,EAAS2qB,GACnB7vB,EAAe+vB,EAAQF,EAAoBA,EAAa7vB,KAExDP,KAAKuwB,WAAWhwB,KAAOA,EAAOP,KAAKwwB,YAAYjwB,EAAM2S,IACzD,IAAMhQ,EAAQlD,KAAKkwB,QAAQ3vB,GAE3B,GAAI2C,IAAUotB,KAAWA,GAAUptB,IAAUktB,GAAeltB,EAAMI,OAAS8sB,IACzE,OAAOltB,EACF,GAAIotB,GAASD,EAAW,CAC7B,IACM5Z,EADUvS,GAAOlE,KAAKkwB,SACJ9rB,OAAO,SAAAmS,GAC3B,OAAAA,EAAOhT,mBAAmBC,UAC1B+S,EAAOhT,mBAAmBC,SAASiT,QAAQlW,KAO/C,OAJIkW,EAAQhX,OAAS,GAEnBiP,QAAQC,IAAI,iDAAiDpO,kBAAqBkW,EAAQ1V,IAAI,SAAAsb,GAAS,OAAAA,EAAM9b,QAExGkW,EAAQ,MAKnB0Z,wBAAA,SAAY5vB,EAAc2S,GACxB,IAAKA,EAAM,MAAM,IAAI7M,MAAM,sCAAsC9F,OAQjE,IANA,IAAMkwB,EAAyBzwB,KAAK0E,KAAKwO,GAEnCwd,EAAYnwB,EAAKO,MAAM,KACvB6vB,EAAaD,EAAUjxB,OACzBK,EAAI,EAAGmN,EAAUwjB,EAEd3wB,EAAI6wB,EAAY7wB,IACrB,GAAqB,KAAjB4wB,EAAU5wB,IAAmB,IAANA,EAA3B,CAIA,GAAqB,MAAjB4wB,EAAU5wB,GAKd,MAJE,IAAKmN,EAAQrJ,OAAQ,MAAM,IAAIyC,MAAM,SAAS9F,4BAA8BkwB,EAAUlwB,UACtF0M,EAAUA,EAAQrJ,YALlBqJ,EAAUwjB,EAUd,IAAMG,EAAUF,EAAUrxB,MAAMS,GAAGyC,KAAK,KACxC,OAAO0K,EAAQ1M,MAAQ0M,EAAQ1M,MAAQqwB,EAAU,IAAM,IAAMA,sBC9C/D,WACYC,EACAC,EACDvR,EACAwR,EACAC,GAJChxB,eAAA6wB,EACA7wB,gBAAA8wB,EACD9wB,YAAAuf,EACAvf,aAAA+wB,EACA/wB,eAAAgxB,EACThxB,KAAKixB,SACLjxB,KAAK+S,QAAU8d,EAAU9d,QAkF7B,OA9EEme,oBAAA,WACElxB,KAAKixB,UAGPC,qBAAA,SAASluB,GACP,IAAMiuB,EAAQjxB,KAAKixB,MACb/tB,EAAQJ,EAAYC,OAAOC,GAC3BzC,EAAO2C,EAAM3C,KAEnB,IAAKkF,EAASlF,GAAO,MAAM,IAAI8F,MAAM,gCACrC,GAAIrG,KAAKuf,OAAOjb,eAAe/D,IAAS0H,EAAQgpB,EAAMlwB,IAAIT,EAAK,SAAUC,GACvE,MAAM,IAAI8F,MAAM,UAAU9F,0BAK5B,OAHA0wB,EAAMtoB,KAAKzF,GACXlD,KAAKmxB,QAEEjuB,GAGTguB,kBAAA,WAQE,IARF,WACUD,aAAO1R,cAAQwR,eACjBK,KACFC,KACAC,KACEC,EAAW,SAAChxB,GACd,OAAA2G,EAAKqY,OAAOjb,eAAe/D,IAAS2G,EAAKqY,OAAOhf,IAE7C0wB,EAAMxxB,OAAS,GAAG,CACvB,IAAMyD,EAAqB+tB,EAAMlkB,QAC3BykB,EAAOtuB,EAAM3C,KACbR,EAAsBgxB,EAAQU,MAAMvuB,GACpCwuB,EAAoBL,EAAQjpB,QAAQlF,GAE1C,GAAInD,EAAJ,CACE,IAAM4xB,EAAgBJ,EAASC,GAC/B,GAAIG,GAAiBA,EAAcpxB,OAASixB,EAC1C,MAAM,IAAInrB,MAAM,UAAUmrB,0BAG5B,IAAMI,EAAsBL,EAASC,EAAO,OACxCI,GAEF5xB,KAAK6wB,UAAUlb,WAAWic,GAG5BrS,EAAOiS,GAAQtuB,EACflD,KAAK6xB,YAAY3uB,GACbwuB,GAAa,GAAGL,EAAQ7oB,OAAOkpB,EAAW,GAC9CN,EAAWzoB,KAAKzF,OAflB,CAmBA,IAAMiR,EAAOmd,EAAoBE,GAEjC,GADAF,EAAoBE,GAAQP,EAAMxxB,OAC9BiyB,GAAa,GAAKvd,IAAS8c,EAAMxxB,OAInC,OADAwxB,EAAMtoB,KAAKzF,GACJqc,EACEmS,EAAY,GACrBL,EAAQ1oB,KAAKzF,GAGf+tB,EAAMtoB,KAAKzF,IAOb,OAJIkuB,EAAW3xB,QACbO,KAAKgxB,UAAUhqB,QAAQ,SAAA8qB,GAAY,OAAAA,EAAS,aAAcV,EAAWrwB,IAAI,SAAAgxB,GAAK,OAAAA,EAAEzuB,UAG3Eic,GAGT2R,wBAAA,SAAYhuB,IACNA,EAAMmmB,UAAanmB,EAAMsB,KAE7BxE,KAAK8wB,WAAWkB,KAAKhyB,KAAK8wB,WAAWmB,eAAelvB,OAAOG,wBCnE7D,WAAoBgvB,GAAAlyB,aAAAkyB,EATZlyB,eAMRA,kBAIEA,KAAK+S,QAAU,IAAIod,GAAanwB,KAAKuf,QACrCvf,KAAK+wB,QAAU,IAAIjB,GAAa9vB,KAAK+S,QAASmf,EAAQ3W,mBACtDvb,KAAKmyB,WAAa,IAAIjB,GAAkBlxB,KAAMkyB,EAAQE,UAAWpyB,KAAKuf,OAAQvf,KAAK+wB,QAAS/wB,KAAKgxB,WACjGhxB,KAAKqyB,gBAmKT,OA/JUC,0BAAR,YAWgBtyB,KAAKuyB,MAAQvyB,KAAKmyB,WAAWK,UATzCjyB,KAAM,GACNiE,IAAK,IACL6Z,MAAO,KACPla,QACEsuB,KAAO5wB,MAAO,KAAMqL,KAAM,OAAQ+N,SAAS,IAE7CoO,UAAU,KAINyE,UAAY,MAIpBwE,oBAAA,WAAA,WACEtyB,KAAKmyB,WAAWO,UAChB1yB,KAAKgxB,aACLhxB,KAAK4iB,MAAM5b,QAAQ,SAAA9D,GAAS,OAAAgE,EAAK0b,IAAI1f,IAAUgE,EAAKyO,WAAWzS,MAiCjEovB,4BAAA,SAAgBR,GAEd,OADA9xB,KAAKgxB,UAAUroB,KAAKmpB,GACb,WACLzpB,EAAWrI,KAAKgxB,UAAhB3oB,CAA2BypB,IAC3BjrB,KAAK7G,OAYTsyB,iBAAA,WACE,OAAOtyB,KAAKuyB,OAedD,qBAAA,SAASK,GACP,OAAO3yB,KAAKmyB,WAAWK,SAASG,IAI1BL,4BAAR,SAAwBpvB,GAAxB,WACQ/B,EAAMnB,KAAK4iB,MAAM7hB,IAAI,SAAAgxB,GAAK,OAAAA,EAAE1uB,YAC5BuvB,EAAc,SAACrT,GACnB,IAAMsT,EAAY1xB,EAAIiD,OAAO,SAAA2tB,GAAK,OAA8B,IAA9BxS,EAAOnX,QAAQ2pB,EAAEnuB,UACnD,OAA4B,IAArBivB,EAAUpzB,OAAeozB,EAAYA,EAAUjzB,OAAOgzB,EAAYC,KAGrEC,EAAWF,GAAa1vB,IACxB6vB,GAA+B7vB,GAAOtD,OAAOkzB,GAAUzyB,UAU7D,OARA0yB,EAAa/rB,QAAQ,SAAAuP,GACnB,IAAMyc,EAAM9rB,EAAKgrB,QAAQE,UAEzBY,EAAIC,QAAQ7uB,OAAO3D,EAAO,QAAS8V,IAASvP,QAAQgsB,EAAIE,WAAWrsB,KAAKmsB,WAEjE9rB,EAAKqY,OAAOhJ,EAAOhW,QAGrBwyB,GAYTT,uBAAA,SAAWlC,GACT,IAAM7Z,EAASvW,KAAK4iB,IAAIwN,GACxB,IAAK7Z,EAAQ,MAAM,IAAIlQ,MAAM,sCAAwC+pB,GACrE,IAAM+C,EAAqBnzB,KAAKozB,gBAAgB7c,EAAOlT,WAGvD,OADArD,KAAKgxB,UAAUhqB,QAAQ,SAAA8qB,GAAY,OAAAA,EAAS,eAAgBqB,EAAmBpyB,IAAI,SAAAgxB,GAAK,OAAAA,EAAEzuB,UACnF6vB,GAwBTb,gBAAA,SAAIlC,EAA2Bld,GAA/B,WACE,GAAyB,IAArB3T,UAAUE,OACZ,OAA4BqF,OAAOqC,KAAKnH,KAAKuf,QAAQxe,IAAI,SAAAR,GAAQ,OAAA2G,EAAKqY,OAAOhf,GAAM+C,OACrF,IAAM+vB,EAAQrzB,KAAK+S,QAAQrO,KAAK0rB,EAAald,GAC7C,OAAOmgB,GAASA,EAAM/vB,MAAQ,MAGhCgvB,sBAAA,SAAU/xB,EAAc+yB,GACtB,OAAOtzB,KAAK+wB,QAAQA,QAAQxwB,EAAM+yB,SCzLtC,YAAqB3J,EAAUtlB,GAC7B,IAAIkvB,GAAmB,GAAI,IAAKxzB,EAAS4pB,EAAIvW,QAAQ,wBAAyB,QAC9E,IAAK/O,EAAO,OAAOtE,EAEnB,OAAQsE,EAAMoY,QACZ,KAAK,EACH8W,GAAmB,IAAK,KAAOlvB,EAAMkY,WAAa,IAAM,KAAM,MAChE,KAAK,EACHxc,EAASA,EAAOqT,QAAQ,MAAO,IAC/BmgB,GAAmB,QAAU,SAC7B,MACF,QACEA,GAAmB,IAAIlvB,EAAMoY,WAAW,MAE5C,OAAO1c,EAASwzB,EAAgB,GAAKlvB,EAAM6I,KAAK+M,QAAQvS,OAAS6rB,EAAgB,GAInF,IAIMC,GAAeC,GAAa,mBA2KhC,WAAYxZ,EAAiBwB,EAAwB0S,EAAmCtrB,GAAxF,WAAwF7C,YAAA6C,EAxGhF7C,aAA4BuJ,MAAOvJ,OAEnCA,kBAEAA,gBAEAA,kBAEAA,kBAiGNA,KAAKia,QAAUA,EACfja,KAAK6C,OAASkB,GAAS/D,KAAK6C,QAC1BsB,UACAuvB,QAAQ,EACRC,iBAAiB,EACjBjG,SAAU1V,IAiDZ,IAjCA,IAGc4b,EA2BVrF,EAAQsF,EA9BNC,EAAc,wFACdC,EAAoB,4FACpBC,KACFC,EAAO,EAELC,EAAmB,SAAC3vB,GACxB,IAAK4vB,EAAWC,cAAcxxB,KAAK2B,GAAK,MAAM,IAAI8B,MAAM,2BAA2B9B,mBAAmB0V,OACtG,GAAIvV,GAAKwC,EAAK0L,QAASnS,EAAO,KAAM8D,IAAM,MAAM,IAAI8B,MAAM,6BAA6B9B,mBAAmB0V,QAKtGoa,EAAe,SAACC,EAAoBja,GAExC,IAGwBsP,EAHlBplB,EAAa+vB,EAAE,IAAMA,EAAE,GACvB9xB,EAAiB6X,EAAWia,EAAE,GAAKA,EAAE,KAAgB,MAATA,EAAE,GAAa,YAAc,MAM/E,OACE/vB,KACA/B,SACAoP,IAAS1K,EAAKrE,OAAOsB,OAAOI,GAC5BsvB,QAAS5Z,EAAQsT,UAAU0G,EAAMK,EAAEC,OACnCrnB,KAAU1K,EAAgBiZ,EAAWvO,KAAK1K,KATpBmnB,EAS8CnnB,EATtCW,EAAQsY,EAAWvO,KAAKmN,EAAW,QAAU,SAC3EJ,QAAS,IAAIxX,OAAOknB,EAAKziB,EAAKrE,OAAO8wB,gBAAkB,SAAMntB,MAQ1C,QAOfotB,EAAaE,EAAYnxB,KAAKsX,QACpCsU,EAAI8F,EAAaT,GAAY,IACvBC,QAAQzrB,QAAQ,MAAQ,IAE9B8rB,EAAiB3F,EAAEhqB,IACnBvE,KAAK4S,QAAQjK,KAAKwlB,EAAajP,SAASqP,EAAEhqB,GAAIgqB,EAAErhB,KAAMlN,KAAK6C,OAAO6qB,SAASa,EAAE3c,KAAK,KAClF5R,KAAKw0B,UAAU7rB,KAAK4lB,EAAEsF,SACtBG,EAASrrB,MAAM4lB,EAAEsF,QAAS7tB,GAAKhG,KAAK4S,WACpCqhB,EAAOH,EAAYW,UAKrB,IAAM30B,GAHN+zB,EAAU5Z,EAAQsT,UAAU0G,IAGV7rB,QAAQ,KAE1B,GAAItI,GAAK,EAAG,CACV,IAAM40B,EAASb,EAAQtG,UAAUztB,GAGjC,GAFA+zB,EAAUA,EAAQtG,UAAU,EAAGztB,GAE3B40B,EAAOj1B,OAAS,EAIlB,IAHAw0B,EAAO,EAGCL,EAAaG,EAAkBpxB,KAAK+xB,IAE1CR,GADA3F,EAAI8F,EAAaT,GAAY,IACVrvB,IACnBvE,KAAK4S,QAAQjK,KAAKwlB,EAAawG,WAAWpG,EAAEhqB,GAAIgqB,EAAErhB,KAAMlN,KAAK6C,OAAO6qB,SAASa,EAAE3c,KAAK,KACpFqiB,EAAOH,EAAYW,UAMzBz0B,KAAKw0B,UAAU7rB,KAAKkrB,GACpB7zB,KAAK40B,UAAYZ,EAASjzB,IAAI,SAAA8zB,GAAY,OAAAC,GAAYx1B,MAAM,KAAMu1B,KAAWj1B,OAAOk1B,GAAYjB,IA6PpG,OAhbSM,eAAP,SAAoBxK,GAClB,OAAOoL,mBAAmBpL,GAAKvW,QAAQ,KAAM,SAAA4hB,GAAK,MAAA,OAAOA,EAAEC,WAAW,GAAGlwB,SAAS,IAAImwB,iBAIjFf,wBAAP,SAA6BphB,GAG3B,OAAOhH,GAFgBgH,EAAQyhB,UACZzhB,EAAQH,QAAQxO,OAAO,SAAAmqB,GAAK,OAAAA,EAAEjT,WAAaH,UAAQQ,OACxB/b,YAAO4G,IAClDnF,OAAO+I,OACPhG,OAAO,SAAA7C,GAAK,MAAM,KAANA,GAAY4D,EAAU5D,MAIhC4yB,cAAP,SAAmBphB,GACjB,OAAOA,EAAQH,QAAQxO,OAAO,SAAAmqB,GAAK,OAAAA,EAAEjT,WAAaH,UAAQS,UAYrDuY,UAAP,SAAejiB,EAAe5Q,GAW5B,IAaM6zB,EAAU,SAACpiB,GACf,OAAAA,EAAQqiB,OAAOD,QAAUpiB,EAAQqiB,OAAOD,SAdzB,SAACpiB,GAChB,OAAAA,EAAQqiB,OAAOpF,SAAWjd,EAAQqiB,OAAOpF,UACvCjd,EAAQqiB,OAAO7rB,KAAKxI,IAAIozB,EAAWkB,uBAChCh0B,OAAO+I,OACP/I,OAAOi0B,OACPv0B,IAAI,SAAAQ,GAAK,OAAAkE,EAASlE,GAAKiyB,GAAajyB,GAAKA,IACzCF,OAAO+I,OASV4lB,CAASjd,GAAShS,IAAI,SAAA8yB,GAEpB,MAAgB,MAAZA,EAAwB,EACxBpuB,EAASouB,GAAiB,EAC1BA,aAAmB5W,GAAc,OAArC,KAYAsY,EAAWJ,EAAQjjB,GAAIsjB,EAAWL,EAAQ7zB,IAN9B,SAAC4X,EAAUC,EAAUsc,GAErC,IADA,IAAMC,EAAMvqB,KAAKuV,IAAIxH,EAAEzZ,OAAQ0Z,EAAE1Z,QAC1ByZ,EAAEzZ,OAASi2B,GAAKxc,EAAEvQ,KAAK8sB,GAC9B,KAAOtc,EAAE1Z,OAASi2B,GAAKvc,EAAExQ,KAAK8sB,GAIhCE,CAAUJ,EAAUC,EAAU,GAE9B,IACII,EAAK91B,EADH+1B,EAAS9pB,GAAYwpB,EAAUC,GAGrC,IAAK11B,EAAI,EAAGA,EAAI+1B,EAAOp2B,OAAQK,IAE7B,GAAY,KADZ81B,EAAMC,EAAO/1B,GAAG,GAAK+1B,EAAO/1B,GAAG,IAChB,OAAO81B,EAGxB,OAAO,GA6GTzB,mBAAA,SAAO3vB,GAOL,OANAxE,KAAK6yB,UAAUlqB,KAAKnE,GACpBA,EAAI4wB,QACF7rB,KAAMvJ,KAAKo1B,OAAO7rB,KAAK3J,OAAO4E,GAC9BZ,OAAQ5D,KACRia,QAAS,MAEJzV,GAIT2vB,mBAAA,WACE,OAAOn0B,KAAKo1B,OAAO7rB,KAAK,KAAOvJ,MAIjCm0B,qBAAA,WACE,OAAOn0B,KAAKia,SA6Bdka,iBAAA,SAAK5qB,EAAcmrB,EAAkB3I,EAAeve,GAApD,wBAAmBknB,mBAAiClnB,MAClD,IAjUehN,EAAUmJ,EAAexK,EAiUlCkd,GAjUS7b,EAiUSR,KAAKo1B,OAjUJzrB,EAiUY,UAjUGxK,EAiUQ,WAC9C,OAAO,IAAIsD,QACT,IACAgI,GAAOvD,EAAKkuB,OAAO7rB,KAAKxI,IAAIT,EAAK,eAAeiC,KAAK,KAC9B,IAAvB2E,EAAKrE,OAAO6wB,OAAmB,KAAQ,GACvC,KACAnxB,KAAK,IAAK2E,EAAKrE,OAAO8wB,gBAAkB,SAAMntB,IAtUlDhG,EAAImJ,GAASnJ,EAAImJ,IAAUxK,KAuUxBwD,KAAK4G,GAER,IAAK8S,EAAO,OAAO,KAInB,IAUQyZ,EAVFC,EAAwB/1B,KAAKiE,aAC/B+xB,EAAwBD,EAAU3xB,OAAO,SAAAC,GAAS,OAACA,EAAMgW,aACzD4b,EAAwBF,EAAU3xB,OAAO,SAAAC,GAAS,OAAAA,EAAMgW,aACxD6b,EAAiBl2B,KAAKo1B,OAAO7rB,KAAKxI,IAAI,SAAAo1B,GAAQ,OAAAA,EAAK3B,UAAU/0B,OAAS,IAAG4B,OAAO,SAAC6Q,EAAG3Q,GAAM,OAAA2Q,EAAI3Q,IAC9F2C,KAEJ,GAAIgyB,IAAkB7Z,EAAM5c,OAAS,EACnC,MAAM,IAAI4G,MAAM,sCAAsCrG,KAAKia,aAW7D,IAAK,IAAIna,EAAI,EAAGA,EAAIo2B,EAAep2B,IAAK,CAKtC,IAJA,IAAMuE,EAAe2xB,EAAWl2B,GAC5B+B,EAAqBwa,EAAMvc,EAAI,GAG1B0L,EAAI,EAAGA,EAAInH,EAAM+O,QAAQ3T,OAAQ+L,IACpCnH,EAAM+O,QAAQ5H,GAAGqR,OAAShb,IAAOA,EAAQwC,EAAM+O,QAAQ5H,GAAGsR,IAE5Djb,IAAyB,IAAhBwC,EAAM8D,aAhBb2tB,EAgB6Bj0B,EAX5Bd,GADaA,IAJd+0B,EAAgB,SAACnM,GAAgB,OAAAA,EAAI7oB,MAAM,IAAIT,UAAUkC,KAAK,MAgBTV,GAbrBf,MAAM,WACbg1B,GAHT,SAACnM,GAAgB,OAAAA,EAAIvW,QAAQ,OAAQ,OAIpB/S,WAYnC8E,EAAUtD,KAAQA,EAAQwC,EAAM6I,KAAKiN,OAAOtY,IAChDqC,EAAOG,EAAME,IAAMF,EAAMxC,MAAMA,GAajC,OAXAo0B,EAAajvB,QAAQ,SAAA3C,GAEnB,IADA,IAAIxC,EAAQ6yB,EAAOrwB,EAAME,IAChBiH,EAAI,EAAGA,EAAInH,EAAM+O,QAAQ3T,OAAQ+L,IACpCnH,EAAM+O,QAAQ5H,GAAGqR,OAAShb,IAAOA,EAAQwC,EAAM+O,QAAQ5H,GAAGsR,IAE5D3X,EAAUtD,KAAQA,EAAQwC,EAAM6I,KAAKiN,OAAOtY,IAChDqC,EAAOG,EAAME,IAAMF,EAAMxC,MAAMA,KAG7BkqB,IAAM7nB,EAAO,KAAO6nB,GAEjB7nB,GAUTiwB,uBAAA,SAAWrwB,GACT,oBADSA,OACY,IAAjBA,EAAKX,QAA0BnD,KAAK4S,QACjCnI,GAAOzK,KAAKo1B,OAAO7rB,KAAKxI,IAAI,SAAAgS,GAAW,OAAAA,EAAQH,YAWxDuhB,sBAAA,SAAU5vB,EAAYT,GAAtB,wBAAsBA,MACpB,IAMMF,EAAS5D,KAAKo1B,OAAOxxB,OAC3B,OAPkB,WAChB,IAAoB,QAAA4N,EAAAtK,EAAK0L,QAAL1S,WAAAA,KAAf,IAAMmE,OACT,GAAIA,EAAME,KAAOA,EAAI,OAAOF,GAKzB+xB,KAAiC,IAAjBtyB,EAAKX,SAAqBS,GAAUA,EAAOa,UAAUF,EAAIT,IAAU,MAY5FqwB,sBAAA,SAAUhwB,GAQR,OAJAA,EAASA,MAGWnE,KAAKiE,aAAaG,OAAO,SAAAsa,GAAY,OAAAva,EAAOG,eAAeoa,EAASna,MACrExD,IAAI,SAAA2d,GAAY,OAPZra,EAO0Bqa,EAPZ3c,EAOsBoC,EAAOua,EAASna,KANtEF,GAASA,EAAMkZ,UAAUxb,GADR,IAACsC,EAActC,IAO4CV,OAAO4I,IAAU,IAkBpGkqB,mBAAA,SAAOjwB,gBAAAA,MAEL,IAAMmyB,EAAcr2B,KAAKo1B,OAAO7rB,KAI1B8rB,EAAoDgB,EAAYt1B,IAAIozB,EAAWkB,uBAC5Eh0B,OAAO+I,OACPrJ,IAAI,SAAAQ,GAAK,OAAAkE,EAASlE,GAAKA,EAAI+0B,EAAW/0B,KAGzCg1B,EAAmCF,EAAYt1B,IAAIozB,EAAWoC,aAC3Dl1B,OAAO+I,OACPrJ,IAAIu1B,GAGb,GAAIjB,EAAsBz1B,OAAO22B,GAAanyB,OAD5B,SAACC,GAAwB,OAAkB,IAAlBA,EAAMmyB,UACe/2B,OAC9D,OAAO,KAMT,WAAoB4E,GAElB,IAAMxC,EAAQwC,EAAMxC,MAAMqC,EAAOG,EAAME,KACjCiyB,EAAUnyB,EAAMkZ,UAAU1b,GAC1B40B,EAAiBpyB,EAAMoyB,eAAe50B,GAM5C,OAASwC,QAAOxC,QAAO20B,UAASC,iBAAgBha,SAJjCga,GAAiBpyB,EAAMoY,OAIkBsB,QAFxC1Z,EAAM6I,KAAK8Q,OAAOnc,IAMpC,IAAM60B,EAAarB,EAAsBh0B,OAAO,SAAC0G,EAAaxG,GAE5D,GAAIkE,EAASlE,GAAI,OAAOwG,EAAMxG,EAGtB,IAAAkb,WAAQsB,YAAS1Z,UAGzB,OAAe,IAAXoY,EAAyB1U,EAAIsU,MAAM,OAAUtU,EAAI1I,MAAM,GAAI,GAAK0I,EAEhEtC,EAASgX,GAAgB1U,EAAM0U,GACpB,IAAXA,EAAyB1U,EACd,MAAXgW,EAAwBhW,EAExBrC,EAAQqY,GAAiBhW,EAAMhH,GAAegd,EAASoW,EAAWwC,cAAcp0B,KAAK,KAErF8B,EAAMmY,IAAYzU,EAAMgW,EAErBhW,EAAMgtB,mBAA4BhX,IACxC,IAIG6Y,EAAcL,EAAYx1B,IAAI,SAAC81B,GAC7B,IAAAxyB,UAAOoY,WAAQsB,YAAS0Y,mBAC9B,KAAe,MAAX1Y,GAAoB0Y,IAA6B,IAAXha,KACrC/W,EAAQqY,KAAUA,GAAoBA,IACpB,IAAnBA,EAAQte,QAGZ,OAFK4E,EAAMmY,MAAKuB,EAAUhd,GAAegd,EAASgX,qBAE/BhX,EAAShd,IAAI,SAAAgB,GAAO,OAAGsC,EAAME,OAAMxC,MACrDqC,OAAO4T,GAAU3W,OAAO+I,OAAa7H,KAAK,KAG7C,OAAOm0B,GAAcE,EAAc,IAAIA,EAAgB,KAAO1yB,EAAO,KAAO,IAAMA,EAAO,KAAO,KA/b3FiwB,gBAAwB,+CC9D/B,aAAA,WApBen0B,gBAAa,IAAImrB,GACjBnrB,yBAAqB,EACrBA,oBAAgB,EAChBA,2BAAyC,EAGxDA,mBAEEsuB,WAAY,SAAC/pB,EAAY2I,EAAiBrK,GACxC,OAAA,IAAIoa,GAAM1Y,EAAI2I,EAAMrK,EAAQsY,UAAQO,OAAQxU,IAG9CgY,SAAU,SAAC3a,EAAY2I,EAAiBrK,GACtC,OAAA,IAAIoa,GAAM1Y,EAAI2I,EAAMrK,EAAQsY,UAAQQ,KAAMzU,IAG5CytB,WAAY,SAACpwB,EAAY2I,EAAiBrK,GACxC,OAAA,IAAIoa,GAAM1Y,EAAI2I,EAAMrK,EAAQsY,UAAQS,OAAQ1U,KAyBxClH,gBAAa,SAAC6C,GAClB,OAAAwE,GAASqsB,OAAQxsB,EAAK4vB,cAAenD,gBAAiBzsB,EAAK6vB,oBAAsBl0B,IAtBnFwE,EAAOrH,MAAQm0B,cAAYlX,WAwF/B,OApFE+Z,4BAAA,SAAgBn1B,GACd,OAAO7B,KAAK+2B,mBAAqB5xB,EAAUtD,GAASA,EAAQ7B,KAAK+2B,oBAInEC,uBAAA,SAAWn1B,GACT,OAAO7B,KAAK82B,cAAgB3xB,EAAUtD,GAASA,EAAQ7B,KAAK82B,eAI9DE,gCAAA,SAAoBn1B,GAClB,GAAIsD,EAAUtD,KAAoB,IAAVA,IAA4B,IAAVA,IAAoB4D,EAAS5D,GACrE,MAAM,IAAIwE,MAAM,0BAA0BxE,qDAC5C,OAAO7B,KAAKi3B,qBAAuB9xB,EAAUtD,GAASA,EAAQ7B,KAAKi3B,sBAcrED,oBAAA,SAAQ/c,EAAiBpX,GACvB,OAAO,IAAIsxB,GAAWla,EAASja,KAAKyb,WAAYzb,KAAKmuB,aAAcnuB,KAAKk3B,WAAWr0B,KAUrFm0B,sBAAA,SAAUG,GAER,IAAKvyB,EAASuyB,GAAS,OAAO,EAC9B,IAAIp3B,GAAS,EAKb,OAHAiH,EAAQmtB,GAAW/wB,UAAW,SAACrB,EAAKxB,GAC9BoE,EAAW5C,KAAMhC,EAASA,GAAWoF,EAAUgyB,EAAO52B,KAAUoE,EAAWwyB,EAAO52B,OAEjFR,GAsBTi3B,iBAAA,SAAKz2B,EAAc+qB,EAAkCC,GACnD,IAAMre,EAAOlN,KAAKyb,WAAWvO,KAAK3M,EAAM+qB,EAAYC,GACpD,OAAQpmB,EAAUmmB,GAAqBtrB,KAAPkN,GAIlC8pB,iBAAA,WAGE,OAFAh3B,KAAKyb,WAAWoN,SAAU,EAC1B7oB,KAAKyb,WAAWgQ,kBACTzrB,MAITg3B,oBAAA,WACEh3B,KAAKyb,WAAWiX,8BClGlB,WAAmB/d,GAAA3U,YAAA2U,EAuKrB,OArKEyiB,oBAAA,SAAQzN,GACN,OAAO3pB,KAAK2U,OAAO4G,kBAAkBkS,QAAQ9D,IAG/CyN,mBAAA,SAAOC,EAA2DC,GAAlE,WACQC,EAAWtd,IACdxU,EAAgB,SAAC+xB,GAA0B,OAAAD,EAASrwB,EAAKumB,QAAQ+J,OACjE/1B,EAAG0yB,IAAa,SAACqD,GAA0B,OAAAtwB,EAAKuwB,eAAeD,EAAOF,MACtExxB,EAAgB,SAAC0xB,GAA0B,OAAAtwB,EAAKwwB,UAAUF,EAAOtwB,EAAKyN,WACtElT,EAAGgB,QAAa,SAAC+0B,GAA0B,OAAAtwB,EAAKywB,WAAWH,EAAOF,MAClE3yB,EAAgB,SAAC6yB,GAA0B,OAAA,IAAII,GAAYJ,EAAOF,OAG/DtF,EAAOuF,EAASF,GACtB,IAAKrF,EAAM,MAAM,IAAI3rB,MAAM,4BAC3B,OAAO2rB,GAuCToF,2BAAA,SAAeS,EAAwBP,GACrC,IAAIQ,EAA6BR,EAC7B7xB,EAAS6xB,KAAUA,EAAUt3B,KAAK2U,OAAO4G,kBAAkBkS,QAAQ6J,IACnE71B,EAAG0yB,GAAH1yB,CAAe61B,KAAUQ,EAAW,SAACzb,GAAqB,OAACib,EAAuB/M,OAAOlO,KAmB7F,IAAM0b,GAAYF,aAAYG,cAP9B,SAAuB7zB,GACrB,IAAM8zB,EAAWJ,EAAW5zB,aAAaG,OAAO,SAAAC,GAAS,OAAAA,EAAMkY,aAC/D,OAAK0b,EAASx4B,OACEw4B,EAAS7zB,OAAO,SAAAC,GAAS,OAAAF,EAAOE,EAAME,MACvC9E,OAASw4B,EAASx4B,OAFJ,MAKcyN,KAAM,cACnD,OAAO7F,EAAO,IAAIuwB,GAlBlB,SAA2BpzB,GACzB,IAAML,EAAS0zB,EAAWl1B,KAAK6B,EAAI+E,KAAM/E,EAAIkwB,OAAQlwB,EAAIunB,MACzD,OAAO8L,EAAWta,UAAUpZ,IAAWA,GAgBQ2zB,GAAWC,IAe9DX,sBAAA,SAAUl0B,EAAoByR,GAQ5B,IAQMojB,GAAY70B,QAAOgK,KAAM,SAC/B,OAAO7F,EAAOrH,KAAKy3B,eAAev0B,EAAMsB,IATxB,SAAC6X,GACf,IAAM2C,EAASrK,EAAOC,aAChByQ,EAAU1Q,EAAO0Q,QACnBrG,EAAOkZ,KAAKh1B,EAAOmZ,KAAW2C,EAAOkZ,KAAK7S,EAAQpY,QAASoY,EAAQlhB,SACrE6a,EAAOmZ,aAAaj1B,EAAOmZ,GAASlZ,SAAS,EAAMuE,OAAQ,UAKRqwB,IAmCzDX,uBAAA,SAAW50B,EAAgB80B,GACzB,GAAI90B,EAAOkE,QAAUlE,EAAO41B,OAAQ,MAAM,IAAI/xB,MAAM,4CAOpD,IAKMyxB,EAAWryB,EAAS6xB,GALJ,SAACjb,GAEnB,OAACib,EAAmBlkB,QAAQ,iBAAkB,SAACkhB,EAAG+C,GAC9C,OAAAhb,EAAe,MAATgb,EAAe,EAAIgB,OAAOhB,OAEaC,EAK/CS,GAAYv1B,SAAQ0K,KAAM,UAChC,OAAO7F,EAAO,IAAIuwB,GAJY,SAACpzB,GAC3B,OAAAhC,EAAOG,KAAK6B,EAAI+E,OAGiCuuB,GAAWC,IAxK3DX,YAAY,SAAA52B,GACjB,OAAAA,IAAQ,OAAQ,QAAS,WAAWuX,MAAM,SAAA3Q,GAAO,OAAAjC,EAAU3E,EAAI4G,0BA2LnE,OAHE,SAAmBiV,EAAuBib,GAA1C,WAAmBt3B,WAAAqc,EAJnBrc,UAAoB,MAEpBA,mBAAgB,SAACqc,GAAU,OAAA,EAAInV,EAAKmL,KAGlCrS,KAAKs3B,QAAUA,GAAWtf,MC1L9B,IAmCIsgB,GACJA,GAAoB,SAACpmB,EAAG5Q,GACtB,IAAIs0B,EArCe,SAAC1jB,EAAY5Q,GAChC,OAACA,EAAEuV,UAAY,IAAM3E,EAAE2E,UAAY,GAoCzB0hB,CAAarmB,EAAG5Q,GAC1B,OAAY,IAARs0B,EAAkBA,EAGV,KADZA,EApCe,SAAC1jB,EAAY5Q,GAC5B,IAAM6zB,GAAYvd,MAAS,EAAG4gB,WAAc,EAAGC,OAAU,EAAGC,IAAO,EAAGC,MAAS,GAC/E,OAAQxD,EAAQjjB,EAAEhF,OAAS,IAAMioB,EAAQ7zB,EAAE4L,OAAS,GAkC9C0rB,CAAS1mB,EAAG5Q,IACIs0B,EAGV,KADZA,EAjCqB,SAAC1jB,EAAmB5Q,GACzC,OAAC4Q,EAAE2lB,YAAev2B,EAAEu2B,WAAiB1D,GAAW5N,QAAQrU,EAAE2lB,WAAYv2B,EAAEu2B,YAAvC,EAgC3BgB,CAAe3mB,EAAqB5Q,IACpBs0B,EA9BT,SAAC1jB,EAAY5Q,GAE1B,IAAMw3B,GAAqBlhB,OAAO,EAAM4gB,YAAY,GAEpD,OADcM,EAAiB5mB,EAAEhF,OAAS4rB,EAAiBx3B,EAAE4L,MAC9C,GAAKgF,EAAEG,KAAO,IAAM/Q,EAAE+Q,KAAO,GA4BrC0mB,CAAO7mB,EAAG5Q,IAcnB,kBAeE,WAAYqT,GATW3U,aAAUs4B,GAElBt4B,eAEAA,wBAAoB,EACZA,SAAM,EACNA,cAAU,EAI/BA,KAAKkyB,QAAUvd,EACf3U,KAAKiyB,eAAiB,IAAImF,GAAeziB,GACzCqkB,EAAqBj3B,EAAIk3B,EAAU71B,WAAYpD,KAAM+B,EAAI/B,OAiP7D,OA7OEi5B,oBAAA,WACEj5B,KAAKk5B,QAAO,GACZl5B,KAAKm5B,iBACEn5B,KAAKo5B,cAIdH,iBAAA,SAAKI,GACHr5B,KAAKm5B,OAASn5B,KAAKs5B,WAAWt5B,KAAKm5B,OAAQn5B,KAAKu5B,QAAUF,GAAar5B,KAAKu5B,SAC5Ev5B,KAAKw5B,SAAU,GAGTP,yBAAR,WACEj5B,KAAKw5B,SAAWx5B,KAAKiS,QAGfgnB,uBAAR,SAAmB73B,EAAKi4B,GACtB,IAAMI,EAAer4B,EAAIL,IAAI,SAACmJ,EAAM3B,GAAQ,OAAG2B,OAAM3B,SASrD,OAPAkxB,EAAaxnB,KAAK,SAACynB,EAAUC,GAC3B,IAAMC,EAAUP,EAAUK,EAASxvB,KAAMyvB,EAASzvB,MAClD,OAAmB,IAAZ0vB,EACHF,EAASnxB,IAAMoxB,EAASpxB,IACxBqxB,IAGCH,EAAa14B,IAAI,SAAA84B,GAAW,OAAAA,EAAQ3vB,QAQ7C+uB,kBAAA,SAAMz0B,GAAN,WACExE,KAAK85B,eAELt1B,EAAM6C,GAASkC,KAAM,GAAImrB,UAAY3I,KAAM,IAAMvnB,GACjD,IAAMyuB,EAAQjzB,KAAKizB,QACfjzB,KAAKo5B,cAAcnG,EAAMtqB,KAAK3I,KAAKo5B,cAcvC,IAVA,IASIW,EATe/H,EACX3V,EASCvc,EAAI,EAAGA,EAAImzB,EAAMxzB,UAEpBs6B,GAA8C,IAAtC/5B,KAAKu5B,QAAQtG,EAAMnzB,GAAIi6B,EAAK/H,OAFRlyB,IAAK,CAIrC,IAAMmN,GAdW+kB,EAcSiB,EAAMnzB,QAb1Buc,GAAAA,EAAQ2V,EAAK3V,MAAM7X,EAAK0C,EAAKgrB,YACjB7V,QAAO2V,OAAMgI,OAAQhI,EAAKgG,cAAc3b,KAc1D0d,GAASA,GAAQ9sB,GAAWA,EAAQ+sB,OAASD,EAAKC,OAAU/sB,EAAU8sB,EAGxE,OAAOA,GAITd,iBAAA,SAAKgB,GACH,IAAIA,IAAOA,EAAIC,iBAAf,CAEA,IAAMvlB,EAAS3U,KAAKkyB,QAChBiI,EAAOxlB,EAAOylB,WACdpb,EAASrK,EAAOC,aAEdpQ,GACJ+E,KAAM4wB,EAAK5wB,OAAQmrB,OAAQyF,EAAKzF,SAAU3I,KAAMoO,EAAKpO,QAGjDgO,EAAO/5B,KAAKqc,MAAM7X,GAEJyV,IACjBxU,EAAU,SAAC40B,GAAmB,OAAAF,EAAK31B,IAAI61B,GAAQ,MAC/CpnB,GAAYqnB,MAAO,SAACxgB,GAAwB,OAAAkF,EAAOub,GAAGzgB,EAAI5W,MAAO4W,EAAI3V,OAAQ2V,EAAItM,YACjF/L,EAAGwR,IAAc,SAACtL,GAAwB,OAAAqX,EAAOub,GAAG5yB,EAAOzE,QAASyE,EAAOxD,SAAUwD,EAAO6F,cAG/FgtB,CAAYT,GAAQA,EAAK/H,KAAKsF,QAAQyC,EAAK1d,MAAO7X,EAAKmQ,MAIzDskB,mBAAA,SAAO3pB,GAAP,WACE,IAAgB,IAAZA,EAIF,OAAOtP,KAAKy6B,QAAUz6B,KAAKy6B,SAAWz6B,KAAKkyB,QAAQkI,WAAWM,SAAS,SAAAT,GAAO,OAAA/yB,EAAKyzB,KAAKV,KAHxFj6B,KAAKy6B,SAAWz6B,KAAKy6B,iBACdz6B,KAAKy6B,SAUhBxB,mBAAA,SAAO2B,GACL,IAAMT,EAAOn6B,KAAKkyB,QAAQ2I,gBACtBD,EACF56B,KAAKsb,SAAW6e,EAAK31B,MAGnB21B,EAAK31B,QAAUxE,KAAKsb,UAExB6e,EAAK31B,IAAIxE,KAAKsb,UAAU,IAa1B2d,iBAAA,SAAKpB,EAAwB1zB,EAAoBqJ,GAC/C,IAAM4F,EAAU5F,KAAaA,EAAQ4F,QACrCpT,KAAKkyB,QAAQkI,WAAW51B,IAAIqzB,EAAWtN,OAAOpmB,OAAeiP,IAsB/D6lB,iBAAA,SAAKpB,EAAwB1zB,EAAcqJ,GACzC,IAAIhJ,EAAMqzB,EAAWtN,OAAOpmB,GAC5B,GAAW,MAAPK,EAAa,OAAO,KAExBgJ,EAAUA,IAAastB,UAAU,GAEjC,IAAMlpB,EAAM5R,KAAKkyB,QAAQkI,WAAWv3B,OAC9Bk4B,EAAUnpB,EAAIopB,YAMpB,GALKD,GAAmB,OAARv2B,IACdA,EAAM,IAAMoN,EAAIqpB,aAAez2B,GAEjCA,EAxPJ,SAAwBA,EAAau2B,EAAkBD,EAAmBI,GACxE,MAAiB,MAAbA,EAAyB12B,EACzBu2B,EAAgBpQ,GAAqBuQ,GAAY12B,EACjDs2B,EAAiBI,EAAS77B,MAAM,GAAKmF,EAClCA,EAoPC22B,CAAe32B,EAAKu2B,EAASvtB,EAAQstB,SAAUlpB,EAAIspB,aAEpD1tB,EAAQstB,WAAat2B,EACxB,OAAOA,EAGT,IAAM42B,GAAUL,GAAWv2B,EAAM,IAAM,GACjC62B,EAAUzpB,EAAI0pB,OACdA,EAA0B,KAAZD,GAA8B,MAAZA,EAAkB,GAAK,IAAMA,EAEnE,OAAQzpB,EAAI2pB,WAAY,MAAO3pB,EAAI4pB,OAAQF,EAAMF,EAAO52B,GAAKjC,KAAK,KAgBpE02B,iBAAA,SAAKjH,GAAL,WACE,IAAKoF,GAAeqE,UAAUzJ,GAAO,MAAM,IAAI3rB,MAAM,gBAOrD,OANA2rB,EAAK3f,IAAMrS,KAAK07B,MAChB1J,EAAKnb,SAAWmb,EAAKnb,UAAY,EAEjC7W,KAAKm5B,OAAOxwB,KAAKqpB,GACjBhyB,KAAKw5B,SAAU,EAER,WAAM,OAAAtyB,EAAKgsB,WAAWlB,KAI/BiH,uBAAA,SAAWjH,GACT3pB,EAAWrI,KAAKm5B,OAAQnH,IAI1BiH,kBAAA,WAEE,OADAj5B,KAAK85B,eACE95B,KAAKm5B,OAAO95B,SAIrB45B,sBAAA,SAAU3B,GACR,IAAMqE,EAA8BC,GAAatE,GAEjDt3B,KAAKo5B,aAAep5B,KAAKiyB,eAAelvB,OAAOhB,GAAI,GAAO45B,GAC1D37B,KAAKw5B,SAAU,GAIjBP,oBAAA,SAAQ3B,GACN,IAAMqE,EAA8BC,GAAatE,GAKjDt3B,KAAKgyB,KAAKhyB,KAAKiyB,eAAelvB,OAHE,SAAC84B,EAAUlnB,GACvC,OAA4C,IAA5CA,EAAO0Q,QAAQuD,kBAAkB5b,UAAkB,QAAQrK,KAAKk5B,EAAStyB,OAE/BoyB,KAIhD1C,iBAAA,SAAKlmB,EAAqCukB,EAAkC9pB,GAC1E,IAAMwkB,EAAOhyB,KAAKiyB,eAAelvB,OAAOgQ,EAASukB,GAGjD,OAFInyB,EAAUqI,GAAWA,EAAQqJ,YAAWmb,EAAKnb,SAAWrJ,EAAQqJ,UACpE7W,KAAKgyB,KAAKA,GACHA,GAITiH,2BAAA,SAAe9T,QACC3e,IAAV2e,IAAqBA,GAAQ,GACjCnlB,KAAK87B,kBAAoB3W,oBAIPmS,GACpB,KAAK3yB,EAAW2yB,IAAa7xB,EAAS6xB,IAAa71B,EAAGwR,GAAHxR,CAAgB61B,IAAarkB,GAAYqnB,MAAMhD,IAChG,MAAM,IAAIjxB,MAAM,4FAElB,OAAO1B,EAAW2yB,GAAWA,EAA8Bv1B,EAAIu1B,GChTjE,kBA+IE,aAAA,WA9IQt3B,iBACAA,qBAEAA,6BACAA,mBAEDA,iBACL+7B,iBAAkB/7B,KAAK+7B,iBAAiBl1B,KAAK7G,MAC7Cg8B,mBAAoBh8B,KAAKg8B,mBAAmBn1B,KAAK7G,MACjDi8B,mBAAoB,WAAM,OAAA/0B,EAAKg1B,UAC/BC,mBAAoB,WAAM,OAAAj1B,EAAKk1B,cAC/BC,QAAS,SAACvK,GAER,OADA5qB,EAAKo1B,WAAW3zB,KAAKmpB,GACd,WAAM,OAAAzpB,EAAWnB,EAAKo1B,WAAYxK,MAkR/C,OApLSyK,wBAAP,SAA6BpsB,EAAsBqsB,gBAAAA,MAIjD,IAAMC,EAA0BD,EAAY17B,MAAM,KAC9C47B,EAAaD,EAAc,IAAM,WACjCE,EAAsBl3B,EAASg3B,EAAc,IAAMA,EAAc,GAAK,IAIpEG,EAAwB,wBAAwBj6B,KAAK+5B,GACvDE,IAEFD,EAAsBC,EAAsB,GAC5CF,EAAaE,EAAsB,IAGR,MAAzBF,EAAWpP,OAAO,KACpBoP,EAAaA,EAAWxiB,OAAO,GAC/ByiB,EAAsB,IAIF,kBACJh6B,KAAKg6B,GAGrBA,EAFoBA,EAAoB77B,MAAM,KAC3CO,gBAASw7B,EAAQt7B,GAAM,OAAAs7B,EAAOj5B,QAASuM,GACR5P,KACD,MAAxBo8B,IACTA,EAAsBxsB,EAAQ5P,MAGhC,OAASm8B,aAAYC,wBAKfJ,6BAAR,SAAyBpsB,GACvB,OAAOnQ,KAAK88B,aAAe3sB,GAAWnQ,KAAK88B,cAGrCP,+BAAR,SAA2BQ,EAAkBC,GAC3Ch9B,KAAKi9B,qBAAqBF,GAAYC,GAGxCT,6BAAA,SAAiBhzB,EAAkB8lB,GACjC,IAAM6N,EAAal9B,KAAKi9B,qBAAqB5N,EAAKhhB,OAClD,IAAK6uB,EAAY,MAAM,IAAI72B,MAAM,2DAA6DgpB,EAAKhhB,OACnG,IAAM8uB,EAAOD,EAAW3zB,EAAM8lB,GAC9B,OAAO3pB,EAAQy3B,GAAQA,GAAQA,IAWjCZ,iCAAA,SAAqB7qB,GACnBe,GAAM2qB,sBAAsB,cAAe1rB,GAC3CrJ,EAAWrI,KAAKo8B,aAAc1qB,IAGhC6qB,+BAAA,SAAmB7qB,GACjBe,GAAM2qB,sBAAsB,iBAAwB1rB,GACpD1R,KAAKo8B,aAAazzB,KAAK+I,IAIzB6qB,iBAAA,WAAA,WACQc,EACFr9B,KAAKk8B,SAASn7B,IAAI,SAAA4Q,GAAO,OAACA,EAAIhO,IAAKgO,KAAMtQ,OAAOod,OAYpD,WAAyB5b,GAEvB,IADA,IAAIsN,EAAuBtN,EAAOgP,SAASC,SAAUwrB,EAAQ,IACpDA,GAASntB,EAAQvM,QAAQuM,EAAUA,EAAQvM,OACpD,OAAO05B,EAIT,IAAMC,EAAe78B,EAAM,SAAC88B,EAASC,EAAQ9iB,EAAMC,GAAU,OAAA6iB,GAAUD,EAAQ7iB,GAAQ6iB,EAAQ5iB,MAqBzF8iB,EAAe19B,KAAKk8B,SAASjqB,KAAKsrB,EAnCxC,SAAqB9rB,GACnB,IAAMksB,EAAa,SAACxtB,GAChB,OAAAA,GAAWA,EAAQvM,OAAS+5B,EAAWxtB,EAAQvM,QAAU,EAAI,GACjE,OAAuC,IAA/B6N,EAAO9N,IAAI7C,MAAM,KAAKrB,OAAkBk+B,EAAWlsB,EAAOrD,kBAgCF,IAAIrN,IAnB3C,SAAC0Q,GAC1B,IAAMmsB,EAAkB12B,EAAKk1B,aAAah4B,OAAOm4B,EAAY9lB,QAAQ4mB,EAAc5rB,IAOnF,OANImsB,EAAgBn+B,OAAS,GAI3Bm+B,EAAgB3rB,KAAKsrB,EAAaM,GAAkB,KAE7CpsB,SAAQC,WAAYksB,EAAgB,MAYzCE,EAAqBJ,EAAa38B,IAAI,SAAAyY,GAAS,OAAAA,EAAM9H,aACrDqsB,EAAwB/9B,KAAKo8B,aAChCh4B,OAAO,SAAAvB,GAAU,OAACoF,EAAQ61B,EAAoBj7B,KAC9C9B,IAAI,SAAA2Q,GAAc,OAAGD,YAAQjL,EAAWkL,gBAE3CgsB,EAAa12B,QAdW,SAACwS,IAGsB,IAAzCtS,EAAKg1B,SAAS9zB,QAAQoR,EAAM/H,SAC9B+H,EAAM/H,OAAOusB,cAAcxkB,EAAM9H,cAYrC,IAAMusB,EAAyBP,EAAa99B,OAAOm+B,GACnD/9B,KAAKs8B,WAAWt1B,QAAQ,SAAAC,GAAM,OAAAA,EAAGg3B,KACjCxrB,GAAMyrB,cAAcD,IAkBtB1B,2BAAA,SAAe9qB,GACbgB,GAAM0rB,4BAA4B,iBAAkB1sB,GACpD,IAAM2sB,EAAUp+B,KAAKk8B,SAQrB,OANIkC,EAAQh6B,OADc,SAACuN,GAAsB,OAAAA,EAAIhO,MAAQ8N,EAAO9N,KAAOgO,EAAItD,QAAUoD,EAAOpD,QAC1D5O,QACpCgT,GAAM0rB,4BAA4B,+BAAgC1sB,GAEpE2sB,EAAQz1B,KAAK8I,GACbzR,KAAK26B,OAEE,YAEQ,IADDyD,EAAQh2B,QAAQqJ,IAK5BgB,GAAM0rB,4BAA4B,mBAAoB1sB,GACtDpJ,EAAW+1B,EAAX/1B,CAAoBoJ,IAJlBgB,GAAM0rB,4BAA4B,uCAAwC1sB,KAahF8qB,sBAAA,WACE,OAAOv8B,KAAKk8B,SAASn7B,IAAIT,EAAK,SAQhCi8B,mBAAA,WACE,OAAOv8B,KAAKk8B,SAAS93B,OAAO9D,EAAK,YAAYS,IAAIT,EAAK,UAlNjDi8B,UAAU,SAACc,EAAsC5rB,GAAyB,OAAA,SAACC,GAEhF,GAAID,EAAOpD,QAAUqD,EAAWG,SAASxD,MAAO,OAAO,EAGvD,IAAMgwB,EAAK3sB,EAAWG,SAChBysB,EAAaD,EAAG/rB,YAAYxR,MAAM,KAClCy9B,EAAc9sB,EAAO9N,IAAI7C,MAAM,KAIrC,IAAK0G,EAAO82B,EAAYC,EAAYl/B,MAAM,EAAIi/B,EAAW7+B,SACvD,OAAO,EAIT,IAAM++B,EAAa,EAAIF,EAAW7+B,aAAW+G,EACvCi4B,EAAoBF,EAAYl/B,MAAM,EAAGm/B,GAAWj8B,KAAK,KACzDm8B,EAAgBrB,EAAaoB,GAAmBrwB,gBACtD,OAAOiwB,EAAG9rB,wBAA0BmsB,GAAiBA,EAAcn+B,2BC7HvE,aAMEP,YAAsB,IAAI2sB,GAwB1B3sB,8BAA2B,EAG3BA,uBAAoB,IAAI4M,MAAsB,GAG9C5M,2BAAwB,IAAI4M,MAAsB,GAOpD,OALE+xB,oBAAA,WACE3+B,KAAK4oB,kBAAkBgW,QACvB5+B,KAAK6+B,sBAAsBD,QAC3B5+B,KAAKyT,WAAa,WC/ChBqrB,GAAW,SAAC33B,GACd,OAAAA,EAAK9F,OAAO,SAAC0G,EAAKX,GAAQ,OAACW,EAAIX,GAAOjB,EAAeiB,GAAMW,IAAQ2qB,QAASlf,KAG3DurB,IAAuB,MAAO,OAAQ,SAAU,OAAQ,YACxDC,IAAqB,OAAQ,WAAY,OAAQ,WAAY,YAAa,cAC1EC,IAAU,OAAQ,kBAAmB,aAAc,uBACnDC,IAAY,OAAQ,OAAQ,UAAW,YAAa,QAAS,OAAQ,cACrEC,IAAW,iBAAkB,SAAU,OAAQ,uBA8BlE,WAAYxqB,EAAkByqB,gBAAAA,MAC5Bp/B,KAAK2U,OAASA,EACd3U,KAAKizB,SACLjzB,KAAK6C,UAGL,IAAMw8B,EAAmB,WAAM,OAAA1qB,EAAOkmB,iBACtC7B,EAAqBqG,EAAkBr/B,KAAMq/B,EAAkBN,GAAqBK,GAEpF,IAAME,EAAiB,WAAM,OAAA3qB,EAAO2qB,gBACpCtG,EAAqBsG,EAAgBt/B,KAAK6C,OAAQy8B,EAAgBN,GAAmBI,GAErF,IAAMG,EAAM,WAAM,OAAA5qB,EAAO4G,mBACzByd,EAAqBuG,EAAKv/B,KAAK6C,OAAQ08B,EAAKN,IAE5C,IAAM7M,EAAY,WAAM,OAAAzd,EAAOyd,WAC/B4G,EAAqB5G,EAAWpyB,KAAKizB,MAAOb,EAAW8M,IACvDlG,EAAqB5G,EAAWpyB,KAAMoyB,EAAW+M,IAwCrD,OAjCEK,gBAAA,SAAInF,EAASjnB,EAAUlQ,KAEvBs8B,iBAAA,aAEAA,mBAAA,aAEAA,iBAAA,aAEAA,qBAAA,SAAS11B,KAUT01B,kBAAA,WACE,OAASj2B,KAAMvJ,KAAKuJ,OAAQmrB,OAAQ10B,KAAK00B,SAAU3I,KAAM/rB,KAAK+rB,SAGhEyT,oBAAA,aAGAA,iBAAA,SAAKvF,KAELuF,mBAAA,SAAOlwB,KAEPkwB,2BAAA,SAAera,KAEfqa,kBAAA,SAAM3D,KA7EC2D,sBAAwCV,GAASC,IAEjDS,qBAAqCV,GAASE,SCVnDS,GAAkB,gBAgGpB,WACW5E,EACAyE,gBADAzE,EAAoC2E,GAAWE,kCAC/CJ,EAAiCE,GAAWG,oBAD5C3/B,qBAAA66B,EACA76B,oBAAAs/B,EAhFIt/B,SAAMy/B,KACNz/B,gBAAY,EACJA,qBAGvBA,WAAeyS,GAGfzS,iBAAc,IAAIu8B,GAGlBv8B,aAA2B,IAAI2+B,GAG/B3+B,uBAAuC,IAAI4/B,GAAkB5/B,MAM7DA,uBAAuC,IAAIg3B,GAM3Ch3B,eAAuB,IAAIi5B,GAAUj5B,MAGrCA,mBAA+B,IAAIsyB,GAActyB,MAGjDA,kBAAe,IAAI6/B,GAAa7/B,MAGhCA,gBAAyB,IAAIw/B,GAAWx/B,MAGhCA,iBA6CNA,KAAK8/B,YAAY3oB,WAAW4kB,iBAAiB/7B,KAAK+/B,cAAcl8B,QAChE7D,KAAKqlB,QAAQuH,SAAW5sB,KAAK+/B,cAAcl8B,OAC3C7D,KAAKqlB,QAAQpY,QAAUjN,KAAKqlB,QAAQuH,SAAStpB,KAE7CtD,KAAKggC,WAAWhgC,KAAKqlB,SACrBrlB,KAAKggC,WAAWhgC,KAAK4U,cACrB5U,KAAKggC,WAAWhgC,KAAK+/B,eACrB//B,KAAKggC,WAAWhgC,KAAKkY,mBACrBlY,KAAKggC,WAAWhgC,KAAKoyB,WACrBpyB,KAAKggC,WAAWnF,GAChB76B,KAAKggC,WAAWV,GAmFpB,OAtIEW,uBAAA,SAAWD,GACThgC,KAAKkgC,aAAav3B,KAAKq3B,IAazBC,oBAAA,SAAQD,GAAR,WACMA,GAAcr7B,EAAWq7B,EAAWtN,SACtCsN,EAAWtN,QAAQ1yB,OAIrBA,KAAKgW,WAAY,EACjBhW,KAAKkgC,aAAa7gC,QAAQ2H,QAAQ,SAAAkH,GAChC,IACuB,mBAAdA,EAAEwkB,SAA0BxkB,EAAEwkB,QAAQxrB,GAC7CmB,EAAWnB,EAAKg5B,aAAchyB,GAC9B,MAAOiyB,SAwFbF,mBAAA,SAAiCG,EAAa5yB,gBAAAA,MAC5C,IAAM6yB,EAAiB,IAAID,EAAOpgC,KAAMwN,GACxC,IAAK6yB,EAAe9/B,KAAM,MAAM,IAAI8F,MAAM,+CAAiDg6B,GAE3F,OADArgC,KAAKkgC,aAAav3B,KAAK03B,GAChBrgC,KAAKsgC,SAASD,EAAe9/B,MAAQ8/B,GAc9CJ,sBAAA,SAAUM,GACR,OAAOA,EAAavgC,KAAKsgC,SAASC,GAAcr8B,GAAOlE,KAAKsgC,gBClNhE,YAQ4BnxB,GAC1BA,EAAMqxB,cAAc3e,GAAW4e,SAASR,GAAU9wB,EAAMwF,QAAS,IACjExF,EAAMqxB,cAAc3e,GAAW4e,SAASxa,GAAY9W,GAAQ,IAC5DA,EAAMqxB,cAAc3e,GAAW4e,SAAS,eAAgBtxB,GAAQ,IAChEA,EAAMqxB,cAAc3e,GAAW4e,SAAS,eAAgBtxB,EAAMhL,UAAW,IAEzEgL,EAAMsR,WAAWzZ,QAAQ,SAAA9D,GACvBiM,EAAMqxB,cAAc3e,GAAW4e,SAAS,UAAWv9B,GAAQA,KAI/D,IAIMw9B,GAAez4B,GADM,eAAgBge,KAO9B0a,GAAqB,SAACxxB,GAEjC,IAAMyxB,EAA4B,SAACznB,GACjC,OAAAunB,GAAavnB,EAAE3O,OAASqX,GAAW4e,SAAStnB,EAAE3O,MAAO,MAAQ2O,GAOzD9B,EAA2BlI,EAAMkI,cACvCrN,GAAOqN,EANW,SAAC9N,GAAqB,OAAAA,EAAKxI,IAAI,SAACkW,GAChD,IAAMmH,EAAcnH,EAAKmH,YAAYrd,IAAI6/B,GACzC,OAAOv5B,EAAO4P,EAAKsH,SAAWH,mBAID/G,IC1B3BwpB,GAAmC,SAAC1xB,GACxC,IAAM2xB,EAAW3xB,EAAM2N,KAAKikB,WAC5B,GAAKD,EAAL,CAEA,IAAM9hB,EAAS7P,EAAMwF,OAAOC,aAU5B,OAAIjQ,EAAWm8B,GACNx6B,EAASC,GAAGkK,KAAKqwB,EAAS3xB,IAAQ7B,KAAK8H,GAEzCA,EAAa0rB,GAXpB,WAAsB/gC,GACpB,GAAKA,EACL,OAAIA,aAAkBkT,GAAoBlT,EACtC0F,EAAS1F,GAAgBif,EAAOrX,OAAa5H,EAAQoP,EAAMhL,SAAUgL,EAAM3B,WAC3EzN,EAAc,OAAKA,EAAe,OAC7Bif,EAAOrX,OAAO5H,EAAc,OAAKoP,EAAM2N,KAAM/c,EAAe,QAAKoP,EAAMhL,SAAUgL,EAAM3B,gBADhG,ICTJ,YAAiC2Y,GAC/B,OAAO,SAAC1S,EAAwBvQ,GAG9B,OAAO89B,EAFqB99B,EAAMG,UACW8iB,IAC/B1S,EAAYvQ,IAa9B,IAAM+9B,GAAoCC,GAAwB,UAa5DC,GAAsCD,GAAwB,YAa9DE,GAAqCF,GAAwB,WCtC7DG,GAAqC,SAAClyB,GACxC,OAAA,IAAIyU,GAAezU,EAAMkI,cAAcyF,IAClC0T,YAAY,QAASrhB,GACrB7B,KAAKkG,IAcR8tB,GAA0C,SAACnyB,EAAmBjM,GAChE,OAAA,IAAI0gB,GAAezU,EAAMkI,cAAcyF,IAClCyH,WAAWrhB,EAAMG,WACjBmtB,YAAY,OAAQrhB,GACpB7B,KAAKkG,IAgBR+tB,GAAqC,SAACpyB,GAC1C,OAAA,IAAIyU,GAAezU,EAAMkI,cAAcyF,IACpC0T,YAAY,OAAQrhB,GACpB7B,KAAKkG,IC3CJguB,GAAsC,SAAC/tB,GAC3C,IAAMlN,EAAKD,EAASC,GACdk7B,EAAgBhuB,EAAW4K,MAAM,YACvC,GAAKojB,EAAchiC,OACnB,OAAO8G,EAAGpF,IAAIsgC,EAAc1gC,IAAI,SAAAqR,GAAQ,OAAA7L,EAAGkK,KAAK2B,EAAKsvB,WAAUp0B,KAAKkG,IAgBhEmuB,GAAkC,SAACluB,GACvC,IAAMguB,EAAgBhuB,EAAW4K,MAAM,YACjCujB,EAAenuB,EAAW4K,MAAM,WACtC,GAAKojB,EAAchiC,QAAWmiC,EAAaniC,OAA3C,CAEA,IAAM6f,EAAqB7L,EAAWkB,OAAOmrB,YAE7C8B,EAAa56B,QAAQ,SAACq3B,GAAmB,OAAA/e,EAAMuiB,qBAAqBxD,KACpEoD,EAAcz6B,QAAQ,SAACq3B,GAAmB,OAAA/e,EAAMwiB,mBAAmBzD,KAEnE/e,EAAMqb,SC9BFoH,GAAoB,SAAC5yB,GACzB,IAAMkW,EAAUlW,EAAMwF,OAAO0Q,QAUvB2c,EAAyB,WAEzB3c,EAAQ5R,aAAetE,IAAOkW,EAAQ5R,WAAa,OAGzDtE,EAAM8yB,aAbuB,WAC3B5c,EAAQwZ,sBAAsBhW,QAAQ1Z,GACtCkW,EAAQuH,SAAWzd,EAAMmX,MACzBjB,EAAQpY,QAAUoY,EAAQuH,SAAStpB,KAEnC4+B,GAAK/yB,EAAMhL,SAAUkhB,EAAQlhB,UAQa0S,SAAU,MACtD1H,EAAMhD,QAAQmB,KAAK00B,EAAwBA,ICvBvCG,GAA8B,SAAC1uB,GACnC,IAAMjG,EAAUiG,EAAWjG,UACrBwR,EAAuBvL,EAAWkB,OAAOC,aACzCkc,EAAwBrd,EAAWkB,OAAOyd,UAMhD,GAAuB,QAAnB5kB,EAAQ9F,QAAoB8F,EAAQ8N,UAAY0D,EAAO4N,SAASkB,UAAW,CAC7E,IAAMsU,GAAehvB,QAA8B,YAArB5F,EAAQ8N,UACtCwV,EAAWnoB,KAAKqW,EAAO4N,SAASkB,UAAUtpB,IAAKwa,EAAO7a,OAAQi+B,GAGhEtR,EAAWuR,QAAO,ICMdC,GAAiC,SAAC7uB,GACtC,IAAMkB,EAASlB,EAAWkB,OA4B1B,IAAMwP,EAAW1Q,EAAWgN,WACvBrc,OAAO,SAAAlB,GAAS,QAAEA,EAAMG,UAAUk/B,WAClCxhC,IAAI,SAAAmC,GAAS,OAAAs/B,GAAc/uB,EAAYvQ,KAE5C,OAAOoD,EAASC,GAAGpF,IAAIgjB,GAAU7W,KA9BjC,WACE,GAAyD,QAArDmG,EAAWwT,qBAAqBzZ,UAAU9F,OAAkB,CAG9D,IAAM+6B,EAAOhvB,EAAWqL,cACxB,OAAOnK,EAAOC,aAAajN,OAAO86B,EAAKC,aAAcD,EAAKt+B,SAAUs+B,EAAKj1B,WAK3E,IAAM2sB,EAAOxlB,EAAOylB,WACdr6B,EAASo6B,EAAK9d,MAAM8d,EAAKwI,SACzB3Q,EAAOjyB,GAAUA,EAAOiyB,KAI9B,GAAIA,GAAsB,UAAdA,EAAK9kB,KAAkB,CACjC,IAAMhK,EAAS8uB,EAAmB9uB,MAC5BiB,EAASpE,EAAOsc,MACtB,OAAO1H,EAAOC,aAAajN,OAAOzE,EAAOiB,EAAQsP,EAAWjG,WAI9DmH,EAAOylB,WAAWO,UAqBtB,YAA8BlnB,EAAwBvQ,GACpD,IAAM0/B,EAAa1/B,EAAMG,UAAUk/B,SAG/Bp2B,EAAUy2B,EAAqB,SACnC,IAAKz2B,EAAS,CAaZA,EAAUy2B,EAAqB,SAC3Bt8B,EAASC,GAAGkK,KAAKmyB,EAAWnvB,EAAYvQ,IACnCoK,KAKX,SAA6BvN,GACvBA,GAAU4F,MAAMD,QAAQ3F,EAAOwf,SACjCxf,EAAOwf,OAAOvY,QAAQ,SAAAuP,GAAU,OAAA9C,EAAWkB,OAAOorB,cAAcvN,SAASjc,KAE3E,OAAOxW,IAREuN,KAfO,SAACvN,GAIf,cAHOmD,EAAMq/B,gBACNr/B,EAAMG,UAAUk/B,gBAChBK,EAAqB,SACrB7iC,GAGK,SAAC2U,GAEb,cADOkuB,EAAqB,SACrBt8B,EAASC,GAAGiG,OAAOkI,KAiB9B,OAAOvI,ECtGT,kBAWA,OATE,SAAmB5L,EACAqT,EACAivB,EACA9pB,EACAQ,EACAlE,EACAF,EACAG,gBAHAiE,mBACAlE,EAAuCrB,GAAe8uB,4BACtD3tB,EAAsCnB,GAAe+uB,2BACrDztB,MAPAtV,UAAAO,EACAP,eAAA4T,EACA5T,eAAA6iC,EACA7iC,uBAAA+Y,EACA/Y,iBAAAuZ,EACAvZ,sBAAAqV,EACArV,qBAAAmV,EACAnV,iBAAAsV,MCHrB,YAAqBnG,GACnB,IAAM6zB,EAAgB7zB,EAAM+Y,iBAC5B,GAAK8a,EAAL,CAEAvwB,GAAMwwB,uBAAuB9zB,GAE7B,IAAMgZ,EAAUhZ,EAAMwF,OAAO0Q,QAAQ5R,WASrC,MAJsB,kBAAlBuvB,GAAqC7a,GACvCA,EAAQ+a,QAGH71B,GAAU8yB,UAAU3qB,aClB7B,YAA+BrG,GAC7B,IAAKA,EAAMoW,QACT,MAAM,IAAIlf,MAAM8I,EAAM5C,SAI1B,ICqBW42B,IACT7nB,UAAc,EACdtI,SAAc,KACd7P,SAAc,EACdigC,QAAc,EACdzb,QAAc,EACd0b,UACAp2B,QAAc,WAAM,OAAA,MACpBvF,OAAc,yBAuGd,WAAYwqB,GA1CZlyB,sBAAmB,EAMXA,oBAERA,yBAEQA,uBAiCNA,KAAKkyB,QAAUA,EACflyB,KAAKsf,MAAQ4S,EAAQ4N,YACrB9/B,KAAKsjC,sBACLtjC,KAAKmX,WAA0C6hB,EAAqBj3B,EAAI/B,SAAW+B,EAAI/B,OACrF,kBACA,eACA,gBACA,aACA,aAGFA,KAAKujC,mBACLvjC,KAAKwjC,oBACLxjC,KAAKyjC,+BACLvR,EAAQ7M,QAAQwZ,sBAAsB6E,QAAQ/C,IA8LlD,OApKEf,qBAAA,SAAStoB,EAA6BxN,EAAkC0D,KAExEoyB,qBAAA,SAAStoB,EAA6BxN,EAA4B0D,KAElEoyB,oBAAA,SAAQtoB,EAA6BxN,EAA4B0D,KAEjEoyB,mBAAA,SAAOtoB,EAA6BxN,EAAiC0D,KAErEoyB,qBAAA,SAAStoB,EAA6BxN,EAAiC0D,KAEvEoyB,oBAAA,SAAQtoB,EAA6BxN,EAAiC0D,KAEtEoyB,qBAAA,SAAStoB,EAA6BxN,EAA4B0D,KAElEoyB,sBAAA,SAAUtoB,EAA6BxN,EAA4B0D,KAEnEoyB,oBAAA,SAAQtoB,EAA6BxN,EAA4B0D,KAMjEoyB,oBAAA,SAAQjrB,GACNzQ,GAAOlE,KAAKmY,kBAAkBnR,QAAQ,SAAC28B,GAAiC,OAAAA,EAAW38B,QAAQ,SAAAyN,GACzFA,EAAKK,eAAgB,EACrBzM,EAAWs7B,EAAYlvB,QAc3BmrB,mBAAA,SAAO1gB,EAAsBJ,GAC3B,OAAO,IAAImH,GAAW/G,EAAUJ,EAAa9e,KAAKkyB,UAI5C0N,8BAAR,WACE,IAAMgE,EAAQ90B,sBACR+0B,EAAK7vB,GACL8vB,EAAQ9jC,KAAK+jC,eAInB/jC,KAAKgkC,aAAa,WAAaJ,EAAMlqB,OAAS,EAAKoqB,EAAMhnB,IAHrC,EAGsD+mB,EAAGI,oBAAqBJ,EAAGK,aAFjF,GAIpBlkC,KAAKgkC,aAAa,WAAaJ,EAAMlb,OAAS,EAAKob,EAAMhnB,IAEzD9c,KAAKgkC,aAAa,UAAaJ,EAAM/vB,IAAS,EAAKiwB,EAAMhnB,IACzD9c,KAAKgkC,aAAa,SAAaJ,EAAM/vB,IAAS,IAAKiwB,EAAMtjB,SARf,GAS1CxgB,KAAKgkC,aAAa,WAAaJ,EAAM/vB,IAAS,IAAKiwB,EAAMvjB,UACzDvgB,KAAKgkC,aAAa,UAAaJ,EAAM/vB,IAAS,IAAKiwB,EAAMrjB,UACzDzgB,KAAKgkC,aAAa,WAAaJ,EAAM/vB,IAAS,IAAKiwB,EAAMhnB,IAEzD9c,KAAKgkC,aAAa,YAAaJ,EAAM1a,QAAS,EAAK4a,EAAMhnB,IAbrC,EAasD+mB,EAAGI,oBAAqBJ,EAAGM,WAZjF,GAapBnkC,KAAKgkC,aAAa,UAAaJ,EAAM51B,MAAS,EAAK81B,EAAMhnB,IAdrC,EAcsD+mB,EAAGI,oBAAqBJ,EAAGM,WAbjF,IAiBdvE,6BAAR,WACU,IAAAhoB,8BAAO7H,mCAEf/P,KAAKokC,gBAAgB,KAAMr0B,GAC3B/P,KAAKokC,gBAAgB,OAAQr0B,GAC7B/P,KAAKokC,gBAAgB,UAAWxsB,GAChC5X,KAAKokC,gBAAgB,WAAYxsB,GACjC5X,KAAKokC,gBAAgB,WAAYxsB,IAInCgoB,yBAAA,SAAar/B,EACAqT,EACAivB,EACA9pB,EACAQ,EACAlE,EACAF,EACAG,gBAHAiE,mBACAlE,EAAqCrB,GAAe8uB,4BACpD3tB,EAAmCnB,GAAe+uB,2BAClDztB,MACX,IAAMvB,EAAY,IAAIswB,GAAoB9jC,EAAMqT,EAAWivB,EAAW9pB,EAAmBQ,EAAalE,EAAkBF,EAAiBG,GAEzItV,KAAKskC,YAAY37B,KAAKoL,GACtBmS,GAAUlmB,KAAMA,KAAM+T,IAIhB6rB,uBAAR,SAAmBpnB,GAKjB,OAJ4BrT,EAAUqT,GAClCxY,KAAKskC,YAAYlgC,OAAO,SAAA8I,GAAQ,OAAAA,EAAK0G,YAAc4E,IACnDxY,KAAKskC,YAAYjlC,SAEM4S,KAAK,SAACiH,EAAGC,GAClC,IAAMorB,EAAarrB,EAAEtF,UAAYuF,EAAEvF,UACnC,OAAsB,IAAf2wB,EAAmBrrB,EAAE2pB,UAAY1pB,EAAE0pB,UAAY0B,KAiBlD3E,4BAAR,SAAwBr/B,EAAcikC,GACpCxkC,KAAK+jC,eAAexjC,IAAUA,OAAMoX,MAAO6sB,IAIrC5E,0BAAR,WACE,OAAO5/B,KAAK+jC,gBAIPnE,qBAAP,SAAgBzZ,GACd,OAAOnmB,KAAKmY,iBAAiBgO,IAIvByZ,yCAAR,WACE,IAAM6E,EAAMzkC,KAAKsjC,mBAEjBmB,EAAIC,gBAA6C1kC,KXhT/B2kC,YAAaC,IWiT/BH,EAAItE,QFrSqC,SAACjoB,GAC1C,OAAAA,EAAkB2sB,YAAaC,IAAejuB,UAAW,OEoSnCkuB,CAA8B/kC,MACpDykC,EAAIO,QDrTqC,SAAC9sB,GAC1C,OAAAA,EAAkB2sB,YAAaI,IAAyBpuB,UAAW,MCoT7CquB,CAA8BllC,MAGpDykC,EAAI1D,WVvS8B,SAAC7oB,GACnC,OAAAA,EAAkBitB,SAAUroB,GAAI,SAAC5Z,GAAU,QAAEA,EAAM69B,aAAcF,IUsS3CuE,CAAuBplC,MAG7CykC,EAAIY,OT3S0B,SAACntB,GAC/B,OAAAA,EAAkBmtB,QAAS7kB,QAAS,SAAAtd,GAAS,QAAEA,EAAMmiC,SAAUpE,IS0SzCqE,CAAmBtlC,MACzCykC,EAAIc,ST/R4B,SAACrtB,GACjC,OAAAA,EAAkBqtB,UAAWhlB,SAAU,SAAArd,GAAS,QAAEA,EAAMqiC,WAAYpE,IS8R9CqE,CAAqBxlC,MAC3CykC,EAAIgB,QTnR2B,SAACvtB,GAChC,OAAAA,EAAkButB,SAAUhlB,SAAU,SAAAvd,GAAS,QAAEA,EAAMuiC,UAAWrE,ISkR5CsE,CAAoB1lC,MAG1CykC,EAAIkB,aRxTgC,SAACztB,GACrC,OAAAA,EAAkBitB,WAAY9D,IAAoBxqB,SAjBjB,MQwUX+uB,CAAyB5lC,MAC/CykC,EAAIoB,YRvSgC,SAAC3tB,GACrC,OAAAA,EAAkButB,SAAUhlB,SAAU1e,GAAI,IAASu/B,IAAoBzqB,SAnCtC,MQyUXivB,CAAyB9lC,MAC/CykC,EAAIsB,WRrRgC,SAAC7tB,GACvC,OAAAA,EAAkB8tB,YAAazE,IAAoB1qB,SAtDhB,MQ0UXovB,CAAyBjmC,MAG/CykC,EAAIyB,UP9TiC,SAAChuB,GACtC,OAAAA,EAAkB8tB,YAAaxE,IO6TT2E,CAA0BnmC,MAChDykC,EAAI9C,cPrS6B,SAACzpB,GAClC,OAAAA,EAAkB+pB,aAAcN,IOoSVyE,CAAsBpmC,MAG5CykC,EAAI4B,cNrTiC,SAACnuB,GACtC,OAAAA,EAAkBysB,YAAa5C,IMoTTuE,CAA0BtmC,MAGhDykC,EAAItC,ULjUyB,SAACjqB,GAC9B,OAAAA,EAAkB+pB,aAAcE,IAAatrB,SAAU,OKgUjC0vB,CAAkBvmC,MAGxCykC,EAAIlC,SJ7R4B,SAACrqB,GACjC,OAAAA,EAAkB2sB,UAAWpkB,SAAU,SAACvd,GAAU,QAAEA,EAAMq/B,WAAYD,II4RhDkE,CAAqBxmC,0BC1R7C,WAAoB2U,GAAA3U,YAAA2U,EA5BpB3U,yBA2dQA,0BAAgD,SAA8BymC,GAChFA,aAAmBpgC,OAASogC,EAAQC,OACtCh4B,QAAQnC,MAAMk6B,GACd/3B,QAAQnC,MAAMk6B,EAAQC,QACbD,aAAmBp5B,IAC5BqB,QAAQnC,MAAMk6B,EAAQ1hC,YAClB0hC,EAAQr5B,QAAUq5B,EAAQr5B,OAAOs5B,OACnCh4B,QAAQnC,MAAMk6B,EAAQr5B,OAAOs5B,QAE/Bh4B,QAAQnC,MAAMk6B,IAvchB,IACME,EAAW7hC,OAAOqC,KAAK04B,EAAaz8B,WAAWgB,OAAOpD,EAAIiH,GAD/C,UAAW,WAAY,SAAU,iBAElD+wB,EAAqBj3B,EAAI89B,EAAaz8B,WAAYpD,KAAM+B,EAAI/B,MAAO2mC,GA+gBvE,OAviBE7hC,sBAAI+6B,8BAAJ,WAAmB,OAAO7/B,KAAK2U,OAAO0Q,QAAQ5R,4CAM9C3O,sBAAI+6B,0BAAJ,WAA4B,OAAO7/B,KAAK2U,OAAO0Q,QAAQlhB,wCAMvDW,sBAAI+6B,2BAAJ,WAAgB,OAAO7/B,KAAK2U,OAAO0Q,QAAQpY,yCAM3CnI,sBAAI+6B,4BAAJ,WAAiB,OAAO7/B,KAAK2U,OAAO0Q,QAAQuH,0CAU5CiT,oBAAA,WACE7/B,KAAK6U,oBAAoBrB,GACzBxT,KAAK4mC,qBAcC/G,sCAAR,SAAkC3gB,EAAsB2nB,GAAxD,WACQnP,EAAY7Y,GAAUioB,gBAAgB9mC,KAAK2U,OAAOorB,cAAe7gB,GACjEmG,EAAUrlB,KAAK2U,OAAO0Q,QACtB0hB,EAAc,WAAM,OAAA1hB,EAAQuD,kBAAkBoe,YAC9CC,EAASF,IACTG,EAAgB,IAAIt6B,GAAyB5M,KAAK4mC,iBAAiBvnC,SACnEylB,EAAW,IAAIlB,GAAe1E,GAAU4F,WAExCqiB,EAAmB,SAACpnC,GACxB,GAAMA,aAAkBkT,GAAxB,CAIA,IAAItL,EAAuB5H,EAI3B,OAFA4H,EAAST,EAAKS,OAAOA,EAAO+6B,aAAc/6B,EAAOxD,SAAUwD,EAAO6F,YAEtD+X,QAIRwhB,MAAkBE,EACb55B,GAAUO,aAAa4H,YAGzBtO,EAAKixB,aAAaxwB,EAAO+6B,aAAc/6B,EAAOxD,SAAUwD,EAAO6F,WAP7DH,GAAU23B,QAAQr9B,EAAO4E,SAASiJ,cAkB7C,OARA,aACE,IAAM4xB,EAAeF,EAAcG,UACnC,YAAqB7gC,IAAjB4gC,EAAmC/5B,GAAU23B,QAAQ6B,EAAQt6B,SAASiJ,YAEnDlP,EAASC,GAAGkK,KAAK22B,EAAaP,EAASnP,EAAW5S,IACnDxX,KAAK65B,GAAkB75B,KAAK,SAAAvN,GAAU,OAAAA,GAAUunC,MAGjEA,IA2BTzH,sBAAA,SAAU/1B,GAER,OADA9J,KAAK4mC,iBAAiBj+B,KAAKmB,GACpB,WACLzB,EAAWrI,KAAK4mC,iBAAhBv+B,CAAkCyB,IAClCjD,KAAK7G,OAgDT6/B,mBAAA,SAAOzf,GACL,OAAOpgB,KAAKm4B,aAAan4B,KAAKiN,QAASjN,KAAKmE,QAC1CwjB,QAAQxiB,EAAUib,IAAeA,EACjCjd,SAAS,EACTigC,QAAQ,KA4CZvD,eAAA,SAAG/iB,EAAiB3Y,EAAoBqJ,GACtC,IACM+5B,EAAYxjC,GAASyJ,GADJwF,SAAUhT,KAAK4sB,SAAUzpB,SAAS,GACPggC,IAClD,OAAOnjC,KAAKm4B,aAAarb,EAAI3Y,EAAQojC,IAUvC1H,mBAAA,SAAO6C,EAAyBv+B,EAAoBqJ,GAElD,gBAFkDA,MAE9C5I,EAAS4I,EAAQma,UAAkBna,EAAQma,OAAQpnB,KACrD,MAAM,IAAI8F,MAAM,+BAClB,IAAMuT,EAAM5Z,KAAK2U,OAAOorB,cAGxB,GAFAvyB,EAAQ4S,aAAiC,IAAnB5S,EAAQma,OAAkB/N,EAAI/V,OAAS+V,EAAI7G,QAAQrO,KAAW8I,EAAQma,OAAQna,EAAQwF,UAExGxF,EAAQma,SAAWna,EAAQ4S,YAC7B,MAAM,IAAI/Z,MAAM,0BAA0BZ,EAAS+H,EAAQma,QAAUna,EAAQma,OAAena,EAAQma,OAAQpnB,WAE9G,OAAO,IAAI0S,GAAYjT,KAAK2U,OAAOorB,cAAe2C,EAAYv+B,EAAQqJ,IAGhEqyB,2BAAR,WAAA,WAEQ2H,EADUxnC,KAAK2U,OAAO0Q,QACcwZ,sBAAsBmI,WAEhE,OAAOQ,EAAgBA,EAAcnwB,cAAcyF,IAD1B,IAAIoB,GAAShX,EAAKyN,OAAOorB,cAAcl8B,UA2BlEg8B,yBAAA,SAAa/iB,EAAiBiC,EAA0BvR,GAAxD,wBAA8BuR,mBAA0BvR,MACtD,IAAMmH,EAAS3U,KAAK2U,OACd0Q,EAAU1Q,EAAO0Q,QACvB7X,EAAUzJ,GAASyJ,EAAS21B,IAG5B31B,EAAUnG,EAAOmG,GAAWP,QAFT,WACf,OAAAoY,EAAQ5R,cAGZ,IAAM/P,EAAmB1D,KAAK2H,OAAOmV,EAAIiC,EAAUvR,GAC7Ci6B,EAAcznC,KAAK0nC,iBAEzB,IAAKhkC,EAAIikC,SACP,OAAO3nC,KAAK4nC,0BAA0BH,EAAa/jC,GAErD,IAAKA,EAAI6hB,QACP,OAA2BjZ,GAAgB5I,EAAI6I,SAWjD,IAAMs7B,EAA4B,SAAC14B,GAAsB,OAAA,SAAC5C,GACxD,GAAIA,aAAiBc,GAAW,CAC9B,IAAMy6B,EAAWnzB,EAAO0Q,QAAQsD,0BAA4BxZ,EAAMkD,IAElE,GAAI9F,EAAMW,OAASjB,aAAW6B,QAG5B,OAFAg6B,GAAYnzB,EAAOyd,UAAUiQ,SAEtB/7B,EAASC,GAAGkK,KAAK4U,EAAQpY,SAGlC,IAAMG,EAAcb,EAAMa,OAC1B,GAAIb,EAAMW,OAASjB,aAAWyB,YAAcnB,EAAMoB,YAAcP,aAAkB6F,GAAa,CAG7F,IAAM6tB,EAAuB3xB,EAAM2xB,SAAS1zB,GAC5C,OAAO0zB,EAASiH,MAAM37B,MAAMy7B,EAA0B/G,IAGxD,GAAIv0B,EAAMW,OAASjB,aAAW8B,QAE5B,OADA+5B,GAAYnzB,EAAOyd,UAAUiQ,SACtB/7B,EAASC,GAAGiG,OAAOD,GAO9B,OAHqBrF,EAAK2N,qBAC1BmzB,CAAaz7B,GAENjG,EAASC,GAAGiG,OAAOD,KAGtBkH,EAAazT,KAAK2U,OAAOuD,kBAAkBnV,OAAO0kC,EAAa/jC,GAC/DukC,EAAsBx0B,EAAWs0B,MAAM37B,MAAMy7B,EAA0Bp0B,IAI7E,OAHAvH,GAAyB+7B,GAGlB5gC,EAAO4gC,GAAuBx0B,gBAkCvCosB,eAAA,SAAGzP,EAA0BjsB,EAAoBqJ,GAC/CA,EAAUzJ,GAASyJ,GAAWwF,SAAUhT,KAAK4sB,WAC7C,IAAM1pB,EAAQlD,KAAK2U,OAAOorB,cAAchtB,QAAQrO,KAAK0rB,EAAa5iB,EAAQwF,UAC1E,GAAK7N,EAAUjC,GAAf,CACA,GAAIlD,KAAK4sB,WAAa1pB,EAAO,OAAO,EACpC,IAAKiB,EAAQ,OAAO,EAEpB,IAAM0jB,EAAkB3kB,EAAMe,YAAad,SAAS,EAAMa,aAAcG,IACxE,OAAO8Y,GAAMzV,OAAOqgB,EAAQ5K,GAAM/Y,OAAO2jB,EAAQ1jB,GAASnE,KAAKmE,UAyCjE07B,qBAAA,SAASzP,EAA0BjsB,EAAoBqJ,GACrDA,EAAUzJ,GAASyJ,GAAWwF,SAAUhT,KAAK4sB,WAC7C,IAAMxqB,EAAOqD,EAAS2qB,IAAgB1tB,EAAKe,WAAoB2sB,GAE/D,GAAIhuB,EAAM,CACR,IAAKA,EAAKqU,QAAQzW,KAAK4sB,SAASrsB,MAAO,OAAO,EAC9C6vB,EAAcpwB,KAAK4sB,SAASrsB,KAE9B,IAAM2C,EAAQlD,KAAK2U,OAAOorB,cAAchtB,QAAQrO,KAAK0rB,EAAa5iB,EAAQwF,UAAWk1B,EAAUloC,KAAK4sB,SAASnF,SAE7G,GAAKtiB,EAAUjC,GAAf,CACA,IAAKiC,EAAU+iC,EAAQhlC,EAAM3C,OAAQ,OAAO,EAC5C,IAAK4D,EAAQ,OAAO,EAEpB,IAAM0jB,EAAkB3kB,EAAMe,YAAad,SAAS,EAAMa,aAAcG,IACxE,OAAO8Y,GAAMzV,OAAOqgB,EAAQ5K,GAAM/Y,OAAO2jB,EAAQ1jB,GAASnE,KAAKmE,UAoBjE07B,iBAAA,SAAKzP,EAA0BjsB,EAAmBqJ,GAOhDA,EAAUzJ,GAASyJ,GALjB26B,OAAU,EACVhlC,SAAU,EACV23B,UAAU,EACV9nB,SAAUhT,KAAK4sB,WAGjBzoB,EAASA,MAET,IAAMjB,EAAQlD,KAAK2U,OAAOorB,cAAchtB,QAAQrO,KAAK0rB,EAAa5iB,EAAQwF,UAE1E,IAAK7N,EAAUjC,GAAQ,OAAO,KAC1BsK,EAAQrK,UAASgB,EAAenE,KAAKmE,OAAOikC,SAASjkC,EAAQnE,KAAK4sB,SAAU1pB,IAEhF,IAAMmlC,EAAOnlC,GAASsK,EAAQ26B,MAASjlC,EAAM4qB,UAAY5qB,EAEzD,OAAKmlC,QAAmB7hC,IAAZ6hC,EAAI7jC,KAAiC,OAAZ6jC,EAAI7jC,IAGlCxE,KAAK2U,OAAOyd,UAAU8F,KAAKmQ,EAAI7jC,IAAKL,GACzC22B,SAAUttB,EAAQstB,WAHX,MA6CX+E,gCAAA,SAAoBvI,GAClB,OAAOt3B,KAAKsoC,qBAAuBhR,GAAWt3B,KAAKsoC,sBAiBrDzI,gBAAA,SAAIzP,EAA2Bld,GAC7B,IAAM0G,EAAM5Z,KAAK2U,OAAOorB,cACxB,OAAyB,IAArBxgC,UAAUE,OAAqBma,EAAIgJ,MAChChJ,EAAIgJ,IAAIwN,EAAald,GAAQlT,KAAK4sB,WAe3CiT,qBAAA,SAASzP,EAA0B3c,GACjC,IAAMvQ,EAA0BlD,KAAK4iB,IAAIwN,GACzC,IAAKltB,IAAUA,EAAMq/B,SAAU,MAAM,IAAIl8B,MAAM,qBAAuB+pB,GAEtE,IAAMqX,EAAcznC,KAAK0nC,iBACnB//B,EAASkX,GAAUioB,gBAAgB9mC,KAAK2U,OAAOorB,cAAe0H,GAGpE,OAAOjF,GAFP/uB,EAAaA,GAAczT,KAAK2U,OAAOuD,kBAAkBnV,OAAO0kC,EAAa9/B,GAE5CzE,SCjkBxBqD,IAEXkK,KAAM,SAAC1O,GAAQ,OAAA,IAAIwmC,QAAQ,SAACvlB,EAASxW,GAAW,OAAAwW,EAAQjhB,MAGxDyK,OAAQ,SAACzK,GAAQ,OAAA,IAAIwmC,QAAQ,SAACvlB,EAASxW,GAAaA,EAAOzK,MAG3DojB,MAAO,WACL,IAAMqjB,KAKN,OAJAA,EAASr8B,QAAU,IAAIo8B,QAAQ,SAACvlB,EAASxW,GACvCg8B,EAASxlB,QAAUA,EACnBwlB,EAASh8B,OAASA,IAEbg8B,GAITrnC,IAAK,SAACgjB,GACJ,GAAIze,EAAQye,GACV,OAAOokB,QAAQpnC,IAAIgjB,GAGrB,GAAIvf,EAASuf,GAAW,CAGtB,IAAM3P,EAAQ1P,OAAOqC,KAAKgd,GACrBpjB,IAAI,SAAAqG,GAAO,OAAA+c,EAAS/c,GAAKkG,KAAK,SAAAvL,GAAO,OAAGqF,MAAKrF,WAGlD,OAAOwE,GAAGpF,IAAIqT,GAAOlH,KAAK,SAAApJ,GACxB,OAAAA,EAAO7C,OAAO,SAAC0G,EAAKyR,GAAwC,OAA5BzR,EAAIyR,EAAMpS,KAAOoS,EAAMzX,IAAYgG,YC3CrEsd,MACAojB,GAAiB,mCACjBC,GAAiB,aAiDVjiC,IAEXmc,IAAK,SAAAriB,GAAQ,OAAA8kB,GAAQ9kB,IAGrBooC,IAAK,SAACpoC,GAAS,OAAuB,MAAvBkG,GAAUmc,IAAIriB,IAS7Bod,OAAQ,SAACxe,EAAiBgR,EAAUy4B,GAClC,IAAMznC,EAAMkG,KAAWge,GAASujB,OAC1BzkC,EAASsC,GAAUyoB,SAAS/vB,GAC5B0pC,EAAcl+B,GAAgB,SAACvD,GAAgB,OAAAjG,EAAImD,eAAe8C,IAAM,SAAAA,GAAO,MAAA,8BAA8BA,QAC7G1H,EAAOyE,EAAOC,OAAOykC,GAAa9nC,IAAI,SAAAQ,GAAK,OAAAJ,EAAII,KACrD,OAAIoD,EAAWxF,GAAYA,EAAGG,MAAM6Q,EAASzQ,GAChCP,EAAaE,OAAO,GAAG,GAAGC,MAAM6Q,EAASzQ,IASxDwvB,SAAU,SAAC/vB,GACT,IAAK6c,EAAa7c,GAAK,MAAM,IAAIkH,MAAM,+BAA+BlH,GACtE,GAAIA,GAAOA,EAAW2pC,QAAS,OAAQ3pC,EAAW2pC,QAClD,GAAIpjC,EAAQvG,GAAK,OAAOA,EAAGE,MAAM,GAAI,GACrC,IAAM0qB,EAAQ5qB,EAAG4F,WAAWqO,QAAQq1B,GAAgB,IAEpD,OADe1e,EAAM1qB,MAAM0qB,EAAM3hB,QAAQ,KAAO,EAAG2hB,EAAM3hB,QAAQ,MAAMiU,MAAMqsB,UCrFpEK,GAAmB,SAACC,EAAOx3B,OAACpK,OAAKrF,OAQ5C,OAPKinC,EAAM1kC,eAAe8C,GAEf1B,EAAQsjC,EAAM5hC,IACvB4hC,EAAM5hC,GAAKuB,KAAK5G,GAEhBinC,EAAM5hC,IAAQ4hC,EAAM5hC,GAAMrF,GAJ1BinC,EAAM5hC,GAAOrF,EAMRinC,GAGIC,GAAY,SAACrS,GACtB,OAAAA,EAAY91B,MAAM,KAAKsD,OAAO4T,GAAUjX,IAAI+pB,IAAYzpB,OAAO0nC,QAEnE,YAAyBvkC,GACvB,IAAM0kC,EAAgB,SAAA3nC,GAAK,OAAAA,GAAK,IAC1BiQ,eAAC23B,OAAYpd,OACb/Z,eAEN,OAASzI,UAAMmrB,YAAQ3I,OAAMvnB,OAG/B,IAAa4kC,GAAW,SAACC,GACvB,IAAM9/B,EAAO8/B,EAAI9/B,OACX+/B,EAAeD,EAAI3U,SACnB3I,EAAOsd,EAAItd,OAEX2I,EAAS5vB,OAAOqC,KAAKmiC,GAAcvoC,IAAI,SAAAqG,GAC3C,IAAM/C,EAAQilC,EAAaliC,GAE3B,OADa1B,EAAQrB,GAASA,GAASA,IAC3BtD,IAAI,SAAAgB,GAAO,OAAAqF,EAAM,IAAMrF,MAClCV,OAAO+I,OAAa7H,KAAK,KAE5B,OAAOgH,GAAQmrB,EAAS,IAAMA,EAAS,KAAO3I,EAAO,IAAMA,EAAO,KAGpE,YACIxrB,EACAw6B,EACAwO,EACAC,GAEF,OAAO,SAASC,GACd,IAAMC,EAAgBD,EAAS5O,gBAAkB,IAAI0O,EAAaE,GAC5DE,EAAgBF,EAASnK,eAAkB,IAAIkK,EAAmBC,EAAU1O,GAOlF,OAASx6B,OAAMmpC,UAASC,gBAAejX,QALvC,SAAiB/d,GACfA,EAAO+d,QAAQgX,GACf/0B,EAAO+d,QAAQiX,MC9CrB,qBAOE,WAAYh1B,EAAyBi1B,GAArC,WAAqC5pC,qBAAA4pC,EAN7B5pC,mBAIRA,eAAY,SAAAi6B,GAAO,OAAA/yB,EAAKo1B,WAAWt1B,QAAQ,SAAAC,GAAM,OAAAA,EAAGgzB,MAkCpDj6B,UAAS,WAAM,OAAAwtB,GAAStmB,EAAK2iC,QAAQ9d,MACrC/rB,UAAS,WAAM,OAAAwtB,GAAStmB,EAAK2iC,QAAQtgC,MACrCvJ,YAAS,WAAM,OAAAipC,GAAUzb,GAAStmB,EAAK2iC,QAAQnV,SAjC7C10B,KAAK8pC,UAAYjmC,EAAKyX,SACtBtb,KAAK+pC,SAAWlmC,EAAKmmC,QAsDzB,OApBEC,gBAAA,SAAIzlC,EAAc4O,GAShB,oBATgBA,MACZjO,EAAUX,IAAQA,IAAQxE,KAAK6pC,SACjC7pC,KAAK8P,KAAK,KAAM,KAAMtL,EAAK4O,GAEvBpT,KAAK4pC,iBACP5pC,KAAKs8B,WAAWt1B,QAAQ,SAAAC,GAAM,OAAAA,GAAKzC,WAIhC4kC,GAASppC,OAGlBiqC,qBAAA,SAAShjC,GAAT,WAEE,OADAjH,KAAKs8B,WAAW3zB,KAAK1B,GACd,WAAM,OAAAoB,EAAWnB,EAAKo1B,WAAYr1B,KAG3CgjC,oBAAA,SAAQt1B,GACN/L,GAAS5I,KAAKs8B,0TC9DhB,WAAY3nB,GAAZ,MACEu1B,YAAMv1B,GAAQ,gBACd9Q,EAAKsmC,iBAAiB,aAAcjjC,EAAKkjC,WAAW,KAcxD,OAjByCC,QAMvCC,iBAAA,WACE,OAAOvf,GAAY/qB,KAAK8pC,UAAU/d,OAEpCue,iBAAA,SAAKpnC,EAAYqnC,EAAe/lC,EAAa4O,GAC3CpT,KAAK8pC,UAAU/d,KAAOvnB,GAGxB8lC,oBAAA,SAAS31B,GACPu1B,YAAMxX,kBAAQ/d,GACd9Q,EAAK2mC,oBAAoB,aAAcxqC,KAAKoqC,eAfPH,iUCEvC,WAAYt1B,UACVu1B,YAAMv1B,GAAQ,SAUlB,OAd2C01B,QAOzCI,iBAAA,WACE,OAAOzqC,KAAK0qC,MAGdD,iBAAA,SAAKvnC,EAAYqnC,EAAe/lC,EAAa4O,GAC3CpT,KAAK0qC,KAAOlmC,MAZ2BylC,iUCQzC,WAAYt1B,GAAZ,MACEu1B,YAAMv1B,GAAQ,gBACdzN,EAAKyjC,QAAUh2B,EAAOylB,WAAWv3B,OACjCgB,EAAKsmC,iBAAiB,WAAYjjC,EAAKkjC,WAAW,KAoDtD,OA1D8CC,QAyBpCO,2BAAR,WACE,OAAOjgB,GAAqB3qB,KAAK2qC,QAAQzP,aAGjC0P,iBAAV,WACM,IAAAp5B,iBAAEgV,aAAUuF,SAAM2I,WACtBA,EAAS7J,GAAW6J,GAAQ,GAC5B3I,EAAOnB,GAAUmB,GAAM,GAEvB,IAAM8e,EAAa7qC,KAAK8qC,iBAClBC,EAAqBvkB,IAAaxmB,KAAK2qC,QAAQzP,WAC/C8P,EAAiBxkB,EAAStM,OAAO,EAAG2wB,EAAWprC,UAAYorC,EAGjE,OAFArkB,EAAWukB,EAAqB,IAAMC,EAAiBxkB,EAAS+G,UAAUsd,EAAWprC,QAAU+mB,IAE5EkO,EAAS,IAAMA,EAAS,KAAO3I,EAAO,IAAMA,EAAO,KAG9D6e,iBAAV,SAAe1nC,EAAYqnC,EAAe/lC,EAAa4O,GACrD,IAAMy3B,EAAa7qC,KAAK8qC,iBAClB1P,EAAQ52B,GAAkB,MAAXA,EAAI,GAAa,IAAM,GACtCymC,EAAmB,KAARzmC,GAAsB,MAARA,EAAexE,KAAK2qC,QAAQzP,WAAa2P,EAAazP,EAAQ52B,EAEzF4O,EACFpT,KAAK+pC,SAASmB,aAAahoC,EAAOqnC,EAAOU,GAEzCjrC,KAAK+pC,SAASoB,UAAUjoC,EAAOqnC,EAAOU,IAInCL,oBAAP,SAAej2B,GACbu1B,YAAMxX,kBAAQ/d,GACd9Q,EAAK2mC,oBAAoB,WAAYxqC,KAAKoqC,eAxDAH,kBCW9C,OAfA,WAAA,WACEjqC,aAAUwT,EAEVxT,eAAY,GACZA,WAAQ,GACRA,eAAY,OACZA,WAAQ,YACRA,iBAAc,GAEdA,UAAO,WAAM,OAAAkH,EAAKkkC,OAClBprC,cAAW,WAAM,OAAAkH,EAAKmkC,WACtBrrC,UAAO,WAAM,OAAAkH,EAAKokC,OAClBtrC,cAAW,WAAM,OAAAkH,EAAKqkC,WACtBvrC,eAAY,WAAM,OAAA,GAClBA,gBAAa,SAACwrC,GAAY,OAAArmC,EAAUqmC,GAAUtkC,EAAKukC,YAAcD,EAAStkC,EAAKukC,+BCX/E,WAAY92B,EAAiB+2B,gBAAAA,MAAA1rC,cAAA0rC,EAHrB1rC,oBAAYwG,EACZxG,iBAAc,GAwCxB,OApCE2rC,iBAAA,WACE,OAAIrwB,SAASggB,KACJjD,OAAO/c,SAASggB,MAGE,UAApBt7B,KAAKu7B,WAAyB,IAAM,IAG7CoQ,qBAAA,WACE,OAAOrwB,SAASigB,SAASnoB,QAAQ,KAAM,KAGzCu4B,iBAAA,WACE,OAAOrwB,SAASswB,UAGlBD,sBAAA,WACE,OAAO3rC,KAAK0rC,UAIdC,uBAAA,SAAWE,GACT,OAAO1mC,EAAU0mC,GAAa7rC,KAAKyrC,YAAcI,EAAY7rC,KAAKyrC,aAGpEE,qBAAA,SAASzT,GACP,OAAO/yB,EAAU+yB,GAAQl4B,KAAKurC,UAAYrT,EACxC/yB,EAAUnF,KAAKurC,WAAavrC,KAAKurC,UAAYvrC,KAAK8rC,yBAGtDH,kCAAA,WACE,IAAMI,EAA2BC,SAASC,qBAAqB,QAAQ,GACvE,OAAOjsC,KAAKurC,UAAYQ,EAAUA,EAAQ7T,KAAKhe,OAAOoB,SAAS4wB,OAAOzsC,QAAU6b,SAASkL,UAAY,KAGvGmlB,oBAAA,kBC7CF,YAY+Bh3B,GAI7B,OAHArO,EAASG,UAAYA,GACrBH,EAASC,GAAKA,IAELhG,KAAM,mBAAoBgG,MAAIE,aAAWisB,QAAS,WAAM,OAAA,OAInE,IAAayZ,GACTC,GAAsB,4BAA4B,EAAO9B,GAAqBqB,IAGrEU,GACTD,GAAsB,6BAA6B,EAAMxB,GAA0Be,IAG1EW,GACTF,GAAsB,0BAA0B,EAAO3B,GAAuB8B,kBCgFlF,cAGA,OADEC,oBAAA,SAAQ73B,wzECxGR,IAAI83B,EAAmC,KACvC,OAAO,SAACljC,EAAM6I,GAEZ,OADAq6B,EAAkBA,GAAmBnmC,EAASG,UAAUmc,IAAI,qBACpD,IAAI8pB,GAAcnjC,EAAM6I,EAAMq6B,KAI1C,IAAME,GAAY,SAACxlC,EAAM3G,GACrB,OAAA2G,EAAK9F,OAAO,SAAC0G,EAAKX,GAAQ,OAAAW,GAAO5C,EAAU3E,EAAI4G,MAAO,IAW1D,YAAgClE,GAE9B,IAAKA,EAAMU,OAAQ,SAEnB,IAEIgpC,GAAY,YAAa,WAAY,qBACrCC,GAHa,mBAAoB,cAAe,WAAY,SAAU,SAGhDjtC,QAFV,aAAc,qBAAsB,eAAgB,cAGhEktC,EAAcF,EAAShtC,OAAOitC,GAKlC,GAAI1nC,EAAUjC,EAAMmb,QAAUsuB,GAAUG,EAAa5pC,GACnD,MAAM,IAAImD,MAAM,UAAUnD,EAAM3C,iKAGxBusC,EAAY1oC,OAAO,SAAAgD,GAAO,OAAAjC,EAAUjC,EAAMkE,MAAO7E,KAAK,OAGhE,IAAM8b,KACF0uB,EAAc7pC,EAAMmb,QAAW2uB,SAAY/jC,GAAK/F,EAAO4pC,IA2B3D,OAzBA9lC,EAAQ+lC,EAAa,SAAUlqC,EAA4BtC,GAUzD,GARAA,EAAOA,GAAQ,WAEXkF,EAAS5C,KAASA,GAAWoqC,UAAoBpqC,IAGrDA,EAASwE,KAAWxE,GAGhB8pC,GAAUC,EAAU/pC,IAAW8pC,GAAUE,EAAahqC,GACxD,MAAM,IAAIwD,MAAM,mBAAmBumC,EAASrqC,KAAK,eAAcsqC,EAAYtqC,KAAK,wBAAuBhC,MAAQ2C,EAAM3C,UAGvHsC,EAAOqqC,UAAYrqC,EAAOqqC,WAAa,WACvCrqC,EAAOwL,MAAQ,MACfxL,EAAOiP,SAAW5O,EAClBL,EAAOkP,MAAQxR,EAEf,IAAMud,EAAaye,GAAY4Q,sBAAsBtqC,EAAOiP,SAAUjP,EAAOkP,OAC7ElP,EAAOyP,YAAcwL,EAAW4e,WAChC75B,EAAO0P,qBAAuBuL,EAAW6e,oBAEzCte,EAAM9d,GAAQsC,IAETwb,EAGT,IAAI9Z,GAAK,gBASP,WAAmBgF,EAAyBsI,EAAqCmrB,GAAjF,WAAmBh9B,UAAAuJ,EAAyBvJ,cAAA6R,EAAqC7R,aAAAg9B,EAPjFh9B,SAAMuE,KACNvE,aAAS,EA0BTA,iBAAc,SAACyR,EAAQtB,GACrB,OAAAjJ,EAAK+lC,UAAY/lC,EAAK81B,QAAQoQ,sBAAsB37B,EAAQtB,EAASjJ,EAAK+lC,UAAW/lC,EAAK2K,SAASw7B,UAAYnmC,EAAKomC,UAexH,OAlCEZ,iBAAA,WAAA,WACQnmC,EAAKD,EAASC,GACd4J,EAAU,IAAIyT,GAAe5jB,KAAKuJ,MAClCpF,EAASnE,KAAKuJ,KAAKlI,OAAO,SAAC0G,EAAKkP,GAAS,OAAA5P,EAAOU,EAAKkP,EAAKiG,kBAE1DiH,GACJmpB,SAAU/mC,EAAGkK,KAAKzQ,KAAKg9B,QAAQ1O,WAAWtuB,KAAK6R,SAAU1N,EAAQgM,IACjEo9B,WAAYhnC,EAAGkK,KAAKzQ,KAAKwtC,cAAcr9B,KAGzC,OAAO5J,EAAGpF,IAAIgjB,GAAU7W,KAAK,SAACmgC,GAI5B,OAHAh7B,GAAM2qB,sBAAsB,SAAUl2B,GACtCA,EAAKqmC,WAAaE,EAAQF,WAC1BlmC,EAAOH,EAAMumC,EAAQH,UACdpmC,KAYXwlC,0BAAA,SAAcv8B,GACZ,IAAMu9B,EAAW1tC,KAAK6R,SAAS87B,mBAC/B,IAAK3xB,EAAa0xB,GAAW,OAAO1tC,KAAK6R,SAAS07B,WAClD,IAAM5rB,EAAOrb,EAASG,UAAUyoB,SAASwe,GACnCE,EAAaloC,EAAQgoC,GAAY1nC,GAAW0nC,GAAYA,EAE9D,OADmB,IAAI7rB,GAAW,GAAU+rB,EAAYjsB,GACtCiB,IAAIzS,uBChH1B,aAAA,WACyBnQ,cAAWjB,EAAQ8uC,QAAQC,MAAQ,EAK3C9tC,WAAQ,QAAS,iBAAkB,YAAa,SAAC+tC,EAAOC,EAAgBvnC,GAIrF,OAHAS,EAAK+mC,iBAAmBxnC,EAAUkiC,KAAOliC,EAAUkiC,IAAI,qBAAuBliC,EAAUmc,IAAI,oBAC5F1b,EAAK6mC,MAAQA,EACb7mC,EAAK8mC,eAAiBA,EACf9mC,IAmKX,OA/JEgnC,2BAAA,SAAersC,GACb7B,KAAKmuC,SAAWtsC,GAgBlBqsC,uBAAA,SAAWrrC,EAA4BsB,EAAagM,GAClD,IAEMi+B,EAAc,SAACruC,GAAW,OAAAuG,EAASC,GAAGkK,KAAK1Q,GAAQuN,KAAK,SAAAqc,GAAO,OAAG2jB,SAAW3jB,MAC7E0kB,EAAc,SAACtuC,GAAW,OAAAuG,EAASC,GAAGkK,KAAK1Q,GAAQuN,KAAK,SAAAqc,GAAO,OAAGsjB,UAAWtjB,MAEnF,OACIxkB,EAAUtC,EAAOyqC,UAAqBc,EAAWpuC,KAAKyD,WAAWZ,EAAOyqC,SAAUnpC,IAClFgB,EAAUtC,EAAOyrC,aAAqBF,EAAWpuC,KAAKuuC,QAAQ1rC,EAAOyrC,YAAanqC,IAClFgB,EAAUtC,EAAO2rC,kBAAqBJ,EAAWpuC,KAAKyuC,aAAa5rC,EAAO2rC,iBAAkBrqC,EAAQgM,IACpGhL,EAAUtC,EAAOoqC,WAAqBoB,EAAYxrC,EAAOoqC,WACzD9nC,EAAUtC,EAAO6rC,mBAAqBL,EAAYruC,KAAK2uC,sBAAsB9rC,EAAO6rC,kBAAmBvqC,EAAQgM,IAC/Gi+B,EAXoB,wBAwB1BF,uBAAA,SAAWZ,EAA+BnpC,GACxC,OAAOQ,EAAW2oC,GAAmBA,EAAUnpC,GAAUmpC,GAY3DY,oBAAA,SAAQ1pC,EAA0BL,GAEhC,OADIQ,EAAWH,KAAMA,EAAaA,EAAKL,IAC5B,MAAPK,EAAoB,KAEpBxE,KAAKmuC,SACAnuC,KAAK+tC,MAAMnrB,IAAIpe,GAAOie,MAAOziB,KAAKguC,eAAgBY,SAAWC,OAAQ,eACvEvhC,KAAK,SAAUwhC,GACd,OAAOA,EAASl+B,OAIjB5Q,KAAKiuC,iBAAiBzpC,IAW/B0pC,yBAAA,SAAaR,EAAuBvpC,EAAagM,GAC/C,IAAMwR,EAAOrb,EAASG,UAAUyoB,SAASwe,GACnCE,EAAaloC,EAAQgoC,GAAY1nC,GAAa0nC,GAAYA,EAEhE,OADmB,IAAI7rB,GAAW,GAAe+rB,EAAYjsB,GAC3CiB,IAAIzS,IAUxB+9B,kCAAA,SAAsBR,EAAuBvpC,EAAagM,GACxD,IAAMwR,EAAOrb,EAASG,UAAUyoB,SAASwe,GACnCE,EAAaloC,EAAQgoC,GAAY1nC,GAAa0nC,GAAYA,EAEhE,OADmB,IAAI7rB,GAAW,GAAe+rB,EAAYjsB,GAC3CiB,IAAIzS,IAiBxB+9B,kCAAA,SAAsBz8B,EAA0BtB,EAAyB88B,EAAmBI,GAC1FA,EAAWA,MAGX,IAAM0B,EAAShwC,EAAQ8uC,QAAQC,OAAS,EAAI,KAAO,GAE7CkB,EAAQ,SAACplB,GACb,IAAMqlB,EAAUC,GAAYtlB,GAC5B,MAAO,aAAajnB,KAAKssC,GAAW,KAAKA,EAAYA,GAmCjDE,EAOV,SAA8B5uC,GAC5B,IAAM6uC,EAAkB9oC,EAASG,UAAUmc,IAAIriB,EAAO,aACtD,IAAK6uC,IAAYA,EAAQ3vC,OAAQ,MAAM,IAAI4G,MAAM,mCAAmC9F,OACpF,OAAO6uC,EAAQruC,IAAIsuC,IAAahuC,OAAO+I,OAVvBklC,CAAqBrC,GAAWlsC,IA/BzB,SAACuN,GACZ,IAAA/N,SAAM2M,SACRqiC,EAAWP,EAAMzuC,GAIvB,GAAIkR,EAAO+9B,KAAKD,KAAclC,EAAS9sC,GACrC,OAAUgvC,OAAa99B,EAAO+9B,KAAKD,OAErC,IAAME,EAAcpC,EAAS9sC,IAASA,EAGtC,GAAa,MAAT2M,EACF,OAAUqiC,SAAeR,cAAkBU,QAK7C,GAAa,MAATviC,EAAc,CAChB,IAAMoR,EAAMnO,EAAQ8U,cAAcwqB,GAC5BtwC,EAAKmf,GAAOA,EAAI1N,KAChBlR,EAAOP,GAAMmH,EAASG,UAAUyoB,SAAS/vB,OAG/C,OAAUowC,gBAAsBE,GADZ/pC,EAAQvG,GAAM,KAAIA,EAAGM,OAAS,OAAO,QACIC,EAAK6C,KAAK,UAIzE,OAAUgtC,OAAaR,cAAkBU,QAGqBltC,KAAK,KAC/DmtC,EAAYV,EAAM/B,GACxB,MAAO,IAAIyC,MAAaP,QAAWO,YAavC,IAAML,GAAc,SAACv1B,GACnB,OAAIlV,EAASkV,EAAI61B,kBAA0BC,GAAc91B,EAAI61B,kBACtDC,GAAc91B,EAAInC,QAUrBi4B,GAAgB,SAACC,GAAqB,OAAA/qC,OAAOqC,KAAK0oC,OAEnD9uC,IAAI,SAAAqG,GAAO,OAACA,EAAK,oBAAoBzE,KAAKktC,EAAYzoC,OAEtDhD,OAAO,SAAAoV,GAAS,OAAArU,EAAUqU,IAAU9T,EAAQ8T,EAAM,MAElDzY,IAAI,SAAAyY,GAAS,OAAGjZ,KAAMiZ,EAAM,GAAG,IAAMA,EAAM,GAAItM,KAAMsM,EAAM,GAAG,qBChMjE,WAAoBumB,EAAsCnrB,GAAtC5U,mBAAA+/B,EAAsC//B,kBAAA4U,EACxDokB,EAAqBj3B,EAAI+tC,EAAc1sC,WAAYpD,KAAM+B,EAAI/B,OAyPjE,OA7JE8vC,sBAAA,SAAUvvC,EAAc+yB,GACtB,OAAOtzB,KAAK+/B,cAAcgQ,UAAUxvC,EAAM+yB,IAAStzB,MAyIrD8vC,kBAAA,SAAMvvC,EAAW+qB,GAOf,OANI1mB,EAASrE,GACX+qB,EAAa/qB,EAEb+qB,EAAW/qB,KAAOA,EAEpBP,KAAK+/B,cAAcvN,SAASlH,GACrBtrB,MAST8vC,sBAAA,SAAUhmC,GACR,OAAO9J,KAAK4U,aAAao7B,UAAUlmC,SCjQ1BmmC,GAAsB,SAAC9pB,GACpC,OAAA,SAA0B+pB,EAA0BngB,GAClD,IAAMtb,EAAOy7B,EAAY/pB,GACnBK,EAAwB,WAAbL,EAAwB,OAAS,KASlD,OAAO1R,EAPP,SAA0BtF,EAAmBjM,GAC3C,IACMqhB,EADiB,IAAIX,GAAezU,EAAMkI,YAAYmP,IAC1BjC,WAAWrhB,EAAMG,WAC7CulC,EAASvhC,EAAO8oC,GAAU5rB,IAAe6rB,QAASltC,EAAOmtC,aAAclhC,IAC7E,OAAO7I,EAASG,UAAUkX,OAAOlJ,EAAMzU,KAAM4oC,SAGdpiC,kBC2BjC,WAAY8pC,GA3BJtwC,sBA4BNA,KAAKswC,kBAAoBA,EACzB,IAAMC,EAAMxuC,EAAIuuC,GAChBtX,EAAqBuX,EAAKvwC,KAAMuwC,GAAM,eAqC1C,OArDSC,+BAAP,SAAoC77B,GAClC,IAAM87B,EAAsB97B,EAAO4G,kBAAkBrO,KAAK,QAE1DujC,EAASzyB,OAAS,SAACzc,GACf,OAAK,MAALA,EAAYA,EAAEwD,WAAWqO,QAAQ,UAAW,SAAAkhB,GAAK,OAAGoc,IAAK,KAAMC,IAAK,OAAQrc,KAAO/yB,GAEvFkvC,EAASt2B,OAAS,SAAC5Y,GACf,OAAK,MAALA,EAAYA,EAAEwD,WAAWqO,QAAQ,YAAa,SAAAkhB,GAAK,OAAGsc,KAAM,IAAKC,MAAO,KAAMvc,KAAO/yB,IAI3FivC,oBAAA,aAQAA,qBAAA,SAAS1mC,GAAT,WAEE,OADA9J,KAAK8wC,cAAcnoC,KAAKmB,GACjB,WAAM,OAAAzB,EAAWnB,EAAK4pC,cAAhBzoC,CAA+ByB,KAG9C0mC,sBAAA,WACE,IAAIxV,EAAiBh7B,KAAKswC,kBAAkBtV,YAE5C,OADAA,EAAYp2B,EAASo2B,GAAaA,EAAU1rB,QAAU0rB,IAClCh7B,KAAK+wC,SAAS/G,SAGpCwG,gBAAA,SAAIQ,EAAiB59B,EAAiBlQ,GAIpC,oBAJmBkQ,MACfjO,EAAU6rC,IAAShxC,KAAKixC,UAAUzsC,IAAIwsC,GACtC59B,GAASpT,KAAKixC,UAAU79B,UACxBlQ,GAAOlD,KAAKixC,UAAU/tC,MAAMA,GACzBlD,KAAKixC,UAAUzsC,OAGxBgsC,6BAAA,SAAiBU,EAAYD,EAA6BF,EAAUI,GAApE,WACEnxC,KAAKixC,UAAYA,EACjBjxC,KAAK+wC,SAAWA,EAGhBG,EAAWE,IAAI,yBAA0B,SAAAnX,GAAO,OAAA/yB,EAAK4pC,cAAc9pC,QAAQ,SAAA7H,GAAM,OAAAA,EAAG86B,OACpF,IAAMoX,EAAOtvC,EAAIkvC,GACXK,EAAWvvC,EAAIovC,GAGrBnY,EAAqBqY,EAAMrxC,KAAMqxC,GAAO,UAAW,OAAQ,SAAU,SAErErY,EAAqBqY,EAAMrxC,KAAMqxC,GAAO,OAAQ,WAAY,SAE5DrY,EAAqBsY,EAAUtxC,KAAMsxC,GAAW,iCCxDlD,WAAY38B,GACV3U,KAAKkyB,QAAUvd,EACf3U,KAAKuxC,WAAa58B,EAAOyd,UA6K7B,OArLSof,oBAAP,SAAyB78B,EAAkB2iB,GACzC,OAAO,SAAAjb,GACH,OAAA/V,EAASG,UAAUkX,OAAO2Z,EAAS,MAAQma,OAAQp1B,EAAOq1B,aAAc/8B,EAAO0Q,QAAQlhB,WAU7FqtC,iBAAA,WACE,IAAMpf,EAAYpyB,KAAKuxC,WAGvB,OAFAnf,EAAUiQ,QAAO,GACZjQ,EAAU0J,mBAAmB1J,EAAU8G,SACrC9G,GAkCTof,iBAAA,SAAKG,GAAL,WACE,IAAKhtC,EAAWgtC,GAAS,MAAM,IAAItrC,MAAM,6BAEzC,IAGM2rB,EAAO,IAAI4F,GAHH,WACV,OAAA+Z,EAAOrrC,EAASG,UAAWS,EAAKgrB,QAAQ2I,kBAER7iB,GAEpC,OADAhY,KAAKuxC,WAAWvf,KAAKA,GACdhyB,MA6BTwxC,sBAAA,SAAUxf,GAAV,WACQI,EAAYpyB,KAAKuxC,WAEvB,GAAI9rC,EAASusB,GACXI,EAAUwf,UAAU5f,OACf,CAAA,IAAIrtB,EAAWqtB,GAGpB,MAAM,IAAI3rB,MAAM,uCAFhB+rB,EAAUwf,UAAU,WAAM,OAAA5f,EAAK1rB,EAASG,UAAWS,EAAKgrB,QAAQ2I,mBAKlE,OAAO76B,MAyCTwxC,iBAAA,SAAKna,EAAkCC,GAMrC,OALI5xB,EAAQ4xB,IAAY3yB,EAAW2yB,MACjCA,EAAUka,EAAkBK,kBAAkB7xC,KAAKkyB,QAASoF,IAG9Dt3B,KAAKuxC,WAAW9gC,KAAK4mB,EAAMC,GACpBt3B,MAiCTwxC,2BAAA,SAAersB,GACbnlB,KAAKuxC,WAAWO,eAAe3sB,SCpMnCnmB,EAgBQ+yC,OAAO,yBACf,IAAMC,GAAYjzC,EAAQgzC,OAAO,qBAC3BE,GAAYlzC,EAAQgzC,OAAO,kBAAqB,KAAM,mBACtDG,GAAYnzC,EAAQgzC,OAAO,oBAAqB,mBAChDI,GAAYpzC,EAAQgzC,OAAO,mBAAqB,mBAAoB,iBAAkB,uBACtFK,GAAYrzC,EAAQgzC,OAAO,aAAqB,iBAAkB,kBAAmB,uBAYvFp9B,IAXY5V,EAAQgzC,OAAO,oBAAqB,cAW7B,MAIvB,YAA2BzB,IAGzB37B,GAAS3U,KAAK2U,OAAS,IAAIsrB,IACpBoS,cAAgB,IAAIvC,GAAcn7B,GAAOorB,cAAeprB,GAAOC,cAGtED,GAAOorB,cAAcgQ,UAAU,QAAYuC,IAC3C39B,GAAOorB,cAAcgQ,UAAU,SAAYE,GAAoB,WAC/Dt7B,GAAOorB,cAAcgQ,UAAU,WAAYE,GAAoB,aAC/Dt7B,GAAOorB,cAAcgQ,UAAU,UAAYE,GAAoB,YAE/Dt7B,GAAOmrB,YAAY3oB,WAAW6kB,mBAAmB,MAAOuW,MAExD,IAAMC,EAAqB79B,GAAOkmB,gBAAkBlmB,GAAO2qB,eAAiB,IAAIkR,GAAoBF,GAQpG,WAAcW,EAA6BE,EAAeJ,EAAeG,EAAuBnD,EAAqBC,GAInH,OAHAwE,EAAmBC,iBAAiBvB,EAAYD,EAAWF,EAAUI,UAC9Dx8B,GAAe,cACfA,GAAa,KACbA,GAET,OAZA67B,GAAoBkC,6BAA6B/9B,IAGjDA,GAAe,OAAIA,GACnBA,GAAa,KAAIg+B,EACjBA,EAAK7J,SAAW,YAAa,WAAY,WAAY,aAAc,QAAS,kBAOrEn0B,GA9BTi+B,GAAkB9J,SAAW,qBAiC7B,IAAM+J,GAAiB,SAACC,GAAgB,OAAE,oBAAqB,SAACC,GAC9D,IAAMrJ,EAAUqJ,EAAKp+B,OAAOm+B,GAE5B,OADApJ,EAAc,KAAI,WAAM,OAAAA,GACjBA,KAKT,YAAkBjjC,EAA6BF,EAAeysC,GAC5D1sC,EAASG,UAAYA,EACrBH,EAASC,GAAWA,EAIpBysC,EAAUjT,cAAcnd,MACnB7hB,IAAI,SAAAQ,GAAK,OAAAA,EAAE8B,UAAU+a,cACrB/c,OAAO+I,OACPhG,OAAO,SAAA7C,GAAK,MAAW,aAAXA,EAAEogB,OACd3a,QAAQ,SAAA2J,GAAc,OAAAA,EAAWgR,KAAOlb,EAAUyoB,SAASve,EAAW+Q,UAAWjb,EAAU0oB,YAXlG8jB,GAASnK,SAAW,YAAa,KAAM,aAwBvC,YAA6BoI,GAC3BA,EAAWgC,OAAO,WAAazgC,GAAMrD,uBAFvC+jC,GAAarK,SAAW,cAKxBkJ,GAAUtE,SAAS,YAA4BkF,IAC/CV,GAAUxE,SAAS,cAAuB,oBAdb,SAACjE,GAC5B,OAAAA,EAAS2J,kBAAoB,IAAI5B,GAAkB/H,MAcrDwI,GAAUvE,SAAS,cAAsBmF,GAAe,eACxDZ,GAAUvE,SAAS,sBAAuB,oBAAqB,WAAM,OAAA/4B,GAAO4G,qBAC5E02B,GAAUvE,SAAS,mBAAsB,WAAM,OAAA,IAAIQ,KACnDiE,GAAUzE,SAAS,iBAAsBmF,GAAe,kBACxDV,GAAUzE,SAAS,mBAAsBmF,GAAe,YACxDV,GAAUzE,SAAS,eAAsBmF,GAAe,sBACxDV,GAAUzE,SAAS,UAAuB,oBAhBjB,WACrB,OAAArmC,EAAOsN,GAAO09B,eAAiBM,KAAM,WAAM,OAAAh+B,GAAOC,mBAiBtDu9B,GAAUnV,QAAS,gBAAuB,YAAa,SAACgW,GAAwB,OAAAA,EAAU3tB,QAAQlhB,UAClGiuC,GAAUpV,QAAS,QAAsB,WAAM,OAAAroB,GAAOmrB,cACtDsS,GAAU1I,QAAS,SAAsB,WAAM,OAAAj3B,KAE/C2/B,GAAUrK,IAASoL,IACnBlB,GAAUlK,KAAU,qBAAsB,SAAUsL,OACpDlB,GAAUpK,KAAU,SAAU,SAAU/oB,OACxCkzB,GAAUnK,KAAU,aAAc,SAAUjX,OAC5CkhB,GAAUjK,IAASkL,IAGnB,IC0HIK,GAoIAC,GAgJAC,GC3XO/hC,GFnBE0+B,GAAY,SAACsD,GASxB,OAReA,EAAI9sB,YAAYviB,OAAOqB,GAEf1E,IAAI,SAAAqG,GACzB,IAAMuJ,EAAa8iC,EAAIxuB,cAAc7d,GAErC,OAASA,EAAoB,WADVqsC,EAAInxB,UAAU3R,GAAY6Q,MACL7Q,EAAWxE,QAAUwE,EAAWC,QAG5DvP,OAAOod,QCzHvB,YAAuB/a,GACrB,IAAI2pB,EACEqmB,EAAahwC,EAAI2Y,MAAM,qBAI7B,GAHIq3B,IAAYhwC,EAAM,IAAMgwC,EAAW,GAAK,OAE5CrmB,EAAS3pB,EAAI0P,QAAQ,MAAO,KAAKiJ,MAAM,oCACN,IAAlBgR,EAAO5tB,OAAc,MAAM,IAAI4G,MAAM,sBAAwB3C,EAAM,KAClF,OAASR,MAAOmqB,EAAO,IAAM,KAAMsmB,UAAWtmB,EAAO,IAAM,MAI7D,YAAsBumB,GACpB,IAAMC,EAAuBD,EAAGhwC,SAA8BkwC,cAAc,WACtEvqC,EAAmB3I,EAAM,YAANA,CAAmBizC,GAC5C,OAAOtqC,EAAOvD,GAAKuD,GAAMrG,MAAM3C,UAAOiG,EAIxC,YAAsBwY,EAAsB+0B,EAA4Bj6B,GACtE,IAAMk6B,EAAUl6B,EAAIk6B,SAAWh1B,EAAO/R,QAAQ1M,KACxC0zC,EAAc5sC,EAgDtB,SAAqBusC,EAAsB50B,GACzC,OACEhM,SAAUW,GAAaigC,IAAO50B,EAAO4N,SACrCzpB,SAAS,EACTuE,OAAQ,QApDiBwsC,CAAYH,EAAU/0B,GAASlF,EAAIm6B,iBACxD/b,EAAOlZ,EAAOkZ,KAAK8b,EAASl6B,EAAIq6B,cAAeF,GACrD,OAASD,UAASG,cAAer6B,EAAIq6B,cAAeF,cAAa/b,QAWnE,YAAqB0b,GAEnB,IAAMQ,EAA4D,+BAApDtvC,OAAO1B,UAAU2B,SAAS9E,KAAK2zC,EAAGtzC,KAAK,SAC/C+zC,EAA4B,SAAnBT,EAAG,GAAGU,SAErB,OACE9E,KAAM6E,EAAS,SAAYD,EAAQ,aAAe,OAClDG,SAA+C,MAArCX,EAAGtzC,KAAK,WAAW40B,cAC7Bsf,WAAYH,GAKhB,YAAmBT,EAAsB50B,EAAsBy1B,EAA2BvnC,EAAgBwnC,GACxG,OAAO,SAAUroC,GACf,IAAMsoC,EAAStoC,EAAEuoC,OAASvoC,EAAEsoC,OAAQhtC,EAAS+sC,IAE7C,KAAMC,EAAS,GAAKtoC,EAAEwoC,SAAWxoC,EAAEyoC,SAAWzoC,EAAE0oC,UAAYnB,EAAGpE,KAAK,WAAY,CAE9E,IAAMwF,EAAaP,EAAS,WAC1Bz1B,EAAOub,GAAG5yB,EAAOqsC,QAASrsC,EAAOwsC,cAAexsC,EAAOssC,eAEzD5nC,EAAE4oC,iBAGF,IAAIC,EAA4BhoC,EAAKqnC,WAAa5sC,EAAOuwB,KAAO,EAAI,EAEpE7rB,EAAE4oC,eAAiB,WACbC,KAA+B,GAAGT,EAASU,OAAOH,MAgB9D,YAAoBI,EAA2Bz9B,EAAeqpB,EAA2BiT,GACvF,IAAIoB,EAEApB,IACFoB,EAASpB,EAAYoB,QAGlB3vC,EAAQ2vC,KACXA,GAAU,UAIZ,IADA,IAAMC,EAAKF,EAAQE,GAAK,KAAO,WACXC,IAAAr1C,WAAAA,KAAf,IAAMs1C,OACTJ,EAAQE,GAAIE,EAAOxU,GAGrBrpB,EAAMy5B,IAAI,WAAY,WAEpB,IADA,IAAMqE,EAAML,EAAQK,IAAM,MAAQ,aACdC,IAAAx1C,WAAAA,KAAf,IAAMy1C,OACTP,EAAQK,GAAKE,EAAO3U,MExG1B,YAA+BhiB,GAC7B,IAAM42B,EAAgB,SAAS1yC,EAAoBiB,EAAaqJ,GAC9D,OAAOwR,EAAOvd,GAAGyB,EAAOiB,EAAQqJ,IAGlC,OADAooC,EAASC,WAAY,EACdD,EAcT,YAAuC52B,GACrC,IAAM82B,EAAsB,SAAS5yC,EAAoBiB,EAAaqJ,GACpE,OAAOwR,EAAOyI,SAASvkB,EAAOiB,EAAQqJ,IAGxC,OADAsoC,EAAeD,WAAY,EACnBC,ED2SV,YAA4BC,EACAC,EACAr8B,EACA2F,EACA/Y,EACAkuC,GAC1B,IAAMwB,EAAkBr1C,EAAM,yBACxBs1C,EAAet1C,EAAM,sBAE3B,OACEu1C,SAAU,MACVt/B,UAAW,IACX4W,QAAS,SAAU2oB,GACjB,IAAMC,EAAUD,EAAShlC,OAGzB,OAFAglC,EAASE,QAEF,SAAU3+B,EAAeo8B,GAC9B,IAAMnjC,EAAmBmjC,EAASnjC,KAAK,WACvC,IAAKA,EAGD,OAFAmjC,EAAS3iC,KAAKilC,QACdN,EAAShC,EAASwC,WAAlBR,CAAqCp+B,GAIzC,IAAM/F,EAAqBhB,EAAK4lC,OAAgB3kC,YAAc4kC,YAAajjC,GACrEkjC,EAA6B9kC,EAAIrI,MAAQ,IAAIqa,GAAehS,EAAIrI,MACtEwqC,EAAS3iC,KAAKQ,EAAI6kC,YAAY1C,EAAU2C,IAAeL,GACvD5jC,GAAMkkC,gBAAgB/lC,EAAKijC,QAASE,EAAS3iC,QAE7C,IAAMwlC,EAAOb,EAAShC,EAASwC,YACzBhJ,EAAa37B,EAAI27B,WACjBsJ,EAAuBZ,EAAgBrkC,GACvCs7B,EAAoBgJ,EAAatkC,GACjCg3B,EAAS8N,GAAcvG,GAAUuG,GAIvC,GAFA/+B,EAAMu1B,GAAatE,EAEf2E,EAAY,CACd,IAAMuJ,EAAqCd,EAAYzI,EAAYlmC,KAAWuhC,GAAUmO,OAAQp/B,EAAOo8B,SAAUA,KAC7G8C,IACFl/B,EAAMk/B,GAAgBC,EACtBn/B,EAAMk/B,GAAc3J,GAAatE,GAQnCmL,EAASnjC,KAAK,0BAA2BkmC,GACzC/C,EAASjhB,WAAWliB,KAAK,0BAA2BkmC,GAEpDE,GAA4BzwC,EAAIoT,EAAcm9B,EAAoBn/B,EAAO/F,GAI3E,GAAInM,EAASmM,EAAIC,SAASo7B,WACxB,IAAMgK,EAAMrlC,EAAIC,SAASo7B,UACnByC,EAAYR,GAAY+H,GACxBC,EAAY,IAAIz0C,OAAO,eAAeitC,MAAc,KASpDyH,EAAkBx/B,EAAMu7B,OAPC,WAC7B,IAAMkE,KAAiB/3C,MAAMY,KAAK8zC,EAAS,GAAGjhB,UACzC1uB,OAAO,SAACwvC,GAAgB,OAAAA,GAAMA,EAAGyD,SAAWH,EAAUv0C,KAAKixC,EAAGyD,WAEnE,OAAOD,GAAer4C,EAAQq2C,QAAQgC,GAAaxmC,KAAK,IAAIqmC,iBAGD,SAASK,GAC/DA,IACLN,GAA4BzwC,EAAIoT,EAAc29B,EAAc3/B,EAAO/F,GACnEulC,OAIJP,EAAKj/B,MD3Jb27B,IAAmB,YAAa,WAC9B,SAA4BN,EAAqByB,GAC/C,IAAMz1B,EAASg0B,EAAUp+B,aAEzB,OACEuhC,SAAU,IACVoB,SAAU,iBAAkB,oBAC5BX,KAAM,SAAUj/B,EAAey9B,EAA2BjG,EAAYqI,GACpE,IAGIxW,EAHE9zB,EAAOuqC,GAAYrC,GACnBsC,EAASF,EAAa,IAAMA,EAAa,GAC3CG,EAAyB,KAGvBC,KACAlD,EAAS,WAAM,OAAAmD,GAAa74B,EAAQo2B,EAASwC,IAE7Cl0C,EAAMo0C,GAAc3I,EAAM4I,QAIhC,aACE,IAAMj+B,EAAM46B,IACRiD,GAAcA,IACdD,IAAQC,EAAeD,EAAOM,eAAel+B,EAAIk6B,QAASl6B,EAAIq6B,gBAClD,MAAZr6B,EAAIoe,MAAciX,EAAM8I,KAAK/qC,EAAKsiC,KAAM11B,EAAIoe,MAPlD0f,EAAO5D,QAAUtwC,EAAIR,MACrB00C,EAAO3D,YAAc9E,EAAM+I,WAAavgC,EAAMwgC,MAAMhJ,EAAM+I,eAStDx0C,EAAIiwC,YACNh8B,EAAMu7B,OAAOxvC,EAAIiwC,UAAW,SAAU5xC,GACpC61C,EAAOzD,cAAgB9sC,KAAWtF,GAClCsgC,MACC,GACHuV,EAAOzD,cAAgB9sC,KAAWsQ,EAAMwgC,MAAMz0C,EAAIiwC,aAGpDtR,IAEA1qB,EAAMy5B,IAAI,WAAkB4B,EAAUjT,cAAcqY,gBAAgB/V,IACpE1qB,EAAMy5B,IAAI,WAAkB4B,EAAU96B,kBAAkB+pB,aAAcI,IAEjEn1B,EAAKsnC,YACVxT,EAASqX,GAAUjD,EAASp2B,EAAQy1B,EAAUvnC,EAAMwnC,GACpD4D,GAAWlD,EAASz9B,EAAOqpB,EAAQ4W,EAAO3D,kBA0FlDV,IAAoB,YAAa,WAC/B,SAAmCP,EAAqByB,GACtD,IAAMz1B,EAASg0B,EAAUp+B,aAEzB,OACEuhC,SAAU,IACVoB,SAAU,iBAAkB,oBAC5BX,KAAM,SAAUj/B,EAAey9B,EAA2BjG,EAAYqI,GACpE,IAGIxW,EAHE9zB,EAAOuqC,GAAYrC,GACnBsC,EAASF,EAAa,IAAMA,EAAa,GAC3CG,EAAyB,KAGvBC,KACAlD,EAAS,WAAM,OAAAmD,GAAa74B,EAAQo2B,EAASwC,IAE7CW,GAAc,UAAW,gBAAiB,eAC1CC,EAAgBD,EAAWl3C,OAAO,SAAC0G,EAAKynC,GAAS,OAACznC,EAAIynC,GAAQh8B,EAAMzL,OAE1E,aACE,IAAM+R,EAAM46B,IACRiD,GAAcA,IACdD,IAAQC,EAAeD,EAAOM,eAAel+B,EAAIk6B,QAASl6B,EAAIq6B,gBAClD,MAAZr6B,EAAIoe,MAAciX,EAAM8I,KAAK/qC,EAAKsiC,KAAM11B,EAAIoe,MAGlDqgB,EAAWvxC,QAAQ,SAACyxC,GAClBb,EAAOa,GAAStJ,EAAMsJ,GAAS9gC,EAAMwgC,MAAMhJ,EAAMsJ,IAAU,KAE3DtJ,EAAMuJ,SAASD,EAAO,SAACE,GACrBH,EAAcC,KACdD,EAAcC,GAAS9gC,EAAMu7B,OAAOyF,EAAM,SAACnN,GACzCoM,EAAOa,GAASjN,EAChBnJ,MACC,OAIPA,IAEA1qB,EAAMy5B,IAAI,WAAkB4B,EAAUjT,cAAcqY,gBAAgB/V,IACpE1qB,EAAMy5B,IAAI,WAAkB4B,EAAU96B,kBAAkB+pB,aAAcI,IAEjEn1B,EAAKsnC,YACVxT,EAASqX,GAAUjD,EAASp2B,EAAQy1B,EAAUvnC,EAAMwnC,GACpD4D,GAAWlD,EAASz9B,EAAOqpB,EAAQ4W,EAAO3D,kBAmGlDT,IAAyB,SAAU,eAAgB,eAAgB,YACjE,SAAkCx0B,EAAsB0yB,EAAmBkH,EAAmC5F,GAC5G,OACEmD,SAAU,IACV5I,YAAa,SAAU,WAAY,SACjC,SAAUwJ,EAAgBhD,EAA4B8E,GACpD,IACIC,EACAtB,EAqCIuB,EACAC,EACAC,EAzCJ15B,KAOJu5B,EAAgBF,EAAaC,EAAOK,gBAAkB,IAAI,EAA1CN,CAAiD7B,GAEjE,IACES,EAAeT,EAAOoB,MAAMU,EAAOrB,cACnC,MAAOnrC,IAmBT,WAA+B8C,GAC7BA,EAAMhD,QAAQmB,KAAK+0B,EAAQ7uB,GAkB7B,aACE2lC,EAA8B3B,GAGhC,WAAwC4B,GAClCx0C,EAASw0C,KACX75B,KACAvY,EAAQoyC,EAAkB,SAAUhpB,EAA+CipB,GAEjF,IAAMC,EAAmB,SAAUlpB,EAAqBipB,GACtD,IAAM31C,EAAMo0C,GAAc1nB,GAC1BmpB,EAAS71C,EAAIR,MAAO6zC,EAAOoB,MAAMz0C,EAAIiwC,WAAY0F,IAG/C5zC,EAAS2qB,GAEXkpB,EAAiBlpB,EAAuBipB,GAC/B3zC,EAAQ0qB,IAEjBppB,EAAQopB,EAAa,SAAUA,GAC7BkpB,EAAiBlpB,EAAaipB,QAOxC,WAAkBlmC,EAAmBqmC,EAAkBH,GACrD,IAEMI,GACJv2C,MAHY8b,EAAO4D,IAAIzP,EAAWQ,GAAaogC,MAG7BxzC,KAAM4S,GACxBhP,OAAQq1C,EACRH,YAAaA,GAKf,OAFA95B,EAAO5W,KAAK8wC,GAEL,WACLpxC,EAAWkX,EAAXlX,CAAmBoxC,IAKvB,aACE,IAAMC,EAAe,SAAA/vB,GACjB,OAAAA,EAAI7oB,MAAM,MAAMsD,OAAO4T,IACrB2hC,EAAa,SAACC,GAChB,OAAAA,EAAU74C,IAAI,SAAAQ,GAAK,OAAAA,EAAE83C,cAAat4C,IAAI24C,GAAcr4C,OAAO+I,QAEzDyvC,EAAaF,EAAWp6B,GAAQ3f,OAAO85C,EAAaZ,IAAgBz3C,OAAOkJ,OAC3EuvC,EAAeH,EAAWp6B,EAAOnb,OAAO,SAAA7C,GAAK,OAAAyd,EAAOyI,SAASlmB,EAAE2B,MAAM3C,KAAMgB,EAAE4C,WAE7E41C,IADsBx6B,EAAOnb,OAAO,SAAA7C,GAAK,OAAAyd,EAAOvd,GAAGF,EAAE2B,MAAM3C,KAAMgB,EAAE4C,UAAS1E,OACzCi6C,EAAaZ,MAEhDkB,EAAaF,EAAal6C,OAAOm6C,GAAc14C,OAAOkJ,OACtD0vC,EAAgBJ,EAAWz1C,OAAO,SAAA81C,GAAO,OAACjyC,EAAQ+xC,EAAYE,KAEpEnD,EAAOoD,WAAW,WAChBH,EAAWhzC,QAAQ,SAAAozC,GAAa,OAAArG,EAASsG,SAASD,KAClDH,EAAcjzC,QAAQ,SAAAozC,GAAa,OAAArG,EAASuG,YAAYF,OA7F5DjB,EADA3B,EAAeA,GAAgBoB,EAAaC,EAAOrB,cAAgB,IAAI,EAAxCoB,CAA+C7B,IAI9E/2C,KAAKg4C,eAAiB,SAAUuC,EAAkBlnC,GAGhD,KAAIzO,EAAS4yC,IAAiBj4B,EAAO9f,OAAS,GAA9C,CAGA,IAAMkW,EAAa4jC,EAASgB,EAAUlnC,EAAWmkC,GAEjD,OADAnV,IACO1sB,IAMTohC,EAAO3F,IAAI,YAMH2H,EAAkC/F,EAAUjT,cAAcqY,gBAAgBoC,GAC1ExB,EAA4BhG,EAAU96B,kBAAkBitB,WAAYsV,GACpExB,EAAuClC,EAAO3F,IAAI,sBAAuB/O,GACxE,WACL0W,IACAC,IACAC,OAXAjG,EAAU3tB,QAAQ5R,YACpBgnC,EAAsBzH,EAAU3tB,QAAQ5R,YA8E1C4uB,SAUVtjC,EAAQgzC,OAAO,mBACV2I,UAAU,SAAUpH,IACpBoH,UAAU,eAAgBlH,IAC1BkH,UAAU,iBAAkBlH,IAC5BkH,UAAU,UAAWnH,IE7oB1BoH,GAAe7R,SAAW,UAmB1B8R,GAAuB9R,SAAW,UASlC/pC,EAAQgzC,OAAO,mBACZ3tC,OAAO,UAAWu2C,IAClBv2C,OAAO,kBAAmBw2C,ID+G7BnpC,IAAU,QAAS,WAAY,gBAAiB,eAAgB,KAChE,SAAwB6N,EAAoBu7B,EAAeC,EAAoBlC,EAAmCryC,GAyBhH,IAAMw0C,GACJvE,MAAQ3kC,UAAYC,SAAUwN,EAAMnI,WAAW4kB,qBAC/C8X,YAGI6G,GACJpd,MAAO,EACP6Y,SAAU,MACV6E,UAAU,EACVnkC,SAAU,IACVokC,WAAY,UACZxtB,QAAS,SAAU2oB,EAAkB8E,EAAaC,GAEhD,OAAO,SAAUxjC,EAAeo8B,EAA4B5E,GAC1D,IAMIiM,EACAC,EACAC,EACA5pC,EACA6pC,EAVEC,EAAYrM,EAAc,QAAK,GACjCsM,EAAgBtM,EAAkB,WAClCuM,GArCNC,MAAO,SAASvG,EAAiBztC,EAAaV,GACxClI,EAAQ8uC,QAAQC,MAAQ,EAC1B+M,EAASc,MAAMvG,EAAS,KAAMztC,GAAQ2F,KAAKrG,GAE3C4zC,EAASc,MAAMvG,EAAS,KAAMztC,EAAQV,IAG1C20C,MAAO,SAASxG,EAAiBnuC,GAC3BlI,EAAQ8uC,QAAQC,MAAQ,EAC1B+M,EAASe,MAAMxG,GAAS9nC,KAAKrG,GAE7B4zC,EAASe,MAAMxG,EAASnuC,KA2BtB+lB,EAAY+mB,EAASD,cAAc,YAAciH,EACjDx6C,EAAOq4C,EAAazJ,EAAc,QAAKA,EAAY,MAAK,GAAjDyJ,CAAqDjhC,IAAU,WAQpEkkC,GACJxtC,MAAO,MACP9J,GAAIm2C,EAAUpd,QACd/8B,KAAMA,EACNoD,IAAKqpB,EAAU6mB,QAAQlwC,IAAMqpB,EAAU6mB,QAAQlwC,IAAM,IAAMpD,EAAOA,EAClEsC,OAAQ,KACRm7B,cAYF,SAA+Bn7B,GAC7B,GAAIA,KAAYA,aAAkB6pC,IAAgB,OAClD,GAlDcoP,EAkDGpqC,EAlDqBqqC,EAkDTl5C,EAjD5Bi5C,IAAYC,EAiDyB,OAlD9C,IAAsBD,EAAwBC,EAmDtCtpC,GAAMupC,yBAAyBH,EAAch5C,GAAUA,EAAOgP,UAAYhP,EAAOgP,SAASC,UAE1FJ,EAAa7O,EACbo5C,EAAWp5C,IAjBXuL,sBACE,IAAM8tC,EAAsBt7C,EAAM,yBAANA,CAAgCosB,GAGtDmvB,EAAgBv7C,EAAM,0BAANA,CAAiCosB,GACvD,OAAOkvB,GAAuBC,IAmDlC,WAAoBt5C,GAClB,IAAMu5C,EAAWzkC,EAAM0kC,OACjBC,EAAY/1C,EAAG4e,QAASo3B,EAAYh2C,EAAG4e,QAEvCq3B,GACJhG,KAAM3zC,EACNgxC,QAASgI,GAGLY,GACJC,WAAYJ,EAAUnwC,QACtBwwC,WAAYJ,EAAUpwC,QACtBywC,YAAaL,GAefH,EAASS,MAAM,sBAAuBt8C,GAEtC,IAAMwgB,EAASo6B,EAAYiB,EAAU,SAAS79B,GAC5CA,EAAM3N,KAAK,cAAe6rC,GAC1Bl+B,EAAM3N,KAAK,UAAW4rC,GACtBd,EAASC,MAAMp9B,EAAOw1B,EAAU,WAC9BuI,EAAUt5B,UACNs4B,GAAcA,EAAauB,MAAM,+BAEjC13C,EAAUs2C,KAAmBA,GAAiB9jC,EAAMwgC,MAAMsD,KAC5DX,EAAcv8B,KA/DtB,WAaE,GAZI68B,IACF3oC,GAAMtB,iBAAiB,yBAA0BiqC,EAAWxqC,KAAK,YACjEwqC,EAAW0B,SACX1B,EAAa,MAGXE,IACF7oC,GAAMtB,iBAAiB,mBAAoB0qC,GAC3CP,EAAayB,WACbzB,EAAe,MAGbD,EAAW,CACb,IAAM2B,EAAY3B,EAAUzqC,KAAK,eACjC6B,GAAMtB,iBAAiB,cAAe6rC,GACtCtB,EAASE,MAAMP,EAAW,WACxB2B,EAAUJ,YAAY55B,UACtBo4B,EAAa,OAGfA,EAAaC,EACbA,EAAY,MA6CZ4B,KAGF5B,EAAYt6B,GACZu6B,EAAec,GAWFS,MAAM,qBAAsBh6C,GAAU6O,GACnD4pC,EAAanD,MAAMqD,GAxGrB/oC,GAAMtB,iBAAiB,UAAW0qC,GAWlC9H,EAASnjC,KAAK,WAAaijC,QAASgI,IAEpCI,IAEAV,EAAaj8B,EAAM49B,eAAerB,GAClClkC,EAAMy5B,IAAI,WAAY,WACpB3+B,GAAMtB,iBAAiB,2BAA4B0qC,GACnDN,SA4FR,OAAOb,IAGTyC,GAAmBrU,SAAW,WAAY,cAAe,eAAgB,QAAS,KAAM,YAoFxF,IAAMsU,GAAgF,mBAArDr+C,EAAgBgzC,OAAO,aAAwB,UAE5EsL,GAAe,EAGnB,YAAqC92C,EACAoT,EACAm9B,EACAC,EACAnlC,IAE/BjN,EAAWmyC,EAAmBwG,UAAc1rC,EAAIC,SAASo7B,WAAamQ,IACxEtG,EAAmBwG,UAGrB,IAAMC,EAAiCv3C,GAAK4L,EAAIrI,MAAMrG,MAAMI,KAEtDk6C,GAAgC32C,KAAMiwC,GAE5C,GAAInyC,EAAWmyC,EAAmB2G,mBAAoB,CACpD,IACMC,EADiC,IAAI95B,GAAehS,EAAIrI,MACrB0b,cAAc,gBAAgBrU,KA2BvEmmC,EAAO3F,IAAI,WAAkBz3B,EAAasoB,aAxBpB,SAACoO,GAGrB,GAAIA,IAAiBqN,IAAwF,IAAnErN,EAAa7vB,UAAUpY,QAAQm1C,GAAzE,CAEA,IAAMx+B,EAAWsxB,EAAalsC,OAAO,MAC/Bw5C,EAAatN,EAAalsC,OAAsB,QAChDy5C,EAAoBvN,EAAah5B,cAAcyF,GAAG/b,IAAI,SAACkW,GAAmB,OAAAA,EAAKkH,cAAa9c,OAAO+I,OACnGyzC,EAAsBxN,EAAah5B,cAAcwF,KAAK9b,IAAI,SAACkW,GAAmB,OAAAA,EAAKkH,cAAa9c,OAAO+I,OAGvG0zC,EAAkBF,EAASx5C,OAAO,SAACC,GACvC,IAAMkE,EAAMs1C,EAAWz1C,QAAQ/D,GAC/B,OAAgB,IAATkE,IAAes1C,EAAWt1C,GAAK2E,KAAK1F,OAAOuX,EAAS1a,EAAME,IAAKo5C,EAAWt5C,EAAME,OAIzF,GAAIu5C,EAAgBr+C,OAAQ,CAC1B,IAAMs+C,EAAwBD,EAAgB/8C,IAAI,SAAAQ,GAAK,OAAAA,EAAEgD,KAEnDy5C,EAAY55C,GAAO2a,EAAU,SAAChd,EAAKqF,GAAQ,OAA8B,IAA9B22C,EAAY31C,QAAQhB,KACrE0vC,EAAmB2G,kBAAkBO,EAAW3N,MAGmBmN,IAIzE,GAAI74C,EAAWmyC,EAAmBmH,WAAY,CAC5C,IAAMC,EAAKb,KAILc,EAAmB,SAAChvC,GACtB,QAAEA,IAAUA,EAAe,gBAA8B,IAAzBA,EAAe,cAAE+uC,IAAgBC,EAAiBhvC,EAAM4X,oBActFzP,GAAakJ,QAAS+8B,EAAUh9C,MACtCw2C,EAAO3F,IAAI,WAAkBz3B,EAAakrB,SAASvtB,EAZ/B,SAACnI,GACnB,IAAIhD,EACEiyC,EAAMjvC,EAAe,cAAIA,EAAe,kBAM9C,OAJKgvC,EAAiBhvC,KACpBhD,EAAU5F,EAAGkK,KAAKqmC,EAAmBmH,UAAU9uC,KACvC7B,KAAK,SAAAvL,GAAO,OAAAq8C,EAAIF,IAAe,IAARn8C,IAE1BoK,GAIiEqxC,KAI9Ez+C,EAAQgzC,OAAO,mBAAmB2I,UAAU,SAAgBjpC,IAC5D1S,EAAQgzC,OAAO,mBAAmB2I,UAAU,SAAgByC,IE5c5Dp+C,EAAQgzC,OAAO,mBAAmBrE,SAAS,gBArB3C,WAEE,IAAI2Q,GAAkB,EAEtBr+C,KAAKq+C,gBAAkB,WACrBA,GAAkB,GAGpBr+C,KAAK2yC,MAAQ,gBAAiB,WAAY,SAAU2L,EAAqC7J,GACvF,OAAI4J,EACKC,EAGF,SAAUvK,GACf,OAAOU,EAAS,WACdV,EAAS,GAAGwK,kBACX,GAAG,kBCjBG" + "mappings": ";;;;;;;;;;kPAMA,IAAMA,EAAiBC,QAEVC,EAAMC,GAAkBC,SAAyBD,EAAiBH,EC4C/E,WAAsBK,GACpB,IAAMC,KAAkBC,MAAMC,MAAMC,WAAY,IAC1CC,EAAmBL,EAAGM,OAS5B,OAPA,WAAiBC,GACf,OAAIA,EAAKD,QAAUD,EACVL,EAAGG,MAAM,KAAMI,GACjB,WACL,OAAOC,EAAQD,EAAKE,UAAUP,MAAMC,MAAMC,cAGvCI,CAAQP,GAWjB,aACE,IAAMM,EAAOH,UACPM,EAAQH,EAAKD,OAAS,EAC5B,OAAO,WAEL,IADA,IAAIK,EAAID,EAAOE,EAASL,EAAKG,GAAOP,MAAMU,KAAMT,WACzCO,KAAKC,EAASL,EAAKI,GAAGG,KAAKD,KAAMD,GACxC,OAAOA,GAUX,iBAAqB,aAAAG,mBAAAA,IAAAC,kBACnB,OAAOC,EAAQd,MAAM,QAASD,MAAMY,KAAKV,WAAWc,WAStD,IAAaC,EAAO,SAACC,GACjB,OAAA,SAACC,GAAa,OAAAA,GAAOA,EAAID,KAShBE,EAASC,EAAM,SAACH,EAAcI,EAAWH,GAAa,OAAAA,GAAOA,EAAID,KAAUI,IAU3EC,EAAQ,SAACL,GAClB,OAAAM,EAAKvB,MAAM,KAAMiB,EAAKO,MAAM,KAAKC,IAAIT,KAM5BU,EAA8C,SAAC7B,GACxD,OAAA,eAAC,aAAAe,mBAAAA,IAAAR,kBAAmB,OAACP,EAAGG,MAAM,KAAMI,KAMxC,WAAoBuB,EAAqBC,GACvC,OAAO,eAAC,aAAAhB,mBAAAA,IAAAR,kBAAmB,OAAAuB,EAAI3B,MAAM,KAAMI,IAASwB,EAAI5B,MAAM,KAAMI,IAOtE,WAAmBuB,EAAqBC,GACtC,OAAO,eAAC,aAAAhB,mBAAAA,IAAAR,kBAAmB,OAAAuB,EAAI3B,MAAM,KAAMI,IAASwB,EAAI5B,MAAM,KAAMI,IAStE,IAAayB,EAAM,SAACF,GAChB,OAAA,SAACG,GAAe,OAAAA,EAAIC,OAAO,SAACC,EAAGC,GAAM,OAAAD,KAAOL,EAAIM,KAAI,KAG3CC,EAAM,SAACP,GAChB,OAAA,SAACG,GAAe,OAAAA,EAAIC,OAAO,SAACC,EAAGC,GAAM,OAAAD,KAAOL,EAAIM,KAAI,KAG3CE,EAAK,SAAKC,GACnB,OAAA,SAAClB,GACG,OAAQ,MAAPA,GAAeA,EAAImB,cAAgBD,GAAQlB,aAAekB,IAGtDE,EAAoC,SAACC,GAAe,OAAA,SAACC,GAC9D,OAAAD,IAAUC,IAGDC,EAAM,SAAKC,GAAS,OAAA,WAAM,OAAAA,IAMvC,WAAuBC,EAAgBvC,GACrC,OAAO,SAACc,GACJ,OAAAA,EAAIyB,GAAQ3C,MAAMkB,EAAKd,IA2C7B,WAAwBwC,GACtB,OAAO,SAASX,GACd,IAAK,IAAIzB,EAAI,EAAGA,EAAIoC,EAAOzC,OAAQK,IACjC,GAAIoC,EAAOpC,GAAG,GAAGyB,GAAI,OAAOW,EAAOpC,GAAG,GAAGyB,IC3K/C,iBAeE,WAAYY,GACVnC,KAAKmC,KAAOA,EACZnC,KAAKoC,KAAOD,EAAKrB,MAAM,KAEvB,IAAMuB,EAAerC,KAAKmC,KAAKrB,MAAM,KAChCC,IAAI,SAAAuB,GACH,MAAY,OAARA,EAAqB,qBACb,MAARA,EAAqB,WACA,MAAQA,IAChCC,KAAK,IAEZvC,KAAKwC,OAAS,IAAIC,OAAO,IAAMJ,EAAe,KAMlD,OA1BSK,KAAP,SAAUP,GACR,QAAS,SAASQ,KAAKR,IAIlBO,aAAP,SAAkBP,GAChB,OAAOO,EAAKjB,GAAGU,GAAQ,IAAIO,EAAKP,GAAQ,MAiB1CO,oBAAA,SAAQnC,GACN,OAAOP,KAAKwC,OAAOI,KAAK,IAAMrC,sBCwDhC,WAAYsC,GACV,OAAOC,EAAYC,OAAOF,OAuE9B,OA9FSC,SAAP,SAAcE,GACZA,EAAYF,EAAYG,aAAaD,GAAa,IAAIA,EAAcA,EAEpE,IAAME,EAAQC,EAAQA,EAAQH,EAAWF,EAAYM,YAMrD,OALAJ,EAAUK,QAAU,WAAM,OAAAH,GAC1BA,EAAMI,KAAON,EACbE,EAAMK,oBACJC,SAAUd,EAAKe,WAAWP,EAAM3C,OAE3B2C,GA4BTJ,eAAA,SAAGY,GACD,OAAO1D,OAAS0D,GAAO1D,KAAKsD,OAASI,GAAO1D,KAAK2D,QAAUD,GAO7DZ,gBAAA,WACE,KAAK9C,KAAK4D,QAAY5D,KAAK4D,kBAAkB5D,KAAK2B,aAAc,OAAO3B,KAAKO,KAC5E,IAAMA,EAAOP,KAAK4D,OAAOD,MACzB,OAAOpD,EAAOA,EAAO,IAAMP,KAAKO,KAAOP,KAAKO,MAQ9CuC,iBAAA,WACE,OAAO9C,KAAK4D,QAAU5D,KAAK4D,OAAOC,QAAU7D,MAY9C8C,uBAAA,SAAWgB,GAGT,QAFAA,EAAOC,GAASD,GAAQX,SAAS,EAAMa,aAAc,QAC9Bb,SAAWnD,KAAK4D,QAAU5D,KAAK4D,OAAOK,kBAC5CrE,OAAOsE,GAAOlE,KAAKmE,SAC/BC,OAAO,SAAAC,GAAS,OAACP,EAAKE,cAAgBF,EAAKE,aAAaM,eAAeD,EAAME,OAUpFzB,sBAAA,SAAUyB,EAAYT,GACpB,oBADoBA,MAEhB9D,KAAKwE,KAAOxE,KAAKwE,IAAIC,UAAUF,EAAIT,IACnCY,GAAKR,GAAOlE,KAAKmE,QAAS1D,EAAO,KAAM8D,KACvCT,EAAKX,SAAWnD,KAAK4D,QAAU5D,KAAK4D,OAAOa,UAAUF,IAI3DzB,qBAAA,WACE,OAAO9C,KAAK2D,OA/EPb,eAAe,SAACE,GACrB,OAAA2B,EAAW3B,KAA+C,IAAjCA,EAA2B,iBAG/CF,UAAU,SAACtC,GAChB,OAAAoE,EAASpE,EAAwB,0BC1H/BqE,EAAQC,OAAO1B,UAAU2B,SACzBC,EAAM,SAACC,GAAc,OAAA,SAAC1D,GAAW,kBAAc0D,IACxCC,EAAcF,EAAI,aAClBG,EAAYnE,EAAIkE,GAChBE,EAAS,SAACC,GAAW,OAAM,OAANA,GACrBC,EAAoBC,EAAGH,EAAQF,GAC/BP,EAA8CK,EAAI,YAClDQ,EAA0CR,EAAI,UAC9CS,EAAqCT,EAAI,UACzCJ,EAAW,SAACrD,GAAW,OAAM,OAANA,GAA2B,iBAANA,GAC5CmE,EAAUC,MAAMD,QAChBE,WAAwCrE,GAAW,MAAkB,kBAAlBsD,EAAM5E,KAAKsB,IAC9DsE,WAA4CtE,GAAW,MAAkB,oBAAlBsD,EAAM5E,KAAKsB,IAClEuE,EAAwChD,EAAYgD,QAQjE,WAA6B/D,GAC3B,GAAI2D,EAAQ3D,IAAQA,EAAItC,OAAQ,CAC9B,IAAMsG,EAAOhE,EAAI1C,MAAM,GAAI,GAAI2G,EAAOjE,EAAI1C,OAAO,GACjD,QAAS0G,EAAK3B,OAAOpD,EAAIyE,IAAWhG,QAAUuG,EAAK5B,OAAOpD,EAAI2D,IAAalF,QAE7E,OAAOkF,EAAW5C,GAQpB,IAAakE,EAA4CC,EAAItB,EAAU/D,EAAKP,EAAK,QAASqE,ICnC/EwB,EAAiB,SAACC,GAAmB,OAAA,WAC9C,MAAM,IAAIC,MAASD,mEAGfE,GACJC,QAAIC,EACJC,eAAWD,GCFA3C,EAA6B,iBAATP,MAAqBA,KAAKA,OAASA,MAAQA,MACvD,iBAAXoD,QAAuBA,OAAOA,SAAWA,QAAUA,aAAW1G,EAClEjB,EAAU8E,EAAK9E,YAER4H,EAAW5H,EAAQ4H,UAAYC,KAAKhG,MAAMiG,KAAKD,MAC/CE,EAAS/H,EAAQ+H,QAAUF,KAAKG,UAAUF,KAAKD,MAC/CI,EAAUjI,EAAQiI,SAsgB/B,SAAkBxG,EAAkByG,EAAwBC,GAC1D,GAAIxB,EAAQlF,GAAM,OAAOA,EAAIwG,QAAQC,EAAIC,GACzCpC,OAAOqC,KAAK3G,GAAKwG,QAAQ,SAAAI,GAAO,OAAAH,EAAGzG,EAAI4G,GAAMA,MAvgBlCC,EAASvC,OAAOwC,QAAUC,GAC1BC,EAASzI,EAAQyI,QAAUC,GACxC,WAAyBlG,GAAU,OAAOA,EAC1C,cA8FA,WAAqCmG,EAAkBC,EAAad,EAAgBe,EAAoBC,gBAAAA,MACtG,IAAMC,EAAe,SAAC7F,GAClB,OAAAyF,IAASzF,GAAQ4E,KAAKA,MAS1B,OAFAe,EAAUA,GAAW9C,OAAOqC,KAAKO,MAElBrG,OAAO,SAAC0G,EAAKxH,GAPH,IAAA0B,EASvB,OADA8F,EAAIxH,GAAQsH,GARW5F,EAQiB1B,EARP,WAEjC,OADAoH,EAAO1F,GAAU6F,EAAa7F,GACvB0F,EAAO1F,GAAQ3C,MAAM,KAAMC,aAMcuI,EAAavH,GACtDwH,GACNJ,GAQL,IAAaxE,EAAU,SAACS,EAAaoE,GACjC,OAAAX,EAAOvC,OAAO/B,OAAOa,GAASoE,IAGrBC,EAA2BvH,EAAMwH,GAG9C,WAAyBC,EAAO3H,GAC9B,OAA+B,IAAxB2H,EAAMC,QAAQ5H,GAOvB,IAAa6H,EAAiC3H,EAAM4H,IAGpD,YAA4BH,EAAO3H,GACjC,IAAM+H,EAAMJ,EAAMC,QAAQ5H,GAE1B,OADI+H,GAAO,GAAGJ,EAAMK,OAAOD,EAAK,GACzBJ,EAIT,IAAaM,GAAyB/H,EAAMgI,IAG5C,YAAwBtH,EAAKW,GAC3B,OAAQX,EAAIuH,KAAK5G,GAAMA,EAIzB,IAAa6G,GAAW,SAACC,GACrB,OAAAA,EAAUxJ,QAAQ2H,QAAQ,SAAA7H,GACV,mBAAPA,GAAqBA,IAC5BkJ,EAAWQ,EAAW1J,MAO5B,YAAyB2E,OAAM,aAAA5D,mBAAAA,IAAA4I,oBAC7B,IAAMC,EAAgBD,EAAalJ,WAAWS,UACxC2I,EAAc3B,EAAO/H,MAAM,KAAMyJ,GACvC,OAAO1B,KAAW2B,EAAaC,GAAKnF,MAAYgB,OAAOqC,KAAK6B,KAI9D,IAAaE,GAAS,SAACC,EAAWC,GAAc,OAAA/B,EAAO8B,EAAMC,IAS7D,YAA0BC,EAAoBC,GAC5C,IAAMC,KAEN,IAAK,IAAMC,KAAKH,EAAME,KAAM,CAC1B,GAAIF,EAAME,KAAKC,KAAOF,EAAOC,KAAKC,GAAI,MACtCD,EAAKZ,KAAKU,EAAME,KAAKC,IAEvB,OAAOD,EAcT,YAAqB/I,EAAUiJ,GAC7B,IAAMC,KACN,IAAK,IAAMC,KAASnJ,GACgB,IAA9BiJ,EAAUrB,QAAQuB,KACpBD,EAAQC,GAASnJ,EAAImJ,IAGzB,OAAOD,EAeT,YAAqBlJ,EAAUiJ,GAC7B,OAAO3E,OAAOqC,KAAK3G,GACd4D,OAAOpD,EAAIiH,EAAQwB,KACnBpI,OAAO,SAAC0G,EAAKX,GAAQ,OAACW,EAAIX,GAAO5G,EAAI4G,GAAMW,OAWlD,YAAsB6B,EAAiBC,GACrC,OAAO9I,GAAI6I,EAAkCtJ,EAAKuJ,IASpD,YAA0BD,EAAiBE,GACzC,IAAM1I,EAAMsE,EAAQkE,GAAa7J,EAAcqB,QACzC2I,EAAS3I,EAAM,SAAAG,GAAK,OAAAxB,EAAO4I,KAAKpH,IAAK,SAACA,EAAG6F,GAAQ,OAAArH,EAAOqH,GAAO7F,GAIrE,OAHAyF,EAAQ4C,EAAY,SAASR,EAAMtJ,GAC7BgK,EAASV,EAAMtJ,IAAIiK,EAAOX,EAAMtJ,KAE5BC,EASZ,YAAqB6J,EAAiBE,GACpC,IAAI/J,EAOJ,OALAiH,EAAQ4C,EAAY,SAASR,EAAMtJ,GAC7BC,GACA+J,EAASV,EAAMtJ,KAAIC,EAASqJ,KAG3BrJ,EAIT,IAAWiK,GAA+HjJ,GAK1I,YAAoB6I,EAAiBE,EAAenC,GAGlD,OAFAA,EAASA,IAAWjC,EAAQkE,UAC5B5C,EAAQ4C,EAAY,SAACR,EAAMtJ,GAAM,OAAA6H,EAAO7H,GAAKgK,EAASV,EAAMtJ,KACrD6H,EAaT,IAAazD,GAA0C,SAAC1D,GACpD,OAAAsE,OAAOqC,KAAK3G,GAAKO,IAAI,SAAAqG,GAAO,OAAA5G,EAAI4G,MAevB6C,GAAY,SAACd,EAAee,GAAc,OAAAf,GAAQe,GAelDC,GAAY,SAAChB,EAAee,GAAc,OAAAf,GAAQe,GAWlDE,GAAY,SAACjB,EAAae,GAAgB,OAAAf,EAAKvJ,OAAOsK,IAYtDG,GAAY,SAAClB,EAAae,GACnC,OAAAxE,EAAQwE,GAAQf,EAAKvJ,OAAOsK,EAAK7I,OAAOgJ,QAAiBC,GAAMnB,EAAMe,IAMzE,YAAsB9I,EAAYZ,GAEhC,OADAY,EAAIuH,KAAKnI,GACFY,EAIT,IAAamJ,GAAQ,SAAKxC,EAAUyC,GAChC,OAAAvC,EAAQF,EAAKyC,GAASzC,EAAMuC,GAAMvC,EAAKyC,IAY9BC,GAAY,SAACrJ,GAAe,OAAAA,EAAIC,OAAO+I,QAWvCM,GAAY,SAACtJ,GAAe,OAAAA,EAAIC,OAAOgJ,QAevCM,GAA4FC,GAiB5FC,GAAmFD,GAChG,YAAyBE,EAA0BC,GACjD,oBADiDA,oBAC1C,SAACvK,GACN,IAAMT,EAAS+K,EAAetK,GAC9B,IAAKT,EACH,MAAM,IAAIsG,MAAM1B,EAAWoG,GAAsBA,EAAQvK,GAAOuK,GAElE,OAAOhL,GAaX,IAAaiL,GAAQ,SAACxK,GAClB,OAAAsE,OAAOqC,KAAK3G,GAAKO,IAAI,SAAAqG,GAAO,OAAEA,EAAK5G,EAAI4G,OAgB3C,kBAA4B,aAAAlH,mBAAAA,IAAAR,kBAC1B,GAAoB,IAAhBA,EAAKD,OAAc,SAIvB,IAHA,IAAMwL,EAAcvL,EAAK2B,OAAO,SAAC6J,EAAK9J,GAAQ,OAAA+J,KAAKD,IAAI9J,EAAI3B,OAAQyL,IAAM,kBACnEnL,gBAEGD,GAGP,OAAQJ,EAAKD,QACX,KAAK,EAAGM,EAAO4I,MAAMjJ,EAAK,GAAGI,KAAM,MACnC,KAAK,EAAGC,EAAO4I,MAAMjJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,KAAM,MAC/C,KAAK,EAAGC,EAAO4I,MAAMjJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,KAAM,MAC3D,KAAK,EAAGC,EAAO4I,MAAMjJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,GAAIJ,EAAK,GAAGI,KAAM,MACvE,QACEC,EAAO4I,KAAKjJ,EAAKqB,IAAI,SAAAoH,GAAS,OAAAA,EAAMrI,QATjCA,EAAI,EAAGA,EAAImL,EAAanL,MAAxBA,GAaT,OAAOC,EAuBT,YAA2BoJ,EAAqBiC,GAC9C,IAAIhE,EAAavF,EAEjB,GADI6D,EAAQ0F,KAAehE,OAAKvF,SAC3B4D,EAAS2B,GAAM,MAAM,IAAIf,MAAM,oCAEpC,OADA8C,EAAK/B,GAAOvF,EACLsH,EAIT,YAAwB/H,GACtB,OAAOA,EAAI3B,QAAU2B,EAAIA,EAAI3B,OAAS,SAAM+G,EAM9C,YAAqB6E,EAAUC,GAG7B,OAFIA,GAAMxG,OAAOqC,KAAKmE,GAAMtE,QAAQ,SAAAI,GAAO,cAAOkE,EAAKlE,KAClDkE,IAAMA,MACJjE,EAAOiE,EAAMD,GAWtB,YAAwBE,GACtB,IAAK,IAAIzL,EAAI,EAAGA,EAAIP,UAAUE,OAAQK,IAAK,CACzC,IAAMU,EAAMjB,UAAUO,GACtB,GAAKU,EAGL,IAFA,IAAM2G,EAAOrC,OAAOqC,KAAK3G,GAEhBgL,EAAI,EAAGA,EAAIrE,EAAK1H,OAAQ+L,IAC/BD,EAAMpE,EAAKqE,IAAMhL,EAAI2G,EAAKqE,IAI9B,OAAOD,EAGT,YAAiBE,EAASC,GACxB,GAAID,IAAOC,EAAI,OAAO,EACtB,GAAW,OAAPD,GAAsB,OAAPC,EAAa,OAAO,EACvC,GAAID,GAAOA,GAAMC,GAAOA,EAAI,OAAO,EACnC,IAAMC,SAAYF,EAClB,GAAIE,WAD8BD,GACV,WAAPC,EAAiB,OAAO,EAEzC,IAqBiBC,EAAWC,EArBtBC,GAAOL,EAAIC,GACjB,GAAIvK,EAAIuE,EAAJvE,CAAa2K,GAAM,OAoBKD,EApBgBH,GAoB3BE,EApBuBH,GAqBjChM,SAAWoM,EAAGpM,QACdsM,GAAYH,EAAIC,GAAIxK,OAAO,SAACC,EAAG2D,GAAM,OAAA3D,GAAKmG,GAAQxC,EAAE,GAAIA,EAAE,MAAK,GArBtE,GAAI9D,EAAIyE,EAAJzE,CAAY2K,GAAM,OAAOL,EAAGO,YAAcN,EAAGM,UACjD,GAAI7K,EAAI0E,EAAJ1E,CAAc2K,GAAM,OAAOL,EAAG1G,aAAe2G,EAAG3G,WACpD,GAAI5D,EAAIwD,EAAJxD,CAAgB2K,GAAM,OAAO,EAGjC,IADoBnH,EAAYe,EAASE,EAAQC,GAClC9E,IAAIS,GAAKH,OAAO,SAACC,EAAGnC,GAAO,OAAAmC,KAAOnC,EAAG2M,KAAM,GAAQ,OAAO,EAEzE,IAAM3E,KACN,IAAK,IAAMC,KAAOqE,EAAI,CACpB,IAAKhE,GAAQgE,EAAGrE,GAAMsE,EAAGtE,IAAO,OAAO,EACvCD,EAAKC,IAAO,EAEd,IAAK,IAAMA,KAAOsE,EAChB,IAAKvE,EAAKC,GAAM,OAAO,EAGzB,OAAO,EAST,ICzkBY6E,GDykBCC,GAA2B,SAACC,GACrC,OAAAA,EAAQC,MAAM,SAAAC,GAAK,OAAA,KAAMF,GAChBG,GAAkB,SAACC,GAC5B,OAAAL,GAAyB5F,EAASC,GAAGiG,OAAOD,mBE9kB9C,WAAoBE,EAA0BC,gBAA1BD,mBAA0BC,QAA1B1M,YAAAyM,EAA0BzM,YAAA0M,EAHtC1M,wBACDA,aAAUyI,GAAOzI,KAAK2M,iBA6C/B,OAzCEC,oBAAA,SAAQxD,GACN,IAAMyD,EAAQ7M,KAAKyM,OAGnB,OAFAI,EAAMlE,KAAKS,GACPpJ,KAAK0M,QAAUG,EAAMpN,OAASO,KAAK0M,QAAQ1M,KAAK8M,QAC7C1D,GAGTwD,kBAAA,WACE,IAAMxD,EAAUpJ,KAAKyM,OAAOM,QAE5B,OADA/M,KAAK2M,gBAAgB3F,QAAQ,SAAA7H,GAAM,OAAAA,EAAGiK,KAC/BA,GAGTwD,oBAAA,WACE,GAAI5M,KAAKgN,OACP,OAAOhN,KAAKyM,OAAOjE,OAAO,EAAG,GAAG,IAGpCoE,kBAAA,WACE,IAAMK,EAAUjN,KAAKyM,OAErB,OADAzM,KAAKyM,UACEQ,GAGTL,iBAAA,WACE,OAAO5M,KAAKyM,OAAOhN,QAGrBmN,mBAAA,SAAOxD,GACL,IAAMb,EAAMvI,KAAKyM,OAAOrE,QAAQgB,GAChC,OAAOb,GAAO,GAAKvI,KAAKyM,OAAOjE,OAAOD,EAAK,GAAG,IAGhDqE,qBAAA,WACE,OAAO5M,KAAKyM,OAAOzM,KAAKyM,OAAOhN,OAAS,IAG1CmN,qBAAA,WACE,GAAI5M,KAAKgN,OACP,OAAOhN,KAAKyM,OAAO,UDvCbR,GAAAA,eAAAA,gDACMA,2BAAaA,2BAAaA,2BAAaA,uBAIzD,IAAI1H,GAAK,gBAkEP,WAAY2I,EAAcC,EAAkBC,GA/D5CpN,SAAMuE,KAgEJvE,KAAKkN,KAAOA,EACZlN,KAAKmN,QAAUA,EACfnN,KAAKoN,OAASA,EAclB,OAzESC,qBAAP,SAA0B7M,GACxB,OAAOA,GAA4B,mBAAbA,EAAI8M,MAAwB7L,EAAG4L,EAAH5L,CAAcjB,EAAI+M,uBAI/DF,aAAP,SAAkBD,EAAcI,GAC9B,IACMC,EAAY,IAAIJ,EAAUpB,aAAWyB,WAD3B,+DACgDN,GAIhE,OAHII,GAAWA,EAAQG,aACrBF,EAAUE,YAAa,GAElBF,GAIFJ,aAAP,SAAkBD,GAChB,OAAOC,EAAUO,WAAWR,GAAUO,YAAY,KAI7CN,UAAP,SAAeD,GAEb,OAAO,IAAIC,EAAUpB,aAAW4B,QADhB,6BACkCT,IAI7CC,UAAP,SAAeD,GAEb,OAAO,IAAIC,EAAUpB,aAAW6B,QADhB,6BACkCV,IAI7CC,UAAP,SAAeD,GAEb,OAAO,IAAIC,EAAUpB,aAAW8B,QADhB,kCACkCX,IAI7CC,UAAP,SAAeD,GAEb,OAAO,IAAIC,EAAUpB,aAAW+B,MADhB,yBACgCZ,IAY3CC,YAAP,SAAiBD,GACf,OAAO3L,EAAG4L,EAAH5L,CAAc2L,GAAUA,EAASC,EAAUY,QAAQb,IAS5DC,qBAAA,WACE,IAAsBa,EAEhBd,GAFgBc,EAEMlO,KAAKoN,SADxBc,EAAEnJ,WAAaD,OAAO1B,UAAU2B,SAAWmJ,EAAEnJ,WAAagC,GAAUmH,GAG7E,MAAO,kGAAgFd,OAGzFC,sBAAA,WACE,OAAOhG,EAAOiF,GAAgBtM,OAASuN,qBAAsBvN,aE7CjE,YAAuBmO,GACnB,IAAKA,EAAQ,MAAO,oBACpB,IAAMjL,EAAQiL,EAAOC,gBAAkBD,EAAOC,gBAAgB7N,MAAQ,SAAW,SACjF,MAAO,YAAY4N,EAAO5J,OAAM4J,EAAOE,UAASF,EAAOxK,SAAQwK,EAAO5N,SAAQ2C,OAWlF,YAAuBoL,GACrB,OAAO9I,EAAS8I,GAASC,WAASD,GAASC,WAASA,WAASD,IAI/D,IAmBYC,GAnBNC,GAAaC,SAASrL,UAAUyD,KAAK5G,KAAKyO,QAAQC,IAAKD,SAGvDE,GAAejK,EAAW+J,QAAQG,OAASH,QAAQG,MAAMhI,KAAK6H,SAAWF,GAAW3H,KAAK6H,UAgBnFH,GAAAA,aAAAA,wCACDA,iCAAYA,qBAAMA,yBAAQA,iCAIrC,ICquBYO,GACAC,GDtuBNC,GAAOpO,EAAM,OAGbqO,GAAOrO,EAAM,cAGbsO,GAAW,SAACC,GAAU,MAAA,eAAeH,GAAKG,OAAUF,GAAKE,kBAa7D,aAHQnP,iBAINA,KAAKoP,mBAAqB,EAkJ9B,OA9IUC,iBAAR,SAAaC,EAAkBC,GAA/B,WACOA,EAAW9P,SACd8P,EAAmBzK,OAAOqC,KAAKoH,YAC1BxN,IAAI,SAAAyO,GAAK,OAAAC,SAASD,EAAG,MACrBpL,OAAO,SAAAoL,GAAK,OAACE,MAAMF,KACnBzO,IAAI,SAAAqG,GAAO,OAAAmH,WAASnH,MAE3BmI,EAAWxO,IAAI4O,IAAe3I,QAAQ,SAAA4I,GAAY,OAAA1I,EAAK2I,SAASD,GAAYN,KAc9ED,mBAAA,eAAO,aAAAnP,mBAAAA,IAAAqP,kBAAwBvP,KAAK8P,MAAK,EAAMP,IAY/CF,oBAAA,eAAQ,aAAAnP,mBAAAA,IAAAqP,kBAAwBvP,KAAK8P,MAAK,EAAOP,IAWjDF,oBAAA,SAAQO,GACN,QAAS5P,KAAK6P,SAASF,GAAcC,KAIvCP,iCAAA,SAAqBF,GACdnP,KAAKsP,QAAQf,WAASwB,aAC3BrB,QAAQC,IAAOO,GAASC,oBAAuBpI,GAAUoI,KAI3DE,mCAAA,SAAuBF,GAChBnP,KAAKsP,QAAQf,WAASwB,aAC3BrB,QAAQC,IAAOO,GAASC,oBAAuBpI,GAAUoI,KAI3DE,gCAAA,SAAoBW,EAAsBb,EAAmB3B,GAC3D,GAAKxN,KAAKsP,QAAQf,WAAS0B,MAA3B,CACA,IAAMC,EAAQtP,EAAM,qBAANA,CAA4B4M,IAAY,WAClD2C,EAAUvP,EAAM,+BAANA,CAAsC4M,IAAY5M,EAAM,oBAANA,CAA2B4M,IAAY,UACnGjN,EAAO6P,GAAkBJ,EAAaK,eAAevG,UACzD4E,QAAQC,IAAOO,GAASC,kBAAqBe,eAAkBC,OAAYG,GAAU,IAAK/P,MAI5F8O,4BAAA,SAAgBkB,EAAwBpB,EAAmBqB,GACpDxQ,KAAKsP,QAAQf,WAAS0B,OAC3BvB,QAAQC,IAAOO,GAASC,4BAA+BmB,GAAU,IAAKvJ,GAAUwJ,MAIlFlB,6BAAA,SAAiB9F,EAAkBkH,EAAkBtB,GAC9CnP,KAAKsP,QAAQf,WAASmC,UAC3BhC,QAAQC,IAAOO,GAASC,0BAA6B5F,OAASkH,QAIhEpB,oCAAA,SAAwBsB,EAAwBxB,GACzCnP,KAAKsP,QAAQf,WAASmC,UAC3BhC,QAAQC,IAAOO,GAASC,mCAAsCwB,UAAkBL,GAAU,IAAKvJ,GAAU4J,EAAWC,SAItHvB,uBAAA,SAAWwB,EAAa1B,GACjBnP,KAAKsP,QAAQf,WAASwB,aAC3BrB,QAAQC,IAAOO,GAASC,oBAAuBpI,GAAUoI,gBAAmB0B,IAI9ExB,yBAAA,SAAayB,EAAyB3B,GAC/BnP,KAAKsP,QAAQf,WAASwB,aAC3BrB,QAAQC,IAAOO,GAASC,oBAAuBpI,GAAUoI,qBAAwB2B,EAAWvQ,OAI9F8O,6BAAA,SAAiBa,EAAea,EAAwB/I,gBAAAA,MACjDhI,KAAKsP,QAAQf,WAASyC,SAC3BtC,QAAQC,IAAI,YAAYsC,GAAU,GAAIf,OAAUgB,GAAaH,GAAY/I,IAI3EqH,qCAAA,SAAyB0B,EAAwBZ,GAC1CnQ,KAAKsP,QAAQf,WAASyC,SAC3BhR,KAAKmR,iBAAiB,WAAYJ,EAAU,kCAAkCZ,QAIhFd,4BAAA,SAAgB0B,EAAwBK,GACjCpR,KAAKsP,QAAQf,WAASyC,SAC3BhR,KAAKmR,iBAAiB,OAAQJ,EAAU,UAAUT,GAAU,IAAKc,KAInE/B,0BAAA,SAAcrE,GACZ,GAAKhL,KAAKsP,QAAQf,WAAS8C,YAA3B,CACA,IAAMC,EAAY,uBAEZC,EAAUvG,EAAMjK,IAAI,SAACyQ,SAAEC,WAAQC,eAC7BC,EAAMF,GAAUA,EAAO9N,IACvBiO,EAAMF,GAAiBA,EAAWG,SAASC,SAASvR,WAAUmR,EAAWG,SAASE,UACxF,aAAUT,GAAYK,EAAKK,EAJX,iCAIwBJ,MACvCK,KAAK,SAACC,EAAG5Q,GAAM,OAAC4Q,EAAEZ,IAAc,IAAIa,cAAc7Q,EAAEgQ,IAAc,MAErE1C,GAAa2C,KAIflC,kCAAA,SAAsBa,EAAewB,GAC9B1R,KAAKsP,QAAQf,WAAS8C,aAC3B3C,QAAQC,IAAI,eAAeuB,MAlMN,SAACwB,GACxB,IAAMU,EAAOV,EAAWG,SAClB3O,EAAQkP,EAAKN,SAASvR,MAAQ,SACpC,MAAO,SAASmR,EAAWW,cAAanP,gCAAmCkP,EAAKE,gBAAeF,EAAKG,yBA+L9DC,CAAiBd,KAIvDrC,wCAAA,SAA4Ba,EAAea,GACpC/Q,KAAKsP,QAAQf,WAAS8C,aAC3B3C,QAAQC,IAAI,eAAeuB,MAASgB,GAAaH,UAa/C0B,GAAQ,IAAIpD,ICojBNP,GAAAA,wBAAAA,iDAA8BA,yBAAQA,mBAAKA,2BAASA,wBACpDC,GAAAA,wBAAAA,yDAAkCA,uBCxxB9C,kBAuBE,WACU2D,EACAC,EACRC,EACAC,GAHQ7S,oBAAA0S,EACA1S,iBAAA2S,EAIR3S,KAAK2S,YAAcA,EACnB3S,KAAK4S,QAAUvL,KAAWuL,OAC1B5S,KAAK6S,SAAWxL,KAAWwL,OAC3B7S,KAAK8S,YAAcJ,EAAeK,QAAQrO,KAAKiO,EAAa3S,KAAK6S,SAASG,UA6F9E,OAzFEC,iBAAA,WACE,OAAOjT,KAAK8S,aAAe9S,KAAK8S,YAAYvS,MAAiBP,KAAK2S,aAIpEM,uBAAA,WACE,OAAOjT,KAAK2S,aAIdM,mBAAA,WACE,OAAOjT,KAAK4S,SAIdK,mBAAA,WACE,OAAOjT,KAAK8S,aAIdG,kBAAA,WACE,OAAOjT,KAAK8S,aAAe9S,KAAK8S,YAAYxP,MAI9C2P,oBAAA,WACE,OAAOjT,KAAK6S,UAIdI,mBAAA,WACE,SAAUjT,KAAK8S,cAAe9S,KAAK8S,YAAYxP,OAIjD2P,kBAAA,WACE,OAAQjT,KAAKuM,SAIf0G,kBAAA,WACE,IAAMC,EAAalT,KAAKwN,UAAUwF,SAClC,IAAKhT,KAAK8S,aAAiBI,EAAM,CAC/B,IAAMC,EAAYD,EAAK3S,KAAO2S,EAAK3S,KAAO2S,EAC1C,MAAO,sBAAsBlT,KAAKO,wBAAuB4S,MAE3D,OAAKnT,KAAK8S,YAEL9S,KAAK8S,YAAYxP,UAAtB,EACS,UAAUtD,KAAKO,qCAFf,kBAAkBP,KAAKO,YAKlC0S,qBAAA,WACE,MAAO,IAAIjT,KAAKO,WAAUwG,GAAU/G,KAAKmE,WAS3C8O,sBAAA,SAAU/P,GACR,OAAO,IAAI+P,EAAYjT,KAAK0S,eAAgBxP,EAAOlD,KAAK4S,QAAS5S,KAAK6S,WAUxEI,uBAAA,SAAW9O,EAAmBiP,gBAAAA,MAC5B,IAAMC,EAAuBD,EAAUjP,EAASkD,KAAWrH,KAAK4S,QAASzO,GACzE,OAAO,IAAI8O,EAAYjT,KAAK0S,eAAgB1S,KAAK2S,YAAaU,EAAWrT,KAAK6S,WAUhFI,wBAAA,SAAYzF,EAA4B4F,gBAAAA,MACtC,IAAME,EAAUF,EAAU5F,EAAUnG,KAAWrH,KAAK6S,SAAUrF,GAC9D,OAAO,IAAIyF,EAAYjT,KAAK0S,eAAgB1S,KAAK2S,YAAa3S,KAAK4S,QAASU,IArHvEL,QAAQ,SAACzS,GACd,OAAAA,GAAOA,EAAI0C,QAAUuC,EAASjF,EAAI0C,QAAUuC,EAASjF,EAAI0C,MAAM3C,aC/B7DgT,IACJtG,QAASuG,EACTC,WAAY,KACZC,aACA7M,KAAM,oBAuGN,WAAoB4M,EACAE,EACAtD,EACA7C,GAHpB,WAAoBxN,gBAAAyT,EACAzT,kBAAA2T,EACA3T,oBAAAqQ,EACArQ,aAAAwN,EAKZxN,kBAAe,WACrB,OAAAkH,EAAKgG,KAAK0G,YAAc9E,sBAAoB+E,MAAQ3M,EAAKsG,QAAQiG,WAAWK,YAL5E9T,KAAKwN,QAAUzJ,GAASyJ,EAAS+F,IACjCvT,KAAKkN,KAAOmD,EAAe0D,UAuH/B,OArKSC,QAAP,SAAaC,EAAyBC,GAIpC,OAAOD,EAAM5S,OAFY,SAAC8S,EAAoBC,GAC5C,OAAAD,EAAK7G,KAAK,WAAM,OAAA8G,EAASC,gBACWH,GAAW5N,EAASC,GAAGkK,SAexDuD,cAAP,SAAsBC,EAAyBK,GAC7C,IAAK,IAAI/L,EAAM,EAAGA,EAAM0L,EAAMxU,OAAQ8I,IAAO,CAC3C,IAAMgI,EAAa0D,EAAM1L,GAAK8L,aAE9B,GAAIpO,EAAUsK,GAAa,CACzB,IAAMgE,EAAiBN,EAAM5U,MAAMkJ,EAAM,GAEzC,OAAOyL,EAAeQ,MAAMD,EAAgBhE,GACzCjD,KAAKgH,IAIZ,OAAOA,KAMFN,cAAP,SAAmBC,GACjBA,EAAMjN,QAAQ,SAAAyN,GAAQ,OAAAA,EAAKJ,gBAc7BL,qBAAA,SAASU,GACP1U,KAAKyT,WAAWkB,OAAOC,aAAaC,qBAApC7U,CAA0D0U,IAG5DV,uBAAA,WAAA,WACQS,EAAOzU,KAAKqQ,eAClB,IAAIoE,EAAKK,cAAT,CAEA,IAAMC,EAAa/U,KAAKgV,yBACxB,GAAID,EAAY,OAAOA,EAEvB,IAAMvH,EAAUxN,KAAKwN,QACrBiF,GAAMwC,oBAAoBjV,KAAMA,KAAKyT,WAAYjG,GAEjD,IAMM0H,EAAc,SAAAR,GAChB,OAAAD,EAAKV,UAAUoB,gBAAgBjO,EAA/BuN,CAAqCC,IAEnCU,EAAe,SAAArV,GACjB,OAAA0U,EAAKV,UAAUsB,iBAAiBnO,EAAhCuN,CAAsC1U,IAE1C,IACE,IAAMA,EAZJ0U,EAAK3K,SAAS7J,KAAKuN,EAAQ3G,KAAMK,EAAKuM,WAAYvM,EAAKyM,cAczD,OAAK3T,KAAKkN,KAAKoI,aAAerP,EAAUlG,GAC/BA,EAAOqM,MAbG,SAAAsI,GACjB,OAAArH,GAAUkI,UAAUb,GAAKc,cAapBlI,KAAK8H,EAAcF,GAEjBE,EAAarV,GAEtB,MAAO2U,GAEP,OAAOQ,EAAY7H,GAAUkI,UAAUb,YAEnCD,EAAKgB,eAAiBhB,EAAKiB,aAAejB,EAAKgB,aACjDhB,EAAKkB,gBAcX3B,6BAAA,SAAiBjU,GAAjB,WACQgV,EAAa/U,KAAKgV,yBACxB,OAAID,IAGA9O,EAAUlG,GAELA,EAAOuN,KAAK,SAAAvL,GAAO,OAAAmF,EAAK0O,iBAAiB7T,MAGlD0Q,GAAMoD,gBAAgB9V,EAAQC,KAAKyT,WAAYzT,KAAKwN,UAGrC,IAAXzN,EAEKsN,GAAUyI,QAAQ,2BAA2BN,YAGhC/T,EAAGwR,GAErB8C,CAAchW,GAETsN,GAAUM,WAAW5N,GAAQyV,iBAFtC,KAWMxB,mCAAR,WACE,IAAMW,EAAS3U,KAAKyT,WAAWkB,OAG/B,OAAIA,EAAOqB,UACF3I,GAAUyI,QAAQ,sBAAsBnB,EAAOtC,oCAAmCmD,YAGvFxV,KAAKyT,WAAWwC,SACX5I,GAAUyI,UAAUN,YAKzBxV,KAAKkW,eAEA7I,GAAUO,WAAW5N,KAAKwN,QAAQP,WAAWuI,iBAFtD,GAMFxB,qBAAA,WACQ,IAAExG,eAAS6C,sBAIjB,OAHczP,EAAM,qBAANA,CAA4B4M,IAAY,0BACxC5M,EAAM,+BAANA,CAAsC4M,IAAY5M,EAAM,oBAANA,CAA2B4M,IAAY,gBAE/D8C,GAAU,IADvC6F,GAAW9F,EAAevG,YA9MhCkK,gBAAkC,SAACS,GAAyB,OAAA,SAAC1U,GAChE,OAAA0U,EAAKmB,iBAAiB7V,KAMnBiU,sBAAwC,SAACS,GAAyB,OAAA,SAAC1U,GACxEkG,EAAUlG,IAAWA,EAAOqM,MAAM,SAAAsI,GAC9B,OAAAD,EAAK2B,SAAS/I,GAAUkI,UAAUb,QAQjCV,YAA6B,SAACS,GAAyB,OAAA,SAAClI,GAC3D,OAAAkI,EAAK2B,SAAS7J,KAEXyH,eAAgC,SAACS,GAAyB,OAAA,SAAClI,GAC9D,OAAAD,GAAgBC,KAEbyH,cAA+B,SAACS,GAAyB,OAAA,SAAClI,GAC/D,MAAMA,SCnCV,YAA2BrJ,EAAoBmT,GAC7C,IAAMC,EAAU7Q,EAAS4Q,IAAcA,GAAaA,EAepD,SADuB1R,EAAW2R,GAAWA,EAZ7C,SAAoBC,GAElB,IADA,IAAMC,EAAyBF,EACtBxW,EAAI,EAAGA,EAAI0W,EAAY/W,OAAQK,IAAK,CAC3C,IAAMsC,EAAO,IAAIM,EAAK8T,EAAY1W,IAElC,GAAKsC,GAAQA,EAAKqU,QAAQF,EAAOhW,QAAY6B,GAAQoU,EAAY1W,KAAOyW,EAAOhW,KAC7E,OAAO,EAGX,OAAO,IAIQ2C,GAOnB,kBAOE,WAAmBwT,EACA3C,EACAjK,EACA6M,EACAC,EACPpJ,gBAAAA,MALOxN,aAAA0W,EACA1W,eAAA+T,EACA/T,cAAA8J,EACA9J,mBAAA2W,EACA3W,4BAAA4W,EARnB5W,iBAAc,EAEdA,oBAAgB,EAQdA,KAAK6W,SAAWrJ,EAAQqJ,UAAY,EACpC7W,KAAK6G,KAAO2G,EAAQ3G,MAAQ,KAC5B7G,KAAKyV,YAAcjI,EAAQiI,YA2F/B,OAzEUqB,2BAAR,SAAuBC,EAAmBV,GACxC,IAAkB,IAAdA,EAAoB,OAAOU,EAC/B,IAAMC,EAAWD,EAAM3S,OAAO,SAAA6S,GAAQ,OAAAC,GAAWD,EAAK/T,MAAOmT,KAC7D,OAAOW,EAASvX,OAASuX,EAAW,MAiB9BF,qCAAR,WACE,OAAO9M,GAAOhK,KAAK0W,QAAQS,WAAWC,gBAAiB,WAAM,OAAA,KAkBvDN,8BAAR,SAA0BO,GAA1B,WACQC,EAAWjQ,EAAOrH,KAAKuX,2BAA4BvX,KAAK2W,eAG9D,OAF0BzS,GAAOlE,KAAK0W,QAAQS,WAAWC,iBAE5C/V,OAAO,SAACmW,EAAoBC,GAGvC,IAAMC,EAAcD,EAASE,QAAU5I,sBAAoB6I,MACrDrO,EAAO8N,EAAYI,EAASlX,UAC5BwW,EAAoBW,EAAcnO,GAAQvD,GAAKuD,IAGrD,OADAiO,EAAGC,EAASlX,MAAQ2G,EAAK2Q,eAAed,EAAOO,EAASG,EAASlX,OAC1DiX,QAUXV,oBAAA,SAAQO,GACN,IAAMZ,EAAUzW,KAAK8X,kBAAkBT,GAIvC,OADmBnT,GAAOuS,GAASsB,MAAMC,GACrBvB,EAAU,MAGhCK,uBAAA,WACE9W,KAAK4W,uBAAuB5W,MAC5BA,KAAK8U,eAAgB,QAKzB,YAA0BmD,EAAyBC,EAAsCnE,GAEvF,IACME,GADmBgE,EAASE,iBAAoBF,EAASE,sBAChCpE,EAAUxT,SACnC6X,EAA+C/P,EAAW4L,GAKhE,WAA4BoE,EAAavO,EAAU0D,gBAAAA,MACjD,IAAM6C,EAAiB,IAAIyG,GAAeoB,EAAmBnE,EAAWjK,EAAUuO,EAAaD,EAAc5K,GAE7G,OADAyG,EAAMtL,KAAK0H,GACJA,EAAesF,WAAW9O,KAAKwJ,GAGxC,OARA4H,EAASlE,EAAUxT,MAAQ+X,EAQpBA,EC7IT,kBACE,WAAoB7E,GAAAzT,gBAAAyT,EAgFtB,OA9EE8E,+BAAA,SAAmBC,GAAnB,WAEE,OADqBxY,KAAKyT,WAAWkB,OAAOuD,kBACxBf,WAAWsB,WAAWD,GACrCzX,IAAI,SAAAmM,GAAQ,OAAAhG,EAAKwR,WAAWxL,KAC5B7L,OAAO+I,OACPhG,OAAO4T,IAYdO,uBAAA,SAAWI,GACT,IAAMlF,EAAazT,KAAKyT,WAClB4D,EAAc5D,EAAW4D,cAGzBuB,EAAgB5Y,KAAK6Y,iBAAiBF,EAAUtB,GACtD,IAAKuB,EAAe,SAEpB,IAAME,GACJrF,WAAYA,EACZxG,QAASwG,EAAWjG,UAAUP,SAsBhC,OAAO2L,EAAc7X,IAnBO,SAAC0T,GAO1B,OALgCA,EAAKgC,QAAQY,GAEHsB,EAASI,kBAAkBxY,MAGhDQ,IAAI,SAAAkW,GACvB,IAAMpE,EAAWxL,GACfR,KAAM4N,EAAK5N,KACX6M,WAAaiF,SAAUA,EAASpY,KAAM4P,QAAS8G,IAC9C6B,GAEG5V,EAAQyV,EAASI,kBAAkBpB,QAAU5I,sBAAoB6I,MAAQX,EAAK/T,MAAMI,KAAO,KAC3F0V,EAAiB,IAAIhF,GAAeP,EAAYvQ,EAAOuR,EAAM5B,GACnE,OAAqB4B,OAAMwC,OAAM+B,sBAKjC3X,OAAO+I,OACP6H,KAwCT,SAAmBgH,gBAAAA,MACjB,OAAO,SAA+BC,EAAcC,GAClD,IAAMC,EAASH,GAAoB,EAAI,EACjCI,GAAcH,EAAEjC,KAAK/T,MAAMqG,KAAK9J,OAAS0Z,EAAElC,KAAK/T,MAAMqG,KAAK9J,QAAU2Z,EAC3E,OAAsB,IAAfC,EAAmBA,EAAaF,EAAE1E,KAAKoC,SAAWqC,EAAEzE,KAAKoC,UA5CtDyC,CAAUX,EAASY,cACxBxY,IAAI,SAAAyY,GAAS,OAAAA,EAAMR,kBAcnBT,6BAAP,SAAwBI,EAA+BtB,GACrD,IAAMoC,EAAWd,EAAS/E,YAAc9E,sBAAoB4K,OAGtDC,EAAe3Z,KAAKyT,WAAWkB,OAAOuD,kBAG5C,OAFmBuB,GAAaE,IAAmB3Z,KAAKyT,WAAYkG,IAElD5Y,IAAI,SAAC6Y,GAAuB,OAAAA,EAAIC,SAASlB,EAASpY,QAC/D6D,OAAOuG,GAAgBjF,EAAS,uBAAuBiT,EAASpY,OAChEc,OAAO+I,OACPhG,OAAO,SAAAqQ,GAAQ,OAAAA,EAAKgC,QAAQY,WCjFrC,kBAiBE,WAAYyC,GAfZ9Z,aAAkB,KAQlBA,cAAU,EAQRqH,EAAOrH,KAAM8Z,GA4CjB,OAtCEC,eAAA,SAAGhY,EAAUqF,GAAyB,OAAO,GAE7C2S,mBAAA,SAAOhY,EAAUqF,GAAmC,OAAOrF,GAE3DgY,mBAAA,SAAOhY,EAAaqF,GAAqB,OAAOrF,GAEhDgY,mBAAA,SAAO7H,EAAQ5Q,GAAmB,OAAO4Q,GAAK5Q,GAG9CyY,wBAAA,WACE,IAAMC,EAAMha,KAAKia,QAAQlV,WACzB,OAAOiV,EAAIE,OAAO,EAAGF,EAAIva,OAAS,IAGpCsa,qBAAA,WACE,MAAO,cAAc/Z,KAAKO,UAI5BwZ,uBAAA,SAAWhY,GACT,OAAO/B,KAAKyB,GAAGM,GAAOA,EAAM/B,KAAKma,OAAOpY,IAa1CgY,qBAAA,SAASK,EAAwBC,GAC/B,IAAKD,EAAM,OAAOpa,KAClB,GAAa,SAAToa,IAAoBC,EAAU,MAAM,IAAIhU,MAAM,kDAClD,OAAO,IAQX,SAAmB6G,EAAiBkN,GAApC,WAEE,WAAmBrY,GACjB,OAAO2D,EAAQ3D,GAAOA,EAAOoD,EAAUpD,IAASA,MAalD,WAAsB+H,EAA2BwQ,GAC/C,OAAO,SAAqBvY,GAC1B,GAAI2D,EAAQ3D,IAAuB,IAAfA,EAAItC,OAAc,OAAOsC,EAC7C,IAAMX,EAAMmZ,EAAUxY,GAChBhC,EAASgB,GAAIK,EAAK0I,GACxB,OAA0B,IAAlBwQ,EAA6D,IAAnClW,GAAOrE,EAAQ,SAAAwB,GAAK,OAACA,IAAG9B,OAd9D,SAAqBsC,GACnB,OAAQA,EAAItC,QACV,KAAK,EAAG,OACR,KAAK,EAAG,MAAgB,SAAT2a,EAAkBrY,EAAI,GAAKA,EAC1C,QAAS,OAAOA,GAUyDyY,CAAYza,IAKzF,WAA4B+J,GAC1B,OAAO,SAAqB2Q,EAAWC,GACrC,IAAMC,EAAOJ,EAAUE,GAAOG,EAAQL,EAAUG,GAChD,GAAIC,EAAKlb,SAAWmb,EAAMnb,OAAQ,OAAO,EACzC,IAAK,IAAIK,EAAI,EAAGA,EAAI6a,EAAKlb,OAAQK,IAC/B,IAAKgK,EAAS6Q,EAAK7a,GAAI8a,EAAM9a,IAAK,OAAO,EAE3C,OAAO,IAIV,SAAU,SAAU,SAAU,cAAckH,QAAQ,SAAAzG,GACnD,IAAMsa,EAAc3N,EAAK3M,GAAMsG,KAAKqG,GAC9B4N,EAA+B,WAATva,EAAoBwa,EAAqBC,EACrE9T,EAAK3G,GAAQua,EAAUD,KAGzBxT,EAAOrH,MACLib,QAAS/N,EAAK+N,QACd1a,KAAM2M,EAAK3M,KACX0Z,QAAS/M,EAAK+M,QACd9W,QAAS+J,EAAK/J,QACd1B,GAAIuZ,EAAa9N,EAAKzL,GAAGoF,KAAKqG,IAAO,GACrCgO,WAAYd,IAzDL,CAAsBpa,KAAMoa,SC/EvC,IAOYe,GAPNC,GAAStW,OAAO1B,UAAUkB,eAG1B+W,GAAc,SAACzJ,GACjB,OAA0F,KAAzF,QAAS,OAAQ,SAAU,QAAS,WAAWxN,OAAOgX,GAAOvU,KAAK+K,QAAYnS,SAGvE0b,GAAAA,YAAAA,iCAEVA,yBACAA,yBA2DF,kBA0DE,WAAY5W,EAAY2I,EAAiBrK,EAA0ByY,EAAmBC,GAEpFrO,EArGJ,SAAiB0E,EAAuB4J,EAAoBF,EAAmB/W,EAAYkX,GACzF,GAAI7J,EAAI1E,MAAQsO,GAA4B,WAAjBA,EAAQjb,KAAmB,MAAM,IAAI8F,MAAM,UAAU9B,oCAChF,GAAIqN,EAAI1E,MAAQsO,GAA4B,WAAjBA,EAAQjb,MAAqBkb,EAAWvO,KAAK0E,EAAI1E,MAAiB,OAAOuO,EAAWvO,KAAK0E,EAAI1E,MACxH,GAAIsO,EAAS,OAAOA,EACpB,IAAK5J,EAAI1E,KAAM,CACb,IAAMA,EAAOoO,IAAaH,UAAQO,OAAS,MACvCJ,IAAaH,UAAQQ,KAAO,OAC5BL,IAAaH,UAAQS,OAAS,QAAU,SAC5C,OAAOH,EAAWvO,KAAKA,GAEzB,OAAO0E,EAAI1E,gBAAgB6M,GAAYnI,EAAI1E,KAAOuO,EAAWvO,KAAK0E,EAAI1E,MA2F7D2O,CADPhZ,EAlHJ,SAAyB+O,GAIvB,aACE,OAAOA,EAAI/P,MAGb,OAPA+P,EAAMyJ,GAAYzJ,KAAU/P,MAAO+P,IAAgBA,EAEnDkK,EAAmC,aAAI,EAKhCzU,EAAOuK,GACZmK,KAAMC,EAAapK,EAAI/P,OAAS+P,EAAI/P,MAAQia,IAyGnCG,CAAgBpZ,GACFqK,EAAMoO,EAAU/W,EAAIgX,EAAkBE,YAC7D,IAWQS,EACAC,EAZFC,GAWEF,GAAkB/T,MAAQmT,IAAaH,UAAQS,QAAS,QACxDO,EAAyB5X,EAAG8X,MAAM,UAAalU,OAAO,MACrDd,EAAO6U,EAAeC,EAAwBtZ,GAAQsF,OAZ/D+E,EAAOkP,EAAYlP,EAAKoP,SAASF,EAAWd,IAAaH,UAAQS,QAAU1O,EAC3E,IAAMqP,OAA8B/V,IAAjB3D,EAAOhB,OAAuByZ,IAAaH,UAAQS,OAChEX,EAAU9V,EAAUtC,EAAOoY,WAAapY,EAAOoY,UAAY/N,EAAK+N,QAChEuB,EAAMrX,EAAUtC,EAAO2Z,OAAS3Z,EAAO2Z,MAAQtP,EAAKsP,IACpDC,EA1FV,SAAyB5Z,EAA0B0Z,EAAqBG,GACtE,IAAMD,EAAS5Z,EAAO4Z,OACtB,IAAKF,IAAyB,IAAXE,EAAkB,OAAO,EAC5C,IAAKtX,EAAUsX,IAAqB,MAAVA,EAAgB,OAAOC,EACjD,IAAe,IAAXD,GAAmBhX,EAASgX,GAAS,OAAOA,EAChD,MAAM,IAAIpW,MAAM,2BAA2BoW,yDAqF1BE,CAAgB9Z,EAAQ0Z,EAAYhB,EAAkBqB,uBAC/DxJ,EAlFV,SAAoBvQ,EAA0BuZ,EAAoBG,EAAqBE,GACrF,IAAMC,IACFG,KAAM,GAAIC,GAAKP,GAAcH,OAAY5V,EAAY,KACrDqW,KAAM,KAAMC,GAAKP,GAAcH,OAAY5V,EAAY,KAGrD4M,EAAU1N,EAAQ7C,EAAOuQ,SAAWvQ,EAAOuQ,WAC7C3N,EAASgX,IAASrJ,EAAQzK,MAAOkU,KAAMJ,EAAQK,QAAItW,IAEvD,IAAMuW,EAAiBhc,GAAIqS,EAAS9S,EAAK,SACzC,OAAO8D,GAAOsY,EAAe,SAAAtT,GAAQ,OAAuC,IAAvC2T,EAAe3U,QAAQgB,EAAKyT,QAAcjd,OAAOwT,GAwEpE4J,CAAWna,EAAQuZ,EAAWG,EAAYE,GACpDtZ,EAAUgC,EAAUtC,EAAOM,WAAaN,EAAOM,UAAY+J,EAAK/J,QAStEkE,EAAOrH,MAAQuE,KAAI2I,OAAMoO,WAAUiB,aAAYtB,UAASuB,MAAKC,SAAQrJ,UAASjQ,UAASgF,MAAOiU,EAAWvZ,WAgE7G,OA5HSoa,SAAP,SAAc9Y,EAAiBD,gBAAAA,MAE7B,IADA,IAAMgZ,SACcC,IAAAjd,WAAAA,KAAf,IAAMmE,OACT6Y,EAAY7Y,EAAME,IAAMF,EAAMxC,MAAMqC,EAAOG,EAAME,KAEnD,OAAO2Y,GAcFD,UAAP,SAAe9Y,EAAiBiZ,EAAyBC,GACvD,oBAD8BD,mBAAyBC,MAChDlZ,EAAOC,OAAO,SAAAC,GAAS,OAACA,EAAM6I,KAAK1F,OAAO4V,EAAQ/Y,EAAME,IAAK8Y,EAAQhZ,EAAME,QAY7E0Y,SAAP,SAAc9Y,EAAiBiZ,EAAcC,GAC3C,oBAD6BD,mBAAcC,MACe,IAAnDJ,EAAMK,QAAQnZ,EAAQiZ,EAASC,GAAS5d,QAI1Cwd,YAAP,SAAiB9Y,EAAiBD,GAChC,oBADgCA,MACzBC,EAAOpD,IAAI,SAAAsD,GAAS,OAAAA,EAAMkZ,UAAUrZ,EAAOG,EAAME,OAAMlD,OAAO4I,IAAU,IAyBjFgT,2BAAA,SAAepb,GACb,OAAO7B,KAAKuc,YAAcvc,KAAKkN,KAAK1F,OAAOxH,KAAK6B,QAASA,IAO3Dob,kBAAA,SAAMpb,GAAN,WA8BE,OAFAA,EAP6B,SAACE,GAC5B,IAAoB,QAAAyP,EAAAtK,EAAKkM,QAALlT,WAAAA,KAAf,IAAMsZ,OACT,GAAIA,EAAMqD,OAAS9a,EAAK,OAAOyX,EAAMsD,GAEvC,OAAO/a,EAGDyb,CAAqB3b,GAEtBqD,EAAYrD,GA1BK,WACtB,GAAIqF,EAAKuW,mBAAoB,OAAOvW,EAAKuW,mBAAmBC,aAE5D,IAAKpX,EAASG,UAAW,MAAM,IAAIJ,MAAM,+DAEzC,IAAMqX,EAAepX,EAASG,UAAUkX,OAAOzW,EAAKrE,OAAOkZ,MAE3D,GAAqB,OAAjB2B,QAA0ClX,IAAjBkX,IAA+BxW,EAAKgG,KAAKzL,GAAGic,GACvE,MAAM,IAAIrX,MAAM,kBAAkBqX,sBAAgCxW,EAAK3C,yCAAwC2C,EAAKgG,KAAK3M,UAM3H,OAJI2G,EAAKrE,OAAOkZ,KAAkB,cAChC7U,EAAKuW,oBAAuBC,iBAGvBA,EAYmBE,GAAoB5d,KAAKkN,KAAK2Q,WAAWhc,IAGvEob,qBAAA,WACE,OAAOjd,KAAKsb,WAAaH,UAAQS,QAGnCqB,sBAAA,SAAUpb,GAER,IAAKqD,EAAYrD,IAAoB,OAAVA,IAAmB7B,KAAKuc,WAAY,OAAO,EAGtE,IAAMuB,EAAa9d,KAAKkN,KAAK2Q,WAAWhc,GACxC,IAAK7B,KAAKkN,KAAKzL,GAAGqc,GAAa,OAAO,EAGtC,IAAMC,EAAU/d,KAAKkN,KAAK8Q,OAAOF,GACjC,QAASrY,EAASsY,KAAa/d,KAAKkN,KAAK+M,QAAQtX,KAAcob,KAGjEd,qBAAA,WACE,MAAO,UAAUjd,KAAKuE,OAAMvE,KAAKkN,kBAAiBlN,KAAKyc,sBAAqBzc,KAAKuc,mCCtLnF,WAAY0B,GACV,GAAIA,aAAuBC,EAAU,CACnC,IAAMjH,EAAiBgH,EACvBje,KAAKkD,MAAQ+T,EAAK/T,MAClBlD,KAAKme,YAAclH,EAAKkH,YAAY9e,QACpCW,KAAKkd,YAAc7V,KAAW4P,EAAKiG,aACnCld,KAAKoe,YAAcnH,EAAKmH,YAAY/e,QACpCW,KAAKqe,MAAQpH,EAAKoH,OAASpH,EAAKoH,MAAMhf,YACjC,CACL,IAAM6D,EAAqB+a,EAC3Bje,KAAKkD,MAAQA,EACblD,KAAKme,YAAcjb,EAAMe,YAAad,SAAS,IAC/CnD,KAAKkd,eACLld,KAAKoe,YAAclb,EAAMkb,YAAYrd,IAAI,SAAAud,GAAO,OAAAA,EAAIC,WA+C1D,OA3CEL,kBAAA,WACE,OAAO,IAAIA,EAASle,OAItBke,2BAAA,SAAe/Z,GAGb,OADAnE,KAAKkd,YAAcld,KAAKme,YAAY9c,OAAO,SAAC8H,EAAMqV,GAAS,OAAAC,GAAWtV,IADjDuV,EACmEF,GADpCja,GAAIma,EAAS7c,MAAMsC,EAAOua,EAASna,OAAnE,IAACma,OAEd1e,MAITke,sBAAA,SAAU3d,GACR,OAAOmE,GAAK1E,KAAKme,YAAa1d,EAAO,KAAMF,KAO7C2d,mBAAA,SAAOjH,EAAgB0H,GACrB,IAAMC,EAAO5e,KAAK4e,KAAK3H,EAAM0H,GAC7B,OAAOC,GAAwB,IAAhBA,EAAKnf,QAetBye,iBAAA,SAAKjH,EAAgB0H,GACnB,GAAI3e,KAAKkD,QAAU+T,EAAK/T,MAAO,OAAO,EAEtC,IAAMiB,EAAkBwa,EAAWA,EAAS3e,MAAQA,KAAKme,YACzD,OAAOlB,GAAMK,QAAQnZ,EAAQnE,KAAKkd,YAAajG,EAAKiG,cAhE/CgB,QAAQ,SAACjH,GAAmB,OAAAA,EAAKsH,4BCZ1C,cA6KA,OA3KSM,kBAAP,SAAuB5G,EAAyB1O,GAC9C,IAAMrG,EAAQ8C,GAAKuD,GAAMrG,MACzB,OAAO,IAAI+P,GAAYgF,EAAU/U,EAAOqG,EAAKxI,IAAIT,EAAK,gBAAgBe,OAAO6H,YAGxE2V,YAAP,SAAiBC,GACf,IAAMC,EAAWD,EAAY3a,SAC7B,OAAO2a,EAAYE,SAASzV,KAAKxI,IAAI,SAAAmC,GAAS,OAAA,IAAIgb,GAAShb,GAAO+b,eAAeF,MAI5EF,cAAP,SAAmBK,EAAsBJ,GACvC,IAAMK,EAAqBN,EAAUO,UAAUN,GAC/C,OAAIA,EAAYtR,UAAUrK,QACjB0b,EAAUQ,cAAcH,EAAUC,EAAQra,OAAOqC,KAAK2X,EAAY3a,WAEpEgb,GAQFN,mBAAP,SAAwBS,EAAoB/V,EAAkBgW,GAE5DhW,EAAKnF,OAAO,SAAA6S,GAAQ,OAAAhP,EAAQsX,EAAQtI,EAAK/T,SAAQ8D,QAAQ,SAAAiQ,GACvD,IAAMuI,EAAgCtb,GAAO+S,EAAK/T,MAAMmb,WAClDoB,EAAUZ,EAAUY,QAAQlW,EAAM,SAAAC,GAAK,OAAAA,IAAMyN,IAC7CyI,EAA8BF,EAAUze,IAAI,SAAAqR,GAAQ,OAAAkN,EAAMK,iBAAiBF,EAASrN,KAC1F6E,EAAKoH,MAAQqB,EAAYre,OAAO+I,UAe7ByU,gBAAP,SAAqBK,EAAsBC,EAAoBS,gBAAAA,MAM7D,IAAMC,EAAYX,EAASne,IAAI,SAAAkW,GAAQ,OAAAA,EAAKkH,cACvC9c,OAAO+I,OACPhG,OAAO,SAAAC,GAAS,OAACA,EAAMlB,UACvBpC,IAAIT,EAAK,OAmBd,OAAoB6e,EAAOpe,IAb3B,SAAiC+e,GAE/B,IAAIC,EAAc1Y,KAAWyY,GAAUA,EAAO5C,aAExC8C,EAAoB/W,GAAK8W,EAAaH,GAC5CG,EAAcE,GAAKF,EAAaH,GAChC,IApBqBrW,EAAkBrG,EACjC+T,EAmBAiJ,EAAgBD,IApBD1W,EAoBoB2V,EApBFhc,EAoBY4c,EAAO5c,MAnBpD+T,EAAiBvS,GAAK6E,EAAM9I,EAAO,QAASyC,IAC3CmE,KAAW4P,GAAQA,EAAKiG,kBAkByC2C,GAElEM,EAA0B9Y,EAAO0Y,EAAaG,EAAeF,GACnE,OAAO,IAAI9B,GAAS4B,EAAO5c,OAAO+b,eAAekB,MAc9CtB,cAAP,SAAmBK,EAAsBC,EAAoBiB,GAO3D,IANA,IAGoBC,EAAiBC,EAcjCzD,EAAkB0D,EAAsBC,EAAqBC,EAjB3DC,EAAMvV,KAAKD,IAAIgU,EAASzf,OAAQ0f,EAAO1f,QACzCkhB,EAAO,EAKJA,EAAOD,GAAOxB,EAASyB,GAAMzd,QAAUkd,IAH1BC,EAGoDnB,EAASyB,GAH5CL,EAGmDnB,EAAOwB,GAF3FN,EAAM7Y,OAAO8Y,EAAOzB,EAAU+B,oBAGhCD,IAaFJ,GADA1D,EAAwBqC,GACK7f,MAAM,EAAGshB,GACtCH,EAAwB3D,EAAKxd,MAAMshB,GAGnC,IAAME,EAAwBN,EAASxf,IAbvC,SAAuB+f,EAAwBvY,GAC7C,IAAMwY,EAASD,EAAavC,QAE5B,OADAwC,EAAO7D,YAAciC,EAAO5W,GAAK2U,YAC1B6D,IAcT,OAHAN,EAAwBtB,EAAO9f,MAAMshB,IAG5B9D,OAAMC,GAFS,EAAuBld,OAAO6gB,GAEnCF,WAAUM,uBAAsBL,UAASC,aAkBvD5B,WAAP,SAAgBmC,EAAmBC,EAAmBtC,GACpD,IAAIuC,GAAO,EAEX,OAD6BnV,GAAYiV,EAAOC,GAClC5f,OAAO,SAAC2V,EAAUxF,OAAC2P,OAAOC,OAEtC,OADAF,EAAOA,IAASC,EAAM3Z,OAAO4Z,EAAOzC,IACtB3H,EAAWA,EAASpX,OAAOuhB,SAYtCtC,SAAP,SAAcmC,EAAmBC,EAAmBtC,GAClD,OAAOqC,EAAMvhB,SAAWwhB,EAAMxhB,QAC1Bof,EAAU7H,SAASgK,EAAOC,EAAOtC,GAAUlf,SAAWuhB,EAAMvhB,QAa3Dof,UAAP,SAAetV,EAAkB8X,GAC/B,IAAMpK,EAAOvS,GAAK6E,EAAM8X,GAClBC,EAAa/X,EAAKnB,QAAQ6O,GAChC,OAAuB,IAAhBqK,OAAoB9a,EAAY+C,EAAKlK,MAAM,EAAGiiB,EAAa,IAzF7DzC,mBAAmB,SAAC5H,GACvB,OAAAA,EAAK/T,MAAMe,YAAad,SAAS,IAC5BiB,OAAO,SAAAC,GAAS,OAACA,EAAM4W,WA2FzB4D,cAAc,SAACtV,GAClB,OAAAA,EAAKlI,OAAO,SAAC0G,EAAKkP,GAAS,OAAA5P,EAAOU,EAAKkP,EAAKiG,wBC/KvCqE,IACT9Q,KAAM,OACN+Q,MAAO,sBAsDP,WAAYC,EAAWC,EAAsBC,EAAcC,EAAwBhR,GACjF,GAjCF5Q,eAAW,EACXA,kBAAwBwG,EAgClBib,aAAgBI,EAClBxa,EAAOrH,KAAMyhB,QACR,GAAI9c,EAAW+c,GAAY,CAChC,GAAIpc,EAAkBmc,GAAO,MAAM,IAAIpb,MAAM,gDAC7C,IAAK1B,EAAW+c,GAAY,MAAM,IAAIrb,MAAM,2DAE5CrG,KAAKwK,MAAQiX,EACbzhB,KAAK4hB,OAASA,EACd5hB,KAAK0hB,UAAYA,EACjB1hB,KAAK2hB,KAAOA,MAEZ3hB,KAAK4Q,KAAOA,EACZ5Q,KAAK8hB,cAAoBtb,IAAToK,EAChB5Q,KAAKmM,QAAUnM,KAAK8hB,SAAWxb,EAASC,GAAGkK,KAAKzQ,KAAK4Q,WAAQpK,OACxD,GAAI5B,EAAS6c,IAASA,EAAKjX,QAAUiX,EAAKnd,eAAe,cAAgBmd,EAAKnd,eAAe,SAAU,CAC5G,IAAMyd,EAA8BN,EACpC,OAAO,IAAII,EAAWE,EAAQvX,MAAOuX,EAAQL,UAAWK,EAAQJ,KAAMI,EAAQH,OAAQG,EAAQnR,OAoFpG,OAhFEiR,sBAAA,SAAU3e,GACR,IAAM8e,EAAahiB,KAAK4hB,WAClBK,EAAc/e,GAASA,EAAMgf,kBACnC,OACEzR,KAAMuR,EAAWvR,MAAQwR,EAAYxR,MAAQ8Q,GAAqB9Q,KAClE+Q,MAAOQ,EAAWR,OAASS,EAAYT,OAASD,GAAqBC,QAWzEK,oBAAA,SAAQM,EAAgChT,GAAxC,WACQ5I,EAAKD,EAASC,GAyBd0Q,EAAiBkL,EAAeC,SAASpiB,MACzCkD,EAAqB+T,GAAQA,EAAK/T,MAClCmf,EAAiD,WAAhCriB,KAAKsiB,UAAUpf,GAAOse,MAR3B,SAACe,GACjB,IAAMC,EAASD,EAAYE,MAAM,GACjC,OAAOD,EAAOE,KAAK,GAAGlN,YAAYlI,KAAK,WAAM,OAAAkV,KAM+BxK,EAY9E,OAAOhY,KAAKmM,QAAU5F,EAAGkK,OACpBnD,KArC6B,WAC9B,OAAA/G,EAAGpF,IAAIghB,EAAeQ,gBAAgBzb,GAAMnG,IAAI,SAAA4P,GAC5C,OAAAA,EAAWiS,IAAIT,EAAgBhT,QAoClC7B,KAjCmB,SAACuV,GACrB,OAAA3b,EAAKwa,UAAUpiB,MAAM,KAAMujB,KAiC1BvV,KAAK+U,GACL/U,KAbsB,SAACwV,GAK1B,OAJA5b,EAAK0J,KAAOkS,EACZ5b,EAAK4a,UAAW,EAChB5a,EAAKwa,UAAY,KACjBjP,GAAMsQ,wBAAwB7b,EAAMiI,GAC7BjI,EAAK0J,QAiBhBiR,gBAAA,SAAIM,EAAgChT,GAClC,OAAOnP,KAAKmM,SAAWnM,KAAKgjB,QAAQb,EAAgBhT,IAGtD0S,qBAAA,WACE,MAAO,qBAAqB9a,GAAU/G,KAAKwK,uBAAsBxK,KAAK2hB,KAAK5gB,IAAIgG,UAGjF8a,kBAAA,WACE,OAAO,IAAIA,EAAW7hB,OAhIjB6hB,WAAW,SAACrX,EAAYoG,GAC7B,OAAA,IAAIiR,EAAWrX,EAAO,WAAM,OAAAoG,GAAM,KAAM,KAAMA,SC+JvCqS,IACTxS,MACEyS,KAAM,OACNC,MAAO,SAET3B,OACE4B,KAAM,OACNC,OAAQ,SACRC,OAAQ,WCtMNC,GAAQN,GAAgBxS,KACxB+S,IAAaD,GAAMJ,MAAOI,GAAML,MAChCO,IAAeF,GAAMJ,OAGdO,GAAgC,gCAe3C,WAAoBC,GAAA3jB,WAAA2jB,EAuJtB,OApJEC,sBAAA,WACE,OAAO5jB,KAAK2jB,MAAMtiB,OAAO,SAAC0G,EAAKkP,GAAS,OAAAlP,EAAInI,OAAOqX,EAAKmH,YAAYrd,IAAI,SAAAoY,GAAK,OAAAA,EAAE3O,cAAanJ,OAAOkJ,QASrGqZ,0BAAA,SAAcpZ,GAIZ,OAAOxE,GAHUhG,KAAK2jB,MAAM5iB,IAAI,SAAAkW,GAAQ,OAAAA,EAAKmH,cACxC/c,OAAO+I,OACPhG,OAAO,SAAC+U,GAAkB,OAAAA,EAAE3O,QAAUA,MAK7CoZ,sBAAA,SAAUjT,GACR,IAAMsG,EAAOjX,KAAKoiB,SAASzR,GAC3B,OAAOA,EAAW2R,UAAUrL,EAAK/T,QA0BnC0gB,uBAAA,SAAW1gB,GACT,OAAO,IAAI0gB,EAAe/E,GAAUY,QAAQzf,KAAK2jB,MAAO,SAAA1M,GAAQ,OAAAA,EAAK/T,QAAUA,MAkBjF0gB,2BAAA,SAAeC,EAA8B3gB,GAC3C,IAAM+T,EAAkBvS,GAAK1E,KAAK2jB,MAAOljB,EAAO,QAASyC,IACnDiE,EAAO0c,EAAe9iB,IAAI,SAAAoY,GAAK,OAAAA,EAAE3O,QACvCyM,EAAKmH,YAAcnH,EAAKmH,YAAYha,OAAO,SAAA+U,GAAK,OAA2B,IAA3BhS,EAAKiB,QAAQ+Q,EAAE3O,SAAe5K,OAAOikB,IAUvFD,wBAAA,SAAYnT,EAA2BtB,GAAvC,wBAAYsB,UAEV,IAGMqT,GAHqB7b,EAAQub,GAAW/S,GAAQA,EAAO,UAGzBwS,GAAgBxS,KAAK0S,MAAQM,GAAcD,GAG/E/Q,GAAMsR,iBAAiB/jB,KAAK2jB,MAAOlT,EAAMtB,GAEzC,IAAM6U,EAAgB,SAACC,EAAwBC,GAC3C,OAAA,SAACvT,GACG,OAAA1I,EAAQgc,EAAc/c,EAAKob,UAAU3R,GAAYuT,MAInDC,EAA2BnkB,KAAK2jB,MAAMtiB,OAAO,SAAC0G,EAAKkP,GACvD,IAAMmN,EAAkBnN,EAAKmH,YAAYha,OAAO4f,EAAcF,EAAc,SACtEO,EAASD,EAAgBhgB,OAAO4f,GAAe,UAAW,UAC1DM,EAAOF,EAAgBhgB,OAAOpD,EAAIgjB,GAAe,UAAW,WAG5DO,EAAard,EAAKqd,WAAWtN,EAAK/T,OAClCshB,EAAY,SAACrL,GAAkB,OAAAA,EAAEyJ,IAAI2B,EAAYpV,GAElD7B,KAAK,SAAAzL,GAAS,OAAG2I,MAAO2O,EAAE3O,MAAO3I,MAAOA,MAE7C,OADAwiB,EAAOrd,QAAQwd,GACRzc,EAAInI,OAAO0kB,EAAKvjB,IAAIyjB,SAI7B,OAAOle,EAASC,GAAGpF,IAAIgjB,IAGzBP,qBAAA,WACE,OAAO5jB,KAAKykB,YAAczkB,KAAKykB,UAAY,IAAIC,GAAe1kB,QAGhE4jB,qBAAA,SAASjT,GACP,OAAOjM,GAAK1E,KAAK2jB,MAAO,SAAC1M,GAAmB,OAAAhP,EAAQgP,EAAKmH,YAAazN,MAQxEiT,4BAAA,SAAgBjT,GAAhB,WACQsG,EAAOjX,KAAKoiB,SAASzR,GAIrBgU,GADsB9F,GAAUY,QAAQzf,KAAK2jB,MAAO,SAAApiB,GAAK,OAAAA,IAAM0V,KAASjX,KAAK2jB,OAE9EtiB,OAAO,SAAC0G,EAAK6c,GAAU,OAAA7c,EAAInI,OAAOglB,EAAMxG,kBACxCha,OAAO,SAAAka,GAAO,OAAAA,IAAQ3N,IAc3B,OAAOA,EAAWgR,KAAK5gB,IAZD,SAACyJ,GACrB,IAAMwM,EAAW2N,EAAqBvgB,OAAO,SAAA+U,GAAK,OAAAA,EAAE3O,QAAUA,IAC9D,GAAIwM,EAASvX,OAAQ,OAAOuG,GAAKgR,GAEjC,IAAM6N,EAAe3d,EAAK4d,WAAWC,UAAUva,GAC/C,GAAItF,EAAY2f,GACd,MAAM,IAAIxe,MAAM,8CAAgDU,GAAUyD,IAG5E,OAAO,IAAIqX,GAAWrX,EAAO,WAAM,OAAAqa,MAAkBA,yBAUzD,WAAmB1U,GAAAnQ,aAAAmQ,EACjBnQ,KAAKglB,OAAShlB,KAAK4iB,IAAIc,KAA0Bpd,EAASG,UA4B9D,OAzBEie,gBAAA,SAAIla,GACF,IAAMmG,EAAa3Q,KAAKmQ,QAAQ8U,cAAcza,GAC9C,GAAImG,EAAY,CACd,GAAiD,WAA7C3Q,KAAKmQ,QAAQmS,UAAU3R,GAAY6Q,MACrC,OAAO7Q,EAAWiS,IAAI5iB,KAAKmQ,SAG7B,IAAKQ,EAAWmR,SACd,MAAM,IAAIzb,MAAM,wCAA0CU,GAAU4J,EAAWnG,QAEjF,OAAOmG,EAAWC,KAGpB,OAAO5Q,KAAK+kB,UAAUva,IAGxBka,qBAAA,SAASla,GACP,IAAMmG,EAAa3Q,KAAKmQ,QAAQ8U,cAAcza,GAC9C,OAAImG,EAAmBA,EAAWiS,IAAI5iB,KAAKmQ,SACpC7J,EAASC,GAAGkK,KAAKzQ,KAAKglB,OAAOpC,IAAIpY,KAG1Cka,sBAAA,SAAUla,GACR,OAAOxK,KAAKglB,QAAUhlB,KAAKglB,OAAOpC,IAAIpY,SC1LpC0a,GAAuD5kB,EAAK,sBA6GhE,WAAY4e,EAAsBJ,EAA0BnK,GAA5D,WAIE,GAnFM3U,eAAYsG,EAASC,GAAG4e,QAOhCnlB,aAAwBA,KAAKolB,UAAUjZ,QAgBvCnM,yBASQA,kBAAe,IAAIuY,GAAYvY,MA0mBvCA,cAAW,WACP,OAAAkH,EAAKyN,OAAO0Q,QAAQ5R,aAAevM,GA3jBrClH,KAAK2U,OAASA,EACd3U,KAAKslB,aAAexG,GAEfA,EAAYyG,QACf,MAAM,IAAIlf,MAAMyY,EAAYvS,SAI9BvM,KAAK6S,SAAWxL,GAAS4F,QAASlL,EAAI/B,OAAS8e,EAAYtR,WAC3DxN,KAAKqS,IAAMsC,EAAOuD,kBAAkBsN,mBACpC,IAAMrG,EAASN,GAAU4G,YAAYvG,EAAUJ,GAC/C9e,KAAK0lB,aAAe7G,GAAUxH,YAAY6H,EAAUC,EAAQnf,KAAK6S,SAASuN,aAC1EpgB,KAAK2lB,6BAEL,IAAMC,EAAgB5lB,KAAK6lB,aAAaC,mBAAmBhX,sBAAoB4K,QAC/E1F,GAAe+R,YAAYH,EAAe,WAAM,OAAA,OAEhD5lB,KAAKgmB,iBAAiBrR,GAgnB1B,OA7qBEsR,qBAAA,SAAS3O,EAA6BxN,EAA4B0D,KAElEyY,oBAAA,SAAQ3O,EAA6BxN,EAA4B0D,KAEjEyY,mBAAA,SAAO3O,EAA6BxN,EAAiC0D,KAErEyY,qBAAA,SAAS3O,EAA6BxN,EAAiC0D,KAEvEyY,oBAAA,SAAQ3O,EAA6BxN,EAAiC0D,KAEtEyY,qBAAA,SAAS3O,EAA6BxN,EAA4B0D,KAElEyY,sBAAA,SAAU3O,EAA6BxN,EAA4B0D,KAEnEyY,oBAAA,SAAQ3O,EAA6BxN,EAA4B0D,KAMzDyY,uCAAR,WAAA,WACEjmB,KAAK2U,OAAOuD,kBAAkBf,WAAWsB,aACpCrU,OAAO,SAAA8I,GAAQ,OAAAA,EAAK0G,YAAc9E,sBAAoB4K,SACtD1S,QAAQ,SAAAkG,GAAQ,OAAAgZ,GAAUhf,EAAMA,EAAKyN,OAAOuD,kBAAmBhL,MAItE+Y,qBAAA,SAASE,GACP,OAAOnmB,KAAKmY,iBAAiBgO,IAoCvBF,6BAAR,SAAyBtR,GACvB,IAAMyR,EAAiBpmB,KAAK0lB,aAAajF,SAAS1f,IAAI,SAAAkW,GAAQ,OAAAA,EAAK/T,QACnE2b,GAAUmH,iBAAiBrR,EAAOuD,kBAAkBoH,MAAOtf,KAAK0lB,aAAa5I,GAAIsJ,IAQnFH,kBAAA,WACE,OAAOjgB,GAAKhG,KAAK0lB,aAAa7I,MAAM3Z,OAQtC+iB,gBAAA,WACE,OAAOjgB,GAAKhG,KAAK0lB,aAAa5I,IAAI5Z,OAUpC+iB,iBAAA,WACE,OAAOjmB,KAAKqmB,QAAQ/iB,MAUtB2iB,eAAA,WACE,OAAOjmB,KAAKsmB,MAAMhjB,MAUpB2iB,wBAAA,WACE,OAAOjmB,KAAKslB,cAOdW,eAAA,SAAGM,GACD,OAAIA,aAAmBN,EAEdjmB,KAAKyB,IAAKqb,GAAIyJ,EAAQD,MAAM/lB,KAAMsc,KAAM0J,EAAQF,QAAQ9lB,SAG9DgmB,EAAQzJ,KAAO5F,GAAWlX,KAAKsmB,MAAOC,EAAQzJ,KAC9CyJ,EAAQ1J,OAAS3F,GAAWlX,KAAKqmB,QAASE,EAAQ1J,QA+BvDoJ,mBAAA,SAAOO,GACL,oBADKA,QACE1hB,OAAO2hB,OAAOzmB,KAAK0lB,aAAac,GAAUzlB,IAAIT,EAAK,gBAAgBe,OAAO6H,SA2DnF+c,qBAAA,SAAS/iB,EAAqBwjB,gBAAAA,QAC5B,IAAInd,EAAmBvJ,KAAK0lB,aAAagB,GAEzC,OADIxjB,IAAOqG,EAAOsV,GAAUY,QAAQlW,EAAM,SAAA0N,GAAQ,OAAAA,EAAK/T,QAAUA,GAAS+T,EAAK/T,MAAM3C,OAAS2C,KACvF,IAAI0gB,GAAera,GAAMub,YAmClCmB,6BAAA,SAAiBO,GACf,oBADeA,QACR,IAAI5C,GAAe5jB,KAAK0lB,aAAac,IAAWG,aAgCzDV,0BAAA,SAActV,EAA0CzN,gBAAAA,MACtDyN,EAAalP,EAAGogB,GAAHpgB,CAAekP,GAAcA,EAAa,IAAIkR,GAAWlR,GAEtE,IAAMwC,EAAsC,iBAAVjQ,EAAsBA,EAAQA,EAAM3C,KAChEqmB,EAAS5mB,KAAK0lB,aAAa5I,GAC3B+J,EAAaniB,GAAKkiB,EAAQ,SAAA3P,GAAQ,OAAAA,EAAK/T,MAAM3C,OAAS4S,IACrB,IAAIyQ,GAAegD,GAC3CE,gBAAgBnW,GAA2BkW,EAAW3jB,QAoBvE+iB,2BAAA,WACE,OAAOjmB,KAAK6S,SAASkU,gBAAkB,MA6BzCd,+BAAA,WACE,IAAMe,EAAKhnB,KAAK+mB,iBAChB,OAAQC,GAAMA,EAAGC,sBAAyBjnB,MAQ5CimB,oBAAA,WACE,OAAOjmB,KAAK6S,UAQdoT,qBAAA,WACE,OAAOllB,GAAIf,KAAK0lB,aAAajF,SAAUngB,EAAK,UAAUS,IAAImkB,KAQ5De,oBAAA,WACE,OAAOllB,GAAIf,KAAK0lB,aAAalF,QAASlgB,EAAK,UAAUS,IAAImkB,IAAW7kB,WAStE4lB,qBAAA,WACE,OAAOllB,GAAIf,KAAK0lB,aAAanF,SAAUjgB,EAAK,UAAUS,IAAImkB,KAe5De,kBAAA,SAAMO,EAAuBtjB,gBAAvBsjB,cACJ,IAAIjd,EAAOvJ,KAAK0lB,aAAac,GAE7B,OADAjd,EAAQrG,EAAeqG,EAAKnF,OAAO3D,EAAO,QAASyC,IAAnCqG,GACJxI,IAAIT,EAAK,UAAU8D,OAAO4T,GAAU3W,OAAO+I,QAiBzD6b,wBAAA,SAAYO,GACV,OAAOA,EAAWxmB,KAAK0lB,aAAac,GAAYxmB,KAAK0lB,cAavDO,qBAAA,SAASnH,GAGP,IAFA,IAAIoI,EAAY,EAAG/X,EAAoBnP,KAEI,OAAnCmP,EAAQA,EAAM4X,mBACpB,KAAMG,EAAY,GAAI,MAAM,IAAI7gB,MAAM,mDAGxC,IAAM8gB,GAAoCJ,eAAgB/mB,KAAM0H,OAAQ,YAK1C,QAA1B1H,KAAKwN,UAAU9F,SAAuD,IAAnCoX,EAAYtR,UAAU8N,WAC3D6L,EAAa7L,SAAW,WAG1B,IAAM8L,EAAa/f,KAAWrH,KAAKwN,UAAWsR,EAAYtR,UAAW2Z,GACrErI,EAAcA,EAAYuI,YAAYD,GAAY,GAElD,IAcyBhH,EAdnBkH,EAAgBtnB,KAAK2U,OAAOuD,kBAAkBnV,OAAO/C,KAAK0lB,aAAa7I,KAAMiC,GAC7EyI,EAAwBvnB,KAAK0lB,aAAajF,SAC1C+G,EAAwBF,EAAc5B,aAAajF,SAyBzD,OAR0C5B,GAAU7H,SAASwQ,EAAuBD,EAAuB1I,GAAU+B,kBAChHxc,OAAOpD,GANaof,EAMOtB,EAAYtR,UAAU4S,YANA,SAACnJ,GACrD,OAAOmJ,GAAenJ,EAAK/T,MAAMukB,SAASrH,EAAY7f,UAQlCyG,QAAQ,SAACiQ,EAAM1O,GACnC0O,EAAKmH,YAAcmJ,EAAsBhf,GAAK6V,cAGzCkJ,GAIDrB,2BAAR,WACE,IAAMyB,EAAK1nB,KAAK0lB,aAIhB,IAAI1lB,KAAK6S,SAAS8U,UAEdD,EAAGlH,QAAQ/gB,SAAUioB,EAAGjH,SAAShhB,QAEjCioB,EAAG5K,GAAGrd,SAAWioB,EAAG7K,KAAKpd,SAEAsM,GAAY2b,EAAG5K,GAAI4K,EAAG7K,MAC9C9b,IAAI,SAAAyY,GAAS,OAAAA,EAAM,GAAGtW,QAAUsW,EAAM,GAAGtW,QACzC7B,OAAO8I,IAAU,IACtB,CAGA,IAAMyd,EAAyBF,EAAG5K,GAAG/b,IAAI,SAACkW,GAAmB,OAAAA,EAAKkH,cAC5D3M,kFAGN,OAFezF,GAAY6b,aAEb7mB,IAAI,SAACyQ,OAACqW,OAAQC,OAAQC,OAAc,OAAA9K,GAAMK,QAAQuK,EAAQC,EAAQC,KAAW1mB,OAAO+I,SAUpG6b,oBAAA,WACE,IAAM+B,EAAUhoB,KAAKioB,iBACrB,QAAQD,GAAkBA,EAAQjnB,IAAI,SAAAQ,GAAK,OAAAA,EAAE0Z,UAAS5Z,OAAO8I,IAAU,IAUzE8b,oBAAA,WACE,QAASjmB,KAAKkoB,kBAIhBjC,2BAAA,WACE,IAAMkC,EAAUnoB,KAAK2U,OAAO0Q,QAAQ5R,WAC9B2M,EAAcpgB,KAAK6S,SAASuN,YAE5BgI,EAAO,SAACpH,EAAOC,GACnB,GAAID,EAAMvhB,SAAWwhB,EAAMxhB,OAAQ,OAAO,EAC1C,IAAMuX,EAAW6H,GAAU7H,SAASgK,EAAOC,GAC3C,OAAOD,EAAMvhB,SAAWuX,EAAS5S,OAAO,SAAA6S,GAAQ,OAACmJ,IAAgBnJ,EAAK/T,MAAMukB,SAASrH,EAAY7f,QAAOd,QAGpG4oB,EAAQroB,KAAKqX,cACbiR,EAASH,GAAWA,EAAQ9Q,cAElC,OAAIiR,GAAUF,EAAKE,EAAOxL,GAAIuL,EAAMvL,KAAOsL,EAAKE,EAAO9H,QAAS6H,EAAM7H,SAAiB,gBAC1D,IAAzB6H,EAAM7H,QAAQ/gB,QAA0C,IAA1B4oB,EAAM5H,SAAShhB,QAAgB2oB,EAAKC,EAAMxL,KAAMwL,EAAMvL,IAAY,qBAApG,GAYFmJ,gBAAA,WAAA,WACQsC,EAAcvU,GAAeuU,YAG7BC,EAAc,SAAChQ,GACjB,OAAAtR,EAAK2e,aAAaC,mBAAmBtN,IAsCnCiQ,EAAiBD,EAAY1Z,sBAAoB4Z,QAKvD,OAJA1U,GAAe+R,YAAY0C,EAbH,WACtB,IAAMpD,EAAUne,EAAKyN,OAAO0Q,QAQ5B,OANAA,EAAQsD,wBAA0BzhB,EAAKmL,IACvCgT,EAAQ5R,WAAavM,EACrBme,EAAQuD,kBAAkBC,QAAQ3hB,GAElCuL,GAAMqW,qBAAqB5hB,GAEpBZ,EAASC,GAAGkK,UAAKjK,KAKrB8G,KAtBiB,WAGpB,IAAMyb,EAAcP,EAAY1Z,sBAAoB+E,KAEpD,OAAOG,GAAe+R,YAAYgD,EADrB,WAAM,OAAAziB,EAASC,GAAGkK,UAAKjK,OAmBjC8G,KAtCqB,WACxBmF,GAAMuW,aAAa9hB,EAAKof,MAAOpf,GAC/BA,EAAK+hB,SAAU,EACf/hB,EAAKke,UAAUpC,QAAQ9b,EAAK4V,MAC5ByL,EAAYC,EAAY1Z,sBAAoBoa,WAGtB,SAACrY,GACvB4B,GAAM0W,WAAWtY,EAAQ3J,GACzBA,EAAK+hB,SAAU,EACf/hB,EAAKke,UAAU5Y,OAAOqE,GACtB3J,EAAKkiB,OAASvY,EACd0X,EAAYC,EAAY1Z,sBAAoBd,UA4BvChO,KAAKmM,SAYd8Z,kBAAA,WACE,OAAQjmB,KAAKuM,cAA4B/F,IAAjBxG,KAAKipB,SAS/BhD,kBAAA,WAEM/gB,EAAYlF,KAAKipB,WACnBjpB,KAAKiW,UAAW,IAYpBgQ,kBAAA,WACE,IAAM/iB,EAAqBlD,KAAKsmB,MAEhC,GAAIpjB,EAAMI,KAAK+lB,SACb,MAAO,wCAAwCnmB,EAAM3C,SAEvD,IAAM+oB,EAAYpmB,EAAMe,aAAcC,EAASlE,KAAKmE,SAC9ColB,EAAgBD,EAAUllB,OAAO,SAAAC,GAAS,OAACA,EAAMkZ,UAAUrZ,EAAOG,EAAME,OAC9E,OAAIglB,EAAc9pB,OACT,qCAAqCyD,EAAM3C,6BAA4BgpB,EAAcxoB,IAAI,SAAAsD,GAAS,OAAAA,EAAME,KAAIhC,KAAK,YAGrG,IAAjBvC,KAAKipB,QACAjpB,KAAKopB,YADd,GASFnD,qBAAA,WACE,IAAMuD,EAAkBxpB,KAAK6c,OACvB4M,EAAgBzpB,KAAK8c,KAErB4M,EAAiB,SAACvlB,GACtB,OAAiB,OAAhBA,EAAO,WAAiCqC,IAAhBrC,EAAO,KAAsBA,EAAS8b,GAAK9b,GAAS,OAU/E,MAAO,cAPInE,KAAKqS,WACLzN,EAAS4kB,GAAmBA,EAAgBjpB,KAAOipB,OAC7CziB,GAAU2iB,EAAe1pB,KAAK0lB,aAAa7I,KAAK9b,IAAIT,EAAK,gBAAgBe,OAAO6H,iBACnFlJ,KAAKulB,QAAU,GAAK,aACzB3gB,EAAS6kB,GAAiBA,EAAclpB,KAAOkpB,OACzC1iB,GAAU2iB,EAAe1pB,KAAKmE,iBA9tBxC8hB,UAAUA,OCtBnB,YAA0BvF,EAAaiJ,GACrC,OAAIA,EAAIlqB,QAAUihB,EAAYiJ,EACvBA,EAAIzP,OAAO,EAAGwG,EAAM,GAAK,MAYlC,YAA0BjhB,EAAgBkqB,GACxC,KAAOA,EAAIlqB,OAASA,GAAQkqB,GAAO,IACnC,OAAOA,EAGT,YAA4BC,GAC1B,OAAOA,EACFxW,QAAQ,WAAY,SAAAyW,GAAM,OAAAA,EAAGC,gBAC7B1W,QAAQ,WAAY,SAAAyW,GAAM,MAAA,IAAMA,EAAGC,gBAG1C,YAaiC3qB,GAC/B,IAAM4qB,EAAQ5T,GAAWhX,GACnB6qB,EAAqBD,EAAM1N,MAAM,8BACjCxX,EAAQmlB,EAAqBA,EAAmB,GAAKD,EAErD9nB,EAAS9C,EAAS,MAAK,GAC7B,OAAI8C,GAAU4C,EAAMwX,MAAM,eACjB,YAAcpa,EAAS4C,EAAMqV,OAAO,GAEtCrV,EAGT,YAA2B1F,GACzB,IAAM8qB,EAAMvkB,EAAQvG,GAAMA,EAAGE,OAAO,GAAG,GAAKF,EAC5C,OAAO8qB,GAAOA,EAAIllB,YAAc,YAGlC,IAAImlB,GAA2C,KACzCC,GAAmB,SAAStoB,GAChC,IAAMuoB,EAAc/c,GAAUgd,mBAc9B,OAZAH,GAA2BA,IAAsBjQ,IAC9CjZ,EAAImE,GAAapD,EAAI,eACrBqD,EAAiBrD,EAAI,UACrBkE,EAAiBlE,EAAI,eACrBqoB,EAAiB,SAAC7oB,GAAW,OAAAA,EAAEgM,qBAAqBxI,cACpDtD,EAAG4L,IAAcsQ,EAAO,cACxBlc,EAAGwkB,IAActI,EAAO,cACxBlc,EAAGogB,IAAclE,EAAO,cACxB3B,EAAiB5L,KACjBrO,GAAI,GAAaiW,MAGMnW,IAG5B,YAA0BwD,GACxB,IAAMilB,KAUN,OAAO1jB,KAAKG,UAAU1B,EAAG,SAAC+B,EAAKvF,GAAU,OARzC,SAAgBA,GACd,GAAI+C,EAAS/C,GAAQ,CACnB,IAA6B,IAAzByoB,EAAKliB,QAAQvG,GAAe,MAAO,iBACvCyoB,EAAK3hB,KAAK9G,GAEZ,OAAOsoB,GAAiBtoB,GAGe0oB,CAAO1oB,KAAQuR,QAAQ,OAAQ,KAI1E,IAAaoX,GAAoB,SAACC,GAAiB,OAAA,SAACd,GAClD,IAAKA,EAAK,OAAQ,GAAI,IACtB,IAAMphB,EAAMohB,EAAIvhB,QAAQqiB,GACxB,OAAa,IAATliB,GAAoBohB,EAAK,KACrBA,EAAIzP,OAAO,EAAG3R,GAAMohB,EAAIzP,OAAO3R,EAAM,MAGlCmiB,GAAY,IAAIjoB,OAAO,yBACvBkoB,GAAuB,SAAChB,GAAgB,OAAAA,EAAIvW,QAAQ,WAAY,KAChEwX,GAAYJ,GAAkB,KAC9BK,GAAaL,GAAkB,KAC/BM,GAAaN,GAAkB,KAC/BO,GAAc,SAACpB,GAAgB,OAAAA,EAAMA,EAAIvW,QAAQ,KAAM,IAAM,IAY1E,YAA6B4X,GAC3B,IAAMC,EAAK,IAAIxoB,OAAO,IAAMuoB,EAAQ,IAAK,KACzC,OAAO,SAACrB,GACJ,OAAAA,EAAI7oB,MAAMmqB,GAAI7mB,OAAO4T,IAgB3B,YAA+BjQ,EAAYxG,GACzC,OAAIkE,EAASO,GAAK+B,KAAStC,EAASlE,GAC3BwG,EAAI1I,MAAM,GAAI,GAAGO,OAAOoG,GAAK+B,GAAOxG,GACtC+I,GAAMvC,EAAKxG,GClIpB,IA0NQ2pB,iBA5CN,aARAlrB,cAAU,EAEVA,kBAGQA,kBAAoBiJ,GAAKkiB,EAAW/nB,WAAY,OAAQ,SAAU,QAAS,OAAQ,MAAO,OAAQ,OAAQ,OAAQ,QAOxHpD,KAAKorB,MAAQjoB,EAAQpC,GAAIf,KAAKqrB,aAFb,SAACC,EAAiC/qB,GAC/C,OAAA,IAAIwZ,GAAU1S,GAAS9G,QAAQ+qB,UAoCvC,OA/BEH,oBAAA,WACEnrB,KAAKorB,UAQPD,iBAAA,SAAK5qB,EAAc+qB,EAAkCC,GACnD,IAAKpmB,EAAUmmB,GAAa,OAAOtrB,KAAKorB,MAAM7qB,GAC9C,GAAIP,KAAKorB,MAAM9mB,eAAe/D,GAAO,MAAM,IAAI8F,MAAM,iBAAiB9F,iCAStE,OAPAP,KAAKorB,MAAM7qB,GAAQ,IAAIwZ,GAAU1S,GAAS9G,QAAQ+qB,IAE9CC,IACFvrB,KAAKwrB,UAAU7iB,MAAOpI,OAAMuZ,IAAKyR,IAC5BvrB,KAAK6oB,SAAS7oB,KAAKyrB,mBAGnBzrB,MAITmrB,4BAAA,WACE,KAAOnrB,KAAKwrB,UAAU/rB,QAAQ,CAC5B,IAAMyN,EAAOlN,KAAKwrB,UAAUze,QAC5B,GAAIG,EAAK+M,QAAS,MAAM,IAAI5T,MAAM,qDAClCgB,EAAOrH,KAAKorB,MAAMle,EAAK3M,MAAO+F,EAASG,UAAUkX,OAAOzQ,EAAK4M,aAQ3DoR,GAAkB,SAACpR,GACvB,IAAM4R,EAAc,SAAC3pB,GACjB,OAAO,MAAPA,EAAcA,EAAIgD,WAAahD,GAE7B4pB,GACJ3N,OAAQ0N,EACRvR,OAAQuR,EACRjqB,GAAIA,EAAGmqB,QACP3R,QAAS,KAETzS,OAAQ,SAAC0K,EAAQ5Q,GAAW,OAAA4Q,GAAK5Q,IAGnC,OAAO+F,KAAWskB,EAAiB7R,IAIrCzS,EAAO8jB,GAAW/nB,WAChByoB,OAAQX,OAER3hB,KAAM2hB,IACJjR,QAAS,UAGX6R,MAAOZ,OAEPa,KAAMb,IACJ/nB,SAAS,IAGX6oB,IAAKd,IACH/Q,OAAQ,SAACpY,GAAgB,OAAA0N,SAAS1N,EAAK,KACvCN,GAAI,SAASM,GACX,OAAQuD,EAAkBvD,IAAQ/B,KAAKma,OAAOpY,EAAIgD,cAAgBhD,GAEpEkY,QAAS,UAGXgS,KAAMf,IACJlN,OAAQ,SAACjc,GAAa,OAAAA,EAAO,EAAK,GAClCoY,OAAQ,SAACpY,GAAgB,OAAsB,IAAtB0N,SAAS1N,EAAK,KACvCN,GAAIA,EAAGyqB,SACPjS,QAAS,QAGXkS,KAAMjB,IACJlN,OAAQ,SAASjc,GACf,OAAQ/B,KAAKyB,GAAGM,IACdA,EAAIqqB,eACH,KAAOrqB,EAAIsqB,WAAa,IAAIhtB,OAAO,IACnC,IAAM0C,EAAIuqB,WAAWjtB,OAAO,IAC7BkD,KAAK,UAJgBiE,GAMzB2T,OAAQ,SAASpY,GACf,GAAI/B,KAAKyB,GAAGM,GAAM,OAAaA,EAC/B,IAAMsa,EAAQrc,KAAKusB,QAAQ5pB,KAAKZ,GAChC,OAAOsa,EAAQ,IAAImQ,KAAKnQ,EAAM,GAAIA,EAAM,GAAK,EAAGA,EAAM,SAAM7V,GAE9D/E,GAAI,SAACM,GAAa,OAAAA,aAAeyqB,OAAS9c,MAAM3N,EAAI0qB,YACpDjlB,gBAAO0R,EAAQC,GACb,OAAQ,cAAe,WAAY,WAC9B9X,OAAO,SAAC0G,EAAK5I,GAAO,OAAA4I,GAAOmR,EAAE/Z,OAAUga,EAAEha,OAAO,IAEvD8a,QAAS,0DACTsS,QAAS,0DAGXG,KAAMxB,IACJlN,OAAQlX,EACRqT,OAAQxT,EACRlF,GAAIA,EAAGqD,QACP0C,OAAQA,EACRyS,QAAS,UAIXzY,IAAK0pB,IACHlN,OAAQhG,EACRmC,OAAQnC,EACRvW,GAAI,WAAM,OAAA,GACV+F,OAAQA,MC9Td,kBAGE,WAAYrD,gBAAAA,MACVkD,EAAOrH,KAAMmE,GA8BjB,OAnBEwoB,qBAAA,SAAStZ,EAAgBuZ,EAAuBtG,GAC9C,IAAIuG,EACEC,EAAUC,GAAUH,EAAUtG,GAChC0G,KACAC,KAEJ,IAAK,IAAMntB,KAAKgtB,EACd,GAAKA,EAAQhtB,IAAOgtB,EAAQhtB,GAAGqE,SAC/B0oB,EAAe/nB,OAAOqC,KAAK2lB,EAAQhtB,GAAGqE,SACpB1E,OAElB,IAAK,IAAM+L,KAAKqhB,EACVI,EAAY7kB,QAAQykB,EAAarhB,KAAO,IAC5CyhB,EAAYtkB,KAAKkkB,EAAarhB,IAC9BwhB,EAAUH,EAAarhB,IAAMxL,KAAK6sB,EAAarhB,KAGnD,OAAOnE,KAAW2lB,EAAW3Z,SCAjC,YAAqBnQ,GACnB,OAAOA,EAAM3C,KAGf,YAAqB2C,GAEnB,OADAA,EAAMI,KAAKD,QAAU,WAAM,OAAAH,GACpBA,EAAMI,KAGf,YAAqBJ,GAInB,OAHIA,EAAMU,QAAUV,EAAMU,OAAOgN,OAC/B1N,EAAM0N,KAAO1N,EAAMI,KAAKsN,KAAOzN,EAAQD,EAAMU,OAAOgN,KAAM1N,EAAM0N,OAE3D1N,EAAM0N,KAGf,IAAMsc,GAAgB,SAACC,EAA+CtpB,GACtE,OAAA,SAAoBX,GAClB,IAAMkqB,EAAmClqB,EAIrCkqB,GAAYA,EAAS5oB,KAAO4oB,EAAS7sB,MAAQ6sB,EAAS7sB,KAAK8b,MAAM,aACnE+Q,EAAS5oB,KAAO,mBAGlB,IAAM6oB,EAlDS,SAAC7oB,GAChB,IAAKiB,EAASjB,GAAM,OAAO,EAC3B,IAAMX,EAAyB,MAAlBW,EAAI8oB,OAAO,GACxB,OAASvrB,IAAK8B,EAAOW,EAAI+oB,UAAU,GAAK/oB,EAAKX,QA+C9B2pB,CAASJ,EAAS5oB,KAAMZ,EAASV,EAAMU,OAChDY,EAAO6oB,EAAwBF,EAA2BM,QAAQJ,EAAOtrB,KAC7EoC,OAAQjB,EAAMiB,WACdupB,SAAU,SAAUC,EAAkBtT,GAEpC,OADgC,IAA5B+S,EAASQ,gBAA4BvT,IAAUsT,EAActmB,EAAOsmB,OAAqB1S,SAAS,KAC/F0S,KAJWP,EAAS5oB,IAQ/B,IAAKA,EAAK,OAAO,KACjB,IAAK2oB,EAA2BU,UAAUrpB,GAAM,MAAM,IAAI6B,MAAM,gBAAgB7B,iBAAkBtB,OAClG,OAAQmqB,GAAUA,EAAOxpB,KAAQW,GAAQZ,GAAUA,EAAOkqB,WAAcjqB,KAAQW,IAAIupB,OAAoBvpB,KAGpGwpB,GAAsB,SAACC,GAC7B,OAAA,SAA0B/qB,GACxB,OAAQ+qB,EAAO/qB,IAAUA,EAAMsB,IAAMtB,EAASA,EAAMU,OAASV,EAAMU,OAAOkqB,UAAY,OAGlFI,GAAmB,SAACC,GAC1B,OAAA,SAAuBjrB,GACrB,IACMkrB,EAAsBlrB,EAAMsB,KAAOtB,EAAMsB,IAAIP,YAAad,SAAS,QACnEkrB,EAAwBnqB,GAAO8F,GAAOiW,GAAK/c,EAAMiB,WAAciqB,EAAUrtB,IAAIT,EAAK,QAFhE,SAACuC,EAAa0B,GAAe,OAAA4pB,EAAaG,WAAW/pB,EAAI,KAAM1B,MAGvF,OAAOurB,EAAUxuB,OAAOyuB,GAActtB,IAAI,SAAAwtB,GAAK,OAACA,EAAEhqB,GAAIgqB,KAAIltB,OAAOod,SAGnE,YAAqBvb,GACnB,OAAOA,EAAMU,OAASV,EAAMU,OAAO2F,KAAK3J,OAAOsD,IAAmBA,GAGpE,YAAyBA,GACvB,IAAMukB,EAAWvkB,EAAMU,OAASyD,KAAWnE,EAAMU,OAAO6jB,aAExD,OADAA,EAASvkB,EAAM3C,OAAQ,EAChBknB,EA4CT,YAAmCvkB,GAIjC,IAA2BsrB,EAAiBvL,EAsBtCwL,EAAoB,SAACF,GAAW,OAAAA,EAAEG,SAAWH,EAAE/jB,OAG/CmkB,EAAqB1U,IACxB3Z,EAAK,aAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAIA,EAAE7M,UAAW6M,EAAE5M,KAAM4M,EAAE3M,WAC7EthB,EAAK,cAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAIA,EAAEK,WAAaL,EAAE5M,MAAQ4M,EAAEM,aAAeN,EAAE3M,WAClGthB,EAAK,YAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAI,WAAM,OAAA,IAAUA,EAAEO,aAAiBP,EAAE3M,WAC3FthB,EAAK,YAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAI,WAAM,OAAAA,EAAEQ,aAAcR,EAAE3M,OAAQ2M,EAAEQ,aACxFzuB,EAAK,eAAgB,SAAAiuB,GAAK,OAAA,IAAI1M,GAAW4M,EAASF,GAAIvW,GAAWuW,EAAES,aAAcT,EAAE3M,YAGhFqN,EAAmBhV,IACtBpZ,EAAKP,EAAK,OAAQmF,GAAa,SAAC+T,GAAiB,OAAA,IAAIqI,GAAWrI,EAAMhP,MAAOwN,GAAYwB,EAAMzX,KAAOyX,EAAMoI,WAC5G/gB,EAAKP,EAAK,OAAQoF,GAAa,SAAC8T,GAAiB,OAAA,IAAIqI,GAAWrI,EAAMhP,MAAOxE,GAAawT,EAAMzX,KAAMyX,EAAMzX,IAAI1C,MAAM,GAAI,GAAIma,EAAMoI,WACpI/gB,EAAKP,EAAK,OAAQqE,GAAa,SAAC6U,GAAiB,OAAA,IAAIqI,GAAWrI,EAAMhP,MAAOgP,EAAMzX,KAhC3D5C,EAgCyEqa,EAAMzX,IA/BlG0E,EAAYH,EAASG,UAIpBtH,EAAY,SAAMsH,GAAaA,EAAUyoB,SAAS/vB,EAAIsH,EAAU0oB,WAAoB,YA2BmB3V,EAAMoI,QAhC5F,IAACziB,EACnBsH,MAkCF2oB,EAA6CnV,IAChDxY,EAAGogB,IAA4B,SAAC1I,GAAkB,OAAAA,KA3B3B,SAAC3Y,GAAa,SAAGA,EAAIgK,QAAShK,EAAIkhB,YA4B1BiN,IAzBR,SAACnuB,GAAa,SAAIA,EAAIkuB,UAAWluB,EAAIgK,SAAWhK,EAAIuuB,UAAYvuB,EAAIouB,YAAcpuB,EAAIwuB,aAAexuB,EAAIsuB,YA0BjGH,IAvBR,SAACnuB,GAAa,SAAGA,GAAOA,EAAIuB,MAAQ0D,EAASjF,EAAIuB,MAAQ2D,EAAQlF,EAAIuB,MAAS4C,EAAWnE,EAAIuB,QAwBrFktB,IAC/BltB,GAAI,GAA2B,SAACvB,GAAe,MAAM,IAAI6F,MAAM,0BAA4BU,GAAUvG,QAKlG6uB,EAAOnsB,EAAM8f,QAEnB,OADqBtd,EAAQ2pB,GAAQA,GAlDVb,EAkDgCa,EAlDfpM,EAkDqB/f,EAAMgf,kBAjDnEpd,OAAOqC,KAAKqnB,OAAkBztB,IAAI,SAAAyJ,GAAS,OAAGA,QAAOzI,IAAKysB,EAAWhkB,GAAQmX,UAAMnb,EAAWob,OAAQqB,EAAgBzY,QAkD7GzJ,IAAIquB,GAenB,kBAIE,WAAoBrc,EAAuBwI,GAAvBvb,aAAA+S,EAClB,IAAMzP,EAAOtD,KAEP6D,EAAO,WAAM,OAAAkP,EAAQrO,KAAK,KAC1BupB,EAAS,SAAC/qB,GAAuB,MAAe,KAAfA,EAAM3C,MAO7CP,KAAKsvB,UACH/uB,MAAQgvB,IACRjsB,MAAQksB,IACR5rB,QARF,SAAuBV,GACrB,OAAI+qB,EAAO/qB,GAAe,KACnB6P,EAAQrO,KAAKpB,EAAKmsB,WAAWvsB,KAAWW,MAO/C+M,MAAQ8e,IAERlrB,KAAO0oB,GAAc3R,EAAmB1X,IAExCiqB,WAAaE,GAAoBC,IACjC9pB,QAAU+pB,GAAiB3S,EAAkB4S,eAG7C9P,SAEA9U,MAAQomB,IAERlI,UAAYmI,IACZxR,aAAeyR,KA+ErB,OAjEEC,oBAAA,SAAQvvB,EAAcpB,GACpB,IAAMmwB,EAAWtvB,KAAKsvB,SAChBnnB,EAAQmnB,EAAS/uB,OAEvB,OAAIkF,EAASlF,KAAU4E,EAAUhG,GAAYgJ,EAAM1I,OAAS,EAAI0I,EAAQA,EAAM,GACzE1C,EAASlF,IAAUoE,EAAWxF,IAEnCmwB,EAAS/uB,GAAQ4H,EACjBmnB,EAAS/uB,GAAMoI,KAAKxJ,GACb,WAAM,OAAAmwB,EAAS/uB,GAAMiI,OAAO8mB,EAAS/uB,GAAM6H,QAAQjJ,EAAI,KAAO,YAJrE,GAcF2wB,kBAAA,SAAM5sB,GACE,IAAE6P,eAASuc,gBACX1rB,EAAS5D,KAAKyvB,WAAWvsB,GAE/B,GAAIU,IAAWmP,EAAQrO,KAAKd,OAAQ4C,GAAW,GAC7C,OAAO,KAGT,IAAK,IAAMY,KAAOkoB,EAChB,GAAKA,EAAShrB,eAAe8C,GAA7B,CACA,IAAMoN,EAAQ8a,EAASloB,GAAK/F,OAAO,SAAC0uB,EAA2B/f,GAA0B,OAAA,SAACuG,GAAW,OAAAvG,EAAKuG,EAAQwZ,KAAWvc,GAC7HtQ,EAAMkE,GAAOoN,EAAMtR,GAErB,OAAOA,GAGT4sB,uBAAA,SAAW5sB,GAET,IAAM3C,EAAO2C,EAAM3C,MAAQ,GAErByvB,EAAWzvB,EAAKO,MAAM,KAM5B,GAFoB,OAFAkvB,EAASC,OAEHD,EAASC,MAE/BD,EAASvwB,OAAQ,CACnB,GAAIyD,EAAMU,OACR,MAAM,IAAIyC,MAAM,mFAAmF9F,OAIrG,OAAOyvB,EAASztB,KAAK,KAGvB,OAAKW,EAAMU,OACJ6B,EAASvC,EAAMU,QAAUV,EAAMU,OAASV,EAAMU,OAAOrD,KADlC,IAI5BuvB,iBAAA,SAAK5sB,GACH,IAAM3C,EAAO2C,EAAM3C,KACnB,IAA2B,IAAvBA,EAAK6H,QAAQ,OAAgBlF,EAAMU,OAAQ,OAAOrD,EAEtD,IAAMkvB,EAAahqB,EAASvC,EAAMU,QAAUV,EAAMU,OAASV,EAAMU,OAAOrD,KACxE,OAAOkvB,EAAaA,EAAa,IAAMlvB,EAAOA,sBC7ThD,WAAqB2vB,GAAAlwB,aAAAkwB,EA0DvB,OAxDEC,uBAAA,SAAWhd,GAET,OAAkC,KADlCA,EAAYA,GAAa,IACR/K,QAAQ,MAAyC,IAA3B+K,EAAU/K,QAAQ,MAI3D+nB,iBAAA,SAAKC,EAA0Bld,EAAoBmd,GACjD,gBADiDA,MAC5CD,GAA+B,KAAhBA,EAApB,CACA,IAAME,EAAQ7qB,EAAS2qB,GACnB7vB,EAAe+vB,EAAQF,EAAoBA,EAAa7vB,KAExDP,KAAKuwB,WAAWhwB,KAAOA,EAAOP,KAAKwwB,YAAYjwB,EAAM2S,IACzD,IAAMhQ,EAAQlD,KAAKkwB,QAAQ3vB,GAE3B,GAAI2C,IAAUotB,KAAWA,GAAUptB,IAAUktB,GAAeltB,EAAMI,OAAS8sB,IACzE,OAAOltB,EACF,GAAIotB,GAASD,EAAW,CAC7B,IACM5Z,EADUvS,GAAOlE,KAAKkwB,SACJ9rB,OAAO,SAAAmS,GAC3B,OAAAA,EAAOhT,mBAAmBC,UAC1B+S,EAAOhT,mBAAmBC,SAASiT,QAAQlW,KAO/C,OAJIkW,EAAQhX,OAAS,GAEnBiP,QAAQC,IAAI,iDAAiDpO,kBAAqBkW,EAAQ1V,IAAI,SAAAsb,GAAS,OAAAA,EAAM9b,QAExGkW,EAAQ,MAKnB0Z,wBAAA,SAAY5vB,EAAc2S,GACxB,IAAKA,EAAM,MAAM,IAAI7M,MAAM,sCAAsC9F,OAQjE,IANA,IAAMkwB,EAAyBzwB,KAAK0E,KAAKwO,GAEnCwd,EAAYnwB,EAAKO,MAAM,KACvB6vB,EAAaD,EAAUjxB,OACzBK,EAAI,EAAGmN,EAAUwjB,EAEd3wB,EAAI6wB,EAAY7wB,IACrB,GAAqB,KAAjB4wB,EAAU5wB,IAAmB,IAANA,EAA3B,CAIA,GAAqB,MAAjB4wB,EAAU5wB,GAKd,MAJE,IAAKmN,EAAQrJ,OAAQ,MAAM,IAAIyC,MAAM,SAAS9F,4BAA8BkwB,EAAUlwB,UACtF0M,EAAUA,EAAQrJ,YALlBqJ,EAAUwjB,EAUd,IAAMG,EAAUF,EAAUrxB,MAAMS,GAAGyC,KAAK,KACxC,OAAO0K,EAAQ1M,MAAQ0M,EAAQ1M,MAAQqwB,EAAU,IAAM,IAAMA,sBC9C/D,WACYC,EACAC,EACDvR,EACAwR,EACAC,GAJChxB,eAAA6wB,EACA7wB,gBAAA8wB,EACD9wB,YAAAuf,EACAvf,aAAA+wB,EACA/wB,eAAAgxB,EACThxB,KAAKixB,SACLjxB,KAAK+S,QAAU8d,EAAU9d,QAkF7B,OA9EEme,oBAAA,WACElxB,KAAKixB,UAGPC,qBAAA,SAASluB,GACP,IAAMiuB,EAAQjxB,KAAKixB,MACb/tB,EAAQJ,EAAYC,OAAOC,GAC3BzC,EAAO2C,EAAM3C,KAEnB,IAAKkF,EAASlF,GAAO,MAAM,IAAI8F,MAAM,gCACrC,GAAIrG,KAAKuf,OAAOjb,eAAe/D,IAAS0H,EAAQgpB,EAAMlwB,IAAIT,EAAK,SAAUC,GACvE,MAAM,IAAI8F,MAAM,UAAU9F,0BAK5B,OAHA0wB,EAAMtoB,KAAKzF,GACXlD,KAAKmxB,QAEEjuB,GAGTguB,kBAAA,WAQE,IARF,WACUD,aAAO1R,cAAQwR,eACjBK,KACFC,KACAC,KACEC,EAAW,SAAChxB,GACd,OAAA2G,EAAKqY,OAAOjb,eAAe/D,IAAS2G,EAAKqY,OAAOhf,IAE7C0wB,EAAMxxB,OAAS,GAAG,CACvB,IAAMyD,EAAqB+tB,EAAMlkB,QAC3BykB,EAAOtuB,EAAM3C,KACbR,EAAsBgxB,EAAQU,MAAMvuB,GACpCwuB,EAAoBL,EAAQjpB,QAAQlF,GAE1C,GAAInD,EAAJ,CACE,IAAM4xB,EAAgBJ,EAASC,GAC/B,GAAIG,GAAiBA,EAAcpxB,OAASixB,EAC1C,MAAM,IAAInrB,MAAM,UAAUmrB,0BAG5B,IAAMI,EAAsBL,EAASC,EAAO,OACxCI,GAEF5xB,KAAK6wB,UAAUlb,WAAWic,GAG5BrS,EAAOiS,GAAQtuB,EACflD,KAAK6xB,YAAY3uB,GACbwuB,GAAa,GAAGL,EAAQ7oB,OAAOkpB,EAAW,GAC9CN,EAAWzoB,KAAKzF,OAflB,CAmBA,IAAMiR,EAAOmd,EAAoBE,GAEjC,GADAF,EAAoBE,GAAQP,EAAMxxB,OAC9BiyB,GAAa,GAAKvd,IAAS8c,EAAMxxB,OAInC,OADAwxB,EAAMtoB,KAAKzF,GACJqc,EACEmS,EAAY,GACrBL,EAAQ1oB,KAAKzF,GAGf+tB,EAAMtoB,KAAKzF,IAOb,OAJIkuB,EAAW3xB,QACbO,KAAKgxB,UAAUhqB,QAAQ,SAAA8qB,GAAY,OAAAA,EAAS,aAAcV,EAAWrwB,IAAI,SAAAgxB,GAAK,OAAAA,EAAEzuB,UAG3Eic,GAGT2R,wBAAA,SAAYhuB,IACNA,EAAMmmB,UAAanmB,EAAMsB,KAE7BxE,KAAK8wB,WAAWkB,KAAKhyB,KAAK8wB,WAAWmB,eAAelvB,OAAOG,wBCnE7D,WAAoBgvB,GAAAlyB,aAAAkyB,EATZlyB,eAMRA,kBAIEA,KAAK+S,QAAU,IAAIod,GAAanwB,KAAKuf,QACrCvf,KAAK+wB,QAAU,IAAIjB,GAAa9vB,KAAK+S,QAASmf,EAAQ3W,mBACtDvb,KAAKmyB,WAAa,IAAIjB,GAAkBlxB,KAAMkyB,EAAQE,UAAWpyB,KAAKuf,OAAQvf,KAAK+wB,QAAS/wB,KAAKgxB,WACjGhxB,KAAKqyB,gBAmKT,OA/JUC,0BAAR,YAWgBtyB,KAAKuyB,MAAQvyB,KAAKmyB,WAAWK,UATzCjyB,KAAM,GACNiE,IAAK,IACL6Z,MAAO,KACPla,QACEsuB,KAAO5wB,MAAO,KAAMqL,KAAM,OAAQ+N,SAAS,IAE7CoO,UAAU,KAINyE,UAAY,MAIpBwE,oBAAA,WAAA,WACEtyB,KAAKmyB,WAAWO,UAChB1yB,KAAKgxB,aACLhxB,KAAK4iB,MAAM5b,QAAQ,SAAA9D,GAAS,OAAAgE,EAAK0b,IAAI1f,IAAUgE,EAAKyO,WAAWzS,MAiCjEovB,4BAAA,SAAgBR,GAEd,OADA9xB,KAAKgxB,UAAUroB,KAAKmpB,GACb,WACLzpB,EAAWrI,KAAKgxB,UAAhB3oB,CAA2BypB,IAC3BjrB,KAAK7G,OAYTsyB,iBAAA,WACE,OAAOtyB,KAAKuyB,OAedD,qBAAA,SAASK,GACP,OAAO3yB,KAAKmyB,WAAWK,SAASG,IAI1BL,4BAAR,SAAwBpvB,GAAxB,WACQ/B,EAAMnB,KAAK4iB,MAAM7hB,IAAI,SAAAgxB,GAAK,OAAAA,EAAE1uB,YAC5BuvB,EAAc,SAACrT,GACnB,IAAMsT,EAAY1xB,EAAIiD,OAAO,SAAA2tB,GAAK,OAA8B,IAA9BxS,EAAOnX,QAAQ2pB,EAAEnuB,UACnD,OAA4B,IAArBivB,EAAUpzB,OAAeozB,EAAYA,EAAUjzB,OAAOgzB,EAAYC,KAGrEC,EAAWF,GAAa1vB,IACxB6vB,GAA+B7vB,GAAOtD,OAAOkzB,GAAUzyB,UAU7D,OARA0yB,EAAa/rB,QAAQ,SAAAuP,GACnB,IAAMyc,EAAM9rB,EAAKgrB,QAAQE,UAEzBY,EAAIC,QAAQ7uB,OAAO3D,EAAO,QAAS8V,IAASvP,QAAQgsB,EAAIE,WAAWrsB,KAAKmsB,WAEjE9rB,EAAKqY,OAAOhJ,EAAOhW,QAGrBwyB,GAYTT,uBAAA,SAAWlC,GACT,IAAM7Z,EAASvW,KAAK4iB,IAAIwN,GACxB,IAAK7Z,EAAQ,MAAM,IAAIlQ,MAAM,sCAAwC+pB,GACrE,IAAM+C,EAAqBnzB,KAAKozB,gBAAgB7c,EAAOlT,WAGvD,OADArD,KAAKgxB,UAAUhqB,QAAQ,SAAA8qB,GAAY,OAAAA,EAAS,eAAgBqB,EAAmBpyB,IAAI,SAAAgxB,GAAK,OAAAA,EAAEzuB,UACnF6vB,GAwBTb,gBAAA,SAAIlC,EAA2Bld,GAA/B,WACE,GAAyB,IAArB3T,UAAUE,OACZ,OAA4BqF,OAAOqC,KAAKnH,KAAKuf,QAAQxe,IAAI,SAAAR,GAAQ,OAAA2G,EAAKqY,OAAOhf,GAAM+C,OACrF,IAAM+vB,EAAQrzB,KAAK+S,QAAQrO,KAAK0rB,EAAald,GAC7C,OAAOmgB,GAASA,EAAM/vB,MAAQ,MAGhCgvB,sBAAA,SAAU/xB,EAAc+yB,GACtB,OAAOtzB,KAAK+wB,QAAQA,QAAQxwB,EAAM+yB,SCzLtC,YAAqB3J,EAAUtlB,GAC7B,IAAIkvB,GAAmB,GAAI,IAAKxzB,EAAS4pB,EAAIvW,QAAQ,wBAAyB,QAC9E,IAAK/O,EAAO,OAAOtE,EAEnB,OAAQsE,EAAMoY,QACZ,KAAK,EACH8W,GAAmB,IAAK,KAAOlvB,EAAMkY,WAAa,IAAM,KAAM,MAChE,KAAK,EACHxc,EAASA,EAAOqT,QAAQ,MAAO,IAC/BmgB,GAAmB,QAAU,SAC7B,MACF,QACEA,GAAmB,IAAIlvB,EAAMoY,WAAW,MAE5C,OAAO1c,EAASwzB,EAAgB,GAAKlvB,EAAM6I,KAAK+M,QAAQvS,OAAS6rB,EAAgB,GAInF,IAIMC,GAAeC,GAAa,mBA2KhC,WAAYxZ,EAAiBwB,EAAwB0S,EAAmCtrB,GAAxF,WAAwF7C,YAAA6C,EAxGhF7C,aAA4BuJ,MAAOvJ,OAEnCA,kBAEAA,gBAEAA,kBAEAA,kBAiGNA,KAAKia,QAAUA,EACfja,KAAK6C,OAASkB,GAAS/D,KAAK6C,QAC1BsB,UACAuvB,QAAQ,EACRC,iBAAiB,EACjBjG,SAAU1V,IAiDZ,IAjCA,IAGc4b,EA2BVrF,EAAQsF,EA9BNC,EAAc,wFACdC,EAAoB,4FACpBC,KACFC,EAAO,EAELC,EAAmB,SAAC3vB,GACxB,IAAK4vB,EAAWC,cAAcxxB,KAAK2B,GAAK,MAAM,IAAI8B,MAAM,2BAA2B9B,mBAAmB0V,OACtG,GAAIvV,GAAKwC,EAAK0L,QAASnS,EAAO,KAAM8D,IAAM,MAAM,IAAI8B,MAAM,6BAA6B9B,mBAAmB0V,QAKtGoa,EAAe,SAACC,EAAoBja,GAExC,IAGwBsP,EAHlBplB,EAAa+vB,EAAE,IAAMA,EAAE,GACvB9xB,EAAiB6X,EAAWia,EAAE,GAAKA,EAAE,KAAgB,MAATA,EAAE,GAAa,YAAc,MAM/E,OACE/vB,KACA/B,SACAoP,IAAS1K,EAAKrE,OAAOsB,OAAOI,GAC5BsvB,QAAS5Z,EAAQsT,UAAU0G,EAAMK,EAAEC,OACnCrnB,KAAU1K,EAAgBiZ,EAAWvO,KAAK1K,KATpBmnB,EAS8CnnB,EATtCW,EAAQsY,EAAWvO,KAAKmN,EAAW,QAAU,SAC3EJ,QAAS,IAAIxX,OAAOknB,EAAKziB,EAAKrE,OAAO8wB,gBAAkB,SAAMntB,MAQ1C,QAOfotB,EAAaE,EAAYnxB,KAAKsX,QACpCsU,EAAI8F,EAAaT,GAAY,IACvBC,QAAQzrB,QAAQ,MAAQ,IAE9B8rB,EAAiB3F,EAAEhqB,IACnBvE,KAAK4S,QAAQjK,KAAKwlB,EAAajP,SAASqP,EAAEhqB,GAAIgqB,EAAErhB,KAAMlN,KAAK6C,OAAO6qB,SAASa,EAAE3c,KAAK,KAClF5R,KAAKw0B,UAAU7rB,KAAK4lB,EAAEsF,SACtBG,EAASrrB,MAAM4lB,EAAEsF,QAAS7tB,GAAKhG,KAAK4S,WACpCqhB,EAAOH,EAAYW,UAKrB,IAAM30B,GAHN+zB,EAAU5Z,EAAQsT,UAAU0G,IAGV7rB,QAAQ,KAE1B,GAAItI,GAAK,EAAG,CACV,IAAM40B,EAASb,EAAQtG,UAAUztB,GAGjC,GAFA+zB,EAAUA,EAAQtG,UAAU,EAAGztB,GAE3B40B,EAAOj1B,OAAS,EAIlB,IAHAw0B,EAAO,EAGCL,EAAaG,EAAkBpxB,KAAK+xB,IAE1CR,GADA3F,EAAI8F,EAAaT,GAAY,IACVrvB,IACnBvE,KAAK4S,QAAQjK,KAAKwlB,EAAawG,WAAWpG,EAAEhqB,GAAIgqB,EAAErhB,KAAMlN,KAAK6C,OAAO6qB,SAASa,EAAE3c,KAAK,KACpFqiB,EAAOH,EAAYW,UAMzBz0B,KAAKw0B,UAAU7rB,KAAKkrB,GACpB7zB,KAAK40B,UAAYZ,EAASjzB,IAAI,SAAA8zB,GAAY,OAAAC,GAAYx1B,MAAM,KAAMu1B,KAAWj1B,OAAOk1B,GAAYjB,IA6PpG,OAhbSM,eAAP,SAAoBxK,GAClB,OAAOoL,mBAAmBpL,GAAKvW,QAAQ,KAAM,SAAA4hB,GAAK,MAAA,OAAOA,EAAEC,WAAW,GAAGlwB,SAAS,IAAImwB,iBAIjFf,wBAAP,SAA6BphB,GAG3B,OAAOhH,GAFgBgH,EAAQyhB,UACZzhB,EAAQH,QAAQxO,OAAO,SAAAmqB,GAAK,OAAAA,EAAEjT,WAAaH,UAAQQ,OACxB/b,YAAO4G,IAClDnF,OAAO+I,OACPhG,OAAO,SAAA7C,GAAK,MAAM,KAANA,GAAY4D,EAAU5D,MAIhC4yB,cAAP,SAAmBphB,GACjB,OAAOA,EAAQH,QAAQxO,OAAO,SAAAmqB,GAAK,OAAAA,EAAEjT,WAAaH,UAAQS,UAYrDuY,UAAP,SAAejiB,EAAe5Q,GAW5B,IAaM6zB,EAAU,SAACpiB,GACf,OAAAA,EAAQqiB,OAAOD,QAAUpiB,EAAQqiB,OAAOD,SAdzB,SAACpiB,GAChB,OAAAA,EAAQqiB,OAAOpF,SAAWjd,EAAQqiB,OAAOpF,UACvCjd,EAAQqiB,OAAO7rB,KAAKxI,IAAIozB,EAAWkB,uBAChCh0B,OAAO+I,OACP/I,OAAOi0B,OACPv0B,IAAI,SAAAQ,GAAK,OAAAkE,EAASlE,GAAKiyB,GAAajyB,GAAKA,IACzCF,OAAO+I,OASV4lB,CAASjd,GAAShS,IAAI,SAAA8yB,GAEpB,MAAgB,MAAZA,EAAwB,EACxBpuB,EAASouB,GAAiB,EAC1BA,aAAmB5W,GAAc,OAArC,KAYAsY,EAAWJ,EAAQjjB,GAAIsjB,EAAWL,EAAQ7zB,IAN9B,SAAC4X,EAAUC,EAAUsc,GAErC,IADA,IAAMC,EAAMvqB,KAAKuV,IAAIxH,EAAEzZ,OAAQ0Z,EAAE1Z,QAC1ByZ,EAAEzZ,OAASi2B,GAAKxc,EAAEvQ,KAAK8sB,GAC9B,KAAOtc,EAAE1Z,OAASi2B,GAAKvc,EAAExQ,KAAK8sB,GAIhCE,CAAUJ,EAAUC,EAAU,GAE9B,IACII,EAAK91B,EADH+1B,EAAS9pB,GAAYwpB,EAAUC,GAGrC,IAAK11B,EAAI,EAAGA,EAAI+1B,EAAOp2B,OAAQK,IAE7B,GAAY,KADZ81B,EAAMC,EAAO/1B,GAAG,GAAK+1B,EAAO/1B,GAAG,IAChB,OAAO81B,EAGxB,OAAO,GA6GTzB,mBAAA,SAAO3vB,GAOL,OANAxE,KAAK6yB,UAAUlqB,KAAKnE,GACpBA,EAAI4wB,QACF7rB,KAAMvJ,KAAKo1B,OAAO7rB,KAAK3J,OAAO4E,GAC9BZ,OAAQ5D,KACRia,QAAS,MAEJzV,GAIT2vB,mBAAA,WACE,OAAOn0B,KAAKo1B,OAAO7rB,KAAK,KAAOvJ,MAIjCm0B,qBAAA,WACE,OAAOn0B,KAAKia,SA6Bdka,iBAAA,SAAK5qB,EAAcmrB,EAAkB3I,EAAeve,GAApD,wBAAmBknB,mBAAiClnB,MAClD,IAjUehN,EAAUmJ,EAAexK,EAiUlCkd,GAjUS7b,EAiUSR,KAAKo1B,OAjUJzrB,EAiUY,UAjUGxK,EAiUQ,WAC9C,OAAO,IAAIsD,QACT,IACAgI,GAAOvD,EAAKkuB,OAAO7rB,KAAKxI,IAAIT,EAAK,eAAeiC,KAAK,KAC9B,IAAvB2E,EAAKrE,OAAO6wB,OAAmB,KAAQ,GACvC,KACAnxB,KAAK,IAAK2E,EAAKrE,OAAO8wB,gBAAkB,SAAMntB,IAtUlDhG,EAAImJ,GAASnJ,EAAImJ,IAAUxK,KAuUxBwD,KAAK4G,GAER,IAAK8S,EAAO,OAAO,KAInB,IAUQyZ,EAVFC,EAAwB/1B,KAAKiE,aAC/B+xB,EAAwBD,EAAU3xB,OAAO,SAAAC,GAAS,OAACA,EAAMgW,aACzD4b,EAAwBF,EAAU3xB,OAAO,SAAAC,GAAS,OAAAA,EAAMgW,aACxD6b,EAAiBl2B,KAAKo1B,OAAO7rB,KAAKxI,IAAI,SAAAo1B,GAAQ,OAAAA,EAAK3B,UAAU/0B,OAAS,IAAG4B,OAAO,SAAC6Q,EAAG3Q,GAAM,OAAA2Q,EAAI3Q,IAC9F2C,KAEJ,GAAIgyB,IAAkB7Z,EAAM5c,OAAS,EACnC,MAAM,IAAI4G,MAAM,sCAAsCrG,KAAKia,aAW7D,IAAK,IAAIna,EAAI,EAAGA,EAAIo2B,EAAep2B,IAAK,CAKtC,IAJA,IAAMuE,EAAe2xB,EAAWl2B,GAC5B+B,EAAqBwa,EAAMvc,EAAI,GAG1B0L,EAAI,EAAGA,EAAInH,EAAM+O,QAAQ3T,OAAQ+L,IACpCnH,EAAM+O,QAAQ5H,GAAGqR,OAAShb,IAAOA,EAAQwC,EAAM+O,QAAQ5H,GAAGsR,IAE5Djb,IAAyB,IAAhBwC,EAAM8D,aAhBb2tB,EAgB6Bj0B,EAX5Bd,GADaA,IAJd+0B,EAAgB,SAACnM,GAAgB,OAAAA,EAAI7oB,MAAM,IAAIT,UAAUkC,KAAK,MAgBTV,GAbrBf,MAAM,WACbg1B,GAHT,SAACnM,GAAgB,OAAAA,EAAIvW,QAAQ,OAAQ,OAIpB/S,WAYnC8E,EAAUtD,KAAQA,EAAQwC,EAAM6I,KAAKiN,OAAOtY,IAChDqC,EAAOG,EAAME,IAAMF,EAAMxC,MAAMA,GAajC,OAXAo0B,EAAajvB,QAAQ,SAAA3C,GAEnB,IADA,IAAIxC,EAAQ6yB,EAAOrwB,EAAME,IAChBiH,EAAI,EAAGA,EAAInH,EAAM+O,QAAQ3T,OAAQ+L,IACpCnH,EAAM+O,QAAQ5H,GAAGqR,OAAShb,IAAOA,EAAQwC,EAAM+O,QAAQ5H,GAAGsR,IAE5D3X,EAAUtD,KAAQA,EAAQwC,EAAM6I,KAAKiN,OAAOtY,IAChDqC,EAAOG,EAAME,IAAMF,EAAMxC,MAAMA,KAG7BkqB,IAAM7nB,EAAO,KAAO6nB,GAEjB7nB,GAUTiwB,uBAAA,SAAWrwB,GACT,oBADSA,OACY,IAAjBA,EAAKX,QAA0BnD,KAAK4S,QACjCnI,GAAOzK,KAAKo1B,OAAO7rB,KAAKxI,IAAI,SAAAgS,GAAW,OAAAA,EAAQH,YAWxDuhB,sBAAA,SAAU5vB,EAAYT,GAAtB,wBAAsBA,MACpB,IAMMF,EAAS5D,KAAKo1B,OAAOxxB,OAC3B,OAPkB,WAChB,IAAoB,QAAA4N,EAAAtK,EAAK0L,QAAL1S,WAAAA,KAAf,IAAMmE,OACT,GAAIA,EAAME,KAAOA,EAAI,OAAOF,GAKzB+xB,KAAiC,IAAjBtyB,EAAKX,SAAqBS,GAAUA,EAAOa,UAAUF,EAAIT,IAAU,MAY5FqwB,sBAAA,SAAUhwB,GAQR,OAJAA,EAASA,MAGWnE,KAAKiE,aAAaG,OAAO,SAAAsa,GAAY,OAAAva,EAAOG,eAAeoa,EAASna,MACrExD,IAAI,SAAA2d,GAAY,OAPZra,EAO0Bqa,EAPZ3c,EAOsBoC,EAAOua,EAASna,KANtEF,GAASA,EAAMkZ,UAAUxb,GADR,IAACsC,EAActC,IAO4CV,OAAO4I,IAAU,IAkBpGkqB,mBAAA,SAAOjwB,gBAAAA,MAEL,IAAMmyB,EAAcr2B,KAAKo1B,OAAO7rB,KAI1B8rB,EAAoDgB,EAAYt1B,IAAIozB,EAAWkB,uBAC5Eh0B,OAAO+I,OACPrJ,IAAI,SAAAQ,GAAK,OAAAkE,EAASlE,GAAKA,EAAI+0B,EAAW/0B,KAGzCg1B,EAAmCF,EAAYt1B,IAAIozB,EAAWoC,aAC3Dl1B,OAAO+I,OACPrJ,IAAIu1B,GAGb,GAAIjB,EAAsBz1B,OAAO22B,GAAanyB,OAD5B,SAACC,GAAwB,OAAkB,IAAlBA,EAAMmyB,UACe/2B,OAC9D,OAAO,KAMT,WAAoB4E,GAElB,IAAMxC,EAAQwC,EAAMxC,MAAMqC,EAAOG,EAAME,KACjCiyB,EAAUnyB,EAAMkZ,UAAU1b,GAC1B40B,EAAiBpyB,EAAMoyB,eAAe50B,GAM5C,OAASwC,QAAOxC,QAAO20B,UAASC,iBAAgBha,SAJjCga,GAAiBpyB,EAAMoY,OAIkBsB,QAFxC1Z,EAAM6I,KAAK8Q,OAAOnc,IAMpC,IAAM60B,EAAarB,EAAsBh0B,OAAO,SAAC0G,EAAaxG,GAE5D,GAAIkE,EAASlE,GAAI,OAAOwG,EAAMxG,EAGtB,IAAAkb,WAAQsB,YAAS1Z,UAGzB,OAAe,IAAXoY,EAAyB1U,EAAIsU,MAAM,OAAUtU,EAAI1I,MAAM,GAAI,GAAK0I,EAEhEtC,EAASgX,GAAgB1U,EAAM0U,GACpB,IAAXA,EAAyB1U,EACd,MAAXgW,EAAwBhW,EAExBrC,EAAQqY,GAAiBhW,EAAMhH,GAAegd,EAASoW,EAAWwC,cAAcp0B,KAAK,KAErF8B,EAAMmY,IAAYzU,EAAMgW,EAErBhW,EAAMgtB,mBAA4BhX,IACxC,IAIG6Y,EAAcL,EAAYx1B,IAAI,SAAC81B,GAC7B,IAAAxyB,UAAOoY,WAAQsB,YAAS0Y,mBAC9B,KAAe,MAAX1Y,GAAoB0Y,IAA6B,IAAXha,KACrC/W,EAAQqY,KAAUA,GAAoBA,IACpB,IAAnBA,EAAQte,QAGZ,OAFK4E,EAAMmY,MAAKuB,EAAUhd,GAAegd,EAASgX,qBAE/BhX,EAAShd,IAAI,SAAAgB,GAAO,OAAGsC,EAAME,OAAMxC,MACrDqC,OAAO4T,GAAU3W,OAAO+I,OAAa7H,KAAK,KAG7C,OAAOm0B,GAAcE,EAAc,IAAIA,EAAgB,KAAO1yB,EAAO,KAAO,IAAMA,EAAO,KAAO,KA/b3FiwB,gBAAwB,+CC9D/B,aAAA,WApBen0B,gBAAa,IAAImrB,GACjBnrB,yBAAqB,EACrBA,oBAAgB,EAChBA,2BAAyC,EAGxDA,mBAEEsuB,WAAY,SAAC/pB,EAAY2I,EAAiBrK,GACxC,OAAA,IAAIoa,GAAM1Y,EAAI2I,EAAMrK,EAAQsY,UAAQO,OAAQxU,IAG9CgY,SAAU,SAAC3a,EAAY2I,EAAiBrK,GACtC,OAAA,IAAIoa,GAAM1Y,EAAI2I,EAAMrK,EAAQsY,UAAQQ,KAAMzU,IAG5CytB,WAAY,SAACpwB,EAAY2I,EAAiBrK,GACxC,OAAA,IAAIoa,GAAM1Y,EAAI2I,EAAMrK,EAAQsY,UAAQS,OAAQ1U,KAyBxClH,gBAAa,SAAC6C,GAClB,OAAAwE,GAASqsB,OAAQxsB,EAAK4vB,cAAenD,gBAAiBzsB,EAAK6vB,oBAAsBl0B,IAtBnFwE,EAAOrH,MAAQm0B,cAAYlX,WAwF/B,OApFE+Z,4BAAA,SAAgBn1B,GACd,OAAO7B,KAAK+2B,mBAAqB5xB,EAAUtD,GAASA,EAAQ7B,KAAK+2B,oBAInEC,uBAAA,SAAWn1B,GACT,OAAO7B,KAAK82B,cAAgB3xB,EAAUtD,GAASA,EAAQ7B,KAAK82B,eAI9DE,gCAAA,SAAoBn1B,GAClB,GAAIsD,EAAUtD,KAAoB,IAAVA,IAA4B,IAAVA,IAAoB4D,EAAS5D,GACrE,MAAM,IAAIwE,MAAM,0BAA0BxE,qDAC5C,OAAO7B,KAAKi3B,qBAAuB9xB,EAAUtD,GAASA,EAAQ7B,KAAKi3B,sBAcrED,oBAAA,SAAQ/c,EAAiBpX,GACvB,OAAO,IAAIsxB,GAAWla,EAASja,KAAKyb,WAAYzb,KAAKmuB,aAAcnuB,KAAKk3B,WAAWr0B,KAUrFm0B,sBAAA,SAAUG,GAER,IAAKvyB,EAASuyB,GAAS,OAAO,EAC9B,IAAIp3B,GAAS,EAKb,OAHAiH,EAAQmtB,GAAW/wB,UAAW,SAACrB,EAAKxB,GAC9BoE,EAAW5C,KAAMhC,EAASA,GAAWoF,EAAUgyB,EAAO52B,KAAUoE,EAAWwyB,EAAO52B,OAEjFR,GAsBTi3B,iBAAA,SAAKz2B,EAAc+qB,EAAkCC,GACnD,IAAMre,EAAOlN,KAAKyb,WAAWvO,KAAK3M,EAAM+qB,EAAYC,GACpD,OAAQpmB,EAAUmmB,GAAqBtrB,KAAPkN,GAIlC8pB,iBAAA,WAGE,OAFAh3B,KAAKyb,WAAWoN,SAAU,EAC1B7oB,KAAKyb,WAAWgQ,kBACTzrB,MAITg3B,oBAAA,WACEh3B,KAAKyb,WAAWiX,8BClGlB,WAAmB/d,GAAA3U,YAAA2U,EAuKrB,OArKEyiB,oBAAA,SAAQzN,GACN,OAAO3pB,KAAK2U,OAAO4G,kBAAkBkS,QAAQ9D,IAG/CyN,mBAAA,SAAOC,EAA2DC,GAAlE,WACQC,EAAWtd,IACdxU,EAAgB,SAAC+xB,GAA0B,OAAAD,EAASrwB,EAAKumB,QAAQ+J,OACjE/1B,EAAG0yB,IAAa,SAACqD,GAA0B,OAAAtwB,EAAKuwB,eAAeD,EAAOF,MACtExxB,EAAgB,SAAC0xB,GAA0B,OAAAtwB,EAAKwwB,UAAUF,EAAOtwB,EAAKyN,WACtElT,EAAGgB,QAAa,SAAC+0B,GAA0B,OAAAtwB,EAAKywB,WAAWH,EAAOF,MAClE3yB,EAAgB,SAAC6yB,GAA0B,OAAA,IAAII,GAAYJ,EAAOF,OAG/DtF,EAAOuF,EAASF,GACtB,IAAKrF,EAAM,MAAM,IAAI3rB,MAAM,4BAC3B,OAAO2rB,GAuCToF,2BAAA,SAAeS,EAAwBP,GACrC,IAAIQ,EAA6BR,EAC7B7xB,EAAS6xB,KAAUA,EAAUt3B,KAAK2U,OAAO4G,kBAAkBkS,QAAQ6J,IACnE71B,EAAG0yB,GAAH1yB,CAAe61B,KAAUQ,EAAW,SAACzb,GAAqB,OAACib,EAAuB/M,OAAOlO,KAmB7F,IAAM0b,GAAYF,aAAYG,cAP9B,SAAuB7zB,GACrB,IAAM8zB,EAAWJ,EAAW5zB,aAAaG,OAAO,SAAAC,GAAS,OAAAA,EAAMkY,aAC/D,OAAK0b,EAASx4B,OACEw4B,EAAS7zB,OAAO,SAAAC,GAAS,OAAAF,EAAOE,EAAME,MACvC9E,OAASw4B,EAASx4B,OAFJ,MAKcyN,KAAM,cACnD,OAAO7F,EAAO,IAAIuwB,GAlBlB,SAA2BpzB,GACzB,IAAML,EAAS0zB,EAAWl1B,KAAK6B,EAAI+E,KAAM/E,EAAIkwB,OAAQlwB,EAAIunB,MACzD,OAAO8L,EAAWta,UAAUpZ,IAAWA,GAgBQ2zB,GAAWC,IAe9DX,sBAAA,SAAUl0B,EAAoByR,GAQ5B,IAQMojB,GAAY70B,QAAOgK,KAAM,SAC/B,OAAO7F,EAAOrH,KAAKy3B,eAAev0B,EAAMsB,IATxB,SAAC6X,GACf,IAAM2C,EAASrK,EAAOC,aAChByQ,EAAU1Q,EAAO0Q,QACnBrG,EAAOkZ,KAAKh1B,EAAOmZ,KAAW2C,EAAOkZ,KAAK7S,EAAQpY,QAASoY,EAAQlhB,SACrE6a,EAAOmZ,aAAaj1B,EAAOmZ,GAASlZ,SAAS,EAAMuE,OAAQ,UAKRqwB,IAmCzDX,uBAAA,SAAW50B,EAAgB80B,GACzB,GAAI90B,EAAOkE,QAAUlE,EAAO41B,OAAQ,MAAM,IAAI/xB,MAAM,4CAOpD,IAKMyxB,EAAWryB,EAAS6xB,GALJ,SAACjb,GAEnB,OAACib,EAAmBlkB,QAAQ,iBAAkB,SAACkhB,EAAG+C,GAC9C,OAAAhb,EAAe,MAATgb,EAAe,EAAIgB,OAAOhB,OAEaC,EAK/CS,GAAYv1B,SAAQ0K,KAAM,UAChC,OAAO7F,EAAO,IAAIuwB,GAJY,SAACpzB,GAC3B,OAAAhC,EAAOG,KAAK6B,EAAI+E,OAGiCuuB,GAAWC,IAxK3DX,YAAY,SAAA52B,GACjB,OAAAA,IAAQ,OAAQ,QAAS,WAAWuX,MAAM,SAAA3Q,GAAO,OAAAjC,EAAU3E,EAAI4G,0BA2LnE,OAHE,SAAmBiV,EAAuBib,GAA1C,WAAmBt3B,WAAAqc,EAJnBrc,UAAoB,MAEpBA,mBAAgB,SAACqc,GAAU,OAAA,EAAInV,EAAKmL,KAGlCrS,KAAKs3B,QAAUA,GAAWtf,MC1L9B,IAmCIsgB,GACJA,GAAoB,SAACpmB,EAAG5Q,GACtB,IAAIs0B,EArCe,SAAC1jB,EAAY5Q,GAChC,OAACA,EAAEuV,UAAY,IAAM3E,EAAE2E,UAAY,GAoCzB0hB,CAAarmB,EAAG5Q,GAC1B,OAAY,IAARs0B,EAAkBA,EAGV,KADZA,EApCe,SAAC1jB,EAAY5Q,GAC5B,IAAM6zB,GAAYvd,MAAS,EAAG4gB,WAAc,EAAGC,OAAU,EAAGC,IAAO,EAAGC,MAAS,GAC/E,OAAQxD,EAAQjjB,EAAEhF,OAAS,IAAMioB,EAAQ7zB,EAAE4L,OAAS,GAkC9C0rB,CAAS1mB,EAAG5Q,IACIs0B,EAGV,KADZA,EAjCqB,SAAC1jB,EAAmB5Q,GACzC,OAAC4Q,EAAE2lB,YAAev2B,EAAEu2B,WAAiB1D,GAAW5N,QAAQrU,EAAE2lB,WAAYv2B,EAAEu2B,YAAvC,EAgC3BgB,CAAe3mB,EAAqB5Q,IACpBs0B,EA9BT,SAAC1jB,EAAY5Q,GAE1B,IAAMw3B,GAAqBlhB,OAAO,EAAM4gB,YAAY,GAEpD,OADcM,EAAiB5mB,EAAEhF,OAAS4rB,EAAiBx3B,EAAE4L,MAC9C,GAAKgF,EAAEG,KAAO,IAAM/Q,EAAE+Q,KAAO,GA4BrC0mB,CAAO7mB,EAAG5Q,IAcnB,kBAeE,WAAYqT,GATW3U,aAAUs4B,GAElBt4B,eAEAA,wBAAoB,EACZA,SAAM,EACNA,cAAU,EAI/BA,KAAKkyB,QAAUvd,EACf3U,KAAKiyB,eAAiB,IAAImF,GAAeziB,GACzCqkB,EAAqBj3B,EAAIk3B,EAAU71B,WAAYpD,KAAM+B,EAAI/B,OAiP7D,OA7OEi5B,oBAAA,WACEj5B,KAAKk5B,QAAO,GACZl5B,KAAKm5B,iBACEn5B,KAAKo5B,cAIdH,iBAAA,SAAKI,GACHr5B,KAAKm5B,OAASn5B,KAAKs5B,WAAWt5B,KAAKm5B,OAAQn5B,KAAKu5B,QAAUF,GAAar5B,KAAKu5B,SAC5Ev5B,KAAKw5B,SAAU,GAGTP,yBAAR,WACEj5B,KAAKw5B,SAAWx5B,KAAKiS,QAGfgnB,uBAAR,SAAmB73B,EAAKi4B,GACtB,IAAMI,EAAer4B,EAAIL,IAAI,SAACmJ,EAAM3B,GAAQ,OAAG2B,OAAM3B,SASrD,OAPAkxB,EAAaxnB,KAAK,SAACynB,EAAUC,GAC3B,IAAMC,EAAUP,EAAUK,EAASxvB,KAAMyvB,EAASzvB,MAClD,OAAmB,IAAZ0vB,EACHF,EAASnxB,IAAMoxB,EAASpxB,IACxBqxB,IAGCH,EAAa14B,IAAI,SAAA84B,GAAW,OAAAA,EAAQ3vB,QAQ7C+uB,kBAAA,SAAMz0B,GAAN,WACExE,KAAK85B,eAELt1B,EAAM6C,GAASkC,KAAM,GAAImrB,UAAY3I,KAAM,IAAMvnB,GACjD,IAAMyuB,EAAQjzB,KAAKizB,QACfjzB,KAAKo5B,cAAcnG,EAAMtqB,KAAK3I,KAAKo5B,cAcvC,IAVA,IASIW,EATe/H,EACX3V,EASCvc,EAAI,EAAGA,EAAImzB,EAAMxzB,UAEpBs6B,GAA8C,IAAtC/5B,KAAKu5B,QAAQtG,EAAMnzB,GAAIi6B,EAAK/H,OAFRlyB,IAAK,CAIrC,IAAMmN,GAdW+kB,EAcSiB,EAAMnzB,QAb1Buc,GAAAA,EAAQ2V,EAAK3V,MAAM7X,EAAK0C,EAAKgrB,YACjB7V,QAAO2V,OAAMgI,OAAQhI,EAAKgG,cAAc3b,KAc1D0d,GAASA,GAAQ9sB,GAAWA,EAAQ+sB,OAASD,EAAKC,OAAU/sB,EAAU8sB,EAGxE,OAAOA,GAITd,iBAAA,SAAKgB,GACH,IAAIA,IAAOA,EAAIC,iBAAf,CAEA,IAAMvlB,EAAS3U,KAAKkyB,QAChBiI,EAAOxlB,EAAOylB,WACdpb,EAASrK,EAAOC,aAEdpQ,GACJ+E,KAAM4wB,EAAK5wB,OAAQmrB,OAAQyF,EAAKzF,SAAU3I,KAAMoO,EAAKpO,QAGjDgO,EAAO/5B,KAAKqc,MAAM7X,GAEJyV,IACjBxU,EAAU,SAAC40B,GAAmB,OAAAF,EAAK31B,IAAI61B,GAAQ,MAC/CpnB,GAAYqnB,MAAO,SAACxgB,GAAwB,OAAAkF,EAAOub,GAAGzgB,EAAI5W,MAAO4W,EAAI3V,OAAQ2V,EAAItM,YACjF/L,EAAGwR,IAAc,SAACtL,GAAwB,OAAAqX,EAAOub,GAAG5yB,EAAOzE,QAASyE,EAAOxD,SAAUwD,EAAO6F,cAG/FgtB,CAAYT,GAAQA,EAAK/H,KAAKsF,QAAQyC,EAAK1d,MAAO7X,EAAKmQ,MAIzDskB,mBAAA,SAAO3pB,GAAP,WACE,IAAgB,IAAZA,EAIF,OAAOtP,KAAKy6B,QAAUz6B,KAAKy6B,SAAWz6B,KAAKkyB,QAAQkI,WAAWM,SAAS,SAAAT,GAAO,OAAA/yB,EAAKyzB,KAAKV,KAHxFj6B,KAAKy6B,SAAWz6B,KAAKy6B,iBACdz6B,KAAKy6B,SAUhBxB,mBAAA,SAAO2B,GACL,IAAMT,EAAOn6B,KAAKkyB,QAAQ2I,gBACtBD,EACF56B,KAAKsb,SAAW6e,EAAK31B,MAGnB21B,EAAK31B,QAAUxE,KAAKsb,UAExB6e,EAAK31B,IAAIxE,KAAKsb,UAAU,IAa1B2d,iBAAA,SAAKpB,EAAwB1zB,EAAoBqJ,GAC/C,IAAM4F,EAAU5F,KAAaA,EAAQ4F,QACrCpT,KAAKkyB,QAAQkI,WAAW51B,IAAIqzB,EAAWtN,OAAOpmB,OAAeiP,IAsB/D6lB,iBAAA,SAAKpB,EAAwB1zB,EAAcqJ,GACzC,IAAIhJ,EAAMqzB,EAAWtN,OAAOpmB,GAC5B,GAAW,MAAPK,EAAa,OAAO,KAExBgJ,EAAUA,IAAastB,UAAU,GAEjC,IAAMlpB,EAAM5R,KAAKkyB,QAAQkI,WAAWv3B,OAC9Bk4B,EAAUnpB,EAAIopB,YAMpB,GALKD,GAAmB,OAARv2B,IACdA,EAAM,IAAMoN,EAAIqpB,aAAez2B,GAEjCA,EAxPJ,SAAwBA,EAAau2B,EAAkBD,EAAmBI,GACxE,MAAiB,MAAbA,EAAyB12B,EACzBu2B,EAAgBpQ,GAAqBuQ,GAAY12B,EACjDs2B,EAAiBI,EAAS77B,MAAM,GAAKmF,EAClCA,EAoPC22B,CAAe32B,EAAKu2B,EAASvtB,EAAQstB,SAAUlpB,EAAIspB,aAEpD1tB,EAAQstB,WAAat2B,EACxB,OAAOA,EAGT,IAAM42B,GAAUL,GAAWv2B,EAAM,IAAM,GACjC62B,EAAUzpB,EAAI0pB,OACdA,EAA0B,KAAZD,GAA8B,MAAZA,EAAkB,GAAK,IAAMA,EAEnE,OAAQzpB,EAAI2pB,WAAY,MAAO3pB,EAAI4pB,OAAQF,EAAMF,EAAO52B,GAAKjC,KAAK,KAgBpE02B,iBAAA,SAAKjH,GAAL,WACE,IAAKoF,GAAeqE,UAAUzJ,GAAO,MAAM,IAAI3rB,MAAM,gBAOrD,OANA2rB,EAAK3f,IAAMrS,KAAK07B,MAChB1J,EAAKnb,SAAWmb,EAAKnb,UAAY,EAEjC7W,KAAKm5B,OAAOxwB,KAAKqpB,GACjBhyB,KAAKw5B,SAAU,EAER,WAAM,OAAAtyB,EAAKgsB,WAAWlB,KAI/BiH,uBAAA,SAAWjH,GACT3pB,EAAWrI,KAAKm5B,OAAQnH,IAI1BiH,kBAAA,WAEE,OADAj5B,KAAK85B,eACE95B,KAAKm5B,OAAO95B,SAIrB45B,sBAAA,SAAU3B,GACR,IAAMqE,EAA8BC,GAAatE,GAEjDt3B,KAAKo5B,aAAep5B,KAAKiyB,eAAelvB,OAAOhB,GAAI,GAAO45B,GAC1D37B,KAAKw5B,SAAU,GAIjBP,oBAAA,SAAQ3B,GACN,IAAMqE,EAA8BC,GAAatE,GAKjDt3B,KAAKgyB,KAAKhyB,KAAKiyB,eAAelvB,OAHE,SAAC84B,EAAUlnB,GACvC,OAA4C,IAA5CA,EAAO0Q,QAAQuD,kBAAkB5b,UAAkB,QAAQrK,KAAKk5B,EAAStyB,OAE/BoyB,KAIhD1C,iBAAA,SAAKlmB,EAAqCukB,EAAkC9pB,GAC1E,IAAMwkB,EAAOhyB,KAAKiyB,eAAelvB,OAAOgQ,EAASukB,GAGjD,OAFInyB,EAAUqI,GAAWA,EAAQqJ,YAAWmb,EAAKnb,SAAWrJ,EAAQqJ,UACpE7W,KAAKgyB,KAAKA,GACHA,GAITiH,2BAAA,SAAe9T,QACC3e,IAAV2e,IAAqBA,GAAQ,GACjCnlB,KAAK87B,kBAAoB3W,oBAIPmS,GACpB,KAAK3yB,EAAW2yB,IAAa7xB,EAAS6xB,IAAa71B,EAAGwR,GAAHxR,CAAgB61B,IAAarkB,GAAYqnB,MAAMhD,IAChG,MAAM,IAAIjxB,MAAM,4FAElB,OAAO1B,EAAW2yB,GAAWA,EAA8Bv1B,EAAIu1B,GChTjE,kBA+IE,aAAA,WA9IQt3B,iBACAA,qBAEAA,6BACAA,mBAEDA,iBACL+7B,iBAAkB/7B,KAAK+7B,iBAAiBl1B,KAAK7G,MAC7Cg8B,mBAAoBh8B,KAAKg8B,mBAAmBn1B,KAAK7G,MACjDi8B,mBAAoB,WAAM,OAAA/0B,EAAKg1B,UAC/BC,mBAAoB,WAAM,OAAAj1B,EAAKk1B,cAC/BC,QAAS,SAACvK,GAER,OADA5qB,EAAKo1B,WAAW3zB,KAAKmpB,GACd,WAAM,OAAAzpB,EAAWnB,EAAKo1B,WAAYxK,MAkR/C,OApLSyK,wBAAP,SAA6BpsB,EAAsBqsB,gBAAAA,MAIjD,IAAMC,EAA0BD,EAAY17B,MAAM,KAC9C47B,EAAaD,EAAc,IAAM,WACjCE,EAAsBl3B,EAASg3B,EAAc,IAAMA,EAAc,GAAK,IAIpEG,EAAwB,wBAAwBj6B,KAAK+5B,GACvDE,IAEFD,EAAsBC,EAAsB,GAC5CF,EAAaE,EAAsB,IAGR,MAAzBF,EAAWpP,OAAO,KACpBoP,EAAaA,EAAWxiB,OAAO,GAC/ByiB,EAAsB,IAIF,kBACJh6B,KAAKg6B,GAGrBA,EAFoBA,EAAoB77B,MAAM,KAC3CO,gBAASw7B,EAAQt7B,GAAM,OAAAs7B,EAAOj5B,QAASuM,GACR5P,KACD,MAAxBo8B,IACTA,EAAsBxsB,EAAQ5P,MAGhC,OAASm8B,aAAYC,wBAKfJ,6BAAR,SAAyBpsB,GACvB,OAAOnQ,KAAK88B,aAAe3sB,GAAWnQ,KAAK88B,cAGrCP,+BAAR,SAA2BQ,EAAkBC,GAC3Ch9B,KAAKi9B,qBAAqBF,GAAYC,GAGxCT,6BAAA,SAAiBhzB,EAAkB8lB,GACjC,IAAM6N,EAAal9B,KAAKi9B,qBAAqB5N,EAAKhhB,OAClD,IAAK6uB,EAAY,MAAM,IAAI72B,MAAM,2DAA6DgpB,EAAKhhB,OACnG,IAAM8uB,EAAOD,EAAW3zB,EAAM8lB,GAC9B,OAAO3pB,EAAQy3B,GAAQA,GAAQA,IAWjCZ,iCAAA,SAAqB7qB,GACnBe,GAAM2qB,sBAAsB,cAAe1rB,GAC3CrJ,EAAWrI,KAAKo8B,aAAc1qB,IAGhC6qB,+BAAA,SAAmB7qB,GACjBe,GAAM2qB,sBAAsB,iBAAwB1rB,GACpD1R,KAAKo8B,aAAazzB,KAAK+I,IAIzB6qB,iBAAA,WAAA,WACQc,EACFr9B,KAAKk8B,SAASn7B,IAAI,SAAA4Q,GAAO,OAACA,EAAIhO,IAAKgO,KAAMtQ,OAAOod,OAYpD,WAAyB5b,GAEvB,IADA,IAAIsN,EAAuBtN,EAAOgP,SAASC,SAAUwrB,EAAQ,IACpDA,GAASntB,EAAQvM,QAAQuM,EAAUA,EAAQvM,OACpD,OAAO05B,EAIT,IAAMC,EAAe78B,EAAM,SAAC88B,EAASC,EAAQ9iB,EAAMC,GAAU,OAAA6iB,GAAUD,EAAQ7iB,GAAQ6iB,EAAQ5iB,MAqBzF8iB,EAAe19B,KAAKk8B,SAASjqB,KAAKsrB,EAnCxC,SAAqB9rB,GACnB,IAAMksB,EAAa,SAACxtB,GAChB,OAAAA,GAAWA,EAAQvM,OAAS+5B,EAAWxtB,EAAQvM,QAAU,EAAI,GACjE,OAAuC,IAA/B6N,EAAO9N,IAAI7C,MAAM,KAAKrB,OAAkBk+B,EAAWlsB,EAAOrD,kBAgCF,IAAIrN,IAnB3C,SAAC0Q,GAC1B,IAAMmsB,EAAkB12B,EAAKk1B,aAAah4B,OAAOm4B,EAAY9lB,QAAQ4mB,EAAc5rB,IAOnF,OANImsB,EAAgBn+B,OAAS,GAI3Bm+B,EAAgB3rB,KAAKsrB,EAAaM,GAAkB,KAE7CpsB,SAAQC,WAAYksB,EAAgB,MAYzCE,EAAqBJ,EAAa38B,IAAI,SAAAyY,GAAS,OAAAA,EAAM9H,aACrDqsB,EAAwB/9B,KAAKo8B,aAChCh4B,OAAO,SAAAvB,GAAU,OAACoF,EAAQ61B,EAAoBj7B,KAC9C9B,IAAI,SAAA2Q,GAAc,OAAGD,YAAQjL,EAAWkL,gBAE3CgsB,EAAa12B,QAdW,SAACwS,IAGsB,IAAzCtS,EAAKg1B,SAAS9zB,QAAQoR,EAAM/H,SAC9B+H,EAAM/H,OAAOusB,cAAcxkB,EAAM9H,cAYrC,IAAMusB,EAAyBP,EAAa99B,OAAOm+B,GACnD/9B,KAAKs8B,WAAWt1B,QAAQ,SAAAC,GAAM,OAAAA,EAAGg3B,KACjCxrB,GAAMyrB,cAAcD,IAkBtB1B,2BAAA,SAAe9qB,GACbgB,GAAM0rB,4BAA4B,iBAAkB1sB,GACpD,IAAM2sB,EAAUp+B,KAAKk8B,SAQrB,OANIkC,EAAQh6B,OADc,SAACuN,GAAsB,OAAAA,EAAIhO,MAAQ8N,EAAO9N,KAAOgO,EAAItD,QAAUoD,EAAOpD,QAC1D5O,QACpCgT,GAAM0rB,4BAA4B,+BAAgC1sB,GAEpE2sB,EAAQz1B,KAAK8I,GACbzR,KAAK26B,OAEE,YAEQ,IADDyD,EAAQh2B,QAAQqJ,IAK5BgB,GAAM0rB,4BAA4B,mBAAoB1sB,GACtDpJ,EAAW+1B,EAAX/1B,CAAoBoJ,IAJlBgB,GAAM0rB,4BAA4B,uCAAwC1sB,KAahF8qB,sBAAA,WACE,OAAOv8B,KAAKk8B,SAASn7B,IAAIT,EAAK,SAQhCi8B,mBAAA,WACE,OAAOv8B,KAAKk8B,SAAS93B,OAAO9D,EAAK,YAAYS,IAAIT,EAAK,UAlNjDi8B,UAAU,SAACc,EAAsC5rB,GAAyB,OAAA,SAACC,GAEhF,GAAID,EAAOpD,QAAUqD,EAAWG,SAASxD,MAAO,OAAO,EAGvD,IAAMgwB,EAAK3sB,EAAWG,SAChBysB,EAAaD,EAAG/rB,YAAYxR,MAAM,KAClCy9B,EAAc9sB,EAAO9N,IAAI7C,MAAM,KAIrC,IAAK0G,EAAO82B,EAAYC,EAAYl/B,MAAM,EAAIi/B,EAAW7+B,SACvD,OAAO,EAIT,IAAM++B,EAAa,EAAIF,EAAW7+B,aAAW+G,EACvCi4B,EAAoBF,EAAYl/B,MAAM,EAAGm/B,GAAWj8B,KAAK,KACzDm8B,EAAgBrB,EAAaoB,GAAmBrwB,gBACtD,OAAOiwB,EAAG9rB,wBAA0BmsB,GAAiBA,EAAcn+B,2BC7HvE,aAMEP,YAAsB,IAAI2sB,GAwB1B3sB,8BAA2B,EAG3BA,uBAAoB,IAAI4M,MAAsB,GAG9C5M,2BAAwB,IAAI4M,MAAsB,GAOpD,OALE+xB,oBAAA,WACE3+B,KAAK4oB,kBAAkBgW,QACvB5+B,KAAK6+B,sBAAsBD,QAC3B5+B,KAAKyT,WAAa,WC/ChBqrB,GAAW,SAAC33B,GACd,OAAAA,EAAK9F,OAAO,SAAC0G,EAAKX,GAAQ,OAACW,EAAIX,GAAOjB,EAAeiB,GAAMW,IAAQ2qB,QAASlf,KAG3DurB,IAAuB,MAAO,OAAQ,SAAU,OAAQ,YACxDC,IAAqB,OAAQ,WAAY,OAAQ,WAAY,YAAa,cAC1EC,IAAU,OAAQ,kBAAmB,aAAc,uBACnDC,IAAY,OAAQ,OAAQ,UAAW,YAAa,QAAS,OAAQ,cACrEC,IAAW,iBAAkB,SAAU,OAAQ,uBA8BlE,WAAYxqB,EAAkByqB,gBAAAA,MAC5Bp/B,KAAK2U,OAASA,EACd3U,KAAKizB,SACLjzB,KAAK6C,UAGL,IAAMw8B,EAAmB,WAAM,OAAA1qB,EAAOkmB,iBACtC7B,EAAqBqG,EAAkBr/B,KAAMq/B,EAAkBN,GAAqBK,GAEpF,IAAME,EAAiB,WAAM,OAAA3qB,EAAO2qB,gBACpCtG,EAAqBsG,EAAgBt/B,KAAK6C,OAAQy8B,EAAgBN,GAAmBI,GAErF,IAAMG,EAAM,WAAM,OAAA5qB,EAAO4G,mBACzByd,EAAqBuG,EAAKv/B,KAAK6C,OAAQ08B,EAAKN,IAE5C,IAAM7M,EAAY,WAAM,OAAAzd,EAAOyd,WAC/B4G,EAAqB5G,EAAWpyB,KAAKizB,MAAOb,EAAW8M,IACvDlG,EAAqB5G,EAAWpyB,KAAMoyB,EAAW+M,IAwCrD,OAjCEK,gBAAA,SAAInF,EAASjnB,EAAUlQ,KAEvBs8B,iBAAA,aAEAA,mBAAA,aAEAA,iBAAA,aAEAA,qBAAA,SAAS11B,KAUT01B,kBAAA,WACE,OAASj2B,KAAMvJ,KAAKuJ,OAAQmrB,OAAQ10B,KAAK00B,SAAU3I,KAAM/rB,KAAK+rB,SAGhEyT,oBAAA,aAGAA,iBAAA,SAAKvF,KAELuF,mBAAA,SAAOlwB,KAEPkwB,2BAAA,SAAera,KAEfqa,kBAAA,SAAM3D,KA7EC2D,sBAAwCV,GAASC,IAEjDS,qBAAqCV,GAASE,SCVnDS,GAAkB,gBAgGpB,WACW5E,EACAyE,gBADAzE,EAAoC2E,GAAWE,kCAC/CJ,EAAiCE,GAAWG,oBAD5C3/B,qBAAA66B,EACA76B,oBAAAs/B,EAhFIt/B,SAAMy/B,KACNz/B,gBAAY,EACJA,qBAGvBA,WAAeyS,GAGfzS,iBAAc,IAAIu8B,GAGlBv8B,aAA2B,IAAI2+B,GAG/B3+B,uBAAuC,IAAI4/B,GAAkB5/B,MAM7DA,uBAAuC,IAAIg3B,GAM3Ch3B,eAAuB,IAAIi5B,GAAUj5B,MAGrCA,mBAA+B,IAAIsyB,GAActyB,MAGjDA,kBAAe,IAAI6/B,GAAa7/B,MAGhCA,gBAAyB,IAAIw/B,GAAWx/B,MAGhCA,iBA6CNA,KAAK8/B,YAAY3oB,WAAW4kB,iBAAiB/7B,KAAK+/B,cAAcl8B,QAChE7D,KAAKqlB,QAAQuH,SAAW5sB,KAAK+/B,cAAcl8B,OAC3C7D,KAAKqlB,QAAQpY,QAAUjN,KAAKqlB,QAAQuH,SAAStpB,KAE7CtD,KAAKggC,WAAWhgC,KAAKqlB,SACrBrlB,KAAKggC,WAAWhgC,KAAK4U,cACrB5U,KAAKggC,WAAWhgC,KAAK+/B,eACrB//B,KAAKggC,WAAWhgC,KAAKkY,mBACrBlY,KAAKggC,WAAWhgC,KAAKoyB,WACrBpyB,KAAKggC,WAAWnF,GAChB76B,KAAKggC,WAAWV,GAmFpB,OAtIEW,uBAAA,SAAWD,GACThgC,KAAKkgC,aAAav3B,KAAKq3B,IAazBC,oBAAA,SAAQD,GAAR,WACMA,GAAcr7B,EAAWq7B,EAAWtN,SACtCsN,EAAWtN,QAAQ1yB,OAIrBA,KAAKgW,WAAY,EACjBhW,KAAKkgC,aAAa7gC,QAAQ2H,QAAQ,SAAAkH,GAChC,IACuB,mBAAdA,EAAEwkB,SAA0BxkB,EAAEwkB,QAAQxrB,GAC7CmB,EAAWnB,EAAKg5B,aAAchyB,GAC9B,MAAOiyB,SAwFbF,mBAAA,SAAiCG,EAAa5yB,gBAAAA,MAC5C,IAAM6yB,EAAiB,IAAID,EAAOpgC,KAAMwN,GACxC,IAAK6yB,EAAe9/B,KAAM,MAAM,IAAI8F,MAAM,+CAAiDg6B,GAE3F,OADArgC,KAAKkgC,aAAav3B,KAAK03B,GAChBrgC,KAAKsgC,SAASD,EAAe9/B,MAAQ8/B,GAc9CJ,sBAAA,SAAUM,GACR,OAAOA,EAAavgC,KAAKsgC,SAASC,GAAcr8B,GAAOlE,KAAKsgC,gBClNhE,YAQ4BnxB,GAC1BA,EAAMqxB,cAAc3e,GAAW4e,SAASR,GAAU9wB,EAAMwF,QAAS,IACjExF,EAAMqxB,cAAc3e,GAAW4e,SAASxa,GAAY9W,GAAQ,IAC5DA,EAAMqxB,cAAc3e,GAAW4e,SAAS,eAAgBtxB,GAAQ,IAChEA,EAAMqxB,cAAc3e,GAAW4e,SAAS,eAAgBtxB,EAAMhL,UAAW,IAEzEgL,EAAMsR,WAAWzZ,QAAQ,SAAA9D,GACvBiM,EAAMqxB,cAAc3e,GAAW4e,SAAS,UAAWv9B,GAAQA,KAI/D,IAIMw9B,GAAez4B,GADM,eAAgBge,KAO9B0a,GAAqB,SAACxxB,GACjC,IAGMyxB,EAA4B,SAACznB,GACjC,OAAOunB,GAAavnB,EAAE3O,OAASqX,GAAW4e,SAAStnB,EAAE3O,MAAO,MAAQ2O,GAJxDjV,GAAOiL,EAAMkI,eAAehW,OAAO+I,OAAa/I,OAAOkJ,OAO/DvD,QAAQ,SAACiQ,GACbA,EAAKmH,YAAcnH,EAAKmH,YAAYrd,IAAI6/B,MCxBtCC,GAAmC,SAAC1xB,GACxC,IAAM2xB,EAAW3xB,EAAM2N,KAAKikB,WAC5B,GAAKD,EAAL,CAEA,IAAM9hB,EAAS7P,EAAMwF,OAAOC,aAU5B,OAAIjQ,EAAWm8B,GACNx6B,EAASC,GAAGkK,KAAKqwB,EAAS3xB,IAAQ7B,KAAK8H,GAEzCA,EAAa0rB,GAXpB,WAAsB/gC,GACpB,GAAKA,EACL,OAAIA,aAAkBkT,GAAoBlT,EACtC0F,EAAS1F,GAAgBif,EAAOrX,OAAa5H,EAAQoP,EAAMhL,SAAUgL,EAAM3B,WAC3EzN,EAAc,OAAKA,EAAe,OAC7Bif,EAAOrX,OAAO5H,EAAc,OAAKoP,EAAM2N,KAAM/c,EAAe,QAAKoP,EAAMhL,SAAUgL,EAAM3B,gBADhG,ICTJ,YAAiC2Y,GAC/B,OAAO,SAAC1S,EAAwBvQ,GAG9B,OAAO89B,EAFqB99B,EAAMG,UACW8iB,IAC/B1S,EAAYvQ,IAa9B,IAAM+9B,GAAoCC,GAAwB,UAa5DC,GAAsCD,GAAwB,YAa9DE,GAAqCF,GAAwB,WCtC7DG,GAAqC,SAAClyB,GACxC,OAAA,IAAIyU,GAAezU,EAAMkI,cAAcyF,IAClC0T,YAAY,QAASrhB,GACrB7B,KAAKkG,IAcR8tB,GAA0C,SAACnyB,EAAmBjM,GAChE,OAAA,IAAI0gB,GAAezU,EAAMkI,cAAcyF,IAClCyH,WAAWrhB,EAAMG,WACjBmtB,YAAY,OAAQrhB,GACpB7B,KAAKkG,IAgBR+tB,GAAqC,SAACpyB,GAC1C,OAAA,IAAIyU,GAAezU,EAAMkI,cAAcyF,IACpC0T,YAAY,OAAQrhB,GACpB7B,KAAKkG,IC3CJguB,GAAsC,SAAC/tB,GAC3C,IAAMlN,EAAKD,EAASC,GACdk7B,EAAgBhuB,EAAW4K,MAAM,YACvC,GAAKojB,EAAchiC,OACnB,OAAO8G,EAAGpF,IAAIsgC,EAAc1gC,IAAI,SAAAqR,GAAQ,OAAA7L,EAAGkK,KAAK2B,EAAKsvB,WAAUp0B,KAAKkG,IAgBhEmuB,GAAkC,SAACluB,GACvC,IAAMguB,EAAgBhuB,EAAW4K,MAAM,YACjCujB,EAAenuB,EAAW4K,MAAM,WACtC,GAAKojB,EAAchiC,QAAWmiC,EAAaniC,OAA3C,CAEA,IAAM6f,EAAqB7L,EAAWkB,OAAOmrB,YAE7C8B,EAAa56B,QAAQ,SAACq3B,GAAmB,OAAA/e,EAAMuiB,qBAAqBxD,KACpEoD,EAAcz6B,QAAQ,SAACq3B,GAAmB,OAAA/e,EAAMwiB,mBAAmBzD,KAEnE/e,EAAMqb,SC9BFoH,GAAoB,SAAC5yB,GACzB,IAAMkW,EAAUlW,EAAMwF,OAAO0Q,QAUvB2c,EAAyB,WAEzB3c,EAAQ5R,aAAetE,IAAOkW,EAAQ5R,WAAa,OAGzDtE,EAAM8yB,aAbuB,WAC3B5c,EAAQwZ,sBAAsBhW,QAAQ1Z,GACtCkW,EAAQuH,SAAWzd,EAAMmX,MACzBjB,EAAQpY,QAAUoY,EAAQuH,SAAStpB,KAEnC4+B,GAAK/yB,EAAMhL,SAAUkhB,EAAQlhB,UAQa0S,SAAU,MACtD1H,EAAMhD,QAAQmB,KAAK00B,EAAwBA,ICvBvCG,GAA8B,SAAC1uB,GACnC,IAAMjG,EAAUiG,EAAWjG,UACrBwR,EAAuBvL,EAAWkB,OAAOC,aACzCkc,EAAwBrd,EAAWkB,OAAOyd,UAMhD,GAAuB,QAAnB5kB,EAAQ9F,QAAoB8F,EAAQ8N,UAAY0D,EAAO4N,SAASkB,UAAW,CAC7E,IAAMsU,GAAehvB,QAA8B,YAArB5F,EAAQ8N,UACtCwV,EAAWnoB,KAAKqW,EAAO4N,SAASkB,UAAUtpB,IAAKwa,EAAO7a,OAAQi+B,GAGhEtR,EAAWuR,QAAO,ICMdC,GAAiC,SAAC7uB,GACtC,IAAMkB,EAASlB,EAAWkB,OA4B1B,IAAMwP,EAAW1Q,EAAWgN,WACvBrc,OAAO,SAAAlB,GAAS,QAAEA,EAAMG,UAAUk/B,WAClCxhC,IAAI,SAAAmC,GAAS,OAAAs/B,GAAc/uB,EAAYvQ,KAE5C,OAAOoD,EAASC,GAAGpF,IAAIgjB,GAAU7W,KA9BjC,WACE,GAAyD,QAArDmG,EAAWwT,qBAAqBzZ,UAAU9F,OAAkB,CAG9D,IAAM+6B,EAAOhvB,EAAWqL,cACxB,OAAOnK,EAAOC,aAAajN,OAAO86B,EAAKC,aAAcD,EAAKt+B,SAAUs+B,EAAKj1B,WAK3E,IAAM2sB,EAAOxlB,EAAOylB,WACdr6B,EAASo6B,EAAK9d,MAAM8d,EAAKwI,SACzB3Q,EAAOjyB,GAAUA,EAAOiyB,KAI9B,GAAIA,GAAsB,UAAdA,EAAK9kB,KAAkB,CACjC,IAAMhK,EAAS8uB,EAAmB9uB,MAC5BiB,EAASpE,EAAOsc,MACtB,OAAO1H,EAAOC,aAAajN,OAAOzE,EAAOiB,EAAQsP,EAAWjG,WAI9DmH,EAAOylB,WAAWO,UAqBtB,YAA8BlnB,EAAwBvQ,GACpD,IAAM0/B,EAAa1/B,EAAMG,UAAUk/B,SAG/Bp2B,EAAUy2B,EAAqB,SACnC,IAAKz2B,EAAS,CAaZA,EAAUy2B,EAAqB,SAC3Bt8B,EAASC,GAAGkK,KAAKmyB,EAAWnvB,EAAYvQ,IACnCoK,KAKX,SAA6BvN,GACvBA,GAAU4F,MAAMD,QAAQ3F,EAAOwf,SACjCxf,EAAOwf,OAAOvY,QAAQ,SAAAuP,GAAU,OAAA9C,EAAWkB,OAAOorB,cAAcvN,SAASjc,KAE3E,OAAOxW,IAREuN,KAfO,SAACvN,GAIf,cAHOmD,EAAMq/B,gBACNr/B,EAAMG,UAAUk/B,gBAChBK,EAAqB,SACrB7iC,GAGK,SAAC2U,GAEb,cADOkuB,EAAqB,SACrBt8B,EAASC,GAAGiG,OAAOkI,KAiB9B,OAAOvI,ECtGT,kBAWA,OATE,SAAmB5L,EACAqT,EACAivB,EACA9pB,EACAQ,EACAlE,EACAF,EACAG,gBAHAiE,mBACAlE,EAAuCrB,GAAe8uB,4BACtD3tB,EAAsCnB,GAAe+uB,2BACrDztB,MAPAtV,UAAAO,EACAP,eAAA4T,EACA5T,eAAA6iC,EACA7iC,uBAAA+Y,EACA/Y,iBAAAuZ,EACAvZ,sBAAAqV,EACArV,qBAAAmV,EACAnV,iBAAAsV,MCHrB,YAAqBnG,GACnB,IAAM6zB,EAAgB7zB,EAAM+Y,iBAC5B,GAAK8a,EAAL,CAEAvwB,GAAMwwB,uBAAuB9zB,GAE7B,IAAMgZ,EAAUhZ,EAAMwF,OAAO0Q,QAAQ5R,WASrC,MAJsB,kBAAlBuvB,GAAqC7a,GACvCA,EAAQ+a,QAGH71B,GAAU8yB,UAAU3qB,aClB7B,YAA+BrG,GAC7B,IAAKA,EAAMoW,QACT,MAAM,IAAIlf,MAAM8I,EAAM5C,SAI1B,ICqBW42B,IACT7nB,UAAc,EACdtI,SAAc,KACd7P,SAAc,EACdigC,QAAc,EACdzb,QAAc,EACd0b,UACAp2B,QAAc,WAAM,OAAA,MACpBvF,OAAc,yBAuGd,WAAYwqB,GA1CZlyB,sBAAmB,EAMXA,oBAERA,yBAEQA,uBAiCNA,KAAKkyB,QAAUA,EACflyB,KAAKsf,MAAQ4S,EAAQ4N,YACrB9/B,KAAKsjC,sBACLtjC,KAAKmX,WAA0C6hB,EAAqBj3B,EAAI/B,SAAW+B,EAAI/B,OACrF,kBACA,eACA,gBACA,aACA,aAGFA,KAAKujC,mBACLvjC,KAAKwjC,oBACLxjC,KAAKyjC,+BACLvR,EAAQ7M,QAAQwZ,sBAAsB6E,QAAQ/C,IA8LlD,OApKEf,qBAAA,SAAStoB,EAA6BxN,EAAkC0D,KAExEoyB,qBAAA,SAAStoB,EAA6BxN,EAA4B0D,KAElEoyB,oBAAA,SAAQtoB,EAA6BxN,EAA4B0D,KAEjEoyB,mBAAA,SAAOtoB,EAA6BxN,EAAiC0D,KAErEoyB,qBAAA,SAAStoB,EAA6BxN,EAAiC0D,KAEvEoyB,oBAAA,SAAQtoB,EAA6BxN,EAAiC0D,KAEtEoyB,qBAAA,SAAStoB,EAA6BxN,EAA4B0D,KAElEoyB,sBAAA,SAAUtoB,EAA6BxN,EAA4B0D,KAEnEoyB,oBAAA,SAAQtoB,EAA6BxN,EAA4B0D,KAMjEoyB,oBAAA,SAAQjrB,GACNzQ,GAAOlE,KAAKmY,kBAAkBnR,QAAQ,SAAC28B,GAAiC,OAAAA,EAAW38B,QAAQ,SAAAyN,GACzFA,EAAKK,eAAgB,EACrBzM,EAAWs7B,EAAYlvB,QAc3BmrB,mBAAA,SAAO1gB,EAAsBJ,GAC3B,OAAO,IAAImH,GAAW/G,EAAUJ,EAAa9e,KAAKkyB,UAI5C0N,8BAAR,WACE,IAAMgE,EAAQ90B,sBACR+0B,EAAK7vB,GACL8vB,EAAQ9jC,KAAK+jC,eAInB/jC,KAAKgkC,aAAa,WAAaJ,EAAMlqB,OAAS,EAAKoqB,EAAMhnB,IAHrC,EAGsD+mB,EAAGI,oBAAqBJ,EAAGK,aAFjF,GAIpBlkC,KAAKgkC,aAAa,WAAaJ,EAAMlb,OAAS,EAAKob,EAAMhnB,IAEzD9c,KAAKgkC,aAAa,UAAaJ,EAAM/vB,IAAS,EAAKiwB,EAAMhnB,IACzD9c,KAAKgkC,aAAa,SAAaJ,EAAM/vB,IAAS,IAAKiwB,EAAMtjB,SARf,GAS1CxgB,KAAKgkC,aAAa,WAAaJ,EAAM/vB,IAAS,IAAKiwB,EAAMvjB,UACzDvgB,KAAKgkC,aAAa,UAAaJ,EAAM/vB,IAAS,IAAKiwB,EAAMrjB,UACzDzgB,KAAKgkC,aAAa,WAAaJ,EAAM/vB,IAAS,IAAKiwB,EAAMhnB,IAEzD9c,KAAKgkC,aAAa,YAAaJ,EAAM1a,QAAS,EAAK4a,EAAMhnB,IAbrC,EAasD+mB,EAAGI,oBAAqBJ,EAAGM,WAZjF,GAapBnkC,KAAKgkC,aAAa,UAAaJ,EAAM51B,MAAS,EAAK81B,EAAMhnB,IAdrC,EAcsD+mB,EAAGI,oBAAqBJ,EAAGM,WAbjF,IAiBdvE,6BAAR,WACU,IAAAhoB,8BAAO7H,mCAEf/P,KAAKokC,gBAAgB,KAAMr0B,GAC3B/P,KAAKokC,gBAAgB,OAAQr0B,GAC7B/P,KAAKokC,gBAAgB,UAAWxsB,GAChC5X,KAAKokC,gBAAgB,WAAYxsB,GACjC5X,KAAKokC,gBAAgB,WAAYxsB,IAInCgoB,yBAAA,SAAar/B,EACAqT,EACAivB,EACA9pB,EACAQ,EACAlE,EACAF,EACAG,gBAHAiE,mBACAlE,EAAqCrB,GAAe8uB,4BACpD3tB,EAAmCnB,GAAe+uB,2BAClDztB,MACX,IAAMvB,EAAY,IAAIswB,GAAoB9jC,EAAMqT,EAAWivB,EAAW9pB,EAAmBQ,EAAalE,EAAkBF,EAAiBG,GAEzItV,KAAKskC,YAAY37B,KAAKoL,GACtBmS,GAAUlmB,KAAMA,KAAM+T,IAIhB6rB,uBAAR,SAAmBpnB,GAKjB,OAJ4BrT,EAAUqT,GAClCxY,KAAKskC,YAAYlgC,OAAO,SAAA8I,GAAQ,OAAAA,EAAK0G,YAAc4E,IACnDxY,KAAKskC,YAAYjlC,SAEM4S,KAAK,SAACiH,EAAGC,GAClC,IAAMorB,EAAarrB,EAAEtF,UAAYuF,EAAEvF,UACnC,OAAsB,IAAf2wB,EAAmBrrB,EAAE2pB,UAAY1pB,EAAE0pB,UAAY0B,KAiBlD3E,4BAAR,SAAwBr/B,EAAcikC,GACpCxkC,KAAK+jC,eAAexjC,IAAUA,OAAMoX,MAAO6sB,IAIrC5E,0BAAR,WACE,OAAO5/B,KAAK+jC,gBAIPnE,qBAAP,SAAgBzZ,GACd,OAAOnmB,KAAKmY,iBAAiBgO,IAIvByZ,yCAAR,WACE,IAAM6E,EAAMzkC,KAAKsjC,mBAEjBmB,EAAIC,gBAA6C1kC,KXhT/B2kC,YAAaC,IWiT/BH,EAAItE,QFrSqC,SAACjoB,GAC1C,OAAAA,EAAkB2sB,YAAaC,IAAejuB,UAAW,OEoSnCkuB,CAA8B/kC,MACpDykC,EAAIO,QDrTqC,SAAC9sB,GAC1C,OAAAA,EAAkB2sB,YAAaI,IAAyBpuB,UAAW,MCoT7CquB,CAA8BllC,MAGpDykC,EAAI1D,WVvS8B,SAAC7oB,GACnC,OAAAA,EAAkBitB,SAAUroB,GAAI,SAAC5Z,GAAU,QAAEA,EAAM69B,aAAcF,IUsS3CuE,CAAuBplC,MAG7CykC,EAAIY,OT3S0B,SAACntB,GAC/B,OAAAA,EAAkBmtB,QAAS7kB,QAAS,SAAAtd,GAAS,QAAEA,EAAMmiC,SAAUpE,IS0SzCqE,CAAmBtlC,MACzCykC,EAAIc,ST/R4B,SAACrtB,GACjC,OAAAA,EAAkBqtB,UAAWhlB,SAAU,SAAArd,GAAS,QAAEA,EAAMqiC,WAAYpE,IS8R9CqE,CAAqBxlC,MAC3CykC,EAAIgB,QTnR2B,SAACvtB,GAChC,OAAAA,EAAkButB,SAAUhlB,SAAU,SAAAvd,GAAS,QAAEA,EAAMuiC,UAAWrE,ISkR5CsE,CAAoB1lC,MAG1CykC,EAAIkB,aRxTgC,SAACztB,GACrC,OAAAA,EAAkBitB,WAAY9D,IAAoBxqB,SAjBjB,MQwUX+uB,CAAyB5lC,MAC/CykC,EAAIoB,YRvSgC,SAAC3tB,GACrC,OAAAA,EAAkButB,SAAUhlB,SAAU1e,GAAI,IAASu/B,IAAoBzqB,SAnCtC,MQyUXivB,CAAyB9lC,MAC/CykC,EAAIsB,WRrRgC,SAAC7tB,GACvC,OAAAA,EAAkB8tB,YAAazE,IAAoB1qB,SAtDhB,MQ0UXovB,CAAyBjmC,MAG/CykC,EAAIyB,UP9TiC,SAAChuB,GACtC,OAAAA,EAAkB8tB,YAAaxE,IO6TT2E,CAA0BnmC,MAChDykC,EAAI9C,cPrS6B,SAACzpB,GAClC,OAAAA,EAAkB+pB,aAAcN,IOoSVyE,CAAsBpmC,MAG5CykC,EAAI4B,cNrTiC,SAACnuB,GACtC,OAAAA,EAAkBysB,YAAa5C,IMoTTuE,CAA0BtmC,MAGhDykC,EAAItC,ULjUyB,SAACjqB,GAC9B,OAAAA,EAAkB+pB,aAAcE,IAAatrB,SAAU,OKgUjC0vB,CAAkBvmC,MAGxCykC,EAAIlC,SJ7R4B,SAACrqB,GACjC,OAAAA,EAAkB2sB,UAAWpkB,SAAU,SAACvd,GAAU,QAAEA,EAAMq/B,WAAYD,II4RhDkE,CAAqBxmC,0BC1R7C,WAAoB2U,GAAA3U,YAAA2U,EA5BpB3U,yBA2dQA,0BAAgD,SAA8BymC,GAChFA,aAAmBpgC,OAASogC,EAAQC,OACtCh4B,QAAQnC,MAAMk6B,GACd/3B,QAAQnC,MAAMk6B,EAAQC,QACbD,aAAmBp5B,IAC5BqB,QAAQnC,MAAMk6B,EAAQ1hC,YAClB0hC,EAAQr5B,QAAUq5B,EAAQr5B,OAAOs5B,OACnCh4B,QAAQnC,MAAMk6B,EAAQr5B,OAAOs5B,QAE/Bh4B,QAAQnC,MAAMk6B,IAvchB,IACME,EAAW7hC,OAAOqC,KAAK04B,EAAaz8B,WAAWgB,OAAOpD,EAAIiH,GAD/C,UAAW,WAAY,SAAU,iBAElD+wB,EAAqBj3B,EAAI89B,EAAaz8B,WAAYpD,KAAM+B,EAAI/B,MAAO2mC,GA+gBvE,OAviBE7hC,sBAAI+6B,8BAAJ,WAAmB,OAAO7/B,KAAK2U,OAAO0Q,QAAQ5R,4CAM9C3O,sBAAI+6B,0BAAJ,WAA4B,OAAO7/B,KAAK2U,OAAO0Q,QAAQlhB,wCAMvDW,sBAAI+6B,2BAAJ,WAAgB,OAAO7/B,KAAK2U,OAAO0Q,QAAQpY,yCAM3CnI,sBAAI+6B,4BAAJ,WAAiB,OAAO7/B,KAAK2U,OAAO0Q,QAAQuH,0CAU5CiT,oBAAA,WACE7/B,KAAK6U,oBAAoBrB,GACzBxT,KAAK4mC,qBAcC/G,sCAAR,SAAkC3gB,EAAsB2nB,GAAxD,WACQnP,EAAY7Y,GAAUioB,gBAAgB9mC,KAAK2U,OAAOorB,cAAe7gB,GACjEmG,EAAUrlB,KAAK2U,OAAO0Q,QACtB0hB,EAAc,WAAM,OAAA1hB,EAAQuD,kBAAkBoe,YAC9CC,EAASF,IACTG,EAAgB,IAAIt6B,GAAyB5M,KAAK4mC,iBAAiBvnC,SACnEylB,EAAW,IAAIlB,GAAe1E,GAAU4F,WAExCqiB,EAAmB,SAACpnC,GACxB,GAAMA,aAAkBkT,GAAxB,CAIA,IAAItL,EAAuB5H,EAI3B,OAFA4H,EAAST,EAAKS,OAAOA,EAAO+6B,aAAc/6B,EAAOxD,SAAUwD,EAAO6F,YAEtD+X,QAIRwhB,MAAkBE,EACb55B,GAAUO,aAAa4H,YAGzBtO,EAAKixB,aAAaxwB,EAAO+6B,aAAc/6B,EAAOxD,SAAUwD,EAAO6F,WAP7DH,GAAU23B,QAAQr9B,EAAO4E,SAASiJ,cAkB7C,OARA,aACE,IAAM4xB,EAAeF,EAAcG,UACnC,YAAqB7gC,IAAjB4gC,EAAmC/5B,GAAU23B,QAAQ6B,EAAQt6B,SAASiJ,YAEnDlP,EAASC,GAAGkK,KAAK22B,EAAaP,EAASnP,EAAW5S,IACnDxX,KAAK65B,GAAkB75B,KAAK,SAAAvN,GAAU,OAAAA,GAAUunC,MAGjEA,IA2BTzH,sBAAA,SAAU/1B,GAER,OADA9J,KAAK4mC,iBAAiBj+B,KAAKmB,GACpB,WACLzB,EAAWrI,KAAK4mC,iBAAhBv+B,CAAkCyB,IAClCjD,KAAK7G,OAgDT6/B,mBAAA,SAAOzf,GACL,OAAOpgB,KAAKm4B,aAAan4B,KAAKiN,QAASjN,KAAKmE,QAC1CwjB,QAAQxiB,EAAUib,IAAeA,EACjCjd,SAAS,EACTigC,QAAQ,KA4CZvD,eAAA,SAAG/iB,EAAiB3Y,EAAoBqJ,GACtC,IACM+5B,EAAYxjC,GAASyJ,GADJwF,SAAUhT,KAAK4sB,SAAUzpB,SAAS,GACPggC,IAClD,OAAOnjC,KAAKm4B,aAAarb,EAAI3Y,EAAQojC,IAUvC1H,mBAAA,SAAO6C,EAAyBv+B,EAAoBqJ,GAElD,gBAFkDA,MAE9C5I,EAAS4I,EAAQma,UAAkBna,EAAQma,OAAQpnB,KACrD,MAAM,IAAI8F,MAAM,+BAClB,IAAMuT,EAAM5Z,KAAK2U,OAAOorB,cAGxB,GAFAvyB,EAAQ4S,aAAiC,IAAnB5S,EAAQma,OAAkB/N,EAAI/V,OAAS+V,EAAI7G,QAAQrO,KAAW8I,EAAQma,OAAQna,EAAQwF,UAExGxF,EAAQma,SAAWna,EAAQ4S,YAC7B,MAAM,IAAI/Z,MAAM,0BAA0BZ,EAAS+H,EAAQma,QAAUna,EAAQma,OAAena,EAAQma,OAAQpnB,WAE9G,OAAO,IAAI0S,GAAYjT,KAAK2U,OAAOorB,cAAe2C,EAAYv+B,EAAQqJ,IAGhEqyB,2BAAR,WAAA,WAEQ2H,EADUxnC,KAAK2U,OAAO0Q,QACcwZ,sBAAsBmI,WAEhE,OAAOQ,EAAgBA,EAAcnwB,cAAcyF,IAD1B,IAAIoB,GAAShX,EAAKyN,OAAOorB,cAAcl8B,UA2BlEg8B,yBAAA,SAAa/iB,EAAiBiC,EAA0BvR,GAAxD,wBAA8BuR,mBAA0BvR,MACtD,IAAMmH,EAAS3U,KAAK2U,OACd0Q,EAAU1Q,EAAO0Q,QACvB7X,EAAUzJ,GAASyJ,EAAS21B,IAG5B31B,EAAUnG,EAAOmG,GAAWP,QAFT,WACf,OAAAoY,EAAQ5R,cAGZ,IAAM/P,EAAmB1D,KAAK2H,OAAOmV,EAAIiC,EAAUvR,GAC7Ci6B,EAAcznC,KAAK0nC,iBAEzB,IAAKhkC,EAAIikC,SACP,OAAO3nC,KAAK4nC,0BAA0BH,EAAa/jC,GAErD,IAAKA,EAAI6hB,QACP,OAA2BjZ,GAAgB5I,EAAI6I,SAWjD,IAAMs7B,EAA4B,SAAC14B,GAAsB,OAAA,SAAC5C,GACxD,GAAIA,aAAiBc,GAAW,CAC9B,IAAMy6B,EAAWnzB,EAAO0Q,QAAQsD,0BAA4BxZ,EAAMkD,IAElE,GAAI9F,EAAMW,OAASjB,aAAW6B,QAG5B,OAFAg6B,GAAYnzB,EAAOyd,UAAUiQ,SAEtB/7B,EAASC,GAAGkK,KAAK4U,EAAQpY,SAGlC,IAAMG,EAAcb,EAAMa,OAC1B,GAAIb,EAAMW,OAASjB,aAAWyB,YAAcnB,EAAMoB,YAAcP,aAAkB6F,GAAa,CAG7F,IAAM6tB,EAAuB3xB,EAAM2xB,SAAS1zB,GAC5C,OAAO0zB,EAASiH,MAAM37B,MAAMy7B,EAA0B/G,IAGxD,GAAIv0B,EAAMW,OAASjB,aAAW8B,QAE5B,OADA+5B,GAAYnzB,EAAOyd,UAAUiQ,SACtB/7B,EAASC,GAAGiG,OAAOD,GAO9B,OAHqBrF,EAAK2N,qBAC1BmzB,CAAaz7B,GAENjG,EAASC,GAAGiG,OAAOD,KAGtBkH,EAAazT,KAAK2U,OAAOuD,kBAAkBnV,OAAO0kC,EAAa/jC,GAC/DukC,EAAsBx0B,EAAWs0B,MAAM37B,MAAMy7B,EAA0Bp0B,IAI7E,OAHAvH,GAAyB+7B,GAGlB5gC,EAAO4gC,GAAuBx0B,gBAkCvCosB,eAAA,SAAGzP,EAA0BjsB,EAAoBqJ,GAC/CA,EAAUzJ,GAASyJ,GAAWwF,SAAUhT,KAAK4sB,WAC7C,IAAM1pB,EAAQlD,KAAK2U,OAAOorB,cAAchtB,QAAQrO,KAAK0rB,EAAa5iB,EAAQwF,UAC1E,GAAK7N,EAAUjC,GAAf,CACA,GAAIlD,KAAK4sB,WAAa1pB,EAAO,OAAO,EACpC,IAAKiB,EAAQ,OAAO,EAEpB,IAAM0jB,EAAkB3kB,EAAMe,YAAad,SAAS,EAAMa,aAAcG,IACxE,OAAO8Y,GAAMzV,OAAOqgB,EAAQ5K,GAAM/Y,OAAO2jB,EAAQ1jB,GAASnE,KAAKmE,UAyCjE07B,qBAAA,SAASzP,EAA0BjsB,EAAoBqJ,GACrDA,EAAUzJ,GAASyJ,GAAWwF,SAAUhT,KAAK4sB,WAC7C,IAAMxqB,EAAOqD,EAAS2qB,IAAgB1tB,EAAKe,WAAoB2sB,GAE/D,GAAIhuB,EAAM,CACR,IAAKA,EAAKqU,QAAQzW,KAAK4sB,SAASrsB,MAAO,OAAO,EAC9C6vB,EAAcpwB,KAAK4sB,SAASrsB,KAE9B,IAAM2C,EAAQlD,KAAK2U,OAAOorB,cAAchtB,QAAQrO,KAAK0rB,EAAa5iB,EAAQwF,UAAWk1B,EAAUloC,KAAK4sB,SAASnF,SAE7G,GAAKtiB,EAAUjC,GAAf,CACA,IAAKiC,EAAU+iC,EAAQhlC,EAAM3C,OAAQ,OAAO,EAC5C,IAAK4D,EAAQ,OAAO,EAEpB,IAAM0jB,EAAkB3kB,EAAMe,YAAad,SAAS,EAAMa,aAAcG,IACxE,OAAO8Y,GAAMzV,OAAOqgB,EAAQ5K,GAAM/Y,OAAO2jB,EAAQ1jB,GAASnE,KAAKmE,UAoBjE07B,iBAAA,SAAKzP,EAA0BjsB,EAAmBqJ,GAOhDA,EAAUzJ,GAASyJ,GALjB26B,OAAU,EACVhlC,SAAU,EACV23B,UAAU,EACV9nB,SAAUhT,KAAK4sB,WAGjBzoB,EAASA,MAET,IAAMjB,EAAQlD,KAAK2U,OAAOorB,cAAchtB,QAAQrO,KAAK0rB,EAAa5iB,EAAQwF,UAE1E,IAAK7N,EAAUjC,GAAQ,OAAO,KAC1BsK,EAAQrK,UAASgB,EAAenE,KAAKmE,OAAOikC,SAASjkC,EAAQnE,KAAK4sB,SAAU1pB,IAEhF,IAAMmlC,EAAOnlC,GAASsK,EAAQ26B,MAASjlC,EAAM4qB,UAAY5qB,EAEzD,OAAKmlC,QAAmB7hC,IAAZ6hC,EAAI7jC,KAAiC,OAAZ6jC,EAAI7jC,IAGlCxE,KAAK2U,OAAOyd,UAAU8F,KAAKmQ,EAAI7jC,IAAKL,GACzC22B,SAAUttB,EAAQstB,WAHX,MA6CX+E,gCAAA,SAAoBvI,GAClB,OAAOt3B,KAAKsoC,qBAAuBhR,GAAWt3B,KAAKsoC,sBAiBrDzI,gBAAA,SAAIzP,EAA2Bld,GAC7B,IAAM0G,EAAM5Z,KAAK2U,OAAOorB,cACxB,OAAyB,IAArBxgC,UAAUE,OAAqBma,EAAIgJ,MAChChJ,EAAIgJ,IAAIwN,EAAald,GAAQlT,KAAK4sB,WAe3CiT,qBAAA,SAASzP,EAA0B3c,GACjC,IAAMvQ,EAA0BlD,KAAK4iB,IAAIwN,GACzC,IAAKltB,IAAUA,EAAMq/B,SAAU,MAAM,IAAIl8B,MAAM,qBAAuB+pB,GAEtE,IAAMqX,EAAcznC,KAAK0nC,iBACnB//B,EAASkX,GAAUioB,gBAAgB9mC,KAAK2U,OAAOorB,cAAe0H,GAGpE,OAAOjF,GAFP/uB,EAAaA,GAAczT,KAAK2U,OAAOuD,kBAAkBnV,OAAO0kC,EAAa9/B,GAE5CzE,SCjkBxBqD,IAEXkK,KAAM,SAAC1O,GAAQ,OAAA,IAAIwmC,QAAQ,SAACvlB,EAASxW,GAAW,OAAAwW,EAAQjhB,MAGxDyK,OAAQ,SAACzK,GAAQ,OAAA,IAAIwmC,QAAQ,SAACvlB,EAASxW,GAAaA,EAAOzK,MAG3DojB,MAAO,WACL,IAAMqjB,KAKN,OAJAA,EAASr8B,QAAU,IAAIo8B,QAAQ,SAACvlB,EAASxW,GACvCg8B,EAASxlB,QAAUA,EACnBwlB,EAASh8B,OAASA,IAEbg8B,GAITrnC,IAAK,SAACgjB,GACJ,GAAIze,EAAQye,GACV,OAAOokB,QAAQpnC,IAAIgjB,GAGrB,GAAIvf,EAASuf,GAAW,CAGtB,IAAM3P,EAAQ1P,OAAOqC,KAAKgd,GACrBpjB,IAAI,SAAAqG,GAAO,OAAA+c,EAAS/c,GAAKkG,KAAK,SAAAvL,GAAO,OAAGqF,MAAKrF,WAGlD,OAAOwE,GAAGpF,IAAIqT,GAAOlH,KAAK,SAAApJ,GACxB,OAAAA,EAAO7C,OAAO,SAAC0G,EAAKyR,GAAwC,OAA5BzR,EAAIyR,EAAMpS,KAAOoS,EAAMzX,IAAYgG,YC3CrEsd,MACAojB,GAAiB,mCACjBC,GAAiB,aAiDVjiC,IAEXmc,IAAK,SAAAriB,GAAQ,OAAA8kB,GAAQ9kB,IAGrBooC,IAAK,SAACpoC,GAAS,OAAuB,MAAvBkG,GAAUmc,IAAIriB,IAS7Bod,OAAQ,SAACxe,EAAiBgR,EAAUy4B,GAClC,IAAMznC,EAAMkG,KAAWge,GAASujB,OAC1BzkC,EAASsC,GAAUyoB,SAAS/vB,GAC5B0pC,EAAcl+B,GAAgB,SAACvD,GAAgB,OAAAjG,EAAImD,eAAe8C,IAAM,SAAAA,GAAO,MAAA,8BAA8BA,QAC7G1H,EAAOyE,EAAOC,OAAOykC,GAAa9nC,IAAI,SAAAQ,GAAK,OAAAJ,EAAII,KACrD,OAAIoD,EAAWxF,GAAYA,EAAGG,MAAM6Q,EAASzQ,GAChCP,EAAaE,OAAO,GAAG,GAAGC,MAAM6Q,EAASzQ,IASxDwvB,SAAU,SAAC/vB,GACT,IAAK6c,EAAa7c,GAAK,MAAM,IAAIkH,MAAM,+BAA+BlH,GACtE,GAAIA,GAAOA,EAAW2pC,QAAS,OAAQ3pC,EAAW2pC,QAClD,GAAIpjC,EAAQvG,GAAK,OAAOA,EAAGE,MAAM,GAAI,GACrC,IAAM0qB,EAAQ5qB,EAAG4F,WAAWqO,QAAQq1B,GAAgB,IAEpD,OADe1e,EAAM1qB,MAAM0qB,EAAM3hB,QAAQ,KAAO,EAAG2hB,EAAM3hB,QAAQ,MAAMiU,MAAMqsB,UCrFpEK,GAAmB,SAACC,EAAOx3B,OAACpK,OAAKrF,OAQ5C,OAPKinC,EAAM1kC,eAAe8C,GAEf1B,EAAQsjC,EAAM5hC,IACvB4hC,EAAM5hC,GAAKuB,KAAK5G,GAEhBinC,EAAM5hC,IAAQ4hC,EAAM5hC,GAAMrF,GAJ1BinC,EAAM5hC,GAAOrF,EAMRinC,GAGIC,GAAY,SAACrS,GACtB,OAAAA,EAAY91B,MAAM,KAAKsD,OAAO4T,GAAUjX,IAAI+pB,IAAYzpB,OAAO0nC,QAEnE,YAAyBvkC,GACvB,IAAM0kC,EAAgB,SAAA3nC,GAAK,OAAAA,GAAK,IAC1BiQ,eAAC23B,OAAYpd,OACb/Z,eAEN,OAASzI,UAAMmrB,YAAQ3I,OAAMvnB,OAG/B,IAAa4kC,GAAW,SAACC,GACvB,IAAM9/B,EAAO8/B,EAAI9/B,OACX+/B,EAAeD,EAAI3U,SACnB3I,EAAOsd,EAAItd,OAEX2I,EAAS5vB,OAAOqC,KAAKmiC,GAAcvoC,IAAI,SAAAqG,GAC3C,IAAM/C,EAAQilC,EAAaliC,GAE3B,OADa1B,EAAQrB,GAASA,GAASA,IAC3BtD,IAAI,SAAAgB,GAAO,OAAAqF,EAAM,IAAMrF,MAClCV,OAAO+I,OAAa7H,KAAK,KAE5B,OAAOgH,GAAQmrB,EAAS,IAAMA,EAAS,KAAO3I,EAAO,IAAMA,EAAO,KAGpE,YACIxrB,EACAw6B,EACAwO,EACAC,GAEF,OAAO,SAASC,GACd,IAAMC,EAAgBD,EAAS5O,gBAAkB,IAAI0O,EAAaE,GAC5DE,EAAgBF,EAASnK,eAAkB,IAAIkK,EAAmBC,EAAU1O,GAOlF,OAASx6B,OAAMmpC,UAASC,gBAAejX,QALvC,SAAiB/d,GACfA,EAAO+d,QAAQgX,GACf/0B,EAAO+d,QAAQiX,MC9CrB,qBAOE,WAAYh1B,EAAyBi1B,GAArC,WAAqC5pC,qBAAA4pC,EAN7B5pC,mBAIRA,eAAY,SAAAi6B,GAAO,OAAA/yB,EAAKo1B,WAAWt1B,QAAQ,SAAAC,GAAM,OAAAA,EAAGgzB,MAkCpDj6B,UAAS,WAAM,OAAAwtB,GAAStmB,EAAK2iC,QAAQ9d,MACrC/rB,UAAS,WAAM,OAAAwtB,GAAStmB,EAAK2iC,QAAQtgC,MACrCvJ,YAAS,WAAM,OAAAipC,GAAUzb,GAAStmB,EAAK2iC,QAAQnV,SAjC7C10B,KAAK8pC,UAAYjmC,EAAKyX,SACtBtb,KAAK+pC,SAAWlmC,EAAKmmC,QAsDzB,OApBEC,gBAAA,SAAIzlC,EAAc4O,GAShB,oBATgBA,MACZjO,EAAUX,IAAQA,IAAQxE,KAAK6pC,SACjC7pC,KAAK8P,KAAK,KAAM,KAAMtL,EAAK4O,GAEvBpT,KAAK4pC,iBACP5pC,KAAKs8B,WAAWt1B,QAAQ,SAAAC,GAAM,OAAAA,GAAKzC,WAIhC4kC,GAASppC,OAGlBiqC,qBAAA,SAAShjC,GAAT,WAEE,OADAjH,KAAKs8B,WAAW3zB,KAAK1B,GACd,WAAM,OAAAoB,EAAWnB,EAAKo1B,WAAYr1B,KAG3CgjC,oBAAA,SAAQt1B,GACN/L,GAAS5I,KAAKs8B,0TC9DhB,WAAY3nB,GAAZ,MACEu1B,YAAMv1B,GAAQ,gBACd9Q,EAAKsmC,iBAAiB,aAAcjjC,EAAKkjC,WAAW,KAcxD,OAjByCC,QAMvCC,iBAAA,WACE,OAAOvf,GAAY/qB,KAAK8pC,UAAU/d,OAEpCue,iBAAA,SAAKpnC,EAAYqnC,EAAe/lC,EAAa4O,GAC3CpT,KAAK8pC,UAAU/d,KAAOvnB,GAGxB8lC,oBAAA,SAAS31B,GACPu1B,YAAMxX,kBAAQ/d,GACd9Q,EAAK2mC,oBAAoB,aAAcxqC,KAAKoqC,eAfPH,iUCEvC,WAAYt1B,UACVu1B,YAAMv1B,GAAQ,SAUlB,OAd2C01B,QAOzCI,iBAAA,WACE,OAAOzqC,KAAK0qC,MAGdD,iBAAA,SAAKvnC,EAAYqnC,EAAe/lC,EAAa4O,GAC3CpT,KAAK0qC,KAAOlmC,MAZ2BylC,iUCQzC,WAAYt1B,GAAZ,MACEu1B,YAAMv1B,GAAQ,gBACdzN,EAAKyjC,QAAUh2B,EAAOylB,WAAWv3B,OACjCgB,EAAKsmC,iBAAiB,WAAYjjC,EAAKkjC,WAAW,KAoDtD,OA1D8CC,QAyBpCO,2BAAR,WACE,OAAOjgB,GAAqB3qB,KAAK2qC,QAAQzP,aAGjC0P,iBAAV,WACM,IAAAp5B,iBAAEgV,aAAUuF,SAAM2I,WACtBA,EAAS7J,GAAW6J,GAAQ,GAC5B3I,EAAOnB,GAAUmB,GAAM,GAEvB,IAAM8e,EAAa7qC,KAAK8qC,iBAClBC,EAAqBvkB,IAAaxmB,KAAK2qC,QAAQzP,WAC/C8P,EAAiBxkB,EAAStM,OAAO,EAAG2wB,EAAWprC,UAAYorC,EAGjE,OAFArkB,EAAWukB,EAAqB,IAAMC,EAAiBxkB,EAAS+G,UAAUsd,EAAWprC,QAAU+mB,IAE5EkO,EAAS,IAAMA,EAAS,KAAO3I,EAAO,IAAMA,EAAO,KAG9D6e,iBAAV,SAAe1nC,EAAYqnC,EAAe/lC,EAAa4O,GACrD,IAAMy3B,EAAa7qC,KAAK8qC,iBAClB1P,EAAQ52B,GAAkB,MAAXA,EAAI,GAAa,IAAM,GACtCymC,EAAmB,KAARzmC,GAAsB,MAARA,EAAexE,KAAK2qC,QAAQzP,WAAa2P,EAAazP,EAAQ52B,EAEzF4O,EACFpT,KAAK+pC,SAASmB,aAAahoC,EAAOqnC,EAAOU,GAEzCjrC,KAAK+pC,SAASoB,UAAUjoC,EAAOqnC,EAAOU,IAInCL,oBAAP,SAAej2B,GACbu1B,YAAMxX,kBAAQ/d,GACd9Q,EAAK2mC,oBAAoB,WAAYxqC,KAAKoqC,eAxDAH,kBCW9C,OAfA,WAAA,WACEjqC,aAAUwT,EAEVxT,eAAY,GACZA,WAAQ,GACRA,eAAY,OACZA,WAAQ,YACRA,iBAAc,GAEdA,UAAO,WAAM,OAAAkH,EAAKkkC,OAClBprC,cAAW,WAAM,OAAAkH,EAAKmkC,WACtBrrC,UAAO,WAAM,OAAAkH,EAAKokC,OAClBtrC,cAAW,WAAM,OAAAkH,EAAKqkC,WACtBvrC,eAAY,WAAM,OAAA,GAClBA,gBAAa,SAACwrC,GAAY,OAAArmC,EAAUqmC,GAAUtkC,EAAKukC,YAAcD,EAAStkC,EAAKukC,+BCX/E,WAAY92B,EAAiB+2B,gBAAAA,MAAA1rC,cAAA0rC,EAHrB1rC,oBAAYwG,EACZxG,iBAAc,GAwCxB,OApCE2rC,iBAAA,WACE,OAAIrwB,SAASggB,KACJjD,OAAO/c,SAASggB,MAGE,UAApBt7B,KAAKu7B,WAAyB,IAAM,IAG7CoQ,qBAAA,WACE,OAAOrwB,SAASigB,SAASnoB,QAAQ,KAAM,KAGzCu4B,iBAAA,WACE,OAAOrwB,SAASswB,UAGlBD,sBAAA,WACE,OAAO3rC,KAAK0rC,UAIdC,uBAAA,SAAWE,GACT,OAAO1mC,EAAU0mC,GAAa7rC,KAAKyrC,YAAcI,EAAY7rC,KAAKyrC,aAGpEE,qBAAA,SAASzT,GACP,OAAO/yB,EAAU+yB,GAAQl4B,KAAKurC,UAAYrT,EACxC/yB,EAAUnF,KAAKurC,WAAavrC,KAAKurC,UAAYvrC,KAAK8rC,yBAGtDH,kCAAA,WACE,IAAMI,EAA2BC,SAASC,qBAAqB,QAAQ,GACvE,OAAOjsC,KAAKurC,UAAYQ,EAAUA,EAAQ7T,KAAKhe,OAAOoB,SAAS4wB,OAAOzsC,QAAU6b,SAASkL,UAAY,KAGvGmlB,oBAAA,kBC7CF,YAY+Bh3B,GAI7B,OAHArO,EAASG,UAAYA,GACrBH,EAASC,GAAKA,IAELhG,KAAM,mBAAoBgG,MAAIE,aAAWisB,QAAS,WAAM,OAAA,OAInE,IAAayZ,GACTC,GAAsB,4BAA4B,EAAO9B,GAAqBqB,IAGrEU,GACTD,GAAsB,6BAA6B,EAAMxB,GAA0Be,IAG1EW,GACTF,GAAsB,0BAA0B,EAAO3B,GAAuB8B,kBCgFlF,cAGA,OADEC,oBAAA,SAAQ73B,wzECxGR,IAAI83B,EAAmC,KACvC,OAAO,SAACljC,EAAM6I,GAEZ,OADAq6B,EAAkBA,GAAmBnmC,EAASG,UAAUmc,IAAI,qBACpD,IAAI8pB,GAAcnjC,EAAM6I,EAAMq6B,KAI1C,IAAME,GAAY,SAACxlC,EAAM3G,GACrB,OAAA2G,EAAK9F,OAAO,SAAC0G,EAAKX,GAAQ,OAAAW,GAAO5C,EAAU3E,EAAI4G,MAAO,IAW1D,YAAgClE,GAE9B,IAAKA,EAAMU,OAAQ,SAEnB,IAEIgpC,GAAY,YAAa,WAAY,qBACrCC,GAHa,mBAAoB,cAAe,WAAY,SAAU,SAGhDjtC,QAFV,aAAc,qBAAsB,eAAgB,cAGhEktC,EAAcF,EAAShtC,OAAOitC,GAKlC,GAAI1nC,EAAUjC,EAAMmb,QAAUsuB,GAAUG,EAAa5pC,GACnD,MAAM,IAAImD,MAAM,UAAUnD,EAAM3C,iKAGxBusC,EAAY1oC,OAAO,SAAAgD,GAAO,OAAAjC,EAAUjC,EAAMkE,MAAO7E,KAAK,OAGhE,IAAM8b,KACF0uB,EAAc7pC,EAAMmb,QAAW2uB,SAAY/jC,GAAK/F,EAAO4pC,IA2B3D,OAzBA9lC,EAAQ+lC,EAAa,SAAUlqC,EAA4BtC,GAUzD,GARAA,EAAOA,GAAQ,WAEXkF,EAAS5C,KAASA,GAAWoqC,UAAoBpqC,IAGrDA,EAASwE,KAAWxE,GAGhB8pC,GAAUC,EAAU/pC,IAAW8pC,GAAUE,EAAahqC,GACxD,MAAM,IAAIwD,MAAM,mBAAmBumC,EAASrqC,KAAK,eAAcsqC,EAAYtqC,KAAK,wBAAuBhC,MAAQ2C,EAAM3C,UAGvHsC,EAAOqqC,UAAYrqC,EAAOqqC,WAAa,WACvCrqC,EAAOwL,MAAQ,MACfxL,EAAOiP,SAAW5O,EAClBL,EAAOkP,MAAQxR,EAEf,IAAMud,EAAaye,GAAY4Q,sBAAsBtqC,EAAOiP,SAAUjP,EAAOkP,OAC7ElP,EAAOyP,YAAcwL,EAAW4e,WAChC75B,EAAO0P,qBAAuBuL,EAAW6e,oBAEzCte,EAAM9d,GAAQsC,IAETwb,EAGT,IAAI9Z,GAAK,gBASP,WAAmBgF,EAAyBsI,EAAqCmrB,GAAjF,WAAmBh9B,UAAAuJ,EAAyBvJ,cAAA6R,EAAqC7R,aAAAg9B,EAPjFh9B,SAAMuE,KACNvE,aAAS,EA0BTA,iBAAc,SAACyR,EAAQtB,GACrB,OAAAjJ,EAAK+lC,UAAY/lC,EAAK81B,QAAQoQ,sBAAsB37B,EAAQtB,EAASjJ,EAAK+lC,UAAW/lC,EAAK2K,SAASw7B,UAAYnmC,EAAKomC,UAexH,OAlCEZ,iBAAA,WAAA,WACQnmC,EAAKD,EAASC,GACd4J,EAAU,IAAIyT,GAAe5jB,KAAKuJ,MAClCpF,EAASnE,KAAKuJ,KAAKlI,OAAO,SAAC0G,EAAKkP,GAAS,OAAA5P,EAAOU,EAAKkP,EAAKiG,kBAE1DiH,GACJmpB,SAAU/mC,EAAGkK,KAAKzQ,KAAKg9B,QAAQ1O,WAAWtuB,KAAK6R,SAAU1N,EAAQgM,IACjEo9B,WAAYhnC,EAAGkK,KAAKzQ,KAAKwtC,cAAcr9B,KAGzC,OAAO5J,EAAGpF,IAAIgjB,GAAU7W,KAAK,SAACmgC,GAI5B,OAHAh7B,GAAM2qB,sBAAsB,SAAUl2B,GACtCA,EAAKqmC,WAAaE,EAAQF,WAC1BlmC,EAAOH,EAAMumC,EAAQH,UACdpmC,KAYXwlC,0BAAA,SAAcv8B,GACZ,IAAMu9B,EAAW1tC,KAAK6R,SAAS87B,mBAC/B,IAAK3xB,EAAa0xB,GAAW,OAAO1tC,KAAK6R,SAAS07B,WAClD,IAAM5rB,EAAOrb,EAASG,UAAUyoB,SAASwe,GACnCE,EAAaloC,EAAQgoC,GAAY1nC,GAAW0nC,GAAYA,EAE9D,OADmB,IAAI7rB,GAAW,GAAU+rB,EAAYjsB,GACtCiB,IAAIzS,uBChH1B,aAAA,WACyBnQ,cAAWjB,EAAQ8uC,QAAQC,MAAQ,EAK3C9tC,WAAQ,QAAS,iBAAkB,YAAa,SAAC+tC,EAAOC,EAAgBvnC,GAIrF,OAHAS,EAAK+mC,iBAAmBxnC,EAAUkiC,KAAOliC,EAAUkiC,IAAI,qBAAuBliC,EAAUmc,IAAI,oBAC5F1b,EAAK6mC,MAAQA,EACb7mC,EAAK8mC,eAAiBA,EACf9mC,IAmKX,OA/JEgnC,2BAAA,SAAersC,GACb7B,KAAKmuC,SAAWtsC,GAgBlBqsC,uBAAA,SAAWrrC,EAA4BsB,EAAagM,GAClD,IAEMi+B,EAAc,SAACruC,GAAW,OAAAuG,EAASC,GAAGkK,KAAK1Q,GAAQuN,KAAK,SAAAqc,GAAO,OAAG2jB,SAAW3jB,MAC7E0kB,EAAc,SAACtuC,GAAW,OAAAuG,EAASC,GAAGkK,KAAK1Q,GAAQuN,KAAK,SAAAqc,GAAO,OAAGsjB,UAAWtjB,MAEnF,OACIxkB,EAAUtC,EAAOyqC,UAAqBc,EAAWpuC,KAAKyD,WAAWZ,EAAOyqC,SAAUnpC,IAClFgB,EAAUtC,EAAOyrC,aAAqBF,EAAWpuC,KAAKuuC,QAAQ1rC,EAAOyrC,YAAanqC,IAClFgB,EAAUtC,EAAO2rC,kBAAqBJ,EAAWpuC,KAAKyuC,aAAa5rC,EAAO2rC,iBAAkBrqC,EAAQgM,IACpGhL,EAAUtC,EAAOoqC,WAAqBoB,EAAYxrC,EAAOoqC,WACzD9nC,EAAUtC,EAAO6rC,mBAAqBL,EAAYruC,KAAK2uC,sBAAsB9rC,EAAO6rC,kBAAmBvqC,EAAQgM,IAC/Gi+B,EAXoB,wBAwB1BF,uBAAA,SAAWZ,EAA+BnpC,GACxC,OAAOQ,EAAW2oC,GAAmBA,EAAUnpC,GAAUmpC,GAY3DY,oBAAA,SAAQ1pC,EAA0BL,GAEhC,OADIQ,EAAWH,KAAMA,EAAaA,EAAKL,IAC5B,MAAPK,EAAoB,KAEpBxE,KAAKmuC,SACAnuC,KAAK+tC,MAAMnrB,IAAIpe,GAAOie,MAAOziB,KAAKguC,eAAgBY,SAAWC,OAAQ,eACvEvhC,KAAK,SAAUwhC,GACd,OAAOA,EAASl+B,OAIjB5Q,KAAKiuC,iBAAiBzpC,IAW/B0pC,yBAAA,SAAaR,EAAuBvpC,EAAagM,GAC/C,IAAMwR,EAAOrb,EAASG,UAAUyoB,SAASwe,GACnCE,EAAaloC,EAAQgoC,GAAY1nC,GAAa0nC,GAAYA,EAEhE,OADmB,IAAI7rB,GAAW,GAAe+rB,EAAYjsB,GAC3CiB,IAAIzS,IAUxB+9B,kCAAA,SAAsBR,EAAuBvpC,EAAagM,GACxD,IAAMwR,EAAOrb,EAASG,UAAUyoB,SAASwe,GACnCE,EAAaloC,EAAQgoC,GAAY1nC,GAAa0nC,GAAYA,EAEhE,OADmB,IAAI7rB,GAAW,GAAe+rB,EAAYjsB,GAC3CiB,IAAIzS,IAiBxB+9B,kCAAA,SAAsBz8B,EAA0BtB,EAAyB88B,EAAmBI,GAC1FA,EAAWA,MAGX,IAAM0B,EAAShwC,EAAQ8uC,QAAQC,OAAS,EAAI,KAAO,GAE7CkB,EAAQ,SAACplB,GACb,IAAMqlB,EAAUC,GAAYtlB,GAC5B,MAAO,aAAajnB,KAAKssC,GAAW,KAAKA,EAAYA,GAmCjDE,EAOV,SAA8B5uC,GAC5B,IAAM6uC,EAAkB9oC,EAASG,UAAUmc,IAAIriB,EAAO,aACtD,IAAK6uC,IAAYA,EAAQ3vC,OAAQ,MAAM,IAAI4G,MAAM,mCAAmC9F,OACpF,OAAO6uC,EAAQruC,IAAIsuC,IAAahuC,OAAO+I,OAVvBklC,CAAqBrC,GAAWlsC,IA/BzB,SAACuN,GACZ,IAAA/N,SAAM2M,SACRqiC,EAAWP,EAAMzuC,GAIvB,GAAIkR,EAAO+9B,KAAKD,KAAclC,EAAS9sC,GACrC,OAAUgvC,OAAa99B,EAAO+9B,KAAKD,OAErC,IAAME,EAAcpC,EAAS9sC,IAASA,EAGtC,GAAa,MAAT2M,EACF,OAAUqiC,SAAeR,cAAkBU,QAK7C,GAAa,MAATviC,EAAc,CAChB,IAAMoR,EAAMnO,EAAQ8U,cAAcwqB,GAC5BtwC,EAAKmf,GAAOA,EAAI1N,KAChBlR,EAAOP,GAAMmH,EAASG,UAAUyoB,SAAS/vB,OAG/C,OAAUowC,gBAAsBE,GADZ/pC,EAAQvG,GAAM,KAAIA,EAAGM,OAAS,OAAO,QACIC,EAAK6C,KAAK,UAIzE,OAAUgtC,OAAaR,cAAkBU,QAGqBltC,KAAK,KAC/DmtC,EAAYV,EAAM/B,GACxB,MAAO,IAAIyC,MAAaP,QAAWO,YAavC,IAAML,GAAc,SAACv1B,GACnB,OAAIlV,EAASkV,EAAI61B,kBAA0BC,GAAc91B,EAAI61B,kBACtDC,GAAc91B,EAAInC,QAUrBi4B,GAAgB,SAACC,GAAqB,OAAA/qC,OAAOqC,KAAK0oC,OAEnD9uC,IAAI,SAAAqG,GAAO,OAACA,EAAK,oBAAoBzE,KAAKktC,EAAYzoC,OAEtDhD,OAAO,SAAAoV,GAAS,OAAArU,EAAUqU,IAAU9T,EAAQ8T,EAAM,MAElDzY,IAAI,SAAAyY,GAAS,OAAGjZ,KAAMiZ,EAAM,GAAG,IAAMA,EAAM,GAAItM,KAAMsM,EAAM,GAAG,qBChMjE,WAAoBumB,EAAsCnrB,GAAtC5U,mBAAA+/B,EAAsC//B,kBAAA4U,EACxDokB,EAAqBj3B,EAAI+tC,EAAc1sC,WAAYpD,KAAM+B,EAAI/B,OAyPjE,OA7JE8vC,sBAAA,SAAUvvC,EAAc+yB,GACtB,OAAOtzB,KAAK+/B,cAAcgQ,UAAUxvC,EAAM+yB,IAAStzB,MAyIrD8vC,kBAAA,SAAMvvC,EAAW+qB,GAOf,OANI1mB,EAASrE,GACX+qB,EAAa/qB,EAEb+qB,EAAW/qB,KAAOA,EAEpBP,KAAK+/B,cAAcvN,SAASlH,GACrBtrB,MAST8vC,sBAAA,SAAUhmC,GACR,OAAO9J,KAAK4U,aAAao7B,UAAUlmC,SCjQ1BmmC,GAAsB,SAAC9pB,GACpC,OAAA,SAA0B+pB,EAA0BngB,GAClD,IAAMtb,EAAOy7B,EAAY/pB,GACnBK,EAAwB,WAAbL,EAAwB,OAAS,KASlD,OAAO1R,EAPP,SAA0BtF,EAAmBjM,GAC3C,IACMqhB,EADiB,IAAIX,GAAezU,EAAMkI,YAAYmP,IAC1BjC,WAAWrhB,EAAMG,WAC7CulC,EAASvhC,EAAO8oC,GAAU5rB,IAAe6rB,QAASltC,EAAOmtC,aAAclhC,IAC7E,OAAO7I,EAASG,UAAUkX,OAAOlJ,EAAMzU,KAAM4oC,SAGdpiC,kBC2BjC,WAAY8pC,GA3BJtwC,sBA4BNA,KAAKswC,kBAAoBA,EACzB,IAAMC,EAAMxuC,EAAIuuC,GAChBtX,EAAqBuX,EAAKvwC,KAAMuwC,GAAM,eAqC1C,OArDSC,+BAAP,SAAoC77B,GAClC,IAAM87B,EAAsB97B,EAAO4G,kBAAkBrO,KAAK,QAE1DujC,EAASzyB,OAAS,SAACzc,GACf,OAAK,MAALA,EAAYA,EAAEwD,WAAWqO,QAAQ,UAAW,SAAAkhB,GAAK,OAAGoc,IAAK,KAAMC,IAAK,OAAQrc,KAAO/yB,GAEvFkvC,EAASt2B,OAAS,SAAC5Y,GACf,OAAK,MAALA,EAAYA,EAAEwD,WAAWqO,QAAQ,YAAa,SAAAkhB,GAAK,OAAGsc,KAAM,IAAKC,MAAO,KAAMvc,KAAO/yB,IAI3FivC,oBAAA,aAQAA,qBAAA,SAAS1mC,GAAT,WAEE,OADA9J,KAAK8wC,cAAcnoC,KAAKmB,GACjB,WAAM,OAAAzB,EAAWnB,EAAK4pC,cAAhBzoC,CAA+ByB,KAG9C0mC,sBAAA,WACE,IAAIxV,EAAiBh7B,KAAKswC,kBAAkBtV,YAE5C,OADAA,EAAYp2B,EAASo2B,GAAaA,EAAU1rB,QAAU0rB,IAClCh7B,KAAK+wC,SAAS/G,SAGpCwG,gBAAA,SAAIQ,EAAiB59B,EAAiBlQ,GAIpC,oBAJmBkQ,MACfjO,EAAU6rC,IAAShxC,KAAKixC,UAAUzsC,IAAIwsC,GACtC59B,GAASpT,KAAKixC,UAAU79B,UACxBlQ,GAAOlD,KAAKixC,UAAU/tC,MAAMA,GACzBlD,KAAKixC,UAAUzsC,OAGxBgsC,6BAAA,SAAiBU,EAAYD,EAA6BF,EAAUI,GAApE,WACEnxC,KAAKixC,UAAYA,EACjBjxC,KAAK+wC,SAAWA,EAGhBG,EAAWE,IAAI,yBAA0B,SAAAnX,GAAO,OAAA/yB,EAAK4pC,cAAc9pC,QAAQ,SAAA7H,GAAM,OAAAA,EAAG86B,OACpF,IAAMoX,EAAOtvC,EAAIkvC,GACXK,EAAWvvC,EAAIovC,GAGrBnY,EAAqBqY,EAAMrxC,KAAMqxC,GAAO,UAAW,OAAQ,SAAU,SAErErY,EAAqBqY,EAAMrxC,KAAMqxC,GAAO,OAAQ,WAAY,SAE5DrY,EAAqBsY,EAAUtxC,KAAMsxC,GAAW,iCCxDlD,WAAY38B,GACV3U,KAAKkyB,QAAUvd,EACf3U,KAAKuxC,WAAa58B,EAAOyd,UA6K7B,OArLSof,oBAAP,SAAyB78B,EAAkB2iB,GACzC,OAAO,SAAAjb,GACH,OAAA/V,EAASG,UAAUkX,OAAO2Z,EAAS,MAAQma,OAAQp1B,EAAOq1B,aAAc/8B,EAAO0Q,QAAQlhB,WAU7FqtC,iBAAA,WACE,IAAMpf,EAAYpyB,KAAKuxC,WAGvB,OAFAnf,EAAUiQ,QAAO,GACZjQ,EAAU0J,mBAAmB1J,EAAU8G,SACrC9G,GAkCTof,iBAAA,SAAKG,GAAL,WACE,IAAKhtC,EAAWgtC,GAAS,MAAM,IAAItrC,MAAM,6BAEzC,IAGM2rB,EAAO,IAAI4F,GAHH,WACV,OAAA+Z,EAAOrrC,EAASG,UAAWS,EAAKgrB,QAAQ2I,kBAER7iB,GAEpC,OADAhY,KAAKuxC,WAAWvf,KAAKA,GACdhyB,MA6BTwxC,sBAAA,SAAUxf,GAAV,WACQI,EAAYpyB,KAAKuxC,WAEvB,GAAI9rC,EAASusB,GACXI,EAAUwf,UAAU5f,OACf,CAAA,IAAIrtB,EAAWqtB,GAGpB,MAAM,IAAI3rB,MAAM,uCAFhB+rB,EAAUwf,UAAU,WAAM,OAAA5f,EAAK1rB,EAASG,UAAWS,EAAKgrB,QAAQ2I,mBAKlE,OAAO76B,MAyCTwxC,iBAAA,SAAKna,EAAkCC,GAMrC,OALI5xB,EAAQ4xB,IAAY3yB,EAAW2yB,MACjCA,EAAUka,EAAkBK,kBAAkB7xC,KAAKkyB,QAASoF,IAG9Dt3B,KAAKuxC,WAAW9gC,KAAK4mB,EAAMC,GACpBt3B,MAiCTwxC,2BAAA,SAAersB,GACbnlB,KAAKuxC,WAAWO,eAAe3sB,SCpMnCnmB,EAgBQ+yC,OAAO,yBACf,IAAMC,GAAYjzC,EAAQgzC,OAAO,qBAC3BE,GAAYlzC,EAAQgzC,OAAO,kBAAqB,KAAM,mBACtDG,GAAYnzC,EAAQgzC,OAAO,oBAAqB,mBAChDI,GAAYpzC,EAAQgzC,OAAO,mBAAqB,mBAAoB,iBAAkB,uBACtFK,GAAYrzC,EAAQgzC,OAAO,aAAqB,iBAAkB,kBAAmB,uBAYvFp9B,IAXY5V,EAAQgzC,OAAO,oBAAqB,cAW7B,MAIvB,YAA2BzB,IAGzB37B,GAAS3U,KAAK2U,OAAS,IAAIsrB,IACpBoS,cAAgB,IAAIvC,GAAcn7B,GAAOorB,cAAeprB,GAAOC,cAGtED,GAAOorB,cAAcgQ,UAAU,QAAYuC,IAC3C39B,GAAOorB,cAAcgQ,UAAU,SAAYE,GAAoB,WAC/Dt7B,GAAOorB,cAAcgQ,UAAU,WAAYE,GAAoB,aAC/Dt7B,GAAOorB,cAAcgQ,UAAU,UAAYE,GAAoB,YAE/Dt7B,GAAOmrB,YAAY3oB,WAAW6kB,mBAAmB,MAAOuW,MAExD,IAAMC,EAAqB79B,GAAOkmB,gBAAkBlmB,GAAO2qB,eAAiB,IAAIkR,GAAoBF,GAQpG,WAAcW,EAA6BE,EAAeJ,EAAeG,EAAuBnD,EAAqBC,GAInH,OAHAwE,EAAmBC,iBAAiBvB,EAAYD,EAAWF,EAAUI,UAC9Dx8B,GAAe,cACfA,GAAa,KACbA,GAET,OAZA67B,GAAoBkC,6BAA6B/9B,IAGjDA,GAAe,OAAIA,GACnBA,GAAa,KAAIg+B,EACjBA,EAAK7J,SAAW,YAAa,WAAY,WAAY,aAAc,QAAS,kBAOrEn0B,GA9BTi+B,GAAkB9J,SAAW,qBAiC7B,IAAM+J,GAAiB,SAACC,GAAgB,OAAE,oBAAqB,SAACC,GAC9D,IAAMrJ,EAAUqJ,EAAKp+B,OAAOm+B,GAE5B,OADApJ,EAAc,KAAI,WAAM,OAAAA,GACjBA,KAKT,YAAkBjjC,EAA6BF,EAAeysC,GAC5D1sC,EAASG,UAAYA,EACrBH,EAASC,GAAWA,EAIpBysC,EAAUjT,cAAcnd,MACnB7hB,IAAI,SAAAQ,GAAK,OAAAA,EAAE8B,UAAU+a,cACrB/c,OAAO+I,OACPhG,OAAO,SAAA7C,GAAK,MAAW,aAAXA,EAAEogB,OACd3a,QAAQ,SAAA2J,GAAc,OAAAA,EAAWgR,KAAOlb,EAAUyoB,SAASve,EAAW+Q,UAAWjb,EAAU0oB,YAXlG8jB,GAASnK,SAAW,YAAa,KAAM,aAwBvC,YAA6BoI,GAC3BA,EAAWgC,OAAO,WAAazgC,GAAMrD,uBAFvC+jC,GAAarK,SAAW,cAKxBkJ,GAAUtE,SAAS,YAA4BkF,IAC/CV,GAAUxE,SAAS,cAAuB,oBAdb,SAACjE,GAC5B,OAAAA,EAAS2J,kBAAoB,IAAI5B,GAAkB/H,MAcrDwI,GAAUvE,SAAS,cAAsBmF,GAAe,eACxDZ,GAAUvE,SAAS,sBAAuB,oBAAqB,WAAM,OAAA/4B,GAAO4G,qBAC5E02B,GAAUvE,SAAS,mBAAsB,WAAM,OAAA,IAAIQ,KACnDiE,GAAUzE,SAAS,iBAAsBmF,GAAe,kBACxDV,GAAUzE,SAAS,mBAAsBmF,GAAe,YACxDV,GAAUzE,SAAS,eAAsBmF,GAAe,sBACxDV,GAAUzE,SAAS,UAAuB,oBAhBjB,WACrB,OAAArmC,EAAOsN,GAAO09B,eAAiBM,KAAM,WAAM,OAAAh+B,GAAOC,mBAiBtDu9B,GAAUnV,QAAS,gBAAuB,YAAa,SAACgW,GAAwB,OAAAA,EAAU3tB,QAAQlhB,UAClGiuC,GAAUpV,QAAS,QAAsB,WAAM,OAAAroB,GAAOmrB,cACtDsS,GAAU1I,QAAS,SAAsB,WAAM,OAAAj3B,KAE/C2/B,GAAUrK,IAASoL,IACnBlB,GAAUlK,KAAU,qBAAsB,SAAUsL,OACpDlB,GAAUpK,KAAU,SAAU,SAAU/oB,OACxCkzB,GAAUnK,KAAU,aAAc,SAAUjX,OAC5CkhB,GAAUjK,IAASkL,IAGnB,IC0HIK,GAoIAC,GAgJAC,GC3XO/hC,GFnBE0+B,GAAY,SAACsD,GASxB,OAReA,EAAI9sB,YAAYviB,OAAOqB,GAEf1E,IAAI,SAAAqG,GACzB,IAAMuJ,EAAa8iC,EAAIxuB,cAAc7d,GAErC,OAASA,EAAoB,WADVqsC,EAAInxB,UAAU3R,GAAY6Q,MACL7Q,EAAWxE,QAAUwE,EAAWC,QAG5DvP,OAAOod,QCzHvB,YAAuB/a,GACrB,IAAI2pB,EACEqmB,EAAahwC,EAAI2Y,MAAM,qBAI7B,GAHIq3B,IAAYhwC,EAAM,IAAMgwC,EAAW,GAAK,OAE5CrmB,EAAS3pB,EAAI0P,QAAQ,MAAO,KAAKiJ,MAAM,oCACN,IAAlBgR,EAAO5tB,OAAc,MAAM,IAAI4G,MAAM,sBAAwB3C,EAAM,KAClF,OAASR,MAAOmqB,EAAO,IAAM,KAAMsmB,UAAWtmB,EAAO,IAAM,MAI7D,YAAsBumB,GACpB,IAAMC,EAAuBD,EAAGhwC,SAA8BkwC,cAAc,WACtEvqC,EAAmB3I,EAAM,YAANA,CAAmBizC,GAC5C,OAAOtqC,EAAOvD,GAAKuD,GAAMrG,MAAM3C,UAAOiG,EAIxC,YAAsBwY,EAAsB+0B,EAA4Bj6B,GACtE,IAAMk6B,EAAUl6B,EAAIk6B,SAAWh1B,EAAO/R,QAAQ1M,KACxC0zC,EAAc5sC,EAgDtB,SAAqBusC,EAAsB50B,GACzC,OACEhM,SAAUW,GAAaigC,IAAO50B,EAAO4N,SACrCzpB,SAAS,EACTuE,OAAQ,QApDiBwsC,CAAYH,EAAU/0B,GAASlF,EAAIm6B,iBACxD/b,EAAOlZ,EAAOkZ,KAAK8b,EAASl6B,EAAIq6B,cAAeF,GACrD,OAASD,UAASG,cAAer6B,EAAIq6B,cAAeF,cAAa/b,QAWnE,YAAqB0b,GAEnB,IAAMQ,EAA4D,+BAApDtvC,OAAO1B,UAAU2B,SAAS9E,KAAK2zC,EAAGtzC,KAAK,SAC/C+zC,EAA4B,SAAnBT,EAAG,GAAGU,SAErB,OACE9E,KAAM6E,EAAS,SAAYD,EAAQ,aAAe,OAClDG,SAA+C,MAArCX,EAAGtzC,KAAK,WAAW40B,cAC7Bsf,WAAYH,GAKhB,YAAmBT,EAAsB50B,EAAsBy1B,EAA2BvnC,EAAgBwnC,GACxG,OAAO,SAAUroC,GACf,IAAMsoC,EAAStoC,EAAEuoC,OAASvoC,EAAEsoC,OAAQhtC,EAAS+sC,IAE7C,KAAMC,EAAS,GAAKtoC,EAAEwoC,SAAWxoC,EAAEyoC,SAAWzoC,EAAE0oC,UAAYnB,EAAGpE,KAAK,WAAY,CAE9E,IAAMwF,EAAaP,EAAS,WAC1Bz1B,EAAOub,GAAG5yB,EAAOqsC,QAASrsC,EAAOwsC,cAAexsC,EAAOssC,eAEzD5nC,EAAE4oC,iBAGF,IAAIC,EAA4BhoC,EAAKqnC,WAAa5sC,EAAOuwB,KAAO,EAAI,EAEpE7rB,EAAE4oC,eAAiB,WACbC,KAA+B,GAAGT,EAASU,OAAOH,MAgB9D,YAAoBI,EAA2Bz9B,EAAeqpB,EAA2BiT,GACvF,IAAIoB,EAEApB,IACFoB,EAASpB,EAAYoB,QAGlB3vC,EAAQ2vC,KACXA,GAAU,UAIZ,IADA,IAAMC,EAAKF,EAAQE,GAAK,KAAO,WACXC,IAAAr1C,WAAAA,KAAf,IAAMs1C,OACTJ,EAAQE,GAAIE,EAAOxU,GAGrBrpB,EAAMy5B,IAAI,WAAY,WAEpB,IADA,IAAMqE,EAAML,EAAQK,IAAM,MAAQ,aACdC,IAAAx1C,WAAAA,KAAf,IAAMy1C,OACTP,EAAQK,GAAKE,EAAO3U,MExG1B,YAA+BhiB,GAC7B,IAAM42B,EAAgB,SAAS1yC,EAAoBiB,EAAaqJ,GAC9D,OAAOwR,EAAOvd,GAAGyB,EAAOiB,EAAQqJ,IAGlC,OADAooC,EAASC,WAAY,EACdD,EAcT,YAAuC52B,GACrC,IAAM82B,EAAsB,SAAS5yC,EAAoBiB,EAAaqJ,GACpE,OAAOwR,EAAOyI,SAASvkB,EAAOiB,EAAQqJ,IAGxC,OADAsoC,EAAeD,WAAY,EACnBC,ED2SV,YAA4BC,EACAC,EACAr8B,EACA2F,EACA/Y,EACAkuC,GAC1B,IAAMwB,EAAkBr1C,EAAM,yBACxBs1C,EAAet1C,EAAM,sBAE3B,OACEu1C,SAAU,MACVt/B,UAAW,IACX4W,QAAS,SAAU2oB,GACjB,IAAMC,EAAUD,EAAShlC,OAGzB,OAFAglC,EAASE,QAEF,SAAU3+B,EAAeo8B,GAC9B,IAAMnjC,EAAmBmjC,EAASnjC,KAAK,WACvC,IAAKA,EAGD,OAFAmjC,EAAS3iC,KAAKilC,QACdN,EAAShC,EAASwC,WAAlBR,CAAqCp+B,GAIzC,IAAM/F,EAAqBhB,EAAK4lC,OAAgB3kC,YAAc4kC,YAAajjC,GACrEkjC,EAA6B9kC,EAAIrI,MAAQ,IAAIqa,GAAehS,EAAIrI,MACtEwqC,EAAS3iC,KAAKQ,EAAI6kC,YAAY1C,EAAU2C,IAAeL,GACvD5jC,GAAMkkC,gBAAgB/lC,EAAKijC,QAASE,EAAS3iC,QAE7C,IAAMwlC,EAAOb,EAAShC,EAASwC,YACzBhJ,EAAa37B,EAAI27B,WACjBsJ,EAAuBZ,EAAgBrkC,GACvCs7B,EAAoBgJ,EAAatkC,GACjCg3B,EAAS8N,GAAcvG,GAAUuG,GAIvC,GAFA/+B,EAAMu1B,GAAatE,EAEf2E,EAAY,CACd,IAAMuJ,EAAqCd,EAAYzI,EAAYlmC,KAAWuhC,GAAUmO,OAAQp/B,EAAOo8B,SAAUA,KAC7G8C,IACFl/B,EAAMk/B,GAAgBC,EACtBn/B,EAAMk/B,GAAc3J,GAAatE,GAQnCmL,EAASnjC,KAAK,0BAA2BkmC,GACzC/C,EAASjhB,WAAWliB,KAAK,0BAA2BkmC,GAEpDE,GAA4BzwC,EAAIoT,EAAcm9B,EAAoBn/B,EAAO/F,GAI3E,GAAInM,EAASmM,EAAIC,SAASo7B,WACxB,IAAMgK,EAAMrlC,EAAIC,SAASo7B,UACnByC,EAAYR,GAAY+H,GACxBC,EAAY,IAAIz0C,OAAO,eAAeitC,MAAc,KASpDyH,EAAkBx/B,EAAMu7B,OAPC,WAC7B,IAAMkE,KAAiB/3C,MAAMY,KAAK8zC,EAAS,GAAGjhB,UACzC1uB,OAAO,SAACwvC,GAAgB,OAAAA,GAAMA,EAAGyD,SAAWH,EAAUv0C,KAAKixC,EAAGyD,WAEnE,OAAOD,GAAer4C,EAAQq2C,QAAQgC,GAAaxmC,KAAK,IAAIqmC,iBAGD,SAASK,GAC/DA,IACLN,GAA4BzwC,EAAIoT,EAAc29B,EAAc3/B,EAAO/F,GACnEulC,OAIJP,EAAKj/B,MD3Jb27B,IAAmB,YAAa,WAC9B,SAA4BN,EAAqByB,GAC/C,IAAMz1B,EAASg0B,EAAUp+B,aAEzB,OACEuhC,SAAU,IACVoB,SAAU,iBAAkB,oBAC5BX,KAAM,SAAUj/B,EAAey9B,EAA2BjG,EAAYqI,GACpE,IAGIxW,EAHE9zB,EAAOuqC,GAAYrC,GACnBsC,EAASF,EAAa,IAAMA,EAAa,GAC3CG,EAAyB,KAGvBC,KACAlD,EAAS,WAAM,OAAAmD,GAAa74B,EAAQo2B,EAASwC,IAE7Cl0C,EAAMo0C,GAAc3I,EAAM4I,QAIhC,aACE,IAAMj+B,EAAM46B,IACRiD,GAAcA,IACdD,IAAQC,EAAeD,EAAOM,eAAel+B,EAAIk6B,QAASl6B,EAAIq6B,gBAClD,MAAZr6B,EAAIoe,MAAciX,EAAM8I,KAAK/qC,EAAKsiC,KAAM11B,EAAIoe,MAPlD0f,EAAO5D,QAAUtwC,EAAIR,MACrB00C,EAAO3D,YAAc9E,EAAM+I,WAAavgC,EAAMwgC,MAAMhJ,EAAM+I,eAStDx0C,EAAIiwC,YACNh8B,EAAMu7B,OAAOxvC,EAAIiwC,UAAW,SAAU5xC,GACpC61C,EAAOzD,cAAgB9sC,KAAWtF,GAClCsgC,MACC,GACHuV,EAAOzD,cAAgB9sC,KAAWsQ,EAAMwgC,MAAMz0C,EAAIiwC,aAGpDtR,IAEA1qB,EAAMy5B,IAAI,WAAkB4B,EAAUjT,cAAcqY,gBAAgB/V,IACpE1qB,EAAMy5B,IAAI,WAAkB4B,EAAU96B,kBAAkB+pB,aAAcI,IAEjEn1B,EAAKsnC,YACVxT,EAASqX,GAAUjD,EAASp2B,EAAQy1B,EAAUvnC,EAAMwnC,GACpD4D,GAAWlD,EAASz9B,EAAOqpB,EAAQ4W,EAAO3D,kBA0FlDV,IAAoB,YAAa,WAC/B,SAAmCP,EAAqByB,GACtD,IAAMz1B,EAASg0B,EAAUp+B,aAEzB,OACEuhC,SAAU,IACVoB,SAAU,iBAAkB,oBAC5BX,KAAM,SAAUj/B,EAAey9B,EAA2BjG,EAAYqI,GACpE,IAGIxW,EAHE9zB,EAAOuqC,GAAYrC,GACnBsC,EAASF,EAAa,IAAMA,EAAa,GAC3CG,EAAyB,KAGvBC,KACAlD,EAAS,WAAM,OAAAmD,GAAa74B,EAAQo2B,EAASwC,IAE7CW,GAAc,UAAW,gBAAiB,eAC1CC,EAAgBD,EAAWl3C,OAAO,SAAC0G,EAAKynC,GAAS,OAACznC,EAAIynC,GAAQh8B,EAAMzL,OAE1E,aACE,IAAM+R,EAAM46B,IACRiD,GAAcA,IACdD,IAAQC,EAAeD,EAAOM,eAAel+B,EAAIk6B,QAASl6B,EAAIq6B,gBAClD,MAAZr6B,EAAIoe,MAAciX,EAAM8I,KAAK/qC,EAAKsiC,KAAM11B,EAAIoe,MAGlDqgB,EAAWvxC,QAAQ,SAACyxC,GAClBb,EAAOa,GAAStJ,EAAMsJ,GAAS9gC,EAAMwgC,MAAMhJ,EAAMsJ,IAAU,KAE3DtJ,EAAMuJ,SAASD,EAAO,SAACE,GACrBH,EAAcC,KACdD,EAAcC,GAAS9gC,EAAMu7B,OAAOyF,EAAM,SAACnN,GACzCoM,EAAOa,GAASjN,EAChBnJ,MACC,OAIPA,IAEA1qB,EAAMy5B,IAAI,WAAkB4B,EAAUjT,cAAcqY,gBAAgB/V,IACpE1qB,EAAMy5B,IAAI,WAAkB4B,EAAU96B,kBAAkB+pB,aAAcI,IAEjEn1B,EAAKsnC,YACVxT,EAASqX,GAAUjD,EAASp2B,EAAQy1B,EAAUvnC,EAAMwnC,GACpD4D,GAAWlD,EAASz9B,EAAOqpB,EAAQ4W,EAAO3D,kBAmGlDT,IAAyB,SAAU,eAAgB,eAAgB,YACjE,SAAkCx0B,EAAsB0yB,EAAmBkH,EAAmC5F,GAC5G,OACEmD,SAAU,IACV5I,YAAa,SAAU,WAAY,SACjC,SAAUwJ,EAAgBhD,EAA4B8E,GACpD,IACIC,EACAtB,EAqCIuB,EACAC,EACAC,EAzCJ15B,KAOJu5B,EAAgBF,EAAaC,EAAOK,gBAAkB,IAAI,EAA1CN,CAAiD7B,GAEjE,IACES,EAAeT,EAAOoB,MAAMU,EAAOrB,cACnC,MAAOnrC,IAmBT,WAA+B8C,GAC7BA,EAAMhD,QAAQmB,KAAK+0B,EAAQ7uB,GAkB7B,aACE2lC,EAA8B3B,GAGhC,WAAwC4B,GAClCx0C,EAASw0C,KACX75B,KACAvY,EAAQoyC,EAAkB,SAAUhpB,EAA+CipB,GAEjF,IAAMC,EAAmB,SAAUlpB,EAAqBipB,GACtD,IAAM31C,EAAMo0C,GAAc1nB,GAC1BmpB,EAAS71C,EAAIR,MAAO6zC,EAAOoB,MAAMz0C,EAAIiwC,WAAY0F,IAG/C5zC,EAAS2qB,GAEXkpB,EAAiBlpB,EAAuBipB,GAC/B3zC,EAAQ0qB,IAEjBppB,EAAQopB,EAAa,SAAUA,GAC7BkpB,EAAiBlpB,EAAaipB,QAOxC,WAAkBlmC,EAAmBqmC,EAAkBH,GACrD,IAEMI,GACJv2C,MAHY8b,EAAO4D,IAAIzP,EAAWQ,GAAaogC,MAG7BxzC,KAAM4S,GACxBhP,OAAQq1C,EACRH,YAAaA,GAKf,OAFA95B,EAAO5W,KAAK8wC,GAEL,WACLpxC,EAAWkX,EAAXlX,CAAmBoxC,IAKvB,aACE,IAAMC,EAAe,SAAA/vB,GACjB,OAAAA,EAAI7oB,MAAM,MAAMsD,OAAO4T,IACrB2hC,EAAa,SAACC,GAChB,OAAAA,EAAU74C,IAAI,SAAAQ,GAAK,OAAAA,EAAE83C,cAAat4C,IAAI24C,GAAcr4C,OAAO+I,QAEzDyvC,EAAaF,EAAWp6B,GAAQ3f,OAAO85C,EAAaZ,IAAgBz3C,OAAOkJ,OAC3EuvC,EAAeH,EAAWp6B,EAAOnb,OAAO,SAAA7C,GAAK,OAAAyd,EAAOyI,SAASlmB,EAAE2B,MAAM3C,KAAMgB,EAAE4C,WAE7E41C,IADsBx6B,EAAOnb,OAAO,SAAA7C,GAAK,OAAAyd,EAAOvd,GAAGF,EAAE2B,MAAM3C,KAAMgB,EAAE4C,UAAS1E,OACzCi6C,EAAaZ,MAEhDkB,EAAaF,EAAal6C,OAAOm6C,GAAc14C,OAAOkJ,OACtD0vC,EAAgBJ,EAAWz1C,OAAO,SAAA81C,GAAO,OAACjyC,EAAQ+xC,EAAYE,KAEpEnD,EAAOoD,WAAW,WAChBH,EAAWhzC,QAAQ,SAAAozC,GAAa,OAAArG,EAASsG,SAASD,KAClDH,EAAcjzC,QAAQ,SAAAozC,GAAa,OAAArG,EAASuG,YAAYF,OA7F5DjB,EADA3B,EAAeA,GAAgBoB,EAAaC,EAAOrB,cAAgB,IAAI,EAAxCoB,CAA+C7B,IAI9E/2C,KAAKg4C,eAAiB,SAAUuC,EAAkBlnC,GAGhD,KAAIzO,EAAS4yC,IAAiBj4B,EAAO9f,OAAS,GAA9C,CAGA,IAAMkW,EAAa4jC,EAASgB,EAAUlnC,EAAWmkC,GAEjD,OADAnV,IACO1sB,IAMTohC,EAAO3F,IAAI,YAMH2H,EAAkC/F,EAAUjT,cAAcqY,gBAAgBoC,GAC1ExB,EAA4BhG,EAAU96B,kBAAkBitB,WAAYsV,GACpExB,EAAuClC,EAAO3F,IAAI,sBAAuB/O,GACxE,WACL0W,IACAC,IACAC,OAXAjG,EAAU3tB,QAAQ5R,YACpBgnC,EAAsBzH,EAAU3tB,QAAQ5R,YA8E1C4uB,SAUVtjC,EAAQgzC,OAAO,mBACV2I,UAAU,SAAUpH,IACpBoH,UAAU,eAAgBlH,IAC1BkH,UAAU,iBAAkBlH,IAC5BkH,UAAU,UAAWnH,IE7oB1BoH,GAAe7R,SAAW,UAmB1B8R,GAAuB9R,SAAW,UASlC/pC,EAAQgzC,OAAO,mBACZ3tC,OAAO,UAAWu2C,IAClBv2C,OAAO,kBAAmBw2C,ID+G7BnpC,IAAU,QAAS,WAAY,gBAAiB,eAAgB,KAChE,SAAwB6N,EAAoBu7B,EAAeC,EAAoBlC,EAAmCryC,GAyBhH,IAAMw0C,GACJvE,MAAQ3kC,UAAYC,SAAUwN,EAAMnI,WAAW4kB,qBAC/C8X,YAGI6G,GACJpd,MAAO,EACP6Y,SAAU,MACV6E,UAAU,EACVnkC,SAAU,IACVokC,WAAY,UACZxtB,QAAS,SAAU2oB,EAAkB8E,EAAaC,GAEhD,OAAO,SAAUxjC,EAAeo8B,EAA4B5E,GAC1D,IAMIiM,EACAC,EACAC,EACA5pC,EACA6pC,EAVEC,EAAYrM,EAAc,QAAK,GACjCsM,EAAgBtM,EAAkB,WAClCuM,GArCNC,MAAO,SAASvG,EAAiBztC,EAAaV,GACxClI,EAAQ8uC,QAAQC,MAAQ,EAC1B+M,EAASc,MAAMvG,EAAS,KAAMztC,GAAQ2F,KAAKrG,GAE3C4zC,EAASc,MAAMvG,EAAS,KAAMztC,EAAQV,IAG1C20C,MAAO,SAASxG,EAAiBnuC,GAC3BlI,EAAQ8uC,QAAQC,MAAQ,EAC1B+M,EAASe,MAAMxG,GAAS9nC,KAAKrG,GAE7B4zC,EAASe,MAAMxG,EAASnuC,KA2BtB+lB,EAAY+mB,EAASD,cAAc,YAAciH,EACjDx6C,EAAOq4C,EAAazJ,EAAc,QAAKA,EAAY,MAAK,GAAjDyJ,CAAqDjhC,IAAU,WAQpEkkC,GACJxtC,MAAO,MACP9J,GAAIm2C,EAAUpd,QACd/8B,KAAMA,EACNoD,IAAKqpB,EAAU6mB,QAAQlwC,IAAMqpB,EAAU6mB,QAAQlwC,IAAM,IAAMpD,EAAOA,EAClEsC,OAAQ,KACRm7B,cAYF,SAA+Bn7B,GAC7B,GAAIA,KAAYA,aAAkB6pC,IAAgB,OAClD,GAlDcoP,EAkDGpqC,EAlDqBqqC,EAkDTl5C,EAjD5Bi5C,IAAYC,EAiDyB,OAlD9C,IAAsBD,EAAwBC,EAmDtCtpC,GAAMupC,yBAAyBH,EAAch5C,GAAUA,EAAOgP,UAAYhP,EAAOgP,SAASC,UAE1FJ,EAAa7O,EACbo5C,EAAWp5C,IAjBXuL,sBACE,IAAM8tC,EAAsBt7C,EAAM,yBAANA,CAAgCosB,GAGtDmvB,EAAgBv7C,EAAM,0BAANA,CAAiCosB,GACvD,OAAOkvB,GAAuBC,IAmDlC,WAAoBt5C,GAClB,IAAMu5C,EAAWzkC,EAAM0kC,OACjBC,EAAY/1C,EAAG4e,QAASo3B,EAAYh2C,EAAG4e,QAEvCq3B,GACJhG,KAAM3zC,EACNgxC,QAASgI,GAGLY,GACJC,WAAYJ,EAAUnwC,QACtBwwC,WAAYJ,EAAUpwC,QACtBywC,YAAaL,GAefH,EAASS,MAAM,sBAAuBt8C,GAEtC,IAAMwgB,EAASo6B,EAAYiB,EAAU,SAAS79B,GAC5CA,EAAM3N,KAAK,cAAe6rC,GAC1Bl+B,EAAM3N,KAAK,UAAW4rC,GACtBd,EAASC,MAAMp9B,EAAOw1B,EAAU,WAC9BuI,EAAUt5B,UACNs4B,GAAcA,EAAauB,MAAM,+BAEjC13C,EAAUs2C,KAAmBA,GAAiB9jC,EAAMwgC,MAAMsD,KAC5DX,EAAcv8B,KA/DtB,WAaE,GAZI68B,IACF3oC,GAAMtB,iBAAiB,yBAA0BiqC,EAAWxqC,KAAK,YACjEwqC,EAAW0B,SACX1B,EAAa,MAGXE,IACF7oC,GAAMtB,iBAAiB,mBAAoB0qC,GAC3CP,EAAayB,WACbzB,EAAe,MAGbD,EAAW,CACb,IAAM2B,EAAY3B,EAAUzqC,KAAK,eACjC6B,GAAMtB,iBAAiB,cAAe6rC,GACtCtB,EAASE,MAAMP,EAAW,WACxB2B,EAAUJ,YAAY55B,UACtBo4B,EAAa,OAGfA,EAAaC,EACbA,EAAY,MA6CZ4B,KAGF5B,EAAYt6B,GACZu6B,EAAec,GAWFS,MAAM,qBAAsBh6C,GAAU6O,GACnD4pC,EAAanD,MAAMqD,GAxGrB/oC,GAAMtB,iBAAiB,UAAW0qC,GAWlC9H,EAASnjC,KAAK,WAAaijC,QAASgI,IAEpCI,IAEAV,EAAaj8B,EAAM49B,eAAerB,GAClClkC,EAAMy5B,IAAI,WAAY,WACpB3+B,GAAMtB,iBAAiB,2BAA4B0qC,GACnDN,SA4FR,OAAOb,IAGTyC,GAAmBrU,SAAW,WAAY,cAAe,eAAgB,QAAS,KAAM,YAoFxF,IAAMsU,GAAgF,mBAArDr+C,EAAgBgzC,OAAO,aAAwB,UAE5EsL,GAAe,EAGnB,YAAqC92C,EACAoT,EACAm9B,EACAC,EACAnlC,IAE/BjN,EAAWmyC,EAAmBwG,UAAc1rC,EAAIC,SAASo7B,WAAamQ,IACxEtG,EAAmBwG,UAGrB,IAAMC,EAAiCv3C,GAAK4L,EAAIrI,MAAMrG,MAAMI,KAEtDk6C,GAAgC32C,KAAMiwC,GAE5C,GAAInyC,EAAWmyC,EAAmB2G,mBAAoB,CACpD,IACMC,EADiC,IAAI95B,GAAehS,EAAIrI,MACrB0b,cAAc,gBAAgBrU,KA2BvEmmC,EAAO3F,IAAI,WAAkBz3B,EAAasoB,aAxBpB,SAACoO,GAGrB,GAAIA,IAAiBqN,IAAwF,IAAnErN,EAAa7vB,UAAUpY,QAAQm1C,GAAzE,CAEA,IAAMx+B,EAAWsxB,EAAalsC,OAAO,MAC/Bw5C,EAAatN,EAAalsC,OAAsB,QAChDy5C,EAAoBvN,EAAah5B,cAAcyF,GAAG/b,IAAI,SAACkW,GAAmB,OAAAA,EAAKkH,cAAa9c,OAAO+I,OACnGyzC,EAAsBxN,EAAah5B,cAAcwF,KAAK9b,IAAI,SAACkW,GAAmB,OAAAA,EAAKkH,cAAa9c,OAAO+I,OAGvG0zC,EAAkBF,EAASx5C,OAAO,SAACC,GACvC,IAAMkE,EAAMs1C,EAAWz1C,QAAQ/D,GAC/B,OAAgB,IAATkE,IAAes1C,EAAWt1C,GAAK2E,KAAK1F,OAAOuX,EAAS1a,EAAME,IAAKo5C,EAAWt5C,EAAME,OAIzF,GAAIu5C,EAAgBr+C,OAAQ,CAC1B,IAAMs+C,EAAwBD,EAAgB/8C,IAAI,SAAAQ,GAAK,OAAAA,EAAEgD,KAEnDy5C,EAAY55C,GAAO2a,EAAU,SAAChd,EAAKqF,GAAQ,OAA8B,IAA9B22C,EAAY31C,QAAQhB,KACrE0vC,EAAmB2G,kBAAkBO,EAAW3N,MAGmBmN,IAIzE,GAAI74C,EAAWmyC,EAAmBmH,WAAY,CAC5C,IAAMC,EAAKb,KAILc,EAAmB,SAAChvC,GACtB,QAAEA,IAAUA,EAAe,gBAA8B,IAAzBA,EAAe,cAAE+uC,IAAgBC,EAAiBhvC,EAAM4X,oBActFzP,GAAakJ,QAAS+8B,EAAUh9C,MACtCw2C,EAAO3F,IAAI,WAAkBz3B,EAAakrB,SAASvtB,EAZ/B,SAACnI,GACnB,IAAIhD,EACEiyC,EAAMjvC,EAAe,cAAIA,EAAe,kBAM9C,OAJKgvC,EAAiBhvC,KACpBhD,EAAU5F,EAAGkK,KAAKqmC,EAAmBmH,UAAU9uC,KACvC7B,KAAK,SAAAvL,GAAO,OAAAq8C,EAAIF,IAAe,IAARn8C,IAE1BoK,GAIiEqxC,KAI9Ez+C,EAAQgzC,OAAO,mBAAmB2I,UAAU,SAAgBjpC,IAC5D1S,EAAQgzC,OAAO,mBAAmB2I,UAAU,SAAgByC,IE5c5Dp+C,EAAQgzC,OAAO,mBAAmBrE,SAAS,gBArB3C,WAEE,IAAI2Q,GAAkB,EAEtBr+C,KAAKq+C,gBAAkB,WACrBA,GAAkB,GAGpBr+C,KAAK2yC,MAAQ,gBAAiB,WAAY,SAAU2L,EAAqC7J,GACvF,OAAI4J,EACKC,EAGF,SAAUvK,GACf,OAAOU,EAAS,WACdV,EAAS,GAAGwK,kBACX,GAAG,kBCjBG" } \ No newline at end of file