@angular-wave/angular.ts 0.14.2 → 0.14.3

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.
Files changed (34) hide show
  1. package/@types/angular.d.ts +4 -3
  2. package/@types/animations/interface.d.ts +2 -2
  3. package/@types/animations/queue/animate-queue.d.ts +0 -1
  4. package/@types/animations/raf-scheduler.d.ts +3 -3
  5. package/@types/animations/runner/animate-runner.d.ts +9 -6
  6. package/@types/core/compile/attributes.d.ts +3 -6
  7. package/@types/core/compile/compile.d.ts +1 -1
  8. package/@types/core/di/ng-module/ng-module.d.ts +8 -7
  9. package/@types/core/filter/filter.d.ts +1 -1
  10. package/@types/core/parse/ast/ast.d.ts +30 -39
  11. package/@types/core/parse/ast-type.d.ts +16 -16
  12. package/@types/core/parse/interpreter.d.ts +1 -26
  13. package/@types/core/parse/lexer/lexer.d.ts +19 -19
  14. package/@types/core/parse/parser/parser.d.ts +4 -9
  15. package/@types/core/scope/interface.d.ts +0 -6
  16. package/@types/router/common/trace.d.ts +5 -5
  17. package/@types/router/params/interface.d.ts +2 -2
  18. package/@types/router/params/param.d.ts +3 -3
  19. package/@types/router/transition/reject-factory.d.ts +5 -5
  20. package/@types/router/transition/transition-hook.d.ts +11 -23
  21. package/@types/services/cookie/cookie.d.ts +2 -2
  22. package/@types/services/http/http.d.ts +8 -7
  23. package/@types/services/pubsub/pubsub.d.ts +1 -2
  24. package/@types/services/rest/rest.d.ts +5 -5
  25. package/@types/services/sse/sse.d.ts +1 -1
  26. package/@types/shared/node.d.ts +8 -0
  27. package/@types/shared/noderef.d.ts +8 -11
  28. package/@types/shared/utils.d.ts +25 -36
  29. package/@types/shared/validate.d.ts +36 -0
  30. package/dist/angular-ts.esm.js +1061 -1094
  31. package/dist/angular-ts.umd.js +1061 -1094
  32. package/dist/angular-ts.umd.min.js +2 -1
  33. package/dist/angular-ts.umd.min.js.map +1 -0
  34. package/package.json +1 -1
@@ -1 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).angular={})}(this,function(e){"use strict";const t="ng-valid",n="ng-invalid",r="ng-pristine",s="ng-dirty",i="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"};function d(e){if(Array.isArray(e)&&e.length){const t=e.slice(0,-1),n=e.slice(-1);return!(t.filter(e=>!S(e)).length||n.filter(e=>!j(e)).length)}return j(e)}function p(e){return null!==e&&"object"==typeof e&&"function"==typeof e.then}const f=Symbol("isProxy"),$="badarg";function m(e){return!(!e||!e[f])}const g=we("ng");let v=0;function y(){return v+=1,v}function w(e){return S(e)?e.toLowerCase():e}function b(e){if(O(e)||L(e))return!1;if(Array.isArray(e)||e instanceof Array||S(e))return!0;const t="length"in Object(e)&&e.length;return T(t)&&(t>=0&&t-1 in e||"function"==typeof e.item)}function E(e){return void 0===e}function C(e){return void 0!==e}function x(e){return null!==e&&"object"==typeof e}function S(e){return"string"==typeof e}function O(e){return null===e}function A(e){return null==e}function k(e){return!A(e)}function T(e){return"number"==typeof e}function _(e){return"[object Date]"===toString.call(e)}function N(e){switch(toString.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return e instanceof Error}}function j(e){return"function"==typeof e}function R(e){return"[object RegExp]"===toString.call(e)}function L(e){return e&&e.window===e}function V(e){return e&&e.$watch}function M(e){return"boolean"==typeof e}function P(e){return e&&j(e.then)}function D(e){return S(e)?e.trim():e}function U(e,t){const n=t;return e.replace(/[A-Z]/g,(e,t)=>(t?n:"")+e.toLowerCase())}function I(e,t,n=!1){const r=e.$$hashKey;for(let r=0,s=t.length;r<s;++r){const s=t[r];if(!x(s)&&!j(s))continue;const i=Object.keys(s);for(let t=0,r=i.length;t<r;t++){const r=i[t],o=s[r];n&&x(o)?_(o)?e[r]=new Date(o.valueOf()):R(o)?e[r]=new RegExp(o):o.nodeName?e[r]=o.cloneNode(!0):"__proto__"!==r&&(x(e[r])||(e[r]=Array.isArray(o)?[]:{}),I(e[r],[o],!0)):e[r]=o}}var s,i;return s=e,(i=r)?s.$$hashKey=i:delete s.$$hashKey,e}function H(e,...t){return I(e,t,!1)}function F(e){return Number.isNaN(e)}function q(e,t){return H(Object.create(e),t)}function B(e){return j(e.toString)&&e.toString!==toString}function z(e){return w(e.nodeName)}function W(e,t){return-1!==Array.prototype.indexOf.call(e,t)}function K(e,t){const n=e.indexOf(t);return n>=0&&e.splice(n,1),n}function Q(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function G(e,t){if(e===t)return!0;if(null===e||null===t)return!1;if(Number.isNaN(e)&&Number.isNaN(t))return!0;const n=typeof e;if(n!==typeof t||"object"!==n)return!1;if(Array.isArray(e)){if(!Array.isArray(t))return!1;const{length:n}=e;if(n!==t.length)return!1;for(let r=0;r<n;r++)if(!G(e[r],t[r]))return!1;return!0}if(_(e))return!!_(t)&&Q(e.getTime(),t.getTime());if(R(e))return!!R(t)&&e.toString()===t.toString();if(V(e)||V(t)||L(e)||L(t)||Array.isArray(t)||_(t)||R(t))return!1;const r=Object.create(null);for(const n in e)if("$"!==n.charAt(0)&&!j(e[n])){if(!G(e[n],t[n]))return!1;r[n]=!0}for(const e in t)if(!(e in r)&&"$"!==e.charAt(0)&&C(t[e])&&!j(t[e]))return!1;return!0}function J(e,t){if("hasOwnProperty"===e)throw g("badname","hasOwnProperty is not a valid {0} name",t)}function Z(e){if(O(e)||E(e))return"";switch(typeof e){case"string":break;case"number":e=`${e}`;break;default:e=!B(e)||Array.isArray(e)||_(e)?ne(e):e.toString()}return e}function X(e,t,n){return e.concat(Array.prototype.slice.call(t,n))}function Y(e,t){return Array.prototype.slice.call(e,t)}function ee(e,t){const n=arguments.length>2?Y(arguments,2):[];return!j(t)||t instanceof RegExp?t:n.length?function(){return arguments.length?t.apply(e,X(n,arguments,0)):t.apply(e,n)}:function(){return arguments.length?t.apply(e,arguments):t.call(e)}}function te(e,t){let n=t;return"string"==typeof e&&"$"===e.charAt(0)&&"$"===e.charAt(1)?n=void 0:L(t)?n="$WINDOW":t&&window.document===t?n="$DOCUMENT":V(t)&&(n="$SCOPE"),n}function ne(e,t){if(!E(e))return T(t)||(t=t?2:null),JSON.stringify(e,te,t)}function re(e,t,n){const r=e.getTimezoneOffset(),s=function(e,t){const n=Date.parse(`Jan 01, 1970 00:00:00 ${e}`)/6e4;return F(n)?t:n}(t,r);return function(e,t){const n=new Date(e.getTime());return n.setMinutes(n.getMinutes()+t),n}(e,1*(s-r))}function se(e){const t={};return(e||"").split("&").forEach(n=>{let r,s,i;n&&(s=e=n.replace(/\+/g,"%20"),r=n.indexOf("="),-1!==r&&(s=n.substring(0,r),i=n.substring(r+1)),s=oe(s),C(s)&&(i=!C(i)||oe(i),Ae(t,s)?Array.isArray(t[s])?t[s].push(i):t[s]=[t[s],i]:t[s]=i))}),t}function ie(e){const t=[];return e&&Object.entries(e).forEach(([e,n])=>{Array.isArray(n)?n.forEach(n=>{t.push(ce(e,!0)+(!0===n?"":`=${ce(n,!0)}`))}):t.push(ce(e,!0)+(!0===n?"":`=${ce(n,!0)}`))}),t.length?t.join("&"):""}function oe(e){try{return decodeURIComponent(e)}catch{return}}function ae(e){return ce(e,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function ce(e,t){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,t?"%20":"+")}const le=["ng-","data-ng-"];function ue(e,t){if(Array.isArray(e)){t=t||[];for(let n=0,r=e.length;n<r;n++)t[n]=e[n]}else if(x(e)){t=t||{};for(const n in e)n.startsWith("$")&&"$"===n.charAt(1)||(t[n]=e[n])}return t||e}function he(e,t="Assertion failed"){if(!e)throw new Error(t)}const de=new Map([[k,"required"],[Array.isArray,"notarray"],[d,"notinjectable"],[C,"required"],[S,"notstring"]]);function pe(e,t,n){if(e(t))return t;let r;try{r=JSON.stringify(t)}catch{r=String(t)}throw new TypeError(`badarg:${function(e){return de.get(e)??"fail"}(e)} ${n}=${r}`)}function fe(e,t){return pe(k,e,t)}function $e(e,t){return pe(S,e,t)}function me(e,t,n){if(!e)throw g("areq","Argument '{0}' is {1}",t||"?",n||"required");return e}function ge(e,t,n){return n&&Array.isArray(e)&&(e=e[e.length-1]),me(j(e),t,`not a function, got ${e&&"object"==typeof e?e.constructor.name||"Object":typeof e}`),e}const ve={objectMaxDepth:5,urlErrorParamsEnabled:!0};function ye(e){var t;return x(e)&&(C(e.objectMaxDepth)&&(ve.objectMaxDepth=T(t=e.objectMaxDepth)&&t>0?e.objectMaxDepth:NaN),C(e.urlErrorParamsEnabled)&&M(e.urlErrorParamsEnabled)&&(ve.urlErrorParamsEnabled=e.urlErrorParamsEnabled)),ve}function we(e){return function(...t){const n=t[0],r=t[1];let s=`[${e?`${e}:`:""}${n}] `;const i=Y(t,2).map(e=>function(e){if("function"==typeof e)return e.toString().replace(/ \{[\s\S]*$/,"");if(E(e))return"undefined";if("string"!=typeof e){const t=[],n=structuredClone(m(e)?e.$target:e);return JSON.stringify(n,(e,n)=>{const r=te(e,n);if(x(r)){if(t.indexOf(r)>=0)return"...";t.push(r)}return r})}return e}(e));return s+=r.replace(/\{\d+\}/g,e=>{const t=+e.slice(1,-1);return t<i.length?i[t]:e}),new Error(s)}}function be(e){const t=e&&e.$$hashKey;if(t)return"function"==typeof t?e.$$hashKey():t;const n=typeof e;return"function"===n||"object"===n&&null!==e?(e.$$hashKey=`${n}:${y()}`,e.$$hashKey):"undefined"===n?`${n}:${y()}`:`${n}:${e}`}function Ee(e,t){return e||t?e?t?(Array.isArray(e)&&(e=Ce(e)),Array.isArray(t)&&(t=Ce(t)),`${e.trim()} ${t.trim()}`.trim()):Array.isArray(e)?e.join(" ").trim():e:Array.isArray(t)?t.join(" ").trim():t:""}function Ce(e){const t=[];for(const n of e)if(n){const e=n.trim();e&&t.push(e)}return t.join(" ")}function xe(e){return e.replace(l,"").replace(u,(e,t,n)=>n?t.toUpperCase():t)}function Se(e){return function(e,t){if(e.nodeType!==Node.ELEMENT_NODE)return!1;const n=e;return"true"===n.dataset[t]||"true"===n.getAttribute(t)}(e,"animate")}function Oe(e){return!e||!Object.keys(e).length}function Ae(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function ke(e){let t=!1;return(...n)=>{if(t)return e(...n);t=!0}}function Te(e=0){return new Promise(t=>setTimeout(t,e))}function _e(e,t){return e.slice(0,t.length)===t}async function Ne(e,t={}){const n=await fetch(e);if(!n.ok)throw new Error("fetch failed");try{const{instance:e,module:r}=await WebAssembly.instantiateStreaming(n.clone(),t);return{instance:e,exports:e.exports,module:r}}catch{}const r=await n.arrayBuffer(),{instance:s,module:i}=await WebAssembly.instantiate(r,t);return{instance:s,exports:s.exports,module:i}}const je=new Map,Re=1,Le=2,Ve=3,Me=4,Pe=5,De=6,Ue=7,Ie=8,He=9,Fe=10,qe=11,Be=12,ze=13,We=14,Ke=15,Qe=16,Ge=17,Je="-add",Ze="-remove",Xe="-active",Ye="ng-animate",et="$$ngAnimateChildren";let tt,nt,rt,st;void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend?(tt="WebkitTransition",nt="webkitTransitionEnd transitionend"):(tt="transition",nt="transitionend"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend?(rt="WebkitAnimation",st="webkitAnimationEnd animationend"):(rt="animation",st="animationend");const it="Duration",ot=ze,at="Delay",ct="TimingFunction",lt=rt+at,ut=rt+it,ht=tt+at,dt=tt+it;function pt(e,t,n){let r="";return(e=Array.isArray(e)?e:e&&S(e)&&e.length?e.split(/\s+/):[]).forEach((e,s)=>{e&&e.length>0&&(r+=s>0?" ":"",r+=n?t+e:e+t)}),r}function ft(e){if(!e||!Array.isArray(e))return e;for(let t=0;t<e.length;t++){const n=e[t];if(n.nodeType===Node.ELEMENT_NODE)return n}}function $t(e){if(!(e=e||{}).$$prepared){let t=e.domOperation||(()=>{});e.domOperation=function(){e.$$domOperationFired=!0,t(),t=()=>{}},e.$$prepared=!0}return e}function mt(e,t){gt(e,t),vt(e,t)}function gt(e,t){t.from&&(Object.assign(e.style,t.from),t.from=null)}function vt(e,t){t.to&&(Object.assign(e.style,t.to),t.to=null)}function yt(e,t,n){const r=t.options||{},s=n.options||{},i=`${r.addClass||""} ${s.addClass||""}`,o=`${r.removeClass||""} ${s.removeClass||""}`,a=function(e,t,n){const r=1,s=-1,i={};e=a(e),t=a(t),Object.keys(t).forEach(e=>{i[e]=r}),n=a(n),Object.keys(n).forEach(e=>{i[e]=i[e]===r?null:s});const o={addClass:"",removeClass:""};function a(e){S(e)&&(e=e.trim().split(" "));const t={};return e&&e.forEach(e=>{e.length&&(t[e]=!0)}),t}return Object.entries(i).forEach(([t,n])=>{let i,a;n===r?(i="addClass",a=!e[t]||e[t+Ze]):n===s&&(i="removeClass",a=e[t]||e[t+Je]),a&&(o[i].length&&(o[i]+=" "),o[i]+=t)}),o}(e.getAttribute("class"),i,o);return s.preparationClasses&&(r.preparationClasses=Et(s.preparationClasses,r.preparationClasses),delete s.preparationClasses),H(r,s),a.addClass?r.addClass=a.addClass:r.addClass=null,a.removeClass?r.removeClass=a.removeClass:r.removeClass=null,t.addClass=r.addClass,t.removeClass=r.removeClass,r}function wt(e,t){const n=t?"paused":"",r=rt+"PlayState";return bt(e,[r,n]),[r,n]}function bt(e,t){const n=t[0];e.style[n]=t[1]}function Et(e,t){return e?t?`${e} ${t}`:e:t}let Ct=1;const xt="ng",St="$scope",Ot=/-([a-z])/g,At=/_([a-z])/g,kt=["multiple","selected","checked","disabled","readonly","required","open"],Tt=["INPUT","SELECT","OPTION","TEXTAREA","BUTTON","FORM","DETAILS"];function _t(e,t){return t.toUpperCase()}function Nt(e){return e.replace(Ot,_t)}function jt(e){return e.replace(At,_t)}function Rt(e,t){const n=e[xt],r=n&&je.get(n);r&&(t?delete r.data[t]:r.data={},function(e){const t=e[xt],{data:n}=je.get(t);n&&Object.keys(n).length||(je.delete(t),e[xt]=void 0)}(e))}function Lt(e,t=!1){let n=e[xt],r=n&&je.get(n);return t&&!r&&(e[xt]=n=++Ct,r={data:{}},je.set(n,r)),r}function Vt(e){return!/<|&#?\w+;/.test(e)}function Mt(e){switch(e.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.COMMENT_NODE:case void 0:return!0;default:return!1}}function Pt(e,t){!e||e instanceof Comment||(Array.isArray(e)?e.forEach(e=>Pt(e,t)):(!t&&Mt(e)&&Jt([e]),Mt(e)&&Jt(e.querySelectorAll("*"))),delete e[xt],e.innerHTML="")}function Dt(e,t,n){if(Mt(e)){let r;const s=C(n),i=!s&&t&&!x(t),o=!t,a=Lt(e,!i),c=a&&a.data;if(s)c[Nt(t)]=n;else{if(o)return c;if(i)return c&&c[Nt(t)];for(r in t)c[Nt(r)]=t[r]}return}}function Ut(e,t,n){if(Mt(e)){const r=Lt(e,!0);(r&&r.data)[Nt(t)]=n}else e.parentElement&&Ut(e.parentElement,t,n)}function It(e,t){if(Mt(e)){const n=Lt(e,!1),r=n&&n.data;if(!t)return;return r&&r[Nt(t)]}}function Ht(e){return It(e,St)}function Ft(e,t){return Ut(e,St,t)}function qt(e,t){return Ut(e,"$isolateScope",t)}function Bt(e,t){return zt(e,`$${t||"ngController"}Controller`)}function zt(e,t){let n;for(e.nodeType===Node.DOCUMENT_NODE&&(e=e.documentElement);e;){if(C(n=It(e,t)))return n;e=e.parentNode||e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&e.host}}function Wt(e,t=!1){t||Pt(e);const n=e.parentNode;n&&n.removeChild(e)}function Kt(e){let t;if("string"==typeof e){t=(new DOMParser).parseFromString(e,"text/html").body.firstChild.cloneNode(!0)}else{if(!(e instanceof Element||e instanceof Node))throw new Error("Input must be an HTML string or a DOM element.");t=e.cloneNode(!0)}for(;t.firstChild;)t.removeChild(t.firstChild);const n=document.createElement("div");n.appendChild(t);const r=n.innerHTML;try{if(t.nodeType===Node.TEXT_NODE)return r.toLowerCase();if(t.nodeType===Node.COMMENT_NODE)return`\x3c!--${t.data.trim()}--\x3e`;{const e=r.match(/^(<[^>]+>)/);if(e)return e[1].replace(/^<([\w-]+)/,(e,t)=>`<${t.toLowerCase()}`)}}catch{return r.toLowerCase()}return r.toLowerCase()}function Qt(e){let t=e[0];const n=e[e.length-1];let r;for(let s=1;t!==n&&(t=t.nextSibling);s++)(r||e[s]!==t)&&(r||(r=Array.prototype.slice.call(e,0,s)),r.push(t));return r||e}function Gt(e,t){const n=t.toLowerCase();return!(!kt.includes(n)||!Tt.includes(e.nodeName))&&n}function Jt(e){for(let t=0,n=e.length;t<n;t++)Rt(e[t])}function Zt(e){return zt(e,"$injector")}function Xt(e){const t=document.createElement("template");return t.innerHTML=e.trim(),t.content.firstChild}function Yt(e){const t=document.createElement("template");return t.innerHTML=e.trim(),t.content.childNodes}function en(e){switch(Pt(e,!0),e.nodeType){case Node.ELEMENT_NODE:case Node.DOCUMENT_NODE:case Node.DOCUMENT_FRAGMENT_NODE:e.replaceChildren()}}function tn(e,t,n){if(n){const e=ft(n);!e||e.parentNode||e.previousSibling||(n=null)}n?n.after(e):t.prepend(e)}function nn(e,t,n){const r=e.style.visibility,s=e.style.position,i=e.style.pointerEvents;Object.assign(e.style,{visibility:"hidden",position:"absolute",pointerEvents:"none"}),tn(e,t,n),requestAnimationFrame(()=>{e.style.visibility=r,e.style.position=s,e.style.pointerEvents=i})}function rn(){const e=document.querySelector("base")?.getAttribute("href");return e?e.replace(/^(https?:)?\/\/[^/]*/,""):""}const sn=Object.freeze({$attrs:"$attrs",$scope:"$scope",$element:"$element",$$animateCache:"$$animateCache",$$animateCssDriver:"$$animateCssDriver",$$animateJs:"$$animateJs",$$animateJsDriver:"$$animateJsDriver",$$animateQueue:"$$animateQueue",$$animation:"$$animation",$$rAFScheduler:"$$rAFScheduler",$$taskTrackerFactory:"$$taskTrackerFactory",$anchorScroll:"$anchorScroll",$animate:"$animate",$animateCss:"$animateCss",$aria:"$aria",$compile:"$compile",$cookie:"$cookie",$controller:"$controller",$document:"$document",$eventBus:"$eventBus",$exceptionHandler:"$exceptionHandler",$filter:"$filter",$http:"$http",$httpParamSerializer:"$httpParamSerializer",$interpolate:"$interpolate",$location:"$location",$log:"$log",$viewScroll:"$viewScroll",$parse:"$parse",$rest:"$rest",$rootScope:"$rootScope",$rootElement:"$rootElement",$router:"$router",$sce:"$sce",$sceDelegate:"$sceDelegate",$state:"$state",$stateRegistry:"$stateRegistry",$sse:"$sse",$$sanitizeUri:"$$sanitizeUri",$$sanitizeUriProvider:"$$sanitizeUriProvider",$templateCache:"$templateCache",$templateFactory:"$templateFactory",$templateRequest:"$templateRequest",$transitions:"$transitions",$urlConfig:"$urlConfig",$url:"$url",$view:"$view",$window:"$window",$provide:"$provide",$injector:"$injector",$compileProvider:"$compileProvider",$animateProvider:"$animateProvider",$filterProvider:"$filterProvider",$controllerProvider:"$controllerProvider"});function on(e){return e.map(e=>`${e}Provider`)}const an=we(sn.$injector),cn=/^([^(]+?)=>/,ln=/^[^(]*\(\s*([^)]*)\)/m,un=/^\s*(_?)(\S+?)\1\s*$/,hn=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm;function dn(e){return Function.prototype.toString.call(e)}function pn(e,t,n){let r,s,i;if(j(e)){if(r=e.$inject,!r){if(r=[],e.length){if(t)throw an("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);s=function(e){const t=dn(e).replace(hn,"");return t.match(cn)||t.match(ln)}(e),s[1].split(/,/).forEach(function(e){e.replace(un,function(e,t,n){r.push(n)})})}e.$inject=r}}else Array.isArray(e)?(i=e.length-1,ge(e[i],"fn"),r=e.slice(0,i)):ge(e,"fn",!0);return r}const fn=we(sn.$injector),$n="Provider",mn=!0;class gn{constructor(e){this.cache={},this.strictDi=e,this.path=[],this.modules={}}get(e){if(Ae(this.cache,e)){if(this.cache[e]===mn)throw fn("cdep","Circular dependency found: {0}",`${e} <- ${this.path.join(" <- ")}`);return this.cache[e]}this.path.unshift(e),this.cache[e]=mn;try{this.cache[e]=this.factory(e)}catch(t){throw delete this.cache[e],t}return this.cache[e]}injectionArgs(e,t,n){const r=[],s=pn(e,this.strictDi,n);for(let e=0,{length:n}=s;e<n;e++){const n=s[e];if("string"!=typeof n)throw fn("itkn","Incorrect injection token! Expected service name as string, got {0}",n);r.push(t&&Ae(t,n)?t[n]:this.get(n))}return r}invoke(e,t,n,r){"string"==typeof n&&(r=n,n=null);const s=this.injectionArgs(e,n,r);return Array.isArray(e)&&(e=e[e.length-1]),/^class\b/.test(dn(e))?(s.unshift(null),new(Function.prototype.bind.apply(e,s))):e.apply(t,s)}instantiate(e,t,n){const r=Array.isArray(e)?e[e.length-1]:e,s=this.injectionArgs(e,t,n);s.unshift(null);try{return new(Function.prototype.bind.apply(r,s))}catch(e){if("function"!=typeof(i=r)||i.prototype)throw e;return r(s)}var i}loadNewModules(){}factory(e){}}class vn extends gn{constructor(e,t){super(t),this.cache=e}factory(e){throw this.path.push(e),fn("unpr","Unknown provider: {0}",this.path.join(" <- "))}loadNewModules(){}}class yn extends gn{constructor(e,t){super(t),this.providerInjector=e,this.modules=e.modules}factory(e){const t=this.providerInjector.get(e+$n);return this.invoke(t.$get,t,void 0,e)}has(e){const t=Ae(this.providerInjector.cache,e+$n),n=Ae(this.cache,e);return t||n}loadNewModules(){}}function wn(e,t,n,r={}){const s=r.serialize||JSON.stringify,i=r.deserialize||JSON.parse,o=n.getItem(t);return o&&Object.assign(e,i(o)),new Proxy(e,{set:(e,r,i)=>(e[r]=i,n.setItem(t,s(e)),!0),deleteProperty(e,r){const i=delete e[r];return n.setItem(t,s(e)),i}})}const bn=we(sn.$injector),En="Provider";function Cn(e,t=!1){he(Array.isArray(e),"modules required");const n=new Map,r={$provide:{provider:xn(c),factory:xn(l),service:xn(function(e,t){return l(e,[sn.$injector,e=>e.instantiate(t)])}),value:xn(function(e,t){return r[e+En]={$get:()=>t}}),constant:xn(function(e,t){J(e,"constant"),s.cache[e]=t,i.cache[e]=t}),store:function(e,t,n,r={}){return c(e,{$get:s=>{switch(n){case"session":return wn(s.instantiate(t),e,sessionStorage);case"local":return wn(s.instantiate(t),e,localStorage);case"cookie":{const n=s.instantiate(t),i=s.get(sn.$cookie),o=r.serialize??JSON.stringify,a=r.deserialize??JSON.parse,c=r.cookie??{};return wn(n,e,{getItem(e){const t=i.get(e);return A(t)?null:t},setItem(e,t){i.put(e,t,c)},removeItem(e){i.remove(e,c)},serialize:o,deserialize:a})}case"custom":{const n=s.instantiate(t);let i,o=JSON.stringify,a=JSON.parse;return r?"function"==typeof r.getItem?i=r:x(r)&&(i=r.backend||localStorage,r.serialize&&(o=r.serialize),r.deserialize&&(a=r.deserialize)):i=localStorage,wn(n,e,i,{serialize:o,deserialize:a})}}}})},decorator:function(e,t){const n=s.get(e+En),r=n.$get;n.$get=function(){const e=o.invoke(r,n);return o.invoke(t,null,{$delegate:e})}}}},s=r.$injector=new vn(r,t),i=new yn(s,t);r.$injectorProvider={$get:()=>i};let o=i;const a=u(e);return o=i.get(sn.$injector),a.forEach(e=>e&&o.invoke(e)),o.loadNewModules=e=>u(e).forEach(e=>e&&o.invoke(e)),o;function c(e,t){let n;if(J(e,"service"),n=j(t)||Array.isArray(t)?s.instantiate(t):t,!n.$get)throw bn("pget","Provider '{0}' must define $get factory method.",e);return r[e+En]=n,n}function l(e,t){return c(e,{$get(){const n=o.invoke(t,this);if(E(n))throw bn("undef","Provider '{0}' must return a value from $get factory method.",e);return n}})}function u(e){!function(e,t){pe(Array.isArray,e,t)}(e,"modules");let t=[];return e.forEach(e=>{if(!n.get(e)){n.set(e,!0);try{if(S(e)){const n=window.angular.module(e);o.modules[e]=n,t=t.concat(u(n.requires)).concat(n.runBlocks);n.invokeQueue.concat(n.configBlocks).forEach(e=>{const t=s.get(e[0]);t[e[1]].apply(t,e[2])})}else j(e)||Array.isArray(e)?t.push(s.invoke(e)):ge(e,"module")}catch(t){throw Array.isArray(e)&&(e=e[e.length-1]),bn("modulerr","Failed to instantiate module {0} due to:\n{1}",e,t.stack||t.message||t)}}}),t}}function xn(e){return function(t,n){return x(t)?void Object.entries(t).forEach(([t,n])=>{e(t,n)}):e(t,n)}}const Sn=On(window.location.href);function On(e){if(!S(e))return e;const t=new URL(e,window.location.href),n=t.hostname.includes(":")?`[${t.hostname}]`:t.hostname;return{href:t.href,protocol:t.protocol,host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:n,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:`/${t.pathname}`}}function An(e,t){return e=On(e),t=On(t),e.protocol===t.protocol&&e.host===t.host}function kn(e){return e.replace(/#$/,"")}const Tn="application/json",_n=Object.freeze({OK:200,MultipleChoices:300,BadRequest:400,NotFound:404,ErrorMax:599}),Nn={"Content-Type":`${Tn};charset=utf-8`},jn=/^\[|^\{(?!\{)/,Rn={"[":/]$/,"{":/}$/},Ln=/^\)]\}',?\n/,Vn=we("$http");function Mn(e){return x(e)?_(e)?e.toISOString():ne(e):e}function Pn(){this.$get=()=>e=>{if(!e)return"";const t=[];return Object.keys(e).sort().forEach(n=>{const r=e[n];null===r||E(r)||j(r)||(Array.isArray(r)?r.forEach(e=>{t.push(`${ce(n)}=${ce(Mn(e))}`)}):t.push(`${ce(n)}=${ce(Mn(r))}`))}),t.join("&")}}function Dn(e,t){if(S(e)){const r=e.replace(Ln,"").trim();if(r){const s=t("Content-Type"),i=s&&0===s.indexOf(Tn);if(i||function(e){const t=e.match(jn);return t&&Rn[t[0]].test(e)}(r))try{e=S(n=r)?JSON.parse(n):n}catch(t){if(!i)return e;throw Vn("baddata",'Data must be a valid JSON object. Received: "{0}". Parse error: "{1}"',e,t)}}}var n;return e}function Un(e){const t=Object.create(null);let n;function r(e,n){e&&(t[e]=t[e]?`${t[e]}, ${n}`:n)}return S(e)?e.split("\n").forEach(e=>{n=e.indexOf(":"),r(e.substring(0,n).trim().toLowerCase(),D(e.substring(n+1)))}):x(e)&&Object.entries(e).forEach(([e,t])=>{r(e.toLowerCase(),D(t))}),t}function In(e){let t;return function(n){if(t||(t=Un(e)),n){let e=t[n.toLowerCase()];return void 0===e&&(e=null),e}return t}}function Hn(e,t,n,r){return j(r)?r(e,t,n):(Array.isArray(r)&&r.forEach(r=>{e=r(e,t,n)}),e)}function Fn(e){return e>=_n.OK&&e<_n.MultipleChoices}function qn(){const e=this.defaults={transformResponse:[Dn],transformRequest:[function(e){return!x(e)||(t=e,"[object File]"===toString.call(t))||function(e){return"[object Blob]"===toString.call(e)}(e)||function(e){return"[object FormData]"===toString.call(e)}(e)?e:ne(e);var t}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ue(Nn),put:ue(Nn),patch:ue(Nn)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"};let t=!1;this.useApplyAsync=function(e){return C(e)?(t=!!e,this):t},this.interceptors=[],this.xsrfTrustedOrigins=[],Object.defineProperty(this,"xsrfWhitelistedOrigins",{get(){return this.xsrfTrustedOrigins},set(e){this.xsrfTrustedOrigins=e}});const n=this;this.$get=[sn.$injector,sn.$sce,sn.$cookie,function(r,s,i){const o=new Map;e.paramSerializer=S(e.paramSerializer)?r.get(e.paramSerializer):e.paramSerializer;const a=[];n.interceptors.forEach(e=>{a.unshift(S(e)?r.get(e):r.invoke(e))});const c=function(e){const t=[Sn].concat(e.map(On));return function(e){const n=On(e);return t.some(An.bind(null,n))}}(n.xsrfTrustedOrigins);function l(n){if(!x(n))throw we("$http")("badreq","Http request configuration must be an object. Received: {0}",n);if(!S(s.valueOf(n.url)))throw we("$http")("badreq","Http request configuration url must be a string or a $sce trusted object. Received: {0}",n.url);const u=H({method:"get",transformRequest:e.transformRequest,transformResponse:e.transformResponse,paramSerializer:e.paramSerializer},n);var h;u.headers=function(t){let n=e.headers;const r=H({},t.headers);return n=H({},n.common,n[w(t.method)]),Object.keys(n).forEach(e=>{const t=w(e);Object.keys(r).some(e=>w(e)===t)||(r[e]=n[e])}),function(e,t){let n;const r={};return Object.entries(e).forEach(([e,s])=>{j(s)?(n=s(t),A(n)||(r[e]=n)):r[e]=s}),r}(r,ue(t))}(n),u.method=S(h=u.method)?h.toUpperCase():h,u.paramSerializer=S(u.paramSerializer)?r.get(u.paramSerializer):u.paramSerializer;const d=[],p=[];let f=Promise.resolve(u);return a.forEach(e=>{(e.request||e.requestError)&&d.unshift(e.request,e.requestError),(e.response||e.responseError)&&p.push(e.response,e.responseError)}),f=$(f,d),f=f.then(function(n){const{headers:r}=n,a=Hn(n.data,In(r),void 0,n.transformRequest);E(a)&&Object.keys(r).forEach(e=>{"content-type"===w(e)&&delete r[e]});E(n.withCredentials)&&!E(e.withCredentials)&&(n.withCredentials=e.withCredentials);return function(n,r){const{promise:a,resolve:u,reject:h}=Promise.withResolvers();let d,p;const f=n.headers;let{url:$}=n;S($)||($=s.valueOf($));$=function(e,t){t.length>0&&(e+=(-1===e.indexOf("?")?"?":"&")+t);return e}($,n.paramSerializer(n.params)),l.pendingRequests.push(n),a.then(w,w),(n.cache||e.cache)&&!1!==n.cache&&"GET"===n.method&&(d=x(n.cache)?n.cache:x(e.cache)?e.cache:o);d&&(p=d.get($),C(p)?P(p)?p.then(y,y):Array.isArray(p)?v(p[1],p[0],ue(p[2]),p[3],p[4]):v(p,_n.OK,{},"OK","complete"):d.set($,a));if(E(p)){const t=c(n.url)?i.getAll()[n.xsrfCookieName||e.xsrfCookieName]:void 0;t&&(f[n.xsrfHeaderName||e.xsrfHeaderName]=t),function(e,t,n,r,s,i,o,a,c,l){t=t||kn(window.location.href);const u=new XMLHttpRequest;let h,d=!1;if(u.open(e,t,!0),s)for(const[e,t]of Object.entries(s))C(t)&&u.setRequestHeader(e,t);if(u.onload=()=>{let e=u.status||0;const n=u.statusText||"";0===e&&(e=u.response?_n.OK:"file:"===new URL(t).protocol?_n.NotFound:0),f(e,u.response,u.getAllResponseHeaders(),n,"complete")},u.onerror=()=>f(-1,null,null,"","error"),u.ontimeout=()=>f(-1,null,null,"","timeout"),u.onabort=()=>{f(-1,null,null,"",d?"timeout":"abort")},c)for(const[e,t]of Object.entries(c))u.addEventListener(e,t);if(l)for(const[e,t]of Object.entries(l))u.upload.addEventListener(e,t);o&&(u.withCredentials=!0);if(a)try{u.responseType=a}catch(e){if("json"!==a)throw e}u.send(E(n)?null:n),"number"==typeof i&&i>0?h=setTimeout(()=>p("timeout"),i):P(i)&&i.then(()=>{p("abort")});function p(e){d="timeout"===e,u&&u.abort()}function f(e,t,n,s,i){C(h)&&clearTimeout(h),r(e,t,n,s,i)}}(n.method,$,r,g,f,n.timeout,n.withCredentials,n.responseType,m(n.eventHandlers),m(n.uploadEventHandlers))}return a;function m(e){if(e){const n={};return Object.entries(e).forEach(([e,r])=>{n[e]=function(e){function n(){r(e)}t?setTimeout(()=>n()):n()}}),n}return{}}function g(e,n,r,s,i){function o(){v(n,e,r,s,i)}d&&(Fn(e)?d.set($,[e,n,Un(r),s,i]):d.delete($)),t?setTimeout(o):o()}function v(e,t,r,s,i){(Fn(t=t>=-1?t:0)?u:h)({data:e,status:t,headers:In(r),config:n,statusText:s,xhrStatus:i})}function y(e){v(e.data,e.status,ue(e.headers()),e.statusText,e.xhrStatus)}function w(){const e=l.pendingRequests.indexOf(n);-1!==e&&l.pendingRequests.splice(e,1)}}(n,a).then(m,m)}),f=$(f,p),f;function $(e,t){for(let n=0,r=t.length;n<r;){const r=t[n++],s=t[n++];e=e.then(r,s)}return t.length=0,e}function m(e){const t=H({},e);return t.data=Hn(e.data,e.headers,e.status,u.transformResponse),Fn(e.status)?t:Promise.reject(t)}}return l.pendingRequests=[],function(...e){e.forEach(e=>{l[e]=function(t,n){return l(H({},n||{},{method:e,url:t}))}})}("get","delete","head"),function(...e){e.forEach(e=>{l[e]=function(t,n,r){return l(H({},r||{},{method:e,url:t,data:n}))}})}("post","put","patch"),l.defaults=e,l}]}function Bn(e,t){const n=t||`ng${e.charAt(0).toUpperCase()}${e.slice(1)}`,r=function(e,t){return function(n,r,s,i,o,a,c){function l(e){let t=null;if("form"===e.tagName.toLowerCase())t=e;else if("form"in e&&e.form)t=e.form;else if(e.hasAttribute("form")){const n=e.getAttribute("form");if(n){const e=document.getElementById(n);e&&"form"===e.tagName.toLowerCase()&&(t=e)}}if(!t){if("name"in e&&"string"==typeof e.name&&e.name.length>0&&(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement)){const t=e.name,{value:n}=e;return{[t]:n}}return{}}const n=new FormData(t),r={};return n.forEach((e,t)=>{r[t]=e}),r}return{restrict:"A",link(u,h,d){const p=d.trigger||Jn(h),f=h.tagName.toLowerCase();let $;C(d.latch)&&d.$observe("latch",ke(()=>h.dispatchEvent(new Event(p))));let m,g=!1;function v(e,n,i,o,a){let l=!1;o.animate&&(l=!0);let u=[];if(!["textcontent","delete","none"].includes(n)){if(!e)return;const t=r(e)(i);u=t instanceof DocumentFragment?Array.from(t.childNodes):[t]}const h=o.target,d=h?document.querySelector(h):a;if(d)switch(n){case"outerHTML":{const e=d.parentNode;if(!e)return;const t=document.createDocumentFragment();if(u.forEach(e=>t.appendChild(e)),!l){e.replaceChild(t,d);break}const n=document.createElement("span");n.style.display="none",e.insertBefore(n,d.nextSibling),c.leave(d).done(()=>{const r=Array.from(t.childNodes);for(const t of r)t.nodeType===Node.ELEMENT_NODE?c.enter(t,e,n):e.insertBefore(t,n);$=r,i.$flushQueue()}),i.$flushQueue();break}case"textContent":l?(c.leave(d).done(()=>{d.textContent=e,c.enter(d,d.parentNode),i.$flushQueue()}),i.$flushQueue()):d.textContent=e;break;case"beforebegin":{const e=d.parentNode;if(!e)break;u.forEach(t=>{l&&t.nodeType===Node.ELEMENT_NODE?c.enter(t,e,d):e.insertBefore(t,d)}),l&&i.$flushQueue();break}case"afterbegin":{const{firstChild:e}=d;[...u].reverse().forEach(t=>{l&&t.nodeType===Node.ELEMENT_NODE?c.enter(t,d,e):d.insertBefore(t,e)}),l&&i.$flushQueue();break}case"beforeend":u.forEach(e=>{l&&e.nodeType===Node.ELEMENT_NODE?c.enter(e,d,null):d.appendChild(e)}),l&&i.$flushQueue();break;case"afterend":{const e=d.parentNode;if(!e)break;const{nextSibling:t}=d;[...u].reverse().forEach(n=>{l&&n.nodeType===Node.ELEMENT_NODE?c.enter(n,e,t):e.insertBefore(n,t)}),l&&i.$flushQueue();break}case"delete":l?(c.leave(d).done(()=>{d.remove(),i.$flushQueue()}),i.$flushQueue()):d.remove();break;case"none":break;default:l?$&&$.nodeType!==Node.TEXT_NODE?(c.leave($).done(()=>{$=u[0],c.enter(u[0],d),i.$flushQueue()}),i.$flushQueue()):($=u[0],$.nodeType===Node.TEXT_NODE?d.replaceChildren(...u):(c.enter(u[0],d),i.$flushQueue())):d.replaceChildren(...u)}else s.warn(`${t}: target "${h}" not found`)}C(d.interval)&&(h.dispatchEvent(new Event(p)),m=setInterval(()=>h.dispatchEvent(new Event(p)),parseInt(d.interval)||1e3)),h.addEventListener(p,async r=>{if(h.disabled)return;"form"===f&&r.preventDefault();const c=d.swap||"innerHTML",p=d[t];if(!p)return void s.warn(`${t}: no URL specified`);const $=e=>{C(d.loading)&&d.$set("loading",!1),C(d.loadingClass)&&d.$removeClass(d.loadingClass);const t=e.data;_n.OK<=e.status&&e.status<=_n.MultipleChoices-1?(C(d.success)&&i(d.success)(u,{$res:t}),C(d.stateSuccess)&&o.go(d.stateSuccess)):_n.BadRequest<=e.status&&e.status<=_n.ErrorMax&&(C(d.error)&&i(d.error)(u,{$res:t}),C(d.stateError)&&o.go(d.stateError)),x(t)?d.target?u.$eval(`${d.target} = ${JSON.stringify(t)}`):u.$merge(t):S(t)&&v(t,c,u,d,h)};if(C(d.delay)&&await Te(0|parseInt(d.delay)),!g)if(C(d.throttle)&&(g=!0,d.$set("throttled",!0),setTimeout(()=>{d.$set("throttled",!1),g=!1},parseInt(d.throttle))),C(d.loading)&&d.$set("loading",!0),C(d.loadingClass)&&d.$addClass(d.loadingClass),"post"===e||"put"===e){let t;const r={};d.enctype?(r.headers={"Content-Type":d.enctype},t=ie(l(h))):t=l(h),n[e](p,t,r).then($).catch($)}else if("get"===e&&d.ngSse){const e=p,n={withCredentials:"true"===d.withCredentials,transformMessage:e=>{try{return JSON.parse(e)}catch{return e}},onOpen:()=>{s.info(`${t}: SSE connection opened to ${e}`),C(d.loading)&&d.$set("loading",!1),C(d.loadingClass)&&d.$removeClass(d.loadingClass)},onMessage:e=>{$({status:200,data:e})},onError:e=>{s.error(`${t}: SSE error`,e);$({status:500,data:e})},onReconnect:e=>{s.info(`ngSse: reconnected ${e} time(s)`),d.onReconnect&&i(d.onReconnect)(u,{$count:e})}},r=a(e,n);u.$on("$destroy",()=>{s.info(`${t}: closing SSE connection`),r.close()})}else n[e](p).then($).catch($)}),m&&u.$on("$destroy",()=>clearInterval(m)),"load"===p&&h.dispatchEvent(new Event("load"))}}}}(e,n);return r.$inject=[sn.$http,sn.$compile,sn.$log,sn.$parse,sn.$state,sn.$sse,sn.$animate],r}const zn=Bn("get"),Wn=Bn("delete"),Kn=Bn("post"),Qn=Bn("put"),Gn=Bn("get","ngSse");function Jn(e){const t=e.tagName.toLowerCase();return["input","textarea","select"].includes(t)?"change":"form"===t?"submit":"click"}function Zn(e,t,n){return{restrict:"A",link(r,s,i){const o=i.ngWorker;if(!o)return void t.warn("ngWorker: missing worker name");const a=i.trigger||Jn(s);let c,l=!1;C(i.latch)&&i.$observe("latch",ke(()=>s.dispatchEvent(new Event(a)))),C(i.interval)&&(s.dispatchEvent(new Event(a)),c=setInterval(()=>s.dispatchEvent(new Event(a)),parseInt(i.interval)||1e3));const u=Xn(o,{logger:t,err:n,onMessage:t=>{if(C(i.dataOnResult))e(i.dataOnResult)(r,{$result:t});else{!function(e,t,n){switch(t){case"outerHTML":{const t=n.parentNode;if(!t)return;const r=document.createElement("div");r.innerHTML=e,t.replaceChild(r.firstChild,n);break}case"textContent":n.textContent=e;break;case"beforebegin":n.insertAdjacentHTML("beforebegin",e);break;case"afterbegin":n.insertAdjacentHTML("afterbegin",e);break;case"beforeend":n.insertAdjacentHTML("beforeend",e);break;case"afterend":n.insertAdjacentHTML("afterend",e);break;default:n.innerHTML=e}}(t,i.swap||"innerHTML",s)}},onError:n=>{t.error(`[ng-worker:${o}]`,n),C(i.dataOnError)?e(i.dataOnError)(r,{$error:n}):s.textContent="Error"}});s.addEventListener(a,async()=>{if(s.hasAttribute("disabled"))return;if(C(i.delay)&&await Te(parseInt(i.delay)||0),l)return;let e;C(i.throttle)&&(l=!0,i.$set("throttled",!0),setTimeout(()=>{i.$set("throttled",!1),l=!1},parseInt(i.throttle)));try{e=i.params?r.$eval(i.params):void 0}catch(n){t.error("ngWorker: failed to evaluate data-params",n),e=void 0}u.post(e)}),c&&r.$on("$destroy",()=>clearInterval(c)),"load"===a&&s.dispatchEvent(new Event("load"))}}}function Xn(e,t){if(!e)throw new Error("Worker script path required");const n={autoRestart:!1,autoTerminate:!1,onMessage(){},onError(){},transformMessage(e){try{return JSON.parse(e)}catch{return e}}},r=Object.assign({},n,t);let s=new Worker(e,{type:"module"}),i=!1;const o=function(){i||(r.logger.info("Worker: restarting..."),s.terminate(),s=new Worker(e,{type:"module"}),a(s))},a=e=>{e.onmessage=function(e){let{data:t}=e;try{t=r.transformMessage(t)}catch{}r.onMessage(t,e)},e.onerror=function(e){r.onError(e),r.autoRestart&&o()}};return a(s),{post(e){i&&r.logger.warn("Worker already terminated");try{s.postMessage(e)}catch(e){r.logger.log("Worker post failed",e)}},terminate(){i=!0,s.terminate()},restart(){i&&r.logger.warn("Worker cannot restart after terminate"),o()},config:r}}Zn.$inject=[sn.$parse,sn.$log,sn.$exceptionHandler];class Yn{constructor(e,t,n){pe(S,e,"name"),pe(Array.isArray,t,"requires"),this.name=e,this.requires=t,this.invokeQueue=[],this.configBlocks=[],this.runBlocks=[],n&&this.config(n),this.services=[],this.restDefinitions=[]}value(e,t){return pe(S,e,"name"),this.invokeQueue.push([sn.$provide,"value",[e,t]]),this}constant(e,t){return pe(S,e,"name"),pe(C,t,"object"),this.invokeQueue.unshift([sn.$provide,"constant",[e,t]]),this}config(e){return pe(d,e,"configFn"),this.configBlocks.push([sn.$injector,"invoke",[e]]),this}run(e){return pe(d,e,"block"),this.runBlocks.push(e),this}component(e,t){return pe(S,e,"name"),pe(C,t,"object"),this.invokeQueue.push([sn.$compileProvider,"component",[e,t]]),this}factory(e,t){return pe(S,e,"name"),fe(t,"providerFunction"),this.invokeQueue.push([sn.$provide,"factory",[e,t]]),this}service(e,t){return pe(S,e,"name"),fe(t,"serviceFunction"),this.services.push(e),this.invokeQueue.push([sn.$provide,"service",[e,t]]),this}provider(e,t){return pe(S,e,"name"),fe(t,"providerType"),this.invokeQueue.push([sn.$provide,"provider",[e,t]]),this}decorator(e,t){return pe(S,e,"name"),fe(t,"decorFn"),this.configBlocks.push([sn.$provide,"decorator",[e,t]]),this}directive(e,t){return pe(S,e,"name"),fe(t,"directiveFactory"),this.invokeQueue.push([sn.$compileProvider,"directive",[e,t]]),this}animation(e,t){return pe(S,e,"name"),fe(t,"animationFactory"),this.invokeQueue.push([sn.$animateProvider,"register",[e,t]]),this}filter(e,t){return pe(S,e,"name"),pe(j,t,"filterFn"),this.invokeQueue.push([sn.$filterProvider,"register",[e,t]]),this}controller(e,t){return pe(S,e,"name"),fe(t,"fictlFnlterFn"),this.invokeQueue.push([sn.$controllerProvider,"register",[e,t]]),this}wasm(e,t,n={},r={}){pe(S,e,"name"),pe(S,t,"src");const s=!!r.raw;return this.invokeQueue.push([sn.$provide,"provider",[e,class{$get(){return Ne(t,n).then(e=>s?e:e.exports)}}]]),this}worker(e,t,n){return pe(S,e,"name"),pe(S,t,"scriptPath"),this.invokeQueue.push([sn.$provide,"provider",[e,class{$get=()=>Xn(t,n)}]]),this}store(e,t,n,r){return pe(S,e,"name"),fe(t,"ctor"),this.invokeQueue.push([sn.$provide,"store",[e,x(t)?()=>t:t,n,r]]),this}rest(e,t,n,r={}){pe(S,e,"name"),pe(S,t,"url"),pe(j,n,"entityClass");const s={name:e,url:t,entityClass:n,options:r};return this.restDefinitions.push(s),this.invokeQueue.push([sn.$provide,"factory",[e,[sn.$rest,e=>e(t,n,r)]]]),this}}class er{static $nonscope=!0;constructor(e){if(me(e,"element"),this.initial=null,this._node=null,this._element=void 0,this._nodes=void 0,this.linked=!1,this.isList=!1,S(e)){this.initial=e;const t=Xt(e);switch(!0){case t instanceof Element:this.element=t;break;case t instanceof Node:this.node=t}}else if(e instanceof NodeList)this.initial=Array.from(e).map(e=>e.cloneNode(!0)),1===e.length?this.node=e[0]:(this._nodes=Array.from(e),this.isList=!0);else if(e instanceof Element)this.initial=e.cloneNode(!0),this.element=e;else if(e instanceof Node)this.initial=e.cloneNode(!0),this._node=e;else{if(!Array.isArray(e))throw new Error("Invalid element passed to NodeRef");1===e.length?(this.initial=e[0].cloneNode(!0),this.node=e[0]):(this.initial=Array.from(e).map(e=>e.cloneNode(!0)),this.nodes=e)}}get element(){return me(this._element,"element"),this._element}set element(e){me(e instanceof Element,"element"),this._element=e,this._nodes=void 0,this.isList=!1}get node(){return me(this._node||this._element,"node"),this._node||this._element}set node(e){me(e instanceof Node,"node"),this._node=e,e.nodeType===Node.ELEMENT_NODE?this._element=e:this._element=void 0}set nodes(e){me(Array.isArray(e)&&e.every(e=>e instanceof Node),"nodes"),this._nodes=e,this.isList=!0}get nodes(){return me(this._nodes,"nodes"),this._nodes}get nodelist(){if(0===this._nodes.length)return[];if(this._nodes[0].parentElement)return this._nodes[0].parentElement.childNodes;const e=document.createDocumentFragment();return this._nodes.forEach(t=>e.appendChild(t)),e.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(e){return this.isList?this._nodes[e]:this.node}setIndex(e,t){me(null!==e,"index"),me(t,"node"),this.isList?this._nodes[e]=t:this.node=t}clone(){const e=this.isList?this.nodes.map(e=>e.cloneNode(!0)):this.node.cloneNode(!0);return new er(e)}isElement(){return void 0!==this._element}}const tr=we("$controller"),nr=/^(\S+)(\s+as\s+([\w$]+))?$/;function rr(e,t){if(S(e)){const t=nr.exec(e);if(t)return t[3]}}class sr{constructor(){this.controllers=new Map}has(e){return this.controllers.has(e)}register(e,t){J(e,"controller"),x(e)?Object.entries(e).forEach(([e,t])=>{this.controllers.set(e,t)}):this.controllers.set(e,t)}$get=["$injector",e=>(t,n,r,s)=>{let i,o,a,c=s&&S(s)?s:null;if(r=!0===r,S(t)){if(o=t.match(nr),!o)throw tr("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",t);if(a=o[1],c=c||o[3],!(t=this.controllers.get(a)))throw tr("ctrlreg","The controller with the name '{0}' is not registered.",a);ge(t,a,!0)}if(r){const r=(Array.isArray(t)?t[t.length-1]:t).prototype;return i=Object.create(r||null),c&&(i.$controllerIdentifier=c,this.addIdentifier(n,c,i,a||t.name)),i?.constructor?.$scopename&&(n.$scope.$scopename=i.constructor.$scopename),function(){const r=e.invoke(t,i,n,a);return r!==i&&(x(r)||j(r))&&(i=r,c&&(i.$controllerIdentifier=c,this.addIdentifier(n,c,i,a||t.name))),i}.bind(this,{instance:i,identifier:c})}return i=e.instantiate(t,n,a),c&&this.addIdentifier(n,c,i,a||t.name),i}];addIdentifier(e,t,n,r){if(!e||!x(e.$scope))throw we("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",r,t);e.$scope[t]=n,e.$scope.$controllerIdentifier=t}}const ir=we("$sce"),or={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"};function ar(e){if("self"===e)return e;if(S(e)){if(e.indexOf("***")>-1)throw ir("iwcard","Illegal sequence *** in string matcher. String: {0}",e);return e=(t=e,t.replace(/([-()[\]{}+?*.$^|,:#<!\\])/g,"\\$1")).replace(/\\\*\\\*/g,".*").replace(/\\\*/g,"[^:/.?&;]*"),new RegExp(`^${e}$`)}var t;if(R(e))return new RegExp(`^${e.source}$`);throw ir("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}class cr{constructor(){let e=["self"],t=[];this.trustedResourceUrlList=function(t){return arguments.length&&(e=t.map(ar)),e},this.bannedResourceUrlList=function(e){return arguments.length&&(t=e.map(ar)),t},this.$get=[sn.$injector,sn.$$sanitizeUri,sn.$exceptionHandler,function(n,r,s){let i=function(){s(ir("unsafe","Attempting to use an unsafe value in a safe context."))};function o(e,t){return"self"===e?An(t,Sn)||function(e){return An(e,document.baseURI)}(t):!!e.exec(t.href)}function a(e){const t=function(e){this.$$unwrapTrustedValue=function(){return e}};return e&&(t.prototype=new e),t.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},t.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},t}n.has("$sanitize")&&(i=n.get("$sanitize"));const c=a(),l={};return l[or.HTML]=a(c),l[or.CSS]=a(c),l[or.MEDIA_URL]=a(c),l[or.URL]=a(l[or.MEDIA_URL]),l[or.JS]=a(c),l[or.RESOURCE_URL]=a(l[or.URL]),{trustAs:function(e,t){const n=Ae(l,e)?l[e]:null;return n?null===t||E(t)||""===t?t:"string"!=typeof t?void s(ir("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",e)):new n(t):void s(ir("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",e,t))},getTrusted:function(n,a){if(null===a||E(a)||""===a)return a;const c=Ae(l,n)?l[n]:null;return c&&a instanceof c?a.$$unwrapTrustedValue():(j(a.$$unwrapTrustedValue)&&(a=a.$$unwrapTrustedValue()),n===or.MEDIA_URL||n===or.URL?r(a.toString(),n===or.MEDIA_URL):n===or.RESOURCE_URL?function(n){const r=On(n.toString());let s,i,a=!1;for(s=0,i=e.length;s<i;s++)if(o(e[s],r)){a=!0;break}if(a)for(s=0,i=t.length;s<i;s++)if(o(t[s],r)){a=!1;break}return a}(a)?a:void s(ir("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",a.toString())):n===or.HTML?i():s(ir("unsafe","Attempting to use an unsafe value in a safe context.")))},valueOf:function(e){return e instanceof c?e.$$unwrapTrustedValue():e}}}]}}function lr(){let e=!0;this.enabled=function(t){return arguments.length&&(e=!!t),e},this.$get=[sn.$parse,sn.$sceDelegate,(t,n)=>{const r=ue(or);r.isEnabled=function(){return e},r.trustAs=n.trustAs,r.getTrusted=n.getTrusted,r.valueOf=n.valueOf,e||(r.trustAs=r.getTrusted=function(e,t){return t},r.valueOf=e=>e),r.parseAs=(e,n)=>{const s=t(n);return s.literal&&s.constant?s:t(n,t=>r.getTrusted(e,t))};const s=r.parseAs,{getTrusted:i}=r,{trustAs:o}=r;return Object.entries(or).forEach(([e,t])=>{const n=e.toLowerCase();r[jt(`parse_as_${n}`)]=function(e){return s(t,e)},r[jt(`get_trusted_${n}`)]=function(e){return i(t,e)},r[jt(`trust_as_${n}`)]=function(e){return o(t,e)}}),r}]}const ur={};function hr(e,t,n,r){return{restrict:"A",compile(s,i){const o=e(i[n]);return(e,n)=>{const s=n=>{try{o(e,{$event:n})}catch(e){t(e)}};n.addEventListener(r,s),e.$on("$destroy",()=>n.removeEventListener(r,s))}}}}function dr(e,t,n,r,s){return{restrict:"A",compile(i,o){const a=e(o[r]);return e=>{const r=n=>{try{a(e,{$event:n})}catch(e){t(e)}};n.addEventListener(s,r),e.$on("$destroy",()=>n.removeEventListener(s,r))}}}}"click copy cut dblclick focus blur keydown keyup load mousedown mouseenter mouseleave mousemove mouseout mouseover mouseup paste submit touchstart touchend touchmove".split(" ").forEach(e=>{const t=xe(`ng-${e}`);ur[t]=[sn.$parse,sn.$exceptionHandler,(n,r)=>hr(n,r,t,e)]});const pr=we("$compile"),fr=/^\w/,$r=document.createElement("div");class mr{static $nonscope=!0;constructor(e,t,n,r,s,i){if(this.$rootScope=e,this.$animate=t,this.$exceptionHandler=n,this.$sce=r,i){const e=Object.keys(i);for(let t=0,n=e.length;t<n;t++){const n=e[t];this[n]=i[n]}}else this.$attr={};this.$nodeRef=s}get $$element(){return this.$nodeRef.node}$normalize=xe;$addClass(e){e&&e.length>0&&(Se(this.$$element)?this.$animate.addClass(this.$$element,e):this.$nodeRef.element.classList.add(e))}$removeClass(e){e&&e.length>0&&(Se(this.$$element)?this.$animate.removeClass(this.$$element,e):this.$nodeRef.element.classList.remove(e))}$updateClass(e,t){const n=gr(e,t);n&&n.length&&(Se(this.$$element)?this.$animate.addClass(this.$$element,n):this.$nodeRef.element.classList.add(...n.trim().split(/\s+/)));const r=gr(t,e);r&&r.length&&(Se(this.$$element)?this.$animate.removeClass(this.$$element,r):this.$nodeRef.element.classList.remove(...r.trim().split(/\s+/)))}$set(e,t,n,r){const s=Gt(this.$$element,e),i=h[e];let o=e;s?(this.$$element[e]=t,r=s):i&&(this[i]=t,o=i),this[e]=t,r?this.$attr[e]=r:(r=this.$attr[e])||(this.$attr[e]=r=U(e,"-"));if("img"===this.$nodeRef.node.nodeName.toLowerCase()&&"srcset"===e&&(this[e]=t=this.sanitizeSrcset(t,"$set('srcset', value)")),!1!==n){const e=this.$$element;null===t||E(t)?e.removeAttribute(r):fr.test(r)?s&&!1===t?e.removeAttribute(r):s?e.toggleAttribute(r,t):e.setAttribute(r,t):this.setSpecialAttr(this.$$element,r,t)}const{$$observers:a}=this;a&&a[o]&&a[o].forEach(e=>{try{e(t)}catch(e){this.$exceptionHandler(e)}})}$observe(e,t){const n=this.$$observers||(this.$$observers=Object.create(null)),r=n[e]||(n[e]=[]);return r.push(t),r.$$inter||!Ae(this,e)||E(this[e])||t(this[e]),function(){K(r,t)}}setSpecialAttr(e,t,n){$r.innerHTML=`<span ${t}>`;const{attributes:r}=$r.firstChild,s=r[0];r.removeNamedItem(s.name),s.value=n,e.attributes.setNamedItem(s)}sanitizeSrcset(e,t){let n;if(!e)return e;if(!S(e))throw pr("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',t,e.toString());let r="";const s=D(e),i=/\s/.test(s)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,o=s.split(i),a=Math.floor(o.length/2);for(n=0;n<a;n++){const e=2*n;r+=this.$sce.getTrustedMediaUrl(D(o[e])),r+=` ${D(o[e+1])}`}const c=D(o[2*n]).split(/\s/);return r+=this.$sce.getTrustedMediaUrl(D(c[0])),2===c.length&&(r+=` ${D(c[1])}`),r.replace(/unsafe:unsafe/g,"unsafe")}}function gr(e,t){const n=new Set(e.split(/\s+/)),r=new Set(t.split(/\s+/));return Array.from(n).filter(e=>!r.has(e)).join(" ")}function vr(e,t){return{restrict:"A",compile:()=>(n,r)=>{""===t&&(t=e);const s=Nt(t);n[s]||(n[s]=r.getAttribute(e));const i=new MutationObserver(t=>{const r=t[0].target.getAttribute(e);n[s]!==r&&(n[s]=r)});i.observe(r,{attributes:!0,attributeFilter:[e]}),n.$on("$destroy",()=>{i.disconnect()})}}}const yr=we("$compile"),wr=["ngIf","ngRepeat"],br=["ngSrc","ngSrcset","src","srcset"],Er=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,Cr=/^(on[a-z]+|formaction)$/,xr=e=>()=>e,Sr="Directive";class Or{static $inject=[sn.$provide,sn.$$sanitizeUriProvider];constructor(e,t){const n={},r=Object.create(null);function s(e,t,n){const s=/^([@&]|[=<]())(\??)\s*([\w$]*)$/,i=Object.create(null);return Object.entries(e).forEach(([e,o])=>{if((o=o.trim())in r)return void(i[e]=r[o]);const a=o.match(s);if(!a)throw yr("iscp","Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}",t,e,o,n?"controller bindings definition":"isolate scope definition");i[e]={mode:a[1][0],collection:"*"===a[2],optional:"?"===a[3],attrName:a[4]||e},a[4]&&(r[o]=i[e])}),i}function i(e,t){const n={isolateScope:null,bindToController:null};if(x(e.scope)&&(!0===e.bindToController?(n.bindToController=s(e.scope,t,!0),n.isolateScope={}):n.isolateScope=s(e.scope,t,!1)),x(e.bindToController)&&(n.bindToController=s(e.bindToController,t,!0)),n.bindToController&&!e.controller)throw yr("noctrl","Cannot bind to controller without directive '{0}'s controller.",t);return n}function o(e){const t=e.require||e.controller&&e.name;if(!Array.isArray(t)&&x(t)){const e=Object.entries(t);for(let n=0,r=e.length;n<r;n++){const[r,s]=e[n],i=s.match(Er);if(!i)continue;s.substring(i[0].length)||(t[r]=i[0]+r)}}return t}function a(e,t){if(e&&(!S(e)||!/[EA]/.test(e)))throw yr("badrestrict","Restrict property '{0}' of directive '{1}' is invalid",e,t);return e||"EA"}this.directive=function t(r,s){return me(r,"name"),J(r,"directive"),S(r)?(!function(e){const t=e.charAt(0);if(!t||t!==t.toLowerCase())throw yr("baddir","Directive/Component name '{0}' is invalid. The first character must be a lowercase letter",e);if(e!==e.trim())throw yr("baddir","Directive/Component name '{0}' is invalid. The name should not contain leading or trailing whitespaces",e)}(r),me(s,"directiveFactory"),Ae(n,r)||(n[r]=[],e.factory(r+Sr,["$injector","$exceptionHandler",function(e,t){const s=[];for(let i=0,c=n[r].length;i<c;i++){const c=n[r][i];try{let t=e.invoke(c);j(t)?t={compile:xr(t)}:!t.compile&&t.link&&(t.compile=xr(t.link)),t.priority=t.priority||0,t.index=i,t.name=t.name||r,t.require=o(t),t.restrict=a(t.restrict,r),s.push(t)}catch(e){t(e)}}return s}])),n[r].push(s)):Object.entries(r).forEach(([e,n])=>t(e,n)),this},this.component=function(e,t){if(!S(e))return Object.entries(e).forEach(([e,t])=>this.component(e,t)),this;const n=t.controller||function(){};function r(e){function r(t){return j(t)||Array.isArray(t)?function(n,r){return e.invoke(t,this,{$element:n,$attrs:r})}:t}const s=t.template||t.templateUrl?t.template:"",i={controller:n,controllerAs:rr(t.controller)||t.controllerAs||"$ctrl",template:r(s),templateUrl:r(t.templateUrl),transclude:t.transclude,scope:{},bindToController:t.bindings||{},restrict:"E",require:t.require};return Object.entries(t).forEach(([e,t])=>{"$"===e.charAt(0)&&(i[e]=t)}),i}return Object.entries(t).forEach(([e,t])=>{"$"===e.charAt(0)&&(r[e]=t,j(n)&&(n[e]=t))}),r.$inject=["$injector"],this.directive(e,r)},this.aHrefSanitizationTrustedUrlList=function(e){if(!C(e))return t.aHrefSanitizationTrustedUrlList();t.aHrefSanitizationTrustedUrlList(e)},this.imgSrcSanitizationTrustedUrlList=function(e){if(!C(e))return t.imgSrcSanitizationTrustedUrlList();t.imgSrcSanitizationTrustedUrlList(e)};let c=!1;this.strictComponentBindingsEnabled=function(e){return C(e)?(c=e,this):c};const u=Object.create(null);this.addPropertySecurityContext=function(e,t,n){const r=`${e.toLowerCase()}|${t.toLowerCase()}`;if(r in u&&u[r]!==n)throw yr("ctxoverride","Property context '{0}.{1}' already set to '{2}', cannot override to '{3}'.",e,t,u[r],n);return u[r]=n,this},function(){function e(e,t){t.forEach(t=>{u[t.toLowerCase()]=e})}e(or.HTML,["iframe|srcdoc","*|innerHTML","*|outerHTML"]),e(or.CSS,["*|style"]),e(or.URL,["area|href","area|ping","a|href","a|ping","blockquote|cite","body|background","del|cite","input|src","ins|cite","q|cite"]),e(or.MEDIA_URL,["audio|src","img|src","img|srcset","source|src","source|srcset","track|src","video|src","video|poster"]),e(or.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(e,t,r,s,o,a,h,d,p){let f;function $(){for(let e=0,t=f.length;e<t;++e)try{f[e]()}catch(e){r(e)}f=void 0}const g=t.startSymbol(),v=t.endSymbol(),y="{{"===g&&"}}"===v?e=>e:e=>e.replace(/\{\{/g,g).replace(/}}/g,v),w=/^ng(Attr|Prop|On|Observe|Window)([A-Z].*)$/;return b;function b(e,t,n,r,s){let i=new er(e),o=O(i,t,n,r,s),a=null;return function(e,t,n){if(!i)throw yr("multilink","This element has already been linked.");me(e,"scope"),i.getAny()&&Ft(i.getAny(),e);s&&s.needsNewScope&&(e=e.$parent.$new());n=n||{};let{parentBoundTranscludeFn:r}=n;const{transcludeControllers:c,futureParentElement:l}=n;r&&r.$$boundTransclude&&(r=r.$$boundTransclude);a||(a=function(e){const t=e;if(!t)return"html";return"foreignobject"!==z(t)&&toString.call(t).match(/SVG/)?"svg":"html"}(l));let u;if("html"!==a){const e=Xt("<div></div>");e.append(i.node);const t=W(a,e.innerHTML);u=new er(t[0])}else u=t?i.clone():i;if(c)for(const e in c)me(u.element,"element"),Ut(u.element,`$${e}Controller`,c[e].instance);t&&t(u.dom,e);o&&o(e,u,r);t||(i=o=null);return u.linked=!0,u.getAll()}}function O(e,t,n,s,i){const o=[];let a,c=!1;for(let l=0;l<e.size;l++){const u=new mr(h,p,r,d),f=k(e.getIndex(l),u,0===l?n:void 0,s);let $,m;f.length&&($=_(f,e.getIndex(l),u,t,null,[],[],Object.assign({},i,{index:l,parentNodeRef:e,ctxNodeRef:e})));const g=$?.nodeLinkFn,{childNodes:v}=e.getIndex(l);if(g&&$.terminal||!v||!v.length)m=null;else{const e=g?($.transcludeOnThisElement||!$.templateOnThisElement)&&$.transclude:t;m=O(new er(v),e)}(g||m)&&(o.push({index:l,nodeLinkFnCtx:$,childLinkFn:m}),c=!0,a=a||g),i=null}return c?function(n,r,s){me(r,"nodeRef");let i=[];if(a){const t=r.isList?r.nodes.length:1;i=new Array(t),o.forEach(t=>{const n=t.index;0===n?i[n]=r.isList?r.nodes[n]:r.node:e.getIndex(n)&&(i[n]=r.nodes[n])})}else r.isList?r.nodes.forEach(e=>i.push(e)):i.push(r.node);o.forEach(({index:e,nodeLinkFnCtx:r,childLinkFn:o})=>{const a=i[e];let c,l;a.stable=!0,r?.nodeLinkFn?(c=r.newScope?n.$new():n,l=r.transcludeOnThisElement?A(n,r.transclude,s):!r.templateOnThisElement&&s?s:!s&&t?A(n,t):null,r?.newScope&&Ft(a,c),r.nodeLinkFn(o,c,a,l)):o&&o(n,new er(a.childNodes),s)})}:null}function A(e,t,n){function r(r,s,i,o,a){r||((r=e.$transcluded(a)).$$transcluded=!0);return t(r,s,{parentBoundTranscludeFn:n,transcludeControllers:i,futureParentElement:o})}const s=r.$$slots=Object.create(null);for(const r in t.$$slots)t.$$slots[r]?s[r]=A(e,t.$$slots[r],n):s[r]=null;return r}function k(e,n,s,i){const a=[],{nodeType:c}=e,u=n.$attr;let h;switch(c){case Node.ELEMENT_NODE:h=e.nodeName.toLowerCase(),i!==xe(h)&&P(a,xe(h),"E",s);for(let t=0;t<e.attributes?.length;t++){let c=!1,h=!1,d=!1,p=!1,f=!1;const $=e.attributes[t];let{name:m}=$;const{value:g}=$;let v=xe(m.toLowerCase());const y=v.match(w);y&&(c="Attr"===y[1],h="Prop"===y[1],d="On"===y[1],p="Observe"===y[1],f="Window"===y[1],m=m.replace(l,"").toLowerCase().substring(4+y[1].length).replace(/_(.)/g,(e,t)=>t.toUpperCase())),h||d||f?(n[v]=g,u[v]=$.name,h?K(e,a,v,m):d?a.push(hr(o,r,v,m)):a.push(dr(o,r,window,v,m))):p?a.push(vr(m,g)):(v=xe(m.toLowerCase()),u[v]=m,!c&&Ae(n,v)||(n[v]=g,Gt(e,v)&&(n[v]=!0)),J(e,a,g,v,c),v!==i&&P(a,v,"A",s))}"input"===h&&"hidden"===e.getAttribute("type")&&e.setAttribute("autocomplete","off");break;case Node.TEXT_NODE:!function(e,n){const r=t(n,!0);r&&e.push({priority:0,compile:()=>(e,t)=>{r.expressions.forEach(n=>{e.$watch(n,()=>{const n=r(m(e)?e.$target:e);if(1===t.nodeType)t.innerHTML=n;else t.nodeValue=n})})}})}(a,e.nodeValue)}return a.sort(F),a}function T(e,t,n,r,s,i){let o;if(e)return b(t,n,r,s,i);return function(){return o||(o=b(t,n,r,s,i),t=n=i=null),o.apply(this,arguments)}}function _(e,t,n,s,i,o,c,l){l=l||{};let u=-Number.MAX_VALUE,f=!1,{newScopeDirective:$,controllerDirectives:m,newIsolateScopeDirective:g,templateDirective:v,nonTlbTranscludeDirective:w,hasElementTranscludeDirective:b}=l;const{ctxNodeRef:C,parentNodeRef:O}=l;let A=!1,_=!1,N=new er(t);const{index:M}=l;let P,F,q;n.$nodeRef=N;let K,Q=i,G=s,J=!1,Y=!1,ne=function(e,i,l,u){let f,v,y,w,C,S,O,A,k=i;if(t===l?(O=n,S=n.$nodeRef):(S=new er(l),O=new mr(h,p,r,d,S,n)),w=i,g?y=i.$newIsolate():$&&(w=i.$parent),u){const e=function(e,t,n,r){let s;V(e)||(r=n,n=t,t=e,e=void 0);b&&(s=C);n||(n=b?S.node.parentElement:S.node);if(r){const i=u.$$slots[r];if(i)return i(e,t,s,n,k);if(E(i))throw yr("noslot",'No parent directive that requires a transclusion with slot name "{0}". Element: {1}',r,Kt(S.element));return}return u(e,t,s,n,k)};e.$$boundTransclude=u,e.isSlotFilled=function(e){return!!u.$$slots[e]},s=e}m&&(C=function(e,t,n,r,s,i,o){const c=Object.create(null);for(const l in r){const u=r[l],h={$scope:u===o||u.$$isolateScope?s:i,$element:e.node,$attrs:t,$transclude:n};let{controller:d}=u;"@"===d&&(d=t[u.name]);const p=a(d,h,!0,u.controllerAs);c[u.name]=p,e.isElement()&&Ut(e.element,`$${u.name}Controller`,p.instance)}return c}(S,O,s,m,y,i,g)),g&&(y.$target.$$isolateBindings=g.$$isolateBindings,A=te(i,O,y,y.$$isolateBindings,g),A.removeWatches&&y.$on("$destroy",A.removeWatches));for(const e in C){const t=m[e],n=C[e],r=t.$$bindings.bindToController,s=n();n.instance=w.$new(s),Ut(S.node,`$${t.name}Controller`,n.instance),n.bindingInfo=te(w,O,n.instance,r,t)}for(m&&Object.entries(m).forEach(([e,t])=>{const{require:n}=t;t.bindToController&&!Array.isArray(n)&&x(n)&&H(C[e].instance,R(e,n,S.element,C))}),C&&Object.values(C).forEach(e=>{const t=e.instance;if(j(t.$onChanges))try{t.$onChanges(e.bindingInfo.initialChanges)}catch(e){r(e)}if(j(t.$onInit))try{t.$target.$onInit()}catch(e){r(e)}j(t.$onDestroy)&&w.$on("$destroy",()=>{t.$onDestroy()})}),f=0,v=o.length;f<v;f++){const e=o[f],t=e.require&&R(e.directiveName,e.require,S.element,C);try{e(e.isolateScope?y:i,S.node,O,t,s)}catch(e){r(e)}}for(g&&(g.template||null===g.templateUrl)&&(k=y),e&&l&&l.childNodes&&l.childNodes.length&&e(k,new er(l.childNodes),u),f=c.length-1;f>=0;f--){const e=c[f],t=e.require&&R(e.directiveName,e.require,S.node,C);try{e.isolateScope&&qt(S.element,y),e(e.isolateScope?y:i,S.node,O,t,s)}catch(e){r(e)}}C&&Object.values(C).forEach(e=>{const t=e.instance;j(t.$postLink)&&t.$postLink()})};for(let i=0,a=e.length;i<a&&(P=e[i],q=void 0,!(u>P.priority));i++){K=P.scope,K&&(P.templateUrl||(x(K)?(B("new/isolated scope",g||$,P,N),g=P):B("new/isolated scope",g,P,N)),$=$||P),F=P.name;const h=P.replace&&(P.templateUrl||P.template),d=P.transclude&&!wr.includes(P.name);if(!J&&(h||d)){let t;for(let n=i+1;t=e[n++];)if(t.transclude&&!wr.includes(t.name)||t.replace&&(t.templateUrl||t.template)){Y=!0;break}J=!0}if(!P.templateUrl&&P.controller&&(m=m||Object.create(null),B(`'${F}' controller`,m[F],P,N),m[F]=P),K=P.transclude,K)if(A=!0,wr.includes(P.name)||(B("transclusion",w,P,N),w=P),"element"===K)b=!0,u=P.priority,q=N,N=new er(document.createComment("")),n.$nodeRef=N,t=N.node,C.node=t,Z(new er(q.getAny()),t,M),G=T(Y,q.getAny(),s,u,Q&&Q.name,{nonTlbTranscludeDirective:w});else{const e=Object.create(null);if(x(K)){q=document.createDocumentFragment();const t=Object.create(null),n=Object.create(null);Object.entries(K).forEach(([r,s])=>{const i="?"===s.charAt(0);s=i?s.substring(1):s,t[s]=r,e[r]=null,n[r]=i}),N.element.childNodes.forEach(r=>{const s=t[xe(z(r))];s?(n[s]=!0,e[s]=e[s]||document.createDocumentFragment(),e[s].appendChild(r)):q.appendChild(r)}),Object.entries(n).forEach(([e,t])=>{if(!t)throw yr("reqslot","Required transclusion slot `{0}` was not filled.",e)});for(const t in e)if(e[t]){const n=e[t].childNodes;e[t]=T(Y,n,s)}q=q.childNodes}else q=t.cloneNode(!0).childNodes;en(t),G=T(Y,q,s,void 0,void 0,{needsNewScope:P.$$isolateScope||P.$$newScope}),G.$$slots=e}if(P.template)if(_=!0,B("template",v,P,N),v=P,K=j(P.template)?P.template(N.node,n):P.template,K=y(K),P.replace){if(Q=P,q=Vt(K)?[]:Ar(W(P.templateNamespace,D(K))),S(q)&&(q=Array.from(Yt(q)).filter(e=>e.nodeType===Node.ELEMENT_NODE)),t=q[0],1!==q.length||t.nodeType!==Node.ELEMENT_NODE)throw yr("tplrt","Template for directive '{0}' must have exactly one root element. {1}",F,"");Z(N,t),O&&O.setIndex(M,t);const r={$attr:{}},s=k(t,r),o=e.splice(i+1,e.length-(i+1));(g||$)&&L(s,g,$),e=e.concat(s).concat(o),U(n,r),a=e.length}else N.isElement()&&(N.element.innerHTML=K);if(P.templateUrl)_=!0,B("template",v,P,N),v=P,P.replace&&(Q=P),ne=I(e.splice(i,e.length-i),N,n,t,A&&G,o,c,{index:M,controllerDirectives:m,newScopeDirective:$!==P&&$,newIsolateScopeDirective:g,templateDirective:v,nonTlbTranscludeDirective:w,futureParentElement:l.futureParentElement}),a=e.length;else if(P.compile)try{const e=P.compile(N.getAny(),n,G),t=P.$$originalDirective||P;j(e)?re(null,ee(t,e)):e&&re(ee(t,e.pre),ee(t,e.post))}catch(e){r(e)}P.terminal&&(f=!0,u=Math.max(u,P.priority))}return l.hasElementTranscludeDirective=b,{nodeLinkFn:ne,terminal:f,transclude:G,transcludeOnThisElement:A,templateOnThisElement:_,newScope:$&&!0===$.scope};function re(e,t){e&&(e.require=P.require,e.directiveName=F,(g===P||P.$$isolateScope)&&(e=X(e,{isolateScope:!0})),o.push(e)),t&&(t.require=P.require,t.directiveName=F,(g===P||P.$$isolateScope)&&(t=X(t,{isolateScope:!0})),c.push(t))}}function R(e,t,n,r){let s;if(S(t)){const i=t.match(Er),o=t.substring(i[0].length),a=i[1]||i[3],c="?"===i[2];if("^^"===a?n=n.parentElement?n.parentElement:void 0:(s=r&&r[o],s=s&&s.instance),!s){const e=`$${o}Controller`;s="^^"===a&&n&&n.nodeType===Node.DOCUMENT_NODE?null:n?a?zt(n,e):It(n,e):void 0}if(!s&&!c)throw yr("ctreq","Controller '{0}', required by directive '{1}', can't be found!",o,e)}else if(Array.isArray(t)){s=[];for(let i=0,o=t.length;i<o;i++)s[i]=R(e,t[i],n,r)}else x(t)&&(s={},Object.entries(t).forEach(([t,i])=>{s[t]=R(e,i,n,r)}));return s||null}function L(e,t,n){for(let r=0,s=e.length;r<s;r++)e[r]=q(e[r],{$$isolateScope:t,$$newScope:n})}function P(t,r,s,o){let a=!1;if(Ae(n,r))for(let n,c=e.get(r+Sr),l=0,u=c.length;l<u;l++)if(n=c[l],(E(o)||o>n.priority)&&-1!==n.restrict.indexOf(s)){if(!n.$$bindings){const e=n.$$bindings=i(n,n.name);x(e.isolateScope)&&(n.$$isolateBindings=e.isolateScope)}t.push(n),a=n}return a}function U(e,t){const n=t.$attr,r=e.$attr;Object.entries(e).forEach(([r,s])=>{"$"!==r.charAt(0)&&(t[r]&&t[r]!==s&&(s.length?s+=("style"===r?";":" ")+t[r]:s=t[r]),e.$set(r,s,!0,n[r]))}),Object.entries(t).forEach(([t,s])=>{Ae(e,t)||"$"===t.charAt(0)||(e[t]=s,"class"!==t&&"style"!==t&&(r[t]=n[t]))})}function I(e,t,n,i,o,a,c,l){let u,h,d,p=[];const f=t.getAny(),$=e.shift(),m=q($,{templateUrl:null,transclude:null,replace:null,$$originalDirective:$});let g;g=j($.templateUrl)?$.templateUrl(t.element,n):$.templateUrl;const{templateNamespace:v}=$;return en(t.element),s(g).then(r=>{let s,w,b,E;if(r=y(r),$.replace){if(b=Vt(r)?[]:S(r)?Array.from(Yt(r)).filter(e=>e.nodeType!==Node.COMMENT_NODE&&e.nodeType!==Node.TEXT_NODE):Ar(W(v,D(r))),s=b[0],1!==b.length||s.nodeType!==Node.ELEMENT_NODE)throw yr("tplrt","Template for directive '{0}' must have exactly one root element. {1}",$.name,g);w={$attr:{}},Z(t,s,l.index);const i=k(s,w);x($.scope)&&L(i,!0),e=i.concat(e),U(n,w)}else s=f,t.element.innerHTML=r;for(e.unshift(m),d=_(e,s,n,o,$,a,c,{...l,ctxNodeRef:t}),u=d?.nodeLinkFn,i&&Object.entries(i).forEach(([e,n])=>{n===s&&(i[e]=t)}),h=O(new er(t.getAny().childNodes),o);p.length;){const e=p.shift(),n=p.shift(),r=p.shift();let i=t.getAny();if(!e.$$destroyed){if(n!==f){const e=n.className;l.hasElementTranscludeDirective&&$.replace||(i=s.cloneNode(!0),n.appendChild(i));try{""!==e&&t.element.classList.forEach(e=>n.classList.add(e))}catch{}}E=d.transcludeOnThisElement?A(e,d.transclude,r):r,u(h,e,i,E)}}p=null}).catch(e=>{N(e)?r(e):r(new Error(e))}),function(e,t,n,r,s){let i=s;t.$$destroyed||(p?p.push(t,n,r):(u.transcludeOnThisElement&&(i=A(t,u.transclude,s)),u(h,t,n,r,i)))}}function F(e,t){const n=t.priority-e.priority;return 0!==n?n:e.name!==t.name?e.name<t.name?-1:1:e.index-t.index}function B(e,t,n,r){if(t)throw yr("multidir","Multiple directives [{0}, {1}] asking for {3} on: {4}",t.name,n.name,e,Kt(r.getAny()))}function W(e,t){switch(e=(e||"html").toLowerCase()){case"svg":case"math":{const n=document.createElement("div");return n.innerHTML=`<${e}>${t}</${e}>`,n.childNodes[0].childNodes}default:return t}}function K(e,t,n,r){if(Cr.test(r))throw yr("nodomevents","Property bindings for HTML DOM event properties are disallowed");const s=z(e),i=function(e,t){const n=t.toLowerCase();return u[`${e}|${n}`]||u[`*|${n}`]}(s,r);let a=e=>e;"srcset"!==r||"img"!==s&&"source"!==s?i&&(a=d.getTrusted.bind(d,i)):a=e=>function(e,t){if(!e)return e;if(!S(e))throw yr("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',t,e.toString());let n="";const r=D(e),s=/\s/.test(r)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,i=r.split(s),o=Math.floor(i.length/2);let a;for(a=0;a<o;a++){const e=2*a;n+=d.getTrustedMediaUrl(D(i[e])),n+=` ${D(i[e+1])}`}const c=D(i[2*a]).split(/\s/);return n+=d.getTrustedMediaUrl(D(c[0])),2===c.length&&(n+=` ${D(c[1])}`),n}(d.valueOf(e),"ng-prop-srcset"),t.push({priority:100,compile:function(e,t){const s=o(t[n]);return{pre:function(e,i){function o(){const t=s(e);i[r]=a(t)}o(),e.$watch(r,o),e.$watch(t[n],e=>{d.valueOf(e),o()})}}}})}function J(e,n,r,s,i){const o=z(e),a=function(e,t){return"srcdoc"===t?d.HTML:"src"===t||"ngSrc"===t?-1===["img","video","audio","source","track"].indexOf(e)?d.RESOURCE_URL:d.MEDIA_URL:"xlinkHref"===t?"image"===e?d.MEDIA_URL:"a"===e?d.URL:d.RESOURCE_URL:"form"===e&&"action"===t||"base"===e&&"href"===t||"link"===e&&"href"===t?d.RESOURCE_URL:"a"!==e||"href"!==t&&"ngHref"!==t?void 0:d.URL}(o,s),c=!i,l=br.includes(s)||i;let u=t(r,c,a,l);if(u){if("multiple"===s&&"select"===o)throw yr("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",Kt(e.outerHTML));if(Cr.test(s))throw yr("nodomevents","Interpolations for HTML DOM event attributes are disallowed");n.push({priority:100,compile:()=>({pre:function(e,n,i){const o=i.$$observers||(i.$$observers=Object.create(null)),c=i[s];c!==r&&(u=c&&t(c,!0,a,l),r=c),u&&(i[s]=u(e),(o[s]||(o[s]=[])).$$inter=!0,u.expressions.forEach(t=>{(i.$$observers&&i.$$observers[s].$$scope||e).$watch(t,()=>{const t=u(e);"class"===s?i.$updateClass(t,i.$$element.classList.value):i.$set(s,"srcset"===s?d.getTrustedMediaUrl(t):t)})}),0===u.expressions.length&&i.$set(s,"srcset"===s?d.getTrustedMediaUrl(c):c))}})})}}function Z(e,t,n){const r=e.getAny().parentNode;if(r)if(C(n)){const e=r.childNodes[n];e&&r.replaceChild(t,e)}else r.insertBefore(t,r.firstChild);const s=document.createDocumentFragment();e.collection().forEach(e=>{s.appendChild(e)}),e.node=t}function X(e,t){return H(function(){return e.apply(null,arguments)},e,t)}function Y(e,t){if(c)throw yr("missingattr","Attribute '{0}' of '{1}' is non-optional and must be set!",e,t)}function te(e,n,r,s,i){const a=[],c={};let l;function u(t,n,s){j(r.$onChanges)&&(f||(e.$postUpdate($),f=[]),l||(l={},f.push(h)),l[t]={currentValue:n,firstChange:s})}function h(){r.$onChanges&&l&&r.$onChanges(l),l=void 0}return s&&Object.entries(s).forEach(([s,l])=>{const{attrName:d,optional:p,mode:f}=l;let $,m,g,v,y,w=!0,b=!0;switch(f){case"@":p||Ae(n,d)||(Y(d,i.name),r[s]=n[d]=void 0),y=n.$observe(d,e=>{(S(e)||M(e))&&(u(s,e,b),r[s]=e,w?w=!1:(h(),b=!1))}),n.$$observers[d].$$scope=e,$=n[d],S($)?r[s]=t($)(e):M($)&&(r[s]=$),c[s]={currentValue:r[s],firstChange:!0},a.push(y);break;case"=":{if(!Ae(n,d)){if(p)break;Y(d,i.name),n[d]=void 0}if(p&&!n[d])break;m=o(n[d]),v=m.literal?G:Q,g=m.assign||function(){throw $=r.$target[s]=m(e),yr("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",n[d],d,i.name)},$=r.$target[s]=m(e.$target);const t=function(t){return v(t,r[s])||(v(t,$)?g(e,t=r[s]):r[s]=t),$=t,$};if(t.$stateful=!0,l.collection)y=e.$watch(n[d],t);else{if(n[d]){const r=n[d];e.$watch(r,r=>{const s=o(n[d],t);r?(m.literal?e.$target[d]=r:e[d]=r,s(e)):e[d]=e[n[d]]},!0)}y=r.$watch(d,t=>{if(t!==$||E(n[d])){if(m.inputs&&!m.literal||E(n[d])&&C(t))throw r.$target[d]=$,yr("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",n[d],d,i.name);x(t)?Object.entries(t).forEach(([t,n])=>{e.$target[t]=n}):(g(e.$target,$=t),e.$handler.watchers.get(n[d])?.forEach(n=>{n.listenerFn(t,e.$target)}))}},!0)}a.push(y);break}case"<":if(!Ae(n,d)){if(p)break;Y(d,i.name),n[d]=void 0}if(p&&!n[d])break;m=o(n[d]),r.$target[s]=m(e.$target),c[s]={currentValue:r.$target[s],firstChange:b},e.$target.attrs=n,n[d]&&(y=e.$watch(n[d],e=>{r.$target[s]=e,u(s,e,b),b&&(b=!1)},!0),a.push(y));break;case"&":if(p||Ae(n,d)||Y(d,i.name),m=Ae(n,d)?o(n[d]):()=>{},m.toString()===(()=>{}).toString()&&p)break;r.$target[s]=function(t){return m(e.$target,t)}}}),{initialChanges:c,removeWatches:a.length&&function(){for(let e=0,t=a.length;e<t;++e)a[e]()}}}}]}}function Ar(e){let t=e.length;if(t<=1)return e;for(;t--;){const n=e[t];(n.nodeType===Node.COMMENT_NODE||n.nodeType===Node.TEXT_NODE&&""===n.nodeValue.trim())&&[].splice.call(e,t,1)}return e}const kr={$nonscope:!0,$addControl:()=>{},$getControls:()=>[],$$renameControl:(e,t)=>{e.$name=t},$removeControl:()=>{},$setValidity:()=>{},$setDirty:()=>{},$setPristine:()=>{},$setSubmitted:()=>{},$$setSubmitted:()=>{}},Tr="ng-pending",_r="ng-submitted";class Nr{static $nonscope=!0;static $inject=["$element","$attrs","$scope","$animate","$interpolate"];constructor(e,r,s,i,o){this.$$controls=[],this.$name=o(r.name||r.ngForm||"")(s),this.$dirty=!1,this.$pristine=!0,this.$valid=!0,this.$invalid=!1,this.$submitted=!1,this.$$parentForm=kr,this.$$element=e,this.$$animate=i,this.$error={},this.$$success={},this.$pending=void 0,this.$$classCache={};const a=this.$$element.classList.contains(t);this.$$classCache[t]=a,this.$$classCache[n]=!a}$rollbackViewValue(){this.$$controls.forEach(e=>{e.$rollbackViewValue()})}$commitViewValue(){this.$$controls.forEach(e=>{e.$commitViewValue()})}$addControl(e){J(e.$name,"input"),this.$$controls.push(e),e.$name&&(this[e.$name]=e),e.$target.$$parentForm=this}$getControls(){return ue(this.$$controls)}$$renameControl(e,t){const n=e.$name;this[n]===e&&delete this[n],this[t]=e,e.$name=t}$removeControl(e){e.$name&&this[e.$name]===e&&delete this[e.$name],this.$pending&&Object.keys(this.$pending).forEach(t=>{this.$setValidity(t,null,e)}),this.$error&&Object.keys(this.$error).forEach(t=>{this.$setValidity(t,null,e)}),this.$$success&&Object.keys(this.$$success).forEach(t=>{this.$setValidity(t,null,e)}),K(this.$$controls,e),e.$target.$$parentForm=kr}$setDirty(){Se(this.$$element)?(this.$$animate.removeClass(this.$$element,r),this.$$animate.addClass(this.$$element,s)):(this.$$element.classList.remove(r),this.$$element.classList.add(s)),this.$dirty=!0,this.$pristine=!1,this.$$parentForm.$setDirty()}$setPristine(){Se(this.$$element)?this.$$animate.setClass(this.$$element,r,`${s} ${_r}`):(this.$$element.classList.remove(s,_r),this.$$element.classList.add(r)),this.$dirty=!1,this.$pristine=!0,this.$submitted=!1,this.$$controls.forEach(e=>{e.$setPristine()})}$setUntouched(){this.$$controls.forEach(e=>{e.$setUntouched()})}$setSubmitted(){let e=this;for(;e.$$parentForm&&e.$$parentForm!==kr;)e=e.$$parentForm;e.$$setSubmitted()}$$setSubmitted(){Se(this.$$element)?this.$$animate.addClass(this.$$element,_r):this.$$element.classList.add(_r),this.$submitted=!0,this.$$controls.forEach(e=>{e.$$setSubmitted&&e.$$setSubmitted()})}set(e,t,n){const r=e[t];if(r){-1===r.indexOf(n)&&r.push(n)}else m(e)&&(e=e.$target),e[t]=[n]}unset(e,t,n){const r=e[t];if(!r)return;-1===K(r,n)&&K(r,n.$target),0===r.length&&delete e[t]}$setValidity(e,r,s){const i=this;let o;function a(e,t,n){n&&!e.$$classCache[t]?(e.$$animate.addClass(e.$$element,t),e.$$classCache[t]=!0):!n&&e.$$classCache[t]&&(e.$$animate.removeClass(e.$$element,t),e.$$classCache[t]=!1)}function c(e,r,s){r=r?`-${U(r,"-")}`:"",a(e,t+r,!0===s),a(e,n+r,!1===s)}E(r)?function(e,t,n,r){e[t]||(e[t]={});i.set(e[t],n,r)}(this,"$pending",e,s):function(e,t,n,r){e[t]&&i.unset(e[t],n,r);Oe(e[t])&&(e[t]=void 0)}(this,"$pending",e,s),M(r)?r?(this.unset(this.$error,e,s),this.set(this.$$success,e,s)):(this.set(this.$error,e,s),this.unset(this.$$success,e,s)):(this.unset(this.$error,e,s),this.unset(this.$$success,e,s)),this.$pending?(a(this,Tr,!0),this.$valid=this.$invalid=void 0,c(this,"",null)):(a(this,Tr,!1),this.$valid=Oe(this.$error),this.$invalid=!this.$valid,c(this,"",this.$valid)),o=this.$pending&&this.$pending[e]?void 0:!this.$error[e]&&(!!this.$$success[e]||null),c(this,e,o),this.$$parentForm.$setValidity(e,o,this)}}const jr=function(e){return["$parse",function(n){return{name:"form",restrict:e?"EA":"E",require:["form","^^?form"],controller:Nr,compile:function(s,i){s.classList.add(r,t);const o=i.name?"name":!(!e||!i.ngForm)&&"ngForm";return{pre:function(e,t,r,s){const i=s[0];if(!("action"in r)){const e=function(e){i.$commitViewValue(),i.$setSubmitted(),e.preventDefault()};t.addEventListener("submit",e),t.addEventListener("$destroy",()=>{setTimeout(()=>{t.removeEventListener("submit",e)},0,!1)})}(s[1]||i.$$parentForm).$addControl(i);const a=o?function(e){if(""===e)return n('this[""]').assign;return n(e).assign||(()=>{})}(i.$name):()=>{};o&&(a(e,i),r.$observe(o,t=>{i.$name!==t&&(e.$target[i.$name]=void 0,i.$$parentForm.$$renameControl(i,t),e.$target!==i.$$parentForm&&i.$$parentForm!==kr||(e.$target[t]=i))})),t.addEventListener("$destroy",()=>{i.$target.$$parentForm.$removeControl(i),a(e,void 0),H(i,kr)})}}}}}]},Rr=jr(),Lr=jr("ngForm"),Vr=/(\s+|^)default(\s+|$)/;class Mr{static $nonscope=!0;static $inject=["$attrs","$scope"];constructor(e,t){this.$$attrs=e,this.$$scope=t,this.parentCtrl}$onInit(){const e=this.parentCtrl?this.parentCtrl.$options:Dr,t=this.$$scope.$eval(this.$$attrs.ngModelOptions);this.$options=e.createChild(t)}}class Pr{static $nonscope=!0;constructor(e){this.$$options=e}getOption(e){return this.$$options[e]}createChild(e){let t=!1;return e=Object.assign({},e),Object.entries(e).forEach(([n,r])=>{"$inherit"===r?"*"===n?t=!0:(e[n]=this.$$options[n],"updateOn"===n&&(e.updateOnDefault=this.$$options.updateOnDefault)):"updateOn"===n&&(e.updateOnDefault=!1,e[n]=D(r.replace(Vr,()=>(e.updateOnDefault=!0," "))))},this),t&&(delete e["*"],Ir(e,this.$$options)),Ir(e,Dr.$$options),new Pr(e)}}const Dr=new Pr({updateOn:"",updateOnDefault:!0,debounce:0,getterSetter:!1,allowInvalid:!1});function Ur(){return{restrict:"A",priority:10,require:{parentCtrl:"?^^ngModelOptions"},bindToController:!0,controller:Mr}}function Ir(e,t){Object.keys(t).forEach(n=>{C(e[n])||(e[n]=t[n])})}const Hr=we("ngModel");class Fr{static $nonscope=!0;static $inject=["$scope",sn.$exceptionHandler,"$attrs","$element",sn.$parse,sn.$animate,sn.$interpolate];constructor(e,r,s,i,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(s.name||"",!1)(e),this.$$parentForm=kr,this.$options=Dr,this.$$updateEvents="",this.$$updateEventHandler=this.$$updateEventHandler.bind(this),this.$$parsedNgModel=o(s.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=e,this.$$attr=s,this.$$element=i,this.$$animate=a,this.$$parse=o,this.$$exceptionHandler=r,this.$$hasNativeValidators=!1,this.$$classCache={};const l=this.$$element.classList.contains(t);var u;this.$$classCache[t]=l,this.$$classCache[n]=!l,this.$$eventRemovers=new Set,(u=this).$$scope.$watch("value",()=>{const e=u.$$ngModelGet(u.$$scope);e===u.$modelValue||Number.isNaN(u.$modelValue)&&Number.isNaN(e)||u.$$setModelValue(e)})}set(e,t){e[t]=!0}unset(e,t){delete e[t]}$setValidity(e,r){const s=this;function i(e,t,n){n&&!e.$$classCache[t]?(Se(e.$$element)?e.$$animate.addClass(e.$$element,t):e.$$element.classList.add(t),e.$$classCache[t]=!0):!n&&e.$$classCache[t]&&(Se(e.$$element)?e.$$animate.removeClass(e.$$element,t):e.$$element.classList.remove(t),e.$$classCache[t]=!1)}function o(e,r,s){r=r?`-${U(r,"-")}`:"",i(e,t+r,!0===s),i(e,n+r,!1===s)}let a;E(r)?function(e,t,n){e[t]||(e[t]={}),s.set(e[t],n)}(this,"$pending",e):function(e,t,n){e[t]&&s.unset(e[t],n),Oe(e[t])&&(e[t]=void 0)}(this,"$pending",e),M(r)?r?(delete this.$error[e],this.set(this.$$success,e)):(this.set(this.$error,e),delete this.$$success[e]):(delete this.$error[e],delete this.$$success[e]),this.$pending?(i(this,Tr,!0),this.$valid=this.$invalid=void 0,o(this,"",null)):(i(this,Tr,!1),this.$valid=Oe(this.$error),this.$invalid=!this.$valid,o(this,"",this.$valid)),a=this.$pending&&this.$pending[e]?void 0:!this.$error[e]&&(!!this.$$success[e]||null),o(this,e,a),this.$$parentForm.$setValidity(e,a,this)}$$initGetterSetters(){if(this.$options.getOption("getterSetter")){const e=this.$$parse(`${this.$$attr.ngModel}()`),t=this.$$parse(`${this.$$attr.ngModel}($$$p)`);this.$$ngModelGet=t=>{let n=this.$$parsedNgModel(t);return j(n)&&(n=e(t)),n},this.$$ngModelSet=(e,n)=>{j(this.$$parsedNgModel(e))?t(e,{$$$p:n}):this.$$parsedNgModelAssign(e,n)}}else if(!this.$$parsedNgModel.assign)throw Hr("nonassign","Expression '{0}' is non-assignable. Element: {1}",this.$$attr.ngModel,Kt(this.$$element))}$render(){}$isEmpty(e){return E(e)||""===e||null===e||Number.isNaN(e)}$$updateEmptyClasses(e){this.$isEmpty(e)?Se(this.$$element)?(this.$$animate.removeClass(this.$$element,c),this.$$animate.addClass(this.$$element,a)):(this.$$element.classList.remove(c),this.$$element.classList.add(a)):Se(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&&(Se(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,Se(this.$$element)?(this.$$animate.removeClass(this.$$element,r),this.$$animate.addClass(this.$$element,s)):(this.$$element.classList.remove(r),this.$$element.classList.add(s)),this.$$parentForm.$setDirty()}$setUntouched(){this.$touched=!1,this.$untouched=!0,Se(this.$$element)?this.$$animate.setClass(this.$$element,i,o):(this.$$element.classList.remove(o),this.$$element.classList.add(i))}$setTouched(){this.$touched=!0,this.$untouched=!1,Se(this.$$element)?this.$$animate.setClass(this.$$element,o,i):(this.$$element.classList.remove(i),this.$$element.classList.add(o))}$rollbackViewValue(){clearTimeout(this.$$pendingDebounce),this.$viewValue=this.$$lastCommittedViewValue,this.$render()}$validate(){if(F(this.$modelValue))return;const e=this.$$lastCommittedViewValue,t=this.$$rawModelValue,n=this.$valid,r=this.$modelValue,s=this.$options.getOption("allowInvalid"),i=this;this.$$runValidators(t,e,e=>{s||n===e||(i.$modelValue=e?t:void 0,i.$modelValue!==r&&i.$$writeModelToScope())})}$$runValidators(e,t,n){this.$$currentValidationRunId++;const r=this.$$currentValidationRunId,s=this;function i(e,t){r===s.$$currentValidationRunId&&s.$setValidity(e,t)}function o(e){r===s.$$currentValidationRunId&&n(e)}!function(){const e=s.$$parserName;if(!E(s.$$parserValid))return s.$$parserValid||(Object.keys(s.$validators).forEach(e=>{i(e,null)}),Object.keys(s.$asyncValidators).forEach(e=>{i(e,null)})),i(e,s.$$parserValid),s.$$parserValid;i(e,null);return!0}()?o(!1):function(){let n=!0;if(Object.entries(s.$validators).forEach(([r,s])=>{const o=Boolean(s(e,t));n=n&&o,i(r,o)}),!n)return Object.keys(s.$asyncValidators).forEach(e=>{i(e,null)}),!1;return!0}()?function(){const n=[];let r=!0;Object.entries(s.$asyncValidators).forEach(([s,o])=>{const a=o(e,t);if(!P(a))throw Hr("nopromise","Expected asynchronous validator to return a promise but got '{0}' instead.",a);i(s,void 0),n.push(a.then(()=>{i(s,!0)},()=>{r=!1,i(s,!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 e=this.$$lastCommittedViewValue;const t=this;if(this.$$parserValid=!E(e)||void 0,this.$setValidity(this.$$parserName,null),this.$$parserName="parse",this.$$parserValid)for(let t=0;t<this.$parsers.length;t++)if(e=this.$parsers[t](e),E(e)){this.$$parserValid=!1;break}F(this.$modelValue)&&(this.$modelValue=this.$$ngModelGet(this.$$scope));const n=this.$modelValue,r=this.$options.getOption("allowInvalid");function s(){t.$modelValue!=n&&t.$$writeModelToScope()}this.$$rawModelValue=e,r&&(this.$modelValue=e,s()),this.$$runValidators(e,this.$$lastCommittedViewValue,n=>{r||(t.$modelValue=n?e:void 0,s())})}$$writeModelToScope(){this.$$ngModelSet(this.$$scope,this.$modelValue),Object.values(this.$viewChangeListeners).forEach(e=>{try{e()}catch(e){this.$$exceptionHandler(e)}},this)}$setViewValue(e,t){this.$viewValue=e,this.$options?.getOption("updateOnDefault")&&this.$$debounceViewValueCommit(t)}$$debounceViewValueCommit(e){let t=this.$options.getOption("debounce");T(t[e])?t=t[e]:T(t.default)&&-1===this.$options.getOption("updateOn").indexOf(e)?t=t.default:T(t["*"])&&(t=t["*"]),clearTimeout(this.$$pendingDebounce);const n=this;t>0?this.$$pendingDebounce=setTimeout(()=>{n.$commitViewValue()},t):this.$commitViewValue()}$overrideModelOptions(e){this.$$removeAllEventListeners(),this.$options=this.$options.createChild(e),this.$$updateEvents=this.$options.$$options.updateOn,this.$$setUpdateOnEvents()}$processModelValue(){const e=this.$$format();this.$viewValue!==e&&(this.$$updateEmptyClasses(e),this.$viewValue=this.$$lastCommittedViewValue=e,this.$render(),this.$$runValidators(this.$modelValue,this.$viewValue,()=>{}))}$$format(){const e=this.$formatters;let t=e.length,n=this.$modelValue;for(;t--;)n=e[t](n);return n}$$setModelValue(e){this.$modelValue=this.$$rawModelValue=e,this.$$parserValid=void 0,this.$processModelValue()}$$removeAllEventListeners(){this.$$eventRemovers.forEach(e=>e()),this.$$eventRemovers.clear()}$$setUpdateOnEvents(){this.$$updateEvents&&this.$$updateEvents.split(" ").forEach(e=>{this.$$element.addEventListener(e,this.$$updateEventHandler),this.$$eventRemovers.add(()=>this.$$element.removeEventListener(e,this.$$updateEventHandler))}),this.$$updateEvents=this.$options.getOption("updateOn"),this.$$updateEvents&&this.$$updateEvents.split(" ").forEach(e=>{this.$$element.addEventListener(e,this.$$updateEventHandler),this.$$eventRemovers.add(()=>this.$$element.removeEventListener(e,this.$$updateEventHandler))})}$$updateEventHandler(e){this.$$debounceViewValueCommit(e&&e.type)}}function qr(){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:Fr,priority:1,compile:e=>(e.classList.add(r,i,t),{pre:(e,t,n,r)=>{const s=r[0],i=r[1]||s.$$parentForm,o=r[2];o&&(s.$options=o.$options),s.$$initGetterSetters(),i.$addControl(s),n.$observe("name",e=>{s.$name!==e&&s.$$parentForm.$$renameControl(s,e)});const a=e.$watch(n.ngModel,e=>{s.$$setModelValue(m(e)?e.$target:e)});e.$on("$destroy",()=>{s.$$parentForm.$removeControl(s),a()})},post:(e,t,n,r)=>{const s=r[0];s.$$setUpdateOnEvents(),t.addEventListener("blur",()=>{s.$touched||s.$setTouched()}),s.$viewChangeListeners.push(()=>e.$eval(t.dataset.change))}})}}const Br=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,zr=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,Wr=/^(?=.{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])?)*$/,Kr=/^\s*([-+])?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Qr=/^(\d{4,})-(\d{2})-(\d{2})$/,Gr=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Jr=/^(\d{4,})-W(\d\d)$/,Zr=/^(\d{4,})-(\d\d)$/,Xr=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Yr="validity",es=new Map;"date,datetime-local,month,time,week".split(",").forEach(e=>{es.set(e,!0)});const ts={text:function(e,t,n,r){rs(e,t,n,r),ns(r)},date:os("date",Qr,ss(Qr,["yyyy","MM","dd"])),"datetime-local":os("datetimelocal",Gr,ss(Gr,["yyyy","MM","dd","HH","mm","ss","sss"])),time:os("time",Xr,ss(Xr,["HH","mm","ss","sss"])),week:os("week",Jr,function(e,t){if(_(e))return e;if(S(e)){Jr.lastIndex=0;const n=Jr.exec(e);if(n){const e=+n[1],r=+n[2];let s=0,i=0,o=0,a=0;const c=function(e){const t=new Date(e,0,1).getDay();return new Date(e,0,(t<=4?5:12)-t)}(e),l=(r-1)*7;return t&&(s=t.getHours(),i=t.getMinutes(),o=t.getSeconds(),a=t.getMilliseconds()),new Date(e,0,c.getDate()+l,s,i,o,a)}}return NaN}),month:os("month",Zr,ss(Zr,["yyyy","MM"])),number:function(e,t,n,r,s,i){let o;if(as(e,t,n,r,"number"),cs(r),rs(e,t,n,r),C(n.min)||n.ngMin){let t=n.min||i(n.ngMin)(e);o=ls(t),r.$validators.min=function(e,t){return r.$isEmpty(t)||E(o)||t>=o},n.$observe("min",e=>{e!==t&&(o=ls(e),t=e,r.$validate())})}if(C(n.max)||n.ngMax){let t=n.max||i(n.ngMax)(e),s=ls(t);r.$validators.max=function(e,t){return r.$isEmpty(t)||E(s)||t<=s},n.$observe("max",e=>{e!==t&&(s=ls(e),t=e,r.$validate())})}if(C(n.step)||n.ngStep){let t=n.step||i(n.ngStep)(e),s=ls(t);r.$validators.step=function(e,t){return r.$isEmpty(t)||E(s)||ds(t,o||0,s)},n.$observe("step",e=>{e!==t&&(s=ls(e),t=e,r.$validate())})}},url:function(e,t,n,r){rs(e,t,n,r),ns(r),r.$validators.url=function(e,t){const n=e||t;return r.$isEmpty(n)||zr.test(n)}},email:function(e,t,n,r){rs(e,t,n,r),ns(r),r.$validators.email=function(e,t){const n=e||t;return r.$isEmpty(n)||Wr.test(n)}},radio:function(e,t,n,r){const s=!n.ngTrim||"false"!==D(n.ngTrim);E(n.name)&&t.setAttribute("name",y());t.addEventListener("change",function(e){if(t.checked){let{value:t}=n;s&&(t=D(t)),r.$setViewValue(t,e&&e.type)}}),r.$render=function(){let{value:e}=n;s&&(e=D(e));const i=m(r.$viewValue)?r.$viewValue.$target:r.$viewValue;t.checked=(m(e)?e.$target:e)===(m(i)?i.$target:i)},n.$observe("value",r.$render)},range:function(e,t,n,r){as(e,t,n,r,"range"),cs(r),rs(e,t,n,r);const s=r.$$hasNativeValidators&&"range"===t.type;let i=s?0:void 0,o=s?100:void 0,a=s?1:void 0;const{validity:c}=t,l=C(n.min),u=C(n.max),h=C(n.step),d=r.$render;r.$render=s&&C(c.rangeUnderflow)&&C(c.rangeOverflow)?function(){d(),r.$setViewValue(t.value)}:d,l&&(i=ls(n.min),r.$validators.min=s?function(){return!0}:function(e,t){return r.$isEmpty(t)||E(i)||t>=i},p("min",function(e){if(i=ls(e),F(r.$modelValue))return;if(s){let e=t.value;i>e&&(e=i,t.value=e),r.$setViewValue(e)}else r.$validate()}));u&&(o=ls(n.max),r.$validators.max=s?function(){return!0}:function(e,t){return r.$isEmpty(t)||E(o)||t<=o},p("max",function(e){if(o=ls(e),F(r.$modelValue))return;if(s){let e=t.value;o<e&&(t.value=o,e=o<i?i:o),r.$setViewValue(e)}else r.$validate()}));h&&(a=ls(n.step),r.$validators.step=s?function(){return!c.stepMismatch}:function(e,t){return r.$isEmpty(t)||E(a)||ds(t,i||0,a)},p("step",function(e){if(a=ls(e),F(r.$modelValue))return;s?r.$viewValue!==t.value&&r.$setViewValue(t.value):r.$validate()}));function p(e,r){t.setAttribute(e,n[e]);let s=n[e];n.$observe(e,e=>{e!==s&&(s=e,r(e))})}},checkbox:function(e,t,n,r,s,i){const o=ps(i,e,"ngTrueValue",n.ngTrueValue,!0),a=ps(i,e,"ngFalseValue",n.ngFalseValue,!1);t.addEventListener("change",function(e){r.$setViewValue(t.checked,e&&e.type)}),r.$render=function(){t.checked=r.$viewValue},r.$isEmpty=function(e){return!1===e},r.$formatters.push(e=>G(e,o)),r.$parsers.push(e=>e?o:a)},hidden:()=>{},button:()=>{},submit:()=>{},reset:()=>{},file:()=>{}};function ns(e){e.$formatters.push(t=>e.$isEmpty(t)?t:t.toString())}function rs(e,t,n,r){const s=t.type.toLowerCase();let i,o=!1;t.addEventListener("compositionstart",()=>{o=!0}),t.addEventListener("compositionend",()=>{o=!1,a()});const a=function(e){if(i&&(clearTimeout(i),i=null),o)return;let{value:a}=t;const c=e&&e.type;"password"===s||n.ngTrim&&"false"===n.ngTrim||(a=D(a)),(r.$viewValue!==a||""===a&&r.$$hasNativeValidators)&&r.$target.$setViewValue(a,c)};["input","change","paste","drop","cut"].forEach(e=>{t.addEventListener(e,a)}),es[s]&&r.$$hasNativeValidators&&s===n.type&&t.addEventListener("keydown wheel mousedown",function(e){if(!i){const t=this[Yr],n=t.badInput,r=t.typeMismatch;i=setTimeout(()=>{i=null,t.badInput===n&&t.typeMismatch===r||a(e)})}}),r.$render=function(){const e=r.$isEmpty(r.$viewValue)?"":r.$viewValue;t.value!==e&&(t.value=e)}}function ss(e,t){return function(n,r){let s,i;if(_(n))return n;if(S(n)){if('"'===n.charAt(0)&&'"'===n.charAt(n.length-1)&&(n=n.substring(1,n.length-1)),Br.test(n))return new Date(n);if(e.lastIndex=0,s=e.exec(n),s){s.shift(),i=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(s).forEach(([e,n])=>{e<t.length&&(i[t[e]]=+n)});const e=new Date(i.yyyy,i.MM-1,i.dd,i.HH,i.mm,i.ss||0,1e3*i.sss||0);return i.yyyy<100&&e.setFullYear(i.yyyy),e}}return NaN}}const is=/\b\d{4}-(0[1-9]|1[0-2])\b/;function os(e,t,n){return function(r,s,i,o,a,c){if(as(r,s,i,o,e),rs(0,s,i,o),o.$parsers.push(n=>o.$isEmpty(n)?null:t.test(n)?["month","week","datetimelocal","time","date"].includes(e)?n:h(n,undefined):void(o.$$parserName=e)),o.$formatters.push(function(t){if(t&&!S(t))throw Hr("datefmt","Expected `{0}` to be a String",t);if("month"===e){if(A(t))return"";if(!is.test(t))throw Hr("datefmt","Expected month `{0}` to be a 'YYYY-DD'",t)}if("week"===e){if(A(t))return"";if(!Jr.test(t))throw Hr("datefmt","Expected week `{0}` to be a 'yyyy-Www'",t)}if("datetimelocal"===e){if(A(t))return"";if(!Gr.test(t))throw Hr("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",t)}return t}),C(i.min)||i.ngMin){let t=i.min||c(i.ngMin)(r),s=u(m(t)?t.$target:t);o.$validators.min=function(t){return"month"===e?E(s)||n(t)>=n(s):!l(t)||E(s)||n(t)>=s},i.$observe("min",e=>{e!==t&&(s=u(e),t=e,o.$validate())})}if(C(i.max)||i.ngMax){let t=i.max||c(i.ngMax)(r),s=u(m(t)?t.$target:t);o.$validators.max=function(t){return"month"===e?E(s)||n(t)<=n(s):!l(t)||E(s)||n(t)<=s},i.$observe("max",e=>{e!==t&&(s=u(e),t=e,o.$validate())})}function l(e){return e&&!(e.getTime&&Number.isNaN(e.getTime()))}function u(e){return C(e)&&!_(e)?h(e)||void 0:e}function h(e,t){const r=o.$options.getOption("timezone");let s=n(e,t);return!Number.isNaN(s)&&r&&(s=re(s,r)),s}}}function as(e,t,n,r,s){(r.$$hasNativeValidators=x(t.validity))&&r.$parsers.push(e=>{const n=t[Yr]||{};if(!n.badInput&&!n.typeMismatch)return e;r.$$parserName=s})}function cs(e){e.$parsers.push(t=>e.$isEmpty(t)?null:Kr.test(t)?parseFloat(t):void(e.$$parserName="number")),e.$formatters.push(t=>{if(!e.$isEmpty(t)){if(!T(t))throw Hr("numfmt","Expected `{0}` to be a number",t);t=t.toString()}return t})}function ls(e){return C(e)&&!T(e)&&(e=parseFloat(e)),F(e)?void 0:e}function us(e){return(0|e)===e}function hs(e){const t=e.toString(),n=t.indexOf(".");if(-1===n){if(e>-1&&e<1){const e=/e-(\d+)$/.exec(t);if(e)return Number(e[1])}return 0}return t.length-n-1}function ds(e,t,n){let r=Number(e);const s=!us(r),i=!us(t),o=!us(n);if(s||i||o){const e=s?hs(r):0,a=i?hs(t):0,c=o?hs(n):0,l=10**Math.max(e,a,c);r*=l,t*=l,n*=l,s&&(r=Math.round(r)),i&&(t=Math.round(t)),o&&(n=Math.round(n))}return(r-t)%n===0}function ps(e,t,n,r,s){let i;if(C(r)){if(i=e(r),!i.constant)throw Hr("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",n,r);return i(t)}return s}function fs(e,t){return{restrict:"E",require:["?ngModel"],link:{pre(n,r,s,i){i[0]&&(ts[s.type?.toLowerCase()]||ts.text)(n,r,s,i[0],e,t)}}}}function $s(){const e={configurable:!0,enumerable:!1,get(){return this.getAttribute("value")||""},set(e){this.setAttribute("value",e)}};return{restrict:"E",priority:200,compile(t,n){if("hidden"!==n.type?.toLowerCase())return;return{pre(t,n){const r=n;r.parentNode&&r.parentNode.insertBefore(r,r.nextSibling),Object.defineProperty&&Object.defineProperty(r,"value",e)}}}}}fs.$inject=["$filter","$parse"];const ms=/^(true|false|\d+)$/;function gs(){function e(e,t,n){e.value=C(n)?m(n)?n.$target:n:null,t.$set("value",n)}return{restrict:"A",priority:100,compile:(t,n)=>ms.test(n.ngValue)?function(t,n,r){e(n,r,t.$eval(r.ngValue))}:function(t,n,r){t.$watch(r.ngValue,t=>{e(n,r,t)})}}}function vs(e){return{restrict:"E",terminal:!0,compile(t,n){"text/ng-template"===n.type&&e.set(n.id,t.innerText)}}}vs.$inject=["$templateCache"];class ys{static $nonscope=["ngModelCtrl","selectValueMap","emptyOption","optionsMap","$scope","$element"];static $inject=["$element","$scope"];constructor(e,t){this.$element=e,this.$scope=t,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,t.$on("$destroy",()=>{this.renderUnknownOption=()=>{}})}renderUnknownOption(e){const t=this.generateUnknownOptionValue(e);this.unknownOption.value=t,this.$element.prepend(this.unknownOption),this.unknownOption.selected=!0,this.unknownOption.setAttribute("selected","selected"),this.$element.value=t}updateUnknownOption(e){const t=this.generateUnknownOptionValue(e);this.unknownOption.value=t,this.unknownOption.selected=!0,this.unknownOption.setAttribute("selected","selected"),this.$element.value=t}generateUnknownOptionValue(e){return E(e)?"? undefined:undefined ?":`? ${be(e)} ?`}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 e=this.$element.value,t=e in this.selectValueMap?this.selectValueMap[e]:e;return this.hasOption(t)?t:null}writeValue(e){const t=this.$element.options[this.$element.selectedIndex];if(t&&(t.selected=!1),this.hasOption(e)){this.removeUnknownOption();const t=be(e);this.$element.value=t in this.selectValueMap?t:e;const n=this.$element.options[this.$element.selectedIndex];n?n.selected=!0:this.selectUnknownOrEmptyOption(e)}else this.selectUnknownOrEmptyOption(e)}addOption(e,t){if(t.nodeType===Node.COMMENT_NODE)return;J(e,'"option value"'),""===e&&(this.hasEmptyOption=!0,this.emptyOption=t);const n=this.optionsMap.get(e)||0;this.optionsMap.set(e,n+1),this.scheduleRender()}removeOption(e){const t=this.optionsMap.get(e);t&&(1===t?(this.optionsMap.delete(e),""===e&&(this.hasEmptyOption=!1,this.emptyOption=void 0)):this.optionsMap.set(e,t-1))}hasOption(e){return!!this.optionsMap.get(e)}$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(e){A(e)&&this.emptyOption?(this.removeUnknownOption(),this.selectEmptyOption()):this.unknownOption.parentElement?this.updateUnknownOption(e):this.renderUnknownOption(e)}scheduleRender(){this.renderScheduled||(this.renderScheduled=!0,this.$scope.$postUpdate(()=>{this.renderScheduled=!1,this.ngModelCtrl.$render()}))}scheduleViewValueUpdate(e=!1){this.updateScheduled||(this.updateScheduled=!0,this.$scope.$postUpdate(()=>{this.$scope.$$destroyed||(this.updateScheduled=!1,this.ngModelCtrl.$setViewValue(this.readValue()),e&&this.ngModelCtrl.$render())}))}registerOption(e,t,n,r,s){let i,o;n.$attr.ngValue?n.$observe("value",e=>{let n;const r=t.selected;C(o)&&(this.removeOption(i),delete this.selectValueMap[o],n=!0),o=be(e),i=e,this.selectValueMap[o]=e,this.addOption(e,t),t.setAttribute("value",o),n&&r&&this.scheduleViewValueUpdate()}):r?n.$observe("value",e=>{let n;this.readValue();const r=t.selected;C(i)&&(this.removeOption(i),n=!0),i=e,this.addOption(e,t),n&&r&&this.scheduleViewValueUpdate()}):s?(e.value=s(e),n.value||(n.$set("value",e.value),this.addOption(e.value,t)),e.$watch("value",()=>{const r=s(e);n.value||n.$set("value",r);const o=t.selected;i!==r&&(this.removeOption(i),i=r),this.addOption(r,t),i&&o&&this.scheduleViewValueUpdate()})):this.addOption(n.value,t),n.$observe("disabled",e=>{("true"===e||e&&t.selected)&&(this.multiple?this.scheduleViewValueUpdate(!0):(this.ngModelCtrl.$setViewValue(null),this.ngModelCtrl.$render()))}),t.addEventListener("$destroy",()=>{const e=this.readValue(),t=n.value;this.removeOption(t),this.scheduleRender(),(this.multiple&&e&&-1!==e.indexOf(t)||e===t)&&this.scheduleViewValueUpdate(!0)})}}function ws(){return{restrict:"E",require:["select","?ngModel"],controller:ys,priority:1,link:{pre:function(e,t,n,r){const s=r[0],i=r[1];if(!i)return void(s.registerOption=()=>{});if(s.ngModelCtrl=i,t.addEventListener("change",()=>{s.removeUnknownOption();const e=s.readValue();i.$setViewValue(e)}),n.multiple){let e;s.multiple=!0,s.readValue=function(){const e=[],n=t.getElementsByTagName("option");return Array.from(n).forEach(t=>{if(t.selected&&!t.disabled){const n=t.value;e.push(n in s.selectValueMap?s.selectValueMap[n]:n)}}),e},s.writeValue=function(e){const n=t.getElementsByTagName("option");Array.from(n).forEach(t=>{const n=!!e&&(W(e,t.value)||W(e,s.selectValueMap[t.value]));n!==t.selected&&(t.selected=n)})};let n=NaN;n!==i.$viewValue||G(e,i.$viewValue)||(e=ue(i.$viewValue),i.$render()),n=i.$viewValue,i.$isEmpty=function(e){return!e||0===e.length}}},post:function(e,t,n,r){const s=r[1];if(!s)return;const i=r[0];s.$render=function(){i.writeValue(s.$viewValue)}}}}}function bs(e){return{restrict:"E",priority:100,compile(t,n){let r,s;return C(n.ngValue)||(C(n.value)?r=e(n.value,!0):(s=e(t.textContent,!0),s||n.$set("value",t.textContent))),function(e,t,n){const i="$selectController",o=t.parentElement,a=It(o,i)||It(o.parentElement,i);a&&a.registerOption(e,t,n,r,s)}}}}function Es(){return{link(e,t,n){e.$watch(n.ngBind,e=>{t.textContent=Z(m(e)?e.$target:e)},C(n.lazy))}}}function Cs(){return{link(e,t,n){n.$observe("ngBindTemplate",e=>{t.textContent=E(e)?"":e})}}}function xs(e){return{restrict:"A",compile:(t,n)=>(e(n.ngBindHtml),(e,t)=>{e.$watch(n.ngBindHtml,e=>{(E(e)||O(e))&&(e=""),t.innerHTML=e})})}}function Ss(e,t){return e=`ngClass${e}`,function(){return{link(n,r,s){let i,o=It(r,"$classCounts"),a=!0;function c(e,t){const n=[];return e&&e.forEach(e=>{(t>0||o[e])&&(o[e]=(o[e]||0)+t,o[e]===+(t>0)&&n.push(e))}),n.join(" ")}o||(o=Object.create(null),Ut(r,"$classCounts",o)),"ngClass"!==e&&n.$watch("$index",()=>{!function(e){e===t?(o=c(As(o=i),1),Se(r)?s.$addClass(o):n.$postUpdate(()=>{""!==o&&r.classList.add(...o.trim().split(" "))})):function(e){e=c(As(e),-1),Se(r)?s.$removeClass(e):n.$postUpdate(()=>{""!==e&&r.classList.remove(...e.trim().split(" "))})}(i);var o;a=e}(1&n.$index)}),n.$watch(s[e],e=>{!function(e){a===t&&function(e,t){const n=As(e),i=As(t),o=Os(n,i),a=Os(i,n),l=c(o,-1),u=c(a,1);Se(r)?(s.$addClass(u),s.$removeClass(l)):(""!==u&&r.classList.add(...u.trim().split(" ")),""!==l&&r.classList.remove(...l.trim().split(" ")))}(i,e);i=e}(ks(e))})}}}}function Os(e,t){if(!e||!e.length)return[];if(!t||!t.length)return e;const n=[];e:for(let r=0;r<e.length;r++){const s=e[r];for(let e=0;e<t.length;e++)if(s===t[e])continue e;n.push(s)}return n}function As(e){return e&&e.split(" ")}function ks(e){if(!e)return e;let t=e;return Array.isArray(e)?t=e.map(ks).join(" "):x(e)?t=Object.keys(e).filter(t=>e[t]).join(" "):S(e)||(t=`${e}`),t}bs.$inject=["$interpolate"],xs.$inject=[sn.$parse];const Ts=Ss("",!0),_s=Ss("Odd",0),Ns=Ss("Even",1);function js(){return{compile(e,t){t.$set("ngCloak",void 0)}}}function Rs(){return{restrict:"A",scope:!0,controller:"@",priority:500}}const Ls="ng-hide",Vs="ng-hide-animate";function Ms(e){return{restrict:"A",link(t,n,r){t.$watch(r.ngShow,t=>{Se(n)?e[t?"removeClass":"addClass"](n,Ls,{tempClasses:Vs}):t?n.classList.remove(Ls):n.classList.add(Ls)})}}}function Ps(e){return{restrict:"A",link(t,n,r){t.$watch(r.ngHide,t=>{Se(n)?e[t?"addClass":"removeClass"](n,Ls,{tempClasses:Vs}):t?n.classList.add(Ls):n.classList.remove(Ls)})}}}function Ds(e){return{transclude:"element",priority:600,terminal:!0,restrict:"A",link(t,n,r,s,i){let o,a,c;t.$watch(r.ngIf,t=>{t?a||i((t,r)=>{a=r,o=t,Se(t)?e.enter(t,n.parentElement,n):n.after(t)}):(c&&(Wt(c),c=null),a&&(a.$destroy(),a=null),o&&(c=o,Se(c)?e.leave(c).done(e=>{!1!==e&&(c=null)}):n.nextElementSibling.remove(),o=null))})}}}function Us(e,t,n,r){return{priority:400,terminal:!0,transclude:"element",controller:()=>{},compile(s,i){const o=i.ngInclude||i.src,a=i.onload||"",c=i.autoscroll;return(s,i,l,u,h)=>{function d(){!C(c)||c&&!s.$eval(c)||t()}let p,f,$,m=0;const g=()=>{f&&(f.remove(),f=null),p&&(p.$destroy(),p=null),$&&(Se($)?n.leave($).done(e=>{!1!==e&&(f=null)}):$.remove(),f=$,$=null)};s.$watch(o,async t=>{const o=function(e){!1!==e&&d()},c=++m;t?(await e(t,!0).then(e=>{if(s.$$destroyed)return;if(c!==m)return;const r=s.$new();u.template=e;const l=h(r,e=>{g(),Se(e)?n.enter(e,null,i).done(o):(i.after(e),d())});p=r,$=l,p.$emit("$includeContentLoaded",t),s.$eval(a)},e=>{s.$$destroyed||(c===m&&(g(),s.$emit("$includeContentError",t)),r(new Error(e)))}),s.$emit("$includeContentRequested",t)):(g(),u.template=null)})}}}}function Is(e){return{priority:-400,require:"ngInclude",link(t,n,r,s){n.innerHTML=s.template,e(n.childNodes)(t)}}}function Hs(){return{priority:450,compile:()=>({pre(e,t,n){const r=Bt(t);r?r.$eval(n.ngInit):e.$eval(n.ngInit)}})}}function Fs(){return{terminal:!0,priority:1e3}}Ms.$inject=["$animate"],Ps.$inject=["$animate"],Ds.$inject=["$animate"],Us.$inject=[sn.$templateRequest,sn.$anchorScroll,sn.$animate,sn.$exceptionHandler],Is.$inject=[sn.$compile];const qs=we("ngRef");function Bs(e){return{priority:-1,restrict:"A",compile(t,n){const r=xe(z(t)),s=e(n.ngRef),i=s.assign||function(){throw qs("nonassign",'Expression in ngRef="{0}" is non-assignable!',n.ngRef)};return(e,t,o)=>{let a;if(Ae(o,"ngRefRead")){if("$element"===o.ngRefRead)a=t;else if(a=It(t,`$${o.ngRefRead}Controller`),!a)throw qs("noctrl",'The controller for ngRefRead="{0}" could not be found on ngRef="{1}"',o.ngRefRead,n.ngRef)}else a=It(t,`$${r}Controller`);a=a||t,i(e,a),t.addEventListener("$destroy",()=>{s(e)===a&&i(e,null)})}}}}Bs.$inject=["$parse"];const zs="$$NG_REMOVED",Ws=we("ngRepeat"),Ks=/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/;function Qs(e){function t(e,t,n,r,s,i,o){e[n]!==r&&(e[n]=r),s&&(e[s]=i),r&&(e.$target.$$hashKey=r.$$hashKey),e.$index=t,e.$first=0===t,e.$last=t===o-1,e.$middle=!(e.$first||e.$last),e.$odd=!(e.$even=!(1&t))}function n(e){return e.clone}function r(e){return e.clone}function s(e,t,n){return be(n)}function i(e,t){return t}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 Ws("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(Ks),!u)throw Ws("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 Ws("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",p);const m=function(e){let t=!1;return(...n)=>{if(!t)return t=!0,e(...n)}}(()=>{C(a.lazy)&&C(a.swap)&&document.querySelectorAll(a.swap).forEach(e=>Wt(e))});return function(o,a,u,h,g){let v=Object.create(null);o.$watch(d,u=>{m();let h,d,y=a;const w=Object.create(null);let E,C,x,S,O,A,k;if(p&&(o[p]=u),b(u))O=u,S=s;else{S=i,O=[];for(const e in u)Ae(u,e)&&"$"!==e.charAt(0)&&O.push(e)}const T=O.length,_=new Array(T);for(h=0;h<T;h++)if(E=u===O?h:O[h],C=u[E],x=S(o,E,C),v[x])A=v[x],delete v[x],w[x]=A,_[h]=A;else{if(w[x])throw Object.values(_).forEach(e=>{e&&e.scope&&(v[e.id]=A)}),Ws("dupes","Duplicates keys in a repeater are not allowed. Repeater: {0}, Duplicate key: {1} for value: {2}",c,x,C);_[h]={id:x,scope:void 0,clone:void 0},w[x]=!0}for(const t in v){if(A=v[t],k=A.clone,l?e.leave(k):k.remove(),k.parentNode)for(let e=0,t=k.length;e<t;e++)k[e][zs]=!0;A.scope.$destroy()}for(h=0;h<T;h++)if(E=u===O?h:O[h],C=u[E],A=_[h],A.scope){d=y;do{d=d.nextSibling}while(d&&d[zs]);n(A)!==d&&e.move(Qt(A.clone),null,y),y=r(A),t(A.scope,h,f,C,$,E,T)}else g((n,r)=>{A.scope=r;const s=n;l?e.enter(n,null,y):y.after(n),y=s,A.clone=n,w[A.id]=A,t(A.scope,h,f,C,$,E,T)});v=w},C(u.lazy))}}}}function Gs(){return{restrict:"A",link(e,t,n){let r=null;e.$watch(n.ngStyle,e=>{const n=e?.$target||e;if(r)for(const e in r)t.style.removeProperty(e);if(n){r={};for(const e in n){const s=n[e];t.style.setProperty(e,s),r[e]=s}}else r=null})}}}function Js(e){return{require:"ngSwitch",controller:["$scope",class{constructor(){this.cases={}}}],link(t,n,r,s){const i=r.ngSwitch||r.on;let o=[];const a=[],c=[],l=[],u=function(e,t){return function(n){!1!==n&&e.splice(t,1)}};t.$watch(i,t=>{let n,r;for(;c.length;)e.cancel(c.pop());for(n=0,r=l.length;n<r;++n){const t=Qt(a[n].clone);if(l[n].$destroy(),Se(t)){(c[n]=e.leave(t)).done(u(c,n))}else t.remove()}a.length=0,l.length=0,(o=s.cases[`!${t}`]||s.cases["?"])&&Object.values(o).forEach(t=>{t.transclude((n,r)=>{l.push(r);const s=t.element,i={clone:n,comment:document.createComment("")};a.push(i),Se(n)?e.enter(n,s.parentElement,s):tn(n,s.parentElement,s)})})})}}}function Zs(){return{transclude:"element",terminal:!0,priority:1200,require:"^ngSwitch",link(e,t,n,r,s){n.ngSwitchWhen.split(n.ngSwitchWhenSeparator).sort().filter((e,t,n)=>n[t-1]!==e).forEach(e=>{r.cases[`!${e}`]=r.cases[`!${e}`]||[],r.cases[`!${e}`].push({transclude:s,element:t})})}}}function Xs(){return{transclude:"element",terminal:!0,priority:1200,require:"^ngSwitch",link(e,t,n,r,s){r.cases["?"]=r.cases["?"]||[],r.cases["?"].push({transclude:s,element:t})}}}Qs.$inject=[sn.$animate],Js.$inject=["$animate"];const Ys=we("ngOptions"),ei=document.createElement("option"),ti=document.createElement("optgroup"),ni=/^\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]+?))?$/;function ri(e,t){return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(e,t,n,r){r[0].registerOption=()=>{}},post:function(n,r,s,i){const o=i[0],a=i[1],{multiple:c}=s;for(let e=0,t=r.childNodes,n=t.length;e<n;e++)if(""===t[e].value){o.hasEmptyOption=!0,o.emptyOption=t[e];break}en(r);const l=!!o.emptyOption;let u;ei.cloneNode(!1).nodeValue="?";const h=function(e,n,r){const s=e.match(ni);if(!s)throw Ys("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",e,Kt(n));const i=s[5]||s[7],o=s[6],a=/ as /.test(s[0])&&s[1],c=s[9],l=t(s[2]?s[1]:i),u=a&&t(a)||l,h=c&&t(c),d=c?function(e,t){return h(r,t)}:function(e){return be(e)},p=function(e,t){return d(e,y(e,t))},f=t(s[2]||s[1]),$=t(s[3]||""),m=t(s[4]||""),g=t(s[8]),v={},y=o?function(e,t){return v[o]=t,v[i]=e,v}:function(e){return v[i]=e,v};class w{constructor(e,t,n,r,s){this.selectValue=e,this.viewValue=t,this.label=n,this.group=r,this.disabled=s}}function E(e){let t;if(!o&&b(e))t=e;else{t=[];for(const n in e)Ae(e,n)&&"$"!==n.charAt(0)&&t.push(n)}return t}return{trackBy:c,getTrackByValue:p,getWatchables:t(g,e=>{const t=[],n=E(e=e||[]),i=n.length;for(let o=0;o<i;o++){const i=e===n?o:n[o],a=e[i],c=y(a,i),l=d(a,c);if(t.push(l),s[2]||s[1]){const e=f(r,c);t.push(e)}if(s[4]){const e=m(r,c);t.push(e)}}return t}),getOptions(){const e=[],t={},n=g(r)||[],s=E(n),i=s.length;for(let o=0;o<i;o++){const i=n===s?o:s[o],a=n[i],c=y(a,i),l=u(r,c),h=d(l,c),p=f(r,c),g=$(r,c),v=m(r,c),b=new w(h,l,p,g,v);e.push(b),t[h]=b}return{items:e,selectValueMap:t,getOptionFromViewValue:e=>t[p(e)],getViewValueFromOption:e=>c?structuredClone(e.viewValue):e.viewValue}}}}(s.ngOptions,r,n),d=document.createDocumentFragment();if(o.generateUnknownOptionValue=()=>"?",c?(o.writeValue=function(e){if(!u)return;const t=e&&e.map(f)||[];u.items.forEach(e=>{e.element.selected&&!W(t,e)&&(e.element.selected=!1)})},o.readValue=function(){const e=r.value||[],t=[];return e.forEach(e=>{const n=u.selectValueMap[e];n&&!n.disabled&&t.push(u.getViewValueFromOption(n))}),t}):(o.writeValue=function(e){if(!u)return;const t=r.options[r.selectedIndex],n=u.getOptionFromViewValue(e);t&&t.removeAttribute("selected"),n?(r.value!==n.selectValue&&(o.removeUnknownOption(),r.value=n.selectValue,n.element.selected=!0),n.element.setAttribute("selected","selected")):o.selectUnknownOrEmptyOption(e)},o.readValue=function(){const e=u.selectValueMap[r.value];return e&&!e.disabled?(o.unselectEmptyOption(),o.removeUnknownOption(),u.getViewValueFromOption(e)):null},h.trackBy&&n.$watch(h.getTrackByValue(a.$viewValue),()=>{a.$render()})),l){const t=e(o.emptyOption);fe(t,"linkFn"),r.prepend(o.emptyOption),t(n),o.emptyOption.nodeType===Node.COMMENT_NODE&&(o.hasEmptyOption=!1,o.registerOption=function(e,t){""===t.value&&(o.hasEmptyOption=!0,o.emptyOption=t,a.$render(),t.addEventListener("$destroy",()=>{const e=o.$isEmptyOptionSelected();o.hasEmptyOption=!1,o.emptyOption=void 0,e&&a.$render()}))})}function p(e,t){const n=ei.cloneNode(!1);t.appendChild(n),function(e,t){e.element=t,t.disabled=e.disabled,e.label!==t.label&&(t.label=e.label,t.textContent=e.label);t.value=e.selectValue}(e,n)}function f(e){const t=u.getOptionFromViewValue(e),n=t&&t.element;return n&&!n.selected&&(n.selected=!0),t}n.$watch(h.getWatchables.decoratedNode.body[0].expression.name,function(){const e=u&&o.readValue();if(u)for(let e=u.items.length-1;e>=0;e--){const t=u.items[e];C(t.group)?Wt(t.element.parentNode):Wt(t.element)}u=h.getOptions();const t={};if(u.items.forEach(e=>{let n;C(e.group)?(n=t[e.group],n||(n=ti.cloneNode(!1),d.appendChild(n),n.label=null===e.group?"null":e.group,t[e.group]=n),p(e,n)):p(e,d)}),r.appendChild(d),a.$render(),!a.$isEmpty(e)){const t=o.readValue();(h.trackBy||c?G(e,t):e===t)||(a.$setViewValue(t),a.$render())}})}}}}ri.$inject=["$compile","$parse"];const si=we("ngTransclude");function ii(e){return{compile:function(t){const n=e(t.childNodes);return en(t),function(e,t,r,s,i){if(!i)throw si("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",Kt(t));r.ngTransclude===r.$attr.ngTransclude&&(r.ngTransclude="");const o=r.ngTransclude||r.ngTranscludeSlot;function a(){n(e,e=>{t.append(e)})}i(function(e,n){!function(e){if(e instanceof Array)return!1;if(e.nodeType!==Node.TEXT_NODE||e.nodeValue.trim())return!0;return!1}(e)?(a(),n.$destroy()):e instanceof NodeList?Array.from(e).forEach(e=>{t.append(e)}):t.append(e)},null,o),o&&!i.isSlotFilled(o)&&a()}}}}ii.$inject=["$compile"];const oi=/^\/(.+)\/([a-z]*)$/,ai={};kt.forEach(e=>{if("multiple"===e)return;function t(t,r,s){t.$watch(s[n],t=>{s.$set(e,!!t)})}const n=xe(`ng-${e}`);let r=t;"checked"===e&&(r=function(e,r,s){s.ngModel!==s[n]&&t(e,0,s)}),ai[n]=function(){return{restrict:"A",priority:100,link:r}}}),Object.entries(h).forEach(([e])=>{ai[e]=function(){return{priority:100,link(t,n,r){if("ngPattern"===e&&"/"===r.ngPattern.charAt(0)){const e=r.ngPattern.match(oi);if(e)return void r.$set("ngPattern",new RegExp(e[1],e[2]).toString())}t.$watch(r[e],t=>{r.$set(e,t)})}}}}),["src","srcset","href"].forEach(e=>{const t=xe(`ng-${e}`);ai[t]=[sn.$sce,function(n){return{priority:99,link(r,s,i){let o=e;"href"===e&&"[object SVGAnimatedString]"===toString.call(s.href)&&(o="xlinkHref",i.$attr[o]="href"),i.$set(t,n.getTrustedMediaUrl(i[t])),i.$observe(t,t=>{t?i.$set(o,t):"href"===e&&i.$set(o,null)})}}}]});const ci=[sn.$parse,e=>({restrict:"A",require:"?ngModel",link:(t,n,r,s)=>{if(!s)return;let i=Ae(r,"required")||e(r.ngRequired)(t);r.ngRequired||(r.required=!0),s.$validators.required=(e,t)=>!i||!s.$isEmpty(t),r.$observe("required",e=>{i!==e&&(i=e,s.$validate())})}})],li=[sn.$parse,e=>({restrict:"A",require:"?ngModel",compile:(t,n)=>{let r,s;return n.ngPattern&&(r=n.ngPattern,s="/"===n.ngPattern.charAt(0)&&oi.test(n.ngPattern)?function(){return n.ngPattern}:e(n.ngPattern)),function(e,t,n,i){if(!i)return;let o=n.pattern;n.ngPattern?o=s(e):r=n.pattern;let a=di(o,r,t);n.$observe("pattern",e=>{const n=a;a=di(e,r,t),(n&&n.toString())!==(a&&a.toString())&&i.$validate()}),i.$validators.pattern=(e,t)=>i.$isEmpty(t)||E(a)||a.test(t)}}})],ui=[sn.$parse,e=>({restrict:"A",require:"?ngModel",link:(t,n,r,s)=>{if(!s)return;let i=r.maxlength||e(r.ngMaxlength)(t),o=pi(i);r.$observe("maxlength",e=>{i!==e&&(o=pi(e),i=e,s.$validate())}),s.$validators.maxlength=function(e,t){return o<0||s.$isEmpty(t)||t.length<=o}}})],hi=[sn.$parse,e=>({restrict:"A",require:"?ngModel",link(t,n,r,s){if(!s)return;let i=r.minlength||e(r.ngMinlength)(t),o=pi(i)||-1;r.$observe("minlength",e=>{i!==e&&(o=pi(e)||-1,i=e,s.$validate())}),s.$validators.minlength=function(e,t){return s.$isEmpty(t)||t.length>=o}}})];function di(e,t,n){if(e){if(m(e)&&(e=e.$target),S(e)){const t=e.match(/^\/(.*)\/([gimsuy]*)$/);e=t?new RegExp(t[1],t[2]):new RegExp(`^${e}$`)}if(!e.test)throw we("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",t,e,Kt(n));return e}}function pi(e){const t=parseInt(e,10);return F(t)?-1:t}class fi{constructor(){this.autoScrollingEnabled=!0}$get=[sn.$location,sn.$rootScope,(e,t)=>{function n(e){if(e){e.scrollIntoView();const t=function(){let e=r.yOffset;if(j(e))e=e();else if(e instanceof Element){const t=e[0];e="fixed"!==window.getComputedStyle(t).position?0:t.getBoundingClientRect().bottom}else T(e)||(e=0);return e}();if(t){const n=e.getBoundingClientRect().top;window.scrollBy(0,n-t)}}else window.scrollTo(0,0)}const r=function(t){let r;(t=S(t)?t:T(t)?t.toString():e.getHash())?(r=document.getElementById(t))||(r=function(e){let t=null;return Array.prototype.some.call(e,e=>"a"===z(e)&&(t=e,!0)),t}(document.getElementsByName(t)))?n(r):"top"===t&&n(null):n(null)};return this.autoScrollingEnabled&&(t.$location=e,t.$watch("$location.$$hash",(e,t)=>{if(e===t&&""===e)return;const n=()=>r(e);"complete"===document.readyState?queueMicrotask(()=>n()):window.addEventListener("load",()=>n())})),r}]}const $i=we("$animate");function mi(e){return x(e)?e:{}}function gi(e){const t=this;let n=null,r=null;this.$$registeredAnimations=Object.create(null),this.register=function(n,r){if(n&&"."!==n.charAt(0))throw $i("notcsel","Expecting class selector starting with '.' got '{0}'.",n);const s=`${n}-animation`;t.$$registeredAnimations[n.substring(1)]=s,e.factory(s,r)},this.customFilter=function(e){return 1===arguments.length&&(r=j(e)?e:null),r},this.classNameFilter=function(e){if(1===arguments.length&&(n=e instanceof RegExp?e:null,n)){if(new RegExp(`[(\\s|\\/)]${Ye}[(\\s|\\/)]`).test(n.toString()))throw n=null,$i("nongcls",'$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.',Ye)}return n},this.$get=[sn.$$animateQueue,function(e){return{on:e.on,off:e.off,pin:e.pin,enabled:(e,t)=>void 0!==t?Se(e):(e.setAttribute("animate",`${t}`),!0),cancel(e){e.cancel&&e.cancel()},enter:(t,n,r,s)=>(nn(t,n=n||r.parentElement,r),e.push(t,"enter",mi(s))),move:(t,n,r,s)=>(nn(t,n=n||r.parentElement,r),e.push(t,"move",mi(s))),leave:(t,n)=>e.push(t,"leave",mi(n),()=>{Array.isArray(t)?t.forEach(e=>Wt(e)):Wt(t)}),addClass:(t,n,r)=>((r=mi(r)).addClass=Ee(r.addClass,n),e.push(t,"addClass",r)),removeClass:(t,n,r)=>((r=mi(r)).removeClass=Ee(r.removeClass,n),e.push(t,"removeClass",r)),setClass:(t,n,r,s)=>((s=mi(s)).addClass=Ee(s.addClass,n),s.removeClass=Ee(s.removeClass,r),e.push(t,"setClass",s)),animate:(t,n,r,s,i)=>((i=mi(i)).from=i.from?H(i.from,n):n,i.to=i.to?H(i.to,r):r,s=s||"ng-inline-animate",i.tempClasses=Ee(i.tempClasses,s),e.push(t,"animate",i))}}]}gi.$inject=["$provide"];class vi{constructor(){this.cache=new Map}$get(){return this.cache}}class yi{constructor(){this.handler=e=>{throw e}}$get(){return e=>this.handler(e)}}function wi(){return function(e,t,n,r){if(!b(e)){if(A(e))return e;throw we("filter")("notarray","Expected array but received: {0}",e)}let s;r=r||"$";let i=!1;switch(Ei(t)){case"function":s=t;break;case"boolean":case"null":case"number":case"string":i=!0;case"object":s=function(e,t,n,r){const s=x(e)&&n in e;!0===t?t=G:j(t)||(t=function(e,t){return!E(e)&&(null===e||null===t?e===t:!(x(t)||x(e)&&!B(e))&&(e=`${e}`.toLowerCase(),t=`${t}`.toLowerCase(),-1!==e.indexOf(t)))});const i=function(i){return s&&!x(i)?bi(i,e[n],t,n,!1):bi(i,e,t,n,r)};return i}(t,n,r,i);break;default:return e}return Array.prototype.filter.call(e,s)}}function bi(e,t,n,r,s,i){const o=Ei(e),a=Ei(t);if("string"===a&&"!"===t.charAt(0))return!bi(e,t.substring(1),n,r,s);if(Array.isArray(e))return e.some(e=>bi(e,t,n,r,s));switch(o){case"object":if(s){for(const s in e)if(s.charAt&&"$"!==s.charAt(0)&&bi(e[s],t,n,r,!0))return!0;return!i&&bi(e,t,n,r,!1)}if("object"===a){for(const s in t){const i=t[s];if(j(i)||E(i))continue;const o=s===r;if(!bi(o?e:e[s],i,n,r,o,o))return!1}return!0}return n(e,t);case"function":return!1;default:return n(e,t)}}function Ei(e){return null===e?"null":typeof e}function Ci(){return function(e,t){return E(t)&&(t=2),ne(e,t)}}function xi(){return function(e,t,n){return j(e)&&(e=e()),F(t=Math.abs(Number(t))===1/0?Number(t):parseInt(t,10))?e:(T(e)&&(e=e.toString()),b(e)?(n=(n=!n||isNaN(n)?0:parseInt(n,10))<0?Math.max(0,e.length+n):n,t>=0?Si(e,n,n+t):0===n?Si(e,t,e.length):Si(e,Math.max(0,n+t),n)):e)}}function Si(e,t,n){return S(e)?e.slice(t,n):[].slice.call(e,t,n)}function Oi(e){return function(r,s,i,o){if(A(r))return r;if(j(r))return r();if(!b(r))throw we("orderBy")("notarray","Expected array but received: {0}",r);Array.isArray(s)||(s=[s]),0===s.length&&(s=["+"]);const a=s.map(t=>{let n=1,r=e=>e;if(j(t))r=t;else if(S(t)&&("+"!==t.charAt(0)&&"-"!==t.charAt(0)||(n="-"===t.charAt(0)?-1:1,t=t.substring(1)),""!==t)){const n=e(t);if(n.constant){const e=n();r=t=>t[e]}else r=n}return{get:r,descending:n}});const c=i?-1:1,l=j(o)?o:n,u=Array.prototype.map.call(r,function(e,n){return{value:e,tieBreaker:{value:n,type:"number",index:n},predicateValues:a.map(r=>function(e,n){let r=typeof e;null===e?r="null":"object"===r&&(e=function(e){if(j(e.valueOf)&&t(e=e.valueOf()))return e;if(B(e)&&t(e=e.toString()))return e;return e}(e));return{value:e,type:r,index:n}}(r.get(e),n))}});return u.sort(function(e,t){for(let n=0,r=a.length;n<r;n++){const r=l(e.predicateValues[n],t.predicateValues[n]);if(r)return r*a[n].descending*c}return(l(e.tieBreaker,t.tieBreaker)||n(e.tieBreaker,t.tieBreaker))*c}),r=u.map(e=>e.value)};function t(e){switch(typeof e){case"number":case"boolean":case"string":return!0;default:return!1}}function n(e,t){let n=0;const r=e.type,s=t.type;if(r===s){let s=e.value,i=t.value;"string"===r?(s=s.toLowerCase(),i=i.toLowerCase()):"object"===r&&(x(s)&&(s=e.index),x(i)&&(i=t.index)),s!==i&&(n=s<i?-1:1)}else n="undefined"===r?1:"undefined"===s?-1:"null"===r?1:"null"===s||r<s?-1:1;return n}}function Ai(e){const t=(t,n,r)=>e.is(t,n,r);return t.$stateful=!0,t}function ki(e){const t=function(t,n,r){return e.includes(t,n,r)};return t.$stateful=!0,t}Oi.$inject=[sn.$parse],Ai.$inject=[sn.$state],ki.$inject=[sn.$state];const Ti="Filter";class _i{static $inject=[sn.$provide];constructor(e){he(C(e)),this.$provide=e,Object.entries({filter:wi,json:Ci,limitTo:xi,orderBy:Oi,isState:Ai,includedByState:ki}).forEach(([e,t])=>this.register(e,t))}register(e,t){return he(S(e),`${$}:name ${e}`),he(j(t),`${$}:factory ${t}`),this.$provide.factory(e+Ti,t),this}$get=[sn.$injector,e=>t=>(he(S(t),`${$}:name ${t}`),e.get(t+Ti))]}class Ni{constructor(e){this.$filter=e}compile(e){const t=ji(e,this.$filter);let n,r;(n=function(e){if(1===e.body.length&&Ri(e.body[0].expression))return{type:Ve,left:e.body[0].expression,right:{type:Ge},operator:"="};return}(t))&&(r=this.recurse(n));const s=function(e){if(1!==e.length)return;const t=e[0].expression,n=t.toWatch;return 1!==n.length||n[0]!==t?n:void 0}(t.body);let i;if(s){i=[];for(const[e,t]of Object.entries(s)){const n=this.recurse(t);n.isPure=t.isPure,t.input=n,i.push(n),t.watchId=e}}const o=[];t.body.forEach(e=>{o.push(this.recurse(e.expression))});const a=0===t.body.length?()=>{}:1===t.body.length?o[0]:function(e,t){let n;return o.forEach(r=>{n=r(e,t)}),n};return r&&(a.assign=(e,t,n)=>r(e,n,t)),i&&(a.inputs=i),a.decoratedNode=t,a}recurse(e,t,n){let r,s;const i=this;let o;switch(e.type){case qe:return this.value(e.value,t);case Ue:return s=this.recurse(e.argument),this[`unary${e.operator}`](s,t);case De:case Pe:return r=this.recurse(e.left),s=this.recurse(e.right),this[`binary${e.operator}`](r,s,t);case Me:return this["ternary?:"](this.recurse(e.test),this.recurse(e.alternate),this.recurse(e.consequent),t);case Fe:return i.identifier(e.name,t,n);case He:return r=this.recurse(e.object,!1,!!n),e.computed||(s=e.property.name),e.computed&&(s=this.recurse(e.property)),e.computed?this.computedMember(r,s,t,n):this.nonComputedMember(r,s,t,n);case Ie:return o=[],e.arguments.forEach(e=>{o.push(i.recurse(e))}),e.filter&&(s=this.$filter(e.callee.name)),e.filter||(s=this.recurse(e.callee,!0)),e.filter?(e,n,r)=>{const i=[];for(let t=0;t<o.length;++t){const s=o[t](e&&e.$target?e.$target:e,n,r);i.push(s)}const a=()=>s.apply(void 0,i);return t?{context:void 0,name:void 0,value:a}:a}:(e,n,r)=>{const i=s(e.$target?e.$target:e,n,r);let a;if(!A(i.value)&&j(i.value)){const t=[];for(let s=0;s<o.length;++s){const i=o[s](e,n,r);t.push(j(i)?i():i)}a=i.value.apply(i.context,t)}return t?{value:a}:a};case Ve:return r=this.recurse(e.left,!0,1),s=this.recurse(e.right),(e,n,i)=>{const o=r(e,n,i),a=s(e,n,i);return(m(o.context)?o.context:o.context.$proxy??o.context)[o.name]=a,t?{value:a}:a};case Be:return o=[],e.elements.forEach(e=>{o.push(i.recurse(e))}),(e,n,r)=>{const s=[];for(let t=0;t<o.length;++t)s.push(o[t](e,n,r));return t?{value:s}:s};case We:return o=[],e.properties.forEach(e=>{e.computed?o.push({key:i.recurse(e.key),computed:!0,value:i.recurse(e.value)}):o.push({key:e.key.type===Fe?e.key.name:`${e.key.value}`,computed:!1,value:i.recurse(e.value)})}),(e,n,r)=>{const s={};for(let t=0;t<o.length;++t)o[t].computed?s[o[t].key(e,n,r)]=o[t].value(e,n,r):s[o[t].key]=o[t].value(e,n,r);return t?{value:s}:s};case Ke:return e=>t?{value:e}:e.$proxy;case Qe:return(e,n)=>t?{value:n}:n;case Ge:return(e,n,r)=>t?{value:r}:r}}"unary+"(e,t){return(n,r,s)=>{let i=e(n,r,s);return i=C(i)?+i:0,t?{value:i}:i}}"unary-"(e,t){return(n,r,s)=>{let i=e(n,r,s);return i=C(i)?-i:-0,t?{value:i}:i}}"unary!"(e,t){return(n,r,s)=>{const i=!e(n,r,s);return t?{value:i}:i}}"binary+"(e,t,n){return(r,s,i)=>{const o=function(e,t){return void 0===e||x(e)?t:void 0===t||x(t)?e:e+t}(e(r,s,i),t(r,s,i));return n?{value:o}:o}}"binary-"(e,t,n){return(r,s,i)=>{const o=e(r,s,i),a=t(r,s,i),c=(C(o)?o:0)-(C(a)?a:0);return n?{value:c}:c}}"binary*"(e,t,n){return(r,s,i)=>{const o=e(r,s,i)*t(r,s,i);return n?{value:o}:o}}"binary/"(e,t,n){return(r,s,i)=>{const o=e(r,s,i)/t(r,s,i);return n?{value:o}:o}}"binary%"(e,t,n){return(r,s,i)=>{const o=e(r,s,i)%t(r,s,i);return n?{value:o}:o}}"binary==="(e,t,n){return(r,s,i)=>{const o=e(r,s,i)===t(r,s,i);return n?{value:o}:o}}"binary!=="(e,t,n){return(r,s,i)=>{const o=e(r,s,i)!==t(r,s,i);return n?{value:o}:o}}"binary=="(e,t,n){return(r,s,i)=>{const o=e(r,s,i)==t(r,s,i);return n?{value:o}:o}}"binary!="(e,t,n){return(r,s,i)=>{const o=e(r,s,i)!=t(r,s,i);return n?{value:o}:o}}"binary<"(e,t,n){return(r,s,i)=>{const o=e(r,s,i)<t(r,s,i);return n?{value:o}:o}}"binary>"(e,t,n){return(r,s,i)=>{const o=e(r,s,i)>t(r,s,i);return n?{value:o}:o}}"binary<="(e,t,n){return(r,s,i)=>{const o=e(r,s,i)<=t(r,s,i);return n?{value:o}:o}}"binary>="(e,t,n){return(r,s,i)=>{const o=e(r,s,i)>=t(r,s,i);return n?{value:o}:o}}"binary&&"(e,t,n){return(r,s,i)=>{const o=e(r,s,i)&&t(r,s,i);return n?{value:o}:o}}"binary||"(e,t,n){return(r,s,i)=>{const o=e(r,s,i)||t(r,s,i);return n?{value:o}:o}}"ternary?:"(e,t,n,r){return(s,i,o)=>{const a=e(s,i,o)?t(s,i,o):n(s,i,o);return r?{value:a}:a}}value(e,t){return()=>t?{context:void 0,name:void 0,value:e}:e}identifier(e,t,n){return(r,s)=>{const i=s&&e in s?s:(r&&r.$proxy)??r;let o;return n&&1!==n&&i&&A(i[e])&&(i[e]={}),i&&(o=i.$target?i.$target[e]:i[e]),t?{context:i,name:e,value:o}:o}}computedMember(e,t,n,r){return(s,i,o)=>{const a=e(s,i,o);let c,l;return A(a)||(c=t(s,i,o),c=function(e){return`${e}`}(c),r&&1!==r&&a&&!a[c]&&(a[c]={}),l=a[c]),n?{context:a,name:c,value:l}:l}}nonComputedMember(e,t,n,r){return(s,i,o)=>{const a=e(s,i,o);r&&1!==r&&a&&A(a[t])&&(a[t]={});const c=A(a)?void 0:a[t];return n?{context:a,name:t,value:c}:c}}}function ji(e,t,n){let r,s,i;const o=e;let a,c,l,u,h,d,p,f;const $=o.isPure=function(e,t){switch(e.type){case He:if(e.computed)return!1;break;case Ue:return 1;case De:return"+"!==e.operator&&1;case Ie:return!1}return void 0===t?2:t}(e,n);switch(e.type){case Re:return r=!0,o.body.forEach(e=>{const n=ji(e.expression,t,$);r=r&&n.constant}),o.constant=r,o;case qe:return o.constant=!0,o.toWatch=[],o;case Ue:var m=ji(o.argument,t,$);return o.constant=m.constant,o.toWatch=m.toWatch,o;case De:return a=ji(o.left,t,$),c=ji(o.right,t,$),o.constant=a.constant&&c.constant,o.toWatch=a.toWatch.concat(c.toWatch),o;case Pe:return a=ji(o.left,t,$),c=ji(o.right,t,$),o.constant=a.constant&&c.constant,o.toWatch=o.constant?[]:[e],o;case Me:return l=ji(e.test,t,$),u=ji(e.alternate,t,$),h=ji(e.consequent,t,$),o.constant=l.constant&&u.constant&&h.constant,o.toWatch=o.constant?[]:[e],o;case Fe:return o.constant=!1,o.toWatch=[e],o;case He:return d=ji(e.object,t,$),e.computed&&(p=ji(e.property,t,$)),o.constant=d.constant&&(!o.computed||p.constant),o.toWatch=o.constant?[]:[e],o;case Ie:return i=!!e.filter&&function(e,t){const n=e(t);return!n.$stateful}(t,e.callee.name),r=i,s=[],e.arguments.forEach(e=>{m=ji(e,t,$),r=r&&m.constant,s.push.apply(s,m.toWatch)}),o.constant=r,o.toWatch=i?s:[o],o;case Ve:return a=ji(e.left,t,$),c=ji(e.right,t,$),o.constant=a.constant&&c.constant,o.toWatch=[o],o;case Be:return r=!0,s=[],e.elements.forEach(e=>{m=ji(e,t,$),r=r&&m.constant,s.push.apply(s,m.toWatch)}),o.constant=r,o.toWatch=s,o;case We:return r=!0,s=[],e.properties.forEach(e=>{m=ji(e.value,t,$),r=r&&m.constant,s.push.apply(s,m.toWatch),e.computed&&(f=ji(e.key,t,!1),r=r&&f.constant,s.push.apply(s,f.toWatch))}),o.constant=r,o.toWatch=s,o;case Ke:case Qe:return o.constant=!1,o.toWatch=[],o}}function Ri(e){return e.type===Fe||e.type===He}const Li=we("$parse"),Vi={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},Mi=new Set("+ - * / % === !== == != < > <= >= && || ! = |".split(" "));class Pi{constructor(e){this.options=e}lex(e){for(this.text=e,this.index=0,this.tokens=[];this.index<this.text.length;){const e=this.text.charAt(this.index);if('"'===e||"'"===e)this.readString(e);else if(this.isNumber(e)||"."===e&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdentifierStart&&this.isIdentifierStart(this.peekMultichar()))this.readIdent();else if(this.is(e,"(){}[].,;:?"))this.tokens.push({index:this.index,text:e}),this.index++;else if(this.isWhitespace(e))this.index++;else{const t=e+this.peek(),n=t+this.peek(2),r=Mi.has(e),s=Mi.has(t),i=Mi.has(n);if(r||s||i){const r=i?n:s?t:e;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(e,t){return-1!==t.indexOf(e)}peek(e){const t=e||1;return this.index+t<this.text.length&&this.text.charAt(this.index+t)}isNumber(e){return e>="0"&&e<="9"&&"string"==typeof e}isWhitespace(e){return" "===e||"\r"===e||"\t"===e||"\n"===e||"\v"===e}isIdentifierStart(e){return this.options.isIdentifierStart?this.options.isIdentifierStart(e,this.codePointAt(e)):e>="a"&&e<="z"||e>="A"&&e<="Z"||"_"===e||"$"===e}isIdentifierContinue(e){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(e,this.codePointAt(e)):e>="a"&&e<="z"||e>="A"&&e<="Z"||"_"===e||"$"===e||e>="0"&&e<="9"}codePointAt(e){return 1===e.length?e.charCodeAt(0):(e.charCodeAt(0)<<10)+e.charCodeAt(1)-56613888}peekMultichar(){const e=this.text.charAt(this.index),t=this.peek();if(!t)return e;const n=e.charCodeAt(0),r=t.charCodeAt(0);return n>=55296&&n<=56319&&r>=56320&&r<=57343?e+t:e}isExpOperator(e){return"-"===e||"+"===e||this.isNumber(e)}throwError(e,t,n){n=n||this.index;const r=C(t)?`s ${t}-${this.index} [${this.text.substring(t,n)}]`:` ${n}`;throw Li("lexerr",`Lexer Error: ${e} at column${r} in expression [${this.text}].`)}readNumber(){let e="";const t=this.index;for(;this.index<this.text.length;){const t=this.text.charAt(this.index).toLowerCase();if("."===t||this.isNumber(t))e+=t;else{const n=this.peek();if("e"===t&&this.isExpOperator(n))e+=t;else if(this.isExpOperator(t)&&n&&this.isNumber(n)&&"e"===e.charAt(e.length-1))e+=t;else{if(!this.isExpOperator(t)||n&&this.isNumber(n)||"e"!==e.charAt(e.length-1))break;this.throwError("Invalid exponent")}}this.index++}this.tokens.push({index:t,text:e,constant:!0,value:Number(e)})}readIdent(){const e=this.index;for(this.index+=this.peekMultichar().length;this.index<this.text.length;){const e=this.peekMultichar();if(this.isIdentifierContinue&&!this.isIdentifierContinue(e))break;this.index+=e.length}this.tokens.push({index:e,text:this.text.slice(e,this.index),identifier:!0})}readString(e){const t=this.index;let n="",r=!1;for(this.index++;this.index<this.text.length;){const s=this.text[this.index];if(r)n+="u"===s?this.handleUnicodeEscape():Vi[s]||s,r=!1;else if("\\"===s)r=!0;else{if(s===e)return this.tokens.push({index:t,text:this.text.slice(t,this.index+1),constant:!0,value:n}),void this.index++;n+=s}this.index++}this.throwError("Unterminated quote",t)}handleUnicodeEscape(){const e=this.text.substring(this.index+1,this.index+5);return e.match(/[\da-f]{4}/i)||this.throwError(`Invalid unicode escape [\\u${e}]`),this.index+=4,String.fromCharCode(parseInt(e,16))}}const Di=we("$parse"),Ui=new Map([["true",!0],["false",!1],["null",null],["undefined",void 0]]);class Ii{constructor(e){this.lexer=e,this.selfReferential={this:{type:Ke},$locals:{type:Qe}}}ast(e){this.text=e,this.tokens=this.lexer.lex(e);const t=this.program();return 0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),t}program(){const e=[];let t=!0;for(;t;)this.tokens.length>0&&!this.peek("}",")",";","]")&&e.push(this.expressionStatement()),this.expect(";")||(t=!1);return{type:Re,body:e}}expressionStatement(){return{type:Le,expression:this.filterChain()}}filterChain(){let e=this.assignment();for(;this.expect("|");)e=this.filter(e);return e}assignment(){let e=this.ternary();if(this.expect("=")){if(!Ri(e))throw Di("lval","Trying to assign a value to a non l-value");e={type:Ve,left:e,right:this.assignment(),operator:"="}}return e}ternary(){const e=this.logicalOR();let t,n;return this.expect("?")&&(t=this.assignment(),this.consume(":"))?(n=this.assignment(),{type:Me,test:e,alternate:t,consequent:n}):e}logicalOR(){let e=this.logicalAND();for(;this.expect("||");)e={type:Pe,operator:"||",left:e,right:this.logicalAND()};return e}logicalAND(){let e=this.equality();for(;this.expect("&&");)e={type:Pe,operator:"&&",left:e,right:this.equality()};return e}equality(){let e,t=this.relational();for(;e=this.expect("==","!=","===","!==");)t={type:De,operator:e.text,left:t,right:this.relational()};return t}relational(){let e,t=this.additive();for(;e=this.expect("<",">","<=",">=");)t={type:De,operator:e.text,left:t,right:this.additive()};return t}additive(){let e,t=this.multiplicative();for(;e=this.expect("+","-");)t={type:De,operator:e.text,left:t,right:this.multiplicative()};return t}multiplicative(){let e,t=this.unary();for(;e=this.expect("*","/","%");)t={type:De,operator:e.text,left:t,right:this.unary()};return t}unary(){let e;return(e=this.expect("+","-","!"))?{type:Ue,operator:e.text,prefix:!0,argument:this.unary()}:this.primary()}primary(){let e,t;for(this.expect("(")?(e=this.filterChain(),this.consume(")")):this.expect("[")?e=this.arrayDeclaration():this.expect("{")?e=this.object():Ae(this.selfReferential,this.peek().text)?e=structuredClone(this.selfReferential[this.consume().text]):Ui.has(this.peek().text)?e={type:qe,value:Ui.get(this.consume().text)}:this.peek().identifier?e=this.identifier():this.peek().constant?e=this.constant():this.throwError("not a primary expression",this.peek());t=this.expect("(","[",".");)"("===t.text?(e={type:Ie,callee:e,arguments:this.parseArguments()},this.consume(")")):"["===t.text?(e={type:He,object:e,property:this.assignment(),computed:!0},this.consume("]")):"."===t.text?e={type:He,object:e,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return e}filter(e){const t=[e],n={type:Ie,callee:this.identifier(),arguments:t,filter:!0};for(;this.expect(":");)t.push(this.assignment());return n}parseArguments(){const e=[];if(")"!==this.peekToken().text)do{e.push(this.filterChain())}while(this.expect(","));return e}identifier(){const e=this.consume();return e.identifier||this.throwError("is not a valid identifier",e),{type:Fe,name:e.text}}constant(){return{type:qe,value:this.consume().value}}arrayDeclaration(){const e=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;e.push(this.assignment())}while(this.expect(","));return this.consume("]"),{type:Be,elements:e}}object(){const e=[];let t;if("}"!==this.peekToken().text)do{if(this.peek("}"))break;t={type:ze,kind:"init"},this.peek().constant?(t.key=this.constant(),t.computed=!1,this.consume(":"),t.value=this.assignment()):this.peek().identifier?(t.key=this.identifier(),t.computed=!1,this.peek(":")?(this.consume(":"),t.value=this.assignment()):t.value=t.key):this.peek("[")?(this.consume("["),t.key=this.assignment(),this.consume("]"),t.computed=!0,this.consume(":"),t.value=this.assignment()):this.throwError("invalid key",this.peek()),e.push(t)}while(this.expect(","));return this.consume("}"),{type:We,properties:e}}throwError(e,t){throw Di("syntax","Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].",t.text,e,t.index+1,this.text,this.text.substring(t.index))}consume(e){if(0===this.tokens.length)throw Di("ueoe","Unexpected end of expression: {0}",this.text);const t=this.expect(e);if(t)return t;this.throwError(`is unexpected, expecting [${e}]`,this.peek())}peekToken(){if(0===this.tokens.length)throw Di("ueoe","Unexpected end of expression: {0}",this.text);return this.tokens[0]}peek(...e){return this.peekAhead(0,...e)}peekAhead(e,...t){if(this.tokens.length>e){const n=this.tokens[e],{text:r}=n;if(t.includes(r)||!t[0]&&!t[1]&&!t[2]&&!t[3])return n}return!1}expect(...e){const t=this.peek(...e);return!!t&&(this.tokens.shift(),t)}}class Hi{constructor(e,t){this.ast=new Ii(e),this.astCompiler=new Ni(t)}parse(e){const{ast:t}=this.getAst(e),n=this.astCompiler.compile(t);return n.literal=function(e){return 0===e.body.length||1===e.body.length&&(e.body[0].expression.type===qe||e.body[0].expression.type===Be||e.body[0].expression.type===We)}(t),n.constant=function(e){return e.constant}(t),n}getAst(e){return e=e.trim(),{ast:this.ast.ast(e)}}}class Fi{constructor(){const e=Object.create(null);let t,n;this.setIdentifierFns=function(e,r){return t=e,n=r,this},this.$get=["$filter",function(r){const s={isIdentifierStart:j(t)&&t,isIdentifierContinue:j(n)&&n};return function(t,n){let o,a;switch(typeof t){case"string":if(a=t=t.trim(),o=e[a],!o){const n=new Pi(s);o=new Hi(n,r).parse(t),e[a]=Bi(o)}return i(o,n);case"function":return i(t,n);default:return i(()=>{},n)}};function i(e,t){if(!t)return e;e.$$interceptor&&(t=function(e,t){function n(n){return t(e(n))}return n.$stateful=e.$stateful||t.$stateful,n.$$pure=e.$$pure&&t.$$pure,n}(e.$$interceptor,t),e=e.$$intercepted);let n=!1;const r=function(r,s,i,o){const a=n&&o?o[0]:e(r,s,i,o);if(r?.getter)return;const c=j(a)?a():a;return t(m(c)?c.$target:c)};return r.$$intercepted=e,r.$$interceptor=t,r.literal=e.literal,r.oneTime=e.oneTime,r.constant=e.constant,r.decoratedNode=e.decoratedNode,t.$stateful||(n=!e.inputs,r.inputs=e.inputs?e.inputs:[e],t.$$pure||(r.inputs=r.inputs.map(function(e){return 2===e.isPure?function(t){return e(t)}:e}))),Bi(r)}}]}}function qi(e,t,n,r){const s=e.$watch(()=>(s(),r(e)),t,n);return s}function Bi(e){return e.constant?e.$$watchDelegate=qi:e.inputs&&(e.$$watchDelegate=zi),e}function zi(e,t,n,r){const s=r.inputs;let i;if(1===s.length){let o=Wi;const a=s[0];return e.$watch(e=>{const t=a(e);return Wi(t,o,a.isPure)||(i=r(e,void 0,[t]),o=t&&Ki(t)),i},t,n)}for(let e=0,t=s.length;e<t;e++);}function Wi(e,t,n){return A(e)||A(t)?e===t:!("object"==typeof e&&"object"==typeof(e=Ki(e))&&!n)&&(e===t||Number.isNaN(e)&&Number.isNaN(t))}function Ki(e){return j(e.valueOf)?e.valueOf():{}.constructor.prototype.valueOf.call(e)}const Qi=we("$interpolate");function Gi(e,t){throw Qi("interr","Can't interpolate: {0}\n{1}",e,t.toString())}class Ji{constructor(){this.startSymbol="{{",this.endSymbol="}}"}$get=[sn.$parse,sn.$sce,(e,t)=>{const n=this,r=n.startSymbol.length,s=n.endSymbol.length,i=new RegExp(n.startSymbol.replace(/./g,a),"g"),o=new RegExp(n.endSymbol.replace(/./g,a),"g");function a(e){return`\\\\\\${e}`}function c(e){return e.replace(i,n.startSymbol).replace(o,n.endSymbol)}function l(i,o,a,l){const u=a===t.URL||a===t.MEDIA_URL;if(!i.length||-1===i.indexOf(n.startSymbol)){if(o)return;let e=c(i);u&&(e=t.getTrusted(a,e));const n=()=>e;return n.exp=i,n.expressions=[],n.$$watchDelegate=qi,n}let h,d;l=!!l;let p=0;const f=[],$=i.length;let m;const g=[],v=[];for(;p<$;){if(-1===(h=i.indexOf(n.startSymbol,p))||-1===(d=i.indexOf(n.endSymbol,h+r))){p!==$&&g.push(c(i.substring(p)));break}p!==h&&g.push(c(i.substring(p,h))),m=i.substring(h+r,d),f.push(m),p=d+s,v.push(g.length),g.push("")}const y=1===g.length&&1===v.length,w=u&&y?void 0:function(e){try{return e=a&&!u?t.getTrusted(a,e):t.valueOf(e),l&&!C(e)?e:Z(e)}catch(e){return Gi(i,e)}},b=f.map(t=>e(t,w));if(!o||f.length){const e=function(e){for(let t=0,n=f.length;t<n;t++){if(l&&E(e[t]))return;g[v[t]]=e[t]}return u?t.getTrusted(a,y?g[0]:g.join("")):(a&&g.length>1&&function(e){throw Qi("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",e)}(i),g.join(""))};return H((t,n)=>{let r=0;const s=f.length,o=new Array(s);try{for(;r<s;r++){if(n){const i=f[r].trim();t.$watch(i,()=>{const r=new Array(s);let i=0;for(;i<s;i++){const e=b[i];r[i]=e(t)}n(e(r))})}o[r]=b[r](t)}return e(o)}catch(e){return Gi(i,e)}},{exp:i,expressions:f,$$watchDelegate(t,r){let s;return t.$watch(b,function(i,o){const a=e(i);r.call(n,a,i!==o?s:a,t),s=a})}})}}return l.startSymbol=function(){return n.startSymbol},l.endSymbol=function(){return n.endSymbol},l}]}const Zi=/^([^?#]*)(\?([^#]*))?(#(.*))?$/,Xi=we("$location");let Yi,eo,to,no=!1;class ro{constructor(e,t,n=!0,r){this.appBase=e,this.appBaseNoFile=t,this.html5=n,this.basePrefix=n?r||"":void 0,this.hashPrefix=n?void 0:r,this.absUrl="",this.$$url=void 0,this.$$updateBrowser=void 0}setUrl(e){const t=Zi.exec(e);return void 0===t[1]&&""!==e||this.setPath(t[1]||""),void 0===t[2]&&void 0===t[1]&&""!==e||this.setSearch(t[3]||""),this.setHash(t[5]||""),this}getUrl(){return this.$$url}setPath(e){const t=null!==e?e.toString():"";return Yi="/"===t.charAt(0)?t:`/${t}`,this.$$compose(),this}getPath(){return Yi}setHash(e){return to=null!==e?e.toString():"",this.$$compose(),this}getHash(){return to}setSearch(e,t){if(1===arguments.length)if(S(e)||T(e))e=e.toString(),eo=se(e);else{if(!x(e))throw Xi("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");e=structuredClone(e,{}),Object.entries(e).forEach(([t,n])=>{O(n)&&delete e[t]}),eo=e}else E(t)||null===t?delete eo[e]:eo[e]=t;return this.$$compose(),this}getSearch(){return eo}$$compose(){this.$$url=function(e,t,n){const r=ie(t),s=n?`#${ae(n)}`:"";return function(e){const t=e.split("/");let n=t.length;for(;n--;){const e=decodeURIComponent(t[n].replace(/%2F/gi,"/"));t[n]=ae(e)}return t.join("/")}(e)+(r?`?${r}`:"")+s}(Yi,eo,to),this.absUrl=this.html5?this.appBaseNoFile+this.$$url.substring(1):this.appBase+(this.$$url?this.hashPrefix+this.$$url:""),no=!0,setTimeout(()=>this.$$updateBrowser&&this.$$updateBrowser())}setState(e){if(!this.html5)throw Xi("nostate","History API state support is available only in HTML5 mode");return this.$$state=E(e)?null:e,no=!0,this}getState(){return this.$$state}parseLinkUrl(e,t){if(this.html5){if(t&&"#"===t[0])return this.setHash(t.slice(1)),!0;let n,r,s;return C(n=oo(this.appBase,e))?(r=n,s=this.basePrefix&&C(n=oo(this.basePrefix,n))?this.appBaseNoFile+(oo("/",n)||n):this.appBase+r):C(n=oo(this.appBaseNoFile,e))?s=this.appBaseNoFile+n:this.appBaseNoFile===`${e}/`&&(s=this.appBaseNoFile),s&&this.parse(s),!!s}return ao(this.appBase)===ao(e)&&(this.parse(e),!0)}parse(e){if(this.html5){const t=oo(this.appBaseNoFile,e);if(!S(t))throw Xi("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',e,this.appBaseNoFile);io(t,!0),Yi||(Yi="/"),this.$$compose()}else{const n=oo(this.appBase,e)||oo(this.appBaseNoFile,e);let r;function s(e,t,n){const r=/^\/[A-Z]:(\/.*)/;if(_e(t,n)&&(t=t.replace(n,"")),r.exec(t))return e;const s=r.exec(e);return s?s[1]:e}E(n)||"#"!==n.charAt(0)?this.html5?r=n:(r="",E(n)&&(this.appBase=e)):(r=oo(this.hashPrefix,n),E(r)&&(r=n)),io(r,!1),Yi=s(Yi,r,this.appBase),this.$$compose()}}}class so{constructor(){this.hashPrefixConf="!",this.html5ModeConf={enabled:!0,requireBase:!1,rewriteLinks:!0},this.urlChangeListeners=[],this.urlChangeInit=!1,this.cachedState=null,this.lastHistoryState=null,this.lastBrowserUrl=window.location.href,this.cacheState()}setUrl(e,t){if(void 0===t&&(t=null),e){if(e=new URL(e).href,this.lastBrowserUrl===e&&this.lastHistoryState===t)return this;this.lastBrowserUrl=e,this.lastHistoryState=t,history.pushState(t,"",e),this.cacheState()}return this}getBrowserUrl(){return kn(window.location.href)}state(){return this.cachedState}cacheState(){const e=history.state??null;G(e,this.lastCachedState)||(this.cachedState=e,this.lastCachedState=e,this.lastHistoryState=e)}#e(){const e=this.lastHistoryState;this.cacheState(),this.lastBrowserUrl===this.getBrowserUrl()&&e===this.cachedState||(this.lastBrowserUrl=this.getBrowserUrl(),this.lastHistoryState=this.cachedState,this.urlChangeListeners.forEach(e=>{e(kn(window.location.href),this.cachedState)}))}#t(e){this.urlChangeInit||(window.addEventListener("popstate",this.#e.bind(this)),window.addEventListener("hashchange",this.#e.bind(this)),this.urlChangeInit=!0),this.urlChangeListeners.push(e)}$get=[sn.$rootScope,sn.$rootElement,sn.$exceptionHandler,(e,t,n)=>{const r=rn(),s=kn(window.location.href);let i;if(this.html5ModeConf.enabled){if(!r&&this.html5ModeConf.requireBase)throw Xi("nobase","$location in HTML5 mode requires a <base> tag to be present!");i=function(e){const t=e.indexOf("//")+2,n=e.indexOf("/",t);return-1===n?e:e.substring(0,n)}(s)+(r||"/")}else i=ao(s);const o=(a=i).substring(0,ao(a).lastIndexOf("/")+1);var a;const c=new ro(i,o,this.html5ModeConf.enabled,`#${this.hashPrefixConf}`);c.parseLinkUrl(s,s),c.$$state=this.state();const l=/^\s*(javascript|mailto):/i,u=(e,t)=>{const r=c.getUrl(),s=c.$$state;try{this.setUrl(e,t),c.$$state=this.state()}catch(e){c.setUrl(r),c.$$state=s,n(e)}};t.addEventListener("click",e=>{const{rewriteLinks:n}=this.html5ModeConf;if(!n||e.ctrlKey||e.metaKey||e.shiftKey||2===e.button)return;let r=e.target;for(;"a"!==r.nodeName.toLowerCase();)if(r===t||!(r=r.parentElement))return;if(S(n)&&E(r.getAttribute(n)))return;let s=r.href;const i=r.getAttribute("href")||r.getAttribute("xlink:href");if(x(s)&&"[object SVGAnimatedString]"===s.toString()){s=new URL(s.animVal).href}l.test(s)||!s||r.getAttribute("target")||e.defaultPrevented||c.parseLinkUrl(s,i)&&e.preventDefault()}),c.absUrl!==s&&this.setUrl(c.absUrl,!0);let h=!0;this.#t((t,n)=>{_e(t,o)?queueMicrotask(()=>{const r=c.absUrl,s=c.$$state;c.parse(t),c.$$state=n;const{defaultPrevented:i}=e.$broadcast("$locationChangeStart",t,r,n,s);c.absUrl===t&&(i?(c.parse(r),c.$$state=s,u(r,s)):(h=!1,p(r,s)))}):window.location.href=t});const d=()=>{if(h||no){no=!1;const n=this.getBrowserUrl();let r=c.absUrl;const s=this.state(),i=(t=r,!(co(n)===co(t))||c.html5&&s!==c.$$state);(h||i)&&(h=!1,setTimeout(()=>{r=c.absUrl;const{defaultPrevented:t}=e.$broadcast("$locationChangeStart",c.absUrl,n,c.$$state,s);c.absUrl===r&&(t?(c.parse(n),c.$$state=s):(i&&u(r,s===c.$$state?null:c.$$state),p(n,s)))}))}var t};return c.$$updateBrowser=d,d(),e.$on("$updateBrowser",d),c;function p(t,n){e.$broadcast("$locationChangeSuccess",c.absUrl,t,c.$$state,n)}}]}function io(e,t){if(/^\s*[\\/]{2,}/.test(e))throw Xi("badpath",'Invalid url "{0}".',e);const n="/"!==e.charAt(0);n&&(e=`/${e}`);const r=On(e),s=n&&"/"===r.pathname.charAt(0)?r.pathname.substring(1):r.pathname;Yi=function(e,t){const n=e.split("/");let r=n.length;for(;r--;)n[r]=decodeURIComponent(n[r]),t&&(n[r]=n[r].replace(/\//g,"%2F"));return n.join("/")}(s,t),eo=se(r.search),to=decodeURIComponent(r.hash),Yi&&"/"!==Yi.charAt(0)&&(Yi=`/${Yi}`)}function oo(e,t){if(_e(t,e))return t.substring(e.length)}function ao(e){const t=e.indexOf("#");return-1===t?e:e.substring(0,t)}function co(e){const t=document.createElement("a");t.href=e;let n=t.href;return n.endsWith("/")&&!/^https?:\/\/[^/]+\/$/.test(n)&&(n=n.slice(0,-1)),n.endsWith("#")&&(n=n.slice(0,-1)),n}class lo{constructor(){this.debug=!1,this._override=null}setLogger(e){this._override=e}formatError(e){return N(e)&&(e.stack?e=e.message&&-1===e.stack.indexOf(e.message)?`Error: ${e.message}\n${e.stack}`:e.stack:e.sourceURL&&(e=`${e.message}\n${e.sourceURL}:${e.line}`)),e}consoleLog(e){const t=window.console||{},n=t[e]||t.log||(()=>{});return(...e)=>{const r=e.map(e=>this.formatError(e));return n.apply(t,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 e=this.consoleLog("debug");return(...t)=>{this.debug&&e.apply(this,t)}})()}}}const uo="$nonscope";let ho,po,fo=0;const $o=[];class mo{constructor(){this.rootScope=go()}$get=[sn.$exceptionHandler,sn.$parse,(e,t)=>(po=e,ho=t,this.rootScope)]}function go(e={},t){if(!x(e)||function(e){if(!0===e[uo]||!0===(e.constructor&&e.constructor[uo])||e===vo.window||e===vo.document||e===vo.self||e===vo.frames||e instanceof Window||e instanceof Document||e instanceof Element||e instanceof Node||e instanceof EventTarget||e instanceof Promise||e instanceof HTMLCollection||e instanceof NodeList||e instanceof Event)return!0;try{return wo.call(e)===bo}catch{return!1}}(e))return e;const n=new Proxy(e,t||new Eo),r=Object.keys(e),s=Array.isArray(e.constructor?.$nonscope)?e.constructor.$nonscope:null,i=Array.isArray(e.$nonscope)?e.$nonscope:null;for(let t=0,o=r.length;t<o;t++){const o=r[t];s?.includes(o)||i?.includes(o)||(e[o]=go(e[o],n.$handler))}return n}const vo=globalThis,yo=Object.prototype,{toString:wo}=yo,bo="[object Window]";class Eo{constructor(e,t){this.context=e?e.context?e.context:e:void 0,this.watchers=e?e.watchers:new Map,this.$$listeners=new Map,this.foreignListeners=e?e.foreignListeners:new Map,this.foreignProxies=e?e.foreignProxies:new Set,this.objectListeners=e?e.objectListeners:new WeakMap,this.functionListeners=e?e.functionListeners:new Map,this.$proxy=null,this.$handler=this,this.$target=null,this.$value=null,this.$children=[],this.$id=(fo+=1,fo),this.$root=e?e.$root:this,this.$parent=t||(this.$root===this?null:e),this.filters=[],this.$$destroyed=!1,this.scheduled=[],this.$scopename=void 0,this.propertyMap={$watch:this.$watch.bind(this),$new:this.$new.bind(this),$newIsolate:this.$newIsolate.bind(this),$destroy:this.$destroy.bind(this),$flushQueue:this.$flushQueue.bind(this),$eval:this.$eval.bind(this),$apply:this.$apply.bind(this),$postUpdate:this.$postUpdate.bind(this),$isRoot:this.#n.bind(this),$on:this.$on.bind(this),$emit:this.$emit.bind(this),$broadcast:this.$broadcast.bind(this),$transcluded:this.$transcluded.bind(this),$handler:this,$merge:this.$merge.bind(this),$getById:this.$getById.bind(this),$searchByName:this.$searchByName.bind(this),$proxy:this.$proxy,$parent:this.$parent,$root:this.$root,$children:this.$children,$id:this.$id,$scopename:this.$scopename}}set(e,t,n,r){if("undefined"===t)return!1;if("$scopename"===t)return this.$scopename=n,!0;if(e.constructor?.$nonscope&&Array.isArray(e.constructor.$nonscope)&&e.constructor.$nonscope.includes(t)||e.$nonscope&&Array.isArray(e.$nonscope)&&e.$nonscope.includes(t))return e[t]=n,!0;this.$proxy=r,this.$target=e;const s=e[t];if(void 0!==s&&Number.isNaN(s)&&Number.isNaN(n))return!0;if(s&&s[f]){if(Array.isArray(n)){if(s!==n){const e=this.watchers.get(t);e&&this.#r(e);const n=this.foreignListeners.get(t);n&&this.#r(n)}return this.objectListeners.get(e[t])&&this.objectListeners.delete(e[t]),e[t]=go(n,this),this.objectListeners.set(e[t],[t]),!0}if(x(n)){if(Ae(e,t)){const e=Object.keys(s);for(const t of e)n[t]||delete s[t]}if(s!==n){const e=this.watchers.get(t);e&&this.#r(e);const r=this.foreignListeners.get(t);r&&this.#r(r),this.#s(n)}return e[t]=go(n,this),!0}if(E(n)){let n=!1;const r=Object.keys(s.$target),i=s.$target;let o=0;for(;o<r.length;o++){const e=r[o],t=i[e];t&&t[f]&&(n=!0),delete s[e]}if(e[t]=void 0,!n){const e=this.watchers.get(t);e&&this.#r(e)}return!0}if(C(n)){e[t]=n;const s=this.watchers.get(t);if(s&&this.#r(s),Array.isArray(e)&&this.objectListeners.has(r)&&"length"!==t){const e=this.objectListeners.get(r);for(let t=0,n=e.length;t<n;t++){const n=this.watchers.get(e[t]);n&&this.#r(n)}}return!0}return!0}if(E(e[t])&&m(n)&&(this.foreignProxies.add(n),e[t]=n,!this.watchers.has(t)))return!0;if(E(n)?e[t]=n:e[t]=go(n,this),s!==n){let r=this.$target;const i=[];if(E(s)&&x(e[t])){this.objectListeners.has(e[t])||this.objectListeners.set(e[t],[t]);const s=Object.keys(n);for(let e=0,t=s.length;e<t;e++){const t=s[e],n=this.watchers.get(t);if(n)for(let e=0,t=n.length;e<t;e++)i.push(n[e])}r=n}if(Array.isArray(e)){const e=this.watchers.get("length");if(e)for(let t=0,n=e.length;t<n;t++)i.push(e[t])}const o=this.watchers.get(t);if(o)for(let e=0,t=o.length;e<t;e++)i.push(o[e]);i.length>0&&this.#r(i,e=>{const t=[];for(let n=0,s=e.length;n<s;n++){const s=e[n];if(!s.watchProp){t.push(s);continue}const i=s.watchProp.split(".").slice(0,-1).join("."),o=ho(i)(s.originalTarget)?.$handler;r===o?.$target&&t.push(s)}return t});let a=this.foreignListeners.get(t);if(!a&&this.$parent?.foreignListeners&&(a=this.$parent.foreignListeners.get(t)),a){let e=a;const t=this.$target.$$hashKey;if(t){e=[];for(let n=0,r=a.length;n<r;n++){const r=a[n];r.originalTarget.$$hashKey===t&&e.push(r)}}e.length>0&&this.#r(e)}}if(this.objectListeners.has(r)&&"length"!==t){const e=this.objectListeners.get(r);for(let t=0,n=e.length;t<n;t++){const n=e[t],r=this.watchers.get(n);r&&this.scheduled!==r&&this.#r(r)}}return!0}get(e,t,n){if("$scopename"===t&&this.$scopename)return this.$scopename;if("$$watchersCount"===t)return function(e){const t=function(e){const t=new Set,n=[e];for(;n.length;){const e=n.pop();if(!t.has(e.$id)&&(t.add(e.$id),e.$children))for(let t=0,r=e.$children.length;t<r;t++)n.push(e.$children[t])}return t}(e);let n=0;for(const r of e.watchers.values())for(let e=0,s=r.length;e<s;e++)t.has(r[e].scopeId)&&n++;return n}(this);if(t===f)return!0;if(e[t]&&m(e[t])?this.$proxy=e[t]:this.$proxy=n,this.propertyMap.$target=e,this.propertyMap.$proxy=n,Array.isArray(e)&&["pop","shift","unshift"].includes(t)){if(this.objectListeners.has(n)){const e=this.objectListeners.get(n);for(let t=0,n=e.length;t<n;t++){const n=e[t],r=this.watchers.get(n);r&&(this.scheduled=r)}}"unshift"===t&&this.#r(this.scheduled)}return Ae(this.propertyMap,t)?(this.$target=e,this.propertyMap[t]):e[t]}deleteProperty(e,t){if(e[t]&&e[t][f]){e[t]=void 0;const n=this.watchers.get(t);if(n&&this.#r(n),this.objectListeners.has(this.$proxy)){const e=this.objectListeners.get(this.$proxy);for(let t=0,n=e.length;t<n;t++){const n=e[t],r=this.watchers.get(n);r&&this.#r(r)}}return this.scheduled&&(this.#r(this.scheduled),this.scheduled=[]),!0}if(delete e[t],this.objectListeners.has(this.$proxy)){const e=this.objectListeners.get(this.$proxy);for(let t=0,n=e.length;t<n;t++){const n=e[t],r=this.watchers.get(n);r&&this.#r(r)}}else{const n=this.watchers.get(t);n&&this.#r(n,e[t])}return!0}#s(e){E(e)||Object.keys(e).forEach(t=>{const n=this.watchers.get(t);n&&this.#r(n),x(e[t])&&this.#s(e[t])})}#r(e,t=e=>e){queueMicrotask(()=>{let n=0;const r=t(e);for(;n<r.length;){const e=r[n];e.foreignListener?e.foreignListener.#i(e,this.$target):this.#i(e,this.$target),n++}})}$watch(e,t,n=!1){he(S(e),"Watched property required"),e=e.trim();const r=ho(e);if(r.constant)return t&&queueMicrotask(()=>{let e=r();for(;j(e);)e=e();t(e,this.$target)}),()=>{};const s={originalTarget:this.$target,listenerFn:t,watchFn:r,scopeId:this.$id,id:y(),property:[]};let i=r.decoratedNode.body[0].expression.name;const o=[],{type:a}=r.decoratedNode.body[0].expression;switch(a){case Ve:if(!t){let e=r(this.$target);for(;j(e);)e=e(this.$target);return}i=r.decoratedNode.body[0].expression.left.name;break;case Me:i=r.decoratedNode.body[0].expression.toWatch[0]?.test?.name,s.property.push(i);break;case Pe:{const e=[r.decoratedNode.body[0].expression.left.toWatch[0]?.name,r.decoratedNode.body[0].expression.right.toWatch[0]?.name];for(let t=0,n=e.length;t<n;t++){const n=e[t];n&&this.#o(n,s)}return()=>{for(let t=0,n=e.length;t<n;t++){const n=e[t];this.#a(n,s.id)}}}case De:if(r.decoratedNode.body[0].expression.isPure){const e=r.decoratedNode.body[0].expression.toWatch[0];if(i=e.property?e.property.name:e.name,!i)throw new Error("Unable to determine key");s.property.push(i);break}{const{toWatch:e}=r.decoratedNode.body[0].expression;for(let t=0,n=e.length;t<n;t++){const n=e[t],r=n.property?n.property.name:n.name;if(!r)throw new Error("Unable to determine key");this.#o(r,s),this.#r([s])}return()=>{for(let t=0,n=e.length;t<n;t++){const n=e[t],r=n.property?n.property.name:n.name;this.#a(r,s.id)}}}case Ue:{const e=r.decoratedNode.body[0].expression.toWatch[0];if(i=e.property?e.property.name:e.name,!i)throw new Error("Unable to determine key");s.property.push(i);break}case Ie:{const{toWatch:e}=r.decoratedNode.body[0].expression;for(let t=0,n=e.length;t<n;t++){const n=e[t];C(n)&&(this.#o(n.name,s),this.#r([s]))}return()=>{for(let t=0,n=e.length;t<n;t++){const n=e[t];C(n)&&this.#a(n.name,s.id)}}}case He:if(i=r.decoratedNode.body[0].expression.property.name,i||(i=r.decoratedNode.body[0].expression.object.name),s.property.push(i),e!==i){s.watchProp=e;const t=ho(e.split(".").slice(0,-1).join("."))(s.originalTarget);if(t&&this.foreignProxies.has(t))return t.$handler.#c(i,s),t.$handler.#r([s]),()=>t.$handler.#a(i,s.id)}break;case Fe:s.property.push(r.decoratedNode.body[0].expression.name);break;case Be:{const{elements:e}=r.decoratedNode.body[0].expression;for(let t=0,n=e.length;t<n;t++){const n=e[t],r=n.type===qe?n.value:n.toWatch[0]?.name;r&&(this.#o(r,s),this.#r([s]))}return()=>{for(let t=0,n=e.length;t<n;t++){const n=e[t],r=n.type===qe?n.value:n.toWatch[0]?.name;r&&this.#a(r,s.id)}}}case We:{const{properties:e}=r.decoratedNode.body[0].expression;for(let t=0,n=e.length;t<n;t++){const n=e[t];let i;if(!1===n.key.isPure)i=n.key.name;else if(n.value?.name)i=n.value.name;else{const e=r.decoratedNode.body[0].expression.toWatch[0];i=e.property?e.property.name:e.name}i&&(o.push(i),s.property.push(i))}break}default:throw new Error(`Unsupported type ${a}`)}const c=s.watchFn(this.$target);if(x(c)&&this.objectListeners.set(c,[i]),o.length>0)for(let e=0,t=o.length;e<t;e++)this.#o(o[e],s);else this.#o(i,s);return n||this.#r([s]),()=>{if(o.length>0){let e=!0;for(let t=0,n=o.length;t<n;t++){this.#a(o[t],s.id)||(e=!1)}return e}return this.#a(i,s.id)}}$new(e){let t;e?(Object.getPrototypeOf(e)===Object.prototype||Object.getPrototypeOf(e)===this.$target?Object.setPrototypeOf(e,this.$target):Object.setPrototypeOf(Object.getPrototypeOf(e)||e,this.$target),t=e):t=Object.create(this.$target);const n=new Proxy(t,new Eo(this));return this.$children.push(n),n}$newIsolate(e){const t=e?Object.create(e):Object.create(null),n=new Proxy(t,new Eo(this,this.$root));return this.$children.push(n),n}$transcluded(e){const t=Object.create(this.$target),n=new Proxy(t,new Eo(this,e));return this.$children.push(n),n}#o(e,t){this.watchers.has(e)?this.watchers.get(e).push(t):this.watchers.set(e,[t])}#c(e,t){this.foreignListeners.has(e)?this.foreignListeners.get(e).push(t):this.foreignListeners.set(e,[t])}#a(e,t){const n=this.watchers.get(e);if(!n)return!1;const r=n.findIndex(e=>e.id===t);return-1!==r&&(n.splice(r,1),n.length?this.watchers.set(e,n):this.watchers.delete(e),!0)}$eval(e,t){const n=ho(e)(this,t);return E(n)||null===n||n.name===Object.hasOwnProperty.name?n:j(n)?n():Number.isNaN(n)?0:n}$merge(e){const t=Object.entries(e);for(let e=0,n=t.length;e<n;e++){const[n,r]=t[e];this.set(this.$target,n,r,this.$proxy)}}$apply(e){try{return ho(e)(this.$proxy)}catch(e){return po(e)}}$on(e,t){let n=this.$$listeners.get(e);return n||(n=[],this.$$listeners.set(e,n)),n.push(t),()=>{const r=n.indexOf(t);-1!==r&&(n.splice(r,1),0===n.length&&this.$$listeners.delete(e))}}$emit(e,...t){return this.#l({name:e,event:void 0,broadcast:!1},...t)}$broadcast(e,...t){return this.#l({name:e,event:void 0,broadcast:!0},...t)}#l({name:e,event:t,broadcast:n},...r){if(!n&&!this.$$listeners.has(e))return this.$parent?this.$parent.$handler.#l({name:e,event:t,broadcast:n},...r):void 0;t?t.currentScope=this.$target:t=t||{name:e,targetScope:this.$target,currentScope:this.$target,stopped:!1,stopPropagation(){t.stopped=!0},preventDefault(){t.defaultPrevented=!0},defaultPrevented:!1};const s=X([t],[t].concat(r),1),i=this.$$listeners.get(e);if(i){let{length:e}=i;for(let t=0;t<e;t++)try{i[t].apply(null,s);const n=i.length;n!==e&&(n<e&&t--,e=n)}catch(e){po(e)}}return t.currentScope=null,t.stopped?t:n?(this.$children.length>0&&this.$children.forEach(s=>{t=s.$handler.#l({name:e,event:t,broadcast:n},...r)}),t):this.$parent?this.$parent.#l({name:e,event:t,broadcast:n},...r):t}#n(){return this.$root===this}$postUpdate(e){$o.push(e)}$destroy(){if(!this.$$destroyed){this.$broadcast("$destroy");for(const[e,t]of this.watchers){for(let e=t.length-1;e>=0;e--)t[e].scopeId===this.$id&&t.splice(e,1);0===t.length?this.watchers.delete(e):this.watchers.set(e,t)}if(this.#n())this.watchers.clear();else{const e=this.$parent.$children;for(let t=0,n=e.length;t<n;t++)if(e[t].$id===this.$id){e.splice(t,1);break}}this.$$listeners.clear(),this.$$destroyed=!0}}#i(e,t){const{originalTarget:n,listenerFn:r,watchFn:s}=e;try{let e=s(n);if(E(e)&&(e=s(t)),j(e)&&(e=e(n)),Array.isArray(e))for(let t=0,r=e.length;t<r;t++)j(e[t])&&(e[t]=e[t](n));for(r(e,n);$o.length;){$o.shift()()}}catch(e){po(e)}}$flushQueue(){for(;$o.length;)$o.shift()()}$getById(e){if(S(e)&&(e=parseInt(e,10)),this.$id===e)return this;{let t;for(const n of this.$children){const r=n.$getById(e);if(r){t=r;break}}return t}}$searchByName(e){const t=(e,n)=>{if(e.$scopename===n)return e;{let r;for(const s of e.$children){const e=t(s,n);if(e){r=e;break}}return r}};return t(this.$root,e)}}const Co=we("$templateRequest");function xo(){let e;this.httpOptions=function(t){return t?(e=t,this):e},this.$get=["$exceptionHandler","$templateCache","$http","$sce",function(t,n,r,s){function i(o,a){if(i.totalPendingRequests++,!S(o)||!n.has(o))try{if(!(o=s.getTrustedResourceUrl(o)))return Promise.reject("Template not found")}catch(e){return Promise.reject(e.message)}let c=r.defaults&&r.defaults.transformResponse;return Array.isArray(c)?c=c.filter(function(e){return e!==Dn}):c===Dn&&(c=null),r.get(o,H({cache:n,transformResponse:c},e)).finally(function(){i.totalPendingRequests--}).then(function(e){return n.set(o,e.data),e.data},function(e){a||(e=Co("tpload","Failed to load template: {0} (HTTP status: {1} {2})",o,e.status,e.statusText),t(e));return Promise.reject(e)})}return i.totalPendingRequests=0,i}]}class So{constructor(){this._aHrefSanitizationTrustedUrlList=/^\s*(https?|s?ftp|mailto|tel|file):/,this._imgSrcSanitizationTrustedUrlList=/^\s*((https?|ftp|file|blob):|data:image\/)/}aHrefSanitizationTrustedUrlList(e){return C(e)?(this._aHrefSanitizationTrustedUrlList=e,this):this._aHrefSanitizationTrustedUrlList}imgSrcSanitizationTrustedUrlList(e){return C(e)?(this._imgSrcSanitizationTrustedUrlList=e,this):this._imgSrcSanitizationTrustedUrlList}$get=[sn.$window,e=>(t,n)=>{if(!t)return t;const r=n?this._imgSrcSanitizationTrustedUrlList:this._aHrefSanitizationTrustedUrlList,s=new URL(t.trim(),e.location.href).href;return""===s||s.match(r)?t:`unsafe:${s}`}]}const Oo="ng-active",Ao="ng-inactive";class ko{constructor(e,t,n,r){this.$element=e,this.$scope=t,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(e={}){this.renderLater=!1,this.cachedCollection=e;const t=_o(this.$scope,this.$attrs.ngMessagesMultiple)||_o(this.$scope,this.$attrs.multiple),n=[],r={};let s=0,i=this.head,o=!1,a=0;for(;i;){a++;const c=i.message;let l=!1;o||Object.entries(e).forEach(([e,t])=>{if(No(t)&&!l&&(s++,c.test(e))){if(r[e])return;r[e]=!0,l=!0,c.attach()}}),l?o=!t:n.push(c),i=i.next}n.forEach(e=>{e.detach()});const c=n.length!==a,l=this.default&&!c&&s>0;l?this.default.attach():this.default&&this.default.detach(),c||l?this.$animate.setClass(this.$element,Oo,Ao):this.$animate.setClass(this.$element,Ao,Oo)}reRender(){this.renderLater||(this.renderLater=!0,Promise.resolve().then(()=>{this.renderLater&&this.cachedCollection&&this.render(this.cachedCollection)}))}register(e,t,n){if(n)this.default=t;else{const n=this.latestKey.toString();this.messages[n]={message:t},this.insertMessageNode(this.$element,e,n),e.$$ngMessageNode=n,this.latestKey++}this.reRender()}deregister(e,t){if(t)delete this.default;else{const t=e.$$ngMessageNode;delete e.$$ngMessageNode,this.removeMessageNode(this.$element,e,t),delete this.messages[t]}this.reRender()}findPreviousMessage(e,t){let n=t;const r=[];for(;n&&n!==e;){const e=n.$$ngMessageNode;if(e&&e.length)return this.messages[e];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(e,t,n){const r=this.messages[n];if(this.head){const n=this.findPreviousMessage(e,t);n?(r.next=n.next,n.next=r):(r.next=this.head,this.head=r)}else this.head=r}removeMessageNode(e,t,n){const r=this.messages[n];if(!r)return;const s=this.findPreviousMessage(e,t);s?s.next=r.next:this.head=r.next}}function To(e){return{require:"ngMessages",restrict:"AE",controller:(t,n,r)=>new ko(t,n,r,e)}}function _o(e,t){return S(t)&&0===t.length||No(e.$eval(t))}function No(e){return S(e)?e.length:!!e}function jo(e,t){return{restrict:"AE",require:"^^ngMessages",link(n,r,s){const i=s.ngMessagesInclude||s.src;e(i).then(e=>{n.$$destroyed||S(e)&&!e.trim()||t(e)(n,e=>{r.after(e)})})}}}To.$inject=["$animate"],jo.$inject=["$templateRequest","$compile"];const Ro=Mo(!1),Lo=Mo(!1),Vo=Mo(!0);function Mo(e){function t(t){return{restrict:"AE",transclude:"element",priority:1,terminal:!0,require:"^^ngMessages",link(n,r,s,i,o){let a,c,l,u,h,d;if(!e){a=r,l=s.ngMessage||s.when,u=s.ngMessageExp||s.whenExp;const e=function(e){c=e?Array.isArray(e)?e:e.split(/[\s,]+/):null,i.reRender()};u?(e(n.$eval(u)),n.$watch(u,e)):e(l)}i.register(a,d={test:e=>function(e,t){if(e)return Array.isArray(e)?e.indexOf(t)>=0:Ae(e,t);return}(c,e),attach(){h||o((n,s)=>{t.enter(n,null,r),h=n;const o=h.$$attachId=i.getAttachId();h.addEventListener("$destroy",()=>{h&&h.$$attachId===o&&(i.deregister(a,e),d.detach()),s.$destroy()})})},detach(){if(h){const e=h;h=null,t.leave(e)}}},e),n.$on("$destroy",()=>{i.deregister(a,e)})}}}return t.$inject=["$animate"],t}const Po="ngAriaDisable",Do=["BUTTON","A","INPUT","TEXTAREA","SELECT","DETAILS","SUMMARY"],Uo=function(e,t){return-1!==t.indexOf(e.nodeName)};function Io(){let e={ariaHidden:!0,ariaChecked:!0,ariaReadonly:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaValue:!0,tabindex:!0,bindKeydown:!0,bindRoleForClick:!0};function t(t,n,r,s){return function(i,o,a){if(Ae(a,Po))return;const c=a.$normalize(n);!e[c]||Uo(o,r)||a[c]||i.$watch(a[t],e=>{e=s?!e:!!e,o.setAttribute(n,e)})}}this.config=function(t){e=H(e,t)},this.$get=function(){return{config:t=>e[t],$$watchExpr:t}}}function Ho(e){return e.$$watchExpr("ngDisabled","aria-disabled",Do,!1)}function Fo(e){return e.$$watchExpr("ngShow","aria-hidden",[],!0)}function qo(){return{restrict:"A",require:"?ngMessages",link(e,t,n){Ae(n,Po)||t.hasAttribute("aria-live")||t.setAttribute("aria-live","assertive")}}}function Bo(e,t){return{restrict:"A",compile(n,r){if(Ae(r,Po))return;const s=t(r.ngClick);return(t,n,r)=>{Uo(n,Do)||(e.config("bindRoleForClick")&&!n.hasAttribute("role")&&n.setAttribute("role","button"),e.config("tabindex")&&!n.hasAttribute("tabindex")&&n.setAttribute("tabindex","0"),!e.config("bindKeydown")||r.ngKeydown||r.ngKeypress||r.ngKeyup||n.addEventListener("keydown",e=>{const n=parseInt(e.key,10);13!==n&&32!==n||(-1!==Do.indexOf(e.target.nodeName)||e.target.isContentEditable||e.preventDefault(),s(t,{$event:e}))}))}}}}function zo(e){return e.$$watchExpr("ngRequired","aria-required",Do,!1)}function Wo(e){return e.$$watchExpr("ngChecked","aria-checked",Do,!1)}function Ko(e){return e.$$watchExpr("ngValue","aria-checked",Do,!1)}function Qo(e){return e.$$watchExpr("ngHide","aria-hidden",[],!1)}function Go(e){return e.$$watchExpr("ngReadonly","aria-readonly",Do,!1)}function Jo(e){function t(t,n,r,s){return e.config(n)&&!r.getAttribute(t)&&(s||!Uo(r,Do))&&("hidden"!==r.getAttribute("type")||"INPUT"!==r.nodeName)}function n(e,t){return!t.getAttribute("role")&&t.getAttribute("type")===e&&!Uo(t,Do)}return{restrict:"A",require:"ngModel",priority:200,compile(r,s){if(Ae(s,Po))return;const i=function(e){const{type:t}=e,{role:n}=e;return"checkbox"===(t||n)||"menuitemcheckbox"===n?"checkbox":"radio"===(t||n)||"menuitemradio"===n?"radio":"range"===t||"progressbar"===n||"slider"===n?"range":""}(s);return{post(r,s,o,a){const c=t("tabindex","tabindex",s,!1);switch(i){case"radio":case"checkbox":n(i,s)&&s.setAttribute("role",i),t("aria-checked","ariaChecked",s,!1)&&a.$watch("$modelValue","radio"===i?function(){s.setAttribute("aria-checked",(o.value==a.$viewValue).toString())}:function(){s.setAttribute("aria-checked",(!a.$isEmpty(a.$viewValue)).toString())}),c&&s.setAttribute("tabindex",0);break;case"range":if(n(i,s)&&s.setAttribute("role","slider"),e.config("ariaValue")){const e=!s.hasAttribute("aria-valuemin")&&(Ae(o,"min")||Ae(o,"ngMin")),t=!s.hasAttribute("aria-valuemax")&&(Ae(o,"max")||Ae(o,"ngMax")),n=!s.hasAttribute("aria-valuenow");e&&o.$observe("min",e=>{s.setAttribute("aria-valuemin",e)}),t&&o.$observe("max",e=>{s.setAttribute("aria-valuemax",e)}),n&&a.$watch("$modelValue",e=>{s.setAttribute("aria-valuenow",e)})}c&&s.setAttribute("tabindex",0)}!Ae(o,"ngRequired")&&a.$validators.required&&t("aria-required","ariaRequired",s,!1)&&o.$observe("required",()=>{s.setAttribute("aria-required",(!!o.required).toString())}),t("aria-invalid","ariaInvalid",s,!0)&&a.$watch("$invalid",e=>{s.setAttribute("aria-invalid",(!!e).toString())})}}}}}function Zo(e){return function(t,n,r){Ae(r,Po)||!e.config("tabindex")||n.hasAttribute("tabindex")||Uo(n,Do)||n.setAttribute("tabindex",0)}}Ho.$inject=[sn.$aria],Fo.$inject=[sn.$aria],Bo.$inject=[sn.$aria,sn.$parse],zo.$inject=[sn.$aria],Wo.$inject=["$aria"],Ko.$inject=[sn.$aria],Qo.$inject=[sn.$aria],Go.$inject=[sn.$aria],Jo.$inject=[sn.$aria],Zo.$inject=[sn.$aria];const Xo=0,Yo=1,ea=2;let ta=[],na=!1;function ra(){const e=ta;ta=[],na=!1;for(let t=0;t<e.length;t++)e[t]()}function sa(e){ta.push(e),na||(na=!0,("function"==typeof requestAnimationFrame?requestAnimationFrame:setTimeout)(ra,0))}class ia{static chain(e,t){let n=0;const r=(s=!0)=>{!s||n>=e.length?t(s):e[n++].done(r)};r()}static all(e,t){let n=e.length,r=!0;for(const s of e)s.done(e=>{r=r&&!1!==e,0===--n&&t(r)})}constructor(e){this.host=e||{},this._doneCallbacks=[],this._state=Xo,this._promise=null,this._schedule=sa}setHost(e){this.host=e||{}}done(e){this._state===ea?e(!0):this._doneCallbacks.push(e)}progress(...e){this.host.progress?.(...e)}pause(){this.host.pause?.()}resume(){this.host.resume?.()}end(){this.host.end?.(),this._finish(!0)}cancel(){this.host.cancel?.(),this._finish(!1)}complete(e=!0){this._state===Xo&&(this._state=Yo,this._schedule(()=>this._finish(e)))}getPromise(){return this._promise||(this._promise=new Promise((e,t)=>{this.done(n=>{!1===n?t():e()})})),this._promise}then(e,t){return this.getPromise().then(e,t)}catch(e){return this.getPromise().catch(e)}finally(e){return this.getPromise().finally(e)}_finish(e){if(this._state===ea)return;this._state=ea;const t=this._doneCallbacks;for(let n=0;n<t.length;n++)t[n](e);t.length=0}}const oa="$$animateCss",aa=1e3,ca={transitionDuration:dt,transitionDelay:ht,transitionProperty:tt+ot,animationDuration:ut,animationDelay:lt,animationIterationCount:rt+"IterationCount"},la={transitionDuration:dt,transitionDelay:ht,animationDuration:ut,animationDelay:lt};function ua(e,t){return[t?lt:ht,`${e}s`]}function ha(e,t){const n=Object.create(null),r=window.getComputedStyle(e)||{};return Object.entries(t).forEach(([e,t])=>{let s=r[t];if(s){const t=s.charAt(0);("-"===t||"+"===t||t>=0)&&(s=function(e){let t=0;return e.split(/\s*,\s*/).forEach(e=>{"s"===e.charAt(e.length-1)&&(e=e.substring(0,e.length-1)),e=parseFloat(e)||0,t=t?Math.max(e,t):e}),t}(s)),0===s&&(s=null),n[e]=s}}),n}function da(e){return 0===e||!A(e)}function pa(e,t){let n=tt,r=`${e}s`;return t?n+=it:r+=" linear all",[n,r]}function fa(e,t,n){n.forEach(n=>{e[n]=C(e[n])?e[n]:t.style.getPropertyValue(n)})}function $a(){let e;this.$get=["$$animateCache","$$rAFScheduler",function(t,n){const r=function(e,t){t.addClass&&(e.classList.add(...t.addClass.trim().split(" ")),t.addClass=null),t.removeClass&&(e.classList.remove(...t.removeClass.trim().split(" ")),t.removeClass=null)};const s=[];function i(e){s.push(e),n.waitUntilQuiet(()=>{t.flush();const e=document.body.offsetWidth+1;for(let t=0;t<s.length;t++)s[t](e);s.length=0})}function o(e,n,r){const s=function(e,n,r,s){let i=t.get(n);i||(i=ha(e,s),"infinite"===i.animationIterationCount&&(i.animationIterationCount=1));const o=r||i.transitionDuration>0||i.animationDuration>0;return t.put(n,i,o),i}(e,n,r,ca),i=s.animationDelay,o=s.transitionDelay;return s.maxDelay=i&&o?Math.max(i,o):i||o,s.maxDuration=Math.max(s.animationDuration*s.animationIterationCount,s.transitionDuration),s}return function(n,s){let a,c=s||{$$skipPreparationClasses:!1};c.$$prepared||(c=$t(structuredClone(c)));const l={},u=n;if(!u||!u.parentNode)return q();const h=[],d=function(e){const t={};return e&&(e.to||e.from)&&(t.to=e.to,t.from=e.from),t}(c);let p,f,$,m,g,v,y,w,b,E;const C=[];if(0===c.duration)return q();const x=c.event&&Array.isArray(c.event)?c.event.join(" "):c.event,S=x&&c.structural;let O="",k="";S?O=pt(x,"ng-",!0):x&&(O=x),c.addClass&&(k+=pt(c.addClass,Je)),c.removeClass&&(k.length&&(k+=" "),k+=pt(c.removeClass,Ze)),c.applyClassesEarly&&k.length&&r(n,c);let T=[O,k].join(" ").trim();const _=d.to&&Object.keys(d.to).length>0;if(!((c.keyframeStyle||"").length>0)&&!_&&!T)return q();let N,j,R=t.cacheKey(u,x,c.addClass,c.removeClass);if(t.containsCachedAnimationWithoutDuration(R))return T=null,q();if(c.stagger>0){const e=parseFloat(c.stagger);N={transitionDelay:e,animationDelay:e,transitionDuration:0,animationDuration:0}}else N=function(e,n,r,s){let i;const o=`stagger-${r}`;if(t.count(r)>0&&(i=t.get(o),!i)){const r=pt(n,"-stagger");e.className+=` ${r}`,i=ha(e,s),i.animationDuration=Math.max(i.animationDuration,0),i.transitionDuration=Math.max(i.transitionDuration,0),e.classList.remove(r),t.put(o,i,!0)}return i||{}}(u,T,R,la);if(c.$$skipPreparationClasses||n.classList.add(...T.split(" ").filter(e=>""!==e)),c.transitionStyle){const e=[tt,c.transitionStyle];bt(u,e),h.push(e)}if(c.duration>=0){j=u.style[tt].length>0;const e=pa(c.duration,j);bt(u,e),h.push(e)}if(c.keyframeStyle){const e=[rt,c.keyframeStyle];bt(u,e),h.push(e)}const L=N?c.staggerIndex>=0?c.staggerIndex:t.count(R):0,V=0===L;V&&!c.skipBlocking&&ma(u,9999);let M=o(u,R,!S),P=M.maxDelay;v=Math.max(P,0),w=M.maxDuration;const D={};return D.hasTransitions=M.transitionDuration>0,D.hasAnimations=M.animationDuration>0,D.hasTransitionAll=D.hasTransitions&&"all"===M.transitionProperty,D.applyTransitionDuration=_&&(D.hasTransitions&&!D.hasTransitionAll||D.hasAnimations&&!D.hasTransitions),D.applyAnimationDuration=c.duration&&D.hasAnimations,D.applyTransitionDelay=da(c.delay)&&(D.applyTransitionDuration||D.hasTransitions),D.applyAnimationDelay=da(c.delay)&&D.hasAnimations,D.recalculateTimingStyles=k.length>0,(D.applyTransitionDuration||D.applyAnimationDuration)&&(w=c.duration?parseFloat(c.duration):w,D.applyTransitionDuration&&(D.hasTransitions=!0,M.transitionDuration=w,j=u.style[tt+ot].length>0,h.push(pa(w,j))),D.applyAnimationDuration&&(D.hasAnimations=!0,M.animationDuration=w,h.push([ut,`${w}s`]))),0!==w||D.recalculateTimingStyles?(e=pt(T,Xe),A(c.delay)||("boolean"!=typeof c.delay&&(a=parseFloat(c.delay),v=Math.max(a,0)),D.applyTransitionDelay&&h.push(ua(a)),D.applyAnimationDelay&&h.push(ua(a,!0))),A(c.duration)&&M.transitionDuration>0&&(D.recalculateTimingStyles=D.recalculateTimingStyles||V),y=v*aa,b=w*aa,c.skipBlocking||(D.blockTransition=M.transitionDuration>0,D.blockKeyframeAnimation=M.animationDuration>0&&N.animationDelay>0&&0===N.animationDuration),c.from&&(c.cleanupStyles&&fa(l,u,Object.keys(c.from)),gt(n,c)),D.blockTransition||D.blockKeyframeAnimation?F(w):c.skipBlocking||ma(u,!1),{$$willAnimate:!0,end:U,start(){if(!p)return g={end:U,cancel:I,resume:null,pause:null},m=new ia(g),i(z),m}}):q();function U(){H()}function I(){H(!0)}function H(t){if(p||$&&f)return;p=!0,f=!1,T&&!c.$$skipPreparationClasses&&n.classList.remove(...T.split(" ")),e=pt(T,Xe),e&&n.classList.remove(...e.split(" ")),wt(u,!1),ma(u,!1),h.forEach(e=>{u.style[e[0]]=""}),r(n,c),mt(n,c),Object.keys(l).length&&Object.entries(l).forEach(([e,t])=>{t?u.style.setProperty(e,t):u.style.removeProperty(e)}),c.onDone&&c.onDone(),C&&C.length&&C.forEach(e=>n.removeEventListener(e,B));const s=It(n,oa);s&&(clearTimeout(s[0].timer),Rt(n,oa)),m&&m.complete(!t)}function F(e){D.blockTransition&&ma(u,e),D.blockKeyframeAnimation&&wt(u,!!e)}function q(){return m=new ia({end:U,cancel:I}),i(()=>{}),H(),{$$willAnimate:!1,start:()=>m,end:U}}function B(e){e.stopPropagation();const t=e.originalEvent||e;if(t.target!==u)return;const n=t.$manualTimeStamp||Date.now(),r=parseFloat(t.elapsedTime.toFixed(3));Math.max(n-E,0)>=y&&r>=w&&($=!0,H())}function z(){if(p)return;if(!u.parentNode)return void H();const s=function(e){if($)f&&e&&(f=!1,H());else if(f=!e,M.animationDuration){const e=wt(u,f);f?h.push(e):function(e,t){const n=e.indexOf(t);t>=0&&e.splice(n,1)}(h,e)}},i=L>0&&(M.transitionDuration&&0===N.transitionDuration||M.animationDuration&&0===N.animationDuration)&&Math.max(N.animationDelay,N.transitionDelay);function d(){if(p)return;if(F(!1),h.forEach(e=>{const t=e[0];u.style[t]=e[1]}),r(n,c),n.classList.add(...e.split(" ").filter(e=>""!==e)),D.recalculateTimingStyles){if(R=t.cacheKey(u,x,c.addClass,c.removeClass),M=o(u,R,!1),P=M.maxDelay,v=Math.max(P,0),w=M.maxDuration,0===w)return void H();D.hasTransitions=M.transitionDuration>0,D.hasAnimations=M.animationDuration>0}if(D.applyAnimationDelay&&(P="boolean"!=typeof c.delay&&da(c.delay)?parseFloat(c.delay):P,v=Math.max(P,0),M.animationDelay=P,a=ua(P,!0),h.push(a),u.style[a[0]]=a[1]),y=v*aa,b=w*aa,c.easing){let e;const t=c.easing;D.hasTransitions&&(e=tt+ct,h.push([e,t]),u.style[e]=t),D.hasAnimations&&(e=rt+ct,h.push([e,t]),u.style[e]=t)}M.transitionDuration&&C.push(nt),M.animationDuration&&C.push(st),E=Date.now();const s=y+1.5*b,i=E+s,d=It(n,oa)||[];let f=!0;if(d.length){const e=d[0];f=i>e.expectedEndTime,f?clearTimeout(e.timer):d.push(H)}if(f){const e=setTimeout(m,s,!1);d[0]={timer:e,expectedEndTime:i},d.push(H),Ut(n,oa,d)}C.length&&C.forEach(e=>{n.addEventListener(e,B)}),c.to&&(c.cleanupStyles&&fa(l,u,Object.keys(c.to)),vt(n,c))}function m(){const e=It(n,oa);if(e){for(let t=1;t<e.length;t++)e[t]();Rt(n,oa)}}i?setTimeout(d,Math.floor(i*L*aa),!1):d(),g.resume=function(){s(!0)},g.pause=function(){s(!1)}}}}]}function ma(e,t){const n=t?`-${t}s`:"";return bt(e,[ht,n]),[ht,n]}const ga="data-ng-animate",va="$ngAnimatePin";function ya(e){const t=this.rules={skip:[],cancel:[],join:[]};function n(e){return{addClass:e.addClass,removeClass:e.removeClass,from:e.from,to:e.to}}function r(e,t){if(e&&t){const n=function(e){if(!e)return null;const t=e.split(" "),n=Object.create(null);return t.forEach(e=>{n[e]=!0}),n}(t);return e.split(" ").some(e=>n[e])}}function s(e,n,r){return t[e].some(e=>e(n,r))}function i(e,t){const n=(e.addClass||"").length>0,r=(e.removeClass||"").length>0;return t?n&&r:n||r}t.join.push(e=>!e.structural&&i(e)),t.skip.push(e=>!e.structural&&!i(e)),t.skip.push((e,t)=>"leave"===t.event&&e.structural),t.skip.push((e,t)=>t.structural&&2===t.state&&!e.structural),t.cancel.push((e,t)=>t.structural&&e.structural),t.cancel.push((e,t)=>2===t.state&&e.structural),t.cancel.push((e,t)=>{if(t.structural)return!1;const n=e.addClass,s=e.removeClass,i=t.addClass,o=t.removeClass;return!(E(n)&&E(s)||E(i)&&E(o))&&(r(n,o)||r(s,i))}),this.$get=[sn.$rootScope,sn.$injector,sn.$$animation,sn.$templateRequest,function(t,r,o,a){const c=new Map,l=new Map;t.templateRequest=a;const u=t.$watch("$templateRequest.totalPendingRequests",e=>{0===e&&(u(),t.$templateRequest=void 0,t.$postUpdate(()=>{t.$postUpdate(()=>{})}))},!0),h=Object.create(null),d=e.customFilter(),p=e.classNameFilter(),f=function(){return!0},$=d||f,m=p?function(e,t){const n=[e.getAttribute("class"),t.addClass,t.removeClass].join(" ");return p.test(n)}:f,g=function(e,t){t.addClass&&(e.classList.add(...t.addClass.trim().split(" ")),t.addClass=null),t.removeClass&&(e.classList.remove(...t.removeClass.trim().split(" ")),t.removeClass=null)};function v(e,t){return yt(e,t,{})}function y(e,t,n){const r=ft(t);return e.filter(e=>!(e.node===r&&(!n||e.callback===n)))}function w(e,t){"close"!==e||t.parentNode||b.off(t)}const b={on(e,t,n){const r=ft(t);h[e]=h[e]||[],h[e].push({node:r,callback:n}),t.addEventListener("$destroy",()=>{c.get(r)||b.off(e,t,n)})},off(e,t,n){if(1===arguments.length&&!S(arguments[0])){t=arguments[0];for(const e in h)h[e]=y(h[e],t);return}const r=h[e];r&&(h[e]=1===arguments.length?null:y(r,t,n))},pin(e,t){Ut(e,va,t)},push:(e,a,u,d)=>((u=u||{}).domOperation=d,function(e,a,u){let d=u,p=Array.isArray(e)?e.filter(e=>"#comment"!==e.nodeName)[0]:e;const f=p,y=f&&f.parentNode;d=$t(d);const b=new ia,k=function(){let e=!1;return function(n){e?n():t.$postUpdate(()=>{e=!0,n()})}}();Array.isArray(d.addClass)&&(d.addClass=d.addClass.join(" "));d.addClass&&!S(d.addClass)&&(d.addClass=null);Array.isArray(d.removeClass)&&(d.removeClass=d.removeClass.join(" "));d.removeClass&&!S(d.removeClass)&&(d.removeClass=null);d.from&&!x(d.from)&&(d.from=null);d.to&&!x(d.to)&&(d.to=null);if(!f||!$(f,a,u)||!m(f,d))return P(),b;const T=["enter","move","leave"].indexOf(a)>=0;let _=document.hidden||l.get(f);const N=!_&&c.get(f)||{},j=!!N.state;_||j&&1===N.state||(_=!function(e,t){const n=document.body,s=r.get("$rootElement");let i,o=e===n||"HTML"===e.nodeName,a=e===s,u=!1,h=l.get(e),d=Dt(e,va);d&&(t=d);for(;t&&(a||(a=t===s),t.nodeType===Node.ELEMENT_NODE);){const e=c.get(t)||{};if(!u){const n=l.get(t);if(!0===n&&!1!==h){h=!0;break}!1===n&&(h=!1),u=e.structural}if(E(i)||!0===i){const e=Dt(t,et);C(e)&&(i=e)}if(u&&!1===i)break;if(o||(o=t===n),o&&a)break;t=a||(d=Dt(t,va),!d)?t.parentNode:d}return(!u||i)&&!0!==h&&a&&o}(f,y));if(_)return document.hidden&&M(b,a,"start",n(d)),P(),document.hidden&&M(b,a,"close",n(d)),b;T&&function(e){const t=e.querySelectorAll(`[${ga}]`);t.forEach(e=>{const t=parseInt(e.getAttribute(ga),10),n=c.get(e);if(n)switch(t){case 2:n.runner.end();case 1:c.delete(e)}})}(f);const R={structural:T,element:p,event:a,addClass:d.addClass,removeClass:d.removeClass,close:P,options:d,runner:b};if(j){if(s("skip",R,N))return 2===N.state?(P(),b):(yt(p,N,R),N.runner);if(s("cancel",R,N))if(2===N.state)N.runner.end();else{if(!N.structural)return yt(p,N,R),N.runner;N.close()}else{if(s("join",R,N)){if(2!==N.state)return function(e,t,n){let r="";t&&(r=pt(t,"ng-",!0)),n.addClass&&(r=Et(r,pt(n.addClass,Je))),n.removeClass&&(r=Et(r,pt(n.removeClass,Ze))),r.length&&(n.preparationClasses=r,e.className+=` ${r}`)}(p,T?a:null,d),a=R.event=N.event,d=yt(p,N,R),N.runner;v(p,R)}}}else v(p,R);let L=R.structural;L||(L="animate"===R.event&&Object.keys(R.options.to||{}).length>0||i(R));if(!L)return P(),O(f),b;const V=(N.counter||0)+1;return R.counter=V,A(f,1,R),t.$postUpdate(()=>{p=function(e){return e instanceof NodeList?Array.from(e).filter(e=>e.nodeType===Node.ELEMENT_NODE):e.nodeType===Node.ELEMENT_NODE?e:void 0}(e);let t=c.get(f);const r=!t;t=t||{};const s=(p.parentElement||[])&&("animate"===t.event||t.structural||i(t));if(r||t.counter!==V||!s)return r&&(g(p,d),mt(p,d)),(r||T&&t.event!==a)&&(d.domOperation(),b.end()),void(s||O(f));a=!t.structural&&i(t,!0)?"setClass":t.event,A(f,2);const l=o(p,a,t.options);b.setHost(l),M(b,a,"start",n(d)),l.done(e=>{P(!e),c.get(f)?.counter===V&&O(f),M(b,a,"close",n(d))})}),setTimeout(t.$flushQueue,0),b;function M(e,t,n,r){k(()=>{const e=function(e,t,n){const r=[],s=h[n];return s&&s.forEach(s=>{(s.node.contains(t)||"leave"===n&&s.node.contains(e))&&r.push(s.callback)}),r}(y,f,t);e.length?(e.forEach(e=>{e(p,n,r)}),w(n,f)):w(n,f)}),e.progress(t,n,r)}function P(e){!function(e,t){t.preparationClasses&&(t.preparationClasses.split(" ").forEach(t=>e.classList.remove(t)),t.preparationClasses=null),t.activeClasses&&(t.activeClasses.split(" ").forEach(t=>e.classList.remove(t)),t.activeClasses=null)}(p,d),g(p,d),mt(p,d),d.domOperation(),b.complete(!e)}}(e,a,u))};return b;function O(e){e.removeAttribute(ga),c.delete(e)}function A(e,t,n){(n=n||{}).state=t,e.setAttribute(ga,t);const r=c.get(e),s=r?H(r,n):n;c.set(e,s)}}]}function wa(e){this.$get=[sn.$injector,function(t){const n=function(e,t){t.addClass&&(e.classList.add(...t.addClass.trim().split(" ")),t.addClass=null),t.removeClass&&(e.classList.remove(...t.removeClass.trim().split(" ")),t.removeClass=null)};return function(r,s,i,o){let a=!1;3===arguments.length&&x(i)&&(o=i,i=null),o=$t(o),i||(i=r.getAttribute("class")||"",o.addClass&&(i+=` ${o.addClass}`),o.removeClass&&(i+=` ${o.removeClass}`));const c=o.addClass,l=o.removeClass,u=function(n){n=Array.isArray(n)?n:n.split(" ");const r=[],s={};for(let i=0;i<n.length;i++){const o=n[i],a=e.$$registeredAnimations[o];a&&!s[o]&&(r.push(t.get(a)),s[o]=!0)}return r}(i);let h,d,p;if(u.length){let e,t;"leave"===s?(t="leave",e="afterLeave"):(t=`before${s.charAt(0).toUpperCase()}${s.substring(1)}`,e=s),"enter"!==s&&"move"!==s&&(h=g(r,s,o,u,t)),d=g(r,s,o,u,e)}if(h||d)return{$$willAnimate:!0,end:()=>(p?p.end():($(),p=new ia,p.complete(!0)),p),start(){if(p)return p;p=new ia;const e=[];if(h){const t=new ia({end(e){(h(e)||(()=>{}))()},cancel(){(h(!0)||(()=>{}))()}});e.push(t)}if(e.length){const t=new ia({end(e){f(),e(!0)},cancel(){f()}});e.push(t)}else f();if(d){const t=new ia({end(e){(d(e)||(()=>{}))()},cancel(){(d(!0)||(()=>{}))()}});e.push(t)}return p.setHost({end(){n()},cancel(){n(!0)}}),ia.chain(e,t),p;function t(e){$(),p.complete(e)}function n(e){a||t(e)}}};function f(){o.domOperation(),n(r,o)}function $(){a=!0,f(),mt(r,o)}function m(e,t,n,r,s){const i=[];return r.forEach(r=>{const o=r[s];o&&i.push(()=>{const r=new ia({end(){a()},cancel(){a(!0)}}),s=function(e,t,n,r,s){let i;switch(n){case"animate":i=[t,r.from,r.to,s];break;case"setClass":i=[t,c,l,s];break;case"addClass":i=[t,c,s];break;case"removeClass":i=[t,l,s];break;default:i=[t,s]}i.push(r);let o=e.apply(e,i);if(o)if(j(o.start)&&(o=o.start()),o instanceof ia)o.done(s);else if(j(o))return o;return()=>{}}(o,e,t,n,e=>{a(!1===e)});let i=!1;const a=function(e){i||(i=!0,(s||(()=>{}))(e),r.complete(!e))};return r})}),i}function g(e,t,n,r,s){let i=m(e,t,n,r,s);if(0===i.length){let t,o;"beforeSetClass"===s?(t=m(e,"removeClass",n,r,"beforeRemoveClass"),o=m(e,"addClass",n,r,"beforeAddClass")):"setClass"===s&&(t=m(e,"removeClass",n,r,"removeClass"),o=m(e,"addClass",n,r,"addClass")),t&&(i=i.concat(t)),o&&(i=i.concat(o))}if(0!==i.length)return function(e){const t=[];return i.length&&i.forEach(e=>{t.push(e())}),t.length?ia.all(t,e):e(),function(e){t.forEach(t=>{e?t.cancel():t.end()})}}}}}]}ya.$inject=["$animateProvider"],wa.$inject=[`${sn.$animate}Provider`];const ba="$$animationRunner",Ea="$$animatePrepareClasses";function Ca(){const e="ng-animate-ref",t=this.drivers=[];function n(e){!function(e,t){if(Mt(e)){const n=Lt(e,!1),r=n?.data;r&&Ae(r,Nt(t))&&delete r[Nt(t)]}}(e,ba)}function r(e){return It(e,ba)}this.$get=[sn.$rootScope,sn.$injector,sn.$$rAFScheduler,sn.$$animateCache,function(s,i,o,a){const c=[],l=function(e,t){t.addClass&&(e.classList.add(...t.addClass.trim().split(" ")),t.addClass=null),t.removeClass&&(e.classList.remove(...t.removeClass.trim().split(" ")),t.removeClass=null)};return function(u,h,d){d=$t(d);const p=["enter","move","leave"].indexOf(h)>=0,f=new ia({end(){v()},cancel(){v(!0)}});if(!t.length)return v(),f;let $=Ee(u.getAttribute("class"),Ee(d.addClass,d.removeClass)),{tempClasses:m}=d;return m&&($+=` ${m}`,d.tempClasses=null),p&&Ut(u,Ea,`ng-${h}-prepare`),function(e,t){Ut(e,ba,t)}(u,f),c.push({element:u,classes:$,event:h,structural:p,options:d,beforeStart:function(){m=(m?`${m} `:"")+Ye,u.className+=` ${m}`;let e=It(u,Ea);e&&(u.classList.remove(e),e=null)},close:v}),u.addEventListener("$destroy",function(){("leave"!==h||!d.$$domOperationFired)&&r(u)?.end()}),c.length>1||s.$postUpdate(()=>{const n=[];c.forEach(e=>{r(e.element)?n.push(e):e.close()}),c.length=0;const s=function(t){const n=[],r={};t.forEach((t,s)=>{const{element:i,event:o}=t,a=i,c=["enter","move"].indexOf(o)>=0,l=t.structural?function(t){const n=`[${e}]`,r=t.hasAttribute(e)?[t]:t.querySelectorAll(n),s=[];return r.forEach(t=>{const n=t.getAttribute(e);n&&n.length&&s.push(t)}),s}(a):[];if(l.length){const t=c?"to":"from";l.forEach(n=>{const i=n.getAttribute(e);r[i]=r[i]||{},r[i][t]={animationID:s,element:n}})}else n.push(t)});const s={},i={};return Object.values(r).forEach(e=>{const{from:r}=e,{to:o}=e;if(!r||!o){const e=r?r.animationID:o.animationID,i=e.toString();return void(s[i]||(s[i]=!0,n.push(t[e])))}const a=t[r.animationID],c=t[o.animationID],l=r.animationID.toString();if(!i[l]){const e=i[l]={structural:!0,beforeStart(){a.beforeStart(),c.beforeStart()},close(){a.close(),c.close()},classes:g(a.classes,c.classes),from:a,to:c,anchors:[]};e.classes.length?n.push(e):(n.push(a),n.push(c))}i[l].anchors.push({out:r.element,in:o.element})}),n}(n),l=[];s.forEach(e=>{const n=e.from?e.from.element:e.element;let s=d.addClass;s=(s?`${s} `:"")+Ye;const o=a.cacheKey(n,e.event,s,d.removeClass);l.push({element:n,domNode:n,fn:function(){let n;const s=e.close;if(a.containsCachedAnimationWithoutDuration(o))return void s();e.beforeStart();if(r(e.anchors?e.from.element||e.to.element:e.element)){const r=function(e){for(let n=t.length-1;n>=0;n--){const r=t[n],s=i.get(r)(e);if(s)return s}return}(e);r&&(n=r.start)}if(n){const t=n();t.done(e=>{s(!e)}),function(e,t){e.from&&e.to?(n(e.from.element),n(e.to.element)):n(e.element);function n(e){r(e).setHost(t)}}(e,t)}else s()}})});const u=function(e){const t={children:[]};let n;const r=new Map;for(n=0;n<e.length;n++){const t=e[n];r.set(t.domNode,e[n]={domNode:t.domNode,element:t.element,fn:t.fn,children:[]})}for(n=0;n<e.length;n++)s(e[n]);return function(e){const t=[],r=[];for(n=0;n<e.children.length;n++)r.push(e.children[n]);let s=r.length,i=0,o=[];for(let e=0;e<r.length;e++){const n=r[e];s<=0&&(s=i,i=0,t.push(o),o=[]),o.push(n),n.children.forEach(e=>{i++,r.push(e)}),s--}return o.length&&t.push(o),t}(t);function s(e){if(e.processed)return e;e.processed=!0;const n=e.domNode;let i,{parentNode:o}=n;for(r.set(n,e);o;){if(i=r.get(o),i){i.processed||(i=s(i));break}o=o.parentNode}return(i||t).children.push(e),e}}(l);for(let e=0;e<u.length;e++){const t=u[e];for(let n=0;n<t.length;n++){const r=t[n],{element:s}=r;if(u[e][n]=r.fn,0===e){Rt(s,Ea);continue}const i=It(s,Ea);i&&s.classList.add(i)}}o(u)}),f;function g(e,t){e=e.split(" "),t=t.split(" ");const n=[];for(let r=0;r<e.length;r++){const s=e[r];if("ng-"!==s.substring(0,3))for(let e=0;e<t.length;e++)if(s===t[e]){n.push(s);break}}return n.join(" ")}function v(e){n(u),l(u,d),mt(u,d),d.domOperation(),m&&m.split(" ").forEach(e=>u.classList.remove(e)),f.complete(!e)}}}]}class xa{constructor(){this.queue=[],this.cancelFn=null}nextTick(){if(!this.queue.length)return;this.queue.shift().forEach(e=>e()),this.cancelFn||(this.cancelFn=window.requestAnimationFrame(()=>{this.cancelFn=null,this.nextTick()}))}$get(){const e=e=>{this.queue=this.queue.concat(e),this.nextTick()};return e.queue=this.queue,e.waitUntilQuiet=e=>{null!==this.cancelFn&&(window.cancelAnimationFrame(this.cancelFn),this.cancelFn=null),this.cancelFn=window.requestAnimationFrame(()=>{this.cancelFn=null,e(),this.nextTick()})},e}}const Sa="$animId";let Oa=0;const Aa=new Map;function ka(){return{cacheKey(e,t,n,r){const{parentNode:s}=e,i=[s[Sa]??(s[Sa]=++Oa),t,e.getAttribute("class")];return n&&i.push(n),r&&i.push(r),i.join(" ")},containsCachedAnimationWithoutDuration(e){const t=Aa.get(e);return!!t&&!t.isValid},flush(){Aa.clear()},count:e=>Aa.get(e)?.total??0,get:e=>Aa.get(e)?.value,put(e,t,n){const r=Aa.get(e);r?(r.total++,r.value=t):Aa.set(e,{total:1,value:t,isValid:n})}}}function Ta(){this.$get=[ka]}const _a="ng-animate-shim",Na="ng-anchor",ja="ng-anchor-out",Ra="ng-anchor-in";function La(e){e.drivers.push("$$animateCssDriver"),this.$get=["$animateCss","$rootElement",function(e,t){const n=document.body,r=t,s=(i=r).parentNode&&11===i.parentNode.nodeType||n.contains(r)?r:n;var i;return function(t){return t.from&&t.to?function(t,r,i){const a=o(t),c=o(r),l=[];return i.forEach(t=>{const r=function(t,r){const i=t.cloneNode(!0),o=Va(d(i));let a;t[0].classList.add(_a),r[0].classList.add(_a),i.classList.add(Na),s.append(i);const c=h();if(!c&&(a=p(),!a))return f();const l=c||a;return{start(){const e=new ia({end:n,cancel:n});let t=l.start();return t.done(()=>{if(t=null,!a&&(a=p(),a))return t=a.start(),t.done(()=>{t=null,f(),e.complete()}),t;f(),e.complete()}),e;function n(){t&&t.end()}}};function u(e){const t={},r=e.getBoundingClientRect();return["width","height","top","left"].forEach(e=>{let s=r[e];switch(e){case"top":s+=n.scrollTop;break;case"left":s+=n.scrollLeft}t[e]=`${Math.floor(s)}px`}),t}function h(){const n=e(i,{addClass:ja,delay:!0,from:u(t)});return n.$$willAnimate?n:null}function d(e){return e.getAttribute("class")||""}function p(){const t=Va(d(r)),n=Ma(t,o),s=Ma(o,t),a=e(i,{to:u(r),addClass:`${Ra} ${n}`,removeClass:`${ja} ${s}`,delay:!0});return a.$$willAnimate?a:null}function f(){i.remove(),t[0].classList.remove(_a),r[0].classList.remove(_a)}}(t.out,t.in);r&&l.push(r)}),a||c||0!==l.length?{start(){const e=[];a&&e.push(a.start()),c&&e.push(c.start()),l.forEach(t=>{e.push(t.start())});const t=new ia({end:n,cancel:n});return ia.all(e,e=>{t.complete(e)}),t;function n(){e.forEach(e=>{e.end()})}}}:void 0}(t.from,t.to,t.anchors):o(t)};function o(t){const n=t.options||{};t.structural&&(n.event=t.event,n.structural=!0,n.applyClassesEarly=!0,"leave"===t.event&&(n.onDone=n.domOperation)),n.preparationClasses&&(n.event=Et(n.event,n.preparationClasses));const r=e(t.element,n);return r.$$willAnimate?r:null}}]}function Va(e){return e.replace(/\bng-\S+\b/g,"")}function Ma(e,t){return S(e)&&(e=e.split(" ")),S(t)&&(t=t.split(" ")),e.filter(e=>-1===t.indexOf(e)).join(" ")}function Pa(e){e.drivers.push("$$animateJsDriver"),this.$get=["$$animateJs",function(e){return function(e){if(e.from&&e.to){const n=t(e.from),r=t(e.to);if(!n&&!r)return;return{start(){const e=[];n&&e.push(n.start()),r&&e.push(r.start()),ia.all(e,function(e){t.complete(e)});const t=new ia({end:s(),cancel:s()});return t;function s(){return function(){e.forEach(e=>{e.end()})}}}}}return t(e)};function t(t){const{element:n,event:r,options:s,classes:i}=t;return e(n,r,i,s)}}]}function Da(e){return{restrict:"A",transclude:"element",terminal:!0,priority:550,link(t,n,r,s,i){let o,a;t.$watch(r.ngAnimateSwap||r.for,t=>{o&&e.leave(o),a&&(a.$destroy(),a=null),t&&i((t,r)=>{o=t,a=r,e.enter(t,null,n)})})}}}function Ua(e){return{link(t,n,r){const s=r.ngAnimateChildren;function i(e){Ut(n,et,e="on"===e||"true"===e)}S(s)&&0===s.length?Ut(n,et,!0):(i(e(s)(t)),r.$observe("ngAnimateChildren",i))}}}function Ia(e,t){if(e===t)return!0;if(null===e||null===t)return!1;if(Number.isNaN(e)&&Number.isNaN(t))return!0;const n=typeof e;if(n!==typeof t||"object"!==n)return!1;const r=[e,t];if(r.every(Array.isArray))return function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Ia(e[n],t[n]))return!1;return!0}(e,t);if(r.every(_))return e.getTime()===t.getTime();if(r.every(R))return e.toString()===t.toString();if(r.every(j))return!0;if([j,Array.isArray,_,R].some(e=>!!e(r)))return!1;const s={};for(const n in e){if(!Ia(e[n],t[n]))return!1;s[n]=!0}for(const e in t)if(!s[e])return!1;return!0}function Ha(e,t){const n=Object.create(e);return t&&Object.assign(n,t),n}function Fa(e,t){const n=e.indexOf(t);return-1!==n&&e.splice(n,1),e}function qa(e,...t){const n=Object.assign({},...t.reverse());return Object.assign(n,Ba(e||{},Object.keys(n)))}function Ba(e,t){const n={};for(const r in e)-1!==t.indexOf(r)&&(n[r]=e[r]);return n}function za(e,t){return Object.keys(e).filter(e=>!t.includes(e)).reduce((t,n)=>(t[n]=e[n],t),{})}function Wa(e,t){const n=Array.isArray(e),r=n?[]:{},s=n?e=>r.push(e):(e,t)=>r[t]=e;return Object.entries(e).forEach(([e,n])=>{t(n,e)&&s(n,e)}),r}function Ka(e,t){let n;return Object.entries(e).forEach(([e,r])=>{n||t(r,e)&&(n=r)}),n}function Qa(e,t,n){return n=n||(Array.isArray(e)?[]:{}),Object.entries(e).forEach(([e,r])=>n[e]=t(r,e)),n}La.$inject=["$$animationProvider"],Pa.$inject=["$$animationProvider"],Da.$inject=[sn.$animate],Ua.$inject=[sn.$interpolate];const Ga=(e,t)=>e&&t,Ja=(e,t)=>e||t,Za=(e,t)=>e.concat(t);function Xa(e,t){return e.push(t),e}const Ya=(e,t)=>e.includes(t)?e:Xa(e,t),ec=e=>e.reduce(Za,[]),tc=function(e,t="assert failure"){return n=>{const r=e(n);if(!r)throw new Error(t);return r}};function nc(...e){if(0===e.length)return[];const t=e.reduce((e,t)=>Math.min(t.length,e),Number.MAX_SAFE_INTEGER),n=[];for(let r=0;r<t;r++)switch(e.length){case 1:n.push([e[0][r]]);break;case 2:n.push([e[0][r],e[1][r]]);break;case 3:n.push([e[0][r],e[1][r],e[2][r]]);break;case 4:n.push([e[0][r],e[1][r],e[2][r],e[3][r]]);break;default:n.push(e.map(e=>e[r]))}return n}function rc(e,t){let n,r;if(Array.isArray(t)&&([n,r]=t),!S(n))throw new Error("invalid parameters to applyPairs");return e[n]=r,e}function sc(e){return e.length>0?e[e.length-1]:void 0}function ic(e,t){return t&&Object.keys(t).forEach(e=>delete t[e]),t||(t={}),Object.assign(t,e)}const oc=e=>e.catch(()=>0)&&e,ac=e=>oc(Promise.reject(e));function cc(e){const t=(...n)=>n.length>=e.length?e(...n):(...e)=>t(...n,...e);return t}const lc=cc((e,t,n)=>n&&n[e]===t),uc=e=>{const t=e.split(".");return e=>t.reduce((e,t)=>e&&e[t],e)};function hc(e){return function(t){return null!=t&&t.constructor===e||t instanceof e}}const dc=e=>()=>e;function pc(e){return function(t){for(let n=0;n<e.length;n++)if(e[n][0](t))return e[n][1](t)}}class fc{constructor(e){this.pattern=/.*/,this.inherit=!0,Object.assign(this,e),this.name=void 0}is(e){return!!e}encode(e){return e}decode(e){return e}equals(e,t){return e===t}$subPattern(){const e=this.pattern.toString();return e.substring(1,e.length-2)}toString(){return`{ParamType:${this.name}}`}$normalize(e){return this.is(e)?e:this.decode(e)}$asArray(e,t){if(!e)return this;if("auto"===e&&!t)throw new Error("'auto' array mode is for query parameters only");return new $c(this,e)}}function $c(e,t){function n(e){return Array.isArray(e)?e:C(e)?[e]:[]}function r(e,r){return function(s){if(Array.isArray(s)&&0===s.length)return s;const i=Qa(n(s),e);return!0===r?0===Wa(i,e=>!e).length:function(e){switch(e.length){case 0:return;case 1:return"auto"===t?e[0]:e;default:return e}}(i)}}function s(e){return function(t,r){const s=n(t),i=n(r);if(s.length!==i.length)return!1;for(let t=0;t<s.length;t++)if(!e(s[t],i[t]))return!1;return!0}}["encode","decode","equals","$normalize"].forEach(t=>{const n=e[t].bind(e),i="equals"===t?s:r;this[t]=i(n)}),Object.assign(this,{dynamic:e.dynamic,name:e.name,pattern:e.pattern,inherit:e.inherit,raw:e.raw,is:r(e.is.bind(e),!0),$arrayMode:t})}class mc{constructor(){this.enqueue=!0,this.typeQueue=[],this.defaultTypes=Ba(mc.prototype,["hash","string","query","path","int","bool","date","json","any"]);this.types=Ha(Qa(this.defaultTypes,(e,t)=>new fc(Object.assign({name:t},e))),{})}type(e,t,n){if(!C(t))return this.types[e];if(Ae(this.types,e))throw new Error(`A type named '${e}' has already been defined.`);return this.types[e]=new fc(Object.assign({name:e},t)),n&&(this.typeQueue.push({name:e,def:n}),this.enqueue||this._flushTypeQueue()),this}_flushTypeQueue(){for(;this.typeQueue.length;){const e=this.typeQueue.shift();if(e.pattern)throw new Error("You cannot override a type's .pattern at runtime.");Object.assign(this.types[e.name],window.angular.$injector.invoke(e.def))}}}!function(){const e=e=>{const t=e=>A(e)?e:e.toString(),n={encode:t,decode:t,is:hc(String),pattern:/.*/,equals:(e,t)=>e===t};return Object.assign({},n,e)};Object.assign(mc.prototype,{string:e({}),path:e({pattern:/[^/]*/}),query:e({}),hash:e({inherit:!1}),int:e({decode:e=>parseInt(e,10),is(e){return!A(e)&&this.decode(e.toString())===e},pattern:/-?\d+/}),bool:e({encode:e=>e?1:0,decode:e=>0!==parseInt(e,10),is:hc(Boolean),pattern:/[01]/}),date:e({encode(e){return this.is(e)?[e.getFullYear(),`0${e.getMonth()+1}`.slice(-2),`0${e.getDate()}`.slice(-2)].join("-"):void 0},decode(e){if(this.is(e))return e;const t=this.capture.exec(e);return t?new Date(t[1],t[2]-1,t[3]):void 0},is:e=>e instanceof Date&&!isNaN(e.valueOf()),equals:(e,t)=>["getFullYear","getMonth","getDate"].reduce((n,r)=>n&&e[r]()===t[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:e({encode:JSON.stringify,decode:JSON.parse,is:hc(Object),equals:Ia,pattern:/[^/]*/}),any:e({encode:e=>e,decode:e=>e,is:()=>!0,equals:Ia})})}();class gc{constructor(){this.paramTypes=new mc,this._isCaseInsensitive=!1,this._isStrictMode=!0,this._defaultSquashPolicy=!1;const e=this.type("path");e.encode=e=>A(e)?e:e.toString().replace(/([~/])/g,e=>({"~":"~~","/":"~2F"}[e])),e.decode=e=>A(e)?e:e.toString().replace(/(~~|~2F)/g,e=>({"~~":"~","~2F":"/"}[e])),this.paramTypes.enqueue=!1,this.paramTypes._flushTypeQueue()}$get=()=>this;caseInsensitive(e){return this._isCaseInsensitive=C(e)?e:this._isCaseInsensitive}defaultSquashPolicy(e){if(C(e)&&!0!==e&&!1!==e&&!S(e))throw new Error(`Invalid squash policy: ${e}. Valid policies: false, true, arbitrary-string`);return this._defaultSquashPolicy=C(e)?e:this._defaultSquashPolicy}strictMode(e){return this._isStrictMode=C(e)?e:this._isStrictMode}type(e,t,n){const r=this.paramTypes.type(e,t,n);return C(t)?this:r}}class vc{constructor(e={}){Object.assign(this,e)}$inherit(e,t,n){const r=function(e,t){const n=[];for(const r in e.path){if(e.path[r]!==t.path[r])break;n.push(e.path[r])}return n}(t,n),s={},i=[];for(const e in r){if(!r[e]||!r[e].params)continue;const t=r[e].params,n=Object.keys(t);if(n.length)for(const e in n)!1===t[n[e]].inherit||i.indexOf(n[e])>=0||(i.push(n[e]),s[n[e]]=this[n[e]])}return Object.assign({},s,e)}}class yc{constructor(e=[],t=null){this._items=Array.isArray(e)?[...e]:[],this._limit=Number.isInteger(t)&&t>0?t:null,this._evictListeners=[]}onEvict(e){this._evictListeners.push(e)}enqueue(e){return this._items.push(e),null!==this._limit&&this._items.length>this._limit&&this.evict(),e}evict(){const e=this._items.shift();return void 0!==e&&this._evictListeners.forEach(t=>t(e)),e}dequeue(){return this._items.length>0?this._items.shift():void 0}clear(){const e=[...this._items];return this._items.length=0,e}size(){return this._items.length}remove(e){const t=this._items.indexOf(e);return-1!==t&&this._items.splice(t,1)[0]}peekTail(){return this._items[this._items.length-1]}peekHead(){return this._items[0]}}class wc{constructor(){this.params=new vc,this.lastStartedTransitionId=-1,this.transitionHistory=new yc([],1),this.successfulTransitions=new yc([],1),this.current=void 0,this.$current=void 0,this.transition=void 0}$get=()=>this}function bc(e,t){return t.length<=e?t:`${t.substring(0,e-3)}...`}function Ec(e){const t=Cc(e),n=t.match(/^(function [^ ]+\([^)]*\))/),r=n?n[1]:t,s=e.name||"";return s&&r.match(/function \(/)?`function ${s}${r.substring(9)}`:r}function Cc(e){const t=Array.isArray(e)?e.slice(-1)[0]:e;return t&&t.toString()||"undefined"}function xc(e){const t=[],n=pc([[E,dc("undefined")],[O,dc("null")],[p,dc("[Promise]")],[e=>e&&"function"==typeof e.then&&"Rejection"===e.constructor.name,e=>e._transitionRejection.toString()],[e=>x(e)&&!Array.isArray(e)&&e.constructor!==Object&&j(e.toString),e=>e.toString()],[d,Ec],[dc(!0),e=>e]]);function r(e){if(x(e)){if(-1!==t.indexOf(e))return"[circular ref]";t.push(e)}return n(e)}return E(e)?r(e):JSON.stringify(e,(e,t)=>r(t)).replace(/\\"/g,'"')}function Sc(e,t){return S(sc(e))&&S(t)?e.slice(0,-1).concat(sc(e)+t):Xa(e,t)}function Oc(e){if(!e)return"ng-view (defunct)";const t=e.creationContext?e.creationContext.name||"(root)":"(none)";return`[ng-view#${e.id}:${e.fqn} (${e.name}@${t})]`}function Ac(e){return T(e)?kc[e]:kc[kc[e]]}const kc={RESOLVE:0,TRANSITION:1,HOOK:2,UIVIEW:3,VIEWCONFIG:4},Tc=uc("$id"),_c=uc("router.$id"),Nc=e=>`Transition #${Tc(e)}-${_c(e)}`;const jc=new class{constructor(){this._enabled={},this.approximateDigests=0,this.$logger=window.angular?.$injector?.get(sn.$log)}_set(e,t){t.length||(t=Object.keys(kc).map(e=>parseInt(e,10)).filter(e=>!isNaN(e)).map(e=>kc[e])),t.map(Ac).forEach(t=>this._enabled[t]=e)}enable(...e){this._set(!0,e)}disable(...e){this._set(!1,e)}enabled(e){return!!this._enabled[Ac(e)]}traceTransitionStart(e){this.enabled(kc.TRANSITION)&&this.$logger.log(`${Nc(e)}: Started -> ${xc(e)}`)}traceTransitionIgnored(e){this.enabled(kc.TRANSITION)&&this.$logger.log(`${Nc(e)}: Ignored <> ${xc(e)}`)}traceHookInvocation(e,t,n){if(!this.enabled(kc.HOOK))return;const r=uc("traceData.hookType")(n)||"internal",s=uc("traceData.context.state.name")(n)||uc("traceData.context")(n)||"unknown",i=Ec(e.registeredHook.callback);this.$logger.log(`${Nc(t)}: Hook -> ${r} context: ${s}, ${bc(200,i)}`)}traceHookResult(e,t){this.enabled(kc.HOOK)&&this.$logger.log(`${Nc(t)}: <- Hook returned: ${bc(200,xc(e))}`)}traceResolvePath(e,t,n){this.enabled(kc.RESOLVE)&&this.$logger.log(`${Nc(n)}: Resolving ${e} (${t})`)}traceResolvableResolved(e,t){this.enabled(kc.RESOLVE)&&this.$logger.log(`${Nc(t)}: <- Resolved ${e} to: ${bc(200,xc(e.data))}`)}traceError(e,t){this.enabled(kc.TRANSITION)&&this.$logger.log(`${Nc(t)}: <- Rejected ${xc(t)}, reason: ${e}`)}traceSuccess(e,t){this.enabled(kc.TRANSITION)&&this.$logger.log(`${Nc(t)}: <- Success ${xc(t)}, final state: ${e.name}`)}traceUIViewEvent(e,t,n=""){this.enabled(kc.UIVIEW)&&this.$logger.log(`ng-view: ${function(e,t){for(;t.length<e;)t+=" ";return t}(30,e)} ${Oc(t)}${n}`)}traceUIViewConfigUpdated(e,t){this.enabled(kc.UIVIEW)&&this.traceUIViewEvent("Updating",e,` with ViewConfig from context='${t}'`)}traceUIViewFill(e,t){this.enabled(kc.UIVIEW)&&this.traceUIViewEvent("Fill",e,` with: ${bc(200,t)}`)}traceViewSync(e){if(!this.enabled(kc.VIEWCONFIG))return;const t="uiview component fqn",n="view config state (view name)",r=e.map(({ngView:e,viewConfig:r})=>{const s=e&&e.fqn,i=r&&`${r.viewDecl.$context.name}: (${r.viewDecl.$name})`;return{[t]:s,[n]:i}}).sort((e,n)=>(e[t]||"").localeCompare(n[t]||""));this.$logger.table(r)}traceViewServiceEvent(e,t){this.enabled(kc.VIEWCONFIG)&&this.$logger.log(`VIEWCONFIG: ${e} ${(e=>{const t=e.viewDecl,n=t.$context.name||"(root)";return`[View#${e.$id} from '${n}' state]: target ng-view: '${t.$ngViewName}@${t.$ngViewContextAnchor}'`})(t)}`)}traceViewServiceUIViewEvent(e,t){this.enabled(kc.VIEWCONFIG)&&this.$logger.log(`VIEWCONFIG: ${e} ${Oc(t)}`)}},Rc="LAZY",Lc="WAIT";class Vc{constructor(e,t,n,r,s){this.resolved=!1,this.promise=void 0,e instanceof Vc?Object.assign(this,e):j(t)?(he(!A(e),"token argument is required"),this.token=e,this.policy=r,this.resolveFn=t,this.deps=n||[],this.data=s,this.resolved=void 0!==s,this.promise=this.resolved?Promise.resolve(this.data):void 0):x(e)&&e.token&&(Ae(e,"resolveFn")||Ae(e,"data"))&&(this.token=e.token,this.resolveFn=e.resolveFn,this.deps=e.deps,this.policy=e.policy,this.data=e.data)}getPolicy(e){const t=this.policy||{},n=e&&e.resolvePolicy||{};return{when:t.when||n.when||Rc,async:t.async||n.async||Lc}}resolve(e,t){const n=e.findNode(this),r=n&&n.state,s=this.getPolicy(r).async,i=j(s)?s:e=>e;return this.promise=Promise.resolve().then(()=>Promise.all(e.getDependencies(this).map(n=>n.get(e,t)))).then(e=>this.resolveFn.apply(null,e)).then(i).then(e=>(this.data=e,this.resolved=!0,this.resolveFn=null,jc.traceResolvableResolved(this,t),this.data)),this.promise}get(e,t){return this.promise||this.resolve(e,t)}toString(){return`Resolvable(token: ${xc(this.token)}, requires: [${this.deps.map(xc)}])`}clone(){return new Vc(this)}}Vc.fromData=(e,t)=>new Vc(e,()=>t,null,null,t);class Mc{constructor(e,t,n,r){this._stateRegistry=e,this._identifier=t,this._identifier=t,this._params=Object.assign({},n||{}),this._options=Object.assign({},r||{}),this._definition=e.matcher.find(t,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 e=this.options().relative;if(!this._definition&&e){const t=e.name?e.name:e;return`Could not resolve '${this.name()}' from state '${t}'`}return this._definition?this._definition.self?void 0:`State '${this.name()}' has an invalid definition`:`No such state '${this.name()}'`}toString(){return`'${this.name()}'${xc(this.params())}`}withState(e){return new Mc(this._stateRegistry,e,this._params,this._options)}withParams(e,t=!1){const n=t?e:Object.assign({},this._params,e);return new Mc(this._stateRegistry,this._identifier,n,this._options)}withOptions(e,t=!1){const n=t?e:Object.assign({},this._options,e);return new Mc(this._stateRegistry,this._identifier,this._params,n)}}Mc.isDef=e=>e&&e.state&&(S(e.state)||x(e.state)&&S(e.state.name));const Pc=0,Dc=1,Uc=2;function Ic(e,t,n){const r=!1===n.reloadOnSearch&&t===Dc||void 0,s=Ka([n.dynamic,r],C),i=C(s)?{dynamic:s}:{},o=function(e){function t(){return e.value}e=(e=>0===["value","type","squash","array","dynamic"].filter(Object.prototype.hasOwnProperty.bind(e||{})).length)(e)?{value:e}:e,t.__cacheable=!0;const n=d(e.value)?e.value:t;return Object.assign(e,{$$fn:n})}(n&&n.params&&n.params[e]);return Object.assign(i,o)}class Hc{constructor(e,t,n,r,s){const i=Ic(e,n,s);t=function(e,t,n,r,s){if(e.type&&t&&"string"!==t.name)throw new Error(`Param '${r}' has two type configurations.`);if(e.type&&t&&"string"===t.name&&s.type(e.type))return s.type(e.type);if(t)return t;if(!e.type){const e=n===Uc?"any":n===Pc?"path":n===Dc?"query":"string";return s.type(e)}return e.type instanceof fc?e.type:s.type(e.type)}(i,t,n,e,r.paramTypes);const o=function(){const t={array:n===Dc&&"auto"},r=e.match(/\[\]$/)?{array:!0}:{};return Object.assign(t,r,i).array}();t=o?t.$asArray(o,n===Dc):t;const a=void 0!==i.value||n===Dc,c=C(i.dynamic)?!!i.dynamic:!!t.dynamic,l=C(i.raw)?!!i.raw:!!t.raw,u=function(e,t,n){const{squash:r}=e;if(!t||!1===r)return!1;if(!C(r)||A(r))return n;if(!0===r||S(r))return r;throw new Error(`Invalid squash policy: '${r}'. Valid policies: false, true, or arbitrary string`)}(i,a,r.defaultSquashPolicy()),h=function(e,t,n,r){const s=[{from:"",to:n||t?void 0:""},{from:null,to:n||t?void 0:""}],i=Array.isArray(e.replace)?e.replace:[];S(r)&&i.push({from:r,to:void 0});const o=Qa(i,e=>e.from);return Wa(s,e=>-1===o.indexOf(e.from)).concat(i)}(i,o,a,u),d=C(i.inherit)?!!i.inherit:!!t.inherit;this.isOptional=a,this.type=t,this.location=n,this.id=e,this.dynamic=c,this.raw=l,this.squash=u,this.replace=h,this.inherit=d,this.array=o,this.config=i}isDefaultValue(e){return this.isOptional&&this.type.equals(this.value(),e)}value(e){return e=(e=>{for(const t of this.replace)if(t.from===e)return t.to;return e})(e),E(e)?(()=>{if(this._defaultValueCache)return this._defaultValueCache.defaultValue;if(!window.angular.$injector)throw new Error("Injectable functions cannot be called at configuration time");const e=window.angular.$injector.invoke(this.config.$$fn);if(null!=e&&!this.type.is(e))throw new Error(`Default value (${e}) for parameter '${this.id}' is not an instance of ParamType (${this.type.name})`);return this.config.$$fn.__cacheable&&(this._defaultValueCache={defaultValue:e}),e})():this.type.$normalize(e)}isSearch(){return this.location===Dc}validates(e){if((E(e)||null===e)&&this.isOptional)return!0;const t=this.type.$normalize(e);if(!this.type.is(t))return!1;const n=t;return!(S(n)&&!this.type.pattern.exec(n))}toString(){return`{Param:${this.id} ${this.type} squash: '${this.squash}' optional: ${this.isOptional}}`}static values(e,t={}){const n={};for(const r of e)n[r.id]=r.value(t[r.id]);return n}static changed(e,t={},n={}){return e.filter(e=>!e.type.equals(t[e.id],n[e.id]))}static equals(e,t={},n={}){return 0===Hc.changed(e,t,n).length}static validates(e,t={}){return e.map(e=>e.validates(t[e.id])).reduce(Ga,!0)}}class Fc{constructor(e){if(e instanceof Fc){const t=e;this.state=t.state,this.paramSchema=t.paramSchema.slice(),this.paramValues=Object.assign({},t.paramValues),this.resolvables=t.resolvables.slice(),this.views=t.views&&t.views.slice()}else{const t=e;this.state=t,this.paramSchema=t.parameters({inherit:!1}),this.paramValues={},this.resolvables=t.resolvables.map(e=>e.clone())}}clone(){return new Fc(this)}applyRawParams(e){return this.paramValues=this.paramSchema.reduce((t,n)=>{return rc(t,[(r=n).id,r.value(e[r.id])]);var r},{}),this}parameter(e){return Ka(this.paramSchema,lc("id",e))}equals(e,t){const n=this.diff(e,t);return n&&0===n.length}diff(e,t){if(this.state!==e.state)return!1;const n=t?t(this):this.paramSchema;return Hc.changed(n,this.paramValues,e.paramValues)}}class qc{static buildPath(e){const t=e.params();return e.$state().path.map(e=>new Fc(e).applyRawParams(t))}static buildToPath(e,t){const n=qc.buildPath(t);return t.options().inherit?qc.inheritParams(e,n,Object.keys(t.params())):n}static applyViewConfigs(e,t,n){t.filter(e=>n.includes(e.state)).forEach(n=>{const r=Object.values(n.state.views||{}),s=qc.subPath(t,e=>e===n),i=r.map(t=>e.createViewConfig(s,t));n.views=i.reduce(Za,[])})}static inheritParams(e,t,n=[]){const r=e.map(e=>e.paramSchema).reduce(Za,[]).filter(e=>!e.inherit).map(e=>e.id);return t.map(function(t){let s=Object.assign({},t&&t.paramValues);const i=Ba(s,n);s=za(s,n);const o=za(function(e,t){const n=Ka(e,lc("state",t));return Object.assign({},n&&n.paramValues)}(e,t.state)||{},r),a=Object.assign(s,o,i);return new Fc(t.state).applyRawParams(a)})}static treeChanges(e,t,n){const r=Math.min(e.length,t.length);let s=0;const i=(e,t)=>e.equals(t,qc.nonDynamicParams);for(;s<r&&e[s].state!==n&&i(e[s],t[s]);)s++;const o=e,a=o.slice(0,s),c=o.slice(s),l=a.map(function(e,n){const r=e.clone();return r.paramValues=t[n].paramValues,r}),u=t.slice(s);return{from:o,to:l.concat(u),retained:a,retainedWithToParams:l,exiting:c,entering:u}}static matching(e,t,n){let r=!1;return nc(e,t).reduce((e,[t,s])=>(r=r||!t.equals(s,n),r?e:e.concat(t)),[])}static equals(e,t,n){return e.length===t.length&&qc.matching(e,t,n).length===e.length}static subPath(e,t){const n=Ka(e,t),r=e.indexOf(n);return-1===r?void 0:e.slice(0,r+1)}static nonDynamicParams(e){return e.state.parameters({inherit:!1}).filter(e=>!e.dynamic)}static paramValues(e){return e.reduce((e,t)=>Object.assign(e,t.paramValues),{})}}function Bc(e,t){return new Mc(e,t.at(-1).state,t.map(e=>e.paramValues).reduce((e,t)=>({...e,...t}),{}),{})}const zc={LAZY:"LAZY",EAGER:"EAGER"},Wc=[zc.EAGER,zc.LAZY],Kc=[zc.EAGER];class Qc{constructor(e){this._path=e}getTokens(){return this._path.reduce((e,t)=>e.concat(t.resolvables.map(e=>e.token)),[]).reduce(Ya,[])}getResolvable(e){return sc(this._path.map(e=>e.resolvables).reduce(Za,[]).filter(t=>t.token===e))}getPolicy(e){const t=this.findNode(e);return e.getPolicy(t)}subContext(e){return new Qc(qc.subPath(this._path,t=>t.state===e))}addResolvables(e,t){const n=Ka(this._path,lc("state",t)),r=e.map(e=>e.token);n.resolvables=n.resolvables.filter(e=>-1===r.indexOf(e.token)).concat(e)}resolvePath(e="LAZY",t){const n=(Wc.includes(e)?e:"LAZY")===zc.EAGER?Kc:Wc;jc.traceResolvePath(this._path,e,t);const r=(e,t)=>n=>e.includes(this.getPolicy(n)[t]),s=this._path.reduce((e,s)=>{const i=s.resolvables.filter(r(n,"when")),o=i.filter(r(["NOWAIT"],"async")),a=i.filter(e=>!r(["NOWAIT"],"async")(e)),c=this.subContext(s.state),l=e=>e.get(c,t).then(t=>({token:e.token,value:t}));return o.forEach(l),e.concat(a.map(l))},[]);return Promise.all(s)}findNode(e){return Ka(this._path,t=>t.resolvables.includes(e))}getDependencies(e){const t=this.findNode(e),n=(qc.subPath(this._path,e=>e===t)||this._path).reduce((e,t)=>e.concat(t.resolvables),[]).filter(t=>t!==e);return e.deps.map(e=>{const t=n.filter(t=>t.token===e);if(t.length)return sc(t);const r=window.angular.$injector.get(e);if(E(r))throw new Error(`Could not find Dependency Injection token: ${xc(e)}`);return new Vc(e,()=>r,[],r)})}}const Gc=(e,t)=>e.reduce((e,n)=>e||C(t[n]),!1);function Jc(e){if(!e.parent)return{};const t=["component","bindings","componentProvider"],n=["templateProvider","templateUrl","template","notify","async"].concat(["controller","controllerProvider","controllerAs","resolveAs"]),r=t.concat(n);if(C(e.views)&&Gc(r,e))throw new Error(`State '${e.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(t=>C(e[t])).join(", ")}`);const s={},i=e.views||{$default:Ba(e,r)};return Object.entries(i).forEach(([r,i])=>{if(r=r||"$default",S(i)&&(i={component:i}),i=Object.assign({},i),Gc(t,i)&&Gc(n,i))throw new Error(`Cannot combine: ${t.join("|")} with: ${n.join("|")} in stateview: '${r}@${e.name}'`);i.resolveAs=i.resolveAs||"$resolve",i.$context=e,i.$name=r;const o=Xc.normalizeUIViewTarget(i.$context,i.$name);i.$ngViewName=o.ngViewName,i.$ngViewContextAnchor=o.ngViewContextAnchor,s[r]=i}),s}let Zc=0;class Xc{constructor(e,t,n){this.path=e,this.viewDecl=t,this.factory=n,this.component=void 0,this.template=void 0,this.$id=Zc++,this.loaded=!1,this.getTemplate=(e,t)=>this.component?this.factory.makeComponentTemplate(e,t,this.component,this.viewDecl.bindings):this.template}load(){const e=new Qc(this.path),t=this.path.reduce((e,t)=>Object.assign(e,t.paramValues),{}),n=[Promise.resolve(this.factory.fromConfig(this.viewDecl,t,e)),Promise.resolve(this.getController(e))];return Promise.all(n).then(e=>(jc.traceViewServiceEvent("Loaded",this),this.controller=e[1],Object.assign(this,e[0]),this))}getController(e){const t=this.viewDecl.controllerProvider;if(!d(t))return this.viewDecl.controller;const n=pn(t),r=Array.isArray(t)?sc(t):t;return new Vc("",r,n).get(e)}static normalizeUIViewTarget(e,t=""){const n=t.split("@");let r=n[0]||"$default",s=S(n[1])?n[1]:"^";const i=/^(\^(?:\.\^)*)\.(.*$)/.exec(r);i&&(s=i[1],r=i[2]),"!"===r.charAt(0)&&(r=r.substring(1),s="");if(/^(\^(?:\.\^)*)$/.exec(s)){const t=s.split(".").reduce(e=>e.parent,e);s=t.name}else"."===s&&(s=e.name);return{ngViewName:r,ngViewContextAnchor:s}}}class Yc{constructor(){this._ngViews=[],this._viewConfigs=[],this._listeners=[],this.viewConfigFactory(function(){let e=null;return(t,n)=>(e=e||window.angular.$injector.get("$templateFactory"),new Xc(t,n,e))}())}$get=()=>this;rootViewContext(e){return this._rootContext=e||this._rootContext}viewConfigFactory(e){this.viewConfigFactory=e}createViewConfig(e,t){const n=this.viewConfigFactory;if(!n)throw new Error(`ViewService: No view config factory registered for type ${t.$type}`);return n(e,t)}deactivateViewConfig(e){jc.traceViewServiceEvent("<- Removing",e),Fa(this._viewConfigs,e)}activateViewConfig(e){jc.traceViewServiceEvent("-> Registering",e),this._viewConfigs.push(e)}sync(){const e=this._ngViews.map(e=>[e.fqn,e]).reduce(rc,{});function t(e){let t=e.viewDecl.$context,n=0;for(;++n&&t.parent;)t=t.parent;return n}const n=cc((e,t,n,r)=>t*(e(n)-e(r))),r=e=>{-1!==this._ngViews.indexOf(e.ngView)&&e.ngView.configUpdated(e.viewConfig)},s=this._ngViews.sort(n(function(e){const t=e=>e&&e.parent?t(e.parent)+1:1;return 1e4*e.fqn.split(".").length+t(e.creationContext)},1)).map(r=>{const s=this._viewConfigs.filter(Yc.matches(e,r));return s.length>1&&s.sort(n(t,-1)),{ngView:r,viewConfig:s[0]}}),i=s.map(e=>e.viewConfig),o=this._viewConfigs.filter(e=>!i.includes(e)).map(e=>({ngView:void 0,viewConfig:e}));s.forEach(e=>{r(e)});const a=s.concat(o);this._listeners.forEach(e=>e(a)),jc.traceViewSync(a)}registerUIView(e){jc.traceViewServiceUIViewEvent("-> Registering",e);const t=this._ngViews;return t.filter(t=>t.fqn===e.fqn).length&&jc.traceViewServiceUIViewEvent("!!!! duplicate ngView named:",e),t.push(e),this.sync(),()=>{-1!==t.indexOf(e)?(jc.traceViewServiceUIViewEvent("<- Deregistering",e),Fa(t,e)):jc.traceViewServiceUIViewEvent("Tried removing non-registered ngView",e)}}available(){return this._ngViews.map(e=>e.fqn)}active(){return this._ngViews.filter(e=>e.$config).map(e=>e.name)}}Yc.matches=(e,t)=>n=>{if(t.$type!==n.viewDecl.$type)return!1;const r=n.viewDecl,s=r.$ngViewName.split("."),i=t.fqn.split(".");if(!Ia(s,i.slice(0-s.length)))return!1;const o=1-s.length||void 0,a=i.slice(0,o).join("."),c=e[a].creationContext;return r.$ngViewContextAnchor===(c&&c.name)};const el=2,tl=3,nl=4,rl=5,sl=6;let il=0;class ol{static superseded(e,t){const n=new ol(el,"The transition has been superseded by a different transition",e);return t&&t.redirected&&(n.redirected=!0),n}static redirected(e){return ol.superseded(e,{redirected:!0})}static invalid(e){return new ol(nl,"This transition is invalid",e)}static ignored(e){return new ol(rl,"The transition was ignored",e)}static aborted(e){return new ol(tl,"The transition has been aborted",e)}static errored(e){return new ol(sl,"The transition errored",e)}static normalize(e){return hc(ol)(e)?e:ol.errored(e)}constructor(e,t,n){this.$id=il++,this.type=e,this.message=t,this.detail=n,this.redirected=!1}toString(){const e=(t=this.detail)&&t.toString!==Object.prototype.toString?t.toString():xc(t);var t;const{$id:n,type:r,message:s}=this;return`Transition Rejection($id: ${n} type: ${r}, message: ${s}, detail: ${e})`}toPromise(){return Object.assign(ac(this),{_transitionRejection:this})}}class al{constructor(){this.eventBus=cl}$get=[sn.$exceptionHandler,e=>(this.$exceptionHandler=e,this.eventBus)]}const cl=new class{constructor(){this._topics=Object.create(null),this._disposed=!1,this.$exceptionHandler=void 0}reset(){this._topics=Object.create(null),this._disposed=!1}isDisposed(){return this._disposed}dispose(){this._disposed||(this._disposed=!0,this._topics=Object.create(null))}subscribe(e,t,n=void 0){if(this._disposed)return()=>!1;let r=this._topics[e];r||(this._topics[e]=r=[]);const s={fn:t,context:n};return r.push(s),()=>this.unsubscribe(e,t,n)}subscribeOnce(e,t,n=void 0){if(this._disposed)return()=>!1;let r=!1;const s=this.subscribe(e,(...e)=>{r||(r=!0,s(),t.apply(n,e))});return s}unsubscribe(e,t,n=void 0){if(this._disposed)return!1;const r=this._topics[e];if(!r||0===r.length)return!1;for(let e=0;e<r.length;e++){const s=r[e];if(s.fn===t&&s.context===n)return r.splice(e,1),!0}return!1}getCount(e){const t=this._topics[e];return t?t.length:0}publish(e,...t){if(this._disposed)return!1;const n=this._topics[e];if(!n||0===n.length)return!1;const r=n.slice();return queueMicrotask(()=>{for(const{fn:e,context:n}of r)try{e.apply(n,t)}catch(e){this.$exceptionHandler(e)}}),!0}},ll={current:()=>{},transition:null,traceData:{},bind:null},ul=Object.freeze({CREATE:0,BEFORE:1,RUN:2,SUCCESS:3,ERROR:4}),hl=Object.freeze({TRANSITION:0,STATE:1});class dl{static chain(e,t){return e.reduce((e,t)=>e.then(()=>t.invokeHook()),t||Promise.resolve())}static invokeHooks(e,t){for(let n=0;n<e.length;n++){const r=e[n].invokeHook();if(p(r)){const s=e.slice(n+1);return dl.chain(s,r).then(()=>{t()})}}return t()}static runAllHooks(e){e.forEach(e=>e.invokeHook())}constructor(e,t,n,r){this.transition=e,this.stateContext=t,this.registeredHook=n,this.options=r,this.isSuperseded=()=>this.type.hookPhase===ul.RUN&&!this.options.transition.isActive(),this.options=qa(r,ll),this.type=n.eventType}logError(e){cl.publish("$stateService:defaultErrorHandler",e)}invokeHook(){const e=this.registeredHook;if(e._deregistered)return;const t=this.getNotCurrentRejection();if(t)return t;const{options:n}=this;jc.traceHookInvocation(this,this.transition,n);const r=()=>e.callback.call(n.bind,this.transition,this.stateContext),s=e=>ol.normalize(e).toPromise(),i=t=>e.eventType.getErrorHandler(this)(t),o=t=>e.eventType.getResultHandler(this)(t);try{const e=r();return!this.type.synchronous&&p(e)?e.catch(s).then(o,i):o(e)}catch(e){return i(ol.normalize(e))}finally{e.invokeLimit&&++e.invokeCount>=e.invokeLimit&&e.deregister()}}handleHookResult(e){const t=this.getNotCurrentRejection();return t||(p(e)?e.then(e=>this.handleHookResult(e)):(jc.traceHookResult(e,this.transition),!1===e?ol.aborted("Hook aborted transition").toPromise():e instanceof Mc?ol.redirected(e).toPromise():void 0))}getNotCurrentRejection(){return this.transition._aborted?ol.aborted().toPromise():this.isSuperseded()?ol.superseded(this.options.current()).toPromise():void 0}toString(){const{options:e,registeredHook:t}=this;return`${uc("traceData.hookType")(e)||"internal"} context: ${uc("traceData.context.state.name")(e)||uc("traceData.context")(e)||"unknown"}, ${bc(200,Cc(t.callback))}`}}dl.HANDLE_RESULT=e=>t=>e.handleHookResult(t),dl.LOG_REJECTED_RESULT=e=>t=>{p(t)&&t.catch(t=>e.logError(ol.normalize(t)))},dl.LOG_ERROR=e=>t=>e.logError(t),dl.REJECT_ERROR=()=>e=>ac(e),dl.THROW_ERROR=()=>e=>{throw e};class pl{static fromString(e){return function(e){return!!/[!,*]+/.exec(e)}(e)?new pl(e):null}constructor(e){this.text=e,this.glob=e.split(".");const t=this.text.split(".").map(e=>"**"===e?"(?:|(?:\\.[^.]*)*)":"*"===e?"\\.[^.]*":`\\.${e}`).join("");this.regexp=new RegExp(`^${t}$`)}matches(e){return this.regexp.test(`.${e}`)}}function fl(e,t,n){const r=S(t)?[t]:t;return!!(j(r)?r:function(e){const t=r;for(let n=0;n<t.length;n++){const r=new pl(t[n]);if(r&&r.matches(e.name)||!r&&t[n]===e.name)return!0}return!1})(e,n)}class $l{constructor(e,t,n,r,s,i={}){this.tranSvc=e,this.eventType=t,this.callback=n,this.matchCriteria=r,this.removeHookFromRegistry=s,this.invokeCount=0,this._deregistered=!1,this.priority=i.priority||0,this.bind=i.bind||null,this.invokeLimit=i.invokeLimit}_matchingNodes(e,t,n){if(!0===t)return e;const r=e.filter(e=>fl(e.state,t,n));return r.length?r:null}_getDefaultMatchCriteria(){return Qa(this.tranSvc._getPathTypes(),()=>!0)}_getMatchingNodes(e,t){const n=Object.assign(this._getDefaultMatchCriteria(),this.matchCriteria);return Object.values(this.tranSvc._getPathTypes()).reduce((r,s)=>{const i=s.scope===hl.STATE,o=e[s.name]||[],a=i?o:[sc(o)];return r[s.name]=this._matchingNodes(a,n[s.name],t),r},{})}matches(e,t){const n=this._getMatchingNodes(e,t);return Object.values(n).every(e=>e)?n:null}deregister(){this.removeHookFromRegistry(this),this._deregistered=!0}}function ml(e,t,n){const r=(e._registeredHooks=e._registeredHooks||{})[n.name]=[],s=e=>Fa(r,e);function i(e,i,o={}){const a=new $l(t,n,i,e,s,o);return r.push(a),a.deregister.bind(a)}return e[n.name]=i,i}class gl{constructor(e){this.transition=e}buildHooksForPhase(e){return this.transition.transitionService._getEvents(e).map(e=>this.buildHooks(e)).reduce(Za,[]).filter(Boolean)}buildHooks(e){const{transition:t}=this,n=t.treeChanges(),r=this.getMatchingHooks(e,n,t);if(!r)return[];const s={transition:t,current:t.options().current};return r.map(r=>r.matches(n,t)[e.criteriaMatchPath.name].map(n=>{const i=Object.assign({bind:r.bind,traceData:{hookType:e.name,context:n}},s),o=e.criteriaMatchPath.scope===hl.STATE?n.state.self:null,a=new dl(t,o,r,i);return{hook:r,node:n,transitionHook:a}})).reduce(Za,[]).sort(function(e=!1){return function(t,n){const r=e?-1:1,s=(t.node.state.path.length-n.node.state.path.length)*r;return 0!==s?s:n.hook.priority-t.hook.priority}}(e.reverseSort)).map(e=>e.transitionHook)}getMatchingHooks(e,t,n){const r=e.hookPhase===ul.CREATE,s=this.transition.transitionService;return(r?[s]:[this.transition,s]).map(t=>t.getHooks(e.name)).filter(tc(Array.isArray,`broken event named: ${e.name}`)).reduce(Za,[]).filter(e=>e.matches(t,n))}}class vl{constructor(e,t,n,r){if(this.globals=r,this.transitionService=n,this._deferred=Promise.withResolvers(),this.promise=this._deferred.promise,this._registeredHooks={},this._hookBuilder=new gl(this),this.isActive=()=>this.globals.transition===this,this._targetState=t,!t.valid())throw new Error(t.error());this._options=Object.assign({current:dc(this)},t.options()),this.$id=n._transitionCount++;const s=qc.buildToPath(e,t);this._treeChanges=qc.treeChanges(e,s,this._options.reloadState),this.createTransitionHookRegFns();const i=this._hookBuilder.buildHooksForPhase(ul.CREATE);dl.invokeHooks(i,()=>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._getEvents().filter(e=>e.hookPhase!==ul.CREATE).forEach(e=>ml(this,this.transitionService,e))}getHooks(e){return this._registeredHooks[e]}applyViewConfigs(){const e=this._treeChanges.entering.map(e=>e.state);qc.applyViewConfigs(this.transitionService.$view,this._treeChanges.to,e)}$from(){return sc(this._treeChanges.from).state}$to(){return sc(this._treeChanges.to).state}from(){return this.$from().self}to(){return this.$to().self}targetState(){return this._targetState}is(e){return e instanceof vl?this.is({to:e.$to().name,from:e.$from().name}):!(e.to&&!fl(this.$to(),e.to,this)||e.from&&!fl(this.$from(),e.from,this))}params(e="to"){return Object.freeze(this._treeChanges[e].map(e=>e.paramValues).reduce((e,t)=>({...e,...t}),{}))}getResolveTokens(e="to"){return new Qc(this._treeChanges[e]).getTokens()}addResolvable(e,t){void 0===t&&(t=""),e=hc(Vc)(e)?e:new Vc(e);const n="string"==typeof t?t:t.name,r=this._treeChanges.to,s=Ka(r,e=>e.state.name===n);he(!!s,`targetNode not found ${n}`);new Qc(r).addResolvables([e],s.state)}redirectedFrom(){return this._options.redirectedFrom||null}originalTransition(){const e=this.redirectedFrom();return e&&e.originalTransition()||this}options(){return this._options}entering(){return Qa(this._treeChanges.entering,e=>e.state).map(e=>e.self)}exiting(){return Qa(this._treeChanges.exiting,e=>e.state).map(e=>e.self).reverse()}retained(){return Qa(this._treeChanges.retained,e=>e.state).map(e=>e.self)}views(e="entering",t){let n=this._treeChanges[e];return n=t?n.filter(lc("state",t)):n,n.map(e=>e.views).reduce(Za,[])}treeChanges(e){return e?this._treeChanges[e]:this._treeChanges}redirect(e){let t=1,n=this;for(;!A(n=n.redirectedFrom());)if(++t>20)throw new Error("Too many consecutive Transition redirects (20+)");const r={redirectedFrom:this,source:"redirect"};"url"===this.options().source&&!1!==e.options().location&&(r.location="replace");const s=Object.assign({},this.options(),e.options(),r);e=e.withOptions(s,!0);const i=this.transitionService.create(this._treeChanges.from,e),o=this._treeChanges.entering,a=i._treeChanges.entering;return qc.matching(a,o,qc.nonDynamicParams).filter(t=>{return!(n=e.options().reloadState,e=>n&&e.state.includes[n.name])(t);var n}).forEach((e,t)=>{e.resolvables=o[t].resolvables}),i}_changedParams(){const e=this._treeChanges;if(this._options.reload)return;if(e.exiting.length||e.entering.length)return;if(e.to.length!==e.from.length)return;if(nc(e.to,e.from).map(e=>e[0].state!==e[1].state).reduce(Ja,!1))return;const t=e.to.map(e=>e.paramSchema),[n,r]=[e.to,e.from].map(e=>e.map(e=>e.paramValues));return nc(t,n,r).map(([e,t,n])=>Hc.changed(e,t,n)).reduce(Za,[])}dynamic(){const e=this._changedParams();return!!e&&e.map(e=>e.dynamic).reduce(Ja,!1)}ignored(){return!!this._ignoredReason()}_ignoredReason(){const e=this.globals.transition,{reloadState:t}=this._options,n=(e,n)=>{if(e.length!==n.length)return!1;const r=qc.matching(e,n);return e.length===r.filter(e=>!t||!e.state.includes[t.name]).length},r=this._treeChanges,s=e&&e._treeChanges;return s&&n(s.to,r.to)&&n(s.exiting,r.exiting)?"SameAsPending":0===r.exiting.length&&0===r.entering.length&&n(r.from,r.to)?"SameAsCurrent":void 0}run(){const e=e=>this._hookBuilder.buildHooksForPhase(e),t=e(ul.BEFORE);return dl.invokeHooks(t,()=>{const{globals:e}=this;return e.lastStartedTransitionId=this.$id,e.transition=this,e.transitionHistory.enqueue(this),jc.traceTransitionStart(this),Promise.resolve()}).then(()=>{const t=e(ul.RUN),n=Promise.resolve();return dl.invokeHooks(t,()=>n)}).then(()=>{jc.traceSuccess(this.$to(),this),this.success=!0,this._deferred.resolve(this.to());this._hookBuilder.buildHooksForPhase(ul.SUCCESS).forEach(e=>{e.invokeHook()})},t=>{jc.traceError(t,this),this.success=!1,this._deferred.reject(t),this._error=t;e(ul.ERROR).forEach(e=>e.invokeHook())}),this.promise}valid(){return!this.error()||void 0!==this.success}abort(){E(this.success)&&(this._aborted=!0)}error(){const e=this.$to();if(e.self.abstract)return ol.invalid(`Cannot transition to abstract state '${e.name}'`);const t=e.parameters(),n=this.params(),r=t.filter(e=>!e.validates(n[e.id]));if(r.length){const t=r.map(e=>`[${e.id}:${xc(n[e.id])}]`).join(", "),s=`The following parameter values are not valid for state '${e.name}': ${t}`;return ol.invalid(s)}return!1===this.success?this._error:void 0}toString(){const e=this.from(),t=this.to(),n=e=>null!==e["#"]&&void 0!==e["#"]?e:za(e,["#"]);return`Transition#${this.$id}( '${x(e)?e.name:e}'${xc(n(this._treeChanges.from.map(e=>e.paramValues).reduce((e,t)=>({...e,...t}),{})))} -> ${this.valid()?"":"(X) "}'${x(t)?t.name:t}'${xc(n(this.params()))} )`}}vl.diToken=vl;const yl=["$transition$",vl];function wl(e){const t=Object.values(e.treeChanges()).reduce(Za,[]).reduce(Ya,[]),n=e=>yl.includes(e.token)?Vc.fromData(e.token,null):e;t.forEach(e=>{e.resolvables=e.resolvables.map(n)})}function bl(e){return(t,n)=>(0,n.$$state()[e])(t,n)}const El=bl("onExit"),Cl=bl("onRetain"),xl=bl("onEnter"),Sl=1e3,Ol=e=>new Qc(e.treeChanges().to).resolvePath("EAGER",e).then(()=>{}),Al=(e,t)=>new Qc(e.treeChanges().to).subContext(t.$$state()).resolvePath("LAZY",e).then(()=>{}),kl=e=>new Qc(e.treeChanges().to).resolvePath("LAZY",e).then(()=>{}),Tl=e=>{const t=e.views("entering");if(t.length)return Promise.all(t.map(e=>Promise.resolve(e.load()))).then(()=>{})},_l=e=>{const{globals:t}=e,n=()=>{t.transition===e&&(t.transition=null)};e.onSuccess({},()=>{t.successfulTransitions.enqueue(e),t.$current=e.$to(),t.current=t.$current.self,ic(e.params(),t.params)},{priority:1e4}),e.promise.then(n,n)};function Nl(e,t,n,r){return e.onBefore({entering:e=>!!e.lazyLoad},e=>{const s=e.entering().filter(e=>!!e.$$state().lazyLoad).map(t=>jl(e,t,r));return Promise.all(s).then(function(){if("url"!==e.originalTransition().options().source){const n=e.targetState();return t.target(n.identifier(),n.params(),n.options())}const r=n.match(n.parts()),s=r&&r.rule;if(s&&"STATE"===s.type){const{state:n}=s,i=r.match;return t.target(n,i,e.options())}n.sync()})})}function jl(e,t,n){const r=t.$$state().lazyLoad;let s=r._promise;if(!s){const i=e=>(delete t.lazyLoad,delete t.$$state().lazyLoad,delete r._promise,e),o=e=>(delete r._promise,Promise.reject(e));s=r._promise=Promise.resolve(r(e,t)).then(function(e){e&&Array.isArray(e.states)&&e.states.forEach(e=>n.register(e));return e}).then(i,o)}return s}class Rl{constructor(e,t,n,r,s=!1,i=dl.HANDLE_RESULT,o=dl.REJECT_ERROR,a=!1){this.name=e,this.hookPhase=t,this.hookOrder=n,this.criteriaMatchPath=r,this.reverseSort=s,this.getResultHandler=i,this.getErrorHandler=o,this.synchronous=a}}function Ll(e){const t=e._ignoredReason();if(!t)return;jc.traceTransitionIgnored(e);const n=e.globals.transition;return"SameAsCurrent"===t&&n&&n.abort(),ol.ignored().toPromise()}function Vl(e){if(!e.valid())throw new Error(e.error().toString())}const Ml={location:!0,relative:null,inherit:!1,notify:!0,reload:!1,supercede:!0,custom:{},current:()=>null,source:"unknown"};class Pl{static $inject=on([sn.$router,sn.$view]);constructor(e,t){this._transitionCount=0,this._eventTypes=[],this._registeredHooks={},this._criteriaPaths={},this.globals=e,this.$view=t,this._deregisterHookFns={},this._defineCorePaths(),this._defineCoreEvents(),this._registerCoreTransitionHooks(),e.successfulTransitions.onEvict(wl)}$get=[sn.$state,sn.$url,sn.$stateRegistry,sn.$view,(e,t,n,r)=>(this._deregisterHookFns.lazyLoad=Nl(this,e,t,n),this._deregisterHookFns.updateUrl=((e,t,n)=>{e.onSuccess({},e=>{const r=e.options(),s=t;if("url"!==r.source&&r.location&&s.$current.navigable){const e={replace:"replace"===r.location};n.push(s.$current.navigable.url,s.globals.params,e)}n.update(!0)},{priority:9999})})(this,e,t),this._deregisterHookFns.redirectTo=((e,t)=>{e.onStart({to:e=>!!e.redirectTo},e=>{const n=e.to().redirectTo;if(!n)return;const r=t;function s(t){if(t)return t instanceof Mc?t:S(t)?r.target(t,e.params(),e.options()):t.state||t.params?r.target(t.state||e.to(),t.params||e.params(),e.options()):void 0}return j(n)?Promise.resolve(n(e)).then(s):s(n)})})(this,e),this._deregisterHookFns.activateViews=((e,t)=>{e.onSuccess({},e=>{const n=e.views("entering"),r=e.views("exiting");(n.length||r.length)&&(r.forEach(e=>t.deactivateViewConfig(e)),n.forEach(e=>{t.activateViewConfig(e)}),t.sync())})})(this,r),this)];create(e,t){return new vl(e,t,this,this.globals)}_defineCoreEvents(){const e=dl,t=this._criteriaPaths,n=!1,r=!0;this._defineEvent("onCreate",ul.CREATE,0,t.to,n,e.LOG_REJECTED_RESULT,e.THROW_ERROR,r),this._defineEvent("onBefore",ul.BEFORE,0,t.to),this._defineEvent("onStart",ul.RUN,0,t.to),this._defineEvent("onExit",ul.RUN,100,t.exiting,!0),this._defineEvent("onRetain",ul.RUN,200,t.retained),this._defineEvent("onEnter",ul.RUN,300,t.entering),this._defineEvent("onFinish",ul.RUN,400,t.to),this._defineEvent("onSuccess",ul.SUCCESS,0,t.to,n,e.LOG_REJECTED_RESULT,e.LOG_ERROR,r),this._defineEvent("onError",ul.ERROR,0,t.to,n,e.LOG_REJECTED_RESULT,e.LOG_ERROR,r)}_defineCorePaths(){const{STATE:e,TRANSITION:t}=hl;this._definePathType("to",t),this._definePathType("from",t),this._definePathType("exiting",e),this._definePathType("retained",e),this._definePathType("entering",e)}_defineEvent(e,t,n,r,s=!1,i=dl.HANDLE_RESULT,o=dl.REJECT_ERROR,a=!1){const c=new Rl(e,t,n,r,s,i,o,a);this._eventTypes.push(c),ml(this,this,c)}_getEvents(e){return(C(e)?this._eventTypes.filter(t=>t.hookPhase===e):this._eventTypes.slice()).sort((e,t)=>{const n=e.hookPhase-t.hookPhase;return 0===n?e.hookOrder-t.hookOrder:n})}_definePathType(e,t){this._criteriaPaths[e]={name:e,scope:t}}_getPathTypes(){return this._criteriaPaths}getHooks(e){return this._registeredHooks[e]}_registerCoreTransitionHooks(){const e=this._deregisterHookFns;e.addCoreResolves=void this.onCreate({},function(e){e.addResolvable(Vc.fromData(vl,e),""),e.addResolvable(Vc.fromData("$transition$",e),""),e.addResolvable(Vc.fromData("$stateParams",e.params()),""),e.entering().forEach(t=>{e.addResolvable(Vc.fromData("$state$",t),t)})}),e.ignored=(e=>e.onBefore({},Ll,{priority:-9999}))(this),e.invalid=(e=>e.onBefore({},Vl,{priority:-1e4}))(this),e.onExit=(e=>e.onExit({exiting:e=>!!e.onExit},El))(this),e.onRetain=(e=>e.onRetain({retained:e=>!!e.onRetain},Cl))(this),e.onEnter=(e=>e.onEnter({entering:e=>!!e.onEnter},xl))(this),e.eagerResolve=(e=>e.onStart({},Ol,{priority:Sl}))(this),e.lazyResolve=(e=>e.onEnter({entering:dc(!0)},Al,{priority:Sl}))(this),e.resolveAll=(e=>e.onFinish({},kl,{priority:Sl}))(this),e.loadViews=(e=>e.onFinish({},Tl))(this),e.updateGlobals=(e=>e.onCreate({},_l))(this),e.lazyLoad=Nl(this)}}const Dl=we("$stateProvider");class Ul{get params(){return this.globals.params}get current(){return this.globals.current}get $current(){return this.globals.$current}static $inject=["$routerProvider","$transitionsProvider"];constructor(e,t,n){this.stateRegistry=void 0,this.urlService=void 0,this.globals=e,this.transitionService=t,this.$injector=n,this.invalidCallbacks=[],this._defaultErrorHandler=function(e){throw e instanceof Error&&e.stack?e:e instanceof ol?new Error(e.toString()):new Error(e)},cl.subscribe("$stateService:defaultErrorHandler",e=>this.defaultErrorHandler()(e))}$get=()=>this;decorator(e,t){return this.stateRegistry.decorator(e,t)||this}state(e){if(!e.name)throw Dl("stateinvalid","'name' required");try{this.stateRegistry.register(e)}catch(e){throw Dl("stateinvalid",e.message)}return this}_handleInvalidTargetState(e,t){const n=Bc(this.stateRegistry,e),{globals:r}=this,s=()=>r.transitionHistory.peekTail(),i=s(),o=new yc(this.invalidCallbacks.slice()),a=this.$injector,c=e=>{if(!(e instanceof Mc))return;let t=e;return t=this.target(t.identifier(),t.params(),t.options()),t.valid()?s()!==i?ol.superseded().toPromise():this.transitionTo(t.identifier(),t.params(),t.options()):ol.invalid(t.error()).toPromise()};return function e(){const r=o.dequeue();return void 0===r?ol.invalid(t.error()).toPromise():Promise.resolve(r(t,n,a)).then(c).then(t=>t||e())}()}onInvalid(e){return this.invalidCallbacks.push(e),function(){Fa(this.invalidCallbacks,e)}.bind(this)}reload(e){return this.transitionTo(this.globals.current,this.globals.params,{reload:!C(e)||e,inherit:!1,notify:!1})}go(e,t,n){const r=qa(n,{relative:this.$current,inherit:!0},Ml);return this.transitionTo(e,t,r)}target(e,t,n={}){if(x(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 '${S(n.reload)?n.reload:n.reload.name}'`);return new Mc(this.stateRegistry,e,t,n)}getCurrentPath(){const{globals:e}=this,t=e.successfulTransitions.peekTail();return t?t._treeChanges.to:(()=>[new Fc(this.stateRegistry.root())])()}transitionTo(e,t={},n={}){n=qa(n,Ml);const r=()=>this.globals.transition;n=Object.assign(n,{current:r});const s=this.target(e,t,n),i=this.getCurrentPath();if(!s.exists())return this._handleInvalidTargetState(i,s);if(!s.valid())return ac(s.error());if(!1===n.supercede&&r())return ol.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=e=>t=>{if(t instanceof ol){const n=this.globals.lastStartedTransitionId<=e.$id;if(t.type===rl)return n&&this.urlService.update(),Promise.resolve(this.globals.current);const{detail:r}=t;if(t.type===el&&t.redirected&&r instanceof Mc){const t=e.redirect(r);return t.run().catch(o(t))}if(t.type===tl)return n&&this.urlService.update(),Promise.reject(t)}return this.defaultErrorHandler()(t),Promise.reject(t)},a=this.transitionService.create(i,s),c=a.run().catch(o(a));return oc(c),Object.assign(c,{transition:a})}is(e,t,n){n=qa(n,{relative:this.$current});const r=this.stateRegistry.matcher.find(e,n.relative);if(!C(r))return;if(this.$current!==r)return!1;if(!t)return!0;const s=r.parameters({inherit:!0,matchingKeys:t});return Hc.equals(s,Hc.values(s,t),this.globals.params)}includes(e,t,n){n=qa(n,{relative:this.$current});const r=S(e)&&pl.fromString(e);if(r){if(!r.matches(this.$current.name))return!1;e=this.$current.name}const s=this.stateRegistry.matcher.find(e,n.relative),i=this.$current.includes;if(!C(s))return;if(!C(i[s.name]))return!1;if(!t)return!0;const o=s.parameters({inherit:!0,matchingKeys:t});return Hc.equals(o,Hc.values(o,t),this.globals.params)}href(e,t,n){n=qa(n,{lossy:!0,inherit:!0,absolute:!1,relative:this.$current}),t=t||{};const r=this.stateRegistry.matcher.find(e,n.relative);if(!C(r))return null;n.inherit&&(t=this.globals.params.$inherit(t,this.$current,r));const s=r&&n.lossy?r.navigable:r;return s&&void 0!==s.url&&null!==s.url?this.urlService.href(s.url,t,{absolute:n.absolute}):null}defaultErrorHandler(e){return this._defaultErrorHandler=e||this._defaultErrorHandler}get(e,t){const n=this.stateRegistry;return 0===arguments.length?n.get():n.get(e,t||this.$current)}lazyLoad(e,t){const n=this.get(e);if(!n||!n.lazyLoad)throw new Error(`Can not lazy load ${e}`);const r=this.getCurrentPath(),s=Bc(this.stateRegistry,r);return jl(t=t||this.transitionService.create(r,s),n)}}class Il{constructor(){this.enabled=!1}useAnchorScroll(){this.enabled=!0}$get=[sn.$anchorScroll,e=>this.enabled?e:async function(e){return setTimeout(()=>{e.scrollIntoView(!1)},0)}]}class Hl{constructor(){this._useHttp=!1}$get=[sn.$http,sn.$templateCache,sn.$templateRequest,sn.$injector,(e,t,n,r)=>(this.$templateRequest=n,this.$http=e,this.$templateCache=t,this.$injector=r,this)];useHttpService(e){this._useHttp=e}fromConfig(e,t,n){const r=e=>Promise.resolve(e).then(e=>({template:e})),s=e=>Promise.resolve(e).then(e=>({component:e}));switch(C((i=e).template)?"template":C(i.templateUrl)?"templateUrl":C(i.templateProvider)?"templateProvider":C(i.component)?"component":C(i.componentProvider)?"componentProvider":"default"){case"template":return r(this.fromString(e.template,t));case"templateUrl":return r(this.fromUrl(e.templateUrl,t));case"templateProvider":return r(this.fromProvider(e.templateProvider,t,n));case"component":return s(e.component);case"componentProvider":return s(this.fromComponentProvider(e.componentProvider,n));default:return r("<ng-view></ng-view>")}var i}fromString(e,t){return j(e)?e(t):e}fromUrl(e,t){return j(e)&&(e=e(t)),A(e)?null:this._useHttp?this.$http.get(e,{cache:this.$templateCache,headers:{Accept:"text/html"}}).then(function(e){return e.data}):this.$templateRequest(e)}fromProvider(e,t,n){const r=pn(e),s=Array.isArray(e)?sc(e):e;return new Vc("",s,r).get(n)}fromComponentProvider(e,t){const n=pn(e),r=Array.isArray(e)?sc(e):e;return new Vc("",r,n).get(t)}makeComponentTemplate(e,t,n,r){r=r||{};const s=e=>{const t=function(e){return e.replace(/^([A-Z])/,e=>e.toLowerCase()).replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`)}(e);return/^(x|data)-/.exec(t)?`x-${t}`:t},i=function(e,t){const n=e.get(t+Sr);if(!n||!n.length)throw new Error(`Unable to find component named '${t}'`);return n.map(Fl).reduce(Za,[])}(this.$injector,n).map(n=>{const{name:i,type:o}=n,a=s(i);if(e.getAttribute(a)&&!r[i])return`${a}='${e.getAttribute(a)}'`;const c=r[i]||i;if("@"===o)return`${a}='{{s$resolve.${c}}}'`;if("&"===o){const e=t.getResolvable(c),n=e&&e.data,r=n&&pn(n)||[];return`${a}='$resolve.${c}${Array.isArray(n)?`[${n.length-1}]`:""}(${r.join(",")})'`}return`${a}='$resolve.${c}'`}).join(" "),o=s(n);return`<${o} ${i}></${o}>`}}const Fl=e=>x(e.bindToController)?ql(e.bindToController):ql(e.scope),ql=e=>Object.keys(e||{}).map(t=>[t,/^([=<@&])[?]?(.*)/.exec(e[t])]).filter(e=>C(e)&&Array.isArray(e[1])).map(e=>({name:e[1][2]||e[0],type:e[1][1]}));function Bl(e,t){let n=["",""],r=e.replace(/[\\[\]^$*+?.()|{}]/g,"\\$&");if(!t)return r;switch(t.squash){case!1:n=["(",")"+(t.isOptional?"?":"")];break;case!0:r=r.replace(/\/$/,""),n=["(?:/(",")|/)?"];break;default:n=[`(${t.squash}|`,")?"]}return r+n[0]+t.type.pattern.source+n[1]}const zl=function(e){const t=new RegExp(`(${e})`,"g");return e=>e.split(t).filter(Boolean)}("/"),Wl={state:{params:{}},strict:!0,caseInsensitive:!0};class Kl{static pathSegmentsAndParams(e){return nc(e._segments,e._params.filter(e=>e.location===Pc).concat(void 0)).reduce(Za,[]).filter(e=>""!==e&&C(e))}static queryParams(e){return e._params.filter(e=>e.location===Dc)}static compare(e,t){const n=e=>e._cache.weights=e._cache.weights||(e=>e._cache.segments=e._cache.segments||e._cache.path.map(Kl.pathSegmentsAndParams).reduce(Za,[]).reduce(Sc,[]).map(e=>S(e)?zl(e):e).reduce(Za,[]))(e).map(e=>"/"===e?1:S(e)?2:e instanceof Hc?3:void 0),r=n(e),s=n(t);((e,t,n)=>{const r=Math.max(e.length,t.length);for(;e.length<r;)e.push(n);for(;t.length<r;)t.push(n)})(r,s,0);const i=nc(r,s);let o;for(let e=0,t=i.length;e<t;e++)if(o=i[e][0]-i[e][1],0!==o)return o;return 0}constructor(e,t,n,r){this._cache={path:[this]},this._children=[],this._params=[],this._segments=[],this._compiled=[],this.config=r=qa(r,Wl),this.pattern=e;const s=new RegExp("([:*])([\\w[\\]]+)|\\{([\\w[\\]]+)(?::\\s*((?:[^{}\\\\]{1,200}|\\\\.|\\{(?:[^{}\\\\]{1,200}|\\\\.)*\\})+))?\\}","g"),i=new RegExp("([:]?)([\\w[\\].-]+)|\\{([\\w[\\].-]+)(?::\\s*((?:[^{}\\\\]{1,200}|\\\\.|\\{(?:[^{}\\\\]{1,200}|\\\\.)*\\})+))?\\}","g"),o=[];let a,c=0;const l=t=>{if(!Kl.nameValidator.test(t))throw new Error(`Invalid parameter name '${t}' in pattern '${e}'`);if(Ka(this._params,lc("id",t)))throw new Error(`Duplicate parameter name '${t}' in pattern '${e}'`)},u=(n,r)=>{const s=n[2]||n[3],i=r?n[4]:n[4]||("*"===n[1]?"[\\s\\S]*":null);return{id:s,regexp:i,segment:e.substring(c,n.index),type:i?t.type(i)||(e=>Ha(t.type(r?"query":"path"),{pattern:new RegExp(e,this.config.caseInsensitive?"i":void 0)}))(i):null}};let h,d;for(;(a=s.exec(e))&&(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,sc(this._params)]),c=s.lastIndex;d=e.substring(c);const p=d.indexOf("?");if(p>=0){const e=d.substring(p);if(d=d.substring(0,p),e.length>0)for(c=0;a=i.exec(e);)h=u(a,!0),l(h.id),this._params.push(n.fromSearch(h.id,h.type,r.state)),c=s.lastIndex}this._segments.push(d),this._compiled=o.map(e=>Bl.apply(null,e)).concat(Bl(d))}append(e){return this._children.push(e),e._cache={path:this._cache.path.concat(e),parent:this,pattern:null},e}isRoot(){return this._cache.path[0]===this}toString(){return this.pattern}_getDecodedParamValue(e,t){return t.value(e)}exec(e,t={},n){const r=(s=this._cache,i="pattern",o=()=>new RegExp(["^",ec(this._cache.path.map(e=>e._compiled)).join(""),!1===this.config.strict?"/?":"","$"].join(""),this.config.caseInsensitive?"i":void 0),s[i]=s[i]||o()).exec(e);var s,i,o;if(!r)return null;const a=this.parameters(),c=a.filter(e=>!e.isSearch()),l=a.filter(e=>e.isSearch()),u=this._cache.path.map(e=>e._segments.length-1).reduce((e,t)=>e+t),h={};if(u!==r.length-1)throw new Error(`Unbalanced capture group in route '${this.pattern}'`);function d(e){const t=e=>e.split("").reverse().join(""),n=Qa(t(e).split(/-(?!\\)/),t);return Qa(n,e=>e.replace(/\\-/g,"-")).reverse()}for(let e=0;e<u;e++){const t=c[e];let n=r[e+1];for(let e=0;e<t.replace.length;e++)t.replace[e].from===n&&(n=t.replace[e].to);n&&!0===t.array&&(n=d(n)),h[t.id]=this._getDecodedParamValue(n,t)}return l.forEach(e=>{let n=t[e.id];for(let t=0;t<e.replace.length;t++)e.replace[t].from===n&&(n=e.replace[t].to);h[e.id]=this._getDecodedParamValue(n,e)}),n&&(h["#"]=n),h}parameters(e={}){return!1===e.inherit?this._params:ec(this._cache.path.map(e=>e._params))}parameter(e,t={}){const{parent:n}=this._cache;return(()=>{for(const t of this._params)if(t.id===e)return t})()||!1!==t.inherit&&n&&n.parameter(e,t)||null}validates(e){e=e||{};return this.parameters().filter(t=>Ae(e,t.id)).map(t=>((e,t)=>!e||e.validates(t))(t,e[t.id])).reduce(Ga,!0)}format(e={}){const t=this._cache.path,n=t.map(Kl.pathSegmentsAndParams).reduce(Za,[]).map(e=>S(e)?e:s(e)),r=t.map(Kl.queryParams).reduce(Za,[]).map(s);if(n.concat(r).filter(e=>!1===e.isValid).length)return null;function s(t){const n=t.value(e[t.id]),r=t.validates(n),s=t.isDefaultValue(n),i=!!s&&t.squash,o=t.type.encode(n);return{param:t,value:n,isValid:r,isDefaultValue:s,squash:i,encoded:o}}const i=n.reduce((e,t)=>{if(S(t))return e+t;const{squash:n,encoded:r,param:s}=t;return!0===n?e.match(/\/$/)?e.slice(0,-1):e:S(n)?e+n:!1!==n||A(r)?e:Array.isArray(r)?e+Qa(r,Ql).join("-"):s.raw?e+r:e+encodeURIComponent(r)},""),o=r.map(e=>{const{param:t,squash:n,isDefaultValue:r}=e;let{encoded:s}=e;if(!(A(s)||r&&!1!==n)&&(Array.isArray(s)||(s=[s]),0!==s.length))return t.raw||(s=Qa(s,encodeURIComponent)),s.map(e=>`${t.id}=${e}`)}).reduce(Za,[]).join("&");return i+(o?`?${o}`:"")+(e["#"]?`#${e["#"]}`:"")}}function Ql(e){return encodeURIComponent(e).replace(/-/g,e=>`%5C%${e.charCodeAt(0).toString(16).toUpperCase()}`)}Kl.nameValidator=/^\w+([-.]+\w+)*(?:\[\])?$/;class Gl{name=void 0;navigable=void 0;parent=void 0;params=void 0;url=void 0;includes=void 0;constructor(e){Object.assign(this,e),this.$$state=()=>this,this.self=e;const t=this.name?pl.fromString(this.name):null;this.__stateObjectCache={nameGlob:t}}is(e){return this===e||this.self===e||this.fqn()===e}fqn(){if(!(this.parent&&this.parent instanceof this.constructor))return this.name;const e=this.parent.fqn();return e?`${e}.${this.name}`:this.name}root(){return this.parent&&this.parent.root()||this}parameters(e){return((e=qa(e,{inherit:!0,matchingKeys:null})).inherit&&this.parent&&this.parent.parameters()||[]).concat(Object.values(this.params)).filter(t=>!e.matchingKeys||Ae(e.matchingKeys,t.id))}parameter(e,t={}){return this.url&&this.url.parameter(e,t)||Ka(Object.values(this.params),lc("id",e))||t.inherit&&this.parent&&this.parent.parameter(e)}toString(){return this.fqn()}}Gl.isStateDeclaration=e=>j(e.$$state),Gl.isState=e=>x(e.__stateObjectCache);class Jl{constructor(e,t,n){this.urlService=e,this.stateService=t,this.routerGlobals=n}create(e,t){const{isState:n,isStateDeclaration:r}=Gl,s=pc([[S,e=>s(this.urlService.compile(e))],[hc(Kl),e=>this.fromUrlMatcher(e,t)],[(...e)=>n(...e)||r(...e),e=>this.fromState(e,this.stateService,this.routerGlobals)],[hc(RegExp),e=>this.fromRegExp(e,t)],[j,e=>new Zl(e,t)]]),i=s(e);if(!i)throw new Error("invalid 'what' in when()");return i}fromUrlMatcher(e,t){let n=t;S(t)&&(t=this.urlService.compile(t)),hc(Kl)(t)&&(n=e=>t.format(e));const r={urlMatcher:e,matchPriority:function(t){const n=e.parameters().filter(e=>e.isOptional);return n.length?n.filter(e=>t[e.id]).length/n.length:1e-6},type:"URLMATCHER"};return Object.assign(new Zl(function(t){const n=e.exec(t.path,t.search,t.hash);return e.validates(n)&&n},n),r)}fromState(e,t,n){const r=Gl.isStateDeclaration(e)?e.$$state():e,s={state:r,type:"STATE"};return Object.assign(this.fromUrlMatcher(r.url,e=>{const s=t;s.href(r,e)!==s.href(n.current,n.params)&&s.transitionTo(r,e,{inherit:!0,source:"url"})}),s)}fromRegExp(e,t){if(e.global||e.sticky)throw new Error("Rule RegExp must not be global or sticky");const n=S(t)?e=>t.replace(/\$(\$|\d{1,2})/,(t,n)=>e["$"===n?0:Number(n)]):t,r={regexp:e,type:"REGEXP"};return Object.assign(new Zl(t=>e.exec(t.path),n),r)}}Jl.isUrlRule=e=>e&&["type","match","handler"].every(t=>C(e[t]));class Zl{constructor(e,t){this.match=e,this.type="RAW",this.$id=-1,this._group=void 0,this.handler=t||(e=>e),this.priority=void 0}matchPriority(e){return he(E(e)),0-this.$id}}function Xl(e,t){let n=function(e,t){return(t.priority||0)-(e.priority||0)}(e,t);return 0!==n?n:(n=((e,t)=>{const n={STATE:4,URLMATCHER:4,REGEXP:3,RAW:2,OTHER:1};return(n[e.type]||0)-(n[t.type]||0)})(e,t),0!==n?n:(n=((e,t)=>e.urlMatcher&&t.urlMatcher?Kl.compare(e.urlMatcher,t.urlMatcher):0)(e,t),0!==n?n:((e,t)=>{const n={STATE:!0,URLMATCHER:!0};return n[e.type]&&n[t.type]?0:(e.$id||0)-(t.$id||0)})(e,t)))}function Yl(e){if(!(j(e)||S(e)||hc(Mc)(e)||Mc.isDef(e)))throw new Error("'handler' must be a string, function, TargetState, or have a state: 'newtarget' property");return j(e)?e:dc(e)}class eu{constructor(e){this._sortFn=Xl,this._rules=[],this._id=0,this.urlRuleFactory=e}initial(e){const t=Yl(e);this.rule(this.urlRuleFactory.create((e,t)=>0===t.globals.transitionHistory.size()&&!!/^\/?$/.exec(e.path),t))}otherwise(e){const t=Yl(e);this._otherwiseFn=this.urlRuleFactory.create(dc(!0),t),this._sorted=!1}removeRule(e){Fa(this._rules,e)}rule(e){if(!Jl.isUrlRule(e))throw new Error("invalid rule");return e.$id=this._id++,e.priority=e.priority||0,this._rules.push(e),this._sorted=!1,()=>this.removeRule(e)}rules(){return this.ensureSorted(),this._rules.concat(this._otherwiseFn?[this._otherwiseFn]:[])}sort(e){const t=this.stableSort(this._rules,this._sortFn=e||this._sortFn);let n=0;for(let e=0;e<t.length;e++)t[e]._group=n,e<t.length-1&&0!==this._sortFn(t[e],t[e+1])&&n++;this._rules=t,this._sorted=!0}ensureSorted(){this._sorted||this.sort()}stableSort(e,t){const n=e.map((e,t)=>({elem:e,idx:t}));return n.sort((e,n)=>{const r=t(e.elem,n.elem);return 0===r?e.idx-n.idx:r}),n.map(e=>e.elem)}when(e,t,n){const r=this.urlRuleFactory.create(e,t);return C(n&&n.priority)&&(r.priority=n.priority),this.rule(r),r}}class tu{constructor(e){this.urlServiceConfig=e}fromConfig(e,t,n){return new Hc(e,t,Uc,this.urlServiceConfig,n)}fromPath(e,t,n){return new Hc(e,t,Pc,this.urlServiceConfig,n)}fromSearch(e,t,n){return new Hc(e,t,Dc,this.urlServiceConfig,n)}}class nu{static $inject=on([sn.$location,sn.$state,sn.$router,sn.$urlConfig]);$location;constructor(e,t,n,r){this.$locationProvider=e,this.stateService=t,this.stateService.urlService=this,this.urlRuleFactory=new Jl(this,this.stateService,n),this.rules=new eu(this.urlRuleFactory),this.config=r,this.paramFactory=new tu(this.config),this._urlListeners=[]}getPath(){return this.$location.getPath()}getSearch(){return this.$location.getSearch()}getHash(){return this.$location.getHash()}$get=[sn.$location,sn.$rootScope,(e,t)=>(this.$location=e,t.$on("$locationChangeSuccess",e=>{this._urlListeners.forEach(t=>{t(e)})}),this.listen(!0),this)];baseHref(){return this._baseHref||(this._baseHref=rn()||window.location.pathname)}url(e,t){if(C(e)){const t=decodeURIComponent(e);this.$location.setUrl(t)}return t&&this.$location.setState(t),this.$location.getUrl()}onChange(e){return this._urlListeners.push(e),()=>Fa(this._urlListeners,e)}parts(){return{path:this.$location.getPath(),search:this.$location.getSearch(),hash:this.$location.getHash()}}sync(e){if(e&&e.defaultPrevented)return;const{stateService:t}=this,n={path:this.$location.getPath(),search:this.$location.getSearch(),hash:this.$location.getHash()},r=this.match(n);pc([[S,e=>this.url(e)],[Mc.isDef,e=>t.go(e.state,e.params,e.options)],[hc(Mc),e=>t.go(e.state(),e.params(),e.options())]])(r&&r.rule.handler(r.match,n))}listen(e){return!1===e?(this._stopListeningFn&&this._stopListeningFn(),void delete this._stopListeningFn):this._stopListeningFn=this._stopListeningFn||this.onChange(e=>this.sync(e))}match(e){e=Object.assign({path:"",search:{},hash:""},e);const t=this.rules.rules(),n=t=>{const n=t.match(e);return n&&{match:n,rule:t,weight:t.matchPriority(n)}};let r;for(let e=0;e<t.length&&(!r||r.rule._group===t[e]._group);e++){const s=n(t[e]);r=!r||s&&s.weight>r.weight?s:r}return r}update(e){e?this.location=this.url():this.url()!==this.location&&this.url(this.location,!0)}push(e,t,n){const r=n&&!!n.replace;this.url(e.format(t||{}),r)}href(e,t,n){let r=e.format(t);if(O(r))return null;n=n||{absolute:!1};const s=this.$locationProvider.html5ModeConf.enabled;if(s||(r=`#${this.$locationProvider.hashPrefixConf}${r}`),r=function(e,t,n,r){return"/"===r?e:t?(e=>e.replace(/\/[^/]*$/,""))(r)+e:n?r.slice(1)+e:e}(r,s,n.absolute,this.baseHref()),!n.absolute||!r)return r;const i=!s&&r?"/":"";return[`${window.location.protocol}//`,window.location.host,i,r].join("")}compile(e,t){const n=this.config,r=t&&!t.state&&t.params;t=r?Object.assign({state:{params:r}},t):t;const s={strict:n._isStrictMode,caseInsensitive:n._isCaseInsensitive};return new Kl(e,n.paramTypes,this.paramFactory,Object.assign(s,t))}isMatcher(e){if(!x(e))return!1;let t=!0;return Object.entries(Kl.prototype).forEach(([n,r])=>{j(r)&&(t=t&&C(e[n])&&j(e[n]))}),t}}class ru{constructor(e){this._states=e}isRelative(e){return 0===(e=e||"").indexOf(".")||0===e.indexOf("^")}find(e,t,n=!0){if(!e&&""!==e)return;const r=S(e);let s=r?e:e.name;this.isRelative(s)&&(s=this.resolvePath(s,t));const i=this._states[s];if(i&&(r||!(r||i!==e&&i.self!==e)))return i;if(r&&n){const e=Object.values(this._states).filter(e=>e.__stateObjectCache.nameGlob&&e.__stateObjectCache.nameGlob.matches(s));if(e.length>1)throw new Error(`stateMatcher.find: Found multiple matches for ${s} using glob: ${e.map(e=>e.name)}`);return e[0]}}resolvePath(e,t){if(!t)throw new Error(`No reference point given for path '${e}'`);const n=this.find(t),r=e.split("."),s=r.length;let i=0,o=n;for(;i<s;i++)if(""!==r[i]||0!==i){if("^"!==r[i])break;if(!o.parent)throw new Error(`Path '${e}' not valid for state '${n.name}'`);o=o.parent}else o=n;const a=r.slice(i).join(".");return o.name+(o.name&&a?".":"")+a}}function su(e){return e.self.$$state=()=>e,e.self}function iu(e){return e.parent&&e.parent.data&&(e.data=e.self.data=Ha(e.parent.data,e.data)),e.data}function ou(e,t){return function(n){let r=n.self;if(r&&r.url&&r.name&&r.name.match(/\.\*\*$/)){const e={};ic(r,e),e.url+="{remainder:any}",r=e}const{parent:s}=n,i=function(e){if(!S(e))return!1;const t="^"===e.charAt(0);return{val:t?e.substring(1):e,root:t}}(r.url),o=i?e.compile(i.val,{state:r}):r.url;if(!o)return null;if(!e.isMatcher(o))throw new Error(`Invalid url '${o}' in state '${n}'`);return i&&i.root?o:(s&&s.navigable||t()).url.append(o)}}function au(e){return e.parent?e.parent.path.concat(e):[e]}function cu(e){const t=e.parent?Object.assign({},e.parent.includes):{};return t[e.name]=!0,t}function lu(e){const t=pc([[e=>e.resolveFn,e=>new Vc(du(e),e.resolveFn,e.deps,e.policy)],[e=>e.useFactory,e=>new Vc(du(e),e.useFactory,e.deps||e.dependencies,e.policy)],[e=>e.useClass,e=>new Vc(du(e),()=>new e.useClass,[],e.policy)],[e=>e.useValue,e=>new Vc(du(e),()=>e.useValue,[],e.policy,e.useValue)],[e=>e.useExisting,e=>new Vc(du(e),e=>e,[e.useExisting],e.policy)]]),n=pc([[e=>S(e.val),e=>new Vc(e.token,e=>e,[e.val],e.policy)],[e=>Array.isArray(e.val),e=>new Vc(e.token,sc(e.val),e.val.slice(0,-1),e.policy)],[e=>j(e.val),e=>new Vc(e.token,e.val,(e=>{const{$injector:t}=window.angular;return e.$inject||t&&pn(e,t.strictDi)||"deferred"})(e.val),e.policy)]]),r=pc([[hc(Vc),e=>e],[e=>!(!e.token||!e.resolveFn),t],[e=>!!(e&&e.val&&(S(e.val)||Array.isArray(e.val)||j(e.val))),n],[dc(!0),e=>{throw new Error(`Invalid resolve value: ${xc(e)}`)}]]),s=e.resolve,i=Array.isArray(s)?s:((e,t)=>Object.keys(e||{}).map(n=>({token:n,val:e[n],deps:void 0,policy:t[n]})))(s,e.resolvePolicy||{});return i.map(r)}class uu{constructor(e,t){this.matcher=e,this.$injector=void 0;const n=this,r=()=>e.find("");var s,i;this.builders={name:[e=>e.name],self:[su],parent:[function(t){return hu(t)?null:e.find(n.parentName(t))||r()}],data:[iu],url:[ou(t,r)],navigable:[(i=hu,function(e){return!i(e)&&e.url?e:e.parent?e.parent.navigable:null})],params:[(s=t.paramFactory,function(e){const t=e.url&&e.url.parameters({inherit:!1})||[],n=Object.values(Qa(za(e.params||{},t.map(e=>e.id)),(t,n)=>s.fromConfig(n,null,e.self)));return t.concat(n).map(e=>[e.id,e]).reduce(rc,{})})],views:[],path:[au],includes:[cu],resolvables:[lu]}}builder(e,t){const{builders:n}=this,r=n[e]||[];return S(e)&&!C(t)?r.length>1?r:r[0]:S(e)&&j(t)?(n[e]=r,n[e].push(t),()=>n[e].splice(n[e].indexOf(t,1))&&null):void 0}build(e){const{matcher:t,builders:n}=this,r=this.parentName(e);if(r&&!t.find(r,void 0,!1))return null;for(const t in n){if(!Ae(n,t))continue;const r=n[t].reduce((e,t)=>n=>t(n,e),()=>{});e[t]=r(e)}return e}parentName(e){const t=e.name||"",n=t.split(".");if("**"===n.pop()&&n.pop(),n.length){if(e.parent)throw new Error(`States that specify the 'parent:' property should not have a '.' in their name (${t})`);return n.join(".")}return e.parent?S(e.parent)?e.parent:e.parent.name:""}name(e){const{name:t}=e;if(-1!==t.indexOf(".")||!e.parent)return t;const n=S(e.parent)?e.parent:e.parent.name;return n?`${n}.${t}`:t}}function hu(e){return""===e.name}function du(e){return e.provide||e.token}class pu{constructor(e,t,n,r,s){this.stateRegistry=e,this.urlServiceRules=t,this.states=n,this.builder=r,this.listeners=s,this.queue=[]}register(e){const t=new Gl(e);if(!S(name))throw new Error("State must have a valid name");if(Ae(this.states,t.name)||this.queue.map(e=>e.name).includes(t.name))throw new Error(`State '${t.name}' is already defined`);return this.queue.push(t),this.flush(),t}flush(){const{queue:e,states:t,builder:n}=this,r=[],s=[],i={},o=e=>Ae(this.states,e)&&this.states[e],a=()=>{r.length&&this.listeners.forEach(e=>e("registered",r.map(e=>e.self)))};for(;e.length>0;){const c=e.shift(),{name:l}=c,u=n.build(c),h=s.indexOf(c);if(u){const e=o(l);if(e&&e.name===l)throw new Error(`State '${l}' is already defined`);const n=o(`${l}.**`);n&&this.stateRegistry.deregister(n),t[l]=c,this.attachRoute(c),h>=0&&s.splice(h,1),r.push(c);continue}const d=i[l];if(i[l]=e.length,h>=0&&d===e.length)return e.push(c),a(),t;h<0&&s.push(c),e.push(c)}return a(),t}attachRoute(e){if(e.abstract||!e.url)return;const t=this.urlServiceRules;t.rule(t.urlRuleFactory.create(e))}}class fu{static $inject=on([sn.$url,sn.$state,sn.$router,sn.$view]);constructor(e,t,n,r){this.states={},t.stateRegistry=this,this.urlService=e,this.urlServiceRules=e.rules,this.$injector=void 0,this.listeners=[],this.matcher=new ru(this.states),this.builder=new uu(this.matcher,e),this.builder.builder("views",Jc),this.builder.builder("onExit",this.getStateHookBuilder("onExit")),this.builder.builder("onRetain",this.getStateHookBuilder("onRetain")),this.builder.builder("onEnter",this.getStateHookBuilder("onEnter")),this.stateQueue=new pu(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=[sn.$injector,e=>(this.$injector=e,this.builder.$injector=e,this)];getStateHookBuilder(e){const t=this;return function(n){const r=n[e],s="onExit"===e?"from":"to";return r?function(e,n){const i=new Qc(e.treeChanges(s)).subContext(n.$$state()),o=Object.assign($u(i),{$state$:n,$transition$:e});return t.$injector.invoke(r,t,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(e){return this.listeners.push(e),function(){Fa(this.listeners,e)}.bind(this)}root(){return this._root}register(e){return this.stateQueue.register(e)}_deregisterTree(e){const t=this.get().map(e=>e.$$state()),n=e=>{const r=t.filter(t=>-1!==e.indexOf(t.parent));return 0===r.length?r:r.concat(n(r))},r=n([e]),s=[e].concat(r).reverse();return s.forEach(e=>{const t=this.urlServiceRules;t.rules().filter(lc("state",e)).forEach(e=>t.removeRule(e)),delete this.states[e.name]}),s}deregister(e){const t=this.get(e);if(!t)throw new Error(`Can't deregister state; not found: ${e}`);const n=this._deregisterTree(t.$$state());return this.listeners.forEach(e=>e("deregistered",n.map(e=>e.self))),n}get(e,t){if(0===arguments.length)return Object.keys(this.states).map(e=>this.states[e].self);const n=this.matcher.find(e,t);return n&&n.self||null}decorator(e,t){return this.builder.builder(e,t)}}const $u=e=>e.getTokens().filter(S).map(t=>{const n=e.getResolvable(t);return[t,"NOWAIT"===e.getPolicy(n).async?n.promise:n.data]}).reduce(rc,{});function mu(e){const t=e.match(/^\s*({[^}]*})\s*$/);t&&(e=`(${t[1]})`);const n=e.replace(/\n/g," ").match(/^\s*([^(]*?)\s*(\((.*)\))?\s*$/);if(!n||4!==n.length)throw new Error(`Invalid state ref '${e}'`);return{state:n[1]||null,paramExpr:n[3]||null}}function gu(e){const t=zt(e,"$ngView"),n=uc("$cfg.path")(t);return n?sc(n).state.name:void 0}function vu(e,t,n){const r=n.ngState||e.current.name,s=Object.assign(function(e,t){return{relative:gu(e)||t.$current,inherit:!0,source:"sref"}}(t,e),n.ngStateOpts||{}),i=e.href(r,n.ngStateParams,s);return{ngState:r,ngStateParams:n.ngStateParams,ngStateOpts:s,href:i}}function yu(e){const t="[object SVGAnimatedString]"===Object.prototype.toString.call(e.getAttribute("href")),n="FORM"===e.nodeName;return{attr:n?"action":t?"xlink:href":"href",isAnchor:"A"===e.nodeName,clickable:!n}}function wu(e,t,n,r,s){return function(i){const o=i.which||i.button,a=r();if(o>1||i.ctrlKey||i.metaKey||i.shiftKey||i.altKey||e.getAttribute("target"))i.preventDefault(),i.stopImmediatePropagation();else{const r=setTimeout(function(){e.getAttribute("disabled")||t.go(a.ngState,a.ngStateParams,a.ngStateOpts).then(()=>{s.$emit("$updateBrowser")})});i.preventDefault();let o=n.isAnchor&&!a.href?1:0;i.preventDefault=function(){o--<=0&&clearTimeout(r)}}}}function bu(e,t,n,r){let s=r?r.events:void 0;Array.isArray(s)||(s=["click"]);for(const t of s)e.addEventListener(t,n);t.$on("$destroy",function(){for(const t of s)e.removeEventListener(t,n)})}function Eu(e,t,n){const r=e;return{restrict:"A",require:["?^ngSrefActive","?^ngSrefActiveEq"],link:(e,s,i,o)=>{const a=yu(s),c=o[1]||o[0];let l=null;const u={},h=()=>vu(r,s,u),d=mu(i.ngSref);function p(){u.ngStateParams=Object.assign({},e.$eval(d.paramExpr));const t=h();l&&l(),c&&(l=c.$$addStateInfo(t.ngState,t.ngStateParams)),A(t.href)||i.$set(a.attr,t.href)}u.ngState=d.state,u.ngStateOpts=i.ngSrefOpts?e.$eval(i.ngSrefOpts):{},d.paramExpr&&(e.$watch(d.paramExpr,function(e){u.ngStateParams=Object.assign({},e),p()},!0),u.ngStateParams=Object.assign({},e.$eval(d.paramExpr))),p(),e.$on("$destroy",t.onStatesChanged(p)),e.$on("$destroy",n.onSuccess({},p)),a.clickable&&bu(s,e,wu(s,r,a,h,e),u.ngStateOpts)}}}function Cu(e,t,n){return{restrict:"A",require:["?^ngSrefActive","?^ngSrefActiveEq"],link(r,s,i,o){const a=yu(s),c=o[1]||o[0];let l=null;const u={},h=()=>vu(e,s,u),d=["ngState","ngStateParams","ngStateOpts"],p=d.reduce((e,t)=>(e[t]=()=>{},e),{});function f(){const e=h();l&&l(),c&&(l=c.$$addStateInfo(e.ngState,e.ngStateParams)),A(e.href)||i.$set(a.attr,e.href)}if(d.forEach(e=>{u[e]=i[e]?r.$eval(i[e]):null,i.$observe(e,t=>{p[e](),p[e]=r.$watch(t,t=>{u[e]=t,f()})})}),f(),r.$on("$destroy",t.onStatesChanged(f)),r.$on("$destroy",n.onSuccess({},f)),!a.clickable)return;const $=wu(s,e,a,h,r);bu(s,r,$,u.ngStateOpts)}}}function xu(e,t,n,r,s){return{restrict:"A",controller(i,o,a){let c,l=[];const u=n(a.ngSrefActiveEq||"",!1)(i);try{c=i.$eval(a.ngSrefActive)}catch{}function h(e){e.promise.then($,()=>{})}function d(){p(c)}function p(e){x(e)&&(l=[],Object.entries(e).forEach(([e,t])=>{const n=function(e,t){const n=mu(e);f(n.state,i.$eval(n.paramExpr),t)};S(t)?n(t,e):Array.isArray(t)&&t.forEach(t=>{n(t,e)})}))}function f(t,n,r){const s={state:e.get(t,gu(o))||{name:t},params:n,activeClass:r};return l.push(s),function(){Fa(l,s)}}function $(){const t=e=>e.split(/\s/).filter(Boolean),n=e=>e.map(e=>e.activeClass).map(t).reduce(Za,[]),r=n(l).concat(t(u)).reduce(Ya,[]),s=n(l.filter(t=>e.includes(t.state.name,t.params))),i=!!l.filter(t=>e.is(t.state.name,t.params)).length?t(u):[],a=s.concat(i).reduce(Ya,[]),c=r.filter(e=>!a.includes(e));a.forEach(e=>o.classList.add(e)),c.forEach(e=>o.classList.remove(e))}c=c||n(a.ngSrefActive||"",!1)(i),p(c),this.$$addStateInfo=function(e,t){if(x(c)&&l.length>0)return;const n=f(e,t,c);return $(),n},i.$on("$destroy",function(){const e=r.onStatesChanged(d),t=s.onStart({},h),n=i.$on("$stateChangeSuccess",$);return function(){e(),t(),n()}}()),t.transition&&h(t.transition),$()}}}Eu.$inject=["$state","$stateRegistry","$transitions"],Cu.$inject=["$state","$stateRegistry","$transitions"],xu.$inject=["$state","$router","$interpolate","$stateRegistry","$transitions"];const Su=["$view","$animate","$viewScroll","$interpolate",function(e,t,n,r){const s={$cfg:{viewDecl:{$context:e.rootViewContext()}},$ngView:{}},i={count:0,terminal:!0,priority:400,transclude:"element",compile:(o,a,c)=>function(o,a,l){const u=l.onload||"",h=l.autoscroll,d={enter(e,n,r){Se(e)?t.enter(e,null,n).then(r):(n.after(e),r())},leave(e,n){Se(e)?t.leave(e).then(n):(e.parentElement.removeChild(e),n())}},p=zt(a,"$ngView")||s,f=r(l.ngView||l.name||"")(o)||"$default";let $,m,g,v;const y={id:i.count++,name:f,fqn:p.$ngView.fqn?`${p.$ngView.fqn}.${f}`:f,config:null,configUpdated:function(e){if(e&&!(e instanceof Xc))return;if(t=v,n=e,t===n)return;var t,n;jc.traceUIViewConfigUpdated(y,e&&e.viewDecl&&e.viewDecl.$context),v=e,b(e)},get creationContext(){const e=uc("$cfg.viewDecl.$context")(p),t=uc("$ngView.creationContext")(p);return e||t}};jc.traceUIViewEvent("Linking",y),Ut(a,"$ngView",{$ngView:y}),b();const w=e.registerUIView(y);function b(e){const t=o.$new(),r=Promise.withResolvers(),s=Promise.withResolvers(),i={$cfg:e,$ngView:y},l={$animEnter:r.promise,$animLeave:s.promise,$$animLeave:s};t.$emit("$viewContentLoading",f),m=c(t,function(e){Ut(e,"$ngViewAnim",l),Ut(e,"$ngView",i),d.enter(e,a,function(){r.resolve(),g&&g.$emit("$viewContentAnimationEnded"),(C(h)&&!h||o.$eval(h))&&n(e)}),function(){if($&&(jc.traceUIViewEvent("Removing (previous) el",It($,"$ngView")),$.remove(),$=null),g&&(jc.traceUIViewEvent("Destroying scope",y),g.$destroy(),g=null),m){const e=It(m,"$ngViewAnim");jc.traceUIViewEvent("Animate out",e),d.leave(m,function(){e.$$animLeave.resolve(),$=null}),$=m,m=null}}()}),g=t,g.$emit("$viewContentLoaded",e||v),g.$eval(u)}o.$on("$destroy",function(){jc.traceUIViewEvent("Destroying/Unregistering",y),w()})}};return i}];function Ou(e,t,n){const r=uc("viewDecl.controllerAs"),s=uc("viewDecl.resolveAs");return{priority:-400,compile(i){const o=i.innerHTML;return Pt(i,!0),function(i,a){const c=It(a,"$ngView");if(!c)return a.innerHTML=o,void e(a.contentDocument||a.childNodes)(i);const l=c.$cfg||{viewDecl:{},getTemplate:()=>{}},u=l.path&&new Qc(l.path);a.innerHTML=l.getTemplate(a,u)||o,jc.traceUIViewFill(c.$ngView,a.innerHTML);const h=e(a.contentDocument||a.childNodes),{controller:d}=l,p=r(l),f=s(l),$=u&&$u(u);if(f&&(i.$target[f]=$),d){const e=t(d,Object.assign({},$,{$scope:i,$element:a}));p&&(i.$target[p]=e,i.$target[p][f]=$),Ut(a,"$ngControllerController",e),Array.from(a.children).forEach(t=>{Ut(t,"$ngControllerController",e)}),function(e,t,n,r){!j(t.$onInit)||r.viewDecl.component||r.viewDecl.componentProvider||t.$onInit();const s=sc(r.path).state.self,i={bind:t};if(j(t.uiOnParamsChanged)){const o=new Qc(r.path).getResolvable("$transition$").data,a=e=>{if(e===o||-1!==e.exiting().indexOf(s))return;const n=e.params("to"),r=e.params("from"),i=e=>e.paramSchema,a=e.treeChanges("to").map(i).reduce(Za,[]),c=e.treeChanges("from").map(i).reduce(Za,[]),l=a.filter(e=>{const t=c.indexOf(e);return-1===t||!c[t].type.equals(n[e.id],r[e.id])});if(l.length){const r=l.map(e=>e.id),s=Wa(n,(e,t)=>-1!==r.indexOf(t));t.uiOnParamsChanged(s,e)}};n.$on("$destroy",e.onSuccess({},a,i))}if(j(t.uiCanExit)){const r=Au++,o="_uiCanExitIds",a=e=>!!e&&(e[o]&&!0===e[o][r]||a(e.redirectedFrom())),c=e=>{let n;const s=e[o]=e[o]||{};return a(e)||(n=Promise.resolve(t.uiCanExit(e)),n.then(e=>s[r]=!1!==e)),n},l={exiting:s.name};n.$on("$destroy",e.onBefore(l,c,i))}}(n,e,i,l)}h(i)}}}}Ou.$inject=["$compile","$controller","$transitions"];let Au=0;function ku(e){return{link:(t,n,r)=>{const s=r.ngChannel,i=n.childNodes.length>0,o=e.subscribe(s,e=>{i?x(e)&&t.$merge(e):n.innerHTML=e});t.$on("$destroy",()=>o())}}}function Tu(e,t){return{restrict:"A",link(n,r,s){const i=s.ngSetter;if(!i)return void t.warn("ng-setter: expression null");const o=e(i).assign;if(!o)return void t.warn("ng-setter: expression invalid");const a=e=>{o(n,e.trim())},c=new MutationObserver(e=>{let t=!1;for(const n of e)if("childList"===n.type||"characterData"===n.type){t=!0;break}t&&a(r.innerHTML)});c.observe(r,{childList:!0,subtree:!0,characterData:!0}),n.$on("$destroy",()=>c.disconnect()),a(r.innerHTML)}}}function _u(e,t){return{restrict:"A",link(n,r,s){const i=s.ngInject;if(!i)return;const o=i.split(";").map(e=>e.trim()).filter(Boolean);for(const r of o)t.has(r)?n[r]=t.get(r):e.warn(`Injectable ${r} not found in $injector`)}}}function Nu(){return{restrict:"A",link(e,t,n){const r=n.ngEl,s=r||t.id;e.$target[s]=t;const i=t.parentNode;if(!i)return;const o=new MutationObserver(n=>{for(const r of n)Array.from(r.removedNodes).forEach(n=>{n===t&&(delete e.$target[s],o.disconnect())})});o.observe(i,{childList:!0})}}}ku.$inject=[sn.$eventBus],Tu.$inject=[sn.$parse,sn.$log],_u.$inject=[sn.$log,sn.$injector];class ju{constructor(){this.defaults={retryDelay:1e3,maxRetries:1/0,heartbeatTimeout:15e3,transformMessage(e){try{return JSON.parse(e)}catch{return e}}}}$get=[sn.$log,e=>(this.$log=e,(e,t={})=>{const n={...this.defaults,...t},r=this.#u(e,n.params);return this.#h(r,n)})];#u(e,t){if(!t)return e;const n=Object.entries(t).map(([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(t)}`).join("&");return e+(e.includes("?")?"&":"?")+n}#h(e,t){let n,r,s=0,i=!1;const o=()=>{i||(n=new EventSource(e,{withCredentials:!!t.withCredentials}),n.addEventListener("open",e=>{s=0,t.onOpen?.(e),t.heartbeatTimeout&&a()}),n.addEventListener("message",e=>{let{data:n}=e;try{n=t.transformMessage?t.transformMessage(n):n}catch{}t.onMessage?.(n,e),t.heartbeatTimeout&&a()}),n.addEventListener("error",e=>{t.onError?.(e),i||(n.close(),s<t.maxRetries?(s++,t.onReconnect?.(s),setTimeout(o,t.retryDelay)):this.$log.warn("SSE: Max retries reached"))}))},a=()=>{clearTimeout(r),r=setTimeout(()=>{this.$log.warn("SSE: heartbeat timeout, reconnecting..."),n.close(),t.onReconnect?.(++s),o()},t.heartbeatTimeout)};return o(),{close(){i=!0,clearTimeout(r),n.close()},connect(){!1===i&&close(),o()}}}}function Ru(){return{restrict:"A",link(e,t,n){const r=n.onEnter,s=n.onLeave,i=new IntersectionObserver(t=>{t.forEach(t=>{t.isIntersecting?r&&e.$eval(r):s&&e.$eval(s)})},{root:null,threshold:.1});i.observe(t);const o=t.parentNode;let a;o&&(a=new MutationObserver(e=>{for(const n of e)Array.from(n.removedNodes).forEach(e=>{e===t&&(i.disconnect(),a.disconnect())})}),a.observe(o,{childList:!0})),e.$on("$destroy",()=>{i.disconnect(),a&&a.disconnect()})}}}function Lu(){return{async link(e,t,n){e.$target[n.as||"wasm"]=(await Ne(n.src)).exports}}}function Vu(){return{scope:!1,async link(e,t,n){e.$scopename=n.ngScope}}}class Mu{constructor(){this.defaults={}}$get=[sn.$exceptionHandler,e=>new Pu(this.defaults,e)]}class Pu{constructor(e,t){this.defaults=Object.freeze({...e}),this.$exceptionHandler=t}get(e){$e(e,"key");try{return Iu()[e]||null}catch(e){throw this.$exceptionHandler(e)}}getObject(e){$e(e,"key");const t=this.get(e);if(!t)return null;try{return JSON.parse(t)}catch(t){throw this.$exceptionHandler(new SyntaxError(`badparse: "${e}" => ${t.message}`))}}getAll(){try{return Iu()}catch(e){return this.$exceptionHandler(e)}}put(e,t,n={}){$e(e,"key"),$e(t,"value");const r=encodeURIComponent(e),s=encodeURIComponent(t);try{document.cookie=`${r}=${s}${function(e={}){const t=[];if(C(e.path)){if(!S(e.path))throw new TypeError(`${$}:path ${e.path}`);t.push(`path=${e.path}`)}if(C(e.domain)){if(!S(e.domain))throw new TypeError(`${$}:domain ${e.domain}`);t.push(`domain=${e.domain}`)}if(!A(e.expires)){let n;if(e.expires instanceof Date)n=e.expires;else{if(!T(e.expires)&&!S(e.expires))throw new TypeError(`${$}:expires ${String(e.expires)}`);n=new Date(e.expires)}if(isNaN(n.getTime()))throw new TypeError(`${$}:expires ${String(e.expires)}`);t.push(`expires=${n.toUTCString()}`)}e.secure&&t.push("secure");if(C(e.samesite)){if(!S(e.samesite))throw new TypeError(`${$}:samesite ${e.samesite}`);const n=e.samesite.toLowerCase();if(!["lax","strict","none"].includes(n))throw new TypeError(`${$}:samesite ${e.samesite}`);t.push(`samesite=${n}`)}return t.length?`;${t.join(";")}`:""}({...this.defaults,...n})}`}catch(e){this.$exceptionHandler(e)}}putObject(e,t,n){$e(e,"key"),fe(t,"value"),he(!A(t),"badarg: value");try{const r=JSON.stringify(t);this.put(e,r,n)}catch(t){this.$exceptionHandler(new TypeError(`badserialize: "${e}" => ${t.message}`))}}remove(e,t={}){$e(e,"key"),this.put(e,"",{...this.defaults,...t,expires:new Date(0)})}}let Du="",Uu=Object.create(null);function Iu(){const e=document.cookie;if(e===Du)return Uu;Du=e;const t=Object.create(null);if(!e)return Uu=t,t;const n=e.split("; ");for(const e of n){const n=e.indexOf("=");if(-1===n)continue;const r=decodeURIComponent(e.substring(0,n)),s=decodeURIComponent(e.substring(n+1));t[r]=s}return Uu=t,t}function Hu(e,t={}){if("string"!=typeof e)throw new TypeError("template must be a string");return e.replace(/\{([^}]+)\}/g,(e,n)=>function(e,t){const n=/^[+#./;?&]/.test(e)?e[0]:"",r=n,s=r?e.slice(1):e,i={"":{sep:",",prefix:"",named:!1,ifEmpty:"",allowReserved:!1},"+":{sep:",",prefix:"",named:!1,ifEmpty:"",allowReserved:!0},"#":{sep:",",prefix:"#",named:!1,ifEmpty:"",allowReserved:!0},".":{sep:".",prefix:".",named:!1,ifEmpty:"",allowReserved:!1},"/":{sep:"/",prefix:"/",named:!1,ifEmpty:"",allowReserved:!1},";":{sep:";",prefix:";",named:!0,ifEmpty:"",allowReserved:!1},"?":{sep:"&",prefix:"?",named:!0,ifEmpty:"=",allowReserved:!1},"&":{sep:"&",prefix:"&",named:!0,ifEmpty:"=",allowReserved:!1}}[r];if(!i)throw new Error(`Unsupported operator: ${r}`);const o=s.split(",").map(e=>e.trim()).filter(Boolean),a=[];for(const e of o){const n=/^([A-Za-z0-9_.]+)(\*|(?::(\d+)))?$/.exec(e);if(!n)throw new Error(`Invalid varspec: ${e}`);const r=n[1],s="*"===n[2],o=n[3]?parseInt(n[3],10):void 0,c=t[r];if(null==c)continue;if(Array.isArray(c)){if(0===c.length){i.named&&("="===i.ifEmpty?a.push(`${Fu(r,i.allowReserved)}${i.ifEmpty}`):a.push(Fu(r,i.allowReserved)));continue}if(s)for(const e of c)null!=e&&(i.named?a.push(`${Fu(r,i.allowReserved)}=${Fu(e,i.allowReserved)}`):a.push(Fu(e,i.allowReserved)));else{const e=c.filter(e=>null!=e).map(e=>Fu(e,i.allowReserved)).join(",");i.named?""===e?a.push(Fu(r,i.allowReserved)+("="===i.ifEmpty?i.ifEmpty:"")):a.push(`${Fu(r,i.allowReserved)}=${e}`):a.push(e)}continue}if("object"==typeof c){const e=Object.keys(c);if(0===e.length){i.named&&a.push(Fu(r,i.allowReserved)+("="===i.ifEmpty?i.ifEmpty:""));continue}if(s)for(const t of e){const e=c[t];null!=e&&(i.named,a.push(`${Fu(t,i.allowReserved)}=${Fu(e,i.allowReserved)}`))}else{const t=e.map(e=>`${Fu(e,i.allowReserved)},${Fu(c[e],i.allowReserved)}`).join(",");i.named?""===t?a.push(Fu(r,i.allowReserved)+("="===i.ifEmpty?i.ifEmpty:"")):a.push(`${Fu(r,i.allowReserved)}=${t}`):a.push(t)}continue}let l=String(c);"number"==typeof o&&(l=l.substring(0,o)),""!==l?i.named?a.push(`${Fu(r,i.allowReserved)}=${Fu(l,i.allowReserved)}`):a.push(Fu(l,i.allowReserved)):i.named?"="===i.ifEmpty?a.push(`${Fu(r,i.allowReserved)}${i.ifEmpty}`):a.push(Fu(r,i.allowReserved)):a.push(Fu(l,i.allowReserved))}return 0===a.length?"":i.prefix+a.join(i.sep)}(n,t))}function Fu(e,t){const n=encodeURIComponent(String(e));return t?n.replace(/(%3A|%2F|%3F|%23|%5B|%5D|%40|%21|%24|%26|%27|%28|%29|%2A|%2B|%2C|%3B|%3D)/gi,e=>decodeURIComponent(e)):n}class qu{static $nonscope=!0;constructor(e,t,n,r={}){he(S(t)&&t.length>0,"baseUrl required"),this.$http=e,this.baseUrl=t,this.entityClass=n,this.options=r}buildUrl(e,t){return Hu(e,t||{})}#d(e){return e&&this.entityClass?new this.entityClass(e):e}async list(e={}){const t=this.buildUrl(this.baseUrl,e),n=await this.#p("get",t,null,e);return Array.isArray(n.data)?n.data.map(e=>this.#d(e)):[]}async read(e,t={}){he(!A(e),`${$}:id ${e}`);const n=this.buildUrl(`${this.baseUrl}/${e}`,t),r=await this.#p("get",n,null,t);return this.#d(r.data)}async create(e){he(!A(e),`${$}:item ${e}`);const t=await this.#p("post",this.baseUrl,e);return this.#d(t.data)}async update(e,t){he(!A(e),`${$}:id ${e}`);const n=`${this.baseUrl}/${e}`;try{const e=await this.#p("put",n,t);return this.#d(e.data)}catch{return null}}async delete(e){he(!A(e),`${$}:id ${e}`);const t=`${this.baseUrl}/${e}`;try{return await this.#p("delete",t),!0}catch{return!1}}async#p(e,t,n=null,r={}){return await this.$http({method:e,url:t,data:n,params:r,...this.options})}}class Bu{constructor(){this.definitions=[]}rest(e,t,n,r={}){this.definitions.push({name:e,url:t,entityClass:n,options:r})}$get=[sn.$http,e=>{const t=new Map,n=(t,n,r={})=>new qu(e,t,n,r);for(const e of this.definitions){const r=n(e.url,e.entityClass,e.options);t.set(e.name,r)}return n.get=e=>t.get(e),n.listNames=()=>Array.from(t.keys()),n}]}const zu=we("ng"),Wu=we("$injector"),Ku={};const Qu=new class{constructor(){this.$cache=je,this.$eventBus=cl,this.version="0.14.2",this.bootsrappedModules=[],this.getController=Bt,this.getInjector=Zt,this.getScope=Ht,this.errorHandlingConfig=ye,this.$t=sn,window.angular=this,function(e){e.module("ng",[],[sn.$provide,e=>{e.provider({$$sanitizeUri:So}),e.value(sn.$window,window),e.value(sn.$document,document),e.provider(sn.$compile,Or).directive({input:fs,textarea:fs,form:Rr,script:vs,select:ws,option:bs,ngBind:Es,ngBindHtml:xs,ngBindTemplate:Cs,ngChannel:ku,ngClass:Ts,ngClassEven:Ns,ngClassOdd:_s,ngCloak:js,ngController:Rs,ngDelete:Wn,ngDisabled:Ho,ngEl:Nu,ngForm:Lr,ngGet:zn,ngHide:Ps,ngIf:Ds,ngInclude:Us,ngInject:_u,ngInit:Hs,ngMessages:To,ngMessage:Ro,ngMessageExp:Lo,ngMessagesInclude:jo,ngMessageDefault:Vo,ngNonBindable:Fs,ngPost:Kn,ngPut:Qn,ngRef:Bs,ngRepeat:Qs,ngSetter:Tu,ngShow:Ms,ngStyle:Gs,ngSse:Gn,ngSwitch:Js,ngSwitchWhen:Zs,ngSwitchDefault:Xs,ngOptions:ri,ngTransclude:ii,ngModel:qr,pattern:li,ngPattern:li,required:ci,ngRequired:ci,ngMinlength:hi,minlength:hi,ngMaxlength:ui,maxlength:ui,ngValue:gs,ngModelOptions:Ur,ngViewport:Ru,ngWasm:Lu,ngWorker:Zn,ngScope:Vu}).directive({input:$s,ngAnimateSwap:Da,ngAnimateChildren:Ua,ngChecked:Wo,ngClick:Bo,ngDblclick:Zo,ngInclude:Is,ngHide:Qo,ngShow:Fo,ngMessages:qo,ngModel:Jo,ngReadonly:Go,ngRequired:zo,ngValue:Ko,ngSref:Eu,ngSrefActive:xu,ngSrefActiveEq:xu,ngState:Cu,ngView:Su}).directive({ngView:Ou}).directive(ai).directive(ur),e.provider({$aria:Io,$anchorScroll:fi,$animate:gi,$$animation:Ca,$animateCss:$a,$$animateCssDriver:La,$$animateJs:wa,$$animateJsDriver:Pa,$$animateCache:Ta,$$animateQueue:ya,$controller:sr,$cookie:Mu,$exceptionHandler:yi,$filter:_i,$interpolate:Ji,$http:qn,$httpParamSerializer:Pn,$location:so,$log:lo,$parse:Fi,$$rAFScheduler:xa,$rest:Bu,$rootScope:mo,$router:wc,$sce:lr,$sceDelegate:cr,$sse:ju,$templateCache:vi,$templateRequest:xo,$urlConfig:gc,$view:Yc,$transitions:Pl,$state:Ul,$viewScroll:Il,$templateFactory:Hl,$url:nu,$stateRegistry:fu,$eventBus:al})}]).factory("$stateParams",[sn.$router,e=>e.params]).value("$trace",jc)}(this)}module(e,t,n){return J(e,"module"),t&&Ae(Ku,e)&&(Ku[e]=null),function(e,t,n){return e[t]||(e[t]=n())}(Ku,e,()=>{if(!t)throw Wu("nomod","Module '{0}' is not available. Possibly misspelled or not loaded",e);return new Yn(e,t,n)})}bootstrap(e,t,n){if(n=n||{strictDi:!1},(e instanceof Element||e instanceof Document)&&Zt(e))throw zu("btstrpd","App already bootstrapped");Array.isArray(t)&&(this.bootsrappedModules=t),this.bootsrappedModules.unshift(["$provide",t=>{t.value("$rootElement",e)}]),this.bootsrappedModules.unshift("ng");const r=Cn(this.bootsrappedModules,n.strictDi);return r.invoke([sn.$rootScope,sn.$rootElement,sn.$compile,sn.$injector,(e,t,n,r)=>{this.$rootScope=e,this.$injector=r,Ut(t,"$injector",r);if(n(t)(e),!Ae(r,"strictDi"))try{r.invoke(()=>{})}catch(e){r.strictDi=!!/strict mode/.exec(e&&e.toString())}r.get(sn.$stateRegistry).get().map(e=>e.$$state().resolvables).reduce(Za,[]).filter(e=>"deferred"===e.deps).forEach(e=>e.deps=pn(e.resolveFn,r.strictDi))}]),r}injector(e,t){return Cn(e,t)}init(e){let t,n;const r={};le.forEach(r=>{const s=`${r}app`;e.hasAttribute&&e.hasAttribute(s)&&(t=e,n=e.getAttribute(s))}),le.forEach(r=>{const s=`${r}app`;let i;!t&&(i=e.querySelector(`[${s.replace(":","\\:")}]`))&&(t=i,n=i.getAttribute(s))}),t&&(r.strictDi=null!==function(e,t){let n,r;const s=le.length;for(r=0;r<s;++r)if(n=le[r]+t,S(n=e.getAttribute(n)))return n;return null}(t,"strict-di"),this.bootstrap(t,n?[n]:[],r))}getScopeByName(e){const t=this.$rootScope.$searchByName(e);if(t)return t.$proxy}};document.addEventListener("DOMContentLoaded",()=>Qu.init(document),{once:!0}),e.angular=Qu});
1
+ !function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((t="undefined"!=typeof globalThis?globalThis:t||self).angular={})}(this,function(t){"use strict";const n="ng-valid",e="ng-invalid",i="ng-pristine",r="ng-dirty",s="ng-untouched",o="ng-touched",c="ng-empty",u="ng-not-empty",a=/^((?:x|data)[-])/i,h=/[-]+(.)/g,l={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"},f=Node.ELEMENT_NODE,d=Node.DOCUMENT_NODE,$=Node.TEXT_NODE,m=Node.COMMENT_NODE,p=Node.DOCUMENT_FRAGMENT_NODE,g=Symbol("isProxy");function w(t){return!(!t||!t[g])}const v=wt("ng");let b=0;function y(){return b+=1,b}function k(t){return j(t)?t.toLowerCase():t}function E(t){if(A(t)||D(t))return!1;if(O(t)||t instanceof Array||j(t))return!0;const n="length"in Object(t)&&t.length;return M(n)&&(n>=0&&n-1 in t||"function"==typeof t.item)}function S(t){return void 0===t}function x(t){return void 0!==t}function O(t){return Array.isArray(t)}function C(t){return null!==t&&"object"==typeof t}function j(t){return"string"==typeof t}function A(t){return null===t}function T(t){return null==t}function R(t){return!T(t)}function M(t){return"number"==typeof t}function P(t){return"[object Date]"===toString.call(t)}function _(t){switch(toString.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return t instanceof Error}}function N(t){return"function"==typeof t}function I(t){return"[object RegExp]"===toString.call(t)}function D(t){return t&&t.window===t}function q(t){return t&&t.$watch}function V(t){return"boolean"==typeof t}function U(t){return t&&N(t.then)}function F(t){return j(t)?t.trim():t}function H(t,n){const e=n;return t.replace(/[A-Z]/g,(t,n)=>(n?e:"")+t.toLowerCase())}function L(t,n,e=!1){const i=t.$$hashKey;for(let i=0,r=n.length;i<r;++i){const r=n[i];if(!C(r)&&!N(r))continue;const s=Ot(r);for(let n=0,i=s.length;n<i;n++){const i=s[n],o=r[i];e&&C(o)?P(o)?t[i]=new Date(o.valueOf()):I(o)?t[i]=new RegExp(o):o.nodeName?t[i]=o.cloneNode(!0):"__proto__"!==i&&(C(t[i])||(t[i]=O(o)?[]:{}),L(t[i],[o],!0)):t[i]=o}}var r,s;return r=t,(s=i)?r.$$hashKey=s:delete r.$$hashKey,t}function z(t,...n){return L(t,n,!1)}function B(t){return Number.isNaN(t)}function W(t,n){return z(Object.create(t),n)}function J(t){return N(t.toString)&&t.toString!==toString}function Z(t){return k(t.nodeName)}function G(t,n){return-1!==Array.prototype.indexOf.call(t,n)}function K(t,n){const e=t.indexOf(n);return e>=0&&t.splice(e,1),e}function Y(t,n){return t===n||Number.isNaN(t)&&Number.isNaN(n)}function X(t,n){if(t===n)return!0;if(null===t||null===n)return!1;if(Number.isNaN(t)&&Number.isNaN(n))return!0;const e=typeof t;if(e!==typeof n||"object"!==e)return!1;if(O(t)){if(!O(n))return!1;const{length:e}=t;if(e!==n.length)return!1;for(let i=0;i<e;i++)if(!X(t[i],n[i]))return!1;return!0}if(P(t))return!!P(n)&&Y(t.getTime(),n.getTime());if(I(t))return!!I(n)&&t.toString()===n.toString();if(q(t)||q(n)||D(t)||D(n)||O(n)||P(n)||I(n))return!1;const i=Object.create(null);for(const e in t)if("$"!==e.charAt(0)&&!N(t[e])){if(!X(t[e],n[e]))return!1;i[e]=!0}for(const t in n)if(!(t in i)&&"$"!==t.charAt(0)&&x(n[t])&&!N(n[t]))return!1;return!0}function Q(t,n){if("hasOwnProperty"===t)throw v("badname","hasOwnProperty is not a valid {0} name",n)}function tt(t){if(A(t)||S(t))return"";switch(typeof t){case"string":break;case"number":t=`${t}`;break;default:t=!J(t)||O(t)||P(t)?st(t):t.toString()}return t}function nt(t,n,e){return t.concat(Array.prototype.slice.call(n,e))}function et(t,n){return Array.prototype.slice.call(t,n)}function it(t,n){const e=arguments.length>2?et(arguments,2):[];return!N(n)||n instanceof RegExp?n:e.length?function(){return arguments.length?n.apply(t,nt(e,arguments,0)):n.apply(t,e)}:function(){return arguments.length?n.apply(t,arguments):n.call(t)}}function rt(t,n){let e=n;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?e=void 0:D(n)?e="$WINDOW":n&&window.document===n?e="$DOCUMENT":q(n)&&(e="$SCOPE"),e}function st(t,n){if(!S(t))return M(n)||(n=n?2:null),JSON.stringify(t,rt,n)}function ot(t){const n={};return(t||"").split("&").forEach(e=>{let i,r,s;e&&(r=t=e.replace(/\+/g,"%20"),i=e.indexOf("="),-1!==i&&(r=e.substring(0,i),s=e.substring(i+1)),r=ut(r),x(r)&&(s=!x(s)||ut(s),xt(n,r)?O(n[r])?n[r].push(s):n[r]=[n[r],s]:n[r]=s))}),n}function ct(t){const n=[];return t&&Ct(t).forEach(([t,e])=>{O(e)?e.forEach(e=>{n.push(ht(t,!0)+(!0===e?"":`=${ht(e,!0)}`))}):n.push(ht(t,!0)+(!0===e?"":`=${ht(e,!0)}`))}),n.length?n.join("&"):""}function ut(t){try{return decodeURIComponent(t)}catch{return}}function at(t){return ht(t,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function ht(t,n){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,n?"%20":"+")}const lt=["ng-","data-ng-"];function ft(t,n){if(O(t)){n=n||[];for(let e=0,i=t.length;e<i;e++)n[e]=t[e]}else if(C(t)){n=n||{};for(const e in t)e.startsWith("$")&&"$"===e.charAt(1)||(n[e]=t[e])}return n||t}function dt(t,n="Assertion failed"){if(!t)throw new Error(n)}function $t(t,n,e){if(!t)throw v("areq","Argument '{0}' is {1}",n||"?",e||"required");return t}function mt(t,n,e){return e&&O(t)&&(t=t[t.length-1]),$t(N(t),n,`not a function, got ${t&&"object"==typeof t?t.constructor.name||"Object":typeof t}`),t}const pt={objectMaxDepth:5,urlErrorParamsEnabled:!0};function gt(t){var n;return C(t)&&(x(t.objectMaxDepth)&&(pt.objectMaxDepth=M(n=t.objectMaxDepth)&&n>0?t.objectMaxDepth:NaN),x(t.urlErrorParamsEnabled)&&V(t.urlErrorParamsEnabled)&&(pt.urlErrorParamsEnabled=t.urlErrorParamsEnabled)),pt}function wt(t){return function(...n){const e=n[0],i=n[1];let r=`[${t?`${t}:`:""}${e}] `;const s=et(n,2).map(t=>function(t){if("function"==typeof t)return t.toString().replace(/ \{[\s\S]*$/,"");if(S(t))return"undefined";if("string"!=typeof t){const n=[],e=structuredClone(w(t)?t.$target:t);return JSON.stringify(e,(t,e)=>{const i=rt(t,e);if(C(i)){if(n.indexOf(i)>=0)return"...";n.push(i)}return i})}return t}(t));return r+=i.replace(/\{\d+\}/g,t=>{const n=+t.slice(1,-1);return n<s.length?s[n]:t}),new Error(r)}}function vt(t){const n=t&&t.$$hashKey;if(n)return"function"==typeof n?t.$$hashKey():n;const e=typeof t;return"function"===e||"object"===e&&null!==t?(t.$$hashKey=`${e}:${y()}`,t.$$hashKey):"undefined"===e?`${e}:${y()}`:`${e}:${t}`}function bt(t,n){return t||n?t?n?(O(t)&&(t=yt(t)),O(n)&&(n=yt(n)),`${t.trim()} ${n.trim()}`.trim()):O(t)?t.join(" ").trim():t:O(n)?n.join(" ").trim():n:""}function yt(t){const n=[];for(const e of t)if(e){const t=e.trim();t&&n.push(t)}return n.join(" ")}function kt(t){return t.replace(a,"").replace(h,(t,n,e)=>e?n.toUpperCase():n)}function Et(t){return function(t,n){if(t.nodeType!==f)return!1;const e=t;return"true"===e.dataset[n]||"true"===e.getAttribute(n)}(t,"animate")}function St(t){return!t||!Ot(t).length}function xt(t,n){return Object.prototype.hasOwnProperty.call(t,n)}function Ot(t){return Object.keys(t)}function Ct(t){return Object.entries(t)}function jt(t){let n=!1;return(...e)=>{if(n)return t(...e);n=!0}}function At(t=0){return new Promise(n=>setTimeout(n,t))}function Tt(t,n){return t.slice(0,n.length)===n}async function Rt(t,n={}){const e=await fetch(t);if(!e.ok)throw new Error("fetch failed");try{const{instance:t,module:i}=await WebAssembly.instantiateStreaming(e.clone(),n);return{instance:t,exports:t.exports,module:i}}catch{}const i=await e.arrayBuffer(),{instance:r,module:s}=await WebAssembly.instantiate(i,n);return{instance:r,exports:r.exports,module:s}}const Mt=new Map,Pt=10,_t=11,Nt="-add",It="-remove",Dt="-active",qt="ng-animate",Vt="$$ngAnimateChildren";let Ut,Ft,Ht,Lt;void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend?(Ut="WebkitTransition",Ft="webkitTransitionEnd transitionend"):(Ut="transition",Ft="transitionend"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend?(Ht="WebkitAnimation",Lt="webkitAnimationEnd animationend"):(Ht="animation",Lt="animationend");const zt="Duration",Bt="Delay",Wt="TimingFunction",Jt=Ht+Bt,Zt=Ht+zt,Gt=Ut+Bt,Kt=Ut+zt;function Yt(t,n,e){let i="";return(t=O(t)?t:t&&j(t)&&t.length?t.split(/\s+/):[]).forEach((t,r)=>{t&&t.length>0&&(i+=r>0?" ":"",i+=e?n+t:t+n)}),i}function Xt(t){if(!t||!O(t))return t;for(let n=0;n<t.length;n++){const e=t[n];if(e.nodeType===f)return e}}function Qt(t){if(!(t=t||{}).$$prepared){let n=t.domOperation||(()=>{});t.domOperation=function(){t.$$domOperationFired=!0,n(),n=()=>{}},t.$$prepared=!0}return t}function tn(t,n){nn(t,n),en(t,n)}function nn(t,n){n.from&&(Object.assign(t.style,n.from),n.from=null)}function en(t,n){n.to&&(Object.assign(t.style,n.to),n.to=null)}function rn(t,n,e){const i=n.options||{},r=e.options||{},s=`${i.addClass||""} ${r.addClass||""}`,o=`${i.removeClass||""} ${r.removeClass||""}`,c=function(t,n,e){const i={};t=s(t),n=s(n),Object.keys(n).forEach(t=>{i[t]=1}),Ot(e=s(e)).forEach(t=>{i[t]=1===i[t]?null:-1});const r={addClass:"",removeClass:""};function s(t){j(t)&&(t=t.trim().split(" "));const n={};return t&&t.forEach(t=>{t.length&&(n[t]=!0)}),n}return Ct(i).forEach(([n,e])=>{let i,s;1===e?(i="addClass",s=!t[n]||t[n+It]):-1===e&&(i="removeClass",s=t[n]||t[n+Nt]),s&&(r[i].length&&(r[i]+=" "),r[i]+=n)}),r}(t.getAttribute("class"),s,o);return r.preparationClasses&&(i.preparationClasses=cn(r.preparationClasses,i.preparationClasses),delete r.preparationClasses),z(i,r),c.addClass?i.addClass=c.addClass:i.addClass=null,c.removeClass?i.removeClass=c.removeClass:i.removeClass=null,n.addClass=i.addClass,n.removeClass=i.removeClass,i}function sn(t,n){const e=n?"paused":"",i=Ht+"PlayState";return on(t,[i,e]),[i,e]}function on(t,n){const e=n[0];t.style[e]=n[1]}function cn(t,n){return t?n?`${t} ${n}`:t:n}let un=1;const an="ng",hn="$scope",ln=/-([a-z])/g,fn=/_([a-z])/g,dn=["multiple","selected","checked","disabled","readonly","required","open"],$n=["INPUT","SELECT","OPTION","TEXTAREA","BUTTON","FORM","DETAILS"];function mn(t,n){return n.toUpperCase()}function pn(t){return t.replace(ln,mn)}function gn(t){return t.replace(fn,mn)}function wn(t,n){const e=t[an],i=e&&Mt.get(e);i&&(n?delete i.data[n]:i.data={},function(t){const n=t[an],{data:e}=Mt.get(n);e&&Ot(e).length||(Mt.delete(n),t[an]=void 0)}(t))}function vn(t,n=!1){let e=t[an],i=e&&Mt.get(e);return n&&!i&&(t[an]=e=++un,i={data:{}},Mt.set(e,i)),i}function bn(t){return!/<|&#?\w+;/.test(t)}function yn(t){switch(t.nodeType){case f:case d:case m:case void 0:return!0;default:return!1}}function kn(t,n){!t||t instanceof Comment||(O(t)?t.forEach(t=>kn(t,n)):(!n&&yn(t)&&Nn([t]),yn(t)&&Nn(t.querySelectorAll("*"))),delete t[an],t.innerHTML="")}function En(t,n,e){if(yn(t)){let i;const r=x(e),s=!r&&n&&!C(n),o=!n,c=vn(t,!s),u=c&&c.data;if(r)u[pn(n)]=e;else{if(o)return u;if(s)return u&&u[pn(n)];for(i in n)u[pn(i)]=n[i]}return}}function Sn(t,n,e){if(yn(t)){const i=vn(t,!0);(i&&i.data)[pn(n)]=e}else t.parentElement&&Sn(t.parentElement,n,e)}function xn(t,n){if(yn(t)){const e=vn(t,!1),i=e&&e.data;if(!n)return;return i&&i[pn(n)]}}function On(t){return xn(t,hn)}function Cn(t,n){return Sn(t,hn,n)}function jn(t,n){return Sn(t,"$isolateScope",n)}function An(t,n){return Tn(t,`$${n||"ngController"}Controller`)}function Tn(t,n){let e;for(t.nodeType===d&&(t=t.documentElement);t;){if(x(e=xn(t,n)))return e;t=t.parentNode||t.nodeType===p&&t.host}}function Rn(t,n=!1){n||kn(t);const e=t.parentNode;e&&e.removeChild(t)}function Mn(t){let n;if("string"==typeof t)n=(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.");n=t.cloneNode(!0)}for(;n.firstChild;)n.removeChild(n.firstChild);const e=document.createElement("div");e.appendChild(n);const i=e.innerHTML;try{if(n.nodeType===$)return i.toLowerCase();if(n.nodeType===m)return`\x3c!--${n.data.trim()}--\x3e`;{const t=i.match(/^(<[^>]+>)/);if(t)return t[1].replace(/^<([\w-]+)/,(t,n)=>`<${n.toLowerCase()}`)}}catch{return i.toLowerCase()}return i.toLowerCase()}function Pn(t){let n=t[0];const e=t[t.length-1];let i;for(let r=1;n!==e&&(n=n.nextSibling);r++)(i||t[r]!==n)&&(i||(i=Array.prototype.slice.call(t,0,r)),i.push(n));return i||t}function _n(t,n){const e=n.toLowerCase();return!(!dn.includes(e)||!$n.includes(t.nodeName))&&e}function Nn(t){for(let n=0,e=t.length;n<e;n++)wn(t[n])}function In(t){return Tn(t,"$injector")}function Dn(t){const n=document.createElement("template");return n.innerHTML=t.trim(),n.content.firstChild}function qn(t){const n=document.createElement("template");return n.innerHTML=t.trim(),n.content.childNodes}function Vn(t){switch(kn(t,!0),t.nodeType){case f:case d:case p:t.replaceChildren()}}function Un(t,n,e){if(e){const t=Xt(e);!t||t.parentNode||t.previousSibling||(e=null)}e?e.after(t):n.prepend(t)}function Fn(t,n,e){const i=t.style.visibility,r=t.style.position,s=t.style.pointerEvents;Object.assign(t.style,{visibility:"hidden",position:"absolute",pointerEvents:"none"}),Un(t,n,e),requestAnimationFrame(()=>{t.style.visibility=i,t.style.position=r,t.style.pointerEvents=s})}function Hn(){const t=document.querySelector("base")?.getAttribute("href");return t?t.replace(/^(https?:)?\/\/[^/]*/,""):""}const Ln=Object.freeze({$attrs:"$attrs",$scope:"$scope",$element:"$element",$$animateCache:"$$animateCache",$$animateCssDriver:"$$animateCssDriver",$$animateJs:"$$animateJs",$$animateJsDriver:"$$animateJsDriver",$$animateQueue:"$$animateQueue",$$animation:"$$animation",$$rAFScheduler:"$$rAFScheduler",$$taskTrackerFactory:"$$taskTrackerFactory",$anchorScroll:"$anchorScroll",$animate:"$animate",$animateCss:"$animateCss",$aria:"$aria",$compile:"$compile",$cookie:"$cookie",$controller:"$controller",$document:"$document",$eventBus:"$eventBus",$exceptionHandler:"$exceptionHandler",$filter:"$filter",$http:"$http",$httpParamSerializer:"$httpParamSerializer",$interpolate:"$interpolate",$location:"$location",$log:"$log",$viewScroll:"$viewScroll",$parse:"$parse",$rest:"$rest",$rootScope:"$rootScope",$rootElement:"$rootElement",$router:"$router",$sce:"$sce",$sceDelegate:"$sceDelegate",$state:"$state",$stateRegistry:"$stateRegistry",$sse:"$sse",$$sanitizeUri:"$$sanitizeUri",$$sanitizeUriProvider:"$$sanitizeUriProvider",$templateCache:"$templateCache",$templateFactory:"$templateFactory",$templateRequest:"$templateRequest",$transitions:"$transitions",$urlConfig:"$urlConfig",$url:"$url",$view:"$view",$window:"$window",$provide:"$provide",$injector:"$injector",$compileProvider:"$compileProvider",$animateProvider:"$animateProvider",$filterProvider:"$filterProvider",$controllerProvider:"$controllerProvider"});function zn(t){return t.map(t=>`${t}Provider`)}const Bn=wt(Ln.$injector),Wn=/^([^(]+?)=>/,Jn=/^[^(]*\(\s*([^)]*)\)/m,Zn=/^\s*(_?)(\S+?)\1\s*$/,Gn=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm;function Kn(t){return Function.prototype.toString.call(t)}function Yn(t,n,e){let i,r,s;if(N(t)){if(i=t.$inject,!i){if(i=[],t.length){if(n)throw Bn("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",e);r=function(t){const n=Kn(t).replace(Gn,"");return n.match(Wn)||n.match(Jn)}(t),r[1].split(/,/).forEach(function(t){t.replace(Zn,function(t,n,e){i.push(e)})})}t.$inject=i}}else O(t)?(s=t.length-1,mt(t[s],"fn"),i=t.slice(0,s)):mt(t,"fn",!0);return i}const Xn=wt(Ln.$injector),Qn="Provider",te=!0;class ne{constructor(t){this.cache={},this.strictDi=t,this.path=[],this.modules={}}get(t){if(xt(this.cache,t)){if(this.cache[t]===te)throw Xn("cdep","Circular dependency found: {0}",`${t} <- ${this.path.join(" <- ")}`);return this.cache[t]}this.path.unshift(t),this.cache[t]=te;try{this.cache[t]=this.factory(t)}catch(n){throw delete this.cache[t],n}return this.cache[t]}injectionArgs(t,n,e){const i=[],r=Yn(t,this.strictDi,e);for(let t=0,{length:e}=r;t<e;t++){const e=r[t];if("string"!=typeof e)throw Xn("itkn","Incorrect injection token! Expected service name as string, got {0}",e);i.push(n&&xt(n,e)?n[e]:this.get(e))}return i}invoke(t,n,e,i){"string"==typeof e&&(i=e,e=null);const r=this.injectionArgs(t,e,i);return O(t)&&(t=t[t.length-1]),/^class\b/.test(Kn(t))?(r.unshift(null),new(Function.prototype.bind.apply(t,r))):t.apply(n,r)}instantiate(t,n,e){const i=O(t)?t[t.length-1]:t,r=this.injectionArgs(t,n,e);r.unshift(null);try{return new(Function.prototype.bind.apply(i,r))}catch(t){if("function"!=typeof(s=i)||s.prototype)throw t;return i(r)}var s}loadNewModules(){}factory(t){}}class ee extends ne{constructor(t,n){super(n),this.cache=t}factory(t){throw this.path.push(t),Xn("unpr","Unknown provider: {0}",this.path.join(" <- "))}loadNewModules(){}}class ie extends ne{constructor(t,n){super(n),this.providerInjector=t,this.modules=t.modules}factory(t){const n=this.providerInjector.get(t+Qn);return this.invoke(n.$get,n,void 0,t)}has(t){const n=xt(this.providerInjector.cache,t+Qn),e=xt(this.cache,t);return n||e}loadNewModules(){}}function re(t,n,e,i={}){const r=i.serialize||JSON.stringify,s=i.deserialize||JSON.parse,o=e.getItem(n);return o&&Object.assign(t,s(o)),new Proxy(t,{set:(t,i,s)=>(t[i]=s,e.setItem(n,r(t)),!0),deleteProperty(t,i){const s=delete t[i];return e.setItem(n,r(t)),s}})}function se(t){if(O(t)&&t.length){const n=t.slice(0,-1),e=t.slice(-1);return!(n.filter(t=>!j(t)).length||e.filter(t=>!N(t)).length)}return N(t)}function oe(t){return null!==t&&"object"==typeof t&&"function"==typeof t.then}const ce="badarg",ue=new Map([[R,"required"],[O,"notarray"],[se,"notinjectable"],[x,"required"],[j,"notstring"]]);function ae(t,n,e){if(t(n))return n;let i;try{i=JSON.stringify(n)}catch{i=String(n)}throw new TypeError(`badarg:${function(t){return ue.get(t)??"fail"}(t)} ${e}=${i}`)}function he(t,n){return ae(R,t,n)}function le(t,n){return ae(j,t,n)}const fe=wt(Ln.$injector),de="Provider";function $e(t,n=!1){dt(O(t),"modules required");const e=new Map,i={$provide:{provider:me(u),factory:me(a),service:me(function(t,n){return a(t,[Ln.$injector,t=>t.instantiate(n)])}),value:me(function(t,n){return i[t+de]={$get:()=>n}}),constant:me(function(t,n){Q(t,"constant"),r.cache[t]=n,s.cache[t]=n}),store:function(t,n,e,i={}){return u(t,{$get:r=>{switch(e){case"session":return re(r.instantiate(n),t,sessionStorage);case"local":return re(r.instantiate(n),t,localStorage);case"cookie":{const e=r.instantiate(n),s=r.get(Ln.$cookie),o=i.serialize??JSON.stringify,c=i.deserialize??JSON.parse,u=i.cookie??{};return re(e,t,{getItem(t){const n=s.get(t);return T(n)?null:n},setItem(t,n){s.put(t,n,u)},removeItem(t){s.remove(t,u)},serialize:o,deserialize:c})}case"custom":{const e=r.instantiate(n);let s,o=JSON.stringify,c=JSON.parse;return i?"function"==typeof i.getItem?s=i:C(i)&&(s=i.backend||localStorage,i.serialize&&(o=i.serialize),i.deserialize&&(c=i.deserialize)):s=localStorage,re(e,t,s,{serialize:o,deserialize:c})}}}})},decorator:function(t,n){const e=r.get(t+de),i=e.$get;e.$get=function(){const t=o.invoke(i,e);return o.invoke(n,null,{$delegate:t})}}}},r=i.$injector=new ee(i,n),s=new ie(r,n);i.$injectorProvider={$get:()=>s};let o=s;const c=h(t);return o=s.get(Ln.$injector),c.forEach(t=>t&&o.invoke(t)),o.loadNewModules=t=>h(t).forEach(t=>t&&o.invoke(t)),o;function u(t,n){let e;if(Q(t,"service"),e=N(n)||O(n)?r.instantiate(n):n,!e.$get)throw fe("pget","Provider '{0}' must define $get factory method.",t);return i[t+de]=e,e}function a(t,n){return u(t,{$get(){const e=o.invoke(n,this);if(S(e))throw fe("undef","Provider '{0}' must return a value from $get factory method.",t);return e}})}function h(t){ae(O,t,"modules");let n=[];return t.forEach(t=>{if(!e.get(t)){e.set(t,!0);try{if(j(t)){const e=window.angular.module(t);o.modules[t]=e,n=n.concat(h(e.i)).concat(e.o),e.u.concat(e.h).forEach(t=>{const n=r.get(t[0]);n[t[1]].apply(n,t[2])})}else N(t)||O(t)?n.push(r.invoke(t)):mt(t,"module")}catch(n){throw O(t)&&(t=t[t.length-1]),fe("modulerr","Failed to instantiate module {0} due to:\n{1}",t,n.stack||n.message||n)}}}),n}}function me(t){return function(n,e){return C(n)?void Ct(n).forEach(([n,e])=>{t(n,e)}):t(n,e)}}const pe=ge(window.location.href);function ge(t){if(!j(t))return t;const n=new URL(t,window.location.href),e=n.hostname.includes(":")?`[${n.hostname}]`:n.hostname;return{href:n.href,protocol:n.protocol,host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:e,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:`/${n.pathname}`}}function we(t,n){return t=ge(t),n=ge(n),t.protocol===n.protocol&&t.host===n.host}function ve(t){return t.replace(/#$/,"")}const be="application/json",ye=200,ke={"Content-Type":`${be};charset=utf-8`},Ee=/^\[|^\{(?!\{)/,Se={"[":/]$/,"{":/}$/},xe=/^\)]\}',?\n/,Oe=wt("$http");function Ce(t){return C(t)?P(t)?t.toISOString():st(t):t}function je(){this.$get=()=>t=>{if(!t)return"";const n=[];return Ot(t).sort().forEach(e=>{const i=t[e];null===i||S(i)||N(i)||(O(i)?i.forEach(t=>{n.push(`${ht(e)}=${ht(Ce(t))}`)}):n.push(`${ht(e)}=${ht(Ce(i))}`))}),n.join("&")}}function Ae(t,n){if(j(t)){const i=t.replace(xe,"").trim();if(i){const r=n("Content-Type"),s=r&&0===r.indexOf(be);if(s||function(t){const n=t.match(Ee);return n&&Se[n[0]].test(t)}(i))try{t=j(e=i)?JSON.parse(e):e}catch(n){if(!s)return t;throw Oe("baddata",'Data must be a valid JSON object. Received: "{0}". Parse error: "{1}"',t,n)}}}var e;return t}function Te(t){const n=Object.create(null);let e;function i(t,e){t&&(n[t]=n[t]?`${n[t]}, ${e}`:e)}return j(t)?t.split("\n").forEach(t=>{e=t.indexOf(":"),i(t.substring(0,e).trim().toLowerCase(),F(t.substring(e+1)))}):C(t)&&Ct(t).forEach(([t,n])=>{i(t.toLowerCase(),F(n))}),n}function Re(t){let n;return function(e){if(n||(n=Te(t)),e){let t=n[e.toLowerCase()];return void 0===t&&(t=null),t}return n}}function Me(t,n,e,i){return N(i)?i(t,n,e):(O(i)&&i.forEach(i=>{t=i(t,n,e)}),t)}function Pe(t){return t>=ye&&t<300}function _e(){const t=this.defaults={transformResponse:[Ae],transformRequest:[function(t){return!C(t)||(n=t,"[object File]"===toString.call(n))||function(t){return"[object Blob]"===toString.call(t)}(t)||function(t){return"[object FormData]"===toString.call(t)}(t)?t:st(t);var n}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ft(ke),put:ft(ke),patch:ft(ke)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"};let n=!1;this.useApplyAsync=function(t){return x(t)?(n=!!t,this):n},this.interceptors=[],this.xsrfTrustedOrigins=[],Object.defineProperty(this,"xsrfWhitelistedOrigins",{get(){return this.xsrfTrustedOrigins},set(t){this.xsrfTrustedOrigins=t}});const e=this;this.$get=[Ln.$injector,Ln.$sce,Ln.$cookie,function(i,r,s){const o=new Map;t.paramSerializer=j(t.paramSerializer)?i.get(t.paramSerializer):t.paramSerializer;const c=[];e.interceptors.forEach(t=>{c.unshift(j(t)?i.get(t):i.invoke(t))});const u=function(t){const n=[pe].concat(t.map(ge));return function(t){const e=ge(t);return n.some(we.bind(null,e))}}(e.xsrfTrustedOrigins);function a(e){if(!C(e))throw wt("$http")("badreq","Http request configuration must be an object. Received: {0}",e);if(!j(r.valueOf(e.url)))throw wt("$http")("badreq","Http request configuration url must be a string or a $sce trusted object. Received: {0}",e.url);const h=z({method:"get",transformRequest:t.transformRequest,transformResponse:t.transformResponse,paramSerializer:t.paramSerializer},e);var l;h.headers=function(n){let e=t.headers;const i=z({},n.headers);return e=z({},e.common,e[k(n.method)]),Ot(e).forEach(t=>{const n=k(t);Ot(i).some(t=>k(t)===n)||(i[t]=e[t])}),function(t,n){let e;const i={};return Ct(t).forEach(([t,r])=>{N(r)?(e=r(n),T(e)||(i[t]=e)):i[t]=r}),i}(i,ft(n))}(e),h.method=j(l=h.method)?l.toUpperCase():l,h.paramSerializer=j(h.paramSerializer)?i.get(h.paramSerializer):h.paramSerializer;const f=[],d=[];let $=Promise.resolve(h);return c.forEach(t=>{(t.request||t.requestError)&&f.unshift(t.request,t.requestError),(t.response||t.responseError)&&d.push(t.response,t.responseError)}),$=m($,f),$=$.then(function(e){const{headers:i}=e,c=Me(e.data,Re(i),void 0,e.transformRequest);return S(c)&&Ot(i).forEach(t=>{"content-type"===k(t)&&delete i[t]}),S(e.withCredentials)&&!S(t.withCredentials)&&(e.withCredentials=t.withCredentials),function(e,i){const{promise:c,resolve:h,reject:l}=Promise.withResolvers();let f,d;const $=e.headers;let{url:m}=e;if(j(m)||(m=r.valueOf(m)),m=function(t,n){return n.length>0&&(t+=(-1===t.indexOf("?")?"?":"&")+n),t}(m,e.paramSerializer(e.params)),a.pendingRequests.push(e),c.then(v,v),(e.cache||t.cache)&&!1!==e.cache&&"GET"===e.method&&(f=C(e.cache)?e.cache:C(t.cache)?t.cache:o),f&&(d=f.get(m),x(d)?U(d)?d.then(w,w):O(d)?g(d[1],d[0],ft(d[2]),d[3],d[4]):g(d,ye,{},"OK","complete"):f.set(m,c)),S(d)){const r=u(e.url)?s.getAll()[e.xsrfCookieName||t.xsrfCookieName]:void 0;r&&($[e.xsrfHeaderName||t.xsrfHeaderName]=r),function(t,n,e,i,r,s,o,c,u,a){n=n||ve(window.location.href);const h=new XMLHttpRequest;let l,f=!1;if(h.open(t,n,!0),r)for(const[t,n]of Ct(r))x(n)&&h.setRequestHeader(t,n);if(h.onload=()=>{let t=h.status||0;const e=h.statusText||"";0===t&&(t=h.response?ye:"file:"===new URL(n).protocol?404:0),$(t,h.response,h.getAllResponseHeaders(),e,"complete")},h.onerror=()=>$(-1,null,null,"","error"),h.ontimeout=()=>$(-1,null,null,"","timeout"),h.onabort=()=>{$(-1,null,null,"",f?"timeout":"abort")},u)for(const[t,n]of Ct(u))h.addEventListener(t,n);if(a)for(const[t,n]of Ct(a))h.upload.addEventListener(t,n);if(o&&(h.withCredentials=!0),c)try{h.responseType=c}catch(t){if("json"!==c)throw t}function d(t){f="timeout"===t,h&&h.abort()}function $(t,n,e,r,s){x(l)&&clearTimeout(l),i(t,n,e,r,s)}h.send(S(e)?null:e),"number"==typeof s&&s>0?l=setTimeout(()=>d("timeout"),s):U(s)&&s.then(()=>{d("abort")})}(e.method,m,i,function(t,e,i,r,s){function o(){g(e,t,i,r,s)}f&&(Pe(t)?f.set(m,[t,e,Te(i),r,s]):f.delete(m)),n?setTimeout(o):o()},$,e.timeout,e.withCredentials,e.responseType,p(e.eventHandlers),p(e.uploadEventHandlers))}return c;function p(t){if(t){const e={};return Ct(t).forEach(([t,i])=>{e[t]=function(t){function e(){i(t)}n?setTimeout(()=>e()):e()}}),e}return{}}function g(t,n,i,r,s){(Pe(n=n>=-1?n:0)?h:l)({data:t,status:n,headers:Re(i),config:e,statusText:r,xhrStatus:s})}function w(t){g(t.data,t.status,ft(t.headers()),t.statusText,t.xhrStatus)}function v(){const t=a.pendingRequests.indexOf(e);-1!==t&&a.pendingRequests.splice(t,1)}}(e,c).then(p,p)}),$=m($,d),$;function m(t,n){for(let e=0,i=n.length;e<i;){const i=n[e++],r=n[e++];t=t.then(i,r)}return n.length=0,t}function p(t){const n=z({},t);return n.data=Me(t.data,t.headers,t.status,h.transformResponse),Pe(t.status)?n:Promise.reject(n)}}return a.pendingRequests=[],["get","delete","head"].forEach(t=>{a[t]=function(n,e){return a(z({},e||{},{method:t,url:n}))}}),["post","put","patch"].forEach(t=>{a[t]=function(n,e,i){return a(z({},i||{},{method:t,url:n,data:e}))}}),a.defaults=t,a}]}function Ne(t,n){const e=n||`ng${t.charAt(0).toUpperCase()}${t.slice(1)}`,i=function(t,n){return function(e,i,r,s,o,c,u){function a(t){let n=null;if("form"===t.tagName.toLowerCase())n=t;else if("form"in t&&t.form)n=t.form;else if(t.hasAttribute("form")){const e=t.getAttribute("form");if(e){const t=document.getElementById(e);t&&"form"===t.tagName.toLowerCase()&&(n=t)}}if(!n){if("name"in t&&"string"==typeof t.name&&t.name.length>0&&(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLSelectElement)){const n=t.name,{value:e}=t;return{[n]:e}}return{}}const e=new FormData(n),i={};return e.forEach((t,n)=>{i[n]=t}),i}return{restrict:"A",link(h,l,d){const m=d.trigger||Fe(l),p=l.tagName.toLowerCase();let g;x(d.latch)&&d.$observe("latch",jt(()=>l.dispatchEvent(new Event(m))));let w,v=!1;x(d.interval)&&(l.dispatchEvent(new Event(m)),w=setInterval(()=>l.dispatchEvent(new Event(m)),parseInt(d.interval)||1e3)),l.addEventListener(m,async m=>{if(l.disabled)return;"form"===p&&m.preventDefault();const w=d.swap||"innerHTML",b=d[n];if(!b)return void r.warn(`${n}: no URL specified`);const y=t=>{x(d.loading)&&d.$set("loading",!1),x(d.loadingClass)&&d.$removeClass(d.loadingClass);const e=t.data;ye<=t.status&&t.status<=299?(x(d.success)&&s(d.success)(h,{$res:e}),x(d.stateSuccess)&&o.go(d.stateSuccess)):400<=t.status&&t.status<=599&&(x(d.error)&&s(d.error)(h,{$res:e}),x(d.stateError)&&o.go(d.stateError)),C(e)?d.target?h.$eval(`${d.target} = ${JSON.stringify(e)}`):h.$merge(e):j(e)&&function(t,e,s,o,c){let a=!1;o.animate&&(a=!0);let h=[];if(!["textcontent","delete","none"].includes(e)){if(!t)return;const n=i(t)(s);h=n instanceof DocumentFragment?Array.from(n.childNodes):[n]}const l=o.target,d=l?document.querySelector(l):c;if(d)switch(e){case"outerHTML":{const t=d.parentNode;if(!t)return;const n=document.createDocumentFragment();if(h.forEach(t=>n.appendChild(t)),!a){t.replaceChild(n,d);break}const e=document.createElement("span");e.style.display="none",t.insertBefore(e,d.nextSibling),u.leave(d).done(()=>{const i=Array.from(n.childNodes);for(const n of i)n.nodeType===f?u.enter(n,t,e):t.insertBefore(n,e);g=i,s.$flushQueue()}),s.$flushQueue();break}case"textContent":a?(u.leave(d).done(()=>{d.textContent=t,u.enter(d,d.parentNode),s.$flushQueue()}),s.$flushQueue()):d.textContent=t;break;case"beforebegin":{const t=d.parentNode;if(!t)break;h.forEach(n=>{a&&n.nodeType===f?u.enter(n,t,d):t.insertBefore(n,d)}),a&&s.$flushQueue();break}case"afterbegin":{const{firstChild:t}=d;[...h].reverse().forEach(n=>{a&&n.nodeType===f?u.enter(n,d,t):d.insertBefore(n,t)}),a&&s.$flushQueue();break}case"beforeend":h.forEach(t=>{a&&t.nodeType===f?u.enter(t,d,null):d.appendChild(t)}),a&&s.$flushQueue();break;case"afterend":{const t=d.parentNode;if(!t)break;const{nextSibling:n}=d;[...h].reverse().forEach(e=>{a&&e.nodeType===f?u.enter(e,t,n):t.insertBefore(e,n)}),a&&s.$flushQueue();break}case"delete":a?(u.leave(d).done(()=>{d.remove(),s.$flushQueue()}),s.$flushQueue()):d.remove();break;case"none":break;default:a?g&&g.nodeType!==$?(u.leave(g).done(()=>{g=h[0],u.enter(h[0],d),s.$flushQueue()}),s.$flushQueue()):(g=h[0],g.nodeType===$?d.replaceChildren(...h):(u.enter(h[0],d),s.$flushQueue())):d.replaceChildren(...h)}else r.warn(`${n}: target "${l}" not found`)}(e,w,h,d,l)};if(x(d.delay)&&await At(0|parseInt(d.delay)),!v)if(x(d.throttle)&&(v=!0,d.$set("throttled",!0),setTimeout(()=>{d.$set("throttled",!1),v=!1},parseInt(d.throttle))),x(d.loading)&&d.$set("loading",!0),x(d.loadingClass)&&d.$addClass(d.loadingClass),"post"===t||"put"===t){let n;const i={};d.enctype?(i.headers={"Content-Type":d.enctype},n=ct(a(l))):n=a(l),e[t](b,n,i).then(y).catch(y)}else if("get"===t&&d.ngSse){const t=b,e={withCredentials:"true"===d.withCredentials,transformMessage:t=>{try{return JSON.parse(t)}catch{return t}},onOpen:()=>{r.info(`${n}: SSE connection opened to ${t}`),x(d.loading)&&d.$set("loading",!1),x(d.loadingClass)&&d.$removeClass(d.loadingClass)},onMessage:t=>{y({status:200,data:t})},onError:t=>{r.error(`${n}: SSE error`,t),y({status:500,data:t})},onReconnect:t=>{r.info(`ngSse: reconnected ${t} time(s)`),d.onReconnect&&s(d.onReconnect)(h,{$count:t})}},i=c(t,e);h.$on("$destroy",()=>{r.info(`${n}: closing SSE connection`),i.close()})}else e[t](b).then(y).catch(y)}),w&&h.$on("$destroy",()=>clearInterval(w)),"load"===m&&l.dispatchEvent(new Event("load"))}}}}(t,e);return i.$inject=[Ln.$http,Ln.$compile,Ln.$log,Ln.$parse,Ln.$state,Ln.$sse,Ln.$animate],i}const Ie=Ne("get"),De=Ne("delete"),qe=Ne("post"),Ve=Ne("put"),Ue=Ne("get","ngSse");function Fe(t){const n=t.tagName.toLowerCase();return["input","textarea","select"].includes(n)?"change":"form"===n?"submit":"click"}function He(t,n,e){return{restrict:"A",link(i,r,s){const o=s.ngWorker;if(!o)return void n.warn("ngWorker: missing worker name");const c=s.trigger||Fe(r);let u,a=!1;x(s.latch)&&s.$observe("latch",jt(()=>r.dispatchEvent(new Event(c)))),x(s.interval)&&(r.dispatchEvent(new Event(c)),u=setInterval(()=>r.dispatchEvent(new Event(c)),parseInt(s.interval)||1e3));const h=Le(o,{logger:n,err:e,onMessage:n=>{x(s.dataOnResult)?t(s.dataOnResult)(i,{$result:n}):function(t,n,e){switch(n){case"outerHTML":{const n=e.parentNode;if(!n)return;const i=document.createElement("div");i.innerHTML=t,n.replaceChild(i.firstChild,e);break}case"textContent":e.textContent=t;break;case"beforebegin":e.insertAdjacentHTML("beforebegin",t);break;case"afterbegin":e.insertAdjacentHTML("afterbegin",t);break;case"beforeend":e.insertAdjacentHTML("beforeend",t);break;case"afterend":e.insertAdjacentHTML("afterend",t);break;default:e.innerHTML=t}}(n,s.swap||"innerHTML",r)},onError:e=>{n.error(`[ng-worker:${o}]`,e),x(s.dataOnError)?t(s.dataOnError)(i,{$error:e}):r.textContent="Error"}});r.addEventListener(c,async()=>{if(r.hasAttribute("disabled"))return;if(x(s.delay)&&await At(parseInt(s.delay)||0),a)return;let t;x(s.throttle)&&(a=!0,s.$set("throttled",!0),setTimeout(()=>{s.$set("throttled",!1),a=!1},parseInt(s.throttle)));try{t=s.params?i.$eval(s.params):void 0}catch(e){n.error("ngWorker: failed to evaluate data-params",e),t=void 0}h.post(t)}),u&&i.$on("$destroy",()=>clearInterval(u)),"load"===c&&r.dispatchEvent(new Event("load"))}}}function Le(t,n){if(!t)throw new Error("Worker script path required");const e={autoRestart:!1,autoTerminate:!1,onMessage(){},onError(){},transformMessage(t){try{return JSON.parse(t)}catch{return t}}},i=Object.assign({},e,n);let r=new Worker(t,{type:"module"}),s=!1;const o=function(){s||(i.logger.info("Worker: restarting..."),r.terminate(),r=new Worker(t,{type:"module"}),c(r))},c=t=>{t.onmessage=function(t){let{data:n}=t;try{n=i.transformMessage(n)}catch{}i.onMessage(n,t)},t.onerror=function(t){i.onError(t),i.autoRestart&&o()}};return c(r),{post(t){s&&i.logger.warn("Worker already terminated");try{r.postMessage(t)}catch(t){i.logger.log("Worker post failed",t)}},terminate(){s=!0,r.terminate()},restart(){s&&i.logger.warn("Worker cannot restart after terminate"),o()},config:i}}He.$inject=[Ln.$parse,Ln.$log,Ln.$exceptionHandler];class ze{constructor(t,n,e){ae(j,t,"name"),ae(O,n,"requires"),this.name=t,this.i=n,this.u=[],this.h=[],this.o=[],e&&this.config(e),this.l=[],this.$=[]}value(t,n){return ae(j,t,"name"),this.u.push([Ln.$provide,"value",[t,n]]),this}constant(t,n){return ae(j,t,"name"),ae(x,n,"object"),this.u.unshift([Ln.$provide,"constant",[t,n]]),this}config(t){return ae(se,t,"configFn"),this.h.push([Ln.$injector,"invoke",[t]]),this}run(t){return ae(se,t,"block"),this.o.push(t),this}component(t,n){return ae(j,t,"name"),ae(x,n,"object"),this.u.push([Ln.$compileProvider,"component",[t,n]]),this}factory(t,n){return ae(j,t,"name"),he(n,"providerFunction"),this.u.push([Ln.$provide,"factory",[t,n]]),this}service(t,n){return ae(j,t,"name"),he(n,"serviceFunction"),this.l.push(t),this.u.push([Ln.$provide,"service",[t,n]]),this}provider(t,n){return ae(j,t,"name"),he(n,"providerType"),this.u.push([Ln.$provide,"provider",[t,n]]),this}decorator(t,n){return ae(j,t,"name"),he(n,"decorFn"),this.h.push([Ln.$provide,"decorator",[t,n]]),this}directive(t,n){return ae(j,t,"name"),he(n,"directiveFactory"),this.u.push([Ln.$compileProvider,"directive",[t,n]]),this}animation(t,n){return ae(j,t,"name"),he(n,"animationFactory"),this.u.push([Ln.$animateProvider,"register",[t,n]]),this}filter(t,n){return ae(j,t,"name"),ae(N,n,"filterFn"),this.u.push([Ln.$filterProvider,"register",[t,n]]),this}controller(t,n){return ae(j,t,"name"),he(n,"fictlFnlterFn"),this.u.push([Ln.$controllerProvider,"register",[t,n]]),this}wasm(t,n,e={},i={}){ae(j,t,"name"),ae(j,n,"src");const r=!!i.raw;return this.u.push([Ln.$provide,"provider",[t,class{$get(){return Rt(n,e).then(t=>r?t:t.exports)}}]]),this}worker(t,n,e){return ae(j,t,"name"),ae(j,n,"scriptPath"),this.u.push([Ln.$provide,"provider",[t,class{$get=()=>Le(n,e)}]]),this}store(t,n,e,i){return ae(j,t,"name"),he(n,"ctor"),this.u.push([Ln.$provide,"store",[t,C(n)?()=>n:n,e,i]]),this}rest(t,n,e,i={}){ae(j,t,"name"),ae(j,n,"url"),ae(N,e,"entityClass");const r={name:t,url:n,entityClass:e,options:i};return this.$.push(r),this.u.push([Ln.$provide,"factory",[t,[Ln.$rest,t=>t(n,e,i)]]]),this}}class Be{static $nonscope=!0;constructor(t){if(this.m=null,this.p=void 0,this.k=void 0,this.S=!1,j(t)){const n=Dn(t);switch(!0){case n instanceof Element:this.element=n;break;case n instanceof Node:this.node=n}}else if(t instanceof NodeList)1===t.length?this.node=t[0]:(this.k=Array.from(t),this.S=!0);else if(t instanceof Element)this.element=t;else if(t instanceof Node)this.m=t;else{if(!O(t))throw new Error("Invalid element passed to NodeRef");1===t.length?this.node=t[0]:this.nodes=t}}get element(){return this.p}set element(t){this.p=t,this.k=void 0,this.S=!1}get node(){return this.m||this.p}set node(t){this.m=t,t.nodeType===f?this.p=t:this.p=void 0}set nodes(t){this.k=t,this.S=!0}get nodes(){return this.k}get nodelist(){if(0===this.k.length)return[];if(this.k[0].parentElement)return this.k[0].parentElement.childNodes;const t=document.createDocumentFragment();return this.k.forEach(n=>t.appendChild(n)),t.childNodes}get dom(){return this.S?this.nodelist:this.node}get size(){return this.S?this.k.length:1}O(){return this.S?this.k[0]:this.p||this.m}C(){return this.S?this.k:this.p||this.m}j(){return this.S?Array.from(this.k):[this.p||this.m]}A(t){return this.S?this.k[t]:this.node}T(t,n){this.S?this.k[t]=n:this.node=n}R(){const t=this.S?this.nodes.map(t=>t.cloneNode(!0)):this.node.cloneNode(!0);return new Be(t)}M(){return void 0!==this.p}}const We=wt("$controller"),Je=/^(\S+)(\s+as\s+([\w$]+))?$/;function Ze(t,n){if(j(t)){const n=Je.exec(t);if(n)return n[3]}}class Ge{constructor(){this.controllers=new Map}has(t){return this.controllers.has(t)}register(t,n){Q(t,"controller"),C(t)?Ct(t).forEach(([t,n])=>{this.controllers.set(t,n)}):this.controllers.set(t,n)}$get=["$injector",t=>(n,e,i,r)=>{let s,o,c,u=r&&j(r)?r:null;if(i=!0===i,j(n)){if(o=n.match(Je),!o)throw We("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",n);if(c=o[1],u=u||o[3],!(n=this.controllers.get(c)))throw We("ctrlreg","The controller with the name '{0}' is not registered.",c);mt(n,c,!0)}if(i){const i=(O(n)?n[n.length-1]:n).prototype;return s=Object.create(i||null),u&&(s.$controllerIdentifier=u,this.addIdentifier(e,u,s,c||n.name)),s?.constructor?.$scopename&&(e.$scope.$scopename=s.constructor.$scopename),function(){const i=t.invoke(n,s,e,c);return i!==s&&(C(i)||N(i))&&(s=i,u&&(s.$controllerIdentifier=u,this.addIdentifier(e,u,s,c||n.name))),s}.bind(this,{instance:s,identifier:u})}return s=t.instantiate(n,e,c),u&&this.addIdentifier(e,u,s,c||n.name),s}];addIdentifier(t,n,e,i){if(!t||!C(t.$scope))throw wt("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",i,n);t.$scope[n]=e,t.$scope.$controllerIdentifier=n}}const Ke=wt("$sce"),Ye={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"};function Xe(t){if("self"===t)return t;if(j(t)){if(t.indexOf("***")>-1)throw Ke("iwcard","Illegal sequence *** in string matcher. String: {0}",t);return t=(n=t,n.replace(/([-()[\]{}+?*.$^|,:#<!\\])/g,"\\$1")).replace(/\\\*\\\*/g,".*").replace(/\\\*/g,"[^:/.?&;]*"),new RegExp(`^${t}$`)}var n;if(I(t))return new RegExp(`^${t.source}$`);throw Ke("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}class Qe{constructor(){let t=["self"],n=[];this.trustedResourceUrlList=function(n){return arguments.length&&(t=n.map(Xe)),t},this.bannedResourceUrlList=function(t){return arguments.length&&(n=t.map(Xe)),n},this.$get=[Ln.$injector,Ln.$$sanitizeUri,Ln.$exceptionHandler,function(e,i,r){let s=function(){r(Ke("unsafe","Attempting to use an unsafe value in a safe context."))};function o(t,n){return"self"===t?we(n,pe)||we(n,document.baseURI):!!t.exec(n.href)}function c(t){const n=function(t){this.$$unwrapTrustedValue=function(){return t}};return t&&(n.prototype=new t),n.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},n.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},n}e.has("$sanitize")&&(s=e.get("$sanitize"));const u=c(),a={};return a[Ye.HTML]=c(u),a[Ye.CSS]=c(u),a[Ye.MEDIA_URL]=c(u),a[Ye.URL]=c(a[Ye.MEDIA_URL]),a[Ye.JS]=c(u),a[Ye.RESOURCE_URL]=c(a[Ye.URL]),{trustAs:function(t,n){const e=xt(a,t)?a[t]:null;return e?null===n||S(n)||""===n?n:"string"!=typeof n?void r(Ke("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",t)):new e(n):void r(Ke("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",t,n))},getTrusted:function(e,c){if(null===c||S(c)||""===c)return c;const u=xt(a,e)?a[e]:null;return u&&c instanceof u?c.$$unwrapTrustedValue():(N(c.$$unwrapTrustedValue)&&(c=c.$$unwrapTrustedValue()),e===Ye.MEDIA_URL||e===Ye.URL?i(c.toString(),e===Ye.MEDIA_URL):e===Ye.RESOURCE_URL?function(e){const i=ge(e.toString());let r,s,c=!1;for(r=0,s=t.length;r<s;r++)if(o(t[r],i)){c=!0;break}if(c)for(r=0,s=n.length;r<s;r++)if(o(n[r],i)){c=!1;break}return c}(c)?c:void r(Ke("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",c.toString())):e===Ye.HTML?s():r(Ke("unsafe","Attempting to use an unsafe value in a safe context.")))},valueOf:function(t){return t instanceof u?t.$$unwrapTrustedValue():t}}}]}}function ti(){let t=!0;this.enabled=function(n){return arguments.length&&(t=!!n),t},this.$get=[Ln.$parse,Ln.$sceDelegate,(n,e)=>{const i=ft(Ye);i.isEnabled=function(){return t},i.trustAs=e.trustAs,i.getTrusted=e.getTrusted,i.valueOf=e.valueOf,t||(i.trustAs=i.getTrusted=function(t,n){return n},i.valueOf=t=>t),i.parseAs=(t,e)=>{const r=n(e);return r.literal&&r.constant?r:n(e,n=>i.getTrusted(t,n))};const r=i.parseAs,{getTrusted:s}=i,{trustAs:o}=i;return Ct(Ye).forEach(([t,n])=>{const e=t.toLowerCase();i[gn(`parse_as_${e}`)]=function(t){return r(n,t)},i[gn(`get_trusted_${e}`)]=function(t){return s(n,t)},i[gn(`trust_as_${e}`)]=function(t){return o(n,t)}}),i}]}const ni={};function ei(t,n,e,i){return{restrict:"A",compile(r,s){const o=t(s[e]);return(t,e)=>{const r=e=>{try{o(t,{$event:e})}catch(t){n(t)}};e.addEventListener(i,r),t.$on("$destroy",()=>e.removeEventListener(i,r))}}}}function ii(t,n,e,i,r){return{restrict:"A",compile(s,o){const c=t(o[i]);return t=>{const i=e=>{try{c(t,{$event:e})}catch(t){n(t)}};e.addEventListener(r,i),t.$on("$destroy",()=>e.removeEventListener(r,i))}}}}"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 n=kt(`ng-${t}`);ni[n]=[Ln.$parse,Ln.$exceptionHandler,(e,i)=>ei(e,i,n,t)]});const ri=wt("$compile"),si=/^\w/,oi=document.createElement("div");class ci{static $nonscope=!0;constructor(t,n,e,i,r){if(this.P=t,this._=n,this.N=e,r){const t=Object.keys(r);for(let n=0,e=t.length;n<e;n++){const e=t[n];this[e]=r[e]}}else this.$attr={};this.$nodeRef=i}get $$element(){return this.$nodeRef.node}$normalize=kt;$addClass(t){t&&t.length>0&&(Et(this.$$element)?this.P.addClass(this.$$element,t):this.$nodeRef.element.classList.add(t))}$removeClass(t){t&&t.length>0&&(Et(this.$$element)?this.P.removeClass(this.$$element,t):this.$nodeRef.element.classList.remove(t))}$updateClass(t,n){const e=ui(t,n);e&&e.length&&(Et(this.$$element)?this.P.addClass(this.$$element,e):this.$nodeRef.element.classList.add(...e.trim().split(/\s+/)));const i=ui(n,t);i&&i.length&&(Et(this.$$element)?this.P.removeClass(this.$$element,i):this.$nodeRef.element.classList.remove(...i.trim().split(/\s+/)))}$set(t,n,e,i){const r=_n(this.$$element,t),s=l[t];let o=t;if(r?(this.$$element[t]=n,i=r):s&&(this[s]=n,o=s),this[t]=n,i?this.$attr[t]=i:(i=this.$attr[t])||(this.$attr[t]=i=H(t,"-")),"img"===this.$nodeRef.node.nodeName.toLowerCase()&&"srcset"===t&&(this[t]=n=this.sanitizeSrcset(n,"$set('srcset', value)")),!1!==e){const t=this.$$element;null===n||S(n)?t.removeAttribute(i):si.test(i)?r&&!1===n?t.removeAttribute(i):r?t.toggleAttribute(i,n):t.setAttribute(i,n):this.setSpecialAttr(this.$$element,i,n)}const{$$observers:c}=this;c&&c[o]&&c[o].forEach(t=>{try{t(n)}catch(t){this._(t)}})}$observe(t,n){const e=this.$$observers||(this.$$observers=Object.create(null)),i=e[t]||(e[t]=[]);return i.push(n),i.$$inter||!xt(this,t)||S(this[t])||n(this[t]),function(){K(i,n)}}setSpecialAttr(t,n,e){oi.innerHTML=`<span ${n}>`;const{attributes:i}=oi.firstChild,r=i[0];i.removeNamedItem(r.name),r.value=e,t.attributes.setNamedItem(r)}sanitizeSrcset(t,n){let e;if(!t)return t;if(!j(t))throw ri("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',n,t.toString());let i="";const r=F(t),s=/\s/.test(r)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,o=r.split(s),c=Math.floor(o.length/2);for(e=0;e<c;e++){const t=2*e;i+=this.N.getTrustedMediaUrl(F(o[t])),i+=` ${F(o[t+1])}`}const u=F(o[2*e]).split(/\s/);return i+=this.N.getTrustedMediaUrl(F(u[0])),2===u.length&&(i+=` ${F(u[1])}`),i.replace(/unsafe:unsafe/g,"unsafe")}}function ui(t,n){const e=new Set(t.split(/\s+/)),i=new Set(n.split(/\s+/));return Array.from(e).filter(t=>!i.has(t)).join(" ")}function ai(t,n){return{restrict:"A",compile:()=>(e,i)=>{""===n&&(n=t);const r=pn(n);e[r]||(e[r]=i.getAttribute(t));const s=new MutationObserver(n=>{const i=n[0].target.getAttribute(t);e[r]!==i&&(e[r]=i)});s.observe(i,{attributes:!0,attributeFilter:[t]}),e.$on("$destroy",()=>{s.disconnect()})}}}const hi=wt("$compile"),li=["ngIf","ngRepeat"],fi=["ngSrc","ngSrcset","src","srcset"],di=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,$i=/^(on[a-z]+|formaction)$/,mi=t=>()=>t,pi="Directive";class gi{static $inject=[Ln.$provide,Ln.$$sanitizeUriProvider];constructor(t,n){const e={},i=Object.create(null);function r(t,n,e){const r=/^([@&]|[=<]())(\??)\s*([\w$]*)$/,s=Object.create(null);return Ct(t).forEach(([t,o])=>{if((o=o.trim())in i)return void(s[t]=i[o]);const c=o.match(r);if(!c)throw hi("iscp","Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}",n,t,o,e?"controller bindings definition":"isolate scope definition");s[t]={mode:c[1][0],collection:"*"===c[2],optional:"?"===c[3],attrName:c[4]||t},c[4]&&(i[o]=s[t])}),s}function s(t,n){const e={isolateScope:null,bindToController:null};if(C(t.scope)&&(!0===t.bindToController?(e.bindToController=r(t.scope,n,!0),e.isolateScope={}):e.isolateScope=r(t.scope,n,!1)),C(t.bindToController)&&(e.bindToController=r(t.bindToController,n,!0)),e.bindToController&&!t.controller)throw hi("noctrl","Cannot bind to controller without directive '{0}'s controller.",n);return e}function o(t){const n=t.require||t.controller&&t.name;if(!O(n)&&C(n)){const t=Ct(n);for(let e=0,i=t.length;e<i;e++){const[i,r]=t[e],s=r.match(di);s&&(r.substring(s[0].length)||(n[i]=s[0]+i))}}return n}function c(t,n){if(t&&(!j(t)||!/[EA]/.test(t)))throw hi("badrestrict","Restrict property '{0}' of directive '{1}' is invalid",t,n);return t||"EA"}this.directive=function n(i,r){return $t(i,"name"),Q(i,"directive"),j(i)?(function(t){const n=t.charAt(0);if(!n||n!==n.toLowerCase())throw hi("baddir","Directive/Component name '{0}' is invalid. The first character must be a lowercase letter",t);if(t!==t.trim())throw hi("baddir","Directive/Component name '{0}' is invalid. The name should not contain leading or trailing whitespaces",t)}(i),$t(r,"directiveFactory"),xt(e,i)||(e[i]=[],t.factory(i+pi,["$injector","$exceptionHandler",function(t,n){const r=[];for(let s=0,u=e[i].length;s<u;s++){const u=e[i][s];try{let n=t.invoke(u);N(n)?n={compile:mi(n)}:!n.compile&&n.link&&(n.compile=mi(n.link)),n.priority=n.priority||0,n.index=s,n.name=n.name||i,n.require=o(n),n.restrict=c(n.restrict,i),r.push(n)}catch(t){n(t)}}return r}])),e[i].push(r)):Ct(i).forEach(([t,e])=>n(t,e)),this},this.component=function(t,n){if(!j(t))return Ct(t).forEach(([t,n])=>this.component(t,n)),this;const e=n.controller||function(){};function i(t){function i(n){return N(n)||O(n)?function(e,i){return t.invoke(n,this,{$element:e,$attrs:i})}:n}const r=n.template||n.templateUrl?n.template:"",s={controller:e,controllerAs:Ze(n.controller)||n.controllerAs||"$ctrl",template:i(r),templateUrl:i(n.templateUrl),transclude:n.transclude,scope:{},bindToController:n.bindings||{},restrict:"E",require:n.require};return Ct(n).forEach(([t,n])=>{"$"===t.charAt(0)&&(s[t]=n)}),s}return Ct(n).forEach(([t,n])=>{"$"===t.charAt(0)&&(i[t]=n,N(e)&&(e[t]=n))}),i.$inject=["$injector"],this.directive(t,i)},this.aHrefSanitizationTrustedUrlList=function(t){if(!x(t))return n.aHrefSanitizationTrustedUrlList();n.aHrefSanitizationTrustedUrlList(t)},this.imgSrcSanitizationTrustedUrlList=function(t){if(!x(t))return n.imgSrcSanitizationTrustedUrlList();n.imgSrcSanitizationTrustedUrlList(t)};let u=!1;this.strictComponentBindingsEnabled=function(t){return x(t)?(u=t,this):u};const h=Object.create(null);this.addPropertySecurityContext=function(t,n,e){const i=`${t.toLowerCase()}|${n.toLowerCase()}`;if(i in h&&h[i]!==e)throw hi("ctxoverride","Property context '{0}.{1}' already set to '{2}', cannot override to '{3}'.",t,n,h[i],e);return h[i]=e,this},function(){function t(t,n){n.forEach(n=>{h[n.toLowerCase()]=t})}t(Ye.HTML,["iframe|srcdoc","*|innerHTML","*|outerHTML"]),t(Ye.CSS,["*|style"]),t(Ye.URL,["area|href","area|ping","a|href","a|ping","blockquote|cite","body|background","del|cite","input|src","ins|cite","q|cite"]),t(Ye.MEDIA_URL,["audio|src","img|src","img|srcset","source|src","source|srcset","track|src","video|src","video|poster"]),t(Ye.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,n,i,r,o,c,l,p,g){let v;function b(){for(let t=0,n=v.length;t<n;++t)try{v[t]()}catch(t){i(t)}v=void 0}const y=n.startSymbol(),k=n.endSymbol(),E="{{"===y&&"}}"===k?t=>t:t=>t.replace(/\{\{/g,y).replace(/}}/g,k),A=/^ng(Attr|Prop|On|Observe|Window)([A-Z].*)$/;return T;function T(t,n,e,i,r){let s=new Be(t),o=R(s,n,e,i,r),c=null;return function(t,n,e){if(!s)throw hi("multilink","This element has already been linked.");$t(t,"scope"),s.O()&&Cn(s.O(),t),r&&r.needsNewScope&&(t=t.$parent.$new()),e=e||{};let{parentBoundTranscludeFn:i}=e;const{transcludeControllers:u,futureParentElement:a}=e;let h;if(i&&i.$$boundTransclude&&(i=i.$$boundTransclude),c||(c=function(t){const n=t;return n&&"foreignobject"!==Z(n)&&toString.call(n).match(/SVG/)?"svg":"html"}(a)),"html"!==c){const t=Dn("<div></div>");t.append(s.node);const n=Q(c,t.innerHTML);h=new Be(n[0])}else h=n?s.R():s;if(u)for(const t in u)$t(h.element,"element"),Sn(h.element,`$${t}Controller`,u[t].instance);return n&&n(h.dom,t),o&&o(t,h,i),n||(s=o=null),h.C()}}function R(t,n,e,r,s){const o=[];let c,u=!1;for(let a=0;a<t.size;a++){const h=new ci(g,i,p),l=P(t.A(a),h,0===a?e:void 0,r);let f,d;l.length&&(f=D(l,t.A(a),h,n,null,[],[],Object.assign({},s,{index:a,parentNodeRef:t,ctxNodeRef:t})));const $=f?.nodeLinkFn,{childNodes:m}=t.A(a);if($&&f.terminal||!m||!m.length)d=null;else{const t=$?(f.transcludeOnThisElement||!f.templateOnThisElement)&&f.transclude:n;d=R(new Be(m),t)}($||d)&&(o.push({index:a,nodeLinkFnCtx:f,childLinkFn:d}),u=!0,c=c||$),s=null}return u?function(e,i,r){$t(i,"nodeRef");let s=[];if(c){const n=i.S?i.nodes.length:1;s=new Array(n),o.forEach(n=>{const e=n.index;0===e?s[e]=i.S?i.nodes[e]:i.node:t.A(e)&&(s[e]=i.nodes[e])})}else i.S?i.nodes.forEach(t=>s.push(t)):s.push(i.node);o.forEach(({index:t,nodeLinkFnCtx:i,childLinkFn:o})=>{const c=s[t];let u,a;c.stable=!0,i?.nodeLinkFn?(u=i.newScope?e.$new():e,a=i.transcludeOnThisElement?M(e,i.transclude,r):!i.templateOnThisElement&&r?r:!r&&n?M(e,n):null,i?.newScope&&Cn(c,u),i.nodeLinkFn(o,u,c,a)):o&&o(e,new Be(c.childNodes),r)})}:null}function M(t,n,e){function i(i,r,s,o,c){return i||((i=t.$transcluded(c)).$$transcluded=!0),n(i,r,{parentBoundTranscludeFn:e,transcludeControllers:s,futureParentElement:o})}const r=i.$$slots=Object.create(null);for(const i in n.$$slots)n.$$slots[i]?r[i]=M(t,n.$$slots[i],e):r[i]=null;return i}function P(t,e,r,s){const c=[],{nodeType:u}=t,h=e.$attr;let l;switch(u){case f:l=t.nodeName.toLowerCase(),s!==kt(l)&&L(c,kt(l),"E",r);for(let n=0;n<t.attributes?.length;n++){let u=!1,l=!1,f=!1,d=!1,$=!1;const m=t.attributes[n];let{name:p}=m;const{value:g}=m;let w=kt(p.toLowerCase());const v=w.match(A);v&&(u="Attr"===v[1],l="Prop"===v[1],f="On"===v[1],d="Observe"===v[1],$="Window"===v[1],p=p.replace(a,"").toLowerCase().substring(4+v[1].length).replace(/_(.)/g,(t,n)=>n.toUpperCase())),l||f||$?(e[w]=g,h[w]=m.name,l?tt(t,c,w,p):f?c.push(ei(o,i,w,p)):c.push(ii(o,i,window,w,p))):d?c.push(ai(p,g)):(w=kt(p.toLowerCase()),h[w]=p,!u&&xt(e,w)||(e[w]=g,_n(t,w)&&(e[w]=!0)),nt(t,c,g,w,u),w!==s&&L(c,w,"A",r))}"input"===l&&"hidden"===t.getAttribute("type")&&t.setAttribute("autocomplete","off");break;case $:!function(t,e){const i=n(e,!0);i&&t.push({priority:0,compile:()=>(t,n)=>{i.expressions.forEach(e=>{t.$watch(e,()=>{const e=i(w(t)?t.$target:t);1===n.nodeType?n.innerHTML=e:n.nodeValue=e})})}})}(c,t.nodeValue)}return c.sort(G),c}function I(t,n,e,i,r,s){let o;return t?T(n,e,i,r,s):function(){return o||(o=T(n,e,i,r,s),n=e=s=null),o.apply(this,arguments)}}function D(t,n,e,r,s,o,u,a){a=a||{};let h=-Number.MAX_VALUE,l=!1,{newScopeDirective:d,controllerDirectives:$,newIsolateScopeDirective:m,templateDirective:w,nonTlbTranscludeDirective:v,hasElementTranscludeDirective:b}=a;const{ctxNodeRef:y,parentNodeRef:k}=a;let x=!1,A=!1,T=new Be(n);const{index:R}=a;let M,_,D;e.$nodeRef=T;let V,L=s,W=r,G=!1,Y=!1,X=function(t,s,a,h){let l,f,w,v,y,k,E,x,j=s;if(n===a?(E=e,k=e.$nodeRef):(k=new Be(a),E=new ci(g,i,p,k,e)),v=s,m?w=s.$newIsolate():d&&(v=s.$parent),h){const t=function(t,n,e,i){let r;if(q(t)||(i=e,e=n,n=t,t=void 0),b&&(r=y),e||(e=b?k.node.parentElement:k.node),i){const s=h.$$slots[i];if(s)return s(t,n,r,e,j);if(S(s))throw hi("noslot",'No parent directive that requires a transclusion with slot name "{0}". Element: {1}',i,Mn(k.element));return}return h(t,n,r,e,j)};t.$$boundTransclude=h,t.isSlotFilled=function(t){return!!h.$$slots[t]},r=t}$&&(y=function(t,n,e,i,r,s,o){const u=Object.create(null);for(const a in i){const h=i[a],l={$scope:h===o||h.$$isolateScope?r:s,$element:t.node,$attrs:n,$transclude:e};let{controller:f}=h;"@"===f&&(f=n[h.name]);const d=c(f,l,!0,h.controllerAs);u[h.name]=d,t.M()&&Sn(t.element,`$${h.name}Controller`,d.instance)}return u}(k,E,r,$,w,s,m)),m&&(w.$target.$$isolateBindings=m.$$isolateBindings,x=ot(s,E,w,w.$$isolateBindings,m),x.removeWatches&&w.$on("$destroy",x.removeWatches));for(const t in y){const n=$[t],e=y[t],i=n.$$bindings.bindToController,r=e();e.instance=v.$new(r),Sn(k.node,`$${n.name}Controller`,e.instance),e.bindingInfo=ot(v,E,e.instance,i,n)}for($&&Ct($).forEach(([t,n])=>{const{require:e}=n;n.bindToController&&!O(e)&&C(e)&&z(y[t].instance,U(t,e,k.element,y))}),y&&Object.values(y).forEach(t=>{const n=t.instance;if(N(n.$onChanges))try{n.$onChanges(t.bindingInfo.initialChanges)}catch(t){i(t)}if(N(n.$onInit))try{n.$target.$onInit()}catch(t){i(t)}N(n.$onDestroy)&&v.$on("$destroy",()=>{n.$onDestroy()})}),l=0,f=o.length;l<f;l++){const t=o[l],n=t.require&&U(t.directiveName,t.require,k.element,y);try{t(t.isolateScope?w:s,k.node,E,n,r)}catch(t){i(t)}}for(m&&(m.template||null===m.templateUrl)&&(j=w),t&&a&&a.childNodes&&a.childNodes.length&&t(j,new Be(a.childNodes),h),l=u.length-1;l>=0;l--){const t=u[l],n=t.require&&U(t.directiveName,t.require,k.node,y);try{t.isolateScope&&jn(k.element,w),t(t.isolateScope?w:s,k.node,E,n,r)}catch(t){i(t)}}y&&Object.values(y).forEach(t=>{const n=t.instance;N(n.$postLink)&&n.$postLink()})};for(let s=0,c=t.length;s<c&&(M=t[s],D=void 0,!(h>M.priority));s++){V=M.scope,V&&(M.templateUrl||(C(V)?(K("new/isolated scope",m||d,M,T),m=M):K("new/isolated scope",m,M,T)),d=d||M),_=M.name;const p=M.replace&&(M.templateUrl||M.template),g=M.transclude&&!li.includes(M.name);if(!G&&(p||g)){let n;for(let e=s+1;n=t[e++];)if(n.transclude&&!li.includes(n.name)||n.replace&&(n.templateUrl||n.template)){Y=!0;break}G=!0}if(!M.templateUrl&&M.controller&&($=$||Object.create(null),K(`'${_}' controller`,$[_],M,T),$[_]=M),V=M.transclude,V)if(x=!0,li.includes(M.name)||(K("transclusion",v,M,T),v=M),"element"===V)b=!0,h=M.priority,D=T,T=new Be(document.createComment("")),e.$nodeRef=T,n=T.node,y.node=n,et(new Be(D.O()),n,R),W=I(Y,D.O(),r,h,L&&L.name,{nonTlbTranscludeDirective:v});else{const t=Object.create(null);if(C(V)){D=document.createDocumentFragment();const n=Object.create(null),e=Object.create(null);Ct(V).forEach(([i,r])=>{const s="?"===r.charAt(0);r=s?r.substring(1):r,n[r]=i,t[i]=null,e[i]=s}),T.element.childNodes.forEach(i=>{const r=n[kt(Z(i))];r?(e[r]=!0,t[r]=t[r]||document.createDocumentFragment(),t[r].appendChild(i)):D.appendChild(i)}),Ct(e).forEach(([t,n])=>{if(!n)throw hi("reqslot","Required transclusion slot `{0}` was not filled.",t)});for(const n in t)if(t[n]){const e=t[n].childNodes;t[n]=I(Y,e,r)}D=D.childNodes}else D=n.cloneNode(!0).childNodes;Vn(n),W=I(Y,D,r,void 0,void 0,{needsNewScope:M.$$isolateScope||M.$$newScope}),W.$$slots=t}if(M.template)if(A=!0,K("template",w,M,T),w=M,V=N(M.template)?M.template(T.node,e):M.template,V=E(V),M.replace){if(L=M,D=bn(V)?[]:wi(Q(M.templateNamespace,F(V))),j(D)&&(D=Array.from(qn(D)).filter(t=>t.nodeType===f)),n=D[0],1!==D.length||n.nodeType!==f)throw hi("tplrt","Template for directive '{0}' must have exactly one root element. {1}",_,"");et(T,n),k&&k.T(R,n);const i={$attr:{}},r=P(n,i),o=t.splice(s+1,t.length-(s+1));(m||d)&&H(r,m,d),t=t.concat(r).concat(o),B(e,i),c=t.length}else T.M()&&(T.element.innerHTML=V);if(M.templateUrl)A=!0,K("template",w,M,T),w=M,M.replace&&(L=M),X=J(t.splice(s,t.length-s),T,e,n,x&&W,o,u,{index:R,controllerDirectives:$,newScopeDirective:d!==M&&d,newIsolateScopeDirective:m,templateDirective:w,nonTlbTranscludeDirective:v,futureParentElement:a.futureParentElement}),c=t.length;else if(M.compile)try{const t=M.compile(T.O(),e,W),n=M.$$originalDirective||M;N(t)?tt(null,it(n,t)):t&&tt(it(n,t.pre),it(n,t.post))}catch(t){i(t)}M.terminal&&(l=!0,h=Math.max(h,M.priority))}return a.hasElementTranscludeDirective=b,{nodeLinkFn:X,terminal:l,transclude:W,transcludeOnThisElement:x,templateOnThisElement:A,newScope:d&&!0===d.scope};function tt(t,n){t&&(t.require=M.require,t.directiveName=_,(m===M||M.$$isolateScope)&&(t=rt(t,{isolateScope:!0})),o.push(t)),n&&(n.require=M.require,n.directiveName=_,(m===M||M.$$isolateScope)&&(n=rt(n,{isolateScope:!0})),u.push(n))}}function U(t,n,e,i){let r;if(j(n)){const s=n.match(di),o=n.substring(s[0].length),c=s[1]||s[3],u="?"===s[2];if("^^"===c?e=e.parentElement?e.parentElement:void 0:(r=i&&i[o],r=r&&r.instance),!r){const t=`$${o}Controller`;r="^^"===c&&e&&e.nodeType===d?null:e?c?Tn(e,t):xn(e,t):void 0}if(!r&&!u)throw hi("ctreq","Controller '{0}', required by directive '{1}', can't be found!",o,t)}else if(O(n)){r=[];for(let s=0,o=n.length;s<o;s++)r[s]=U(t,n[s],e,i)}else C(n)&&(r={},Ct(n).forEach(([n,s])=>{r[n]=U(t,s,e,i)}));return r||null}function H(t,n,e){for(let i=0,r=t.length;i<r;i++)t[i]=W(t[i],{$$isolateScope:n,$$newScope:e})}function L(n,i,r,o){let c=!1;if(xt(e,i))for(let e,u=t.get(i+pi),a=0,h=u.length;a<h;a++)if(e=u[a],(S(o)||o>e.priority)&&-1!==e.restrict.indexOf(r)){if(!e.$$bindings){const t=e.$$bindings=s(e,e.name);C(t.isolateScope)&&(e.$$isolateBindings=t.isolateScope)}n.push(e),c=e}return c}function B(t,n){const e=n.$attr,i=t.$attr;Ct(t).forEach(([i,r])=>{"$"!==i[0]&&"_"!==i[0]&&(n[i]&&n[i]!==r&&(r.length?r+=("style"===i?";":" ")+n[i]:r=n[i]),t.$set(i,r,!0,e[i]))}),Ct(n).forEach(([n,r])=>{xt(t,n)||"$"===n.charAt(0)||(t[n]=r,"class"!==n&&"style"!==n&&(i[n]=e[n]))})}function J(t,n,e,s,o,c,u,a){let h,l,d,p=[];const g=n.O(),w=t.shift(),v=W(w,{templateUrl:null,transclude:null,replace:null,$$originalDirective:w});let b;b=N(w.templateUrl)?w.templateUrl(n.element,e):w.templateUrl;const{templateNamespace:y}=w;return Vn(n.element),r(b).then(i=>{let r,k,S,x;if(i=E(i),w.replace){if(S=bn(i)?[]:j(i)?Array.from(qn(i)).filter(t=>t.nodeType!==m&&t.nodeType!==$):wi(Q(y,F(i))),r=S[0],1!==S.length||r.nodeType!==f)throw hi("tplrt","Template for directive '{0}' must have exactly one root element. {1}",w.name,b);k={$attr:{}},et(n,r,a.index);const s=P(r,k);C(w.scope)&&H(s,!0),t=s.concat(t),B(e,k)}else r=g,n.element.innerHTML=i;for(t.unshift(v),d=D(t,r,e,o,w,c,u,{...a,ctxNodeRef:n}),h=d?.nodeLinkFn,s&&Ct(s).forEach(([t,e])=>{e===r&&(s[t]=n)}),l=R(new Be(n.O().childNodes),o);p.length;){const t=p.shift(),e=p.shift(),i=p.shift();let s=n.O();if(!t.$$destroyed){if(e!==g){const t=e.className;a.hasElementTranscludeDirective&&w.replace||(s=r.cloneNode(!0),e.appendChild(s));try{""!==t&&n.element.classList.forEach(t=>e.classList.add(t))}catch{}}x=d.transcludeOnThisElement?M(t,d.transclude,i):i,h(l,t,s,x)}}p=null}).catch(t=>{_(t)?i(t):i(new Error(t))}),function(t,n,e,i,r){let s=r;n.$$destroyed||(p?p.push(n,e,i):(h.transcludeOnThisElement&&(s=M(n,h.transclude,r)),h(l,n,e,i,s)))}}function G(t,n){const e=n.priority-t.priority;return 0!==e?e:t.name!==n.name?t.name<n.name?-1:1:t.index-n.index}function K(t,n,e,i){if(n)throw hi("multidir","Multiple directives [{0}, {1}] asking for {3} on: {4}",n.name,e.name,t,Mn(i.O()))}function Q(t,n){switch(t=(t||"html").toLowerCase()){case"svg":case"math":{const e=document.createElement("div");return e.innerHTML=`<${t}>${n}</${t}>`,e.childNodes[0].childNodes}default:return n}}function tt(t,n,e,i){if($i.test(i))throw hi("nodomevents","Property bindings for HTML DOM event properties are disallowed");const r=Z(t),s=function(t,n){const e=n.toLowerCase();return h[`${t}|${e}`]||h[`*|${e}`]}(r,i);let c=t=>t;"srcset"!==i||"img"!==r&&"source"!==r?s&&(c=p.getTrusted.bind(p,s)):c=t=>function(t){if(!t)return t;if(!j(t))throw hi("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',"ng-prop-srcset",t.toString());let n="";const e=F(t),i=/\s/.test(e)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,r=e.split(i),s=Math.floor(r.length/2);let o;for(o=0;o<s;o++){const t=2*o;n+=p.getTrustedMediaUrl(F(r[t])),n+=` ${F(r[t+1])}`}const c=F(r[2*o]).split(/\s/);return n+=p.getTrustedMediaUrl(F(c[0])),2===c.length&&(n+=` ${F(c[1])}`),n}(p.valueOf(t)),n.push({priority:100,compile:function(t,n){const r=o(n[e]);return{pre:function(t,s){function o(){const n=r(t);s[i]=c(n)}o(),t.$watch(i,o),t.$watch(n[e],t=>{p.valueOf(t),o()})}}}})}function nt(t,e,i,r,s){const o=Z(t),c=function(t,n){return"srcdoc"===n?p.HTML:"src"===n||"ngSrc"===n?-1===["img","video","audio","source","track"].indexOf(t)?p.RESOURCE_URL:p.MEDIA_URL:"xlinkHref"===n?"image"===t?p.MEDIA_URL:"a"===t?p.URL:p.RESOURCE_URL:"form"===t&&"action"===n||"base"===t&&"href"===n||"link"===t&&"href"===n?p.RESOURCE_URL:"a"!==t||"href"!==n&&"ngHref"!==n?void 0:p.URL}(o,r),u=!s,a=fi.includes(r)||s;let h=n(i,u,c,a);if(h){if("multiple"===r&&"select"===o)throw hi("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",Mn(t.outerHTML));if($i.test(r))throw hi("nodomevents","Interpolations for HTML DOM event attributes are disallowed");e.push({priority:100,compile:()=>({pre:function(t,e,s){const o=s.$$observers||(s.$$observers=Object.create(null)),u=s[r];u!==i&&(h=u&&n(u,!0,c,a),i=u),h&&(s[r]=h(t),(o[r]||(o[r]=[])).$$inter=!0,h.expressions.forEach(n=>{(s.$$observers&&s.$$observers[r].$$scope||t).$watch(n,()=>{const n=h(t);"class"===r?s.$updateClass(n,s.$$element.classList.value):s.$set(r,"srcset"===r?p.getTrustedMediaUrl(n):n)})}),0===h.expressions.length&&s.$set(r,"srcset"===r?p.getTrustedMediaUrl(u):u))}})})}}function et(t,n,e){const i=t.O().parentNode;if(i)if(x(e)){const t=i.childNodes[e];t&&i.replaceChild(n,t)}else i.insertBefore(n,i.firstChild);const r=document.createDocumentFragment();t.j().forEach(t=>{r.appendChild(t)}),t.node=n}function rt(t,n){return z(function(){return t.apply(null,arguments)},t,n)}function st(t,n){if(u)throw hi("missingattr","Attribute '{0}' of '{1}' is non-optional and must be set!",t,n)}function ot(t,e,i,r,s){const c=[],u={};let a;function h(n,e,r){N(i.$onChanges)&&(v||(t.$postUpdate(b),v=[]),a||(a={},v.push(l)),a[n]={currentValue:e,firstChange:r})}function l(){i.$onChanges&&a&&i.$onChanges(a),a=void 0}return r&&Ct(r).forEach(([r,a])=>{const{attrName:f,optional:d,mode:$}=a;let m,p,g,w,v,b=!0,y=!0;switch($){case"@":d||xt(e,f)||(st(f,s.name),i[r]=e[f]=void 0),v=e.$observe(f,t=>{(j(t)||V(t))&&(h(r,t,y),i[r]=t,b?b=!1:(l(),y=!1))}),e.$$observers[f].$$scope=t,m=e[f],j(m)?i[r]=n(m)(t):V(m)&&(i[r]=m),u[r]={currentValue:i[r],firstChange:!0},c.push(v);break;case"=":{if(!xt(e,f)){if(d)break;st(f,s.name),e[f]=void 0}if(d&&!e[f])break;p=o(e[f]),w=p.literal?X:Y,g=p.assign||function(){throw m=i.$target[r]=p(t),hi("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",e[f],f,s.name)},m=i.$target[r]=p(t.$target);const n=function(n){return w(n,i[r])||(w(n,m)?g(t,n=i[r]):i[r]=n),m=n,m};if(n.$stateful=!0,a.collection)v=t.$watch(e[f],n);else{if(e[f]){const i=e[f];t.$watch(i,i=>{const r=o(e[f],n);i?(p.literal?t.$target[f]=i:t[f]=i,r(t)):t[f]=t[e[f]]},!0)}v=i.$watch(f,n=>{if(n!==m||S(e[f])){if(p.inputs&&!p.literal||S(e[f])&&x(n))throw i.$target[f]=m,hi("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",e[f],f,s.name);C(n)?Ct(n).forEach(([n,e])=>{t.$target[n]=e}):(g(t.$target,m=n),t.$handler.watchers.get(e[f])?.forEach(e=>{e.listenerFn(n,t.$target)}))}},!0)}c.push(v);break}case"<":if(!xt(e,f)){if(d)break;st(f,s.name),e[f]=void 0}if(d&&!e[f])break;p=o(e[f]),i.$target[r]=p(t.$target),u[r]={currentValue:i.$target[r],firstChange:y},t.$target.attrs=e,e[f]&&(v=t.$watch(e[f],t=>{i.$target[r]=t,h(r,t,y),y&&(y=!1)},!0),c.push(v));break;case"&":if(d||xt(e,f)||st(f,s.name),p=xt(e,f)?o(e[f]):()=>{},p.toString()===(()=>{}).toString()&&d)break;i.$target[r]=function(n){return p(t.$target,n)}}}),{initialChanges:u,removeWatches:c.length&&function(){for(let t=0,n=c.length;t<n;++t)c[t]()}}}}]}}function wi(t){let n=t.length;if(n<=1)return t;for(;n--;){const e=t[n];(e.nodeType===m||e.nodeType===$&&""===e.nodeValue.trim())&&[].splice.call(t,n,1)}return t}const vi={$nonscope:!0,$addControl:()=>{},$getControls:()=>[],$$renameControl:(t,n)=>{t.$name=n},$removeControl:()=>{},$setValidity:()=>{},$setDirty:()=>{},$setPristine:()=>{},$setSubmitted:()=>{},$$setSubmitted:()=>{}},bi="ng-pending",yi="ng-submitted";class ki{static $nonscope=!0;static $inject=["$element","$attrs","$scope","$animate","$interpolate"];constructor(t,i,r,s,o){this.$$controls=[],this.$name=o(i.name||i.ngForm||"")(r),this.$dirty=!1,this.$pristine=!0,this.$valid=!0,this.$invalid=!1,this.$submitted=!1,this.$$parentForm=vi,this.$$element=t,this.$$animate=s,this.$error={},this.$$success={},this.$pending=void 0,this.$$classCache={};const c=this.$$element.classList.contains(n);this.$$classCache[n]=c,this.$$classCache[e]=!c}$rollbackViewValue(){this.$$controls.forEach(t=>{t.$rollbackViewValue()})}$commitViewValue(){this.$$controls.forEach(t=>{t.$commitViewValue()})}$addControl(t){Q(t.$name,"input"),this.$$controls.push(t),t.$name&&(this[t.$name]=t),t.$target.$$parentForm=this}$getControls(){return ft(this.$$controls)}$$renameControl(t,n){const e=t.$name;this[e]===t&&delete this[e],this[n]=t,t.$name=n}$removeControl(t){t.$name&&this[t.$name]===t&&delete this[t.$name],this.$pending&&Object.keys(this.$pending).forEach(n=>{this.$setValidity(n,null,t)}),this.$error&&Object.keys(this.$error).forEach(n=>{this.$setValidity(n,null,t)}),this.$$success&&Object.keys(this.$$success).forEach(n=>{this.$setValidity(n,null,t)}),K(this.$$controls,t),t.$target.$$parentForm=vi}$setDirty(){Et(this.$$element)?(this.$$animate.removeClass(this.$$element,i),this.$$animate.addClass(this.$$element,r)):(this.$$element.classList.remove(i),this.$$element.classList.add(r)),this.$dirty=!0,this.$pristine=!1,this.$$parentForm.$setDirty()}$setPristine(){Et(this.$$element)?this.$$animate.setClass(this.$$element,i,`${r} ${yi}`):(this.$$element.classList.remove(r,yi),this.$$element.classList.add(i)),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!==vi;)t=t.$$parentForm;t.$$setSubmitted()}$$setSubmitted(){Et(this.$$element)?this.$$animate.addClass(this.$$element,yi):this.$$element.classList.add(yi),this.$submitted=!0,this.$$controls.forEach(t=>{t.$$setSubmitted&&t.$$setSubmitted()})}set(t,n,e){const i=t[n];i?-1===i.indexOf(e)&&i.push(e):(w(t)&&(t=t.$target),t[n]=[e])}unset(t,n,e){const i=t[n];i&&(-1===K(i,e)&&K(i,e.$target),0===i.length&&delete t[n])}$setValidity(t,i,r){const s=this;let o;function c(t,n,e){e&&!t.$$classCache[n]?(t.$$animate.addClass(t.$$element,n),t.$$classCache[n]=!0):!e&&t.$$classCache[n]&&(t.$$animate.removeClass(t.$$element,n),t.$$classCache[n]=!1)}function u(t,i,r){i=i?`-${H(i,"-")}`:"",c(t,n+i,!0===r),c(t,e+i,!1===r)}S(i)?function(t,n,e,i){t[n]||(t[n]={}),s.set(t[n],e,i)}(this,"$pending",t,r):function(t,n,e,i){t[n]&&s.unset(t[n],e,i),St(t[n])&&(t[n]=void 0)}(this,"$pending",t,r),V(i)?i?(this.unset(this.$error,t,r),this.set(this.$$success,t,r)):(this.set(this.$error,t,r),this.unset(this.$$success,t,r)):(this.unset(this.$error,t,r),this.unset(this.$$success,t,r)),this.$pending?(c(this,bi,!0),this.$valid=this.$invalid=void 0,u(this,"",null)):(c(this,bi,!1),this.$valid=St(this.$error),this.$invalid=!this.$valid,u(this,"",this.$valid)),o=this.$pending&&this.$pending[t]?void 0:!this.$error[t]&&(!!this.$$success[t]||null),u(this,t,o),this.$$parentForm.$setValidity(t,o,this)}}const Ei=function(t){return["$parse",function(e){return{name:"form",restrict:t?"EA":"E",require:["form","^^?form"],controller:ki,compile:function(r,s){r.classList.add(i,n);const o=s.name?"name":!(!t||!s.ngForm)&&"ngForm";return{pre:function(t,n,i,r){const s=r[0];if(!("action"in i)){const t=function(t){s.$commitViewValue(),s.$setSubmitted(),t.preventDefault()};n.addEventListener("submit",t),n.addEventListener("$destroy",()=>{setTimeout(()=>{n.removeEventListener("submit",t)},0,!1)})}(r[1]||s.$$parentForm).$addControl(s);const c=o?""===(u=s.$name)?e('this[""]').assign:e(u).assign||(()=>{}):()=>{};var u;o&&(c(t,s),i.$observe(o,n=>{s.$name!==n&&(t.$target[s.$name]=void 0,s.$$parentForm.$$renameControl(s,n),t.$target!==s.$$parentForm&&s.$$parentForm!==vi||(t.$target[n]=s))})),n.addEventListener("$destroy",()=>{s.$target.$$parentForm.$removeControl(s),c(t,void 0),z(s,vi)})}}}}}]},Si=Ei(),xi=Ei("ngForm"),Oi=/(\s+|^)default(\s+|$)/;class Ci{static $nonscope=!0;static $inject=["$attrs","$scope"];constructor(t,n){this.$$attrs=t,this.$$scope=n,this.parentCtrl}$onInit(){const t=this.parentCtrl?this.parentCtrl.$options:Ai,n=this.$$scope.$eval(this.$$attrs.ngModelOptions);this.$options=t.createChild(n)}}class ji{static $nonscope=!0;constructor(t){this.$$options=t}getOption(t){return this.$$options[t]}createChild(t){let n=!1;return Ct(t=Object.assign({},t)).forEach(([e,i])=>{"$inherit"===i?"*"===e?n=!0:(t[e]=this.$$options[e],"updateOn"===e&&(t.updateOnDefault=this.$$options.updateOnDefault)):"updateOn"===e&&(t.updateOnDefault=!1,t[e]=F(i.replace(Oi,()=>(t.updateOnDefault=!0," "))))},this),n&&(delete t["*"],Ri(t,this.$$options)),Ri(t,Ai.$$options),new ji(t)}}const Ai=new ji({updateOn:"",updateOnDefault:!0,debounce:0,getterSetter:!1,allowInvalid:!1});function Ti(){return{restrict:"A",priority:10,require:{parentCtrl:"?^^ngModelOptions"},bindToController:!0,controller:Ci}}function Ri(t,n){Ot(n).forEach(e=>{x(t[e])||(t[e]=n[e])})}const Mi=wt("ngModel");class Pi{static $nonscope=!0;static $inject=["$scope",Ln.$exceptionHandler,"$attrs","$element",Ln.$parse,Ln.$animate,Ln.$interpolate];constructor(t,i,r,s,o,c,u){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=u(r.name||"",!1)(t),this.$$parentForm=vi,this.$options=Ai,this.$$updateEvents="",this.$$updateEventHandler=this.$$updateEventHandler.bind(this),this.$$parsedNgModel=o(r.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=r,this.$$element=s,this.$$animate=c,this.$$parse=o,this.$$exceptionHandler=i,this.$$hasNativeValidators=!1,this.$$classCache={};const a=this.$$element.classList.contains(n);var h;this.$$classCache[n]=a,this.$$classCache[e]=!a,this.$$eventRemovers=new Set,(h=this).$$scope.$watch("value",()=>{const t=h.$$ngModelGet(h.$$scope);t===h.$modelValue||Number.isNaN(h.$modelValue)&&Number.isNaN(t)||h.$$setModelValue(t)})}set(t,n){t[n]=!0}unset(t,n){delete t[n]}$setValidity(t,i){const r=this;function s(t,n,e){e&&!t.$$classCache[n]?(Et(t.$$element)?t.$$animate.addClass(t.$$element,n):t.$$element.classList.add(n),t.$$classCache[n]=!0):!e&&t.$$classCache[n]&&(Et(t.$$element)?t.$$animate.removeClass(t.$$element,n):t.$$element.classList.remove(n),t.$$classCache[n]=!1)}function o(t,i,r){i=i?`-${H(i,"-")}`:"",s(t,n+i,!0===r),s(t,e+i,!1===r)}let c;S(i)?function(t,n,e){t[n]||(t[n]={}),r.set(t[n],e)}(this,"$pending",t):function(t,n,e){t[n]&&r.unset(t[n],e),St(t[n])&&(t[n]=void 0)}(this,"$pending",t),V(i)?i?(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?(s(this,bi,!0),this.$valid=this.$invalid=void 0,o(this,"",null)):(s(this,bi,!1),this.$valid=St(this.$error),this.$invalid=!this.$valid,o(this,"",this.$valid)),c=this.$pending&&this.$pending[t]?void 0:!this.$error[t]&&(!!this.$$success[t]||null),o(this,t,c),this.$$parentForm.$setValidity(t,c,this)}$$initGetterSetters(){if(this.$options.getOption("getterSetter")){const t=this.$$parse(`${this.$$attr.ngModel}()`),n=this.$$parse(`${this.$$attr.ngModel}($$$p)`);this.$$ngModelGet=n=>{let e=this.$$parsedNgModel(n);return N(e)&&(e=t(n)),e},this.$$ngModelSet=(t,e)=>{N(this.$$parsedNgModel(t))?n(t,{$$$p:e}):this.$$parsedNgModelAssign(t,e)}}else if(!this.$$parsedNgModel.assign)throw Mi("nonassign","Expression '{0}' is non-assignable. Element: {1}",this.$$attr.ngModel,Mn(this.$$element))}$render(){}$isEmpty(t){return S(t)||""===t||null===t||Number.isNaN(t)}$$updateEmptyClasses(t){this.$isEmpty(t)?Et(this.$$element)?(this.$$animate.removeClass(this.$$element,u),this.$$animate.addClass(this.$$element,c)):(this.$$element.classList.remove(u),this.$$element.classList.add(c)):Et(this.$$element)?(this.$$animate.removeClass(this.$$element,c),this.$$animate.addClass(this.$$element,u)):(this.$$element.classList.remove(c),this.$$element.classList.add(u))}$setPristine(){this.$dirty=!1,this.$pristine=!0,this.$$element&&(Et(this.$$element)?(this.$$animate.removeClass(this.$$element,c),this.$$animate.addClass(this.$$element,i)):(this.$$element.classList.remove(c),this.$$element.classList.add(i)))}$setDirty(){this.$dirty=!0,this.$pristine=!1,Et(this.$$element)?(this.$$animate.removeClass(this.$$element,i),this.$$animate.addClass(this.$$element,r)):(this.$$element.classList.remove(i),this.$$element.classList.add(r)),this.$$parentForm.$setDirty()}$setUntouched(){this.$touched=!1,this.$untouched=!0,Et(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,Et(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(B(this.$modelValue))return;const t=this.$$lastCommittedViewValue,n=this.$$rawModelValue,e=this.$valid,i=this.$modelValue,r=this.$options.getOption("allowInvalid"),s=this;this.$$runValidators(n,t,t=>{r||e===t||(s.$modelValue=t?n:void 0,s.$modelValue!==i&&s.$$writeModelToScope())})}$$runValidators(t,n,e){this.$$currentValidationRunId++;const i=this.$$currentValidationRunId,r=this;function s(t,n){i===r.$$currentValidationRunId&&r.$setValidity(t,n)}function o(t){i===r.$$currentValidationRunId&&e(t)}!function(){const t=r.$$parserName;return S(r.$$parserValid)?(s(t,null),!0):(r.$$parserValid||(Ot(r.$validators).forEach(t=>{s(t,null)}),Ot(r.$asyncValidators).forEach(t=>{s(t,null)})),s(t,r.$$parserValid),r.$$parserValid)}()?o(!1):function(){let e=!0;return Ct(r.$validators).forEach(([i,r])=>{const o=Boolean(r(t,n));e=e&&o,s(i,o)}),!!e||(Ot(r.$asyncValidators).forEach(t=>{s(t,null)}),!1)}()?function(){const e=[];let i=!0;Ct(r.$asyncValidators).forEach(([r,o])=>{const c=o(t,n);if(!U(c))throw Mi("nopromise","Expected asynchronous validator to return a promise but got '{0}' instead.",c);s(r,void 0),e.push(c.then(()=>{s(r,!0)},()=>{i=!1,s(r,!1)}))}),e.length?Promise.all(e).then(()=>{o(i)},()=>{}):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 n=this;if(this.$$parserValid=!S(t)||void 0,this.$setValidity(this.$$parserName,null),this.$$parserName="parse",this.$$parserValid)for(let n=0;n<this.$parsers.length;n++)if(t=this.$parsers[n](t),S(t)){this.$$parserValid=!1;break}B(this.$modelValue)&&(this.$modelValue=this.$$ngModelGet(this.$$scope));const e=this.$modelValue,i=this.$options.getOption("allowInvalid");function r(){n.$modelValue!=e&&n.$$writeModelToScope()}this.$$rawModelValue=t,i&&(this.$modelValue=t,r()),this.$$runValidators(t,this.$$lastCommittedViewValue,e=>{i||(n.$modelValue=e?t:void 0,r())})}$$writeModelToScope(){this.$$ngModelSet(this.$$scope,this.$modelValue),Object.values(this.$viewChangeListeners).forEach(t=>{try{t()}catch(t){this.$$exceptionHandler(t)}},this)}$setViewValue(t,n){this.$viewValue=t,this.$options?.getOption("updateOnDefault")&&this.$$debounceViewValueCommit(n)}$$debounceViewValueCommit(t){let n=this.$options.getOption("debounce");M(n[t])?n=n[t]:M(n.default)&&-1===this.$options.getOption("updateOn").indexOf(t)?n=n.default:M(n["*"])&&(n=n["*"]),clearTimeout(this.$$pendingDebounce);const e=this;n>0?this.$$pendingDebounce=setTimeout(()=>{e.$commitViewValue()},n):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 n=t.length,e=this.$modelValue;for(;n--;)e=t[n](e);return e}$$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 _i(){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:Pi,priority:1,compile:t=>(t.classList.add(i,s,n),{pre:(t,n,e,i)=>{const r=i[0],s=i[1]||r.$$parentForm,o=i[2];o&&(r.$options=o.$options),r.$$initGetterSetters(),s.$addControl(r),e.$observe("name",t=>{r.$name!==t&&r.$$parentForm.$$renameControl(r,t)});const c=t.$watch(e.ngModel,t=>{r.$$setModelValue(w(t)?t.$target:t)});t.$on("$destroy",()=>{r.$$parentForm.$removeControl(r),c()})},post:(t,n,e,i)=>{const r=i[0];r.$$setUpdateOnEvents(),n.addEventListener("blur",()=>{r.$touched||r.$setTouched()}),r.$viewChangeListeners.push(()=>t.$eval(n.dataset.change))}})}}const Ni=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,Ii=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,Di=/^(?=.{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])?)*$/,qi=/^\s*([-+])?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Vi=/^(\d{4,})-(\d{2})-(\d{2})$/,Ui=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Fi=/^(\d{4,})-W(\d\d)$/,Hi=/^(\d{4,})-(\d\d)$/,Li=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,zi="validity",Bi=new Map;"date,datetime-local,month,time,week".split(",").forEach(t=>{Bi.set(t,!0)});const Wi={text:function(t,n,e,i){Zi(0,n,e,i),Ji(i)},date:Yi("date",Vi,Gi(Vi,["yyyy","MM","dd"])),"datetime-local":Yi("datetimelocal",Ui,Gi(Ui,["yyyy","MM","dd","HH","mm","ss","sss"])),time:Yi("time",Li,Gi(Li,["HH","mm","ss","sss"])),week:Yi("week",Fi,function(t,n){if(P(t))return t;if(j(t)){Fi.lastIndex=0;const e=Fi.exec(t);if(e){const t=+e[1],i=+e[2];let r=0,s=0,o=0,c=0;const u=function(t){const n=new Date(t,0,1).getDay();return new Date(t,0,(n<=4?5:12)-n)}(t),a=7*(i-1);return n&&(r=n.getHours(),s=n.getMinutes(),o=n.getSeconds(),c=n.getMilliseconds()),new Date(t,0,u.getDate()+a,r,s,o,c)}}return NaN}),month:Yi("month",Hi,Gi(Hi,["yyyy","MM"])),number:function(t,n,e,i,r,s){let o;if(Xi(0,n,0,i,"number"),Qi(i),Zi(0,n,e,i),x(e.min)||e.ngMin){let n=e.min||s(e.ngMin)(t);o=tr(n),i.$validators.min=function(t,n){return i.$isEmpty(n)||S(o)||n>=o},e.$observe("min",t=>{t!==n&&(o=tr(t),n=t,i.$validate())})}if(x(e.max)||e.ngMax){let n=e.max||s(e.ngMax)(t),r=tr(n);i.$validators.max=function(t,n){return i.$isEmpty(n)||S(r)||n<=r},e.$observe("max",t=>{t!==n&&(r=tr(t),n=t,i.$validate())})}if(x(e.step)||e.ngStep){let n=e.step||s(e.ngStep)(t),r=tr(n);i.$validators.step=function(t,n){return i.$isEmpty(n)||S(r)||ir(n,o||0,r)},e.$observe("step",t=>{t!==n&&(r=tr(t),n=t,i.$validate())})}},url:function(t,n,e,i){Zi(0,n,e,i),Ji(i),i.$validators.url=function(t,n){const e=t||n;return i.$isEmpty(e)||Ii.test(e)}},email:function(t,n,e,i){Zi(0,n,e,i),Ji(i),i.$validators.email=function(t,n){const e=t||n;return i.$isEmpty(e)||Di.test(e)}},radio:function(t,n,e,i){const r=!e.ngTrim||"false"!==F(e.ngTrim);S(e.name)&&n.setAttribute("name",y()),n.addEventListener("change",function(t){if(n.checked){let{value:n}=e;r&&(n=F(n)),i.$setViewValue(n,t&&t.type)}}),i.$render=function(){let{value:t}=e;r&&(t=F(t));const s=w(i.$viewValue)?i.$viewValue.$target:i.$viewValue;n.checked=(w(t)?t.$target:t)===(w(s)?s.$target:s)},e.$observe("value",i.$render)},range:function(t,n,e,i){Xi(0,n,0,i,"range"),Qi(i),Zi(0,n,e,i);const r=i.$$hasNativeValidators&&"range"===n.type;let s=r?0:void 0,o=r?100:void 0,c=r?1:void 0;const{validity:u}=n,a=x(e.min),h=x(e.max),l=x(e.step),f=i.$render;function d(t,i){n.setAttribute(t,e[t]);let r=e[t];e.$observe(t,t=>{t!==r&&(r=t,i(t))})}i.$render=r&&x(u.rangeUnderflow)&&x(u.rangeOverflow)?function(){f(),i.$setViewValue(n.value)}:f,a&&(s=tr(e.min),i.$validators.min=r?function(){return!0}:function(t,n){return i.$isEmpty(n)||S(s)||n>=s},d("min",function(t){if(s=tr(t),!B(i.$modelValue))if(r){let t=n.value;s>t&&(t=s,n.value=t),i.$setViewValue(t)}else i.$validate()})),h&&(o=tr(e.max),i.$validators.max=r?function(){return!0}:function(t,n){return i.$isEmpty(n)||S(o)||n<=o},d("max",function(t){if(o=tr(t),!B(i.$modelValue))if(r){let t=n.value;o<t&&(n.value=o,t=o<s?s:o),i.$setViewValue(t)}else i.$validate()})),l&&(c=tr(e.step),i.$validators.step=r?function(){return!u.stepMismatch}:function(t,n){return i.$isEmpty(n)||S(c)||ir(n,s||0,c)},d("step",function(t){c=tr(t),B(i.$modelValue)||(r?i.$viewValue!==n.value&&i.$setViewValue(n.value):i.$validate())}))},checkbox:function(t,n,e,i,r,s){const o=rr(s,t,"ngTrueValue",e.ngTrueValue,!0),c=rr(s,t,"ngFalseValue",e.ngFalseValue,!1);n.addEventListener("change",function(t){i.$setViewValue(n.checked,t&&t.type)}),i.$render=function(){n.checked=i.$viewValue},i.$isEmpty=function(t){return!1===t},i.$formatters.push(t=>X(t,o)),i.$parsers.push(t=>t?o:c)},hidden:()=>{},button:()=>{},submit:()=>{},reset:()=>{},file:()=>{}};function Ji(t){t.$formatters.push(n=>t.$isEmpty(n)?n:n.toString())}function Zi(t,n,e,i){const r=n.type.toLowerCase();let s,o=!1;n.addEventListener("compositionstart",()=>{o=!0}),n.addEventListener("compositionend",()=>{o=!1,c()});const c=function(t){if(s&&(clearTimeout(s),s=null),o)return;let{value:c}=n;const u=t&&t.type;"password"===r||e.ngTrim&&"false"===e.ngTrim||(c=F(c)),(i.$viewValue!==c||""===c&&i.$$hasNativeValidators)&&i.$target.$setViewValue(c,u)};["input","change","paste","drop","cut"].forEach(t=>{n.addEventListener(t,c)}),Bi[r]&&i.$$hasNativeValidators&&r===e.type&&n.addEventListener("keydown wheel mousedown",t=>{if(!s){const n=this[zi],e=n.badInput,i=n.typeMismatch;s=setTimeout(()=>{s=null,n.badInput===e&&n.typeMismatch===i||c(t)})}}),i.$render=function(){const t=i.$isEmpty(i.$viewValue)?"":i.$viewValue;n.value!==t&&(n.value=t)}}function Gi(t,n){return function(e,i){let r,s;if(P(e))return e;if(j(e)){if('"'===e.charAt(0)&&'"'===e.charAt(e.length-1)&&(e=e.substring(1,e.length-1)),Ni.test(e))return new Date(e);if(t.lastIndex=0,r=t.exec(e),r){r.shift(),s=i?{yyyy:i.getFullYear(),MM:i.getMonth()+1,dd:i.getDate(),HH:i.getHours(),mm:i.getMinutes(),ss:i.getSeconds(),sss:i.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},Object.entries(r).forEach(([t,e])=>{t<n.length&&(s[n[t]]=+e)});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 Ki=/\b\d{4}-(0[1-9]|1[0-2])\b/;function Yi(t,n,e){return function(i,r,s,o,c,u){if(Xi(0,r,0,o,t),Zi(0,r,s,o),o.$parsers.push(e=>o.$isEmpty(e)?null:n.test(e)?["month","week","datetimelocal","time","date"].includes(t)?e:l(e,void 0):void(o.$$parserName=t)),o.$formatters.push(function(n){if(n&&!j(n))throw Mi("datefmt","Expected `{0}` to be a String",n);if("month"===t){if(T(n))return"";if(!Ki.test(n))throw Mi("datefmt","Expected month `{0}` to be a 'YYYY-DD'",n)}if("week"===t){if(T(n))return"";if(!Fi.test(n))throw Mi("datefmt","Expected week `{0}` to be a 'yyyy-Www'",n)}if("datetimelocal"===t){if(T(n))return"";if(!Ui.test(n))throw Mi("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",n)}return n}),x(s.min)||s.ngMin){let n=s.min||u(s.ngMin)(i),r=h(w(n)?n.$target:n);o.$validators.min=function(n){return"month"===t?S(r)||e(n)>=e(r):!a(n)||S(r)||e(n)>=r},s.$observe("min",t=>{t!==n&&(r=h(t),n=t,o.$validate())})}if(x(s.max)||s.ngMax){let n=s.max||u(s.ngMax)(i),r=h(w(n)?n.$target:n);o.$validators.max=function(n){return"month"===t?S(r)||e(n)<=e(r):!a(n)||S(r)||e(n)<=r},s.$observe("max",t=>{t!==n&&(r=h(t),n=t,o.$validate())})}function a(t){return t&&!(t.getTime&&Number.isNaN(t.getTime()))}function h(t){return x(t)&&!P(t)?l(t)||void 0:t}function l(t,n){const i=o.$options.getOption("timezone");let r=e(t,n);return!Number.isNaN(r)&&i&&(r=function(t,n){const e=t.getTimezoneOffset(),i=function(t,n){const e=Date.parse(`Jan 01, 1970 00:00:00 ${t}`)/6e4;return B(e)?n:e}(n,e);return function(t,n){const e=new Date(t.getTime());return e.setMinutes(e.getMinutes()+n),e}(t,1*(i-e))}(r,i)),r}}}function Xi(t,n,e,i,r){(i.$$hasNativeValidators=C(n.validity))&&i.$parsers.push(t=>{const e=n[zi]||{};if(!e.badInput&&!e.typeMismatch)return t;i.$$parserName=r})}function Qi(t){t.$parsers.push(n=>t.$isEmpty(n)?null:qi.test(n)?parseFloat(n):void(t.$$parserName="number")),t.$formatters.push(n=>{if(!t.$isEmpty(n)){if(!M(n))throw Mi("numfmt","Expected `{0}` to be a number",n);n=n.toString()}return n})}function tr(t){return x(t)&&!M(t)&&(t=parseFloat(t)),B(t)?void 0:t}function nr(t){return(0|t)===t}function er(t){const n=t.toString(),e=n.indexOf(".");if(-1===e){if(t>-1&&t<1){const t=/e-(\d+)$/.exec(n);if(t)return Number(t[1])}return 0}return n.length-e-1}function ir(t,n,e){let i=Number(t);const r=!nr(i),s=!nr(n),o=!nr(e);if(r||s||o){const t=r?er(i):0,c=s?er(n):0,u=o?er(e):0,a=10**Math.max(t,c,u);i*=a,n*=a,e*=a,r&&(i=Math.round(i)),s&&(n=Math.round(n)),o&&(e=Math.round(e))}return(i-n)%e===0}function rr(t,n,e,i,r){let s;if(x(i)){if(s=t(i),!s.constant)throw Mi("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",e,i);return s(n)}return r}function sr(t,n){return{restrict:"E",require:["?ngModel"],link:{pre(e,i,r,s){s[0]&&(Wi[r.type?.toLowerCase()]||Wi.text)(e,i,r,s[0],t,n)}}}}function or(){const t={configurable:!0,enumerable:!1,get(){return this.getAttribute("value")||""},set(t){this.setAttribute("value",t)}};return{restrict:"E",priority:200,compile(n,e){if("hidden"===e.type?.toLowerCase())return{pre(n,e){const i=e;i.parentNode&&i.parentNode.insertBefore(i,i.nextSibling),Object.defineProperty&&Object.defineProperty(i,"value",t)}}}}}sr.$inject=["$filter","$parse"];const cr=/^(true|false|\d+)$/;function ur(){function t(t,n,e){t.value=x(e)?w(e)?e.$target:e:null,n.$set("value",e)}return{restrict:"A",priority:100,compile:(n,e)=>cr.test(e.ngValue)?function(n,e,i){t(e,i,n.$eval(i.ngValue))}:function(n,e,i){n.$watch(i.ngValue,n=>{t(e,i,n)})}}}function ar(t){return{restrict:"E",terminal:!0,compile(n,e){"text/ng-template"===e.type&&t.set(e.id,n.innerText)}}}ar.$inject=["$templateCache"];class hr{static $nonscope=["ngModelCtrl","selectValueMap","emptyOption","optionsMap","$scope","$element"];static $inject=["$element","$scope"];constructor(t,n){this.$element=t,this.$scope=n,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,n.$on("$destroy",()=>{this.renderUnknownOption=()=>{}})}renderUnknownOption(t){const n=this.generateUnknownOptionValue(t);this.unknownOption.value=n,this.$element.prepend(this.unknownOption),this.unknownOption.selected=!0,this.unknownOption.setAttribute("selected","selected"),this.$element.value=n}updateUnknownOption(t){const n=this.generateUnknownOptionValue(t);this.unknownOption.value=n,this.unknownOption.selected=!0,this.unknownOption.setAttribute("selected","selected"),this.$element.value=n}generateUnknownOptionValue(t){return S(t)?"? undefined:undefined ?":`? ${vt(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,n=t in this.selectValueMap?this.selectValueMap[t]:t;return this.hasOption(n)?n:null}writeValue(t){const n=this.$element.options[this.$element.selectedIndex];if(n&&(n.selected=!1),this.hasOption(t)){this.removeUnknownOption();const n=vt(t);this.$element.value=n in this.selectValueMap?n:t;const e=this.$element.options[this.$element.selectedIndex];e?e.selected=!0:this.selectUnknownOrEmptyOption(t)}else this.selectUnknownOrEmptyOption(t)}addOption(t,n){if(n.nodeType===m)return;Q(t,'"option value"'),""===t&&(this.hasEmptyOption=!0,this.emptyOption=n);const e=this.optionsMap.get(t)||0;this.optionsMap.set(t,e+1),this.scheduleRender()}removeOption(t){const n=this.optionsMap.get(t);n&&(1===n?(this.optionsMap.delete(t),""===t&&(this.hasEmptyOption=!1,this.emptyOption=void 0)):this.optionsMap.set(t,n-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){T(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,n,e,i,r){let s,o;e.$attr.ngValue?e.$observe("value",t=>{let e;const i=n.selected;x(o)&&(this.removeOption(s),delete this.selectValueMap[o],e=!0),o=vt(t),s=t,this.selectValueMap[o]=t,this.addOption(t,n),n.setAttribute("value",o),e&&i&&this.scheduleViewValueUpdate()}):i?e.$observe("value",t=>{let e;this.readValue();const i=n.selected;x(s)&&(this.removeOption(s),e=!0),s=t,this.addOption(t,n),e&&i&&this.scheduleViewValueUpdate()}):r?(t.value=r(t),e.value||(e.$set("value",t.value),this.addOption(t.value,n)),t.$watch("value",()=>{const i=r(t);e.value||e.$set("value",i);const o=n.selected;s!==i&&(this.removeOption(s),s=i),this.addOption(i,n),s&&o&&this.scheduleViewValueUpdate()})):this.addOption(e.value,n),e.$observe("disabled",t=>{("true"===t||t&&n.selected)&&(this.multiple?this.scheduleViewValueUpdate(!0):(this.ngModelCtrl.$setViewValue(null),this.ngModelCtrl.$render()))}),n.addEventListener("$destroy",()=>{const t=this.readValue(),n=e.value;this.removeOption(n),this.scheduleRender(),(this.multiple&&t&&-1!==t.indexOf(n)||t===n)&&this.scheduleViewValueUpdate(!0)})}}function lr(){return{restrict:"E",require:["select","?ngModel"],controller:hr,priority:1,link:{pre:function(t,n,e,i){const r=i[0],s=i[1];if(s){if(r.ngModelCtrl=s,n.addEventListener("change",()=>{r.removeUnknownOption();const t=r.readValue();s.$setViewValue(t)}),e.multiple){let t;r.multiple=!0,r.readValue=function(){const t=[],e=n.getElementsByTagName("option");return Array.from(e).forEach(n=>{if(n.selected&&!n.disabled){const e=n.value;t.push(e in r.selectValueMap?r.selectValueMap[e]:e)}}),t},r.writeValue=function(t){const e=n.getElementsByTagName("option");Array.from(e).forEach(n=>{const e=!!t&&(G(t,n.value)||G(t,r.selectValueMap[n.value]));e!==n.selected&&(n.selected=e)})};let e=NaN;e!==s.$viewValue||X(t,s.$viewValue)||(t=ft(s.$viewValue),s.$render()),e=s.$viewValue,s.$isEmpty=function(t){return!t||0===t.length}}}else r.registerOption=()=>{}},post:function(t,n,e,i){const r=i[1];if(!r)return;const s=i[0];r.$render=function(){s.writeValue(r.$viewValue)}}}}}function fr(t){return{restrict:"E",priority:100,compile(n,e){let i,r;return x(e.ngValue)||(x(e.value)?i=t(e.value,!0):(r=t(n.textContent,!0),r||e.$set("value",n.textContent))),function(t,n,e){const s="$selectController",o=n.parentElement,c=xn(o,s)||xn(o.parentElement,s);c&&c.registerOption(t,n,e,i,r)}}}}function dr(){return{link(t,n,e){t.$watch(e.ngBind,t=>{n.textContent=tt(w(t)?t.$target:t)},x(e.lazy))}}}function $r(){return{link(t,n,e){e.$observe("ngBindTemplate",t=>{n.textContent=S(t)?"":t})}}}function mr(t){return{restrict:"A",compile:(n,e)=>(t(e.ngBindHtml),(t,n)=>{t.$watch(e.ngBindHtml,t=>{(S(t)||A(t))&&(t=""),n.innerHTML=t})})}}function pr(t,n){return t=`ngClass${t}`,function(){return{link(e,i,r){let s,o=xn(i,"$classCounts"),c=!0;function u(t,n){const e=[];return t&&t.forEach(t=>{(n>0||o[t])&&(o[t]=(o[t]||0)+n,o[t]===+(n>0)&&e.push(t))}),e.join(" ")}o||(o=Object.create(null),Sn(i,"$classCounts",o)),"ngClass"!==t&&e.$watch("$index",()=>{var t,o;(t=1&e.$index)===n?(o=u(wr(o=s),1),Et(i)?r.$addClass(o):e.$postUpdate(()=>{""!==o&&i.classList.add(...o.trim().split(" "))})):function(t){t=u(wr(t),-1),Et(i)?r.$removeClass(t):e.$postUpdate(()=>{""!==t&&i.classList.remove(...t.trim().split(" "))})}(s),c=t}),e.$watch(r[t],t=>{var e;e=vr(t),c===n&&function(t,n){const e=wr(t),s=wr(n),o=gr(e,s),c=gr(s,e),a=u(o,-1),h=u(c,1);Et(i)?(r.$addClass(h),r.$removeClass(a)):(""!==h&&i.classList.add(...h.trim().split(" ")),""!==a&&i.classList.remove(...a.trim().split(" ")))}(s,e),s=e})}}}}function gr(t,n){if(!t||!t.length)return[];if(!n||!n.length)return t;const e=[];t:for(let i=0;i<t.length;i++){const r=t[i];for(let t=0;t<n.length;t++)if(r===n[t])continue t;e.push(r)}return e}function wr(t){return t&&t.split(" ")}function vr(t){if(!t)return t;let n=t;return O(t)?n=t.map(vr).join(" "):C(t)?n=Ot(t).filter(n=>t[n]).join(" "):j(t)||(n=`${t}`),n}fr.$inject=["$interpolate"],mr.$inject=[Ln.$parse];const br=pr("",!0),yr=pr("Odd",0),kr=pr("Even",1);function Er(){return{compile(t,n){n.$set("ngCloak",void 0)}}}function Sr(){return{restrict:"A",scope:!0,controller:"@",priority:500}}const xr="ng-hide",Or="ng-hide-animate";function Cr(t){return{restrict:"A",link(n,e,i){n.$watch(i.ngShow,n=>{Et(e)?t[n?"removeClass":"addClass"](e,xr,{tempClasses:Or}):n?e.classList.remove(xr):e.classList.add(xr)})}}}function jr(t){return{restrict:"A",link(n,e,i){n.$watch(i.ngHide,n=>{Et(e)?t[n?"addClass":"removeClass"](e,xr,{tempClasses:Or}):n?e.classList.add(xr):e.classList.remove(xr)})}}}function Ar(t){return{transclude:"element",priority:600,terminal:!0,restrict:"A",link(n,e,i,r,s){let o,c,u;n.$watch(i.ngIf,n=>{n?c||s((n,i)=>{c=i,o=n,Et(n)?t.enter(n,e.parentElement,e):e.after(n)}):(u&&(Rn(u),u=null),c&&(c.$destroy(),c=null),o&&(u=o,Et(u)?t.leave(u).done(t=>{!1!==t&&(u=null)}):e.nextElementSibling.remove(),o=null))})}}}function Tr(t,n,e,i){return{priority:400,terminal:!0,transclude:"element",controller:()=>{},compile(r,s){const o=s.ngInclude||s.src,c=s.onload||"",u=s.autoscroll;return(r,s,a,h,l)=>{function f(){!x(u)||u&&!r.$eval(u)||n()}let d,$,m,p=0;const g=()=>{$&&($.remove(),$=null),d&&(d.$destroy(),d=null),m&&(Et(m)?e.leave(m).done(t=>{!1!==t&&($=null)}):m.remove(),$=m,m=null)};r.$watch(o,async n=>{const o=function(t){!1!==t&&f()},u=++p;n?(await t(n,!0).then(t=>{if(r.$$destroyed)return;if(u!==p)return;const i=r.$new();h.template=t;const a=l(i,t=>{g(),Et(t)?e.enter(t,null,s).done(o):(s.after(t),f())});d=i,m=a,d.$emit("$includeContentLoaded",n),r.$eval(c)},t=>{r.$$destroyed||(u===p&&(g(),r.$emit("$includeContentError",n)),i(new Error(t)))}),r.$emit("$includeContentRequested",n)):(g(),h.template=null)})}}}}function Rr(t){return{priority:-400,require:"ngInclude",link(n,e,i,r){e.innerHTML=r.template,t(e.childNodes)(n)}}}function Mr(){return{priority:450,compile:()=>({pre(t,n,e){const i=An(n);i?i.$eval(e.ngInit):t.$eval(e.ngInit)}})}}function Pr(){return{terminal:!0,priority:1e3}}Cr.$inject=["$animate"],jr.$inject=["$animate"],Ar.$inject=["$animate"],Tr.$inject=[Ln.$templateRequest,Ln.$anchorScroll,Ln.$animate,Ln.$exceptionHandler],Rr.$inject=[Ln.$compile];const _r=wt("ngRef");function Nr(t){return{priority:-1,restrict:"A",compile(n,e){const i=kt(Z(n)),r=t(e.ngRef),s=r.assign||function(){throw _r("nonassign",'Expression in ngRef="{0}" is non-assignable!',e.ngRef)};return(t,n,o)=>{let c;if(xt(o,"ngRefRead")){if("$element"===o.ngRefRead)c=n;else if(c=xn(n,`$${o.ngRefRead}Controller`),!c)throw _r("noctrl",'The controller for ngRefRead="{0}" could not be found on ngRef="{1}"',o.ngRefRead,e.ngRef)}else c=xn(n,`$${i}Controller`);c=c||n,s(t,c),n.addEventListener("$destroy",()=>{r(t)===c&&s(t,null)})}}}}Nr.$inject=["$parse"];const Ir="$$NG_REMOVED",Dr=wt("ngRepeat"),qr=/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/;function Vr(t){function n(t,n,e,i,r,s,o){t[e]!==i&&(t[e]=i),r&&(t[r]=s),i&&(t.$target.$$hashKey=i.$$hashKey),t.$index=n,t.$first=0===n,t.$last=n===o-1,t.$middle=!(t.$first||t.$last),t.$odd=!(t.$even=!(1&n))}function e(t){return t.clone}function i(t){return t.clone}function r(t,n,e){return vt(e)}function s(t,n){return n}return{restrict:"A",transclude:"element",priority:1e3,terminal:!0,compile:(o,c)=>{const u=c.ngRepeat,a=!!c.animate;let h=u.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);if(!h)throw Dr("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",u);const l=h[1],f=h[2],d=h[3];if(h=l.match(qr),!h)throw Dr("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",l);const $=h[3]||h[1],m=h[2];if(d&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(d)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(d)))throw Dr("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",d);const p=function(){let t=!1;return(...n)=>{if(!t)return t=!0,(()=>{x(c.lazy)&&x(c.swap)&&document.querySelectorAll(c.swap).forEach(t=>Rn(t))})(...n)}}();return function(o,c,h,l,g){let w=Object.create(null);o.$watch(f,h=>{p();let l,f,v=c;const b=Object.create(null);let y,k,S,x,O,C,j;if(d&&(o[d]=h),E(h))O=h,x=r;else{x=s,O=[];for(const t in h)xt(h,t)&&"$"!==t.charAt(0)&&O.push(t)}const A=O.length,T=new Array(A);for(l=0;l<A;l++)if(y=h===O?l:O[l],k=h[y],S=x(o,y,k),w[S])C=w[S],delete w[S],b[S]=C,T[l]=C;else{if(b[S])throw Object.values(T).forEach(t=>{t&&t.scope&&(w[t.id]=C)}),Dr("dupes","Duplicates keys in a repeater are not allowed. Repeater: {0}, Duplicate key: {1} for value: {2}",u,S,k);T[l]={id:S,scope:void 0,clone:void 0},b[S]=!0}for(const n in w){if(C=w[n],j=C.clone,a?t.leave(j):j.remove(),j.parentNode)for(let t=0,n=j.length;t<n;t++)j[t][Ir]=!0;C.scope.$destroy()}for(l=0;l<A;l++)if(y=h===O?l:O[l],k=h[y],C=T[l],C.scope){f=v;do{f=f.nextSibling}while(f&&f[Ir]);e(C)!==f&&t.move(Pn(C.clone),null,v),v=i(C),n(C.scope,l,$,k,m,y,A)}else g((e,i)=>{C.scope=i;const r=e;a?t.enter(e,null,v):v.after(e),v=r,C.clone=e,b[C.id]=C,n(C.scope,l,$,k,m,y,A)});w=b},x(h.lazy))}}}}function Ur(){return{restrict:"A",link(t,n,e){let i=null;t.$watch(e.ngStyle,t=>{const e=t?.$target||t;if(i)for(const t in i)n.style.removeProperty(t);if(e){i={};for(const t in e){const r=e[t];n.style.setProperty(t,r),i[t]=r}}else i=null})}}}function Fr(t){return{require:"ngSwitch",controller:["$scope",class{constructor(){this.cases={}}}],link(n,e,i,r){const s=i.ngSwitch||i.on;let o=[];const c=[],u=[],a=[],h=function(t,n){return function(e){!1!==e&&t.splice(n,1)}};n.$watch(s,n=>{let e,i;for(;u.length;)t.cancel(u.pop());for(e=0,i=a.length;e<i;++e){const n=Pn(c[e].clone);a[e].$destroy(),Et(n)?(u[e]=t.leave(n)).done(h(u,e)):n.remove()}c.length=0,a.length=0,(o=r.cases[`!${n}`]||r.cases["?"])&&Object.values(o).forEach(n=>{n.transclude((e,i)=>{a.push(i);const r=n.element,s={clone:e,comment:document.createComment("")};c.push(s),Et(e)?t.enter(e,r.parentElement,r):Un(e,r.parentElement,r)})})})}}}function Hr(){return{transclude:"element",terminal:!0,priority:1200,require:"^ngSwitch",link(t,n,e,i,r){e.ngSwitchWhen.split(e.ngSwitchWhenSeparator).sort().filter((t,n,e)=>e[n-1]!==t).forEach(t=>{i.cases[`!${t}`]=i.cases[`!${t}`]||[],i.cases[`!${t}`].push({transclude:r,element:n})})}}}function Lr(){return{transclude:"element",terminal:!0,priority:1200,require:"^ngSwitch",link(t,n,e,i,r){i.cases["?"]=i.cases["?"]||[],i.cases["?"].push({transclude:r,element:n})}}}Vr.$inject=[Ln.$animate],Fr.$inject=["$animate"];const zr=wt("ngOptions"),Br=document.createElement("option"),Wr=document.createElement("optgroup"),Jr=/^\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]+?))?$/;function Zr(t,n){return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(t,n,e,i){i[0].registerOption=()=>{}},post:function(e,i,r,s){const o=s[0],c=s[1],{multiple:u}=r;for(let t=0,n=i.childNodes,e=n.length;t<e;t++)if(""===n[t].value){o.hasEmptyOption=!0,o.emptyOption=n[t];break}Vn(i);const a=!!o.emptyOption;let h;Br.cloneNode(!1).nodeValue="?";const l=function(t,e,i){const r=t.match(Jr);if(!r)throw zr("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",t,Mn(e));const s=r[5]||r[7],o=r[6],c=/ as /.test(r[0])&&r[1],u=r[9],a=n(r[2]?r[1]:s),h=c&&n(c)||a,l=u&&n(u),f=u?function(t,n){return l(i,n)}:function(t){return vt(t)},d=function(t,n){return f(t,v(t,n))},$=n(r[2]||r[1]),m=n(r[3]||""),p=n(r[4]||""),g=n(r[8]),w={},v=o?function(t,n){return w[o]=n,w[s]=t,w}:function(t){return w[s]=t,w};class b{constructor(t,n,e,i,r){this.selectValue=t,this.viewValue=n,this.label=e,this.group=i,this.disabled=r}}function y(t){let n;if(!o&&E(t))n=t;else{n=[];for(const e in t)xt(t,e)&&"$"!==e.charAt(0)&&n.push(e)}return n}return{trackBy:u,getTrackByValue:d,getWatchables:n(g,t=>{const n=[],e=y(t=t||[]),s=e.length;for(let o=0;o<s;o++){const s=t===e?o:e[o],c=t[s],u=v(c,s),a=f(c,u);if(n.push(a),r[2]||r[1]){const t=$(i,u);n.push(t)}if(r[4]){const t=p(i,u);n.push(t)}}return n}),getOptions(){const t=[],n={},e=g(i)||[],r=y(e),s=r.length;for(let o=0;o<s;o++){const s=e===r?o:r[o],c=e[s],u=v(c,s),a=h(i,u),l=f(a,u),d=$(i,u),g=m(i,u),w=p(i,u),y=new b(l,a,d,g,w);t.push(y),n[l]=y}return{items:t,selectValueMap:n,getOptionFromViewValue:t=>n[d(t)],getViewValueFromOption:t=>u?structuredClone(t.viewValue):t.viewValue}}}}(r.ngOptions,i,e),f=document.createDocumentFragment();if(o.generateUnknownOptionValue=()=>"?",u?(o.writeValue=function(t){if(!h)return;const n=t&&t.map($)||[];h.items.forEach(t=>{t.element.selected&&!G(n,t)&&(t.element.selected=!1)})},o.readValue=function(){const t=i.value||[],n=[];return t.forEach(t=>{const e=h.selectValueMap[t];e&&!e.disabled&&n.push(h.getViewValueFromOption(e))}),n}):(o.writeValue=function(t){if(!h)return;const n=i.options[i.selectedIndex],e=h.getOptionFromViewValue(t);n&&n.removeAttribute("selected"),e?(i.value!==e.selectValue&&(o.removeUnknownOption(),i.value=e.selectValue,e.element.selected=!0),e.element.setAttribute("selected","selected")):o.selectUnknownOrEmptyOption(t)},o.readValue=function(){const t=h.selectValueMap[i.value];return t&&!t.disabled?(o.unselectEmptyOption(),o.removeUnknownOption(),h.getViewValueFromOption(t)):null},l.trackBy&&e.$watch(l.getTrackByValue(c.$viewValue),()=>{c.$render()})),a){const n=t(o.emptyOption);i.prepend(o.emptyOption),n(e),o.emptyOption.nodeType===m&&(o.hasEmptyOption=!1,o.registerOption=function(t,n){""===n.value&&(o.hasEmptyOption=!0,o.emptyOption=n,c.$render(),n.addEventListener("$destroy",()=>{const t=o.$isEmptyOptionSelected();o.hasEmptyOption=!1,o.emptyOption=void 0,t&&c.$render()}))})}function d(t,n){const e=Br.cloneNode(!1);n.appendChild(e),function(t,n){t.element=n,n.disabled=t.disabled,t.label!==n.label&&(n.label=t.label,n.textContent=t.label),n.value=t.selectValue}(t,e)}function $(t){const n=h.getOptionFromViewValue(t),e=n&&n.element;return e&&!e.selected&&(e.selected=!0),n}e.$watch(l.getWatchables.decoratedNode.body[0].expression.name,function(){const t=h&&o.readValue();if(h)for(let t=h.items.length-1;t>=0;t--){const n=h.items[t];x(n.group)?Rn(n.element.parentNode):Rn(n.element)}h=l.getOptions();const n={};if(h.items.forEach(t=>{let e;x(t.group)?(e=n[t.group],e||(e=Wr.cloneNode(!1),f.appendChild(e),e.label=null===t.group?"null":t.group,n[t.group]=e),d(t,e)):d(t,f)}),i.appendChild(f),c.$render(),!c.$isEmpty(t)){const n=o.readValue();(l.trackBy||u?X(t,n):t===n)||(c.$setViewValue(n),c.$render())}})}}}}Zr.$inject=["$compile","$parse"];const Gr=wt("ngTransclude");function Kr(t){return{compile:function(n){const e=t(n.childNodes);return Vn(n),function(t,n,i,r,s){if(!s)throw Gr("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",Mn(n));i.ngTransclude===i.$attr.ngTransclude&&(i.ngTransclude="");const o=i.ngTransclude||i.ngTranscludeSlot;function c(){e(t,t=>{n.append(t)})}s(function(t,e){var i;(i=t)instanceof Array||i.nodeType===$&&!i.nodeValue.trim()?(c(),e.$destroy()):t instanceof NodeList?Array.from(t).forEach(t=>{n.append(t)}):n.append(t)},null,o),o&&!s.isSlotFilled(o)&&c()}}}}Kr.$inject=["$compile"];const Yr=/^\/(.+)\/([a-z]*)$/,Xr={};dn.forEach(t=>{if("multiple"===t)return;function n(n,i,r){n.$watch(r[e],n=>{r.$set(t,!!n)})}const e=kt(`ng-${t}`);let i=n;"checked"===t&&(i=function(t,i,r){r.ngModel!==r[e]&&n(t,0,r)}),Xr[e]=function(){return{restrict:"A",priority:100,link:i}}}),Ct(l).forEach(([t])=>{Xr[t]=function(){return{priority:100,link(n,e,i){if("ngPattern"===t&&"/"===i.ngPattern.charAt(0)){const t=i.ngPattern.match(Yr);if(t)return void i.$set("ngPattern",new RegExp(t[1],t[2]).toString())}n.$watch(i[t],n=>{i.$set(t,n)})}}}}),["src","srcset","href"].forEach(t=>{const n=kt(`ng-${t}`);Xr[n]=[Ln.$sce,function(e){return{priority:99,link(i,r,s){let o=t;"href"===t&&"[object SVGAnimatedString]"===toString.call(r.href)&&(o="xlinkHref",s.$attr[o]="href"),s.$set(n,e.getTrustedMediaUrl(s[n])),s.$observe(n,n=>{n?s.$set(o,n):"href"===t&&s.$set(o,null)})}}}]});const Qr=[Ln.$parse,t=>({restrict:"A",require:"?ngModel",link:(n,e,i,r)=>{if(!r)return;let s=xt(i,"required")||t(i.ngRequired)(n);i.ngRequired||(i.required=!0),r.$validators.required=(t,n)=>!s||!r.$isEmpty(n),i.$observe("required",t=>{s!==t&&(s=t,r.$validate())})}})],ts=[Ln.$parse,t=>({restrict:"A",require:"?ngModel",compile:(n,e)=>{let i,r;return e.ngPattern&&(i=e.ngPattern,r="/"===e.ngPattern.charAt(0)&&Yr.test(e.ngPattern)?function(){return e.ngPattern}:t(e.ngPattern)),function(t,n,e,s){if(!s)return;let o=e.pattern;e.ngPattern?o=r(t):i=e.pattern;let c=is(o,i,n);e.$observe("pattern",t=>{const e=c;c=is(t,i,n),(e&&e.toString())!==(c&&c.toString())&&s.$validate()}),s.$validators.pattern=(t,n)=>s.$isEmpty(n)||S(c)||c.test(n)}}})],ns=[Ln.$parse,t=>({restrict:"A",require:"?ngModel",link:(n,e,i,r)=>{if(!r)return;let s=i.maxlength||t(i.ngMaxlength)(n),o=rs(s);i.$observe("maxlength",t=>{s!==t&&(o=rs(t),s=t,r.$validate())}),r.$validators.maxlength=function(t,n){return o<0||r.$isEmpty(n)||n.length<=o}}})],es=[Ln.$parse,t=>({restrict:"A",require:"?ngModel",link(n,e,i,r){if(!r)return;let s=i.minlength||t(i.ngMinlength)(n),o=rs(s)||-1;i.$observe("minlength",t=>{s!==t&&(o=rs(t)||-1,s=t,r.$validate())}),r.$validators.minlength=function(t,n){return r.$isEmpty(n)||n.length>=o}}})];function is(t,n,e){if(t){if(w(t)&&(t=t.$target),j(t)){const n=t.match(/^\/(.*)\/([gimsuy]*)$/);t=n?new RegExp(n[1],n[2]):new RegExp(`^${t}$`)}if(!t.test)throw wt("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",n,t,Mn(e));return t}}function rs(t){const n=parseInt(t,10);return B(n)?-1:n}class ss{constructor(){this.autoScrollingEnabled=!0}$get=[Ln.$location,Ln.$rootScope,(t,n)=>{function e(t){if(t){t.scrollIntoView();const n=function(){let t=i.yOffset;if(N(t))t=t();else if(t instanceof Element){const n=t[0];t="fixed"!==window.getComputedStyle(n).position?0:n.getBoundingClientRect().bottom}else M(t)||(t=0);return t}();if(n){const e=t.getBoundingClientRect().top;window.scrollBy(0,e-n)}}else window.scrollTo(0,0)}const i=function(n){let i;(n=j(n)?n:M(n)?n.toString():t.getHash())?(i=document.getElementById(n))||(i=function(t){let n=null;return Array.prototype.some.call(t,t=>"a"===Z(t)&&(n=t,!0)),n}(document.getElementsByName(n)))?e(i):"top"===n&&e(null):e(null)};return this.autoScrollingEnabled&&(n.$location=t,n.$watch("$location.$$hash",(t,n)=>{if(t===n&&""===t)return;const e=()=>i(t);"complete"===document.readyState?queueMicrotask(()=>e()):window.addEventListener("load",()=>e())})),i}]}const os=wt("$animate");function cs(t){return C(t)?t:{}}function us(t){const n=this;let e=null,i=null;this.$$registeredAnimations=Object.create(null),this.register=function(e,i){if(e&&"."!==e.charAt(0))throw os("notcsel","Expecting class selector starting with '.' got '{0}'.",e);const r=`${e}-animation`;n.$$registeredAnimations[e.substring(1)]=r,t.factory(r,i)},this.customFilter=function(t){return 1===arguments.length&&(i=N(t)?t:null),i},this.classNameFilter=function(t){if(1===arguments.length&&(e=t instanceof RegExp?t:null,e)&&new RegExp(`[(\\s|\\/)]${qt}[(\\s|\\/)]`).test(e.toString()))throw e=null,os("nongcls",'$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.',qt);return e},this.$get=[Ln.$$animateQueue,function(t){return{on:t.on,off:t.off,pin:t.pin,enabled:(t,n)=>void 0!==n?Et(t):(t.setAttribute("animate",`${n}`),!0),cancel(t){t.cancel&&t.cancel()},enter:(n,e,i,r)=>(Fn(n,e=e||i.parentElement,i),t.push(n,"enter",cs(r))),move:(n,e,i,r)=>(Fn(n,e=e||i.parentElement,i),t.push(n,"move",cs(r))),leave:(n,e)=>t.push(n,"leave",cs(e),()=>{Rn(n)}),addClass:(n,e,i)=>((i=cs(i)).addClass=bt(i.addClass,e),t.push(n,"addClass",i)),removeClass:(n,e,i)=>((i=cs(i)).removeClass=bt(i.removeClass,e),t.push(n,"removeClass",i)),setClass:(n,e,i,r)=>((r=cs(r)).addClass=bt(r.addClass,e),r.removeClass=bt(r.removeClass,i),t.push(n,"setClass",r)),animate:(n,e,i,r,s)=>((s=cs(s)).from=s.from?z(s.from,e):e,s.to=s.to?z(s.to,i):i,r=r||"ng-inline-animate",s.tempClasses=bt(s.tempClasses,r),t.push(n,"animate",s))}}]}us.$inject=["$provide"];class as{constructor(){this.cache=new Map}$get(){return this.cache}}class hs{constructor(){this.handler=t=>{throw t}}$get(){return t=>this.handler(t)}}function ls(){return function(t,n,e,i){if(!E(t)){if(T(t))return t;throw wt("filter")("notarray","Expected array but received: {0}",t)}let r;i=i||"$";let s=!1;switch(ds(n)){case"function":r=n;break;case"boolean":case"null":case"number":case"string":s=!0;case"object":r=function(t,n,e,i){const r=C(t)&&e in t;return!0===n?n=X:N(n)||(n=function(t,n){return!(S(t)||(null===t||null===n?t!==n:C(n)||C(t)&&!J(t)||(t=`${t}`.toLowerCase(),n=`${n}`.toLowerCase(),-1===t.indexOf(n))))}),function(s){return r&&!C(s)?fs(s,t[e],n,e,!1):fs(s,t,n,e,i)}}(n,e,i,s);break;default:return t}return Array.prototype.filter.call(t,r)}}function fs(t,n,e,i,r,s){const o=ds(t),c=ds(n);if("string"===c&&"!"===n.charAt(0))return!fs(t,n.substring(1),e,i,r);if(O(t))return t.some(t=>fs(t,n,e,i,r));switch(o){case"object":if(r){for(const r in t)if(r.charAt&&"$"!==r.charAt(0)&&fs(t[r],n,e,i,!0))return!0;return!s&&fs(t,n,e,i,!1)}if("object"===c){for(const r in n){const s=n[r];if(N(s)||S(s))continue;const o=r===i;if(!fs(o?t:t[r],s,e,i,o,o))return!1}return!0}return e(t,n);case"function":return!1;default:return e(t,n)}}function ds(t){return null===t?"null":typeof t}function $s(){return function(t,n){return S(n)&&(n=2),st(t,n)}}function ms(){return function(t,n,e){return N(t)&&(t=t()),B(n=Math.abs(Number(n))===1/0?Number(n):parseInt(n,10))?t:(M(t)&&(t=t.toString()),E(t)?(e=(e=!e||isNaN(e)?0:parseInt(e,10))<0?Math.max(0,t.length+e):e,n>=0?ps(t,e,e+n):0===e?ps(t,n,t.length):ps(t,Math.max(0,e+n),e)):t)}}function ps(t,n,e){return j(t)?t.slice(n,e):[].slice.call(t,n,e)}function gs(t){return function(i,r,s,o){if(T(i))return i;if(N(i))return i();if(!E(i))throw wt("orderBy")("notarray","Expected array but received: {0}",i);O(r)||(r=[r]),0===r.length&&(r=["+"]);const c=r.map(n=>{let e=1,i=t=>t;if(N(n))i=n;else if(j(n)&&("+"!==n.charAt(0)&&"-"!==n.charAt(0)||(e="-"===n.charAt(0)?-1:1,n=n.substring(1)),""!==n)){const e=t(n);if(e.constant){const t=e();i=n=>n[t]}else i=e}return{get:i,descending:e}}),u=s?-1:1,a=N(o)?o:e,h=Array.prototype.map.call(i,function(t,e){return{value:t,tieBreaker:{value:e,type:"number",index:e},predicateValues:c.map(i=>function(t,e){let i=typeof t;return null===t?i="null":"object"===i&&(t=function(t){return N(t.valueOf)&&n(t=t.valueOf())||J(t)&&n(t=t.toString()),t}(t)),{value:t,type:i,index:e}}(i.get(t),e))}});return h.sort(function(t,n){for(let e=0,i=c.length;e<i;e++){const i=a(t.predicateValues[e],n.predicateValues[e]);if(i)return i*c[e].descending*u}return(a(t.tieBreaker,n.tieBreaker)||e(t.tieBreaker,n.tieBreaker))*u}),h.map(t=>t.value)};function n(t){switch(typeof t){case"number":case"boolean":case"string":return!0;default:return!1}}function e(t,n){let e=0;const i=t.type,r=n.type;if(i===r){let r=t.value,s=n.value;"string"===i?(r=r.toLowerCase(),s=s.toLowerCase()):"object"===i&&(C(r)&&(r=t.index),C(s)&&(s=n.index)),r!==s&&(e=r<s?-1:1)}else e="undefined"===i?1:"undefined"===r?-1:"null"===i?1:"null"===r||i<r?-1:1;return e}}function ws(t){const n=(n,e,i)=>t.is(n,e,i);return n.$stateful=!0,n}function vs(t){const n=function(n,e,i){return t.includes(n,e,i)};return n.$stateful=!0,n}gs.$inject=[Ln.$parse],ws.$inject=[Ln.$state],vs.$inject=[Ln.$state];const bs="Filter";class ys{static $inject=[Ln.$provide];constructor(t){dt(x(t)),this.I=t,Ct({filter:ls,json:$s,limitTo:ms,orderBy:gs,isState:ws,includedByState:vs}).forEach(([t,n])=>this.register(t,n))}register(t,n){return le(t,"name"),ae(N,n,"factory"),this.I.factory(t+bs,n),this}$get=[Ln.$injector,t=>n=>(le(n,"name"),t.get(n+bs))]}class ks{constructor(t){this.$filter=t}compile(t){const n=Es(t,this.$filter);let e,i;(e=function(t){if(1===t.body.length&&Ss(t.body[0].expression))return{type:3,left:t.body[0].expression,right:{type:17},operator:"="}}(n))&&(i=this.#t(e));const r=function(t){if(1!==t.length)return;const n=t[0].expression,e=n.toWatch;return 1!==e.length||e[0]!==n?e:void 0}(n.body);let s;if(r){s=[];for(const[t,n]of Ct(r)){const e=this.#t(n);e.isPure=n.isPure,n.input=e,s.push(e),n.watchId=t}}const o=[];n.body.forEach(t=>{o.push(this.#t(t.expression))});const c=0===n.body.length?()=>{}:1===n.body.length?o[0]:function(t,n){let e;return o.forEach(i=>{e=i(t,n)}),e};return i&&(c.assign=(t,n,e)=>i(t,e,n)),s&&(c.inputs=s),c.decoratedNode=n,c}#t(t,n,e){let i,r;const s=this;let o;switch(t.type){case _t:return this.value(t.value,n);case 7:return r=this.#t(t.argument),this[`unary${t.operator}`](r,n);case 6:case 5:return i=this.#t(t.left),r=this.#t(t.right),this[`binary${t.operator}`](i,r,n);case 4:return this["ternary?:"](this.#t(t.test),this.#t(t.alternate),this.#t(t.consequent),n);case Pt:return s.identifier(t.name,n,e);case 9:return i=this.#t(t.object,!1,!!e),t.computed||(r=t.property.name),t.computed&&(r=this.#t(t.property)),t.computed?this.#n(i,r,n,e):this.nonComputedMember(i,r,n,e);case 8:return o=[],t.arguments.forEach(t=>{o.push(s.#t(t))}),t.filter&&(r=this.$filter(t.callee.name)),t.filter||(r=this.#t(t.callee,!0)),t.filter?(t,e,i)=>{const s=[];for(let n=0;n<o.length;++n){const r=o[n](t&&t.$target?t.$target:t,e,i);s.push(r)}const c=()=>r.apply(void 0,s);return n?{context:void 0,name:void 0,value:c}:c}:(t,e,i)=>{const s=r(t.$target?t.$target:t,e,i);let c;if(!T(s.value)&&N(s.value)){const n=[];for(let r=0;r<o.length;++r){const s=o[r](t,e,i);n.push(N(s)?s():s)}c=s.value.apply(s.context,n)}return n?{value:c}:c};case 3:return i=this.#t(t.left,!0,1),r=this.#t(t.right),(t,e,s)=>{const o=i(t,e,s),c=r(t,e,s);return(w(o.context)?o.context:o.context.$proxy??o.context)[o.name]=c,n?{value:c}:c};case 12:return o=[],t.elements.forEach(t=>{o.push(s.#t(t))}),(t,e,i)=>{const r=[];for(let n=0;n<o.length;++n)r.push(o[n](t,e,i));return n?{value:r}:r};case 14:return o=[],t.properties.forEach(t=>{t.computed?o.push({key:s.#t(t.key),computed:!0,value:s.#t(t.value)}):o.push({key:t.key.type===Pt?t.key.name:`${t.key.value}`,computed:!1,value:s.#t(t.value)})}),(t,e,i)=>{const r={};for(let n=0;n<o.length;++n)o[n].computed?r[o[n].key(t,e,i)]=o[n].value(t,e,i):r[o[n].key]=o[n].value(t,e,i);return n?{value:r}:r};case 15:return t=>n?{value:t}:t.$proxy;case 16:return(t,e)=>n?{value:e}:e;case 17:return(t,e,i)=>n?{value:i}:i}}"unary+"(t,n){return(e,i,r)=>{let s=t(e,i,r);return s=x(s)?+s:0,n?{value:s}:s}}"unary-"(t,n){return(e,i,r)=>{let s=t(e,i,r);return s=x(s)?-s:-0,n?{value:s}:s}}"unary!"(t,n){return(e,i,r)=>{const s=!t(e,i,r);return n?{value:s}:s}}"binary+"(t,n,e){return(i,r,s)=>{const o=function(t,n){return void 0===t||C(t)?n:void 0===n||C(n)?t:t+n}(t(i,r,s),n(i,r,s));return e?{value:o}:o}}"binary-"(t,n,e){return(i,r,s)=>{const o=t(i,r,s),c=n(i,r,s),u=(x(o)?o:0)-(x(c)?c:0);return e?{value:u}:u}}"binary*"(t,n,e){return(i,r,s)=>{const o=t(i,r,s)*n(i,r,s);return e?{value:o}:o}}"binary/"(t,n,e){return(i,r,s)=>{const o=t(i,r,s)/n(i,r,s);return e?{value:o}:o}}"binary%"(t,n,e){return(i,r,s)=>{const o=t(i,r,s)%n(i,r,s);return e?{value:o}:o}}"binary==="(t,n,e){return(i,r,s)=>{const o=t(i,r,s)===n(i,r,s);return e?{value:o}:o}}"binary!=="(t,n,e){return(i,r,s)=>{const o=t(i,r,s)!==n(i,r,s);return e?{value:o}:o}}"binary=="(t,n,e){return(i,r,s)=>{const o=t(i,r,s)==n(i,r,s);return e?{value:o}:o}}"binary!="(t,n,e){return(i,r,s)=>{const o=t(i,r,s)!=n(i,r,s);return e?{value:o}:o}}"binary<"(t,n,e){return(i,r,s)=>{const o=t(i,r,s)<n(i,r,s);return e?{value:o}:o}}"binary>"(t,n,e){return(i,r,s)=>{const o=t(i,r,s)>n(i,r,s);return e?{value:o}:o}}"binary<="(t,n,e){return(i,r,s)=>{const o=t(i,r,s)<=n(i,r,s);return e?{value:o}:o}}"binary>="(t,n,e){return(i,r,s)=>{const o=t(i,r,s)>=n(i,r,s);return e?{value:o}:o}}"binary&&"(t,n,e){return(i,r,s)=>{const o=t(i,r,s)&&n(i,r,s);return e?{value:o}:o}}"binary||"(t,n,e){return(i,r,s)=>{const o=t(i,r,s)||n(i,r,s);return e?{value:o}:o}}"ternary?:"(t,n,e,i){return(r,s,o)=>{const c=t(r,s,o)?n(r,s,o):e(r,s,o);return i?{value:c}:c}}value(t,n){return()=>n?{context:void 0,name:void 0,value:t}:t}identifier(t,n,e){return(i,r)=>{const s=r&&t in r?r:(i&&i.$proxy)??i;let o;return e&&1!==e&&s&&T(s[t])&&(s[t]={}),s&&(o=s.$target?s.$target[t]:s[t]),n?{context:s,name:t,value:o}:o}}#n(t,n,e,i){return(r,s,o)=>{const c=t(r,s,o);let u,a;return T(c)||(u=n(r,s,o),u=function(t){return`${t}`}(u),i&&1!==i&&c&&!c[u]&&(c[u]={}),a=c[u]),e?{context:c,name:u,value:a}:a}}nonComputedMember(t,n,e,i){return(r,s,o)=>{const c=t(r,s,o);i&&1!==i&&c&&T(c[n])&&(c[n]={});const u=T(c)?void 0:c[n];return e?{context:c,name:n,value:u}:u}}}function Es(t,n,e){let i,r,s;const o=t;let c,u,a,h,l,f,d,$;const m=o.isPure=function(t,n){switch(t.type){case 9:if(t.computed)return!1;break;case 7:return 1;case 6:return"+"!==t.operator&&1;case 8:return!1}return void 0===n?2:n}(t,e);switch(t.type){case 1:return i=!0,o.body.forEach(t=>{const e=Es(t.expression,n,m);i=i&&e.constant}),o.constant=i,o;case _t:return o.constant=!0,o.toWatch=[],o;case 7:var p=Es(o.argument,n,m);return o.constant=p.constant,o.toWatch=p.toWatch,o;case 6:return c=Es(o.left,n,m),u=Es(o.right,n,m),o.constant=c.constant&&u.constant,o.toWatch=c.toWatch.concat(u.toWatch),o;case 5:return c=Es(o.left,n,m),u=Es(o.right,n,m),o.constant=c.constant&&u.constant,o.toWatch=o.constant?[]:[t],o;case 4:return a=Es(t.test,n,m),h=Es(t.alternate,n,m),l=Es(t.consequent,n,m),o.constant=a.constant&&h.constant&&l.constant,o.toWatch=o.constant?[]:[t],o;case Pt:return o.constant=!1,o.toWatch=[t],o;case 9:return f=Es(t.object,n,m),t.computed&&(d=Es(t.property,n,m)),o.constant=f.constant&&(!o.computed||d.constant),o.toWatch=o.constant?[]:[t],o;case 8:return s=!!t.filter&&function(t,n){return!t(n).$stateful}(n,t.callee.name),i=s,r=[],t.arguments.forEach(t=>{p=Es(t,n,m),i=i&&p.constant,r.push.apply(r,p.toWatch)}),o.constant=i,o.toWatch=s?r:[o],o;case 3:return c=Es(t.left,n,m),u=Es(t.right,n,m),o.constant=c.constant&&u.constant,o.toWatch=[o],o;case 12:return i=!0,r=[],t.elements.forEach(t=>{p=Es(t,n,m),i=i&&p.constant,r.push.apply(r,p.toWatch)}),o.constant=i,o.toWatch=r,o;case 14:return i=!0,r=[],t.properties.forEach(t=>{p=Es(t.value,n,m),i=i&&p.constant,r.push.apply(r,p.toWatch),t.computed&&($=Es(t.key,n,!1),i=i&&$.constant,r.push.apply(r,$.toWatch))}),o.constant=i,o.toWatch=r,o;case 15:case 16:return o.constant=!1,o.toWatch=[],o}}function Ss(t){return t.type===Pt||9===t.type}const xs=wt("$parse"),Os={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},Cs=new Set("+ - * / % === !== == != < > <= >= && || ! = |".split(" "));class js{constructor(t){this.D=t}q(t){for(this.V=t,this.U=0,this.F=[];this.U<this.V.length;){const t=this.V.charAt(this.U);if('"'===t||"'"===t)this.H(t);else if(this.L(t)||"."===t&&this.L(this.B()))this.W();else if(this.J&&this.J(this.Z()))this.G();else if(this.K(t,"(){}[].,;:?"))this.F.push({index:this.U,text:t}),this.U++;else if(this.Y(t))this.U++;else{const n=t+this.B(),e=n+this.B(2),i=Cs.has(t),r=Cs.has(n),s=Cs.has(e);if(i||r||s){const i=s?e:r?n:t;this.F.push({index:this.U,text:i,operator:!0}),this.U+=i.length}else this.X("Unexpected next character ",this.U,this.U+1)}}return this.F}K(t,n){return-1!==n.indexOf(t)}B(t){const n=t||1;return this.U+n<this.V.length&&this.V.charAt(this.U+n)}L(t){return t>="0"&&t<="9"&&"string"==typeof t}Y(t){return" "===t||"\r"===t||"\t"===t||"\n"===t||"\v"===t}J(t){return this.D.isIdentifierStart?this.D.isIdentifierStart(t,this.tt(t)):t>="a"&&t<="z"||t>="A"&&t<="Z"||"_"===t||"$"===t}nt(t){return this.D.isIdentifierContinue?this.D.isIdentifierContinue(t,this.tt(t)):t>="a"&&t<="z"||t>="A"&&t<="Z"||"_"===t||"$"===t||t>="0"&&t<="9"}tt(t){return 1===t.length?t.charCodeAt(0):(t.charCodeAt(0)<<10)+t.charCodeAt(1)-56613888}Z(){const t=this.V.charAt(this.U),n=this.B();if(!n)return t;const e=t.charCodeAt(0),i=n.charCodeAt(0);return e>=55296&&e<=56319&&i>=56320&&i<=57343?t+n:t}et(t){return"-"===t||"+"===t||this.L(t)}X(t,n,e){e=e||this.U;const i=x(n)?`s ${n}-${this.U} [${this.V.substring(n,e)}]`:` ${e}`;throw xs("lexerr",`Lexer Error: ${t} at column${i} in expression [${this.V}].`)}W(){let t="";const n=this.U;for(;this.U<this.V.length;){const n=this.V.charAt(this.U).toLowerCase();if("."===n||this.L(n))t+=n;else{const e=this.B();if("e"===n&&this.et(e))t+=n;else if(this.et(n)&&e&&this.L(e)&&"e"===t.charAt(t.length-1))t+=n;else{if(!this.et(n)||e&&this.L(e)||"e"!==t.charAt(t.length-1))break;this.X("Invalid exponent")}}this.U++}this.F.push({index:n,text:t,constant:!0,value:Number(t)})}G(){const t=this.U;for(this.U+=this.Z().length;this.U<this.V.length;){const t=this.Z();if(this.nt&&!this.nt(t))break;this.U+=t.length}this.F.push({index:t,text:this.V.slice(t,this.U),identifier:!0})}H(t){const n=this.U;let e="",i=!1;for(this.U++;this.U<this.V.length;){const r=this.V[this.U];if(i)e+="u"===r?this.it():Os[r]||r,i=!1;else if("\\"===r)i=!0;else{if(r===t)return this.F.push({index:n,text:this.V.slice(n,this.U+1),constant:!0,value:e}),void this.U++;e+=r}this.U++}this.X("Unterminated quote",n)}it(){const t=this.V.substring(this.U+1,this.U+5);return t.match(/[\da-f]{4}/i)||this.X(`Invalid unicode escape [\\u${t}]`),this.U+=4,String.fromCharCode(parseInt(t,16))}}const As=wt("$parse"),Ts={true:!0,false:!1,null:null,undefined:void 0};class Rs{constructor(t){this.rt=t,this.st={this:{type:15},$locals:{type:16}},this.U=0}ot(t){this.V=t,this.F=this.rt.q(t);const n=this.ct();return this.F.length>this.U&&this.X("is an unexpected token",this.F[this.U]),n}ct(){const t=[];let n=!0;for(;n;)this.F.length>this.U&&!this.B("}",")",";","]")&&t.push(this.ut()),this.ht(";")||(n=!1);return{type:1,body:t}}ut(){return{type:2,expression:this.lt()}}lt(){let t=this.ft();for(;this.ht("|");)t=this.dt(t);return t}ft(){let t=this.gt();if(this.ht("=")){if(!Ss(t))throw As("lval","Trying to assign a value to a non l-value");t={type:3,left:t,right:this.ft(),operator:"="}}return t}gt(){const t=this.wt();let n,e;return this.ht("?")&&(n=this.ft(),this.vt(":"))?(e=this.ft(),{type:4,test:t,alternate:n,consequent:e}):t}wt(){let t=this.bt();for(;this.ht("||");)t={type:5,operator:"||",left:t,right:this.bt()};return t}bt(){let t=this.yt();for(;this.ht("&&");)t={type:5,operator:"&&",left:t,right:this.yt()};return t}yt(){let t,n=this.kt();for(;t=this.ht("==","!=","===","!==");)n={type:6,operator:t.text,left:n,right:this.kt()};return n}kt(){let t,n=this.Et();for(;t=this.ht("<",">","<=",">=");)n={type:6,operator:t.text,left:n,right:this.Et()};return n}Et(){let t,n=this.St();for(;t=this.ht("+","-");)n={type:6,operator:t.text,left:n,right:this.St()};return n}St(){let t,n=this.xt();for(;t=this.ht("*","/","%");)n={type:6,operator:t.text,left:n,right:this.xt()};return n}xt(){let t;return(t=this.ht("+","-","!"))?{type:7,operator:t.text,prefix:!0,argument:this.xt()}:this.Ot()}Ot(){let t,n;for(this.ht("(")?(t=this.lt(),this.vt(")")):this.ht("[")?t=this.Ct():this.ht("{")?t=this.jt():xt(this.st,this.B().text)?t=structuredClone(this.st[this.vt().text]):xt(Ts,this.B().text)?t={type:_t,value:Ts[this.vt().text]}:this.B().identifier?t=this.At():this.B().constant?t=this.Tt():this.X("not a primary expression",this.B());n=this.ht("(","[",".");)"("===n.text?(t={type:8,callee:t,arguments:this.Rt()},this.vt(")")):"["===n.text?(t={type:9,object:t,property:this.ft(),computed:!0},this.vt("]")):"."===n.text?t={type:9,object:t,property:this.At(),computed:!1}:this.X("IMPOSSIBLE");return t}dt(t){const n=[t],e={type:8,callee:this.At(),arguments:n,filter:!0};for(;this.ht(":");)n.push(this.ft());return e}Rt(){const t=[];if(")"!==this.Mt().text)do{t.push(this.lt())}while(this.ht(","));return t}At(){const t=this.vt();return t.identifier||this.X("is not a valid identifier",t),{type:Pt,name:t.text}}Tt(){return{type:_t,value:this.vt().value}}Ct(){const t=[];if("]"!==this.Mt().text)do{if(this.B("]"))break;t.push(this.ft())}while(this.ht(","));return this.vt("]"),{type:12,elements:t}}jt(){const t=[];let n;if("}"!==this.Mt().text)do{if(this.B("}"))break;n={type:13,kind:"init"},this.B().constant?(n.key=this.Tt(),n.computed=!1,this.vt(":"),n.value=this.ft()):this.B().identifier?(n.key=this.At(),n.computed=!1,this.B(":")?(this.vt(":"),n.value=this.ft()):n.value=n.key):this.B("[")?(this.vt("["),n.key=this.ft(),this.vt("]"),n.computed=!0,this.vt(":"),n.value=this.ft()):this.X("invalid key",this.B()),t.push(n)}while(this.ht(","));return this.vt("}"),{type:14,properties:t}}X(t,n){throw As("syntax","Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].",n.text,t,n.index+1,this.V,this.V.substring(n.index))}vt(t){if(this.F.length===this.U)throw As("ueoe","Unexpected end of expression: {0}",this.V);const n=this.ht(t);if(n)return n;this.X(`is unexpected, expecting [${t}]`,this.B())}Mt(){if(this.F.length===this.U)throw As("ueoe","Unexpected end of expression: {0}",this.V);return this.F[this.U]}B(...t){const n=this.F[this.U],e=t.length;if(!n||!e)return n;const i=n.text;for(let r=0;r<e;r++)if(t[r]===i||!t[r])return n;return!1}ht(...t){const n=this.B(...t);return!!n&&(this.U++,n)}}class Ms{constructor(t,n){this.ot=new Rs(t),this.Pt=new ks(n)}_t(t){const{ast:n}=this.#e(t),e=this.Pt.compile(n);return e.literal=function(t){return 0===t.body.length||1===t.body.length&&(t.body[0].expression.type===_t||12===t.body[0].expression.type||14===t.body[0].expression.type)}(n),e.constant=function(t){return t.constant}(n),e}#e(t){return t=t.trim(),{ast:this.ot.ot(t)}}}class Ps{constructor(){const t=Object.create(null);let n,e;this.setIdentifierFns=function(t,i){return n=t,e=i,this},this.$get=["$filter",function(i){const r={isIdentifierStart:N(n)&&n,isIdentifierContinue:N(e)&&e};return function(n,e){let o,c;switch(typeof n){case"string":if(c=n=n.trim(),o=t[c],!o){const e=new js(r);o=new Ms(e,i)._t(n),t[c]=Ns(o)}return s(o,e);case"function":return s(n,e);default:return s(()=>{},e)}};function s(t,n){if(!n)return t;t.$$interceptor&&(n=function(t,n){function e(e){return n(t(e))}return e.$stateful=t.$stateful||n.$stateful,e.$$pure=t.$$pure&&n.$$pure,e}(t.$$interceptor,n),t=t.$$intercepted);let e=!1;const i=function(i,r,s,o){const c=e&&o?o[0]:t(i,r,s,o);if(i?.getter)return;const u=N(c)?c():c;return n(w(u)?u.$target:u)};return i.$$intercepted=t,i.$$interceptor=n,i.literal=t.literal,i.oneTime=t.oneTime,i.constant=t.constant,i.decoratedNode=t.decoratedNode,n.$stateful||(e=!t.inputs,i.inputs=t.inputs?t.inputs:[t],n.$$pure||(i.inputs=i.inputs.map(function(t){return 2===t.isPure?function(n){return t(n)}:t}))),Ns(i)}}]}}function _s(t,n,e,i){const r=t.$watch(()=>(r(),i(t)),n,e);return r}function Ns(t){return t.constant?t.$$watchDelegate=_s:t.inputs&&(t.$$watchDelegate=Is),t}function Is(t,n,e,i){const r=i.inputs;let s;if(1===r.length){let o=Ds;const c=r[0];return t.$watch(t=>{const n=c(t);return Ds(n,o,c.isPure)||(s=i(t,void 0,[n]),o=n&&qs(n)),s},n,e)}for(let t=0,n=r.length;t<n;t++);}function Ds(t,n,e){return T(t)||T(n)?t===n:!("object"==typeof t&&"object"==typeof(t=qs(t))&&!e)&&(t===n||Number.isNaN(t)&&Number.isNaN(n))}function qs(t){return N(t.valueOf)?t.valueOf():{}.constructor.prototype.valueOf.call(t)}const Vs=wt("$interpolate");function Us(t,n){throw Vs("interr","Can't interpolate: {0}\n{1}",t,n.toString())}class Fs{constructor(){this.startSymbol="{{",this.endSymbol="}}"}$get=[Ln.$parse,Ln.$sce,(t,n)=>{const e=this,i=e.startSymbol.length,r=e.endSymbol.length,s=new RegExp(e.startSymbol.replace(/./g,c),"g"),o=new RegExp(e.endSymbol.replace(/./g,c),"g");function c(t){return`\\\\\\${t}`}function u(t){return t.replace(s,e.startSymbol).replace(o,e.endSymbol)}function a(s,o,c,a){const h=c===n.URL||c===n.MEDIA_URL;if(!s.length||-1===s.indexOf(e.startSymbol)){if(o)return;let t=u(s);h&&(t=n.getTrusted(c,t));const e=()=>t;return e.exp=s,e.expressions=[],e.$$watchDelegate=_s,e}let l,f;a=!!a;let d=0;const $=[],m=s.length;let p;const g=[],w=[];for(;d<m;){if(-1===(l=s.indexOf(e.startSymbol,d))||-1===(f=s.indexOf(e.endSymbol,l+i))){d!==m&&g.push(u(s.substring(d)));break}d!==l&&g.push(u(s.substring(d,l))),p=s.substring(l+i,f),$.push(p),d=f+r,w.push(g.length),g.push("")}const v=1===g.length&&1===w.length,b=h&&v?void 0:function(t){try{return t=c&&!h?n.getTrusted(c,t):n.valueOf(t),a&&!x(t)?t:tt(t)}catch(t){return Us(s,t)}},y=$.map(n=>t(n,b));if(!o||$.length){const t=function(t){for(let n=0,e=$.length;n<e;n++){if(a&&S(t[n]))return;g[w[n]]=t[n]}return h?n.getTrusted(c,v?g[0]:g.join("")):(c&&g.length>1&&function(t){throw Vs("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),g.join(""))};return z((n,e)=>{let i=0;const r=$.length,o=new Array(r);try{for(;i<r;i++){if(e){const s=$[i].trim();n.$watch(s,()=>{const i=new Array(r);let s=0;for(;s<r;s++){const t=y[s];i[s]=t(n)}e(t(i))})}o[i]=y[i](n)}return t(o)}catch(t){return Us(s,t)}},{exp:s,expressions:$,$$watchDelegate(n,i){let r;return n.$watch(y,function(s,o){const c=t(s);i.call(e,c,s!==o?r:c,n),r=c})}})}}return a.startSymbol=function(){return e.startSymbol},a.endSymbol=function(){return e.endSymbol},a}]}const Hs=/^([^?#]*)(\?([^#]*))?(#(.*))?$/,Ls=wt("$location");let zs,Bs,Ws,Js=!1;class Zs{constructor(t,n,e=!0,i){this.appBase=t,this.appBaseNoFile=n,this.html5=e,this.basePrefix=e?i||"":void 0,this.hashPrefix=e?void 0:i,this.absUrl="",this.$$url=void 0,this.$$updateBrowser=void 0}setUrl(t){const n=Hs.exec(t);return void 0===n[1]&&""!==t||this.setPath(n[1]||""),void 0===n[2]&&void 0===n[1]&&""!==t||this.setSearch(n[3]||""),this.setHash(n[5]||""),this}getUrl(){return this.$$url}setPath(t){const n=null!==t?t.toString():"";return zs="/"===n.charAt(0)?n:`/${n}`,this.$$compose(),this}getPath(){return zs}setHash(t){return Ws=null!==t?t.toString():"",this.$$compose(),this}getHash(){return Ws}setSearch(t,n){if(1===arguments.length)if(j(t)||M(t))t=t.toString(),Bs=ot(t);else{if(!C(t))throw Ls("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");Ct(t=structuredClone(t,{})).forEach(([n,e])=>{A(e)&&delete t[n]}),Bs=t}else S(n)||null===n?delete Bs[t]:Bs[t]=n;return this.$$compose(),this}getSearch(){return Bs}$$compose(){this.$$url=function(t,n,e){const i=ct(n),r=e?`#${at(e)}`:"";return function(t){const n=t.split("/");let e=n.length;for(;e--;){const t=decodeURIComponent(n[e].replace(/%2F/gi,"/"));n[e]=at(t)}return n.join("/")}(t)+(i?`?${i}`:"")+r}(zs,Bs,Ws),this.absUrl=this.html5?this.appBaseNoFile+this.$$url.substring(1):this.appBase+(this.$$url?this.hashPrefix+this.$$url:""),Js=!0,setTimeout(()=>this.$$updateBrowser&&this.$$updateBrowser())}setState(t){if(!this.html5)throw Ls("nostate","History API state support is available only in HTML5 mode");return this.$$state=S(t)?null:t,Js=!0,this}getState(){return this.$$state}parseLinkUrl(t,n){if(this.html5){if(n&&"#"===n[0])return this.setHash(n.slice(1)),!0;let e,i,r;return x(e=Ys(this.appBase,t))?(i=e,r=this.basePrefix&&x(e=Ys(this.basePrefix,e))?this.appBaseNoFile+(Ys("/",e)||e):this.appBase+i):x(e=Ys(this.appBaseNoFile,t))?r=this.appBaseNoFile+e:this.appBaseNoFile===`${t}/`&&(r=this.appBaseNoFile),r&&this.parse(r),!!r}return Xs(this.appBase)===Xs(t)&&(this.parse(t),!0)}parse(t){if(this.html5){const n=Ys(this.appBaseNoFile,t);if(!j(n))throw Ls("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',t,this.appBaseNoFile);Ks(n,!0),zs||(zs="/"),this.$$compose()}else{const e=Ys(this.appBase,t)||Ys(this.appBaseNoFile,t);let i;function r(t,n,e){const i=/^\/[A-Z]:(\/.*)/;if(Tt(n,e)&&(n=n.replace(e,"")),i.exec(n))return t;const r=i.exec(t);return r?r[1]:t}S(e)||"#"!==e.charAt(0)?this.html5?i=e:(i="",S(e)&&(this.appBase=t)):(i=Ys(this.hashPrefix,e),S(i)&&(i=e)),Ks(i,!1),zs=r(zs,i,this.appBase),this.$$compose()}}}class Gs{constructor(){this.hashPrefixConf="!",this.html5ModeConf={enabled:!0,requireBase:!1,rewriteLinks:!0},this.urlChangeListeners=[],this.urlChangeInit=!1,this.cachedState=null,this.lastHistoryState=null,this.lastBrowserUrl=window.location.href,this.cacheState()}setUrl(t,n){if(void 0===n&&(n=null),t){if(t=new URL(t).href,this.lastBrowserUrl===t&&this.lastHistoryState===n)return this;this.lastBrowserUrl=t,this.lastHistoryState=n,history.pushState(n,"",t),this.cacheState()}return this}getBrowserUrl(){return ve(window.location.href)}state(){return this.cachedState}cacheState(){const t=history.state??null;X(t,this.lastCachedState)||(this.cachedState=t,this.lastCachedState=t,this.lastHistoryState=t)}#i(){const t=this.lastHistoryState;this.cacheState(),this.lastBrowserUrl===this.getBrowserUrl()&&t===this.cachedState||(this.lastBrowserUrl=this.getBrowserUrl(),this.lastHistoryState=this.cachedState,this.urlChangeListeners.forEach(t=>{t(ve(window.location.href),this.cachedState)}))}#r(t){this.urlChangeInit||(window.addEventListener("popstate",this.#i.bind(this)),window.addEventListener("hashchange",this.#i.bind(this)),this.urlChangeInit=!0),this.urlChangeListeners.push(t)}$get=[Ln.$rootScope,Ln.$rootElement,Ln.$exceptionHandler,(t,n,e)=>{const i=Hn(),r=ve(window.location.href);let s;if(this.html5ModeConf.enabled){if(!i&&this.html5ModeConf.requireBase)throw Ls("nobase","$location in HTML5 mode requires a <base> tag to be present!");s=function(t){const n=t.indexOf("//")+2,e=t.indexOf("/",n);return-1===e?t:t.substring(0,e)}(r)+(i||"/")}else s=Xs(r);const o=(c=s).substring(0,Xs(c).lastIndexOf("/")+1);var c;const u=new Zs(s,o,this.html5ModeConf.enabled,`#${this.hashPrefixConf}`);u.parseLinkUrl(r,r),u.$$state=this.state();const a=/^\s*(javascript|mailto):/i,h=(t,n)=>{const i=u.getUrl(),r=u.$$state;try{this.setUrl(t,n),u.$$state=this.state()}catch(t){u.setUrl(i),u.$$state=r,e(t)}};n.addEventListener("click",t=>{const{rewriteLinks:e}=this.html5ModeConf;if(!e||t.ctrlKey||t.metaKey||t.shiftKey||2===t.button)return;let i=t.target;for(;"a"!==i.nodeName.toLowerCase();)if(i===n||!(i=i.parentElement))return;if(j(e)&&S(i.getAttribute(e)))return;let r=i.href;const s=i.getAttribute("href")||i.getAttribute("xlink:href");C(r)&&"[object SVGAnimatedString]"===r.toString()&&(r=new URL(r.animVal).href),a.test(r)||!r||i.getAttribute("target")||t.defaultPrevented||u.parseLinkUrl(r,s)&&t.preventDefault()}),u.absUrl!==r&&this.setUrl(u.absUrl,!0);let l=!0;this.#r((n,e)=>{Tt(n,o)?queueMicrotask(()=>{const i=u.absUrl,r=u.$$state;u.parse(n),u.$$state=e;const{defaultPrevented:s}=t.$broadcast("$locationChangeStart",n,i,e,r);u.absUrl===n&&(s?(u.parse(i),u.$$state=r,h(i,r)):(l=!1,d(i,r)))}):window.location.href=n});const f=()=>{if(l||Js){Js=!1;const e=this.getBrowserUrl();let i=u.absUrl;const r=this.state(),s=(n=i,!(Qs(e)===Qs(n))||u.html5&&r!==u.$$state);(l||s)&&(l=!1,setTimeout(()=>{i=u.absUrl;const{defaultPrevented:n}=t.$broadcast("$locationChangeStart",u.absUrl,e,u.$$state,r);u.absUrl===i&&(n?(u.parse(e),u.$$state=r):(s&&h(i,r===u.$$state?null:u.$$state),d(e,r)))}))}var n};return u.$$updateBrowser=f,f(),t.$on("$updateBrowser",f),u;function d(n,e){t.$broadcast("$locationChangeSuccess",u.absUrl,n,u.$$state,e)}}]}function Ks(t,n){if(/^\s*[\\/]{2,}/.test(t))throw Ls("badpath",'Invalid url "{0}".',t);const e="/"!==t.charAt(0);e&&(t=`/${t}`);const i=ge(t),r=e&&"/"===i.pathname.charAt(0)?i.pathname.substring(1):i.pathname;zs=function(t,n){const e=t.split("/");let i=e.length;for(;i--;)e[i]=decodeURIComponent(e[i]),n&&(e[i]=e[i].replace(/\//g,"%2F"));return e.join("/")}(r,n),Bs=ot(i.search),Ws=decodeURIComponent(i.hash),zs&&"/"!==zs.charAt(0)&&(zs=`/${zs}`)}function Ys(t,n){if(Tt(n,t))return n.substring(t.length)}function Xs(t){const n=t.indexOf("#");return-1===n?t:t.substring(0,n)}function Qs(t){const n=document.createElement("a");n.href=t;let e=n.href;return e.endsWith("/")&&!/^https?:\/\/[^/]+\/$/.test(e)&&(e=e.slice(0,-1)),e.endsWith("#")&&(e=e.slice(0,-1)),e}class to{constructor(){this.debug=!1,this.Nt=null}setLogger(t){this.Nt=t}formatError(t){return _(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 n=window.console||{},e=n[t]||n.log||(()=>{});return(...t)=>{const i=t.map(t=>this.formatError(t));return e.apply(n,i)}}$get(){return this.Nt?this.Nt():{log:this.consoleLog("log"),info:this.consoleLog("info"),warn:this.consoleLog("warn"),error:this.consoleLog("error"),debug:(()=>{const t=this.consoleLog("debug");return(...n)=>{this.debug&&t.apply(this,n)}})()}}}const no="$nonscope";let eo,io,ro=0;const so=[];class oo{constructor(){this.rootScope=co()}$get=[Ln.$exceptionHandler,Ln.$parse,(t,n)=>(io=t,eo=n,this.rootScope)]}function co(t={},n){if(!C(t)||function(t){if(!0===t[no]||!0===(t.constructor&&t.constructor[no])||t===uo.window||t===uo.document||t===uo.self||t===uo.frames||t instanceof Window||t instanceof Document||t instanceof Element||t instanceof Node||t instanceof EventTarget||t instanceof Promise||t instanceof HTMLCollection||t instanceof NodeList||t instanceof Event)return!0;try{return ho.call(t)===lo}catch{return!1}}(t))return t;const e=new Proxy(t,n||new fo),i=Ot(t),r=O(t.constructor?.$nonscope)?t.constructor.$nonscope:null,s=O(t.$nonscope)?t.$nonscope:null;for(let n=0,o=i.length;n<o;n++){const o=i[n];r?.includes(o)||s?.includes(o)||(t[o]=co(t[o],e.$handler))}return e}const uo=globalThis,ao=Object.prototype,{toString:ho}=ao,lo="[object Window]";class fo{constructor(t,n){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=(ro+=1,ro),this.$root=t?t.$root:this,this.$parent=n||(this.$root===this?null:t),this.filters=[],this.$$destroyed=!1,this.scheduled=[],this.$scopename=void 0,this.propertyMap={$watch:this.$watch.bind(this),$new:this.$new.bind(this),$newIsolate:this.$newIsolate.bind(this),$destroy:this.$destroy.bind(this),$flushQueue:this.$flushQueue.bind(this),$eval:this.$eval.bind(this),$apply:this.$apply.bind(this),$postUpdate:this.$postUpdate.bind(this),$isRoot:this.#s.bind(this),$on:this.$on.bind(this),$emit:this.$emit.bind(this),$broadcast:this.$broadcast.bind(this),$transcluded:this.$transcluded.bind(this),$handler:this,$merge:this.$merge.bind(this),$getById:this.$getById.bind(this),$searchByName:this.$searchByName.bind(this),$proxy:this.$proxy,$parent:this.$parent,$root:this.$root,$children:this.$children,$id:this.$id,$scopename:this.$scopename}}set(t,n,e,i){if("undefined"===n)return!1;if("$scopename"===n)return this.$scopename=e,!0;if(t.constructor?.$nonscope&&O(t.constructor.$nonscope)&&t.constructor.$nonscope.includes(n)||t.$nonscope&&O(t.$nonscope)&&t.$nonscope.includes(n))return t[n]=e,!0;this.$proxy=i,this.$target=t;const r=t[n];if(void 0!==r&&Number.isNaN(r)&&Number.isNaN(e))return!0;if(r&&r[g]){if(O(e)){if(r!==e){const t=this.watchers.get(n);t&&this.#o(t);const e=this.foreignListeners.get(n);e&&this.#o(e)}return this.objectListeners.get(t[n])&&this.objectListeners.delete(t[n]),t[n]=co(e,this),this.objectListeners.set(t[n],[n]),!0}if(C(e)){if(xt(t,n)){const t=Ot(r);for(const n of t)e[n]||delete r[n]}if(r!==e){const t=this.watchers.get(n);t&&this.#o(t);const i=this.foreignListeners.get(n);i&&this.#o(i),this.#c(e)}return t[n]=co(e,this),!0}if(S(e)){let e=!1;const i=Ot(r.$target),s=r.$target;let o=0;for(;o<i.length;o++){const t=i[o],n=s[t];n&&n[g]&&(e=!0),delete r[t]}if(t[n]=void 0,!e){const t=this.watchers.get(n);t&&this.#o(t)}return!0}if(x(e)){t[n]=e;const r=this.watchers.get(n);if(r&&this.#o(r),O(t)&&this.objectListeners.has(i)&&"length"!==n){const t=this.objectListeners.get(i);for(let n=0,e=t.length;n<e;n++){const e=this.watchers.get(t[n]);e&&this.#o(e)}}return!0}return!0}if(S(t[n])&&w(e)&&(this.foreignProxies.add(e),t[n]=e,!this.watchers.has(n)))return!0;if(S(e)?t[n]=e:t[n]=co(e,this),r!==e){let i=this.$target;const s=[];if(S(r)&&C(t[n])){this.objectListeners.has(t[n])||this.objectListeners.set(t[n],[n]);const r=Ot(e);for(let t=0,n=r.length;t<n;t++){const n=r[t],e=this.watchers.get(n);if(e)for(let t=0,n=e.length;t<n;t++)s.push(e[t])}i=e}if(O(t)){const t=this.watchers.get("length");if(t)for(let n=0,e=t.length;n<e;n++)s.push(t[n])}const o=this.watchers.get(n);if(o)for(let t=0,n=o.length;t<n;t++)s.push(o[t]);s.length>0&&this.#o(s,t=>{const n=[];for(let e=0,r=t.length;e<r;e++){const r=t[e];if(!r.watchProp){n.push(r);continue}const s=r.watchProp.split(".").slice(0,-1).join("."),o=eo(s)(r.originalTarget)?.$handler;i===o?.$target&&n.push(r)}return n});let c=this.foreignListeners.get(n);if(!c&&this.$parent?.foreignListeners&&(c=this.$parent.foreignListeners.get(n)),c){let t=c;const n=this.$target.$$hashKey;if(n){t=[];for(let e=0,i=c.length;e<i;e++){const i=c[e];i.originalTarget.$$hashKey===n&&t.push(i)}}t.length>0&&this.#o(t)}}if(this.objectListeners.has(i)&&"length"!==n){const t=this.objectListeners.get(i);for(let n=0,e=t.length;n<e;n++){const e=t[n],i=this.watchers.get(e);i&&this.scheduled!==i&&this.#o(i)}}return!0}get(t,n,e){if("$scopename"===n&&this.$scopename)return this.$scopename;if("$$watchersCount"===n)return function(t){const n=function(t){const n=new Set,e=[t];for(;e.length;){const t=e.pop();if(!n.has(t.$id)&&(n.add(t.$id),t.$children))for(let n=0,i=t.$children.length;n<i;n++)e.push(t.$children[n])}return n}(t);let e=0;for(const i of t.watchers.values())for(let t=0,r=i.length;t<r;t++)n.has(i[t].scopeId)&&e++;return e}(this);if(n===g)return!0;if(t[n]&&w(t[n])?this.$proxy=t[n]:this.$proxy=e,this.propertyMap.$target=t,this.propertyMap.$proxy=e,O(t)&&["pop","shift","unshift"].includes(n)){if(this.objectListeners.has(e)){const t=this.objectListeners.get(e);for(let n=0,e=t.length;n<e;n++){const e=t[n],i=this.watchers.get(e);i&&(this.scheduled=i)}}"unshift"===n&&this.#o(this.scheduled)}return xt(this.propertyMap,n)?(this.$target=t,this.propertyMap[n]):t[n]}deleteProperty(t,n){if(t[n]&&t[n][g]){t[n]=void 0;const e=this.watchers.get(n);if(e&&this.#o(e),this.objectListeners.has(this.$proxy)){const t=this.objectListeners.get(this.$proxy);for(let n=0,e=t.length;n<e;n++){const e=t[n],i=this.watchers.get(e);i&&this.#o(i)}}return this.scheduled&&(this.#o(this.scheduled),this.scheduled=[]),!0}if(delete t[n],this.objectListeners.has(this.$proxy)){const t=this.objectListeners.get(this.$proxy);for(let n=0,e=t.length;n<e;n++){const e=t[n],i=this.watchers.get(e);i&&this.#o(i)}}else{const e=this.watchers.get(n);e&&this.#o(e,t[n])}return!0}#c(t){S(t)||Ot(t).forEach(n=>{const e=this.watchers.get(n);e&&this.#o(e),C(t[n])&&this.#c(t[n])})}#o(t,n=t=>t){queueMicrotask(()=>{let e=0;const i=n(t);for(;e<i.length;){const t=i[e];t.foreignListener?t.foreignListener.#u(t,this.$target):this.#u(t,this.$target),e++}})}$watch(t,n,e=!1){dt(j(t),"Watched property required"),t=t.trim();const i=eo(t);if(i.constant)return n&&queueMicrotask(()=>{let t=i();for(;N(t);)t=t();n(t,this.$target)}),()=>{};const r={originalTarget:this.$target,listenerFn:n,watchFn:i,scopeId:this.$id,id:y(),property:[]};let s=i.decoratedNode.body[0].expression.name;const o=[],{type:c}=i.decoratedNode.body[0].expression;switch(c){case 3:if(!n){let t=i(this.$target);for(;N(t);)t=t(this.$target);return}s=i.decoratedNode.body[0].expression.left.name;break;case 4:s=i.decoratedNode.body[0].expression.toWatch[0]?.test?.name,r.property.push(s);break;case 5:{const t=[i.decoratedNode.body[0].expression.left.toWatch[0]?.name,i.decoratedNode.body[0].expression.right.toWatch[0]?.name];for(let n=0,e=t.length;n<e;n++){const e=t[n];e&&this.#a(e,r)}return()=>{for(let n=0,e=t.length;n<e;n++){const e=t[n];this.#h(e,r.id)}}}case 6:if(i.decoratedNode.body[0].expression.isPure){const t=i.decoratedNode.body[0].expression.toWatch[0];if(s=t.property?t.property.name:t.name,!s)throw new Error("Unable to determine key");r.property.push(s);break}{const{toWatch:t}=i.decoratedNode.body[0].expression;for(let n=0,e=t.length;n<e;n++){const e=t[n],i=e.property?e.property.name:e.name;if(!i)throw new Error("Unable to determine key");this.#a(i,r),this.#o([r])}return()=>{for(let n=0,e=t.length;n<e;n++){const e=t[n],i=e.property?e.property.name:e.name;this.#h(i,r.id)}}}case 7:{const t=i.decoratedNode.body[0].expression.toWatch[0];if(s=t.property?t.property.name:t.name,!s)throw new Error("Unable to determine key");r.property.push(s);break}case 8:{const{toWatch:t}=i.decoratedNode.body[0].expression;for(let n=0,e=t.length;n<e;n++){const e=t[n];x(e)&&(this.#a(e.name,r),this.#o([r]))}return()=>{for(let n=0,e=t.length;n<e;n++){const e=t[n];x(e)&&this.#h(e.name,r.id)}}}case 9:if(s=i.decoratedNode.body[0].expression.property.name,s||(s=i.decoratedNode.body[0].expression.object.name),r.property.push(s),t!==s){r.watchProp=t;const n=eo(t.split(".").slice(0,-1).join("."))(r.originalTarget);if(n&&this.foreignProxies.has(n))return n.$handler.#l(s,r),n.$handler.#o([r]),()=>n.$handler.#h(s,r.id)}break;case Pt:r.property.push(i.decoratedNode.body[0].expression.name);break;case 12:{const{elements:t}=i.decoratedNode.body[0].expression;for(let n=0,e=t.length;n<e;n++){const e=t[n],i=e.type===_t?e.value:e.toWatch[0]?.name;i&&(this.#a(i,r),this.#o([r]))}return()=>{for(let n=0,e=t.length;n<e;n++){const e=t[n],i=e.type===_t?e.value:e.toWatch[0]?.name;i&&this.#h(i,r.id)}}}case 14:{const{properties:t}=i.decoratedNode.body[0].expression;for(let n=0,e=t.length;n<e;n++){const e=t[n];let s;if(!1===e.key.isPure)s=e.key.name;else if(e.value?.name)s=e.value.name;else{const t=i.decoratedNode.body[0].expression.toWatch[0];s=t.property?t.property.name:t.name}s&&(o.push(s),r.property.push(s))}break}default:throw new Error(`Unsupported type ${c}`)}const u=r.watchFn(this.$target);if(C(u)&&this.objectListeners.set(u,[s]),o.length>0)for(let t=0,n=o.length;t<n;t++)this.#a(o[t],r);else this.#a(s,r);return e||this.#o([r]),()=>{if(o.length>0){let t=!0;for(let n=0,e=o.length;n<e;n++)this.#h(o[n],r.id)||(t=!1);return t}return this.#h(s,r.id)}}$new(t){let n;t?(Object.getPrototypeOf(t)===Object.prototype||Object.getPrototypeOf(t)===this.$target?Object.setPrototypeOf(t,this.$target):Object.setPrototypeOf(Object.getPrototypeOf(t)||t,this.$target),n=t):n=Object.create(this.$target);const e=new Proxy(n,new fo(this));return this.$children.push(e),e}$newIsolate(t){const n=t?Object.create(t):Object.create(null),e=new Proxy(n,new fo(this,this.$root));return this.$children.push(e),e}$transcluded(t){const n=Object.create(this.$target),e=new Proxy(n,new fo(this,t));return this.$children.push(e),e}#a(t,n){this.watchers.has(t)?this.watchers.get(t).push(n):this.watchers.set(t,[n])}#l(t,n){this.foreignListeners.has(t)?this.foreignListeners.get(t).push(n):this.foreignListeners.set(t,[n])}#h(t,n){const e=this.watchers.get(t);if(!e)return!1;const i=e.findIndex(t=>t.id===n);return-1!==i&&(e.splice(i,1),e.length?this.watchers.set(t,e):this.watchers.delete(t),!0)}$eval(t,n){const e=eo(t)(this,n);return S(e)||null===e||e.name===Object.hasOwnProperty.name?e:N(e)?e():Number.isNaN(e)?0:e}$merge(t){const n=Ct(t);for(let t=0,e=n.length;t<e;t++){const[e,i]=n[t];this.set(this.$target,e,i,this.$proxy)}}$apply(t){try{return eo(t)(this.$proxy)}catch(t){return io(t)}}$on(t,n){let e=this.$$listeners.get(t);return e||(e=[],this.$$listeners.set(t,e)),e.push(n),()=>{const i=e.indexOf(n);-1!==i&&(e.splice(i,1),0===e.length&&this.$$listeners.delete(t))}}$emit(t,...n){return this.#f({name:t,event:void 0,broadcast:!1},...n)}$broadcast(t,...n){return this.#f({name:t,event:void 0,broadcast:!0},...n)}#f({name:t,event:n,broadcast:e},...i){if(!e&&!this.$$listeners.has(t))return this.$parent?this.$parent.$handler.#f({name:t,event:n,broadcast:e},...i):void 0;n?n.currentScope=this.$target:n=n||{name:t,targetScope:this.$target,currentScope:this.$target,stopped:!1,stopPropagation(){n.stopped=!0},preventDefault(){n.defaultPrevented=!0},defaultPrevented:!1};const r=nt([n],[n].concat(i),1),s=this.$$listeners.get(t);if(s){let{length:t}=s;for(let n=0;n<t;n++)try{s[n].apply(null,r);const e=s.length;e!==t&&(e<t&&n--,t=e)}catch(t){io(t)}}return n.currentScope=null,n.stopped?n:e?(this.$children.length>0&&this.$children.forEach(r=>{n=r.$handler.#f({name:t,event:n,broadcast:e},...i)}),n):this.$parent?this.$parent.#f({name:t,event:n,broadcast:e},...i):n}#s(){return this.$root===this}$postUpdate(t){so.push(t)}$destroy(){if(!this.$$destroyed){this.$broadcast("$destroy");for(const[t,n]of this.watchers){for(let t=n.length-1;t>=0;t--)n[t].scopeId===this.$id&&n.splice(t,1);0===n.length?this.watchers.delete(t):this.watchers.set(t,n)}if(this.#s())this.watchers.clear();else{const t=this.$parent.$children;for(let n=0,e=t.length;n<e;n++)if(t[n].$id===this.$id){t.splice(n,1);break}}this.$$listeners.clear(),this.$$destroyed=!0}}#u(t,n){const{originalTarget:e,listenerFn:i,watchFn:r}=t;try{let t=r(e);if(S(t)&&(t=r(n)),N(t)&&(t=t(e)),O(t))for(let n=0,i=t.length;n<i;n++)N(t[n])&&(t[n]=t[n](e));for(i(t,e);so.length;)so.shift()()}catch(t){io(t)}}$flushQueue(){for(;so.length;)so.shift()()}$getById(t){if(j(t)&&(t=parseInt(t,10)),this.$id===t)return this;{let n;for(const e of this.$children){const i=e.$getById(t);if(i){n=i;break}}return n}}$searchByName(t){const n=(t,e)=>{if(t.$scopename===e)return t;{let i;for(const r of t.$children){const t=n(r,e);if(t){i=t;break}}return i}};return n(this.$root,t)}}const $o=wt("$templateRequest");function mo(){let t;this.httpOptions=function(n){return n?(t=n,this):t},this.$get=["$exceptionHandler","$templateCache","$http","$sce",function(n,e,i,r){function s(o,c){if(s.totalPendingRequests++,!j(o)||!e.has(o))try{if(!(o=r.getTrustedResourceUrl(o)))return Promise.reject("Template not found")}catch(t){return Promise.reject(t.message)}let u=i.defaults&&i.defaults.transformResponse;return O(u)?u=u.filter(function(t){return t!==Ae}):u===Ae&&(u=null),i.get(o,z({cache:e,transformResponse:u},t)).finally(function(){s.totalPendingRequests--}).then(function(t){return e.set(o,t.data),t.data},function(t){return c||(t=$o("tpload","Failed to load template: {0} (HTTP status: {1} {2})",o,t.status,t.statusText),n(t)),Promise.reject(t)})}return s.totalPendingRequests=0,s}]}class po{constructor(){this.It=/^\s*(https?|s?ftp|mailto|tel|file):/,this.Dt=/^\s*((https?|ftp|file|blob):|data:image\/)/}aHrefSanitizationTrustedUrlList(t){return x(t)?(this.It=t,this):this.It}imgSrcSanitizationTrustedUrlList(t){return x(t)?(this.Dt=t,this):this.Dt}$get=[Ln.$window,t=>(n,e)=>{if(!n)return n;const i=e?this.Dt:this.It,r=new URL(n.trim(),t.location.href).href;return""===r||r.match(i)?n:`unsafe:${r}`}]}const go="ng-active",wo="ng-inactive";class vo{constructor(t,n,e,i){this.$element=t,this.$scope=n,this.$attrs=e,this.$animate=i,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 n=yo(this.$scope,this.$attrs.ngMessagesMultiple)||yo(this.$scope,this.$attrs.multiple),e=[],i={};let r=0,s=this.head,o=!1,c=0;for(;s;){c++;const u=s.message;let a=!1;o||Ct(t).forEach(([t,n])=>{if(ko(n)&&!a&&(r++,u.test(t))){if(i[t])return;i[t]=!0,a=!0,u.attach()}}),a?o=!n:e.push(u),s=s.next}e.forEach(t=>{t.detach()});const u=e.length!==c,a=this.default&&!u&&r>0;a?this.default.attach():this.default&&this.default.detach(),u||a?this.$animate.setClass(this.$element,go,wo):this.$animate.setClass(this.$element,wo,go)}reRender(){this.renderLater||(this.renderLater=!0,Promise.resolve().then(()=>{this.renderLater&&this.cachedCollection&&this.render(this.cachedCollection)}))}register(t,n,e){if(e)this.default=n;else{const e=this.latestKey.toString();this.messages[e]={message:n},this.insertMessageNode(this.$element,t,e),t.$$ngMessageNode=e,this.latestKey++}this.reRender()}deregister(t,n){if(n)delete this.default;else{const n=t.$$ngMessageNode;delete t.$$ngMessageNode,this.removeMessageNode(this.$element,t,n),delete this.messages[n]}this.reRender()}findPreviousMessage(t,n){let e=n;const i=[];for(;e&&e!==t;){const t=e.$$ngMessageNode;if(t&&t.length)return this.messages[t];e.childNodes.length&&-1===i.indexOf(e)?(i.push(e),e=e.childNodes[e.childNodes.length-1]):e.previousSibling?e=e.previousSibling:(e=e.parentNode,i.push(e))}}insertMessageNode(t,n,e){const i=this.messages[e];if(this.head){const e=this.findPreviousMessage(t,n);e?(i.next=e.next,e.next=i):(i.next=this.head,this.head=i)}else this.head=i}removeMessageNode(t,n,e){const i=this.messages[e];if(!i)return;const r=this.findPreviousMessage(t,n);r?r.next=i.next:this.head=i.next}}function bo(t){return{require:"ngMessages",restrict:"AE",controller:(n,e,i)=>new vo(n,e,i,t)}}function yo(t,n){return j(n)&&0===n.length||ko(t.$eval(n))}function ko(t){return j(t)?t.length:!!t}function Eo(t,n){return{restrict:"AE",require:"^^ngMessages",link(e,i,r){const s=r.ngMessagesInclude||r.src;t(s).then(t=>{e.$$destroyed||j(t)&&!t.trim()||n(t)(e,t=>{i.after(t)})})}}}bo.$inject=["$animate"],Eo.$inject=["$templateRequest","$compile"];const So=Co(!1),xo=Co(!1),Oo=Co(!0);function Co(t){function n(n){return{restrict:"AE",transclude:"element",priority:1,terminal:!0,require:"^^ngMessages",link(e,i,r,s,o){let c,u,a,h,l,f;if(!t){c=i,a=r.ngMessage||r.when,h=r.ngMessageExp||r.whenExp;const t=function(t){u=t?O(t)?t:t.split(/[\s,]+/):null,s.reRender()};h?(t(e.$eval(h)),e.$watch(h,t)):t(a)}s.register(c,f={test:t=>function(t,n){if(t)return O(t)?t.indexOf(n)>=0:xt(t,n)}(u,t),attach(){l||o((e,r)=>{n.enter(e,null,i),l=e;const o=l.$$attachId=s.getAttachId();l.addEventListener("$destroy",()=>{l&&l.$$attachId===o&&(s.deregister(c,t),f.detach()),r.$destroy()})})},detach(){if(l){const t=l;l=null,n.leave(t)}}},t),e.$on("$destroy",()=>{s.deregister(c,t)})}}}return n.$inject=["$animate"],n}const jo="ngAriaDisable",Ao=["BUTTON","A","INPUT","TEXTAREA","SELECT","DETAILS","SUMMARY"],To=function(t,n){return-1!==n.indexOf(t.nodeName)};function Ro(){let t={ariaHidden:!0,ariaChecked:!0,ariaReadonly:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaValue:!0,tabindex:!0,bindKeydown:!0,bindRoleForClick:!0};function n(n,e,i,r){return function(s,o,c){if(xt(c,jo))return;const u=c.$normalize(e);!t[u]||To(o,i)||c[u]||s.$watch(c[n],t=>{t=r?!t:!!t,o.setAttribute(e,t)})}}this.config=function(n){t=z(t,n)},this.$get=function(){return{config:n=>t[n],$$watchExpr:n}}}function Mo(t){return t.$$watchExpr("ngDisabled","aria-disabled",Ao,!1)}function Po(t){return t.$$watchExpr("ngShow","aria-hidden",[],!0)}function _o(){return{restrict:"A",require:"?ngMessages",link(t,n,e){xt(e,jo)||n.hasAttribute("aria-live")||n.setAttribute("aria-live","assertive")}}}function No(t,n){return{restrict:"A",compile(e,i){if(xt(i,jo))return;const r=n(i.ngClick);return(n,e,i)=>{To(e,Ao)||(t.config("bindRoleForClick")&&!e.hasAttribute("role")&&e.setAttribute("role","button"),t.config("tabindex")&&!e.hasAttribute("tabindex")&&e.setAttribute("tabindex","0"),!t.config("bindKeydown")||i.ngKeydown||i.ngKeypress||i.ngKeyup||e.addEventListener("keydown",t=>{const e=parseInt(t.key,10);13!==e&&32!==e||(-1!==Ao.indexOf(t.target.nodeName)||t.target.isContentEditable||t.preventDefault(),r(n,{$event:t}))}))}}}}function Io(t){return t.$$watchExpr("ngRequired","aria-required",Ao,!1)}function Do(t){return t.$$watchExpr("ngChecked","aria-checked",Ao,!1)}function qo(t){return t.$$watchExpr("ngValue","aria-checked",Ao,!1)}function Vo(t){return t.$$watchExpr("ngHide","aria-hidden",[],!1)}function Uo(t){return t.$$watchExpr("ngReadonly","aria-readonly",Ao,!1)}function Fo(t){function n(n,e,i,r){return t.config(e)&&!i.getAttribute(n)&&(r||!To(i,Ao))&&("hidden"!==i.getAttribute("type")||"INPUT"!==i.nodeName)}function e(t,n){return!n.getAttribute("role")&&n.getAttribute("type")===t&&!To(n,Ao)}return{restrict:"A",require:"ngModel",priority:200,compile(i,r){if(xt(r,jo))return;const s=function(t){const{type:n}=t,{role:e}=t;return"checkbox"===(n||e)||"menuitemcheckbox"===e?"checkbox":"radio"===(n||e)||"menuitemradio"===e?"radio":"range"===n||"progressbar"===e||"slider"===e?"range":""}(r);return{post(i,r,o,c){const u=n("tabindex","tabindex",r,!1);switch(s){case"radio":case"checkbox":e(s,r)&&r.setAttribute("role",s),n("aria-checked","ariaChecked",r,!1)&&c.$watch("$modelValue","radio"===s?function(){r.setAttribute("aria-checked",(o.value==c.$viewValue).toString())}:function(){r.setAttribute("aria-checked",(!c.$isEmpty(c.$viewValue)).toString())}),u&&r.setAttribute("tabindex",0);break;case"range":if(e(s,r)&&r.setAttribute("role","slider"),t.config("ariaValue")){const t=!r.hasAttribute("aria-valuemin")&&(xt(o,"min")||xt(o,"ngMin")),n=!r.hasAttribute("aria-valuemax")&&(xt(o,"max")||xt(o,"ngMax")),e=!r.hasAttribute("aria-valuenow");t&&o.$observe("min",t=>{r.setAttribute("aria-valuemin",t)}),n&&o.$observe("max",t=>{r.setAttribute("aria-valuemax",t)}),e&&c.$watch("$modelValue",t=>{r.setAttribute("aria-valuenow",t)})}u&&r.setAttribute("tabindex",0)}!xt(o,"ngRequired")&&c.$validators.required&&n("aria-required","ariaRequired",r,!1)&&o.$observe("required",()=>{r.setAttribute("aria-required",(!!o.required).toString())}),n("aria-invalid","ariaInvalid",r,!0)&&c.$watch("$invalid",t=>{r.setAttribute("aria-invalid",(!!t).toString())})}}}}}function Ho(t){return function(n,e,i){xt(i,jo)||!t.config("tabindex")||e.hasAttribute("tabindex")||To(e,Ao)||e.setAttribute("tabindex",0)}}Mo.$inject=[Ln.$aria],Po.$inject=[Ln.$aria],No.$inject=[Ln.$aria,Ln.$parse],Io.$inject=[Ln.$aria],Do.$inject=["$aria"],qo.$inject=[Ln.$aria],Vo.$inject=[Ln.$aria],Uo.$inject=[Ln.$aria],Fo.$inject=[Ln.$aria],Ho.$inject=[Ln.$aria];let Lo=[],zo=!1;function Bo(){const t=Lo;Lo=[],zo=!1;for(let n=0;n<t.length;n++)t[n]()}function Wo(t){Lo.push(t),zo||(zo=!0,("function"==typeof requestAnimationFrame?requestAnimationFrame:setTimeout)(Bo,0))}class Jo{static qt(t,n){let e=0;const i=(r=!0)=>{!r||e>=t.length?n(r):t[e++].done(i)};i()}static Vt(t,n){let e=t.length,i=!0;for(const r of t)r.done(t=>{i=i&&!1!==t,0===--e&&n(i)})}constructor(t){this.Ut=t||{},this.Ft=[],this.Ht=0,this.Lt=null,this.zt=Wo}setHost(t){this.Ut=t||{}}done(t){2===this.Ht?t(!0):this.Ft.push(t)}progress(...t){this.Ut.progress?.(...t)}pause(){this.Ut.pause?.()}resume(){this.Ut.resume?.()}end(){this.Ut.end?.(),this.Bt(!0)}cancel(){this.Ut.cancel?.(),this.Bt(!1)}complete(t=!0){0===this.Ht&&(this.Ht=1,this.zt(()=>this.Bt(t)))}getPromise(){return this.Lt||(this.Lt=new Promise((t,n)=>{this.done(e=>{!1===e?n():t()})})),this.Lt}then(t,n){return this.getPromise().then(t,n)}catch(t){return this.getPromise().catch(t)}finally(t){return this.getPromise().finally(t)}Bt(t){if(2===this.Ht)return;this.Ht=2;const n=this.Ft;for(let e=0;e<n.length;e++)n[e](t);n.length=0}}const Zo="$$animateCss",Go=1e3,Ko={transitionDuration:Kt,transitionDelay:Gt,transitionProperty:Ut+13,animationDuration:Zt,animationDelay:Jt,animationIterationCount:Ht+"IterationCount"},Yo={transitionDuration:Kt,transitionDelay:Gt,animationDuration:Zt,animationDelay:Jt};function Xo(t,n){return[n?Jt:Gt,`${t}s`]}function Qo(t,n){const e=Object.create(null),i=window.getComputedStyle(t)||{};return Ct(n).forEach(([t,n])=>{let r=i[n];if(r){const n=r.charAt(0);("-"===n||"+"===n||n>=0)&&(r=function(t){let n=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,n=n?Math.max(t,n):t}),n}(r)),0===r&&(r=null),e[t]=r}}),e}function tc(t){return 0===t||!T(t)}function nc(t,n){let e=Ut,i=`${t}s`;return n?e+=zt:i+=" linear all",[e,i]}function ec(t,n,e){e.forEach(e=>{t[e]=x(t[e])?t[e]:n.style.getPropertyValue(e)})}function ic(){let t;this.$get=["$$animateCache","$$rAFScheduler",function(n,e){const i=function(t,n){n.addClass&&(t.classList.add(...n.addClass.trim().split(" ")),n.addClass=null),n.removeClass&&(t.classList.remove(...n.removeClass.trim().split(" ")),n.removeClass=null)},r=[];function s(t){r.push(t),e.Wt(()=>{n.flush();const t=document.body.offsetWidth+1;for(let n=0;n<r.length;n++)r[n](t);r.length=0})}function o(t,e,i){const r=function(t,e,i,r){let s=n.get(e);s||(s=Qo(t,r),"infinite"===s.animationIterationCount&&(s.animationIterationCount=1));const o=i||s.transitionDuration>0||s.animationDuration>0;return n.put(e,s,o),s}(t,e,i,Ko),s=r.animationDelay,o=r.transitionDelay;return r.maxDelay=s&&o?Math.max(s,o):s||o,r.maxDuration=Math.max(r.animationDuration*r.animationIterationCount,r.transitionDuration),r}return function(e,r){let c,u=r||{$$skipPreparationClasses:!1};u.$$prepared||(u=Qt(structuredClone(u)));const a={},h=e;if(!h||!h.parentNode)return z();const l=[],f=function(t){const n={};return t&&(t.to||t.from)&&(n.to=t.to,n.from=t.from),n}(u);let d,$,m,p,g,w,v,b,y,k;const E=[];if(0===u.duration)return z();const S=u.event&&O(u.event)?u.event.join(" "):u.event,x=S&&u.structural;let C="",j="";x?C=Yt(S,"ng-",!0):S&&(C=S),u.addClass&&(j+=Yt(u.addClass,Nt)),u.removeClass&&(j.length&&(j+=" "),j+=Yt(u.removeClass,It)),u.applyClassesEarly&&j.length&&i(e,u);let A=[C,j].join(" ").trim();const R=f.to&&Object.keys(f.to).length>0;if(!((u.keyframeStyle||"").length>0||R||A))return z();let M,P,_=n.cacheKey(h,S,u.addClass,u.removeClass);if(n.containsCachedAnimationWithoutDuration(_))return A=null,z();if(u.stagger>0){const t=parseFloat(u.stagger);M={transitionDelay:t,animationDelay:t,transitionDuration:0,animationDuration:0}}else M=function(t,e,i,r){let s;const o=`stagger-${i}`;if(n.count(i)>0&&(s=n.get(o),!s)){const i=Yt(e,"-stagger");t.className+=` ${i}`,s=Qo(t,r),s.animationDuration=Math.max(s.animationDuration,0),s.transitionDuration=Math.max(s.transitionDuration,0),t.classList.remove(i),n.put(o,s,!0)}return s||{}}(h,A,_,Yo);if(u.$$skipPreparationClasses||e.classList.add(...A.split(" ").filter(t=>""!==t)),u.transitionStyle){const t=[Ut,u.transitionStyle];on(h,t),l.push(t)}if(u.duration>=0){P=h.style[Ut].length>0;const t=nc(u.duration,P);on(h,t),l.push(t)}if(u.keyframeStyle){const t=[Ht,u.keyframeStyle];on(h,t),l.push(t)}const N=M?u.staggerIndex>=0?u.staggerIndex:n.count(_):0,I=0===N;I&&!u.skipBlocking&&rc(h,9999);let D=o(h,_,!x),q=D.maxDelay;w=Math.max(q,0),b=D.maxDuration;const V={};return V.hasTransitions=D.transitionDuration>0,V.hasAnimations=D.animationDuration>0,V.hasTransitionAll=V.hasTransitions&&"all"===D.transitionProperty,V.applyTransitionDuration=R&&(V.hasTransitions&&!V.hasTransitionAll||V.hasAnimations&&!V.hasTransitions),V.applyAnimationDuration=u.duration&&V.hasAnimations,V.applyTransitionDelay=tc(u.delay)&&(V.applyTransitionDuration||V.hasTransitions),V.applyAnimationDelay=tc(u.delay)&&V.hasAnimations,V.recalculateTimingStyles=j.length>0,(V.applyTransitionDuration||V.applyAnimationDuration)&&(b=u.duration?parseFloat(u.duration):b,V.applyTransitionDuration&&(V.hasTransitions=!0,D.transitionDuration=b,P=h.style[Ut+13].length>0,l.push(nc(b,P))),V.applyAnimationDuration&&(V.hasAnimations=!0,D.animationDuration=b,l.push([Zt,`${b}s`]))),0!==b||V.recalculateTimingStyles?(t=Yt(A,Dt),T(u.delay)||("boolean"!=typeof u.delay&&(c=parseFloat(u.delay),w=Math.max(c,0)),V.applyTransitionDelay&&l.push(Xo(c)),V.applyAnimationDelay&&l.push(Xo(c,!0))),T(u.duration)&&D.transitionDuration>0&&(V.recalculateTimingStyles=V.recalculateTimingStyles||I),v=w*Go,y=b*Go,u.skipBlocking||(V.blockTransition=D.transitionDuration>0,V.blockKeyframeAnimation=D.animationDuration>0&&M.animationDelay>0&&0===M.animationDuration),u.from&&(u.cleanupStyles&&ec(a,h,Object.keys(u.from)),nn(e,u)),V.blockTransition||V.blockKeyframeAnimation?L(b):u.skipBlocking||rc(h,!1),{$$willAnimate:!0,end:U,start(){if(!d)return g={end:U,cancel:F,resume:null,pause:null},p=new Jo(g),s(W),p}}):z();function U(){H()}function F(){H(!0)}function H(n){if(d||m&&$)return;d=!0,$=!1,A&&!u.$$skipPreparationClasses&&e.classList.remove(...A.split(" ")),t=Yt(A,Dt),t&&e.classList.remove(...t.split(" ")),sn(h,!1),rc(h,!1),l.forEach(t=>{h.style[t[0]]=""}),i(e,u),tn(e,u),Ot(a).length&&Ct(a).forEach(([t,n])=>{n?h.style.setProperty(t,n):h.style.removeProperty(t)}),u.onDone&&u.onDone(),E&&E.length&&E.forEach(t=>e.removeEventListener(t,B));const r=xn(e,Zo);r&&(clearTimeout(r[0].timer),wn(e,Zo)),p&&p.complete(!n)}function L(t){V.blockTransition&&rc(h,t),V.blockKeyframeAnimation&&sn(h,!!t)}function z(){return p=new Jo({end:U,cancel:F}),s(()=>{}),H(),{$$willAnimate:!1,start:()=>p,end:U}}function B(t){t.stopPropagation();const n=t.originalEvent||t;if(n.target!==h)return;const e=n.$manualTimeStamp||Date.now(),i=parseFloat(n.elapsedTime.toFixed(3));Math.max(e-k,0)>=v&&i>=b&&(m=!0,H())}function W(){if(d)return;if(!h.parentNode)return void H();const r=function(t){if(m)$&&t&&($=!1,H());else if($=!t,D.animationDuration){const t=sn(h,$);$?l.push(t):function(t,n){const e=t.indexOf(n);n>=0&&t.splice(e,1)}(l,t)}},s=N>0&&(D.transitionDuration&&0===M.transitionDuration||D.animationDuration&&0===M.animationDuration)&&Math.max(M.animationDelay,M.transitionDelay);function f(){if(d)return;if(L(!1),l.forEach(t=>{const n=t[0];h.style[n]=t[1]}),i(e,u),e.classList.add(...t.split(" ").filter(t=>""!==t)),V.recalculateTimingStyles){if(_=n.cacheKey(h,S,u.addClass,u.removeClass),D=o(h,_,!1),q=D.maxDelay,w=Math.max(q,0),b=D.maxDuration,0===b)return void H();V.hasTransitions=D.transitionDuration>0,V.hasAnimations=D.animationDuration>0}if(V.applyAnimationDelay&&(q="boolean"!=typeof u.delay&&tc(u.delay)?parseFloat(u.delay):q,w=Math.max(q,0),D.animationDelay=q,c=Xo(q,!0),l.push(c),h.style[c[0]]=c[1]),v=w*Go,y=b*Go,u.easing){let t;const n=u.easing;V.hasTransitions&&(t=Ut+Wt,l.push([t,n]),h.style[t]=n),V.hasAnimations&&(t=Ht+Wt,l.push([t,n]),h.style[t]=n)}D.transitionDuration&&E.push(Ft),D.animationDuration&&E.push(Lt),k=Date.now();const r=v+1.5*y,s=k+r,f=xn(e,Zo)||[];let $=!0;if(f.length){const t=f[0];$=s>t.expectedEndTime,$?clearTimeout(t.timer):f.push(H)}if($){const t=setTimeout(p,r,!1);f[0]={timer:t,expectedEndTime:s},f.push(H),Sn(e,Zo,f)}E.length&&E.forEach(t=>{e.addEventListener(t,B)}),u.to&&(u.cleanupStyles&&ec(a,h,Object.keys(u.to)),en(e,u))}function p(){const t=xn(e,Zo);if(t){for(let n=1;n<t.length;n++)t[n]();wn(e,Zo)}}s?setTimeout(f,Math.floor(s*N*Go),!1):f(),g.resume=function(){r(!0)},g.pause=function(){r(!1)}}}}]}function rc(t,n){const e=n?`-${n}s`:"";return on(t,[Gt,e]),[Gt,e]}const sc="data-ng-animate",oc="$ngAnimatePin";function cc(t){const n=this.rules={skip:[],cancel:[],join:[]};function e(t){return{addClass:t.addClass,removeClass:t.removeClass,from:t.from,to:t.to}}function i(t,n){if(t&&n){const e=function(t){if(!t)return null;const n=t.split(" "),e=Object.create(null);return n.forEach(t=>{e[t]=!0}),e}(n);return t.split(" ").some(t=>e[t])}}function r(t,e,i){return n[t].some(t=>t(e,i))}function s(t,n){const e=(t.addClass||"").length>0,i=(t.removeClass||"").length>0;return n?e&&i:e||i}n.join.push(t=>!t.structural&&s(t)),n.skip.push(t=>!t.structural&&!s(t)),n.skip.push((t,n)=>"leave"===n.event&&t.structural),n.skip.push((t,n)=>n.structural&&2===n.state&&!t.structural),n.cancel.push((t,n)=>n.structural&&t.structural),n.cancel.push((t,n)=>2===n.state&&t.structural),n.cancel.push((t,n)=>{if(n.structural)return!1;const e=t.addClass,r=t.removeClass,s=n.addClass,o=n.removeClass;return!(S(e)&&S(r)||S(s)&&S(o))&&(i(e,o)||i(r,s))}),this.$get=[Ln.$rootScope,Ln.$injector,Ln.$$animation,function(n,i,o){const c=new Map,u=new Map,a=Object.create(null),h=t.customFilter(),l=t.classNameFilter(),d=function(){return!0},$=h||d,m=l?function(t,n){const e=[t.getAttribute("class"),n.addClass,n.removeClass].join(" ");return l.test(e)}:d,p=function(t,n){n.addClass&&(t.classList.add(...n.addClass.trim().split(" ")),n.addClass=null),n.removeClass&&(t.classList.remove(...n.removeClass.trim().split(" ")),n.removeClass=null)};function g(t,n){return rn(t,n,{})}function w(t,n,e){const i=Xt(n);return t.filter(t=>!(t.node===i&&(!e||t.callback===e)))}function v(t,n){"close"!==t||n.parentNode||b.off(n)}const b={on(t,n,e){const i=Xt(n);a[t]=a[t]||[],a[t].push({node:i,callback:e}),n.addEventListener("$destroy",()=>{c.get(i)||b.off(t,n,e)})},off(t,n,e){if(1===arguments.length&&!j(arguments[0])){n=arguments[0];for(const t in a)a[t]=w(a[t],n);return}const i=a[t];i&&(a[t]=1===arguments.length?null:w(i,n,e))},pin(t,n){Sn(t,oc,n)},push:(t,h,l,d)=>((l=l||{}).domOperation=d,function(t,h,l){let d=l,w=O(t)?t.filter(t=>"#comment"!==t.nodeName)[0]:t;const b=w,E=b&&b.parentNode;d=Qt(d);const A=new Jo,T=function(){let t=!1;return function(e){t?e():n.$postUpdate(()=>{t=!0,e()})}}();if(O(d.addClass)&&(d.addClass=d.addClass.join(" ")),d.addClass&&!j(d.addClass)&&(d.addClass=null),O(d.removeClass)&&(d.removeClass=d.removeClass.join(" ")),d.removeClass&&!j(d.removeClass)&&(d.removeClass=null),d.from&&!C(d.from)&&(d.from=null),d.to&&!C(d.to)&&(d.to=null),!b||!$(b,h,l)||!m(b,d))return V(),A;const R=["enter","move","leave"].indexOf(h)>=0;let M=document.hidden||u.get(b);const P=!M&&c.get(b)||{},_=!!P.state;if(M||_&&1===P.state||(M=!function(t,n){const e=document.body,r=i.get("$rootElement");let s,o=t===e||"HTML"===t.nodeName,a=t===r,h=!1,l=u.get(t),d=En(t,oc);for(d&&(n=d);n&&(a||(a=n===r),n.nodeType===f);){const t=c.get(n)||{};if(!h){const e=u.get(n);if(!0===e&&!1!==l){l=!0;break}!1===e&&(l=!1),h=t.structural}if(S(s)||!0===s){const t=En(n,Vt);x(t)&&(s=t)}if(h&&!1===s)break;if(o||(o=n===e),o&&a)break;n=a||(d=En(n,oc),!d)?n.parentNode:d}return(!h||s)&&!0!==l&&a&&o}(b,E)),M)return document.hidden&&q(A,h,"start",e(d)),V(),document.hidden&&q(A,h,"close",e(d)),A;R&&function(t){t.querySelectorAll(`[${sc}]`).forEach(t=>{const n=parseInt(t.getAttribute(sc),10),e=c.get(t);if(e)switch(n){case 2:e.runner.end();case 1:c.delete(t)}})}(b);const N={structural:R,element:w,event:h,addClass:d.addClass,removeClass:d.removeClass,close:V,options:d,runner:A};if(_){if(r("skip",N,P))return 2===P.state?(V(),A):(rn(w,P,N),P.runner);if(r("cancel",N,P))if(2===P.state)P.runner.end();else{if(!P.structural)return rn(w,P,N),P.runner;P.close()}else if(r("join",N,P)){if(2!==P.state)return function(t,n,e){let i="";n&&(i=Yt(n,"ng-",!0)),e.addClass&&(i=cn(i,Yt(e.addClass,Nt))),e.removeClass&&(i=cn(i,Yt(e.removeClass,It))),i.length&&(e.preparationClasses=i,t.className+=` ${i}`)}(w,R?h:null,d),h=N.event=P.event,d=rn(w,P,N),P.runner;g(w,N)}}else g(w,N);let I=N.structural;if(I||(I="animate"===N.event&&Object.keys(N.options.to||{}).length>0||s(N)),!I)return V(),y(b),A;const D=(P.counter||0)+1;return N.counter=D,k(b,1,N),n.$postUpdate(()=>{w=function(t){return t instanceof NodeList?Array.from(t).filter(t=>t.nodeType===f):t.nodeType===f?t:void 0}(t);let n=c.get(b);const i=!n;n=n||{};const r=(w.parentElement||[])&&("animate"===n.event||n.structural||s(n));if(i||n.counter!==D||!r)return i&&(p(w,d),tn(w,d)),(i||R&&n.event!==h)&&(d.domOperation(),A.end()),void(r||y(b));h=!n.structural&&s(n,!0)?"setClass":n.event,k(b,2);const u=o(w,h,n.options);A.setHost(u),q(A,h,"start",e(d)),u.done(t=>{V(!t),c.get(b)?.counter===D&&y(b),q(A,h,"close",e(d))})}),setTimeout(n.$flushQueue,0),A;function q(t,n,e,i){T(()=>{const t=function(t,n,e){const i=[],r=a[e];return r&&r.forEach(r=>{(r.node.contains(n)||"leave"===e&&r.node.contains(t))&&i.push(r.callback)}),i}(E,b,n);t.length?(t.forEach(t=>{t(w,e,i)}),v(e,b)):v(e,b)}),t.progress(n,e,i)}function V(t){!function(t,n){n.preparationClasses&&(n.preparationClasses.split(" ").forEach(n=>t.classList.remove(n)),n.preparationClasses=null),n.activeClasses&&(n.activeClasses.split(" ").forEach(n=>t.classList.remove(n)),n.activeClasses=null)}(w,d),p(w,d),tn(w,d),d.domOperation(),A.complete(!t)}}(t,h,l))};return b;function y(t){t.removeAttribute(sc),c.delete(t)}function k(t,n,e){(e=e||{}).state=n,t.setAttribute(sc,n);const i=c.get(t),r=i?z(i,e):e;c.set(t,r)}}]}function uc(t){this.$get=[Ln.$injector,function(n){return function(e,i,r,s){let o=!1;3===arguments.length&&C(r)&&(s=r,r=null),s=Qt(s),r||(r=e.getAttribute("class")||"",s.addClass&&(r+=` ${s.addClass}`),s.removeClass&&(r+=` ${s.removeClass}`));const c=s.addClass,u=s.removeClass,a=function(e){e=O(e)?e:e.split(" ");const i=[],r={};for(let s=0;s<e.length;s++){const o=e[s],c=t.$$registeredAnimations[o];c&&!r[o]&&(i.push(n.get(c)),r[o]=!0)}return i}(r);let h,l,f;if(a.length){let t,n;"leave"===i?(n="leave",t="afterLeave"):(n=`before${i.charAt(0).toUpperCase()}${i.substring(1)}`,t=i),"enter"!==i&&"move"!==i&&(h=p(e,i,s,a,n)),l=p(e,i,s,a,t)}if(h||l)return{$$willAnimate:!0,end:()=>(f?f.end():($(),f=new Jo,f.complete(!0)),f),start(){if(f)return f;f=new Jo;const t=[];if(h){const n=new Jo({end(t){(h(t)||(()=>{}))()},cancel(){(h(!0)||(()=>{}))()}});t.push(n)}if(t.length){const n=new Jo({end(t){d(),t(!0)},cancel(){d()}});t.push(n)}else d();if(l){const n=new Jo({end(t){(l(t)||(()=>{}))()},cancel(){(l(!0)||(()=>{}))()}});t.push(n)}return f.setHost({end(){e()},cancel(){e(!0)}}),Jo.qt(t,n),f;function n(t){$(),f.complete(t)}function e(t){o||n(t)}}};function d(){s.domOperation(),function(t,n){n.addClass&&(t.classList.add(...n.addClass.trim().split(" ")),n.addClass=null),n.removeClass&&(t.classList.remove(...n.removeClass.trim().split(" ")),n.removeClass=null)}(e,s)}function $(){o=!0,d(),tn(e,s)}function m(t,n,e,i,r){const s=[];return i.forEach(i=>{const o=i[r];o&&s.push(()=>{const i=new Jo({end(){a()},cancel(){a(!0)}}),r=function(t,n,e,i,r){let s;switch(e){case"animate":s=[n,i.from,i.to,r];break;case"setClass":s=[n,c,u,r];break;case"addClass":s=[n,c,r];break;case"removeClass":s=[n,u,r];break;default:s=[n,r]}s.push(i);let o=t.apply(t,s);if(o)if(N(o.start)&&(o=o.start()),o instanceof Jo)o.done(r);else if(N(o))return o;return()=>{}}(o,t,n,e,t=>{a(!1===t)});let s=!1;const a=function(t){s||(s=!0,(r||(()=>{}))(t),i.complete(!t))};return i})}),s}function p(t,n,e,i,r){let s=m(t,n,e,i,r);if(0===s.length){let n,o;"beforeSetClass"===r?(n=m(t,"removeClass",e,i,"beforeRemoveClass"),o=m(t,"addClass",e,i,"beforeAddClass")):"setClass"===r&&(n=m(t,"removeClass",e,i,"removeClass"),o=m(t,"addClass",e,i,"addClass")),n&&(s=s.concat(n)),o&&(s=s.concat(o))}if(0!==s.length)return function(t){const n=[];return s.length&&s.forEach(t=>{n.push(t())}),n.length?Jo.Vt(n,t):t(),function(t){n.forEach(n=>{t?n.cancel():n.end()})}}}}}]}cc.$inject=["$animateProvider"],uc.$inject=[`${Ln.$animate}Provider`];const ac="$$animationRunner",hc="$$animatePrepareClasses";function lc(){const t="ng-animate-ref",n=this.drivers=[];function e(t){return xn(t,ac)}this.$get=[Ln.$rootScope,Ln.$injector,Ln.$$rAFScheduler,Ln.$$animateCache,function(i,r,s,o){const c=[];return function(u,a,h){h=Qt(h);const l=["enter","move","leave"].indexOf(a)>=0,f=new Jo({end(){p()},cancel(){p(!0)}});if(!n.length)return p(),f;let d=bt(u.getAttribute("class"),bt(h.addClass,h.removeClass)),{tempClasses:$}=h;return $&&(d+=` ${$}`,h.tempClasses=null),l&&Sn(u,hc,`ng-${a}-prepare`),function(t,n){Sn(t,ac,n)}(u,f),c.push({element:u,classes:d,event:a,structural:l,options:h,beforeStart:function(){$=($?`${$} `:"")+qt,u.className+=` ${$}`;let t=xn(u,hc);t&&(u.classList.remove(t),t=null)},close:p}),u.addEventListener("$destroy",function(){("leave"!==a||!h.$$domOperationFired)&&e(u)?.end()}),c.length>1||i.$postUpdate(()=>{const i=[];c.forEach(t=>{e(t.element)?i.push(t):t.close()}),c.length=0;const u=function(n){const e=[],i={};n.forEach((n,r)=>{const{element:s,event:o}=n,c=s,u=["enter","move"].indexOf(o)>=0,a=n.structural?function(n){const e=`[${t}]`,i=n.hasAttribute(t)?[n]:n.querySelectorAll(e),r=[];return i.forEach(n=>{const e=n.getAttribute(t);e&&e.length&&r.push(n)}),r}(c):[];if(a.length){const n=u?"to":"from";a.forEach(e=>{const s=e.getAttribute(t);i[s]=i[s]||{},i[s][n]={animationID:r,element:e}})}else e.push(n)});const r={},s={};return Object.values(i).forEach(t=>{const{from:i}=t,{to:o}=t;if(!i||!o){const t=i?i.animationID:o.animationID,s=t.toString();return void(r[s]||(r[s]=!0,e.push(n[t])))}const c=n[i.animationID],u=n[o.animationID],a=i.animationID.toString();if(!s[a]){const t=s[a]={structural:!0,beforeStart(){c.beforeStart(),u.beforeStart()},close(){c.close(),u.close()},classes:m(c.classes,u.classes),from:c,to:u,anchors:[]};t.classes.length?e.push(t):(e.push(c),e.push(u))}s[a].anchors.push({out:i.element,in:o.element})}),e}(i),a=[];u.forEach(t=>{const i=t.from?t.from.element:t.element;let s=h.addClass;s=(s?`${s} `:"")+qt;const c=o.cacheKey(i,t.event,s,h.removeClass);a.push({element:i,domNode:i,fn:function(){let i;const s=t.close;if(o.containsCachedAnimationWithoutDuration(c))s();else{if(t.beforeStart(),e(t.anchors?t.from.element||t.to.element:t.element)){const e=function(t){for(let e=n.length-1;e>=0;e--){const i=n[e],s=r.get(i)(t);if(s)return s}}(t);e&&(i=e.start)}if(i){const n=i();n.done(t=>{s(!t)}),function(t,n){function i(t){e(t).setHost(n)}t.from&&t.to?(i(t.from.element),i(t.to.element)):i(t.element)}(t,n)}else s()}}})});const l=function(t){const n={children:[]};let e;const i=new Map;for(e=0;e<t.length;e++){const n=t[e];i.set(n.domNode,t[e]={domNode:n.domNode,element:n.element,fn:n.fn,children:[]})}for(e=0;e<t.length;e++)r(t[e]);return function(t){const n=[],i=[];for(e=0;e<t.children.length;e++)i.push(t.children[e]);let r=i.length,s=0,o=[];for(let t=0;t<i.length;t++){const e=i[t];r<=0&&(r=s,s=0,n.push(o),o=[]),o.push(e),e.children.forEach(t=>{s++,i.push(t)}),r--}return o.length&&n.push(o),n}(n);function r(t){if(t.processed)return t;t.processed=!0;const e=t.domNode;let s,{parentNode:o}=e;for(i.set(e,t);o;){if(s=i.get(o),s){s.processed||(s=r(s));break}o=o.parentNode}return(s||n).children.push(t),t}}(a);for(let t=0;t<l.length;t++){const n=l[t];for(let e=0;e<n.length;e++){const i=n[e],{element:r}=i;if(l[t][e]=i.fn,0===t){wn(r,hc);continue}const s=xn(r,hc);s&&r.classList.add(s)}}s(l)}),f;function m(t,n){t=t.split(" "),n=n.split(" ");const e=[];for(let i=0;i<t.length;i++){const r=t[i];if("ng-"!==r.substring(0,3))for(let t=0;t<n.length;t++)if(r===n[t]){e.push(r);break}}return e.join(" ")}function p(t){(function(t,n){if(yn(t)){const e=vn(t,!1),i=e?.data;i&&xt(i,pn(n))&&delete i[pn(n)]}})(u,ac),function(t,n){n.addClass&&(t.classList.add(...n.addClass.trim().split(" ")),n.addClass=null),n.removeClass&&(t.classList.remove(...n.removeClass.trim().split(" ")),n.removeClass=null)}(u,h),tn(u,h),h.domOperation(),$&&$.split(" ").forEach(t=>u.classList.remove(t)),f.complete(!t)}}}]}class fc{constructor(){this.Jt=[],this.Zt=null}Gt(){this.Jt.length&&(this.Jt.shift().forEach(t=>t()),this.Zt||(this.Zt=window.requestAnimationFrame(()=>{this.Zt=null,this.Gt()})))}$get(){const t=t=>{this.Jt=this.Jt.concat(t),this.Gt()};return t.Jt=this.Jt,t.Wt=t=>{null!==this.Zt&&(window.cancelAnimationFrame(this.Zt),this.Zt=null),this.Zt=window.requestAnimationFrame(()=>{this.Zt=null,t(),this.Gt()})},t}}const dc="$animId";let $c=0;const mc=new Map;function pc(){return{cacheKey(t,n,e,i){const{parentNode:r}=t,s=[r[dc]??(r[dc]=++$c),n,t.getAttribute("class")];return e&&s.push(e),i&&s.push(i),s.join(" ")},containsCachedAnimationWithoutDuration(t){const n=mc.get(t);return!!n&&!n.isValid},flush(){mc.clear()},count:t=>mc.get(t)?.total??0,get:t=>mc.get(t)?.value,put(t,n,e){const i=mc.get(t);i?(i.total++,i.value=n):mc.set(t,{total:1,value:n,isValid:e})}}}function gc(){this.$get=[pc]}const wc="ng-animate-shim",vc="ng-anchor-out";function bc(t){t.drivers.push("$$animateCssDriver"),this.$get=["$animateCss","$rootElement",function(t,n){const e=document.body,i=n,r=(s=i).parentNode&&11===s.parentNode.nodeType||e.contains(i)?i:e;var s;return function(n){return n.from&&n.to?function(n,i,s){const c=o(n),u=o(i),a=[];return s.forEach(n=>{const i=function(n,i){const s=n.cloneNode(!0),o=yc(l(s));let c;n[0].classList.add(wc),i[0].classList.add(wc),s.classList.add("ng-anchor"),r.append(s);const u=function(){const e=t(s,{addClass:vc,delay:!0,from:h(n)});return e.$$willAnimate?e:null}();if(!u&&(c=f(),!c))return d();const a=u||c;return{start(){const t=new Jo({end:e,cancel:e});let n=a.start();return n.done(()=>{if(n=null,!c&&(c=f(),c))return n=c.start(),n.done(()=>{n=null,d(),t.complete()}),n;d(),t.complete()}),t;function e(){n&&n.end()}}};function h(t){const n={},i=t.getBoundingClientRect();return["width","height","top","left"].forEach(t=>{let r=i[t];switch(t){case"top":r+=e.scrollTop;break;case"left":r+=e.scrollLeft}n[t]=`${Math.floor(r)}px`}),n}function l(t){return t.getAttribute("class")||""}function f(){const n=yc(l(i)),e=kc(n,o),r=kc(o,n),c=t(s,{to:h(i),addClass:`ng-anchor-in ${e}`,removeClass:`${vc} ${r}`,delay:!0});return c.$$willAnimate?c:null}function d(){s.remove(),n[0].classList.remove(wc),i[0].classList.remove(wc)}}(n.out,n.in);i&&a.push(i)}),c||u||0!==a.length?{start(){const t=[];c&&t.push(c.start()),u&&t.push(u.start()),a.forEach(n=>{t.push(n.start())});const n=new Jo({end:e,cancel:e});return Jo.Vt(t,t=>{n.complete(t)}),n;function e(){t.forEach(t=>{t.end()})}}}:void 0}(n.from,n.to,n.anchors):o(n)};function o(n){const e=n.options||{};n.structural&&(e.event=n.event,e.structural=!0,e.applyClassesEarly=!0,"leave"===n.event&&(e.onDone=e.domOperation)),e.preparationClasses&&(e.event=cn(e.event,e.preparationClasses));const i=t(n.element,e);return i.$$willAnimate?i:null}}]}function yc(t){return t.replace(/\bng-\S+\b/g,"")}function kc(t,n){return j(t)&&(t=t.split(" ")),j(n)&&(n=n.split(" ")),t.filter(t=>-1===n.indexOf(t)).join(" ")}function Ec(t){t.drivers.push("$$animateJsDriver"),this.$get=["$$animateJs",function(t){return function(t){if(t.from&&t.to){const e=n(t.from),i=n(t.to);if(!e&&!i)return;return{start(){const t=[];e&&t.push(e.start()),i&&t.push(i.start()),Jo.Vt(t,function(t){n.complete(t)});const n=new Jo({end:r(),cancel:r()});return n;function r(){return function(){t.forEach(t=>{t.end()})}}}}}return n(t)};function n(n){const{element:e,event:i,options:r,classes:s}=n;return t(e,i,s,r)}}]}function Sc(t){return{restrict:"A",transclude:"element",terminal:!0,priority:550,link(n,e,i,r,s){let o,c;n.$watch(i.ngAnimateSwap||i.for,n=>{o&&t.leave(o),c&&(c.$destroy(),c=null),n&&s((n,i)=>{o=n,c=i,t.enter(n,null,e)})})}}}function xc(t){return{link(n,e,i){const r=i.ngAnimateChildren;function s(t){Sn(e,Vt,t="on"===t||"true"===t)}j(r)&&0===r.length?Sn(e,Vt,!0):(s(t(r)(n)),i.$observe("ngAnimateChildren",s))}}}function Oc(t,n){if(t===n)return!0;if(null===t||null===n)return!1;if(Number.isNaN(t)&&Number.isNaN(n))return!0;const e=typeof t;if(e!==typeof n||"object"!==e)return!1;const i=[t,n];if(i.every(O))return function(t,n){if(t.length!==n.length)return!1;for(let e=0;e<t.length;e++)if(!Oc(t[e],n[e]))return!1;return!0}(t,n);if(i.every(P))return t.getTime()===n.getTime();if(i.every(I))return t.toString()===n.toString();if(i.every(N))return!0;if([N,O,P,I].some(t=>!!t(i)))return!1;const r={};for(const e in t){if(!Oc(t[e],n[e]))return!1;r[e]=!0}for(const t in n)if(!r[t])return!1;return!0}function Cc(t,n){const e=Object.create(t);return n&&Object.assign(e,n),e}function jc(t,n){const e=t.indexOf(n);return-1!==e&&t.splice(e,1),t}function Ac(t,...n){const e=Object.assign({},...n.reverse());return Object.assign(e,Tc(t||{},Object.keys(e)))}function Tc(t,n){const e={};for(const i in t)-1!==n.indexOf(i)&&(e[i]=t[i]);return e}function Rc(t,n){return Object.keys(t).filter(t=>!n.includes(t)).reduce((n,e)=>(n[e]=t[e],n),{})}function Mc(t,n){const e=O(t),i=e?[]:{},r=e?t=>i.push(t):(t,n)=>i[n]=t;return Ct(t).forEach(([t,e])=>{n(e,t)&&r(e,t)}),i}function Pc(t,n){let e;return Ct(t).forEach(([t,i])=>{e||n(i,t)&&(e=i)}),e}function _c(t,n,e){return e=e||(O(t)?[]:{}),Ct(t).forEach(([t,i])=>e[t]=n(i,t)),e}bc.$inject=["$$animationProvider"],Ec.$inject=["$$animationProvider"],Sc.$inject=[Ln.$animate],xc.$inject=[Ln.$interpolate];const Nc=(t,n)=>t&&n,Ic=(t,n)=>t||n,Dc=(t,n)=>t.concat(n);function qc(t,n){return t.push(n),t}const Vc=(t,n)=>t.includes(n)?t:qc(t,n),Uc=t=>t.reduce(Dc,[]);function Fc(...t){if(0===t.length)return[];const n=t.reduce((t,n)=>Math.min(n.length,t),Number.MAX_SAFE_INTEGER),e=[];for(let i=0;i<n;i++)switch(t.length){case 1:e.push([t[0][i]]);break;case 2:e.push([t[0][i],t[1][i]]);break;case 3:e.push([t[0][i],t[1][i],t[2][i]]);break;case 4:e.push([t[0][i],t[1][i],t[2][i],t[3][i]]);break;default:e.push(t.map(t=>t[i]))}return e}function Hc(t,n){let e,i;if(O(n)&&([e,i]=n),!j(e))throw new Error("invalid parameters to applyPairs");return t[e]=i,t}function Lc(t){return t.length>0?t[t.length-1]:void 0}function zc(t,n){return n&&Object.keys(n).forEach(t=>delete n[t]),n||(n={}),Object.assign(n,t)}const Bc=t=>t.catch(()=>0)&&t,Wc=t=>Bc(Promise.reject(t));function Jc(t){const n=(...e)=>e.length>=t.length?t(...e):(...t)=>n(...e,...t);return n}const Zc=Jc((t,n,e)=>e&&e[t]===n),Gc=t=>{const n=t.split(".");return t=>n.reduce((t,n)=>t&&t[n],t)};function Kc(t){return function(n){return null!=n&&n.constructor===t||n instanceof t}}const Yc=t=>()=>t;function Xc(t){return function(n){for(let e=0;e<t.length;e++)if(t[e][0](n))return t[e][1](n)}}class Qc{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,n){return t===n}$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,n){if(!t)return this;if("auto"===t&&!n)throw new Error("'auto' array mode is for query parameters only");return new tu(this,t)}}function tu(t,n){function e(t){return O(t)?t:x(t)?[t]:[]}function i(t,i){return function(r){if(O(r)&&0===r.length)return r;const s=_c(e(r),t);return!0===i?0===Mc(s,t=>!t).length:function(t){switch(t.length){case 0:return;case 1:return"auto"===n?t[0]:t;default:return t}}(s)}}function r(t){return function(n,i){const r=e(n),s=e(i);if(r.length!==s.length)return!1;for(let n=0;n<r.length;n++)if(!t(r[n],s[n]))return!1;return!0}}["encode","decode","equals","$normalize"].forEach(n=>{const e=t[n].bind(t),s="equals"===n?r:i;this[n]=s(e)}),Object.assign(this,{dynamic:t.dynamic,name:t.name,pattern:t.pattern,inherit:t.inherit,raw:t.raw,is:i(t.is.bind(t),!0),$arrayMode:n})}class nu{constructor(){this.enqueue=!0,this.typeQueue=[],this.defaultTypes=Tc(nu.prototype,["hash","string","query","path","int","bool","date","json","any"]),this.types=Cc(_c(this.defaultTypes,(t,n)=>new Qc(Object.assign({name:n},t))),{})}type(t,n,e){if(!x(n))return this.types[t];if(xt(this.types,t))throw new Error(`A type named '${t}' has already been defined.`);return this.types[t]=new Qc(Object.assign({name:t},n)),e&&(this.typeQueue.push({name:t,def:e}),this.enqueue||this.Kt()),this}Kt(){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 n=t=>T(t)?t:t.toString(),e={encode:n,decode:n,is:Kc(String),pattern:/.*/,equals:(t,n)=>t===n};return Object.assign({},e,t)};Object.assign(nu.prototype,{string:t({}),path:t({pattern:/[^/]*/}),query:t({}),hash:t({inherit:!1}),int:t({decode:t=>parseInt(t,10),is(t){return!T(t)&&this.decode(t.toString())===t},pattern:/-?\d+/}),bool:t({encode:t=>t?1:0,decode:t=>0!==parseInt(t,10),is:Kc(Boolean),pattern:/[01]/}),date:t({encode(t){return this.is(t)?[t.getFullYear(),`0${t.getMonth()+1}`.slice(-2),`0${t.getDate()}`.slice(-2)].join("-"):void 0},decode(t){if(this.is(t))return t;const n=this.capture.exec(t);return n?new Date(n[1],n[2]-1,n[3]):void 0},is:t=>t instanceof Date&&!isNaN(t.valueOf()),equals:(t,n)=>["getFullYear","getMonth","getDate"].reduce((e,i)=>e&&t[i]()===n[i](),!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:Kc(Object),equals:Oc,pattern:/[^/]*/}),any:t({encode:t=>t,decode:t=>t,is:()=>!0,equals:Oc})})}();class eu{constructor(){this.paramTypes=new nu,this.Yt=!1,this.Xt=!0,this.Qt=!1;const t=this.type("path");t.encode=t=>T(t)?t:t.toString().replace(/([~/])/g,t=>({"~":"~~","/":"~2F"}[t])),t.decode=t=>T(t)?t:t.toString().replace(/(~~|~2F)/g,t=>({"~~":"~","~2F":"/"}[t])),this.paramTypes.enqueue=!1,this.paramTypes.Kt()}$get=()=>this;caseInsensitive(t){return this.Yt=x(t)?t:this.Yt}defaultSquashPolicy(t){if(x(t)&&!0!==t&&!1!==t&&!j(t))throw new Error(`Invalid squash policy: ${t}. Valid policies: false, true, arbitrary-string`);return this.Qt=x(t)?t:this.Qt}strictMode(t){return this.Xt=x(t)?t:this.Xt}type(t,n,e){const i=this.paramTypes.type(t,n,e);return x(n)?this:i}}class iu{constructor(t={}){Object.assign(this,t)}$inherit(t,n,e){const i=function(t,n){const e=[];for(const i in t.path){if(t.path[i]!==n.path[i])break;e.push(t.path[i])}return e}(n,e),r={},s=[];for(const t in i){if(!i[t]||!i[t].params)continue;const n=i[t].params,e=Ot(n);if(e.length)for(const t in e)!1===n[e[t]].inherit||s.indexOf(e[t])>=0||(s.push(e[t]),r[e[t]]=this[e[t]])}return Object.assign({},r,t)}}class ru{constructor(t=[],n=null){this.tn=O(t)?[...t]:[],this.nn=Number.isInteger(n)&&n>0?n:null,this.en=[]}onEvict(t){this.en.push(t)}enqueue(t){return this.tn.push(t),null!==this.nn&&this.tn.length>this.nn&&this.evict(),t}evict(){const t=this.tn.shift();return void 0!==t&&this.en.forEach(n=>n(t)),t}dequeue(){return this.tn.length>0?this.tn.shift():void 0}clear(){const t=[...this.tn];return this.tn.length=0,t}size(){return this.tn.length}remove(t){const n=this.tn.indexOf(t);return-1!==n&&this.tn.splice(n,1)[0]}peekTail(){return this.tn[this.tn.length-1]}peekHead(){return this.tn[0]}}class su{constructor(){this.params=new iu,this.lastStartedTransitionId=-1,this.transitionHistory=new ru([],1),this.successfulTransitions=new ru([],1),this.current=void 0,this.$current=void 0,this.transition=void 0}$get=()=>this}function ou(t,n){return n.length<=t?n:`${n.substring(0,t-3)}...`}function cu(t){const n=uu(t),e=n.match(/^(function [^ ]+\([^)]*\))/),i=e?e[1]:n,r=t.name||"";return r&&i.match(/function \(/)?`function ${r}${i.substring(9)}`:i}function uu(t){const n=O(t)?t.slice(-1)[0]:t;return n&&n.toString()||"undefined"}function au(t){const n=[],e=Xc([[S,Yc("undefined")],[A,Yc("null")],[oe,Yc("[Promise]")],[t=>t&&"function"==typeof t.then&&"Rejection"===t.constructor.name,t=>t.rn.toString()],[t=>C(t)&&!O(t)&&t.constructor!==Object&&N(t.toString),t=>t.toString()],[se,cu],[Yc(!0),t=>t]]);function i(t){if(C(t)){if(-1!==n.indexOf(t))return"[circular ref]";n.push(t)}return e(t)}return S(t)?i(t):JSON.stringify(t,(t,n)=>i(n)).replace(/\\"/g,'"')}function hu(t,n){return j(Lc(t))&&j(n)?t.slice(0,-1).concat(Lc(t)+n):qc(t,n)}function lu(t){if(!t)return"ng-view (defunct)";const n=t.creationContext?t.creationContext.name||"(root)":"(none)";return`[ng-view#${t.id}:${t.fqn} (${t.name}@${n})]`}function fu(t){return M(t)?du[t]:du[du[t]]}const du={sn:0,cn:1,un:2,an:3,hn:4},$u=Gc("$id"),mu=Gc("router.$id"),pu=t=>`Transition #${$u(t)}-${mu(t)}`,gu=new class{constructor(){this.ln={},this.approximateDigests=0,this.$logger=window.angular?.$injector?.get(Ln.$log)}dn(t,n){n.length||(n=Ot(du).map(t=>parseInt(t,10)).filter(t=>!isNaN(t)).map(t=>du[t])),n.map(fu).forEach(n=>this.ln[n]=t)}enable(...t){this.dn(!0,t)}disable(...t){this.dn(!1,t)}enabled(t){return!!this.ln[fu(t)]}traceTransitionStart(t){this.enabled(du.cn)&&this.$logger.log(`${pu(t)}: Started -> ${au(t)}`)}traceTransitionIgnored(t){this.enabled(du.cn)&&this.$logger.log(`${pu(t)}: Ignored <> ${au(t)}`)}traceHookInvocation(t,n,e){if(!this.enabled(du.un))return;const i=Gc("traceData.hookType")(e)||"internal",r=Gc("traceData.context.state.name")(e)||Gc("traceData.context")(e)||"unknown",s=cu(t.registeredHook.callback);this.$logger.log(`${pu(n)}: Hook -> ${i} context: ${r}, ${ou(200,s)}`)}traceHookResult(t,n){this.enabled(du.un)&&this.$logger.log(`${pu(n)}: <- Hook returned: ${ou(200,au(t))}`)}traceResolvePath(t,n,e){this.enabled(du.sn)&&this.$logger.log(`${pu(e)}: Resolving ${t} (${n})`)}traceResolvableResolved(t,n){this.enabled(du.sn)&&this.$logger.log(`${pu(n)}: <- Resolved ${t} to: ${ou(200,au(t.data))}`)}traceError(t,n){this.enabled(du.cn)&&this.$logger.log(`${pu(n)}: <- Rejected ${au(n)}, reason: ${t}`)}traceSuccess(t,n){this.enabled(du.cn)&&this.$logger.log(`${pu(n)}: <- Success ${au(n)}, final state: ${t.name}`)}traceUIViewEvent(t,n,e=""){this.enabled(du.an)&&this.$logger.log(`ng-view: ${function(t,n){for(;n.length<30;)n+=" ";return n}(0,t)} ${lu(n)}${e}`)}traceUIViewConfigUpdated(t,n){this.enabled(du.an)&&this.traceUIViewEvent("Updating",t,` with ViewConfig from context='${n}'`)}traceUIViewFill(t,n){this.enabled(du.an)&&this.traceUIViewEvent("Fill",t,` with: ${ou(200,n)}`)}traceViewSync(t){if(!this.enabled(du.hn))return;const n="uiview component fqn",e="view config state (view name)",i=t.map(({ngView:t,viewConfig:i})=>{const r=t&&t.fqn,s=i&&`${i.viewDecl.$context.name}: (${i.viewDecl.$name})`;return{[n]:r,[e]:s}}).sort((t,e)=>(t[n]||"").localeCompare(e[n]||""));this.$logger.table(i)}traceViewServiceEvent(t,n){this.enabled(du.hn)&&this.$logger.log(`VIEWCONFIG: ${t} ${(t=>{const n=t.viewDecl,e=n.$context.name||"(root)";return`[View#${t.$id} from '${e}' state]: target ng-view: '${n.$ngViewName}@${n.$ngViewContextAnchor}'`})(n)}`)}traceViewServiceUIViewEvent(t,n){this.enabled(du.hn)&&this.$logger.log(`VIEWCONFIG: ${t} ${lu(n)}`)}};class wu{constructor(t,n,e,i,r){this.resolved=!1,this.promise=void 0,t instanceof wu?Object.assign(this,t):N(n)?(dt(!T(t),"token argument is required"),this.token=t,this.policy=i,this.resolveFn=n,this.deps=e||[],this.data=r,this.resolved=void 0!==r,this.promise=this.resolved?Promise.resolve(this.data):void 0):C(t)&&t.token&&(xt(t,"resolveFn")||xt(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 n=this.policy||{},e=t&&t.resolvePolicy||{};return{when:n.when||e.when||"LAZY",async:n.async||e.async||"WAIT"}}resolve(t,n){const e=t.findNode(this),i=e&&e.state,r=this.getPolicy(i).async,s=N(r)?r:t=>t;return this.promise=Promise.resolve().then(()=>Promise.all(t.getDependencies(this).map(e=>e.get(t,n)))).then(t=>this.resolveFn.apply(null,t)).then(s).then(t=>(this.data=t,this.resolved=!0,this.resolveFn=null,gu.traceResolvableResolved(this,n),this.data)),this.promise}get(t,n){return this.promise||this.resolve(t,n)}toString(){return`Resolvable(token: ${au(this.token)}, requires: [${this.deps.map(au)}])`}clone(){return new wu(this)}}wu.fromData=(t,n)=>new wu(t,()=>n,null,null,n);class vu{constructor(t,n,e,i){this.$n=t,this.At=n,this.At=n,this.mn=Object.assign({},e||{}),this.D=Object.assign({},i||{}),this.pn=t.matcher.find(n,this.D.relative)}name(){return this.pn&&this.pn.name||this.At}identifier(){return this.At}params(){return this.mn}$state(){return this.pn}state(){return this.pn&&this.pn.self}options(){return this.D}exists(){return!(!this.pn||!this.pn.self)}valid(){return!this.error()}error(){const t=this.options().relative;if(!this.pn&&t){const n=t.name?t.name:t;return`Could not resolve '${this.name()}' from state '${n}'`}return this.pn?this.pn.self?void 0:`State '${this.name()}' has an invalid definition`:`No such state '${this.name()}'`}toString(){return`'${this.name()}'${au(this.params())}`}withState(t){return new vu(this.$n,t,this.mn,this.D)}withParams(t,n=!1){const e=n?t:Object.assign({},this.mn,t);return new vu(this.$n,this.At,e,this.D)}withOptions(t,n=!1){const e=n?t:Object.assign({},this.D,t);return new vu(this.$n,this.At,this.mn,e)}}vu.isDef=t=>t&&t.state&&(j(t.state)||C(t.state)&&j(t.state.name));class bu{constructor(t,n,e,i,r){const s=function(t,n,e){const i=!1===e.reloadOnSearch&&1===n||void 0,r=Pc([e.dynamic,i],x),s=x(r)?{dynamic:r}:{},o=function(t){function n(){return t.value}t=(t=>0===["value","type","squash","array","dynamic"].filter(Object.prototype.hasOwnProperty.bind(t||{})).length)(t)?{value:t}:t,n.gn=!0;const e=se(t.value)?t.value:n;return Object.assign(t,{$$fn:e})}(e&&e.params&&e.params[t]);return Object.assign(s,o)}(t,e,r);n=function(t,n,e,i,r){if(t.type&&n&&"string"!==n.name)throw new Error(`Param '${i}' has two type configurations.`);if(t.type&&n&&"string"===n.name&&r.type(t.type))return r.type(t.type);if(n)return n;if(!t.type){const t=2===e?"any":0===e?"path":1===e?"query":"string";return r.type(t)}return t.type instanceof Qc?t.type:r.type(t.type)}(s,n,e,t,i.paramTypes);const o=function(){const n={array:1===e&&"auto"},i=t.match(/\[\]$/)?{array:!0}:{};return Object.assign(n,i,s).array}();n=o?n.$asArray(o,1===e):n;const c=void 0!==s.value||1===e,u=x(s.dynamic)?!!s.dynamic:!!n.dynamic,a=x(s.raw)?!!s.raw:!!n.raw,h=function(t,n,e){const{squash:i}=t;if(!n||!1===i)return!1;if(!x(i)||T(i))return e;if(!0===i||j(i))return i;throw new Error(`Invalid squash policy: '${i}'. Valid policies: false, true, or arbitrary string`)}(s,c,i.defaultSquashPolicy()),l=function(t,n,e,i){const r=[{from:"",to:e||n?void 0:""},{from:null,to:e||n?void 0:""}],s=O(t.replace)?t.replace:[];j(i)&&s.push({from:i,to:void 0});const o=_c(s,t=>t.from);return Mc(r,t=>-1===o.indexOf(t.from)).concat(s)}(s,o,c,h),f=x(s.inherit)?!!s.inherit:!!n.inherit;this.isOptional=c,this.type=n,this.location=e,this.id=t,this.dynamic=u,this.raw=a,this.squash=h,this.replace=l,this.inherit=f,this.array=o,this.config=s}isDefaultValue(t){return this.isOptional&&this.type.equals(this.value(),t)}value(t){return t=(t=>{for(const n of this.replace)if(n.from===t)return n.to;return t})(t),S(t)?(()=>{if(this.wn)return this.wn.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.gn&&(this.wn={defaultValue:t}),t})():this.type.$normalize(t)}isSearch(){return 1===this.location}validates(t){if((S(t)||null===t)&&this.isOptional)return!0;const n=this.type.$normalize(t);if(!this.type.is(n))return!1;const e=n;return!(j(e)&&!this.type.pattern.exec(e))}toString(){return`{Param:${this.id} ${this.type} squash: '${this.squash}' optional: ${this.isOptional}}`}static values(t,n={}){const e={};for(const i of t)e[i.id]=i.value(n[i.id]);return e}static changed(t,n={},e={}){return t.filter(t=>!t.type.equals(n[t.id],e[t.id]))}static equals(t,n={},e={}){return 0===bu.changed(t,n,e).length}static validates(t,n={}){return t.map(t=>t.validates(n[t.id])).reduce(Nc,!0)}}class yu{constructor(t){if(t instanceof yu){const n=t;this.state=n.state,this.paramSchema=n.paramSchema.slice(),this.paramValues=Object.assign({},n.paramValues),this.resolvables=n.resolvables.slice(),this.views=n.views&&n.views.slice()}else{const n=t;this.state=n,this.paramSchema=n.parameters({inherit:!1}),this.paramValues={},this.resolvables=n.resolvables.map(t=>t.clone())}}clone(){return new yu(this)}applyRawParams(t){return this.paramValues=this.paramSchema.reduce((n,e)=>{return Hc(n,[(i=e).id,i.value(t[i.id])]);var i},{}),this}parameter(t){return Pc(this.paramSchema,Zc("id",t))}equals(t,n){const e=this.diff(t,n);return e&&0===e.length}diff(t,n){if(this.state!==t.state)return!1;const e=n?n(this):this.paramSchema;return bu.changed(e,this.paramValues,t.paramValues)}}class ku{static buildPath(t){const n=t.params();return t.$state().path.map(t=>new yu(t).applyRawParams(n))}static buildToPath(t,n){const e=ku.buildPath(n);return n.options().inherit?ku.inheritParams(t,e,Object.keys(n.params())):e}static applyViewConfigs(t,n,e){n.filter(t=>e.includes(t.state)).forEach(e=>{const i=Object.values(e.state.views||{}),r=ku.subPath(n,t=>t===e),s=i.map(n=>t.createViewConfig(r,n));e.views=s.reduce(Dc,[])})}static inheritParams(t,n,e=[]){const i=t.map(t=>t.paramSchema).reduce(Dc,[]).filter(t=>!t.inherit).map(t=>t.id);return n.map(function(n){let r=Object.assign({},n&&n.paramValues);const s=Tc(r,e);r=Rc(r,e);const o=Rc(function(t,n){const e=Pc(t,Zc("state",n));return Object.assign({},e&&e.paramValues)}(t,n.state)||{},i),c=Object.assign(r,o,s);return new yu(n.state).applyRawParams(c)})}static treeChanges(t,n,e){const i=Math.min(t.length,n.length);let r=0;const s=(t,n)=>t.equals(n,ku.nonDynamicParams);for(;r<i&&t[r].state!==e&&s(t[r],n[r]);)r++;const o=t,c=o.slice(0,r),u=o.slice(r),a=c.map(function(t,e){const i=t.clone();return i.paramValues=n[e].paramValues,i}),h=n.slice(r);return{from:o,to:a.concat(h),retained:c,retainedWithToParams:a,exiting:u,entering:h}}static matching(t,n,e){let i=!1;return Fc(t,n).reduce((t,[n,r])=>(i=i||!n.equals(r,e),i?t:t.concat(n)),[])}static equals(t,n,e){return t.length===n.length&&ku.matching(t,n,e).length===t.length}static subPath(t,n){const e=Pc(t,n),i=t.indexOf(e);return-1===i?void 0:t.slice(0,i+1)}static nonDynamicParams(t){return t.state.parameters({inherit:!1}).filter(t=>!t.dynamic)}static paramValues(t){return t.reduce((t,n)=>Object.assign(t,n.paramValues),{})}}function Eu(t,n){return new vu(t,n.at(-1).state,n.map(t=>t.paramValues).reduce((t,n)=>({...t,...n}),{}),{})}const Su="EAGER",xu=[Su,"LAZY"],Ou=[Su];class Cu{constructor(t){this.vn=t}getTokens(){return this.vn.reduce((t,n)=>t.concat(n.resolvables.map(t=>t.token)),[]).reduce(Vc,[])}getResolvable(t){return Lc(this.vn.map(t=>t.resolvables).reduce(Dc,[]).filter(n=>n.token===t))}getPolicy(t){const n=this.findNode(t);return t.getPolicy(n)}subContext(t){return new Cu(ku.subPath(this.vn,n=>n.state===t))}addResolvables(t,n){const e=Pc(this.vn,Zc("state",n)),i=t.map(t=>t.token);e.resolvables=e.resolvables.filter(t=>-1===i.indexOf(t.token)).concat(t)}resolvePath(t="LAZY",n){const e=(xu.includes(t)?t:"LAZY")===Su?Ou:xu;gu.traceResolvePath(this.vn,t,n);const i=(t,n)=>e=>t.includes(this.getPolicy(e)[n]),r=this.vn.reduce((t,r)=>{const s=r.resolvables.filter(i(e,"when")),o=s.filter(i(["NOWAIT"],"async")),c=s.filter(t=>!i(["NOWAIT"],"async")(t)),u=this.subContext(r.state),a=t=>t.get(u,n).then(n=>({token:t.token,value:n}));return o.forEach(a),t.concat(c.map(a))},[]);return Promise.all(r)}findNode(t){return Pc(this.vn,n=>n.resolvables.includes(t))}getDependencies(t){const n=this.findNode(t),e=(ku.subPath(this.vn,t=>t===n)||this.vn).reduce((t,n)=>t.concat(n.resolvables),[]).filter(n=>n!==t);return t.deps.map(t=>{const n=e.filter(n=>n.token===t);if(n.length)return Lc(n);const i=window.angular.$injector.get(t);if(S(i))throw new Error(`Could not find Dependency Injection token: ${au(t)}`);return new wu(t,()=>i,[],i)})}}const ju=(t,n)=>t.reduce((t,e)=>t||x(n[e]),!1);function Au(t){if(!t.parent)return{};const n=["component","bindings","componentProvider"],e=["templateProvider","templateUrl","template","notify","async"].concat(["controller","controllerProvider","controllerAs","resolveAs"]),i=n.concat(e);if(x(t.views)&&ju(i,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): ${i.filter(n=>x(t[n])).join(", ")}`);const r={};return Ct(t.views||{$default:Tc(t,i)}).forEach(([i,s])=>{if(i=i||"$default",j(s)&&(s={component:s}),s=Object.assign({},s),ju(n,s)&&ju(e,s))throw new Error(`Cannot combine: ${n.join("|")} with: ${e.join("|")} in stateview: '${i}@${t.name}'`);s.resolveAs=s.resolveAs||"$resolve",s.$context=t,s.$name=i;const o=Ru.normalizeUIViewTarget(s.$context,s.$name);s.$ngViewName=o.ngViewName,s.$ngViewContextAnchor=o.ngViewContextAnchor,r[i]=s}),r}let Tu=0;class Ru{constructor(t,n,e){this.path=t,this.viewDecl=n,this.factory=e,this.component=void 0,this.template=void 0,this.$id=Tu++,this.loaded=!1,this.getTemplate=(t,n)=>this.component?this.factory.makeComponentTemplate(t,n,this.component,this.viewDecl.bindings):this.template}load(){const t=new Cu(this.path),n=this.path.reduce((t,n)=>Object.assign(t,n.paramValues),{}),e=[Promise.resolve(this.factory.fromConfig(this.viewDecl,n,t)),Promise.resolve(this.getController(t))];return Promise.all(e).then(t=>(gu.traceViewServiceEvent("Loaded",this),this.controller=t[1],Object.assign(this,t[0]),this))}getController(t){const n=this.viewDecl.controllerProvider;if(!se(n))return this.viewDecl.controller;const e=Yn(n),i=O(n)?Lc(n):n;return new wu("",i,e).get(t)}static normalizeUIViewTarget(t,n=""){const e=n.split("@");let i=e[0]||"$default",r=j(e[1])?e[1]:"^";const s=/^(\^(?:\.\^)*)\.(.*$)/.exec(i);if(s&&(r=s[1],i=s[2]),"!"===i.charAt(0)&&(i=i.substring(1),r=""),/^(\^(?:\.\^)*)$/.exec(r)){const n=r.split(".").reduce(t=>t.parent,t);r=n.name}else"."===r&&(r=t.name);return{ngViewName:i,ngViewContextAnchor:r}}}class Mu{constructor(){this.bn=[],this.yn=[],this.kn=[],this.viewConfigFactory(function(){let t=null;return(n,e)=>(t=t||window.angular.$injector.get("$templateFactory"),new Ru(n,e,t))}())}$get=()=>this;rootViewContext(t){return this.En=t||this.En}viewConfigFactory(t){this.viewConfigFactory=t}createViewConfig(t,n){const e=this.viewConfigFactory;if(!e)throw new Error(`ViewService: No view config factory registered for type ${n.$type}`);return e(t,n)}deactivateViewConfig(t){gu.traceViewServiceEvent("<- Removing",t),jc(this.yn,t)}activateViewConfig(t){gu.traceViewServiceEvent("-> Registering",t),this.yn.push(t)}sync(){const t=this.bn.map(t=>[t.fqn,t]).reduce(Hc,{});function n(t){let n=t.viewDecl.$context,e=0;for(;++e&&n.parent;)n=n.parent;return e}const e=Jc((t,n,e,i)=>n*(t(e)-t(i))),i=t=>{-1!==this.bn.indexOf(t.ngView)&&t.ngView.configUpdated(t.viewConfig)},r=this.bn.sort(e(function(t){const n=t=>t&&t.parent?n(t.parent)+1:1;return 1e4*t.fqn.split(".").length+n(t.creationContext)},1)).map(i=>{const r=this.yn.filter(Mu.matches(t,i));return r.length>1&&r.sort(e(n,-1)),{ngView:i,viewConfig:r[0]}}),s=r.map(t=>t.viewConfig),o=this.yn.filter(t=>!s.includes(t)).map(t=>({ngView:void 0,viewConfig:t}));r.forEach(t=>{i(t)});const c=r.concat(o);this.kn.forEach(t=>t(c)),gu.traceViewSync(c)}registerUIView(t){gu.traceViewServiceUIViewEvent("-> Registering",t);const n=this.bn;return n.filter(n=>n.fqn===t.fqn).length&&gu.traceViewServiceUIViewEvent("!!!! duplicate ngView named:",t),n.push(t),this.sync(),()=>{-1!==n.indexOf(t)?(gu.traceViewServiceUIViewEvent("<- Deregistering",t),jc(n,t)):gu.traceViewServiceUIViewEvent("Tried removing non-registered ngView",t)}}available(){return this.bn.map(t=>t.fqn)}active(){return this.bn.filter(t=>t.$config).map(t=>t.name)}}Mu.matches=(t,n)=>e=>{if(n.$type!==e.viewDecl.$type)return!1;const i=e.viewDecl,r=i.$ngViewName.split("."),s=n.fqn.split(".");if(!Oc(r,s.slice(0-r.length)))return!1;const o=1-r.length||void 0,c=s.slice(0,o).join("."),u=t[c].creationContext;return i.$ngViewContextAnchor===(u&&u.name)};let Pu=0;class _u{static superseded(t,n){const e=new _u(2,"The transition has been superseded by a different transition",t);return n&&n.redirected&&(e.redirected=!0),e}static redirected(t){return _u.superseded(t,{redirected:!0})}static invalid(t){return new _u(4,"This transition is invalid",t)}static ignored(t){return new _u(5,"The transition was ignored",t)}static aborted(t){return new _u(3,"The transition has been aborted",t)}static errored(t){return new _u(6,"The transition errored",t)}static normalize(t){return Kc(_u)(t)?t:_u.errored(t)}constructor(t,n,e){this.$id=Pu++,this.type=t,this.message=n,this.detail=e,this.redirected=!1}toString(){const t=(n=this.detail)&&n.toString!==Object.prototype.toString?n.toString():au(n);var n;const{$id:e,type:i,message:r}=this;return`Transition Rejection($id: ${e} type: ${i}, message: ${r}, detail: ${t})`}toPromise(){return Object.assign(Wc(this),{rn:this})}}class Nu{constructor(){this.eventBus=Iu}$get=[Ln.$exceptionHandler,t=>(this.eventBus._=t,this.eventBus)]}const Iu=new class{constructor(){this.Sn=Object.create(null),this.xn=!1,this._=void 0}reset(){this.Sn=Object.create(null),this.xn=!1}isDisposed(){return this.xn}dispose(){this.xn||(this.xn=!0,this.Sn=Object.create(null))}subscribe(t,n,e=void 0){if(this.xn)return()=>!1;let i=this.Sn[t];i||(this.Sn[t]=i=[]);const r={fn:n,context:e};return i.push(r),()=>this.unsubscribe(t,n,e)}subscribeOnce(t,n,e=void 0){if(this.xn)return()=>!1;let i=!1;const r=this.subscribe(t,(...t)=>{i||(i=!0,r(),n.apply(e,t))});return r}unsubscribe(t,n,e=void 0){if(this.xn)return!1;const i=this.Sn[t];if(!i||0===i.length)return!1;for(let t=0;t<i.length;t++){const r=i[t];if(r.fn===n&&r.context===e)return i.splice(t,1),!0}return!1}getCount(t){const n=this.Sn[t];return n?n.length:0}publish(t,...n){if(this.xn)return!1;const e=this.Sn[t];if(!e||0===e.length)return!1;const i=e.slice();return queueMicrotask(()=>{for(const{fn:t,context:e}of i)try{t.apply(e,n)}catch(t){this._(t)}}),!0}},Du={current:()=>{},transition:null,traceData:{},bind:null},qu={cn:0,On:1};class Vu{static chain(t,n){return t.reduce((t,n)=>t.then(()=>n.invokeHook()),n||Promise.resolve())}static invokeHooks(t,n){for(let e=0;e<t.length;e++){const i=t[e].invokeHook();if(oe(i)){const r=t.slice(e+1);return Vu.chain(r,i).then(()=>{n()})}}return n()}static runAllHooks(t){t.forEach(t=>t.invokeHook())}constructor(t,n,e,i){this.transition=t,this.stateContext=n,this.registeredHook=e,this.options=i,this.isSuperseded=()=>2===this.type.hookPhase&&!this.options.transition.isActive(),this.options=Ac(i,Du),this.type=e.eventType}logError(t){Iu.publish("$stateService:defaultErrorHandler",t)}invokeHook(){const t=this.registeredHook;if(t.Cn)return;const n=this.getNotCurrentRejection();if(n)return n;const{options:e}=this;gu.traceHookInvocation(this,this.transition,e);const i=()=>t.callback.call(e.bind,this.transition,this.stateContext),r=t=>_u.normalize(t).toPromise(),s=n=>t.eventType.getErrorHandler(this)(n),o=n=>t.eventType.getResultHandler(this)(n);try{const t=i();return!this.type.synchronous&&oe(t)?t.catch(r).then(o,s):o(t)}catch(t){return s(_u.normalize(t))}finally{t.invokeLimit&&++t.invokeCount>=t.invokeLimit&&t.deregister()}}handleHookResult(t){return this.getNotCurrentRejection()||(oe(t)?t.then(t=>this.handleHookResult(t)):(gu.traceHookResult(t,this.transition),!1===t?_u.aborted("Hook aborted transition").toPromise():t instanceof vu?_u.redirected(t).toPromise():void 0))}getNotCurrentRejection(){return this.transition.jn?_u.aborted().toPromise():this.isSuperseded()?_u.superseded(this.options.current()).toPromise():void 0}toString(){const{options:t,registeredHook:n}=this;return`${Gc("traceData.hookType")(t)||"internal"} context: ${Gc("traceData.context.state.name")(t)||Gc("traceData.context")(t)||"unknown"}, ${ou(200,uu(n.callback))}`}}Vu.HANDLE_RESULT=t=>n=>t.handleHookResult(n),Vu.LOG_REJECTED_RESULT=t=>n=>{oe(n)&&n.catch(n=>t.logError(_u.normalize(n)))},Vu.LOG_ERROR=t=>n=>t.logError(n),Vu.REJECT_ERROR=()=>t=>Wc(t),Vu.THROW_ERROR=()=>t=>{throw t};class Uu{static fromString(t){return function(t){return!!/[!,*]+/.exec(t)}(t)?new Uu(t):null}constructor(t){this.text=t,this.glob=t.split(".");const n=this.text.split(".").map(t=>"**"===t?"(?:|(?:\\.[^.]*)*)":"*"===t?"\\.[^.]*":`\\.${t}`).join("");this.regexp=new RegExp(`^${n}$`)}matches(t){return this.regexp.test(`.${t}`)}}function Fu(t,n,e){const i=j(n)?[n]:n;return!!(N(i)?i:function(t){const n=i;for(let e=0;e<n.length;e++){const i=new Uu(n[e]);if(i&&i.matches(t.name)||!i&&n[e]===t.name)return!0}return!1})(t,e)}class Hu{constructor(t,n,e,i,r,s={}){this.tranSvc=t,this.eventType=n,this.callback=e,this.matchCriteria=i,this.removeHookFromRegistry=r,this.invokeCount=0,this.Cn=!1,this.priority=s.priority||0,this.bind=s.bind||null,this.invokeLimit=s.invokeLimit}An(t,n,e){if(!0===n)return t;const i=t.filter(t=>Fu(t.state,n,e));return i.length?i:null}Tn(){return _c(this.tranSvc.Rn(),()=>!0)}Mn(t,n){const e=Object.assign(this.Tn(),this.matchCriteria);return Object.values(this.tranSvc.Rn()).reduce((i,r)=>{const s=r.scope===qu.On,o=t[r.name]||[],c=s?o:[Lc(o)];return i[r.name]=this.An(c,e[r.name],n),i},{})}matches(t,n){const e=this.Mn(t,n);return Object.values(e).every(t=>t)?e:null}deregister(){this.removeHookFromRegistry(this),this.Cn=!0}}function Lu(t,n,e){const i=(t.Pn=t.Pn||{})[e.name]=[],r=t=>jc(i,t);function s(t,s,o={}){const c=new Hu(n,e,s,t,r,o);return i.push(c),c.deregister.bind(c)}return t[e.name]=s,s}class zu{constructor(t){this.transition=t}buildHooksForPhase(t){return this.transition.transitionService._n(t).map(t=>this.buildHooks(t)).reduce(Dc,[]).filter(Boolean)}buildHooks(t){const{transition:n}=this,e=n.treeChanges(),i=this.getMatchingHooks(t,e,n);if(!i)return[];const r={transition:n,current:n.options().current};return i.map(i=>i.matches(e,n)[t.criteriaMatchPath.name].map(e=>{const s=Object.assign({bind:i.bind,traceData:{hookType:t.name,context:e}},r),o=t.criteriaMatchPath.scope===qu.On?e.state.self:null,c=new Vu(n,o,i,s);return{hook:i,node:e,transitionHook:c}})).reduce(Dc,[]).sort(function(t=!1){return function(n,e){const i=t?-1:1,r=(n.node.state.path.length-e.node.state.path.length)*i;return 0!==r?r:e.hook.priority-n.hook.priority}}(t.reverseSort)).map(t=>t.transitionHook)}getMatchingHooks(t,n,e){const i=0===t.hookPhase,r=this.transition.transitionService;return(i?[r]:[this.transition,r]).map(n=>n.getHooks(t.name)).filter(function(t,n="assert failure"){return e=>{const i=t(e);if(!i)throw new Error(n);return i}}(O,`broken event named: ${t.name}`)).reduce(Dc,[]).filter(t=>t.matches(n,e))}}class Bu{constructor(t,n,e,i){if(this.globals=i,this.transitionService=e,this.Nn=Promise.withResolvers(),this.promise=this.Nn.promise,this.Pn={},this.In=new zu(this),this.isActive=()=>this.globals.transition===this,this.Dn=n,!n.valid())throw new Error(n.error());this.D=Object.assign({current:Yc(this)},n.options()),this.$id=e.qn++;const r=ku.buildToPath(t,n);this.Vn=ku.treeChanges(t,r,this.D.reloadState),this.createTransitionHookRegFns();const s=this.In.buildHooksForPhase(0);Vu.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._n().filter(t=>0!==t.hookPhase).forEach(t=>Lu(this,this.transitionService,t))}getHooks(t){return this.Pn[t]}applyViewConfigs(){const t=this.Vn.entering.map(t=>t.state);ku.applyViewConfigs(this.transitionService.$view,this.Vn.to,t)}$from(){return Lc(this.Vn.from).state}$to(){return Lc(this.Vn.to).state}from(){return this.$from().self}to(){return this.$to().self}targetState(){return this.Dn}is(t){return t instanceof Bu?this.is({to:t.$to().name,from:t.$from().name}):!(t.to&&!Fu(this.$to(),t.to,this)||t.from&&!Fu(this.$from(),t.from,this))}params(t="to"){return Object.freeze(this.Vn[t].map(t=>t.paramValues).reduce((t,n)=>({...t,...n}),{}))}getResolveTokens(t="to"){return new Cu(this.Vn[t]).getTokens()}addResolvable(t,n){void 0===n&&(n=""),t=Kc(wu)(t)?t:new wu(t);const e="string"==typeof n?n:n.name,i=this.Vn.to,r=Pc(i,t=>t.state.name===e);dt(!!r,`targetNode not found ${e}`),new Cu(i).addResolvables([t],r.state)}redirectedFrom(){return this.D.redirectedFrom||null}originalTransition(){const t=this.redirectedFrom();return t&&t.originalTransition()||this}options(){return this.D}entering(){return _c(this.Vn.entering,t=>t.state).map(t=>t.self)}exiting(){return _c(this.Vn.exiting,t=>t.state).map(t=>t.self).reverse()}retained(){return _c(this.Vn.retained,t=>t.state).map(t=>t.self)}views(t="entering",n){let e=this.Vn[t];return e=n?e.filter(Zc("state",n)):e,e.map(t=>t.views).reduce(Dc,[])}treeChanges(t){return t?this.Vn[t]:this.Vn}redirect(t){let n=1,e=this;for(;!T(e=e.redirectedFrom());)if(++n>20)throw new Error("Too many consecutive Transition redirects (20+)");const i={redirectedFrom:this,source:"redirect"};"url"===this.options().source&&!1!==t.options().location&&(i.location="replace");const r=Object.assign({},this.options(),t.options(),i);t=t.withOptions(r,!0);const s=this.transitionService.create(this.Vn.from,t),o=this.Vn.entering,c=s.Vn.entering;return ku.matching(c,o,ku.nonDynamicParams).filter(n=>{return!(e=t.options().reloadState,t=>e&&t.state.includes[e.name])(n);var e}).forEach((t,n)=>{t.resolvables=o[n].resolvables}),s}Un(){const t=this.Vn;if(this.D.reload)return;if(t.exiting.length||t.entering.length)return;if(t.to.length!==t.from.length)return;if(Fc(t.to,t.from).map(t=>t[0].state!==t[1].state).reduce(Ic,!1))return;const n=t.to.map(t=>t.paramSchema),[e,i]=[t.to,t.from].map(t=>t.map(t=>t.paramValues));return Fc(n,e,i).map(([t,n,e])=>bu.changed(t,n,e)).reduce(Dc,[])}dynamic(){const t=this.Un();return!!t&&t.map(t=>t.dynamic).reduce(Ic,!1)}ignored(){return!!this.Fn()}Fn(){const t=this.globals.transition,{reloadState:n}=this.D,e=(t,e)=>{if(t.length!==e.length)return!1;const i=ku.matching(t,e);return t.length===i.filter(t=>!n||!t.state.includes[n.name]).length},i=this.Vn,r=t&&t.Vn;return r&&e(r.to,i.to)&&e(r.exiting,i.exiting)?"SameAsPending":0===i.exiting.length&&0===i.entering.length&&e(i.from,i.to)?"SameAsCurrent":void 0}run(){const t=t=>this.In.buildHooksForPhase(t),n=t(1);return Vu.invokeHooks(n,()=>{const{globals:t}=this;return t.lastStartedTransitionId=this.$id,t.transition=this,t.transitionHistory.enqueue(this),gu.traceTransitionStart(this),Promise.resolve()}).then(()=>{const n=t(2),e=Promise.resolve();return Vu.invokeHooks(n,()=>e)}).then(()=>{gu.traceSuccess(this.$to(),this),this.success=!0,this.Nn.resolve(this.to()),this.In.buildHooksForPhase(3).forEach(t=>{t.invokeHook()})},n=>{gu.traceError(n,this),this.success=!1,this.Nn.reject(n),this.Hn=n,t(4).forEach(t=>t.invokeHook())}),this.promise}valid(){return!this.error()||void 0!==this.success}abort(){S(this.success)&&(this.jn=!0)}error(){const t=this.$to();if(t.self.abstract)return _u.invalid(`Cannot transition to abstract state '${t.name}'`);const n=t.parameters(),e=this.params(),i=n.filter(t=>!t.validates(e[t.id]));if(i.length){const n=i.map(t=>`[${t.id}:${au(e[t.id])}]`).join(", "),r=`The following parameter values are not valid for state '${t.name}': ${n}`;return _u.invalid(r)}return!1===this.success?this.Hn:void 0}toString(){const t=this.from(),n=this.to(),e=t=>null!==t["#"]&&void 0!==t["#"]?t:Rc(t,["#"]);return`Transition#${this.$id}( '${C(t)?t.name:t}'${au(e(this.Vn.from.map(t=>t.paramValues).reduce((t,n)=>({...t,...n}),{})))} -> ${this.valid()?"":"(X) "}'${C(n)?n.name:n}'${au(e(this.params()))} )`}}Bu.diToken=Bu;const Wu=["$transition$",Bu];function Ju(t){const n=Object.values(t.treeChanges()).reduce(Dc,[]).reduce(Vc,[]),e=t=>Wu.includes(t.token)?wu.fromData(t.token,null):t;n.forEach(t=>{t.resolvables=t.resolvables.map(e)})}function Zu(t){return(n,e)=>(0,e.$$state()[t])(n,e)}const Gu=Zu("onExit"),Ku=Zu("onRetain"),Yu=Zu("onEnter"),Xu=1e3,Qu=t=>new Cu(t.treeChanges().to).resolvePath("EAGER",t).then(()=>{}),ta=(t,n)=>new Cu(t.treeChanges().to).subContext(n.$$state()).resolvePath("LAZY",t).then(()=>{}),na=t=>new Cu(t.treeChanges().to).resolvePath("LAZY",t).then(()=>{}),ea=t=>{const n=t.views("entering");if(n.length)return Promise.all(n.map(t=>Promise.resolve(t.load()))).then(()=>{})},ia=t=>{const{globals:n}=t,e=()=>{n.transition===t&&(n.transition=null)};t.onSuccess({},()=>{n.successfulTransitions.enqueue(t),n.$current=t.$to(),n.current=n.$current.self,zc(t.params(),n.params)},{priority:1e4}),t.promise.then(e,e)};function ra(t,n,e,i){return t.onBefore({entering:t=>!!t.lazyLoad},t=>{const r=t.entering().filter(t=>!!t.$$state().lazyLoad).map(n=>sa(t,n,i));return Promise.all(r).then(function(){if("url"!==t.originalTransition().options().source){const e=t.targetState();return n.target(e.identifier(),e.params(),e.options())}const i=e.match(e.parts()),r=i&&i.rule;if(r&&"STATE"===r.type){const{state:e}=r,s=i.match;return n.target(e,s,t.options())}e.sync()})})}function sa(t,n,e){const i=n.$$state().lazyLoad;let r=i.Lt;if(!r){const s=t=>(delete n.lazyLoad,delete n.$$state().lazyLoad,delete i.Lt,t),o=t=>(delete i.Lt,Promise.reject(t));r=i.Lt=Promise.resolve(i(t,n)).then(function(t){return t&&O(t.states)&&t.states.forEach(t=>e.register(t)),t}).then(s,o)}return r}class oa{constructor(t,n,e,i,r=!1,s=Vu.HANDLE_RESULT,o=Vu.REJECT_ERROR,c=!1){this.name=t,this.hookPhase=n,this.hookOrder=e,this.criteriaMatchPath=i,this.reverseSort=r,this.getResultHandler=s,this.getErrorHandler=o,this.synchronous=c}}function ca(t){const n=t.Fn();if(!n)return;gu.traceTransitionIgnored(t);const e=t.globals.transition;return"SameAsCurrent"===n&&e&&e.abort(),_u.ignored().toPromise()}function ua(t){if(!t.valid())throw new Error(t.error().toString())}const aa={location:!0,relative:null,inherit:!1,notify:!0,reload:!1,supercede:!0,custom:{},current:()=>null,source:"unknown"};class ha{static $inject=zn([Ln.$router,Ln.$view]);constructor(t,n){this.qn=0,this.Ln=[],this.Pn={},this.zn={},this.globals=t,this.$view=n,this.Bn={},this.Wn(),this.Jn(),this.Zn(),t.successfulTransitions.onEvict(Ju)}$get=[Ln.$state,Ln.$url,Ln.$stateRegistry,Ln.$view,(t,n,e,i)=>(this.Bn.lazyLoad=ra(this,t,n,e),this.Bn.updateUrl=((t,n,e)=>{this.onSuccess({},t=>{const i=t.options(),r=n;if("url"!==i.source&&i.location&&r.$current.navigable){const t={replace:"replace"===i.location};e.push(r.$current.navigable.url,r.globals.params,t)}e.update(!0)},{priority:9999})})(0,t,n),this.Bn.redirectTo=((t,n)=>{this.onStart({to:t=>!!t.redirectTo},t=>{const e=t.to().redirectTo;if(!e)return;const i=n;function r(n){if(n)return n instanceof vu?n:j(n)?i.target(n,t.params(),t.options()):n.state||n.params?i.target(n.state||t.to(),n.params||t.params(),t.options()):void 0}return N(e)?Promise.resolve(e(t)).then(r):r(e)})})(0,t),this.Bn.activateViews=((t,n)=>{this.onSuccess({},t=>{const e=t.views("entering"),i=t.views("exiting");(e.length||i.length)&&(i.forEach(t=>n.deactivateViewConfig(t)),e.forEach(t=>{n.activateViewConfig(t)}),n.sync())})})(0,i),this)];create(t,n){return new Bu(t,n,this,this.globals)}Jn(){const t=Vu,n=this.zn,e=!1,i=!0;this.Gn("onCreate",0,0,n.to,e,t.LOG_REJECTED_RESULT,t.THROW_ERROR,i),this.Gn("onBefore",1,0,n.to),this.Gn("onStart",2,0,n.to),this.Gn("onExit",2,100,n.exiting,!0),this.Gn("onRetain",2,200,n.retained),this.Gn("onEnter",2,300,n.entering),this.Gn("onFinish",2,400,n.to),this.Gn("onSuccess",3,0,n.to,e,t.LOG_REJECTED_RESULT,t.LOG_ERROR,i),this.Gn("onError",4,0,n.to,e,t.LOG_REJECTED_RESULT,t.LOG_ERROR,i)}Wn(){const{On:t,cn:n}=qu;this.Kn("to",n),this.Kn("from",n),this.Kn("exiting",t),this.Kn("retained",t),this.Kn("entering",t)}Gn(t,n,e,i,r=!1,s=Vu.HANDLE_RESULT,o=Vu.REJECT_ERROR,c=!1){const u=new oa(t,n,e,i,r,s,o,c);this.Ln.push(u),Lu(this,this,u)}_n(t){return(x(t)?this.Ln.filter(n=>n.hookPhase===t):this.Ln.slice()).sort((t,n)=>{const e=t.hookPhase-n.hookPhase;return 0===e?t.hookOrder-n.hookOrder:e})}Kn(t,n){this.zn[t]={name:t,scope:n}}Rn(){return this.zn}getHooks(t){return this.Pn[t]}Zn(){const t=this.Bn;t.addCoreResolves=void this.onCreate({},function(t){t.addResolvable(wu.fromData(Bu,t),""),t.addResolvable(wu.fromData("$transition$",t),""),t.addResolvable(wu.fromData("$stateParams",t.params()),""),t.entering().forEach(n=>{t.addResolvable(wu.fromData("$state$",n),n)})}),t.ignored=(()=>this.onBefore({},ca,{priority:-9999}))(),t.invalid=(()=>this.onBefore({},ua,{priority:-1e4}))(),t.onExit=(()=>this.onExit({exiting:t=>!!t.onExit},Gu))(),t.onRetain=(()=>this.onRetain({retained:t=>!!t.onRetain},Ku))(),t.onEnter=(()=>this.onEnter({entering:t=>!!t.onEnter},Yu))(),t.eagerResolve=(()=>this.onStart({},Qu,{priority:Xu}))(),t.lazyResolve=(()=>this.onEnter({entering:Yc(!0)},ta,{priority:Xu}))(),t.resolveAll=(()=>this.onFinish({},na,{priority:Xu}))(),t.loadViews=(()=>this.onFinish({},ea))(),t.updateGlobals=(()=>this.onCreate({},ia))(),t.lazyLoad=ra(this)}}const la=wt("$stateProvider");class fa{get params(){return this.globals.params}get current(){return this.globals.current}get $current(){return this.globals.$current}static $inject=["$routerProvider","$transitionsProvider"];constructor(t,n,e){this.stateRegistry=void 0,this.urlService=void 0,this.globals=t,this.transitionService=n,this.$injector=e,this.invalidCallbacks=[],this.Yn=function(t){throw t instanceof Error&&t.stack?t:t instanceof _u?new Error(t.toString()):new Error(t)},Iu.subscribe("$stateService:defaultErrorHandler",t=>this.defaultErrorHandler()(t))}$get=()=>this;decorator(t,n){return this.stateRegistry.decorator(t,n)||this}state(t){if(!t.name)throw la("stateinvalid","'name' required");try{this.stateRegistry.register(t)}catch(t){throw la("stateinvalid",t.message)}return this}Xn(t,n){const e=Eu(this.stateRegistry,t),{globals:i}=this,r=()=>i.transitionHistory.peekTail(),s=r(),o=new ru(this.invalidCallbacks.slice()),c=this.$injector,u=t=>{if(!(t instanceof vu))return;let n=t;return n=this.target(n.identifier(),n.params(),n.options()),n.valid()?r()!==s?_u.superseded().toPromise():this.transitionTo(n.identifier(),n.params(),n.options()):_u.invalid(n.error()).toPromise()};return function t(){const i=o.dequeue();return void 0===i?_u.invalid(n.error()).toPromise():Promise.resolve(i(n,e,c)).then(u).then(n=>n||t())}()}onInvalid(t){return this.invalidCallbacks.push(t),function(){jc(this.invalidCallbacks,t)}.bind(this)}reload(t){return this.transitionTo(this.globals.current,this.globals.params,{reload:!x(t)||t,inherit:!1,notify:!1})}go(t,n,e){const i=Ac(e,{relative:this.$current,inherit:!0},aa);return this.transitionTo(t,n,i)}target(t,n,e={}){if(C(e.reload)&&!e.reload.name)throw new Error("Invalid reload state object");const i=this.stateRegistry;if(e.reloadState=!0===e.reload?i.root():i.matcher.find(e.reload,e.relative),e.reload&&!e.reloadState)throw new Error(`No such reload state '${j(e.reload)?e.reload:e.reload.name}'`);return new vu(this.stateRegistry,t,n,e)}getCurrentPath(){const{globals:t}=this,n=t.successfulTransitions.peekTail();return n?n.Vn.to:(()=>[new yu(this.stateRegistry.root())])()}transitionTo(t,n={},e={}){e=Ac(e,aa);const i=()=>this.globals.transition;e=Object.assign(e,{current:i});const r=this.target(t,n,e),s=this.getCurrentPath();if(!r.exists())return this.Xn(s,r);if(!r.valid())return Wc(r.error());if(!1===e.supercede&&i())return _u.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=>n=>{if(n instanceof _u){const e=this.globals.lastStartedTransitionId<=t.$id;if(5===n.type)return e&&this.urlService.update(),Promise.resolve(this.globals.current);const{detail:i}=n;if(2===n.type&&n.redirected&&i instanceof vu){const n=t.redirect(i);return n.run().catch(o(n))}if(3===n.type)return e&&this.urlService.update(),Promise.reject(n)}return this.defaultErrorHandler()(n),Promise.reject(n)},c=this.transitionService.create(s,r),u=c.run().catch(o(c));return Bc(u),Object.assign(u,{transition:c})}is(t,n,e){e=Ac(e,{relative:this.$current});const i=this.stateRegistry.matcher.find(t,e.relative);if(!x(i))return;if(this.$current!==i)return!1;if(!n)return!0;const r=i.parameters({inherit:!0,matchingKeys:n});return bu.equals(r,bu.values(r,n),this.globals.params)}includes(t,n,e){e=Ac(e,{relative:this.$current});const i=j(t)&&Uu.fromString(t);if(i){if(!i.matches(this.$current.name))return!1;t=this.$current.name}const r=this.stateRegistry.matcher.find(t,e.relative),s=this.$current.includes;if(!x(r))return;if(!x(s[r.name]))return!1;if(!n)return!0;const o=r.parameters({inherit:!0,matchingKeys:n});return bu.equals(o,bu.values(o,n),this.globals.params)}href(t,n,e){e=Ac(e,{lossy:!0,inherit:!0,absolute:!1,relative:this.$current}),n=n||{};const i=this.stateRegistry.matcher.find(t,e.relative);if(!x(i))return null;e.inherit&&(n=this.globals.params.$inherit(n,this.$current,i));const r=i&&e.lossy?i.navigable:i;return r&&void 0!==r.url&&null!==r.url?this.urlService.href(r.url,n,{absolute:e.absolute}):null}defaultErrorHandler(t){return this.Yn=t||this.Yn}get(t,n){const e=this.stateRegistry;return 0===arguments.length?e.get():e.get(t,n||this.$current)}lazyLoad(t,n){const e=this.get(t);if(!e||!e.lazyLoad)throw new Error(`Can not lazy load ${t}`);const i=this.getCurrentPath(),r=Eu(this.stateRegistry,i);return sa(n=n||this.transitionService.create(i,r),e)}}class da{constructor(){this.enabled=!1}useAnchorScroll(){this.enabled=!0}$get=[Ln.$anchorScroll,t=>this.enabled?t:async function(t){return setTimeout(()=>{t.scrollIntoView(!1)},0)}]}class $a{constructor(){this.Qn=!1}$get=[Ln.$http,Ln.$templateCache,Ln.$templateRequest,Ln.$injector,(t,n,e,i)=>(this.$templateRequest=e,this.$http=t,this.$templateCache=n,this.$injector=i,this)];useHttpService(t){this.Qn=t}fromConfig(t,n,e){const i=t=>Promise.resolve(t).then(t=>({template:t})),r=t=>Promise.resolve(t).then(t=>({component:t}));switch(x((s=t).template)?"template":x(s.templateUrl)?"templateUrl":x(s.templateProvider)?"templateProvider":x(s.component)?"component":x(s.componentProvider)?"componentProvider":"default"){case"template":return i(this.fromString(t.template,n));case"templateUrl":return i(this.fromUrl(t.templateUrl,n));case"templateProvider":return i(this.fromProvider(t.templateProvider,n,e));case"component":return r(t.component);case"componentProvider":return r(this.fromComponentProvider(t.componentProvider,e));default:return i("<ng-view></ng-view>")}var s}fromString(t,n){return N(t)?t(n):t}fromUrl(t,n){return N(t)&&(t=t(n)),T(t)?null:this.Qn?this.$http.get(t,{cache:this.$templateCache,headers:{Accept:"text/html"}}).then(function(t){return t.data}):this.$templateRequest(t)}fromProvider(t,n,e){const i=Yn(t),r=O(t)?Lc(t):t;return new wu("",r,i).get(e)}fromComponentProvider(t,n){const e=Yn(t),i=O(t)?Lc(t):t;return new wu("",i,e).get(n)}makeComponentTemplate(t,n,e,i){i=i||{};const r=t=>{const n=function(t){return t.replace(/^([A-Z])/,t=>t.toLowerCase()).replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}(t);return/^(x|data)-/.exec(n)?`x-${n}`:n},s=function(t,n){const e=t.get(n+pi);if(!e||!e.length)throw new Error(`Unable to find component named '${n}'`);return e.map(ma).reduce(Dc,[])}(this.$injector,e).map(e=>{const{name:s,type:o}=e,c=r(s);if(t.getAttribute(c)&&!i[s])return`${c}='${t.getAttribute(c)}'`;const u=i[s]||s;if("@"===o)return`${c}='{{s$resolve.${u}}}'`;if("&"===o){const t=n.getResolvable(u),e=t&&t.data,i=e&&Yn(e)||[];return`${c}='$resolve.${u}${O(e)?`[${e.length-1}]`:""}(${i.join(",")})'`}return`${c}='$resolve.${u}'`}).join(" "),o=r(e);return`<${o} ${s}></${o}>`}}const ma=t=>C(t.bindToController)?pa(t.bindToController):pa(t.scope),pa=t=>Object.keys(t||{}).map(n=>[n,/^([=<@&])[?]?(.*)/.exec(t[n])]).filter(t=>x(t)&&O(t[1])).map(t=>({name:t[1][2]||t[0],type:t[1][1]}));function ga(t,n){let e=["",""],i=t.replace(/[\\[\]^$*+?.()|{}]/g,"\\$&");if(!n)return i;switch(n.squash){case!1:e=["(",")"+(n.isOptional?"?":"")];break;case!0:i=i.replace(/\/$/,""),e=["(?:/(",")|/)?"];break;default:e=[`(${n.squash}|`,")?"]}return i+e[0]+n.type.pattern.source+e[1]}const wa=function(){const t=new RegExp("(/)","g");return n=>n.split(t).filter(Boolean)}(),va={state:{params:{}},strict:!0,caseInsensitive:!0};class ba{static pathSegmentsAndParams(t){return Fc(t.te,t.mn.filter(t=>0===t.location).concat(void 0)).reduce(Dc,[]).filter(t=>""!==t&&x(t))}static queryParams(t){return t.mn.filter(t=>1===t.location)}static compare(t,n){const e=t=>t.ne.weights=t.ne.weights||(t=>t.ne.segments=t.ne.segments||t.ne.path.map(ba.pathSegmentsAndParams).reduce(Dc,[]).reduce(hu,[]).map(t=>j(t)?wa(t):t).reduce(Dc,[]))(t).map(t=>"/"===t?1:j(t)?2:t instanceof bu?3:void 0),i=e(t),r=e(n);((t,n)=>{const e=Math.max(t.length,n.length);for(;t.length<e;)t.push(0);for(;n.length<e;)n.push(0)})(i,r);const s=Fc(i,r);let o;for(let t=0,n=s.length;t<n;t++)if(o=s[t][0]-s[t][1],0!==o)return o;return 0}constructor(t,n,e,i){this.ne={path:[this]},this.ee=[],this.mn=[],this.te=[],this.ie=[],this.config=i=Ac(i,va),this.pattern=t;const r=new RegExp("([:*])([\\w[\\]]+)|\\{([\\w[\\]]+)(?::\\s*((?:[^{}\\\\]{1,200}|\\\\.|\\{(?:[^{}\\\\]{1,200}|\\\\.)*\\})+))?\\}","g"),s=new RegExp("([:]?)([\\w[\\].-]+)|\\{([\\w[\\].-]+)(?::\\s*((?:[^{}\\\\]{1,200}|\\\\.|\\{(?:[^{}\\\\]{1,200}|\\\\.)*\\})+))?\\}","g"),o=[];let c,u=0;const a=n=>{if(!ba.nameValidator.test(n))throw new Error(`Invalid parameter name '${n}' in pattern '${t}'`);if(Pc(this.mn,Zc("id",n)))throw new Error(`Duplicate parameter name '${n}' in pattern '${t}'`)},h=(e,i)=>{const r=e[2]||e[3],s=i?e[4]:e[4]||("*"===e[1]?"[\\s\\S]*":null);return{id:r,regexp:s,segment:t.substring(u,e.index),type:s?n.type(s)||(t=>Cc(n.type(i?"query":"path"),{pattern:new RegExp(t,this.config.caseInsensitive?"i":void 0)}))(s):null}};let l,f;for(;(c=r.exec(t))&&(l=h(c,!1),!(l.segment.indexOf("?")>=0));)a(l.id),this.mn.push(e.fromPath(l.id,l.type,i.state)),this.te.push(l.segment),o.push([l.segment,Lc(this.mn)]),u=r.lastIndex;f=t.substring(u);const d=f.indexOf("?");if(d>=0){const t=f.substring(d);if(f=f.substring(0,d),t.length>0)for(u=0;c=s.exec(t);)l=h(c,!0),a(l.id),this.mn.push(e.fromSearch(l.id,l.type,i.state)),u=r.lastIndex}this.te.push(f),this.ie=o.map(t=>ga.apply(null,t)).concat(ga(f))}append(t){return this.ee.push(t),t.ne={path:this.ne.path.concat(t),parent:this,pattern:null},t}isRoot(){return this.ne.path[0]===this}toString(){return this.pattern}re(t,n){return n.value(t)}exec(t,n={},e){const i=(r=this.ne,s="pattern",o=()=>new RegExp(["^",Uc(this.ne.path.map(t=>t.ie)).join(""),!1===this.config.strict?"/?":"","$"].join(""),this.config.caseInsensitive?"i":void 0),r[s]=r[s]||o()).exec(t);var r,s,o;if(!i)return null;const c=this.parameters(),u=c.filter(t=>!t.isSearch()),a=c.filter(t=>t.isSearch()),h=this.ne.path.map(t=>t.te.length-1).reduce((t,n)=>t+n),l={};if(h!==i.length-1)throw new Error(`Unbalanced capture group in route '${this.pattern}'`);function f(t){const n=t=>t.split("").reverse().join(""),e=_c(n(t).split(/-(?!\\)/),n);return _c(e,t=>t.replace(/\\-/g,"-")).reverse()}for(let t=0;t<h;t++){const n=u[t];let e=i[t+1];for(let t=0;t<n.replace.length;t++)n.replace[t].from===e&&(e=n.replace[t].to);e&&!0===n.array&&(e=f(e)),l[n.id]=this.re(e,n)}return a.forEach(t=>{let e=n[t.id];for(let n=0;n<t.replace.length;n++)t.replace[n].from===e&&(e=t.replace[n].to);l[t.id]=this.re(e,t)}),e&&(l["#"]=e),l}parameters(t={}){return!1===t.inherit?this.mn:Uc(this.ne.path.map(t=>t.mn))}parameter(t,n={}){const{parent:e}=this.ne;return(()=>{for(const n of this.mn)if(n.id===t)return n})()||!1!==n.inherit&&e&&e.parameter(t,n)||null}validates(t){return t=t||{},this.parameters().filter(n=>xt(t,n.id)).map(n=>((t,n)=>!t||t.validates(n))(n,t[n.id])).reduce(Nc,!0)}format(t={}){const n=this.ne.path,e=n.map(ba.pathSegmentsAndParams).reduce(Dc,[]).map(t=>j(t)?t:r(t)),i=n.map(ba.queryParams).reduce(Dc,[]).map(r);if(e.concat(i).filter(t=>!1===t.isValid).length)return null;function r(n){const e=n.value(t[n.id]),i=n.validates(e),r=n.isDefaultValue(e),s=!!r&&n.squash,o=n.type.encode(e);return{param:n,value:e,isValid:i,isDefaultValue:r,squash:s,encoded:o}}const s=e.reduce((t,n)=>{if(j(n))return t+n;const{squash:e,encoded:i,param:r}=n;return!0===e?t.match(/\/$/)?t.slice(0,-1):t:j(e)?t+e:!1!==e||T(i)?t:O(i)?t+_c(i,ya).join("-"):r.raw?t+i:t+encodeURIComponent(i)},""),o=i.map(t=>{const{param:n,squash:e,isDefaultValue:i}=t;let{encoded:r}=t;if(!(T(r)||i&&!1!==e)&&(O(r)||(r=[r]),0!==r.length))return n.raw||(r=_c(r,encodeURIComponent)),r.map(t=>`${n.id}=${t}`)}).reduce(Dc,[]).join("&");return s+(o?`?${o}`:"")+(t["#"]?`#${t["#"]}`:"")}}function ya(t){return encodeURIComponent(t).replace(/-/g,t=>`%5C%${t.charCodeAt(0).toString(16).toUpperCase()}`)}ba.nameValidator=/^\w+([-.]+\w+)*(?:\[\])?$/;class ka{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 n=this.name?Uu.fromString(this.name):null;this.se={nameGlob:n}}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=Ac(t,{inherit:!0,matchingKeys:null})).inherit&&this.parent&&this.parent.parameters()||[]).concat(Object.values(this.params)).filter(n=>!t.matchingKeys||xt(t.matchingKeys,n.id))}parameter(t,n={}){return this.url&&this.url.parameter(t,n)||Pc(Object.values(this.params),Zc("id",t))||n.inherit&&this.parent&&this.parent.parameter(t)}toString(){return this.fqn()}}ka.isStateDeclaration=t=>N(t.$$state),ka.isState=t=>C(t.se);class Ea{constructor(t,n,e){this.urlService=t,this.stateService=n,this.routerGlobals=e}create(t,n){const{isState:e,isStateDeclaration:i}=ka,r=Xc([[j,t=>r(this.urlService.compile(t))],[Kc(ba),t=>this.fromUrlMatcher(t,n)],[(...t)=>e(...t)||i(...t),t=>this.fromState(t,this.stateService,this.routerGlobals)],[Kc(RegExp),t=>this.fromRegExp(t,n)],[N,t=>new Sa(t,n)]]),s=r(t);if(!s)throw new Error("invalid 'what' in when()");return s}fromUrlMatcher(t,n){let e=n;j(n)&&(n=this.urlService.compile(n)),Kc(ba)(n)&&(e=t=>n.format(t));const i={urlMatcher:t,matchPriority:function(n){const e=t.parameters().filter(t=>t.isOptional);return e.length?e.filter(t=>n[t.id]).length/e.length:1e-6},type:"URLMATCHER"};return Object.assign(new Sa(function(n){const e=t.exec(n.path,n.search,n.hash);return t.validates(e)&&e},e),i)}fromState(t,n,e){const i=ka.isStateDeclaration(t)?t.$$state():t,r={state:i,type:"STATE"};return Object.assign(this.fromUrlMatcher(i.url,t=>{const r=n;r.href(i,t)!==r.href(e.current,e.params)&&r.transitionTo(i,t,{inherit:!0,source:"url"})}),r)}fromRegExp(t,n){if(t.global||t.sticky)throw new Error("Rule RegExp must not be global or sticky");const e=j(n)?t=>n.replace(/\$(\$|\d{1,2})/,(n,e)=>t["$"===e?0:Number(e)]):n,i={regexp:t,type:"REGEXP"};return Object.assign(new Sa(n=>t.exec(n.path),e),i)}}Ea.isUrlRule=t=>t&&["type","match","handler"].every(n=>x(t[n]));class Sa{constructor(t,n){this.match=t,this.type="RAW",this.$id=-1,this.oe=void 0,this.handler=n||(t=>t),this.priority=void 0}matchPriority(t){return dt(S(t)),0-this.$id}}function xa(t,n){let e=function(t,n){return(n.priority||0)-(t.priority||0)}(t,n);return 0!==e?e:(e=((t,n)=>{const e={STATE:4,URLMATCHER:4,REGEXP:3,RAW:2,OTHER:1};return(e[t.type]||0)-(e[n.type]||0)})(t,n),0!==e?e:(e=((t,n)=>t.urlMatcher&&n.urlMatcher?ba.compare(t.urlMatcher,n.urlMatcher):0)(t,n),0!==e?e:((t,n)=>{const e={STATE:!0,URLMATCHER:!0};return e[t.type]&&e[n.type]?0:(t.$id||0)-(n.$id||0)})(t,n)))}function Oa(t){if(!(N(t)||j(t)||Kc(vu)(t)||vu.isDef(t)))throw new Error("'handler' must be a string, function, TargetState, or have a state: 'newtarget' property");return N(t)?t:Yc(t)}class Ca{constructor(t){this.ce=xa,this.ue=[],this.ae=0,this.urlRuleFactory=t}initial(t){const n=Oa(t);this.rule(this.urlRuleFactory.create((t,n)=>0===n.globals.transitionHistory.size()&&!!/^\/?$/.exec(t.path),n))}otherwise(t){const n=Oa(t);this.he=this.urlRuleFactory.create(Yc(!0),n),this.le=!1}removeRule(t){jc(this.ue,t)}rule(t){if(!Ea.isUrlRule(t))throw new Error("invalid rule");return t.$id=this.ae++,t.priority=t.priority||0,this.ue.push(t),this.le=!1,()=>this.removeRule(t)}rules(){return this.ensureSorted(),this.ue.concat(this.he?[this.he]:[])}sort(t){const n=this.stableSort(this.ue,this.ce=t||this.ce);let e=0;for(let t=0;t<n.length;t++)n[t].oe=e,t<n.length-1&&0!==this.ce(n[t],n[t+1])&&e++;this.ue=n,this.le=!0}ensureSorted(){this.le||this.sort()}stableSort(t,n){const e=t.map((t,n)=>({elem:t,idx:n}));return e.sort((t,e)=>{const i=n(t.elem,e.elem);return 0===i?t.idx-e.idx:i}),e.map(t=>t.elem)}when(t,n,e){const i=this.urlRuleFactory.create(t,n);return x(e&&e.priority)&&(i.priority=e.priority),this.rule(i),i}}class ja{constructor(t){this.urlServiceConfig=t}fromConfig(t,n,e){return new bu(t,n,2,this.urlServiceConfig,e)}fromPath(t,n,e){return new bu(t,n,0,this.urlServiceConfig,e)}fromSearch(t,n,e){return new bu(t,n,1,this.urlServiceConfig,e)}}class Aa{static $inject=zn([Ln.$location,Ln.$state,Ln.$router,Ln.$urlConfig]);$location;constructor(t,n,e,i){this.$locationProvider=t,this.stateService=n,this.stateService.urlService=this,this.urlRuleFactory=new Ea(this,this.stateService,e),this.rules=new Ca(this.urlRuleFactory),this.config=i,this.paramFactory=new ja(this.config),this.fe=[]}getPath(){return this.$location.getPath()}getSearch(){return this.$location.getSearch()}getHash(){return this.$location.getHash()}$get=[Ln.$location,Ln.$rootScope,(t,n)=>(this.$location=t,n.$on("$locationChangeSuccess",t=>{this.fe.forEach(n=>{n(t)})}),this.listen(!0),this)];baseHref(){return this.de||(this.de=Hn()||window.location.pathname)}url(t,n){if(x(t)){const n=decodeURIComponent(t);this.$location.setUrl(n)}return n&&this.$location.setState(n),this.$location.getUrl()}onChange(t){return this.fe.push(t),()=>jc(this.fe,t)}parts(){return{path:this.$location.getPath(),search:this.$location.getSearch(),hash:this.$location.getHash()}}sync(t){if(t&&t.defaultPrevented)return;const{stateService:n}=this,e={path:this.$location.getPath(),search:this.$location.getSearch(),hash:this.$location.getHash()},i=this.match(e);Xc([[j,t=>this.url(t)],[vu.isDef,t=>n.go(t.state,t.params,t.options)],[Kc(vu),t=>n.go(t.state(),t.params(),t.options())]])(i&&i.rule.handler(i.match,e))}listen(t){return!1===t?(this.$e&&this.$e(),void delete this.$e):this.$e=this.$e||this.onChange(t=>this.sync(t))}match(t){t=Object.assign({path:"",search:{},hash:""},t);const n=this.rules.rules(),e=n=>{const e=n.match(t);return e&&{match:e,rule:n,weight:n.matchPriority(e)}};let i;for(let t=0;t<n.length&&(!i||i.rule.oe===n[t].oe);t++){const r=e(n[t]);i=!i||r&&r.weight>i.weight?r:i}return i}update(t){t?this.location=this.url():this.url()!==this.location&&this.url(this.location,!0)}push(t,n,e){const i=e&&!!e.replace;this.url(t.format(n||{}),i)}href(t,n,e){let i=t.format(n);if(A(i))return null;e=e||{absolute:!1};const r=this.$locationProvider.html5ModeConf.enabled;if(r||(i=`#${this.$locationProvider.hashPrefixConf}${i}`),i=function(t,n,e,i){return"/"===i?t:n?i.replace(/\/[^/]*$/,"")+t:e?i.slice(1)+t:t}(i,r,e.absolute,this.baseHref()),!e.absolute||!i)return i;const s=!r&&i?"/":"";return[`${window.location.protocol}//`,window.location.host,s,i].join("")}compile(t,n){const e=this.config,i=n&&!n.state&&n.params;n=i?Object.assign({state:{params:i}},n):n;const r={strict:e.Xt,caseInsensitive:e.Yt};return new ba(t,e.paramTypes,this.paramFactory,Object.assign(r,n))}isMatcher(t){if(!C(t))return!1;let n=!0;return Ct(ba.prototype).forEach(([e,i])=>{N(i)&&(n=n&&x(t[e])&&N(t[e]))}),n}}class Ta{constructor(t){this.me=t}isRelative(t){return 0===(t=t||"").indexOf(".")||0===t.indexOf("^")}find(t,n,e=!0){if(!t&&""!==t)return;const i=j(t);let r=i?t:t.name;this.isRelative(r)&&(r=this.resolvePath(r,n));const s=this.me[r];if(s&&(i||!(i||s!==t&&s.self!==t)))return s;if(i&&e){const t=Object.values(this.me).filter(t=>t.se.nameGlob&&t.se.nameGlob.matches(r));if(t.length>1)throw new Error(`stateMatcher.find: Found multiple matches for ${r} using glob: ${t.map(t=>t.name)}`);return t[0]}}resolvePath(t,n){if(!n)throw new Error(`No reference point given for path '${t}'`);const e=this.find(n),i=t.split("."),r=i.length;let s=0,o=e;for(;s<r;s++)if(""!==i[s]||0!==s){if("^"!==i[s])break;if(!o.parent)throw new Error(`Path '${t}' not valid for state '${e.name}'`);o=o.parent}else o=e;const c=i.slice(s).join(".");return o.name+(o.name&&c?".":"")+c}}function Ra(t){return t.self.$$state=()=>t,t.self}function Ma(t){return t.parent&&t.parent.data&&(t.data=t.self.data=Cc(t.parent.data,t.data)),t.data}function Pa(t,n){return function(e){let i=e.self;if(i&&i.url&&i.name&&i.name.match(/\.\*\*$/)){const t={};zc(i,t),t.url+="{remainder:any}",i=t}const{parent:r}=e,s=function(t){if(!j(t))return!1;const n="^"===t.charAt(0);return{val:n?t.substring(1):t,root:n}}(i.url),o=s?t.compile(s.val,{state:i}):i.url;if(!o)return null;if(!t.isMatcher(o))throw new Error(`Invalid url '${o}' in state '${e}'`);return s&&s.root?o:(r&&r.navigable||n()).url.append(o)}}function _a(t){return t.parent?t.parent.path.concat(t):[t]}function Na(t){const n=t.parent?Object.assign({},t.parent.includes):{};return n[t.name]=!0,n}function Ia(t){const n=Xc([[t=>t.resolveFn,t=>new wu(Va(t),t.resolveFn,t.deps,t.policy)],[t=>t.useFactory,t=>new wu(Va(t),t.useFactory,t.deps||t.dependencies,t.policy)],[t=>t.useClass,t=>new wu(Va(t),()=>new t.useClass,[],t.policy)],[t=>t.useValue,t=>new wu(Va(t),()=>t.useValue,[],t.policy,t.useValue)],[t=>t.useExisting,t=>new wu(Va(t),t=>t,[t.useExisting],t.policy)]]),e=Xc([[t=>j(t.val),t=>new wu(t.token,t=>t,[t.val],t.policy)],[t=>O(t.val),t=>new wu(t.token,Lc(t.val),t.val.slice(0,-1),t.policy)],[t=>N(t.val),t=>new wu(t.token,t.val,(t=>{const{$injector:n}=window.angular;return t.$inject||n&&Yn(t,n.strictDi)||"deferred"})(t.val),t.policy)]]),i=Xc([[Kc(wu),t=>t],[t=>!(!t.token||!t.resolveFn),n],[t=>!!(t&&t.val&&(j(t.val)||O(t.val)||N(t.val))),e],[Yc(!0),t=>{throw new Error(`Invalid resolve value: ${au(t)}`)}]]),r=t.resolve;var s,o;return(O(r)?r:(s=r,o=t.resolvePolicy||{},Object.keys(s||{}).map(t=>({token:t,val:s[t],deps:void 0,policy:o[t]})))).map(i)}class Da{constructor(t,n){this.matcher=t,this.$injector=void 0;const e=this,i=()=>t.find("");var r,s;this.builders={name:[t=>t.name],self:[Ra],parent:[function(n){return qa(n)?null:t.find(e.parentName(n))||i()}],data:[Ma],url:[Pa(n,i)],navigable:[(s=qa,function(t){return!s(t)&&t.url?t:t.parent?t.parent.navigable:null})],params:[(r=n.paramFactory,function(t){const n=t.url&&t.url.parameters({inherit:!1})||[],e=Object.values(_c(Rc(t.params||{},n.map(t=>t.id)),(n,e)=>r.fromConfig(e,null,t.self)));return n.concat(e).map(t=>[t.id,t]).reduce(Hc,{})})],views:[],path:[_a],includes:[Na],resolvables:[Ia]}}builder(t,n){const{builders:e}=this,i=e[t]||[];return j(t)&&!x(n)?i.length>1?i:i[0]:j(t)&&N(n)?(e[t]=i,e[t].push(n),()=>e[t].splice(e[t].indexOf(n,1))&&null):void 0}build(t){const{matcher:n,builders:e}=this,i=this.parentName(t);if(i&&!n.find(i,void 0,!1))return null;for(const n in e){if(!xt(e,n))continue;const i=e[n].reduce((t,n)=>e=>n(e,t),()=>{});t[n]=i(t)}return t}parentName(t){const n=t.name||"",e=n.split(".");if("**"===e.pop()&&e.pop(),e.length){if(t.parent)throw new Error(`States that specify the 'parent:' property should not have a '.' in their name (${n})`);return e.join(".")}return t.parent?j(t.parent)?t.parent:t.parent.name:""}name(t){const{name:n}=t;if(-1!==n.indexOf(".")||!t.parent)return n;const e=j(t.parent)?t.parent:t.parent.name;return e?`${e}.${n}`:n}}function qa(t){return""===t.name}function Va(t){return t.provide||t.token}class Ua{constructor(t,n,e,i,r){this.stateRegistry=t,this.urlServiceRules=n,this.states=e,this.builder=i,this.listeners=r,this.queue=[]}register(t){const n=new ka(t);if(!j(name))throw new Error("State must have a valid name");if(xt(this.states,n.name)||this.queue.map(t=>t.name).includes(n.name))throw new Error(`State '${n.name}' is already defined`);return this.queue.push(n),this.flush(),n}flush(){const{queue:t,states:n,builder:e}=this,i=[],r=[],s={},o=t=>xt(this.states,t)&&this.states[t],c=()=>{i.length&&this.listeners.forEach(t=>t("registered",i.map(t=>t.self)))};for(;t.length>0;){const u=t.shift(),{name:a}=u,h=e.build(u),l=r.indexOf(u);if(h){const t=o(a);if(t&&t.name===a)throw new Error(`State '${a}' is already defined`);const e=o(`${a}.**`);e&&this.stateRegistry.deregister(e),n[a]=u,this.attachRoute(u),l>=0&&r.splice(l,1),i.push(u);continue}const f=s[a];if(s[a]=t.length,l>=0&&f===t.length)return t.push(u),c(),n;l<0&&r.push(u),t.push(u)}return c(),n}attachRoute(t){if(t.abstract||!t.url)return;const n=this.urlServiceRules;n.rule(n.urlRuleFactory.create(t))}}class Fa{static $inject=zn([Ln.$url,Ln.$state,Ln.$router,Ln.$view]);constructor(t,n,e,i){this.states={},n.stateRegistry=this,this.urlService=t,this.urlServiceRules=t.rules,this.$injector=void 0,this.listeners=[],this.matcher=new Ta(this.states),this.builder=new Da(this.matcher,t),this.builder.builder("views",Au),this.builder.builder("onExit",this.getStateHookBuilder("onExit")),this.builder.builder("onRetain",this.getStateHookBuilder("onRetain")),this.builder.builder("onEnter",this.getStateHookBuilder("onEnter")),this.stateQueue=new Ua(this,this.urlServiceRules,this.states,this.builder,this.listeners),this.registerRoot(),i.rootViewContext(this.root()),e.$current=this.root(),e.current=e.$current.self}$get=[Ln.$injector,t=>(this.$injector=t,this.builder.$injector=t,this)];getStateHookBuilder(t){const n=this;return function(e){const i=e[t],r="onExit"===t?"from":"to";return i?function(t,e){const s=new Cu(t.treeChanges(r)).subContext(e.$$state()),o=Object.assign(Ha(s),{$state$:e,$transition$:t});return n.$injector.invoke(i,n,o)}:void 0}}registerRoot(){this.pe=this.stateQueue.register({name:"",url:"^",views:null,params:{"#":{value:null,type:"hash",dynamic:!0}},abstract:!0}),this.pe.navigable=null}onStatesChanged(t){return this.listeners.push(t),function(){jc(this.listeners,t)}.bind(this)}root(){return this.pe}register(t){return this.stateQueue.register(t)}ge(t){const n=this.get().map(t=>t.$$state()),e=t=>{const i=n.filter(n=>-1!==t.indexOf(n.parent));return 0===i.length?i:i.concat(e(i))},i=e([t]),r=[t].concat(i).reverse();return r.forEach(t=>{const n=this.urlServiceRules;n.rules().filter(Zc("state",t)).forEach(t=>n.removeRule(t)),delete this.states[t.name]}),r}deregister(t){const n=this.get(t);if(!n)throw new Error(`Can't deregister state; not found: ${t}`);const e=this.ge(n.$$state());return this.listeners.forEach(t=>t("deregistered",e.map(t=>t.self))),e}get(t,n){if(0===arguments.length)return Ot(this.states).map(t=>this.states[t].self);const e=this.matcher.find(t,n);return e&&e.self||null}decorator(t,n){return this.builder.builder(t,n)}}const Ha=t=>t.getTokens().filter(j).map(n=>{const e=t.getResolvable(n);return[n,"NOWAIT"===t.getPolicy(e).async?e.promise:e.data]}).reduce(Hc,{});function La(t){const n=t.match(/^\s*({[^}]*})\s*$/);n&&(t=`(${n[1]})`);const e=t.replace(/\n/g," ").match(/^\s*([^(]*?)\s*(\((.*)\))?\s*$/);if(!e||4!==e.length)throw new Error(`Invalid state ref '${t}'`);return{state:e[1]||null,paramExpr:e[3]||null}}function za(t){const n=Tn(t,"$ngView"),e=Gc("$cfg.path")(n);return e?Lc(e).state.name:void 0}function Ba(t,n,e){const i=e.ngState||t.current.name,r=Object.assign(function(t,n){return{relative:za(t)||n.$current,inherit:!0,source:"sref"}}(n,t),e.ngStateOpts||{}),s=t.href(i,e.ngStateParams,r);return{ngState:i,ngStateParams:e.ngStateParams,ngStateOpts:r,href:s}}function Wa(t){const n="[object SVGAnimatedString]"===Object.prototype.toString.call(t.getAttribute("href")),e="FORM"===t.nodeName;return{attr:e?"action":n?"xlink:href":"href",isAnchor:"A"===t.nodeName,clickable:!e}}function Ja(t,n,e,i,r){return function(s){const o=s.which||s.button,c=i();if(o>1||s.ctrlKey||s.metaKey||s.shiftKey||s.altKey||t.getAttribute("target"))s.preventDefault(),s.stopImmediatePropagation();else{const i=setTimeout(function(){t.getAttribute("disabled")||n.go(c.ngState,c.ngStateParams,c.ngStateOpts).then(()=>{r.$emit("$updateBrowser")})});s.preventDefault();let o=e.isAnchor&&!c.href?1:0;s.preventDefault=function(){o--<=0&&clearTimeout(i)}}}}function Za(t,n,e,i){let r=i?i.events:void 0;O(r)||(r=["click"]);for(const n of r)t.addEventListener(n,e);n.$on("$destroy",function(){for(const n of r)t.removeEventListener(n,e)})}function Ga(t,n,e){const i=t;return{restrict:"A",require:["?^ngSrefActive","?^ngSrefActiveEq"],link:(t,r,s,o)=>{const c=Wa(r),u=o[1]||o[0];let a=null;const h={},l=()=>Ba(i,r,h),f=La(s.ngSref);function d(){h.ngStateParams=Object.assign({},t.$eval(f.paramExpr));const n=l();a&&a(),u&&(a=u.$$addStateInfo(n.ngState,n.ngStateParams)),T(n.href)||s.$set(c.attr,n.href)}h.ngState=f.state,h.ngStateOpts=s.ngSrefOpts?t.$eval(s.ngSrefOpts):{},f.paramExpr&&(t.$watch(f.paramExpr,function(t){h.ngStateParams=Object.assign({},t),d()},!0),h.ngStateParams=Object.assign({},t.$eval(f.paramExpr))),d(),t.$on("$destroy",n.onStatesChanged(d)),t.$on("$destroy",e.onSuccess({},d)),c.clickable&&Za(r,t,Ja(r,i,c,l,t),h.ngStateOpts)}}}function Ka(t,n,e){return{restrict:"A",require:["?^ngSrefActive","?^ngSrefActiveEq"],link(i,r,s,o){const c=Wa(r),u=o[1]||o[0];let a=null;const h={},l=()=>Ba(t,r,h),f=["ngState","ngStateParams","ngStateOpts"],d=f.reduce((t,n)=>(t[n]=()=>{},t),{});function $(){const t=l();a&&a(),u&&(a=u.$$addStateInfo(t.ngState,t.ngStateParams)),T(t.href)||s.$set(c.attr,t.href)}if(f.forEach(t=>{h[t]=s[t]?i.$eval(s[t]):null,s.$observe(t,n=>{d[t](),d[t]=i.$watch(n,n=>{h[t]=n,$()})})}),$(),i.$on("$destroy",n.onStatesChanged($)),i.$on("$destroy",e.onSuccess({},$)),!c.clickable)return;const m=Ja(r,t,c,l,i);Za(r,i,m,h.ngStateOpts)}}}function Ya(t,n,e,i,r){return{restrict:"A",controller(s,o,c){let u,a=[];const h=e(c.ngSrefActiveEq||"",!1)(s);try{u=s.$eval(c.ngSrefActive)}catch{}function l(t){t.promise.then(m,()=>{})}function f(){d(u)}function d(t){C(t)&&(a=[],Ct(t).forEach(([t,n])=>{const e=function(t,n){const e=La(t);$(e.state,s.$eval(e.paramExpr),n)};j(n)?e(n,t):O(n)&&n.forEach(n=>{e(n,t)})}))}function $(n,e,i){const r={state:t.get(n,za(o))||{name:n},params:e,activeClass:i};return a.push(r),function(){jc(a,r)}}function m(){const n=t=>t.split(/\s/).filter(Boolean),e=t=>t.map(t=>t.activeClass).map(n).reduce(Dc,[]),i=e(a).concat(n(h)).reduce(Vc,[]),r=e(a.filter(n=>t.includes(n.state.name,n.params))),s=a.filter(n=>t.is(n.state.name,n.params)).length?n(h):[],c=r.concat(s).reduce(Vc,[]),u=i.filter(t=>!c.includes(t));c.forEach(t=>o.classList.add(t)),u.forEach(t=>o.classList.remove(t))}u=u||e(c.ngSrefActive||"",!1)(s),d(u),this.$$addStateInfo=function(t,n){if(C(u)&&a.length>0)return;const e=$(t,n,u);return m(),e},s.$on("$destroy",function(){const t=i.onStatesChanged(f),n=r.onStart({},l),e=s.$on("$stateChangeSuccess",m);return function(){t(),n(),e()}}()),n.transition&&l(n.transition),m()}}}Ga.$inject=["$state","$stateRegistry","$transitions"],Ka.$inject=["$state","$stateRegistry","$transitions"],Ya.$inject=["$state","$router","$interpolate","$stateRegistry","$transitions"];const Xa=["$view","$animate","$viewScroll","$interpolate",function(t,n,e,i){const r={$cfg:{viewDecl:{$context:t.rootViewContext()}},$ngView:{}},s={count:0,terminal:!0,priority:400,transclude:"element",compile:(o,c,u)=>function(o,c,a){const h=a.onload||"",l=a.autoscroll,f={enter(t,e,i){Et(t)?n.enter(t,null,e).then(i):(e.after(t),i())},leave(t,e){Et(t)?n.leave(t).then(e):(t.parentElement.removeChild(t),e())}},d=Tn(c,"$ngView")||r,$=i(a.ngView||a.name||"")(o)||"$default";let m,p,g,w;const v={id:s.count++,name:$,fqn:d.$ngView.fqn?`${d.$ngView.fqn}.${$}`:$,config:null,configUpdated:function(t){(!t||t instanceof Ru)&&w!==t&&(gu.traceUIViewConfigUpdated(v,t&&t.viewDecl&&t.viewDecl.$context),w=t,y(t))},get creationContext(){const t=Gc("$cfg.viewDecl.$context")(d),n=Gc("$ngView.creationContext")(d);return t||n}};gu.traceUIViewEvent("Linking",v),Sn(c,"$ngView",{$ngView:v}),y();const b=t.registerUIView(v);function y(t){const n=o.$new(),i=Promise.withResolvers(),r=Promise.withResolvers(),s={$cfg:t,$ngView:v},a={$animEnter:i.promise,$animLeave:r.promise,$$animLeave:r};n.$emit("$viewContentLoading",$),p=u(n,function(t){Sn(t,"$ngViewAnim",a),Sn(t,"$ngView",s),f.enter(t,c,function(){i.resolve(),g&&g.$emit("$viewContentAnimationEnded"),(x(l)&&!l||o.$eval(l))&&e(t)}),function(){if(m&&(gu.traceUIViewEvent("Removing (previous) el",xn(m,"$ngView")),m.remove(),m=null),g&&(gu.traceUIViewEvent("Destroying scope",v),g.$destroy(),g=null),p){const t=xn(p,"$ngViewAnim");gu.traceUIViewEvent("Animate out",t),f.leave(p,function(){t.$$animLeave.resolve(),m=null}),m=p,p=null}}()}),g=n,g.$emit("$viewContentLoaded",t||w),g.$eval(h)}o.$on("$destroy",function(){gu.traceUIViewEvent("Destroying/Unregistering",v),b()})}};return s}];function Qa(t,n,e){const i=Gc("viewDecl.controllerAs"),r=Gc("viewDecl.resolveAs");return{priority:-400,compile(s){const o=s.innerHTML;return kn(s,!0),function(s,c){const u=xn(c,"$ngView");if(!u)return c.innerHTML=o,void t(c.contentDocument||c.childNodes)(s);const a=u.$cfg||{viewDecl:{},getTemplate:()=>{}},h=a.path&&new Cu(a.path);c.innerHTML=a.getTemplate(c,h)||o,gu.traceUIViewFill(u.$ngView,c.innerHTML);const l=t(c.contentDocument||c.childNodes),{controller:f}=a,d=i(a),$=r(a),m=h&&Ha(h);if($&&(s.$target[$]=m),f){const t=n(f,Object.assign({},m,{$scope:s,$element:c}));d&&(s.$target[d]=t,s.$target[d][$]=m),Sn(c,"$ngControllerController",t),Array.from(c.children).forEach(n=>{Sn(n,"$ngControllerController",t)}),function(t,n,e,i){!N(n.$onInit)||i.viewDecl.component||i.viewDecl.componentProvider||n.$onInit();const r=Lc(i.path).state.self,s={bind:n};if(N(n.uiOnParamsChanged)){const o=new Cu(i.path).getResolvable("$transition$").data,c=t=>{if(t===o||-1!==t.exiting().indexOf(r))return;const e=t.params("to"),i=t.params("from"),s=t=>t.paramSchema,c=t.treeChanges("to").map(s).reduce(Dc,[]),u=t.treeChanges("from").map(s).reduce(Dc,[]),a=c.filter(t=>{const n=u.indexOf(t);return-1===n||!u[n].type.equals(e[t.id],i[t.id])});if(a.length){const i=a.map(t=>t.id),r=Mc(e,(t,n)=>-1!==i.indexOf(n));n.uiOnParamsChanged(r,t)}};e.$on("$destroy",t.onSuccess({},c,s))}if(N(n.uiCanExit)){const i=th++,o="_uiCanExitIds",c=t=>!!t&&(t[o]&&!0===t[o][i]||c(t.redirectedFrom())),u=t=>{let e;const r=t[o]=t[o]||{};return c(t)||(e=Promise.resolve(n.uiCanExit(t)),e.then(t=>r[i]=!1!==t)),e},a={exiting:r.name};e.$on("$destroy",t.onBefore(a,u,s))}}(e,t,s,a)}l(s)}}}}Qa.$inject=["$compile","$controller","$transitions"];let th=0;function nh(t){return{link:(n,e,i)=>{const r=i.ngChannel,s=e.childNodes.length>0,o=t.subscribe(r,t=>{s?C(t)&&n.$merge(t):e.innerHTML=t});n.$on("$destroy",()=>o())}}}function eh(t,n){return{restrict:"A",link(e,i,r){const s=r.ngSetter;if(!s)return void n.warn("ng-setter: expression null");const o=t(s).assign;if(!o)return void n.warn("ng-setter: expression invalid");const c=t=>{o(e,t.trim())},u=new MutationObserver(t=>{let n=!1;for(const e of t)if("childList"===e.type||"characterData"===e.type){n=!0;break}n&&c(i.innerHTML)});u.observe(i,{childList:!0,subtree:!0,characterData:!0}),e.$on("$destroy",()=>u.disconnect()),c(i.innerHTML)}}}function ih(t,n){return{restrict:"A",link(e,i,r){const s=r.ngInject;if(!s)return;const o=s.split(";").map(t=>t.trim()).filter(Boolean);for(const i of o)n.has(i)?e[i]=n.get(i):t.warn(`Injectable ${i} not found in $injector`)}}}function rh(){return{restrict:"A",link(t,n,e){const i=e.ngEl||n.id;t.$target[i]=n;const r=n.parentNode;if(!r)return;const s=new MutationObserver(e=>{for(const r of e)Array.from(r.removedNodes).forEach(e=>{e===n&&(delete t.$target[i],s.disconnect())})});s.observe(r,{childList:!0})}}}nh.$inject=[Ln.$eventBus],eh.$inject=[Ln.$parse,Ln.$log],ih.$inject=[Ln.$log,Ln.$injector];class sh{constructor(){this.defaults={retryDelay:1e3,maxRetries:1/0,heartbeatTimeout:15e3,transformMessage(t){try{return JSON.parse(t)}catch{return t}}}}$get=[Ln.$log,t=>(this.we=t,(t,n={})=>{const e={...this.defaults,...n},i=this.#d(t,e.params);return this.#$(i,e)})];#d(t,n){if(!n)return t;const e=Ct(n).map(([t,n])=>`${encodeURIComponent(t)}=${encodeURIComponent(n)}`).join("&");return t+(t.includes("?")?"&":"?")+e}#$(t,n){let e,i,r=0,s=!1;const o=()=>{s||(e=new EventSource(t,{withCredentials:!!n.withCredentials}),e.addEventListener("open",t=>{r=0,n.onOpen?.(t),n.heartbeatTimeout&&c()}),e.addEventListener("message",t=>{let{data:e}=t;try{e=n.transformMessage?n.transformMessage(e):e}catch{}n.onMessage?.(e,t),n.heartbeatTimeout&&c()}),e.addEventListener("error",t=>{n.onError?.(t),s||(e.close(),r<n.maxRetries?(r++,n.onReconnect?.(r),setTimeout(o,n.retryDelay)):this.we.warn("SSE: Max retries reached"))}))},c=()=>{clearTimeout(i),i=setTimeout(()=>{this.we.warn("SSE: heartbeat timeout, reconnecting..."),e.close(),n.onReconnect?.(++r),o()},n.heartbeatTimeout)};return o(),{close(){s=!0,clearTimeout(i),e.close()},connect(){!1===s&&close(),o()}}}}function oh(){return{restrict:"A",link(t,n,e){const i=e.onEnter,r=e.onLeave,s=new IntersectionObserver(n=>{n.forEach(n=>{n.isIntersecting?i&&t.$eval(i):r&&t.$eval(r)})},{root:null,threshold:.1});s.observe(n);const o=n.parentNode;let c;o&&(c=new MutationObserver(t=>{for(const e of t)Array.from(e.removedNodes).forEach(t=>{t===n&&(s.disconnect(),c.disconnect())})}),c.observe(o,{childList:!0})),t.$on("$destroy",()=>{s.disconnect(),c&&c.disconnect()})}}}function ch(){return{async link(t,n,e){t.$target[e.as||"wasm"]=(await Rt(e.src)).exports}}}function uh(){return{scope:!1,async link(t,n,e){t.$scopename=e.ngScope}}}class ah{constructor(){this.defaults={}}$get=[Ln.$exceptionHandler,t=>new hh(this.defaults,t)]}class hh{constructor(t,n){this.ve=Object.freeze({...t}),this._=n}get(t){le(t,"key");try{return dh()[t]||null}catch(t){throw this._(t)}}getObject(t){le(t,"key");const n=this.get(t);if(!n)return null;try{return JSON.parse(n)}catch(n){throw this._(new SyntaxError(`badparse: "${t}" => ${n.message}`))}}getAll(){try{return dh()}catch(t){return this._(t)}}put(t,n,e={}){le(t,"key"),le(n,"value");const i=encodeURIComponent(t),r=encodeURIComponent(n);try{document.cookie=`${i}=${r}${function(t={}){const n=[];if(x(t.path)){if(!j(t.path))throw new TypeError(`${ce}:path ${t.path}`);n.push(`path=${t.path}`)}if(x(t.domain)){if(!j(t.domain))throw new TypeError(`${ce}:domain ${t.domain}`);n.push(`domain=${t.domain}`)}if(!T(t.expires)){let e;if(t.expires instanceof Date)e=t.expires;else{if(!M(t.expires)&&!j(t.expires))throw new TypeError(`${ce}:expires ${String(t.expires)}`);e=new Date(t.expires)}if(isNaN(e.getTime()))throw new TypeError(`${ce}:expires ${String(t.expires)}`);n.push(`expires=${e.toUTCString()}`)}if(t.secure&&n.push("secure"),x(t.samesite)){if(!j(t.samesite))throw new TypeError(`${ce}:samesite ${t.samesite}`);const e=t.samesite.toLowerCase();if(!["lax","strict","none"].includes(e))throw new TypeError(`${ce}:samesite ${t.samesite}`);n.push(`samesite=${e}`)}return n.length?`;${n.join(";")}`:""}({...this.ve,...e})}`}catch(t){this._(t)}}putObject(t,n,e){le(t,"key"),he(n,"value"),dt(!T(n),"badarg: value");try{const i=JSON.stringify(n);this.put(t,i,e)}catch(n){this._(new TypeError(`badserialize: "${t}" => ${n.message}`))}}remove(t,n={}){le(t,"key"),this.put(t,"",{...this.ve,...n,expires:new Date(0)})}}let lh="",fh=Object.create(null);function dh(){const t=document.cookie;if(t===lh)return fh;lh=t;const n=Object.create(null);if(!t)return fh=n,n;const e=t.split("; ");for(const t of e){const e=t.indexOf("=");if(-1===e)continue;const i=decodeURIComponent(t.substring(0,e)),r=decodeURIComponent(t.substring(e+1));n[i]=r}return fh=n,n}function $h(t,n){const e=encodeURIComponent(String(t));return n?e.replace(/(%3A|%2F|%3F|%23|%5B|%5D|%40|%21|%24|%26|%27|%28|%29|%2A|%2B|%2C|%3B|%3D)/gi,t=>decodeURIComponent(t)):e}class mh{static $nonscope=!0;constructor(t,n,e,i={}){dt(j(n)&&n.length>0,"baseUrl required"),this.be=t,this.ye=n,this.ke=e,this.D=i}buildUrl(t,n){return function(t,n={}){if("string"!=typeof t)throw new TypeError("template must be a string");return t.replace(/\{([^}]+)\}/g,(t,e)=>function(t,n){const e=/^[+#./;?&]/.test(t)?t[0]:"",i=e?t.slice(1):t,r={"":{sep:",",prefix:"",named:!1,ifEmpty:"",allowReserved:!1},"+":{sep:",",prefix:"",named:!1,ifEmpty:"",allowReserved:!0},"#":{sep:",",prefix:"#",named:!1,ifEmpty:"",allowReserved:!0},".":{sep:".",prefix:".",named:!1,ifEmpty:"",allowReserved:!1},"/":{sep:"/",prefix:"/",named:!1,ifEmpty:"",allowReserved:!1},";":{sep:";",prefix:";",named:!0,ifEmpty:"",allowReserved:!1},"?":{sep:"&",prefix:"?",named:!0,ifEmpty:"=",allowReserved:!1},"&":{sep:"&",prefix:"&",named:!0,ifEmpty:"=",allowReserved:!1}}[e];if(!r)throw new Error(`Unsupported operator: ${e}`);const s=i.split(",").map(t=>t.trim()).filter(Boolean),o=[];for(const t of s){const e=/^([A-Za-z0-9_.]+)(\*|(?::(\d+)))?$/.exec(t);if(!e)throw new Error(`Invalid varspec: ${t}`);const i=e[1],s="*"===e[2],c=e[3]?parseInt(e[3],10):void 0,u=n[i];if(null==u)continue;if(O(u)){if(0===u.length){r.named&&("="===r.ifEmpty?o.push(`${$h(i,r.allowReserved)}${r.ifEmpty}`):o.push($h(i,r.allowReserved)));continue}if(s)for(const t of u)null!=t&&(r.named?o.push(`${$h(i,r.allowReserved)}=${$h(t,r.allowReserved)}`):o.push($h(t,r.allowReserved)));else{const t=u.filter(t=>null!=t).map(t=>$h(t,r.allowReserved)).join(",");r.named?""===t?o.push($h(i,r.allowReserved)+("="===r.ifEmpty?r.ifEmpty:"")):o.push(`${$h(i,r.allowReserved)}=${t}`):o.push(t)}continue}if("object"==typeof u){const t=Object.keys(u);if(0===t.length){r.named&&o.push($h(i,r.allowReserved)+("="===r.ifEmpty?r.ifEmpty:""));continue}if(s)for(const n of t){const t=u[n];null!=t&&(r.named,o.push(`${$h(n,r.allowReserved)}=${$h(t,r.allowReserved)}`))}else{const n=t.map(t=>`${$h(t,r.allowReserved)},${$h(u[t],r.allowReserved)}`).join(",");r.named?""===n?o.push($h(i,r.allowReserved)+("="===r.ifEmpty?r.ifEmpty:"")):o.push(`${$h(i,r.allowReserved)}=${n}`):o.push(n)}continue}let a=String(u);"number"==typeof c&&(a=a.substring(0,c)),""!==a?r.named?o.push(`${$h(i,r.allowReserved)}=${$h(a,r.allowReserved)}`):o.push($h(a,r.allowReserved)):r.named?"="===r.ifEmpty?o.push(`${$h(i,r.allowReserved)}${r.ifEmpty}`):o.push($h(i,r.allowReserved)):o.push($h(a,r.allowReserved))}return 0===o.length?"":r.prefix+o.join(r.sep)}(e,n))}(t,n||{})}#m(t){return t&&this.ke?new this.ke(t):t}async list(t={}){const n=this.buildUrl(this.ye,t),e=await this.#p("get",n,null,t);return O(e.data)?e.data.map(t=>this.#m(t)):[]}async read(t,n={}){dt(!T(t),`${ce}:id ${t}`);const e=this.buildUrl(`${this.ye}/${t}`,n),i=await this.#p("get",e,null,n);return this.#m(i.data)}async create(t){dt(!T(t),`${ce}:item ${t}`);const n=await this.#p("post",this.ye,t);return this.#m(n.data)}async update(t,n){dt(!T(t),`${ce}:id ${t}`);const e=`${this.ye}/${t}`;try{const t=await this.#p("put",e,n);return this.#m(t.data)}catch{return null}}async delete(t){dt(!T(t),`${ce}:id ${t}`);const n=`${this.ye}/${t}`;try{return await this.#p("delete",n),!0}catch{return!1}}async#p(t,n,e=null,i={}){return await this.be({method:t,url:n,data:e,params:i,...this.D})}}class ph{constructor(){this.Ee=[]}rest(t,n,e,i={}){this.Ee.push({name:t,url:n,entityClass:e,options:i})}$get=[Ln.$http,t=>{const n=new Map,e=(n,e,i={})=>new mh(t,n,e,i);for(const t of this.Ee){const i=e(t.url,t.entityClass,t.options);n.set(t.name,i)}return e.get=t=>n.get(t),e.listNames=()=>Array.from(n.keys()),e}]}const gh=wt("ng"),wh=wt("$injector"),vh={},bh=new class{constructor(){this.$cache=Mt,this.$eventBus=Iu,this.version="0.14.3",this.bootsrappedModules=[],this.getController=An,this.getInjector=In,this.getScope=On,this.errorHandlingConfig=gt,this.$t=Ln,window.angular=this,function(t){t.module("ng",[],[Ln.$provide,t=>{t.provider({$$sanitizeUri:po}),t.value(Ln.$window,window),t.value(Ln.$document,document),t.provider(Ln.$compile,gi).directive({input:sr,textarea:sr,form:Si,script:ar,select:lr,option:fr,ngBind:dr,ngBindHtml:mr,ngBindTemplate:$r,ngChannel:nh,ngClass:br,ngClassEven:kr,ngClassOdd:yr,ngCloak:Er,ngController:Sr,ngDelete:De,ngDisabled:Mo,ngEl:rh,ngForm:xi,ngGet:Ie,ngHide:jr,ngIf:Ar,ngInclude:Tr,ngInject:ih,ngInit:Mr,ngMessages:bo,ngMessage:So,ngMessageExp:xo,ngMessagesInclude:Eo,ngMessageDefault:Oo,ngNonBindable:Pr,ngPost:qe,ngPut:Ve,ngRef:Nr,ngRepeat:Vr,ngSetter:eh,ngShow:Cr,ngStyle:Ur,ngSse:Ue,ngSwitch:Fr,ngSwitchWhen:Hr,ngSwitchDefault:Lr,ngOptions:Zr,ngTransclude:Kr,ngModel:_i,pattern:ts,ngPattern:ts,required:Qr,ngRequired:Qr,ngMinlength:es,minlength:es,ngMaxlength:ns,maxlength:ns,ngValue:ur,ngModelOptions:Ti,ngViewport:oh,ngWasm:ch,ngWorker:He,ngScope:uh}).directive({input:or,ngAnimateSwap:Sc,ngAnimateChildren:xc,ngChecked:Do,ngClick:No,ngDblclick:Ho,ngInclude:Rr,ngHide:Vo,ngShow:Po,ngMessages:_o,ngModel:Fo,ngReadonly:Uo,ngRequired:Io,ngValue:qo,ngSref:Ga,ngSrefActive:Ya,ngSrefActiveEq:Ya,ngState:Ka,ngView:Xa}).directive({ngView:Qa}).directive(Xr).directive(ni),t.provider({$aria:Ro,$anchorScroll:ss,$animate:us,$$animation:lc,$animateCss:ic,$$animateCssDriver:bc,$$animateJs:uc,$$animateJsDriver:Ec,$$animateCache:gc,$$animateQueue:cc,$controller:Ge,$cookie:ah,$exceptionHandler:hs,$filter:ys,$interpolate:Fs,$http:_e,$httpParamSerializer:je,$location:Gs,$log:to,$parse:Ps,$$rAFScheduler:fc,$rest:ph,$rootScope:oo,$router:su,$sce:ti,$sceDelegate:Qe,$sse:sh,$templateCache:as,$templateRequest:mo,$urlConfig:eu,$view:Mu,$transitions:ha,$state:fa,$viewScroll:da,$templateFactory:$a,$url:Aa,$stateRegistry:Fa,$eventBus:Nu})}]).factory("$stateParams",[Ln.$router,t=>t.params]).value("$trace",gu)}(this)}module(t,n,e){return Q(t,"module"),n&&xt(vh,t)&&(vh[t]=null),function(t,n,e){return t[n]||(t[n]=e())}(vh,t,()=>{if(!n)throw wh("nomod","Module '{0}' is not available. Possibly misspelled or not loaded",t);return new ze(t,n,e)})}bootstrap(t,n,e){if(e=e||{strictDi:!1},(t instanceof Element||t instanceof Document)&&In(t))throw gh("btstrpd","App already bootstrapped");O(n)&&(this.bootsrappedModules=n),this.bootsrappedModules.unshift(["$provide",n=>{n.value("$rootElement",t)}]),this.bootsrappedModules.unshift("ng");const i=$e(this.bootsrappedModules,e.strictDi);return i.invoke([Ln.$rootScope,Ln.$rootElement,Ln.$compile,Ln.$injector,(t,n,e,i)=>{if(this.$rootScope=t,this.$injector=i,Sn(n,"$injector",i),e(n)(t),!xt(i,"strictDi"))try{i.invoke(()=>{})}catch(t){i.strictDi=!!/strict mode/.exec(t&&t.toString())}i.get(Ln.$stateRegistry).get().map(t=>t.$$state().resolvables).reduce(Dc,[]).filter(t=>"deferred"===t.deps).forEach(t=>t.deps=Yn(t.resolveFn,i.strictDi))}]),i}injector(t,n){return $e(t,n)}init(t){let n,e;const i={};lt.forEach(i=>{const r=`${i}app`;t.hasAttribute&&t.hasAttribute(r)&&(n=t,e=t.getAttribute(r))}),lt.forEach(i=>{const r=`${i}app`;let s;!n&&(s=t.querySelector(`[${r.replace(":","\\:")}]`))&&(n=s,e=s.getAttribute(r))}),n&&(i.strictDi=null!==function(t){let n,e;const i=lt.length;for(e=0;e<i;++e)if(n=lt[e]+"strict-di",j(n=t.getAttribute(n)))return n;return null}(n),this.bootstrap(n,e?[e]:[],i))}getScopeByName(t){const n=this.$rootScope.$searchByName(t);if(n)return n.$proxy}};document.addEventListener("DOMContentLoaded",()=>bh.init(document),{once:!0}),t.angular=bh});
2
+ //# sourceMappingURL=angular-ts.umd.min.js.map