@angular-wave/angular.ts 0.7.5 → 0.7.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/@types/core/scope/scope.d.ts +0 -2
- package/@types/directive/setter/setter.d.ts +2 -2
- package/@types/shared/utils.d.ts +8 -0
- package/dist/angular-ts.esm.js +208 -176
- package/dist/angular-ts.umd.js +208 -176
- package/dist/angular-ts.umd.min.js +1 -1
- package/docs/assets/scss/index.scss +12 -0
- package/docs/content/_index.md +15 -4
- package/docs/content/docs/directive/bind.md +70 -0
- package/docs/content/docs/directive/click.md +3 -0
- package/docs/content/docs/directive/dblclick.md +3 -0
- package/docs/content/docs/directive/keydown.md +38 -0
- package/docs/content/docs/directive/keyup.md +38 -0
- package/docs/content/docs/directive/load.md +43 -0
- package/docs/static/examples/ng-bind/ng-bind.html +9 -0
- package/docs/static/examples/ng-keydown/ng-keydown.html +9 -0
- package/docs/static/examples/ng-keyup/ng-keyup.html +9 -0
- package/docs/static/examples/ng-load/ng-load.html +8 -0
- package/legacy.d.ts +0 -4
- package/package.json +1 -1
- package/src/core/location/location.js +1 -1
- package/src/core/scope/scope.js +0 -5
- package/src/directive/bind/bind.js +16 -4
- package/src/directive/bind/bind.spec.js +13 -0
- package/src/directive/events/events.js +1 -1
- package/src/directive/events/events.md +0 -41
- package/src/directive/messages/messages.js +1 -1
- package/src/directive/repeat/repeat.js +175 -153
- package/src/directive/setter/setter.js +1 -1
- package/src/directive/switch/switch.spec.js +1 -1
- package/src/router/directives/state-directives.js +4 -6
- package/src/services/anchor-scroll.js +1 -1
- package/src/shared/utils.js +19 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).angular={})}(this,(function(t){"use strict";const e="ng-valid",n="ng-invalid",r="ng-pristine",i="ng-dirty",s="ng-untouched",o="ng-touched",a="ng-empty",c="ng-not-empty",l=/^((?:x|data)[-])/i,u=/[-]+(.)/g,h={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"},d=Symbol("isProxy");function p(t){return!(!t||!t[d])}const f=dt("ng");let $=0;function m(){return $+=1,$}function g(t){return E(t)?t.toLowerCase():t}function v(t){if(null==t||T(t))return!1;if(Array.isArray(t)||t instanceof Array||E(t))return!0;const e="length"in Object(t)&&t.length;return x(e)&&(e>=0&&e-1 in t||"function"==typeof t.item)}function y(t){return void 0===t}function b(t){return void 0!==t}function w(t){return null!==t&&"object"==typeof t}function E(t){return"string"==typeof t}function C(t){return null===t}function S(t){return null==t}function x(t){return"number"==typeof t}function A(t){return"[object Date]"===toString.call(t)}function k(t){switch(toString.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return t instanceof Error}}function O(t){return"function"==typeof t}function _(t){return"[object RegExp]"===toString.call(t)}function T(t){return t&&t.window===t}function j(t){return t&&t.$evalAsync&&t.$watch}function L(t){return"boolean"==typeof t}function R(t){return t&&O(t.then)}function N(t){return E(t)?t.trim():t}function V(t,e){const n=e;return t.replace(/[A-Z]/g,((t,e)=>(e?n:"")+t.toLowerCase()))}function M(t,...e){return function(t,e){const n=t.$$hashKey;for(let n=0,r=e.length;n<r;++n){const r=e[n];if(!w(r)&&!O(r))continue;const i=Object.keys(r);for(let e=0,n=i.length;e<n;e++){const n=i[e],s=r[n];t[n]=s}}return function(t,e){e?t.$$hashKey=e:delete t.$$hashKey}(t,n),t}(t,e)}function P(t){return parseInt(t,10)}function D(t){return Number.isNaN(t)}function U(t,e){return M(Object.create(t),e)}function I(t){return O(t.toString)&&t.toString!==toString}function H(t){return!(!t||!(t.nodeName||t.attr&&t.find))}function F(t){return g(t.nodeName)}function q(t,e){return-1!==Array.prototype.indexOf.call(t,e)}function B(t,e){const n=t.indexOf(e);return n>=0&&t.splice(n,1),n}function z(t,e){return t===e||t!=t&&e!=e}function K(t,e){if(t===e)return!0;if(null===t||null===e)return!1;if(t!=t&&e!=e)return!0;const n=typeof t;let r,i,s;if(n===typeof e&&"object"===n){if(!Array.isArray(t)){if(A(t))return!!A(e)&&z(t.getTime(),e.getTime());if(_(t))return!!_(e)&&t.toString()===e.toString();if(j(t)||j(e)||T(t)||T(e)||Array.isArray(e)||A(e)||_(e))return!1;for(i in s=Object.create(null),t)if("$"!==i.charAt(0)&&!O(t[i])){if(!K(t[i],e[i]))return!1;s[i]=!0}for(i in e)if(!(i in s)&&"$"!==i.charAt(0)&&b(e[i])&&!O(e[i]))return!1;return!0}if(!Array.isArray(e))return!1;if((r=t.length)===e.length){for(i=0;i<r;i++)if(!K(t[i],e[i]))return!1;return!0}}return!1}function W(t,e){if("hasOwnProperty"===t)throw f("badname","hasOwnProperty is not a valid {0} name",e)}function G(t){if(null==t)return"";switch(typeof t){case"string":break;case"number":t=`${t}`;break;default:t=!I(t)||Array.isArray(t)||A(t)?X(t):t.toString()}return t}function Q(t,e,n){return t.concat(Array.prototype.slice.call(e,n))}function Y(t,e){return Array.prototype.slice.call(t,e)}function J(t,e){const n=arguments.length>2?Y(arguments,2):[];return!O(e)||e instanceof RegExp?e:n.length?function(){return arguments.length?e.apply(t,Q(n,arguments,0)):e.apply(t,n)}:function(){return arguments.length?e.apply(t,arguments):e.call(t)}}function Z(t,e){let n=e;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?n=void 0:T(e)?n="$WINDOW":e&&window.document===e?n="$DOCUMENT":j(e)&&(n="$SCOPE"),n}function X(t,e){if(!y(t))return x(e)||(e=e?2:null),JSON.stringify(t,Z,e)}function tt(t,e,n){const r=t.getTimezoneOffset(),i=function(t,e){const n=Date.parse(`Jan 01, 1970 00:00:00 ${t}`)/6e4;return D(n)?e:n}(e,r);return function(t,e){const n=new Date(t.getTime());return n.setMinutes(n.getMinutes()+e),n}(t,1*(i-r))}function et(t){const e={};return(t||"").split("&").forEach((t=>{let n,r,i;t&&(r=t=t.replace(/\+/g,"%20"),n=t.indexOf("="),-1!==n&&(r=t.substring(0,n),i=t.substring(n+1)),r=nt(r),b(r)&&(i=!b(i)||nt(i),vt(e,r)?Array.isArray(e[r])?e[r].push(i):e[r]=[e[r],i]:e[r]=i))})),e}function nt(t){try{return decodeURIComponent(t)}catch{return}}function rt(t){return it(t,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function it(t,e){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,e?"%20":"+")}const st=["ng-","data-ng-"];function ot(t,e){if(Array.isArray(t)){e=e||[];for(let n=0,r=t.length;n<r;n++)e[n]=t[n]}else if(w(t)){e=e||{};for(const n in t)n.startsWith("$")&&"$"===n.charAt(1)||(e[n]=t[n])}return e||t}function at(t,e="Assertion failed"){if(!t)throw new Error(e)}function ct(t,e,n){if(!t)throw f("areq","Argument '{0}' is {1}",e||"?",n||"required");return t}function lt(t,e,n){return n&&Array.isArray(t)&&(t=t[t.length-1]),ct(O(t),e,`not a function, got ${t&&"object"==typeof t?t.constructor.name||"Object":typeof t}`),t}const ut={objectMaxDepth:5,urlErrorParamsEnabled:!0};function ht(t){var e;return w(t)&&(b(t.objectMaxDepth)&&(ut.objectMaxDepth=x(e=t.objectMaxDepth)&&e>0?t.objectMaxDepth:NaN),b(t.urlErrorParamsEnabled)&&L(t.urlErrorParamsEnabled)&&(ut.urlErrorParamsEnabled=t.urlErrorParamsEnabled)),ut}function dt(t){return function(...e){const n=e[0],r=e[1];let i=`[${t?`${t}:`:""}${n}] `;const s=Y(e,2).map((t=>function(t){if("function"==typeof t)return t.toString().replace(/ \{[\s\S]*$/,"");if(y(t))return"undefined";if("string"!=typeof t){const e=[];let n=structuredClone(p(t)?t.$target:t);return JSON.stringify(n,((t,n)=>{const r=Z(t,n);if(w(r)){if(e.indexOf(r)>=0)return"...";e.push(r)}return r}))}return t}(t)));return i+=r.replace(/\{\d+\}/g,(t=>{const e=+t.slice(1,-1);return e<s.length?s[e]:t})),new Error(i)}}function pt(t){const e=t&&t.$$hashKey;if(e)return"function"==typeof e?t.$$hashKey():e;const n=typeof t;return"function"===n||"object"===n&&null!==t?(t.$$hashKey=`${n}:${m()}`,t.$$hashKey):"undefined"===n?`${n}:${m()}`:`${n}:${t}`}function ft(t,e){return t||e?t?e?(Array.isArray(t)&&(t=t.join(" ")),Array.isArray(e)&&(e=e.join(" ")),t+" "+e):t:e:""}function $t(t){return t.replace(l,"").replace(u,((t,e,n)=>n?e.toUpperCase():e))}function mt(t){return function(t,e){if(t.nodeType!==Node.ELEMENT_NODE)return!1;const n=t;return"true"===n.dataset[e]||"true"===n.getAttribute(e)}(t,"animate")}function gt(t){return!t||!Object.keys(t).length}function vt(t,e){return Object.prototype.hasOwnProperty.call(t,e)}const yt=new Map;let bt=1;const wt="ng",Et="$scope",Ct=/-([a-z])/g,St=/_([a-z])/g,xt=["multiple","selected","checked","disabled","readonly","required","open"],At=["INPUT","SELECT","OPTION","TEXTAREA","BUTTON","FORM","DETAILS"];function kt(t,e){return e.toUpperCase()}function Ot(t){return t.replace(Ct,kt)}function _t(t){return t.replace(St,kt)}function Tt(t,e){const n=t[wt],r=n&&yt.get(n);r&&(e?delete r.data[e]:r.data={},function(t){const e=t[wt],{data:n}=yt.get(e);n&&Object.keys(n).length||(yt.delete(e),t[wt]=void 0)}(t))}function jt(t,e=!1){let n=t[wt],r=n&&yt.get(n);return e&&!r&&(t[wt]=n=++bt,r={data:{}},yt.set(n,r)),r}function Lt(t){return!/<|&#?\w+;/.test(t)}function Rt(t){switch(t.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.COMMENT_NODE:case void 0:return!0;default:return!1}}function Nt(t,e){t&&(Array.isArray(t)?t.forEach((t=>Nt(t,e))):(!e&&Rt(t)&&Wt([t]),Rt(t)&&Wt(t.querySelectorAll("*"))),delete t[wt],t.innerHTML="")}function Vt(t,e,n){if(Rt(t)){let r;const i=b(n),s=!i&&e&&!w(e),o=!e,a=jt(t,!s),c=a&&a.data;if(i)c[Ot(e)]=n;else{if(o)return c;if(s)return c&&c[Ot(e)];for(r in e)c[Ot(r)]=e[r]}}}function Mt(t,e,n){if(Rt(t)){const r=jt(t,!0);(r&&r.data)[Ot(e)]=n}else t.parentElement&&Mt(t.parentElement,e,n)}function Pt(t,e){if(Rt(t)){const n=jt(t,!1),r=n&&n.data;if(!e)return;return r&&r[Ot(e)]}}function Dt(t){return Pt(t,Et)}function Ut(t,e){return Mt(t,Et,e)}function It(t,e){return Mt(t,"$isolateScope",e)}function Ht(t,e){return Ft(t,`$${e||"ngController"}Controller`)}function Ft(t,e){let n;for(t.nodeType===Node.DOCUMENT_NODE&&(t=t.documentElement);t;){if(b(n=Pt(t,e)))return n;t=t.parentNode||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&t.host}}function qt(t,e=!1){e||Nt(t);const n=t.parentNode;n&&n.removeChild(t)}function Bt(t){let e;if("string"==typeof t){e=(new DOMParser).parseFromString(t,"text/html").body.firstChild.cloneNode(!0)}else{if(!(t instanceof Element||t instanceof Node))throw new Error("Input must be an HTML string or a DOM element.");e=t.cloneNode(!0)}for(;e.firstChild;)e.removeChild(e.firstChild);const n=document.createElement("div");n.appendChild(e);const r=n.innerHTML;try{if(e.nodeType===Node.TEXT_NODE)return r.toLowerCase();if(e.nodeType===Node.COMMENT_NODE)return`\x3c!--${e.data.trim()}--\x3e`;{const t=r.match(/^(<[^>]+>)/);if(t)return t[1].replace(/^<([\w-]+)/,((t,e)=>"<"+e.toLowerCase()))}}catch{return r.toLowerCase()}return r.toLowerCase()}function zt(t){let e=t[0];const n=t[t.length-1];let r;for(let i=1;e!==n&&(e=e.nextSibling);i++)(r||t[i]!==e)&&(r||(r=Array.prototype.slice.call(t,0,i)),r.push(e));return r||t}function Kt(t,e){const n=e.toLowerCase();return!(!xt.includes(n)||!At.includes(t.nodeName))&&n}function Wt(t){for(let e=0,n=t.length;e<n;e++)Tt(t[e])}function Gt(t){return Ft(t,"$injector")}function Qt(t){const e=document.createElement("template");return e.innerHTML=t.trim(),e.content.firstChild}function Yt(t){const e=document.createElement("template");return e.innerHTML=t.trim(),e.content.childNodes}function Jt(t){switch(Nt(t,!0),t.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:t.replaceChildren()}}function Zt(t,e,n){if(n){const t=function(t){const{length:e}=t;for(let n=0;n<e;n++){const e=t[n];if(e.nodeType===Node.ELEMENT_NODE)return e}}(n);!t||t.parentNode||t.previousElementSibling||(n=null)}n?n.after(t):e.prepend(t)}const Xt=Object.freeze({$$AnimateRunner:"$$AnimateRunner",$$animateAsyncRun:"$$animateAsyncRun",$$animateCache:"$$animateCache",$$animateCssDriver:"$$animateCssDriver",$$animateJs:"$$animateJs",$$animateJsDriver:"$$animateJsDriver",$$animateQueue:"$$animateQueue",$$animation:"$$animation",$$rAFScheduler:"$$rAFScheduler",$$taskTrackerFactory:"$$taskTrackerFactory",$anchorScroll:"$anchorScroll",$animate:"$animate",$animateCss:"$animateCss",$aria:"$aria",$browser:"$browser",$controller:"$controller",$eventBus:"$eventBus",$exceptionHandler:"$exceptionHandler",$filter:"$filter",$http:"$http",$httpBackend:"$httpBackend",$httpParamSerializer:"$httpParamSerializer",$interpolate:"$interpolate",$location:"$location",$log:"$log",$ngViewScroll:"$ngViewScroll",$parse:"$parse",$rootScope:"$rootScope",$routerGlobals:"$routerGlobals",$sce:"$sce",$sceDelegate:"$sceDelegate",$state:"$state",$stateRegistry:"$stateRegistry",$templateCache:"$templateCache",$templateFactory:"$templateFactory",$templateRequest:"$templateRequest",$transitions:"$transitions",$urlConfig:"$urlConfig",$urlService:"$urlService",$view:"$view",$provide:"$provide",$injector:"$injector",$compileProvider:"$compileProvider",$animateProvider:"$animateProvider",$filterProvider:"$filterProvider",$controllerProvider:"$controllerProvider"});const te="$injector",ee="$compileProvider";class ne{constructor(t,e,n){at(E(t),"name required"),at(Array.isArray(e),"requires array required"),this.name=t,this.requires=e,this.invokeQueue=[],this.configBlocks=[],this.runBlocks=[],n&&this.config(n)}value(t,e){return this.invokeQueue.push([Xt.$provide,"value",[t,e]]),this}constant(t,e){return this.invokeQueue.unshift([Xt.$provide,"constant",[t,e]]),this}config(t){return this.configBlocks.push([te,"invoke",[t]]),this}run(t){return this.runBlocks.push(t),this}component(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([ee,"component",[t,e]]),this}factory(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([Xt.$provide,"factory",[t,e]]),this}service(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([Xt.$provide,"service",[t,e]]),this}provider(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([Xt.$provide,"provider",[t,e]]),this}decorator(t,e){return e&&O(e)&&(e.$$moduleName=t),this.configBlocks.push([Xt.$provide,"decorator",[t,e]]),this}directive(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([ee,"directive",[t,e]]),this}animation(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push(["$animateProvider","register",[t,e]]),this}filter(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push(["$filterProvider","register",[t,e]]),this}controller(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push(["$controllerProvider","register",[t,e]]),this}}const re=/^([^(]+?)=>/,ie=/^[^(]*\(\s*([^)]*)\)/m,se=/^\s*(_?)(\S+?)\1\s*$/,oe=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,ae=dt(te),ce="Provider",le=!0;class ue{constructor(t){this.cache={},this.strictDi=t,this.path=[],this.modules={}}get(t){if(vt(this.cache,t)){if(this.cache[t]===le)throw ae("cdep","Circular dependency found: {0}",`${t} <- ${this.path.join(" <- ")}`);return this.cache[t]}this.path.unshift(t),this.cache[t]=le;try{this.cache[t]=this.factory(t)}catch(e){throw delete this.cache[t],e}return this.cache[t]}injectionArgs(t,e,n){const r=[],i=function(t,e,n){let r,i,s;if("function"==typeof t){if(!(r=t.$inject)){if(r=[],t.length){if(e)throw ae("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);i=function(t){const e=pe(t).replace(oe,""),n=e.match(re)||e.match(ie);return n}(t),i[1].split(/,/).forEach((function(t){t.replace(se,(function(t,e,n){r.push(n)}))}))}t.$inject=r}}else Array.isArray(t)?(s=t.length-1,lt(t[s],"fn"),r=t.slice(0,s)):lt(t,"fn",!0);return r}(t,this.strictDi,n);for(let t=0,{length:n}=i;t<n;t++){const n=i[t];if("string"!=typeof n)throw ae("itkn","Incorrect injection token! Expected service name as string, got {0}",n);r.push(e&&vt(e,n)?e[n]:this.get(n))}return r}invoke(t,e,n,r){"string"==typeof n&&(r=n,n=null);const i=this.injectionArgs(t,n,r);if(Array.isArray(t)&&(t=t[t.length-1]),/^class\b/.test(pe(t))){i.unshift(null);return new(Function.prototype.bind.apply(t,i))}return t.apply(e,i)}instantiate(t,e,n){const r=Array.isArray(t)?t[t.length-1]:t,i=this.injectionArgs(t,e,n);return i.unshift(null),new(Function.prototype.bind.apply(r,i))}loadNewModules(){}factory(t){console.error(`Unhandled ${t}`)}}class he extends ue{constructor(t,e){super(e),this.cache=t}factory(t){throw this.path.push(t),ae("unpr","Unknown provider: {0}",this.path.join(" <- "))}}class de extends ue{constructor(t,e){super(e),this.providerInjector=t,this.modules=this.providerInjector.modules}factory(t){const e=this.providerInjector.get(t+ce);return this.invoke(e.$get,e,void 0,t)}has(t){const e=vt(this.providerInjector.cache,t+ce),n=vt(this.cache,t);return e||n}}function pe(t){return Function.prototype.toString.call(t)}const fe=/^([^(]+?)=>/,$e=/^[^(]*\(\s*([^)]*)\)/m,me=/,/,ge=/^\s*(_?)(\S+?)\1\s*$/,ve=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,ye=dt(te),be="Provider";function we(t,e=!1){at(Array.isArray(t),"modules required");const n=new Map,r={$provide:{provider:Se(c),factory:Se(l),service:Se((function(t,e){return l(t,[te,t=>t.instantiate(e)])})),value:Se((function(t,e){return r[t+be]={$get:()=>e}})),constant:Se((function(t,e){W(t,"constant"),i.cache[t]=e,s.cache[t]=e})),decorator:function(t,e){const n=i.get(t+be),r=n.$get;n.$get=function(){const t=o.invoke(r,n);return o.invoke(e,null,{$delegate:t})}}}},i=r.$injector=new he(r,e),s=new de(i,e);r.$injectorProvider={$get:()=>s};let o=s;const a=u(t);return o=s.get(te),a.forEach((t=>{t&&o.invoke(t)})),o.loadNewModules=function(t){u(t).forEach((t=>{t&&o.invoke(t)}))},o;function c(t,e){let n;if(W(t,"service"),n=O(e)||Array.isArray(e)?i.instantiate(e):e,!n.$get)throw ye("pget","Provider '{0}' must define $get factory method.",t);return r[t+be]=n,n}function l(t,e){return c(t,{$get:()=>{const n=o.invoke(e,this);if(y(n))throw ye("undef","Provider '{0}' must return a value from $get factory method.",t);return n}})}function u(t){ct(y(t)||Array.isArray(t),"modulesToLoad","not an array");let e=[];return t.forEach((t=>{if(!n.get(t)){n.set(t,!0);try{if(E(t)){const n=window.angular.module(t);o.modules[t]=n,e=e.concat(u(n.requires)).concat(n.runBlocks);n.invokeQueue.concat(n.configBlocks).forEach((t=>{const e=i.get(t[0]);e[t[1]].apply(e,t[2])}))}else O(t)||Array.isArray(t)?e.push(i.invoke(t)):lt(t,"module")}catch(e){throw Array.isArray(t)&&(t=t[t.length-1]),e.message&&e.stack&&-1===e.stack.indexOf(e.message)&&(e.message=`${e.message}\n${e.stack}`),ye("modulerr","Failed to instantiate module {0} due to:\n{1}",t,e.stack||e.message||e)}}})),e}}function Ee(t){const e=function(t){return Function.prototype.toString.call(t)}(t).replace(ve,"");return e.match(fe)||e.match($e)}function Ce(t,e,n){let r,i,s;if("function"==typeof t){if(!(r=t.$inject)){if(r=[],t.length){if(e)throw ye("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);i=Ee(t),i[1].split(me).forEach((function(t){t.replace(ge,(function(t,e,n){r.push(n)}))}))}t.$inject=r}}else Array.isArray(t)?(s=t.length-1,lt(t[s],"fn"),r=t.slice(0,s)):lt(t,"fn",!0);return r}function Se(t){return function(e,n){if(!w(e))return t(e,n);Object.entries(e).forEach((([e,n])=>{t(e,n)}))}}class xe{constructor(t){if(ct(t,"element"),this.initial=null,this._node=null,this._element=void 0,this._nodes=void 0,this.linked=!1,this.isList=!1,E(t)){this.initial=t;let e=Qt(t);switch(!0){case e instanceof Element:this.element=e;break;case e instanceof Node:this.node=e}}else if(t instanceof NodeList)this.initial=Array.from(t).map((t=>t.cloneNode(!0))),1==t.length?this.node=t[0]:(this._nodes=Array.from(t),this.isList=!0);else if(t instanceof Element)this.initial=t.cloneNode(!0),this.element=t;else if(t instanceof Node)this.initial=t.cloneNode(!0),this._node=t;else{if(!(t instanceof Array))throw new Error("Invalid element passed to NodeRef");1==t.length?(this.initial=t[0].cloneNode(!0),this.node=t[0]):(this.initial=Array.from(t).map((t=>t.cloneNode(!0))),this.nodes=t)}}get element(){return ct(this._element,"element"),this._element}set element(t){ct(t instanceof Element,"element"),this._element=t,this._nodes=void 0,this.isList=!1}get node(){return ct(this._node||this._element,"node"),this._node||this._element}set node(t){ct(t instanceof Node,"node"),this._node=t,t.nodeType===Node.ELEMENT_NODE?this._element=t:this._element=void 0}set nodes(t){ct(Array.isArray(t)&&t.every((t=>t instanceof Node)),"nodes"),this._nodes=t,this.isList=!0}get nodes(){return ct(this._nodes,"nodes"),this._nodes}get nodelist(){if(ct(this.isList,"nodes"),0===this._nodes.length)return this._nodes;if(this._nodes[0].parentElement)return this._nodes[0].parentElement.childNodes;{const t=document.createDocumentFragment();return this._nodes.forEach((e=>{t.appendChild(e)})),t.childNodes}}get dom(){return this.isList?this.nodelist:this.node}get size(){return this.isList?this._nodes.length:1}getAny(){return this.isList?this._nodes[0]:this._element||this._node}getAll(){return this.isList?this._nodes:this._element||this._node}collection(){return this.isList?Array.from(this._nodes):[this._element||this._node]}getIndex(t){return this.isList?this._nodes[t]:this.node}setIndex(t,e){ct(null!==t,"index"),ct(e,"node"),this.isList?this._nodes[t]=e:this.node=e}clone(){const t=this.isList?this.nodes.map((t=>t.cloneNode(!0))):this.node.cloneNode(!0);return new xe(t)}isElement(){return void 0!==this._element}}const Ae=dt("$controller"),ke=/^(\S+)(\s+as\s+([\w$]+))?$/;function Oe(t,e){if(E(t)){const e=ke.exec(t);if(e)return e[3]}}class _e{constructor(){this.controllers=new Map}has(t){return this.controllers.has(t)}register(t,e){W(t,"controller"),w(t)?Object.entries(t).forEach((([t,e])=>{this.controllers.set(t,e)})):this.controllers.set(t,e)}$get=["$injector",t=>(e,n,r,i)=>{let s,o,a,c=i&&E(i)?i:null;if(r=!0===r,E(e)){if(o=e.match(ke),!o)throw Ae("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",e);if(a=o[1],c=c||o[3],!(e=this.controllers.get(a)))throw Ae("ctrlreg","The controller with the name '{0}' is not registered.",a);lt(e,a,!0)}if(r){const r=(Array.isArray(e)?e[e.length-1]:e).prototype;return s=Object.create(r||null),c&&(s.$controllerIdentifier=c,this.addIdentifier(n,c,s,a||e.name)),function(){const r=t.invoke(e,s,n,a);return r!==s&&(w(r)||O(r))&&(s=r,c&&(s.$controllerIdentifier=c,this.addIdentifier(n,c,s,a||e.name))),s}.bind(this,{instance:s,identifier:c})}return s=t.instantiate(e,n,a),c&&this.addIdentifier(n,c,s,a||e.name),s}];addIdentifier(t,e,n,r){if(!t||!w(t.$scope))throw dt("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",r,e);t.$scope[e]=n}}const Te=document.createElement("a"),je=Re(window.location.href);let Le;function Re(t){if(!E(t))return t;const e=t;Te.setAttribute("href",e);let{hostname:n}=Te;return!("[::1]"===Te.hostname)&&n.indexOf(":")>-1&&(n=`[${n}]`),{href:Te.href,protocol:Te.protocol?Te.protocol.replace(/:$/,""):"",host:Te.host,search:Te.search?Te.search.replace(/^\?/,""):"",hash:Te.hash?Te.hash.replace(/^#/,""):"",hostname:n,port:Te.port,pathname:"/"===Te.pathname.charAt(0)?Te.pathname:`/${Te.pathname}`}}function Ne(t){return Ve(t,function(){if(document.baseURI)return document.baseURI;Le||(Le=document.createElement("a"),Le.href=".",Le=Le.cloneNode(!1));return Le.href}())}function Ve(t,e){return t=Re(t),e=Re(e),t.protocol===e.protocol&&t.host===e.host}Te.href="http://[::1]";const Me=dt("$sce"),Pe={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"};function De(t){if("self"===t)return t;if(E(t)){if(t.indexOf("***")>-1)throw Me("iwcard","Illegal sequence *** in string matcher. String: {0}",t);return t=(e=t,e.replace(/([-()[\]{}+?*.$^|,:#<!\\])/g,"\\$1")).replace(/\\\*\\\*/g,".*").replace(/\\\*/g,"[^:/.?&;]*"),new RegExp(`^${t}$`)}var e;if(_(t))return new RegExp(`^${t.source}$`);throw Me("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}class Ue{constructor(){this.SCE_CONTEXTS=Pe;let t=["self"],e=[];this.trustedResourceUrlList=function(e){return arguments.length&&(t=e.map((t=>De(t)))),t},this.bannedResourceUrlList=function(t){return arguments.length&&(e=t.map((t=>De(t)))),e},this.$get=["$injector","$$sanitizeUri","$exceptionHandler",function(n,r,i){let s=function(){i(Me("unsafe","Attempting to use an unsafe value in a safe context."))};function o(t,e){return"self"===t?Ve(e,je)||Ne(e):!!t.exec(e.href)}function a(t){const e=function(t){this.$$unwrapTrustedValue=function(){return t}};return t&&(e.prototype=new t),e.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},e.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},e}n.has("$sanitize")&&(s=n.get("$sanitize"));const c=a(),l={};return l[Pe.HTML]=a(c),l[Pe.CSS]=a(c),l[Pe.MEDIA_URL]=a(c),l[Pe.URL]=a(l[Pe.MEDIA_URL]),l[Pe.JS]=a(c),l[Pe.RESOURCE_URL]=a(l[Pe.URL]),{trustAs:function(t,e){const n=vt(l,t)?l[t]:null;if(n){if(null===e||y(e)||""===e)return e;if("string"==typeof e)return new n(e);i(Me("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",t))}else i(Me("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",t,e))},getTrusted:function(n,a){if(null===a||y(a)||""===a)return a;const c=vt(l,n)?l[n]:null;if(c&&a instanceof c)return a.$$unwrapTrustedValue();if(O(a.$$unwrapTrustedValue)&&(a=a.$$unwrapTrustedValue()),n===Pe.MEDIA_URL||n===Pe.URL)return r(a.toString(),n===Pe.MEDIA_URL);if(n===Pe.RESOURCE_URL){if(function(n){const r=Re(n.toString());let i,s,a=!1;for(i=0,s=t.length;i<s;i++)if(o(t[i],r)){a=!0;break}if(a)for(i=0,s=e.length;i<s;i++)if(o(e[i],r)){a=!1;break}return a}(a))return a;throw Me("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",a.toString())}if(n===Pe.HTML)return s();i(Me("unsafe","Attempting to use an unsafe value in a safe context."))},valueOf:function(t){return t instanceof c?t.$$unwrapTrustedValue():t}}}]}}function Ie(){let t=!0;this.enabled=function(e){return arguments.length&&(t=!!e),t},this.$get=["$parse","$sceDelegate",function(e,n){const r=ot(Pe);r.isEnabled=function(){return t},r.trustAs=n.trustAs,r.getTrusted=n.getTrusted,r.valueOf=n.valueOf,t||(r.trustAs=r.getTrusted=function(t,e){return e},r.valueOf=function(t){return t}),r.parseAs=function(t,n){const i=e(n);return i.literal&&i.constant?i:e(n,(e=>r.getTrusted(t,e)))};const i=r.parseAs,{getTrusted:s}=r,{trustAs:o}=r;return Object.entries(Pe).forEach((([t,e])=>{const n=g(t);r[_t(`parse_as_${n}`)]=function(t){return i(e,t)},r[_t(`get_trusted_${n}`)]=function(t){return s(e,t)},r[_t(`trust_as_${n}`)]=function(t){return o(e,t)}})),r}]}const He={};function Fe(t,e,n,r){return{restrict:"A",compile(i,s){const o=t(s[n]);return function(t,n){n.addEventListener(r,(n=>{try{o(t,{$event:n})}catch(t){e(t)}}))}}}}"click copy cut dblclick focus blur keydown keyup keypress load mousedown mouseenter mouseleave mousemove mouseout mouseover mouseup paste submit touchstart touchend touchmove".split(" ").forEach((t=>{const e=$t(`ng-${t}`);He[e]=["$parse","$exceptionHandler",(n,r)=>Fe(n,r,e,t)]}));const qe=dt("$compile"),Be=/^\w/,ze=document.createElement("div");class Ke{static $nonscope=!0;constructor(t,e,n,r,i,s){if(this.$rootScope=t,this.$animate=e,this.$exceptionHandler=n,this.$sce=r,s){const t=Object.keys(s);for(let e=0,n=t.length;e<n;e++){const n=t[e];this[n]=s[n]}}else this.$attr={};this.$nodeRef=i}get $$element(){return this.$nodeRef.node}$normalize=$t;$addClass(t){t&&t.length>0&&(mt(this.$$element)?this.$animate.addClass(this.$$element,t):this.$nodeRef.element.classList.add(t))}$removeClass(t){t&&t.length>0&&(mt(this.$$element)?this.$animate.removeClass(this.$$element,t):this.$nodeRef.element.classList.remove(t))}$updateClass(t,e){const n=We(t,e);n&&n.length&&(mt(this.$$element)?this.$animate.addClass(this.$$element,n):this.$nodeRef.element.classList.add(...n.trim().split(/\s+/)));const r=We(e,t);r&&r.length&&(mt(this.$$element)?this.$animate.removeClass(this.$$element,r):this.$nodeRef.element.classList.remove(...r.trim().split(/\s+/)))}$set(t,e,n,r){const i=Kt(this.$$element,t),s=h[t];let o=t;if(i?(this.$$element[t]=e,r=i):s&&(this[s]=e,o=s),this[t]=e,r?this.$attr[t]=r:(r=this.$attr[t])||(this.$attr[t]=r=V(t,"-")),"img"===this.$nodeRef.node.nodeName.toLowerCase()&&"srcset"===t&&(this[t]=e=this.sanitizeSrcset(e,"$set('srcset', value)")),!1!==n){let t=p(this.$$element)?this.$$element.$target:this.$$element;null===e||y(e)?t.removeAttribute(r):Be.test(r)?i&&!1===e?t.removeAttribute(r):i?t.toggleAttribute(r,e):t.setAttribute(r,e):this.setSpecialAttr(this.$$element,r,e)}const{$$observers:a}=this;a&&a[o]&&a[o].forEach((t=>{try{t(e)}catch(t){this.$exceptionHandler(t)}}))}$observe(t,e){const n=this.$$observers||(this.$$observers=Object.create(null)),r=n[t]||(n[t]=[]);return r.push(e),r.$$inter||!vt(this,t)||y(this[t])||e(this[t]),function(){B(r,e)}}setSpecialAttr(t,e,n){ze.innerHTML=`<span ${e}>`;const{attributes:r}=ze.firstChild,i=r[0];r.removeNamedItem(i.name),i.value=n,t.attributes.setNamedItem(i)}sanitizeSrcset(t,e){let n;if(!t)return t;if(!E(t))throw qe("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',e,t.toString());let r="";const i=N(t),s=/\s/.test(i)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,o=i.split(s),a=Math.floor(o.length/2);for(n=0;n<a;n++){const t=2*n;r+=this.$sce.getTrustedMediaUrl(N(o[t])),r+=" "+N(o[t+1])}const c=N(o[2*n]).split(/\s/);return r+=this.$sce.getTrustedMediaUrl(N(c[0])),2===c.length&&(r+=" "+N(c[1])),r}}function We(t,e){const n=new Set(t.split(/\s+/)),r=new Set(e.split(/\s+/));return Array.from(n).filter((t=>!r.has(t))).join(" ")}function Ge(t,e){return{restrict:"A",compile:()=>(n,r)=>{const i=r;""===e&&(e=t);const s=Ot(e);n[s]||(n[s]=i.getAttribute(t));const o=new MutationObserver((e=>{const r=e[0].target.getAttribute(t);n[s]!==r&&(n[s]=r)}));o.observe(i,{attributes:!0,attributeFilter:[t]}),n.$on("$destroy",(()=>{o.disconnect()}))}}}const Qe=dt("$compile"),Ye=["ngIf","ngRepeat"],Je=["ngSrc","ngSrcset","src","srcset"],Ze=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,Xe=/^(on[a-z]+|formaction)$/,tn="Directive";class en{static $inject=["$provide","$$sanitizeUriProvider"];constructor(t,e){const n={},r=Object.create(null);function i(t,e,n){const i=/^([@&]|[=<]())(\??)\s*([\w$]*)$/,s=Object.create(null);return Object.entries(t).forEach((([t,o])=>{if((o=o.trim())in r)return void(s[t]=r[o]);const a=o.match(i);if(!a)throw Qe("iscp","Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}",e,t,o,n?"controller bindings definition":"isolate scope definition");s[t]={mode:a[1][0],collection:"*"===a[2],optional:"?"===a[3],attrName:a[4]||t},a[4]&&(r[o]=s[t])})),s}function s(t,e){const n={isolateScope:null,bindToController:null};if(w(t.scope)&&(!0===t.bindToController?(n.bindToController=i(t.scope,e,!0),n.isolateScope={}):n.isolateScope=i(t.scope,e,!1)),w(t.bindToController)&&(n.bindToController=i(t.bindToController,e,!0)),n.bindToController&&!t.controller)throw Qe("noctrl","Cannot bind to controller without directive '{0}'s controller.",e);return n}this.directive=function e(r,i){return ct(r,"name"),W(r,"directive"),E(r)?(!function(t){const e=t.charAt(0);if(!e||e!==g(e))throw Qe("baddir","Directive/Component name '{0}' is invalid. The first character must be a lowercase letter",t);if(t!==t.trim())throw Qe("baddir","Directive/Component name '{0}' is invalid. The name should not contain leading or trailing whitespaces",t)}(r),ct(i,"directiveFactory"),vt(n,r)||(n[r]=[],t.factory(r+tn,["$injector","$exceptionHandler",function(t,e){const i=[];return n[r].forEach(((n,s)=>{try{let e=t.invoke(n);const o=t=>()=>t;O(e)?e={compile:o(e)}:!e.compile&&e.link&&(e.compile=o(e.link)),e.priority=e.priority||0,e.index=s,e.name=e.name||r,e.require=function(t){const e=t.require||t.controller&&t.name;return!Array.isArray(e)&&w(e)&&Object.entries(e).forEach((([t,n])=>{const r=n.match(Ze);n.substring(r[0].length)||(e[t]=r[0]+t)})),e}(e),e.restrict=function(t,e){if(t&&(!E(t)||!/[EA]/.test(t)))throw Qe("badrestrict","Restrict property '{0}' of directive '{1}' is invalid",t,e);return t||"EA"}(e.restrict,r),e.$$moduleName=n.$$moduleName,i.push(e)}catch(t){e(t)}})),i}])),n[r].push(i)):Object.entries(r).forEach((([t,n])=>e(t,n))),this},this.component=function(t,e){if(!E(t))return Object.entries(t).forEach((([t,e])=>this.component(t,e))),this;const n=e.controller||function(){};function r(t){function r(e){return O(e)||Array.isArray(e)?function(n,r){return t.invoke(e,this,{$element:n,$attrs:r})}:e}const i=e.template||e.templateUrl?e.template:"",s={controller:n,controllerAs:Oe(e.controller)||e.controllerAs||"$ctrl",template:r(i),templateUrl:r(e.templateUrl),transclude:e.transclude,scope:{},bindToController:e.bindings||{},restrict:"E",require:e.require};return Object.entries(e).forEach((([t,e])=>{"$"===t.charAt(0)&&(s[t]=e)})),s}return Object.entries(e).forEach((([t,e])=>{"$"===t.charAt(0)&&(r[t]=e,O(n)&&(n[t]=e))})),r.$inject=["$injector"],this.directive(t,r)},this.aHrefSanitizationTrustedUrlList=function(t){if(!b(t))return e.aHrefSanitizationTrustedUrlList();e.aHrefSanitizationTrustedUrlList(t)},this.imgSrcSanitizationTrustedUrlList=function(t){if(!b(t))return e.imgSrcSanitizationTrustedUrlList();e.imgSrcSanitizationTrustedUrlList(t)};let o=!1;this.strictComponentBindingsEnabled=function(t){return b(t)?(o=t,this):o};const a=Object.create(null);this.addPropertySecurityContext=function(t,e,n){const r=`${t.toLowerCase()}|${e.toLowerCase()}`;if(r in a&&a[r]!==n)throw Qe("ctxoverride","Property context '{0}.{1}' already set to '{2}', cannot override to '{3}'.",t,e,a[r],n);return a[r]=n,this},function(){function t(t,e){e.forEach((e=>{a[e.toLowerCase()]=t}))}t(Pe.HTML,["iframe|srcdoc","*|innerHTML","*|outerHTML"]),t(Pe.CSS,["*|style"]),t(Pe.URL,["area|href","area|ping","a|href","a|ping","blockquote|cite","body|background","del|cite","input|src","ins|cite","q|cite"]),t(Pe.MEDIA_URL,["audio|src","img|src","img|srcset","source|src","source|srcset","track|src","video|src","video|poster"]),t(Pe.RESOURCE_URL,["*|formAction","applet|code","applet|codebase","base|href","embed|src","frame|src","form|action","head|profile","html|manifest","iframe|src","link|href","media|src","object|codebase","object|data","script|src"])}(),this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$sce","$animate",function(t,e,r,i,c,u,h,d,f){let $;function m(){for(let t=0,e=$.length;t<e;++t)try{$[t]()}catch(t){r(t)}$=void 0}const g=e.startSymbol(),v=e.endSymbol(),C="{{"===g&&"}}"===v?t=>t:t=>t.replace(/\{\{/g,g).replace(/}}/g,v),S=/^ng(Attr|Prop|On|Observe)([A-Z].*)$/;return x;function x(t,e,n,r,i){let s=new xe(t),o=A(s,e,n,r,i),a=null;return function(t,e,n){if(!s)throw Qe("multilink","This element has already been linked.");ct(t,"scope"),s.getAny()&&Ut(s.getAny(),t);i&&i.needsNewScope&&(t=t.$parent.$new());n=n||{};let r,{transcludeControllers:c,parentBoundTranscludeFn:l,futureParentElement:u}=n;l&&l.$$boundTransclude&&(l=l.$$boundTransclude);a||(a=function(t){const e=t;if(!e)return"html";return"foreignobject"!==F(e)&&toString.call(e).match(/SVG/)?"svg":"html"}(u));if("html"!==a){const t=Qt("<div></div>");t.append(s.node);const e=G(a,t.innerHTML);r=new xe(e[0])}else r=e?s.clone():s;if(c)for(const t in c)ct(r.element,"element"),Mt(r.element,`$${t}Controller`,c[t].instance);e&&e(r.dom,t);o&&o(t,r,l);e||(s=o=null);return r.linked=!0,r.getAll()}}function A(t,e,n,i,s){const o=[];let a,c=!1;for(let l=0;l<t.size;l++){const u=new Ke(h,f,r,d),p=T(t.getIndex(l),u,0===l?n:void 0,i);let $,m,g;p.length&&($=V(p,t.getIndex(l),u,e,null,[],[],Object.assign({},s,{index:l,parentNodeRef:t,ctxNodeRef:t})));let v=$?.nodeLinkFn;if(v&&$.terminal||!(g=t.getIndex(l).childNodes)||!g.length)m=null;else{let t=v?($.transcludeOnThisElement||!$.templateOnThisElement)&&$.transclude:e;m=A(new xe(g),t)}(v||m)&&(o.push({index:l,nodeLinkFnCtx:$,childLinkFn:m}),c=!0,a=a||v),s=null}return c?function(n,r,i){ct(r,"nodeRef");let s=[];if(a){const e=r.isList?r.nodes.length:1;s=new Array(e),o.forEach((e=>{let n=e.index;0===n?s[n]=r.isList?r.nodes[n]:r.node:t.getIndex(n)&&(s[n]=r.nodes[n])}))}else r.isList?r.nodes.forEach((t=>s.push(t))):s.push(r.node);o.forEach((({index:t,nodeLinkFnCtx:r,childLinkFn:o})=>{const a=s[t];let c,l;a.stable=!0,r?.nodeLinkFn?(c=r.newScope?n.$new():n,l=r.transcludeOnThisElement?_(n,r.transclude,i):!r.templateOnThisElement&&i?i:!i&&e?_(n,e):null,r?.newScope&&Ut(a,c),r.nodeLinkFn(o,c,a,l)):o&&o(n,new xe(a.childNodes),i)}))}:null}function _(t,e,n){function r(r,i,s,o,a){r||((r=t.$transcluded(a)).$$transcluded=!0);return e(r,i,{parentBoundTranscludeFn:n,transcludeControllers:s,futureParentElement:o})}const i=r.$$slots=Object.create(null);for(const r in e.$$slots)e.$$slots[r]?i[r]=_(t,e.$$slots[r],n):i[r]=null;return r}function T(t,n,i,s){const o=[],{nodeType:a}=t,u=n.$attr;let h;switch(a){case Node.ELEMENT_NODE:h=t.nodeName.toLowerCase(),s!==$t(h)&&I(o,$t(h),"E",i);for(let e=0;e<t.attributes?.length;e++){let a=!1,h=!1,d=!1,p=!1,f=t.attributes[e],$=f.name,m=f.value,g=$t($.toLowerCase());const v=g.match(S);v&&(a="Attr"===v[1],h="Prop"===v[1],d="On"===v[1],p="Observe"===v[1],$=$.replace(l,"").toLowerCase().substring(4+v[1].length).replace(/_(.)/g,((t,e)=>e.toUpperCase()))),h||d?(n[g]=m,u[g]=f.name,h?Q(t,o,g,$):o.push(Fe(c,r,g,$))):p?o.push(Ge($,m)):(g=$t($.toLowerCase()),u[g]=$,!a&&vt(n,g)||(n[g]=m,Kt(t,g)&&(n[g]=!0)),Y(t,o,m,g,a),g!==s&&I(o,g,"A",i))}"input"===h&&"hidden"===t.getAttribute("type")&&t.setAttribute("autocomplete","off");break;case Node.TEXT_NODE:!function(t,n){const r=e(n,!0);r&&t.push({priority:0,compile:()=>(t,e)=>{r.expressions.forEach((n=>{t.$watch(n,(()=>{const n=r(p(t)?t.$target:t);if(1===e.nodeType)e.innerHTML=n;else e.nodeValue=n}))}))}})}(o,t.nodeValue)}return o.sort(B),o}function R(t,e,n,r,i,s){let o;return t?x(e,n,r,i,s):function(){o||(o=x(e,n,r,i,s),e=n=s=null);return o.apply(this,arguments)}}function V(t,e,n,i,s,o,a,c){c=c||{};let l=-Number.MAX_VALUE,p=!1,{newScopeDirective:$,controllerDirectives:m,newIsolateScopeDirective:g,templateDirective:v,nonTlbTranscludeDirective:b,hasElementTranscludeDirective:S,ctxNodeRef:x,parentNodeRef:A}=c,k=!1,_=!1,L=new xe(e);const V=c.index;let U,I,B;n.$nodeRef=L;let z,K=s,Q=i,Y=!1,tt=!1,nt=function(t,i,s,c){let l,p,v,b,E,C,x,A,k,_=i;e===s?(A=n,x=n.$nodeRef):(x=new xe(s),A=new Ke(h,f,r,d,x,n)),b=i,g?v=i.$newIsolate():$&&(b=i.$parent),c&&(C=function(t,e,n,r){let i;j(t)||(r=n,n=e,e=t,t=void 0);S&&(i=E);n||(n=S?x.node.parentElement:x.node);if(!r){return c(t,e,i,n,_)}{const s=c.$$slots[r];if(s){return s(t,e,i,n,_)}if(y(s))throw Qe("noslot",'No parent directive that requires a transclusion with slot name "{0}". Element: {1}',r,Bt(x.element))}},C.$$boundTransclude=c,C.isSlotFilled=function(t){return!!c.$$slots[t]}),m&&(E=function(t,e,n,r,i,s,o){const a=Object.create(null);for(const c in r){const l=r[c],h={$scope:l===o||l.$$isolateScope?i:s,$element:t.node,$attrs:e,$transclude:n};let{controller:d}=l;"@"===d&&(d=e[l.name]);const p=u(d,h,!0,l.controllerAs);a[l.name]=p,t.isElement()&&Mt(t.element,`$${l.name}Controller`,p.instance)}return a}(x,A,C,m,v,i,g)),g&&(v.$target.$$isolateBindings=g.$$isolateBindings,k=et(i,A,v,v.$$isolateBindings,g),k.removeWatches&&v.$on("$destroy",k.removeWatches));for(const t in E){const e=m[t],n=E[t],r=e.$$bindings.bindToController,i=n();n.instance=b.$new(i),Mt(x.node,`$${e.name}Controller`,n.instance),n.bindingInfo=et(b,A,n.instance,r,e)}for(m&&Object.entries(m).forEach((([t,e])=>{const{require:n}=e;e.bindToController&&!Array.isArray(n)&&w(n)&&M(E[t].instance,P(t,n,x.element,E))})),E&&Object.values(E).forEach((t=>{const e=t.instance;if(O(e.$onChanges))try{e.$onChanges(t.bindingInfo.initialChanges)}catch(t){r(t)}if(O(e.$onInit))try{e.$target.$onInit()}catch(t){r(t)}O(e.$onDestroy)&&b.$on("$destroy",(()=>{e.$onDestroy()}))})),l=0,p=o.length;l<p;l++){let t=o[l];const e=t.require&&P(t.directiveName,t.require,x.element,E);try{t(t.isolateScope?v:i,x.node,A,e,C)}catch(t){r(t,Bt(x.getAny()))}}for(g&&(g.template||null===g.templateUrl)&&(_=v),t&&s&&s.childNodes&&s.childNodes.length&&t(_,new xe(s.childNodes),c),l=a.length-1;l>=0;l--){let t=a[l];const e=t.require&&P(t.directiveName,t.require,x.node,E);try{t.isolateScope&&It(x.element,v),t(t.isolateScope?v:i,x.node,A,e,C)}catch(t){r(t,Bt(x.getAny()))}}E&&Object.values(E).forEach((t=>{const e=t.instance;O(e.$postLink)&&e.$postLink()}))};for(let s=0,u=t.length;s<u&&(U=t[s],B=void 0,!(l>U.priority));s++){z=U.scope,z&&(U.templateUrl||(w(z)?(W("new/isolated scope",g||$,U,L),g=U):W("new/isolated scope",g,U,L)),$=$||U),I=U.name;const h=U.replace&&(U.templateUrl||U.template),d=U.transclude&&!Ye.includes(U.name);if(!Y&&(h||d)){let e;for(let n=s+1;e=t[n++];)if(e.transclude&&!Ye.includes(e.name)||e.replace&&(e.templateUrl||e.template)){tt=!0;break}Y=!0}if(!U.templateUrl&&U.controller&&(m=m||Object.create(null),W(`'${I}' controller`,m[I],U,L),m[I]=U),z=U.transclude,z)if(k=!0,Ye.includes(U.name)||(W("transclusion",b,U,L),b=U),"element"===z)S=!0,l=U.priority,B=L,L=new xe(document.createComment("")),n.$nodeRef=L,e=L.node,x.node=e,Z(new xe(B.getAny()),e,V),Q=R(tt,B.getAny(),i,l,K&&K.name,{nonTlbTranscludeDirective:b});else{const t=Object.create(null);if(w(z)){B=document.createDocumentFragment();const e=Object.create(null),n=Object.create(null);Object.entries(z).forEach((([r,i])=>{const s="?"===i.charAt(0);i=s?i.substring(1):i,e[i]=r,t[r]=null,n[r]=s})),L.element.childNodes.forEach((r=>{const i=e[$t(F(r))];i?(n[i]=!0,t[i]=t[i]||document.createDocumentFragment(),t[i].appendChild(r)):B.appendChild(r)})),Object.entries(n).forEach((([t,e])=>{if(!e)throw Qe("reqslot","Required transclusion slot `{0}` was not filled.",t)}));for(const e in t)if(t[e]){const n=t[e].childNodes;t[e]=R(tt,n,i)}B=B.childNodes}else B=e.cloneNode(!0).childNodes;Jt(e),Q=R(tt,B,i,void 0,void 0,{needsNewScope:U.$$isolateScope||U.$$newScope}),Q.$$slots=t}if(U.template)if(_=!0,W("template",v,U,L),v=U,z=O(U.template)?U.template(L.node,n):U.template,z=C(z),U.replace){if(K=U,B=Lt(z)?[]:nn(G(U.templateNamespace,N(z))),E(B)&&(B=Array.from(Yt(B)).filter((t=>t.nodeType===Node.ELEMENT_NODE))),e=B[0],1!==B.length||e.nodeType!==Node.ELEMENT_NODE)throw Qe("tplrt","Template for directive '{0}' must have exactly one root element. {1}",I,"");Z(L,e),A&&A.setIndex(V,e);const r={$attr:{}},i=T(e,r),o=t.splice(s+1,t.length-(s+1));(g||$)&&D(i,g,$),t=t.concat(i).concat(o),H(n,r),u=t.length}else L.isElement()&&(L.element.innerHTML=z);if(U.templateUrl)_=!0,W("template",v,U,L),v=U,U.replace&&(K=U),nt=q(t.splice(s,t.length-s),L,n,e,k&&Q,o,a,{index:V,controllerDirectives:m,newScopeDirective:$!==U&&$,newIsolateScopeDirective:g,templateDirective:v,nonTlbTranscludeDirective:b,futureParentElement:c.futureParentElement}),u=t.length;else if(U.compile)try{const t=U.compile(L.getAny(),n,Q),e=U.$$originalDirective||U;O(t)?rt(null,J(e,t)):t&&rt(J(e,t.pre),J(e,t.post))}catch(t){r(t,Bt(L.getAny()))}U.terminal&&(p=!0,l=Math.max(l,U.priority))}return c.hasElementTranscludeDirective=S,{nodeLinkFn:nt,terminal:p,transclude:Q,transcludeOnThisElement:k,templateOnThisElement:_,newScope:$&&!0===$.scope};function rt(t,e){t&&(t.require=U.require,t.directiveName=I,(g===U||U.$$isolateScope)&&(t=X(t,{isolateScope:!0})),o.push(t)),e&&(e.require=U.require,e.directiveName=I,(g===U||U.$$isolateScope)&&(e=X(e,{isolateScope:!0})),a.push(e))}}function P(t,e,n,r){let i;if(E(e)){const s=e.match(Ze),o=e.substring(s[0].length),a=s[1]||s[3],c="?"===s[2];if("^^"===a?n=n.parentElement?n.parentElement:void 0:(i=r&&r[o],i=i&&i.instance),!i){const t=`$${o}Controller`;i="^^"===a&&n&&n.nodeType===Node.DOCUMENT_NODE?null:n?a?Ft(n,t):Pt(n,t):void 0}if(!i&&!c)throw Qe("ctreq","Controller '{0}', required by directive '{1}', can't be found!",o,t)}else if(Array.isArray(e)){i=[];for(let s=0,o=e.length;s<o;s++)i[s]=P(t,e[s],n,r)}else w(e)&&(i={},Object.entries(e).forEach((([e,s])=>{i[e]=P(t,s,n,r)})));return i||null}function D(t,e,n){for(let r=0,i=t.length;r<i;r++)t[r]=U(t[r],{$$isolateScope:e,$$newScope:n})}function I(e,r,i,o){let a=!1;if(vt(n,r))for(let n,c=t.get(r+tn),l=0,u=c.length;l<u;l++)if(n=c[l],(y(o)||o>n.priority)&&-1!==n.restrict.indexOf(i)){if(!n.$$bindings){const t=n.$$bindings=s(n,n.name);w(t.isolateScope)&&(n.$$isolateBindings=t.isolateScope)}e.push(n),a=n}return a}function H(t,e){const n=e.$attr,r=t.$attr;Object.entries(t).forEach((([r,i])=>{"$"!==r.charAt(0)&&(e[r]&&e[r]!==i&&(i.length?i+=("style"===r?";":" ")+e[r]:i=e[r]),t.$set(r,i,!0,n[r]))})),Object.entries(e).forEach((([e,i])=>{vt(t,e)||"$"===e.charAt(0)||(t[e]=i,"class"!==e&&"style"!==e&&(r[e]=n[e]))}))}function q(t,e,n,s,o,a,c,l){let u,h,d,p=[];const f=e.getAny(),$=t.shift(),m=U($,{templateUrl:null,transclude:null,replace:null,$$originalDirective:$}),g=O($.templateUrl)?$.templateUrl(e.element,n):$.templateUrl,{templateNamespace:v}=$;return Jt(e.element),i(g).then((r=>{let i,y,b,S;if(r=C(r),$.replace){if(b=Lt(r)?[]:E(r)?Array.from(Yt(r)).filter((t=>t.nodeType!==Node.COMMENT_NODE&&t.nodeType!==Node.TEXT_NODE)):nn(G(v,N(r))),i=b[0],1!==b.length||i.nodeType!==Node.ELEMENT_NODE)throw Qe("tplrt","Template for directive '{0}' must have exactly one root element. {1}",$.name,g);y={$attr:{}},Z(e,i,l.index);const s=T(i,y);w($.scope)&&D(s,!0),t=s.concat(t),H(n,y)}else i=f,e.element.innerHTML=r;for(t.unshift(m),d=V(t,i,n,o,$,a,c,{...l,ctxNodeRef:e}),u=d?.nodeLinkFn,s&&Object.entries(s).forEach((([t,n])=>{n===i&&(s[t]=e)})),h=A(new xe(e.getAny().childNodes),o);p.length;){const t=p.shift(),n=p.shift(),r=p.shift();let s=e.getAny();if(!t.$$destroyed){if(n!==f){const t=n.className;l.hasElementTranscludeDirective&&$.replace||(s=i.cloneNode(!0),n.appendChild(s));try{""!==t&&e.element.classList.forEach((t=>n.classList.add(t)))}catch{}}S=d.transcludeOnThisElement?_(t,d.transclude,r):r,u(h,t,s,S)}}p=null})).catch((t=>{k(t)?r(t):r(new Error(t))})),function(t,e,n,r,i){let s=i;e.$$destroyed||(p?p.push(e,n,r):(u.transcludeOnThisElement&&(s=_(e,u.transclude,i)),u(h,e,n,r,s)))}}function B(t,e){const n=e.priority-t.priority;return 0!==n?n:t.name!==e.name?t.name<e.name?-1:1:t.index-e.index}function W(t,e,n,r){function i(t){return t?` (module: ${t})`:""}if(e)throw Qe("multidir","Multiple directives [{0}{1}, {2}{3}] asking for {4} on: {5}",e.name,i(e.$$moduleName),n.name,i(n.$$moduleName),t,Bt(r.getAny()))}function G(t,e){switch(t=(t||"html").toLowerCase()){case"svg":case"math":{const n=document.createElement("div");return n.innerHTML=`<${t}>${e}</${t}>`,n.childNodes[0].childNodes}default:return e}}function Q(t,e,n,r){if(Xe.test(r))throw Qe("nodomevents","Property bindings for HTML DOM event properties are disallowed");const i=F(t),s=function(t,e){const n=e.toLowerCase();return a[`${t}|${n}`]||a[`*|${n}`]}(i,r);let o=t=>t;"srcset"!==r||"img"!==i&&"source"!==i?s&&(o=d.getTrusted.bind(d,s)):o=t=>function(t,e){if(!t)return t;if(!E(t))throw Qe("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',e,t.toString());let n="";const r=N(t),i=/\s/.test(r)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,s=r.split(i),o=Math.floor(s.length/2);let a;for(a=0;a<o;a++){const t=2*a;n+=d.getTrustedMediaUrl(N(s[t])),n+=" "+N(s[t+1])}const c=N(s[2*a]).split(/\s/);return n+=d.getTrustedMediaUrl(N(c[0])),2===c.length&&(n+=" "+N(c[1])),n}(d.valueOf(t),"ng-prop-srcset"),e.push({priority:100,compile:function(t,e){const i=c(e[n]);return{pre:function(t,s){function a(){const e=i(t);s[r]=o(e)}a(),t.$watch(r,a),t.$watch(e[n],(t=>{d.valueOf(t),a()}))}}}})}function Y(t,n,r,i,s){const o=F(t),a=function(t,e){return"srcdoc"===e?d.HTML:"src"===e||"ngSrc"===e?-1===["img","video","audio","source","track"].indexOf(t)?d.RESOURCE_URL:d.MEDIA_URL:"xlinkHref"===e?"image"===t?d.MEDIA_URL:"a"===t?d.URL:d.RESOURCE_URL:"form"===t&&"action"===e||"base"===t&&"href"===e||"link"===t&&"href"===e?d.RESOURCE_URL:"a"!==t||"href"!==e&&"ngHref"!==e?void 0:d.URL}(o,i),c=!s,l=Je.includes(i)||s;let u=e(r,c,a,l);if(u){if("multiple"===i&&"select"===o)throw Qe("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",Bt(t.outerHTML));if(Xe.test(i))throw Qe("nodomevents","Interpolations for HTML DOM event attributes are disallowed");n.push({priority:100,compile:()=>({pre:function(t,n,s){const o=s.$$observers||(s.$$observers=Object.create(null)),c=s[i];c!==r&&(u=c&&e(c,!0,a,l),r=c),u&&(s[i]=u(t),(o[i]||(o[i]=[])).$$inter=!0,u.expressions.forEach((e=>{(s.$$observers&&s.$$observers[i].$$scope||t).$watch(e,(()=>{let e=u(t);"class"===i?s.$updateClass(e,s.$$element.classList.value):s.$set(i,e)}))})),0==u.expressions.length&&s.$set(i,c))}})})}}function Z(t,e,n){const r=t.getAny().parentNode;if(r)if(b(n)){const t=r.childNodes[n];t&&r.replaceChild(e,t)}else r.insertBefore(e,r.firstChild);const i=document.createDocumentFragment();t.collection().forEach((t=>{i.appendChild(t)})),t.node=e}function X(t,e){return M((function(){return t.apply(null,arguments)}),t,e)}function tt(t,e){if(o)throw Qe("missingattr","Attribute '{0}' of '{1}' is non-optional and must be set!",t,e)}function et(t,n,r,i,s){const o=[],a={};let l;function u(e,n,i){O(r.$onChanges)&&($||(t.$postUpdate(m),$=[]),l||(l={},$.push(h)),l[e]={currentValue:n,firstChange:i})}function h(){r.$onChanges&&l&&r.$onChanges(l),l=void 0}return i&&Object.entries(i).forEach((([i,l])=>{const{attrName:d,optional:p,mode:f}=l;let $,m,g,v,C,S=!0,x=!0;switch(f){case"@":p||vt(n,d)||(tt(d,s.name),r[i]=n[d]=void 0),C=n.$observe(d,(t=>{(E(t)||L(t))&&(u(i,t,x),r[i]=t,S?S=!1:(h(),x=!1))})),n.$$observers[d].$$scope=t,$=n[d],E($)?r[i]=e($)(t):L($)&&(r[i]=$),a[i]={currentValue:r[i],firstChange:!0},o.push(C);break;case"=":{if(!vt(n,d)){if(p)break;tt(d,s.name),n[d]=void 0}if(p&&!n[d])break;m=c(n[d]),v=m.literal?K:z,g=m.assign||function(){throw $=r.$target[i]=m(t),Qe("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",n[d],d,s.name)},$=r.$target[i]=m(t.$target);const e=function(e){return v(e,r[i])||(v(e,$)?g(t,e=r[i]):r[i]=e),$=e,$};if(e.$stateful=!0,l.collection)C=t.$watch(n[d],e);else{if(n[d]){let r=n[d];t.$watch(r,(r=>{const i=c(n[d],e);r?(m.literal?t.$target[d]=r:t[d]=r,i(t)):t[d]=t[n[d]]}),!0)}C=r.$watch(d,(e=>{if(e!==$||y(n[d])){if(m.inputs&&!m.literal||y(n[d])&&b(e))throw r.$target[d]=$,Qe("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",n[d],d,s.name);w(e)?Object.entries(e).forEach((([e,n])=>{t.$target[e]=n})):(g(t.$target,$=e),t.$handler.watchers.get(n[d])?.forEach((t=>{t.listenerFn(e)})))}}),!0)}o.push(C);break}case"<":if(!vt(n,d)){if(p)break;tt(d,s.name),n[d]=void 0}if(p&&!n[d])break;m=c(n[d]),r.$target[i]=m(t.$target),a[i]={currentValue:r.$target[i],firstChange:x},t.$target.attrs=n,n[d]&&(C=t.$watch(n[d],(t=>{r.$target[i]=t,u(i,t,x),x&&(x=!1)}),!0),o.push(C));break;case"&":if(p||vt(n,d)||tt(d,s.name),m=vt(n,d)?c(n[d]):()=>{},m.toString()===(()=>{}).toString()&&p)break;r.$target[i]=function(e){return m(t.$target,e)}}})),{initialChanges:a,removeWatches:o.length&&function(){for(let t=0,e=o.length;t<e;++t)o[t]()}}}}]}}function nn(t){let e=t.length;if(e<=1)return t;for(;e--;){const n=t[e];(n.nodeType===Node.COMMENT_NODE||n.nodeType===Node.TEXT_NODE&&""===n.nodeValue.trim())&&[].splice.call(t,e,1)}return t}const rn={$nonscope:!0,$addControl:()=>{},$getControls:()=>[],$$renameControl:(t,e)=>{t.$name=e},$removeControl:()=>{},$setValidity:()=>{},$setDirty:()=>{},$setPristine:()=>{},$setSubmitted:()=>{},$$setSubmitted:()=>{}},sn="ng-pending",on="ng-submitted";class an{static $nonscope=!0;static $inject=["$element","$attrs","$scope","$animate","$interpolate"];constructor(t,r,i,s,o){this.$$controls=[],this.$name=o(r.name||r.ngForm||"")(i),this.$dirty=!1,this.$pristine=!0,this.$valid=!0,this.$invalid=!1,this.$submitted=!1,this.$$parentForm=rn,this.$$element=t,this.$$animate=s,this.$error={},this.$$success={},this.$pending=void 0,this.$$classCache={};const a=this.$$element.classList.contains(e);this.$$classCache[e]=a,this.$$classCache[n]=!a}$rollbackViewValue(){this.$$controls.forEach((t=>{t.$rollbackViewValue()}))}$commitViewValue(){this.$$controls.forEach((t=>{t.$commitViewValue()}))}$addControl(t){W(t.$name,"input"),this.$$controls.push(t),t.$name&&(this[t.$name]=t),t.$target.$$parentForm=this}$getControls(){return ot(this.$$controls)}$$renameControl(t,e){const n=t.$name;this[n]===t&&delete this[n],this[e]=t,t.$name=e}$removeControl(t){t.$name&&this[t.$name]===t&&delete this[t.$name],this.$pending&&Object.keys(this.$pending).forEach((e=>{this.$setValidity(e,null,t)})),this.$error&&Object.keys(this.$error).forEach((e=>{this.$setValidity(e,null,t)})),this.$$success&&Object.keys(this.$$success).forEach((e=>{this.$setValidity(e,null,t)})),B(this.$$controls,t),t.$target.$$parentForm=rn}$setDirty(){this.$$animate.removeClass(this.$$element,r),this.$$animate.addClass(this.$$element,i),this.$dirty=!0,this.$pristine=!1,this.$$parentForm.$setDirty()}$setPristine(){this.$$animate.setClass(this.$$element,r,`${i} ${on}`),this.$dirty=!1,this.$pristine=!0,this.$submitted=!1,this.$$controls.forEach((t=>{t.$setPristine()}))}$setUntouched(){this.$$controls.forEach((t=>{t.$setUntouched()}))}$setSubmitted(){let t=this;for(;t.$$parentForm&&t.$$parentForm!==rn;)t=t.$$parentForm;t.$$setSubmitted()}$$setSubmitted(){this.$$animate.addClass(this.$$element,on),this.$submitted=!0,this.$$controls.forEach((t=>{t.$$setSubmitted&&t.$$setSubmitted()}))}set(t,e,n){const r=t[e];if(r){-1===r.indexOf(n)&&r.push(n)}else p(t)&&(t=t.$target),t[e]=[n]}unset(t,e,n){const r=t[e];if(!r)return;-1===B(r,n)&&B(r,n.$target),0===r.length&&delete t[e]}$setValidity(t,r,i){let s,o=this;function a(t,e,n){n&&!t.$$classCache[e]?(t.$$animate.addClass(t.$$element,e),t.$$classCache[e]=!0):!n&&t.$$classCache[e]&&(t.$$animate.removeClass(t.$$element,e),t.$$classCache[e]=!1)}function c(t,r,i){r=r?`-${V(r,"-")}`:"",a(t,e+r,!0===i),a(t,n+r,!1===i)}y(r)?function(t,e,n,r){t[e]||(t[e]={});o.set(t[e],n,r)}(this,"$pending",t,i):function(t,e,n,r){t[e]&&o.unset(t[e],n,r);gt(t[e])&&(t[e]=void 0)}(this,"$pending",t,i),L(r)?r?(this.unset(this.$error,t,i),this.set(this.$$success,t,i)):(this.set(this.$error,t,i),this.unset(this.$$success,t,i)):(this.unset(this.$error,t,i),this.unset(this.$$success,t,i)),this.$pending?(a(this,sn,!0),this.$valid=this.$invalid=void 0,c(this,"",null)):(a(this,sn,!1),this.$valid=gt(this.$error),this.$invalid=!this.$valid,c(this,"",this.$valid)),s=this.$pending&&this.$pending[t]?void 0:!this.$error[t]&&(!!this.$$success[t]||null),c(this,t,s),this.$$parentForm.$setValidity(t,s,this)}}const cn=function(t){return["$parse",function(n){return{name:"form",restrict:t?"EA":"E",require:["form","^^?form"],controller:an,compile:function(i,s){i.classList.add(r,e);const o=s.name?"name":!(!t||!s.ngForm)&&"ngForm";return{pre:function(t,e,r,i){const s=i[0];if(!("action"in r)){const t=function(t){s.$commitViewValue(),s.$setSubmitted(),t.preventDefault()};e.addEventListener("submit",t),e.addEventListener("$destroy",(()=>{setTimeout((()=>{e.removeEventListener("submit",t)}),0,!1)}))}(i[1]||s.$$parentForm).$addControl(s);let a=o?function(t){if(""===t)return n('this[""]').assign;return n(t).assign||(()=>{})}(s.$name):()=>{};o&&(a(t,s),r.$observe(o,(e=>{s.$name!==e&&(t.$target[s.$name]=void 0,s.$$parentForm.$$renameControl(s,e),t.$target!==s.$$parentForm&&s.$$parentForm!==rn||(t.$target[e]=s))}))),e.addEventListener("$destroy",(()=>{s.$target.$$parentForm.$removeControl(s),a(t,void 0),M(s,rn)}))}}}}}]},ln=cn(),un=cn("ngForm"),hn=/(\s+|^)default(\s+|$)/;class dn{static $nonscope=!0;static $inject=["$attrs","$scope"];constructor(t,e){this.$$attrs=t,this.$$scope=e,this.parentCtrl}$onInit(){const t=this.parentCtrl?this.parentCtrl.$options:fn,e=this.$$scope.$eval(this.$$attrs.ngModelOptions);this.$options=t.createChild(e)}}class pn{static $nonscope=!0;constructor(t){this.$$options=t}getOption(t){return this.$$options[t]}createChild(t){let e=!1;return t=Object.assign({},t),Object.entries(t).forEach((([n,r])=>{"$inherit"===r?"*"===n?e=!0:(t[n]=this.$$options[n],"updateOn"===n&&(t.updateOnDefault=this.$$options.updateOnDefault)):"updateOn"===n&&(t.updateOnDefault=!1,t[n]=N(r.replace(hn,(()=>(t.updateOnDefault=!0," ")))))}),this),e&&(delete t["*"],mn(t,this.$$options)),mn(t,fn.$$options),new pn(t)}}const fn=new pn({updateOn:"",updateOnDefault:!0,debounce:0,getterSetter:!1,allowInvalid:!1}),$n=function(){return{restrict:"A",priority:10,require:{parentCtrl:"?^^ngModelOptions"},bindToController:!0,controller:dn}};function mn(t,e){Object.keys(e).forEach((n=>{b(t[n])||(t[n]=e[n])}))}const gn=dt("ngModel");class vn{static $nonscope=!0;static $inject=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$interpolate"];constructor(t,r,i,s,o,a,c){this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$$rawModelValue=void 0,this.$validators={},this.$asyncValidators={},this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$untouched=!0,this.$touched=!1,this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$error={},this.$$success={},this.$pending=void 0,this.$name=c(i.name||"",!1)(t),this.$$parentForm=rn,this.$options=fn,this.$$updateEvents="",this.$$updateEventHandler=this.$$updateEventHandler.bind(this),this.$$parsedNgModel=o(i.ngModel),this.$$parsedNgModelAssign=this.$$parsedNgModel.assign,this.$$ngModelGet=this.$$parsedNgModel,this.$$ngModelSet=this.$$parsedNgModelAssign,this.$$pendingDebounce=null,this.$$parserValid=void 0,this.$$parserName="parse",this.$$currentValidationRunId=0,this.$$scope=t,this.$$attr=i,this.$$element=s,this.$$animate=a,this.$$parse=o,this.$$exceptionHandler=r,this.$$hasNativeValidators=!1,this.$$classCache={};const l=this.$$element.classList.contains(e);var u;this.$$classCache[e]=l,this.$$classCache[n]=!l,this.$$eventRemovers=new Set,(u=this).$$scope.$watch("value",(()=>{const t=u.$$ngModelGet(u.$$scope);t===u.$modelValue||u.$modelValue!=u.$modelValue&&t!=t||u.$$setModelValue(t)}))}set(t,e){t[e]=!0}unset(t,e){delete t[e]}$setValidity(t,r){let i,s=this;function o(t,e,n){n&&!t.$$classCache[e]?(mt(t.$$element)?t.$$animate.addClass(t.$$element,e):t.$$element.classList.add(e),t.$$classCache[e]=!0):!n&&t.$$classCache[e]&&(mt(t.$$element)?t.$$animate.removeClass(t.$$element,e):t.$$element.classList.remove(e),t.$$classCache[e]=!1)}function a(t,r,i){r=r?`-${V(r,"-")}`:"",o(t,e+r,!0===i),o(t,n+r,!1===i)}y(r)?function(t,e,n){t[e]||(t[e]={}),s.set(t[e],n)}(this,"$pending",t):function(t,e,n){t[e]&&s.unset(t[e],n),gt(t[e])&&(t[e]=void 0)}(this,"$pending",t),L(r)?r?(delete this.$error[t],this.set(this.$$success,t)):(this.set(this.$error,t),delete this.$$success[t]):(delete this.$error[t],delete this.$$success[t]),this.$pending?(o(this,sn,!0),this.$valid=this.$invalid=void 0,a(this,"",null)):(o(this,sn,!1),this.$valid=gt(this.$error),this.$invalid=!this.$valid,a(this,"",this.$valid)),i=this.$pending&&this.$pending[t]?void 0:!this.$error[t]&&(!!this.$$success[t]||null),a(this,t,i),this.$$parentForm.$setValidity(t,i,this)}$$initGetterSetters(){if(this.$options.getOption("getterSetter")){const t=this.$$parse(`${this.$$attr.ngModel}()`),e=this.$$parse(`${this.$$attr.ngModel}($$$p)`);this.$$ngModelGet=e=>{let n=this.$$parsedNgModel(e);return O(n)&&(n=t(e)),n},this.$$ngModelSet=(t,n)=>{O(this.$$parsedNgModel(t))?e(t,{$$$p:n}):this.$$parsedNgModelAssign(t,n)}}else if(!this.$$parsedNgModel.assign)throw gn("nonassign","Expression '{0}' is non-assignable. Element: {1}",this.$$attr.ngModel,Bt(this.$$element))}$render(){}$isEmpty(t){return y(t)||""===t||null===t||t!=t}$$updateEmptyClasses(t){this.$isEmpty(t)?mt(this.$$element)?(this.$$animate.removeClass(this.$$element,c),this.$$animate.addClass(this.$$element,a)):(this.$$element.classList.remove(c),this.$$element.classList.add(a)):mt(this.$$element)?(this.$$animate.removeClass(this.$$element,a),this.$$animate.addClass(this.$$element,c)):(this.$$element.classList.remove(a),this.$$element.classList.add(c))}$setPristine(){this.$dirty=!1,this.$pristine=!0,this.$$element&&(mt(this.$$element)?(this.$$animate.removeClass(this.$$element,a),this.$$animate.addClass(this.$$element,r)):(this.$$element.classList.remove(a),this.$$element.classList.add(r)))}$setDirty(){this.$dirty=!0,this.$pristine=!1,mt(this.$$element)?(this.$$animate.removeClass(this.$$element,r),this.$$animate.addClass(this.$$element,i)):(this.$$element.classList.remove(r),this.$$element.classList.add(i)),this.$$parentForm.$setDirty()}$setUntouched(){this.$touched=!1,this.$untouched=!0,mt(this.$$element)?this.$$animate.setClass(this.$$element,s,o):(this.$$element.classList.remove(o),this.$$element.classList.add(s))}$setTouched(){this.$touched=!0,this.$untouched=!1,mt(this.$$element)?this.$$animate.setClass(this.$$element,o,s):(this.$$element.classList.remove(s),this.$$element.classList.add(o))}$rollbackViewValue(){clearTimeout(this.$$pendingDebounce),this.$viewValue=this.$$lastCommittedViewValue,this.$render()}$validate(){if(D(this.$modelValue))return;const t=this.$$lastCommittedViewValue,e=this.$$rawModelValue,n=this.$valid,r=this.$modelValue,i=this.$options.getOption("allowInvalid"),s=this;this.$$runValidators(e,t,(t=>{i||n===t||(s.$modelValue=t?e:void 0,s.$modelValue!==r&&s.$$writeModelToScope())}))}$$runValidators(t,e,n){this.$$currentValidationRunId++;const r=this.$$currentValidationRunId,i=this;function s(t,e){r===i.$$currentValidationRunId&&i.$setValidity(t,e)}function o(t){r===i.$$currentValidationRunId&&n(t)}!function(){const t=i.$$parserName;if(!y(i.$$parserValid))return i.$$parserValid||(Object.keys(i.$validators).forEach((t=>{s(t,null)})),Object.keys(i.$asyncValidators).forEach((t=>{s(t,null)}))),s(t,i.$$parserValid),i.$$parserValid;s(t,null);return!0}()?o(!1):function(){let n=!0;if(Object.entries(i.$validators).forEach((([r,i])=>{const o=Boolean(i(t,e));n=n&&o,s(r,o)})),!n)return Object.keys(i.$asyncValidators).forEach((t=>{s(t,null)})),!1;return!0}()?function(){const n=[];let r=!0;Object.entries(i.$asyncValidators).forEach((([i,o])=>{const a=o(t,e);if(!R(a))throw gn("nopromise","Expected asynchronous validator to return a promise but got '{0}' instead.",a);s(i,void 0),n.push(a.then((()=>{s(i,!0)}),(()=>{r=!1,s(i,!1)})))})),n.length?Promise.all(n).then((()=>{o(r)}),(()=>{})):o(!0)}():o(!1)}$commitViewValue(){clearTimeout(this.$$pendingDebounce),(this.$$lastCommittedViewValue!==this.$viewValue||""===this.$viewValue&&this.$$hasNativeValidators)&&(void 0===this.$$lastCommittedViewValue&&Number.isNaN(this.$viewValue)||(this.$$updateEmptyClasses(this.$viewValue),this.$$lastCommittedViewValue=this.$viewValue,this.$pristine&&this.$setDirty(),this.$$parseAndValidate()))}$$parseAndValidate(){let t=this.$$lastCommittedViewValue;const e=this;if(this.$$parserValid=!y(t)||void 0,this.$setValidity(this.$$parserName,null),this.$$parserName="parse",this.$$parserValid)for(let e=0;e<this.$parsers.length;e++)if(t=this.$parsers[e](t),y(t)){this.$$parserValid=!1;break}D(this.$modelValue)&&(this.$modelValue=this.$$ngModelGet(this.$$scope));const n=this.$modelValue,r=this.$options.getOption("allowInvalid");function i(){e.$modelValue!=n&&e.$$writeModelToScope()}this.$$rawModelValue=t,r&&(this.$modelValue=t,i()),this.$$runValidators(t,this.$$lastCommittedViewValue,(n=>{r||(e.$modelValue=n?t:void 0,i())}))}$$writeModelToScope(){this.$$ngModelSet(this.$$scope,this.$modelValue),Object.values(this.$viewChangeListeners).forEach((t=>{try{t()}catch(t){this.$$exceptionHandler(t)}}),this)}$setViewValue(t,e){this.$viewValue=t,this.$options?.getOption("updateOnDefault")&&this.$$debounceViewValueCommit(e)}$$debounceViewValueCommit(t){let e=this.$options.getOption("debounce");x(e[t])?e=e[t]:x(e.default)&&-1===this.$options.getOption("updateOn").indexOf(t)?e=e.default:x(e["*"])&&(e=e["*"]),clearTimeout(this.$$pendingDebounce);const n=this;e>0?this.$$pendingDebounce=setTimeout((()=>{n.$commitViewValue()}),e):this.$commitViewValue()}$overrideModelOptions(t){this.$$removeAllEventListeners(),this.$options=this.$options.createChild(t),this.$$updateEvents=this.$options.$$options.updateOn,this.$$setUpdateOnEvents()}$processModelValue(){const t=this.$$format();this.$viewValue!==t&&(this.$$updateEmptyClasses(t),this.$viewValue=this.$$lastCommittedViewValue=t,this.$render(),this.$$runValidators(this.$modelValue,this.$viewValue,(()=>{})))}$$format(){const t=this.$formatters;let e=t.length,n=this.$modelValue;for(;e--;)n=t[e](n);return n}$$setModelValue(t){this.$modelValue=this.$$rawModelValue=t,this.$$parserValid=void 0,this.$processModelValue()}$$removeAllEventListeners(){this.$$eventRemovers.forEach((t=>t())),this.$$eventRemovers.clear()}$$setUpdateOnEvents(){this.$$updateEvents&&this.$$updateEvents.split(" ").forEach((t=>{this.$$element.addEventListener(t,this.$$updateEventHandler),this.$$eventRemovers.add((()=>this.$$element.removeEventListener(t,this.$$updateEventHandler)))})),this.$$updateEvents=this.$options.getOption("updateOn"),this.$$updateEvents&&this.$$updateEvents.split(" ").forEach((t=>{this.$$element.addEventListener(t,this.$$updateEventHandler),this.$$eventRemovers.add((()=>this.$$element.removeEventListener(t,this.$$updateEventHandler)))}))}$$updateEventHandler(t){this.$$debounceViewValueCommit(t&&t.type)}}function yn(){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:vn,priority:1,compile:t=>(t.classList.add(r,s,e),{pre:(t,e,n,r)=>{const i=r[0],s=r[1]||i.$$parentForm,o=r[2];o&&(i.$options=o.$options),i.$$initGetterSetters(),s.$addControl(i),n.$observe("name",(t=>{i.$name!==t&&i.$$parentForm.$$renameControl(i,t)}));let a=t.$watch(n.ngModel,(t=>{i.$$setModelValue(p(t)?t.$target:t)}));t.$on("$destroy",(()=>{i.$$parentForm.$removeControl(i),a()}))},post:(t,e,n,r)=>{const i=r[0];i.$$setUpdateOnEvents(),e.addEventListener("blur",(()=>{i.$touched||i.$setTouched()})),i.$viewChangeListeners.push((()=>t.$eval(e.dataset.change)))}})}}const bn=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,wn=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,En=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,Cn=/^\s*([-+])?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Sn=/^(\d{4,})-(\d{2})-(\d{2})$/,xn=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,An=/^(\d{4,})-W(\d\d)$/,kn=/^(\d{4,})-(\d\d)$/,On=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,_n="validity",Tn=new Map;"date,datetime-local,month,time,week".split(",").forEach((t=>{Tn.set(t,!0)}));const jn={text:function(t,e,n,r){Rn(t,e,n,r),Ln(r)},date:Mn("date",Sn,Nn(Sn,["yyyy","MM","dd"])),"datetime-local":Mn("datetimelocal",xn,Nn(xn,["yyyy","MM","dd","HH","mm","ss","sss"])),time:Mn("time",On,Nn(On,["HH","mm","ss","sss"])),week:Mn("week",An,(function(t,e){if(A(t))return t;if(E(t)){An.lastIndex=0;const n=An.exec(t);if(n){const t=+n[1],r=+n[2];let i=0,s=0,o=0,a=0;const c=function(t){const e=new Date(t,0,1).getDay();return new Date(t,0,(e<=4?5:12)-e)}(t),l=7*(r-1);return e&&(i=e.getHours(),s=e.getMinutes(),o=e.getSeconds(),a=e.getMilliseconds()),new Date(t,0,c.getDate()+l,i,s,o,a)}}return NaN})),month:Mn("month",kn,Nn(kn,["yyyy","MM"])),number:function(t,e,n,r,i,s,o){let a;if(Pn(t,e,n,r,"number"),Dn(r),Rn(t,e,n,r),b(n.min)||n.ngMin){let e=n.min||o(n.ngMin)(t);a=Un(e),r.$validators.min=function(t,e){return r.$isEmpty(e)||y(a)||e>=a},n.$observe("min",(t=>{t!==e&&(a=Un(t),e=t,r.$validate())}))}if(b(n.max)||n.ngMax){let e=n.max||o(n.ngMax)(t),i=Un(e);r.$validators.max=function(t,e){return r.$isEmpty(e)||y(i)||e<=i},n.$observe("max",(t=>{t!==e&&(i=Un(t),e=t,r.$validate())}))}if(b(n.step)||n.ngStep){let e=n.step||o(n.ngStep)(t),i=Un(e);r.$validators.step=function(t,e){return r.$isEmpty(e)||y(i)||Fn(e,a||0,i)},n.$observe("step",(t=>{t!==e&&(i=Un(t),e=t,r.$validate())}))}},url:function(t,e,n,r){Rn(t,e,n,r),Ln(r),r.$validators.url=function(t,e){const n=t||e;return r.$isEmpty(n)||wn.test(n)}},email:function(t,e,n,r){Rn(t,e,n,r),Ln(r),r.$validators.email=function(t,e){const n=t||e;return r.$isEmpty(n)||En.test(n)}},radio:function(t,e,n,r){const i=!n.ngTrim||"false"!==N(n.ngTrim);y(n.name)&&e.setAttribute("name",m());e.addEventListener("change",(function(t){let s;e.checked&&(s=n.value,i&&(s=N(s)),r.$setViewValue(s,t&&t.type))})),r.$render=function(){let{value:t}=n;i&&(t=N(t));const s=p(r.$viewValue)?r.$viewValue.$target:r.$viewValue;e.checked=(p(t)?t.$target:t)===(p(s)?s.$target:s)},n.$observe("value",r.$render)},range:function(t,e,n,r){Pn(t,e,n,r,"range"),Dn(r),Rn(t,e,n,r);const i=r.$$hasNativeValidators&&"range"===e.type;let s=i?0:void 0,o=i?100:void 0,a=i?1:void 0;const{validity:c}=e,l=b(n.min),u=b(n.max),h=b(n.step),d=r.$render;r.$render=i&&b(c.rangeUnderflow)&&b(c.rangeOverflow)?function(){d(),r.$setViewValue(e.value)}:d,l&&(s=Un(n.min),r.$validators.min=i?function(){return!0}:function(t,e){return r.$isEmpty(e)||y(s)||e>=s},p("min",(function(t){if(s=Un(t),D(r.$modelValue))return;if(i){let t=e.value;s>t&&(t=s,e.value=t),r.$setViewValue(t)}else r.$validate()})));u&&(o=Un(n.max),r.$validators.max=i?function(){return!0}:function(t,e){return r.$isEmpty(e)||y(o)||e<=o},p("max",(function(t){if(o=Un(t),D(r.$modelValue))return;if(i){let t=e.value;o<t&&(e.value=o,t=o<s?s:o),r.$setViewValue(t)}else r.$validate()})));h&&(a=Un(n.step),r.$validators.step=i?function(){return!c.stepMismatch}:function(t,e){return r.$isEmpty(e)||y(a)||Fn(e,s||0,a)},p("step",(function(t){if(a=Un(t),D(r.$modelValue))return;i?r.$viewValue!==e.value&&r.$setViewValue(e.value):r.$validate()})));function p(t,r){e.setAttribute(t,n[t]);let i=n[t];n.$observe(t,(t=>{t!==i&&(i=t,r(t))}))}},checkbox:function(t,e,n,r,i,s,o){const a=qn(o,t,"ngTrueValue",n.ngTrueValue,!0),c=qn(o,t,"ngFalseValue",n.ngFalseValue,!1);e.addEventListener("change",(function(t){r.$setViewValue(e.checked,t&&t.type)})),r.$render=function(){e.checked=r.$viewValue},r.$isEmpty=function(t){return!1===t},r.$formatters.push((t=>K(t,a))),r.$parsers.push((t=>t?a:c))},hidden:()=>{},button:()=>{},submit:()=>{},reset:()=>{},file:()=>{}};function Ln(t){t.$formatters.push((e=>t.$isEmpty(e)?e:e.toString()))}function Rn(t,e,n,r){const i=e.type.toLowerCase();let s,o=!1;e.addEventListener("compositionstart",(()=>{o=!0})),e.addEventListener("compositionend",(()=>{o=!1,a()}));let a=function(t){if(s&&(clearTimeout(s),s=null),o)return;let a=e.value;const c=t&&t.type;"password"===i||n.ngTrim&&"false"===n.ngTrim||(a=N(a)),(r.$viewValue!==a||""===a&&r.$$hasNativeValidators)&&r.$target.$setViewValue(a,c)};["input","change","paste","drop","cut"].forEach((t=>{e.addEventListener(t,a)})),Tn[i]&&r.$$hasNativeValidators&&i===n.type&&e.addEventListener("keydown wheel mousedown",(function(t){if(!s){const e=this[_n],n=e.badInput,r=e.typeMismatch;s=setTimeout((()=>{s=null,e.badInput===n&&e.typeMismatch===r||a(t)}))}})),r.$render=function(){const t=r.$isEmpty(r.$viewValue)?"":r.$viewValue;e.value!==t&&(e.value=t)}}function Nn(t,e){return function(n,r){let i,s;if(A(n))return n;if(E(n)){if('"'===n.charAt(0)&&'"'===n.charAt(n.length-1)&&(n=n.substring(1,n.length-1)),bn.test(n))return new Date(n);if(t.lastIndex=0,i=t.exec(n),i){i.shift(),s=r?{yyyy:r.getFullYear(),MM:r.getMonth()+1,dd:r.getDate(),HH:r.getHours(),mm:r.getMinutes(),ss:r.getSeconds(),sss:r.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},Object.entries(i).forEach((([t,n])=>{t<e.length&&(s[e[t]]=+n)}));const t=new Date(s.yyyy,s.MM-1,s.dd,s.HH,s.mm,s.ss||0,1e3*s.sss||0);return s.yyyy<100&&t.setFullYear(s.yyyy),t}}return NaN}}const Vn=/\b\d{4}-(0[1-9]|1[0-2])\b/;function Mn(t,e,n){return function(r,i,s,o,a,c,l){if(Pn(r,i,s,o,t),Rn(0,i,s,o),o.$parsers.push((n=>o.$isEmpty(n)?null:e.test(n)?["month","week","datetimelocal","time","date"].includes(t)?n:d(n,undefined):void(o.$$parserName=t))),o.$formatters.push((function(e){if(e&&!E(e))throw gn("datefmt","Expected `{0}` to be a String",e);if("month"===t){if(null==e)return"";if(!Vn.test(e))throw gn("datefmt","Expected month `{0}` to be a 'YYYY-DD'",e)}if("week"===t){if(null==e)return"";if(!An.test(e))throw gn("datefmt","Expected week `{0}` to be a 'yyyy-Www'",e)}if("datetimelocal"===t){if(null==e)return"";if(!xn.test(e))throw gn("datefmt","Expected week `{0}` to be a in date time format. See: https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#local_date_and_time_strings",e)}return e})),b(s.min)||s.ngMin){let e=s.min||l(s.ngMin)(r),i=h(p(e)?e.$target:e);o.$validators.min=function(e){return"month"===t?y(i)||n(e)>=n(i):!u(e)||y(i)||n(e)>=i},s.$observe("min",(t=>{t!==e&&(i=h(t),e=t,o.$validate())}))}if(b(s.max)||s.ngMax){let e=s.max||l(s.ngMax)(r),i=h(p(e)?e.$target:e);o.$validators.max=function(e){return"month"===t?y(i)||n(e)<=n(i):!u(e)||y(i)||n(e)<=i},s.$observe("max",(t=>{t!==e&&(i=h(t),e=t,o.$validate())}))}function u(t){return t&&!(t.getTime&&t.getTime()!=t.getTime())}function h(t){return b(t)&&!A(t)?d(t)||void 0:t}function d(t,e){const r=o.$options.getOption("timezone");let i=n(t,e);return!Number.isNaN(i)&&r&&(i=tt(i,r)),i}}}function Pn(t,e,n,r,i){const s=e;(r.$$hasNativeValidators=w(s.validity))&&r.$parsers.push((t=>{const n=e[_n]||{};if(!n.badInput&&!n.typeMismatch)return t;r.$$parserName=i}))}function Dn(t){t.$parsers.push((e=>t.$isEmpty(e)?null:Cn.test(e)?parseFloat(e):void(t.$$parserName="number"))),t.$formatters.push((e=>{if(!t.$isEmpty(e)){if(!x(e))throw gn("numfmt","Expected `{0}` to be a number",e);e=e.toString()}return e}))}function Un(t){return b(t)&&!x(t)&&(t=parseFloat(t)),D(t)?void 0:t}function In(t){return(0|t)===t}function Hn(t){const e=t.toString(),n=e.indexOf(".");if(-1===n){if(t>-1&&t<1){const t=/e-(\d+)$/.exec(e);if(t)return Number(t[1])}return 0}return e.length-n-1}function Fn(t,e,n){let r=Number(t);const i=!In(r),s=!In(e),o=!In(n);if(i||s||o){const t=i?Hn(r):0,a=s?Hn(e):0,c=o?Hn(n):0,l=10**Math.max(t,a,c);r*=l,e*=l,n*=l,i&&(r=Math.round(r)),s&&(e=Math.round(e)),o&&(n=Math.round(n))}return(r-e)%n===0}function qn(t,e,n,r,i){let s;if(b(r)){if(s=t(r),!s.constant)throw gn("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",n,r);return s(e)}return i}function Bn(t,e,n){return{restrict:"E",require:["?ngModel"],link:{pre(r,i,s,o){o[0]&&(jn[g(s.type)]||jn.text)(r,i,s,o[0],t,e,n)}}}}function zn(){const t={configurable:!0,enumerable:!1,get(){return this.getAttribute("value")||""},set(t){this.setAttribute("value",t)}};return{restrict:"E",priority:200,compile(e,n){if("hidden"===g(n.type))return{pre(e,n){const r=n;r.parentNode&&r.parentNode.insertBefore(r,r.nextSibling),Object.defineProperty&&Object.defineProperty(r,"value",t)}}}}}Bn.$inject=["$browser","$filter","$parse"];const Kn=/^(true|false|\d+)$/;function Wn(){function t(t,e,n){const r=b(n)?p(n)?n.$target:n:null;t.value=r,e.$set("value",n)}return{restrict:"A",priority:100,compile:(e,n)=>Kn.test(n.ngValue)?function(e,n,r){t(n,r,e.$eval(r.ngValue))}:function(e,n,r){e.$watch(r.ngValue,(e=>{t(n,r,e)}))}}}function Gn(t){return{restrict:"E",terminal:!0,compile(e,n){"text/ng-template"===n.type&&t.set(n.id,e.innerText)}}}Gn.$inject=["$templateCache"];class Qn{static $nonscope=["ngModelCtrl","selectValueMap","emptyOption","optionsMap","$scope","$element"];static $inject=["$element","$scope"];constructor(t,e){this.$element=t,this.$scope=e,this.selectValueMap={},this.ngModelCtrl={},this.multiple=!1,this.unknownOption=document.createElement("option"),this.hasEmptyOption=!1,this.emptyOption=void 0,this.optionsMap=new Map,this.renderScheduled=!1,this.updateScheduled=!1,e.$on("$destroy",(()=>{this.renderUnknownOption=()=>{}}))}renderUnknownOption(t){const e=this.generateUnknownOptionValue(t);this.unknownOption.value=e,this.$element.prepend(this.unknownOption),this.unknownOption.selected=!0,this.unknownOption.setAttribute("selected","selected"),this.$element.value=e}updateUnknownOption(t){const e=this.generateUnknownOptionValue(t);this.unknownOption.value=e,this.unknownOption.selected=!0,this.unknownOption.setAttribute("selected","selected"),this.$element.value=e}generateUnknownOptionValue(t){return y(t)?"? undefined:undefined ?":`? ${pt(t)} ?`}removeUnknownOption(){this.unknownOption.parentElement&&this.unknownOption.remove()}selectEmptyOption(){this.emptyOption&&(this.$element.value="",this.emptyOption.selected=!0,this.emptyOption.setAttribute("selected","selected"))}unselectEmptyOption(){this.hasEmptyOption&&(this.emptyOption.selected=!1)}readValue(){const t=this.$element.value,e=t in this.selectValueMap?this.selectValueMap[t]:t;return this.hasOption(e)?e:null}writeValue(t){const e=this.$element.options[this.$element.selectedIndex];if(e&&(e.selected=!1),this.hasOption(t)){this.removeUnknownOption();const e=pt(t);this.$element.value=e in this.selectValueMap?e:t;const n=this.$element.options[this.$element.selectedIndex];n?n.selected=!0:this.selectUnknownOrEmptyOption(t)}else this.selectUnknownOrEmptyOption(t)}addOption(t,e){if(e.nodeType===Node.COMMENT_NODE)return;W(t,'"option value"'),""===t&&(this.hasEmptyOption=!0,this.emptyOption=e);const n=this.optionsMap.get(t)||0;this.optionsMap.set(t,n+1),this.scheduleRender()}removeOption(t){const e=this.optionsMap.get(t);e&&(1===e?(this.optionsMap.delete(t),""===t&&(this.hasEmptyOption=!1,this.emptyOption=void 0)):this.optionsMap.set(t,e-1))}hasOption(t){return!!this.optionsMap.get(t)}$hasEmptyOption(){return this.hasEmptyOption}$isUnknownOptionSelected(){return this.$element.options[0]===this.unknownOption}$isEmptyOptionSelected(){return this.hasEmptyOption&&this.$element.options[this.$element.selectedIndex]===this.emptyOption}selectUnknownOrEmptyOption(t){null==t&&this.emptyOption?(this.removeUnknownOption(),this.selectEmptyOption()):this.unknownOption.parentElement?this.updateUnknownOption(t):this.renderUnknownOption(t)}scheduleRender(){this.renderScheduled||(this.renderScheduled=!0,this.$scope.$postUpdate((()=>{this.renderScheduled=!1,this.ngModelCtrl.$render()})))}scheduleViewValueUpdate(t=!1){this.updateScheduled||(this.updateScheduled=!0,this.$scope.$postUpdate((()=>{this.$scope.$$destroyed||(this.updateScheduled=!1,this.ngModelCtrl.$setViewValue(this.readValue()),t&&this.ngModelCtrl.$render())})))}registerOption(t,e,n,r,i){let s,o;if(n.$attr.ngValue)n.$observe("value",(t=>{let n;const r=e.selected;b(o)&&(this.removeOption(s),delete this.selectValueMap[o],n=!0),o=pt(t),s=t,this.selectValueMap[o]=t,this.addOption(t,e),e.setAttribute("value",o),n&&r&&this.scheduleViewValueUpdate()}));else if(r)n.$observe("value",(t=>{let n;this.readValue();const r=e.selected;b(s)&&(this.removeOption(s),n=!0),s=t,this.addOption(t,e),n&&r&&this.scheduleViewValueUpdate()}));else if(i){let r;t.value=i(t),n.value||(n.$set("value",t.value),this.addOption(t.value,e)),t.$watch("value",(()=>{let s=i(t);n.value||n.$set("value",s);const o=e.selected;r!==s&&(this.removeOption(r),r=s),this.addOption(s,e),r&&o&&this.scheduleViewValueUpdate()}))}else this.addOption(n.value,e);n.$observe("disabled",(t=>{("true"===t||t&&e.selected)&&(this.multiple?this.scheduleViewValueUpdate(!0):(this.ngModelCtrl.$setViewValue(null),this.ngModelCtrl.$render()))})),e.addEventListener("$destroy",(()=>{const t=this.readValue(),e=n.value;this.removeOption(e),this.scheduleRender(),(this.multiple&&t&&-1!==t.indexOf(e)||t===e)&&this.scheduleViewValueUpdate(!0)}))}}function Yn(){return{restrict:"E",require:["select","?ngModel"],controller:Qn,priority:1,link:{pre:function(t,e,n,r){const i=r[0],s=r[1];if(!s)return void(i.registerOption=()=>{});if(i.ngModelCtrl=s,e.addEventListener("change",(()=>{i.removeUnknownOption();const t=i.readValue();s.$setViewValue(t)})),n.multiple){let t;i.multiple=!0,i.readValue=function(){const t=[],n=e.getElementsByTagName("option");return Array.from(n).forEach((e=>{if(e.selected&&!e.disabled){const n=e.value;t.push(n in i.selectValueMap?i.selectValueMap[n]:n)}})),t},i.writeValue=function(t){const n=e.getElementsByTagName("option");Array.from(n).forEach((e=>{const n=!!t&&(q(t,e.value)||q(t,i.selectValueMap[e.value]));n!==e.selected&&(e.selected=n)}))};let n=NaN;n!==s.$viewValue||K(t,s.$viewValue)||(t=ot(s.$viewValue),s.$render()),n=s.$viewValue,s.$isEmpty=function(t){return!t||0===t.length}}},post:function(t,e,n,r){const i=r[1];if(!i)return;const s=r[0];i.$render=function(){s.writeValue(i.$viewValue)}}}}}function Jn(t){return{restrict:"E",priority:100,compile(e,n){let r,i;return b(n.ngValue)||(b(n.value)?r=t(n.value,!0):(i=t(e.textContent,!0),i||n.$set("value",e.textContent))),function(t,e,n){const s="$selectController",o=e.parentElement,a=Pt(o,s)||Pt(o.parentElement,s);a&&a.registerOption(t,e,n,r,i)}}}}function Zn(){return{link(t,e,n){t.$watch(n.ngBind,(t=>{e.textContent=G(p(t)?t.$target:t)}))}}}function Xn(){return{link(t,e,n){n.$observe("ngBindTemplate",(t=>{e.textContent=y(t)?"":t}))}}}function tr(t){return{restrict:"A",compile:(e,n)=>(t(n.ngBindHtml),(t,e)=>{t.$watch(n.ngBindHtml,(t=>{(y(t)||C(t))&&(t=""),e.innerHTML=t}))})}}function er(t,e){return t=`ngClass${t}`,function(){return{link(n,r,i){let s,o=Pt(r,"$classCounts"),a=!0;function c(t,e){const n=[];return t&&t.forEach((t=>{(e>0||o[t])&&(o[t]=(o[t]||0)+e,o[t]===+(e>0)&&n.push(t))})),n.join(" ")}o||(o=Object.create(null),Mt(r,"$classCounts",o)),"ngClass"!==t&&n.$watch("$index",(()=>{!function(t){t===e?(o=c(rr(o=s),1),mt(r)?i.$addClass(o):n.$postUpdate((()=>{""!==o&&r.classList.add(...o.trim().split(" "))}))):function(t){t=c(rr(t),-1),mt(r)?i.$removeClass(t):n.$postUpdate((()=>{""!==t&&r.classList.remove(...t.trim().split(" "))}))}(s);var o;a=t}(1&n.$index)})),n.$watch(i[t],(t=>{!function(t){a===e&&function(t,e){const n=rr(t),s=rr(e),o=nr(n,s),a=nr(s,n),l=c(o,-1),u=c(a,1);mt(r)?(i.$addClass(u),i.$removeClass(l)):(""!==u&&r.classList.add(...u.trim().split(" ")),""!==l&&r.classList.remove(...l.trim().split(" ")))}(s,t);s=t}(ir(t))}))}}}}function nr(t,e){if(!t||!t.length)return[];if(!e||!e.length)return t;const n=[];t:for(let r=0;r<t.length;r++){const i=t[r];for(let t=0;t<e.length;t++)if(i===e[t])continue t;n.push(i)}return n}function rr(t){return t&&t.split(" ")}function ir(t){if(!t)return t;let e=t;return Array.isArray(t)?e=t.map(ir).join(" "):w(t)?e=Object.keys(t).filter((e=>t[e])).join(" "):E(t)||(e=`${t}`),e}Jn.$inject=["$interpolate"],tr.$inject=[Xt.$parse];const sr=er("",!0),or=er("Odd",0),ar=er("Even",1);function cr(){return{compile(t,e){e.$set("ngCloak",void 0),t.classList.remove("ng-cloak")}}}function lr(){return{restrict:"A",scope:!0,controller:"@",priority:500}}const ur="ng-hide",hr="ng-hide-animate";function dr(t){return{restrict:"A",link(e,n,r){e.$watch(r.ngShow,(e=>{mt(n)?t[e?"removeClass":"addClass"](n,ur,{tempClasses:hr}):e?n.classList.remove(ur):n.classList.add(ur)}))}}}function pr(t){return{restrict:"A",link(e,n,r){e.$watch(r.ngHide,(e=>{mt(n)?t[e?"addClass":"removeClass"](n,ur,{tempClasses:hr}):e?n.classList.add(ur):n.classList.remove(ur)}))}}}function fr(t){return{transclude:"element",priority:600,terminal:!0,restrict:"A",link(e,n,r,i,s){let o,a,c;e.$watch(r.ngIf,(e=>{e?a||s(((e,r)=>{a=r,o=e,mt(e)?t.enter(e,n.parentElement,n):n.after(e)})):(c&&(qt(c),c=null),a&&(a.$destroy(),a=null),o&&(c=o,mt(c)?t.leave(c).done((t=>{!1!==t&&(c=null)})):n.nextElementSibling.remove(),o=null))}))}}}function $r(t,e,n,r){return{priority:400,terminal:!0,transclude:"element",controller:()=>{},compile(i,s){const o=s.ngInclude||s.src,a=s.onload||"",c=s.autoscroll;return(i,s,l,u,h)=>{function d(){!b(c)||c&&!i.$eval(c)||e()}let p,f,$,m=0;const g=()=>{f&&(f.remove(),f=null),p&&(p.$destroy(),p=null),$&&(mt($)?n.leave($).done((t=>{!1!==t&&(f=null)})):$.remove(),f=$,$=null)};i.$watch(o,(async e=>{const o=function(t){!1!==t&&d()},c=++m;e?(await t(e,!0).then((t=>{if(i.$$destroyed)return;if(c!==m)return;const r=i.$new();u.template=t;const l=h(r,(t=>{g(),mt(t)?n.enter(t,null,s).done(o):(s.after(t),d())}));p=r,$=l,p.$emit("$includeContentLoaded",e),i.$eval(a)}),(t=>{i.$$destroyed||(c===m&&(g(),i.$emit("$includeContentError",e)),r(new Error(t)))})),i.$emit("$includeContentRequested",e)):(g(),u.template=null)}))}}}}function mr(t){return{priority:-400,require:"ngInclude",link(e,n,r,i){n.innerHTML=i.template,t(n.childNodes)(e)}}}function gr(){return{priority:450,compile:()=>({pre(t,e,n){const r=Ht(e);r?r.$eval(n.ngInit):t.$eval(n.ngInit)}})}}function vr(){return{terminal:!0,priority:1e3}}dr.$inject=["$animate"],pr.$inject=["$animate"],fr.$inject=["$animate"],$r.$inject=[Xt.$templateRequest,Xt.$anchorScroll,Xt.$animate,Xt.$exceptionHandler],mr.$inject=["$compile"];const yr=dt("ngRef");function br(t){return{priority:-1,restrict:"A",compile(e,n){const r=$t(F(e)),i=t(n.ngRef),s=i.assign||function(){throw yr("nonassign",'Expression in ngRef="{0}" is non-assignable!',n.ngRef)};return(t,e,o)=>{let a;if(vt(o,"ngRefRead")){if("$element"===o.ngRefRead)a=e;else if(a=Pt(e,`$${o.ngRefRead}Controller`),!a)throw yr("noctrl",'The controller for ngRefRead="{0}" could not be found on ngRef="{1}"',o.ngRefRead,n.ngRef)}else a=Pt(e,`$${r}Controller`);a=a||e,s(t,a),e.addEventListener("$destroy",(()=>{i(t)===a&&s(t,null)}))}}}}br.$inject=["$parse"];const wr="$$NG_REMOVED",Er=dt("ngRepeat"),Cr=/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/;function Sr(t){function e(t,e,n,r,i,s,o){t[n]!==r&&(t[n]=r),i&&(t[i]=s),r&&(t.$target.$$hashKey=r.$$hashKey),t.$index=e,t.$first=0===e,t.$last=e===o-1,t.$middle=!(t.$first||t.$last),t.$odd=!(t.$even=!(1&e))}function n(t){return t.clone}function r(t){return t.clone}function i(t,e,n){return pt(n)}function s(t,e){return e}return{restrict:"A",transclude:"element",priority:1e3,terminal:!0,compile:(o,a)=>{const c=a.ngRepeat,l=!!a.animate;let u=c.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);if(!u)throw Er("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",c);const h=u[1],d=u[2],p=u[3];if(u=h.match(Cr),!u)throw Er("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",h);const f=u[3]||u[1],$=u[2];if(p&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(p)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(p)))throw Er("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",p);return function(o,a,u,h,m){let g=Object.create(null);o.$watch(d,(u=>{let h,d,y,b=a;const w=Object.create(null);let E,C,S,x,A,k,O,_,T;if(p&&(o[p]=u),v(u))k=u,A=i;else{A=s,k=[];for(const t in u)vt(u,t)&&"$"!==t.charAt(0)&&k.push(t)}for(E=k.length,_=new Array(E),h=0;h<E;h++)if(C=u===k?h:k[h],S=u[C],x=A(o,C,S),g[x])O=g[x],delete g[x],w[x]=O,_[h]=O;else{if(w[x])throw Object.values(_).forEach((t=>{t&&t.scope&&(g[t.id]=t)})),Er("dupes","Duplicates keys in a repeater are not allowed. Repeater: {0}, Duplicate key: {1} for value: {2}",c,x,S);_[h]={id:x,scope:void 0,clone:void 0},w[x]=!0}for(let e in g){if(O=g[e],T=O.clone,l?t.leave(T):T.remove(),T.parentNode)for(h=0,d=T.length;h<d;h++)T[h][wr]=!0;O.scope.$destroy()}for(h=0;h<E;h++)if(C=u===k?h:k[h],S=u[C],O=_[h],O.scope){y=b;do{y=y.nextSibling}while(y&&y[wr]);n(O)!==y&&t.move(zt(O.clone),null,b),b=r(O),e(O.scope,h,f,S,$,C,E)}else m(((n,r)=>{O.scope=r;const i=n;l?t.enter(n,null,b):b.after(n),b=i,O.clone=n,w[O.id]=O,e(O.scope,h,f,S,$,C,E)}));g=w}))}}}}function xr(){return{restrict:"A",link(t,e,n){let r;t.$watch(n.ngStyle,(t=>{if(r){const t=Object.keys(r);for(let n=0,r=t.length;n<r;n++)e.style.removeProperty(t[n])}if(t){r={...t.$target};const n=Object.entries(t);for(let t=0,r=n.length;t<r;t++){const[r,i]=n[t];e.style.setProperty(r,i)}}}))}}}function Ar(t){return{require:"ngSwitch",controller:["$scope",class{constructor(){this.cases={}}}],link(e,n,r,i){const s=r.ngSwitch||r.on;let o=[];const a=[],c=[],l=[],u=function(t,e){return function(n){!1!==n&&t.splice(e,1)}};e.$watch(s,(e=>{let n,r;for(;c.length;)t.cancel(c.pop());for(n=0,r=l.length;n<r;++n){const e=zt(a[n].clone);if(l[n].$destroy(),mt(e)){(c[n]=t.leave(e)).done(u(c,n))}else e.remove()}a.length=0,l.length=0,(o=i.cases[`!${e}`]||i.cases["?"])&&Object.values(o).forEach((e=>{e.transclude(((n,r)=>{l.push(r);const i=e.element,s={clone:n,comment:document.createComment("")};a.push(s),mt(n)?t.enter(n,i.parentElement,i):Zt(n,i.parentElement,i)}))}))}))}}}function kr(){return{transclude:"element",terminal:!0,priority:1200,require:"^ngSwitch",link(t,e,n,r,i){const s=n.ngSwitchWhen.split(n.ngSwitchWhenSeparator).sort().filter(((t,e,n)=>n[e-1]!==t));s.forEach((t=>{r.cases[`!${t}`]=r.cases[`!${t}`]||[],r.cases[`!${t}`].push({transclude:i,element:e})}))}}}function Or(){return{transclude:"element",terminal:!0,priority:1200,require:"^ngSwitch",link(t,e,n,r,i){r.cases["?"]=r.cases["?"]||[],r.cases["?"].push({transclude:i,element:e})}}}Sr.$inject=[Xt.$animate],Ar.$inject=["$animate"];const _r=dt("ngOptions"),Tr=document.createElement("option"),jr=document.createElement("optgroup"),Lr=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([$\w][$\w]*)|(?:\(\s*([$\w][$\w]*)\s*,\s*([$\w][$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,Rr=["$compile","$parse",function(t,e){return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(t,e,n,r){r[0].registerOption=()=>{}},post:function(n,r,i,s){const o=s[0],a=s[1],c=i.multiple;for(let t=0,e=r.childNodes,n=e.length;t<n;t++)if(""===e[t].value){o.hasEmptyOption=!0,o.emptyOption=e[t];break}Jt(r);const l=!!o.emptyOption;let u;Tr.cloneNode(!1).nodeValue="?";const h=function(t,n,r){const i=t.match(Lr);if(!i)throw _r("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",t,Bt(n));const s=i[5]||i[7],o=i[6],a=/ as /.test(i[0])&&i[1],c=i[9],l=e(i[2]?i[1]:s),u=a&&e(a)||l,h=c&&e(c),d=c?function(t,e){return h(r,e)}:function(t){return pt(t)},p=function(t,e){return d(t,b(t,e))},f=e(i[2]||i[1]),$=e(i[3]||""),m=e(i[4]||""),g=e(i[8]),y={};let b=o?function(t,e){return y[o]=e,y[s]=t,y}:function(t){return y[s]=t,y};class w{constructor(t,e,n,r,i){this.selectValue=t,this.viewValue=e,this.label=n,this.group=r,this.disabled=i}}function E(t){let e;if(!o&&v(t))e=t;else{e=[];for(const n in t)vt(t,n)&&"$"!==n.charAt(0)&&e.push(n)}return e}return{trackBy:c,getTrackByValue:p,getWatchables:e(g,(t=>{const e=[],n=E(t=t||[]),s=n.length;for(let o=0;o<s;o++){const s=t===n?o:n[o],a=t[s],c=b(a,s),l=d(a,c);if(e.push(l),i[2]||i[1]){const t=f(r,c);e.push(t)}if(i[4]){const t=m(r,c);e.push(t)}}return e})),getOptions(){const t=[],e={},n=g(r)||[],i=E(n),s=i.length;for(let o=0;o<s;o++){const s=n===i?o:i[o],a=n[s],c=b(a,s),l=u(r,c),h=d(l,c),p=f(r,c),g=$(r,c),v=m(r,c),y=new w(h,l,p,g,v);t.push(y),e[h]=y}return{items:t,selectValueMap:e,getOptionFromViewValue:t=>e[p(t)],getViewValueFromOption:t=>c?structuredClone(t.viewValue):t.viewValue}}}}(i.ngOptions,r,n),d=document.createDocumentFragment();if(o.generateUnknownOptionValue=()=>"?",c?(o.writeValue=function(t){if(!u)return;const e=t&&t.map(f)||[];u.items.forEach((t=>{t.element.selected&&!q(e,t)&&(t.element.selected=!1)}))},o.readValue=function(){const t=r.value||[],e=[];return t.forEach((t=>{const n=u.selectValueMap[t];n&&!n.disabled&&e.push(u.getViewValueFromOption(n))})),e}):(o.writeValue=function(t){if(!u)return;const e=r.options[r.selectedIndex],n=u.getOptionFromViewValue(t);e&&e.removeAttribute("selected"),n?(r.value!==n.selectValue&&(o.removeUnknownOption(),r.value=n.selectValue,n.element.selected=!0),n.element.setAttribute("selected","selected")):o.selectUnknownOrEmptyOption(t)},o.readValue=function(){const t=u.selectValueMap[r.value];return t&&!t.disabled?(o.unselectEmptyOption(),o.removeUnknownOption(),u.getViewValueFromOption(t)):null},h.trackBy&&n.$watch(h.getTrackByValue(a.$viewValue),(()=>{a.$render()}))),l){const e=t(o.emptyOption);ct(e,"LinkFn required"),r.prepend(o.emptyOption),e(n),o.emptyOption.nodeType===Node.COMMENT_NODE&&(o.hasEmptyOption=!1,o.registerOption=function(t,e){""===e.value&&(o.hasEmptyOption=!0,o.emptyOption=e,a.$render(),e.addEventListener("$destroy",(()=>{const t=o.$isEmptyOptionSelected();o.hasEmptyOption=!1,o.emptyOption=void 0,t&&a.$render()})))})}function p(t,e){const n=Tr.cloneNode(!1);e.appendChild(n),function(t,e){t.element=e,e.disabled=t.disabled,t.label!==e.label&&(e.label=t.label,e.textContent=t.label);e.value=t.selectValue}(t,n)}function f(t){const e=u.getOptionFromViewValue(t),n=e&&e.element;return n&&!n.selected&&(n.selected=!0),e}n.$watch(h.getWatchables.decoratedNode.body[0].expression.name,(function(){const t=u&&o.readValue();if(u)for(let t=u.items.length-1;t>=0;t--){const e=u.items[t];b(e.group)?qt(e.element.parentNode):qt(e.element)}u=h.getOptions();const e={};if(u.items.forEach((t=>{let n;b(t.group)?(n=e[t.group],n||(n=jr.cloneNode(!1),d.appendChild(n),n.label=null===t.group?"null":t.group,e[t.group]=n),p(t,n)):p(t,d)})),r.appendChild(d),a.$render(),!a.$isEmpty(t)){const e=o.readValue();(h.trackBy||c?K(t,e):t===e)||(a.$setViewValue(e),a.$render())}}))}}}}],Nr=dt("ngTransclude"),Vr=["$compile",function(t){return{compile:function(e){const n=t(e.childNodes);return Jt(e),function(t,e,r,i,s){if(!s)throw Nr("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",Bt(e));r.ngTransclude===r.$attr.ngTransclude&&(r.ngTransclude="");const o=r.ngTransclude||r.ngTranscludeSlot;function a(){n(t,(t=>{e.append(t)}))}s((function(t,n){!function(t){if(t instanceof Array)return!1;if(t.nodeType!==Node.TEXT_NODE||t.nodeValue.trim())return!0}(t)?(a(),n.$destroy()):t instanceof NodeList?Array.from(t).forEach((t=>{e.append(t)})):e.append(t)}),null,o),o&&!s.isSlotFilled(o)&&a()}}}}],Mr=/^\/(.+)\/([a-z]*)$/,Pr={};xt.forEach((t=>{if("multiple"===t)return;function e(e,r,i){e.$watch(i[n],(e=>{i.$set(t,!!e)}))}let n=$t(`ng-${t}`),r=e;"checked"===t&&(r=function(t,r,i){i.ngModel!==i[n]&&e(t,0,i)}),Pr[n]=function(){return{restrict:"A",priority:100,link:r}}})),Object.entries(h).forEach((([t])=>{Pr[t]=function(){return{priority:100,link(e,n,r){if("ngPattern"===t&&"/"===r.ngPattern.charAt(0)){const t=r.ngPattern.match(Mr);if(t)return void r.$set("ngPattern",new RegExp(t[1],t[2]))}e.$watch(r[t],(e=>{r.$set(t,e)}))}}}})),["src","srcset","href"].forEach((t=>{const e=$t(`ng-${t}`);Pr[e]=[Xt.$sce,function(n){return{priority:99,link(r,i,s){let o=t;"href"===t&&"[object SVGAnimatedString]"===toString.call(i.href)&&(o="xlinkHref",s.$attr[o]="href"),s.$set(e,n.getTrustedMediaUrl(s[e])),s.$observe(e,(e=>{e?s.$set(o,e):"href"===t&&s.$set(o,null)}))}}}]}));const Dr=["$parse",t=>({restrict:"A",require:"?ngModel",link:(e,n,r,i)=>{if(!i)return;let s=vt(r,"required")||t(r.ngRequired)(e);r.ngRequired||(r.required=!0),i.$validators.required=(t,e)=>!s||!i.$isEmpty(e),r.$observe("required",(t=>{s!==t&&(s=t,i.$validate())}))}})],Ur=["$parse",t=>({restrict:"A",require:"?ngModel",compile:(e,n)=>{let r,i;return n.ngPattern&&(r=n.ngPattern,i="/"===n.ngPattern.charAt(0)&&Mr.test(n.ngPattern)?function(){return n.ngPattern}:t(n.ngPattern)),function(t,e,n,s){if(!s)return;let o=n.pattern;n.ngPattern?o=i(t):r=n.pattern;let a=Fr(o,r,e);n.$observe("pattern",(function(t){const n=a;a=Fr(t,r,e),(n&&n.toString())!==(a&&a.toString())&&s.$validate()})),s.$validators.pattern=function(t,e){return s.$isEmpty(e)||y(a)||a.test(e)}}}})],Ir=["$parse",t=>({restrict:"A",require:"?ngModel",link:(e,n,r,i)=>{if(!i)return;let s=r.maxlength||t(r.ngMaxlength)(e),o=qr(s);r.$observe("maxlength",(t=>{s!==t&&(o=qr(t),s=t,i.$validate())})),i.$validators.maxlength=function(t,e){return o<0||i.$isEmpty(e)||e.length<=o}}})],Hr=["$parse",function(t){return{restrict:"A",require:"?ngModel",link(e,n,r,i){if(!i)return;let s=r.minlength||t(r.ngMinlength)(e),o=qr(s)||-1;r.$observe("minlength",(t=>{s!==t&&(o=qr(t)||-1,s=t,i.$validate())})),i.$validators.minlength=function(t,e){return i.$isEmpty(e)||e.length>=o}}}}];function Fr(t,e,n){if(t){if(p(t)&&(t=t.$target),E(t)&&(t=new RegExp(`^${t}$`)),!t.test)throw dt("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",e,t,Bt(n));return t}}function qr(t){const e=P(t);return D(e)?-1:e}class Br{constructor(){this.autoScrollingEnabled=!0}$get=["$location","$rootScope",function(t,e){function n(t){if(t){t.scrollIntoView();const e=function(){let t=r.yOffset;if(O(t))t=t();else if(H(t)){const e=t[0];t="fixed"!==window.getComputedStyle(e).position?0:e.getBoundingClientRect().bottom}else x(t)||(t=0);return t}();if(e){const n=t.getBoundingClientRect().top;window.scrollBy(0,n-e)}}else window.scrollTo(0,0)}const r=function(e){let r;(e=E(e)?e:x(e)?e.toString():t.hash())?(r=document.getElementById(e))||(r=function(t){let e=null;return Array.prototype.some.call(t,(t=>{if("a"===F(t))return e=t,!0})),e}(document.getElementsByName(e)))?n(r):"top"===e&&n(null):n(null)};return this.autoScrollingEnabled&&(e.$location=t,e.$watch("$location.$$hash",((t,n)=>{if(t===n&&""===t)return;const i=()=>e.$evalAsync(r);"complete"===document.readyState?window.setTimeout((()=>i())):window.addEventListener("load",(()=>i()))}))),r}]}const zr=1,Kr=2,Wr=3,Gr=4,Qr=5,Yr=6,Jr=7,Zr=8,Xr=9,ti=10,ei=11,ni=12,ri=13,ii=14,si=15,oi=16,ai=17,ci="-add",li="-remove",ui="-active",hi="ng-animate",di="$$ngAnimateChildren";let pi,fi,$i,mi;void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend?(pi="WebkitTransition",fi="webkitTransitionEnd transitionend"):(pi="transition",fi="transitionend"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend?($i="WebkitAnimation",mi="webkitAnimationEnd animationend"):($i="animation",mi="animationend");const gi="Duration",vi=ri,yi="Delay",bi="TimingFunction",wi=$i+yi,Ei=$i+gi,Ci=pi+yi,Si=pi+gi,xi=dt("ng");function Ai(t,e,n){if(!t)throw xi("areq","Argument '{0}' is {1}",e||"?",n);return t}function ki(t,e,n){let r="";return(t=Array.isArray(t)?t:t&&E(t)&&t.length?t.split(/\s+/):[]).forEach(((t,i)=>{t&&t.length>0&&(r+=i>0?" ":"",r+=n?e+t:t+e)})),r}function Oi(t){if(!t)return t;for(let e=0;e<t.length;e++){const n=t[e];if(n.nodeType===Node.ELEMENT_NODE)return n}}function _i(t){if(!(t=t||{}).$$prepared){let e=t.domOperation||(()=>{});t.domOperation=function(){t.$$domOperationFired=!0,e(),e=()=>{}},t.$$prepared=!0}return t}function Ti(t,e){ji(t,e),Li(t,e)}function ji(t,e){e.from&&(e.from=null)}function Li(t,e){e.to&&(e.to=null)}function Ri(t,e,n){const r=e.options||{},i=n.options||{},s=`${r.addClass||""} ${i.addClass||""}`,o=`${r.removeClass||""} ${i.removeClass||""}`,a=function(t,e,n){const r=1,i=-1,s={};t=a(t),e=a(e),Object.keys(e).forEach((t=>{s[t]=r})),n=a(n),Object.keys(n).forEach((t=>{s[t]=s[t]===r?null:i}));const o={addClass:"",removeClass:""};function a(t){E(t)&&(t=t.trim().split(" "));const e={};return t&&t.forEach((t=>{t.length&&(e[t]=!0)})),e}return Object.entries(s).forEach((([e,n])=>{let s,a;n===r?(s="addClass",a=!t[e]||t[e+li]):n===i&&(s="removeClass",a=t[e]||t[e+ci]),a&&(o[s].length&&(o[s]+=" "),o[s]+=e)})),o}(t.getAttribute("class"),s,o);return i.preparationClasses&&(r.preparationClasses=Mi(i.preparationClasses,r.preparationClasses),delete i.preparationClasses),M(r,i),a.addClass?r.addClass=a.addClass:r.addClass=null,a.removeClass?r.removeClass=a.removeClass:r.removeClass=null,e.addClass=r.addClass,e.removeClass=r.removeClass,r}function Ni(t,e){const n=e?"paused":"",r=$i+"PlayState";return Vi(t,[r,n]),[r,n]}function Vi(t,e){const n=e[0],r=e[1];t.style[n]=r}function Mi(t,e){return t?e?`${t} ${e}`:t:e}const Pi=dt("$animate");function Di(t,e){return t||e?t?e?(Array.isArray(t)&&(t=t.join(" ")),Array.isArray(e)&&(e=e.join(" ")),`${t} ${e}`):t:e:""}function Ui(t){return w(t)?t:{}}function Ii(t){const e=this;let n=null,r=null;this.$$registeredAnimations=Object.create(null),this.register=function(n,r){if(n&&"."!==n.charAt(0))throw Pi("notcsel","Expecting class selector starting with '.' got '{0}'.",n);const i=`${n}-animation`;e.$$registeredAnimations[n.substring(1)]=i,t.factory(i,r)},this.customFilter=function(t){return 1===arguments.length&&(r=O(t)?t:null),r},this.classNameFilter=function(t){if(1===arguments.length&&(n=t instanceof RegExp?t:null,n)){if(new RegExp(`[(\\s|\\/)]${hi}[(\\s|\\/)]`).test(n.toString()))throw n=null,Pi("nongcls",'$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.',hi)}return n},this.$get=["$$animateQueue",function(t){return{on:t.on,off:t.off,pin:t.pin,enabled:t.enabled,cancel(t){t.cancel&&t.cancel()},enter:(e,n,r,i)=>(Zt(e,n=n||r.parentElement,r),t.push(e,"enter",Ui(i))),move:(e,n,r,i)=>(Zt(e,n=n||r.parentElement,r),t.push(e,"move",Ui(i))),leave:(e,n)=>t.push(e,"leave",Ui(n),(()=>{Array.isArray(e)?e.forEach((t=>qt(t))):qt(e)})),addClass:(e,n,r)=>((r=Ui(r)).addClass=Di(r.addClass,n),t.push(e,"addClass",r)),removeClass:(e,n,r)=>((r=Ui(r)).removeClass=Di(r.removeClass,n),t.push(e,"removeClass",r)),setClass:(e,n,r,i)=>((i=Ui(i)).addClass=Di(i.addClass,n),i.removeClass=Di(i.removeClass,r),t.push(e,"setClass",i)),animate:(e,n,r,i,s)=>((s=Ui(s)).from=s.from?M(s.from,n):n,s.to=s.to?M(s.to,r):r,i=i||"ng-inline-animate",s.tempClasses=Di(s.tempClasses,i),t.push(e,"animate",s))}}]}function Hi(t){return t.replace(/#$/,"")}Ii.$inject=["$provide"];class Fi{constructor(t){this.taskTracker=t,this.pendingDeferIds={},this.urlChangeListeners=[],this.urlChangeInit=!1,this.cachedState=null,this.lastHistoryState=null,this.lastBrowserUrl=window.location.href,this.baseElement=document.querySelector("base"),this.$$completeOutstandingRequest=this.taskTracker.completeTask.bind(t),this.$$incOutstandingRequestCount=this.taskTracker.incTaskCount.bind(t),this.notifyWhenNoOutstandingRequests=this.taskTracker.notifyWhenNoPendingTasks.bind(t),this.cacheState()}url(t,e){return void 0===e&&(e=null),t?(t=Re(t).href,this.lastBrowserUrl===t&&this.lastHistoryState===e||(this.lastBrowserUrl=t,this.lastHistoryState=e,history.pushState(e,"",t),this.cacheState()),this):Hi(window.location.href)}state(){return this.cachedState}cacheStateAndFireUrlChange(){this.fireStateOrUrlChange()}cacheState(){const t=history.state??null;K(t,this.lastCachedState)||(this.cachedState=t,this.lastCachedState=t,this.lastHistoryState=t)}fireStateOrUrlChange(){const t=this.lastHistoryState;this.cacheState(),this.lastBrowserUrl===this.url()&&t===this.cachedState||(this.lastBrowserUrl=this.url(),this.lastHistoryState=this.cachedState,this.urlChangeListeners.forEach((t=>{t(Hi(window.location.href),this.cachedState)})))}onUrlChange(t){return this.urlChangeInit||(window.addEventListener("popstate",this.cacheStateAndFireUrlChange.bind(this)),window.addEventListener("hashchange",this.cacheStateAndFireUrlChange.bind(this)),this.urlChangeInit=!0),this.urlChangeListeners.push(t),t}$$applicationDestroyed(){window.removeEventListener("popstate",this.cacheStateAndFireUrlChange.bind(this)),window.removeEventListener("hashchange",this.cacheStateAndFireUrlChange.bind(this))}$$checkUrlChange(){this.fireStateOrUrlChange()}baseHref(){const t=this.baseElement?.getAttribute("href");return t?t.replace(/^(https?:)?\/\/[^/]*/,""):""}}class qi{$get=["$$taskTrackerFactory",t=>new Fi(t)]}function Bi(){this.$get=[function(){let t=[];function e(e){t.push(e),t.length>1||window.requestAnimationFrame((function(){for(let e=0;e<t.length;e++)t[e]();t=[]}))}return function(){let t=!1;return e((function(){t=!0})),function(n){t?n():e(n)}}}]}let zi;function Ki(){this.$get=["$$animateAsyncRun",function(t){return zi=t,Wi}]}class Wi{static chain(t,e){let n=0;!function r(){n!==t.length?t[n]((t=>{!1!==t?(n++,r()):e(!1)})):e(!0)}()}static all(t,e){let n=0,r=!0;function i(i){r=r&&i,++n===t.length&&e(r)}t.forEach((t=>{t.done(i)}))}constructor(t){this.setHost(t);const e=zi();this._doneCallbacks=[],this._tick=t=>{document.hidden?(t=>{setTimeout(t,0,!1)})(t):e(t)},this._state=0}setHost(t){this.host=t||{}}done(t){2===this._state?t():this._doneCallbacks.push(t)}progress(){}getPromise(){if(!this.promise){const t=this;this.promise=new Promise(((e,n)=>{t.done((t=>{!1===t?n():e()}))}))}return this.promise}then(t,e){return this.getPromise().then(t,e)}catch(t){return this.getPromise().catch(t)}finally(t){return this.getPromise().finally(t)}pause(){this.host.pause&&this.host.pause()}resume(){this.host.resume&&this.host.resume()}end(){this.host.end&&this.host.end(),this._resolve(!0)}cancel(){this.host.cancel&&this.host.cancel(),this._resolve(!1)}complete(t){0===this._state&&(this._state=1,this._tick((()=>{this._resolve(t)})))}_resolve(t){2!==this._state&&(this._doneCallbacks.forEach((e=>{e(t)})),this._doneCallbacks.length=0,this._state=2)}}class Gi{constructor(){this.cache=new Map}$get=()=>this.cache}class Qi{constructor(){this.log=window.console,this.errorHandler=(t,e)=>{this.log.error(t,e)},this.$get=["$log",t=>(this.log=t,this.errorHandler)]}}function Yi(){return function(t,e,n,r){if(!v(t)){if(null==t)return t;throw dt("filter")("notarray","Expected array but received: {0}",t)}let i;r=r||"$";let s=!1;switch(Zi(e)){case"function":i=e;break;case"boolean":case"null":case"number":case"string":s=!0;case"object":i=function(t,e,n,r){const i=w(t)&&n in t;let s;!0===e?e=K:O(e)||(e=function(t,e){return!y(t)&&(null===t||null===e?t===e:!(w(e)||w(t)&&!I(t))&&(t=`${t}`.toLowerCase(),e=`${e}`.toLowerCase(),-1!==t.indexOf(e)))});return s=function(s){return i&&!w(s)?Ji(s,t[n],e,n,!1):Ji(s,t,e,n,r)},s}(e,n,r,s);break;default:return t}return Array.prototype.filter.call(t,i)}}function Ji(t,e,n,r,i,s){const o=Zi(t),a=Zi(e);if("string"===a&&"!"===e.charAt(0))return!Ji(t,e.substring(1),n,r,i);if(Array.isArray(t))return t.some((t=>Ji(t,e,n,r,i)));switch(o){case"object":if(i){for(let i in t)if(i.charAt&&"$"!==i.charAt(0)&&Ji(t[i],e,n,r,!0))return!0;return!s&&Ji(t,e,n,r,!1)}if("object"===a){for(let i in e){const s=e[i];if(O(s)||y(s))continue;const o=i===r;if(!Ji(o?t:t[i],s,n,r,o,o))return!1}return!0}return n(t,e);case"function":return!1;default:return n(t,e)}}function Zi(t){return null===t?"null":typeof t}function Xi(){return function(t,e){return y(e)&&(e=2),X(t,e)}}function ts(){return function(t,e,n){return O(t)&&(t=t()),D(e=Math.abs(Number(e))===1/0?Number(e):P(e))?t:(x(t)&&(t=t.toString()),v(t)?(n=(n=!n||isNaN(n)?0:P(n))<0?Math.max(0,t.length+n):n,e>=0?es(t,n,n+e):0===n?es(t,e,t.length):es(t,Math.max(0,n+e),n)):t)}}function es(t,e,n){return E(t)?t.slice(e,n):[].slice.call(t,e,n)}function ns(t){return function(r,i,s,o){if(null==r)return r;if(O(r))return r();if(!v(r))throw dt("orderBy")("notarray","Expected array but received: {0}",r);Array.isArray(i)||(i=[i]),0===i.length&&(i=["+"]);const a=i.map((e=>{let n=1,r=t=>t;if(O(e))r=e;else if(E(e)&&("+"!==e.charAt(0)&&"-"!==e.charAt(0)||(n="-"===e.charAt(0)?-1:1,e=e.substring(1)),""!==e)){let n=t(e);if(n.constant){const t=n();r=e=>e[t]}else r=n}return{get:r,descending:n}}));const c=s?-1:1,l=O(o)?o:n,u=Array.prototype.map.call(r,(function(t,n){return{value:t,tieBreaker:{value:n,type:"number",index:n},predicateValues:a.map((r=>function(t,n){let r=typeof t;null===t?r="null":"object"===r&&(t=function(t){if(O(t.valueOf)&&e(t=t.valueOf()))return t;if(I(t)&&e(t=t.toString()))return t;return t}(t));return{value:t,type:r,index:n}}(r.get(t),n)))}}));return u.sort((function(t,e){for(let n=0,r=a.length;n<r;n++){const r=l(t.predicateValues[n],e.predicateValues[n]);if(r)return r*a[n].descending*c}return(l(t.tieBreaker,e.tieBreaker)||n(t.tieBreaker,e.tieBreaker))*c})),r=u.map((t=>t.value))};function e(t){switch(typeof t){case"number":case"boolean":case"string":return!0;default:return!1}}function n(t,e){let n=0;const r=t.type,i=e.type;if(r===i){let i=t.value,s=e.value;"string"===r?(i=i.toLowerCase(),s=s.toLowerCase()):"object"===r&&(w(i)&&(i=t.index),w(s)&&(s=e.index)),i!==s&&(n=i<s?-1:1)}else n="undefined"===r?1:"undefined"===i?-1:"null"===r?1:"null"===i||r<i?-1:1;return n}}function rs(t){return function(e,n,r){return t.is(e,n,r)}}function is(t){return function(e,n,r){return t.includes(e,n,r)}}function ss(t){const e="Filter";function n(r,i){return w(r)&&Object.entries(r).forEach((([t,e])=>{n(t,e)})),t.factory(r+e,i)}this.register=n,this.$get=["$injector",function(t){return function(n){return t.get(n+e)}}],n("filter",Yi),n("json",Xi),n("limitTo",ts),n("orderBy",ns),n("isState",rs),n("includedByState",is)}ns.$inject=[Xt.$parse],rs.$inject=["$state"],is.$inject=["$state"],ss.$inject=["$provide"];class os{constructor(t){this.$filter=t}compile(t){let e,n,r=as(t,this.$filter);(e=function(t){if(1===t.body.length&&cs(t.body[0].expression))return{type:Wr,left:t.body[0].expression,right:{type:ai},operator:"="}}(r))&&(n=this.recurse(e));const i=function(t){if(1!==t.length)return;const e=t[0].expression,n=e.toWatch;return 1!==n.length||n[0]!==e?n:void 0}(r.body);let s;if(i){s=[];for(const[t,e]of Object.entries(i)){const n=this.recurse(e);n.isPure=e.isPure,e.input=n,s.push(n),e.watchId=t}}const o=[];r.body.forEach((t=>{o.push(this.recurse(t.expression))}));const a=0===r.body.length?()=>{}:1===r.body.length?o[0]:function(t,e){let n;return o.forEach((r=>{n=r(t,e)})),n};return n&&(a.assign=(t,e,r)=>n(t,r,e)),s&&(a.inputs=s),a.decoratedNode=r,a}recurse(t,e,n){let r,i;const s=this;let o;switch(t.type){case ei:return this.value(t.value,e);case Jr:return i=this.recurse(t.argument),this[`unary${t.operator}`](i,e);case Yr:case Qr:return r=this.recurse(t.left),i=this.recurse(t.right),this[`binary${t.operator}`](r,i,e);case Gr:return this["ternary?:"](this.recurse(t.test),this.recurse(t.alternate),this.recurse(t.consequent),e);case ti:return s.identifier(t.name,e,n);case Xr:return r=this.recurse(t.object,!1,!!n),t.computed||(i=t.property.name),t.computed&&(i=this.recurse(t.property)),t.computed?this.computedMember(r,i,e,n):this.nonComputedMember(r,i,e,n);case Zr:return o=[],t.arguments.forEach((t=>{o.push(s.recurse(t))})),t.filter&&(i=this.$filter(t.callee.name)),t.filter||(i=this.recurse(t.callee,!0)),t.filter?function(t,n,r){const s=[];for(let e=0;e<o.length;++e){const i=o[e](t,n,r);s.push(i)}const a=()=>i.apply(void 0,s);return e?{context:void 0,name:void 0,value:a}:a}:function(t,n,r){const s=i(t,n,r);let a;if(null!=s.value&&O(s.value)){const e=[];for(let i=0;i<o.length;++i){const s=o[i](t,n,r);e.push(O(s)?s():s)}a=s.value.apply(s.context,e)}return e?{value:a}:a};case Wr:return r=this.recurse(t.left,!0,1),i=this.recurse(t.right),function(t,n,s){const o=r(t,n,s),a=i(t,n,s);return o.context[o.name]=a,e?{value:a}:a};case ni:return o=[],t.elements.forEach((t=>{o.push(s.recurse(t))})),function(t,n,r){const i=[];for(let e=0;e<o.length;++e)i.push(o[e](t,n,r));return e?{value:i}:i};case ii:return o=[],t.properties.forEach((t=>{t.computed?o.push({key:s.recurse(t.key),computed:!0,value:s.recurse(t.value)}):o.push({key:t.key.type===ti?t.key.name:`${t.key.value}`,computed:!1,value:s.recurse(t.value)})})),function(t,n,r){const i={};for(let e=0;e<o.length;++e)o[e].computed?i[o[e].key(t,n,r)]=o[e].value(t,n,r):i[o[e].key]=o[e].value(t,n,r);return e?{value:i}:i};case si:return function(t){return e?{value:t}:t};case oi:return function(t,n){return e?{value:n}:n};case ai:return function(t,n,r){return e?{value:r}:r}}}"unary+"(t,e){return function(n,r,i){let s=t(n,r,i);return s=b(s)?+s:0,e?{value:s}:s}}"unary-"(t,e){return function(n,r,i){let s=t(n,r,i);return s=b(s)?-s:-0,e?{value:s}:s}}"unary!"(t,e){return function(n,r,i){const s=!t(n,r,i);return e?{value:s}:s}}"binary+"(t,e,n){return function(r,i,s){const o=t(r,i,s),a=e(r,i,s),c=(u=a,void 0===(l=o)||w(l)?u:void 0===u||w(u)?l:l+u);var l,u;return n?{value:c}:c}}"binary-"(t,e,n){return function(r,i,s){const o=t(r,i,s),a=e(r,i,s),c=(b(o)?o:0)-(b(a)?a:0);return n?{value:c}:c}}"binary*"(t,e,n){return function(r,i,s){const o=t(r,i,s)*e(r,i,s);return n?{value:o}:o}}"binary/"(t,e,n){return function(r,i,s){const o=t(r,i,s)/e(r,i,s);return n?{value:o}:o}}"binary%"(t,e,n){return function(r,i,s){const o=t(r,i,s)%e(r,i,s);return n?{value:o}:o}}"binary==="(t,e,n){return function(r,i,s){const o=t(r,i,s)===e(r,i,s);return n?{value:o}:o}}"binary!=="(t,e,n){return function(r,i,s){const o=t(r,i,s)!==e(r,i,s);return n?{value:o}:o}}"binary=="(t,e,n){return function(r,i,s){const o=t(r,i,s)==e(r,i,s);return n?{value:o}:o}}"binary!="(t,e,n){return function(r,i,s){const o=t(r,i,s)!=e(r,i,s);return n?{value:o}:o}}"binary<"(t,e,n){return function(r,i,s){const o=t(r,i,s)<e(r,i,s);return n?{value:o}:o}}"binary>"(t,e,n){return function(r,i,s){const o=t(r,i,s)>e(r,i,s);return n?{value:o}:o}}"binary<="(t,e,n){return function(r,i,s){const o=t(r,i,s)<=e(r,i,s);return n?{value:o}:o}}"binary>="(t,e,n){return function(r,i,s){const o=t(r,i,s)>=e(r,i,s);return n?{value:o}:o}}"binary&&"(t,e,n){return(r,i,s)=>{const o=t(r,i,s)&&e(r,i,s);return n?{value:o}:o}}"binary||"(t,e,n){return function(r,i,s){const o=t(r,i,s)||e(r,i,s);return n?{value:o}:o}}"ternary?:"(t,e,n,r){return function(i,s,o){const a=t(i,s,o)?e(i,s,o):n(i,s,o);return r?{value:a}:a}}value(t,e){return function(){return e?{context:void 0,name:void 0,value:t}:t}}identifier(t,e,n){return function(r,i){const s=i&&t in i?i:r;let o;return n&&1!==n&&s&&null==s[t]&&(s[t]={}),s&&(o=s[t]),e?{context:s,name:t,value:o}:o}}computedMember(t,e,n,r){return function(i,s,o){const a=t(i,s,o);let c,l;return null!=a&&(c=e(i,s,o),c=function(t){return`${t}`}(c),r&&1!==r&&a&&!a[c]&&(a[c]={}),l=a[c]),n?{context:a,name:c,value:l}:l}}nonComputedMember(t,e,n,r){return function(i,s,o){const a=t(i,s,o);r&&1!==r&&a&&null==a[e]&&(a[e]={});const c=null!=a?a[e]:void 0;return n?{context:a,name:e,value:c}:c}}}function as(t,e,n){let r,i,s,o,a,c,l,u,h,d,p,f=t;const $=f.isPure=function(t,e){switch(t.type){case Xr:if(t.computed)return!1;break;case Jr:return 1;case Yr:return"+"!==t.operator&&1;case Zr:return!1}return void 0===e?2:e}(t,n);switch(t.type){case zr:return r=!0,f.body.forEach((t=>{let n=as(t.expression,e,$);r=r&&n.constant})),f.constant=r,f;case ei:return f.constant=!0,f.toWatch=[],f;case Jr:var m=as(f.argument,e,$);return f.constant=m.constant,f.toWatch=m.toWatch,f;case Yr:return o=as(f.left,e,$),a=as(f.right,e,$),f.constant=o.constant&&a.constant,f.toWatch=o.toWatch.concat(a.toWatch),f;case Qr:return o=as(f.left,e,$),a=as(f.right,e,$),f.constant=o.constant&&a.constant,f.toWatch=f.constant?[]:[t],f;case Gr:return c=as(t.test,e,$),l=as(t.alternate,e,$),u=as(t.consequent,e,$),f.constant=c.constant&&l.constant&&u.constant,f.toWatch=f.constant?[]:[t],f;case ti:return f.constant=!1,f.toWatch=[t],f;case Xr:return h=as(t.object,e,$),t.computed&&(d=as(t.property,e,$)),f.constant=h.constant&&(!f.computed||d.constant),f.toWatch=f.constant?[]:[t],f;case Zr:return s=!!t.filter&&function(t,e){const n=t(e);return!n.$stateful}(e,t.callee.name),r=s,i=[],t.arguments.forEach((t=>{m=as(t,e,$),r=r&&m.constant,i.push.apply(i,m.toWatch)})),f.constant=r,f.toWatch=s?i:[f],f;case Wr:return o=as(t.left,e,$),a=as(t.right,e,$),f.constant=o.constant&&a.constant,f.toWatch=[f],f;case ni:return r=!0,i=[],t.elements.forEach((t=>{m=as(t,e,$),r=r&&m.constant,i.push.apply(i,m.toWatch)})),f.constant=r,f.toWatch=i,f;case ii:return r=!0,i=[],t.properties.forEach((t=>{m=as(t.value,e,$),r=r&&m.constant,i.push.apply(i,m.toWatch),t.computed&&(p=as(t.key,e,!1),r=r&&p.constant,i.push.apply(i,p.toWatch))})),f.constant=r,f.toWatch=i,f;case si:case oi:return f.constant=!1,f.toWatch=[],f}}function cs(t){return t.type===ti||t.type===Xr}const ls=dt("$parse"),us={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},hs=new Set("+ - * / % === !== == != < > <= >= && || ! = |".split(" "));class ds{constructor(t){this.options=t}lex(t){for(this.text=t,this.index=0,this.tokens=[];this.index<this.text.length;){const t=this.text.charAt(this.index);if('"'===t||"'"===t)this.readString(t);else if(this.isNumber(t)||"."===t&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdentifierStart&&this.isIdentifierStart(this.peekMultichar()))this.readIdent();else if(this.is(t,"(){}[].,;:?"))this.tokens.push({index:this.index,text:t}),this.index++;else if(this.isWhitespace(t))this.index++;else{const e=t+this.peek(),n=e+this.peek(2),r=hs.has(t),i=hs.has(e),s=hs.has(n);if(r||i||s){const r=s?n:i?e:t;this.tokens.push({index:this.index,text:r,operator:!0}),this.index+=r.length}else this.throwError("Unexpected next character ",this.index,this.index+1)}}return this.tokens}is(t,e){return-1!==e.indexOf(t)}peek(t){const e=t||1;return this.index+e<this.text.length&&this.text.charAt(this.index+e)}isNumber(t){return t>="0"&&t<="9"&&"string"==typeof t}isWhitespace(t){return" "===t||"\r"===t||"\t"===t||"\n"===t||"\v"===t}isIdentifierStart(t){return this.options.isIdentifierStart?this.options.isIdentifierStart(t,this.codePointAt(t)):t>="a"&&t<="z"||t>="A"&&t<="Z"||"_"===t||"$"===t}isIdentifierContinue(t){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(t,this.codePointAt(t)):t>="a"&&t<="z"||t>="A"&&t<="Z"||"_"===t||"$"===t||t>="0"&&t<="9"}codePointAt(t){return 1===t.length?t.charCodeAt(0):(t.charCodeAt(0)<<10)+t.charCodeAt(1)-56613888}peekMultichar(){const t=this.text.charAt(this.index),e=this.peek();if(!e)return t;const n=t.charCodeAt(0),r=e.charCodeAt(0);return n>=55296&&n<=56319&&r>=56320&&r<=57343?t+e:t}isExpOperator(t){return"-"===t||"+"===t||this.isNumber(t)}throwError(t,e,n){n=n||this.index;const r=b(e)?`s ${e}-${this.index} [${this.text.substring(e,n)}]`:` ${n}`;throw ls("lexerr",`Lexer Error: ${t} at column${r} in expression [${this.text}].`)}readNumber(){let t="";const e=this.index;for(;this.index<this.text.length;){const e=this.text.charAt(this.index).toLowerCase();if("."===e||this.isNumber(e))t+=e;else{const n=this.peek();if("e"===e&&this.isExpOperator(n))t+=e;else if(this.isExpOperator(e)&&n&&this.isNumber(n)&&"e"===t.charAt(t.length-1))t+=e;else{if(!this.isExpOperator(e)||n&&this.isNumber(n)||"e"!==t.charAt(t.length-1))break;this.throwError("Invalid exponent")}}this.index++}this.tokens.push({index:e,text:t,constant:!0,value:Number(t)})}readIdent(){const t=this.index;for(this.index+=this.peekMultichar().length;this.index<this.text.length;){const t=this.peekMultichar();if(this.isIdentifierContinue&&!this.isIdentifierContinue(t))break;this.index+=t.length}this.tokens.push({index:t,text:this.text.slice(t,this.index),identifier:!0})}readString(t){const e=this.index;let n="",r=!1;for(this.index++;this.index<this.text.length;){const i=this.text[this.index];if(r)n+="u"===i?this.handleUnicodeEscape():us[i]||i,r=!1;else if("\\"===i)r=!0;else{if(i===t)return this.tokens.push({index:e,text:this.text.slice(e,this.index+1),constant:!0,value:n}),void this.index++;n+=i}this.index++}this.throwError("Unterminated quote",e)}handleUnicodeEscape(){const t=this.text.substring(this.index+1,this.index+5);return t.match(/[\da-f]{4}/i)||this.throwError(`Invalid unicode escape [\\u${t}]`),this.index+=4,String.fromCharCode(parseInt(t,16))}}const ps=dt("$parse"),fs=new Map([["true",!0],["false",!1],["null",null],["undefined",void 0]]);class $s{constructor(t){this.lexer=t,this.selfReferential={this:{type:si},$locals:{type:oi}}}ast(t){this.text=t,this.tokens=this.lexer.lex(t);const e=this.program();return 0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),e}program(){const t=[];let e=!0;for(;e;)this.tokens.length>0&&!this.peek("}",")",";","]")&&t.push(this.expressionStatement()),this.expect(";")||(e=!1);return{type:zr,body:t}}expressionStatement(){return{type:Kr,expression:this.filterChain()}}filterChain(){let t=this.assignment();for(;this.expect("|");)t=this.filter(t);return t}assignment(){let t=this.ternary();if(this.expect("=")){if(!cs(t))throw ps("lval","Trying to assign a value to a non l-value");t={type:Wr,left:t,right:this.assignment(),operator:"="}}return t}ternary(){const t=this.logicalOR();let e,n;return this.expect("?")&&(e=this.assignment(),this.consume(":"))?(n=this.assignment(),{type:Gr,test:t,alternate:e,consequent:n}):t}logicalOR(){let t=this.logicalAND();for(;this.expect("||");)t={type:Qr,operator:"||",left:t,right:this.logicalAND()};return t}logicalAND(){let t=this.equality();for(;this.expect("&&");)t={type:Qr,operator:"&&",left:t,right:this.equality()};return t}equality(){let t,e=this.relational();for(;t=this.expect("==","!=","===","!==");)e={type:Yr,operator:t.text,left:e,right:this.relational()};return e}relational(){let t,e=this.additive();for(;t=this.expect("<",">","<=",">=");)e={type:Yr,operator:t.text,left:e,right:this.additive()};return e}additive(){let t,e=this.multiplicative();for(;t=this.expect("+","-");)e={type:Yr,operator:t.text,left:e,right:this.multiplicative()};return e}multiplicative(){let t,e=this.unary();for(;t=this.expect("*","/","%");)e={type:Yr,operator:t.text,left:e,right:this.unary()};return e}unary(){let t;return(t=this.expect("+","-","!"))?{type:Jr,operator:t.text,prefix:!0,argument:this.unary()}:this.primary()}primary(){let t,e;for(this.expect("(")?(t=this.filterChain(),this.consume(")")):this.expect("[")?t=this.arrayDeclaration():this.expect("{")?t=this.object():vt(this.selfReferential,this.peek().text)?t=structuredClone(this.selfReferential[this.consume().text]):fs.has(this.peek().text)?t={type:ei,value:fs.get(this.consume().text)}:this.peek().identifier?t=this.identifier():this.peek().constant?t=this.constant():this.throwError("not a primary expression",this.peek());e=this.expect("(","[",".");)"("===e.text?(t={type:Zr,callee:t,arguments:this.parseArguments()},this.consume(")")):"["===e.text?(t={type:Xr,object:t,property:this.assignment(),computed:!0},this.consume("]")):"."===e.text?t={type:Xr,object:t,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return t}filter(t){const e=[t],n={type:Zr,callee:this.identifier(),arguments:e,filter:!0};for(;this.expect(":");)e.push(this.assignment());return n}parseArguments(){const t=[];if(")"!==this.peekToken().text)do{t.push(this.filterChain())}while(this.expect(","));return t}identifier(){const t=this.consume();return t.identifier||this.throwError("is not a valid identifier",t),{type:ti,name:t.text}}constant(){return{type:ei,value:this.consume().value}}arrayDeclaration(){const t=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;t.push(this.assignment())}while(this.expect(","));return this.consume("]"),{type:ni,elements:t}}object(){const t=[];let e;if("}"!==this.peekToken().text)do{if(this.peek("}"))break;e={type:ri,kind:"init"},this.peek().constant?(e.key=this.constant(),e.computed=!1,this.consume(":"),e.value=this.assignment()):this.peek().identifier?(e.key=this.identifier(),e.computed=!1,this.peek(":")?(this.consume(":"),e.value=this.assignment()):e.value=e.key):this.peek("[")?(this.consume("["),e.key=this.assignment(),this.consume("]"),e.computed=!0,this.consume(":"),e.value=this.assignment()):this.throwError("invalid key",this.peek()),t.push(e)}while(this.expect(","));return this.consume("}"),{type:ii,properties:t}}throwError(t,e){throw ps("syntax","Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].",e.text,t,e.index+1,this.text,this.text.substring(e.index))}consume(t){if(0===this.tokens.length)throw ps("ueoe","Unexpected end of expression: {0}",this.text);const e=this.expect(t);if(e)return e;this.throwError(`is unexpected, expecting [${t}]`,this.peek())}peekToken(){if(0===this.tokens.length)throw ps("ueoe","Unexpected end of expression: {0}",this.text);return this.tokens[0]}peek(...t){return this.peekAhead(0,...t)}peekAhead(t,...e){if(this.tokens.length>t){const n=this.tokens[t],r=n.text;if(e.includes(r)||!e[0]&&!e[1]&&!e[2]&&!e[3])return n}return!1}expect(...t){const e=this.peek(...t);return!!e&&(this.tokens.shift(),e)}}class ms{constructor(t,e){this.ast=new $s(t),this.astCompiler=new os(e)}parse(t){const{ast:e}=this.getAst(t),n=this.astCompiler.compile(e);return n.literal=function(t){return 0===t.body.length||1===t.body.length&&(t.body[0].expression.type===ei||t.body[0].expression.type===ni||t.body[0].expression.type===ii)}(e),n.constant=function(t){return t.constant}(e),n}getAst(t){return t=t.trim(),{ast:this.ast.ast(t)}}}function gs(){const t=Object.create(null);let e,n;this.setIdentifierFns=function(t,r){return e=t,n=r,this},this.$get=["$filter",function(r){const i={isIdentifierStart:O(e)&&e,isIdentifierContinue:O(n)&&n};return function(e,n){let o,a;switch(typeof e){case"string":if(a=e=e.trim(),o=t[a],!o){const n=new ds(i);o=new ms(n,r).parse(e),t[a]=ys(o)}return s(o,n);case"function":return s(e,n);default:return s((()=>{}),n)}};function s(t,e){if(!e)return t;t.$$interceptor&&(e=function(t,e){function n(n){return e(t(n))}return n.$stateful=t.$stateful||e.$stateful,n.$$pure=t.$$pure&&e.$$pure,n}(t.$$interceptor,e),t=t.$$intercepted);let n=!1;const r=function(r,i,s,o){const a=n&&o?o[0]:t(r,i,s,o);if(r?.getter)return;const c=O(a)?a():a;return e(p(c)?c.$target:c)};return r.$$intercepted=t,r.$$interceptor=e,r.literal=t.literal,r.oneTime=t.oneTime,r.constant=t.constant,r.decoratedNode=t.decoratedNode,e.$stateful||(n=!t.inputs,r.inputs=t.inputs?t.inputs:[t],e.$$pure||(r.inputs=r.inputs.map((function(t){return 2===t.isPure?function(e){return t(e)}:t})))),ys(r)}}]}function vs(t,e,n,r){const i=t.$watch((()=>(i(),r(t))),e,n);return i}function ys(t){return t.constant?t.$$watchDelegate=vs:t.inputs&&(t.$$watchDelegate=bs),t}function bs(t,e,n,r){let i,s=r.inputs;if(1===s.length){let o=ws,a=s[0];return t.$watch((t=>{const e=a(t);return ws(e,o,a.isPure)||(i=r(t,void 0,[e]),o=e&&Es(e)),i}),e,n)}{const o=[],a=[];for(let t=0,e=s.length;t<e;t++)o[t]=ws,a[t]=null;return t.$watch((t=>{let e=!1;for(let n=0,r=s.length;n<r;n++){const r=s[n](t);(e||(e=!ws(r,o[n],s[n].isPure)))&&(a[n]=r,o[n]=r&&Es(r))}return e&&(i=r(t,void 0,a)),i}),e,n)}}function ws(t,e,n){return null==t||null==e?t===e:!("object"==typeof t&&"object"==typeof(t=Es(t))&&!n)&&(t===e||t!=t&&e!=e)}function Es(t){return O(t.valueOf)?t.valueOf():{}.constructor.prototype.valueOf.call(t)}const Cs=dt("$interpolate");function Ss(t,e){throw Cs("interr","Can't interpolate: {0}\n{1}",t,e.toString())}class xs{constructor(){this.startSymbol="{{",this.endSymbol="}}"}$get=["$parse","$sce",function(t,e){const n=this,r=n.startSymbol.length,i=n.endSymbol.length,s=new RegExp(n.startSymbol.replace(/./g,a),"g"),o=new RegExp(n.endSymbol.replace(/./g,a),"g");function a(t){return`\\\\\\${t}`}function c(t){return t.replace(s,n.startSymbol).replace(o,n.endSymbol)}function l(s,o,a,l){const u=a===e.URL||a===e.MEDIA_URL;if(!s.length||-1===s.indexOf(n.startSymbol)){if(o)return;let t=c(s);u&&(t=e.getTrusted(a,t));const n=()=>t;return n.exp=s,n.expressions=[],n.$$watchDelegate=vs,n}let h,d;l=!!l;let p=0;const f=[];let $;const m=s.length;let g;const v=[],w=[];let E;for(;p<m;){if(-1===(h=s.indexOf(n.startSymbol,p))||-1===(d=s.indexOf(n.endSymbol,h+r))){p!==m&&v.push(c(s.substring(p)));break}p!==h&&v.push(c(s.substring(p,h))),g=s.substring(h+r,d),f.push(g),p=d+i,w.push(v.length),v.push("")}E=1===v.length&&1===w.length;const C=u&&E?void 0:function(t){try{return t=a&&!u?e.getTrusted(a,t):e.valueOf(t),l&&!b(t)?t:G(t)}catch(t){Ss(s,t)}};if($=f.map((e=>t(e,C))),!o||f.length){const t=function(t){for(let e=0,n=f.length;e<n;e++){if(l&&y(t[e]))return;v[w[e]]=t[e]}return u?e.getTrusted(a,E?v[0]:v.join("")):(a&&v.length>1&&function(t){throw Cs("noconcat","Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required. See http://docs.angularjs.org/api/ng.$sce",t)}(s),v.join(""))};return M(((e,n)=>{let r=0;const i=f.length,o=new Array(i);try{for(;r<i;r++){if(n){const s=f[r].trim();e.$watch(s,(()=>{let r=new Array(i),s=0;for(;s<i;s++){let t=(0,$[s])(e);r[s]=t}n(t(r))}))}o[r]=$[r](e)}return t(o)}catch(t){Ss(s,t)}}),{exp:s,expressions:f,$$watchDelegate(e,n){let r;return e.$watch($,(function(i,s){const o=t(i);n.call(this,o,i!==s?r:o,e),r=o}))}})}}return l.startSymbol=function(){return n.startSymbol},l.endSymbol=function(){return n.endSymbol},l}]}let As={},ks="";function Os(t){try{return decodeURIComponent(t)}catch{return t}}const _s="application/json",Ts={"Content-Type":`${_s};charset=utf-8`},js=/^\[|^\{(?!\{)/,Ls={"[":/]$/,"{":/}$/},Rs=/^\)]\}',?\n/,Ns=dt("$http");function Vs(t){return w(t)?A(t)?t.toISOString():X(t):t}function Ms(){this.$get=function(){return function(t){if(!t)return"";const e=[];return Object.keys(t).sort().forEach((n=>{const r=t[n];null===r||y(r)||O(r)||(Array.isArray(r)?r.forEach((t=>{e.push(`${it(n)}=${it(Vs(t))}`)})):e.push(`${it(n)}=${it(Vs(r))}`))})),e.join("&")}}}function Ps(t,e){if(E(t)){const r=t.replace(Rs,"").trim();if(r){const i=e("Content-Type"),s=i&&0===i.indexOf(_s);if(s||function(t){const e=t.match(js);return e&&Ls[e[0]].test(t)}(r))try{t=E(n=r)?JSON.parse(n):n}catch(e){if(!s)return t;throw Ns("baddata",'Data must be a valid JSON object. Received: "{0}". Parse error: "{1}"',t,e)}}}var n;return t}function Ds(t){const e=Object.create(null);let n;function r(t,n){t&&(e[t]=e[t]?`${e[t]}, ${n}`:n)}return E(t)?t.split("\n").forEach((t=>{n=t.indexOf(":"),r(t.substring(0,n).trim().toLowerCase(),N(t.substring(n+1)))})):w(t)&&Object.entries(t).forEach((([t,e])=>{r(g(t),N(e))})),e}function Us(t){let e;return function(n){if(e||(e=Ds(t)),n){let t=e[g(n)];return void 0===t&&(t=null),t}return e}}function Is(t,e,n,r){return O(r)?r(t,e,n):(Array.isArray(r)&&r.forEach((r=>{t=r(t,e,n)})),t)}function Hs(t){return t>=200&&t<300}function Fs(){const t=this.defaults={transformResponse:[Ps],transformRequest:[function(t){return!w(t)||(e=t,"[object File]"===toString.call(e))||function(t){return"[object Blob]"===toString.call(t)}(t)||function(t){return"[object FormData]"===toString.call(t)}(t)?t:X(t);var e}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ot(Ts),put:ot(Ts),patch:ot(Ts)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"};let e=!1;this.useApplyAsync=function(t){return b(t)?(e=!!t,this):e};const n=this.interceptors=[],r=this.xsrfTrustedOrigins=[];Object.defineProperty(this,"xsrfWhitelistedOrigins",{get(){return this.xsrfTrustedOrigins},set(t){this.xsrfTrustedOrigins=t}}),this.$get=["$browser","$httpBackend","$rootScope","$injector","$sce",function(i,s,o,a,c){const l=new Map;t.paramSerializer=E(t.paramSerializer)?a.get(t.paramSerializer):t.paramSerializer;const u=[];n.forEach((t=>{u.unshift(E(t)?a.get(t):a.invoke(t))}));const h=function(t){const e=[je].concat(t.map(Re));return function(t){const n=Re(t);return e.some(Ve.bind(null,n))}}(r);function d(n){if(!w(n))throw dt("$http")("badreq","Http request configuration must be an object. Received: {0}",n);if(!E(c.valueOf(n.url)))throw dt("$http")("badreq","Http request configuration url must be a string or a $sce trusted object. Received: {0}",n.url);const r=M({method:"get",transformRequest:t.transformRequest,transformResponse:t.transformResponse,paramSerializer:t.paramSerializer},n);var o;r.headers=function(e){let n=t.headers,r=M({},e.headers);return n=M({},n.common,n[g(e.method)]),Object.keys(n).forEach((t=>{const e=g(t);Object.keys(r).some((t=>g(t)===e))||(r[t]=n[t])})),function(t,e){let n;const r={};return Object.entries(t).forEach((([t,i])=>{O(i)?(n=i(e),null!=n&&(r[t]=n)):r[t]=i})),r}(r,ot(e))}(n),r.method=E(o=r.method)?o.toUpperCase():o,r.paramSerializer=E(r.paramSerializer)?a.get(r.paramSerializer):r.paramSerializer,i.$$incOutstandingRequestCount("$http");const p=[],f=[];let $=Promise.resolve(r);return u.forEach((t=>{(t.request||t.requestError)&&p.unshift(t.request,t.requestError),(t.response||t.responseError)&&f.push(t.response,t.responseError)})),$=m($,p),$=$.then((function(n){const{headers:r}=n,i=Is(n.data,Us(r),void 0,n.transformRequest);y(i)&&Object.keys(r).forEach((t=>{"content-type"===g(t)&&delete r[t]}));y(n.withCredentials)&&!y(t.withCredentials)&&(n.withCredentials=t.withCredentials);return function(n,r){const{promise:i,resolve:o,reject:a}=Promise.withResolvers();let u,p;const f=n.headers;let{url:$}=n;E($)||($=c.valueOf($));$=function(t,e){e.length>0&&(t+=(-1===t.indexOf("?")?"?":"&")+e);return t}($,n.paramSerializer(n.params)),d.pendingRequests.push(n),i.then(S,S),(n.cache||t.cache)&&!1!==n.cache&&"GET"===n.method&&(u=w(n.cache)?n.cache:w(t.cache)?t.cache:l);u&&(p=u.get($),b(p)?R(p)?p.then(C,C):Array.isArray(p)?v(p[1],p[0],ot(p[2]),p[3],p[4]):v(p,200,{},"OK","complete"):u.set($,i));if(y(p)){const e=h(n.url)?function(){let t,e,n,r,i;const s=document.cookie;if(s!==ks)for(ks=s,t=ks.split("; "),As={},n=0;n<t.length;n++)e=t[n],r=e.indexOf("="),r>0&&(i=Os(e.substring(0,r)),y(As[i])&&(As[i]=Os(e.substring(r+1))));return As}()[n.xsrfCookieName||t.xsrfCookieName]:void 0;e&&(f[n.xsrfHeaderName||t.xsrfHeaderName]=e),s(n.method,$,r,g,f,n.timeout,n.withCredentials,n.responseType,m(n.eventHandlers),m(n.uploadEventHandlers))}return i;function m(t){if(t){const n={};return Object.entries(t).forEach((([t,r])=>{n[t]=function(t){function n(){r(t)}e?setTimeout((()=>n())):n()}})),n}}function g(t,n,r,i,s){function o(){v(n,t,r,i,s)}u&&(Hs(t)?u.set($,[t,n,Ds(r),i,s]):u.delete($)),e?setTimeout(o):o()}function v(t,e,r,i,s){(Hs(e=e>=-1?e:0)?o:a)({data:t,status:e,headers:Us(r),config:n,statusText:i,xhrStatus:s})}function C(t){v(t.data,t.status,ot(t.headers()),t.statusText,t.xhrStatus)}function S(){const t=d.pendingRequests.indexOf(n);-1!==t&&d.pendingRequests.splice(t,1)}}(n,i).then(v,v)})),$=m($,f),$=$.finally((function(){i.$$completeOutstandingRequest((()=>{}),"$http")})),$;function m(t,e){for(let n=0,r=e.length;n<r;){const r=e[n++],i=e[n++];t=t.then(r,i)}return e.length=0,t}function v(t){const e=M({},t);return e.data=Is(t.data,t.headers,t.status,r.transformResponse),Hs(t.status)?e:Promise.reject(e)}}return d.pendingRequests=[],function(...t){t.forEach((t=>{d[t]=function(e,n){return d(M({},n||{},{method:t,url:e}))}}))}("get","delete","head"),function(...t){t.forEach((t=>{d[t]=function(e,n,r){return d(M({},r||{},{method:t,url:e,data:n}))}}))}("post","put","patch"),d.defaults=t,d}]}class qs{constructor(){this.$get=["$browser",function(t){return function(t){return function(e,n,r,i,s,o,a,c,l,u){n=n||t.url();const h=new XMLHttpRequest;let d,p=!1;if(h.open(e,n,!0),s&&Object.entries(s).forEach((([t,e])=>{b(e)&&h.setRequestHeader(t,e)})),h.onload=function(){const t=h.statusText||"";let e=h.status;0===e&&(e=h.response?200:"file"===Re(n).protocol?404:0),$(i,e,h.response,h.getAllResponseHeaders(),t,"complete")},h.onerror=function(){$(i,-1,null,null,"","error")},h.ontimeout=function(){$(i,-1,null,null,"","timeout")},h.onabort=function(){$(i,-1,null,null,"",p?"timeout":"abort")},l&&l&&Object.entries(l).forEach((([t,e])=>{h.addEventListener(t,e)})),u&&Object.entries(u).forEach((([t,e])=>{h.upload.addEventListener(t,e)})),a&&(h.withCredentials=!0),c)try{h.responseType=c}catch(t){if("json"!==c)throw t}function f(t){p="timeout"===t,h&&h.abort()}function $(t,e,n,r,i,s){b(d)&&clearTimeout(d),t(e,n,r,i,s)}h.send(y(r)?null:r),o>0?d=setTimeout((()=>{f("timeout")}),o):R(o)&&o.then((()=>{f(b(o.$$timeoutId)?"timeout":"abort")}))}}(t)}]}}const Bs={http:80,https:443,ftp:21},zs=/^([^?#]*)(\?([^#]*))?(#(.*))?$/,Ks=dt("$location");class Ws{constructor(t,e){const n=Re(t);this.appBase=t,this.appBaseNoFile=e,this.$$absUrl="",this.$$html5=!1,this.$$replace=!1,this.$$protocol=n.protocol,this.$$host=n.hostname,this.$$port=P(n.port)||Bs[n.protocol]||null,this.$$path=void 0,this.$$hash=void 0,this.$$urlUpdatedByLocation=!1}absUrl(){return this.$$absUrl}url(t){if(y(t))return this.$$url;const e=zs.exec(t);return(e[1]||""===t)&&this.path(decodeURIComponent(e[1])),(e[2]||e[1]||""===t)&&this.search(e[3]||""),this.hash(e[5]||""),this}protocol(){return this.$$protocol}host(){return this.$$host}port(){return this.$$port}path(t){if(y(t))return this.$$path;let e=null!==t?t.toString():"";return this.$$path="/"===e.charAt(0)?e:`/${e}`,this.$$compose(),this}hash(t){return y(t)?this.$$hash:(this.$$hash=null!==t?t.toString():"",this.$$compose(),this)}replace(){return this.$$replace=!0,this}search(t,e){switch(arguments.length){case 0:return this.$$search;case 1:if(E(t)||x(t))t=t.toString(),this.$$search=et(t);else{if(!w(t))throw Ks("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");t=structuredClone(t,{}),Object.entries(t).forEach((([e,n])=>{null==n&&delete t[e]})),this.$$search=t}break;default:y(e)||null===e?delete this.$$search[t]:this.$$search[t]=e}return this.$$compose(),this}$$compose(){this.$$url=function(t,e,n){const r=function(t){const e=[];return t&&Object.entries(t).forEach((([t,n])=>{Array.isArray(n)?n.forEach((n=>{e.push(it(t,!0)+(!0===n?"":`=${it(n,!0)}`))})):e.push(it(t,!0)+(!0===n?"":`=${it(n,!0)}`))})),e.length?e.join("&"):""}(e),i=n?`#${rt(n)}`:"";return function(t){const e=t.split("/");let n=e.length;for(;n--;)e[n]=rt(e[n].replace(/%2F/g,"/"));return e.join("/")}(t)+(r?`?${r}`:"")+i}(this.$$path,this.$$search,this.$$hash),this.$$absUrl=this.$$normalizeUrl(this.$$url),this.$$urlUpdatedByLocation=!0}$$normalizeUrl(t){throw new Error(`Method not implemented ${t}`)}state(t){if(!arguments.length)return this.$$state;if(!(this instanceof Gs&&this.$$html5))throw Ks("nostate","History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API");return this.$$state=y(t)?null:t,this.$$urlUpdatedByLocation=!0,this}$$parseLinkUrl(t,e){throw new Error(`Method not implemented ${t} ${e}`)}$$parse(t){throw new Error(`Method not implemented ${t}`)}}class Gs extends Ws{constructor(t,e,n){super(t,e),this.$$html5=!0,this.basePrefix=n||""}$$parse(t){const e=Xs(this.appBaseNoFile,t);if(!E(e))throw Ks("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',t,this.appBaseNoFile);Js(e,this,!0),this.$$path||(this.$$path="/"),this.$$compose()}$$normalizeUrl(t){return this.appBaseNoFile+t.substring(1)}$$parseLinkUrl(t,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;let n,r,i;return b(n=Xs(this.appBase,t))?(r=n,i=this.basePrefix&&b(n=Xs(this.basePrefix,n))?this.appBaseNoFile+(Xs("/",n)||n):this.appBase+r):b(n=Xs(this.appBaseNoFile,t))?i=this.appBaseNoFile+n:this.appBaseNoFile===`${t}/`&&(i=this.appBaseNoFile),i&&this.$$parse(i),!!i}}class Qs extends Ws{constructor(t,e,n){super(t,e),this.hashPrefix=n}$$parse(t){const e=Xs(this.appBase,t)||Xs(this.appBaseNoFile,t);let n;y(e)||"#"!==e.charAt(0)?this.$$html5?n=e:(n="",y(e)&&(this.appBase=t,this.replace())):(n=Xs(this.hashPrefix,e),y(n)&&(n=e)),Js(n,this,!1),this.$$path=function(t,e,n){const r=/^\/[A-Z]:(\/.*)/;let i;Zs(e,n)&&(e=e.replace(n,""));if(r.exec(e))return t;return i=r.exec(t),i?i[1]:t}(this.$$path,n,this.appBase),this.$$compose()}$$normalizeUrl(t){return this.appBase+(t?this.hashPrefix+t:"")}$$parseLinkUrl(t){return to(this.appBase)===to(t)&&(this.$$parse(t),!0)}}class Ys{constructor(){this.hashPrefixConf="!",this.html5ModeConf={enabled:!1,requireBase:!0,rewriteLinks:!0}}setHashPrefix(t){this.hashPrefixConf=t}getHashPrefix(){return this.hashPrefixConf}setHtml5Mode(t){if(L(t)&&(this.html5ModeConf.enabled=t),w(t)){const e=t;b(e.enabled)&&L(e.enabled)&&(this.html5ModeConf.enabled=e.enabled),b(e.requireBase)&&L(e.requireBase)&&(this.html5ModeConf.requireBase=e.requireBase),b(e.rewriteLinks)&&(L(e.rewriteLinks)||E(e.rewriteLinks))&&(this.html5ModeConf.rewriteLinks=e.rewriteLinks)}}getHtml5Mode(){return this.html5ModeConf}$get=["$rootScope","$browser","$rootElement",(t,e,n)=>{let r,i;const s=e.baseHref(),o=e.url();let a;if(this.getHtml5Mode().enabled){if(!s&&this.getHtml5Mode().requireBase)throw Ks("nobase","$location in HTML5 mode requires a <base> tag to be present!");a=(c=o).substring(0,c.indexOf("/",c.indexOf("//")+2))+(s||"/"),i=Gs}else a=to(o),i=Qs;var c;const l=function(t){return t.substring(0,to(t).lastIndexOf("/")+1)}(a);r=new i(a,l,`#${this.getHashPrefix()}`),r.$$parseLinkUrl(o,o),r.$$state=e.state();const u=/^\s*(javascript|mailto):/i;function h(t,n){const i=r.url(),s=r.$$state;try{e.url(t,n),r.$$state=e.state()}catch(t){throw r.url(i),r.$$state=s,t}}n.addEventListener("click",(t=>{const e=this.getHtml5Mode().rewriteLinks;if(!e||t.ctrlKey||t.metaKey||t.shiftKey||2===t.which||2===t.button)return;let i=t.target;for(;"a"!==i.nodeName.toLowerCase();)if(i===n||!(i=i.parentElement))return;if(E(e)&&y(i.getAttribute(e)))return;let s=i.href;const o=i.getAttribute("href")||i.getAttribute("xlink:href");if(w(s)&&"[object SVGAnimatedString]"===s.toString()){s=Re(s.animVal).href}u.test(s)||!s||i.getAttribute("target")||t.defaultPrevented||r.$$parseLinkUrl(s,o)&&t.preventDefault()})),r.absUrl()!==o&&e.url(r.absUrl(),!0);let d=!0;e.onUrlChange(((e,n)=>{Zs(e,l)?t.$evalAsync((()=>{const i=r.absUrl(),s=r.$$state;let o;r.$$parse(e),r.$$state=n,o=t.$broadcast("$locationChangeStart",e,i,n,s).defaultPrevented,r.absUrl()===e&&(o?(r.$$parse(i),r.$$state=s,h(i,s)):(d=!1,f(i,s)))})):window.location.href=e}));const p=()=>{if(d||r.$$urlUpdatedByLocation){r.$$urlUpdatedByLocation=!1;const s=e.url(),o=r.absUrl(),a=e.state(),c=!((n=s)===(i=o)||Re(n).href===Re(i).href)||r.$$html5&&a!==r.$$state;(d||c)&&(d=!1,setTimeout((()=>{const e=r.absUrl(),{defaultPrevented:n}=t.$broadcast("$locationChangeStart",e,s,r.$$state,a);r.absUrl()===e&&(n?(r.$$parse(s),r.$$state=a):(c&&h(e,a===r.$$state?null:r.$$state),f(s,a)))})))}var n,i;r.$$replace=!1};return p(),t.$on("$updateBrowser",p),r;function f(e,n){t.$broadcast("$locationChangeSuccess",r.absUrl(),e,r.$$state,n)}}]}function Js(t,e,n){if(/^\s*[\\/]{2,}/.test(t))throw Ks("badpath",'Invalid url "{0}".',t);const r="/"!==t.charAt(0);r&&(t=`/${t}`);const i=Re(t),s=r&&"/"===i.pathname.charAt(0)?i.pathname.substring(1):i.pathname;e.$$path=function(t,e){const n=t.split("/");let r=n.length;for(;r--;)n[r]=decodeURIComponent(n[r]),e&&(n[r]=n[r].replace(/\//g,"%2F"));return n.join("/")}(s,n),e.$$search=et(i.search),e.$$hash=decodeURIComponent(i.hash),e.$$path&&"/"!==e.$$path.charAt(0)&&(e.$$path=`/${e.$$path}`)}function Zs(t,e){return t.slice(0,e.length)===e}function Xs(t,e){if(Zs(e,t))return e.substring(t.length)}function to(t){const e=t.indexOf("#");return-1===e?t:t.substring(0,e)}class eo{constructor(){this.debug=!1,this._override=null}setLogger(t){this._override=t}formatError(t){return k(t)&&(t.stack?t=t.message&&-1===t.stack.indexOf(t.message)?`Error: ${t.message}\n${t.stack}`:t.stack:t.sourceURL&&(t=`${t.message}\n${t.sourceURL}:${t.line}`)),t}consoleLog(t){const e=window.console||{},n=e[t]||e.log||(()=>{});return(...t)=>{const r=t.map((t=>this.formatError(t)));return n.apply(e,r)}}$get(){return this._override?this._override():{log:this.consoleLog("log"),info:this.consoleLog("info"),warn:this.consoleLog("warn"),error:this.consoleLog("error"),debug:(()=>{const t=this.consoleLog("debug");return(...e)=>{this.debug&&t.apply(this,e)}})()}}}let no,ro,io=0;const so=[];class oo{constructor(){this.rootScope=ao()}$get=["$exceptionHandler","$parse",(t,e)=>(ro=t,no=e,this.rootScope)]}function ao(t={},e){if(C(t)||!0===t[co]||!0===(t.constructor&&t.constructor[co]))return t;if("object"==typeof t){const n=new Proxy(t,e||new lo);for(const e in t)if(vt(t,e))try{if(t.constructor.$nonscope&&Array.isArray(t.constructor.$nonscope)&&t.constructor.$nonscope.includes(e)||t.$nonscope&&Array.isArray(t.$nonscope)&&t.$nonscope.includes(e))continue;t[e]=ao(t[e],n.$handler)}catch{}return n}return t}const co="$nonscope";class lo{constructor(t,e){this.context=t?t.context?t.context:t:void 0,this.watchers=t?t.watchers:new Map,this.$$listeners=new Map,this.foreignListeners=t?t.foreignListeners:new Map,this.foreignProxies=t?t.foreignProxies:new Set,this.objectListeners=t?t.objectListeners:new WeakMap,this.functionListeners=t?t.functionListeners:new Map,this.$proxy=null,this.$handler=this,this.$target=null,this.$value=null,this.$children=[],this.$id=(io+=1,io),this.$root=t?t.$root:this,this.$parent=e||(this.$root===this?null:t),this.$$asyncQueue=[],this.filters=[],this.$$destroyed=!1,this.scheduled=[]}set(t,e,n,r){if("undefined"===e)throw new Error("Attempting to set undefined property");if(t.constructor?.$nonscope&&Array.isArray(t.constructor.$nonscope)&&t.constructor.$nonscope.includes(e)||t.$nonscope&&Array.isArray(t.$nonscope)&&t.$nonscope.includes(e))return t[e]=n,!0;this.$proxy=r,this.$target=t;const i=t[e];if(void 0!==i&&Number.isNaN(i)&&Number.isNaN(n))return!0;if(i&&i[d]){if(Array.isArray(n)){if(i!==n){const t=this.watchers.get(e);t&&this.#t(t);const n=this.foreignListeners.get(e);n&&this.#t(n)}return this.objectListeners.get(t[e])&&this.objectListeners.delete(t[e]),t[e]=ao(n,this),this.objectListeners.set(t[e],[e]),!0}if(w(n)){if(vt(t,e)&&Object.keys(i).filter((t=>!n[t])).forEach((t=>{delete i[t]})),i!==n){const t=this.watchers.get(e);t&&this.#t(t);const r=this.foreignListeners.get(e);r&&this.#t(r),this.#e(n)}return t[e]=ao(n,this),!0}if(y(n)){let n=!1;if(Object.keys(i.$target).forEach((t=>{i.$target[t]?.[d]&&(n=!0),delete i[t]})),t[e]=void 0,!n){let t=this.watchers.get(e);t&&this.#t(t)}return!0}if(b(n)){t[e]=n;let i=this.watchers.get(e);if(i&&this.#t(i),Array.isArray(t)&&this.objectListeners.has(r)&&"length"!==e){this.objectListeners.get(r).forEach((t=>{const e=this.watchers.get(t);e&&this.#t(e)}))}return!0}return!0}if(y(t[e])&&p(n)&&(this.foreignProxies.add(n),t[e]=n,!this.watchers.has(e)))return!0;if(y(n)?t[e]=n:t[e]=ao(n,this),i!==n){let r=this.$target,s=[];if(y(i)&&w(t[e])){this.objectListeners.has(t[e])||this.objectListeners.set(t[e],[e]);for(const t of Object.keys(n))this.watchers.get(t)?.forEach((t=>s.push(t))),r=n}Array.isArray(t)&&this.watchers.get("length")?.forEach((t=>s.push(t))),this.watchers.get(e)?.forEach((t=>s.push(t))),s.length>0&&this.#t(s,(t=>t.filter((t=>{if(!t.watchProp)return!0;const e=t.watchProp.split(".").slice(0,-1).join("."),n=no(e)(t.originalTarget)?.$handler;return r===n?.$target}))));let o=this.foreignListeners.get(e);!o&&this.$parent?.foreignListeners&&(o=this.$parent.foreignListeners.get(e)),o&&(this.$target.$$hashKey&&(o=o.filter((t=>!!t.originalTarget.$$hashKey&&t.originalTarget.$$hashKey==this.$target.$$hashKey))),this.#t(o))}if(this.objectListeners.has(r)&&"length"!==e){this.objectListeners.get(r).forEach((t=>{const e=this.watchers.get(t);e&&this.scheduled!==e&&this.#t(e)}))}return!0}get(t,e,n){if("$$watchersCount"===e)return function(t){const e=uo(t).add(t.$id);return Array.from(t.watchers.values()).reduce(((t,n)=>t+n.reduce(((t,n)=>t+(e.has(n.scopeId)?1:0)),0)),0)}(this);if(e===d)return!0;if(t[e]&&p(t[e])?this.$proxy=t[e]:this.$proxy=n,this.propertyMap={$watch:this.$watch.bind(this),$new:this.$new.bind(this),$newIsolate:this.$newIsolate.bind(this),$destroy:this.$destroy.bind(this),$eval:this.$eval.bind(this),$apply:this.$apply.bind(this),$evalAsync:this.$evalAsync.bind(this),$postUpdate:this.$postUpdate.bind(this),$isRoot:this.#n.bind(this),$target:t,$proxy:this.$proxy,$on:this.$on.bind(this),$emit:this.$emit.bind(this),$broadcast:this.$broadcast.bind(this),$transcluded:this.$transcluded.bind(this),$handler:this,$parent:this.$parent,$root:this.$root,$children:this.$children,$id:this.$id,$merge:this.$merge.bind(this),$getById:this.$getById.bind(this)},Array.isArray(t)&&["pop","shift","unshift"].includes(e)){if(this.objectListeners.has(n)){this.objectListeners.get(this.$proxy).forEach((t=>{const e=this.watchers.get(t);e&&(this.scheduled=e)}))}"unshift"===e&&this.#t(this.scheduled)}return vt(this.propertyMap,e)?(this.$target=t,this.propertyMap[e]):t[e]}deleteProperty(t,e){if(t[e]&&t[e][d]){t[e]=void 0;let n=this.watchers.get(e);if(n&&this.#t(n),this.objectListeners.has(this.$proxy)){this.objectListeners.get(this.$proxy).forEach((t=>{n=this.watchers.get(t),n&&this.#t(n)}))}return this.scheduled&&(this.#t(this.scheduled),this.scheduled=[]),!0}if(delete t[e],this.objectListeners.has(this.$proxy)){this.objectListeners.get(this.$proxy).forEach((t=>{const e=this.watchers.get(t);e&&this.#t(e)}))}else{const n=this.watchers.get(e);n&&this.#t(n,t[e])}return!0}#e(t){y(t)||Object.keys(t).forEach((e=>{const n=this.watchers.get(e);n&&this.#t(n),w(t[e])&&this.#e(t[e])}))}#t(t,e=t=>t){Promise.resolve().then((()=>{let n=0,r=e(t);for(;n<r.length;){const t=r[n];t.foreignListener?t.foreignListener.#r(t,this.$target):this.#r(t,this.$target),n++}}))}$watch(t,e,n=!1){at(E(t),"Watched property required"),t=t.trim();const r=no(t);if(r.constant)return e&&Promise.resolve().then((()=>{let t=r();for(;O(t);)t=t();e(t,this.$target)})),()=>{};const i={originalTarget:this.$target,listenerFn:e,watchFn:r,scopeId:this.$id,id:m(),property:[]};let s=r.decoratedNode.body[0].expression.name,o=[],a=r.decoratedNode.body[0].expression.type;switch(a){case zr:case Kr:throw new Error("Unsupported type "+a);case Wr:if(!e){let t=r(this.$target);for(;O(t);)t=t(this.$target);return Promise.resolve().then(t),()=>{}}s=r.decoratedNode.body[0].expression.left.name;break;case Gr:s=r.decoratedNode.body[0].expression.toWatch[0]?.test?.name,i.property.push(s);break;case Qr:{let t=[];return t.push(r.decoratedNode.body[0].expression.left.toWatch[0]?.name),t.push(r.decoratedNode.body[0].expression.right.toWatch[0]?.name),t.forEach((t=>{this.#i(t,i)})),()=>{t.forEach((t=>{this.#s(t,i.id)}))}}case Yr:{let t=r.decoratedNode.body[0].expression.toWatch[0];if(s=t.property?t.property.name:t.name,!s)throw new Error("Unable to determine key");i.property.push(s);break}case Jr:{let t=r.decoratedNode.body[0].expression.toWatch[0];if(s=t.property?t.property.name:t.name,!s)throw new Error("Unable to determine key");i.property.push(s);break}case Zr:{let t=[];return r.decoratedNode.body[0].expression.toWatch.forEach((e=>{b(e)&&t.push(e.name)})),t.forEach((t=>{this.#i(t,i),this.#t([i])})),()=>{t.forEach((t=>{this.#s(t,i.id)}))}}case Xr:if(s=r.decoratedNode.body[0].expression.property.name,s||(s=r.decoratedNode.body[0].expression.object.name),i.property.push(s),t!==s){i.watchProp=t;let e=no(t.split(".").slice(0,-1).join("."))(i.originalTarget);if(e&&this.foreignProxies.has(e))return e.$handler.#o(s,i),e.$handler.#t([i]),()=>e.$handler.#s(s,i.id)}break;case ti:i.property.push(r.decoratedNode.body[0].expression.name);break;case ei:throw new Error("Unsupported type "+a);case ni:{let t=r.decoratedNode.body[0].expression.elements.map((t=>11===t.type?t.value:t.toWatch[0].name)).filter((t=>!!t));return t.forEach((t=>{this.#i(t,i),this.#t([i])})),()=>{t.forEach((t=>{this.#s(t,i.id)}))}}case ri:throw new Error("Unsupported type "+a);case ii:r.decoratedNode.body[0].expression.properties.forEach((t=>{!1===t.key.isPure?(o.push(t.key.name),i.property.push(s)):t.value.name?(o.push(t.value.name),i.property.push(s)):(s=r.decoratedNode.body[0].expression.properties[0].key.name,i.property.push(s))}));break;case si:case oi:case ai:throw new Error("Unsupported type "+a)}let c=i.watchFn(this.$target);return w(c)&&this.objectListeners.set(c,[s]),o.length>0?o.forEach((t=>{this.#i(t,i)})):this.#i(s,i),n||this.#t([i]),()=>{if(o.length>0){let t=!0;return o.forEach((e=>{this.#s(e,i.id)||(t=!1)})),t}return this.#s(s,i.id)}}$new(t){let e;t?(Object.getPrototypeOf(t)===Object.prototype||Object.getPrototypeOf(t)==this.$target?Object.setPrototypeOf(t,this.$target):Object.setPrototypeOf(Object.getPrototypeOf(t)||t,this.$target),e=t):e=Object.create(this.$target);const n=new Proxy(e,new lo(this));return this.$children.push(n),n}$newIsolate(t){let e=t?Object.create(t):Object.create(null);const n=new Proxy(e,new lo(this,this.$root));return this.$children.push(n),n}$transcluded(t){let e=Object.create(this.$target);const n=new Proxy(e,new lo(this,t));return this.$children.push(n),n}#i(t,e){this.watchers.has(t)?this.watchers.get(t).push(e):this.watchers.set(t,[e])}#o(t,e){this.foreignListeners.has(t)?this.foreignListeners.get(t).push(e):this.foreignListeners.set(t,[e])}#s(t,e){const n=this.watchers.get(t);if(!n)return!1;const r=n.findIndex((t=>t.id===e));return-1!==r&&(n.splice(r,1),n.length?this.watchers.set(t,n):this.watchers.delete(t),!0)}$eval(t,e){const n=no(t)(this.$target,e);return y(n)||null===n||n.name===Object.hasOwnProperty.name?n:O(n)?n():Number.isNaN(n)?0:n}async $evalAsync(t,e){return await this.$eval(t,e)}$merge(t){Object.entries(t).forEach((([t,e])=>{this.set(this.$target,t,e,this.$proxy)}))}$apply(t){try{return no(t)(this.$proxy)}catch(t){ro(t)}}$on(t,e){let n=this.$$listeners.get(t);return n||(n=[],this.$$listeners.set(t,n)),n.push(e),()=>{const r=n.indexOf(e);-1!==r&&(n.splice(r,1),0==n.length&&this.$$listeners.delete(t))}}$emit(t,...e){return this.#a({name:t,event:void 0,broadcast:!1},...e)}$broadcast(t,...e){return this.#a({name:t,event:void 0,broadcast:!0},...e)}#a({name:t,event:e,broadcast:n},...r){if(!n&&!this.$$listeners.has(t))return this.$parent?this.$parent.$handler.#a({name:t,event:e,broadcast:n},...r):void 0;e?e.currentScope=this.$target:e=e||{name:t,targetScope:this.$target,currentScope:this.$target,stopped:!1,stopPropagation(){e.stopped=!0},preventDefault(){e.defaultPrevented=!0},defaultPrevented:!1};const i=Q([e],[e].concat(r),1);let s=this.$$listeners.get(t);if(s){let t=s.length;for(let e=0;e<t;e++)try{s[e].apply(null,i),s.length!==t&&(s.length<t&&e--,t=s.length)}catch(t){ro(t)}}return e.currentScope=null,e.stopped?e:n?(this.$children.length>0&&this.$children.forEach((i=>{e=i.$handler.#a({name:t,event:e,broadcast:n},...r)})),e):this.$parent?this.$parent.#a({name:t,event:e,broadcast:n},...r):e}#n(){return this.$root==this}$postUpdate(t){so.push(t)}$destroy(){if(!this.$$destroyed){if(this.$broadcast("$destroy"),Array.from(this.watchers.entries()).forEach((([t,e])=>{this.watchers.set(t,e.filter((t=>t.scopeId!==this.$id)))})),this.#n())this.watchers.clear();else{let t=this.$parent.$children.filter((t=>t.$id==this.$id))[0];this.$parent.$children.splice(this.$parent.$children.indexOf(t),1)}this.$$listeners.clear(),this.$$destroyed=!0}}#r(t,e){const{originalTarget:n,listenerFn:r,watchFn:i}=t;try{let t=i(n);for(y(t)&&(t=i(e)),O(t)&&(t=t(n)),Array.isArray(t)&&t.forEach(((e,r)=>{O(e)&&(t[r]=e(n))})),r(t,n),this.$$asyncQueue.forEach((t=>{t.handler.$id==this.$id&&Promise.resolve().then(t.fn(t.handler,t.locals))}));so.length;)so.shift()()}catch(t){ro(t)}}$getById(t){if(E(t)&&(t=parseInt(t,10)),this.$id===t)return this;{let e;for(const n of this.$children){let r=n.$getById(t);if(r){e=r;break}}return e}}}function uo(t){const e=new Set([t.$id]);return t.$children?.forEach((t=>{uo(t).forEach((t=>e.add(t)))})),e}class ho{$get=["$log",t=>new po(t)]}class po{constructor(t){this.log=t,this.taskCounts={},this.taskCallbacks=[],this.ALL_TASKS_TYPE="$$all$$",this.DEFAULT_TASK_TYPE="$$default$$"}completeTask(t,e=this.DEFAULT_TASK_TYPE){try{t()}finally{this.taskCounts[e]&&(this.taskCounts[e]--,this.taskCounts[this.ALL_TASKS_TYPE]--);const t=this.taskCounts[e],n=this.taskCounts[this.ALL_TASKS_TYPE];if(!n||!t){const t=n?()=>this.getLastCallbackForType(e):this.getLastCallback.bind(this);let r;for(;r=t();)try{r()}catch(t){this.log.error(t)}}}}incTaskCount(t=this.DEFAULT_TASK_TYPE){this.taskCounts[t]=(this.taskCounts[t]||0)+1,this.taskCounts[this.ALL_TASKS_TYPE]=(this.taskCounts[this.ALL_TASKS_TYPE]||0)+1}notifyWhenNoPendingTasks(t,e=this.ALL_TASKS_TYPE){this.taskCounts[e]?this.taskCallbacks.push({type:e,cb:t}):t()}getLastCallback(){const t=this.taskCallbacks.pop();return t?t.cb:void 0}getLastCallbackForType(t){for(let e=this.taskCallbacks.length-1;e>=0;--e){const n=this.taskCallbacks[e];if(n.type===t)return this.taskCallbacks.splice(e,1),n.cb}}}const fo=dt("$templateRequest");function $o(){let t;this.httpOptions=function(e){return e?(t=e,this):t},this.$get=["$exceptionHandler","$templateCache","$http","$sce",function(e,n,r,i){function s(o,a){if(s.totalPendingRequests++,!E(o)||!n.has(o))try{if(!(o=i.getTrustedResourceUrl(o)))return Promise.reject("Template not found")}catch(t){return Promise.reject(t.message)}let c=r.defaults&&r.defaults.transformResponse;return Array.isArray(c)?c=c.filter((function(t){return t!==Ps})):c===Ps&&(c=null),r.get(o,M({cache:n,transformResponse:c},t)).finally((function(){s.totalPendingRequests--})).then((function(t){return n.set(o,t.data),t.data}),(function(t){a||(t=fo("tpload","Failed to load template: {0} (HTTP status: {1} {2})",o,t.status,t.statusText),e(t));return Promise.reject(t)}))}return s.totalPendingRequests=0,s}]}class mo{constructor(){this._aHrefSanitizationTrustedUrlList=/^\s*(https?|s?ftp|mailto|tel|file):/,this._imgSrcSanitizationTrustedUrlList=/^\s*((https?|ftp|file|blob):|data:image\/)/}aHrefSanitizationTrustedUrlList(t){return b(t)?(this._aHrefSanitizationTrustedUrlList=t,this):this._aHrefSanitizationTrustedUrlList}imgSrcSanitizationTrustedUrlList(t){return b(t)?(this._imgSrcSanitizationTrustedUrlList=t,this):this._imgSrcSanitizationTrustedUrlList}$get(){return(t,e)=>{if(!t)return t;const n=e?this._imgSrcSanitizationTrustedUrlList:this._aHrefSanitizationTrustedUrlList,r=Re(t.trim()).href;return""===r||r.match(n)?t:`unsafe:${r}`}}}const go="ng-active",vo="ng-inactive";class yo{constructor(t,e,n,r){this.$element=t,this.$scope=e,this.$attrs=n,this.$animate=r,this.latestKey=0,this.nextAttachId=0,this.messages={},this.renderLater=!1,this.cachedCollection=null,this.head=void 0,this.default=void 0,this.$scope.$watch(this.$attrs.ngMessages||this.$attrs.for,this.render.bind(this))}getAttachId(){return this.nextAttachId++}render(t={}){this.renderLater=!1,this.cachedCollection=t;const e=wo(this.$scope,this.$attrs.ngMessagesMultiple)||wo(this.$scope,this.$attrs.multiple),n=[],r={};let i=0,s=this.head,o=!1,a=0;for(;s;){a++;const c=s.message;let l=!1;o||Object.entries(t).forEach((([t,e])=>{if(Eo(e)&&!l&&(i++,c.test(t))){if(r[t])return;r[t]=!0,l=!0,c.attach()}})),l?o=!e:n.push(c),s=s.next}n.forEach((t=>{t.detach()}));const c=n.length!==a,l=this.default&&!c&&i>0;l?this.default.attach():this.default&&this.default.detach(),c||l?this.$animate.setClass(this.$element,go,vo):this.$animate.setClass(this.$element,vo,go)}reRender(){this.renderLater||(this.renderLater=!0,this.$scope.$evalAsync((()=>{this.renderLater&&this.cachedCollection&&this.render(this.cachedCollection)})))}register(t,e,n){if(n)this.default=e;else{const n=this.latestKey.toString();this.messages[n]={message:e},this.insertMessageNode(this.$element,t,n),t.$$ngMessageNode=n,this.latestKey++}this.reRender()}deregister(t,e){if(e)delete this.default;else{const e=t.$$ngMessageNode;delete t.$$ngMessageNode,this.removeMessageNode(this.$element,t,e),delete this.messages[e]}this.reRender()}findPreviousMessage(t,e){let n=e;const r=[];for(;n&&n!==t;){const t=n.$$ngMessageNode;if(t&&t.length)return this.messages[t];n.childNodes.length&&-1===r.indexOf(n)?(r.push(n),n=n.childNodes[n.childNodes.length-1]):n.previousSibling?n=n.previousSibling:(n=n.parentNode,r.push(n))}}insertMessageNode(t,e,n){const r=this.messages[n];if(this.head){const n=this.findPreviousMessage(t,e);n?(r.next=n.next,n.next=r):(r.next=this.head,this.head=r)}else this.head=r}removeMessageNode(t,e,n){const r=this.messages[n];if(!r)return;const i=this.findPreviousMessage(t,e);i?i.next=r.next:this.head=r.next}}function bo(t){return{require:"ngMessages",restrict:"AE",controller:(e,n,r)=>new yo(e,n,r,t)}}function wo(t,e){return E(e)&&0===e.length||Eo(t.$eval(e))}function Eo(t){return E(t)?t.length:!!t}function Co(t,e){return{restrict:"AE",require:"^^ngMessages",link(n,r,i){const s=i.ngMessagesInclude||i.src;t(s).then((t=>{n.$$destroyed||E(t)&&!t.trim()||e(t)(n,(t=>{r.after(t)}))}))}}}bo.$inject=["$animate"],Co.$inject=["$templateRequest","$compile"];const So=ko(!1),xo=ko(!1),Ao=ko(!0);function ko(t){function e(e){return{restrict:"AE",transclude:"element",priority:1,terminal:!0,require:"^^ngMessages",link(n,r,i,s,o){let a,c,l,u,h,d;if(!t){a=r,l=i.ngMessage||i.when,u=i.ngMessageExp||i.whenExp;const t=function(t){c=t?Array.isArray(t)?t:t.split(/[\s,]+/):null,s.reRender()};u?(t(n.$eval(u)),n.$watch(u,t)):t(l)}s.register(a,d={test:t=>function(t,e){if(t)return Array.isArray(t)?t.indexOf(e)>=0:vt(t,e)}(c,t),attach(){h||o(((n,i)=>{e.enter(n,null,r),h=n;const o=h.$$attachId=s.getAttachId();h.addEventListener("$destroy",(()=>{h&&h.$$attachId===o&&(s.deregister(a,t),d.detach()),i.$destroy()}))}))},detach(){if(h){const t=h;h=null,e.leave(t)}}},t),n.$on("$destroy",(()=>{s.deregister(a,t)}))}}}return e.$inject=["$animate"],e}const Oo="ngAriaDisable",_o=["BUTTON","A","INPUT","TEXTAREA","SELECT","DETAILS","SUMMARY"],To=function(t,e){if(-1!==e.indexOf(t.nodeName))return!0};function jo(){let t={ariaHidden:!0,ariaChecked:!0,ariaReadonly:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaValue:!0,tabindex:!0,bindKeydown:!0,bindRoleForClick:!0};function e(e,n,r,i){return function(s,o,a){if(vt(a,Oo))return;const c=a.$normalize(n);!t[c]||To(o,r)||a[c]||s.$watch(a[e],(t=>{t=i?!t:!!t,o.setAttribute(n,t)}))}}this.config=function(e){t=M(t,e)},this.$get=function(){return{config:e=>t[e],$$watchExpr:e}}}function Lo(t){return t.$$watchExpr("ngDisabled","aria-disabled",_o,!1)}function Ro(t){return t.$$watchExpr("ngShow","aria-hidden",[],!0)}function No(){return{restrict:"A",require:"?ngMessages",link(t,e,n){vt(n,Oo)||e.hasAttribute("aria-live")||e.setAttribute("aria-live","assertive")}}}function Vo(t,e){return{restrict:"A",compile(n,r){if(vt(r,Oo))return;const i=e(r.ngClick);return function(e,n,r){To(n,_o)||(t.config("bindRoleForClick")&&!n.hasAttribute("role")&&n.setAttribute("role","button"),t.config("tabindex")&&!n.hasAttribute("tabindex")&&n.setAttribute("tabindex","0"),!t.config("bindKeydown")||r.ngKeydown||r.ngKeypress||r.ngKeyup||n.addEventListener("keydown",(t=>{const n=parseInt(t.key,10);13!==n&&32!==n||(-1!==_o.indexOf(t.target.nodeName)||t.target.isContentEditable||t.preventDefault(),e.$apply((function(){i(e,{$event:t})})))})))}}}}function Mo(t){return t.$$watchExpr("ngRequired","aria-required",_o,!1)}function Po(t){return t.$$watchExpr("ngChecked","aria-checked",_o,!1)}function Do(t){return t.$$watchExpr("ngValue","aria-checked",_o,!1)}function Uo(t){return t.$$watchExpr("ngHide","aria-hidden",[],!1)}function Io(t){return t.$$watchExpr("ngReadonly","aria-readonly",_o,!1)}function Ho(t){function e(e,n,r,i){return t.config(n)&&!r.getAttribute(e)&&(i||!To(r,_o))&&("hidden"!==r.getAttribute("type")||"INPUT"!==r.nodeName)}function n(t,e){return!e.getAttribute("role")&&e.getAttribute("type")===t&&!To(e,_o)}return{restrict:"A",require:"ngModel",priority:200,compile(r,i){if(vt(i,Oo))return;const s=function(t){const{type:e}=t,{role:n}=t;return"checkbox"===(e||n)||"menuitemcheckbox"===n?"checkbox":"radio"===(e||n)||"menuitemradio"===n?"radio":"range"===e||"progressbar"===n||"slider"===n?"range":""}(i);return{post(r,i,o,a){const c=e("tabindex","tabindex",i,!1);switch(s){case"radio":case"checkbox":n(s,i)&&i.setAttribute("role",s),e("aria-checked","ariaChecked",i,!1)&&a.$watch("$modelValue","radio"===s?function(){i.setAttribute("aria-checked",(o.value==a.$viewValue).toString())}:function(){i.setAttribute("aria-checked",(!a.$isEmpty(a.$viewValue)).toString())}),c&&i.setAttribute("tabindex",0);break;case"range":if(n(s,i)&&i.setAttribute("role","slider"),t.config("ariaValue")){const t=!i.hasAttribute("aria-valuemin")&&(vt(o,"min")||vt(o,"ngMin")),e=!i.hasAttribute("aria-valuemax")&&(vt(o,"max")||vt(o,"ngMax")),n=!i.hasAttribute("aria-valuenow");t&&o.$observe("min",(t=>{i.setAttribute("aria-valuemin",t)})),e&&o.$observe("max",(t=>{i.setAttribute("aria-valuemax",t)})),n&&a.$watch("$modelValue",(t=>{i.setAttribute("aria-valuenow",t)}))}c&&i.setAttribute("tabindex",0)}!vt(o,"ngRequired")&&a.$validators.required&&e("aria-required","ariaRequired",i,!1)&&o.$observe("required",(()=>{i.setAttribute("aria-required",(!!o.required).toString())})),e("aria-invalid","ariaInvalid",i,!0)&&a.$watch("$invalid",(t=>{i.setAttribute("aria-invalid",(!!t).toString())}))}}}}}function Fo(t){return function(e,n,r){vt(r,Oo)||!t.config("tabindex")||n.hasAttribute("tabindex")||To(n,_o)||n.setAttribute("tabindex",0)}}Lo.$inject=[Xt.$aria],Ro.$inject=[Xt.$aria],Vo.$inject=[Xt.$aria,Xt.$parse],Mo.$inject=[Xt.$aria],Po.$inject=["$aria"],Do.$inject=[Xt.$aria],Uo.$inject=[Xt.$aria],Io.$inject=[Xt.$aria],Ho.$inject=[Xt.$aria],Fo.$inject=[Xt.$aria];const qo="$$animateCss",Bo=1e3,zo={transitionDuration:Si,transitionDelay:Ci,transitionProperty:pi+vi,animationDuration:Ei,animationDelay:wi,animationIterationCount:$i+"IterationCount"},Ko={transitionDuration:Si,transitionDelay:Ci,animationDuration:Ei,animationDelay:wi};function Wo(t,e){return[e?wi:Ci,`${t}s`]}function Go(t,e){const n=Object.create(null),r=window.getComputedStyle(t)||{};return Object.entries(e).forEach((([t,e])=>{let i=r[e];if(i){const e=i.charAt(0);("-"===e||"+"===e||e>=0)&&(i=function(t){let e=0;return t.split(/\s*,\s*/).forEach((t=>{"s"===t.charAt(t.length-1)&&(t=t.substring(0,t.length-1)),t=parseFloat(t)||0,e=e?Math.max(t,e):t})),e}(i)),0===i&&(i=null),n[t]=i}})),n}function Qo(t){return 0===t||null!=t}function Yo(t,e){let n=pi,r=`${t}s`;return e?n+=gi:r+=" linear all",[n,r]}function Jo(t,e,n){n.forEach((n=>{t[n]=b(t[n])?t[n]:e.style.getPropertyValue(n)}))}function Zo(){this.$get=["$$AnimateRunner","$$animateCache","$$rAFScheduler",function(t,e,n){const r=function(t,e){e.addClass&&(t.classList.add(...e.addClass.trim().split(" ")),e.addClass=null),e.removeClass&&(t.classList.remove(...e.removeClass.trim().split(" ")),e.removeClass=null)};const i=[];function s(t){i.push(t),n.waitUntilQuiet((()=>{e.flush();const t=document.body.offsetWidth+1;for(let e=0;e<i.length;e++)i[e](t);i.length=0}))}function o(t,n,r){const i=function(t,n,r,i){let s=e.get(n);s||(s=Go(t,i),"infinite"===s.animationIterationCount&&(s.animationIterationCount=1));const o=r||s.transitionDuration>0||s.animationDuration>0;return e.put(n,s,o),s}(t,n,r,zo),s=i.animationDelay,o=i.transitionDelay;return i.maxDelay=s&&o?Math.max(s,o):s||o,i.maxDuration=Math.max(i.animationDuration*i.animationIterationCount,i.transitionDuration),i}return function(n,i){let a,c=i||{};c.$$prepared||(c=_i(structuredClone(c)));const l={},u=n;if(!u||!u.parentNode)return q();const h=[],d=function(t){const e={};return t&&(t.to||t.from)&&(e.to=t.to,e.from=t.from),e}(c);let p,f,$,m,g,v,y,b,w,E;const C=[];if(0===c.duration)return q();const S=c.event&&Array.isArray(c.event)?c.event.join(" "):c.event,x=S&&c.structural;let A="",k="";x?A=ki(S,"ng-",!0):S&&(A=S),c.addClass&&(k+=ki(c.addClass,ci)),c.removeClass&&(k.length&&(k+=" "),k+=ki(c.removeClass,li)),c.applyClassesEarly&&k.length&&r(n,c);let O=[A,k].join(" ").trim();const _=d.to&&Object.keys(d.to).length>0;if(!((c.keyframeStyle||"").length>0)&&!_&&!O)return q();let T,j,L=e.cacheKey(u,S,c.addClass,c.removeClass);if(e.containsCachedAnimationWithoutDuration(L))return O=null,q();if(c.stagger>0){const t=parseFloat(c.stagger);T={transitionDelay:t,animationDelay:t,transitionDuration:0,animationDuration:0}}else T=function(t,n,r,i){let s;const o=`stagger-${r}`;if(e.count(r)>0&&(s=e.get(o),!s)){const r=ki(n,"-stagger");t.className+=` ${r}`,s=Go(t,i),s.animationDuration=Math.max(s.animationDuration,0),s.transitionDuration=Math.max(s.transitionDuration,0),t.classList.remove(r),e.put(o,s,!0)}return s||{}}(u,O,L,Ko);if(c.$$skipPreparationClasses||n.classList.add(...O.split(" ").filter((t=>""!==t))),c.transitionStyle){const t=[pi,c.transitionStyle];Vi(u,t),h.push(t)}if(c.duration>=0){j=u.style[pi].length>0;const t=Yo(c.duration,j);Vi(u,t),h.push(t)}if(c.keyframeStyle){const t=[$i,c.keyframeStyle];Vi(u,t),h.push(t)}const R=T?c.staggerIndex>=0?c.staggerIndex:e.count(L):0,N=0===R;N&&!c.skipBlocking&&Xo(u,9999);let V=o(u,L,!x),M=V.maxDelay;v=Math.max(M,0),b=V.maxDuration;const P={};if(P.hasTransitions=V.transitionDuration>0,P.hasAnimations=V.animationDuration>0,P.hasTransitionAll=P.hasTransitions&&"all"===V.transitionProperty,P.applyTransitionDuration=_&&(P.hasTransitions&&!P.hasTransitionAll||P.hasAnimations&&!P.hasTransitions),P.applyAnimationDuration=c.duration&&P.hasAnimations,P.applyTransitionDelay=Qo(c.delay)&&(P.applyTransitionDuration||P.hasTransitions),P.applyAnimationDelay=Qo(c.delay)&&P.hasAnimations,P.recalculateTimingStyles=k.length>0,(P.applyTransitionDuration||P.applyAnimationDuration)&&(b=c.duration?parseFloat(c.duration):b,P.applyTransitionDuration&&(P.hasTransitions=!0,V.transitionDuration=b,j=u.style[pi+vi].length>0,h.push(Yo(b,j))),P.applyAnimationDuration&&(P.hasAnimations=!0,V.animationDuration=b,h.push([Ei,`${b}s`]))),0===b&&!P.recalculateTimingStyles)return q();let D=ki(O,ui);return null!=c.delay&&("boolean"!=typeof c.delay&&(a=parseFloat(c.delay),v=Math.max(a,0)),P.applyTransitionDelay&&h.push(Wo(a)),P.applyAnimationDelay&&h.push(Wo(a,!0))),null==c.duration&&V.transitionDuration>0&&(P.recalculateTimingStyles=P.recalculateTimingStyles||N),y=v*Bo,w=b*Bo,c.skipBlocking||(P.blockTransition=V.transitionDuration>0,P.blockKeyframeAnimation=V.animationDuration>0&&T.animationDelay>0&&0===T.animationDuration),c.from&&(c.cleanupStyles&&Jo(l,u,Object.keys(c.from)),ji(0,c)),P.blockTransition||P.blockKeyframeAnimation?F(b):c.skipBlocking||Xo(u,!1),{$$willAnimate:!0,end:U,start(){if(!p)return g={end:U,cancel:I,resume:null,pause:null},m=new t(g),s(z),m}};function U(){H()}function I(){H(!0)}function H(t){if(p||$&&f)return;p=!0,f=!1,O&&!c.$$skipPreparationClasses&&n.classList.remove(...O.split(" ")),D=ki(O,ui),D&&n.classList.remove(...D.split(" ")),Ni(u,!1),Xo(u,!1),h.forEach((t=>{u.style[t[0]]=""})),r(n,c),Ti(n,c),Object.keys(l).length&&Object.entries(l).forEach((([t,e])=>{e?u.style.setProperty(t,e):u.style.removeProperty(t)})),c.onDone&&c.onDone(),C&&C.length&&n.off(C.join(" "),B);const e=Pt(n,qo);e&&(clearTimeout(e[0].timer),Tt(n,qo)),m&&m.complete(!t)}function F(t){P.blockTransition&&Xo(u,t),P.blockKeyframeAnimation&&Ni(u,!!t)}function q(){return m=new t({end:U,cancel:I}),s((()=>{})),H(),{$$willAnimate:!1,start:()=>m,end:U}}function B(t){t.stopPropagation();const e=t.originalEvent||t;if(e.target!==u)return;const n=e.$manualTimeStamp||Date.now(),r=parseFloat(e.elapsedTime.toFixed(3));Math.max(n-E,0)>=y&&r>=b&&($=!0,H())}function z(){if(p)return;if(!u.parentNode)return void H();const t=function(t){if($)f&&t&&(f=!1,H());else if(f=!t,V.animationDuration){const t=Ni(u,f);f?h.push(t):function(t,e){const n=t.indexOf(e);e>=0&&t.splice(n,1)}(h,t)}},i=R>0&&(V.transitionDuration&&0===T.transitionDuration||V.animationDuration&&0===T.animationDuration)&&Math.max(T.animationDelay,T.transitionDelay);function s(){if(p)return;if(F(!1),h.forEach((t=>{const e=t[0],n=t[1];u.style[e]=n})),r(n,c),n.classList.add(...D.split(" ").filter((t=>""!==t))),P.recalculateTimingStyles){if(L=e.cacheKey(u,S,c.addClass,c.removeClass),V=o(u,L,!1),M=V.maxDelay,v=Math.max(M,0),b=V.maxDuration,0===b)return void H();P.hasTransitions=V.transitionDuration>0,P.hasAnimations=V.animationDuration>0}if(P.applyAnimationDelay&&(M="boolean"!=typeof c.delay&&Qo(c.delay)?parseFloat(c.delay):M,v=Math.max(M,0),V.animationDelay=M,a=Wo(M,!0),h.push(a),u.style[a[0]]=a[1]),y=v*Bo,w=b*Bo,c.easing){let t;const e=c.easing;P.hasTransitions&&(t=pi+bi,h.push([t,e]),u.style[t]=e),P.hasAnimations&&(t=$i+bi,h.push([t,e]),u.style[t]=e)}V.transitionDuration&&C.push(fi),V.animationDuration&&C.push(mi),E=Date.now();const t=y+1.5*w,i=E+t,s=Pt(n,qo)||[];let f=!0;if(s.length){const t=s[0];f=i>t.expectedEndTime,f?clearTimeout(t.timer):s.push(H)}if(f){const e=setTimeout(d,t,!1);s[0]={timer:e,expectedEndTime:i},s.push(H),Mt(n,qo,s)}C.length&&C.forEach((t=>{n.addEventListener(t,B)})),c.to&&(c.cleanupStyles&&Jo(l,u,Object.keys(c.to)),Li(0,c))}function d(){const t=Pt(n,qo);if(t){for(let e=1;e<t.length;e++)t[e]();Tt(n,qo)}}i?setTimeout(s,Math.floor(i*R*Bo),!1):s(),g.resume=function(){t(!0)},g.pause=function(){t(!1)}}}}]}function Xo(t,e){const n=e?`-${e}s`:"";return Vi(t,[Ci,n]),[Ci,n]}const ta="data-ng-animate",ea="$ngAnimatePin";function na(t){const e=this.rules={skip:[],cancel:[],join:[]};function n(t){return{addClass:t.addClass,removeClass:t.removeClass,from:t.from,to:t.to}}function r(t,e){if(t&&e){const n=function(t){if(!t)return null;const e=t.split(" "),n=Object.create(null);return e.forEach((t=>{n[t]=!0})),n}(e);return t.split(" ").some((t=>n[t]))}}function i(t,n,r){return e[t].some((t=>t(n,r)))}function s(t,e){const n=(t.addClass||"").length>0,r=(t.removeClass||"").length>0;return e?n&&r:n||r}e.join.push((t=>!t.structural&&s(t))),e.skip.push((t=>!t.structural&&!s(t))),e.skip.push(((t,e)=>"leave"===e.event&&t.structural)),e.skip.push(((t,e)=>e.structural&&2===e.state&&!t.structural)),e.cancel.push(((t,e)=>e.structural&&t.structural)),e.cancel.push(((t,e)=>2===e.state&&t.structural)),e.cancel.push(((t,e)=>{if(e.structural)return!1;const n=t.addClass,i=t.removeClass,s=e.addClass,o=e.removeClass;return!(y(n)&&y(i)||y(s)&&y(o))&&(r(n,o)||r(i,s))})),this.$get=["$rootScope","$injector","$$animation","$$AnimateRunner","$templateRequest",function(e,r,o,a,c){const l=new Map,u=new Map;let h=null;function d(t){u.delete(t.target)}e.templateRequest=c;const p=e.$watch("$templateRequest.totalPendingRequests",(t=>{0===t&&(p(),e.$templateRequest=void 0,e.$postUpdate((()=>{e.$postUpdate((()=>{null===h&&(h=!0)}))})))}),!0),f=Object.create(null),$=t.customFilter(),m=t.classNameFilter(),g=function(){return!0},v=$||g,C=m?function(t,e){const n=[t.getAttribute("class"),e.addClass,e.removeClass].join(" ");return m.test(n)}:g,S=function(t,e){e.addClass&&(t.classList.add(...e.addClass.trim().split(" ")),e.addClass=null),e.removeClass&&(t.classList.remove(...e.removeClass.trim().split(" ")),e.removeClass=null)};function x(t,e){return Ri(t,e,{})}const A=window.Node.prototype.contains||function(t){return this===t||!!(16&this.compareDocumentPosition(t))};function k(t,e,n){const r=Oi(e);return t.filter((t=>!(t.node===r&&(!n||t.callback===n))))}function O(t,e){"close"!==t||e.parentNode||_.off(e)}let _={on(t,e,n){const r=Oi(e);f[t]=f[t]||[],f[t].push({node:r,callback:n}),e.addEventListener("$destroy",(()=>{l.get(r)||_.off(t,e,n)}))},off(t,e,n){if(1===arguments.length&&!E(arguments[0])){e=arguments[0];for(const t in f)f[t]=k(f[t],e);return}const r=f[t];r&&(f[t]=1===arguments.length?null:k(r,e,n))},pin(t,e){Ai(H(t),"element","not an element"),Ai(H(e),"parentElement","not an element"),Mt(t,ea,e)},push:(t,c,h,d)=>((h=h||{}).domOperation=d,function(t,c,h){let d=h,p=Array.isArray(t)?t.filter((t=>"#comment"!==t.nodeName))[0]:t;const $=p,m=$&&$.parentNode;d=_i(d);const g=new a,k=function(){let t=!1;return function(n){t?n():e.$postUpdate((()=>{t=!0,n()}))}}();Array.isArray(d.addClass)&&(d.addClass=d.addClass.join(" "));d.addClass&&!E(d.addClass)&&(d.addClass=null);Array.isArray(d.removeClass)&&(d.removeClass=d.removeClass.join(" "));d.removeClass&&!E(d.removeClass)&&(d.removeClass=null);d.from&&!w(d.from)&&(d.from=null);d.to&&!w(d.to)&&(d.to=null);if(!$||!v($,c,h)||!C($,d))return U(),g;const _=["enter","move","leave"].indexOf(c)>=0;let L=document.hidden||u.get($);const R=!L&&l.get($)||{},N=!!R.state;L||N&&1===R.state||(L=!function(t,e){const n=document.body,i=r.get("$rootElement");let s,o=t===n||"HTML"===t.nodeName,a=t===i,c=!1,h=u.get(t),d=Vt(t,ea);d&&(e=d);for(;e&&(a||(a=e===i),e.nodeType===Node.ELEMENT_NODE);){const t=l.get(e)||{};if(!c){const n=u.get(e);if(!0===n&&!1!==h){h=!0;break}!1===n&&(h=!1),c=t.structural}if(y(s)||!0===s){const t=Vt(e,di);b(t)&&(s=t)}if(c&&!1===s)break;if(o||(o=e===n),o&&a)break;e=a||(d=Vt(e,ea),!d)?e.parentNode:d}return(!c||s)&&!0!==h&&a&&o}($,m));if(L)return document.hidden&&D(g,c,"start",n(d)),U(),document.hidden&&D(g,c,"close",n(d)),g;_&&function(t){const e=t.querySelectorAll(`[${ta}]`);e.forEach((t=>{const e=parseInt(t.getAttribute(ta),10),n=l.get(t);if(n)switch(e){case 2:n.runner.end();case 1:l.delete(t)}}))}($);const V={structural:_,element:p,event:c,addClass:d.addClass,removeClass:d.removeClass,close:U,options:d,runner:g};if(N){if(i("skip",V,R))return 2===R.state?(U(),g):(Ri(p,R,V),R.runner);if(i("cancel",V,R))if(2===R.state)R.runner.end();else{if(!R.structural)return Ri(p,R,V),R.runner;R.close()}else{if(i("join",V,R)){if(2!==R.state)return function(t,e,n){let r="";e&&(r=ki(e,"ng-",!0)),n.addClass&&(r=Mi(r,ki(n.addClass,ci))),n.removeClass&&(r=Mi(r,ki(n.removeClass,li))),r.length&&(n.preparationClasses=r,t.className+=` ${r}`)}(p,_?c:null,d),c=V.event=R.event,d=Ri(p,R,V),R.runner;x(p,V)}}}else x(p,V);let M=V.structural;M||(M="animate"===V.event&&Object.keys(V.options.to||{}).length>0||s(V));if(!M)return U(),T($),g;const P=(R.counter||0)+1;return V.counter=P,j($,1,V),e.$postUpdate((()=>{p=function(t){return t instanceof NodeList?Array.from(t).filter((t=>t.nodeType==Node.ELEMENT_NODE)):t.nodeType===Node.ELEMENT_NODE?t:void 0}(t);let e=l.get($);const r=!e;e=e||{};const i=(p.parentElement||[])&&("animate"===e.event||e.structural||s(e));if(r||e.counter!==P||!i)return r&&(S(p,d),Ti(p,d)),(r||_&&e.event!==c)&&(d.domOperation(),g.end()),void(i||T($));c=!e.structural&&s(e,!0)?"setClass":e.event,j($,2);const a=o(p,c,e.options);g.setHost(a),D(g,c,"start",n(d)),a.done((t=>{U(!t);const e=l.get($);e&&e.counter===P&&T($),D(g,c,"close",n(d))}))})),g;function D(t,e,n,r){k((()=>{const t=function(t,e,n){const r=[],i=f[n];return i&&i.forEach((i=>{(A.call(i.node,e)||"leave"===n&&A.call(i.node,t))&&r.push(i.callback)})),r}(m,$,e);t.length?(t.forEach((t=>{t(p,n,r)})),O(n,$)):O(n,$)})),t.progress(e,n,r)}function U(t){!function(t,e){e.preparationClasses&&(e.preparationClasses.split(" ").forEach((e=>t.classList.remove(e))),e.preparationClasses=null),e.activeClasses&&(e.activeClasses.split(" ").forEach((e=>t.classList.remove(e))),e.activeClasses=null)}(p,d),S(p,d),Ti(p,d),d.domOperation(),g.complete(!t)}}(t,c,h)),enabled(t,e){const n=arguments.length;if(0===n)e=!!h;else{if(H(t)){const r=t;1===n?e=!u.get(r):(u.has(r)||t.addEventListener("$destroy",d),u.set(r,!e))}else e=h=!!t}return e}};return _;function T(t){t.removeAttribute(ta),l.delete(t)}function j(t,e,n){(n=n||{}).state=e,t.setAttribute(ta,e);const r=l.get(t),i=r?M(r,n):n;l.set(t,i)}}]}function ra(t){this.$get=["$injector","$$AnimateRunner",function(e,n){const r=function(t,e){e.addClass&&(t.classList.add(...e.addClass.trim().split(" ")),e.addClass=null),e.removeClass&&(t.classList.remove(...e.removeClass.trim().split(" ")),e.removeClass=null)};return function(i,s,o,a){let c=!1;3===arguments.length&&w(o)&&(a=o,o=null),a=_i(a),o||(o=i.getAttribute("class")||"",a.addClass&&(o+=` ${a.addClass}`),a.removeClass&&(o+=` ${a.removeClass}`));const l=a.addClass,u=a.removeClass,h=function(n){n=Array.isArray(n)?n:n.split(" ");const r=[],i={};for(let s=0;s<n.length;s++){const o=n[s],a=t.$$registeredAnimations[o];a&&!i[o]&&(r.push(e.get(a)),i[o]=!0)}return r}(o);let d,p,f;if(h.length){let t,e;"leave"===s?(e="leave",t="afterLeave"):(e=`before${s.charAt(0).toUpperCase()}${s.substring(1)}`,t=s),"enter"!==s&&"move"!==s&&(d=v(i,s,a,h,e)),p=v(i,s,a,h,t)}if(d||p)return{$$willAnimate:!0,end:()=>(f?f.end():(m(),f=new n,f.complete(!0)),f),start(){if(f)return f;let t;f=new n;const e=[];return d&&e.push((e=>{t=d(e)})),e.length?e.push((t=>{$(),t(!0)})):$(),p&&e.push((e=>{t=p(e)})),f.setHost({end(){i()},cancel(){i(!0)}}),n.chain(e,r),f;function r(t){m(),f.complete(t)}function i(e){c||((t||(()=>{}))(e),r(e))}}};function $(){a.domOperation(),r(i,a)}function m(){c=!0,$(),Ti(i,a)}function g(t,e,r,i,s){const o=[];return i.forEach((i=>{const a=i[s];a&&o.push((()=>{let i,s,o=!1;const c=function(t){o||(o=!0,(s||(()=>{}))(t),i.complete(!t))};return i=new n({end(){c()},cancel(){c(!0)}}),s=function(t,e,r,i,s){let o;switch(r){case"animate":o=[e,i.from,i.to,s];break;case"setClass":o=[e,l,u,s];break;case"addClass":o=[e,l,s];break;case"removeClass":o=[e,u,s];break;default:o=[e,s]}o.push(i);let a=t.apply(t,o);if(a)if(O(a.start)&&(a=a.start()),a instanceof n)a.done(s);else if(O(a))return a;return()=>{}}(a,t,e,r,(t=>{c(!1===t)})),i}))})),o}function v(t,e,r,i,s){let o=g(t,e,r,i,s);if(0===o.length){let e,n;"beforeSetClass"===s?(e=g(t,"removeClass",r,i,"beforeRemoveClass"),n=g(t,"addClass",r,i,"beforeAddClass")):"setClass"===s&&(e=g(t,"removeClass",r,i,"removeClass"),n=g(t,"addClass",r,i,"addClass")),e&&(o=o.concat(e)),n&&(o=o.concat(n))}if(0!==o.length)return function(t){const e=[];return o.length&&o.forEach((t=>{e.push(t())})),e.length?n.all(e,t):t(),function(t){e.forEach((e=>{t?e.cancel():e.end()}))}}}}}]}na.$inject=["$animateProvider"],ra.$inject=["$animateProvider"];const ia="$$animationRunner",sa="$$animatePrepareClasses";function oa(){const t="ng-animate-ref",e=this.drivers=[];function n(t){!function(t,e){if(Rt(t)){const n=jt(t,!1),r=n?.data;r&&vt(r,Ot(e))&&delete r[Ot(e)]}}(t,ia)}function r(t){return Pt(t,ia)}this.$get=["$rootScope","$injector","$$AnimateRunner","$$rAFScheduler","$$animateCache",function(i,s,o,a,c){const l=[],u=function(t,e){e.addClass&&(t.classList.add(...e.addClass.trim().split(" ")),e.addClass=null),e.removeClass&&(t.classList.remove(...e.removeClass.trim().split(" ")),e.removeClass=null)};return function(h,d,p){p=_i(p);const f=["enter","move","leave"].indexOf(d)>=0,$=new o({end(){y()},cancel(){y(!0)}});if(!e.length)return y(),$;let m=ft(h.getAttribute("class"),ft(p.addClass,p.removeClass)),{tempClasses:g}=p;return g&&(m+=` ${g}`,p.tempClasses=null),f&&Mt(h,sa,`ng-${d}-prepare`),function(t,e){Mt(t,ia,e)}(h,$),l.push({element:h,classes:m,event:d,structural:f,options:p,beforeStart:function(){g=(g?`${g} `:"")+hi,h.className+=` ${g}`;let t=Pt(h,sa);t&&(h.classList.remove(t),t=null)},close:y}),h.addEventListener("$destroy",(function(){const t=r(h);!t||"leave"===d&&p.$$domOperationFired||t.end()})),l.length>1||i.$postUpdate((()=>{const n=[];l.forEach((t=>{r(t.element)?n.push(t):t.close()})),l.length=0;const i=function(e){const n=[],r={};e.forEach(((e,i)=>{const{element:s}=e,o=s,{event:a}=e,c=["enter","move"].indexOf(a)>=0,l=e.structural?function(e){const n=`[${t}]`,r=e.hasAttribute(t)?[e]:e.querySelectorAll(n),i=[];return r.forEach((e=>{const n=e.getAttribute(t);n&&n.length&&i.push(e)})),i}(o):[];if(l.length){const e=c?"to":"from";l.forEach((n=>{const s=n.getAttribute(t);r[s]=r[s]||{},r[s][e]={animationID:i,element:n}}))}else n.push(e)}));const i={},s={};return Object.values(r).forEach((t=>{const{from:r}=t,{to:o}=t;if(!r||!o){const t=r?r.animationID:o.animationID,s=t.toString();return void(i[s]||(i[s]=!0,n.push(e[t])))}const a=e[r.animationID],c=e[o.animationID],l=r.animationID.toString();if(!s[l]){const t=s[l]={structural:!0,beforeStart(){a.beforeStart(),c.beforeStart()},close(){a.close(),c.close()},classes:v(a.classes,c.classes),from:a,to:c,anchors:[]};t.classes.length?n.push(t):(n.push(a),n.push(c))}s[l].anchors.push({out:r.element,in:o.element})})),n}(n),o=[];i.forEach((t=>{const n=t.from?t.from.element:t.element;let i=p.addClass;i=(i?`${i} `:"")+hi;const a=c.cacheKey(n,t.event,i,p.removeClass);o.push({element:n,domNode:n,fn:function(){let n;const i=t.close;if(c.containsCachedAnimationWithoutDuration(a))return void i();t.beforeStart();if(r(t.anchors?t.from.element||t.to.element:t.element)){const r=function(t){for(let n=e.length-1;n>=0;n--){const r=e[n],i=s.get(r)(t);if(i)return i}}(t);r&&(n=r.start)}if(n){const e=n();e.done((t=>{i(!t)})),function(t,e){t.from&&t.to?(n(t.from.element),n(t.to.element)):n(t.element);function n(t){const n=r(t);n&&n.setHost(e)}}(t,e)}else i()}})}));const u=function(t){const e={children:[]};let n;const r=new Map;for(n=0;n<t.length;n++){const e=t[n];r.set(e.domNode,t[n]={domNode:e.domNode,element:e.element,fn:e.fn,children:[]})}for(n=0;n<t.length;n++)i(t[n]);return function(t){const e=[],n=[];let r;for(r=0;r<t.children.length;r++)n.push(t.children[r]);let i=n.length,s=0,o=[];for(r=0;r<n.length;r++){const t=n[r];i<=0&&(i=s,s=0,e.push(o),o=[]),o.push(t),t.children.forEach((t=>{s++,n.push(t)})),i--}return o.length&&e.push(o),e}(e);function i(t){if(t.processed)return t;t.processed=!0;const n=t.domNode;let s,{parentNode:o}=n;for(r.set(n,t);o;){if(s=r.get(o),s){s.processed||(s=i(s));break}o=o.parentNode}return(s||e).children.push(t),t}}(o);for(let t=0;t<u.length;t++){const e=u[t];for(let n=0;n<e.length;n++){const r=e[n],{element:i}=r;if(u[t][n]=r.fn,0===t){Tt(i,sa);continue}const s=Pt(i,sa);s&&i.classList.add(s)}}a(u)})),$;function v(t,e){t=t.split(" "),e=e.split(" ");const n=[];for(let r=0;r<t.length;r++){const i=t[r];if("ng-"!==i.substring(0,3))for(let t=0;t<e.length;t++)if(i===e[t]){n.push(i);break}}return n.join(" ")}function y(t){n(h),u(h,p),Ti(h,p),p.domOperation(),g&&g.split(" ").forEach((t=>h.classList.remove(t))),$.complete(!t)}}}]}class aa{constructor(){this.queue=[],this.cancelFn=null}nextTick(){if(!this.queue.length)return;this.queue.shift().forEach((t=>t())),this.cancelFn||(this.cancelFn=window.requestAnimationFrame((()=>{this.cancelFn=null,this.nextTick()})))}$get(){const t=t=>{this.queue=this.queue.concat(t),this.nextTick()};return t.queue=this.queue,t.waitUntilQuiet=t=>{null!==this.cancelFn&&(window.cancelAnimationFrame(this.cancelFn),this.cancelFn=null),this.cancelFn=window.requestAnimationFrame((()=>{this.cancelFn=null,t(),this.nextTick()}))},t}}const ca="$animId";let la=0;const ua=new Map;function ha(){return{cacheKey(t,e,n,r){const{parentNode:i}=t,s=[i[ca]??(i[ca]=++la),e,t.getAttribute("class")];return n&&s.push(n),r&&s.push(r),s.join(" ")},containsCachedAnimationWithoutDuration(t){const e=ua.get(t);return!!e&&!e.isValid},flush(){ua.clear()},count:t=>ua.get(t)?.total??0,get:t=>ua.get(t)?.value,put(t,e,n){const r=ua.get(t);r?(r.total++,r.value=e):ua.set(t,{total:1,value:e,isValid:n})}}}function da(){this.$get=[ha]}const pa="ng-animate-shim",fa="ng-anchor",$a="ng-anchor-out",ma="ng-anchor-in";function ga(t){t.drivers.push("$$animateCssDriver"),this.$get=["$animateCss","$$AnimateRunner","$rootElement",function(t,e,n){const r=document.body,i=n,s=(o=i).parentNode&&11===o.parentNode.nodeType||r.contains(i)?i:r;var o;return function(n){return n.from&&n.to?function(n,i,o){const c=a(n),l=a(i),u=[];if(o.forEach((n=>{const i=function(n,i){const o=n.cloneNode(!0),a=va(p(o));let c;n[0].classList.add(pa),i[0].classList.add(pa),o.classList.add(fa),s.append(o);const l=d();if(!l&&(c=f(),!c))return $();const u=l||c;return{start(){let t,n=u.start();return n.done((()=>{if(n=null,!c&&(c=f(),c))return n=c.start(),n.done((()=>{n=null,$(),t.complete()})),n;$(),t.complete()})),t=new e({end:r,cancel:r}),t;function r(){n&&n.end()}}};function h(t){const e={},n=t.getBoundingClientRect();return["width","height","top","left"].forEach((t=>{let i=n[t];switch(t){case"top":i+=r.scrollTop;break;case"left":i+=r.scrollLeft}e[t]=`${Math.floor(i)}px`})),e}function d(){const e=t(o,{addClass:$a,delay:!0,from:h(n)});return e.$$willAnimate?e:null}function p(t){return t.getAttribute("class")||""}function f(){const e=va(p(i)),n=ya(e,a),r=ya(a,e),s=t(o,{to:h(i),addClass:`${ma} ${n}`,removeClass:`${$a} ${r}`,delay:!0});return s.$$willAnimate?s:null}function $(){o.remove(),n[0].classList.remove(pa),i[0].classList.remove(pa)}}(n.out,n.in);i&&u.push(i)})),!c&&!l&&0===u.length)return;return{start(){const t=[];c&&t.push(c.start()),l&&t.push(l.start()),u.forEach((e=>{t.push(e.start())}));const n=new e({end:r,cancel:r});return e.all(t,(t=>{n.complete(t)})),n;function r(){t.forEach((t=>{t.end()}))}}}}(n.from,n.to,n.anchors):a(n)};function a(e){const n=e.options||{};e.structural&&(n.event=e.event,n.structural=!0,n.applyClassesEarly=!0,"leave"===e.event&&(n.onDone=n.domOperation)),n.preparationClasses&&(n.event=Mi(n.event,n.preparationClasses));const r=t(e.element,n);return r.$$willAnimate?r:null}}]}function va(t){return t.replace(/\bng-\S+\b/g,"")}function ya(t,e){return E(t)&&(t=t.split(" ")),E(e)&&(e=e.split(" ")),t.filter((t=>-1===e.indexOf(t))).join(" ")}function ba(t){t.drivers.push("$$animateJsDriver"),this.$get=["$$animateJs","$$AnimateRunner",function(t,e){return function(t){if(t.from&&t.to){const r=n(t.from),i=n(t.to);if(!r&&!i)return;return{start(){const t=[];r&&t.push(r.start()),i&&t.push(i.start()),e.all(t,(function(t){n.complete(t)}));const n=new e({end:s(),cancel:s()});return n;function s(){return function(){t.forEach((t=>{t.end()}))}}}}}return n(t)};function n(e){const{element:n,event:r,options:i,classes:s}=e;return t(n,r,s,i)}}]}function wa(t){return{restrict:"A",transclude:"element",terminal:!0,priority:550,link(e,n,r,i,s){let o,a;e.$watch(r.ngAnimateSwap||r.for,(e=>{o&&t.leave(o),a&&(a.$destroy(),a=null),e&&s(((e,r)=>{o=e,a=r,t.enter(e,null,n)}))}))}}}function Ea(t){return{link(e,n,r){const i=r.ngAnimateChildren;function s(t){Mt(n,di,t="on"===t||"true"===t)}E(i)&&0===i.length?Mt(n,di,!0):(s(t(i)(e)),r.$observe("ngAnimateChildren",s))}}}function Ca(t){return function e(){if(arguments.length>=t.length)return t.apply(this,arguments);const n=Array.prototype.slice.call(arguments);return e.bind(this,...n)}}function Sa(){const t=arguments,e=t.length-1;return function(){let n=e,r=t[e].apply(this,arguments);for(;n--;)r=t[n].call(this,r);return r}}function xa(){return Sa.apply(null,[].slice.call(arguments).reverse())}ga.$inject=["$$animationProvider"],ba.$inject=["$$animationProvider"],wa.$inject=["$animate"],Ea.$inject=[Xt.$interpolate];const Aa=Ca(((t,e,n)=>n&&n[t]===e)),ka=t=>xa.apply(null,t.split(".").map((t=>e=>e&&e[t])));const Oa=t=>e=>e.reduce(((e,n)=>e&&!!t(n)),!0),_a=t=>e=>null!=e&&e.constructor===t||e instanceof t,Ta=t=>()=>t;function ja(t){return function(e){for(let n=0;n<t.length;n++)if(t[n][0](e))return t[n][1](e)}}function La(t,e){if(t===e)return!0;if(null===t||null===e)return!1;if(t!=t&&e!=e)return!0;const n=typeof t;if(n!==typeof e||"object"!==n)return!1;const r=[t,e];if(Oa(Array.isArray)(r))return s=e,(i=t).length===s.length&&Ja(i,s).reduce(((t,e)=>t&&La(e[0],e[1])),!0);var i,s;if(Oa(A)(r))return t.getTime()===e.getTime();if(Oa(_)(r))return t.toString()===e.toString();if(Oa(O)(r))return!0;if([O,Array.isArray,A,_].some((t=>!!t(r))))return!1;const o={};for(const n in t){if(!La(t[n],e[n]))return!1;o[n]=!0}for(const t in e)if(!o[t])return!1;return!0}function Ra(t,e,n,r,i=!1){const s=e=>t()[e].bind(n());return(r=r||Object.keys(t())).reduce(((t,n)=>{var r;return t[n]=i?(r=n,function(){return e[r]=s(r),e[r].apply(null,arguments)}):s(n),t}),e)}function Na(t,e){const n=Object.create(t);return e&&Object.assign(n,e),n}const Va=Ca((function(t,e){const n=t.indexOf(e);n>=0&&t.splice(n,1);return t}));const Ma=Ca(((t,e)=>(t.push(e),e)));function Pa(t,...e){const n=Object.assign({},...e.reverse());return Object.assign(n,Da(t||{},Object.keys(n)))}function Da(t,e){const n={};for(const r in t)-1!==e.indexOf(r)&&(n[r]=t[r]);return n}function Ua(t,e){return Object.keys(t).filter((t=>!e.includes(t))).reduce(((e,n)=>(e[n]=t[n],e)),{})}function Ia(t,e){const n=Array.isArray(t),r=n?[]:{},i=n?t=>r.push(t):(t,e)=>r[e]=t;return Object.entries(t).forEach((([t,n])=>{e(n,t)&&i(n,t)})),r}function Ha(t,e){let n;return Object.entries(t).forEach((([t,r])=>{n||e(r,t)&&(n=r)})),n}function Fa(t,e,n){return n=n||(Array.isArray(t)?[]:{}),Object.entries(t).forEach((([t,r])=>n[t]=e(r,t))),n}const qa=(t,e)=>t&&e,Ba=(t,e)=>t||e,za=(t,e)=>t.concat(e),Ka=(t,e)=>Array.isArray(e)?t.concat(e.reduce(Ka,[])):Wa(t,e);function Wa(t,e){return t.push(e),t}const Ga=(t,e)=>t.includes(e)?t:Wa(t,e),Qa=t=>t.reduce(za,[]),Ya=function(t,e="assert failure"){return n=>{const r=t(n);if(!r)throw new Error(e);return r}};function Ja(...t){if(0===t.length)return[];const e=t.reduce(((t,e)=>Math.min(e.length,t)),9007199254740991),n=[];for(let r=0;r<e;r++)switch(t.length){case 1:n.push([t[0][r]]);break;case 2:n.push([t[0][r],t[1][r]]);break;case 3:n.push([t[0][r],t[1][r],t[2][r]]);break;case 4:n.push([t[0][r],t[1][r],t[2][r],t[3][r]]);break;default:n.push(t.map((t=>t[r])))}return n}function Za(t,e){let n,r;if(Array.isArray(e)&&([n,r]=e),!E(n))throw new Error("invalid parameters to applyPairs");return t[n]=r,t}function Xa(t){return t.length>0?t[t.length-1]:void 0}function tc(t,e){return e&&Object.keys(e).forEach((t=>delete e[t])),e||(e={}),Object.assign(e,t)}const ec=t=>t.catch((()=>0))&&t,nc=t=>ec(Promise.reject(t));class rc{constructor(t){this.pattern=/.*/,this.inherit=!0,Object.assign(this,t),this.name=void 0}is(t){return!!t}encode(t){return t}decode(t){return t}equals(t,e){return t==e}$subPattern(){const t=this.pattern.toString();return t.substring(1,t.length-2)}toString(){return`{ParamType:${this.name}}`}$normalize(t){return this.is(t)?t:this.decode(t)}$asArray(t,e){if(!t)return this;if("auto"===t&&!e)throw new Error("'auto' array mode is for query parameters only");return new ic(this,t)}}function ic(t,e){function n(t){return Array.isArray(t)?t:b(t)?[t]:[]}function r(t,r){return function(i){if(Array.isArray(i)&&0===i.length)return i;const s=Fa(n(i),t);return!0===r?0===Ia(s,(t=>!t)).length:function(t){switch(t.length){case 0:return;case 1:return"auto"===e?t[0]:t;default:return t}}(s)}}function i(t){return function(e,r){const i=n(e),s=n(r);if(i.length!==s.length)return!1;for(let e=0;e<i.length;e++)if(!t(i[e],s[e]))return!1;return!0}}["encode","decode","equals","$normalize"].forEach((e=>{const n=t[e].bind(t),s="equals"===e?i:r;this[e]=s(n)})),Object.assign(this,{dynamic:t.dynamic,name:t.name,pattern:t.pattern,inherit:t.inherit,raw:t.raw,is:r(t.is.bind(t),!0),$arrayMode:e})}class sc{constructor(){this.enqueue=!0,this.typeQueue=[],this.defaultTypes=Da(sc.prototype,["hash","string","query","path","int","bool","date","json","any"]);this.types=Na(Fa(this.defaultTypes,((t,e)=>new rc(Object.assign({name:e},t)))),{})}type(t,e,n){if(!b(e))return this.types[t];if(vt(this.types,t))throw new Error(`A type named '${t}' has already been defined.`);return this.types[t]=new rc(Object.assign({name:t},e)),n&&(this.typeQueue.push({name:t,def:n}),this.enqueue||this._flushTypeQueue()),this}_flushTypeQueue(){for(;this.typeQueue.length;){const t=this.typeQueue.shift();if(t.pattern)throw new Error("You cannot override a type's .pattern at runtime.");Object.assign(this.types[t.name],window.angular.$injector.invoke(t.def))}}}!function(){const t=t=>{const e=t=>null!=t?t.toString():t,n={encode:e,decode:e,is:_a(String),pattern:/.*/,equals:(t,e)=>t==e};return Object.assign({},n,t)};Object.assign(sc.prototype,{string:t({}),path:t({pattern:/[^/]*/}),query:t({}),hash:t({inherit:!1}),int:t({decode:t=>parseInt(t,10),is:function(t){return!S(t)&&this.decode(t.toString())===t},pattern:/-?\d+/}),bool:t({encode:t=>t?1:0,decode:t=>0!==parseInt(t,10),is:_a(Boolean),pattern:/[01]/}),date:t({encode:function(t){return this.is(t)?[t.getFullYear(),("0"+(t.getMonth()+1)).slice(-2),("0"+t.getDate()).slice(-2)].join("-"):void 0},decode:function(t){if(this.is(t))return t;const e=this.capture.exec(t);return e?new Date(e[1],e[2]-1,e[3]):void 0},is:t=>t instanceof Date&&!isNaN(t.valueOf()),equals:(t,e)=>["getFullYear","getMonth","getDate"].reduce(((n,r)=>n&&t[r]()===e[r]()),!0),pattern:/[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])/,capture:/([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])/}),json:t({encode:JSON.stringify,decode:JSON.parse,is:_a(Object),equals:La,pattern:/[^/]*/}),any:t({encode:t=>t,decode:t=>t,is:()=>!0,equals:La})})}();class oc{constructor(){this.paramTypes=new sc,this._isCaseInsensitive=!1,this._isStrictMode=!0,this._defaultSquashPolicy=!1;const t=this.type("path");t.encode=t=>null!=t?t.toString().replace(/([~/])/g,(t=>({"~":"~~","/":"~2F"}[t]))):t,t.decode=t=>null!=t?t.toString().replace(/(~~|~2F)/g,(t=>({"~~":"~","~2F":"/"}[t]))):t,this.paramTypes.enqueue=!1,this.paramTypes._flushTypeQueue()}$get=[function(){return this}];caseInsensitive(t){return this._isCaseInsensitive=b(t)?t:this._isCaseInsensitive}defaultSquashPolicy(t){if(b(t)&&!0!==t&&!1!==t&&!E(t))throw new Error(`Invalid squash policy: ${t}. Valid policies: false, true, arbitrary-string`);return this._defaultSquashPolicy=b(t)?t:this._defaultSquashPolicy}strictMode(t){return this._isStrictMode=b(t)?t:this._isStrictMode}type(t,e,n){const r=this.paramTypes.type(t,e,n);return b(e)?this:r}}class ac{constructor(t={}){Object.assign(this,t)}$inherit(t,e,n){const r=function(t,e){const n=[];for(const r in t.path){if(t.path[r]!==e.path[r])break;n.push(t.path[r])}return n}(e,n),i={},s=[];for(const t in r){if(!r[t]||!r[t].params)continue;const e=r[t].params,n=Object.keys(e);if(n.length)for(const t in n)0==e[n[t]].inherit||s.indexOf(n[t])>=0||(s.push(n[t]),i[n[t]]=this[n[t]])}return Object.assign({},i,t)}}class cc{constructor(t=[],e=null){this._items=Array.isArray(t)?[...t]:[],this._limit=Number.isInteger(e)&&e>0?e:null,this._evictListeners=[],this.onEvict=Ma(this._evictListeners)}enqueue(t){return this._items.push(t),null!==this._limit&&this._items.length>this._limit&&this.evict(),t}evict(){const t=this._items.shift();return void 0!==t&&this._evictListeners.forEach((e=>e(t))),t}dequeue(){return this._items.length>0?this._items.shift():void 0}clear(){const t=[...this._items];return this._items.length=0,t}size(){return this._items.length}remove(t){const e=this._items.indexOf(t);return-1!==e&&this._items.splice(e,1)[0]}peekTail(){return this._items[this._items.length-1]}peekHead(){return this._items[0]}}class lc{constructor(){this.params=new ac,this.lastStartedTransitionId=-1,this.transitionHistory=new cc([],1),this.successfulTransitions=new cc([],1),this.current=void 0,this.$current=void 0,this.transition=void 0}$get=()=>this}function uc(t){if(Array.isArray(t)&&t.length){const e=t.slice(0,-1),n=t.slice(-1);return!(e.filter((t=>!E(t))).length||n.filter((t=>!O(t))).length)}return O(t)}function hc(t){return null!==t&&"object"==typeof t&&"function"==typeof t.then}function dc(t,e){return e.length<=t?e:e.substring(0,t-3)+"..."}function pc(t){const e=fc(t),n=e.match(/^(function [^ ]+\([^)]*\))/),r=n?n[1]:e,i=t.name||"";return i&&r.match(/function \(/)?"function "+i+r.substring(9):r}function fc(t){const e=Array.isArray(t)?t.slice(-1)[0]:t;return e&&e.toString()||"undefined"}function $c(t){const e=[],n=ja([[y,Ta("undefined")],[C,Ta("null")],[hc,Ta("[Promise]")],[t=>t&&"function"==typeof t.then&&"Rejection"==t.constructor.name,t=>t._transitionRejection.toString()],[t=>w(t)&&!Array.isArray(t)&&t.constructor!==Object&&O(t.toString),t=>t.toString()],[uc,pc],[Ta(!0),t=>t]]);function r(t){if(w(t)){if(-1!==e.indexOf(t))return"[circular ref]";e.push(t)}return n(t)}return y(t)?r(t):JSON.stringify(t,((t,e)=>r(e))).replace(/\\"/g,'"')}function mc(t,e){return E(Xa(t))&&E(e)?t.slice(0,-1).concat(Xa(t)+e):Wa(t,e)}function gc(t){if(!t)return"ng-view (defunct)";const e=t.creationContext?t.creationContext.name||"(root)":"(none)";return`[ng-view#${t.id}:${t.fqn} (${t.name}@${e})]`}function vc(t){return x(t)?yc[t]:yc[yc[t]]}const yc={RESOLVE:0,TRANSITION:1,HOOK:2,UIVIEW:3,VIEWCONFIG:4},bc=ka("$id"),wc=ka("router.$id"),Ec=t=>`Transition #${bc(t)}-${wc(t)}`;const Cc=new class{constructor(){this._enabled={},this.approximateDigests=0}_set(t,e){e.length||(e=Object.keys(yc).map((t=>parseInt(t,10))).filter((t=>!isNaN(t))).map((t=>yc[t]))),e.map(vc).forEach((e=>this._enabled[e]=t))}enable(...t){this._set(!0,t)}disable(...t){this._set(!1,t)}enabled(t){return!!this._enabled[vc(t)]}traceTransitionStart(t){this.enabled(yc.TRANSITION)&&console.log(`${Ec(t)}: Started -> ${$c(t)}`)}traceTransitionIgnored(t){this.enabled(yc.TRANSITION)&&console.log(`${Ec(t)}: Ignored <> ${$c(t)}`)}traceHookInvocation(t,e,n){if(!this.enabled(yc.HOOK))return;const r=ka("traceData.hookType")(n)||"internal",i=ka("traceData.context.state.name")(n)||ka("traceData.context")(n)||"unknown",s=pc(t.registeredHook.callback);console.log(`${Ec(e)}: Hook -> ${r} context: ${i}, ${dc(200,s)}`)}traceHookResult(t,e){this.enabled(yc.HOOK)&&console.log(`${Ec(e)}: <- Hook returned: ${dc(200,$c(t))}`)}traceResolvePath(t,e,n){this.enabled(yc.RESOLVE)&&console.log(`${Ec(n)}: Resolving ${t} (${e})`)}traceResolvableResolved(t,e){this.enabled(yc.RESOLVE)&&console.log(`${Ec(e)}: <- Resolved ${t} to: ${dc(200,$c(t.data))}`)}traceError(t,e){this.enabled(yc.TRANSITION)&&console.log(`${Ec(e)}: <- Rejected ${$c(e)}, reason: ${t}`)}traceSuccess(t,e){this.enabled(yc.TRANSITION)&&console.log(`${Ec(e)}: <- Success ${$c(e)}, final state: ${t.name}`)}traceUIViewEvent(t,e,n=""){this.enabled(yc.UIVIEW)&&console.log(`ng-view: ${function(t,e){for(;e.length<t;)e+=" ";return e}(30,t)} ${gc(e)}${n}`)}traceUIViewConfigUpdated(t,e){this.enabled(yc.UIVIEW)&&this.traceUIViewEvent("Updating",t,` with ViewConfig from context='${e}'`)}traceUIViewFill(t,e){this.enabled(yc.UIVIEW)&&this.traceUIViewEvent("Fill",t,` with: ${dc(200,e)}`)}traceViewSync(t){if(!this.enabled(yc.VIEWCONFIG))return;const e="uiview component fqn",n="view config state (view name)",r=t.map((({ngView:t,viewConfig:r})=>{const i=t&&t.fqn,s=r&&`${r.viewDecl.$context.name}: (${r.viewDecl.$name})`;return{[e]:i,[n]:s}})).sort(((t,n)=>(t[e]||"").localeCompare(n[e]||"")));console.table(r)}traceViewServiceEvent(t,e){this.enabled(yc.VIEWCONFIG)&&console.log(`VIEWCONFIG: ${t} ${(t=>{const e=t.viewDecl,n=e.$context.name||"(root)";return`[View#${t.$id} from '${n}' state]: target ng-view: '${e.$ngViewName}@${e.$ngViewContextAnchor}'`})(e)}`)}traceViewServiceUIViewEvent(t,e){this.enabled(yc.VIEWCONFIG)&&console.log(`VIEWCONFIG: ${t} ${gc(e)}`)}};let Sc="LAZY",xc="WAIT";class Ac{constructor(t,e,n,r,i){this.resolved=!1,this.promise=void 0,t instanceof Ac?Object.assign(this,t):O(e)?(at(!S(t),"token argument is required"),this.token=t,this.policy=r,this.resolveFn=e,this.deps=n||[],this.data=i,this.resolved=void 0!==i,this.promise=this.resolved?Promise.resolve(this.data):void 0):w(t)&&t.token&&(vt(t,"resolveFn")||vt(t,"data"))&&(this.token=t.token,this.resolveFn=t.resolveFn,this.deps=t.deps,this.policy=t.policy,this.data=t.data)}getPolicy(t){const e=this.policy||{},n=t&&t.resolvePolicy||{};return{when:e.when||n.when||Sc,async:e.async||n.async||xc}}resolve(t,e){const n=t.findNode(this),r=n&&n.state,i=this.getPolicy(r).async,s=O(i)?i:t=>t;return this.promise=Promise.resolve().then((()=>Promise.all(t.getDependencies(this).map((n=>n.get(t,e)))))).then((t=>this.resolveFn.apply(null,t))).then(s).then((t=>(this.data=t,this.resolved=!0,this.resolveFn=null,Cc.traceResolvableResolved(this,e),this.data))),this.promise}get(t,e){return this.promise||this.resolve(t,e)}toString(){return`Resolvable(token: ${$c(this.token)}, requires: [${this.deps.map($c)}])`}clone(){return new Ac(this)}}Ac.fromData=(t,e)=>new Ac(t,(()=>e),null,null,e);class kc{constructor(t,e,n,r){this._stateRegistry=t,this._identifier=e,this._identifier=e,this._params=Object.assign({},n||{}),this._options=Object.assign({},r||{}),this._definition=t.matcher.find(e,this._options.relative)}name(){return this._definition&&this._definition.name||this._identifier}identifier(){return this._identifier}params(){return this._params}$state(){return this._definition}state(){return this._definition&&this._definition.self}options(){return this._options}exists(){return!(!this._definition||!this._definition.self)}valid(){return!this.error()}error(){const t=this.options().relative;if(!this._definition&&t){const e=t.name?t.name:t;return`Could not resolve '${this.name()}' from state '${e}'`}return this._definition?this._definition.self?void 0:`State '${this.name()}' has an invalid definition`:`No such state '${this.name()}'`}toString(){return`'${this.name()}'${$c(this.params())}`}withState(t){return new kc(this._stateRegistry,t,this._params,this._options)}withParams(t,e=!1){const n=e?t:Object.assign({},this._params,t);return new kc(this._stateRegistry,this._identifier,n,this._options)}withOptions(t,e=!1){const n=e?t:Object.assign({},this._options,t);return new kc(this._stateRegistry,this._identifier,this._params,n)}}kc.isDef=t=>t&&t.state&&(E(t.state)||w(t.state)&&E(t.state.name));const Oc=0,_c=1,Tc=2;function jc(t,e,n){const r=!1===n.reloadOnSearch&&e===_c||void 0,i=Ha([n.dynamic,r],b),s=b(i)?{dynamic:i}:{},o=function(t){function e(){return t.value}t=(t=>0===["value","type","squash","array","dynamic"].filter(Object.prototype.hasOwnProperty.bind(t||{})).length)(t)?{value:t}:t,e.__cacheable=!0;const n=uc(t.value)?t.value:e;return Object.assign(t,{$$fn:n})}(n&&n.params&&n.params[t]);return Object.assign(s,o)}class Lc{constructor(t,e,n,r,i){const s=jc(t,n,i);e=function(t,e,n,r,i){if(t.type&&e&&"string"!==e.name)throw new Error(`Param '${r}' has two type configurations.`);if(t.type&&e&&"string"===e.name&&i.type(t.type))return i.type(t.type);if(e)return e;if(!t.type){const t=n===Tc?"any":n===Oc?"path":n===_c?"query":"string";return i.type(t)}return t.type instanceof rc?t.type:i.type(t.type)}(s,e,n,t,r.paramTypes);const o=function(){const e={array:n===_c&&"auto"},r=t.match(/\[\]$/)?{array:!0}:{};return Object.assign(e,r,s).array}();e=o?e.$asArray(o,n===_c):e;const a=void 0!==s.value||n===_c,c=b(s.dynamic)?!!s.dynamic:!!e.dynamic,l=b(s.raw)?!!s.raw:!!e.raw,u=function(t,e,n){const r=t.squash;if(!e||!1===r)return!1;if(!b(r)||null==r)return n;if(!0===r||E(r))return r;throw new Error(`Invalid squash policy: '${r}'. Valid policies: false, true, or arbitrary string`)}(s,a,r.defaultSquashPolicy()),h=function(t,e,n,r){const i=[{from:"",to:n||e?void 0:""},{from:null,to:n||e?void 0:""}],s=Array.isArray(t.replace)?t.replace:[];E(r)&&s.push({from:r,to:void 0});const o=Fa(s,(t=>t.from));return Ia(i,(t=>-1===o.indexOf(t.from))).concat(s)}(s,o,a,u),d=b(s.inherit)?!!s.inherit:!!e.inherit;this.isOptional=a,this.type=e,this.location=n,this.id=t,this.dynamic=c,this.raw=l,this.squash=u,this.replace=h,this.inherit=d,this.array=o,this.config=s}isDefaultValue(t){return this.isOptional&&this.type.equals(this.value(),t)}value(t){return t=(t=>{for(const e of this.replace)if(e.from===t)return e.to;return t})(t),y(t)?(()=>{if(this._defaultValueCache)return this._defaultValueCache.defaultValue;if(!window.angular.$injector)throw new Error("Injectable functions cannot be called at configuration time");const t=window.angular.$injector.invoke(this.config.$$fn);if(null!=t&&!this.type.is(t))throw new Error(`Default value (${t}) for parameter '${this.id}' is not an instance of ParamType (${this.type.name})`);return this.config.$$fn.__cacheable&&(this._defaultValueCache={defaultValue:t}),t})():this.type.$normalize(t)}isSearch(){return this.location===_c}validates(t){if((y(t)||null===t)&&this.isOptional)return!0;const e=this.type.$normalize(t);if(!this.type.is(e))return!1;const n=this.type.encode(e);return!(E(n)&&!this.type.pattern.exec(n))}toString(){return`{Param:${this.id} ${this.type} squash: '${this.squash}' optional: ${this.isOptional}}`}static values(t,e={}){const n={};for(const r of t)n[r.id]=r.value(e[r.id]);return n}static changed(t,e={},n={}){return t.filter((t=>!t.type.equals(e[t.id],n[t.id])))}static equals(t,e={},n={}){return 0===Lc.changed(t,e,n).length}static validates(t,e={}){return t.map((t=>t.validates(e[t.id]))).reduce(qa,!0)}}class Rc{constructor(t){if(t instanceof Rc){const e=t;this.state=e.state,this.paramSchema=e.paramSchema.slice(),this.paramValues=Object.assign({},e.paramValues),this.resolvables=e.resolvables.slice(),this.views=e.views&&e.views.slice()}else{const e=t;this.state=e,this.paramSchema=e.parameters({inherit:!1}),this.paramValues={},this.resolvables=e.resolvables.map((t=>t.clone()))}}clone(){return new Rc(this)}applyRawParams(t){return this.paramValues=this.paramSchema.reduce(((e,n)=>{return Za(e,[(r=n).id,r.value(t[r.id])]);var r}),{}),this}parameter(t){return Ha(this.paramSchema,Aa("id",t))}equals(t,e){const n=this.diff(t,e);return n&&0===n.length}diff(t,e){if(this.state!==t.state)return!1;const n=e?e(this):this.paramSchema;return Lc.changed(n,this.paramValues,t.paramValues)}}class Nc{static buildPath(t){const e=t.params();return t.$state().path.map((t=>new Rc(t).applyRawParams(e)))}static buildToPath(t,e){const n=Nc.buildPath(e);return e.options().inherit?Nc.inheritParams(t,n,Object.keys(e.params())):n}static applyViewConfigs(t,e,n){e.filter((t=>n.includes(t.state))).forEach((n=>{const r=Object.values(n.state.views||{}),i=Nc.subPath(e,(t=>t===n)),s=r.map((e=>t.createViewConfig(i,e)));n.views=s.reduce(za,[])}))}static inheritParams(t,e,n=[]){const r=t.map((t=>t.paramSchema)).reduce(za,[]).filter((t=>!t.inherit)).map((t=>t.id));return e.map((function(e){let i=Object.assign({},e&&e.paramValues);const s=Da(i,n);i=Ua(i,n);const o=Ua(function(t,e){const n=Ha(t,Aa("state",e));return Object.assign({},n&&n.paramValues)}(t,e.state)||{},r),a=Object.assign(i,o,s);return new Rc(e.state).applyRawParams(a)}))}static treeChanges(t,e,n){const r=Math.min(t.length,e.length);let i=0;for(;i<r&&t[i].state!==n&&(s=t[i],o=e[i],s.equals(o,Nc.nonDynamicParams));)i++;var s,o;let a,c,l,u,h;a=t,c=a.slice(0,i),l=a.slice(i);const d=c.map((function(t,n){const r=t.clone();return r.paramValues=e[n].paramValues,r}));return u=e.slice(i),h=d.concat(u),{from:a,to:h,retained:c,retainedWithToParams:d,exiting:l,entering:u}}static matching(t,e,n){let r=!1;return Ja(t,e).reduce(((t,[e,i])=>(r=r||!e.equals(i,n),r?t:t.concat(e))),[])}static equals(t,e,n){return t.length===e.length&&Nc.matching(t,e,n).length===t.length}static subPath(t,e){const n=Ha(t,e),r=t.indexOf(n);return-1===r?void 0:t.slice(0,r+1)}static nonDynamicParams(t){return t.state.parameters({inherit:!1}).filter((t=>!t.dynamic))}static paramValues(t){return t.reduce(((t,e)=>Object.assign(t,e.paramValues)),{})}}function Vc(t,e){return new kc(t,e.at(-1).state,e.map((t=>t.paramValues)).reduce(((t,e)=>({...t,...e})),{}),{})}const Mc={LAZY:"LAZY",EAGER:"EAGER"},Pc=[Mc.EAGER,Mc.LAZY],Dc=[Mc.EAGER];class Uc{constructor(t){this._path=t}getTokens(){return this._path.reduce(((t,e)=>t.concat(e.resolvables.map((t=>t.token)))),[]).reduce(Ga,[])}getResolvable(t){return Xa(this._path.map((t=>t.resolvables)).reduce(za,[]).filter((e=>e.token===t)))}getPolicy(t){const e=this.findNode(t);return t.getPolicy(e)}subContext(t){return new Uc(Nc.subPath(this._path,(e=>e.state===t)))}addResolvables(t,e){const n=Ha(this._path,Aa("state",e)),r=t.map((t=>t.token));n.resolvables=n.resolvables.filter((t=>-1===r.indexOf(t.token))).concat(t)}resolvePath(t="LAZY",e){const n=(Pc.includes(t)?t:"LAZY")===Mc.EAGER?Dc:Pc;Cc.traceResolvePath(this._path,t,e);const r=(t,e)=>n=>t.includes(this.getPolicy(n)[e]),i=this._path.reduce(((t,i)=>{const s=i.resolvables.filter(r(n,"when")),o=s.filter(r(["NOWAIT"],"async")),a=s.filter((t=>!r(["NOWAIT"],"async")(t))),c=this.subContext(i.state),l=t=>t.get(c,e).then((e=>({token:t.token,value:e})));return o.forEach(l),t.concat(a.map(l))}),[]);return Promise.all(i)}injector(){return this._injector||(this._injector=new Ic)}findNode(t){return Ha(this._path,(e=>e.resolvables.includes(t)))}getDependencies(t){const e=this.findNode(t),n=(Nc.subPath(this._path,(t=>t===e))||this._path).reduce(((t,e)=>t.concat(e.resolvables)),[]).filter((e=>e!==t));return t.deps.map((t=>{const e=n.filter((e=>e.token===t));if(e.length)return Xa(e);const r=window.angular.$injector.get(t);if(y(r))throw new Error("Could not find Dependency Injection token: "+$c(t));return new Ac(t,(()=>r),[],r)}))}}class Ic{constructor(){this.native=window.angular.$injector}get(t){return window.angular.$injector.get(t)}getAsync(t){return Promise.resolve(window.angular.$injector.get(t))}getNative(t){return window.angular.$injector.get(t)}}const Hc=(t,e)=>t.reduce(((t,n)=>t||b(e[n])),!1);function Fc(t){if(!t.parent)return{};const e=["component","bindings","componentProvider"],n=["templateProvider","templateUrl","template","notify","async"].concat(["controller","controllerProvider","controllerAs","resolveAs"]),r=e.concat(n);if(b(t.views)&&Hc(r,t))throw new Error(`State '${t.name}' has a 'views' object. It cannot also have "view properties" at the state level. Move the following properties into a view (in the 'views' object): ${r.filter((e=>b(t[e]))).join(", ")}`);const i={},s=t.views||{$default:Da(t,r)};return Object.entries(s).forEach((([r,s])=>{if(r=r||"$default",E(s)&&(s={component:s}),s=Object.assign({},s),Hc(e,s)&&Hc(n,s))throw new Error(`Cannot combine: ${e.join("|")} with: ${n.join("|")} in stateview: '${r}@${t.name}'`);s.resolveAs=s.resolveAs||"$resolve",s.$context=t,s.$name=r;const o=Bc.normalizeUIViewTarget(s.$context,s.$name);s.$ngViewName=o.ngViewName,s.$ngViewContextAnchor=o.ngViewContextAnchor,i[r]=s})),i}let qc=0;class Bc{constructor(t,e,n){this.path=t,this.viewDecl=e,this.factory=n,this.component=void 0,this.template=void 0,this.$id=qc++,this.loaded=!1,this.getTemplate=(t,e)=>this.component?this.factory.makeComponentTemplate(t,e,this.component,this.viewDecl.bindings):this.template}load(){const t=new Uc(this.path),e=this.path.reduce(((t,e)=>Object.assign(t,e.paramValues)),{}),n=[Promise.resolve(this.factory.fromConfig(this.viewDecl,e,t)),Promise.resolve(this.getController(t))];return Promise.all(n).then((t=>(Cc.traceViewServiceEvent("Loaded",this),this.controller=t[1],Object.assign(this,t[0]),this)))}getController(t){const e=this.viewDecl.controllerProvider;if(!uc(e))return this.viewDecl.controller;const n=Ce(e),r=Array.isArray(e)?Xa(e):e;return new Ac("",r,n).get(t)}static normalizeUIViewTarget(t,e=""){const n=e.split("@");let r=n[0]||"$default",i=E(n[1])?n[1]:"^";const s=/^(\^(?:\.\^)*)\.(.*$)/.exec(r);s&&(i=s[1],r=s[2]),"!"===r.charAt(0)&&(r=r.substring(1),i="");if(/^(\^(?:\.\^)*)$/.exec(i)){const e=i.split(".").reduce((t=>t.parent),t);i=e.name}else"."===i&&(i=t.name);return{ngViewName:r,ngViewContextAnchor:i}}}class zc{constructor(){this._ngViews=[],this._viewConfigs=[],this._viewConfigFactories={},this._listeners=[],this._pluginapi={_registeredUIView:t=>Ha(this._ngViews,(e=>e.id===t)),_registeredUIViews:()=>this._ngViews,_activeViewConfigs:()=>this._viewConfigs,_onSync:t=>(this._listeners.push(t),()=>Va(this._listeners,t))},this.viewConfigFactory(function(){let t=null;return(e,n)=>(t=t||window.angular.$injector.get("$templateFactory"),new Bc(e,n,t))}())}$get=[()=>this];rootViewContext(t){return this._rootContext=t||this._rootContext}viewConfigFactory(t){this.viewConfigFactory=t}createViewConfig(t,e){const n=this.viewConfigFactory;if(!n)throw new Error("ViewService: No view config factory registered for type "+e.$type);return n(t,e)}deactivateViewConfig(t){Cc.traceViewServiceEvent("<- Removing",t),Va(this._viewConfigs,t)}activateViewConfig(t){Cc.traceViewServiceEvent("-> Registering",t),this._viewConfigs.push(t)}sync(){const t=this._ngViews.map((t=>[t.fqn,t])).reduce(Za,{});function e(t){let e=t.viewDecl.$context,n=0;for(;++n&&e.parent;)e=e.parent;return n}const n=Ca(((t,e,n,r)=>e*(t(n)-t(r)))),r=t=>{-1!==this._ngViews.indexOf(t.ngView)&&t.ngView.configUpdated(t.viewConfig)},i=this._ngViews.sort(n((function(t){const e=t=>t&&t.parent?e(t.parent)+1:1;return 1e4*t.fqn.split(".").length+e(t.creationContext)}),1)).map((r=>{const i=this._viewConfigs.filter(zc.matches(t,r));return i.length>1&&i.sort(n(e,-1)),{ngView:r,viewConfig:i[0]}})),s=i.map((t=>t.viewConfig)),o=this._viewConfigs.filter((t=>!s.includes(t))).map((t=>({ngView:void 0,viewConfig:t})));i.forEach((t=>{r(t)}));const a=i.concat(o);this._listeners.forEach((t=>t(a))),Cc.traceViewSync(a)}registerUIView(t){Cc.traceViewServiceUIViewEvent("-> Registering",t);const e=this._ngViews;return e.filter((e=>e.fqn===t.fqn)).length&&Cc.traceViewServiceUIViewEvent("!!!! duplicate ngView named:",t),e.push(t),this.sync(),()=>{-1!==e.indexOf(t)?(Cc.traceViewServiceUIViewEvent("<- Deregistering",t),Va(e)(t)):Cc.traceViewServiceUIViewEvent("Tried removing non-registered ngView",t)}}available(){return this._ngViews.map((t=>t.fqn))}active(){return this._ngViews.filter((t=>t.$config)).map((t=>t.name))}}zc.matches=(t,e)=>n=>{if(e.$type!==n.viewDecl.$type)return!1;const r=n.viewDecl,i=r.$ngViewName.split("."),s=e.fqn.split(".");if(!La(i,s.slice(0-i.length)))return!1;const o=1-i.length||void 0,a=s.slice(0,o).join("."),c=t[a].creationContext;return r.$ngViewContextAnchor===(c&&c.name)};const Kc={CREATE:0,BEFORE:1,RUN:2,SUCCESS:3,ERROR:4},Wc={TRANSITION:0,STATE:1},Gc=2,Qc=3,Yc=4,Jc=5,Zc=6;let Xc=0;class tl{static superseded(t,e){const n=new tl(Gc,"The transition has been superseded by a different transition",t);return e&&e.redirected&&(n.redirected=!0),n}static redirected(t){return tl.superseded(t,{redirected:!0})}static invalid(t){return new tl(Yc,"This transition is invalid",t)}static ignored(t){return new tl(Jc,"The transition was ignored",t)}static aborted(t){return new tl(Qc,"The transition has been aborted",t)}static errored(t){return new tl(Zc,"The transition errored",t)}static normalize(t){return _a(tl)(t)?t:tl.errored(t)}constructor(t,e,n){this.$id=Xc++,this.type=t,this.message=e,this.detail=n,this.redirected=!1}toString(){const t=(e=this.detail)&&e.toString!==Object.prototype.toString?e.toString():$c(e);var e;const{$id:n,type:r,message:i}=this;return`Transition Rejection($id: ${n} type: ${r}, message: ${i}, detail: ${t})`}toPromise(){return Object.assign(nc(this),{_transitionRejection:this})}}class el{constructor(){this.eventBus=rl}$get=()=>this.eventBus}class nl{constructor(t=!1){this.disposed=!1,this.key=1,this.pendingKeys=[],this.publishDepth=0,this.subscriptions=[],this.topics={},this.async_=Boolean(t)}subscribe(t,e,n=null){let r=this.topics[t];r||(r=this.topics[t]=[]);const i=this.key;return this.subscriptions[i]=t,this.subscriptions[i+1]=e,this.subscriptions[i+2]=n,this.key=i+3,r.push(i),i}subscribeOnce(t,e,n=null){let r=!1;const i=this.subscribe(t,((...t)=>{r||(r=!0,this.unsubscribeByKey(i),e.apply(n,t))}),this);return i}static runAsync_(t,e,n){Promise.resolve().then((()=>{t.apply(e,n)}))}unsubscribe(t,e,n=null){const r=this.topics[t];if(r){const t=this.subscriptions,i=r.find((r=>t[r+1]===e&&t[r+2]===n));if(void 0!==i)return this.unsubscribeByKey(i)}return!1}unsubscribeByKey(t){const e=this.subscriptions[t];if(e){let n=this.topics[e];0!==this.publishDepth?(this.pendingKeys.push(t),this.subscriptions[t+1]=()=>{}):(n&&(this.topics[e]=n.filter((e=>e!==t))),delete this.subscriptions[t],delete this.subscriptions[t+1],delete this.subscriptions[t+2])}return!!e}publish(t,...e){const n=this.topics[t];if(n){const t=e;if(this.async_)for(let e=0;e<n.length;e++){const r=n[e];nl.runAsync_(this.subscriptions[r+1],this.subscriptions[r+2],t)}else{this.publishDepth++;try{for(let e=0,r=n.length;e<r&&!this.isDisposed();e++){const r=n[e];this.subscriptions[r+1].apply(this.subscriptions[r+2],t)}}finally{if(this.publishDepth--,this.pendingKeys.length>0&&0===this.publishDepth){let t;for(;t=this.pendingKeys.pop();)this.unsubscribeByKey(t)}}}return!0}return!1}clear(t){if(t){const e=this.topics[t];e&&(e.forEach(this.unsubscribeByKey,this),delete this.topics[t])}else this.subscriptions.length=0,this.topics={}}getCount(t){if(t){const e=this.topics[t];return e?e.length:0}let e=0;for(const t in this.topics)e+=this.getCount(t);return e}isDisposed(){return this.disposed}dispose(){this.clear(),this.pendingKeys.length=0,this.disposed=!0}}const rl=new nl(!0),il={current:()=>{},transition:null,traceData:{},bind:null};class sl{static chain(t,e){return t.reduce(((t,e)=>t.then((()=>e.invokeHook()))),e||Promise.resolve())}static invokeHooks(t,e){for(let n=0;n<t.length;n++){const r=t[n].invokeHook();if(hc(r)){const i=t.slice(n+1);return sl.chain(i,r).then((()=>{e()}))}}return e()}static runAllHooks(t){t.forEach((t=>t.invokeHook()))}constructor(t,e,n,r){this.transition=t,this.stateContext=e,this.registeredHook=n,this.options=r,this.isSuperseded=()=>this.type.hookPhase===Kc.RUN&&!this.options.transition.isActive(),this.options=Pa(r,il),this.type=n.eventType}logError(t){rl.publish("$stateService:defaultErrorHandler",t)}invokeHook(){const t=this.registeredHook;if(t._deregistered)return;const e=this.getNotCurrentRejection();if(e)return e;const n=this.options;Cc.traceHookInvocation(this,this.transition,n);const r=()=>t.callback.call(n.bind,this.transition,this.stateContext),i=t=>tl.normalize(t).toPromise(),s=e=>t.eventType.getErrorHandler(this)(e),o=e=>t.eventType.getResultHandler(this)(e);try{const t=r();return!this.type.synchronous&&hc(t)?t.catch(i).then(o,s):o(t)}catch(t){return s(tl.normalize(t))}finally{t.invokeLimit&&++t.invokeCount>=t.invokeLimit&&t.deregister()}}handleHookResult(t){const e=this.getNotCurrentRejection();return e||(hc(t)?t.then((t=>this.handleHookResult(t))):(Cc.traceHookResult(t,this.transition),!1===t?tl.aborted("Hook aborted transition").toPromise():t instanceof kc?tl.redirected(t).toPromise():void 0))}getNotCurrentRejection(){return this.transition._aborted?tl.aborted().toPromise():this.isSuperseded()?tl.superseded(this.options.current()).toPromise():void 0}toString(){const{options:t,registeredHook:e}=this;return`${ka("traceData.hookType")(t)||"internal"} context: ${ka("traceData.context.state.name")(t)||ka("traceData.context")(t)||"unknown"}, ${dc(200,fc(e.callback))}`}}sl.HANDLE_RESULT=t=>e=>t.handleHookResult(e),sl.LOG_REJECTED_RESULT=t=>e=>{hc(e)&&e.catch((e=>t.logError(tl.normalize(e))))},sl.LOG_ERROR=t=>e=>t.logError(e),sl.REJECT_ERROR=()=>t=>nc(t),sl.THROW_ERROR=()=>t=>{throw t};class ol{static fromString(t){return function(t){return!!/[!,*]+/.exec(t)}(t)?new ol(t):null}constructor(t){this.text=t,this.glob=t.split(".");const e=this.text.split(".").map((t=>"**"===t?"(?:|(?:\\.[^.]*)*)":"*"===t?"\\.[^.]*":"\\."+t)).join("");this.regexp=new RegExp("^"+e+"$")}matches(t){return this.regexp.test("."+t)}}function al(t,e,n){const r=E(e)?[e]:e;return!!(O(r)?r:function(t){const e=r;for(let n=0;n<e.length;n++){const r=new ol(e[n]);if(r&&r.matches(t.name)||!r&&e[n]===t.name)return!0}return!1})(t,n)}class cl{constructor(t,e,n,r,i,s={}){this.tranSvc=t,this.eventType=e,this.callback=n,this.matchCriteria=r,this.removeHookFromRegistry=i,this.invokeCount=0,this._deregistered=!1,this.priority=s.priority||0,this.bind=s.bind||null,this.invokeLimit=s.invokeLimit}_matchingNodes(t,e,n){if(!0===e)return t;const r=t.filter((t=>al(t.state,e,n)));return r.length?r:null}_getDefaultMatchCriteria(){return Fa(this.tranSvc._pluginapi._getPathTypes(),(()=>!0))}_getMatchingNodes(t,e){const n=Object.assign(this._getDefaultMatchCriteria(),this.matchCriteria);return Object.values(this.tranSvc._pluginapi._getPathTypes()).reduce(((r,i)=>{const s=i.scope===Wc.STATE,o=t[i.name]||[],a=s?o:[Xa(o)];return r[i.name]=this._matchingNodes(a,n[i.name],e),r}),{})}matches(t,e){const n=this._getMatchingNodes(t,e);return Object.values(n).every((t=>t))?n:null}deregister(){this.removeHookFromRegistry(this),this._deregistered=!0}}function ll(t,e,n){const r=(t._registeredHooks=t._registeredHooks||{})[n.name]=[],i=Va(r);function s(t,s,o={}){const a=new cl(e,n,s,t,i,o);return r.push(a),a.deregister.bind(a)}return t[n.name]=s,s}class ul{constructor(t){this.transition=t}buildHooksForPhase(t){return this.transition.transitionService._pluginapi._getEvents(t).map((t=>this.buildHooks(t))).reduce(za,[]).filter(Boolean)}buildHooks(t){const e=this.transition,n=e.treeChanges(),r=this.getMatchingHooks(t,n,e);if(!r)return[];const i={transition:e,current:e.options().current};return r.map((r=>r.matches(n,e)[t.criteriaMatchPath.name].map((n=>{const s=Object.assign({bind:r.bind,traceData:{hookType:t.name,context:n}},i),o=t.criteriaMatchPath.scope===Wc.STATE?n.state.self:null,a=new sl(e,o,r,s);return{hook:r,node:n,transitionHook:a}})))).reduce(za,[]).sort(function(t=!1){return function(e,n){const r=t?-1:1,i=(e.node.state.path.length-n.node.state.path.length)*r;return 0!==i?i:n.hook.priority-e.hook.priority}}(t.reverseSort)).map((t=>t.transitionHook))}getMatchingHooks(t,e,n){const r=t.hookPhase===Kc.CREATE,i=this.transition.transitionService;return(r?[i]:[this.transition,i]).map((e=>e.getHooks(t.name))).filter(Ya(Array.isArray,`broken event named: ${t.name}`)).reduce(za,[]).filter((t=>t.matches(e,n)))}}class hl{constructor(t,e,n,r){if(this.globals=r,this.transitionService=n,this._deferred=Promise.withResolvers(),this.promise=this._deferred.promise,this._registeredHooks={},this._hookBuilder=new ul(this),this.isActive=()=>this.globals.transition===this,this._targetState=e,!e.valid())throw new Error(e.error());this._options=Object.assign({current:Ta(this)},e.options()),this.$id=n._transitionCount++;const i=Nc.buildToPath(t,e);this._treeChanges=Nc.treeChanges(t,i,this._options.reloadState),this.createTransitionHookRegFns();const s=this._hookBuilder.buildHooksForPhase(Kc.CREATE);sl.invokeHooks(s,(()=>null)),this.applyViewConfigs(),this.onStart=void 0,this.onBefore=void 0,this.onSuccess=void 0,this.onEnter=void 0,this.onRetain=void 0,this.onExit=void 0,this.onFinish=void 0,this.onError=void 0}createTransitionHookRegFns(){this.transitionService._pluginapi._getEvents().filter((t=>t.hookPhase!==Kc.CREATE)).forEach((t=>ll(this,this.transitionService,t)))}getHooks(t){return this._registeredHooks[t]}applyViewConfigs(){const t=this._treeChanges.entering.map((t=>t.state));Nc.applyViewConfigs(this.transitionService.$view,this._treeChanges.to,t)}$from(){return Xa(this._treeChanges.from).state}$to(){return Xa(this._treeChanges.to).state}from(){return this.$from().self}to(){return this.$to().self}targetState(){return this._targetState}is(t){return t instanceof hl?this.is({to:t.$to().name,from:t.$from().name}):!(t.to&&!al(this.$to(),t.to,this)||t.from&&!al(this.$from(),t.from,this))}params(t="to"){return Object.freeze(this._treeChanges[t].map((t=>t.paramValues)).reduce(((t,e)=>({...t,...e})),{}))}paramsChanged(){const t=this.params("from"),e=this.params("to"),n=[].concat(this._treeChanges.to).concat(this._treeChanges.from).map((t=>t.paramSchema)).reduce(Ka,[]).reduce(Ga,[]);return Lc.changed(n,t,e).reduce(((t,n)=>(t[n.id]=e[n.id],t)),{})}injector(t,e="to"){let n=this._treeChanges[e];return t&&(n=Nc.subPath(n,(e=>e.state===t||e.state.name===t))),new Uc(n).injector()}getResolveTokens(t="to"){return new Uc(this._treeChanges[t]).getTokens()}addResolvable(t,e){void 0===e&&(e=""),t=_a(Ac)(t)?t:new Ac(t);const n="string"==typeof e?e:e.name,r=this._treeChanges.to,i=Ha(r,(t=>t.state.name===n));at(!!i,`targetNode not found ${n}`);new Uc(r).addResolvables([t],i.state)}redirectedFrom(){return this._options.redirectedFrom||null}originalTransition(){const t=this.redirectedFrom();return t&&t.originalTransition()||this}options(){return this._options}entering(){return Fa(this._treeChanges.entering,(t=>t.state)).map((t=>t.self))}exiting(){return Fa(this._treeChanges.exiting,(t=>t.state)).map((t=>t.self)).reverse()}retained(){return Fa(this._treeChanges.retained,(t=>t.state)).map((t=>t.self))}views(t="entering",e){let n=this._treeChanges[t];return n=e?n.filter(Aa("state",e)):n,n.map((t=>t.views)).reduce(za,[])}treeChanges(t){return t?this._treeChanges[t]:this._treeChanges}redirect(t){let e=1,n=this;for(;null!=(n=n.redirectedFrom());)if(++e>20)throw new Error("Too many consecutive Transition redirects (20+)");const r={redirectedFrom:this,source:"redirect"};"url"===this.options().source&&!1!==t.options().location&&(r.location="replace");const i=Object.assign({},this.options(),t.options(),r);t=t.withOptions(i,!0);const s=this.transitionService.create(this._treeChanges.from,t),o=this._treeChanges.entering,a=s._treeChanges.entering;return Nc.matching(a,o,Nc.nonDynamicParams).filter((e=>{return!(n=t.options().reloadState,t=>n&&t.state.includes[n.name])(e);var n})).forEach(((t,e)=>{t.resolvables=o[e].resolvables})),s}_changedParams(){const t=this._treeChanges;if(this._options.reload)return;if(t.exiting.length||t.entering.length)return;if(t.to.length!==t.from.length)return;if(Ja(t.to,t.from).map((t=>t[0].state!==t[1].state)).reduce(Ba,!1))return;const e=t.to.map((t=>t.paramSchema)),[n,r]=[t.to,t.from].map((t=>t.map((t=>t.paramValues))));return Ja(e,n,r).map((([t,e,n])=>Lc.changed(t,e,n))).reduce(za,[])}dynamic(){const t=this._changedParams();return!!t&&t.map((t=>t.dynamic)).reduce(Ba,!1)}ignored(){return!!this._ignoredReason()}_ignoredReason(){const t=this.globals.transition,e=this._options.reloadState,n=(t,n)=>{if(t.length!==n.length)return!1;const r=Nc.matching(t,n);return t.length===r.filter((t=>!e||!t.state.includes[e.name])).length},r=this.treeChanges(),i=t&&t.treeChanges();return i&&n(i.to,r.to)&&n(i.exiting,r.exiting)?"SameAsPending":0===r.exiting.length&&0===r.entering.length&&n(r.from,r.to)?"SameAsCurrent":void 0}run(){const t=t=>this._hookBuilder.buildHooksForPhase(t),e=t(Kc.BEFORE);return sl.invokeHooks(e,(()=>{const t=this.globals;return t.lastStartedTransitionId=this.$id,t.transition=this,t.transitionHistory.enqueue(this),Cc.traceTransitionStart(this),Promise.resolve()})).then((()=>{const e=t(Kc.RUN),n=Promise.resolve();return sl.invokeHooks(e,(()=>n))})).then((()=>{Cc.traceSuccess(this.$to(),this),this.success=!0,this._deferred.resolve(this.to());this._hookBuilder.buildHooksForPhase(Kc.SUCCESS).forEach((t=>{t.invokeHook()}))}),(e=>{Cc.traceError(e,this),this.success=!1,this._deferred.reject(e),this._error=e;t(Kc.ERROR).forEach((t=>t.invokeHook()))})),this.promise}valid(){return!this.error()||void 0!==this.success}abort(){y(this.success)&&(this._aborted=!0)}error(){const t=this.$to();if(t.self.abstract)return tl.invalid(`Cannot transition to abstract state '${t.name}'`);const e=t.parameters(),n=this.params(),r=e.filter((t=>!t.validates(n[t.id])));if(r.length){const e=r.map((t=>`[${t.id}:${$c(n[t.id])}]`)).join(", "),i=`The following parameter values are not valid for state '${t.name}': ${e}`;return tl.invalid(i)}return!1===this.success?this._error:void 0}toString(){const t=this.from(),e=this.to(),n=t=>null!==t["#"]&&void 0!==t["#"]?t:Ua(t,["#"]);return`Transition#${this.$id}( '${w(t)?t.name:t}'${$c(n(this._treeChanges.from.map((t=>t.paramValues)).reduce(((t,e)=>({...t,...e})),{})))} -> ${this.valid()?"":"(X) "}'${w(e)?e.name:e}'${$c(n(this.params()))} )`}}hl.diToken=hl;const dl=["$transition$",hl];function pl(t){const e=Object.values(t.treeChanges()).reduce(za,[]).reduce(Ga,[]),n=t=>dl.includes(t.token)?Ac.fromData(t.token,null):t;e.forEach((t=>{t.resolvables=t.resolvables.map(n)}))}function fl(t){return(e,n)=>(0,n.$$state()[t])(e,n)}const $l=fl("onExit"),ml=fl("onRetain"),gl=fl("onEnter"),vl=1e3,yl=t=>new Uc(t.treeChanges().to).resolvePath("EAGER",t).then((()=>{})),bl=(t,e)=>new Uc(t.treeChanges().to).subContext(e.$$state()).resolvePath("LAZY",t).then((()=>{})),wl=t=>new Uc(t.treeChanges().to).resolvePath("LAZY",t).then((()=>{})),El=t=>{const e=t.views("entering");if(e.length)return Promise.all(e.map((t=>Promise.resolve(t.load())))).then((()=>{}))},Cl=t=>{const e=t.globals,n=()=>{e.transition===t&&(e.transition=null)};t.onSuccess({},(()=>{e.successfulTransitions.enqueue(t),e.$current=t.$to(),e.current=e.$current.self,tc(t.params(),e.params)}),{priority:1e4}),t.promise.then(n,n)};function Sl(t,e,n,r){return t.onBefore({entering:t=>!!t.lazyLoad},(t=>{const i=t.entering().filter((t=>!!t.$$state().lazyLoad)).map((e=>xl(t,e,r)));return Promise.all(i).then((function(){if("url"!==t.originalTransition().options().source){const n=t.targetState();return e.target(n.identifier(),n.params(),n.options())}const r=n.match(n.parts()),i=r&&r.rule;if(i&&"STATE"===i.type){const n=i.state,s=r.match;return e.target(n,s,t.options())}n.sync()}))}))}function xl(t,e,n){const r=e.$$state().lazyLoad;let i=r._promise;if(!i){const s=t=>(delete e.lazyLoad,delete e.$$state().lazyLoad,delete r._promise,t),o=t=>(delete r._promise,Promise.reject(t));i=r._promise=Promise.resolve(r(t,e)).then((function(t){t&&Array.isArray(t.states)&&t.states.forEach((t=>n.register(t)));return t})).then(s,o)}return i}class Al{constructor(t,e,n,r,i=!1,s=sl.HANDLE_RESULT,o=sl.REJECT_ERROR,a=!1){this.name=t,this.hookPhase=e,this.hookOrder=n,this.criteriaMatchPath=r,this.reverseSort=i,this.getResultHandler=s,this.getErrorHandler=o,this.synchronous=a}}function kl(t){const e=t._ignoredReason();if(!e)return;Cc.traceTransitionIgnored(t);const n=t.globals.transition;return"SameAsCurrent"===e&&n&&n.abort(),tl.ignored().toPromise()}function Ol(t){if(!t.valid())throw new Error(t.error().toString())}let _l={location:!0,relative:null,inherit:!1,notify:!0,reload:!1,supercede:!0,custom:{},current:()=>null,source:"unknown"};class Tl{static $inject=["$routerGlobalsProvider","$viewProvider"];constructor(t,e){this._transitionCount=0,this._eventTypes=[],this._registeredHooks={},this._criteriaPaths={},this.globals=t,this.$view=e,this._deregisterHookFns={},this._pluginapi=Ra(Ta(this),{},Ta(this),["_definePathType","_defineEvent","_getPathTypes","_getEvents","getHooks"]),this._defineCorePaths(),this._defineCoreEvents(),this._registerCoreTransitionHooks(),t.successfulTransitions.onEvict(pl)}$get=["$state","$urlService","$stateRegistry","$view",(t,e,n,r)=>(this._deregisterHookFns.lazyLoad=Sl(this,t,e,n),this._deregisterHookFns.updateUrl=((t,e,n)=>{t.onSuccess({},(t=>{const r=t.options(),i=e;if("url"!==r.source&&r.location&&i.$current.navigable){const t={replace:"replace"===r.location};n.push(i.$current.navigable.url,i.globals.params,t)}n.update(!0)}),{priority:9999})})(this,t,e),this._deregisterHookFns.redirectTo=((t,e)=>{t.onStart({to:t=>!!t.redirectTo},(t=>{const n=t.to().redirectTo;if(!n)return;const r=e;function i(e){if(e)return e instanceof kc?e:E(e)?r.target(e,t.params(),t.options()):e.state||e.params?r.target(e.state||t.to(),e.params||t.params(),t.options()):void 0}return O(n)?Promise.resolve(n(t)).then(i):i(n)}))})(this,t),this._deregisterHookFns.activateViews=((t,e)=>{t.onSuccess({},(t=>{const n=t.views("entering"),r=t.views("exiting");(n.length||r.length)&&(r.forEach((t=>e.deactivateViewConfig(t))),n.forEach((t=>{e.activateViewConfig(t)})),e.sync())}))})(this,r),this)];create(t,e){return new hl(t,e,this,this.globals)}_defineCoreEvents(){const t=Kc,e=sl,n=this._criteriaPaths,r=!1,i=!0;this._defineEvent("onCreate",t.CREATE,0,n.to,r,e.LOG_REJECTED_RESULT,e.THROW_ERROR,i),this._defineEvent("onBefore",t.BEFORE,0,n.to),this._defineEvent("onStart",t.RUN,0,n.to),this._defineEvent("onExit",t.RUN,100,n.exiting,!0),this._defineEvent("onRetain",t.RUN,200,n.retained),this._defineEvent("onEnter",t.RUN,300,n.entering),this._defineEvent("onFinish",t.RUN,400,n.to),this._defineEvent("onSuccess",t.SUCCESS,0,n.to,r,e.LOG_REJECTED_RESULT,e.LOG_ERROR,i),this._defineEvent("onError",t.ERROR,0,n.to,r,e.LOG_REJECTED_RESULT,e.LOG_ERROR,i)}_defineCorePaths(){const{STATE:t,TRANSITION:e}=Wc;this._definePathType("to",e),this._definePathType("from",e),this._definePathType("exiting",t),this._definePathType("retained",t),this._definePathType("entering",t)}_defineEvent(t,e,n,r,i=!1,s=sl.HANDLE_RESULT,o=sl.REJECT_ERROR,a=!1){const c=new Al(t,e,n,r,i,s,o,a);this._eventTypes.push(c),ll(this,this,c)}_getEvents(t){return(b(t)?this._eventTypes.filter((e=>e.hookPhase===t)):this._eventTypes.slice()).sort(((t,e)=>{const n=t.hookPhase-e.hookPhase;return 0===n?t.hookOrder-e.hookOrder:n}))}_definePathType(t,e){this._criteriaPaths[t]={name:t,scope:e}}_getPathTypes(){return this._criteriaPaths}getHooks(t){return this._registeredHooks[t]}_registerCoreTransitionHooks(){const t=this._deregisterHookFns;t.addCoreResolves=void this.onCreate({},(function(t){t.addResolvable(Ac.fromData(hl,t),""),t.addResolvable(Ac.fromData("$transition$",t),""),t.addResolvable(Ac.fromData("$stateParams",t.params()),""),t.entering().forEach((e=>{t.addResolvable(Ac.fromData("$state$",e),e)}))})),t.ignored=(t=>t.onBefore({},kl,{priority:-9999}))(this),t.invalid=(t=>t.onBefore({},Ol,{priority:-1e4}))(this),t.onExit=(t=>t.onExit({exiting:t=>!!t.onExit},$l))(this),t.onRetain=(t=>t.onRetain({retained:t=>!!t.onRetain},ml))(this),t.onEnter=(t=>t.onEnter({entering:t=>!!t.onEnter},gl))(this),t.eagerResolve=(t=>t.onStart({},yl,{priority:vl}))(this),t.lazyResolve=(t=>t.onEnter({entering:Ta(!0)},bl,{priority:vl}))(this),t.resolveAll=(t=>t.onFinish({},wl,{priority:vl}))(this),t.loadViews=(t=>t.onFinish({},El))(this),t.updateGlobals=(t=>t.onCreate({},Cl))(this),t.lazyLoad=Sl(this)}}const jl=dt("$stateProvider");class Ll{get params(){return this.globals.params}get current(){return this.globals.current}get $current(){return this.globals.$current}static $inject=["$routerGlobalsProvider","$transitionsProvider"];constructor(t,e){this.stateRegistry=void 0,this.urlService=void 0,this.globals=t,this.transitionService=e,this.invalidCallbacks=[],this._defaultErrorHandler=function(t){throw t instanceof Error&&t.stack?t:t instanceof tl?new Error(t.toString()):new Error(t)};const n=["current","$current","params","transition"],r=Object.keys(Ll.prototype).filter((t=>!n.includes(t)));Ra(Ta(Ll.prototype),this,Ta(this),r),rl.subscribe("$stateService:defaultErrorHandler",(t=>this.defaultErrorHandler()(t)))}$get=()=>this;decorator(t,e){return this.stateRegistry.decorator(t,e)||this}state(t){if(!t.name)throw jl("stateinvalid","'name' required");try{this.stateRegistry.register(t)}catch(t){throw jl("stateinvalid",t.message)}return this}_handleInvalidTargetState(t,e){const n=Vc(this.stateRegistry,t),r=this.globals,i=()=>r.transitionHistory.peekTail(),s=i(),o=new cc(this.invalidCallbacks.slice()),a=new Uc(t).injector(),c=t=>{if(!(t instanceof kc))return;let e=t;return e=this.target(e.identifier(),e.params(),e.options()),e.valid()?i()!==s?tl.superseded().toPromise():this.transitionTo(e.identifier(),e.params(),e.options()):tl.invalid(e.error()).toPromise()};return function t(){const r=o.dequeue();return void 0===r?tl.invalid(e.error()).toPromise():Promise.resolve(r(e,n,a)).then(c).then((e=>e||t()))}()}onInvalid(t){return this.invalidCallbacks.push(t),function(){Va(this.invalidCallbacks)(t)}.bind(this)}reload(t){return this.transitionTo(this.globals.current,this.globals.params,{reload:!b(t)||t,inherit:!1,notify:!1})}go(t,e,n){const r=Pa(n,{relative:this.$current,inherit:!0},_l);return this.transitionTo(t,e,r)}target(t,e,n={}){if(w(n.reload)&&!n.reload.name)throw new Error("Invalid reload state object");const r=this.stateRegistry;if(n.reloadState=!0===n.reload?r.root():r.matcher.find(n.reload,n.relative),n.reload&&!n.reloadState)throw new Error(`No such reload state '${E(n.reload)?n.reload:n.reload.name}'`);return new kc(this.stateRegistry,t,e,n)}getCurrentPath(){const t=this.globals.successfulTransitions.peekTail();return t?t.treeChanges().to:(()=>[new Rc(this.stateRegistry.root())])()}transitionTo(t,e={},n={}){n=Pa(n,_l);const r=()=>this.globals.transition;n=Object.assign(n,{current:r});const i=this.target(t,e,n),s=this.getCurrentPath();if(!i.exists())return this._handleInvalidTargetState(s,i);if(!i.valid())return nc(i.error());if(!1===n.supercede&&r())return tl.ignored("Another transition is in progress and supercede has been set to false in TransitionOptions for the transition. So the transition was ignored in favour of the existing one in progress.").toPromise();const o=t=>e=>{if(e instanceof tl){const n=this.globals.lastStartedTransitionId<=t.$id;if(e.type===Jc)return n&&this.urlService.update(),Promise.resolve(this.globals.current);const r=e.detail;if(e.type===Gc&&e.redirected&&r instanceof kc){const e=t.redirect(r);return e.run().catch(o(e))}if(e.type===Qc)return n&&this.urlService.update(),Promise.reject(e)}return this.defaultErrorHandler()(e),Promise.reject(e)},a=this.transitionService.create(s,i),c=a.run().catch(o(a));return ec(c),Object.assign(c,{transition:a})}is(t,e,n){n=Pa(n,{relative:this.$current});const r=this.stateRegistry.matcher.find(t,n.relative);if(!b(r))return;if(this.$current!==r)return!1;if(!e)return!0;const i=r.parameters({inherit:!0,matchingKeys:e});return Lc.equals(i,Lc.values(i,e),this.globals.params)}includes(t,e,n){n=Pa(n,{relative:this.$current});const r=E(t)&&ol.fromString(t);if(r){if(!r.matches(this.$current.name))return!1;t=this.$current.name}const i=this.stateRegistry.matcher.find(t,n.relative),s=this.$current.includes;if(!b(i))return;if(!b(s[i.name]))return!1;if(!e)return!0;const o=i.parameters({inherit:!0,matchingKeys:e});return Lc.equals(o,Lc.values(o,e),this.globals.params)}href(t,e,n){n=Pa(n,{lossy:!0,inherit:!0,absolute:!1,relative:this.$current}),e=e||{};const r=this.stateRegistry.matcher.find(t,n.relative);if(!b(r))return null;n.inherit&&(e=this.globals.params.$inherit(e,this.$current,r));const i=r&&n.lossy?r.navigable:r;return i&&void 0!==i.url&&null!==i.url?this.urlService.href(i.url,e,{absolute:n.absolute}):null}defaultErrorHandler(t){return this._defaultErrorHandler=t||this._defaultErrorHandler}get(t,e){const n=this.stateRegistry;return 0===arguments.length?n.get():n.get(t,e||this.$current)}lazyLoad(t,e){const n=this.get(t);if(!n||!n.lazyLoad)throw new Error("Can not lazy load "+t);const r=this.getCurrentPath(),i=Vc(this.stateRegistry,r);return xl(e=e||this.transitionService.create(r,i),n)}}class Rl{constructor(){this.enabled=!1}useAnchorScroll(){this.enabled=!0}$get=["$anchorScroll",t=>this.enabled?t:async function(t){return setTimeout((()=>{t.scrollIntoView(!1)}),0)}]}class Nl{constructor(){this._useHttp=!1}$get=["$http","$templateCache","$templateRequest","$injector",(t,e,n,r)=>(this.$templateRequest=n,this.$http=t,this.$templateCache=e,this.$injector=r,this)];useHttpService(t){this._useHttp=t}fromConfig(t,e,n){const r=t=>Promise.resolve(t).then((t=>({template:t}))),i=t=>Promise.resolve(t).then((t=>({component:t})));switch((t=>b(t.template)?"template":b(t.templateUrl)?"templateUrl":b(t.templateProvider)?"templateProvider":b(t.component)?"component":b(t.componentProvider)?"componentProvider":"default")(t)){case"template":return r(this.fromString(t.template,e));case"templateUrl":return r(this.fromUrl(t.templateUrl,e));case"templateProvider":return r(this.fromProvider(t.templateProvider,e,n));case"component":return i(t.component);case"componentProvider":return i(this.fromComponentProvider(t.componentProvider,n));default:return r("<ng-view></ng-view>")}}fromString(t,e){return O(t)?t(e):t}fromUrl(t,e){return O(t)&&(t=t(e)),null==t?null:this._useHttp?this.$http.get(t,{cache:this.$templateCache,headers:{Accept:"text/html"}}).then((function(t){return t.data})):this.$templateRequest(t)}fromProvider(t,e,n){const r=Ce(t),i=Array.isArray(t)?Xa(t):t;return new Ac("",i,r).get(n)}fromComponentProvider(t,e){const n=Ce(t),r=Array.isArray(t)?Xa(t):t;return new Ac("",r,n).get(e)}makeComponentTemplate(t,e,n,r){r=r||{};const i=t=>{const e=function(t){return t.replace(/^([A-Z])/,(t=>t.toLowerCase())).replace(/([A-Z])/g,(t=>"-"+t.toLowerCase()))}(t);return/^(x|data)-/.exec(e)?`x-${e}`:e},s=function(t,e){const n=t.get(e+tn);if(!n||!n.length)throw new Error(`Unable to find component named '${e}'`);return n.map(Vl).reduce(za,[])}(this.$injector,n).map((n=>{const{name:s,type:o}=n,a=i(s);if(t.getAttribute(a)&&!r[s])return`${a}='${t.getAttribute(a)}'`;const c=r[s]||s;if("@"===o)return`${a}='{{s$resolve.${c}}}'`;if("&"===o){const t=e.getResolvable(c),n=t&&t.data,r=n&&Ce(n)||[];return`${a}='$resolve.${c}${Array.isArray(n)?`[${n.length-1}]`:""}(${r.join(",")})'`}return`${a}='$resolve.${c}'`})).join(" "),o=i(n);return`<${o} ${s}></${o}>`}}const Vl=t=>w(t.bindToController)?Ml(t.bindToController):Ml(t.scope),Ml=t=>Object.keys(t||{}).map((e=>[e,/^([=<@&])[?]?(.*)/.exec(t[e])])).filter((t=>b(t)&&Array.isArray(t[1]))).map((t=>({name:t[1][2]||t[0],type:t[1][1]})));function Pl(t,e){let n=["",""],r=t.replace(/[\\[\]^$*+?.()|{}]/g,"\\$&");if(!e)return r;switch(e.squash){case!1:n=["(",")"+(e.isOptional?"?":"")];break;case!0:r=r.replace(/\/$/,""),n=["(?:/(",")|/)?"];break;default:n=[`(${e.squash}|`,")?"]}return r+n[0]+e.type.pattern.source+n[1]}const Dl=function(t){const e=new RegExp("("+t+")","g");return t=>t.split(e).filter(Boolean)}("/"),Ul={state:{params:{}},strict:!0,caseInsensitive:!0};class Il{static encodeDashes(t){return encodeURIComponent(t).replace(/-/g,(t=>`%5C%${t.charCodeAt(0).toString(16).toUpperCase()}`))}static pathSegmentsAndParams(t){return Ja(t._segments,t._params.filter((t=>t.location===Oc)).concat(void 0)).reduce(za,[]).filter((t=>""!==t&&b(t)))}static queryParams(t){return t._params.filter((t=>t.location===_c))}static compare(t,e){const n=t=>t._cache.weights=t._cache.weights||(t=>t._cache.segments=t._cache.segments||t._cache.path.map(Il.pathSegmentsAndParams).reduce(za,[]).reduce(mc,[]).map((t=>E(t)?Dl(t):t)).reduce(za,[]))(t).map((t=>"/"===t?1:E(t)?2:t instanceof Lc?3:void 0)),r=n(t),i=n(e);((t,e,n)=>{const r=Math.max(t.length,e.length);for(;t.length<r;)t.push(n);for(;e.length<r;)e.push(n)})(r,i,0);const s=Ja(r,i);let o,a;for(a=0;a<s.length;a++)if(o=s[a][0]-s[a][1],0!==o)return o;return 0}constructor(t,e,n,r){this._cache={path:[this]},this._children=[],this._params=[],this._segments=[],this._compiled=[],this.config=r=Pa(r,Ul),this.pattern=t;const i=/([:*])([\w[\]]+)|\{([\w[\]]+)(?::\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,s=/([:]?)([\w[\].-]+)|\{([\w[\].-]+)(?::\s*((?:[^{\\}]+|\\.|{(?:[^{\\}]+|\\.)*})+))?\}/g,o=[];let a,c=0;const l=e=>{if(!Il.nameValidator.test(e))throw new Error(`Invalid parameter name '${e}' in pattern '${t}'`);if(Ha(this._params,Aa("id",e)))throw new Error(`Duplicate parameter name '${e}' in pattern '${t}'`)},u=(n,r)=>{const i=n[2]||n[3],s=r?n[4]:n[4]||("*"===n[1]?"[\\s\\S]*":null);return{id:i,regexp:s,segment:t.substring(c,n.index),type:s?e.type(s)||(t=>Na(e.type(r?"query":"path"),{pattern:new RegExp(t,this.config.caseInsensitive?"i":void 0)}))(s):null}};let h,d;for(;(a=i.exec(t))&&(h=u(a,!1),!(h.segment.indexOf("?")>=0));)l(h.id),this._params.push(n.fromPath(h.id,h.type,r.state)),this._segments.push(h.segment),o.push([h.segment,Xa(this._params)]),c=i.lastIndex;d=t.substring(c);const p=d.indexOf("?");if(p>=0){const t=d.substring(p);if(d=d.substring(0,p),t.length>0)for(c=0;a=s.exec(t);)h=u(a,!0),l(h.id),this._params.push(n.fromSearch(h.id,h.type,r.state)),c=i.lastIndex}this._segments.push(d),this._compiled=o.map((t=>Pl.apply(null,t))).concat(Pl(d))}append(t){return this._children.push(t),t._cache={path:this._cache.path.concat(t),parent:this,pattern:null},t}isRoot(){return this._cache.path[0]===this}toString(){return this.pattern}_getDecodedParamValue(t,e){return b(t)&&(t=e.type.decode(t)),e.value(t)}exec(t,e={},n){const r=(i=this._cache,s="pattern",o=()=>new RegExp(["^",Qa(this._cache.path.map((t=>t._compiled))).join(""),!1===this.config.strict?"/?":"","$"].join(""),this.config.caseInsensitive?"i":void 0),i[s]=i[s]||o()).exec(t);var i,s,o;if(!r)return null;const a=this.parameters(),c=a.filter((t=>!t.isSearch())),l=a.filter((t=>t.isSearch())),u=this._cache.path.map((t=>t._segments.length-1)).reduce(((t,e)=>t+e)),h={};if(u!==r.length-1)throw new Error(`Unbalanced capture group in route '${this.pattern}'`);function d(t){const e=t=>t.split("").reverse().join(""),n=Fa(e(t).split(/-(?!\\)/),e);return Fa(n,(t=>t.replace(/\\-/g,"-"))).reverse()}for(let t=0;t<u;t++){const e=c[t];let n=r[t+1];for(let t=0;t<e.replace.length;t++)e.replace[t].from===n&&(n=e.replace[t].to);n&&!0===e.array&&(n=d(n)),h[e.id]=this._getDecodedParamValue(n,e)}return l.forEach((t=>{let n=e[t.id];for(let e=0;e<t.replace.length;e++)t.replace[e].from===n&&(n=t.replace[e].to);h[t.id]=this._getDecodedParamValue(n,t)})),n&&(h["#"]=n),h}parameters(t={}){return!1===t.inherit?this._params:Qa(this._cache.path.map((t=>t._params)))}parameter(t,e={}){const n=this._cache.parent;return(()=>{for(const e of this._params)if(e.id===t)return e})()||!1!==e.inherit&&n&&n.parameter(t,e)||null}validates(t){t=t||{};return this.parameters().filter((e=>vt(t,e.id))).map((e=>((t,e)=>!t||t.validates(e))(e,t[e.id]))).reduce(qa,!0)}format(t={}){const e=this._cache.path,n=e.map(Il.pathSegmentsAndParams).reduce(za,[]).map((t=>E(t)?t:i(t))),r=e.map(Il.queryParams).reduce(za,[]).map(i);if(n.concat(r).filter((t=>!1===t.isValid)).length)return null;function i(e){const n=e.value(t[e.id]),r=e.validates(n),i=e.isDefaultValue(n),s=!!i&&e.squash,o=e.type.encode(n);return{param:e,value:n,isValid:r,isDefaultValue:i,squash:s,encoded:o}}const s=n.reduce(((t,e)=>{if(E(e))return t+e;const{squash:n,encoded:r,param:i}=e;return!0===n?t.match(/\/$/)?t.slice(0,-1):t:E(n)?t+n:!1!==n||null==r?t:Array.isArray(r)?t+Fa(r,Il.encodeDashes).join("-"):i.raw?t+r:t+encodeURIComponent(r)}),""),o=r.map((t=>{let{param:e,squash:n,encoded:r,isDefaultValue:i}=t;if(!(null==r||i&&!1!==n)&&(Array.isArray(r)||(r=[r]),0!==r.length))return e.raw||(r=Fa(r,encodeURIComponent)),r.map((t=>`${e.id}=${t}`))})).reduce(za,[]).join("&");return s+(o?`?${o}`:"")+(t["#"]?"#"+t["#"]:"")}}Il.nameValidator=/^\w+([-.]+\w+)*(?:\[\])?$/;class Hl{name=void 0;navigable=void 0;parent=void 0;params=void 0;url=void 0;includes=void 0;constructor(t){Object.assign(this,t),this.$$state=()=>this,this.self=t;const e=this.name?ol.fromString(this.name):null;this.__stateObjectCache={nameGlob:e}}is(t){return this===t||this.self===t||this.fqn()===t}fqn(){if(!(this.parent&&this.parent instanceof this.constructor))return this.name;const t=this.parent.fqn();return t?t+"."+this.name:this.name}root(){return this.parent&&this.parent.root()||this}parameters(t){return((t=Pa(t,{inherit:!0,matchingKeys:null})).inherit&&this.parent&&this.parent.parameters()||[]).concat(Object.values(this.params)).filter((e=>!t.matchingKeys||vt(t.matchingKeys,e.id)))}parameter(t,e={}){return this.url&&this.url.parameter(t,e)||Ha(Object.values(this.params),Aa("id",t))||e.inherit&&this.parent&&this.parent.parameter(t)}toString(){return this.fqn()}}Hl.isStateDeclaration=t=>O(t.$$state),Hl.isState=t=>w(t.__stateObjectCache);class Fl{constructor(t,e,n){this.urlService=t,this.stateService=e,this.routerGlobals=n}create(t,e){const{isState:n,isStateDeclaration:r}=Hl,i=ja([[E,t=>i(this.urlService.compile(t))],[_a(Il),t=>this.fromUrlMatcher(t,e)],[(s=n,o=r,(...t)=>s.apply(null,t)||o.apply(null,t)),t=>this.fromState(t,this.stateService,this.routerGlobals)],[_a(RegExp),t=>this.fromRegExp(t,e)],[O,t=>new ql(t,e)]]);var s,o;const a=i(t);if(!a)throw new Error("invalid 'what' in when()");return a}fromUrlMatcher(t,e){let n=e;E(e)&&(e=this.urlService.compile(e)),_a(Il)(e)&&(n=t=>e.format(t));const r={urlMatcher:t,matchPriority:function(e){const n=t.parameters().filter((t=>t.isOptional));return n.length?n.filter((t=>e[t.id])).length/n.length:1e-6},type:"URLMATCHER"};return Object.assign(new ql((function(e){const n=t.exec(e.path,e.search,e.hash);return t.validates(n)&&n}),n),r)}fromState(t,e,n){const r=Hl.isStateDeclaration(t)?t.$$state():t,i={state:r,type:"STATE"};return Object.assign(this.fromUrlMatcher(r.url,(t=>{const i=e;i.href(r,t)!==i.href(n.current,n.params)&&i.transitionTo(r,t,{inherit:!0,source:"url"})})),i)}fromRegExp(t,e){if(t.global||t.sticky)throw new Error("Rule RegExp must not be global or sticky");const n=E(e)?t=>e.replace(/\$(\$|\d{1,2})/,((e,n)=>t["$"===n?0:Number(n)])):e,r={regexp:t,type:"REGEXP"};return Object.assign(new ql((e=>t.exec(e.path)),n),r)}}Fl.isUrlRule=t=>t&&["type","match","handler"].every((e=>b(t[e])));class ql{constructor(t,e){this.match=t,this.type="RAW",this.$id=-1,this._group=void 0,this.handler=e||(t=>t)}matchPriority(t){return at(y(t)),0-this.$id}}let Bl;function zl(t){if(!(O(t)||E(t)||_a(kc)(t)||kc.isDef(t)))throw new Error("'handler' must be a string, function, TargetState, or have a state: 'newtarget' property");return O(t)?t:Ta(t)}Bl=(t,e)=>{let n=((t,e)=>(e.priority||0)-(t.priority||0))(t,e);return 0!==n?n:(n=((t,e)=>{const n={STATE:4,URLMATCHER:4,REGEXP:3,RAW:2,OTHER:1};return(n[t.type]||0)-(n[e.type]||0)})(t,e),0!==n?n:(n=((t,e)=>t.urlMatcher&&e.urlMatcher?Il.compare(t.urlMatcher,e.urlMatcher):0)(t,e),0!==n?n:((t,e)=>{const n={STATE:!0,URLMATCHER:!0};return n[t.type]&&n[e.type]?0:(t.$id||0)-(e.$id||0)})(t,e)))};class Kl{constructor(t){this._sortFn=Bl,this._rules=[],this._id=0,this.urlRuleFactory=t}initial(t){const e=zl(t);this.rule(this.urlRuleFactory.create(((t,e)=>0===e.globals.transitionHistory.size()&&!!/^\/?$/.exec(t.path)),e))}otherwise(t){const e=zl(t);this._otherwiseFn=this.urlRuleFactory.create(Ta(!0),e),this._sorted=!1}removeRule(t){Va(this._rules,t)}rule(t){if(!Fl.isUrlRule(t))throw new Error("invalid rule");return t.$id=this._id++,t.priority=t.priority||0,this._rules.push(t),this._sorted=!1,()=>this.removeRule(t)}rules(){return this.ensureSorted(),this._rules.concat(this._otherwiseFn?[this._otherwiseFn]:[])}sort(t){const e=this.stableSort(this._rules,this._sortFn=t||this._sortFn);let n=0;for(let t=0;t<e.length;t++)e[t]._group=n,t<e.length-1&&0!==this._sortFn(e[t],e[t+1])&&n++;this._rules=e,this._sorted=!0}ensureSorted(){this._sorted||this.sort()}stableSort(t,e){const n=t.map(((t,e)=>({elem:t,idx:e})));return n.sort(((t,n)=>{const r=e(t.elem,n.elem);return 0===r?t.idx-n.idx:r})),n.map((t=>t.elem))}when(t,e,n){const r=this.urlRuleFactory.create(t,e);return b(n&&n.priority)&&(r.priority=n.priority),this.rule(r),r}}class Wl{constructor(t){this.urlServiceConfig=t}fromConfig(t,e,n){return new Lc(t,e,Tc,this.urlServiceConfig,n)}fromPath(t,e,n){return new Lc(t,e,Oc,this.urlServiceConfig,n)}fromSearch(t,e,n){return new Lc(t,e,_c,this.urlServiceConfig,n)}}class Gl{static $inject=["$locationProvider","$stateProvider","$routerGlobalsProvider","$urlConfigProvider"];constructor(t,e,n,r){this.stateService=e,this.stateService.urlService=this,this.$locationProvider=t,this.$location=void 0,this.$browser=void 0,this.urlRuleFactory=new Fl(this,this.stateService,n),this.rules=new Kl(this.urlRuleFactory),this.config=r,this.paramFactory=new Wl(this.config),this.path=()=>this.$location.path(),this.search=()=>this.$location.search(),this.hash=()=>this.$location.hash(),this._urlListeners=[]}$get=["$location","$browser","$rootScope",(t,e,n)=>(this.$location=t,this.$browser=e,n.$on("$locationChangeSuccess",(t=>{this._urlListeners.forEach((e=>{e(t)}))})),this.listen(),this)];html5Mode(){return this.$locationProvider.getHtml5Mode().enabled&&"undefined"!=typeof history}baseHref(){return this._baseHref||(this._baseHref=this.$browser.baseHref()||window.location.pathname)}url(t,e=!1,n){return b(t)&&this.$location.url(t),e&&this.$location.replace(),n&&this.$location.state(n),this.$location.url()}onChange(t){return this._urlListeners.push(t),()=>Va(this._urlListeners)(t)}parts(){return{path:this.path(),search:this.search(),hash:this.hash()}}sync(t){if(t&&t.defaultPrevented)return;const e=this.stateService,n={path:this.path(),search:this.search(),hash:this.hash()},r=this.match(n);ja([[E,t=>this.url(t,!0)],[kc.isDef,t=>e.go(t.state,t.params,t.options)],[_a(kc),t=>e.go(t.state(),t.params(),t.options())]])(r&&r.rule.handler(r.match,n))}listen(t){if(!1!==t)return this._stopListeningFn=this._stopListeningFn||this.onChange((t=>this.sync(t)));this._stopListeningFn&&this._stopListeningFn(),delete this._stopListeningFn}match(t){t=Object.assign({path:"",search:{},hash:""},t);const e=this.rules.rules(),n=e=>{const n=e.match(t);return n&&{match:n,rule:e,weight:e.matchPriority(n)}};let r;for(let t=0;t<e.length&&(!r||r.rule._group===e[t]._group);t++){const i=n(e[t]);r=!r||i&&i.weight>r.weight?i:r}return r}update(t){t?this.location=this.url():this.url()!==this.location&&this.url(this.location,!0)}push(t,e,n){const r=n&&!!n.replace;this.url(t.format(e||{}),r)}href(t,e,n){let r=t.format(e);if(null==r)return null;n=n||{absolute:!1};const i=this.html5Mode();if(i||null===r||(r="#"+this.$locationProvider.getHashPrefix()+r),r=function(t,e,n,r){return"/"===r?t:e?(t=>t.replace(/\/[^/]*$/,""))(r)+t:n?r.slice(1)+t:t}(r,i,n.absolute,this.baseHref()),!n.absolute||!r)return r;const s=!i&&r?"/":"",o=this.$location.port(),a=80===o||443===o?"":":"+o;return[this.$location.protocol(),"://",this.$location.host(),a,s,r].join("")}compile(t,e){const n=this.config,r=e&&!e.state&&e.params;e=r?Object.assign({state:{params:r}},e):e;const i={strict:n._isStrictMode,caseInsensitive:n._isCaseInsensitive};return new Il(t,n.paramTypes,this.paramFactory,Object.assign(i,e))}isMatcher(t){if(!w(t))return!1;let e=!0;return Object.entries(Il.prototype).forEach((([n,r])=>{O(r)&&(e=e&&b(t[n])&&O(t[n]))})),e}}class Ql{constructor(t){this._states=t}isRelative(t){return 0===(t=t||"").indexOf(".")||0===t.indexOf("^")}find(t,e,n=!0){if(!t&&""!==t)return;const r=E(t);let i=r?t:t.name;this.isRelative(i)&&(i=this.resolvePath(i,e));const s=this._states[i];if(s&&(r||!(r||s!==t&&s.self!==t)))return s;if(r&&n){const t=Object.values(this._states).filter((t=>t.__stateObjectCache.nameGlob&&t.__stateObjectCache.nameGlob.matches(i)));return t.length>1&&console.error(`stateMatcher.find: Found multiple matches for ${i} using glob: `,t.map((t=>t.name))),t[0]}}resolvePath(t,e){if(!e)throw new Error(`No reference point given for path '${t}'`);const n=this.find(e),r=t.split("."),i=r.length;let s=0,o=n;for(;s<i;s++)if(""!==r[s]||0!==s){if("^"!==r[s])break;if(!o.parent)throw new Error(`Path '${t}' not valid for state '${n.name}'`);o=o.parent}else o=n;const a=r.slice(s).join(".");return o.name+(o.name&&a?".":"")+a}}function Yl(t){return t.self.$$state=()=>t,t.self}function Jl(t){return t.parent&&t.parent.data&&(t.data=t.self.data=Na(t.parent.data,t.data)),t.data}function Zl(t,e){return function(n){let r=n.self;if(r&&r.url&&r.name&&r.name.match(/\.\*\*$/)){const t={};tc(r,t),t.url+="{remainder:any}",r=t}const i=n.parent,s=function(t){if(!E(t))return!1;const e="^"===t.charAt(0);return{val:e?t.substring(1):t,root:e}}(r.url),o=s?t.compile(s.val,{state:r}):r.url;if(!o)return null;if(!t.isMatcher(o))throw new Error(`Invalid url '${o}' in state '${n}'`);return s&&s.root?o:(i&&i.navigable||e()).url.append(o)}}function Xl(t){return function(e){return!t(e)&&e.url?e:e.parent?e.parent.navigable:null}}function tu(t){return t.parent?t.parent.path.concat(t):[t]}function eu(t){const e=t.parent?Object.assign({},t.parent.includes):{};return e[t.name]=!0,e}function nu(t){const e=ja([[t=>t.resolveFn,t=>new Ac(su(t),t.resolveFn,t.deps,t.policy)],[t=>t.useFactory,t=>new Ac(su(t),t.useFactory,t.deps||t.dependencies,t.policy)],[t=>t.useClass,t=>new Ac(su(t),(()=>new t.useClass),[],t.policy)],[t=>t.useValue,t=>new Ac(su(t),(()=>t.useValue),[],t.policy,t.useValue)],[t=>t.useExisting,t=>new Ac(su(t),(t=>t),[t.useExisting],t.policy)]]),n=ja([[xa((t=>t.val),E),t=>new Ac(t.token,(t=>t),[t.val],t.policy)],[xa((t=>t.val),Array.isArray),t=>new Ac(t.token,Xa(t.val),t.val.slice(0,-1),t.policy)],[xa((t=>t.val),O),t=>new Ac(t.token,t.val,(t=>{const e=window.angular.$injector;return t.$inject||e&&Ce(t,e.strictDi)||"deferred"})(t.val),t.policy)]]),r=ja([[_a(Ac),t=>t],[t=>!(!t.token||!t.resolveFn),e],[t=>!!(t&&t.val&&(E(t.val)||Array.isArray(t.val)||O(t.val))),n],[Ta(!0),t=>{throw new Error("Invalid resolve value: "+$c(t))}]]),i=t.resolve,s=Array.isArray(i)?i:((t,e)=>Object.keys(t||{}).map((n=>({token:n,val:t[n],deps:void 0,policy:e[n]}))))(i,t.resolvePolicy||{});return s.map(r)}class ru{constructor(t,e){this.matcher=t,this.$injector=void 0;const n=this,r=()=>t.find("");var i;this.builders={name:[t=>t.name],self:[Yl],parent:[function(e){return iu(e)?null:t.find(n.parentName(e))||r()}],data:[Jl],url:[Zl(e,r)],navigable:[Xl(iu)],params:[(i=e.paramFactory,function(t){const e=t.url&&t.url.parameters({inherit:!1})||[],n=Object.values(Fa(Ua(t.params||{},e.map((t=>t.id))),((e,n)=>i.fromConfig(n,null,t.self))));return e.concat(n).map((t=>[t.id,t])).reduce(Za,{})})],views:[],path:[tu],includes:[eu],resolvables:[nu]}}builder(t,e){const n=this.builders,r=n[t]||[];return E(t)&&!b(e)?r.length>1?r:r[0]:E(t)&&O(e)?(n[t]=r,n[t].push(e),()=>n[t].splice(n[t].indexOf(e,1))&&null):void 0}build(t){const{matcher:e,builders:n}=this,r=this.parentName(t);if(r&&!e.find(r,void 0,!1))return null;for(const e in n){if(!vt(n,e))continue;const r=n[e].reduce(((t,e)=>n=>e(n,t)),(()=>{}));t[e]=r(t)}return t}parentName(t){const e=t.name||"",n=e.split(".");if("**"===n.pop()&&n.pop(),n.length){if(t.parent)throw new Error(`States that specify the 'parent:' property should not have a '.' in their name (${e})`);return n.join(".")}return t.parent?E(t.parent)?t.parent:t.parent.name:""}name(t){const e=t.name;if(-1!==e.indexOf(".")||!t.parent)return e;const n=E(t.parent)?t.parent:t.parent.name;return n?n+"."+e:e}}function iu(t){return""===t.name}function su(t){return t.provide||t.token}class ou{constructor(t,e,n,r,i){this.stateRegistry=t,this.urlServiceRules=e,this.states=n,this.builder=r,this.listeners=i,this.queue=[]}register(t){const e=new Hl(t);if(!E(name))throw new Error("State must have a valid name");if(vt(this.states,e.name)||this.queue.map((t=>t.name)).includes(e.name))throw new Error(`State '${e.name}' is already defined`);return this.queue.push(e),this.flush(),e}flush(){const{queue:t,states:e,builder:n}=this,r=[],i=[],s={},o=t=>vt(this.states,t)&&this.states[t],a=()=>{r.length&&this.listeners.forEach((t=>t("registered",r.map((t=>t.self)))))};for(;t.length>0;){const c=t.shift(),l=c.name,u=n.build(c),h=i.indexOf(c);if(u){const t=o(l);if(t&&t.name===l)throw new Error(`State '${l}' is already defined`);const n=o(l+".**");n&&this.stateRegistry.deregister(n),e[l]=c,this.attachRoute(c),h>=0&&i.splice(h,1),r.push(c);continue}const d=s[l];if(s[l]=t.length,h>=0&&d===t.length)return t.push(c),a(),e;h<0&&i.push(c),t.push(c)}return a(),e}attachRoute(t){if(t.abstract||!t.url)return;const e=this.urlServiceRules;e.rule(e.urlRuleFactory.create(t))}}class au{static $inject=function(t){return t.map((t=>t+"Provider"))}([Xt.$urlService,Xt.$state,Xt.$routerGlobals,Xt.$view]);constructor(t,e,n,r){this.states={},e.stateRegistry=this,this.urlService=t,this.urlServiceRules=t.rules,this.$injector=void 0,this.listeners=[],this.matcher=new Ql(this.states),this.builder=new ru(this.matcher,t),this.builder.builder("views",Fc),this.builder.builder("onExit",this.getStateHookBuilder("onExit")),this.builder.builder("onRetain",this.getStateHookBuilder("onRetain")),this.builder.builder("onEnter",this.getStateHookBuilder("onEnter")),this.stateQueue=new ou(this,this.urlServiceRules,this.states,this.builder,this.listeners),this.registerRoot(),r.rootViewContext(this.root()),n.$current=this.root(),n.current=n.$current.self}$get=["$injector",t=>(this.$injector=t,this.builder.$injector=t,this)];getStateHookBuilder(t){let e=this;return function(n){const r=n[t],i="onExit"===t?"from":"to";return r?function(t,n){const s=new Uc(t.treeChanges(i)).subContext(n.$$state()),o=Object.assign(cu(s),{$state$:n,$transition$:t});return e.$injector.invoke(r,this,o)}:void 0}}registerRoot(){this._root=this.stateQueue.register({name:"",url:"^",views:null,params:{"#":{value:null,type:"hash",dynamic:!0}},abstract:!0}),this._root.navigable=null}onStatesChanged(t){return this.listeners.push(t),function(){Va(this.listeners)(t)}.bind(this)}root(){return this._root}register(t){return this.stateQueue.register(t)}_deregisterTree(t){const e=this.get().map((t=>t.$$state())),n=t=>{const r=e.filter((e=>-1!==t.indexOf(e.parent)));return 0===r.length?r:r.concat(n(r))},r=n([t]),i=[t].concat(r).reverse();return i.forEach((t=>{const e=this.urlServiceRules;e.rules().filter(Aa("state",t)).forEach((t=>e.removeRule(t))),delete this.states[t.name]})),i}deregister(t){const e=this.get(t);if(!e)throw new Error("Can't deregister state; not found: "+t);const n=this._deregisterTree(e.$$state());return this.listeners.forEach((t=>t("deregistered",n.map((t=>t.self))))),n}get(t,e){if(0===arguments.length)return Object.keys(this.states).map((t=>this.states[t].self));const n=this.matcher.find(t,e);return n&&n.self||null}decorator(t,e){return this.builder.builder(t,e)}}const cu=t=>t.getTokens().filter(E).map((e=>{const n=t.getResolvable(e);return[e,"NOWAIT"===t.getPolicy(n).async?n.promise:n.data]})).reduce(Za,{});function lu(t){const e=t.match(/^\s*({[^}]*})\s*$/);e&&(t="("+e[1]+")");const n=t.replace(/\n/g," ").match(/^\s*([^(]*?)\s*(\((.*)\))?\s*$/);if(!n||4!==n.length)throw new Error("Invalid state ref '"+t+"'");return{state:n[1]||null,paramExpr:n[3]||null}}function uu(t){const e=Ft(t,"$ngView"),n=ka("$cfg.path")(e);return n?Xa(n).state.name:void 0}function hu(t,e,n){const r=n.ngState||t.current.name,i=Object.assign(function(t,e){return{relative:uu(t)||e.$current,inherit:!0,source:"sref"}}(e,t),n.ngStateOpts||{}),s=t.href(r,n.ngStateParams,i);return{ngState:r,ngStateParams:n.ngStateParams,ngStateOpts:i,href:s}}function du(t){const e="[object SVGAnimatedString]"===Object.prototype.toString.call(t.getAttribute("href")),n="FORM"===t.nodeName;return{attr:n?"action":e?"xlink:href":"href",isAnchor:"A"===t.nodeName,clickable:!n}}function pu(t,e,n,r,i){return function(s){const o=s.which||s.button,a=r();if(o>1||s.ctrlKey||s.metaKey||s.shiftKey||s.altKey||t.getAttribute("target"))s.preventDefault(),s.stopImmediatePropagation();else{const r=setTimeout((function(){if(!t.getAttribute("disabled")){e.go(a.ngState,a.ngStateParams,a.ngStateOpts).then((()=>{i.$emit("$updateBrowser")}))}}));s.preventDefault();let o=n.isAnchor&&!a.href?1:0;s.preventDefault=function(){o--<=0&&clearTimeout(r)}}}}function fu(t,e,n,r){let i;r&&(i=r.events),Array.isArray(i)||(i=["click"]);for(const e of i)t.addEventListener(e,n);e.$on("$destroy",(function(){for(const e of i)t.removeEventListener(e,n)}))}function $u(t,e,n){const r=t;return{restrict:"A",require:["?^ngSrefActive","?^ngSrefActiveEq"],link:(t,i,s,o)=>{const a=du(i),c=o[1]||o[0];let l=null;const u={},h=()=>hu(r,i,u),d=lu(s.ngSref);function p(){u.ngStateParams=Object.assign({},t.$eval(d.paramExpr));const e=h();l&&l(),c&&(l=c.$$addStateInfo(e.ngState,e.ngStateParams)),null!=e.href&&s.$set(a.attr,e.href)}u.ngState=d.state,u.ngStateOpts=s.ngSrefOpts?t.$eval(s.ngSrefOpts):{},d.paramExpr&&(t.$watch(d.paramExpr,(function(t){u.ngStateParams=Object.assign({},t),p()}),!0),u.ngStateParams=Object.assign({},t.$eval(d.paramExpr))),p(),t.$on("$destroy",e.onStatesChanged(p)),t.$on("$destroy",n.onSuccess({},p)),a.clickable&&fu(i,t,pu(i,r,a,h,t),u.ngStateOpts)}}}function mu(t,e,n){return{restrict:"A",require:["?^ngSrefActive","?^ngSrefActiveEq"],link:function(r,i,s,o){const a=du(i),c=o[1]||o[0];let l,u=null;const h={},d=()=>hu(t,i,h),p=["ngState","ngStateParams","ngStateOpts"],f=p.reduce(((t,e)=>(t[e]=()=>{},t)),{});function $(){const t=d();u&&u(),c&&(u=c.$$addStateInfo(t.ngState,t.ngStateParams)),null!=t.href&&s.$set(a.attr,t.href)}p.forEach((t=>{h[t]=s[t]?r.$eval(s[t]):null,s.$observe(t,(e=>{f[t](),f[t]=r.$watch(e,(e=>{h[t]=e,$()}))}))})),$(),r.$on("$destroy",e.onStatesChanged($)),r.$on("$destroy",n.onSuccess({},$)),a.clickable&&(l=pu(i,t,a,d,r),fu(i,r,l,h.ngStateOpts))}}}function gu(t,e,n,r,i){return{restrict:"A",controller:function(s,o,a){let c,l,u=[];c=n(a.ngSrefActiveEq||"",!1)(s);try{l=s.$eval(a.ngSrefActive)}catch{}function h(t){t.promise.then($,(()=>{}))}function d(){p(l)}function p(t){w(t)&&(u=[],Object.entries(t).forEach((([t,e])=>{const n=function(t,e){const n=lu(t);f(n.state,s.$eval(n.paramExpr),e)};E(e)?n(e,t):Array.isArray(e)&&e.forEach((e=>{n(e,t)}))})))}function f(e,n,r){const i={state:t.get(e,uu(o))||{name:e},params:n,activeClass:r};return u.push(i),function(){Va(u)(i)}}function $(){const e=t=>t.split(/\s/).filter(Boolean),n=t=>t.map((t=>t.activeClass)).map(e).reduce(za,[]),r=n(u).concat(e(c)).reduce(Ga,[]),i=n(u.filter((e=>t.includes(e.state.name,e.params)))),a=!!u.filter((e=>t.is(e.state.name,e.params))).length?e(c):[],l=i.concat(a).reduce(Ga,[]),h=r.filter((t=>!l.includes(t)));s.$evalAsync((()=>{l.forEach((t=>o.classList.add(t))),h.forEach((t=>o.classList.remove(t)))}))}l=l||n(a.ngSrefActive||"",!1)(s),p(l),this.$$addStateInfo=function(t,e){if(w(l)&&u.length>0)return;const n=f(t,e,l);return $(),n},s.$on("$destroy",function(){const t=r.onStatesChanged(d),e=i.onStart({},h),n=s.$on("$stateChangeSuccess",$);return function(){t(),e(),n()}}()),e.transition&&h(e.transition),$()}}}$u.$inject=["$state","$stateRegistry","$transitions"],mu.$inject=["$state","$stateRegistry","$transitions"],gu.$inject=["$state","$routerGlobals","$interpolate","$stateRegistry","$transitions"];let vu=["$view","$animate","$ngViewScroll","$interpolate",function(t,e,n,r){const i={$cfg:{viewDecl:{$context:t.rootViewContext()}},$ngView:{}},s={count:0,terminal:!0,priority:400,transclude:"element",compile:function(o,a,c){return function(o,a,l){const u=l.onload||"",h=l.autoscroll,d={enter:function(t,n,r){mt(t)?e.enter(t,null,n).then(r):(n.after(t),r())},leave:function(t,n){mt(t)?e.leave(t).then(n):(t.parentElement.removeChild(t),n())}},p=Ft(a,"$ngView")||i,f=r(l.ngView||l.name||"")(o)||"$default";let $,m,g,v;const y={id:s.count++,name:f,fqn:p.$ngView.fqn?p.$ngView.fqn+"."+f:f,config:null,configUpdated:function(t){if(t&&!(t instanceof Bc))return;if(e=v,n=t,e===n)return;var e,n;Cc.traceUIViewConfigUpdated(y,t&&t.viewDecl&&t.viewDecl.$context),v=t,E(t)},get creationContext(){const t=ka("$cfg.viewDecl.$context")(p),e=ka("$ngView.creationContext")(p);return t||e}};Cc.traceUIViewEvent("Linking",y),Mt(a,"$ngView",{$ngView:y}),E();const w=t.registerUIView(y);function E(t){const e=o.$new(),r=Promise.withResolvers(),i=Promise.withResolvers(),s={$cfg:t,$ngView:y},l={$animEnter:r.promise,$animLeave:i.promise,$$animLeave:i};e.$emit("$viewContentLoading",f);const p=c(e,(function(t){Mt(t,"$ngViewAnim",l),Mt(t,"$ngView",s),d.enter(t,a,(function(){r.resolve(),g&&g.$emit("$viewContentAnimationEnded"),(b(h)&&!h||o.$eval(h))&&n(t)})),function(){if($&&(Cc.traceUIViewEvent("Removing (previous) el",Pt($,"$ngView")),$.remove(),$=null),g&&(Cc.traceUIViewEvent("Destroying scope",y),g.$destroy(),g=null),m){const t=Pt(m,"$ngViewAnim");Cc.traceUIViewEvent("Animate out",t),d.leave(m,(function(){t.$$animLeave.resolve(),$=null})),$=m,m=null}}()}));m=p,g=e,g.$emit("$viewContentLoaded",t||v),g.$eval(u)}o.$on("$destroy",(function(){Cc.traceUIViewEvent("Destroying/Unregistering",y),w()}))}}};return s}];function yu(t,e,n){const r=ka("viewDecl.controllerAs"),i=ka("viewDecl.resolveAs");return{priority:-400,compile:function(s){const o=s.innerHTML;return Nt(s,!0),function(s,a){const c=Pt(a,"$ngView");if(!c)return a.innerHTML=o,void t(a.contentDocument||a.childNodes)(s);const l=c.$cfg||{viewDecl:{},getTemplate:()=>{}},u=l.path&&new Uc(l.path);a.innerHTML=l.getTemplate(a,u)||o,Cc.traceUIViewFill(c.$ngView,a.innerHTML);const h=t(a.contentDocument||a.childNodes),d=l.controller,p=r(l),f=i(l),$=u&&cu(u);if(f&&(s.$target[f]=$),d){const t=e(d,Object.assign({},$,{$scope:s,$element:a}));p&&(s.$target[p]=t,s.$target[p][f]=$),Mt(a,"$ngControllerController",t),Array.from(a.children).forEach((e=>{Mt(e,"$ngControllerController",t)})),function(t,e,n,r){!O(e.$onInit)||r.viewDecl.component||r.viewDecl.componentProvider||e.$onInit();const i=Xa(r.path).state.self,s={bind:e};if(O(e.uiOnParamsChanged)){const o=new Uc(r.path).getResolvable("$transition$").data,a=t=>{if(t===o||-1!==t.exiting().indexOf(i))return;const n=t.params("to"),r=t.params("from"),s=t=>t.paramSchema,a=t.treeChanges("to").map(s).reduce(za,[]),c=t.treeChanges("from").map(s).reduce(za,[]),l=a.filter((t=>{const e=c.indexOf(t);return-1===e||!c[e].type.equals(n[t.id],r[t.id])}));if(l.length){const r=l.map((t=>t.id)),i=Ia(n,((t,e)=>-1!==r.indexOf(e)));e.uiOnParamsChanged(i,t)}};n.$on("$destroy",t.onSuccess({},a,s))}if(O(e.uiCanExit)){const r=bu++,o="_uiCanExitIds",a=t=>!!t&&(t[o]&&!0===t[o][r]||a(t.redirectedFrom())),c=t=>{let n;const i=t[o]=t[o]||{};return a(t)||(n=Promise.resolve(e.uiCanExit(t)),n.then((t=>i[r]=!1!==t))),n},l={exiting:i.name};n.$on("$destroy",t.onBefore(l,c,s))}}(n,t,s,l)}h(s)}}}}yu.$inject=["$compile","$controller","$transitions"];let bu=0;function wu(t){return{link:(e,n,r)=>{const i=r.ngChannel,s=n.childNodes.length>0,o=t.subscribe(i,(t=>{s?w(t)&&e.$merge(t):n.innerHTML=t}));e.$on("$destroy",(()=>{t.unsubscribeByKey(o)}))}}}function Eu(t,e){return{restrict:"A",link(n,r,i){const s=i.ngSetter;if(!s)return void e.warn("ngSetter: Model expression is not provided.");const o=t(s).assign;if(!o)return void e.warn("ngSetter: Invalid model expression.");const a=t=>{o(n,t)},c=new MutationObserver((t=>{let e=!1;for(const n of t)if("childList"===n.type||"characterData"===n.type){e=!0;break}e&&a(r.innerHTML)}));r&&r?(c.observe(r,{childList:!0,subtree:!0,characterData:!0}),n.$on("$destroy",(()=>c.disconnect())),a(r.innerHTML)):e.warn("ngSetter: Element is not a valid DOM node.")}}}function Cu(t){const e="ng"+t.charAt(0).toUpperCase()+t.slice(1),n=function(t,e){return function(n,r,i){function s(t){let e=null;if("form"===t.tagName.toLowerCase())e=t;else if("form"in t&&t.form)e=t.form;else if(t.hasAttribute("form")){const n=t.getAttribute("form");if(n){const t=document.getElementById(n);t&&"form"===t.tagName.toLowerCase()&&(e=t)}}if(!e){if("name"in t&&"string"==typeof t.name&&t.name.length>0&&(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLSelectElement)){const e=t.name,n=t.value;return{[e]:n}}return{}}const n=new FormData(e),r={};return n.forEach(((t,e)=>{r[e]=t})),r}return{restrict:"A",terminal:!0,link(o,a,c){const l=function(t){const e=t.tagName.toLowerCase();if(["input","textarea","select"].includes(e))return"change";if("form"===e)return"submit";return"click"}(a),u=a.tagName.toLowerCase();a.addEventListener(l,(l=>{if(a.disabled)return;"form"===u&&l.preventDefault();const h=a.dataset.swap||"innerHTML",d=a.dataset.target,p=d?document.querySelector(d):a;if(!p)return void i.warn(`${e}: target "${d}" not found`);const f=c[e];if(!f)return void i.warn(`${e}: no URL specified`);const $=t=>{!function(t,e,n,r,i){let s=[];if(!["textcontent","delete","none"].includes(e)){if(!t)return;if(w(t))return void r.$merge(t);const e=i(t)(r);s=e instanceof DocumentFragment?Array.from(e.childNodes):[e]}switch(e){case"innerHTML":default:n.replaceChildren(...s);break;case"outerHTML":{const t=n.parentNode;if(!t)return;const e=document.createDocumentFragment();s.forEach((t=>e.appendChild(t))),t.replaceChild(e,n);break}case"textContent":n.textContent=t;break;case"beforebegin":s.forEach((t=>n.parentNode.insertBefore(t,n)));break;case"afterbegin":s.slice().reverse().forEach((t=>n.insertBefore(t,n.firstChild)));break;case"beforeend":s.forEach((t=>n.appendChild(t)));break;case"afterend":s.slice().reverse().forEach((t=>n.parentNode.insertBefore(t,n.nextSibling)));break;case"delete":n.remove();case"none":}}(t.data,h,p,o,r)};if("post"===t||"put"===t){const e=s(a);n[t](f,e).then($).catch($)}else n[t](f).then($).catch($)}))}}}}(t,e);return n.$inject=["$http","$compile","$log"],n}wu.$inject=[Xt.$eventBus],Eu.$inject=["$parse","$log"];const Su=Cu("get"),xu=Cu("delete"),Au=Cu("post"),ku=Cu("put");const Ou=dt("ng"),_u=dt("$injector"),Tu={};const ju=new class{constructor(){this.$cache=yt,this.$eventBus=rl,this.version="0.7.5",this.bootsrappedModules=[],this.getController=Ht,this.getInjector=Gt,this.getScope=Dt,this.errorHandlingConfig=ht,window.angular=this,this.$injectTokens=Xt,function(t){t.module("ng",[],["$provide",t=>{t.provider({$$sanitizeUri:mo}),t.provider("$compile",en).directive({input:Bn,textarea:Bn,form:ln,script:Gn,select:Yn,option:Jn,ngBind:Zn,ngBindHtml:tr,ngBindTemplate:Xn,ngClass:sr,ngClassEven:ar,ngClassOdd:or,ngCloak:cr,ngController:lr,ngDelete:xu,ngDisabled:Lo,ngForm:un,ngGet:Su,ngHide:pr,ngIf:fr,ngInclude:$r,ngInit:gr,ngMessages:bo,ngMessage:So,ngMessageExp:xo,ngMessagesInclude:Co,ngMessageDefault:Ao,ngNonBindable:vr,ngPost:Au,ngPut:ku,ngRef:br,ngRepeat:Sr,ngSetter:Eu,ngShow:dr,ngStyle:xr,ngSwitch:Ar,ngSwitchWhen:kr,ngSwitchDefault:Or,ngOptions:Rr,ngTransclude:Vr,ngModel:yn,pattern:Ur,ngPattern:Ur,required:Dr,ngRequired:Dr,ngMinlength:Hr,minlength:Hr,ngMaxlength:Ir,maxlength:Ir,ngValue:Wn,ngModelOptions:$n}).directive({input:zn,ngAnimateSwap:wa,ngAnimateChildren:Ea,ngChecked:Po,ngClick:Vo,ngDblclick:Fo,ngInclude:mr,ngHide:Uo,ngShow:Ro,ngMessages:No,ngModel:Ho,ngReadonly:Io,ngRequired:Mo,ngValue:Do,ngSref:$u,ngSrefActive:gu,ngSrefActiveEq:gu,ngState:mu,ngView:vu,ngChannel:wu}).directive({ngView:yu}).directive(Pr).directive(He),t.provider({$aria:jo,$anchorScroll:Br,$animate:Ii,$$animation:oa,$animateCss:Zo,$$animateCssDriver:ga,$$animateJs:ra,$$animateJsDriver:ba,$$animateCache:da,$$animateQueue:na,$$AnimateRunner:Ki,$$animateAsyncRun:Bi,$browser:qi,$controller:_e,$exceptionHandler:Qi,$filter:ss,$interpolate:xs,$http:Fs,$httpParamSerializer:Ms,$httpBackend:qs,$location:Ys,$log:eo,$parse:gs,$$rAFScheduler:aa,$rootScope:oo,$routerGlobals:lc,$sce:Ie,$sceDelegate:Ue,$$taskTrackerFactory:ho,$templateCache:Gi,$templateRequest:$o,$urlConfig:oc,$view:zc,$transitions:Tl,$state:Ll,$ngViewScroll:Rl,$templateFactory:Nl,$urlService:Gl,$stateRegistry:au,$eventBus:el})}]).factory("$stateParams",["$routerGlobals",function(t){return t.params}]).value("$trace",Cc)}(this)}bootstrap(t,e,n){if(n=n||{strictDi:!1},(t instanceof Element||t instanceof Document)&&Gt(t))throw Ou("btstrpd","App already bootstrapped");Array.isArray(e)&&(this.bootsrappedModules=e),this.bootsrappedModules.unshift(["$provide",e=>{e.value("$rootElement",t)}]),this.bootsrappedModules.unshift("ng");const r=we(this.bootsrappedModules,n.strictDi);return r.invoke(["$rootScope","$rootElement","$compile","$injector",(t,e,n,r)=>{this.$injector=r,Mt(e,"$injector",r);if(n(e)(t),!vt(r,"strictDi"))try{r.invoke((()=>{}))}catch(t){r.strictDi=!!/strict mode/.exec(t&&t.toString())}r.get("$stateRegistry").get().map((t=>t.$$state().resolvables)).reduce(za,[]).filter((t=>"deferred"===t.deps)).forEach((t=>t.deps=Ce(t.resolveFn,r.strictDi)))}]),r}injector(t,e){return we(t,e)}init(t){let e,n;const r={};st.forEach((r=>{const i=`${r}app`;t.hasAttribute&&t.hasAttribute(i)&&(e=t,n=t.getAttribute(i))})),st.forEach((r=>{const i=`${r}app`;let s;!e&&(s=t.querySelector(`[${i.replace(":","\\:")}]`))&&(e=s,n=s.getAttribute(i))})),e&&(r.strictDi=null!==function(t,e){let n,r;const i=st.length;for(r=0;r<i;++r)if(n=st[r]+e,E(n=t.getAttribute(n)))return n;return null}(e,"strict-di"),this.bootstrap(e,n?[n]:[],r))}module(t,e,n){return W(t,"module"),e&&vt(Tu,t)&&(Tu[t]=null),function(t,e,n){return t[e]||(t[e]=n())}(Tu,t,(()=>{if(!e)throw _u("nomod","Module '{0}' is not available. Possibly misspelled or not loaded",t);return new ne(t,e,n)}))}};document.addEventListener("DOMContentLoaded",(()=>ju.init(document)),{once:!0}),t.angular=ju}));
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).angular={})}(this,(function(t){"use strict";const e="ng-valid",n="ng-invalid",r="ng-pristine",i="ng-dirty",s="ng-untouched",o="ng-touched",a="ng-empty",c="ng-not-empty",l=/^((?:x|data)[-])/i,u=/[-]+(.)/g,h={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"},d=Symbol("isProxy");function p(t){return!(!t||!t[d])}const f=dt("ng");let $=0;function m(){return $+=1,$}function g(t){return E(t)?t.toLowerCase():t}function v(t){if(null==t||T(t))return!1;if(Array.isArray(t)||t instanceof Array||E(t))return!0;const e="length"in Object(t)&&t.length;return x(e)&&(e>=0&&e-1 in t||"function"==typeof t.item)}function y(t){return void 0===t}function b(t){return void 0!==t}function w(t){return null!==t&&"object"==typeof t}function E(t){return"string"==typeof t}function C(t){return null===t}function S(t){return null==t}function x(t){return"number"==typeof t}function A(t){return"[object Date]"===toString.call(t)}function k(t){switch(toString.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return t instanceof Error}}function O(t){return"function"==typeof t}function _(t){return"[object RegExp]"===toString.call(t)}function T(t){return t&&t.window===t}function j(t){return t&&t.$watch}function L(t){return"boolean"==typeof t}function R(t){return t&&O(t.then)}function N(t){return E(t)?t.trim():t}function V(t,e){const n=e;return t.replace(/[A-Z]/g,((t,e)=>(e?n:"")+t.toLowerCase()))}function M(t,...e){return function(t,e){const n=t.$$hashKey;for(let n=0,r=e.length;n<r;++n){const r=e[n];if(!w(r)&&!O(r))continue;const i=Object.keys(r);for(let e=0,n=i.length;e<n;e++){const n=i[e],s=r[n];t[n]=s}}return function(t,e){e?t.$$hashKey=e:delete t.$$hashKey}(t,n),t}(t,e)}function P(t){return parseInt(t,10)}function D(t){return Number.isNaN(t)}function U(t,e){return M(Object.create(t),e)}function I(t){return O(t.toString)&&t.toString!==toString}function H(t){return!(!t||!(t.nodeName||t.attr&&t.find))}function F(t){return g(t.nodeName)}function q(t,e){return-1!==Array.prototype.indexOf.call(t,e)}function B(t,e){const n=t.indexOf(e);return n>=0&&t.splice(n,1),n}function z(t,e){return t===e||t!=t&&e!=e}function K(t,e){if(t===e)return!0;if(null===t||null===e)return!1;if(t!=t&&e!=e)return!0;const n=typeof t;let r,i,s;if(n===typeof e&&"object"===n){if(!Array.isArray(t)){if(A(t))return!!A(e)&&z(t.getTime(),e.getTime());if(_(t))return!!_(e)&&t.toString()===e.toString();if(j(t)||j(e)||T(t)||T(e)||Array.isArray(e)||A(e)||_(e))return!1;for(i in s=Object.create(null),t)if("$"!==i.charAt(0)&&!O(t[i])){if(!K(t[i],e[i]))return!1;s[i]=!0}for(i in e)if(!(i in s)&&"$"!==i.charAt(0)&&b(e[i])&&!O(e[i]))return!1;return!0}if(!Array.isArray(e))return!1;if((r=t.length)===e.length){for(i=0;i<r;i++)if(!K(t[i],e[i]))return!1;return!0}}return!1}function W(t,e){if("hasOwnProperty"===t)throw f("badname","hasOwnProperty is not a valid {0} name",e)}function G(t){if(null==t)return"";switch(typeof t){case"string":break;case"number":t=`${t}`;break;default:t=!I(t)||Array.isArray(t)||A(t)?X(t):t.toString()}return t}function Q(t,e,n){return t.concat(Array.prototype.slice.call(e,n))}function Y(t,e){return Array.prototype.slice.call(t,e)}function J(t,e){const n=arguments.length>2?Y(arguments,2):[];return!O(e)||e instanceof RegExp?e:n.length?function(){return arguments.length?e.apply(t,Q(n,arguments,0)):e.apply(t,n)}:function(){return arguments.length?e.apply(t,arguments):e.call(t)}}function Z(t,e){let n=e;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?n=void 0:T(e)?n="$WINDOW":e&&window.document===e?n="$DOCUMENT":j(e)&&(n="$SCOPE"),n}function X(t,e){if(!y(t))return x(e)||(e=e?2:null),JSON.stringify(t,Z,e)}function tt(t,e,n){const r=t.getTimezoneOffset(),i=function(t,e){const n=Date.parse(`Jan 01, 1970 00:00:00 ${t}`)/6e4;return D(n)?e:n}(e,r);return function(t,e){const n=new Date(t.getTime());return n.setMinutes(n.getMinutes()+e),n}(t,1*(i-r))}function et(t){const e={};return(t||"").split("&").forEach((t=>{let n,r,i;t&&(r=t=t.replace(/\+/g,"%20"),n=t.indexOf("="),-1!==n&&(r=t.substring(0,n),i=t.substring(n+1)),r=nt(r),b(r)&&(i=!b(i)||nt(i),vt(e,r)?Array.isArray(e[r])?e[r].push(i):e[r]=[e[r],i]:e[r]=i))})),e}function nt(t){try{return decodeURIComponent(t)}catch{return}}function rt(t){return it(t,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function it(t,e){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,e?"%20":"+")}const st=["ng-","data-ng-"];function ot(t,e){if(Array.isArray(t)){e=e||[];for(let n=0,r=t.length;n<r;n++)e[n]=t[n]}else if(w(t)){e=e||{};for(const n in t)n.startsWith("$")&&"$"===n.charAt(1)||(e[n]=t[n])}return e||t}function at(t,e="Assertion failed"){if(!t)throw new Error(e)}function ct(t,e,n){if(!t)throw f("areq","Argument '{0}' is {1}",e||"?",n||"required");return t}function lt(t,e,n){return n&&Array.isArray(t)&&(t=t[t.length-1]),ct(O(t),e,`not a function, got ${t&&"object"==typeof t?t.constructor.name||"Object":typeof t}`),t}const ut={objectMaxDepth:5,urlErrorParamsEnabled:!0};function ht(t){var e;return w(t)&&(b(t.objectMaxDepth)&&(ut.objectMaxDepth=x(e=t.objectMaxDepth)&&e>0?t.objectMaxDepth:NaN),b(t.urlErrorParamsEnabled)&&L(t.urlErrorParamsEnabled)&&(ut.urlErrorParamsEnabled=t.urlErrorParamsEnabled)),ut}function dt(t){return function(...e){const n=e[0],r=e[1];let i=`[${t?`${t}:`:""}${n}] `;const s=Y(e,2).map((t=>function(t){if("function"==typeof t)return t.toString().replace(/ \{[\s\S]*$/,"");if(y(t))return"undefined";if("string"!=typeof t){const e=[];let n=structuredClone(p(t)?t.$target:t);return JSON.stringify(n,((t,n)=>{const r=Z(t,n);if(w(r)){if(e.indexOf(r)>=0)return"...";e.push(r)}return r}))}return t}(t)));return i+=r.replace(/\{\d+\}/g,(t=>{const e=+t.slice(1,-1);return e<s.length?s[e]:t})),new Error(i)}}function pt(t){const e=t&&t.$$hashKey;if(e)return"function"==typeof e?t.$$hashKey():e;const n=typeof t;return"function"===n||"object"===n&&null!==t?(t.$$hashKey=`${n}:${m()}`,t.$$hashKey):"undefined"===n?`${n}:${m()}`:`${n}:${t}`}function ft(t,e){return t||e?t?e?(Array.isArray(t)&&(t=t.join(" ")),Array.isArray(e)&&(e=e.join(" ")),t+" "+e):t:e:""}function $t(t){return t.replace(l,"").replace(u,((t,e,n)=>n?e.toUpperCase():e))}function mt(t){return function(t,e){if(t.nodeType!==Node.ELEMENT_NODE)return!1;const n=t;return"true"===n.dataset[e]||"true"===n.getAttribute(e)}(t,"animate")}function gt(t){return!t||!Object.keys(t).length}function vt(t,e){return Object.prototype.hasOwnProperty.call(t,e)}const yt=new Map;let bt=1;const wt="ng",Et="$scope",Ct=/-([a-z])/g,St=/_([a-z])/g,xt=["multiple","selected","checked","disabled","readonly","required","open"],At=["INPUT","SELECT","OPTION","TEXTAREA","BUTTON","FORM","DETAILS"];function kt(t,e){return e.toUpperCase()}function Ot(t){return t.replace(Ct,kt)}function _t(t){return t.replace(St,kt)}function Tt(t,e){const n=t[wt],r=n&&yt.get(n);r&&(e?delete r.data[e]:r.data={},function(t){const e=t[wt],{data:n}=yt.get(e);n&&Object.keys(n).length||(yt.delete(e),t[wt]=void 0)}(t))}function jt(t,e=!1){let n=t[wt],r=n&&yt.get(n);return e&&!r&&(t[wt]=n=++bt,r={data:{}},yt.set(n,r)),r}function Lt(t){return!/<|&#?\w+;/.test(t)}function Rt(t){switch(t.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.COMMENT_NODE:case void 0:return!0;default:return!1}}function Nt(t,e){t&&(Array.isArray(t)?t.forEach((t=>Nt(t,e))):(!e&&Rt(t)&&Wt([t]),Rt(t)&&Wt(t.querySelectorAll("*"))),delete t[wt],t.innerHTML="")}function Vt(t,e,n){if(Rt(t)){let r;const i=b(n),s=!i&&e&&!w(e),o=!e,a=jt(t,!s),c=a&&a.data;if(i)c[Ot(e)]=n;else{if(o)return c;if(s)return c&&c[Ot(e)];for(r in e)c[Ot(r)]=e[r]}}}function Mt(t,e,n){if(Rt(t)){const r=jt(t,!0);(r&&r.data)[Ot(e)]=n}else t.parentElement&&Mt(t.parentElement,e,n)}function Pt(t,e){if(Rt(t)){const n=jt(t,!1),r=n&&n.data;if(!e)return;return r&&r[Ot(e)]}}function Dt(t){return Pt(t,Et)}function Ut(t,e){return Mt(t,Et,e)}function It(t,e){return Mt(t,"$isolateScope",e)}function Ht(t,e){return Ft(t,`$${e||"ngController"}Controller`)}function Ft(t,e){let n;for(t.nodeType===Node.DOCUMENT_NODE&&(t=t.documentElement);t;){if(b(n=Pt(t,e)))return n;t=t.parentNode||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&t.host}}function qt(t,e=!1){e||Nt(t);const n=t.parentNode;n&&n.removeChild(t)}function Bt(t){let e;if("string"==typeof t){e=(new DOMParser).parseFromString(t,"text/html").body.firstChild.cloneNode(!0)}else{if(!(t instanceof Element||t instanceof Node))throw new Error("Input must be an HTML string or a DOM element.");e=t.cloneNode(!0)}for(;e.firstChild;)e.removeChild(e.firstChild);const n=document.createElement("div");n.appendChild(e);const r=n.innerHTML;try{if(e.nodeType===Node.TEXT_NODE)return r.toLowerCase();if(e.nodeType===Node.COMMENT_NODE)return`\x3c!--${e.data.trim()}--\x3e`;{const t=r.match(/^(<[^>]+>)/);if(t)return t[1].replace(/^<([\w-]+)/,((t,e)=>"<"+e.toLowerCase()))}}catch{return r.toLowerCase()}return r.toLowerCase()}function zt(t){let e=t[0];const n=t[t.length-1];let r;for(let i=1;e!==n&&(e=e.nextSibling);i++)(r||t[i]!==e)&&(r||(r=Array.prototype.slice.call(t,0,i)),r.push(e));return r||t}function Kt(t,e){const n=e.toLowerCase();return!(!xt.includes(n)||!At.includes(t.nodeName))&&n}function Wt(t){for(let e=0,n=t.length;e<n;e++)Tt(t[e])}function Gt(t){return Ft(t,"$injector")}function Qt(t){const e=document.createElement("template");return e.innerHTML=t.trim(),e.content.firstChild}function Yt(t){const e=document.createElement("template");return e.innerHTML=t.trim(),e.content.childNodes}function Jt(t){switch(Nt(t,!0),t.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:t.replaceChildren()}}function Zt(t,e,n){if(n){const t=function(t){const{length:e}=t;for(let n=0;n<e;n++){const e=t[n];if(e.nodeType===Node.ELEMENT_NODE)return e}}(n);!t||t.parentNode||t.previousElementSibling||(n=null)}n?n.after(t):e.prepend(t)}const Xt=Object.freeze({$$AnimateRunner:"$$AnimateRunner",$$animateAsyncRun:"$$animateAsyncRun",$$animateCache:"$$animateCache",$$animateCssDriver:"$$animateCssDriver",$$animateJs:"$$animateJs",$$animateJsDriver:"$$animateJsDriver",$$animateQueue:"$$animateQueue",$$animation:"$$animation",$$rAFScheduler:"$$rAFScheduler",$$taskTrackerFactory:"$$taskTrackerFactory",$anchorScroll:"$anchorScroll",$animate:"$animate",$animateCss:"$animateCss",$aria:"$aria",$browser:"$browser",$controller:"$controller",$eventBus:"$eventBus",$exceptionHandler:"$exceptionHandler",$filter:"$filter",$http:"$http",$httpBackend:"$httpBackend",$httpParamSerializer:"$httpParamSerializer",$interpolate:"$interpolate",$location:"$location",$log:"$log",$ngViewScroll:"$ngViewScroll",$parse:"$parse",$rootScope:"$rootScope",$routerGlobals:"$routerGlobals",$sce:"$sce",$sceDelegate:"$sceDelegate",$state:"$state",$stateRegistry:"$stateRegistry",$templateCache:"$templateCache",$templateFactory:"$templateFactory",$templateRequest:"$templateRequest",$transitions:"$transitions",$urlConfig:"$urlConfig",$urlService:"$urlService",$view:"$view",$provide:"$provide",$injector:"$injector",$compileProvider:"$compileProvider",$animateProvider:"$animateProvider",$filterProvider:"$filterProvider",$controllerProvider:"$controllerProvider"});const te="$injector",ee="$compileProvider";class ne{constructor(t,e,n){at(E(t),"name required"),at(Array.isArray(e),"requires array required"),this.name=t,this.requires=e,this.invokeQueue=[],this.configBlocks=[],this.runBlocks=[],n&&this.config(n)}value(t,e){return this.invokeQueue.push([Xt.$provide,"value",[t,e]]),this}constant(t,e){return this.invokeQueue.unshift([Xt.$provide,"constant",[t,e]]),this}config(t){return this.configBlocks.push([te,"invoke",[t]]),this}run(t){return this.runBlocks.push(t),this}component(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([ee,"component",[t,e]]),this}factory(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([Xt.$provide,"factory",[t,e]]),this}service(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([Xt.$provide,"service",[t,e]]),this}provider(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([Xt.$provide,"provider",[t,e]]),this}decorator(t,e){return e&&O(e)&&(e.$$moduleName=t),this.configBlocks.push([Xt.$provide,"decorator",[t,e]]),this}directive(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push([ee,"directive",[t,e]]),this}animation(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push(["$animateProvider","register",[t,e]]),this}filter(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push(["$filterProvider","register",[t,e]]),this}controller(t,e){return e&&O(e)&&(e.$$moduleName=t),this.invokeQueue.push(["$controllerProvider","register",[t,e]]),this}}const re=/^([^(]+?)=>/,ie=/^[^(]*\(\s*([^)]*)\)/m,se=/^\s*(_?)(\S+?)\1\s*$/,oe=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,ae=dt(te),ce="Provider",le=!0;class ue{constructor(t){this.cache={},this.strictDi=t,this.path=[],this.modules={}}get(t){if(vt(this.cache,t)){if(this.cache[t]===le)throw ae("cdep","Circular dependency found: {0}",`${t} <- ${this.path.join(" <- ")}`);return this.cache[t]}this.path.unshift(t),this.cache[t]=le;try{this.cache[t]=this.factory(t)}catch(e){throw delete this.cache[t],e}return this.cache[t]}injectionArgs(t,e,n){const r=[],i=function(t,e,n){let r,i,s;if("function"==typeof t){if(!(r=t.$inject)){if(r=[],t.length){if(e)throw ae("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);i=function(t){const e=pe(t).replace(oe,""),n=e.match(re)||e.match(ie);return n}(t),i[1].split(/,/).forEach((function(t){t.replace(se,(function(t,e,n){r.push(n)}))}))}t.$inject=r}}else Array.isArray(t)?(s=t.length-1,lt(t[s],"fn"),r=t.slice(0,s)):lt(t,"fn",!0);return r}(t,this.strictDi,n);for(let t=0,{length:n}=i;t<n;t++){const n=i[t];if("string"!=typeof n)throw ae("itkn","Incorrect injection token! Expected service name as string, got {0}",n);r.push(e&&vt(e,n)?e[n]:this.get(n))}return r}invoke(t,e,n,r){"string"==typeof n&&(r=n,n=null);const i=this.injectionArgs(t,n,r);if(Array.isArray(t)&&(t=t[t.length-1]),/^class\b/.test(pe(t))){i.unshift(null);return new(Function.prototype.bind.apply(t,i))}return t.apply(e,i)}instantiate(t,e,n){const r=Array.isArray(t)?t[t.length-1]:t,i=this.injectionArgs(t,e,n);return i.unshift(null),new(Function.prototype.bind.apply(r,i))}loadNewModules(){}factory(t){console.error(`Unhandled ${t}`)}}class he extends ue{constructor(t,e){super(e),this.cache=t}factory(t){throw this.path.push(t),ae("unpr","Unknown provider: {0}",this.path.join(" <- "))}}class de extends ue{constructor(t,e){super(e),this.providerInjector=t,this.modules=this.providerInjector.modules}factory(t){const e=this.providerInjector.get(t+ce);return this.invoke(e.$get,e,void 0,t)}has(t){const e=vt(this.providerInjector.cache,t+ce),n=vt(this.cache,t);return e||n}}function pe(t){return Function.prototype.toString.call(t)}const fe=/^([^(]+?)=>/,$e=/^[^(]*\(\s*([^)]*)\)/m,me=/,/,ge=/^\s*(_?)(\S+?)\1\s*$/,ve=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,ye=dt(te),be="Provider";function we(t,e=!1){at(Array.isArray(t),"modules required");const n=new Map,r={$provide:{provider:Se(c),factory:Se(l),service:Se((function(t,e){return l(t,[te,t=>t.instantiate(e)])})),value:Se((function(t,e){return r[t+be]={$get:()=>e}})),constant:Se((function(t,e){W(t,"constant"),i.cache[t]=e,s.cache[t]=e})),decorator:function(t,e){const n=i.get(t+be),r=n.$get;n.$get=function(){const t=o.invoke(r,n);return o.invoke(e,null,{$delegate:t})}}}},i=r.$injector=new he(r,e),s=new de(i,e);r.$injectorProvider={$get:()=>s};let o=s;const a=u(t);return o=s.get(te),a.forEach((t=>{t&&o.invoke(t)})),o.loadNewModules=function(t){u(t).forEach((t=>{t&&o.invoke(t)}))},o;function c(t,e){let n;if(W(t,"service"),n=O(e)||Array.isArray(e)?i.instantiate(e):e,!n.$get)throw ye("pget","Provider '{0}' must define $get factory method.",t);return r[t+be]=n,n}function l(t,e){return c(t,{$get:()=>{const n=o.invoke(e,this);if(y(n))throw ye("undef","Provider '{0}' must return a value from $get factory method.",t);return n}})}function u(t){ct(y(t)||Array.isArray(t),"modulesToLoad","not an array");let e=[];return t.forEach((t=>{if(!n.get(t)){n.set(t,!0);try{if(E(t)){const n=window.angular.module(t);o.modules[t]=n,e=e.concat(u(n.requires)).concat(n.runBlocks);n.invokeQueue.concat(n.configBlocks).forEach((t=>{const e=i.get(t[0]);e[t[1]].apply(e,t[2])}))}else O(t)||Array.isArray(t)?e.push(i.invoke(t)):lt(t,"module")}catch(e){throw Array.isArray(t)&&(t=t[t.length-1]),e.message&&e.stack&&-1===e.stack.indexOf(e.message)&&(e.message=`${e.message}\n${e.stack}`),ye("modulerr","Failed to instantiate module {0} due to:\n{1}",t,e.stack||e.message||e)}}})),e}}function Ee(t){const e=function(t){return Function.prototype.toString.call(t)}(t).replace(ve,"");return e.match(fe)||e.match($e)}function Ce(t,e,n){let r,i,s;if("function"==typeof t){if(!(r=t.$inject)){if(r=[],t.length){if(e)throw ye("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);i=Ee(t),i[1].split(me).forEach((function(t){t.replace(ge,(function(t,e,n){r.push(n)}))}))}t.$inject=r}}else Array.isArray(t)?(s=t.length-1,lt(t[s],"fn"),r=t.slice(0,s)):lt(t,"fn",!0);return r}function Se(t){return function(e,n){if(!w(e))return t(e,n);Object.entries(e).forEach((([e,n])=>{t(e,n)}))}}class xe{constructor(t){if(ct(t,"element"),this.initial=null,this._node=null,this._element=void 0,this._nodes=void 0,this.linked=!1,this.isList=!1,E(t)){this.initial=t;let e=Qt(t);switch(!0){case e instanceof Element:this.element=e;break;case e instanceof Node:this.node=e}}else if(t instanceof NodeList)this.initial=Array.from(t).map((t=>t.cloneNode(!0))),1==t.length?this.node=t[0]:(this._nodes=Array.from(t),this.isList=!0);else if(t instanceof Element)this.initial=t.cloneNode(!0),this.element=t;else if(t instanceof Node)this.initial=t.cloneNode(!0),this._node=t;else{if(!(t instanceof Array))throw new Error("Invalid element passed to NodeRef");1==t.length?(this.initial=t[0].cloneNode(!0),this.node=t[0]):(this.initial=Array.from(t).map((t=>t.cloneNode(!0))),this.nodes=t)}}get element(){return ct(this._element,"element"),this._element}set element(t){ct(t instanceof Element,"element"),this._element=t,this._nodes=void 0,this.isList=!1}get node(){return ct(this._node||this._element,"node"),this._node||this._element}set node(t){ct(t instanceof Node,"node"),this._node=t,t.nodeType===Node.ELEMENT_NODE?this._element=t:this._element=void 0}set nodes(t){ct(Array.isArray(t)&&t.every((t=>t instanceof Node)),"nodes"),this._nodes=t,this.isList=!0}get nodes(){return ct(this._nodes,"nodes"),this._nodes}get nodelist(){if(ct(this.isList,"nodes"),0===this._nodes.length)return this._nodes;if(this._nodes[0].parentElement)return this._nodes[0].parentElement.childNodes;{const t=document.createDocumentFragment();return this._nodes.forEach((e=>{t.appendChild(e)})),t.childNodes}}get dom(){return this.isList?this.nodelist:this.node}get size(){return this.isList?this._nodes.length:1}getAny(){return this.isList?this._nodes[0]:this._element||this._node}getAll(){return this.isList?this._nodes:this._element||this._node}collection(){return this.isList?Array.from(this._nodes):[this._element||this._node]}getIndex(t){return this.isList?this._nodes[t]:this.node}setIndex(t,e){ct(null!==t,"index"),ct(e,"node"),this.isList?this._nodes[t]=e:this.node=e}clone(){const t=this.isList?this.nodes.map((t=>t.cloneNode(!0))):this.node.cloneNode(!0);return new xe(t)}isElement(){return void 0!==this._element}}const Ae=dt("$controller"),ke=/^(\S+)(\s+as\s+([\w$]+))?$/;function Oe(t,e){if(E(t)){const e=ke.exec(t);if(e)return e[3]}}class _e{constructor(){this.controllers=new Map}has(t){return this.controllers.has(t)}register(t,e){W(t,"controller"),w(t)?Object.entries(t).forEach((([t,e])=>{this.controllers.set(t,e)})):this.controllers.set(t,e)}$get=["$injector",t=>(e,n,r,i)=>{let s,o,a,c=i&&E(i)?i:null;if(r=!0===r,E(e)){if(o=e.match(ke),!o)throw Ae("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",e);if(a=o[1],c=c||o[3],!(e=this.controllers.get(a)))throw Ae("ctrlreg","The controller with the name '{0}' is not registered.",a);lt(e,a,!0)}if(r){const r=(Array.isArray(e)?e[e.length-1]:e).prototype;return s=Object.create(r||null),c&&(s.$controllerIdentifier=c,this.addIdentifier(n,c,s,a||e.name)),function(){const r=t.invoke(e,s,n,a);return r!==s&&(w(r)||O(r))&&(s=r,c&&(s.$controllerIdentifier=c,this.addIdentifier(n,c,s,a||e.name))),s}.bind(this,{instance:s,identifier:c})}return s=t.instantiate(e,n,a),c&&this.addIdentifier(n,c,s,a||e.name),s}];addIdentifier(t,e,n,r){if(!t||!w(t.$scope))throw dt("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",r,e);t.$scope[e]=n}}const Te=document.createElement("a"),je=Re(window.location.href);let Le;function Re(t){if(!E(t))return t;const e=t;Te.setAttribute("href",e);let{hostname:n}=Te;return!("[::1]"===Te.hostname)&&n.indexOf(":")>-1&&(n=`[${n}]`),{href:Te.href,protocol:Te.protocol?Te.protocol.replace(/:$/,""):"",host:Te.host,search:Te.search?Te.search.replace(/^\?/,""):"",hash:Te.hash?Te.hash.replace(/^#/,""):"",hostname:n,port:Te.port,pathname:"/"===Te.pathname.charAt(0)?Te.pathname:`/${Te.pathname}`}}function Ne(t){return Ve(t,function(){if(document.baseURI)return document.baseURI;Le||(Le=document.createElement("a"),Le.href=".",Le=Le.cloneNode(!1));return Le.href}())}function Ve(t,e){return t=Re(t),e=Re(e),t.protocol===e.protocol&&t.host===e.host}Te.href="http://[::1]";const Me=dt("$sce"),Pe={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"};function De(t){if("self"===t)return t;if(E(t)){if(t.indexOf("***")>-1)throw Me("iwcard","Illegal sequence *** in string matcher. String: {0}",t);return t=(e=t,e.replace(/([-()[\]{}+?*.$^|,:#<!\\])/g,"\\$1")).replace(/\\\*\\\*/g,".*").replace(/\\\*/g,"[^:/.?&;]*"),new RegExp(`^${t}$`)}var e;if(_(t))return new RegExp(`^${t.source}$`);throw Me("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}class Ue{constructor(){this.SCE_CONTEXTS=Pe;let t=["self"],e=[];this.trustedResourceUrlList=function(e){return arguments.length&&(t=e.map((t=>De(t)))),t},this.bannedResourceUrlList=function(t){return arguments.length&&(e=t.map((t=>De(t)))),e},this.$get=["$injector","$$sanitizeUri","$exceptionHandler",function(n,r,i){let s=function(){i(Me("unsafe","Attempting to use an unsafe value in a safe context."))};function o(t,e){return"self"===t?Ve(e,je)||Ne(e):!!t.exec(e.href)}function a(t){const e=function(t){this.$$unwrapTrustedValue=function(){return t}};return t&&(e.prototype=new t),e.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},e.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},e}n.has("$sanitize")&&(s=n.get("$sanitize"));const c=a(),l={};return l[Pe.HTML]=a(c),l[Pe.CSS]=a(c),l[Pe.MEDIA_URL]=a(c),l[Pe.URL]=a(l[Pe.MEDIA_URL]),l[Pe.JS]=a(c),l[Pe.RESOURCE_URL]=a(l[Pe.URL]),{trustAs:function(t,e){const n=vt(l,t)?l[t]:null;if(n){if(null===e||y(e)||""===e)return e;if("string"==typeof e)return new n(e);i(Me("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",t))}else i(Me("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",t,e))},getTrusted:function(n,a){if(null===a||y(a)||""===a)return a;const c=vt(l,n)?l[n]:null;if(c&&a instanceof c)return a.$$unwrapTrustedValue();if(O(a.$$unwrapTrustedValue)&&(a=a.$$unwrapTrustedValue()),n===Pe.MEDIA_URL||n===Pe.URL)return r(a.toString(),n===Pe.MEDIA_URL);if(n===Pe.RESOURCE_URL){if(function(n){const r=Re(n.toString());let i,s,a=!1;for(i=0,s=t.length;i<s;i++)if(o(t[i],r)){a=!0;break}if(a)for(i=0,s=e.length;i<s;i++)if(o(e[i],r)){a=!1;break}return a}(a))return a;throw Me("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",a.toString())}if(n===Pe.HTML)return s();i(Me("unsafe","Attempting to use an unsafe value in a safe context."))},valueOf:function(t){return t instanceof c?t.$$unwrapTrustedValue():t}}}]}}function Ie(){let t=!0;this.enabled=function(e){return arguments.length&&(t=!!e),t},this.$get=["$parse","$sceDelegate",function(e,n){const r=ot(Pe);r.isEnabled=function(){return t},r.trustAs=n.trustAs,r.getTrusted=n.getTrusted,r.valueOf=n.valueOf,t||(r.trustAs=r.getTrusted=function(t,e){return e},r.valueOf=function(t){return t}),r.parseAs=function(t,n){const i=e(n);return i.literal&&i.constant?i:e(n,(e=>r.getTrusted(t,e)))};const i=r.parseAs,{getTrusted:s}=r,{trustAs:o}=r;return Object.entries(Pe).forEach((([t,e])=>{const n=g(t);r[_t(`parse_as_${n}`)]=function(t){return i(e,t)},r[_t(`get_trusted_${n}`)]=function(t){return s(e,t)},r[_t(`trust_as_${n}`)]=function(t){return o(e,t)}})),r}]}const He={};function Fe(t,e,n,r){return{restrict:"A",compile(i,s){const o=t(s[n]);return function(t,n){n.addEventListener(r,(n=>{try{o(t,{$event:n})}catch(t){e(t)}}))}}}}"click copy cut dblclick focus blur keydown keyup load mousedown mouseenter mouseleave mousemove mouseout mouseover mouseup paste submit touchstart touchend touchmove".split(" ").forEach((t=>{const e=$t(`ng-${t}`);He[e]=["$parse","$exceptionHandler",(n,r)=>Fe(n,r,e,t)]}));const qe=dt("$compile"),Be=/^\w/,ze=document.createElement("div");class Ke{static $nonscope=!0;constructor(t,e,n,r,i,s){if(this.$rootScope=t,this.$animate=e,this.$exceptionHandler=n,this.$sce=r,s){const t=Object.keys(s);for(let e=0,n=t.length;e<n;e++){const n=t[e];this[n]=s[n]}}else this.$attr={};this.$nodeRef=i}get $$element(){return this.$nodeRef.node}$normalize=$t;$addClass(t){t&&t.length>0&&(mt(this.$$element)?this.$animate.addClass(this.$$element,t):this.$nodeRef.element.classList.add(t))}$removeClass(t){t&&t.length>0&&(mt(this.$$element)?this.$animate.removeClass(this.$$element,t):this.$nodeRef.element.classList.remove(t))}$updateClass(t,e){const n=We(t,e);n&&n.length&&(mt(this.$$element)?this.$animate.addClass(this.$$element,n):this.$nodeRef.element.classList.add(...n.trim().split(/\s+/)));const r=We(e,t);r&&r.length&&(mt(this.$$element)?this.$animate.removeClass(this.$$element,r):this.$nodeRef.element.classList.remove(...r.trim().split(/\s+/)))}$set(t,e,n,r){const i=Kt(this.$$element,t),s=h[t];let o=t;if(i?(this.$$element[t]=e,r=i):s&&(this[s]=e,o=s),this[t]=e,r?this.$attr[t]=r:(r=this.$attr[t])||(this.$attr[t]=r=V(t,"-")),"img"===this.$nodeRef.node.nodeName.toLowerCase()&&"srcset"===t&&(this[t]=e=this.sanitizeSrcset(e,"$set('srcset', value)")),!1!==n){let t=p(this.$$element)?this.$$element.$target:this.$$element;null===e||y(e)?t.removeAttribute(r):Be.test(r)?i&&!1===e?t.removeAttribute(r):i?t.toggleAttribute(r,e):t.setAttribute(r,e):this.setSpecialAttr(this.$$element,r,e)}const{$$observers:a}=this;a&&a[o]&&a[o].forEach((t=>{try{t(e)}catch(t){this.$exceptionHandler(t)}}))}$observe(t,e){const n=this.$$observers||(this.$$observers=Object.create(null)),r=n[t]||(n[t]=[]);return r.push(e),r.$$inter||!vt(this,t)||y(this[t])||e(this[t]),function(){B(r,e)}}setSpecialAttr(t,e,n){ze.innerHTML=`<span ${e}>`;const{attributes:r}=ze.firstChild,i=r[0];r.removeNamedItem(i.name),i.value=n,t.attributes.setNamedItem(i)}sanitizeSrcset(t,e){let n;if(!t)return t;if(!E(t))throw qe("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',e,t.toString());let r="";const i=N(t),s=/\s/.test(i)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,o=i.split(s),a=Math.floor(o.length/2);for(n=0;n<a;n++){const t=2*n;r+=this.$sce.getTrustedMediaUrl(N(o[t])),r+=" "+N(o[t+1])}const c=N(o[2*n]).split(/\s/);return r+=this.$sce.getTrustedMediaUrl(N(c[0])),2===c.length&&(r+=" "+N(c[1])),r}}function We(t,e){const n=new Set(t.split(/\s+/)),r=new Set(e.split(/\s+/));return Array.from(n).filter((t=>!r.has(t))).join(" ")}function Ge(t,e){return{restrict:"A",compile:()=>(n,r)=>{const i=r;""===e&&(e=t);const s=Ot(e);n[s]||(n[s]=i.getAttribute(t));const o=new MutationObserver((e=>{const r=e[0].target.getAttribute(t);n[s]!==r&&(n[s]=r)}));o.observe(i,{attributes:!0,attributeFilter:[t]}),n.$on("$destroy",(()=>{o.disconnect()}))}}}const Qe=dt("$compile"),Ye=["ngIf","ngRepeat"],Je=["ngSrc","ngSrcset","src","srcset"],Ze=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,Xe=/^(on[a-z]+|formaction)$/,tn="Directive";class en{static $inject=["$provide","$$sanitizeUriProvider"];constructor(t,e){const n={},r=Object.create(null);function i(t,e,n){const i=/^([@&]|[=<]())(\??)\s*([\w$]*)$/,s=Object.create(null);return Object.entries(t).forEach((([t,o])=>{if((o=o.trim())in r)return void(s[t]=r[o]);const a=o.match(i);if(!a)throw Qe("iscp","Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}",e,t,o,n?"controller bindings definition":"isolate scope definition");s[t]={mode:a[1][0],collection:"*"===a[2],optional:"?"===a[3],attrName:a[4]||t},a[4]&&(r[o]=s[t])})),s}function s(t,e){const n={isolateScope:null,bindToController:null};if(w(t.scope)&&(!0===t.bindToController?(n.bindToController=i(t.scope,e,!0),n.isolateScope={}):n.isolateScope=i(t.scope,e,!1)),w(t.bindToController)&&(n.bindToController=i(t.bindToController,e,!0)),n.bindToController&&!t.controller)throw Qe("noctrl","Cannot bind to controller without directive '{0}'s controller.",e);return n}this.directive=function e(r,i){return ct(r,"name"),W(r,"directive"),E(r)?(!function(t){const e=t.charAt(0);if(!e||e!==g(e))throw Qe("baddir","Directive/Component name '{0}' is invalid. The first character must be a lowercase letter",t);if(t!==t.trim())throw Qe("baddir","Directive/Component name '{0}' is invalid. The name should not contain leading or trailing whitespaces",t)}(r),ct(i,"directiveFactory"),vt(n,r)||(n[r]=[],t.factory(r+tn,["$injector","$exceptionHandler",function(t,e){const i=[];return n[r].forEach(((n,s)=>{try{let e=t.invoke(n);const o=t=>()=>t;O(e)?e={compile:o(e)}:!e.compile&&e.link&&(e.compile=o(e.link)),e.priority=e.priority||0,e.index=s,e.name=e.name||r,e.require=function(t){const e=t.require||t.controller&&t.name;return!Array.isArray(e)&&w(e)&&Object.entries(e).forEach((([t,n])=>{const r=n.match(Ze);n.substring(r[0].length)||(e[t]=r[0]+t)})),e}(e),e.restrict=function(t,e){if(t&&(!E(t)||!/[EA]/.test(t)))throw Qe("badrestrict","Restrict property '{0}' of directive '{1}' is invalid",t,e);return t||"EA"}(e.restrict,r),e.$$moduleName=n.$$moduleName,i.push(e)}catch(t){e(t)}})),i}])),n[r].push(i)):Object.entries(r).forEach((([t,n])=>e(t,n))),this},this.component=function(t,e){if(!E(t))return Object.entries(t).forEach((([t,e])=>this.component(t,e))),this;const n=e.controller||function(){};function r(t){function r(e){return O(e)||Array.isArray(e)?function(n,r){return t.invoke(e,this,{$element:n,$attrs:r})}:e}const i=e.template||e.templateUrl?e.template:"",s={controller:n,controllerAs:Oe(e.controller)||e.controllerAs||"$ctrl",template:r(i),templateUrl:r(e.templateUrl),transclude:e.transclude,scope:{},bindToController:e.bindings||{},restrict:"E",require:e.require};return Object.entries(e).forEach((([t,e])=>{"$"===t.charAt(0)&&(s[t]=e)})),s}return Object.entries(e).forEach((([t,e])=>{"$"===t.charAt(0)&&(r[t]=e,O(n)&&(n[t]=e))})),r.$inject=["$injector"],this.directive(t,r)},this.aHrefSanitizationTrustedUrlList=function(t){if(!b(t))return e.aHrefSanitizationTrustedUrlList();e.aHrefSanitizationTrustedUrlList(t)},this.imgSrcSanitizationTrustedUrlList=function(t){if(!b(t))return e.imgSrcSanitizationTrustedUrlList();e.imgSrcSanitizationTrustedUrlList(t)};let o=!1;this.strictComponentBindingsEnabled=function(t){return b(t)?(o=t,this):o};const a=Object.create(null);this.addPropertySecurityContext=function(t,e,n){const r=`${t.toLowerCase()}|${e.toLowerCase()}`;if(r in a&&a[r]!==n)throw Qe("ctxoverride","Property context '{0}.{1}' already set to '{2}', cannot override to '{3}'.",t,e,a[r],n);return a[r]=n,this},function(){function t(t,e){e.forEach((e=>{a[e.toLowerCase()]=t}))}t(Pe.HTML,["iframe|srcdoc","*|innerHTML","*|outerHTML"]),t(Pe.CSS,["*|style"]),t(Pe.URL,["area|href","area|ping","a|href","a|ping","blockquote|cite","body|background","del|cite","input|src","ins|cite","q|cite"]),t(Pe.MEDIA_URL,["audio|src","img|src","img|srcset","source|src","source|srcset","track|src","video|src","video|poster"]),t(Pe.RESOURCE_URL,["*|formAction","applet|code","applet|codebase","base|href","embed|src","frame|src","form|action","head|profile","html|manifest","iframe|src","link|href","media|src","object|codebase","object|data","script|src"])}(),this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$sce","$animate",function(t,e,r,i,c,u,h,d,f){let $;function m(){for(let t=0,e=$.length;t<e;++t)try{$[t]()}catch(t){r(t)}$=void 0}const g=e.startSymbol(),v=e.endSymbol(),C="{{"===g&&"}}"===v?t=>t:t=>t.replace(/\{\{/g,g).replace(/}}/g,v),S=/^ng(Attr|Prop|On|Observe)([A-Z].*)$/;return x;function x(t,e,n,r,i){let s=new xe(t),o=A(s,e,n,r,i),a=null;return function(t,e,n){if(!s)throw Qe("multilink","This element has already been linked.");ct(t,"scope"),s.getAny()&&Ut(s.getAny(),t);i&&i.needsNewScope&&(t=t.$parent.$new());n=n||{};let r,{transcludeControllers:c,parentBoundTranscludeFn:l,futureParentElement:u}=n;l&&l.$$boundTransclude&&(l=l.$$boundTransclude);a||(a=function(t){const e=t;if(!e)return"html";return"foreignobject"!==F(e)&&toString.call(e).match(/SVG/)?"svg":"html"}(u));if("html"!==a){const t=Qt("<div></div>");t.append(s.node);const e=G(a,t.innerHTML);r=new xe(e[0])}else r=e?s.clone():s;if(c)for(const t in c)ct(r.element,"element"),Mt(r.element,`$${t}Controller`,c[t].instance);e&&e(r.dom,t);o&&o(t,r,l);e||(s=o=null);return r.linked=!0,r.getAll()}}function A(t,e,n,i,s){const o=[];let a,c=!1;for(let l=0;l<t.size;l++){const u=new Ke(h,f,r,d),p=T(t.getIndex(l),u,0===l?n:void 0,i);let $,m,g;p.length&&($=V(p,t.getIndex(l),u,e,null,[],[],Object.assign({},s,{index:l,parentNodeRef:t,ctxNodeRef:t})));let v=$?.nodeLinkFn;if(v&&$.terminal||!(g=t.getIndex(l).childNodes)||!g.length)m=null;else{let t=v?($.transcludeOnThisElement||!$.templateOnThisElement)&&$.transclude:e;m=A(new xe(g),t)}(v||m)&&(o.push({index:l,nodeLinkFnCtx:$,childLinkFn:m}),c=!0,a=a||v),s=null}return c?function(n,r,i){ct(r,"nodeRef");let s=[];if(a){const e=r.isList?r.nodes.length:1;s=new Array(e),o.forEach((e=>{let n=e.index;0===n?s[n]=r.isList?r.nodes[n]:r.node:t.getIndex(n)&&(s[n]=r.nodes[n])}))}else r.isList?r.nodes.forEach((t=>s.push(t))):s.push(r.node);o.forEach((({index:t,nodeLinkFnCtx:r,childLinkFn:o})=>{const a=s[t];let c,l;a.stable=!0,r?.nodeLinkFn?(c=r.newScope?n.$new():n,l=r.transcludeOnThisElement?_(n,r.transclude,i):!r.templateOnThisElement&&i?i:!i&&e?_(n,e):null,r?.newScope&&Ut(a,c),r.nodeLinkFn(o,c,a,l)):o&&o(n,new xe(a.childNodes),i)}))}:null}function _(t,e,n){function r(r,i,s,o,a){r||((r=t.$transcluded(a)).$$transcluded=!0);return e(r,i,{parentBoundTranscludeFn:n,transcludeControllers:s,futureParentElement:o})}const i=r.$$slots=Object.create(null);for(const r in e.$$slots)e.$$slots[r]?i[r]=_(t,e.$$slots[r],n):i[r]=null;return r}function T(t,n,i,s){const o=[],{nodeType:a}=t,u=n.$attr;let h;switch(a){case Node.ELEMENT_NODE:h=t.nodeName.toLowerCase(),s!==$t(h)&&I(o,$t(h),"E",i);for(let e=0;e<t.attributes?.length;e++){let a=!1,h=!1,d=!1,p=!1,f=t.attributes[e],$=f.name,m=f.value,g=$t($.toLowerCase());const v=g.match(S);v&&(a="Attr"===v[1],h="Prop"===v[1],d="On"===v[1],p="Observe"===v[1],$=$.replace(l,"").toLowerCase().substring(4+v[1].length).replace(/_(.)/g,((t,e)=>e.toUpperCase()))),h||d?(n[g]=m,u[g]=f.name,h?Q(t,o,g,$):o.push(Fe(c,r,g,$))):p?o.push(Ge($,m)):(g=$t($.toLowerCase()),u[g]=$,!a&&vt(n,g)||(n[g]=m,Kt(t,g)&&(n[g]=!0)),Y(t,o,m,g,a),g!==s&&I(o,g,"A",i))}"input"===h&&"hidden"===t.getAttribute("type")&&t.setAttribute("autocomplete","off");break;case Node.TEXT_NODE:!function(t,n){const r=e(n,!0);r&&t.push({priority:0,compile:()=>(t,e)=>{r.expressions.forEach((n=>{t.$watch(n,(()=>{const n=r(p(t)?t.$target:t);if(1===e.nodeType)e.innerHTML=n;else e.nodeValue=n}))}))}})}(o,t.nodeValue)}return o.sort(B),o}function R(t,e,n,r,i,s){let o;return t?x(e,n,r,i,s):function(){o||(o=x(e,n,r,i,s),e=n=s=null);return o.apply(this,arguments)}}function V(t,e,n,i,s,o,a,c){c=c||{};let l=-Number.MAX_VALUE,p=!1,{newScopeDirective:$,controllerDirectives:m,newIsolateScopeDirective:g,templateDirective:v,nonTlbTranscludeDirective:b,hasElementTranscludeDirective:S,ctxNodeRef:x,parentNodeRef:A}=c,k=!1,_=!1,L=new xe(e);const V=c.index;let U,I,B;n.$nodeRef=L;let z,K=s,Q=i,Y=!1,tt=!1,nt=function(t,i,s,c){let l,p,v,b,E,C,x,A,k,_=i;e===s?(A=n,x=n.$nodeRef):(x=new xe(s),A=new Ke(h,f,r,d,x,n)),b=i,g?v=i.$newIsolate():$&&(b=i.$parent),c&&(C=function(t,e,n,r){let i;j(t)||(r=n,n=e,e=t,t=void 0);S&&(i=E);n||(n=S?x.node.parentElement:x.node);if(!r){return c(t,e,i,n,_)}{const s=c.$$slots[r];if(s){return s(t,e,i,n,_)}if(y(s))throw Qe("noslot",'No parent directive that requires a transclusion with slot name "{0}". Element: {1}',r,Bt(x.element))}},C.$$boundTransclude=c,C.isSlotFilled=function(t){return!!c.$$slots[t]}),m&&(E=function(t,e,n,r,i,s,o){const a=Object.create(null);for(const c in r){const l=r[c],h={$scope:l===o||l.$$isolateScope?i:s,$element:t.node,$attrs:e,$transclude:n};let{controller:d}=l;"@"===d&&(d=e[l.name]);const p=u(d,h,!0,l.controllerAs);a[l.name]=p,t.isElement()&&Mt(t.element,`$${l.name}Controller`,p.instance)}return a}(x,A,C,m,v,i,g)),g&&(v.$target.$$isolateBindings=g.$$isolateBindings,k=et(i,A,v,v.$$isolateBindings,g),k.removeWatches&&v.$on("$destroy",k.removeWatches));for(const t in E){const e=m[t],n=E[t],r=e.$$bindings.bindToController,i=n();n.instance=b.$new(i),Mt(x.node,`$${e.name}Controller`,n.instance),n.bindingInfo=et(b,A,n.instance,r,e)}for(m&&Object.entries(m).forEach((([t,e])=>{const{require:n}=e;e.bindToController&&!Array.isArray(n)&&w(n)&&M(E[t].instance,P(t,n,x.element,E))})),E&&Object.values(E).forEach((t=>{const e=t.instance;if(O(e.$onChanges))try{e.$onChanges(t.bindingInfo.initialChanges)}catch(t){r(t)}if(O(e.$onInit))try{e.$target.$onInit()}catch(t){r(t)}O(e.$onDestroy)&&b.$on("$destroy",(()=>{e.$onDestroy()}))})),l=0,p=o.length;l<p;l++){let t=o[l];const e=t.require&&P(t.directiveName,t.require,x.element,E);try{t(t.isolateScope?v:i,x.node,A,e,C)}catch(t){r(t,Bt(x.getAny()))}}for(g&&(g.template||null===g.templateUrl)&&(_=v),t&&s&&s.childNodes&&s.childNodes.length&&t(_,new xe(s.childNodes),c),l=a.length-1;l>=0;l--){let t=a[l];const e=t.require&&P(t.directiveName,t.require,x.node,E);try{t.isolateScope&&It(x.element,v),t(t.isolateScope?v:i,x.node,A,e,C)}catch(t){r(t,Bt(x.getAny()))}}E&&Object.values(E).forEach((t=>{const e=t.instance;O(e.$postLink)&&e.$postLink()}))};for(let s=0,u=t.length;s<u&&(U=t[s],B=void 0,!(l>U.priority));s++){z=U.scope,z&&(U.templateUrl||(w(z)?(W("new/isolated scope",g||$,U,L),g=U):W("new/isolated scope",g,U,L)),$=$||U),I=U.name;const h=U.replace&&(U.templateUrl||U.template),d=U.transclude&&!Ye.includes(U.name);if(!Y&&(h||d)){let e;for(let n=s+1;e=t[n++];)if(e.transclude&&!Ye.includes(e.name)||e.replace&&(e.templateUrl||e.template)){tt=!0;break}Y=!0}if(!U.templateUrl&&U.controller&&(m=m||Object.create(null),W(`'${I}' controller`,m[I],U,L),m[I]=U),z=U.transclude,z)if(k=!0,Ye.includes(U.name)||(W("transclusion",b,U,L),b=U),"element"===z)S=!0,l=U.priority,B=L,L=new xe(document.createComment("")),n.$nodeRef=L,e=L.node,x.node=e,Z(new xe(B.getAny()),e,V),Q=R(tt,B.getAny(),i,l,K&&K.name,{nonTlbTranscludeDirective:b});else{const t=Object.create(null);if(w(z)){B=document.createDocumentFragment();const e=Object.create(null),n=Object.create(null);Object.entries(z).forEach((([r,i])=>{const s="?"===i.charAt(0);i=s?i.substring(1):i,e[i]=r,t[r]=null,n[r]=s})),L.element.childNodes.forEach((r=>{const i=e[$t(F(r))];i?(n[i]=!0,t[i]=t[i]||document.createDocumentFragment(),t[i].appendChild(r)):B.appendChild(r)})),Object.entries(n).forEach((([t,e])=>{if(!e)throw Qe("reqslot","Required transclusion slot `{0}` was not filled.",t)}));for(const e in t)if(t[e]){const n=t[e].childNodes;t[e]=R(tt,n,i)}B=B.childNodes}else B=e.cloneNode(!0).childNodes;Jt(e),Q=R(tt,B,i,void 0,void 0,{needsNewScope:U.$$isolateScope||U.$$newScope}),Q.$$slots=t}if(U.template)if(_=!0,W("template",v,U,L),v=U,z=O(U.template)?U.template(L.node,n):U.template,z=C(z),U.replace){if(K=U,B=Lt(z)?[]:nn(G(U.templateNamespace,N(z))),E(B)&&(B=Array.from(Yt(B)).filter((t=>t.nodeType===Node.ELEMENT_NODE))),e=B[0],1!==B.length||e.nodeType!==Node.ELEMENT_NODE)throw Qe("tplrt","Template for directive '{0}' must have exactly one root element. {1}",I,"");Z(L,e),A&&A.setIndex(V,e);const r={$attr:{}},i=T(e,r),o=t.splice(s+1,t.length-(s+1));(g||$)&&D(i,g,$),t=t.concat(i).concat(o),H(n,r),u=t.length}else L.isElement()&&(L.element.innerHTML=z);if(U.templateUrl)_=!0,W("template",v,U,L),v=U,U.replace&&(K=U),nt=q(t.splice(s,t.length-s),L,n,e,k&&Q,o,a,{index:V,controllerDirectives:m,newScopeDirective:$!==U&&$,newIsolateScopeDirective:g,templateDirective:v,nonTlbTranscludeDirective:b,futureParentElement:c.futureParentElement}),u=t.length;else if(U.compile)try{const t=U.compile(L.getAny(),n,Q),e=U.$$originalDirective||U;O(t)?rt(null,J(e,t)):t&&rt(J(e,t.pre),J(e,t.post))}catch(t){r(t,Bt(L.getAny()))}U.terminal&&(p=!0,l=Math.max(l,U.priority))}return c.hasElementTranscludeDirective=S,{nodeLinkFn:nt,terminal:p,transclude:Q,transcludeOnThisElement:k,templateOnThisElement:_,newScope:$&&!0===$.scope};function rt(t,e){t&&(t.require=U.require,t.directiveName=I,(g===U||U.$$isolateScope)&&(t=X(t,{isolateScope:!0})),o.push(t)),e&&(e.require=U.require,e.directiveName=I,(g===U||U.$$isolateScope)&&(e=X(e,{isolateScope:!0})),a.push(e))}}function P(t,e,n,r){let i;if(E(e)){const s=e.match(Ze),o=e.substring(s[0].length),a=s[1]||s[3],c="?"===s[2];if("^^"===a?n=n.parentElement?n.parentElement:void 0:(i=r&&r[o],i=i&&i.instance),!i){const t=`$${o}Controller`;i="^^"===a&&n&&n.nodeType===Node.DOCUMENT_NODE?null:n?a?Ft(n,t):Pt(n,t):void 0}if(!i&&!c)throw Qe("ctreq","Controller '{0}', required by directive '{1}', can't be found!",o,t)}else if(Array.isArray(e)){i=[];for(let s=0,o=e.length;s<o;s++)i[s]=P(t,e[s],n,r)}else w(e)&&(i={},Object.entries(e).forEach((([e,s])=>{i[e]=P(t,s,n,r)})));return i||null}function D(t,e,n){for(let r=0,i=t.length;r<i;r++)t[r]=U(t[r],{$$isolateScope:e,$$newScope:n})}function I(e,r,i,o){let a=!1;if(vt(n,r))for(let n,c=t.get(r+tn),l=0,u=c.length;l<u;l++)if(n=c[l],(y(o)||o>n.priority)&&-1!==n.restrict.indexOf(i)){if(!n.$$bindings){const t=n.$$bindings=s(n,n.name);w(t.isolateScope)&&(n.$$isolateBindings=t.isolateScope)}e.push(n),a=n}return a}function H(t,e){const n=e.$attr,r=t.$attr;Object.entries(t).forEach((([r,i])=>{"$"!==r.charAt(0)&&(e[r]&&e[r]!==i&&(i.length?i+=("style"===r?";":" ")+e[r]:i=e[r]),t.$set(r,i,!0,n[r]))})),Object.entries(e).forEach((([e,i])=>{vt(t,e)||"$"===e.charAt(0)||(t[e]=i,"class"!==e&&"style"!==e&&(r[e]=n[e]))}))}function q(t,e,n,s,o,a,c,l){let u,h,d,p=[];const f=e.getAny(),$=t.shift(),m=U($,{templateUrl:null,transclude:null,replace:null,$$originalDirective:$}),g=O($.templateUrl)?$.templateUrl(e.element,n):$.templateUrl,{templateNamespace:v}=$;return Jt(e.element),i(g).then((r=>{let i,y,b,S;if(r=C(r),$.replace){if(b=Lt(r)?[]:E(r)?Array.from(Yt(r)).filter((t=>t.nodeType!==Node.COMMENT_NODE&&t.nodeType!==Node.TEXT_NODE)):nn(G(v,N(r))),i=b[0],1!==b.length||i.nodeType!==Node.ELEMENT_NODE)throw Qe("tplrt","Template for directive '{0}' must have exactly one root element. {1}",$.name,g);y={$attr:{}},Z(e,i,l.index);const s=T(i,y);w($.scope)&&D(s,!0),t=s.concat(t),H(n,y)}else i=f,e.element.innerHTML=r;for(t.unshift(m),d=V(t,i,n,o,$,a,c,{...l,ctxNodeRef:e}),u=d?.nodeLinkFn,s&&Object.entries(s).forEach((([t,n])=>{n===i&&(s[t]=e)})),h=A(new xe(e.getAny().childNodes),o);p.length;){const t=p.shift(),n=p.shift(),r=p.shift();let s=e.getAny();if(!t.$$destroyed){if(n!==f){const t=n.className;l.hasElementTranscludeDirective&&$.replace||(s=i.cloneNode(!0),n.appendChild(s));try{""!==t&&e.element.classList.forEach((t=>n.classList.add(t)))}catch{}}S=d.transcludeOnThisElement?_(t,d.transclude,r):r,u(h,t,s,S)}}p=null})).catch((t=>{k(t)?r(t):r(new Error(t))})),function(t,e,n,r,i){let s=i;e.$$destroyed||(p?p.push(e,n,r):(u.transcludeOnThisElement&&(s=_(e,u.transclude,i)),u(h,e,n,r,s)))}}function B(t,e){const n=e.priority-t.priority;return 0!==n?n:t.name!==e.name?t.name<e.name?-1:1:t.index-e.index}function W(t,e,n,r){function i(t){return t?` (module: ${t})`:""}if(e)throw Qe("multidir","Multiple directives [{0}{1}, {2}{3}] asking for {4} on: {5}",e.name,i(e.$$moduleName),n.name,i(n.$$moduleName),t,Bt(r.getAny()))}function G(t,e){switch(t=(t||"html").toLowerCase()){case"svg":case"math":{const n=document.createElement("div");return n.innerHTML=`<${t}>${e}</${t}>`,n.childNodes[0].childNodes}default:return e}}function Q(t,e,n,r){if(Xe.test(r))throw Qe("nodomevents","Property bindings for HTML DOM event properties are disallowed");const i=F(t),s=function(t,e){const n=e.toLowerCase();return a[`${t}|${n}`]||a[`*|${n}`]}(i,r);let o=t=>t;"srcset"!==r||"img"!==i&&"source"!==i?s&&(o=d.getTrusted.bind(d,s)):o=t=>function(t,e){if(!t)return t;if(!E(t))throw Qe("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',e,t.toString());let n="";const r=N(t),i=/\s/.test(r)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,s=r.split(i),o=Math.floor(s.length/2);let a;for(a=0;a<o;a++){const t=2*a;n+=d.getTrustedMediaUrl(N(s[t])),n+=" "+N(s[t+1])}const c=N(s[2*a]).split(/\s/);return n+=d.getTrustedMediaUrl(N(c[0])),2===c.length&&(n+=" "+N(c[1])),n}(d.valueOf(t),"ng-prop-srcset"),e.push({priority:100,compile:function(t,e){const i=c(e[n]);return{pre:function(t,s){function a(){const e=i(t);s[r]=o(e)}a(),t.$watch(r,a),t.$watch(e[n],(t=>{d.valueOf(t),a()}))}}}})}function Y(t,n,r,i,s){const o=F(t),a=function(t,e){return"srcdoc"===e?d.HTML:"src"===e||"ngSrc"===e?-1===["img","video","audio","source","track"].indexOf(t)?d.RESOURCE_URL:d.MEDIA_URL:"xlinkHref"===e?"image"===t?d.MEDIA_URL:"a"===t?d.URL:d.RESOURCE_URL:"form"===t&&"action"===e||"base"===t&&"href"===e||"link"===t&&"href"===e?d.RESOURCE_URL:"a"!==t||"href"!==e&&"ngHref"!==e?void 0:d.URL}(o,i),c=!s,l=Je.includes(i)||s;let u=e(r,c,a,l);if(u){if("multiple"===i&&"select"===o)throw Qe("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",Bt(t.outerHTML));if(Xe.test(i))throw Qe("nodomevents","Interpolations for HTML DOM event attributes are disallowed");n.push({priority:100,compile:()=>({pre:function(t,n,s){const o=s.$$observers||(s.$$observers=Object.create(null)),c=s[i];c!==r&&(u=c&&e(c,!0,a,l),r=c),u&&(s[i]=u(t),(o[i]||(o[i]=[])).$$inter=!0,u.expressions.forEach((e=>{(s.$$observers&&s.$$observers[i].$$scope||t).$watch(e,(()=>{let e=u(t);"class"===i?s.$updateClass(e,s.$$element.classList.value):s.$set(i,e)}))})),0==u.expressions.length&&s.$set(i,c))}})})}}function Z(t,e,n){const r=t.getAny().parentNode;if(r)if(b(n)){const t=r.childNodes[n];t&&r.replaceChild(e,t)}else r.insertBefore(e,r.firstChild);const i=document.createDocumentFragment();t.collection().forEach((t=>{i.appendChild(t)})),t.node=e}function X(t,e){return M((function(){return t.apply(null,arguments)}),t,e)}function tt(t,e){if(o)throw Qe("missingattr","Attribute '{0}' of '{1}' is non-optional and must be set!",t,e)}function et(t,n,r,i,s){const o=[],a={};let l;function u(e,n,i){O(r.$onChanges)&&($||(t.$postUpdate(m),$=[]),l||(l={},$.push(h)),l[e]={currentValue:n,firstChange:i})}function h(){r.$onChanges&&l&&r.$onChanges(l),l=void 0}return i&&Object.entries(i).forEach((([i,l])=>{const{attrName:d,optional:p,mode:f}=l;let $,m,g,v,C,S=!0,x=!0;switch(f){case"@":p||vt(n,d)||(tt(d,s.name),r[i]=n[d]=void 0),C=n.$observe(d,(t=>{(E(t)||L(t))&&(u(i,t,x),r[i]=t,S?S=!1:(h(),x=!1))})),n.$$observers[d].$$scope=t,$=n[d],E($)?r[i]=e($)(t):L($)&&(r[i]=$),a[i]={currentValue:r[i],firstChange:!0},o.push(C);break;case"=":{if(!vt(n,d)){if(p)break;tt(d,s.name),n[d]=void 0}if(p&&!n[d])break;m=c(n[d]),v=m.literal?K:z,g=m.assign||function(){throw $=r.$target[i]=m(t),Qe("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",n[d],d,s.name)},$=r.$target[i]=m(t.$target);const e=function(e){return v(e,r[i])||(v(e,$)?g(t,e=r[i]):r[i]=e),$=e,$};if(e.$stateful=!0,l.collection)C=t.$watch(n[d],e);else{if(n[d]){let r=n[d];t.$watch(r,(r=>{const i=c(n[d],e);r?(m.literal?t.$target[d]=r:t[d]=r,i(t)):t[d]=t[n[d]]}),!0)}C=r.$watch(d,(e=>{if(e!==$||y(n[d])){if(m.inputs&&!m.literal||y(n[d])&&b(e))throw r.$target[d]=$,Qe("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",n[d],d,s.name);w(e)?Object.entries(e).forEach((([e,n])=>{t.$target[e]=n})):(g(t.$target,$=e),t.$handler.watchers.get(n[d])?.forEach((t=>{t.listenerFn(e)})))}}),!0)}o.push(C);break}case"<":if(!vt(n,d)){if(p)break;tt(d,s.name),n[d]=void 0}if(p&&!n[d])break;m=c(n[d]),r.$target[i]=m(t.$target),a[i]={currentValue:r.$target[i],firstChange:x},t.$target.attrs=n,n[d]&&(C=t.$watch(n[d],(t=>{r.$target[i]=t,u(i,t,x),x&&(x=!1)}),!0),o.push(C));break;case"&":if(p||vt(n,d)||tt(d,s.name),m=vt(n,d)?c(n[d]):()=>{},m.toString()===(()=>{}).toString()&&p)break;r.$target[i]=function(e){return m(t.$target,e)}}})),{initialChanges:a,removeWatches:o.length&&function(){for(let t=0,e=o.length;t<e;++t)o[t]()}}}}]}}function nn(t){let e=t.length;if(e<=1)return t;for(;e--;){const n=t[e];(n.nodeType===Node.COMMENT_NODE||n.nodeType===Node.TEXT_NODE&&""===n.nodeValue.trim())&&[].splice.call(t,e,1)}return t}const rn={$nonscope:!0,$addControl:()=>{},$getControls:()=>[],$$renameControl:(t,e)=>{t.$name=e},$removeControl:()=>{},$setValidity:()=>{},$setDirty:()=>{},$setPristine:()=>{},$setSubmitted:()=>{},$$setSubmitted:()=>{}},sn="ng-pending",on="ng-submitted";class an{static $nonscope=!0;static $inject=["$element","$attrs","$scope","$animate","$interpolate"];constructor(t,r,i,s,o){this.$$controls=[],this.$name=o(r.name||r.ngForm||"")(i),this.$dirty=!1,this.$pristine=!0,this.$valid=!0,this.$invalid=!1,this.$submitted=!1,this.$$parentForm=rn,this.$$element=t,this.$$animate=s,this.$error={},this.$$success={},this.$pending=void 0,this.$$classCache={};const a=this.$$element.classList.contains(e);this.$$classCache[e]=a,this.$$classCache[n]=!a}$rollbackViewValue(){this.$$controls.forEach((t=>{t.$rollbackViewValue()}))}$commitViewValue(){this.$$controls.forEach((t=>{t.$commitViewValue()}))}$addControl(t){W(t.$name,"input"),this.$$controls.push(t),t.$name&&(this[t.$name]=t),t.$target.$$parentForm=this}$getControls(){return ot(this.$$controls)}$$renameControl(t,e){const n=t.$name;this[n]===t&&delete this[n],this[e]=t,t.$name=e}$removeControl(t){t.$name&&this[t.$name]===t&&delete this[t.$name],this.$pending&&Object.keys(this.$pending).forEach((e=>{this.$setValidity(e,null,t)})),this.$error&&Object.keys(this.$error).forEach((e=>{this.$setValidity(e,null,t)})),this.$$success&&Object.keys(this.$$success).forEach((e=>{this.$setValidity(e,null,t)})),B(this.$$controls,t),t.$target.$$parentForm=rn}$setDirty(){this.$$animate.removeClass(this.$$element,r),this.$$animate.addClass(this.$$element,i),this.$dirty=!0,this.$pristine=!1,this.$$parentForm.$setDirty()}$setPristine(){this.$$animate.setClass(this.$$element,r,`${i} ${on}`),this.$dirty=!1,this.$pristine=!0,this.$submitted=!1,this.$$controls.forEach((t=>{t.$setPristine()}))}$setUntouched(){this.$$controls.forEach((t=>{t.$setUntouched()}))}$setSubmitted(){let t=this;for(;t.$$parentForm&&t.$$parentForm!==rn;)t=t.$$parentForm;t.$$setSubmitted()}$$setSubmitted(){this.$$animate.addClass(this.$$element,on),this.$submitted=!0,this.$$controls.forEach((t=>{t.$$setSubmitted&&t.$$setSubmitted()}))}set(t,e,n){const r=t[e];if(r){-1===r.indexOf(n)&&r.push(n)}else p(t)&&(t=t.$target),t[e]=[n]}unset(t,e,n){const r=t[e];if(!r)return;-1===B(r,n)&&B(r,n.$target),0===r.length&&delete t[e]}$setValidity(t,r,i){let s,o=this;function a(t,e,n){n&&!t.$$classCache[e]?(t.$$animate.addClass(t.$$element,e),t.$$classCache[e]=!0):!n&&t.$$classCache[e]&&(t.$$animate.removeClass(t.$$element,e),t.$$classCache[e]=!1)}function c(t,r,i){r=r?`-${V(r,"-")}`:"",a(t,e+r,!0===i),a(t,n+r,!1===i)}y(r)?function(t,e,n,r){t[e]||(t[e]={});o.set(t[e],n,r)}(this,"$pending",t,i):function(t,e,n,r){t[e]&&o.unset(t[e],n,r);gt(t[e])&&(t[e]=void 0)}(this,"$pending",t,i),L(r)?r?(this.unset(this.$error,t,i),this.set(this.$$success,t,i)):(this.set(this.$error,t,i),this.unset(this.$$success,t,i)):(this.unset(this.$error,t,i),this.unset(this.$$success,t,i)),this.$pending?(a(this,sn,!0),this.$valid=this.$invalid=void 0,c(this,"",null)):(a(this,sn,!1),this.$valid=gt(this.$error),this.$invalid=!this.$valid,c(this,"",this.$valid)),s=this.$pending&&this.$pending[t]?void 0:!this.$error[t]&&(!!this.$$success[t]||null),c(this,t,s),this.$$parentForm.$setValidity(t,s,this)}}const cn=function(t){return["$parse",function(n){return{name:"form",restrict:t?"EA":"E",require:["form","^^?form"],controller:an,compile:function(i,s){i.classList.add(r,e);const o=s.name?"name":!(!t||!s.ngForm)&&"ngForm";return{pre:function(t,e,r,i){const s=i[0];if(!("action"in r)){const t=function(t){s.$commitViewValue(),s.$setSubmitted(),t.preventDefault()};e.addEventListener("submit",t),e.addEventListener("$destroy",(()=>{setTimeout((()=>{e.removeEventListener("submit",t)}),0,!1)}))}(i[1]||s.$$parentForm).$addControl(s);let a=o?function(t){if(""===t)return n('this[""]').assign;return n(t).assign||(()=>{})}(s.$name):()=>{};o&&(a(t,s),r.$observe(o,(e=>{s.$name!==e&&(t.$target[s.$name]=void 0,s.$$parentForm.$$renameControl(s,e),t.$target!==s.$$parentForm&&s.$$parentForm!==rn||(t.$target[e]=s))}))),e.addEventListener("$destroy",(()=>{s.$target.$$parentForm.$removeControl(s),a(t,void 0),M(s,rn)}))}}}}}]},ln=cn(),un=cn("ngForm"),hn=/(\s+|^)default(\s+|$)/;class dn{static $nonscope=!0;static $inject=["$attrs","$scope"];constructor(t,e){this.$$attrs=t,this.$$scope=e,this.parentCtrl}$onInit(){const t=this.parentCtrl?this.parentCtrl.$options:fn,e=this.$$scope.$eval(this.$$attrs.ngModelOptions);this.$options=t.createChild(e)}}class pn{static $nonscope=!0;constructor(t){this.$$options=t}getOption(t){return this.$$options[t]}createChild(t){let e=!1;return t=Object.assign({},t),Object.entries(t).forEach((([n,r])=>{"$inherit"===r?"*"===n?e=!0:(t[n]=this.$$options[n],"updateOn"===n&&(t.updateOnDefault=this.$$options.updateOnDefault)):"updateOn"===n&&(t.updateOnDefault=!1,t[n]=N(r.replace(hn,(()=>(t.updateOnDefault=!0," ")))))}),this),e&&(delete t["*"],mn(t,this.$$options)),mn(t,fn.$$options),new pn(t)}}const fn=new pn({updateOn:"",updateOnDefault:!0,debounce:0,getterSetter:!1,allowInvalid:!1}),$n=function(){return{restrict:"A",priority:10,require:{parentCtrl:"?^^ngModelOptions"},bindToController:!0,controller:dn}};function mn(t,e){Object.keys(e).forEach((n=>{b(t[n])||(t[n]=e[n])}))}const gn=dt("ngModel");class vn{static $nonscope=!0;static $inject=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$interpolate"];constructor(t,r,i,s,o,a,c){this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$$rawModelValue=void 0,this.$validators={},this.$asyncValidators={},this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$untouched=!0,this.$touched=!1,this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$error={},this.$$success={},this.$pending=void 0,this.$name=c(i.name||"",!1)(t),this.$$parentForm=rn,this.$options=fn,this.$$updateEvents="",this.$$updateEventHandler=this.$$updateEventHandler.bind(this),this.$$parsedNgModel=o(i.ngModel),this.$$parsedNgModelAssign=this.$$parsedNgModel.assign,this.$$ngModelGet=this.$$parsedNgModel,this.$$ngModelSet=this.$$parsedNgModelAssign,this.$$pendingDebounce=null,this.$$parserValid=void 0,this.$$parserName="parse",this.$$currentValidationRunId=0,this.$$scope=t,this.$$attr=i,this.$$element=s,this.$$animate=a,this.$$parse=o,this.$$exceptionHandler=r,this.$$hasNativeValidators=!1,this.$$classCache={};const l=this.$$element.classList.contains(e);var u;this.$$classCache[e]=l,this.$$classCache[n]=!l,this.$$eventRemovers=new Set,(u=this).$$scope.$watch("value",(()=>{const t=u.$$ngModelGet(u.$$scope);t===u.$modelValue||u.$modelValue!=u.$modelValue&&t!=t||u.$$setModelValue(t)}))}set(t,e){t[e]=!0}unset(t,e){delete t[e]}$setValidity(t,r){let i,s=this;function o(t,e,n){n&&!t.$$classCache[e]?(mt(t.$$element)?t.$$animate.addClass(t.$$element,e):t.$$element.classList.add(e),t.$$classCache[e]=!0):!n&&t.$$classCache[e]&&(mt(t.$$element)?t.$$animate.removeClass(t.$$element,e):t.$$element.classList.remove(e),t.$$classCache[e]=!1)}function a(t,r,i){r=r?`-${V(r,"-")}`:"",o(t,e+r,!0===i),o(t,n+r,!1===i)}y(r)?function(t,e,n){t[e]||(t[e]={}),s.set(t[e],n)}(this,"$pending",t):function(t,e,n){t[e]&&s.unset(t[e],n),gt(t[e])&&(t[e]=void 0)}(this,"$pending",t),L(r)?r?(delete this.$error[t],this.set(this.$$success,t)):(this.set(this.$error,t),delete this.$$success[t]):(delete this.$error[t],delete this.$$success[t]),this.$pending?(o(this,sn,!0),this.$valid=this.$invalid=void 0,a(this,"",null)):(o(this,sn,!1),this.$valid=gt(this.$error),this.$invalid=!this.$valid,a(this,"",this.$valid)),i=this.$pending&&this.$pending[t]?void 0:!this.$error[t]&&(!!this.$$success[t]||null),a(this,t,i),this.$$parentForm.$setValidity(t,i,this)}$$initGetterSetters(){if(this.$options.getOption("getterSetter")){const t=this.$$parse(`${this.$$attr.ngModel}()`),e=this.$$parse(`${this.$$attr.ngModel}($$$p)`);this.$$ngModelGet=e=>{let n=this.$$parsedNgModel(e);return O(n)&&(n=t(e)),n},this.$$ngModelSet=(t,n)=>{O(this.$$parsedNgModel(t))?e(t,{$$$p:n}):this.$$parsedNgModelAssign(t,n)}}else if(!this.$$parsedNgModel.assign)throw gn("nonassign","Expression '{0}' is non-assignable. Element: {1}",this.$$attr.ngModel,Bt(this.$$element))}$render(){}$isEmpty(t){return y(t)||""===t||null===t||t!=t}$$updateEmptyClasses(t){this.$isEmpty(t)?mt(this.$$element)?(this.$$animate.removeClass(this.$$element,c),this.$$animate.addClass(this.$$element,a)):(this.$$element.classList.remove(c),this.$$element.classList.add(a)):mt(this.$$element)?(this.$$animate.removeClass(this.$$element,a),this.$$animate.addClass(this.$$element,c)):(this.$$element.classList.remove(a),this.$$element.classList.add(c))}$setPristine(){this.$dirty=!1,this.$pristine=!0,this.$$element&&(mt(this.$$element)?(this.$$animate.removeClass(this.$$element,a),this.$$animate.addClass(this.$$element,r)):(this.$$element.classList.remove(a),this.$$element.classList.add(r)))}$setDirty(){this.$dirty=!0,this.$pristine=!1,mt(this.$$element)?(this.$$animate.removeClass(this.$$element,r),this.$$animate.addClass(this.$$element,i)):(this.$$element.classList.remove(r),this.$$element.classList.add(i)),this.$$parentForm.$setDirty()}$setUntouched(){this.$touched=!1,this.$untouched=!0,mt(this.$$element)?this.$$animate.setClass(this.$$element,s,o):(this.$$element.classList.remove(o),this.$$element.classList.add(s))}$setTouched(){this.$touched=!0,this.$untouched=!1,mt(this.$$element)?this.$$animate.setClass(this.$$element,o,s):(this.$$element.classList.remove(s),this.$$element.classList.add(o))}$rollbackViewValue(){clearTimeout(this.$$pendingDebounce),this.$viewValue=this.$$lastCommittedViewValue,this.$render()}$validate(){if(D(this.$modelValue))return;const t=this.$$lastCommittedViewValue,e=this.$$rawModelValue,n=this.$valid,r=this.$modelValue,i=this.$options.getOption("allowInvalid"),s=this;this.$$runValidators(e,t,(t=>{i||n===t||(s.$modelValue=t?e:void 0,s.$modelValue!==r&&s.$$writeModelToScope())}))}$$runValidators(t,e,n){this.$$currentValidationRunId++;const r=this.$$currentValidationRunId,i=this;function s(t,e){r===i.$$currentValidationRunId&&i.$setValidity(t,e)}function o(t){r===i.$$currentValidationRunId&&n(t)}!function(){const t=i.$$parserName;if(!y(i.$$parserValid))return i.$$parserValid||(Object.keys(i.$validators).forEach((t=>{s(t,null)})),Object.keys(i.$asyncValidators).forEach((t=>{s(t,null)}))),s(t,i.$$parserValid),i.$$parserValid;s(t,null);return!0}()?o(!1):function(){let n=!0;if(Object.entries(i.$validators).forEach((([r,i])=>{const o=Boolean(i(t,e));n=n&&o,s(r,o)})),!n)return Object.keys(i.$asyncValidators).forEach((t=>{s(t,null)})),!1;return!0}()?function(){const n=[];let r=!0;Object.entries(i.$asyncValidators).forEach((([i,o])=>{const a=o(t,e);if(!R(a))throw gn("nopromise","Expected asynchronous validator to return a promise but got '{0}' instead.",a);s(i,void 0),n.push(a.then((()=>{s(i,!0)}),(()=>{r=!1,s(i,!1)})))})),n.length?Promise.all(n).then((()=>{o(r)}),(()=>{})):o(!0)}():o(!1)}$commitViewValue(){clearTimeout(this.$$pendingDebounce),(this.$$lastCommittedViewValue!==this.$viewValue||""===this.$viewValue&&this.$$hasNativeValidators)&&(void 0===this.$$lastCommittedViewValue&&Number.isNaN(this.$viewValue)||(this.$$updateEmptyClasses(this.$viewValue),this.$$lastCommittedViewValue=this.$viewValue,this.$pristine&&this.$setDirty(),this.$$parseAndValidate()))}$$parseAndValidate(){let t=this.$$lastCommittedViewValue;const e=this;if(this.$$parserValid=!y(t)||void 0,this.$setValidity(this.$$parserName,null),this.$$parserName="parse",this.$$parserValid)for(let e=0;e<this.$parsers.length;e++)if(t=this.$parsers[e](t),y(t)){this.$$parserValid=!1;break}D(this.$modelValue)&&(this.$modelValue=this.$$ngModelGet(this.$$scope));const n=this.$modelValue,r=this.$options.getOption("allowInvalid");function i(){e.$modelValue!=n&&e.$$writeModelToScope()}this.$$rawModelValue=t,r&&(this.$modelValue=t,i()),this.$$runValidators(t,this.$$lastCommittedViewValue,(n=>{r||(e.$modelValue=n?t:void 0,i())}))}$$writeModelToScope(){this.$$ngModelSet(this.$$scope,this.$modelValue),Object.values(this.$viewChangeListeners).forEach((t=>{try{t()}catch(t){this.$$exceptionHandler(t)}}),this)}$setViewValue(t,e){this.$viewValue=t,this.$options?.getOption("updateOnDefault")&&this.$$debounceViewValueCommit(e)}$$debounceViewValueCommit(t){let e=this.$options.getOption("debounce");x(e[t])?e=e[t]:x(e.default)&&-1===this.$options.getOption("updateOn").indexOf(t)?e=e.default:x(e["*"])&&(e=e["*"]),clearTimeout(this.$$pendingDebounce);const n=this;e>0?this.$$pendingDebounce=setTimeout((()=>{n.$commitViewValue()}),e):this.$commitViewValue()}$overrideModelOptions(t){this.$$removeAllEventListeners(),this.$options=this.$options.createChild(t),this.$$updateEvents=this.$options.$$options.updateOn,this.$$setUpdateOnEvents()}$processModelValue(){const t=this.$$format();this.$viewValue!==t&&(this.$$updateEmptyClasses(t),this.$viewValue=this.$$lastCommittedViewValue=t,this.$render(),this.$$runValidators(this.$modelValue,this.$viewValue,(()=>{})))}$$format(){const t=this.$formatters;let e=t.length,n=this.$modelValue;for(;e--;)n=t[e](n);return n}$$setModelValue(t){this.$modelValue=this.$$rawModelValue=t,this.$$parserValid=void 0,this.$processModelValue()}$$removeAllEventListeners(){this.$$eventRemovers.forEach((t=>t())),this.$$eventRemovers.clear()}$$setUpdateOnEvents(){this.$$updateEvents&&this.$$updateEvents.split(" ").forEach((t=>{this.$$element.addEventListener(t,this.$$updateEventHandler),this.$$eventRemovers.add((()=>this.$$element.removeEventListener(t,this.$$updateEventHandler)))})),this.$$updateEvents=this.$options.getOption("updateOn"),this.$$updateEvents&&this.$$updateEvents.split(" ").forEach((t=>{this.$$element.addEventListener(t,this.$$updateEventHandler),this.$$eventRemovers.add((()=>this.$$element.removeEventListener(t,this.$$updateEventHandler)))}))}$$updateEventHandler(t){this.$$debounceViewValueCommit(t&&t.type)}}function yn(){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:vn,priority:1,compile:t=>(t.classList.add(r,s,e),{pre:(t,e,n,r)=>{const i=r[0],s=r[1]||i.$$parentForm,o=r[2];o&&(i.$options=o.$options),i.$$initGetterSetters(),s.$addControl(i),n.$observe("name",(t=>{i.$name!==t&&i.$$parentForm.$$renameControl(i,t)}));let a=t.$watch(n.ngModel,(t=>{i.$$setModelValue(p(t)?t.$target:t)}));t.$on("$destroy",(()=>{i.$$parentForm.$removeControl(i),a()}))},post:(t,e,n,r)=>{const i=r[0];i.$$setUpdateOnEvents(),e.addEventListener("blur",(()=>{i.$touched||i.$setTouched()})),i.$viewChangeListeners.push((()=>t.$eval(e.dataset.change)))}})}}const bn=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,wn=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,En=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,Cn=/^\s*([-+])?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Sn=/^(\d{4,})-(\d{2})-(\d{2})$/,xn=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,An=/^(\d{4,})-W(\d\d)$/,kn=/^(\d{4,})-(\d\d)$/,On=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,_n="validity",Tn=new Map;"date,datetime-local,month,time,week".split(",").forEach((t=>{Tn.set(t,!0)}));const jn={text:function(t,e,n,r){Rn(t,e,n,r),Ln(r)},date:Mn("date",Sn,Nn(Sn,["yyyy","MM","dd"])),"datetime-local":Mn("datetimelocal",xn,Nn(xn,["yyyy","MM","dd","HH","mm","ss","sss"])),time:Mn("time",On,Nn(On,["HH","mm","ss","sss"])),week:Mn("week",An,(function(t,e){if(A(t))return t;if(E(t)){An.lastIndex=0;const n=An.exec(t);if(n){const t=+n[1],r=+n[2];let i=0,s=0,o=0,a=0;const c=function(t){const e=new Date(t,0,1).getDay();return new Date(t,0,(e<=4?5:12)-e)}(t),l=7*(r-1);return e&&(i=e.getHours(),s=e.getMinutes(),o=e.getSeconds(),a=e.getMilliseconds()),new Date(t,0,c.getDate()+l,i,s,o,a)}}return NaN})),month:Mn("month",kn,Nn(kn,["yyyy","MM"])),number:function(t,e,n,r,i,s,o){let a;if(Pn(t,e,n,r,"number"),Dn(r),Rn(t,e,n,r),b(n.min)||n.ngMin){let e=n.min||o(n.ngMin)(t);a=Un(e),r.$validators.min=function(t,e){return r.$isEmpty(e)||y(a)||e>=a},n.$observe("min",(t=>{t!==e&&(a=Un(t),e=t,r.$validate())}))}if(b(n.max)||n.ngMax){let e=n.max||o(n.ngMax)(t),i=Un(e);r.$validators.max=function(t,e){return r.$isEmpty(e)||y(i)||e<=i},n.$observe("max",(t=>{t!==e&&(i=Un(t),e=t,r.$validate())}))}if(b(n.step)||n.ngStep){let e=n.step||o(n.ngStep)(t),i=Un(e);r.$validators.step=function(t,e){return r.$isEmpty(e)||y(i)||Fn(e,a||0,i)},n.$observe("step",(t=>{t!==e&&(i=Un(t),e=t,r.$validate())}))}},url:function(t,e,n,r){Rn(t,e,n,r),Ln(r),r.$validators.url=function(t,e){const n=t||e;return r.$isEmpty(n)||wn.test(n)}},email:function(t,e,n,r){Rn(t,e,n,r),Ln(r),r.$validators.email=function(t,e){const n=t||e;return r.$isEmpty(n)||En.test(n)}},radio:function(t,e,n,r){const i=!n.ngTrim||"false"!==N(n.ngTrim);y(n.name)&&e.setAttribute("name",m());e.addEventListener("change",(function(t){let s;e.checked&&(s=n.value,i&&(s=N(s)),r.$setViewValue(s,t&&t.type))})),r.$render=function(){let{value:t}=n;i&&(t=N(t));const s=p(r.$viewValue)?r.$viewValue.$target:r.$viewValue;e.checked=(p(t)?t.$target:t)===(p(s)?s.$target:s)},n.$observe("value",r.$render)},range:function(t,e,n,r){Pn(t,e,n,r,"range"),Dn(r),Rn(t,e,n,r);const i=r.$$hasNativeValidators&&"range"===e.type;let s=i?0:void 0,o=i?100:void 0,a=i?1:void 0;const{validity:c}=e,l=b(n.min),u=b(n.max),h=b(n.step),d=r.$render;r.$render=i&&b(c.rangeUnderflow)&&b(c.rangeOverflow)?function(){d(),r.$setViewValue(e.value)}:d,l&&(s=Un(n.min),r.$validators.min=i?function(){return!0}:function(t,e){return r.$isEmpty(e)||y(s)||e>=s},p("min",(function(t){if(s=Un(t),D(r.$modelValue))return;if(i){let t=e.value;s>t&&(t=s,e.value=t),r.$setViewValue(t)}else r.$validate()})));u&&(o=Un(n.max),r.$validators.max=i?function(){return!0}:function(t,e){return r.$isEmpty(e)||y(o)||e<=o},p("max",(function(t){if(o=Un(t),D(r.$modelValue))return;if(i){let t=e.value;o<t&&(e.value=o,t=o<s?s:o),r.$setViewValue(t)}else r.$validate()})));h&&(a=Un(n.step),r.$validators.step=i?function(){return!c.stepMismatch}:function(t,e){return r.$isEmpty(e)||y(a)||Fn(e,s||0,a)},p("step",(function(t){if(a=Un(t),D(r.$modelValue))return;i?r.$viewValue!==e.value&&r.$setViewValue(e.value):r.$validate()})));function p(t,r){e.setAttribute(t,n[t]);let i=n[t];n.$observe(t,(t=>{t!==i&&(i=t,r(t))}))}},checkbox:function(t,e,n,r,i,s,o){const a=qn(o,t,"ngTrueValue",n.ngTrueValue,!0),c=qn(o,t,"ngFalseValue",n.ngFalseValue,!1);e.addEventListener("change",(function(t){r.$setViewValue(e.checked,t&&t.type)})),r.$render=function(){e.checked=r.$viewValue},r.$isEmpty=function(t){return!1===t},r.$formatters.push((t=>K(t,a))),r.$parsers.push((t=>t?a:c))},hidden:()=>{},button:()=>{},submit:()=>{},reset:()=>{},file:()=>{}};function Ln(t){t.$formatters.push((e=>t.$isEmpty(e)?e:e.toString()))}function Rn(t,e,n,r){const i=e.type.toLowerCase();let s,o=!1;e.addEventListener("compositionstart",(()=>{o=!0})),e.addEventListener("compositionend",(()=>{o=!1,a()}));let a=function(t){if(s&&(clearTimeout(s),s=null),o)return;let a=e.value;const c=t&&t.type;"password"===i||n.ngTrim&&"false"===n.ngTrim||(a=N(a)),(r.$viewValue!==a||""===a&&r.$$hasNativeValidators)&&r.$target.$setViewValue(a,c)};["input","change","paste","drop","cut"].forEach((t=>{e.addEventListener(t,a)})),Tn[i]&&r.$$hasNativeValidators&&i===n.type&&e.addEventListener("keydown wheel mousedown",(function(t){if(!s){const e=this[_n],n=e.badInput,r=e.typeMismatch;s=setTimeout((()=>{s=null,e.badInput===n&&e.typeMismatch===r||a(t)}))}})),r.$render=function(){const t=r.$isEmpty(r.$viewValue)?"":r.$viewValue;e.value!==t&&(e.value=t)}}function Nn(t,e){return function(n,r){let i,s;if(A(n))return n;if(E(n)){if('"'===n.charAt(0)&&'"'===n.charAt(n.length-1)&&(n=n.substring(1,n.length-1)),bn.test(n))return new Date(n);if(t.lastIndex=0,i=t.exec(n),i){i.shift(),s=r?{yyyy:r.getFullYear(),MM:r.getMonth()+1,dd:r.getDate(),HH:r.getHours(),mm:r.getMinutes(),ss:r.getSeconds(),sss:r.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},Object.entries(i).forEach((([t,n])=>{t<e.length&&(s[e[t]]=+n)}));const t=new Date(s.yyyy,s.MM-1,s.dd,s.HH,s.mm,s.ss||0,1e3*s.sss||0);return s.yyyy<100&&t.setFullYear(s.yyyy),t}}return NaN}}const Vn=/\b\d{4}-(0[1-9]|1[0-2])\b/;function Mn(t,e,n){return function(r,i,s,o,a,c,l){if(Pn(r,i,s,o,t),Rn(0,i,s,o),o.$parsers.push((n=>o.$isEmpty(n)?null:e.test(n)?["month","week","datetimelocal","time","date"].includes(t)?n:d(n,undefined):void(o.$$parserName=t))),o.$formatters.push((function(e){if(e&&!E(e))throw gn("datefmt","Expected `{0}` to be a String",e);if("month"===t){if(null==e)return"";if(!Vn.test(e))throw gn("datefmt","Expected month `{0}` to be a 'YYYY-DD'",e)}if("week"===t){if(null==e)return"";if(!An.test(e))throw gn("datefmt","Expected week `{0}` to be a 'yyyy-Www'",e)}if("datetimelocal"===t){if(null==e)return"";if(!xn.test(e))throw gn("datefmt","Expected week `{0}` to be a in date time format. See: https://developer.mozilla.org/en-US/docs/Web/HTML/Date_and_time_formats#local_date_and_time_strings",e)}return e})),b(s.min)||s.ngMin){let e=s.min||l(s.ngMin)(r),i=h(p(e)?e.$target:e);o.$validators.min=function(e){return"month"===t?y(i)||n(e)>=n(i):!u(e)||y(i)||n(e)>=i},s.$observe("min",(t=>{t!==e&&(i=h(t),e=t,o.$validate())}))}if(b(s.max)||s.ngMax){let e=s.max||l(s.ngMax)(r),i=h(p(e)?e.$target:e);o.$validators.max=function(e){return"month"===t?y(i)||n(e)<=n(i):!u(e)||y(i)||n(e)<=i},s.$observe("max",(t=>{t!==e&&(i=h(t),e=t,o.$validate())}))}function u(t){return t&&!(t.getTime&&t.getTime()!=t.getTime())}function h(t){return b(t)&&!A(t)?d(t)||void 0:t}function d(t,e){const r=o.$options.getOption("timezone");let i=n(t,e);return!Number.isNaN(i)&&r&&(i=tt(i,r)),i}}}function Pn(t,e,n,r,i){const s=e;(r.$$hasNativeValidators=w(s.validity))&&r.$parsers.push((t=>{const n=e[_n]||{};if(!n.badInput&&!n.typeMismatch)return t;r.$$parserName=i}))}function Dn(t){t.$parsers.push((e=>t.$isEmpty(e)?null:Cn.test(e)?parseFloat(e):void(t.$$parserName="number"))),t.$formatters.push((e=>{if(!t.$isEmpty(e)){if(!x(e))throw gn("numfmt","Expected `{0}` to be a number",e);e=e.toString()}return e}))}function Un(t){return b(t)&&!x(t)&&(t=parseFloat(t)),D(t)?void 0:t}function In(t){return(0|t)===t}function Hn(t){const e=t.toString(),n=e.indexOf(".");if(-1===n){if(t>-1&&t<1){const t=/e-(\d+)$/.exec(e);if(t)return Number(t[1])}return 0}return e.length-n-1}function Fn(t,e,n){let r=Number(t);const i=!In(r),s=!In(e),o=!In(n);if(i||s||o){const t=i?Hn(r):0,a=s?Hn(e):0,c=o?Hn(n):0,l=10**Math.max(t,a,c);r*=l,e*=l,n*=l,i&&(r=Math.round(r)),s&&(e=Math.round(e)),o&&(n=Math.round(n))}return(r-e)%n===0}function qn(t,e,n,r,i){let s;if(b(r)){if(s=t(r),!s.constant)throw gn("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",n,r);return s(e)}return i}function Bn(t,e,n){return{restrict:"E",require:["?ngModel"],link:{pre(r,i,s,o){o[0]&&(jn[g(s.type)]||jn.text)(r,i,s,o[0],t,e,n)}}}}function zn(){const t={configurable:!0,enumerable:!1,get(){return this.getAttribute("value")||""},set(t){this.setAttribute("value",t)}};return{restrict:"E",priority:200,compile(e,n){if("hidden"===g(n.type))return{pre(e,n){const r=n;r.parentNode&&r.parentNode.insertBefore(r,r.nextSibling),Object.defineProperty&&Object.defineProperty(r,"value",t)}}}}}Bn.$inject=["$browser","$filter","$parse"];const Kn=/^(true|false|\d+)$/;function Wn(){function t(t,e,n){const r=b(n)?p(n)?n.$target:n:null;t.value=r,e.$set("value",n)}return{restrict:"A",priority:100,compile:(e,n)=>Kn.test(n.ngValue)?function(e,n,r){t(n,r,e.$eval(r.ngValue))}:function(e,n,r){e.$watch(r.ngValue,(e=>{t(n,r,e)}))}}}function Gn(t){return{restrict:"E",terminal:!0,compile(e,n){"text/ng-template"===n.type&&t.set(n.id,e.innerText)}}}Gn.$inject=["$templateCache"];class Qn{static $nonscope=["ngModelCtrl","selectValueMap","emptyOption","optionsMap","$scope","$element"];static $inject=["$element","$scope"];constructor(t,e){this.$element=t,this.$scope=e,this.selectValueMap={},this.ngModelCtrl={},this.multiple=!1,this.unknownOption=document.createElement("option"),this.hasEmptyOption=!1,this.emptyOption=void 0,this.optionsMap=new Map,this.renderScheduled=!1,this.updateScheduled=!1,e.$on("$destroy",(()=>{this.renderUnknownOption=()=>{}}))}renderUnknownOption(t){const e=this.generateUnknownOptionValue(t);this.unknownOption.value=e,this.$element.prepend(this.unknownOption),this.unknownOption.selected=!0,this.unknownOption.setAttribute("selected","selected"),this.$element.value=e}updateUnknownOption(t){const e=this.generateUnknownOptionValue(t);this.unknownOption.value=e,this.unknownOption.selected=!0,this.unknownOption.setAttribute("selected","selected"),this.$element.value=e}generateUnknownOptionValue(t){return y(t)?"? undefined:undefined ?":`? ${pt(t)} ?`}removeUnknownOption(){this.unknownOption.parentElement&&this.unknownOption.remove()}selectEmptyOption(){this.emptyOption&&(this.$element.value="",this.emptyOption.selected=!0,this.emptyOption.setAttribute("selected","selected"))}unselectEmptyOption(){this.hasEmptyOption&&(this.emptyOption.selected=!1)}readValue(){const t=this.$element.value,e=t in this.selectValueMap?this.selectValueMap[t]:t;return this.hasOption(e)?e:null}writeValue(t){const e=this.$element.options[this.$element.selectedIndex];if(e&&(e.selected=!1),this.hasOption(t)){this.removeUnknownOption();const e=pt(t);this.$element.value=e in this.selectValueMap?e:t;const n=this.$element.options[this.$element.selectedIndex];n?n.selected=!0:this.selectUnknownOrEmptyOption(t)}else this.selectUnknownOrEmptyOption(t)}addOption(t,e){if(e.nodeType===Node.COMMENT_NODE)return;W(t,'"option value"'),""===t&&(this.hasEmptyOption=!0,this.emptyOption=e);const n=this.optionsMap.get(t)||0;this.optionsMap.set(t,n+1),this.scheduleRender()}removeOption(t){const e=this.optionsMap.get(t);e&&(1===e?(this.optionsMap.delete(t),""===t&&(this.hasEmptyOption=!1,this.emptyOption=void 0)):this.optionsMap.set(t,e-1))}hasOption(t){return!!this.optionsMap.get(t)}$hasEmptyOption(){return this.hasEmptyOption}$isUnknownOptionSelected(){return this.$element.options[0]===this.unknownOption}$isEmptyOptionSelected(){return this.hasEmptyOption&&this.$element.options[this.$element.selectedIndex]===this.emptyOption}selectUnknownOrEmptyOption(t){null==t&&this.emptyOption?(this.removeUnknownOption(),this.selectEmptyOption()):this.unknownOption.parentElement?this.updateUnknownOption(t):this.renderUnknownOption(t)}scheduleRender(){this.renderScheduled||(this.renderScheduled=!0,this.$scope.$postUpdate((()=>{this.renderScheduled=!1,this.ngModelCtrl.$render()})))}scheduleViewValueUpdate(t=!1){this.updateScheduled||(this.updateScheduled=!0,this.$scope.$postUpdate((()=>{this.$scope.$$destroyed||(this.updateScheduled=!1,this.ngModelCtrl.$setViewValue(this.readValue()),t&&this.ngModelCtrl.$render())})))}registerOption(t,e,n,r,i){let s,o;if(n.$attr.ngValue)n.$observe("value",(t=>{let n;const r=e.selected;b(o)&&(this.removeOption(s),delete this.selectValueMap[o],n=!0),o=pt(t),s=t,this.selectValueMap[o]=t,this.addOption(t,e),e.setAttribute("value",o),n&&r&&this.scheduleViewValueUpdate()}));else if(r)n.$observe("value",(t=>{let n;this.readValue();const r=e.selected;b(s)&&(this.removeOption(s),n=!0),s=t,this.addOption(t,e),n&&r&&this.scheduleViewValueUpdate()}));else if(i){let r;t.value=i(t),n.value||(n.$set("value",t.value),this.addOption(t.value,e)),t.$watch("value",(()=>{let s=i(t);n.value||n.$set("value",s);const o=e.selected;r!==s&&(this.removeOption(r),r=s),this.addOption(s,e),r&&o&&this.scheduleViewValueUpdate()}))}else this.addOption(n.value,e);n.$observe("disabled",(t=>{("true"===t||t&&e.selected)&&(this.multiple?this.scheduleViewValueUpdate(!0):(this.ngModelCtrl.$setViewValue(null),this.ngModelCtrl.$render()))})),e.addEventListener("$destroy",(()=>{const t=this.readValue(),e=n.value;this.removeOption(e),this.scheduleRender(),(this.multiple&&t&&-1!==t.indexOf(e)||t===e)&&this.scheduleViewValueUpdate(!0)}))}}function Yn(){return{restrict:"E",require:["select","?ngModel"],controller:Qn,priority:1,link:{pre:function(t,e,n,r){const i=r[0],s=r[1];if(!s)return void(i.registerOption=()=>{});if(i.ngModelCtrl=s,e.addEventListener("change",(()=>{i.removeUnknownOption();const t=i.readValue();s.$setViewValue(t)})),n.multiple){let t;i.multiple=!0,i.readValue=function(){const t=[],n=e.getElementsByTagName("option");return Array.from(n).forEach((e=>{if(e.selected&&!e.disabled){const n=e.value;t.push(n in i.selectValueMap?i.selectValueMap[n]:n)}})),t},i.writeValue=function(t){const n=e.getElementsByTagName("option");Array.from(n).forEach((e=>{const n=!!t&&(q(t,e.value)||q(t,i.selectValueMap[e.value]));n!==e.selected&&(e.selected=n)}))};let n=NaN;n!==s.$viewValue||K(t,s.$viewValue)||(t=ot(s.$viewValue),s.$render()),n=s.$viewValue,s.$isEmpty=function(t){return!t||0===t.length}}},post:function(t,e,n,r){const i=r[1];if(!i)return;const s=r[0];i.$render=function(){s.writeValue(i.$viewValue)}}}}}function Jn(t){return{restrict:"E",priority:100,compile(e,n){let r,i;return b(n.ngValue)||(b(n.value)?r=t(n.value,!0):(i=t(e.textContent,!0),i||n.$set("value",e.textContent))),function(t,e,n){const s="$selectController",o=e.parentElement,a=Pt(o,s)||Pt(o.parentElement,s);a&&a.registerOption(t,e,n,r,i)}}}}function Zn(){return{link(t,e,n){t.$watch(n.ngBind,(t=>{e.textContent=G(p(t)?t.$target:t)}),b(n.lazy))}}}function Xn(){return{link(t,e,n){n.$observe("ngBindTemplate",(t=>{e.textContent=y(t)?"":t}))}}}function tr(t){return{restrict:"A",compile:(e,n)=>(t(n.ngBindHtml),(t,e)=>{t.$watch(n.ngBindHtml,(t=>{(y(t)||C(t))&&(t=""),e.innerHTML=t}))})}}function er(t,e){return t=`ngClass${t}`,function(){return{link(n,r,i){let s,o=Pt(r,"$classCounts"),a=!0;function c(t,e){const n=[];return t&&t.forEach((t=>{(e>0||o[t])&&(o[t]=(o[t]||0)+e,o[t]===+(e>0)&&n.push(t))})),n.join(" ")}o||(o=Object.create(null),Mt(r,"$classCounts",o)),"ngClass"!==t&&n.$watch("$index",(()=>{!function(t){t===e?(o=c(rr(o=s),1),mt(r)?i.$addClass(o):n.$postUpdate((()=>{""!==o&&r.classList.add(...o.trim().split(" "))}))):function(t){t=c(rr(t),-1),mt(r)?i.$removeClass(t):n.$postUpdate((()=>{""!==t&&r.classList.remove(...t.trim().split(" "))}))}(s);var o;a=t}(1&n.$index)})),n.$watch(i[t],(t=>{!function(t){a===e&&function(t,e){const n=rr(t),s=rr(e),o=nr(n,s),a=nr(s,n),l=c(o,-1),u=c(a,1);mt(r)?(i.$addClass(u),i.$removeClass(l)):(""!==u&&r.classList.add(...u.trim().split(" ")),""!==l&&r.classList.remove(...l.trim().split(" ")))}(s,t);s=t}(ir(t))}))}}}}function nr(t,e){if(!t||!t.length)return[];if(!e||!e.length)return t;const n=[];t:for(let r=0;r<t.length;r++){const i=t[r];for(let t=0;t<e.length;t++)if(i===e[t])continue t;n.push(i)}return n}function rr(t){return t&&t.split(" ")}function ir(t){if(!t)return t;let e=t;return Array.isArray(t)?e=t.map(ir).join(" "):w(t)?e=Object.keys(t).filter((e=>t[e])).join(" "):E(t)||(e=`${t}`),e}Jn.$inject=["$interpolate"],tr.$inject=[Xt.$parse];const sr=er("",!0),or=er("Odd",0),ar=er("Even",1);function cr(){return{compile(t,e){e.$set("ngCloak",void 0),t.classList.remove("ng-cloak")}}}function lr(){return{restrict:"A",scope:!0,controller:"@",priority:500}}const ur="ng-hide",hr="ng-hide-animate";function dr(t){return{restrict:"A",link(e,n,r){e.$watch(r.ngShow,(e=>{mt(n)?t[e?"removeClass":"addClass"](n,ur,{tempClasses:hr}):e?n.classList.remove(ur):n.classList.add(ur)}))}}}function pr(t){return{restrict:"A",link(e,n,r){e.$watch(r.ngHide,(e=>{mt(n)?t[e?"addClass":"removeClass"](n,ur,{tempClasses:hr}):e?n.classList.add(ur):n.classList.remove(ur)}))}}}function fr(t){return{transclude:"element",priority:600,terminal:!0,restrict:"A",link(e,n,r,i,s){let o,a,c;e.$watch(r.ngIf,(e=>{e?a||s(((e,r)=>{a=r,o=e,mt(e)?t.enter(e,n.parentElement,n):n.after(e)})):(c&&(qt(c),c=null),a&&(a.$destroy(),a=null),o&&(c=o,mt(c)?t.leave(c).done((t=>{!1!==t&&(c=null)})):n.nextElementSibling.remove(),o=null))}))}}}function $r(t,e,n,r){return{priority:400,terminal:!0,transclude:"element",controller:()=>{},compile(i,s){const o=s.ngInclude||s.src,a=s.onload||"",c=s.autoscroll;return(i,s,l,u,h)=>{function d(){!b(c)||c&&!i.$eval(c)||e()}let p,f,$,m=0;const g=()=>{f&&(f.remove(),f=null),p&&(p.$destroy(),p=null),$&&(mt($)?n.leave($).done((t=>{!1!==t&&(f=null)})):$.remove(),f=$,$=null)};i.$watch(o,(async e=>{const o=function(t){!1!==t&&d()},c=++m;e?(await t(e,!0).then((t=>{if(i.$$destroyed)return;if(c!==m)return;const r=i.$new();u.template=t;const l=h(r,(t=>{g(),mt(t)?n.enter(t,null,s).done(o):(s.after(t),d())}));p=r,$=l,p.$emit("$includeContentLoaded",e),i.$eval(a)}),(t=>{i.$$destroyed||(c===m&&(g(),i.$emit("$includeContentError",e)),r(new Error(t)))})),i.$emit("$includeContentRequested",e)):(g(),u.template=null)}))}}}}function mr(t){return{priority:-400,require:"ngInclude",link(e,n,r,i){n.innerHTML=i.template,t(n.childNodes)(e)}}}function gr(){return{priority:450,compile:()=>({pre(t,e,n){const r=Ht(e);r?r.$eval(n.ngInit):t.$eval(n.ngInit)}})}}function vr(){return{terminal:!0,priority:1e3}}dr.$inject=["$animate"],pr.$inject=["$animate"],fr.$inject=["$animate"],$r.$inject=[Xt.$templateRequest,Xt.$anchorScroll,Xt.$animate,Xt.$exceptionHandler],mr.$inject=["$compile"];const yr=dt("ngRef");function br(t){return{priority:-1,restrict:"A",compile(e,n){const r=$t(F(e)),i=t(n.ngRef),s=i.assign||function(){throw yr("nonassign",'Expression in ngRef="{0}" is non-assignable!',n.ngRef)};return(t,e,o)=>{let a;if(vt(o,"ngRefRead")){if("$element"===o.ngRefRead)a=e;else if(a=Pt(e,`$${o.ngRefRead}Controller`),!a)throw yr("noctrl",'The controller for ngRefRead="{0}" could not be found on ngRef="{1}"',o.ngRefRead,n.ngRef)}else a=Pt(e,`$${r}Controller`);a=a||e,s(t,a),e.addEventListener("$destroy",(()=>{i(t)===a&&s(t,null)}))}}}}br.$inject=["$parse"];const wr="$$NG_REMOVED",Er=dt("ngRepeat"),Cr=/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/;function Sr(t){function e(t,e,n,r,i,s,o){t[n]!==r&&(t[n]=r),i&&(t[i]=s),r&&(t.$target.$$hashKey=r.$$hashKey),t.$index=e,t.$first=0===e,t.$last=e===o-1,t.$middle=!(t.$first||t.$last),t.$odd=!(t.$even=!(1&e))}function n(t){return t.clone}function r(t){return t.clone}function i(t,e,n){return pt(n)}function s(t,e){return e}return{restrict:"A",transclude:"element",priority:1e3,terminal:!0,compile:(o,a)=>{const c=a.ngRepeat,l=!!a.animate;let u=c.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);if(!u)throw Er("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",c);const h=u[1],d=u[2],p=u[3];if(u=h.match(Cr),!u)throw Er("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",h);const f=u[3]||u[1],$=u[2];if(p&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(p)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(p)))throw Er("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",p);const m=function(t){let e=!1;return function(...n){if(!e)return e=!0,t.apply(this,n)}}((()=>{b(a.lazy)&&b(a.swap)&&document.querySelectorAll(a.swap).forEach((t=>qt(t)))}));return function(o,a,u,h,g){let y=Object.create(null);o.$watch(d,(u=>{m();let h,d,b,w=a;const E=Object.create(null);let C,S,x,A,k,O,_,T,j;if(p&&(o[p]=u),v(u))O=u,k=i;else{k=s,O=[];for(const t in u)vt(u,t)&&"$"!==t.charAt(0)&&O.push(t)}for(C=O.length,T=new Array(C),h=0;h<C;h++)if(S=u===O?h:O[h],x=u[S],A=k(o,S,x),y[A])_=y[A],delete y[A],E[A]=_,T[h]=_;else{if(E[A])throw Object.values(T).forEach((t=>{t&&t.scope&&(y[t.id]=t)})),Er("dupes","Duplicates keys in a repeater are not allowed. Repeater: {0}, Duplicate key: {1} for value: {2}",c,A,x);T[h]={id:A,scope:void 0,clone:void 0},E[A]=!0}for(let e in y){if(_=y[e],j=_.clone,l?t.leave(j):j.remove(),j.parentNode)for(h=0,d=j.length;h<d;h++)j[h][wr]=!0;_.scope.$destroy()}for(h=0;h<C;h++)if(S=u===O?h:O[h],x=u[S],_=T[h],_.scope){b=w;do{b=b.nextSibling}while(b&&b[wr]);n(_)!==b&&t.move(zt(_.clone),null,w),w=r(_),e(_.scope,h,f,x,$,S,C)}else g(((n,r)=>{_.scope=r;const i=n;l?t.enter(n,null,w):w.after(n),w=i,_.clone=n,E[_.id]=_,e(_.scope,h,f,x,$,S,C)}));y=E}),b(u.lazy))}}}}function xr(){return{restrict:"A",link(t,e,n){let r;t.$watch(n.ngStyle,(t=>{if(r){const t=Object.keys(r);for(let n=0,r=t.length;n<r;n++)e.style.removeProperty(t[n])}if(t){r={...t.$target};const n=Object.entries(t);for(let t=0,r=n.length;t<r;t++){const[r,i]=n[t];e.style.setProperty(r,i)}}}))}}}function Ar(t){return{require:"ngSwitch",controller:["$scope",class{constructor(){this.cases={}}}],link(e,n,r,i){const s=r.ngSwitch||r.on;let o=[];const a=[],c=[],l=[],u=function(t,e){return function(n){!1!==n&&t.splice(e,1)}};e.$watch(s,(e=>{let n,r;for(;c.length;)t.cancel(c.pop());for(n=0,r=l.length;n<r;++n){const e=zt(a[n].clone);if(l[n].$destroy(),mt(e)){(c[n]=t.leave(e)).done(u(c,n))}else e.remove()}a.length=0,l.length=0,(o=i.cases[`!${e}`]||i.cases["?"])&&Object.values(o).forEach((e=>{e.transclude(((n,r)=>{l.push(r);const i=e.element,s={clone:n,comment:document.createComment("")};a.push(s),mt(n)?t.enter(n,i.parentElement,i):Zt(n,i.parentElement,i)}))}))}))}}}function kr(){return{transclude:"element",terminal:!0,priority:1200,require:"^ngSwitch",link(t,e,n,r,i){const s=n.ngSwitchWhen.split(n.ngSwitchWhenSeparator).sort().filter(((t,e,n)=>n[e-1]!==t));s.forEach((t=>{r.cases[`!${t}`]=r.cases[`!${t}`]||[],r.cases[`!${t}`].push({transclude:i,element:e})}))}}}function Or(){return{transclude:"element",terminal:!0,priority:1200,require:"^ngSwitch",link(t,e,n,r,i){r.cases["?"]=r.cases["?"]||[],r.cases["?"].push({transclude:i,element:e})}}}Sr.$inject=[Xt.$animate],Ar.$inject=["$animate"];const _r=dt("ngOptions"),Tr=document.createElement("option"),jr=document.createElement("optgroup"),Lr=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([$\w][$\w]*)|(?:\(\s*([$\w][$\w]*)\s*,\s*([$\w][$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,Rr=["$compile","$parse",function(t,e){return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(t,e,n,r){r[0].registerOption=()=>{}},post:function(n,r,i,s){const o=s[0],a=s[1],c=i.multiple;for(let t=0,e=r.childNodes,n=e.length;t<n;t++)if(""===e[t].value){o.hasEmptyOption=!0,o.emptyOption=e[t];break}Jt(r);const l=!!o.emptyOption;let u;Tr.cloneNode(!1).nodeValue="?";const h=function(t,n,r){const i=t.match(Lr);if(!i)throw _r("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",t,Bt(n));const s=i[5]||i[7],o=i[6],a=/ as /.test(i[0])&&i[1],c=i[9],l=e(i[2]?i[1]:s),u=a&&e(a)||l,h=c&&e(c),d=c?function(t,e){return h(r,e)}:function(t){return pt(t)},p=function(t,e){return d(t,b(t,e))},f=e(i[2]||i[1]),$=e(i[3]||""),m=e(i[4]||""),g=e(i[8]),y={};let b=o?function(t,e){return y[o]=e,y[s]=t,y}:function(t){return y[s]=t,y};class w{constructor(t,e,n,r,i){this.selectValue=t,this.viewValue=e,this.label=n,this.group=r,this.disabled=i}}function E(t){let e;if(!o&&v(t))e=t;else{e=[];for(const n in t)vt(t,n)&&"$"!==n.charAt(0)&&e.push(n)}return e}return{trackBy:c,getTrackByValue:p,getWatchables:e(g,(t=>{const e=[],n=E(t=t||[]),s=n.length;for(let o=0;o<s;o++){const s=t===n?o:n[o],a=t[s],c=b(a,s),l=d(a,c);if(e.push(l),i[2]||i[1]){const t=f(r,c);e.push(t)}if(i[4]){const t=m(r,c);e.push(t)}}return e})),getOptions(){const t=[],e={},n=g(r)||[],i=E(n),s=i.length;for(let o=0;o<s;o++){const s=n===i?o:i[o],a=n[s],c=b(a,s),l=u(r,c),h=d(l,c),p=f(r,c),g=$(r,c),v=m(r,c),y=new w(h,l,p,g,v);t.push(y),e[h]=y}return{items:t,selectValueMap:e,getOptionFromViewValue:t=>e[p(t)],getViewValueFromOption:t=>c?structuredClone(t.viewValue):t.viewValue}}}}(i.ngOptions,r,n),d=document.createDocumentFragment();if(o.generateUnknownOptionValue=()=>"?",c?(o.writeValue=function(t){if(!u)return;const e=t&&t.map(f)||[];u.items.forEach((t=>{t.element.selected&&!q(e,t)&&(t.element.selected=!1)}))},o.readValue=function(){const t=r.value||[],e=[];return t.forEach((t=>{const n=u.selectValueMap[t];n&&!n.disabled&&e.push(u.getViewValueFromOption(n))})),e}):(o.writeValue=function(t){if(!u)return;const e=r.options[r.selectedIndex],n=u.getOptionFromViewValue(t);e&&e.removeAttribute("selected"),n?(r.value!==n.selectValue&&(o.removeUnknownOption(),r.value=n.selectValue,n.element.selected=!0),n.element.setAttribute("selected","selected")):o.selectUnknownOrEmptyOption(t)},o.readValue=function(){const t=u.selectValueMap[r.value];return t&&!t.disabled?(o.unselectEmptyOption(),o.removeUnknownOption(),u.getViewValueFromOption(t)):null},h.trackBy&&n.$watch(h.getTrackByValue(a.$viewValue),(()=>{a.$render()}))),l){const e=t(o.emptyOption);ct(e,"LinkFn required"),r.prepend(o.emptyOption),e(n),o.emptyOption.nodeType===Node.COMMENT_NODE&&(o.hasEmptyOption=!1,o.registerOption=function(t,e){""===e.value&&(o.hasEmptyOption=!0,o.emptyOption=e,a.$render(),e.addEventListener("$destroy",(()=>{const t=o.$isEmptyOptionSelected();o.hasEmptyOption=!1,o.emptyOption=void 0,t&&a.$render()})))})}function p(t,e){const n=Tr.cloneNode(!1);e.appendChild(n),function(t,e){t.element=e,e.disabled=t.disabled,t.label!==e.label&&(e.label=t.label,e.textContent=t.label);e.value=t.selectValue}(t,n)}function f(t){const e=u.getOptionFromViewValue(t),n=e&&e.element;return n&&!n.selected&&(n.selected=!0),e}n.$watch(h.getWatchables.decoratedNode.body[0].expression.name,(function(){const t=u&&o.readValue();if(u)for(let t=u.items.length-1;t>=0;t--){const e=u.items[t];b(e.group)?qt(e.element.parentNode):qt(e.element)}u=h.getOptions();const e={};if(u.items.forEach((t=>{let n;b(t.group)?(n=e[t.group],n||(n=jr.cloneNode(!1),d.appendChild(n),n.label=null===t.group?"null":t.group,e[t.group]=n),p(t,n)):p(t,d)})),r.appendChild(d),a.$render(),!a.$isEmpty(t)){const e=o.readValue();(h.trackBy||c?K(t,e):t===e)||(a.$setViewValue(e),a.$render())}}))}}}}],Nr=dt("ngTransclude"),Vr=["$compile",function(t){return{compile:function(e){const n=t(e.childNodes);return Jt(e),function(t,e,r,i,s){if(!s)throw Nr("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",Bt(e));r.ngTransclude===r.$attr.ngTransclude&&(r.ngTransclude="");const o=r.ngTransclude||r.ngTranscludeSlot;function a(){n(t,(t=>{e.append(t)}))}s((function(t,n){!function(t){if(t instanceof Array)return!1;if(t.nodeType!==Node.TEXT_NODE||t.nodeValue.trim())return!0}(t)?(a(),n.$destroy()):t instanceof NodeList?Array.from(t).forEach((t=>{e.append(t)})):e.append(t)}),null,o),o&&!s.isSlotFilled(o)&&a()}}}}],Mr=/^\/(.+)\/([a-z]*)$/,Pr={};xt.forEach((t=>{if("multiple"===t)return;function e(e,r,i){e.$watch(i[n],(e=>{i.$set(t,!!e)}))}let n=$t(`ng-${t}`),r=e;"checked"===t&&(r=function(t,r,i){i.ngModel!==i[n]&&e(t,0,i)}),Pr[n]=function(){return{restrict:"A",priority:100,link:r}}})),Object.entries(h).forEach((([t])=>{Pr[t]=function(){return{priority:100,link(e,n,r){if("ngPattern"===t&&"/"===r.ngPattern.charAt(0)){const t=r.ngPattern.match(Mr);if(t)return void r.$set("ngPattern",new RegExp(t[1],t[2]))}e.$watch(r[t],(e=>{r.$set(t,e)}))}}}})),["src","srcset","href"].forEach((t=>{const e=$t(`ng-${t}`);Pr[e]=[Xt.$sce,function(n){return{priority:99,link(r,i,s){let o=t;"href"===t&&"[object SVGAnimatedString]"===toString.call(i.href)&&(o="xlinkHref",s.$attr[o]="href"),s.$set(e,n.getTrustedMediaUrl(s[e])),s.$observe(e,(e=>{e?s.$set(o,e):"href"===t&&s.$set(o,null)}))}}}]}));const Dr=["$parse",t=>({restrict:"A",require:"?ngModel",link:(e,n,r,i)=>{if(!i)return;let s=vt(r,"required")||t(r.ngRequired)(e);r.ngRequired||(r.required=!0),i.$validators.required=(t,e)=>!s||!i.$isEmpty(e),r.$observe("required",(t=>{s!==t&&(s=t,i.$validate())}))}})],Ur=["$parse",t=>({restrict:"A",require:"?ngModel",compile:(e,n)=>{let r,i;return n.ngPattern&&(r=n.ngPattern,i="/"===n.ngPattern.charAt(0)&&Mr.test(n.ngPattern)?function(){return n.ngPattern}:t(n.ngPattern)),function(t,e,n,s){if(!s)return;let o=n.pattern;n.ngPattern?o=i(t):r=n.pattern;let a=Fr(o,r,e);n.$observe("pattern",(function(t){const n=a;a=Fr(t,r,e),(n&&n.toString())!==(a&&a.toString())&&s.$validate()})),s.$validators.pattern=function(t,e){return s.$isEmpty(e)||y(a)||a.test(e)}}}})],Ir=["$parse",t=>({restrict:"A",require:"?ngModel",link:(e,n,r,i)=>{if(!i)return;let s=r.maxlength||t(r.ngMaxlength)(e),o=qr(s);r.$observe("maxlength",(t=>{s!==t&&(o=qr(t),s=t,i.$validate())})),i.$validators.maxlength=function(t,e){return o<0||i.$isEmpty(e)||e.length<=o}}})],Hr=["$parse",function(t){return{restrict:"A",require:"?ngModel",link(e,n,r,i){if(!i)return;let s=r.minlength||t(r.ngMinlength)(e),o=qr(s)||-1;r.$observe("minlength",(t=>{s!==t&&(o=qr(t)||-1,s=t,i.$validate())})),i.$validators.minlength=function(t,e){return i.$isEmpty(e)||e.length>=o}}}}];function Fr(t,e,n){if(t){if(p(t)&&(t=t.$target),E(t)&&(t=new RegExp(`^${t}$`)),!t.test)throw dt("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",e,t,Bt(n));return t}}function qr(t){const e=P(t);return D(e)?-1:e}class Br{constructor(){this.autoScrollingEnabled=!0}$get=["$location","$rootScope",function(t,e){function n(t){if(t){t.scrollIntoView();const e=function(){let t=r.yOffset;if(O(t))t=t();else if(H(t)){const e=t[0];t="fixed"!==window.getComputedStyle(e).position?0:e.getBoundingClientRect().bottom}else x(t)||(t=0);return t}();if(e){const n=t.getBoundingClientRect().top;window.scrollBy(0,n-e)}}else window.scrollTo(0,0)}const r=function(e){let r;(e=E(e)?e:x(e)?e.toString():t.hash())?(r=document.getElementById(e))||(r=function(t){let e=null;return Array.prototype.some.call(t,(t=>{if("a"===F(t))return e=t,!0})),e}(document.getElementsByName(e)))?n(r):"top"===e&&n(null):n(null)};return this.autoScrollingEnabled&&(e.$location=t,e.$watch("$location.$$hash",((t,e)=>{if(t===e&&""===t)return;const n=()=>Promise.resolve().then(r);"complete"===document.readyState?window.setTimeout((()=>n())):window.addEventListener("load",(()=>n()))}))),r}]}const zr=1,Kr=2,Wr=3,Gr=4,Qr=5,Yr=6,Jr=7,Zr=8,Xr=9,ti=10,ei=11,ni=12,ri=13,ii=14,si=15,oi=16,ai=17,ci="-add",li="-remove",ui="-active",hi="ng-animate",di="$$ngAnimateChildren";let pi,fi,$i,mi;void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend?(pi="WebkitTransition",fi="webkitTransitionEnd transitionend"):(pi="transition",fi="transitionend"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend?($i="WebkitAnimation",mi="webkitAnimationEnd animationend"):($i="animation",mi="animationend");const gi="Duration",vi=ri,yi="Delay",bi="TimingFunction",wi=$i+yi,Ei=$i+gi,Ci=pi+yi,Si=pi+gi,xi=dt("ng");function Ai(t,e,n){if(!t)throw xi("areq","Argument '{0}' is {1}",e||"?",n);return t}function ki(t,e,n){let r="";return(t=Array.isArray(t)?t:t&&E(t)&&t.length?t.split(/\s+/):[]).forEach(((t,i)=>{t&&t.length>0&&(r+=i>0?" ":"",r+=n?e+t:t+e)})),r}function Oi(t){if(!t)return t;for(let e=0;e<t.length;e++){const n=t[e];if(n.nodeType===Node.ELEMENT_NODE)return n}}function _i(t){if(!(t=t||{}).$$prepared){let e=t.domOperation||(()=>{});t.domOperation=function(){t.$$domOperationFired=!0,e(),e=()=>{}},t.$$prepared=!0}return t}function Ti(t,e){ji(t,e),Li(t,e)}function ji(t,e){e.from&&(e.from=null)}function Li(t,e){e.to&&(e.to=null)}function Ri(t,e,n){const r=e.options||{},i=n.options||{},s=`${r.addClass||""} ${i.addClass||""}`,o=`${r.removeClass||""} ${i.removeClass||""}`,a=function(t,e,n){const r=1,i=-1,s={};t=a(t),e=a(e),Object.keys(e).forEach((t=>{s[t]=r})),n=a(n),Object.keys(n).forEach((t=>{s[t]=s[t]===r?null:i}));const o={addClass:"",removeClass:""};function a(t){E(t)&&(t=t.trim().split(" "));const e={};return t&&t.forEach((t=>{t.length&&(e[t]=!0)})),e}return Object.entries(s).forEach((([e,n])=>{let s,a;n===r?(s="addClass",a=!t[e]||t[e+li]):n===i&&(s="removeClass",a=t[e]||t[e+ci]),a&&(o[s].length&&(o[s]+=" "),o[s]+=e)})),o}(t.getAttribute("class"),s,o);return i.preparationClasses&&(r.preparationClasses=Mi(i.preparationClasses,r.preparationClasses),delete i.preparationClasses),M(r,i),a.addClass?r.addClass=a.addClass:r.addClass=null,a.removeClass?r.removeClass=a.removeClass:r.removeClass=null,e.addClass=r.addClass,e.removeClass=r.removeClass,r}function Ni(t,e){const n=e?"paused":"",r=$i+"PlayState";return Vi(t,[r,n]),[r,n]}function Vi(t,e){const n=e[0],r=e[1];t.style[n]=r}function Mi(t,e){return t?e?`${t} ${e}`:t:e}const Pi=dt("$animate");function Di(t,e){return t||e?t?e?(Array.isArray(t)&&(t=t.join(" ")),Array.isArray(e)&&(e=e.join(" ")),`${t} ${e}`):t:e:""}function Ui(t){return w(t)?t:{}}function Ii(t){const e=this;let n=null,r=null;this.$$registeredAnimations=Object.create(null),this.register=function(n,r){if(n&&"."!==n.charAt(0))throw Pi("notcsel","Expecting class selector starting with '.' got '{0}'.",n);const i=`${n}-animation`;e.$$registeredAnimations[n.substring(1)]=i,t.factory(i,r)},this.customFilter=function(t){return 1===arguments.length&&(r=O(t)?t:null),r},this.classNameFilter=function(t){if(1===arguments.length&&(n=t instanceof RegExp?t:null,n)){if(new RegExp(`[(\\s|\\/)]${hi}[(\\s|\\/)]`).test(n.toString()))throw n=null,Pi("nongcls",'$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.',hi)}return n},this.$get=["$$animateQueue",function(t){return{on:t.on,off:t.off,pin:t.pin,enabled:t.enabled,cancel(t){t.cancel&&t.cancel()},enter:(e,n,r,i)=>(Zt(e,n=n||r.parentElement,r),t.push(e,"enter",Ui(i))),move:(e,n,r,i)=>(Zt(e,n=n||r.parentElement,r),t.push(e,"move",Ui(i))),leave:(e,n)=>t.push(e,"leave",Ui(n),(()=>{Array.isArray(e)?e.forEach((t=>qt(t))):qt(e)})),addClass:(e,n,r)=>((r=Ui(r)).addClass=Di(r.addClass,n),t.push(e,"addClass",r)),removeClass:(e,n,r)=>((r=Ui(r)).removeClass=Di(r.removeClass,n),t.push(e,"removeClass",r)),setClass:(e,n,r,i)=>((i=Ui(i)).addClass=Di(i.addClass,n),i.removeClass=Di(i.removeClass,r),t.push(e,"setClass",i)),animate:(e,n,r,i,s)=>((s=Ui(s)).from=s.from?M(s.from,n):n,s.to=s.to?M(s.to,r):r,i=i||"ng-inline-animate",s.tempClasses=Di(s.tempClasses,i),t.push(e,"animate",s))}}]}function Hi(t){return t.replace(/#$/,"")}Ii.$inject=["$provide"];class Fi{constructor(t){this.taskTracker=t,this.pendingDeferIds={},this.urlChangeListeners=[],this.urlChangeInit=!1,this.cachedState=null,this.lastHistoryState=null,this.lastBrowserUrl=window.location.href,this.baseElement=document.querySelector("base"),this.$$completeOutstandingRequest=this.taskTracker.completeTask.bind(t),this.$$incOutstandingRequestCount=this.taskTracker.incTaskCount.bind(t),this.notifyWhenNoOutstandingRequests=this.taskTracker.notifyWhenNoPendingTasks.bind(t),this.cacheState()}url(t,e){return void 0===e&&(e=null),t?(t=Re(t).href,this.lastBrowserUrl===t&&this.lastHistoryState===e||(this.lastBrowserUrl=t,this.lastHistoryState=e,history.pushState(e,"",t),this.cacheState()),this):Hi(window.location.href)}state(){return this.cachedState}cacheStateAndFireUrlChange(){this.fireStateOrUrlChange()}cacheState(){const t=history.state??null;K(t,this.lastCachedState)||(this.cachedState=t,this.lastCachedState=t,this.lastHistoryState=t)}fireStateOrUrlChange(){const t=this.lastHistoryState;this.cacheState(),this.lastBrowserUrl===this.url()&&t===this.cachedState||(this.lastBrowserUrl=this.url(),this.lastHistoryState=this.cachedState,this.urlChangeListeners.forEach((t=>{t(Hi(window.location.href),this.cachedState)})))}onUrlChange(t){return this.urlChangeInit||(window.addEventListener("popstate",this.cacheStateAndFireUrlChange.bind(this)),window.addEventListener("hashchange",this.cacheStateAndFireUrlChange.bind(this)),this.urlChangeInit=!0),this.urlChangeListeners.push(t),t}$$applicationDestroyed(){window.removeEventListener("popstate",this.cacheStateAndFireUrlChange.bind(this)),window.removeEventListener("hashchange",this.cacheStateAndFireUrlChange.bind(this))}$$checkUrlChange(){this.fireStateOrUrlChange()}baseHref(){const t=this.baseElement?.getAttribute("href");return t?t.replace(/^(https?:)?\/\/[^/]*/,""):""}}class qi{$get=["$$taskTrackerFactory",t=>new Fi(t)]}function Bi(){this.$get=[function(){let t=[];function e(e){t.push(e),t.length>1||window.requestAnimationFrame((function(){for(let e=0;e<t.length;e++)t[e]();t=[]}))}return function(){let t=!1;return e((function(){t=!0})),function(n){t?n():e(n)}}}]}let zi;function Ki(){this.$get=["$$animateAsyncRun",function(t){return zi=t,Wi}]}class Wi{static chain(t,e){let n=0;!function r(){n!==t.length?t[n]((t=>{!1!==t?(n++,r()):e(!1)})):e(!0)}()}static all(t,e){let n=0,r=!0;function i(i){r=r&&i,++n===t.length&&e(r)}t.forEach((t=>{t.done(i)}))}constructor(t){this.setHost(t);const e=zi();this._doneCallbacks=[],this._tick=t=>{document.hidden?(t=>{setTimeout(t,0,!1)})(t):e(t)},this._state=0}setHost(t){this.host=t||{}}done(t){2===this._state?t():this._doneCallbacks.push(t)}progress(){}getPromise(){if(!this.promise){const t=this;this.promise=new Promise(((e,n)=>{t.done((t=>{!1===t?n():e()}))}))}return this.promise}then(t,e){return this.getPromise().then(t,e)}catch(t){return this.getPromise().catch(t)}finally(t){return this.getPromise().finally(t)}pause(){this.host.pause&&this.host.pause()}resume(){this.host.resume&&this.host.resume()}end(){this.host.end&&this.host.end(),this._resolve(!0)}cancel(){this.host.cancel&&this.host.cancel(),this._resolve(!1)}complete(t){0===this._state&&(this._state=1,this._tick((()=>{this._resolve(t)})))}_resolve(t){2!==this._state&&(this._doneCallbacks.forEach((e=>{e(t)})),this._doneCallbacks.length=0,this._state=2)}}class Gi{constructor(){this.cache=new Map}$get=()=>this.cache}class Qi{constructor(){this.log=window.console,this.errorHandler=(t,e)=>{this.log.error(t,e)},this.$get=["$log",t=>(this.log=t,this.errorHandler)]}}function Yi(){return function(t,e,n,r){if(!v(t)){if(null==t)return t;throw dt("filter")("notarray","Expected array but received: {0}",t)}let i;r=r||"$";let s=!1;switch(Zi(e)){case"function":i=e;break;case"boolean":case"null":case"number":case"string":s=!0;case"object":i=function(t,e,n,r){const i=w(t)&&n in t;let s;!0===e?e=K:O(e)||(e=function(t,e){return!y(t)&&(null===t||null===e?t===e:!(w(e)||w(t)&&!I(t))&&(t=`${t}`.toLowerCase(),e=`${e}`.toLowerCase(),-1!==t.indexOf(e)))});return s=function(s){return i&&!w(s)?Ji(s,t[n],e,n,!1):Ji(s,t,e,n,r)},s}(e,n,r,s);break;default:return t}return Array.prototype.filter.call(t,i)}}function Ji(t,e,n,r,i,s){const o=Zi(t),a=Zi(e);if("string"===a&&"!"===e.charAt(0))return!Ji(t,e.substring(1),n,r,i);if(Array.isArray(t))return t.some((t=>Ji(t,e,n,r,i)));switch(o){case"object":if(i){for(let i in t)if(i.charAt&&"$"!==i.charAt(0)&&Ji(t[i],e,n,r,!0))return!0;return!s&&Ji(t,e,n,r,!1)}if("object"===a){for(let i in e){const s=e[i];if(O(s)||y(s))continue;const o=i===r;if(!Ji(o?t:t[i],s,n,r,o,o))return!1}return!0}return n(t,e);case"function":return!1;default:return n(t,e)}}function Zi(t){return null===t?"null":typeof t}function Xi(){return function(t,e){return y(e)&&(e=2),X(t,e)}}function ts(){return function(t,e,n){return O(t)&&(t=t()),D(e=Math.abs(Number(e))===1/0?Number(e):P(e))?t:(x(t)&&(t=t.toString()),v(t)?(n=(n=!n||isNaN(n)?0:P(n))<0?Math.max(0,t.length+n):n,e>=0?es(t,n,n+e):0===n?es(t,e,t.length):es(t,Math.max(0,n+e),n)):t)}}function es(t,e,n){return E(t)?t.slice(e,n):[].slice.call(t,e,n)}function ns(t){return function(r,i,s,o){if(null==r)return r;if(O(r))return r();if(!v(r))throw dt("orderBy")("notarray","Expected array but received: {0}",r);Array.isArray(i)||(i=[i]),0===i.length&&(i=["+"]);const a=i.map((e=>{let n=1,r=t=>t;if(O(e))r=e;else if(E(e)&&("+"!==e.charAt(0)&&"-"!==e.charAt(0)||(n="-"===e.charAt(0)?-1:1,e=e.substring(1)),""!==e)){let n=t(e);if(n.constant){const t=n();r=e=>e[t]}else r=n}return{get:r,descending:n}}));const c=s?-1:1,l=O(o)?o:n,u=Array.prototype.map.call(r,(function(t,n){return{value:t,tieBreaker:{value:n,type:"number",index:n},predicateValues:a.map((r=>function(t,n){let r=typeof t;null===t?r="null":"object"===r&&(t=function(t){if(O(t.valueOf)&&e(t=t.valueOf()))return t;if(I(t)&&e(t=t.toString()))return t;return t}(t));return{value:t,type:r,index:n}}(r.get(t),n)))}}));return u.sort((function(t,e){for(let n=0,r=a.length;n<r;n++){const r=l(t.predicateValues[n],e.predicateValues[n]);if(r)return r*a[n].descending*c}return(l(t.tieBreaker,e.tieBreaker)||n(t.tieBreaker,e.tieBreaker))*c})),r=u.map((t=>t.value))};function e(t){switch(typeof t){case"number":case"boolean":case"string":return!0;default:return!1}}function n(t,e){let n=0;const r=t.type,i=e.type;if(r===i){let i=t.value,s=e.value;"string"===r?(i=i.toLowerCase(),s=s.toLowerCase()):"object"===r&&(w(i)&&(i=t.index),w(s)&&(s=e.index)),i!==s&&(n=i<s?-1:1)}else n="undefined"===r?1:"undefined"===i?-1:"null"===r?1:"null"===i||r<i?-1:1;return n}}function rs(t){return function(e,n,r){return t.is(e,n,r)}}function is(t){return function(e,n,r){return t.includes(e,n,r)}}function ss(t){const e="Filter";function n(r,i){return w(r)&&Object.entries(r).forEach((([t,e])=>{n(t,e)})),t.factory(r+e,i)}this.register=n,this.$get=["$injector",function(t){return function(n){return t.get(n+e)}}],n("filter",Yi),n("json",Xi),n("limitTo",ts),n("orderBy",ns),n("isState",rs),n("includedByState",is)}ns.$inject=[Xt.$parse],rs.$inject=["$state"],is.$inject=["$state"],ss.$inject=["$provide"];class os{constructor(t){this.$filter=t}compile(t){let e,n,r=as(t,this.$filter);(e=function(t){if(1===t.body.length&&cs(t.body[0].expression))return{type:Wr,left:t.body[0].expression,right:{type:ai},operator:"="}}(r))&&(n=this.recurse(e));const i=function(t){if(1!==t.length)return;const e=t[0].expression,n=e.toWatch;return 1!==n.length||n[0]!==e?n:void 0}(r.body);let s;if(i){s=[];for(const[t,e]of Object.entries(i)){const n=this.recurse(e);n.isPure=e.isPure,e.input=n,s.push(n),e.watchId=t}}const o=[];r.body.forEach((t=>{o.push(this.recurse(t.expression))}));const a=0===r.body.length?()=>{}:1===r.body.length?o[0]:function(t,e){let n;return o.forEach((r=>{n=r(t,e)})),n};return n&&(a.assign=(t,e,r)=>n(t,r,e)),s&&(a.inputs=s),a.decoratedNode=r,a}recurse(t,e,n){let r,i;const s=this;let o;switch(t.type){case ei:return this.value(t.value,e);case Jr:return i=this.recurse(t.argument),this[`unary${t.operator}`](i,e);case Yr:case Qr:return r=this.recurse(t.left),i=this.recurse(t.right),this[`binary${t.operator}`](r,i,e);case Gr:return this["ternary?:"](this.recurse(t.test),this.recurse(t.alternate),this.recurse(t.consequent),e);case ti:return s.identifier(t.name,e,n);case Xr:return r=this.recurse(t.object,!1,!!n),t.computed||(i=t.property.name),t.computed&&(i=this.recurse(t.property)),t.computed?this.computedMember(r,i,e,n):this.nonComputedMember(r,i,e,n);case Zr:return o=[],t.arguments.forEach((t=>{o.push(s.recurse(t))})),t.filter&&(i=this.$filter(t.callee.name)),t.filter||(i=this.recurse(t.callee,!0)),t.filter?function(t,n,r){const s=[];for(let e=0;e<o.length;++e){const i=o[e](t,n,r);s.push(i)}const a=()=>i.apply(void 0,s);return e?{context:void 0,name:void 0,value:a}:a}:function(t,n,r){const s=i(t,n,r);let a;if(null!=s.value&&O(s.value)){const e=[];for(let i=0;i<o.length;++i){const s=o[i](t,n,r);e.push(O(s)?s():s)}a=s.value.apply(s.context,e)}return e?{value:a}:a};case Wr:return r=this.recurse(t.left,!0,1),i=this.recurse(t.right),function(t,n,s){const o=r(t,n,s),a=i(t,n,s);return o.context[o.name]=a,e?{value:a}:a};case ni:return o=[],t.elements.forEach((t=>{o.push(s.recurse(t))})),function(t,n,r){const i=[];for(let e=0;e<o.length;++e)i.push(o[e](t,n,r));return e?{value:i}:i};case ii:return o=[],t.properties.forEach((t=>{t.computed?o.push({key:s.recurse(t.key),computed:!0,value:s.recurse(t.value)}):o.push({key:t.key.type===ti?t.key.name:`${t.key.value}`,computed:!1,value:s.recurse(t.value)})})),function(t,n,r){const i={};for(let e=0;e<o.length;++e)o[e].computed?i[o[e].key(t,n,r)]=o[e].value(t,n,r):i[o[e].key]=o[e].value(t,n,r);return e?{value:i}:i};case si:return function(t){return e?{value:t}:t};case oi:return function(t,n){return e?{value:n}:n};case ai:return function(t,n,r){return e?{value:r}:r}}}"unary+"(t,e){return function(n,r,i){let s=t(n,r,i);return s=b(s)?+s:0,e?{value:s}:s}}"unary-"(t,e){return function(n,r,i){let s=t(n,r,i);return s=b(s)?-s:-0,e?{value:s}:s}}"unary!"(t,e){return function(n,r,i){const s=!t(n,r,i);return e?{value:s}:s}}"binary+"(t,e,n){return function(r,i,s){const o=t(r,i,s),a=e(r,i,s),c=(u=a,void 0===(l=o)||w(l)?u:void 0===u||w(u)?l:l+u);var l,u;return n?{value:c}:c}}"binary-"(t,e,n){return function(r,i,s){const o=t(r,i,s),a=e(r,i,s),c=(b(o)?o:0)-(b(a)?a:0);return n?{value:c}:c}}"binary*"(t,e,n){return function(r,i,s){const o=t(r,i,s)*e(r,i,s);return n?{value:o}:o}}"binary/"(t,e,n){return function(r,i,s){const o=t(r,i,s)/e(r,i,s);return n?{value:o}:o}}"binary%"(t,e,n){return function(r,i,s){const o=t(r,i,s)%e(r,i,s);return n?{value:o}:o}}"binary==="(t,e,n){return function(r,i,s){const o=t(r,i,s)===e(r,i,s);return n?{value:o}:o}}"binary!=="(t,e,n){return function(r,i,s){const o=t(r,i,s)!==e(r,i,s);return n?{value:o}:o}}"binary=="(t,e,n){return function(r,i,s){const o=t(r,i,s)==e(r,i,s);return n?{value:o}:o}}"binary!="(t,e,n){return function(r,i,s){const o=t(r,i,s)!=e(r,i,s);return n?{value:o}:o}}"binary<"(t,e,n){return function(r,i,s){const o=t(r,i,s)<e(r,i,s);return n?{value:o}:o}}"binary>"(t,e,n){return function(r,i,s){const o=t(r,i,s)>e(r,i,s);return n?{value:o}:o}}"binary<="(t,e,n){return function(r,i,s){const o=t(r,i,s)<=e(r,i,s);return n?{value:o}:o}}"binary>="(t,e,n){return function(r,i,s){const o=t(r,i,s)>=e(r,i,s);return n?{value:o}:o}}"binary&&"(t,e,n){return(r,i,s)=>{const o=t(r,i,s)&&e(r,i,s);return n?{value:o}:o}}"binary||"(t,e,n){return function(r,i,s){const o=t(r,i,s)||e(r,i,s);return n?{value:o}:o}}"ternary?:"(t,e,n,r){return function(i,s,o){const a=t(i,s,o)?e(i,s,o):n(i,s,o);return r?{value:a}:a}}value(t,e){return function(){return e?{context:void 0,name:void 0,value:t}:t}}identifier(t,e,n){return function(r,i){const s=i&&t in i?i:r;let o;return n&&1!==n&&s&&null==s[t]&&(s[t]={}),s&&(o=s[t]),e?{context:s,name:t,value:o}:o}}computedMember(t,e,n,r){return function(i,s,o){const a=t(i,s,o);let c,l;return null!=a&&(c=e(i,s,o),c=function(t){return`${t}`}(c),r&&1!==r&&a&&!a[c]&&(a[c]={}),l=a[c]),n?{context:a,name:c,value:l}:l}}nonComputedMember(t,e,n,r){return function(i,s,o){const a=t(i,s,o);r&&1!==r&&a&&null==a[e]&&(a[e]={});const c=null!=a?a[e]:void 0;return n?{context:a,name:e,value:c}:c}}}function as(t,e,n){let r,i,s,o,a,c,l,u,h,d,p,f=t;const $=f.isPure=function(t,e){switch(t.type){case Xr:if(t.computed)return!1;break;case Jr:return 1;case Yr:return"+"!==t.operator&&1;case Zr:return!1}return void 0===e?2:e}(t,n);switch(t.type){case zr:return r=!0,f.body.forEach((t=>{let n=as(t.expression,e,$);r=r&&n.constant})),f.constant=r,f;case ei:return f.constant=!0,f.toWatch=[],f;case Jr:var m=as(f.argument,e,$);return f.constant=m.constant,f.toWatch=m.toWatch,f;case Yr:return o=as(f.left,e,$),a=as(f.right,e,$),f.constant=o.constant&&a.constant,f.toWatch=o.toWatch.concat(a.toWatch),f;case Qr:return o=as(f.left,e,$),a=as(f.right,e,$),f.constant=o.constant&&a.constant,f.toWatch=f.constant?[]:[t],f;case Gr:return c=as(t.test,e,$),l=as(t.alternate,e,$),u=as(t.consequent,e,$),f.constant=c.constant&&l.constant&&u.constant,f.toWatch=f.constant?[]:[t],f;case ti:return f.constant=!1,f.toWatch=[t],f;case Xr:return h=as(t.object,e,$),t.computed&&(d=as(t.property,e,$)),f.constant=h.constant&&(!f.computed||d.constant),f.toWatch=f.constant?[]:[t],f;case Zr:return s=!!t.filter&&function(t,e){const n=t(e);return!n.$stateful}(e,t.callee.name),r=s,i=[],t.arguments.forEach((t=>{m=as(t,e,$),r=r&&m.constant,i.push.apply(i,m.toWatch)})),f.constant=r,f.toWatch=s?i:[f],f;case Wr:return o=as(t.left,e,$),a=as(t.right,e,$),f.constant=o.constant&&a.constant,f.toWatch=[f],f;case ni:return r=!0,i=[],t.elements.forEach((t=>{m=as(t,e,$),r=r&&m.constant,i.push.apply(i,m.toWatch)})),f.constant=r,f.toWatch=i,f;case ii:return r=!0,i=[],t.properties.forEach((t=>{m=as(t.value,e,$),r=r&&m.constant,i.push.apply(i,m.toWatch),t.computed&&(p=as(t.key,e,!1),r=r&&p.constant,i.push.apply(i,p.toWatch))})),f.constant=r,f.toWatch=i,f;case si:case oi:return f.constant=!1,f.toWatch=[],f}}function cs(t){return t.type===ti||t.type===Xr}const ls=dt("$parse"),us={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},hs=new Set("+ - * / % === !== == != < > <= >= && || ! = |".split(" "));class ds{constructor(t){this.options=t}lex(t){for(this.text=t,this.index=0,this.tokens=[];this.index<this.text.length;){const t=this.text.charAt(this.index);if('"'===t||"'"===t)this.readString(t);else if(this.isNumber(t)||"."===t&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdentifierStart&&this.isIdentifierStart(this.peekMultichar()))this.readIdent();else if(this.is(t,"(){}[].,;:?"))this.tokens.push({index:this.index,text:t}),this.index++;else if(this.isWhitespace(t))this.index++;else{const e=t+this.peek(),n=e+this.peek(2),r=hs.has(t),i=hs.has(e),s=hs.has(n);if(r||i||s){const r=s?n:i?e:t;this.tokens.push({index:this.index,text:r,operator:!0}),this.index+=r.length}else this.throwError("Unexpected next character ",this.index,this.index+1)}}return this.tokens}is(t,e){return-1!==e.indexOf(t)}peek(t){const e=t||1;return this.index+e<this.text.length&&this.text.charAt(this.index+e)}isNumber(t){return t>="0"&&t<="9"&&"string"==typeof t}isWhitespace(t){return" "===t||"\r"===t||"\t"===t||"\n"===t||"\v"===t}isIdentifierStart(t){return this.options.isIdentifierStart?this.options.isIdentifierStart(t,this.codePointAt(t)):t>="a"&&t<="z"||t>="A"&&t<="Z"||"_"===t||"$"===t}isIdentifierContinue(t){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(t,this.codePointAt(t)):t>="a"&&t<="z"||t>="A"&&t<="Z"||"_"===t||"$"===t||t>="0"&&t<="9"}codePointAt(t){return 1===t.length?t.charCodeAt(0):(t.charCodeAt(0)<<10)+t.charCodeAt(1)-56613888}peekMultichar(){const t=this.text.charAt(this.index),e=this.peek();if(!e)return t;const n=t.charCodeAt(0),r=e.charCodeAt(0);return n>=55296&&n<=56319&&r>=56320&&r<=57343?t+e:t}isExpOperator(t){return"-"===t||"+"===t||this.isNumber(t)}throwError(t,e,n){n=n||this.index;const r=b(e)?`s ${e}-${this.index} [${this.text.substring(e,n)}]`:` ${n}`;throw ls("lexerr",`Lexer Error: ${t} at column${r} in expression [${this.text}].`)}readNumber(){let t="";const e=this.index;for(;this.index<this.text.length;){const e=this.text.charAt(this.index).toLowerCase();if("."===e||this.isNumber(e))t+=e;else{const n=this.peek();if("e"===e&&this.isExpOperator(n))t+=e;else if(this.isExpOperator(e)&&n&&this.isNumber(n)&&"e"===t.charAt(t.length-1))t+=e;else{if(!this.isExpOperator(e)||n&&this.isNumber(n)||"e"!==t.charAt(t.length-1))break;this.throwError("Invalid exponent")}}this.index++}this.tokens.push({index:e,text:t,constant:!0,value:Number(t)})}readIdent(){const t=this.index;for(this.index+=this.peekMultichar().length;this.index<this.text.length;){const t=this.peekMultichar();if(this.isIdentifierContinue&&!this.isIdentifierContinue(t))break;this.index+=t.length}this.tokens.push({index:t,text:this.text.slice(t,this.index),identifier:!0})}readString(t){const e=this.index;let n="",r=!1;for(this.index++;this.index<this.text.length;){const i=this.text[this.index];if(r)n+="u"===i?this.handleUnicodeEscape():us[i]||i,r=!1;else if("\\"===i)r=!0;else{if(i===t)return this.tokens.push({index:e,text:this.text.slice(e,this.index+1),constant:!0,value:n}),void this.index++;n+=i}this.index++}this.throwError("Unterminated quote",e)}handleUnicodeEscape(){const t=this.text.substring(this.index+1,this.index+5);return t.match(/[\da-f]{4}/i)||this.throwError(`Invalid unicode escape [\\u${t}]`),this.index+=4,String.fromCharCode(parseInt(t,16))}}const ps=dt("$parse"),fs=new Map([["true",!0],["false",!1],["null",null],["undefined",void 0]]);class $s{constructor(t){this.lexer=t,this.selfReferential={this:{type:si},$locals:{type:oi}}}ast(t){this.text=t,this.tokens=this.lexer.lex(t);const e=this.program();return 0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),e}program(){const t=[];let e=!0;for(;e;)this.tokens.length>0&&!this.peek("}",")",";","]")&&t.push(this.expressionStatement()),this.expect(";")||(e=!1);return{type:zr,body:t}}expressionStatement(){return{type:Kr,expression:this.filterChain()}}filterChain(){let t=this.assignment();for(;this.expect("|");)t=this.filter(t);return t}assignment(){let t=this.ternary();if(this.expect("=")){if(!cs(t))throw ps("lval","Trying to assign a value to a non l-value");t={type:Wr,left:t,right:this.assignment(),operator:"="}}return t}ternary(){const t=this.logicalOR();let e,n;return this.expect("?")&&(e=this.assignment(),this.consume(":"))?(n=this.assignment(),{type:Gr,test:t,alternate:e,consequent:n}):t}logicalOR(){let t=this.logicalAND();for(;this.expect("||");)t={type:Qr,operator:"||",left:t,right:this.logicalAND()};return t}logicalAND(){let t=this.equality();for(;this.expect("&&");)t={type:Qr,operator:"&&",left:t,right:this.equality()};return t}equality(){let t,e=this.relational();for(;t=this.expect("==","!=","===","!==");)e={type:Yr,operator:t.text,left:e,right:this.relational()};return e}relational(){let t,e=this.additive();for(;t=this.expect("<",">","<=",">=");)e={type:Yr,operator:t.text,left:e,right:this.additive()};return e}additive(){let t,e=this.multiplicative();for(;t=this.expect("+","-");)e={type:Yr,operator:t.text,left:e,right:this.multiplicative()};return e}multiplicative(){let t,e=this.unary();for(;t=this.expect("*","/","%");)e={type:Yr,operator:t.text,left:e,right:this.unary()};return e}unary(){let t;return(t=this.expect("+","-","!"))?{type:Jr,operator:t.text,prefix:!0,argument:this.unary()}:this.primary()}primary(){let t,e;for(this.expect("(")?(t=this.filterChain(),this.consume(")")):this.expect("[")?t=this.arrayDeclaration():this.expect("{")?t=this.object():vt(this.selfReferential,this.peek().text)?t=structuredClone(this.selfReferential[this.consume().text]):fs.has(this.peek().text)?t={type:ei,value:fs.get(this.consume().text)}:this.peek().identifier?t=this.identifier():this.peek().constant?t=this.constant():this.throwError("not a primary expression",this.peek());e=this.expect("(","[",".");)"("===e.text?(t={type:Zr,callee:t,arguments:this.parseArguments()},this.consume(")")):"["===e.text?(t={type:Xr,object:t,property:this.assignment(),computed:!0},this.consume("]")):"."===e.text?t={type:Xr,object:t,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return t}filter(t){const e=[t],n={type:Zr,callee:this.identifier(),arguments:e,filter:!0};for(;this.expect(":");)e.push(this.assignment());return n}parseArguments(){const t=[];if(")"!==this.peekToken().text)do{t.push(this.filterChain())}while(this.expect(","));return t}identifier(){const t=this.consume();return t.identifier||this.throwError("is not a valid identifier",t),{type:ti,name:t.text}}constant(){return{type:ei,value:this.consume().value}}arrayDeclaration(){const t=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;t.push(this.assignment())}while(this.expect(","));return this.consume("]"),{type:ni,elements:t}}object(){const t=[];let e;if("}"!==this.peekToken().text)do{if(this.peek("}"))break;e={type:ri,kind:"init"},this.peek().constant?(e.key=this.constant(),e.computed=!1,this.consume(":"),e.value=this.assignment()):this.peek().identifier?(e.key=this.identifier(),e.computed=!1,this.peek(":")?(this.consume(":"),e.value=this.assignment()):e.value=e.key):this.peek("[")?(this.consume("["),e.key=this.assignment(),this.consume("]"),e.computed=!0,this.consume(":"),e.value=this.assignment()):this.throwError("invalid key",this.peek()),t.push(e)}while(this.expect(","));return this.consume("}"),{type:ii,properties:t}}throwError(t,e){throw ps("syntax","Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].",e.text,t,e.index+1,this.text,this.text.substring(e.index))}consume(t){if(0===this.tokens.length)throw ps("ueoe","Unexpected end of expression: {0}",this.text);const e=this.expect(t);if(e)return e;this.throwError(`is unexpected, expecting [${t}]`,this.peek())}peekToken(){if(0===this.tokens.length)throw ps("ueoe","Unexpected end of expression: {0}",this.text);return this.tokens[0]}peek(...t){return this.peekAhead(0,...t)}peekAhead(t,...e){if(this.tokens.length>t){const n=this.tokens[t],r=n.text;if(e.includes(r)||!e[0]&&!e[1]&&!e[2]&&!e[3])return n}return!1}expect(...t){const e=this.peek(...t);return!!e&&(this.tokens.shift(),e)}}class ms{constructor(t,e){this.ast=new $s(t),this.astCompiler=new os(e)}parse(t){const{ast:e}=this.getAst(t),n=this.astCompiler.compile(e);return n.literal=function(t){return 0===t.body.length||1===t.body.length&&(t.body[0].expression.type===ei||t.body[0].expression.type===ni||t.body[0].expression.type===ii)}(e),n.constant=function(t){return t.constant}(e),n}getAst(t){return t=t.trim(),{ast:this.ast.ast(t)}}}function gs(){const t=Object.create(null);let e,n;this.setIdentifierFns=function(t,r){return e=t,n=r,this},this.$get=["$filter",function(r){const i={isIdentifierStart:O(e)&&e,isIdentifierContinue:O(n)&&n};return function(e,n){let o,a;switch(typeof e){case"string":if(a=e=e.trim(),o=t[a],!o){const n=new ds(i);o=new ms(n,r).parse(e),t[a]=ys(o)}return s(o,n);case"function":return s(e,n);default:return s((()=>{}),n)}};function s(t,e){if(!e)return t;t.$$interceptor&&(e=function(t,e){function n(n){return e(t(n))}return n.$stateful=t.$stateful||e.$stateful,n.$$pure=t.$$pure&&e.$$pure,n}(t.$$interceptor,e),t=t.$$intercepted);let n=!1;const r=function(r,i,s,o){const a=n&&o?o[0]:t(r,i,s,o);if(r?.getter)return;const c=O(a)?a():a;return e(p(c)?c.$target:c)};return r.$$intercepted=t,r.$$interceptor=e,r.literal=t.literal,r.oneTime=t.oneTime,r.constant=t.constant,r.decoratedNode=t.decoratedNode,e.$stateful||(n=!t.inputs,r.inputs=t.inputs?t.inputs:[t],e.$$pure||(r.inputs=r.inputs.map((function(t){return 2===t.isPure?function(e){return t(e)}:t})))),ys(r)}}]}function vs(t,e,n,r){const i=t.$watch((()=>(i(),r(t))),e,n);return i}function ys(t){return t.constant?t.$$watchDelegate=vs:t.inputs&&(t.$$watchDelegate=bs),t}function bs(t,e,n,r){let i,s=r.inputs;if(1===s.length){let o=ws,a=s[0];return t.$watch((t=>{const e=a(t);return ws(e,o,a.isPure)||(i=r(t,void 0,[e]),o=e&&Es(e)),i}),e,n)}{const o=[],a=[];for(let t=0,e=s.length;t<e;t++)o[t]=ws,a[t]=null;return t.$watch((t=>{let e=!1;for(let n=0,r=s.length;n<r;n++){const r=s[n](t);(e||(e=!ws(r,o[n],s[n].isPure)))&&(a[n]=r,o[n]=r&&Es(r))}return e&&(i=r(t,void 0,a)),i}),e,n)}}function ws(t,e,n){return null==t||null==e?t===e:!("object"==typeof t&&"object"==typeof(t=Es(t))&&!n)&&(t===e||t!=t&&e!=e)}function Es(t){return O(t.valueOf)?t.valueOf():{}.constructor.prototype.valueOf.call(t)}const Cs=dt("$interpolate");function Ss(t,e){throw Cs("interr","Can't interpolate: {0}\n{1}",t,e.toString())}class xs{constructor(){this.startSymbol="{{",this.endSymbol="}}"}$get=["$parse","$sce",function(t,e){const n=this,r=n.startSymbol.length,i=n.endSymbol.length,s=new RegExp(n.startSymbol.replace(/./g,a),"g"),o=new RegExp(n.endSymbol.replace(/./g,a),"g");function a(t){return`\\\\\\${t}`}function c(t){return t.replace(s,n.startSymbol).replace(o,n.endSymbol)}function l(s,o,a,l){const u=a===e.URL||a===e.MEDIA_URL;if(!s.length||-1===s.indexOf(n.startSymbol)){if(o)return;let t=c(s);u&&(t=e.getTrusted(a,t));const n=()=>t;return n.exp=s,n.expressions=[],n.$$watchDelegate=vs,n}let h,d;l=!!l;let p=0;const f=[];let $;const m=s.length;let g;const v=[],w=[];let E;for(;p<m;){if(-1===(h=s.indexOf(n.startSymbol,p))||-1===(d=s.indexOf(n.endSymbol,h+r))){p!==m&&v.push(c(s.substring(p)));break}p!==h&&v.push(c(s.substring(p,h))),g=s.substring(h+r,d),f.push(g),p=d+i,w.push(v.length),v.push("")}E=1===v.length&&1===w.length;const C=u&&E?void 0:function(t){try{return t=a&&!u?e.getTrusted(a,t):e.valueOf(t),l&&!b(t)?t:G(t)}catch(t){Ss(s,t)}};if($=f.map((e=>t(e,C))),!o||f.length){const t=function(t){for(let e=0,n=f.length;e<n;e++){if(l&&y(t[e]))return;v[w[e]]=t[e]}return u?e.getTrusted(a,E?v[0]:v.join("")):(a&&v.length>1&&function(t){throw Cs("noconcat","Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required. See http://docs.angularjs.org/api/ng.$sce",t)}(s),v.join(""))};return M(((e,n)=>{let r=0;const i=f.length,o=new Array(i);try{for(;r<i;r++){if(n){const s=f[r].trim();e.$watch(s,(()=>{let r=new Array(i),s=0;for(;s<i;s++){let t=(0,$[s])(e);r[s]=t}n(t(r))}))}o[r]=$[r](e)}return t(o)}catch(t){Ss(s,t)}}),{exp:s,expressions:f,$$watchDelegate(e,n){let r;return e.$watch($,(function(i,s){const o=t(i);n.call(this,o,i!==s?r:o,e),r=o}))}})}}return l.startSymbol=function(){return n.startSymbol},l.endSymbol=function(){return n.endSymbol},l}]}let As={},ks="";function Os(t){try{return decodeURIComponent(t)}catch{return t}}const _s="application/json",Ts={"Content-Type":`${_s};charset=utf-8`},js=/^\[|^\{(?!\{)/,Ls={"[":/]$/,"{":/}$/},Rs=/^\)]\}',?\n/,Ns=dt("$http");function Vs(t){return w(t)?A(t)?t.toISOString():X(t):t}function Ms(){this.$get=function(){return function(t){if(!t)return"";const e=[];return Object.keys(t).sort().forEach((n=>{const r=t[n];null===r||y(r)||O(r)||(Array.isArray(r)?r.forEach((t=>{e.push(`${it(n)}=${it(Vs(t))}`)})):e.push(`${it(n)}=${it(Vs(r))}`))})),e.join("&")}}}function Ps(t,e){if(E(t)){const r=t.replace(Rs,"").trim();if(r){const i=e("Content-Type"),s=i&&0===i.indexOf(_s);if(s||function(t){const e=t.match(js);return e&&Ls[e[0]].test(t)}(r))try{t=E(n=r)?JSON.parse(n):n}catch(e){if(!s)return t;throw Ns("baddata",'Data must be a valid JSON object. Received: "{0}". Parse error: "{1}"',t,e)}}}var n;return t}function Ds(t){const e=Object.create(null);let n;function r(t,n){t&&(e[t]=e[t]?`${e[t]}, ${n}`:n)}return E(t)?t.split("\n").forEach((t=>{n=t.indexOf(":"),r(t.substring(0,n).trim().toLowerCase(),N(t.substring(n+1)))})):w(t)&&Object.entries(t).forEach((([t,e])=>{r(g(t),N(e))})),e}function Us(t){let e;return function(n){if(e||(e=Ds(t)),n){let t=e[g(n)];return void 0===t&&(t=null),t}return e}}function Is(t,e,n,r){return O(r)?r(t,e,n):(Array.isArray(r)&&r.forEach((r=>{t=r(t,e,n)})),t)}function Hs(t){return t>=200&&t<300}function Fs(){const t=this.defaults={transformResponse:[Ps],transformRequest:[function(t){return!w(t)||(e=t,"[object File]"===toString.call(e))||function(t){return"[object Blob]"===toString.call(t)}(t)||function(t){return"[object FormData]"===toString.call(t)}(t)?t:X(t);var e}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ot(Ts),put:ot(Ts),patch:ot(Ts)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"};let e=!1;this.useApplyAsync=function(t){return b(t)?(e=!!t,this):e};const n=this.interceptors=[],r=this.xsrfTrustedOrigins=[];Object.defineProperty(this,"xsrfWhitelistedOrigins",{get(){return this.xsrfTrustedOrigins},set(t){this.xsrfTrustedOrigins=t}}),this.$get=["$browser","$httpBackend","$rootScope","$injector","$sce",function(i,s,o,a,c){const l=new Map;t.paramSerializer=E(t.paramSerializer)?a.get(t.paramSerializer):t.paramSerializer;const u=[];n.forEach((t=>{u.unshift(E(t)?a.get(t):a.invoke(t))}));const h=function(t){const e=[je].concat(t.map(Re));return function(t){const n=Re(t);return e.some(Ve.bind(null,n))}}(r);function d(n){if(!w(n))throw dt("$http")("badreq","Http request configuration must be an object. Received: {0}",n);if(!E(c.valueOf(n.url)))throw dt("$http")("badreq","Http request configuration url must be a string or a $sce trusted object. Received: {0}",n.url);const r=M({method:"get",transformRequest:t.transformRequest,transformResponse:t.transformResponse,paramSerializer:t.paramSerializer},n);var o;r.headers=function(e){let n=t.headers,r=M({},e.headers);return n=M({},n.common,n[g(e.method)]),Object.keys(n).forEach((t=>{const e=g(t);Object.keys(r).some((t=>g(t)===e))||(r[t]=n[t])})),function(t,e){let n;const r={};return Object.entries(t).forEach((([t,i])=>{O(i)?(n=i(e),null!=n&&(r[t]=n)):r[t]=i})),r}(r,ot(e))}(n),r.method=E(o=r.method)?o.toUpperCase():o,r.paramSerializer=E(r.paramSerializer)?a.get(r.paramSerializer):r.paramSerializer,i.$$incOutstandingRequestCount("$http");const p=[],f=[];let $=Promise.resolve(r);return u.forEach((t=>{(t.request||t.requestError)&&p.unshift(t.request,t.requestError),(t.response||t.responseError)&&f.push(t.response,t.responseError)})),$=m($,p),$=$.then((function(n){const{headers:r}=n,i=Is(n.data,Us(r),void 0,n.transformRequest);y(i)&&Object.keys(r).forEach((t=>{"content-type"===g(t)&&delete r[t]}));y(n.withCredentials)&&!y(t.withCredentials)&&(n.withCredentials=t.withCredentials);return function(n,r){const{promise:i,resolve:o,reject:a}=Promise.withResolvers();let u,p;const f=n.headers;let{url:$}=n;E($)||($=c.valueOf($));$=function(t,e){e.length>0&&(t+=(-1===t.indexOf("?")?"?":"&")+e);return t}($,n.paramSerializer(n.params)),d.pendingRequests.push(n),i.then(S,S),(n.cache||t.cache)&&!1!==n.cache&&"GET"===n.method&&(u=w(n.cache)?n.cache:w(t.cache)?t.cache:l);u&&(p=u.get($),b(p)?R(p)?p.then(C,C):Array.isArray(p)?v(p[1],p[0],ot(p[2]),p[3],p[4]):v(p,200,{},"OK","complete"):u.set($,i));if(y(p)){const e=h(n.url)?function(){let t,e,n,r,i;const s=document.cookie;if(s!==ks)for(ks=s,t=ks.split("; "),As={},n=0;n<t.length;n++)e=t[n],r=e.indexOf("="),r>0&&(i=Os(e.substring(0,r)),y(As[i])&&(As[i]=Os(e.substring(r+1))));return As}()[n.xsrfCookieName||t.xsrfCookieName]:void 0;e&&(f[n.xsrfHeaderName||t.xsrfHeaderName]=e),s(n.method,$,r,g,f,n.timeout,n.withCredentials,n.responseType,m(n.eventHandlers),m(n.uploadEventHandlers))}return i;function m(t){if(t){const n={};return Object.entries(t).forEach((([t,r])=>{n[t]=function(t){function n(){r(t)}e?setTimeout((()=>n())):n()}})),n}}function g(t,n,r,i,s){function o(){v(n,t,r,i,s)}u&&(Hs(t)?u.set($,[t,n,Ds(r),i,s]):u.delete($)),e?setTimeout(o):o()}function v(t,e,r,i,s){(Hs(e=e>=-1?e:0)?o:a)({data:t,status:e,headers:Us(r),config:n,statusText:i,xhrStatus:s})}function C(t){v(t.data,t.status,ot(t.headers()),t.statusText,t.xhrStatus)}function S(){const t=d.pendingRequests.indexOf(n);-1!==t&&d.pendingRequests.splice(t,1)}}(n,i).then(v,v)})),$=m($,f),$=$.finally((function(){i.$$completeOutstandingRequest((()=>{}),"$http")})),$;function m(t,e){for(let n=0,r=e.length;n<r;){const r=e[n++],i=e[n++];t=t.then(r,i)}return e.length=0,t}function v(t){const e=M({},t);return e.data=Is(t.data,t.headers,t.status,r.transformResponse),Hs(t.status)?e:Promise.reject(e)}}return d.pendingRequests=[],function(...t){t.forEach((t=>{d[t]=function(e,n){return d(M({},n||{},{method:t,url:e}))}}))}("get","delete","head"),function(...t){t.forEach((t=>{d[t]=function(e,n,r){return d(M({},r||{},{method:t,url:e,data:n}))}}))}("post","put","patch"),d.defaults=t,d}]}class qs{constructor(){this.$get=["$browser",function(t){return function(t){return function(e,n,r,i,s,o,a,c,l,u){n=n||t.url();const h=new XMLHttpRequest;let d,p=!1;if(h.open(e,n,!0),s&&Object.entries(s).forEach((([t,e])=>{b(e)&&h.setRequestHeader(t,e)})),h.onload=function(){const t=h.statusText||"";let e=h.status;0===e&&(e=h.response?200:"file"===Re(n).protocol?404:0),$(i,e,h.response,h.getAllResponseHeaders(),t,"complete")},h.onerror=function(){$(i,-1,null,null,"","error")},h.ontimeout=function(){$(i,-1,null,null,"","timeout")},h.onabort=function(){$(i,-1,null,null,"",p?"timeout":"abort")},l&&l&&Object.entries(l).forEach((([t,e])=>{h.addEventListener(t,e)})),u&&Object.entries(u).forEach((([t,e])=>{h.upload.addEventListener(t,e)})),a&&(h.withCredentials=!0),c)try{h.responseType=c}catch(t){if("json"!==c)throw t}function f(t){p="timeout"===t,h&&h.abort()}function $(t,e,n,r,i,s){b(d)&&clearTimeout(d),t(e,n,r,i,s)}h.send(y(r)?null:r),o>0?d=setTimeout((()=>{f("timeout")}),o):R(o)&&o.then((()=>{f(b(o.$$timeoutId)?"timeout":"abort")}))}}(t)}]}}const Bs={http:80,https:443,ftp:21},zs=/^([^?#]*)(\?([^#]*))?(#(.*))?$/,Ks=dt("$location");class Ws{constructor(t,e){const n=Re(t);this.appBase=t,this.appBaseNoFile=e,this.$$absUrl="",this.$$html5=!1,this.$$replace=!1,this.$$protocol=n.protocol,this.$$host=n.hostname,this.$$port=P(n.port)||Bs[n.protocol]||null,this.$$path=void 0,this.$$hash=void 0,this.$$urlUpdatedByLocation=!1}absUrl(){return this.$$absUrl}url(t){if(y(t))return this.$$url;const e=zs.exec(t);return(e[1]||""===t)&&this.path(decodeURIComponent(e[1])),(e[2]||e[1]||""===t)&&this.search(e[3]||""),this.hash(e[5]||""),this}protocol(){return this.$$protocol}host(){return this.$$host}port(){return this.$$port}path(t){if(y(t))return this.$$path;let e=null!==t?t.toString():"";return this.$$path="/"===e.charAt(0)?e:`/${e}`,this.$$compose(),this}hash(t){return y(t)?this.$$hash:(this.$$hash=null!==t?t.toString():"",this.$$compose(),this)}replace(){return this.$$replace=!0,this}search(t,e){switch(arguments.length){case 0:return this.$$search;case 1:if(E(t)||x(t))t=t.toString(),this.$$search=et(t);else{if(!w(t))throw Ks("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");t=structuredClone(t,{}),Object.entries(t).forEach((([e,n])=>{null==n&&delete t[e]})),this.$$search=t}break;default:y(e)||null===e?delete this.$$search[t]:this.$$search[t]=e}return this.$$compose(),this}$$compose(){this.$$url=function(t,e,n){const r=function(t){const e=[];return t&&Object.entries(t).forEach((([t,n])=>{Array.isArray(n)?n.forEach((n=>{e.push(it(t,!0)+(!0===n?"":`=${it(n,!0)}`))})):e.push(it(t,!0)+(!0===n?"":`=${it(n,!0)}`))})),e.length?e.join("&"):""}(e),i=n?`#${rt(n)}`:"";return function(t){const e=t.split("/");let n=e.length;for(;n--;)e[n]=rt(e[n].replace(/%2F/g,"/"));return e.join("/")}(t)+(r?`?${r}`:"")+i}(this.$$path,this.$$search,this.$$hash),this.$$absUrl=this.$$normalizeUrl(this.$$url),this.$$urlUpdatedByLocation=!0}$$normalizeUrl(t){throw new Error(`Method not implemented ${t}`)}state(t){if(!arguments.length)return this.$$state;if(!(this instanceof Gs&&this.$$html5))throw Ks("nostate","History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API");return this.$$state=y(t)?null:t,this.$$urlUpdatedByLocation=!0,this}$$parseLinkUrl(t,e){throw new Error(`Method not implemented ${t} ${e}`)}$$parse(t){throw new Error(`Method not implemented ${t}`)}}class Gs extends Ws{constructor(t,e,n){super(t,e),this.$$html5=!0,this.basePrefix=n||""}$$parse(t){const e=Xs(this.appBaseNoFile,t);if(!E(e))throw Ks("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',t,this.appBaseNoFile);Js(e,this,!0),this.$$path||(this.$$path="/"),this.$$compose()}$$normalizeUrl(t){return this.appBaseNoFile+t.substring(1)}$$parseLinkUrl(t,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;let n,r,i;return b(n=Xs(this.appBase,t))?(r=n,i=this.basePrefix&&b(n=Xs(this.basePrefix,n))?this.appBaseNoFile+(Xs("/",n)||n):this.appBase+r):b(n=Xs(this.appBaseNoFile,t))?i=this.appBaseNoFile+n:this.appBaseNoFile===`${t}/`&&(i=this.appBaseNoFile),i&&this.$$parse(i),!!i}}class Qs extends Ws{constructor(t,e,n){super(t,e),this.hashPrefix=n}$$parse(t){const e=Xs(this.appBase,t)||Xs(this.appBaseNoFile,t);let n;y(e)||"#"!==e.charAt(0)?this.$$html5?n=e:(n="",y(e)&&(this.appBase=t,this.replace())):(n=Xs(this.hashPrefix,e),y(n)&&(n=e)),Js(n,this,!1),this.$$path=function(t,e,n){const r=/^\/[A-Z]:(\/.*)/;let i;Zs(e,n)&&(e=e.replace(n,""));if(r.exec(e))return t;return i=r.exec(t),i?i[1]:t}(this.$$path,n,this.appBase),this.$$compose()}$$normalizeUrl(t){return this.appBase+(t?this.hashPrefix+t:"")}$$parseLinkUrl(t){return to(this.appBase)===to(t)&&(this.$$parse(t),!0)}}class Ys{constructor(){this.hashPrefixConf="!",this.html5ModeConf={enabled:!1,requireBase:!0,rewriteLinks:!0}}setHashPrefix(t){this.hashPrefixConf=t}getHashPrefix(){return this.hashPrefixConf}setHtml5Mode(t){if(L(t)&&(this.html5ModeConf.enabled=t),w(t)){const e=t;b(e.enabled)&&L(e.enabled)&&(this.html5ModeConf.enabled=e.enabled),b(e.requireBase)&&L(e.requireBase)&&(this.html5ModeConf.requireBase=e.requireBase),b(e.rewriteLinks)&&(L(e.rewriteLinks)||E(e.rewriteLinks))&&(this.html5ModeConf.rewriteLinks=e.rewriteLinks)}}getHtml5Mode(){return this.html5ModeConf}$get=["$rootScope","$browser","$rootElement",(t,e,n)=>{let r,i;const s=e.baseHref(),o=e.url();let a;if(this.getHtml5Mode().enabled){if(!s&&this.getHtml5Mode().requireBase)throw Ks("nobase","$location in HTML5 mode requires a <base> tag to be present!");a=(c=o).substring(0,c.indexOf("/",c.indexOf("//")+2))+(s||"/"),i=Gs}else a=to(o),i=Qs;var c;const l=function(t){return t.substring(0,to(t).lastIndexOf("/")+1)}(a);r=new i(a,l,`#${this.getHashPrefix()}`),r.$$parseLinkUrl(o,o),r.$$state=e.state();const u=/^\s*(javascript|mailto):/i;function h(t,n){const i=r.url(),s=r.$$state;try{e.url(t,n),r.$$state=e.state()}catch(t){throw r.url(i),r.$$state=s,t}}n.addEventListener("click",(t=>{const e=this.getHtml5Mode().rewriteLinks;if(!e||t.ctrlKey||t.metaKey||t.shiftKey||2===t.which||2===t.button)return;let i=t.target;for(;"a"!==i.nodeName.toLowerCase();)if(i===n||!(i=i.parentElement))return;if(E(e)&&y(i.getAttribute(e)))return;let s=i.href;const o=i.getAttribute("href")||i.getAttribute("xlink:href");if(w(s)&&"[object SVGAnimatedString]"===s.toString()){s=Re(s.animVal).href}u.test(s)||!s||i.getAttribute("target")||t.defaultPrevented||r.$$parseLinkUrl(s,o)&&t.preventDefault()})),r.absUrl()!==o&&e.url(r.absUrl(),!0);let d=!0;e.onUrlChange(((e,n)=>{Zs(e,l)?Promise.resolve().then((()=>{const i=r.absUrl(),s=r.$$state;let o;r.$$parse(e),r.$$state=n,o=t.$broadcast("$locationChangeStart",e,i,n,s).defaultPrevented,r.absUrl()===e&&(o?(r.$$parse(i),r.$$state=s,h(i,s)):(d=!1,f(i,s)))})):window.location.href=e}));const p=()=>{if(d||r.$$urlUpdatedByLocation){r.$$urlUpdatedByLocation=!1;const s=e.url(),o=r.absUrl(),a=e.state(),c=!((n=s)===(i=o)||Re(n).href===Re(i).href)||r.$$html5&&a!==r.$$state;(d||c)&&(d=!1,setTimeout((()=>{const e=r.absUrl(),{defaultPrevented:n}=t.$broadcast("$locationChangeStart",e,s,r.$$state,a);r.absUrl()===e&&(n?(r.$$parse(s),r.$$state=a):(c&&h(e,a===r.$$state?null:r.$$state),f(s,a)))})))}var n,i;r.$$replace=!1};return p(),t.$on("$updateBrowser",p),r;function f(e,n){t.$broadcast("$locationChangeSuccess",r.absUrl(),e,r.$$state,n)}}]}function Js(t,e,n){if(/^\s*[\\/]{2,}/.test(t))throw Ks("badpath",'Invalid url "{0}".',t);const r="/"!==t.charAt(0);r&&(t=`/${t}`);const i=Re(t),s=r&&"/"===i.pathname.charAt(0)?i.pathname.substring(1):i.pathname;e.$$path=function(t,e){const n=t.split("/");let r=n.length;for(;r--;)n[r]=decodeURIComponent(n[r]),e&&(n[r]=n[r].replace(/\//g,"%2F"));return n.join("/")}(s,n),e.$$search=et(i.search),e.$$hash=decodeURIComponent(i.hash),e.$$path&&"/"!==e.$$path.charAt(0)&&(e.$$path=`/${e.$$path}`)}function Zs(t,e){return t.slice(0,e.length)===e}function Xs(t,e){if(Zs(e,t))return e.substring(t.length)}function to(t){const e=t.indexOf("#");return-1===e?t:t.substring(0,e)}class eo{constructor(){this.debug=!1,this._override=null}setLogger(t){this._override=t}formatError(t){return k(t)&&(t.stack?t=t.message&&-1===t.stack.indexOf(t.message)?`Error: ${t.message}\n${t.stack}`:t.stack:t.sourceURL&&(t=`${t.message}\n${t.sourceURL}:${t.line}`)),t}consoleLog(t){const e=window.console||{},n=e[t]||e.log||(()=>{});return(...t)=>{const r=t.map((t=>this.formatError(t)));return n.apply(e,r)}}$get(){return this._override?this._override():{log:this.consoleLog("log"),info:this.consoleLog("info"),warn:this.consoleLog("warn"),error:this.consoleLog("error"),debug:(()=>{const t=this.consoleLog("debug");return(...e)=>{this.debug&&t.apply(this,e)}})()}}}let no,ro,io=0;const so=[];class oo{constructor(){this.rootScope=ao()}$get=["$exceptionHandler","$parse",(t,e)=>(ro=t,no=e,this.rootScope)]}function ao(t={},e){if(C(t)||!0===t[co]||!0===(t.constructor&&t.constructor[co]))return t;if("object"==typeof t){const n=new Proxy(t,e||new lo);for(const e in t)if(vt(t,e))try{if(t.constructor.$nonscope&&Array.isArray(t.constructor.$nonscope)&&t.constructor.$nonscope.includes(e)||t.$nonscope&&Array.isArray(t.$nonscope)&&t.$nonscope.includes(e))continue;t[e]=ao(t[e],n.$handler)}catch{}return n}return t}const co="$nonscope";class lo{constructor(t,e){this.context=t?t.context?t.context:t:void 0,this.watchers=t?t.watchers:new Map,this.$$listeners=new Map,this.foreignListeners=t?t.foreignListeners:new Map,this.foreignProxies=t?t.foreignProxies:new Set,this.objectListeners=t?t.objectListeners:new WeakMap,this.functionListeners=t?t.functionListeners:new Map,this.$proxy=null,this.$handler=this,this.$target=null,this.$value=null,this.$children=[],this.$id=(io+=1,io),this.$root=t?t.$root:this,this.$parent=e||(this.$root===this?null:t),this.$$asyncQueue=[],this.filters=[],this.$$destroyed=!1,this.scheduled=[]}set(t,e,n,r){if("undefined"===e)throw new Error("Attempting to set undefined property");if(t.constructor?.$nonscope&&Array.isArray(t.constructor.$nonscope)&&t.constructor.$nonscope.includes(e)||t.$nonscope&&Array.isArray(t.$nonscope)&&t.$nonscope.includes(e))return t[e]=n,!0;this.$proxy=r,this.$target=t;const i=t[e];if(void 0!==i&&Number.isNaN(i)&&Number.isNaN(n))return!0;if(i&&i[d]){if(Array.isArray(n)){if(i!==n){const t=this.watchers.get(e);t&&this.#t(t);const n=this.foreignListeners.get(e);n&&this.#t(n)}return this.objectListeners.get(t[e])&&this.objectListeners.delete(t[e]),t[e]=ao(n,this),this.objectListeners.set(t[e],[e]),!0}if(w(n)){if(vt(t,e)&&Object.keys(i).filter((t=>!n[t])).forEach((t=>{delete i[t]})),i!==n){const t=this.watchers.get(e);t&&this.#t(t);const r=this.foreignListeners.get(e);r&&this.#t(r),this.#e(n)}return t[e]=ao(n,this),!0}if(y(n)){let n=!1;if(Object.keys(i.$target).forEach((t=>{i.$target[t]?.[d]&&(n=!0),delete i[t]})),t[e]=void 0,!n){let t=this.watchers.get(e);t&&this.#t(t)}return!0}if(b(n)){t[e]=n;let i=this.watchers.get(e);if(i&&this.#t(i),Array.isArray(t)&&this.objectListeners.has(r)&&"length"!==e){this.objectListeners.get(r).forEach((t=>{const e=this.watchers.get(t);e&&this.#t(e)}))}return!0}return!0}if(y(t[e])&&p(n)&&(this.foreignProxies.add(n),t[e]=n,!this.watchers.has(e)))return!0;if(y(n)?t[e]=n:t[e]=ao(n,this),i!==n){let r=this.$target,s=[];if(y(i)&&w(t[e])){this.objectListeners.has(t[e])||this.objectListeners.set(t[e],[e]);for(const t of Object.keys(n))this.watchers.get(t)?.forEach((t=>s.push(t))),r=n}Array.isArray(t)&&this.watchers.get("length")?.forEach((t=>s.push(t))),this.watchers.get(e)?.forEach((t=>s.push(t))),s.length>0&&this.#t(s,(t=>t.filter((t=>{if(!t.watchProp)return!0;const e=t.watchProp.split(".").slice(0,-1).join("."),n=no(e)(t.originalTarget)?.$handler;return r===n?.$target}))));let o=this.foreignListeners.get(e);!o&&this.$parent?.foreignListeners&&(o=this.$parent.foreignListeners.get(e)),o&&(this.$target.$$hashKey&&(o=o.filter((t=>!!t.originalTarget.$$hashKey&&t.originalTarget.$$hashKey==this.$target.$$hashKey))),this.#t(o))}if(this.objectListeners.has(r)&&"length"!==e){this.objectListeners.get(r).forEach((t=>{const e=this.watchers.get(t);e&&this.scheduled!==e&&this.#t(e)}))}return!0}get(t,e,n){if("$$watchersCount"===e)return function(t){const e=uo(t).add(t.$id);return Array.from(t.watchers.values()).reduce(((t,n)=>t+n.reduce(((t,n)=>t+(e.has(n.scopeId)?1:0)),0)),0)}(this);if(e===d)return!0;if(t[e]&&p(t[e])?this.$proxy=t[e]:this.$proxy=n,this.propertyMap={$watch:this.$watch.bind(this),$new:this.$new.bind(this),$newIsolate:this.$newIsolate.bind(this),$destroy:this.$destroy.bind(this),$eval:this.$eval.bind(this),$apply:this.$apply.bind(this),$postUpdate:this.$postUpdate.bind(this),$isRoot:this.#n.bind(this),$target:t,$proxy:this.$proxy,$on:this.$on.bind(this),$emit:this.$emit.bind(this),$broadcast:this.$broadcast.bind(this),$transcluded:this.$transcluded.bind(this),$handler:this,$parent:this.$parent,$root:this.$root,$children:this.$children,$id:this.$id,$merge:this.$merge.bind(this),$getById:this.$getById.bind(this)},Array.isArray(t)&&["pop","shift","unshift"].includes(e)){if(this.objectListeners.has(n)){this.objectListeners.get(this.$proxy).forEach((t=>{const e=this.watchers.get(t);e&&(this.scheduled=e)}))}"unshift"===e&&this.#t(this.scheduled)}return vt(this.propertyMap,e)?(this.$target=t,this.propertyMap[e]):t[e]}deleteProperty(t,e){if(t[e]&&t[e][d]){t[e]=void 0;let n=this.watchers.get(e);if(n&&this.#t(n),this.objectListeners.has(this.$proxy)){this.objectListeners.get(this.$proxy).forEach((t=>{n=this.watchers.get(t),n&&this.#t(n)}))}return this.scheduled&&(this.#t(this.scheduled),this.scheduled=[]),!0}if(delete t[e],this.objectListeners.has(this.$proxy)){this.objectListeners.get(this.$proxy).forEach((t=>{const e=this.watchers.get(t);e&&this.#t(e)}))}else{const n=this.watchers.get(e);n&&this.#t(n,t[e])}return!0}#e(t){y(t)||Object.keys(t).forEach((e=>{const n=this.watchers.get(e);n&&this.#t(n),w(t[e])&&this.#e(t[e])}))}#t(t,e=t=>t){Promise.resolve().then((()=>{let n=0,r=e(t);for(;n<r.length;){const t=r[n];t.foreignListener?t.foreignListener.#r(t,this.$target):this.#r(t,this.$target),n++}}))}$watch(t,e,n=!1){at(E(t),"Watched property required"),t=t.trim();const r=no(t);if(r.constant)return e&&Promise.resolve().then((()=>{let t=r();for(;O(t);)t=t();e(t,this.$target)})),()=>{};const i={originalTarget:this.$target,listenerFn:e,watchFn:r,scopeId:this.$id,id:m(),property:[]};let s=r.decoratedNode.body[0].expression.name,o=[],a=r.decoratedNode.body[0].expression.type;switch(a){case zr:case Kr:throw new Error("Unsupported type "+a);case Wr:if(!e){let t=r(this.$target);for(;O(t);)t=t(this.$target);return Promise.resolve().then(t),()=>{}}s=r.decoratedNode.body[0].expression.left.name;break;case Gr:s=r.decoratedNode.body[0].expression.toWatch[0]?.test?.name,i.property.push(s);break;case Qr:{let t=[];return t.push(r.decoratedNode.body[0].expression.left.toWatch[0]?.name),t.push(r.decoratedNode.body[0].expression.right.toWatch[0]?.name),t.forEach((t=>{this.#i(t,i)})),()=>{t.forEach((t=>{this.#s(t,i.id)}))}}case Yr:{let t=r.decoratedNode.body[0].expression.toWatch[0];if(s=t.property?t.property.name:t.name,!s)throw new Error("Unable to determine key");i.property.push(s);break}case Jr:{let t=r.decoratedNode.body[0].expression.toWatch[0];if(s=t.property?t.property.name:t.name,!s)throw new Error("Unable to determine key");i.property.push(s);break}case Zr:{let t=[];return r.decoratedNode.body[0].expression.toWatch.forEach((e=>{b(e)&&t.push(e.name)})),t.forEach((t=>{this.#i(t,i),this.#t([i])})),()=>{t.forEach((t=>{this.#s(t,i.id)}))}}case Xr:if(s=r.decoratedNode.body[0].expression.property.name,s||(s=r.decoratedNode.body[0].expression.object.name),i.property.push(s),t!==s){i.watchProp=t;let e=no(t.split(".").slice(0,-1).join("."))(i.originalTarget);if(e&&this.foreignProxies.has(e))return e.$handler.#o(s,i),e.$handler.#t([i]),()=>e.$handler.#s(s,i.id)}break;case ti:i.property.push(r.decoratedNode.body[0].expression.name);break;case ei:throw new Error("Unsupported type "+a);case ni:{let t=r.decoratedNode.body[0].expression.elements.map((t=>11===t.type?t.value:t.toWatch[0].name)).filter((t=>!!t));return t.forEach((t=>{this.#i(t,i),this.#t([i])})),()=>{t.forEach((t=>{this.#s(t,i.id)}))}}case ri:throw new Error("Unsupported type "+a);case ii:r.decoratedNode.body[0].expression.properties.forEach((t=>{!1===t.key.isPure?(o.push(t.key.name),i.property.push(s)):t.value.name?(o.push(t.value.name),i.property.push(s)):(s=r.decoratedNode.body[0].expression.properties[0].key.name,i.property.push(s))}));break;case si:case oi:case ai:throw new Error("Unsupported type "+a)}let c=i.watchFn(this.$target);return w(c)&&this.objectListeners.set(c,[s]),o.length>0?o.forEach((t=>{this.#i(t,i)})):this.#i(s,i),n||this.#t([i]),()=>{if(o.length>0){let t=!0;return o.forEach((e=>{this.#s(e,i.id)||(t=!1)})),t}return this.#s(s,i.id)}}$new(t){let e;t?(Object.getPrototypeOf(t)===Object.prototype||Object.getPrototypeOf(t)==this.$target?Object.setPrototypeOf(t,this.$target):Object.setPrototypeOf(Object.getPrototypeOf(t)||t,this.$target),e=t):e=Object.create(this.$target);const n=new Proxy(e,new lo(this));return this.$children.push(n),n}$newIsolate(t){let e=t?Object.create(t):Object.create(null);const n=new Proxy(e,new lo(this,this.$root));return this.$children.push(n),n}$transcluded(t){let e=Object.create(this.$target);const n=new Proxy(e,new lo(this,t));return this.$children.push(n),n}#i(t,e){this.watchers.has(t)?this.watchers.get(t).push(e):this.watchers.set(t,[e])}#o(t,e){this.foreignListeners.has(t)?this.foreignListeners.get(t).push(e):this.foreignListeners.set(t,[e])}#s(t,e){const n=this.watchers.get(t);if(!n)return!1;const r=n.findIndex((t=>t.id===e));return-1!==r&&(n.splice(r,1),n.length?this.watchers.set(t,n):this.watchers.delete(t),!0)}$eval(t,e){const n=no(t)(this.$target,e);return y(n)||null===n||n.name===Object.hasOwnProperty.name?n:O(n)?n():Number.isNaN(n)?0:n}$merge(t){Object.entries(t).forEach((([t,e])=>{this.set(this.$target,t,e,this.$proxy)}))}$apply(t){try{return no(t)(this.$proxy)}catch(t){ro(t)}}$on(t,e){let n=this.$$listeners.get(t);return n||(n=[],this.$$listeners.set(t,n)),n.push(e),()=>{const r=n.indexOf(e);-1!==r&&(n.splice(r,1),0==n.length&&this.$$listeners.delete(t))}}$emit(t,...e){return this.#a({name:t,event:void 0,broadcast:!1},...e)}$broadcast(t,...e){return this.#a({name:t,event:void 0,broadcast:!0},...e)}#a({name:t,event:e,broadcast:n},...r){if(!n&&!this.$$listeners.has(t))return this.$parent?this.$parent.$handler.#a({name:t,event:e,broadcast:n},...r):void 0;e?e.currentScope=this.$target:e=e||{name:t,targetScope:this.$target,currentScope:this.$target,stopped:!1,stopPropagation(){e.stopped=!0},preventDefault(){e.defaultPrevented=!0},defaultPrevented:!1};const i=Q([e],[e].concat(r),1);let s=this.$$listeners.get(t);if(s){let t=s.length;for(let e=0;e<t;e++)try{s[e].apply(null,i),s.length!==t&&(s.length<t&&e--,t=s.length)}catch(t){ro(t)}}return e.currentScope=null,e.stopped?e:n?(this.$children.length>0&&this.$children.forEach((i=>{e=i.$handler.#a({name:t,event:e,broadcast:n},...r)})),e):this.$parent?this.$parent.#a({name:t,event:e,broadcast:n},...r):e}#n(){return this.$root==this}$postUpdate(t){so.push(t)}$destroy(){if(!this.$$destroyed){if(this.$broadcast("$destroy"),Array.from(this.watchers.entries()).forEach((([t,e])=>{this.watchers.set(t,e.filter((t=>t.scopeId!==this.$id)))})),this.#n())this.watchers.clear();else{let t=this.$parent.$children.filter((t=>t.$id==this.$id))[0];this.$parent.$children.splice(this.$parent.$children.indexOf(t),1)}this.$$listeners.clear(),this.$$destroyed=!0}}#r(t,e){const{originalTarget:n,listenerFn:r,watchFn:i}=t;try{let t=i(n);for(y(t)&&(t=i(e)),O(t)&&(t=t(n)),Array.isArray(t)&&t.forEach(((e,r)=>{O(e)&&(t[r]=e(n))})),r(t,n),this.$$asyncQueue.forEach((t=>{t.handler.$id==this.$id&&Promise.resolve().then(t.fn(t.handler,t.locals))}));so.length;)so.shift()()}catch(t){ro(t)}}$getById(t){if(E(t)&&(t=parseInt(t,10)),this.$id===t)return this;{let e;for(const n of this.$children){let r=n.$getById(t);if(r){e=r;break}}return e}}}function uo(t){const e=new Set([t.$id]);return t.$children?.forEach((t=>{uo(t).forEach((t=>e.add(t)))})),e}class ho{$get=["$log",t=>new po(t)]}class po{constructor(t){this.log=t,this.taskCounts={},this.taskCallbacks=[],this.ALL_TASKS_TYPE="$$all$$",this.DEFAULT_TASK_TYPE="$$default$$"}completeTask(t,e=this.DEFAULT_TASK_TYPE){try{t()}finally{this.taskCounts[e]&&(this.taskCounts[e]--,this.taskCounts[this.ALL_TASKS_TYPE]--);const t=this.taskCounts[e],n=this.taskCounts[this.ALL_TASKS_TYPE];if(!n||!t){const t=n?()=>this.getLastCallbackForType(e):this.getLastCallback.bind(this);let r;for(;r=t();)try{r()}catch(t){this.log.error(t)}}}}incTaskCount(t=this.DEFAULT_TASK_TYPE){this.taskCounts[t]=(this.taskCounts[t]||0)+1,this.taskCounts[this.ALL_TASKS_TYPE]=(this.taskCounts[this.ALL_TASKS_TYPE]||0)+1}notifyWhenNoPendingTasks(t,e=this.ALL_TASKS_TYPE){this.taskCounts[e]?this.taskCallbacks.push({type:e,cb:t}):t()}getLastCallback(){const t=this.taskCallbacks.pop();return t?t.cb:void 0}getLastCallbackForType(t){for(let e=this.taskCallbacks.length-1;e>=0;--e){const n=this.taskCallbacks[e];if(n.type===t)return this.taskCallbacks.splice(e,1),n.cb}}}const fo=dt("$templateRequest");function $o(){let t;this.httpOptions=function(e){return e?(t=e,this):t},this.$get=["$exceptionHandler","$templateCache","$http","$sce",function(e,n,r,i){function s(o,a){if(s.totalPendingRequests++,!E(o)||!n.has(o))try{if(!(o=i.getTrustedResourceUrl(o)))return Promise.reject("Template not found")}catch(t){return Promise.reject(t.message)}let c=r.defaults&&r.defaults.transformResponse;return Array.isArray(c)?c=c.filter((function(t){return t!==Ps})):c===Ps&&(c=null),r.get(o,M({cache:n,transformResponse:c},t)).finally((function(){s.totalPendingRequests--})).then((function(t){return n.set(o,t.data),t.data}),(function(t){a||(t=fo("tpload","Failed to load template: {0} (HTTP status: {1} {2})",o,t.status,t.statusText),e(t));return Promise.reject(t)}))}return s.totalPendingRequests=0,s}]}class mo{constructor(){this._aHrefSanitizationTrustedUrlList=/^\s*(https?|s?ftp|mailto|tel|file):/,this._imgSrcSanitizationTrustedUrlList=/^\s*((https?|ftp|file|blob):|data:image\/)/}aHrefSanitizationTrustedUrlList(t){return b(t)?(this._aHrefSanitizationTrustedUrlList=t,this):this._aHrefSanitizationTrustedUrlList}imgSrcSanitizationTrustedUrlList(t){return b(t)?(this._imgSrcSanitizationTrustedUrlList=t,this):this._imgSrcSanitizationTrustedUrlList}$get(){return(t,e)=>{if(!t)return t;const n=e?this._imgSrcSanitizationTrustedUrlList:this._aHrefSanitizationTrustedUrlList,r=Re(t.trim()).href;return""===r||r.match(n)?t:`unsafe:${r}`}}}const go="ng-active",vo="ng-inactive";class yo{constructor(t,e,n,r){this.$element=t,this.$scope=e,this.$attrs=n,this.$animate=r,this.latestKey=0,this.nextAttachId=0,this.messages={},this.renderLater=!1,this.cachedCollection=null,this.head=void 0,this.default=void 0,this.$scope.$watch(this.$attrs.ngMessages||this.$attrs.for,this.render.bind(this))}getAttachId(){return this.nextAttachId++}render(t={}){this.renderLater=!1,this.cachedCollection=t;const e=wo(this.$scope,this.$attrs.ngMessagesMultiple)||wo(this.$scope,this.$attrs.multiple),n=[],r={};let i=0,s=this.head,o=!1,a=0;for(;s;){a++;const c=s.message;let l=!1;o||Object.entries(t).forEach((([t,e])=>{if(Eo(e)&&!l&&(i++,c.test(t))){if(r[t])return;r[t]=!0,l=!0,c.attach()}})),l?o=!e:n.push(c),s=s.next}n.forEach((t=>{t.detach()}));const c=n.length!==a,l=this.default&&!c&&i>0;l?this.default.attach():this.default&&this.default.detach(),c||l?this.$animate.setClass(this.$element,go,vo):this.$animate.setClass(this.$element,vo,go)}reRender(){this.renderLater||(this.renderLater=!0,Promise.resolve().then((()=>{this.renderLater&&this.cachedCollection&&this.render(this.cachedCollection)})))}register(t,e,n){if(n)this.default=e;else{const n=this.latestKey.toString();this.messages[n]={message:e},this.insertMessageNode(this.$element,t,n),t.$$ngMessageNode=n,this.latestKey++}this.reRender()}deregister(t,e){if(e)delete this.default;else{const e=t.$$ngMessageNode;delete t.$$ngMessageNode,this.removeMessageNode(this.$element,t,e),delete this.messages[e]}this.reRender()}findPreviousMessage(t,e){let n=e;const r=[];for(;n&&n!==t;){const t=n.$$ngMessageNode;if(t&&t.length)return this.messages[t];n.childNodes.length&&-1===r.indexOf(n)?(r.push(n),n=n.childNodes[n.childNodes.length-1]):n.previousSibling?n=n.previousSibling:(n=n.parentNode,r.push(n))}}insertMessageNode(t,e,n){const r=this.messages[n];if(this.head){const n=this.findPreviousMessage(t,e);n?(r.next=n.next,n.next=r):(r.next=this.head,this.head=r)}else this.head=r}removeMessageNode(t,e,n){const r=this.messages[n];if(!r)return;const i=this.findPreviousMessage(t,e);i?i.next=r.next:this.head=r.next}}function bo(t){return{require:"ngMessages",restrict:"AE",controller:(e,n,r)=>new yo(e,n,r,t)}}function wo(t,e){return E(e)&&0===e.length||Eo(t.$eval(e))}function Eo(t){return E(t)?t.length:!!t}function Co(t,e){return{restrict:"AE",require:"^^ngMessages",link(n,r,i){const s=i.ngMessagesInclude||i.src;t(s).then((t=>{n.$$destroyed||E(t)&&!t.trim()||e(t)(n,(t=>{r.after(t)}))}))}}}bo.$inject=["$animate"],Co.$inject=["$templateRequest","$compile"];const So=ko(!1),xo=ko(!1),Ao=ko(!0);function ko(t){function e(e){return{restrict:"AE",transclude:"element",priority:1,terminal:!0,require:"^^ngMessages",link(n,r,i,s,o){let a,c,l,u,h,d;if(!t){a=r,l=i.ngMessage||i.when,u=i.ngMessageExp||i.whenExp;const t=function(t){c=t?Array.isArray(t)?t:t.split(/[\s,]+/):null,s.reRender()};u?(t(n.$eval(u)),n.$watch(u,t)):t(l)}s.register(a,d={test:t=>function(t,e){if(t)return Array.isArray(t)?t.indexOf(e)>=0:vt(t,e)}(c,t),attach(){h||o(((n,i)=>{e.enter(n,null,r),h=n;const o=h.$$attachId=s.getAttachId();h.addEventListener("$destroy",(()=>{h&&h.$$attachId===o&&(s.deregister(a,t),d.detach()),i.$destroy()}))}))},detach(){if(h){const t=h;h=null,e.leave(t)}}},t),n.$on("$destroy",(()=>{s.deregister(a,t)}))}}}return e.$inject=["$animate"],e}const Oo="ngAriaDisable",_o=["BUTTON","A","INPUT","TEXTAREA","SELECT","DETAILS","SUMMARY"],To=function(t,e){if(-1!==e.indexOf(t.nodeName))return!0};function jo(){let t={ariaHidden:!0,ariaChecked:!0,ariaReadonly:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaValue:!0,tabindex:!0,bindKeydown:!0,bindRoleForClick:!0};function e(e,n,r,i){return function(s,o,a){if(vt(a,Oo))return;const c=a.$normalize(n);!t[c]||To(o,r)||a[c]||s.$watch(a[e],(t=>{t=i?!t:!!t,o.setAttribute(n,t)}))}}this.config=function(e){t=M(t,e)},this.$get=function(){return{config:e=>t[e],$$watchExpr:e}}}function Lo(t){return t.$$watchExpr("ngDisabled","aria-disabled",_o,!1)}function Ro(t){return t.$$watchExpr("ngShow","aria-hidden",[],!0)}function No(){return{restrict:"A",require:"?ngMessages",link(t,e,n){vt(n,Oo)||e.hasAttribute("aria-live")||e.setAttribute("aria-live","assertive")}}}function Vo(t,e){return{restrict:"A",compile(n,r){if(vt(r,Oo))return;const i=e(r.ngClick);return function(e,n,r){To(n,_o)||(t.config("bindRoleForClick")&&!n.hasAttribute("role")&&n.setAttribute("role","button"),t.config("tabindex")&&!n.hasAttribute("tabindex")&&n.setAttribute("tabindex","0"),!t.config("bindKeydown")||r.ngKeydown||r.ngKeypress||r.ngKeyup||n.addEventListener("keydown",(t=>{const n=parseInt(t.key,10);13!==n&&32!==n||(-1!==_o.indexOf(t.target.nodeName)||t.target.isContentEditable||t.preventDefault(),e.$apply((function(){i(e,{$event:t})})))})))}}}}function Mo(t){return t.$$watchExpr("ngRequired","aria-required",_o,!1)}function Po(t){return t.$$watchExpr("ngChecked","aria-checked",_o,!1)}function Do(t){return t.$$watchExpr("ngValue","aria-checked",_o,!1)}function Uo(t){return t.$$watchExpr("ngHide","aria-hidden",[],!1)}function Io(t){return t.$$watchExpr("ngReadonly","aria-readonly",_o,!1)}function Ho(t){function e(e,n,r,i){return t.config(n)&&!r.getAttribute(e)&&(i||!To(r,_o))&&("hidden"!==r.getAttribute("type")||"INPUT"!==r.nodeName)}function n(t,e){return!e.getAttribute("role")&&e.getAttribute("type")===t&&!To(e,_o)}return{restrict:"A",require:"ngModel",priority:200,compile(r,i){if(vt(i,Oo))return;const s=function(t){const{type:e}=t,{role:n}=t;return"checkbox"===(e||n)||"menuitemcheckbox"===n?"checkbox":"radio"===(e||n)||"menuitemradio"===n?"radio":"range"===e||"progressbar"===n||"slider"===n?"range":""}(i);return{post(r,i,o,a){const c=e("tabindex","tabindex",i,!1);switch(s){case"radio":case"checkbox":n(s,i)&&i.setAttribute("role",s),e("aria-checked","ariaChecked",i,!1)&&a.$watch("$modelValue","radio"===s?function(){i.setAttribute("aria-checked",(o.value==a.$viewValue).toString())}:function(){i.setAttribute("aria-checked",(!a.$isEmpty(a.$viewValue)).toString())}),c&&i.setAttribute("tabindex",0);break;case"range":if(n(s,i)&&i.setAttribute("role","slider"),t.config("ariaValue")){const t=!i.hasAttribute("aria-valuemin")&&(vt(o,"min")||vt(o,"ngMin")),e=!i.hasAttribute("aria-valuemax")&&(vt(o,"max")||vt(o,"ngMax")),n=!i.hasAttribute("aria-valuenow");t&&o.$observe("min",(t=>{i.setAttribute("aria-valuemin",t)})),e&&o.$observe("max",(t=>{i.setAttribute("aria-valuemax",t)})),n&&a.$watch("$modelValue",(t=>{i.setAttribute("aria-valuenow",t)}))}c&&i.setAttribute("tabindex",0)}!vt(o,"ngRequired")&&a.$validators.required&&e("aria-required","ariaRequired",i,!1)&&o.$observe("required",(()=>{i.setAttribute("aria-required",(!!o.required).toString())})),e("aria-invalid","ariaInvalid",i,!0)&&a.$watch("$invalid",(t=>{i.setAttribute("aria-invalid",(!!t).toString())}))}}}}}function Fo(t){return function(e,n,r){vt(r,Oo)||!t.config("tabindex")||n.hasAttribute("tabindex")||To(n,_o)||n.setAttribute("tabindex",0)}}Lo.$inject=[Xt.$aria],Ro.$inject=[Xt.$aria],Vo.$inject=[Xt.$aria,Xt.$parse],Mo.$inject=[Xt.$aria],Po.$inject=["$aria"],Do.$inject=[Xt.$aria],Uo.$inject=[Xt.$aria],Io.$inject=[Xt.$aria],Ho.$inject=[Xt.$aria],Fo.$inject=[Xt.$aria];const qo="$$animateCss",Bo=1e3,zo={transitionDuration:Si,transitionDelay:Ci,transitionProperty:pi+vi,animationDuration:Ei,animationDelay:wi,animationIterationCount:$i+"IterationCount"},Ko={transitionDuration:Si,transitionDelay:Ci,animationDuration:Ei,animationDelay:wi};function Wo(t,e){return[e?wi:Ci,`${t}s`]}function Go(t,e){const n=Object.create(null),r=window.getComputedStyle(t)||{};return Object.entries(e).forEach((([t,e])=>{let i=r[e];if(i){const e=i.charAt(0);("-"===e||"+"===e||e>=0)&&(i=function(t){let e=0;return t.split(/\s*,\s*/).forEach((t=>{"s"===t.charAt(t.length-1)&&(t=t.substring(0,t.length-1)),t=parseFloat(t)||0,e=e?Math.max(t,e):t})),e}(i)),0===i&&(i=null),n[t]=i}})),n}function Qo(t){return 0===t||null!=t}function Yo(t,e){let n=pi,r=`${t}s`;return e?n+=gi:r+=" linear all",[n,r]}function Jo(t,e,n){n.forEach((n=>{t[n]=b(t[n])?t[n]:e.style.getPropertyValue(n)}))}function Zo(){this.$get=["$$AnimateRunner","$$animateCache","$$rAFScheduler",function(t,e,n){const r=function(t,e){e.addClass&&(t.classList.add(...e.addClass.trim().split(" ")),e.addClass=null),e.removeClass&&(t.classList.remove(...e.removeClass.trim().split(" ")),e.removeClass=null)};const i=[];function s(t){i.push(t),n.waitUntilQuiet((()=>{e.flush();const t=document.body.offsetWidth+1;for(let e=0;e<i.length;e++)i[e](t);i.length=0}))}function o(t,n,r){const i=function(t,n,r,i){let s=e.get(n);s||(s=Go(t,i),"infinite"===s.animationIterationCount&&(s.animationIterationCount=1));const o=r||s.transitionDuration>0||s.animationDuration>0;return e.put(n,s,o),s}(t,n,r,zo),s=i.animationDelay,o=i.transitionDelay;return i.maxDelay=s&&o?Math.max(s,o):s||o,i.maxDuration=Math.max(i.animationDuration*i.animationIterationCount,i.transitionDuration),i}return function(n,i){let a,c=i||{};c.$$prepared||(c=_i(structuredClone(c)));const l={},u=n;if(!u||!u.parentNode)return q();const h=[],d=function(t){const e={};return t&&(t.to||t.from)&&(e.to=t.to,e.from=t.from),e}(c);let p,f,$,m,g,v,y,b,w,E;const C=[];if(0===c.duration)return q();const S=c.event&&Array.isArray(c.event)?c.event.join(" "):c.event,x=S&&c.structural;let A="",k="";x?A=ki(S,"ng-",!0):S&&(A=S),c.addClass&&(k+=ki(c.addClass,ci)),c.removeClass&&(k.length&&(k+=" "),k+=ki(c.removeClass,li)),c.applyClassesEarly&&k.length&&r(n,c);let O=[A,k].join(" ").trim();const _=d.to&&Object.keys(d.to).length>0;if(!((c.keyframeStyle||"").length>0)&&!_&&!O)return q();let T,j,L=e.cacheKey(u,S,c.addClass,c.removeClass);if(e.containsCachedAnimationWithoutDuration(L))return O=null,q();if(c.stagger>0){const t=parseFloat(c.stagger);T={transitionDelay:t,animationDelay:t,transitionDuration:0,animationDuration:0}}else T=function(t,n,r,i){let s;const o=`stagger-${r}`;if(e.count(r)>0&&(s=e.get(o),!s)){const r=ki(n,"-stagger");t.className+=` ${r}`,s=Go(t,i),s.animationDuration=Math.max(s.animationDuration,0),s.transitionDuration=Math.max(s.transitionDuration,0),t.classList.remove(r),e.put(o,s,!0)}return s||{}}(u,O,L,Ko);if(c.$$skipPreparationClasses||n.classList.add(...O.split(" ").filter((t=>""!==t))),c.transitionStyle){const t=[pi,c.transitionStyle];Vi(u,t),h.push(t)}if(c.duration>=0){j=u.style[pi].length>0;const t=Yo(c.duration,j);Vi(u,t),h.push(t)}if(c.keyframeStyle){const t=[$i,c.keyframeStyle];Vi(u,t),h.push(t)}const R=T?c.staggerIndex>=0?c.staggerIndex:e.count(L):0,N=0===R;N&&!c.skipBlocking&&Xo(u,9999);let V=o(u,L,!x),M=V.maxDelay;v=Math.max(M,0),b=V.maxDuration;const P={};if(P.hasTransitions=V.transitionDuration>0,P.hasAnimations=V.animationDuration>0,P.hasTransitionAll=P.hasTransitions&&"all"===V.transitionProperty,P.applyTransitionDuration=_&&(P.hasTransitions&&!P.hasTransitionAll||P.hasAnimations&&!P.hasTransitions),P.applyAnimationDuration=c.duration&&P.hasAnimations,P.applyTransitionDelay=Qo(c.delay)&&(P.applyTransitionDuration||P.hasTransitions),P.applyAnimationDelay=Qo(c.delay)&&P.hasAnimations,P.recalculateTimingStyles=k.length>0,(P.applyTransitionDuration||P.applyAnimationDuration)&&(b=c.duration?parseFloat(c.duration):b,P.applyTransitionDuration&&(P.hasTransitions=!0,V.transitionDuration=b,j=u.style[pi+vi].length>0,h.push(Yo(b,j))),P.applyAnimationDuration&&(P.hasAnimations=!0,V.animationDuration=b,h.push([Ei,`${b}s`]))),0===b&&!P.recalculateTimingStyles)return q();let D=ki(O,ui);return null!=c.delay&&("boolean"!=typeof c.delay&&(a=parseFloat(c.delay),v=Math.max(a,0)),P.applyTransitionDelay&&h.push(Wo(a)),P.applyAnimationDelay&&h.push(Wo(a,!0))),null==c.duration&&V.transitionDuration>0&&(P.recalculateTimingStyles=P.recalculateTimingStyles||N),y=v*Bo,w=b*Bo,c.skipBlocking||(P.blockTransition=V.transitionDuration>0,P.blockKeyframeAnimation=V.animationDuration>0&&T.animationDelay>0&&0===T.animationDuration),c.from&&(c.cleanupStyles&&Jo(l,u,Object.keys(c.from)),ji(0,c)),P.blockTransition||P.blockKeyframeAnimation?F(b):c.skipBlocking||Xo(u,!1),{$$willAnimate:!0,end:U,start(){if(!p)return g={end:U,cancel:I,resume:null,pause:null},m=new t(g),s(z),m}};function U(){H()}function I(){H(!0)}function H(t){if(p||$&&f)return;p=!0,f=!1,O&&!c.$$skipPreparationClasses&&n.classList.remove(...O.split(" ")),D=ki(O,ui),D&&n.classList.remove(...D.split(" ")),Ni(u,!1),Xo(u,!1),h.forEach((t=>{u.style[t[0]]=""})),r(n,c),Ti(n,c),Object.keys(l).length&&Object.entries(l).forEach((([t,e])=>{e?u.style.setProperty(t,e):u.style.removeProperty(t)})),c.onDone&&c.onDone(),C&&C.length&&n.off(C.join(" "),B);const e=Pt(n,qo);e&&(clearTimeout(e[0].timer),Tt(n,qo)),m&&m.complete(!t)}function F(t){P.blockTransition&&Xo(u,t),P.blockKeyframeAnimation&&Ni(u,!!t)}function q(){return m=new t({end:U,cancel:I}),s((()=>{})),H(),{$$willAnimate:!1,start:()=>m,end:U}}function B(t){t.stopPropagation();const e=t.originalEvent||t;if(e.target!==u)return;const n=e.$manualTimeStamp||Date.now(),r=parseFloat(e.elapsedTime.toFixed(3));Math.max(n-E,0)>=y&&r>=b&&($=!0,H())}function z(){if(p)return;if(!u.parentNode)return void H();const t=function(t){if($)f&&t&&(f=!1,H());else if(f=!t,V.animationDuration){const t=Ni(u,f);f?h.push(t):function(t,e){const n=t.indexOf(e);e>=0&&t.splice(n,1)}(h,t)}},i=R>0&&(V.transitionDuration&&0===T.transitionDuration||V.animationDuration&&0===T.animationDuration)&&Math.max(T.animationDelay,T.transitionDelay);function s(){if(p)return;if(F(!1),h.forEach((t=>{const e=t[0],n=t[1];u.style[e]=n})),r(n,c),n.classList.add(...D.split(" ").filter((t=>""!==t))),P.recalculateTimingStyles){if(L=e.cacheKey(u,S,c.addClass,c.removeClass),V=o(u,L,!1),M=V.maxDelay,v=Math.max(M,0),b=V.maxDuration,0===b)return void H();P.hasTransitions=V.transitionDuration>0,P.hasAnimations=V.animationDuration>0}if(P.applyAnimationDelay&&(M="boolean"!=typeof c.delay&&Qo(c.delay)?parseFloat(c.delay):M,v=Math.max(M,0),V.animationDelay=M,a=Wo(M,!0),h.push(a),u.style[a[0]]=a[1]),y=v*Bo,w=b*Bo,c.easing){let t;const e=c.easing;P.hasTransitions&&(t=pi+bi,h.push([t,e]),u.style[t]=e),P.hasAnimations&&(t=$i+bi,h.push([t,e]),u.style[t]=e)}V.transitionDuration&&C.push(fi),V.animationDuration&&C.push(mi),E=Date.now();const t=y+1.5*w,i=E+t,s=Pt(n,qo)||[];let f=!0;if(s.length){const t=s[0];f=i>t.expectedEndTime,f?clearTimeout(t.timer):s.push(H)}if(f){const e=setTimeout(d,t,!1);s[0]={timer:e,expectedEndTime:i},s.push(H),Mt(n,qo,s)}C.length&&C.forEach((t=>{n.addEventListener(t,B)})),c.to&&(c.cleanupStyles&&Jo(l,u,Object.keys(c.to)),Li(0,c))}function d(){const t=Pt(n,qo);if(t){for(let e=1;e<t.length;e++)t[e]();Tt(n,qo)}}i?setTimeout(s,Math.floor(i*R*Bo),!1):s(),g.resume=function(){t(!0)},g.pause=function(){t(!1)}}}}]}function Xo(t,e){const n=e?`-${e}s`:"";return Vi(t,[Ci,n]),[Ci,n]}const ta="data-ng-animate",ea="$ngAnimatePin";function na(t){const e=this.rules={skip:[],cancel:[],join:[]};function n(t){return{addClass:t.addClass,removeClass:t.removeClass,from:t.from,to:t.to}}function r(t,e){if(t&&e){const n=function(t){if(!t)return null;const e=t.split(" "),n=Object.create(null);return e.forEach((t=>{n[t]=!0})),n}(e);return t.split(" ").some((t=>n[t]))}}function i(t,n,r){return e[t].some((t=>t(n,r)))}function s(t,e){const n=(t.addClass||"").length>0,r=(t.removeClass||"").length>0;return e?n&&r:n||r}e.join.push((t=>!t.structural&&s(t))),e.skip.push((t=>!t.structural&&!s(t))),e.skip.push(((t,e)=>"leave"===e.event&&t.structural)),e.skip.push(((t,e)=>e.structural&&2===e.state&&!t.structural)),e.cancel.push(((t,e)=>e.structural&&t.structural)),e.cancel.push(((t,e)=>2===e.state&&t.structural)),e.cancel.push(((t,e)=>{if(e.structural)return!1;const n=t.addClass,i=t.removeClass,s=e.addClass,o=e.removeClass;return!(y(n)&&y(i)||y(s)&&y(o))&&(r(n,o)||r(i,s))})),this.$get=["$rootScope","$injector","$$animation","$$AnimateRunner","$templateRequest",function(e,r,o,a,c){const l=new Map,u=new Map;let h=null;function d(t){u.delete(t.target)}e.templateRequest=c;const p=e.$watch("$templateRequest.totalPendingRequests",(t=>{0===t&&(p(),e.$templateRequest=void 0,e.$postUpdate((()=>{e.$postUpdate((()=>{null===h&&(h=!0)}))})))}),!0),f=Object.create(null),$=t.customFilter(),m=t.classNameFilter(),g=function(){return!0},v=$||g,C=m?function(t,e){const n=[t.getAttribute("class"),e.addClass,e.removeClass].join(" ");return m.test(n)}:g,S=function(t,e){e.addClass&&(t.classList.add(...e.addClass.trim().split(" ")),e.addClass=null),e.removeClass&&(t.classList.remove(...e.removeClass.trim().split(" ")),e.removeClass=null)};function x(t,e){return Ri(t,e,{})}const A=window.Node.prototype.contains||function(t){return this===t||!!(16&this.compareDocumentPosition(t))};function k(t,e,n){const r=Oi(e);return t.filter((t=>!(t.node===r&&(!n||t.callback===n))))}function O(t,e){"close"!==t||e.parentNode||_.off(e)}let _={on(t,e,n){const r=Oi(e);f[t]=f[t]||[],f[t].push({node:r,callback:n}),e.addEventListener("$destroy",(()=>{l.get(r)||_.off(t,e,n)}))},off(t,e,n){if(1===arguments.length&&!E(arguments[0])){e=arguments[0];for(const t in f)f[t]=k(f[t],e);return}const r=f[t];r&&(f[t]=1===arguments.length?null:k(r,e,n))},pin(t,e){Ai(H(t),"element","not an element"),Ai(H(e),"parentElement","not an element"),Mt(t,ea,e)},push:(t,c,h,d)=>((h=h||{}).domOperation=d,function(t,c,h){let d=h,p=Array.isArray(t)?t.filter((t=>"#comment"!==t.nodeName))[0]:t;const $=p,m=$&&$.parentNode;d=_i(d);const g=new a,k=function(){let t=!1;return function(n){t?n():e.$postUpdate((()=>{t=!0,n()}))}}();Array.isArray(d.addClass)&&(d.addClass=d.addClass.join(" "));d.addClass&&!E(d.addClass)&&(d.addClass=null);Array.isArray(d.removeClass)&&(d.removeClass=d.removeClass.join(" "));d.removeClass&&!E(d.removeClass)&&(d.removeClass=null);d.from&&!w(d.from)&&(d.from=null);d.to&&!w(d.to)&&(d.to=null);if(!$||!v($,c,h)||!C($,d))return U(),g;const _=["enter","move","leave"].indexOf(c)>=0;let L=document.hidden||u.get($);const R=!L&&l.get($)||{},N=!!R.state;L||N&&1===R.state||(L=!function(t,e){const n=document.body,i=r.get("$rootElement");let s,o=t===n||"HTML"===t.nodeName,a=t===i,c=!1,h=u.get(t),d=Vt(t,ea);d&&(e=d);for(;e&&(a||(a=e===i),e.nodeType===Node.ELEMENT_NODE);){const t=l.get(e)||{};if(!c){const n=u.get(e);if(!0===n&&!1!==h){h=!0;break}!1===n&&(h=!1),c=t.structural}if(y(s)||!0===s){const t=Vt(e,di);b(t)&&(s=t)}if(c&&!1===s)break;if(o||(o=e===n),o&&a)break;e=a||(d=Vt(e,ea),!d)?e.parentNode:d}return(!c||s)&&!0!==h&&a&&o}($,m));if(L)return document.hidden&&D(g,c,"start",n(d)),U(),document.hidden&&D(g,c,"close",n(d)),g;_&&function(t){const e=t.querySelectorAll(`[${ta}]`);e.forEach((t=>{const e=parseInt(t.getAttribute(ta),10),n=l.get(t);if(n)switch(e){case 2:n.runner.end();case 1:l.delete(t)}}))}($);const V={structural:_,element:p,event:c,addClass:d.addClass,removeClass:d.removeClass,close:U,options:d,runner:g};if(N){if(i("skip",V,R))return 2===R.state?(U(),g):(Ri(p,R,V),R.runner);if(i("cancel",V,R))if(2===R.state)R.runner.end();else{if(!R.structural)return Ri(p,R,V),R.runner;R.close()}else{if(i("join",V,R)){if(2!==R.state)return function(t,e,n){let r="";e&&(r=ki(e,"ng-",!0)),n.addClass&&(r=Mi(r,ki(n.addClass,ci))),n.removeClass&&(r=Mi(r,ki(n.removeClass,li))),r.length&&(n.preparationClasses=r,t.className+=` ${r}`)}(p,_?c:null,d),c=V.event=R.event,d=Ri(p,R,V),R.runner;x(p,V)}}}else x(p,V);let M=V.structural;M||(M="animate"===V.event&&Object.keys(V.options.to||{}).length>0||s(V));if(!M)return U(),T($),g;const P=(R.counter||0)+1;return V.counter=P,j($,1,V),e.$postUpdate((()=>{p=function(t){return t instanceof NodeList?Array.from(t).filter((t=>t.nodeType==Node.ELEMENT_NODE)):t.nodeType===Node.ELEMENT_NODE?t:void 0}(t);let e=l.get($);const r=!e;e=e||{};const i=(p.parentElement||[])&&("animate"===e.event||e.structural||s(e));if(r||e.counter!==P||!i)return r&&(S(p,d),Ti(p,d)),(r||_&&e.event!==c)&&(d.domOperation(),g.end()),void(i||T($));c=!e.structural&&s(e,!0)?"setClass":e.event,j($,2);const a=o(p,c,e.options);g.setHost(a),D(g,c,"start",n(d)),a.done((t=>{U(!t);const e=l.get($);e&&e.counter===P&&T($),D(g,c,"close",n(d))}))})),g;function D(t,e,n,r){k((()=>{const t=function(t,e,n){const r=[],i=f[n];return i&&i.forEach((i=>{(A.call(i.node,e)||"leave"===n&&A.call(i.node,t))&&r.push(i.callback)})),r}(m,$,e);t.length?(t.forEach((t=>{t(p,n,r)})),O(n,$)):O(n,$)})),t.progress(e,n,r)}function U(t){!function(t,e){e.preparationClasses&&(e.preparationClasses.split(" ").forEach((e=>t.classList.remove(e))),e.preparationClasses=null),e.activeClasses&&(e.activeClasses.split(" ").forEach((e=>t.classList.remove(e))),e.activeClasses=null)}(p,d),S(p,d),Ti(p,d),d.domOperation(),g.complete(!t)}}(t,c,h)),enabled(t,e){const n=arguments.length;if(0===n)e=!!h;else{if(H(t)){const r=t;1===n?e=!u.get(r):(u.has(r)||t.addEventListener("$destroy",d),u.set(r,!e))}else e=h=!!t}return e}};return _;function T(t){t.removeAttribute(ta),l.delete(t)}function j(t,e,n){(n=n||{}).state=e,t.setAttribute(ta,e);const r=l.get(t),i=r?M(r,n):n;l.set(t,i)}}]}function ra(t){this.$get=["$injector","$$AnimateRunner",function(e,n){const r=function(t,e){e.addClass&&(t.classList.add(...e.addClass.trim().split(" ")),e.addClass=null),e.removeClass&&(t.classList.remove(...e.removeClass.trim().split(" ")),e.removeClass=null)};return function(i,s,o,a){let c=!1;3===arguments.length&&w(o)&&(a=o,o=null),a=_i(a),o||(o=i.getAttribute("class")||"",a.addClass&&(o+=` ${a.addClass}`),a.removeClass&&(o+=` ${a.removeClass}`));const l=a.addClass,u=a.removeClass,h=function(n){n=Array.isArray(n)?n:n.split(" ");const r=[],i={};for(let s=0;s<n.length;s++){const o=n[s],a=t.$$registeredAnimations[o];a&&!i[o]&&(r.push(e.get(a)),i[o]=!0)}return r}(o);let d,p,f;if(h.length){let t,e;"leave"===s?(e="leave",t="afterLeave"):(e=`before${s.charAt(0).toUpperCase()}${s.substring(1)}`,t=s),"enter"!==s&&"move"!==s&&(d=v(i,s,a,h,e)),p=v(i,s,a,h,t)}if(d||p)return{$$willAnimate:!0,end:()=>(f?f.end():(m(),f=new n,f.complete(!0)),f),start(){if(f)return f;let t;f=new n;const e=[];return d&&e.push((e=>{t=d(e)})),e.length?e.push((t=>{$(),t(!0)})):$(),p&&e.push((e=>{t=p(e)})),f.setHost({end(){i()},cancel(){i(!0)}}),n.chain(e,r),f;function r(t){m(),f.complete(t)}function i(e){c||((t||(()=>{}))(e),r(e))}}};function $(){a.domOperation(),r(i,a)}function m(){c=!0,$(),Ti(i,a)}function g(t,e,r,i,s){const o=[];return i.forEach((i=>{const a=i[s];a&&o.push((()=>{let i,s,o=!1;const c=function(t){o||(o=!0,(s||(()=>{}))(t),i.complete(!t))};return i=new n({end(){c()},cancel(){c(!0)}}),s=function(t,e,r,i,s){let o;switch(r){case"animate":o=[e,i.from,i.to,s];break;case"setClass":o=[e,l,u,s];break;case"addClass":o=[e,l,s];break;case"removeClass":o=[e,u,s];break;default:o=[e,s]}o.push(i);let a=t.apply(t,o);if(a)if(O(a.start)&&(a=a.start()),a instanceof n)a.done(s);else if(O(a))return a;return()=>{}}(a,t,e,r,(t=>{c(!1===t)})),i}))})),o}function v(t,e,r,i,s){let o=g(t,e,r,i,s);if(0===o.length){let e,n;"beforeSetClass"===s?(e=g(t,"removeClass",r,i,"beforeRemoveClass"),n=g(t,"addClass",r,i,"beforeAddClass")):"setClass"===s&&(e=g(t,"removeClass",r,i,"removeClass"),n=g(t,"addClass",r,i,"addClass")),e&&(o=o.concat(e)),n&&(o=o.concat(n))}if(0!==o.length)return function(t){const e=[];return o.length&&o.forEach((t=>{e.push(t())})),e.length?n.all(e,t):t(),function(t){e.forEach((e=>{t?e.cancel():e.end()}))}}}}}]}na.$inject=["$animateProvider"],ra.$inject=["$animateProvider"];const ia="$$animationRunner",sa="$$animatePrepareClasses";function oa(){const t="ng-animate-ref",e=this.drivers=[];function n(t){!function(t,e){if(Rt(t)){const n=jt(t,!1),r=n?.data;r&&vt(r,Ot(e))&&delete r[Ot(e)]}}(t,ia)}function r(t){return Pt(t,ia)}this.$get=["$rootScope","$injector","$$AnimateRunner","$$rAFScheduler","$$animateCache",function(i,s,o,a,c){const l=[],u=function(t,e){e.addClass&&(t.classList.add(...e.addClass.trim().split(" ")),e.addClass=null),e.removeClass&&(t.classList.remove(...e.removeClass.trim().split(" ")),e.removeClass=null)};return function(h,d,p){p=_i(p);const f=["enter","move","leave"].indexOf(d)>=0,$=new o({end(){y()},cancel(){y(!0)}});if(!e.length)return y(),$;let m=ft(h.getAttribute("class"),ft(p.addClass,p.removeClass)),{tempClasses:g}=p;return g&&(m+=` ${g}`,p.tempClasses=null),f&&Mt(h,sa,`ng-${d}-prepare`),function(t,e){Mt(t,ia,e)}(h,$),l.push({element:h,classes:m,event:d,structural:f,options:p,beforeStart:function(){g=(g?`${g} `:"")+hi,h.className+=` ${g}`;let t=Pt(h,sa);t&&(h.classList.remove(t),t=null)},close:y}),h.addEventListener("$destroy",(function(){const t=r(h);!t||"leave"===d&&p.$$domOperationFired||t.end()})),l.length>1||i.$postUpdate((()=>{const n=[];l.forEach((t=>{r(t.element)?n.push(t):t.close()})),l.length=0;const i=function(e){const n=[],r={};e.forEach(((e,i)=>{const{element:s}=e,o=s,{event:a}=e,c=["enter","move"].indexOf(a)>=0,l=e.structural?function(e){const n=`[${t}]`,r=e.hasAttribute(t)?[e]:e.querySelectorAll(n),i=[];return r.forEach((e=>{const n=e.getAttribute(t);n&&n.length&&i.push(e)})),i}(o):[];if(l.length){const e=c?"to":"from";l.forEach((n=>{const s=n.getAttribute(t);r[s]=r[s]||{},r[s][e]={animationID:i,element:n}}))}else n.push(e)}));const i={},s={};return Object.values(r).forEach((t=>{const{from:r}=t,{to:o}=t;if(!r||!o){const t=r?r.animationID:o.animationID,s=t.toString();return void(i[s]||(i[s]=!0,n.push(e[t])))}const a=e[r.animationID],c=e[o.animationID],l=r.animationID.toString();if(!s[l]){const t=s[l]={structural:!0,beforeStart(){a.beforeStart(),c.beforeStart()},close(){a.close(),c.close()},classes:v(a.classes,c.classes),from:a,to:c,anchors:[]};t.classes.length?n.push(t):(n.push(a),n.push(c))}s[l].anchors.push({out:r.element,in:o.element})})),n}(n),o=[];i.forEach((t=>{const n=t.from?t.from.element:t.element;let i=p.addClass;i=(i?`${i} `:"")+hi;const a=c.cacheKey(n,t.event,i,p.removeClass);o.push({element:n,domNode:n,fn:function(){let n;const i=t.close;if(c.containsCachedAnimationWithoutDuration(a))return void i();t.beforeStart();if(r(t.anchors?t.from.element||t.to.element:t.element)){const r=function(t){for(let n=e.length-1;n>=0;n--){const r=e[n],i=s.get(r)(t);if(i)return i}}(t);r&&(n=r.start)}if(n){const e=n();e.done((t=>{i(!t)})),function(t,e){t.from&&t.to?(n(t.from.element),n(t.to.element)):n(t.element);function n(t){const n=r(t);n&&n.setHost(e)}}(t,e)}else i()}})}));const u=function(t){const e={children:[]};let n;const r=new Map;for(n=0;n<t.length;n++){const e=t[n];r.set(e.domNode,t[n]={domNode:e.domNode,element:e.element,fn:e.fn,children:[]})}for(n=0;n<t.length;n++)i(t[n]);return function(t){const e=[],n=[];let r;for(r=0;r<t.children.length;r++)n.push(t.children[r]);let i=n.length,s=0,o=[];for(r=0;r<n.length;r++){const t=n[r];i<=0&&(i=s,s=0,e.push(o),o=[]),o.push(t),t.children.forEach((t=>{s++,n.push(t)})),i--}return o.length&&e.push(o),e}(e);function i(t){if(t.processed)return t;t.processed=!0;const n=t.domNode;let s,{parentNode:o}=n;for(r.set(n,t);o;){if(s=r.get(o),s){s.processed||(s=i(s));break}o=o.parentNode}return(s||e).children.push(t),t}}(o);for(let t=0;t<u.length;t++){const e=u[t];for(let n=0;n<e.length;n++){const r=e[n],{element:i}=r;if(u[t][n]=r.fn,0===t){Tt(i,sa);continue}const s=Pt(i,sa);s&&i.classList.add(s)}}a(u)})),$;function v(t,e){t=t.split(" "),e=e.split(" ");const n=[];for(let r=0;r<t.length;r++){const i=t[r];if("ng-"!==i.substring(0,3))for(let t=0;t<e.length;t++)if(i===e[t]){n.push(i);break}}return n.join(" ")}function y(t){n(h),u(h,p),Ti(h,p),p.domOperation(),g&&g.split(" ").forEach((t=>h.classList.remove(t))),$.complete(!t)}}}]}class aa{constructor(){this.queue=[],this.cancelFn=null}nextTick(){if(!this.queue.length)return;this.queue.shift().forEach((t=>t())),this.cancelFn||(this.cancelFn=window.requestAnimationFrame((()=>{this.cancelFn=null,this.nextTick()})))}$get(){const t=t=>{this.queue=this.queue.concat(t),this.nextTick()};return t.queue=this.queue,t.waitUntilQuiet=t=>{null!==this.cancelFn&&(window.cancelAnimationFrame(this.cancelFn),this.cancelFn=null),this.cancelFn=window.requestAnimationFrame((()=>{this.cancelFn=null,t(),this.nextTick()}))},t}}const ca="$animId";let la=0;const ua=new Map;function ha(){return{cacheKey(t,e,n,r){const{parentNode:i}=t,s=[i[ca]??(i[ca]=++la),e,t.getAttribute("class")];return n&&s.push(n),r&&s.push(r),s.join(" ")},containsCachedAnimationWithoutDuration(t){const e=ua.get(t);return!!e&&!e.isValid},flush(){ua.clear()},count:t=>ua.get(t)?.total??0,get:t=>ua.get(t)?.value,put(t,e,n){const r=ua.get(t);r?(r.total++,r.value=e):ua.set(t,{total:1,value:e,isValid:n})}}}function da(){this.$get=[ha]}const pa="ng-animate-shim",fa="ng-anchor",$a="ng-anchor-out",ma="ng-anchor-in";function ga(t){t.drivers.push("$$animateCssDriver"),this.$get=["$animateCss","$$AnimateRunner","$rootElement",function(t,e,n){const r=document.body,i=n,s=(o=i).parentNode&&11===o.parentNode.nodeType||r.contains(i)?i:r;var o;return function(n){return n.from&&n.to?function(n,i,o){const c=a(n),l=a(i),u=[];if(o.forEach((n=>{const i=function(n,i){const o=n.cloneNode(!0),a=va(p(o));let c;n[0].classList.add(pa),i[0].classList.add(pa),o.classList.add(fa),s.append(o);const l=d();if(!l&&(c=f(),!c))return $();const u=l||c;return{start(){let t,n=u.start();return n.done((()=>{if(n=null,!c&&(c=f(),c))return n=c.start(),n.done((()=>{n=null,$(),t.complete()})),n;$(),t.complete()})),t=new e({end:r,cancel:r}),t;function r(){n&&n.end()}}};function h(t){const e={},n=t.getBoundingClientRect();return["width","height","top","left"].forEach((t=>{let i=n[t];switch(t){case"top":i+=r.scrollTop;break;case"left":i+=r.scrollLeft}e[t]=`${Math.floor(i)}px`})),e}function d(){const e=t(o,{addClass:$a,delay:!0,from:h(n)});return e.$$willAnimate?e:null}function p(t){return t.getAttribute("class")||""}function f(){const e=va(p(i)),n=ya(e,a),r=ya(a,e),s=t(o,{to:h(i),addClass:`${ma} ${n}`,removeClass:`${$a} ${r}`,delay:!0});return s.$$willAnimate?s:null}function $(){o.remove(),n[0].classList.remove(pa),i[0].classList.remove(pa)}}(n.out,n.in);i&&u.push(i)})),!c&&!l&&0===u.length)return;return{start(){const t=[];c&&t.push(c.start()),l&&t.push(l.start()),u.forEach((e=>{t.push(e.start())}));const n=new e({end:r,cancel:r});return e.all(t,(t=>{n.complete(t)})),n;function r(){t.forEach((t=>{t.end()}))}}}}(n.from,n.to,n.anchors):a(n)};function a(e){const n=e.options||{};e.structural&&(n.event=e.event,n.structural=!0,n.applyClassesEarly=!0,"leave"===e.event&&(n.onDone=n.domOperation)),n.preparationClasses&&(n.event=Mi(n.event,n.preparationClasses));const r=t(e.element,n);return r.$$willAnimate?r:null}}]}function va(t){return t.replace(/\bng-\S+\b/g,"")}function ya(t,e){return E(t)&&(t=t.split(" ")),E(e)&&(e=e.split(" ")),t.filter((t=>-1===e.indexOf(t))).join(" ")}function ba(t){t.drivers.push("$$animateJsDriver"),this.$get=["$$animateJs","$$AnimateRunner",function(t,e){return function(t){if(t.from&&t.to){const r=n(t.from),i=n(t.to);if(!r&&!i)return;return{start(){const t=[];r&&t.push(r.start()),i&&t.push(i.start()),e.all(t,(function(t){n.complete(t)}));const n=new e({end:s(),cancel:s()});return n;function s(){return function(){t.forEach((t=>{t.end()}))}}}}}return n(t)};function n(e){const{element:n,event:r,options:i,classes:s}=e;return t(n,r,s,i)}}]}function wa(t){return{restrict:"A",transclude:"element",terminal:!0,priority:550,link(e,n,r,i,s){let o,a;e.$watch(r.ngAnimateSwap||r.for,(e=>{o&&t.leave(o),a&&(a.$destroy(),a=null),e&&s(((e,r)=>{o=e,a=r,t.enter(e,null,n)}))}))}}}function Ea(t){return{link(e,n,r){const i=r.ngAnimateChildren;function s(t){Mt(n,di,t="on"===t||"true"===t)}E(i)&&0===i.length?Mt(n,di,!0):(s(t(i)(e)),r.$observe("ngAnimateChildren",s))}}}function Ca(t){return function e(){if(arguments.length>=t.length)return t.apply(this,arguments);const n=Array.prototype.slice.call(arguments);return e.bind(this,...n)}}function Sa(){const t=arguments,e=t.length-1;return function(){let n=e,r=t[e].apply(this,arguments);for(;n--;)r=t[n].call(this,r);return r}}function xa(){return Sa.apply(null,[].slice.call(arguments).reverse())}ga.$inject=["$$animationProvider"],ba.$inject=["$$animationProvider"],wa.$inject=["$animate"],Ea.$inject=[Xt.$interpolate];const Aa=Ca(((t,e,n)=>n&&n[t]===e)),ka=t=>xa.apply(null,t.split(".").map((t=>e=>e&&e[t])));const Oa=t=>e=>e.reduce(((e,n)=>e&&!!t(n)),!0),_a=t=>e=>null!=e&&e.constructor===t||e instanceof t,Ta=t=>()=>t;function ja(t){return function(e){for(let n=0;n<t.length;n++)if(t[n][0](e))return t[n][1](e)}}function La(t,e){if(t===e)return!0;if(null===t||null===e)return!1;if(t!=t&&e!=e)return!0;const n=typeof t;if(n!==typeof e||"object"!==n)return!1;const r=[t,e];if(Oa(Array.isArray)(r))return s=e,(i=t).length===s.length&&Ja(i,s).reduce(((t,e)=>t&&La(e[0],e[1])),!0);var i,s;if(Oa(A)(r))return t.getTime()===e.getTime();if(Oa(_)(r))return t.toString()===e.toString();if(Oa(O)(r))return!0;if([O,Array.isArray,A,_].some((t=>!!t(r))))return!1;const o={};for(const n in t){if(!La(t[n],e[n]))return!1;o[n]=!0}for(const t in e)if(!o[t])return!1;return!0}function Ra(t,e,n,r,i=!1){const s=e=>t()[e].bind(n());return(r=r||Object.keys(t())).reduce(((t,n)=>{var r;return t[n]=i?(r=n,function(){return e[r]=s(r),e[r].apply(null,arguments)}):s(n),t}),e)}function Na(t,e){const n=Object.create(t);return e&&Object.assign(n,e),n}const Va=Ca((function(t,e){const n=t.indexOf(e);n>=0&&t.splice(n,1);return t}));const Ma=Ca(((t,e)=>(t.push(e),e)));function Pa(t,...e){const n=Object.assign({},...e.reverse());return Object.assign(n,Da(t||{},Object.keys(n)))}function Da(t,e){const n={};for(const r in t)-1!==e.indexOf(r)&&(n[r]=t[r]);return n}function Ua(t,e){return Object.keys(t).filter((t=>!e.includes(t))).reduce(((e,n)=>(e[n]=t[n],e)),{})}function Ia(t,e){const n=Array.isArray(t),r=n?[]:{},i=n?t=>r.push(t):(t,e)=>r[e]=t;return Object.entries(t).forEach((([t,n])=>{e(n,t)&&i(n,t)})),r}function Ha(t,e){let n;return Object.entries(t).forEach((([t,r])=>{n||e(r,t)&&(n=r)})),n}function Fa(t,e,n){return n=n||(Array.isArray(t)?[]:{}),Object.entries(t).forEach((([t,r])=>n[t]=e(r,t))),n}const qa=(t,e)=>t&&e,Ba=(t,e)=>t||e,za=(t,e)=>t.concat(e),Ka=(t,e)=>Array.isArray(e)?t.concat(e.reduce(Ka,[])):Wa(t,e);function Wa(t,e){return t.push(e),t}const Ga=(t,e)=>t.includes(e)?t:Wa(t,e),Qa=t=>t.reduce(za,[]),Ya=function(t,e="assert failure"){return n=>{const r=t(n);if(!r)throw new Error(e);return r}};function Ja(...t){if(0===t.length)return[];const e=t.reduce(((t,e)=>Math.min(e.length,t)),9007199254740991),n=[];for(let r=0;r<e;r++)switch(t.length){case 1:n.push([t[0][r]]);break;case 2:n.push([t[0][r],t[1][r]]);break;case 3:n.push([t[0][r],t[1][r],t[2][r]]);break;case 4:n.push([t[0][r],t[1][r],t[2][r],t[3][r]]);break;default:n.push(t.map((t=>t[r])))}return n}function Za(t,e){let n,r;if(Array.isArray(e)&&([n,r]=e),!E(n))throw new Error("invalid parameters to applyPairs");return t[n]=r,t}function Xa(t){return t.length>0?t[t.length-1]:void 0}function tc(t,e){return e&&Object.keys(e).forEach((t=>delete e[t])),e||(e={}),Object.assign(e,t)}const ec=t=>t.catch((()=>0))&&t,nc=t=>ec(Promise.reject(t));class rc{constructor(t){this.pattern=/.*/,this.inherit=!0,Object.assign(this,t),this.name=void 0}is(t){return!!t}encode(t){return t}decode(t){return t}equals(t,e){return t==e}$subPattern(){const t=this.pattern.toString();return t.substring(1,t.length-2)}toString(){return`{ParamType:${this.name}}`}$normalize(t){return this.is(t)?t:this.decode(t)}$asArray(t,e){if(!t)return this;if("auto"===t&&!e)throw new Error("'auto' array mode is for query parameters only");return new ic(this,t)}}function ic(t,e){function n(t){return Array.isArray(t)?t:b(t)?[t]:[]}function r(t,r){return function(i){if(Array.isArray(i)&&0===i.length)return i;const s=Fa(n(i),t);return!0===r?0===Ia(s,(t=>!t)).length:function(t){switch(t.length){case 0:return;case 1:return"auto"===e?t[0]:t;default:return t}}(s)}}function i(t){return function(e,r){const i=n(e),s=n(r);if(i.length!==s.length)return!1;for(let e=0;e<i.length;e++)if(!t(i[e],s[e]))return!1;return!0}}["encode","decode","equals","$normalize"].forEach((e=>{const n=t[e].bind(t),s="equals"===e?i:r;this[e]=s(n)})),Object.assign(this,{dynamic:t.dynamic,name:t.name,pattern:t.pattern,inherit:t.inherit,raw:t.raw,is:r(t.is.bind(t),!0),$arrayMode:e})}class sc{constructor(){this.enqueue=!0,this.typeQueue=[],this.defaultTypes=Da(sc.prototype,["hash","string","query","path","int","bool","date","json","any"]);this.types=Na(Fa(this.defaultTypes,((t,e)=>new rc(Object.assign({name:e},t)))),{})}type(t,e,n){if(!b(e))return this.types[t];if(vt(this.types,t))throw new Error(`A type named '${t}' has already been defined.`);return this.types[t]=new rc(Object.assign({name:t},e)),n&&(this.typeQueue.push({name:t,def:n}),this.enqueue||this._flushTypeQueue()),this}_flushTypeQueue(){for(;this.typeQueue.length;){const t=this.typeQueue.shift();if(t.pattern)throw new Error("You cannot override a type's .pattern at runtime.");Object.assign(this.types[t.name],window.angular.$injector.invoke(t.def))}}}!function(){const t=t=>{const e=t=>null!=t?t.toString():t,n={encode:e,decode:e,is:_a(String),pattern:/.*/,equals:(t,e)=>t==e};return Object.assign({},n,t)};Object.assign(sc.prototype,{string:t({}),path:t({pattern:/[^/]*/}),query:t({}),hash:t({inherit:!1}),int:t({decode:t=>parseInt(t,10),is:function(t){return!S(t)&&this.decode(t.toString())===t},pattern:/-?\d+/}),bool:t({encode:t=>t?1:0,decode:t=>0!==parseInt(t,10),is:_a(Boolean),pattern:/[01]/}),date:t({encode:function(t){return this.is(t)?[t.getFullYear(),("0"+(t.getMonth()+1)).slice(-2),("0"+t.getDate()).slice(-2)].join("-"):void 0},decode:function(t){if(this.is(t))return t;const e=this.capture.exec(t);return e?new Date(e[1],e[2]-1,e[3]):void 0},is:t=>t instanceof Date&&!isNaN(t.valueOf()),equals:(t,e)=>["getFullYear","getMonth","getDate"].reduce(((n,r)=>n&&t[r]()===e[r]()),!0),pattern:/[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])/,capture:/([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])/}),json:t({encode:JSON.stringify,decode:JSON.parse,is:_a(Object),equals:La,pattern:/[^/]*/}),any:t({encode:t=>t,decode:t=>t,is:()=>!0,equals:La})})}();class oc{constructor(){this.paramTypes=new sc,this._isCaseInsensitive=!1,this._isStrictMode=!0,this._defaultSquashPolicy=!1;const t=this.type("path");t.encode=t=>null!=t?t.toString().replace(/([~/])/g,(t=>({"~":"~~","/":"~2F"}[t]))):t,t.decode=t=>null!=t?t.toString().replace(/(~~|~2F)/g,(t=>({"~~":"~","~2F":"/"}[t]))):t,this.paramTypes.enqueue=!1,this.paramTypes._flushTypeQueue()}$get=[function(){return this}];caseInsensitive(t){return this._isCaseInsensitive=b(t)?t:this._isCaseInsensitive}defaultSquashPolicy(t){if(b(t)&&!0!==t&&!1!==t&&!E(t))throw new Error(`Invalid squash policy: ${t}. Valid policies: false, true, arbitrary-string`);return this._defaultSquashPolicy=b(t)?t:this._defaultSquashPolicy}strictMode(t){return this._isStrictMode=b(t)?t:this._isStrictMode}type(t,e,n){const r=this.paramTypes.type(t,e,n);return b(e)?this:r}}class ac{constructor(t={}){Object.assign(this,t)}$inherit(t,e,n){const r=function(t,e){const n=[];for(const r in t.path){if(t.path[r]!==e.path[r])break;n.push(t.path[r])}return n}(e,n),i={},s=[];for(const t in r){if(!r[t]||!r[t].params)continue;const e=r[t].params,n=Object.keys(e);if(n.length)for(const t in n)0==e[n[t]].inherit||s.indexOf(n[t])>=0||(s.push(n[t]),i[n[t]]=this[n[t]])}return Object.assign({},i,t)}}class cc{constructor(t=[],e=null){this._items=Array.isArray(t)?[...t]:[],this._limit=Number.isInteger(e)&&e>0?e:null,this._evictListeners=[],this.onEvict=Ma(this._evictListeners)}enqueue(t){return this._items.push(t),null!==this._limit&&this._items.length>this._limit&&this.evict(),t}evict(){const t=this._items.shift();return void 0!==t&&this._evictListeners.forEach((e=>e(t))),t}dequeue(){return this._items.length>0?this._items.shift():void 0}clear(){const t=[...this._items];return this._items.length=0,t}size(){return this._items.length}remove(t){const e=this._items.indexOf(t);return-1!==e&&this._items.splice(e,1)[0]}peekTail(){return this._items[this._items.length-1]}peekHead(){return this._items[0]}}class lc{constructor(){this.params=new ac,this.lastStartedTransitionId=-1,this.transitionHistory=new cc([],1),this.successfulTransitions=new cc([],1),this.current=void 0,this.$current=void 0,this.transition=void 0}$get=()=>this}function uc(t){if(Array.isArray(t)&&t.length){const e=t.slice(0,-1),n=t.slice(-1);return!(e.filter((t=>!E(t))).length||n.filter((t=>!O(t))).length)}return O(t)}function hc(t){return null!==t&&"object"==typeof t&&"function"==typeof t.then}function dc(t,e){return e.length<=t?e:e.substring(0,t-3)+"..."}function pc(t){const e=fc(t),n=e.match(/^(function [^ ]+\([^)]*\))/),r=n?n[1]:e,i=t.name||"";return i&&r.match(/function \(/)?"function "+i+r.substring(9):r}function fc(t){const e=Array.isArray(t)?t.slice(-1)[0]:t;return e&&e.toString()||"undefined"}function $c(t){const e=[],n=ja([[y,Ta("undefined")],[C,Ta("null")],[hc,Ta("[Promise]")],[t=>t&&"function"==typeof t.then&&"Rejection"==t.constructor.name,t=>t._transitionRejection.toString()],[t=>w(t)&&!Array.isArray(t)&&t.constructor!==Object&&O(t.toString),t=>t.toString()],[uc,pc],[Ta(!0),t=>t]]);function r(t){if(w(t)){if(-1!==e.indexOf(t))return"[circular ref]";e.push(t)}return n(t)}return y(t)?r(t):JSON.stringify(t,((t,e)=>r(e))).replace(/\\"/g,'"')}function mc(t,e){return E(Xa(t))&&E(e)?t.slice(0,-1).concat(Xa(t)+e):Wa(t,e)}function gc(t){if(!t)return"ng-view (defunct)";const e=t.creationContext?t.creationContext.name||"(root)":"(none)";return`[ng-view#${t.id}:${t.fqn} (${t.name}@${e})]`}function vc(t){return x(t)?yc[t]:yc[yc[t]]}const yc={RESOLVE:0,TRANSITION:1,HOOK:2,UIVIEW:3,VIEWCONFIG:4},bc=ka("$id"),wc=ka("router.$id"),Ec=t=>`Transition #${bc(t)}-${wc(t)}`;const Cc=new class{constructor(){this._enabled={},this.approximateDigests=0}_set(t,e){e.length||(e=Object.keys(yc).map((t=>parseInt(t,10))).filter((t=>!isNaN(t))).map((t=>yc[t]))),e.map(vc).forEach((e=>this._enabled[e]=t))}enable(...t){this._set(!0,t)}disable(...t){this._set(!1,t)}enabled(t){return!!this._enabled[vc(t)]}traceTransitionStart(t){this.enabled(yc.TRANSITION)&&console.log(`${Ec(t)}: Started -> ${$c(t)}`)}traceTransitionIgnored(t){this.enabled(yc.TRANSITION)&&console.log(`${Ec(t)}: Ignored <> ${$c(t)}`)}traceHookInvocation(t,e,n){if(!this.enabled(yc.HOOK))return;const r=ka("traceData.hookType")(n)||"internal",i=ka("traceData.context.state.name")(n)||ka("traceData.context")(n)||"unknown",s=pc(t.registeredHook.callback);console.log(`${Ec(e)}: Hook -> ${r} context: ${i}, ${dc(200,s)}`)}traceHookResult(t,e){this.enabled(yc.HOOK)&&console.log(`${Ec(e)}: <- Hook returned: ${dc(200,$c(t))}`)}traceResolvePath(t,e,n){this.enabled(yc.RESOLVE)&&console.log(`${Ec(n)}: Resolving ${t} (${e})`)}traceResolvableResolved(t,e){this.enabled(yc.RESOLVE)&&console.log(`${Ec(e)}: <- Resolved ${t} to: ${dc(200,$c(t.data))}`)}traceError(t,e){this.enabled(yc.TRANSITION)&&console.log(`${Ec(e)}: <- Rejected ${$c(e)}, reason: ${t}`)}traceSuccess(t,e){this.enabled(yc.TRANSITION)&&console.log(`${Ec(e)}: <- Success ${$c(e)}, final state: ${t.name}`)}traceUIViewEvent(t,e,n=""){this.enabled(yc.UIVIEW)&&console.log(`ng-view: ${function(t,e){for(;e.length<t;)e+=" ";return e}(30,t)} ${gc(e)}${n}`)}traceUIViewConfigUpdated(t,e){this.enabled(yc.UIVIEW)&&this.traceUIViewEvent("Updating",t,` with ViewConfig from context='${e}'`)}traceUIViewFill(t,e){this.enabled(yc.UIVIEW)&&this.traceUIViewEvent("Fill",t,` with: ${dc(200,e)}`)}traceViewSync(t){if(!this.enabled(yc.VIEWCONFIG))return;const e="uiview component fqn",n="view config state (view name)",r=t.map((({ngView:t,viewConfig:r})=>{const i=t&&t.fqn,s=r&&`${r.viewDecl.$context.name}: (${r.viewDecl.$name})`;return{[e]:i,[n]:s}})).sort(((t,n)=>(t[e]||"").localeCompare(n[e]||"")));console.table(r)}traceViewServiceEvent(t,e){this.enabled(yc.VIEWCONFIG)&&console.log(`VIEWCONFIG: ${t} ${(t=>{const e=t.viewDecl,n=e.$context.name||"(root)";return`[View#${t.$id} from '${n}' state]: target ng-view: '${e.$ngViewName}@${e.$ngViewContextAnchor}'`})(e)}`)}traceViewServiceUIViewEvent(t,e){this.enabled(yc.VIEWCONFIG)&&console.log(`VIEWCONFIG: ${t} ${gc(e)}`)}};let Sc="LAZY",xc="WAIT";class Ac{constructor(t,e,n,r,i){this.resolved=!1,this.promise=void 0,t instanceof Ac?Object.assign(this,t):O(e)?(at(!S(t),"token argument is required"),this.token=t,this.policy=r,this.resolveFn=e,this.deps=n||[],this.data=i,this.resolved=void 0!==i,this.promise=this.resolved?Promise.resolve(this.data):void 0):w(t)&&t.token&&(vt(t,"resolveFn")||vt(t,"data"))&&(this.token=t.token,this.resolveFn=t.resolveFn,this.deps=t.deps,this.policy=t.policy,this.data=t.data)}getPolicy(t){const e=this.policy||{},n=t&&t.resolvePolicy||{};return{when:e.when||n.when||Sc,async:e.async||n.async||xc}}resolve(t,e){const n=t.findNode(this),r=n&&n.state,i=this.getPolicy(r).async,s=O(i)?i:t=>t;return this.promise=Promise.resolve().then((()=>Promise.all(t.getDependencies(this).map((n=>n.get(t,e)))))).then((t=>this.resolveFn.apply(null,t))).then(s).then((t=>(this.data=t,this.resolved=!0,this.resolveFn=null,Cc.traceResolvableResolved(this,e),this.data))),this.promise}get(t,e){return this.promise||this.resolve(t,e)}toString(){return`Resolvable(token: ${$c(this.token)}, requires: [${this.deps.map($c)}])`}clone(){return new Ac(this)}}Ac.fromData=(t,e)=>new Ac(t,(()=>e),null,null,e);class kc{constructor(t,e,n,r){this._stateRegistry=t,this._identifier=e,this._identifier=e,this._params=Object.assign({},n||{}),this._options=Object.assign({},r||{}),this._definition=t.matcher.find(e,this._options.relative)}name(){return this._definition&&this._definition.name||this._identifier}identifier(){return this._identifier}params(){return this._params}$state(){return this._definition}state(){return this._definition&&this._definition.self}options(){return this._options}exists(){return!(!this._definition||!this._definition.self)}valid(){return!this.error()}error(){const t=this.options().relative;if(!this._definition&&t){const e=t.name?t.name:t;return`Could not resolve '${this.name()}' from state '${e}'`}return this._definition?this._definition.self?void 0:`State '${this.name()}' has an invalid definition`:`No such state '${this.name()}'`}toString(){return`'${this.name()}'${$c(this.params())}`}withState(t){return new kc(this._stateRegistry,t,this._params,this._options)}withParams(t,e=!1){const n=e?t:Object.assign({},this._params,t);return new kc(this._stateRegistry,this._identifier,n,this._options)}withOptions(t,e=!1){const n=e?t:Object.assign({},this._options,t);return new kc(this._stateRegistry,this._identifier,this._params,n)}}kc.isDef=t=>t&&t.state&&(E(t.state)||w(t.state)&&E(t.state.name));const Oc=0,_c=1,Tc=2;function jc(t,e,n){const r=!1===n.reloadOnSearch&&e===_c||void 0,i=Ha([n.dynamic,r],b),s=b(i)?{dynamic:i}:{},o=function(t){function e(){return t.value}t=(t=>0===["value","type","squash","array","dynamic"].filter(Object.prototype.hasOwnProperty.bind(t||{})).length)(t)?{value:t}:t,e.__cacheable=!0;const n=uc(t.value)?t.value:e;return Object.assign(t,{$$fn:n})}(n&&n.params&&n.params[t]);return Object.assign(s,o)}class Lc{constructor(t,e,n,r,i){const s=jc(t,n,i);e=function(t,e,n,r,i){if(t.type&&e&&"string"!==e.name)throw new Error(`Param '${r}' has two type configurations.`);if(t.type&&e&&"string"===e.name&&i.type(t.type))return i.type(t.type);if(e)return e;if(!t.type){const t=n===Tc?"any":n===Oc?"path":n===_c?"query":"string";return i.type(t)}return t.type instanceof rc?t.type:i.type(t.type)}(s,e,n,t,r.paramTypes);const o=function(){const e={array:n===_c&&"auto"},r=t.match(/\[\]$/)?{array:!0}:{};return Object.assign(e,r,s).array}();e=o?e.$asArray(o,n===_c):e;const a=void 0!==s.value||n===_c,c=b(s.dynamic)?!!s.dynamic:!!e.dynamic,l=b(s.raw)?!!s.raw:!!e.raw,u=function(t,e,n){const r=t.squash;if(!e||!1===r)return!1;if(!b(r)||null==r)return n;if(!0===r||E(r))return r;throw new Error(`Invalid squash policy: '${r}'. Valid policies: false, true, or arbitrary string`)}(s,a,r.defaultSquashPolicy()),h=function(t,e,n,r){const i=[{from:"",to:n||e?void 0:""},{from:null,to:n||e?void 0:""}],s=Array.isArray(t.replace)?t.replace:[];E(r)&&s.push({from:r,to:void 0});const o=Fa(s,(t=>t.from));return Ia(i,(t=>-1===o.indexOf(t.from))).concat(s)}(s,o,a,u),d=b(s.inherit)?!!s.inherit:!!e.inherit;this.isOptional=a,this.type=e,this.location=n,this.id=t,this.dynamic=c,this.raw=l,this.squash=u,this.replace=h,this.inherit=d,this.array=o,this.config=s}isDefaultValue(t){return this.isOptional&&this.type.equals(this.value(),t)}value(t){return t=(t=>{for(const e of this.replace)if(e.from===t)return e.to;return t})(t),y(t)?(()=>{if(this._defaultValueCache)return this._defaultValueCache.defaultValue;if(!window.angular.$injector)throw new Error("Injectable functions cannot be called at configuration time");const t=window.angular.$injector.invoke(this.config.$$fn);if(null!=t&&!this.type.is(t))throw new Error(`Default value (${t}) for parameter '${this.id}' is not an instance of ParamType (${this.type.name})`);return this.config.$$fn.__cacheable&&(this._defaultValueCache={defaultValue:t}),t})():this.type.$normalize(t)}isSearch(){return this.location===_c}validates(t){if((y(t)||null===t)&&this.isOptional)return!0;const e=this.type.$normalize(t);if(!this.type.is(e))return!1;const n=this.type.encode(e);return!(E(n)&&!this.type.pattern.exec(n))}toString(){return`{Param:${this.id} ${this.type} squash: '${this.squash}' optional: ${this.isOptional}}`}static values(t,e={}){const n={};for(const r of t)n[r.id]=r.value(e[r.id]);return n}static changed(t,e={},n={}){return t.filter((t=>!t.type.equals(e[t.id],n[t.id])))}static equals(t,e={},n={}){return 0===Lc.changed(t,e,n).length}static validates(t,e={}){return t.map((t=>t.validates(e[t.id]))).reduce(qa,!0)}}class Rc{constructor(t){if(t instanceof Rc){const e=t;this.state=e.state,this.paramSchema=e.paramSchema.slice(),this.paramValues=Object.assign({},e.paramValues),this.resolvables=e.resolvables.slice(),this.views=e.views&&e.views.slice()}else{const e=t;this.state=e,this.paramSchema=e.parameters({inherit:!1}),this.paramValues={},this.resolvables=e.resolvables.map((t=>t.clone()))}}clone(){return new Rc(this)}applyRawParams(t){return this.paramValues=this.paramSchema.reduce(((e,n)=>{return Za(e,[(r=n).id,r.value(t[r.id])]);var r}),{}),this}parameter(t){return Ha(this.paramSchema,Aa("id",t))}equals(t,e){const n=this.diff(t,e);return n&&0===n.length}diff(t,e){if(this.state!==t.state)return!1;const n=e?e(this):this.paramSchema;return Lc.changed(n,this.paramValues,t.paramValues)}}class Nc{static buildPath(t){const e=t.params();return t.$state().path.map((t=>new Rc(t).applyRawParams(e)))}static buildToPath(t,e){const n=Nc.buildPath(e);return e.options().inherit?Nc.inheritParams(t,n,Object.keys(e.params())):n}static applyViewConfigs(t,e,n){e.filter((t=>n.includes(t.state))).forEach((n=>{const r=Object.values(n.state.views||{}),i=Nc.subPath(e,(t=>t===n)),s=r.map((e=>t.createViewConfig(i,e)));n.views=s.reduce(za,[])}))}static inheritParams(t,e,n=[]){const r=t.map((t=>t.paramSchema)).reduce(za,[]).filter((t=>!t.inherit)).map((t=>t.id));return e.map((function(e){let i=Object.assign({},e&&e.paramValues);const s=Da(i,n);i=Ua(i,n);const o=Ua(function(t,e){const n=Ha(t,Aa("state",e));return Object.assign({},n&&n.paramValues)}(t,e.state)||{},r),a=Object.assign(i,o,s);return new Rc(e.state).applyRawParams(a)}))}static treeChanges(t,e,n){const r=Math.min(t.length,e.length);let i=0;for(;i<r&&t[i].state!==n&&(s=t[i],o=e[i],s.equals(o,Nc.nonDynamicParams));)i++;var s,o;let a,c,l,u,h;a=t,c=a.slice(0,i),l=a.slice(i);const d=c.map((function(t,n){const r=t.clone();return r.paramValues=e[n].paramValues,r}));return u=e.slice(i),h=d.concat(u),{from:a,to:h,retained:c,retainedWithToParams:d,exiting:l,entering:u}}static matching(t,e,n){let r=!1;return Ja(t,e).reduce(((t,[e,i])=>(r=r||!e.equals(i,n),r?t:t.concat(e))),[])}static equals(t,e,n){return t.length===e.length&&Nc.matching(t,e,n).length===t.length}static subPath(t,e){const n=Ha(t,e),r=t.indexOf(n);return-1===r?void 0:t.slice(0,r+1)}static nonDynamicParams(t){return t.state.parameters({inherit:!1}).filter((t=>!t.dynamic))}static paramValues(t){return t.reduce(((t,e)=>Object.assign(t,e.paramValues)),{})}}function Vc(t,e){return new kc(t,e.at(-1).state,e.map((t=>t.paramValues)).reduce(((t,e)=>({...t,...e})),{}),{})}const Mc={LAZY:"LAZY",EAGER:"EAGER"},Pc=[Mc.EAGER,Mc.LAZY],Dc=[Mc.EAGER];class Uc{constructor(t){this._path=t}getTokens(){return this._path.reduce(((t,e)=>t.concat(e.resolvables.map((t=>t.token)))),[]).reduce(Ga,[])}getResolvable(t){return Xa(this._path.map((t=>t.resolvables)).reduce(za,[]).filter((e=>e.token===t)))}getPolicy(t){const e=this.findNode(t);return t.getPolicy(e)}subContext(t){return new Uc(Nc.subPath(this._path,(e=>e.state===t)))}addResolvables(t,e){const n=Ha(this._path,Aa("state",e)),r=t.map((t=>t.token));n.resolvables=n.resolvables.filter((t=>-1===r.indexOf(t.token))).concat(t)}resolvePath(t="LAZY",e){const n=(Pc.includes(t)?t:"LAZY")===Mc.EAGER?Dc:Pc;Cc.traceResolvePath(this._path,t,e);const r=(t,e)=>n=>t.includes(this.getPolicy(n)[e]),i=this._path.reduce(((t,i)=>{const s=i.resolvables.filter(r(n,"when")),o=s.filter(r(["NOWAIT"],"async")),a=s.filter((t=>!r(["NOWAIT"],"async")(t))),c=this.subContext(i.state),l=t=>t.get(c,e).then((e=>({token:t.token,value:e})));return o.forEach(l),t.concat(a.map(l))}),[]);return Promise.all(i)}injector(){return this._injector||(this._injector=new Ic)}findNode(t){return Ha(this._path,(e=>e.resolvables.includes(t)))}getDependencies(t){const e=this.findNode(t),n=(Nc.subPath(this._path,(t=>t===e))||this._path).reduce(((t,e)=>t.concat(e.resolvables)),[]).filter((e=>e!==t));return t.deps.map((t=>{const e=n.filter((e=>e.token===t));if(e.length)return Xa(e);const r=window.angular.$injector.get(t);if(y(r))throw new Error("Could not find Dependency Injection token: "+$c(t));return new Ac(t,(()=>r),[],r)}))}}class Ic{constructor(){this.native=window.angular.$injector}get(t){return window.angular.$injector.get(t)}getAsync(t){return Promise.resolve(window.angular.$injector.get(t))}getNative(t){return window.angular.$injector.get(t)}}const Hc=(t,e)=>t.reduce(((t,n)=>t||b(e[n])),!1);function Fc(t){if(!t.parent)return{};const e=["component","bindings","componentProvider"],n=["templateProvider","templateUrl","template","notify","async"].concat(["controller","controllerProvider","controllerAs","resolveAs"]),r=e.concat(n);if(b(t.views)&&Hc(r,t))throw new Error(`State '${t.name}' has a 'views' object. It cannot also have "view properties" at the state level. Move the following properties into a view (in the 'views' object): ${r.filter((e=>b(t[e]))).join(", ")}`);const i={},s=t.views||{$default:Da(t,r)};return Object.entries(s).forEach((([r,s])=>{if(r=r||"$default",E(s)&&(s={component:s}),s=Object.assign({},s),Hc(e,s)&&Hc(n,s))throw new Error(`Cannot combine: ${e.join("|")} with: ${n.join("|")} in stateview: '${r}@${t.name}'`);s.resolveAs=s.resolveAs||"$resolve",s.$context=t,s.$name=r;const o=Bc.normalizeUIViewTarget(s.$context,s.$name);s.$ngViewName=o.ngViewName,s.$ngViewContextAnchor=o.ngViewContextAnchor,i[r]=s})),i}let qc=0;class Bc{constructor(t,e,n){this.path=t,this.viewDecl=e,this.factory=n,this.component=void 0,this.template=void 0,this.$id=qc++,this.loaded=!1,this.getTemplate=(t,e)=>this.component?this.factory.makeComponentTemplate(t,e,this.component,this.viewDecl.bindings):this.template}load(){const t=new Uc(this.path),e=this.path.reduce(((t,e)=>Object.assign(t,e.paramValues)),{}),n=[Promise.resolve(this.factory.fromConfig(this.viewDecl,e,t)),Promise.resolve(this.getController(t))];return Promise.all(n).then((t=>(Cc.traceViewServiceEvent("Loaded",this),this.controller=t[1],Object.assign(this,t[0]),this)))}getController(t){const e=this.viewDecl.controllerProvider;if(!uc(e))return this.viewDecl.controller;const n=Ce(e),r=Array.isArray(e)?Xa(e):e;return new Ac("",r,n).get(t)}static normalizeUIViewTarget(t,e=""){const n=e.split("@");let r=n[0]||"$default",i=E(n[1])?n[1]:"^";const s=/^(\^(?:\.\^)*)\.(.*$)/.exec(r);s&&(i=s[1],r=s[2]),"!"===r.charAt(0)&&(r=r.substring(1),i="");if(/^(\^(?:\.\^)*)$/.exec(i)){const e=i.split(".").reduce((t=>t.parent),t);i=e.name}else"."===i&&(i=t.name);return{ngViewName:r,ngViewContextAnchor:i}}}class zc{constructor(){this._ngViews=[],this._viewConfigs=[],this._viewConfigFactories={},this._listeners=[],this._pluginapi={_registeredUIView:t=>Ha(this._ngViews,(e=>e.id===t)),_registeredUIViews:()=>this._ngViews,_activeViewConfigs:()=>this._viewConfigs,_onSync:t=>(this._listeners.push(t),()=>Va(this._listeners,t))},this.viewConfigFactory(function(){let t=null;return(e,n)=>(t=t||window.angular.$injector.get("$templateFactory"),new Bc(e,n,t))}())}$get=[()=>this];rootViewContext(t){return this._rootContext=t||this._rootContext}viewConfigFactory(t){this.viewConfigFactory=t}createViewConfig(t,e){const n=this.viewConfigFactory;if(!n)throw new Error("ViewService: No view config factory registered for type "+e.$type);return n(t,e)}deactivateViewConfig(t){Cc.traceViewServiceEvent("<- Removing",t),Va(this._viewConfigs,t)}activateViewConfig(t){Cc.traceViewServiceEvent("-> Registering",t),this._viewConfigs.push(t)}sync(){const t=this._ngViews.map((t=>[t.fqn,t])).reduce(Za,{});function e(t){let e=t.viewDecl.$context,n=0;for(;++n&&e.parent;)e=e.parent;return n}const n=Ca(((t,e,n,r)=>e*(t(n)-t(r)))),r=t=>{-1!==this._ngViews.indexOf(t.ngView)&&t.ngView.configUpdated(t.viewConfig)},i=this._ngViews.sort(n((function(t){const e=t=>t&&t.parent?e(t.parent)+1:1;return 1e4*t.fqn.split(".").length+e(t.creationContext)}),1)).map((r=>{const i=this._viewConfigs.filter(zc.matches(t,r));return i.length>1&&i.sort(n(e,-1)),{ngView:r,viewConfig:i[0]}})),s=i.map((t=>t.viewConfig)),o=this._viewConfigs.filter((t=>!s.includes(t))).map((t=>({ngView:void 0,viewConfig:t})));i.forEach((t=>{r(t)}));const a=i.concat(o);this._listeners.forEach((t=>t(a))),Cc.traceViewSync(a)}registerUIView(t){Cc.traceViewServiceUIViewEvent("-> Registering",t);const e=this._ngViews;return e.filter((e=>e.fqn===t.fqn)).length&&Cc.traceViewServiceUIViewEvent("!!!! duplicate ngView named:",t),e.push(t),this.sync(),()=>{-1!==e.indexOf(t)?(Cc.traceViewServiceUIViewEvent("<- Deregistering",t),Va(e)(t)):Cc.traceViewServiceUIViewEvent("Tried removing non-registered ngView",t)}}available(){return this._ngViews.map((t=>t.fqn))}active(){return this._ngViews.filter((t=>t.$config)).map((t=>t.name))}}zc.matches=(t,e)=>n=>{if(e.$type!==n.viewDecl.$type)return!1;const r=n.viewDecl,i=r.$ngViewName.split("."),s=e.fqn.split(".");if(!La(i,s.slice(0-i.length)))return!1;const o=1-i.length||void 0,a=s.slice(0,o).join("."),c=t[a].creationContext;return r.$ngViewContextAnchor===(c&&c.name)};const Kc={CREATE:0,BEFORE:1,RUN:2,SUCCESS:3,ERROR:4},Wc={TRANSITION:0,STATE:1},Gc=2,Qc=3,Yc=4,Jc=5,Zc=6;let Xc=0;class tl{static superseded(t,e){const n=new tl(Gc,"The transition has been superseded by a different transition",t);return e&&e.redirected&&(n.redirected=!0),n}static redirected(t){return tl.superseded(t,{redirected:!0})}static invalid(t){return new tl(Yc,"This transition is invalid",t)}static ignored(t){return new tl(Jc,"The transition was ignored",t)}static aborted(t){return new tl(Qc,"The transition has been aborted",t)}static errored(t){return new tl(Zc,"The transition errored",t)}static normalize(t){return _a(tl)(t)?t:tl.errored(t)}constructor(t,e,n){this.$id=Xc++,this.type=t,this.message=e,this.detail=n,this.redirected=!1}toString(){const t=(e=this.detail)&&e.toString!==Object.prototype.toString?e.toString():$c(e);var e;const{$id:n,type:r,message:i}=this;return`Transition Rejection($id: ${n} type: ${r}, message: ${i}, detail: ${t})`}toPromise(){return Object.assign(nc(this),{_transitionRejection:this})}}class el{constructor(){this.eventBus=rl}$get=()=>this.eventBus}class nl{constructor(t=!1){this.disposed=!1,this.key=1,this.pendingKeys=[],this.publishDepth=0,this.subscriptions=[],this.topics={},this.async_=Boolean(t)}subscribe(t,e,n=null){let r=this.topics[t];r||(r=this.topics[t]=[]);const i=this.key;return this.subscriptions[i]=t,this.subscriptions[i+1]=e,this.subscriptions[i+2]=n,this.key=i+3,r.push(i),i}subscribeOnce(t,e,n=null){let r=!1;const i=this.subscribe(t,((...t)=>{r||(r=!0,this.unsubscribeByKey(i),e.apply(n,t))}),this);return i}static runAsync_(t,e,n){Promise.resolve().then((()=>{t.apply(e,n)}))}unsubscribe(t,e,n=null){const r=this.topics[t];if(r){const t=this.subscriptions,i=r.find((r=>t[r+1]===e&&t[r+2]===n));if(void 0!==i)return this.unsubscribeByKey(i)}return!1}unsubscribeByKey(t){const e=this.subscriptions[t];if(e){let n=this.topics[e];0!==this.publishDepth?(this.pendingKeys.push(t),this.subscriptions[t+1]=()=>{}):(n&&(this.topics[e]=n.filter((e=>e!==t))),delete this.subscriptions[t],delete this.subscriptions[t+1],delete this.subscriptions[t+2])}return!!e}publish(t,...e){const n=this.topics[t];if(n){const t=e;if(this.async_)for(let e=0;e<n.length;e++){const r=n[e];nl.runAsync_(this.subscriptions[r+1],this.subscriptions[r+2],t)}else{this.publishDepth++;try{for(let e=0,r=n.length;e<r&&!this.isDisposed();e++){const r=n[e];this.subscriptions[r+1].apply(this.subscriptions[r+2],t)}}finally{if(this.publishDepth--,this.pendingKeys.length>0&&0===this.publishDepth){let t;for(;t=this.pendingKeys.pop();)this.unsubscribeByKey(t)}}}return!0}return!1}clear(t){if(t){const e=this.topics[t];e&&(e.forEach(this.unsubscribeByKey,this),delete this.topics[t])}else this.subscriptions.length=0,this.topics={}}getCount(t){if(t){const e=this.topics[t];return e?e.length:0}let e=0;for(const t in this.topics)e+=this.getCount(t);return e}isDisposed(){return this.disposed}dispose(){this.clear(),this.pendingKeys.length=0,this.disposed=!0}}const rl=new nl(!0),il={current:()=>{},transition:null,traceData:{},bind:null};class sl{static chain(t,e){return t.reduce(((t,e)=>t.then((()=>e.invokeHook()))),e||Promise.resolve())}static invokeHooks(t,e){for(let n=0;n<t.length;n++){const r=t[n].invokeHook();if(hc(r)){const i=t.slice(n+1);return sl.chain(i,r).then((()=>{e()}))}}return e()}static runAllHooks(t){t.forEach((t=>t.invokeHook()))}constructor(t,e,n,r){this.transition=t,this.stateContext=e,this.registeredHook=n,this.options=r,this.isSuperseded=()=>this.type.hookPhase===Kc.RUN&&!this.options.transition.isActive(),this.options=Pa(r,il),this.type=n.eventType}logError(t){rl.publish("$stateService:defaultErrorHandler",t)}invokeHook(){const t=this.registeredHook;if(t._deregistered)return;const e=this.getNotCurrentRejection();if(e)return e;const n=this.options;Cc.traceHookInvocation(this,this.transition,n);const r=()=>t.callback.call(n.bind,this.transition,this.stateContext),i=t=>tl.normalize(t).toPromise(),s=e=>t.eventType.getErrorHandler(this)(e),o=e=>t.eventType.getResultHandler(this)(e);try{const t=r();return!this.type.synchronous&&hc(t)?t.catch(i).then(o,s):o(t)}catch(t){return s(tl.normalize(t))}finally{t.invokeLimit&&++t.invokeCount>=t.invokeLimit&&t.deregister()}}handleHookResult(t){const e=this.getNotCurrentRejection();return e||(hc(t)?t.then((t=>this.handleHookResult(t))):(Cc.traceHookResult(t,this.transition),!1===t?tl.aborted("Hook aborted transition").toPromise():t instanceof kc?tl.redirected(t).toPromise():void 0))}getNotCurrentRejection(){return this.transition._aborted?tl.aborted().toPromise():this.isSuperseded()?tl.superseded(this.options.current()).toPromise():void 0}toString(){const{options:t,registeredHook:e}=this;return`${ka("traceData.hookType")(t)||"internal"} context: ${ka("traceData.context.state.name")(t)||ka("traceData.context")(t)||"unknown"}, ${dc(200,fc(e.callback))}`}}sl.HANDLE_RESULT=t=>e=>t.handleHookResult(e),sl.LOG_REJECTED_RESULT=t=>e=>{hc(e)&&e.catch((e=>t.logError(tl.normalize(e))))},sl.LOG_ERROR=t=>e=>t.logError(e),sl.REJECT_ERROR=()=>t=>nc(t),sl.THROW_ERROR=()=>t=>{throw t};class ol{static fromString(t){return function(t){return!!/[!,*]+/.exec(t)}(t)?new ol(t):null}constructor(t){this.text=t,this.glob=t.split(".");const e=this.text.split(".").map((t=>"**"===t?"(?:|(?:\\.[^.]*)*)":"*"===t?"\\.[^.]*":"\\."+t)).join("");this.regexp=new RegExp("^"+e+"$")}matches(t){return this.regexp.test("."+t)}}function al(t,e,n){const r=E(e)?[e]:e;return!!(O(r)?r:function(t){const e=r;for(let n=0;n<e.length;n++){const r=new ol(e[n]);if(r&&r.matches(t.name)||!r&&e[n]===t.name)return!0}return!1})(t,n)}class cl{constructor(t,e,n,r,i,s={}){this.tranSvc=t,this.eventType=e,this.callback=n,this.matchCriteria=r,this.removeHookFromRegistry=i,this.invokeCount=0,this._deregistered=!1,this.priority=s.priority||0,this.bind=s.bind||null,this.invokeLimit=s.invokeLimit}_matchingNodes(t,e,n){if(!0===e)return t;const r=t.filter((t=>al(t.state,e,n)));return r.length?r:null}_getDefaultMatchCriteria(){return Fa(this.tranSvc._pluginapi._getPathTypes(),(()=>!0))}_getMatchingNodes(t,e){const n=Object.assign(this._getDefaultMatchCriteria(),this.matchCriteria);return Object.values(this.tranSvc._pluginapi._getPathTypes()).reduce(((r,i)=>{const s=i.scope===Wc.STATE,o=t[i.name]||[],a=s?o:[Xa(o)];return r[i.name]=this._matchingNodes(a,n[i.name],e),r}),{})}matches(t,e){const n=this._getMatchingNodes(t,e);return Object.values(n).every((t=>t))?n:null}deregister(){this.removeHookFromRegistry(this),this._deregistered=!0}}function ll(t,e,n){const r=(t._registeredHooks=t._registeredHooks||{})[n.name]=[],i=Va(r);function s(t,s,o={}){const a=new cl(e,n,s,t,i,o);return r.push(a),a.deregister.bind(a)}return t[n.name]=s,s}class ul{constructor(t){this.transition=t}buildHooksForPhase(t){return this.transition.transitionService._pluginapi._getEvents(t).map((t=>this.buildHooks(t))).reduce(za,[]).filter(Boolean)}buildHooks(t){const e=this.transition,n=e.treeChanges(),r=this.getMatchingHooks(t,n,e);if(!r)return[];const i={transition:e,current:e.options().current};return r.map((r=>r.matches(n,e)[t.criteriaMatchPath.name].map((n=>{const s=Object.assign({bind:r.bind,traceData:{hookType:t.name,context:n}},i),o=t.criteriaMatchPath.scope===Wc.STATE?n.state.self:null,a=new sl(e,o,r,s);return{hook:r,node:n,transitionHook:a}})))).reduce(za,[]).sort(function(t=!1){return function(e,n){const r=t?-1:1,i=(e.node.state.path.length-n.node.state.path.length)*r;return 0!==i?i:n.hook.priority-e.hook.priority}}(t.reverseSort)).map((t=>t.transitionHook))}getMatchingHooks(t,e,n){const r=t.hookPhase===Kc.CREATE,i=this.transition.transitionService;return(r?[i]:[this.transition,i]).map((e=>e.getHooks(t.name))).filter(Ya(Array.isArray,`broken event named: ${t.name}`)).reduce(za,[]).filter((t=>t.matches(e,n)))}}class hl{constructor(t,e,n,r){if(this.globals=r,this.transitionService=n,this._deferred=Promise.withResolvers(),this.promise=this._deferred.promise,this._registeredHooks={},this._hookBuilder=new ul(this),this.isActive=()=>this.globals.transition===this,this._targetState=e,!e.valid())throw new Error(e.error());this._options=Object.assign({current:Ta(this)},e.options()),this.$id=n._transitionCount++;const i=Nc.buildToPath(t,e);this._treeChanges=Nc.treeChanges(t,i,this._options.reloadState),this.createTransitionHookRegFns();const s=this._hookBuilder.buildHooksForPhase(Kc.CREATE);sl.invokeHooks(s,(()=>null)),this.applyViewConfigs(),this.onStart=void 0,this.onBefore=void 0,this.onSuccess=void 0,this.onEnter=void 0,this.onRetain=void 0,this.onExit=void 0,this.onFinish=void 0,this.onError=void 0}createTransitionHookRegFns(){this.transitionService._pluginapi._getEvents().filter((t=>t.hookPhase!==Kc.CREATE)).forEach((t=>ll(this,this.transitionService,t)))}getHooks(t){return this._registeredHooks[t]}applyViewConfigs(){const t=this._treeChanges.entering.map((t=>t.state));Nc.applyViewConfigs(this.transitionService.$view,this._treeChanges.to,t)}$from(){return Xa(this._treeChanges.from).state}$to(){return Xa(this._treeChanges.to).state}from(){return this.$from().self}to(){return this.$to().self}targetState(){return this._targetState}is(t){return t instanceof hl?this.is({to:t.$to().name,from:t.$from().name}):!(t.to&&!al(this.$to(),t.to,this)||t.from&&!al(this.$from(),t.from,this))}params(t="to"){return Object.freeze(this._treeChanges[t].map((t=>t.paramValues)).reduce(((t,e)=>({...t,...e})),{}))}paramsChanged(){const t=this.params("from"),e=this.params("to"),n=[].concat(this._treeChanges.to).concat(this._treeChanges.from).map((t=>t.paramSchema)).reduce(Ka,[]).reduce(Ga,[]);return Lc.changed(n,t,e).reduce(((t,n)=>(t[n.id]=e[n.id],t)),{})}injector(t,e="to"){let n=this._treeChanges[e];return t&&(n=Nc.subPath(n,(e=>e.state===t||e.state.name===t))),new Uc(n).injector()}getResolveTokens(t="to"){return new Uc(this._treeChanges[t]).getTokens()}addResolvable(t,e){void 0===e&&(e=""),t=_a(Ac)(t)?t:new Ac(t);const n="string"==typeof e?e:e.name,r=this._treeChanges.to,i=Ha(r,(t=>t.state.name===n));at(!!i,`targetNode not found ${n}`);new Uc(r).addResolvables([t],i.state)}redirectedFrom(){return this._options.redirectedFrom||null}originalTransition(){const t=this.redirectedFrom();return t&&t.originalTransition()||this}options(){return this._options}entering(){return Fa(this._treeChanges.entering,(t=>t.state)).map((t=>t.self))}exiting(){return Fa(this._treeChanges.exiting,(t=>t.state)).map((t=>t.self)).reverse()}retained(){return Fa(this._treeChanges.retained,(t=>t.state)).map((t=>t.self))}views(t="entering",e){let n=this._treeChanges[t];return n=e?n.filter(Aa("state",e)):n,n.map((t=>t.views)).reduce(za,[])}treeChanges(t){return t?this._treeChanges[t]:this._treeChanges}redirect(t){let e=1,n=this;for(;null!=(n=n.redirectedFrom());)if(++e>20)throw new Error("Too many consecutive Transition redirects (20+)");const r={redirectedFrom:this,source:"redirect"};"url"===this.options().source&&!1!==t.options().location&&(r.location="replace");const i=Object.assign({},this.options(),t.options(),r);t=t.withOptions(i,!0);const s=this.transitionService.create(this._treeChanges.from,t),o=this._treeChanges.entering,a=s._treeChanges.entering;return Nc.matching(a,o,Nc.nonDynamicParams).filter((e=>{return!(n=t.options().reloadState,t=>n&&t.state.includes[n.name])(e);var n})).forEach(((t,e)=>{t.resolvables=o[e].resolvables})),s}_changedParams(){const t=this._treeChanges;if(this._options.reload)return;if(t.exiting.length||t.entering.length)return;if(t.to.length!==t.from.length)return;if(Ja(t.to,t.from).map((t=>t[0].state!==t[1].state)).reduce(Ba,!1))return;const e=t.to.map((t=>t.paramSchema)),[n,r]=[t.to,t.from].map((t=>t.map((t=>t.paramValues))));return Ja(e,n,r).map((([t,e,n])=>Lc.changed(t,e,n))).reduce(za,[])}dynamic(){const t=this._changedParams();return!!t&&t.map((t=>t.dynamic)).reduce(Ba,!1)}ignored(){return!!this._ignoredReason()}_ignoredReason(){const t=this.globals.transition,e=this._options.reloadState,n=(t,n)=>{if(t.length!==n.length)return!1;const r=Nc.matching(t,n);return t.length===r.filter((t=>!e||!t.state.includes[e.name])).length},r=this.treeChanges(),i=t&&t.treeChanges();return i&&n(i.to,r.to)&&n(i.exiting,r.exiting)?"SameAsPending":0===r.exiting.length&&0===r.entering.length&&n(r.from,r.to)?"SameAsCurrent":void 0}run(){const t=t=>this._hookBuilder.buildHooksForPhase(t),e=t(Kc.BEFORE);return sl.invokeHooks(e,(()=>{const t=this.globals;return t.lastStartedTransitionId=this.$id,t.transition=this,t.transitionHistory.enqueue(this),Cc.traceTransitionStart(this),Promise.resolve()})).then((()=>{const e=t(Kc.RUN),n=Promise.resolve();return sl.invokeHooks(e,(()=>n))})).then((()=>{Cc.traceSuccess(this.$to(),this),this.success=!0,this._deferred.resolve(this.to());this._hookBuilder.buildHooksForPhase(Kc.SUCCESS).forEach((t=>{t.invokeHook()}))}),(e=>{Cc.traceError(e,this),this.success=!1,this._deferred.reject(e),this._error=e;t(Kc.ERROR).forEach((t=>t.invokeHook()))})),this.promise}valid(){return!this.error()||void 0!==this.success}abort(){y(this.success)&&(this._aborted=!0)}error(){const t=this.$to();if(t.self.abstract)return tl.invalid(`Cannot transition to abstract state '${t.name}'`);const e=t.parameters(),n=this.params(),r=e.filter((t=>!t.validates(n[t.id])));if(r.length){const e=r.map((t=>`[${t.id}:${$c(n[t.id])}]`)).join(", "),i=`The following parameter values are not valid for state '${t.name}': ${e}`;return tl.invalid(i)}return!1===this.success?this._error:void 0}toString(){const t=this.from(),e=this.to(),n=t=>null!==t["#"]&&void 0!==t["#"]?t:Ua(t,["#"]);return`Transition#${this.$id}( '${w(t)?t.name:t}'${$c(n(this._treeChanges.from.map((t=>t.paramValues)).reduce(((t,e)=>({...t,...e})),{})))} -> ${this.valid()?"":"(X) "}'${w(e)?e.name:e}'${$c(n(this.params()))} )`}}hl.diToken=hl;const dl=["$transition$",hl];function pl(t){const e=Object.values(t.treeChanges()).reduce(za,[]).reduce(Ga,[]),n=t=>dl.includes(t.token)?Ac.fromData(t.token,null):t;e.forEach((t=>{t.resolvables=t.resolvables.map(n)}))}function fl(t){return(e,n)=>(0,n.$$state()[t])(e,n)}const $l=fl("onExit"),ml=fl("onRetain"),gl=fl("onEnter"),vl=1e3,yl=t=>new Uc(t.treeChanges().to).resolvePath("EAGER",t).then((()=>{})),bl=(t,e)=>new Uc(t.treeChanges().to).subContext(e.$$state()).resolvePath("LAZY",t).then((()=>{})),wl=t=>new Uc(t.treeChanges().to).resolvePath("LAZY",t).then((()=>{})),El=t=>{const e=t.views("entering");if(e.length)return Promise.all(e.map((t=>Promise.resolve(t.load())))).then((()=>{}))},Cl=t=>{const e=t.globals,n=()=>{e.transition===t&&(e.transition=null)};t.onSuccess({},(()=>{e.successfulTransitions.enqueue(t),e.$current=t.$to(),e.current=e.$current.self,tc(t.params(),e.params)}),{priority:1e4}),t.promise.then(n,n)};function Sl(t,e,n,r){return t.onBefore({entering:t=>!!t.lazyLoad},(t=>{const i=t.entering().filter((t=>!!t.$$state().lazyLoad)).map((e=>xl(t,e,r)));return Promise.all(i).then((function(){if("url"!==t.originalTransition().options().source){const n=t.targetState();return e.target(n.identifier(),n.params(),n.options())}const r=n.match(n.parts()),i=r&&r.rule;if(i&&"STATE"===i.type){const n=i.state,s=r.match;return e.target(n,s,t.options())}n.sync()}))}))}function xl(t,e,n){const r=e.$$state().lazyLoad;let i=r._promise;if(!i){const s=t=>(delete e.lazyLoad,delete e.$$state().lazyLoad,delete r._promise,t),o=t=>(delete r._promise,Promise.reject(t));i=r._promise=Promise.resolve(r(t,e)).then((function(t){t&&Array.isArray(t.states)&&t.states.forEach((t=>n.register(t)));return t})).then(s,o)}return i}class Al{constructor(t,e,n,r,i=!1,s=sl.HANDLE_RESULT,o=sl.REJECT_ERROR,a=!1){this.name=t,this.hookPhase=e,this.hookOrder=n,this.criteriaMatchPath=r,this.reverseSort=i,this.getResultHandler=s,this.getErrorHandler=o,this.synchronous=a}}function kl(t){const e=t._ignoredReason();if(!e)return;Cc.traceTransitionIgnored(t);const n=t.globals.transition;return"SameAsCurrent"===e&&n&&n.abort(),tl.ignored().toPromise()}function Ol(t){if(!t.valid())throw new Error(t.error().toString())}let _l={location:!0,relative:null,inherit:!1,notify:!0,reload:!1,supercede:!0,custom:{},current:()=>null,source:"unknown"};class Tl{static $inject=["$routerGlobalsProvider","$viewProvider"];constructor(t,e){this._transitionCount=0,this._eventTypes=[],this._registeredHooks={},this._criteriaPaths={},this.globals=t,this.$view=e,this._deregisterHookFns={},this._pluginapi=Ra(Ta(this),{},Ta(this),["_definePathType","_defineEvent","_getPathTypes","_getEvents","getHooks"]),this._defineCorePaths(),this._defineCoreEvents(),this._registerCoreTransitionHooks(),t.successfulTransitions.onEvict(pl)}$get=["$state","$urlService","$stateRegistry","$view",(t,e,n,r)=>(this._deregisterHookFns.lazyLoad=Sl(this,t,e,n),this._deregisterHookFns.updateUrl=((t,e,n)=>{t.onSuccess({},(t=>{const r=t.options(),i=e;if("url"!==r.source&&r.location&&i.$current.navigable){const t={replace:"replace"===r.location};n.push(i.$current.navigable.url,i.globals.params,t)}n.update(!0)}),{priority:9999})})(this,t,e),this._deregisterHookFns.redirectTo=((t,e)=>{t.onStart({to:t=>!!t.redirectTo},(t=>{const n=t.to().redirectTo;if(!n)return;const r=e;function i(e){if(e)return e instanceof kc?e:E(e)?r.target(e,t.params(),t.options()):e.state||e.params?r.target(e.state||t.to(),e.params||t.params(),t.options()):void 0}return O(n)?Promise.resolve(n(t)).then(i):i(n)}))})(this,t),this._deregisterHookFns.activateViews=((t,e)=>{t.onSuccess({},(t=>{const n=t.views("entering"),r=t.views("exiting");(n.length||r.length)&&(r.forEach((t=>e.deactivateViewConfig(t))),n.forEach((t=>{e.activateViewConfig(t)})),e.sync())}))})(this,r),this)];create(t,e){return new hl(t,e,this,this.globals)}_defineCoreEvents(){const t=Kc,e=sl,n=this._criteriaPaths,r=!1,i=!0;this._defineEvent("onCreate",t.CREATE,0,n.to,r,e.LOG_REJECTED_RESULT,e.THROW_ERROR,i),this._defineEvent("onBefore",t.BEFORE,0,n.to),this._defineEvent("onStart",t.RUN,0,n.to),this._defineEvent("onExit",t.RUN,100,n.exiting,!0),this._defineEvent("onRetain",t.RUN,200,n.retained),this._defineEvent("onEnter",t.RUN,300,n.entering),this._defineEvent("onFinish",t.RUN,400,n.to),this._defineEvent("onSuccess",t.SUCCESS,0,n.to,r,e.LOG_REJECTED_RESULT,e.LOG_ERROR,i),this._defineEvent("onError",t.ERROR,0,n.to,r,e.LOG_REJECTED_RESULT,e.LOG_ERROR,i)}_defineCorePaths(){const{STATE:t,TRANSITION:e}=Wc;this._definePathType("to",e),this._definePathType("from",e),this._definePathType("exiting",t),this._definePathType("retained",t),this._definePathType("entering",t)}_defineEvent(t,e,n,r,i=!1,s=sl.HANDLE_RESULT,o=sl.REJECT_ERROR,a=!1){const c=new Al(t,e,n,r,i,s,o,a);this._eventTypes.push(c),ll(this,this,c)}_getEvents(t){return(b(t)?this._eventTypes.filter((e=>e.hookPhase===t)):this._eventTypes.slice()).sort(((t,e)=>{const n=t.hookPhase-e.hookPhase;return 0===n?t.hookOrder-e.hookOrder:n}))}_definePathType(t,e){this._criteriaPaths[t]={name:t,scope:e}}_getPathTypes(){return this._criteriaPaths}getHooks(t){return this._registeredHooks[t]}_registerCoreTransitionHooks(){const t=this._deregisterHookFns;t.addCoreResolves=void this.onCreate({},(function(t){t.addResolvable(Ac.fromData(hl,t),""),t.addResolvable(Ac.fromData("$transition$",t),""),t.addResolvable(Ac.fromData("$stateParams",t.params()),""),t.entering().forEach((e=>{t.addResolvable(Ac.fromData("$state$",e),e)}))})),t.ignored=(t=>t.onBefore({},kl,{priority:-9999}))(this),t.invalid=(t=>t.onBefore({},Ol,{priority:-1e4}))(this),t.onExit=(t=>t.onExit({exiting:t=>!!t.onExit},$l))(this),t.onRetain=(t=>t.onRetain({retained:t=>!!t.onRetain},ml))(this),t.onEnter=(t=>t.onEnter({entering:t=>!!t.onEnter},gl))(this),t.eagerResolve=(t=>t.onStart({},yl,{priority:vl}))(this),t.lazyResolve=(t=>t.onEnter({entering:Ta(!0)},bl,{priority:vl}))(this),t.resolveAll=(t=>t.onFinish({},wl,{priority:vl}))(this),t.loadViews=(t=>t.onFinish({},El))(this),t.updateGlobals=(t=>t.onCreate({},Cl))(this),t.lazyLoad=Sl(this)}}const jl=dt("$stateProvider");class Ll{get params(){return this.globals.params}get current(){return this.globals.current}get $current(){return this.globals.$current}static $inject=["$routerGlobalsProvider","$transitionsProvider"];constructor(t,e){this.stateRegistry=void 0,this.urlService=void 0,this.globals=t,this.transitionService=e,this.invalidCallbacks=[],this._defaultErrorHandler=function(t){throw t instanceof Error&&t.stack?t:t instanceof tl?new Error(t.toString()):new Error(t)};const n=["current","$current","params","transition"],r=Object.keys(Ll.prototype).filter((t=>!n.includes(t)));Ra(Ta(Ll.prototype),this,Ta(this),r),rl.subscribe("$stateService:defaultErrorHandler",(t=>this.defaultErrorHandler()(t)))}$get=()=>this;decorator(t,e){return this.stateRegistry.decorator(t,e)||this}state(t){if(!t.name)throw jl("stateinvalid","'name' required");try{this.stateRegistry.register(t)}catch(t){throw jl("stateinvalid",t.message)}return this}_handleInvalidTargetState(t,e){const n=Vc(this.stateRegistry,t),r=this.globals,i=()=>r.transitionHistory.peekTail(),s=i(),o=new cc(this.invalidCallbacks.slice()),a=new Uc(t).injector(),c=t=>{if(!(t instanceof kc))return;let e=t;return e=this.target(e.identifier(),e.params(),e.options()),e.valid()?i()!==s?tl.superseded().toPromise():this.transitionTo(e.identifier(),e.params(),e.options()):tl.invalid(e.error()).toPromise()};return function t(){const r=o.dequeue();return void 0===r?tl.invalid(e.error()).toPromise():Promise.resolve(r(e,n,a)).then(c).then((e=>e||t()))}()}onInvalid(t){return this.invalidCallbacks.push(t),function(){Va(this.invalidCallbacks)(t)}.bind(this)}reload(t){return this.transitionTo(this.globals.current,this.globals.params,{reload:!b(t)||t,inherit:!1,notify:!1})}go(t,e,n){const r=Pa(n,{relative:this.$current,inherit:!0},_l);return this.transitionTo(t,e,r)}target(t,e,n={}){if(w(n.reload)&&!n.reload.name)throw new Error("Invalid reload state object");const r=this.stateRegistry;if(n.reloadState=!0===n.reload?r.root():r.matcher.find(n.reload,n.relative),n.reload&&!n.reloadState)throw new Error(`No such reload state '${E(n.reload)?n.reload:n.reload.name}'`);return new kc(this.stateRegistry,t,e,n)}getCurrentPath(){const t=this.globals.successfulTransitions.peekTail();return t?t.treeChanges().to:(()=>[new Rc(this.stateRegistry.root())])()}transitionTo(t,e={},n={}){n=Pa(n,_l);const r=()=>this.globals.transition;n=Object.assign(n,{current:r});const i=this.target(t,e,n),s=this.getCurrentPath();if(!i.exists())return this._handleInvalidTargetState(s,i);if(!i.valid())return nc(i.error());if(!1===n.supercede&&r())return tl.ignored("Another transition is in progress and supercede has been set to false in TransitionOptions for the transition. So the transition was ignored in favour of the existing one in progress.").toPromise();const o=t=>e=>{if(e instanceof tl){const n=this.globals.lastStartedTransitionId<=t.$id;if(e.type===Jc)return n&&this.urlService.update(),Promise.resolve(this.globals.current);const r=e.detail;if(e.type===Gc&&e.redirected&&r instanceof kc){const e=t.redirect(r);return e.run().catch(o(e))}if(e.type===Qc)return n&&this.urlService.update(),Promise.reject(e)}return this.defaultErrorHandler()(e),Promise.reject(e)},a=this.transitionService.create(s,i),c=a.run().catch(o(a));return ec(c),Object.assign(c,{transition:a})}is(t,e,n){n=Pa(n,{relative:this.$current});const r=this.stateRegistry.matcher.find(t,n.relative);if(!b(r))return;if(this.$current!==r)return!1;if(!e)return!0;const i=r.parameters({inherit:!0,matchingKeys:e});return Lc.equals(i,Lc.values(i,e),this.globals.params)}includes(t,e,n){n=Pa(n,{relative:this.$current});const r=E(t)&&ol.fromString(t);if(r){if(!r.matches(this.$current.name))return!1;t=this.$current.name}const i=this.stateRegistry.matcher.find(t,n.relative),s=this.$current.includes;if(!b(i))return;if(!b(s[i.name]))return!1;if(!e)return!0;const o=i.parameters({inherit:!0,matchingKeys:e});return Lc.equals(o,Lc.values(o,e),this.globals.params)}href(t,e,n){n=Pa(n,{lossy:!0,inherit:!0,absolute:!1,relative:this.$current}),e=e||{};const r=this.stateRegistry.matcher.find(t,n.relative);if(!b(r))return null;n.inherit&&(e=this.globals.params.$inherit(e,this.$current,r));const i=r&&n.lossy?r.navigable:r;return i&&void 0!==i.url&&null!==i.url?this.urlService.href(i.url,e,{absolute:n.absolute}):null}defaultErrorHandler(t){return this._defaultErrorHandler=t||this._defaultErrorHandler}get(t,e){const n=this.stateRegistry;return 0===arguments.length?n.get():n.get(t,e||this.$current)}lazyLoad(t,e){const n=this.get(t);if(!n||!n.lazyLoad)throw new Error("Can not lazy load "+t);const r=this.getCurrentPath(),i=Vc(this.stateRegistry,r);return xl(e=e||this.transitionService.create(r,i),n)}}class Rl{constructor(){this.enabled=!1}useAnchorScroll(){this.enabled=!0}$get=["$anchorScroll",t=>this.enabled?t:async function(t){return setTimeout((()=>{t.scrollIntoView(!1)}),0)}]}class Nl{constructor(){this._useHttp=!1}$get=["$http","$templateCache","$templateRequest","$injector",(t,e,n,r)=>(this.$templateRequest=n,this.$http=t,this.$templateCache=e,this.$injector=r,this)];useHttpService(t){this._useHttp=t}fromConfig(t,e,n){const r=t=>Promise.resolve(t).then((t=>({template:t}))),i=t=>Promise.resolve(t).then((t=>({component:t})));switch((t=>b(t.template)?"template":b(t.templateUrl)?"templateUrl":b(t.templateProvider)?"templateProvider":b(t.component)?"component":b(t.componentProvider)?"componentProvider":"default")(t)){case"template":return r(this.fromString(t.template,e));case"templateUrl":return r(this.fromUrl(t.templateUrl,e));case"templateProvider":return r(this.fromProvider(t.templateProvider,e,n));case"component":return i(t.component);case"componentProvider":return i(this.fromComponentProvider(t.componentProvider,n));default:return r("<ng-view></ng-view>")}}fromString(t,e){return O(t)?t(e):t}fromUrl(t,e){return O(t)&&(t=t(e)),null==t?null:this._useHttp?this.$http.get(t,{cache:this.$templateCache,headers:{Accept:"text/html"}}).then((function(t){return t.data})):this.$templateRequest(t)}fromProvider(t,e,n){const r=Ce(t),i=Array.isArray(t)?Xa(t):t;return new Ac("",i,r).get(n)}fromComponentProvider(t,e){const n=Ce(t),r=Array.isArray(t)?Xa(t):t;return new Ac("",r,n).get(e)}makeComponentTemplate(t,e,n,r){r=r||{};const i=t=>{const e=function(t){return t.replace(/^([A-Z])/,(t=>t.toLowerCase())).replace(/([A-Z])/g,(t=>"-"+t.toLowerCase()))}(t);return/^(x|data)-/.exec(e)?`x-${e}`:e},s=function(t,e){const n=t.get(e+tn);if(!n||!n.length)throw new Error(`Unable to find component named '${e}'`);return n.map(Vl).reduce(za,[])}(this.$injector,n).map((n=>{const{name:s,type:o}=n,a=i(s);if(t.getAttribute(a)&&!r[s])return`${a}='${t.getAttribute(a)}'`;const c=r[s]||s;if("@"===o)return`${a}='{{s$resolve.${c}}}'`;if("&"===o){const t=e.getResolvable(c),n=t&&t.data,r=n&&Ce(n)||[];return`${a}='$resolve.${c}${Array.isArray(n)?`[${n.length-1}]`:""}(${r.join(",")})'`}return`${a}='$resolve.${c}'`})).join(" "),o=i(n);return`<${o} ${s}></${o}>`}}const Vl=t=>w(t.bindToController)?Ml(t.bindToController):Ml(t.scope),Ml=t=>Object.keys(t||{}).map((e=>[e,/^([=<@&])[?]?(.*)/.exec(t[e])])).filter((t=>b(t)&&Array.isArray(t[1]))).map((t=>({name:t[1][2]||t[0],type:t[1][1]})));function Pl(t,e){let n=["",""],r=t.replace(/[\\[\]^$*+?.()|{}]/g,"\\$&");if(!e)return r;switch(e.squash){case!1:n=["(",")"+(e.isOptional?"?":"")];break;case!0:r=r.replace(/\/$/,""),n=["(?:/(",")|/)?"];break;default:n=[`(${e.squash}|`,")?"]}return r+n[0]+e.type.pattern.source+n[1]}const Dl=function(t){const e=new RegExp("("+t+")","g");return t=>t.split(e).filter(Boolean)}("/"),Ul={state:{params:{}},strict:!0,caseInsensitive:!0};class Il{static encodeDashes(t){return encodeURIComponent(t).replace(/-/g,(t=>`%5C%${t.charCodeAt(0).toString(16).toUpperCase()}`))}static pathSegmentsAndParams(t){return Ja(t._segments,t._params.filter((t=>t.location===Oc)).concat(void 0)).reduce(za,[]).filter((t=>""!==t&&b(t)))}static queryParams(t){return t._params.filter((t=>t.location===_c))}static compare(t,e){const n=t=>t._cache.weights=t._cache.weights||(t=>t._cache.segments=t._cache.segments||t._cache.path.map(Il.pathSegmentsAndParams).reduce(za,[]).reduce(mc,[]).map((t=>E(t)?Dl(t):t)).reduce(za,[]))(t).map((t=>"/"===t?1:E(t)?2:t instanceof Lc?3:void 0)),r=n(t),i=n(e);((t,e,n)=>{const r=Math.max(t.length,e.length);for(;t.length<r;)t.push(n);for(;e.length<r;)e.push(n)})(r,i,0);const s=Ja(r,i);let o,a;for(a=0;a<s.length;a++)if(o=s[a][0]-s[a][1],0!==o)return o;return 0}constructor(t,e,n,r){this._cache={path:[this]},this._children=[],this._params=[],this._segments=[],this._compiled=[],this.config=r=Pa(r,Ul),this.pattern=t;const i=/([:*])([\w[\]]+)|\{([\w[\]]+)(?::\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,s=/([:]?)([\w[\].-]+)|\{([\w[\].-]+)(?::\s*((?:[^{\\}]+|\\.|{(?:[^{\\}]+|\\.)*})+))?\}/g,o=[];let a,c=0;const l=e=>{if(!Il.nameValidator.test(e))throw new Error(`Invalid parameter name '${e}' in pattern '${t}'`);if(Ha(this._params,Aa("id",e)))throw new Error(`Duplicate parameter name '${e}' in pattern '${t}'`)},u=(n,r)=>{const i=n[2]||n[3],s=r?n[4]:n[4]||("*"===n[1]?"[\\s\\S]*":null);return{id:i,regexp:s,segment:t.substring(c,n.index),type:s?e.type(s)||(t=>Na(e.type(r?"query":"path"),{pattern:new RegExp(t,this.config.caseInsensitive?"i":void 0)}))(s):null}};let h,d;for(;(a=i.exec(t))&&(h=u(a,!1),!(h.segment.indexOf("?")>=0));)l(h.id),this._params.push(n.fromPath(h.id,h.type,r.state)),this._segments.push(h.segment),o.push([h.segment,Xa(this._params)]),c=i.lastIndex;d=t.substring(c);const p=d.indexOf("?");if(p>=0){const t=d.substring(p);if(d=d.substring(0,p),t.length>0)for(c=0;a=s.exec(t);)h=u(a,!0),l(h.id),this._params.push(n.fromSearch(h.id,h.type,r.state)),c=i.lastIndex}this._segments.push(d),this._compiled=o.map((t=>Pl.apply(null,t))).concat(Pl(d))}append(t){return this._children.push(t),t._cache={path:this._cache.path.concat(t),parent:this,pattern:null},t}isRoot(){return this._cache.path[0]===this}toString(){return this.pattern}_getDecodedParamValue(t,e){return b(t)&&(t=e.type.decode(t)),e.value(t)}exec(t,e={},n){const r=(i=this._cache,s="pattern",o=()=>new RegExp(["^",Qa(this._cache.path.map((t=>t._compiled))).join(""),!1===this.config.strict?"/?":"","$"].join(""),this.config.caseInsensitive?"i":void 0),i[s]=i[s]||o()).exec(t);var i,s,o;if(!r)return null;const a=this.parameters(),c=a.filter((t=>!t.isSearch())),l=a.filter((t=>t.isSearch())),u=this._cache.path.map((t=>t._segments.length-1)).reduce(((t,e)=>t+e)),h={};if(u!==r.length-1)throw new Error(`Unbalanced capture group in route '${this.pattern}'`);function d(t){const e=t=>t.split("").reverse().join(""),n=Fa(e(t).split(/-(?!\\)/),e);return Fa(n,(t=>t.replace(/\\-/g,"-"))).reverse()}for(let t=0;t<u;t++){const e=c[t];let n=r[t+1];for(let t=0;t<e.replace.length;t++)e.replace[t].from===n&&(n=e.replace[t].to);n&&!0===e.array&&(n=d(n)),h[e.id]=this._getDecodedParamValue(n,e)}return l.forEach((t=>{let n=e[t.id];for(let e=0;e<t.replace.length;e++)t.replace[e].from===n&&(n=t.replace[e].to);h[t.id]=this._getDecodedParamValue(n,t)})),n&&(h["#"]=n),h}parameters(t={}){return!1===t.inherit?this._params:Qa(this._cache.path.map((t=>t._params)))}parameter(t,e={}){const n=this._cache.parent;return(()=>{for(const e of this._params)if(e.id===t)return e})()||!1!==e.inherit&&n&&n.parameter(t,e)||null}validates(t){t=t||{};return this.parameters().filter((e=>vt(t,e.id))).map((e=>((t,e)=>!t||t.validates(e))(e,t[e.id]))).reduce(qa,!0)}format(t={}){const e=this._cache.path,n=e.map(Il.pathSegmentsAndParams).reduce(za,[]).map((t=>E(t)?t:i(t))),r=e.map(Il.queryParams).reduce(za,[]).map(i);if(n.concat(r).filter((t=>!1===t.isValid)).length)return null;function i(e){const n=e.value(t[e.id]),r=e.validates(n),i=e.isDefaultValue(n),s=!!i&&e.squash,o=e.type.encode(n);return{param:e,value:n,isValid:r,isDefaultValue:i,squash:s,encoded:o}}const s=n.reduce(((t,e)=>{if(E(e))return t+e;const{squash:n,encoded:r,param:i}=e;return!0===n?t.match(/\/$/)?t.slice(0,-1):t:E(n)?t+n:!1!==n||null==r?t:Array.isArray(r)?t+Fa(r,Il.encodeDashes).join("-"):i.raw?t+r:t+encodeURIComponent(r)}),""),o=r.map((t=>{let{param:e,squash:n,encoded:r,isDefaultValue:i}=t;if(!(null==r||i&&!1!==n)&&(Array.isArray(r)||(r=[r]),0!==r.length))return e.raw||(r=Fa(r,encodeURIComponent)),r.map((t=>`${e.id}=${t}`))})).reduce(za,[]).join("&");return s+(o?`?${o}`:"")+(t["#"]?"#"+t["#"]:"")}}Il.nameValidator=/^\w+([-.]+\w+)*(?:\[\])?$/;class Hl{name=void 0;navigable=void 0;parent=void 0;params=void 0;url=void 0;includes=void 0;constructor(t){Object.assign(this,t),this.$$state=()=>this,this.self=t;const e=this.name?ol.fromString(this.name):null;this.__stateObjectCache={nameGlob:e}}is(t){return this===t||this.self===t||this.fqn()===t}fqn(){if(!(this.parent&&this.parent instanceof this.constructor))return this.name;const t=this.parent.fqn();return t?t+"."+this.name:this.name}root(){return this.parent&&this.parent.root()||this}parameters(t){return((t=Pa(t,{inherit:!0,matchingKeys:null})).inherit&&this.parent&&this.parent.parameters()||[]).concat(Object.values(this.params)).filter((e=>!t.matchingKeys||vt(t.matchingKeys,e.id)))}parameter(t,e={}){return this.url&&this.url.parameter(t,e)||Ha(Object.values(this.params),Aa("id",t))||e.inherit&&this.parent&&this.parent.parameter(t)}toString(){return this.fqn()}}Hl.isStateDeclaration=t=>O(t.$$state),Hl.isState=t=>w(t.__stateObjectCache);class Fl{constructor(t,e,n){this.urlService=t,this.stateService=e,this.routerGlobals=n}create(t,e){const{isState:n,isStateDeclaration:r}=Hl,i=ja([[E,t=>i(this.urlService.compile(t))],[_a(Il),t=>this.fromUrlMatcher(t,e)],[(s=n,o=r,(...t)=>s.apply(null,t)||o.apply(null,t)),t=>this.fromState(t,this.stateService,this.routerGlobals)],[_a(RegExp),t=>this.fromRegExp(t,e)],[O,t=>new ql(t,e)]]);var s,o;const a=i(t);if(!a)throw new Error("invalid 'what' in when()");return a}fromUrlMatcher(t,e){let n=e;E(e)&&(e=this.urlService.compile(e)),_a(Il)(e)&&(n=t=>e.format(t));const r={urlMatcher:t,matchPriority:function(e){const n=t.parameters().filter((t=>t.isOptional));return n.length?n.filter((t=>e[t.id])).length/n.length:1e-6},type:"URLMATCHER"};return Object.assign(new ql((function(e){const n=t.exec(e.path,e.search,e.hash);return t.validates(n)&&n}),n),r)}fromState(t,e,n){const r=Hl.isStateDeclaration(t)?t.$$state():t,i={state:r,type:"STATE"};return Object.assign(this.fromUrlMatcher(r.url,(t=>{const i=e;i.href(r,t)!==i.href(n.current,n.params)&&i.transitionTo(r,t,{inherit:!0,source:"url"})})),i)}fromRegExp(t,e){if(t.global||t.sticky)throw new Error("Rule RegExp must not be global or sticky");const n=E(e)?t=>e.replace(/\$(\$|\d{1,2})/,((e,n)=>t["$"===n?0:Number(n)])):e,r={regexp:t,type:"REGEXP"};return Object.assign(new ql((e=>t.exec(e.path)),n),r)}}Fl.isUrlRule=t=>t&&["type","match","handler"].every((e=>b(t[e])));class ql{constructor(t,e){this.match=t,this.type="RAW",this.$id=-1,this._group=void 0,this.handler=e||(t=>t)}matchPriority(t){return at(y(t)),0-this.$id}}let Bl;function zl(t){if(!(O(t)||E(t)||_a(kc)(t)||kc.isDef(t)))throw new Error("'handler' must be a string, function, TargetState, or have a state: 'newtarget' property");return O(t)?t:Ta(t)}Bl=(t,e)=>{let n=((t,e)=>(e.priority||0)-(t.priority||0))(t,e);return 0!==n?n:(n=((t,e)=>{const n={STATE:4,URLMATCHER:4,REGEXP:3,RAW:2,OTHER:1};return(n[t.type]||0)-(n[e.type]||0)})(t,e),0!==n?n:(n=((t,e)=>t.urlMatcher&&e.urlMatcher?Il.compare(t.urlMatcher,e.urlMatcher):0)(t,e),0!==n?n:((t,e)=>{const n={STATE:!0,URLMATCHER:!0};return n[t.type]&&n[e.type]?0:(t.$id||0)-(e.$id||0)})(t,e)))};class Kl{constructor(t){this._sortFn=Bl,this._rules=[],this._id=0,this.urlRuleFactory=t}initial(t){const e=zl(t);this.rule(this.urlRuleFactory.create(((t,e)=>0===e.globals.transitionHistory.size()&&!!/^\/?$/.exec(t.path)),e))}otherwise(t){const e=zl(t);this._otherwiseFn=this.urlRuleFactory.create(Ta(!0),e),this._sorted=!1}removeRule(t){Va(this._rules,t)}rule(t){if(!Fl.isUrlRule(t))throw new Error("invalid rule");return t.$id=this._id++,t.priority=t.priority||0,this._rules.push(t),this._sorted=!1,()=>this.removeRule(t)}rules(){return this.ensureSorted(),this._rules.concat(this._otherwiseFn?[this._otherwiseFn]:[])}sort(t){const e=this.stableSort(this._rules,this._sortFn=t||this._sortFn);let n=0;for(let t=0;t<e.length;t++)e[t]._group=n,t<e.length-1&&0!==this._sortFn(e[t],e[t+1])&&n++;this._rules=e,this._sorted=!0}ensureSorted(){this._sorted||this.sort()}stableSort(t,e){const n=t.map(((t,e)=>({elem:t,idx:e})));return n.sort(((t,n)=>{const r=e(t.elem,n.elem);return 0===r?t.idx-n.idx:r})),n.map((t=>t.elem))}when(t,e,n){const r=this.urlRuleFactory.create(t,e);return b(n&&n.priority)&&(r.priority=n.priority),this.rule(r),r}}class Wl{constructor(t){this.urlServiceConfig=t}fromConfig(t,e,n){return new Lc(t,e,Tc,this.urlServiceConfig,n)}fromPath(t,e,n){return new Lc(t,e,Oc,this.urlServiceConfig,n)}fromSearch(t,e,n){return new Lc(t,e,_c,this.urlServiceConfig,n)}}class Gl{static $inject=["$locationProvider","$stateProvider","$routerGlobalsProvider","$urlConfigProvider"];constructor(t,e,n,r){this.stateService=e,this.stateService.urlService=this,this.$locationProvider=t,this.$location=void 0,this.$browser=void 0,this.urlRuleFactory=new Fl(this,this.stateService,n),this.rules=new Kl(this.urlRuleFactory),this.config=r,this.paramFactory=new Wl(this.config),this.path=()=>this.$location.path(),this.search=()=>this.$location.search(),this.hash=()=>this.$location.hash(),this._urlListeners=[]}$get=["$location","$browser","$rootScope",(t,e,n)=>(this.$location=t,this.$browser=e,n.$on("$locationChangeSuccess",(t=>{this._urlListeners.forEach((e=>{e(t)}))})),this.listen(),this)];html5Mode(){return this.$locationProvider.getHtml5Mode().enabled&&"undefined"!=typeof history}baseHref(){return this._baseHref||(this._baseHref=this.$browser.baseHref()||window.location.pathname)}url(t,e=!1,n){return b(t)&&this.$location.url(t),e&&this.$location.replace(),n&&this.$location.state(n),this.$location.url()}onChange(t){return this._urlListeners.push(t),()=>Va(this._urlListeners)(t)}parts(){return{path:this.path(),search:this.search(),hash:this.hash()}}sync(t){if(t&&t.defaultPrevented)return;const e=this.stateService,n={path:this.path(),search:this.search(),hash:this.hash()},r=this.match(n);ja([[E,t=>this.url(t,!0)],[kc.isDef,t=>e.go(t.state,t.params,t.options)],[_a(kc),t=>e.go(t.state(),t.params(),t.options())]])(r&&r.rule.handler(r.match,n))}listen(t){if(!1!==t)return this._stopListeningFn=this._stopListeningFn||this.onChange((t=>this.sync(t)));this._stopListeningFn&&this._stopListeningFn(),delete this._stopListeningFn}match(t){t=Object.assign({path:"",search:{},hash:""},t);const e=this.rules.rules(),n=e=>{const n=e.match(t);return n&&{match:n,rule:e,weight:e.matchPriority(n)}};let r;for(let t=0;t<e.length&&(!r||r.rule._group===e[t]._group);t++){const i=n(e[t]);r=!r||i&&i.weight>r.weight?i:r}return r}update(t){t?this.location=this.url():this.url()!==this.location&&this.url(this.location,!0)}push(t,e,n){const r=n&&!!n.replace;this.url(t.format(e||{}),r)}href(t,e,n){let r=t.format(e);if(null==r)return null;n=n||{absolute:!1};const i=this.html5Mode();if(i||null===r||(r="#"+this.$locationProvider.getHashPrefix()+r),r=function(t,e,n,r){return"/"===r?t:e?(t=>t.replace(/\/[^/]*$/,""))(r)+t:n?r.slice(1)+t:t}(r,i,n.absolute,this.baseHref()),!n.absolute||!r)return r;const s=!i&&r?"/":"",o=this.$location.port(),a=80===o||443===o?"":":"+o;return[this.$location.protocol(),"://",this.$location.host(),a,s,r].join("")}compile(t,e){const n=this.config,r=e&&!e.state&&e.params;e=r?Object.assign({state:{params:r}},e):e;const i={strict:n._isStrictMode,caseInsensitive:n._isCaseInsensitive};return new Il(t,n.paramTypes,this.paramFactory,Object.assign(i,e))}isMatcher(t){if(!w(t))return!1;let e=!0;return Object.entries(Il.prototype).forEach((([n,r])=>{O(r)&&(e=e&&b(t[n])&&O(t[n]))})),e}}class Ql{constructor(t){this._states=t}isRelative(t){return 0===(t=t||"").indexOf(".")||0===t.indexOf("^")}find(t,e,n=!0){if(!t&&""!==t)return;const r=E(t);let i=r?t:t.name;this.isRelative(i)&&(i=this.resolvePath(i,e));const s=this._states[i];if(s&&(r||!(r||s!==t&&s.self!==t)))return s;if(r&&n){const t=Object.values(this._states).filter((t=>t.__stateObjectCache.nameGlob&&t.__stateObjectCache.nameGlob.matches(i)));return t.length>1&&console.error(`stateMatcher.find: Found multiple matches for ${i} using glob: `,t.map((t=>t.name))),t[0]}}resolvePath(t,e){if(!e)throw new Error(`No reference point given for path '${t}'`);const n=this.find(e),r=t.split("."),i=r.length;let s=0,o=n;for(;s<i;s++)if(""!==r[s]||0!==s){if("^"!==r[s])break;if(!o.parent)throw new Error(`Path '${t}' not valid for state '${n.name}'`);o=o.parent}else o=n;const a=r.slice(s).join(".");return o.name+(o.name&&a?".":"")+a}}function Yl(t){return t.self.$$state=()=>t,t.self}function Jl(t){return t.parent&&t.parent.data&&(t.data=t.self.data=Na(t.parent.data,t.data)),t.data}function Zl(t,e){return function(n){let r=n.self;if(r&&r.url&&r.name&&r.name.match(/\.\*\*$/)){const t={};tc(r,t),t.url+="{remainder:any}",r=t}const i=n.parent,s=function(t){if(!E(t))return!1;const e="^"===t.charAt(0);return{val:e?t.substring(1):t,root:e}}(r.url),o=s?t.compile(s.val,{state:r}):r.url;if(!o)return null;if(!t.isMatcher(o))throw new Error(`Invalid url '${o}' in state '${n}'`);return s&&s.root?o:(i&&i.navigable||e()).url.append(o)}}function Xl(t){return function(e){return!t(e)&&e.url?e:e.parent?e.parent.navigable:null}}function tu(t){return t.parent?t.parent.path.concat(t):[t]}function eu(t){const e=t.parent?Object.assign({},t.parent.includes):{};return e[t.name]=!0,e}function nu(t){const e=ja([[t=>t.resolveFn,t=>new Ac(su(t),t.resolveFn,t.deps,t.policy)],[t=>t.useFactory,t=>new Ac(su(t),t.useFactory,t.deps||t.dependencies,t.policy)],[t=>t.useClass,t=>new Ac(su(t),(()=>new t.useClass),[],t.policy)],[t=>t.useValue,t=>new Ac(su(t),(()=>t.useValue),[],t.policy,t.useValue)],[t=>t.useExisting,t=>new Ac(su(t),(t=>t),[t.useExisting],t.policy)]]),n=ja([[xa((t=>t.val),E),t=>new Ac(t.token,(t=>t),[t.val],t.policy)],[xa((t=>t.val),Array.isArray),t=>new Ac(t.token,Xa(t.val),t.val.slice(0,-1),t.policy)],[xa((t=>t.val),O),t=>new Ac(t.token,t.val,(t=>{const e=window.angular.$injector;return t.$inject||e&&Ce(t,e.strictDi)||"deferred"})(t.val),t.policy)]]),r=ja([[_a(Ac),t=>t],[t=>!(!t.token||!t.resolveFn),e],[t=>!!(t&&t.val&&(E(t.val)||Array.isArray(t.val)||O(t.val))),n],[Ta(!0),t=>{throw new Error("Invalid resolve value: "+$c(t))}]]),i=t.resolve,s=Array.isArray(i)?i:((t,e)=>Object.keys(t||{}).map((n=>({token:n,val:t[n],deps:void 0,policy:e[n]}))))(i,t.resolvePolicy||{});return s.map(r)}class ru{constructor(t,e){this.matcher=t,this.$injector=void 0;const n=this,r=()=>t.find("");var i;this.builders={name:[t=>t.name],self:[Yl],parent:[function(e){return iu(e)?null:t.find(n.parentName(e))||r()}],data:[Jl],url:[Zl(e,r)],navigable:[Xl(iu)],params:[(i=e.paramFactory,function(t){const e=t.url&&t.url.parameters({inherit:!1})||[],n=Object.values(Fa(Ua(t.params||{},e.map((t=>t.id))),((e,n)=>i.fromConfig(n,null,t.self))));return e.concat(n).map((t=>[t.id,t])).reduce(Za,{})})],views:[],path:[tu],includes:[eu],resolvables:[nu]}}builder(t,e){const n=this.builders,r=n[t]||[];return E(t)&&!b(e)?r.length>1?r:r[0]:E(t)&&O(e)?(n[t]=r,n[t].push(e),()=>n[t].splice(n[t].indexOf(e,1))&&null):void 0}build(t){const{matcher:e,builders:n}=this,r=this.parentName(t);if(r&&!e.find(r,void 0,!1))return null;for(const e in n){if(!vt(n,e))continue;const r=n[e].reduce(((t,e)=>n=>e(n,t)),(()=>{}));t[e]=r(t)}return t}parentName(t){const e=t.name||"",n=e.split(".");if("**"===n.pop()&&n.pop(),n.length){if(t.parent)throw new Error(`States that specify the 'parent:' property should not have a '.' in their name (${e})`);return n.join(".")}return t.parent?E(t.parent)?t.parent:t.parent.name:""}name(t){const e=t.name;if(-1!==e.indexOf(".")||!t.parent)return e;const n=E(t.parent)?t.parent:t.parent.name;return n?n+"."+e:e}}function iu(t){return""===t.name}function su(t){return t.provide||t.token}class ou{constructor(t,e,n,r,i){this.stateRegistry=t,this.urlServiceRules=e,this.states=n,this.builder=r,this.listeners=i,this.queue=[]}register(t){const e=new Hl(t);if(!E(name))throw new Error("State must have a valid name");if(vt(this.states,e.name)||this.queue.map((t=>t.name)).includes(e.name))throw new Error(`State '${e.name}' is already defined`);return this.queue.push(e),this.flush(),e}flush(){const{queue:t,states:e,builder:n}=this,r=[],i=[],s={},o=t=>vt(this.states,t)&&this.states[t],a=()=>{r.length&&this.listeners.forEach((t=>t("registered",r.map((t=>t.self)))))};for(;t.length>0;){const c=t.shift(),l=c.name,u=n.build(c),h=i.indexOf(c);if(u){const t=o(l);if(t&&t.name===l)throw new Error(`State '${l}' is already defined`);const n=o(l+".**");n&&this.stateRegistry.deregister(n),e[l]=c,this.attachRoute(c),h>=0&&i.splice(h,1),r.push(c);continue}const d=s[l];if(s[l]=t.length,h>=0&&d===t.length)return t.push(c),a(),e;h<0&&i.push(c),t.push(c)}return a(),e}attachRoute(t){if(t.abstract||!t.url)return;const e=this.urlServiceRules;e.rule(e.urlRuleFactory.create(t))}}class au{static $inject=function(t){return t.map((t=>t+"Provider"))}([Xt.$urlService,Xt.$state,Xt.$routerGlobals,Xt.$view]);constructor(t,e,n,r){this.states={},e.stateRegistry=this,this.urlService=t,this.urlServiceRules=t.rules,this.$injector=void 0,this.listeners=[],this.matcher=new Ql(this.states),this.builder=new ru(this.matcher,t),this.builder.builder("views",Fc),this.builder.builder("onExit",this.getStateHookBuilder("onExit")),this.builder.builder("onRetain",this.getStateHookBuilder("onRetain")),this.builder.builder("onEnter",this.getStateHookBuilder("onEnter")),this.stateQueue=new ou(this,this.urlServiceRules,this.states,this.builder,this.listeners),this.registerRoot(),r.rootViewContext(this.root()),n.$current=this.root(),n.current=n.$current.self}$get=["$injector",t=>(this.$injector=t,this.builder.$injector=t,this)];getStateHookBuilder(t){let e=this;return function(n){const r=n[t],i="onExit"===t?"from":"to";return r?function(t,n){const s=new Uc(t.treeChanges(i)).subContext(n.$$state()),o=Object.assign(cu(s),{$state$:n,$transition$:t});return e.$injector.invoke(r,this,o)}:void 0}}registerRoot(){this._root=this.stateQueue.register({name:"",url:"^",views:null,params:{"#":{value:null,type:"hash",dynamic:!0}},abstract:!0}),this._root.navigable=null}onStatesChanged(t){return this.listeners.push(t),function(){Va(this.listeners)(t)}.bind(this)}root(){return this._root}register(t){return this.stateQueue.register(t)}_deregisterTree(t){const e=this.get().map((t=>t.$$state())),n=t=>{const r=e.filter((e=>-1!==t.indexOf(e.parent)));return 0===r.length?r:r.concat(n(r))},r=n([t]),i=[t].concat(r).reverse();return i.forEach((t=>{const e=this.urlServiceRules;e.rules().filter(Aa("state",t)).forEach((t=>e.removeRule(t))),delete this.states[t.name]})),i}deregister(t){const e=this.get(t);if(!e)throw new Error("Can't deregister state; not found: "+t);const n=this._deregisterTree(e.$$state());return this.listeners.forEach((t=>t("deregistered",n.map((t=>t.self))))),n}get(t,e){if(0===arguments.length)return Object.keys(this.states).map((t=>this.states[t].self));const n=this.matcher.find(t,e);return n&&n.self||null}decorator(t,e){return this.builder.builder(t,e)}}const cu=t=>t.getTokens().filter(E).map((e=>{const n=t.getResolvable(e);return[e,"NOWAIT"===t.getPolicy(n).async?n.promise:n.data]})).reduce(Za,{});function lu(t){const e=t.match(/^\s*({[^}]*})\s*$/);e&&(t="("+e[1]+")");const n=t.replace(/\n/g," ").match(/^\s*([^(]*?)\s*(\((.*)\))?\s*$/);if(!n||4!==n.length)throw new Error("Invalid state ref '"+t+"'");return{state:n[1]||null,paramExpr:n[3]||null}}function uu(t){const e=Ft(t,"$ngView"),n=ka("$cfg.path")(e);return n?Xa(n).state.name:void 0}function hu(t,e,n){const r=n.ngState||t.current.name,i=Object.assign(function(t,e){return{relative:uu(t)||e.$current,inherit:!0,source:"sref"}}(e,t),n.ngStateOpts||{}),s=t.href(r,n.ngStateParams,i);return{ngState:r,ngStateParams:n.ngStateParams,ngStateOpts:i,href:s}}function du(t){const e="[object SVGAnimatedString]"===Object.prototype.toString.call(t.getAttribute("href")),n="FORM"===t.nodeName;return{attr:n?"action":e?"xlink:href":"href",isAnchor:"A"===t.nodeName,clickable:!n}}function pu(t,e,n,r,i){return function(s){const o=s.which||s.button,a=r();if(o>1||s.ctrlKey||s.metaKey||s.shiftKey||s.altKey||t.getAttribute("target"))s.preventDefault(),s.stopImmediatePropagation();else{const r=setTimeout((function(){if(!t.getAttribute("disabled")){e.go(a.ngState,a.ngStateParams,a.ngStateOpts).then((()=>{i.$emit("$updateBrowser")}))}}));s.preventDefault();let o=n.isAnchor&&!a.href?1:0;s.preventDefault=function(){o--<=0&&clearTimeout(r)}}}}function fu(t,e,n,r){let i;r&&(i=r.events),Array.isArray(i)||(i=["click"]);for(const e of i)t.addEventListener(e,n);e.$on("$destroy",(function(){for(const e of i)t.removeEventListener(e,n)}))}function $u(t,e,n){const r=t;return{restrict:"A",require:["?^ngSrefActive","?^ngSrefActiveEq"],link:(t,i,s,o)=>{const a=du(i),c=o[1]||o[0];let l=null;const u={},h=()=>hu(r,i,u),d=lu(s.ngSref);function p(){u.ngStateParams=Object.assign({},t.$eval(d.paramExpr));const e=h();l&&l(),c&&(l=c.$$addStateInfo(e.ngState,e.ngStateParams)),null!=e.href&&s.$set(a.attr,e.href)}u.ngState=d.state,u.ngStateOpts=s.ngSrefOpts?t.$eval(s.ngSrefOpts):{},d.paramExpr&&(t.$watch(d.paramExpr,(function(t){u.ngStateParams=Object.assign({},t),p()}),!0),u.ngStateParams=Object.assign({},t.$eval(d.paramExpr))),p(),t.$on("$destroy",e.onStatesChanged(p)),t.$on("$destroy",n.onSuccess({},p)),a.clickable&&fu(i,t,pu(i,r,a,h,t),u.ngStateOpts)}}}function mu(t,e,n){return{restrict:"A",require:["?^ngSrefActive","?^ngSrefActiveEq"],link:function(r,i,s,o){const a=du(i),c=o[1]||o[0];let l,u=null;const h={},d=()=>hu(t,i,h),p=["ngState","ngStateParams","ngStateOpts"],f=p.reduce(((t,e)=>(t[e]=()=>{},t)),{});function $(){const t=d();u&&u(),c&&(u=c.$$addStateInfo(t.ngState,t.ngStateParams)),null!=t.href&&s.$set(a.attr,t.href)}p.forEach((t=>{h[t]=s[t]?r.$eval(s[t]):null,s.$observe(t,(e=>{f[t](),f[t]=r.$watch(e,(e=>{h[t]=e,$()}))}))})),$(),r.$on("$destroy",e.onStatesChanged($)),r.$on("$destroy",n.onSuccess({},$)),a.clickable&&(l=pu(i,t,a,d,r),fu(i,r,l,h.ngStateOpts))}}}function gu(t,e,n,r,i){return{restrict:"A",controller:function(s,o,a){let c,l,u=[];c=n(a.ngSrefActiveEq||"",!1)(s);try{l=s.$eval(a.ngSrefActive)}catch{}function h(t){t.promise.then($,(()=>{}))}function d(){p(l)}function p(t){w(t)&&(u=[],Object.entries(t).forEach((([t,e])=>{const n=function(t,e){const n=lu(t);f(n.state,s.$eval(n.paramExpr),e)};E(e)?n(e,t):Array.isArray(e)&&e.forEach((e=>{n(e,t)}))})))}function f(e,n,r){const i={state:t.get(e,uu(o))||{name:e},params:n,activeClass:r};return u.push(i),function(){Va(u)(i)}}function $(){const e=t=>t.split(/\s/).filter(Boolean),n=t=>t.map((t=>t.activeClass)).map(e).reduce(za,[]),r=n(u).concat(e(c)).reduce(Ga,[]),i=n(u.filter((e=>t.includes(e.state.name,e.params)))),s=!!u.filter((e=>t.is(e.state.name,e.params))).length?e(c):[],a=i.concat(s).reduce(Ga,[]),l=r.filter((t=>!a.includes(t)));a.forEach((t=>o.classList.add(t))),l.forEach((t=>o.classList.remove(t)))}l=l||n(a.ngSrefActive||"",!1)(s),p(l),this.$$addStateInfo=function(t,e){if(w(l)&&u.length>0)return;const n=f(t,e,l);return $(),n},s.$on("$destroy",function(){const t=r.onStatesChanged(d),e=i.onStart({},h),n=s.$on("$stateChangeSuccess",$);return function(){t(),e(),n()}}()),e.transition&&h(e.transition),$()}}}$u.$inject=["$state","$stateRegistry","$transitions"],mu.$inject=["$state","$stateRegistry","$transitions"],gu.$inject=["$state","$routerGlobals","$interpolate","$stateRegistry","$transitions"];let vu=["$view","$animate","$ngViewScroll","$interpolate",function(t,e,n,r){const i={$cfg:{viewDecl:{$context:t.rootViewContext()}},$ngView:{}},s={count:0,terminal:!0,priority:400,transclude:"element",compile:function(o,a,c){return function(o,a,l){const u=l.onload||"",h=l.autoscroll,d={enter:function(t,n,r){mt(t)?e.enter(t,null,n).then(r):(n.after(t),r())},leave:function(t,n){mt(t)?e.leave(t).then(n):(t.parentElement.removeChild(t),n())}},p=Ft(a,"$ngView")||i,f=r(l.ngView||l.name||"")(o)||"$default";let $,m,g,v;const y={id:s.count++,name:f,fqn:p.$ngView.fqn?p.$ngView.fqn+"."+f:f,config:null,configUpdated:function(t){if(t&&!(t instanceof Bc))return;if(e=v,n=t,e===n)return;var e,n;Cc.traceUIViewConfigUpdated(y,t&&t.viewDecl&&t.viewDecl.$context),v=t,E(t)},get creationContext(){const t=ka("$cfg.viewDecl.$context")(p),e=ka("$ngView.creationContext")(p);return t||e}};Cc.traceUIViewEvent("Linking",y),Mt(a,"$ngView",{$ngView:y}),E();const w=t.registerUIView(y);function E(t){const e=o.$new(),r=Promise.withResolvers(),i=Promise.withResolvers(),s={$cfg:t,$ngView:y},l={$animEnter:r.promise,$animLeave:i.promise,$$animLeave:i};e.$emit("$viewContentLoading",f);const p=c(e,(function(t){Mt(t,"$ngViewAnim",l),Mt(t,"$ngView",s),d.enter(t,a,(function(){r.resolve(),g&&g.$emit("$viewContentAnimationEnded"),(b(h)&&!h||o.$eval(h))&&n(t)})),function(){if($&&(Cc.traceUIViewEvent("Removing (previous) el",Pt($,"$ngView")),$.remove(),$=null),g&&(Cc.traceUIViewEvent("Destroying scope",y),g.$destroy(),g=null),m){const t=Pt(m,"$ngViewAnim");Cc.traceUIViewEvent("Animate out",t),d.leave(m,(function(){t.$$animLeave.resolve(),$=null})),$=m,m=null}}()}));m=p,g=e,g.$emit("$viewContentLoaded",t||v),g.$eval(u)}o.$on("$destroy",(function(){Cc.traceUIViewEvent("Destroying/Unregistering",y),w()}))}}};return s}];function yu(t,e,n){const r=ka("viewDecl.controllerAs"),i=ka("viewDecl.resolveAs");return{priority:-400,compile:function(s){const o=s.innerHTML;return Nt(s,!0),function(s,a){const c=Pt(a,"$ngView");if(!c)return a.innerHTML=o,void t(a.contentDocument||a.childNodes)(s);const l=c.$cfg||{viewDecl:{},getTemplate:()=>{}},u=l.path&&new Uc(l.path);a.innerHTML=l.getTemplate(a,u)||o,Cc.traceUIViewFill(c.$ngView,a.innerHTML);const h=t(a.contentDocument||a.childNodes),d=l.controller,p=r(l),f=i(l),$=u&&cu(u);if(f&&(s.$target[f]=$),d){const t=e(d,Object.assign({},$,{$scope:s,$element:a}));p&&(s.$target[p]=t,s.$target[p][f]=$),Mt(a,"$ngControllerController",t),Array.from(a.children).forEach((e=>{Mt(e,"$ngControllerController",t)})),function(t,e,n,r){!O(e.$onInit)||r.viewDecl.component||r.viewDecl.componentProvider||e.$onInit();const i=Xa(r.path).state.self,s={bind:e};if(O(e.uiOnParamsChanged)){const o=new Uc(r.path).getResolvable("$transition$").data,a=t=>{if(t===o||-1!==t.exiting().indexOf(i))return;const n=t.params("to"),r=t.params("from"),s=t=>t.paramSchema,a=t.treeChanges("to").map(s).reduce(za,[]),c=t.treeChanges("from").map(s).reduce(za,[]),l=a.filter((t=>{const e=c.indexOf(t);return-1===e||!c[e].type.equals(n[t.id],r[t.id])}));if(l.length){const r=l.map((t=>t.id)),i=Ia(n,((t,e)=>-1!==r.indexOf(e)));e.uiOnParamsChanged(i,t)}};n.$on("$destroy",t.onSuccess({},a,s))}if(O(e.uiCanExit)){const r=bu++,o="_uiCanExitIds",a=t=>!!t&&(t[o]&&!0===t[o][r]||a(t.redirectedFrom())),c=t=>{let n;const i=t[o]=t[o]||{};return a(t)||(n=Promise.resolve(e.uiCanExit(t)),n.then((t=>i[r]=!1!==t))),n},l={exiting:i.name};n.$on("$destroy",t.onBefore(l,c,s))}}(n,t,s,l)}h(s)}}}}yu.$inject=["$compile","$controller","$transitions"];let bu=0;function wu(t){return{link:(e,n,r)=>{const i=r.ngChannel,s=n.childNodes.length>0,o=t.subscribe(i,(t=>{s?w(t)&&e.$merge(t):n.innerHTML=t}));e.$on("$destroy",(()=>{t.unsubscribeByKey(o)}))}}}function Eu(t,e){return{restrict:"A",link(n,r,i){const s=i.ngSetter;if(!s)return void e.warn("ngSetter: Model expression is not provided.");const o=t(s).assign;if(!o)return void e.warn("ngSetter: Invalid model expression.");const a=t=>{o(n,t)},c=new MutationObserver((t=>{let e=!1;for(const n of t)if("childList"===n.type||"characterData"===n.type){e=!0;break}e&&a(r.innerHTML)}));r&&r?(c.observe(r,{childList:!0,subtree:!0,characterData:!0}),n.$on("$destroy",(()=>c.disconnect())),a(r.innerHTML)):e.warn("ngSetter: Element is not a valid DOM node.")}}}function Cu(t){const e="ng"+t.charAt(0).toUpperCase()+t.slice(1),n=function(t,e){return function(n,r,i){function s(t){let e=null;if("form"===t.tagName.toLowerCase())e=t;else if("form"in t&&t.form)e=t.form;else if(t.hasAttribute("form")){const n=t.getAttribute("form");if(n){const t=document.getElementById(n);t&&"form"===t.tagName.toLowerCase()&&(e=t)}}if(!e){if("name"in t&&"string"==typeof t.name&&t.name.length>0&&(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLSelectElement)){const e=t.name,n=t.value;return{[e]:n}}return{}}const n=new FormData(e),r={};return n.forEach(((t,e)=>{r[e]=t})),r}return{restrict:"A",terminal:!0,link(o,a,c){const l=function(t){const e=t.tagName.toLowerCase();if(["input","textarea","select"].includes(e))return"change";if("form"===e)return"submit";return"click"}(a),u=a.tagName.toLowerCase();a.addEventListener(l,(l=>{if(a.disabled)return;"form"===u&&l.preventDefault();const h=a.dataset.swap||"innerHTML",d=a.dataset.target,p=d?document.querySelector(d):a;if(!p)return void i.warn(`${e}: target "${d}" not found`);const f=c[e];if(!f)return void i.warn(`${e}: no URL specified`);const $=t=>{!function(t,e,n,r,i){let s=[];if(!["textcontent","delete","none"].includes(e)){if(!t)return;if(w(t))return void r.$merge(t);const e=i(t)(r);s=e instanceof DocumentFragment?Array.from(e.childNodes):[e]}switch(e){case"innerHTML":default:n.replaceChildren(...s);break;case"outerHTML":{const t=n.parentNode;if(!t)return;const e=document.createDocumentFragment();s.forEach((t=>e.appendChild(t))),t.replaceChild(e,n);break}case"textContent":n.textContent=t;break;case"beforebegin":s.forEach((t=>n.parentNode.insertBefore(t,n)));break;case"afterbegin":s.slice().reverse().forEach((t=>n.insertBefore(t,n.firstChild)));break;case"beforeend":s.forEach((t=>n.appendChild(t)));break;case"afterend":s.slice().reverse().forEach((t=>n.parentNode.insertBefore(t,n.nextSibling)));break;case"delete":n.remove();case"none":}}(t.data,h,p,o,r)};if("post"===t||"put"===t){const e=s(a);n[t](f,e).then($).catch($)}else n[t](f).then($).catch($)}))}}}}(t,e);return n.$inject=["$http","$compile","$log"],n}wu.$inject=[Xt.$eventBus],Eu.$inject=["$parse","$log"];const Su=Cu("get"),xu=Cu("delete"),Au=Cu("post"),ku=Cu("put");const Ou=dt("ng"),_u=dt("$injector"),Tu={};const ju=new class{constructor(){this.$cache=yt,this.$eventBus=rl,this.version="0.7.7",this.bootsrappedModules=[],this.getController=Ht,this.getInjector=Gt,this.getScope=Dt,this.errorHandlingConfig=ht,window.angular=this,this.$injectTokens=Xt,function(t){t.module("ng",[],["$provide",t=>{t.provider({$$sanitizeUri:mo}),t.provider("$compile",en).directive({input:Bn,textarea:Bn,form:ln,script:Gn,select:Yn,option:Jn,ngBind:Zn,ngBindHtml:tr,ngBindTemplate:Xn,ngClass:sr,ngClassEven:ar,ngClassOdd:or,ngCloak:cr,ngController:lr,ngDelete:xu,ngDisabled:Lo,ngForm:un,ngGet:Su,ngHide:pr,ngIf:fr,ngInclude:$r,ngInit:gr,ngMessages:bo,ngMessage:So,ngMessageExp:xo,ngMessagesInclude:Co,ngMessageDefault:Ao,ngNonBindable:vr,ngPost:Au,ngPut:ku,ngRef:br,ngRepeat:Sr,ngSetter:Eu,ngShow:dr,ngStyle:xr,ngSwitch:Ar,ngSwitchWhen:kr,ngSwitchDefault:Or,ngOptions:Rr,ngTransclude:Vr,ngModel:yn,pattern:Ur,ngPattern:Ur,required:Dr,ngRequired:Dr,ngMinlength:Hr,minlength:Hr,ngMaxlength:Ir,maxlength:Ir,ngValue:Wn,ngModelOptions:$n}).directive({input:zn,ngAnimateSwap:wa,ngAnimateChildren:Ea,ngChecked:Po,ngClick:Vo,ngDblclick:Fo,ngInclude:mr,ngHide:Uo,ngShow:Ro,ngMessages:No,ngModel:Ho,ngReadonly:Io,ngRequired:Mo,ngValue:Do,ngSref:$u,ngSrefActive:gu,ngSrefActiveEq:gu,ngState:mu,ngView:vu,ngChannel:wu}).directive({ngView:yu}).directive(Pr).directive(He),t.provider({$aria:jo,$anchorScroll:Br,$animate:Ii,$$animation:oa,$animateCss:Zo,$$animateCssDriver:ga,$$animateJs:ra,$$animateJsDriver:ba,$$animateCache:da,$$animateQueue:na,$$AnimateRunner:Ki,$$animateAsyncRun:Bi,$browser:qi,$controller:_e,$exceptionHandler:Qi,$filter:ss,$interpolate:xs,$http:Fs,$httpParamSerializer:Ms,$httpBackend:qs,$location:Ys,$log:eo,$parse:gs,$$rAFScheduler:aa,$rootScope:oo,$routerGlobals:lc,$sce:Ie,$sceDelegate:Ue,$$taskTrackerFactory:ho,$templateCache:Gi,$templateRequest:$o,$urlConfig:oc,$view:zc,$transitions:Tl,$state:Ll,$ngViewScroll:Rl,$templateFactory:Nl,$urlService:Gl,$stateRegistry:au,$eventBus:el})}]).factory("$stateParams",["$routerGlobals",function(t){return t.params}]).value("$trace",Cc)}(this)}bootstrap(t,e,n){if(n=n||{strictDi:!1},(t instanceof Element||t instanceof Document)&&Gt(t))throw Ou("btstrpd","App already bootstrapped");Array.isArray(e)&&(this.bootsrappedModules=e),this.bootsrappedModules.unshift(["$provide",e=>{e.value("$rootElement",t)}]),this.bootsrappedModules.unshift("ng");const r=we(this.bootsrappedModules,n.strictDi);return r.invoke(["$rootScope","$rootElement","$compile","$injector",(t,e,n,r)=>{this.$injector=r,Mt(e,"$injector",r);if(n(e)(t),!vt(r,"strictDi"))try{r.invoke((()=>{}))}catch(t){r.strictDi=!!/strict mode/.exec(t&&t.toString())}r.get("$stateRegistry").get().map((t=>t.$$state().resolvables)).reduce(za,[]).filter((t=>"deferred"===t.deps)).forEach((t=>t.deps=Ce(t.resolveFn,r.strictDi)))}]),r}injector(t,e){return we(t,e)}init(t){let e,n;const r={};st.forEach((r=>{const i=`${r}app`;t.hasAttribute&&t.hasAttribute(i)&&(e=t,n=t.getAttribute(i))})),st.forEach((r=>{const i=`${r}app`;let s;!e&&(s=t.querySelector(`[${i.replace(":","\\:")}]`))&&(e=s,n=s.getAttribute(i))})),e&&(r.strictDi=null!==function(t,e){let n,r;const i=st.length;for(r=0;r<i;++r)if(n=st[r]+e,E(n=t.getAttribute(n)))return n;return null}(e,"strict-di"),this.bootstrap(e,n?[n]:[],r))}module(t,e,n){return W(t,"module"),e&&vt(Tu,t)&&(Tu[t]=null),function(t,e,n){return t[e]||(t[e]=n())}(Tu,t,(()=>{if(!e)throw _u("nomod","Module '{0}' is not available. Possibly misspelled or not loaded",t);return new ne(t,e,n)}))}};document.addEventListener("DOMContentLoaded",(()=>ju.init(document)),{once:!0}),t.angular=ju}));
|