{"version":3,"sources":["webpack:///node_modules/classlist.js/classList.js","webpack:///node_modules/web-animations-js/web-animations.min.js","webpack:///src/polyfills.ts","webpack:///node_modules/zone.js/dist/zone-evergreen.js"],"names":["self","document","createElement","createElementNS","view","elemCtrProto","Element","objCtr","Object","strTrim","String","trim","this","replace","arrIndexOf","Array","indexOf","item","i","len","length","DOMEx","type","message","name","code","DOMException","checkTokenAndGetIndex","classList","token","test","call","ClassList","elem","trimmedClasses","getAttribute","classes","split","push","_updateClassName","setAttribute","toString","classListProto","classListGetter","Error","contains","add","tokens","arguments","l","updated","remove","index","splice","toggle","force","result","method","join","defineProperty","classListPropDesc","get","enumerable","configurable","ex","number","__defineGetter__","testElement","createMethod","original","DOMTokenList","prototype","_toggle","a","b","d","_delay","_endDelay","_fill","_iterationStart","_iterations","_duration","_playbackRate","_direction","_easing","_easingFunction","x","e","isDeprecated","f","c","fill","duration","isNaN","getOwnPropertyNames","forEach","v","w","g","h","j","k","Math","abs","C","style","animationTimingFunction","TypeError","E","exec","apply","slice","map","Number","F","A","G","start","y","middle","z","end","B","o","H","delay","endDelay","min","I","J","K","_setMember","_effect","_timingInput","_timing","normalizeTimingInput","activeDuration","calculateActiveDuration","_animation","_rebuildUnderlyingAnimation","playbackRate","iterationStart","direction","easing","iterations","ease","D","RegExp","cloneTimingInput","makeTiming","numericTimingToObject","calculateIterationProgress","floor","calculatePhase","normalizeEasing","parseEasingFunction","lastIndexOf","isArray","offset","composite","sort","background","border","borderBottom","borderColor","borderLeft","borderRadius","borderRight","borderTop","borderWidth","flex","font","margin","outline","padding","thin","medium","thick","borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopWidth","fontSize","small","large","fontWeight","normal","bold","outlineWidth","textShadow","none","boxShadow","convertToArrayForm","normalizeKeyframes","window","Symbol","iterator","from","isFinite","NOT_SUPPORTED_ERR","filter","Date","setMonth","getMonth","console","warn","toDateString","deprecated","documentElement","animate","convertEffectInput","value","m","applyFrom","applyTo","startOffset","endOffset","easingFunction","property","interpolation","propertyInterpolation","clear","toUpperCase","addPropertiesHandler","backgroundColor","backgroundPosition","borderBottomColor","borderBottomLeftRadius","borderBottomRightRadius","borderLeftColor","borderRightColor","borderSpacing","borderTopColor","borderTopLeftRadius","borderTopRightRadius","bottom","clip","color","height","left","letterSpacing","lineHeight","marginBottom","marginLeft","marginRight","marginTop","maxHeight","maxWidth","minHeight","minWidth","opacity","outlineColor","outlineOffset","paddingBottom","paddingLeft","paddingRight","paddingTop","right","strokeDasharray","strokeDashoffset","textIndent","top","transform","verticalAlign","visibility","width","wordSpacing","zIndex","n","Interpolation","KeyframeEffect","_totalDuration","_update","_clear","_hasSameTarget","_target","_id","_element","_surrogateStyle","_style","_length","_isAnimatedProperty","_updateSvgTransformAttr","namespaceURI","navigator","userAgent","_savedTransformAttr","_updateIndices","_webAnimationsPatchedStyle","_set","cssText","parentRule","getPropertyCSSValue","getPropertyPriority","getPropertyValue","removeProperty","setProperty","unprefixedPropertyName","transformToSvgMatrix","removeAttribute","set","propertyName","id","timeline","_play","p","concat","composeMatrix","quat","dot","max","acos","sin","sqrt","cos","sequenceNumber","target","currentTime","timelineTime","bubbles","cancelable","currentTarget","defaultPrevented","eventPhase","Event","AT_TARGET","timeStamp","now","Animation","_sequenceNumber","_currentTime","_startTime","_paused","_inTimeline","_finishedFlag","onfinish","_finishHandlers","_inEffect","_idle","_currentTimePending","_ensureAlive","_animations","_tickCurrentTime","_isFinished","restart","_timeline","applyDirtiedAnimation","startTime","playState","_rewind","play","pause","finish","cancel","reverse","addEventListener","removeEventListener","_fireEvents","setTimeout","_tick","_needsTick","pending","running","_targetAnimations","_activeAnimations","_markTarget","_unmarkTarget","q","performance","requestAnimationFrame","cancelAnimationFrame","timing","deg","grad","turn","PI","rad","t","tan","px","reduce","r","s","u","makeMatrixDecomposition","transformListToMatrix","ignoreCase","toLowerCase","substr","consumeToken","consumeTrimmed","consumeRepeated","bind","consumeParenthesised","ignore","optional","consumeList","mergeNestedRepeated","mergeWrappedNestedRepeated","mergeList","inset","lengths","consumeLengthOrPercent","consumeColor","mergeDimensions","mergeColors","toFixed","clamp","round","parseNumber","parseNumberList","mergeNumbers","numberToString","fillStyle","fillRect","getImageData","data","clearRect","getContext","NaN","search","source","parseLength","parseLengthOrPercent","parseAngle","consumeSizePairList","mergeNonNegativeSizePair","parseBox","mergeBoxes","N","T","L","lastIndex","decompositionPair","matrix","matrix3d","rotate","rotatex","rotatey","rotatez","rotate3d","perspective","scale","scalex","scaley","scalez","scale3d","skew","skewx","skewy","translate","translatex","translatey","translatez","translate3d","center","consumePosition","mergeOffsetList","oncancel","_cancelHandlers","getComputedStyle","global","mark","performanceMeasure","label","symbolPrefix","__symbol__","checkDuplicate","Zone","constructor","parent","zoneSpec","_parent","_name","_properties","properties","_zoneDelegate","_ZoneDelegate","static","patches","root","zone","current","_currentZoneFrame","currentTask","_currentTask","fn","ignoreDuplicate","hasOwnProperty","perfName","_api","key","getZoneWith","fork","wrap","callback","_callback","intercept","runGuarded","run","applyThis","applyArgs","invoke","error","handleError","runTask","task","NO_ZONE","state","notScheduled","eventTask","macroTask","reEntryGuard","_transitionTo","scheduled","runCount","previousTask","isPeriodic","cancelFn","undefined","invokeTask","unknown","_updateTaskCount","scheduleTask","newZone","scheduling","zoneDelegates","_zoneDelegates","_zone","err","scheduleMicroTask","customSchedule","ZoneTask","microTask","scheduleMacroTask","customCancel","scheduleEventTask","cancelTask","canceling","count","DELEGATE_ZS","onHasTask","delegate","_","hasTaskState","hasTask","onScheduleTask","onInvokeTask","onCancelTask","parentDelegate","_taskCounts","_parentDelegate","_forkZS","onFork","_forkDlgt","_forkCurrZone","_interceptZS","onIntercept","_interceptDlgt","_interceptCurrZone","_invokeZS","onInvoke","_invokeDlgt","_invokeCurrZone","_handleErrorZS","onHandleError","_handleErrorDlgt","_handleErrorCurrZone","_scheduleTaskZS","_scheduleTaskDlgt","_scheduleTaskCurrZone","_invokeTaskZS","_invokeTaskDlgt","_invokeTaskCurrZone","_cancelTaskZS","_cancelTaskDlgt","_cancelTaskCurrZone","_hasTaskZS","_hasTaskDlgt","_hasTaskDlgtOwner","_hasTaskCurrZone","zoneSpecHasTask","targetZone","returnTask","scheduleFn","isEmpty","counts","prev","next","change","options","_state","useG","args","_numberOfNestedTaskFrames","drainMicroTaskQueue","cancelScheduleRequest","toState","fromState1","fromState2","handleId","toJSON","symbolSetTimeout","symbolPromise","symbolThen","nativeMicroTaskQueuePromise","_microTaskQueue","_isDrainingMicrotaskQueue","nativeScheduleMicroTask","func","resolve","nativeThen","queue","onUnhandledError","microtaskDrainDone","symbol","currentZoneFrame","noop","showUncaughtError","patchEventTarget","patchOnProperties","patchMethod","bindArguments","patchThen","patchMacroTask","patchEventPrototype","isIEOrEdge","getGlobalObjects","ObjectDefineProperty","ObjectGetOwnPropertyDescriptor","ObjectCreate","ArraySlice","patchClass","wrapWithCurrentZone","filterProperties","attachOriginToPatched","_redefineProperty","patchCallbacks","getOwnPropertyDescriptor","ObjectGetPrototypeOf","getPrototypeOf","create","ZONE_SYMBOL_ADD_EVENT_LISTENER","ZONE_SYMBOL_REMOVE_EVENT_LISTENER","ZONE_SYMBOL_PREFIX","scheduleMacroTaskWithCurrentZone","zoneSymbol","isWindowExists","internalWindow","_global","isPropertyWritable","propertyDesc","writable","isWebWorker","WorkerGlobalScope","isNode","process","isBrowser","isMix","zoneSymbolEventNames$1","wrapFn","event","eventNameSymbol","listener","errorEvent","filename","lineno","colno","preventDefault","patchProperty","obj","prop","desc","onPropPatchedSymbol","originalDescGet","originalDescSet","eventName","newValue","onProperties","originalInstanceKey","className","OriginalClass","instance","patchFn","proto","delegateName","patchDelegate","funcName","metaCreator","setNative","cbIdx","meta","patched","isDetectedIEOrEdge","ieOrEdge","isIE","ua","__load_patch","api","_uncaughtPromiseErrors","isDisableWrappingUncaughtPromiseRejection","rejection","stack","uncaughtPromiseError","shift","throwOriginal","handleUnhandledRejection","UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL","handler","isThenable","then","forwardResolution","forwardRejection","ZoneAwarePromise","reject","symbolState","symbolValue","symbolFinally","symbolParentPromiseValue","symbolParentPromiseState","makeResolver","promise","resolvePromise","CURRENT_TASK_TRACE_SYMBOL","onceWrapper","wasCalled","wrappedFunction","clearRejectedNoCatch","trace","scheduleResolveOrReject","JSON","stringify","REJECTION_HANDLED_HANDLER","chainPromise","onFulfilled","onRejected","promiseState","parentPromiseValue","isFinallyPromise","AggregateError","values","Promise","promises","finished","errors","res","rej","onResolve","onReject","allWithCallback","thenCallback","status","errorCallback","reason","unresolvedCount","valueIndex","resolvedValues","curValueIndex","thenErr","executor","toStringTag","species","catch","finally","onFinally","race","all","NativePromise","symbolThenPatched","Ctor","originalThen","zoneify","resultPromise","ctor","originalFunctionToString","Function","ORIGINAL_DELEGATE_SYMBOL","PROMISE_SYMBOL","ERROR_SYMBOL","newFunctionToString","originalDelegate","nativePromise","nativeError","originalObjectToString","passiveSupported","OPTIMIZED_ZONE_EVENT_TASK_DATA","zoneSymbolEventNames","globalSources","EVENT_NAME_SYMBOL_REGX","IMMEDIATE_PROPAGATION_SYMBOL","prepareEventNames","eventNameToString","falseEventName","trueEventName","symbolCapture","apis","patchOptions","ADD_EVENT_LISTENER","REMOVE_EVENT_LISTENER","rm","LISTENERS_EVENT_LISTENER","listeners","REMOVE_ALL_LISTENERS_EVENT_LISTENER","rmAll","zoneSymbolAddEventListener","ADD_EVENT_LISTENER_SOURCE","isRemoved","handleEvent","once","globalCallback","context","isCapture","tasks","copyTasks","globalZoneAwareCallback","globalZoneAwareCaptureCallback","patchEventTargetMethods","useGlobalCallback","validateHandler","vh","chkDup","returnTarget","rt","taskData","nativeAddEventListener","nativeRemoveEventListener","nativeListeners","nativeRemoveAllListeners","nativePrependEventListener","buildEventListenerOptions","passive","capture","assign","prepend","isExisting","symbolEventNames","symbolEventName","existingTasks","allRemoved","compare","diff","typeOfDelegate","unpatchedEvents","passiveEvents","makeAddListener","nativeListener","addSource","customScheduleFn","customCancelFn","transferEventName","isHandleEvent","constructorName","targetSource","unshift","existingTask","findEventTasks","captureTasks","removeTasks","keys","match","evtName","results","foundTasks","captureFalseTasks","captureTrueTasks","targetName","callbacks","nativeDelegate","opts","descriptor","ignoreProperties","tip","ip","targetIgnoreProperties","op","patchFilteredProperties","getOnEventNames","startsWith","substring","propertyDescriptorPatch","patchTargets","ignoreErrorProperties","eventNames","SYMBOL_BLACK_LISTED_EVENTS","SYMBOL_UNPATCHED_EVENTS","TRUE_STR","FALSE_STR","ADD_EVENT_LISTENER_STR","REMOVE_EVENT_LISTENER_STR","taskSymbol","patchTimer","setName","cancelName","nameSuffix","clearNative","tasksByHandleId","clearTask","handle","ref","unref","eventTargetPatch","EVENT_TARGET","legacyPatch","blockingMethods","XMLHttpRequestEventTarget","customElements","XMLHttpRequest","XMLHttpRequestPrototype","oriAddListener","oriRemoveListener","XMLHttpRequestEventTargetPrototype","XHR_SCHEDULED","XHR_ERROR_BEFORE_SCHEDULED","XHR_LISTENER","newListener","readyState","DONE","aborted","loadTasks","oriInvoke","XHR_TASK","sendNative","placeholderCallback","abortNative","openNative","XHR_SYNC","XHR_URL","fetchTaskAborting","fetchTaskScheduling","url","geolocation","fnNames","findPromiseRejectionHandler","PromiseRejectionEvent","evt"],"mappings":"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","file":"x","sourcesContent":["/*\n * classList.js: Cross-browser full element.classList implementation.\n * 1.1.20150312\n *\n * By Eli Grey, http://eligrey.com\n * License: Dedicated to the public domain.\n * See https://github.com/eligrey/classList.js/blob/master/LICENSE.md\n */\n\n/*global self, document, DOMException */\n\n/*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js */\n\nif (\"document\" in self) {\n\n// Full polyfill for browsers with no classList support\n// Including IE < Edge missing SVGElement.classList\nif (!(\"classList\" in document.createElement(\"_\")) \n\t|| document.createElementNS && !(\"classList\" in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"))) {\n\n(function (view) {\n\n\"use strict\";\n\nif (!('Element' in view)) return;\n\nvar\n\t classListProp = \"classList\"\n\t, protoProp = \"prototype\"\n\t, elemCtrProto = view.Element[protoProp]\n\t, objCtr = Object\n\t, strTrim = String[protoProp].trim || function () {\n\t\treturn this.replace(/^\\s+|\\s+$/g, \"\");\n\t}\n\t, arrIndexOf = Array[protoProp].indexOf || function (item) {\n\t\tvar\n\t\t\t i = 0\n\t\t\t, len = this.length\n\t\t;\n\t\tfor (; i < len; i++) {\n\t\t\tif (i in this && this[i] === item) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t}\n\t// Vendors: please allow content code to instantiate DOMExceptions\n\t, DOMEx = function (type, message) {\n\t\tthis.name = type;\n\t\tthis.code = DOMException[type];\n\t\tthis.message = message;\n\t}\n\t, checkTokenAndGetIndex = function (classList, token) {\n\t\tif (token === \"\") {\n\t\t\tthrow new DOMEx(\n\t\t\t\t \"SYNTAX_ERR\"\n\t\t\t\t, \"An invalid or illegal string was specified\"\n\t\t\t);\n\t\t}\n\t\tif (/\\s/.test(token)) {\n\t\t\tthrow new DOMEx(\n\t\t\t\t \"INVALID_CHARACTER_ERR\"\n\t\t\t\t, \"String contains an invalid character\"\n\t\t\t);\n\t\t}\n\t\treturn arrIndexOf.call(classList, token);\n\t}\n\t, ClassList = function (elem) {\n\t\tvar\n\t\t\t trimmedClasses = strTrim.call(elem.getAttribute(\"class\") || \"\")\n\t\t\t, classes = trimmedClasses ? trimmedClasses.split(/\\s+/) : []\n\t\t\t, i = 0\n\t\t\t, len = classes.length\n\t\t;\n\t\tfor (; i < len; i++) {\n\t\t\tthis.push(classes[i]);\n\t\t}\n\t\tthis._updateClassName = function () {\n\t\t\telem.setAttribute(\"class\", this.toString());\n\t\t};\n\t}\n\t, classListProto = ClassList[protoProp] = []\n\t, classListGetter = function () {\n\t\treturn new ClassList(this);\n\t}\n;\n// Most DOMException implementations don't allow calling DOMException's toString()\n// on non-DOMExceptions. Error's toString() is sufficient here.\nDOMEx[protoProp] = Error[protoProp];\nclassListProto.item = function (i) {\n\treturn this[i] || null;\n};\nclassListProto.contains = function (token) {\n\ttoken += \"\";\n\treturn checkTokenAndGetIndex(this, token) !== -1;\n};\nclassListProto.add = function () {\n\tvar\n\t\t tokens = arguments\n\t\t, i = 0\n\t\t, l = tokens.length\n\t\t, token\n\t\t, updated = false\n\t;\n\tdo {\n\t\ttoken = tokens[i] + \"\";\n\t\tif (checkTokenAndGetIndex(this, token) === -1) {\n\t\t\tthis.push(token);\n\t\t\tupdated = true;\n\t\t}\n\t}\n\twhile (++i < l);\n\n\tif (updated) {\n\t\tthis._updateClassName();\n\t}\n};\nclassListProto.remove = function () {\n\tvar\n\t\t tokens = arguments\n\t\t, i = 0\n\t\t, l = tokens.length\n\t\t, token\n\t\t, updated = false\n\t\t, index\n\t;\n\tdo {\n\t\ttoken = tokens[i] + \"\";\n\t\tindex = checkTokenAndGetIndex(this, token);\n\t\twhile (index !== -1) {\n\t\t\tthis.splice(index, 1);\n\t\t\tupdated = true;\n\t\t\tindex = checkTokenAndGetIndex(this, token);\n\t\t}\n\t}\n\twhile (++i < l);\n\n\tif (updated) {\n\t\tthis._updateClassName();\n\t}\n};\nclassListProto.toggle = function (token, force) {\n\ttoken += \"\";\n\n\tvar\n\t\t result = this.contains(token)\n\t\t, method = result ?\n\t\t\tforce !== true && \"remove\"\n\t\t:\n\t\t\tforce !== false && \"add\"\n\t;\n\n\tif (method) {\n\t\tthis[method](token);\n\t}\n\n\tif (force === true || force === false) {\n\t\treturn force;\n\t} else {\n\t\treturn !result;\n\t}\n};\nclassListProto.toString = function () {\n\treturn this.join(\" \");\n};\n\nif (objCtr.defineProperty) {\n\tvar classListPropDesc = {\n\t\t get: classListGetter\n\t\t, enumerable: true\n\t\t, configurable: true\n\t};\n\ttry {\n\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t} catch (ex) { // IE 8 doesn't support enumerable:true\n\t\tif (ex.number === -0x7FF5EC54) {\n\t\t\tclassListPropDesc.enumerable = false;\n\t\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t\t}\n\t}\n} else if (objCtr[protoProp].__defineGetter__) {\n\telemCtrProto.__defineGetter__(classListProp, classListGetter);\n}\n\n}(self));\n\n} else {\n// There is full or partial native classList support, so just check if we need\n// to normalize the add/remove and toggle APIs.\n\n(function () {\n\t\"use strict\";\n\n\tvar testElement = document.createElement(\"_\");\n\n\ttestElement.classList.add(\"c1\", \"c2\");\n\n\t// Polyfill for IE 10/11 and Firefox <26, where classList.add and\n\t// classList.remove exist but support only one argument at a time.\n\tif (!testElement.classList.contains(\"c2\")) {\n\t\tvar createMethod = function(method) {\n\t\t\tvar original = DOMTokenList.prototype[method];\n\n\t\t\tDOMTokenList.prototype[method] = function(token) {\n\t\t\t\tvar i, len = arguments.length;\n\n\t\t\t\tfor (i = 0; i < len; i++) {\n\t\t\t\t\ttoken = arguments[i];\n\t\t\t\t\toriginal.call(this, token);\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\t\tcreateMethod('add');\n\t\tcreateMethod('remove');\n\t}\n\n\ttestElement.classList.toggle(\"c3\", false);\n\n\t// Polyfill for IE 10 and Firefox <24, where classList.toggle does not\n\t// support the second argument.\n\tif (testElement.classList.contains(\"c3\")) {\n\t\tvar _toggle = DOMTokenList.prototype.toggle;\n\n\t\tDOMTokenList.prototype.toggle = function(token, force) {\n\t\t\tif (1 in arguments && !this.contains(token) === !force) {\n\t\t\t\treturn force;\n\t\t\t} else {\n\t\t\t\treturn _toggle.call(this, token);\n\t\t\t}\n\t\t};\n\n\t}\n\n\ttestElement = null;\n}());\n\n}\n\n}\n\n","// Copyright 2014 Google Inc. All rights reserved.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\n!function(){var a={},b={};!function(a,b){function c(a){if(\"number\"==typeof a)return a;var b={};for(var c in a)b[c]=a[c];return b}function d(){this._delay=0,this._endDelay=0,this._fill=\"none\",this._iterationStart=0,this._iterations=1,this._duration=0,this._playbackRate=1,this._direction=\"normal\",this._easing=\"linear\",this._easingFunction=x}function e(){return a.isDeprecated(\"Invalid timing inputs\",\"2016-03-02\",\"TypeError exceptions will be thrown instead.\",!0)}function f(b,c,e){var f=new d;return c&&(f.fill=\"both\",f.duration=\"auto\"),\"number\"!=typeof b||isNaN(b)?void 0!==b&&Object.getOwnPropertyNames(b).forEach(function(c){if(\"auto\"!=b[c]){if((\"number\"==typeof f[c]||\"duration\"==c)&&(\"number\"!=typeof b[c]||isNaN(b[c])))return;if(\"fill\"==c&&-1==v.indexOf(b[c]))return;if(\"direction\"==c&&-1==w.indexOf(b[c]))return;if(\"playbackRate\"==c&&1!==b[c]&&a.isDeprecated(\"AnimationEffectTiming.playbackRate\",\"2014-11-28\",\"Use Animation.playbackRate instead.\"))return;f[c]=b[c]}}):f.duration=b,f}function g(a){return\"number\"==typeof a&&(a=isNaN(a)?{duration:0}:{duration:a}),a}function h(b,c){return b=a.numericTimingToObject(b),f(b,c)}function i(a,b,c,d){return a<0||a>1||c<0||c>1?x:function(e){function f(a,b,c){return 3*a*(1-c)*(1-c)*c+3*b*(1-c)*c*c+c*c*c}if(e<=0){var g=0;return a>0?g=b/a:!b&&c>0&&(g=d/c),g*e}if(e>=1){var h=0;return c<1?h=(d-1)/(c-1):1==c&&a<1&&(h=(b-1)/(a-1)),1+h*(e-1)}for(var i=0,j=1;i=1)return 1;var d=1/a;return(c+=b*d)-c%d}}function k(a){C||(C=document.createElement(\"div\").style),C.animationTimingFunction=\"\",C.animationTimingFunction=a;var b=C.animationTimingFunction;if(\"\"==b&&e())throw new TypeError(a+\" is not a valid value for easing\");return b}function l(a){if(\"linear\"==a)return x;var b=E.exec(a);if(b)return i.apply(this,b.slice(1).map(Number));var c=F.exec(a);if(c)return j(Number(c[1]),A);var d=G.exec(a);return d?j(Number(d[1]),{start:y,middle:z,end:A}[d[2]]):B[a]||x}function m(a){return Math.abs(n(a)/a.playbackRate)}function n(a){return 0===a.duration||0===a.iterations?0:a.duration*a.iterations}function o(a,b,c){if(null==b)return H;var d=c.delay+a+c.endDelay;return b=Math.min(c.delay+a,d)?J:K}function p(a,b,c,d,e){switch(d){case I:return\"backwards\"==b||\"both\"==b?0:null;case K:return c-e;case J:return\"forwards\"==b||\"both\"==b?a:null;case H:return null}}function q(a,b,c,d,e){var f=e;return 0===a?b!==I&&(f+=c):f+=d/a,f}function r(a,b,c,d,e,f){var g=a===1/0?b%1:a%1;return 0!==g||c!==J||0===d||0===e&&0!==f||(g=1),g}function s(a,b,c,d){return a===J&&b===1/0?1/0:1===c?Math.floor(d)-1:Math.floor(d)}function t(a,b,c){var d=a;if(\"normal\"!==a&&\"reverse\"!==a){var e=b;\"alternate-reverse\"===a&&(e+=1),d=\"normal\",e!==1/0&&e%2!=0&&(d=\"reverse\")}return\"normal\"===d?c:1-c}function u(a,b,c){var d=o(a,b,c),e=p(a,c.fill,b,d,c.delay);if(null===e)return null;var f=q(c.duration,d,c.iterations,e,c.iterationStart),g=r(f,c.iterationStart,d,c.iterations,e,c.duration),h=s(d,c.iterations,g,f),i=t(c.direction,h,g);return c._easingFunction(i)}var v=\"backwards|forwards|both|none\".split(\"|\"),w=\"reverse|alternate|alternate-reverse\".split(\"|\"),x=function(a){return a};d.prototype={_setMember:function(b,c){this[\"_\"+b]=c,this._effect&&(this._effect._timingInput[b]=c,this._effect._timing=a.normalizeTimingInput(this._effect._timingInput),this._effect.activeDuration=a.calculateActiveDuration(this._effect._timing),this._effect._animation&&this._effect._animation._rebuildUnderlyingAnimation())},get playbackRate(){return this._playbackRate},set delay(a){this._setMember(\"delay\",a)},get delay(){return this._delay},set endDelay(a){this._setMember(\"endDelay\",a)},get endDelay(){return this._endDelay},set fill(a){this._setMember(\"fill\",a)},get fill(){return this._fill},set iterationStart(a){if((isNaN(a)||a<0)&&e())throw new TypeError(\"iterationStart must be a non-negative number, received: \"+a);this._setMember(\"iterationStart\",a)},get iterationStart(){return this._iterationStart},set duration(a){if(\"auto\"!=a&&(isNaN(a)||a<0)&&e())throw new TypeError(\"duration must be non-negative or auto, received: \"+a);this._setMember(\"duration\",a)},get duration(){return this._duration},set direction(a){this._setMember(\"direction\",a)},get direction(){return this._direction},set easing(a){this._easingFunction=l(k(a)),this._setMember(\"easing\",a)},get easing(){return this._easing},set iterations(a){if((isNaN(a)||a<0)&&e())throw new TypeError(\"iterations must be non-negative, received: \"+a);this._setMember(\"iterations\",a)},get iterations(){return this._iterations}};var y=1,z=.5,A=0,B={ease:i(.25,.1,.25,1),\"ease-in\":i(.42,0,1,1),\"ease-out\":i(0,0,.58,1),\"ease-in-out\":i(.42,0,.58,1),\"step-start\":j(1,y),\"step-middle\":j(1,z),\"step-end\":j(1,A)},C=null,D=\"\\\\s*(-?\\\\d+\\\\.?\\\\d*|-?\\\\.\\\\d+)\\\\s*\",E=new RegExp(\"cubic-bezier\\\\(\"+D+\",\"+D+\",\"+D+\",\"+D+\"\\\\)\"),F=/steps\\(\\s*(\\d+)\\s*\\)/,G=/steps\\(\\s*(\\d+)\\s*,\\s*(start|middle|end)\\s*\\)/,H=0,I=1,J=2,K=3;a.cloneTimingInput=c,a.makeTiming=f,a.numericTimingToObject=g,a.normalizeTimingInput=h,a.calculateActiveDuration=m,a.calculateIterationProgress=u,a.calculatePhase=o,a.normalizeEasing=k,a.parseEasingFunction=l}(a),function(a,b){function c(a,b){return a in k?k[a][b]||b:b}function d(a){return\"display\"===a||0===a.lastIndexOf(\"animation\",0)||0===a.lastIndexOf(\"transition\",0)}function e(a,b,e){if(!d(a)){var f=h[a];if(f){i.style[a]=b;for(var g in f){var j=f[g],k=i.style[j];e[j]=c(j,k)}}else e[a]=c(a,b)}}function f(a){var b=[];for(var c in a)if(!(c in[\"easing\",\"offset\",\"composite\"])){var d=a[c];Array.isArray(d)||(d=[d]);for(var e,f=d.length,g=0;g1&&null==d[0].offset&&(d[0].offset=0);for(var b=0,c=d[0].offset,e=1;e1)throw new TypeError(\"Keyframe offsets must be between 0 and 1.\")}}else if(\"composite\"==d){if(\"add\"==f||\"accumulate\"==f)throw{type:DOMException.NOT_SUPPORTED_ERR,name:\"NotSupportedError\",message:\"add compositing is not supported\"};if(\"replace\"!=f)throw new TypeError(\"Invalid composite mode \"+f+\".\")}else f=\"easing\"==d?a.normalizeEasing(f):\"\"+f;e(d,f,c)}return void 0==c.offset&&(c.offset=null),void 0==c.easing&&(c.easing=\"linear\"),c}),g=!0,h=-1/0,i=0;i=0&&a.offset<=1}),g||c(),d}var h={background:[\"backgroundImage\",\"backgroundPosition\",\"backgroundSize\",\"backgroundRepeat\",\"backgroundAttachment\",\"backgroundOrigin\",\"backgroundClip\",\"backgroundColor\"],border:[\"borderTopColor\",\"borderTopStyle\",\"borderTopWidth\",\"borderRightColor\",\"borderRightStyle\",\"borderRightWidth\",\"borderBottomColor\",\"borderBottomStyle\",\"borderBottomWidth\",\"borderLeftColor\",\"borderLeftStyle\",\"borderLeftWidth\"],borderBottom:[\"borderBottomWidth\",\"borderBottomStyle\",\"borderBottomColor\"],borderColor:[\"borderTopColor\",\"borderRightColor\",\"borderBottomColor\",\"borderLeftColor\"],borderLeft:[\"borderLeftWidth\",\"borderLeftStyle\",\"borderLeftColor\"],borderRadius:[\"borderTopLeftRadius\",\"borderTopRightRadius\",\"borderBottomRightRadius\",\"borderBottomLeftRadius\"],borderRight:[\"borderRightWidth\",\"borderRightStyle\",\"borderRightColor\"],borderTop:[\"borderTopWidth\",\"borderTopStyle\",\"borderTopColor\"],borderWidth:[\"borderTopWidth\",\"borderRightWidth\",\"borderBottomWidth\",\"borderLeftWidth\"],flex:[\"flexGrow\",\"flexShrink\",\"flexBasis\"],font:[\"fontFamily\",\"fontSize\",\"fontStyle\",\"fontVariant\",\"fontWeight\",\"lineHeight\"],margin:[\"marginTop\",\"marginRight\",\"marginBottom\",\"marginLeft\"],outline:[\"outlineColor\",\"outlineStyle\",\"outlineWidth\"],padding:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"]},i=document.createElementNS(\"http://www.w3.org/1999/xhtml\",\"div\"),j={thin:\"1px\",medium:\"3px\",thick:\"5px\"},k={borderBottomWidth:j,borderLeftWidth:j,borderRightWidth:j,borderTopWidth:j,fontSize:{\"xx-small\":\"60%\",\"x-small\":\"75%\",small:\"89%\",medium:\"100%\",large:\"120%\",\"x-large\":\"150%\",\"xx-large\":\"200%\"},fontWeight:{normal:\"400\",bold:\"700\"},outlineWidth:j,textShadow:{none:\"0px 0px 0px transparent\"},boxShadow:{none:\"0px 0px 0px 0px transparent\"}};a.convertToArrayForm=f,a.normalizeKeyframes=g}(a),function(a){var b={};a.isDeprecated=function(a,c,d,e){var f=e?\"are\":\"is\",g=new Date,h=new Date(c);return h.setMonth(h.getMonth()+3),!(g=a.applyFrom&&cthis._surrogateStyle.length;)this._length--,Object.defineProperty(this,this._length,{configurable:!0,enumerable:!1,value:void 0})},_set:function(b,c){this._style[b]=c,this._isAnimatedProperty[b]=!0,this._updateSvgTransformAttr&&\"transform\"==a.unprefixedPropertyName(b)&&(null==this._savedTransformAttr&&(this._savedTransformAttr=this._element.getAttribute(\"transform\")),this._element.setAttribute(\"transform\",a.transformToSvgMatrix(c)))},_clear:function(b){this._style[b]=this._surrogateStyle[b],this._updateSvgTransformAttr&&\"transform\"==a.unprefixedPropertyName(b)&&(this._savedTransformAttr?this._element.setAttribute(\"transform\",this._savedTransformAttr):this._element.removeAttribute(\"transform\"),this._savedTransformAttr=null),delete this._isAnimatedProperty[b]}};for(var k in i)e.prototype[k]=function(a,b){return function(){var c=this._surrogateStyle[a].apply(this._surrogateStyle,arguments);return b&&(this._isAnimatedProperty[arguments[0]]||this._style[a].apply(this._style,arguments),this._updateIndices()),c}}(k,k in j);for(var l in document.documentElement.style)l in h||l in i||function(a){d(e.prototype,a,{get:function(){return this._surrogateStyle[a]},set:function(b){this._surrogateStyle[a]=b,this._updateIndices(),this._isAnimatedProperty[a]||(this._style[a]=b)}})}(l);a.apply=function(b,c,d){f(b),b.style._set(a.propertyName(c),d)},a.clear=function(b,c){b._webAnimationsPatchedStyle&&b.style._clear(a.propertyName(c))}}(b),function(a){window.Element.prototype.animate=function(b,c){var d=\"\";return c&&c.id&&(d=c.id),a.timeline._play(a.KeyframeEffect(this,b,c,d))}}(b),function(a,b){function c(a,b,d){if(\"number\"==typeof a&&\"number\"==typeof b)return a*(1-d)+b*d;if(\"boolean\"==typeof a&&\"boolean\"==typeof b)return d<.5?a:b;if(a.length==b.length){for(var e=[],f=0;f0?this._totalDuration:0),this._ensureAlive())},get currentTime(){return this._idle||this._currentTimePending?null:this._currentTime},set currentTime(a){a=+a,isNaN(a)||(b.restart(),this._paused||null==this._startTime||(this._startTime=this._timeline.currentTime-a/this._playbackRate),this._currentTimePending=!1,this._currentTime!=a&&(this._idle&&(this._idle=!1,this._paused=!0),this._tickCurrentTime(a,!0),b.applyDirtiedAnimation(this)))},get startTime(){return this._startTime},set startTime(a){a=+a,isNaN(a)||this._paused||this._idle||(this._startTime=a,this._tickCurrentTime((this._timeline.currentTime-this._startTime)*this.playbackRate),b.applyDirtiedAnimation(this))},get playbackRate(){return this._playbackRate},set playbackRate(a){if(a!=this._playbackRate){var c=this.currentTime;this._playbackRate=a,this._startTime=null,\"paused\"!=this.playState&&\"idle\"!=this.playState&&(this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),b.applyDirtiedAnimation(this)),null!=c&&(this.currentTime=c)}},get _isFinished(){return!this._idle&&(this._playbackRate>0&&this._currentTime>=this._totalDuration||this._playbackRate<0&&this._currentTime<=0)},get _totalDuration(){return this._effect._totalDuration},get playState(){return this._idle?\"idle\":null==this._startTime&&!this._paused&&0!=this.playbackRate||this._currentTimePending?\"pending\":this._paused?\"paused\":this._isFinished?\"finished\":\"running\"},_rewind:function(){if(this._playbackRate>=0)this._currentTime=0;else{if(!(this._totalDuration<1/0))throw new DOMException(\"Unable to rewind negative playback rate animation with infinite duration\",\"InvalidStateError\");this._currentTime=this._totalDuration}},play:function(){this._paused=!1,(this._isFinished||this._idle)&&(this._rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),b.applyDirtiedAnimation(this)},pause:function(){this._isFinished||this._paused||this._idle?this._idle&&(this._rewind(),this._idle=!1):this._currentTimePending=!0,this._startTime=null,this._paused=!0},finish:function(){this._idle||(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this._currentTimePending=!1,b.applyDirtiedAnimation(this))},cancel:function(){this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=0,this._startTime=null,this._effect._update(null),b.applyDirtiedAnimation(this))},reverse:function(){this.playbackRate*=-1,this.play()},addEventListener:function(a,b){\"function\"==typeof b&&\"finish\"==a&&this._finishHandlers.push(b)},removeEventListener:function(a,b){if(\"finish\"==a){var c=this._finishHandlers.indexOf(b);c>=0&&this._finishHandlers.splice(c,1)}},_fireEvents:function(a){if(this._isFinished){if(!this._finishedFlag){var b=new d(this,this._currentTime,a),c=this._finishHandlers.concat(this.onfinish?[this.onfinish]:[]);setTimeout(function(){c.forEach(function(a){a.call(b.target,b)})},0),this._finishedFlag=!0}}else this._finishedFlag=!1},_tick:function(a,b){this._idle||this._paused||(null==this._startTime?b&&(this.startTime=a-this._currentTime/this.playbackRate):this._isFinished||this._tickCurrentTime((a-this._startTime)*this.playbackRate)),b&&(this._currentTimePending=!1,this._fireEvents(a))},get _needsTick(){return this.playState in{pending:1,running:1}||!this._finishedFlag},_targetAnimations:function(){var a=this._effect._target;return a._activeAnimations||(a._activeAnimations=[]),a._activeAnimations},_markTarget:function(){var a=this._targetAnimations();-1===a.indexOf(this)&&a.push(this)},_unmarkTarget:function(){var a=this._targetAnimations(),b=a.indexOf(this);-1!==b&&a.splice(b,1)}}}(a,b),function(a,b,c){function d(a){var b=j;j=[],a1e-4?(u=.5/Math.sqrt(w),v=[(q[2][1]-q[1][2])*u,(q[0][2]-q[2][0])*u,(q[1][0]-q[0][1])*u,.25/u]):q[0][0]>q[1][1]&&q[0][0]>q[2][2]?(u=2*Math.sqrt(1+q[0][0]-q[1][1]-q[2][2]),v=[.25*u,(q[0][1]+q[1][0])/u,(q[0][2]+q[2][0])/u,(q[2][1]-q[1][2])/u]):q[1][1]>q[2][2]?(u=2*Math.sqrt(1+q[1][1]-q[0][0]-q[2][2]),v=[(q[0][1]+q[1][0])/u,.25*u,(q[1][2]+q[2][1])/u,(q[0][2]-q[2][0])/u]):(u=2*Math.sqrt(1+q[2][2]-q[0][0]-q[1][1]),v=[(q[0][2]+q[2][0])/u,(q[1][2]+q[2][1])/u,.25*u,(q[1][0]-q[0][1])/u]),[p,r,s,v,n]}return j}();a.dot=c,a.makeMatrixDecomposition=h,a.transformListToMatrix=g}(b),function(a){function b(a,b){var c=a.exec(b);if(c)return c=a.ignoreCase?c[0].toLowerCase():c[0],[c,b.substr(c.length)]}function c(a,b){b=b.replace(/^\\s*/,\"\");var c=a(b);if(c)return[c[0],c[1].replace(/^\\s*/,\"\")]}function d(a,d,e){a=c.bind(null,a);for(var f=[];;){var g=a(e);if(!g)return[f,e];if(f.push(g[0]),e=g[1],!(g=b(d,e))||\"\"==g[1])return[f,e];e=g[1]}}function e(a,b){for(var c=0,d=0;dd?c%=d:d%=c;return c=a*b/(c+d)}function g(a){return function(b){var c=a(b);return c&&(c[0]=void 0),c}}function h(a,b){return function(c){return a(c)||[b,c]}}function i(b,c){for(var d=[],e=0;e=1?b:\"visible\"}]}a.addPropertiesHandler(String,c,[\"visibility\"])}(b),function(a,b){function c(a){a=a.trim(),f.fillStyle=\"#000\",f.fillStyle=a;var b=f.fillStyle;if(f.fillStyle=\"#fff\",f.fillStyle=a,b==f.fillStyle){f.fillRect(0,0,1,1);var c=f.getImageData(0,0,1,1).data;f.clearRect(0,0,1,1);var d=c[3]/255;return[c[0]*d,c[1]*d,c[2]*d,d]}}function d(b,c){return[b,c,function(b){function c(a){return Math.max(0,Math.min(255,a))}if(b[3])for(var d=0;d<3;d++)b[d]=Math.round(c(b[d]/b[3]));return b[3]=a.numberToString(a.clamp(0,1,b[3])),\"rgba(\"+b.join(\",\")+\")\"}]}var e=document.createElementNS(\"http://www.w3.org/1999/xhtml\",\"canvas\");e.width=e.height=1;var f=e.getContext(\"2d\");a.addPropertiesHandler(c,d,[\"background-color\",\"border-bottom-color\",\"border-left-color\",\"border-right-color\",\"border-top-color\",\"color\",\"fill\",\"flood-color\",\"lighting-color\",\"outline-color\",\"stop-color\",\"stroke\",\"text-decoration-color\"]),a.consumeColor=a.consumeParenthesised.bind(null,c),a.mergeColors=d}(b),function(a,b){function c(a){function b(){var b=h.exec(a);g=b?b[0]:void 0}function c(){var a=Number(g);return b(),a}function d(){if(\"(\"!==g)return c();b();var a=f();return\")\"!==g?NaN:(b(),a)}function e(){for(var a=d();\"*\"===g||\"/\"===g;){var c=g;b();var e=d();\"*\"===c?a*=e:a/=e}return a}function f(){for(var a=e();\"+\"===g||\"-\"===g;){var c=g;b();var d=e();\"+\"===c?a+=d:a-=d}return a}var g,h=/([\\+\\-\\w\\.]+|[\\(\\)\\*\\/])/g;return b(),f()}function d(a,b){if(\"0\"==(b=b.trim().toLowerCase())&&\"px\".search(a)>=0)return{px:0};if(/^[^(]*$|^calc/.test(b)){b=b.replace(/calc\\(/g,\"(\");var d={};b=b.replace(a,function(a){return d[a]=null,\"U\"+a});for(var e=\"U(\"+a.source+\")\",f=b.replace(/[-+]?(\\d*\\.)?\\d+([Ee][-+]?\\d+)?/g,\"N\").replace(new RegExp(\"N\"+e,\"g\"),\"D\").replace(/\\s[+-]\\s/g,\"O\").replace(/\\s/g,\"\"),g=[/N\\*(D)/g,/(N|D)[*\\/]N/g,/(N|D)O\\1/g,/\\((N|D)\\)/g],h=0;h1?\"calc(\"+c+\")\":c}]}var g=\"px|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc\",h=d.bind(null,new RegExp(g,\"g\")),i=d.bind(null,new RegExp(g+\"|%\",\"g\")),j=d.bind(null,/deg|rad|grad|turn/g);a.parseLength=h,a.parseLengthOrPercent=i,a.consumeLengthOrPercent=a.consumeParenthesised.bind(null,i),a.parseAngle=j,a.mergeDimensions=f;var k=a.consumeParenthesised.bind(null,h),l=a.consumeRepeated.bind(void 0,k,/^/),m=a.consumeRepeated.bind(void 0,l,/^,/);a.consumeSizePairList=m;var n=function(a){var b=m(a);if(b&&\"\"==b[1])return b[0]},o=a.mergeNestedRepeated.bind(void 0,e,\" \"),p=a.mergeNestedRepeated.bind(void 0,o,\",\");a.mergeNonNegativeSizePair=o,a.addPropertiesHandler(n,p,[\"background-size\"]),a.addPropertiesHandler(i,e,[\"border-bottom-width\",\"border-image-width\",\"border-left-width\",\"border-right-width\",\"border-top-width\",\"flex-basis\",\"font-size\",\"height\",\"line-height\",\"max-height\",\"max-width\",\"outline-width\",\"width\"]),a.addPropertiesHandler(i,f,[\"border-bottom-left-radius\",\"border-bottom-right-radius\",\"border-top-left-radius\",\"border-top-right-radius\",\"bottom\",\"left\",\"letter-spacing\",\"margin-bottom\",\"margin-left\",\"margin-right\",\"margin-top\",\"min-height\",\"min-width\",\"outline-offset\",\"padding-bottom\",\"padding-left\",\"padding-right\",\"padding-top\",\"perspective\",\"right\",\"shape-margin\",\"stroke-dashoffset\",\"text-indent\",\"top\",\"vertical-align\",\"word-spacing\"])}(b),function(a,b){function c(b){return a.consumeLengthOrPercent(b)||a.consumeToken(/^auto/,b)}function d(b){var d=a.consumeList([a.ignore(a.consumeToken.bind(null,/^rect/)),a.ignore(a.consumeToken.bind(null,/^\\(/)),a.consumeRepeated.bind(null,c,/^,/),a.ignore(a.consumeToken.bind(null,/^\\)/))],b);if(d&&4==d[0].length)return d[0]}function e(b,c){return\"auto\"==b||\"auto\"==c?[!0,!1,function(d){var e=d?b:c;if(\"auto\"==e)return\"auto\";var f=a.mergeDimensions(e,e);return f[2](f[0])}]:a.mergeDimensions(b,c)}function f(a){return\"rect(\"+a+\")\"}var g=a.mergeWrappedNestedRepeated.bind(null,f,e,\", \");a.parseBox=d,a.mergeBoxes=g,a.addPropertiesHandler(d,g,[\"clip\"])}(b),function(a,b){function c(a){return function(b){var c=0;return a.map(function(a){return a===k?b[c++]:a})}}function d(a){return a}function e(b){if(\"none\"==(b=b.toLowerCase().trim()))return[];for(var c,d=/\\s*(\\w+)\\(([^)]*)\\)/g,e=[],f=0;c=d.exec(b);){if(c.index!=f)return;f=c.index+c[0].length;var g=c[1],h=n[g];if(!h)return;var i=c[2].split(\",\"),j=h[0];if(j.length900||b%100!=0))return b}function c(b){return b=100*Math.round(b/100),b=a.clamp(100,900,b),400===b?\"normal\":700===b?\"bold\":String(b)}function d(a,b){return[a,b,c]}a.addPropertiesHandler(b,d,[\"font-weight\"])}(b),function(a){function b(a){var b={};for(var c in a)b[c]=-a[c];return b}function c(b){return a.consumeToken(/^(left|center|right|top|bottom)\\b/i,b)||a.consumeLengthOrPercent(b)}function d(b,d){var e=a.consumeRepeated(c,/^/,d);if(e&&\"\"==e[1]){var f=e[0];if(f[0]=f[0]||\"center\",f[1]=f[1]||\"center\",3==b&&(f[2]=f[2]||{px:0}),f.length==b){if(/top|bottom/.test(f[0])||/left|right/.test(f[1])){var h=f[0];f[0]=f[1],f[1]=h}if(/left|right|center|Object/.test(f[0])&&/top|bottom|center|Object/.test(f[1]))return f.map(function(a){return\"object\"==typeof a?a:g[a]})}}}function e(d){var e=a.consumeRepeated(c,/^/,d);if(e){for(var f=e[0],h=[{\"%\":50},{\"%\":50}],i=0,j=!1,k=0;k=0&&this._cancelHandlers.splice(c,1)}else i.call(this,a,b)},f}}}(),function(a){var b=document.documentElement,c=null,d=!1;try{var e=getComputedStyle(b).getPropertyValue(\"opacity\"),f=\"0\"==e?\"1\":\"0\";c=b.animate({opacity:[f,f]},{duration:1}),c.currentTime=0,d=getComputedStyle(b).getPropertyValue(\"opacity\")==f}catch(a){}finally{c&&c.cancel()}if(!d){var g=window.Element.prototype.animate;window.Element.prototype.animate=function(b,c){return window.Symbol&&Symbol.iterator&&Array.prototype.from&&b[Symbol.iterator]&&(b=Array.from(b)),Array.isArray(b)||null===b||(b=a.convertToArrayForm(b)),g.call(this,b,c)}}}(a)}();\n//# sourceMappingURL=web-animations.min.js.map","/**\n * This file includes polyfills needed by Angular and is loaded before the app.\n * You can add your own extra polyfills to this file.\n *\n * This file is divided into 2 sections:\n * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.\n * 2. Application imports. Files imported after ZoneJS that should be loaded before your main\n * file.\n *\n * The current setup is for so-called \"evergreen\" browsers; the last versions of browsers that\n * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),\n * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.\n *\n * Learn more in https://angular.io/guide/browser-support\n */\n\n/***************************************************************************************************\n* BROWSER POLYFILLS\n*/\n\n\n/** IE10 and IE11 requires the following for NgClass support on SVG elements */\nimport 'classlist.js'; // Run `npm install --save classlist.js`.\n\n/**\n * Web Animations `@angular/platform-browser/animations`\n * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari.\n * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0).\n */\nimport 'web-animations-js'; // Run `npm install --save web-animations-js`.\n\n/**\n * By default, zone.js will patch all possible macroTask and DomEvents\n * user can disable parts of macroTask/DomEvents patch by setting following flags\n * because those flags need to be set before `zone.js` being loaded, and webpack\n * will put import in the top of bundle, so user need to create a separate file\n * in this directory (for example: zone-flags.ts), and put the following flags\n * into that file, and then add the following code before importing zone.js.\n * import './zone-flags.ts';\n *\n * The flags allowed in zone-flags.ts are listed here.\n *\n * The following flags will work for all browsers.\n *\n * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame\n * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick\n * (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames\n *\n * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js\n * with the following flag, it will bypass `zone.js` patch for IE/Edge\n *\n * (window as any).__Zone_enable_cross_context_check = true;\n *\n */\n\n/***************************************************************************************************\n * Zone JS is required by default for Angular itself.\n */\nimport 'zone.js/dist/zone'; // Included with Angular CLI.\n\n\n/***************************************************************************************************\n * APPLICATION IMPORTS\n */\n","'use strict';\n/**\n * @license Angular v14.0.0-next.5\n * (c) 2010-2022 Google LLC. https://angular.io/\n * License: MIT\n */\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n((function (global) {\n const performance = global['performance'];\n function mark(name) {\n performance && performance['mark'] && performance['mark'](name);\n }\n function performanceMeasure(name, label) {\n performance && performance['measure'] && performance['measure'](name, label);\n }\n mark('Zone');\n // Initialize before it's accessed below.\n // __Zone_symbol_prefix global can be used to override the default zone\n // symbol prefix with a custom one if needed.\n const symbolPrefix = global['__Zone_symbol_prefix'] || '__zone_symbol__';\n function __symbol__(name) {\n return symbolPrefix + name;\n }\n const checkDuplicate = global[__symbol__('forceDuplicateZoneCheck')] === true;\n if (global['Zone']) {\n // if global['Zone'] already exists (maybe zone.js was already loaded or\n // some other lib also registered a global object named Zone), we may need\n // to throw an error, but sometimes user may not want this error.\n // For example,\n // we have two web pages, page1 includes zone.js, page2 doesn't.\n // and the 1st time user load page1 and page2, everything work fine,\n // but when user load page2 again, error occurs because global['Zone'] already exists.\n // so we add a flag to let user choose whether to throw this error or not.\n // By default, if existing Zone is from zone.js, we will not throw the error.\n if (checkDuplicate || typeof global['Zone'].__symbol__ !== 'function') {\n throw new Error('Zone already loaded.');\n }\n else {\n return global['Zone'];\n }\n }\n class Zone {\n constructor(parent, zoneSpec) {\n this._parent = parent;\n this._name = zoneSpec ? zoneSpec.name || 'unnamed' : '';\n this._properties = zoneSpec && zoneSpec.properties || {};\n this._zoneDelegate =\n new _ZoneDelegate(this, this._parent && this._parent._zoneDelegate, zoneSpec);\n }\n static assertZonePatched() {\n if (global['Promise'] !== patches['ZoneAwarePromise']) {\n throw new Error('Zone.js has detected that ZoneAwarePromise `(window|global).Promise` ' +\n 'has been overwritten.\\n' +\n 'Most likely cause is that a Promise polyfill has been loaded ' +\n 'after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. ' +\n 'If you must load one, do so before loading zone.js.)');\n }\n }\n static get root() {\n let zone = Zone.current;\n while (zone.parent) {\n zone = zone.parent;\n }\n return zone;\n }\n static get current() {\n return _currentZoneFrame.zone;\n }\n static get currentTask() {\n return _currentTask;\n }\n // tslint:disable-next-line:require-internal-with-underscore\n static __load_patch(name, fn, ignoreDuplicate = false) {\n if (patches.hasOwnProperty(name)) {\n // `checkDuplicate` option is defined from global variable\n // so it works for all modules.\n // `ignoreDuplicate` can work for the specified module\n if (!ignoreDuplicate && checkDuplicate) {\n throw Error('Already loaded patch: ' + name);\n }\n }\n else if (!global['__Zone_disable_' + name]) {\n const perfName = 'Zone:' + name;\n mark(perfName);\n patches[name] = fn(global, Zone, _api);\n performanceMeasure(perfName, perfName);\n }\n }\n get parent() {\n return this._parent;\n }\n get name() {\n return this._name;\n }\n get(key) {\n const zone = this.getZoneWith(key);\n if (zone)\n return zone._properties[key];\n }\n getZoneWith(key) {\n let current = this;\n while (current) {\n if (current._properties.hasOwnProperty(key)) {\n return current;\n }\n current = current._parent;\n }\n return null;\n }\n fork(zoneSpec) {\n if (!zoneSpec)\n throw new Error('ZoneSpec required!');\n return this._zoneDelegate.fork(this, zoneSpec);\n }\n wrap(callback, source) {\n if (typeof callback !== 'function') {\n throw new Error('Expecting function got: ' + callback);\n }\n const _callback = this._zoneDelegate.intercept(this, callback, source);\n const zone = this;\n return function () {\n return zone.runGuarded(_callback, this, arguments, source);\n };\n }\n run(callback, applyThis, applyArgs, source) {\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n }\n runGuarded(callback, applyThis = null, applyArgs, source) {\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n }\n runTask(task, applyThis, applyArgs) {\n if (task.zone != this) {\n throw new Error('A task can only be run in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n }\n // https://github.com/angular/zone.js/issues/778, sometimes eventTask\n // will run in notScheduled(canceled) state, we should not try to\n // run such kind of task but just return\n if (task.state === notScheduled && (task.type === eventTask || task.type === macroTask)) {\n return;\n }\n const reEntryGuard = task.state != running;\n reEntryGuard && task._transitionTo(running, scheduled);\n task.runCount++;\n const previousTask = _currentTask;\n _currentTask = task;\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n if (task.type == macroTask && task.data && !task.data.isPeriodic) {\n task.cancelFn = undefined;\n }\n try {\n return this._zoneDelegate.invokeTask(this, task, applyThis, applyArgs);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n // if the task's state is notScheduled or unknown, then it has already been cancelled\n // we should not reset the state to scheduled\n if (task.state !== notScheduled && task.state !== unknown) {\n if (task.type == eventTask || (task.data && task.data.isPeriodic)) {\n reEntryGuard && task._transitionTo(scheduled, running);\n }\n else {\n task.runCount = 0;\n this._updateTaskCount(task, -1);\n reEntryGuard &&\n task._transitionTo(notScheduled, running, notScheduled);\n }\n }\n _currentZoneFrame = _currentZoneFrame.parent;\n _currentTask = previousTask;\n }\n }\n scheduleTask(task) {\n if (task.zone && task.zone !== this) {\n // check if the task was rescheduled, the newZone\n // should not be the children of the original zone\n let newZone = this;\n while (newZone) {\n if (newZone === task.zone) {\n throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${task.zone.name}`);\n }\n newZone = newZone.parent;\n }\n }\n task._transitionTo(scheduling, notScheduled);\n const zoneDelegates = [];\n task._zoneDelegates = zoneDelegates;\n task._zone = this;\n try {\n task = this._zoneDelegate.scheduleTask(this, task);\n }\n catch (err) {\n // should set task's state to unknown when scheduleTask throw error\n // because the err may from reschedule, so the fromState maybe notScheduled\n task._transitionTo(unknown, scheduling, notScheduled);\n // TODO: @JiaLiPassion, should we check the result from handleError?\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n if (task._zoneDelegates === zoneDelegates) {\n // we have to check because internally the delegate can reschedule the task.\n this._updateTaskCount(task, 1);\n }\n if (task.state == scheduling) {\n task._transitionTo(scheduled, scheduling);\n }\n return task;\n }\n scheduleMicroTask(source, callback, data, customSchedule) {\n return this.scheduleTask(new ZoneTask(microTask, source, callback, data, customSchedule, undefined));\n }\n scheduleMacroTask(source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(macroTask, source, callback, data, customSchedule, customCancel));\n }\n scheduleEventTask(source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(eventTask, source, callback, data, customSchedule, customCancel));\n }\n cancelTask(task) {\n if (task.zone != this)\n throw new Error('A task can only be cancelled in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n task._transitionTo(canceling, scheduled, running);\n try {\n this._zoneDelegate.cancelTask(this, task);\n }\n catch (err) {\n // if error occurs when cancelTask, transit the state to unknown\n task._transitionTo(unknown, canceling);\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n this._updateTaskCount(task, -1);\n task._transitionTo(notScheduled, canceling);\n task.runCount = 0;\n return task;\n }\n _updateTaskCount(task, count) {\n const zoneDelegates = task._zoneDelegates;\n if (count == -1) {\n task._zoneDelegates = null;\n }\n for (let i = 0; i < zoneDelegates.length; i++) {\n zoneDelegates[i]._updateTaskCount(task.type, count);\n }\n }\n }\n // tslint:disable-next-line:require-internal-with-underscore\n Zone.__symbol__ = __symbol__;\n const DELEGATE_ZS = {\n name: '',\n onHasTask: (delegate, _, target, hasTaskState) => delegate.hasTask(target, hasTaskState),\n onScheduleTask: (delegate, _, target, task) => delegate.scheduleTask(target, task),\n onInvokeTask: (delegate, _, target, task, applyThis, applyArgs) => delegate.invokeTask(target, task, applyThis, applyArgs),\n onCancelTask: (delegate, _, target, task) => delegate.cancelTask(target, task)\n };\n class _ZoneDelegate {\n constructor(zone, parentDelegate, zoneSpec) {\n this._taskCounts = { 'microTask': 0, 'macroTask': 0, 'eventTask': 0 };\n this.zone = zone;\n this._parentDelegate = parentDelegate;\n this._forkZS = zoneSpec && (zoneSpec && zoneSpec.onFork ? zoneSpec : parentDelegate._forkZS);\n this._forkDlgt = zoneSpec && (zoneSpec.onFork ? parentDelegate : parentDelegate._forkDlgt);\n this._forkCurrZone =\n zoneSpec && (zoneSpec.onFork ? this.zone : parentDelegate._forkCurrZone);\n this._interceptZS =\n zoneSpec && (zoneSpec.onIntercept ? zoneSpec : parentDelegate._interceptZS);\n this._interceptDlgt =\n zoneSpec && (zoneSpec.onIntercept ? parentDelegate : parentDelegate._interceptDlgt);\n this._interceptCurrZone =\n zoneSpec && (zoneSpec.onIntercept ? this.zone : parentDelegate._interceptCurrZone);\n this._invokeZS = zoneSpec && (zoneSpec.onInvoke ? zoneSpec : parentDelegate._invokeZS);\n this._invokeDlgt =\n zoneSpec && (zoneSpec.onInvoke ? parentDelegate : parentDelegate._invokeDlgt);\n this._invokeCurrZone =\n zoneSpec && (zoneSpec.onInvoke ? this.zone : parentDelegate._invokeCurrZone);\n this._handleErrorZS =\n zoneSpec && (zoneSpec.onHandleError ? zoneSpec : parentDelegate._handleErrorZS);\n this._handleErrorDlgt =\n zoneSpec && (zoneSpec.onHandleError ? parentDelegate : parentDelegate._handleErrorDlgt);\n this._handleErrorCurrZone =\n zoneSpec && (zoneSpec.onHandleError ? this.zone : parentDelegate._handleErrorCurrZone);\n this._scheduleTaskZS =\n zoneSpec && (zoneSpec.onScheduleTask ? zoneSpec : parentDelegate._scheduleTaskZS);\n this._scheduleTaskDlgt = zoneSpec &&\n (zoneSpec.onScheduleTask ? parentDelegate : parentDelegate._scheduleTaskDlgt);\n this._scheduleTaskCurrZone =\n zoneSpec && (zoneSpec.onScheduleTask ? this.zone : parentDelegate._scheduleTaskCurrZone);\n this._invokeTaskZS =\n zoneSpec && (zoneSpec.onInvokeTask ? zoneSpec : parentDelegate._invokeTaskZS);\n this._invokeTaskDlgt =\n zoneSpec && (zoneSpec.onInvokeTask ? parentDelegate : parentDelegate._invokeTaskDlgt);\n this._invokeTaskCurrZone =\n zoneSpec && (zoneSpec.onInvokeTask ? this.zone : parentDelegate._invokeTaskCurrZone);\n this._cancelTaskZS =\n zoneSpec && (zoneSpec.onCancelTask ? zoneSpec : parentDelegate._cancelTaskZS);\n this._cancelTaskDlgt =\n zoneSpec && (zoneSpec.onCancelTask ? parentDelegate : parentDelegate._cancelTaskDlgt);\n this._cancelTaskCurrZone =\n zoneSpec && (zoneSpec.onCancelTask ? this.zone : parentDelegate._cancelTaskCurrZone);\n this._hasTaskZS = null;\n this._hasTaskDlgt = null;\n this._hasTaskDlgtOwner = null;\n this._hasTaskCurrZone = null;\n const zoneSpecHasTask = zoneSpec && zoneSpec.onHasTask;\n const parentHasTask = parentDelegate && parentDelegate._hasTaskZS;\n if (zoneSpecHasTask || parentHasTask) {\n // If we need to report hasTask, than this ZS needs to do ref counting on tasks. In such\n // a case all task related interceptors must go through this ZD. We can't short circuit it.\n this._hasTaskZS = zoneSpecHasTask ? zoneSpec : DELEGATE_ZS;\n this._hasTaskDlgt = parentDelegate;\n this._hasTaskDlgtOwner = this;\n this._hasTaskCurrZone = zone;\n if (!zoneSpec.onScheduleTask) {\n this._scheduleTaskZS = DELEGATE_ZS;\n this._scheduleTaskDlgt = parentDelegate;\n this._scheduleTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onInvokeTask) {\n this._invokeTaskZS = DELEGATE_ZS;\n this._invokeTaskDlgt = parentDelegate;\n this._invokeTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onCancelTask) {\n this._cancelTaskZS = DELEGATE_ZS;\n this._cancelTaskDlgt = parentDelegate;\n this._cancelTaskCurrZone = this.zone;\n }\n }\n }\n fork(targetZone, zoneSpec) {\n return this._forkZS ? this._forkZS.onFork(this._forkDlgt, this.zone, targetZone, zoneSpec) :\n new Zone(targetZone, zoneSpec);\n }\n intercept(targetZone, callback, source) {\n return this._interceptZS ?\n this._interceptZS.onIntercept(this._interceptDlgt, this._interceptCurrZone, targetZone, callback, source) :\n callback;\n }\n invoke(targetZone, callback, applyThis, applyArgs, source) {\n return this._invokeZS ? this._invokeZS.onInvoke(this._invokeDlgt, this._invokeCurrZone, targetZone, callback, applyThis, applyArgs, source) :\n callback.apply(applyThis, applyArgs);\n }\n handleError(targetZone, error) {\n return this._handleErrorZS ?\n this._handleErrorZS.onHandleError(this._handleErrorDlgt, this._handleErrorCurrZone, targetZone, error) :\n true;\n }\n scheduleTask(targetZone, task) {\n let returnTask = task;\n if (this._scheduleTaskZS) {\n if (this._hasTaskZS) {\n returnTask._zoneDelegates.push(this._hasTaskDlgtOwner);\n }\n // clang-format off\n returnTask = this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt, this._scheduleTaskCurrZone, targetZone, task);\n // clang-format on\n if (!returnTask)\n returnTask = task;\n }\n else {\n if (task.scheduleFn) {\n task.scheduleFn(task);\n }\n else if (task.type == microTask) {\n scheduleMicroTask(task);\n }\n else {\n throw new Error('Task is missing scheduleFn.');\n }\n }\n return returnTask;\n }\n invokeTask(targetZone, task, applyThis, applyArgs) {\n return this._invokeTaskZS ? this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt, this._invokeTaskCurrZone, targetZone, task, applyThis, applyArgs) :\n task.callback.apply(applyThis, applyArgs);\n }\n cancelTask(targetZone, task) {\n let value;\n if (this._cancelTaskZS) {\n value = this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt, this._cancelTaskCurrZone, targetZone, task);\n }\n else {\n if (!task.cancelFn) {\n throw Error('Task is not cancelable');\n }\n value = task.cancelFn(task);\n }\n return value;\n }\n hasTask(targetZone, isEmpty) {\n // hasTask should not throw error so other ZoneDelegate\n // can still trigger hasTask callback\n try {\n this._hasTaskZS &&\n this._hasTaskZS.onHasTask(this._hasTaskDlgt, this._hasTaskCurrZone, targetZone, isEmpty);\n }\n catch (err) {\n this.handleError(targetZone, err);\n }\n }\n // tslint:disable-next-line:require-internal-with-underscore\n _updateTaskCount(type, count) {\n const counts = this._taskCounts;\n const prev = counts[type];\n const next = counts[type] = prev + count;\n if (next < 0) {\n throw new Error('More tasks executed then were scheduled.');\n }\n if (prev == 0 || next == 0) {\n const isEmpty = {\n microTask: counts['microTask'] > 0,\n macroTask: counts['macroTask'] > 0,\n eventTask: counts['eventTask'] > 0,\n change: type\n };\n this.hasTask(this.zone, isEmpty);\n }\n }\n }\n class ZoneTask {\n constructor(type, source, callback, options, scheduleFn, cancelFn) {\n // tslint:disable-next-line:require-internal-with-underscore\n this._zone = null;\n this.runCount = 0;\n // tslint:disable-next-line:require-internal-with-underscore\n this._zoneDelegates = null;\n // tslint:disable-next-line:require-internal-with-underscore\n this._state = 'notScheduled';\n this.type = type;\n this.source = source;\n this.data = options;\n this.scheduleFn = scheduleFn;\n this.cancelFn = cancelFn;\n if (!callback) {\n throw new Error('callback is not defined');\n }\n this.callback = callback;\n const self = this;\n // TODO: @JiaLiPassion options should have interface\n if (type === eventTask && options && options.useG) {\n this.invoke = ZoneTask.invokeTask;\n }\n else {\n this.invoke = function () {\n return ZoneTask.invokeTask.call(global, self, this, arguments);\n };\n }\n }\n static invokeTask(task, target, args) {\n if (!task) {\n task = this;\n }\n _numberOfNestedTaskFrames++;\n try {\n task.runCount++;\n return task.zone.runTask(task, target, args);\n }\n finally {\n if (_numberOfNestedTaskFrames == 1) {\n drainMicroTaskQueue();\n }\n _numberOfNestedTaskFrames--;\n }\n }\n get zone() {\n return this._zone;\n }\n get state() {\n return this._state;\n }\n cancelScheduleRequest() {\n this._transitionTo(notScheduled, scheduling);\n }\n // tslint:disable-next-line:require-internal-with-underscore\n _transitionTo(toState, fromState1, fromState2) {\n if (this._state === fromState1 || this._state === fromState2) {\n this._state = toState;\n if (toState == notScheduled) {\n this._zoneDelegates = null;\n }\n }\n else {\n throw new Error(`${this.type} '${this.source}': can not transition to '${toState}', expecting state '${fromState1}'${fromState2 ? ' or \\'' + fromState2 + '\\'' : ''}, was '${this._state}'.`);\n }\n }\n toString() {\n if (this.data && typeof this.data.handleId !== 'undefined') {\n return this.data.handleId.toString();\n }\n else {\n return Object.prototype.toString.call(this);\n }\n }\n // add toJSON method to prevent cyclic error when\n // call JSON.stringify(zoneTask)\n toJSON() {\n return {\n type: this.type,\n state: this.state,\n source: this.source,\n zone: this.zone.name,\n runCount: this.runCount\n };\n }\n }\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// MICROTASK QUEUE\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n const symbolSetTimeout = __symbol__('setTimeout');\n const symbolPromise = __symbol__('Promise');\n const symbolThen = __symbol__('then');\n let _microTaskQueue = [];\n let _isDrainingMicrotaskQueue = false;\n let nativeMicroTaskQueuePromise;\n function nativeScheduleMicroTask(func) {\n if (!nativeMicroTaskQueuePromise) {\n if (global[symbolPromise]) {\n nativeMicroTaskQueuePromise = global[symbolPromise].resolve(0);\n }\n }\n if (nativeMicroTaskQueuePromise) {\n let nativeThen = nativeMicroTaskQueuePromise[symbolThen];\n if (!nativeThen) {\n // native Promise is not patchable, we need to use `then` directly\n // issue 1078\n nativeThen = nativeMicroTaskQueuePromise['then'];\n }\n nativeThen.call(nativeMicroTaskQueuePromise, func);\n }\n else {\n global[symbolSetTimeout](func, 0);\n }\n }\n function scheduleMicroTask(task) {\n // if we are not running in any task, and there has not been anything scheduled\n // we must bootstrap the initial task creation by manually scheduling the drain\n if (_numberOfNestedTaskFrames === 0 && _microTaskQueue.length === 0) {\n // We are not running in Task, so we need to kickstart the microtask queue.\n nativeScheduleMicroTask(drainMicroTaskQueue);\n }\n task && _microTaskQueue.push(task);\n }\n function drainMicroTaskQueue() {\n if (!_isDrainingMicrotaskQueue) {\n _isDrainingMicrotaskQueue = true;\n while (_microTaskQueue.length) {\n const queue = _microTaskQueue;\n _microTaskQueue = [];\n for (let i = 0; i < queue.length; i++) {\n const task = queue[i];\n try {\n task.zone.runTask(task, null, null);\n }\n catch (error) {\n _api.onUnhandledError(error);\n }\n }\n }\n _api.microtaskDrainDone();\n _isDrainingMicrotaskQueue = false;\n }\n }\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// BOOTSTRAP\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n const NO_ZONE = { name: 'NO ZONE' };\n const notScheduled = 'notScheduled', scheduling = 'scheduling', scheduled = 'scheduled', running = 'running', canceling = 'canceling', unknown = 'unknown';\n const microTask = 'microTask', macroTask = 'macroTask', eventTask = 'eventTask';\n const patches = {};\n const _api = {\n symbol: __symbol__,\n currentZoneFrame: () => _currentZoneFrame,\n onUnhandledError: noop,\n microtaskDrainDone: noop,\n scheduleMicroTask: scheduleMicroTask,\n showUncaughtError: () => !Zone[__symbol__('ignoreConsoleErrorUncaughtError')],\n patchEventTarget: () => [],\n patchOnProperties: noop,\n patchMethod: () => noop,\n bindArguments: () => [],\n patchThen: () => noop,\n patchMacroTask: () => noop,\n patchEventPrototype: () => noop,\n isIEOrEdge: () => false,\n getGlobalObjects: () => undefined,\n ObjectDefineProperty: () => noop,\n ObjectGetOwnPropertyDescriptor: () => undefined,\n ObjectCreate: () => undefined,\n ArraySlice: () => [],\n patchClass: () => noop,\n wrapWithCurrentZone: () => noop,\n filterProperties: () => [],\n attachOriginToPatched: () => noop,\n _redefineProperty: () => noop,\n patchCallbacks: () => noop,\n nativeScheduleMicroTask: nativeScheduleMicroTask\n };\n let _currentZoneFrame = { parent: null, zone: new Zone(null, null) };\n let _currentTask = null;\n let _numberOfNestedTaskFrames = 0;\n function noop() { }\n performanceMeasure('Zone', 'Zone');\n return global['Zone'] = Zone;\n}))(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global);\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Suppress closure compiler errors about unknown 'Zone' variable\n * @fileoverview\n * @suppress {undefinedVars,globalThis,missingRequire}\n */\n/// \n// issue #989, to reduce bundle size, use short name\n/** Object.getOwnPropertyDescriptor */\nconst ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n/** Object.defineProperty */\nconst ObjectDefineProperty = Object.defineProperty;\n/** Object.getPrototypeOf */\nconst ObjectGetPrototypeOf = Object.getPrototypeOf;\n/** Object.create */\nconst ObjectCreate = Object.create;\n/** Array.prototype.slice */\nconst ArraySlice = Array.prototype.slice;\n/** addEventListener string const */\nconst ADD_EVENT_LISTENER_STR = 'addEventListener';\n/** removeEventListener string const */\nconst REMOVE_EVENT_LISTENER_STR = 'removeEventListener';\n/** zoneSymbol addEventListener */\nconst ZONE_SYMBOL_ADD_EVENT_LISTENER = Zone.__symbol__(ADD_EVENT_LISTENER_STR);\n/** zoneSymbol removeEventListener */\nconst ZONE_SYMBOL_REMOVE_EVENT_LISTENER = Zone.__symbol__(REMOVE_EVENT_LISTENER_STR);\n/** true string const */\nconst TRUE_STR = 'true';\n/** false string const */\nconst FALSE_STR = 'false';\n/** Zone symbol prefix string const. */\nconst ZONE_SYMBOL_PREFIX = Zone.__symbol__('');\nfunction wrapWithCurrentZone(callback, source) {\n return Zone.current.wrap(callback, source);\n}\nfunction scheduleMacroTaskWithCurrentZone(source, callback, data, customSchedule, customCancel) {\n return Zone.current.scheduleMacroTask(source, callback, data, customSchedule, customCancel);\n}\nconst zoneSymbol = Zone.__symbol__;\nconst isWindowExists = typeof window !== 'undefined';\nconst internalWindow = isWindowExists ? window : undefined;\nconst _global = isWindowExists && internalWindow || typeof self === 'object' && self || global;\nconst REMOVE_ATTRIBUTE = 'removeAttribute';\nfunction bindArguments(args, source) {\n for (let i = args.length - 1; i >= 0; i--) {\n if (typeof args[i] === 'function') {\n args[i] = wrapWithCurrentZone(args[i], source + '_' + i);\n }\n }\n return args;\n}\nfunction patchPrototype(prototype, fnNames) {\n const source = prototype.constructor['name'];\n for (let i = 0; i < fnNames.length; i++) {\n const name = fnNames[i];\n const delegate = prototype[name];\n if (delegate) {\n const prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, name);\n if (!isPropertyWritable(prototypeDesc)) {\n continue;\n }\n prototype[name] = ((delegate) => {\n const patched = function () {\n return delegate.apply(this, bindArguments(arguments, source + '.' + name));\n };\n attachOriginToPatched(patched, delegate);\n return patched;\n })(delegate);\n }\n }\n}\nfunction isPropertyWritable(propertyDesc) {\n if (!propertyDesc) {\n return true;\n }\n if (propertyDesc.writable === false) {\n return false;\n }\n return !(typeof propertyDesc.get === 'function' && typeof propertyDesc.set === 'undefined');\n}\nconst isWebWorker = (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope);\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nconst isNode = (!('nw' in _global) && typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]');\nconst isBrowser = !isNode && !isWebWorker && !!(isWindowExists && internalWindow['HTMLElement']);\n// we are in electron of nw, so we are both browser and nodejs\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nconst isMix = typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]' && !isWebWorker &&\n !!(isWindowExists && internalWindow['HTMLElement']);\nconst zoneSymbolEventNames$1 = {};\nconst wrapFn = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n let eventNameSymbol = zoneSymbolEventNames$1[event.type];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames$1[event.type] = zoneSymbol('ON_PROPERTY' + event.type);\n }\n const target = this || event.target || _global;\n const listener = target[eventNameSymbol];\n let result;\n if (isBrowser && target === internalWindow && event.type === 'error') {\n // window.onerror have different signiture\n // https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror#window.onerror\n // and onerror callback will prevent default when callback return true\n const errorEvent = event;\n result = listener &&\n listener.call(this, errorEvent.message, errorEvent.filename, errorEvent.lineno, errorEvent.colno, errorEvent.error);\n if (result === true) {\n event.preventDefault();\n }\n }\n else {\n result = listener && listener.apply(this, arguments);\n if (result != undefined && !result) {\n event.preventDefault();\n }\n }\n return result;\n};\nfunction patchProperty(obj, prop, prototype) {\n let desc = ObjectGetOwnPropertyDescriptor(obj, prop);\n if (!desc && prototype) {\n // when patch window object, use prototype to check prop exist or not\n const prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, prop);\n if (prototypeDesc) {\n desc = { enumerable: true, configurable: true };\n }\n }\n // if the descriptor not exists or is not configurable\n // just return\n if (!desc || !desc.configurable) {\n return;\n }\n const onPropPatchedSymbol = zoneSymbol('on' + prop + 'patched');\n if (obj.hasOwnProperty(onPropPatchedSymbol) && obj[onPropPatchedSymbol]) {\n return;\n }\n // A property descriptor cannot have getter/setter and be writable\n // deleting the writable and value properties avoids this error:\n //\n // TypeError: property descriptors must not specify a value or be writable when a\n // getter or setter has been specified\n delete desc.writable;\n delete desc.value;\n const originalDescGet = desc.get;\n const originalDescSet = desc.set;\n // substr(2) cuz 'onclick' -> 'click', etc\n const eventName = prop.substr(2);\n let eventNameSymbol = zoneSymbolEventNames$1[eventName];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames$1[eventName] = zoneSymbol('ON_PROPERTY' + eventName);\n }\n desc.set = function (newValue) {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n let target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return;\n }\n const previousValue = target[eventNameSymbol];\n if (typeof previousValue === 'function') {\n target.removeEventListener(eventName, wrapFn);\n }\n // issue #978, when onload handler was added before loading zone.js\n // we should remove it with originalDescSet\n originalDescSet && originalDescSet.call(target, null);\n target[eventNameSymbol] = newValue;\n if (typeof newValue === 'function') {\n target.addEventListener(eventName, wrapFn, false);\n }\n };\n // The getter would return undefined for unassigned properties but the default value of an\n // unassigned property is null\n desc.get = function () {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n let target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return null;\n }\n const listener = target[eventNameSymbol];\n if (listener) {\n return listener;\n }\n else if (originalDescGet) {\n // result will be null when use inline event attribute,\n // such as \n // because the onclick function is internal raw uncompiled handler\n // the onclick will be evaluated when first time event was triggered or\n // the property is accessed, https://github.com/angular/zone.js/issues/525\n // so we should use original native get to retrieve the handler\n let value = originalDescGet.call(this);\n if (value) {\n desc.set.call(this, value);\n if (typeof target[REMOVE_ATTRIBUTE] === 'function') {\n target.removeAttribute(prop);\n }\n return value;\n }\n }\n return null;\n };\n ObjectDefineProperty(obj, prop, desc);\n obj[onPropPatchedSymbol] = true;\n}\nfunction patchOnProperties(obj, properties, prototype) {\n if (properties) {\n for (let i = 0; i < properties.length; i++) {\n patchProperty(obj, 'on' + properties[i], prototype);\n }\n }\n else {\n const onProperties = [];\n for (const prop in obj) {\n if (prop.substr(0, 2) == 'on') {\n onProperties.push(prop);\n }\n }\n for (let j = 0; j < onProperties.length; j++) {\n patchProperty(obj, onProperties[j], prototype);\n }\n }\n}\nconst originalInstanceKey = zoneSymbol('originalInstance');\n// wrap some native API on `window`\nfunction patchClass(className) {\n const OriginalClass = _global[className];\n if (!OriginalClass)\n return;\n // keep original class in global\n _global[zoneSymbol(className)] = OriginalClass;\n _global[className] = function () {\n const a = bindArguments(arguments, className);\n switch (a.length) {\n case 0:\n this[originalInstanceKey] = new OriginalClass();\n break;\n case 1:\n this[originalInstanceKey] = new OriginalClass(a[0]);\n break;\n case 2:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1]);\n break;\n case 3:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2]);\n break;\n case 4:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2], a[3]);\n break;\n default:\n throw new Error('Arg list too long.');\n }\n };\n // attach original delegate to patched function\n attachOriginToPatched(_global[className], OriginalClass);\n const instance = new OriginalClass(function () { });\n let prop;\n for (prop in instance) {\n // https://bugs.webkit.org/show_bug.cgi?id=44721\n if (className === 'XMLHttpRequest' && prop === 'responseBlob')\n continue;\n (function (prop) {\n if (typeof instance[prop] === 'function') {\n _global[className].prototype[prop] = function () {\n return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments);\n };\n }\n else {\n ObjectDefineProperty(_global[className].prototype, prop, {\n set: function (fn) {\n if (typeof fn === 'function') {\n this[originalInstanceKey][prop] = wrapWithCurrentZone(fn, className + '.' + prop);\n // keep callback in wrapped function so we can\n // use it in Function.prototype.toString to return\n // the native one.\n attachOriginToPatched(this[originalInstanceKey][prop], fn);\n }\n else {\n this[originalInstanceKey][prop] = fn;\n }\n },\n get: function () {\n return this[originalInstanceKey][prop];\n }\n });\n }\n }(prop));\n }\n for (prop in OriginalClass) {\n if (prop !== 'prototype' && OriginalClass.hasOwnProperty(prop)) {\n _global[className][prop] = OriginalClass[prop];\n }\n }\n}\nfunction patchMethod(target, name, patchFn) {\n let proto = target;\n while (proto && !proto.hasOwnProperty(name)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && target[name]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = target;\n }\n const delegateName = zoneSymbol(name);\n let delegate = null;\n if (proto && (!(delegate = proto[delegateName]) || !proto.hasOwnProperty(delegateName))) {\n delegate = proto[delegateName] = proto[name];\n // check whether proto[name] is writable\n // some property is readonly in safari, such as HtmlCanvasElement.prototype.toBlob\n const desc = proto && ObjectGetOwnPropertyDescriptor(proto, name);\n if (isPropertyWritable(desc)) {\n const patchDelegate = patchFn(delegate, delegateName, name);\n proto[name] = function () {\n return patchDelegate(this, arguments);\n };\n attachOriginToPatched(proto[name], delegate);\n }\n }\n return delegate;\n}\n// TODO: @JiaLiPassion, support cancel task later if necessary\nfunction patchMacroTask(obj, funcName, metaCreator) {\n let setNative = null;\n function scheduleTask(task) {\n const data = task.data;\n data.args[data.cbIdx] = function () {\n task.invoke.apply(this, arguments);\n };\n setNative.apply(data.target, data.args);\n return task;\n }\n setNative = patchMethod(obj, funcName, (delegate) => function (self, args) {\n const meta = metaCreator(self, args);\n if (meta.cbIdx >= 0 && typeof args[meta.cbIdx] === 'function') {\n return scheduleMacroTaskWithCurrentZone(meta.name, args[meta.cbIdx], meta, scheduleTask);\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(self, args);\n }\n });\n}\nfunction attachOriginToPatched(patched, original) {\n patched[zoneSymbol('OriginalDelegate')] = original;\n}\nlet isDetectedIEOrEdge = false;\nlet ieOrEdge = false;\nfunction isIE() {\n try {\n const ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1) {\n return true;\n }\n }\n catch (error) {\n }\n return false;\n}\nfunction isIEOrEdge() {\n if (isDetectedIEOrEdge) {\n return ieOrEdge;\n }\n isDetectedIEOrEdge = true;\n try {\n const ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1 || ua.indexOf('Edge/') !== -1) {\n ieOrEdge = true;\n }\n }\n catch (error) {\n }\n return ieOrEdge;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nZone.__load_patch('ZoneAwarePromise', (global, Zone, api) => {\n const ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n const ObjectDefineProperty = Object.defineProperty;\n function readableObjectToString(obj) {\n if (obj && obj.toString === Object.prototype.toString) {\n const className = obj.constructor && obj.constructor.name;\n return (className ? className : '') + ': ' + JSON.stringify(obj);\n }\n return obj ? obj.toString() : Object.prototype.toString.call(obj);\n }\n const __symbol__ = api.symbol;\n const _uncaughtPromiseErrors = [];\n const isDisableWrappingUncaughtPromiseRejection = global[__symbol__('DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION')] === true;\n const symbolPromise = __symbol__('Promise');\n const symbolThen = __symbol__('then');\n const creationTrace = '__creationTrace__';\n api.onUnhandledError = (e) => {\n if (api.showUncaughtError()) {\n const rejection = e && e.rejection;\n if (rejection) {\n console.error('Unhandled Promise rejection:', rejection instanceof Error ? rejection.message : rejection, '; Zone:', e.zone.name, '; Task:', e.task && e.task.source, '; Value:', rejection, rejection instanceof Error ? rejection.stack : undefined);\n }\n else {\n console.error(e);\n }\n }\n };\n api.microtaskDrainDone = () => {\n while (_uncaughtPromiseErrors.length) {\n const uncaughtPromiseError = _uncaughtPromiseErrors.shift();\n try {\n uncaughtPromiseError.zone.runGuarded(() => {\n if (uncaughtPromiseError.throwOriginal) {\n throw uncaughtPromiseError.rejection;\n }\n throw uncaughtPromiseError;\n });\n }\n catch (error) {\n handleUnhandledRejection(error);\n }\n }\n };\n const UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL = __symbol__('unhandledPromiseRejectionHandler');\n function handleUnhandledRejection(e) {\n api.onUnhandledError(e);\n try {\n const handler = Zone[UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL];\n if (typeof handler === 'function') {\n handler.call(this, e);\n }\n }\n catch (err) {\n }\n }\n function isThenable(value) {\n return value && value.then;\n }\n function forwardResolution(value) {\n return value;\n }\n function forwardRejection(rejection) {\n return ZoneAwarePromise.reject(rejection);\n }\n const symbolState = __symbol__('state');\n const symbolValue = __symbol__('value');\n const symbolFinally = __symbol__('finally');\n const symbolParentPromiseValue = __symbol__('parentPromiseValue');\n const symbolParentPromiseState = __symbol__('parentPromiseState');\n const source = 'Promise.then';\n const UNRESOLVED = null;\n const RESOLVED = true;\n const REJECTED = false;\n const REJECTED_NO_CATCH = 0;\n function makeResolver(promise, state) {\n return (v) => {\n try {\n resolvePromise(promise, state, v);\n }\n catch (err) {\n resolvePromise(promise, false, err);\n }\n // Do not return value or you will break the Promise spec.\n };\n }\n const once = function () {\n let wasCalled = false;\n return function wrapper(wrappedFunction) {\n return function () {\n if (wasCalled) {\n return;\n }\n wasCalled = true;\n wrappedFunction.apply(null, arguments);\n };\n };\n };\n const TYPE_ERROR = 'Promise resolved with itself';\n const CURRENT_TASK_TRACE_SYMBOL = __symbol__('currentTaskTrace');\n // Promise Resolution\n function resolvePromise(promise, state, value) {\n const onceWrapper = once();\n if (promise === value) {\n throw new TypeError(TYPE_ERROR);\n }\n if (promise[symbolState] === UNRESOLVED) {\n // should only get value.then once based on promise spec.\n let then = null;\n try {\n if (typeof value === 'object' || typeof value === 'function') {\n then = value && value.then;\n }\n }\n catch (err) {\n onceWrapper(() => {\n resolvePromise(promise, false, err);\n })();\n return promise;\n }\n // if (value instanceof ZoneAwarePromise) {\n if (state !== REJECTED && value instanceof ZoneAwarePromise &&\n value.hasOwnProperty(symbolState) && value.hasOwnProperty(symbolValue) &&\n value[symbolState] !== UNRESOLVED) {\n clearRejectedNoCatch(value);\n resolvePromise(promise, value[symbolState], value[symbolValue]);\n }\n else if (state !== REJECTED && typeof then === 'function') {\n try {\n then.call(value, onceWrapper(makeResolver(promise, state)), onceWrapper(makeResolver(promise, false)));\n }\n catch (err) {\n onceWrapper(() => {\n resolvePromise(promise, false, err);\n })();\n }\n }\n else {\n promise[symbolState] = state;\n const queue = promise[symbolValue];\n promise[symbolValue] = value;\n if (promise[symbolFinally] === symbolFinally) {\n // the promise is generated by Promise.prototype.finally\n if (state === RESOLVED) {\n // the state is resolved, should ignore the value\n // and use parent promise value\n promise[symbolState] = promise[symbolParentPromiseState];\n promise[symbolValue] = promise[symbolParentPromiseValue];\n }\n }\n // record task information in value when error occurs, so we can\n // do some additional work such as render longStackTrace\n if (state === REJECTED && value instanceof Error) {\n // check if longStackTraceZone is here\n const trace = Zone.currentTask && Zone.currentTask.data &&\n Zone.currentTask.data[creationTrace];\n if (trace) {\n // only keep the long stack trace into error when in longStackTraceZone\n ObjectDefineProperty(value, CURRENT_TASK_TRACE_SYMBOL, { configurable: true, enumerable: false, writable: true, value: trace });\n }\n }\n for (let i = 0; i < queue.length;) {\n scheduleResolveOrReject(promise, queue[i++], queue[i++], queue[i++], queue[i++]);\n }\n if (queue.length == 0 && state == REJECTED) {\n promise[symbolState] = REJECTED_NO_CATCH;\n let uncaughtPromiseError = value;\n try {\n // Here we throws a new Error to print more readable error log\n // and if the value is not an error, zone.js builds an `Error`\n // Object here to attach the stack information.\n throw new Error('Uncaught (in promise): ' + readableObjectToString(value) +\n (value && value.stack ? '\\n' + value.stack : ''));\n }\n catch (err) {\n uncaughtPromiseError = err;\n }\n if (isDisableWrappingUncaughtPromiseRejection) {\n // If disable wrapping uncaught promise reject\n // use the value instead of wrapping it.\n uncaughtPromiseError.throwOriginal = true;\n }\n uncaughtPromiseError.rejection = value;\n uncaughtPromiseError.promise = promise;\n uncaughtPromiseError.zone = Zone.current;\n uncaughtPromiseError.task = Zone.currentTask;\n _uncaughtPromiseErrors.push(uncaughtPromiseError);\n api.scheduleMicroTask(); // to make sure that it is running\n }\n }\n }\n // Resolving an already resolved promise is a noop.\n return promise;\n }\n const REJECTION_HANDLED_HANDLER = __symbol__('rejectionHandledHandler');\n function clearRejectedNoCatch(promise) {\n if (promise[symbolState] === REJECTED_NO_CATCH) {\n // if the promise is rejected no catch status\n // and queue.length > 0, means there is a error handler\n // here to handle the rejected promise, we should trigger\n // windows.rejectionhandled eventHandler or nodejs rejectionHandled\n // eventHandler\n try {\n const handler = Zone[REJECTION_HANDLED_HANDLER];\n if (handler && typeof handler === 'function') {\n handler.call(this, { rejection: promise[symbolValue], promise: promise });\n }\n }\n catch (err) {\n }\n promise[symbolState] = REJECTED;\n for (let i = 0; i < _uncaughtPromiseErrors.length; i++) {\n if (promise === _uncaughtPromiseErrors[i].promise) {\n _uncaughtPromiseErrors.splice(i, 1);\n }\n }\n }\n }\n function scheduleResolveOrReject(promise, zone, chainPromise, onFulfilled, onRejected) {\n clearRejectedNoCatch(promise);\n const promiseState = promise[symbolState];\n const delegate = promiseState ?\n (typeof onFulfilled === 'function') ? onFulfilled : forwardResolution :\n (typeof onRejected === 'function') ? onRejected :\n forwardRejection;\n zone.scheduleMicroTask(source, () => {\n try {\n const parentPromiseValue = promise[symbolValue];\n const isFinallyPromise = !!chainPromise && symbolFinally === chainPromise[symbolFinally];\n if (isFinallyPromise) {\n // if the promise is generated from finally call, keep parent promise's state and value\n chainPromise[symbolParentPromiseValue] = parentPromiseValue;\n chainPromise[symbolParentPromiseState] = promiseState;\n }\n // should not pass value to finally callback\n const value = zone.run(delegate, undefined, isFinallyPromise && delegate !== forwardRejection && delegate !== forwardResolution ?\n [] :\n [parentPromiseValue]);\n resolvePromise(chainPromise, true, value);\n }\n catch (error) {\n // if error occurs, should always return this error\n resolvePromise(chainPromise, false, error);\n }\n }, chainPromise);\n }\n const ZONE_AWARE_PROMISE_TO_STRING = 'function ZoneAwarePromise() { [native code] }';\n const noop = function () { };\n const AggregateError = global.AggregateError;\n class ZoneAwarePromise {\n static toString() {\n return ZONE_AWARE_PROMISE_TO_STRING;\n }\n static resolve(value) {\n return resolvePromise(new this(null), RESOLVED, value);\n }\n static reject(error) {\n return resolvePromise(new this(null), REJECTED, error);\n }\n static any(values) {\n if (!values || typeof values[Symbol.iterator] !== 'function') {\n return Promise.reject(new AggregateError([], 'All promises were rejected'));\n }\n const promises = [];\n let count = 0;\n try {\n for (let v of values) {\n count++;\n promises.push(ZoneAwarePromise.resolve(v));\n }\n }\n catch (err) {\n return Promise.reject(new AggregateError([], 'All promises were rejected'));\n }\n if (count === 0) {\n return Promise.reject(new AggregateError([], 'All promises were rejected'));\n }\n let finished = false;\n const errors = [];\n return new ZoneAwarePromise((resolve, reject) => {\n for (let i = 0; i < promises.length; i++) {\n promises[i].then(v => {\n if (finished) {\n return;\n }\n finished = true;\n resolve(v);\n }, err => {\n errors.push(err);\n count--;\n if (count === 0) {\n finished = true;\n reject(new AggregateError(errors, 'All promises were rejected'));\n }\n });\n }\n });\n }\n ;\n static race(values) {\n let resolve;\n let reject;\n let promise = new this((res, rej) => {\n resolve = res;\n reject = rej;\n });\n function onResolve(value) {\n resolve(value);\n }\n function onReject(error) {\n reject(error);\n }\n for (let value of values) {\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then(onResolve, onReject);\n }\n return promise;\n }\n static all(values) {\n return ZoneAwarePromise.allWithCallback(values);\n }\n static allSettled(values) {\n const P = this && this.prototype instanceof ZoneAwarePromise ? this : ZoneAwarePromise;\n return P.allWithCallback(values, {\n thenCallback: (value) => ({ status: 'fulfilled', value }),\n errorCallback: (err) => ({ status: 'rejected', reason: err })\n });\n }\n static allWithCallback(values, callback) {\n let resolve;\n let reject;\n let promise = new this((res, rej) => {\n resolve = res;\n reject = rej;\n });\n // Start at 2 to prevent prematurely resolving if .then is called immediately.\n let unresolvedCount = 2;\n let valueIndex = 0;\n const resolvedValues = [];\n for (let value of values) {\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n const curValueIndex = valueIndex;\n try {\n value.then((value) => {\n resolvedValues[curValueIndex] = callback ? callback.thenCallback(value) : value;\n unresolvedCount--;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n }, (err) => {\n if (!callback) {\n reject(err);\n }\n else {\n resolvedValues[curValueIndex] = callback.errorCallback(err);\n unresolvedCount--;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n }\n });\n }\n catch (thenErr) {\n reject(thenErr);\n }\n unresolvedCount++;\n valueIndex++;\n }\n // Make the unresolvedCount zero-based again.\n unresolvedCount -= 2;\n if (unresolvedCount === 0) {\n resolve(resolvedValues);\n }\n return promise;\n }\n constructor(executor) {\n const promise = this;\n if (!(promise instanceof ZoneAwarePromise)) {\n throw new Error('Must be an instanceof Promise.');\n }\n promise[symbolState] = UNRESOLVED;\n promise[symbolValue] = []; // queue;\n try {\n executor && executor(makeResolver(promise, RESOLVED), makeResolver(promise, REJECTED));\n }\n catch (error) {\n resolvePromise(promise, false, error);\n }\n }\n get [Symbol.toStringTag]() {\n return 'Promise';\n }\n get [Symbol.species]() {\n return ZoneAwarePromise;\n }\n then(onFulfilled, onRejected) {\n let C = this.constructor[Symbol.species];\n if (!C || typeof C !== 'function') {\n C = this.constructor || ZoneAwarePromise;\n }\n const chainPromise = new C(noop);\n const zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFulfilled, onRejected);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFulfilled, onRejected);\n }\n return chainPromise;\n }\n catch(onRejected) {\n return this.then(null, onRejected);\n }\n finally(onFinally) {\n let C = this.constructor[Symbol.species];\n if (!C || typeof C !== 'function') {\n C = ZoneAwarePromise;\n }\n const chainPromise = new C(noop);\n chainPromise[symbolFinally] = symbolFinally;\n const zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFinally, onFinally);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFinally, onFinally);\n }\n return chainPromise;\n }\n }\n // Protect against aggressive optimizers dropping seemingly unused properties.\n // E.g. Closure Compiler in advanced mode.\n ZoneAwarePromise['resolve'] = ZoneAwarePromise.resolve;\n ZoneAwarePromise['reject'] = ZoneAwarePromise.reject;\n ZoneAwarePromise['race'] = ZoneAwarePromise.race;\n ZoneAwarePromise['all'] = ZoneAwarePromise.all;\n const NativePromise = global[symbolPromise] = global['Promise'];\n global['Promise'] = ZoneAwarePromise;\n const symbolThenPatched = __symbol__('thenPatched');\n function patchThen(Ctor) {\n const proto = Ctor.prototype;\n const prop = ObjectGetOwnPropertyDescriptor(proto, 'then');\n if (prop && (prop.writable === false || !prop.configurable)) {\n // check Ctor.prototype.then propertyDescriptor is writable or not\n // in meteor env, writable is false, we should ignore such case\n return;\n }\n const originalThen = proto.then;\n // Keep a reference to the original method.\n proto[symbolThen] = originalThen;\n Ctor.prototype.then = function (onResolve, onReject) {\n const wrapped = new ZoneAwarePromise((resolve, reject) => {\n originalThen.call(this, resolve, reject);\n });\n return wrapped.then(onResolve, onReject);\n };\n Ctor[symbolThenPatched] = true;\n }\n api.patchThen = patchThen;\n function zoneify(fn) {\n return function (self, args) {\n let resultPromise = fn.apply(self, args);\n if (resultPromise instanceof ZoneAwarePromise) {\n return resultPromise;\n }\n let ctor = resultPromise.constructor;\n if (!ctor[symbolThenPatched]) {\n patchThen(ctor);\n }\n return resultPromise;\n };\n }\n if (NativePromise) {\n patchThen(NativePromise);\n patchMethod(global, 'fetch', delegate => zoneify(delegate));\n }\n // This is not part of public API, but it is useful for tests, so we expose it.\n Promise[Zone.__symbol__('uncaughtPromiseErrors')] = _uncaughtPromiseErrors;\n return ZoneAwarePromise;\n});\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// override Function.prototype.toString to make zone.js patched function\n// look like native function\nZone.__load_patch('toString', (global) => {\n // patch Func.prototype.toString to let them look like native\n const originalFunctionToString = Function.prototype.toString;\n const ORIGINAL_DELEGATE_SYMBOL = zoneSymbol('OriginalDelegate');\n const PROMISE_SYMBOL = zoneSymbol('Promise');\n const ERROR_SYMBOL = zoneSymbol('Error');\n const newFunctionToString = function toString() {\n if (typeof this === 'function') {\n const originalDelegate = this[ORIGINAL_DELEGATE_SYMBOL];\n if (originalDelegate) {\n if (typeof originalDelegate === 'function') {\n return originalFunctionToString.call(originalDelegate);\n }\n else {\n return Object.prototype.toString.call(originalDelegate);\n }\n }\n if (this === Promise) {\n const nativePromise = global[PROMISE_SYMBOL];\n if (nativePromise) {\n return originalFunctionToString.call(nativePromise);\n }\n }\n if (this === Error) {\n const nativeError = global[ERROR_SYMBOL];\n if (nativeError) {\n return originalFunctionToString.call(nativeError);\n }\n }\n }\n return originalFunctionToString.call(this);\n };\n newFunctionToString[ORIGINAL_DELEGATE_SYMBOL] = originalFunctionToString;\n Function.prototype.toString = newFunctionToString;\n // patch Object.prototype.toString to let them look like native\n const originalObjectToString = Object.prototype.toString;\n const PROMISE_OBJECT_TO_STRING = '[object Promise]';\n Object.prototype.toString = function () {\n if (typeof Promise === 'function' && this instanceof Promise) {\n return PROMISE_OBJECT_TO_STRING;\n }\n return originalObjectToString.call(this);\n };\n});\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nlet passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n const options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n }\n });\n // Note: We pass the `options` object as the event handler too. This is not compatible with the\n // signature of `addEventListener` or `removeEventListener` but enables us to remove the handler\n // without an actual handler.\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n}\n// an identifier to tell ZoneTask do not create a new invoke closure\nconst OPTIMIZED_ZONE_EVENT_TASK_DATA = {\n useG: true\n};\nconst zoneSymbolEventNames = {};\nconst globalSources = {};\nconst EVENT_NAME_SYMBOL_REGX = new RegExp('^' + ZONE_SYMBOL_PREFIX + '(\\\\w+)(true|false)$');\nconst IMMEDIATE_PROPAGATION_SYMBOL = zoneSymbol('propagationStopped');\nfunction prepareEventNames(eventName, eventNameToString) {\n const falseEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + FALSE_STR;\n const trueEventName = (eventNameToString ? eventNameToString(eventName) : eventName) + TRUE_STR;\n const symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n const symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames[eventName] = {};\n zoneSymbolEventNames[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames[eventName][TRUE_STR] = symbolCapture;\n}\nfunction patchEventTarget(_global, api, apis, patchOptions) {\n const ADD_EVENT_LISTENER = (patchOptions && patchOptions.add) || ADD_EVENT_LISTENER_STR;\n const REMOVE_EVENT_LISTENER = (patchOptions && patchOptions.rm) || REMOVE_EVENT_LISTENER_STR;\n const LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.listeners) || 'eventListeners';\n const REMOVE_ALL_LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.rmAll) || 'removeAllListeners';\n const zoneSymbolAddEventListener = zoneSymbol(ADD_EVENT_LISTENER);\n const ADD_EVENT_LISTENER_SOURCE = '.' + ADD_EVENT_LISTENER + ':';\n const PREPEND_EVENT_LISTENER = 'prependListener';\n const PREPEND_EVENT_LISTENER_SOURCE = '.' + PREPEND_EVENT_LISTENER + ':';\n const invokeTask = function (task, target, event) {\n // for better performance, check isRemoved which is set\n // by removeEventListener\n if (task.isRemoved) {\n return;\n }\n const delegate = task.callback;\n if (typeof delegate === 'object' && delegate.handleEvent) {\n // create the bind version of handleEvent when invoke\n task.callback = (event) => delegate.handleEvent(event);\n task.originalDelegate = delegate;\n }\n // invoke static task.invoke\n // need to try/catch error here, otherwise, the error in one event listener\n // will break the executions of the other event listeners. Also error will\n // not remove the event listener when `once` options is true.\n let error;\n try {\n task.invoke(task, target, [event]);\n }\n catch (err) {\n error = err;\n }\n const options = task.options;\n if (options && typeof options === 'object' && options.once) {\n // if options.once is true, after invoke once remove listener here\n // only browser need to do this, nodejs eventEmitter will cal removeListener\n // inside EventEmitter.once\n const delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n target[REMOVE_EVENT_LISTENER].call(target, event.type, delegate, options);\n }\n return error;\n };\n function globalCallback(context, event, isCapture) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n const target = context || event.target || _global;\n const tasks = target[zoneSymbolEventNames[event.type][isCapture ? TRUE_STR : FALSE_STR]];\n if (tasks) {\n const errors = [];\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n const err = invokeTask(tasks[0], target, event);\n err && errors.push(err);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n const copyTasks = tasks.slice();\n for (let i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n const err = invokeTask(copyTasks[i], target, event);\n err && errors.push(err);\n }\n }\n // Since there is only one error, we don't need to schedule microTask\n // to throw the error.\n if (errors.length === 1) {\n throw errors[0];\n }\n else {\n for (let i = 0; i < errors.length; i++) {\n const err = errors[i];\n api.nativeScheduleMicroTask(() => {\n throw err;\n });\n }\n }\n }\n }\n // global shared zoneAwareCallback to handle all event callback with capture = false\n const globalZoneAwareCallback = function (event) {\n return globalCallback(this, event, false);\n };\n // global shared zoneAwareCallback to handle all event callback with capture = true\n const globalZoneAwareCaptureCallback = function (event) {\n return globalCallback(this, event, true);\n };\n function patchEventTargetMethods(obj, patchOptions) {\n if (!obj) {\n return false;\n }\n let useGlobalCallback = true;\n if (patchOptions && patchOptions.useG !== undefined) {\n useGlobalCallback = patchOptions.useG;\n }\n const validateHandler = patchOptions && patchOptions.vh;\n let checkDuplicate = true;\n if (patchOptions && patchOptions.chkDup !== undefined) {\n checkDuplicate = patchOptions.chkDup;\n }\n let returnTarget = false;\n if (patchOptions && patchOptions.rt !== undefined) {\n returnTarget = patchOptions.rt;\n }\n let proto = obj;\n while (proto && !proto.hasOwnProperty(ADD_EVENT_LISTENER)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && obj[ADD_EVENT_LISTENER]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = obj;\n }\n if (!proto) {\n return false;\n }\n if (proto[zoneSymbolAddEventListener]) {\n return false;\n }\n const eventNameToString = patchOptions && patchOptions.eventNameToString;\n // a shared global taskData to pass data for scheduleEventTask\n // so we do not need to create a new object just for pass some data\n const taskData = {};\n const nativeAddEventListener = proto[zoneSymbolAddEventListener] = proto[ADD_EVENT_LISTENER];\n const nativeRemoveEventListener = proto[zoneSymbol(REMOVE_EVENT_LISTENER)] =\n proto[REMOVE_EVENT_LISTENER];\n const nativeListeners = proto[zoneSymbol(LISTENERS_EVENT_LISTENER)] =\n proto[LISTENERS_EVENT_LISTENER];\n const nativeRemoveAllListeners = proto[zoneSymbol(REMOVE_ALL_LISTENERS_EVENT_LISTENER)] =\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER];\n let nativePrependEventListener;\n if (patchOptions && patchOptions.prepend) {\n nativePrependEventListener = proto[zoneSymbol(patchOptions.prepend)] =\n proto[patchOptions.prepend];\n }\n /**\n * This util function will build an option object with passive option\n * to handle all possible input from the user.\n */\n function buildEventListenerOptions(options, passive) {\n if (!passiveSupported && typeof options === 'object' && options) {\n // doesn't support passive but user want to pass an object as options.\n // this will not work on some old browser, so we just pass a boolean\n // as useCapture parameter\n return !!options.capture;\n }\n if (!passiveSupported || !passive) {\n return options;\n }\n if (typeof options === 'boolean') {\n return { capture: options, passive: true };\n }\n if (!options) {\n return { passive: true };\n }\n if (typeof options === 'object' && options.passive !== false) {\n return Object.assign(Object.assign({}, options), { passive: true });\n }\n return options;\n }\n const customScheduleGlobal = function (task) {\n // if there is already a task for the eventName + capture,\n // just return, because we use the shared globalZoneAwareCallback here.\n if (taskData.isExisting) {\n return;\n }\n return nativeAddEventListener.call(taskData.target, taskData.eventName, taskData.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, taskData.options);\n };\n const customCancelGlobal = function (task) {\n // if task is not marked as isRemoved, this call is directly\n // from Zone.prototype.cancelTask, we should remove the task\n // from tasksList of target first\n if (!task.isRemoved) {\n const symbolEventNames = zoneSymbolEventNames[task.eventName];\n let symbolEventName;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[task.capture ? TRUE_STR : FALSE_STR];\n }\n const existingTasks = symbolEventName && task.target[symbolEventName];\n if (existingTasks) {\n for (let i = 0; i < existingTasks.length; i++) {\n const existingTask = existingTasks[i];\n if (existingTask === task) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n task.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n task.allRemoved = true;\n task.target[symbolEventName] = null;\n }\n break;\n }\n }\n }\n }\n // if all tasks for the eventName + capture have gone,\n // we will really remove the global event callback,\n // if not, return\n if (!task.allRemoved) {\n return;\n }\n return nativeRemoveEventListener.call(task.target, task.eventName, task.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, task.options);\n };\n const customScheduleNonGlobal = function (task) {\n return nativeAddEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n const customSchedulePrepend = function (task) {\n return nativePrependEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n const customCancelNonGlobal = function (task) {\n return nativeRemoveEventListener.call(task.target, task.eventName, task.invoke, task.options);\n };\n const customSchedule = useGlobalCallback ? customScheduleGlobal : customScheduleNonGlobal;\n const customCancel = useGlobalCallback ? customCancelGlobal : customCancelNonGlobal;\n const compareTaskCallbackVsDelegate = function (task, delegate) {\n const typeOfDelegate = typeof delegate;\n return (typeOfDelegate === 'function' && task.callback === delegate) ||\n (typeOfDelegate === 'object' && task.originalDelegate === delegate);\n };\n const compare = (patchOptions && patchOptions.diff) ? patchOptions.diff : compareTaskCallbackVsDelegate;\n const unpatchedEvents = Zone[zoneSymbol('UNPATCHED_EVENTS')];\n const passiveEvents = _global[zoneSymbol('PASSIVE_EVENTS')];\n const makeAddListener = function (nativeListener, addSource, customScheduleFn, customCancelFn, returnTarget = false, prepend = false) {\n return function () {\n const target = this || _global;\n let eventName = arguments[0];\n if (patchOptions && patchOptions.transferEventName) {\n eventName = patchOptions.transferEventName(eventName);\n }\n let delegate = arguments[1];\n if (!delegate) {\n return nativeListener.apply(this, arguments);\n }\n if (isNode && eventName === 'uncaughtException') {\n // don't patch uncaughtException of nodejs to prevent endless loop\n return nativeListener.apply(this, arguments);\n }\n // don't create the bind delegate function for handleEvent\n // case here to improve addEventListener performance\n // we will create the bind delegate when invoke\n let isHandleEvent = false;\n if (typeof delegate !== 'function') {\n if (!delegate.handleEvent) {\n return nativeListener.apply(this, arguments);\n }\n isHandleEvent = true;\n }\n if (validateHandler && !validateHandler(nativeListener, delegate, target, arguments)) {\n return;\n }\n const passive = passiveSupported && !!passiveEvents && passiveEvents.indexOf(eventName) !== -1;\n const options = buildEventListenerOptions(arguments[2], passive);\n if (unpatchedEvents) {\n // check upatched list\n for (let i = 0; i < unpatchedEvents.length; i++) {\n if (eventName === unpatchedEvents[i]) {\n if (passive) {\n return nativeListener.call(target, eventName, delegate, options);\n }\n else {\n return nativeListener.apply(this, arguments);\n }\n }\n }\n }\n const capture = !options ? false : typeof options === 'boolean' ? true : options.capture;\n const once = options && typeof options === 'object' ? options.once : false;\n const zone = Zone.current;\n let symbolEventNames = zoneSymbolEventNames[eventName];\n if (!symbolEventNames) {\n prepareEventNames(eventName, eventNameToString);\n symbolEventNames = zoneSymbolEventNames[eventName];\n }\n const symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n let existingTasks = target[symbolEventName];\n let isExisting = false;\n if (existingTasks) {\n // already have task registered\n isExisting = true;\n if (checkDuplicate) {\n for (let i = 0; i < existingTasks.length; i++) {\n if (compare(existingTasks[i], delegate)) {\n // same callback, same capture, same event name, just return\n return;\n }\n }\n }\n }\n else {\n existingTasks = target[symbolEventName] = [];\n }\n let source;\n const constructorName = target.constructor['name'];\n const targetSource = globalSources[constructorName];\n if (targetSource) {\n source = targetSource[eventName];\n }\n if (!source) {\n source = constructorName + addSource +\n (eventNameToString ? eventNameToString(eventName) : eventName);\n }\n // do not create a new object as task.data to pass those things\n // just use the global shared one\n taskData.options = options;\n if (once) {\n // if addEventListener with once options, we don't pass it to\n // native addEventListener, instead we keep the once setting\n // and handle ourselves.\n taskData.options.once = false;\n }\n taskData.target = target;\n taskData.capture = capture;\n taskData.eventName = eventName;\n taskData.isExisting = isExisting;\n const data = useGlobalCallback ? OPTIMIZED_ZONE_EVENT_TASK_DATA : undefined;\n // keep taskData into data to allow onScheduleEventTask to access the task information\n if (data) {\n data.taskData = taskData;\n }\n const task = zone.scheduleEventTask(source, delegate, data, customScheduleFn, customCancelFn);\n // should clear taskData.target to avoid memory leak\n // issue, https://github.com/angular/angular/issues/20442\n taskData.target = null;\n // need to clear up taskData because it is a global object\n if (data) {\n data.taskData = null;\n }\n // have to save those information to task in case\n // application may call task.zone.cancelTask() directly\n if (once) {\n options.once = true;\n }\n if (!(!passiveSupported && typeof task.options === 'boolean')) {\n // if not support passive, and we pass an option object\n // to addEventListener, we should save the options to task\n task.options = options;\n }\n task.target = target;\n task.capture = capture;\n task.eventName = eventName;\n if (isHandleEvent) {\n // save original delegate for compare to check duplicate\n task.originalDelegate = delegate;\n }\n if (!prepend) {\n existingTasks.push(task);\n }\n else {\n existingTasks.unshift(task);\n }\n if (returnTarget) {\n return target;\n }\n };\n };\n proto[ADD_EVENT_LISTENER] = makeAddListener(nativeAddEventListener, ADD_EVENT_LISTENER_SOURCE, customSchedule, customCancel, returnTarget);\n if (nativePrependEventListener) {\n proto[PREPEND_EVENT_LISTENER] = makeAddListener(nativePrependEventListener, PREPEND_EVENT_LISTENER_SOURCE, customSchedulePrepend, customCancel, returnTarget, true);\n }\n proto[REMOVE_EVENT_LISTENER] = function () {\n const target = this || _global;\n let eventName = arguments[0];\n if (patchOptions && patchOptions.transferEventName) {\n eventName = patchOptions.transferEventName(eventName);\n }\n const options = arguments[2];\n const capture = !options ? false : typeof options === 'boolean' ? true : options.capture;\n const delegate = arguments[1];\n if (!delegate) {\n return nativeRemoveEventListener.apply(this, arguments);\n }\n if (validateHandler &&\n !validateHandler(nativeRemoveEventListener, delegate, target, arguments)) {\n return;\n }\n const symbolEventNames = zoneSymbolEventNames[eventName];\n let symbolEventName;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n const existingTasks = symbolEventName && target[symbolEventName];\n if (existingTasks) {\n for (let i = 0; i < existingTasks.length; i++) {\n const existingTask = existingTasks[i];\n if (compare(existingTask, delegate)) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n existingTask.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n existingTask.allRemoved = true;\n target[symbolEventName] = null;\n // in the target, we have an event listener which is added by on_property\n // such as target.onclick = function() {}, so we need to clear this internal\n // property too if all delegates all removed\n if (typeof eventName === 'string') {\n const onPropertySymbol = ZONE_SYMBOL_PREFIX + 'ON_PROPERTY' + eventName;\n target[onPropertySymbol] = null;\n }\n }\n existingTask.zone.cancelTask(existingTask);\n if (returnTarget) {\n return target;\n }\n return;\n }\n }\n }\n // issue 930, didn't find the event name or callback\n // from zone kept existingTasks, the callback maybe\n // added outside of zone, we need to call native removeEventListener\n // to try to remove it.\n return nativeRemoveEventListener.apply(this, arguments);\n };\n proto[LISTENERS_EVENT_LISTENER] = function () {\n const target = this || _global;\n let eventName = arguments[0];\n if (patchOptions && patchOptions.transferEventName) {\n eventName = patchOptions.transferEventName(eventName);\n }\n const listeners = [];\n const tasks = findEventTasks(target, eventNameToString ? eventNameToString(eventName) : eventName);\n for (let i = 0; i < tasks.length; i++) {\n const task = tasks[i];\n let delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n listeners.push(delegate);\n }\n return listeners;\n };\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER] = function () {\n const target = this || _global;\n let eventName = arguments[0];\n if (!eventName) {\n const keys = Object.keys(target);\n for (let i = 0; i < keys.length; i++) {\n const prop = keys[i];\n const match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n let evtName = match && match[1];\n // in nodejs EventEmitter, removeListener event is\n // used for monitoring the removeListener call,\n // so just keep removeListener eventListener until\n // all other eventListeners are removed\n if (evtName && evtName !== 'removeListener') {\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, evtName);\n }\n }\n // remove removeListener listener finally\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, 'removeListener');\n }\n else {\n if (patchOptions && patchOptions.transferEventName) {\n eventName = patchOptions.transferEventName(eventName);\n }\n const symbolEventNames = zoneSymbolEventNames[eventName];\n if (symbolEventNames) {\n const symbolEventName = symbolEventNames[FALSE_STR];\n const symbolCaptureEventName = symbolEventNames[TRUE_STR];\n const tasks = target[symbolEventName];\n const captureTasks = target[symbolCaptureEventName];\n if (tasks) {\n const removeTasks = tasks.slice();\n for (let i = 0; i < removeTasks.length; i++) {\n const task = removeTasks[i];\n let delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n if (captureTasks) {\n const removeTasks = captureTasks.slice();\n for (let i = 0; i < removeTasks.length; i++) {\n const task = removeTasks[i];\n let delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n }\n }\n if (returnTarget) {\n return this;\n }\n };\n // for native toString patch\n attachOriginToPatched(proto[ADD_EVENT_LISTENER], nativeAddEventListener);\n attachOriginToPatched(proto[REMOVE_EVENT_LISTENER], nativeRemoveEventListener);\n if (nativeRemoveAllListeners) {\n attachOriginToPatched(proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER], nativeRemoveAllListeners);\n }\n if (nativeListeners) {\n attachOriginToPatched(proto[LISTENERS_EVENT_LISTENER], nativeListeners);\n }\n return true;\n }\n let results = [];\n for (let i = 0; i < apis.length; i++) {\n results[i] = patchEventTargetMethods(apis[i], patchOptions);\n }\n return results;\n}\nfunction findEventTasks(target, eventName) {\n if (!eventName) {\n const foundTasks = [];\n for (let prop in target) {\n const match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n let evtName = match && match[1];\n if (evtName && (!eventName || evtName === eventName)) {\n const tasks = target[prop];\n if (tasks) {\n for (let i = 0; i < tasks.length; i++) {\n foundTasks.push(tasks[i]);\n }\n }\n }\n }\n return foundTasks;\n }\n let symbolEventName = zoneSymbolEventNames[eventName];\n if (!symbolEventName) {\n prepareEventNames(eventName);\n symbolEventName = zoneSymbolEventNames[eventName];\n }\n const captureFalseTasks = target[symbolEventName[FALSE_STR]];\n const captureTrueTasks = target[symbolEventName[TRUE_STR]];\n if (!captureFalseTasks) {\n return captureTrueTasks ? captureTrueTasks.slice() : [];\n }\n else {\n return captureTrueTasks ? captureFalseTasks.concat(captureTrueTasks) :\n captureFalseTasks.slice();\n }\n}\nfunction patchEventPrototype(global, api) {\n const Event = global['Event'];\n if (Event && Event.prototype) {\n api.patchMethod(Event.prototype, 'stopImmediatePropagation', (delegate) => function (self, args) {\n self[IMMEDIATE_PROPAGATION_SYMBOL] = true;\n // we need to call the native stopImmediatePropagation\n // in case in some hybrid application, some part of\n // application will be controlled by zone, some are not\n delegate && delegate.apply(self, args);\n });\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction patchCallbacks(api, target, targetName, method, callbacks) {\n const symbol = Zone.__symbol__(method);\n if (target[symbol]) {\n return;\n }\n const nativeDelegate = target[symbol] = target[method];\n target[method] = function (name, opts, options) {\n if (opts && opts.prototype) {\n callbacks.forEach(function (callback) {\n const source = `${targetName}.${method}::` + callback;\n const prototype = opts.prototype;\n if (prototype.hasOwnProperty(callback)) {\n const descriptor = api.ObjectGetOwnPropertyDescriptor(prototype, callback);\n if (descriptor && descriptor.value) {\n descriptor.value = api.wrapWithCurrentZone(descriptor.value, source);\n api._redefineProperty(opts.prototype, callback, descriptor);\n }\n else if (prototype[callback]) {\n prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source);\n }\n }\n else if (prototype[callback]) {\n prototype[callback] = api.wrapWithCurrentZone(prototype[callback], source);\n }\n });\n }\n return nativeDelegate.call(target, name, opts, options);\n };\n api.attachOriginToPatched(target[method], nativeDelegate);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction filterProperties(target, onProperties, ignoreProperties) {\n if (!ignoreProperties || ignoreProperties.length === 0) {\n return onProperties;\n }\n const tip = ignoreProperties.filter(ip => ip.target === target);\n if (!tip || tip.length === 0) {\n return onProperties;\n }\n const targetIgnoreProperties = tip[0].ignoreProperties;\n return onProperties.filter(op => targetIgnoreProperties.indexOf(op) === -1);\n}\nfunction patchFilteredProperties(target, onProperties, ignoreProperties, prototype) {\n // check whether target is available, sometimes target will be undefined\n // because different browser or some 3rd party plugin.\n if (!target) {\n return;\n }\n const filteredProperties = filterProperties(target, onProperties, ignoreProperties);\n patchOnProperties(target, filteredProperties, prototype);\n}\n/**\n * Get all event name properties which the event name startsWith `on`\n * from the target object itself, inherited properties are not considered.\n */\nfunction getOnEventNames(target) {\n return Object.getOwnPropertyNames(target)\n .filter(name => name.startsWith('on') && name.length > 2)\n .map(name => name.substring(2));\n}\nfunction propertyDescriptorPatch(api, _global) {\n if (isNode && !isMix) {\n return;\n }\n if (Zone[api.symbol('patchEvents')]) {\n // events are already been patched by legacy patch.\n return;\n }\n const ignoreProperties = _global['__Zone_ignore_on_properties'];\n // for browsers that we can patch the descriptor: Chrome & Firefox\n let patchTargets = [];\n if (isBrowser) {\n const internalWindow = window;\n patchTargets = patchTargets.concat([\n 'Document', 'SVGElement', 'Element', 'HTMLElement', 'HTMLBodyElement', 'HTMLMediaElement',\n 'HTMLFrameSetElement', 'HTMLFrameElement', 'HTMLIFrameElement', 'HTMLMarqueeElement', 'Worker'\n ]);\n const ignoreErrorProperties = isIE() ? [{ target: internalWindow, ignoreProperties: ['error'] }] : [];\n // in IE/Edge, onProp not exist in window object, but in WindowPrototype\n // so we need to pass WindowPrototype to check onProp exist or not\n patchFilteredProperties(internalWindow, getOnEventNames(internalWindow), ignoreProperties ? ignoreProperties.concat(ignoreErrorProperties) : ignoreProperties, ObjectGetPrototypeOf(internalWindow));\n }\n patchTargets = patchTargets.concat([\n 'XMLHttpRequest', 'XMLHttpRequestEventTarget', 'IDBIndex', 'IDBRequest', 'IDBOpenDBRequest',\n 'IDBDatabase', 'IDBTransaction', 'IDBCursor', 'WebSocket'\n ]);\n for (let i = 0; i < patchTargets.length; i++) {\n const target = _global[patchTargets[i]];\n target && target.prototype &&\n patchFilteredProperties(target.prototype, getOnEventNames(target.prototype), ignoreProperties);\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nZone.__load_patch('util', (global, Zone, api) => {\n // Collect native event names by looking at properties\n // on the global namespace, e.g. 'onclick'.\n const eventNames = getOnEventNames(global);\n api.patchOnProperties = patchOnProperties;\n api.patchMethod = patchMethod;\n api.bindArguments = bindArguments;\n api.patchMacroTask = patchMacroTask;\n // In earlier version of zone.js (<0.9.0), we use env name `__zone_symbol__BLACK_LISTED_EVENTS` to\n // define which events will not be patched by `Zone.js`.\n // In newer version (>=0.9.0), we change the env name to `__zone_symbol__UNPATCHED_EVENTS` to keep\n // the name consistent with angular repo.\n // The `__zone_symbol__BLACK_LISTED_EVENTS` is deprecated, but it is still be supported for\n // backwards compatibility.\n const SYMBOL_BLACK_LISTED_EVENTS = Zone.__symbol__('BLACK_LISTED_EVENTS');\n const SYMBOL_UNPATCHED_EVENTS = Zone.__symbol__('UNPATCHED_EVENTS');\n if (global[SYMBOL_UNPATCHED_EVENTS]) {\n global[SYMBOL_BLACK_LISTED_EVENTS] = global[SYMBOL_UNPATCHED_EVENTS];\n }\n if (global[SYMBOL_BLACK_LISTED_EVENTS]) {\n Zone[SYMBOL_BLACK_LISTED_EVENTS] = Zone[SYMBOL_UNPATCHED_EVENTS] =\n global[SYMBOL_BLACK_LISTED_EVENTS];\n }\n api.patchEventPrototype = patchEventPrototype;\n api.patchEventTarget = patchEventTarget;\n api.isIEOrEdge = isIEOrEdge;\n api.ObjectDefineProperty = ObjectDefineProperty;\n api.ObjectGetOwnPropertyDescriptor = ObjectGetOwnPropertyDescriptor;\n api.ObjectCreate = ObjectCreate;\n api.ArraySlice = ArraySlice;\n api.patchClass = patchClass;\n api.wrapWithCurrentZone = wrapWithCurrentZone;\n api.filterProperties = filterProperties;\n api.attachOriginToPatched = attachOriginToPatched;\n api._redefineProperty = Object.defineProperty;\n api.patchCallbacks = patchCallbacks;\n api.getGlobalObjects = () => ({\n globalSources,\n zoneSymbolEventNames,\n eventNames,\n isBrowser,\n isMix,\n isNode,\n TRUE_STR,\n FALSE_STR,\n ZONE_SYMBOL_PREFIX,\n ADD_EVENT_LISTENER_STR,\n REMOVE_EVENT_LISTENER_STR\n });\n});\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst taskSymbol = zoneSymbol('zoneTask');\nfunction patchTimer(window, setName, cancelName, nameSuffix) {\n let setNative = null;\n let clearNative = null;\n setName += nameSuffix;\n cancelName += nameSuffix;\n const tasksByHandleId = {};\n function scheduleTask(task) {\n const data = task.data;\n data.args[0] = function () {\n return task.invoke.apply(this, arguments);\n };\n data.handleId = setNative.apply(window, data.args);\n return task;\n }\n function clearTask(task) {\n return clearNative.call(window, task.data.handleId);\n }\n setNative =\n patchMethod(window, setName, (delegate) => function (self, args) {\n if (typeof args[0] === 'function') {\n const options = {\n isPeriodic: nameSuffix === 'Interval',\n delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 :\n undefined,\n args: args\n };\n const callback = args[0];\n args[0] = function timer() {\n try {\n return callback.apply(this, arguments);\n }\n finally {\n // issue-934, task will be cancelled\n // even it is a periodic task such as\n // setInterval\n // https://github.com/angular/angular/issues/40387\n // Cleanup tasksByHandleId should be handled before scheduleTask\n // Since some zoneSpec may intercept and doesn't trigger\n // scheduleFn(scheduleTask) provided here.\n if (!(options.isPeriodic)) {\n if (typeof options.handleId === 'number') {\n // in non-nodejs env, we remove timerId\n // from local cache\n delete tasksByHandleId[options.handleId];\n }\n else if (options.handleId) {\n // Node returns complex objects as handleIds\n // we remove task reference from timer object\n options.handleId[taskSymbol] = null;\n }\n }\n }\n };\n const task = scheduleMacroTaskWithCurrentZone(setName, args[0], options, scheduleTask, clearTask);\n if (!task) {\n return task;\n }\n // Node.js must additionally support the ref and unref functions.\n const handle = task.data.handleId;\n if (typeof handle === 'number') {\n // for non nodejs env, we save handleId: task\n // mapping in local cache for clearTimeout\n tasksByHandleId[handle] = task;\n }\n else if (handle) {\n // for nodejs env, we save task\n // reference in timerId Object for clearTimeout\n handle[taskSymbol] = task;\n }\n // check whether handle is null, because some polyfill or browser\n // may return undefined from setTimeout/setInterval/setImmediate/requestAnimationFrame\n if (handle && handle.ref && handle.unref && typeof handle.ref === 'function' &&\n typeof handle.unref === 'function') {\n task.ref = handle.ref.bind(handle);\n task.unref = handle.unref.bind(handle);\n }\n if (typeof handle === 'number' || handle) {\n return handle;\n }\n return task;\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(window, args);\n }\n });\n clearNative =\n patchMethod(window, cancelName, (delegate) => function (self, args) {\n const id = args[0];\n let task;\n if (typeof id === 'number') {\n // non nodejs env.\n task = tasksByHandleId[id];\n }\n else {\n // nodejs env.\n task = id && id[taskSymbol];\n // other environments.\n if (!task) {\n task = id;\n }\n }\n if (task && typeof task.type === 'string') {\n if (task.state !== 'notScheduled' &&\n (task.cancelFn && task.data.isPeriodic || task.runCount === 0)) {\n if (typeof id === 'number') {\n delete tasksByHandleId[id];\n }\n else if (id) {\n id[taskSymbol] = null;\n }\n // Do not cancel already canceled functions\n task.zone.cancelTask(task);\n }\n }\n else {\n // cause an error by calling it directly.\n delegate.apply(window, args);\n }\n });\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction patchCustomElements(_global, api) {\n const { isBrowser, isMix } = api.getGlobalObjects();\n if ((!isBrowser && !isMix) || !_global['customElements'] || !('customElements' in _global)) {\n return;\n }\n const callbacks = ['connectedCallback', 'disconnectedCallback', 'adoptedCallback', 'attributeChangedCallback'];\n api.patchCallbacks(api, _global.customElements, 'customElements', 'define', callbacks);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction eventTargetPatch(_global, api) {\n if (Zone[api.symbol('patchEventTarget')]) {\n // EventTarget is already patched.\n return;\n }\n const { eventNames, zoneSymbolEventNames, TRUE_STR, FALSE_STR, ZONE_SYMBOL_PREFIX } = api.getGlobalObjects();\n // predefine all __zone_symbol__ + eventName + true/false string\n for (let i = 0; i < eventNames.length; i++) {\n const eventName = eventNames[i];\n const falseEventName = eventName + FALSE_STR;\n const trueEventName = eventName + TRUE_STR;\n const symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n const symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames[eventName] = {};\n zoneSymbolEventNames[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames[eventName][TRUE_STR] = symbolCapture;\n }\n const EVENT_TARGET = _global['EventTarget'];\n if (!EVENT_TARGET || !EVENT_TARGET.prototype) {\n return;\n }\n api.patchEventTarget(_global, api, [EVENT_TARGET && EVENT_TARGET.prototype]);\n return true;\n}\nfunction patchEvent(global, api) {\n api.patchEventPrototype(global, api);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nZone.__load_patch('legacy', (global) => {\n const legacyPatch = global[Zone.__symbol__('legacyPatch')];\n if (legacyPatch) {\n legacyPatch();\n }\n});\nZone.__load_patch('queueMicrotask', (global, Zone, api) => {\n api.patchMethod(global, 'queueMicrotask', delegate => {\n return function (self, args) {\n Zone.current.scheduleMicroTask('queueMicrotask', args[0]);\n };\n });\n});\nZone.__load_patch('timers', (global) => {\n const set = 'set';\n const clear = 'clear';\n patchTimer(global, set, clear, 'Timeout');\n patchTimer(global, set, clear, 'Interval');\n patchTimer(global, set, clear, 'Immediate');\n});\nZone.__load_patch('requestAnimationFrame', (global) => {\n patchTimer(global, 'request', 'cancel', 'AnimationFrame');\n patchTimer(global, 'mozRequest', 'mozCancel', 'AnimationFrame');\n patchTimer(global, 'webkitRequest', 'webkitCancel', 'AnimationFrame');\n});\nZone.__load_patch('blocking', (global, Zone) => {\n const blockingMethods = ['alert', 'prompt', 'confirm'];\n for (let i = 0; i < blockingMethods.length; i++) {\n const name = blockingMethods[i];\n patchMethod(global, name, (delegate, symbol, name) => {\n return function (s, args) {\n return Zone.current.run(delegate, global, args, name);\n };\n });\n }\n});\nZone.__load_patch('EventTarget', (global, Zone, api) => {\n patchEvent(global, api);\n eventTargetPatch(global, api);\n // patch XMLHttpRequestEventTarget's addEventListener/removeEventListener\n const XMLHttpRequestEventTarget = global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype) {\n api.patchEventTarget(global, api, [XMLHttpRequestEventTarget.prototype]);\n }\n});\nZone.__load_patch('MutationObserver', (global, Zone, api) => {\n patchClass('MutationObserver');\n patchClass('WebKitMutationObserver');\n});\nZone.__load_patch('IntersectionObserver', (global, Zone, api) => {\n patchClass('IntersectionObserver');\n});\nZone.__load_patch('FileReader', (global, Zone, api) => {\n patchClass('FileReader');\n});\nZone.__load_patch('on_property', (global, Zone, api) => {\n propertyDescriptorPatch(api, global);\n});\nZone.__load_patch('customElements', (global, Zone, api) => {\n patchCustomElements(global, api);\n});\nZone.__load_patch('XHR', (global, Zone) => {\n // Treat XMLHttpRequest as a macrotask.\n patchXHR(global);\n const XHR_TASK = zoneSymbol('xhrTask');\n const XHR_SYNC = zoneSymbol('xhrSync');\n const XHR_LISTENER = zoneSymbol('xhrListener');\n const XHR_SCHEDULED = zoneSymbol('xhrScheduled');\n const XHR_URL = zoneSymbol('xhrURL');\n const XHR_ERROR_BEFORE_SCHEDULED = zoneSymbol('xhrErrorBeforeScheduled');\n function patchXHR(window) {\n const XMLHttpRequest = window['XMLHttpRequest'];\n if (!XMLHttpRequest) {\n // XMLHttpRequest is not available in service worker\n return;\n }\n const XMLHttpRequestPrototype = XMLHttpRequest.prototype;\n function findPendingTask(target) {\n return target[XHR_TASK];\n }\n let oriAddListener = XMLHttpRequestPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n let oriRemoveListener = XMLHttpRequestPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n if (!oriAddListener) {\n const XMLHttpRequestEventTarget = window['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget) {\n const XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget.prototype;\n oriAddListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n }\n const READY_STATE_CHANGE = 'readystatechange';\n const SCHEDULED = 'scheduled';\n function scheduleTask(task) {\n const data = task.data;\n const target = data.target;\n target[XHR_SCHEDULED] = false;\n target[XHR_ERROR_BEFORE_SCHEDULED] = false;\n // remove existing event listener\n const listener = target[XHR_LISTENER];\n if (!oriAddListener) {\n oriAddListener = target[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = target[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n if (listener) {\n oriRemoveListener.call(target, READY_STATE_CHANGE, listener);\n }\n const newListener = target[XHR_LISTENER] = () => {\n if (target.readyState === target.DONE) {\n // sometimes on some browsers XMLHttpRequest will fire onreadystatechange with\n // readyState=4 multiple times, so we need to check task state here\n if (!data.aborted && target[XHR_SCHEDULED] && task.state === SCHEDULED) {\n // check whether the xhr has registered onload listener\n // if that is the case, the task should invoke after all\n // onload listeners finish.\n // Also if the request failed without response (status = 0), the load event handler\n // will not be triggered, in that case, we should also invoke the placeholder callback\n // to close the XMLHttpRequest::send macroTask.\n // https://github.com/angular/angular/issues/38795\n const loadTasks = target[Zone.__symbol__('loadfalse')];\n if (target.status !== 0 && loadTasks && loadTasks.length > 0) {\n const oriInvoke = task.invoke;\n task.invoke = function () {\n // need to load the tasks again, because in other\n // load listener, they may remove themselves\n const loadTasks = target[Zone.__symbol__('loadfalse')];\n for (let i = 0; i < loadTasks.length; i++) {\n if (loadTasks[i] === task) {\n loadTasks.splice(i, 1);\n }\n }\n if (!data.aborted && task.state === SCHEDULED) {\n oriInvoke.call(task);\n }\n };\n loadTasks.push(task);\n }\n else {\n task.invoke();\n }\n }\n else if (!data.aborted && target[XHR_SCHEDULED] === false) {\n // error occurs when xhr.send()\n target[XHR_ERROR_BEFORE_SCHEDULED] = true;\n }\n }\n };\n oriAddListener.call(target, READY_STATE_CHANGE, newListener);\n const storedTask = target[XHR_TASK];\n if (!storedTask) {\n target[XHR_TASK] = task;\n }\n sendNative.apply(target, data.args);\n target[XHR_SCHEDULED] = true;\n return task;\n }\n function placeholderCallback() { }\n function clearTask(task) {\n const data = task.data;\n // Note - ideally, we would call data.target.removeEventListener here, but it's too late\n // to prevent it from firing. So instead, we store info for the event listener.\n data.aborted = true;\n return abortNative.apply(data.target, data.args);\n }\n const openNative = patchMethod(XMLHttpRequestPrototype, 'open', () => function (self, args) {\n self[XHR_SYNC] = args[2] == false;\n self[XHR_URL] = args[1];\n return openNative.apply(self, args);\n });\n const XMLHTTPREQUEST_SOURCE = 'XMLHttpRequest.send';\n const fetchTaskAborting = zoneSymbol('fetchTaskAborting');\n const fetchTaskScheduling = zoneSymbol('fetchTaskScheduling');\n const sendNative = patchMethod(XMLHttpRequestPrototype, 'send', () => function (self, args) {\n if (Zone.current[fetchTaskScheduling] === true) {\n // a fetch is scheduling, so we are using xhr to polyfill fetch\n // and because we already schedule macroTask for fetch, we should\n // not schedule a macroTask for xhr again\n return sendNative.apply(self, args);\n }\n if (self[XHR_SYNC]) {\n // if the XHR is sync there is no task to schedule, just execute the code.\n return sendNative.apply(self, args);\n }\n else {\n const options = { target: self, url: self[XHR_URL], isPeriodic: false, args: args, aborted: false };\n const task = scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask);\n if (self && self[XHR_ERROR_BEFORE_SCHEDULED] === true && !options.aborted &&\n task.state === SCHEDULED) {\n // xhr request throw error when send\n // we should invoke task instead of leaving a scheduled\n // pending macroTask\n task.invoke();\n }\n }\n });\n const abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', () => function (self, args) {\n const task = findPendingTask(self);\n if (task && typeof task.type == 'string') {\n // If the XHR has already completed, do nothing.\n // If the XHR has already been aborted, do nothing.\n // Fix #569, call abort multiple times before done will cause\n // macroTask task count be negative number\n if (task.cancelFn == null || (task.data && task.data.aborted)) {\n return;\n }\n task.zone.cancelTask(task);\n }\n else if (Zone.current[fetchTaskAborting] === true) {\n // the abort is called from fetch polyfill, we need to call native abort of XHR.\n return abortNative.apply(self, args);\n }\n // Otherwise, we are trying to abort an XHR which has not yet been sent, so there is no\n // task\n // to cancel. Do nothing.\n });\n }\n});\nZone.__load_patch('geolocation', (global) => {\n /// GEO_LOCATION\n if (global['navigator'] && global['navigator'].geolocation) {\n patchPrototype(global['navigator'].geolocation, ['getCurrentPosition', 'watchPosition']);\n }\n});\nZone.__load_patch('PromiseRejectionEvent', (global, Zone) => {\n // handle unhandled promise rejection\n function findPromiseRejectionHandler(evtName) {\n return function (e) {\n const eventTasks = findEventTasks(global, evtName);\n eventTasks.forEach(eventTask => {\n // windows has added unhandledrejection event listener\n // trigger the event listener\n const PromiseRejectionEvent = global['PromiseRejectionEvent'];\n if (PromiseRejectionEvent) {\n const evt = new PromiseRejectionEvent(evtName, { promise: e.promise, reason: e.rejection });\n eventTask.invoke(evt);\n }\n });\n };\n }\n if (global['PromiseRejectionEvent']) {\n Zone[zoneSymbol('unhandledPromiseRejectionHandler')] =\n findPromiseRejectionHandler('unhandledrejection');\n Zone[zoneSymbol('rejectionHandledHandler')] =\n findPromiseRejectionHandler('rejectionhandled');\n }\n});\n"]}