text: "use strict";var __spreadArrays=this&&this.__spreadArrays||function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var r=Array(e),o=0;for(t=0;t<n;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,o++)r[o]=i[a];return r};
  /**
   * @license Angular v12.0.0-next.0
   * (c) 2010-2020 Google LLC. https://angular.io/
   * License: MIT
   */!function(e){"function"==typeof define&&define.amd?define(e):e()}((function(){!function(e){var t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function r(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");var o=e.__Zone_symbol_prefix||"__zone_symbol__";function i(e){return o+e}var a=!0===e[i("forceDuplicateZoneCheck")];if(e.Zone){if(a||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}var s=function(){function t(e,t){this._parent=e,this._name=t?t.name||"unnamed":"<root>",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}return t.assertZonePatched=function(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")},Object.defineProperty(t,"root",{get:function(){for(var e=t.current;e.parent;)e=e.parent;return e},enumerable:!1,configurable:!0}),Object.defineProperty(t,"current",{get:function(){return j.zone},enumerable:!1,configurable:!0}),Object.defineProperty(t,"currentTask",{get:function(){return A},enumerable:!1,configurable:!0}),t.__load_patch=function(o,i,s){if(void 0===s&&(s=!1),C.hasOwnProperty(o)){if(!s&&a)throw Error("Already loaded patch: "+o)}else if(!e["__Zone_disable_"+o]){var c="Zone:"+o;n(c),C[o]=i(e,t,D),r(c,c)}},Object.defineProperty(t.prototype,"parent",{get:function(){return this._parent},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"name",{get:function(){return this._name},enumerable:!1,configurable:!0}),t.prototype.get=function(e){var t=this.getZoneWith(e);if(t)return t._properties[e]},t.prototype.getZoneWith=function(e){for(var t=this;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null},t.prototype.fork=function(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)},t.prototype.wrap=function(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);var n=this._zoneDelegate.intercept(this,e,t),r=this;return function(){return r.runGuarded(n,this,arguments,t)}},t.prototype.run=function(e,t,n,r){j={parent:j,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,r)}finally{j=j.parent}},t.prototype.runGuarded=function(e,t,n,r){void 0===t&&(t=null),j={parent:j,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,r)}catch(e){if(this._zoneDelegate.handleError(this,e))throw e}}finally{j=j.parent}},t.prototype.runTask=function(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||g).name+"; Execution: "+this.name+")");if(e.state!==k||e.type!==O&&e.type!==Z){var r=e.state!=E;r&&e._transitionTo(E,b),e.runCount++;var o=A;A=e,j={parent:j,zone:this};try{e.type==Z&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(e){if(this._zoneDelegate.handleError(this,e))throw e}}finally{e.state!==k&&e.state!==w&&(e.type==O||e.data&&e.data.isPeriodic?r&&e._transitionTo(b,E):(e.runCount=0,this._updateTaskCount(e,-1),r&&e._transitionTo(k,E,k))),j=j.parent,A=o}}},t.prototype.scheduleTask=function(e){if(e.zone&&e.zone!==this)for(var t=this;t;){if(t===e.zone)throw Error("can not reschedule task to "+this.name+" which is descendants of the original zone "+e.zone.name);t=t.parent}e._transitionTo(T,k);var n=[];e._zoneDelegates=n,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(t){throw e._transitionTo(w,T,k),this._zoneDelegate.handleError(this,t),t}return e._zoneDelegates===n&&this._updateTaskCount(e,1),e.state==T&&e._transitionTo(b,T),e},t.prototype.scheduleMicroTask=function(e,t,n,r){return this.scheduleTask(new h(P,e,t,n,r,void 0))},t.prototype.scheduleMacroTask=function(e,t,n,r,o){return this.scheduleTask(new h(Z,e,t,n,r,o))},t.prototype.scheduleEventTask=function(e,t,n,r,o){return this.scheduleTask(new h(O,e,t,n,r,o))},t.prototype.cancelTask=function(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||g).name+"; Execution: "+this.name+")");e._transitionTo(S,b,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(w,S),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(k,S),e.runCount=0,e},t.prototype._updateTaskCount=function(e,t){var n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(var r=0;r<n.length;r++)n[r]._updateTaskCount(e.type,t)},t}();s.__symbol__=i;var c,u={name:"",onHasTask:function(e,t,n,r){return e.hasTask(n,r)},onScheduleTask:function(e,t,n,r){return e.scheduleTask(n,r)},onInvokeTask:function(e,t,n,r,o,i){return e.invokeTask(n,r,o,i)},onCancelTask:function(e,t,n,r){return e.cancelTask(n,r)}},l=function(){function e(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;var r=n&&n.onHasTask;(r||t&&t._hasTaskZS)&&(this._hasTaskZS=r?n:u,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=u,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=u,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=u,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}return e.prototype.fork=function(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new s(e,t)},e.prototype.intercept=function(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t},e.prototype.invoke=function(e,t,n,r,o){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,r,o):t.apply(n,r)},e.prototype.handleError=function(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)},e.prototype.scheduleTask=function(e,t){var n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),(n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t))||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=P)throw new Error("Task is missing scheduleFn.");_(t)}return n},e.prototype.invokeTask=function(e,t,n,r){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,r):t.callback.apply(n,r)},e.prototype.cancelTask=function(e,t){var n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n},e.prototype.hasTask=function(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(t){this.handleError(e,t)}},e.prototype._updateTaskCount=function(e,t){var n=this._taskCounts,r=n[e],o=n[e]=r+t;if(o<0)throw new Error("More tasks executed then were scheduled.");0!=r&&0!=o||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})},e}(),h=function(){function t(n,r,o,i,a,s){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=n,this.source=r,this.data=i,this.scheduleFn=a,this.cancelFn=s,!o)throw new Error("callback is not defined");this.callback=o;var c=this;this.invoke=n===O&&i&&i.useG?t.invokeTask:function(){return t.invokeTask.call(e,c,this,arguments)}}return t.invokeTask=function(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}},Object.defineProperty(t.prototype,"zone",{get:function(){return this._zone},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"state",{get:function(){return this._state},enumerable:!1,configurable:!0}),t.prototype.cancelScheduleRequest=function(){this._transitionTo(k,T)},t.prototype._transitionTo=function(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(this.type+" '"+this.source+"': can not transition to '"+e+"', expecting state '"+t+"'"+(n?" or '"+n+"'":"")+", was '"+this._state+"'.");this._state=e,e==k&&(this._zoneDelegates=null)},t.prototype.toString=function(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)},t.prototype.toJSON=function(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}},t}(),p=i("setTimeout"),f=i("Promise"),d=i("then"),y=[],v=!1;function _(t){if(0===I&&0===y.length)if(c||e[f]&&(c=e[f].resolve(0)),c){var n=c[d];n||(n=c.then),n.call(c,m)}else e[p](m,0);t&&y.push(t)}function m(){if(!v){for(v=!0;y.length;){var e=y;y=[];for(var t=0;t<e.length;t++){var n=e[t];try{n.zone.runTask(n,null,null)}catch(e){D.onUnhandledError(e)}}}D.microtaskDrainDone(),v=!1}}var g={name:"NO ZONE"},k="notScheduled",T="scheduling",b="scheduled",E="running",S="canceling",w="unknown",P="microTask",Z="macroTask",O="eventTask",C={},D={symbol:i,currentZoneFrame:function(){return j},onUnhandledError:M,microtaskDrainDone:M,scheduleMicroTask:_,showUncaughtError:function(){return!s[i("ignoreConsoleErrorUncaughtError")]},patchEventTarget:function(){return[]},patchOnProperties:M,patchMethod:function(){return M},bindArguments:function(){return[]},patchThen:function(){return M},patchMacroTask:function(){return M},patchEventPrototype:function(){return M},isIEOrEdge:function(){return!1},getGlobalObjects:function(){},ObjectDefineProperty:function(){return M},ObjectGetOwnPropertyDescriptor:function(){},ObjectCreate:function(){},ArraySlice:function(){return[]},patchClass:function(){return M},wrapWithCurrentZone:function(){return M},filterProperties:function(){return[]},attachOriginToPatched:function(){return M},_redefineProperty:function(){return M},patchCallbacks:function(){return M}},j={parent:null,zone:new s(null,null)},A=null,I=0;function M(){}r("Zone","Zone"),e.Zone=s}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global);
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  var e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,r=Object.create,o=Array.prototype.slice,i=Zone.__symbol__("addEventListener"),a=Zone.__symbol__("removeEventListener"),s=Zone.__symbol__("");
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */function c(e,t){return Zone.current.wrap(e,t)}function u(e,t,n,r,o){return Zone.current.scheduleMacroTask(e,t,n,r,o)}var l=Zone.__symbol__,h="undefined"!=typeof window,p=h?window:void 0,f=h&&p||"object"==typeof self&&self||global,d=[null];function y(e,t){for(var n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=c(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}var _="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,m=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),g=!m&&!_&&!(!h||!p.HTMLElement),k=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!_&&!(!h||!p.HTMLElement),T={},b=function(e){if(e=e||f.event){var t=T[e.type];t||(t=T[e.type]=l("ON_PROPERTY"+e.type));var n,r=this||e.target||f,o=r[t];if(g&&r===p&&"error"===e.type){var i=e;!0===(n=o&&o.call(this,i.message,i.filename,i.lineno,i.colno,i.error))&&e.preventDefault()}else null==(n=o&&o.apply(this,arguments))||n||e.preventDefault();return n}};function E(n,r,o){var i=e(n,r);if(!i&&o&&e(o,r)&&(i={enumerable:!0,configurable:!0}),i&&i.configurable){var a=l("on"+r+"patched");if(!n.hasOwnProperty(a)||!n[a]){delete i.writable,delete i.value;var s=i.get,c=i.set,u=r.substr(2),h=T[u];h||(h=T[u]=l("ON_PROPERTY"+u)),i.set=function(e){var t=this;t||n!==f||(t=f),t&&(t[h]&&t.removeEventListener(u,b),c&&c.apply(t,d),"function"==typeof e?(t[h]=e,t.addEventListener(u,b,!1)):t[h]=null)},i.get=function(){var e=this;if(e||n!==f||(e=f),!e)return null;var t=e[h];if(t)return t;if(s){var o=s&&s.call(this);if(o)return i.set.call(this,o),"function"==typeof e.removeAttribute&&e.removeAttribute(r),o}return null},t(n,r,i),n[a]=!0}}}function S(e,t,n){if(t)for(var r=0;r<t.length;r++)E(e,"on"+t[r],n);else{var o=[];for(var i in e)"on"==i.substr(0,2)&&o.push(i);for(var a=0;a<o.length;a++)E(e,o[a],n)}}var w=l("originalInstance");function P(e){var n=f[e];if(n){f[l(e)]=n,f[e]=function(){var t=y(arguments,e);switch(t.length){case 0:this[w]=new n;break;case 1:this[w]=new n(t[0]);break;case 2:this[w]=new n(t[0],t[1]);break;case 3:this[w]=new n(t[0],t[1],t[2]);break;case 4:this[w]=new n(t[0],t[1],t[2],t[3]);break;default:throw new Error("Arg list too long.")}},C(f[e],n);var r,o=new n((function(){}));for(r in o)"XMLHttpRequest"===e&&"responseBlob"===r||function(n){"function"==typeof o[n]?f[e].prototype[n]=function(){return this[w][n].apply(this[w],arguments)}:t(f[e].prototype,n,{set:function(t){"function"==typeof t?(this[w][n]=c(t,e+"."+n),C(this[w][n],t)):this[w][n]=t},get:function(){return this[w][n]}})}(r);for(r in n)"prototype"!==r&&n.hasOwnProperty(r)&&(f[e][r]=n[r])}}function Z(t,r,o){for(var i=t;i&&!i.hasOwnProperty(r);)i=n(i);!i&&t[r]&&(i=t);var a=l(r),s=null;if(i&&(!(s=i[a])||!i.hasOwnProperty(a))&&(s=i[a]=i[r],v(i&&e(i,r)))){var c=o(s,a,r);i[r]=function(){return c(this,arguments)},C(i[r],s)}return s}function O(e,t,n){var r=null;function o(e){var t=e.data;return t.args[t.cbIdx]=function(){e.invoke.apply(this,arguments)},r.apply(t.target,t.args),e}r=Z(e,t,(function(e){return function(t,r){var i=n(t,r);return i.cbIdx>=0&&"function"==typeof r[i.cbIdx]?u(i.name,r[i.cbIdx],i,o):e.apply(t,r)}}))}function C(e,t){e[l("OriginalDelegate")]=t}var D=!1,j=!1;function A(){if(D)return j;D=!0;try{var e=p.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(j=!0)}catch(e){}return j}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */Zone.__load_patch("ZoneAwarePromise",(function(e,t,n){var r=Object.getOwnPropertyDescriptor,o=Object.defineProperty,i=n.symbol,a=[],s=!0===e[i("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=i("Promise"),u=i("then");n.onUnhandledError=function(e){if(n.showUncaughtError()){var t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=function(){for(var e=function(){var e=a.shift();try{e.zone.runGuarded((function(){if(e.throwOriginal)throw e.rejection;throw e}))}catch(e){!function r(e){n.onUnhandledError(e);try{var r=t[l];"function"==typeof r&&r.call(this,e)}catch(e){}}(e)}};a.length;)e()};var l=i("unhandledPromiseRejectionHandler");function h(e){return e&&e.then}function p(e){return e}function f(e){return P.reject(e)}var d=i("state"),y=i("value"),v=i("finally"),_=i("parentPromiseValue"),m=i("parentPromiseState");function g(e,t){return function(n){try{T(e,t,n)}catch(t){T(e,!1,t)}}}var k=i("currentTaskTrace");function T(e,r,i){var c,u=(c=!1,function e(t){return function(){c||(c=!0,t.apply(null,arguments))}});if(e===i)throw new TypeError("Promise resolved with itself");if(null===e[d]){var l=null;try{"object"!=typeof i&&"function"!=typeof i||(l=i&&i.then)}catch(t){return u((function(){T(e,!1,t)}))(),e}if(!1!==r&&i instanceof P&&i.hasOwnProperty(d)&&i.hasOwnProperty(y)&&null!==i[d])E(i),T(e,i[d],i[y]);else if(!1!==r&&"function"==typeof l)try{l.call(i,u(g(e,r)),u(g(e,!1)))}catch(t){u((function(){T(e,!1,t)}))()}else{e[d]=r;var h=e[y];if(e[y]=i,e[v]===v&&!0===r&&(e[d]=e[m],e[y]=e[_]),!1===r&&i instanceof Error){var p=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;p&&o(i,k,{configurable:!0,enumerable:!1,writable:!0,value:p})}for(var f=0;f<h.length;)S(e,h[f++],h[f++],h[f++],h[f++]);if(0==h.length&&0==r){e[d]=0;var b=i;try{throw new Error("Uncaught (in promise): "+function w(e){return e&&e.toString===Object.prototype.toString?(e.constructor&&e.constructor.name||"")+": "+JSON.stringify(e):e?e.toString():Object.prototype.toString.call(e)}(i)+(i&&i.stack?"\n"+i.stack:""))}catch(e){b=e}s&&(b.throwOriginal=!0),b.rejection=i,b.promise=e,b.zone=t.current,b.task=t.currentTask,a.push(b),n.scheduleMicroTask()}}}return e}var b=i("rejectionHandledHandler");function E(e){if(0===e[d]){try{var n=t[b];n&&"function"==typeof n&&n.call(this,{rejection:e[y],promise:e})}catch(e){}e[d]=!1;for(var r=0;r<a.length;r++)e===a[r].promise&&a.splice(r,1)}}function S(e,t,n,r,o){E(e);var i=e[d],a=i?"function"==typeof r?r:p:"function"==typeof o?o:f;t.scheduleMicroTask("Promise.then",(function(){try{var r=e[y],o=!!n&&v===n[v];o&&(n[_]=r,n[m]=i);var s=t.run(a,void 0,o&&a!==f&&a!==p?[]:[r]);T(n,!0,s)}catch(e){T(n,!1,e)}}),n)}var w=function(){},P=function(){function e(t){if(!(this instanceof e))throw new Error("Must be an instanceof Promise.");this[d]=null,this[y]=[];try{t&&t(g(this,!0),g(this,!1))}catch(e){T(this,!1,e)}}return e.toString=function(){return"function ZoneAwarePromise() { [native code] }"},e.resolve=function(e){return T(new this(null),!0,e)},e.reject=function(e){return T(new this(null),!1,e)},e.race=function(e){var t,n,r=new this((function(e,r){t=e,n=r}));function o(e){t(e)}function i(e){n(e)}for(var a=0,s=e;a<s.length;a++){var c=s[a];h(c)||(c=this.resolve(c)),c.then(o,i)}return r},e.all=function(t){return e.allWithCallback(t)},e.allSettled=function(t){return(this&&this.prototype instanceof e?this:e).allWithCallback(t,{thenCallback:function(e){return{status:"fulfilled",value:e}},errorCallback:function(e){return{status:"rejected",reason:e}}})},e.allWithCallback=function(e,t){for(var n,r,o=new this((function(e,t){n=e,r=t})),i=2,a=0,s=[],c=function(e){h(e)||(e=u.resolve(e));var o=a;try{e.then((function(e){s[o]=t?t.thenCallback(e):e,0==--i&&n(s)}),(function(e){t?(s[o]=t.errorCallback(e),0==--i&&n(s)):r(e)}))}catch(e){r(e)}i++,a++},u=this,l=0,p=e;l<p.length;l++)c(p[l]);return 0==(i-=2)&&n(s),o},Object.defineProperty(e.prototype,Symbol.toStringTag,{get:function(){return"Promise"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,Symbol.species,{get:function(){return e},enumerable:!1,configurable:!0}),e.prototype.then=function(n,r){var o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||e);var i=new o(w),a=t.current;return null==this[d]?this[y].push(a,i,n,r):S(this,a,i,n,r),i},e.prototype.catch=function(e){return this.then(null,e)},e.prototype.finally=function(n){var r=this.constructor[Symbol.species];r&&"function"==typeof r||(r=e);var o=new r(w);o[v]=v;var i=t.current;return null==this[d]?this[y].push(i,o,n,n):S(this,i,o,n,n),o},e}();P.resolve=P.resolve,P.reject=P.reject,P.race=P.race,P.all=P.all;var O=e[c]=e.Promise;e.Promise=P;var C=i("thenPatched");function D(e){var t=e.prototype,n=r(t,"then");if(!n||!1!==n.writable&&n.configurable){var o=t.then;t[u]=o,e.prototype.then=function(e,t){var n=this;return new P((function(e,t){o.call(n,e,t)})).then(e,t)},e[C]=!0}}return n.patchThen=D,O&&(D(O),Z(e,"fetch",(function(e){return function t(e){return function(t,n){var r=e.apply(t,n);if(r instanceof P)return r;var o=r.constructor;return o[C]||D(o),r}}(e)}))),Promise[t.__symbol__("uncaughtPromiseErrors")]=a,P})),
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  Zone.__load_patch("toString",(function(e){var t=Function.prototype.toString,n=l("OriginalDelegate"),r=l("Promise"),o=l("Error"),i=function i(){if("function"==typeof this){var a=this[n];if(a)return"function"==typeof a?t.call(a):Object.prototype.toString.call(a);if(this===Promise){var s=e[r];if(s)return t.call(s)}if(this===Error){var c=e[o];if(c)return t.call(c)}}return t.call(this)};i[n]=t,Function.prototype.toString=i;var a=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":a.call(this)}}));
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  var I=!1;if("undefined"!=typeof window)try{var M=Object.defineProperty({},"passive",{get:function(){I=!0}});window.addEventListener("test",M,M),window.removeEventListener("test",M,M)}catch(e){I=!1}var F={useG:!0},R={},x={},z=new RegExp("^"+s+"(\\w+)(true|false)$"),L=l("propagationStopped");function N(e,t){var n=(t?t(e):e)+"false",r=(t?t(e):e)+"true",o=s+n,i=s+r;R[e]={},R[e].false=o,R[e].true=i}function H(e,t,r){var o=r&&r.add||"addEventListener",i=r&&r.rm||"removeEventListener",a=r&&r.listeners||"eventListeners",c=r&&r.rmAll||"removeAllListeners",u=l(o),h="."+o+":",p=function(e,t,n){if(!e.isRemoved){var r=e.callback;"object"==typeof r&&r.handleEvent&&(e.callback=function(e){return r.handleEvent(e)},e.originalDelegate=r),e.invoke(e,t,[n]);var o=e.options;o&&"object"==typeof o&&o.once&&t[i].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,o)}},f=function(t){if(t=t||e.event){var n=this||t.target||e,r=n[R[t.type].false];if(r)if(1===r.length)p(r[0],n,t);else for(var o=r.slice(),i=0;i<o.length&&(!t||!0!==t[L]);i++)p(o[i],n,t)}},d=function(t){if(t=t||e.event){var n=this||t.target||e,r=n[R[t.type].true];if(r)if(1===r.length)p(r[0],n,t);else for(var o=r.slice(),i=0;i<o.length&&(!t||!0!==t[L]);i++)p(o[i],n,t)}};function y(t,r){if(!t)return!1;var p=!0;r&&void 0!==r.useG&&(p=r.useG);var y=r&&r.vh,v=!0;r&&void 0!==r.chkDup&&(v=r.chkDup);var _=!1;r&&void 0!==r.rt&&(_=r.rt);for(var g=t;g&&!g.hasOwnProperty(o);)g=n(g);if(!g&&t[o]&&(g=t),!g)return!1;if(g[u])return!1;var k,T=r&&r.eventNameToString,b={},E=g[u]=g[o],S=g[l(i)]=g[i],w=g[l(a)]=g[a],P=g[l(c)]=g[c];function Z(e,t){return!I&&"object"==typeof e&&e?!!e.capture:I&&t?"boolean"==typeof e?{capture:e,passive:!0}:e?"object"==typeof e&&!1!==e.passive?Object.assign(Object.assign({},e),{passive:!0}):e:{passive:!0}:e}r&&r.prepend&&(k=g[l(r.prepend)]=g[r.prepend]);var O=p?function(e){if(!b.isExisting)return E.call(b.target,b.eventName,b.capture?d:f,b.options)}:function(e){return E.call(b.target,b.eventName,e.invoke,b.options)},D=p?function(e){if(!e.isRemoved){var t=R[e.eventName],n=void 0;t&&(n=t[e.capture?"true":"false"]);var r=n&&e.target[n];if(r)for(var o=0;o<r.length;o++)if(r[o]===e){r.splice(o,1),e.isRemoved=!0,0===r.length&&(e.allRemoved=!0,e.target[n]=null);break}}if(e.allRemoved)return S.call(e.target,e.eventName,e.capture?d:f,e.options)}:function(e){return S.call(e.target,e.eventName,e.invoke,e.options)},j=r&&r.diff?r.diff:function(e,t){var n=typeof t;return"function"===n&&e.callback===t||"object"===n&&e.originalDelegate===t},A=Zone[l("UNPATCHED_EVENTS")],M=e[l("PASSIVE_EVENTS")],L=function(t,n,o,i,a,s){return void 0===a&&(a=!1),void 0===s&&(s=!1),function(){var c=this||e,u=arguments[0];r&&r.transferEventName&&(u=r.transferEventName(u));var l=arguments[1];if(!l)return t.apply(this,arguments);if(m&&"uncaughtException"===u)return t.apply(this,arguments);var h=!1;if("function"!=typeof l){if(!l.handleEvent)return t.apply(this,arguments);h=!0}if(!y||y(t,l,c,arguments)){var f=I&&!!M&&-1!==M.indexOf(u),d=Z(arguments[2],f);if(A)for(var _=0;_<A.length;_++)if(u===A[_])return f?t.call(c,u,l,d):t.apply(this,arguments);var g=!!d&&("boolean"==typeof d||d.capture),k=!(!d||"object"!=typeof d)&&d.once,E=Zone.current,S=R[u];S||(N(u,T),S=R[u]);var w,P=S[g?"true":"false"],O=c[P],C=!1;if(O){if(C=!0,v)for(_=0;_<O.length;_++)if(j(O[_],l))return}else O=c[P]=[];var D=c.constructor.name,z=x[D];z&&(w=z[u]),w||(w=D+n+(T?T(u):u)),b.options=d,k&&(b.options.once=!1),b.target=c,b.capture=g,b.eventName=u,b.isExisting=C;var L=p?F:void 0;L&&(L.taskData=b);var H=E.scheduleEventTask(w,l,L,o,i);return b.target=null,L&&(L.taskData=null),k&&(d.once=!0),(I||"boolean"!=typeof H.options)&&(H.options=d),H.target=c,H.capture=g,H.eventName=u,h&&(H.originalDelegate=l),s?O.unshift(H):O.push(H),a?c:void 0}}};return g[o]=L(E,h,O,D,_),k&&(g.prependListener=L(k,".prependListener:",(function(e){return k.call(b.target,b.eventName,e.invoke,b.options)}),D,_,!0)),g[i]=function(){var t=this||e,n=arguments[0];r&&r.transferEventName&&(n=r.transferEventName(n));var o=arguments[2],i=!!o&&("boolean"==typeof o||o.capture),a=arguments[1];if(!a)return S.apply(this,arguments);if(!y||y(S,a,t,arguments)){var c,u=R[n];u&&(c=u[i?"true":"false"]);var l=c&&t[c];if(l)for(var h=0;h<l.length;h++){var p=l[h];if(j(p,a)){if(l.splice(h,1),p.isRemoved=!0,0===l.length&&(p.allRemoved=!0,t[c]=null,"string"==typeof n)){var f=s+"ON_PROPERTY"+n;t[f]=null}return p.zone.cancelTask(p),_?t:void 0}}return S.apply(this,arguments)}},g[a]=function(){var t=this||e,n=arguments[0];r&&r.transferEventName&&(n=r.transferEventName(n));for(var o=[],i=q(t,T?T(n):n),a=0;a<i.length;a++){var s=i[a],c=s.originalDelegate?s.originalDelegate:s.callback;o.push(c)}return o},g[c]=function(){var t=this||e,n=arguments[0];if(n){r&&r.transferEventName&&(n=r.transferEventName(n));var o=R[n];if(o){var a=o.false,s=o.true,u=t[a],l=t[s];if(u){var h=u.slice();for(d=0;d<h.length;d++)this[i].call(this,n,(p=h[d]).originalDelegate?p.originalDelegate:p.callback,p.options)}if(l)for(h=l.slice(),d=0;d<h.length;d++){var p;this[i].call(this,n,(p=h[d]).originalDelegate?p.originalDelegate:p.callback,p.options)}}}else{for(var f=Object.keys(t),d=0;d<f.length;d++){var y=f[d],v=z.exec(y),m=v&&v[1];m&&"removeListener"!==m&&this[c].call(this,m)}this[c].call(this,"removeListener")}if(_)return this},C(g[o],E),C(g[i],S),P&&C(g[c],P),w&&C(g[a],w),!0}for(var v=[],_=0;_<t.length;_++)v[_]=y(t[_],r);return v}function q(e,t){if(!t){var n=[];for(var r in e){var o=z.exec(r),i=o&&o[1];if(i&&(!t||i===t)){var a=e[r];if(a)for(var s=0;s<a.length;s++)n.push(a[s])}}return n}var c=R[t];c||(N(t),c=R[t]);var u=e[c.false],l=e[c.true];return u?l?u.concat(l):u.slice():l?l.slice():[]}function U(e,t){var n=e.Event;n&&n.prototype&&t.patchMethod(n.prototype,"stopImmediatePropagation",(function(e){return function(t,n){t[L]=!0,e&&e.apply(t,n)}}))}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */function G(e,t,n,r,o){var i=Zone.__symbol__(r);if(!t[i]){var a=t[i]=t[r];t[r]=function(i,s,c){return s&&s.prototype&&o.forEach((function(t){var o=n+"."+r+"::"+t,i=s.prototype;if(i.hasOwnProperty(t)){var a=e.ObjectGetOwnPropertyDescriptor(i,t);a&&a.value?(a.value=e.wrapWithCurrentZone(a.value,o),e._redefineProperty(s.prototype,t,a)):i[t]&&(i[t]=e.wrapWithCurrentZone(i[t],o))}else i[t]&&(i[t]=e.wrapWithCurrentZone(i[t],o))})),a.call(t,i,s,c)},e.attachOriginToPatched(t[r],a)}}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */var B,W,Q,V,X,K=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],Y=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],J=["load"],$=["blur","error","focus","load","resize","scroll","messageerror"],ee=["bounce","finish","start"],te=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],ne=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],re=["close","error","open","message"],oe=["error","message"],ie=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],K,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function ae(e,t,n){if(!n||0===n.length)return t;var r=n.filter((function(t){return t.target===e}));if(!r||0===r.length)return t;var o=r[0].ignoreProperties;return t.filter((function(e){return-1===o.indexOf(e)}))}function se(e,t,n,r){e&&S(e,ae(e,t,n),r)}function ce(e,t){if((!m||k)&&!Zone[e.symbol("patchEvents")]){var r="undefined"!=typeof WebSocket,o=t.__Zone_ignore_on_properties;if(g){var i=window,a=function s(){try{var e=p.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}()?[{target:i,ignoreProperties:["error"]}]:[];se(i,ie.concat(["messageerror"]),o?o.concat(a):o,n(i)),se(Document.prototype,ie,o),void 0!==i.SVGElement&&se(i.SVGElement.prototype,ie,o),se(Element.prototype,ie,o),se(HTMLElement.prototype,ie,o),se(HTMLMediaElement.prototype,Y,o),se(HTMLFrameSetElement.prototype,K.concat($),o),se(HTMLBodyElement.prototype,K.concat($),o),se(HTMLFrameElement.prototype,J,o),se(HTMLIFrameElement.prototype,J,o);var c=i.HTMLMarqueeElement;c&&se(c.prototype,ee,o);var u=i.Worker;u&&se(u.prototype,oe,o)}var l=t.XMLHttpRequest;l&&se(l.prototype,te,o);var h=t.XMLHttpRequestEventTarget;h&&se(h&&h.prototype,te,o),"undefined"!=typeof IDBIndex&&(se(IDBIndex.prototype,ne,o),se(IDBRequest.prototype,ne,o),se(IDBOpenDBRequest.prototype,ne,o),se(IDBDatabase.prototype,ne,o),se(IDBTransaction.prototype,ne,o),se(IDBCursor.prototype,ne,o)),r&&se(WebSocket.prototype,re,o)}}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */function ue(){B=Zone.__symbol__,W=Object[B("defineProperty")]=Object.defineProperty,Q=Object[B("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,V=Object.create,X=B("unconfigurables"),Object.defineProperty=function(e,t,n){if(he(e,t))throw new TypeError("Cannot assign to read only property '"+t+"' of "+e);var r=n.configurable;return"prototype"!==t&&(n=pe(e,t,n)),fe(e,t,n,r)},Object.defineProperties=function(e,t){return Object.keys(t).forEach((function(n){Object.defineProperty(e,n,t[n])})),e},Object.create=function(e,t){return"object"!=typeof t||Object.isFrozen(t)||Object.keys(t).forEach((function(n){t[n]=pe(e,n,t[n])})),V(e,t)},Object.getOwnPropertyDescriptor=function(e,t){var n=Q(e,t);return n&&he(e,t)&&(n.configurable=!1),n}}function le(e,t,n){var r=n.configurable;return fe(e,t,n=pe(e,t,n),r)}function he(e,t){return e&&e[X]&&e[X][t]}function pe(e,t,n){return Object.isFrozen(n)||(n.configurable=!0),n.configurable||(e[X]||Object.isFrozen(e)||W(e,X,{writable:!0,value:{}}),e[X]&&(e[X][t]=!0)),n}function fe(e,t,n,r){try{return W(e,t,n)}catch(a){if(!n.configurable)throw a;void 0===r?delete n.configurable:n.configurable=r;try{return W(e,t,n)}catch(r){var o=!1;if("createdCallback"!==t&&"attachedCallback"!==t&&"detachedCallback"!==t&&"attributeChangedCallback"!==t||(o=!0),!o)throw r;var i=null;try{i=JSON.stringify(n)}catch(e){i=n.toString()}console.log("Attempting to configure '"+t+"' with descriptor '"+i+"' on object '"+e+"' and got error, giving up: "+r)}}}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */function de(e,t){var n=t.getGlobalObjects(),r=n.eventNames,o=n.globalSources,i=n.zoneSymbolEventNames,a=n.TRUE_STR,s=n.FALSE_STR,c=n.ZONE_SYMBOL_PREFIX,u="ApplicationCache,EventSource,FileReader,InputMethodContext,MediaController,MessagePort,Node,Performance,SVGElementInstance,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebKitNamedFlow,Window,Worker,WorkerGlobalScope,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload,IDBRequest,IDBOpenDBRequest,IDBDatabase,IDBTransaction,IDBCursor,DBIndex,WebSocket".split(","),l=[],h=e.wtf,p="Anchor,Area,Audio,BR,Base,BaseFont,Body,Button,Canvas,Content,DList,Directory,Div,Embed,FieldSet,Font,Form,Frame,FrameSet,HR,Head,Heading,Html,IFrame,Image,Input,Keygen,LI,Label,Legend,Link,Map,Marquee,Media,Menu,Meta,Meter,Mod,OList,Object,OptGroup,Option,Output,Paragraph,Pre,Progress,Quote,Script,Select,Source,Span,Style,TableCaption,TableCell,TableCol,Table,TableRow,TableSection,TextArea,Title,Track,UList,Unknown,Video".split(",");h?l=p.map((function(e){return"HTML"+e+"Element"})).concat(u):e.EventTarget?l.push("EventTarget"):l=u;for(var f=e.__Zone_disable_IE_check||!1,d=e.__Zone_enable_cross_context_check||!1,y=t.isIEOrEdge(),v="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",_={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},m=0;m<r.length;m++){var g=c+((S=r[m])+s),k=c+(S+a);i[S]={},i[S][s]=g,i[S][a]=k}for(m=0;m<p.length;m++)for(var T=p[m],b=o[T]={},E=0;E<r.length;E++){var S;b[S=r[E]]=T+".addEventListener:"+S}var w=[];for(m=0;m<l.length;m++){var P=e[l[m]];w.push(P&&P.prototype)}return t.patchEventTarget(e,w,{vh:function(e,t,n,r){if(!f&&y){if(d)try{var o;if("[object FunctionWrapper]"===(o=t.toString())||o==v)return e.apply(n,r),!1}catch(t){return e.apply(n,r),!1}else if("[object FunctionWrapper]"===(o=t.toString())||o==v)return e.apply(n,r),!1}else if(d)try{t.toString()}catch(t){return e.apply(n,r),!1}return!0},transferEventName:function(e){return _[e]||e}}),Zone[t.symbol("patchEventTarget")]=!!e.EventTarget,!0}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  function ye(e,t){var n=e.getGlobalObjects();if((!n.isNode||n.isMix)&&!function r(e,t){var n=e.getGlobalObjects();if((n.isBrowser||n.isMix)&&!e.ObjectGetOwnPropertyDescriptor(HTMLElement.prototype,"onclick")&&"undefined"!=typeof Element){var r=e.ObjectGetOwnPropertyDescriptor(Element.prototype,"onclick");if(r&&!r.configurable)return!1;if(r){e.ObjectDefineProperty(Element.prototype,"onclick",{enumerable:!0,configurable:!0,get:function(){return!0}});var o=!!document.createElement("div").onclick;return e.ObjectDefineProperty(Element.prototype,"onclick",r),o}}var i=t.XMLHttpRequest;if(!i)return!1;var a=i.prototype,s=e.ObjectGetOwnPropertyDescriptor(a,"onreadystatechange");if(s)return e.ObjectDefineProperty(a,"onreadystatechange",{enumerable:!0,configurable:!0,get:function(){return!0}}),o=!!(u=new i).onreadystatechange,e.ObjectDefineProperty(a,"onreadystatechange",s||{}),o;var c=e.symbol("fake");e.ObjectDefineProperty(a,"onreadystatechange",{enumerable:!0,configurable:!0,get:function(){return this[c]},set:function(e){this[c]=e}});var u=new i,l=function(){};return u.onreadystatechange=l,o=u[c]===l,u.onreadystatechange=null,o}(e,t)){var o="undefined"!=typeof WebSocket;!function i(e){for(var t=e.getGlobalObjects().eventNames,n=e.symbol("unbound"),r=function(r){var o=t[r],i="on"+o;self.addEventListener(o,(function(t){var r,o,a=t.target;for(o=a?a.constructor.name+"."+i:"unknown."+i;a;)a[i]&&!a[i][n]&&((r=e.wrapWithCurrentZone(a[i],o))[n]=a[i],a[i]=r),a=a.parentElement}),!0)},o=0;o<t.length;o++)r(o)}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */(e),e.patchClass("XMLHttpRequest"),o&&function a(e,t){var n=e.getGlobalObjects(),r=n.ADD_EVENT_LISTENER_STR,o=n.REMOVE_EVENT_LISTENER_STR,i=t.WebSocket;t.EventTarget||e.patchEventTarget(t,[i.prototype]),t.WebSocket=function(t,n){var a,s,c=arguments.length>1?new i(t,n):new i(t),u=e.ObjectGetOwnPropertyDescriptor(c,"onmessage");return u&&!1===u.configurable?(a=e.ObjectCreate(c),s=c,[r,o,"send","close"].forEach((function(t){a[t]=function(){var n=e.ArraySlice.call(arguments);if(t===r||t===o){var i=n.length>0?n[0]:void 0;if(i){var s=Zone.__symbol__("ON_PROPERTY"+i);c[s]=a[s]}}return c[t].apply(c,n)}}))):a=c,e.patchOnProperties(a,["close","error","message","open"],s),a};var a=t.WebSocket;for(var s in i)a[s]=i[s]}(e,t),Zone[e.symbol("patchEvents")]=!0}}Zone.__load_patch("util",(function(n,i,a){a.patchOnProperties=S,a.patchMethod=Z,a.bindArguments=y,a.patchMacroTask=O;var u=i.__symbol__("BLACK_LISTED_EVENTS"),l=i.__symbol__("UNPATCHED_EVENTS");n[l]&&(n[u]=n[l]),n[u]&&(i[u]=i[l]=n[u]),a.patchEventPrototype=U,a.patchEventTarget=H,a.isIEOrEdge=A,a.ObjectDefineProperty=t,a.ObjectGetOwnPropertyDescriptor=e,a.ObjectCreate=r,a.ArraySlice=o,a.patchClass=P,a.wrapWithCurrentZone=c,a.filterProperties=ae,a.attachOriginToPatched=C,a._redefineProperty=Object.defineProperty,a.patchCallbacks=G,a.getGlobalObjects=function(){return{globalSources:x,zoneSymbolEventNames:R,eventNames:ie,isBrowser:g,isMix:k,isNode:m,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:s,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"}}})),
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  function(e){var t=e.__Zone_symbol_prefix||"__zone_symbol__";e[function n(e){return t+e}("legacyPatch")]=function(){var t=e.Zone;t.__load_patch("defineProperty",(function(e,t,n){n._redefineProperty=le,ue()})),t.__load_patch("registerElement",(function(e,t,n){!function r(e,t){var n=t.getGlobalObjects();(n.isBrowser||n.isMix)&&"registerElement"in e.document&&t.patchCallbacks(t,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(e,n)})),t.__load_patch("EventTargetLegacy",(function(e,t,n){de(e,n),ye(n,e)}))}}("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{});
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  var ve=l("zoneTask");function _e(e,t,n,r){var o=null,i=null;n+=r;var a={};function s(t){var n=t.data;return n.args[0]=function(){return t.invoke.apply(this,arguments)},n.handleId=o.apply(e,n.args),t}function c(t){return i.call(e,t.data.handleId)}o=Z(e,t+=r,(function(n){return function(o,i){if("function"==typeof i[0]){var l={isPeriodic:"Interval"===r,delay:"Timeout"===r||"Interval"===r?i[1]||0:void 0,args:i},h=i[0];i[0]=function e(){try{return h.apply(this,arguments)}finally{l.isPeriodic||("number"==typeof l.handleId?delete a[l.handleId]:l.handleId&&(l.handleId[ve]=null))}};var p=u(t,i[0],l,s,c);if(!p)return p;var f=p.data.handleId;return"number"==typeof f?a[f]=p:f&&(f[ve]=p),f&&f.ref&&f.unref&&"function"==typeof f.ref&&"function"==typeof f.unref&&(p.ref=f.ref.bind(f),p.unref=f.unref.bind(f)),"number"==typeof f||f?f:p}return n.apply(e,i)}})),i=Z(e,n,(function(t){return function(n,r){var o,i=r[0];"number"==typeof i?o=a[i]:(o=i&&i[ve])||(o=i),o&&"string"==typeof o.type?"notScheduled"!==o.state&&(o.cancelFn&&o.data.isPeriodic||0===o.runCount)&&("number"==typeof i?delete a[i]:i&&(i[ve]=null),o.zone.cancelTask(o)):t.apply(e,r)}}))}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  function me(e,t){if(!Zone[t.symbol("patchEventTarget")]){for(var n=t.getGlobalObjects(),r=n.eventNames,o=n.zoneSymbolEventNames,i=n.TRUE_STR,a=n.FALSE_STR,s=n.ZONE_SYMBOL_PREFIX,c=0;c<r.length;c++){var u=r[c],l=s+(u+a),h=s+(u+i);o[u]={},o[u][a]=l,o[u][i]=h}var p=e.EventTarget;if(p&&p.prototype)return t.patchEventTarget(e,[p&&p.prototype]),!0}}
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  Zone.__load_patch("legacy",(function(e){var t=e[Zone.__symbol__("legacyPatch")];t&&t()})),Zone.__load_patch("queueMicrotask",(function(e,t,n){n.patchMethod(e,"queueMicrotask",(function(e){return function(e,n){t.current.scheduleMicroTask("queueMicrotask",n[0])}}))})),Zone.__load_patch("timers",(function(e){_e(e,"set","clear","Timeout"),_e(e,"set","clear","Interval"),_e(e,"set","clear","Immediate")})),Zone.__load_patch("requestAnimationFrame",(function(e){_e(e,"request","cancel","AnimationFrame"),_e(e,"mozRequest","mozCancel","AnimationFrame"),_e(e,"webkitRequest","webkitCancel","AnimationFrame")})),Zone.__load_patch("blocking",(function(e,t){for(var n=["alert","prompt","confirm"],r=0;r<n.length;r++)Z(e,n[r],(function(n,r,o){return function(r,i){return t.current.run(n,e,i,o)}}))})),Zone.__load_patch("EventTarget",(function(e,t,n){!function r(e,t){t.patchEventPrototype(e,t)}(e,n),me(e,n);var o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype])})),Zone.__load_patch("MutationObserver",(function(e,t,n){P("MutationObserver"),P("WebKitMutationObserver")})),Zone.__load_patch("IntersectionObserver",(function(e,t,n){P("IntersectionObserver")})),Zone.__load_patch("FileReader",(function(e,t,n){P("FileReader")})),Zone.__load_patch("on_property",(function(e,t,n){ce(n,e)})),Zone.__load_patch("customElements",(function(e,t,n){!function r(e,t){var n=t.getGlobalObjects();(n.isBrowser||n.isMix)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)})),Zone.__load_patch("XHR",(function(e,t){!function n(e){var n=e.XMLHttpRequest;if(n){var f=n.prototype,d=f[i],y=f[a];if(!d){var v=e.XMLHttpRequestEventTarget;if(v){var _=v.prototype;d=_[i],y=_[a]}}var m=Z(f,"open",(function(){return function(e,t){return e[o]=0==t[2],e[h]=t[1],m.apply(e,t)}})),g=l("fetchTaskAborting"),k=l("fetchTaskScheduling"),T=Z(f,"send",(function(){return function(e,n){if(!0===t.current[k])return T.apply(e,n);if(e[o])return T.apply(e,n);var r={target:e,url:e[h],isPeriodic:!1,args:n,aborted:!1},i=u("XMLHttpRequest.send",S,r,E,w);e&&!0===e[p]&&!r.aborted&&"scheduled"===i.state&&i.invoke()}})),b=Z(f,"abort",(function(){return function(e,n){var o=function i(e){return e[r]}(e);if(o&&"string"==typeof o.type){if(null==o.cancelFn||o.data&&o.data.aborted)return;o.zone.cancelTask(o)}else if(!0===t.current[g])return b.apply(e,n)}}))}function E(e){var n=e.data,o=n.target;o[c]=!1,o[p]=!1;var u=o[s];d||(d=o[i],y=o[a]),u&&y.call(o,"readystatechange",u);var l=o[s]=function(){if(o.readyState===o.DONE)if(!n.aborted&&o[c]&&"scheduled"===e.state){var r=o[t.__symbol__("loadfalse")];if(0!==o.status&&r&&r.length>0){var i=e.invoke;e.invoke=function(){for(var r=o[t.__symbol__("loadfalse")],a=0;a<r.length;a++)r[a]===e&&r.splice(a,1);n.aborted||"scheduled"!==e.state||i.call(e)},r.push(e)}else e.invoke()}else n.aborted||!1!==o[c]||(o[p]=!0)};return d.call(o,"readystatechange",l),o[r]||(o[r]=e),T.apply(o,n.args),o[c]=!0,e}function S(){}function w(e){var t=e.data;return t.aborted=!0,b.apply(t.target,t.args)}}(e);var r=l("xhrTask"),o=l("xhrSync"),s=l("xhrListener"),c=l("xhrScheduled"),h=l("xhrURL"),p=l("xhrErrorBeforeScheduled")})),Zone.__load_patch("geolocation",(function(t){t.navigator&&t.navigator.geolocation&&function n(t,r){for(var o=t.constructor.name,i=function(n){var i=r[n],a=t[i];if(a){if(!v(e(t,i)))return"continue";t[i]=function(e){var t=function(){return e.apply(this,y(arguments,o+"."+i))};return C(t,e),t}(a)}},a=0;a<r.length;a++)i(a)}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])})),Zone.__load_patch("PromiseRejectionEvent",(function(e,t){function n(t){return function(n){q(e,t).forEach((function(r){var o=e.PromiseRejectionEvent;if(o){var i=new o(t,{promise:n.promise,reason:n.rejection});r.invoke(i)}}))}}e.PromiseRejectionEvent&&(t[l("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[l("rejectionHandledHandler")]=n("rejectionhandled"))}));
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  var ge={},ke="__SEP_TAG__@[native]",Te=function Te(){this.error=Pe(),this.timestamp=new Date};function be(){return new Error("STACKTRACE TRACKING")}function Ee(){try{throw be()}catch(e){return e}}var Se=be(),we=Ee(),Pe=Se.stack?be:we.stack?Ee:be;function Ze(e){return e.stack?e.stack.split("\n"):[]}function Oe(e,t){for(var n=Ze(t),r=0;r<n.length;r++)ge.hasOwnProperty(n[r])||e.push(n[r])}function Ce(e,t){var n=[t?t.trim():""];if(e)for(var r=(new Date).getTime(),o=0;o<e.length;o++){var i=e[o],a=i.timestamp,s="____________________Elapsed "+(r-a.getTime())+" ms; At: "+a;s=s.replace(/[^\w\d]/g,"_"),n.push(ke.replace("__SEP_TAG__",s)),Oe(n,i.error),r=a.getTime()}return n.join("\n")}function De(){return Error.stackTraceLimit>0}Zone.longStackTraceZoneSpec={name:"long-stack-trace",longStackTraceLimit:10,getLongStackTrace:function(e){if(e){var t=e[Zone.__symbol__("currentTaskTrace")];return t?Ce(t,e.stack):e.stack}},onScheduleTask:function(e,t,n,r){if(De()){var o=Zone.currentTask,i=o&&o.data&&o.data.__creationTrace__||[];(i=[new Te].concat(i)).length>this.longStackTraceLimit&&(i.length=this.longStackTraceLimit),r.data||(r.data={}),"eventTask"===r.type&&(r.data=Object.assign({},r.data)),r.data.__creationTrace__=i}return e.scheduleTask(n,r)},onHandleError:function(e,t,n,r){if(De()){var o=Zone.currentTask||r.task;if(r instanceof Error&&o){var i=Ce(o.data&&o.data.__creationTrace__,r.stack);try{r.stack=r.longStack=i}catch(e){}}}return e.handleError(n,r)}},function je(){if(De()){var e=[];!function e(t,n){n>0&&(t.push(Ze((new Te).error)),e(t,n-1))}(e,2);for(var t=e[0],n=e[1],r=0;r<t.length;r++)if(-1==(i=t[r]).indexOf("STACKTRACE TRACKING")){var o=i.match(/^\s*at\s+/);if(o){ke=o[0]+"__SEP_TAG__ (http://localhost)";break}}for(r=0;r<t.length;r++){var i;if((i=t[r])!==n[r])break;ge[i]=!0}}}();
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  var Ae=function(){function e(e){void 0===e&&(e=null),this.defaultSpecDelegate=e,this.name="ProxyZone",this._delegateSpec=null,this.properties={ProxyZoneSpec:this},this.propertyKeys=null,this.lastTaskState=null,this.isNeedToTriggerHasTask=!1,this.tasks=[],this.setDelegate(e)}return e.get=function(){return Zone.current.get("ProxyZoneSpec")},e.isLoaded=function(){return e.get()instanceof e},e.assertPresent=function(){if(!e.isLoaded())throw new Error("Expected to be running in 'ProxyZone', but it was not found.");return e.get()},e.prototype.setDelegate=function(e){var t=this,n=this._delegateSpec!==e;this._delegateSpec=e,this.propertyKeys&&this.propertyKeys.forEach((function(e){return delete t.properties[e]})),this.propertyKeys=null,e&&e.properties&&(this.propertyKeys=Object.keys(e.properties),this.propertyKeys.forEach((function(n){return t.properties[n]=e.properties[n]}))),n&&this.lastTaskState&&(this.lastTaskState.macroTask||this.lastTaskState.microTask)&&(this.isNeedToTriggerHasTask=!0)},e.prototype.getDelegate=function(){return this._delegateSpec},e.prototype.resetDelegate=function(){this.getDelegate(),this.setDelegate(this.defaultSpecDelegate)},e.prototype.tryTriggerHasTask=function(e,t,n){this.isNeedToTriggerHasTask&&this.lastTaskState&&(this.isNeedToTriggerHasTask=!1,this.onHasTask(e,t,n,this.lastTaskState))},e.prototype.removeFromTasks=function(e){if(this.tasks)for(var t=0;t<this.tasks.length;t++)if(this.tasks[t]===e)return void this.tasks.splice(t,1)},e.prototype.getAndClearPendingTasksInfo=function(){if(0===this.tasks.length)return"";var e="--Pending async tasks are: ["+this.tasks.map((function(e){var t=e.data&&Object.keys(e.data).map((function(t){return t+":"+e.data[t]})).join(",");return"type: "+e.type+", source: "+e.source+", args: {"+t+"}"}))+"]";return this.tasks=[],e},e.prototype.onFork=function(e,t,n,r){return this._delegateSpec&&this._delegateSpec.onFork?this._delegateSpec.onFork(e,t,n,r):e.fork(n,r)},e.prototype.onIntercept=function(e,t,n,r,o){return this._delegateSpec&&this._delegateSpec.onIntercept?this._delegateSpec.onIntercept(e,t,n,r,o):e.intercept(n,r,o)},e.prototype.onInvoke=function(e,t,n,r,o,i,a){return this.tryTriggerHasTask(e,t,n),this._delegateSpec&&this._delegateSpec.onInvoke?this._delegateSpec.onInvoke(e,t,n,r,o,i,a):e.invoke(n,r,o,i,a)},e.prototype.onHandleError=function(e,t,n,r){return this._delegateSpec&&this._delegateSpec.onHandleError?this._delegateSpec.onHandleError(e,t,n,r):e.handleError(n,r)},e.prototype.onScheduleTask=function(e,t,n,r){return"eventTask"!==r.type&&this.tasks.push(r),this._delegateSpec&&this._delegateSpec.onScheduleTask?this._delegateSpec.onScheduleTask(e,t,n,r):e.scheduleTask(n,r)},e.prototype.onInvokeTask=function(e,t,n,r,o,i){return"eventTask"!==r.type&&this.removeFromTasks(r),this.tryTriggerHasTask(e,t,n),this._delegateSpec&&this._delegateSpec.onInvokeTask?this._delegateSpec.onInvokeTask(e,t,n,r,o,i):e.invokeTask(n,r,o,i)},e.prototype.onCancelTask=function(e,t,n,r){return"eventTask"!==r.type&&this.removeFromTasks(r),this.tryTriggerHasTask(e,t,n),this._delegateSpec&&this._delegateSpec.onCancelTask?this._delegateSpec.onCancelTask(e,t,n,r):e.cancelTask(n,r)},e.prototype.onHasTask=function(e,t,n,r){this.lastTaskState=r,this._delegateSpec&&this._delegateSpec.onHasTask?this._delegateSpec.onHasTask(e,t,n,r):e.hasTask(n,r)},e}();Zone.ProxyZoneSpec=Ae;
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  var Ie=function(){function e(e){this.runZone=Zone.current,this.name="syncTestZone for "+e}return e.prototype.onScheduleTask=function(e,t,n,r){switch(r.type){case"microTask":case"macroTask":throw new Error("Cannot call "+r.source+" from within a sync test.");case"eventTask":r=e.scheduleTask(n,r)}return r},e}();Zone.SyncTestZoneSpec=Ie,
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  Zone.__load_patch("jasmine",(function(e,t,n){if(!t)throw new Error("Missing: zone.js");if("undefined"==typeof jest&&"undefined"!=typeof jasmine&&!jasmine.__zone_patch__){jasmine.__zone_patch__=!0;var r=t.SyncTestZoneSpec,o=t.ProxyZoneSpec;if(!r)throw new Error("Missing: SyncTestZoneSpec");if(!o)throw new Error("Missing: ProxyZoneSpec");var i=t.current,a=i.fork(new r("jasmine.describe")),s=t.__symbol__,c=!0===e[s("fakeAsyncDisablePatchingClock")],u=!c&&(!0===e[s("fakeAsyncPatchLock")]||!0===e[s("fakeAsyncAutoFakeAsyncWhenClockPatched")]);if(!0!==e[s("ignoreUnhandledRejection")]){var l=jasmine.GlobalErrors;l&&!jasmine[s("GlobalErrors")]&&(jasmine[s("GlobalErrors")]=l,jasmine.GlobalErrors=function(){var e=new l,t=e.install;return t&&!e[s("install")]&&(e[s("install")]=t,e.install=function(){var e=process.listeners("unhandledRejection"),n=t.apply(this,arguments);return process.removeAllListeners("unhandledRejection"),e&&e.forEach((function(e){return process.on("unhandledRejection",e)})),n}),e})}var h=jasmine.getEnv();if(["describe","xdescribe","fdescribe"].forEach((function(e){var t=h[e];h[e]=function(e,n){return t.call(this,e,function r(e){return function(){return a.run(e,this,arguments)}}(n))}})),["it","xit","fit"].forEach((function(e){var t=h[e];h[s(e)]=t,h[e]=function(e,n,r){return arguments[1]=v(n),t.apply(this,arguments)}})),["beforeEach","afterEach","beforeAll","afterAll"].forEach((function(e){var t=h[e];h[s(e)]=t,h[e]=function(e,n){return arguments[0]=v(e),t.apply(this,arguments)}})),!c){var p=jasmine[s("clock")]=jasmine.clock;jasmine.clock=function(){var e=p.apply(this,arguments);if(!e[s("patched")]){e[s("patched")]=s("patched");var n=e[s("tick")]=e.tick;e.tick=function(){var e=t.current.get("FakeAsyncTestZoneSpec");return e?e.tick.apply(e,arguments):n.apply(this,arguments)};var r=e[s("mockDate")]=e.mockDate;e.mockDate=function(){var e=t.current.get("FakeAsyncTestZoneSpec");if(e){var n=arguments.length>0?arguments[0]:new Date;return e.setFakeBaseSystemTime.apply(e,n&&"function"==typeof n.getTime?[n.getTime()]:arguments)}return r.apply(this,arguments)},u&&["install","uninstall"].forEach((function(n){var r=e[s(n)]=e[n];e[n]=function(){var e=t.FakeAsyncTestZoneSpec;if(!e)return r.apply(this,arguments);jasmine[s("clockInstalled")]="install"===n}}))}return e}}if(!jasmine[t.__symbol__("createSpyObj")]){var f=jasmine.createSpyObj;jasmine[t.__symbol__("createSpyObj")]=f,jasmine.createSpyObj=function(){var e,t=Array.prototype.slice.call(arguments),n=t.length>=3?t[2]:null;if(n){var r=Object.defineProperty;Object.defineProperty=function(e,t,n){return r.call(this,e,t,Object.assign(Object.assign({},n),{configurable:!0,enumerable:!0}))};try{e=f.apply(this,t)}finally{Object.defineProperty=r}}else e=f.apply(this,t);return e}}var d=jasmine.QueueRunner;jasmine.QueueRunner=function(n){function r(r){var o,a=this;r.onComplete&&(r.onComplete=(o=r.onComplete,function(){a.testProxyZone=null,a.testProxyZoneSpec=null,i.scheduleMicroTask("jasmine.onComplete",o)}));var s=e[t.__symbol__("setTimeout")],c=e[t.__symbol__("clearTimeout")];s&&(r.timeout={setTimeout:s||e.setTimeout,clearTimeout:c||e.clearTimeout}),jasmine.UserContext?(r.userContext||(r.userContext=new jasmine.UserContext),r.userContext.queueRunner=this):(r.userContext||(r.userContext={}),r.userContext.queueRunner=this);var u=r.onException;r.onException=function(e){if(e&&"Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL."===e.message){var t=this&&this.testProxyZoneSpec;if(t){var n=t.getAndClearPendingTasksInfo();try{e.message+=n}catch(e){}}}u&&u.call(this,e)},n.call(this,r)}return function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function r(){this.constructor=e}e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}(r,n),r.prototype.execute=function(){for(var e=this,r=t.current,a=!1;r;){if(r===i){a=!0;break}r=r.parent}if(!a)throw new Error("Unexpected Zone: "+t.current.name);this.testProxyZoneSpec=new o,this.testProxyZone=i.fork(this.testProxyZoneSpec),t.currentTask?n.prototype.execute.call(this):t.current.scheduleMicroTask("jasmine.execute().forceTask",(function(){return d.prototype.execute.call(e)}))},r}(d)}function y(e,n,r,o){var i=!!jasmine[s("clockInstalled")],a=r.testProxyZone;if(i&&u){var c=t[t.__symbol__("fakeAsyncTest")];c&&"function"==typeof c.fakeAsync&&(e=c.fakeAsync(e))}return o?a.run(e,n,[o]):a.run(e,n)}function v(e){return e&&(e.length?function(t){return y(e,this,this.queueRunner,t)}:function(){return y(e,this,this.queueRunner)})}})),
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  Zone.__load_patch("jest",(function(e,t,n){if("undefined"!=typeof jest&&!jest.__zone_patch__){jest.__zone_patch__=!0;var r=t.ProxyZoneSpec,o=t.SyncTestZoneSpec;if(!r)throw new Error("Missing ProxyZoneSpec");var i=t.current,a=i.fork(new o("jest.describe")),s=new r,c=i.fork(s);["describe","xdescribe","fdescribe"].forEach((function(n){var r=e[n];e[t.__symbol__(n)]||(e[t.__symbol__(n)]=r,e[n]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e[1]=u(e[1]),r.apply(this,e)},e[n].each=function o(e){return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var r=e.apply(this,t);return function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e[1]=u(e[1]),r.apply(this,e)}}}(r.each))})),e.describe.only=e.fdescribe,e.describe.skip=e.xdescribe,["it","xit","fit","test","xtest"].forEach((function(n){var r=e[n];e[t.__symbol__(n)]||(e[t.__symbol__(n)]=r,e[n]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e[1]=l(e[1],!0),r.apply(this,e)},e[n].each=function o(e){return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];return n[1]=l(n[1]),e.apply(this,t).apply(this,n)}}}(r.each),e[n].todo=r.todo)})),e.it.only=e.fit,e.it.skip=e.xit,e.test.only=e.fit,e.test.skip=e.xit,["beforeEach","afterEach","beforeAll","afterAll"].forEach((function(n){var r=e[n];e[t.__symbol__(n)]||(e[t.__symbol__(n)]=r,e[n]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e[0]=l(e[0]),r.apply(this,e)})})),t.patchJestObject=function e(r,o){function i(){return!!t.current.get("FakeAsyncTestZoneSpec")}function a(){var e=t.current.get("ProxyZoneSpec");return e&&e.isTestFunc}void 0===o&&(o=!1),r[n.symbol("fakeTimers")]||(r[n.symbol("fakeTimers")]=!0,n.patchMethod(r,"_checkFakeTimers",(function(e){return function(t,n){return!!i()||e.apply(t,n)}})),n.patchMethod(r,"useFakeTimers",(function(e){return function(r,i){return t[n.symbol("useFakeTimersCalled")]=!0,o||a()?e.apply(r,i):r}})),n.patchMethod(r,"useRealTimers",(function(e){return function(r,i){return t[n.symbol("useFakeTimersCalled")]=!1,o||a()?e.apply(r,i):r}})),n.patchMethod(r,"setSystemTime",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");if(!o||!i())return e.apply(n,r);o.setFakeBaseSystemTime(r[0])}})),n.patchMethod(r,"getRealSystemTime",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");return o&&i()?o.getRealSystemTime():e.apply(n,r)}})),n.patchMethod(r,"runAllTicks",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");if(!o)return e.apply(n,r);o.flushMicrotasks()}})),n.patchMethod(r,"runAllTimers",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");if(!o)return e.apply(n,r);o.flush(100,!0)}})),n.patchMethod(r,"advanceTimersByTime",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");if(!o)return e.apply(n,r);o.tick(r[0])}})),n.patchMethod(r,"runOnlyPendingTimers",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");if(!o)return e.apply(n,r);o.flushOnlyPendingTimers()}})),n.patchMethod(r,"advanceTimersToNextTimer",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");if(!o)return e.apply(n,r);o.tickToNext(r[0])}})),n.patchMethod(r,"clearAllTimers",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");if(!o)return e.apply(n,r);o.removeAllTimers()}})),n.patchMethod(r,"getTimerCount",(function(e){return function(n,r){var o=t.current.get("FakeAsyncTestZoneSpec");return o?o.getTimerCount():e.apply(n,r)}})))}}function u(e){return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return a.run(e,this,t)}}function l(e,r){if(void 0===r&&(r=!1),"function"!=typeof e)return e;var o=function(){if(!0===t[n.symbol("useFakeTimersCalled")]&&e&&!e.isFakeAsync){var o=t[t.__symbol__("fakeAsyncTest")];o&&"function"==typeof o.fakeAsync&&(e=o.fakeAsync(e))}return s.isTestFunc=r,c.run(e,null,arguments)};return Object.defineProperty(o,"length",{configurable:!0,writable:!0,enumerable:!1}),o.length=e.length,o}})),
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  Zone.__load_patch("mocha",(function(e,t){var n=e.Mocha;if(void 0!==n){if(void 0===t)throw new Error("Missing Zone.js");var r=t.ProxyZoneSpec,o=t.SyncTestZoneSpec;if(!r)throw new Error("Missing ProxyZoneSpec");if(n.__zone_patch__)throw new Error('"Mocha" has already been patched with "Zone".');n.__zone_patch__=!0;var i,a,s=t.current,c=s.fork(new o("Mocha.describe")),u=null,l=s.fork(new r),h={after:n.after,afterEach:n.afterEach,before:n.before,beforeEach:n.beforeEach,describe:n.describe,it:n.it};e.describe=e.suite=n.describe=function(){return h.describe.apply(this,f(arguments))},e.xdescribe=e.suite.skip=n.describe.skip=function(){return h.describe.skip.apply(this,f(arguments))},e.describe.only=e.suite.only=n.describe.only=function(){return h.describe.only.apply(this,f(arguments))},e.it=e.specify=e.test=n.it=function(){return h.it.apply(this,d(arguments))},e.xit=e.xspecify=n.it.skip=function(){return h.it.skip.apply(this,d(arguments))},e.it.only=e.test.only=n.it.only=function(){return h.it.only.apply(this,d(arguments))},e.after=e.suiteTeardown=n.after=function(){return h.after.apply(this,y(arguments))},e.afterEach=e.teardown=n.afterEach=function(){return h.afterEach.apply(this,d(arguments))},e.before=e.suiteSetup=n.before=function(){return h.before.apply(this,y(arguments))},e.beforeEach=e.setup=n.beforeEach=function(){return h.beforeEach.apply(this,d(arguments))},i=n.Runner.prototype.runTest,a=n.Runner.prototype.run,n.Runner.prototype.runTest=function(e){var n=this;t.current.scheduleMicroTask("mocha.forceTask",(function(){i.call(n,e)}))},n.Runner.prototype.run=function(e){return this.on("test",(function(e){u=s.fork(new r)})),this.on("fail",(function(e,t){var n=u&&u.get("ProxyZoneSpec");if(n&&t)try{t.message+=n.getAndClearPendingTasksInfo()}catch(e){}})),a.call(this,e)}}function p(e,t,n){for(var r=function(r){var o=e[r];"function"==typeof o&&(e[r]=0===o.length?t(o):n(o),e[r].toString=function(){return o.toString()})},o=0;o<e.length;o++)r(o);return e}function f(e){return p(e,(function(e){return function(){return c.run(e,this,arguments)}}))}function d(e){return p(e,(function(e){return function(){return u.run(e,this)}}),(function(e){return function(t){return u.run(e,this,[t])}}))}function y(e){return p(e,(function(e){return function(){return l.run(e,this)}}),(function(e){return function(t){return l.run(e,this,[t])}}))}})),
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  function(e){var t=function(){function t(t,n,r){this.finishCallback=t,this.failCallback=n,this._pendingMicroTasks=!1,this._pendingMacroTasks=!1,this._alreadyErrored=!1,this._isSync=!1,this.runZone=Zone.current,this.unresolvedChainedPromiseCount=0,this.supportWaitUnresolvedChainedPromise=!1,this.name="asyncTestZone for "+r,this.properties={AsyncTestZoneSpec:this},this.supportWaitUnresolvedChainedPromise=!0===e[Zone.__symbol__("supportWaitUnResolvedChainedPromise")]}return t.prototype.isUnresolvedChainedPromisePending=function(){return this.unresolvedChainedPromiseCount>0},t.prototype._finishCallbackIfDone=function(){var e=this;this._pendingMicroTasks||this._pendingMacroTasks||this.supportWaitUnresolvedChainedPromise&&this.isUnresolvedChainedPromisePending()||this.runZone.run((function(){setTimeout((function(){e._alreadyErrored||e._pendingMicroTasks||e._pendingMacroTasks||e.finishCallback()}),0)}))},t.prototype.patchPromiseForTest=function(){if(this.supportWaitUnresolvedChainedPromise){var e=Promise[Zone.__symbol__("patchPromiseForTest")];e&&e()}},t.prototype.unPatchPromiseForTest=function(){if(this.supportWaitUnresolvedChainedPromise){var e=Promise[Zone.__symbol__("unPatchPromiseForTest")];e&&e()}},t.prototype.onScheduleTask=function(e,n,r,o){return"eventTask"!==o.type&&(this._isSync=!1),"microTask"===o.type&&o.data&&o.data instanceof Promise&&!0===o.data[t.symbolParentUnresolved]&&this.unresolvedChainedPromiseCount--,e.scheduleTask(r,o)},t.prototype.onInvokeTask=function(e,t,n,r,o,i){return"eventTask"!==r.type&&(this._isSync=!1),e.invokeTask(n,r,o,i)},t.prototype.onCancelTask=function(e,t,n,r){return"eventTask"!==r.type&&(this._isSync=!1),e.cancelTask(n,r)},t.prototype.onInvoke=function(e,t,n,r,o,i,a){try{return this._isSync=!0,e.invoke(n,r,o,i,a)}finally{this._isSync&&this._finishCallbackIfDone()}},t.prototype.onHandleError=function(e,t,n,r){return e.handleError(n,r)&&(this.failCallback(r),this._alreadyErrored=!0),!1},t.prototype.onHasTask=function(e,t,n,r){e.hasTask(n,r),"microTask"==r.change?(this._pendingMicroTasks=r.microTask,this._finishCallbackIfDone()):"macroTask"==r.change&&(this._pendingMacroTasks=r.macroTask,this._finishCallbackIfDone())},t}();t.symbolParentUnresolved=Zone.__symbol__("parentUnresolved"),Zone.AsyncTestZoneSpec=t}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("asynctest",(function(e,t,n){function r(e,n,r,o){var i=t.current,a=t.AsyncTestZoneSpec;if(void 0===a)throw new Error("AsyncTestZoneSpec is needed for the async() test helper but could not be found. Please make sure that your environment includes zone.js/dist/async-test.js");var s=t.ProxyZoneSpec;if(!s)throw new Error("ProxyZoneSpec is needed for the async() test helper but could not be found. Please make sure that your environment includes zone.js/dist/proxy.js");var c=s.get();s.assertPresent();var u=t.current.getZoneWith("ProxyZoneSpec"),l=c.getDelegate();return u.parent.run((function(){var e=new a((function(){c.getDelegate()==e&&c.setDelegate(l),e.unPatchPromiseForTest(),i.run((function(){r()}))}),(function(t){c.getDelegate()==e&&c.setDelegate(l),e.unPatchPromiseForTest(),i.run((function(){o(t)}))}),"test");c.setDelegate(e),e.patchPromiseForTest()})),t.current.runGuarded(e,n)}t[n.symbol("asyncTest")]=function t(n){return e.jasmine?function(e){e||((e=function(){}).fail=function(e){throw e}),r(n,this,e,(function(t){if("string"==typeof t)return e.fail(new Error(t));e.fail(t)}))}:function(){var e=this;return new Promise((function(t,o){r(n,e,t,o)}))}}})),
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  function(e){var t=e.Date;function n(){if(0===arguments.length){var e=new t;return e.setTime(n.now()),e}var r=Array.prototype.slice.call(arguments);return new(t.bind.apply(t,__spreadArrays([void 0],r)))}n.now=function(){var e=Zone.current.get("FakeAsyncTestZoneSpec");return e?e.getFakeSystemTime():t.now.apply(this,arguments)},n.UTC=t.UTC,n.parse=t.parse;var r={setTimeout:e.setTimeout,setInterval:e.setInterval,clearTimeout:e.clearTimeout,clearInterval:e.clearInterval},o=function(){function n(){this._schedulerQueue=[],this._currentTickTime=0,this._currentFakeBaseSystemTime=t.now(),this._currentTickRequeuePeriodicEntries=[]}return n.prototype.getCurrentTickTime=function(){return this._currentTickTime},n.prototype.getFakeSystemTime=function(){return this._currentFakeBaseSystemTime+this._currentTickTime},n.prototype.setFakeBaseSystemTime=function(e){this._currentFakeBaseSystemTime=e},n.prototype.getRealSystemTime=function(){return t.now()},n.prototype.scheduleFunction=function(e,t,r){var o=(r=Object.assign({args:[],isPeriodic:!1,isRequestAnimationFrame:!1,id:-1,isRequeuePeriodic:!1},r)).id<0?n.nextId++:r.id,i={endTime:this._currentTickTime+t,id:o,func:e,args:r.args,delay:t,isPeriodic:r.isPeriodic,isRequestAnimationFrame:r.isRequestAnimationFrame};r.isRequeuePeriodic&&this._currentTickRequeuePeriodicEntries.push(i);for(var a=0;a<this._schedulerQueue.length&&!(i.endTime<this._schedulerQueue[a].endTime);a++);return this._schedulerQueue.splice(a,0,i),o},n.prototype.removeScheduledFunctionWithId=function(e){for(var t=0;t<this._schedulerQueue.length;t++)if(this._schedulerQueue[t].id==e){this._schedulerQueue.splice(t,1);break}},n.prototype.removeAll=function(){this._schedulerQueue=[]},n.prototype.getTimerCount=function(){return this._schedulerQueue.length},n.prototype.tickToNext=function(e,t,n){void 0===e&&(e=1),this._schedulerQueue.length<e||this.tick(this._schedulerQueue[e-1].endTime-this._currentTickTime,t,n)},n.prototype.tick=function(t,n,r){void 0===t&&(t=0);var o=this._currentTickTime+t,i=0,a=(r=Object.assign({processNewMacroTasksSynchronously:!0},r)).processNewMacroTasksSynchronously?this._schedulerQueue:this._schedulerQueue.slice();if(0===a.length&&n)n(t);else{for(;a.length>0&&(this._currentTickRequeuePeriodicEntries=[],!(o<a[0].endTime));){var s=a.shift();if(!r.processNewMacroTasksSynchronously){var c=this._schedulerQueue.indexOf(s);c>=0&&this._schedulerQueue.splice(c,1)}if(i=this._currentTickTime,this._currentTickTime=s.endTime,n&&n(this._currentTickTime-i),!s.func.apply(e,s.isRequestAnimationFrame?[this._currentTickTime]:s.args))break;r.processNewMacroTasksSynchronously||this._currentTickRequeuePeriodicEntries.forEach((function(e){for(var t=0;t<a.length&&!(e.endTime<a[t].endTime);t++);a.splice(t,0,e)}))}i=this._currentTickTime,this._currentTickTime=o,n&&n(this._currentTickTime-i)}},n.prototype.flushOnlyPendingTimers=function(e){if(0===this._schedulerQueue.length)return 0;var t=this._currentTickTime;return this.tick(this._schedulerQueue[this._schedulerQueue.length-1].endTime-t,e,{processNewMacroTasksSynchronously:!1}),this._currentTickTime-t},n.prototype.flush=function(e,t,n){return void 0===e&&(e=20),void 0===t&&(t=!1),t?this.flushPeriodic(n):this.flushNonPeriodic(e,n)},n.prototype.flushPeriodic=function(e){if(0===this._schedulerQueue.length)return 0;var t=this._currentTickTime;return this.tick(this._schedulerQueue[this._schedulerQueue.length-1].endTime-t,e),this._currentTickTime-t},n.prototype.flushNonPeriodic=function(t,n){for(var r=this._currentTickTime,o=0,i=0;this._schedulerQueue.length>0;){if(++i>t)throw new Error("flush failed after reaching the limit of "+t+" tasks. Does your code use a polling timeout?");if(0===this._schedulerQueue.filter((function(e){return!e.isPeriodic&&!e.isRequestAnimationFrame})).length)break;var a=this._schedulerQueue.shift();if(o=this._currentTickTime,this._currentTickTime=a.endTime,n&&n(this._currentTickTime-o),!a.func.apply(e,a.args))break}return this._currentTickTime-r},n}();o.nextId=1;var i=function(){function i(t,n,r){void 0===n&&(n=!1),this.trackPendingRequestAnimationFrame=n,this.macroTaskOptions=r,this._scheduler=new o,this._microtasks=[],this._lastError=null,this._uncaughtPromiseErrors=Promise[Zone.__symbol__("uncaughtPromiseErrors")],this.pendingPeriodicTimers=[],this.pendingTimers=[],this.patchDateLocked=!1,this.properties={FakeAsyncTestZoneSpec:this},this.name="fakeAsyncTestZone for "+t,this.macroTaskOptions||(this.macroTaskOptions=e[Zone.__symbol__("FakeAsyncTestMacroTask")])}return i.assertInZone=function(){if(null==Zone.current.get("FakeAsyncTestZoneSpec"))throw new Error("The code should be running in the fakeAsync zone to call this function")},i.prototype._fnAndFlush=function(t,n){var r=this;return function(){for(var o=[],i=0;i<arguments.length;i++)o[i]=arguments[i];return t.apply(e,o),null===r._lastError?(null!=n.onSuccess&&n.onSuccess.apply(e),r.flushMicrotasks()):null!=n.onError&&n.onError.apply(e),null===r._lastError}},i._removeTimer=function(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)},i.prototype._dequeueTimer=function(e){var t=this;return function(){i._removeTimer(t.pendingTimers,e)}},i.prototype._requeuePeriodicTimer=function(e,t,n,r){var o=this;return function(){-1!==o.pendingPeriodicTimers.indexOf(r)&&o._scheduler.scheduleFunction(e,t,{args:n,isPeriodic:!0,id:r,isRequeuePeriodic:!0})}},i.prototype._dequeuePeriodicTimer=function(e){var t=this;return function(){i._removeTimer(t.pendingPeriodicTimers,e)}},i.prototype._setTimeout=function(e,t,n,r){void 0===r&&(r=!0);var i=this._dequeueTimer(o.nextId),a=this._fnAndFlush(e,{onSuccess:i,onError:i}),s=this._scheduler.scheduleFunction(a,t,{args:n,isRequestAnimationFrame:!r});return r&&this.pendingTimers.push(s),s},i.prototype._clearTimeout=function(e){i._removeTimer(this.pendingTimers,e),this._scheduler.removeScheduledFunctionWithId(e)},i.prototype._setInterval=function(e,t,n){var r=o.nextId,i={onSuccess:null,onError:this._dequeuePeriodicTimer(r)},a=this._fnAndFlush(e,i);return i.onSuccess=this._requeuePeriodicTimer(a,t,n,r),this._scheduler.scheduleFunction(a,t,{args:n,isPeriodic:!0}),this.pendingPeriodicTimers.push(r),r},i.prototype._clearInterval=function(e){i._removeTimer(this.pendingPeriodicTimers,e),this._scheduler.removeScheduledFunctionWithId(e)},i.prototype._resetLastErrorAndThrow=function(){var e=this._lastError||this._uncaughtPromiseErrors[0];throw this._uncaughtPromiseErrors.length=0,this._lastError=null,e},i.prototype.getCurrentTickTime=function(){return this._scheduler.getCurrentTickTime()},i.prototype.getFakeSystemTime=function(){return this._scheduler.getFakeSystemTime()},i.prototype.setFakeBaseSystemTime=function(e){this._scheduler.setFakeBaseSystemTime(e)},i.prototype.getRealSystemTime=function(){return this._scheduler.getRealSystemTime()},i.patchDate=function(){e[Zone.__symbol__("disableDatePatching")]||e.Date!==n&&(e.Date=n,n.prototype=t.prototype,i.checkTimerPatch())},i.resetDate=function(){e.Date===n&&(e.Date=t)},i.checkTimerPatch=function(){e.setTimeout!==r.setTimeout&&(e.setTimeout=r.setTimeout,e.clearTimeout=r.clearTimeout),e.setInterval!==r.setInterval&&(e.setInterval=r.setInterval,e.clearInterval=r.clearInterval)},i.prototype.lockDatePatch=function(){this.patchDateLocked=!0,i.patchDate()},i.prototype.unlockDatePatch=function(){this.patchDateLocked=!1,i.resetDate()},i.prototype.tickToNext=function(e,t,n){void 0===e&&(e=1),void 0===n&&(n={processNewMacroTasksSynchronously:!0}),e<=0||(i.assertInZone(),this.flushMicrotasks(),this._scheduler.tickToNext(e,t,n),null!==this._lastError&&this._resetLastErrorAndThrow())},i.prototype.tick=function(e,t,n){void 0===e&&(e=0),void 0===n&&(n={processNewMacroTasksSynchronously:!0}),i.assertInZone(),this.flushMicrotasks(),this._scheduler.tick(e,t,n),null!==this._lastError&&this._resetLastErrorAndThrow()},i.prototype.flushMicrotasks=function(){for(i.assertInZone();this._microtasks.length>0;){var e=this._microtasks.shift();e.func.apply(e.target,e.args)}(null!==this._lastError||this._uncaughtPromiseErrors.length)&&this._resetLastErrorAndThrow()},i.prototype.flush=function(e,t,n){i.assertInZone(),this.flushMicrotasks();var r=this._scheduler.flush(e,t,n);return null!==this._lastError&&this._resetLastErrorAndThrow(),r},i.prototype.flushOnlyPendingTimers=function(e){i.assertInZone(),this.flushMicrotasks();var t=this._scheduler.flushOnlyPendingTimers(e);return null!==this._lastError&&this._resetLastErrorAndThrow(),t},i.prototype.removeAllTimers=function(){i.assertInZone(),this._scheduler.removeAll(),this.pendingPeriodicTimers=[],this.pendingTimers=[]},i.prototype.getTimerCount=function(){return this._scheduler.getTimerCount()+this._microtasks.length},i.prototype.onScheduleTask=function(e,t,n,r){switch(r.type){case"microTask":var o=r.data&&r.data.args,i=void 0;if(o){var a=r.data.cbIdx;"number"==typeof o.length&&o.length>a+1&&(i=Array.prototype.slice.call(o,a+1))}this._microtasks.push({func:r.invoke,args:i,target:r.data&&r.data.target});break;case"macroTask":switch(r.source){case"setTimeout":r.data.handleId=this._setTimeout(r.invoke,r.data.delay,Array.prototype.slice.call(r.data.args,2));break;case"setImmediate":r.data.handleId=this._setTimeout(r.invoke,0,Array.prototype.slice.call(r.data.args,1));break;case"setInterval":r.data.handleId=this._setInterval(r.invoke,r.data.delay,Array.prototype.slice.call(r.data.args,2));break;case"XMLHttpRequest.send":throw new Error("Cannot make XHRs from within a fake async test. Request URL: "+r.data.url);case"requestAnimationFrame":case"webkitRequestAnimationFrame":case"mozRequestAnimationFrame":r.data.handleId=this._setTimeout(r.invoke,16,r.data.args,this.trackPendingRequestAnimationFrame);break;default:var s=this.findMacroTaskOption(r);if(s){var c=r.data&&r.data.args,u=c&&c.length>1?c[1]:0,l=s.callbackArgs?s.callbackArgs:c;s.isPeriodic?(r.data.handleId=this._setInterval(r.invoke,u,l),r.data.isPeriodic=!0):r.data.handleId=this._setTimeout(r.invoke,u,l);break}throw new Error("Unknown macroTask scheduled in fake async test: "+r.source)}break;case"eventTask":r=e.scheduleTask(n,r)}return r},i.prototype.onCancelTask=function(e,t,n,r){switch(r.source){case"setTimeout":case"requestAnimationFrame":case"webkitRequestAnimationFrame":case"mozRequestAnimationFrame":return this._clearTimeout(r.data.handleId);case"setInterval":return this._clearInterval(r.data.handleId);default:var o=this.findMacroTaskOption(r);if(o){var i=r.data.handleId;return o.isPeriodic?this._clearInterval(i):this._clearTimeout(i)}return e.cancelTask(n,r)}},i.prototype.onInvoke=function(e,t,n,r,o,a,s){try{return i.patchDate(),e.invoke(n,r,o,a,s)}finally{this.patchDateLocked||i.resetDate()}},i.prototype.findMacroTaskOption=function(e){if(!this.macroTaskOptions)return null;for(var t=0;t<this.macroTaskOptions.length;t++){var n=this.macroTaskOptions[t];if(n.source===e.source)return n}return null},i.prototype.onHandleError=function(e,t,n,r){return this._lastError=r,!1},i}();Zone.FakeAsyncTestZoneSpec=i}("object"==typeof window&&window||"object"==typeof self&&self||global),Zone.__load_patch("fakeasync",(function(e,t,n){var r=t&&t.FakeAsyncTestZoneSpec;function o(){return t&&t.ProxyZoneSpec}var i=null;function a(){i&&i.unlockDatePatch(),i=null,o()&&o().assertPresent().resetDelegate()}function s(){if(null==i&&null==(i=t.current.get("FakeAsyncTestZoneSpec")))throw new Error("The code should be running in the fakeAsync zone to call this function");return i}function c(){s().flushMicrotasks()}t[n.symbol("fakeAsyncTest")]={resetFakeAsyncZone:a,flushMicrotasks:c,discardPeriodicTasks:function u(){s().pendingPeriodicTimers.length=0},tick:function l(e,t){void 0===e&&(e=0),void 0===t&&(t=!1),s().tick(e,null,t)},flush:function h(e){return s().flush(e)},fakeAsync:function p(e){var n=function(){for(var n=[],s=0;s<arguments.length;s++)n[s]=arguments[s];var u=o();if(!u)throw new Error("ProxyZoneSpec is needed for the async() test helper but could not be found. Please make sure that your environment includes zone.js/dist/proxy.js");var l=u.assertPresent();if(t.current.get("FakeAsyncTestZoneSpec"))throw new Error("fakeAsync() calls can not be nested");try{if(!i){if(l.getDelegate()instanceof r)throw new Error("fakeAsync() calls can not be nested");i=new r}var h=void 0,p=l.getDelegate();l.setDelegate(i),i.lockDatePatch();try{h=e.apply(this,n),c()}finally{l.setDelegate(p)}if(i.pendingPeriodicTimers.length>0)throw new Error(i.pendingPeriodicTimers.length+" periodic timer(s) still in the queue.");if(i.pendingTimers.length>0)throw new Error(i.pendingTimers.length+" timer(s) still in the queue.");return h}finally{a()}};return n.isFakeAsync=!0,n}}}),!0),
  /**
       * @license
       * Copyright Google LLC All Rights Reserved.
       *
       * Use of this source code is governed by an MIT-style license that can be
       * found in the LICENSE file at https://angular.io/license
       */
  Zone.__load_patch("promisefortest",(function(e,t,n){var r=n.symbol("state"),o=n.symbol("parentUnresolved");Promise[n.symbol("patchPromiseForTest")]=function e(){var n=Promise[t.__symbol__("ZonePromiseThen")];n||(n=Promise[t.__symbol__("ZonePromiseThen")]=Promise.prototype.then,Promise.prototype.then=function(){var e=n.apply(this,arguments);if(null===this[r]){var i=t.current.get("AsyncTestZoneSpec");i&&(i.unresolvedChainedPromiseCount++,e[o]=!0)}return e})},Promise[n.symbol("unPatchPromiseForTest")]=function e(){var n=Promise[t.__symbol__("ZonePromiseThen")];n&&(Promise.prototype.then=n,Promise[t.__symbol__("ZonePromiseThen")]=void 0)}}))}));