{"version":3,"file":"polyfills.16ea74b9b4d8c327.js","mappings":"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","names":["window","regeneratorRuntime","runtime","exports","undefined","Op","Object","prototype","hasOwn","hasOwnProperty","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","obj","key","value","defineProperty","enumerable","configurable","writable","define","err","innerFn","outerFn","self","tryLocsList","generator","create","Generator","context","Context","_invoke","state","GenStateSuspendedStart","method","arg","GenStateExecuting","Error","GenStateCompleted","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","record","tryCatch","type","done","GenStateSuspendedYield","makeInvokeMethod","fn","call","wrap","IteratorPrototype","this","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","GeneratorFunctionPrototype","forEach","PromiseImpl","resolve","reject","result","__await","then","invoke","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","return","TypeError","info","resultName","next","nextLoc","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","completion","pushTryEntry","reset","iterable","iteratorMethod","isNaN","length","i","GeneratorFunction","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","defineIteratorMethods","AsyncIterator","async","Promise","iter","keys","object","reverse","pop","skipTempReset","prev","resetTryEntry","charAt","slice","stop","rootRecord","rval","exception","loc","caught","handle","hasCatch","hasFinally","finallyEntry","complete","E","finish","catch","thrown","delegateYield","module","accidentalStrictMode","globalThis","Function","ampersandTest","nativeURLSearchParams","URLSearchParams","get","e","isSupportObjectConstructor","a","toString","decodesPlusesCorrectly","__URLSearchParams__","encodesAmpersandsCorrectly","append","URLSearchParamsPolyfill","propValue","appendTo","delete","dict","has","getAll","set","query","encode","join","Proxy","construct","target","args","bind","USPProto","polyfill","callback","thisArg","parseToDict","getOwnPropertyNames","sort","k","j","items","item","makeIterator","entries","search","str","replace","encodeURIComponent","match","decodeURIComponent","arr","shift","isArray","indexOf","pairs","split","index","decode","val","JSON","stringify","prop","global","performance","label","measure","symbolPrefix","__Zone_symbol_prefix","checkDuplicate","__symbol__","Zone","parent","zoneSpec","_parent","_name","_properties","properties","_zoneDelegate","_ZoneDelegate","patches","ZoneAwarePromise","root","zone","current","_currentZoneFrame","currentTask","_currentTask","ignoreDuplicate","perfName","_api","performanceMeasure","getZoneWith","fork","source","_callback","intercept","runGuarded","arguments","run","applyThis","applyArgs","handleError","runTask","task","NO_ZONE","notScheduled","eventTask","macroTask","reEntryGuard","running","_transitionTo","scheduled","runCount","previousTask","data","isPeriodic","cancelFn","invokeTask","unknown","_updateTaskCount","scheduleTask","newZone","scheduling","zoneDelegates","_zoneDelegates","_zone","scheduleMicroTask","customSchedule","ZoneTask","microTask","scheduleMacroTask","customCancel","scheduleEventTask","cancelTask","canceling","count","DELEGATE_ZS","onHasTask","_","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","apply","returnTask","scheduleFn","isEmpty","counts","change","options","_state","useG","_numberOfNestedTaskFrames","drainMicroTaskQueue","cancelScheduleRequest","toState","fromState1","fromState2","handleId","toJSON","symbolSetTimeout","symbolPromise","symbolThen","nativeMicroTaskQueuePromise","_microTaskQueue","_isDrainingMicrotaskQueue","func","nativeThen","nativeScheduleMicroTask","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","Array","ADD_EVENT_LISTENER_STR","REMOVE_EVENT_LISTENER_STR","ZONE_SYMBOL_ADD_EVENT_LISTENER","ZONE_SYMBOL_REMOVE_EVENT_LISTENER","TRUE_STR","FALSE_STR","ZONE_SYMBOL_PREFIX","zoneSymbol","isWindowExists","internalWindow","_global","propertyDesc","isWebWorker","WorkerGlobalScope","isNode","process","isBrowser","HTMLElement","isMix","zoneSymbolEventNames$1","wrapFn","event","eventNameSymbol","listener","errorEvent","message","filename","lineno","colno","preventDefault","desc","onPropPatchedSymbol","originalDescGet","originalDescSet","eventName","substr","newValue","removeEventListener","addEventListener","REMOVE_ATTRIBUTE","removeAttribute","patchProperty","onProperties","originalInstanceKey","className","OriginalClass","instance","patchFn","proto","delegateName","isPropertyWritable","patchDelegate","funcName","metaCreator","setNative","cbIdx","meta","scheduleMacroTaskWithCurrentZone","patched","original","isDetectedIEOrEdge","ieOrEdge","ua","navigator","userAgent","__load_patch","api","_uncaughtPromiseErrors","isDisableWrappingUncaughtPromiseRejection","rejection","console","stack","uncaughtPromiseError","throwOriginal","handleUnhandledRejection","UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL","handler","symbolState","symbolValue","symbolFinally","symbolParentPromiseValue","symbolParentPromiseState","UNRESOLVED","RESOLVED","REJECTED","promise","v","resolvePromise","CURRENT_TASK_TRACE_SYMBOL","onceWrapper","wasCalled","wrappedFunction","once","clearRejectedNoCatch","makeResolver","trace","creationTrace","scheduleResolveOrReject","readableObjectToString","REJECTION_HANDLED_HANDLER","splice","chainPromise","onFulfilled","onRejected","promiseState","forwardResolution","forwardRejection","parentPromiseValue","isFinallyPromise","AggregateError","static","ZONE_AWARE_PROMISE_TO_STRING","promises","finished","errors","res","rej","isThenable","onResolve","onReject","allWithCallback","thenCallback","status","errorCallback","reason","unresolvedCount","valueIndex","resolvedValues","curValueIndex","thenErr","executor","species","C","finally","onFinally","race","all","NativePromise","symbolThenPatched","Ctor","originalThen","wrapped","resultPromise","zoneify","originalFunctionToString","ORIGINAL_DELEGATE_SYMBOL","PROMISE_SYMBOL","ERROR_SYMBOL","newFunctionToString","originalDelegate","nativePromise","nativeError","originalObjectToString","passiveSupported","OPTIMIZED_ZONE_EVENT_TASK_DATA","zoneSymbolEventNames","globalSources","EVENT_NAME_SYMBOL_REGX","RegExp","IMMEDIATE_PROPAGATION_SYMBOL","eventNameToString","falseEventName","trueEventName","symbolCapture","apis","patchOptions","ADD_EVENT_LISTENER","add","REMOVE_EVENT_LISTENER","rm","LISTENERS_EVENT_LISTENER","listeners","REMOVE_ALL_LISTENERS_EVENT_LISTENER","rmAll","zoneSymbolAddEventListener","ADD_EVENT_LISTENER_SOURCE","isRemoved","handleEvent","isCapture","tasks","copyTasks","globalZoneAwareCallback","globalCallback","globalZoneAwareCaptureCallback","useGlobalCallback","validateHandler","vh","chkDup","returnTarget","rt","taskData","nativeAddEventListener","nativeRemoveEventListener","nativeListeners","nativeRemoveAllListeners","nativePrependEventListener","passive","capture","assign","prepend","isExisting","symbolEventNames","symbolEventName","existingTasks","existingTask","allRemoved","compare","diff","typeOfDelegate","unpatchedEvents","passiveEvents","makeAddListener","nativeListener","addSource","customScheduleFn","customCancelFn","transferEventName","isHandleEvent","buildEventListenerOptions","Ut","prepareEventNames","constructorName","targetSource","unshift","PREPEND_EVENT_LISTENER","H","findEventTasks","captureTasks","removeTasks","exec","evtName","results","patchEventTargetMethods","foundTasks","captureFalseTasks","captureTrueTasks","concat","Event","targetName","callbacks","nativeDelegate","opts","descriptor","ignoreProperties","tip","filter","ip","targetIgnoreProperties","op","startsWith","map","substring","eventNames","getOnEventNames","SYMBOL_BLACK_LISTED_EVENTS","SYMBOL_UNPATCHED_EVENTS","taskSymbol","setName","cancelName","nameSuffix","clearNative","tasksByHandleId","delay","clearTask","ref","unref","id","ct","legacyPatch","clear","patchTimer","blockingMethods","s","patchEvent","EVENT_TARGET","EventTarget","eventTargetPatch","XMLHttpRequestEventTarget","__Zone_ignore_on_properties","patchTargets","ignoreErrorProperties","isIE","patchFilteredProperties","propertyDescriptorPatch","customElements","patchCustomElements","XMLHttpRequest","XMLHttpRequestPrototype","oriAddListener","oriRemoveListener","XMLHttpRequestEventTargetPrototype","READY_STATE_CHANGE","SCHEDULED","XHR_SCHEDULED","XHR_ERROR_BEFORE_SCHEDULED","XHR_LISTENER","newListener","readyState","DONE","aborted","loadTasks","oriInvoke","storedTask","XHR_TASK","sendNative","abortNative","openNative","XHR_SYNC","XHR_URL","fetchTaskAborting","fetchTaskScheduling","url","placeholderCallback","findPendingTask","patchXHR","geolocation","fnNames","patchPrototype","PromiseRejectionEvent","evt","findPromiseRejectionHandler","t","c","l","o","b","N","D","I","includes","m","S","P","F","lt","tt","y","EXISTS","PROPER","CONFIGURABLE","p","Q","w","G","X","yt","R","enforce","getterFor","document","open","it","isPrototypeOf","propertyIsEnumerable","version","mode","copyright","license","String"],"sourceRoot":"webpack:///","sources":["./projects/client/src/polyfills.ts","./node_modules/regenerator-runtime/runtime.js","./node_modules/url-search-params-polyfill/index.js","./node_modules/zone.js/fesm2015/zone.js","./node_modules/core-js/internals/a-callable.js","./node_modules/core-js/internals/add-to-unscopables.js","./node_modules/core-js/internals/an-object.js","./node_modules/core-js/internals/array-includes.js","./node_modules/core-js/internals/classof-raw.js","./node_modules/core-js/internals/copy-constructor-properties.js","./node_modules/core-js/internals/create-non-enumerable-property.js","./node_modules/core-js/internals/create-property-descriptor.js","./node_modules/core-js/internals/descriptors.js","./node_modules/core-js/internals/document-create-element.js","./node_modules/core-js/internals/engine-user-agent.js","./node_modules/core-js/internals/engine-v8-version.js","./node_modules/core-js/internals/enum-bug-keys.js","./node_modules/core-js/internals/export.js","./node_modules/core-js/internals/fails.js","./node_modules/core-js/internals/function-bind-native.js","./node_modules/core-js/internals/function-call.js","./node_modules/core-js/internals/function-name.js","./node_modules/core-js/internals/function-uncurry-this.js","./node_modules/core-js/internals/get-built-in.js","./node_modules/core-js/internals/get-method.js","./node_modules/core-js/internals/global.js","./node_modules/core-js/internals/has-own-property.js","./node_modules/core-js/internals/hidden-keys.js","./node_modules/core-js/internals/html.js","./node_modules/core-js/internals/ie8-dom-define.js","./node_modules/core-js/internals/indexed-object.js","./node_modules/core-js/internals/inspect-source.js","./node_modules/core-js/internals/internal-state.js","./node_modules/core-js/internals/is-callable.js","./node_modules/core-js/internals/is-forced.js","./node_modules/core-js/internals/is-object.js","./node_modules/core-js/internals/is-pure.js","./node_modules/core-js/internals/is-symbol.js","./node_modules/core-js/internals/length-of-array-like.js","./node_modules/core-js/internals/native-symbol.js","./node_modules/core-js/internals/native-weak-map.js","./node_modules/core-js/internals/object-create.js","./node_modules/core-js/internals/object-define-properties.js","./node_modules/core-js/internals/object-define-property.js","./node_modules/core-js/internals/object-get-own-property-descriptor.js","./node_modules/core-js/internals/object-get-own-property-names.js","./node_modules/core-js/internals/object-get-own-property-symbols.js","./node_modules/core-js/internals/object-is-prototype-of.js","./node_modules/core-js/internals/object-keys-internal.js","./node_modules/core-js/internals/object-keys.js","./node_modules/core-js/internals/object-property-is-enumerable.js","./node_modules/core-js/internals/ordinary-to-primitive.js","./node_modules/core-js/internals/own-keys.js","./node_modules/core-js/internals/redefine.js","./node_modules/core-js/internals/require-object-coercible.js","./node_modules/core-js/internals/set-global.js","./node_modules/core-js/internals/shared-key.js","./node_modules/core-js/internals/shared-store.js","./node_modules/core-js/internals/shared.js","./node_modules/core-js/internals/to-absolute-index.js","./node_modules/core-js/internals/to-indexed-object.js","./node_modules/core-js/internals/to-integer-or-infinity.js","./node_modules/core-js/internals/to-length.js","./node_modules/core-js/internals/to-object.js","./node_modules/core-js/internals/to-primitive.js","./node_modules/core-js/internals/to-property-key.js","./node_modules/core-js/internals/try-to-string.js","./node_modules/core-js/internals/uid.js","./node_modules/core-js/internals/use-symbol-as-uid.js","./node_modules/core-js/internals/v8-prototype-define-bug.js","./node_modules/core-js/internals/well-known-symbol.js","./node_modules/core-js/modules/es.array.includes.js"],"sourcesContent":["import \"zone.js\"; // Included with Angular CLI.\n\nimport \"core-js/modules/es.array.includes\";\nimport \"url-search-params-polyfill\";\nimport regeneratorRuntime from \"regenerator-runtime\";\n\nwindow[\"regeneratorRuntime\"] = regeneratorRuntime;\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","/**\n *\n *\n * @author Jerry Bendy \n * @licence MIT\n *\n */\n\n(function(self) {\n 'use strict';\n\n var nativeURLSearchParams = (function() {\n // #41 Fix issue in RN\n try {\n if (self.URLSearchParams && (new self.URLSearchParams('foo=bar')).get('foo') === 'bar') {\n return self.URLSearchParams;\n }\n } catch (e) {}\n return null;\n })(),\n isSupportObjectConstructor = nativeURLSearchParams && (new nativeURLSearchParams({a: 1})).toString() === 'a=1',\n // There is a bug in safari 10.1 (and earlier) that incorrectly decodes `%2B` as an empty space and not a plus.\n decodesPlusesCorrectly = nativeURLSearchParams && (new nativeURLSearchParams('s=%2B').get('s') === '+'),\n __URLSearchParams__ = \"__URLSearchParams__\",\n // Fix bug in Edge which cannot encode ' &' correctly\n encodesAmpersandsCorrectly = nativeURLSearchParams ? (function() {\n var ampersandTest = new nativeURLSearchParams();\n ampersandTest.append('s', ' &');\n return ampersandTest.toString() === 's=+%26';\n })() : true,\n prototype = URLSearchParamsPolyfill.prototype,\n iterable = !!(self.Symbol && self.Symbol.iterator);\n\n if (nativeURLSearchParams && isSupportObjectConstructor && decodesPlusesCorrectly && encodesAmpersandsCorrectly) {\n return;\n }\n\n\n /**\n * Make a URLSearchParams instance\n *\n * @param {object|string|URLSearchParams} search\n * @constructor\n */\n function URLSearchParamsPolyfill(search) {\n search = search || \"\";\n\n // support construct object with another URLSearchParams instance\n if (search instanceof URLSearchParams || search instanceof URLSearchParamsPolyfill) {\n search = search.toString();\n }\n this [__URLSearchParams__] = parseToDict(search);\n }\n\n\n /**\n * Appends a specified key/value pair as a new search parameter.\n *\n * @param {string} name\n * @param {string} value\n */\n prototype.append = function(name, value) {\n appendTo(this [__URLSearchParams__], name, value);\n };\n\n /**\n * Deletes the given search parameter, and its associated value,\n * from the list of all search parameters.\n *\n * @param {string} name\n */\n prototype['delete'] = function(name) {\n delete this [__URLSearchParams__] [name];\n };\n\n /**\n * Returns the first value associated to the given search parameter.\n *\n * @param {string} name\n * @returns {string|null}\n */\n prototype.get = function(name) {\n var dict = this [__URLSearchParams__];\n return this.has(name) ? dict[name][0] : null;\n };\n\n /**\n * Returns all the values association with a given search parameter.\n *\n * @param {string} name\n * @returns {Array}\n */\n prototype.getAll = function(name) {\n var dict = this [__URLSearchParams__];\n return this.has(name) ? dict [name].slice(0) : [];\n };\n\n /**\n * Returns a Boolean indicating if such a search parameter exists.\n *\n * @param {string} name\n * @returns {boolean}\n */\n prototype.has = function(name) {\n return hasOwnProperty(this [__URLSearchParams__], name);\n };\n\n /**\n * Sets the value associated to a given search parameter to\n * the given value. If there were several values, delete the\n * others.\n *\n * @param {string} name\n * @param {string} value\n */\n prototype.set = function set(name, value) {\n this [__URLSearchParams__][name] = ['' + value];\n };\n\n /**\n * Returns a string containg a query string suitable for use in a URL.\n *\n * @returns {string}\n */\n prototype.toString = function() {\n var dict = this[__URLSearchParams__], query = [], i, key, name, value;\n for (key in dict) {\n name = encode(key);\n for (i = 0, value = dict[key]; i < value.length; i++) {\n query.push(name + '=' + encode(value[i]));\n }\n }\n return query.join('&');\n };\n\n // There is a bug in Safari 10.1 and `Proxy`ing it is not enough.\n var forSureUsePolyfill = !decodesPlusesCorrectly;\n var useProxy = (!forSureUsePolyfill && nativeURLSearchParams && !isSupportObjectConstructor && self.Proxy);\n var propValue; \n if (useProxy) {\n // Safari 10.0 doesn't support Proxy, so it won't extend URLSearchParams on safari 10.0\n propValue = new Proxy(nativeURLSearchParams, {\n construct: function (target, args) {\n return new target((new URLSearchParamsPolyfill(args[0]).toString()));\n }\n })\n // Chrome <=60 .toString() on a function proxy got error \"Function.prototype.toString is not generic\"\n propValue.toString = Function.prototype.toString.bind(URLSearchParamsPolyfill);\n } else {\n propValue = URLSearchParamsPolyfill;\n }\n /*\n * Apply polifill to global object and append other prototype into it\n */\n Object.defineProperty(self, 'URLSearchParams', {\n value: propValue\n });\n\n var USPProto = self.URLSearchParams.prototype;\n\n USPProto.polyfill = true;\n\n /**\n *\n * @param {function} callback\n * @param {object} thisArg\n */\n USPProto.forEach = USPProto.forEach || function(callback, thisArg) {\n var dict = parseToDict(this.toString());\n Object.getOwnPropertyNames(dict).forEach(function(name) {\n dict[name].forEach(function(value) {\n callback.call(thisArg, value, name, this);\n }, this);\n }, this);\n };\n\n /**\n * Sort all name-value pairs\n */\n USPProto.sort = USPProto.sort || function() {\n var dict = parseToDict(this.toString()), keys = [], k, i, j;\n for (k in dict) {\n keys.push(k);\n }\n keys.sort();\n\n for (i = 0; i < keys.length; i++) {\n this['delete'](keys[i]);\n }\n for (i = 0; i < keys.length; i++) {\n var key = keys[i], values = dict[key];\n for (j = 0; j < values.length; j++) {\n this.append(key, values[j]);\n }\n }\n };\n\n /**\n * Returns an iterator allowing to go through all keys of\n * the key/value pairs contained in this object.\n *\n * @returns {function}\n */\n USPProto.keys = USPProto.keys || function() {\n var items = [];\n this.forEach(function(item, name) {\n items.push(name);\n });\n return makeIterator(items);\n };\n\n /**\n * Returns an iterator allowing to go through all values of\n * the key/value pairs contained in this object.\n *\n * @returns {function}\n */\n USPProto.values = USPProto.values || function() {\n var items = [];\n this.forEach(function(item) {\n items.push(item);\n });\n return makeIterator(items);\n };\n\n /**\n * Returns an iterator allowing to go through all key/value\n * pairs contained in this object.\n *\n * @returns {function}\n */\n USPProto.entries = USPProto.entries || function() {\n var items = [];\n this.forEach(function(item, name) {\n items.push([name, item]);\n });\n return makeIterator(items);\n };\n\n\n if (iterable) {\n USPProto[self.Symbol.iterator] = USPProto[self.Symbol.iterator] || USPProto.entries;\n }\n\n\n function encode(str) {\n var replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'\\(\\)~]|%20|%00/g, function(match) {\n return replace[match];\n });\n }\n\n function decode(str) {\n return str\n .replace(/[ +]/g, '%20')\n .replace(/(%[a-f0-9]{2})+/ig, function(match) {\n return decodeURIComponent(match);\n });\n }\n\n function makeIterator(arr) {\n var iterator = {\n next: function() {\n var value = arr.shift();\n return {done: value === undefined, value: value};\n }\n };\n\n if (iterable) {\n iterator[self.Symbol.iterator] = function() {\n return iterator;\n };\n }\n\n return iterator;\n }\n\n function parseToDict(search) {\n var dict = {};\n\n if (typeof search === \"object\") {\n // if `search` is an array, treat it as a sequence\n if (isArray(search)) {\n for (var i = 0; i < search.length; i++) {\n var item = search[i];\n if (isArray(item) && item.length === 2) {\n appendTo(dict, item[0], item[1]);\n } else {\n throw new TypeError(\"Failed to construct 'URLSearchParams': Sequence initializer must only contain pair elements\");\n }\n }\n\n } else {\n for (var key in search) {\n if (search.hasOwnProperty(key)) {\n appendTo(dict, key, search[key]);\n }\n }\n }\n\n } else {\n // remove first '?'\n if (search.indexOf(\"?\") === 0) {\n search = search.slice(1);\n }\n\n var pairs = search.split(\"&\");\n for (var j = 0; j < pairs.length; j++) {\n var value = pairs [j],\n index = value.indexOf('=');\n\n if (-1 < index) {\n appendTo(dict, decode(value.slice(0, index)), decode(value.slice(index + 1)));\n\n } else {\n if (value) {\n appendTo(dict, decode(value), '');\n }\n }\n }\n }\n\n return dict;\n }\n\n function appendTo(dict, name, value) {\n var val = typeof value === 'string' ? value : (\n value !== null && value !== undefined && typeof value.toString === 'function' ? value.toString() : JSON.stringify(value)\n );\n\n // #47 Prevent using `hasOwnProperty` as a property name\n if (hasOwnProperty(dict, name)) {\n dict[name].push(val);\n } else {\n dict[name] = [val];\n }\n }\n\n function isArray(val) {\n return !!val && '[object Array]' === Object.prototype.toString.call(val);\n }\n\n function hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n }\n\n})(typeof global !== 'undefined' ? global : (typeof window !== 'undefined' ? window : this));\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","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar TypeError = global.TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw TypeError(tryToString(argument) + ' is not a function');\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar String = global.String;\nvar TypeError = global.TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw TypeError(String(argument) + ' is not an object');\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","var hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar bind = FunctionPrototype.bind;\nvar call = FunctionPrototype.call;\nvar uncurryThis = NATIVE_BIND && bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? function (fn) {\n return fn && uncurryThis(fn);\n} : function (fn) {\n return fn && function () {\n return call.apply(fn, arguments);\n };\n};\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","var aCallable = require('../internals/a-callable');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return func == null ? undefined : aCallable(func);\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","module.exports = {};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar Object = global.Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split(it, '') : Object(it);\n} : Object;\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = uncurryThis(store.get);\n var wmhas = uncurryThis(store.has);\n var wmset = uncurryThis(store.set);\n set = function (it, metadata) {\n if (wmhas(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget(store, it) || {};\n };\n has = function (it) {\n return wmhas(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = function (argument) {\n return typeof argument == 'function';\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","module.exports = false;\n","var global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Object = global.Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, Object(it));\n};\n","var toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n return !String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(inspectSource(WeakMap));\n","/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","var global = require('../internals/global');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar TypeError = global.TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","var global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar TypeError = global.TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var name = options && options.name !== undefined ? options.name : key;\n var state;\n if (isCallable(value)) {\n if (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n createNonEnumerableProperty(value, 'name', name);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof name == 'string' ? name : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n});\n","var global = require('../internals/global');\n\nvar TypeError = global.TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.20.3',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.20.3/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- safe\n return number !== number || number === 0 ? 0 : (number > 0 ? floor : ceil)(number);\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var global = require('../internals/global');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar Object = global.Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TypeError = global.TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","var toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","var global = require('../internals/global');\n\nvar String = global.String;\n\nmodule.exports = function (argument) {\n try {\n return String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype != 42;\n});\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar symbolFor = Symbol && Symbol['for'];\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n var description = 'Symbol.' + name;\n if (NATIVE_SYMBOL && hasOwn(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else if (USE_SYMBOL_AS_UID && symbolFor) {\n WellKnownSymbolsStore[name] = symbolFor(description);\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol(description);\n }\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n"]}