mobicloud-core 1.0.211 → 1.0.212
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobicloud-core.umd.js","sources":["../../src/lib/mobicloud-core.component.ts","../../../../node_modules/tslib/tslib.es6.js","../../src/lib/types/mobi-user-profile.ts","../../src/lib/types/application-details.ts","../../src/lib/services/mobicloud-config.service.ts","../../src/lib/services/mobicloud-core.service.ts","../../src/lib/token-http-interceptor.ts","../../src/lib/validators/username-validator.ts","../../src/lib/mobicloud-core.module.ts","../../src/lib/guards/mobi-authentication.guard.ts","../../src/lib/guards/mobi-organization.guard.ts","../../src/lib/guards/mobi-b2b.guard.ts","../../src/lib/utils.ts","../../src/lib/types/language-info.ts","../../src/lib/types/theme-info.ts","../../src/lib/types/country.ts","../../src/lib/types/organization-info.ts","../../src/lib/types/ui-types.ts"],"sourcesContent":["import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'lib-mobicloud-core',\n template: `\n <p>\n mobicloud-core works!\n </p>\n `,\n styles: [\n ]\n})\nexport class MobicloudCoreComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import { User } from 'oidc-client';\nimport { Observable } from 'rxjs';\n\nexport class MobiUserProfile {\n user: User | undefined;\n \n constructor(oidc_User: Observable<User | undefined>) {\n oidc_User.subscribe(u => this.user = u); \n }\n \n get idToken() : string | undefined{\n return this.user?.id_token;\n }\n \n get refreshToken() : string | undefined{\n return this.user?.refresh_token;\n }\n \n get accessToken() : string | undefined{\n return this.user?.access_token;\n }\n \n get tokenType() : string | undefined{\n return this.user?.token_type;\n }\n \n get tokenScope() : string | undefined{\n return this.user?.scope;\n }\n \n get tokenExpiresAt() : number | undefined{\n return this.user?.expires_at;\n }\n \n get tokenExpiresAt_Date(): Date | undefined {\n if(this.user)\n return new Date(this.user.expires_at * 1000);\n return undefined;\n }\n \n get tokenExpiresIn() : number | undefined{\n return this.user?.expires_in;\n }\n \n get tokenIsExpired() : boolean | undefined{\n return this.user?.expired;\n }\n \n get shouldRenewToken() : boolean{\n if(this.user)\n return this.user.expires_in <= 120;\n return false;\n }\n \n // --- Profile\n get user_id() : string | undefined{\n return this.user?.profile?.sub;\n }\n \n get user_name() : string | undefined{\n return this.user?.profile?.name;\n }\n \n get user_username() : string | undefined{\n return this.user?.profile?.username;\n }\n \n get user_email() : string | undefined{\n return this.user?.profile?.email;\n }\n \n get user_partytype() : string | undefined{\n return this.user?.profile?.partytype;\n }\n \n get user_partyid() : string | undefined{\n return this.user?.profile?.partyid;\n }\n \n get user_partyname() : string | undefined{\n return this.user?.profile?.partyname;\n }\n \n get user_accountnumber() : string | undefined{\n return this.user?.profile?.account_number;\n }\n \n get user_authtype() : string | undefined{\n return this.user?.profile?.auth_type;\n }\n \n get user_roles() : string[] | undefined {\n return this.user?.profile?.role;\n }\n \n get isOrganizationAdmin() : boolean | undefined{\n if(this.user_roles)\n return this.user_roles?.includes('ORGADMIN');\n return false;\n }\n \n get isOrganizationUser() : boolean | undefined{\n if(this.user_roles)\n return this.user_roles?.includes('ORGUSER');\n return false;\n }\n \n get isEmployeeUser() : boolean | undefined{\n if(this.user_roles)\n return this.user_roles?.includes('EMPUSER');\n return false;\n }\n \n get employeeNumber() : string | undefined{\n return this.user?.profile?.empl_number;\n } \n \n //-- B2B -----\n\n get isCustomerUser() : boolean | undefined{\n if(this.user_roles)\n return this.user_roles.includes('CUSTUSER');\n return false;\n }\n \n get user_customer_id() : string | undefined{\n return this.user?.profile?.cust_id;\n }\n\n get user_customer_accountnumber() : string | undefined{\n return this.user?.profile?.cust_account;\n }\n\n get user_customer_name() : string | undefined{\n return this.user?.profile?.cust_name;\n }\n\n get isVendorUser() : boolean{\n if(this.user_roles)\n return this.user_roles.includes('VENDUSER');\n return false;\n }\n\n get isMasterUser() : boolean{\n if(this.user_roles)\n return this.user_roles.includes('MASTER');\n return false;\n }\n\n get isMasterAdmin() : boolean{\n if(this.user_roles)\n return this.user_roles.includes('MASTERADMIN');\n return false;\n }\n\n get user_vendor_id() : string | undefined{\n return this.user?.profile?.vend_id;\n }\n\n get user_vendor_accountnumber() : string | undefined{\n return this.user?.profile?.vend_account;\n }\n\n get user_vendor_name() : string | undefined{\n return this.user?.profile?.vend_name;\n } \n\n get isB2BUser() : boolean{\n return this.isCustomerUser || this.isVendorUser;\n }\n }","export class ApplicationDetails {\n\tName!: \t\tstring;\n OrganizationId!: \t\tstring;\n\tOrganizationName!:\t\t\tstring; \n OrganizationEmail!: \t\tstring; \n OrganizationAccountNumber!: string;\n StorageAccountName!: string;\n ServicebusName!: string;\n\n HashedPasswords!: \t\tboolean | undefined;\n CertificateLogin!: \t\tboolean | undefined;\n AllowSubOrganizations!: \tboolean | undefined;\n\n MapProvider?: MapProvider | undefined;\n MapProviderKey?: string | undefined;\n}\n\nexport class ProfileDetails {\n Id?: \t string|undefined;\n Name?: string|undefined;\n\tImage?: ProfileImage|undefined; \n}\n\nexport class ProfileImage {\n\tStorageAccountName?: string|undefined;\n BlobContainerName: \tstring|undefined;\n\tBlobName?: string|undefined; \n}\n\nexport enum MapProvider\n{\n None = \"None\",\n Bing = \"Bing\",\n Google = \"Google\"\n}","import { Injectable, Injector, LOCALE_ID, Inject, EventEmitter } from '@angular/core';\nimport '@angular/localize/init';\nimport { BehaviorSubject } from \"rxjs\";\nimport { HttpClient } from '@angular/common/http';\nimport { registerLocaleData } from '@angular/common';\nimport localeDA from '@angular/common/locales/da';\nimport { LanguageInfo } from \"../types/language-info\";\nimport { ThemeInfo } from \"../types/theme-info\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobicloudConfigService {\n\n AppInjector: Injector;\n\n public _config_name: string = '';\n public _app_name: string = '';\n public _environment: string = '';\n public _default_api_baseurl: string = ''; \n public _host_url: string = '';\n public _host_url_en: string = '';\n public _oidc_authority: string = '';\n public _oidc_client_id: string = '';\n public _oidc_client_secret: string = ''; \n public _oidc_response_type: string = '';\n public _oidc_scopes: string = '';\n public _log_httptrafic: number = 0;\n public _themes_enabled: boolean|undefined = false;\n\n private localeIdSource = new BehaviorSubject<string>(\"\");\n localeIdObservable = this.localeIdSource.asObservable();\n private languageNameSource = new BehaviorSubject<string>(\"\");\n languageNameObservable = this.languageNameSource.asObservable();\n\n private themeName: string = '';\n public themeNameSource = new BehaviorSubject<string>(\"\");\n public themeNameObservable = this.themeNameSource.asObservable();\n\n public ThemeChange: EventEmitter<string> = new EventEmitter<string>();\n\n constructor(private http: HttpClient, private injector: Injector, @Inject(LOCALE_ID) public localeId: string) {\n this.AppInjector = injector;\n console.log(\"Application Language:\", this.CurrentLanguage);\n // console.log(\"Application baseHref:\", this.baseHref);\n if(this.localeId == \"da\") {\n registerLocaleData(localeDA, 'da'); \n }\n this.localeIdSource.next(this.localeId);\n this.languageNameSource.next(this.getLanguageName(this.localeId));\n\n // this.themeNameSource.next(\"default\");\n this.themeNameObservable.subscribe(p => this.themeName = p);\n }\n\n getConfigData(config_file: string) :Promise<any> {\n // var locale_path = \"\";\n // if(this.localeId){\n // locale_path = `${this.localeId}/`;\n // }\n // var config_file_url = `/${locale_path}assets/${config_file}`\n var config_file_url = `./assets/${config_file}`\n console.log(\"Loading config:\", config_file, config_file_url);\n \n const promise = this.http.get(config_file_url)\n .toPromise()\n .then(configdata => {\n Object.assign(this, configdata);\n return configdata;\n });\n\n return promise;\n }\n\n getLanguageName(locale: string) : string {\n if(locale == \"da\"){\n return $localize`:@@LanguageName-da:Danish`;\n }\n else{\n return $localize`:@@LanguageName-en-US:English`;\n } \n }\n\n get CurrentLanguage() : string {\n if(this.localeId == \"da\"){\n return \"DK\";\n }\n else if(this.localeId == \"en-US\"){\n return \"US\";\n } \n else {\n return this.localeId;\n }\n }\n \n getSupportedLanguages() : LanguageInfo[]\n {\n const languages: LanguageInfo[] = [{LocaleId: 'da', LanguageName: this.getLanguageName('da'), FlagCode: 'DK'}, {LocaleId: 'en-US', LanguageName: this.getLanguageName('en-US'), FlagCode: 'GB'}];\n return languages;\n }\n\n getThemeCaption(locale: string) : string {\n if(locale == \"default\"){\n return $localize`:@@ThemeCaption-default:Default`;\n }\n else{\n return $localize`:@@ThemeCaption-Dark:Dark`;\n } \n }\n\n getSupportedThemes() : ThemeInfo[]\n {\n const themes: ThemeInfo[] = [{ThemeName: 'default', ThemeCaption: this.getThemeCaption('default'), Svg: 'mobicloud_theme_default'}, {ThemeName: 'dark', ThemeCaption: this.getThemeCaption('dark'), Svg: 'mobicloud_theme_dark'}];\n return themes;\n }\n\n changeTheme(_themeName: string){\n console.log(\"Changing theme\");\n this.ThemeChange.emit(_themeName); \n }\n\n getApiSiteUrl() : string{\n return `${this._default_api_baseurl}`;\n }\n\n getApiBaseUrl() : string{\n return `${this.getApiSiteUrl()}api/`;\n }\n\n getMobiManagementDataUrl() : string{\n return `${this.getApiBaseUrl()}mobimanagement/`;\n } \n\n getRepositoryUrl() : string{\n return `${this.getApiBaseUrl()}repository/`;\n } \n\n get config_name(): string {\n return this._config_name;\n }\n \n get app_name(): string {\n return this._app_name;\n }\n\n get environment(): string {\n return this._environment;\n }\n\n get oidc_authority(): string {\n return this._oidc_authority;\n }\n\n get oidc_client_id(): string {\n return this._oidc_client_id;\n }\n\n get oidc_client_secret(): string {\n return this._oidc_client_secret;\n }\n\n get host_url(): string {\n return this._host_url;\n }\n\n get host_url_en(): string {\n return this._host_url_en;\n }\n\n get oidc_base_url(): string {\n if(this.localeId == \"da\") {\n return this.host_url;\n }\n else{\n return this.host_url_en;\n } \n }\n\n get oidc_redirect_uri(): string {\n return `${this.oidc_base_url}signin-callback`;\n }\n\n get oidc_redirect_silent_uri(): string {\n return `${this.oidc_base_url}signin-silent-callback`;\n }\n\n get oidc_post_logout_redirect_uri(): string {\n return `${this.oidc_base_url}signout-callback`;\n }\n\n get oidc_response_type(): string {\n return this._oidc_response_type;\n }\n\n get oidc_scopes(): string {\n return this._oidc_scopes;\n }\n\n get log_httptrafic(): number {\n return this._log_httptrafic;\n }\n\n get themes_enabled(): boolean|undefined {\n return this._themes_enabled;\n }\n \n}\n","import { Injectable, EventEmitter } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { UserManager, User } from 'oidc-client';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map, timeout } from 'rxjs/operators';\nimport { BehaviorSubject } from \"rxjs\";\n\nimport { MobicloudConfigService } from \"./mobicloud-config.service\";\nimport { MobiUserProfile } from \"../types/mobi-user-profile\";\n// import { OrganizationInfo } from \"../types/organization-info\";\nimport { ApplicationDetails, ProfileDetails } from \"../types/application-details\";\nimport { Country } from \"../types/country\";\nimport { IODataResult } from \"../types/odata-result\";\nimport { getProfileImageUrl } from \"../utils\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobicloudCoreService {\n\n public _appVersion: string = '';\n public _appName: string = '';\n\n public require_Organization:boolean = true;\n public require_Customer:boolean = false;\n public require_Vendor:boolean = false;\n\n private manager: UserManager | undefined;\n\n private oidc_UserSource = new BehaviorSubject<User | undefined>(undefined);\n oidc_User:Observable<User | undefined> = this.oidc_UserSource.asObservable(); \n public user: User | undefined | null;\n\n mobiUserProfile: MobiUserProfile | undefined;\n private mobiUserProfileSource = new BehaviorSubject<MobiUserProfile | undefined>(undefined);\n mobiUserProfileObservable = this.mobiUserProfileSource.asObservable();\n\n private applicationDetailsSource = new BehaviorSubject<ApplicationDetails | undefined>(undefined);\n applicationDetailsObservable = this.applicationDetailsSource.asObservable(); \n applicationDetails: ApplicationDetails| undefined;\n\n private profileDetailsSource = new BehaviorSubject<ProfileDetails | undefined>(undefined);\n profileDetailsObservable = this.profileDetailsSource.asObservable(); \n profileDetails: ProfileDetails|undefined;\n\n private countriesSource = new BehaviorSubject<Map<string|undefined, Country> | undefined>(undefined);\n countriesObservable = this.countriesSource.asObservable(); \n countries: Map<string | undefined, Country>| undefined; \n\n public UserChanged: EventEmitter<{user: User|undefined|null, profile: MobiUserProfile|undefined, profileDetails:ProfileDetails|undefined}> = new EventEmitter<{user: User|undefined|null, profile: MobiUserProfile|undefined, profileDetails:ProfileDetails|undefined}>();\n\n constructor(protected httpClient: HttpClient, public configService: MobicloudConfigService) {\n this.manager = new UserManager(\n {\n authority: configService.oidc_authority,\n client_id: configService.oidc_client_id,\n client_secret: configService.oidc_client_secret,\n redirect_uri: configService.oidc_redirect_uri,\n post_logout_redirect_uri: configService.oidc_post_logout_redirect_uri,\n response_type: configService.oidc_response_type,\n scope: configService.oidc_scopes,\n filterProtocolClaims: true,\n loadUserInfo: true,\n silent_redirect_uri: configService.oidc_redirect_silent_uri\n }\n );\n\n this.manager.clearStaleState();\n this.manager.getUser().then(user => {\n this.user = user;\n this.onUserChanged();\n });\n \n this.mobiUserProfile = new MobiUserProfile(this.oidc_User);\n }\n\n protected onUserChanged() : void\n {\n if (this.user) {\n this.oidc_UserSource.next(this.user);\n this.mobiUserProfileSource.next(this.mobiUserProfile);\n this.getApplicationDetails();\n }\n else {\n this.oidc_UserSource.next(undefined); \n this.mobiUserProfileSource.next(undefined);\n this.applicationDetailsSource.next(undefined);\n // this.organizationInfoSource.next(null); \n }\n this.fetchProfileDetails().then(res => \n {\n // console.log(\"fetchProfileDetails complete\", res, this.user);\n this.UserChanged.emit({user: this.user, profile: this.mobiUserProfile, profileDetails: this.profileDetails});\n }).catch((error:any) =>\n {\n console.error(error);\n this.UserChanged.emit({user: this.user, profile: this.mobiUserProfile, profileDetails: this.profileDetails});\n });\n }\n\n getApplicationDetails(){\n // console.log(\"Getting organizationinfo on user changed ...\");\n this.fetchApplicationDetails().then(appdetails => \n {\n // console.log(\"fetchApplicationDetails complete\", appdetails);\n });\n this.fetchCountries().then(countries => \n {\n // console.log(\"fetchCountries complete\", countries);\n });\n } \n\n fetchApplicationDetails() : Promise<ApplicationDetails|undefined>{\n if(this.isAuthenticated()){\n var masterorg_valid:boolean = true;\n if(this.isMasterUserAuthenticated()){\n if(this.hasMasterOrganization()){\n masterorg_valid = true;\n }\n else{\n masterorg_valid = false;\n }\n }\n\n if(masterorg_valid){\n const url = `${this.configService.getApiBaseUrl()}ApplicationDetails?key=${this.configService.app_name}&env=${this.configService.environment}`;\n\n const applicationDetail_Observable = this.httpClient.get<ApplicationDetails>(url)\n .pipe(timeout(15000), catchError(this.handleError)).pipe(map(appDetails => \n {\n this.applicationDetails = appDetails; \n if(this.applicationDetails){ \n this.applicationDetailsSource.next(this.applicationDetails);\n // console.log(\"Current ApplicationDetails\", this.applicationDetails); \n }\n else{\n this.applicationDetailsSource.next(undefined);\n // console.log(\"An empty ApplicationDetails was returned\");\n }\n return appDetails;\n },\n (err: any) => \n {\n console.error(\"fetchApplicationDetails error:\", err);\n this.applicationDetails = undefined;\n this.applicationDetailsSource.next(undefined);\n return undefined;\n } \n ));\n return applicationDetail_Observable.toPromise();\n }\n else{\n console.warn(\"ApplicationDetails is null, MasterOrganization is not selected\");\n this.applicationDetails = undefined;\n this.applicationDetailsSource.next(undefined);\n\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n else{\n console.warn(\"ApplicationDetails is null, user not authenticated\");\n this.applicationDetails = undefined;\n this.applicationDetailsSource.next(undefined);\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n fetchCountries() : Promise<Map<string|undefined,Country>>{\n const mobimanagementUrl = this.configService.getMobiManagementDataUrl();\n return this.httpClient.get<IODataResult<Country>>(`${mobimanagementUrl}Country?$filter=enabled eq true&$orderby=Name&$select=code2,Name,LocalName,TradeArea`)\n .pipe(timeout(15000), catchError(this.handleError)).pipe(map(result => \n {\n this.countries = new Map<string | undefined, Country>(result?.value.map(i => [i.Code2, i]));\n this.countriesSource.next(this.countries);\n return this.countries;\n },\n (err: any) => \n {\n console.error(err);\n } \n )).toPromise();\n }\n \n\n fetchProfileDetails() : Promise<ProfileDetails|undefined>{\n if(this.isAuthenticated() && this.mobiUserProfile?.user_id){ \n\n var url:string|undefined;\n if(this.mobiUserProfile.isEmployeeUser){\n url = `${this.configService.getMobiManagementDataUrl()}employee(${this.mobiUserProfile.user_id})?$expand=Image($select=StorageAccountName,BlobContainerName,BlobName)`;\n }\n else if(this.mobiUserProfile.isCustomerUser){\n url = `${this.configService.getMobiManagementDataUrl()}customeruser(${this.mobiUserProfile.user_id})?$expand=Image($select=StorageAccountName,BlobContainerName,BlobName)`;\n }\n else if(this.mobiUserProfile.isVendorUser){\n url = `${this.configService.getMobiManagementDataUrl()}vendoruser(${this.mobiUserProfile.user_id})?$expand=Image($select=StorageAccountName,BlobContainerName,BlobName)`;\n }\n\n // console.log(\"fetchProfileDetails\", url, this.mobiUserProfile?.user_id);\n\n if(url){\n const applicationDetail_Observable = this.httpClient.get<IODataResult<any>>(url)\n .pipe(timeout(15000), catchError(this.handleError)).pipe(map(user_result => \n {\n var profile_details:ProfileDetails|undefined;\n if(user_result.value){\n this.profileDetails = Object.assign(new ProfileDetails(), {Id: user_result.value[0]?.Id?.toString(), Name: user_result.value[0]?.Name, Image: user_result.value[0]?.Image}); \n if(this.profileDetails){ \n this.profileDetailsSource.next(this.profileDetails);\n // console.log(\"Current ProfileDetails\", this.profileDetails, getProfileImageUrl(this.profileDetails.Image?.StorageAccountName, this.profileDetails.Image?.BlobContainerName, this.profileDetails.Image?.BlobName)); \n }\n else{\n this.profileDetailsSource.next(undefined);\n // console.log(\"An empty ProfileDetails was returned\");\n } \n }\n return profile_details;\n },\n (err: any) => \n {\n console.error(\"fetchApplicationDetails error:\", err);\n this.profileDetails = undefined;\n this.profileDetailsSource.next(undefined);\n return undefined;\n } \n ));\n\n return applicationDetail_Observable.toPromise();\n }\n else{\n // console.log(\"An empty url was returned\", this.mobiUserProfile.isEmployeeUser, this.mobiUserProfile.isCustomerUser, this.mobiUserProfile.isVendorUser);\n this.profileDetails = undefined;\n this.profileDetailsSource.next(undefined);\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n else{\n // console.log(\"User not auth\", this.mobiUserProfile, this.mobiUserProfile?.user_id);\n this.profileDetails = undefined;\n this.profileDetailsSource.next(undefined);\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n // --- SignIn ------------------------------------------------------\n\n public async signIn(redirectUrl: string): Promise<any> {\n return await this.manager?.signinRedirect({ data: { redirectUrl: redirectUrl } }).catch( (reason: any) =>\n {\n console.error(\"signIn failed:\", reason, this.mobiUserProfile);\n return throwError(reason);\n });\n }\n\n public async completeSignIn(): Promise<User|undefined> { \n //throw new Error(\"Signin error super: invalid redirect url\"); \n this.user = await this.manager?.signinRedirectCallback();\n this.onUserChanged();\n return this.user;\n }\n\n // --- Silent SignIn -----------------------------------------------\n\n public async signInSilent(): Promise<any> { \n return await this.manager?.signinSilent().then(user =>\n {\n this.onSignedInSilent(user);\n }).catch( (reason: any) =>\n {\n console.error(\"signInSilent failed:\", reason, this.mobiUserProfile);\n return throwError(reason);\n });\n }\n\n public onSignedInSilent(user: User){\n this.user = user;\n this.onUserChanged();\n }\n\n public async completeSilentSignIn() : Promise<any>{ \n return await this.manager?.signinSilentCallback();\n }\n\n // --- SignOut -----------------------------------------------------\n\n public async signout(): Promise<any> {\n return await this.manager?.signoutRedirect();\n }\n\n public async completeSignout() {\n this.onUserChanged();\n }\n\n // --- Helper methods -----------------------------------------------------\n\n public isAuthenticated(): boolean {\n return this.user != null && !this.user.expired;\n }\n\n public isOrganizationAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin || this.mobiUserProfile.isEmployeeUser);\n }\n\n public isMasterOrganizationAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin || this.mobiUserProfile.isEmployeeUser)) || this.isMasterUserAuthenticated();\n }\n\n public isOrganizationUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin);\n }\n\n public isMasterOrganizationUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin)) || this.isMasterUserAuthenticated();\n }\n\n public isMasterOrganizationAdminAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationAdmin)) || this.isMasterUserAuthenticated();\n }\n\n public isEmployeeAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin || this.mobiUserProfile.isEmployeeUser);\n }\n\n public isMasterEmployeeAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin || this.mobiUserProfile.isEmployeeUser)) || this.isMasterUserAuthenticated();\n } \n\n public isCustomerUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isCustomerUser);\n }\n\n public isMasterCustomerUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isCustomerUser)) || this.isMasterUserAuthenticated();\n }\n\n public isVendorUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isVendorUser);\n }\n\n public isMasterVendorUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isVendorUser)) || this.isMasterUserAuthenticated();\n } \n\n public isB2BAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.isOrganizationAuthenticated() || this.isCustomerUserAuthenticated()|| this.isVendorUserAuthenticated());\n }\n\n public isMasterB2BAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.isOrganizationAuthenticated() || this.isCustomerUserAuthenticated()|| this.isVendorUserAuthenticated()) || this.isMasterUserAuthenticated();\n }\n\n public isMasterUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isMasterUser || this.mobiUserProfile.isMasterAdmin);\n }\n\n public isMasterAdminAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isMasterAdmin);\n }\n\n public hasMasterOrganization(): boolean {\n var strMasterOrganizationId = localStorage.getItem(\"MasterOrganizationId\");\n if(strMasterOrganizationId && strMasterOrganizationId.length > 0){\n return true;\n }\n else{\n return false;\n }\n }\n\n public getMasterOrganization(): string|null {\n var strMasterOrganizationId = localStorage.getItem(\"MasterOrganizationId\");\n return strMasterOrganizationId;\n }\n\n public setMasterOrganization(strMasterOrganizationId: string|null): Promise<void> {\n if(strMasterOrganizationId){\n localStorage.setItem(\"MasterOrganizationId\", strMasterOrganizationId);\n return this.fetchApplicationDetails().then(appdetails => \n {\n console.log(\"setMasterOrganization complete:\", appdetails);\n }); \n }\n else{\n this.removeMasterOrganization();\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n public removeMasterOrganization(): void {\n localStorage.removeItem(\"MasterOrganizationId\");\n }\n\n public hasMasterCustomer(): boolean {\n var strMasterCustomerId = localStorage.getItem(\"MasterCustomerId\");\n if(strMasterCustomerId && strMasterCustomerId.length > 0){\n return true;\n }\n else{\n return false;\n }\n }\n\n public getMasterCustomer(): string|null {\n var strMasterCustomerId = localStorage.getItem(\"MasterCustomerId\");\n return strMasterCustomerId;\n }\n\n public setMasterCustomer(strMasterCustomerId: string|null): Promise<void> {\n if(strMasterCustomerId){\n localStorage.setItem(\"MasterCustomerId\", strMasterCustomerId);\n return new Promise(resolve => { resolve(undefined); }); \n }\n else{\n this.removeMasterCustomer();\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n public removeMasterCustomer(): void {\n localStorage.removeItem(\"MasterCustomerId\");\n } \n\n public hasMasterVendor(): boolean {\n var strMasterVendorId = localStorage.getItem(\"MasterVendorId\");\n if(strMasterVendorId && strMasterVendorId.length > 0){\n return true;\n }\n else{\n return false;\n }\n }\n\n public getMasterVendor(): string|null {\n var strMasterVendorId = localStorage.getItem(\"MasterVendorId\");\n return strMasterVendorId;\n }\n\n public setMasterVendor(strMasterVendorId: string|null): Promise<void> {\n if(strMasterVendorId){\n localStorage.setItem(\"MasterVendorId\", strMasterVendorId);\n return new Promise(resolve => { resolve(undefined); }); \n }\n else{\n this.removeMasterVendor();\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n public removeMasterVendor(): void {\n localStorage.removeItem(\"MasterVendorId\");\n } \n\n public redirectUrl(): string {\n return this.user?.state?.redirectUrl;\n }\n\n public get accessToken(): string {\n return this.user?.access_token ?? '';\n }\n\n public get authorizationHeader(): string|undefined {\n return this.user?.token_type?.concat(\" \", this.user.access_token);\n }\n\n public get tokenExpiresAt(): Date|undefined {\n if(this.user)\n return new Date(this.user.expires_at * 1000);\n return undefined;\n }\n\n public get tokenValidUntil(): Date|undefined {\n if(this.user)\n return new Date((this.user.expires_at -120) * 1000);\n return undefined;\n }\n\n public get isTokenExpired(): boolean {\n if(this.user)\n return this.user?.expires_in <= 120;\n return false;\n }\n\n handleError(error:any) {\n let errorMessage = '';\n if (error && error.error && error.error.error){\n //Get Json error\n errorMessage = error.error.error;\n }\n else if(error && error.error instanceof ErrorEvent) {\n // Get client-side error\n errorMessage = error.error.message;\n } \n else {\n // Get server-side error\n errorMessage = `Error Code: ${error.status}\\nMessage: ${error.message}`;\n }\n // window.alert(errorMessage);\n return throwError(errorMessage);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport {HttpEvent,HttpInterceptor,HttpHandler,HttpRequest,HttpErrorResponse} from \"@angular/common/http\";\nimport { Observable } from \"rxjs\";\n\n// import { ConfigService } from \"../../services/config.service\";\n// import { UserService } from \"../../services/user.service\";\nimport { MobicloudConfigService } from \"./services/mobicloud-config.service\";\nimport { MobicloudCoreService } from \"./services/mobicloud-core.service\";\n\nimport { fromPromise } from 'rxjs/observable/fromPromise';\nimport { switchMap } from 'rxjs/operators';\n\n@Injectable()\nexport class TokenHttpInterceptor implements HttpInterceptor {\n \n private coreService: MobicloudCoreService | undefined;\n\n constructor(protected configService: MobicloudConfigService) \n { \n }\n\n intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n // All HTTP requests are going to go through this method\n\n if(this.configService?._default_api_baseurl && req.url.includes(this.configService._default_api_baseurl)){\n if(this.coreService === undefined){ \n this.coreService = this.configService.AppInjector.get(MobicloudCoreService);\n }\n // console.log(\"userservice: \" + this.userService);\n if(this.configService.log_httptrafic > 1){\n console.log({log: \"token-http-interceptor request\", request: req});\n }\n if (!req.headers.has(\"Access-Control-Allow-Origin\")) {\n req = req.clone({\n headers: req.headers.set(\"Access-Control-Allow-Origin\", \"*\")\n });\n }\n\n const language: string = this.configService.CurrentLanguage;\n \n if (language && !req.headers.has(\"Language\")) {\n req = req.clone({\n headers: req.headers.set(\"Language\", language)\n });\n }\n if (language && !req.headers.has(\"Application\")) {\n req = req.clone({\n headers: req.headers.set(\"Application\", this.configService._app_name)\n });\n } \n if(this.configService.log_httptrafic > 1){\n console.log(req.headers); \n }\n if(this.coreService && this.coreService.isAuthenticated()){\n if(this.coreService.isTokenExpired) {\n if(this.configService.log_httptrafic > 0)\n console.warn({log: \"token is expired (silent signin)\", tokenValidUntil: this.coreService.tokenValidUntil, tokenExpiresAt: this.coreService.tokenExpiresAt, is: this.coreService.isTokenExpired, auth_header: this.coreService.authorizationHeader, user: this.coreService.user} );\n return fromPromise(this.coreService.signInSilent()).pipe(\n switchMap((user) => {\n if(this.configService.log_httptrafic > 0)\n console.log({log: \"token renewed (adding new token)\", tokenValidUntil: this.coreService?.tokenValidUntil, tokenExpiresAt: this.coreService?.tokenExpiresAt, is: this.coreService?.isTokenExpired, auth_header: this.coreService?.authorizationHeader, user: this.coreService?.user} );\n req = req.clone({headers: req.headers.set(\"Authorization\", this.coreService?.authorizationHeader ?? '')}); \n\n // if(this.coreService && this.coreService.isMasterUserAuthenticated() && this.coreService.require_Organization && !req.headers.has(\"OrganizationId\")){\n if(this.coreService && this.coreService.require_Organization && !req.headers.has(\"OrganizationId\")){ \n var strMasterOrganizationId = this.coreService.getMasterOrganization();\n if(strMasterOrganizationId && strMasterOrganizationId.length > 0){\n req = req.clone({headers: req.headers.set(\"OrganizationId\", strMasterOrganizationId)});\n }\n } \n\n // if(this.coreService && this.coreService.isMasterEmployeeAuthenticated() && this.coreService.require_Customer && !req.headers.has(\"CustomerId\")){\n if(this.coreService && this.coreService.require_Customer && !req.headers.has(\"CustomerId\")){ \n var strMasterCustomerId = this.coreService.getMasterCustomer();\n if(strMasterCustomerId && strMasterCustomerId.length > 0){\n req = req.clone({headers: req.headers.set(\"CustomerId\", strMasterCustomerId)});\n }\n }\n\n // if(this.coreService && this.coreService.isMasterEmployeeAuthenticated() && this.coreService.require_Vendor && !req.headers.has(\"VendorId\")){\n if(this.coreService && this.coreService.require_Vendor && !req.headers.has(\"VendorId\")){ \n var strMasterVendorId = this.coreService.getMasterVendor();\n if(strMasterVendorId && strMasterVendorId.length > 0){\n req = req.clone({headers: req.headers.set(\"VendorId\", strMasterVendorId)});\n }\n } \n\n return next.handle(req);\n })\n );\n } \n else{\n if(this.configService.log_httptrafic > 0)\n console.log({log: \"token not expired\", tokenValidUntil: this.coreService.tokenValidUntil, tokenExpiresAt: this.coreService.tokenExpiresAt, is: this.coreService.isTokenExpired, auth_header: this.coreService.authorizationHeader, user: this.coreService.user} );\n if (!req.headers.has(\"Authorization\")) {\n req = req.clone({headers: req.headers.set(\"Authorization\", this.coreService.authorizationHeader ?? '')}); \n }\n // if(this.coreService.isMasterUserAuthenticated() && !req.headers.has(\"OrganizationId\")){\n if(this.coreService && this.coreService.require_Organization && !req.headers.has(\"OrganizationId\")){\n var strMasterOrganizationId = this.coreService.getMasterOrganization();\n if(strMasterOrganizationId && strMasterOrganizationId.length > 0){\n req = req.clone({headers: req.headers.set(\"OrganizationId\", strMasterOrganizationId)});\n }\n }\n // if(this.coreService && this.coreService.isMasterEmployeeAuthenticated() && this.coreService.require_Customer && !req.headers.has(\"CustomerId\")){\n if(this.coreService && this.coreService.require_Customer && !req.headers.has(\"CustomerId\")){ \n var strMasterCustomerId = this.coreService.getMasterCustomer();\n if(strMasterCustomerId && strMasterCustomerId.length > 0){\n req = req.clone({headers: req.headers.set(\"CustomerId\", strMasterCustomerId)});\n }\n }\n\n // if(this.coreService && this.coreService.isMasterEmployeeAuthenticated() && this.coreService.require_Vendor && !req.headers.has(\"VendorId\")){\n if(this.coreService && this.coreService.require_Vendor && !req.headers.has(\"VendorId\")){ \n var strMasterVendorId = this.coreService.getMasterVendor();\n if(strMasterVendorId && strMasterVendorId.length > 0){\n req = req.clone({headers: req.headers.set(\"VendorId\", strMasterVendorId)});\n }\n } \n return next.handle(req);\n }\n }\n else{\n if(this.configService.log_httptrafic > 0)\n console.log({log: \"user not athenticated\", tokenValidUntil: this.coreService.tokenValidUntil, tokenExpiresAt: this.coreService.tokenExpiresAt, is: this.coreService.isTokenExpired, auth_header: this.coreService.authorizationHeader, user: this.coreService.user} );\n return next.handle(req); \n } \n } \n else{\n if(this.configService.log_httptrafic > 1)\n console.log(\"not app request: \", req);\n return next.handle(req);\n } \n } \n}\n","import { Injectable } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport { Observable, throwError } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport { catchError, map, timeout } from 'rxjs/operators';\n\nimport { MobicloudCoreService } from \"../services/mobicloud-core.service\";\n\n@Injectable()\nexport class UsernameValidator {\n\n currentUserId: string |undefined;\n debouncer: any |undefined;\n\n constructor(protected httpClient: HttpClient, public coreService: MobicloudCoreService){ \n } \n \n checkUsername(control: FormControl): any {\n\n clearTimeout(this.debouncer);\n \n return new Promise(resolve => {\n \n this.debouncer = setTimeout(() => {\n let parameterString = `?username=${control.value}`;\n if(this.currentUserId){\n parameterString += `¤tUserId=${this.currentUserId}`;\n }\n this.executeFunction<boolean>(parameterString).then(response => {\n response.subscribe((result) => {\n if(result){\n // console.log(\"user taken\");\n resolve({ \n \"usernametaken\": true\n });\n } else{\n // console.log(\"user not taken\");\n resolve(null);\n } \n });\n }),\n (err:any) => { \n resolve({'usernametaken': true});\n }\n }, 1000); \n \n });\n }\n\n async executeFunction<T>(parameterString: string = '', requestTimeout: number = 30000) : Promise<Observable<T>>{\n console.log(`${this.coreService.configService.getMobiManagementDataUrl()}Employee/UsernameTaken()${parameterString}`);\n return this.httpClient.get<any>(`${this.coreService.configService.getMobiManagementDataUrl()}Employee/UsernameTaken()${parameterString}`)\n .pipe(timeout(requestTimeout), catchError(this.handleError))\n .pipe(map(result => result['value'])); \n }\n \n handleError(error:any) {\n let errorMessage = '';\n if (error && error.error && error.error.error){\n //Get Json error\n errorMessage = error.error.error;\n }\n else if(error && error.error instanceof ErrorEvent) {\n // Get client-side error\n errorMessage = error.error.message;\n } \n else {\n // Get server-side error\n errorMessage = `Error Code: ${error.status}\\nMessage: ${error.message}`;\n }\n // window.alert(errorMessage);\n return throwError(errorMessage);\n } \n \n \n public usernameValidation_devextreme(username: string, currentUserId: string | undefined) : Promise<void>{\n let parameterString = `?username=${username}`;\n if(currentUserId){\n parameterString += `¤tUserId=${currentUserId}`;\n }\n \n const url = `${this.coreService.configService.getMobiManagementDataUrl()}Employee/UsernameTaken()${parameterString}`;\n return new Promise<void>((resolve, reject) => {\n this.httpClient.get(url)\n .toPromise()\n .then((res: any) => {\n res.isValid = !res.value;\n if(res.isValid){\n res.message = $localize`:@@ValidationText-UsernameAvailable:Username is available`;\n resolve(res);\n }\n else{\n res.message = $localize`:@@ErrorText-UsernameTaken:Username is not available`;\n reject(res.message)\n }\n // console.log(res);\n })\n .catch(error => {\n console.error(error);\n reject(\"Error: Unable to validate username\");\n });\n })\n } \n \n public usernameValidation_customer_devextreme(customerId: string, username: string, currentUserId: string | undefined) : Promise<void>{\n let parameterString = `?&username=${username}¤tUserId=`;\n if(currentUserId){\n parameterString += currentUserId;\n }\n \n const url = `${this.coreService.configService.getMobiManagementDataUrl()}Customer(${customerId})/UsernameTaken()${parameterString}`;\n return new Promise<void>((resolve, reject) => {\n this.httpClient.get(url)\n .toPromise()\n .then((res: any) => {\n res.isValid = !res.value;\n if(res.isValid){\n res.message = $localize`:@@ValidationText-UsernameAvailable:Username is available`;\n resolve(res);\n }\n else{\n res.message = $localize`:@@ErrorText-UsernameTaken:Username is not available`;\n reject(res.message)\n }\n // console.log(res);\n })\n .catch(error => {\n console.error(error);\n reject(\"Error: Unable to validate username\");\n });\n })\n } \n \n public usernameValidation_vendor_devextreme(vendorId: string, username: string, currentUserId: string | undefined) : Promise<void>{\n let parameterString = `?&username=${username}¤tUserId=`;\n if(currentUserId){\n parameterString += currentUserId;\n }\n \n const url = `${this.coreService.configService.getMobiManagementDataUrl()}Vendor(${vendorId})/UsernameTaken()${parameterString}`;\n return new Promise<void>((resolve, reject) => {\n this.httpClient.get(url)\n .toPromise()\n .then((res: any) => {\n res.isValid = !res.value;\n if(res.isValid){\n res.message = $localize`:@@ValidationText-UsernameAvailable:Username is available`;\n resolve(res);\n }\n else{\n res.message = $localize`:@@ErrorText-UsernameTaken:Username is not available`;\n reject(res.message)\n }\n // console.log(res);\n })\n .catch(error => {\n console.error(error);\n reject(\"Error: Unable to validate username\");\n });\n })\n } \n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { MobicloudCoreComponent } from './mobicloud-core.component';\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { TokenHttpInterceptor } from \"./token-http-interceptor\";\nimport { MobicloudConfigService } from \"./services/mobicloud-config.service\";\nimport { UsernameValidator } from \"./validators/username-validator\";\n\n@NgModule({\n declarations: [MobicloudCoreComponent],\n imports: [\n ],\n exports: [MobicloudCoreComponent]\n})\nexport class MobicloudCoreModule {\n\n static forRoot(): ModuleWithProviders<MobicloudCoreModule> {\n return {\n ngModule: MobicloudCoreModule,\n providers: [\n {provide: HTTP_INTERCEPTORS, useClass: TokenHttpInterceptor, deps: [MobicloudConfigService], multi: true},\n UsernameValidator\n ]\n };\n } \n }\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { MobicloudCoreService } from \"../services/mobicloud-core.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiAuthenticationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isAuthenticated()) {\n return true;\n }\n\n this.coreService.signIn(state.url);\n return false;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { MobicloudCoreService } from \"../services/mobicloud-core.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiOrganizationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isOrganizationAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n\n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiMasterUserGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isMasterUserAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n\n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiMasterAdminGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isMasterAdminAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n\n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MasterOrganizationGuard implements CanActivate {\n constructor(private router: Router, private coreService: MobicloudCoreService) \n {\n }\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n if(this.coreService.isMasterUserAuthenticated()){\n var strMasterOrganizationId = localStorage.getItem(\"MasterOrganizationId\");\n if(strMasterOrganizationId && strMasterOrganizationId.length > 0){\n return true;\n }\n else{\n this.router.navigateByUrl('/selectorganization');\n return false;\n }\n }\n else if (this.coreService.isOrganizationAuthenticated()) {\n return true;\n } \n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n\n return false;\n }\n \n}","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { MobicloudCoreService } from \"../services/mobicloud-core.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiB2BAuthenticationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isB2BAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n \n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiCustomerUserAuthenticationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isCustomerUserAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n \n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiVendorUserAuthenticationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isVendorUserAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n \n return false;\n }\n\n}","export function convertToISODates_ODataValues (values: any, value_names: string[]){\n for (const key in value_names) {\n if(values[value_names[key]]){\n if(!(values[value_names[key]] instanceof Date)){\n values[value_names[key]] = new Date(values[value_names[key]]);\n }\n values[value_names[key]] = new Date(values[value_names[key]]).toISOString();\n }\n } \n}\n\nexport function setZeroTime_ODataValues (values: any, value_names: string[]){\n for (const key in value_names) {\n if(values[value_names[key]]){\n if(!(values[value_names[key]] instanceof Date)){\n values[value_names[key]] = new Date(values[value_names[key]]);\n }\n // console.log(values[value_names[key]]);\n values[value_names[key]].setUTCFullYear(values[value_names[key]].getFullYear());\n values[value_names[key]].setUTCMonth(values[value_names[key]].getMonth());\n values[value_names[key]].setUTCDate(values[value_names[key]].getDate());\n values[value_names[key]].setUTCHours(0); \n values[value_names[key]].setUTCMinutes(0); \n values[value_names[key]].setUTCSeconds(0); \n values[value_names[key]].setUTCMilliseconds(0); \n \n // console.log(values[value_names[key]]); \n values[value_names[key]] = new Date(values[value_names[key]]).toISOString();\n }\n } \n}\n\nexport function ensureDateEqual(date1: Date, date2: any) : Date|undefined{\n if(date1){\n if(!(date1 instanceof Date)){\n date1 = new Date(date1);\n }\n\n if(date2){\n if(!(date2 instanceof Date)){\n date2 = new Date(date2);\n }\n var start = new Date(date2); \n start.setFullYear(date1.getFullYear());\n start.setMonth(date1.getMonth());\n start.setDate(date1.getDate());\n return start;\n }\n }\n return undefined;\n}\n\n//--- Grouping, Sorting and Filtering helper function\nexport function fullNameFilterExpression_Employee(this:any, filterValue: any, selectedFilterOperation: any, field: string | undefined) {\n let column:any = this as any;\n let filterExpression : any[]|undefined;\n\n if(filterValue){\n switch(selectedFilterOperation) { \n case 'contains': {\n if(field)\n filterExpression = [[`${field}/FirstName`, selectedFilterOperation, filterValue], \"or\", [`${field}/LastName`, selectedFilterOperation, filterValue]]; \n else\n filterExpression = [[`FirstName`, selectedFilterOperation, filterValue], \"or\", [`LastName`, selectedFilterOperation, filterValue]]; \n break; \n } \n case 'notcontains': {\n if(field)\n filterExpression = [[`${field}/FirstName`, selectedFilterOperation, filterValue], \"and\", [`${field}/LastName`, selectedFilterOperation, filterValue]]; \n else\n filterExpression = [[`FirstName`, selectedFilterOperation, filterValue], \"and\", [`LastName`, selectedFilterOperation, filterValue]]; \n break; \n }\n case 'startswith': {\n if(field)\n filterExpression = [`${field}/FirstName`, selectedFilterOperation, filterValue];\n else\n filterExpression = [`FirstName`, selectedFilterOperation, filterValue];\n break; \n } \n case 'endswith': {\n if(field)\n filterExpression = [`${field}/LastName`, selectedFilterOperation, filterValue]; \n else\n filterExpression = [`LastName`, selectedFilterOperation, filterValue]; \n break; \n } \n default: { \n break; \n } \n } \n}\n\n if(!filterExpression){\n filterExpression = column.defaultCalculateFilterExpression.apply(column, arguments);\n }\n\n return filterExpression;\n}\n\n\nexport function dateFunctionFilterExpression(this:any, filterValue: any, selectedFilterOperation: any, field: string|undefined, odata_Function: string|undefined) {\n let column:any = this as any;\n let filterExpression : any[]|undefined;\n\n if(filterValue){\n switch(selectedFilterOperation) { \n case '=': {\n filterExpression = [[`${odata_Function}(${field})`, selectedFilterOperation, filterValue]]; \n break; \n } \n case '<>': {\n filterExpression = [[`${odata_Function}(${field})`, selectedFilterOperation, filterValue]]; \n break; \n }\n case '<': {\n //Less than\n filterExpression = [`${odata_Function}(${field})`, selectedFilterOperation, filterValue];\n break; \n } \n case '>': {\n //Greater than\n filterExpression = [`${odata_Function}(${field})`, selectedFilterOperation, filterValue]; \n break; \n } \n default: { \n break; \n } \n } \n}\n\n if(!filterExpression){\n filterExpression = column.defaultCalculateFilterExpression.apply(column, arguments);\n }\n\n // console.log(\"date filter: \", filterExpression);\n return filterExpression;\n}\n\nexport function getBlobUrl(storageAccountName: string, blobPath: string) : string{\n const delim = blobPath.startsWith('/') ? '' : '/';\n return `https://${storageAccountName}.blob.core.windows.net${delim}${blobPath}`;\n}\n\nexport function getProfileImageUrl(storageAccountName: string|undefined, blobContainerName: string|undefined, blobName: string|undefined) : string{\n if(storageAccountName && blobContainerName && blobName){\n return getBlobUrl(storageAccountName, blobContainerName + blobName);\n }\n return './assets/png/no-profile-img-32.png';\n}\n","export class LanguageInfo {\n LocaleId?: string; \n LanguageName?: string;\n FlagCode?: string;\n}","export class ThemeInfo {\n ThemeName?: string; \n ThemeCaption?: string;\n Svg?: string;\n}","export class Country {\n Id?: number; \n Enabled?: boolean;\n Code3?: string;\n Code2?: string;\n Name?: string;\n NameOfficial?: string;\n LocalName?: string;\n LocalNameOfficial?: string; \n Flag_32?: string;\n Flag_128?: string;\n Latitude?: number;\n Longitude?: number;\n zoom?: number;\n TradeArea?: string;\n}\n","export class OrganizationInfo {\n OrganizationId: string | undefined;\n Name: string | undefined;\n Email: string | undefined; \n AccountNumber: string | undefined;\n\n HashedPasswords: boolean | undefined;\n CertificateLogin: boolean | undefined;\n Demo: boolean | undefined;\n Active: boolean | undefined;\n\n PartnerId: string | undefined;\n PartnerName: string | undefined;\n\n StorageAccount: StorageAccountInfo | undefined;\n}\n\nexport class StorageAccountInfo {\n Key: string | undefined;\n Name: string | undefined;\n}","export interface IToolbarItem {\n name?: string;\n caption: string;\n svg: string;\n link?: string|undefined;\n linkstate?: any|undefined;\n click?: string|undefined;\n click_paramters?: any[]|undefined;\n children?: IToolbarItem[]|undefined;\n cssClass?: string | undefined;\n cssClass_Icon?: string | undefined;\n itemtype?: string | undefined;\n }\n \n export interface IMenuNode {\n name?: string;\n caption: string;\n svg: string;\n svg_active: string;\n link?: string|undefined;\n linkstate?: any|undefined;\n click?: string|undefined;\n click_paramters?: any[]|undefined; \n children?: IMenuNode[]|undefined;\n }\n\n export enum MenuState {\n OpenedNormal = \"OpenNormal\",\n OpenCollapsed = \"OpenCollapsed\",\n Closed = \"Closed\"\n }"],"names":["i0","Component","MapProvider","BehaviorSubject","EventEmitter","registerLocaleData","localeDA","templateObject_1","templateObject_2","templateObject_3","templateObject_4","LOCALE_ID","Injectable","Inject","UserManager","timeout","catchError","map","throwError","i1","i2.MobicloudConfigService","fromPromise","switchMap","i1.MobicloudConfigService","i2.MobicloudCoreService","HTTP_INTERCEPTORS","NgModule","MenuState"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mobicloud-core.umd.js","sources":["../../src/lib/mobicloud-core.component.ts","../../../../node_modules/tslib/tslib.es6.js","../../src/lib/types/mobi-user-profile.ts","../../src/lib/types/application-details.ts","../../src/lib/services/mobicloud-config.service.ts","../../src/lib/services/mobicloud-core.service.ts","../../src/lib/token-http-interceptor.ts","../../src/lib/validators/username-validator.ts","../../src/lib/mobicloud-core.module.ts","../../src/lib/guards/mobi-authentication.guard.ts","../../src/lib/guards/mobi-organization.guard.ts","../../src/lib/guards/mobi-b2b.guard.ts","../../src/lib/utils.ts","../../src/lib/types/language-info.ts","../../src/lib/types/theme-info.ts","../../src/lib/types/country.ts","../../src/lib/types/organization-info.ts","../../src/lib/types/ui-types.ts"],"sourcesContent":["import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'lib-mobicloud-core',\n template: `\n <p>\n mobicloud-core works!\n </p>\n `,\n styles: [\n ]\n})\nexport class MobicloudCoreComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import { User } from 'oidc-client';\nimport { Observable } from 'rxjs';\n\nexport class MobiUserProfile {\n user: User | undefined;\n \n constructor(oidc_User: Observable<User | undefined>) {\n oidc_User.subscribe(u => this.user = u); \n }\n \n get idToken() : string | undefined{\n return this.user?.id_token;\n }\n \n get refreshToken() : string | undefined{\n return this.user?.refresh_token;\n }\n \n get accessToken() : string | undefined{\n return this.user?.access_token;\n }\n \n get tokenType() : string | undefined{\n return this.user?.token_type;\n }\n \n get tokenScope() : string | undefined{\n return this.user?.scope;\n }\n \n get tokenExpiresAt() : number | undefined{\n return this.user?.expires_at;\n }\n \n get tokenExpiresAt_Date(): Date | undefined {\n if(this.user)\n return new Date(this.user.expires_at * 1000);\n return undefined;\n }\n \n get tokenExpiresIn() : number | undefined{\n return this.user?.expires_in;\n }\n \n get tokenIsExpired() : boolean | undefined{\n return this.user?.expired;\n }\n \n get shouldRenewToken() : boolean{\n if(this.user)\n return this.user.expires_in <= 120;\n return false;\n }\n \n // --- Profile\n get user_id() : string | undefined{\n return this.user?.profile?.sub;\n }\n \n get user_name() : string | undefined{\n return this.user?.profile?.name;\n }\n \n get user_username() : string | undefined{\n return this.user?.profile?.username;\n }\n \n get user_email() : string | undefined{\n return this.user?.profile?.email;\n }\n \n get user_partytype() : string | undefined{\n return this.user?.profile?.partytype;\n }\n \n get user_partyid() : string | undefined{\n return this.user?.profile?.partyid;\n }\n \n get user_partyname() : string | undefined{\n return this.user?.profile?.partyname;\n }\n \n get user_accountnumber() : string | undefined{\n return this.user?.profile?.account_number;\n }\n \n get user_authtype() : string | undefined{\n return this.user?.profile?.auth_type;\n }\n \n get user_roles() : string[] | undefined {\n return this.user?.profile?.role;\n }\n \n get isOrganizationAdmin() : boolean | undefined{\n if(this.user_roles)\n return this.user_roles?.includes('ORGADMIN');\n return false;\n }\n \n get isOrganizationUser() : boolean | undefined{\n if(this.user_roles)\n return this.user_roles?.includes('ORGUSER');\n return false;\n }\n \n get isEmployeeUser() : boolean | undefined{\n if(this.user_roles)\n return this.user_roles?.includes('EMPUSER');\n return false;\n }\n \n get employeeNumber() : string | undefined{\n return this.user?.profile?.empl_number;\n } \n \n //-- B2B -----\n\n get isCustomerUser() : boolean | undefined{\n if(this.user_roles)\n return this.user_roles.includes('CUSTUSER');\n return false;\n }\n \n get user_customer_id() : string | undefined{\n return this.user?.profile?.cust_id;\n }\n\n get user_customer_accountnumber() : string | undefined{\n return this.user?.profile?.cust_account;\n }\n\n get user_customer_name() : string | undefined{\n return this.user?.profile?.cust_name;\n }\n\n get isVendorUser() : boolean{\n if(this.user_roles)\n return this.user_roles.includes('VENDUSER');\n return false;\n }\n\n get isMasterUser() : boolean{\n if(this.user_roles)\n return this.user_roles.includes('MASTER');\n return false;\n }\n\n get isMasterAdmin() : boolean{\n if(this.user_roles)\n return this.user_roles.includes('MASTERADMIN');\n return false;\n }\n\n get user_vendor_id() : string | undefined{\n return this.user?.profile?.vend_id;\n }\n\n get user_vendor_accountnumber() : string | undefined{\n return this.user?.profile?.vend_account;\n }\n\n get user_vendor_name() : string | undefined{\n return this.user?.profile?.vend_name;\n } \n\n get isB2BUser() : boolean{\n return this.isCustomerUser || this.isVendorUser;\n }\n }","export class ApplicationDetails {\n\tName!: \t\tstring;\n OrganizationId!: \t\tstring;\n\tOrganizationName!:\t\t\tstring; \n OrganizationEmail!: \t\tstring; \n OrganizationAccountNumber!: string;\n StorageAccountName!: string;\n ServicebusName!: string;\n\n HashedPasswords!: \t\tboolean | undefined;\n CertificateLogin!: \t\tboolean | undefined;\n AllowSubOrganizations!: \tboolean | undefined;\n OwnerOrganizationId: \t\tstring | undefined;\n\tOwnerOrganizationName:\t\t\tstring | undefined; \n\n MapProvider?: MapProvider | undefined;\n MapProviderKey?: string | undefined;\n}\n\nexport class ProfileDetails {\n Id?: \t string|undefined;\n Name?: string|undefined;\n\tImage?: ProfileImage|undefined; \n}\n\nexport class ProfileImage {\n\tStorageAccountName?: string|undefined;\n BlobContainerName: \tstring|undefined;\n\tBlobName?: string|undefined; \n}\n\nexport enum MapProvider\n{\n None = \"None\",\n Bing = \"Bing\",\n Google = \"Google\"\n}","import { Injectable, Injector, LOCALE_ID, Inject, EventEmitter } from '@angular/core';\nimport '@angular/localize/init';\nimport { BehaviorSubject } from \"rxjs\";\nimport { HttpClient } from '@angular/common/http';\nimport { registerLocaleData } from '@angular/common';\nimport localeDA from '@angular/common/locales/da';\nimport { LanguageInfo } from \"../types/language-info\";\nimport { ThemeInfo } from \"../types/theme-info\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobicloudConfigService {\n\n AppInjector: Injector;\n\n public _config_name: string = '';\n public _app_name: string = '';\n public _environment: string = '';\n public _default_api_baseurl: string = ''; \n public _host_url: string = '';\n public _host_url_en: string = '';\n public _oidc_authority: string = '';\n public _oidc_client_id: string = '';\n public _oidc_client_secret: string = ''; \n public _oidc_response_type: string = '';\n public _oidc_scopes: string = '';\n public _log_httptrafic: number = 0;\n public _themes_enabled: boolean|undefined = false;\n\n private localeIdSource = new BehaviorSubject<string>(\"\");\n localeIdObservable = this.localeIdSource.asObservable();\n private languageNameSource = new BehaviorSubject<string>(\"\");\n languageNameObservable = this.languageNameSource.asObservable();\n\n private themeName: string = '';\n public themeNameSource = new BehaviorSubject<string>(\"\");\n public themeNameObservable = this.themeNameSource.asObservable();\n\n public ThemeChange: EventEmitter<string> = new EventEmitter<string>();\n\n constructor(private http: HttpClient, private injector: Injector, @Inject(LOCALE_ID) public localeId: string) {\n this.AppInjector = injector;\n console.log(\"Application Language:\", this.CurrentLanguage);\n // console.log(\"Application baseHref:\", this.baseHref);\n if(this.localeId == \"da\") {\n registerLocaleData(localeDA, 'da'); \n }\n this.localeIdSource.next(this.localeId);\n this.languageNameSource.next(this.getLanguageName(this.localeId));\n\n // this.themeNameSource.next(\"default\");\n this.themeNameObservable.subscribe(p => this.themeName = p);\n }\n\n getConfigData(config_file: string) :Promise<any> {\n // var locale_path = \"\";\n // if(this.localeId){\n // locale_path = `${this.localeId}/`;\n // }\n // var config_file_url = `/${locale_path}assets/${config_file}`\n var config_file_url = `./assets/${config_file}`\n console.log(\"Loading config:\", config_file, config_file_url);\n \n const promise = this.http.get(config_file_url)\n .toPromise()\n .then(configdata => {\n Object.assign(this, configdata);\n return configdata;\n });\n\n return promise;\n }\n\n getLanguageName(locale: string) : string {\n if(locale == \"da\"){\n return $localize`:@@LanguageName-da:Danish`;\n }\n else{\n return $localize`:@@LanguageName-en-US:English`;\n } \n }\n\n get CurrentLanguage() : string {\n if(this.localeId == \"da\"){\n return \"DK\";\n }\n else if(this.localeId == \"en-US\"){\n return \"US\";\n } \n else {\n return this.localeId;\n }\n }\n \n getSupportedLanguages() : LanguageInfo[]\n {\n const languages: LanguageInfo[] = [{LocaleId: 'da', LanguageName: this.getLanguageName('da'), FlagCode: 'DK'}, {LocaleId: 'en-US', LanguageName: this.getLanguageName('en-US'), FlagCode: 'GB'}];\n return languages;\n }\n\n getThemeCaption(locale: string) : string {\n if(locale == \"default\"){\n return $localize`:@@ThemeCaption-default:Default`;\n }\n else{\n return $localize`:@@ThemeCaption-Dark:Dark`;\n } \n }\n\n getSupportedThemes() : ThemeInfo[]\n {\n const themes: ThemeInfo[] = [{ThemeName: 'default', ThemeCaption: this.getThemeCaption('default'), Svg: 'mobicloud_theme_default'}, {ThemeName: 'dark', ThemeCaption: this.getThemeCaption('dark'), Svg: 'mobicloud_theme_dark'}];\n return themes;\n }\n\n changeTheme(_themeName: string){\n console.log(\"Changing theme\");\n this.ThemeChange.emit(_themeName); \n }\n\n getApiSiteUrl() : string{\n return `${this._default_api_baseurl}`;\n }\n\n getApiBaseUrl() : string{\n return `${this.getApiSiteUrl()}api/`;\n }\n\n getMobiManagementDataUrl() : string{\n return `${this.getApiBaseUrl()}mobimanagement/`;\n } \n\n getRepositoryUrl() : string{\n return `${this.getApiBaseUrl()}repository/`;\n } \n\n get config_name(): string {\n return this._config_name;\n }\n \n get app_name(): string {\n return this._app_name;\n }\n\n get environment(): string {\n return this._environment;\n }\n\n get oidc_authority(): string {\n return this._oidc_authority;\n }\n\n get oidc_client_id(): string {\n return this._oidc_client_id;\n }\n\n get oidc_client_secret(): string {\n return this._oidc_client_secret;\n }\n\n get host_url(): string {\n return this._host_url;\n }\n\n get host_url_en(): string {\n return this._host_url_en;\n }\n\n get oidc_base_url(): string {\n if(this.localeId == \"da\") {\n return this.host_url;\n }\n else{\n return this.host_url_en;\n } \n }\n\n get oidc_redirect_uri(): string {\n return `${this.oidc_base_url}signin-callback`;\n }\n\n get oidc_redirect_silent_uri(): string {\n return `${this.oidc_base_url}signin-silent-callback`;\n }\n\n get oidc_post_logout_redirect_uri(): string {\n return `${this.oidc_base_url}signout-callback`;\n }\n\n get oidc_response_type(): string {\n return this._oidc_response_type;\n }\n\n get oidc_scopes(): string {\n return this._oidc_scopes;\n }\n\n get log_httptrafic(): number {\n return this._log_httptrafic;\n }\n\n get themes_enabled(): boolean|undefined {\n return this._themes_enabled;\n }\n \n}\n","import { Injectable, EventEmitter } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { UserManager, User } from 'oidc-client';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, map, timeout } from 'rxjs/operators';\nimport { BehaviorSubject } from \"rxjs\";\n\nimport { MobicloudConfigService } from \"./mobicloud-config.service\";\nimport { MobiUserProfile } from \"../types/mobi-user-profile\";\n// import { OrganizationInfo } from \"../types/organization-info\";\nimport { ApplicationDetails, ProfileDetails } from \"../types/application-details\";\nimport { Country } from \"../types/country\";\nimport { IODataResult } from \"../types/odata-result\";\nimport { getProfileImageUrl } from \"../utils\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobicloudCoreService {\n\n public _appVersion: string = '';\n public _appName: string = '';\n\n public require_Organization:boolean = true;\n public require_Customer:boolean = false;\n public require_Vendor:boolean = false;\n\n private manager: UserManager | undefined;\n\n private oidc_UserSource = new BehaviorSubject<User | undefined>(undefined);\n oidc_User:Observable<User | undefined> = this.oidc_UserSource.asObservable(); \n public user: User | undefined | null;\n\n mobiUserProfile: MobiUserProfile | undefined;\n private mobiUserProfileSource = new BehaviorSubject<MobiUserProfile | undefined>(undefined);\n mobiUserProfileObservable = this.mobiUserProfileSource.asObservable();\n\n private applicationDetailsSource = new BehaviorSubject<ApplicationDetails | undefined>(undefined);\n applicationDetailsObservable = this.applicationDetailsSource.asObservable(); \n applicationDetails: ApplicationDetails| undefined;\n\n private profileDetailsSource = new BehaviorSubject<ProfileDetails | undefined>(undefined);\n profileDetailsObservable = this.profileDetailsSource.asObservable(); \n profileDetails: ProfileDetails|undefined;\n\n private countriesSource = new BehaviorSubject<Map<string|undefined, Country> | undefined>(undefined);\n countriesObservable = this.countriesSource.asObservable(); \n countries: Map<string | undefined, Country>| undefined; \n\n public UserChanged: EventEmitter<{user: User|undefined|null, profile: MobiUserProfile|undefined, profileDetails:ProfileDetails|undefined}> = new EventEmitter<{user: User|undefined|null, profile: MobiUserProfile|undefined, profileDetails:ProfileDetails|undefined}>();\n\n constructor(protected httpClient: HttpClient, public configService: MobicloudConfigService) {\n this.manager = new UserManager(\n {\n authority: configService.oidc_authority,\n client_id: configService.oidc_client_id,\n client_secret: configService.oidc_client_secret,\n redirect_uri: configService.oidc_redirect_uri,\n post_logout_redirect_uri: configService.oidc_post_logout_redirect_uri,\n response_type: configService.oidc_response_type,\n scope: configService.oidc_scopes,\n filterProtocolClaims: true,\n loadUserInfo: true,\n silent_redirect_uri: configService.oidc_redirect_silent_uri\n }\n );\n\n this.manager.clearStaleState();\n this.manager.getUser().then(user => {\n this.user = user;\n this.onUserChanged();\n });\n \n this.mobiUserProfile = new MobiUserProfile(this.oidc_User);\n }\n\n protected onUserChanged() : void\n {\n if (this.user) {\n this.oidc_UserSource.next(this.user);\n this.mobiUserProfileSource.next(this.mobiUserProfile);\n this.getApplicationDetails();\n }\n else {\n this.oidc_UserSource.next(undefined); \n this.mobiUserProfileSource.next(undefined);\n this.applicationDetailsSource.next(undefined);\n // this.organizationInfoSource.next(null); \n }\n this.fetchProfileDetails().then(res => \n {\n // console.log(\"fetchProfileDetails complete\", res, this.user);\n this.UserChanged.emit({user: this.user, profile: this.mobiUserProfile, profileDetails: this.profileDetails});\n }).catch((error:any) =>\n {\n console.error(error);\n this.UserChanged.emit({user: this.user, profile: this.mobiUserProfile, profileDetails: this.profileDetails});\n });\n }\n\n getApplicationDetails(){\n // console.log(\"Getting organizationinfo on user changed ...\");\n this.fetchApplicationDetails().then(appdetails => \n {\n // console.log(\"fetchApplicationDetails complete\", appdetails);\n });\n this.fetchCountries().then(countries => \n {\n // console.log(\"fetchCountries complete\", countries);\n });\n } \n\n fetchApplicationDetails() : Promise<ApplicationDetails|undefined>{\n if(this.isAuthenticated()){\n var masterorg_valid:boolean = true;\n if(this.isMasterUserAuthenticated()){\n if(this.hasMasterOrganization()){\n masterorg_valid = true;\n }\n else{\n masterorg_valid = false;\n }\n }\n\n if(masterorg_valid){\n const url = `${this.configService.getApiBaseUrl()}ApplicationDetails?key=${this.configService.app_name}&env=${this.configService.environment}`;\n\n const applicationDetail_Observable = this.httpClient.get<ApplicationDetails>(url)\n .pipe(timeout(15000), catchError(this.handleError)).pipe(map(appDetails => \n {\n this.applicationDetails = appDetails; \n if(this.applicationDetails){ \n this.applicationDetailsSource.next(this.applicationDetails);\n // console.log(\"Current ApplicationDetails\", this.applicationDetails); \n }\n else{\n this.applicationDetailsSource.next(undefined);\n // console.log(\"An empty ApplicationDetails was returned\");\n }\n return appDetails;\n },\n (err: any) => \n {\n console.error(\"fetchApplicationDetails error:\", err);\n this.applicationDetails = undefined;\n this.applicationDetailsSource.next(undefined);\n return undefined;\n } \n ));\n return applicationDetail_Observable.toPromise();\n }\n else{\n console.warn(\"ApplicationDetails is null, MasterOrganization is not selected\");\n this.applicationDetails = undefined;\n this.applicationDetailsSource.next(undefined);\n\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n else{\n console.warn(\"ApplicationDetails is null, user not authenticated\");\n this.applicationDetails = undefined;\n this.applicationDetailsSource.next(undefined);\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n fetchCountries() : Promise<Map<string|undefined,Country>>{\n const mobimanagementUrl = this.configService.getMobiManagementDataUrl();\n return this.httpClient.get<IODataResult<Country>>(`${mobimanagementUrl}Country?$filter=enabled eq true&$orderby=Name&$select=code2,Name,LocalName,TradeArea`)\n .pipe(timeout(15000), catchError(this.handleError)).pipe(map(result => \n {\n this.countries = new Map<string | undefined, Country>(result?.value.map(i => [i.Code2, i]));\n this.countriesSource.next(this.countries);\n return this.countries;\n },\n (err: any) => \n {\n console.error(err);\n } \n )).toPromise();\n }\n \n\n fetchProfileDetails() : Promise<ProfileDetails|undefined>{\n if(this.isAuthenticated() && this.mobiUserProfile?.user_id){ \n\n var url:string|undefined;\n if(this.mobiUserProfile.isEmployeeUser){\n url = `${this.configService.getMobiManagementDataUrl()}employee(${this.mobiUserProfile.user_id})?$expand=Image($select=StorageAccountName,BlobContainerName,BlobName)`;\n }\n else if(this.mobiUserProfile.isCustomerUser){\n url = `${this.configService.getMobiManagementDataUrl()}customeruser(${this.mobiUserProfile.user_id})?$expand=Image($select=StorageAccountName,BlobContainerName,BlobName)`;\n }\n else if(this.mobiUserProfile.isVendorUser){\n url = `${this.configService.getMobiManagementDataUrl()}vendoruser(${this.mobiUserProfile.user_id})?$expand=Image($select=StorageAccountName,BlobContainerName,BlobName)`;\n }\n\n // console.log(\"fetchProfileDetails\", url, this.mobiUserProfile?.user_id);\n\n if(url){\n const applicationDetail_Observable = this.httpClient.get<IODataResult<any>>(url)\n .pipe(timeout(15000), catchError(this.handleError)).pipe(map(user_result => \n {\n var profile_details:ProfileDetails|undefined;\n if(user_result.value){\n this.profileDetails = Object.assign(new ProfileDetails(), {Id: user_result.value[0]?.Id?.toString(), Name: user_result.value[0]?.Name, Image: user_result.value[0]?.Image}); \n if(this.profileDetails){ \n this.profileDetailsSource.next(this.profileDetails);\n // console.log(\"Current ProfileDetails\", this.profileDetails, getProfileImageUrl(this.profileDetails.Image?.StorageAccountName, this.profileDetails.Image?.BlobContainerName, this.profileDetails.Image?.BlobName)); \n }\n else{\n this.profileDetailsSource.next(undefined);\n // console.log(\"An empty ProfileDetails was returned\");\n } \n }\n return profile_details;\n },\n (err: any) => \n {\n console.error(\"fetchApplicationDetails error:\", err);\n this.profileDetails = undefined;\n this.profileDetailsSource.next(undefined);\n return undefined;\n } \n ));\n\n return applicationDetail_Observable.toPromise();\n }\n else{\n // console.log(\"An empty url was returned\", this.mobiUserProfile.isEmployeeUser, this.mobiUserProfile.isCustomerUser, this.mobiUserProfile.isVendorUser);\n this.profileDetails = undefined;\n this.profileDetailsSource.next(undefined);\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n else{\n // console.log(\"User not auth\", this.mobiUserProfile, this.mobiUserProfile?.user_id);\n this.profileDetails = undefined;\n this.profileDetailsSource.next(undefined);\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n // --- SignIn ------------------------------------------------------\n\n public async signIn(redirectUrl: string): Promise<any> {\n return await this.manager?.signinRedirect({ data: { redirectUrl: redirectUrl } }).catch( (reason: any) =>\n {\n console.error(\"signIn failed:\", reason, this.mobiUserProfile);\n return throwError(reason);\n });\n }\n\n public async completeSignIn(): Promise<User|undefined> { \n //throw new Error(\"Signin error super: invalid redirect url\"); \n this.user = await this.manager?.signinRedirectCallback();\n this.onUserChanged();\n return this.user;\n }\n\n // --- Silent SignIn -----------------------------------------------\n\n public async signInSilent(): Promise<any> { \n return await this.manager?.signinSilent().then(user =>\n {\n this.onSignedInSilent(user);\n }).catch( (reason: any) =>\n {\n console.error(\"signInSilent failed:\", reason, this.mobiUserProfile);\n return throwError(reason);\n });\n }\n\n public onSignedInSilent(user: User){\n this.user = user;\n this.onUserChanged();\n }\n\n public async completeSilentSignIn() : Promise<any>{ \n return await this.manager?.signinSilentCallback();\n }\n\n // --- SignOut -----------------------------------------------------\n\n public async signout(): Promise<any> {\n return await this.manager?.signoutRedirect();\n }\n\n public async completeSignout() {\n this.onUserChanged();\n }\n\n // --- Helper methods -----------------------------------------------------\n\n public isAuthenticated(): boolean {\n return this.user != null && !this.user.expired;\n }\n\n public isOrganizationAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin || this.mobiUserProfile.isEmployeeUser);\n }\n\n public isMasterOrganizationAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin || this.mobiUserProfile.isEmployeeUser)) || this.isMasterUserAuthenticated();\n }\n\n public isOrganizationUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin);\n }\n\n public isMasterOrganizationUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin)) || this.isMasterUserAuthenticated();\n }\n\n public isMasterOrganizationAdminAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationAdmin)) || this.isMasterUserAuthenticated();\n }\n\n public isEmployeeAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin || this.mobiUserProfile.isEmployeeUser);\n }\n\n public isMasterEmployeeAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isOrganizationUser || this.mobiUserProfile.isOrganizationAdmin || this.mobiUserProfile.isEmployeeUser)) || this.isMasterUserAuthenticated();\n } \n\n public isCustomerUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isCustomerUser);\n }\n\n public isMasterCustomerUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isCustomerUser)) || this.isMasterUserAuthenticated();\n }\n\n public isVendorUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isVendorUser);\n }\n\n public isMasterVendorUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.mobiUserProfile != null && (this.mobiUserProfile.isVendorUser)) || this.isMasterUserAuthenticated();\n } \n\n public isB2BAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.isOrganizationAuthenticated() || this.isCustomerUserAuthenticated()|| this.isVendorUserAuthenticated());\n }\n\n public isMasterB2BAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && (this.isOrganizationAuthenticated() || this.isCustomerUserAuthenticated()|| this.isVendorUserAuthenticated()) || this.isMasterUserAuthenticated();\n }\n\n public isMasterUserAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isMasterUser || this.mobiUserProfile.isMasterAdmin);\n }\n\n public isMasterAdminAuthenticated(): boolean|undefined {\n return this.isAuthenticated() && this.mobiUserProfile != null && (this.mobiUserProfile.isMasterAdmin);\n }\n\n public hasMasterOrganization(): boolean {\n var strMasterOrganizationId = localStorage.getItem(\"MasterOrganizationId\");\n if(strMasterOrganizationId && strMasterOrganizationId.length > 0){\n return true;\n }\n else{\n return false;\n }\n }\n\n public getMasterOrganization(): string|null {\n var strMasterOrganizationId = localStorage.getItem(\"MasterOrganizationId\");\n return strMasterOrganizationId;\n }\n\n public setMasterOrganization(strMasterOrganizationId: string|null): Promise<void> {\n if(strMasterOrganizationId){\n localStorage.setItem(\"MasterOrganizationId\", strMasterOrganizationId);\n return this.fetchApplicationDetails().then(appdetails => \n {\n console.log(\"setMasterOrganization complete:\", appdetails);\n }); \n }\n else{\n this.removeMasterOrganization();\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n public removeMasterOrganization(): void {\n localStorage.removeItem(\"MasterOrganizationId\");\n }\n\n public hasMasterCustomer(): boolean {\n var strMasterCustomerId = localStorage.getItem(\"MasterCustomerId\");\n if(strMasterCustomerId && strMasterCustomerId.length > 0){\n return true;\n }\n else{\n return false;\n }\n }\n\n public getMasterCustomer(): string|null {\n var strMasterCustomerId = localStorage.getItem(\"MasterCustomerId\");\n return strMasterCustomerId;\n }\n\n public setMasterCustomer(strMasterCustomerId: string|null): Promise<void> {\n if(strMasterCustomerId){\n localStorage.setItem(\"MasterCustomerId\", strMasterCustomerId);\n return new Promise(resolve => { resolve(undefined); }); \n }\n else{\n this.removeMasterCustomer();\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n public removeMasterCustomer(): void {\n localStorage.removeItem(\"MasterCustomerId\");\n } \n\n public hasMasterVendor(): boolean {\n var strMasterVendorId = localStorage.getItem(\"MasterVendorId\");\n if(strMasterVendorId && strMasterVendorId.length > 0){\n return true;\n }\n else{\n return false;\n }\n }\n\n public getMasterVendor(): string|null {\n var strMasterVendorId = localStorage.getItem(\"MasterVendorId\");\n return strMasterVendorId;\n }\n\n public setMasterVendor(strMasterVendorId: string|null): Promise<void> {\n if(strMasterVendorId){\n localStorage.setItem(\"MasterVendorId\", strMasterVendorId);\n return new Promise(resolve => { resolve(undefined); }); \n }\n else{\n this.removeMasterVendor();\n return new Promise(resolve => { resolve(undefined); });\n }\n }\n\n public removeMasterVendor(): void {\n localStorage.removeItem(\"MasterVendorId\");\n } \n\n public redirectUrl(): string {\n return this.user?.state?.redirectUrl;\n }\n\n public get accessToken(): string {\n return this.user?.access_token ?? '';\n }\n\n public get authorizationHeader(): string|undefined {\n return this.user?.token_type?.concat(\" \", this.user.access_token);\n }\n\n public get tokenExpiresAt(): Date|undefined {\n if(this.user)\n return new Date(this.user.expires_at * 1000);\n return undefined;\n }\n\n public get tokenValidUntil(): Date|undefined {\n if(this.user)\n return new Date((this.user.expires_at -120) * 1000);\n return undefined;\n }\n\n public get isTokenExpired(): boolean {\n if(this.user)\n return this.user?.expires_in <= 120;\n return false;\n }\n\n handleError(error:any) {\n let errorMessage = '';\n if (error && error.error && error.error.error){\n //Get Json error\n errorMessage = error.error.error;\n }\n else if(error && error.error instanceof ErrorEvent) {\n // Get client-side error\n errorMessage = error.error.message;\n } \n else {\n // Get server-side error\n errorMessage = `Error Code: ${error.status}\\nMessage: ${error.message}`;\n }\n // window.alert(errorMessage);\n return throwError(errorMessage);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport {HttpEvent,HttpInterceptor,HttpHandler,HttpRequest,HttpErrorResponse} from \"@angular/common/http\";\nimport { Observable } from \"rxjs\";\n\n// import { ConfigService } from \"../../services/config.service\";\n// import { UserService } from \"../../services/user.service\";\nimport { MobicloudConfigService } from \"./services/mobicloud-config.service\";\nimport { MobicloudCoreService } from \"./services/mobicloud-core.service\";\n\nimport { fromPromise } from 'rxjs/observable/fromPromise';\nimport { switchMap } from 'rxjs/operators';\n\n@Injectable()\nexport class TokenHttpInterceptor implements HttpInterceptor {\n \n private coreService: MobicloudCoreService | undefined;\n\n constructor(protected configService: MobicloudConfigService) \n { \n }\n\n intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n // All HTTP requests are going to go through this method\n\n if(this.configService?._default_api_baseurl && req.url.includes(this.configService._default_api_baseurl)){\n if(this.coreService === undefined){ \n this.coreService = this.configService.AppInjector.get(MobicloudCoreService);\n }\n // console.log(\"userservice: \" + this.userService);\n if(this.configService.log_httptrafic > 1){\n console.log({log: \"token-http-interceptor request\", request: req});\n }\n if (!req.headers.has(\"Access-Control-Allow-Origin\")) {\n req = req.clone({\n headers: req.headers.set(\"Access-Control-Allow-Origin\", \"*\")\n });\n }\n\n const language: string = this.configService.CurrentLanguage;\n \n if (language && !req.headers.has(\"Language\")) {\n req = req.clone({\n headers: req.headers.set(\"Language\", language)\n });\n }\n if (language && !req.headers.has(\"Application\")) {\n req = req.clone({\n headers: req.headers.set(\"Application\", this.configService._app_name)\n });\n } \n if(this.configService.log_httptrafic > 1){\n console.log(req.headers); \n }\n if(this.coreService && this.coreService.isAuthenticated()){\n if(this.coreService.isTokenExpired) {\n if(this.configService.log_httptrafic > 0)\n console.warn({log: \"token is expired (silent signin)\", tokenValidUntil: this.coreService.tokenValidUntil, tokenExpiresAt: this.coreService.tokenExpiresAt, is: this.coreService.isTokenExpired, auth_header: this.coreService.authorizationHeader, user: this.coreService.user} );\n return fromPromise(this.coreService.signInSilent()).pipe(\n switchMap((user) => {\n if(this.configService.log_httptrafic > 0)\n console.log({log: \"token renewed (adding new token)\", tokenValidUntil: this.coreService?.tokenValidUntil, tokenExpiresAt: this.coreService?.tokenExpiresAt, is: this.coreService?.isTokenExpired, auth_header: this.coreService?.authorizationHeader, user: this.coreService?.user} );\n req = req.clone({headers: req.headers.set(\"Authorization\", this.coreService?.authorizationHeader ?? '')}); \n\n // if(this.coreService && this.coreService.isMasterUserAuthenticated() && this.coreService.require_Organization && !req.headers.has(\"OrganizationId\")){\n if(this.coreService && this.coreService.require_Organization && !req.headers.has(\"OrganizationId\")){ \n var strMasterOrganizationId = this.coreService.getMasterOrganization();\n if(strMasterOrganizationId && strMasterOrganizationId.length > 0){\n req = req.clone({headers: req.headers.set(\"OrganizationId\", strMasterOrganizationId)});\n }\n } \n\n // if(this.coreService && this.coreService.isMasterEmployeeAuthenticated() && this.coreService.require_Customer && !req.headers.has(\"CustomerId\")){\n if(this.coreService && this.coreService.require_Customer && !req.headers.has(\"CustomerId\")){ \n var strMasterCustomerId = this.coreService.getMasterCustomer();\n if(strMasterCustomerId && strMasterCustomerId.length > 0){\n req = req.clone({headers: req.headers.set(\"CustomerId\", strMasterCustomerId)});\n }\n }\n\n // if(this.coreService && this.coreService.isMasterEmployeeAuthenticated() && this.coreService.require_Vendor && !req.headers.has(\"VendorId\")){\n if(this.coreService && this.coreService.require_Vendor && !req.headers.has(\"VendorId\")){ \n var strMasterVendorId = this.coreService.getMasterVendor();\n if(strMasterVendorId && strMasterVendorId.length > 0){\n req = req.clone({headers: req.headers.set(\"VendorId\", strMasterVendorId)});\n }\n } \n\n return next.handle(req);\n })\n );\n } \n else{\n if(this.configService.log_httptrafic > 0)\n console.log({log: \"token not expired\", tokenValidUntil: this.coreService.tokenValidUntil, tokenExpiresAt: this.coreService.tokenExpiresAt, is: this.coreService.isTokenExpired, auth_header: this.coreService.authorizationHeader, user: this.coreService.user} );\n if (!req.headers.has(\"Authorization\")) {\n req = req.clone({headers: req.headers.set(\"Authorization\", this.coreService.authorizationHeader ?? '')}); \n }\n // if(this.coreService.isMasterUserAuthenticated() && !req.headers.has(\"OrganizationId\")){\n if(this.coreService && this.coreService.require_Organization && !req.headers.has(\"OrganizationId\")){\n var strMasterOrganizationId = this.coreService.getMasterOrganization();\n if(strMasterOrganizationId && strMasterOrganizationId.length > 0){\n req = req.clone({headers: req.headers.set(\"OrganizationId\", strMasterOrganizationId)});\n }\n }\n // if(this.coreService && this.coreService.isMasterEmployeeAuthenticated() && this.coreService.require_Customer && !req.headers.has(\"CustomerId\")){\n if(this.coreService && this.coreService.require_Customer && !req.headers.has(\"CustomerId\")){ \n var strMasterCustomerId = this.coreService.getMasterCustomer();\n if(strMasterCustomerId && strMasterCustomerId.length > 0){\n req = req.clone({headers: req.headers.set(\"CustomerId\", strMasterCustomerId)});\n }\n }\n\n // if(this.coreService && this.coreService.isMasterEmployeeAuthenticated() && this.coreService.require_Vendor && !req.headers.has(\"VendorId\")){\n if(this.coreService && this.coreService.require_Vendor && !req.headers.has(\"VendorId\")){ \n var strMasterVendorId = this.coreService.getMasterVendor();\n if(strMasterVendorId && strMasterVendorId.length > 0){\n req = req.clone({headers: req.headers.set(\"VendorId\", strMasterVendorId)});\n }\n } \n return next.handle(req);\n }\n }\n else{\n if(this.configService.log_httptrafic > 0)\n console.log({log: \"user not athenticated\", tokenValidUntil: this.coreService.tokenValidUntil, tokenExpiresAt: this.coreService.tokenExpiresAt, is: this.coreService.isTokenExpired, auth_header: this.coreService.authorizationHeader, user: this.coreService.user} );\n return next.handle(req); \n } \n } \n else{\n if(this.configService.log_httptrafic > 1)\n console.log(\"not app request: \", req);\n return next.handle(req);\n } \n } \n}\n","import { Injectable } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport { Observable, throwError } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport { catchError, map, timeout } from 'rxjs/operators';\n\nimport { MobicloudCoreService } from \"../services/mobicloud-core.service\";\n\n@Injectable()\nexport class UsernameValidator {\n\n currentUserId: string |undefined;\n debouncer: any |undefined;\n\n constructor(protected httpClient: HttpClient, public coreService: MobicloudCoreService){ \n } \n \n checkUsername(control: FormControl): any {\n\n clearTimeout(this.debouncer);\n \n return new Promise(resolve => {\n \n this.debouncer = setTimeout(() => {\n let parameterString = `?username=${control.value}`;\n if(this.currentUserId){\n parameterString += `¤tUserId=${this.currentUserId}`;\n }\n this.executeFunction<boolean>(parameterString).then(response => {\n response.subscribe((result) => {\n if(result){\n // console.log(\"user taken\");\n resolve({ \n \"usernametaken\": true\n });\n } else{\n // console.log(\"user not taken\");\n resolve(null);\n } \n });\n }),\n (err:any) => { \n resolve({'usernametaken': true});\n }\n }, 1000); \n \n });\n }\n\n async executeFunction<T>(parameterString: string = '', requestTimeout: number = 30000) : Promise<Observable<T>>{\n console.log(`${this.coreService.configService.getMobiManagementDataUrl()}Employee/UsernameTaken()${parameterString}`);\n return this.httpClient.get<any>(`${this.coreService.configService.getMobiManagementDataUrl()}Employee/UsernameTaken()${parameterString}`)\n .pipe(timeout(requestTimeout), catchError(this.handleError))\n .pipe(map(result => result['value'])); \n }\n \n handleError(error:any) {\n let errorMessage = '';\n if (error && error.error && error.error.error){\n //Get Json error\n errorMessage = error.error.error;\n }\n else if(error && error.error instanceof ErrorEvent) {\n // Get client-side error\n errorMessage = error.error.message;\n } \n else {\n // Get server-side error\n errorMessage = `Error Code: ${error.status}\\nMessage: ${error.message}`;\n }\n // window.alert(errorMessage);\n return throwError(errorMessage);\n } \n \n \n public usernameValidation_devextreme(username: string, currentUserId: string | undefined) : Promise<void>{\n let parameterString = `?username=${username}`;\n if(currentUserId){\n parameterString += `¤tUserId=${currentUserId}`;\n }\n \n const url = `${this.coreService.configService.getMobiManagementDataUrl()}Employee/UsernameTaken()${parameterString}`;\n return new Promise<void>((resolve, reject) => {\n this.httpClient.get(url)\n .toPromise()\n .then((res: any) => {\n res.isValid = !res.value;\n if(res.isValid){\n res.message = $localize`:@@ValidationText-UsernameAvailable:Username is available`;\n resolve(res);\n }\n else{\n res.message = $localize`:@@ErrorText-UsernameTaken:Username is not available`;\n reject(res.message)\n }\n // console.log(res);\n })\n .catch(error => {\n console.error(error);\n reject(\"Error: Unable to validate username\");\n });\n })\n } \n \n public usernameValidation_customer_devextreme(customerId: string, username: string, currentUserId: string | undefined) : Promise<void>{\n let parameterString = `?&username=${username}¤tUserId=`;\n if(currentUserId){\n parameterString += currentUserId;\n }\n \n const url = `${this.coreService.configService.getMobiManagementDataUrl()}Customer(${customerId})/UsernameTaken()${parameterString}`;\n return new Promise<void>((resolve, reject) => {\n this.httpClient.get(url)\n .toPromise()\n .then((res: any) => {\n res.isValid = !res.value;\n if(res.isValid){\n res.message = $localize`:@@ValidationText-UsernameAvailable:Username is available`;\n resolve(res);\n }\n else{\n res.message = $localize`:@@ErrorText-UsernameTaken:Username is not available`;\n reject(res.message)\n }\n // console.log(res);\n })\n .catch(error => {\n console.error(error);\n reject(\"Error: Unable to validate username\");\n });\n })\n } \n \n public usernameValidation_vendor_devextreme(vendorId: string, username: string, currentUserId: string | undefined) : Promise<void>{\n let parameterString = `?&username=${username}¤tUserId=`;\n if(currentUserId){\n parameterString += currentUserId;\n }\n \n const url = `${this.coreService.configService.getMobiManagementDataUrl()}Vendor(${vendorId})/UsernameTaken()${parameterString}`;\n return new Promise<void>((resolve, reject) => {\n this.httpClient.get(url)\n .toPromise()\n .then((res: any) => {\n res.isValid = !res.value;\n if(res.isValid){\n res.message = $localize`:@@ValidationText-UsernameAvailable:Username is available`;\n resolve(res);\n }\n else{\n res.message = $localize`:@@ErrorText-UsernameTaken:Username is not available`;\n reject(res.message)\n }\n // console.log(res);\n })\n .catch(error => {\n console.error(error);\n reject(\"Error: Unable to validate username\");\n });\n })\n } \n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { MobicloudCoreComponent } from './mobicloud-core.component';\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { TokenHttpInterceptor } from \"./token-http-interceptor\";\nimport { MobicloudConfigService } from \"./services/mobicloud-config.service\";\nimport { UsernameValidator } from \"./validators/username-validator\";\n\n@NgModule({\n declarations: [MobicloudCoreComponent],\n imports: [\n ],\n exports: [MobicloudCoreComponent]\n})\nexport class MobicloudCoreModule {\n\n static forRoot(): ModuleWithProviders<MobicloudCoreModule> {\n return {\n ngModule: MobicloudCoreModule,\n providers: [\n {provide: HTTP_INTERCEPTORS, useClass: TokenHttpInterceptor, deps: [MobicloudConfigService], multi: true},\n UsernameValidator\n ]\n };\n } \n }\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { MobicloudCoreService } from \"../services/mobicloud-core.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiAuthenticationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isAuthenticated()) {\n return true;\n }\n\n this.coreService.signIn(state.url);\n return false;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { MobicloudCoreService } from \"../services/mobicloud-core.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiOrganizationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isOrganizationAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n\n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiMasterUserGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isMasterUserAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n\n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiMasterAdminGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isMasterAdminAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n\n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MasterOrganizationGuard implements CanActivate {\n constructor(private router: Router, private coreService: MobicloudCoreService) \n {\n }\n\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n if(this.coreService.isMasterUserAuthenticated()){\n var strMasterOrganizationId = localStorage.getItem(\"MasterOrganizationId\");\n if(strMasterOrganizationId && strMasterOrganizationId.length > 0){\n return true;\n }\n else{\n this.router.navigateByUrl('/selectorganization');\n return false;\n }\n }\n else if (this.coreService.isOrganizationAuthenticated()) {\n return true;\n } \n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n\n return false;\n }\n \n}","import { Injectable } from '@angular/core';\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { MobicloudCoreService } from \"../services/mobicloud-core.service\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiB2BAuthenticationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isB2BAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n \n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiCustomerUserAuthenticationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isCustomerUserAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n \n return false;\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MobiVendorUserAuthenticationGuard implements CanActivate {\n\n constructor(private router: Router, private coreService: MobicloudCoreService) { }\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n\n if (this.coreService.isVendorUserAuthenticated()) {\n return true;\n }\n\n if (!this.coreService.isAuthenticated()) {\n this.coreService.signIn(state.url);\n }\n \n return false;\n }\n\n}","export function convertToISODates_ODataValues (values: any, value_names: string[]){\n for (const key in value_names) {\n if(values[value_names[key]]){\n if(!(values[value_names[key]] instanceof Date)){\n values[value_names[key]] = new Date(values[value_names[key]]);\n }\n values[value_names[key]] = new Date(values[value_names[key]]).toISOString();\n }\n } \n}\n\nexport function setZeroTime_ODataValues (values: any, value_names: string[]){\n for (const key in value_names) {\n if(values[value_names[key]]){\n if(!(values[value_names[key]] instanceof Date)){\n values[value_names[key]] = new Date(values[value_names[key]]);\n }\n // console.log(values[value_names[key]]);\n values[value_names[key]].setUTCFullYear(values[value_names[key]].getFullYear());\n values[value_names[key]].setUTCMonth(values[value_names[key]].getMonth());\n values[value_names[key]].setUTCDate(values[value_names[key]].getDate());\n values[value_names[key]].setUTCHours(0); \n values[value_names[key]].setUTCMinutes(0); \n values[value_names[key]].setUTCSeconds(0); \n values[value_names[key]].setUTCMilliseconds(0); \n \n // console.log(values[value_names[key]]); \n values[value_names[key]] = new Date(values[value_names[key]]).toISOString();\n }\n } \n}\n\nexport function ensureDateEqual(date1: Date, date2: any) : Date|undefined{\n if(date1){\n if(!(date1 instanceof Date)){\n date1 = new Date(date1);\n }\n\n if(date2){\n if(!(date2 instanceof Date)){\n date2 = new Date(date2);\n }\n var start = new Date(date2); \n start.setFullYear(date1.getFullYear());\n start.setMonth(date1.getMonth());\n start.setDate(date1.getDate());\n return start;\n }\n }\n return undefined;\n}\n\n//--- Grouping, Sorting and Filtering helper function\nexport function fullNameFilterExpression_Employee(this:any, filterValue: any, selectedFilterOperation: any, field: string | undefined) {\n let column:any = this as any;\n let filterExpression : any[]|undefined;\n\n if(filterValue){\n switch(selectedFilterOperation) { \n case 'contains': {\n if(field)\n filterExpression = [[`${field}/FirstName`, selectedFilterOperation, filterValue], \"or\", [`${field}/LastName`, selectedFilterOperation, filterValue]]; \n else\n filterExpression = [[`FirstName`, selectedFilterOperation, filterValue], \"or\", [`LastName`, selectedFilterOperation, filterValue]]; \n break; \n } \n case 'notcontains': {\n if(field)\n filterExpression = [[`${field}/FirstName`, selectedFilterOperation, filterValue], \"and\", [`${field}/LastName`, selectedFilterOperation, filterValue]]; \n else\n filterExpression = [[`FirstName`, selectedFilterOperation, filterValue], \"and\", [`LastName`, selectedFilterOperation, filterValue]]; \n break; \n }\n case 'startswith': {\n if(field)\n filterExpression = [`${field}/FirstName`, selectedFilterOperation, filterValue];\n else\n filterExpression = [`FirstName`, selectedFilterOperation, filterValue];\n break; \n } \n case 'endswith': {\n if(field)\n filterExpression = [`${field}/LastName`, selectedFilterOperation, filterValue]; \n else\n filterExpression = [`LastName`, selectedFilterOperation, filterValue]; \n break; \n } \n default: { \n break; \n } \n } \n}\n\n if(!filterExpression){\n filterExpression = column.defaultCalculateFilterExpression.apply(column, arguments);\n }\n\n return filterExpression;\n}\n\n\nexport function dateFunctionFilterExpression(this:any, filterValue: any, selectedFilterOperation: any, field: string|undefined, odata_Function: string|undefined) {\n let column:any = this as any;\n let filterExpression : any[]|undefined;\n\n if(filterValue){\n switch(selectedFilterOperation) { \n case '=': {\n filterExpression = [[`${odata_Function}(${field})`, selectedFilterOperation, filterValue]]; \n break; \n } \n case '<>': {\n filterExpression = [[`${odata_Function}(${field})`, selectedFilterOperation, filterValue]]; \n break; \n }\n case '<': {\n //Less than\n filterExpression = [`${odata_Function}(${field})`, selectedFilterOperation, filterValue];\n break; \n } \n case '>': {\n //Greater than\n filterExpression = [`${odata_Function}(${field})`, selectedFilterOperation, filterValue]; \n break; \n } \n default: { \n break; \n } \n } \n}\n\n if(!filterExpression){\n filterExpression = column.defaultCalculateFilterExpression.apply(column, arguments);\n }\n\n // console.log(\"date filter: \", filterExpression);\n return filterExpression;\n}\n\nexport function getBlobUrl(storageAccountName: string, blobPath: string) : string{\n const delim = blobPath.startsWith('/') ? '' : '/';\n return `https://${storageAccountName}.blob.core.windows.net${delim}${blobPath}`;\n}\n\nexport function getProfileImageUrl(storageAccountName: string|undefined, blobContainerName: string|undefined, blobName: string|undefined) : string{\n if(storageAccountName && blobContainerName && blobName){\n return getBlobUrl(storageAccountName, blobContainerName + blobName);\n }\n return './assets/png/no-profile-img-32.png';\n}\n","export class LanguageInfo {\n LocaleId?: string; \n LanguageName?: string;\n FlagCode?: string;\n}","export class ThemeInfo {\n ThemeName?: string; \n ThemeCaption?: string;\n Svg?: string;\n}","export class Country {\n Id?: number; \n Enabled?: boolean;\n Code3?: string;\n Code2?: string;\n Name?: string;\n NameOfficial?: string;\n LocalName?: string;\n LocalNameOfficial?: string; \n Flag_32?: string;\n Flag_128?: string;\n Latitude?: number;\n Longitude?: number;\n zoom?: number;\n TradeArea?: string;\n}\n","export class OrganizationInfo {\n OrganizationId: string | undefined;\n Name: string | undefined;\n Email: string | undefined; \n AccountNumber: string | undefined;\n\n HashedPasswords: boolean | undefined;\n CertificateLogin: boolean | undefined;\n Demo: boolean | undefined;\n Active: boolean | undefined;\n\n PartnerId: string | undefined;\n PartnerName: string | undefined;\n\n StorageAccount: StorageAccountInfo | undefined;\n}\n\nexport class StorageAccountInfo {\n Key: string | undefined;\n Name: string | undefined;\n}","export interface IToolbarItem {\n name?: string;\n caption: string;\n svg: string;\n link?: string|undefined;\n linkstate?: any|undefined;\n click?: string|undefined;\n click_paramters?: any[]|undefined;\n children?: IToolbarItem[]|undefined;\n cssClass?: string | undefined;\n cssClass_Icon?: string | undefined;\n itemtype?: string | undefined;\n }\n \n export interface IMenuNode {\n name?: string;\n caption: string;\n svg: string;\n svg_active: string;\n link?: string|undefined;\n linkstate?: any|undefined;\n click?: string|undefined;\n click_paramters?: any[]|undefined; \n children?: IMenuNode[]|undefined;\n }\n\n export enum MenuState {\n OpenedNormal = \"OpenNormal\",\n OpenCollapsed = \"OpenCollapsed\",\n Closed = \"Closed\"\n }"],"names":["i0","Component","MapProvider","BehaviorSubject","EventEmitter","registerLocaleData","localeDA","templateObject_1","templateObject_2","templateObject_3","templateObject_4","LOCALE_ID","Injectable","Inject","UserManager","timeout","catchError","map","throwError","i1","i2.MobicloudConfigService","fromPromise","switchMap","i1.MobicloudConfigService","i2.MobicloudCoreService","HTTP_INTERCEPTORS","NgModule","MenuState"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAA,sBAAA,kBAAA,YAAA;EAEE,IAAA,SAAA,sBAAA,GAAA;OAAiB;EAEjB,IAAA,sBAAA,CAAA,SAAA,CAAA,QAAQ,GAAR,YAAA;OACC,CAAA;;;4IALU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAAA,aAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;EAAtB,sBAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EARvB,QAAA,EAAA,oBAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,QAAA,EAAA,sDAIT,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;oHAIU,sBAAsB,EAAA,UAAA,EAAA,CAAA;oBAVlCC,YAAS;EAAC,YAAA,IAAA,EAAA,CAAA;EACT,oBAAA,QAAQ,EAAE,oBAAoB;EAC9B,oBAAA,QAAQ,EAAE,sDAIT;EACD,oBAAA,MAAM,EAAE,EACP;mBACF,CAAA;;;ECXD;;;;;;;;;;;;;EAagF;EAChF;EAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC,EAAA;MAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;WAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,EAAA,EAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;UAC5E,UAAU,CAAC,EAAE,CAAC,EAAA,EAAI,KAAK,IAAI,CAAC,IAAI,CAAC;cAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;kBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;EACtG,IAAA,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAC/B,CAAC,CAAC;EAEc,SAAA,SAAS,CAAC,CAAC,EAAE,CAAC,EAAA;EAC1B,IAAA,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;EACrC,QAAA,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;EAC9F,IAAA,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;MACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;EACvC,IAAA,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;EACzF,CAAC;EAEM,IAAI,QAAQ,GAAG,YAAA;MAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC,EAAA;EAC3C,QAAA,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;EACjD,YAAA,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;cACjB,KAAK,IAAI,CAAC,IAAI,CAAC;kBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;sBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;EAChF,SAAA;EACD,QAAA,OAAO,CAAC,CAAC;EACb,KAAC,CAAA;MACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;EAC3C,CAAC,CAAA;EAEe,SAAA,MAAM,CAAC,CAAC,EAAE,CAAC,EAAA;MACvB,IAAI,CAAC,GAAG,EAAE,CAAC;MACX,KAAK,IAAI,CAAC,IAAI,CAAC;UAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;cAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;MAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;UAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;cACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;EAC1E,gBAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;EACzB,SAAA;EACL,IAAA,OAAO,CAAC,CAAC;EACb,CAAC;EAEK,SAAU,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAA;EACpD,IAAA,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;MAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;EAAE,QAAA,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;EAC1H,QAAA,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;EAAE,YAAA,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;EAAE,gBAAA,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;EAClJ,IAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;EAClE,CAAC;EAEe,SAAA,OAAO,CAAC,UAAU,EAAE,SAAS,EAAA;EACzC,IAAA,OAAO,UAAU,MAAM,EAAE,GAAG,EAAA,EAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;EACzE,CAAC;EAEe,SAAA,UAAU,CAAC,WAAW,EAAE,aAAa,EAAA;MACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;UAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;EACnI,CAAC;EAEK,SAAU,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAA;EACvD,IAAA,SAAS,KAAK,CAAC,KAAK,EAAA,EAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,EAAA,EAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;EAC5G,IAAA,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM,EAAA;EACrD,QAAA,SAAS,SAAS,CAAC,KAAK,EAAA,EAAI,IAAI;cAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;EAAE,SAAA;EAAC,QAAA,OAAO,CAAC,EAAE;cAAE,MAAM,CAAC,CAAC,CAAC,CAAC;EAAE,SAAA,EAAE;EAC3F,QAAA,SAAS,QAAQ,CAAC,KAAK,EAAA,EAAI,IAAI;cAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;EAAE,SAAA;EAAC,QAAA,OAAO,CAAC,EAAE;cAAE,MAAM,CAAC,CAAC,CAAC,CAAC;EAAE,SAAA,EAAE;EAC9F,QAAA,SAAS,IAAI,CAAC,MAAM,EAAA,EAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;EAC9G,QAAA,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;EAC1E,KAAC,CAAC,CAAC;EACP,CAAC;EAEe,SAAA,WAAW,CAAC,OAAO,EAAE,IAAI,EAAA;EACrC,IAAA,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,YAAA,EAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;EAAE,YAAA,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;MACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAA,EAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;MACzJ,SAAS,IAAI,CAAC,CAAC,EAAA,EAAI,OAAO,UAAU,CAAC,EAAI,EAAA,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;MAClE,SAAS,IAAI,CAAC,EAAE,EAAA;EACZ,QAAA,IAAI,CAAC;EAAE,YAAA,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;EAC9D,QAAA,OAAO,CAAC;cAAE,IAAI;EACV,gBAAA,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;EAAE,oBAAA,OAAO,CAAC,CAAC;EAC7J,gBAAA,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;EAAE,oBAAA,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;EACxC,gBAAA,QAAQ,EAAE,CAAC,CAAC,CAAC;EACT,oBAAA,KAAK,CAAC,CAAC;EAAC,oBAAA,KAAK,CAAC;0BAAE,CAAC,GAAG,EAAE,CAAC;0BAAC,MAAM;EAC9B,oBAAA,KAAK,CAAC;0BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;EAAC,wBAAA,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;EACxD,oBAAA,KAAK,CAAC;0BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;EAAC,wBAAA,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;EAAC,wBAAA,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;0BAAC,SAAS;EACjD,oBAAA,KAAK,CAAC;EAAE,wBAAA,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;EAAC,wBAAA,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;0BAAC,SAAS;EACjD,oBAAA;EACI,wBAAA,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;8BAAE,CAAC,GAAG,CAAC,CAAC;8BAAC,SAAS;EAAE,yBAAA;EAC5G,wBAAA,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;EAAE,4BAAA,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;8BAAC,MAAM;EAAE,yBAAA;EACtF,wBAAA,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;EAAE,4BAAA,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;8BAAC,CAAC,GAAG,EAAE,CAAC;8BAAC,MAAM;EAAE,yBAAA;0BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;EAAE,4BAAA,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;EAAC,4BAAA,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;8BAAC,MAAM;EAAE,yBAAA;0BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;EAAE,4BAAA,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;EACtB,wBAAA,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;0BAAC,SAAS;EAC9B,iBAAA;kBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;EAC9B,aAAA;EAAC,YAAA,OAAO,CAAC,EAAE;EAAE,gBAAA,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAAC,CAAC,GAAG,CAAC,CAAC;EAAE,aAAA;EAAS,oBAAA;EAAE,gBAAA,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAAE,aAAA;EAC1D,QAAA,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;EAAE,YAAA,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;UAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;OACpF;EACL,CAAC;EAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAA;MAC9D,IAAI,EAAE,KAAK,SAAS;UAAE,EAAE,GAAG,CAAC,CAAC;MAC7B,IAAI,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;MACjD,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE;EAC/E,QAAA,IAAI,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAA,EAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;EACjE,KAAA;MACD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;EACvC,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAA;MACtB,IAAI,EAAE,KAAK,SAAS;UAAE,EAAE,GAAG,CAAC,CAAC;MAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;EACjB,CAAC,CAAC,CAAC;EAEa,SAAA,YAAY,CAAC,CAAC,EAAE,CAAC,EAAA;MAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;EAAE,QAAA,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;EAAE,YAAA,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;EAClH,CAAC;EAEK,SAAU,QAAQ,CAAC,CAAC,EAAA;MACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;EAC9E,IAAA,IAAI,CAAC;EAAE,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;EACxB,IAAA,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;UAAE,OAAO;EAC1C,YAAA,IAAI,EAAE,YAAA;EACF,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;sBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;EACnC,gBAAA,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;eAC3C;WACJ,CAAC;EACF,IAAA,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;EAC3F,CAAC;EAEe,SAAA,MAAM,CAAC,CAAC,EAAE,CAAC,EAAA;EACvB,IAAA,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;EAC3D,IAAA,IAAI,CAAC,CAAC;EAAE,QAAA,OAAO,CAAC,CAAC;EACjB,IAAA,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;MACjC,IAAI;UACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;EAAE,YAAA,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;EAC9E,KAAA;EACD,IAAA,OAAO,KAAK,EAAE;EAAE,QAAA,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;EAAE,KAAA;EAC/B,YAAA;UACJ,IAAI;EACA,YAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;EAAE,gBAAA,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;EACpD,SAAA;EACO,gBAAA;EAAE,YAAA,IAAI,CAAC;kBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;EAAE,SAAA;EACpC,KAAA;EACD,IAAA,OAAO,EAAE,CAAC;EACd,CAAC;EAED;WACgB,QAAQ,GAAA;EACpB,IAAA,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;EAC9C,QAAA,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;EACzC,IAAA,OAAO,EAAE,CAAC;EACd,CAAC;EAED;WACgB,cAAc,GAAA;MAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;EAAE,QAAA,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;MACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;UAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;cAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;EACpB,IAAA,OAAO,CAAC,CAAC;EACb,CAAC;WAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAA;EACxC,IAAA,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;EAAE,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;cACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;EACpB,gBAAA,IAAI,CAAC,EAAE;EAAE,oBAAA,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;kBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;EACnB,aAAA;EACJ,SAAA;EACD,IAAA,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;EAC7D,CAAC;EAEK,SAAU,OAAO,CAAC,CAAC,EAAA;MACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;EACzE,CAAC;WAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAA;MAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;EAAE,QAAA,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;EACvF,IAAA,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;EAC9D,IAAA,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,YAAc,EAAA,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;MACtH,SAAS,IAAI,CAAC,CAAC,EAAA,EAAI,IAAI,CAAC,CAAC,CAAC,CAAC;UAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAA,EAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAI,EAAA,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;EAC1I,IAAA,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;UAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;EAAE,KAAA;EAAC,IAAA,OAAO,CAAC,EAAE;UAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAAE,KAAA,EAAE;MAClF,SAAS,IAAI,CAAC,CAAC,EAAA,EAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;EACxH,IAAA,SAAS,OAAO,CAAC,KAAK,EAAA,EAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;EAClD,IAAA,SAAS,MAAM,CAAC,KAAK,EAAA,EAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;EAClD,IAAA,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAA,EAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;EAAE,QAAA,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;EACtF,CAAC;EAEK,SAAU,gBAAgB,CAAC,CAAC,EAAA;MAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;EACT,IAAA,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAA,EAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;EAC5I,IAAA,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAI,EAAA,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAI,EAAA,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;EACnJ,CAAC;EAEK,SAAU,aAAa,CAAC,CAAC,EAAA;MAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;EAAE,QAAA,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;MACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;EACnC,IAAA,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,YAAA,EAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;MACjN,SAAS,IAAI,CAAC,CAAC,EAAI,EAAA,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,EAAA,EAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,EAAI,EAAA,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;EAChK,IAAA,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,EAAI,EAAA,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;EAChI,CAAC;EAEe,SAAA,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAA;MAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;EAAE,QAAA,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;EAAE,KAAA;EAAM,SAAA;EAAE,QAAA,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;EAAE,KAAA;EAC/G,IAAA,OAAO,MAAM,CAAC;EAClB,CAAC;EAAA,CAAC;EAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAA;EACnD,IAAA,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;EACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC,EAAA;EACd,IAAA,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;EACrB,CAAC,CAAC;EAEI,SAAU,YAAY,CAAC,GAAG,EAAA;EAC5B,IAAA,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;EAAE,QAAA,OAAO,GAAG,CAAC;MACtC,IAAI,MAAM,GAAG,EAAE,CAAC;MAChB,IAAI,GAAG,IAAI,IAAI;UAAE,KAAK,IAAI,CAAC,IAAI,GAAG;EAAE,YAAA,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;EAAE,gBAAA,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;EACzI,IAAA,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;EAChC,IAAA,OAAO,MAAM,CAAC;EAClB,CAAC;EAEK,SAAU,eAAe,CAAC,GAAG,EAAA;EAC/B,IAAA,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;EAC5D,CAAC;EAEK,SAAU,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAA;EAC3D,IAAA,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;EAAE,QAAA,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;MAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;EAAE,QAAA,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;EACnL,IAAA,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;EAClG,CAAC;EAEK,SAAU,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAA;MAClE,IAAI,IAAI,KAAK,GAAG;EAAE,QAAA,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;EACxE,IAAA,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;EAAE,QAAA,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;MAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;EAAE,QAAA,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;EAClL,IAAA,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;EAC9G,CAAC;EAEe,SAAA,qBAAqB,CAAC,KAAK,EAAE,QAAQ,EAAA;EACjD,IAAA,IAAI,QAAQ,KAAK,IAAI,KAAK,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,UAAU,CAAC;EAAE,QAAA,MAAM,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAC;EACzJ,IAAA,OAAO,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;EAClF;;ACpPA,MAAA,eAAA,kBAAA,YAAA;EAGI,IAAA,SAAA,eAAA,CAAY,SAAuC,EAAA;UAAnD,IAEC,KAAA,GAAA,IAAA,CAAA;EADC,QAAA,SAAS,CAAC,SAAS,CAAC,UAAA,CAAC,EAAI,EAAA,OAAA,KAAI,CAAC,IAAI,GAAG,CAAC,CAAb,EAAa,CAAC,CAAC;OACzC;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAO,CAAA,SAAA,EAAA,SAAA,EAAA;EAAX,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,CAAC;WAC5B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAY,CAAA,SAAA,EAAA,cAAA,EAAA;EAAhB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,aAAa,CAAC;WACjC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAW,CAAA,SAAA,EAAA,aAAA,EAAA;EAAf,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,YAAY,CAAC;WAChC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAS,CAAA,SAAA,EAAA,WAAA,EAAA;EAAb,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,CAAC;WAC9B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAU,CAAA,SAAA,EAAA,YAAA,EAAA;EAAd,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,KAAK,CAAC;WACzB;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,CAAC;WAC9B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAmB,CAAA,SAAA,EAAA,qBAAA,EAAA;EAAvB,QAAA,GAAA,EAAA,YAAA;cACE,IAAG,IAAI,CAAC,IAAI;kBACV,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;EAC/C,YAAA,OAAO,SAAS,CAAC;WAClB;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,CAAC;WAC9B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,OAAO,CAAC;WAC3B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAgB,CAAA,SAAA,EAAA,kBAAA,EAAA;EAApB,QAAA,GAAA,EAAA,YAAA;cACE,IAAG,IAAI,CAAC,IAAI;EACV,gBAAA,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC;EACrC,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;EAGD,IAAA,MAAA,CAAA,cAAA,CAAI,eAAO,CAAA,SAAA,EAAA,SAAA,EAAA;EAAX,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,CAAC;WAChC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAS,CAAA,SAAA,EAAA,WAAA,EAAA;EAAb,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,CAAC;WACjC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAa,CAAA,SAAA,EAAA,eAAA,EAAA;EAAjB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAQ,CAAC;WACrC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAU,CAAA,SAAA,EAAA,YAAA,EAAA;EAAd,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,CAAC;WAClC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,SAAS,CAAC;WACtC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAY,CAAA,SAAA,EAAA,cAAA,EAAA;EAAhB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC;WACpC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,SAAS,CAAC;WACtC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAkB,CAAA,SAAA,EAAA,oBAAA,EAAA;EAAtB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,cAAc,CAAC;WAC3C;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAa,CAAA,SAAA,EAAA,eAAA,EAAA;EAAjB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,SAAS,CAAC;WACtC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAU,CAAA,SAAA,EAAA,YAAA,EAAA;EAAd,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,CAAC;WACjC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAmB,CAAA,SAAA,EAAA,qBAAA,EAAA;EAAvB,QAAA,GAAA,EAAA,YAAA;;cACE,IAAG,IAAI,CAAC,UAAU;EAChB,gBAAA,OAAO,CAAA,EAAA,GAAA,IAAI,CAAC,UAAU,0CAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;EAC/C,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAkB,CAAA,SAAA,EAAA,oBAAA,EAAA;EAAtB,QAAA,GAAA,EAAA,YAAA;;cACE,IAAG,IAAI,CAAC,UAAU;EAChB,gBAAA,OAAO,CAAA,EAAA,GAAA,IAAI,CAAC,UAAU,0CAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;EAC9C,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;;cACE,IAAG,IAAI,CAAC,UAAU;EAChB,gBAAA,OAAO,CAAA,EAAA,GAAA,IAAI,CAAC,UAAU,0CAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;EAC9C,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,WAAW,CAAC;WACxC;;;EAAA,KAAA,CAAA,CAAA;EAID,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;cACE,IAAG,IAAI,CAAC,UAAU;kBAChB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;EAC9C,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAgB,CAAA,SAAA,EAAA,kBAAA,EAAA;EAApB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC;WACpC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAA2B,CAAA,SAAA,EAAA,6BAAA,EAAA;EAA/B,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,CAAC;WACzC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAkB,CAAA,SAAA,EAAA,oBAAA,EAAA;EAAtB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,SAAS,CAAC;WACtC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAY,CAAA,SAAA,EAAA,cAAA,EAAA;EAAhB,QAAA,GAAA,EAAA,YAAA;cACE,IAAG,IAAI,CAAC,UAAU;kBAChB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;EAC9C,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAY,CAAA,SAAA,EAAA,cAAA,EAAA;EAAhB,QAAA,GAAA,EAAA,YAAA;cACE,IAAG,IAAI,CAAC,UAAU;kBAChB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;EAC5C,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAa,CAAA,SAAA,EAAA,eAAA,EAAA;EAAjB,QAAA,GAAA,EAAA,YAAA;cACE,IAAG,IAAI,CAAC,UAAU;kBAChB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;EACjD,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC;WACpC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAyB,CAAA,SAAA,EAAA,2BAAA,EAAA;EAA7B,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,CAAC;WACzC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAgB,CAAA,SAAA,EAAA,kBAAA,EAAA;EAApB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,SAAS,CAAC;WACtC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,eAAS,CAAA,SAAA,EAAA,WAAA,EAAA;EAAb,QAAA,GAAA,EAAA,YAAA;EACE,YAAA,OAAO,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,CAAC;WACjD;;;EAAA,KAAA,CAAA,CAAA;MACF,OAAA,eAAA,CAAA;EAAA,CAAA,EAAA;;AC1KH,MAAA,kBAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,kBAAA,GAAA;OAiBC;MAAA,OAAA,kBAAA,CAAA;EAAA,CAAA,EAAA,EAAA;AAED,MAAA,cAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,cAAA,GAAA;OAIC;MAAA,OAAA,cAAA,CAAA;EAAA,CAAA,EAAA,EAAA;AAED,MAAA,YAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,YAAA,GAAA;OAIC;MAAA,OAAA,YAAA,CAAA;EAAA,CAAA,EAAA,EAAA;AAEWC,+BAKX;EALD,CAAA,UAAY,WAAW,EAAA;EAEnB,IAAA,WAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;EACb,IAAA,WAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;EACb,IAAA,WAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;EACrB,CAAC,EALWA,mBAAW,KAAXA,mBAAW,GAKtB,EAAA,CAAA,CAAA;;ACxBD,MAAA,sBAAA,kBAAA,YAAA;EA6BE,IAAA,SAAA,sBAAA,CAAoB,IAAgB,EAAU,QAAkB,EAA4B,QAAgB,EAAA;UAA5G,IAYC,KAAA,GAAA,IAAA,CAAA;EAZmB,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;EAAU,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAU;EAA4B,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAQ;EAzBrG,QAAA,IAAY,CAAA,YAAA,GAAW,EAAE,CAAC;EAC1B,QAAA,IAAS,CAAA,SAAA,GAAW,EAAE,CAAC;EACvB,QAAA,IAAY,CAAA,YAAA,GAAW,EAAE,CAAC;EAC1B,QAAA,IAAoB,CAAA,oBAAA,GAAW,EAAE,CAAC;EAClC,QAAA,IAAS,CAAA,SAAA,GAAW,EAAE,CAAC;EACvB,QAAA,IAAY,CAAA,YAAA,GAAW,EAAE,CAAC;EAC1B,QAAA,IAAe,CAAA,eAAA,GAAW,EAAE,CAAC;EAC7B,QAAA,IAAe,CAAA,eAAA,GAAW,EAAE,CAAC;EAC7B,QAAA,IAAmB,CAAA,mBAAA,GAAW,EAAE,CAAC;EACjC,QAAA,IAAmB,CAAA,mBAAA,GAAW,EAAE,CAAC;EACjC,QAAA,IAAY,CAAA,YAAA,GAAW,EAAE,CAAC;EAC1B,QAAA,IAAe,CAAA,eAAA,GAAW,CAAC,CAAC;EAC5B,QAAA,IAAe,CAAA,eAAA,GAAsB,KAAK,CAAC;UAE1C,IAAA,CAAA,cAAc,GAAG,IAAIC,oBAAe,CAAS,EAAE,CAAC,CAAC;UACzD,IAAA,CAAA,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;UAChD,IAAA,CAAA,kBAAkB,GAAG,IAAIA,oBAAe,CAAS,EAAE,CAAC,CAAC;UAC7D,IAAA,CAAA,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;EAExD,QAAA,IAAS,CAAA,SAAA,GAAW,EAAE,CAAC;UACxB,IAAA,CAAA,eAAe,GAAG,IAAIA,oBAAe,CAAS,EAAE,CAAC,CAAC;UAClD,IAAA,CAAA,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;EAE1D,QAAA,IAAA,CAAA,WAAW,GAAyB,IAAIC,eAAY,EAAU,CAAC;EAGpE,QAAA,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;UAC5B,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;EAE3D,QAAA,IAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAI;EAC1B,YAAAC,yBAAkB,CAACC,4BAAQ,EAAE,IAAI,CAAC,CAAC;EACpC,SAAA;UACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;EACxC,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;EAGlE,QAAA,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,UAAA,CAAC,EAAA,EAAI,OAAA,KAAI,CAAC,SAAS,GAAG,CAAC,CAAlB,EAAkB,CAAC,CAAC;OAC7D;MAED,sBAAa,CAAA,SAAA,CAAA,aAAA,GAAb,UAAc,WAAmB,EAAA;UAAjC,IAiBC,KAAA,GAAA,IAAA,CAAA;EAXC,QAAA,IAAI,eAAe,GAAG,WAAY,GAAA,WAAa,CAAA;UAC/C,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;UAE7D,IAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC;EAC3C,aAAA,SAAS,EAAE;eACX,IAAI,CAAC,UAAA,UAAU,EAAA;EACd,YAAA,MAAM,CAAC,MAAM,CAAC,KAAI,EAAE,UAAU,CAAC,CAAC;EAChC,YAAA,OAAO,UAAU,CAAC;EACpB,SAAC,CAAC,CAAC;EAEL,QAAA,OAAO,OAAO,CAAC;OAChB,CAAA;MAED,sBAAe,CAAA,SAAA,CAAA,eAAA,GAAf,UAAgB,MAAc,EAAA;UAC5B,IAAG,MAAM,IAAI,IAAI,EAAC;cAChB,OAAO,SAAS,CAAAC,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,2BAAA,CAAA,EAAA,CAAA,2BAA2B,CAAC,CAAA,CAAA,CAAA,CAAA;EAC7C,SAAA;EACG,aAAA;cACF,OAAO,SAAS,CAAAC,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,+BAAA,CAAA,EAAA,CAAA,+BAA+B,CAAC,CAAA,CAAA,CAAA,CAAA;EACjD,SAAA;OACF,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAe,CAAA,SAAA,EAAA,iBAAA,EAAA;EAAnB,QAAA,GAAA,EAAA,YAAA;EACE,YAAA,IAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAC;EACrB,gBAAA,OAAO,IAAI,CAAC;EACf,aAAA;EACI,iBAAA,IAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,EAAC;EAC/B,gBAAA,OAAO,IAAI,CAAC;EACb,aAAA;EACI,iBAAA;kBACH,OAAO,IAAI,CAAC,QAAQ,CAAC;EACtB,aAAA;WACF;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,sBAAA,CAAA,SAAA,CAAA,qBAAqB,GAArB,YAAA;EAEE,QAAA,IAAM,SAAS,GAAmB,CAAC,EAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAC,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;EACjM,QAAA,OAAO,SAAS,CAAC;OAClB,CAAA;MAED,sBAAe,CAAA,SAAA,CAAA,eAAA,GAAf,UAAgB,MAAc,EAAA;UAC5B,IAAG,MAAM,IAAI,SAAS,EAAC;cACrB,OAAO,SAAS,CAAAC,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,iCAAA,CAAA,EAAA,CAAA,iCAAiC,CAAC,CAAA,CAAA,CAAA,CAAA;EACnD,SAAA;EACG,aAAA;cACF,OAAO,SAAS,CAAAC,kBAAA,KAAAA,kBAAA,GAAA,oBAAA,CAAA,CAAA,2BAAA,CAAA,EAAA,CAAA,2BAA2B,CAAC,CAAA,CAAA,CAAA,CAAA;EAC7C,SAAA;OACF,CAAA;EAED,IAAA,sBAAA,CAAA,SAAA,CAAA,kBAAkB,GAAlB,YAAA;EAEE,QAAA,IAAM,MAAM,GAAgB,CAAC,EAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,yBAAyB,EAAC,EAAE,EAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,sBAAsB,EAAC,CAAC,CAAC;EAClO,QAAA,OAAO,MAAM,CAAC;OACf,CAAA;MAED,sBAAW,CAAA,SAAA,CAAA,WAAA,GAAX,UAAY,UAAkB,EAAA;EAC5B,QAAA,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;EAC9B,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;OACnC,CAAA;EAED,IAAA,sBAAA,CAAA,SAAA,CAAA,aAAa,GAAb,YAAA;EACE,QAAA,OAAO,EAAG,GAAA,IAAI,CAAC,oBAAsB,CAAC;OACvC,CAAA;EAED,IAAA,sBAAA,CAAA,SAAA,CAAA,aAAa,GAAb,YAAA;EACE,QAAA,OAAU,IAAI,CAAC,aAAa,EAAE,SAAM,CAAC;OACtC,CAAA;EAED,IAAA,sBAAA,CAAA,SAAA,CAAA,wBAAwB,GAAxB,YAAA;EACE,QAAA,OAAU,IAAI,CAAC,aAAa,EAAE,oBAAiB,CAAC;OACjD,CAAA;EAED,IAAA,sBAAA,CAAA,SAAA,CAAA,gBAAgB,GAAhB,YAAA;EACE,QAAA,OAAU,IAAI,CAAC,aAAa,EAAE,gBAAa,CAAC;OAC7C,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAW,CAAA,SAAA,EAAA,aAAA,EAAA;EAAf,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,YAAY,CAAC;WAC1B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAQ,CAAA,SAAA,EAAA,UAAA,EAAA;EAAZ,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,SAAS,CAAC;WACvB;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAW,CAAA,SAAA,EAAA,aAAA,EAAA;EAAf,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,YAAY,CAAC;WAC1B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,eAAe,CAAC;WAC7B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,eAAe,CAAC;WAC7B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAkB,CAAA,SAAA,EAAA,oBAAA,EAAA;EAAtB,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,mBAAmB,CAAC;WACjC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAQ,CAAA,SAAA,EAAA,UAAA,EAAA;EAAZ,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,SAAS,CAAC;WACvB;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAW,CAAA,SAAA,EAAA,aAAA,EAAA;EAAf,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,YAAY,CAAC;WAC1B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAa,CAAA,SAAA,EAAA,eAAA,EAAA;EAAjB,QAAA,GAAA,EAAA,YAAA;EACE,YAAA,IAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAI;kBAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC;EACtB,aAAA;EACG,iBAAA;kBACF,OAAO,IAAI,CAAC,WAAW,CAAC;EACzB,aAAA;WACF;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAiB,CAAA,SAAA,EAAA,mBAAA,EAAA;EAArB,QAAA,GAAA,EAAA,YAAA;EACE,YAAA,OAAU,IAAI,CAAC,aAAa,GAAA,iBAAiB,CAAC;WAC/C;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAwB,CAAA,SAAA,EAAA,0BAAA,EAAA;EAA5B,QAAA,GAAA,EAAA,YAAA;EACE,YAAA,OAAU,IAAI,CAAC,aAAa,GAAA,wBAAwB,CAAC;WACtD;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAA6B,CAAA,SAAA,EAAA,+BAAA,EAAA;EAAjC,QAAA,GAAA,EAAA,YAAA;EACE,YAAA,OAAU,IAAI,CAAC,aAAa,GAAA,kBAAkB,CAAC;WAChD;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAkB,CAAA,SAAA,EAAA,oBAAA,EAAA;EAAtB,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,mBAAmB,CAAC;WACjC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAW,CAAA,SAAA,EAAA,aAAA,EAAA;EAAf,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,YAAY,CAAC;WAC1B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,eAAe,CAAC;WAC7B;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAI,sBAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAlB,QAAA,GAAA,EAAA,YAAA;cACE,OAAO,IAAI,CAAC,eAAe,CAAC;WAC7B;;;EAAA,KAAA,CAAA,CAAA;;;EAhMU,sBAAA,CAAA,IAAA,GAAAV,aAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,sBAAsB,0FA6ByCW,YAAS,EAAA,CAAA,EAAA,MAAA,EAAAX,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EA7BxE,sBAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,sBAAsB,cAFrB,MAAM,EAAA,CAAA,CAAA;oHAEP,sBAAsB,EAAA,UAAA,EAAA,CAAA;oBAHlCY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;;gCA8BoEC,SAAM;iCAACF,YAAS,CAAA;;;;;ACvBrF,MAAA,oBAAA,kBAAA,YAAA;MAiCE,SAAsB,oBAAA,CAAA,UAAsB,EAAS,aAAqC,EAAA;UAA1F,IAuBC,KAAA,GAAA,IAAA,CAAA;EAvBqB,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;EAAS,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAwB;EA/BnF,QAAA,IAAW,CAAA,WAAA,GAAW,EAAE,CAAC;EACzB,QAAA,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;EAEtB,QAAA,IAAoB,CAAA,oBAAA,GAAW,IAAI,CAAC;EACpC,QAAA,IAAgB,CAAA,gBAAA,GAAW,KAAK,CAAC;EACjC,QAAA,IAAc,CAAA,cAAA,GAAW,KAAK,CAAC;UAI9B,IAAA,CAAA,eAAe,GAAG,IAAIR,oBAAe,CAAmB,SAAS,CAAC,CAAC;UAC3E,IAAA,CAAA,SAAS,GAAgC,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;UAIrE,IAAA,CAAA,qBAAqB,GAAG,IAAIA,oBAAe,CAA8B,SAAS,CAAC,CAAC;UAC5F,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,CAAC;UAE9D,IAAA,CAAA,wBAAwB,GAAG,IAAIA,oBAAe,CAAiC,SAAS,CAAC,CAAC;UAClG,IAAA,CAAA,4BAA4B,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;UAGpE,IAAA,CAAA,oBAAoB,GAAG,IAAIA,oBAAe,CAA6B,SAAS,CAAC,CAAC;UAC1F,IAAA,CAAA,wBAAwB,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC;UAG5D,IAAA,CAAA,eAAe,GAAG,IAAIA,oBAAe,CAA6C,SAAS,CAAC,CAAC;UACrG,IAAA,CAAA,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;EAGnD,QAAA,IAAA,CAAA,WAAW,GAA2H,IAAIC,eAAY,EAA4G,CAAC;EAGxQ,QAAA,IAAI,CAAC,OAAO,GAAG,IAAIU,sBAAW,CAC5B;cACE,SAAS,EAAE,aAAa,CAAC,cAAc;cACvC,SAAS,EAAE,aAAa,CAAC,cAAc;cACvC,aAAa,EAAE,aAAa,CAAC,kBAAkB;cAC/C,YAAY,EAAE,aAAa,CAAC,iBAAiB;cAC7C,wBAAwB,EAAE,aAAa,CAAC,6BAA6B;cACrE,aAAa,EAAE,aAAa,CAAC,kBAAkB;cAC/C,KAAK,EAAE,aAAa,CAAC,WAAW;EAChC,YAAA,oBAAoB,EAAE,IAAI;EAC1B,YAAA,YAAY,EAAE,IAAI;cAClB,mBAAmB,EAAE,aAAa,CAAC,wBAAwB;EAC5D,SAAA,CACF,CAAC;EAEF,QAAA,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;UAC/B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAA,IAAI,EAAA;EAC9B,YAAA,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC;cACjB,KAAI,CAAC,aAAa,EAAE,CAAC;EACvB,SAAC,CAAC,CAAC;UAEH,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;OAC5D;EAES,IAAA,oBAAA,CAAA,SAAA,CAAA,aAAa,GAAb,YAAA;UAAA,IAsBT,KAAA,GAAA,IAAA,CAAA;UApBC,IAAI,IAAI,CAAC,IAAI,EAAE;cACb,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;cACrC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;cACtD,IAAI,CAAC,qBAAqB,EAAE,CAAC;EAC9B,SAAA;EACI,aAAA;EACH,YAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EACrC,YAAA,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAC3C,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAE/C,SAAA;EACD,QAAA,IAAI,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,UAAA,GAAG,EAAA;cAG/B,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,KAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAI,CAAC,eAAe,EAAE,cAAc,EAAE,KAAI,CAAC,cAAc,EAAC,CAAC,CAAC;EAC/G,SAAC,CAAC,CAAC,KAAK,CAAC,UAAC,KAAS,EAAA;EAEjB,YAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;cACrB,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,KAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAI,CAAC,eAAe,EAAE,cAAc,EAAE,KAAI,CAAC,cAAc,EAAC,CAAC,CAAC;EAC/G,SAAC,CAAC,CAAC;OACN,CAAA;EAED,IAAA,oBAAA,CAAA,SAAA,CAAA,qBAAqB,GAArB,YAAA;EAEE,QAAA,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAAC,UAAA,UAAU,EAAA;EAG5C,SAAC,CAAC,CAAC;EACL,QAAA,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,UAAA,SAAS,EAAA;EAGlC,SAAC,CAAC,CAAC;OACN,CAAA;EAED,IAAA,oBAAA,CAAA,SAAA,CAAA,uBAAuB,GAAvB,YAAA;UAAA,IAqDC,KAAA,GAAA,IAAA,CAAA;EApDC,QAAA,IAAG,IAAI,CAAC,eAAe,EAAE,EAAC;cACxB,IAAI,eAAe,GAAW,IAAI,CAAC;EACnC,YAAA,IAAG,IAAI,CAAC,yBAAyB,EAAE,EAAC;EAClC,gBAAA,IAAG,IAAI,CAAC,qBAAqB,EAAE,EAAC;sBAC9B,eAAe,GAAG,IAAI,CAAC;EACxB,iBAAA;EACG,qBAAA;sBACF,eAAe,GAAG,KAAK,CAAC;EACzB,iBAAA;EACF,aAAA;EAED,YAAA,IAAG,eAAe,EAAC;kBACjB,IAAM,GAAG,GAAM,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,GAA0B,yBAAA,GAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAQ,OAAA,GAAA,IAAI,CAAC,aAAa,CAAC,WAAa,CAAC;kBAE/I,IAAM,4BAA4B,GAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAqB,GAAG,CAAC;EACjF,qBAAA,IAAI,CAACC,iBAAO,CAAC,KAAK,CAAC,EAAEC,oBAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAACC,aAAG,CAAC,UAAA,UAAU,EAAA;EAEnE,oBAAA,KAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC;sBACrC,IAAG,KAAI,CAAC,kBAAkB,EAAC;0BACzB,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAI,CAAC,kBAAkB,CAAC,CAAC;EAE7D,qBAAA;EACG,yBAAA;EACF,wBAAA,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAE/C,qBAAA;EACD,oBAAA,OAAO,UAAU,CAAC;mBACnB,EACD,UAAC,GAAQ,EAAA;EAEP,oBAAA,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;EACrD,oBAAA,KAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;EACpC,oBAAA,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAC9C,oBAAA,OAAO,SAAS,CAAC;mBAClB,CACF,CAAC,CAAC;EACH,gBAAA,OAAO,4BAA4B,CAAC,SAAS,EAAE,CAAC;EACjD,aAAA;EACG,iBAAA;EACF,gBAAA,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;EAC/E,gBAAA,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;EACpC,gBAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAE9C,gBAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,aAAA;EACF,SAAA;EACG,aAAA;EACF,YAAA,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;EACnE,YAAA,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;EACpC,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAC9C,YAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,SAAA;OACF,CAAA;EAED,IAAA,oBAAA,CAAA,SAAA,CAAA,cAAc,GAAd,YAAA;UAAA,IAcC,KAAA,GAAA,IAAA,CAAA;UAbC,IAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,CAAC;UACxE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAA2B,iBAAiB,yFAAsF,CAAC;EAC5J,aAAA,IAAI,CAACF,iBAAO,CAAC,KAAK,CAAC,EAAEC,oBAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAACC,aAAG,CAAC,UAAA,MAAM,EAAA;EAE/D,YAAA,KAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CAA8B,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,KAAK,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAA,CAAC,CAAC,CAAC;cAC5F,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAI,CAAC,SAAS,CAAC,CAAC;cAC1C,OAAO,KAAI,CAAC,SAAS,CAAC;WACvB,EACD,UAAC,GAAQ,EAAA;EAEP,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACrB,SAAC,CACF,CAAC,CAAC,SAAS,EAAE,CAAC;OAChB,CAAA;EAGD,IAAA,oBAAA,CAAA,SAAA,CAAA,mBAAmB,GAAnB,YAAA;UAAA,IA0DC,KAAA,GAAA,IAAA,CAAA;;EAzDC,QAAA,IAAG,IAAI,CAAC,eAAe,EAAE,KAAI,CAAA,EAAA,GAAA,IAAI,CAAC,eAAe,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,OAAO,CAAA,EAAC;EAEzD,YAAA,IAAI,GAAoB,CAAC;EACzB,YAAA,IAAG,IAAI,CAAC,eAAe,CAAC,cAAc,EAAC;EACrC,gBAAA,GAAG,GAAM,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAY,WAAA,GAAA,IAAI,CAAC,eAAe,CAAC,OAAO,2EAAwE,CAAC;EACxK,aAAA;EACI,iBAAA,IAAG,IAAI,CAAC,eAAe,CAAC,cAAc,EAAC;EAC1C,gBAAA,GAAG,GAAM,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAgB,eAAA,GAAA,IAAI,CAAC,eAAe,CAAC,OAAO,2EAAwE,CAAC;EAC5K,aAAA;EACI,iBAAA,IAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAC;EACxC,gBAAA,GAAG,GAAM,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAc,aAAA,GAAA,IAAI,CAAC,eAAe,CAAC,OAAO,2EAAwE,CAAC;EAC1K,aAAA;EAID,YAAA,IAAG,GAAG,EAAC;kBACL,IAAM,4BAA4B,GAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAoB,GAAG,CAAC;EAChF,qBAAA,IAAI,CAACF,iBAAO,CAAC,KAAK,CAAC,EAAEC,oBAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAACC,aAAG,CAAC,UAAA,WAAW,EAAA;;EAEpE,oBAAA,IAAI,eAAwC,CAAC;sBAC7C,IAAG,WAAW,CAAC,KAAK,EAAC;EACnB,wBAAA,KAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAE,EAAC,EAAE,EAAE,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,EAAE,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAA,EAAA,GAAA,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,IAAI,EAAE,KAAK,EAAE,CAAA,EAAA,GAAA,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,EAAC,CAAC,CAAC;0BAC5K,IAAG,KAAI,CAAC,cAAc,EAAC;8BACrB,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAI,CAAC,cAAc,CAAC,CAAC;EAErD,yBAAA;EACG,6BAAA;EACF,4BAAA,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAE3C,yBAAA;EACF,qBAAA;EACD,oBAAA,OAAO,eAAe,CAAC;mBACxB,EACD,UAAC,GAAQ,EAAA;EAEP,oBAAA,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;EACrD,oBAAA,KAAI,CAAC,cAAc,GAAG,SAAS,CAAC;EAChC,oBAAA,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAC1C,oBAAA,OAAO,SAAS,CAAC;mBAClB,CACF,CAAC,CAAC;EAEH,gBAAA,OAAO,4BAA4B,CAAC,SAAS,EAAE,CAAC;EACjD,aAAA;EACG,iBAAA;EAEF,gBAAA,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;EAChC,gBAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAC1C,gBAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,aAAA;EACF,SAAA;EACG,aAAA;EAEF,YAAA,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;EAChC,YAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAC1C,YAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,SAAA;OACF,CAAA;MAIY,oBAAM,CAAA,SAAA,CAAA,MAAA,GAAN,UAAO,WAAmB,EAAA;;;;;;EAC9B,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAM,CAAA,EAAA,GAAA,IAAI,CAAC,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,cAAc,CAAC,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,CAAA,CAAE,KAAK,CAAE,UAAC,MAAW,EAAA;8BAEnG,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAI,CAAC,eAAe,CAAC,CAAC;EAC9D,4BAAA,OAAOC,eAAU,CAAC,MAAM,CAAC,CAAC;2BAC3B,CAAC,EAAA,CAAA;EAJF,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAIL,CAAC,CAAA;;;;OACJ,CAAA;EAEY,IAAA,oBAAA,CAAA,SAAA,CAAA,cAAc,GAAd,YAAA;;;;;;;EAEX,wBAAA,EAAA,GAAA,IAAI,CAAA;EAAQ,wBAAA,OAAA,CAAA,CAAA,aAAM,CAAA,EAAA,GAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,sBAAsB,EAAE,EAAA,CAAA;;0BAAxD,EAAK,CAAA,IAAI,GAAG,EAAA,CAAA,IAAA,EAA4C,CAAC;0BACzD,IAAI,CAAC,aAAa,EAAE,CAAC;0BACrB,OAAO,CAAA,CAAA,aAAA,IAAI,CAAC,IAAI,CAAC,CAAA;;;;OAClB,CAAA;EAIY,IAAA,oBAAA,CAAA,SAAA,CAAA,YAAY,GAAZ,YAAA;;;;;;EACJ,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAM,CAAA,EAAA,GAAA,IAAI,CAAC,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,EAAG,CAAA,IAAI,CAAC,UAAA,IAAI,EAAA;EAE/C,4BAAA,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;EAC9B,yBAAC,EAAE,KAAK,CAAE,UAAC,MAAW,EAAA;8BAEpB,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,MAAM,EAAE,KAAI,CAAC,eAAe,CAAC,CAAC;EACpE,4BAAA,OAAOA,eAAU,CAAC,MAAM,CAAC,CAAC;2BAC3B,CAAC,EAAA,CAAA;EAPJ,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAOH,CAAC,CAAA;;;;OACN,CAAA;MAEM,oBAAgB,CAAA,SAAA,CAAA,gBAAA,GAAhB,UAAiB,IAAU,EAAA;EAChC,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;UACjB,IAAI,CAAC,aAAa,EAAE,CAAC;OACtB,CAAA;EAEY,IAAA,oBAAA,CAAA,SAAA,CAAA,oBAAoB,GAApB,YAAA;;;;;EACJ,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAM,CAAA,EAAA,GAAA,IAAI,CAAC,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,oBAAoB,EAAE,EAAA,CAAA;EAAjD,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAA0C,CAAC,CAAA;;;;OACnD,CAAA;EAIY,IAAA,oBAAA,CAAA,SAAA,CAAA,OAAO,GAAP,YAAA;;;;;EACJ,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAM,CAAA,EAAA,GAAA,IAAI,CAAC,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,eAAe,EAAE,EAAA,CAAA;EAA5C,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAAqC,CAAC,CAAA;;;;OAC9C,CAAA;EAEY,IAAA,oBAAA,CAAA,SAAA,CAAA,eAAe,GAAf,YAAA;;;kBACX,IAAI,CAAC,aAAa,EAAE,CAAC;;;EACtB,SAAA,CAAA,CAAA;OAAA,CAAA;EAIM,IAAA,oBAAA,CAAA,SAAA,CAAA,eAAe,GAAf,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;OAChD,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,2BAA2B,GAA3B,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC,mBAAmB,IAAI,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;OAC/L,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,iCAAiC,GAAjC,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC,mBAAmB,IAAI,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;OACrO,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,+BAA+B,GAA/B,YAAA;UACL,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;OACxJ,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,qCAAqC,GAArC,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;OAC9L,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,sCAAsC,GAAtC,YAAA;UACL,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;OACnJ,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,uBAAuB,GAAvB,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC,mBAAmB,IAAI,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;OAC/L,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,6BAA6B,GAA7B,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC,mBAAmB,IAAI,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;OACrO,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,2BAA2B,GAA3B,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;OACxG,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,iCAAiC,GAAjC,YAAA;UACL,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;OAC9I,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,yBAAyB,GAAzB,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;OACtG,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,+BAA+B,GAA/B,YAAA;UACL,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;OAC5I,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,kBAAkB,GAAlB,YAAA;UACL,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,2BAA2B,EAAE,IAAI,IAAI,CAAC,2BAA2B,EAAE,IAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;OAChJ,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,wBAAwB,GAAxB,YAAA;UACL,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,2BAA2B,EAAE,IAAI,IAAI,CAAC,2BAA2B,EAAE,IAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;OACpL,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,yBAAyB,GAAzB,YAAA;UACL,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,YAAY,IAAI,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;OAC5I,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,0BAA0B,GAA1B,YAAA;EACL,QAAA,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;OACvG,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,qBAAqB,GAArB,YAAA;UACL,IAAI,uBAAuB,GAAG,YAAY,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;EAC3E,QAAA,IAAG,uBAAuB,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAC;EAC/D,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EACG,aAAA;EACF,YAAA,OAAO,KAAK,CAAC;EACd,SAAA;OACF,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,qBAAqB,GAArB,YAAA;UACL,IAAI,uBAAuB,GAAG,YAAY,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;EAC3E,QAAA,OAAO,uBAAuB,CAAC;OAChC,CAAA;MAEM,oBAAqB,CAAA,SAAA,CAAA,qBAAA,GAArB,UAAsB,uBAAoC,EAAA;EAC/D,QAAA,IAAG,uBAAuB,EAAC;EACzB,YAAA,YAAY,CAAC,OAAO,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAC;cACtE,OAAO,IAAI,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAAC,UAAA,UAAU,EAAA;EAEjD,gBAAA,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,UAAU,CAAC,CAAC;EAC7D,aAAC,CAAC,CAAC;EACN,SAAA;EACG,aAAA;cACF,IAAI,CAAC,wBAAwB,EAAE,CAAC;EAChC,YAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,SAAA;OACF,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,wBAAwB,GAAxB,YAAA;EACL,QAAA,YAAY,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;OACjD,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,iBAAiB,GAAjB,YAAA;UACL,IAAI,mBAAmB,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;EACnE,QAAA,IAAG,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAC;EACvD,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EACG,aAAA;EACF,YAAA,OAAO,KAAK,CAAC;EACd,SAAA;OACF,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,iBAAiB,GAAjB,YAAA;UACL,IAAI,mBAAmB,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;EACnE,QAAA,OAAO,mBAAmB,CAAC;OAC5B,CAAA;MAEM,oBAAiB,CAAA,SAAA,CAAA,iBAAA,GAAjB,UAAkB,mBAAgC,EAAA;EACvD,QAAA,IAAG,mBAAmB,EAAC;EACrB,YAAA,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;EAC9D,YAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,SAAA;EACG,aAAA;cACF,IAAI,CAAC,oBAAoB,EAAE,CAAC;EAC5B,YAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,SAAA;OACF,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,oBAAoB,GAApB,YAAA;EACL,QAAA,YAAY,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;OAC7C,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,eAAe,GAAf,YAAA;UACL,IAAI,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;EAC/D,QAAA,IAAG,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAC;EACnD,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EACG,aAAA;EACF,YAAA,OAAO,KAAK,CAAC;EACd,SAAA;OACF,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,eAAe,GAAf,YAAA;UACL,IAAI,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;EAC/D,QAAA,OAAO,iBAAiB,CAAC;OAC1B,CAAA;MAEM,oBAAe,CAAA,SAAA,CAAA,eAAA,GAAf,UAAgB,iBAA8B,EAAA;EACnD,QAAA,IAAG,iBAAiB,EAAC;EACnB,YAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;EAC1D,YAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,SAAA;EACG,aAAA;cACF,IAAI,CAAC,kBAAkB,EAAE,CAAC;EAC1B,YAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAO,EAAA,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,SAAA;OACF,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,kBAAkB,GAAlB,YAAA;EACL,QAAA,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;OAC3C,CAAA;EAEM,IAAA,oBAAA,CAAA,SAAA,CAAA,WAAW,GAAX,YAAA;;UACL,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,WAAW,CAAC;OACtC,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAW,oBAAW,CAAA,SAAA,EAAA,aAAA,EAAA;EAAtB,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,EAAE,CAAC;WACtC;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAW,oBAAmB,CAAA,SAAA,EAAA,qBAAA,EAAA;EAA9B,QAAA,GAAA,EAAA,YAAA;;cACE,OAAO,MAAA,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;WACnE;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAW,oBAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAzB,QAAA,GAAA,EAAA,YAAA;cACE,IAAG,IAAI,CAAC,IAAI;kBACV,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;EAC/C,YAAA,OAAO,SAAS,CAAC;WAClB;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAW,oBAAe,CAAA,SAAA,EAAA,iBAAA,EAAA;EAA1B,QAAA,GAAA,EAAA,YAAA;cACE,IAAG,IAAI,CAAC,IAAI;EACV,gBAAA,OAAO,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAE,GAAG,IAAI,IAAI,CAAC,CAAC;EACtD,YAAA,OAAO,SAAS,CAAC;WAClB;;;EAAA,KAAA,CAAA,CAAA;EAED,IAAA,MAAA,CAAA,cAAA,CAAW,oBAAc,CAAA,SAAA,EAAA,gBAAA,EAAA;EAAzB,QAAA,GAAA,EAAA,YAAA;;cACE,IAAG,IAAI,CAAC,IAAI;EACV,gBAAA,OAAO,CAAA,MAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,UAAU,KAAI,GAAG,CAAC;EACtC,YAAA,OAAO,KAAK,CAAC;WACd;;;EAAA,KAAA,CAAA,CAAA;MAED,oBAAW,CAAA,SAAA,CAAA,WAAA,GAAX,UAAY,KAAS,EAAA;UACnB,IAAI,YAAY,GAAG,EAAE,CAAC;UACtB,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAC;EAE5C,YAAA,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;EAClC,SAAA;EACI,aAAA,IAAG,KAAK,IAAI,KAAK,CAAC,KAAK,YAAY,UAAU,EAAE;EAEhD,YAAA,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;EACtC,SAAA;EACI,aAAA;cAEH,YAAY,GAAG,iBAAe,KAAK,CAAC,MAAM,GAAc,aAAA,GAAA,KAAK,CAAC,OAAS,CAAC;EACzE,SAAA;EAED,QAAA,OAAOA,eAAU,CAAC,YAAY,CAAC,CAAC;OACjC,CAAA;;;0IAheU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,aAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAApB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAApB,oBAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,oBAAoB,cAFnB,MAAM,EAAA,CAAA,CAAA;oHAEP,oBAAoB,EAAA,UAAA,EAAA,CAAA;oBAHhCY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;;ACJD,MAAA,oBAAA,kBAAA,YAAA;EAII,IAAA,SAAA,oBAAA,CAAsB,aAAqC,EAAA;EAArC,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAwB;OAE1D;EAED,IAAA,oBAAA,CAAA,SAAA,CAAA,SAAS,GAAT,UAAU,GAAqB,EAAE,IAAiB,EAAA;UAAlD,IAgHC,KAAA,GAAA,IAAA,CAAA;;EA7GG,QAAA,IAAG,CAAA,MAAA,IAAI,CAAC,aAAa,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,oBAAoB,KAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAC;EACrG,YAAA,IAAG,IAAI,CAAC,WAAW,KAAK,SAAS,EAAC;EAC9B,gBAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;EAC/E,aAAA;EAED,YAAA,IAAG,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,CAAC,EAAC;EACrC,gBAAA,OAAO,CAAC,GAAG,CAAC,EAAC,GAAG,EAAE,gCAAgC,EAAE,OAAO,EAAE,GAAG,EAAC,CAAC,CAAC;EACtE,aAAA;cACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,EAAE;EACjD,gBAAA,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC;sBACd,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,GAAG,CAAC;EAC7D,iBAAA,CAAC,CAAC;EACN,aAAA;EAED,YAAA,IAAM,QAAQ,GAAW,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;cAE5D,IAAI,QAAQ,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;EAC1C,gBAAA,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC;sBACd,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC;EAC/C,iBAAA,CAAC,CAAC;EACN,aAAA;cACD,IAAI,QAAQ,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;EAC7C,gBAAA,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC;EACd,oBAAA,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;EACtE,iBAAA,CAAC,CAAC;EACN,aAAA;EACD,YAAA,IAAG,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,CAAC,EAAC;EACrC,gBAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;EAC5B,aAAA;cACD,IAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAC;EACtD,gBAAA,IAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;EAChC,oBAAA,IAAG,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,CAAC;0BACpC,OAAO,CAAC,IAAI,CAAC,EAAC,GAAG,EAAE,kCAAkC,EAAE,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAC,CAAE,CAAC;EACtR,oBAAA,OAAOS,uBAAW,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CACpDC,mBAAS,CAAC,UAAC,IAAI,EAAA;;EACX,wBAAA,IAAG,KAAI,CAAC,aAAa,CAAC,cAAc,GAAG,CAAC;EACpC,4BAAA,OAAO,CAAC,GAAG,CAAC,EAAC,GAAG,EAAE,kCAAkC,EAAE,eAAe,EAAE,CAAA,EAAA,GAAA,KAAI,CAAC,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,EAAE,cAAc,EAAE,CAAA,EAAA,GAAA,KAAI,CAAC,WAAW,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,cAAc,EAAE,EAAE,EAAE,CAAA,EAAA,GAAA,KAAI,CAAC,WAAW,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,cAAc,EAAE,WAAW,EAAE,CAAA,EAAA,GAAA,KAAI,CAAC,WAAW,0CAAE,mBAAmB,EAAE,IAAI,EAAE,CAAA,EAAA,GAAA,KAAI,CAAC,WAAW,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,EAAC,CAAE,CAAC;EAC1R,wBAAA,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,KAAI,CAAC,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAC,EAAC,CAAC,CAAC;EAG1G,wBAAA,IAAG,KAAI,CAAC,WAAW,IAAI,KAAI,CAAC,WAAW,CAAC,oBAAoB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAC;8BAC/F,IAAI,uBAAuB,GAAG,KAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC;EACvE,4BAAA,IAAG,uBAAuB,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAC;kCAC7D,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,uBAAuB,CAAC,EAAC,CAAC,CAAC;EAC1F,6BAAA;EACJ,yBAAA;EAGD,wBAAA,IAAG,KAAI,CAAC,WAAW,IAAI,KAAI,CAAC,WAAW,CAAC,gBAAgB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAC;8BACvF,IAAI,mBAAmB,GAAG,KAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;EAC/D,4BAAA,IAAG,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAC;kCACrD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,mBAAmB,CAAC,EAAC,CAAC,CAAC;EAClF,6BAAA;EACJ,yBAAA;EAGD,wBAAA,IAAG,KAAI,CAAC,WAAW,IAAI,KAAI,CAAC,WAAW,CAAC,cAAc,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAC;8BACnF,IAAI,iBAAiB,GAAG,KAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;EAC3D,4BAAA,IAAG,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAC;kCACjD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,iBAAiB,CAAC,EAAC,CAAC,CAAC;EAC9E,6BAAA;EACJ,yBAAA;EAED,wBAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;uBACvB,CAAC,CACT,CAAC;EACL,iBAAA;EACG,qBAAA;EACA,oBAAA,IAAG,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,CAAC;0BACpC,OAAO,CAAC,GAAG,CAAC,EAAC,GAAG,EAAE,mBAAmB,EAAE,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAC,CAAE,CAAC;sBACtQ,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE;EACnC,wBAAA,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAA,EAAA,GAAA,IAAI,CAAC,WAAW,CAAC,mBAAmB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAC,EAAC,CAAC,CAAC;EAC5G,qBAAA;EAED,oBAAA,IAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,oBAAoB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAC;0BAC/F,IAAI,uBAAuB,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC;EACvE,wBAAA,IAAG,uBAAuB,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAC;8BAC7D,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,uBAAuB,CAAC,EAAC,CAAC,CAAC;EAC1F,yBAAA;EACJ,qBAAA;EAED,oBAAA,IAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,gBAAgB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAC;0BACvF,IAAI,mBAAmB,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;EAC/D,wBAAA,IAAG,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAC;8BACrD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,mBAAmB,CAAC,EAAC,CAAC,CAAC;EAClF,yBAAA;EACJ,qBAAA;EAGD,oBAAA,IAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,cAAc,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAC;0BACnF,IAAI,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;EAC3D,wBAAA,IAAG,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAC;8BACjD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,iBAAiB,CAAC,EAAC,CAAC,CAAC;EAC9E,yBAAA;EACJ,qBAAA;EACD,oBAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;EAC3B,iBAAA;EACJ,aAAA;EACG,iBAAA;EACA,gBAAA,IAAG,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,CAAC;sBACpC,OAAO,CAAC,GAAG,CAAC,EAAC,GAAG,EAAE,uBAAuB,EAAE,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAC,CAAE,CAAC;EAC1Q,gBAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;EAC3B,aAAA;EACJ,SAAA;EACG,aAAA;EACA,YAAA,IAAG,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,CAAC;EACpC,gBAAA,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAG,GAAG,CAAC,CAAC;EAC3C,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;EAC3B,SAAA;OACJ,CAAA;;;0IAxHQ,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAAvB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;8IAApB,oBAAoB,EAAA,CAAA,CAAA;oHAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;oBADhCY,aAAU;;;ACHX,MAAA,iBAAA,kBAAA,YAAA;MAKI,SAAsB,iBAAA,CAAA,UAAsB,EAAS,WAAiC,EAAA;EAAhE,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;EAAS,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OACrF;MAED,iBAAa,CAAA,SAAA,CAAA,aAAA,GAAb,UAAc,OAAoB,EAAA;UAAlC,IA8BC,KAAA,GAAA,IAAA,CAAA;EA5BG,QAAA,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;EAE7B,QAAA,OAAO,IAAI,OAAO,CAAC,UAAA,OAAO,EAAA;EAExB,YAAA,KAAI,CAAC,SAAS,GAAG,UAAU,CAAC,YAAA;EACxB,gBAAA,IAAI,eAAe,GAAG,YAAA,GAAa,OAAO,CAAC,KAAO,CAAC;kBACnD,IAAG,KAAI,CAAC,aAAa,EAAC;EACpB,oBAAA,eAAe,IAAI,iBAAA,GAAkB,KAAI,CAAC,aAAe,CAAC;EAC3D,iBAAA;kBACH,KAAI,CAAC,eAAe,CAAU,eAAe,CAAC,CAAC,IAAI,CAAC,UAAA,QAAQ,EAAA;EACxD,oBAAA,QAAQ,CAAC,SAAS,CAAC,UAAC,MAAM,EAAA;EACtB,wBAAA,IAAG,MAAM,EAAC;EAEN,4BAAA,OAAO,CAAC;EACJ,gCAAA,eAAe,EAAE,IAAI;EACtB,6BAAA,CAAC,CAAC;EACR,yBAAA;EAAK,6BAAA;8BAEF,OAAO,CAAC,IAAI,CAAC,CAAC;EACjB,yBAAA;EACL,qBAAC,CAAC,CAAC;EACL,iBAAC,CAAC;EACF,oBAAA,UAAC,GAAO,EAAA;EACJ,wBAAA,OAAO,CAAC,EAAC,eAAe,EAAE,IAAI,EAAC,CAAC,CAAC;EACnC,qBAAC,CAAA;eACR,EAAE,IAAI,CAAC,CAAC;EAET,SAAC,CAAC,CAAC;OACN,CAAA;EAEK,IAAA,iBAAA,CAAA,SAAA,CAAA,eAAe,GAAf,UAAmB,eAA4B,EAAE,cAA8B,EAAA;EAA5D,QAAA,IAAA,eAAA,KAAA,KAAA,CAAA,EAAA,EAAA,eAA4B,GAAA,EAAA,CAAA,EAAA;EAAE,QAAA,IAAA,cAAA,KAAA,KAAA,CAAA,EAAA,EAAA,cAA8B,GAAA,KAAA,CAAA,EAAA;;;EACnF,gBAAA,OAAO,CAAC,GAAG,CAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAA2B,0BAAA,GAAA,eAAiB,CAAC,CAAC;EACtH,gBAAA,OAAA,CAAA,CAAA,aAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAS,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAA,0BAAA,GAA2B,eAAiB,CAAC;EACtI,yBAAA,IAAI,CAACG,iBAAO,CAAC,cAAc,CAAC,EAAEC,oBAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;EAC3D,yBAAA,IAAI,CAACC,aAAG,CAAC,UAAA,MAAM,EAAI,EAAA,OAAA,MAAM,CAAC,OAAO,CAAC,CAAA,EAAA,CAAC,CAAC,CAAC,CAAA;;EACzC,SAAA,CAAA,CAAA;OAAA,CAAA;MAED,iBAAW,CAAA,SAAA,CAAA,WAAA,GAAX,UAAY,KAAS,EAAA;UACnB,IAAI,YAAY,GAAG,EAAE,CAAC;UACtB,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAC;EAE5C,YAAA,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;EAClC,SAAA;EACI,aAAA,IAAG,KAAK,IAAI,KAAK,CAAC,KAAK,YAAY,UAAU,EAAE;EAEhD,YAAA,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;EACtC,SAAA;EACI,aAAA;cAEH,YAAY,GAAG,iBAAe,KAAK,CAAC,MAAM,GAAc,aAAA,GAAA,KAAK,CAAC,OAAS,CAAC;EACzE,SAAA;EAED,QAAA,OAAOC,eAAU,CAAC,YAAY,CAAC,CAAC;OACjC,CAAA;EAGM,IAAA,iBAAA,CAAA,SAAA,CAAA,6BAA6B,GAA7B,UAA8B,QAAgB,EAAE,aAAiC,EAAA;UAAjF,IA2BN,KAAA,GAAA,IAAA,CAAA;EA1BC,QAAA,IAAI,eAAe,GAAG,YAAa,GAAA,QAAU,CAAC;EAC9C,QAAA,IAAG,aAAa,EAAC;cACf,eAAe,IAAI,iBAAkB,GAAA,aAAe,CAAC;EACtD,SAAA;EAED,QAAA,IAAM,GAAG,GAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAA2B,0BAAA,GAAA,eAAiB,CAAC;EACrH,QAAA,OAAO,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM,EAAA;EACrC,YAAA,KAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;EACnB,iBAAA,SAAS,EAAE;mBACX,IAAI,CAAC,UAAC,GAAQ,EAAA;EACb,gBAAA,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;kBACzB,IAAG,GAAG,CAAC,OAAO,EAAC;EACb,oBAAA,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,2DAAA,CAAA,EAAA,CAAA,2DAA2D,IAAA,CAAC;sBACnF,OAAO,CAAC,GAAG,CAAC,CAAC;EACd,iBAAA;EACG,qBAAA;EACF,oBAAA,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,sDAAA,CAAA,EAAA,CAAA,sDAAsD,IAAA,CAAC;EAC9E,oBAAA,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;EACpB,iBAAA;EAEH,aAAC,CAAC;mBACD,KAAK,CAAC,UAAA,KAAK,EAAA;EACR,gBAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;kBACrB,MAAM,CAAC,oCAAoC,CAAC,CAAC;EACjD,aAAC,CAAC,CAAC;EACX,SAAC,CAAC,CAAA;OACH,CAAA;EAEM,IAAA,iBAAA,CAAA,SAAA,CAAA,sCAAsC,GAAtC,UAAuC,UAAkB,EAAE,QAAgB,EAAE,aAAiC,EAAA;UAA9G,IA2BN,KAAA,GAAA,IAAA,CAAA;EA1BC,QAAA,IAAI,eAAe,GAAG,aAAc,GAAA,QAAQ,oBAAiB,CAAC;EAC9D,QAAA,IAAG,aAAa,EAAC;cACf,eAAe,IAAI,aAAa,CAAC;EAClC,SAAA;EAED,QAAA,IAAM,GAAG,GAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAA,WAAA,GAAY,UAAU,GAAA,mBAAA,GAAoB,eAAiB,CAAC;EACpI,QAAA,OAAO,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM,EAAA;EACrC,YAAA,KAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;EACnB,iBAAA,SAAS,EAAE;mBACX,IAAI,CAAC,UAAC,GAAQ,EAAA;EACb,gBAAA,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;kBACzB,IAAG,GAAG,CAAC,OAAO,EAAC;EACb,oBAAA,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,2DAAA,CAAA,EAAA,CAAA,2DAA2D,IAAA,CAAC;sBACnF,OAAO,CAAC,GAAG,CAAC,CAAC;EACd,iBAAA;EACG,qBAAA;EACF,oBAAA,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,sDAAA,CAAA,EAAA,CAAA,sDAAsD,IAAA,CAAC;EAC9E,oBAAA,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;EACpB,iBAAA;EAEH,aAAC,CAAC;mBACD,KAAK,CAAC,UAAA,KAAK,EAAA;EACR,gBAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;kBACrB,MAAM,CAAC,oCAAoC,CAAC,CAAC;EACjD,aAAC,CAAC,CAAC;EACX,SAAC,CAAC,CAAA;OACH,CAAA;EAEM,IAAA,iBAAA,CAAA,SAAA,CAAA,oCAAoC,GAApC,UAAqC,QAAgB,EAAE,QAAgB,EAAE,aAAiC,EAAA;UAA1G,IA2BN,KAAA,GAAA,IAAA,CAAA;EA1BC,QAAA,IAAI,eAAe,GAAG,aAAc,GAAA,QAAQ,oBAAiB,CAAC;EAC9D,QAAA,IAAG,aAAa,EAAC;cACf,eAAe,IAAI,aAAa,CAAC;EAClC,SAAA;EAED,QAAA,IAAM,GAAG,GAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAA,SAAA,GAAU,QAAQ,GAAA,mBAAA,GAAoB,eAAiB,CAAC;EAChI,QAAA,OAAO,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM,EAAA;EACrC,YAAA,KAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;EACnB,iBAAA,SAAS,EAAE;mBACX,IAAI,CAAC,UAAC,GAAQ,EAAA;EACb,gBAAA,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;kBACzB,IAAG,GAAG,CAAC,OAAO,EAAC;EACb,oBAAA,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,2DAAA,CAAA,EAAA,CAAA,2DAA2D,IAAA,CAAC;sBACnF,OAAO,CAAC,GAAG,CAAC,CAAC;EACd,iBAAA;EACG,qBAAA;EACF,oBAAA,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA,gBAAA,KAAA,gBAAA,GAAA,oBAAA,CAAA,CAAA,sDAAA,CAAA,EAAA,CAAA,sDAAsD,IAAA,CAAC;EAC9E,oBAAA,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;EACpB,iBAAA;EAEH,aAAC,CAAC;mBACD,KAAK,CAAC,UAAA,KAAK,EAAA;EACR,gBAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;kBACrB,MAAM,CAAC,oCAAoC,CAAC,CAAC;EACjD,aAAC,CAAC,CAAC;EACX,SAAC,CAAC,CAAA;OACH,CAAA;;;uIAvJQ,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,aAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;2IAAjB,iBAAiB,EAAA,CAAA,CAAA;oHAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;oBAD7BY,aAAU;;;;ACKX,MAAA,mBAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,mBAAA,GAAA;;EAES,IAAA,mBAAA,CAAA,OAAO,GAAd,YAAA;UACE,OAAO;EACL,YAAA,QAAQ,EAAE,mBAAmB;EAC7B,YAAA,SAAS,EAAE;EACT,gBAAA,EAAC,OAAO,EAAEa,oBAAiB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,sBAAsB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAC;kBACzG,iBAAiB;EAClB,aAAA;WACF,CAAC;OACH,CAAA;;;yIAVU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAAzB,aAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;0IAAnB,mBAAmB,EAAA,YAAA,EAAA,CALf,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAG3B,sBAAsB,CAAA,EAAA,CAAA,CAAA;EAErB,mBAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,mBAAmB,YAJrB,EACR,CAAA,EAAA,CAAA,CAAA;oHAGU,mBAAmB,EAAA,UAAA,EAAA,CAAA;oBAN/B0B,WAAQ;EAAC,YAAA,IAAA,EAAA,CAAA;sBACR,YAAY,EAAE,CAAC,sBAAsB,CAAC;EACtC,oBAAA,OAAO,EAAE,EACR;sBACD,OAAO,EAAE,CAAC,sBAAsB,CAAC;mBAClC,CAAA;;;ACHD,MAAA,uBAAA,kBAAA,YAAA;MAEE,SAAoB,uBAAA,CAAA,MAAc,EAAU,WAAiC,EAAA;EAAzD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;EAAU,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OAAK;EAElF,IAAA,uBAAA,CAAA,SAAA,CAAA,WAAW,GAAX,UACE,IAA4B,EAC5B,KAA0B,EAAA;EAE1B,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE;EACtC,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;UAED,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACnC,QAAA,OAAO,KAAK,CAAC;OACd,CAAA;;;6IAdU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAP,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAAvB,uBAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,uBAAuB,cAFtB,MAAM,EAAA,CAAA,CAAA;oHAEP,uBAAuB,EAAA,UAAA,EAAA,CAAA;oBAHnCY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;;ACCD,MAAA,qBAAA,kBAAA,YAAA;MAEE,SAAoB,qBAAA,CAAA,MAAc,EAAU,WAAiC,EAAA;EAAzD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;EAAU,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OAAK;EAElF,IAAA,qBAAA,CAAA,SAAA,CAAA,WAAW,GAAX,UACE,IAA4B,EAC5B,KAA0B,EAAA;EAE1B,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,2BAA2B,EAAE,EAAE;EAClD,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE;cACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACpC,SAAA;EAED,QAAA,OAAO,KAAK,CAAC;OACd,CAAA;;;2IAjBU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAO,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAArB,qBAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,qBAAqB,cAFpB,MAAM,EAAA,CAAA,CAAA;oHAEP,qBAAqB,EAAA,UAAA,EAAA,CAAA;oBAHjCY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;AAyBD,MAAA,mBAAA,kBAAA,YAAA;MAEE,SAAoB,mBAAA,CAAA,MAAc,EAAU,WAAiC,EAAA;EAAzD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;EAAU,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OAAK;EAElF,IAAA,mBAAA,CAAA,SAAA,CAAA,WAAW,GAAX,UACE,IAA4B,EAC5B,KAA0B,EAAA;EAE1B,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,yBAAyB,EAAE,EAAE;EAChD,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE;cACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACpC,SAAA;EAED,QAAA,OAAO,KAAK,CAAC;OACd,CAAA;;;yIAjBU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAO,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAAnB,mBAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,mBAAmB,cAFlB,MAAM,EAAA,CAAA,CAAA;oHAEP,mBAAmB,EAAA,UAAA,EAAA,CAAA;oBAH/BY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;AAyBD,MAAA,oBAAA,kBAAA,YAAA;MAEE,SAAoB,oBAAA,CAAA,MAAc,EAAU,WAAiC,EAAA;EAAzD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;EAAU,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OAAK;EAElF,IAAA,oBAAA,CAAA,SAAA,CAAA,WAAW,GAAX,UACE,IAA4B,EAC5B,KAA0B,EAAA;EAE1B,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,0BAA0B,EAAE,EAAE;EACjD,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE;cACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACpC,SAAA;EAED,QAAA,OAAO,KAAK,CAAC;OACd,CAAA;;;0IAjBU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAO,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAApB,oBAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,oBAAoB,cAFnB,MAAM,EAAA,CAAA,CAAA;oHAEP,oBAAoB,EAAA,UAAA,EAAA,CAAA;oBAHhCY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;AAyBD,MAAA,uBAAA,kBAAA,YAAA;MACE,SAAoB,uBAAA,CAAA,MAAc,EAAU,WAAiC,EAAA;EAAzD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;EAAU,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OAE5E;EAED,IAAA,uBAAA,CAAA,SAAA,CAAA,WAAW,GAAX,UACE,KAA6B,EAC7B,KAA0B,EAAA;EACxB,QAAA,IAAG,IAAI,CAAC,WAAW,CAAC,yBAAyB,EAAE,EAAC;cAC9C,IAAI,uBAAuB,GAAG,YAAY,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;EAC3E,YAAA,IAAG,uBAAuB,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAC;EAC/D,gBAAA,OAAO,IAAI,CAAC;EACb,aAAA;EACG,iBAAA;EACF,gBAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;EACjD,gBAAA,OAAO,KAAK,CAAC;EACd,aAAA;EACF,SAAA;EACI,aAAA,IAAI,IAAI,CAAC,WAAW,CAAC,2BAA2B,EAAE,EAAE;EACvD,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE;cACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACpC,SAAA;EAED,QAAA,OAAO,KAAK,CAAC;OAChB,CAAA;;;6IA3BU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAO,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAAvB,uBAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,uBAAuB,cAFtB,MAAM,EAAA,CAAA,CAAA;oHAEP,uBAAuB,EAAA,UAAA,EAAA,CAAA;oBAHnCY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;;ACvED,MAAA,0BAAA,kBAAA,YAAA;MAEE,SAAoB,0BAAA,CAAA,MAAc,EAAU,WAAiC,EAAA;EAAzD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;EAAU,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OAAK;EAElF,IAAA,0BAAA,CAAA,SAAA,CAAA,WAAW,GAAX,UACE,IAA4B,EAC5B,KAA0B,EAAA;EAE1B,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAAE;EACzC,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE;cACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACpC,SAAA;EAED,QAAA,OAAO,KAAK,CAAC;OACd,CAAA;;;gJAjBU,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAO,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAA1B,0BAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,0BAA0B,cAFzB,MAAM,EAAA,CAAA,CAAA;oHAEP,0BAA0B,EAAA,UAAA,EAAA,CAAA;oBAHtCY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;AAyBD,MAAA,mCAAA,kBAAA,YAAA;MAEE,SAAoB,mCAAA,CAAA,MAAc,EAAU,WAAiC,EAAA;EAAzD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;EAAU,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OAAK;EAElF,IAAA,mCAAA,CAAA,SAAA,CAAA,WAAW,GAAX,UACE,IAA4B,EAC5B,KAA0B,EAAA;EAE1B,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,2BAA2B,EAAE,EAAE;EAClD,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE;cACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACpC,SAAA;EAED,QAAA,OAAO,KAAK,CAAC;OACd,CAAA;;;yJAjBU,mCAAmC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAO,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAAnC,mCAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,mCAAmC,cAFlC,MAAM,EAAA,CAAA,CAAA;oHAEP,mCAAmC,EAAA,UAAA,EAAA,CAAA;oBAH/CY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;AAyBD,MAAA,iCAAA,kBAAA,YAAA;MAEE,SAAoB,iCAAA,CAAA,MAAc,EAAU,WAAiC,EAAA;EAAzD,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;EAAU,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;OAAK;EAElF,IAAA,iCAAA,CAAA,SAAA,CAAA,WAAW,GAAX,UACE,IAA4B,EAC5B,KAA0B,EAAA;EAE1B,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,yBAAyB,EAAE,EAAE;EAChD,YAAA,OAAO,IAAI,CAAC;EACb,SAAA;EAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE;cACvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;EACpC,SAAA;EAED,QAAA,OAAO,KAAK,CAAC;OACd,CAAA;;;uJAjBU,iCAAiC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAO,eAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,oBAAA,EAAA,CAAA,EAAA,MAAA,EAAAxB,aAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;EAAjC,iCAAA,CAAA,KAAA,GAAAA,aAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,iCAAiC,cAFhC,MAAM,EAAA,CAAA,CAAA;oHAEP,iCAAiC,EAAA,UAAA,EAAA,CAAA;oBAH7CY,aAAU;EAAC,YAAA,IAAA,EAAA,CAAA;EACV,oBAAA,UAAU,EAAE,MAAM;mBACnB,CAAA;;;ECxDe,SAAA,6BAA6B,CAAE,MAAW,EAAE,WAAqB,EAAA;EAC7E,IAAA,KAAK,IAAM,GAAG,IAAI,WAAW,EAAE;EAC7B,QAAA,IAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAC;EAC1B,YAAA,IAAG,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,EAAC;EAC7C,gBAAA,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC/D,aAAA;cACD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;EAC7E,SAAA;EACF,KAAA;EACL,CAAC;EAEe,SAAA,uBAAuB,CAAE,MAAW,EAAE,WAAqB,EAAA;EACzE,IAAA,KAAK,IAAM,GAAG,IAAI,WAAW,EAAE;EAC7B,QAAA,IAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAC;EAC1B,YAAA,IAAG,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,EAAC;EAC7C,gBAAA,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC/D,aAAA;cAED,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;cAChF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;cAC1E,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;cACxE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;cACxC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;cAC1C,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;cAC1C,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;cAG/C,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;EAC7E,SAAA;EACF,KAAA;EACH,CAAC;EAEe,SAAA,eAAe,CAAC,KAAW,EAAE,KAAU,EAAA;EACrD,IAAA,IAAG,KAAK,EAAC;EACP,QAAA,IAAG,EAAE,KAAK,YAAY,IAAI,CAAC,EAAC;EAC1B,YAAA,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;EACzB,SAAA;EAED,QAAA,IAAG,KAAK,EAAC;EACP,YAAA,IAAG,EAAE,KAAK,YAAY,IAAI,CAAC,EAAC;EAC1B,gBAAA,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;EACzB,aAAA;EACD,YAAA,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;cAC5B,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;cACvC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;cACjC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;EAC/B,YAAA,OAAO,KAAK,CAAC;EACd,SAAA;EACF,KAAA;EACD,IAAA,OAAO,SAAS,CAAC;EACnB,CAAC;WAGe,iCAAiC,CAAW,WAAgB,EAAE,uBAA4B,EAAE,KAAyB,EAAA;MACnI,IAAI,MAAM,GAAO,IAAW,CAAC;EAC7B,IAAA,IAAI,gBAAkC,CAAC;EAEvC,IAAA,IAAG,WAAW,EAAC;EACb,QAAA,QAAO,uBAAuB;cAC5B,KAAK,UAAU,EAAE;EACf,gBAAA,IAAG,KAAK;sBACN,gBAAgB,GAAG,CAAC,CAAI,KAAK,eAAY,EAAE,uBAAuB,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,CAAI,KAAK,GAAW,WAAA,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC,CAAC;;sBAErJ,gBAAgB,GAAG,CAAC,CAAC,WAAW,EAAE,uBAAuB,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC,CAAC;kBACrI,MAAM;EACP,aAAA;cACD,KAAK,aAAa,EAAE;EAClB,gBAAA,IAAG,KAAK;sBACN,gBAAgB,GAAG,CAAC,CAAI,KAAK,eAAY,EAAE,uBAAuB,EAAE,WAAW,CAAC,EAAE,KAAK,EAAE,CAAI,KAAK,GAAW,WAAA,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC,CAAC;;sBAEtJ,gBAAgB,GAAG,CAAC,CAAC,WAAW,EAAE,uBAAuB,EAAE,WAAW,CAAC,EAAE,KAAK,EAAE,CAAC,UAAU,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC,CAAC;kBACtI,MAAM;EACP,aAAA;cACD,KAAK,YAAY,EAAE;EACjB,gBAAA,IAAG,KAAK;sBACN,gBAAgB,GAAG,CAAI,KAAK,GAAA,YAAY,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC;;sBAEhF,gBAAgB,GAAG,CAAC,WAAW,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC;kBACzE,MAAM;EACP,aAAA;cACD,KAAK,UAAU,EAAE;EACf,gBAAA,IAAG,KAAK;sBACN,gBAAgB,GAAG,CAAI,KAAK,GAAA,WAAW,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC;;sBAE/E,gBAAgB,GAAG,CAAC,UAAU,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC;kBACxE,MAAM;EACP,aAAA;EACD,YAAA,SAAS;kBACP,MAAM;EACP,aAAA;EACJ,SAAA;EACF,KAAA;MAEC,IAAG,CAAC,gBAAgB,EAAC;UACnB,gBAAgB,GAAG,MAAM,CAAC,gCAAgC,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;EACrF,KAAA;EAED,IAAA,OAAO,gBAAgB,CAAC;EAC1B,CAAC;EAGK,SAAU,4BAA4B,CAAW,WAAgB,EAAE,uBAA4B,EAAE,KAAuB,EAAE,cAAgC,EAAA;MAC9J,IAAI,MAAM,GAAO,IAAW,CAAC;EAC7B,IAAA,IAAI,gBAAkC,CAAC;EAEvC,IAAA,IAAG,WAAW,EAAC;EACb,QAAA,QAAO,uBAAuB;cAC5B,KAAK,GAAG,EAAE;EACR,gBAAA,gBAAgB,GAAG,CAAC,CAAI,cAAc,GAAI,GAAA,GAAA,KAAK,GAAG,GAAA,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC,CAAC;kBAC3F,MAAM;EACP,aAAA;cACD,KAAK,IAAI,EAAE;EACT,gBAAA,gBAAgB,GAAG,CAAC,CAAI,cAAc,GAAI,GAAA,GAAA,KAAK,GAAG,GAAA,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC,CAAC;kBAC3F,MAAM;EACP,aAAA;cACD,KAAK,GAAG,EAAE;kBAER,gBAAgB,GAAG,CAAI,cAAc,GAAI,GAAA,GAAA,KAAK,GAAG,GAAA,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC;kBACzF,MAAM;EACP,aAAA;cACD,KAAK,GAAG,EAAE;kBAER,gBAAgB,GAAG,CAAI,cAAc,GAAI,GAAA,GAAA,KAAK,GAAG,GAAA,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC;kBACzF,MAAM;EACP,aAAA;EACD,YAAA,SAAS;kBACP,MAAM;EACP,aAAA;EACJ,SAAA;EACF,KAAA;MAEC,IAAG,CAAC,gBAAgB,EAAC;UACnB,gBAAgB,GAAG,MAAM,CAAC,gCAAgC,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;EACrF,KAAA;EAGD,IAAA,OAAO,gBAAgB,CAAC;EAC1B,CAAC;EAEe,SAAA,UAAU,CAAC,kBAA0B,EAAE,QAAgB,EAAA;EACrE,IAAA,IAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC;EAClD,IAAA,OAAO,aAAW,kBAAkB,GAAA,wBAAA,GAAyB,KAAK,GAAG,QAAU,CAAC;EAClF,CAAC;WAEe,kBAAkB,CAAC,kBAAoC,EAAE,iBAAmC,EAAE,QAA0B,EAAA;EACtI,IAAA,IAAG,kBAAkB,IAAI,iBAAiB,IAAI,QAAQ,EAAC;UACrD,OAAO,UAAU,CAAC,kBAAkB,EAAE,iBAAiB,GAAG,QAAQ,CAAC,CAAC;EACrE,KAAA;EACD,IAAA,OAAO,oCAAoC,CAAC;EAC9C;;ACrJA,MAAA,YAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,YAAA,GAAA;OAIC;MAAA,OAAA,YAAA,CAAA;EAAA,CAAA,EAAA;;ACJD,MAAA,SAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,SAAA,GAAA;OAIC;MAAA,OAAA,SAAA,CAAA;EAAA,CAAA,EAAA;;ACJD,MAAA,OAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,OAAA,GAAA;OAeC;MAAA,OAAA,OAAA,CAAA;EAAA,CAAA,EAAA;;ACfD,MAAA,gBAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,gBAAA,GAAA;OAeC;MAAA,OAAA,gBAAA,CAAA;EAAA,CAAA,EAAA,EAAA;AAED,MAAA,kBAAA,kBAAA,YAAA;EAAA,IAAA,SAAA,kBAAA,GAAA;OAGC;MAAA,OAAA,kBAAA,CAAA;EAAA,CAAA,EAAA;;ACMae,6BAIX;EAJD,CAAA,UAAY,SAAS,EAAA;EACnB,IAAA,SAAA,CAAA,cAAA,CAAA,GAAA,YAA2B,CAAA;EAC3B,IAAA,SAAA,CAAA,eAAA,CAAA,GAAA,eAA+B,CAAA;EAC/B,IAAA,SAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;EACnB,CAAC,EAJWA,iBAAS,KAATA,iBAAS,GAIpB,EAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|