jekyll-theme-hydejack 9.1.1 → 9.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/body/breadcrumbs.html +10 -10
  3. data/_includes/body/footer.html +1 -1
  4. data/_includes/body/nav.html +1 -1
  5. data/_includes/body/scripts.html +2 -2
  6. data/_includes/components/dingbat.html +2 -8
  7. data/_includes/components/post.html +2 -2
  8. data/_includes/head/index.html +1 -1
  9. data/_includes/head/links-static.html +5 -2
  10. data/_includes/head/meta-static.html +1 -5
  11. data/_includes/head/meta.html +5 -1
  12. data/_includes/head/styles-inline.html +4 -2
  13. data/_includes/head/styles-no-inline.html +4 -2
  14. data/_includes/header.txt +1 -1
  15. data/_layouts/base.html +0 -5
  16. data/_layouts/compress.html +1 -1
  17. data/_layouts/list.html +1 -1
  18. data/_layouts/plain.html +1 -1
  19. data/_layouts/post.html +5 -0
  20. data/_sass/_tippy.scss +2 -1
  21. data/assets/css/{hydejack-9.1.1.css → hydejack-9.1.5.css} +0 -0
  22. data/assets/js/LEGACY-clap-button-hydejack-9.1.5.js +14 -0
  23. data/assets/js/LEGACY-drawer-hydejack-9.1.5.js +14 -0
  24. data/assets/js/{LEGACY-shadydom-hydejack-9.1.1.js → LEGACY-fetch-hydejack-9.1.5.js} +2 -2
  25. data/assets/js/LEGACY-hydejack-9.1.5.js +27 -0
  26. data/assets/js/LEGACY-navbar-hydejack-9.1.5.js +14 -0
  27. data/assets/js/LEGACY-push-state-hydejack-9.1.5.js +14 -0
  28. data/assets/js/LEGACY-resize-observer-hydejack-9.1.5.js +14 -0
  29. data/assets/js/{shadydom-hydejack-9.1.1.js → LEGACY-shadydom-hydejack-9.1.5.js} +2 -2
  30. data/assets/js/LEGACY-vendors~clap-button-hydejack-9.1.5.js +14 -0
  31. data/assets/js/LEGACY-vendors~drawer-hydejack-9.1.5.js +48 -0
  32. data/assets/js/LEGACY-vendors~drawer~push-state-hydejack-9.1.5.js +214 -0
  33. data/assets/js/LEGACY-vendors~fetch-hydejack-9.1.5.js +14 -0
  34. data/assets/js/{LEGACY-vendors~intersection-observer-hydejack-9.1.1.js → LEGACY-vendors~intersection-observer-hydejack-9.1.5.js} +2 -2
  35. data/assets/js/LEGACY-vendors~push-state-hydejack-9.1.5.js +34 -0
  36. data/assets/js/LEGACY-vendors~shadydom-hydejack-9.1.5.js +155 -0
  37. data/assets/js/{LEGACY-vendors~webanimations-hydejack-9.1.1.js → LEGACY-vendors~webanimations-hydejack-9.1.5.js} +2 -2
  38. data/assets/js/LEGACY-vendors~webcomponents-hydejack-9.1.5.js +34 -0
  39. data/assets/js/{LEGACY-webcomponents-hydejack-9.1.1.js → LEGACY-webcomponents-hydejack-9.1.5.js} +2 -2
  40. data/assets/js/clap-button-hydejack-9.1.5.js +14 -0
  41. data/assets/js/drawer-hydejack-9.1.5.js +14 -0
  42. data/assets/js/{fetch-hydejack-9.1.1.js → fetch-hydejack-9.1.5.js} +2 -2
  43. data/assets/js/hydejack-9.1.5.js +28 -0
  44. data/assets/js/navbar-hydejack-9.1.5.js +14 -0
  45. data/assets/js/push-state-hydejack-9.1.5.js +14 -0
  46. data/assets/js/resize-observer-hydejack-9.1.5.js +14 -0
  47. data/assets/js/{LEGACY-fetch-hydejack-9.1.1.js → shadydom-hydejack-9.1.5.js} +2 -2
  48. data/assets/js/vendors~clap-button-hydejack-9.1.5.js +14 -0
  49. data/assets/js/vendors~drawer-hydejack-9.1.5.js +48 -0
  50. data/assets/js/{vendors~drawer~push-state-hydejack-9.1.1.js → vendors~drawer~push-state-hydejack-9.1.5.js} +12 -12
  51. data/assets/js/vendors~fetch-hydejack-9.1.5.js +14 -0
  52. data/assets/js/{vendors~intersection-observer-hydejack-9.1.1.js → vendors~intersection-observer-hydejack-9.1.5.js} +2 -2
  53. data/assets/js/vendors~push-state-hydejack-9.1.5.js +34 -0
  54. data/assets/js/vendors~shadydom-hydejack-9.1.5.js +146 -0
  55. data/assets/js/{vendors~webanimations-hydejack-9.1.1.js → vendors~webanimations-hydejack-9.1.5.js} +2 -2
  56. data/assets/js/{webcomponents-hydejack-9.1.1.js → webcomponents-hydejack-9.1.5.js} +2 -2
  57. data/assets/version.json +2 -2
  58. metadata +44 -48
  59. data/assets/js/LEGACY-clap-button-hydejack-9.1.1.js +0 -14
  60. data/assets/js/LEGACY-drawer-hydejack-9.1.1.js +0 -14
  61. data/assets/js/LEGACY-hydejack-9.1.0.js +0 -28796
  62. data/assets/js/LEGACY-hydejack-9.1.0.js.map +0 -1
  63. data/assets/js/LEGACY-hydejack-9.1.1.js +0 -27
  64. data/assets/js/LEGACY-navbar-hydejack-9.1.1.js +0 -14
  65. data/assets/js/LEGACY-push-state-hydejack-9.1.1.js +0 -14
  66. data/assets/js/LEGACY-resize-observer-hydejack-9.1.1.js +0 -14
  67. data/assets/js/LEGACY-vendors~clap-button-hydejack-9.1.1.js +0 -182
  68. data/assets/js/LEGACY-vendors~drawer-hydejack-9.1.1.js +0 -48
  69. data/assets/js/LEGACY-vendors~drawer~push-state-hydejack-9.1.1.js +0 -214
  70. data/assets/js/LEGACY-vendors~fetch-hydejack-9.1.1.js +0 -14
  71. data/assets/js/LEGACY-vendors~push-state-hydejack-9.1.1.js +0 -34
  72. data/assets/js/LEGACY-vendors~shadydom-hydejack-9.1.1.js +0 -155
  73. data/assets/js/LEGACY-vendors~webcomponents-hydejack-9.1.1.js +0 -34
  74. data/assets/js/clap-button-hydejack-9.1.1.js +0 -14
  75. data/assets/js/drawer-hydejack-9.1.1.js +0 -14
  76. data/assets/js/hydejack-9.1.0.js +0 -20723
  77. data/assets/js/hydejack-9.1.0.js.map +0 -1
  78. data/assets/js/hydejack-9.1.1.js +0 -28
  79. data/assets/js/navbar-hydejack-9.1.1.js +0 -14
  80. data/assets/js/push-state-hydejack-9.1.1.js +0 -14
  81. data/assets/js/resize-observer-hydejack-9.1.1.js +0 -14
  82. data/assets/js/vendors~clap-button-hydejack-9.1.1.js +0 -222
  83. data/assets/js/vendors~drawer-hydejack-9.1.1.js +0 -48
  84. data/assets/js/vendors~fetch-hydejack-9.1.1.js +0 -14
  85. data/assets/js/vendors~push-state-hydejack-9.1.1.js +0 -34
  86. data/assets/js/vendors~shadydom-hydejack-9.1.1.js +0 -146
@@ -1 +0,0 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./_js/lib/modernizr-custom.js","webpack:///./_js/lib/version.js","webpack:///./_js/src/common.js","webpack:///./_js/src/entry.js","webpack:///./_js/src/upgrades.js","webpack:///../src/creators.ts","webpack:///../src/observers.ts","webpack:///../src/operators.ts","webpack:///../src/util.ts","webpack:///./node_modules/@popperjs/core/lib/createPopper.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/contains.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getWindow.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","webpack:///./node_modules/@popperjs/core/lib/enums.js","webpack:///./node_modules/@popperjs/core/lib/index.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/applyStyles.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/arrow.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/computeStyles.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/eventListeners.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/flip.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/hide.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/index.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/offset.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","webpack:///./node_modules/@popperjs/core/lib/popper-lite.js","webpack:///./node_modules/@popperjs/core/lib/popper.js","webpack:///./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","webpack:///./node_modules/@popperjs/core/lib/utils/computeOffsets.js","webpack:///./node_modules/@popperjs/core/lib/utils/debounce.js","webpack:///./node_modules/@popperjs/core/lib/utils/detectOverflow.js","webpack:///./node_modules/@popperjs/core/lib/utils/expandToHashMap.js","webpack:///./node_modules/@popperjs/core/lib/utils/format.js","webpack:///./node_modules/@popperjs/core/lib/utils/getAltAxis.js","webpack:///./node_modules/@popperjs/core/lib/utils/getBasePlacement.js","webpack:///./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","webpack:///./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","webpack:///./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","webpack:///./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","webpack:///./node_modules/@popperjs/core/lib/utils/getVariation.js","webpack:///./node_modules/@popperjs/core/lib/utils/mergeByName.js","webpack:///./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","webpack:///./node_modules/@popperjs/core/lib/utils/orderModifiers.js","webpack:///./node_modules/@popperjs/core/lib/utils/rectToClientRect.js","webpack:///./node_modules/@popperjs/core/lib/utils/uniqueBy.js","webpack:///./node_modules/@popperjs/core/lib/utils/validateModifiers.js","webpack:///./node_modules/@popperjs/core/lib/utils/within.js","webpack:///./node_modules/core-js/modules/_a-function.js","webpack:///./node_modules/core-js/modules/_add-to-unscopables.js","webpack:///./node_modules/core-js/modules/_advance-string-index.js","webpack:///./node_modules/core-js/modules/_an-instance.js","webpack:///./node_modules/core-js/modules/_an-object.js","webpack:///./node_modules/core-js/modules/_array-copy-within.js","webpack:///./node_modules/core-js/modules/_array-fill.js","webpack:///./node_modules/core-js/modules/_array-includes.js","webpack:///./node_modules/core-js/modules/_array-methods.js","webpack:///./node_modules/core-js/modules/_array-species-constructor.js","webpack:///./node_modules/core-js/modules/_array-species-create.js","webpack:///./node_modules/core-js/modules/_bind.js","webpack:///./node_modules/core-js/modules/_classof.js","webpack:///./node_modules/core-js/modules/_cof.js","webpack:///./node_modules/core-js/modules/_collection-strong.js","webpack:///./node_modules/core-js/modules/_collection-weak.js","webpack:///./node_modules/core-js/modules/_collection.js","webpack:///./node_modules/core-js/modules/_core.js","webpack:///./node_modules/core-js/modules/_create-property.js","webpack:///./node_modules/core-js/modules/_ctx.js","webpack:///./node_modules/core-js/modules/_date-to-primitive.js","webpack:///./node_modules/core-js/modules/_defined.js","webpack:///./node_modules/core-js/modules/_descriptors.js","webpack:///./node_modules/core-js/modules/_dom-create.js","webpack:///./node_modules/core-js/modules/_enum-bug-keys.js","webpack:///./node_modules/core-js/modules/_enum-keys.js","webpack:///./node_modules/core-js/modules/_export.js","webpack:///./node_modules/core-js/modules/_fails-is-regexp.js","webpack:///./node_modules/core-js/modules/_fails.js","webpack:///./node_modules/core-js/modules/_fix-re-wks.js","webpack:///./node_modules/core-js/modules/_flags.js","webpack:///./node_modules/core-js/modules/_flatten-into-array.js","webpack:///./node_modules/core-js/modules/_for-of.js","webpack:///./node_modules/core-js/modules/_function-to-string.js","webpack:///./node_modules/core-js/modules/_global.js","webpack:///./node_modules/core-js/modules/_has.js","webpack:///./node_modules/core-js/modules/_hide.js","webpack:///./node_modules/core-js/modules/_html.js","webpack:///./node_modules/core-js/modules/_ie8-dom-define.js","webpack:///./node_modules/core-js/modules/_inherit-if-required.js","webpack:///./node_modules/core-js/modules/_invoke.js","webpack:///./node_modules/core-js/modules/_iobject.js","webpack:///./node_modules/core-js/modules/_is-array-iter.js","webpack:///./node_modules/core-js/modules/_is-array.js","webpack:///./node_modules/core-js/modules/_is-integer.js","webpack:///./node_modules/core-js/modules/_is-object.js","webpack:///./node_modules/core-js/modules/_is-regexp.js","webpack:///./node_modules/core-js/modules/_iter-call.js","webpack:///./node_modules/core-js/modules/_iter-create.js","webpack:///./node_modules/core-js/modules/_iter-define.js","webpack:///./node_modules/core-js/modules/_iter-detect.js","webpack:///./node_modules/core-js/modules/_iter-step.js","webpack:///./node_modules/core-js/modules/_iterators.js","webpack:///./node_modules/core-js/modules/_library.js","webpack:///./node_modules/core-js/modules/_math-expm1.js","webpack:///./node_modules/core-js/modules/_math-fround.js","webpack:///./node_modules/core-js/modules/_math-log1p.js","webpack:///./node_modules/core-js/modules/_math-sign.js","webpack:///./node_modules/core-js/modules/_meta.js","webpack:///./node_modules/core-js/modules/_microtask.js","webpack:///./node_modules/core-js/modules/_new-promise-capability.js","webpack:///./node_modules/core-js/modules/_object-assign.js","webpack:///./node_modules/core-js/modules/_object-create.js","webpack:///./node_modules/core-js/modules/_object-dp.js","webpack:///./node_modules/core-js/modules/_object-dps.js","webpack:///./node_modules/core-js/modules/_object-forced-pam.js","webpack:///./node_modules/core-js/modules/_object-gopd.js","webpack:///./node_modules/core-js/modules/_object-gopn-ext.js","webpack:///./node_modules/core-js/modules/_object-gopn.js","webpack:///./node_modules/core-js/modules/_object-gops.js","webpack:///./node_modules/core-js/modules/_object-gpo.js","webpack:///./node_modules/core-js/modules/_object-keys-internal.js","webpack:///./node_modules/core-js/modules/_object-keys.js","webpack:///./node_modules/core-js/modules/_object-pie.js","webpack:///./node_modules/core-js/modules/_object-sap.js","webpack:///./node_modules/core-js/modules/_object-to-array.js","webpack:///./node_modules/core-js/modules/_own-keys.js","webpack:///./node_modules/core-js/modules/_parse-float.js","webpack:///./node_modules/core-js/modules/_parse-int.js","webpack:///./node_modules/core-js/modules/_perform.js","webpack:///./node_modules/core-js/modules/_promise-resolve.js","webpack:///./node_modules/core-js/modules/_property-desc.js","webpack:///./node_modules/core-js/modules/_redefine-all.js","webpack:///./node_modules/core-js/modules/_redefine.js","webpack:///./node_modules/core-js/modules/_regexp-exec-abstract.js","webpack:///./node_modules/core-js/modules/_regexp-exec.js","webpack:///./node_modules/core-js/modules/_same-value.js","webpack:///./node_modules/core-js/modules/_set-proto.js","webpack:///./node_modules/core-js/modules/_set-species.js","webpack:///./node_modules/core-js/modules/_set-to-string-tag.js","webpack:///./node_modules/core-js/modules/_shared-key.js","webpack:///./node_modules/core-js/modules/_shared.js","webpack:///./node_modules/core-js/modules/_species-constructor.js","webpack:///./node_modules/core-js/modules/_string-at.js","webpack:///./node_modules/core-js/modules/_string-context.js","webpack:///./node_modules/core-js/modules/_string-html.js","webpack:///./node_modules/core-js/modules/_string-pad.js","webpack:///./node_modules/core-js/modules/_string-repeat.js","webpack:///./node_modules/core-js/modules/_string-trim.js","webpack:///./node_modules/core-js/modules/_string-ws.js","webpack:///./node_modules/core-js/modules/_task.js","webpack:///./node_modules/core-js/modules/_to-absolute-index.js","webpack:///./node_modules/core-js/modules/_to-index.js","webpack:///./node_modules/core-js/modules/_to-integer.js","webpack:///./node_modules/core-js/modules/_to-iobject.js","webpack:///./node_modules/core-js/modules/_to-length.js","webpack:///./node_modules/core-js/modules/_to-object.js","webpack:///./node_modules/core-js/modules/_to-primitive.js","webpack:///./node_modules/core-js/modules/_typed-array.js","webpack:///./node_modules/core-js/modules/_typed-buffer.js","webpack:///./node_modules/core-js/modules/_typed.js","webpack:///./node_modules/core-js/modules/_uid.js","webpack:///./node_modules/core-js/modules/_user-agent.js","webpack:///./node_modules/core-js/modules/_validate-collection.js","webpack:///./node_modules/core-js/modules/_wks-define.js","webpack:///./node_modules/core-js/modules/_wks-ext.js","webpack:///./node_modules/core-js/modules/_wks.js","webpack:///./node_modules/core-js/modules/core.get-iterator-method.js","webpack:///./node_modules/core-js/modules/es6.array.copy-within.js","webpack:///./node_modules/core-js/modules/es6.array.fill.js","webpack:///./node_modules/core-js/modules/es6.array.find-index.js","webpack:///./node_modules/core-js/modules/es6.array.find.js","webpack:///./node_modules/core-js/modules/es6.array.from.js","webpack:///./node_modules/core-js/modules/es6.array.iterator.js","webpack:///./node_modules/core-js/modules/es6.array.of.js","webpack:///./node_modules/core-js/modules/es6.array.species.js","webpack:///./node_modules/core-js/modules/es6.date.to-primitive.js","webpack:///./node_modules/core-js/modules/es6.function.has-instance.js","webpack:///./node_modules/core-js/modules/es6.function.name.js","webpack:///./node_modules/core-js/modules/es6.map.js","webpack:///./node_modules/core-js/modules/es6.math.acosh.js","webpack:///./node_modules/core-js/modules/es6.math.asinh.js","webpack:///./node_modules/core-js/modules/es6.math.atanh.js","webpack:///./node_modules/core-js/modules/es6.math.cbrt.js","webpack:///./node_modules/core-js/modules/es6.math.clz32.js","webpack:///./node_modules/core-js/modules/es6.math.cosh.js","webpack:///./node_modules/core-js/modules/es6.math.expm1.js","webpack:///./node_modules/core-js/modules/es6.math.fround.js","webpack:///./node_modules/core-js/modules/es6.math.hypot.js","webpack:///./node_modules/core-js/modules/es6.math.imul.js","webpack:///./node_modules/core-js/modules/es6.math.log10.js","webpack:///./node_modules/core-js/modules/es6.math.log1p.js","webpack:///./node_modules/core-js/modules/es6.math.log2.js","webpack:///./node_modules/core-js/modules/es6.math.sign.js","webpack:///./node_modules/core-js/modules/es6.math.sinh.js","webpack:///./node_modules/core-js/modules/es6.math.tanh.js","webpack:///./node_modules/core-js/modules/es6.math.trunc.js","webpack:///./node_modules/core-js/modules/es6.number.constructor.js","webpack:///./node_modules/core-js/modules/es6.number.epsilon.js","webpack:///./node_modules/core-js/modules/es6.number.is-finite.js","webpack:///./node_modules/core-js/modules/es6.number.is-integer.js","webpack:///./node_modules/core-js/modules/es6.number.is-nan.js","webpack:///./node_modules/core-js/modules/es6.number.is-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.max-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.min-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.parse-float.js","webpack:///./node_modules/core-js/modules/es6.number.parse-int.js","webpack:///./node_modules/core-js/modules/es6.object.assign.js","webpack:///./node_modules/core-js/modules/es6.object.freeze.js","webpack:///./node_modules/core-js/modules/es6.object.get-own-property-descriptor.js","webpack:///./node_modules/core-js/modules/es6.object.get-own-property-names.js","webpack:///./node_modules/core-js/modules/es6.object.get-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.object.is-extensible.js","webpack:///./node_modules/core-js/modules/es6.object.is-frozen.js","webpack:///./node_modules/core-js/modules/es6.object.is-sealed.js","webpack:///./node_modules/core-js/modules/es6.object.is.js","webpack:///./node_modules/core-js/modules/es6.object.keys.js","webpack:///./node_modules/core-js/modules/es6.object.prevent-extensions.js","webpack:///./node_modules/core-js/modules/es6.object.seal.js","webpack:///./node_modules/core-js/modules/es6.object.to-string.js","webpack:///./node_modules/core-js/modules/es6.promise.js","webpack:///./node_modules/core-js/modules/es6.reflect.apply.js","webpack:///./node_modules/core-js/modules/es6.reflect.construct.js","webpack:///./node_modules/core-js/modules/es6.reflect.define-property.js","webpack:///./node_modules/core-js/modules/es6.reflect.delete-property.js","webpack:///./node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js","webpack:///./node_modules/core-js/modules/es6.reflect.get-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.reflect.get.js","webpack:///./node_modules/core-js/modules/es6.reflect.has.js","webpack:///./node_modules/core-js/modules/es6.reflect.is-extensible.js","webpack:///./node_modules/core-js/modules/es6.reflect.own-keys.js","webpack:///./node_modules/core-js/modules/es6.reflect.prevent-extensions.js","webpack:///./node_modules/core-js/modules/es6.reflect.set-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.reflect.set.js","webpack:///./node_modules/core-js/modules/es6.regexp.constructor.js","webpack:///./node_modules/core-js/modules/es6.regexp.exec.js","webpack:///./node_modules/core-js/modules/es6.regexp.flags.js","webpack:///./node_modules/core-js/modules/es6.regexp.match.js","webpack:///./node_modules/core-js/modules/es6.regexp.replace.js","webpack:///./node_modules/core-js/modules/es6.regexp.search.js","webpack:///./node_modules/core-js/modules/es6.regexp.split.js","webpack:///./node_modules/core-js/modules/es6.regexp.to-string.js","webpack:///./node_modules/core-js/modules/es6.set.js","webpack:///./node_modules/core-js/modules/es6.string.anchor.js","webpack:///./node_modules/core-js/modules/es6.string.big.js","webpack:///./node_modules/core-js/modules/es6.string.blink.js","webpack:///./node_modules/core-js/modules/es6.string.bold.js","webpack:///./node_modules/core-js/modules/es6.string.code-point-at.js","webpack:///./node_modules/core-js/modules/es6.string.ends-with.js","webpack:///./node_modules/core-js/modules/es6.string.fixed.js","webpack:///./node_modules/core-js/modules/es6.string.fontcolor.js","webpack:///./node_modules/core-js/modules/es6.string.fontsize.js","webpack:///./node_modules/core-js/modules/es6.string.from-code-point.js","webpack:///./node_modules/core-js/modules/es6.string.includes.js","webpack:///./node_modules/core-js/modules/es6.string.italics.js","webpack:///./node_modules/core-js/modules/es6.string.iterator.js","webpack:///./node_modules/core-js/modules/es6.string.link.js","webpack:///./node_modules/core-js/modules/es6.string.raw.js","webpack:///./node_modules/core-js/modules/es6.string.repeat.js","webpack:///./node_modules/core-js/modules/es6.string.small.js","webpack:///./node_modules/core-js/modules/es6.string.starts-with.js","webpack:///./node_modules/core-js/modules/es6.string.strike.js","webpack:///./node_modules/core-js/modules/es6.string.sub.js","webpack:///./node_modules/core-js/modules/es6.string.sup.js","webpack:///./node_modules/core-js/modules/es6.symbol.js","webpack:///./node_modules/core-js/modules/es6.typed.array-buffer.js","webpack:///./node_modules/core-js/modules/es6.typed.float32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.float64-array.js","webpack:///./node_modules/core-js/modules/es6.typed.int16-array.js","webpack:///./node_modules/core-js/modules/es6.typed.int32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.int8-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint16-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint8-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint8-clamped-array.js","webpack:///./node_modules/core-js/modules/es6.weak-map.js","webpack:///./node_modules/core-js/modules/es6.weak-set.js","webpack:///./node_modules/core-js/modules/es7.array.flat-map.js","webpack:///./node_modules/core-js/modules/es7.array.includes.js","webpack:///./node_modules/core-js/modules/es7.object.define-getter.js","webpack:///./node_modules/core-js/modules/es7.object.define-setter.js","webpack:///./node_modules/core-js/modules/es7.object.entries.js","webpack:///./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js","webpack:///./node_modules/core-js/modules/es7.object.lookup-getter.js","webpack:///./node_modules/core-js/modules/es7.object.lookup-setter.js","webpack:///./node_modules/core-js/modules/es7.object.values.js","webpack:///./node_modules/core-js/modules/es7.promise.finally.js","webpack:///./node_modules/core-js/modules/es7.string.pad-end.js","webpack:///./node_modules/core-js/modules/es7.string.pad-start.js","webpack:///./node_modules/core-js/modules/es7.string.trim-left.js","webpack:///./node_modules/core-js/modules/es7.string.trim-right.js","webpack:///./node_modules/core-js/modules/es7.symbol.async-iterator.js","webpack:///./node_modules/core-js/modules/web.dom.iterable.js","webpack:///./node_modules/core-js/modules/web.immediate.js","webpack:///./node_modules/core-js/modules/web.timers.js","webpack:///./node_modules/create-element-x/factory.js","webpack:///./node_modules/create-element-x/library.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///../../src/index.ts","webpack:///../../../src/internal/AsyncSubject.ts","webpack:///../../../src/internal/BehaviorSubject.ts","webpack:///../../../src/internal/Notification.ts","webpack:///../../../src/internal/NotificationFactories.ts","webpack:///../../../src/internal/Observable.ts","webpack:///../../../src/internal/ReplaySubject.ts","webpack:///../../../src/internal/Scheduler.ts","webpack:///../../../src/internal/Subject.ts","webpack:///../../../src/internal/Subscriber.ts","webpack:///../../../src/internal/Subscription.ts","webpack:///../../../src/internal/config.ts","webpack:///../../../src/internal/firstValueFrom.ts","webpack:///../../../src/internal/lastValueFrom.ts","webpack:///../../../../src/internal/observable/ConnectableObservable.ts","webpack:///../../../../src/internal/observable/bindCallback.ts","webpack:///../../../../src/internal/observable/bindCallbackInternals.ts","webpack:///../../../../src/internal/observable/bindNodeCallback.ts","webpack:///../../../../src/internal/observable/combineLatest.ts","webpack:///../../../../src/internal/observable/concat.ts","webpack:///../../../../src/internal/observable/defer.ts","webpack:///../../../../../src/internal/observable/dom/animationFrames.ts","webpack:///../../../../src/internal/observable/empty.ts","webpack:///../../../../src/internal/observable/forkJoin.ts","webpack:///../../../../src/internal/observable/from.ts","webpack:///../../../../src/internal/observable/fromArray.ts","webpack:///../../../../src/internal/observable/fromEvent.ts","webpack:///../../../../src/internal/observable/fromEventPattern.ts","webpack:///../../../../src/internal/observable/generate.ts","webpack:///../../../../src/internal/observable/iif.ts","webpack:///../../../../src/internal/observable/interval.ts","webpack:///../../../../src/internal/observable/merge.ts","webpack:///../../../../src/internal/observable/never.ts","webpack:///../../../../src/internal/observable/of.ts","webpack:///../../../../src/internal/observable/onErrorResumeNext.ts","webpack:///../../../../src/internal/observable/pairs.ts","webpack:///../../../../src/internal/observable/partition.ts","webpack:///../../../../src/internal/observable/race.ts","webpack:///../../../../src/internal/observable/range.ts","webpack:///../../../../src/internal/observable/throwError.ts","webpack:///../../../../src/internal/observable/timer.ts","webpack:///../../../../src/internal/observable/using.ts","webpack:///../../../../src/internal/observable/zip.ts","webpack:///../../../../src/internal/operators/OperatorSubscriber.ts","webpack:///../../../../src/internal/operators/audit.ts","webpack:///../../../../src/internal/operators/auditTime.ts","webpack:///../../../../src/internal/operators/buffer.ts","webpack:///../../../../src/internal/operators/bufferCount.ts","webpack:///../../../../src/internal/operators/bufferTime.ts","webpack:///../../../../src/internal/operators/bufferToggle.ts","webpack:///../../../../src/internal/operators/bufferWhen.ts","webpack:///../../../../src/internal/operators/catchError.ts","webpack:///../../../../src/internal/operators/combineAll.ts","webpack:///../../../../src/internal/operators/combineLatestWith.ts","webpack:///../../../../src/internal/operators/concatAll.ts","webpack:///../../../../src/internal/operators/concatMap.ts","webpack:///../../../../src/internal/operators/concatMapTo.ts","webpack:///../../../../src/internal/operators/concatWith.ts","webpack:///../../../../src/internal/operators/count.ts","webpack:///../../../../src/internal/operators/debounce.ts","webpack:///../../../../src/internal/operators/debounceTime.ts","webpack:///../../../../src/internal/operators/defaultIfEmpty.ts","webpack:///../../../../src/internal/operators/delay.ts","webpack:///../../../../src/internal/operators/delayWhen.ts","webpack:///../../../../src/internal/operators/dematerialize.ts","webpack:///../../../../src/internal/operators/distinct.ts","webpack:///../../../../src/internal/operators/distinctUntilChanged.ts","webpack:///../../../../src/internal/operators/distinctUntilKeyChanged.ts","webpack:///../../../../src/internal/operators/elementAt.ts","webpack:///../../../../src/internal/operators/endWith.ts","webpack:///../../../../src/internal/operators/every.ts","webpack:///../../../../src/internal/operators/exhaust.ts","webpack:///../../../../src/internal/operators/exhaustMap.ts","webpack:///../../../../src/internal/operators/expand.ts","webpack:///../../../../src/internal/operators/filter.ts","webpack:///../../../../src/internal/operators/finalize.ts","webpack:///../../../../src/internal/operators/find.ts","webpack:///../../../../src/internal/operators/findIndex.ts","webpack:///../../../../src/internal/operators/first.ts","webpack:///../../../../src/internal/operators/groupBy.ts","webpack:///../../../../src/internal/operators/ignoreElements.ts","webpack:///../../../../src/internal/operators/isEmpty.ts","webpack:///../../../../src/internal/operators/joinAllInternals.ts","webpack:///../../../../src/internal/operators/last.ts","webpack:///../../../../src/internal/operators/map.ts","webpack:///../../../../src/internal/operators/mapTo.ts","webpack:///../../../../src/internal/operators/materialize.ts","webpack:///../../../../src/internal/operators/max.ts","webpack:///../../../../src/internal/operators/mergeAll.ts","webpack:///../../../../src/internal/operators/mergeInternals.ts","webpack:///../../../../src/internal/operators/mergeMap.ts","webpack:///../../../../src/internal/operators/mergeMapTo.ts","webpack:///../../../../src/internal/operators/mergeScan.ts","webpack:///../../../../src/internal/operators/mergeWith.ts","webpack:///../../../../src/internal/operators/min.ts","webpack:///../../../../src/internal/operators/multicast.ts","webpack:///../../../../src/internal/operators/observeOn.ts","webpack:///../../../../src/internal/operators/onErrorResumeNext.ts","webpack:///../../../../src/internal/operators/pairwise.ts","webpack:///../../../../src/internal/operators/partition.ts","webpack:///../../../../src/internal/operators/pluck.ts","webpack:///../../../../src/internal/operators/publish.ts","webpack:///../../../../src/internal/operators/publishBehavior.ts","webpack:///../../../../src/internal/operators/publishLast.ts","webpack:///../../../../src/internal/operators/publishReplay.ts","webpack:///../../../../src/internal/operators/raceWith.ts","webpack:///../../../../src/internal/operators/reduce.ts","webpack:///../../../../src/internal/operators/refCount.ts","webpack:///../../../../src/internal/operators/repeat.ts","webpack:///../../../../src/internal/operators/repeatWhen.ts","webpack:///../../../../src/internal/operators/retry.ts","webpack:///../../../../src/internal/operators/retryWhen.ts","webpack:///../../../../src/internal/operators/sample.ts","webpack:///../../../../src/internal/operators/sampleTime.ts","webpack:///../../../../src/internal/operators/scan.ts","webpack:///../../../../src/internal/operators/scanInternals.ts","webpack:///../../../../src/internal/operators/sequenceEqual.ts","webpack:///../../../../src/internal/operators/share.ts","webpack:///../../../../src/internal/operators/shareReplay.ts","webpack:///../../../../src/internal/operators/single.ts","webpack:///../../../../src/internal/operators/skip.ts","webpack:///../../../../src/internal/operators/skipLast.ts","webpack:///../../../../src/internal/operators/skipUntil.ts","webpack:///../../../../src/internal/operators/skipWhile.ts","webpack:///../../../../src/internal/operators/startWith.ts","webpack:///../../../../src/internal/operators/subscribeOn.ts","webpack:///../../../../src/internal/operators/switchAll.ts","webpack:///../../../../src/internal/operators/switchMap.ts","webpack:///../../../../src/internal/operators/switchMapTo.ts","webpack:///../../../../src/internal/operators/switchScan.ts","webpack:///../../../../src/internal/operators/take.ts","webpack:///../../../../src/internal/operators/takeLast.ts","webpack:///../../../../src/internal/operators/takeUntil.ts","webpack:///../../../../src/internal/operators/takeWhile.ts","webpack:///../../../../src/internal/operators/tap.ts","webpack:///../../../../src/internal/operators/throttle.ts","webpack:///../../../../src/internal/operators/throttleTime.ts","webpack:///../../../../src/internal/operators/throwIfEmpty.ts","webpack:///../../../../src/internal/operators/timeInterval.ts","webpack:///../../../../src/internal/operators/timeout.ts","webpack:///../../../../src/internal/operators/timeoutWith.ts","webpack:///../../../../src/internal/operators/timestamp.ts","webpack:///../../../../src/internal/operators/toArray.ts","webpack:///../../../../src/internal/operators/window.ts","webpack:///../../../../src/internal/operators/windowCount.ts","webpack:///../../../../src/internal/operators/windowTime.ts","webpack:///../../../../src/internal/operators/windowToggle.ts","webpack:///../../../../src/internal/operators/windowWhen.ts","webpack:///../../../../src/internal/operators/withLatestFrom.ts","webpack:///../../../../src/internal/operators/zipAll.ts","webpack:///../../../../src/internal/operators/zipWith.ts","webpack:///../../../../src/internal/scheduled/scheduleArray.ts","webpack:///../../../../src/internal/scheduled/scheduleAsyncIterable.ts","webpack:///../../../../src/internal/scheduled/scheduleIterable.ts","webpack:///../../../../src/internal/scheduled/scheduleObservable.ts","webpack:///../../../../src/internal/scheduled/schedulePromise.ts","webpack:///../../../../src/internal/scheduled/scheduled.ts","webpack:///../../../../src/internal/scheduler/Action.ts","webpack:///../../../../src/internal/scheduler/AnimationFrameAction.ts","webpack:///../../../../src/internal/scheduler/AnimationFrameScheduler.ts","webpack:///../../../../src/internal/scheduler/AsapAction.ts","webpack:///../../../../src/internal/scheduler/AsapScheduler.ts","webpack:///../../../../src/internal/scheduler/AsyncAction.ts","webpack:///../../../../src/internal/scheduler/AsyncScheduler.ts","webpack:///../../../../src/internal/scheduler/QueueAction.ts","webpack:///../../../../src/internal/scheduler/QueueScheduler.ts","webpack:///../../../../src/internal/scheduler/VirtualTimeScheduler.ts","webpack:///../../../../src/internal/scheduler/animationFrame.ts","webpack:///../../../../src/internal/scheduler/animationFrameProvider.ts","webpack:///../../../../src/internal/scheduler/asap.ts","webpack:///../../../../src/internal/scheduler/async.ts","webpack:///../../../../src/internal/scheduler/dateTimestampProvider.ts","webpack:///../../../../src/internal/scheduler/immediateProvider.ts","webpack:///../../../../src/internal/scheduler/intervalProvider.ts","webpack:///../../../../src/internal/scheduler/performanceTimestampProvider.ts","webpack:///../../../../src/internal/scheduler/queue.ts","webpack:///../../../../src/internal/scheduler/timeoutProvider.ts","webpack:///../../../../src/internal/symbol/iterator.ts","webpack:///../../../../src/internal/symbol/observable.ts","webpack:///../../../../src/internal/util/ArgumentOutOfRangeError.ts","webpack:///../../../../src/internal/util/EmptyError.ts","webpack:///../../../../src/internal/util/Immediate.ts","webpack:///../../../../src/internal/util/NotFoundError.ts","webpack:///../../../../src/internal/util/ObjectUnsubscribedError.ts","webpack:///../../../../src/internal/util/SequenceError.ts","webpack:///../../../../src/internal/util/UnsubscriptionError.ts","webpack:///../../../../src/internal/util/args.ts","webpack:///../../../../src/internal/util/argsArgArrayOrObject.ts","webpack:///../../../../src/internal/util/argsOrArgArray.ts","webpack:///../../../../src/internal/util/arrRemove.ts","webpack:///../../../../src/internal/util/caughtSchedule.ts","webpack:///../../../../src/internal/util/createErrorClass.ts","webpack:///../../../../src/internal/util/identity.ts","webpack:///../../../../src/internal/util/isArrayLike.ts","webpack:///../../../../src/internal/util/isAsyncIterable.ts","webpack:///../../../../src/internal/util/isDate.ts","webpack:///../../../../src/internal/util/isFunction.ts","webpack:///../../../../src/internal/util/isInteropObservable.ts","webpack:///../../../../src/internal/util/isIterable.ts","webpack:///../../../../src/internal/util/isObservable.ts","webpack:///../../../../src/internal/util/isPromise.ts","webpack:///../../../../src/internal/util/isScheduler.ts","webpack:///../../../../src/internal/util/lift.ts","webpack:///../../../../src/internal/util/mapOneOrManyArgs.ts","webpack:///../../../../src/internal/util/noop.ts","webpack:///../../../../src/internal/util/not.ts","webpack:///../../../../src/internal/util/pipe.ts","webpack:///../../../../src/internal/util/reportUnhandledError.ts","webpack:///../../../../src/internal/util/throwUnobservableError.ts","webpack:///../../../src/operators/index.ts","webpack:///../src/constants.ts","webpack:///../src/utils.ts","webpack:///../src/dom-utils.ts","webpack:///../src/bindGlobalEventListeners.ts","webpack:///../src/browser.ts","webpack:///../src/validation.ts","webpack:///../src/props.ts","webpack:///../src/template.ts","webpack:///../src/createTippy.ts","webpack:///../src/index.ts","webpack:///../src/addons/createSingleton.ts","webpack:///../src/addons/delegate.ts","webpack:///../src/plugins/animateFill.ts","webpack:///../src/plugins/followCursor.ts","webpack:///../src/plugins/inlinePositioning.ts","webpack:///../src/plugins/sticky.ts","webpack:///../build/base.js","webpack:///./node_modules/tslib/tslib.es6.js","webpack:///(webpack)/buildin/module.js"],"names":["window","document","undefined","tests","ModernizrProto","_version","_config","_q","on","test","cb","self","setTimeout","addTest","name","fn","options","push","addAsyncTest","Modernizr","prototype","supportsFn","CSS","supports","bind","supportsCSS","CustomEvent","ua","navigator","userAgent","indexOf","location","protocol","history","Promise","resolve","r","is","obj","type","classes","testRunner","featureNames","feature","aliasIdx","result","nameIdx","featureName","featureNameSplit","featureIdx","hasOwnProperty","toLowerCase","aliases","length","split","Boolean","join","prefixes","usePrefixes","_prefixes","docElement","documentElement","isSVG","nodeName","createElement","arguments","createElementNS","call","apply","style","cssText","opacity","pointerEvents","fontSize","e","cssToDOM","replace","str","m1","m2","toUpperCase","getBody","body","fake","injectElementWithStyles","rule","callback","nodes","testnames","mod","ret","node","docOverflow","div","parseInt","id","appendChild","styleSheet","createTextNode","background","overflow","parentNode","removeChild","offsetHeight","testStyles","bool","DocumentTouch","query","offsetTop","contains","substr","omPrefixes","cssomPrefixes","_cssomPrefixes","atRule","prop","cssrule","CSSRule","i","prefix","thisRule","domPrefixes","_domPrefixes","fnBind","that","testDOMProps","props","elem","item","domToCSS","computedStyle","pseudo","getComputedStyle","console","getPropertyValue","method","error","currentStyle","nativeTestProps","value","conditionText","modElem","mStyle","unshift","testProps","prefixed","skipValueTest","afterInit","propsLength","before","elems","shift","cleanElems","testPropsAll","ucProp","charAt","slice","testAllProps","log","BREAK_POINT_3","BREAK_POINT_DYNAMIC","CONTENT_WIDTH_5","parseFloat","CONTENT_MARGIN_5","DRAWER_WIDTH","HALF_CONTENT","isSafari","isMobile","isMobileSafari","isUCBrowser","isFirefox","isFirefoxIOS","hasCSSOM","Element","number","webComponentsReady","res","addEventListener","stylesheetReady","checkCSS","rej","retries","drawerEl","querySelector","Error","once","el","eventName","timeout","t","hasFeatures","features","every","hasFeature","process","warn","show","display","visibility","hide","unshow","unhide","empty","firstChild","animate","effect","timing","of","Observable","create","observer","anim","next","requestAnimationFrame","complete","playState","cancel","importTemplate","templateId","template","getElementById","importNode","content","rem","units","getViewWidth","innerWidth","clientWidth","getViewHeight","innerHeight","clientHeight","postMessage","worker","message","reject","messageChannel","MessageChannel","port1","onmessage","event","data","port2","promisifyLoad","loadFn","href","loadJS","loadCSS","intersectOnce","els","io","IntersectionObserver","entries","some","x","isIntersecting","forEach","unobserve","find","observe","__webpack_public_path__","_publicPath","BASELINE","DARK_MODE_FEATURES","DRAWER_FEATURES","PUSH_STATE_FEATURES","CLAP_BUTTON_FEATURES","TOC_FEATURES","_noNavbar","_clapButton","_noDrawer","_noPushState","toggleClass","element","cls","classList","remove","offsetWidth","add","ready","load","opts","pushStateEl","detail","replaceEls","main","all","FN_SEL","FN_LINK_SEL","HORIZONTAL_SCROLL_SEL","CODE_BLOCK_SEL","CODE_TITLE_RE","HEADING_SELECTOR","IMG_FADE_DURATION","IMG_KEYFRAMES","IMG_SETTINGS","fill","duration","easing","CODE_LINE_HEIGHT","init","tippy","querySelectorAll","trigger","touch","interactive","allowHTML","maxWidth","placement","offset","innerHTML","onTrigger","instance","target","tagName","_hideOnce","onShow","getAttribute","h","df","a","toc","Array","from","container","writeText","clipboard","innerText","copyBtn","onClick","class","title","map","code","children","exec","fileName","child0","childNodes","nli","wholeText","restNode","splitText","insertBefore","header","HTMLImageElement","katexPromise","li","tabIndex","currentTarget","focus","scrollLeft","stopPropagation","passive","katexHref","rootMargin","then","mathJaxEl","mathJax2To3","mainEl","outerHTML","MathJax","typesetPromise","fromEvent","pipe","concatMap","subscribe","INVALID_ELEMENT_ERROR","INFINITE_LOOP_ERROR","DEFAULT_OPTIONS","modifiers","strategy","areValidElements","_len","args","_key","getBoundingClientRect","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","createPopper","reference","popper","state","orderedModifiers","Object","assign","modifiersData","elements","attributes","styles","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","scrollParents","isElement","listScrollParents","contextElement","orderModifiers","mergeByName","concat","filter","m","enabled","uniqueBy","_ref","validateModifiers","getBasePlacement","auto","flipModifier","_ref2","_getComputedStyle","marginTop","marginRight","marginBottom","marginLeft","margin","runModifierEffects","update","forceUpdate","_state$elements","rects","getCompositeRect","getOffsetParent","getLayoutRect","reset","modifier","__debug_loops__","index","_state$orderedModifie","_state$orderedModifie2","_options","debounce","destroy","onFirstUpdate","_ref3","_ref3$options","cleanupFn","noopFn","parent","child","rootNode","getRootNode","isShadowRoot","isSameNode","host","rect","width","height","top","right","bottom","left","y","getInnerBoundingClientRect","clientTop","clientLeft","getClientRectFromMixedType","clippingParent","viewport","rectToClientRect","getViewportRect","isHTMLElement","getDocumentRect","getDocumentElement","getClippingParents","clippingParents","getParentNode","canEscapeClipping","position","clipperElement","getNodeName","getClippingRect","boundary","rootBoundary","mainClippingParents","firstClippingParent","clippingRect","reduce","accRect","Math","max","min","elementOrVirtualElement","offsetParent","isFixed","isOffsetParentAnElement","scroll","scrollTop","offsets","isScrollParent","getNodeScroll","getWindowScrollBarX","getWindow","ownerDocument","html","winScroll","getWindowScroll","scrollWidth","scrollHeight","direction","getHTMLElementScroll","offsetLeft","getTrueOffsetParent","getContainingBlock","currentNode","css","transform","perspective","willChange","isTableElement","assignedSlot","getScrollParent","win","visualViewport","toString","defaultView","pageXOffset","pageYOffset","OwnElement","HTMLElement","ShadowRoot","overflowX","overflowY","list","scrollParent","isBody","updatedList","basePlacements","start","end","variationPlacements","acc","placements","beforeRead","read","afterRead","beforeMain","afterMain","beforeWrite","write","afterWrite","modifierPhases","applyStyles","keys","removeAttribute","setAttribute","initialStyles","arrow","styleProperties","property","attribute","phase","requires","_state$modifiersData$","arrowElement","popperOffsets","basePlacement","axis","getMainAxisFromPlacement","isVertical","len","paddingObject","padding","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","centerToReference","center","within","axisProp","centerOffset","_options$element","_options$padding","mergePaddingObject","expandToHashMap","requiresIfExists","unsetSides","roundOffsetsByDPR","dpr","devicePixelRatio","round","mapToStyles","_Object$assign2","popperRect","gpuAcceleration","adaptive","roundOffsets","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","commonStyles","_Object$assign","computeStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","transitionProperty","_options$scroll","_options$resize","resize","removeEventListener","getExpandedFallbackPlacements","oppositePlacement","getOppositePlacement","getOppositeVariationPlacement","flip","_skip","_options$mainAxis","mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","altBoundary","_options$flipVariatio","flipVariations","allowedAutoPlacements","preferredPlacement","isBasePlacement","computeAutoPlacement","referenceRect","checksMap","Map","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","getVariation","detectOverflow","mainVariationSide","altVariationSide","checks","check","set","numberOfChecks","_loop","_i","fittingPlacement","get","_ret","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","preventOverflow","referenceOverflow","elementContext","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","distanceAndSkiddingToXY","invertDistance","skidding","distance","_options$offset","_data$state$placement","computeOffsets","_options$tether","tether","_options$tetherOffset","tetherOffset","variation","getAltAxis","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","getFreshSideObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","eventListeners","_options$allowedAutoP","allPlacements","allowedPlacements","overflows","sort","b","commonX","commonY","pending","_options$placement","_options$boundary","_options$rootBoundary","_options$elementConte","_options$altBoundary","altContext","referenceElement","clippingClientRect","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","key","multiply","hashMap","format","p","c","hash","matched","merged","current","existing","order","visited","Set","dep","has","depModifier","arr","identifiers","identifier","INVALID_MODIFIER_ERROR","MISSING_DEPENDENCY_ERROR","VALID_PROPERTIES","String","isArray","s","requirement","module","exports","it","TypeError","UNSCOPABLES","require","ArrayProto","at","S","unicode","Constructor","forbiddenField","isObject","toObject","toAbsoluteIndex","toLength","copyWithin","O","to","count","inc","aLen","endPos","toIObject","IS_INCLUDES","$this","fromIndex","ctx","IObject","asc","TYPE","$create","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","callbackfn","f","val","SPECIES","original","C","constructor","speciesConstructor","aFunction","invoke","arraySlice","factories","construct","F","n","Function","partArgs","bound","cof","TAG","ARG","tryGet","T","B","callee","dP","redefineAll","anInstance","forOf","$iterDefine","step","setSpecies","DESCRIPTORS","fastKey","validate","SIZE","getEntry","entry","_f","k","getConstructor","wrapper","NAME","ADDER","iterable","_t","_l","clear","prev","v","def","setStrong","iterated","kind","_k","getWeak","anObject","createArrayMethod","$has","arrayFind","arrayFindIndex","uncaughtFrozenStore","UncaughtFrozenStore","findUncaughtFrozen","store","splice","ufstore","global","$export","redefine","meta","fails","$iterDetect","setToStringTag","inheritIfRequired","methods","common","IS_WEAK","Base","proto","fixMethod","KEY","NEED","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","iter","BUGGY_ZERO","$instance","G","W","core","version","__e","$defineProperty","createDesc","object","toPrimitive","NUMBER","hint","defineProperty","getKeys","gOPS","pIE","getSymbols","symbols","isEnum","PROTOTYPE","source","IS_FORCED","IS_GLOBAL","IS_STATIC","IS_PROTO","P","IS_BIND","expProto","own","out","exp","U","R","MATCH","re","defined","wks","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","fns","maybeCallNative","nativeMethod","regexp","arg2","forceStringMethod","done","strfn","rxfn","RegExp","string","arg","ignoreCase","multiline","sticky","IS_CONCAT_SPREADABLE","flattenIntoArray","sourceLen","depth","mapper","thisArg","targetIndex","sourceIndex","mapFn","spreadable","isArrayIter","getIterFn","BREAK","RETURN","ITERATOR","iterFn","iterator","__g","setPrototypeOf","un","propertyIsEnumerable","Iterators","floor","isInteger","isFinite","isRegExp","descriptor","IteratorPrototype","LIBRARY","$iterCreate","getPrototypeOf","BUGGY","FF_ITERATOR","KEYS","VALUES","returnThis","DEFAULT","IS_SET","FORCED","getMethod","values","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","SAFE_CLOSING","riter","skipClosing","safe","$expm1","expm1","sign","pow","EPSILON","EPSILON32","MAX32","MIN32","roundTiesToEven","fround","$abs","abs","$sign","Infinity","log1p","META","setDesc","isExtensible","FREEZE","preventExtensions","setMeta","w","onFreeze","macrotask","Observer","MutationObserver","WebKitMutationObserver","isNode","head","last","notify","flush","domain","exit","enter","nextTick","standalone","toggle","characterData","promise","task","PromiseCapability","$$resolve","$$reject","$assign","A","Symbol","K","j","dPs","enumBugKeys","IE_PROTO","Empty","createDict","iframe","lt","gt","iframeDocument","src","contentWindow","open","close","Properties","IE8_DOM_DEFINE","Attributes","defineProperties","random","__defineSetter__","gOPD","getOwnPropertyDescriptor","gOPN","windowNames","getOwnPropertyNames","getWindowNames","$keys","hiddenKeys","getOwnPropertySymbols","ObjectProto","arrayIndexOf","names","isEntries","Reflect","ownKeys","$parseFloat","$trim","trim","$parseInt","ws","hex","radix","newPromiseCapability","promiseCapability","bitmap","enumerable","configurable","writable","SRC","$toString","TO_STRING","TPL","inspectSource","isFunction","classof","builtinExec","regexpFlags","nativeExec","nativeReplace","patchedExec","LAST_INDEX","UPDATES_LAST_INDEX_WRONG","re1","re2","NPCG_INCLUDED","PATCH","lastIndex","reCopy","match","buggy","__proto__","tag","stat","shared","uid","SHARED","mode","copyright","D","toInteger","pos","l","charCodeAt","searchString","quot","createHTML","p1","repeat","maxLength","fillString","stringLength","fillStr","intMaxLength","fillLen","stringFiller","ceil","RangeError","spaces","space","non","ltrim","rtrim","exporter","ALIAS","FORCE","cel","setTask","setImmediate","clearTask","clearImmediate","Dispatch","counter","queue","ONREADYSTATECHANGE","defer","channel","port","run","listener","now","importScripts","isNaN","valueOf","$typed","$buffer","propertyDesc","toIndex","createArrayIncludes","ArrayIterators","arrayFill","arrayCopyWithin","$DP","$GOPD","Uint8Array","ARRAY_BUFFER","SHARED_BUFFER","BYTES_PER_ELEMENT","$ArrayBuffer","ArrayBuffer","$DataView","DataView","arrayForEach","arrayFilter","arraySome","arrayEvery","arrayIncludes","arrayValues","arrayKeys","arrayEntries","arrayLastIndexOf","lastIndexOf","arrayReduce","arrayReduceRight","reduceRight","arrayJoin","arraySort","arrayToString","arrayToLocaleString","toLocaleString","TYPED_CONSTRUCTOR","DEF_CONSTRUCTOR","ALL_CONSTRUCTORS","CONSTR","TYPED_ARRAY","TYPED","VIEW","WRONG_LENGTH","$map","allocate","LITTLE_ENDIAN","Uint16Array","buffer","FORCED_SET","toOffset","BYTES","speciesFromList","fromList","addGetter","internal","_d","$from","mapfn","mapping","$of","TO_LOCALE_BUG","$toLocaleString","predicate","findIndex","searchElement","includes","separator","reverse","middle","comparefn","subarray","begin","$begin","byteOffset","$slice","$set","arrayLike","$iterators","isTAIndex","$getDesc","$setDesc","desc","$TypedArrayPrototype$","CLAMPED","GETTER","SETTER","TypedArray","TAC","ABV","TypedArrayPrototype","getter","o","setter","addElement","$offset","$length","byteLength","klass","$len","$nativeIterator","CORRECT_ITER_NAME","$iterator","DATA_VIEW","WRONG_INDEX","BaseBuffer","LN2","BUFFER","BYTE_LENGTH","BYTE_OFFSET","$BUFFER","$LENGTH","$OFFSET","packIEEE754","mLen","nBytes","eLen","eMax","eBias","rt","unpackIEEE754","nBits","NaN","unpackI32","bytes","packI8","packI16","packI32","packF64","packF32","view","isLittleEndian","numIndex","intIndex","_b","pack","conversion","bufferLength","getInt8","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt8","setUint8","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","ArrayBufferProto","$setInt8","Typed","TypedArrayConstructors","px","wksExt","$Symbol","USE_SYMBOL","$exports","getIteratorMethod","$find","forced","createProperty","addToUnscopables","Arguments","TO_PRIMITIVE","Date","HAS_INSTANCE","FunctionProto","FProto","nameRE","strong","MAP","sqrt","$acosh","acosh","Number","MAX_VALUE","$asinh","asinh","$atanh","atanh","cbrt","clz32","LOG2E","cosh","hypot","value1","value2","sum","larg","$imul","imul","UINT16","xn","yn","xl","yl","log10","LOG10E","log2","sinh","E","tanh","trunc","$Number","BROKEN_COF","TRIM","toNumber","argument","first","third","maxCode","digits","_isFinite","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","$freeze","freeze","$getOwnPropertyDescriptor","$getPrototypeOf","$isExtensible","$isFrozen","isFrozen","$isSealed","isSealed","$preventExtensions","$seal","seal","microtask","newPromiseCapabilityModule","perform","promiseResolve","PROMISE","versions","v8","$Promise","Internal","newGenericPromiseCapability","OwnPromiseCapability","Wrapper","USE_NATIVE","FakePromise","PromiseRejectionEvent","isThenable","isReject","_n","chain","_c","_v","ok","_s","reaction","handler","fail","exited","_h","onHandleUnhandled","onUnhandled","unhandled","isUnhandled","emit","onunhandledrejection","reason","_a","onrejectionhandled","$reject","_w","$resolve","executor","err","onFulfilled","onRejected","capability","remaining","$index","alreadyCalled","race","rApply","fApply","thisArgument","argumentsList","L","rConstruct","NEW_TARGET_BUG","ARGS_BUG","Target","newTarget","$args","propertyKey","deleteProperty","getProto","receiver","setProto","V","ownDesc","existingDescriptor","$flags","$RegExp","CORRECT_NEW","tiRE","piRE","fiU","proxy","flags","advanceStringIndex","regExpExec","$match","rx","fullUnicode","matchStr","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","REPLACE","$replace","searchValue","replaceValue","functionalReplace","results","accumulatedResult","nextSourcePosition","captures","namedCaptures","replacerArgs","replacement","getSubstitution","tailPos","ch","capture","sameValue","SEARCH","$search","search","previousLastIndex","callRegExpExec","$min","$push","$SPLIT","LENGTH","MAX_UINT32","SUPPORTS_Y","SPLIT","$split","internalSplit","limit","output","lastLastIndex","splitLimit","separatorCopy","lastLength","splitter","unicodeMatching","lim","q","z","define","SET","anchor","big","blink","bold","$at","codePointAt","context","ENDS_WITH","$endsWith","endsWith","endPosition","fixed","fontcolor","color","fontsize","size","fromCharCode","$fromCodePoint","fromCodePoint","INCLUDES","italics","point","link","url","raw","callSite","tpl","small","STARTS_WITH","$startsWith","startsWith","strike","sub","sup","$fails","wksDefine","enumKeys","_create","gOPNExt","$GOPS","$JSON","JSON","_stringify","stringify","HIDDEN","SymbolRegistry","AllSymbols","OPSymbols","QObject","findChild","setSymbolDesc","protoDesc","wrap","sym","isSymbol","$defineProperties","$propertyIsEnumerable","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","es6Symbols","wellKnownSymbols","keyFor","useSetter","useSimple","FAILS_ON_PRIMITIVES","replacer","$replacer","$isView","isView","fin","viewS","viewT","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint32Array","Uint8ClampedArray","each","weak","NATIVE_WEAK_MAP","IS_IE11","ActiveXObject","WEAK_MAP","InternalMap","WeakMap","$WeakMap","WEAK_SET","WeakSet","arraySpeciesCreate","flatMap","$includes","__defineGetter__","getOwnPropertyDescriptors","getDesc","__lookupGetter__","__lookupSetter__","$values","onFinally","$pad","WEBKIT_BUG","padEnd","padStart","trimLeft","trimRight","TO_STRING_TAG","ArrayValues","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","collections","explicit","Collection","$task","MSIE","time","boundArgs","setInterval","isHTMLCollection","isNodeList","RE_HANDLER","createCreateElement","attr","cs","shouldCopy","runtime","Op","hasOwn","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","makeInvokeMethod","tryCatch","GenStateSuspendedStart","GenStateSuspendedYield","GenStateExecuting","GenStateCompleted","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","NativeIteratorPrototype","Gp","displayName","defineIteratorMethods","isGeneratorFunction","genFun","ctor","mark","awrap","__await","AsyncIterator","PromiseImpl","record","unwrapped","previousPromise","enqueue","callInvokeWithMethodAndArg","async","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","info","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","pop","iteratorMethod","skipTempReset","stop","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","finish","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","ROUND_ARROW","BOX_CLASS","CONTENT_CLASS","BACKDROP_CLASS","ARROW_CLASS","SVG_ARROW_CLASS","TOUCH_OPTIONS","defaultValue","ms","clearTimeout","clone","isType","arrayFrom","normalizeToArray","clientX","clientY","popperState","interactiveBorder","topDistance","bottomDistance","leftDistance","rightDistance","exceedsTop","exceedsBottom","exceedsLeft","exceedsRight","action","box","currentInput","isTouch","lastMouseMoveTime","performance","activeElement","isReferenceElement","isBrowser","isIE","txt","spacesAndTabs","lineStartWithSpaces","clean","getDevMessage","resetVisitedMessages","visitedMessages","condition","getFormattedMessage","didPassFalsyValue","didPassPlainObject","targets","errorWhen","pluginProps","animateFill","followCursor","inlinePositioning","renderProps","animation","inertia","role","theme","zIndex","defaultProps","appendTo","aria","expanded","delay","getReferenceClientRect","hideOnClick","ignoreAttributes","interactiveDebounce","moveTransition","onAfterUpdate","onBeforeUpdate","onCreate","onDestroy","onHidden","onHide","onMount","onShown","onUntrigger","onClickOutside","plugins","popperOptions","render","showOnCreate","triggerTarget","defaultKeys","setDefaultProps","validateProps","partialProps","passedProps","plugin","propKeys","getExtendedPassedProps","valueAsString","invokeWithArgsOrReturn","getDataAttributeProps","nonPluginProps","removeProperties","didPassUnknownProp","warnWhen","dangerouslySetInnerHTML","boxChildren","backdrop","setContent","onUpdate","getChildren","nextProps","prevProps","createArrowElement","idCounter","mouseMoveListeners","mountedInstances","evaluateProps","removeUndefinedProps","isVisibleFromClick","didHideDueToDocumentMouseDown","didTouchMove","ignoreOnFirstUpdate","listeners","debouncedOnMouseMove","popperInstance","unique","isEnabled","isVisible","isMounted","isShown","clearDelayTimeouts","setProps","hideWithInteractivity","enable","disable","unmount","pluginsHooks","hasAriaExpanded","addListeners","handleAriaExpandedAttribute","handleStyles","invokeHook","scheduleShow","getDocument","getNormalizedTouchSettings","getCurrentTarget","getOwnerDocument","lastTriggerEvent","getValueAtIndexOrReturn","isShow","shouldInvokePropsHook","pluginHooks","currentValue","nextValue","removeDocumentPress","doc","onTransitionEnd","getDefaultTemplateChildren","updateTransitionEndListener","currentTransitionEndListener","eventType","getIsCustomTouchBehavior","splitBySpaces","shouldScheduleClickHide","isEventListenerStopped","wasFocused","isMouseEvent","scheduleHide","isCursorOverReferenceOrPopper","popperTreeData","isCursorOutsideInteractiveBorder","cleanupInteractiveMouseListeners","shouldBail","destroyPopperInstance","getIsDefaultRenderFn","computedReference","tippyModifier","createPopperInstance","addDocumentPress","getDelay","touchValue","touchDelay","showTimeout","hideTimeout","scheduleHideAnimationFrame","cancelAnimationFrame","createMemoryLeakWarning","removeListeners","getNestedPopperTree","nestedPopper","isAlreadyVisible","isDisabled","isTouchAndTouchDisabled","setTransitionDuration","setVisibilityState","handleAriaContentAttribute","pushIfUnique","onTransitionedIn","mount","isAlreadyHidden","onTransitionedOut","optionalProps","validateTargets","bindGlobalEventListeners","getArrayOfElements","isSingleContentElement","isMoreThanOneReferenceElement","instances","createTippy","hideAll","excludedReferenceOrInstance","exclude","isExcluded","originalDuration","createSingleton","individualInstances","references","overrides","interceptSetPropsCleanups","originalSetProps","singleton","enableInstances","setReferences","overrideProps","interceptSetProps","BUBBLING_EVENTS_MAP","mouseover","focusin","click","childTippyInstances","disabled","nativeProps","parentProps","childProps","returnValue","normalizedReturnValue","targetNode","originalDestroy","originalEnable","originalDisable","shouldDestroyChildInstances","removeEventListeners","addEventListeners","createBackdropElement","transitionDuration","mouseCoords","activeInstances","isInternalUpdate","wasFocusEvent","isUnmounted","isCursorOverReference","relativeX","relativeY","addMouseCoordsListener","removeMouseCoordsListener","getIsInitialBehavior","addListener","removeListener","unsetGetReferenceClientRect","onMouseMove","cursorRectIndex","getInlineBoundingClientRect","setInternalProps","getProps","cursorRect","clientRects","currentBasePlacement","firstRect","lastRect","isTop","minLeft","maxRight","measureRects","prevRefRect","prevPopRect","currentRefRect","shouldCheck","getReference","currentPopRect","areRectsDifferent","updatePosition","rectA","rectB","extendStatics","d","__extends","__","__assign","__rest","__decorate","decorators","decorate","__param","paramIndex","decorator","__metadata","metadataKey","metadataValue","metadata","__awaiter","_arguments","adopt","fulfilled","rejected","__generator","_","label","trys","ops","g","verb","op","__createBinding","k2","__exportStar","__values","__read","ar","__spread","__spreadArrays","il","jl","__asyncGenerator","resume","settle","fulfill","__asyncDelegator","__asyncValues","__makeTemplateObject","cooked","__importStar","__esModule","default","__importDefault","__classPrivateFieldGet","privateMap","__classPrivateFieldSet","webpackPolyfill","deprecate","paths"],"mappings":";QAAA;QACA;QACA;QACA;;;QAGA;QACA;QACA;QACA,QAAQ,oBAAoB;QAC5B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;;QAEA;;;QAGA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;;;QAIA;QACA;QACA,gDAAgD,8oBAA8oB;QAC9rB;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;QACA;QACA;;;QAGA;;QAEA;QACA,iCAAiC;;QAEjC;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA,MAAM;QACN;;QAEA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,wBAAwB,kCAAkC;QAC1D,MAAM;QACN;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;QAEA;QACA,0CAA0C,oBAAoB,WAAW;;QAEzE;QACA;QACA;QACA;QACA,gBAAgB,uBAAuB;QACvC;;;QAGA;QACA;;;;;;;;;;;;;;ACrMA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AAC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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEE,MAAIc,UAAU,GAAGpG,cAAc,CAACoG,UAAf,GAA4BpB,uBAA7C;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEE;;AACAjE,WAAS,CAACN,OAAV,CAAkB,aAAlB,EAAiC,YAAW;AAC1C,QAAI4F,IAAJ;;AACA,QAAK,kBAAkBzG,MAAnB,IAA8BA,MAAM,CAAC0G,aAAP,IAAwBzG,QAAQ,YAAYyG,aAA9E,EAA6F;AAC3FD,UAAI,GAAG,IAAP;AACD,KAFD,MAEO;AACL;AACA;AACA,UAAIE,KAAK,GAAG,CAAC,UAAD,EAAalD,QAAQ,CAACD,IAAT,CAAc,kBAAd,CAAb,EAAgD,QAAhD,EAA0D,GAA1D,EAA+D,yCAA/D,EAA0GA,IAA1G,CAA+G,EAA/G,CAAZ;AACAgD,gBAAU,CAACG,KAAD,EAAQ,UAAShB,IAAT,EAAe;AAC/Bc,YAAI,GAAGd,IAAI,CAACiB,SAAL,KAAmB,CAA1B;AACD,OAFS,CAAV;AAGD;;AACD,WAAOH,IAAP;AACD,GAbD;AAiBA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEE,WAASI,QAAT,CAAkBhC,GAAlB,EAAuBiC,MAAvB,EAA+B;AAC7B,WAAO,CAAC,CAAC,CAAC,CAAC,KAAKjC,GAAN,EAAW/C,OAAX,CAAmBgF,MAAnB,CAAV;AACD;;AAED;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;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A;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEE,WAASI,YAAT,CAAsB1C,IAAtB,EAA4BwB,KAA5B,EAAmCO,aAAnC,EAAkD;AAChD,WAAOO,YAAY,CAACtC,IAAD,EAAOjH,SAAP,EAAkBA,SAAlB,EAA6ByI,KAA7B,EAAoCO,aAApC,CAAnB;AACD;;AACD9I,gBAAc,CAACyJ,YAAf,GAA8BA,YAA9B;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;;AAEE1I,WAAS,CAACN,OAAV,CAAkB,eAAlB,EAAmCgJ,YAAY,CAAC,eAAD,EAAkB,GAAlB,EAAuB,IAAvB,CAA/C;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEE1I,WAAS,CAACN,OAAV,CAAkB,eAAlB,EAAmC,YAAW;AAC5C;AACA;AACA,WAAOe,SAAS,CAACC,SAAV,CAAoBC,OAApB,CAA4B,YAA5B,MAA8C,CAAC,CAA/C,IACA+H,YAAY,CAAC,WAAD,EAAc,UAAd,EAA0B,IAA1B,CADnB;AAED,GALD;AAQA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEE,MAAIZ,QAAQ,GAAG7I,cAAc,CAAC6I,QAAf,GAA0B,UAAS9B,IAAT,EAAe7E,GAAf,EAAoByF,IAApB,EAA0B;AACjE,QAAIZ,IAAI,CAACrF,OAAL,CAAa,GAAb,MAAsB,CAA1B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AAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A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","file":"LEGACY-hydejack-9.1.0.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t};\n\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"main\": 0\n \t};\n\n\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"LEGACY-\" + ({\"navbar\":\"navbar\",\"vendors~clap-button\":\"vendors~clap-button\",\"clap-button\":\"clap-button\",\"vendors~drawer~push-state\":\"vendors~drawer~push-state\",\"vendors~drawer\":\"vendors~drawer\",\"drawer\":\"drawer\",\"vendors~push-state\":\"vendors~push-state\",\"push-state\":\"push-state\",\"vendors~intersection-observer\":\"vendors~intersection-observer\",\"vendors~webanimations\":\"vendors~webanimations\",\"vendors~shadydom\":\"vendors~shadydom\",\"shadydom\":\"shadydom\",\"vendors~webcomponents\":\"vendors~webcomponents\",\"webcomponents\":\"webcomponents\",\"vendors~resize-observer\":\"vendors~resize-observer\",\"resize-observer\":\"resize-observer\",\"vendors~fetch\":\"vendors~fetch\",\"fetch\":\"fetch\"}[chunkId]||chunkId) + \"-hydejack-9.1.0.js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/assets/js/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./_js/src/entry.js\");\n","// NOTE: This file has been modified to set `usePrefixes: false`!\n// Find-replace: %s:/\\*!:/*:g\n\n/*\n * modernizr v3.6.0\n * Build https://modernizr.com/download?-classlist-cssanimations-csspointerevents-cssremunit-csstransforms-customelements-customevent-documentfragment-eventlistener-history-matchmedia-opacity-promises-queryselector-requestanimationframe-template-touchevents-dontmin\n *\n * Copyright (c)\n * Faruk Ates\n * Paul Irish\n * Alex Sexton\n * Ryan Seddon\n * Patrick Kettner\n * Stu Cox\n * Richard Herrera\n\n * MIT License\n */\n\n/*\n * Modernizr tests which native CSS3 and HTML5 features are available in the\n * current UA and makes the results available to you in two ways: as properties on\n * a global `Modernizr` object, and as classes on the `<html>` element. This\n * information allows you to progressively enhance your pages with a granular level\n * of control over the experience.\n*/\n\n;(function(window, document, undefined){\n var tests = [];\n \n\n /**\n *\n * ModernizrProto is the constructor for Modernizr\n *\n * @class\n * @access public\n */\n\n var ModernizrProto = {\n // The current version, dummy\n _version: '3.6.0',\n\n // Any settings that don't work as separate modules\n // can go in here as configuration.\n _config: {\n 'classPrefix': '',\n 'enableClasses': true,\n 'enableJSClass': true,\n 'usePrefixes': false,\n },\n\n // Queue of tests\n _q: [],\n\n // Stub these for people who are listening\n on: function(test, cb) {\n // I don't really think people should do this, but we can\n // safe guard it a bit.\n // -- NOTE:: this gets WAY overridden in src/addTest for actual async tests.\n // This is in case people listen to synchronous tests. I would leave it out,\n // but the code to *disallow* sync tests in the real version of this\n // function is actually larger than this.\n var self = this;\n setTimeout(function() {\n cb(self[test]);\n }, 0);\n },\n\n addTest: function(name, fn, options) {\n tests.push({name: name, fn: fn, options: options});\n },\n\n addAsyncTest: function(fn) {\n tests.push({name: null, fn: fn});\n }\n };\n\n \n\n // Fake some of Object.create so we can force non test results to be non \"own\" properties.\n var Modernizr = function() {};\n Modernizr.prototype = ModernizrProto;\n\n // Leak modernizr globally when you `require` it rather than force it here.\n // Overwrite name so constructor name is nicer :D\n Modernizr = new Modernizr();\n\n // HACK: Manually add `customproperties`...\n var supportsFn = (window.CSS && window.CSS.supports.bind(window.CSS)) || (window.supportsCSS);\n Modernizr.addTest('customproperties', !!supportsFn && (supportsFn('--f:0') || supportsFn('--f', 0)));\n \n/*\n{\n \"name\": \"Custom Elements API\",\n \"property\": \"customelements\",\n \"tags\": [\"customelements\"],\n \"polyfills\": [\"customelements\"],\n \"notes\": [{\n \"name\": \"Specs for Custom Elements\",\n \"href\": \"https://www.w3.org/TR/custom-elements/\"\n }]\n}\n!*/\n/* DOC\nDetects support for the Custom Elements API, to create custom html elements via js\n*/\n\n Modernizr.addTest('customelements', 'customElements' in window);\n\n/*\n{\n \"name\": \"CustomEvent\",\n \"property\": \"customevent\",\n \"tags\": [\"customevent\"],\n \"authors\": [\"Alberto Elias\"],\n \"notes\": [{\n \"name\": \"W3C DOM reference\",\n \"href\": \"https://www.w3.org/TR/DOM-Level-3-Events/#interface-CustomEvent\"\n }, {\n \"name\": \"MDN documentation\",\n \"href\": \"https://developer.mozilla.org/en/docs/Web/API/CustomEvent\"\n }],\n \"polyfills\": [\"eventlistener\"]\n}\n!*/\n/* DOC\n\nDetects support for CustomEvent.\n\n*/\n\n Modernizr.addTest('customevent', 'CustomEvent' in window && typeof window.CustomEvent === 'function');\n\n/*\n{\n \"name\": \"Event Listener\",\n \"property\": \"eventlistener\",\n \"authors\": [\"Andrew Betts (@triblondon)\"],\n \"notes\": [{\n \"name\": \"W3C Spec\",\n \"href\": \"https://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-Registration-interfaces\"\n }],\n \"polyfills\": [\"eventlistener\"]\n}\n!*/\n/* DOC\nDetects native support for addEventListener\n*/\n\n Modernizr.addTest('eventlistener', 'addEventListener' in window);\n\n/*\n{\n \"name\": \"QuerySelector\",\n \"property\": \"queryselector\",\n \"caniuse\": \"queryselector\",\n \"tags\": [\"queryselector\"],\n \"authors\": [\"Andrew Betts (@triblondon)\"],\n \"notes\": [{\n \"name\" : \"W3C Selectors reference\",\n \"href\": \"https://www.w3.org/TR/selectors-api/#queryselectorall\"\n }],\n \"polyfills\": [\"css-selector-engine\"]\n}\n!*/\n/* DOC\nDetects support for querySelector.\n*/\n\n Modernizr.addTest('queryselector', 'querySelector' in document && 'querySelectorAll' in document);\n\n/*\n{\n \"name\": \"History API\",\n \"property\": \"history\",\n \"caniuse\": \"history\",\n \"tags\": [\"history\"],\n \"authors\": [\"Hay Kranen\", \"Alexander Farkas\"],\n \"notes\": [{\n \"name\": \"W3C Spec\",\n \"href\": \"https://www.w3.org/TR/html51/browsers.html#the-history-interface\"\n }, {\n \"name\": \"MDN documentation\",\n \"href\": \"https://developer.mozilla.org/en-US/docs/Web/API/window.history\"\n }],\n \"polyfills\": [\"historyjs\", \"html5historyapi\"]\n}\n!*/\n/* DOC\nDetects support for the History API for manipulating the browser session history.\n*/\n\n Modernizr.addTest('history', function() {\n // Issue #733\n // The stock browser on Android 2.2 & 2.3, and 4.0.x returns positive on history support\n // Unfortunately support is really buggy and there is no clean way to detect\n // these bugs, so we fall back to a user agent sniff :(\n var ua = navigator.userAgent;\n\n // We only want Android 2 and 4.0, stock browser, and not Chrome which identifies\n // itself as 'Mobile Safari' as well, nor Windows Phone (issue #1471).\n if ((ua.indexOf('Android 2.') !== -1 ||\n (ua.indexOf('Android 4.0') !== -1)) &&\n ua.indexOf('Mobile Safari') !== -1 &&\n ua.indexOf('Chrome') === -1 &&\n ua.indexOf('Windows Phone') === -1 &&\n // Since all documents on file:// share an origin, the History apis are\n // blocked there as well\n location.protocol !== 'file:'\n ) {\n return false;\n }\n\n // Return the regular check\n return (window.history && 'pushState' in window.history);\n });\n\n/*\n{\n \"name\": \"ES6 Promises\",\n \"property\": \"promises\",\n \"caniuse\": \"promises\",\n \"polyfills\": [\"es6promises\"],\n \"authors\": [\"Krister Kari\", \"Jake Archibald\"],\n \"tags\": [\"es6\"],\n \"notes\": [{\n \"name\": \"The ES6 promises spec\",\n \"href\": \"https://github.com/domenic/promises-unwrapping\"\n },{\n \"name\": \"Chromium dashboard - ES6 Promises\",\n \"href\": \"https://www.chromestatus.com/features/5681726336532480\"\n },{\n \"name\": \"JavaScript Promises: There and back again - HTML5 Rocks\",\n \"href\": \"http://www.html5rocks.com/en/tutorials/es6/promises/\"\n }]\n}\n!*/\n/* DOC\nCheck if browser implements ECMAScript 6 Promises per specification.\n*/\n\n Modernizr.addTest('promises', function() {\n return 'Promise' in window &&\n // Some of these methods are missing from\n // Firefox/Chrome experimental implementations\n 'resolve' in window.Promise &&\n 'reject' in window.Promise &&\n 'all' in window.Promise &&\n 'race' in window.Promise &&\n // Older version of the spec had a resolver object\n // as the arg rather than a function\n (function() {\n var resolve;\n new window.Promise(function(r) { resolve = r; });\n return typeof resolve === 'function';\n }());\n });\n\n\n /**\n * is returns a boolean if the typeof an obj is exactly type.\n *\n * @access private\n * @function is\n * @param {*} obj - A thing we want to check the type of\n * @param {string} type - A string to compare the typeof against\n * @returns {boolean}\n */\n\n function is(obj, type) {\n return typeof obj === type;\n }\n ;\n\n var classes = [];\n \n\n /**\n * Run through all tests and detect their support in the current UA.\n *\n * @access private\n */\n\n function testRunner() {\n var featureNames;\n var feature;\n var aliasIdx;\n var result;\n var nameIdx;\n var featureName;\n var featureNameSplit;\n\n for (var featureIdx in tests) {\n if (tests.hasOwnProperty(featureIdx)) {\n featureNames = [];\n feature = tests[featureIdx];\n // run the test, throw the return value into the Modernizr,\n // then based on that boolean, define an appropriate className\n // and push it into an array of classes we'll join later.\n //\n // If there is no name, it's an 'async' test that is run,\n // but not directly added to the object. That should\n // be done with a post-run addTest call.\n if (feature.name) {\n featureNames.push(feature.name.toLowerCase());\n\n if (feature.options && feature.options.aliases && feature.options.aliases.length) {\n // Add all the aliases into the names list\n for (aliasIdx = 0; aliasIdx < feature.options.aliases.length; aliasIdx++) {\n featureNames.push(feature.options.aliases[aliasIdx].toLowerCase());\n }\n }\n }\n\n // Run the test, or use the raw value if it's not a function\n result = is(feature.fn, 'function') ? feature.fn() : feature.fn;\n\n\n // Set each of the names on the Modernizr object\n for (nameIdx = 0; nameIdx < featureNames.length; nameIdx++) {\n featureName = featureNames[nameIdx];\n // Support dot properties as sub tests. We don't do checking to make sure\n // that the implied parent tests have been added. You must call them in\n // order (either in the test, or make the parent test a dependency).\n //\n // Cap it to TWO to make the logic simple and because who needs that kind of subtesting\n // hashtag famous last words\n featureNameSplit = featureName.split('.');\n\n if (featureNameSplit.length === 1) {\n Modernizr[featureNameSplit[0]] = result;\n } else {\n // cast to a Boolean, if not one already\n if (Modernizr[featureNameSplit[0]] && !(Modernizr[featureNameSplit[0]] instanceof Boolean)) {\n Modernizr[featureNameSplit[0]] = new Boolean(Modernizr[featureNameSplit[0]]);\n }\n\n Modernizr[featureNameSplit[0]][featureNameSplit[1]] = result;\n }\n\n classes.push((result ? '' : 'no-') + featureNameSplit.join('-'));\n }\n }\n }\n }\n ;\n\n /**\n * List of property values to set for css tests. See ticket #21\n * http://git.io/vUGl4\n *\n * @memberof Modernizr\n * @name Modernizr._prefixes\n * @optionName Modernizr._prefixes\n * @optionProp prefixes\n * @access public\n * @example\n *\n * Modernizr._prefixes is the internal list of prefixes that we test against\n * inside of things like [prefixed](#modernizr-prefixed) and [prefixedCSS](#-code-modernizr-prefixedcss). It is simply\n * an array of kebab-case vendor prefixes you can use within your code.\n *\n * Some common use cases include\n *\n * Generating all possible prefixed version of a CSS property\n * ```js\n * var rule = Modernizr._prefixes.join('transform: rotate(20deg); ');\n *\n * rule === 'transform: rotate(20deg); webkit-transform: rotate(20deg); moz-transform: rotate(20deg); o-transform: rotate(20deg); ms-transform: rotate(20deg);'\n * ```\n *\n * Generating all possible prefixed version of a CSS value\n * ```js\n * rule = 'display:' + Modernizr._prefixes.join('flex; display:') + 'flex';\n *\n * rule === 'display:flex; display:-webkit-flex; display:-moz-flex; display:-o-flex; display:-ms-flex; display:flex'\n * ```\n */\n\n // we use ['',''] rather than an empty array in order to allow a pattern of .`join()`ing prefixes to test\n // values in feature detects to continue to work\n var prefixes = (ModernizrProto._config.usePrefixes ? ' -webkit- -moz- -o- -ms- '.split(' ') : ['','']);\n\n // expose these for the plugin API. Look in the source for how to join() them against your input\n ModernizrProto._prefixes = prefixes;\n\n \n\n /**\n * docElement is a convenience wrapper to grab the root element of the document\n *\n * @access private\n * @returns {HTMLElement|SVGElement} The root element of the document\n */\n\n var docElement = document.documentElement;\n \n/*\n{\n \"name\": \"classList\",\n \"caniuse\": \"classlist\",\n \"property\": \"classlist\",\n \"tags\": [\"dom\"],\n \"builderAliases\": [\"dataview_api\"],\n \"notes\": [{\n \"name\": \"MDN Docs\",\n \"href\": \"https://developer.mozilla.org/en/DOM/element.classList\"\n }]\n}\n!*/\n\n Modernizr.addTest('classlist', 'classList' in docElement);\n\n/*\n{\n \"name\": \"Document Fragment\",\n \"property\": \"documentfragment\",\n \"notes\": [{\n \"name\": \"W3C DOM Level 1 Reference\",\n \"href\": \"https://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-B63ED1A3\"\n }, {\n \"name\": \"SitePoint Reference\",\n \"href\": \"http://reference.sitepoint.com/javascript/DocumentFragment\"\n }, {\n \"name\": \"QuirksMode Compatibility Tables\",\n \"href\": \"http://www.quirksmode.org/m/w3c_core.html#t112\"\n }],\n \"authors\": [\"Ron Waldon (@jokeyrhyme)\"],\n \"knownBugs\": [\"false-positive on Blackberry 9500, see QuirksMode note\"],\n \"tags\": []\n}\n!*/\n/* DOC\nAppend multiple elements to the DOM within a single insertion.\n*/\n\n Modernizr.addTest('documentfragment', function() {\n return 'createDocumentFragment' in document &&\n 'appendChild' in docElement;\n });\n\n\n /**\n * A convenience helper to check if the document we are running in is an SVG document\n *\n * @access private\n * @returns {boolean}\n */\n\n var isSVG = docElement.nodeName.toLowerCase() === 'svg';\n \n\n /**\n * createElement is a convenience wrapper around document.createElement. Since we\n * use createElement all over the place, this allows for (slightly) smaller code\n * as well as abstracting away issues with creating elements in contexts other than\n * HTML documents (e.g. SVG documents).\n *\n * @access private\n * @function createElement\n * @returns {HTMLElement|SVGElement} An HTML or SVG element\n */\n\n function createElement() {\n if (typeof document.createElement !== 'function') {\n // This is the case in IE7, where the type of createElement is \"object\".\n // For this reason, we cannot call apply() as Object is not a Function.\n return document.createElement(arguments[0]);\n } else if (isSVG) {\n return document.createElementNS.call(document, 'http://www.w3.org/2000/svg', arguments[0]);\n } else {\n return document.createElement.apply(document, arguments);\n }\n }\n\n ;\n/*\n{\n \"name\": \"CSS Opacity\",\n \"caniuse\": \"css-opacity\",\n \"property\": \"opacity\",\n \"tags\": [\"css\"]\n}\n!*/\n\n // Browsers that actually have CSS Opacity implemented have done so\n // according to spec, which means their return values are within the\n // range of [0.0,1.0] - including the leading zero.\n\n Modernizr.addTest('opacity', function() {\n var style = createElement('a').style;\n style.cssText = prefixes.join('opacity:.55;');\n\n // The non-literal . in this regex is intentional:\n // German Chrome returns this value as 0,55\n // github.com/Modernizr/Modernizr/issues/#issue/59/comment/516632\n return (/^0.55$/).test(style.opacity);\n });\n\n/*\n{\n \"name\": \"CSS Pointer Events\",\n \"caniuse\": \"pointer-events\",\n \"property\": \"csspointerevents\",\n \"authors\": [\"ausi\"],\n \"tags\": [\"css\"],\n \"builderAliases\": [\"css_pointerevents\"],\n \"notes\": [\n {\n \"name\": \"MDN Docs\",\n \"href\": \"https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events\"\n },{\n \"name\": \"Test Project Page\",\n \"href\": \"https://ausi.github.com/Feature-detection-technique-for-pointer-events/\"\n },{\n \"name\": \"Test Project Wiki\",\n \"href\": \"https://github.com/ausi/Feature-detection-technique-for-pointer-events/wiki\"\n },\n {\n \"name\": \"Related Github Issue\",\n \"href\": \"https://github.com/Modernizr/Modernizr/issues/80\"\n }\n ]\n}\n!*/\n\n Modernizr.addTest('csspointerevents', function() {\n var style = createElement('a').style;\n style.cssText = 'pointer-events:auto';\n return style.pointerEvents === 'auto';\n });\n\n/*\n{\n \"name\": \"CSS Font rem Units\",\n \"caniuse\": \"rem\",\n \"authors\": [\"nsfmc\"],\n \"property\": \"cssremunit\",\n \"tags\": [\"css\"],\n \"builderAliases\": [\"css_remunit\"],\n \"notes\": [{\n \"name\": \"W3C Spec\",\n \"href\": \"https://www.w3.org/TR/css3-values/#relative0\"\n },{\n \"name\": \"Font Size with rem by Jonathan Snook\",\n \"href\": \"http://snook.ca/archives/html_and_css/font-size-with-rem\"\n }]\n}\n!*/\n\n // \"The 'rem' unit ('root em') is relative to the computed\n // value of the 'font-size' value of the root element.\"\n // you can test by checking if the prop was ditched\n\n Modernizr.addTest('cssremunit', function() {\n var style = createElement('a').style;\n try {\n style.fontSize = '3rem';\n }\n catch (e) {}\n return (/rem/).test(style.fontSize);\n });\n\n/*\n{\n \"name\": \"Template Tag\",\n \"property\": \"template\",\n \"tags\": [\"elem\"],\n \"notes\": [{\n \"name\": \"HTML5Rocks Article\",\n \"href\": \"http://www.html5rocks.com/en/tutorials/webcomponents/template/\"\n },{\n \"name\": \"W3 Spec\",\n \"href\": \"https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/templates/index.html\"\n }]\n}\n!*/\n\n Modernizr.addTest('template', 'content' in createElement('template'));\n\n\n /**\n * cssToDOM takes a kebab-case string and converts it to camelCase\n * e.g. box-sizing -> boxSizing\n *\n * @access private\n * @function cssToDOM\n * @param {string} name - String name of kebab-case prop we want to convert\n * @returns {string} The camelCase version of the supplied name\n */\n\n function cssToDOM(name) {\n return name.replace(/([a-z])-([a-z])/g, function(str, m1, m2) {\n return m1 + m2.toUpperCase();\n }).replace(/^-/, '');\n }\n ;\n\n /**\n * getBody returns the body of a document, or an element that can stand in for\n * the body if a real body does not exist\n *\n * @access private\n * @function getBody\n * @returns {HTMLElement|SVGElement} Returns the real body of a document, or an\n * artificially created element that stands in for the body\n */\n\n function getBody() {\n // After page load injecting a fake body doesn't work so check if body exists\n var body = document.body;\n\n if (!body) {\n // Can't use the real body create a fake one.\n body = createElement(isSVG ? 'svg' : 'body');\n body.fake = true;\n }\n\n return body;\n }\n\n ;\n\n /**\n * injectElementWithStyles injects an element with style element and some CSS rules\n *\n * @access private\n * @function injectElementWithStyles\n * @param {string} rule - String representing a css rule\n * @param {function} callback - A function that is used to test the injected element\n * @param {number} [nodes] - An integer representing the number of additional nodes you want injected\n * @param {string[]} [testnames] - An array of strings that are used as ids for the additional nodes\n * @returns {boolean}\n */\n\n function injectElementWithStyles(rule, callback, nodes, testnames) {\n var mod = 'modernizr';\n var style;\n var ret;\n var node;\n var docOverflow;\n var div = createElement('div');\n var body = getBody();\n\n if (parseInt(nodes, 10)) {\n // In order not to give false positives we create a node for each test\n // This also allows the method to scale for unspecified uses\n while (nodes--) {\n node = createElement('div');\n node.id = testnames ? testnames[nodes] : mod + (nodes + 1);\n div.appendChild(node);\n }\n }\n\n style = createElement('style');\n style.type = 'text/css';\n style.id = 's' + mod;\n\n // IE6 will false positive on some tests due to the style element inside the test div somehow interfering offsetHeight, so insert it into body or fakebody.\n // Opera will act all quirky when injecting elements in documentElement when page is served as xml, needs fakebody too. #270\n (!body.fake ? div : body).appendChild(style);\n body.appendChild(div);\n\n if (style.styleSheet) {\n style.styleSheet.cssText = rule;\n } else {\n style.appendChild(document.createTextNode(rule));\n }\n div.id = mod;\n\n if (body.fake) {\n //avoid crashing IE8, if background image is used\n body.style.background = '';\n //Safari 5.13/5.1.4 OSX stops loading if ::-webkit-scrollbar is used and scrollbars are visible\n body.style.overflow = 'hidden';\n docOverflow = docElement.style.overflow;\n docElement.style.overflow = 'hidden';\n docElement.appendChild(body);\n }\n\n ret = callback(div, rule);\n // If this is done after page load we don't want to remove the body so check if body exists\n if (body.fake) {\n body.parentNode.removeChild(body);\n docElement.style.overflow = docOverflow;\n // Trigger layout so kinetic scrolling isn't disabled in iOS6+\n // eslint-disable-next-line\n docElement.offsetHeight;\n } else {\n div.parentNode.removeChild(div);\n }\n\n return !!ret;\n\n }\n\n ;\n\n /**\n * testStyles injects an element with style element and some CSS rules\n *\n * @memberof Modernizr\n * @name Modernizr.testStyles\n * @optionName Modernizr.testStyles()\n * @optionProp testStyles\n * @access public\n * @function testStyles\n * @param {string} rule - String representing a css rule\n * @param {function} callback - A function that is used to test the injected element\n * @param {number} [nodes] - An integer representing the number of additional nodes you want injected\n * @param {string[]} [testnames] - An array of strings that are used as ids for the additional nodes\n * @returns {boolean}\n * @example\n *\n * `Modernizr.testStyles` takes a CSS rule and injects it onto the current page\n * along with (possibly multiple) DOM elements. This lets you check for features\n * that can not be detected by simply checking the [IDL](https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Interface_development_guide/IDL_interface_rules).\n *\n * ```js\n * Modernizr.testStyles('#modernizr { width: 9px; color: papayawhip; }', function(elem, rule) {\n * // elem is the first DOM node in the page (by default #modernizr)\n * // rule is the first argument you supplied - the CSS rule in string form\n *\n * addTest('widthworks', elem.style.width === '9px')\n * });\n * ```\n *\n * If your test requires multiple nodes, you can include a third argument\n * indicating how many additional div elements to include on the page. The\n * additional nodes are injected as children of the `elem` that is returned as\n * the first argument to the callback.\n *\n * ```js\n * Modernizr.testStyles('#modernizr {width: 1px}; #modernizr2 {width: 2px}', function(elem) {\n * document.getElementById('modernizr').style.width === '1px'; // true\n * document.getElementById('modernizr2').style.width === '2px'; // true\n * elem.firstChild === document.getElementById('modernizr2'); // true\n * }, 1);\n * ```\n *\n * By default, all of the additional elements have an ID of `modernizr[n]`, where\n * `n` is its index (e.g. the first additional, second overall is `#modernizr2`,\n * the second additional is `#modernizr3`, etc.).\n * If you want to have more meaningful IDs for your function, you can provide\n * them as the fourth argument, as an array of strings\n *\n * ```js\n * Modernizr.testStyles('#foo {width: 10px}; #bar {height: 20px}', function(elem) {\n * elem.firstChild === document.getElementById('foo'); // true\n * elem.lastChild === document.getElementById('bar'); // true\n * }, 2, ['foo', 'bar']);\n * ```\n *\n */\n\n var testStyles = ModernizrProto.testStyles = injectElementWithStyles;\n \n/*\n{\n \"name\": \"Touch Events\",\n \"property\": \"touchevents\",\n \"caniuse\" : \"touch\",\n \"tags\": [\"media\", \"attribute\"],\n \"notes\": [{\n \"name\": \"Touch Events spec\",\n \"href\": \"https://www.w3.org/TR/2013/WD-touch-events-20130124/\"\n }],\n \"warnings\": [\n \"Indicates if the browser supports the Touch Events spec, and does not necessarily reflect a touchscreen device\"\n ],\n \"knownBugs\": [\n \"False-positive on some configurations of Nokia N900\",\n \"False-positive on some BlackBerry 6.0 builds – https://github.com/Modernizr/Modernizr/issues/372#issuecomment-3112695\"\n ]\n}\n!*/\n/* DOC\nIndicates if the browser supports the W3C Touch Events API.\n\nThis *does not* necessarily reflect a touchscreen device:\n\n* Older touchscreen devices only emulate mouse events\n* Modern IE touch devices implement the Pointer Events API instead: use `Modernizr.pointerevents` to detect support for that\n* Some browsers & OS setups may enable touch APIs when no touchscreen is connected\n* Future browsers may implement other event models for touch interactions\n\nSee this article: [You Can't Detect A Touchscreen](http://www.stucox.com/blog/you-cant-detect-a-touchscreen/).\n\nIt's recommended to bind both mouse and touch/pointer events simultaneously – see [this HTML5 Rocks tutorial](http://www.html5rocks.com/en/mobile/touchandmouse/).\n\nThis test will also return `true` for Firefox 4 Multitouch support.\n*/\n\n // Chrome (desktop) used to lie about its support on this, but that has since been rectified: http://crbug.com/36415\n Modernizr.addTest('touchevents', function() {\n var bool;\n if (('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch) {\n bool = true;\n } else {\n // include the 'heartz' as a way to have a non matching MQ to help terminate the join\n // https://git.io/vznFH\n var query = ['@media (', prefixes.join('touch-enabled),('), 'heartz', ')', '{#modernizr{top:9px;position:absolute}}'].join('');\n testStyles(query, function(node) {\n bool = node.offsetTop === 9;\n });\n }\n return bool;\n });\n\n\n\n /**\n * contains checks to see if a string contains another string\n *\n * @access private\n * @function contains\n * @param {string} str - The string we want to check for substrings\n * @param {string} substr - The substring we want to search the first string for\n * @returns {boolean}\n */\n\n function contains(str, substr) {\n return !!~('' + str).indexOf(substr);\n }\n\n ;\n\n /**\n * If the browsers follow the spec, then they would expose vendor-specific styles as:\n * elem.style.WebkitBorderRadius\n * instead of something like the following (which is technically incorrect):\n * elem.style.webkitBorderRadius\n\n * WebKit ghosts their properties in lowercase but Opera & Moz do not.\n * Microsoft uses a lowercase `ms` instead of the correct `Ms` in IE8+\n * erik.eae.net/archives/2008/03/10/21.48.10/\n\n * More here: github.com/Modernizr/Modernizr/issues/issue/21\n *\n * @access private\n * @returns {string} The string representing the vendor-specific style properties\n */\n\n var omPrefixes = 'Moz O ms Webkit';\n \n\n var cssomPrefixes = (ModernizrProto._config.usePrefixes ? omPrefixes.split(' ') : []);\n ModernizrProto._cssomPrefixes = cssomPrefixes;\n \n\n /**\n * atRule returns a given CSS property at-rule (eg @keyframes), possibly in\n * some prefixed form, or false, in the case of an unsupported rule\n *\n * @memberof Modernizr\n * @name Modernizr.atRule\n * @optionName Modernizr.atRule()\n * @optionProp atRule\n * @access public\n * @function atRule\n * @param {string} prop - String name of the @-rule to test for\n * @returns {string|boolean} The string representing the (possibly prefixed)\n * valid version of the @-rule, or `false` when it is unsupported.\n * @example\n * ```js\n * var keyframes = Modernizr.atRule('@keyframes');\n *\n * if (keyframes) {\n * // keyframes are supported\n * // could be `@-webkit-keyframes` or `@keyframes`\n * } else {\n * // keyframes === `false`\n * }\n * ```\n *\n */\n\n var atRule = function(prop) {\n var length = prefixes.length;\n var cssrule = window.CSSRule;\n var rule;\n\n if (typeof cssrule === 'undefined') {\n return undefined;\n }\n\n if (!prop) {\n return false;\n }\n\n // remove literal @ from beginning of provided property\n prop = prop.replace(/^@/, '');\n\n // CSSRules use underscores instead of dashes\n rule = prop.replace(/-/g, '_').toUpperCase() + '_RULE';\n\n if (rule in cssrule) {\n return '@' + prop;\n }\n\n for (var i = 0; i < length; i++) {\n // prefixes gives us something like -o-, and we want O_\n var prefix = prefixes[i];\n var thisRule = prefix.toUpperCase() + '_' + rule;\n\n if (thisRule in cssrule) {\n return '@-' + prefix.toLowerCase() + '-' + prop;\n }\n }\n\n return false;\n };\n\n ModernizrProto.atRule = atRule;\n\n \n\n /**\n * List of JavaScript DOM values used for tests\n *\n * @memberof Modernizr\n * @name Modernizr._domPrefixes\n * @optionName Modernizr._domPrefixes\n * @optionProp domPrefixes\n * @access public\n * @example\n *\n * Modernizr._domPrefixes is exactly the same as [_prefixes](#modernizr-_prefixes), but rather\n * than kebab-case properties, all properties are their Capitalized variant\n *\n * ```js\n * Modernizr._domPrefixes === [ \"Moz\", \"O\", \"ms\", \"Webkit\" ];\n * ```\n */\n\n var domPrefixes = (ModernizrProto._config.usePrefixes ? omPrefixes.toLowerCase().split(' ') : []);\n ModernizrProto._domPrefixes = domPrefixes;\n \n\n /**\n * fnBind is a super small [bind](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind) polyfill.\n *\n * @access private\n * @function fnBind\n * @param {function} fn - a function you want to change `this` reference to\n * @param {object} that - the `this` you want to call the function with\n * @returns {function} The wrapped version of the supplied function\n */\n\n function fnBind(fn, that) {\n return function() {\n return fn.apply(that, arguments);\n };\n }\n\n ;\n\n /**\n * testDOMProps is a generic DOM property test; if a browser supports\n * a certain property, it won't return undefined for it.\n *\n * @access private\n * @function testDOMProps\n * @param {array.<string>} props - An array of properties to test for\n * @param {object} obj - An object or Element you want to use to test the parameters again\n * @param {boolean|object} elem - An Element to bind the property lookup again. Use `false` to prevent the check\n * @returns {false|*} returns false if the prop is unsupported, otherwise the value that is supported\n */\n function testDOMProps(props, obj, elem) {\n var item;\n\n for (var i in props) {\n if (props[i] in obj) {\n\n // return the property name as a string\n if (elem === false) {\n return props[i];\n }\n\n item = obj[props[i]];\n\n // let's bind a function\n if (is(item, 'function')) {\n // bind to obj unless overriden\n return fnBind(item, elem || obj);\n }\n\n // return the unbound function or obj or value\n return item;\n }\n }\n return false;\n }\n\n ;\n\n /**\n * domToCSS takes a camelCase string and converts it to kebab-case\n * e.g. boxSizing -> box-sizing\n *\n * @access private\n * @function domToCSS\n * @param {string} name - String name of camelCase prop we want to convert\n * @returns {string} The kebab-case version of the supplied name\n */\n\n function domToCSS(name) {\n return name.replace(/([A-Z])/g, function(str, m1) {\n return '-' + m1.toLowerCase();\n }).replace(/^ms-/, '-ms-');\n }\n ;\n\n\n /**\n * wrapper around getComputedStyle, to fix issues with Firefox returning null when\n * called inside of a hidden iframe\n *\n * @access private\n * @function computedStyle\n * @param {HTMLElement|SVGElement} - The element we want to find the computed styles of\n * @param {string|null} [pseudoSelector]- An optional pseudo element selector (e.g. :before), of null if none\n * @returns {CSSStyleDeclaration}\n */\n\n function computedStyle(elem, pseudo, prop) {\n var result;\n\n if ('getComputedStyle' in window) {\n result = getComputedStyle.call(window, elem, pseudo);\n var console = window.console;\n\n if (result !== null) {\n if (prop) {\n result = result.getPropertyValue(prop);\n }\n } else {\n if (console) {\n var method = console.error ? 'error' : 'log';\n console[method].call(console, 'getComputedStyle returning null, its possible modernizr test results are inaccurate');\n }\n }\n } else {\n result = !pseudo && elem.currentStyle && elem.currentStyle[prop];\n }\n\n return result;\n }\n\n ;\n\n /**\n * nativeTestProps allows for us to use native feature detection functionality if available.\n * some prefixed form, or false, in the case of an unsupported rule\n *\n * @access private\n * @function nativeTestProps\n * @param {array} props - An array of property names\n * @param {string} value - A string representing the value we want to check via @supports\n * @returns {boolean|undefined} A boolean when @supports exists, undefined otherwise\n */\n\n // Accepts a list of property names and a single value\n // Returns `undefined` if native detection not available\n function nativeTestProps(props, value) {\n var i = props.length;\n // Start with the JS API: http://www.w3.org/TR/css3-conditional/#the-css-interface\n if ('CSS' in window && 'supports' in window.CSS) {\n // Try every prefixed variant of the property\n while (i--) {\n if (window.CSS.supports(domToCSS(props[i]), value)) {\n return true;\n }\n }\n return false;\n }\n // Otherwise fall back to at-rule (for Opera 12.x)\n else if ('CSSSupportsRule' in window) {\n // Build a condition string for every prefixed variant\n var conditionText = [];\n while (i--) {\n conditionText.push('(' + domToCSS(props[i]) + ':' + value + ')');\n }\n conditionText = conditionText.join(' or ');\n return injectElementWithStyles('@supports (' + conditionText + ') { #modernizr { position: absolute; } }', function(node) {\n return computedStyle(node, null, 'position') == 'absolute';\n });\n }\n return undefined;\n }\n ;\n\n /**\n * Create our \"modernizr\" element that we do most feature tests on.\n *\n * @access private\n */\n\n var modElem = {\n elem: createElement('modernizr')\n };\n\n // Clean up this element\n Modernizr._q.push(function() {\n delete modElem.elem;\n });\n\n \n\n var mStyle = {\n style: modElem.elem.style\n };\n\n // kill ref for gc, must happen before mod.elem is removed, so we unshift on to\n // the front of the queue.\n Modernizr._q.unshift(function() {\n delete mStyle.style;\n });\n\n \n\n // testProps is a generic CSS / DOM property test.\n\n // In testing support for a given CSS property, it's legit to test:\n // `elem.style[styleName] !== undefined`\n // If the property is supported it will return an empty string,\n // if unsupported it will return undefined.\n\n // We'll take advantage of this quick test and skip setting a style\n // on our modernizr element, but instead just testing undefined vs\n // empty string.\n\n // Property names can be provided in either camelCase or kebab-case.\n\n function testProps(props, prefixed, value, skipValueTest) {\n skipValueTest = is(skipValueTest, 'undefined') ? false : skipValueTest;\n\n // Try native detect first\n if (!is(value, 'undefined')) {\n var result = nativeTestProps(props, value);\n if (!is(result, 'undefined')) {\n return result;\n }\n }\n\n // Otherwise do it properly\n var afterInit, i, propsLength, prop, before;\n\n // If we don't have a style element, that means we're running async or after\n // the core tests, so we'll need to create our own elements to use\n\n // inside of an SVG element, in certain browsers, the `style` element is only\n // defined for valid tags. Therefore, if `modernizr` does not have one, we\n // fall back to a less used element and hope for the best.\n // for strict XHTML browsers the hardly used samp element is used\n var elems = ['modernizr', 'tspan', 'samp'];\n while (!mStyle.style && elems.length) {\n afterInit = true;\n mStyle.modElem = createElement(elems.shift());\n mStyle.style = mStyle.modElem.style;\n }\n\n // Delete the objects if we created them.\n function cleanElems() {\n if (afterInit) {\n delete mStyle.style;\n delete mStyle.modElem;\n }\n }\n\n propsLength = props.length;\n for (i = 0; i < propsLength; i++) {\n prop = props[i];\n before = mStyle.style[prop];\n\n if (contains(prop, '-')) {\n prop = cssToDOM(prop);\n }\n\n if (mStyle.style[prop] !== undefined) {\n\n // If value to test has been passed in, do a set-and-check test.\n // 0 (integer) is a valid property value, so check that `value` isn't\n // undefined, rather than just checking it's truthy.\n if (!skipValueTest && !is(value, 'undefined')) {\n\n // Needs a try catch block because of old IE. This is slow, but will\n // be avoided in most cases because `skipValueTest` will be used.\n try {\n mStyle.style[prop] = value;\n } catch (e) {}\n\n // If the property value has changed, we assume the value used is\n // supported. If `value` is empty string, it'll fail here (because\n // it hasn't changed), which matches how browsers have implemented\n // CSS.supports()\n if (mStyle.style[prop] != before) {\n cleanElems();\n return prefixed == 'pfx' ? prop : true;\n }\n }\n // Otherwise just return true, or the property name if this is a\n // `prefixed()` call\n else {\n cleanElems();\n return prefixed == 'pfx' ? prop : true;\n }\n }\n }\n cleanElems();\n return false;\n }\n\n ;\n\n /**\n * testPropsAll tests a list of DOM properties we want to check against.\n * We specify literally ALL possible (known and/or likely) properties on\n * the element including the non-vendor prefixed one, for forward-\n * compatibility.\n *\n * @access private\n * @function testPropsAll\n * @param {string} prop - A string of the property to test for\n * @param {string|object} [prefixed] - An object to check the prefixed properties on. Use a string to skip\n * @param {HTMLElement|SVGElement} [elem] - An element used to test the property and value against\n * @param {string} [value] - A string of a css value\n * @param {boolean} [skipValueTest] - An boolean representing if you want to test if value sticks when set\n * @returns {false|string} returns the string version of the property, or false if it is unsupported\n */\n function testPropsAll(prop, prefixed, elem, value, skipValueTest) {\n\n var ucProp = prop.charAt(0).toUpperCase() + prop.slice(1),\n props = (prop + ' ' + cssomPrefixes.join(ucProp + ' ') + ucProp).split(' ');\n\n // did they call .prefixed('boxSizing') or are we just testing a prop?\n if (is(prefixed, 'string') || is(prefixed, 'undefined')) {\n return testProps(props, prefixed, value, skipValueTest);\n\n // otherwise, they called .prefixed('requestAnimationFrame', window[, elem])\n } else {\n props = (prop + ' ' + (domPrefixes).join(ucProp + ' ') + ucProp).split(' ');\n return testDOMProps(props, prefixed, elem);\n }\n }\n\n // Modernizr.testAllProps() investigates whether a given style property,\n // or any of its vendor-prefixed variants, is recognized\n //\n // Note that the property names must be provided in the camelCase variant.\n // Modernizr.testAllProps('boxSizing')\n ModernizrProto.testAllProps = testPropsAll;\n\n \n\n /**\n * testAllProps determines whether a given CSS property is supported in the browser\n *\n * @memberof Modernizr\n * @name Modernizr.testAllProps\n * @optionName Modernizr.testAllProps()\n * @optionProp testAllProps\n * @access public\n * @function testAllProps\n * @param {string} prop - String naming the property to test (either camelCase or kebab-case)\n * @param {string} [value] - String of the value to test\n * @param {boolean} [skipValueTest=false] - Whether to skip testing that the value is supported when using non-native detection\n * @example\n *\n * testAllProps determines whether a given CSS property, in some prefixed form,\n * is supported by the browser.\n *\n * ```js\n * testAllProps('boxSizing') // true\n * ```\n *\n * It can optionally be given a CSS value in string form to test if a property\n * value is valid\n *\n * ```js\n * testAllProps('display', 'block') // true\n * testAllProps('display', 'penguin') // false\n * ```\n *\n * A boolean can be passed as a third parameter to skip the value check when\n * native detection (@supports) isn't available.\n *\n * ```js\n * testAllProps('shapeOutside', 'content-box', true);\n * ```\n */\n\n function testAllProps(prop, value, skipValueTest) {\n return testPropsAll(prop, undefined, undefined, value, skipValueTest);\n }\n ModernizrProto.testAllProps = testAllProps;\n \n/*\n{\n \"name\": \"CSS Animations\",\n \"property\": \"cssanimations\",\n \"caniuse\": \"css-animation\",\n \"polyfills\": [\"transformie\", \"csssandpaper\"],\n \"tags\": [\"css\"],\n \"warnings\": [\"Android < 4 will pass this test, but can only animate a single property at a time\"],\n \"notes\": [{\n \"name\" : \"Article: 'Dispelling the Android CSS animation myths'\",\n \"href\": \"https://goo.gl/OGw5Gm\"\n }]\n}\n!*/\n/* DOC\nDetects whether or not elements can be animated using CSS\n*/\n\n Modernizr.addTest('cssanimations', testAllProps('animationName', 'a', true));\n\n/*\n{\n \"name\": \"CSS Transforms\",\n \"property\": \"csstransforms\",\n \"caniuse\": \"transforms2d\",\n \"tags\": [\"css\"]\n}\n!*/\n\n Modernizr.addTest('csstransforms', function() {\n // Android < 3.0 is buggy, so we sniff and blacklist\n // http://git.io/hHzL7w\n return navigator.userAgent.indexOf('Android 2.') === -1 &&\n testAllProps('transform', 'scale(1)', true);\n });\n\n\n /**\n * prefixed returns the prefixed or nonprefixed property name variant of your input\n *\n * @memberof Modernizr\n * @name Modernizr.prefixed\n * @optionName Modernizr.prefixed()\n * @optionProp prefixed\n * @access public\n * @function prefixed\n * @param {string} prop - String name of the property to test for\n * @param {object} [obj] - An object to test for the prefixed properties on\n * @param {HTMLElement} [elem] - An element used to test specific properties against\n * @returns {string|false} The string representing the (possibly prefixed) valid\n * version of the property, or `false` when it is unsupported.\n * @example\n *\n * Modernizr.prefixed takes a string css value in the DOM style camelCase (as\n * opposed to the css style kebab-case) form and returns the (possibly prefixed)\n * version of that property that the browser actually supports.\n *\n * For example, in older Firefox...\n * ```js\n * prefixed('boxSizing')\n * ```\n * returns 'MozBoxSizing'\n *\n * In newer Firefox, as well as any other browser that support the unprefixed\n * version would simply return `boxSizing`. Any browser that does not support\n * the property at all, it will return `false`.\n *\n * By default, prefixed is checked against a DOM element. If you want to check\n * for a property on another object, just pass it as a second argument\n *\n * ```js\n * var rAF = prefixed('requestAnimationFrame', window);\n *\n * raf(function() {\n * renderFunction();\n * })\n * ```\n *\n * Note that this will return _the actual function_ - not the name of the function.\n * If you need the actual name of the property, pass in `false` as a third argument\n *\n * ```js\n * var rAFProp = prefixed('requestAnimationFrame', window, false);\n *\n * rafProp === 'WebkitRequestAnimationFrame' // in older webkit\n * ```\n *\n * One common use case for prefixed is if you're trying to determine which transition\n * end event to bind to, you might do something like...\n * ```js\n * var transEndEventNames = {\n * 'WebkitTransition' : 'webkitTransitionEnd', * Saf 6, Android Browser\n * 'MozTransition' : 'transitionend', * only for FF < 15\n * 'transition' : 'transitionend' * IE10, Opera, Chrome, FF 15+, Saf 7+\n * };\n *\n * var transEndEventName = transEndEventNames[ Modernizr.prefixed('transition') ];\n * ```\n *\n * If you want a similar lookup, but in kebab-case, you can use [prefixedCSS](#modernizr-prefixedcss).\n */\n\n var prefixed = ModernizrProto.prefixed = function(prop, obj, elem) {\n if (prop.indexOf('@') === 0) {\n return atRule(prop);\n }\n\n if (prop.indexOf('-') != -1) {\n // Convert kebab-case to camelCase\n prop = cssToDOM(prop);\n }\n if (!obj) {\n return testPropsAll(prop, 'pfx');\n } else {\n // Testing DOM property e.g. Modernizr.prefixed('requestAnimationFrame', window) // 'mozRequestAnimationFrame'\n return testPropsAll(prop, obj, elem);\n }\n };\n\n \n/*\n{\n \"name\": \"requestAnimationFrame\",\n \"property\": \"requestanimationframe\",\n \"aliases\": [\"raf\"],\n \"caniuse\": \"requestanimationframe\",\n \"tags\": [\"animation\"],\n \"authors\": [\"Addy Osmani\"],\n \"notes\": [{\n \"name\": \"W3C spec\",\n \"href\": \"https://www.w3.org/TR/animation-timing/\"\n }],\n \"polyfills\": [\"raf\"]\n}\n!*/\n/* DOC\nDetects support for the `window.requestAnimationFrame` API, for offloading animation repainting to the browser for optimized performance.\n*/\n\n Modernizr.addTest('requestanimationframe', !!prefixed('requestAnimationFrame', window), {aliases: ['raf']});\n\n/*\n{\n \"name\": \"matchMedia\",\n \"property\": \"matchmedia\",\n \"caniuse\" : \"matchmedia\",\n \"tags\": [\"matchmedia\"],\n \"authors\": [\"Alberto Elias\"],\n \"notes\": [{\n \"name\": \"W3C CSSOM View Module\",\n \"href\": \"https://drafts.csswg.org/cssom-view/#the-mediaquerylist-interface\"\n }, {\n \"name\": \"MDN documentation\",\n \"href\": \"https://developer.mozilla.org/en-US/docs/Web/API/Window.matchMedia\"\n }],\n \"polyfills\": [\"matchmediajs\"]\n}\n!*/\n/* DOC\n\nDetects support for matchMedia.\n\n*/\n\n Modernizr.addTest('matchmedia', !!prefixed('matchMedia', window));\n\n\n // Run each test\n testRunner();\n\n delete ModernizrProto.addTest;\n delete ModernizrProto.addAsyncTest;\n\n // Run the things that are supposed to run after the tests\n for (var i = 0; i < Modernizr._q.length; i++) {\n Modernizr._q[i]();\n }\n\n // Leak Modernizr namespace\n window.Modernizr = Modernizr;\n\n\n;\n\n})(window, document);","console.log(' __ __ __ __ \\r\\n\\/\\\\ \\\\\\/\\\\ \\\\ \\/\\\\ \\\\ __ \\/\\\\ \\\\ \\r\\n\\\\ \\\\ \\\\_\\\\ \\\\ __ __ \\\\_\\\\ \\\\ __ \\/\\\\_\\\\ __ ___ \\\\ \\\\ \\\\\\/\\'\\\\ \\r\\n \\\\ \\\\ _ \\\\ \\/\\\\ \\\\\\/\\\\ \\\\ \\/\\'_` \\\\ \\/\\'__`\\\\ \\\\\\/\\\\ \\\\ \\/\\'__`\\\\ \\/\\'___\\\\\\\\ \\\\ , < \\r\\n \\\\ \\\\ \\\\ \\\\ \\\\\\\\ \\\\ \\\\_\\\\ \\\\ \\/\\\\ \\\\L\\\\ \\\\ \\/\\\\ __\\/ \\\\ \\\\ \\\\ \\/\\\\ \\\\L\\\\.\\\\_ \\/\\\\ \\\\__\\/ \\\\ \\\\ \\\\\\\\`\\\\ \\r\\n \\\\ \\\\_\\\\ \\\\_\\\\\\\\\\/`____ \\\\\\\\ \\\\___,_\\\\\\\\ \\\\____\\\\ _\\\\ \\\\ \\\\\\\\ \\\\__\\/.\\\\_\\\\\\\\ \\\\____\\\\ \\\\ \\\\_\\\\ \\\\_\\\\\\r\\n \\\\\\/_\\/\\\\\\/_\\/ `\\/___\\/> \\\\\\\\\\/__,_ \\/ \\\\\\/____\\/\\/\\\\ \\\\_\\\\ \\\\\\\\\\/__\\/\\\\\\/_\\/ \\\\\\/____\\/ \\\\\\/_\\/\\\\\\/_\\/\\r\\n \\/\\\\___\\/ \\\\ \\\\____\\/ \\r\\n \\\\\\/__\\/ \\\\\\/___\\/ \\n\\n');\nconsole.log('Powered by Hydejack v9.1.1 <https://hydejack.com/>');\n","// Copyright (c) 2019 Florian Klampfer <https://qwtel.com/>\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with this program. If not, see <http://www.gnu.org/licenses/>.\n\nimport { Observable, of } from 'rxjs';\n\n// HACK: Temporary MS Edge fix\n// TODO: Move rx-element into separate file or module\nexport { getScrollHeight, getScrollLeft, getScrollTop } from '@hydecorp/component/lib/util';\nexport { fromMediaQuery, fetchRx } from '@hydecorp/component/lib/creators';\nexport { subscribeWhen, filterWhen } from '@hydecorp/component/lib/operators';\nexport { createIntersectionObservable } from '@hydecorp/component/lib/observers';\n\nconst style = getComputedStyle(document.documentElement);\n\nexport const BREAK_POINT_3 = `(min-width: ${style.getPropertyValue('--break-point-3')})`;\nexport const BREAK_POINT_DYNAMIC = `(min-width: ${style.getPropertyValue('--break-point-dynamic')})`;\nexport const CONTENT_WIDTH_5 = parseFloat(style.getPropertyValue('--content-width-5'));\nexport const CONTENT_MARGIN_5 = parseFloat(style.getPropertyValue('--content-margin-5'));\nexport const DRAWER_WIDTH = parseFloat(style.getPropertyValue('--sidebar-width'));\nexport const HALF_CONTENT = parseFloat(style.getPropertyValue('--half-content'));\n\n// Check the user agent for Safari and iOS Safari, to give them some special treatment...\nconst ua = navigator.userAgent.toLowerCase();\nexport const isSafari = ua.indexOf('safari') > 0 && ua.indexOf('chrome') < 0;\nexport const isMobile = ua.indexOf('mobile') > 0;\nexport const isMobileSafari = isSafari && isMobile;\nexport const isUCBrowser = ua.indexOf('ucbrowser') > 0;\nexport const isFirefox = ua.indexOf('firefox') > 0;\nexport const isFirefoxIOS = ua.indexOf('fxios') > 0 && ua.indexOf('safari') > 0;\n\nexport const hasCSSOM = 'attributeStyleMap' in Element.prototype && 'CSS' in window && CSS.number;\n\nexport const webComponentsReady = new Promise((res) => {\n if ('customElements' in window) res(true);\n else document.addEventListener('WebComponentsReady', res);\n});\n\n// FIXME: Replace with something more robust!?\nexport const stylesheetReady = new Promise(function checkCSS(res, rej, retries = 30) {\n const drawerEl = document.querySelector('hy-drawer');\n if (!drawerEl) res(true);\n else if (getComputedStyle(drawerEl).getPropertyValue('--hy-drawer-width')) res(true);\n else if (retries <= 0) rej(Error('Stylesheet not loaded within 10 seconds'));\n else setTimeout(() => checkCSS(res, rej, retries - 1), 1000 / 3);\n});\n\nexport const once = (el, eventName) => new Promise((res) => el.addEventListener(eventName, res, { once: true }));\nexport const timeout = (t) => new Promise((res) => setTimeout(res, t));\n\n// Takes an array of Modernizr feature tests and makes sure they all pass.\nexport function hasFeatures(features) {\n if (!window.Modernizr) return true;\n return [...features].every((feature) => {\n const hasFeature = window.Modernizr[feature];\n if (!hasFeature && process.env.DEBUG) console.warn(`Feature '${feature}' missing!`);\n return hasFeature;\n });\n}\n\n// Some functions to hide and show content.\nexport function show() {\n this.style.display = 'block';\n this.style.visibility = 'visible';\n}\n\nexport function hide() {\n this.style.display = 'none';\n this.style.visibility = 'hidden';\n}\n\nexport function unshow() {\n this.style.display = '';\n this.style.visibility = '';\n}\n\nexport const unhide = unshow;\n\n// Same as `el.innerHTML = ''`, but not quite so hacky.\nexport function empty() {\n while (this?.firstChild) this.removeChild(this.firstChild);\n}\n\n/**\n * An observable wrapper for the WebAnimations API.\n * Will return an observable that emits once when the animation finishes.\n * @param {HTMLElement|null} el\n * @param {AnimationKeyFrame | AnimationKeyFrame[] | null} effect\n * @param {number|AnimationEffectTiming} timing\n * @returns {Observable<Event>}\n */\nexport function animate(el, effect, timing) {\n if (!el) return of(new CustomEvent('finish'));\n\n return Observable.create((observer) => {\n const anim = el.animate(effect, timing);\n\n anim.addEventListener('finish', (e) => {\n observer.next(e);\n requestAnimationFrame(() => {\n requestAnimationFrame(() => observer.complete());\n });\n });\n\n return () => {\n if (anim.playState !== 'finished') anim.cancel();\n };\n });\n}\n\n/**\n * @param {string} templateId\n * @returns {HTMLElement|null}\n */\nexport function importTemplate(templateId) {\n const template = document.getElementById(templateId);\n return template && document.importNode(template.content, true);\n}\n\nexport const body = document.body || document.documentElement;\nexport const rem = (units) => units * parseFloat(getComputedStyle(body).fontSize);\nexport const getViewWidth = () => window.innerWidth || body.clientWidth;\nexport const getViewHeight = () => window.innerHeight || body.clientHeight;\n\n/**\n * @template Q\n * @template S\n * @param {Worker} worker\n * @param {Q} message\n * @returns {Promise<S>}\n */\nexport function postMessage(worker, message) {\n return new Promise((resolve, reject) => {\n const messageChannel = new MessageChannel();\n messageChannel.port1.onmessage = (event) => {\n if (event.data.error) {\n reject(event.data.error);\n } else {\n resolve(event.data);\n }\n };\n worker.postMessage(message, [messageChannel.port2]);\n });\n}\n\nconst promisifyLoad = (loadFn) => (href) => new Promise((r) => loadFn(href).addEventListener('load', r));\n\n/** @type {(href: string) => Promise<Event>} */\nexport const loadJS = promisifyLoad(window.loadJS);\n\n/** @type {(href: string) => Promise<Event>} */\nexport const loadCSS = promisifyLoad(window.loadCSS);\n\n/**\n * @param {ArrayLike<Element>} els\n * @param {IntersectionObserverInit} [options]\n * @returns {Promise<IntersectionObserverEntry>}\n */\nexport function intersectOnce(els, options) {\n return new Promise((res) => {\n const io = new IntersectionObserver((entries) => {\n if (entries.some((x) => x.isIntersecting)) {\n els.forEach((el) => io.unobserve(el));\n res(entries.find((x) => x.isIntersecting));\n }\n }, options);\n els.forEach((el) => io.observe(el));\n });\n}\n","// Copyright (c) 2019 Florian Klampfer <https://qwtel.com/>\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with this program. If not, see <http://www.gnu.org/licenses/>.\n\nimport '@babel/polyfill';\n\nimport '../lib/version';\nimport '../lib/modernizr-custom';\nimport { hasFeatures } from './common';\n\n__webpack_public_path__ = window._publicPath;\n\nconst BASELINE = ['classlist', 'eventlistener', 'queryselector', 'template'];\nconst DARK_MODE_FEATURES = ['customproperties'];\nconst DRAWER_FEATURES = ['customproperties', 'history', 'matchmedia', 'opacity'];\nconst PUSH_STATE_FEATURES = ['history', 'matchmedia', 'opacity', 'cssanimations', 'cssremunit', 'documentfragment'];\nconst CLAP_BUTTON_FEATURES = ['customproperties', 'cssanimations', 'cssremunit'];\nconst TOC_FEATURES = ['matchmedia', 'cssremunit'];\n\nif (hasFeatures(BASELINE)) {\n import(/* webpackMode: \"eager\" */ './upgrades');\n\n if (!window._noNavbar) import(/* webpackChunkName: \"navbar\" */ './navbar');\n // if (!window._noSearch) import(/* webpackChunkName: \"search\" */ './pro/search');\n\n // if (hasFeatures(DARK_MODE_FEATURES)) {\n // import(/* webpackMode: \"eager\" */ './pro/cookies-banner');\n // import(/* webpackMode: \"eager\" */ './pro/dark-mode');\n // }\n\n if (window._clapButton && hasFeatures(CLAP_BUTTON_FEATURES)) {\n import(/* webpackChunkName: \"clap-button\" */ './clap-button');\n }\n\n // A list of Modernizr tests that are required for the drawer to work.\n if (!window._noDrawer && hasFeatures(DRAWER_FEATURES)) {\n import(/* webpackChunkName: \"drawer\" */ './drawer');\n }\n\n if (!window._noPushState && hasFeatures(PUSH_STATE_FEATURES)) {\n import(/* webpackChunkName: \"push-state\" */ './push-state');\n }\n\n // if (!window._noToc && hasFeatures(TOC_FEATURES)) {\n // import(/* webpackChunkName: \"toc\" */ './pro/toc');\n // }\n}\n","import { importTemplate, intersectOnce, loadCSS, stylesheetReady, once } from './common';\nimport { fromEvent } from 'rxjs';\nimport { concatMap } from 'rxjs/operators';\nimport { createElement } from 'create-element-x/library';\nimport tippy from 'tippy.js';\n\n// import LANG from './languages.json';\n\nconst toggleClass = (element, ...cls) => {\n element.classList.remove(...cls);\n void element.offsetWidth;\n element.classList.add(...cls);\n};\n\n(async () => {\n await Promise.all([\n ...('animate' in Element.prototype ? [] : [import(/* webpackChunkName: \"webanimations\" */ 'web-animations-js')]),\n ...('IntersectionObserver' in window\n ? []\n : [import(/* webpackChunkName: \"intersection-observer\" */ 'intersection-observer')]),\n ]);\n\n await stylesheetReady;\n\n const FN_SEL = \"li[id^='fn:']\";\n const FN_LINK_SEL = \"a[href^='#fn:']\";\n const HORIZONTAL_SCROLL_SEL =\n 'pre, table:not(.highlight), .katex-display, .break-layout, mjx-container[jax=\"CHTML\"][display=\"true\"]';\n const CODE_BLOCK_SEL = 'pre.highlight > code';\n const CODE_TITLE_RE = /(?:title|file):\\s*['\"`](([^'\"`\\\\]|\\\\.)*)['\"`]/iu;\n const HEADING_SELECTOR = 'h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]';\n\n const IMG_FADE_DURATION = 500;\n const IMG_KEYFRAMES = [{ opacity: 0 }, { opacity: 1 }];\n const IMG_SETTINGS = {\n fill: 'forwards',\n duration: IMG_FADE_DURATION,\n easing: 'ease',\n };\n\n const pushStateEl = document.querySelector('hy-push-state');\n\n const CODE_LINE_HEIGHT = 1.5;\n\n /** @param {(param0: HTMLElement|null) => void} fn\n * @param {any=} opts */\n function ready(fn, opts) {\n if (pushStateEl && !window._noPushState) {\n pushStateEl.addEventListener(\n 'hy-push-state-ready',\n ({\n detail: {\n replaceEls: [main],\n },\n }) => fn(main),\n opts,\n );\n }\n fn(document.getElementById('_main'));\n }\n\n /** @param {(param0: HTMLElement|null) => void} fn\n * @param {any=} opts */\n function load(fn, opts) {\n if (pushStateEl && !window._noPushState) {\n pushStateEl.addEventListener('hy-push-state-load', () => fn(document.getElementById('_main')), opts);\n }\n fn(document.getElementById('_main'));\n }\n\n let init = true;\n\n ready((main) => {\n if (!main) return;\n\n tippy(main.querySelectorAll('.post-date > .ellipsis'), {\n trigger: 'click',\n touch: true,\n interactive: true,\n allowHTML: true,\n maxWidth: 'none',\n placement: 'bottom-start',\n offset: 0,\n content: el => el.innerHTML,\n onTrigger(instance, event) {\n if (event.target.tagName === 'A') {\n instance._hideOnce = true;\n }\n },\n onShow(instance) {\n if (instance._hideOnce) {\n return instance._hideOnce = false;\n }\n },\n });\n\n tippy(main.querySelectorAll('abbr[title]'), {\n trigger: 'click',\n touch: true,\n maxWidth: 500,\n content: el => el.getAttribute('title'),\n });\n\n tippy(main.querySelectorAll('.sidebar-social [title]'), {\n touch: true,\n content: el => el.getAttribute('title'),\n });\n\n main.querySelectorAll(HEADING_SELECTOR).forEach((h) => {\n const df = importTemplate('_permalink-template');\n const a = df.querySelector('.permalink');\n a.href = `#${h.id}`;\n h.appendChild(df);\n });\n\n const toc = main.querySelector('#markdown-toc');\n if (toc) toc.classList.add('toc-hide');\n\n if ('clipboard' in navigator) {\n Array.from(main.querySelectorAll(CODE_BLOCK_SEL)).forEach((el) => {\n const container = el?.parentNode?.parentNode;\n const writeText = async () => {\n await navigator.clipboard.writeText(el.innerText);\n toggleClass(copyBtn, 'copy-success');\n };\n const copyBtn = createElement(\n 'button',\n { onClick: writeText },\n createElement('small', { class: 'icon-copy', title: 'Copy' }),\n createElement('small', { class: 'icon-checkmark', title: 'Done' }),\n );\n container?.appendChild(copyBtn);\n });\n }\n\n Array.from(main.querySelectorAll(CODE_BLOCK_SEL))\n .map((code) => code.children[0])\n .forEach((el) => {\n const result = CODE_TITLE_RE.exec(el?.innerText);\n if (!result) return;\n const [, fileName] = result;\n\n const code = el.parentNode;\n\n // Remove the first line\n const child0 = el.childNodes[0];\n const nli = child0.wholeText.indexOf('\\n');\n if (nli > -1) {\n const restNode = child0.splitText(nli);\n code.insertBefore(restNode, code.firstChild);\n }\n\n // Remove element before making changes\n code.removeChild(el);\n\n // Remove newline\n code.childNodes[0].splitText(1);\n code.removeChild(code.childNodes[0]);\n\n const container = code.parentNode.parentNode;\n\n // Language\n // const highlighter = container.parentNode;\n // const [, lang] = highlighter.classList.value.match(/language-(\\w*)/) ?? [];\n // const language = LANG[lang];\n\n const header = createElement(\n 'div',\n { class: 'pre-header break-layout' },\n createElement('span', {}, createElement('small', { class: 'icon-file-empty' }), ' ', fileName),\n // !language ? null : createElement('small', { class: 'fr lang' }, language),\n );\n\n container.insertBefore(header, container.firstChild);\n });\n\n if ('complete' in HTMLImageElement.prototype) {\n main.querySelectorAll('img[width][height][loading=lazy]').forEach((el) => {\n if (init && el.complete) return;\n el.style.opacity = '0';\n // TODO: replace with loading spinner\n el.addEventListener('load', () => el.animate(IMG_KEYFRAMES, IMG_SETTINGS), { once: true });\n });\n init = false;\n }\n\n // main.querySelectorAll(pushStateEl.linkSelector).forEach(anchor => {\n // caches.match(anchor.href).then(m => {\n // if (m) requestAnimationFrame(() => anchor.classList.add(\"visited\"));\n // });\n // });\n });\n\n /** @type {Promise<{}>|null} */\n let katexPromise = null;\n\n load(() => {\n const main = document.getElementById('_main');\n if (!main) return;\n\n const toc = main.querySelector('#markdown-toc');\n if (toc) {\n toc.classList.remove('toc-hide');\n toc.classList.add('toc-show');\n }\n\n main.querySelectorAll(FN_SEL).forEach((li) => (li.tabIndex = 0));\n\n main\n .querySelectorAll(FN_LINK_SEL)\n .forEach((a) =>\n a.addEventListener('click', (e) =>\n document.getElementById(e.currentTarget.getAttribute('href').substr(1))?.focus(),\n ),\n );\n\n main\n .querySelectorAll(HORIZONTAL_SCROLL_SEL)\n .forEach((el) =>\n el.addEventListener('touchstart', (e) => el.scrollLeft > 0 && e.stopPropagation(), { passive: false }),\n );\n\n // Array.from(main.querySelectorAll(CODE_BLOCK_SEL)).forEach((code) => {\n // Array.from(code.querySelectorAll('span[class^=\"c\"]'))\n // .filter((c1) => c1.innerText.includes('!!'))\n // .forEach((c1) => {\n // const [, n] = c1.innerText.match(/!!\\s*(\\d+)/) || [, '1'];\n // const hl = createElement('span', { class: '__hl', style: `height: ${Number(n) * CODE_LINE_HEIGHT}em` });\n // c1.innerText = c1.innerText.replace(`!!${n}`, '!!');\n // const hasContent = c1.innerText?.match(/[\\p{L}|\\d]/u);\n // if (!hasContent) {\n // c1.parentElement?.replaceChild(hl, c1);\n // } else {\n // c1.innerText = c1.innerText.replace('!!', '');\n // c1.parentElement?.insertBefore(hl, c1);\n // }\n // });\n // });\n\n const katexHref = document.getElementById('_katexPreload')?.href;\n if (!katexPromise && katexHref) {\n intersectOnce(main.querySelectorAll('.katex'), { rootMargin: '1440px' }).then(() => {\n katexPromise = loadCSS(katexHref);\n });\n }\n });\n\n const mathJaxEl = document.getElementById('_MathJax');\n if (pushStateEl && mathJaxEl) {\n const mathJax2To3 = ({\n detail: {\n replaceEls: [mainEl],\n },\n }) => {\n mainEl.querySelectorAll('script[type=\"math/tex; mode=display\"]').forEach((el) => {\n el.outerHTML = el.innerText.replace('% <![CDATA[', '\\\\[').replace('%]]>', '\\\\]');\n });\n mainEl.querySelectorAll('script[type=\"math/tex\"]').forEach((el) => {\n el.outerHTML = `\\\\(${el.innerText}\\\\)`;\n });\n };\n\n mathJax2To3({ detail: { replaceEls: [document] } });\n\n if (!('MathJax' in window)) await once(mathJaxEl, 'load');\n\n await MathJax.typesetPromise();\n\n if (!window._noPushState) {\n pushStateEl.addEventListener('ready', mathJax2To3);\n fromEvent(pushStateEl, 'after')\n .pipe(concatMap(() => MathJax.typesetPromise()))\n .subscribe();\n }\n }\n})();\n","import { Observable, animationFrames } from \"rxjs\";\nimport { map, takeWhile, endWith } from \"rxjs/operators\";\n\nexport function fetchRx(input: RequestInfo, init?: RequestInit): Observable<Response> {\n return new Observable(observer => {\n const controller = new AbortController();\n const { signal } = controller;\n\n let response: Response | null = null;\n fetch(input, { ...init, signal })\n .then(r => {\n response = r;\n observer.next(r);\n observer.complete();\n })\n .catch(x => observer.error(x));\n\n return () => { if (!response) controller.abort(); };\n });\n}\n\nexport function fromMediaQuery(mql: MediaQueryList): Observable<MediaQueryListEvent> {\n return new Observable(o => {\n const l = o.next.bind(o);\n if (mql.onchange) mql.addEventListener('change', l); else mql.addListener(l);\n return () => {\n if (mql.onchange) mql.removeEventListener('change', l); else mql.removeListener(l);\n }\n });\n}\n\nexport function tween(easingFn: (t: number, b: number, c: number, d: number, s?: number) => number, b: number, c: number, d: number, s?: number): Observable<number> {\n return animationFrames().pipe(\n map(({ elapsed }) => elapsed),\n takeWhile(t => t < d),\n endWith(d),\n map(t => easingFn(t, b, c, d, s)),\n )\n}\n","import { Observable } from \"rxjs\";\n\nexport function createResizeObservable(el: HTMLElement): Observable<ResizeObserverEntry> {\n return new Observable((obs) => {\n const observer = new ResizeObserver(xs => xs.forEach(x => obs.next(x)));\n observer.observe(el);\n return () => { observer.unobserve(el); };\n });\n}\n\nexport function createMutationObservable(el: HTMLElement, options?: MutationObserverInit): Observable<MutationRecord> {\n return new Observable((obs) => {\n const observer = new MutationObserver(xs => xs.forEach(x => obs.next(x)));\n observer.observe(el, options);\n return () => { observer.disconnect(); };\n });\n}\n\nexport function createIntersectionObservable(els: HTMLElement|HTMLElement[], options?: IntersectionObserverInit): Observable<IntersectionObserverEntry[]> {\n return new Observable((obs) => {\n const observer = new IntersectionObserver(xs => obs.next(xs), options);\n\n if (Array.isArray(els)) els.forEach(el => observer.observe(el));\n else observer.observe(els);\n\n return () => {\n if (Array.isArray(els)) els.forEach(el => observer.unobserve(el));\n else observer.unobserve(els);\n };\n });\n}","import { Observable, NEVER, OperatorFunction } from \"rxjs\";\nimport { filter, map, switchMap, withLatestFrom, tap, debounceTime } from \"rxjs/operators\";\n\nexport function subscribeWhen<T>(p$: Observable<boolean>) {\n return (source: Observable<T>) => {\n return p$.pipe(switchMap(p => (p ? source : NEVER)));\n };\n}\n\nexport function unsubscribeWhen<T>(p$: Observable<boolean>) {\n return (source: Observable<T>) => {\n return p$.pipe(switchMap(p => (p ? NEVER : source)));\n };\n}\n\n// export function filterWhen<T>(p$: Observable<boolean>) {\n// return (source: Observable<T>) => {\n// return source.pipe(\n// withLatestFrom(p$),\n// filter(([, p]) => p),\n// map(([x]) => x)\n// );\n// };\n// };\n\nexport function filterWhen<T>(p$: Observable<boolean>, ...others: Observable<boolean>[]) {\n return (source: Observable<T>) => {\n if (others.length === 0) {\n return source.pipe(\n withLatestFrom(p$),\n filter(([, p]) => p),\n map(([x]) => x)\n );\n }\n\n return source.pipe(\n withLatestFrom(p$, ...others),\n filter(([, ...ps]) => ps.every(p => p)),\n map(([x]) => x as T)\n );\n };\n};\n\nexport function bufferDebounceTime<T>(time: number = 0): OperatorFunction<T, T[]> {\n return (source: Observable<T>) => {\n let bufferedValues: T[] = [];\n\n return source.pipe(\n tap(value => bufferedValues.push(value)),\n debounceTime(time),\n map(() => bufferedValues),\n tap(() => bufferedValues = []),\n );\n };\n}\n","export function getScrollHeight() {\n const h = document.documentElement;\n const b = document.body;\n const sh = \"scrollHeight\";\n return h[sh] || b[sh];\n}\n\nexport function getScrollLeft() {\n return window.pageXOffset || document.body.scrollLeft;\n}\n\nexport function getScrollTop() {\n return window.pageYOffset || document.body.scrollTop;\n}\n\nexport const matches = (el: Element, selector: string) => (el.matches || (<any>el)['msMatchesSelector']).call(el, selector);\n\n// Checks if this element or any of its parents matches a given `selector`.\nexport function matchesAncestors(el: Element | null, selector: string): Element | null {\n let curr = el;\n while (curr != null) {\n if (matches(curr, selector)) return curr;\n curr = curr.parentNode instanceof Element ? curr.parentNode : null;\n }\n return null;\n}\n\nexport function fragmentFromString(strHTML: string): DocumentFragment {\n return document.createRange().createContextualFragment(strHTML);\n}\n\ntype Resolver<T> = (value: T | PromiseLike<T>) => void;\ntype Rejector = (reason?: any) => void;\ntype ResolvablePromise<T> = Promise<T> & { resolve: Resolver<T>, reject: Rejector }\nexport function createResolvablePromise<T>(): ResolvablePromise<T> {\n let res!: Resolver<T>;\n let rej!: Rejector;\n const promise = new Promise((r, s) => (res = r, rej = s)) as ResolvablePromise<T>;\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n}\n","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign(Object.assign({}, DEFAULT_OPTIONS), defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign(Object.assign(Object.assign({}, defaultOptions), state.options), options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = Math.max(rect.top, accRect.top);\n accRect.right = Math.min(rect.right, accRect.right);\n accRect.bottom = Math.min(rect.bottom, accRect.bottom);\n accRect.left = Math.max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = element.ownerDocument.body;\n var width = Math.max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = Math.max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += Math.max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","// Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\nexport default function getLayoutRect(element) {\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: element.offsetWidth,\n height: element.offsetHeight\n };\n}","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n var offsetParent = element.offsetParent;\n\n if (offsetParent) {\n var html = getDocumentElement(offsetParent);\n\n if (getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static' && getComputedStyle(html).position !== 'static') {\n return html;\n }\n }\n\n return offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.willChange && css.willChange !== 'auto') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static') {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || // DOM Element detected\n // $FlowFixMe[incompatible-return]: need a better way to handle this...\n element.host || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","/*:: import type { Window } from '../types'; */\n\n/*:: declare function getWindow(node: Node | Window): Window; */\nexport default function getWindow(node) {\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getWindow from \"./getWindow.js\";\n/*:: declare function isElement(node: mixed): boolean %checks(node instanceof\n Element); */\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n/*:: declare function isHTMLElement(node: mixed): boolean %checks(node instanceof\n HTMLElement); */\n\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n/*:: declare function isShadowRoot(node: mixed): boolean %checks(node instanceof\n ShadowRoot); */\n\n\nfunction isShadowRoot(node) {\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = getNodeName(scrollParent) === 'body';\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export * from \"./enums.js\";\nexport * from \"./modifiers/index.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport { popperGenerator, detectOverflow, createPopper as createPopperBase } from \"./createPopper.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper } from \"./popper.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\";","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = state.modifiersData[name + \"#persistent\"].padding;\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element,\n _options$padding = options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n state.modifiersData[name + \"#persistent\"] = {\n padding: mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements))\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: Math.round(x * dpr) / dpr || 0,\n y: Math.round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets ? roundOffsetsByDPR(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n /*:: offsetParent = (offsetParent: Element); */\n\n\n if (placement === top) {\n sideY = bottom;\n y -= offsetParent.clientHeight - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right;\n x -= offsetParent.clientWidth - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign(Object.assign({}, commonStyles), {}, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign(Object.assign({}, commonStyles), {}, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign(Object.assign({}, state.styles.popper), mapToStyles(Object.assign(Object.assign({}, commonStyles), {}, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign(Object.assign({}, state.styles.arrow), mapToStyles(Object.assign(Object.assign({}, commonStyles), {}, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign(Object.assign({}, state.attributes.popper), {}, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign(Object.assign({}, state.attributes.popper), {}, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","export { default as applyStyles } from \"./applyStyles.js\";\nexport { default as arrow } from \"./arrow.js\";\nexport { default as computeStyles } from \"./computeStyles.js\";\nexport { default as eventListeners } from \"./eventListeners.js\";\nexport { default as flip } from \"./flip.js\";\nexport { default as hide } from \"./hide.js\";\nexport { default as offset } from \"./offset.js\";\nexport { default as popperOffsets } from \"./popperOffsets.js\";\nexport { default as preventOverflow } from \"./preventOverflow.js\";","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign(Object.assign({}, rects), {}, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign(Object.assign({}, state.rects), {}, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? Math.min(min, tetherMin) : min, offset, tether ? Math.max(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(_min, _offset, _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\n\n/*:: type OverflowsMap = { [ComputedPlacement]: number }; */\n\n/*;; type OverflowsMap = { [key in ComputedPlacement]: number }; */\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign(Object.assign({}, popperRect), popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","export default function format(str) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return [].concat(args).reduce(function (p, c) {\n return p.replace(/%s/, c);\n }, str);\n}","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign(Object.assign(Object.assign({}, existing), current), {}, {\n options: Object.assign(Object.assign({}, existing.options), current.options),\n data: Object.assign(Object.assign({}, existing.data), current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign(Object.assign({}, getFreshSideObject()), paddingObject);\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function rectToClientRect(rect) {\n return Object.assign(Object.assign({}, rect), {}, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","export default function uniqueBy(arr, fn) {\n var identifiers = new Set();\n return arr.filter(function (item) {\n var identifier = fn(item);\n\n if (!identifiers.has(identifier)) {\n identifiers.add(identifier);\n return true;\n }\n });\n}","import format from \"./format.js\";\nimport { modifierPhases } from \"../enums.js\";\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nexport default function validateModifiers(modifiers) {\n modifiers.forEach(function (modifier) {\n Object.keys(modifier).forEach(function (key) {\n switch (key) {\n case 'name':\n if (typeof modifier.name !== 'string') {\n console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n }\n\n break;\n\n case 'enabled':\n if (typeof modifier.enabled !== 'boolean') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n }\n\n case 'phase':\n if (modifierPhases.indexOf(modifier.phase) < 0) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n }\n\n break;\n\n case 'fn':\n if (typeof modifier.fn !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'effect':\n if (typeof modifier.effect !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'requires':\n if (!Array.isArray(modifier.requires)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n }\n\n break;\n\n case 'requiresIfExists':\n if (!Array.isArray(modifier.requiresIfExists)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n }\n\n break;\n\n case 'options':\n case 'data':\n break;\n\n default:\n console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n return \"\\\"\" + s + \"\\\"\";\n }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n }\n\n modifier.requires && modifier.requires.forEach(function (requirement) {\n if (modifiers.find(function (mod) {\n return mod.name === requirement;\n }) == null) {\n console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n }\n });\n });\n });\n}","export default function within(min, value, max) {\n return Math.max(min, Math.min(value, max));\n}","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = require('./_wks')('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar at = require('./_string-at')(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n","module.exports = function (it, Constructor, name, forbiddenField) {\n if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {\n throw TypeError(name + ': incorrect invocation!');\n } return it;\n};\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\n'use strict';\nvar toObject = require('./_to-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\n\nmodule.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var to = toAbsoluteIndex(target, len);\n var from = toAbsoluteIndex(start, len);\n var end = arguments.length > 2 ? arguments[2] : undefined;\n var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else delete O[to];\n to += inc;\n from += inc;\n } return O;\n};\n","// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\n'use strict';\nvar toObject = require('./_to-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var aLen = arguments.length;\n var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);\n var end = aLen > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = require('./_ctx');\nvar IObject = require('./_iobject');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar asc = require('./_array-species-create');\nmodule.exports = function (TYPE, $create) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n var create = $create || asc;\n return function ($this, callbackfn, that) {\n var O = toObject($this);\n var self = IObject(O);\n var f = ctx(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var val, res;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n val = self[index];\n res = f(val, index, O);\n if (TYPE) {\n if (IS_MAP) result[index] = res; // map\n else if (res) switch (TYPE) {\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n","var isObject = require('./_is-object');\nvar isArray = require('./_is-array');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (original) {\n var C;\n if (isArray(original)) {\n C = original.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n","// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = require('./_array-species-constructor');\n\nmodule.exports = function (original, length) {\n return new (speciesConstructor(original))(length);\n};\n","'use strict';\nvar aFunction = require('./_a-function');\nvar isObject = require('./_is-object');\nvar invoke = require('./_invoke');\nvar arraySlice = [].slice;\nvar factories = {};\n\nvar construct = function (F, len, args) {\n if (!(len in factories)) {\n for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func\n factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');\n } return factories[len](F, args);\n};\n\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = arraySlice.call(arguments, 1);\n var bound = function (/* args... */) {\n var args = partArgs.concat(arraySlice.call(arguments));\n return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);\n };\n if (isObject(fn.prototype)) bound.prototype = fn.prototype;\n return bound;\n};\n","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof');\nvar TAG = require('./_wks')('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","'use strict';\nvar dP = require('./_object-dp').f;\nvar create = require('./_object-create');\nvar redefineAll = require('./_redefine-all');\nvar ctx = require('./_ctx');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar $iterDefine = require('./_iter-define');\nvar step = require('./_iter-step');\nvar setSpecies = require('./_set-species');\nvar DESCRIPTORS = require('./_descriptors');\nvar fastKey = require('./_meta').fastKey;\nvar validate = require('./_validate-collection');\nvar SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function (that, key) {\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return that._i[index];\n // frozen object case\n for (entry = that._f; entry; entry = entry.n) {\n if (entry.k == key) return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {\n entry.r = true;\n if (entry.p) entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = validate(this, NAME);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.n;\n var prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if (prev) prev.n = next;\n if (next) next.p = prev;\n if (that._f == entry) that._f = next;\n if (that._l == entry) that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n validate(this, NAME);\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.n : this._f) {\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(validate(this, NAME), key);\n }\n });\n if (DESCRIPTORS) dP(C.prototype, 'size', {\n get: function () {\n return validate(this, NAME)[SIZE];\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var entry = getEntry(that, key);\n var prev, index;\n // change existing entry\n if (entry) {\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if (!that._f) that._f = entry;\n if (prev) prev.n = entry;\n that[SIZE]++;\n // add to index\n if (index !== 'F') that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function (C, NAME, IS_MAP) {\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function (iterated, kind) {\n this._t = validate(iterated, NAME); // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function () {\n var that = this;\n var kind = that._k;\n var entry = that._l;\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n // get next entry\n if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if (kind == 'keys') return step(0, entry.k);\n if (kind == 'values') return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n","'use strict';\nvar redefineAll = require('./_redefine-all');\nvar getWeak = require('./_meta').getWeak;\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar createArrayMethod = require('./_array-methods');\nvar $has = require('./_has');\nvar validate = require('./_validate-collection');\nvar arrayFind = createArrayMethod(5);\nvar arrayFindIndex = createArrayMethod(6);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (that) {\n return that._l || (that._l = new UncaughtFrozenStore());\n};\nvar UncaughtFrozenStore = function () {\n this.a = [];\n};\nvar findUncaughtFrozen = function (store, key) {\n return arrayFind(store.a, function (it) {\n return it[0] === key;\n });\n};\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.a.push([key, value]);\n },\n 'delete': function (key) {\n var index = arrayFindIndex(this.a, function (it) {\n return it[0] === key;\n });\n if (~index) this.a.splice(index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = id++; // collection id\n that._l = undefined; // leak store for uncaught frozen objects\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.3.3.2 WeakMap.prototype.delete(key)\n // 23.4.3.3 WeakSet.prototype.delete(value)\n 'delete': function (key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);\n return data && $has(data, this._i) && delete data[this._i];\n },\n // 23.3.3.4 WeakMap.prototype.has(key)\n // 23.4.3.4 WeakSet.prototype.has(value)\n has: function has(key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);\n return data && $has(data, this._i);\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var data = getWeak(anObject(key), true);\n if (data === true) uncaughtFrozenStore(that).set(key, value);\n else data[that._i] = value;\n return that;\n },\n ufstore: uncaughtFrozenStore\n};\n","'use strict';\nvar global = require('./_global');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar redefineAll = require('./_redefine-all');\nvar meta = require('./_meta');\nvar forOf = require('./_for-of');\nvar anInstance = require('./_an-instance');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar $iterDetect = require('./_iter-detect');\nvar setToStringTag = require('./_set-to-string-tag');\nvar inheritIfRequired = require('./_inherit-if-required');\n\nmodule.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {\n var Base = global[NAME];\n var C = Base;\n var ADDER = IS_MAP ? 'set' : 'add';\n var proto = C && C.prototype;\n var O = {};\n var fixMethod = function (KEY) {\n var fn = proto[KEY];\n redefine(proto, KEY,\n KEY == 'delete' ? function (a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a) {\n return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; }\n : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; }\n );\n };\n if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {\n new C().entries().next();\n }))) {\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n var instance = new C();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new C();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n if (!ACCEPT_ITERABLES) {\n C = wrapper(function (target, iterable) {\n anInstance(target, C, NAME);\n var that = inheritIfRequired(new Base(), target, C);\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n return that;\n });\n C.prototype = proto;\n proto.constructor = C;\n }\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n // weak collections should not contains .clear method\n if (IS_WEAK && proto.clear) delete proto.clear;\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F * (C != Base), O);\n\n if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n","var core = module.exports = { version: '2.6.11' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar anObject = require('./_an-object');\nvar toPrimitive = require('./_to-primitive');\nvar NUMBER = 'number';\n\nmodule.exports = function (hint) {\n if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint');\n return toPrimitive(anObject(this), hint != NUMBER);\n};\n","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n","var global = require('./_global');\nvar core = require('./_core');\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar ctx = require('./_ctx');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n","var MATCH = require('./_wks')('match');\nmodule.exports = function (KEY) {\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch (e) {\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch (f) { /* empty */ }\n } return true;\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n","'use strict';\nrequire('./es6.regexp.exec');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar wks = require('./_wks');\nvar regexpExec = require('./_regexp-exec');\n\nvar SPECIES = wks('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {\n // Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length === 2 && result[0] === 'a' && result[1] === 'b';\n})();\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n re.exec = function () { execCalled = true; return null; };\n if (KEY === 'split') {\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n }\n re[SYMBOL]('');\n return !execCalled;\n }) : undefined;\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var fns = exec(\n defined,\n SYMBOL,\n ''[KEY],\n function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }\n );\n var strfn = fns[0];\n var rxfn = fns[1];\n\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return rxfn.call(string, this); }\n );\n }\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar isArray = require('./_is-array');\nvar isObject = require('./_is-object');\nvar toLength = require('./_to-length');\nvar ctx = require('./_ctx');\nvar IS_CONCAT_SPREADABLE = require('./_wks')('isConcatSpreadable');\n\nfunction flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? ctx(mapper, thisArg, 3) : false;\n var element, spreadable;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n spreadable = false;\n if (isObject(element)) {\n spreadable = element[IS_CONCAT_SPREADABLE];\n spreadable = spreadable !== undefined ? !!spreadable : isArray(element);\n }\n\n if (spreadable && depth > 0) {\n targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1;\n } else {\n if (targetIndex >= 0x1fffffffffffff) throw TypeError();\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n}\n\nmodule.exports = flattenIntoArray;\n","var ctx = require('./_ctx');\nvar call = require('./_iter-call');\nvar isArrayIter = require('./_is-array-iter');\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar getIterFn = require('./core.get-iterator-method');\nvar BREAK = {};\nvar RETURN = {};\nvar exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {\n var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);\n var f = ctx(fn, that, entries ? 2 : 1);\n var index = 0;\n var length, step, iterator, result;\n if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if (result === BREAK || result === RETURN) return result;\n } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {\n result = call(iterator, f, step.value, entries);\n if (result === BREAK || result === RETURN) return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n","module.exports = require('./_shared')('native-function-to-string', Function.toString);\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","var isObject = require('./_is-object');\nvar setPrototypeOf = require('./_set-proto').set;\nmodule.exports = function (that, target, C) {\n var S = target.constructor;\n var P;\n if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {\n setPrototypeOf(that, P);\n } return that;\n};\n","// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function (fn, args, that) {\n var un = that === undefined;\n switch (args.length) {\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n","// check on default Array iterator\nvar Iterators = require('./_iterators');\nvar ITERATOR = require('./_wks')('iterator');\nvar ArrayProto = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n","// 20.1.2.3 Number.isInteger(number)\nvar isObject = require('./_is-object');\nvar floor = Math.floor;\nmodule.exports = function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","// 7.2.8 IsRegExp(argument)\nvar isObject = require('./_is-object');\nvar cof = require('./_cof');\nvar MATCH = require('./_wks')('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n","// call something on iterator step with safe closing on error\nvar anObject = require('./_an-object');\nmodule.exports = function (iterator, fn, value, entries) {\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (e) {\n var ret = iterator['return'];\n if (ret !== undefined) anObject(ret.call(iterator));\n throw e;\n }\n};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","var ITERATOR = require('./_wks')('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function () { SAFE_CLOSING = true; };\n // eslint-disable-next-line no-throw-literal\n Array.from(riter, function () { throw 2; });\n} catch (e) { /* empty */ }\n\nmodule.exports = function (exec, skipClosing) {\n if (!skipClosing && !SAFE_CLOSING) return false;\n var safe = false;\n try {\n var arr = [7];\n var iter = arr[ITERATOR]();\n iter.next = function () { return { done: safe = true }; };\n arr[ITERATOR] = function () { return iter; };\n exec(arr);\n } catch (e) { /* empty */ }\n return safe;\n};\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","module.exports = {};\n","module.exports = false;\n","// 20.2.2.14 Math.expm1(x)\nvar $expm1 = Math.expm1;\nmodule.exports = (!$expm1\n // Old FF bug\n || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168\n // Tor Browser bug\n || $expm1(-2e-17) != -2e-17\n) ? function expm1(x) {\n return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;\n} : $expm1;\n","// 20.2.2.16 Math.fround(x)\nvar sign = require('./_math-sign');\nvar pow = Math.pow;\nvar EPSILON = pow(2, -52);\nvar EPSILON32 = pow(2, -23);\nvar MAX32 = pow(2, 127) * (2 - EPSILON32);\nvar MIN32 = pow(2, -126);\n\nvar roundTiesToEven = function (n) {\n return n + 1 / EPSILON - 1 / EPSILON;\n};\n\nmodule.exports = Math.fround || function fround(x) {\n var $abs = Math.abs(x);\n var $sign = sign(x);\n var a, result;\n if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;\n a = (1 + EPSILON32 / EPSILON) * $abs;\n result = a - (a - $abs);\n // eslint-disable-next-line no-self-compare\n if (result > MAX32 || result != result) return $sign * Infinity;\n return $sign * result;\n};\n","// 20.2.2.20 Math.log1p(x)\nmodule.exports = Math.log1p || function log1p(x) {\n return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);\n};\n","// 20.2.2.28 Math.sign(x)\nmodule.exports = Math.sign || function sign(x) {\n // eslint-disable-next-line no-self-compare\n return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;\n};\n","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n","var global = require('./_global');\nvar macrotask = require('./_task').set;\nvar Observer = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar isNode = require('./_cof')(process) == 'process';\n\nmodule.exports = function () {\n var head, last, notify;\n\n var flush = function () {\n var parent, fn;\n if (isNode && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (e) {\n if (head) notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (isNode) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339\n } else if (Observer && !(global.navigator && global.navigator.standalone)) {\n var toggle = true;\n var node = document.createTextNode('');\n new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n var promise = Promise.resolve(undefined);\n notify = function () {\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n };\n};\n","'use strict';\n// 25.4.1.5 NewPromiseCapability(C)\nvar aFunction = require('./_a-function');\n\nfunction PromiseCapability(C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n}\n\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar DESCRIPTORS = require('./_descriptors');\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || require('./_fails')(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* 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 dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n","'use strict';\n// Forced replacement prototype accessors methods\nmodule.exports = require('./_library') || !require('./_fails')(function () {\n var K = Math.random();\n // In FF throws only define methods\n // eslint-disable-next-line no-undef, no-useless-call\n __defineSetter__.call(null, K, function () { /* empty */ });\n delete require('./_global')[K];\n});\n","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal');\nvar hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n","exports.f = Object.getOwnPropertySymbols;\n","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","exports.f = {}.propertyIsEnumerable;\n","// most Object methods by ES6 should accept primitives\nvar $export = require('./_export');\nvar core = require('./_core');\nvar fails = require('./_fails');\nmodule.exports = function (KEY, exec) {\n var fn = (core.Object || {})[KEY] || Object[KEY];\n var exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);\n};\n","var DESCRIPTORS = require('./_descriptors');\nvar getKeys = require('./_object-keys');\nvar toIObject = require('./_to-iobject');\nvar isEnum = require('./_object-pie').f;\nmodule.exports = function (isEntries) {\n return function (it) {\n var O = toIObject(it);\n var keys = getKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || isEnum.call(O, key)) {\n result.push(isEntries ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n","// all object keys, includes non-enumerable and symbols\nvar gOPN = require('./_object-gopn');\nvar gOPS = require('./_object-gops');\nvar anObject = require('./_an-object');\nvar Reflect = require('./_global').Reflect;\nmodule.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {\n var keys = gOPN.f(anObject(it));\n var getSymbols = gOPS.f;\n return getSymbols ? keys.concat(getSymbols(it)) : keys;\n};\n","var $parseFloat = require('./_global').parseFloat;\nvar $trim = require('./_string-trim').trim;\n\nmodule.exports = 1 / $parseFloat(require('./_string-ws') + '-0') !== -Infinity ? function parseFloat(str) {\n var string = $trim(String(str), 3);\n var result = $parseFloat(string);\n return result === 0 && string.charAt(0) == '-' ? -0 : result;\n} : $parseFloat;\n","var $parseInt = require('./_global').parseInt;\nvar $trim = require('./_string-trim').trim;\nvar ws = require('./_string-ws');\nvar hex = /^[-+]?0[xX]/;\n\nmodule.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {\n var string = $trim(String(str), 3);\n return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));\n} : $parseInt;\n","module.exports = function (exec) {\n try {\n return { e: false, v: exec() };\n } catch (e) {\n return { e: true, v: e };\n }\n};\n","var anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar newPromiseCapability = require('./_new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\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 redefine = require('./_redefine');\nmodule.exports = function (target, src, safe) {\n for (var key in src) redefine(target, key, src[key], safe);\n return target;\n};\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar has = require('./_has');\nvar SRC = require('./_uid')('src');\nvar $toString = require('./_function-to-string');\nvar TO_STRING = 'toString';\nvar TPL = ('' + $toString).split(TO_STRING);\n\nrequire('./_core').inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n","'use strict';\n\nvar classof = require('./_classof');\nvar builtinExec = RegExp.prototype.exec;\n\n // `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw new TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n if (classof(R) !== 'RegExp') {\n throw new TypeError('RegExp#exec called on incompatible receiver');\n }\n return builtinExec.call(R, S);\n};\n","'use strict';\n\nvar regexpFlags = require('./_flags');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar LAST_INDEX = 'lastIndex';\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/,\n re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;\n})();\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + re.source + '$(?!\\\\s)', regexpFlags.call(re));\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];\n\n match = nativeExec.call(re, str);\n\n if (UPDATES_LAST_INDEX_WRONG && match) {\n re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n // eslint-disable-next-line no-loop-func\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","// 7.2.9 SameValue(x, y)\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n","'use strict';\nvar global = require('./_global');\nvar dP = require('./_object-dp');\nvar DESCRIPTORS = require('./_descriptors');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (KEY) {\n var C = global[KEY];\n if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n};\n","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n","// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = require('./_an-object');\nvar aFunction = require('./_a-function');\nvar SPECIES = require('./_wks')('species');\nmodule.exports = function (O, D) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = require('./_is-regexp');\nvar defined = require('./_defined');\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n","var $export = require('./_export');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '&quot;') + '\"';\n return p1 + '>' + S + '</' + tag + '>';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n","// https://github.com/tc39/proposal-string-pad-start-end\nvar toLength = require('./_to-length');\nvar repeat = require('./_string-repeat');\nvar defined = require('./_defined');\n\nmodule.exports = function (that, maxLength, fillString, left) {\n var S = String(defined(that));\n var stringLength = S.length;\n var fillStr = fillString === undefined ? ' ' : String(fillString);\n var intMaxLength = toLength(maxLength);\n if (intMaxLength <= stringLength || fillStr == '') return S;\n var fillLen = intMaxLength - stringLength;\n var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));\n if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen);\n return left ? stringFiller + S : S + stringFiller;\n};\n","'use strict';\nvar toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n\nmodule.exports = function repeat(count) {\n var str = String(defined(this));\n var res = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError(\"Count can't be negative\");\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str;\n return res;\n};\n","var $export = require('./_export');\nvar defined = require('./_defined');\nvar fails = require('./_fails');\nvar spaces = require('./_string-ws');\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var ctx = require('./_ctx');\nvar invoke = require('./_invoke');\nvar html = require('./_html');\nvar cel = require('./_dom-create');\nvar global = require('./_global');\nvar process = global.process;\nvar setTask = global.setImmediate;\nvar clearTask = global.clearImmediate;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\nvar run = function () {\n var id = +this;\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function (event) {\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!setTask || !clearTask) {\n setTask = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (require('./_cof')(process) == 'process') {\n defer = function (id) {\n process.nextTick(ctx(run, id, 1));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if (MessageChannel) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {\n defer = function (id) {\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in cel('script')) {\n defer = function (id) {\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n","// https://tc39.github.io/ecma262/#sec-toindex\nvar toInteger = require('./_to-integer');\nvar toLength = require('./_to-length');\nmodule.exports = function (it) {\n if (it === undefined) return 0;\n var number = toInteger(it);\n var length = toLength(number);\n if (number !== length) throw RangeError('Wrong length!');\n return length;\n};\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nif (require('./_descriptors')) {\n var LIBRARY = require('./_library');\n var global = require('./_global');\n var fails = require('./_fails');\n var $export = require('./_export');\n var $typed = require('./_typed');\n var $buffer = require('./_typed-buffer');\n var ctx = require('./_ctx');\n var anInstance = require('./_an-instance');\n var propertyDesc = require('./_property-desc');\n var hide = require('./_hide');\n var redefineAll = require('./_redefine-all');\n var toInteger = require('./_to-integer');\n var toLength = require('./_to-length');\n var toIndex = require('./_to-index');\n var toAbsoluteIndex = require('./_to-absolute-index');\n var toPrimitive = require('./_to-primitive');\n var has = require('./_has');\n var classof = require('./_classof');\n var isObject = require('./_is-object');\n var toObject = require('./_to-object');\n var isArrayIter = require('./_is-array-iter');\n var create = require('./_object-create');\n var getPrototypeOf = require('./_object-gpo');\n var gOPN = require('./_object-gopn').f;\n var getIterFn = require('./core.get-iterator-method');\n var uid = require('./_uid');\n var wks = require('./_wks');\n var createArrayMethod = require('./_array-methods');\n var createArrayIncludes = require('./_array-includes');\n var speciesConstructor = require('./_species-constructor');\n var ArrayIterators = require('./es6.array.iterator');\n var Iterators = require('./_iterators');\n var $iterDetect = require('./_iter-detect');\n var setSpecies = require('./_set-species');\n var arrayFill = require('./_array-fill');\n var arrayCopyWithin = require('./_array-copy-within');\n var $DP = require('./_object-dp');\n var $GOPD = require('./_object-gopd');\n var dP = $DP.f;\n var gOPD = $GOPD.f;\n var RangeError = global.RangeError;\n var TypeError = global.TypeError;\n var Uint8Array = global.Uint8Array;\n var ARRAY_BUFFER = 'ArrayBuffer';\n var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;\n var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';\n var PROTOTYPE = 'prototype';\n var ArrayProto = Array[PROTOTYPE];\n var $ArrayBuffer = $buffer.ArrayBuffer;\n var $DataView = $buffer.DataView;\n var arrayForEach = createArrayMethod(0);\n var arrayFilter = createArrayMethod(2);\n var arraySome = createArrayMethod(3);\n var arrayEvery = createArrayMethod(4);\n var arrayFind = createArrayMethod(5);\n var arrayFindIndex = createArrayMethod(6);\n var arrayIncludes = createArrayIncludes(true);\n var arrayIndexOf = createArrayIncludes(false);\n var arrayValues = ArrayIterators.values;\n var arrayKeys = ArrayIterators.keys;\n var arrayEntries = ArrayIterators.entries;\n var arrayLastIndexOf = ArrayProto.lastIndexOf;\n var arrayReduce = ArrayProto.reduce;\n var arrayReduceRight = ArrayProto.reduceRight;\n var arrayJoin = ArrayProto.join;\n var arraySort = ArrayProto.sort;\n var arraySlice = ArrayProto.slice;\n var arrayToString = ArrayProto.toString;\n var arrayToLocaleString = ArrayProto.toLocaleString;\n var ITERATOR = wks('iterator');\n var TAG = wks('toStringTag');\n var TYPED_CONSTRUCTOR = uid('typed_constructor');\n var DEF_CONSTRUCTOR = uid('def_constructor');\n var ALL_CONSTRUCTORS = $typed.CONSTR;\n var TYPED_ARRAY = $typed.TYPED;\n var VIEW = $typed.VIEW;\n var WRONG_LENGTH = 'Wrong length!';\n\n var $map = createArrayMethod(1, function (O, length) {\n return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);\n });\n\n var LITTLE_ENDIAN = fails(function () {\n // eslint-disable-next-line no-undef\n return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;\n });\n\n var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {\n new Uint8Array(1).set({});\n });\n\n var toOffset = function (it, BYTES) {\n var offset = toInteger(it);\n if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');\n return offset;\n };\n\n var validate = function (it) {\n if (isObject(it) && TYPED_ARRAY in it) return it;\n throw TypeError(it + ' is not a typed array!');\n };\n\n var allocate = function (C, length) {\n if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {\n throw TypeError('It is not a typed array constructor!');\n } return new C(length);\n };\n\n var speciesFromList = function (O, list) {\n return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);\n };\n\n var fromList = function (C, list) {\n var index = 0;\n var length = list.length;\n var result = allocate(C, length);\n while (length > index) result[index] = list[index++];\n return result;\n };\n\n var addGetter = function (it, key, internal) {\n dP(it, key, { get: function () { return this._d[internal]; } });\n };\n\n var $from = function from(source /* , mapfn, thisArg */) {\n var O = toObject(source);\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iterFn = getIterFn(O);\n var i, length, values, result, step, iterator;\n if (iterFn != undefined && !isArrayIter(iterFn)) {\n for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {\n values.push(step.value);\n } O = values;\n }\n if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);\n for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n };\n\n var $of = function of(/* ...items */) {\n var index = 0;\n var length = arguments.length;\n var result = allocate(this, length);\n while (length > index) result[index] = arguments[index++];\n return result;\n };\n\n // iOS Safari 6.x fails here\n var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });\n\n var $toLocaleString = function toLocaleString() {\n return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);\n };\n\n var proto = {\n copyWithin: function copyWithin(target, start /* , end */) {\n return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n },\n every: function every(callbackfn /* , thisArg */) {\n return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars\n return arrayFill.apply(validate(this), arguments);\n },\n filter: function filter(callbackfn /* , thisArg */) {\n return speciesFromList(this, arrayFilter(validate(this), callbackfn,\n arguments.length > 1 ? arguments[1] : undefined));\n },\n find: function find(predicate /* , thisArg */) {\n return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n findIndex: function findIndex(predicate /* , thisArg */) {\n return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n forEach: function forEach(callbackfn /* , thisArg */) {\n arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n indexOf: function indexOf(searchElement /* , fromIndex */) {\n return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n includes: function includes(searchElement /* , fromIndex */) {\n return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n join: function join(separator) { // eslint-disable-line no-unused-vars\n return arrayJoin.apply(validate(this), arguments);\n },\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars\n return arrayLastIndexOf.apply(validate(this), arguments);\n },\n map: function map(mapfn /* , thisArg */) {\n return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduce.apply(validate(this), arguments);\n },\n reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduceRight.apply(validate(this), arguments);\n },\n reverse: function reverse() {\n var that = this;\n var length = validate(that).length;\n var middle = Math.floor(length / 2);\n var index = 0;\n var value;\n while (index < middle) {\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n },\n some: function some(callbackfn /* , thisArg */) {\n return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n sort: function sort(comparefn) {\n return arraySort.call(validate(this), comparefn);\n },\n subarray: function subarray(begin, end) {\n var O = validate(this);\n var length = O.length;\n var $begin = toAbsoluteIndex(begin, length);\n return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(\n O.buffer,\n O.byteOffset + $begin * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)\n );\n }\n };\n\n var $slice = function slice(start, end) {\n return speciesFromList(this, arraySlice.call(validate(this), start, end));\n };\n\n var $set = function set(arrayLike /* , offset */) {\n validate(this);\n var offset = toOffset(arguments[1], 1);\n var length = this.length;\n var src = toObject(arrayLike);\n var len = toLength(src.length);\n var index = 0;\n if (len + offset > length) throw RangeError(WRONG_LENGTH);\n while (index < len) this[offset + index] = src[index++];\n };\n\n var $iterators = {\n entries: function entries() {\n return arrayEntries.call(validate(this));\n },\n keys: function keys() {\n return arrayKeys.call(validate(this));\n },\n values: function values() {\n return arrayValues.call(validate(this));\n }\n };\n\n var isTAIndex = function (target, key) {\n return isObject(target)\n && target[TYPED_ARRAY]\n && typeof key != 'symbol'\n && key in target\n && String(+key) == String(key);\n };\n var $getDesc = function getOwnPropertyDescriptor(target, key) {\n return isTAIndex(target, key = toPrimitive(key, true))\n ? propertyDesc(2, target[key])\n : gOPD(target, key);\n };\n var $setDesc = function defineProperty(target, key, desc) {\n if (isTAIndex(target, key = toPrimitive(key, true))\n && isObject(desc)\n && has(desc, 'value')\n && !has(desc, 'get')\n && !has(desc, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !desc.configurable\n && (!has(desc, 'writable') || desc.writable)\n && (!has(desc, 'enumerable') || desc.enumerable)\n ) {\n target[key] = desc.value;\n return target;\n } return dP(target, key, desc);\n };\n\n if (!ALL_CONSTRUCTORS) {\n $GOPD.f = $getDesc;\n $DP.f = $setDesc;\n }\n\n $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {\n getOwnPropertyDescriptor: $getDesc,\n defineProperty: $setDesc\n });\n\n if (fails(function () { arrayToString.call({}); })) {\n arrayToString = arrayToLocaleString = function toString() {\n return arrayJoin.call(this);\n };\n }\n\n var $TypedArrayPrototype$ = redefineAll({}, proto);\n redefineAll($TypedArrayPrototype$, $iterators);\n hide($TypedArrayPrototype$, ITERATOR, $iterators.values);\n redefineAll($TypedArrayPrototype$, {\n slice: $slice,\n set: $set,\n constructor: function () { /* noop */ },\n toString: arrayToString,\n toLocaleString: $toLocaleString\n });\n addGetter($TypedArrayPrototype$, 'buffer', 'b');\n addGetter($TypedArrayPrototype$, 'byteOffset', 'o');\n addGetter($TypedArrayPrototype$, 'byteLength', 'l');\n addGetter($TypedArrayPrototype$, 'length', 'e');\n dP($TypedArrayPrototype$, TAG, {\n get: function () { return this[TYPED_ARRAY]; }\n });\n\n // eslint-disable-next-line max-statements\n module.exports = function (KEY, BYTES, wrapper, CLAMPED) {\n CLAMPED = !!CLAMPED;\n var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';\n var GETTER = 'get' + KEY;\n var SETTER = 'set' + KEY;\n var TypedArray = global[NAME];\n var Base = TypedArray || {};\n var TAC = TypedArray && getPrototypeOf(TypedArray);\n var FORCED = !TypedArray || !$typed.ABV;\n var O = {};\n var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];\n var getter = function (that, index) {\n var data = that._d;\n return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);\n };\n var setter = function (that, index, value) {\n var data = that._d;\n if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;\n data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);\n };\n var addElement = function (that, index) {\n dP(that, index, {\n get: function () {\n return getter(this, index);\n },\n set: function (value) {\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n if (FORCED) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME, '_d');\n var index = 0;\n var offset = 0;\n var buffer, byteLength, length, klass;\n if (!isObject(data)) {\n length = toIndex(data);\n byteLength = length * BYTES;\n buffer = new $ArrayBuffer(byteLength);\n } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n buffer = data;\n offset = toOffset($offset, BYTES);\n var $len = data.byteLength;\n if ($length === undefined) {\n if ($len % BYTES) throw RangeError(WRONG_LENGTH);\n byteLength = $len - offset;\n if (byteLength < 0) throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if (TYPED_ARRAY in data) {\n return fromList(TypedArray, data);\n } else {\n return $from.call(TypedArray, data);\n }\n hide(that, '_d', {\n b: buffer,\n o: offset,\n l: byteLength,\n e: length,\n v: new $DataView(buffer)\n });\n while (index < length) addElement(that, index++);\n });\n TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);\n hide(TypedArrayPrototype, 'constructor', TypedArray);\n } else if (!fails(function () {\n TypedArray(1);\n }) || !fails(function () {\n new TypedArray(-1); // eslint-disable-line no-new\n }) || !$iterDetect(function (iter) {\n new TypedArray(); // eslint-disable-line no-new\n new TypedArray(null); // eslint-disable-line no-new\n new TypedArray(1.5); // eslint-disable-line no-new\n new TypedArray(iter); // eslint-disable-line no-new\n }, true)) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME);\n var klass;\n // `ws` module bug, temporarily remove validation length for Uint8Array\n // https://github.com/websockets/ws/pull/645\n if (!isObject(data)) return new Base(toIndex(data));\n if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n return $length !== undefined\n ? new Base(data, toOffset($offset, BYTES), $length)\n : $offset !== undefined\n ? new Base(data, toOffset($offset, BYTES))\n : new Base(data);\n }\n if (TYPED_ARRAY in data) return fromList(TypedArray, data);\n return $from.call(TypedArray, data);\n });\n arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {\n if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);\n });\n TypedArray[PROTOTYPE] = TypedArrayPrototype;\n if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;\n }\n var $nativeIterator = TypedArrayPrototype[ITERATOR];\n var CORRECT_ITER_NAME = !!$nativeIterator\n && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);\n var $iterator = $iterators.values;\n hide(TypedArray, TYPED_CONSTRUCTOR, true);\n hide(TypedArrayPrototype, TYPED_ARRAY, NAME);\n hide(TypedArrayPrototype, VIEW, true);\n hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);\n\n if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {\n dP(TypedArrayPrototype, TAG, {\n get: function () { return NAME; }\n });\n }\n\n O[NAME] = TypedArray;\n\n $export($export.G + $export.W + $export.F * (TypedArray != Base), O);\n\n $export($export.S, NAME, {\n BYTES_PER_ELEMENT: BYTES\n });\n\n $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {\n from: $from,\n of: $of\n });\n\n if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);\n\n $export($export.P, NAME, proto);\n\n setSpecies(NAME);\n\n $export($export.P + $export.F * FORCED_SET, NAME, { set: $set });\n\n $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);\n\n if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;\n\n $export($export.P + $export.F * fails(function () {\n new TypedArray(1).slice();\n }), NAME, { slice: $slice });\n\n $export($export.P + $export.F * (fails(function () {\n return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();\n }) || !fails(function () {\n TypedArrayPrototype.toLocaleString.call([1, 2]);\n })), NAME, { toLocaleString: $toLocaleString });\n\n Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;\n if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);\n };\n} else module.exports = function () { /* empty */ };\n","'use strict';\nvar global = require('./_global');\nvar DESCRIPTORS = require('./_descriptors');\nvar LIBRARY = require('./_library');\nvar $typed = require('./_typed');\nvar hide = require('./_hide');\nvar redefineAll = require('./_redefine-all');\nvar fails = require('./_fails');\nvar anInstance = require('./_an-instance');\nvar toInteger = require('./_to-integer');\nvar toLength = require('./_to-length');\nvar toIndex = require('./_to-index');\nvar gOPN = require('./_object-gopn').f;\nvar dP = require('./_object-dp').f;\nvar arrayFill = require('./_array-fill');\nvar setToStringTag = require('./_set-to-string-tag');\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length!';\nvar WRONG_INDEX = 'Wrong index!';\nvar $ArrayBuffer = global[ARRAY_BUFFER];\nvar $DataView = global[DATA_VIEW];\nvar Math = global.Math;\nvar RangeError = global.RangeError;\n// eslint-disable-next-line no-shadow-restricted-names\nvar Infinity = global.Infinity;\nvar BaseBuffer = $ArrayBuffer;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\nvar BUFFER = 'buffer';\nvar BYTE_LENGTH = 'byteLength';\nvar BYTE_OFFSET = 'byteOffset';\nvar $BUFFER = DESCRIPTORS ? '_b' : BUFFER;\nvar $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH;\nvar $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;\n\n// IEEE754 conversions based on https://github.com/feross/ieee754\nfunction packIEEE754(value, mLen, nBytes) {\n var buffer = new Array(nBytes);\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var i = 0;\n var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;\n var e, m, c;\n value = abs(value);\n // eslint-disable-next-line no-self-compare\n if (value != value || value === Infinity) {\n // eslint-disable-next-line no-self-compare\n m = value != value ? 1 : 0;\n e = eMax;\n } else {\n e = floor(log(value) / LN2);\n if (value * (c = pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * pow(2, 1 - eBias);\n }\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * pow(2, eBias - 1) * pow(2, mLen);\n e = 0;\n }\n }\n for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);\n e = e << mLen | m;\n eLen += mLen;\n for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);\n buffer[--i] |= s * 128;\n return buffer;\n}\nfunction unpackIEEE754(buffer, mLen, nBytes) {\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = eLen - 7;\n var i = nBytes - 1;\n var s = buffer[i--];\n var e = s & 127;\n var m;\n s >>= 7;\n for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);\n m = e & (1 << -nBits) - 1;\n e >>= -nBits;\n nBits += mLen;\n for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : s ? -Infinity : Infinity;\n } else {\n m = m + pow(2, mLen);\n e = e - eBias;\n } return (s ? -1 : 1) * m * pow(2, e - mLen);\n}\n\nfunction unpackI32(bytes) {\n return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];\n}\nfunction packI8(it) {\n return [it & 0xff];\n}\nfunction packI16(it) {\n return [it & 0xff, it >> 8 & 0xff];\n}\nfunction packI32(it) {\n return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];\n}\nfunction packF64(it) {\n return packIEEE754(it, 52, 8);\n}\nfunction packF32(it) {\n return packIEEE754(it, 23, 4);\n}\n\nfunction addGetter(C, key, internal) {\n dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } });\n}\n\nfunction get(view, bytes, index, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = store.slice(start, start + bytes);\n return isLittleEndian ? pack : pack.reverse();\n}\nfunction set(view, bytes, index, conversion, value, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = conversion(+value);\n for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];\n}\n\nif (!$typed.ABV) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer, ARRAY_BUFFER);\n var byteLength = toIndex(length);\n this._b = arrayFill.call(new Array(byteLength), 0);\n this[$LENGTH] = byteLength;\n };\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, $DataView, DATA_VIEW);\n anInstance(buffer, $ArrayBuffer, DATA_VIEW);\n var bufferLength = buffer[$LENGTH];\n var offset = toInteger(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n this[$BUFFER] = buffer;\n this[$OFFSET] = offset;\n this[$LENGTH] = byteLength;\n };\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, BYTE_LENGTH, '_l');\n addGetter($DataView, BUFFER, '_b');\n addGetter($DataView, BYTE_LENGTH, '_l');\n addGetter($DataView, BYTE_OFFSET, '_o');\n }\n\n redefineAll($DataView[PROTOTYPE], {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1]));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packF32, value, arguments[2]);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packF64, value, arguments[2]);\n }\n });\n} else {\n if (!fails(function () {\n $ArrayBuffer(1);\n }) || !fails(function () {\n new $ArrayBuffer(-1); // eslint-disable-line no-new\n }) || fails(function () {\n new $ArrayBuffer(); // eslint-disable-line no-new\n new $ArrayBuffer(1.5); // eslint-disable-line no-new\n new $ArrayBuffer(NaN); // eslint-disable-line no-new\n return $ArrayBuffer.name != ARRAY_BUFFER;\n })) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer);\n return new BaseBuffer(toIndex(length));\n };\n var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];\n for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]);\n }\n if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer;\n }\n // iOS Safari 7.x bug\n var view = new $DataView(new $ArrayBuffer(2));\n var $setInt8 = $DataView[PROTOTYPE].setInt8;\n view.setInt8(0, 2147483648);\n view.setInt8(1, 2147483649);\n if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], {\n setInt8: function setInt8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n }\n }, true);\n}\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\nhide($DataView[PROTOTYPE], $typed.VIEW, true);\nexports[ARRAY_BUFFER] = $ArrayBuffer;\nexports[DATA_VIEW] = $DataView;\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar uid = require('./_uid');\nvar TYPED = uid('typed_array');\nvar VIEW = uid('view');\nvar ABV = !!(global.ArrayBuffer && global.DataView);\nvar CONSTR = ABV;\nvar i = 0;\nvar l = 9;\nvar Typed;\n\nvar TypedArrayConstructors = (\n 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'\n).split(',');\n\nwhile (i < l) {\n if (Typed = global[TypedArrayConstructors[i++]]) {\n hide(Typed.prototype, TYPED, true);\n hide(Typed.prototype, VIEW, true);\n } else CONSTR = false;\n}\n\nmodule.exports = {\n ABV: ABV,\n CONSTR: CONSTR,\n TYPED: TYPED,\n VIEW: VIEW\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","var global = require('./_global');\nvar navigator = global.navigator;\n\nmodule.exports = navigator && navigator.userAgent || '';\n","var isObject = require('./_is-object');\nmodule.exports = function (it, TYPE) {\n if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');\n return it;\n};\n","var global = require('./_global');\nvar core = require('./_core');\nvar LIBRARY = require('./_library');\nvar wksExt = require('./_wks-ext');\nvar defineProperty = require('./_object-dp').f;\nmodule.exports = function (name) {\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });\n};\n","exports.f = require('./_wks');\n","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n","var classof = require('./_classof');\nvar ITERATOR = require('./_wks')('iterator');\nvar Iterators = require('./_iterators');\nmodule.exports = require('./_core').getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\nvar $export = require('./_export');\n\n$export($export.P, 'Array', { copyWithin: require('./_array-copy-within') });\n\nrequire('./_add-to-unscopables')('copyWithin');\n","// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\nvar $export = require('./_export');\n\n$export($export.P, 'Array', { fill: require('./_array-fill') });\n\nrequire('./_add-to-unscopables')('fill');\n","'use strict';\n// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)\nvar $export = require('./_export');\nvar $find = require('./_array-methods')(6);\nvar KEY = 'findIndex';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\nrequire('./_add-to-unscopables')(KEY);\n","'use strict';\n// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)\nvar $export = require('./_export');\nvar $find = require('./_array-methods')(5);\nvar KEY = 'find';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\nrequire('./_add-to-unscopables')(KEY);\n","'use strict';\nvar ctx = require('./_ctx');\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar call = require('./_iter-call');\nvar isArrayIter = require('./_is-array-iter');\nvar toLength = require('./_to-length');\nvar createProperty = require('./_create-property');\nvar getIterFn = require('./core.get-iterator-method');\n\n$export($export.S + $export.F * !require('./_iter-detect')(function (iter) { Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var index = 0;\n var iterFn = getIterFn(O);\n var length, result, step, iterator;\n if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {\n for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for (result = new C(length); length > index; index++) {\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","'use strict';\nvar $export = require('./_export');\nvar createProperty = require('./_create-property');\n\n// WebKit Array.of isn't generic\n$export($export.S + $export.F * require('./_fails')(function () {\n function F() { /* empty */ }\n return !(Array.of.call(F) instanceof F);\n}), 'Array', {\n // 22.1.2.3 Array.of( ...items)\n of: function of(/* ...args */) {\n var index = 0;\n var aLen = arguments.length;\n var result = new (typeof this == 'function' ? this : Array)(aLen);\n while (aLen > index) createProperty(result, index, arguments[index++]);\n result.length = aLen;\n return result;\n }\n});\n","require('./_set-species')('Array');\n","var TO_PRIMITIVE = require('./_wks')('toPrimitive');\nvar proto = Date.prototype;\n\nif (!(TO_PRIMITIVE in proto)) require('./_hide')(proto, TO_PRIMITIVE, require('./_date-to-primitive'));\n","'use strict';\nvar isObject = require('./_is-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar HAS_INSTANCE = require('./_wks')('hasInstance');\nvar FunctionProto = Function.prototype;\n// 19.2.3.6 Function.prototype[@@hasInstance](V)\nif (!(HAS_INSTANCE in FunctionProto)) require('./_object-dp').f(FunctionProto, HAS_INSTANCE, { value: function (O) {\n if (typeof this != 'function' || !isObject(O)) return false;\n if (!isObject(this.prototype)) return O instanceof this;\n // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:\n while (O = getPrototypeOf(O)) if (this.prototype === O) return true;\n return false;\n} });\n","var dP = require('./_object-dp').f;\nvar FProto = Function.prototype;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// 19.2.4.2 name\nNAME in FProto || require('./_descriptors') && dP(FProto, NAME, {\n configurable: true,\n get: function () {\n try {\n return ('' + this).match(nameRE)[1];\n } catch (e) {\n return '';\n }\n }\n});\n","'use strict';\nvar strong = require('./_collection-strong');\nvar validate = require('./_validate-collection');\nvar MAP = 'Map';\n\n// 23.1 Map Objects\nmodule.exports = require('./_collection')(MAP, function (get) {\n return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = strong.getEntry(validate(this, MAP), key);\n return entry && entry.v;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);\n }\n}, strong, true);\n","// 20.2.2.3 Math.acosh(x)\nvar $export = require('./_export');\nvar log1p = require('./_math-log1p');\nvar sqrt = Math.sqrt;\nvar $acosh = Math.acosh;\n\n$export($export.S + $export.F * !($acosh\n // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509\n && Math.floor($acosh(Number.MAX_VALUE)) == 710\n // Tor Browser bug: Math.acosh(Infinity) -> NaN\n && $acosh(Infinity) == Infinity\n), 'Math', {\n acosh: function acosh(x) {\n return (x = +x) < 1 ? NaN : x > 94906265.62425156\n ? Math.log(x) + Math.LN2\n : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));\n }\n});\n","// 20.2.2.5 Math.asinh(x)\nvar $export = require('./_export');\nvar $asinh = Math.asinh;\n\nfunction asinh(x) {\n return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));\n}\n\n// Tor Browser bug: Math.asinh(0) -> -0\n$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh });\n","// 20.2.2.7 Math.atanh(x)\nvar $export = require('./_export');\nvar $atanh = Math.atanh;\n\n// Tor Browser bug: Math.atanh(-0) -> 0\n$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {\n atanh: function atanh(x) {\n return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;\n }\n});\n","// 20.2.2.9 Math.cbrt(x)\nvar $export = require('./_export');\nvar sign = require('./_math-sign');\n\n$export($export.S, 'Math', {\n cbrt: function cbrt(x) {\n return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);\n }\n});\n","// 20.2.2.11 Math.clz32(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n clz32: function clz32(x) {\n return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;\n }\n});\n","// 20.2.2.12 Math.cosh(x)\nvar $export = require('./_export');\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n cosh: function cosh(x) {\n return (exp(x = +x) + exp(-x)) / 2;\n }\n});\n","// 20.2.2.14 Math.expm1(x)\nvar $export = require('./_export');\nvar $expm1 = require('./_math-expm1');\n\n$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 });\n","// 20.2.2.16 Math.fround(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { fround: require('./_math-fround') });\n","// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])\nvar $export = require('./_export');\nvar abs = Math.abs;\n\n$export($export.S, 'Math', {\n hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars\n var sum = 0;\n var i = 0;\n var aLen = arguments.length;\n var larg = 0;\n var arg, div;\n while (i < aLen) {\n arg = abs(arguments[i++]);\n if (larg < arg) {\n div = larg / arg;\n sum = sum * div * div + 1;\n larg = arg;\n } else if (arg > 0) {\n div = arg / larg;\n sum += div * div;\n } else sum += arg;\n }\n return larg === Infinity ? Infinity : larg * Math.sqrt(sum);\n }\n});\n","// 20.2.2.18 Math.imul(x, y)\nvar $export = require('./_export');\nvar $imul = Math.imul;\n\n// some WebKit versions fails with big numbers, some has wrong arity\n$export($export.S + $export.F * require('./_fails')(function () {\n return $imul(0xffffffff, 5) != -5 || $imul.length != 2;\n}), 'Math', {\n imul: function imul(x, y) {\n var UINT16 = 0xffff;\n var xn = +x;\n var yn = +y;\n var xl = UINT16 & xn;\n var yl = UINT16 & yn;\n return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);\n }\n});\n","// 20.2.2.21 Math.log10(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n log10: function log10(x) {\n return Math.log(x) * Math.LOG10E;\n }\n});\n","// 20.2.2.20 Math.log1p(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { log1p: require('./_math-log1p') });\n","// 20.2.2.22 Math.log2(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n log2: function log2(x) {\n return Math.log(x) / Math.LN2;\n }\n});\n","// 20.2.2.28 Math.sign(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { sign: require('./_math-sign') });\n","// 20.2.2.30 Math.sinh(x)\nvar $export = require('./_export');\nvar expm1 = require('./_math-expm1');\nvar exp = Math.exp;\n\n// V8 near Chromium 38 has a problem with very small numbers\n$export($export.S + $export.F * require('./_fails')(function () {\n return !Math.sinh(-2e-17) != -2e-17;\n}), 'Math', {\n sinh: function sinh(x) {\n return Math.abs(x = +x) < 1\n ? (expm1(x) - expm1(-x)) / 2\n : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);\n }\n});\n","// 20.2.2.33 Math.tanh(x)\nvar $export = require('./_export');\nvar expm1 = require('./_math-expm1');\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n tanh: function tanh(x) {\n var a = expm1(x = +x);\n var b = expm1(-x);\n return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));\n }\n});\n","// 20.2.2.34 Math.trunc(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n trunc: function trunc(it) {\n return (it > 0 ? Math.floor : Math.ceil)(it);\n }\n});\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","// 20.1.2.1 Number.EPSILON\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) });\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","// 20.1.2.3 Number.isInteger(number)\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { isInteger: require('./_is-integer') });\n","// 20.1.2.4 Number.isNaN(number)\nvar $export = require('./_export');\n\n$export($export.S, 'Number', {\n isNaN: function isNaN(number) {\n // eslint-disable-next-line no-self-compare\n return number != number;\n }\n});\n","// 20.1.2.5 Number.isSafeInteger(number)\nvar $export = require('./_export');\nvar isInteger = require('./_is-integer');\nvar abs = Math.abs;\n\n$export($export.S, 'Number', {\n isSafeInteger: function isSafeInteger(number) {\n return isInteger(number) && abs(number) <= 0x1fffffffffffff;\n }\n});\n","// 20.1.2.6 Number.MAX_SAFE_INTEGER\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff });\n","// 20.1.2.10 Number.MIN_SAFE_INTEGER\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff });\n","var $export = require('./_export');\nvar $parseFloat = require('./_parse-float');\n// 20.1.2.12 Number.parseFloat(string)\n$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat });\n","var $export = require('./_export');\nvar $parseInt = require('./_parse-int');\n// 20.1.2.13 Number.parseInt(string, radix)\n$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt });\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","// 19.1.2.5 Object.freeze(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('freeze', function ($freeze) {\n return function freeze(it) {\n return $freeze && isObject(it) ? $freeze(meta(it)) : it;\n };\n});\n","// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\nvar toIObject = require('./_to-iobject');\nvar $getOwnPropertyDescriptor = require('./_object-gopd').f;\n\nrequire('./_object-sap')('getOwnPropertyDescriptor', function () {\n return function getOwnPropertyDescriptor(it, key) {\n return $getOwnPropertyDescriptor(toIObject(it), key);\n };\n});\n","// 19.1.2.7 Object.getOwnPropertyNames(O)\nrequire('./_object-sap')('getOwnPropertyNames', function () {\n return require('./_object-gopn-ext').f;\n});\n","// 19.1.2.9 Object.getPrototypeOf(O)\nvar toObject = require('./_to-object');\nvar $getPrototypeOf = require('./_object-gpo');\n\nrequire('./_object-sap')('getPrototypeOf', function () {\n return function getPrototypeOf(it) {\n return $getPrototypeOf(toObject(it));\n };\n});\n","// 19.1.2.11 Object.isExtensible(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isExtensible', function ($isExtensible) {\n return function isExtensible(it) {\n return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;\n };\n});\n","// 19.1.2.12 Object.isFrozen(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isFrozen', function ($isFrozen) {\n return function isFrozen(it) {\n return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;\n };\n});\n","// 19.1.2.13 Object.isSealed(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isSealed', function ($isSealed) {\n return function isSealed(it) {\n return isObject(it) ? $isSealed ? $isSealed(it) : false : true;\n };\n});\n","// 19.1.3.10 Object.is(value1, value2)\nvar $export = require('./_export');\n$export($export.S, 'Object', { is: require('./_same-value') });\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 19.1.2.15 Object.preventExtensions(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('preventExtensions', function ($preventExtensions) {\n return function preventExtensions(it) {\n return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;\n };\n});\n","// 19.1.2.17 Object.seal(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('seal', function ($seal) {\n return function seal(it) {\n return $seal && isObject(it) ? $seal(meta(it)) : it;\n };\n});\n","'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = require('./_classof');\nvar test = {};\ntest[require('./_wks')('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n require('./_redefine')(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n","'use strict';\nvar LIBRARY = require('./_library');\nvar global = require('./_global');\nvar ctx = require('./_ctx');\nvar classof = require('./_classof');\nvar $export = require('./_export');\nvar isObject = require('./_is-object');\nvar aFunction = require('./_a-function');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar speciesConstructor = require('./_species-constructor');\nvar task = require('./_task').set;\nvar microtask = require('./_microtask')();\nvar newPromiseCapabilityModule = require('./_new-promise-capability');\nvar perform = require('./_perform');\nvar userAgent = require('./_user-agent');\nvar promiseResolve = require('./_promise-resolve');\nvar PROMISE = 'Promise';\nvar TypeError = global.TypeError;\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8 || '';\nvar $Promise = global[PROMISE];\nvar isNode = classof(process) == 'process';\nvar empty = function () { /* empty */ };\nvar Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;\nvar newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;\n\nvar USE_NATIVE = !!function () {\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1);\n var FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function (exec) {\n exec(empty, empty);\n };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function')\n && promise.then(empty) instanceof FakePromise\n // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // we can't detect it synchronously, so just check versions\n && v8.indexOf('6.6') !== 0\n && userAgent.indexOf('Chrome/66') === -1;\n } catch (e) { /* empty */ }\n}();\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar notify = function (promise, isReject) {\n if (promise._n) return;\n promise._n = true;\n var chain = promise._c;\n microtask(function () {\n var value = promise._v;\n var ok = promise._s == 1;\n var i = 0;\n var run = function (reaction) {\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (promise._h == 2) onHandleUnhandled(promise);\n promise._h = 1;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // may throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (e) {\n if (domain && !exited) domain.exit();\n reject(e);\n }\n };\n while (chain.length > i) run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if (isReject && !promise._h) onUnhandled(promise);\n });\n};\nvar onUnhandled = function (promise) {\n task.call(global, function () {\n var value = promise._v;\n var unhandled = isUnhandled(promise);\n var result, handler, console;\n if (unhandled) {\n result = perform(function () {\n if (isNode) {\n process.emit('unhandledRejection', value, promise);\n } else if (handler = global.onunhandledrejection) {\n handler({ promise: promise, reason: value });\n } else if ((console = global.console) && console.error) {\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if (unhandled && result.e) throw result.v;\n });\n};\nvar isUnhandled = function (promise) {\n return promise._h !== 1 && (promise._a || promise._c).length === 0;\n};\nvar onHandleUnhandled = function (promise) {\n task.call(global, function () {\n var handler;\n if (isNode) {\n process.emit('rejectionHandled', promise);\n } else if (handler = global.onrejectionhandled) {\n handler({ promise: promise, reason: promise._v });\n }\n });\n};\nvar $reject = function (value) {\n var promise = this;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if (!promise._a) promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function (value) {\n var promise = this;\n var then;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n if (then = isThenable(value)) {\n microtask(function () {\n var wrapper = { _w: promise, _d: false }; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch (e) {\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch (e) {\n $reject.call({ _w: promise, _d: false }, e); // wrap\n }\n};\n\n// constructor polyfill\nif (!USE_NATIVE) {\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor) {\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch (err) {\n $reject.call(this, err);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = require('./_redefine-all')($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected) {\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if (this._a) this._a.push(reaction);\n if (this._s) notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === $Promise || C === Wrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });\nrequire('./_set-to-string-tag')($Promise, PROMISE);\nrequire('./_set-species')(PROMISE);\nWrapper = require('./_core')[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n var $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x) {\n return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function (iter) {\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var values = [];\n var index = 0;\n var remaining = 1;\n forOf(iterable, false, function (promise) {\n var $index = index++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[$index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.e) reject(result.v);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n forOf(iterable, false, function (promise) {\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if (result.e) reject(result.v);\n return capability.promise;\n }\n});\n","// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)\nvar $export = require('./_export');\nvar aFunction = require('./_a-function');\nvar anObject = require('./_an-object');\nvar rApply = (require('./_global').Reflect || {}).apply;\nvar fApply = Function.apply;\n// MS Edge argumentsList argument is optional\n$export($export.S + $export.F * !require('./_fails')(function () {\n rApply(function () { /* empty */ });\n}), 'Reflect', {\n apply: function apply(target, thisArgument, argumentsList) {\n var T = aFunction(target);\n var L = anObject(argumentsList);\n return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L);\n }\n});\n","// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])\nvar $export = require('./_export');\nvar create = require('./_object-create');\nvar aFunction = require('./_a-function');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar bind = require('./_bind');\nvar rConstruct = (require('./_global').Reflect || {}).construct;\n\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function () {\n rConstruct(function () { /* empty */ });\n});\n\n$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {\n construct: function construct(Target, args /* , newTarget */) {\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : Object.prototype);\n var result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n","// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)\nvar dP = require('./_object-dp');\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar toPrimitive = require('./_to-primitive');\n\n// MS Edge has broken Reflect.defineProperty - throwing instead of returning false\n$export($export.S + $export.F * require('./_fails')(function () {\n // eslint-disable-next-line no-undef\n Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 });\n}), 'Reflect', {\n defineProperty: function defineProperty(target, propertyKey, attributes) {\n anObject(target);\n propertyKey = toPrimitive(propertyKey, true);\n anObject(attributes);\n try {\n dP.f(target, propertyKey, attributes);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","// 26.1.4 Reflect.deleteProperty(target, propertyKey)\nvar $export = require('./_export');\nvar gOPD = require('./_object-gopd').f;\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n deleteProperty: function deleteProperty(target, propertyKey) {\n var desc = gOPD(anObject(target), propertyKey);\n return desc && !desc.configurable ? false : delete target[propertyKey];\n }\n});\n","// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)\nvar gOPD = require('./_object-gopd');\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) {\n return gOPD.f(anObject(target), propertyKey);\n }\n});\n","// 26.1.8 Reflect.getPrototypeOf(target)\nvar $export = require('./_export');\nvar getProto = require('./_object-gpo');\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n getPrototypeOf: function getPrototypeOf(target) {\n return getProto(anObject(target));\n }\n});\n","// 26.1.6 Reflect.get(target, propertyKey [, receiver])\nvar gOPD = require('./_object-gopd');\nvar getPrototypeOf = require('./_object-gpo');\nvar has = require('./_has');\nvar $export = require('./_export');\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\n\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var desc, proto;\n if (anObject(target) === receiver) return target[propertyKey];\n if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')\n ? desc.value\n : desc.get !== undefined\n ? desc.get.call(receiver)\n : undefined;\n if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);\n}\n\n$export($export.S, 'Reflect', { get: get });\n","// 26.1.9 Reflect.has(target, propertyKey)\nvar $export = require('./_export');\n\n$export($export.S, 'Reflect', {\n has: function has(target, propertyKey) {\n return propertyKey in target;\n }\n});\n","// 26.1.10 Reflect.isExtensible(target)\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar $isExtensible = Object.isExtensible;\n\n$export($export.S, 'Reflect', {\n isExtensible: function isExtensible(target) {\n anObject(target);\n return $isExtensible ? $isExtensible(target) : true;\n }\n});\n","// 26.1.11 Reflect.ownKeys(target)\nvar $export = require('./_export');\n\n$export($export.S, 'Reflect', { ownKeys: require('./_own-keys') });\n","// 26.1.12 Reflect.preventExtensions(target)\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar $preventExtensions = Object.preventExtensions;\n\n$export($export.S, 'Reflect', {\n preventExtensions: function preventExtensions(target) {\n anObject(target);\n try {\n if ($preventExtensions) $preventExtensions(target);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","// 26.1.14 Reflect.setPrototypeOf(target, proto)\nvar $export = require('./_export');\nvar setProto = require('./_set-proto');\n\nif (setProto) $export($export.S, 'Reflect', {\n setPrototypeOf: function setPrototypeOf(target, proto) {\n setProto.check(target, proto);\n try {\n setProto.set(target, proto);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])\nvar dP = require('./_object-dp');\nvar gOPD = require('./_object-gopd');\nvar getPrototypeOf = require('./_object-gpo');\nvar has = require('./_has');\nvar $export = require('./_export');\nvar createDesc = require('./_property-desc');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\n\nfunction set(target, propertyKey, V /* , receiver */) {\n var receiver = arguments.length < 4 ? target : arguments[3];\n var ownDesc = gOPD.f(anObject(target), propertyKey);\n var existingDescriptor, proto;\n if (!ownDesc) {\n if (isObject(proto = getPrototypeOf(target))) {\n return set(proto, propertyKey, V, receiver);\n }\n ownDesc = createDesc(0);\n }\n if (has(ownDesc, 'value')) {\n if (ownDesc.writable === false || !isObject(receiver)) return false;\n if (existingDescriptor = gOPD.f(receiver, propertyKey)) {\n if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false;\n existingDescriptor.value = V;\n dP.f(receiver, propertyKey, existingDescriptor);\n } else dP.f(receiver, propertyKey, createDesc(0, V));\n return true;\n }\n return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);\n}\n\n$export($export.S, 'Reflect', { set: set });\n","var global = require('./_global');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar dP = require('./_object-dp').f;\nvar gOPN = require('./_object-gopn').f;\nvar isRegExp = require('./_is-regexp');\nvar $flags = require('./_flags');\nvar $RegExp = global.RegExp;\nvar Base = $RegExp;\nvar proto = $RegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n// \"new\" creates a new object, old webkit buggy here\nvar CORRECT_NEW = new $RegExp(re1) !== re1;\n\nif (require('./_descriptors') && (!CORRECT_NEW || require('./_fails')(function () {\n re2[require('./_wks')('match')] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';\n}))) {\n $RegExp = function RegExp(p, f) {\n var tiRE = this instanceof $RegExp;\n var piRE = isRegExp(p);\n var fiU = f === undefined;\n return !tiRE && piRE && p.constructor === $RegExp && fiU ? p\n : inheritIfRequired(CORRECT_NEW\n ? new Base(piRE && !fiU ? p.source : p, f)\n : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)\n , tiRE ? this : proto, $RegExp);\n };\n var proxy = function (key) {\n key in $RegExp || dP($RegExp, key, {\n configurable: true,\n get: function () { return Base[key]; },\n set: function (it) { Base[key] = it; }\n });\n };\n for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);\n proto.constructor = $RegExp;\n $RegExp.prototype = proto;\n require('./_redefine')(global, 'RegExp', $RegExp);\n}\n\nrequire('./_set-species')('RegExp');\n","'use strict';\nvar regexpExec = require('./_regexp-exec');\nrequire('./_export')({\n target: 'RegExp',\n proto: true,\n forced: regexpExec !== /./.exec\n}, {\n exec: regexpExec\n});\n","// 21.2.5.3 get RegExp.prototype.flags()\nif (require('./_descriptors') && /./g.flags != 'g') require('./_object-dp').f(RegExp.prototype, 'flags', {\n configurable: true,\n get: require('./_flags')\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar toInteger = require('./_to-integer');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nrequire('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar sameValue = require('./_same-value');\nvar regExpExec = require('./_regexp-exec-abstract');\n\n// @@search logic\nrequire('./_fix-re-wks')('search', 1, function (defined, SEARCH, $search, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[SEARCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative($search, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","'use strict';\n\nvar isRegExp = require('./_is-regexp');\nvar anObject = require('./_an-object');\nvar speciesConstructor = require('./_species-constructor');\nvar advanceStringIndex = require('./_advance-string-index');\nvar toLength = require('./_to-length');\nvar callRegExpExec = require('./_regexp-exec-abstract');\nvar regexpExec = require('./_regexp-exec');\nvar fails = require('./_fails');\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\nvar MAX_UINT32 = 0xffffffff;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return $split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n});\n","'use strict';\nrequire('./es6.regexp.flags');\nvar anObject = require('./_an-object');\nvar $flags = require('./_flags');\nvar DESCRIPTORS = require('./_descriptors');\nvar TO_STRING = 'toString';\nvar $toString = /./[TO_STRING];\n\nvar define = function (fn) {\n require('./_redefine')(RegExp.prototype, TO_STRING, fn, true);\n};\n\n// 21.2.5.14 RegExp.prototype.toString()\nif (require('./_fails')(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {\n define(function toString() {\n var R = anObject(this);\n return '/'.concat(R.source, '/',\n 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);\n });\n// FF44- RegExp#toString has a wrong name\n} else if ($toString.name != TO_STRING) {\n define(function toString() {\n return $toString.call(this);\n });\n}\n","'use strict';\nvar strong = require('./_collection-strong');\nvar validate = require('./_validate-collection');\nvar SET = 'Set';\n\n// 23.2 Set Objects\nmodule.exports = require('./_collection')(SET, function (get) {\n return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);\n }\n}, strong);\n","'use strict';\n// B.2.3.2 String.prototype.anchor(name)\nrequire('./_string-html')('anchor', function (createHTML) {\n return function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n };\n});\n","'use strict';\n// B.2.3.3 String.prototype.big()\nrequire('./_string-html')('big', function (createHTML) {\n return function big() {\n return createHTML(this, 'big', '', '');\n };\n});\n","'use strict';\n// B.2.3.4 String.prototype.blink()\nrequire('./_string-html')('blink', function (createHTML) {\n return function blink() {\n return createHTML(this, 'blink', '', '');\n };\n});\n","'use strict';\n// B.2.3.5 String.prototype.bold()\nrequire('./_string-html')('bold', function (createHTML) {\n return function bold() {\n return createHTML(this, 'b', '', '');\n };\n});\n","'use strict';\nvar $export = require('./_export');\nvar $at = require('./_string-at')(false);\n$export($export.P, 'String', {\n // 21.1.3.3 String.prototype.codePointAt(pos)\n codePointAt: function codePointAt(pos) {\n return $at(this, pos);\n }\n});\n","// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])\n'use strict';\nvar $export = require('./_export');\nvar toLength = require('./_to-length');\nvar context = require('./_string-context');\nvar ENDS_WITH = 'endsWith';\nvar $endsWith = ''[ENDS_WITH];\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(ENDS_WITH), 'String', {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = context(this, searchString, ENDS_WITH);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len);\n var search = String(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","'use strict';\n// B.2.3.6 String.prototype.fixed()\nrequire('./_string-html')('fixed', function (createHTML) {\n return function fixed() {\n return createHTML(this, 'tt', '', '');\n };\n});\n","'use strict';\n// B.2.3.7 String.prototype.fontcolor(color)\nrequire('./_string-html')('fontcolor', function (createHTML) {\n return function fontcolor(color) {\n return createHTML(this, 'font', 'color', color);\n };\n});\n","'use strict';\n// B.2.3.8 String.prototype.fontsize(size)\nrequire('./_string-html')('fontsize', function (createHTML) {\n return function fontsize(size) {\n return createHTML(this, 'font', 'size', size);\n };\n});\n","var $export = require('./_export');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar fromCharCode = String.fromCharCode;\nvar $fromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\n$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {\n // 21.1.2.2 String.fromCodePoint(...codePoints)\n fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars\n var res = [];\n var aLen = arguments.length;\n var i = 0;\n var code;\n while (aLen > i) {\n code = +arguments[i++];\n if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point');\n res.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)\n );\n } return res.join('');\n }\n});\n","// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = require('./_export');\nvar context = require('./_string-context');\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\n// B.2.3.9 String.prototype.italics()\nrequire('./_string-html')('italics', function (createHTML) {\n return function italics() {\n return createHTML(this, 'i', '', '');\n };\n});\n","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n","'use strict';\n// B.2.3.10 String.prototype.link(url)\nrequire('./_string-html')('link', function (createHTML) {\n return function link(url) {\n return createHTML(this, 'a', 'href', url);\n };\n});\n","var $export = require('./_export');\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\n\n$export($export.S, 'String', {\n // 21.1.2.4 String.raw(callSite, ...substitutions)\n raw: function raw(callSite) {\n var tpl = toIObject(callSite.raw);\n var len = toLength(tpl.length);\n var aLen = arguments.length;\n var res = [];\n var i = 0;\n while (len > i) {\n res.push(String(tpl[i++]));\n if (i < aLen) res.push(String(arguments[i]));\n } return res.join('');\n }\n});\n","var $export = require('./_export');\n\n$export($export.P, 'String', {\n // 21.1.3.13 String.prototype.repeat(count)\n repeat: require('./_string-repeat')\n});\n","'use strict';\n// B.2.3.11 String.prototype.small()\nrequire('./_string-html')('small', function (createHTML) {\n return function small() {\n return createHTML(this, 'small', '', '');\n };\n});\n","// 21.1.3.18 String.prototype.startsWith(searchString [, position ])\n'use strict';\nvar $export = require('./_export');\nvar toLength = require('./_to-length');\nvar context = require('./_string-context');\nvar STARTS_WITH = 'startsWith';\nvar $startsWith = ''[STARTS_WITH];\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(STARTS_WITH), 'String', {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = context(this, searchString, STARTS_WITH);\n var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return $startsWith\n ? $startsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","'use strict';\n// B.2.3.12 String.prototype.strike()\nrequire('./_string-html')('strike', function (createHTML) {\n return function strike() {\n return createHTML(this, 'strike', '', '');\n };\n});\n","'use strict';\n// B.2.3.13 String.prototype.sub()\nrequire('./_string-html')('sub', function (createHTML) {\n return function sub() {\n return createHTML(this, 'sub', '', '');\n };\n});\n","'use strict';\n// B.2.3.14 String.prototype.sup()\nrequire('./_string-html')('sup', function (createHTML) {\n return function sup() {\n return createHTML(this, 'sup', '', '');\n };\n});\n","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toObject = require('./_to-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $GOPS = require('./_object-gops');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar OPSymbols = shared('op-symbols');\nvar ObjectProto = Object[PROTOTYPE];\nvar USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function () {\n return _create(dP({}, 'a', {\n get: function () { return dP(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var protoDesc = gOPD(ObjectProto, key);\n if (protoDesc) delete ObjectProto[key];\n dP(it, key, D);\n if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function (tag) {\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectProto) $defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = _create(D, { enumerable: createDesc(0, false) });\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P) {\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;\n var D = gOPD(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = gOPN(toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectProto;\n var names = gOPN(IS_OP ? OPSymbols : toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif (!USE_NATIVE) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function (value) {\n if (this === ObjectProto) $set.call(OPSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n $GOPS.f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function (name) {\n return wrap(wks(name));\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });\n\nfor (var es6Symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);\n\nfor (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\n },\n useSetter: function () { setter = true; },\n useSimple: function () { setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\nvar FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });\n\n$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return $GOPS.f(toObject(it));\n }\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it) {\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n","'use strict';\nvar $export = require('./_export');\nvar $typed = require('./_typed');\nvar buffer = require('./_typed-buffer');\nvar anObject = require('./_an-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nvar isObject = require('./_is-object');\nvar ArrayBuffer = require('./_global').ArrayBuffer;\nvar speciesConstructor = require('./_species-constructor');\nvar $ArrayBuffer = buffer.ArrayBuffer;\nvar $DataView = buffer.DataView;\nvar $isView = $typed.ABV && ArrayBuffer.isView;\nvar $slice = $ArrayBuffer.prototype.slice;\nvar VIEW = $typed.VIEW;\nvar ARRAY_BUFFER = 'ArrayBuffer';\n\n$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer });\n\n$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {\n // 24.1.3.1 ArrayBuffer.isView(arg)\n isView: function isView(it) {\n return $isView && $isView(it) || isObject(it) && VIEW in it;\n }\n});\n\n$export($export.P + $export.U + $export.F * require('./_fails')(function () {\n return !new $ArrayBuffer(2).slice(1, undefined).byteLength;\n}), ARRAY_BUFFER, {\n // 24.1.4.3 ArrayBuffer.prototype.slice(start, end)\n slice: function slice(start, end) {\n if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix\n var len = anObject(this).byteLength;\n var first = toAbsoluteIndex(start, len);\n var fin = toAbsoluteIndex(end === undefined ? len : end, len);\n var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first));\n var viewS = new $DataView(this);\n var viewT = new $DataView(result);\n var index = 0;\n while (first < fin) {\n viewT.setUint8(index++, viewS.getUint8(first++));\n } return result;\n }\n});\n\nrequire('./_set-species')(ARRAY_BUFFER);\n","require('./_typed-array')('Float32', 4, function (init) {\n return function Float32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Float64', 8, function (init) {\n return function Float64Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Int16', 2, function (init) {\n return function Int16Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Int32', 4, function (init) {\n return function Int32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Int8', 1, function (init) {\n return function Int8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint16', 2, function (init) {\n return function Uint16Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint32', 4, function (init) {\n return function Uint32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint8', 1, function (init) {\n return function Uint8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint8', 1, function (init) {\n return function Uint8ClampedArray(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n}, true);\n","'use strict';\nvar global = require('./_global');\nvar each = require('./_array-methods')(0);\nvar redefine = require('./_redefine');\nvar meta = require('./_meta');\nvar assign = require('./_object-assign');\nvar weak = require('./_collection-weak');\nvar isObject = require('./_is-object');\nvar validate = require('./_validate-collection');\nvar NATIVE_WEAK_MAP = require('./_validate-collection');\nvar IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;\nvar WEAK_MAP = 'WeakMap';\nvar getWeak = meta.getWeak;\nvar isExtensible = Object.isExtensible;\nvar uncaughtFrozenStore = weak.ufstore;\nvar InternalMap;\n\nvar wrapper = function (get) {\n return function WeakMap() {\n return get(this, arguments.length > 0 ? arguments[0] : undefined);\n };\n};\n\nvar methods = {\n // 23.3.3.3 WeakMap.prototype.get(key)\n get: function get(key) {\n if (isObject(key)) {\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);\n return data ? data[this._i] : undefined;\n }\n },\n // 23.3.3.5 WeakMap.prototype.set(key, value)\n set: function set(key, value) {\n return weak.def(validate(this, WEAK_MAP), key, value);\n }\n};\n\n// 23.3 WeakMap Objects\nvar $WeakMap = module.exports = require('./_collection')(WEAK_MAP, wrapper, methods, weak, true, true);\n\n// IE11 WeakMap frozen keys fix\nif (NATIVE_WEAK_MAP && IS_IE11) {\n InternalMap = weak.getConstructor(wrapper, WEAK_MAP);\n assign(InternalMap.prototype, methods);\n meta.NEED = true;\n each(['delete', 'has', 'get', 'set'], function (key) {\n var proto = $WeakMap.prototype;\n var method = proto[key];\n redefine(proto, key, function (a, b) {\n // store frozen objects on internal weakmap shim\n if (isObject(a) && !isExtensible(a)) {\n if (!this._f) this._f = new InternalMap();\n var result = this._f[key](a, b);\n return key == 'set' ? this : result;\n // store all the rest on native weakmap\n } return method.call(this, a, b);\n });\n });\n}\n","'use strict';\nvar weak = require('./_collection-weak');\nvar validate = require('./_validate-collection');\nvar WEAK_SET = 'WeakSet';\n\n// 23.4 WeakSet Objects\nrequire('./_collection')(WEAK_SET, function (get) {\n return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.4.3.1 WeakSet.prototype.add(value)\n add: function add(value) {\n return weak.def(validate(this, WEAK_SET), value, true);\n }\n}, weak, false, true);\n","'use strict';\n// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap\nvar $export = require('./_export');\nvar flattenIntoArray = require('./_flatten-into-array');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar aFunction = require('./_a-function');\nvar arraySpeciesCreate = require('./_array-species-create');\n\n$export($export.P, 'Array', {\n flatMap: function flatMap(callbackfn /* , thisArg */) {\n var O = toObject(this);\n var sourceLen, A;\n aFunction(callbackfn);\n sourceLen = toLength(O.length);\n A = arraySpeciesCreate(O, 0);\n flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]);\n return A;\n }\n});\n\nrequire('./_add-to-unscopables')('flatMap');\n","'use strict';\n// https://github.com/tc39/Array.prototype.includes\nvar $export = require('./_export');\nvar $includes = require('./_array-includes')(true);\n\n$export($export.P, 'Array', {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\nrequire('./_add-to-unscopables')('includes');\n","'use strict';\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar aFunction = require('./_a-function');\nvar $defineProperty = require('./_object-dp');\n\n// B.2.2.2 Object.prototype.__defineGetter__(P, getter)\nrequire('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', {\n __defineGetter__: function __defineGetter__(P, getter) {\n $defineProperty.f(toObject(this), P, { get: aFunction(getter), enumerable: true, configurable: true });\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar aFunction = require('./_a-function');\nvar $defineProperty = require('./_object-dp');\n\n// B.2.2.3 Object.prototype.__defineSetter__(P, setter)\nrequire('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', {\n __defineSetter__: function __defineSetter__(P, setter) {\n $defineProperty.f(toObject(this), P, { set: aFunction(setter), enumerable: true, configurable: true });\n }\n});\n","// https://github.com/tc39/proposal-object-values-entries\nvar $export = require('./_export');\nvar $entries = require('./_object-to-array')(true);\n\n$export($export.S, 'Object', {\n entries: function entries(it) {\n return $entries(it);\n }\n});\n","// https://github.com/tc39/proposal-object-getownpropertydescriptors\nvar $export = require('./_export');\nvar ownKeys = require('./_own-keys');\nvar toIObject = require('./_to-iobject');\nvar gOPD = require('./_object-gopd');\nvar createProperty = require('./_create-property');\n\n$export($export.S, 'Object', {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIObject(object);\n var getDesc = gOPD.f;\n var keys = ownKeys(O);\n var result = {};\n var i = 0;\n var key, desc;\n while (keys.length > i) {\n desc = getDesc(O, key = keys[i++]);\n if (desc !== undefined) createProperty(result, key, desc);\n }\n return result;\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar toPrimitive = require('./_to-primitive');\nvar getPrototypeOf = require('./_object-gpo');\nvar getOwnPropertyDescriptor = require('./_object-gopd').f;\n\n// B.2.2.4 Object.prototype.__lookupGetter__(P)\nrequire('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', {\n __lookupGetter__: function __lookupGetter__(P) {\n var O = toObject(this);\n var K = toPrimitive(P, true);\n var D;\n do {\n if (D = getOwnPropertyDescriptor(O, K)) return D.get;\n } while (O = getPrototypeOf(O));\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar toPrimitive = require('./_to-primitive');\nvar getPrototypeOf = require('./_object-gpo');\nvar getOwnPropertyDescriptor = require('./_object-gopd').f;\n\n// B.2.2.5 Object.prototype.__lookupSetter__(P)\nrequire('./_descriptors') && $export($export.P + require('./_object-forced-pam'), 'Object', {\n __lookupSetter__: function __lookupSetter__(P) {\n var O = toObject(this);\n var K = toPrimitive(P, true);\n var D;\n do {\n if (D = getOwnPropertyDescriptor(O, K)) return D.set;\n } while (O = getPrototypeOf(O));\n }\n});\n","// https://github.com/tc39/proposal-object-values-entries\nvar $export = require('./_export');\nvar $values = require('./_object-to-array')(false);\n\n$export($export.S, 'Object', {\n values: function values(it) {\n return $values(it);\n }\n});\n","// https://github.com/tc39/proposal-promise-finally\n'use strict';\nvar $export = require('./_export');\nvar core = require('./_core');\nvar global = require('./_global');\nvar speciesConstructor = require('./_species-constructor');\nvar promiseResolve = require('./_promise-resolve');\n\n$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {\n var C = speciesConstructor(this, core.Promise || global.Promise);\n var isFunction = typeof onFinally == 'function';\n return this.then(\n isFunction ? function (x) {\n return promiseResolve(C, onFinally()).then(function () { return x; });\n } : onFinally,\n isFunction ? function (e) {\n return promiseResolve(C, onFinally()).then(function () { throw e; });\n } : onFinally\n );\n} });\n","'use strict';\n// https://github.com/tc39/proposal-string-pad-start-end\nvar $export = require('./_export');\nvar $pad = require('./_string-pad');\nvar userAgent = require('./_user-agent');\n\n// https://github.com/zloirock/core-js/issues/280\nvar WEBKIT_BUG = /Version\\/10\\.\\d+(\\.\\d+)?( Mobile\\/\\w+)? Safari\\//.test(userAgent);\n\n$export($export.P + $export.F * WEBKIT_BUG, 'String', {\n padEnd: function padEnd(maxLength /* , fillString = ' ' */) {\n return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);\n }\n});\n","'use strict';\n// https://github.com/tc39/proposal-string-pad-start-end\nvar $export = require('./_export');\nvar $pad = require('./_string-pad');\nvar userAgent = require('./_user-agent');\n\n// https://github.com/zloirock/core-js/issues/280\nvar WEBKIT_BUG = /Version\\/10\\.\\d+(\\.\\d+)?( Mobile\\/\\w+)? Safari\\//.test(userAgent);\n\n$export($export.P + $export.F * WEBKIT_BUG, 'String', {\n padStart: function padStart(maxLength /* , fillString = ' ' */) {\n return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);\n }\n});\n","'use strict';\n// https://github.com/sebmarkbage/ecmascript-string-left-right-trim\nrequire('./_string-trim')('trimLeft', function ($trim) {\n return function trimLeft() {\n return $trim(this, 1);\n };\n}, 'trimStart');\n","'use strict';\n// https://github.com/sebmarkbage/ecmascript-string-left-right-trim\nrequire('./_string-trim')('trimRight', function ($trim) {\n return function trimRight() {\n return $trim(this, 2);\n };\n}, 'trimEnd');\n","require('./_wks-define')('asyncIterator');\n","var $iterators = require('./es6.array.iterator');\nvar getKeys = require('./_object-keys');\nvar redefine = require('./_redefine');\nvar global = require('./_global');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar wks = require('./_wks');\nvar ITERATOR = wks('iterator');\nvar TO_STRING_TAG = wks('toStringTag');\nvar ArrayValues = Iterators.Array;\n\nvar DOMIterables = {\n CSSRuleList: true, // TODO: Not spec compliant, should be false.\n CSSStyleDeclaration: false,\n CSSValueList: false,\n ClientRectList: false,\n DOMRectList: false,\n DOMStringList: false,\n DOMTokenList: true,\n DataTransferItemList: false,\n FileList: false,\n HTMLAllCollection: false,\n HTMLCollection: false,\n HTMLFormElement: false,\n HTMLSelectElement: false,\n MediaList: true, // TODO: Not spec compliant, should be false.\n MimeTypeArray: false,\n NamedNodeMap: false,\n NodeList: true,\n PaintRequestList: false,\n Plugin: false,\n PluginArray: false,\n SVGLengthList: false,\n SVGNumberList: false,\n SVGPathSegList: false,\n SVGPointList: false,\n SVGStringList: false,\n SVGTransformList: false,\n SourceBufferList: false,\n StyleSheetList: true, // TODO: Not spec compliant, should be false.\n TextTrackCueList: false,\n TextTrackList: false,\n TouchList: false\n};\n\nfor (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {\n var NAME = collections[i];\n var explicit = DOMIterables[NAME];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n var key;\n if (proto) {\n if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);\n if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = ArrayValues;\n if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);\n }\n}\n","var $export = require('./_export');\nvar $task = require('./_task');\n$export($export.G + $export.B, {\n setImmediate: $task.set,\n clearImmediate: $task.clear\n});\n","// ie9- setTimeout & setInterval additional parameters fix\nvar global = require('./_global');\nvar $export = require('./_export');\nvar userAgent = require('./_user-agent');\nvar slice = [].slice;\nvar MSIE = /MSIE .\\./.test(userAgent); // <- dirty ie9- check\nvar wrap = function (set) {\n return function (fn, time /* , ...args */) {\n var boundArgs = arguments.length > 2;\n var args = boundArgs ? slice.call(arguments, 2) : false;\n return set(boundArgs ? function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(this, args);\n } : fn, time);\n };\n};\n$export($export.G + $export.B + $export.F * MSIE, {\n setTimeout: wrap(global.setTimeout),\n setInterval: wrap(global.setInterval)\n});\n","const isArray =\n Array.isArray ||\n ((arg) => Object.prototype.toString.call(arg) === \"[object Array]\");\nconst isHTMLCollection = (arg) =>\n Object.prototype.toString.call(arg) === \"[object HTMLCollection]\";\nconst isNodeList = (arg) =>\n Object.prototype.toString.call(arg) === \"[object NodeList]\";\n\nconst RE_HANDLER = /on([A-Z][A-Za-z]+)/;\n\nexport const createCreateElement = (createElement, createTextNode) => {\n function appendChild(c) {\n if (typeof c === \"string\") this.appendChild(createTextNode(c));\n else if (c != null) this.appendChild(c);\n }\n\n return (tagName, attributes, ...children) => {\n const el = createElement(tagName);\n\n for (const attr in attributes) {\n let res;\n if ((res = RE_HANDLER.exec(attr))) {\n const [, eventName] = res;\n el.addEventListener(eventName.toLowerCase(), attributes[attr]);\n } else {\n el.setAttribute(attr, attributes[attr]);\n }\n }\n\n // Support old JSX syntax that wraps children in an array,\n // as 3rd parameter.\n let cs = children[0];\n let shouldCopy;\n if (\n isArray(cs) ||\n (shouldCopy = isHTMLCollection(cs)) ||\n (shouldCopy = isNodeList(cs))\n ) {\n // In case use user provides a `NodeList` or `HTMLCollection`,\n // appending will have the effect of removing the item the current\n // collection, which in turn will cause problems which `forEach`.\n // So we create a copy first:\n if (shouldCopy) {\n cs = Array.prototype.slice.call(cs, 0);\n }\n Array.prototype.forEach.call(cs, appendChild, el);\n } else {\n // Support new JSX syntax, where each child is an additional\n // function parameter.\n Array.prototype.forEach.call(children, appendChild, el);\n }\n\n return el;\n };\n};\n\nexport default createCreateElement;\n","import { createCreateElement } from \"./factory\";\n\nexport const createElement = createCreateElement(\n document.createElement.bind(document),\n document.createTextNode.bind(document)\n);\nexport default createElement;\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 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 = Gp.constructor = GeneratorFunctionPrototype;\n 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 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 Gp[iteratorSymbol] = function() {\n return this;\n };\n\n 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, 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 Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","export { Observable } from './internal/Observable';\nexport { ConnectableObservable } from './internal/observable/ConnectableObservable';\nexport { observable } from './internal/symbol/observable';\nexport { animationFrames } from './internal/observable/dom/animationFrames';\nexport { Subject } from './internal/Subject';\nexport { BehaviorSubject } from './internal/BehaviorSubject';\nexport { ReplaySubject } from './internal/ReplaySubject';\nexport { AsyncSubject } from './internal/AsyncSubject';\nexport { asap, asapScheduler } from './internal/scheduler/asap';\nexport { async, asyncScheduler } from './internal/scheduler/async';\nexport { queue, queueScheduler } from './internal/scheduler/queue';\nexport { animationFrame, animationFrameScheduler } from './internal/scheduler/animationFrame';\nexport { VirtualTimeScheduler, VirtualAction } from './internal/scheduler/VirtualTimeScheduler';\nexport { Scheduler } from './internal/Scheduler';\nexport { Subscription } from './internal/Subscription';\nexport { Subscriber } from './internal/Subscriber';\nexport { Notification, NotificationKind } from './internal/Notification';\nexport { pipe } from './internal/util/pipe';\nexport { noop } from './internal/util/noop';\nexport { identity } from './internal/util/identity';\nexport { isObservable } from './internal/util/isObservable';\nexport { lastValueFrom } from './internal/lastValueFrom';\nexport { firstValueFrom } from './internal/firstValueFrom';\nexport { ArgumentOutOfRangeError } from './internal/util/ArgumentOutOfRangeError';\nexport { EmptyError } from './internal/util/EmptyError';\nexport { NotFoundError } from './internal/util/NotFoundError';\nexport { ObjectUnsubscribedError } from './internal/util/ObjectUnsubscribedError';\nexport { SequenceError } from './internal/util/SequenceError';\nexport { TimeoutError } from './internal/operators/timeout';\nexport { UnsubscriptionError } from './internal/util/UnsubscriptionError';\nexport { bindCallback } from './internal/observable/bindCallback';\nexport { bindNodeCallback } from './internal/observable/bindNodeCallback';\nexport { combineLatest } from './internal/observable/combineLatest';\nexport { concat } from './internal/observable/concat';\nexport { defer } from './internal/observable/defer';\nexport { empty } from './internal/observable/empty';\nexport { forkJoin } from './internal/observable/forkJoin';\nexport { from } from './internal/observable/from';\nexport { fromEvent } from './internal/observable/fromEvent';\nexport { fromEventPattern } from './internal/observable/fromEventPattern';\nexport { generate } from './internal/observable/generate';\nexport { iif } from './internal/observable/iif';\nexport { interval } from './internal/observable/interval';\nexport { merge } from './internal/observable/merge';\nexport { never } from './internal/observable/never';\nexport { of } from './internal/observable/of';\nexport { onErrorResumeNext } from './internal/observable/onErrorResumeNext';\nexport { pairs } from './internal/observable/pairs';\nexport { partition } from './internal/observable/partition';\nexport { race } from './internal/observable/race';\nexport { range } from './internal/observable/range';\nexport { throwError } from './internal/observable/throwError';\nexport { timer } from './internal/observable/timer';\nexport { using } from './internal/observable/using';\nexport { zip } from './internal/observable/zip';\nexport { scheduled } from './internal/scheduled/scheduled';\nexport { EMPTY } from './internal/observable/empty';\nexport { NEVER } from './internal/observable/never';\nexport * from './internal/types';\nexport { config } from './internal/config';\n//# sourceMappingURL=index.js.map","import { __extends } from \"tslib\";\nimport { Subject } from './Subject';\nvar AsyncSubject = (function (_super) {\n __extends(AsyncSubject, _super);\n function AsyncSubject() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.value = null;\n _this.hasValue = false;\n _this.isComplete = false;\n return _this;\n }\n AsyncSubject.prototype._checkFinalizedStatuses = function (subscriber) {\n var _a = this, hasError = _a.hasError, hasValue = _a.hasValue, value = _a.value, thrownError = _a.thrownError, isStopped = _a.isStopped;\n if (hasError) {\n subscriber.error(thrownError);\n }\n else if (isStopped) {\n hasValue && subscriber.next(value);\n subscriber.complete();\n }\n };\n AsyncSubject.prototype.next = function (value) {\n if (!this.isStopped) {\n this.value = value;\n this.hasValue = true;\n }\n };\n AsyncSubject.prototype.complete = function () {\n var _a = this, hasValue = _a.hasValue, value = _a.value, isComplete = _a.isComplete;\n if (!isComplete) {\n this.isComplete = true;\n hasValue && _super.prototype.next.call(this, value);\n _super.prototype.complete.call(this);\n }\n };\n return AsyncSubject;\n}(Subject));\nexport { AsyncSubject };\n//# sourceMappingURL=AsyncSubject.js.map","import { __extends } from \"tslib\";\nimport { Subject } from './Subject';\nvar BehaviorSubject = (function (_super) {\n __extends(BehaviorSubject, _super);\n function BehaviorSubject(_value) {\n var _this = _super.call(this) || this;\n _this._value = _value;\n return _this;\n }\n Object.defineProperty(BehaviorSubject.prototype, \"value\", {\n get: function () {\n return this.getValue();\n },\n enumerable: false,\n configurable: true\n });\n BehaviorSubject.prototype._subscribe = function (subscriber) {\n var subscription = _super.prototype._subscribe.call(this, subscriber);\n !subscription.closed && subscriber.next(this._value);\n return subscription;\n };\n BehaviorSubject.prototype.getValue = function () {\n var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, _value = _a._value;\n if (hasError) {\n throw thrownError;\n }\n this._throwIfClosed();\n return _value;\n };\n BehaviorSubject.prototype.next = function (value) {\n _super.prototype.next.call(this, (this._value = value));\n };\n return BehaviorSubject;\n}(Subject));\nexport { BehaviorSubject };\n//# sourceMappingURL=BehaviorSubject.js.map","import { EMPTY } from './observable/empty';\nimport { of } from './observable/of';\nimport { throwError } from './observable/throwError';\nimport { isFunction } from './util/isFunction';\nexport var NotificationKind;\n(function (NotificationKind) {\n NotificationKind[\"NEXT\"] = \"N\";\n NotificationKind[\"ERROR\"] = \"E\";\n NotificationKind[\"COMPLETE\"] = \"C\";\n})(NotificationKind || (NotificationKind = {}));\nvar Notification = (function () {\n function Notification(kind, value, error) {\n this.kind = kind;\n this.value = value;\n this.error = error;\n this.hasValue = kind === 'N';\n }\n Notification.prototype.observe = function (observer) {\n return observeNotification(this, observer);\n };\n Notification.prototype.do = function (nextHandler, errorHandler, completeHandler) {\n var _a = this, kind = _a.kind, value = _a.value, error = _a.error;\n return kind === 'N' ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value) : kind === 'E' ? errorHandler === null || errorHandler === void 0 ? void 0 : errorHandler(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler();\n };\n Notification.prototype.accept = function (nextOrObserver, error, complete) {\n var _a;\n return isFunction((_a = nextOrObserver) === null || _a === void 0 ? void 0 : _a.next)\n ? this.observe(nextOrObserver)\n : this.do(nextOrObserver, error, complete);\n };\n Notification.prototype.toObservable = function () {\n var _a = this, kind = _a.kind, value = _a.value, error = _a.error;\n var result = kind === 'N'\n ?\n of(value)\n :\n kind === 'E'\n ?\n throwError(error)\n :\n kind === 'C'\n ?\n EMPTY\n :\n 0;\n if (!result) {\n throw new TypeError(\"Unexpected notification kind \" + kind);\n }\n return result;\n };\n Notification.createNext = function (value) {\n return new Notification('N', value);\n };\n Notification.createError = function (err) {\n return new Notification('E', undefined, err);\n };\n Notification.createComplete = function () {\n return Notification.completeNotification;\n };\n Notification.completeNotification = new Notification('C');\n return Notification;\n}());\nexport { Notification };\nexport function observeNotification(notification, observer) {\n var _a, _b, _c;\n var _d = notification, kind = _d.kind, value = _d.value, error = _d.error;\n if (typeof kind !== 'string') {\n throw new TypeError('Invalid notification, missing \"kind\"');\n }\n kind === 'N' ? (_a = observer.next) === null || _a === void 0 ? void 0 : _a.call(observer, value) : kind === 'E' ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer);\n}\n//# sourceMappingURL=Notification.js.map","export var COMPLETE_NOTIFICATION = (function () { return createNotification('C', undefined, undefined); })();\nexport function errorNotification(error) {\n return createNotification('E', undefined, error);\n}\nexport function nextNotification(value) {\n return createNotification('N', value, undefined);\n}\nexport function createNotification(kind, value, error) {\n return {\n kind: kind,\n value: value,\n error: error,\n };\n}\n//# sourceMappingURL=NotificationFactories.js.map","import { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription } from './Subscription';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nvar Observable = (function () {\n function Observable(subscribe) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n Observable.prototype.lift = function (operator) {\n var observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n };\n Observable.prototype.subscribe = function (observerOrNext, error, complete) {\n var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n var _a = this, operator = _a.operator, source = _a.source;\n subscriber.add(operator\n ? operator.call(subscriber, source)\n : source || config.useDeprecatedSynchronousErrorHandling\n ? this._subscribe(subscriber)\n : this._trySubscribe(subscriber));\n return subscriber;\n };\n Observable.prototype._trySubscribe = function (sink) {\n try {\n return this._subscribe(sink);\n }\n catch (err) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n throw err;\n }\n sink.error(err);\n }\n };\n Observable.prototype.forEach = function (next, promiseCtor) {\n var _this = this;\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor(function (resolve, reject) {\n var subscription;\n subscription = _this.subscribe(function (value) {\n try {\n next(value);\n }\n catch (err) {\n reject(err);\n subscription === null || subscription === void 0 ? void 0 : subscription.unsubscribe();\n }\n }, reject, resolve);\n });\n };\n Observable.prototype._subscribe = function (subscriber) {\n var _a;\n return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);\n };\n Observable.prototype[Symbol_observable] = function () {\n return this;\n };\n Observable.prototype.pipe = function () {\n var operations = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n operations[_i] = arguments[_i];\n }\n return operations.length ? pipeFromArray(operations)(this) : this;\n };\n Observable.prototype.toPromise = function (promiseCtor) {\n var _this = this;\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor(function (resolve, reject) {\n var value;\n _this.subscribe(function (x) { return (value = x); }, function (err) { return reject(err); }, function () { return resolve(value); });\n });\n };\n Observable.create = function (subscribe) {\n return new Observable(subscribe);\n };\n return Observable;\n}());\nexport { Observable };\nfunction getPromiseCtor(promiseCtor) {\n var _a;\n return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a !== void 0 ? _a : Promise;\n}\nfunction isObserver(value) {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\nfunction isSubscriber(value) {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n//# sourceMappingURL=Observable.js.map","import { __extends } from \"tslib\";\nimport { Subject } from './Subject';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\nvar ReplaySubject = (function (_super) {\n __extends(ReplaySubject, _super);\n function ReplaySubject(bufferSize, windowTime, timestampProvider) {\n if (bufferSize === void 0) { bufferSize = Infinity; }\n if (windowTime === void 0) { windowTime = Infinity; }\n if (timestampProvider === void 0) { timestampProvider = dateTimestampProvider; }\n var _this = _super.call(this) || this;\n _this.bufferSize = bufferSize;\n _this.windowTime = windowTime;\n _this.timestampProvider = timestampProvider;\n _this.buffer = [];\n _this.infiniteTimeWindow = true;\n _this.infiniteTimeWindow = windowTime === Infinity;\n _this.bufferSize = Math.max(1, bufferSize);\n _this.windowTime = Math.max(1, windowTime);\n return _this;\n }\n ReplaySubject.prototype.next = function (value) {\n var _a = this, isStopped = _a.isStopped, buffer = _a.buffer, infiniteTimeWindow = _a.infiniteTimeWindow, timestampProvider = _a.timestampProvider, windowTime = _a.windowTime;\n if (!isStopped) {\n buffer.push(value);\n !infiniteTimeWindow && buffer.push(timestampProvider.now() + windowTime);\n }\n this.trimBuffer();\n _super.prototype.next.call(this, value);\n };\n ReplaySubject.prototype._subscribe = function (subscriber) {\n this._throwIfClosed();\n this.trimBuffer();\n var subscription = this._innerSubscribe(subscriber);\n var _a = this, infiniteTimeWindow = _a.infiniteTimeWindow, buffer = _a.buffer;\n var copy = buffer.slice();\n for (var i = 0; i < copy.length && !subscriber.closed; i += infiniteTimeWindow ? 1 : 2) {\n subscriber.next(copy[i]);\n }\n this._checkFinalizedStatuses(subscriber);\n return subscription;\n };\n ReplaySubject.prototype.trimBuffer = function () {\n var _a = this, bufferSize = _a.bufferSize, timestampProvider = _a.timestampProvider, buffer = _a.buffer, infiniteTimeWindow = _a.infiniteTimeWindow;\n var adjustedBufferSize = (infiniteTimeWindow ? 1 : 2) * bufferSize;\n bufferSize < Infinity && adjustedBufferSize < buffer.length && buffer.splice(0, buffer.length - adjustedBufferSize);\n if (!infiniteTimeWindow) {\n var now = timestampProvider.now();\n var last = 0;\n for (var i = 1; i < buffer.length && buffer[i] <= now; i += 2) {\n last = i;\n }\n last && buffer.splice(0, last + 1);\n }\n };\n return ReplaySubject;\n}(Subject));\nexport { ReplaySubject };\n//# sourceMappingURL=ReplaySubject.js.map","import { dateTimestampProvider } from \"./scheduler/dateTimestampProvider\";\nvar Scheduler = (function () {\n function Scheduler(schedulerActionCtor, now) {\n if (now === void 0) { now = Scheduler.now; }\n this.schedulerActionCtor = schedulerActionCtor;\n this.now = now;\n }\n Scheduler.prototype.schedule = function (work, delay, state) {\n if (delay === void 0) { delay = 0; }\n return new this.schedulerActionCtor(this, work).schedule(state, delay);\n };\n Scheduler.now = dateTimestampProvider.now;\n return Scheduler;\n}());\nexport { Scheduler };\n//# sourceMappingURL=Scheduler.js.map","import { __extends, __values } from \"tslib\";\nimport { Observable } from './Observable';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nvar Subject = (function (_super) {\n __extends(Subject, _super);\n function Subject() {\n var _this = _super.call(this) || this;\n _this.observers = [];\n _this.closed = false;\n _this.isStopped = false;\n _this.hasError = false;\n _this.thrownError = null;\n return _this;\n }\n Subject.prototype.lift = function (operator) {\n var subject = new AnonymousSubject(this, this);\n subject.operator = operator;\n return subject;\n };\n Subject.prototype._throwIfClosed = function () {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n };\n Subject.prototype.next = function (value) {\n var e_1, _a;\n this._throwIfClosed();\n if (!this.isStopped) {\n var copy = this.observers.slice();\n try {\n for (var copy_1 = __values(copy), copy_1_1 = copy_1.next(); !copy_1_1.done; copy_1_1 = copy_1.next()) {\n var observer = copy_1_1.value;\n observer.next(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (copy_1_1 && !copy_1_1.done && (_a = copy_1.return)) _a.call(copy_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }\n };\n Subject.prototype.error = function (err) {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.hasError = this.isStopped = true;\n this.thrownError = err;\n var observers = this.observers;\n while (observers.length) {\n observers.shift().error(err);\n }\n }\n };\n Subject.prototype.complete = function () {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.isStopped = true;\n var observers = this.observers;\n while (observers.length) {\n observers.shift().complete();\n }\n }\n };\n Subject.prototype.unsubscribe = function () {\n this.isStopped = this.closed = true;\n this.observers = null;\n };\n Subject.prototype._trySubscribe = function (subscriber) {\n this._throwIfClosed();\n return _super.prototype._trySubscribe.call(this, subscriber);\n };\n Subject.prototype._subscribe = function (subscriber) {\n this._throwIfClosed();\n this._checkFinalizedStatuses(subscriber);\n return this._innerSubscribe(subscriber);\n };\n Subject.prototype._innerSubscribe = function (subscriber) {\n var _this = this;\n var _a = this, hasError = _a.hasError, isStopped = _a.isStopped, observers = _a.observers;\n return hasError || isStopped\n ? EMPTY_SUBSCRIPTION\n : (observers.push(subscriber), new Subscription(function () { return arrRemove(_this.observers, subscriber); }));\n };\n Subject.prototype._checkFinalizedStatuses = function (subscriber) {\n var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, isStopped = _a.isStopped;\n if (hasError) {\n subscriber.error(thrownError);\n }\n else if (isStopped) {\n subscriber.complete();\n }\n };\n Subject.prototype.asObservable = function () {\n var observable = new Observable();\n observable.source = this;\n return observable;\n };\n Subject.create = function (destination, source) {\n return new AnonymousSubject(destination, source);\n };\n return Subject;\n}(Observable));\nexport { Subject };\nvar AnonymousSubject = (function (_super) {\n __extends(AnonymousSubject, _super);\n function AnonymousSubject(destination, source) {\n var _this = _super.call(this) || this;\n _this.destination = destination;\n _this.source = source;\n return _this;\n }\n AnonymousSubject.prototype.next = function (value) {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);\n };\n AnonymousSubject.prototype.error = function (err) {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);\n };\n AnonymousSubject.prototype.complete = function () {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);\n };\n AnonymousSubject.prototype._subscribe = function (subscriber) {\n var _a, _b;\n return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : EMPTY_SUBSCRIPTION;\n };\n return AnonymousSubject;\n}(Subject));\nexport { AnonymousSubject };\n//# sourceMappingURL=Subject.js.map","import { __extends } from \"tslib\";\nimport { isFunction } from './util/isFunction';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nvar Subscriber = (function (_super) {\n __extends(Subscriber, _super);\n function Subscriber(destination) {\n var _this = _super.call(this) || this;\n _this.isStopped = false;\n if (destination) {\n _this.destination = destination;\n if (isSubscription(destination)) {\n destination.add(_this);\n }\n }\n else {\n _this.destination = EMPTY_OBSERVER;\n }\n return _this;\n }\n Subscriber.create = function (next, error, complete) {\n return new SafeSubscriber(next, error, complete);\n };\n Subscriber.prototype.next = function (value) {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n }\n else {\n this._next(value);\n }\n };\n Subscriber.prototype.error = function (err) {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n }\n else {\n this.isStopped = true;\n this._error(err);\n }\n };\n Subscriber.prototype.complete = function () {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n }\n else {\n this.isStopped = true;\n this._complete();\n }\n };\n Subscriber.prototype.unsubscribe = function () {\n if (!this.closed) {\n this.isStopped = true;\n _super.prototype.unsubscribe.call(this);\n }\n };\n Subscriber.prototype._next = function (value) {\n this.destination.next(value);\n };\n Subscriber.prototype._error = function (err) {\n this.destination.error(err);\n this.unsubscribe();\n };\n Subscriber.prototype._complete = function () {\n this.destination.complete();\n this.unsubscribe();\n };\n return Subscriber;\n}(Subscription));\nexport { Subscriber };\nvar SafeSubscriber = (function (_super) {\n __extends(SafeSubscriber, _super);\n function SafeSubscriber(observerOrNext, error, complete) {\n var _this = _super.call(this) || this;\n _this.destination = EMPTY_OBSERVER;\n if ((observerOrNext || error || complete) && observerOrNext !== EMPTY_OBSERVER) {\n var next = void 0;\n if (isFunction(observerOrNext)) {\n next = observerOrNext;\n }\n else if (observerOrNext) {\n (next = observerOrNext.next, error = observerOrNext.error, complete = observerOrNext.complete);\n var context_1;\n if (_this && config.useDeprecatedNextContext) {\n context_1 = Object.create(observerOrNext);\n context_1.unsubscribe = function () { return _this.unsubscribe(); };\n }\n else {\n context_1 = observerOrNext;\n }\n next = next === null || next === void 0 ? void 0 : next.bind(context_1);\n error = error === null || error === void 0 ? void 0 : error.bind(context_1);\n complete = complete === null || complete === void 0 ? void 0 : complete.bind(context_1);\n }\n _this.destination = {\n next: next || noop,\n error: error || defaultErrorHandler,\n complete: complete || noop,\n };\n }\n return _this;\n }\n return SafeSubscriber;\n}(Subscriber));\nexport { SafeSubscriber };\nfunction defaultErrorHandler(err) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n throw err;\n }\n reportUnhandledError(err);\n}\nfunction handleStoppedNotification(notification, subscriber) {\n var onStoppedNotification = config.onStoppedNotification;\n onStoppedNotification && timeoutProvider.setTimeout(function () { return onStoppedNotification(notification, subscriber); });\n}\nexport var EMPTY_OBSERVER = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n//# sourceMappingURL=Subscriber.js.map","import { __read, __spread, __values } from \"tslib\";\nimport { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { arrRemove } from './util/arrRemove';\nvar Subscription = (function () {\n function Subscription(initialTeardown) {\n this.initialTeardown = initialTeardown;\n this.closed = false;\n this._parentage = null;\n this._teardowns = null;\n }\n Subscription.prototype.unsubscribe = function () {\n var e_1, _a, e_2, _b;\n var errors;\n if (!this.closed) {\n this.closed = true;\n var _parentage = this._parentage;\n if (Array.isArray(_parentage)) {\n try {\n for (var _parentage_1 = __values(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) {\n var parent_1 = _parentage_1_1.value;\n parent_1.remove(this);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }\n else {\n _parentage === null || _parentage === void 0 ? void 0 : _parentage.remove(this);\n }\n var initialTeardown = this.initialTeardown;\n if (isFunction(initialTeardown)) {\n try {\n initialTeardown();\n }\n catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n var _teardowns = this._teardowns;\n if (_teardowns) {\n this._teardowns = null;\n try {\n for (var _teardowns_1 = __values(_teardowns), _teardowns_1_1 = _teardowns_1.next(); !_teardowns_1_1.done; _teardowns_1_1 = _teardowns_1.next()) {\n var teardown_1 = _teardowns_1_1.value;\n try {\n execTeardown(teardown_1);\n }\n catch (err) {\n errors = errors !== null && errors !== void 0 ? errors : [];\n if (err instanceof UnsubscriptionError) {\n errors = __spread(errors, err.errors);\n }\n else {\n errors.push(err);\n }\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_teardowns_1_1 && !_teardowns_1_1.done && (_b = _teardowns_1.return)) _b.call(_teardowns_1);\n }\n finally { if (e_2) throw e_2.error; }\n }\n }\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n };\n Subscription.prototype.add = function (teardown) {\n var _a;\n if (teardown && teardown !== this) {\n if (this.closed) {\n execTeardown(teardown);\n }\n else {\n if (teardown instanceof Subscription) {\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._teardowns = (_a = this._teardowns) !== null && _a !== void 0 ? _a : []).push(teardown);\n }\n }\n };\n Subscription.prototype._hasParent = function (parent) {\n var _parentage = this._parentage;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n };\n Subscription.prototype._addParent = function (parent) {\n var _parentage = this._parentage;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n };\n Subscription.prototype._removeParent = function (parent) {\n var _parentage = this._parentage;\n if (_parentage === parent) {\n this._parentage = null;\n }\n else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n };\n Subscription.prototype.remove = function (teardown) {\n var _teardowns = this._teardowns;\n _teardowns && arrRemove(_teardowns, teardown);\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n };\n Subscription.EMPTY = (function () {\n var empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n return Subscription;\n}());\nexport { Subscription };\nexport var EMPTY_SUBSCRIPTION = Subscription.EMPTY;\nexport function isSubscription(value) {\n return (value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe)));\n}\nfunction execTeardown(teardown) {\n if (isFunction(teardown)) {\n teardown();\n }\n else {\n teardown.unsubscribe();\n }\n}\n//# sourceMappingURL=Subscription.js.map","export var config = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n//# sourceMappingURL=config.js.map","import { EmptyError } from './util/EmptyError';\nimport { SafeSubscriber } from './Subscriber';\nexport function firstValueFrom(source) {\n return new Promise(function (resolve, reject) {\n var subscriber = new SafeSubscriber({\n next: function (value) {\n resolve(value);\n subscriber.unsubscribe();\n },\n error: reject,\n complete: function () {\n reject(new EmptyError());\n },\n });\n source.subscribe(subscriber);\n });\n}\n//# sourceMappingURL=firstValueFrom.js.map","import { EmptyError } from './util/EmptyError';\nexport function lastValueFrom(source) {\n return new Promise(function (resolve, reject) {\n var _hasValue = false;\n var _value;\n source.subscribe({\n next: function (value) {\n _value = value;\n _hasValue = true;\n },\n error: reject,\n complete: function () {\n if (_hasValue) {\n resolve(_value);\n }\n else {\n reject(new EmptyError());\n }\n },\n });\n });\n}\n//# sourceMappingURL=lastValueFrom.js.map","import { __extends } from \"tslib\";\nimport { Observable } from '../Observable';\nimport { Subscription } from '../Subscription';\nimport { refCount as higherOrderRefCount } from '../operators/refCount';\nimport { OperatorSubscriber } from '../operators/OperatorSubscriber';\nvar ConnectableObservable = (function (_super) {\n __extends(ConnectableObservable, _super);\n function ConnectableObservable(source, subjectFactory) {\n var _this = _super.call(this) || this;\n _this.source = source;\n _this.subjectFactory = subjectFactory;\n _this._subject = null;\n _this._refCount = 0;\n _this._connection = null;\n return _this;\n }\n ConnectableObservable.prototype._subscribe = function (subscriber) {\n return this.getSubject().subscribe(subscriber);\n };\n ConnectableObservable.prototype.getSubject = function () {\n var subject = this._subject;\n if (!subject || subject.isStopped) {\n this._subject = this.subjectFactory();\n }\n return this._subject;\n };\n ConnectableObservable.prototype._teardown = function () {\n this._refCount = 0;\n var _connection = this._connection;\n this._subject = this._connection = null;\n _connection === null || _connection === void 0 ? void 0 : _connection.unsubscribe();\n };\n ConnectableObservable.prototype.connect = function () {\n var _this = this;\n var connection = this._connection;\n if (!connection) {\n connection = this._connection = new Subscription();\n var subject_1 = this.getSubject();\n connection.add(this.source.subscribe(new OperatorSubscriber(subject_1, undefined, function (err) {\n _this._teardown();\n subject_1.error(err);\n }, function () {\n _this._teardown();\n subject_1.complete();\n }, function () { return _this._teardown(); })));\n if (connection.closed) {\n this._connection = null;\n connection = Subscription.EMPTY;\n }\n }\n return connection;\n };\n ConnectableObservable.prototype.refCount = function () {\n return higherOrderRefCount()(this);\n };\n return ConnectableObservable;\n}(Observable));\nexport { ConnectableObservable };\n//# sourceMappingURL=ConnectableObservable.js.map","import { bindCallbackInternals } from './bindCallbackInternals';\nexport function bindCallback(callbackFunc, resultSelector, scheduler) {\n return bindCallbackInternals(false, callbackFunc, resultSelector, scheduler);\n}\n//# sourceMappingURL=bindCallback.js.map","import { __read, __spread } from \"tslib\";\nimport { isScheduler } from '../util/isScheduler';\nimport { Observable } from '../Observable';\nimport { subscribeOn } from '../operators/subscribeOn';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nimport { observeOn } from '../operators/observeOn';\nimport { AsyncSubject } from '../AsyncSubject';\nexport function bindCallbackInternals(isNodeStyle, callbackFunc, resultSelector, scheduler) {\n if (resultSelector) {\n if (isScheduler(resultSelector)) {\n scheduler = resultSelector;\n }\n else {\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return bindCallbackInternals(isNodeStyle, callbackFunc, scheduler)\n .apply(this, args)\n .pipe(mapOneOrManyArgs(resultSelector));\n };\n }\n }\n if (scheduler) {\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return bindCallbackInternals(isNodeStyle, callbackFunc)\n .apply(this, args)\n .pipe(subscribeOn(scheduler), observeOn(scheduler));\n };\n }\n var subject = new AsyncSubject();\n return function () {\n var _this = this;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var uninitialized = true;\n return new Observable(function (subscriber) {\n var subs = subject.subscribe(subscriber);\n if (uninitialized) {\n uninitialized = false;\n var isAsync_1 = false;\n var isComplete_1 = false;\n callbackFunc.apply(_this, __spread(args, [\n function () {\n var results = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n results[_i] = arguments[_i];\n }\n if (isNodeStyle) {\n var err = results.shift();\n if (err != null) {\n subject.error(err);\n return;\n }\n }\n subject.next(1 < results.length ? results : results[0]);\n isComplete_1 = true;\n if (isAsync_1) {\n subject.complete();\n }\n },\n ]));\n if (isComplete_1) {\n subject.complete();\n }\n isAsync_1 = true;\n }\n return subs;\n });\n };\n}\n//# sourceMappingURL=bindCallbackInternals.js.map","import { bindCallbackInternals } from './bindCallbackInternals';\nexport function bindNodeCallback(callbackFunc, resultSelector, scheduler) {\n return bindCallbackInternals(true, callbackFunc, resultSelector, scheduler);\n}\n//# sourceMappingURL=bindNodeCallback.js.map","import { __extends } from \"tslib\";\nimport { Observable } from '../Observable';\nimport { argsArgArrayOrObject } from '../util/argsArgArrayOrObject';\nimport { Subscriber } from '../Subscriber';\nimport { from } from './from';\nimport { identity } from '../util/identity';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nimport { popResultSelector, popScheduler } from '../util/args';\nexport function combineLatest() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = popScheduler(args);\n var resultSelector = popResultSelector(args);\n var _a = argsArgArrayOrObject(args), observables = _a.args, keys = _a.keys;\n var result = new Observable(combineLatestInit(observables, scheduler, keys\n ?\n function (values) {\n var value = {};\n for (var i = 0; i < values.length; i++) {\n value[keys[i]] = values[i];\n }\n return value;\n }\n :\n identity));\n if (resultSelector) {\n return result.pipe(mapOneOrManyArgs(resultSelector));\n }\n return result;\n}\nvar CombineLatestSubscriber = (function (_super) {\n __extends(CombineLatestSubscriber, _super);\n function CombineLatestSubscriber(destination, _next, shouldComplete) {\n var _this = _super.call(this, destination) || this;\n _this._next = _next;\n _this.shouldComplete = shouldComplete;\n return _this;\n }\n CombineLatestSubscriber.prototype._complete = function () {\n if (this.shouldComplete()) {\n _super.prototype._complete.call(this);\n }\n else {\n this.unsubscribe();\n }\n };\n return CombineLatestSubscriber;\n}(Subscriber));\nexport function combineLatestInit(observables, scheduler, valueTransform) {\n if (valueTransform === void 0) { valueTransform = identity; }\n return function (subscriber) {\n var primarySubscribe = function () {\n var length = observables.length;\n var values = new Array(length);\n var active = length;\n var hasValues = observables.map(function () { return false; });\n var waitingForFirstValues = true;\n var emit = function () { return subscriber.next(valueTransform(values.slice())); };\n var _loop_1 = function (i) {\n var subscribe = function () {\n var source = from(observables[i], scheduler);\n source.subscribe(new CombineLatestSubscriber(subscriber, function (value) {\n values[i] = value;\n if (waitingForFirstValues) {\n hasValues[i] = true;\n waitingForFirstValues = !hasValues.every(identity);\n }\n if (!waitingForFirstValues) {\n emit();\n }\n }, function () { return --active === 0; }));\n };\n maybeSchedule(scheduler, subscribe, subscriber);\n };\n for (var i = 0; i < length; i++) {\n _loop_1(i);\n }\n };\n maybeSchedule(scheduler, primarySubscribe, subscriber);\n };\n}\nfunction maybeSchedule(scheduler, execute, subscription) {\n if (scheduler) {\n subscription.add(scheduler.schedule(execute));\n }\n else {\n execute();\n }\n}\n//# sourceMappingURL=combineLatest.js.map","import { concatAll } from '../operators/concatAll';\nimport { internalFromArray } from './fromArray';\nimport { popScheduler } from '../util/args';\nexport function concat() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return concatAll()(internalFromArray(args, popScheduler(args)));\n}\n//# sourceMappingURL=concat.js.map","import { Observable } from '../Observable';\nimport { innerFrom } from './from';\nexport function defer(observableFactory) {\n return new Observable(function (subscriber) {\n innerFrom(observableFactory()).subscribe(subscriber);\n });\n}\n//# sourceMappingURL=defer.js.map","import { Observable } from '../../Observable';\nimport { Subscription } from '../../Subscription';\nimport { performanceTimestampProvider } from '../../scheduler/performanceTimestampProvider';\nimport { animationFrameProvider } from '../../scheduler/animationFrameProvider';\nexport function animationFrames(timestampProvider) {\n return timestampProvider ? animationFramesFactory(timestampProvider) : DEFAULT_ANIMATION_FRAMES;\n}\nfunction animationFramesFactory(timestampProvider) {\n var schedule = animationFrameProvider.schedule;\n return new Observable(function (subscriber) {\n var subscription = new Subscription();\n var provider = timestampProvider || performanceTimestampProvider;\n var start = provider.now();\n var run = function (timestamp) {\n var now = provider.now();\n subscriber.next({\n timestamp: timestampProvider ? now : timestamp,\n elapsed: now - start\n });\n if (!subscriber.closed) {\n subscription.add(schedule(run));\n }\n };\n subscription.add(schedule(run));\n return subscription;\n });\n}\nvar DEFAULT_ANIMATION_FRAMES = animationFramesFactory();\n//# sourceMappingURL=animationFrames.js.map","import { Observable } from '../Observable';\nexport var EMPTY = new Observable(function (subscriber) { return subscriber.complete(); });\nexport function empty(scheduler) {\n return scheduler ? emptyScheduled(scheduler) : EMPTY;\n}\nfunction emptyScheduled(scheduler) {\n return new Observable(function (subscriber) { return scheduler.schedule(function () { return subscriber.complete(); }); });\n}\n//# sourceMappingURL=empty.js.map","import { __read, __spread } from \"tslib\";\nimport { Observable } from '../Observable';\nimport { map } from '../operators/map';\nimport { argsArgArrayOrObject } from '../util/argsArgArrayOrObject';\nimport { innerFrom } from './from';\nimport { popResultSelector } from '../util/args';\nexport function forkJoin() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var resultSelector = popResultSelector(args);\n var _a = argsArgArrayOrObject(args), sources = _a.args, keys = _a.keys;\n if (resultSelector) {\n return forkJoinInternal(sources, keys).pipe(map(function (values) { return resultSelector.apply(void 0, __spread(values)); }));\n }\n return forkJoinInternal(sources, keys);\n}\nfunction forkJoinInternal(sources, keys) {\n return new Observable(function (subscriber) {\n var len = sources.length;\n if (len === 0) {\n subscriber.complete();\n return;\n }\n var values = new Array(len);\n var completed = 0;\n var emitted = 0;\n var _loop_1 = function (sourceIndex) {\n var source = innerFrom(sources[sourceIndex]);\n var hasValue = false;\n subscriber.add(source.subscribe({\n next: function (value) {\n if (!hasValue) {\n hasValue = true;\n emitted++;\n }\n values[sourceIndex] = value;\n },\n error: function (err) { return subscriber.error(err); },\n complete: function () {\n completed++;\n if (completed === len || !hasValue) {\n if (emitted === len) {\n subscriber.next(keys ? keys.reduce(function (result, key, i) { return ((result[key] = values[i]), result); }, {}) : values);\n }\n subscriber.complete();\n }\n },\n }));\n };\n for (var sourceIndex = 0; sourceIndex < len; sourceIndex++) {\n _loop_1(sourceIndex);\n }\n });\n}\n//# sourceMappingURL=forkJoin.js.map","import { __asyncValues, __awaiter, __generator } from \"tslib\";\nimport { isArrayLike } from '../util/isArrayLike';\nimport { isPromise } from '../util/isPromise';\nimport { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { observable as Symbol_observable } from '../symbol/observable';\nimport { Observable } from '../Observable';\nimport { scheduled } from '../scheduled/scheduled';\nimport { isFunction } from '../util/isFunction';\nimport { reportUnhandledError } from '../util/reportUnhandledError';\nimport { isInteropObservable } from '../util/isInteropObservable';\nimport { isAsyncIterable } from '../util/isAsyncIterable';\nimport { createInvalidObservableTypeError } from '../util/throwUnobservableError';\nimport { isIterable } from '../util/isIterable';\nexport function from(input, scheduler) {\n return scheduler ? scheduled(input, scheduler) : innerFrom(input);\n}\nexport function innerFrom(input) {\n if (input instanceof Observable) {\n return input;\n }\n if (input != null) {\n if (isInteropObservable(input)) {\n return fromInteropObservable(input);\n }\n if (isArrayLike(input)) {\n return fromArrayLike(input);\n }\n if (isPromise(input)) {\n return fromPromise(input);\n }\n if (isAsyncIterable(input)) {\n return fromAsyncIterable(input);\n }\n if (isIterable(input)) {\n return fromIterable(input);\n }\n }\n throw createInvalidObservableTypeError(input);\n}\nfunction fromInteropObservable(obj) {\n return new Observable(function (subscriber) {\n var obs = obj[Symbol_observable]();\n if (isFunction(obs.subscribe)) {\n return obs.subscribe(subscriber);\n }\n throw new TypeError('Provided object does not correctly implement Symbol.observable');\n });\n}\nexport function fromArrayLike(array) {\n return new Observable(function (subscriber) {\n for (var i = 0; i < array.length && !subscriber.closed; i++) {\n subscriber.next(array[i]);\n }\n subscriber.complete();\n });\n}\nfunction fromPromise(promise) {\n return new Observable(function (subscriber) {\n promise\n .then(function (value) {\n if (!subscriber.closed) {\n subscriber.next(value);\n subscriber.complete();\n }\n }, function (err) { return subscriber.error(err); })\n .then(null, reportUnhandledError);\n });\n}\nfunction fromIterable(iterable) {\n return new Observable(function (subscriber) {\n var iterator = iterable[Symbol_iterator]();\n while (!subscriber.closed) {\n var _a = iterator.next(), done = _a.done, value = _a.value;\n if (done) {\n subscriber.complete();\n }\n else {\n subscriber.next(value);\n }\n }\n return function () { return isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return(); };\n });\n}\nfunction fromAsyncIterable(asyncIterable) {\n return new Observable(function (subscriber) {\n process(asyncIterable, subscriber).catch(function (err) { return subscriber.error(err); });\n });\n}\nfunction process(asyncIterable, subscriber) {\n var asyncIterable_1, asyncIterable_1_1;\n var e_1, _a;\n return __awaiter(this, void 0, void 0, function () {\n var value, e_1_1;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _b.trys.push([0, 5, 6, 11]);\n asyncIterable_1 = __asyncValues(asyncIterable);\n _b.label = 1;\n case 1: return [4, asyncIterable_1.next()];\n case 2:\n if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) return [3, 4];\n value = asyncIterable_1_1.value;\n subscriber.next(value);\n _b.label = 3;\n case 3: return [3, 1];\n case 4: return [3, 11];\n case 5:\n e_1_1 = _b.sent();\n e_1 = { error: e_1_1 };\n return [3, 11];\n case 6:\n _b.trys.push([6, , 9, 10]);\n if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) return [3, 8];\n return [4, _a.call(asyncIterable_1)];\n case 7:\n _b.sent();\n _b.label = 8;\n case 8: return [3, 10];\n case 9:\n if (e_1) throw e_1.error;\n return [7];\n case 10: return [7];\n case 11:\n subscriber.complete();\n return [2];\n }\n });\n });\n}\n//# sourceMappingURL=from.js.map","import { scheduleArray } from '../scheduled/scheduleArray';\nimport { fromArrayLike } from './from';\nexport function internalFromArray(input, scheduler) {\n return scheduler ? scheduleArray(input, scheduler) : fromArrayLike(input);\n}\n//# sourceMappingURL=fromArray.js.map","import { __read } from \"tslib\";\nimport { Observable } from '../Observable';\nimport { mergeMap } from '../operators/mergeMap';\nimport { isArrayLike } from '../util/isArrayLike';\nimport { isFunction } from '../util/isFunction';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nimport { internalFromArray } from './fromArray';\nvar nodeEventEmitterMethods = ['addListener', 'removeListener'];\nvar eventTargetMethods = ['addEventListener', 'removeEventListener'];\nvar jqueryMethods = ['on', 'off'];\nexport function fromEvent(target, eventName, options, resultSelector) {\n if (isFunction(options)) {\n resultSelector = options;\n options = undefined;\n }\n if (resultSelector) {\n return fromEvent(target, eventName, options).pipe(mapOneOrManyArgs(resultSelector));\n }\n var _a = __read(isEventTarget(target)\n ? eventTargetMethods.map(function (methodName) { return function (handler) { return target[methodName](eventName, handler, options); }; })\n :\n isNodeStyleEventEmitter(target)\n ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName))\n : isJQueryStyleEventEmitter(target)\n ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName))\n : [], 2), add = _a[0], remove = _a[1];\n if (!add) {\n if (isArrayLike(target)) {\n return mergeMap(function (subTarget) { return fromEvent(subTarget, eventName, options); })(internalFromArray(target));\n }\n }\n return new Observable(function (subscriber) {\n if (!add) {\n throw new TypeError('Invalid event target');\n }\n var handler = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return subscriber.next(1 < args.length ? args : args[0]);\n };\n add(handler);\n return function () { return remove(handler); };\n });\n}\nfunction toCommonHandlerRegistry(target, eventName) {\n return function (methodName) { return function (handler) { return target[methodName](eventName, handler); }; };\n}\nfunction isNodeStyleEventEmitter(target) {\n return isFunction(target.addListener) && isFunction(target.removeListener);\n}\nfunction isJQueryStyleEventEmitter(target) {\n return isFunction(target.on) && isFunction(target.off);\n}\nfunction isEventTarget(target) {\n return isFunction(target.addEventListener) && isFunction(target.removeEventListener);\n}\n//# sourceMappingURL=fromEvent.js.map","import { Observable } from '../Observable';\nimport { isFunction } from '../util/isFunction';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nexport function fromEventPattern(addHandler, removeHandler, resultSelector) {\n if (resultSelector) {\n return fromEventPattern(addHandler, removeHandler).pipe(mapOneOrManyArgs(resultSelector));\n }\n return new Observable(function (subscriber) {\n var handler = function () {\n var e = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n e[_i] = arguments[_i];\n }\n return subscriber.next(e.length === 1 ? e[0] : e);\n };\n var retValue = addHandler(handler);\n return isFunction(removeHandler) ? function () { return removeHandler(handler, retValue); } : undefined;\n });\n}\n//# sourceMappingURL=fromEventPattern.js.map","import { __generator } from \"tslib\";\nimport { identity } from '../util/identity';\nimport { isScheduler } from '../util/isScheduler';\nimport { defer } from './defer';\nimport { scheduleIterable } from '../scheduled/scheduleIterable';\nexport function generate(initialStateOrOptions, condition, iterate, resultSelectorOrScheduler, scheduler) {\n var _a, _b;\n var resultSelector;\n var initialState;\n if (arguments.length === 1) {\n (_a = initialStateOrOptions, initialState = _a.initialState, condition = _a.condition, iterate = _a.iterate, _b = _a.resultSelector, resultSelector = _b === void 0 ? identity : _b, scheduler = _a.scheduler);\n }\n else {\n initialState = initialStateOrOptions;\n if (!resultSelectorOrScheduler || isScheduler(resultSelectorOrScheduler)) {\n resultSelector = identity;\n scheduler = resultSelectorOrScheduler;\n }\n else {\n resultSelector = resultSelectorOrScheduler;\n }\n }\n function gen() {\n var state;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n state = initialState;\n _a.label = 1;\n case 1:\n if (!(!condition || condition(state))) return [3, 4];\n return [4, resultSelector(state)];\n case 2:\n _a.sent();\n _a.label = 3;\n case 3:\n state = iterate(state);\n return [3, 1];\n case 4: return [2];\n }\n });\n }\n return defer((scheduler\n ?\n function () { return scheduleIterable(gen(), scheduler); }\n :\n gen));\n}\n//# sourceMappingURL=generate.js.map","import { defer } from './defer';\nexport function iif(condition, trueResult, falseResult) {\n return defer(function () { return (condition() ? trueResult : falseResult); });\n}\n//# sourceMappingURL=iif.js.map","import { asyncScheduler } from '../scheduler/async';\nimport { timer } from './timer';\nexport function interval(period, scheduler) {\n if (period === void 0) { period = 0; }\n if (scheduler === void 0) { scheduler = asyncScheduler; }\n if (period < 0) {\n period = 0;\n }\n return timer(period, period, scheduler);\n}\n//# sourceMappingURL=interval.js.map","import { mergeAll } from '../operators/mergeAll';\nimport { internalFromArray } from './fromArray';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { innerFrom } from './from';\nimport { EMPTY } from './empty';\nimport { popNumber, popScheduler } from '../util/args';\nexport function merge() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = popScheduler(args);\n var concurrent = popNumber(args, Infinity);\n var sources = argsOrArgArray(args);\n return !sources.length\n ?\n EMPTY\n : sources.length === 1\n ?\n innerFrom(sources[0])\n :\n mergeAll(concurrent)(internalFromArray(sources, scheduler));\n}\n//# sourceMappingURL=merge.js.map","import { Observable } from '../Observable';\nimport { noop } from '../util/noop';\nexport var NEVER = new Observable(noop);\nexport function never() {\n return NEVER;\n}\n//# sourceMappingURL=never.js.map","import { internalFromArray } from './fromArray';\nimport { scheduleArray } from '../scheduled/scheduleArray';\nimport { popScheduler } from '../util/args';\nexport function of() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = popScheduler(args);\n return scheduler ? scheduleArray(args, scheduler) : internalFromArray(args);\n}\n//# sourceMappingURL=of.js.map","import { EMPTY } from './empty';\nimport { onErrorResumeNext as onErrorResumeNextWith } from '../operators/onErrorResumeNext';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nexport function onErrorResumeNext() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n return onErrorResumeNextWith(argsOrArgArray(sources))(EMPTY);\n}\n//# sourceMappingURL=onErrorResumeNext.js.map","import { from } from './from';\nexport function pairs(obj, scheduler) {\n return from(Object.entries(obj), scheduler);\n}\n//# sourceMappingURL=pairs.js.map","import { not } from '../util/not';\nimport { filter } from '../operators/filter';\nimport { innerFrom } from './from';\nexport function partition(source, predicate, thisArg) {\n return [\n filter(predicate, thisArg)(innerFrom(source)),\n filter(not(predicate, thisArg))(innerFrom(source))\n ];\n}\n//# sourceMappingURL=partition.js.map","import { Observable } from '../Observable';\nimport { innerFrom } from './from';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { OperatorSubscriber } from '../operators/OperatorSubscriber';\nexport function race() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n sources = argsOrArgArray(sources);\n return sources.length === 1 ? innerFrom(sources[0]) : new Observable(raceInit(sources));\n}\nexport function raceInit(sources) {\n return function (subscriber) {\n var subscriptions = [];\n var _loop_1 = function (i) {\n subscriptions.push(innerFrom(sources[i]).subscribe(new OperatorSubscriber(subscriber, function (value) {\n if (subscriptions) {\n for (var s = 0; s < subscriptions.length; s++) {\n s !== i && subscriptions[s].unsubscribe();\n }\n subscriptions = null;\n }\n subscriber.next(value);\n })));\n };\n for (var i = 0; subscriptions && !subscriber.closed && i < sources.length; i++) {\n _loop_1(i);\n }\n };\n}\n//# sourceMappingURL=race.js.map","import { Observable } from '../Observable';\nimport { EMPTY } from './empty';\nexport function range(start, count, scheduler) {\n if (count == null) {\n count = start;\n start = 0;\n }\n if (count <= 0) {\n return EMPTY;\n }\n var end = count + start;\n return new Observable(scheduler\n ?\n function (subscriber) {\n var n = start;\n return scheduler.schedule(function () {\n if (n < end) {\n subscriber.next(n++);\n this.schedule();\n }\n else {\n subscriber.complete();\n }\n });\n }\n :\n function (subscriber) {\n var n = start;\n while (n < end && !subscriber.closed) {\n subscriber.next(n++);\n }\n subscriber.complete();\n });\n}\n//# sourceMappingURL=range.js.map","import { Observable } from '../Observable';\nimport { isFunction } from '../util/isFunction';\nexport function throwError(errorOrErrorFactory, scheduler) {\n var errorFactory = isFunction(errorOrErrorFactory) ? errorOrErrorFactory : function () { return errorOrErrorFactory; };\n var init = function (subscriber) { return subscriber.error(errorFactory()); };\n return new Observable(scheduler ? function (subscriber) { return scheduler.schedule(init, 0, subscriber); } : init);\n}\n//# sourceMappingURL=throwError.js.map","import { Observable } from '../Observable';\nimport { async as asyncScheduler } from '../scheduler/async';\nimport { isScheduler } from '../util/isScheduler';\nimport { isValidDate } from '../util/isDate';\nexport function timer(dueTime, intervalOrScheduler, scheduler) {\n if (dueTime === void 0) { dueTime = 0; }\n if (scheduler === void 0) { scheduler = asyncScheduler; }\n var intervalDuration = -1;\n if (intervalOrScheduler != null) {\n if (isScheduler(intervalOrScheduler)) {\n scheduler = intervalOrScheduler;\n }\n else {\n intervalDuration = intervalOrScheduler;\n }\n }\n return new Observable(function (subscriber) {\n var due = isValidDate(dueTime) ? +dueTime - scheduler.now() : dueTime;\n if (due < 0) {\n due = 0;\n }\n var n = 0;\n return scheduler.schedule(function () {\n if (!subscriber.closed) {\n subscriber.next(n++);\n if (0 <= intervalDuration) {\n this.schedule(undefined, intervalDuration);\n }\n else {\n subscriber.complete();\n }\n }\n }, due);\n });\n}\n//# sourceMappingURL=timer.js.map","import { Observable } from '../Observable';\nimport { innerFrom } from './from';\nimport { EMPTY } from './empty';\nexport function using(resourceFactory, observableFactory) {\n return new Observable(function (subscriber) {\n var resource = resourceFactory();\n var result = observableFactory(resource);\n var source = result ? innerFrom(result) : EMPTY;\n source.subscribe(subscriber);\n return function () {\n if (resource) {\n resource.unsubscribe();\n }\n };\n });\n}\n//# sourceMappingURL=using.js.map","import { __read, __spread } from \"tslib\";\nimport { Observable } from '../Observable';\nimport { innerFrom } from './from';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { EMPTY } from './empty';\nimport { OperatorSubscriber } from '../operators/OperatorSubscriber';\nimport { popResultSelector } from '../util/args';\nexport function zip() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var resultSelector = popResultSelector(args);\n var sources = argsOrArgArray(args);\n return sources.length\n ? new Observable(function (subscriber) {\n var buffers = sources.map(function () { return []; });\n var completed = sources.map(function () { return false; });\n subscriber.add(function () {\n buffers = completed = null;\n });\n var _loop_1 = function (sourceIndex) {\n innerFrom(sources[sourceIndex]).subscribe(new OperatorSubscriber(subscriber, function (value) {\n buffers[sourceIndex].push(value);\n if (buffers.every(function (buffer) { return buffer.length; })) {\n var result = buffers.map(function (buffer) { return buffer.shift(); });\n subscriber.next(resultSelector ? resultSelector.apply(void 0, __spread(result)) : result);\n if (buffers.some(function (buffer, i) { return !buffer.length && completed[i]; })) {\n subscriber.complete();\n }\n }\n }, undefined, function () {\n completed[sourceIndex] = true;\n !buffers[sourceIndex].length && subscriber.complete();\n }));\n };\n for (var sourceIndex = 0; !subscriber.closed && sourceIndex < sources.length; sourceIndex++) {\n _loop_1(sourceIndex);\n }\n return function () {\n buffers = completed = null;\n };\n })\n : EMPTY;\n}\n//# sourceMappingURL=zip.js.map","import { __extends } from \"tslib\";\nimport { Subscriber } from '../Subscriber';\nvar OperatorSubscriber = (function (_super) {\n __extends(OperatorSubscriber, _super);\n function OperatorSubscriber(destination, onNext, onError, onComplete, onUnsubscribe) {\n var _this = _super.call(this, destination) || this;\n _this.onUnsubscribe = onUnsubscribe;\n if (onNext) {\n _this._next = function (value) {\n try {\n onNext(value);\n }\n catch (err) {\n this.destination.error(err);\n }\n };\n }\n if (onError) {\n _this._error = function (err) {\n try {\n onError(err);\n }\n catch (err) {\n this.destination.error(err);\n }\n this.unsubscribe();\n };\n }\n if (onComplete) {\n _this._complete = function () {\n try {\n onComplete();\n }\n catch (err) {\n this.destination.error(err);\n }\n this.unsubscribe();\n };\n }\n return _this;\n }\n OperatorSubscriber.prototype.unsubscribe = function () {\n var _a;\n !this.closed && ((_a = this.onUnsubscribe) === null || _a === void 0 ? void 0 : _a.call(this));\n _super.prototype.unsubscribe.call(this);\n };\n return OperatorSubscriber;\n}(Subscriber));\nexport { OperatorSubscriber };\n//# sourceMappingURL=OperatorSubscriber.js.map","import { operate } from '../util/lift';\nimport { innerFrom } from '../observable/from';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function audit(durationSelector) {\n return operate(function (source, subscriber) {\n var hasValue = false;\n var lastValue = null;\n var durationSubscriber = null;\n var isComplete = false;\n var endDuration = function () {\n durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();\n durationSubscriber = null;\n if (hasValue) {\n hasValue = false;\n var value = lastValue;\n lastValue = null;\n subscriber.next(value);\n }\n isComplete && subscriber.complete();\n };\n var cleanupDuration = function () {\n durationSubscriber = null;\n isComplete && subscriber.complete();\n };\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n lastValue = value;\n if (!durationSubscriber) {\n innerFrom(durationSelector(value)).subscribe((durationSubscriber = new OperatorSubscriber(subscriber, endDuration, undefined, cleanupDuration)));\n }\n }, undefined, function () {\n isComplete = true;\n (!hasValue || !durationSubscriber || durationSubscriber.closed) && subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=audit.js.map","import { async } from '../scheduler/async';\nimport { audit } from './audit';\nimport { timer } from '../observable/timer';\nexport function auditTime(duration, scheduler) {\n if (scheduler === void 0) { scheduler = async; }\n return audit(function () { return timer(duration, scheduler); });\n}\n//# sourceMappingURL=auditTime.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function buffer(closingNotifier) {\n return operate(function (source, subscriber) {\n var currentBuffer = [];\n source.subscribe(new OperatorSubscriber(subscriber, function (value) { return currentBuffer.push(value); }));\n closingNotifier.subscribe(new OperatorSubscriber(subscriber, function () {\n var b = currentBuffer;\n currentBuffer = [];\n subscriber.next(b);\n }));\n return function () {\n currentBuffer = null;\n };\n });\n}\n//# sourceMappingURL=buffer.js.map","import { __values } from \"tslib\";\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { arrRemove } from '../util/arrRemove';\nexport function bufferCount(bufferSize, startBufferEvery) {\n if (startBufferEvery === void 0) { startBufferEvery = null; }\n startBufferEvery = startBufferEvery !== null && startBufferEvery !== void 0 ? startBufferEvery : bufferSize;\n return operate(function (source, subscriber) {\n var buffers = [];\n var count = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var e_1, _a, e_2, _b;\n var toEmit = null;\n if (count++ % startBufferEvery === 0) {\n buffers.push([]);\n }\n try {\n for (var buffers_1 = __values(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) {\n var buffer = buffers_1_1.value;\n buffer.push(value);\n if (bufferSize <= buffer.length) {\n toEmit = toEmit !== null && toEmit !== void 0 ? toEmit : [];\n toEmit.push(buffer);\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) _a.call(buffers_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n if (toEmit) {\n try {\n for (var toEmit_1 = __values(toEmit), toEmit_1_1 = toEmit_1.next(); !toEmit_1_1.done; toEmit_1_1 = toEmit_1.next()) {\n var buffer = toEmit_1_1.value;\n arrRemove(buffers, buffer);\n subscriber.next(buffer);\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (toEmit_1_1 && !toEmit_1_1.done && (_b = toEmit_1.return)) _b.call(toEmit_1);\n }\n finally { if (e_2) throw e_2.error; }\n }\n }\n }, undefined, function () {\n var e_3, _a;\n try {\n for (var buffers_2 = __values(buffers), buffers_2_1 = buffers_2.next(); !buffers_2_1.done; buffers_2_1 = buffers_2.next()) {\n var buffer = buffers_2_1.value;\n subscriber.next(buffer);\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (buffers_2_1 && !buffers_2_1.done && (_a = buffers_2.return)) _a.call(buffers_2);\n }\n finally { if (e_3) throw e_3.error; }\n }\n subscriber.complete();\n }, function () {\n buffers = null;\n }));\n });\n}\n//# sourceMappingURL=bufferCount.js.map","import { __values } from \"tslib\";\nimport { Subscription } from '../Subscription';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { arrRemove } from '../util/arrRemove';\nimport { asyncScheduler } from '../scheduler/async';\nimport { popScheduler } from '../util/args';\nexport function bufferTime(bufferTimeSpan) {\n var _a, _b;\n var otherArgs = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n otherArgs[_i - 1] = arguments[_i];\n }\n var scheduler = (_a = popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : asyncScheduler;\n var bufferCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null;\n var maxBufferSize = otherArgs[1] || Infinity;\n return operate(function (source, subscriber) {\n var bufferRecords = [];\n var restartOnEmit = false;\n var emit = function (record) {\n var buffer = record.buffer, subs = record.subs;\n subs.unsubscribe();\n arrRemove(bufferRecords, record);\n subscriber.next(buffer);\n restartOnEmit && startBuffer();\n };\n var startBuffer = function () {\n if (bufferRecords) {\n var subs = new Subscription();\n subscriber.add(subs);\n var buffer = [];\n var record_1 = {\n buffer: buffer,\n subs: subs,\n };\n bufferRecords.push(record_1);\n subs.add(scheduler.schedule(function () { return emit(record_1); }, bufferTimeSpan));\n }\n };\n bufferCreationInterval !== null && bufferCreationInterval >= 0\n ?\n subscriber.add(scheduler.schedule(function () {\n startBuffer();\n !this.closed && subscriber.add(this.schedule(null, bufferCreationInterval));\n }, bufferCreationInterval))\n : (restartOnEmit = true);\n startBuffer();\n var bufferTimeSubscriber = new OperatorSubscriber(subscriber, function (value) {\n var e_1, _a;\n var recordsCopy = bufferRecords.slice();\n try {\n for (var recordsCopy_1 = __values(recordsCopy), recordsCopy_1_1 = recordsCopy_1.next(); !recordsCopy_1_1.done; recordsCopy_1_1 = recordsCopy_1.next()) {\n var record = recordsCopy_1_1.value;\n var buffer = record.buffer;\n buffer.push(value);\n maxBufferSize <= buffer.length && emit(record);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (recordsCopy_1_1 && !recordsCopy_1_1.done && (_a = recordsCopy_1.return)) _a.call(recordsCopy_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }, undefined, function () {\n while (bufferRecords === null || bufferRecords === void 0 ? void 0 : bufferRecords.length) {\n subscriber.next(bufferRecords.shift().buffer);\n }\n bufferTimeSubscriber === null || bufferTimeSubscriber === void 0 ? void 0 : bufferTimeSubscriber.unsubscribe();\n subscriber.complete();\n subscriber.unsubscribe();\n }, function () { return (bufferRecords = null); });\n source.subscribe(bufferTimeSubscriber);\n });\n}\n//# sourceMappingURL=bufferTime.js.map","import { __values } from \"tslib\";\nimport { Subscription } from '../Subscription';\nimport { operate } from '../util/lift';\nimport { innerFrom } from '../observable/from';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { noop } from '../util/noop';\nimport { arrRemove } from '../util/arrRemove';\nexport function bufferToggle(openings, closingSelector) {\n return operate(function (source, subscriber) {\n var buffers = [];\n innerFrom(openings).subscribe(new OperatorSubscriber(subscriber, function (openValue) {\n var buffer = [];\n buffers.push(buffer);\n var closingSubscription = new Subscription();\n var emitBuffer = function () {\n arrRemove(buffers, buffer);\n subscriber.next(buffer);\n closingSubscription.unsubscribe();\n };\n closingSubscription.add(innerFrom(closingSelector(openValue)).subscribe(new OperatorSubscriber(subscriber, emitBuffer, undefined, noop)));\n }, undefined, noop));\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var e_1, _a;\n try {\n for (var buffers_1 = __values(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) {\n var buffer = buffers_1_1.value;\n buffer.push(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) _a.call(buffers_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }, undefined, function () {\n while (buffers.length > 0) {\n subscriber.next(buffers.shift());\n }\n subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=bufferToggle.js.map","import { operate } from '../util/lift';\nimport { noop } from '../util/noop';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/from';\nexport function bufferWhen(closingSelector) {\n return operate(function (source, subscriber) {\n var buffer = null;\n var closingSubscriber = null;\n var openBuffer = function () {\n closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();\n var b = buffer;\n buffer = [];\n b && subscriber.next(b);\n innerFrom(closingSelector()).subscribe((closingSubscriber = new OperatorSubscriber(subscriber, openBuffer, undefined, noop)));\n };\n openBuffer();\n source.subscribe(new OperatorSubscriber(subscriber, function (value) { return buffer === null || buffer === void 0 ? void 0 : buffer.push(value); }, undefined, function () {\n buffer && subscriber.next(buffer);\n subscriber.complete();\n }, function () { return (buffer = closingSubscriber = null); }));\n });\n}\n//# sourceMappingURL=bufferWhen.js.map","import { innerFrom } from '../observable/from';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { operate } from '../util/lift';\nexport function catchError(selector) {\n return operate(function (source, subscriber) {\n var innerSub = null;\n var syncUnsub = false;\n var handledResult;\n innerSub = source.subscribe(new OperatorSubscriber(subscriber, undefined, function (err) {\n handledResult = innerFrom(selector(err, catchError(selector)(source)));\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n else {\n syncUnsub = true;\n }\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n });\n}\n//# sourceMappingURL=catchError.js.map","import { combineLatest } from '../observable/combineLatest';\nimport { joinAllInternals } from './joinAllInternals';\nexport function combineAll(project) {\n return joinAllInternals(combineLatest, project);\n}\n//# sourceMappingURL=combineAll.js.map","import { __read, __spread } from \"tslib\";\nimport { combineLatestInit } from '../observable/combineLatest';\nimport { operate } from '../util/lift';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nimport { pipe } from '../util/pipe';\nimport { popResultSelector } from '../util/args';\nexport function combineLatest() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var resultSelector = popResultSelector(args);\n return resultSelector\n ? pipe(combineLatest.apply(void 0, __spread(args)), mapOneOrManyArgs(resultSelector))\n : operate(function (source, subscriber) {\n combineLatestInit(__spread([source], argsOrArgArray(args)))(subscriber);\n });\n}\nexport function combineLatestWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return combineLatest.apply(void 0, __spread(otherSources));\n}\n//# sourceMappingURL=combineLatestWith.js.map","import { mergeAll } from './mergeAll';\nexport function concatAll() {\n return mergeAll(1);\n}\n//# sourceMappingURL=concatAll.js.map","import { mergeMap } from './mergeMap';\nimport { isFunction } from '../util/isFunction';\nexport function concatMap(project, resultSelector) {\n return isFunction(resultSelector) ? mergeMap(project, resultSelector, 1) : mergeMap(project, 1);\n}\n//# sourceMappingURL=concatMap.js.map","import { concatMap } from './concatMap';\nimport { isFunction } from '../util/isFunction';\nexport function concatMapTo(innerObservable, resultSelector) {\n return isFunction(resultSelector) ? concatMap(function () { return innerObservable; }, resultSelector) : concatMap(function () { return innerObservable; });\n}\n//# sourceMappingURL=concatMapTo.js.map","import { __read, __spread } from \"tslib\";\nimport { operate } from '../util/lift';\nimport { concatAll } from './concatAll';\nimport { internalFromArray } from '../observable/fromArray';\nimport { popScheduler } from '../util/args';\nexport function concatWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return concat.apply(void 0, __spread(otherSources));\n}\nexport function concat() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = popScheduler(args);\n return operate(function (source, subscriber) {\n concatAll()(internalFromArray(__spread([source], args), scheduler)).subscribe(subscriber);\n });\n}\n//# sourceMappingURL=concatWith.js.map","import { reduce } from './reduce';\nexport function count(predicate) {\n return reduce(function (total, value, i) { return (!predicate || predicate(value, i) ? total + 1 : total); }, 0);\n}\n//# sourceMappingURL=count.js.map","import { operate } from '../util/lift';\nimport { noop } from '../util/noop';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/from';\nexport function debounce(durationSelector) {\n return operate(function (source, subscriber) {\n var hasValue = false;\n var lastValue = null;\n var durationSubscriber = null;\n var emit = function () {\n durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();\n durationSubscriber = null;\n if (hasValue) {\n hasValue = false;\n var value = lastValue;\n lastValue = null;\n subscriber.next(value);\n }\n };\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();\n hasValue = true;\n lastValue = value;\n durationSubscriber = new OperatorSubscriber(subscriber, emit, undefined, noop);\n innerFrom(durationSelector(value)).subscribe(durationSubscriber);\n }, undefined, function () {\n emit();\n subscriber.complete();\n }, function () {\n lastValue = durationSubscriber = null;\n }));\n });\n}\n//# sourceMappingURL=debounce.js.map","import { asyncScheduler } from '../scheduler/async';\nimport { debounce } from './debounce';\nimport { timer } from '../observable/timer';\nexport function debounceTime(dueTime, scheduler) {\n if (scheduler === void 0) { scheduler = asyncScheduler; }\n var duration = timer(dueTime, scheduler);\n return debounce(function () { return duration; });\n}\n//# sourceMappingURL=debounceTime.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function defaultIfEmpty(defaultValue) {\n if (defaultValue === void 0) { defaultValue = null; }\n return operate(function (source, subscriber) {\n var hasValue = false;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n subscriber.next(value);\n }, undefined, function () {\n if (!hasValue) {\n subscriber.next(defaultValue);\n }\n subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=defaultIfEmpty.js.map","import { asyncScheduler } from '../scheduler/async';\nimport { delayWhen } from './delayWhen';\nimport { timer } from '../observable/timer';\nexport function delay(due, scheduler) {\n if (scheduler === void 0) { scheduler = asyncScheduler; }\n var duration = timer(due, scheduler);\n return delayWhen(function () { return duration; });\n}\n//# sourceMappingURL=delay.js.map","import { concat } from '../observable/concat';\nimport { take } from './take';\nimport { ignoreElements } from './ignoreElements';\nimport { mapTo } from './mapTo';\nimport { mergeMap } from './mergeMap';\nexport function delayWhen(delayDurationSelector, subscriptionDelay) {\n if (subscriptionDelay) {\n return function (source) {\n return concat(subscriptionDelay.pipe(take(1), ignoreElements()), source.pipe(delayWhen(delayDurationSelector)));\n };\n }\n return mergeMap(function (value, index) { return delayDurationSelector(value, index).pipe(take(1), mapTo(value)); });\n}\n//# sourceMappingURL=delayWhen.js.map","import { observeNotification } from '../Notification';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function dematerialize() {\n return operate(function (source, subscriber) {\n source.subscribe(new OperatorSubscriber(subscriber, function (notification) { return observeNotification(notification, subscriber); }));\n });\n}\n//# sourceMappingURL=dematerialize.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { noop } from '../util/noop';\nexport function distinct(keySelector, flushes) {\n return operate(function (source, subscriber) {\n var distinctKeys = new Set();\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var key = keySelector ? keySelector(value) : value;\n if (!distinctKeys.has(key)) {\n distinctKeys.add(key);\n subscriber.next(value);\n }\n }));\n flushes === null || flushes === void 0 ? void 0 : flushes.subscribe(new OperatorSubscriber(subscriber, function () { return distinctKeys.clear(); }, undefined, noop));\n });\n}\n//# sourceMappingURL=distinct.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function distinctUntilChanged(compare, keySelector) {\n compare = compare !== null && compare !== void 0 ? compare : defaultCompare;\n return operate(function (source, subscriber) {\n var prev;\n var first = true;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n ((first && ((prev = value), 1)) || !compare(prev, (prev = keySelector ? keySelector(value) : value))) &&\n subscriber.next(value);\n first = false;\n }));\n });\n}\nfunction defaultCompare(a, b) {\n return a === b;\n}\n//# sourceMappingURL=distinctUntilChanged.js.map","import { distinctUntilChanged } from './distinctUntilChanged';\nexport function distinctUntilKeyChanged(key, compare) {\n return distinctUntilChanged(function (x, y) { return compare ? compare(x[key], y[key]) : x[key] === y[key]; });\n}\n//# sourceMappingURL=distinctUntilKeyChanged.js.map","import { ArgumentOutOfRangeError } from '../util/ArgumentOutOfRangeError';\nimport { filter } from './filter';\nimport { throwIfEmpty } from './throwIfEmpty';\nimport { defaultIfEmpty } from './defaultIfEmpty';\nimport { take } from './take';\nexport function elementAt(index, defaultValue) {\n if (index < 0) {\n throw new ArgumentOutOfRangeError();\n }\n var hasDefaultValue = arguments.length >= 2;\n return function (source) { return source.pipe(filter(function (v, i) { return i === index; }), take(1), hasDefaultValue\n ? defaultIfEmpty(defaultValue)\n : throwIfEmpty(function () { return new ArgumentOutOfRangeError(); })); };\n}\n//# sourceMappingURL=elementAt.js.map","import { __read, __spread } from \"tslib\";\nimport { concat } from '../observable/concat';\nimport { of } from '../observable/of';\nexport function endWith() {\n var values = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n values[_i] = arguments[_i];\n }\n return function (source) { return concat(source, of.apply(void 0, __spread(values))); };\n}\n//# sourceMappingURL=endWith.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function every(predicate, thisArg) {\n return operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n if (!predicate.call(thisArg, value, index++, source)) {\n subscriber.next(false);\n subscriber.complete();\n }\n }, undefined, function () {\n subscriber.next(true);\n subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=every.js.map","import { operate } from '../util/lift';\nimport { innerFrom } from '../observable/from';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function exhaust() {\n return operate(function (source, subscriber) {\n var isComplete = false;\n var innerSub = null;\n source.subscribe(new OperatorSubscriber(subscriber, function (inner) {\n if (!innerSub) {\n innerSub = innerFrom(inner).subscribe(new OperatorSubscriber(subscriber, undefined, undefined, function () {\n innerSub = null;\n isComplete && subscriber.complete();\n }));\n }\n }, undefined, function () {\n isComplete = true;\n !innerSub && subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=exhaust.js.map","import { map } from './map';\nimport { innerFrom } from '../observable/from';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function exhaustMap(project, resultSelector) {\n if (resultSelector) {\n return function (source) {\n return source.pipe(exhaustMap(function (a, i) { return innerFrom(project(a, i)).pipe(map(function (b, ii) { return resultSelector(a, b, i, ii); })); }));\n };\n }\n return operate(function (source, subscriber) {\n var index = 0;\n var innerSub = null;\n var isComplete = false;\n source.subscribe(new OperatorSubscriber(subscriber, function (outerValue) {\n if (!innerSub) {\n innerSub = new OperatorSubscriber(subscriber, undefined, undefined, function () {\n innerSub = null;\n isComplete && subscriber.complete();\n });\n innerFrom(project(outerValue, index++)).subscribe(innerSub);\n }\n }, undefined, function () {\n isComplete = true;\n !innerSub && subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=exhaustMap.js.map","import { operate } from '../util/lift';\nimport { mergeInternals } from './mergeInternals';\nexport function expand(project, concurrent, scheduler) {\n if (concurrent === void 0) { concurrent = Infinity; }\n concurrent = (concurrent || 0) < 1 ? Infinity : concurrent;\n return operate(function (source, subscriber) {\n return mergeInternals(source, subscriber, project, concurrent, undefined, true, scheduler);\n });\n}\n//# sourceMappingURL=expand.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function filter(predicate, thisArg) {\n return operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) { return predicate.call(thisArg, value, index++) && subscriber.next(value); }));\n });\n}\n//# sourceMappingURL=filter.js.map","import { operate } from '../util/lift';\nexport function finalize(callback) {\n return operate(function (source, subscriber) {\n source.subscribe(subscriber);\n subscriber.add(callback);\n });\n}\n//# sourceMappingURL=finalize.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function find(predicate, thisArg) {\n return operate(createFind(predicate, thisArg, 'value'));\n}\nexport function createFind(predicate, thisArg, emit) {\n var findIndex = emit === 'index';\n return function (source, subscriber) {\n var index = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var i = index++;\n if (predicate.call(thisArg, value, i, source)) {\n subscriber.next(findIndex ? i : value);\n subscriber.complete();\n }\n }, undefined, function () {\n subscriber.next(findIndex ? -1 : undefined);\n subscriber.complete();\n }));\n };\n}\n//# sourceMappingURL=find.js.map","import { operate } from '../util/lift';\nimport { createFind } from './find';\nexport function findIndex(predicate, thisArg) {\n return operate(createFind(predicate, thisArg, 'index'));\n}\n//# sourceMappingURL=findIndex.js.map","import { EmptyError } from '../util/EmptyError';\nimport { filter } from './filter';\nimport { take } from './take';\nimport { defaultIfEmpty } from './defaultIfEmpty';\nimport { throwIfEmpty } from './throwIfEmpty';\nimport { identity } from '../util/identity';\nexport function first(predicate, defaultValue) {\n var hasDefaultValue = arguments.length >= 2;\n return function (source) {\n return source.pipe(predicate ? filter(function (v, i) { return predicate(v, i, source); }) : identity, take(1), hasDefaultValue ? defaultIfEmpty(defaultValue) : throwIfEmpty(function () { return new EmptyError(); }));\n };\n}\n//# sourceMappingURL=first.js.map","import { __extends } from \"tslib\";\nimport { Observable } from '../Observable';\nimport { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function groupBy(keySelector, elementSelector, durationSelector, subjectSelector) {\n return operate(function (source, subscriber) {\n var groups = new Map();\n var notify = function (cb) {\n groups.forEach(cb);\n cb(subscriber);\n };\n var handleError = function (err) { return notify(function (consumer) { return consumer.error(err); }); };\n var groupBySourceSubscriber = new GroupBySubscriber(subscriber, function (value) {\n try {\n var key_1 = keySelector(value);\n var group_1 = groups.get(key_1);\n if (!group_1) {\n groups.set(key_1, (group_1 = subjectSelector ? subjectSelector() : new Subject()));\n var grouped = createGroupedObservable(key_1, group_1);\n subscriber.next(grouped);\n if (durationSelector) {\n var durationSubscriber_1 = new OperatorSubscriber(group_1, function () {\n group_1.complete();\n durationSubscriber_1 === null || durationSubscriber_1 === void 0 ? void 0 : durationSubscriber_1.unsubscribe();\n }, undefined, undefined, function () { return groups.delete(key_1); });\n groupBySourceSubscriber.add(durationSelector(grouped).subscribe(durationSubscriber_1));\n }\n }\n group_1.next(elementSelector ? elementSelector(value) : value);\n }\n catch (err) {\n handleError(err);\n }\n }, handleError, function () { return notify(function (consumer) { return consumer.complete(); }); }, function () { return groups.clear(); });\n source.subscribe(groupBySourceSubscriber);\n function createGroupedObservable(key, groupSubject) {\n var result = new Observable(function (groupSubscriber) {\n groupBySourceSubscriber.activeGroups++;\n var innerSub = groupSubject.subscribe(groupSubscriber);\n return function () {\n innerSub.unsubscribe();\n --groupBySourceSubscriber.activeGroups === 0 &&\n groupBySourceSubscriber.teardownAttempted &&\n groupBySourceSubscriber.unsubscribe();\n };\n });\n result.key = key;\n return result;\n }\n });\n}\nvar GroupBySubscriber = (function (_super) {\n __extends(GroupBySubscriber, _super);\n function GroupBySubscriber() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.activeGroups = 0;\n _this.teardownAttempted = false;\n return _this;\n }\n GroupBySubscriber.prototype.unsubscribe = function () {\n this.teardownAttempted = true;\n this.activeGroups === 0 && _super.prototype.unsubscribe.call(this);\n };\n return GroupBySubscriber;\n}(OperatorSubscriber));\n//# sourceMappingURL=groupBy.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { noop } from '../util/noop';\nexport function ignoreElements() {\n return operate(function (source, subscriber) {\n source.subscribe(new OperatorSubscriber(subscriber, noop));\n });\n}\n//# sourceMappingURL=ignoreElements.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function isEmpty() {\n return operate(function (source, subscriber) {\n source.subscribe(new OperatorSubscriber(subscriber, function () {\n subscriber.next(false);\n subscriber.complete();\n }, undefined, function () {\n subscriber.next(true);\n subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=isEmpty.js.map","import { identity } from '../util/identity';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nimport { pipe } from '../util/pipe';\nimport { mergeMap } from './mergeMap';\nimport { toArray } from './toArray';\nexport function joinAllInternals(joinFn, project) {\n return pipe(toArray(), mergeMap(function (sources) { return joinFn(sources); }), project ? mapOneOrManyArgs(project) : identity);\n}\n//# sourceMappingURL=joinAllInternals.js.map","import { EmptyError } from '../util/EmptyError';\nimport { filter } from './filter';\nimport { takeLast } from './takeLast';\nimport { throwIfEmpty } from './throwIfEmpty';\nimport { defaultIfEmpty } from './defaultIfEmpty';\nimport { identity } from '../util/identity';\nexport function last(predicate, defaultValue) {\n var hasDefaultValue = arguments.length >= 2;\n return function (source) {\n return source.pipe(predicate ? filter(function (v, i) { return predicate(v, i, source); }) : identity, takeLast(1), hasDefaultValue ? defaultIfEmpty(defaultValue) : throwIfEmpty(function () { return new EmptyError(); }));\n };\n}\n//# sourceMappingURL=last.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function map(project, thisArg) {\n return operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n subscriber.next(project.call(thisArg, value, index++));\n }));\n });\n}\n//# sourceMappingURL=map.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function mapTo(value) {\n return operate(function (source, subscriber) {\n source.subscribe(new OperatorSubscriber(subscriber, function () { return subscriber.next(value); }));\n });\n}\n//# sourceMappingURL=mapTo.js.map","import { Notification } from '../Notification';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function materialize() {\n return operate(function (source, subscriber) {\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n subscriber.next(Notification.createNext(value));\n }, function (err) {\n subscriber.next(Notification.createError(err));\n subscriber.complete();\n }, function () {\n subscriber.next(Notification.createComplete());\n subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=materialize.js.map","import { reduce } from './reduce';\nimport { isFunction } from '../util/isFunction';\nexport function max(comparer) {\n return reduce(isFunction(comparer) ? function (x, y) { return (comparer(x, y) > 0 ? x : y); } : function (x, y) { return (x > y ? x : y); });\n}\n//# sourceMappingURL=max.js.map","import { mergeMap } from './mergeMap';\nimport { identity } from '../util/identity';\nexport function mergeAll(concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n return mergeMap(identity, concurrent);\n}\n//# sourceMappingURL=mergeAll.js.map","import { innerFrom } from '../observable/from';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalTeardown) {\n var buffer = [];\n var active = 0;\n var index = 0;\n var isComplete = false;\n var checkComplete = function () {\n if (isComplete && !buffer.length && !active) {\n subscriber.complete();\n }\n };\n var outerNext = function (value) { return (active < concurrent ? doInnerSub(value) : buffer.push(value)); };\n var doInnerSub = function (value) {\n expand && subscriber.next(value);\n active++;\n innerFrom(project(value, index++)).subscribe(new OperatorSubscriber(subscriber, function (innerValue) {\n onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue);\n if (expand) {\n outerNext(innerValue);\n }\n else {\n subscriber.next(innerValue);\n }\n }, undefined, function () {\n active--;\n var _loop_1 = function () {\n var bufferedValue = buffer.shift();\n innerSubScheduler ? subscriber.add(innerSubScheduler.schedule(function () { return doInnerSub(bufferedValue); })) : doInnerSub(bufferedValue);\n };\n while (buffer.length && active < concurrent) {\n _loop_1();\n }\n checkComplete();\n }));\n };\n source.subscribe(new OperatorSubscriber(subscriber, outerNext, undefined, function () {\n isComplete = true;\n checkComplete();\n }));\n return function () {\n buffer = null;\n additionalTeardown === null || additionalTeardown === void 0 ? void 0 : additionalTeardown();\n };\n}\n//# sourceMappingURL=mergeInternals.js.map","import { map } from './map';\nimport { innerFrom } from '../observable/from';\nimport { operate } from '../util/lift';\nimport { mergeInternals } from './mergeInternals';\nimport { isFunction } from '../util/isFunction';\nexport function mergeMap(project, resultSelector, concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n if (isFunction(resultSelector)) {\n return mergeMap(function (a, i) { return map(function (b, ii) { return resultSelector(a, b, i, ii); })(innerFrom(project(a, i))); }, concurrent);\n }\n else if (typeof resultSelector === 'number') {\n concurrent = resultSelector;\n }\n return operate(function (source, subscriber) { return mergeInternals(source, subscriber, project, concurrent); });\n}\nexport var flatMap = mergeMap;\n//# sourceMappingURL=mergeMap.js.map","import { mergeMap } from './mergeMap';\nimport { isFunction } from '../util/isFunction';\nexport function mergeMapTo(innerObservable, resultSelector, concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n if (isFunction(resultSelector)) {\n return mergeMap(function () { return innerObservable; }, resultSelector, concurrent);\n }\n if (typeof resultSelector === 'number') {\n concurrent = resultSelector;\n }\n return mergeMap(function () { return innerObservable; }, concurrent);\n}\n//# sourceMappingURL=mergeMapTo.js.map","import { operate } from '../util/lift';\nimport { mergeInternals } from './mergeInternals';\nexport function mergeScan(accumulator, seed, concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n return operate(function (source, subscriber) {\n var state = seed;\n return mergeInternals(source, subscriber, function (value, index) { return accumulator(state, value, index); }, concurrent, function (value) {\n state = value;\n }, false, undefined, function () { return (state = null); });\n });\n}\n//# sourceMappingURL=mergeScan.js.map","import { __read, __spread } from \"tslib\";\nimport { operate } from '../util/lift';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { internalFromArray } from '../observable/fromArray';\nimport { mergeAll } from './mergeAll';\nimport { popNumber, popScheduler } from '../util/args';\nexport function merge() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = popScheduler(args);\n var concurrent = popNumber(args, Infinity);\n args = argsOrArgArray(args);\n return operate(function (source, subscriber) {\n mergeAll(concurrent)(internalFromArray(__spread([source], args), scheduler)).subscribe(subscriber);\n });\n}\nexport function mergeWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return merge.apply(void 0, __spread(otherSources));\n}\n//# sourceMappingURL=mergeWith.js.map","import { reduce } from './reduce';\nimport { isFunction } from '../util/isFunction';\nexport function min(comparer) {\n return reduce(isFunction(comparer) ? function (x, y) { return (comparer(x, y) < 0 ? x : y); } : function (x, y) { return (x < y ? x : y); });\n}\n//# sourceMappingURL=min.js.map","import { ConnectableObservable } from '../observable/ConnectableObservable';\nimport { hasLift, operate } from '../util/lift';\nimport { isFunction } from '../util/isFunction';\nexport function multicast(subjectOrSubjectFactory, selector) {\n var subjectFactory = isFunction(subjectOrSubjectFactory) ? subjectOrSubjectFactory : function () { return subjectOrSubjectFactory; };\n if (isFunction(selector)) {\n return operate(function (source, subscriber) {\n var subject = subjectFactory();\n selector(subject).subscribe(subscriber).add(source.subscribe(subject));\n });\n }\n return function (source) {\n var connectable = new ConnectableObservable(source, subjectFactory);\n if (hasLift(source)) {\n connectable.lift = source.lift;\n }\n connectable.source = source;\n connectable.subjectFactory = subjectFactory;\n return connectable;\n };\n}\n//# sourceMappingURL=multicast.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function observeOn(scheduler, delay) {\n if (delay === void 0) { delay = 0; }\n return operate(function (source, subscriber) {\n source.subscribe(new OperatorSubscriber(subscriber, function (value) { return subscriber.add(scheduler.schedule(function () { return subscriber.next(value); }, delay)); }, function (err) { return subscriber.add(scheduler.schedule(function () { return subscriber.error(err); }, delay)); }, function () { return subscriber.add(scheduler.schedule(function () { return subscriber.complete(); }, delay)); }));\n });\n}\n//# sourceMappingURL=observeOn.js.map","import { __read, __spread } from \"tslib\";\nimport { operate } from '../util/lift';\nimport { innerFrom } from '../observable/from';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { noop } from '../util/noop';\nexport function onErrorResumeNext() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n var nextSources = argsOrArgArray(sources);\n return operate(function (source, subscriber) {\n var remaining = __spread([source], nextSources);\n var subscribeNext = function () {\n if (!subscriber.closed) {\n if (remaining.length > 0) {\n var nextSource = void 0;\n try {\n nextSource = innerFrom(remaining.shift());\n }\n catch (err) {\n subscribeNext();\n return;\n }\n var innerSub = new OperatorSubscriber(subscriber, undefined, noop, noop);\n subscriber.add(nextSource.subscribe(innerSub));\n innerSub.add(subscribeNext);\n }\n else {\n subscriber.complete();\n }\n }\n };\n subscribeNext();\n });\n}\n//# sourceMappingURL=onErrorResumeNext.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function pairwise() {\n return operate(function (source, subscriber) {\n var prev;\n var hasPrev = false;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var p = prev;\n prev = value;\n hasPrev && subscriber.next([p, value]);\n hasPrev = true;\n }));\n });\n}\n//# sourceMappingURL=pairwise.js.map","import { not } from '../util/not';\nimport { filter } from './filter';\nexport function partition(predicate, thisArg) {\n return function (source) { return [\n filter(predicate, thisArg)(source),\n filter(not(predicate, thisArg))(source)\n ]; };\n}\n//# sourceMappingURL=partition.js.map","import { map } from './map';\nexport function pluck() {\n var properties = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n properties[_i] = arguments[_i];\n }\n var length = properties.length;\n if (length === 0) {\n throw new Error('list of properties cannot be empty.');\n }\n return map(function (x) {\n var currentProp = x;\n for (var i = 0; i < length; i++) {\n var p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties[i]];\n if (typeof p !== 'undefined') {\n currentProp = p;\n }\n else {\n return undefined;\n }\n }\n return currentProp;\n });\n}\n//# sourceMappingURL=pluck.js.map","import { Subject } from '../Subject';\nimport { multicast } from './multicast';\nexport function publish(selector) {\n return selector ?\n multicast(function () { return new Subject(); }, selector) :\n multicast(new Subject());\n}\n//# sourceMappingURL=publish.js.map","import { BehaviorSubject } from '../BehaviorSubject';\nimport { multicast } from './multicast';\nexport function publishBehavior(value) {\n return function (source) { return multicast(new BehaviorSubject(value))(source); };\n}\n//# sourceMappingURL=publishBehavior.js.map","import { AsyncSubject } from '../AsyncSubject';\nimport { multicast } from './multicast';\nexport function publishLast() {\n return function (source) { return multicast(new AsyncSubject())(source); };\n}\n//# sourceMappingURL=publishLast.js.map","import { ReplaySubject } from '../ReplaySubject';\nimport { multicast } from './multicast';\nimport { isFunction } from '../util/isFunction';\nexport function publishReplay(bufferSize, windowTime, selectorOrScheduler, scheduler) {\n if (selectorOrScheduler && !isFunction(selectorOrScheduler)) {\n scheduler = selectorOrScheduler;\n }\n var selector = isFunction(selectorOrScheduler) ? selectorOrScheduler : undefined;\n var subject = new ReplaySubject(bufferSize, windowTime, scheduler);\n return function (source) { return multicast(function () { return subject; }, selector)(source); };\n}\n//# sourceMappingURL=publishReplay.js.map","import { __read, __spread } from \"tslib\";\nimport { raceInit } from '../observable/race';\nimport { operate } from '../util/lift';\nimport { argsOrArgArray } from \"../util/argsOrArgArray\";\nimport { identity } from '../util/identity';\nexport function race() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return raceWith.apply(void 0, __spread(argsOrArgArray(args)));\n}\nexport function raceWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return !otherSources.length ? identity : operate(function (source, subscriber) {\n raceInit(__spread([source], otherSources))(subscriber);\n });\n}\n//# sourceMappingURL=raceWith.js.map","import { scanInternals } from './scanInternals';\nimport { operate } from '../util/lift';\nexport function reduce(accumulator, seed) {\n return operate(scanInternals(accumulator, seed, arguments.length >= 2, false, true));\n}\n//# sourceMappingURL=reduce.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function refCount() {\n return operate(function (source, subscriber) {\n var connection = null;\n source._refCount++;\n var refCounter = new OperatorSubscriber(subscriber, undefined, undefined, undefined, function () {\n if (!source || source._refCount <= 0 || 0 < --source._refCount) {\n connection = null;\n return;\n }\n var sharedConnection = source._connection;\n var conn = connection;\n connection = null;\n if (sharedConnection && (!conn || sharedConnection === conn)) {\n sharedConnection.unsubscribe();\n }\n subscriber.unsubscribe();\n });\n source.subscribe(refCounter);\n if (!refCounter.closed) {\n connection = source.connect();\n }\n });\n}\n//# sourceMappingURL=refCount.js.map","import { EMPTY } from '../observable/empty';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function repeat(count) {\n if (count === void 0) { count = Infinity; }\n return count <= 0\n ? function () { return EMPTY; }\n : operate(function (source, subscriber) {\n var soFar = 0;\n var innerSub;\n var subscribeForRepeat = function () {\n var syncUnsub = false;\n innerSub = source.subscribe(new OperatorSubscriber(subscriber, undefined, undefined, function () {\n if (++soFar < count) {\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n subscribeForRepeat();\n }\n else {\n syncUnsub = true;\n }\n }\n else {\n subscriber.complete();\n }\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n subscribeForRepeat();\n }\n };\n subscribeForRepeat();\n });\n}\n//# sourceMappingURL=repeat.js.map","import { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function repeatWhen(notifier) {\n return operate(function (source, subscriber) {\n var innerSub;\n var syncResub = false;\n var completions$;\n var isNotifierComplete = false;\n var isMainComplete = false;\n var checkComplete = function () { return isMainComplete && isNotifierComplete && (subscriber.complete(), true); };\n var getCompletionSubject = function () {\n if (!completions$) {\n completions$ = new Subject();\n notifier(completions$).subscribe(new OperatorSubscriber(subscriber, function () {\n if (innerSub) {\n subscribeForRepeatWhen();\n }\n else {\n syncResub = true;\n }\n }, undefined, function () {\n isNotifierComplete = true;\n checkComplete();\n }));\n }\n return completions$;\n };\n var subscribeForRepeatWhen = function () {\n isMainComplete = false;\n innerSub = source.subscribe(new OperatorSubscriber(subscriber, undefined, undefined, function () {\n isMainComplete = true;\n !checkComplete() && getCompletionSubject().next();\n }));\n if (syncResub) {\n innerSub.unsubscribe();\n innerSub = null;\n syncResub = false;\n subscribeForRepeatWhen();\n }\n };\n subscribeForRepeatWhen();\n });\n}\n//# sourceMappingURL=repeatWhen.js.map","import { operate } from '../util/lift';\nimport { EMPTY } from '../observable/empty';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function retry(configOrCount) {\n if (configOrCount === void 0) { configOrCount = Infinity; }\n var config;\n if (configOrCount && typeof configOrCount === 'object') {\n config = configOrCount;\n }\n else {\n config = {\n count: configOrCount,\n };\n }\n var count = config.count, _a = config.resetOnSuccess, resetOnSuccess = _a === void 0 ? false : _a;\n return count <= 0\n ? function () { return EMPTY; }\n : operate(function (source, subscriber) {\n var soFar = 0;\n var innerSub;\n var subscribeForRetry = function () {\n var syncUnsub = false;\n innerSub = source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n if (resetOnSuccess) {\n soFar = 0;\n }\n subscriber.next(value);\n }, function (err) {\n if (soFar++ < count) {\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n subscribeForRetry();\n }\n else {\n syncUnsub = true;\n }\n }\n else {\n subscriber.error(err);\n }\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n subscribeForRetry();\n }\n };\n subscribeForRetry();\n });\n}\n//# sourceMappingURL=retry.js.map","import { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function retryWhen(notifier) {\n return operate(function (source, subscriber) {\n var innerSub;\n var syncResub = false;\n var errors$;\n var subscribeForRetryWhen = function () {\n innerSub = source.subscribe(new OperatorSubscriber(subscriber, undefined, function (err) {\n if (!errors$) {\n errors$ = new Subject();\n notifier(errors$).subscribe(new OperatorSubscriber(subscriber, function () {\n return innerSub ? subscribeForRetryWhen() : (syncResub = true);\n }));\n }\n if (errors$) {\n errors$.next(err);\n }\n }));\n if (syncResub) {\n innerSub.unsubscribe();\n innerSub = null;\n syncResub = false;\n subscribeForRetryWhen();\n }\n };\n subscribeForRetryWhen();\n });\n}\n//# sourceMappingURL=retryWhen.js.map","import { operate } from '../util/lift';\nimport { noop } from '../util/noop';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function sample(notifier) {\n return operate(function (source, subscriber) {\n var hasValue = false;\n var lastValue = null;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n lastValue = value;\n }));\n var emit = function () {\n if (hasValue) {\n hasValue = false;\n var value = lastValue;\n lastValue = null;\n subscriber.next(value);\n }\n };\n notifier.subscribe(new OperatorSubscriber(subscriber, emit, undefined, noop));\n });\n}\n//# sourceMappingURL=sample.js.map","import { asyncScheduler } from '../scheduler/async';\nimport { sample } from './sample';\nimport { interval } from '../observable/interval';\nexport function sampleTime(period, scheduler) {\n if (scheduler === void 0) { scheduler = asyncScheduler; }\n return sample(interval(period, scheduler));\n}\n//# sourceMappingURL=sampleTime.js.map","import { operate } from '../util/lift';\nimport { scanInternals } from './scanInternals';\nexport function scan(accumulator, seed) {\n return operate(scanInternals(accumulator, seed, arguments.length >= 2, true));\n}\n//# sourceMappingURL=scan.js.map","import { OperatorSubscriber } from './OperatorSubscriber';\nexport function scanInternals(accumulator, seed, hasSeed, emitOnNext, emitBeforeComplete) {\n return function (source, subscriber) {\n var hasState = hasSeed;\n var state = seed;\n var index = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var i = index++;\n state = hasState\n ?\n accumulator(state, value, i)\n :\n ((hasState = true), value);\n emitOnNext && subscriber.next(state);\n }, undefined, emitBeforeComplete &&\n (function () {\n hasState && subscriber.next(state);\n subscriber.complete();\n })));\n };\n}\n//# sourceMappingURL=scanInternals.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function sequenceEqual(compareTo, comparator) {\n if (comparator === void 0) { comparator = function (a, b) { return a === b; }; }\n return operate(function (source, subscriber) {\n var aState = createState();\n var bState = createState();\n var emit = function (isEqual) {\n subscriber.next(isEqual);\n subscriber.complete();\n };\n var createSubscriber = function (selfState, otherState) {\n var sequenceEqualSubscriber = new OperatorSubscriber(subscriber, function (a) {\n var buffer = otherState.buffer, complete = otherState.complete;\n if (buffer.length === 0) {\n complete ? emit(false) : selfState.buffer.push(a);\n }\n else {\n !comparator(a, buffer.shift()) && emit(false);\n }\n }, undefined, function () {\n selfState.complete = true;\n var complete = otherState.complete, buffer = otherState.buffer;\n complete && emit(buffer.length === 0);\n sequenceEqualSubscriber === null || sequenceEqualSubscriber === void 0 ? void 0 : sequenceEqualSubscriber.unsubscribe();\n });\n return sequenceEqualSubscriber;\n };\n source.subscribe(createSubscriber(aState, bState));\n compareTo.subscribe(createSubscriber(bState, aState));\n });\n}\nfunction createState() {\n return {\n buffer: [],\n complete: false,\n };\n}\n//# sourceMappingURL=sequenceEqual.js.map","import { multicast } from './multicast';\nimport { refCount } from './refCount';\nimport { Subject } from '../Subject';\nfunction shareSubjectFactory() {\n return new Subject();\n}\nexport function share() {\n return function (source) { return refCount()(multicast(shareSubjectFactory)(source)); };\n}\n//# sourceMappingURL=share.js.map","import { ReplaySubject } from '../ReplaySubject';\nimport { operate } from '../util/lift';\nexport function shareReplay(configOrBufferSize, windowTime, scheduler) {\n var config;\n if (configOrBufferSize && typeof configOrBufferSize === 'object') {\n config = configOrBufferSize;\n }\n else {\n config = {\n bufferSize: configOrBufferSize,\n windowTime: windowTime,\n refCount: false,\n scheduler: scheduler\n };\n }\n return operate(shareReplayOperator(config));\n}\nfunction shareReplayOperator(_a) {\n var _b = _a.bufferSize, bufferSize = _b === void 0 ? Infinity : _b, _c = _a.windowTime, windowTime = _c === void 0 ? Infinity : _c, useRefCount = _a.refCount, scheduler = _a.scheduler;\n var subject;\n var refCount = 0;\n var subscription;\n return function (source, subscriber) {\n refCount++;\n var innerSub;\n if (!subject) {\n subject = new ReplaySubject(bufferSize, windowTime, scheduler);\n innerSub = subject.subscribe(subscriber);\n subscription = source.subscribe({\n next: function (value) { subject.next(value); },\n error: function (err) {\n var dest = subject;\n subscription = undefined;\n subject = undefined;\n dest.error(err);\n },\n complete: function () {\n subscription = undefined;\n subject.complete();\n },\n });\n if (subscription.closed) {\n subscription = undefined;\n }\n }\n else {\n innerSub = subject.subscribe(subscriber);\n }\n subscriber.add(function () {\n refCount--;\n innerSub.unsubscribe();\n if (useRefCount && refCount === 0 && subscription) {\n subscription.unsubscribe();\n subscription = undefined;\n subject = undefined;\n }\n });\n };\n}\n//# sourceMappingURL=shareReplay.js.map","import { EmptyError } from '../util/EmptyError';\nimport { SequenceError } from '../util/SequenceError';\nimport { NotFoundError } from '../util/NotFoundError';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function single(predicate) {\n return operate(function (source, subscriber) {\n var hasValue = false;\n var singleValue;\n var seenValue = false;\n var index = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n seenValue = true;\n if (!predicate || predicate(value, index++, source)) {\n hasValue && subscriber.error(new SequenceError('Too many matching values'));\n hasValue = true;\n singleValue = value;\n }\n }, undefined, function () {\n if (hasValue) {\n subscriber.next(singleValue);\n subscriber.complete();\n }\n else {\n subscriber.error(seenValue ? new NotFoundError('No matching values') : new EmptyError());\n }\n }));\n });\n}\n//# sourceMappingURL=single.js.map","import { filter } from './filter';\nexport function skip(count) {\n return filter(function (_, index) { return count <= index; });\n}\n//# sourceMappingURL=skip.js.map","import { identity } from '../util/identity';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function skipLast(skipCount) {\n return skipCount <= 0\n ? identity\n : operate(function (source, subscriber) {\n var ring = new Array(skipCount);\n var count = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var currentCount = count++;\n if (currentCount < skipCount) {\n ring[currentCount] = value;\n }\n else {\n var index = currentCount % skipCount;\n var oldValue = ring[index];\n ring[index] = value;\n subscriber.next(oldValue);\n }\n }, undefined, undefined, function () {\n return (ring = null);\n }));\n });\n}\n//# sourceMappingURL=skipLast.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/from';\nimport { noop } from '../util/noop';\nexport function skipUntil(notifier) {\n return operate(function (source, subscriber) {\n var taking = false;\n var skipSubscriber = new OperatorSubscriber(subscriber, function () {\n skipSubscriber === null || skipSubscriber === void 0 ? void 0 : skipSubscriber.unsubscribe();\n taking = true;\n }, undefined, noop);\n innerFrom(notifier).subscribe(skipSubscriber);\n source.subscribe(new OperatorSubscriber(subscriber, function (value) { return taking && subscriber.next(value); }));\n });\n}\n//# sourceMappingURL=skipUntil.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function skipWhile(predicate) {\n return operate(function (source, subscriber) {\n var taking = false;\n var index = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) { return (taking || (taking = !predicate(value, index++))) && subscriber.next(value); }));\n });\n}\n//# sourceMappingURL=skipWhile.js.map","import { concat } from '../observable/concat';\nimport { popScheduler } from '../util/args';\nimport { operate } from '../util/lift';\nexport function startWith() {\n var values = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n values[_i] = arguments[_i];\n }\n var scheduler = popScheduler(values);\n return operate(function (source, subscriber) {\n (scheduler ? concat(values, source, scheduler) : concat(values, source)).subscribe(subscriber);\n });\n}\n//# sourceMappingURL=startWith.js.map","import { operate } from '../util/lift';\nexport function subscribeOn(scheduler, delay) {\n if (delay === void 0) { delay = 0; }\n return operate(function (source, subscriber) {\n subscriber.add(scheduler.schedule(function () { return source.subscribe(subscriber); }, delay));\n });\n}\n//# sourceMappingURL=subscribeOn.js.map","import { switchMap } from './switchMap';\nimport { identity } from '../util/identity';\nexport function switchAll() {\n return switchMap(identity);\n}\n//# sourceMappingURL=switchAll.js.map","import { innerFrom } from '../observable/from';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function switchMap(project, resultSelector) {\n return operate(function (source, subscriber) {\n var innerSubscriber = null;\n var index = 0;\n var isComplete = false;\n var checkComplete = function () { return isComplete && !innerSubscriber && subscriber.complete(); };\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n innerSubscriber === null || innerSubscriber === void 0 ? void 0 : innerSubscriber.unsubscribe();\n var innerIndex = 0;\n var outerIndex = index++;\n innerFrom(project(value, outerIndex)).subscribe((innerSubscriber = new OperatorSubscriber(subscriber, function (innerValue) { return subscriber.next(resultSelector ? resultSelector(value, innerValue, outerIndex, innerIndex++) : innerValue); }, undefined, function () {\n innerSubscriber = null;\n checkComplete();\n })));\n }, undefined, function () {\n isComplete = true;\n checkComplete();\n }));\n });\n}\n//# sourceMappingURL=switchMap.js.map","import { switchMap } from './switchMap';\nexport function switchMapTo(innerObservable, resultSelector) {\n return resultSelector ? switchMap(function () { return innerObservable; }, resultSelector) : switchMap(function () { return innerObservable; });\n}\n//# sourceMappingURL=switchMapTo.js.map","import { switchMap } from './switchMap';\nimport { operate } from '../util/lift';\nexport function switchScan(accumulator, seed) {\n return operate(function (source, subscriber) {\n var state = seed;\n switchMap(function (value, index) { return accumulator(state, value, index); }, function (_, innerValue) { return ((state = innerValue), innerValue); })(source).subscribe(subscriber);\n return function () {\n state = null;\n };\n });\n}\n//# sourceMappingURL=switchScan.js.map","import { EMPTY } from '../observable/empty';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function take(count) {\n return count <= 0\n ?\n function () { return EMPTY; }\n : operate(function (source, subscriber) {\n var seen = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n if (++seen <= count) {\n subscriber.next(value);\n if (count <= seen) {\n subscriber.complete();\n }\n }\n }));\n });\n}\n//# sourceMappingURL=take.js.map","import { __values } from \"tslib\";\nimport { EMPTY } from '../observable/empty';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function takeLast(count) {\n return count <= 0\n ? function () { return EMPTY; }\n : operate(function (source, subscriber) {\n var buffer = [];\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n buffer.push(value);\n count < buffer.length && buffer.shift();\n }, undefined, function () {\n var e_1, _a;\n try {\n for (var buffer_1 = __values(buffer), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) {\n var value = buffer_1_1.value;\n subscriber.next(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) _a.call(buffer_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n subscriber.complete();\n }, function () {\n buffer = null;\n }));\n });\n}\n//# sourceMappingURL=takeLast.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/from';\nimport { noop } from '../util/noop';\nexport function takeUntil(notifier) {\n return operate(function (source, subscriber) {\n innerFrom(notifier).subscribe(new OperatorSubscriber(subscriber, function () { return subscriber.complete(); }, undefined, noop));\n !subscriber.closed && source.subscribe(subscriber);\n });\n}\n//# sourceMappingURL=takeUntil.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function takeWhile(predicate, inclusive) {\n if (inclusive === void 0) { inclusive = false; }\n return operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var result = predicate(value, index++);\n (result || inclusive) && subscriber.next(value);\n !result && subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=takeWhile.js.map","import { isFunction } from '../util/isFunction';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { identity } from '../util/identity';\nexport function tap(observerOrNext, error, complete) {\n var tapObserver = isFunction(observerOrNext) || error || complete ? { next: observerOrNext, error: error, complete: complete } : observerOrNext;\n return tapObserver\n ? operate(function (source, subscriber) {\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var _a;\n (_a = tapObserver.next) === null || _a === void 0 ? void 0 : _a.call(tapObserver, value);\n subscriber.next(value);\n }, function (err) {\n var _a;\n (_a = tapObserver.error) === null || _a === void 0 ? void 0 : _a.call(tapObserver, err);\n subscriber.error(err);\n }, function () {\n var _a;\n (_a = tapObserver.complete) === null || _a === void 0 ? void 0 : _a.call(tapObserver);\n subscriber.complete();\n }));\n })\n :\n identity;\n}\n//# sourceMappingURL=tap.js.map","import { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/from';\nexport var defaultThrottleConfig = {\n leading: true,\n trailing: false,\n};\nexport function throttle(durationSelector, _a) {\n var _b = _a === void 0 ? defaultThrottleConfig : _a, leading = _b.leading, trailing = _b.trailing;\n return operate(function (source, subscriber) {\n var hasValue = false;\n var sendValue = null;\n var throttled = null;\n var isComplete = false;\n var endThrottling = function () {\n throttled === null || throttled === void 0 ? void 0 : throttled.unsubscribe();\n throttled = null;\n if (trailing) {\n send();\n isComplete && subscriber.complete();\n }\n };\n var cleanupThrottling = function () {\n throttled = null;\n isComplete && subscriber.complete();\n };\n var startThrottle = function (value) {\n return (throttled = innerFrom(durationSelector(value)).subscribe(new OperatorSubscriber(subscriber, endThrottling, undefined, cleanupThrottling)));\n };\n var send = function () {\n if (hasValue) {\n subscriber.next(sendValue);\n !isComplete && startThrottle(sendValue);\n }\n hasValue = false;\n sendValue = null;\n };\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n sendValue = value;\n !(throttled && !throttled.closed) && (leading ? send() : startThrottle(value));\n }, undefined, function () {\n isComplete = true;\n !(trailing && hasValue && throttled && !throttled.closed) && subscriber.complete();\n }));\n });\n}\n//# sourceMappingURL=throttle.js.map","import { asyncScheduler } from '../scheduler/async';\nimport { defaultThrottleConfig, throttle } from './throttle';\nimport { timer } from '../observable/timer';\nexport function throttleTime(duration, scheduler, config) {\n if (scheduler === void 0) { scheduler = asyncScheduler; }\n if (config === void 0) { config = defaultThrottleConfig; }\n var duration$ = timer(duration, scheduler);\n return throttle(function () { return duration$; }, config);\n}\n//# sourceMappingURL=throttleTime.js.map","import { EmptyError } from '../util/EmptyError';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function throwIfEmpty(errorFactory) {\n if (errorFactory === void 0) { errorFactory = defaultErrorFactory; }\n return operate(function (source, subscriber) {\n var hasValue = false;\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n subscriber.next(value);\n }, undefined, function () { return (hasValue ? subscriber.complete() : subscriber.error(errorFactory())); }));\n });\n}\nfunction defaultErrorFactory() {\n return new EmptyError();\n}\n//# sourceMappingURL=throwIfEmpty.js.map","import { async } from '../scheduler/async';\nimport { scan } from './scan';\nimport { defer } from '../observable/defer';\nimport { map } from './map';\nexport function timeInterval(scheduler) {\n if (scheduler === void 0) { scheduler = async; }\n return function (source) { return defer(function () {\n return source.pipe(scan(function (_a, value) {\n var current = _a.current;\n return ({ value: value, current: scheduler.now(), last: current });\n }, { current: scheduler.now(), value: undefined, last: undefined }), map(function (_a) {\n var current = _a.current, last = _a.last, value = _a.value;\n return new TimeInterval(value, current - last);\n }));\n }); };\n}\nvar TimeInterval = (function () {\n function TimeInterval(value, interval) {\n this.value = value;\n this.interval = interval;\n }\n return TimeInterval;\n}());\nexport { TimeInterval };\n//# sourceMappingURL=timeInterval.js.map","import { asyncScheduler } from '../scheduler/async';\nimport { isValidDate } from '../util/isDate';\nimport { operate } from '../util/lift';\nimport { innerFrom } from '../observable/from';\nimport { createErrorClass } from '../util/createErrorClass';\nimport { caughtSchedule } from '../util/caughtSchedule';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport var TimeoutError = createErrorClass(function (_super) {\n return function TimeoutErrorImpl(info) {\n if (info === void 0) { info = null; }\n _super(this);\n this.message = 'Timeout has occurred';\n this.name = 'TimeoutError';\n this.info = info;\n };\n});\nexport function timeout(config, schedulerArg) {\n var _a = (isValidDate(config)\n ? { first: config }\n : typeof config === 'number'\n ? { each: config }\n : config), first = _a.first, each = _a.each, _b = _a.with, _with = _b === void 0 ? timeoutErrorFactory : _b, _c = _a.scheduler, scheduler = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : asyncScheduler : _c, _d = _a.meta, meta = _d === void 0 ? null : _d;\n if (first == null && each == null) {\n throw new TypeError('No timeout provided.');\n }\n return operate(function (source, subscriber) {\n var originalSourceSubscription;\n var timerSubscription;\n var lastValue = null;\n var seen = 0;\n var startTimer = function (delay) {\n timerSubscription = caughtSchedule(subscriber, scheduler, function () {\n originalSourceSubscription.unsubscribe();\n innerFrom(_with({\n meta: meta,\n lastValue: lastValue,\n seen: seen,\n })).subscribe(subscriber);\n }, delay);\n };\n originalSourceSubscription = source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe();\n seen++;\n subscriber.next((lastValue = value));\n each > 0 && startTimer(each);\n }, undefined, undefined, function () {\n if (!(timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.closed)) {\n timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe();\n }\n lastValue = null;\n }));\n startTimer(first != null ? (typeof first === 'number' ? first : +first - scheduler.now()) : each);\n });\n}\nfunction timeoutErrorFactory(info) {\n throw new TimeoutError(info);\n}\n//# sourceMappingURL=timeout.js.map","import { async } from '../scheduler/async';\nimport { isValidDate } from '../util/isDate';\nimport { timeout } from './timeout';\nexport function timeoutWith(due, withObservable, scheduler) {\n var first;\n var each;\n var _with;\n scheduler = scheduler !== null && scheduler !== void 0 ? scheduler : async;\n if (isValidDate(due)) {\n first = due;\n }\n else if (typeof due === 'number') {\n each = due;\n }\n if (withObservable) {\n _with = function () { return withObservable; };\n }\n else {\n throw new TypeError('No observable provided to switch to');\n }\n if (first == null && each == null) {\n throw new TypeError('No timeout provided.');\n }\n return timeout({\n first: first,\n each: each,\n scheduler: scheduler,\n with: _with,\n });\n}\n//# sourceMappingURL=timeoutWith.js.map","import { dateTimestampProvider } from '../scheduler/dateTimestampProvider';\nimport { map } from './map';\nexport function timestamp(timestampProvider) {\n if (timestampProvider === void 0) { timestampProvider = dateTimestampProvider; }\n return map(function (value) { return ({ value: value, timestamp: timestampProvider.now() }); });\n}\n//# sourceMappingURL=timestamp.js.map","import { reduce } from './reduce';\nimport { operate } from '../util/lift';\nvar arrReducer = function (arr, value) { return (arr.push(value), arr); };\nexport function toArray() {\n return operate(function (source, subscriber) {\n reduce(arrReducer, [])(source).subscribe(subscriber);\n });\n}\n//# sourceMappingURL=toArray.js.map","import { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function window(windowBoundaries) {\n return operate(function (source, subscriber) {\n var windowSubject = new Subject();\n subscriber.next(windowSubject.asObservable());\n var windowSubscribe = function (sourceOrNotifier, next) {\n return sourceOrNotifier.subscribe(new OperatorSubscriber(subscriber, next, function (err) {\n windowSubject.error(err);\n subscriber.error(err);\n }, function () {\n windowSubject.complete();\n subscriber.complete();\n }));\n };\n windowSubscribe(source, function (value) { return windowSubject.next(value); });\n windowSubscribe(windowBoundaries, function () {\n windowSubject.complete();\n subscriber.next((windowSubject = new Subject()));\n });\n return function () {\n windowSubject.unsubscribe();\n windowSubject = null;\n };\n });\n}\n//# sourceMappingURL=window.js.map","import { __values } from \"tslib\";\nimport { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nexport function windowCount(windowSize, startWindowEvery) {\n if (startWindowEvery === void 0) { startWindowEvery = 0; }\n var startEvery = startWindowEvery > 0 ? startWindowEvery : windowSize;\n return operate(function (source, subscriber) {\n var windows = [new Subject()];\n var starts = [];\n var count = 0;\n subscriber.next(windows[0].asObservable());\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var e_1, _a;\n try {\n for (var windows_1 = __values(windows), windows_1_1 = windows_1.next(); !windows_1_1.done; windows_1_1 = windows_1.next()) {\n var window_1 = windows_1_1.value;\n window_1.next(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (windows_1_1 && !windows_1_1.done && (_a = windows_1.return)) _a.call(windows_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n var c = count - windowSize + 1;\n if (c >= 0 && c % startEvery === 0) {\n windows.shift().complete();\n }\n if (++count % startEvery === 0) {\n var window_2 = new Subject();\n windows.push(window_2);\n subscriber.next(window_2.asObservable());\n }\n }, function (err) {\n while (windows.length > 0) {\n windows.shift().error(err);\n }\n subscriber.error(err);\n }, function () {\n while (windows.length > 0) {\n windows.shift().complete();\n }\n subscriber.complete();\n }, function () {\n starts = null;\n windows = null;\n }));\n });\n}\n//# sourceMappingURL=windowCount.js.map","import { Subject } from '../Subject';\nimport { asyncScheduler } from '../scheduler/async';\nimport { Subscription } from '../Subscription';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { arrRemove } from '../util/arrRemove';\nimport { popScheduler } from '../util/args';\nexport function windowTime(windowTimeSpan) {\n var _a, _b;\n var otherArgs = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n otherArgs[_i - 1] = arguments[_i];\n }\n var scheduler = (_a = popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : asyncScheduler;\n var windowCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null;\n var maxWindowSize = otherArgs[1] || Infinity;\n return operate(function (source, subscriber) {\n var windowRecords = [];\n var restartOnClose = false;\n var closeWindow = function (record) {\n var window = record.window, subs = record.subs;\n window.complete();\n subs.unsubscribe();\n arrRemove(windowRecords, record);\n restartOnClose && startWindow();\n };\n var startWindow = function () {\n if (windowRecords) {\n var subs = new Subscription();\n subscriber.add(subs);\n var window_1 = new Subject();\n var record_1 = {\n window: window_1,\n subs: subs,\n seen: 0,\n };\n windowRecords.push(record_1);\n subscriber.next(window_1.asObservable());\n subs.add(scheduler.schedule(function () { return closeWindow(record_1); }, windowTimeSpan));\n }\n };\n windowCreationInterval !== null && windowCreationInterval >= 0\n ?\n subscriber.add(scheduler.schedule(function () {\n startWindow();\n !this.closed && subscriber.add(this.schedule(null, windowCreationInterval));\n }, windowCreationInterval))\n : (restartOnClose = true);\n startWindow();\n var loop = function (cb) { return windowRecords.slice().forEach(cb); };\n var terminate = function (cb) {\n loop(function (_a) {\n var window = _a.window;\n return cb(window);\n });\n cb(subscriber);\n subscriber.unsubscribe();\n };\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n loop(function (record) {\n record.window.next(value);\n maxWindowSize <= ++record.seen && closeWindow(record);\n });\n }, function (err) { return terminate(function (consumer) { return consumer.error(err); }); }, function () { return terminate(function (consumer) { return consumer.complete(); }); }));\n return function () {\n windowRecords = null;\n };\n });\n}\n//# sourceMappingURL=windowTime.js.map","import { __values } from \"tslib\";\nimport { Subject } from '../Subject';\nimport { Subscription } from '../Subscription';\nimport { operate } from '../util/lift';\nimport { innerFrom } from '../observable/from';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { noop } from '../util/noop';\nimport { arrRemove } from '../util/arrRemove';\nexport function windowToggle(openings, closingSelector) {\n return operate(function (source, subscriber) {\n var windows = [];\n var handleError = function (err) {\n while (0 < windows.length) {\n windows.shift().error(err);\n }\n subscriber.error(err);\n };\n innerFrom(openings).subscribe(new OperatorSubscriber(subscriber, function (openValue) {\n var window = new Subject();\n windows.push(window);\n var closingSubscription = new Subscription();\n var closeWindow = function () {\n arrRemove(windows, window);\n window.complete();\n closingSubscription.unsubscribe();\n };\n var closingNotifier;\n try {\n closingNotifier = innerFrom(closingSelector(openValue));\n }\n catch (err) {\n handleError(err);\n return;\n }\n subscriber.next(window.asObservable());\n closingSubscription.add(closingNotifier.subscribe(new OperatorSubscriber(subscriber, closeWindow, handleError, noop)));\n }, undefined, noop));\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n var e_1, _a;\n var windowsCopy = windows.slice();\n try {\n for (var windowsCopy_1 = __values(windowsCopy), windowsCopy_1_1 = windowsCopy_1.next(); !windowsCopy_1_1.done; windowsCopy_1_1 = windowsCopy_1.next()) {\n var window_1 = windowsCopy_1_1.value;\n window_1.next(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (windowsCopy_1_1 && !windowsCopy_1_1.done && (_a = windowsCopy_1.return)) _a.call(windowsCopy_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }, handleError, function () {\n while (0 < windows.length) {\n windows.shift().complete();\n }\n subscriber.complete();\n }, function () {\n while (0 < windows.length) {\n windows.shift().unsubscribe();\n }\n }));\n });\n}\n//# sourceMappingURL=windowToggle.js.map","import { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/from';\nexport function windowWhen(closingSelector) {\n return operate(function (source, subscriber) {\n var window;\n var closingSubscriber;\n var handleError = function (err) {\n window.error(err);\n subscriber.error(err);\n };\n var openWindow = function () {\n closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();\n window === null || window === void 0 ? void 0 : window.complete();\n window = new Subject();\n subscriber.next(window.asObservable());\n var closingNotifier;\n try {\n closingNotifier = innerFrom(closingSelector());\n }\n catch (err) {\n handleError(err);\n return;\n }\n closingNotifier.subscribe((closingSubscriber = new OperatorSubscriber(subscriber, openWindow, handleError, openWindow)));\n };\n openWindow();\n source.subscribe(new OperatorSubscriber(subscriber, function (value) { return window.next(value); }, handleError, function () {\n window.complete();\n subscriber.complete();\n }, function () {\n closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();\n window = null;\n }));\n });\n}\n//# sourceMappingURL=windowWhen.js.map","import { __read, __spread } from \"tslib\";\nimport { operate } from '../util/lift';\nimport { OperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/from';\nimport { identity } from '../util/identity';\nimport { noop } from '../util/noop';\nimport { popResultSelector } from '../util/args';\nexport function withLatestFrom() {\n var inputs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n inputs[_i] = arguments[_i];\n }\n var project = popResultSelector(inputs);\n return operate(function (source, subscriber) {\n var len = inputs.length;\n var otherValues = new Array(len);\n var hasValue = inputs.map(function () { return false; });\n var ready = false;\n var _loop_1 = function (i) {\n innerFrom(inputs[i]).subscribe(new OperatorSubscriber(subscriber, function (value) {\n otherValues[i] = value;\n if (!ready && !hasValue[i]) {\n hasValue[i] = true;\n (ready = hasValue.every(identity)) && (hasValue = null);\n }\n }, undefined, noop));\n };\n for (var i = 0; i < len; i++) {\n _loop_1(i);\n }\n source.subscribe(new OperatorSubscriber(subscriber, function (value) {\n if (ready) {\n var values = __spread([value], otherValues);\n subscriber.next(project ? project.apply(void 0, __spread(values)) : values);\n }\n }));\n });\n}\n//# sourceMappingURL=withLatestFrom.js.map","import { zip } from '../observable/zip';\nimport { joinAllInternals } from './joinAllInternals';\nexport function zipAll(project) {\n return joinAllInternals(zip, project);\n}\n//# sourceMappingURL=zipAll.js.map","import { __read, __spread } from \"tslib\";\nimport { zip as zipStatic } from '../observable/zip';\nimport { operate } from '../util/lift';\nexport function zip() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n return operate(function (source, subscriber) {\n zipStatic.apply(void 0, __spread([source], sources)).subscribe(subscriber);\n });\n}\nexport function zipWith() {\n var otherInputs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherInputs[_i] = arguments[_i];\n }\n return zip.apply(void 0, __spread(otherInputs));\n}\n//# sourceMappingURL=zipWith.js.map","import { Observable } from '../Observable';\nexport function scheduleArray(input, scheduler) {\n return new Observable(function (subscriber) {\n var i = 0;\n return scheduler.schedule(function () {\n if (i === input.length) {\n subscriber.complete();\n }\n else {\n subscriber.next(input[i++]);\n if (!subscriber.closed) {\n this.schedule();\n }\n }\n });\n });\n}\n//# sourceMappingURL=scheduleArray.js.map","import { Observable } from '../Observable';\nimport { Subscription } from '../Subscription';\nexport function scheduleAsyncIterable(input, scheduler) {\n if (!input) {\n throw new Error('Iterable cannot be null');\n }\n return new Observable(function (subscriber) {\n var sub = new Subscription();\n sub.add(scheduler.schedule(function () {\n var iterator = input[Symbol.asyncIterator]();\n sub.add(scheduler.schedule(function () {\n var _this = this;\n iterator.next().then(function (result) {\n if (result.done) {\n subscriber.complete();\n }\n else {\n subscriber.next(result.value);\n _this.schedule();\n }\n });\n }));\n }));\n return sub;\n });\n}\n//# sourceMappingURL=scheduleAsyncIterable.js.map","import { Observable } from '../Observable';\nimport { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from '../util/isFunction';\nimport { caughtSchedule } from '../util/caughtSchedule';\nexport function scheduleIterable(input, scheduler) {\n return new Observable(function (subscriber) {\n var iterator;\n subscriber.add(scheduler.schedule(function () {\n iterator = input[Symbol_iterator]();\n caughtSchedule(subscriber, scheduler, function () {\n var _a = iterator.next(), value = _a.value, done = _a.done;\n if (done) {\n subscriber.complete();\n }\n else {\n subscriber.next(value);\n this.schedule();\n }\n });\n }));\n return function () { return isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return(); };\n });\n}\n//# sourceMappingURL=scheduleIterable.js.map","import { Observable } from '../Observable';\nimport { Subscription } from '../Subscription';\nimport { observable as Symbol_observable } from '../symbol/observable';\nexport function scheduleObservable(input, scheduler) {\n return new Observable(function (subscriber) {\n var sub = new Subscription();\n sub.add(scheduler.schedule(function () {\n var observable = input[Symbol_observable]();\n sub.add(observable.subscribe({\n next: function (value) { sub.add(scheduler.schedule(function () { return subscriber.next(value); })); },\n error: function (err) { sub.add(scheduler.schedule(function () { return subscriber.error(err); })); },\n complete: function () { sub.add(scheduler.schedule(function () { return subscriber.complete(); })); },\n }));\n }));\n return sub;\n });\n}\n//# sourceMappingURL=scheduleObservable.js.map","import { Observable } from '../Observable';\nexport function schedulePromise(input, scheduler) {\n return new Observable(function (subscriber) {\n return scheduler.schedule(function () {\n return input.then(function (value) {\n subscriber.add(scheduler.schedule(function () {\n subscriber.next(value);\n subscriber.add(scheduler.schedule(function () { return subscriber.complete(); }));\n }));\n }, function (err) {\n subscriber.add(scheduler.schedule(function () { return subscriber.error(err); }));\n });\n });\n });\n}\n//# sourceMappingURL=schedulePromise.js.map","import { scheduleObservable } from './scheduleObservable';\nimport { schedulePromise } from './schedulePromise';\nimport { scheduleArray } from './scheduleArray';\nimport { scheduleIterable } from './scheduleIterable';\nimport { isInteropObservable } from '../util/isInteropObservable';\nimport { isPromise } from '../util/isPromise';\nimport { isArrayLike } from '../util/isArrayLike';\nimport { isIterable } from '../util/isIterable';\nimport { scheduleAsyncIterable } from './scheduleAsyncIterable';\nimport { isAsyncIterable } from '../util/isAsyncIterable';\nimport { createInvalidObservableTypeError } from '../util/throwUnobservableError';\nexport function scheduled(input, scheduler) {\n if (input != null) {\n if (isInteropObservable(input)) {\n return scheduleObservable(input, scheduler);\n }\n if (isArrayLike(input)) {\n return scheduleArray(input, scheduler);\n }\n if (isPromise(input)) {\n return schedulePromise(input, scheduler);\n }\n if (isAsyncIterable(input)) {\n return scheduleAsyncIterable(input, scheduler);\n }\n if (isIterable(input)) {\n return scheduleIterable(input, scheduler);\n }\n }\n throw createInvalidObservableTypeError(input);\n}\n//# sourceMappingURL=scheduled.js.map","import { __extends } from \"tslib\";\nimport { Subscription } from '../Subscription';\nvar Action = (function (_super) {\n __extends(Action, _super);\n function Action(scheduler, work) {\n return _super.call(this) || this;\n }\n Action.prototype.schedule = function (state, delay) {\n if (delay === void 0) { delay = 0; }\n return this;\n };\n return Action;\n}(Subscription));\nexport { Action };\n//# sourceMappingURL=Action.js.map","import { __extends } from \"tslib\";\nimport { AsyncAction } from './AsyncAction';\nimport { animationFrameProvider } from './animationFrameProvider';\nvar AnimationFrameAction = (function (_super) {\n __extends(AnimationFrameAction, _super);\n function AnimationFrameAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n return _this;\n }\n AnimationFrameAction.prototype.requestAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay !== null && delay > 0) {\n return _super.prototype.requestAsyncId.call(this, scheduler, id, delay);\n }\n scheduler.actions.push(this);\n return scheduler.scheduled || (scheduler.scheduled = animationFrameProvider.requestAnimationFrame(function () { return scheduler.flush(undefined); }));\n };\n AnimationFrameAction.prototype.recycleAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if ((delay != null && delay > 0) || (delay == null && this.delay > 0)) {\n return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay);\n }\n if (scheduler.actions.length === 0) {\n animationFrameProvider.cancelAnimationFrame(id);\n scheduler.scheduled = undefined;\n }\n return undefined;\n };\n return AnimationFrameAction;\n}(AsyncAction));\nexport { AnimationFrameAction };\n//# sourceMappingURL=AnimationFrameAction.js.map","import { __extends } from \"tslib\";\nimport { AsyncScheduler } from './AsyncScheduler';\nvar AnimationFrameScheduler = (function (_super) {\n __extends(AnimationFrameScheduler, _super);\n function AnimationFrameScheduler() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AnimationFrameScheduler.prototype.flush = function (action) {\n this.active = true;\n this.scheduled = undefined;\n var actions = this.actions;\n var error;\n var index = -1;\n action = action || actions.shift();\n var count = actions.length;\n do {\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n } while (++index < count && (action = actions.shift()));\n this.active = false;\n if (error) {\n while (++index < count && (action = actions.shift())) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n return AnimationFrameScheduler;\n}(AsyncScheduler));\nexport { AnimationFrameScheduler };\n//# sourceMappingURL=AnimationFrameScheduler.js.map","import { __extends } from \"tslib\";\nimport { AsyncAction } from './AsyncAction';\nimport { immediateProvider } from './immediateProvider';\nvar AsapAction = (function (_super) {\n __extends(AsapAction, _super);\n function AsapAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n return _this;\n }\n AsapAction.prototype.requestAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay !== null && delay > 0) {\n return _super.prototype.requestAsyncId.call(this, scheduler, id, delay);\n }\n scheduler.actions.push(this);\n return scheduler.scheduled || (scheduler.scheduled = immediateProvider.setImmediate(scheduler.flush.bind(scheduler, undefined)));\n };\n AsapAction.prototype.recycleAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if ((delay != null && delay > 0) || (delay == null && this.delay > 0)) {\n return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay);\n }\n if (scheduler.actions.length === 0) {\n immediateProvider.clearImmediate(id);\n scheduler.scheduled = undefined;\n }\n return undefined;\n };\n return AsapAction;\n}(AsyncAction));\nexport { AsapAction };\n//# sourceMappingURL=AsapAction.js.map","import { __extends } from \"tslib\";\nimport { AsyncScheduler } from './AsyncScheduler';\nvar AsapScheduler = (function (_super) {\n __extends(AsapScheduler, _super);\n function AsapScheduler() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AsapScheduler.prototype.flush = function (action) {\n this.active = true;\n this.scheduled = undefined;\n var actions = this.actions;\n var error;\n var index = -1;\n action = action || actions.shift();\n var count = actions.length;\n do {\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n } while (++index < count && (action = actions.shift()));\n this.active = false;\n if (error) {\n while (++index < count && (action = actions.shift())) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n return AsapScheduler;\n}(AsyncScheduler));\nexport { AsapScheduler };\n//# sourceMappingURL=AsapScheduler.js.map","import { __extends } from \"tslib\";\nimport { Action } from './Action';\nimport { intervalProvider } from './intervalProvider';\nimport { arrRemove } from '../util/arrRemove';\nvar AsyncAction = (function (_super) {\n __extends(AsyncAction, _super);\n function AsyncAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n _this.pending = false;\n return _this;\n }\n AsyncAction.prototype.schedule = function (state, delay) {\n if (delay === void 0) { delay = 0; }\n if (this.closed) {\n return this;\n }\n this.state = state;\n var id = this.id;\n var scheduler = this.scheduler;\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n this.pending = true;\n this.delay = delay;\n this.id = this.id || this.requestAsyncId(scheduler, this.id, delay);\n return this;\n };\n AsyncAction.prototype.requestAsyncId = function (scheduler, _id, delay) {\n if (delay === void 0) { delay = 0; }\n return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);\n };\n AsyncAction.prototype.recycleAsyncId = function (_scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay != null && this.delay === delay && this.pending === false) {\n return id;\n }\n intervalProvider.clearInterval(id);\n return undefined;\n };\n AsyncAction.prototype.execute = function (state, delay) {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n this.pending = false;\n var error = this._execute(state, delay);\n if (error) {\n return error;\n }\n else if (this.pending === false && this.id != null) {\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n };\n AsyncAction.prototype._execute = function (state, _delay) {\n var errored = false;\n var errorValue;\n try {\n this.work(state);\n }\n catch (e) {\n errored = true;\n errorValue = (!!e && e) || new Error(e);\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n };\n AsyncAction.prototype.unsubscribe = function () {\n if (!this.closed) {\n var _a = this, id = _a.id, scheduler = _a.scheduler;\n var actions = scheduler.actions;\n this.work = this.state = this.scheduler = null;\n this.pending = false;\n arrRemove(actions, this);\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n this.delay = null;\n _super.prototype.unsubscribe.call(this);\n }\n };\n return AsyncAction;\n}(Action));\nexport { AsyncAction };\n//# sourceMappingURL=AsyncAction.js.map","import { __extends } from \"tslib\";\nimport { Scheduler } from '../Scheduler';\nvar AsyncScheduler = (function (_super) {\n __extends(AsyncScheduler, _super);\n function AsyncScheduler(SchedulerAction, now) {\n if (now === void 0) { now = Scheduler.now; }\n var _this = _super.call(this, SchedulerAction, now) || this;\n _this.actions = [];\n _this.active = false;\n _this.scheduled = undefined;\n return _this;\n }\n AsyncScheduler.prototype.flush = function (action) {\n var actions = this.actions;\n if (this.active) {\n actions.push(action);\n return;\n }\n var error;\n this.active = true;\n do {\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n } while (action = actions.shift());\n this.active = false;\n if (error) {\n while (action = actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n return AsyncScheduler;\n}(Scheduler));\nexport { AsyncScheduler };\n//# sourceMappingURL=AsyncScheduler.js.map","import { __extends } from \"tslib\";\nimport { AsyncAction } from './AsyncAction';\nvar QueueAction = (function (_super) {\n __extends(QueueAction, _super);\n function QueueAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n return _this;\n }\n QueueAction.prototype.schedule = function (state, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay > 0) {\n return _super.prototype.schedule.call(this, state, delay);\n }\n this.delay = delay;\n this.state = state;\n this.scheduler.flush(this);\n return this;\n };\n QueueAction.prototype.execute = function (state, delay) {\n return (delay > 0 || this.closed) ?\n _super.prototype.execute.call(this, state, delay) :\n this._execute(state, delay);\n };\n QueueAction.prototype.requestAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if ((delay != null && delay > 0) || (delay == null && this.delay > 0)) {\n return _super.prototype.requestAsyncId.call(this, scheduler, id, delay);\n }\n return scheduler.flush(this);\n };\n return QueueAction;\n}(AsyncAction));\nexport { QueueAction };\n//# sourceMappingURL=QueueAction.js.map","import { __extends } from \"tslib\";\nimport { AsyncScheduler } from './AsyncScheduler';\nvar QueueScheduler = (function (_super) {\n __extends(QueueScheduler, _super);\n function QueueScheduler() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return QueueScheduler;\n}(AsyncScheduler));\nexport { QueueScheduler };\n//# sourceMappingURL=QueueScheduler.js.map","import { __extends } from \"tslib\";\nimport { AsyncAction } from './AsyncAction';\nimport { Subscription } from '../Subscription';\nimport { AsyncScheduler } from './AsyncScheduler';\nvar VirtualTimeScheduler = (function (_super) {\n __extends(VirtualTimeScheduler, _super);\n function VirtualTimeScheduler(schedulerActionCtor, maxFrames) {\n if (schedulerActionCtor === void 0) { schedulerActionCtor = VirtualAction; }\n if (maxFrames === void 0) { maxFrames = Infinity; }\n var _this = _super.call(this, schedulerActionCtor, function () { return _this.frame; }) || this;\n _this.maxFrames = maxFrames;\n _this.frame = 0;\n _this.index = -1;\n return _this;\n }\n VirtualTimeScheduler.prototype.flush = function () {\n var _a = this, actions = _a.actions, maxFrames = _a.maxFrames;\n var error;\n var action;\n while ((action = actions[0]) && action.delay <= maxFrames) {\n actions.shift();\n this.frame = action.delay;\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n }\n if (error) {\n while (action = actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n VirtualTimeScheduler.frameTimeFactor = 10;\n return VirtualTimeScheduler;\n}(AsyncScheduler));\nexport { VirtualTimeScheduler };\nvar VirtualAction = (function (_super) {\n __extends(VirtualAction, _super);\n function VirtualAction(scheduler, work, index) {\n if (index === void 0) { index = scheduler.index += 1; }\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n _this.index = index;\n _this.active = true;\n _this.index = scheduler.index = index;\n return _this;\n }\n VirtualAction.prototype.schedule = function (state, delay) {\n if (delay === void 0) { delay = 0; }\n if (Number.isFinite(delay)) {\n if (!this.id) {\n return _super.prototype.schedule.call(this, state, delay);\n }\n this.active = false;\n var action = new VirtualAction(this.scheduler, this.work);\n this.add(action);\n return action.schedule(state, delay);\n }\n else {\n return Subscription.EMPTY;\n }\n };\n VirtualAction.prototype.requestAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n this.delay = scheduler.frame + delay;\n var actions = scheduler.actions;\n actions.push(this);\n actions.sort(VirtualAction.sortActions);\n return true;\n };\n VirtualAction.prototype.recycleAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n return undefined;\n };\n VirtualAction.prototype._execute = function (state, delay) {\n if (this.active === true) {\n return _super.prototype._execute.call(this, state, delay);\n }\n };\n VirtualAction.sortActions = function (a, b) {\n if (a.delay === b.delay) {\n if (a.index === b.index) {\n return 0;\n }\n else if (a.index > b.index) {\n return 1;\n }\n else {\n return -1;\n }\n }\n else if (a.delay > b.delay) {\n return 1;\n }\n else {\n return -1;\n }\n };\n return VirtualAction;\n}(AsyncAction));\nexport { VirtualAction };\n//# sourceMappingURL=VirtualTimeScheduler.js.map","import { AnimationFrameAction } from './AnimationFrameAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\nexport var animationFrameScheduler = new AnimationFrameScheduler(AnimationFrameAction);\nexport var animationFrame = animationFrameScheduler;\n//# sourceMappingURL=animationFrame.js.map","import { __read, __spread } from \"tslib\";\nimport { Subscription } from '../Subscription';\nexport var animationFrameProvider = {\n schedule: function (callback) {\n var request = requestAnimationFrame;\n var cancel = cancelAnimationFrame;\n var delegate = animationFrameProvider.delegate;\n if (delegate) {\n request = delegate.requestAnimationFrame;\n cancel = delegate.cancelAnimationFrame;\n }\n var handle = request(function (timestamp) {\n cancel = undefined;\n callback(timestamp);\n });\n return new Subscription(function () { return cancel === null || cancel === void 0 ? void 0 : cancel(handle); });\n },\n requestAnimationFrame: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var delegate = animationFrameProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.requestAnimationFrame) || requestAnimationFrame).apply(void 0, __spread(args));\n },\n cancelAnimationFrame: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var delegate = animationFrameProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.cancelAnimationFrame) || cancelAnimationFrame).apply(void 0, __spread(args));\n },\n delegate: undefined,\n};\n//# sourceMappingURL=animationFrameProvider.js.map","import { AsapAction } from './AsapAction';\nimport { AsapScheduler } from './AsapScheduler';\nexport var asapScheduler = new AsapScheduler(AsapAction);\nexport var asap = asapScheduler;\n//# sourceMappingURL=asap.js.map","import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\nexport var asyncScheduler = new AsyncScheduler(AsyncAction);\nexport var async = asyncScheduler;\n//# sourceMappingURL=async.js.map","export var dateTimestampProvider = {\n now: function () {\n return (dateTimestampProvider.delegate || Date).now();\n },\n delegate: undefined,\n};\n//# sourceMappingURL=dateTimestampProvider.js.map","import { __read, __spread } from \"tslib\";\nimport { Immediate } from '../util/Immediate';\nvar setImmediate = Immediate.setImmediate, clearImmediate = Immediate.clearImmediate;\nexport var immediateProvider = {\n setImmediate: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var delegate = immediateProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.setImmediate) || setImmediate).apply(void 0, __spread(args));\n },\n clearImmediate: function (handle) {\n var delegate = immediateProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearImmediate) || clearImmediate)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=immediateProvider.js.map","import { __read, __spread } from \"tslib\";\nexport var intervalProvider = {\n setInterval: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var delegate = intervalProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) || setInterval).apply(void 0, __spread(args));\n },\n clearInterval: function (handle) {\n var delegate = intervalProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=intervalProvider.js.map","export var performanceTimestampProvider = {\n now: function () {\n return (performanceTimestampProvider.delegate || performance).now();\n },\n delegate: undefined,\n};\n//# sourceMappingURL=performanceTimestampProvider.js.map","import { QueueAction } from './QueueAction';\nimport { QueueScheduler } from './QueueScheduler';\nexport var queueScheduler = new QueueScheduler(QueueAction);\nexport var queue = queueScheduler;\n//# sourceMappingURL=queue.js.map","import { __read, __spread } from \"tslib\";\nexport var timeoutProvider = {\n setTimeout: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var delegate = timeoutProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) || setTimeout).apply(void 0, __spread(args));\n },\n clearTimeout: function (handle) {\n var delegate = timeoutProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=timeoutProvider.js.map","export function getSymbolIterator() {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator';\n }\n return Symbol.iterator;\n}\nexport var iterator = getSymbolIterator();\nexport var $$iterator = iterator;\n//# sourceMappingURL=iterator.js.map","export var observable = (function () { return (typeof Symbol === 'function' && Symbol.observable) || '@@observable'; })();\n//# sourceMappingURL=observable.js.map","import { createErrorClass } from './createErrorClass';\nexport var ArgumentOutOfRangeError = createErrorClass(function (_super) {\n return function ArgumentOutOfRangeErrorImpl() {\n _super(this);\n this.name = 'ArgumentOutOfRangeError';\n this.message = 'argument out of range';\n };\n});\n//# sourceMappingURL=ArgumentOutOfRangeError.js.map","import { createErrorClass } from './createErrorClass';\nexport var EmptyError = createErrorClass(function (_super) { return function EmptyErrorImpl() {\n _super(this);\n this.name = 'EmptyError';\n this.message = 'no elements in sequence';\n}; });\n//# sourceMappingURL=EmptyError.js.map","var nextHandle = 1;\nvar resolved;\nvar activeHandles = {};\nfunction findAndClearHandle(handle) {\n if (handle in activeHandles) {\n delete activeHandles[handle];\n return true;\n }\n return false;\n}\nexport var Immediate = {\n setImmediate: function (cb) {\n var handle = nextHandle++;\n activeHandles[handle] = true;\n if (!resolved) {\n resolved = Promise.resolve();\n }\n resolved.then(function () { return findAndClearHandle(handle) && cb(); });\n return handle;\n },\n clearImmediate: function (handle) {\n findAndClearHandle(handle);\n },\n};\nexport var TestTools = {\n pending: function () {\n return Object.keys(activeHandles).length;\n }\n};\n//# sourceMappingURL=Immediate.js.map","import { createErrorClass } from './createErrorClass';\nexport var NotFoundError = createErrorClass(function (_super) {\n return function NotFoundErrorImpl(message) {\n _super(this);\n this.name = 'NotFoundError';\n this.message = message;\n };\n});\n//# sourceMappingURL=NotFoundError.js.map","import { createErrorClass } from './createErrorClass';\nexport var ObjectUnsubscribedError = createErrorClass(function (_super) {\n return function ObjectUnsubscribedErrorImpl() {\n _super(this);\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n };\n});\n//# sourceMappingURL=ObjectUnsubscribedError.js.map","import { createErrorClass } from './createErrorClass';\nexport var SequenceError = createErrorClass(function (_super) {\n return function SequenceErrorImpl(message) {\n _super(this);\n this.name = 'SequenceError';\n this.message = message;\n };\n});\n//# sourceMappingURL=SequenceError.js.map","import { createErrorClass } from './createErrorClass';\nexport var UnsubscriptionError = createErrorClass(function (_super) {\n return function UnsubscriptionErrorImpl(errors) {\n _super(this);\n this.message = errors\n ? errors.length + \" errors occurred during unsubscription:\\n\" + errors.map(function (err, i) { return i + 1 + \") \" + err.toString(); }).join('\\n ')\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n };\n});\n//# sourceMappingURL=UnsubscriptionError.js.map","import { isFunction } from './isFunction';\nimport { isScheduler } from './isScheduler';\nfunction last(arr) {\n return arr[arr.length - 1];\n}\nexport function popResultSelector(args) {\n return isFunction(last(args)) ? args.pop() : undefined;\n}\nexport function popScheduler(args) {\n return isScheduler(last(args)) ? args.pop() : undefined;\n}\nexport function popNumber(args, defaultValue) {\n return typeof last(args) === 'number' ? args.pop() : defaultValue;\n}\n//# sourceMappingURL=args.js.map","var isArray = Array.isArray;\nvar getPrototypeOf = Object.getPrototypeOf, objectProto = Object.prototype, getKeys = Object.keys;\nexport function argsArgArrayOrObject(args) {\n if (args.length === 1) {\n var first_1 = args[0];\n if (isArray(first_1)) {\n return { args: first_1, keys: null };\n }\n if (isPOJO(first_1)) {\n var keys = getKeys(first_1);\n return {\n args: keys.map(function (key) { return first_1[key]; }),\n keys: keys,\n };\n }\n }\n return { args: args, keys: null };\n}\nfunction isPOJO(obj) {\n return obj && typeof obj === 'object' && getPrototypeOf(obj) === objectProto;\n}\n//# sourceMappingURL=argsArgArrayOrObject.js.map","var isArray = Array.isArray;\nexport function argsOrArgArray(args) {\n return args.length === 1 && isArray(args[0]) ? args[0] : args;\n}\n//# sourceMappingURL=argsOrArgArray.js.map","export function arrRemove(arr, item) {\n if (arr) {\n var index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n//# sourceMappingURL=arrRemove.js.map","export function caughtSchedule(subscriber, scheduler, execute, delay) {\n if (delay === void 0) { delay = 0; }\n var subscription = scheduler.schedule(function () {\n try {\n execute.call(this);\n }\n catch (err) {\n subscriber.error(err);\n }\n }, delay);\n subscriber.add(subscription);\n return subscription;\n}\n//# sourceMappingURL=caughtSchedule.js.map","export function createErrorClass(createImpl) {\n var _super = function (instance) {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n var ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n//# sourceMappingURL=createErrorClass.js.map","export function identity(x) {\n return x;\n}\n//# sourceMappingURL=identity.js.map","export var isArrayLike = (function (x) { return x && typeof x.length === 'number' && typeof x !== 'function'; });\n//# sourceMappingURL=isArrayLike.js.map","import { isFunction } from './isFunction';\nexport function isAsyncIterable(obj) {\n return Symbol.asyncIterator && isFunction(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]);\n}\n//# sourceMappingURL=isAsyncIterable.js.map","export function isValidDate(value) {\n return value instanceof Date && !isNaN(value);\n}\n//# sourceMappingURL=isDate.js.map","export function isFunction(value) {\n return typeof value === 'function';\n}\n//# sourceMappingURL=isFunction.js.map","import { observable as Symbol_observable } from '../symbol/observable';\nimport { isFunction } from './isFunction';\nexport function isInteropObservable(input) {\n return isFunction(input[Symbol_observable]);\n}\n//# sourceMappingURL=isInteropObservable.js.map","import { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from './isFunction';\nexport function isIterable(input) {\n return isFunction(input === null || input === void 0 ? void 0 : input[Symbol_iterator]);\n}\n//# sourceMappingURL=isIterable.js.map","import { Observable } from '../Observable';\nimport { isFunction } from './isFunction';\nexport function isObservable(obj) {\n return !!obj && (obj instanceof Observable || (isFunction(obj.lift) && isFunction(obj.subscribe)));\n}\n//# sourceMappingURL=isObservable.js.map","import { isFunction } from \"./isFunction\";\nexport function isPromise(value) {\n return isFunction(value === null || value === void 0 ? void 0 : value.then);\n}\n//# sourceMappingURL=isPromise.js.map","import { isFunction } from './isFunction';\nexport function isScheduler(value) {\n return value && isFunction(value.schedule);\n}\n//# sourceMappingURL=isScheduler.js.map","import { isFunction } from './isFunction';\nexport function hasLift(source) {\n return isFunction(source === null || source === void 0 ? void 0 : source.lift);\n}\nexport function operate(init) {\n return function (source) {\n if (hasLift(source)) {\n return source.lift(function (liftedSource) {\n try {\n return init(liftedSource, this);\n }\n catch (err) {\n this.error(err);\n }\n });\n }\n throw new TypeError('Unable to lift unknown Observable type');\n };\n}\n//# sourceMappingURL=lift.js.map","import { __read, __spread } from \"tslib\";\nimport { map } from \"../operators/map\";\nvar isArray = Array.isArray;\nfunction callOrApply(fn, args) {\n return isArray(args) ? fn.apply(void 0, __spread(args)) : fn(args);\n}\nexport function mapOneOrManyArgs(fn) {\n return map(function (args) { return callOrApply(fn, args); });\n}\n//# sourceMappingURL=mapOneOrManyArgs.js.map","export function noop() { }\n//# sourceMappingURL=noop.js.map","export function not(pred, thisArg) {\n return function (value, index) { return !pred.call(thisArg, value, index); };\n}\n//# sourceMappingURL=not.js.map","import { identity } from './identity';\nexport function pipe() {\n var fns = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n fns[_i] = arguments[_i];\n }\n return pipeFromArray(fns);\n}\nexport function pipeFromArray(fns) {\n if (fns.length === 0) {\n return identity;\n }\n if (fns.length === 1) {\n return fns[0];\n }\n return function piped(input) {\n return fns.reduce(function (prev, fn) { return fn(prev); }, input);\n };\n}\n//# sourceMappingURL=pipe.js.map","import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\nexport function reportUnhandledError(err) {\n timeoutProvider.setTimeout(function () {\n var onUnhandledError = config.onUnhandledError;\n if (onUnhandledError) {\n onUnhandledError(err);\n }\n else {\n throw err;\n }\n });\n}\n//# sourceMappingURL=reportUnhandledError.js.map","export function createInvalidObservableTypeError(input) {\n return new TypeError(\"You provided \" + (input !== null && typeof input === 'object' ? 'an invalid object' : \"'\" + input + \"'\") + \" where a stream was expected. You can provide an Observable, Promise, Array, AsyncIterable, or Iterable.\");\n}\n//# sourceMappingURL=throwUnobservableError.js.map","export { audit } from '../internal/operators/audit';\nexport { auditTime } from '../internal/operators/auditTime';\nexport { buffer } from '../internal/operators/buffer';\nexport { bufferCount } from '../internal/operators/bufferCount';\nexport { bufferTime } from '../internal/operators/bufferTime';\nexport { bufferToggle } from '../internal/operators/bufferToggle';\nexport { bufferWhen } from '../internal/operators/bufferWhen';\nexport { catchError } from '../internal/operators/catchError';\nexport { combineAll } from '../internal/operators/combineAll';\nexport { combineLatest, combineLatestWith } from '../internal/operators/combineLatestWith';\nexport { concatAll } from '../internal/operators/concatAll';\nexport { concatMap } from '../internal/operators/concatMap';\nexport { concatMapTo } from '../internal/operators/concatMapTo';\nexport { concat, concatWith } from '../internal/operators/concatWith';\nexport { count } from '../internal/operators/count';\nexport { debounce } from '../internal/operators/debounce';\nexport { debounceTime } from '../internal/operators/debounceTime';\nexport { defaultIfEmpty } from '../internal/operators/defaultIfEmpty';\nexport { delay } from '../internal/operators/delay';\nexport { delayWhen } from '../internal/operators/delayWhen';\nexport { dematerialize } from '../internal/operators/dematerialize';\nexport { distinct } from '../internal/operators/distinct';\nexport { distinctUntilChanged } from '../internal/operators/distinctUntilChanged';\nexport { distinctUntilKeyChanged } from '../internal/operators/distinctUntilKeyChanged';\nexport { elementAt } from '../internal/operators/elementAt';\nexport { endWith } from '../internal/operators/endWith';\nexport { every } from '../internal/operators/every';\nexport { exhaust } from '../internal/operators/exhaust';\nexport { exhaustMap } from '../internal/operators/exhaustMap';\nexport { expand } from '../internal/operators/expand';\nexport { filter } from '../internal/operators/filter';\nexport { finalize } from '../internal/operators/finalize';\nexport { find } from '../internal/operators/find';\nexport { findIndex } from '../internal/operators/findIndex';\nexport { first } from '../internal/operators/first';\nexport { groupBy } from '../internal/operators/groupBy';\nexport { ignoreElements } from '../internal/operators/ignoreElements';\nexport { isEmpty } from '../internal/operators/isEmpty';\nexport { last } from '../internal/operators/last';\nexport { map } from '../internal/operators/map';\nexport { mapTo } from '../internal/operators/mapTo';\nexport { materialize } from '../internal/operators/materialize';\nexport { max } from '../internal/operators/max';\nexport { mergeWith, merge } from '../internal/operators/mergeWith';\nexport { mergeAll } from '../internal/operators/mergeAll';\nexport { mergeMap, flatMap } from '../internal/operators/mergeMap';\nexport { mergeMapTo } from '../internal/operators/mergeMapTo';\nexport { mergeScan } from '../internal/operators/mergeScan';\nexport { min } from '../internal/operators/min';\nexport { multicast } from '../internal/operators/multicast';\nexport { observeOn } from '../internal/operators/observeOn';\nexport { onErrorResumeNext } from '../internal/operators/onErrorResumeNext';\nexport { pairwise } from '../internal/operators/pairwise';\nexport { partition } from '../internal/operators/partition';\nexport { pluck } from '../internal/operators/pluck';\nexport { publish } from '../internal/operators/publish';\nexport { publishBehavior } from '../internal/operators/publishBehavior';\nexport { publishLast } from '../internal/operators/publishLast';\nexport { publishReplay } from '../internal/operators/publishReplay';\nexport { race, raceWith } from '../internal/operators/raceWith';\nexport { reduce } from '../internal/operators/reduce';\nexport { repeat } from '../internal/operators/repeat';\nexport { repeatWhen } from '../internal/operators/repeatWhen';\nexport { retry } from '../internal/operators/retry';\nexport { retryWhen } from '../internal/operators/retryWhen';\nexport { refCount } from '../internal/operators/refCount';\nexport { sample } from '../internal/operators/sample';\nexport { sampleTime } from '../internal/operators/sampleTime';\nexport { scan } from '../internal/operators/scan';\nexport { sequenceEqual } from '../internal/operators/sequenceEqual';\nexport { share } from '../internal/operators/share';\nexport { shareReplay } from '../internal/operators/shareReplay';\nexport { single } from '../internal/operators/single';\nexport { skip } from '../internal/operators/skip';\nexport { skipLast } from '../internal/operators/skipLast';\nexport { skipUntil } from '../internal/operators/skipUntil';\nexport { skipWhile } from '../internal/operators/skipWhile';\nexport { startWith } from '../internal/operators/startWith';\nexport { subscribeOn } from '../internal/operators/subscribeOn';\nexport { switchAll } from '../internal/operators/switchAll';\nexport { switchMap } from '../internal/operators/switchMap';\nexport { switchMapTo } from '../internal/operators/switchMapTo';\nexport { switchScan } from '../internal/operators/switchScan';\nexport { take } from '../internal/operators/take';\nexport { takeLast } from '../internal/operators/takeLast';\nexport { takeUntil } from '../internal/operators/takeUntil';\nexport { takeWhile } from '../internal/operators/takeWhile';\nexport { tap } from '../internal/operators/tap';\nexport { throttle } from '../internal/operators/throttle';\nexport { throttleTime } from '../internal/operators/throttleTime';\nexport { throwIfEmpty } from '../internal/operators/throwIfEmpty';\nexport { timeInterval } from '../internal/operators/timeInterval';\nexport { timeout } from '../internal/operators/timeout';\nexport { timeoutWith } from '../internal/operators/timeoutWith';\nexport { timestamp } from '../internal/operators/timestamp';\nexport { toArray } from '../internal/operators/toArray';\nexport { window } from '../internal/operators/window';\nexport { windowCount } from '../internal/operators/windowCount';\nexport { windowTime } from '../internal/operators/windowTime';\nexport { windowToggle } from '../internal/operators/windowToggle';\nexport { windowWhen } from '../internal/operators/windowWhen';\nexport { withLatestFrom } from '../internal/operators/withLatestFrom';\nexport { zip, zipWith } from '../internal/operators/zipWith';\nexport { zipAll } from '../internal/operators/zipAll';\n//# sourceMappingURL=index.js.map","export const ROUND_ARROW =\n '<svg width=\"16\" height=\"6\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 6s1.796-.013 4.67-3.615C5.851.9 6.93.006 8 0c1.07-.006 2.148.887 3.343 2.385C14.233 6.005 16 6 16 6H0z\"></svg>';\n\nexport const BOX_CLASS = `__NAMESPACE_PREFIX__-box`;\nexport const CONTENT_CLASS = `__NAMESPACE_PREFIX__-content`;\nexport const BACKDROP_CLASS = `__NAMESPACE_PREFIX__-backdrop`;\nexport const ARROW_CLASS = `__NAMESPACE_PREFIX__-arrow`;\nexport const SVG_ARROW_CLASS = `__NAMESPACE_PREFIX__-svg-arrow`;\n\nexport const TOUCH_OPTIONS = {passive: true, capture: true};\n","import {BasePlacement, Placement} from './types';\n\nexport function hasOwnProperty(obj: object, key: string): boolean {\n return {}.hasOwnProperty.call(obj, key);\n}\n\nexport function getValueAtIndexOrReturn<T>(\n value: T | [T | null, T | null],\n index: number,\n defaultValue: T | [T, T]\n): T {\n if (Array.isArray(value)) {\n const v = value[index];\n return v == null\n ? Array.isArray(defaultValue)\n ? defaultValue[index]\n : defaultValue\n : v;\n }\n\n return value;\n}\n\nexport function isType(value: any, type: string): boolean {\n const str = {}.toString.call(value);\n return str.indexOf('[object') === 0 && str.indexOf(`${type}]`) > -1;\n}\n\nexport function invokeWithArgsOrReturn(value: any, args: any[]): any {\n return typeof value === 'function' ? value(...args) : value;\n}\n\nexport function debounce<T>(\n fn: (arg: T) => void,\n ms: number\n): (arg: T) => void {\n // Avoid wrapping in `setTimeout` if ms is 0 anyway\n if (ms === 0) {\n return fn;\n }\n\n let timeout: any;\n\n return (arg): void => {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n fn(arg);\n }, ms);\n };\n}\n\nexport function removeProperties<T>(obj: T, keys: string[]): Partial<T> {\n const clone = {...obj};\n keys.forEach((key) => {\n delete (clone as any)[key];\n });\n return clone;\n}\n\nexport function splitBySpaces(value: string): string[] {\n return value.split(/\\s+/).filter(Boolean);\n}\n\nexport function normalizeToArray<T>(value: T | T[]): T[] {\n return ([] as T[]).concat(value);\n}\n\nexport function pushIfUnique<T>(arr: T[], value: T): void {\n if (arr.indexOf(value) === -1) {\n arr.push(value);\n }\n}\n\nexport function appendPxIfNumber(value: string | number): string {\n return typeof value === 'number' ? `${value}px` : value;\n}\n\nexport function unique<T>(arr: T[]): T[] {\n return arr.filter((item, index) => arr.indexOf(item) === index);\n}\n\nexport function getNumber(value: string | number): number {\n return typeof value === 'number' ? value : parseFloat(value);\n}\n\nexport function getBasePlacement(placement: Placement): BasePlacement {\n return placement.split('-')[0] as BasePlacement;\n}\n\nexport function arrayFrom(value: ArrayLike<any>): any[] {\n return [].slice.call(value);\n}\n\nexport function removeUndefinedProps(\n obj: Record<string, unknown>\n): Partial<Record<string, unknown>> {\n return Object.keys(obj).reduce((acc, key) => {\n if (obj[key] !== undefined) {\n (acc as any)[key] = obj[key];\n }\n\n return acc;\n }, {});\n}\n","import {ReferenceElement, Targets} from './types';\nimport {PopperTreeData} from './types-internal';\nimport {arrayFrom, isType, normalizeToArray, getBasePlacement} from './utils';\n\nexport function div(): HTMLDivElement {\n return document.createElement('div');\n}\n\nexport function isElement(value: unknown): value is Element | DocumentFragment {\n return ['Element', 'Fragment'].some((type) => isType(value, type));\n}\n\nexport function isNodeList(value: unknown): value is NodeList {\n return isType(value, 'NodeList');\n}\n\nexport function isMouseEvent(value: unknown): value is MouseEvent {\n return isType(value, 'MouseEvent');\n}\n\nexport function isReferenceElement(value: any): value is ReferenceElement {\n return !!(value && value._tippy && value._tippy.reference === value);\n}\n\nexport function getArrayOfElements(value: Targets): Element[] {\n if (isElement(value)) {\n return [value];\n }\n\n if (isNodeList(value)) {\n return arrayFrom(value);\n }\n\n if (Array.isArray(value)) {\n return value;\n }\n\n return arrayFrom(document.querySelectorAll(value));\n}\n\nexport function setTransitionDuration(\n els: (HTMLDivElement | null)[],\n value: number\n): void {\n els.forEach((el) => {\n if (el) {\n el.style.transitionDuration = `${value}ms`;\n }\n });\n}\n\nexport function setVisibilityState(\n els: (HTMLDivElement | null)[],\n state: 'visible' | 'hidden'\n): void {\n els.forEach((el) => {\n if (el) {\n el.setAttribute('data-state', state);\n }\n });\n}\n\nexport function getOwnerDocument(\n elementOrElements: Element | Element[]\n): Document {\n const [element] = normalizeToArray(elementOrElements);\n return element ? element.ownerDocument || document : document;\n}\n\nexport function isCursorOutsideInteractiveBorder(\n popperTreeData: PopperTreeData[],\n event: MouseEvent\n): boolean {\n const {clientX, clientY} = event;\n\n return popperTreeData.every(({popperRect, popperState, props}) => {\n const {interactiveBorder} = props;\n const basePlacement = getBasePlacement(popperState.placement);\n const offsetData = popperState.modifiersData.offset;\n\n if (!offsetData) {\n return true;\n }\n\n const topDistance = basePlacement === 'bottom' ? offsetData.top!.y : 0;\n const bottomDistance = basePlacement === 'top' ? offsetData.bottom!.y : 0;\n const leftDistance = basePlacement === 'right' ? offsetData.left!.x : 0;\n const rightDistance = basePlacement === 'left' ? offsetData.right!.x : 0;\n\n const exceedsTop =\n popperRect.top - clientY + topDistance > interactiveBorder;\n const exceedsBottom =\n clientY - popperRect.bottom - bottomDistance > interactiveBorder;\n const exceedsLeft =\n popperRect.left - clientX + leftDistance > interactiveBorder;\n const exceedsRight =\n clientX - popperRect.right - rightDistance > interactiveBorder;\n\n return exceedsTop || exceedsBottom || exceedsLeft || exceedsRight;\n });\n}\n\nexport function updateTransitionEndListener(\n box: HTMLDivElement,\n action: 'add' | 'remove',\n listener: (event: TransitionEvent) => void\n): void {\n const method = `${action}EventListener` as\n | 'addEventListener'\n | 'removeEventListener';\n\n // some browsers apparently support `transition` (unprefixed) but only fire\n // `webkitTransitionEnd`...\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n box[method](event, listener as EventListener);\n });\n}\n","import {TOUCH_OPTIONS} from './constants';\nimport {isReferenceElement} from './dom-utils';\n\nexport const currentInput = {isTouch: false};\nlet lastMouseMoveTime = 0;\n\n/**\n * When a `touchstart` event is fired, it's assumed the user is using touch\n * input. We'll bind a `mousemove` event listener to listen for mouse input in\n * the future. This way, the `isTouch` property is fully dynamic and will handle\n * hybrid devices that use a mix of touch + mouse input.\n */\nexport function onDocumentTouchStart(): void {\n if (currentInput.isTouch) {\n return;\n }\n\n currentInput.isTouch = true;\n\n if (window.performance) {\n document.addEventListener('mousemove', onDocumentMouseMove);\n }\n}\n\n/**\n * When two `mousemove` event are fired consecutively within 20ms, it's assumed\n * the user is using mouse input again. `mousemove` can fire on touch devices as\n * well, but very rarely that quickly.\n */\nexport function onDocumentMouseMove(): void {\n const now = performance.now();\n\n if (now - lastMouseMoveTime < 20) {\n currentInput.isTouch = false;\n\n document.removeEventListener('mousemove', onDocumentMouseMove);\n }\n\n lastMouseMoveTime = now;\n}\n\n/**\n * When an element is in focus and has a tippy, leaving the tab/window and\n * returning causes it to show again. For mouse users this is unexpected, but\n * for keyboard use it makes sense.\n * TODO: find a better technique to solve this problem\n */\nexport function onWindowBlur(): void {\n const activeElement = document.activeElement as HTMLElement | null;\n\n if (isReferenceElement(activeElement)) {\n const instance = activeElement._tippy!;\n\n if (activeElement.blur && !instance.state.isVisible) {\n activeElement.blur();\n }\n }\n}\n\nexport default function bindGlobalEventListeners(): void {\n document.addEventListener('touchstart', onDocumentTouchStart, TOUCH_OPTIONS);\n window.addEventListener('blur', onWindowBlur);\n}\n","export const isBrowser =\n typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst ua = isBrowser ? navigator.userAgent : '';\n\nexport const isIE = /MSIE |Trident\\//.test(ua);\n","import {Targets} from './types';\n\nexport function createMemoryLeakWarning(method: string): string {\n const txt = method === 'destroy' ? 'n already-' : ' ';\n\n return [\n `${method}() was called on a${txt}destroyed instance. This is a no-op but`,\n 'indicates a potential memory leak.',\n ].join(' ');\n}\n\nexport function clean(value: string): string {\n const spacesAndTabs = /[ \\t]{2,}/g;\n const lineStartWithSpaces = /^[ \\t]*/gm;\n\n return value\n .replace(spacesAndTabs, ' ')\n .replace(lineStartWithSpaces, '')\n .trim();\n}\n\nfunction getDevMessage(message: string): string {\n return clean(`\n %ctippy.js\n\n %c${clean(message)}\n\n %c👷‍ This is a development-only message. It will be removed in production.\n `);\n}\n\nexport function getFormattedMessage(message: string): string[] {\n return [\n getDevMessage(message),\n // title\n 'color: #00C584; font-size: 1.3em; font-weight: bold;',\n // message\n 'line-height: 1.5',\n // footer\n 'color: #a6a095;',\n ];\n}\n\n// Assume warnings and errors never have the same message\nlet visitedMessages: Set<string>;\nif (__DEV__) {\n resetVisitedMessages();\n}\n\nexport function resetVisitedMessages(): void {\n visitedMessages = new Set();\n}\n\nexport function warnWhen(condition: boolean, message: string): void {\n if (condition && !visitedMessages.has(message)) {\n visitedMessages.add(message);\n console.warn(...getFormattedMessage(message));\n }\n}\n\nexport function errorWhen(condition: boolean, message: string): void {\n if (condition && !visitedMessages.has(message)) {\n visitedMessages.add(message);\n console.error(...getFormattedMessage(message));\n }\n}\n\nexport function validateTargets(targets: Targets): void {\n const didPassFalsyValue = !targets;\n const didPassPlainObject =\n Object.prototype.toString.call(targets) === '[object Object]' &&\n !(targets as any).addEventListener;\n\n errorWhen(\n didPassFalsyValue,\n [\n 'tippy() was passed',\n '`' + String(targets) + '`',\n 'as its targets (first) argument. Valid types are: String, Element,',\n 'Element[], or NodeList.',\n ].join(' ')\n );\n\n errorWhen(\n didPassPlainObject,\n [\n 'tippy() was passed a plain object which is not supported as an argument',\n 'for virtual positioning. Use props.getReferenceClientRect instead.',\n ].join(' ')\n );\n}\n","import {DefaultProps, Plugin, Props, ReferenceElement, Tippy} from './types';\nimport {\n hasOwnProperty,\n removeProperties,\n invokeWithArgsOrReturn,\n} from './utils';\nimport {warnWhen} from './validation';\n\nconst pluginProps = {\n animateFill: false,\n followCursor: false,\n inlinePositioning: false,\n sticky: false,\n};\n\nconst renderProps = {\n allowHTML: false,\n animation: 'fade',\n arrow: true,\n content: '',\n inertia: false,\n maxWidth: 350,\n role: 'tooltip',\n theme: '',\n zIndex: 9999,\n};\n\nexport const defaultProps: DefaultProps = {\n appendTo: () => document.body,\n aria: {\n content: 'auto',\n expanded: 'auto',\n },\n delay: 0,\n duration: [300, 250],\n getReferenceClientRect: null,\n hideOnClick: true,\n ignoreAttributes: false,\n interactive: false,\n interactiveBorder: 2,\n interactiveDebounce: 0,\n moveTransition: '',\n offset: [0, 10],\n onAfterUpdate() {},\n onBeforeUpdate() {},\n onCreate() {},\n onDestroy() {},\n onHidden() {},\n onHide() {},\n onMount() {},\n onShow() {},\n onShown() {},\n onTrigger() {},\n onUntrigger() {},\n onClickOutside() {},\n placement: 'top',\n plugins: [],\n popperOptions: {},\n render: null,\n showOnCreate: false,\n touch: true,\n trigger: 'mouseenter focus',\n triggerTarget: null,\n ...pluginProps,\n ...renderProps,\n};\n\nconst defaultKeys = Object.keys(defaultProps);\n\nexport const setDefaultProps: Tippy['setDefaultProps'] = (partialProps) => {\n /* istanbul ignore else */\n if (__DEV__) {\n validateProps(partialProps, []);\n }\n\n const keys = Object.keys(partialProps) as Array<keyof DefaultProps>;\n keys.forEach((key) => {\n (defaultProps as any)[key] = partialProps[key];\n });\n};\n\nexport function getExtendedPassedProps(\n passedProps: Partial<Props> & Record<string, unknown>\n): Partial<Props> {\n const plugins = passedProps.plugins || [];\n const pluginProps = plugins.reduce<Record<string, unknown>>((acc, plugin) => {\n const {name, defaultValue} = plugin;\n\n if (name) {\n acc[name] =\n passedProps[name] !== undefined ? passedProps[name] : defaultValue;\n }\n\n return acc;\n }, {});\n\n return {\n ...passedProps,\n ...pluginProps,\n };\n}\n\nexport function getDataAttributeProps(\n reference: ReferenceElement,\n plugins: Plugin[]\n): Record<string, unknown> {\n const propKeys = plugins\n ? Object.keys(getExtendedPassedProps({...defaultProps, plugins}))\n : defaultKeys;\n\n const props = propKeys.reduce(\n (acc: Partial<Props> & Record<string, unknown>, key) => {\n const valueAsString = (\n reference.getAttribute(`data-tippy-${key}`) || ''\n ).trim();\n\n if (!valueAsString) {\n return acc;\n }\n\n if (key === 'content') {\n acc[key] = valueAsString;\n } else {\n try {\n acc[key] = JSON.parse(valueAsString);\n } catch (e) {\n acc[key] = valueAsString;\n }\n }\n\n return acc;\n },\n {}\n );\n\n return props;\n}\n\nexport function evaluateProps(\n reference: ReferenceElement,\n props: Props\n): Props {\n const out = {\n ...props,\n content: invokeWithArgsOrReturn(props.content, [reference]),\n ...(props.ignoreAttributes\n ? {}\n : getDataAttributeProps(reference, props.plugins)),\n };\n\n out.aria = {\n ...defaultProps.aria,\n ...out.aria,\n };\n\n out.aria = {\n expanded:\n out.aria.expanded === 'auto' ? props.interactive : out.aria.expanded,\n content:\n out.aria.content === 'auto'\n ? props.interactive\n ? null\n : 'describedby'\n : out.aria.content,\n };\n\n return out;\n}\n\nexport function validateProps(\n partialProps: Partial<Props> = {},\n plugins: Plugin[] = []\n): void {\n const keys = Object.keys(partialProps) as Array<keyof Props>;\n keys.forEach((prop) => {\n const nonPluginProps = removeProperties(\n defaultProps,\n Object.keys(pluginProps)\n );\n\n let didPassUnknownProp = !hasOwnProperty(nonPluginProps, prop);\n\n // Check if the prop exists in `plugins`\n if (didPassUnknownProp) {\n didPassUnknownProp =\n plugins.filter((plugin) => plugin.name === prop).length === 0;\n }\n\n warnWhen(\n didPassUnknownProp,\n [\n `\\`${prop}\\``,\n \"is not a valid prop. You may have spelled it incorrectly, or if it's\",\n 'a plugin, forgot to pass it in an array as props.plugins.',\n '\\n\\n',\n 'All props: https://atomiks.github.io/tippyjs/v6/all-props/\\n',\n 'Plugins: https://atomiks.github.io/tippyjs/v6/plugins/',\n ].join(' ')\n );\n });\n}\n","import {\n ARROW_CLASS,\n BACKDROP_CLASS,\n BOX_CLASS,\n CONTENT_CLASS,\n SVG_ARROW_CLASS,\n} from './constants';\nimport {div, isElement} from './dom-utils';\nimport {Instance, PopperElement, Props} from './types';\nimport {PopperChildren} from './types-internal';\nimport {arrayFrom} from './utils';\n\n// Firefox extensions don't allow .innerHTML = \"...\" property. This tricks it.\nconst innerHTML = (): 'innerHTML' => 'innerHTML';\n\nfunction dangerouslySetInnerHTML(element: Element, html: string): void {\n element[innerHTML()] = html;\n}\n\nfunction createArrowElement(value: Props['arrow']): HTMLDivElement {\n const arrow = div();\n\n if (value === true) {\n arrow.className = ARROW_CLASS;\n } else {\n arrow.className = SVG_ARROW_CLASS;\n\n if (isElement(value)) {\n arrow.appendChild(value);\n } else {\n dangerouslySetInnerHTML(arrow, value as string);\n }\n }\n\n return arrow;\n}\n\nexport function setContent(content: HTMLDivElement, props: Props): void {\n if (isElement(props.content)) {\n dangerouslySetInnerHTML(content, '');\n content.appendChild(props.content);\n } else if (typeof props.content !== 'function') {\n if (props.allowHTML) {\n dangerouslySetInnerHTML(content, props.content);\n } else {\n content.textContent = props.content;\n }\n }\n}\n\nexport function getChildren(popper: PopperElement): PopperChildren {\n const box = popper.firstElementChild as HTMLDivElement;\n const boxChildren = arrayFrom(box.children);\n\n return {\n box,\n content: boxChildren.find((node) => node.classList.contains(CONTENT_CLASS)),\n arrow: boxChildren.find(\n (node) =>\n node.classList.contains(ARROW_CLASS) ||\n node.classList.contains(SVG_ARROW_CLASS)\n ),\n backdrop: boxChildren.find((node) =>\n node.classList.contains(BACKDROP_CLASS)\n ),\n };\n}\n\nexport function render(\n instance: Instance\n): {\n popper: PopperElement;\n onUpdate?: (prevProps: Props, nextProps: Props) => void;\n} {\n const popper = div();\n\n const box = div();\n box.className = BOX_CLASS;\n box.setAttribute('data-state', 'hidden');\n box.setAttribute('tabindex', '-1');\n\n const content = div();\n content.className = CONTENT_CLASS;\n content.setAttribute('data-state', 'hidden');\n\n setContent(content, instance.props);\n\n popper.appendChild(box);\n box.appendChild(content);\n\n onUpdate(instance.props, instance.props);\n\n function onUpdate(prevProps: Props, nextProps: Props): void {\n const {box, content, arrow} = getChildren(popper);\n\n if (nextProps.theme) {\n box.setAttribute('data-theme', nextProps.theme);\n } else {\n box.removeAttribute('data-theme');\n }\n\n if (typeof nextProps.animation === 'string') {\n box.setAttribute('data-animation', nextProps.animation);\n } else {\n box.removeAttribute('data-animation');\n }\n\n if (nextProps.inertia) {\n box.setAttribute('data-inertia', '');\n } else {\n box.removeAttribute('data-inertia');\n }\n\n box.style.maxWidth =\n typeof nextProps.maxWidth === 'number'\n ? `${nextProps.maxWidth}px`\n : nextProps.maxWidth;\n\n if (nextProps.role) {\n box.setAttribute('role', nextProps.role);\n } else {\n box.removeAttribute('role');\n }\n\n if (\n prevProps.content !== nextProps.content ||\n prevProps.allowHTML !== nextProps.allowHTML\n ) {\n setContent(content, instance.props);\n }\n\n if (nextProps.arrow) {\n if (!arrow) {\n box.appendChild(createArrowElement(nextProps.arrow));\n } else if (prevProps.arrow !== nextProps.arrow) {\n box.removeChild(arrow);\n box.appendChild(createArrowElement(nextProps.arrow));\n }\n } else if (arrow) {\n box.removeChild(arrow!);\n }\n }\n\n return {\n popper,\n onUpdate,\n };\n}\n\n// Runtime check to identify if the render function is the default one; this\n// way we can apply default CSS transitions logic and it can be tree-shaken away\nrender.$$tippy = true;\n","import {createPopper, StrictModifiers, Modifier} from '@popperjs/core';\nimport {currentInput} from './bindGlobalEventListeners';\nimport {isIE} from './browser';\nimport {TOUCH_OPTIONS} from './constants';\nimport {\n div,\n getOwnerDocument,\n isCursorOutsideInteractiveBorder,\n isMouseEvent,\n setTransitionDuration,\n setVisibilityState,\n updateTransitionEndListener,\n} from './dom-utils';\nimport {defaultProps, evaluateProps, getExtendedPassedProps} from './props';\nimport {getChildren} from './template';\nimport {\n Content,\n Instance,\n LifecycleHooks,\n PopperElement,\n Props,\n ReferenceElement,\n} from './types';\nimport {ListenerObject, PopperTreeData, PopperChildren} from './types-internal';\nimport {\n arrayFrom,\n debounce,\n getValueAtIndexOrReturn,\n invokeWithArgsOrReturn,\n normalizeToArray,\n pushIfUnique,\n splitBySpaces,\n unique,\n removeUndefinedProps,\n} from './utils';\nimport {createMemoryLeakWarning, errorWhen, warnWhen} from './validation';\n\nlet idCounter = 1;\nlet mouseMoveListeners: ((event: MouseEvent) => void)[] = [];\n\n// Used by `hideAll()`\nexport let mountedInstances: Instance[] = [];\n\nexport default function createTippy(\n reference: ReferenceElement,\n passedProps: Partial<Props>\n): Instance {\n const props = evaluateProps(reference, {\n ...defaultProps,\n ...getExtendedPassedProps(removeUndefinedProps(passedProps)),\n });\n\n // ===========================================================================\n // 🔒 Private members\n // ===========================================================================\n let showTimeout: any;\n let hideTimeout: any;\n let scheduleHideAnimationFrame: number;\n let isVisibleFromClick = false;\n let didHideDueToDocumentMouseDown = false;\n let didTouchMove = false;\n let ignoreOnFirstUpdate = false;\n let lastTriggerEvent: Event | undefined;\n let currentTransitionEndListener: (event: TransitionEvent) => void;\n let onFirstUpdate: () => void;\n let listeners: ListenerObject[] = [];\n let debouncedOnMouseMove = debounce(onMouseMove, props.interactiveDebounce);\n let currentTarget: Element;\n\n // ===========================================================================\n // 🔑 Public members\n // ===========================================================================\n const id = idCounter++;\n const popperInstance = null;\n const plugins = unique(props.plugins);\n\n const state = {\n // Is the instance currently enabled?\n isEnabled: true,\n // Is the tippy currently showing and not transitioning out?\n isVisible: false,\n // Has the instance been destroyed?\n isDestroyed: false,\n // Is the tippy currently mounted to the DOM?\n isMounted: false,\n // Has the tippy finished transitioning in?\n isShown: false,\n };\n\n const instance: Instance = {\n // properties\n id,\n reference,\n popper: div(),\n popperInstance,\n props,\n state,\n plugins,\n // methods\n clearDelayTimeouts,\n setProps,\n setContent,\n show,\n hide,\n hideWithInteractivity,\n enable,\n disable,\n unmount,\n destroy,\n };\n\n // TODO: Investigate why this early return causes a TDZ error in the tests —\n // it doesn't seem to happen in the browser\n /* istanbul ignore if */\n if (!props.render) {\n if (__DEV__) {\n errorWhen(true, 'render() function has not been supplied.');\n }\n\n return instance;\n }\n\n // ===========================================================================\n // Initial mutations\n // ===========================================================================\n const {popper, onUpdate} = props.render(instance);\n\n popper.setAttribute('data-__NAMESPACE_PREFIX__-root', '');\n popper.id = `__NAMESPACE_PREFIX__-${instance.id}`;\n\n instance.popper = popper;\n reference._tippy = instance;\n popper._tippy = instance;\n\n const pluginsHooks = plugins.map((plugin) => plugin.fn(instance));\n const hasAriaExpanded = reference.hasAttribute('aria-expanded');\n\n addListeners();\n handleAriaExpandedAttribute();\n handleStyles();\n\n invokeHook('onCreate', [instance]);\n\n if (props.showOnCreate) {\n scheduleShow();\n }\n\n // Prevent a tippy with a delay from hiding if the cursor left then returned\n // before it started hiding\n popper.addEventListener('mouseenter', () => {\n if (instance.props.interactive && instance.state.isVisible) {\n instance.clearDelayTimeouts();\n }\n });\n\n popper.addEventListener('mouseleave', (event) => {\n if (\n instance.props.interactive &&\n instance.props.trigger.indexOf('mouseenter') >= 0\n ) {\n getDocument().addEventListener('mousemove', debouncedOnMouseMove);\n debouncedOnMouseMove(event);\n }\n });\n\n return instance;\n\n // ===========================================================================\n // 🔒 Private methods\n // ===========================================================================\n function getNormalizedTouchSettings(): [string | boolean, number] {\n const {touch} = instance.props;\n return Array.isArray(touch) ? touch : [touch, 0];\n }\n\n function getIsCustomTouchBehavior(): boolean {\n return getNormalizedTouchSettings()[0] === 'hold';\n }\n\n function getIsDefaultRenderFn(): boolean {\n // @ts-ignore\n return !!instance.props.render?.$$tippy;\n }\n\n function getCurrentTarget(): Element {\n return currentTarget || reference;\n }\n\n function getDocument(): Document {\n const parent = getCurrentTarget().parentNode as Element;\n return parent ? getOwnerDocument(parent) : document;\n }\n\n function getDefaultTemplateChildren(): PopperChildren {\n return getChildren(popper);\n }\n\n function getDelay(isShow: boolean): number {\n // For touch or keyboard input, force `0` delay for UX reasons\n // Also if the instance is mounted but not visible (transitioning out),\n // ignore delay\n if (\n (instance.state.isMounted && !instance.state.isVisible) ||\n currentInput.isTouch ||\n (lastTriggerEvent && lastTriggerEvent.type === 'focus')\n ) {\n return 0;\n }\n\n return getValueAtIndexOrReturn(\n instance.props.delay,\n isShow ? 0 : 1,\n defaultProps.delay\n );\n }\n\n function handleStyles(): void {\n popper.style.pointerEvents =\n instance.props.interactive && instance.state.isVisible ? '' : 'none';\n popper.style.zIndex = `${instance.props.zIndex}`;\n }\n\n function invokeHook(\n hook: keyof LifecycleHooks,\n args: [Instance, any?],\n shouldInvokePropsHook = true\n ): void {\n pluginsHooks.forEach((pluginHooks) => {\n if (pluginHooks[hook]) {\n pluginHooks[hook]!(...args);\n }\n });\n\n if (shouldInvokePropsHook) {\n instance.props[hook](...args);\n }\n }\n\n function handleAriaContentAttribute(): void {\n const {aria} = instance.props;\n\n if (!aria.content) {\n return;\n }\n\n const attr = `aria-${aria.content}`;\n const id = popper.id;\n const nodes = normalizeToArray(instance.props.triggerTarget || reference);\n\n nodes.forEach((node) => {\n const currentValue = node.getAttribute(attr);\n\n if (instance.state.isVisible) {\n node.setAttribute(attr, currentValue ? `${currentValue} ${id}` : id);\n } else {\n const nextValue = currentValue && currentValue.replace(id, '').trim();\n\n if (nextValue) {\n node.setAttribute(attr, nextValue);\n } else {\n node.removeAttribute(attr);\n }\n }\n });\n }\n\n function handleAriaExpandedAttribute(): void {\n if (hasAriaExpanded || !instance.props.aria.expanded) {\n return;\n }\n\n const nodes = normalizeToArray(instance.props.triggerTarget || reference);\n\n nodes.forEach((node) => {\n if (instance.props.interactive) {\n node.setAttribute(\n 'aria-expanded',\n instance.state.isVisible && node === getCurrentTarget()\n ? 'true'\n : 'false'\n );\n } else {\n node.removeAttribute('aria-expanded');\n }\n });\n }\n\n function cleanupInteractiveMouseListeners(): void {\n getDocument().removeEventListener('mousemove', debouncedOnMouseMove);\n mouseMoveListeners = mouseMoveListeners.filter(\n (listener) => listener !== debouncedOnMouseMove\n );\n }\n\n function onDocumentPress(event: MouseEvent | TouchEvent): void {\n // Moved finger to scroll instead of an intentional tap outside\n if (currentInput.isTouch) {\n if (didTouchMove || event.type === 'mousedown') {\n return;\n }\n }\n\n // Clicked on interactive popper\n if (\n instance.props.interactive &&\n popper.contains(event.target as Element)\n ) {\n return;\n }\n\n // Clicked on the event listeners target\n if (getCurrentTarget().contains(event.target as Element)) {\n if (currentInput.isTouch) {\n return;\n }\n\n if (\n instance.state.isVisible &&\n instance.props.trigger.indexOf('click') >= 0\n ) {\n return;\n }\n } else {\n invokeHook('onClickOutside', [instance, event]);\n }\n\n if (instance.props.hideOnClick === true) {\n instance.clearDelayTimeouts();\n instance.hide();\n\n // `mousedown` event is fired right before `focus` if pressing the\n // currentTarget. This lets a tippy with `focus` trigger know that it\n // should not show\n didHideDueToDocumentMouseDown = true;\n setTimeout(() => {\n didHideDueToDocumentMouseDown = false;\n });\n\n // The listener gets added in `scheduleShow()`, but this may be hiding it\n // before it shows, and hide()'s early bail-out behavior can prevent it\n // from being cleaned up\n if (!instance.state.isMounted) {\n removeDocumentPress();\n }\n }\n }\n\n function onTouchMove(): void {\n didTouchMove = true;\n }\n\n function onTouchStart(): void {\n didTouchMove = false;\n }\n\n function addDocumentPress(): void {\n const doc = getDocument();\n doc.addEventListener('mousedown', onDocumentPress, true);\n doc.addEventListener('touchend', onDocumentPress, TOUCH_OPTIONS);\n doc.addEventListener('touchstart', onTouchStart, TOUCH_OPTIONS);\n doc.addEventListener('touchmove', onTouchMove, TOUCH_OPTIONS);\n }\n\n function removeDocumentPress(): void {\n const doc = getDocument();\n doc.removeEventListener('mousedown', onDocumentPress, true);\n doc.removeEventListener('touchend', onDocumentPress, TOUCH_OPTIONS);\n doc.removeEventListener('touchstart', onTouchStart, TOUCH_OPTIONS);\n doc.removeEventListener('touchmove', onTouchMove, TOUCH_OPTIONS);\n }\n\n function onTransitionedOut(duration: number, callback: () => void): void {\n onTransitionEnd(duration, () => {\n if (\n !instance.state.isVisible &&\n popper.parentNode &&\n popper.parentNode.contains(popper)\n ) {\n callback();\n }\n });\n }\n\n function onTransitionedIn(duration: number, callback: () => void): void {\n onTransitionEnd(duration, callback);\n }\n\n function onTransitionEnd(duration: number, callback: () => void): void {\n const box = getDefaultTemplateChildren().box;\n\n function listener(event: TransitionEvent): void {\n if (event.target === box) {\n updateTransitionEndListener(box, 'remove', listener);\n callback();\n }\n }\n\n // Make callback synchronous if duration is 0\n // `transitionend` won't fire otherwise\n if (duration === 0) {\n return callback();\n }\n\n updateTransitionEndListener(box, 'remove', currentTransitionEndListener);\n updateTransitionEndListener(box, 'add', listener);\n\n currentTransitionEndListener = listener;\n }\n\n function on(\n eventType: string,\n handler: EventListener,\n options: boolean | object = false\n ): void {\n const nodes = normalizeToArray(instance.props.triggerTarget || reference);\n nodes.forEach((node) => {\n node.addEventListener(eventType, handler, options);\n listeners.push({node, eventType, handler, options});\n });\n }\n\n function addListeners(): void {\n if (getIsCustomTouchBehavior()) {\n on('touchstart', onTrigger, {passive: true});\n on('touchend', onMouseLeave as EventListener, {passive: true});\n }\n\n splitBySpaces(instance.props.trigger).forEach((eventType) => {\n if (eventType === 'manual') {\n return;\n }\n\n on(eventType, onTrigger);\n\n switch (eventType) {\n case 'mouseenter':\n on('mouseleave', onMouseLeave as EventListener);\n break;\n case 'focus':\n on(isIE ? 'focusout' : 'blur', onBlurOrFocusOut as EventListener);\n break;\n case 'focusin':\n on('focusout', onBlurOrFocusOut as EventListener);\n break;\n }\n });\n }\n\n function removeListeners(): void {\n listeners.forEach(({node, eventType, handler, options}: ListenerObject) => {\n node.removeEventListener(eventType, handler, options);\n });\n listeners = [];\n }\n\n function onTrigger(event: Event): void {\n let shouldScheduleClickHide = false;\n\n if (\n !instance.state.isEnabled ||\n isEventListenerStopped(event) ||\n didHideDueToDocumentMouseDown\n ) {\n return;\n }\n\n const wasFocused = lastTriggerEvent?.type === 'focus';\n\n lastTriggerEvent = event;\n currentTarget = event.currentTarget as Element;\n\n handleAriaExpandedAttribute();\n\n if (!instance.state.isVisible && isMouseEvent(event)) {\n // If scrolling, `mouseenter` events can be fired if the cursor lands\n // over a new target, but `mousemove` events don't get fired. This\n // causes interactive tooltips to get stuck open until the cursor is\n // moved\n mouseMoveListeners.forEach((listener) => listener(event));\n }\n\n // Toggle show/hide when clicking click-triggered tooltips\n if (\n event.type === 'click' &&\n (instance.props.trigger.indexOf('mouseenter') < 0 ||\n isVisibleFromClick) &&\n instance.props.hideOnClick !== false &&\n instance.state.isVisible\n ) {\n shouldScheduleClickHide = true;\n } else {\n scheduleShow(event);\n }\n\n if (event.type === 'click') {\n isVisibleFromClick = !shouldScheduleClickHide;\n }\n\n if (shouldScheduleClickHide && !wasFocused) {\n scheduleHide(event);\n }\n }\n\n function onMouseMove(event: MouseEvent): void {\n const target = event.target as Node;\n const isCursorOverReferenceOrPopper =\n getCurrentTarget().contains(target) || popper.contains(target);\n\n if (event.type === 'mousemove' && isCursorOverReferenceOrPopper) {\n return;\n }\n\n const popperTreeData = getNestedPopperTree()\n .concat(popper)\n .map((popper) => {\n const instance = popper._tippy!;\n const state = instance.popperInstance?.state;\n\n if (state) {\n return {\n popperRect: popper.getBoundingClientRect(),\n popperState: state,\n props,\n };\n }\n\n return null;\n })\n .filter(Boolean) as PopperTreeData[];\n\n if (isCursorOutsideInteractiveBorder(popperTreeData, event)) {\n cleanupInteractiveMouseListeners();\n scheduleHide(event);\n }\n }\n\n function onMouseLeave(event: MouseEvent): void {\n const shouldBail =\n isEventListenerStopped(event) ||\n (instance.props.trigger.indexOf('click') >= 0 && isVisibleFromClick);\n\n if (shouldBail) {\n return;\n }\n\n if (instance.props.interactive) {\n instance.hideWithInteractivity(event);\n return;\n }\n\n scheduleHide(event);\n }\n\n function onBlurOrFocusOut(event: FocusEvent): void {\n if (\n instance.props.trigger.indexOf('focusin') < 0 &&\n event.target !== getCurrentTarget()\n ) {\n return;\n }\n\n // If focus was moved to within the popper\n if (\n instance.props.interactive &&\n event.relatedTarget &&\n popper.contains(event.relatedTarget as Element)\n ) {\n return;\n }\n\n scheduleHide(event);\n }\n\n function isEventListenerStopped(event: Event): boolean {\n return currentInput.isTouch\n ? getIsCustomTouchBehavior() !== event.type.indexOf('touch') >= 0\n : false;\n }\n\n function createPopperInstance(): void {\n destroyPopperInstance();\n\n const {\n popperOptions,\n placement,\n offset,\n getReferenceClientRect,\n moveTransition,\n } = instance.props;\n\n const arrow = getIsDefaultRenderFn() ? getChildren(popper).arrow : null;\n\n const computedReference = getReferenceClientRect\n ? {\n getBoundingClientRect: getReferenceClientRect,\n contextElement:\n getReferenceClientRect.contextElement || getCurrentTarget(),\n }\n : reference;\n\n const tippyModifier: Modifier<'$$tippy', {}> = {\n name: '$$tippy',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n fn({state}) {\n if (getIsDefaultRenderFn()) {\n const {box} = getDefaultTemplateChildren();\n\n ['placement', 'reference-hidden', 'escaped'].forEach((attr) => {\n if (attr === 'placement') {\n box.setAttribute('data-placement', state.placement);\n } else {\n if (state.attributes.popper[`data-popper-${attr}`]) {\n box.setAttribute(`data-${attr}`, '');\n } else {\n box.removeAttribute(`data-${attr}`);\n }\n }\n });\n\n state.attributes.popper = {};\n }\n },\n };\n\n type TippyModifier = Modifier<'$$tippy', {}>;\n type ExtendedModifiers = StrictModifiers | Partial<TippyModifier>;\n\n const modifiers: Array<ExtendedModifiers> = [\n {\n name: 'offset',\n options: {\n offset,\n },\n },\n {\n name: 'preventOverflow',\n options: {\n padding: {\n top: 2,\n bottom: 2,\n left: 5,\n right: 5,\n },\n },\n },\n {\n name: 'flip',\n options: {\n padding: 5,\n },\n },\n {\n name: 'computeStyles',\n options: {\n adaptive: !moveTransition,\n },\n },\n tippyModifier,\n ];\n\n if (getIsDefaultRenderFn() && arrow) {\n modifiers.push({\n name: 'arrow',\n options: {\n element: arrow,\n padding: 3,\n },\n });\n }\n\n modifiers.push(...(popperOptions?.modifiers || []));\n\n instance.popperInstance = createPopper<ExtendedModifiers>(\n computedReference,\n popper,\n {\n ...popperOptions,\n placement,\n onFirstUpdate,\n modifiers,\n }\n );\n }\n\n function destroyPopperInstance(): void {\n if (instance.popperInstance) {\n instance.popperInstance.destroy();\n instance.popperInstance = null;\n }\n }\n\n function mount(): void {\n const {appendTo} = instance.props;\n\n let parentNode: any;\n\n // By default, we'll append the popper to the triggerTargets's parentNode so\n // it's directly after the reference element so the elements inside the\n // tippy can be tabbed to\n // If there are clipping issues, the user can specify a different appendTo\n // and ensure focus management is handled correctly manually\n const node = getCurrentTarget();\n\n if (\n (instance.props.interactive && appendTo === defaultProps.appendTo) ||\n appendTo === 'parent'\n ) {\n parentNode = node.parentNode;\n } else {\n parentNode = invokeWithArgsOrReturn(appendTo, [node]);\n }\n\n // The popper element needs to exist on the DOM before its position can be\n // updated as Popper needs to read its dimensions\n if (!parentNode.contains(popper)) {\n parentNode.appendChild(popper);\n }\n\n createPopperInstance();\n\n /* istanbul ignore else */\n if (__DEV__) {\n // Accessibility check\n warnWhen(\n instance.props.interactive &&\n appendTo === defaultProps.appendTo &&\n node.nextElementSibling !== popper,\n [\n 'Interactive tippy element may not be accessible via keyboard',\n 'navigation because it is not directly after the reference element',\n 'in the DOM source order.',\n '\\n\\n',\n 'Using a wrapper <div> or <span> tag around the reference element',\n 'solves this by creating a new parentNode context.',\n '\\n\\n',\n 'Specifying `appendTo: document.body` silences this warning, but it',\n 'assumes you are using a focus management solution to handle',\n 'keyboard navigation.',\n '\\n\\n',\n 'See: https://atomiks.github.io/tippyjs/v6/accessibility/#interactivity',\n ].join(' ')\n );\n }\n }\n\n function getNestedPopperTree(): PopperElement[] {\n return arrayFrom(\n popper.querySelectorAll('[data-__NAMESPACE_PREFIX__-root]')\n );\n }\n\n function scheduleShow(event?: Event): void {\n instance.clearDelayTimeouts();\n\n if (event) {\n invokeHook('onTrigger', [instance, event]);\n }\n\n addDocumentPress();\n\n let delay = getDelay(true);\n const [touchValue, touchDelay] = getNormalizedTouchSettings();\n\n if (currentInput.isTouch && touchValue === 'hold' && touchDelay) {\n delay = touchDelay;\n }\n\n if (delay) {\n showTimeout = setTimeout(() => {\n instance.show();\n }, delay);\n } else {\n instance.show();\n }\n }\n\n function scheduleHide(event: Event): void {\n instance.clearDelayTimeouts();\n\n invokeHook('onUntrigger', [instance, event]);\n\n if (!instance.state.isVisible) {\n removeDocumentPress();\n\n return;\n }\n\n // For interactive tippies, scheduleHide is added to a document.body handler\n // from onMouseLeave so must intercept scheduled hides from mousemove/leave\n // events when trigger contains mouseenter and click, and the tip is\n // currently shown as a result of a click.\n if (\n instance.props.trigger.indexOf('mouseenter') >= 0 &&\n instance.props.trigger.indexOf('click') >= 0 &&\n ['mouseleave', 'mousemove'].indexOf(event.type) >= 0 &&\n isVisibleFromClick\n ) {\n return;\n }\n\n const delay = getDelay(false);\n\n if (delay) {\n hideTimeout = setTimeout(() => {\n if (instance.state.isVisible) {\n instance.hide();\n }\n }, delay);\n } else {\n // Fixes a `transitionend` problem when it fires 1 frame too\n // late sometimes, we don't want hide() to be called.\n scheduleHideAnimationFrame = requestAnimationFrame(() => {\n instance.hide();\n });\n }\n }\n\n // ===========================================================================\n // 🔑 Public methods\n // ===========================================================================\n function enable(): void {\n instance.state.isEnabled = true;\n }\n\n function disable(): void {\n // Disabling the instance should also hide it\n // https://github.com/atomiks/tippy.js-react/issues/106\n instance.hide();\n instance.state.isEnabled = false;\n }\n\n function clearDelayTimeouts(): void {\n clearTimeout(showTimeout);\n clearTimeout(hideTimeout);\n cancelAnimationFrame(scheduleHideAnimationFrame);\n }\n\n function setProps(partialProps: Partial<Props>): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('setProps'));\n }\n\n if (instance.state.isDestroyed) {\n return;\n }\n\n invokeHook('onBeforeUpdate', [instance, partialProps]);\n\n removeListeners();\n\n const prevProps = instance.props;\n const nextProps = evaluateProps(reference, {\n ...instance.props,\n ...partialProps,\n ignoreAttributes: true,\n });\n\n instance.props = nextProps;\n\n addListeners();\n\n if (prevProps.interactiveDebounce !== nextProps.interactiveDebounce) {\n cleanupInteractiveMouseListeners();\n debouncedOnMouseMove = debounce(\n onMouseMove,\n nextProps.interactiveDebounce\n );\n }\n\n // Ensure stale aria-expanded attributes are removed\n if (prevProps.triggerTarget && !nextProps.triggerTarget) {\n normalizeToArray(prevProps.triggerTarget).forEach((node) => {\n node.removeAttribute('aria-expanded');\n });\n } else if (nextProps.triggerTarget) {\n reference.removeAttribute('aria-expanded');\n }\n\n handleAriaExpandedAttribute();\n handleStyles();\n\n if (onUpdate) {\n onUpdate(prevProps, nextProps);\n }\n\n if (instance.popperInstance) {\n createPopperInstance();\n\n // Fixes an issue with nested tippies if they are all getting re-rendered,\n // and the nested ones get re-rendered first.\n // https://github.com/atomiks/tippyjs-react/issues/177\n // TODO: find a cleaner / more efficient solution(!)\n getNestedPopperTree().forEach((nestedPopper) => {\n // React (and other UI libs likely) requires a rAF wrapper as it flushes\n // its work in one\n requestAnimationFrame(nestedPopper._tippy!.popperInstance!.forceUpdate);\n });\n }\n\n invokeHook('onAfterUpdate', [instance, partialProps]);\n }\n\n function setContent(content: Content): void {\n instance.setProps({content});\n }\n\n function show(): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('show'));\n }\n\n // Early bail-out\n const isAlreadyVisible = instance.state.isVisible;\n const isDestroyed = instance.state.isDestroyed;\n const isDisabled = !instance.state.isEnabled;\n const isTouchAndTouchDisabled =\n currentInput.isTouch && !instance.props.touch;\n const duration = getValueAtIndexOrReturn(\n instance.props.duration,\n 0,\n defaultProps.duration\n );\n\n if (\n isAlreadyVisible ||\n isDestroyed ||\n isDisabled ||\n isTouchAndTouchDisabled\n ) {\n return;\n }\n\n // Normalize `disabled` behavior across browsers.\n // Firefox allows events on disabled elements, but Chrome doesn't.\n // Using a wrapper element (i.e. <span>) is recommended.\n if (getCurrentTarget().hasAttribute('disabled')) {\n return;\n }\n\n invokeHook('onShow', [instance], false);\n if (instance.props.onShow(instance) === false) {\n return;\n }\n\n instance.state.isVisible = true;\n\n if (getIsDefaultRenderFn()) {\n popper.style.visibility = 'visible';\n }\n\n handleStyles();\n addDocumentPress();\n\n if (!instance.state.isMounted) {\n popper.style.transition = 'none';\n }\n\n // If flipping to the opposite side after hiding at least once, the\n // animation will use the wrong placement without resetting the duration\n if (getIsDefaultRenderFn()) {\n const {box, content} = getDefaultTemplateChildren();\n setTransitionDuration([box, content], 0);\n }\n\n onFirstUpdate = (): void => {\n if (!instance.state.isVisible || ignoreOnFirstUpdate) {\n return;\n }\n\n ignoreOnFirstUpdate = true;\n\n // reflow\n void popper.offsetHeight;\n\n popper.style.transition = instance.props.moveTransition;\n\n if (getIsDefaultRenderFn() && instance.props.animation) {\n const {box, content} = getDefaultTemplateChildren();\n setTransitionDuration([box, content], duration);\n setVisibilityState([box, content], 'visible');\n }\n\n handleAriaContentAttribute();\n handleAriaExpandedAttribute();\n\n pushIfUnique(mountedInstances, instance);\n\n instance.state.isMounted = true;\n invokeHook('onMount', [instance]);\n\n if (instance.props.animation && getIsDefaultRenderFn()) {\n onTransitionedIn(duration, () => {\n instance.state.isShown = true;\n invokeHook('onShown', [instance]);\n });\n }\n };\n\n mount();\n }\n\n function hide(): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('hide'));\n }\n\n // Early bail-out\n const isAlreadyHidden = !instance.state.isVisible;\n const isDestroyed = instance.state.isDestroyed;\n const isDisabled = !instance.state.isEnabled;\n const duration = getValueAtIndexOrReturn(\n instance.props.duration,\n 1,\n defaultProps.duration\n );\n\n if (isAlreadyHidden || isDestroyed || isDisabled) {\n return;\n }\n\n invokeHook('onHide', [instance], false);\n if (instance.props.onHide(instance) === false) {\n return;\n }\n\n instance.state.isVisible = false;\n instance.state.isShown = false;\n ignoreOnFirstUpdate = false;\n isVisibleFromClick = false;\n\n if (getIsDefaultRenderFn()) {\n popper.style.visibility = 'hidden';\n }\n\n cleanupInteractiveMouseListeners();\n removeDocumentPress();\n handleStyles();\n\n if (getIsDefaultRenderFn()) {\n const {box, content} = getDefaultTemplateChildren();\n\n if (instance.props.animation) {\n setTransitionDuration([box, content], duration);\n setVisibilityState([box, content], 'hidden');\n }\n }\n\n handleAriaContentAttribute();\n handleAriaExpandedAttribute();\n\n if (instance.props.animation) {\n if (getIsDefaultRenderFn()) {\n onTransitionedOut(duration, instance.unmount);\n }\n } else {\n instance.unmount();\n }\n }\n\n function hideWithInteractivity(event: MouseEvent): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(\n instance.state.isDestroyed,\n createMemoryLeakWarning('hideWithInteractivity')\n );\n }\n\n getDocument().addEventListener('mousemove', debouncedOnMouseMove);\n pushIfUnique(mouseMoveListeners, debouncedOnMouseMove);\n debouncedOnMouseMove(event);\n }\n\n function unmount(): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('unmount'));\n }\n\n if (instance.state.isVisible) {\n instance.hide();\n }\n\n if (!instance.state.isMounted) {\n return;\n }\n\n destroyPopperInstance();\n\n // If a popper is not interactive, it will be appended outside the popper\n // tree by default. This seems mainly for interactive tippies, but we should\n // find a workaround if possible\n getNestedPopperTree().forEach((nestedPopper) => {\n nestedPopper._tippy!.unmount();\n });\n\n if (popper.parentNode) {\n popper.parentNode.removeChild(popper);\n }\n\n mountedInstances = mountedInstances.filter((i) => i !== instance);\n\n instance.state.isMounted = false;\n invokeHook('onHidden', [instance]);\n }\n\n function destroy(): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('destroy'));\n }\n\n if (instance.state.isDestroyed) {\n return;\n }\n\n instance.clearDelayTimeouts();\n instance.unmount();\n\n removeListeners();\n\n delete reference._tippy;\n\n instance.state.isDestroyed = true;\n\n invokeHook('onDestroy', [instance]);\n }\n}\n","import bindGlobalEventListeners, {\n currentInput,\n} from './bindGlobalEventListeners';\nimport createTippy, {mountedInstances} from './createTippy';\nimport {getArrayOfElements, isElement, isReferenceElement} from './dom-utils';\nimport {defaultProps, setDefaultProps, validateProps} from './props';\nimport {HideAll, HideAllOptions, Instance, Props, Targets} from './types';\nimport {validateTargets, warnWhen} from './validation';\n\nfunction tippy(\n targets: Targets,\n optionalProps: Partial<Props> = {}\n): Instance | Instance[] {\n const plugins = defaultProps.plugins.concat(optionalProps.plugins || []);\n\n /* istanbul ignore else */\n if (__DEV__) {\n validateTargets(targets);\n validateProps(optionalProps, plugins);\n }\n\n bindGlobalEventListeners();\n\n const passedProps: Partial<Props> = {...optionalProps, plugins};\n\n const elements = getArrayOfElements(targets);\n\n /* istanbul ignore else */\n if (__DEV__) {\n const isSingleContentElement = isElement(passedProps.content);\n const isMoreThanOneReferenceElement = elements.length > 1;\n warnWhen(\n isSingleContentElement && isMoreThanOneReferenceElement,\n [\n 'tippy() was passed an Element as the `content` prop, but more than',\n 'one tippy instance was created by this invocation. This means the',\n 'content element will only be appended to the last tippy instance.',\n '\\n\\n',\n 'Instead, pass the .innerHTML of the element, or use a function that',\n 'returns a cloned version of the element instead.',\n '\\n\\n',\n '1) content: element.innerHTML\\n',\n '2) content: () => element.cloneNode(true)',\n ].join(' ')\n );\n }\n\n const instances = elements.reduce<Instance[]>(\n (acc, reference): Instance[] => {\n const instance = reference && createTippy(reference, passedProps);\n\n if (instance) {\n acc.push(instance);\n }\n\n return acc;\n },\n []\n );\n\n return isElement(targets) ? instances[0] : instances;\n}\n\ntippy.defaultProps = defaultProps;\ntippy.setDefaultProps = setDefaultProps;\ntippy.currentInput = currentInput;\n\nexport default tippy;\n\nexport const hideAll: HideAll = ({\n exclude: excludedReferenceOrInstance,\n duration,\n}: HideAllOptions = {}) => {\n mountedInstances.forEach((instance) => {\n let isExcluded = false;\n\n if (excludedReferenceOrInstance) {\n isExcluded = isReferenceElement(excludedReferenceOrInstance)\n ? instance.reference === excludedReferenceOrInstance\n : instance.popper === (excludedReferenceOrInstance as Instance).popper;\n }\n\n if (!isExcluded) {\n const originalDuration = instance.props.duration;\n\n instance.setProps({duration});\n instance.hide();\n\n if (!instance.state.isDestroyed) {\n instance.setProps({duration: originalDuration});\n }\n }\n });\n};\n","import tippy from '..';\nimport {div} from '../dom-utils';\nimport {\n CreateSingleton,\n Plugin,\n CreateSingletonProps,\n ReferenceElement,\n CreateSingletonInstance,\n Instance,\n Props,\n} from '../types';\nimport {removeProperties} from '../utils';\nimport {errorWhen} from '../validation';\n\nconst createSingleton: CreateSingleton = (\n tippyInstances,\n optionalProps = {}\n) => {\n /* istanbul ignore else */\n if (__DEV__) {\n errorWhen(\n !Array.isArray(tippyInstances),\n [\n 'The first argument passed to createSingleton() must be an array of',\n 'tippy instances. The passed value was',\n String(tippyInstances),\n ].join(' ')\n );\n }\n\n let individualInstances = tippyInstances;\n let references: Array<ReferenceElement> = [];\n let currentTarget: Element;\n let overrides = optionalProps.overrides;\n let interceptSetPropsCleanups: Array<() => void> = [];\n\n function setReferences(): void {\n references = individualInstances.map((instance) => instance.reference);\n }\n\n function enableInstances(isEnabled: boolean): void {\n individualInstances.forEach((instance) => {\n if (isEnabled) {\n instance.enable();\n } else {\n instance.disable();\n }\n });\n }\n\n function interceptSetProps(singleton: Instance): Array<() => void> {\n return individualInstances.map((instance) => {\n const originalSetProps = instance.setProps;\n\n instance.setProps = (props): void => {\n originalSetProps(props);\n\n if (instance.reference === currentTarget) {\n singleton.setProps(props);\n }\n };\n\n return (): void => {\n instance.setProps = originalSetProps;\n };\n });\n }\n\n enableInstances(false);\n setReferences();\n\n const plugin: Plugin = {\n fn() {\n return {\n onDestroy(): void {\n enableInstances(true);\n },\n onTrigger(instance, event): void {\n const target = event.currentTarget as Element;\n const index = references.indexOf(target);\n\n // bail-out\n if (target === currentTarget) {\n return;\n }\n\n currentTarget = target;\n\n const overrideProps: Partial<Props> = (overrides || [])\n .concat('content')\n .reduce((acc, prop) => {\n (acc as any)[prop] = individualInstances[index].props[prop];\n return acc;\n }, {});\n\n instance.setProps({\n ...overrideProps,\n getReferenceClientRect:\n typeof overrideProps.getReferenceClientRect === 'function'\n ? overrideProps.getReferenceClientRect\n : (): ClientRect => target.getBoundingClientRect(),\n });\n },\n };\n },\n };\n\n const singleton = tippy(div(), {\n ...removeProperties(optionalProps, ['overrides']),\n plugins: [plugin, ...(optionalProps.plugins || [])],\n triggerTarget: references,\n }) as CreateSingletonInstance<CreateSingletonProps>;\n\n const originalSetProps = singleton.setProps;\n\n singleton.setProps = (props): void => {\n overrides = props.overrides || overrides;\n originalSetProps(props);\n };\n\n singleton.setInstances = (nextInstances): void => {\n enableInstances(true);\n interceptSetPropsCleanups.forEach((fn) => fn());\n\n individualInstances = nextInstances;\n\n enableInstances(false);\n setReferences();\n interceptSetProps(singleton);\n\n singleton.setProps({triggerTarget: references});\n };\n\n interceptSetPropsCleanups = interceptSetProps(singleton);\n\n return singleton;\n};\n\nexport default createSingleton;\n","import tippy from '..';\nimport {defaultProps} from '../props';\nimport {Instance, Props, Targets} from '../types';\nimport {ListenerObject} from '../types-internal';\nimport {normalizeToArray, removeProperties} from '../utils';\nimport {errorWhen} from '../validation';\n\nconst BUBBLING_EVENTS_MAP = {\n mouseover: 'mouseenter',\n focusin: 'focus',\n click: 'click',\n};\n\n/**\n * Creates a delegate instance that controls the creation of tippy instances\n * for child elements (`target` CSS selector).\n */\nfunction delegate(\n targets: Targets,\n props: Partial<Props> & {target: string}\n): Instance | Instance[] {\n /* istanbul ignore else */\n if (__DEV__) {\n errorWhen(\n !(props && props.target),\n [\n 'You must specity a `target` prop indicating a CSS selector string matching',\n 'the target elements that should receive a tippy.',\n ].join(' ')\n );\n }\n\n let listeners: ListenerObject[] = [];\n let childTippyInstances: Instance[] = [];\n let disabled = false;\n\n const {target} = props;\n\n const nativeProps = removeProperties(props, ['target']);\n const parentProps = {...nativeProps, trigger: 'manual', touch: false};\n const childProps = {...nativeProps, showOnCreate: true};\n\n const returnValue = tippy(targets, parentProps);\n const normalizedReturnValue = normalizeToArray(returnValue);\n\n function onTrigger(event: Event): void {\n if (!event.target || disabled) {\n return;\n }\n\n const targetNode = (event.target as Element).closest(target);\n\n if (!targetNode) {\n return;\n }\n\n // Get relevant trigger with fallbacks:\n // 1. Check `data-tippy-trigger` attribute on target node\n // 2. Fallback to `trigger` passed to `delegate()`\n // 3. Fallback to `defaultProps.trigger`\n const trigger =\n targetNode.getAttribute('data-tippy-trigger') ||\n props.trigger ||\n defaultProps.trigger;\n\n // @ts-ignore\n if (targetNode._tippy) {\n return;\n }\n\n if (event.type === 'touchstart' && typeof childProps.touch === 'boolean') {\n return;\n }\n\n if (\n event.type !== 'touchstart' &&\n trigger.indexOf((BUBBLING_EVENTS_MAP as any)[event.type]) < 0\n ) {\n return;\n }\n\n const instance = tippy(targetNode, childProps);\n\n if (instance) {\n childTippyInstances = childTippyInstances.concat(instance);\n }\n }\n\n function on(\n node: Element,\n eventType: string,\n handler: EventListener,\n options: object | boolean = false\n ): void {\n node.addEventListener(eventType, handler, options);\n listeners.push({node, eventType, handler, options});\n }\n\n function addEventListeners(instance: Instance): void {\n const {reference} = instance;\n\n on(reference, 'touchstart', onTrigger);\n on(reference, 'mouseover', onTrigger);\n on(reference, 'focusin', onTrigger);\n on(reference, 'click', onTrigger);\n }\n\n function removeEventListeners(): void {\n listeners.forEach(({node, eventType, handler, options}: ListenerObject) => {\n node.removeEventListener(eventType, handler, options);\n });\n listeners = [];\n }\n\n function applyMutations(instance: Instance): void {\n const originalDestroy = instance.destroy;\n const originalEnable = instance.enable;\n const originalDisable = instance.disable;\n\n instance.destroy = (shouldDestroyChildInstances = true): void => {\n if (shouldDestroyChildInstances) {\n childTippyInstances.forEach((instance) => {\n instance.destroy();\n });\n }\n\n childTippyInstances = [];\n\n removeEventListeners();\n originalDestroy();\n };\n\n instance.enable = (): void => {\n originalEnable();\n childTippyInstances.forEach((instance) => instance.enable());\n disabled = false;\n };\n\n instance.disable = (): void => {\n originalDisable();\n childTippyInstances.forEach((instance) => instance.disable());\n disabled = true;\n };\n\n addEventListeners(instance);\n }\n\n normalizedReturnValue.forEach(applyMutations);\n\n return returnValue;\n}\n\nexport default delegate;\n","import {BACKDROP_CLASS} from '../constants';\nimport {div, setVisibilityState} from '../dom-utils';\nimport {getChildren} from '../template';\nimport {AnimateFill} from '../types';\nimport {errorWhen} from '../validation';\n\nconst animateFill: AnimateFill = {\n name: 'animateFill',\n defaultValue: false,\n fn(instance) {\n // @ts-ignore\n if (!instance.props.render?.$$tippy) {\n if (__DEV__) {\n errorWhen(\n instance.props.animateFill,\n 'The `animateFill` plugin requires the default render function.'\n );\n }\n\n return {};\n }\n\n const {box, content} = getChildren(instance.popper);\n\n const backdrop = instance.props.animateFill\n ? createBackdropElement()\n : null;\n\n return {\n onCreate(): void {\n if (backdrop) {\n box.insertBefore(backdrop, box.firstElementChild!);\n box.setAttribute('data-animatefill', '');\n box.style.overflow = 'hidden';\n\n instance.setProps({arrow: false, animation: 'shift-away'});\n }\n },\n onMount(): void {\n if (backdrop) {\n const {transitionDuration} = box.style;\n const duration = Number(transitionDuration.replace('ms', ''));\n\n // The content should fade in after the backdrop has mostly filled the\n // tooltip element. `clip-path` is the other alternative but is not\n // well-supported and is buggy on some devices.\n content.style.transitionDelay = `${Math.round(duration / 10)}ms`;\n\n backdrop.style.transitionDuration = transitionDuration;\n setVisibilityState([backdrop], 'visible');\n }\n },\n onShow(): void {\n if (backdrop) {\n backdrop.style.transitionDuration = '0ms';\n }\n },\n onHide(): void {\n if (backdrop) {\n setVisibilityState([backdrop], 'hidden');\n }\n },\n };\n },\n};\n\nexport default animateFill;\n\nfunction createBackdropElement(): HTMLDivElement {\n const backdrop = div();\n backdrop.className = BACKDROP_CLASS;\n setVisibilityState([backdrop], 'hidden');\n return backdrop;\n}\n","import {getOwnerDocument, isMouseEvent} from '../dom-utils';\nimport {FollowCursor, Instance} from '../types';\n\nlet mouseCoords = {clientX: 0, clientY: 0};\nlet activeInstances: Array<{instance: Instance; doc: Document}> = [];\n\nfunction storeMouseCoords({clientX, clientY}: MouseEvent): void {\n mouseCoords = {clientX, clientY};\n}\n\nfunction addMouseCoordsListener(doc: Document): void {\n doc.addEventListener('mousemove', storeMouseCoords);\n}\n\nfunction removeMouseCoordsListener(doc: Document): void {\n doc.removeEventListener('mousemove', storeMouseCoords);\n}\n\nconst followCursor: FollowCursor = {\n name: 'followCursor',\n defaultValue: false,\n fn(instance) {\n const reference = instance.reference;\n const doc = getOwnerDocument(instance.props.triggerTarget || reference);\n\n let isInternalUpdate = false;\n let wasFocusEvent = false;\n let isUnmounted = true;\n let prevProps = instance.props;\n\n function getIsInitialBehavior(): boolean {\n return (\n instance.props.followCursor === 'initial' && instance.state.isVisible\n );\n }\n\n function addListener(): void {\n doc.addEventListener('mousemove', onMouseMove);\n }\n\n function removeListener(): void {\n doc.removeEventListener('mousemove', onMouseMove);\n }\n\n function unsetGetReferenceClientRect(): void {\n isInternalUpdate = true;\n instance.setProps({getReferenceClientRect: null});\n isInternalUpdate = false;\n }\n\n function onMouseMove(event: MouseEvent): void {\n // If the instance is interactive, avoid updating the position unless it's\n // over the reference element\n const isCursorOverReference = event.target\n ? reference.contains(event.target as Node)\n : true;\n const {followCursor} = instance.props;\n const {clientX, clientY} = event;\n\n const rect = reference.getBoundingClientRect();\n const relativeX = clientX - rect.left;\n const relativeY = clientY - rect.top;\n\n if (isCursorOverReference || !instance.props.interactive) {\n instance.setProps({\n getReferenceClientRect() {\n const rect = reference.getBoundingClientRect();\n\n let x = clientX;\n let y = clientY;\n\n if (followCursor === 'initial') {\n x = rect.left + relativeX;\n y = rect.top + relativeY;\n }\n\n const top = followCursor === 'horizontal' ? rect.top : y;\n const right = followCursor === 'vertical' ? rect.right : x;\n const bottom = followCursor === 'horizontal' ? rect.bottom : y;\n const left = followCursor === 'vertical' ? rect.left : x;\n\n return {\n width: right - left,\n height: bottom - top,\n top,\n right,\n bottom,\n left,\n };\n },\n });\n }\n }\n\n function create(): void {\n if (instance.props.followCursor) {\n activeInstances.push({instance, doc});\n addMouseCoordsListener(doc);\n }\n }\n\n function destroy(): void {\n activeInstances = activeInstances.filter(\n (data) => data.instance !== instance\n );\n\n if (activeInstances.filter((data) => data.doc === doc).length === 0) {\n removeMouseCoordsListener(doc);\n }\n }\n\n return {\n onCreate: create,\n onDestroy: destroy,\n onBeforeUpdate(): void {\n prevProps = instance.props;\n },\n onAfterUpdate(_, {followCursor}): void {\n if (isInternalUpdate) {\n return;\n }\n\n if (\n followCursor !== undefined &&\n prevProps.followCursor !== followCursor\n ) {\n destroy();\n\n if (followCursor) {\n create();\n\n if (\n instance.state.isMounted &&\n !wasFocusEvent &&\n !getIsInitialBehavior()\n ) {\n addListener();\n }\n } else {\n removeListener();\n unsetGetReferenceClientRect();\n }\n }\n },\n onMount(): void {\n if (instance.props.followCursor && !wasFocusEvent) {\n if (isUnmounted) {\n onMouseMove(mouseCoords as MouseEvent);\n isUnmounted = false;\n }\n\n if (!getIsInitialBehavior()) {\n addListener();\n }\n }\n },\n onTrigger(_, event): void {\n if (isMouseEvent(event)) {\n mouseCoords = {clientX: event.clientX, clientY: event.clientY};\n }\n wasFocusEvent = event.type === 'focus';\n },\n onHidden(): void {\n if (instance.props.followCursor) {\n unsetGetReferenceClientRect();\n removeListener();\n isUnmounted = true;\n }\n },\n };\n },\n};\n\nexport default followCursor;\n","import {Modifier, Placement} from '@popperjs/core';\nimport {isMouseEvent} from '../dom-utils';\nimport {BasePlacement, InlinePositioning, Props} from '../types';\nimport {arrayFrom, getBasePlacement} from '../utils';\n\nfunction getProps(props: Props, modifier: Modifier<any, any>): Partial<Props> {\n return {\n popperOptions: {\n ...props.popperOptions,\n modifiers: [\n ...(props.popperOptions?.modifiers || []).filter(\n ({name}) => name !== modifier.name\n ),\n modifier,\n ],\n },\n };\n}\n\nconst inlinePositioning: InlinePositioning = {\n name: 'inlinePositioning',\n defaultValue: false,\n fn(instance) {\n const {reference} = instance;\n\n function isEnabled(): boolean {\n return !!instance.props.inlinePositioning;\n }\n\n let placement: Placement;\n let cursorRectIndex = -1;\n let isInternalUpdate = false;\n\n const modifier: Modifier<'tippyInlinePositioning', {}> = {\n name: 'tippyInlinePositioning',\n enabled: true,\n phase: 'afterWrite',\n fn({state}) {\n if (isEnabled()) {\n if (placement !== state.placement) {\n instance.setProps({\n getReferenceClientRect: () =>\n getReferenceClientRect(state.placement),\n });\n }\n\n placement = state.placement;\n }\n },\n };\n\n function getReferenceClientRect(placement: Placement): ClientRect {\n return getInlineBoundingClientRect(\n getBasePlacement(placement),\n reference.getBoundingClientRect(),\n arrayFrom(reference.getClientRects()),\n cursorRectIndex\n );\n }\n\n function setInternalProps(partialProps: Partial<Props>): void {\n isInternalUpdate = true;\n instance.setProps(partialProps);\n isInternalUpdate = false;\n }\n\n function addModifier(): void {\n if (!isInternalUpdate) {\n setInternalProps(getProps(instance.props, modifier));\n }\n }\n\n return {\n onCreate: addModifier,\n onAfterUpdate: addModifier,\n onTrigger(_, event): void {\n if (isMouseEvent(event)) {\n const rects = arrayFrom(instance.reference.getClientRects());\n const cursorRect = rects.find(\n (rect) =>\n rect.left - 2 <= event.clientX &&\n rect.right + 2 >= event.clientX &&\n rect.top - 2 <= event.clientY &&\n rect.bottom + 2 >= event.clientY\n );\n\n cursorRectIndex = rects.indexOf(cursorRect);\n }\n },\n onUntrigger(): void {\n cursorRectIndex = -1;\n },\n };\n },\n};\n\nexport default inlinePositioning;\n\nexport function getInlineBoundingClientRect(\n currentBasePlacement: BasePlacement | null,\n boundingRect: ClientRect,\n clientRects: ClientRect[],\n cursorRectIndex: number\n): ClientRect {\n // Not an inline element, or placement is not yet known\n if (clientRects.length < 2 || currentBasePlacement === null) {\n return boundingRect;\n }\n\n // There are two rects and they are disjoined\n if (\n clientRects.length === 2 &&\n cursorRectIndex >= 0 &&\n clientRects[0].left > clientRects[1].right\n ) {\n return clientRects[cursorRectIndex] || boundingRect;\n }\n\n switch (currentBasePlacement) {\n case 'top':\n case 'bottom': {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = currentBasePlacement === 'top';\n\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n\n return {top, bottom, left, right, width, height};\n }\n case 'left':\n case 'right': {\n const minLeft = Math.min(...clientRects.map((rects) => rects.left));\n const maxRight = Math.max(...clientRects.map((rects) => rects.right));\n const measureRects = clientRects.filter((rect) =>\n currentBasePlacement === 'left'\n ? rect.left === minLeft\n : rect.right === maxRight\n );\n\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n\n return {top, bottom, left, right, width, height};\n }\n default: {\n return boundingRect;\n }\n }\n}\n","import {VirtualElement} from '@popperjs/core';\nimport {ReferenceElement, Sticky} from '../types';\n\nconst sticky: Sticky = {\n name: 'sticky',\n defaultValue: false,\n fn(instance) {\n const {reference, popper} = instance;\n\n function getReference(): ReferenceElement | VirtualElement {\n return instance.popperInstance\n ? instance.popperInstance.state.elements.reference\n : reference;\n }\n\n function shouldCheck(value: 'reference' | 'popper'): boolean {\n return instance.props.sticky === true || instance.props.sticky === value;\n }\n\n let prevRefRect: ClientRect | null = null;\n let prevPopRect: ClientRect | null = null;\n\n function updatePosition(): void {\n const currentRefRect = shouldCheck('reference')\n ? getReference().getBoundingClientRect()\n : null;\n const currentPopRect = shouldCheck('popper')\n ? popper.getBoundingClientRect()\n : null;\n\n if (\n (currentRefRect && areRectsDifferent(prevRefRect, currentRefRect)) ||\n (currentPopRect && areRectsDifferent(prevPopRect, currentPopRect))\n ) {\n if (instance.popperInstance) {\n instance.popperInstance.update();\n }\n }\n\n prevRefRect = currentRefRect;\n prevPopRect = currentPopRect;\n\n if (instance.state.isMounted) {\n requestAnimationFrame(updatePosition);\n }\n }\n\n return {\n onMount(): void {\n if (instance.props.sticky) {\n updatePosition();\n }\n },\n };\n },\n};\n\nexport default sticky;\n\nfunction areRectsDifferent(\n rectA: ClientRect | null,\n rectB: ClientRect | null\n): boolean {\n if (rectA && rectB) {\n return (\n rectA.top !== rectB.top ||\n rectA.right !== rectB.right ||\n rectA.bottom !== rectB.bottom ||\n rectA.left !== rectB.left\n );\n }\n\n return true;\n}\n","import tippy from '../src';\nimport {render} from '../src/template';\n\ntippy.setDefaultProps({render});\n\nexport {default, hideAll} from '../src';\nexport {default as createSingleton} from '../src/addons/createSingleton';\nexport {default as delegate} from '../src/addons/delegate';\nexport {default as animateFill} from '../src/plugins/animateFill';\nexport {default as followCursor} from '../src/plugins/followCursor';\nexport {default as inlinePositioning} from '../src/plugins/inlinePositioning';\nexport {default as sticky} from '../src/plugins/sticky';\nexport {ROUND_ARROW as roundArrow} from '../src/constants';\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n"],"sourceRoot":""}