PageSourceSearch

https://www.proshares.com/areas/proshares/assets/scripts.js?17092026-091142

js proshares.com collected 2026-09-24 18:29:21 UTC 406,612 bytes, 11,743 lines download raw bytes

vendor: 4,179 bytes, lines 1-117
1/*!
2 * 
3 *         Copyright 2026, VShift, All rights reserved.
4 *         Build: 2026-08-25 16:45:17+01:00
5 *       
6 */
7/******/ (function(modules) { // webpackBootstrap
8/******/ 	// The module cache
9/******/ 	var installedModules = {};
10/******/
11/******/ 	// The require function
12/******/ 	function __webpack_require__(moduleId) {
13/******/
14/******/ 		// Check if module is in cache
15/******/ 		if(installedModules[moduleId]) {
16/******/ 			return installedModules[moduleId].exports;
17/******/ 		}
18/******/ 		// Create a new module (and put it into the cache)
19/******/ 		var module = installedModules[moduleId] = {
20/******/ 			i: moduleId,
21/******/ 			l: false,
22/******/ 			exports: {}
23/******/ 		};
24/******/
25/******/ 		// Execute the module function
26/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
27/******/
28/******/ 		// Flag the module as loaded
29/******/ 		module.l = true;
30/******/
31/******/ 		// Return the exports of the module
32/******/ 		return module.exports;
33/******/ 	}
34/******/
35/******/
36/******/ 	// expose the modules object (__webpack_modules__)
37/******/ 	__webpack_require__.m = modules;
38/******/
39/******/ 	// expose the module cache
40/******/ 	__webpack_require__.c = installedModules;
41/******/
42/******/ 	// define getter function for harmony exports
43/******/ 	__webpack_require__.d = function(exports, name, getter) {
44/******/ 		if(!__webpack_require__.o(exports, name)) {
45/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
46/******/ 		}
47/******/ 	};
48/******/
49/******/ 	// define __esModule on exports
50/******/ 	__webpack_require__.r = function(exports) {
51/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
52/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
53/******/ 		}
54/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
55/******/ 	};
56/******/
57/******/ 	// create a fake namespace object
58/******/ 	// mode & 1: value is a module id, require it
59/******/ 	// mode & 2: merge all properties of value into the ns
60/******/ 	// mode & 4: return value when already ns object
61/******/ 	// mode & 8|1: behave like require
62/******/ 	__webpack_require__.t = function(value, mode) {
63/******/ 		if(mode & 1) value = __webpack_require__(value);
64/******/ 		if(mode & 8) return value;
65/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
66/******/ 		var ns = Object.create(null);
67/******/ 		__webpack_require__.r(ns);
68/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
69/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
70/******/ 		return ns;
71/******/ 	};
72/******/
73/******/ 	// getDefaultExport function for compatibility with non-harmony modules
74/******/ 	__webpack_require__.n = function(module) {
75/******/ 		var getter = module && module.__esModule ?
76/******/ 			function getDefault() { return module['default']; } :
77/******/ 			function getModuleExports() { return module; };
78/******/ 		__webpack_require__.d(getter, 'a', getter);
79/******/ 		return getter;
80/******/ 	};
81/******/
82/******/ 	// Object.prototype.hasOwnProperty.call
83/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
84/******/
85/******/ 	// __webpack_public_path__
86/******/ 	__webpack_require__.p = "/";
87/******/
88/******/
89/******/ 	// Load entry module and return exports
90/******/ 	return __webpack_require__(__webpack_require__.s = 754);
91/******/ })
92/************************************************************************/
93/******/ ({
94
95/***/ 10:
96/***/ (function(module, exports) {
97
98module.exports = function (exec) {
99  try {
100    return !!exec();
101  } catch (error) {
102    return true;
103  }
104};
105
106
107/***/ }),
108
109/***/ 100:
110/***/ (function(module, exports) {
111
112// IE8- don't enum bug keys
113module.exports = [
114  'constructor',
115  'hasOwnProperty',
116  'isPrototypeOf',
117  'propertyIsEnumerable',
vendor: 4,560 bytes, lines 118-290
118  'toLocaleString',
119  'toString',
120  'valueOf'
121];
122
123
124/***/ }),
125
126/***/ 101:
127/***/ (function(module, exports, __webpack_require__) {
128
129var internalObjectKeys = __webpack_require__(146);
130var enumBugKeys = __webpack_require__(100);
131
132// `Object.keys` method
133// https://tc39.github.io/ecma262/#sec-object.keys
134module.exports = Object.keys || function keys(O) {
135  return internalObjectKeys(O, enumBugKeys);
136};
137
138
139/***/ }),
140
141/***/ 102:
142/***/ (function(module, exports, __webpack_require__) {
143
144var defineProperty = __webpack_require__(24).f;
145var has = __webpack_require__(15);
146var wellKnownSymbol = __webpack_require__(11);
147
148var TO_STRING_TAG = wellKnownSymbol('toStringTag');
149
150module.exports = function (it, TAG, STATIC) {
151  if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {
152    defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });
153  }
154};
155
156
157/***/ }),
158
159/***/ 103:
160/***/ (function(module, exports) {
161
162module.exports = function (it) {
163  if (typeof it != 'function') {
164    throw TypeError(String(it) + ' is not a function');
165  } return it;
166};
167
168
169/***/ }),
170
171/***/ 104:
172/***/ (function(module, exports, __webpack_require__) {
173
174var isObject = __webpack_require__(17);
175var isArray = __webpack_require__(65);
176var wellKnownSymbol = __webpack_require__(11);
177
178var SPECIES = wellKnownSymbol('species');
179
180// `ArraySpeciesCreate` abstract operation
181// https://tc39.github.io/ecma262/#sec-arrayspeciescreate
182module.exports = function (originalArray, length) {
183  var C;
184  if (isArray(originalArray)) {
185    C = originalArray.constructor;
186    // cross-realm fallback
187    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
188    else if (isObject(C)) {
189      C = C[SPECIES];
190      if (C === null) C = undefined;
191    }
192  } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
193};
194
195
196/***/ }),
197
198/***/ 105:
199/***/ (function(module, exports, __webpack_require__) {
200
201"use strict";
202
203var fixRegExpWellKnownSymbolLogic = __webpack_require__(83);
204var anObject = __webpack_require__(13);
205var toLength = __webpack_require__(18);
206var requireObjectCoercible = __webpack_require__(20);
207var advanceStringIndex = __webpack_require__(106);
208var regExpExec = __webpack_require__(84);
209
210// @@match logic
211fixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {
212  return [
213    // `String.prototype.match` method
214    // https://tc39.github.io/ecma262/#sec-string.prototype.match
215    function match(regexp) {
216      var O = requireObjectCoercible(this);
217      var matcher = regexp == undefined ? undefined : regexp[MATCH];
218      return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
219    },
220    // `RegExp.prototype[@@match]` method
221    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
222    function (regexp) {
223      var res = maybeCallNative(nativeMatch, regexp, this);
224      if (res.done) return res.value;
225
226      var rx = anObject(regexp);
227      var S = String(this);
228
229      if (!rx.global) return regExpExec(rx, S);
230
231      var fullUnicode = rx.unicode;
232      rx.lastIndex = 0;
233      var A = [];
234      var n = 0;
235      var result;
236      while ((result = regExpExec(rx, S)) !== null) {
237        var matchStr = String(result[0]);
238        A[n] = matchStr;
239        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
240        n++;
241      }
242      return n === 0 ? null : A;
243    }
244  ];
245});
246
247
248/***/ }),
249
250/***/ 106:
251/***/ (function(module, exports, __webpack_require__) {
252
253"use strict";
254
255var charAt = __webpack_require__(149).charAt;
256
257// `AdvanceStringIndex` abstract operation
258// https://tc39.github.io/ecma262/#sec-advancestringindex
259module.exports = function (S, index, unicode) {
260  return index + (unicode ? charAt(S, index).length : 1);
261};
262
263
264/***/ }),
265
266/***/ 107:
267/***/ (function(module, exports, __webpack_require__) {
268
269var wellKnownSymbol = __webpack_require__(11);
270
271var TO_STRING_TAG = wellKnownSymbol('toStringTag');
272var test = {};
273
274test[TO_STRING_TAG] = 'z';
275
276module.exports = String(test) === '[object z]';
277
278
279/***/ }),
280
281/***/ 11:
282/***/ (function(module, exports, __webpack_require__) {
283
284var global = __webpack_require__(12);
285var shared = __webpack_require__(118);
286var has = __webpack_require__(15);
287var uid = __webpack_require__(119);
288var NATIVE_SYMBOL = __webpack_require__(122);
289var USE_SYMBOL_AS_UID = __webpack_require__(181);
290
vendor: 5,785 bytes, lines 291-493
291var WellKnownSymbolsStore = shared('wks');
292var Symbol = global.Symbol;
293var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;
294
295module.exports = function (name) {
296  if (!has(WellKnownSymbolsStore, name)) {
297    if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];
298    else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
299  } return WellKnownSymbolsStore[name];
300};
301
302
303/***/ }),
304
305/***/ 116:
306/***/ (function(module, exports, __webpack_require__) {
307
308var global = __webpack_require__(12);
309var isObject = __webpack_require__(17);
310
311var document = global.document;
312// typeof document.createElement is 'object' in old IE
313var EXISTS = isObject(document) && isObject(document.createElement);
314
315module.exports = function (it) {
316  return EXISTS ? document.createElement(it) : {};
317};
318
319
320/***/ }),
321
322/***/ 117:
323/***/ (function(module, exports, __webpack_require__) {
324
325var store = __webpack_require__(144);
326
327var functionToString = Function.toString;
328
329// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
330if (typeof store.inspectSource != 'function') {
331  store.inspectSource = function (it) {
332    return functionToString.call(it);
333  };
334}
335
336module.exports = store.inspectSource;
337
338
339/***/ }),
340
341/***/ 118:
342/***/ (function(module, exports, __webpack_require__) {
343
344var IS_PURE = __webpack_require__(49);
345var store = __webpack_require__(144);
346
347(module.exports = function (key, value) {
348  return store[key] || (store[key] = value !== undefined ? value : {});
349})('versions', []).push({
350  version: '3.6.5',
351  mode: IS_PURE ? 'pure' : 'global',
352  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
353});
354
355
356/***/ }),
357
358/***/ 119:
359/***/ (function(module, exports) {
360
361var id = 0;
362var postfix = Math.random();
363
364module.exports = function (key) {
365  return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
366};
367
368
369/***/ }),
370
371/***/ 12:
372/***/ (function(module, exports) {
373
374var check = function (it) {
375  return it && it.Math == Math && it;
376};
377
378// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
379module.exports =
380  // eslint-disable-next-line no-undef
381  check(typeof globalThis == 'object' && globalThis) ||
382  check(typeof window == 'object' && window) ||
383  check(typeof self == 'object' && self) ||
384  check(typeof global == 'object' && global) ||
385  // eslint-disable-next-line no-new-func
386  Function('return this')();
387
388
389/***/ }),
390
391/***/ 120:
392/***/ (function(module, exports, __webpack_require__) {
393
394var toIndexedObject = __webpack_require__(30);
395var toLength = __webpack_require__(18);
396var toAbsoluteIndex = __webpack_require__(121);
397
398// `Array.prototype.{ indexOf, includes }` methods implementation
399var createMethod = function (IS_INCLUDES) {
400  return function ($this, el, fromIndex) {
401    var O = toIndexedObject($this);
402    var length = toLength(O.length);
403    var index = toAbsoluteIndex(fromIndex, length);
404    var value;
405    // Array#includes uses SameValueZero equality algorithm
406    // eslint-disable-next-line no-self-compare
407    if (IS_INCLUDES && el != el) while (length > index) {
408      value = O[index++];
409      // eslint-disable-next-line no-self-compare
410      if (value != value) return true;
411    // Array#indexOf ignores holes, Array#includes - not
412    } else for (;length > index; index++) {
413      if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
414    } return !IS_INCLUDES && -1;
415  };
416};
417
418module.exports = {
419  // `Array.prototype.includes` method
420  // https://tc39.github.io/ecma262/#sec-array.prototype.includes
421  includes: createMethod(true),
422  // `Array.prototype.indexOf` method
423  // https://tc39.github.io/ecma262/#sec-array.prototype.indexof
424  indexOf: createMethod(false)
425};
426
427
428/***/ }),
429
430/***/ 121:
431/***/ (function(module, exports, __webpack_require__) {
432
433var toInteger = __webpack_require__(51);
434
435var max = Math.max;
436var min = Math.min;
437
438// Helper for a popular repeating case of the spec:
439// Let integer be ? ToInteger(index).
440// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
441module.exports = function (index, length) {
442  var integer = toInteger(index);
443  return integer < 0 ? max(integer + length, 0) : min(integer, length);
444};
445
446
447/***/ }),
448
449/***/ 122:
450/***/ (function(module, exports, __webpack_require__) {
451
452var fails = __webpack_require__(10);
453
454module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
455  // Chrome 38 Symbol has incorrect toString conversion
456  // eslint-disable-next-line no-undef
457  return !String(Symbol());
458});
459
460
461/***/ }),
462
463/***/ 123:
464/***/ (function(module, exports, __webpack_require__) {
465
466var anObject = __webpack_require__(13);
467var defineProperties = __webpack_require__(182);
468var enumBugKeys = __webpack_require__(100);
469var hiddenKeys = __webpack_require__(79);
470var html = __webpack_require__(183);
471var documentCreateElement = __webpack_require__(116);
472var sharedKey = __webpack_require__(99);
473
474var GT = '>';
475var LT = '<';
476var PROTOTYPE = 'prototype';
477var SCRIPT = 'script';
478var IE_PROTO = sharedKey('IE_PROTO');
479
480var EmptyConstructor = function () { /* empty */ };
481
482var scriptTag = function (content) {
483  return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
484};
485
486// Create object with fake `null` prototype: use ActiveX Object with cleared prototype
487var NullProtoObjectViaActiveX = function (activeXDocument) {
488  activeXDocument.write(scriptTag(''));
489  activeXDocument.close();
490  var temp = activeXDocument.parentWindow.Object;
491  activeXDocument = null; // avoid memory leak
492  return temp;
493};
vendor: 4,360 bytes, lines 494-637
494
495// Create object with fake `null` prototype: use iframe Object with cleared prototype
496var NullProtoObjectViaIFrame = function () {
497  // Thrash, waste and sodomy: IE GC bug
498  var iframe = documentCreateElement('iframe');
499  var JS = 'java' + SCRIPT + ':';
500  var iframeDocument;
501  iframe.style.display = 'none';
502  html.appendChild(iframe);
503  // https://github.com/zloirock/core-js/issues/475
504  iframe.src = String(JS);
505  iframeDocument = iframe.contentWindow.document;
506  iframeDocument.open();
507  iframeDocument.write(scriptTag('document.F=Object'));
508  iframeDocument.close();
509  return iframeDocument.F;
510};
511
512// Check for document.domain and active x support
513// No need to use active x approach when document.domain is not set
514// see https://github.com/es-shims/es5-shim/issues/150
515// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
516// avoid IE GC bug
517var activeXDocument;
518var NullProtoObject = function () {
519  try {
520    /* global ActiveXObject */
521    activeXDocument = document.domain && new ActiveXObject('htmlfile');
522  } catch (error) { /* ignore */ }
523  NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
524  var length = enumBugKeys.length;
525  while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
526  return NullProtoObject();
527};
528
529hiddenKeys[IE_PROTO] = true;
530
531// `Object.create` method
532// https://tc39.github.io/ecma262/#sec-object.create
533module.exports = Object.create || function create(O, Properties) {
534  var result;
535  if (O !== null) {
536    EmptyConstructor[PROTOTYPE] = anObject(O);
537    result = new EmptyConstructor();
538    EmptyConstructor[PROTOTYPE] = null;
539    // add "__proto__" for Object.getPrototypeOf polyfill
540    result[IE_PROTO] = O;
541  } else result = NullProtoObject();
542  return Properties === undefined ? result : defineProperties(result, Properties);
543};
544
545
546/***/ }),
547
548/***/ 124:
549/***/ (function(module, exports, __webpack_require__) {
550
551var global = __webpack_require__(12);
552var userAgent = __webpack_require__(184);
553
554var process = global.process;
555var versions = process && process.versions;
556var v8 = versions && versions.v8;
557var match, version;
558
559if (v8) {
560  match = v8.split('.');
561  version = match[0] + match[1];
562} else if (userAgent) {
563  match = userAgent.match(/Edge\/(\d+)/);
564  if (!match || match[1] >= 74) {
565    match = userAgent.match(/Chrome\/(\d+)/);
566    if (match) version = match[1];
567  }
568}
569
570module.exports = version && +version;
571
572
573/***/ }),
574
575/***/ 125:
576/***/ (function(module, exports, __webpack_require__) {
577
578"use strict";
579
580var $ = __webpack_require__(8);
581var $includes = __webpack_require__(120).includes;
582var addToUnscopables = __webpack_require__(126);
583var arrayMethodUsesToLength = __webpack_require__(31);
584
585var USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });
586
587// `Array.prototype.includes` method
588// https://tc39.github.io/ecma262/#sec-array.prototype.includes
589$({ target: 'Array', proto: true, forced: !USES_TO_LENGTH }, {
590  includes: function includes(el /* , fromIndex = 0 */) {
591    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
592  }
593});
594
595// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
596addToUnscopables('includes');
597
598
599/***/ }),
600
601/***/ 126:
602/***/ (function(module, exports, __webpack_require__) {
603
604var wellKnownSymbol = __webpack_require__(11);
605var create = __webpack_require__(123);
606var definePropertyModule = __webpack_require__(24);
607
608var UNSCOPABLES = wellKnownSymbol('unscopables');
609var ArrayPrototype = Array.prototype;
610
611// Array.prototype[@@unscopables]
612// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
613if (ArrayPrototype[UNSCOPABLES] == undefined) {
614  definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {
615    configurable: true,
616    value: create(null)
617  });
618}
619
620// add a key to Array.prototype[@@unscopables]
621module.exports = function (key) {
622  ArrayPrototype[UNSCOPABLES][key] = true;
623};
624
625
626/***/ }),
627
628/***/ 127:
629/***/ (function(module, exports, __webpack_require__) {
630
631"use strict";
632
633var $ = __webpack_require__(8);
634var notARegExp = __webpack_require__(128);
635var requireObjectCoercible = __webpack_require__(20);
636var correctIsRegExpLogic = __webpack_require__(129);
637
vendor: 4,360 bytes, lines 638-810
638// `String.prototype.includes` method
639// https://tc39.github.io/ecma262/#sec-string.prototype.includes
640$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {
641  includes: function includes(searchString /* , position = 0 */) {
642    return !!~String(requireObjectCoercible(this))
643      .indexOf(notARegExp(searchString), arguments.length > 1 ? arguments[1] : undefined);
644  }
645});
646
647
648/***/ }),
649
650/***/ 128:
651/***/ (function(module, exports, __webpack_require__) {
652
653var isRegExp = __webpack_require__(152);
654
655module.exports = function (it) {
656  if (isRegExp(it)) {
657    throw TypeError("The method doesn't accept regular expressions");
658  } return it;
659};
660
661
662/***/ }),
663
664/***/ 129:
665/***/ (function(module, exports, __webpack_require__) {
666
667var wellKnownSymbol = __webpack_require__(11);
668
669var MATCH = wellKnownSymbol('match');
670
671module.exports = function (METHOD_NAME) {
672  var regexp = /./;
673  try {
674    '/./'[METHOD_NAME](regexp);
675  } catch (e) {
676    try {
677      regexp[MATCH] = false;
678      return '/./'[METHOD_NAME](regexp);
679    } catch (f) { /* empty */ }
680  } return false;
681};
682
683
684/***/ }),
685
686/***/ 13:
687/***/ (function(module, exports, __webpack_require__) {
688
689var isObject = __webpack_require__(17);
690
691module.exports = function (it) {
692  if (!isObject(it)) {
693    throw TypeError(String(it) + ' is not an object');
694  } return it;
695};
696
697
698/***/ }),
699
700/***/ 142:
701/***/ (function(module, exports, __webpack_require__) {
702
703"use strict";
704
705var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
706var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
707
708// Nashorn ~ JDK8 bug
709var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
710
711// `Object.prototype.propertyIsEnumerable` method implementation
712// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable
713exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
714  var descriptor = getOwnPropertyDescriptor(this, V);
715  return !!descriptor && descriptor.enumerable;
716} : nativePropertyIsEnumerable;
717
718
719/***/ }),
720
721/***/ 143:
722/***/ (function(module, exports, __webpack_require__) {
723
724var DESCRIPTORS = __webpack_require__(21);
725var fails = __webpack_require__(10);
726var createElement = __webpack_require__(116);
727
728// Thank's IE8 for his funny defineProperty
729module.exports = !DESCRIPTORS && !fails(function () {
730  return Object.defineProperty(createElement('div'), 'a', {
731    get: function () { return 7; }
732  }).a != 7;
733});
734
735
736/***/ }),
737
738/***/ 144:
739/***/ (function(module, exports, __webpack_require__) {
740
741var global = __webpack_require__(12);
742var setGlobal = __webpack_require__(98);
743
744var SHARED = '__core-js_shared__';
745var store = global[SHARED] || setGlobal(SHARED, {});
746
747module.exports = store;
748
749
750/***/ }),
751
752/***/ 145:
753/***/ (function(module, exports, __webpack_require__) {
754
755var internalObjectKeys = __webpack_require__(146);
756var enumBugKeys = __webpack_require__(100);
757
758var hiddenKeys = enumBugKeys.concat('length', 'prototype');
759
760// `Object.getOwnPropertyNames` method
761// https://tc39.github.io/ecma262/#sec-object.getownpropertynames
762exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
763  return internalObjectKeys(O, hiddenKeys);
764};
765
766
767/***/ }),
768
769/***/ 146:
770/***/ (function(module, exports, __webpack_require__) {
771
772var has = __webpack_require__(15);
773var toIndexedObject = __webpack_require__(30);
774var indexOf = __webpack_require__(120).indexOf;
775var hiddenKeys = __webpack_require__(79);
776
777module.exports = function (object, names) {
778  var O = toIndexedObject(object);
779  var i = 0;
780  var result = [];
781  var key;
782  for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);
783  // Don't enum bug & hidden keys
784  while (names.length > i) if (has(O, key = names[i++])) {
785    ~indexOf(result, key) || result.push(key);
786  }
787  return result;
788};
789
790
791/***/ }),
792
793/***/ 147:
794/***/ (function(module, exports) {
795
796exports.f = Object.getOwnPropertySymbols;
797
798
799/***/ }),
800
801/***/ 148:
802/***/ (function(module, exports, __webpack_require__) {
803
804"use strict";
805
806var $forEach = __webpack_require__(52).forEach;
807var arrayMethodIsStrict = __webpack_require__(82);
808var arrayMethodUsesToLength = __webpack_require__(31);
809
810var STRICT_METHOD = arrayMethodIsStrict('forEach');
vendor: 5,760 bytes, lines 811-970
811var USES_TO_LENGTH = arrayMethodUsesToLength('forEach');
812
813// `Array.prototype.forEach` method implementation
814// https://tc39.github.io/ecma262/#sec-array.prototype.foreach
815module.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) {
816  return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
817} : [].forEach;
818
819
820/***/ }),
821
822/***/ 149:
823/***/ (function(module, exports, __webpack_require__) {
824
825var toInteger = __webpack_require__(51);
826var requireObjectCoercible = __webpack_require__(20);
827
828// `String.prototype.{ codePointAt, at }` methods implementation
829var createMethod = function (CONVERT_TO_STRING) {
830  return function ($this, pos) {
831    var S = String(requireObjectCoercible($this));
832    var position = toInteger(pos);
833    var size = S.length;
834    var first, second;
835    if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
836    first = S.charCodeAt(position);
837    return first < 0xD800 || first > 0xDBFF || position + 1 === size
838      || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
839        ? CONVERT_TO_STRING ? S.charAt(position) : first
840        : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
841  };
842};
843
844module.exports = {
845  // `String.prototype.codePointAt` method
846  // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat
847  codeAt: createMethod(false),
848  // `String.prototype.at` method
849  // https://github.com/mathiasbynens/String.prototype.at
850  charAt: createMethod(true)
851};
852
853
854/***/ }),
855
856/***/ 15:
857/***/ (function(module, exports) {
858
859var hasOwnProperty = {}.hasOwnProperty;
860
861module.exports = function (it, key) {
862  return hasOwnProperty.call(it, key);
863};
864
865
866/***/ }),
867
868/***/ 150:
869/***/ (function(module, exports) {
870
871function _arrayLikeToArray(arr, len) {
872  if (len == null || len > arr.length) len = arr.length;
873
874  for (var i = 0, arr2 = new Array(len); i < len; i++) {
875    arr2[i] = arr[i];
876  }
877
878  return arr2;
879}
880
881module.exports = _arrayLikeToArray;
882
883/***/ }),
884
885/***/ 151:
886/***/ (function(module, exports, __webpack_require__) {
887
888"use strict";
889
890var fixRegExpWellKnownSymbolLogic = __webpack_require__(83);
891var isRegExp = __webpack_require__(152);
892var anObject = __webpack_require__(13);
893var requireObjectCoercible = __webpack_require__(20);
894var speciesConstructor = __webpack_require__(189);
895var advanceStringIndex = __webpack_require__(106);
896var toLength = __webpack_require__(18);
897var callRegExpExec = __webpack_require__(84);
898var regexpExec = __webpack_require__(66);
899var fails = __webpack_require__(10);
900
901var arrayPush = [].push;
902var min = Math.min;
903var MAX_UINT32 = 0xFFFFFFFF;
904
905// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
906var SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });
907
908// @@split logic
909fixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {
910  var internalSplit;
911  if (
912    'abbc'.split(/(b)*/)[1] == 'c' ||
913    'test'.split(/(?:)/, -1).length != 4 ||
914    'ab'.split(/(?:ab)*/).length != 2 ||
915    '.'.split(/(.?)(.?)/).length != 4 ||
916    '.'.split(/()()/).length > 1 ||
917    ''.split(/.?/).length
918  ) {
919    // based on es5-shim implementation, need to rework it
920    internalSplit = function (separator, limit) {
921      var string = String(requireObjectCoercible(this));
922      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
923      if (lim === 0) return [];
924      if (separator === undefined) return [string];
925      // If `separator` is not a regex, use native split
926      if (!isRegExp(separator)) {
927        return nativeSplit.call(string, separator, lim);
928      }
929      var output = [];
930      var flags = (separator.ignoreCase ? 'i' : '') +
931                  (separator.multiline ? 'm' : '') +
932                  (separator.unicode ? 'u' : '') +
933                  (separator.sticky ? 'y' : '');
934      var lastLastIndex = 0;
935      // Make `global` and avoid `lastIndex` issues by working with a copy
936      var separatorCopy = new RegExp(separator.source, flags + 'g');
937      var match, lastIndex, lastLength;
938      while (match = regexpExec.call(separatorCopy, string)) {
939        lastIndex = separatorCopy.lastIndex;
940        if (lastIndex > lastLastIndex) {
941          output.push(string.slice(lastLastIndex, match.index));
942          if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));
943          lastLength = match[0].length;
944          lastLastIndex = lastIndex;
945          if (output.length >= lim) break;
946        }
947        if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop
948      }
949      if (lastLastIndex === string.length) {
950        if (lastLength || !separatorCopy.test('')) output.push('');
951      } else output.push(string.slice(lastLastIndex));
952      return output.length > lim ? output.slice(0, lim) : output;
953    };
954  // Chakra, V8
955  } else if ('0'.split(undefined, 0).length) {
956    internalSplit = function (separator, limit) {
957      return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);
958    };
959  } else internalSplit = nativeSplit;
960
961  return [
962    // `String.prototype.split` method
963    // https://tc39.github.io/ecma262/#sec-string.prototype.split
964    function split(separator, limit) {
965      var O = requireObjectCoercible(this);
966      var splitter = separator == undefined ? undefined : separator[SPLIT];
967      return splitter !== undefined
968        ? splitter.call(separator, O, limit)
969        : internalSplit.call(String(O), separator, limit);
970    },
vendor: 9,030 bytes, lines 971-1301
971    // `RegExp.prototype[@@split]` method
972    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
973    //
974    // NOTE: This cannot be properly polyfilled in engines that don't support
975    // the 'y' flag.
976    function (regexp, limit) {
977      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);
978      if (res.done) return res.value;
979
980      var rx = anObject(regexp);
981      var S = String(this);
982      var C = speciesConstructor(rx, RegExp);
983
984      var unicodeMatching = rx.unicode;
985      var flags = (rx.ignoreCase ? 'i' : '') +
986                  (rx.multiline ? 'm' : '') +
987                  (rx.unicode ? 'u' : '') +
988                  (SUPPORTS_Y ? 'y' : 'g');
989
990      // ^(? + rx + ) is needed, in combination with some S slicing, to
991      // simulate the 'y' flag.
992      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
993      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
994      if (lim === 0) return [];
995      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
996      var p = 0;
997      var q = 0;
998      var A = [];
999      while (q < S.length) {
1000        splitter.lastIndex = SUPPORTS_Y ? q : 0;
1001        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
1002        var e;
1003        if (
1004          z === null ||
1005          (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
1006        ) {
1007          q = advanceStringIndex(S, q, unicodeMatching);
1008        } else {
1009          A.push(S.slice(p, q));
1010          if (A.length === lim) return A;
1011          for (var i = 1; i <= z.length - 1; i++) {
1012            A.push(z[i]);
1013            if (A.length === lim) return A;
1014          }
1015          q = p = e;
1016        }
1017      }
1018      A.push(S.slice(p));
1019      return A;
1020    }
1021  ];
1022}, !SUPPORTS_Y);
1023
1024
1025/***/ }),
1026
1027/***/ 152:
1028/***/ (function(module, exports, __webpack_require__) {
1029
1030var isObject = __webpack_require__(17);
1031var classof = __webpack_require__(40);
1032var wellKnownSymbol = __webpack_require__(11);
1033
1034var MATCH = wellKnownSymbol('match');
1035
1036// `IsRegExp` abstract operation
1037// https://tc39.github.io/ecma262/#sec-isregexp
1038module.exports = function (it) {
1039  var isRegExp;
1040  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');
1041};
1042
1043
1044/***/ }),
1045
1046/***/ 154:
1047/***/ (function(module, exports, __webpack_require__) {
1048
1049"use strict";
1050
1051var $ = __webpack_require__(8);
1052var $trim = __webpack_require__(226).trim;
1053var forcedStringTrimMethod = __webpack_require__(227);
1054
1055// `String.prototype.trim` method
1056// https://tc39.github.io/ecma262/#sec-string.prototype.trim
1057$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
1058  trim: function trim() {
1059    return $trim(this);
1060  }
1061});
1062
1063
1064/***/ }),
1065
1066/***/ 155:
1067/***/ (function(module, exports) {
1068
1069// a string of all valid unicode whitespaces
1070// eslint-disable-next-line max-len
1071module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
1072
1073
1074/***/ }),
1075
1076/***/ 156:
1077/***/ (function(module, exports, __webpack_require__) {
1078
1079var TO_STRING_TAG_SUPPORT = __webpack_require__(107);
1080var classofRaw = __webpack_require__(40);
1081var wellKnownSymbol = __webpack_require__(11);
1082
1083var TO_STRING_TAG = wellKnownSymbol('toStringTag');
1084// ES3 wrong here
1085var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
1086
1087// fallback for IE11 Script Access Denied error
1088var tryGet = function (it, key) {
1089  try {
1090    return it[key];
1091  } catch (error) { /* empty */ }
1092};
1093
1094// getting tag from ES6+ `Object.prototype.toString`
1095module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
1096  var O, tag, result;
1097  return it === undefined ? 'Undefined' : it === null ? 'Null'
1098    // @@toStringTag case
1099    : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag
1100    // builtinTag case
1101    : CORRECT_ARGUMENTS ? classofRaw(O)
1102    // ES3 arguments fallback
1103    : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
1104};
1105
1106
1107/***/ }),
1108
1109/***/ 157:
1110/***/ (function(module, exports) {
1111
1112module.exports = {};
1113
1114
1115/***/ }),
1116
1117/***/ 17:
1118/***/ (function(module, exports) {
1119
1120module.exports = function (it) {
1121  return typeof it === 'object' ? it !== null : typeof it === 'function';
1122};
1123
1124
1125/***/ }),
1126
1127/***/ 177:
1128/***/ (function(module, exports, __webpack_require__) {
1129
1130var has = __webpack_require__(15);
1131var ownKeys = __webpack_require__(178);
1132var getOwnPropertyDescriptorModule = __webpack_require__(47);
1133var definePropertyModule = __webpack_require__(24);
1134
1135module.exports = function (target, source) {
1136  var keys = ownKeys(source);
1137  var defineProperty = definePropertyModule.f;
1138  var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
1139  for (var i = 0; i < keys.length; i++) {
1140    var key = keys[i];
1141    if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
1142  }
1143};
1144
1145
1146/***/ }),
1147
1148/***/ 178:
1149/***/ (function(module, exports, __webpack_require__) {
1150
1151var getBuiltIn = __webpack_require__(50);
1152var getOwnPropertyNamesModule = __webpack_require__(145);
1153var getOwnPropertySymbolsModule = __webpack_require__(147);
1154var anObject = __webpack_require__(13);
1155
1156// all object keys, includes non-enumerable and symbols
1157module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
1158  var keys = getOwnPropertyNamesModule.f(anObject(it));
1159  var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
1160  return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
1161};
1162
1163
1164/***/ }),
1165
1166/***/ 179:
1167/***/ (function(module, exports, __webpack_require__) {
1168
1169var global = __webpack_require__(12);
1170
1171module.exports = global;
1172
1173
1174/***/ }),
1175
1176/***/ 18:
1177/***/ (function(module, exports, __webpack_require__) {
1178
1179var toInteger = __webpack_require__(51);
1180
1181var min = Math.min;
1182
1183// `ToLength` abstract operation
1184// https://tc39.github.io/ecma262/#sec-tolength
1185module.exports = function (argument) {
1186  return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
1187};
1188
1189
1190/***/ }),
1191
1192/***/ 180:
1193/***/ (function(module, exports, __webpack_require__) {
1194
1195var fails = __webpack_require__(10);
1196
1197var replacement = /#|\.prototype\./;
1198
1199var isForced = function (feature, detection) {
1200  var value = data[normalize(feature)];
1201  return value == POLYFILL ? true
1202    : value == NATIVE ? false
1203    : typeof detection == 'function' ? fails(detection)
1204    : !!detection;
1205};
1206
1207var normalize = isForced.normalize = function (string) {
1208  return String(string).replace(replacement, '.').toLowerCase();
1209};
1210
1211var data = isForced.data = {};
1212var NATIVE = isForced.NATIVE = 'N';
1213var POLYFILL = isForced.POLYFILL = 'P';
1214
1215module.exports = isForced;
1216
1217
1218/***/ }),
1219
1220/***/ 181:
1221/***/ (function(module, exports, __webpack_require__) {
1222
1223var NATIVE_SYMBOL = __webpack_require__(122);
1224
1225module.exports = NATIVE_SYMBOL
1226  // eslint-disable-next-line no-undef
1227  && !Symbol.sham
1228  // eslint-disable-next-line no-undef
1229  && typeof Symbol.iterator == 'symbol';
1230
1231
1232/***/ }),
1233
1234/***/ 182:
1235/***/ (function(module, exports, __webpack_require__) {
1236
1237var DESCRIPTORS = __webpack_require__(21);
1238var definePropertyModule = __webpack_require__(24);
1239var anObject = __webpack_require__(13);
1240var objectKeys = __webpack_require__(101);
1241
1242// `Object.defineProperties` method
1243// https://tc39.github.io/ecma262/#sec-object.defineproperties
1244module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {
1245  anObject(O);
1246  var keys = objectKeys(Properties);
1247  var length = keys.length;
1248  var index = 0;
1249  var key;
1250  while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);
1251  return O;
1252};
1253
1254
1255/***/ }),
1256
1257/***/ 183:
1258/***/ (function(module, exports, __webpack_require__) {
1259
1260var getBuiltIn = __webpack_require__(50);
1261
1262module.exports = getBuiltIn('document', 'documentElement');
1263
1264
1265/***/ }),
1266
1267/***/ 184:
1268/***/ (function(module, exports, __webpack_require__) {
1269
1270var getBuiltIn = __webpack_require__(50);
1271
1272module.exports = getBuiltIn('navigator', 'userAgent') || '';
1273
1274
1275/***/ }),
1276
1277/***/ 185:
1278/***/ (function(module, exports, __webpack_require__) {
1279
1280"use strict";
1281
1282var anObject = __webpack_require__(13);
1283
1284// `RegExp.prototype.flags` getter implementation
1285// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags
1286module.exports = function () {
1287  var that = anObject(this);
1288  var result = '';
1289  if (that.global) result += 'g';
1290  if (that.ignoreCase) result += 'i';
1291  if (that.multiline) result += 'm';
1292  if (that.dotAll) result += 's';
1293  if (that.unicode) result += 'u';
1294  if (that.sticky) result += 'y';
1295  return result;
1296};
1297
1298
1299/***/ }),
1300
1301/***/ 186:
vendor: 6,072 bytes, lines 1302-1498
1302/***/ (function(module, exports) {
1303
1304// iterable DOM collections
1305// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
1306module.exports = {
1307  CSSRuleList: 0,
1308  CSSStyleDeclaration: 0,
1309  CSSValueList: 0,
1310  ClientRectList: 0,
1311  DOMRectList: 0,
1312  DOMStringList: 0,
1313  DOMTokenList: 1,
1314  DataTransferItemList: 0,
1315  FileList: 0,
1316  HTMLAllCollection: 0,
1317  HTMLCollection: 0,
1318  HTMLFormElement: 0,
1319  HTMLSelectElement: 0,
1320  MediaList: 0,
1321  MimeTypeArray: 0,
1322  NamedNodeMap: 0,
1323  NodeList: 1,
1324  PaintRequestList: 0,
1325  Plugin: 0,
1326  PluginArray: 0,
1327  SVGLengthList: 0,
1328  SVGNumberList: 0,
1329  SVGPathSegList: 0,
1330  SVGPointList: 0,
1331  SVGStringList: 0,
1332  SVGTransformList: 0,
1333  SourceBufferList: 0,
1334  StyleSheetList: 0,
1335  TextTrackCueList: 0,
1336  TextTrackList: 0,
1337  TouchList: 0
1338};
1339
1340
1341/***/ }),
1342
1343/***/ 187:
1344/***/ (function(module, exports, __webpack_require__) {
1345
1346var arrayLikeToArray = __webpack_require__(150);
1347
1348function _unsupportedIterableToArray(o, minLen) {
1349  if (!o) return;
1350  if (typeof o === "string") return arrayLikeToArray(o, minLen);
1351  var n = Object.prototype.toString.call(o).slice(8, -1);
1352  if (n === "Object" && o.constructor) n = o.constructor.name;
1353  if (n === "Map" || n === "Set") return Array.from(o);
1354  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
1355}
1356
1357module.exports = _unsupportedIterableToArray;
1358
1359/***/ }),
1360
1361/***/ 188:
1362/***/ (function(module, exports, __webpack_require__) {
1363
1364"use strict";
1365
1366var $ = __webpack_require__(8);
1367var IndexedObject = __webpack_require__(77);
1368var toIndexedObject = __webpack_require__(30);
1369var arrayMethodIsStrict = __webpack_require__(82);
1370
1371var nativeJoin = [].join;
1372
1373var ES3_STRINGS = IndexedObject != Object;
1374var STRICT_METHOD = arrayMethodIsStrict('join', ',');
1375
1376// `Array.prototype.join` method
1377// https://tc39.github.io/ecma262/#sec-array.prototype.join
1378$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {
1379  join: function join(separator) {
1380    return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);
1381  }
1382});
1383
1384
1385/***/ }),
1386
1387/***/ 189:
1388/***/ (function(module, exports, __webpack_require__) {
1389
1390var anObject = __webpack_require__(13);
1391var aFunction = __webpack_require__(103);
1392var wellKnownSymbol = __webpack_require__(11);
1393
1394var SPECIES = wellKnownSymbol('species');
1395
1396// `SpeciesConstructor` abstract operation
1397// https://tc39.github.io/ecma262/#sec-speciesconstructor
1398module.exports = function (O, defaultConstructor) {
1399  var C = anObject(O).constructor;
1400  var S;
1401  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);
1402};
1403
1404
1405/***/ }),
1406
1407/***/ 190:
1408/***/ (function(module, exports, __webpack_require__) {
1409
1410"use strict";
1411
1412var $ = __webpack_require__(8);
1413var isObject = __webpack_require__(17);
1414var isArray = __webpack_require__(65);
1415var toAbsoluteIndex = __webpack_require__(121);
1416var toLength = __webpack_require__(18);
1417var toIndexedObject = __webpack_require__(30);
1418var createProperty = __webpack_require__(81);
1419var wellKnownSymbol = __webpack_require__(11);
1420var arrayMethodHasSpeciesSupport = __webpack_require__(56);
1421var arrayMethodUsesToLength = __webpack_require__(31);
1422
1423var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');
1424var USES_TO_LENGTH = arrayMethodUsesToLength('slice', { ACCESSORS: true, 0: 0, 1: 2 });
1425
1426var SPECIES = wellKnownSymbol('species');
1427var nativeSlice = [].slice;
1428var max = Math.max;
1429
1430// `Array.prototype.slice` method
1431// https://tc39.github.io/ecma262/#sec-array.prototype.slice
1432// fallback for not array-like ES3 strings and DOM objects
1433$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {
1434  slice: function slice(start, end) {
1435    var O = toIndexedObject(this);
1436    var length = toLength(O.length);
1437    var k = toAbsoluteIndex(start, length);
1438    var fin = toAbsoluteIndex(end === undefined ? length : end, length);
1439    // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible
1440    var Constructor, result, n;
1441    if (isArray(O)) {
1442      Constructor = O.constructor;
1443      // cross-realm fallback
1444      if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {
1445        Constructor = undefined;
1446      } else if (isObject(Constructor)) {
1447        Constructor = Constructor[SPECIES];
1448        if (Constructor === null) Constructor = undefined;
1449      }
1450      if (Constructor === Array || Constructor === undefined) {
1451        return nativeSlice.call(O, k, fin);
1452      }
1453    }
1454    result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));
1455    for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);
1456    result.length = n;
1457    return result;
1458  }
1459});
1460
1461
1462/***/ }),
1463
1464/***/ 192:
1465/***/ (function(module, exports, __webpack_require__) {
1466
1467"use strict";
1468
1469var $ = __webpack_require__(8);
1470var $some = __webpack_require__(52).some;
1471var arrayMethodIsStrict = __webpack_require__(82);
1472var arrayMethodUsesToLength = __webpack_require__(31);
1473
1474var STRICT_METHOD = arrayMethodIsStrict('some');
1475var USES_TO_LENGTH = arrayMethodUsesToLength('some');
1476
1477// `Array.prototype.some` method
1478// https://tc39.github.io/ecma262/#sec-array.prototype.some
1479$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {
1480  some: function some(callbackfn /* , thisArg */) {
1481    return $some(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
1482  }
1483});
1484
1485
1486/***/ }),
1487
1488/***/ 193:
1489/***/ (function(module, exports, __webpack_require__) {
1490
1491var TO_STRING_TAG_SUPPORT = __webpack_require__(107);
1492var redefine = __webpack_require__(41);
1493var toString = __webpack_require__(228);
1494
1495// `Object.prototype.toString` method
1496// https://tc39.github.io/ecma262/#sec-object.prototype.tostring
1497if (!TO_STRING_TAG_SUPPORT) {
1498  redefine(Object.prototype, 'toString', toString, { unsafe: true });
vendor: 10,833 bytes, lines 1499-1876
1499}
1500
1501
1502/***/ }),
1503
1504/***/ 195:
1505/***/ (function(module, exports, __webpack_require__) {
1506
1507var classof = __webpack_require__(156);
1508var Iterators = __webpack_require__(157);
1509var wellKnownSymbol = __webpack_require__(11);
1510
1511var ITERATOR = wellKnownSymbol('iterator');
1512
1513module.exports = function (it) {
1514  if (it != undefined) return it[ITERATOR]
1515    || it['@@iterator']
1516    || Iterators[classof(it)];
1517};
1518
1519
1520/***/ }),
1521
1522/***/ 20:
1523/***/ (function(module, exports) {
1524
1525// `RequireObjectCoercible` abstract operation
1526// https://tc39.github.io/ecma262/#sec-requireobjectcoercible
1527module.exports = function (it) {
1528  if (it == undefined) throw TypeError("Can't call method on " + it);
1529  return it;
1530};
1531
1532
1533/***/ }),
1534
1535/***/ 21:
1536/***/ (function(module, exports, __webpack_require__) {
1537
1538var fails = __webpack_require__(10);
1539
1540// Thank's IE8 for his funny defineProperty
1541module.exports = !fails(function () {
1542  return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
1543});
1544
1545
1546/***/ }),
1547
1548/***/ 219:
1549/***/ (function(module, exports, __webpack_require__) {
1550
1551var global = __webpack_require__(12);
1552var inspectSource = __webpack_require__(117);
1553
1554var WeakMap = global.WeakMap;
1555
1556module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));
1557
1558
1559/***/ }),
1560
1561/***/ 22:
1562/***/ (function(module, exports, __webpack_require__) {
1563
1564var $ = __webpack_require__(8);
1565var toObject = __webpack_require__(34);
1566var nativeKeys = __webpack_require__(101);
1567var fails = __webpack_require__(10);
1568
1569var FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });
1570
1571// `Object.keys` method
1572// https://tc39.github.io/ecma262/#sec-object.keys
1573$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {
1574  keys: function keys(it) {
1575    return nativeKeys(toObject(it));
1576  }
1577});
1578
1579
1580/***/ }),
1581
1582/***/ 220:
1583/***/ (function(module, exports, __webpack_require__) {
1584
1585"use strict";
1586
1587
1588var fails = __webpack_require__(10);
1589
1590// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
1591// so we use an intermediate function.
1592function RE(s, f) {
1593  return RegExp(s, f);
1594}
1595
1596exports.UNSUPPORTED_Y = fails(function () {
1597  // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
1598  var re = RE('a', 'y');
1599  re.lastIndex = 2;
1600  return re.exec('abcd') != null;
1601});
1602
1603exports.BROKEN_CARET = fails(function () {
1604  // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
1605  var re = RE('^r', 'gy');
1606  re.lastIndex = 2;
1607  return re.exec('str') != null;
1608});
1609
1610
1611/***/ }),
1612
1613/***/ 221:
1614/***/ (function(module, exports, __webpack_require__) {
1615
1616var arrayLikeToArray = __webpack_require__(150);
1617
1618function _arrayWithoutHoles(arr) {
1619  if (Array.isArray(arr)) return arrayLikeToArray(arr);
1620}
1621
1622module.exports = _arrayWithoutHoles;
1623
1624/***/ }),
1625
1626/***/ 222:
1627/***/ (function(module, exports) {
1628
1629function _iterableToArray(iter) {
1630  if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);
1631}
1632
1633module.exports = _iterableToArray;
1634
1635/***/ }),
1636
1637/***/ 223:
1638/***/ (function(module, exports) {
1639
1640function _nonIterableSpread() {
1641  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1642}
1643
1644module.exports = _nonIterableSpread;
1645
1646/***/ }),
1647
1648/***/ 226:
1649/***/ (function(module, exports, __webpack_require__) {
1650
1651var requireObjectCoercible = __webpack_require__(20);
1652var whitespaces = __webpack_require__(155);
1653
1654var whitespace = '[' + whitespaces + ']';
1655var ltrim = RegExp('^' + whitespace + whitespace + '*');
1656var rtrim = RegExp(whitespace + whitespace + '*$');
1657
1658// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
1659var createMethod = function (TYPE) {
1660  return function ($this) {
1661    var string = String(requireObjectCoercible($this));
1662    if (TYPE & 1) string = string.replace(ltrim, '');
1663    if (TYPE & 2) string = string.replace(rtrim, '');
1664    return string;
1665  };
1666};
1667
1668module.exports = {
1669  // `String.prototype.{ trimLeft, trimStart }` methods
1670  // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart
1671  start: createMethod(1),
1672  // `String.prototype.{ trimRight, trimEnd }` methods
1673  // https://tc39.github.io/ecma262/#sec-string.prototype.trimend
1674  end: createMethod(2),
1675  // `String.prototype.trim` method
1676  // https://tc39.github.io/ecma262/#sec-string.prototype.trim
1677  trim: createMethod(3)
1678};
1679
1680
1681/***/ }),
1682
1683/***/ 227:
1684/***/ (function(module, exports, __webpack_require__) {
1685
1686var fails = __webpack_require__(10);
1687var whitespaces = __webpack_require__(155);
1688
1689var non = '\u200B\u0085\u180E';
1690
1691// check that a method works with the correct list
1692// of whitespaces and has a correct name
1693module.exports = function (METHOD_NAME) {
1694  return fails(function () {
1695    return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;
1696  });
1697};
1698
1699
1700/***/ }),
1701
1702/***/ 228:
1703/***/ (function(module, exports, __webpack_require__) {
1704
1705"use strict";
1706
1707var TO_STRING_TAG_SUPPORT = __webpack_require__(107);
1708var classof = __webpack_require__(156);
1709
1710// `Object.prototype.toString` method implementation
1711// https://tc39.github.io/ecma262/#sec-object.prototype.tostring
1712module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {
1713  return '[object ' + classof(this) + ']';
1714};
1715
1716
1717/***/ }),
1718
1719/***/ 229:
1720/***/ (function(module, exports, __webpack_require__) {
1721
1722"use strict";
1723
1724var $ = __webpack_require__(8);
1725var getOwnPropertyDescriptor = __webpack_require__(47).f;
1726var toLength = __webpack_require__(18);
1727var notARegExp = __webpack_require__(128);
1728var requireObjectCoercible = __webpack_require__(20);
1729var correctIsRegExpLogic = __webpack_require__(129);
1730var IS_PURE = __webpack_require__(49);
1731
1732var nativeEndsWith = ''.endsWith;
1733var min = Math.min;
1734
1735var CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('endsWith');
1736// https://github.com/zloirock/core-js/pull/702
1737var MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {
1738  var descriptor = getOwnPropertyDescriptor(String.prototype, 'endsWith');
1739  return descriptor && !descriptor.writable;
1740}();
1741
1742// `String.prototype.endsWith` method
1743// https://tc39.github.io/ecma262/#sec-string.prototype.endswith
1744$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {
1745  endsWith: function endsWith(searchString /* , endPosition = @length */) {
1746    var that = String(requireObjectCoercible(this));
1747    notARegExp(searchString);
1748    var endPosition = arguments.length > 1 ? arguments[1] : undefined;
1749    var len = toLength(that.length);
1750    var end = endPosition === undefined ? len : min(toLength(endPosition), len);
1751    var search = String(searchString);
1752    return nativeEndsWith
1753      ? nativeEndsWith.call(that, search, end)
1754      : that.slice(end - search.length, end) === search;
1755  }
1756});
1757
1758
1759/***/ }),
1760
1761/***/ 230:
1762/***/ (function(module, exports, __webpack_require__) {
1763
1764"use strict";
1765
1766var toIndexedObject = __webpack_require__(30);
1767var addToUnscopables = __webpack_require__(126);
1768var Iterators = __webpack_require__(157);
1769var InternalStateModule = __webpack_require__(64);
1770var defineIterator = __webpack_require__(258);
1771
1772var ARRAY_ITERATOR = 'Array Iterator';
1773var setInternalState = InternalStateModule.set;
1774var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);
1775
1776// `Array.prototype.entries` method
1777// https://tc39.github.io/ecma262/#sec-array.prototype.entries
1778// `Array.prototype.keys` method
1779// https://tc39.github.io/ecma262/#sec-array.prototype.keys
1780// `Array.prototype.values` method
1781// https://tc39.github.io/ecma262/#sec-array.prototype.values
1782// `Array.prototype[@@iterator]` method
1783// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator
1784// `CreateArrayIterator` internal method
1785// https://tc39.github.io/ecma262/#sec-createarrayiterator
1786module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
1787  setInternalState(this, {
1788    type: ARRAY_ITERATOR,
1789    target: toIndexedObject(iterated), // target
1790    index: 0,                          // next index
1791    kind: kind                         // kind
1792  });
1793// `%ArrayIteratorPrototype%.next` method
1794// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next
1795}, function () {
1796  var state = getInternalState(this);
1797  var target = state.target;
1798  var kind = state.kind;
1799  var index = state.index++;
1800  if (!target || index >= target.length) {
1801    state.target = undefined;
1802    return { value: undefined, done: true };
1803  }
1804  if (kind == 'keys') return { value: index, done: false };
1805  if (kind == 'values') return { value: target[index], done: false };
1806  return { value: [index, target[index]], done: false };
1807}, 'values');
1808
1809// argumentsList[@@iterator] is %ArrayProto_values%
1810// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject
1811// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject
1812Iterators.Arguments = Iterators.Array;
1813
1814// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
1815addToUnscopables('keys');
1816addToUnscopables('values');
1817addToUnscopables('entries');
1818
1819
1820/***/ }),
1821
1822/***/ 231:
1823/***/ (function(module, exports) {
1824
1825module.exports = function (it, Constructor, name) {
1826  if (!(it instanceof Constructor)) {
1827    throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');
1828  } return it;
1829};
1830
1831
1832/***/ }),
1833
1834/***/ 238:
1835/***/ (function(module, exports, __webpack_require__) {
1836
1837module.exports = __webpack_require__(268);
1838
1839
1840/***/ }),
1841
1842/***/ 24:
1843/***/ (function(module, exports, __webpack_require__) {
1844
1845var DESCRIPTORS = __webpack_require__(21);
1846var IE8_DOM_DEFINE = __webpack_require__(143);
1847var anObject = __webpack_require__(13);
1848var toPrimitive = __webpack_require__(78);
1849
1850var nativeDefineProperty = Object.defineProperty;
1851
1852// `Object.defineProperty` method
1853// https://tc39.github.io/ecma262/#sec-object.defineproperty
1854exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
1855  anObject(O);
1856  P = toPrimitive(P, true);
1857  anObject(Attributes);
1858  if (IE8_DOM_DEFINE) try {
1859    return nativeDefineProperty(O, P, Attributes);
1860  } catch (error) { /* empty */ }
1861  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
1862  if ('value' in Attributes) O[P] = Attributes.value;
1863  return O;
1864};
1865
1866
1867/***/ }),
1868
1869/***/ 25:
1870/***/ (function(module, exports, __webpack_require__) {
1871
1872"use strict";
1873
1874var $ = __webpack_require__(8);
1875var $filter = __webpack_require__(52).filter;
1876var arrayMethodHasSpeciesSupport = __webpack_require__(56);
vendor: 4,128 bytes, lines 1877-2007
1877var arrayMethodUsesToLength = __webpack_require__(31);
1878
1879var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');
1880// Edge 14- issue
1881var USES_TO_LENGTH = arrayMethodUsesToLength('filter');
1882
1883// `Array.prototype.filter` method
1884// https://tc39.github.io/ecma262/#sec-array.prototype.filter
1885// with adding support of @@species
1886$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {
1887  filter: function filter(callbackfn /* , thisArg */) {
1888    return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
1889  }
1890});
1891
1892
1893/***/ }),
1894
1895/***/ 254:
1896/***/ (function(module, exports, __webpack_require__) {
1897
1898"use strict";
1899
1900var bind = __webpack_require__(80);
1901var toObject = __webpack_require__(34);
1902var callWithSafeIterationClosing = __webpack_require__(255);
1903var isArrayIteratorMethod = __webpack_require__(256);
1904var toLength = __webpack_require__(18);
1905var createProperty = __webpack_require__(81);
1906var getIteratorMethod = __webpack_require__(195);
1907
1908// `Array.from` method implementation
1909// https://tc39.github.io/ecma262/#sec-array.from
1910module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
1911  var O = toObject(arrayLike);
1912  var C = typeof this == 'function' ? this : Array;
1913  var argumentsLength = arguments.length;
1914  var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
1915  var mapping = mapfn !== undefined;
1916  var iteratorMethod = getIteratorMethod(O);
1917  var index = 0;
1918  var length, result, step, iterator, next, value;
1919  if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);
1920  // if the target is not iterable or it's an array with the default iterator - use a simple case
1921  if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {
1922    iterator = iteratorMethod.call(O);
1923    next = iterator.next;
1924    result = new C();
1925    for (;!(step = next.call(iterator)).done; index++) {
1926      value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;
1927      createProperty(result, index, value);
1928    }
1929  } else {
1930    length = toLength(O.length);
1931    result = new C(length);
1932    for (;length > index; index++) {
1933      value = mapping ? mapfn(O[index], index) : O[index];
1934      createProperty(result, index, value);
1935    }
1936  }
1937  result.length = index;
1938  return result;
1939};
1940
1941
1942/***/ }),
1943
1944/***/ 255:
1945/***/ (function(module, exports, __webpack_require__) {
1946
1947var anObject = __webpack_require__(13);
1948
1949// call something on iterator step with safe closing on error
1950module.exports = function (iterator, fn, value, ENTRIES) {
1951  try {
1952    return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);
1953  // 7.4.6 IteratorClose(iterator, completion)
1954  } catch (error) {
1955    var returnMethod = iterator['return'];
1956    if (returnMethod !== undefined) anObject(returnMethod.call(iterator));
1957    throw error;
1958  }
1959};
1960
1961
1962/***/ }),
1963
1964/***/ 256:
1965/***/ (function(module, exports, __webpack_require__) {
1966
1967var wellKnownSymbol = __webpack_require__(11);
1968var Iterators = __webpack_require__(157);
1969
1970var ITERATOR = wellKnownSymbol('iterator');
1971var ArrayPrototype = Array.prototype;
1972
1973// check on default Array iterator
1974module.exports = function (it) {
1975  return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
1976};
1977
1978
1979/***/ }),
1980
1981/***/ 257:
1982/***/ (function(module, exports, __webpack_require__) {
1983
1984var wellKnownSymbol = __webpack_require__(11);
1985
1986var ITERATOR = wellKnownSymbol('iterator');
1987var SAFE_CLOSING = false;
1988
1989try {
1990  var called = 0;
1991  var iteratorWithReturn = {
1992    next: function () {
1993      return { done: !!called++ };
1994    },
1995    'return': function () {
1996      SAFE_CLOSING = true;
1997    }
1998  };
1999  iteratorWithReturn[ITERATOR] = function () {
2000    return this;
2001  };
2002  // eslint-disable-next-line no-throw-literal
2003  Array.from(iteratorWithReturn, function () { throw 2; });
2004} catch (error) { /* empty */ }
2005
2006module.exports = function (exec, SKIP_CLOSING) {
2007  if (!SKIP_CLOSING && !SAFE_CLOSING) return false;
vendor: 8,436 bytes, lines 2008-2261
2008  var ITERATION_SUPPORT = false;
2009  try {
2010    var object = {};
2011    object[ITERATOR] = function () {
2012      return {
2013        next: function () {
2014          return { done: ITERATION_SUPPORT = true };
2015        }
2016      };
2017    };
2018    exec(object);
2019  } catch (error) { /* empty */ }
2020  return ITERATION_SUPPORT;
2021};
2022
2023
2024/***/ }),
2025
2026/***/ 258:
2027/***/ (function(module, exports, __webpack_require__) {
2028
2029"use strict";
2030
2031var $ = __webpack_require__(8);
2032var createIteratorConstructor = __webpack_require__(259);
2033var getPrototypeOf = __webpack_require__(261);
2034var setPrototypeOf = __webpack_require__(759);
2035var setToStringTag = __webpack_require__(102);
2036var createNonEnumerableProperty = __webpack_require__(28);
2037var redefine = __webpack_require__(41);
2038var wellKnownSymbol = __webpack_require__(11);
2039var IS_PURE = __webpack_require__(49);
2040var Iterators = __webpack_require__(157);
2041var IteratorsCore = __webpack_require__(260);
2042
2043var IteratorPrototype = IteratorsCore.IteratorPrototype;
2044var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
2045var ITERATOR = wellKnownSymbol('iterator');
2046var KEYS = 'keys';
2047var VALUES = 'values';
2048var ENTRIES = 'entries';
2049
2050var returnThis = function () { return this; };
2051
2052module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
2053  createIteratorConstructor(IteratorConstructor, NAME, next);
2054
2055  var getIterationMethod = function (KIND) {
2056    if (KIND === DEFAULT && defaultIterator) return defaultIterator;
2057    if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];
2058    switch (KIND) {
2059      case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
2060      case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
2061      case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
2062    } return function () { return new IteratorConstructor(this); };
2063  };
2064
2065  var TO_STRING_TAG = NAME + ' Iterator';
2066  var INCORRECT_VALUES_NAME = false;
2067  var IterablePrototype = Iterable.prototype;
2068  var nativeIterator = IterablePrototype[ITERATOR]
2069    || IterablePrototype['@@iterator']
2070    || DEFAULT && IterablePrototype[DEFAULT];
2071  var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
2072  var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
2073  var CurrentIteratorPrototype, methods, KEY;
2074
2075  // fix native
2076  if (anyNativeIterator) {
2077    CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
2078    if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
2079      if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
2080        if (setPrototypeOf) {
2081          setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
2082        } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {
2083          createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);
2084        }
2085      }
2086      // Set @@toStringTag to native iterators
2087      setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
2088      if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;
2089    }
2090  }
2091
2092  // fix Array#{values, @@iterator}.name in V8 / FF
2093  if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
2094    INCORRECT_VALUES_NAME = true;
2095    defaultIterator = function values() { return nativeIterator.call(this); };
2096  }
2097
2098  // define iterator
2099  if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
2100    createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);
2101  }
2102  Iterators[NAME] = defaultIterator;
2103
2104  // export additional methods
2105  if (DEFAULT) {
2106    methods = {
2107      values: getIterationMethod(VALUES),
2108      keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
2109      entries: getIterationMethod(ENTRIES)
2110    };
2111    if (FORCED) for (KEY in methods) {
2112      if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
2113        redefine(IterablePrototype, KEY, methods[KEY]);
2114      }
2115    } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
2116  }
2117
2118  return methods;
2119};
2120
2121
2122/***/ }),
2123
2124/***/ 259:
2125/***/ (function(module, exports, __webpack_require__) {
2126
2127"use strict";
2128
2129var IteratorPrototype = __webpack_require__(260).IteratorPrototype;
2130var create = __webpack_require__(123);
2131var createPropertyDescriptor = __webpack_require__(55);
2132var setToStringTag = __webpack_require__(102);
2133var Iterators = __webpack_require__(157);
2134
2135var returnThis = function () { return this; };
2136
2137module.exports = function (IteratorConstructor, NAME, next) {
2138  var TO_STRING_TAG = NAME + ' Iterator';
2139  IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });
2140  setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
2141  Iterators[TO_STRING_TAG] = returnThis;
2142  return IteratorConstructor;
2143};
2144
2145
2146/***/ }),
2147
2148/***/ 26:
2149/***/ (function(module, exports, __webpack_require__) {
2150
2151"use strict";
2152
2153var $ = __webpack_require__(8);
2154var forEach = __webpack_require__(148);
2155
2156// `Array.prototype.forEach` method
2157// https://tc39.github.io/ecma262/#sec-array.prototype.foreach
2158$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {
2159  forEach: forEach
2160});
2161
2162
2163/***/ }),
2164
2165/***/ 260:
2166/***/ (function(module, exports, __webpack_require__) {
2167
2168"use strict";
2169
2170var getPrototypeOf = __webpack_require__(261);
2171var createNonEnumerableProperty = __webpack_require__(28);
2172var has = __webpack_require__(15);
2173var wellKnownSymbol = __webpack_require__(11);
2174var IS_PURE = __webpack_require__(49);
2175
2176var ITERATOR = wellKnownSymbol('iterator');
2177var BUGGY_SAFARI_ITERATORS = false;
2178
2179var returnThis = function () { return this; };
2180
2181// `%IteratorPrototype%` object
2182// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object
2183var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
2184
2185if ([].keys) {
2186  arrayIterator = [].keys();
2187  // Safari 8 has buggy iterators w/o `next`
2188  if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
2189  else {
2190    PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
2191    if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
2192  }
2193}
2194
2195if (IteratorPrototype == undefined) IteratorPrototype = {};
2196
2197// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
2198if (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {
2199  createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);
2200}
2201
2202module.exports = {
2203  IteratorPrototype: IteratorPrototype,
2204  BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
2205};
2206
2207
2208/***/ }),
2209
2210/***/ 261:
2211/***/ (function(module, exports, __webpack_require__) {
2212
2213var has = __webpack_require__(15);
2214var toObject = __webpack_require__(34);
2215var sharedKey = __webpack_require__(99);
2216var CORRECT_PROTOTYPE_GETTER = __webpack_require__(758);
2217
2218var IE_PROTO = sharedKey('IE_PROTO');
2219var ObjectPrototype = Object.prototype;
2220
2221// `Object.getPrototypeOf` method
2222// https://tc39.github.io/ecma262/#sec-object.getprototypeof
2223module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {
2224  O = toObject(O);
2225  if (has(O, IE_PROTO)) return O[IE_PROTO];
2226  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
2227    return O.constructor.prototype;
2228  } return O instanceof Object ? ObjectPrototype : null;
2229};
2230
2231
2232/***/ }),
2233
2234/***/ 262:
2235/***/ (function(module, exports, __webpack_require__) {
2236
2237var redefine = __webpack_require__(41);
2238
2239module.exports = function (target, src, options) {
2240  for (var key in src) redefine(target, key, src[key], options);
2241  return target;
2242};
2243
2244
2245/***/ }),
2246
2247/***/ 263:
2248/***/ (function(module, exports, __webpack_require__) {
2249
2250var global = __webpack_require__(12);
2251var fails = __webpack_require__(10);
2252var classof = __webpack_require__(40);
2253var bind = __webpack_require__(80);
2254var html = __webpack_require__(183);
2255var createElement = __webpack_require__(116);
2256var IS_IOS = __webpack_require__(264);
2257
2258var location = global.location;
2259var set = global.setImmediate;
2260var clear = global.clearImmediate;
2261var process = global.process;
vendor: 3,824 bytes, lines 2262-2409
2262var MessageChannel = global.MessageChannel;
2263var Dispatch = global.Dispatch;
2264var counter = 0;
2265var queue = {};
2266var ONREADYSTATECHANGE = 'onreadystatechange';
2267var defer, channel, port;
2268
2269var run = function (id) {
2270  // eslint-disable-next-line no-prototype-builtins
2271  if (queue.hasOwnProperty(id)) {
2272    var fn = queue[id];
2273    delete queue[id];
2274    fn();
2275  }
2276};
2277
2278var runner = function (id) {
2279  return function () {
2280    run(id);
2281  };
2282};
2283
2284var listener = function (event) {
2285  run(event.data);
2286};
2287
2288var post = function (id) {
2289  // old engines have not location.origin
2290  global.postMessage(id + '', location.protocol + '//' + location.host);
2291};
2292
2293// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
2294if (!set || !clear) {
2295  set = function setImmediate(fn) {
2296    var args = [];
2297    var i = 1;
2298    while (arguments.length > i) args.push(arguments[i++]);
2299    queue[++counter] = function () {
2300      // eslint-disable-next-line no-new-func
2301      (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);
2302    };
2303    defer(counter);
2304    return counter;
2305  };
2306  clear = function clearImmediate(id) {
2307    delete queue[id];
2308  };
2309  // Node.js 0.8-
2310  if (classof(process) == 'process') {
2311    defer = function (id) {
2312      process.nextTick(runner(id));
2313    };
2314  // Sphere (JS game engine) Dispatch API
2315  } else if (Dispatch && Dispatch.now) {
2316    defer = function (id) {
2317      Dispatch.now(runner(id));
2318    };
2319  // Browsers with MessageChannel, includes WebWorkers
2320  // except iOS - https://github.com/zloirock/core-js/issues/624
2321  } else if (MessageChannel && !IS_IOS) {
2322    channel = new MessageChannel();
2323    port = channel.port2;
2324    channel.port1.onmessage = listener;
2325    defer = bind(port.postMessage, port, 1);
2326  // Browsers with postMessage, skip WebWorkers
2327  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
2328  } else if (
2329    global.addEventListener &&
2330    typeof postMessage == 'function' &&
2331    !global.importScripts &&
2332    !fails(post) &&
2333    location.protocol !== 'file:'
2334  ) {
2335    defer = post;
2336    global.addEventListener('message', listener, false);
2337  // IE8-
2338  } else if (ONREADYSTATECHANGE in createElement('script')) {
2339    defer = function (id) {
2340      html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {
2341        html.removeChild(this);
2342        run(id);
2343      };
2344    };
2345  // Rest old browsers
2346  } else {
2347    defer = function (id) {
2348      setTimeout(runner(id), 0);
2349    };
2350  }
2351}
2352
2353module.exports = {
2354  set: set,
2355  clear: clear
2356};
2357
2358
2359/***/ }),
2360
2361/***/ 264:
2362/***/ (function(module, exports, __webpack_require__) {
2363
2364var userAgent = __webpack_require__(184);
2365
2366module.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);
2367
2368
2369/***/ }),
2370
2371/***/ 265:
2372/***/ (function(module, exports, __webpack_require__) {
2373
2374"use strict";
2375
2376var aFunction = __webpack_require__(103);
2377
2378var PromiseCapability = function (C) {
2379  var resolve, reject;
2380  this.promise = new C(function ($$resolve, $$reject) {
2381    if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
2382    resolve = $$resolve;
2383    reject = $$reject;
2384  });
2385  this.resolve = aFunction(resolve);
2386  this.reject = aFunction(reject);
2387};
2388
2389// 25.4.1.5 NewPromiseCapability(C)
2390module.exports.f = function (C) {
2391  return new PromiseCapability(C);
2392};
2393
2394
2395/***/ }),
2396
2397/***/ 266:
2398/***/ (function(module, exports, __webpack_require__) {
2399
2400"use strict";
2401
2402var charAt = __webpack_require__(149).charAt;
2403var InternalStateModule = __webpack_require__(64);
2404var defineIterator = __webpack_require__(258);
2405
2406var STRING_ITERATOR = 'String Iterator';
2407var setInternalState = InternalStateModule.set;
2408var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);
2409
2410// `String.prototype[@@iterator]` method
2411// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator
2412defineIterator(String, 'String', function (iterated) {
2413  setInternalState(this, {
2414    type: STRING_ITERATOR,
2415    string: String(iterated),
2416    index: 0
2417  });
2418// `%StringIteratorPrototype%.next` method
2419// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next
2420}, function next() {
2421  var state = getInternalState(this);
2422  var string = state.string;
2423  var index = state.index;
2424  var point;
2425  if (index >= string.length) return { value: undefined, done: true };
2426  point = charAt(string, index);
2427  state.index += point.length;
2428  return { value: point, done: false };
2429});
2430
2431
2432/***/ }),
2433
2434/***/ 267:
2435/***/ (function(module, exports, __webpack_require__) {
2436
2437var fails = __webpack_require__(10);
2438var wellKnownSymbol = __webpack_require__(11);
2439var IS_PURE = __webpack_require__(49);
2440
2441var ITERATOR = wellKnownSymbol('iterator');
2442
2443module.exports = !fails(function () {
2444  var url = new URL('b?a=1&b=2&c=3', 'http://a');
2445  var searchParams = url.searchParams;
2446  var result = '';
2447  url.pathname = 'c%20d';
2448  searchParams.forEach(function (value, key) {
2449    searchParams['delete']('b');
2450    result += key + value;
2451  });
2452  return (IS_PURE && !url.toJSON)
2453    || !searchParams.sort
2454    || url.href !== 'http://a/c%20d?a=1&c=3'
2455    || searchParams.get('c') !== '3'
2456    || String(new URLSearchParams('?a=1')) !== 'a=1'
2457    || !searchParams[ITERATOR]
2458    // throws in Edge
2459    || new URL('https://a@b').username !== 'a'
2460    || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'
2461    // not punycoded in Edge
2462    || new URL('http://тест').host !== 'xn--e1aybc'
2463    // not escaped in Chrome 62-
2464    || new URL('http://a#б').hash !== '#%D0%B1'
2465    // fails in Chrome 66-
2466    || result !== 'a1c3'
2467    // throws in Safari
2468    || new URL('http://x', undefined).host !== 'x';
2469});
2470
2471
2472/***/ }),
2473
2474/***/ 268:
2475/***/ (function(module, exports, __webpack_require__) {
2476
2477/**
2478 * Copyright (c) 2014-present, Facebook, Inc.
2479 *
2480 * This source code is licensed under the MIT license found in the
2481 * LICENSE file in the root directory of this source tree.
2482 */
2483
2484var runtime = (function (exports) {
2485  "use strict";
2486
2487  var Op = Object.prototype;
2488  var hasOwn = Op.hasOwnProperty;
2489  var undefined; // More compressible than void 0.
2490  var $Symbol = typeof Symbol === "function" ? Symbol : {};
2491  var iteratorSymbol = $Symbol.iterator || "@@iterator";
2492  var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
2493  var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
2494
2495  function wrap(innerFn, outerFn, self, tryLocsList) {
2496    // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
2497    var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
2498    var generator = Object.create(protoGenerator.prototype);
2499    var context = new Context(tryLocsList || []);
2500
2501    // The ._invoke method unifies the implementations of the .next,
2502    // .throw, and .return methods.
2503    generator._invoke = makeInvokeMethod(innerFn, self, context);
2504
2505    return generator;
2506  }
2507  exports.wrap = wrap;
2508
2509  // Try/catch helper to minimize deoptimizations. Returns a completion
2510  // record like context.tryEntries[i].completion. This interface could
2511  // have been (and was previously) designed to take a closure to be
2512  // invoked without arguments, but in all the cases we care about we
2513  // already have an existing method we want to call, so there's no need
2514  // to create a new function object. We can even get away with assuming
2515  // the method takes exactly one argument, since that happens to be true
2516  // in every case, so we don't have to touch the arguments object. The
2517  // only additional allocation required is the completion record, which
2518  // has a stable shape and so hopefully should be cheap to allocate.
2519  function tryCatch(fn, obj, arg) {
2520    try {
2521      return { type: "normal", arg: fn.call(obj, arg) };
2522    } catch (err) {
2523      return { type: "throw", arg: err };
2524    }
2525  }
2526
2527  var GenStateSuspendedStart = "suspendedStart";
2528  var GenStateSuspendedYield = "suspendedYield";
2529  var GenStateExecuting = "executing";
2530  var GenStateCompleted = "completed";
2531
2532  // Returning this object from the innerFn has the same effect as
2533  // breaking out of the dispatch switch statement.
2534  var ContinueSentinel = {};
2535
2536  // Dummy constructor functions that we use as the .constructor and
2537  // .constructor.prototype properties for functions that return Generator
2538  // objects. For full spec compliance, you may wish to configure your
2539  // minifier not to mangle the names of these two functions.
2540  function Generator() {}
2541  function GeneratorFunction() {}
2542  function GeneratorFunctionPrototype() {}
2543
2544  // This is a polyfill for %IteratorPrototype% for environments that
2545  // don't natively support it.
2546  var IteratorPrototype = {};
2547  IteratorPrototype[iteratorSymbol] = function () {
2548    return this;
2549  };
2550
2551  var getProto = Object.getPrototypeOf;
2552  var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
2553  if (NativeIteratorPrototype &&
2554      NativeIteratorPrototype !== Op &&
2555      hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
2556    // This environment has a native %IteratorPrototype%; use it instead
2557    // of the polyfill.
2558    IteratorPrototype = NativeIteratorPrototype;
2559  }
2560
2561  var Gp = GeneratorFunctionPrototype.prototype =
2562    Generator.prototype = Object.create(IteratorPrototype);
2563  GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
2564  GeneratorFunctionPrototype.constructor = GeneratorFunction;
2565  GeneratorFunctionPrototype[toStringTagSymbol] =
2566    GeneratorFunction.displayName = "GeneratorFunction";
2567
2568  // Helper for defining the .next, .throw, and .return methods of the
2569  // Iterator interface in terms of a single ._invoke method.
2570  function defineIteratorMethods(prototype) {
2571    ["next", "throw", "return"].forEach(function(method) {
2572      prototype[method] = function(arg) {
2573        return this._invoke(method, arg);
2574      };
2575    });
vendor: 11,575 bytes, lines 2576-2904
2576  }
2577
2578  exports.isGeneratorFunction = function(genFun) {
2579    var ctor = typeof genFun === "function" && genFun.constructor;
2580    return ctor
2581      ? ctor === GeneratorFunction ||
2582        // For the native GeneratorFunction constructor, the best we can
2583        // do is to check its .name property.
2584        (ctor.displayName || ctor.name) === "GeneratorFunction"
2585      : false;
2586  };
2587
2588  exports.mark = function(genFun) {
2589    if (Object.setPrototypeOf) {
2590      Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
2591    } else {
2592      genFun.__proto__ = GeneratorFunctionPrototype;
2593      if (!(toStringTagSymbol in genFun)) {
2594        genFun[toStringTagSymbol] = "GeneratorFunction";
2595      }
2596    }
2597    genFun.prototype = Object.create(Gp);
2598    return genFun;
2599  };
2600
2601  // Within the body of any async function, `await x` is transformed to
2602  // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
2603  // `hasOwn.call(value, "__await")` to determine if the yielded value is
2604  // meant to be awaited.
2605  exports.awrap = function(arg) {
2606    return { __await: arg };
2607  };
2608
2609  function AsyncIterator(generator, PromiseImpl) {
2610    function invoke(method, arg, resolve, reject) {
2611      var record = tryCatch(generator[method], generator, arg);
2612      if (record.type === "throw") {
2613        reject(record.arg);
2614      } else {
2615        var result = record.arg;
2616        var value = result.value;
2617        if (value &&
2618            typeof value === "object" &&
2619            hasOwn.call(value, "__await")) {
2620          return PromiseImpl.resolve(value.__await).then(function(value) {
2621            invoke("next", value, resolve, reject);
2622          }, function(err) {
2623            invoke("throw", err, resolve, reject);
2624          });
2625        }
2626
2627        return PromiseImpl.resolve(value).then(function(unwrapped) {
2628          // When a yielded Promise is resolved, its final value becomes
2629          // the .value of the Promise<{value,done}> result for the
2630          // current iteration.
2631          result.value = unwrapped;
2632          resolve(result);
2633        }, function(error) {
2634          // If a rejected Promise was yielded, throw the rejection back
2635          // into the async generator function so it can be handled there.
2636          return invoke("throw", error, resolve, reject);
2637        });
2638      }
2639    }
2640
2641    var previousPromise;
2642
2643    function enqueue(method, arg) {
2644      function callInvokeWithMethodAndArg() {
2645        return new PromiseImpl(function(resolve, reject) {
2646          invoke(method, arg, resolve, reject);
2647        });
2648      }
2649
2650      return previousPromise =
2651        // If enqueue has been called before, then we want to wait until
2652        // all previous Promises have been resolved before calling invoke,
2653        // so that results are always delivered in the correct order. If
2654        // enqueue has not been called before, then it is important to
2655        // call invoke immediately, without waiting on a callback to fire,
2656        // so that the async generator function has the opportunity to do
2657        // any necessary setup in a predictable way. This predictability
2658        // is why the Promise constructor synchronously invokes its
2659        // executor callback, and why async functions synchronously
2660        // execute code before the first await. Since we implement simple
2661        // async functions in terms of async generators, it is especially
2662        // important to get this right, even though it requires care.
2663        previousPromise ? previousPromise.then(
2664          callInvokeWithMethodAndArg,
2665          // Avoid propagating failures to Promises returned by later
2666          // invocations of the iterator.
2667          callInvokeWithMethodAndArg
2668        ) : callInvokeWithMethodAndArg();
2669    }
2670
2671    // Define the unified helper method that is used to implement .next,
2672    // .throw, and .return (see defineIteratorMethods).
2673    this._invoke = enqueue;
2674  }
2675
2676  defineIteratorMethods(AsyncIterator.prototype);
2677  AsyncIterator.prototype[asyncIteratorSymbol] = function () {
2678    return this;
2679  };
2680  exports.AsyncIterator = AsyncIterator;
2681
2682  // Note that simple async functions are implemented on top of
2683  // AsyncIterator objects; they just return a Promise for the value of
2684  // the final result produced by the iterator.
2685  exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
2686    if (PromiseImpl === void 0) PromiseImpl = Promise;
2687
2688    var iter = new AsyncIterator(
2689      wrap(innerFn, outerFn, self, tryLocsList),
2690      PromiseImpl
2691    );
2692
2693    return exports.isGeneratorFunction(outerFn)
2694      ? iter // If outerFn is a generator, return the full iterator.
2695      : iter.next().then(function(result) {
2696          return result.done ? result.value : iter.next();
2697        });
2698  };
2699
2700  function makeInvokeMethod(innerFn, self, context) {
2701    var state = GenStateSuspendedStart;
2702
2703    return function invoke(method, arg) {
2704      if (state === GenStateExecuting) {
2705        throw new Error("Generator is already running");
2706      }
2707
2708      if (state === GenStateCompleted) {
2709        if (method === "throw") {
2710          throw arg;
2711        }
2712
2713        // Be forgiving, per 25.3.3.3.3 of the spec:
2714        // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
2715        return doneResult();
2716      }
2717
2718      context.method = method;
2719      context.arg = arg;
2720
2721      while (true) {
2722        var delegate = context.delegate;
2723        if (delegate) {
2724          var delegateResult = maybeInvokeDelegate(delegate, context);
2725          if (delegateResult) {
2726            if (delegateResult === ContinueSentinel) continue;
2727            return delegateResult;
2728          }
2729        }
2730
2731        if (context.method === "next") {
2732          // Setting context._sent for legacy support of Babel's
2733          // function.sent implementation.
2734          context.sent = context._sent = context.arg;
2735
2736        } else if (context.method === "throw") {
2737          if (state === GenStateSuspendedStart) {
2738            state = GenStateCompleted;
2739            throw context.arg;
2740          }
2741
2742          context.dispatchException(context.arg);
2743
2744        } else if (context.method === "return") {
2745          context.abrupt("return", context.arg);
2746        }
2747
2748        state = GenStateExecuting;
2749
2750        var record = tryCatch(innerFn, self, context);
2751        if (record.type === "normal") {
2752          // If an exception is thrown from innerFn, we leave state ===
2753          // GenStateExecuting and loop back for another invocation.
2754          state = context.done
2755            ? GenStateCompleted
2756            : GenStateSuspendedYield;
2757
2758          if (record.arg === ContinueSentinel) {
2759            continue;
2760          }
2761
2762          return {
2763            value: record.arg,
2764            done: context.done
2765          };
2766
2767        } else if (record.type === "throw") {
2768          state = GenStateCompleted;
2769          // Dispatch the exception by looping back around to the
2770          // context.dispatchException(context.arg) call above.
2771          context.method = "throw";
2772          context.arg = record.arg;
2773        }
2774      }
2775    };
2776  }
2777
2778  // Call delegate.iterator[context.method](context.arg) and handle the
2779  // result, either by returning a { value, done } result from the
2780  // delegate iterator, or by modifying context.method and context.arg,
2781  // setting context.delegate to null, and returning the ContinueSentinel.
2782  function maybeInvokeDelegate(delegate, context) {
2783    var method = delegate.iterator[context.method];
2784    if (method === undefined) {
2785      // A .throw or .return when the delegate iterator has no .throw
2786      // method always terminates the yield* loop.
2787      context.delegate = null;
2788
2789      if (context.method === "throw") {
2790        // Note: ["return"] must be used for ES3 parsing compatibility.
2791        if (delegate.iterator["return"]) {
2792          // If the delegate iterator has a return method, give it a
2793          // chance to clean up.
2794          context.method = "return";
2795          context.arg = undefined;
2796          maybeInvokeDelegate(delegate, context);
2797
2798          if (context.method === "throw") {
2799            // If maybeInvokeDelegate(context) changed context.method from
2800            // "return" to "throw", let that override the TypeError below.
2801            return ContinueSentinel;
2802          }
2803        }
2804
2805        context.method = "throw";
2806        context.arg = new TypeError(
2807          "The iterator does not provide a 'throw' method");
2808      }
2809
2810      return ContinueSentinel;
2811    }
2812
2813    var record = tryCatch(method, delegate.iterator, context.arg);
2814
2815    if (record.type === "throw") {
2816      context.method = "throw";
2817      context.arg = record.arg;
2818      context.delegate = null;
2819      return ContinueSentinel;
2820    }
2821
2822    var info = record.arg;
2823
2824    if (! info) {
2825      context.method = "throw";
2826      context.arg = new TypeError("iterator result is not an object");
2827      context.delegate = null;
2828      return ContinueSentinel;
2829    }
2830
2831    if (info.done) {
2832      // Assign the result of the finished delegate to the temporary
2833      // variable specified by delegate.resultName (see delegateYield).
2834      context[delegate.resultName] = info.value;
2835
2836      // Resume execution at the desired location (see delegateYield).
2837      context.next = delegate.nextLoc;
2838
2839      // If context.method was "throw" but the delegate handled the
2840      // exception, let the outer generator proceed normally. If
2841      // context.method was "next", forget context.arg since it has been
2842      // "consumed" by the delegate iterator. If context.method was
2843      // "return", allow the original .return call to continue in the
2844      // outer generator.
2845      if (context.method !== "return") {
2846        context.method = "next";
2847        context.arg = undefined;
2848      }
2849
2850    } else {
2851      // Re-yield the result returned by the delegate method.
2852      return info;
2853    }
2854
2855    // The delegate iterator is finished, so forget it and continue with
2856    // the outer generator.
2857    context.delegate = null;
2858    return ContinueSentinel;
2859  }
2860
2861  // Define Generator.prototype.{next,throw,return} in terms of the
2862  // unified ._invoke helper method.
2863  defineIteratorMethods(Gp);
2864
2865  Gp[toStringTagSymbol] = "Generator";
2866
2867  // A Generator should always return itself as the iterator object when the
2868  // @@iterator function is called on it. Some browsers' implementations of the
2869  // iterator prototype chain incorrectly implement this, causing the Generator
2870  // object to not be returned from this call. This ensures that doesn't happen.
2871  // See https://github.com/facebook/regenerator/issues/274 for more details.
2872  Gp[iteratorSymbol] = function() {
2873    return this;
2874  };
2875
2876  Gp.toString = function() {
2877    return "[object Generator]";
2878  };
2879
2880  function pushTryEntry(locs) {
2881    var entry = { tryLoc: locs[0] };
2882
2883    if (1 in locs) {
2884      entry.catchLoc = locs[1];
2885    }
2886
2887    if (2 in locs) {
2888      entry.finallyLoc = locs[2];
2889      entry.afterLoc = locs[3];
2890    }
2891
2892    this.tryEntries.push(entry);
2893  }
2894
2895  function resetTryEntry(entry) {
2896    var record = entry.completion || {};
2897    record.type = "normal";
2898    delete record.arg;
2899    entry.completion = record;
2900  }
2901
2902  function Context(tryLocsList) {
2903    // The root entry object (effectively a try statement without a catch
2904    // or a finally block) gives us a place to store values thrown from
vendor: 4,901 bytes, lines 2905-3081
2905    // locations where there is no enclosing try statement.
2906    this.tryEntries = [{ tryLoc: "root" }];
2907    tryLocsList.forEach(pushTryEntry, this);
2908    this.reset(true);
2909  }
2910
2911  exports.keys = function(object) {
2912    var keys = [];
2913    for (var key in object) {
2914      keys.push(key);
2915    }
2916    keys.reverse();
2917
2918    // Rather than returning an object with a next method, we keep
2919    // things simple and return the next function itself.
2920    return function next() {
2921      while (keys.length) {
2922        var key = keys.pop();
2923        if (key in object) {
2924          next.value = key;
2925          next.done = false;
2926          return next;
2927        }
2928      }
2929
2930      // To avoid creating an additional object, we just hang the .value
2931      // and .done properties off the next function object itself. This
2932      // also ensures that the minifier will not anonymize the function.
2933      next.done = true;
2934      return next;
2935    };
2936  };
2937
2938  function values(iterable) {
2939    if (iterable) {
2940      var iteratorMethod = iterable[iteratorSymbol];
2941      if (iteratorMethod) {
2942        return iteratorMethod.call(iterable);
2943      }
2944
2945      if (typeof iterable.next === "function") {
2946        return iterable;
2947      }
2948
2949      if (!isNaN(iterable.length)) {
2950        var i = -1, next = function next() {
2951          while (++i < iterable.length) {
2952            if (hasOwn.call(iterable, i)) {
2953              next.value = iterable[i];
2954              next.done = false;
2955              return next;
2956            }
2957          }
2958
2959          next.value = undefined;
2960          next.done = true;
2961
2962          return next;
2963        };
2964
2965        return next.next = next;
2966      }
2967    }
2968
2969    // Return an iterator with no values.
2970    return { next: doneResult };
2971  }
2972  exports.values = values;
2973
2974  function doneResult() {
2975    return { value: undefined, done: true };
2976  }
2977
2978  Context.prototype = {
2979    constructor: Context,
2980
2981    reset: function(skipTempReset) {
2982      this.prev = 0;
2983      this.next = 0;
2984      // Resetting context._sent for legacy support of Babel's
2985      // function.sent implementation.
2986      this.sent = this._sent = undefined;
2987      this.done = false;
2988      this.delegate = null;
2989
2990      this.method = "next";
2991      this.arg = undefined;
2992
2993      this.tryEntries.forEach(resetTryEntry);
2994
2995      if (!skipTempReset) {
2996        for (var name in this) {
2997          // Not sure about the optimal order of these conditions:
2998          if (name.charAt(0) === "t" &&
2999              hasOwn.call(this, name) &&
3000              !isNaN(+name.slice(1))) {
3001            this[name] = undefined;
3002          }
3003        }
3004      }
3005    },
3006
3007    stop: function() {
3008      this.done = true;
3009
3010      var rootEntry = this.tryEntries[0];
3011      var rootRecord = rootEntry.completion;
3012      if (rootRecord.type === "throw") {
3013        throw rootRecord.arg;
3014      }
3015
3016      return this.rval;
3017    },
3018
3019    dispatchException: function(exception) {
3020      if (this.done) {
3021        throw exception;
3022      }
3023
3024      var context = this;
3025      function handle(loc, caught) {
3026        record.type = "throw";
3027        record.arg = exception;
3028        context.next = loc;
3029
3030        if (caught) {
3031          // If the dispatched exception was caught by a catch block,
3032          // then let that catch block handle the exception normally.
3033          context.method = "next";
3034          context.arg = undefined;
3035        }
3036
3037        return !! caught;
3038      }
3039
3040      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
3041        var entry = this.tryEntries[i];
3042        var record = entry.completion;
3043
3044        if (entry.tryLoc === "root") {
3045          // Exception thrown outside of any try block that could handle
3046          // it, so set the completion value of the entire function to
3047          // throw the exception.
3048          return handle("end");
3049        }
3050
3051        if (entry.tryLoc <= this.prev) {
3052          var hasCatch = hasOwn.call(entry, "catchLoc");
3053          var hasFinally = hasOwn.call(entry, "finallyLoc");
3054
3055          if (hasCatch && hasFinally) {
3056            if (this.prev < entry.catchLoc) {
3057              return handle(entry.catchLoc, true);
3058            } else if (this.prev < entry.finallyLoc) {
3059              return handle(entry.finallyLoc);
3060            }
3061
3062          } else if (hasCatch) {
3063            if (this.prev < entry.catchLoc) {
3064              return handle(entry.catchLoc, true);
3065            }
3066
3067          } else if (hasFinally) {
3068            if (this.prev < entry.finallyLoc) {
3069              return handle(entry.finallyLoc);
3070            }
3071
3072          } else {
3073            throw new Error("try statement without catch or finally");
3074          }
3075        }
3076      }
3077    },
3078
3079    abrupt: function(type, arg) {
3080      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
3081        var entry = this.tryEntries[i];
vendor: 4,391 bytes, lines 3082-3214
3082        if (entry.tryLoc <= this.prev &&
3083            hasOwn.call(entry, "finallyLoc") &&
3084            this.prev < entry.finallyLoc) {
3085          var finallyEntry = entry;
3086          break;
3087        }
3088      }
3089
3090      if (finallyEntry &&
3091          (type === "break" ||
3092           type === "continue") &&
3093          finallyEntry.tryLoc <= arg &&
3094          arg <= finallyEntry.finallyLoc) {
3095        // Ignore the finally entry if control is not jumping to a
3096        // location outside the try/catch block.
3097        finallyEntry = null;
3098      }
3099
3100      var record = finallyEntry ? finallyEntry.completion : {};
3101      record.type = type;
3102      record.arg = arg;
3103
3104      if (finallyEntry) {
3105        this.method = "next";
3106        this.next = finallyEntry.finallyLoc;
3107        return ContinueSentinel;
3108      }
3109
3110      return this.complete(record);
3111    },
3112
3113    complete: function(record, afterLoc) {
3114      if (record.type === "throw") {
3115        throw record.arg;
3116      }
3117
3118      if (record.type === "break" ||
3119          record.type === "continue") {
3120        this.next = record.arg;
3121      } else if (record.type === "return") {
3122        this.rval = this.arg = record.arg;
3123        this.method = "return";
3124        this.next = "end";
3125      } else if (record.type === "normal" && afterLoc) {
3126        this.next = afterLoc;
3127      }
3128
3129      return ContinueSentinel;
3130    },
3131
3132    finish: function(finallyLoc) {
3133      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
3134        var entry = this.tryEntries[i];
3135        if (entry.finallyLoc === finallyLoc) {
3136          this.complete(entry.completion, entry.afterLoc);
3137          resetTryEntry(entry);
3138          return ContinueSentinel;
3139        }
3140      }
3141    },
3142
3143    "catch": function(tryLoc) {
3144      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
3145        var entry = this.tryEntries[i];
3146        if (entry.tryLoc === tryLoc) {
3147          var record = entry.completion;
3148          if (record.type === "throw") {
3149            var thrown = record.arg;
3150            resetTryEntry(entry);
3151          }
3152          return thrown;
3153        }
3154      }
3155
3156      // The context.catch method must only be called with a location
3157      // argument that corresponds to a known catch block.
3158      throw new Error("illegal catch attempt");
3159    },
3160
3161    delegateYield: function(iterable, resultName, nextLoc) {
3162      this.delegate = {
3163        iterator: values(iterable),
3164        resultName: resultName,
3165        nextLoc: nextLoc
3166      };
3167
3168      if (this.method === "next") {
3169        // Deliberately forget the last sent value so that we don't
3170        // accidentally pass it on to the delegate.
3171        this.arg = undefined;
3172      }
3173
3174      return ContinueSentinel;
3175    }
3176  };
3177
3178  // Regardless of whether this script is executing as a CommonJS module
3179  // or not, return the runtime object so that we can declare the variable
3180  // regeneratorRuntime in the outer scope, which allows this module to be
3181  // injected easily by `bin/regenerator --include-runtime script.js`.
3182  return exports;
3183
3184}(
3185  // If this script is executing as a CommonJS module, use module.exports
3186  // as the regeneratorRuntime namespace. Otherwise create a new empty
3187  // object. Either way, the resulting object will be used to initialize
3188  // the regeneratorRuntime variable at the top of this file.
3189   true ? module.exports : undefined
3190));
3191
3192try {
3193  regeneratorRuntime = runtime;
3194} catch (accidentalStrictMode) {
3195  // This module should not be running in strict mode, so the above
3196  // assignment should always work unless something is misconfigured. Just
3197  // in case runtime.js accidentally runs in strict mode, we can escape
3198  // strict mode using a global Function call. This could conceivably fail
3199  // if a Content Security Policy forbids using Function, but in that case
3200  // the proper solution is to fix the accidental strict mode problem. If
3201  // you've misconfigured your bundler to force strict mode and applied a
3202  // CSP to forbid Function, and you're not willing to fix either of those
3203  // problems, please detail your unique predicament in a GitHub issue.
3204  Function("r", "regeneratorRuntime = r")(runtime);
3205}
3206
3207
3208/***/ }),
3209
3210/***/ 27:
3211/***/ (function(module, exports, __webpack_require__) {
3212
3213var global = __webpack_require__(12);
3214var DOMIterables = __webpack_require__(186);
vendor: 4,253 bytes, lines 3215-3346
3215var forEach = __webpack_require__(148);
3216var createNonEnumerableProperty = __webpack_require__(28);
3217
3218for (var COLLECTION_NAME in DOMIterables) {
3219  var Collection = global[COLLECTION_NAME];
3220  var CollectionPrototype = Collection && Collection.prototype;
3221  // some Chrome versions have non-configurable methods on DOMTokenList
3222  if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {
3223    createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);
3224  } catch (error) {
3225    CollectionPrototype.forEach = forEach;
3226  }
3227}
3228
3229
3230/***/ }),
3231
3232/***/ 28:
3233/***/ (function(module, exports, __webpack_require__) {
3234
3235var DESCRIPTORS = __webpack_require__(21);
3236var definePropertyModule = __webpack_require__(24);
3237var createPropertyDescriptor = __webpack_require__(55);
3238
3239module.exports = DESCRIPTORS ? function (object, key, value) {
3240  return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
3241} : function (object, key, value) {
3242  object[key] = value;
3243  return object;
3244};
3245
3246
3247/***/ }),
3248
3249/***/ 29:
3250/***/ (function(module, exports, __webpack_require__) {
3251
3252"use strict";
3253
3254var $ = __webpack_require__(8);
3255var fails = __webpack_require__(10);
3256var isArray = __webpack_require__(65);
3257var isObject = __webpack_require__(17);
3258var toObject = __webpack_require__(34);
3259var toLength = __webpack_require__(18);
3260var createProperty = __webpack_require__(81);
3261var arraySpeciesCreate = __webpack_require__(104);
3262var arrayMethodHasSpeciesSupport = __webpack_require__(56);
3263var wellKnownSymbol = __webpack_require__(11);
3264var V8_VERSION = __webpack_require__(124);
3265
3266var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
3267var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
3268var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
3269
3270// We can't use this feature detection in V8 since it causes
3271// deoptimization and serious performance degradation
3272// https://github.com/zloirock/core-js/issues/679
3273var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {
3274  var array = [];
3275  array[IS_CONCAT_SPREADABLE] = false;
3276  return array.concat()[0] !== array;
3277});
3278
3279var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
3280
3281var isConcatSpreadable = function (O) {
3282  if (!isObject(O)) return false;
3283  var spreadable = O[IS_CONCAT_SPREADABLE];
3284  return spreadable !== undefined ? !!spreadable : isArray(O);
3285};
3286
3287var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
3288
3289// `Array.prototype.concat` method
3290// https://tc39.github.io/ecma262/#sec-array.prototype.concat
3291// with adding support of @@isConcatSpreadable and @@species
3292$({ target: 'Array', proto: true, forced: FORCED }, {
3293  concat: function concat(arg) { // eslint-disable-line no-unused-vars
3294    var O = toObject(this);
3295    var A = arraySpeciesCreate(O, 0);
3296    var n = 0;
3297    var i, k, length, len, E;
3298    for (i = -1, length = arguments.length; i < length; i++) {
3299      E = i === -1 ? O : arguments[i];
3300      if (isConcatSpreadable(E)) {
3301        len = toLength(E.length);
3302        if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
3303        for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
3304      } else {
3305        if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
3306        createProperty(A, n++, E);
3307      }
3308    }
3309    A.length = n;
3310    return A;
3311  }
3312});
3313
3314
3315/***/ }),
3316
3317/***/ 30:
3318/***/ (function(module, exports, __webpack_require__) {
3319
3320// toObject with fallback for non-array-like ES3 strings
3321var IndexedObject = __webpack_require__(77);
3322var requireObjectCoercible = __webpack_require__(20);
3323
3324module.exports = function (it) {
3325  return IndexedObject(requireObjectCoercible(it));
3326};
3327
3328
3329/***/ }),
3330
3331/***/ 31:
3332/***/ (function(module, exports, __webpack_require__) {
3333
3334var DESCRIPTORS = __webpack_require__(21);
3335var fails = __webpack_require__(10);
3336var has = __webpack_require__(15);
3337
3338var defineProperty = Object.defineProperty;
3339var cache = {};
3340
3341var thrower = function (it) { throw it; };
3342
3343module.exports = function (METHOD_NAME, options) {
3344  if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];
3345  if (!options) options = {};
3346  var method = [][METHOD_NAME];
vendor: 12,921 bytes, lines 3347-3767
3347  var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;
3348  var argument0 = has(options, 0) ? options[0] : thrower;
3349  var argument1 = has(options, 1) ? options[1] : undefined;
3350
3351  return cache[METHOD_NAME] = !!method && !fails(function () {
3352    if (ACCESSORS && !DESCRIPTORS) return true;
3353    var O = { length: -1 };
3354
3355    if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });
3356    else O[1] = 1;
3357
3358    method.call(O, argument0, argument1);
3359  });
3360};
3361
3362
3363/***/ }),
3364
3365/***/ 34:
3366/***/ (function(module, exports, __webpack_require__) {
3367
3368var requireObjectCoercible = __webpack_require__(20);
3369
3370// `ToObject` abstract operation
3371// https://tc39.github.io/ecma262/#sec-toobject
3372module.exports = function (argument) {
3373  return Object(requireObjectCoercible(argument));
3374};
3375
3376
3377/***/ }),
3378
3379/***/ 35:
3380/***/ (function(module, exports, __webpack_require__) {
3381
3382"use strict";
3383
3384var $ = __webpack_require__(8);
3385var exec = __webpack_require__(66);
3386
3387$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
3388  exec: exec
3389});
3390
3391
3392/***/ }),
3393
3394/***/ 40:
3395/***/ (function(module, exports) {
3396
3397var toString = {}.toString;
3398
3399module.exports = function (it) {
3400  return toString.call(it).slice(8, -1);
3401};
3402
3403
3404/***/ }),
3405
3406/***/ 41:
3407/***/ (function(module, exports, __webpack_require__) {
3408
3409var global = __webpack_require__(12);
3410var createNonEnumerableProperty = __webpack_require__(28);
3411var has = __webpack_require__(15);
3412var setGlobal = __webpack_require__(98);
3413var inspectSource = __webpack_require__(117);
3414var InternalStateModule = __webpack_require__(64);
3415
3416var getInternalState = InternalStateModule.get;
3417var enforceInternalState = InternalStateModule.enforce;
3418var TEMPLATE = String(String).split('String');
3419
3420(module.exports = function (O, key, value, options) {
3421  var unsafe = options ? !!options.unsafe : false;
3422  var simple = options ? !!options.enumerable : false;
3423  var noTargetGet = options ? !!options.noTargetGet : false;
3424  if (typeof value == 'function') {
3425    if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);
3426    enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');
3427  }
3428  if (O === global) {
3429    if (simple) O[key] = value;
3430    else setGlobal(key, value);
3431    return;
3432  } else if (!unsafe) {
3433    delete O[key];
3434  } else if (!noTargetGet && O[key]) {
3435    simple = true;
3436  }
3437  if (simple) O[key] = value;
3438  else createNonEnumerableProperty(O, key, value);
3439// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
3440})(Function.prototype, 'toString', function toString() {
3441  return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
3442});
3443
3444
3445/***/ }),
3446
3447/***/ 42:
3448/***/ (function(module, exports, __webpack_require__) {
3449
3450var arrayWithoutHoles = __webpack_require__(221);
3451
3452var iterableToArray = __webpack_require__(222);
3453
3454var unsupportedIterableToArray = __webpack_require__(187);
3455
3456var nonIterableSpread = __webpack_require__(223);
3457
3458function _toConsumableArray(arr) {
3459  return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
3460}
3461
3462module.exports = _toConsumableArray;
3463
3464/***/ }),
3465
3466/***/ 47:
3467/***/ (function(module, exports, __webpack_require__) {
3468
3469var DESCRIPTORS = __webpack_require__(21);
3470var propertyIsEnumerableModule = __webpack_require__(142);
3471var createPropertyDescriptor = __webpack_require__(55);
3472var toIndexedObject = __webpack_require__(30);
3473var toPrimitive = __webpack_require__(78);
3474var has = __webpack_require__(15);
3475var IE8_DOM_DEFINE = __webpack_require__(143);
3476
3477var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
3478
3479// `Object.getOwnPropertyDescriptor` method
3480// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor
3481exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
3482  O = toIndexedObject(O);
3483  P = toPrimitive(P, true);
3484  if (IE8_DOM_DEFINE) try {
3485    return nativeGetOwnPropertyDescriptor(O, P);
3486  } catch (error) { /* empty */ }
3487  if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);
3488};
3489
3490
3491/***/ }),
3492
3493/***/ 472:
3494/***/ (function(module, exports) {
3495
3496function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
3497  try {
3498    var info = gen[key](arg);
3499    var value = info.value;
3500  } catch (error) {
3501    reject(error);
3502    return;
3503  }
3504
3505  if (info.done) {
3506    resolve(value);
3507  } else {
3508    Promise.resolve(value).then(_next, _throw);
3509  }
3510}
3511
3512function _asyncToGenerator(fn) {
3513  return function () {
3514    var self = this,
3515        args = arguments;
3516    return new Promise(function (resolve, reject) {
3517      var gen = fn.apply(self, args);
3518
3519      function _next(value) {
3520        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
3521      }
3522
3523      function _throw(err) {
3524        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
3525      }
3526
3527      _next(undefined);
3528    });
3529  };
3530}
3531
3532module.exports = _asyncToGenerator;
3533
3534/***/ }),
3535
3536/***/ 49:
3537/***/ (function(module, exports) {
3538
3539module.exports = false;
3540
3541
3542/***/ }),
3543
3544/***/ 50:
3545/***/ (function(module, exports, __webpack_require__) {
3546
3547var path = __webpack_require__(179);
3548var global = __webpack_require__(12);
3549
3550var aFunction = function (variable) {
3551  return typeof variable == 'function' ? variable : undefined;
3552};
3553
3554module.exports = function (namespace, method) {
3555  return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])
3556    : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
3557};
3558
3559
3560/***/ }),
3561
3562/***/ 51:
3563/***/ (function(module, exports) {
3564
3565var ceil = Math.ceil;
3566var floor = Math.floor;
3567
3568// `ToInteger` abstract operation
3569// https://tc39.github.io/ecma262/#sec-tointeger
3570module.exports = function (argument) {
3571  return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
3572};
3573
3574
3575/***/ }),
3576
3577/***/ 52:
3578/***/ (function(module, exports, __webpack_require__) {
3579
3580var bind = __webpack_require__(80);
3581var IndexedObject = __webpack_require__(77);
3582var toObject = __webpack_require__(34);
3583var toLength = __webpack_require__(18);
3584var arraySpeciesCreate = __webpack_require__(104);
3585
3586var push = [].push;
3587
3588// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation
3589var createMethod = function (TYPE) {
3590  var IS_MAP = TYPE == 1;
3591  var IS_FILTER = TYPE == 2;
3592  var IS_SOME = TYPE == 3;
3593  var IS_EVERY = TYPE == 4;
3594  var IS_FIND_INDEX = TYPE == 6;
3595  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
3596  return function ($this, callbackfn, that, specificCreate) {
3597    var O = toObject($this);
3598    var self = IndexedObject(O);
3599    var boundFunction = bind(callbackfn, that, 3);
3600    var length = toLength(self.length);
3601    var index = 0;
3602    var create = specificCreate || arraySpeciesCreate;
3603    var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
3604    var value, result;
3605    for (;length > index; index++) if (NO_HOLES || index in self) {
3606      value = self[index];
3607      result = boundFunction(value, index, O);
3608      if (TYPE) {
3609        if (IS_MAP) target[index] = result; // map
3610        else if (result) switch (TYPE) {
3611          case 3: return true;              // some
3612          case 5: return value;             // find
3613          case 6: return index;             // findIndex
3614          case 2: push.call(target, value); // filter
3615        } else if (IS_EVERY) return false;  // every
3616      }
3617    }
3618    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
3619  };
3620};
3621
3622module.exports = {
3623  // `Array.prototype.forEach` method
3624  // https://tc39.github.io/ecma262/#sec-array.prototype.foreach
3625  forEach: createMethod(0),
3626  // `Array.prototype.map` method
3627  // https://tc39.github.io/ecma262/#sec-array.prototype.map
3628  map: createMethod(1),
3629  // `Array.prototype.filter` method
3630  // https://tc39.github.io/ecma262/#sec-array.prototype.filter
3631  filter: createMethod(2),
3632  // `Array.prototype.some` method
3633  // https://tc39.github.io/ecma262/#sec-array.prototype.some
3634  some: createMethod(3),
3635  // `Array.prototype.every` method
3636  // https://tc39.github.io/ecma262/#sec-array.prototype.every
3637  every: createMethod(4),
3638  // `Array.prototype.find` method
3639  // https://tc39.github.io/ecma262/#sec-array.prototype.find
3640  find: createMethod(5),
3641  // `Array.prototype.findIndex` method
3642  // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex
3643  findIndex: createMethod(6)
3644};
3645
3646
3647/***/ }),
3648
3649/***/ 55:
3650/***/ (function(module, exports) {
3651
3652module.exports = function (bitmap, value) {
3653  return {
3654    enumerable: !(bitmap & 1),
3655    configurable: !(bitmap & 2),
3656    writable: !(bitmap & 4),
3657    value: value
3658  };
3659};
3660
3661
3662/***/ }),
3663
3664/***/ 56:
3665/***/ (function(module, exports, __webpack_require__) {
3666
3667var fails = __webpack_require__(10);
3668var wellKnownSymbol = __webpack_require__(11);
3669var V8_VERSION = __webpack_require__(124);
3670
3671var SPECIES = wellKnownSymbol('species');
3672
3673module.exports = function (METHOD_NAME) {
3674  // We can't use this feature detection in V8 since it causes
3675  // deoptimization and serious performance degradation
3676  // https://github.com/zloirock/core-js/issues/677
3677  return V8_VERSION >= 51 || !fails(function () {
3678    var array = [];
3679    var constructor = array.constructor = {};
3680    constructor[SPECIES] = function () {
3681      return { foo: 1 };
3682    };
3683    return array[METHOD_NAME](Boolean).foo !== 1;
3684  });
3685};
3686
3687
3688/***/ }),
3689
3690/***/ 57:
3691/***/ (function(module, exports, __webpack_require__) {
3692
3693"use strict";
3694
3695var $ = __webpack_require__(8);
3696var $map = __webpack_require__(52).map;
3697var arrayMethodHasSpeciesSupport = __webpack_require__(56);
3698var arrayMethodUsesToLength = __webpack_require__(31);
3699
3700var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');
3701// FF49- issue
3702var USES_TO_LENGTH = arrayMethodUsesToLength('map');
3703
3704// `Array.prototype.map` method
3705// https://tc39.github.io/ecma262/#sec-array.prototype.map
3706// with adding support of @@species
3707$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {
3708  map: function map(callbackfn /* , thisArg */) {
3709    return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
3710  }
3711});
3712
3713
3714/***/ }),
3715
3716/***/ 58:
3717/***/ (function(module, __webpack_exports__, __webpack_require__) {
3718
3719"use strict";
3720/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return EMAIL_REGEX; });
3721/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return FILE_REGEX; });
3722/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return HTTPS_REGEX; });
3723/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return IE_BROWSER_REGEX; });
3724/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return MOBILE_BROWSER_REGEX; });
3725/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return PHONE_NUMBER_REGEX; });
3726var EMAIL_REGEX = /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
3727var FILE_REGEX = /(doc|docx|pdf|png|ppt|mp3|txt|xls|xlsx|xml|xsd|zip)$/gi;
3728var HTTPS_REGEX = /^https?:\/\//;
3729var IE_BROWSER_REGEX = /Trident\/7\./;
3730var MOBILE_BROWSER_REGEX = // eslint-disable-next-line max-len
3731/Mobile|iP(hone|od|ad)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/;
3732/*
3733  Regex taken from "Regular Expressions Cookbook, 2nd Edition by Steven Levithan, Jan Goyvaerts"
3734  - Only matches 10 digit numbers
3735  - Optional '+1' at beginning
3736*/
3737
3738var PHONE_NUMBER_REGEX = /(?:\+?1[-. ]?)?\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})/g;
3739
3740/***/ }),
3741
3742/***/ 64:
3743/***/ (function(module, exports, __webpack_require__) {
3744
3745var NATIVE_WEAK_MAP = __webpack_require__(219);
3746var global = __webpack_require__(12);
3747var isObject = __webpack_require__(17);
3748var createNonEnumerableProperty = __webpack_require__(28);
3749var objectHas = __webpack_require__(15);
3750var sharedKey = __webpack_require__(99);
3751var hiddenKeys = __webpack_require__(79);
3752
3753var WeakMap = global.WeakMap;
3754var set, get, has;
3755
3756var enforce = function (it) {
3757  return has(it) ? get(it) : set(it, {});
3758};
3759
3760var getterFor = function (TYPE) {
3761  return function (it) {
3762    var state;
3763    if (!isObject(it) || (state = get(it)).type !== TYPE) {
3764      throw TypeError('Incompatible receiver, ' + TYPE + ' required');
3765    } return state;
3766  };
3767};
vendor: 7,697 bytes, lines 3768-4008
3768
3769if (NATIVE_WEAK_MAP) {
3770  var store = new WeakMap();
3771  var wmget = store.get;
3772  var wmhas = store.has;
3773  var wmset = store.set;
3774  set = function (it, metadata) {
3775    wmset.call(store, it, metadata);
3776    return metadata;
3777  };
3778  get = function (it) {
3779    return wmget.call(store, it) || {};
3780  };
3781  has = function (it) {
3782    return wmhas.call(store, it);
3783  };
3784} else {
3785  var STATE = sharedKey('state');
3786  hiddenKeys[STATE] = true;
3787  set = function (it, metadata) {
3788    createNonEnumerableProperty(it, STATE, metadata);
3789    return metadata;
3790  };
3791  get = function (it) {
3792    return objectHas(it, STATE) ? it[STATE] : {};
3793  };
3794  has = function (it) {
3795    return objectHas(it, STATE);
3796  };
3797}
3798
3799module.exports = {
3800  set: set,
3801  get: get,
3802  has: has,
3803  enforce: enforce,
3804  getterFor: getterFor
3805};
3806
3807
3808/***/ }),
3809
3810/***/ 65:
3811/***/ (function(module, exports, __webpack_require__) {
3812
3813var classof = __webpack_require__(40);
3814
3815// `IsArray` abstract operation
3816// https://tc39.github.io/ecma262/#sec-isarray
3817module.exports = Array.isArray || function isArray(arg) {
3818  return classof(arg) == 'Array';
3819};
3820
3821
3822/***/ }),
3823
3824/***/ 66:
3825/***/ (function(module, exports, __webpack_require__) {
3826
3827"use strict";
3828
3829var regexpFlags = __webpack_require__(185);
3830var stickyHelpers = __webpack_require__(220);
3831
3832var nativeExec = RegExp.prototype.exec;
3833// This always refers to the native implementation, because the
3834// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
3835// which loads this file before patching the method.
3836var nativeReplace = String.prototype.replace;
3837
3838var patchedExec = nativeExec;
3839
3840var UPDATES_LAST_INDEX_WRONG = (function () {
3841  var re1 = /a/;
3842  var re2 = /b*/g;
3843  nativeExec.call(re1, 'a');
3844  nativeExec.call(re2, 'a');
3845  return re1.lastIndex !== 0 || re2.lastIndex !== 0;
3846})();
3847
3848var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;
3849
3850// nonparticipating capturing group, copied from es5-shim's String#split patch.
3851var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
3852
3853var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;
3854
3855if (PATCH) {
3856  patchedExec = function exec(str) {
3857    var re = this;
3858    var lastIndex, reCopy, match, i;
3859    var sticky = UNSUPPORTED_Y && re.sticky;
3860    var flags = regexpFlags.call(re);
3861    var source = re.source;
3862    var charsAdded = 0;
3863    var strCopy = str;
3864
3865    if (sticky) {
3866      flags = flags.replace('y', '');
3867      if (flags.indexOf('g') === -1) {
3868        flags += 'g';
3869      }
3870
3871      strCopy = String(str).slice(re.lastIndex);
3872      // Support anchored sticky behavior.
3873      if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
3874        source = '(?: ' + source + ')';
3875        strCopy = ' ' + strCopy;
3876        charsAdded++;
3877      }
3878      // ^(? + rx + ) is needed, in combination with some str slicing, to
3879      // simulate the 'y' flag.
3880      reCopy = new RegExp('^(?:' + source + ')', flags);
3881    }
3882
3883    if (NPCG_INCLUDED) {
3884      reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
3885    }
3886    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
3887
3888    match = nativeExec.call(sticky ? reCopy : re, strCopy);
3889
3890    if (sticky) {
3891      if (match) {
3892        match.input = match.input.slice(charsAdded);
3893        match[0] = match[0].slice(charsAdded);
3894        match.index = re.lastIndex;
3895        re.lastIndex += match[0].length;
3896      } else re.lastIndex = 0;
3897    } else if (UPDATES_LAST_INDEX_WRONG && match) {
3898      re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
3899    }
3900    if (NPCG_INCLUDED && match && match.length > 1) {
3901      // Fix browsers whose `exec` methods don't consistently return `undefined`
3902      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
3903      nativeReplace.call(match[0], reCopy, function () {
3904        for (i = 1; i < arguments.length - 2; i++) {
3905          if (arguments[i] === undefined) match[i] = undefined;
3906        }
3907      });
3908    }
3909
3910    return match;
3911  };
3912}
3913
3914module.exports = patchedExec;
3915
3916
3917/***/ }),
3918
3919/***/ 67:
3920/***/ (function(module, exports, __webpack_require__) {
3921
3922"use strict";
3923
3924var fixRegExpWellKnownSymbolLogic = __webpack_require__(83);
3925var anObject = __webpack_require__(13);
3926var toObject = __webpack_require__(34);
3927var toLength = __webpack_require__(18);
3928var toInteger = __webpack_require__(51);
3929var requireObjectCoercible = __webpack_require__(20);
3930var advanceStringIndex = __webpack_require__(106);
3931var regExpExec = __webpack_require__(84);
3932
3933var max = Math.max;
3934var min = Math.min;
3935var floor = Math.floor;
3936var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d\d?|<[^>]*>)/g;
3937var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d\d?)/g;
3938
3939var maybeToString = function (it) {
3940  return it === undefined ? it : String(it);
3941};
3942
3943// @@replace logic
3944fixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {
3945  var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;
3946  var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;
3947  var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';
3948
3949  return [
3950    // `String.prototype.replace` method
3951    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
3952    function replace(searchValue, replaceValue) {
3953      var O = requireObjectCoercible(this);
3954      var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];
3955      return replacer !== undefined
3956        ? replacer.call(searchValue, O, replaceValue)
3957        : nativeReplace.call(String(O), searchValue, replaceValue);
3958    },
3959    // `RegExp.prototype[@@replace]` method
3960    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
3961    function (regexp, replaceValue) {
3962      if (
3963        (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||
3964        (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)
3965      ) {
3966        var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
3967        if (res.done) return res.value;
3968      }
3969
3970      var rx = anObject(regexp);
3971      var S = String(this);
3972
3973      var functionalReplace = typeof replaceValue === 'function';
3974      if (!functionalReplace) replaceValue = String(replaceValue);
3975
3976      var global = rx.global;
3977      if (global) {
3978        var fullUnicode = rx.unicode;
3979        rx.lastIndex = 0;
3980      }
3981      var results = [];
3982      while (true) {
3983        var result = regExpExec(rx, S);
3984        if (result === null) break;
3985
3986        results.push(result);
3987        if (!global) break;
3988
3989        var matchStr = String(result[0]);
3990        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
3991      }
3992
3993      var accumulatedResult = '';
3994      var nextSourcePosition = 0;
3995      for (var i = 0; i < results.length; i++) {
3996        result = results[i];
3997
3998        var matched = String(result[0]);
3999        var position = max(min(toInteger(result.index), S.length), 0);
4000        var captures = [];
4001        // NOTE: This is equivalent to
4002        //   captures = result.slice(1).map(maybeToString)
4003        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
4004        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
4005        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
4006        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
4007        var namedCaptures = result.groups;
4008        if (functionalReplace) {
vendor: 10,321 bytes, lines 4009-4119
4009          var replacerArgs = [matched].concat(captures, position, S);
4010          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
4011          var replacement = String(replaceValue.apply(undefined, replacerArgs));
4012        } else {
4013          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
4014        }
4015        if (position >= nextSourcePosition) {
4016          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
4017          nextSourcePosition = position + matched.length;
4018        }
4019      }
4020      return accumulatedResult + S.slice(nextSourcePosition);
4021    }
4022  ];
4023
4024  // https://tc39.github.io/ecma262/#sec-getsubstitution
4025  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
4026    var tailPos = position + matched.length;
4027    var m = captures.length;
4028    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
4029    if (namedCaptures !== undefined) {
4030      namedCaptures = toObject(namedCaptures);
4031      symbols = SUBSTITUTION_SYMBOLS;
4032    }
4033    return nativeReplace.call(replacement, symbols, function (match, ch) {
4034      var capture;
4035      switch (ch.charAt(0)) {
4036        case '$': return '$';
4037        case '&': return matched;
4038        case '`': return str.slice(0, position);
4039        case "'": return str.slice(tailPos);
4040        case '<':
4041          capture = namedCaptures[ch.slice(1, -1)];
4042          break;
4043        default: // \d\d?
4044          var n = +ch;
4045          if (n === 0) return match;
4046          if (n > m) {
4047            var f = floor(n / 10);
4048            if (f === 0) return match;
4049            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
4050            return match;
4051          }
4052          capture = captures[n - 1];
4053      }
4054      return capture === undefined ? '' : capture;
4055    });
4056  }
4057});
4058
4059
4060/***/ }),
4061
4062/***/ 754:
4063/***/ (function(module, __webpack_exports__, __webpack_require__) {
4064
4065"use strict";
4066__webpack_require__.r(__webpack_exports__);
4067/* harmony import */ var core_js_modules_es_array_concat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29);
4068/* harmony import */ var core_js_modules_es_array_concat__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat__WEBPACK_IMPORTED_MODULE_0__);
4069/* harmony import */ var core_js_modules_es_array_filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25);
4070/* harmony import */ var core_js_modules_es_array_filter__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter__WEBPACK_IMPORTED_MODULE_1__);
4071/* harmony import */ var core_js_modules_es_array_find__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(755);
4072/* harmony import */ var core_js_modules_es_array_find__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find__WEBPACK_IMPORTED_MODULE_2__);
4073/* harmony import */ var core_js_modules_es_array_for_each__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(26);
4074/* harmony import */ var core_js_modules_es_array_for_each__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_for_each__WEBPACK_IMPORTED_MODULE_3__);
4075/* harmony import */ var core_js_modules_es_array_from__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(756);
4076/* harmony import */ var core_js_modules_es_array_from__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_from__WEBPACK_IMPORTED_MODULE_4__);
4077/* harmony import */ var core_js_modules_es_array_includes__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(125);
4078/* harmony import */ var core_js_modules_es_array_includes__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes__WEBPACK_IMPORTED_MODULE_5__);
4079/* harmony import */ var core_js_modules_es_array_index_of__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(757);
4080/* harmony import */ var core_js_modules_es_array_index_of__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_index_of__WEBPACK_IMPORTED_MODULE_6__);
4081/* harmony import */ var core_js_modules_es_array_iterator__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(230);
4082/* harmony import */ var core_js_modules_es_array_iterator__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_iterator__WEBPACK_IMPORTED_MODULE_7__);
4083/* harmony import */ var core_js_modules_es_array_join__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(188);
4084/* harmony import */ var core_js_modules_es_array_join__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_join__WEBPACK_IMPORTED_MODULE_8__);
4085/* harmony import */ var core_js_modules_es_array_map__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(57);
4086/* harmony import */ var core_js_modules_es_array_map__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map__WEBPACK_IMPORTED_MODULE_9__);
4087/* harmony import */ var core_js_modules_es_array_slice__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(190);
4088/* harmony import */ var core_js_modules_es_array_slice__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice__WEBPACK_IMPORTED_MODULE_10__);
4089/* harmony import */ var core_js_modules_es_array_some__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(192);
4090/* harmony import */ var core_js_modules_es_array_some__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_some__WEBPACK_IMPORTED_MODULE_11__);
4091/* harmony import */ var core_js_modules_es_array_splice__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(761);
4092/* harmony import */ var core_js_modules_es_array_splice__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_splice__WEBPACK_IMPORTED_MODULE_12__);
4093/* harmony import */ var core_js_modules_es_object_keys__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(22);
4094/* harmony import */ var core_js_modules_es_object_keys__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys__WEBPACK_IMPORTED_MODULE_13__);
4095/* harmony import */ var core_js_modules_es_object_to_string__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(193);
4096/* harmony import */ var core_js_modules_es_object_to_string__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string__WEBPACK_IMPORTED_MODULE_14__);
4097/* harmony import */ var core_js_modules_es_promise__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(762);
4098/* harmony import */ var core_js_modules_es_promise__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_promise__WEBPACK_IMPORTED_MODULE_15__);
4099/* harmony import */ var core_js_modules_es_regexp_exec__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(35);
4100/* harmony import */ var core_js_modules_es_regexp_exec__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec__WEBPACK_IMPORTED_MODULE_16__);
4101/* harmony import */ var core_js_modules_es_string_ends_with__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(229);
4102/* harmony import */ var core_js_modules_es_string_ends_with__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_ends_with__WEBPACK_IMPORTED_MODULE_17__);
4103/* harmony import */ var core_js_modules_es_string_includes__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(127);
4104/* harmony import */ var core_js_modules_es_string_includes__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes__WEBPACK_IMPORTED_MODULE_18__);
4105/* harmony import */ var core_js_modules_es_string_iterator__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(266);
4106/* harmony import */ var core_js_modules_es_string_iterator__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator__WEBPACK_IMPORTED_MODULE_19__);
4107/* harmony import */ var core_js_modules_es_string_match__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(105);
4108/* harmony import */ var core_js_modules_es_string_match__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_match__WEBPACK_IMPORTED_MODULE_20__);
4109/* harmony import */ var core_js_modules_es_string_replace__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(67);
4110/* harmony import */ var core_js_modules_es_string_replace__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_replace__WEBPACK_IMPORTED_MODULE_21__);
4111/* harmony import */ var core_js_modules_es_string_search__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(770);
4112/* harmony import */ var core_js_modules_es_string_search__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_search__WEBPACK_IMPORTED_MODULE_22__);
4113/* harmony import */ var core_js_modules_es_string_split__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(151);
4114/* harmony import */ var core_js_modules_es_string_split__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_split__WEBPACK_IMPORTED_MODULE_23__);
4115/* harmony import */ var core_js_modules_es_string_starts_with__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(772);
4116/* harmony import */ var core_js_modules_es_string_starts_with__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_starts_with__WEBPACK_IMPORTED_MODULE_24__);
4117/* harmony import */ var core_js_modules_es_string_trim__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(154);
4118/* harmony import */ var core_js_modules_es_string_trim__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_trim__WEBPACK_IMPORTED_MODULE_25__);
4119/* harmony import */ var core_js_modules_web_dom_collections_for_each__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(27);
4120/* harmony import */ var core_js_modules_web_dom_collections_for_each__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each__WEBPACK_IMPORTED_MODULE_26__);
4121/* harmony import */ var core_js_modules_web_dom_collections_iterator__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(773);
4122/* harmony import */ var core_js_modules_web_dom_collections_iterator__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator__WEBPACK_IMPORTED_MODULE_27__);
4123/* harmony import */ var core_js_modules_web_url__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(774);
4124/* harmony import */ var core_js_modules_web_url__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_url__WEBPACK_IMPORTED_MODULE_28__);
4125/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(238);
4126/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_29___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_29__);
4127/* harmony import */ var regenerator_runtime_runtime__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(268);
4128/* harmony import */ var regenerator_runtime_runtime__WEBPACK_IMPORTED_MODULE_30___default = /*#__PURE__*/__webpack_require__.n(regenerator_runtime_runtime__WEBPACK_IMPORTED_MODULE_30__);
4129/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(472);
4130/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_31___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_31__);
4131/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(42);
4132/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_32___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_32__);
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167var _$5, _$6, _$7, _$7$find;
4168
4169var waypoints = __webpack_require__(779);
4170
4171var _require = __webpack_require__(783),
4172    scrollToElement = _require.scrollToElement;
4173
4174var _require2 = __webpack_require__(784),
4175    isInterentExplorerDevice = _require2.isInterentExplorerDevice;
4176/* eslint-disable no-undef */
4177
4178
4179$(function () {
4180  // Carousels
4181  $(window).on('resize', function () {
4182    if ($('.slider-for').length) $('.slider-for')[0].slick.refresh();
4183  });
4184  $('.slider-for').slick({
4185    slidesToShow: 1,
4186    slidesToScroll: 1,
4187    arrows: false,
4188    dots: true,
4189    draggable: false,
4190    swipe: false,
4191    appendDots: '.compound-hero__slick-dots',
4192    responsive: [{
4193      breakpoint: 992,
4194      settings: {
4195        draggable: true,
4196        swipe: true
4197      }
4198    }]
4199  });
4200  /* eslint-disable max-len */
4201
4202  $('.recommended-insights__list').each(function (id) {
4203    var slider = $(this);
4204    this.id = "recommended-insights-list-".concat(id);
4205    var actions = $(".recommended-insights__actions-".concat(id));
4206    var counts = actions.find('.recommended-insights__counts');
4207    var arrows = actions.find('.recommended-insights__arrows');
4208    if (id === 0) actions.css('display', 'block');else actions.css('display', 'none');
4209    slider.on('init reInit afterChange', function (_, slick, currentSlide) {
4210      var currentSlideNumber = currentSlide ? currentSlide : 0;
4211      var i = currentSlideNumber + 1;
4212      var slidesToShow = slick.options.slidesToShow;
4213
4214      if (slidesToShow > 1) {
4215        counts.html("<b>".concat(i, "</b> - <b>").concat(currentSlideNumber + slidesToShow, "</b> of <span>").concat(slick.slideCount, "</span>"));
4216      } else {
4217        counts.html("<b>".concat(i, "</b> of <span>").concat(slick.slideCount, "</span>"));
4218      }
4219    });
4220    slider.slick({
4221      slidesToShow: 1,
4222      slidesToScroll: 1,
4223      infinite: false,
4224      arrows: true,
4225      appendArrows: arrows,
4226      prevArrow: "\n      <button class=\"recommended-insights__carousel-control recommended-insights__carousel-control--prev\" type=\"button\">\n        <svg\n          aria-hidden=\"true\"\n          focusable=\"false\"\n          data-prefix=\"far\"\n          data-icon=\"chevron-left\"\n          class=\"svg-inline--fa fa-chevron-left fa-w-16 fa-lg icon\"\n          role=\"img\"\n          xmlns=\"http://www.w3.org/2000/svg\"\n          viewB
4226ox=\"0 0 18 18\"\n        >\n          <path\n            fill=\"currentColor\"\n            d=\"M13.13 2.26a.75.75 0 00-.22-.54.75.75 0 00-1.07 0L5.1 8.47a.75.75 0 000 1.06l6.75 6.75a.75.75 0 001.07 0 .75.75 0 000-1.06L6.69 9l6.22-6.22a.75.75 0 00.21-.52z\"\n          >\n          </path>\n        </svg>\n      </button>\n    ",
4227      nextArrow: "\n      <button class=\"recommended-insights__carousel-control recommended-insights__carousel-control--next\" type=\"button\">\n        <svg\n          aria-hidden=\"true\"\n          focusable=\"false\"\n          data-prefix=\"far\"\n          data-icon=\"chevron-right\"\n          class=\"svg-inline--fa fa-chevron-right fa-w-16 fa-lg icon\"\n          role=\"img\"\n          xmlns=\"http://www.w3.org/2000/svg\"\n          viewBox=\"0 0 18 18\"\n        >\n          <path\n            fill=\"currentColor\"\n            d=\"M4.87 15.74a.75.75 0 00.22.54.75.75 0 001.07 0l6.75-6.75a.75.75 0 000-1.06L6.16 1.72a.75.75 0 00-1.07 0 .75.75 0 000 1.06L11.31 9 5.1 15.22a.75.75 0 00-.22.52z\"\n          >\n          </path>\n        </svg>\n      </button>\n    ",
4228      mobileFirst: true,
4229      responsive: [{
4230        breakpoint: 1199,
4231        settings: {
4232          slidesToShow: 3,
4233          slidesToScroll: 1
4234        }
4235      }, {
4236        breakpoint: 767,
4237        settings: {
4238          slidesToShow: 2,
4239          slidesToScroll: 1
4240        }
4241      }]
4242    });
4243  });
4244  $('.recommended-insights .tab-nav__link').on('shown.bs.tab', function () {
4245    var id = $(this).index('.recommended-insights .tab-nav__link');
4246    $('.tab-nav__list li').each(function (index) {
4247      $(".recommended-insights__actions-".concat(index)).css('display', 'none');
4248    });
4249    $(".recommended-insights__actions-".concat(id)).css('display', 'block');
4250  });
4251  $('.carousel-block__main--desktop').each(function (id) {
4252    var slider = $(this);
4253    this.id = "carousel-block-".concat(id);
4254    slider.on('init reInit afterChange', function (_, slick, currentSlide) {
4255      var currentSlideNumber = currentSlide ? currentSlide : 0;
4256      var i = currentSlideNumber + 1;
4257      var slidesToShow = slick.options.slidesToShow;
4258      var el = $("#carousel-block-".concat(id)).prev().find(".carousel-block__main--desktop-count");
4259
4260      if (slidesToShow > 1) {
4261        el.html("<b>".concat(i, "</b> - <b>").concat(currentSlideNumber + slidesToShow, "</b> of <span>").concat(slick.slideCount, "</span>"));
4262      } else {
4263        el.html("<b>".concat(i, "</b> of <span>").concat(slick.slideCount, "</span>"));
4264      } // check to see if there are one or less slides
4265
4266
4267      if (slick.slideCount < slidesToShow) {
4268        slider.find('.slick-dots').hide();
4269      }
4270    });
4271    slider.slick({
4272      slidesToShow: 3,
4273      slidesToScroll: 3,
4274      infinite: true,
4275      arrows: true,
4276      dots: true,
4277      appendArrows: $('.carousel-block__control-container')[id],
4278      prevArrow: "\n        <button class=\"carousel-block__control carousel-block__control--prev\" type=\"button\">\n          <svg\n            aria-hidden=\"true\"\n            focusable=\"false\"\n            data-prefix=\"far\"\n            data-icon=\"chevron-left\"\n            class=\"svg-inline--fa fa-chevron-left fa-w-16 fa-3x icon\"\n            role=\"img\"\n            xmlns=\"http://www.w3.org/2000/svg\"\n            viewB
4278ox=\"0 0 18 18\"\n          >\n            <path\n              fill=\"currentColor\"\n              d=\"M13.13 2.26a.75.75 0 00-.22-.54.75.75 0 00-1.07 0L5.1 8.47a.75.75 0 000 1.06l6.75 6.75a.75.75 0 001.07 0 .75.75 0 000-1.06L6.69 9l6.22-6.22a.75.75 0 00.21-.52z\"\n            >\n            </path>\n          </svg>\n        </button>\n      ",
4279      nextArrow: "\n        <button class=\"carousel-block__control carousel-block__control--next\" type=\"button\">\n          <svg\n            aria-hidden=\"true\"\n            focusable=\"false\"\n            data-prefix=\"far\"\n            data-icon=\"chevron-right\"\n            class=\"svg-inline--fa fa-chevron-right fa-w-16 fa-3x icon\"\n            role=\"img\"\n            xmlns=\"http://www.w3.org/2000/svg\"\n            viewBox=\"0 0 18 18\"\n          >\n            <path\n              fill=\"currentColor\"\n              d=\"M4.87 15.74a.75.75 0 00.22.54.75.75 0 001.07 0l6.75-6.75a.75.75 0 000-1.06L6.16 1.72a.75.75 0 00-1.07 0 .75.75 0 000 1.06L11.31 9 5.1 15.22a.75.75 0 00-.22.52z\"\n            >\n            </path>\n          </svg>\n        </button>\n      ",
4280      mobileFirst: true,
4281      responsive: [{
4282        breakpoint: 1199,
4283        settings: {
4284          slidesToShow: 3,
4285          slidesToScroll: 3
4286        }
4287      }, {
4288        breakpoint: 767,
4289        settings: {
4290          slidesToShow: 2,
4291          slidesToScroll: 2
4292        }
4293      }]
4294    });
4295  });
4296  $('.fund-carousel-block__main--desktop').each(function (id) {
4297    var slider = $(this);
4298    this.id = "fund-carousel-block-".concat(id);
4299    slider.on('init reInit afterChange', function (_, slick, currentSlide) {
4300      var currentSlideNumber = currentSlide ? currentSlide : 0;
4301      var i = currentSlideNumber + 1;
4302      var slidesToShow = slick.options.slidesToShow;
4303      var el = $("#fund-carousel-block-".concat(id)).prev().find(".fund-carousel-block__main--desktop-count");
4304
4305      if (slidesToShow > 1) {
4306        el.html("<b>".concat(i, "</b> - <b>").concat(currentSlideNumber + slidesToShow, "</b> of <span>").concat(slick.slideCount, "</span>"));
4307      } else {
4308        el.html("<b>".concat(i, "</b> of <span>").concat(slick.slideCount, "</span>"));
4309      }
4310    });
4311    slider.slick({
4312      slidesToShow: 1,
4313      slidesToScroll: 1,
4314      infinite: false,
4315      arrows: true,
4316      appendArrows: $('.fund-carousel-block__control-container')[id],
4317      prevArrow: "\n        <button class=\"fund-carousel-block__control fund-carousel-block__control--prev\" type=\"button\">\n          <svg\n            aria-hidden=\"true\"\n            focusable=\"false\"\n            data-prefix=\"far\"\n            data-icon=\"chevron-left\"\n            class=\"svg-inline--fa fa-chevron-left fa-w-16 fa-lg icon\"\n            role=\"img\"\n            xmlns=\"http://www.w3.org/2000/svg\"\n            viewB
4317ox=\"0 0 18 18\"\n          >\n            <path\n              fill=\"currentColor\"\n              d=\"M13.13 2.26a.75.75 0 00-.22-.54.75.75 0 00-1.07 0L5.1 8.47a.75.75 0 000 1.06l6.75 6.75a.75.75 0 001.07 0 .75.75 0 000-1.06L6.69 9l6.22-6.22a.75.75 0 00.21-.52z\"\n            >\n            </path>\n          </svg>\n        </button>\n      ",
4318      nextArrow: "\n        <button class=\"fund-carousel-block__control fund-carousel-block__control--next\" type=\"button\">\n          <svg\n            aria-hidden=\"true\"\n            focusable=\"false\"\n            data-prefix=\"far\"\n            data-icon=\"chevron-right\"\n            class=\"svg-inline--fa fa-chevron-right fa-w-16 fa-lg icon\"\n            role=\"img\"\n            xmlns=\"http://www.w3.org/2000/svg\"\n            viewBox=\"0 0 18 18\"\n          >\n            <path\n              fill=\"currentColor\"\n              d=\"M4.87 15.74a.75.75 0 00.22.54.75.75 0 001.07 0l6.75-6.75a.75.75 0 000-1.06L6.16 1.72a.75.75 0 00-1.07 0 .75.75 0 000 1.06L11.31 9 5.1 15.22a.75.75 0 00-.22.52z\"\n            >\n            </path>\n          </svg>\n        </button>\n      ",
4319      mobileFirst: true,
4320      responsive: [{
4321        breakpoint: 1199,
4322        settings: {
4323          slidesToShow: 3,
4324          slidesToScroll: 1
4325        }
4326      }, {
4327        breakpoint: 767,
4328        settings: {
4329          slidesToShow: 2,
4330          slidesToScroll: 1
4331        }
4332      }]
4333    });
4334  });
4335  $('.advert-block__carousel').each(function (id) {
4336    var slider = $(this);
4337    this.id = "advert-block__carousel-".concat(id);
4338    slider.slick({
4339      slidesToShow: 3,
4340      infinite: false,
4341      arrows: true,
4342      dots: false,
4343      variableWidth: true,
4344      appendArrows: $('.advert-block__control-container')[id],
4345      prevArrow: "\n        <button class=\"advert-block__control advert-block__left-icon mr-2\" type=\"button\">\n          <svg\n            aria-hidden=\"true\"\n            focusable=\"false\"\n            data-prefix=\"far\"\n            data-icon=\"arrow-left\"\n            class=\"svg-inline--fa fa-arrow-left fa-w-16 fa-3x icon\"\n            role=\"img\"\n            xmlns=\"http://www.w3.org/2000/svg\"\n            viewB
4345ox=\"0 0 18 18\"\n          >\n            <path\n              fill=\"currentColor\"\n              d=\"M10.51 18.76a.75.75 0 00.54-.22.75.75 0 000-1.06l-4.73-4.71h13.2a.75.75 0 00.75-.75.75.75 0 00-.75-.75H6.28l4.77-4.75a.75.75 0 000-1.06.75.75 0 00-1.06 0l-6.04 6a.75.75 0 000 1.07L10 18.54a.75.75 0 00.52.22z\"\n            >\n            </path>\n          </svg>\n          <span class=\"sr-only slick-prev-click\">previous arrow icon</span>\n        </button>\n      ",
4346      nextArrow: "\n        <button class=\"advert-block__control advert-block__right-icon ml-2\" type=\"button\">\n          <svg\n            aria-hidden=\"true\"\n            focusable=\"false\"\n            data-prefix=\"far\"\n            data-icon=\"arrow-right\"\n            class=\"svg-inline--fa fa-arrow-right fa-w-16 fa-3x icon\"\n            role=\"img\"\n            xmlns=\"http://www.w3.org/2000/svg\"\n            viewBox=\"0 0 18 18\"\n          >\n            <path\n              fill=\"currentColor\"\n              d=\"M13.49 5.24a.75.75 0 00-.54.22.75.75 0 000 1.06l4.73 4.71H4.48a.75.75 0 00-.75.75.75.75 0 00.75.75h13.24l-4.77 4.75a.75.75 0 000 1.06.75.75 0 001.06 0l6.04-6a.75.75 0 000-1.07L14 5.46a.75.75 0 00-.52-.22z\"\n            >\n            </path>\n          </svg>\n          <span class=\"sr-only slick-next-click\">next arrow icon</span>\n        </button>\n      ",
4347      responsive: [{
4348        breakpoint: 1400,
4349        settings: {
4350          slidesToShow: 2
4351        }
4352      }, {
4353        breakpoint: 992,
4354        settings: {
4355          slidesToShow: 2
4356        }
4357      }, {
4358        breakpoint: 767,
4359        settings: {
4360          slidesToShow: 1
4361        }
4362      }, {
4363        breakpoint: 370,
4364        settings: {
4365          slidesToShow: 1
4366        }
4367      }]
4368    });
4369  });
4370  $('.home-page-hero-old__carousel-desktop').each(function (id) {
4371    var slider = $(this);
4372    this.id = "home-page-hero-old__carousel-desktop-".concat(id);
4373    slider.slick({
4374      slidesToShow: 1,
4375      slidesToScroll: 1,
4376      infinite: true,
4377      arrows: true,
4378      dots: true,
4379      swipeToSlide: true,
4380      variableWidth: true,
4381      touchThreshold: 100,
4382      loop: true,
4383      autoplay: true,
4384      autoplaySpeed: 10000,
4385      appendDots: $('.home-page-hero-old__control-container-desktop'),
4386      appendArrows: $('.home-page-hero-old__control-container-desktop'),
4387      prevArrow: "\n        <button class=\"home-page-hero-old__control home-page-hero__left-icon mr-2\" type=\"button\">\n          <img src=\"/areas/proshares/assets/icons/chevron-left-black.svg\"/>\n        </button>\n      ",
4388      nextArrow: "\n        <button class=\"home-page-hero-old__control home-page-hero-old__right-icon ml-2\" type=\"button\">\n          <img src=\"/areas/proshares/assets/icons/chevron-right-black.svg\"/>\n        </button>\n      "
4389    });
4390  });
4391  $('.home-page-hero-old__carousel-mobile').each(function (id) {
4392    var slider = $(this);
4393    this.id = "home-page-hero-old__carousel-mobile-".concat(id);
4394    slider.slick({
4395      slidesToShow: 1,
4396      slidesToScroll: 1,
4397      infinite: true,
4398      arrows: true,
4399      dots: true,
4400      swipeToSlide: true,
4401      touchThreshold: 100,
4402      loop: true,
4403      autoplay: true,
4404      variableWidth: true,
4405      autoplaySpeed: 10000,
4406      appendDots: $('.home-page-hero-old__control-container-mobile'),
4407      appendArrows: $('.home-page-hero-old__control-container-mobile'),
4408      prevArrow: "\n        <button class=\"home-page-hero-old__control home-page-hero-old__left-icon mr-2\" type=\"button\">\n          <img src=\"/areas/proshares/assets/icons/chevron-left-black.svg\"/>\n        </button>\n      ",
4409      nextArrow: "\n        <button class=\"home-page-hero-old__control home-page-hero-old__right-icon ml-2\" type=\"button\">\n          <img src=\"/areas/proshares/assets/icons/chevron-right-black.svg\"/>\n        </button>\n      "
4410    });
4411  });
4412  $('.home-page-hero__carousel').each(function (id) {
4413    var slider = $(this);
4414    this.id = "home-page-hero__carousel-".concat(id);
4415    slider.on('init reInit afterChange', function (_, slick) {
4416      var currentSlide = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
4417      var currentSlideNode = slick.$slides[currentSlide];
4418
4419      if (currentSlideNode) {
4420        var _prevSvg$, _nextSvg$;
4421
4422        var prevSvg = slick.$prevArrow[0].getElementsByTagName('svg');
4423        var nextSvg = slick.$nextArrow[0].getElementsByTagName('svg');
4424        var prevSvgPath = (_prevSvg$ = prevSvg[0]) === null || _prevSvg$ === void 0 ? void 0 : _prevSvg$.getElementsByTagName('path');
4425        var nextSvgPath = (_nextSvg$ = nextSvg[0]) === null || _nextSvg$ === void 0 ? void 0 : _nextSvg$.getElementsByTagName('path');
4426        var dots = slick.$dots[0];
4427
4428        if (currentSlideNode.classList.contains('white-text') || currentSlideNode.classList.contains('dark-text')) {
4429          prevSvgPath[0].style.stroke = '#fff';
4430          nextSvgPath[0].style.stroke = '#fff';
4431          dots.classList.add('dots-white');
4432        } else {
4433          prevSvgPath[0].style.stroke = '#1d2632';
4434          nextSvgPath[0].style.stroke = '#1d2632';
4435          dots.classList.remove('dots-white');
4436        }
4437      }
4438    });
4439    slider.slick({
4440      slidesToShow: 1,
4441      slidesToScroll: 1,
4442      infinite: true,
4443      arrows: true,
4444      dots: true,
4445      swipeToSlide: true,
4446      touchThreshold: 100,
4447      autoplay: true,
4448      autoplaySpeed: 10000,
4449      appendDots: $('.home-page-hero__control-container'),
4450      appendArrows: $('.home-page-hero__control-container'),
4451      prevArrow: "\n        <button class=\"home-page-hero__control home-page-hero__left-icon mr-2\" type=\"button\">\n          <svg width=\"16\" height=\"29\" viewBox=\"0 0 16 29\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n            <path d=\"M14.3984 1.98828L1.96177 14.5008L14.3984 27.0133\" stroke=\"#1d2632\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n          </svg>\n        </button>\n      ",
4452      nextArrow: "\n        <button class=\"home-page-hero__control home-page-hero__right-icon ml-2\" type=\"button\">\n          <svg width=\"16\" height=\"29\" viewBox=\"0 0 16 29\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n            <path d=\"M1.60156 1.98828L14.0382 14.5008L1.60156 27.0133\" stroke=\"#1d2632\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n          </svg>\n        </button>\n      "
4453    });
4454  });
4455  $('.home-slider__carousel').each(function (id) {
4456    var slider = $(this);
4457    this.id = "home-slider__carousel-".concat(id);
4458    slider.slick({
4459      slidesToShow: 1.7,
4460      slidesToScroll: 1,
4461      centerMode: true,
4462      infinite: true,
4463      arrows: true,
4464      dots: true,
4465      swipeToSlide: true,
4466      touchThreshold: 100,
4467      autoplay: true,
4468      autoplaySpeed: 10000,
4469      appendDots: $('.home-slider__control-container'),
4470      appendArrows: $('.home-slider__control-container'),
4471      prevArrow: "\n        <button class=\"home-slider__control home-slider__left-icon mr-2\" type=\"button\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"27\" viewBox=\"0 0 32 27\" fill=\"none\">\n            <path d=\"M29.4375 13.8236L3.8375 13.8236\" stroke=\"#1081F2\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n            <path d=\"M12.7969 23.8151L3.09021 13.8229L12.7969 3.83075\" stroke=\"#1081F2\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n          </svg>\n        </button>\n      ",
4472      nextArrow: "\n        <button class=\"home-slider__control home-slider__right-icon ml-2\" type=\"button\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"27\" viewBox=\"0 0 32 27\" fill=\"none\">\n            <path d=\"M2.5625 13.1764L28.1625 13.1764\" stroke=\"#1081F2\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n            <path d=\"M19.2031 3.18494L28.9098 13.1771L19.2031 23.1692\" stroke=\"#1081F2\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n          </svg>\n        </button>\n      "
4473    });
4474  });
4475  /* eslint-disable max-params */
4476
4477  /* eslint-disable no-unused-vars */
4478
4479  $('.quote-block__carousel').each(function (id) {
4480    var slider = $(this);
4481    this.id = "quote-block__carousel-".concat(id);
4482    var status = $('.quote-block__carousel-count');
4483    slider.on('init reInit afterChange', function (event, slick, currentSlide, nextSlide) {
4484      var i = (currentSlide ? currentSlide : 0) + 1;
4485      status.text(i + ' of ' + slick.slideCount);
4486    });
4487    slider.slick({
4488      slidesToShow: 1,
4489      slidesToScroll: 1,
4490      infinite: false,
4491      arrows: true,
4492      dots: false,
4493      appendArrows: $('.quote-block__control-container'),
4494      prevArrow: "\n        <button class=\"quote-block__control quote-block__left-icon mr-2\" type=\"button\">\n          <img src=\"/areas/proshares/assets/icons/arrow-left-white.svg\"/>\n        </button>\n      ",
4495      nextArrow: "\n        <button class=\"quote-block__control quote-block__right-icon ml-2\" type=\"button\">\n          <img src=\"/areas/proshares/assets/icons/arrow-right-white.svg\"/>\n        </button>\n      "
4496    });
4497  }); // SiteHeader
4498
4499  $('.navbar-toggler').on('click', function (event) {
4500    var toggleElement = $(event.target),
4501        targetId = toggleElement.attr('data-target'),
4502        targetElement = $(targetId);
4503    toggleElement.hasClass('collapsed') && showBackDrop();
4504    toggleElement.toggleClass('collapsed');
4505    targetElement.toggleClass('show');
4506  });
4507  $('.navbar-toggler').on('click', function () {
4508    $('.navbar').toggleClass('border-white');
4509  });
4510  $(document).on('click.bs.dropdown.data-api', '.site-header__mobile-menu .dropdown-menu', function (event) {
4511    event.stopPropagation();
4512  }); //site header opens blurs background
4513
4514  $('.site-header__navbar-dropdown').on('show.bs.dropdown', function () {
4515    showBackDrop(); // Set styles so table header doesn't highlight when nav menu is open
4516
4517    $('.table.fixed-header, .fund-screener-dropdown-table .fund-screener-table div table thead tr').css('z-index', '0');
4518    $('.fund-screener-dropdown-table .fund-screener-table div table tbody').css({
4519      'z-index': '-1',
4520      position: 'relative'
4521    });
4522  });
4523  $('.site-header__navbar-dropdown').on('hide.bs.dropdown', function () {
4524    hideBackDrop(); // Reset styles when nav menu is closed
4525
4526    $('.table.fixed-header thead tr, .fund-screener-dropdown-table .fund-screener-table div table thead tr').css('z-index', '1000');
4527    $('.fund-screener-dropdown-table .fund-screener-table div table tbody').css({
4528      'z-index': '',
4529      position: ''
4530    });
4531  });
4532  $('.site-header__mobile-sub-submenu-toggle').on('click', function () {
4533    $(this).parent().parent().removeClass('show');
4534    $(this).parent().parent().parent().removeClass('show');
4535  }); // /***** OUR ETF First Nav Menu Mobile Changes START ****/
4536
4537  $('.site-header__navbar-dropdown-second-level').on('click', function (e) {
4538    // Check if the target is not the mobile submenu
4539    if (!$(e.target).closest('.site-header__mobile-sub-submenu-second-level').length) {
4540      e.stopPropagation();
4541      $(this).find('.dropdown-menu').addClass('show');
4542    }
4543  }); // For mobile submenu click - remove the dropdown show
4544
4545  $('.site-header__mobile-sub-submenu-second-level').on('click', function () {
4546    $(this).closest('.site-header__navbar-dropdown-second-level').find('.dropdown-menu').removeClass('show');
4547  }); // /***** OUR ETF First Nav Menu Mobile Changes END ****/
4548  // const $table = $('.table');
4549  // $table.floatThead({
4550  //   top: 84,
4551  //   zIndex: 1,
4552  //   responsiveContainer: function($table) {
4553  //     return $table.closest('.tab-content');
4554  //   },
4555  //   getSizingRow: function($table) {
4556  //     return $table.find('tbody tr:not(.grouping):visible:first>*');
4557  //   },
4558  //   useAbsolutePositioning: true,
4559  // });
4560  // Table header leg for IE
4561
4562  $('.fund-explorer-table').each(function () {
4563    if (isInterentExplorerDevice) {
4564      $('body').on('mousewheel', function () {
4565        event.preventDefault();
4566        var wheelDelta = event.wheelDelta;
4567        var currentScrollPosition = window.pageYOffset;
4568        window.scrollTo(0, currentScrollPosition - wheelDelta);
4569      });
4570    }
4571
4572    document.getElementsByTagName('body')[0].addEventListener('wheel', function (event) {
4573      event.stopPropagation();
4574    }, true);
4575  }); // Prices table - view and hide data
4576
4577  $('.fund-explorer-table__data-link').on('click', function () {
4578    var cell = $(this),
4579        parent = cell.closest('.fund-explorer-table__expandable-row');
4580
4581    if (cell.hasClass('collapsed')) {
4582      parent.addClass('selected-row');
4583    } else {
4584      parent.removeClass('selected-row');
4585    }
4586  });
4587  waypoints.init();
4588  waypoints.sectionHeaderInit();
4589  waypoints.tableHeaderInit();
4590});
4591/* scroll to top */
4592
4593$(window).scroll(function () {
4594  if ($(window).scrollTop() >= $('main').offset().top + $('main').outerHeight() - window.innerHeight) {
4595    $('.scroll-to-top').css({
4596      animation: 'fadeIn 0s',
4597      visibility: 'visible'
4598    });
4599    $('.scroll-to-top').addClass('table-sticky').removeClass('sticky-fixed');
4600  } else if ($(this).scrollTop() < 100) {
4601    $('.scroll-to-top').css({
4602      animation: 'fadeIn 0s',
4603      visibility: 'hidden'
4604    });
4605  } else {
4606    $('.scroll-to-top').css({
4607      animation: 'fadeOut 0s',
4608      visibility: 'visible'
4609    });
4610    $('.scroll-to-top').addClass('sticky-fixed').removeClass('table-sticky');
4611  }
4612});
4613$('.scroll-to-top').on('click', function () {
4614  $('.scroll-to-top').css({
4615    animation: 'fadeIn 0s',
4616    visibility: 'hidden'
4617  });
4618  window.scrollTo({
4619    top: 0,
4620    behavior: 'smooth'
4621  });
4622});
4623/* sticky nav shadow */
4624
4625$('.site-header__nav-item').hover(function () {
4626  $('.site-header.sticky').css('z-index', 1060);
4627}, function () {
4628  $('.site-header.sticky').css('z-index', 1020);
4629});
4630/* tabel header sticky */
4631
4632$(window).scroll(function () {
4633  $('.fund-explorer-table').each(function () {
4634    if ($(window).scrollTop() >= $(this).offset().top + $(this).height() || $(window).scrollTop() < $(this).offset().top) {
4635      $(this).find('.fund-explorer-table__filter').removeClass('sticky');
4636    } else {
4637      $(this).find('.fund-explorer-table__filter').addClass('sticky');
4638    }
4639  });
4640});
4641/* popover */
4642
4643$(function () {
4644  $('.fund-explorer-table-tooltip-item').each(function (i, e) {
4645    var $ele = $(e),
4646        $popoverLink = $ele.next('.fund-explorer-table-tooltip-content'),
4647        popoverID = 'popoverid' + String(Math.random()).substr(2);
4648    $(this).attr('id', popoverID);
4649    $popoverLink.attr('id', 'po' + popoverID);
4650    $ele.popover({
4651      html: true,
4652      trigger: 'hover',
4653      content: function content() {
4654        var id = $(this).attr('id');
4655        return $('#po' + id).html();
4656      },
4657      popperConfig: {
4658        placement: 'right-start'
4659      }
4660    });
4661  });
4662}); // On Thead Popover
4663
4664$('.sort-thead').hover(function () {
4665  $('.floatThead-container').addClass('popover-height');
4666}, function () {
4667  $('.floatThead-container').removeClass('popover-height');
4668}); //daterangepicker
4669// $(function() {
4670//   const startDate = moment('03/15/2020'),
4671//         endDate = moment('03/15/2021');
4672//   $('.datepicker span').html(startDate.format('MM/DD/YYYY') + ' - ' + endDate.format('MM/DD/YYYY'));
4673//   $('.datepicker-btn').daterangepicker({ startDate: '', endDate: '' });
4674//   function cb(ele) {
4675//     $('.nav-item a').click(function() {
4676//       const tabValue = $(this).text(),
4677//             dateBtn = $(this).closest('ul').closest('div').closest('.pt-4').find('.datepicker-btn'),
4678//             dateShow = $(this).closest('ul').closest('div').closest('.pt-4').find('.datepicker-date');
4679//       dateShow.addClass('active-date active');
4680//       if (tabValue === 'Last 1 Year') {
4681//         dateBtn.data('daterangepicker').setStartDate('03/15/2020');
4682//         dateBtn.data('daterangepicker').setEndDate('03/15/2021');
4683//         dateShow.text('03/15/2020 - 03/15/2021');
4684//       }
4685//       else if (tabValue === 'Last 5 Year') {
4686//         dateBtn.data('daterangepicker').setStartDate('03/15/2016');
4687//         dateBtn.data('daterangepicker').setEndDate('03/15/2021');
4688//         dateShow.text('03/15/2016 - 03/15/2021');
4689//       }
4690//       else if (tabValue === '2020 - Q4') {
4691//         dateBtn.data('daterangepicker').setStartDate('10/01/2020');
4692//         dateBtn.data('daterangepicker').setEndDate('12/31/2020');
4693//         dateShow.text('10/01/2020 - 12/31/2020');
4694//       }
4695//       else if (tabValue === '2020 - Q3') {
4696//         dateBtn.data('daterangepicker').setStartDate('07/01/2020');
4697//         dateBtn.data('daterangepicker').setEndDate('09/30/2020');
4698//         dateShow.text('07/01/2020 - 09/30/2020');
4699//       }
4700//       else if (tabValue === '2020 - Q2') {
4701//         dateBtn.data('daterangepicker').setStartDate('04/01/2020');
4702//         dateBtn.data('daterangepicker').setEndDate('06/30/2020');
4703//         dateShow.text('04/01/2020 - 06/30/2020');
4704//       }
4705//       else if (tabValue === '2020 - Q1') {
4706//         dateBtn.data('daterangepicker').setStartDate('01/01/2020');
4707//         dateBtn.data('daterangepicker').setEndDate('03/31/2020');
4708//         dateShow.text('01/01/2020 - 03/31/2020');
4709//       }
4710//       else {
4711//         return;
4712//       }
4713//     });
4714//     $('.datepicker-btn').on('apply.daterangepicker', function() {
4715//       const tabSelect = $(this).closest('div').parent('div').prev('.fund-explorer-table__graph');
4716//       $(this).prev('.datepicker-date').removeClass('active');
4717//       if ($('.datepicker .datepicker-date').hasClass('active-date')) {
4718//         tabSelect.find('.nav-link.active').removeClass('active');
4719//       }
4720//     });
4721//     return function(startDate, endDate) {
4722//       const datepickerSpan = $(ele).prev('span');
4723//       datepickerSpan.html(startDate.format('MM/DD/YYYY') + ' - ' + endDate.format('MM/DD/YYYY'));
4724//       datepickerSpan.addClass('active-date');
4725//       datepickerSpan.removeClass('active');
4726//     };
4727//   }
4728//   $('[id^=date-]').each(function() {
4729//     const idRange = $(this).attr('id');
4730//     $(this).daterangepicker({
4731//       parentEl: '#daterange-' + idRange,
4732//       startDate: '03/15/2020',
4733//       endDate: '03/15/2021',
4734//       autoUpdateInput: false,
4735//       linkedCalendars: false,
4736//       showCustomRangeLabel: false,
4737//       cancelClass: 'daterangepicker-cancelbtn',
4738//       opens: 'center',
4739//       drops: 'up',
4740//       locale: {
4741//         format: 'MM/DD/YYYY',
4742//         applyLabel: 'Go',
4743//         cancelLabel: '',
4744//       },
4745//     }, cb(this));
4746//   });
4747//   cb(this)(startDate, endDate);
4748// });
4749
4750function showBackDrop() {
4751  var modalBack = document.createElement('div');
4752  modalBack.classList.add('modal-back');
4753  document.getElementById('root').appendChild(modalBack);
4754}
4755
4756function hideBackDrop() {
4757  document.querySelectorAll('.modal-back').forEach(function (e) {
4758    return e.remove();
4759  });
4760}
4761
4762$(document).ready(function () {
4763  $('.daterangepicker .ranges').after('<h5 class="daterangepicker-title">Select Date Range</h5>');
4764}); //Date selector popup - unbold
4765
4766$('.fund-explorer-table__graph .nav-item a').click(function () {
4767  if ($(this).find('active')) {
4768    $('.datepicker .active-date').addClass('active');
4769  }
4770});
4771document.addEventListener('DOMContentLoaded', function () {
4772  var dropdown = document.querySelector('.hero-links'),
4773      dropdownItem = document.querySelectorAll('.hero-links-item'),
4774      moreButton = document.querySelector('#hero-links__more'),
4775      showMoreButton = document.querySelector('#hero-links__showmore'),
4776      closeButton = document.querySelector('#hero-links__close'),
4777      subMenu = document.querySelector('.hero-links__more'),
4778      overviewLink = document.querySelector('.hero-links__more-item #overview'),
4779      box = document.querySelector('#scroll-in-view'),
4780      viewAllTab = document.querySelector('.hero-links-selected-tab'),
4781      viewAllTabDopDown = document.querySelector('.hero-links__more-list'),
4782      viewAllTabDopDownItem = document.querySelectorAll('.hero-links__more-item'),
4783      dropdownSelectorLabel = document.querySelector('.hero-links__more-selected-label'),
4784      stickyNavPos = document.querySelector('.hero__header-links'),
4785      offsetY = stickyNavPos && stickyNavPos.offsetTop,
4786      closebtn = document.querySelector('#homepage-promo-close-btn'),
4787      promo = document.querySelector('.homepage-promo'),
4788      moveToArrow = document.querySelector('.fund-marketing-hero__left-move-to'),
4789      moveTo = document.querySelector('.fund-marketing-hero__left-move-to-img'),
4790      bannerIcon = document.querySelector('.fund-list-category-hero__menu-icon'),
4791      bannerButtonArrow = document.querySelector('.fund-list-category-hero__menu-icon-button'),
4792      bannerMenu = document.querySelector('.fund-list-category-hero__menu'),
4793      bannerMenuList = document.querySelector('.fund-list-category-hero__menu-list'),
4794      bannerButtonArrowClose = document.querySelector('.fund-list-category-hero__menu-list-items-close'),
4795      subnavIcon = document.querySelector('.fund-detail-hero__menu-icon'),
4796      subnavButtonArrow = document.querySelector('.fund-detail-hero__menu-icon-button'),
4797      subnavMenu = document.querySelector('.fund-detail-hero__menu'),
4798      subnavMenuList = document.querySelector('.fund-detail-hero__menu-list'),
4799      subnavButtonArrowClose = document.querySelector('.fund-detail-hero__menu-list-items-close'),
4800      faqQuestions = document.querySelectorAll('.faq-body__list-item-link'),
4801      titleDescription = document.querySelectorAll('.title-body__list-item-link'),
4802      hero = document.querySelector('.hero'),
4803      heroListing = document.querySelector('.hero__listing'),
4804      heroFootnote = document.querySelector('.hero__footnote'),
4805      iAmSelect = document.getElementById('iam'),
4806      companyRow = document.querySelector('.form__input-company'),
4807      companyInput = document.querySelector('#inputCompanyName'),
4808      formSubmit = document.querySelector('.submitForm'),
4809      formSubmitState = document.querySelector('#form-submit-state'),
4810      formLighboxClose = document.querySelector('.submitForm .close'),
4811      fundMarketingHero = document.querySelector('.fund-marketing-hero'),
4812      fundMarketingHeroLeft = document.querySelector('.fund-marketing-hero__left'),
4813      fundMarketingHeroRight = document.querySelector('.fund-marketing-hero__right'),
4814      isGatedForm = document.querySelector('.gated-form'),
4815      isProtectedForm = document.querySelector('.protected-form'),
4816      iframeLink = document.querySelectorAll('.download-iframe-link'),
4817      loadmore = document.querySelector('.related-insights__btn .btn'),
4818      analysisCardsLoadmore = document.querySelector('.analysis-cards__btn .btn'),
4819      lightboxForms = document.querySelectorAll('.lightbox-form'),
4820      indexTable = document.querySelector('.fund-screener-dropdown-table.index-table'),
4821      indexTableRows = indexTable && indexTable.querySelectorAll('tr'),
4822      indexTableBtns = indexTable && indexTable.querySelector('.fund-screener-dropdown-table__download-btns'),
4823      indexTableBtnOpen = indexTable && indexTable.querySelector('.btn.open-btn'),
4824      indexTableBtnClose = indexTable && indexTable.querySelector('.btn.close-btn'),
4825      homeHeroIcons = document.querySelectorAll('.home-page-hero__logo'),
4826      homeSliderIcons = document.querySelectorAll('.home-slider__logo'),
4827      advertBlockCards = document.querySelector('.advert-block__cards'),
4828      showAllAdvertBlockCards = advertBlockCards && advertBlockCards.nextElementSibling,
4829      tabItems = document.querySelectorAll('.documents-downloads__tabs-container'),
4830      viewAllDocTab = document.querySelector('.documents-downloads__mobiletabs-selected'),
4831      viewAllDocTabDropDown = document.querySelector('.documents-downloads__mobiletabs-list'),
4832      dropdownDocSelectorLabel = document.querySelector('.documents-downloads__mobiletabs-selected-label');
4833
4834  function handleFundMarketingHeroHeight() {
4835    if (fundMarketingHeroLeft && fundMarketingHeroRight) {
4836      if (fundMarketingHeroLeft.offsetHeight - fundMarketingHeroRight.offsetHeight < 40 && fundMarketingHeroLeft.offsetHeight - fundMarketingHeroRight.offsetHeight > 0) {
4837        if (window.innerWidth > 992) {
4838          fundMarketingHero.classList.add('fund-marketing-hero__space');
4839        }
4840      } else if (fundMarketingHeroLeft.offsetHeight < fundMarketingHeroRight.offsetHeight) {
4841        fundMarketingHeroLeft.style.height = "".concat(fundMarketingHeroRight.offsetHeight, "px");
4842
4843        if (window.innerWidth > 992) {
4844          if (!fundMarketingHero.classList.contains('fund-marketing-hero__space')) {
4845            fundMarketingHero.classList.add('fund-marketing-hero__space');
4846          }
4847        } else {
4848          if (fundMarketingHero.classList.contains('fund-marketing-hero__space')) {
4849            fundMarketingHero.classList.remove('fund-marketing-hero__space');
4850          }
4851        }
4852      }
4853
4854      if (window.innerWidth < 992) {
4855        fundMarketingHeroLeft.style.height = "auto";
4856      }
4857    }
4858  }
4859
4860  if (fundMarketingHeroLeft && fundMarketingHeroRight) {
4861    window.addEventListener('resize', function () {
4862      handleFundMarketingHeroHeight();
4863    });
4864    handleFundMarketingHeroHeight();
4865  }
4866
4867  function handleHeroListingHeight() {
4868    showHideClose();
4869    var heroListingHeight = heroListing.offsetHeight;
4870
4871    if (window.innerWidth > 991) {
4872      var value = heroFootnote ? 150 : 200;
4873
4874      if (heroListingHeight > Math.abs(value - hero.offsetHeight)) {
4875        hero.style.height = "".concat(heroListingHeight + value, "px");
4876      }
4877    } else {
4878      hero.style.height = "auto";
4879    }
4880  }
4881
4882  if (overviewLink) {
4883    overviewLink.addEventListener('click', function (e) {
4884      e.preventDefault();
4885      window.scroll({
4886        top: 0,
4887        behavior: 'smooth'
4888      });
4889    });
4890  }
4891
4892  if (showMoreButton) {
4893    if (dropdownItem.length <= 5) {
4894      showMoreButton.style.display = 'none';
4895    }
4896
4897    showMoreButton.addEventListener('click', function (e) {
4898      e.preventDefault();
4899      dropdown.classList.add('hero-links-all');
4900      showHideClose();
4901    });
4902  }
4903
4904  if (closeButton) {
4905    if (dropdownItem.length <= 5) {
4906      showMoreButton.style.display = 'none';
4907    }
4908
4909    closeButton.addEventListener('click', function (e) {
4910      e.preventDefault();
4911      dropdown.classList.remove('hero-links-all');
4912      showHideClose();
4913    });
4914  }
4915
4916  if (heroListing && hero) {
4917    window.addEventListener('resize', function () {
4918      handleHeroListingHeight();
4919    });
4920    handleHeroListingHeight();
4921  }
4922
4923  if (faqQuestions) {
4924    faqQuestions.forEach(function (question) {
4925      question.addEventListener('click', function (e) {
4926        e.preventDefault();
4927        var id = e.target.getAttribute('href').split('#')[1].split('.')[0],
4928            selectorId = document.getElementById(id),
4929            space = 20;
4930        selectorId && scrollToElement(selectorId, space);
4931      });
4932    });
4933  }
4934
4935  if (titleDescription) {
4936    titleDescription.forEach(function (title) {
4937      title.addEventListener('click', function (e) {
4938        e.preventDefault();
4939        var id = e.target.getAttribute('href').split('#')[1].split('.')[0],
4940            selectorId = document.getElementById(id),
4941            space = 20;
4942        selectorId && scrollToElement(selectorId, space);
4943      });
4944    });
4945  }
4946
4947  function showHideClose() {
4948    if (closeButton && !dropdown.classList.contains('hero-links-all')) {
4949      closeButton.classList.add('d-none');
4950      closeButton.classList.remove('d-block');
4951    } else {
4952      closeButton.classList.remove('d-none');
4953      closeButton.classList.add('d-block');
4954    }
4955  }
4956
4957  function dropdownClick(parent, itemList, className) {
4958    if (itemList) {
4959      itemList.forEach(function (elem) {
4960        elem.addEventListener('click', function (e) {
4961          e.preventDefault();
4962
4963          if (e.target.text) {
4964            var id = e.target.getAttribute('href').split('#')[1].split('.')[0],
4965                selectorId = document.getElementById(id);
4966            var space = stickyNavPos === null || stickyNavPos === void 0 ? void 0 : stickyNavPos.offsetHeight,
4967                isSticky = stickyNavPos === null || stickyNavPos === void 0 ? void 0 : stickyNavPos.classList.contains('hero__header-links-sticky');
4968
4969            if (window.innerWidth < 1200 && window.innerWidth > 768) {
4970              selectorId && scrollToElement(selectorId, 72);
4971            } else if (window.innerWidth <= 768) {
4972              if (!isSticky) {
4973                selectorId && scrollToElement(selectorId, space + 75);
4974              } else {
4975                selectorId && scrollToElement(selectorId, 72);
4976              }
4977            } else {
4978              selectorId && scrollToElement(selectorId, subMenu.offsetHeight);
4979            }
4980          }
4981
4982          if (className) {
4983            parent.classList.remove(className);
4984            dropdownSelectorLabel.classList.toggle('hero-links__more-selected-label-close');
4985          }
4986        });
4987      });
4988    }
4989  }
4990
4991  dropdownClick(dropdown, dropdownItem);
4992
4993  if (moreButton) {
4994    moreButton.addEventListener('click', function (e) {
4995      e.preventDefault();
4996      subMenu.classList.add('hero-links__more-show');
4997
4998      if (window.innerWidth < 1200) {
4999        viewAllTabDopDown.classList.add('hero-links__more-list-show');
5000        dropdownSelectorLabel.classList.add('hero-links__more-selected-label-close');
5001      }
5002    });
5003  }
5004
5005  var isInViewport = function isInViewport(element) {
5006    if (element) {
5007      var position = element.getBoundingClientRect && element.getBoundingClientRect();
5008      return position.top < window.innerHeight && position.bottom >= 0;
5009    }
5010  };
5011
5012  document.addEventListener('scroll', function () {
5013    if (isInViewport(box) && window.innerWidth >= 992) {
5014      subMenu && subMenu.classList.add('hero-links__more-show');
5015    } else {
5016      subMenu && subMenu.classList.remove('hero-links__more-show');
5017    }
5018
5019    if (window.pageYOffset > offsetY) {
5020      stickyNavPos && stickyNavPos.classList.add('hero__header-links-sticky');
5021    } else {
5022      stickyNavPos && stickyNavPos.classList.remove('hero__header-links-sticky');
5023    }
5024  }, {
5025    passive: true
5026  });
5027
5028  if (viewAllTab) {
5029    viewAllTab.addEventListener('click', function () {
5030      viewAllTabDopDown.classList.toggle('hero-links__more-list-show');
5031      dropdownSelectorLabel.classList.toggle('hero-links__more-selected-label-close');
5032    });
5033  }
5034
5035  dropdownClick(viewAllTabDopDown, viewAllTabDopDownItem, 'hero-links__more-list-show');
5036  var dropdownTabSelector = document.querySelectorAll('.tabs__selected'),
5037      dropdownTabItem = document.querySelectorAll('.tabs__list-item'),
5038      fundListHero = document.querySelector('.fund-list-hero');
5039
5040  function getAllSiblings(element, parent) {
5041    var children = _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_32___default()(parent.children);
5042
5043    return children.filter(function (child) {
5044      return child !== element;
5045    });
5046  }
5047
5048  if (dropdownTabSelector) {
5049    dropdownTabSelector.forEach(function (elem) {
5050      elem.addEventListener('click', function () {
5051        var parent = document.querySelector('.fund-screener-dropdown-table .fund-screener-dropdown-table__left-col');
5052        var siblings = parent && getAllSiblings(elem.closest('.dropdown'), parent);
5053        var discountParent = document.querySelector('.fund-list-hero .dropdown-parent');
5054        var discountSiblings = discountParent && getAllSiblings(elem.closest('.fund-list-hero__dropdown'), discountParent);
5055
5056        if (siblings) {
5057          siblings.forEach(function (item) {
5058            if (item.classList.contains('dropdown')) {
5059              var visible = item && item.querySelector('.dropdown__list-tab').classList.contains('tabs__visible');
5060
5061              if (visible) {
5062                item && item.querySelector('.dropdown__list-tab').classList.remove('tabs__visible');
5063                item && item.querySelector('.dropdown__list-selected-label').classList.remove('tabs__caret__caret-up');
5064              }
5065            }
5066          });
5067        }
5068
5069        if (discountSiblings) {
5070          discountSiblings.forEach(function (item) {
5071            if (item.classList.contains('fund-list-hero__dropdown')) {
5072              var visible = item && item.querySelector('.fund-list-hero__list-tab').classList.contains('tabs__visible');
5073
5074              if (visible) {
5075                item && item.querySelector('.fund-list-hero__list-tab').classList.remove('tabs__visible');
5076                item && item.querySelector('.fund-list-hero__list-selected-label').classList.remove('tabs__caret__caret-up');
5077              }
5078            }
5079          });
5080        }
5081
5082        elem.parentElement.querySelector('.tabs__items').classList.toggle('tabs__visible');
5083        var span = elem.children[0];
5084        span.classList.toggle('tabs__caret__caret-up');
5085      });
5086    });
5087  }
5088
5089  if (dropdownTabItem) {
5090    dropdownTabItem.forEach(function (elem) {
5091      elem.addEventListener('click', function (e) {
5092        elem.parentElement.classList.remove('tabs__visible');
5093
5094        if (elem.parentElement.parentElement.querySelector('.dropdown__list-selected-label')) {
5095          elem.parentElement.parentElement.querySelector('.dropdown__list-selected-label').classList.remove('tabs__caret__caret-up');
5096        }
5097
5098        if (elem.parentElement.parentElement.querySelector('.tabs__selected-label')) {
5099          elem.parentElement.parentElement.querySelector('.tabs__selected-label').classList.remove('tabs__caret__caret-up');
5100        }
5101
5102        if (elem.parentElement.parentElement.querySelector('.tabs__selected-label')) {
5103          var dropdownWrapper = elem.closest('.dropdown__download-l
5103ist');
5104          var finalLabelText;
5105
5106          if (dropdownWrapper) {
5107            finalLabelText = Array.from(e.target.childNodes).filter(function (node) {
5108              return node.nodeType === Node.TEXT_NODE;
5109            }).map(function (node) {
5110              return node.textContent.trim();
5111            }).join('');
5112          } else {
5113            finalLabelText = e.target.innerText.trim();
5114          }
5115
5116          elem.parentElement.parentElement.querySelector('.tabs__selected-label').innerText = finalLabelText;
5117        }
5118
5119        if (elem.parentElement.parentElement.querySelector('.fund-list-hero .tabs__selected-label')) {
5120          fundListHero && (elem.parentElement.parentElement.querySelector('.fund-list-hero .tabs__selected-label').innerHTML = e.target.innerHTML);
5121        }
5122      });
5123    });
5124  }
5125  /*Close dropdown on background click */
5126
5127
5128  $(document).on('click', function (event) {
5129    var $trigger = $('.dropdown');
5130
5131    if ($trigger !== event.target && !$trigger.has(event.target).length) {
5132      $('.dropdown__list-tab').removeClass('tabs__visible');
5133      $('.dropdown__list-selected-label').removeClass('tabs__caret__caret-up');
5134    }
5135
5136    var $triggerFund = $('.fund-list-hero__dropdown');
5137
5138    if ($triggerFund !== event.target && !$triggerFund.has(event.target).length) {
5139      $('.fund-list-hero__list-tab').removeClass('tabs__visible');
5140      $('.fund-list-hero__list-selected-label').removeClass('tabs__caret__caret-up');
5141    }
5142  }); // homepage promo close btn
5143
5144  if (closebtn && promo) {
5145    closebtn.addEventListener('click', function (e) {
5146      e.preventDefault();
5147      promo.style.display = 'none';
5148      window.scrollTo(0, 0);
5149    });
5150  }
5151
5152  if (moveTo) {
5153    moveTo.addEventListener('click', function (e) {
5154      e.preventDefault();
5155      var scrollDiv = moveToArrow.closest('.fund-marketing-hero').nextElementSibling;
5156      scrollDiv && scrollToElement(scrollDiv, 0);
5157    });
5158  }
5159
5160  var dropdownBtn = document.querySelectorAll('.list'),
5161      mainCheckBtn = document.querySelectorAll('.main-check'),
5162      dropDiv = document.querySelectorAll('.fund-btn-div');
5163  dropdownBtn.forEach(function (elem) {
5164    elem.addEventListener('click', function (e) {
5165      e.stopPropagation();
5166    });
5167  });
5168  mainCheckBtn.forEach(function (elem) {
5169    elem.addEventListener('click', function () {
5170      if (elem.checked) {
5171        var inputs = elem.parentElement.parentElement.querySelectorAll('.sub-check');
5172
5173        for (var i = 0; i < inputs.length; i++) {
5174          inputs[i].checked = true;
5175        }
5176
5177        if (elem.classList.contains('intermidate-state')) {
5178          elem.classList.remove('intermidate-state');
5179          elem.checked = true;
5180        }
5181      } else {
5182        var _inputs = elem.parentElement.parentElement.querySelectorAll('.sub-check');
5183
5184        for (var _i = 0; _i < _inputs.length; _i++) {
5185          _inputs[_i].checked = false;
5186        }
5187
5188        if (elem.classList.contains('intermidate-state')) {
5189          elem.classList.remove('intermidate-state');
5190          elem.checked = false;
5191        }
5192      }
5193    });
5194  });
5195
5196  function AreAnyCheckboxesChecked(subListLi) {
5197    var checkboxes = subListLi;
5198
5199    for (var i = 0; i < checkboxes.length; i++) {
5200      if (checkboxes[i].checked) {
5201        return true;
5202      }
5203    }
5204
5205    return false;
5206  }
5207
5208  mainCheckBtn.forEach(function (elem) {
5209    var inputs = elem.parentElement.parentElement.querySelectorAll('.sub-check');
5210    inputs.forEach(function (subCheckItem) {
5211      subCheckItem.addEventListener('click', function () {
5212        var mainCheckItem = subCheckItem.closest('.main-list').querySelector('.main-check');
5213        mainCheckItem.classList.add('intermidate-state');
5214        var subListLi = subCheckItem.closest('.sub-ul').querySelectorAll('.sub-list .sub-check');
5215        var allChecked = [];
5216
5217        for (var i = 0; i < subListLi.length; i++) {
5218          if (subListLi[i].checked) {
5219            allChecked.push('true');
5220          }
5221        }
5222
5223        if (allChecked.length === subListLi.length) {
5224          if (mainCheckItem.classList.contains('intermidate-state')) {
5225            mainCheckItem.classList.remove('intermidate-state');
5226            mainCheckItem.checked = true;
5227          }
5228        }
5229
5230        var checkValue = AreAnyCheckboxesChecked(subListLi);
5231
5232        if (!checkValue) {
5233          if (mainCheckItem.classList.contains('intermidate-state')) {
5234            mainCheckItem.classList.remove('intermidate-state');
5235            mainCheckItem.checked = false;
5236          }
5237        }
5238      });
5239    });
5240  });
5241  dropDiv.forEach(function (elem) {
5242    var num = 0,
5243        checks;
5244    var fundtitlediv = elem.querySelector('.fund-list-hero__title');
5245    var fundCatTitleDiv = elem.querySelector('.fund-list-category-hero__title');
5246    var searchTitleDiv = elem.querySelector('.search-filter__title');
5247    var title = fundtitlediv ? fundtitlediv.innerHTML : fundCatTitleDiv ? fundCatTitleDiv.innerHTML : searchTitleDiv.innerHTML;
5248    elem.querySelector('.list').addEventListener('click', function () {
5249      var mainList = elem.querySelectorAll('.main-list');
5250      checks = elem.querySelectorAll('input[type="checkbox"]:checked');
5251      var counter = 0;
5252
5253      if (mainList.length > 0) {
5254        mainList.forEach(function (mainWrap) {
5255          var checkedMainList = mainWrap.querySelectorAll('.main-check');
5256          var checkedMainListChecked = mainWrap.querySelectorAll('.main-check:checked');
5257
5258          if (checkedMainList) {
5259            var subCheckList = mainWrap.querySelectorAll('.sub-check:checked');
5260
5261            if (subCheckList) {
5262              counter = counter + subCheckList.length;
5263            }
5264          }
5265
5266          if (checkedMainListChecked.length > 0) {
5267            var _subCheckList = mainWrap.querySelectorAll('.sub-check');
5268
5269            if (_subCheckList.length <= 0) {
5270              counter = counter + checkedMainListChecked.length;
5271            }
5272          }
5273        });
5274      }
5275
5276      var urlTitle = title.split('/')[0].trim().replace(/\s+/g, '-').toLowerCase();
5277      var search = window.location.search;
5278      var searchArr = search && search.split('?');
5279      var urlName;
5280      searchArr && searchArr.forEach(function (searchField, i) {
5281        if (searchField.includes(urlTitle)) {
5282          searchArr.splice(i, 1);
5283        }
5284      });
5285      num = counter;
5286
5287      if (num > 0) {
5288        if (elem.parentElement.querySelector('.fund-list-hero__title') && !elem.parentElement.querySelector('.fund-list-hero__title').classList.contains('analysis-cards')) {
5289          elem.parentElement.querySelector('.fund-list-hero__title').innerHTML = "Items Selected (".concat(num, ")");
5290        }
5291
5292        if (elem.parentElement.querySelector('.fund-list-category-hero__title')) {
5293          elem.parentElement.querySelector('.fund-list-category-hero__title').innerHTML = "Items Selected (".concat(num, ")");
5294        }
5295
5296        if (elem.parentElement.querySelector('.search-filter__title')) {
5297          elem.parentElement.querySelector('.search-filter__title').innerHTML = "Items Selected (".concat(num, ")");
5298        }
5299
5300        if (elem.parentElement.querySelector('.fund-list-hero__title.analysis-cards')) {
5301          var _elem$parentElement$q, _elem$parentElement$q2, _elem$parentElement$q3;
5302
5303          var _title = (_elem$parentElement$q = elem.parentElement.querySelector('.fund-list-hero__title.analysis-cards').innerHTML) === null || _elem$parentElement$q === void 0 ? void 0 : (_elem$parentElement$q2 = _elem$parentElement$q.replace(/[\\(\\)]/g, '')) === null || _elem$parentElement$q2 === void 0 ? void 0 : (_elem$parentElement$q3 = _elem$parentElement$q2.replace(/[0-9]/g, '')) === null || _elem$parentElement$q3 === void 0 ? void 0 : _elem$parentElement$q3.trim();
5304
5305          elem.parentElement.querySelector('.fund-list-hero__title.analysis-cards').innerHTML = "".concat(_title, " (").concat(num, ")");
5306        }
5307
5308        var checkedItems = [];
5309        checks.forEach(function (check) {
5310          checkedItems.push(check.id);
5311        });
5312        var newSearchArr = [];
5313        searchArr && searchArr.forEach(function (searchQuery, i) {
5314          if (i > 0) {
5315            searchQuery = '?' + searchQuery;
5316          }
5317
5318          searchQuery = searchQuery.replace(/^,|,$/g, '');
5319          newSearchArr.push(searchQuery);
5320        });
5321        var urlValue = '?' + urlTitle + '=' + checkedItems.toString() + newSearchArr.toString();
5322        var urlUncleaned = urlValue.replace(/,\?/g, '?');
5323        urlName = urlUncleaned.replace(/\?,/g, '?');
5324      } else {
5325        if (elem.parentElement.querySelector('.fund-list-hero__title') || elem.parentElement.querySelector('.fund-list-category-hero__title') || elem.parentElement.querySelector('.search-filter__title')) {
5326          if (elem.parentElement.querySelector('.fund-list-hero__title')) {
5327            elem.parentElement.querySelector('.fund-list-hero__title').innerHTML = title;
5328          }
5329
5330          if (elem.parentElement.querySelector('.fund-list-category-hero__title')) {
5331            elem.parentElement.querySelector('.fund-list-category-hero__title').innerHTML = title;
5332          }
5333
5334          if (elem.parentElement.querySelector('.search-filter__title')) {
5335            elem.parentElement.querySelector('.search-filter__title').innerHTML = title;
5336          }
5337
5338          var _newSearchArr = [];
5339          searchArr && searchArr.forEach(function (searchField, i) {
5340            if (searchField.charAt(0) === ',' || searchField.charAt(searchField.length - 1) === ',') {
5341              var newSearchField = searchField.replace(/^,|,$/g, '');
5342
5343              _newSearchArr.push(newSearchField);
5344            } else if (i > 1 && searchField.charAt(0) !== '?') {
5345              var _newSearchField = '?' + searchField;
5346
5347              _newSearchArr.push(_newSearchField);
5348            } else {
5349              _newSearchArr.push(searchField);
5350            }
5351          });
5352
5353          var _urlValue = _newSearchArr ? '?' + _newSearchArr : '';
5354
5355          var _urlUncleaned = _urlValue.replace(/,\?/g, '?');
5356
5357          urlName = _urlUncleaned.replace(/\?,/g, '?');
5358        }
5359      }
5360
5361      urlName ? window.history.pushState({
5362        prevUrl: window.location.href + urlName
5363      }, null, urlName) : window.history.pushState({
5364        prevUrl: window.location.href
5365      }, null, window.location.href.split('?')[0]);
5366    });
5367  });
5368
5369  function handleBannerNav() {
5370    bannerIcon && bannerIcon.classList.toggle('fund-list-category-hero__menu-icon-expand');
5371    bannerMenu && bannerMenu.classList.toggle('fund-list-category-hero__menu-expand');
5372    bannerMenuList && bannerMenuList.classList.toggle('fund-list-category-hero__menu-list-expand');
5373    bannerButtonArrow.classList.toggle('fund-list-category-hero__menu-icon-button-hide');
5374  }
5375
5376  if (bannerButtonArrow) {
5377    bannerButtonArrow.addEventListener('click', handleBannerNav);
5378  }
5379
5380  if (bannerButtonArrowClose) {
5381    bannerButtonArrowClose.addEventListener('click', handleBannerNav);
5382  }
5383
5384  function handleSubNav() {
5385    subnavIcon && subnavIcon.classList.toggle('fund-detail-hero__menu-icon-expand');
5386    subnavMenu && subnavMenu.classList.toggle('fund-detail-hero__menu-expand');
5387    subnavMenuList && subnavMenuList.classList.toggle('fund-detail-hero__menu-list-expand');
5388    subnavButtonArrow.classList.toggle('fund-detail-hero__menu-icon-button-hide');
5389  }
5390
5391  if (subnavButtonArrow) {
5392    subnavButtonArrow.addEventListener('click', handleSubNav);
5393  }
5394
5395  if (subnavButtonArrowClose) {
5396    subnavButtonArrowClose.addEventListener('click', handleSubNav);
5397  }
5398
5399  if (isGatedForm) {
5400    var isFormSubmitted = document.cookie.match(/^(.*;)?\s*attributionForm\s*=\s*[^;]+(.*)?$/);
5401
5402    if (isFormSubmitted) {
5403      replaceFormWithReport();
5404    } else {
5405      document.getElementById('gated-form').style.display = 'block';
5406    }
5407  }
5408
5409  function replaceFormWithReport() {
5410    document.getElementById('gated-form').style.display = 'none';
5411    document.getElementById('report-view').style.display = 'block';
5412  }
5413
5414  window.addEventListener('hs-form-event:on-submission:success', function (event) {
5415    var gatedForm = document.querySelector('.gated-form[data-hubspot-form-id]');
5416
5417    if (!gatedForm || !event.detail || event.detail.formId !== gatedForm.dataset.hubspotFormId) {
5418      return;
5419    }
5420
5421    document.cookie = 'attributionForm=true; path=/; SameSite=Lax';
5422    replaceFormWithReport();
5423  });
5424
5425  if (iAmSelect && companyInput && companyRow) {
5426    iAmSelect.addEventListener('change', function (e) {
5427      if (iAmSelect.value === 'Financial Professional') {
5428        companyRow.classList.remove('d-none');
5429        companyRow.classList.add('d-block');
5430        companyInput.disabled = false;
5431        return;
5432      }
5433
5434      companyRow.classList.remove('d-block');
5435      companyRow.classList.add('d-none');
5436      companyInput.disabled = true;
5437    });
5438  }
5439
5440  if (isProtectedForm) {
5441    var crdInput = document.getElementById('inputCrd');
5442
5443    if (crdInput) {
5444      crdInput.addEventListener('input', function (e) {
5445        this.value = this.value.replace(/\D/g, '');
5446      });
5447    }
5448  } //isProtectedForm redirection
5449
5450
5451  var contentPageUrl = document.getElementById('protectedpageurl');
5452  var protectedPageInput = document.getElementById('protectedpage');
5453
5454  if (protectedPageInput) {
5455    var protectedPageURL = protectedPageInput.value;
5456    var cookies = document.cookie.split(';').map(function (cookie) {
5457      return cookie.trim();
5458    });
5459    var isProtectedLandingForm = cookies.some(function (cookie) {
5460      return cookie.startsWith('protectedLandingForm=true');
5461    });
5462
5463    if (!isProtectedLandingForm) {
5464      window.location = protectedPageURL;
5465    }
5466  }
5467
5468  if (formSubmit) {
5469    formSubmit.addEventListener('submit', function (e) {
5470      e.preventDefault();
5471      var firstName = document.getElementById('inputFirstName');
5472      var lastName = document.getElementById('inputLastName');
5473      var emailID = document.getElementById('inputEmail');
5474      var crd = document.getElementById('inputCrd');
5475      var iAm = document.getElementById('iam');
5476      var firstNameError = document.querySelector('.first-name-error');
5477      var lastNameError = document.querySelector('.last-name-error');
5478      var error = 0;
5479
5480      if (firstName === null || firstName === void 0 ? void 0 : firstName.value) {
5481        if (!/^[a-zA-Z ]+$/.test(firstName === null || firstName === void 0 ? void 0 : firstName.value)) {
5482          firstName.classList.add('invalid');
5483          firstNameError.innerText = 'Please enter alphabetic characters only';
5484          error = error + 1;
5485        } else {
5486          firstName.classList.remove('invalid');
5487
5488          if (firstNameError) {
5489            firstNameError.innerText = '';
5490          }
5491        }
5492      }
5493
5494      if (lastName === null || lastName === void 0 ? void 0 : lastName.value) {
5495        if (!/^[a-zA-Z ]+$/.test(lastName === null || lastName === void 0 ? void 0 : lastName.value)) {
5496          lastName.classList.add('invalid');
5497          lastNameError.innerText = 'Please enter alphabetic characters only';
5498          error = error + 1;
5499        } else {
5500          lastName.classList.remove('invalid');
5501
5502          if (lastNameError) {
5503            lastNameError.innerText = '';
5504          }
5505        }
5506      }
5507
5508      if (error <= 0) {
5509        var serverUrl = window.location.host === 'localhost' ? window.location.host : '';
5510        var apiEndpoint = ''.concat(serverUrl, '/api/submit-form');
5511        var currentUrl = window.location.href;
5512        var baseUrl = window.location.origin;
5513
5514        var _isGatedForm = document.querySelector('.gated-form');
5515
5516        var _isProtectedForm = document.querySelector('.protected-form');
5517
5518        var xhr = new XMLHttpRequest();
5519        xhr.open('POST', apiEndpoint);
5520        xhr.setRequestHeader('Accept', 'application/json');
5521        xhr.setRequestHeader('Content-Type', 'application/json');
5522        var data = {};
5523        var pageUrl = new URL(window.location.href);
5524        var params = new URLSearchParams(pageUrl.search);
5525        var utmSource = params.get('utm_source') || '';
5526        var utmMedium = params.get('utm_medium') || '';
5527        var utmCampaign = params.get('utm_campaign') || '';
5528        var utmContent = params.get('utm_content') || '';
5529        var utmCta = params.get('utm_cta') || '';
5530
5531        if (_isGatedForm) {
5532          data = JSON.stringify({
5533            formId: 1076,
5534            fields: {
5535              firstName: firstName === null || firstName === void 0 ? void 0 : firstName.value,
5536              lastName: lastName === null || lastName === void 0 ? void 0 : lastName.value,
5537              email: emailID === null || emailID === void 0 ? void 0 : emailID.value,
5538              QPRCertification: true
5539            },
5540            url: baseUrl + '/resources/attribution-reports/'
5541          });
5542          document.cookie = 'attributionForm=true';
5543          replaceFormWithReport();
5544        } else if (_isProtectedForm) {
5545          data = JSON.stringify({
5546            formId: 1673,
5547            fields: {
5548              firstName: firstName === null || firstName === void 0 ? void 0 : firstName.value,
5549              lastName: lastName === null || lastName === void 0 ? void 0 : lastName.value,
5550              email: emailID === null || emailID === void 0 ? void 0 : emailID.value,
5551              CRDNumber: crd === null || crd === void 0 ? void 0 : crd.value,
5552              QPRCertification: true
5553            },
5554            url: baseUrl + '/advisor-resources/'
5555          });
5556          document.cookie = 'protectedLandingForm=true';
5557          window.location = contentPageUrl.value;
5558        } else {
5559          if (companyInput) {
5560            data = JSON.stringify({
5561              formId: 1633,
5562              fields: {
5563                firstName: firstName === null || firstName === void 0 ? void 0 : firstName.value,
5564                lastName: lastName === null || lastName === void 0 ? void 0 : lastName.value,
5565                email: emailID === null || emailID === void 0 ? void 0 : emailID.value,
5566                prosharesTransportationTF: iAm === null || iAm === void 0 ? void 0 : iAm.value,
5567                company: companyInput.value || '',
5568                pmcf_utm_source: utmSource,
5569                pmcf_utm_medium: utmMedium,
5570                pmcf_utm_campaign: utmCampaign,
5571                pmcf_utm_content: utmContent,
5572                pmcf_utm_cta: utmCta
5573              },
5574              url: currentUrl
5575            });
5576          } else {
5577            var formIdInput = document.getElementById('formId');
5578            var formIdValue = (formIdInput === null || formIdInput === void 0 ? void 0 : formIdInput.value) || 1565;
5579            data = JSON.stringify({
5580              formId: formIdValue,
5581              fields: {
5582                firstName: firstName === null || firstName === void 0 ? void 0 : firstName.value,
5583                lastName: lastName === null || lastName === void 0 ? void 0 : lastName.value,
5584                email: emailID === null || emailID === void 0 ? void 0 : emailID.value,
5585                prosharesTransportationTF: iAm === null || iAm === void 0 ? void 0 : iAm.value
5586              },
5587              url: currentUrl
5588            });
5589          }
5590
5591          if (!document.querySelector('.modal-backdrop')) {
5592            var elemDiv = document.createElement('div');
5593            elemDiv.className = 'modal-backdrop show';
5594            document.body.appendChild(elemDiv);
5595            formSubmitState.classList.toggle('show-form-modal');
5596            document.querySelector('body').classList.toggle('modal-open');
5597          }
5598        }
5599
5600        xhr.send(data);
5601      }
5602    });
5603  }
5604
5605  if (lightboxForms.length > 0) {
5606    lightboxForms.forEach(function (lightbox) {
5607      var form = lightbox.querySelector('.lightbox-form__form');
5608      form.addEventListener('submit', function (e) {
5609        e.preventDefault();
5610        var firstName = form.querySelector('.first-name-input') || '';
5611        var lastName = form.querySelector('.last-name-input') || '';
5612        var emailID = form.querySelector('.email-input') || '';
5613        var firstNameError = form.querySelector('.first-name-error');
5614        var lastNameError = form.querySelector('.last-name-error');
5615        var error = 0;
5616
5617        if (firstName === null || firstName === void 0 ? void 0 : firstName.value) {
5618          if (!/^[a-zA-Z ]+$/.test(firstName === null || firstName === void 0 ? void 0 : firstName.value)) {
5619            firstName.classList.add('invalid');
5620            firstNameError.innerText = 'Please enter valid First Name';
5621            error = error + 1;
5622          }
5623        }
5624
5625        if (lastName === null || lastName === void 0 ? void 0 : lastName.value) {
5626          if (!/^[a-zA-Z ]+$/.test(lastName === null || lastName === void 0 ? void 0 : lastName.value)) {
5627            lastName.classList.add('invalid');
5628            lastNameError.innerText = 'Please enter valid Last Name';
5629            error = error + 1;
5630          }
5631        }
5632
5633        if (error <= 0) {
5634          var serverUrl = window.location.hostname === 'localhost' ? 'https://padl01mstrnk95minte.dxcloud.episerver.net/' : '';
5635          var apiEndpoint = "".concat(serverUrl, "/api/submit-form");
5636          var currentUrl = window.location.href;
5637          var baseUrl = window.location.origin;
5638          var xhr = new XMLHttpRequest();
5639          xhr.open('POST', apiEndpoint);
5640          xhr.setRequestHeader('Accept', 'application/json');
5641          xhr.setRequestHeader('Content-Type', 'application/json');
5642          var data = {};
5643          data = JSON.stringify({
5644            formId: 1565,
5645            fields: {
5646              firstName: firstName === null || firstName === void 0 ? void 0 : firstName.value,
5647              lastName: lastName === null || lastName === void 0 ? void 0 : lastName.value,
5648              email: emailID === null || emailID === void 0 ? void 0 : emailID.value
5649            },
5650            url: currentUrl
5651          });
5652
5653          if (!document.querySelector('.modal-backdrop')) {
5654            var elemDiv = document.createElement('div');
5655            elemDiv.className = 'modal-backdrop show';
5656            document.body.appendChild(elemDiv);
5657            formSubmitState.classList.toggle('show-form-modal');
5658            document.querySelector('body').classList.toggle('modal-open');
5659          }
5660
5661          xhr.send(data); // show thank you content
5662
5663          var lbThankYouHides = lightbox.querySelectorAll('.lb-thank-you-hide');
5664          lbThankYouHides.forEach(function (thankYouHide) {
5665            thankYouHide.style.display = 'block';
5666          }); // hide form content
5667
5668          var lbFormHides = lightbox.querySelectorAll('.lb-form-hide');
5669          lbFormHides.forEach(function (formHide) {
5670            formHide.style.display = 'none';
5671          });
5672
5673          if (firstName.classList.contains('invalid')) {
5674            firstName.classList.remove('invalid');
5675            firstNameError.innerText = '';
5676          }
5677
5678          if (lastName.classList.contains('invalid')) {
5679            lastName.classList.remove('invalid');
5680            lastNameError.innerText = '';
5681          }
5682        }
5683      });
5684    });
5685  }
5686
5687  if (formLighboxClose) {
5688    formLighboxClose.addEventListener('click', function () {
5689      formSubmitState.classList.toggle('show-form-modal');
5690      document.querySelector('body').classList.toggle('modal-open');
5691      document.querySelector('.modal-backdrop').remove();
5692    });
5693  }
5694
5695  window.addEventListener('click', windowOnClick);
5696
5697  function windowOnClick(event) {
5698    if (event.target === formSubmitState) {
5699      formSubmitState.classList.toggle('show-form-modal');
5700      document.querySelector('body').classList.toggle('modal-open');
5701      document.querySelector('.modal-backdrop').remove();
5702    }
5703  } //----------------------IFRAME LINKS---------------------
5704
5705
5706  function isIos() {
5707    var iOS = !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform);
5708    return iOS;
5709  }
5710
5711  function downloadPdf(url) {
5712    var a = document.createElement('a');
5713    a.href = url;
5714    a.download = url.split('/').pop();
5715    document.body.appendChild(a);
5716    a.click();
5717    document.body.removeChild(a);
5718  }
5719
5720  if (iframeLink) {
5721    iframeLink.forEach(function (item) {
5722      item.addEventListener('click', function () {
5723        var dataTarget = item.getAttribute('data-target');
5724        var dataTo = item.getAttribute('data-to');
5725        var iframeBlock = item.parentElement.parentElement.parentElement.querySelector('.documents-downloads__iframe');
5726
5727        if (isIos()) {
5728          downloadPdf(dataTo);
5729        } else {
5730          if (item.classList.contains('visible')) {
5731            iframeBlock.classList.add('d-none');
5732            item.classList.remove('visible');
5733          } else {
5734            iframeLink.forEach(function (el) {
5735              el.classList.remove('visible');
5736            });
5737            item.classList.add('visible');
5738            iframeBlock.querySelector('iframe').setAttribute('src', dataTo);
5739            iframeBlock.querySelector('iframe').setAttribute('name', dataTarget);
5740            iframeBlock.classList.remove('d-none', 'transit-none');
5741            iframeBlock.classList.add('transit-block');
5742            iframeBlock.scrollIntoView({
5743              behavior: 'smooth',
5744              block: 'end'
5745            });
5746          }
5747        }
5748      });
5749    });
5750  } //----------------------RELATED INSIGHTS LOAD MORE------------------------
5751
5752
5753  var currentItems = 6;
5754
5755  var cards = _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_32___default()(document.querySelectorAll('.related-insights__card-col'));
5756
5757  if (loadmore) {
5758    if (cards.length < 7) {
5759      loadmore.style.display = 'none';
5760    }
5761
5762    loadmore.addEventListener('click', function () {
5763      for (var i = currentItems; i < currentItems + 6; i++) {
5764        if (cards[i]) {
5765          cards[i].style.display = 'flex';
5766        }
5767      }
5768
5769      currentItems += 6;
5770
5771      if (currentItems >= cards.length) {
5772        loadmore.style.display = 'none';
5773      }
5774    });
5775  } // ------------------------- questions block ---------------------
5776
5777
5778  var toggleBtn = document.querySelector('.question-block__subtitle');
5779
5780  function toggleAllAccordions() {
5781    // Check if the current text is "Expand All"
5782    var isExpanded = toggleBtn.textContent === 'Expand All'; // Select all accordion content elements
5783
5784    var collapseElements = document.querySelectorAll('.question-block .accordion .collapse');
5785    var toggleButtons = document.querySelectorAll('.accordion__toggle'); // Toggle the `show` class for content and `collapsed` class for buttons
5786
5787    collapseElements.forEach(function (element) {
5788      if (isExpanded) {
5789        element.classList.add('show'); // Expand all accordions
5790      } else {
5791        element.classList.remove('show'); // Collapse all accordions
5792      }
5793    });
5794    toggleButtons.forEach(function (button) {
5795      if (isExpanded) {
5796        button.classList.remove('collapsed'); // Set to expanded state
5797      } else {
5798        button.classList.add('collapsed'); // Set to collapsed state
5799      }
5800    }); // Toggle button text between "Expand All" and "Close All"
5801
5802    toggleBtn.textContent = isExpanded ? 'Close All' : 'Expand All';
5803  } // Add click event listener to the button
5804
5805
5806  if (toggleBtn) {
5807    toggleBtn.addEventListener('click', toggleAllAccordions);
5808  } //----------------- #subscribe -----------------------
5809
5810
5811  if (window.location.hash === '#subscribe') {
5812    var subscribeSection = document.getElementById('subscribe');
5813
5814    if (subscribeSection) {
5815      // Get the offset position and adjust for padding (e.g., 5rem)
5816      var offset = 80; // 5rem in pixels (adjust this as needed)
5817
5818      var elementPosition = subscribeSection.getBoundingClientRect().top + window.pageYOffset - offset;
5819      window.scrollTo({
5820        top: elementPosition,
5821        behavior: 'smooth'
5822      });
5823    }
5824  } //----------------------ANALYSIS CARDS LOAD MORE------------------------
5825
5826
5827  if (analysisCardsLoadmore) {
5828    var _currentItems = 12;
5829
5830    var _cards = _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_32___default()(document.querySelectorAll('.analysis-cards__card-col'));
5831
5832    if (_cards.length < 13) {
5833      analysisCardsLoadmore.style.display = 'none';
5834    }
5835
5836    analysisCardsLoadmore.addEventListener('click', function () {
5837      for (var i = _currentItems; i < _currentItems + 12; i++) {
5838        if (_cards[i]) {
5839          _cards[i].style.display = 'block';
5840        }
5841      }
5842
5843      _currentItems += 12;
5844
5845      if (_currentItems >= _cards.length) {
5846        analysisCardsLoadmore.style.display = 'none';
5847      }
5848    });
5849  } // Index table
5850
5851
5852  if (indexTable) {
5853    if (indexTableRows && indexTableRows.length < 31) {
5854      indexTableBtns && indexTableBtns.classList.add('d-none');
5855    } else {
5856      indexTableBtns && indexTableBtns.classList.add('d-block');
5857    }
5858
5859    indexTableBtnOpen && indexTableBtnOpen.addEventListener('click', function () {
5860      indexTable.classList.remove('limit-entries');
5861    });
5862    indexTableBtnClose && indexTableBtnClose.addEventListener('click', function () {
5863      indexTable.classList.add('limit-entries');
5864    });
5865  } // ------------------------ Home Hero Icon/Eyebrow Aligment ------------------------
5866
5867
5868  if (homeHeroIcons) {
5869    var maxHeight = 0;
5870    homeHeroIcons.forEach(function (icon) {
5871      var img = icon.querySelector('img');
5872      var iconHeight = img.offsetHeight;
5873
5874      if (maxHeight < iconHeight) {
5875        maxHeight = iconHeight;
5876      }
5877    }); // homeHeroIcons.forEach((icon) => (icon.style.height = `${maxHeight}px`));
5878  } // ------------------------ Home Slider Icon/Eyebrow Aligment ------------------------
5879
5880
5881  if (homeSliderIcons) {
5882    var _maxHeight = 0;
5883    homeSliderIcons.forEach(function (icon) {
5884      var iconHeight = icon.offsetHeight;
5885
5886      if (_maxHeight < iconHeight) {
5887        _maxHeight = iconHeight;
5888      }
5889    });
5890    homeSliderIcons.forEach(function (icon) {
5891      return icon.style.height = "".concat(_maxHeight, "px");
5892    });
5893  } // -------------------------- Advert Block Cards Limit --------------------------
5894
5895
5896  if (advertBlockCards && showAllAdvertBlockCards) {
5897    advertBlockCards.classList.add('less');
5898    showAllAdvertBlockCards.addEventListener('click', function () {
5899      if (advertBlockCards.classList.contains('less')) {
5900        advertBlockCards.classList.remove('less');
5901        showAllAdvertBlockCards.innerText = 'View Less Strategies';
5902      } else {
5903        advertBlockCards.classList.add('less');
5904        showAllAdvertBlockCards.innerText = 'View All Strategies';
5905      }
5906    });
5907  } // documents-downloads
5908
5909
5910  if (!tabItems.length) return; // Desktop tab logic (≥1200px)
5911
5912  if (window.innerWidth >= 1200) {
5913    tabItems.forEach(function (tab) {
5914      tab.addEventListener('click', function () {
5915        tabItems.forEach(function (t) {
5916          return t.classList.remove('active');
5917        });
5918        tab.classList.add('active');
5919      });
5920    });
5921  } // Mobile accordion logic (<1200px)
5922
5923
5924  if (viewAllDocTab) {
5925    viewAllDocTab.addEventListener('click', function () {
5926      if (window.innerWidth < 1200) {
5927        viewAllDocTabDropDown.classList.toggle('documents-downloads__mobiletabs-show');
5928        dropdownDocSelectorLabel.classList.toggle('documents-downloads__mobiletabs-selected-label-close');
5929      }
5930    });
5931  }
5932});
5933document.addEventListener('DOMContentLoaded', function () {
5934  var holdingTable = document.querySelector('#holdings tbody');
5935  var holdingRows = holdingTable ? holdingTable.querySelectorAll('tr') : [];
5936  var openBtn = document.querySelector('.fund-detail-table-download .open-btn');
5937  var limit = 5;
5938
5939  if (holdingRows.length <= limit && openBtn) {
5940    openBtn.style.display = 'none';
5941  } // Product Detail Button Focus
5942
5943
5944  var productDetailButtonFocus = document.querySelector('.product-detail__intro-row .btn.btn-secondary');
5945
5946  if (productDetailButtonFocus) {
5947    productDetailButtonFocus.addEventListener('click', function () {
5948      // Remove focus immediately after click
5949      setTimeout(function () {
5950        productDetailButtonFocus.blur();
5951      }, 0);
5952    });
5953  } //******************************** FAQ Accordion ********************************//
5954
5955
5956  var accordionMain = document.querySelector('.faq-accordion');
5957
5958  if (accordionMain) {
5959    var headings = accordionMain.querySelectorAll('.faq-accordion__left-heading');
5960    var leftItems = accordionMain.querySelectorAll('.faq-accordion__left-item');
5961    var leftRailDocumentList = accordionMain.querySelectorAll('.faq-accordion__left-rail-documents-list');
5962    var rightSections = accordionMain.querySelectorAll('.faq-accordion__right-content .faq-accordion__section, .faq-accordion__right-content .faq-accordion__subsection');
5963    var scrollAccordion = accordionMain.querySelectorAll('.faq-accordion__right-content .accordion__toggle');
5964    var isManualScroll = false;
5965    /* ---------- Smooth Scroll ---------- */
5966
5967    var smoothScrollTo = function smoothScrollTo(element) {
5968      if (!element) return;
5969      isManualScroll = true;
5970      var offsetTop = element.getBoundingClientRect().top + window.scrollY - 100;
5971      window.scrollTo({
5972        top: offsetTop,
5973        behavior: 'smooth'
5974      });
5975      clearTimeout(smoothScrollTo._timer);
5976      smoothScrollTo._timer = setTimeout(function () {
5977        return isManualScroll = false;
5978      }, 1000);
5979    };
5980    /* ---------- Close All Groups ---------- */
5981
5982
5983    var closeAllGroups = function closeAllGroups() {
5984      var exceptHeading = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
5985      headings.forEach(function (h) {
5986        var group = h.closest('.faq-accordion__left-group');
5987
5988        if (group && h !== exceptHeading) {
5989          group.classList.remove('is-open', 'is-active');
5990          var list = h.nextElementSibling;
5991
5992          if (list === null || list === void 0 ? void 0 : list.classList.contains('faq-accordion__left-list')) {
5993            list.style.display = 'none';
5994          }
5995        }
5996      });
5997    };
5998    /* ---------- Set Active Item ---------- */
5999
6000
6001    var clearActiveItems = function clearActiveItems() {
6002      leftItems.forEach(function (i) {
6003        return i.classList.remove('is-active');
6004      });
6005    };
6006
6007    var setActiveItem = function setActiveItem(item) {
6008      if (!item || item.classList.contains('is-active')) return;
6009      clearActiveItems();
6010      item.classList.add('is-active');
6011    };
6012    /* ---------- Heading Click ---------- */
6013
6014
6015    headings.forEach(function (heading) {
6016      var group = heading.closest('.faq-accordion__left-group');
6017      var list = heading.nextElementSibling;
6018      var hasList = list === null || list === void 0 ? void 0 : list.classList.contains('faq-accordion__left-list');
6019      heading.addEventListener('click', function () {
6020        closeAllGroups(heading);
6021        if (!group) return;
6022        var isOpening = hasList && !group.classList.contains('is-open');
6023        group.classList.toggle('is-open', isOpening);
6024        group.classList.add('is-active');
6025        if (hasList) list.style.display = isOpening ? 'block' : 'none'; // If we're switching to a top-level section (no subsection list),
6026        // the subsection "dot" indicator should disappear.
6027
6028        clearActiveItems();
6029
6030        if (hasList && isOpening) {
6031          var firstItem = list.querySelector('.faq-accordion__left-item');
6032          setActiveItem(firstItem);
6033        }
6034
6035        var targetEl = document.querySelector(heading.getAttribute('data-target'));
6036        if (targetEl) smoothScrollTo(targetEl);
6037      });
6038    });
6039    /* ---------- Default Open First Group ---------- */
6040
6041    var firstGroup = document.querySelector('.faq-accordion__left-group');
6042
6043    if (firstGroup) {
6044      var firstList = firstGroup.querySelector('.faq-accordion__left-list');
6045      firstGroup.classList.add('is-active', 'is-open');
6046
6047      if (firstList) {
6048        firstList.style.display = 'block';
6049        var firstItem = firstList.querySelector('.faq-accordion__left-item');
6050        setActiveItem(firstItem);
6051      }
6052    }
6053    /* ---------- Left List Item Click ---------- */
6054
6055
6056    leftItems.forEach(function (item) {
6057      item.addEventListener('click', function (e) {
6058        e.stopPropagation();
6059        var targetEl = document.querySelector(item.getAttribute('data-target'));
6060        if (targetEl) smoothScrollTo(targetEl);
6061        setActiveItem(item);
6062      });
6063    });
6064    /* ---------- Scroll Sync (Disabled Below 992px) ---------- */
6065
6066    window.addEventListener('scroll', function () {
6067      if (window.innerWidth < 992 || isManualScroll) return;
6068      var currentSectionId = null;
6069      rightSections.forEach(function (section) {
6070        var rect = section.getBoundingClientRect();
6071        if (rect.top <= 150 && rect.bottom >= 150) currentSectionId = section.id;
6072      });
6073      if (!currentSectionId) return;
6074      document.querySelectorAll('.faq-accordion__left-group').forEach(function (group) {
6075        var heading = group.querySelector('.faq-accordion__left-heading');
6076        var list = group.querySelector('.faq-accordion__left-list');
6077        var items = list ? list.querySelectorAll('.faq-accordion__left-item') : [];
6078        group.classList.remove('is-active');
6079
6080        if ((heading === null || heading === void 0 ? void 0 : heading.getAttribute('data-target')) === "#".concat(currentSectionId)) {
6081          group.classList.add('is-active'); // Only clear the subsection indicator when this group has no subsections.
6082          // If the group has a left list, keep the active item while scrolling within it.
6083
6084          if (!items.length) clearActiveItems();
6085        } else {
6086          items.forEach(function (item) {
6087            if (item.getAttribute('data-target') === "#".concat(currentSectionId)) {
6088              group.classList.add('is-active');
6089              setActiveItem(item);
6090            }
6091          });
6092        }
6093      });
6094    });
6095    /* ---------- Accordion Toggle: Scroll & Left Highlight ---------- */
6096
6097    var lastActiveSectionId = null;
6098
6099    if (scrollAccordion) {
6100      scrollAccordion.forEach(function (toggle) {
6101        toggle.addEventListener('click', function () {
6102          var section = toggle.closest('.faq-accordion__section');
6103          if (!section) return;
6104          var subsection = toggle.closest('.faq-accordion__subsection');
6105          var isInSubtitledSubsection = !!(subsection && subsection.querySelector('.faq-accordion__subheading'));
6106          var targetEl = isInSubtitledSubsection ? subsection : section;
6107          var targetId = targetEl ? targetEl.getAttribute('id') : null;
6108          var collapse = document.querySelector(toggle.getAttribute('data-target'));
6109          var isOpening = collapse && !collapse.classList.contains('show'); // Scroll ONLY if user is opening and switching to a different target
6110
6111          if (targetEl && isOpening && targetId !== lastActiveSectionId) {
6112            smoothScrollTo(targetEl);
6113          } // Update left highlight
6114
6115
6116          if (targetId) {
6117            if (isInSubtitledSubsection) {
6118              var matchingLeftItem = document.querySelector(".faq-accordion__left-item[data-target=\"#".concat(targetId, "\"]"));
6119
6120              if (matchingLeftItem) {
6121                var group = matchingLeftItem.closest('.faq-accordion__left-group');
6122                var heading = group ? group.querySelector('.faq-accordion__left-heading') : null;
6123                var list = heading ? heading.nextElementSibling : null;
6124                if (heading) closeAllGroups(heading);
6125                if (group) group.classList.add('is-active', 'is-open');
6126
6127                if (list && list.classList.contains('faq-accordion__left-list')) {
6128                  list.style.display = 'block';
6129                }
6130
6131                setActiveItem(matchingLeftItem);
6132              } else {
6133                document.querySelectorAll('.faq-accordion__left-group').forEach(function (group) {
6134                  return group.classList.remove('is-active');
6135                });
6136                var leftHeading = document.querySelector(".faq-accordion__left-group .faq-accordion__left-heading[data-target=\"#".concat(targetId, "\"]"));
6137
6138                if (leftHeading) {
6139                  leftHeading.closest('.faq-accordion__left-group').classList.add('is-active');
6140                }
6141
6142                clearActiveItems();
6143              }
6144            } else {
6145              document.querySelectorAll('.faq-accordion__left-group').forEach(function (group) {
6146                return group.classList.remove('is-active');
6147              });
6148
6149              var _leftHeading = document.querySelector(".faq-accordion__left-group .faq-accordion__left-heading[data-target=\"#".concat(targetId, "\"]"));
6150
6151              if (_leftHeading) {
6152                _leftHeading.closest('.faq-accordion__left-group').classList.add('is-active');
6153              }
6154
6155              clearActiveItems();
6156            } // Save current active section
6157
6158
6159            lastActiveSectionId = targetId;
6160          }
6161        });
6162      });
6163    }
6164    /*----------LEFT RAIL DOCUMENT LIST----------*/
6165
6166
6167    if (leftRailDocumentList) {
6168      var documentListItems = accordionMain.querySelectorAll('.download-link');
6169      documentListItems.forEach(function (item) {
6170        var href = (item.getAttribute('href') || '').toLowerCase();
6171
6172        if (href.endsWith('.pdf')) {
6173          item.classList.add('download-link--pdf');
6174          item.setAttribute('download', '');
6175        } else {
6176          item.classList.remove('download-link--pdf');
6177          item.removeAttribute('download');
6178        }
6179      });
6180    }
6181  }
6182  /******************FAQ SEARCHBAR*******************************/
6183
6184
6185  var faqSearchbar = document.querySelector('.faq-searchbar');
6186
6187  if (faqSearchbar) {
6188    var searchInput = faqSearchbar.querySelector('#search-field');
6189    var searchButton = faqSearchbar.querySelector('.faq-searchbar__button .btn-primary');
6190    searchInput.addEventListener('input', function () {
6191      searchButton.disabled = !this.value.trim();
6192    });
6193  }
6194  /******************Strategy Hero href changes*******************************/
6195
6196
6197  var strategyHero = document.querySelector('.strategy-hero');
6198
6199  if (strategyHero) {
6200    var listItems = strategyHero.querySelectorAll('.strategy-hero__left-sup-listing li');
6201    listItems.forEach(function (item) {
6202      var anchor = item.querySelector('a');
6203      if (!anchor) return;
6204
6205      if (!anchor.hasAttribute('href')) {
6206        item.classList.add('no-href');
6207      } else {
6208        item.classList.remove('no-href');
6209      }
6210    });
6211  } // fund data with tabs
6212
6213
6214  var tabs = document.querySelectorAll('.fund-data-with-tabs__tabs .tab');
6215  var contents = document.querySelectorAll('.fund-data-with-tabs__tab-content .content');
6216  tabs.forEach(function (tab) {
6217    tab.addEventListener('click', function () {
6218      var id = tab.dataset.tab;
6219      tabs.forEach(function (t) {
6220        return t.classList.remove('active');
6221      });
6222      contents.forEach(function (c) {
6223        return c.classList.remove('active');
6224      });
6225      tab.classList.add('active');
6226      document.querySelector(".fund-data-with-tabs__tab-content [data-content=\"".concat(id, "\"]")).classList.add('active');
6227    });
6228  }); // index overview tabs (full-width panel rendered inside the grid under active tab)
6229
6230  document.querySelectorAll('.index-overview').forEach(function (root) {
6231    var tabsContainer = root.querySelector('.tabs');
6232    var tabs2 = root.querySelectorAll('.tabs .tab');
6233    var stash = root.querySelector('.index-overview__tab-contents');
6234    var contents2 = stash ? stash.querySelectorAll('.tab-content') : root.querySelectorAll('.tab-content');
6235    var sliders = root.querySelectorAll('.index-overview__slider-box');
6236    if (!tabsContainer || !tabs2.length || !contents2.length) return;
6237    var panelHost = document.createElement('div');
6238    panelHost.className = 'index-overview__tab-panel';
6239    panelHost.setAttribute('role', 'region'); // Keep the host as the last grid item so tabs stay in the first row.
6240
6241    tabsContainer.appendChild(panelHost);
6242
6243    var syncTitleHeightVar = function syncTitleHeightVar() {
6244      var titleEl = root.querySelector('.tabs .tab .tab-title');
6245      var h = titleEl ? titleEl.offsetHeight : 0;
6246      tabsContainer.style.setProperty('--index-overview-tab-title-height', "".concat(h, "px"));
6247    };
6248
6249    var syncTabsHeightVar = function syncTabsHeightVar() {
6250      var max = 0;
6251      tabs2.forEach(function (t) {
6252        max = Math.max(max, t.offsetHeight || 0);
6253      });
6254      tabsContainer.style.setProperty('--index-overview-tabs-height', "".concat(max, "px"));
6255    };
6256
6257    var getPanelById = function getPanelById(id) {
6258      if (!id) return null; // IDs are simple ("tab1"/"tab2"/"tab3"), but keep selector safe anyway.
6259
6260      var safeId = window.CSS && CSS.escape ? CSS.escape(id) : id.replace(/[^a-zA-Z0-9\-_]/g, '\\$&');
6261      return root.querySelector("#".concat(safeId));
6262    };
6263
6264    var moveCurrentPanelBackToStash = function moveCurrentPanelBackToStash() {
6265      var currentPanel = panelHost.querySelector('.tab-content');
6266      if (currentPanel && stash) stash.appendChild(currentPanel);
6267    };
6268
6269    var activateTab = function activateTab(tab) {
6270      if (!tab) return;
6271      var target = tab.getAttribute('data-tab');
6272      var panel = getPanelById(target);
6273      if (!panel) return;
6274      tabs2.forEach(function (t) {
6275        return t.classList.remove('active');
6276      });
6277      contents2.forEach(function (c) {
6278        return c.classList.remove('active');
6279      });
6280      sliders.forEach(function (s) {
6281        return s.classList.remove('active');
6282      });
6283      var matchingSlider = root.querySelector(".index-overview__slider-box[data-slider=\"".concat(target, "\"]"));
6284      if (matchingSlider) matchingSlider.classList.add('active');
6285      tab.classList.add('active');
6286      panel.classList.add('active');
6287      moveCurrentPanelBackToStash(); // Ensure it stays last in the grid (second row, full width).
6288
6289      if (panelHost.parentElement !== tabsContainer) tabsContainer.appendChild(panelHost);
6290      panelHost.appendChild(panel);
6291      panelHost.classList.add('is-open');
6292      tabsContainer.classList.add('has-open');
6293    };
6294
6295    var resetToOriginalForm = function resetToOriginalForm() {
6296      moveCurrentPanelBackToStash();
6297      panelHost.classList.remove('is-open');
6298      tabsContainer.classList.remove('has-open');
6299      tabs2.forEach(function (t) {
6300        return t.classList.remove('active');
6301      });
6302      contents2.forEach(function (c) {
6303        return c.classList.remove('active');
6304      });
6305      sliders.forEach(function (s) {
6306        return s.classList.remove('active');
6307      });
6308      if (tabs2.length > 0) tabs2[0].classList.add('active');
6309      if (contents2.length > 0) contents2[0].classList.add('active');
6310      if (sliders.length > 0) sliders[0].classList.add('active');
6311    };
6311 // Do not auto-open content on load; only open after user click.
6312
6313
6314    syncTitleHeightVar();
6315    syncTabsHeightVar();
6316    sliders.forEach(function (slider) {
6317      slider.addEventListener('click', function () {
6318        var sliderTarget = slider.getAttribute('data-slider');
6319        var matchingTab = root.querySelector(".tabs .tab[data-tab=\"".concat(sliderTarget, "\"]"));
6320        if (matchingTab) activateTab(matchingTab);
6321      });
6322    });
6323    tabs2.forEach(function (tab) {
6324      tab.addEventListener('click', function () {
6325        return activateTab(tab);
6326      });
6327    });
6328    contents2.forEach(function (content) {
6329      var hideBtns = content.querySelectorAll('.tab-desc-btn');
6330      hideBtns.forEach(function (btn) {
6331        if (btn.textContent.trim().toLowerCase() === 'hide related etfs') {
6332          btn.addEventListener('click', function (e) {
6333            e.stopPropagation();
6334            resetToOriginalForm();
6335          });
6336        }
6337      });
6338    });
6339    window.addEventListener('resize', function () {
6340      syncTitleHeightVar();
6341      syncTabsHeightVar();
6342    });
6343  }); // index overview mobile
6344
6345  var tabsMobile = document.querySelectorAll('.index-overview__mobile-tab');
6346  tabsMobile.forEach(function (tab) {
6347    var trigger = tab.querySelector('.index-overview__mobile-tab-btn-main');
6348    var collapseEl = tab.querySelector('.index-overview__mobile-tab-collapse');
6349    var arrow = tab.querySelector('#arrowIcon');
6350    if (!trigger || !collapseEl || !arrow) return;
6351    var isOpen = false;
6352    trigger.addEventListener('click', function () {
6353      isOpen = !isOpen;
6354
6355      if (isOpen) {
6356        collapseEl.style.maxHeight = collapseEl.scrollHeight + 'px';
6357        collapseEl.addEventListener('transitionend', function handler() {
6358          collapseEl.style.maxHeight = 'none';
6359          collapseEl.removeEventListener('transitionend', handler);
6360        });
6361      } else {
6362        collapseEl.style.maxHeight = collapseEl.scrollHeight + 'px';
6363        requestAnimationFrame(function () {
6364          collapseEl.style.maxHeight = '0px';
6365        });
6366      } // text update
6367
6368
6369      var textNode = Array.from(trigger.childNodes).find(function (node) {
6370        return node.nodeType === Node.TEXT_NODE;
6371      });
6372
6373      if (textNode) {
6374        textNode.nodeValue = isOpen ? 'Hide Related ETFs ' : 'Explore Related ETFs ';
6375      } // arrow rotate
6376
6377
6378      arrow.style.transform = isOpen ? 'rotate(180deg)' : 'rotate(0deg)'; // ✅ ADD THIS PART (your requirement)
6379
6380      var list = tab.querySelector('.index-overview__mobile-tab-lists');
6381      var lastItem = list ? list.querySelector('.last-item') : null;
6382
6383      if (lastItem) {
6384        lastItem.classList.toggle('open', isOpen);
6385      }
6386    });
6387  });
6388}); //--------------Site Header Our Etf  ------------------------
6389
6390$(document).ready(function () {
6391  var $desktopMenu = $('.desktop-menu .site-header__ouretfs');
6392  var $mobileMenu = $('.site-header__mobile-menu .site-header__ouretfs');
6393
6394  if ($desktopMenu.length === 0) {
6395    return;
6396  }
6397
6398  if ($mobileMenu.length === 0) {
6399    return;
6400  }
6401
6402  var $desktopTiles = $desktopMenu.find('.site-header__ouretfs-card');
6403  var $desktopBlocks = $desktopMenu.find('[data-target]');
6404  var $mobileTiles = $mobileMenu.find('.site-header__ouretfs-card');
6405  var $mobileBlocks = $mobileMenu.find('[data-target]');
6406  var $mobileSingleContainer = $('.site-header__mobile-menu .site-header__ouretfs-single');
6407
6408  function activateTile(tiles, blocks, id) {
6409    tiles.removeClass('active');
6410    $('#' + id).addClass('active');
6411    blocks.each(function () {
6412      var targetId = $(this).data('target');
6413      $(this).css('display', targetId === "#".concat(id) ? 'block' : 'none');
6414    });
6415  }
6416
6417  $desktopTiles.on('click', function (e) {
6418    e.stopPropagation();
6419    var id = $(this).attr('id');
6420    activateTile($desktopTiles, $desktopBlocks, id);
6421  });
6422  $mobileTiles.on('click', function (e) {
6423    e.stopPropagation();
6424    var id = $(this).attr('id');
6425    activateTile($mobileTiles, $mobileBlocks, id);
6426    $mobileSingleContainer.children('.site-header__ouretfs-card').removeClass('active');
6427    $(this).addClass('active');
6428  });
6429
6430  if ($mobileTiles.length > 0) {
6431    var firstMobileId = $mobileTiles.first().attr('id');
6432    activateTile($mobileTiles, $mobileBlocks, firstMobileId);
6433    $mobileSingleContainer.children('.site-header__ouretfs-card').removeClass('active');
6434    $mobileSingleContainer.children('.site-header__ouretfs-card').first().addClass('active');
6435  } // URL Path based activation for Desktop and Mobile
6436
6437
6438  var path = window.location.pathname;
6439  var activeDesktopId;
6440  var activeMobileId;
6441
6442  if (path.includes('find-leveraged-and-inverse-etfs')) {
6443    activeDesktopId = $desktopTiles.last().attr('id');
6444    activeMobileId = $mobileTiles.last().attr('id');
6445  } else if (path.includes('find-strategic-etfs')) {
6446    activeDesktopId = $desktopTiles.first().attr('id');
6447    activeMobileId = $mobileTiles.first().attr('id');
6448  } // If no path match, activate first tile by default for both menus
6449
6450
6451  if (!activeDesktopId && $desktopTiles.length > 0) {
6452    activeDesktopId = $desktopTiles.first().attr('id');
6453  }
6454
6455  if (!activeMobileId && $mobileTiles.length > 0) {
6456    activeMobileId = $mobileTiles.first().attr('id');
6457  }
6458
6459  if (activeDesktopId) {
6460    activateTile($desktopTiles, $desktopBlocks, activeDesktopId);
6461  }
6462
6463  if (activeMobileId) {
6464    activateTile($mobileTiles, $mobileBlocks, activeMobileId);
6465    $mobileSingleContainer.children('.site-header__ouretfs-card').removeClass('active');
6466    $mobileSingleContainer.children("#".concat(activeMobileId)).addClass('active');
6467  }
6468}); //--------------Site Header Our Etf End------------------------
6469//--------------In mobile play video inline on click of link------------------------
6470
6471function handleMobileVideoBehavior() {
6472  var isMobile = $(window).width() <= 991;
6473  $('.multimedia-card__card-wrap-single').each(function () {
6474    var $this = $(this);
6475    var $firstCta = $this.find('.multimedia-card__cta').first();
6476    var $videoLayer = $this.find('.multimedia-card__card-image');
6477    var $mobileVideoContainer = $this.find('.mobile-video-wrapper');
6478    var $videoContainer = $this.find('.video-container');
6479    var $modal = $this.find('.multimedia-card__modal');
6480    var $closeBtn = $mobileVideoContainer.find('.close-fullscreen-btn');
6481    var $video = $mobileVideoContainer.find('video');
6482    var $iframe = $mobileVideoContainer.find('iframe');
6483
6484    if (isMobile) {
6485      $firstCta.removeAttr('data-toggle data-target');
6486
6487      var handleClick = function handleClick(e) {
6488        e.preventDefault();
6489        $videoContainer.removeClass('hidden').addClass('mobile-video-fullscreen');
6490        $closeBtn.removeClass('hidden');
6491
6492        if ($iframe.length) {
6493          var src = $iframe.attr('src');
6494
6495          if (src.includes('vimeo.com')) {
6496            $iframe[0].contentWindow.postMessage(JSON.stringify({
6497              method: 'play'
6498            }), '*');
6499          } else if (src.includes('youtube.com') && !src.includes('autoplay=1')) {
6500            var newSrc = src + (src.includes('?') ? '&' : '?') + 'autoplay=1';
6501            $iframe.attr('src', newSrc);
6502          }
6503        } else if ($video.length) {
6504          $video.get(0).play();
6505        }
6506      };
6507
6508      $firstCta.off('click').on('click', handleClick);
6509      $videoLayer.off('click').on('click', handleClick);
6510    }
6511
6512    $modal.on('hidden.bs.modal', function () {
6513      var $modalVideoContainer = $modal.find('.video-container');
6514      var $modalVideo = $modalVideoContainer.find('video');
6515      var $modalIframe = $modalVideoContainer.find('iframe');
6516      if ($modalVideo.length) $modalVideo.get(0).pause();
6517
6518      if ($modalIframe.length) {
6519        var src = $modalIframe.attr('src');
6520
6521        if (src.includes('vimeo.com')) {
6522          $modalIframe[0].contentWindow.postMessage(JSON.stringify({
6523            method: 'pause'
6524          }), '*');
6525        } else if (src.includes('youtube.com')) {
6526          $modalIframe.attr('src', '').attr('src', src.replace('&autoplay=1', '').replace('?autoplay=1', ''));
6527        }
6528      }
6529    });
6530  });
6531}
6532
6533$(document).on('click', '.close-fullscreen-btn', function () {
6534  var $container = $(this).closest('.video-container');
6535  var $video = $container.find('video');
6536  var $iframe = $container.find('iframe');
6537  $(this).addClass('hidden');
6538  $container.addClass('hidden').removeClass('mobile-video-fullscreen');
6539  if ($video.length) $video.get(0).pause();
6540
6541  if ($iframe.length) {
6542    var src = $iframe.attr('src');
6543
6544    if (src.includes('vimeo.com')) {
6545      $iframe[0].contentWindow.postMessage(JSON.stringify({
6546        method: 'pause'
6547      }), '*');
6548    } else if (src.includes('youtube.com')) {
6549      $iframe.attr('src', '').attr('src', src.replace('&autoplay=1', '').replace('?autoplay=1', ''));
6550    }
6551  }
6552});
6553$(document).ready(handleMobileVideoBehavior);
6554$(window).on('resize', handleMobileVideoBehavior); //********************************************************** */
6555// Tooltip
6556
6557$(function () {
6558  $('[data-toggle="tooltip"]').tooltip();
6559});
6560$(function () {
6561  $('[data-modifier]').each(function () {
6562    var inputEl = $(this);
6563    inputEl.on('input', function (e) {
6564      var value = e.target.value;
6565      var numbers = value.replace(/\D/g, '');
6566      var placeholder = inputEl.attr('placeholder');
6567      var modifier = (placeholder === null || placeholder === void 0 ? void 0 : placeholder.includes('$')) ? '$' : '%';
6568      if (modifier === '$') inputEl.val("$".concat(numbers));else {
6569        if (value.includes('-')) {
6570          inputEl.val("-".concat(numbers, "%"));
6571          inputEl[0].setSelectionRange(value.length, value.length - 1);
6572        } else {
6573          inputEl.val("".concat(numbers, "%"));
6574          inputEl[0].setSelectionRange(numbers.length, numbers.length);
6575        }
6576      }
6577    });
6578  });
6579});
6580$(function () {
6581  $('.rebalancing-calculator__button').each(function (i) {
6582    var buttonEl = $(this);
6583    buttonEl.on('click', function () {
6584      $('.rebalancing-calculator__trade-results').each(function (j) {
6585        if (i === j) $(this).removeClass('d-none');
6586      });
6587    });
6588  });
6589}); //Holdings Table
6590
6591$('.fund-detail-table-download .btn.open-btn').on('click', function () {
6592  $('.fund-detail-table.holdings-table').removeClass('limit-entries');
6593});
6594$('.fund-detail-table-download .btn.close-btn').on('click', function () {
6595  $('.fund-detail-table.holdings-table').addClass('limit-entries');
6596  var holdingsTable = document.querySelector('.fund-detail-table.holdings-table');
6597
6598  if (holdingsTable) {
6599    holdingsTable.scrollIntoView({
6600      behavior: 'smooth',
6601      block: 'start'
6602    });
6603  }
6604}); // ------------------------ SITE HEADER SEARCH BAR ------------------------
6605
6606var searchIcon = document.querySelector('.site-header__search-bar'),
6607    closeIcon = document.querySelector('.site-header__search-close-button'),
6608    searchList = document.querySelector('.site-header__search-list');
6609
6610if (searchIcon) {
6611  searchIcon.addEventListener('click', function (e) {
6612    var _$, _$2, _$3, _$4;
6613
6614    e.stopPropagation();
6615    searchIcon.style.display = 'none';
6616    closeIcon.style.display = 'block';
6617    searchList.style.display = 'block';
6618    showBackDrop();
6619    (_$ = $('.site-header__navbar-dropdown')) === null || _$ === void 0 ? void 0 : _$.removeClass('show');
6620    (_$2 = $('.site-header__navbar-dropdown')) === null || _$2 === void 0 ? void 0 : _$2.find('.dropdown-menu').removeClass('show');
6621    (_$3 = $('.site-header__mobile-menu')) === null || _$3 === void 0 ? void 0 : _$3.removeClass('show');
6622    (_$4 = $('.site-header__mobile-menu-toggle')) === null || _$4 === void 0 ? void 0 : _$4.addClass('collapsed');
6623  });
6624}
6625
6626if (closeIcon) {
6627  closeIcon.addEventListener('click', function (e) {
6628    e.stopPropagation();
6629    hideBackDrop();
6630    closeIcon.style.display = 'none';
6631    searchIcon.style.display = 'block';
6632    searchList.style.display = 'none';
6633  });
6634}
6635
6636(_$5 = $('.navbar-nav')) === null || _$5 === void 0 ? void 0 : _$5.on('click', function () {
6637  hideBackDrop();
6638  searchIcon.style.display = 'block';
6639  closeIcon.style.display = 'none';
6640  searchList.style.display = 'none';
6641});
6642$(window).on('click', function (e) {
6643  if (searchIcon) {
6644    searchIcon.style.display = 'block';
6645  }
6646
6647  if (closeIcon) {
6648    document.getElementsByClassName('navbar-toggler')[0].classList.contains('collapsed') && hideBackDrop();
6649    closeIcon.style.display = 'none';
6650  }
6651
6652  if (searchList) {
6653    document.getElementsByClassName('navbar-toggler')[0].classList.contains('collapsed') && hideBackDrop();
6654    searchList.style.display = 'none';
6655  }
6656});
6657searchList === null || searchList === void 0 ? void 0 : searchList.addEventListener('click', function (e) {
6658  e.stopPropagation();
6659});
6660/*Search Page*/
6661
6662var queryString = window.location.search;
6663var urlParams = new URLSearchParams(queryString);
6664var searchQuery = urlParams.get('search');
6665var searchQueryDiv = document.getElementById('search-query');
6666var searchField = document.getElementById('search-field');
6667
6668if (searchQueryDiv && searchQuery) {
6669  searchQueryDiv.innerHTML = searchQuery;
6670  searchField.value = searchQuery;
6671}
6672
6673$(document).on('click', '.funds .dropdown-menu .tabs .tabs__list-item-link', function (e) {
6674  e.stopPropagation();
6675});
6676$('.site-header__mobile-menu-inner .etftabs .tabs__items .tabs__list-item .nav-link').on('click', function (e) {
6677  e.preventDefault();
6678  $(this).parent().parent().parent().parent().addClass('activetab');
6679  var tabsID = $(this).attr('id'); // const tabsContentID = $('.etftabs .tabs__content .tab-pane').attr('aria-labelledby');
6680
6681  $('.site-header__mobile-menu-inner .etftabs .tabs__content .tab-pane').each(function () {
6682    if ($(this).attr('aria-labelledby') === tabsID) {
6683      $(this).addClass('active');
6684    } else {
6685      $(this).removeClass('active');
6686    }
6687  });
6688}); // table sorting
6689
6690var allTables = document.querySelectorAll('.table');
6691
6692function addSortingToHeaders(table, cloneTable) {
6693  var headers = table.querySelectorAll('thead th');
6694  var clonedHeaders = cloneTable.querySelectorAll('thead th');
6695  headers.forEach(function (header, index) {
6696    header.addEventListener('click', function (e) {
6697      return sorting(e, header);
6698    });
6699  });
6700  clonedHeaders.forEach(function (header, index) {
6701    header.addEventListener('click', function (e) {
6702      sorting(e, headers[index]);
6703    });
6704  });
6705}
6706
6707function sorting(e, firstColumn) {
6708  var down_class = ' dir-d ';
6709  var up_class = ' dir-u ';
6710  var regex_dir = / dir-(u|d) /;
6711  var element = firstColumn ? firstColumn : e.target;
6712
6713  function reClassify(element, dir) {
6714    element.className = element.className.replace(regex_dir, '') + dir;
6715  }
6716
6717  function getValue(element, index) {
6718    var _element$innerText, _element$classList;
6719
6720    var text = (element === null || element === void 0 ? void 0 : (_element$innerText = element.innerText) === null || _element$innerText === void 0 ? void 0 : _element$innerText.trim()) || '';
6721    if (text.includes('--')) return 0;
6722    if (text === '-') return 0;
6723
6724    if (((_element$classList = element.classList) === null || _element$classList === void 0 ? void 0 : _element$classList.contains('bracket-sort')) && text.includes('(')) {
6725      return parseFloat(text.split('(')[1].replace(/[^0-9.-]/g, '')) || 0;
6726    }
6727
6728    if (text.includes('%')) {
6729      return parseFloat(text.replace('%', '')) || 0;
6730    }
6731
6732    if (text.includes('$')) {
6733      return parseFloat(text.replace(/\$|,/g, '')) || 0;
6734    }
6735
6736    if (/^[\d,]+(\.\d+)?$/.test(text)) {
6737      return parseFloat(text.replace(/,/g, '')) || 0;
6738    } // Only parse dates if the column is not description and format is clearly date
6739
6740
6741    var isClearlyDate = /^\d{1,2}\/\d{1,2}\/\d{2,4}$/.test(text);
6742
6743    if (isClearlyDate && index !== 2) {
6744      var date = new Date(text);
6745      if (!isNaN(date)) return date;
6746    }
6747
6748    return text.toLowerCase(); // string fallback, case-insensitive
6749  }
6750
6751  if (element.nodeName === 'TH') {
6752    var tr = element.parentNode;
6753    var table = tr.parentNode.parentNode;
6754
6755    if (table.classList.contains('fixed-header')) {
6756      table = table.nextSibling;
6757    }
6758
6759    if ('table' === table.className && 'premium-to-nav' !== table.id && 'discount-to-nav' !== table.id) {
6760      var column_index;
6761      var nodes = tr.cells;
6762
6763      for (var i = 0; i < nodes.length; i++) {
6764        if (nodes[i] === element) {
6765          column_index = i;
6766        } else {
6767          reClassify(nodes[i], '');
6768        }
6769      }
6770
6771      var dir = element.innerHTML === 'Exposure Weight' || element.innerHTML === 'Weight' ? up_class : down_class;
6772
6773      if (table.parentNode.parentNode.parentNode.classList.contains('product-total-return-table')) {
6774        dir = up_class;
6775      }
6776
6777      if (element.className.indexOf(down_class) !== -1) {
6778        dir = up_class;
6779      } else if (element.className.indexOf(up_class) !== -1) {
6780        dir = down_class;
6781      }
6782
6783      reClassify(element, dir);
6784      var org_tbody = table.tBodies[0];
6785      var rows = [].slice.call(org_tbody.rows, 0);
6786      var reverse = dir === down_class;
6787
6788      var sortRows = function sortRows(rows) {
6789        return rows.sort(function (a, b) {
6790          var x = getValue((reverse ? a : b).cells[column_index], column_index);
6791          var y = getValue((reverse ? b : a).cells[column_index], column_index);
6792          if (x instanceof Date && y instanceof Date) return x - y;
6793          if (typeof x === 'string' && typeof y === 'string') return x.localeCompare(y);
6794          return x - y;
6795        });
6796      };
6797
6798      if (table.parentNode.parentNode.parentNode.classList.contains('fund-index-table')) {
6799        var allButLast = rows.slice(0, -1);
6800        var lastRow = rows[rows.length - 1];
6801        rows = [].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_32___default()(sortRows(allButLast)), [lastRow]);
6802      } else {
6803        rows = sortRows(rows);
6804      }
6805
6806      var clone_tbody = org_tbody.cloneNode();
6807
6808      while (rows.length) {
6809        clone_tbody.appendChild(rows.shift());
6810      }
6811
6812      table.replaceChild(clone_tbody, org_tbody);
6813    }
6814  }
6815}
6816
6817function initializeSorting() {
6818  allTables.forEach(function (table) {
6819    var $fixedHeader = $(table).closest('.table-container').find('.fixed-header')[0];
6820
6821    if ($fixedHeader) {
6822      addSortingToHeaders(table, $fixedHeader);
6823    }
6824  });
6825}
6826
6827initializeSorting();
6828document.addEventListener('click', function (e) {
6829  sorting(e);
6830});
6831allTables.forEach(function (table) {
6832  if (table.querySelector('thead tr th') && table.id !== 'holdings') {
6833    sorting(null, table.querySelector('thead tr th'));
6834  }
6835});
6836allTables.forEach(function (table) {
6837  var sortableHeaders = table.querySelectorAll('thead tr th.sort');
6838  sortableHeaders.forEach(function (header) {
6839    sorting(null, header);
6840  });
6841});
6842/*Insights Library: Update filters based on url */
6843
6844$(window).on('load', function () {
6845  var insightsSearchQuery = window.location.search.split('?');
6846  var selectedValues = [];
6847  insightsSearchQuery && insightsSearchQuery.forEach(function (value) {
6848    if (value && value.indexOf('=')) {
6849      value = value.split('=')[1];
6850    }
6851
6852    if (value && value.indexOf(',')) {
6853      value = value.split(',');
6854    }
6855
6856    selectedValues.push.apply(selectedValues, _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_32___default()(value));
6857  });
6858  selectedValues && selectedValues.forEach(function (value) {
6859    var checkItem = document.getElementById(value);
6860    checkItem && checkItem.click();
6861  });
6862}); // ---------------------------- PAGINATOR ------------------------------
6863
6864var pageBtn = document.querySelectorAll('.paginator__list-item'),
6865    paginator = document.querySelector('.paginator');
6866pageBtn.forEach(function (elem) {
6867  elem.addEventListener('click', function () {
6868    paginator.querySelector('.active').classList.remove('active');
6869    elem.classList.add('active');
6870  });
6871});
6872(_$6 = $('#strategy-topic-tab')) === null || _$6 === void 0 ? void 0 : _$6.find('.insights-default-filter__more').addClass('d-none'); // const strategyOrTopicsTagsLength = $('#browse-by-strategy-and-topic-id')?.find(
6873//   '.insights-default-filter__list-tab-item',
6874// )?.length;
6875//if (strategyOrTopicsTagsLength < 6) {
6876//$('#browse-by-strategy-and-topic-id')?.find('.insights-default-filter__more')?.addClass('d-none');
6877//}
6878
6879(_$7 = $('#browse-by-strategy-and-topic-id')) === null || _$7 === void 0 ? void 0 : (_$7$find = _$7.find('.insights-default-filter__more')) === null || _$7$find === void 0 ? void 0 : _$7$find.addClass('d-none');
6880var insightsDefaultStrategyOrTopicsTags = $('.tabs.insights-tabs').find('#browse-by-strategy-and-topic-id .insights-default-filter__list-tab-item-link.nav-link');
6881
6882if (insightsDefaultStrategyOrTopicsTags === null || insightsDefaultStrategyOrTopicsTags === void 0 ? void 0 : insightsDefaultStrategyOrTopicsTags.length) {
6883  insightsDefaultStrategyOrTopicsTags.first().addClass('active');
6884  insightsDefaultStrategyOrTopicsTags.each(function () {
6885    var tag = $(this);
6886    tag.on('click', function () {
6887      insightsDefaultStrategyOrTopicsTags.each(function () {
6888        $(this).removeClass('active');
6889      });
6890      tag.addClass('active');
6891    });
6892  });
6893}
6894
6895var insightsDefaultModalStrategyOrTopicsTags = $('.tabs.insights-tabs').find('#browse-by-strategy-and-topic-id .insights-default-filter__modal-list-link button');
6896
6897if (insightsDefaultModalStrategyOrTopicsTags === null || insightsDefaultModalStrategyOrTopicsTags === void 0 ? void 0 : insightsDefaultModalStrategyOrTopicsTags.length) {
6898  insightsDefaultModalStrategyOrTopicsTags.each(function () {
6899    var tag = $(this);
6900    tag.on('click', function () {
6901      var modalTagId = tag.attr('id');
6902      var tagFromFilterList = $('.tabs.insights-tabs #browse-by-strategy-and-topic-id').find("[id='".concat(modalTagId, "']"));
6903      insightsDefaultStrategyOrTopicsTags.each(function () {
6904        $(this).parent().removeClass('d-block');
6905        $(this).removeClass('active');
6906      });
6907      tagFromFilterList.addClass('active');
6908      tagFromFilterList.parent().addClass('d-block');
6909    });
6910  });
6911}
6912
6913var insightsDefaultSeriesTags = $('.tabs.insights-tabs').find('#browse-by-insight-series-id .insights-default-filter__list-tab-item-link.nav-link');
6914
6915if (insightsDefaultSeriesTags === null || insightsDefaultSeriesTags === void 0 ? void 0 : insightsDefaultSeriesTags.length) {
6916  insightsDefaultSeriesTags.first().addClass('active');
6917  insightsDefaultSeriesTags.each(function () {
6918    var tag = $(this);
6919    tag.on('click', function () {
6920      insightsDefaultSeriesTags.each(function () {
6921        $(this).removeClass('active');
6922      });
6923      tag.addClass('active');
6924    });
6925  });
6926}
6927
6928var browseAllInsights = $('.tabs.insights-tabs').find('#browse-all-insights .insights-default-filter__list-tab-item-link.nav-link');
6929
6930if (browseAllInsights === null || browseAllInsights === void 0 ? void 0 : browseAllInsights.length) {
6931  browseAllInsights.first().addClass('active');
6932  browseAllInsights.each(function () {
6933    var tag = $(this);
6934    tag.on('click', function () {
6935      browseAllInsights.each(function () {
6936        $(this).removeClass('active');
6937      });
6938      tag.addClass('active');
6939    });
6940  });
6941}
6942
6943var browseByProduct = $('.tabs.insights-tabs').find('#browse-by-product-id .insights-default-filter__list-tab-item-link.nav-link');
6944
6945if (browseByProduct === null || browseByProduct === void 0 ? void 0 : browseByProduct.length) {
6946  browseByProduct.first().addClass('active');
6947  browseByProduct.each(function () {
6948    var tag = $(this);
6949    tag.on('click', function () {
6950      browseByProduct.each(function () {
6951        $(this).removeClass('active');
6952      });
6953      tag.addClass('active');
6954    });
6955  });
6956} //navigation active links
6957
6958/* eslint-disable max-len */
6959
6960
6961var navData;
6962var BASE_URL = '/api/nav';
6963
6964function fetchData() {
6965  return new Promise(function (resolve, reject) {
6966    var httpRequest = new window.XMLHttpRequest();
6967    var urlWithNoCache = "".concat(BASE_URL, "?_=").concat(new Date().getTime());
6968    httpRequest.open('GET', urlWithNoCache);
6969    httpRequest.setRequestHeader('cache-control', 'no-cache');
6970    httpRequest.send();
6971
6972    httpRequest.onload = function () {
6973      if (httpRequest.status !== 200) {
6974        reject(null);
6975      } else {
6976        window.localStorage.setItem('navData', httpRequest.response);
6977        resolve(JSON.parse(httpRequest.response));
6978      }
6979    };
6980  });
6981}
6982
6983_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_31___default()( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_29___default.a.mark(function _callee() {
6984  return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_29___default.a.wrap(function _callee$(_context) {
6985    while (1) {
6986      switch (_context.prev = _context.next) {
6987        case 0:
6988          _context.next = 2;
6989          return fetchData();
6990
6991        case 2:
6992          navData = _context.sent;
6993          navData && setActiveNav();
6994
6995        case 4:
6996        case "end":
6997          return _context.stop();
6998      }
6999    }
7000  }, _callee);
7001}))();
7002
7003function setActiveNav() {
7004  var _window$location$path;
7005
7006  var navPath = (_window$location$path = window.location.pathname) === null || _window$location$path === void 0 ? void 0 : _window$location$path.split('/')[1];
7007  navPath && navData && Object.keys(navData).map(function (navHeader, data) {
7008    navData[navHeader].map(function (navMenu, index) {
7009      if (navMenu.replaceAll('/', '') === navPath) {
7010        var _document$getElementB;
7011
7012        (_document$getElementB = document.getElementById(navHeader)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.classList.add('active');
7013      }
7014    });
7015  });
7016}
7017
7018(function () {
7019  function activateFundDataTab(tabName, scroll) {
7020    if (!tabName) return false;
7021    var tab = $('.tabs.fund-data .nav-tabs .nav-link#' + tabName + '-tab');
7022    if (!tab.length) return false;
7023    tab.click();
7024
7025    if (scroll) {
7026      var fundDataTabs = document.querySelector('.tabs.fund-data');
7027      if (fundDataTabs) scrollToElement(fundDataTabs);
7028    }
7029
7030    return true;
7031  }
7032
7033  $('.index-card__cta').click(function (el) {
7034    var href = el.currentTarget.getAttribute('href') || '';
7035    var tabName = href.includes('#') ? href.split('#')[1] : '';
7036    var activated = activateFundDataTab(tabName, true); // no matching fund-data tab on this page, let the link behave normally
7037
7038    if (!activated) return;
7039    el.preventDefault();
7040
7041    if (history.pushState) {
7042      history.pushState(null, '', '#' + tabName);
7043    }
7044  }); // if the page loads with a hash matching a fund-data tab, jump straight to it
7045
7046  if (window.location.hash) {
7047    activateFundDataTab(window.location.hash.slice(1), true);
7048  }
7049})();
7050
7051(function () {
7052  var popupKey = '__regulatory-announcement-popup__' + location.pathname.replace(/[^a-z0-9]/gi, '_');
7053  var canShowRegulatoryAnnouncementPopup = sessionStorage.getItem(popupKey);
7054
7055  if (canShowRegulatoryAnnouncementPopup === null || canShowRegulatoryAnnouncementPopup === false || canShowRegulatoryAnnouncementPopup === '') {
7056    $('#regulatory-announcement-popup-id').modal({
7057      backdrop: false,
7058      show: true
7059    });
7060    $('#regulatory-announcement-popup-id').on('hidden.bs.modal', function () {
7061      sessionStorage.setItem(popupKey, true);
7062    });
7063  }
7064})(); // wysiwyg heading and custom class issue fix
7065
7066
7067(function () {
7068  var _$8, _$9, _$10;
7069
7070  (_$8 = $('h1.text-util-lg-regular, h2.text-util-lg-regular, h3.text-util-lg-regular, h4.text-util-lg-regular, h5.text-util-lg-regular, h6.text-util-lg-regular')) === null || _$8 === void 0 ? void 0 : _$8.each(function () {
7071    $(this).removeClass('text-util-lg-regular');
7072  });
7073  (_$9 = $('h1.text-util-sm, h2.text-util-sm, h3.text-util-sm, h4.text-util-sm, h5.text-util-sm, h6.text-util-sm')) === null || _$9 === void 0 ? void 0 : _$9.each(function () {
7074    $(this).removeClass('text-util-sm');
7075  });
7076  (_$10 = $('h1.text-util-3xs-regular, h2.text-util-3xs-regular, h3.text-util-3xs-regular, h4.text-util-3xs-regular, h5.text-util-3xs-regular, h6.text-util-3xs-regular')) === null || _$10 === void 0 ? void 0 : _$10.each(function () {
7077    $(this).removeClass('text-util-3xs-regular');
7078  });
7079})();
7080
7081$(document).ready(function () {
7082  $('.top-level-hero__carousel').slick({
7083    slidesToShow: 3,
7084    infinite: false,
7085    arrows: true,
7086    dots: false,
7087    variableWidth: true,
7088    appendArrows: $('.top-level-hero__carousel__control-container'),
7089    prevArrow: "\n      <button class=\"top-level-hero__control top-level-hero__left-icon mr-2\" type=\"button\">\n        <svg\n          aria-hidden=\"true\"\n          focusable=\"false\"\n          data-prefix=\"far\"\n          data-icon=\"arrow-left\"\n          class=\"svg-inline--fa fa-arrow-left fa-w-16 fa-3x icon\"\n          role=\"img\"\n          xmlns=\"http://www.w3.org/2000/svg\"\n          viewB
7089ox=\"0 0 18 18\"\n        >\n          <path\n            fill=\"currentColor\"\n            d=\"M10.51 18.76a.75.75 0 00.54-.22.75.75 0 000-1.06l-4.73-4.71h13.2a.75.75 0 00.75-.75.75.75 0 00-.75-.75H6.28l4.77-4.75a.75.75 0 000-1.06.75.75 0 00-1.06 0l-6.04 6a.75.75 0 000 1.07L10 18.54a.75.75 0 00.52.22z\"\n          >\n          </path>\n        </svg>\n        <span class=\"sr-only slick-prev-click\">previous arrow icon</span>\n      </button>\n    ",
7090    nextArrow: "\n      <button class=\"top-level-hero__control top-level-hero__right-icon ml-2\" type=\"button\">\n        <svg\n          aria-hidden=\"true\"\n          focusable=\"false\"\n          data-prefix=\"far\"\n          data-icon=\"arrow-right\"\n          class=\"svg-inline--fa fa-arrow-right fa-w-16 fa-3x icon\"\n          role=\"img\"\n          xmlns=\"http://www.w3.org/2000/svg\"\n          viewBox=\"0 0 18 18\"\n        >\n          <path\n            fill=\"currentColor\"\n            d=\"M13.49 5.24a.75.75 0 00-.54.22.75.75 0 000 1.06l4.73 4.71H4.48a.75.75 0 00-.75.75.75.75 0 00.75.75h13.24l-4.77 4.75a.75.75 0 000 1.06.75.75 0 001.06 0l6.04-6a.75.75 0 000-1.07L14 5.46a.75.75 0 00-.52-.22z\"\n          >\n          </path>\n        </svg>\n        <span class=\"sr-only slick-next-click\">next arrow icon</span>\n      </button>\n    ",
7091    responsive: [{
7092      breakpoint: 1200,
7093      settings: {
7094        slidesToShow: 2
7095      }
7096    }, {
7097      breakpoint: 768,
7098      settings: {
7099        slidesToShow: 1
7100      }
7101    }]
7102  }); // URL Hash-based Tab Navigation
7103
7104  function activateTabFromHash() {
7105    var hash = window.location.hash;
7106    if (!hash) return;
7107    var tabLink = $('a[data-toggle="tab"]').filter(function (_, el) {
7108      return $(el).attr('href') === hash;
7109    });
7110
7111    if (tabLink.length) {
7112      tabLink.tab('show');
7113    }
7114  } // Activate tab on page load
7115
7116
7117  activateTabFromHash(); // Update URL when tab is clicked
7118
7119  $('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
7120    var hash = $(e.target).attr('href');
7121
7122    if (hash && hash.startsWith('#') && window.location.hash !== hash) {
7123      window.location.hash = hash;
7124    }
7125  }); // Handle browser back/forward
7126
7127  $(window).on('hashchange', function () {
7128    activateTabFromHash();
7129  });
7130});
7131
7132/***/ }),
7133
7134/***/ 755:
7135/***/ (function(module, exports, __webpack_require__) {
7136
7137"use strict";
7138
7139var $ = __webpack_require__(8);
7140var $find = __webpack_require__(52).find;
7141var addToUnscopables = __webpack_require__(126);
7142var arrayMethodUsesToLength = __webpack_require__(31);
7143
7144var FIND = 'find';
7145var SKIPS_HOLES = true;
7146
7147var USES_TO_LENGTH = arrayMethodUsesToLength(FIND);
7148
7149// Shouldn't skip holes
7150if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
7151
7152// `Array.prototype.find` method
7153// https://tc39.github.io/ecma262/#sec-array.prototype.find
7154$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {
7155  find: function find(callbackfn /* , that = undefined */) {
7156    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
7157  }
7158});
7159
7160// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
7161addToUnscopables(FIND);
7162
7163
7164/***/ }),
7165
7166/***/ 756:
7167/***/ (function(module, exports, __webpack_require__) {
7168
7169var $ = __webpack_require__(8);
7170var from = __webpack_require__(254);
7171var checkCorrectnessOfIteration = __webpack_require__(257);
7172
7173var INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {
7174  Array.from(iterable);
7175});
7176
7177// `Array.from` method
7178// https://tc39.github.io/ecma262/#sec-array.from
7179$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {
7180  from: from
7181});
7182
7183
7184/***/ }),
7185
7186/***/ 757:
7187/***/ (function(module, exports, __webpack_require__) {
7188
7189"use strict";
7190
7191var $ = __webpack_require__(8);
7192var $indexOf = __webpack_require__(120).indexOf;
7193var arrayMethodIsStrict = __webpack_require__(82);
7194var arrayMethodUsesToLength = __webpack_require__(31);
7195
7196var nativeIndexOf = [].indexOf;
7197
7198var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;
7199var STRICT_METHOD = arrayMethodIsStrict('indexOf');
7200var USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });
7201
7202// `Array.prototype.indexOf` method
7203// https://tc39.github.io/ecma262/#sec-array.prototype.indexof
7204$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH }, {
7205  indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {
7206    return NEGATIVE_ZERO
7207      // convert -0 to +0
7208      ? nativeIndexOf.apply(this, arguments) || 0
7209      : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);
7210  }
7211});
7212
7213
7214/***/ }),
7215
7216/***/ 758:
7217/***/ (function(module, exports, __webpack_require__) {
7218
7219var fails = __webpack_require__(10);
7220
7221module.exports = !fails(function () {
7222  function F() { /* empty */ }
7223  F.prototype.constructor = null;
7224  return Object.getPrototypeOf(new F()) !== F.prototype;
7225});
7226
7227
7228/***/ }),
7229
7230/***/ 759:
7231/***/ (function(module, exports, __webpack_require__) {
7232
7233var anObject = __webpack_require__(13);
7234var aPossiblePrototype = __webpack_require__(760);
7235
7236// `Object.setPrototypeOf` method
7237// https://tc39.github.io/ecma262/#sec-object.setprototypeof
7238// Works with __proto__ only. Old v8 can't work with null proto objects.
7239/* eslint-disable no-proto */
7240module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
7241  var CORRECT_SETTER = false;
7242  var test = {};
7243  var setter;
7244  try {
7245    setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
7246    setter.call(test, []);
7247    CORRECT_SETTER = test instanceof Array;
7248  } catch (error) { /* empty */ }
7249  return function setPrototypeOf(O, proto) {
7250    anObject(O);
7251    aPossiblePrototype(proto);
7252    if (CORRECT_SETTER) setter.call(O, proto);
7253    else O.__proto__ = proto;
7254    return O;
7255  };
7256}() : undefined);
7257
7258
7259/***/ }),
7260
7261/***/ 760:
7262/***/ (function(module, exports, __webpack_require__) {
7263
7264var isObject = __webpack_require__(17);
7265
7266module.exports = function (it) {
7267  if (!isObject(it) && it !== null) {
7268    throw TypeError("Can't set " + String(it) + ' as a prototype');
7269  } return it;
7270};
7271
7272
7273/***/ }),
7274
7275/***/ 761:
7276/***/ (function(module, exports, __webpack_require__) {
7277
7278"use strict";
7279
7280var $ = __webpack_require__(8);
7281var toAbsoluteIndex = __webpack_require__(121);
7282var toInteger = __webpack_require__(51);
vendor: 4,693 bytes, lines 7283-7401
7283var toLength = __webpack_require__(18);
7284var toObject = __webpack_require__(34);
7285var arraySpeciesCreate = __webpack_require__(104);
7286var createProperty = __webpack_require__(81);
7287var arrayMethodHasSpeciesSupport = __webpack_require__(56);
7288var arrayMethodUsesToLength = __webpack_require__(31);
7289
7290var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');
7291var USES_TO_LENGTH = arrayMethodUsesToLength('splice', { ACCESSORS: true, 0: 0, 1: 2 });
7292
7293var max = Math.max;
7294var min = Math.min;
7295var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
7296var MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';
7297
7298// `Array.prototype.splice` method
7299// https://tc39.github.io/ecma262/#sec-array.prototype.splice
7300// with adding support of @@species
7301$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {
7302  splice: function splice(start, deleteCount /* , ...items */) {
7303    var O = toObject(this);
7304    var len = toLength(O.length);
7305    var actualStart = toAbsoluteIndex(start, len);
7306    var argumentsLength = arguments.length;
7307    var insertCount, actualDeleteCount, A, k, from, to;
7308    if (argumentsLength === 0) {
7309      insertCount = actualDeleteCount = 0;
7310    } else if (argumentsLength === 1) {
7311      insertCount = 0;
7312      actualDeleteCount = len - actualStart;
7313    } else {
7314      insertCount = argumentsLength - 2;
7315      actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);
7316    }
7317    if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {
7318      throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);
7319    }
7320    A = arraySpeciesCreate(O, actualDeleteCount);
7321    for (k = 0; k < actualDeleteCount; k++) {
7322      from = actualStart + k;
7323      if (from in O) createProperty(A, k, O[from]);
7324    }
7325    A.length = actualDeleteCount;
7326    if (insertCount < actualDeleteCount) {
7327      for (k = actualStart; k < len - actualDeleteCount; k++) {
7328        from = k + actualDeleteCount;
7329        to = k + insertCount;
7330        if (from in O) O[to] = O[from];
7331        else delete O[to];
7332      }
7333      for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];
7334    } else if (insertCount > actualDeleteCount) {
7335      for (k = len - actualDeleteCount; k > actualStart; k--) {
7336        from = k + actualDeleteCount - 1;
7337        to = k + insertCount - 1;
7338        if (from in O) O[to] = O[from];
7339        else delete O[to];
7340      }
7341    }
7342    for (k = 0; k < insertCount; k++) {
7343      O[k + actualStart] = arguments[k + 2];
7344    }
7345    O.length = len - actualDeleteCount + insertCount;
7346    return A;
7347  }
7348});
7349
7350
7351/***/ }),
7352
7353/***/ 762:
7354/***/ (function(module, exports, __webpack_require__) {
7355
7356"use strict";
7357
7358var $ = __webpack_require__(8);
7359var IS_PURE = __webpack_require__(49);
7360var global = __webpack_require__(12);
7361var getBuiltIn = __webpack_require__(50);
7362var NativePromise = __webpack_require__(763);
7363var redefine = __webpack_require__(41);
7364var redefineAll = __webpack_require__(262);
7365var setToStringTag = __webpack_require__(102);
7366var setSpecies = __webpack_require__(764);
7367var isObject = __webpack_require__(17);
7368var aFunction = __webpack_require__(103);
7369var anInstance = __webpack_require__(231);
7370var classof = __webpack_require__(40);
7371var inspectSource = __webpack_require__(117);
7372var iterate = __webpack_require__(765);
7373var checkCorrectnessOfIteration = __webpack_require__(257);
7374var speciesConstructor = __webpack_require__(189);
7375var task = __webpack_require__(263).set;
7376var microtask = __webpack_require__(766);
7377var promiseResolve = __webpack_require__(767);
7378var hostReportErrors = __webpack_require__(768);
7379var newPromiseCapabilityModule = __webpack_require__(265);
7380var perform = __webpack_require__(769);
7381var InternalStateModule = __webpack_require__(64);
7382var isForced = __webpack_require__(180);
7383var wellKnownSymbol = __webpack_require__(11);
7384var V8_VERSION = __webpack_require__(124);
7385
7386var SPECIES = wellKnownSymbol('species');
7387var PROMISE = 'Promise';
7388var getInternalState = InternalStateModule.get;
7389var setInternalState = InternalStateModule.set;
7390var getInternalPromiseState = InternalStateModule.getterFor(PROMISE);
7391var PromiseConstructor = NativePromise;
7392var TypeError = global.TypeError;
7393var document = global.document;
7394var process = global.process;
7395var $fetch = getBuiltIn('fetch');
7396var newPromiseCapability = newPromiseCapabilityModule.f;
7397var newGenericPromiseCapability = newPromiseCapability;
7398var IS_NODE = classof(process) == 'process';
7399var DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);
7400var UNHANDLED_REJECTION = 'unhandledrejection';
7401var REJECTION_HANDLED = 'rejectionhandled';
vendor: 18,732 bytes, lines 7402-7991
7402var PENDING = 0;
7403var FULFILLED = 1;
7404var REJECTED = 2;
7405var HANDLED = 1;
7406var UNHANDLED = 2;
7407var Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;
7408
7409var FORCED = isForced(PROMISE, function () {
7410  var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);
7411  if (!GLOBAL_CORE_JS_PROMISE) {
7412    // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
7413    // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
7414    // We can't detect it synchronously, so just check versions
7415    if (V8_VERSION === 66) return true;
7416    // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test
7417    if (!IS_NODE && typeof PromiseRejectionEvent != 'function') return true;
7418  }
7419  // We need Promise#finally in the pure version for preventing prototype pollution
7420  if (IS_PURE && !PromiseConstructor.prototype['finally']) return true;
7421  // We can't use @@species feature detection in V8 since it causes
7422  // deoptimization and performance degradation
7423  // https://github.com/zloirock/core-js/issues/679
7424  if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;
7425  // Detect correctness of subclassing with @@species support
7426  var promise = PromiseConstructor.resolve(1);
7427  var FakePromise = function (exec) {
7428    exec(function () { /* empty */ }, function () { /* empty */ });
7429  };
7430  var constructor = promise.constructor = {};
7431  constructor[SPECIES] = FakePromise;
7432  return !(promise.then(function () { /* empty */ }) instanceof FakePromise);
7433});
7434
7435var INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {
7436  PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });
7437});
7438
7439// helpers
7440var isThenable = function (it) {
7441  var then;
7442  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
7443};
7444
7445var notify = function (promise, state, isReject) {
7446  if (state.notified) return;
7447  state.notified = true;
7448  var chain = state.reactions;
7449  microtask(function () {
7450    var value = state.value;
7451    var ok = state.state == FULFILLED;
7452    var index = 0;
7453    // variable length - can't use forEach
7454    while (chain.length > index) {
7455      var reaction = chain[index++];
7456      var handler = ok ? reaction.ok : reaction.fail;
7457      var resolve = reaction.resolve;
7458      var reject = reaction.reject;
7459      var domain = reaction.domain;
7460      var result, then, exited;
7461      try {
7462        if (handler) {
7463          if (!ok) {
7464            if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state);
7465            state.rejection = HANDLED;
7466          }
7467          if (handler === true) result = value;
7468          else {
7469            if (domain) domain.enter();
7470            result = handler(value); // can throw
7471            if (domain) {
7472              domain.exit();
7473              exited = true;
7474            }
7475          }
7476          if (result === reaction.promise) {
7477            reject(TypeError('Promise-chain cycle'));
7478          } else if (then = isThenable(result)) {
7479            then.call(result, resolve, reject);
7480          } else resolve(result);
7481        } else reject(value);
7482      } catch (error) {
7483        if (domain && !exited) domain.exit();
7484        reject(error);
7485      }
7486    }
7487    state.reactions = [];
7488    state.notified = false;
7489    if (isReject && !state.rejection) onUnhandled(promise, state);
7490  });
7491};
7492
7493var dispatchEvent = function (name, promise, reason) {
7494  var event, handler;
7495  if (DISPATCH_EVENT) {
7496    event = document.createEvent('Event');
7497    event.promise = promise;
7498    event.reason = reason;
7499    event.initEvent(name, false, true);
7500    global.dispatchEvent(event);
7501  } else event = { promise: promise, reason: reason };
7502  if (handler = global['on' + name]) handler(event);
7503  else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);
7504};
7505
7506var onUnhandled = function (promise, state) {
7507  task.call(global, function () {
7508    var value = state.value;
7509    var IS_UNHANDLED = isUnhandled(state);
7510    var result;
7511    if (IS_UNHANDLED) {
7512      result = perform(function () {
7513        if (IS_NODE) {
7514          process.emit('unhandledRejection', value, promise);
7515        } else dispatchEvent(UNHANDLED_REJECTION, promise, value);
7516      });
7517      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
7518      state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;
7519      if (result.error) throw result.value;
7520    }
7521  });
7522};
7523
7524var isUnhandled = function (state) {
7525  return state.rejection !== HANDLED && !state.parent;
7526};
7527
7528var onHandleUnhandled = function (promise, state) {
7529  task.call(global, function () {
7530    if (IS_NODE) {
7531      process.emit('rejectionHandled', promise);
7532    } else dispatchEvent(REJECTION_HANDLED, promise, state.value);
7533  });
7534};
7535
7536var bind = function (fn, promise, state, unwrap) {
7537  return function (value) {
7538    fn(promise, state, value, unwrap);
7539  };
7540};
7541
7542var internalReject = function (promise, state, value, unwrap) {
7543  if (state.done) return;
7544  state.done = true;
7545  if (unwrap) state = unwrap;
7546  state.value = value;
7547  state.state = REJECTED;
7548  notify(promise, state, true);
7549};
7550
7551var internalResolve = function (promise, state, value, unwrap) {
7552  if (state.done) return;
7553  state.done = true;
7554  if (unwrap) state = unwrap;
7555  try {
7556    if (promise === value) throw TypeError("Promise can't be resolved itself");
7557    var then = isThenable(value);
7558    if (then) {
7559      microtask(function () {
7560        var wrapper = { done: false };
7561        try {
7562          then.call(value,
7563            bind(internalResolve, promise, wrapper, state),
7564            bind(internalReject, promise, wrapper, state)
7565          );
7566        } catch (error) {
7567          internalReject(promise, wrapper, error, state);
7568        }
7569      });
7570    } else {
7571      state.value = value;
7572      state.state = FULFILLED;
7573      notify(promise, state, false);
7574    }
7575  } catch (error) {
7576    internalReject(promise, { done: false }, error, state);
7577  }
7578};
7579
7580// constructor polyfill
7581if (FORCED) {
7582  // 25.4.3.1 Promise(executor)
7583  PromiseConstructor = function Promise(executor) {
7584    anInstance(this, PromiseConstructor, PROMISE);
7585    aFunction(executor);
7586    Internal.call(this);
7587    var state = getInternalState(this);
7588    try {
7589      executor(bind(internalResolve, this, state), bind(internalReject, this, state));
7590    } catch (error) {
7591      internalReject(this, state, error);
7592    }
7593  };
7594  // eslint-disable-next-line no-unused-vars
7595  Internal = function Promise(executor) {
7596    setInternalState(this, {
7597      type: PROMISE,
7598      done: false,
7599      notified: false,
7600      parent: false,
7601      reactions: [],
7602      rejection: false,
7603      state: PENDING,
7604      value: undefined
7605    });
7606  };
7607  Internal.prototype = redefineAll(PromiseConstructor.prototype, {
7608    // `Promise.prototype.then` method
7609    // https://tc39.github.io/ecma262/#sec-promise.prototype.then
7610    then: function then(onFulfilled, onRejected) {
7611      var state = getInternalPromiseState(this);
7612      var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));
7613      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
7614      reaction.fail = typeof onRejected == 'function' && onRejected;
7615      reaction.domain = IS_NODE ? process.domain : undefined;
7616      state.parent = true;
7617      state.reactions.push(reaction);
7618      if (state.state != PENDING) notify(this, state, false);
7619      return reaction.promise;
7620    },
7621    // `Promise.prototype.catch` method
7622    // https://tc39.github.io/ecma262/#sec-promise.prototype.catch
7623    'catch': function (onRejected) {
7624      return this.then(undefined, onRejected);
7625    }
7626  });
7627  OwnPromiseCapability = function () {
7628    var promise = new Internal();
7629    var state = getInternalState(promise);
7630    this.promise = promise;
7631    this.resolve = bind(internalResolve, promise, state);
7632    this.reject = bind(internalReject, promise, state);
7633  };
7634  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
7635    return C === PromiseConstructor || C === PromiseWrapper
7636      ? new OwnPromiseCapability(C)
7637      : newGenericPromiseCapability(C);
7638  };
7639
7640  if (!IS_PURE && typeof NativePromise == 'function') {
7641    nativeThen = NativePromise.prototype.then;
7642
7643    // wrap native Promise#then for native async functions
7644    redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) {
7645      var that = this;
7646      return new PromiseConstructor(function (resolve, reject) {
7647        nativeThen.call(that, resolve, reject);
7648      }).then(onFulfilled, onRejected);
7649    // https://github.com/zloirock/core-js/issues/640
7650    }, { unsafe: true });
7651
7652    // wrap fetch result
7653    if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, {
7654      // eslint-disable-next-line no-unused-vars
7655      fetch: function fetch(input /* , init */) {
7656        return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));
7657      }
7658    });
7659  }
7660}
7661
7662$({ global: true, wrap: true, forced: FORCED }, {
7663  Promise: PromiseConstructor
7664});
7665
7666setToStringTag(PromiseConstructor, PROMISE, false, true);
7667setSpecies(PROMISE);
7668
7669PromiseWrapper = getBuiltIn(PROMISE);
7670
7671// statics
7672$({ target: PROMISE, stat: true, forced: FORCED }, {
7673  // `Promise.reject` method
7674  // https://tc39.github.io/ecma262/#sec-promise.reject
7675  reject: function reject(r) {
7676    var capability = newPromiseCapability(this);
7677    capability.reject.call(undefined, r);
7678    return capability.promise;
7679  }
7680});
7681
7682$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {
7683  // `Promise.resolve` method
7684  // https://tc39.github.io/ecma262/#sec-promise.resolve
7685  resolve: function resolve(x) {
7686    return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);
7687  }
7688});
7689
7690$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {
7691  // `Promise.all` method
7692  // https://tc39.github.io/ecma262/#sec-promise.all
7693  all: function all(iterable) {
7694    var C = this;
7695    var capability = newPromiseCapability(C);
7696    var resolve = capability.resolve;
7697    var reject = capability.reject;
7698    var result = perform(function () {
7699      var $promiseResolve = aFunction(C.resolve);
7700      var values = [];
7701      var counter = 0;
7702      var remaining = 1;
7703      iterate(iterable, function (promise) {
7704        var index = counter++;
7705        var alreadyCalled = false;
7706        values.push(undefined);
7707        remaining++;
7708        $promiseResolve.call(C, promise).then(function (value) {
7709          if (alreadyCalled) return;
7710          alreadyCalled = true;
7711          values[index] = value;
7712          --remaining || resolve(values);
7713        }, reject);
7714      });
7715      --remaining || resolve(values);
7716    });
7717    if (result.error) reject(result.value);
7718    return capability.promise;
7719  },
7720  // `Promise.race` method
7721  // https://tc39.github.io/ecma262/#sec-promise.race
7722  race: function race(iterable) {
7723    var C = this;
7724    var capability = newPromiseCapability(C);
7725    var reject = capability.reject;
7726    var result = perform(function () {
7727      var $promiseResolve = aFunction(C.resolve);
7728      iterate(iterable, function (promise) {
7729        $promiseResolve.call(C, promise).then(capability.resolve, reject);
7730      });
7731    });
7732    if (result.error) reject(result.value);
7733    return capability.promise;
7734  }
7735});
7736
7737
7738/***/ }),
7739
7740/***/ 763:
7741/***/ (function(module, exports, __webpack_require__) {
7742
7743var global = __webpack_require__(12);
7744
7745module.exports = global.Promise;
7746
7747
7748/***/ }),
7749
7750/***/ 764:
7751/***/ (function(module, exports, __webpack_require__) {
7752
7753"use strict";
7754
7755var getBuiltIn = __webpack_require__(50);
7756var definePropertyModule = __webpack_require__(24);
7757var wellKnownSymbol = __webpack_require__(11);
7758var DESCRIPTORS = __webpack_require__(21);
7759
7760var SPECIES = wellKnownSymbol('species');
7761
7762module.exports = function (CONSTRUCTOR_NAME) {
7763  var Constructor = getBuiltIn(CONSTRUCTOR_NAME);
7764  var defineProperty = definePropertyModule.f;
7765
7766  if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {
7767    defineProperty(Constructor, SPECIES, {
7768      configurable: true,
7769      get: function () { return this; }
7770    });
7771  }
7772};
7773
7774
7775/***/ }),
7776
7777/***/ 765:
7778/***/ (function(module, exports, __webpack_require__) {
7779
7780var anObject = __webpack_require__(13);
7781var isArrayIteratorMethod = __webpack_require__(256);
7782var toLength = __webpack_require__(18);
7783var bind = __webpack_require__(80);
7784var getIteratorMethod = __webpack_require__(195);
7785var callWithSafeIterationClosing = __webpack_require__(255);
7786
7787var Result = function (stopped, result) {
7788  this.stopped = stopped;
7789  this.result = result;
7790};
7791
7792var iterate = module.exports = function (iterable, fn, that, AS_ENTRIES, IS_ITERATOR) {
7793  var boundFunction = bind(fn, that, AS_ENTRIES ? 2 : 1);
7794  var iterator, iterFn, index, length, result, next, step;
7795
7796  if (IS_ITERATOR) {
7797    iterator = iterable;
7798  } else {
7799    iterFn = getIteratorMethod(iterable);
7800    if (typeof iterFn != 'function') throw TypeError('Target is not iterable');
7801    // optimisation for array iterators
7802    if (isArrayIteratorMethod(iterFn)) {
7803      for (index = 0, length = toLength(iterable.length); length > index; index++) {
7804        result = AS_ENTRIES
7805          ? boundFunction(anObject(step = iterable[index])[0], step[1])
7806          : boundFunction(iterable[index]);
7807        if (result && result instanceof Result) return result;
7808      } return new Result(false);
7809    }
7810    iterator = iterFn.call(iterable);
7811  }
7812
7813  next = iterator.next;
7814  while (!(step = next.call(iterator)).done) {
7815    result = callWithSafeIterationClosing(iterator, boundFunction, step.value, AS_ENTRIES);
7816    if (typeof result == 'object' && result && result instanceof Result) return result;
7817  } return new Result(false);
7818};
7819
7820iterate.stop = function (result) {
7821  return new Result(true, result);
7822};
7823
7824
7825/***/ }),
7826
7827/***/ 766:
7828/***/ (function(module, exports, __webpack_require__) {
7829
7830var global = __webpack_require__(12);
7831var getOwnPropertyDescriptor = __webpack_require__(47).f;
7832var classof = __webpack_require__(40);
7833var macrotask = __webpack_require__(263).set;
7834var IS_IOS = __webpack_require__(264);
7835
7836var MutationObserver = global.MutationObserver || global.WebKitMutationObserver;
7837var process = global.process;
7838var Promise = global.Promise;
7839var IS_NODE = classof(process) == 'process';
7840// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`
7841var queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');
7842var queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;
7843
7844var flush, head, last, notify, toggle, node, promise, then;
7845
7846// modern engines have queueMicrotask method
7847if (!queueMicrotask) {
7848  flush = function () {
7849    var parent, fn;
7850    if (IS_NODE && (parent = process.domain)) parent.exit();
7851    while (head) {
7852      fn = head.fn;
7853      head = head.next;
7854      try {
7855        fn();
7856      } catch (error) {
7857        if (head) notify();
7858        else last = undefined;
7859        throw error;
7860      }
7861    } last = undefined;
7862    if (parent) parent.enter();
7863  };
7864
7865  // Node.js
7866  if (IS_NODE) {
7867    notify = function () {
7868      process.nextTick(flush);
7869    };
7870  // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339
7871  } else if (MutationObserver && !IS_IOS) {
7872    toggle = true;
7873    node = document.createTextNode('');
7874    new MutationObserver(flush).observe(node, { characterData: true });
7875    notify = function () {
7876      node.data = toggle = !toggle;
7877    };
7878  // environments with maybe non-completely correct, but existent Promise
7879  } else if (Promise && Promise.resolve) {
7880    // Promise.resolve without an argument throws an error in LG WebOS 2
7881    promise = Promise.resolve(undefined);
7882    then = promise.then;
7883    notify = function () {
7884      then.call(promise, flush);
7885    };
7886  // for other environments - macrotask based on:
7887  // - setImmediate
7888  // - MessageChannel
7889  // - window.postMessag
7890  // - onreadystatechange
7891  // - setTimeout
7892  } else {
7893    notify = function () {
7894      // strange IE + webpack dev server bug - use .call(global)
7895      macrotask.call(global, flush);
7896    };
7897  }
7898}
7899
7900module.exports = queueMicrotask || function (fn) {
7901  var task = { fn: fn, next: undefined };
7902  if (last) last.next = task;
7903  if (!head) {
7904    head = task;
7905    notify();
7906  } last = task;
7907};
7908
7909
7910/***/ }),
7911
7912/***/ 767:
7913/***/ (function(module, exports, __webpack_require__) {
7914
7915var anObject = __webpack_require__(13);
7916var isObject = __webpack_require__(17);
7917var newPromiseCapability = __webpack_require__(265);
7918
7919module.exports = function (C, x) {
7920  anObject(C);
7921  if (isObject(x) && x.constructor === C) return x;
7922  var promiseCapability = newPromiseCapability.f(C);
7923  var resolve = promiseCapability.resolve;
7924  resolve(x);
7925  return promiseCapability.promise;
7926};
7927
7928
7929/***/ }),
7930
7931/***/ 768:
7932/***/ (function(module, exports, __webpack_require__) {
7933
7934var global = __webpack_require__(12);
7935
7936module.exports = function (a, b) {
7937  var console = global.console;
7938  if (console && console.error) {
7939    arguments.length === 1 ? console.error(a) : console.error(a, b);
7940  }
7941};
7942
7943
7944/***/ }),
7945
7946/***/ 769:
7947/***/ (function(module, exports) {
7948
7949module.exports = function (exec) {
7950  try {
7951    return { error: false, value: exec() };
7952  } catch (error) {
7953    return { error: true, value: error };
7954  }
7955};
7956
7957
7958/***/ }),
7959
7960/***/ 77:
7961/***/ (function(module, exports, __webpack_require__) {
7962
7963var fails = __webpack_require__(10);
7964var classof = __webpack_require__(40);
7965
7966var split = ''.split;
7967
7968// fallback for non-array-like ES3 and non-enumerable old V8 strings
7969module.exports = fails(function () {
7970  // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
7971  // eslint-disable-next-line no-prototype-builtins
7972  return !Object('z').propertyIsEnumerable(0);
7973}) ? function (it) {
7974  return classof(it) == 'String' ? split.call(it, '') : Object(it);
7975} : Object;
7976
7977
7978/***/ }),
7979
7980/***/ 770:
7981/***/ (function(module, exports, __webpack_require__) {
7982
7983"use strict";
7984
7985var fixRegExpWellKnownSymbolLogic = __webpack_require__(83);
7986var anObject = __webpack_require__(13);
7987var requireObjectCoercible = __webpack_require__(20);
7988var sameValue = __webpack_require__(771);
7989var regExpExec = __webpack_require__(84);
7990
7991// @@search logic
7992fixRegExpWellKnownSymbolLogic('search', 1, function (SEARCH, nativeSearch, maybeCallNative) {
7993  return [
7994    // `String.prototype.search` method
7995    // https://tc39.github.io/ecma262/#sec-string.prototype.search
7996    function search(regexp) {
7997      var O = requireObjectCoercible(this);
7998      var searcher = regexp == undefined ? undefined : regexp[SEARCH];
7999      return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
8000    },
8001    // `RegExp.prototype[@@search]` method
8002    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search
8003    function (regexp) {
8004      var res = maybeCallNative(nativeSearch, regexp, this);
8005      if (res.done) return res.value;
8006
8007      var rx = anObject(regexp);
8008      var S = String(this);
8009
8010      var previousLastIndex = rx.lastIndex;
8011      if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
8012      var result = regExpExec(rx, S);
8013      if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
8014      return result === null ? -1 : result.index;
8015    }
8016  ];
8017});
8018
8019
8020/***/ }),
8021
8022/***/ 771:
8023/***/ (function(module, exports) {
8024
8025// `SameValue` abstract operation
8026// https://tc39.github.io/ecma262/#sec-samevalue
8027module.exports = Object.is || function is(x, y) {
8028  // eslint-disable-next-line no-self-compare
8029  return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
8030};
8031
8032
8033/***/ }),
8034
8035/***/ 772:
8036/***/ (function(module, exports, __webpack_require__) {
8037
8038"use strict";
8039
8040var $ = __webpack_require__(8);
8041var getOwnPropertyDescriptor = __webpack_require__(47).f;
8042var toLength = __webpack_require__(18);
8043var notARegExp = __webpack_require__(128);
8044var requireObjectCoercible = __webpack_require__(20);
8045var correctIsRegExpLogic = __webpack_require__(129);
8046var IS_PURE = __webpack_require__(49);
8047
8048var nativeStartsWith = ''.startsWith;
8049var min = Math.min;
8050
8051var CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');
8052// https://github.com/zloirock/core-js/pull/702
8053var MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {
8054  var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');
8055  return descriptor && !descriptor.writable;
8056}();
vendor: 4,371 bytes, lines 8057-8168
8057
8058// `String.prototype.startsWith` method
8059// https://tc39.github.io/ecma262/#sec-string.prototype.startswith
8060$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {
8061  startsWith: function startsWith(searchString /* , position = 0 */) {
8062    var that = String(requireObjectCoercible(this));
8063    notARegExp(searchString);
8064    var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));
8065    var search = String(searchString);
8066    return nativeStartsWith
8067      ? nativeStartsWith.call(that, search, index)
8068      : that.slice(index, index + search.length) === search;
8069  }
8070});
8071
8072
8073/***/ }),
8074
8075/***/ 773:
8076/***/ (function(module, exports, __webpack_require__) {
8077
8078var global = __webpack_require__(12);
8079var DOMIterables = __webpack_require__(186);
8080var ArrayIteratorMethods = __webpack_require__(230);
8081var createNonEnumerableProperty = __webpack_require__(28);
8082var wellKnownSymbol = __webpack_require__(11);
8083
8084var ITERATOR = wellKnownSymbol('iterator');
8085var TO_STRING_TAG = wellKnownSymbol('toStringTag');
8086var ArrayValues = ArrayIteratorMethods.values;
8087
8088for (var COLLECTION_NAME in DOMIterables) {
8089  var Collection = global[COLLECTION_NAME];
8090  var CollectionPrototype = Collection && Collection.prototype;
8091  if (CollectionPrototype) {
8092    // some Chrome versions have non-configurable methods on DOMTokenList
8093    if (CollectionPrototype[ITERATOR] !== ArrayValues) try {
8094      createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
8095    } catch (error) {
8096      CollectionPrototype[ITERATOR] = ArrayValues;
8097    }
8098    if (!CollectionPrototype[TO_STRING_TAG]) {
8099      createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
8100    }
8101    if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
8102      // some Chrome versions have non-configurable methods on DOMTokenList
8103      if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
8104        createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
8105      } catch (error) {
8106        CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
8107      }
8108    }
8109  }
8110}
8111
8112
8113/***/ }),
8114
8115/***/ 774:
8116/***/ (function(module, exports, __webpack_require__) {
8117
8118"use strict";
8119
8120// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
8121__webpack_require__(266);
8122var $ = __webpack_require__(8);
8123var DESCRIPTORS = __webpack_require__(21);
8124var USE_NATIVE_URL = __webpack_require__(267);
8125var global = __webpack_require__(12);
8126var defineProperties = __webpack_require__(182);
8127var redefine = __webpack_require__(41);
8128var anInstance = __webpack_require__(231);
8129var has = __webpack_require__(15);
8130var assign = __webpack_require__(775);
8131var arrayFrom = __webpack_require__(254);
8132var codeAt = __webpack_require__(149).codeAt;
8133var toASCII = __webpack_require__(776);
8134var setToStringTag = __webpack_require__(102);
8135var URLSearchParamsModule = __webpack_require__(777);
8136var InternalStateModule = __webpack_require__(64);
8137
8138var NativeURL = global.URL;
8139var URLSearchParams = URLSearchParamsModule.URLSearchParams;
8140var getInternalSearchParamsState = URLSearchParamsModule.getState;
8141var setInternalState = InternalStateModule.set;
8142var getInternalURLState = InternalStateModule.getterFor('URL');
8143var floor = Math.floor;
8144var pow = Math.pow;
8145
8146var INVALID_AUTHORITY = 'Invalid authority';
8147var INVALID_SCHEME = 'Invalid scheme';
8148var INVALID_HOST = 'Invalid host';
8149var INVALID_PORT = 'Invalid port';
8150
8151var ALPHA = /[A-Za-z]/;
8152var ALPHANUMERIC = /[\d+-.A-Za-z]/;
8153var DIGIT = /\d/;
8154var HEX_START = /^(0x|0X)/;
8155var OCT = /^[0-7]+$/;
8156var DEC = /^\d+$/;
8157var HEX = /^[\dA-Fa-f]+$/;
8158// eslint-disable-next-line no-control-regex
8159var FORBIDDEN_HOST_CODE_POINT = /[\u0000\u0009\u000A\u000D #%/:?@[\\]]/;
8160// eslint-disable-next-line no-control-regex
8161var FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\u0000\u0009\u000A\u000D #/:?@[\\]]/;
8162// eslint-disable-next-line no-control-regex
8163var LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g;
8164// eslint-disable-next-line no-control-regex
8165var TAB_AND_NEW_LINE = /[\u0009\u000A\u000D]/g;
8166var EOF;
8167
8168var parseHost = function (url, input) {
vendor: 25,047 bytes, lines 8169-8960
8169  var result, codePoints, index;
8170  if (input.charAt(0) == '[') {
8171    if (input.charAt(input.length - 1) != ']') return INVALID_HOST;
8172    result = parseIPv6(input.slice(1, -1));
8173    if (!result) return INVALID_HOST;
8174    url.host = result;
8175  // opaque host
8176  } else if (!isSpecial(url)) {
8177    if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST;
8178    result = '';
8179    codePoints = arrayFrom(input);
8180    for (index = 0; index < codePoints.length; index++) {
8181      result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);
8182    }
8183    url.host = result;
8184  } else {
8185    input = toASCII(input);
8186    if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST;
8187    result = parseIPv4(input);
8188    if (result === null) return INVALID_HOST;
8189    url.host = result;
8190  }
8191};
8192
8193var parseIPv4 = function (input) {
8194  var parts = input.split('.');
8195  var partsLength, numbers, index, part, radix, number, ipv4;
8196  if (parts.length && parts[parts.length - 1] == '') {
8197    parts.pop();
8198  }
8199  partsLength = parts.length;
8200  if (partsLength > 4) return input;
8201  numbers = [];
8202  for (index = 0; index < partsLength; index++) {
8203    part = parts[index];
8204    if (part == '') return input;
8205    radix = 10;
8206    if (part.length > 1 && part.charAt(0) == '0') {
8207      radix = HEX_START.test(part) ? 16 : 8;
8208      part = part.slice(radix == 8 ? 1 : 2);
8209    }
8210    if (part === '') {
8211      number = 0;
8212    } else {
8213      if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input;
8214      number = parseInt(part, radix);
8215    }
8216    numbers.push(number);
8217  }
8218  for (index = 0; index < partsLength; index++) {
8219    number = numbers[index];
8220    if (index == partsLength - 1) {
8221      if (number >= pow(256, 5 - partsLength)) return null;
8222    } else if (number > 255) return null;
8223  }
8224  ipv4 = numbers.pop();
8225  for (index = 0; index < numbers.length; index++) {
8226    ipv4 += numbers[index] * pow(256, 3 - index);
8227  }
8228  return ipv4;
8229};
8230
8231// eslint-disable-next-line max-statements
8232var parseIPv6 = function (input) {
8233  var address = [0, 0, 0, 0, 0, 0, 0, 0];
8234  var pieceIndex = 0;
8235  var compress = null;
8236  var pointer = 0;
8237  var value, length, numbersSeen, ipv4Piece, number, swaps, swap;
8238
8239  var char = function () {
8240    return input.charAt(pointer);
8241  };
8242
8243  if (char() == ':') {
8244    if (input.charAt(1) != ':') return;
8245    pointer += 2;
8246    pieceIndex++;
8247    compress = pieceIndex;
8248  }
8249  while (char()) {
8250    if (pieceIndex == 8) return;
8251    if (char() == ':') {
8252      if (compress !== null) return;
8253      pointer++;
8254      pieceIndex++;
8255      compress = pieceIndex;
8256      continue;
8257    }
8258    value = length = 0;
8259    while (length < 4 && HEX.test(char())) {
8260      value = value * 16 + parseInt(char(), 16);
8261      pointer++;
8262      length++;
8263    }
8264    if (char() == '.') {
8265      if (length == 0) return;
8266      pointer -= length;
8267      if (pieceIndex > 6) return;
8268      numbersSeen = 0;
8269      while (char()) {
8270        ipv4Piece = null;
8271        if (numbersSeen > 0) {
8272          if (char() == '.' && numbersSeen < 4) pointer++;
8273          else return;
8274        }
8275        if (!DIGIT.test(char())) return;
8276        while (DIGIT.test(char())) {
8277          number = parseInt(char(), 10);
8278          if (ipv4Piece === null) ipv4Piece = number;
8279          else if (ipv4Piece == 0) return;
8280          else ipv4Piece = ipv4Piece * 10 + number;
8281          if (ipv4Piece > 255) return;
8282          pointer++;
8283        }
8284        address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
8285        numbersSeen++;
8286        if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;
8287      }
8288      if (numbersSeen != 4) return;
8289      break;
8290    } else if (char() == ':') {
8291      pointer++;
8292      if (!char()) return;
8293    } else if (char()) return;
8294    address[pieceIndex++] = value;
8295  }
8296  if (compress !== null) {
8297    swaps = pieceIndex - compress;
8298    pieceIndex = 7;
8299    while (pieceIndex != 0 && swaps > 0) {
8300      swap = address[pieceIndex];
8301      address[pieceIndex--] = address[compress + swaps - 1];
8302      address[compress + --swaps] = swap;
8303    }
8304  } else if (pieceIndex != 8) return;
8305  return address;
8306};
8307
8308var findLongestZeroSequence = function (ipv6) {
8309  var maxIndex = null;
8310  var maxLength = 1;
8311  var currStart = null;
8312  var currLength = 0;
8313  var index = 0;
8314  for (; index < 8; index++) {
8315    if (ipv6[index] !== 0) {
8316      if (currLength > maxLength) {
8317        maxIndex = currStart;
8318        maxLength = currLength;
8319      }
8320      currStart = null;
8321      currLength = 0;
8322    } else {
8323      if (currStart === null) currStart = index;
8324      ++currLength;
8325    }
8326  }
8327  if (currLength > maxLength) {
8328    maxIndex = currStart;
8329    maxLength = currLength;
8330  }
8331  return maxIndex;
8332};
8333
8334var serializeHost = function (host) {
8335  var result, index, compress, ignore0;
8336  // ipv4
8337  if (typeof host == 'number') {
8338    result = [];
8339    for (index = 0; index < 4; index++) {
8340      result.unshift(host % 256);
8341      host = floor(host / 256);
8342    } return result.join('.');
8343  // ipv6
8344  } else if (typeof host == 'object') {
8345    result = '';
8346    compress = findLongestZeroSequence(host);
8347    for (index = 0; index < 8; index++) {
8348      if (ignore0 && host[index] === 0) continue;
8349      if (ignore0) ignore0 = false;
8350      if (compress === index) {
8351        result += index ? ':' : '::';
8352        ignore0 = true;
8353      } else {
8354        result += host[index].toString(16);
8355        if (index < 7) result += ':';
8356      }
8357    }
8358    return '[' + result + ']';
8359  } return host;
8360};
8361
8362var C0ControlPercentEncodeSet = {};
8363var fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {
8364  ' ': 1, '"': 1, '<': 1, '>': 1, '`': 1
8365});
8366var pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {
8367  '#': 1, '?': 1, '{': 1, '}': 1
8368});
8369var userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {
8370  '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\': 1, ']': 1, '^': 1, '|': 1
8371});
8372
8373var percentEncode = function (char, set) {
8374  var code = codeAt(char, 0);
8375  return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char);
8376};
8377
8378var specialSchemes = {
8379  ftp: 21,
8380  file: null,
8381  http: 80,
8382  https: 443,
8383  ws: 80,
8384  wss: 443
8385};
8386
8387var isSpecial = function (url) {
8388  return has(specialSchemes, url.scheme);
8389};
8390
8391var includesCredentials = function (url) {
8392  return url.username != '' || url.password != '';
8393};
8394
8395var cannotHaveUsernamePasswordPort = function (url) {
8396  return !url.host || url.cannotBeABaseURL || url.scheme == 'file';
8397};
8398
8399var isWindowsDriveLetter = function (string, normalized) {
8400  var second;
8401  return string.length == 2 && ALPHA.test(string.charAt(0))
8402    && ((second = string.charAt(1)) == ':' || (!normalized && second == '|'));
8403};
8404
8405var startsWithWindowsDriveLetter = function (string) {
8406  var third;
8407  return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && (
8408    string.length == 2 ||
8409    ((third = string.charAt(2)) === '/' || third === '\\' || third === '?' || third === '#')
8410  );
8411};
8412
8413var shortenURLsPath = function (url) {
8414  var path = url.path;
8415  var pathSize = path.length;
8416  if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {
8417    path.pop();
8418  }
8419};
8420
8421var isSingleDot = function (segment) {
8422  return segment === '.' || segment.toLowerCase() === '%2e';
8423};
8424
8425var isDoubleDot = function (segment) {
8426  segment = segment.toLowerCase();
8427  return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';
8428};
8429
8430// States:
8431var SCHEME_START = {};
8432var SCHEME = {};
8433var NO_SCHEME = {};
8434var SPECIAL_RELATIVE_OR_AUTHORITY = {};
8435var PATH_OR_AUTHORITY = {};
8436var RELATIVE = {};
8437var RELATIVE_SLASH = {};
8438var SPECIAL_AUTHORITY_SLASHES = {};
8439var SPECIAL_AUTHORITY_IGNORE_SLASHES = {};
8440var AUTHORITY = {};
8441var HOST = {};
8442var HOSTNAME = {};
8443var PORT = {};
8444var FILE = {};
8445var FILE_SLASH = {};
8446var FILE_HOST = {};
8447var PATH_START = {};
8448var PATH = {};
8449var CANNOT_BE_A_BASE_URL_PATH = {};
8450var QUERY = {};
8451var FRAGMENT = {};
8452
8453// eslint-disable-next-line max-statements
8454var parseURL = function (url, input, stateOverride, base) {
8455  var state = stateOverride || SCHEME_START;
8456  var pointer = 0;
8457  var buffer = '';
8458  var seenAt = false;
8459  var seenBracket = false;
8460  var seenPasswordToken = false;
8461  var codePoints, char, bufferCodePoints, failure;
8462
8463  if (!stateOverride) {
8464    url.scheme = '';
8465    url.username = '';
8466    url.password = '';
8467    url.host = null;
8468    url.port = null;
8469    url.path = [];
8470    url.query = null;
8471    url.fragment = null;
8472    url.cannotBeABaseURL = false;
8473    input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');
8474  }
8475
8476  input = input.replace(TAB_AND_NEW_LINE, '');
8477
8478  codePoints = arrayFrom(input);
8479
8480  while (pointer <= codePoints.length) {
8481    char = codePoints[pointer];
8482    switch (state) {
8483      case SCHEME_START:
8484        if (char && ALPHA.test(char)) {
8485          buffer += char.toLowerCase();
8486          state = SCHEME;
8487        } else if (!stateOverride) {
8488          state = NO_SCHEME;
8489          continue;
8490        } else return INVALID_SCHEME;
8491        break;
8492
8493      case SCHEME:
8494        if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) {
8495          buffer += char.toLowerCase();
8496        } else if (char == ':') {
8497          if (stateOverride && (
8498            (isSpecial(url) != has(specialSchemes, buffer)) ||
8499            (buffer == 'file' && (includesCredentials(url) || url.port !== null)) ||
8500            (url.scheme == 'file' && !url.host)
8501          )) return;
8502          url.scheme = buffer;
8503          if (stateOverride) {
8504            if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null;
8505            return;
8506          }
8507          buffer = '';
8508          if (url.scheme == 'file') {
8509            state = FILE;
8510          } else if (isSpecial(url) && base && base.scheme == url.scheme) {
8511            state = SPECIAL_RELATIVE_OR_AUTHORITY;
8512          } else if (isSpecial(url)) {
8513            state = SPECIAL_AUTHORITY_SLASHES;
8514          } else if (codePoints[pointer + 1] == '/') {
8515            state = PATH_OR_AUTHORITY;
8516            pointer++;
8517          } else {
8518            url.cannotBeABaseURL = true;
8519            url.path.push('');
8520            state = CANNOT_BE_A_BASE_URL_PATH;
8521          }
8522        } else if (!stateOverride) {
8523          buffer = '';
8524          state = NO_SCHEME;
8525          pointer = 0;
8526          continue;
8527        } else return INVALID_SCHEME;
8528        break;
8529
8530      case NO_SCHEME:
8531        if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME;
8532        if (base.cannotBeABaseURL && char == '#') {
8533          url.scheme = base.scheme;
8534          url.path = base.path.slice();
8535          url.query = base.query;
8536          url.fragment = '';
8537          url.cannotBeABaseURL = true;
8538          state = FRAGMENT;
8539          break;
8540        }
8541        state = base.scheme == 'file' ? FILE : RELATIVE;
8542        continue;
8543
8544      case SPECIAL_RELATIVE_OR_AUTHORITY:
8545        if (char == '/' && codePoints[pointer + 1] == '/') {
8546          state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
8547          pointer++;
8548        } else {
8549          state = RELATIVE;
8550          continue;
8551        } break;
8552
8553      case PATH_OR_AUTHORITY:
8554        if (char == '/') {
8555          state = AUTHORITY;
8556          break;
8557        } else {
8558          state = PATH;
8559          continue;
8560        }
8561
8562      case RELATIVE:
8563        url.scheme = base.scheme;
8564        if (char == EOF) {
8565          url.username = base.username;
8566          url.password = base.password;
8567          url.host = base.host;
8568          url.port = base.port;
8569          url.path = base.path.slice();
8570          url.query = base.query;
8571        } else if (char == '/' || (char == '\\' && isSpecial(url))) {
8572          state = RELATIVE_SLASH;
8573        } else if (char == '?') {
8574          url.username = base.username;
8575          url.password = base.password;
8576          url.host = base.host;
8577          url.port = base.port;
8578          url.path = base.path.slice();
8579          url.query = '';
8580          state = QUERY;
8581        } else if (char == '#') {
8582          url.username = base.username;
8583          url.password = base.password;
8584          url.host = base.host;
8585          url.port = base.port;
8586          url.path = base.path.slice();
8587          url.query = base.query;
8588          url.fragment = '';
8589          state = FRAGMENT;
8590        } else {
8591          url.username = base.username;
8592          url.password = base.password;
8593          url.host = base.host;
8594          url.port = base.port;
8595          url.path = base.path.slice();
8596          url.path.pop();
8597          state = PATH;
8598          continue;
8599        } break;
8600
8601      case RELATIVE_SLASH:
8602        if (isSpecial(url) && (char == '/' || char == '\\')) {
8603          state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
8604        } else if (char == '/') {
8605          state = AUTHORITY;
8606        } else {
8607          url.username = base.username;
8608          url.password = base.password;
8609          url.host = base.host;
8610          url.port = base.port;
8611          state = PATH;
8612          continue;
8613        } break;
8614
8615      case SPECIAL_AUTHORITY_SLASHES:
8616        state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
8617        if (char != '/' || buffer.charAt(pointer + 1) != '/') continue;
8618        pointer++;
8619        break;
8620
8621      case SPECIAL_AUTHORITY_IGNORE_SLASHES:
8622        if (char != '/' && char != '\\') {
8623          state = AUTHORITY;
8624          continue;
8625        } break;
8626
8627      case AUTHORITY:
8628        if (char == '@') {
8629          if (seenAt) buffer = '%40' + buffer;
8630          seenAt = true;
8631          bufferCodePoints = arrayFrom(buffer);
8632          for (var i = 0; i < bufferCodePoints.length; i++) {
8633            var codePoint = bufferCodePoints[i];
8634            if (codePoint == ':' && !seenPasswordToken) {
8635              seenPasswordToken = true;
8636              continue;
8637            }
8638            var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);
8639            if (seenPasswordToken) url.password += encodedCodePoints;
8640            else url.username += encodedCodePoints;
8641          }
8642          buffer = '';
8643        } else if (
8644          char == EOF || char == '/' || char == '?' || char == '#' ||
8645          (char == '\\' && isSpecial(url))
8646        ) {
8647          if (seenAt && buffer == '') return INVALID_AUTHORITY;
8648          pointer -= arrayFrom(buffer).length + 1;
8649          buffer = '';
8650          state = HOST;
8651        } else buffer += char;
8652        break;
8653
8654      case HOST:
8655      case HOSTNAME:
8656        if (stateOverride && url.scheme == 'file') {
8657          state = FILE_HOST;
8658          continue;
8659        } else if (char == ':' && !seenBracket) {
8660          if (buffer == '') return INVALID_HOST;
8661          failure = parseHost(url, buffer);
8662          if (failure) return failure;
8663          buffer = '';
8664          state = PORT;
8665          if (stateOverride == HOSTNAME) return;
8666        } else if (
8667          char == EOF || char == '/' || char == '?' || char == '#' ||
8668          (char == '\\' && isSpecial(url))
8669        ) {
8670          if (isSpecial(url) && buffer == '') return INVALID_HOST;
8671          if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return;
8672          failure = parseHost(url, buffer);
8673          if (failure) return failure;
8674          buffer = '';
8675          state = PATH_START;
8676          if (stateOverride) return;
8677          continue;
8678        } else {
8679          if (char == '[') seenBracket = true;
8680          else if (char == ']') seenBracket = false;
8681          buffer += char;
8682        } break;
8683
8684      case PORT:
8685        if (DIGIT.test(char)) {
8686          buffer += char;
8687        } else if (
8688          char == EOF || char == '/' || char == '?' || char == '#' ||
8689          (char == '\\' && isSpecial(url)) ||
8690          stateOverride
8691        ) {
8692          if (buffer != '') {
8693            var port = parseInt(buffer, 10);
8694            if (port > 0xFFFF) return INVALID_PORT;
8695            url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port;
8696            buffer = '';
8697          }
8698          if (stateOverride) return;
8699          state = PATH_START;
8700          continue;
8701        } else return INVALID_PORT;
8702        break;
8703
8704      case FILE:
8705        url.scheme = 'file';
8706        if (char == '/' || char == '\\') state = FILE_SLASH;
8707        else if (base && base.scheme == 'file') {
8708          if (char == EOF) {
8709            url.host = base.host;
8710            url.path = base.path.slice();
8711            url.query = base.query;
8712          } else if (char == '?') {
8713            url.host = base.host;
8714            url.path = base.path.slice();
8715            url.query = '';
8716            state = QUERY;
8717          } else if (char == '#') {
8718            url.host = base.host;
8719            url.path = base.path.slice();
8720            url.query = base.query;
8721            url.fragment = '';
8722            state = FRAGMENT;
8723          } else {
8724            if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {
8725              url.host = base.host;
8726              url.path = base.path.slice();
8727              shortenURLsPath(url);
8728            }
8729            state = PATH;
8730            continue;
8731          }
8732        } else {
8733          state = PATH;
8734          continue;
8735        } break;
8736
8737      case FILE_SLASH:
8738        if (char == '/' || char == '\\') {
8739          state = FILE_HOST;
8740          break;
8741        }
8742        if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {
8743          if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]);
8744          else url.host = base.host;
8745        }
8746        state = PATH;
8747        continue;
8748
8749      case FILE_HOST:
8750        if (char == EOF || char == '/' || char == '\\' || char == '?' || char == '#') {
8751          if (!stateOverride && isWindowsDriveLetter(buffer)) {
8752            state = PATH;
8753          } else if (buffer == '') {
8754            url.host = '';
8755            if (stateOverride) return;
8756            state = PATH_START;
8757          } else {
8758            failure = parseHost(url, buffer);
8759            if (failure) return failure;
8760            if (url.host == 'localhost') url.host = '';
8761            if (stateOverride) return;
8762            buffer = '';
8763            state = PATH_START;
8764          } continue;
8765        } else buffer += char;
8766        break;
8767
8768      case PATH_START:
8769        if (isSpecial(url)) {
8770          state = PATH;
8771          if (char != '/' && char != '\\') continue;
8772        } else if (!stateOverride && char == '?') {
8773          url.query = '';
8774          state = QUERY;
8775        } else if (!stateOverride && char == '#') {
8776          url.fragment = '';
8777          state = FRAGMENT;
8778        } else if (char != EOF) {
8779          state = PATH;
8780          if (char != '/') continue;
8781        } break;
8782
8783      case PATH:
8784        if (
8785          char == EOF || char == '/' ||
8786          (char == '\\' && isSpecial(url)) ||
8787          (!stateOverride && (char == '?' || char == '#'))
8788        ) {
8789          if (isDoubleDot(buffer)) {
8790            shortenURLsPath(url);
8791            if (char != '/' && !(char == '\\' && isSpecial(url))) {
8792              url.path.push('');
8793            }
8794          } else if (isSingleDot(buffer)) {
8795            if (char != '/' && !(char == '\\' && isSpecial(url))) {
8796              url.path.push('');
8797            }
8798          } else {
8799            if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {
8800              if (url.host) url.host = '';
8801              buffer = buffer.charAt(0) + ':'; // normalize windows drive letter
8802            }
8803            url.path.push(buffer);
8804          }
8805          buffer = '';
8806          if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) {
8807            while (url.path.length > 1 && url.path[0] === '') {
8808              url.path.shift();
8809            }
8810          }
8811          if (char == '?') {
8812            url.query = '';
8813            state = QUERY;
8814          } else if (char == '#') {
8815            url.fragment = '';
8816            state = FRAGMENT;
8817          }
8818        } else {
8819          buffer += percentEncode(char, pathPercentEncodeSet);
8820        } break;
8821
8822      case CANNOT_BE_A_BASE_URL_PATH:
8823        if (char == '?') {
8824          url.query = '';
8825          state = QUERY;
8826        } else if (char == '#') {
8827          url.fragment = '';
8828          state = FRAGMENT;
8829        } else if (char != EOF) {
8830          url.path[0] += percentEncode(char, C0ControlPercentEncodeSet);
8831        } break;
8832
8833      case QUERY:
8834        if (!stateOverride && char == '#') {
8835          url.fragment = '';
8836          state = FRAGMENT;
8837        } else if (char != EOF) {
8838          if (char == "'" && isSpecial(url)) url.query += '%27';
8839          else if (char == '#') url.query += '%23';
8840          else url.query += percentEncode(char, C0ControlPercentEncodeSet);
8841        } break;
8842
8843      case FRAGMENT:
8844        if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet);
8845        break;
8846    }
8847
8848    pointer++;
8849  }
8850};
8851
8852// `URL` constructor
8853// https://url.spec.whatwg.org/#url-class
8854var URLConstructor = function URL(url /* , base */) {
8855  var that = anInstance(this, URLConstructor, 'URL');
8856  var base = arguments.length > 1 ? arguments[1] : undefined;
8857  var urlString = String(url);
8858  var state = setInternalState(that, { type: 'URL' });
8859  var baseState, failure;
8860  if (base !== undefined) {
8861    if (base instanceof URLConstructor) baseState = getInternalURLState(base);
8862    else {
8863      failure = parseURL(baseState = {}, String(base));
8864      if (failure) throw TypeError(failure);
8865    }
8866  }
8867  failure = parseURL(state, urlString, null, baseState);
8868  if (failure) throw TypeError(failure);
8869  var searchParams = state.searchParams = new URLSearchParams();
8870  var searchParamsState = getInternalSearchParamsState(searchParams);
8871  searchParamsState.updateSearchParams(state.query);
8872  searchParamsState.updateURL = function () {
8873    state.query = String(searchParams) || null;
8874  };
8875  if (!DESCRIPTORS) {
8876    that.href = serializeURL.call(that);
8877    that.origin = getOrigin.call(that);
8878    that.protocol = getProtocol.call(that);
8879    that.username = getUsername.call(that);
8880    that.password = getPassword.call(that);
8881    that.host = getHost.call(that);
8882    that.hostname = getHostname.call(that);
8883    that.port = getPort.call(that);
8884    that.pathname = getPathname.call(that);
8885    that.search = getSearch.call(that);
8886    that.searchParams = getSearchParams.call(that);
8887    that.hash = getHash.call(that);
8888  }
8889};
8890
8891var URLPrototype = URLConstructor.prototype;
8892
8893var serializeURL = function () {
8894  var url = getInternalURLState(this);
8895  var scheme = url.scheme;
8896  var username = url.username;
8897  var password = url.password;
8898  var host = url.host;
8899  var port = url.port;
8900  var path = url.path;
8901  var query = url.query;
8902  var fragment = url.fragment;
8903  var output = scheme + ':';
8904  if (host !== null) {
8905    output += '//';
8906    if (includesCredentials(url)) {
8907      output += username + (password ? ':' + password : '') + '@';
8908    }
8909    output += serializeHost(host);
8910    if (port !== null) output += ':' + port;
8911  } else if (scheme == 'file') output += '//';
8912  output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';
8913  if (query !== null) output += '?' + query;
8914  if (fragment !== null) output += '#' + fragment;
8915  return output;
8916};
8917
8918var getOrigin = function () {
8919  var url = getInternalURLState(this);
8920  var scheme = url.scheme;
8921  var port = url.port;
8922  if (scheme == 'blob') try {
8923    return new URL(scheme.path[0]).origin;
8924  } catch (error) {
8925    return 'null';
8926  }
8927  if (scheme == 'file' || !isSpecial(url)) return 'null';
8928  return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : '');
8929};
8930
8931var getProtocol = function () {
8932  return getInternalURLState(this).scheme + ':';
8933};
8934
8935var getUsername = function () {
8936  return getInternalURLState(this).username;
8937};
8938
8939var getPassword = function () {
8940  return getInternalURLState(this).password;
8941};
8942
8943var getHost = function () {
8944  var url = getInternalURLState(this);
8945  var host = url.host;
8946  var port = url.port;
8947  return host === null ? ''
8948    : port === null ? serializeHost(host)
8949    : serializeHost(host) + ':' + port;
8950};
8951
8952var getHostname = function () {
8953  var host = getInternalURLState(this).host;
8954  return host === null ? '' : serializeHost(host);
8955};
8956
8957var getPort = function () {
8958  var port = getInternalURLState(this).port;
8959  return port === null ? '' : String(port);
8960};
vendor: 4,669 bytes, lines 8961-9077
8961
8962var getPathname = function () {
8963  var url = getInternalURLState(this);
8964  var path = url.path;
8965  return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';
8966};
8967
8968var getSearch = function () {
8969  var query = getInternalURLState(this).query;
8970  return query ? '?' + query : '';
8971};
8972
8973var getSearchParams = function () {
8974  return getInternalURLState(this).searchParams;
8975};
8976
8977var getHash = function () {
8978  var fragment = getInternalURLState(this).fragment;
8979  return fragment ? '#' + fragment : '';
8980};
8981
8982var accessorDescriptor = function (getter, setter) {
8983  return { get: getter, set: setter, configurable: true, enumerable: true };
8984};
8985
8986if (DESCRIPTORS) {
8987  defineProperties(URLPrototype, {
8988    // `URL.prototype.href` accessors pair
8989    // https://url.spec.whatwg.org/#dom-url-href
8990    href: accessorDescriptor(serializeURL, function (href) {
8991      var url = getInternalURLState(this);
8992      var urlString = String(href);
8993      var failure = parseURL(url, urlString);
8994      if (failure) throw TypeError(failure);
8995      getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);
8996    }),
8997    // `URL.prototype.origin` getter
8998    // https://url.spec.whatwg.org/#dom-url-origin
8999    origin: accessorDescriptor(getOrigin),
9000    // `URL.prototype.protocol` accessors pair
9001    // https://url.spec.whatwg.org/#dom-url-protocol
9002    protocol: accessorDescriptor(getProtocol, function (protocol) {
9003      var url = getInternalURLState(this);
9004      parseURL(url, String(protocol) + ':', SCHEME_START);
9005    }),
9006    // `URL.prototype.username` accessors pair
9007    // https://url.spec.whatwg.org/#dom-url-username
9008    username: accessorDescriptor(getUsername, function (username) {
9009      var url = getInternalURLState(this);
9010      var codePoints = arrayFrom(String(username));
9011      if (cannotHaveUsernamePasswordPort(url)) return;
9012      url.username = '';
9013      for (var i = 0; i < codePoints.length; i++) {
9014        url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);
9015      }
9016    }),
9017    // `URL.prototype.password` accessors pair
9018    // https://url.spec.whatwg.org/#dom-url-password
9019    password: accessorDescriptor(getPassword, function (password) {
9020      var url = getInternalURLState(this);
9021      var codePoints = arrayFrom(String(password));
9022      if (cannotHaveUsernamePasswordPort(url)) return;
9023      url.password = '';
9024      for (var i = 0; i < codePoints.length; i++) {
9025        url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);
9026      }
9027    }),
9028    // `URL.prototype.host` accessors pair
9029    // https://url.spec.whatwg.org/#dom-url-host
9030    host: accessorDescriptor(getHost, function (host) {
9031      var url = getInternalURLState(this);
9032      if (url.cannotBeABaseURL) return;
9033      parseURL(url, String(host), HOST);
9034    }),
9035    // `URL.prototype.hostname` accessors pair
9036    // https://url.spec.whatwg.org/#dom-url-hostname
9037    hostname: accessorDescriptor(getHostname, function (hostname) {
9038      var url = getInternalURLState(this);
9039      if (url.cannotBeABaseURL) return;
9040      parseURL(url, String(hostname), HOSTNAME);
9041    }),
9042    // `URL.prototype.port` accessors pair
9043    // https://url.spec.whatwg.org/#dom-url-port
9044    port: accessorDescriptor(getPort, function (port) {
9045      var url = getInternalURLState(this);
9046      if (cannotHaveUsernamePasswordPort(url)) return;
9047      port = String(port);
9048      if (port == '') url.port = null;
9049      else parseURL(url, port, PORT);
9050    }),
9051    // `URL.prototype.pathname` accessors pair
9052    // https://url.spec.whatwg.org/#dom-url-pathname
9053    pathname: accessorDescriptor(getPathname, function (pathname) {
9054      var url = getInternalURLState(this);
9055      if (url.cannotBeABaseURL) return;
9056      url.path = [];
9057      parseURL(url, pathname + '', PATH_START);
9058    }),
9059    // `URL.prototype.search` accessors pair
9060    // https://url.spec.whatwg.org/#dom-url-search
9061    search: accessorDescriptor(getSearch, function (search) {
9062      var url = getInternalURLState(this);
9063      search = String(search);
9064      if (search == '') {
9065        url.query = null;
9066      } else {
9067        if ('?' == search.charAt(0)) search = search.slice(1);
9068        url.query = '';
9069        parseURL(url, search, QUERY);
9070      }
9071      getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);
9072    }),
9073    // `URL.prototype.searchParams` getter
9074    // https://url.spec.whatwg.org/#dom-url-searchparams
9075    searchParams: accessorDescriptor(getSearchParams),
9076    // `URL.prototype.hash` accessors pair
9077    // https://url.spec.whatwg.org/#dom-url-hash
vendor: 4,098 bytes, lines 9078-9199
9078    hash: accessorDescriptor(getHash, function (hash) {
9079      var url = getInternalURLState(this);
9080      hash = String(hash);
9081      if (hash == '') {
9082        url.fragment = null;
9083        return;
9084      }
9085      if ('#' == hash.charAt(0)) hash = hash.slice(1);
9086      url.fragment = '';
9087      parseURL(url, hash, FRAGMENT);
9088    })
9089  });
9090}
9091
9092// `URL.prototype.toJSON` method
9093// https://url.spec.whatwg.org/#dom-url-tojson
9094redefine(URLPrototype, 'toJSON', function toJSON() {
9095  return serializeURL.call(this);
9096}, { enumerable: true });
9097
9098// `URL.prototype.toString` method
9099// https://url.spec.whatwg.org/#URL-stringification-behavior
9100redefine(URLPrototype, 'toString', function toString() {
9101  return serializeURL.call(this);
9102}, { enumerable: true });
9103
9104if (NativeURL) {
9105  var nativeCreateObjectURL = NativeURL.createObjectURL;
9106  var nativeRevokeObjectURL = NativeURL.revokeObjectURL;
9107  // `URL.createObjectURL` method
9108  // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL
9109  // eslint-disable-next-line no-unused-vars
9110  if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {
9111    return nativeCreateObjectURL.apply(NativeURL, arguments);
9112  });
9113  // `URL.revokeObjectURL` method
9114  // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL
9115  // eslint-disable-next-line no-unused-vars
9116  if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {
9117    return nativeRevokeObjectURL.apply(NativeURL, arguments);
9118  });
9119}
9120
9121setToStringTag(URLConstructor, 'URL');
9122
9123$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {
9124  URL: URLConstructor
9125});
9126
9127
9128/***/ }),
9129
9130/***/ 775:
9131/***/ (function(module, exports, __webpack_require__) {
9132
9133"use strict";
9134
9135var DESCRIPTORS = __webpack_require__(21);
9136var fails = __webpack_require__(10);
9137var objectKeys = __webpack_require__(101);
9138var getOwnPropertySymbolsModule = __webpack_require__(147);
9139var propertyIsEnumerableModule = __webpack_require__(142);
9140var toObject = __webpack_require__(34);
9141var IndexedObject = __webpack_require__(77);
9142
9143var nativeAssign = Object.assign;
9144var defineProperty = Object.defineProperty;
9145
9146// `Object.assign` method
9147// https://tc39.github.io/ecma262/#sec-object.assign
9148module.exports = !nativeAssign || fails(function () {
9149  // should have correct order of operations (Edge bug)
9150  if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {
9151    enumerable: true,
9152    get: function () {
9153      defineProperty(this, 'b', {
9154        value: 3,
9155        enumerable: false
9156      });
9157    }
9158  }), { b: 2 })).b !== 1) return true;
9159  // should work with symbols and should have deterministic property order (V8 bug)
9160  var A = {};
9161  var B = {};
9162  // eslint-disable-next-line no-undef
9163  var symbol = Symbol();
9164  var alphabet = 'abcdefghijklmnopqrst';
9165  A[symbol] = 7;
9166  alphabet.split('').forEach(function (chr) { B[chr] = chr; });
9167  return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;
9168}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
9169  var T = toObject(target);
9170  var argumentsLength = arguments.length;
9171  var index = 1;
9172  var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
9173  var propertyIsEnumerable = propertyIsEnumerableModule.f;
9174  while (argumentsLength > index) {
9175    var S = IndexedObject(arguments[index++]);
9176    var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);
9177    var length = keys.length;
9178    var j = 0;
9179    var key;
9180    while (length > j) {
9181      key = keys[j++];
9182      if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];
9183    }
9184  } return T;
9185} : nativeAssign;
9186
9187
9188/***/ }),
9189
9190/***/ 776:
9191/***/ (function(module, exports, __webpack_require__) {
9192
9193"use strict";
9194
9195// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js
9196var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1
9197var base = 36;
9198var tMin = 1;
9199var tMax = 26;
vendor: 4,859 bytes, lines 9200-9350
9200var skew = 38;
9201var damp = 700;
9202var initialBias = 72;
9203var initialN = 128; // 0x80
9204var delimiter = '-'; // '\x2D'
9205var regexNonASCII = /[^\0-\u007E]/; // non-ASCII chars
9206var regexSeparators = /[.\u3002\uFF0E\uFF61]/g; // RFC 3490 separators
9207var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';
9208var baseMinusTMin = base - tMin;
9209var floor = Math.floor;
9210var stringFromCharCode = String.fromCharCode;
9211
9212/**
9213 * Creates an array containing the numeric code points of each Unicode
9214 * character in the string. While JavaScript uses UCS-2 internally,
9215 * this function will convert a pair of surrogate halves (each of which
9216 * UCS-2 exposes as separate characters) into a single code point,
9217 * matching UTF-16.
9218 */
9219var ucs2decode = function (string) {
9220  var output = [];
9221  var counter = 0;
9222  var length = string.length;
9223  while (counter < length) {
9224    var value = string.charCodeAt(counter++);
9225    if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
9226      // It's a high surrogate, and there is a next character.
9227      var extra = string.charCodeAt(counter++);
9228      if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.
9229        output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
9230      } else {
9231        // It's an unmatched surrogate; only append this code unit, in case the
9232        // next code unit is the high surrogate of a surrogate pair.
9233        output.push(value);
9234        counter--;
9235      }
9236    } else {
9237      output.push(value);
9238    }
9239  }
9240  return output;
9241};
9242
9243/**
9244 * Converts a digit/integer into a basic code point.
9245 */
9246var digitToBasic = function (digit) {
9247  //  0..25 map to ASCII a..z or A..Z
9248  // 26..35 map to ASCII 0..9
9249  return digit + 22 + 75 * (digit < 26);
9250};
9251
9252/**
9253 * Bias adaptation function as per section 3.4 of RFC 3492.
9254 * https://tools.ietf.org/html/rfc3492#section-3.4
9255 */
9256var adapt = function (delta, numPoints, firstTime) {
9257  var k = 0;
9258  delta = firstTime ? floor(delta / damp) : delta >> 1;
9259  delta += floor(delta / numPoints);
9260  for (; delta > baseMinusTMin * tMax >> 1; k += base) {
9261    delta = floor(delta / baseMinusTMin);
9262  }
9263  return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));
9264};
9265
9266/**
9267 * Converts a string of Unicode symbols (e.g. a domain name label) to a
9268 * Punycode string of ASCII-only symbols.
9269 */
9270// eslint-disable-next-line  max-statements
9271var encode = function (input) {
9272  var output = [];
9273
9274  // Convert the input in UCS-2 to an array of Unicode code points.
9275  input = ucs2decode(input);
9276
9277  // Cache the length.
9278  var inputLength = input.length;
9279
9280  // Initialize the state.
9281  var n = initialN;
9282  var delta = 0;
9283  var bias = initialBias;
9284  var i, currentValue;
9285
9286  // Handle the basic code points.
9287  for (i = 0; i < input.length; i++) {
9288    currentValue = input[i];
9289    if (currentValue < 0x80) {
9290      output.push(stringFromCharCode(currentValue));
9291    }
9292  }
9293
9294  var basicLength = output.length; // number of basic code points.
9295  var handledCPCount = basicLength; // number of code points that have been handled;
9296
9297  // Finish the basic string with a delimiter unless it's empty.
9298  if (basicLength) {
9299    output.push(delimiter);
9300  }
9301
9302  // Main encoding loop:
9303  while (handledCPCount < inputLength) {
9304    // All non-basic code points < n have been handled already. Find the next larger one:
9305    var m = maxInt;
9306    for (i = 0; i < input.length; i++) {
9307      currentValue = input[i];
9308      if (currentValue >= n && currentValue < m) {
9309        m = currentValue;
9310      }
9311    }
9312
9313    // Increase `delta` enough to advance the decoder's <n,i> state to <m,0>, but guard against overflow.
9314    var handledCPCountPlusOne = handledCPCount + 1;
9315    if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {
9316      throw RangeError(OVERFLOW_ERROR);
9317    }
9318
9319    delta += (m - n) * handledCPCountPlusOne;
9320    n = m;
9321
9322    for (i = 0; i < input.length; i++) {
9323      currentValue = input[i];
9324      if (currentValue < n && ++delta > maxInt) {
9325        throw RangeError(OVERFLOW_ERROR);
9326      }
9327      if (currentValue == n) {
9328        // Represent delta as a generalized variable-length integer.
9329        var q = delta;
9330        for (var k = base; /* no condition */; k += base) {
9331          var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);
9332          if (q < t) break;
9333          var qMinusT = q - t;
9334          var baseMinusT = base - t;
9335          output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT)));
9336          q = floor(qMinusT / baseMinusT);
9337        }
9338
9339        output.push(stringFromCharCode(digitToBasic(q)));
9340        bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);
9341        delta = 0;
9342        ++handledCPCount;
9343      }
9344    }
9345
9346    ++delta;
9347    ++n;
9348  }
9349  return output.join('');
9350};
vendor: 2,087 bytes, lines 9351-9406
9351
9352module.exports = function (input) {
9353  var encoded = [];
9354  var labels = input.toLowerCase().replace(regexSeparators, '\u002E').split('.');
9355  var i, label;
9356  for (i = 0; i < labels.length; i++) {
9357    label = labels[i];
9358    encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label);
9359  }
9360  return encoded.join('.');
9361};
9362
9363
9364/***/ }),
9365
9366/***/ 777:
9367/***/ (function(module, exports, __webpack_require__) {
9368
9369"use strict";
9370
9371// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
9372__webpack_require__(230);
9373var $ = __webpack_require__(8);
9374var getBuiltIn = __webpack_require__(50);
9375var USE_NATIVE_URL = __webpack_require__(267);
9376var redefine = __webpack_require__(41);
9377var redefineAll = __webpack_require__(262);
9378var setToStringTag = __webpack_require__(102);
9379var createIteratorConstructor = __webpack_require__(259);
9380var InternalStateModule = __webpack_require__(64);
9381var anInstance = __webpack_require__(231);
9382var hasOwn = __webpack_require__(15);
9383var bind = __webpack_require__(80);
9384var classof = __webpack_require__(156);
9385var anObject = __webpack_require__(13);
9386var isObject = __webpack_require__(17);
9387var create = __webpack_require__(123);
9388var createPropertyDescriptor = __webpack_require__(55);
9389var getIterator = __webpack_require__(778);
9390var getIteratorMethod = __webpack_require__(195);
9391var wellKnownSymbol = __webpack_require__(11);
9392
9393var $fetch = getBuiltIn('fetch');
9394var Headers = getBuiltIn('Headers');
9395var ITERATOR = wellKnownSymbol('iterator');
9396var URL_SEARCH_PARAMS = 'URLSearchParams';
9397var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';
9398var setInternalState = InternalStateModule.set;
9399var getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);
9400var getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);
9401
9402var plus = /\+/g;
9403var sequences = Array(4);
9404
9405var percentSequence = function (bytes) {
9406  return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\da-f]{2}){' + bytes + '}
vendor: 11,339 bytes, lines 9406-9750
9406)', 'gi'));
9407};
9408
9409var percentDecode = function (sequence) {
9410  try {
9411    return decodeURIComponent(sequence);
9412  } catch (error) {
9413    return sequence;
9414  }
9415};
9416
9417var deserialize = function (it) {
9418  var result = it.replace(plus, ' ');
9419  var bytes = 4;
9420  try {
9421    return decodeURIComponent(result);
9422  } catch (error) {
9423    while (bytes) {
9424      result = result.replace(percentSequence(bytes--), percentDecode);
9425    }
9426    return result;
9427  }
9428};
9429
9430var find = /[!'()~]|%20/g;
9431
9432var replace = {
9433  '!': '%21',
9434  "'": '%27',
9435  '(': '%28',
9436  ')': '%29',
9437  '~': '%7E',
9438  '%20': '+'
9439};
9440
9441var replacer = function (match) {
9442  return replace[match];
9443};
9444
9445var serialize = function (it) {
9446  return encodeURIComponent(it).replace(find, replacer);
9447};
9448
9449var parseSearchParams = function (result, query) {
9450  if (query) {
9451    var attributes = query.split('&');
9452    var index = 0;
9453    var attribute, entry;
9454    while (index < attributes.length) {
9455      attribute = attributes[index++];
9456      if (attribute.length) {
9457        entry = attribute.split('=');
9458        result.push({
9459          key: deserialize(entry.shift()),
9460          value: deserialize(entry.join('='))
9461        });
9462      }
9463    }
9464  }
9465};
9466
9467var updateSearchParams = function (query) {
9468  this.entries.length = 0;
9469  parseSearchParams(this.entries, query);
9470};
9471
9472var validateArgumentsLength = function (passed, required) {
9473  if (passed < required) throw TypeError('Not enough arguments');
9474};
9475
9476var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {
9477  setInternalState(this, {
9478    type: URL_SEARCH_PARAMS_ITERATOR,
9479    iterator: getIterator(getInternalParamsState(params).entries),
9480    kind: kind
9481  });
9482}, 'Iterator', function next() {
9483  var state = getInternalIteratorState(this);
9484  var kind = state.kind;
9485  var step = state.iterator.next();
9486  var entry = step.value;
9487  if (!step.done) {
9488    step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];
9489  } return step;
9490});
9491
9492// `URLSearchParams` constructor
9493// https://url.spec.whatwg.org/#interface-urlsearchparams
9494var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
9495  anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS);
9496  var init = arguments.length > 0 ? arguments[0] : undefined;
9497  var that = this;
9498  var entries = [];
9499  var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;
9500
9501  setInternalState(that, {
9502    type: URL_SEARCH_PARAMS,
9503    entries: entries,
9504    updateURL: function () { /* empty */ },
9505    updateSearchParams: updateSearchParams
9506  });
9507
9508  if (init !== undefined) {
9509    if (isObject(init)) {
9510      iteratorMethod = getIteratorMethod(init);
9511      if (typeof iteratorMethod === 'function') {
9512        iterator = iteratorMethod.call(init);
9513        next = iterator.next;
9514        while (!(step = next.call(iterator)).done) {
9515          entryIterator = getIterator(anObject(step.value));
9516          entryNext = entryIterator.next;
9517          if (
9518            (first = entryNext.call(entryIterator)).done ||
9519            (second = entryNext.call(entryIterator)).done ||
9520            !entryNext.call(entryIterator).done
9521          ) throw TypeError('Expected sequence with length 2');
9522          entries.push({ key: first.value + '', value: second.value + '' });
9523        }
9524      } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' });
9525    } else {
9526      parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + '');
9527    }
9528  }
9529};
9530
9531var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;
9532
9533redefineAll(URLSearchParamsPrototype, {
9534  // `URLSearchParams.prototype.appent` method
9535  // https://url.spec.whatwg.org/#dom-urlsearchparams-append
9536  append: function append(name, value) {
9537    validateArgumentsLength(arguments.length, 2);
9538    var state = getInternalParamsState(this);
9539    state.entries.push({ key: name + '', value: value + '' });
9540    state.updateURL();
9541  },
9542  // `URLSearchParams.prototype.delete` method
9543  // https://url.spec.whatwg.org/#dom-urlsearchparams-delete
9544  'delete': function (name) {
9545    validateArgumentsLength(arguments.length, 1);
9546    var state = getInternalParamsState(this);
9547    var entries = state.entries;
9548    var key = name + '';
9549    var index = 0;
9550    while (index < entries.length) {
9551      if (entries[index].key === key) entries.splice(index, 1);
9552      else index++;
9553    }
9554    state.updateURL();
9555  },
9556  // `URLSearchParams.prototype.get` method
9557  // https://url.spec.whatwg.org/#dom-urlsearchparams-get
9558  get: function get(name) {
9559    validateArgumentsLength(arguments.length, 1);
9560    var entries = getInternalParamsState(this).entries;
9561    var key = name + '';
9562    var index = 0;
9563    for (; index < entries.length; index++) {
9564      if (entries[index].key === key) return entries[index].value;
9565    }
9566    return null;
9567  },
9568  // `URLSearchParams.prototype.getAll` method
9569  // https://url.spec.whatwg.org/#dom-urlsearchparams-getall
9570  getAll: function getAll(name) {
9571    validateArgumentsLength(arguments.length, 1);
9572    var entries = getInternalParamsState(this).entries;
9573    var key = name + '';
9574    var result = [];
9575    var index = 0;
9576    for (; index < entries.length; index++) {
9577      if (entries[index].key === key) result.push(entries[index].value);
9578    }
9579    return result;
9580  },
9581  // `URLSearchParams.prototype.has` method
9582  // https://url.spec.whatwg.org/#dom-urlsearchparams-has
9583  has: function has(name) {
9584    validateArgumentsLength(arguments.length, 1);
9585    var entries = getInternalParamsState(this).entries;
9586    var key = name + '';
9587    var index = 0;
9588    while (index < entries.length) {
9589      if (entries[index++].key === key) return true;
9590    }
9591    return false;
9592  },
9593  // `URLSearchParams.prototype.set` method
9594  // https://url.spec.whatwg.org/#dom-urlsearchparams-set
9595  set: function set(name, value) {
9596    validateArgumentsLength(arguments.length, 1);
9597    var state = getInternalParamsState(this);
9598    var entries = state.entries;
9599    var found = false;
9600    var key = name + '';
9601    var val = value + '';
9602    var index = 0;
9603    var entry;
9604    for (; index < entries.length; index++) {
9605      entry = entries[index];
9606      if (entry.key === key) {
9607        if (found) entries.splice(index--, 1);
9608        else {
9609          found = true;
9610          entry.value = val;
9611        }
9612      }
9613    }
9614    if (!found) entries.push({ key: key, value: val });
9615    state.updateURL();
9616  },
9617  // `URLSearchParams.prototype.sort` method
9618  // https://url.spec.whatwg.org/#dom-urlsearchparams-sort
9619  sort: function sort() {
9620    var state = getInternalParamsState(this);
9621    var entries = state.entries;
9622    // Array#sort is not stable in some engines
9623    var slice = entries.slice();
9624    var entry, entriesIndex, sliceIndex;
9625    entries.length = 0;
9626    for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) {
9627      entry = slice[sliceIndex];
9628      for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) {
9629        if (entries[entriesIndex].key > entry.key) {
9630          entries.splice(entriesIndex, 0, entry);
9631          break;
9632        }
9633      }
9634      if (entriesIndex === sliceIndex) entries.push(entry);
9635    }
9636    state.updateURL();
9637  },
9638  // `URLSearchParams.prototype.forEach` method
9639  forEach: function forEach(callback /* , thisArg */) {
9640    var entries = getInternalParamsState(this).entries;
9641    var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3);
9642    var index = 0;
9643    var entry;
9644    while (index < entries.length) {
9645      entry = entries[index++];
9646      boundFunction(entry.value, entry.key, this);
9647    }
9648  },
9649  // `URLSearchParams.prototype.keys` method
9650  keys: function keys() {
9651    return new URLSearchParamsIterator(this, 'keys');
9652  },
9653  // `URLSearchParams.prototype.values` method
9654  values: function values() {
9655    return new URLSearchParamsIterator(this, 'values');
9656  },
9657  // `URLSearchParams.prototype.entries` method
9658  entries: function entries() {
9659    return new URLSearchParamsIterator(this, 'entries');
9660  }
9661}, { enumerable: true });
9662
9663// `URLSearchParams.prototype[@@iterator]` method
9664redefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries);
9665
9666// `URLSearchParams.prototype.toString` method
9667// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior
9668redefine(URLSearchParamsPrototype, 'toString', function toString() {
9669  var entries = getInternalParamsState(this).entries;
9670  var result = [];
9671  var index = 0;
9672  var entry;
9673  while (index < entries.length) {
9674    entry = entries[index++];
9675    result.push(serialize(entry.key) + '=' + serialize(entry.value));
9676  } return result.join('&');
9677}, { enumerable: true });
9678
9679setToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);
9680
9681$({ global: true, forced: !USE_NATIVE_URL }, {
9682  URLSearchParams: URLSearchParamsConstructor
9683});
9684
9685// Wrap `fetch` for correct work with polyfilled `URLSearchParams`
9686// https://github.com/zloirock/core-js/issues/674
9687if (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') {
9688  $({ global: true, enumerable: true, forced: true }, {
9689    fetch: function fetch(input /* , init */) {
9690      var args = [input];
9691      var init, body, headers;
9692      if (arguments.length > 1) {
9693        init = arguments[1];
9694        if (isObject(init)) {
9695          body = init.body;
9696          if (classof(body) === URL_SEARCH_PARAMS) {
9697            headers = init.headers ? new Headers(init.headers) : new Headers();
9698            if (!headers.has('content-type')) {
9699              headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');
9700            }
9701            init = create(init, {
9702              body: createPropertyDescriptor(0, String(body)),
9703              headers: createPropertyDescriptor(0, headers)
9704            });
9705          }
9706        }
9707        args.push(init);
9708      } return $fetch.apply(this, args);
9709    }
9710  });
9711}
9712
9713module.exports = {
9714  URLSearchParams: URLSearchParamsConstructor,
9715  getState: getInternalParamsState
9716};
9717
9718
9719/***/ }),
9720
9721/***/ 778:
9722/***/ (function(module, exports, __webpack_require__) {
9723
9724var anObject = __webpack_require__(13);
9725var getIteratorMethod = __webpack_require__(195);
9726
9727module.exports = function (it) {
9728  var iteratorMethod = getIteratorMethod(it);
9729  if (typeof iteratorMethod != 'function') {
9730    throw TypeError(String(it) + ' is not iterable');
9731  } return anObject(iteratorMethod.call(it));
9732};
9733
9734
9735/***/ }),
9736
9737/***/ 779:
9738/***/ (function(module, __webpack_exports__, __webpack_require__) {
9739
9740"use strict";
9741__webpack_require__.r(__webpack_exports__);
9742/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "init", function() { return init; });
9743/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "sectionHeaderInit", function() { return sectionHeaderInit; });
9744/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "tableHeaderInit", function() { return tableHeaderInit; });
9745__webpack_require__(780);
9746
9747__webpack_require__(781);
9748
9749__webpack_require__(782);
9750
9751function init() {
9752  var element = document.getElementById('sticky-waypoint');
9753
9754  if (element) {
9755    // eslint-disable-next-line no-undef
9756    new Waypoint({
9757      element: element,
9758      handler: function handler(direction) {
9759        if (direction === 'down') this.element.classList.add('sticky');
9760        if (direction === 'up') this.element.classList.remove('sticky');
9761      }
9762    });
9763  }
9764}
9765/* eslint-disable no-undef */
9766
9767function sectionHeaderInit() {
9768  var element = document.getElementById('sticky-site-header');
9769
9770  if (element) {
9771    new Waypoint.Sticky({
9772      element: $('#sticky-site-header')[0],
9773      stuckClass: 'sticky'
9774    });
9775  }
9776}
9777/* eslint-disable no-undef */
9778
9779function tableHeaderInit() {
9780  var element = document.getElementById('sticky-site-header-table');
9781
9782  if (element) {
9783    new Waypoint.Sticky({
9784      element: $('#sticky-site-header-table')[0],
9785      stuckClass: 'sticky'
9786    });
9787  }
9788}
9789
9790/***/ }),
9791
9792/***/ 78:
9793/***/ (function(module, exports, __webpack_require__) {
9794
9795var isObject = __webpack_require__(17);
9796
9797// `ToPrimitive` abstract operation
9798// https://tc39.github.io/ecma262/#sec-toprimitive
9799// instead of the ES6 spec version, we didn't implement @@toPrimitive case
9800// and the second argument - flag - preferred type is a string
9801module.exports = function (input, PREFERRED_STRING) {
9802  if (!isObject(input)) return input;
9803  var fn, val;
9804  if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
9805  if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
9806  if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
9807  throw TypeError("Can't convert object to primitive value");
9808};
9809
9810
9811/***/ }),
9812
9813/***/ 780:
9814/***/ (function(module, exports) {
9815
9816/*!
9817Waypoints - 4.0.1
9818Copyright © 2011-2016 Caleb Troughton
9819Licensed under the MIT license.
9820https://github.com/imakewebthings/waypoints/blob/master/licenses.txt
9821*/
9822(function() {
9823  'use strict'
9824
9825  var keyCounter = 0
9826  var allWaypoints = {}
9827
9828  /* http://imakewebthings.com/waypoints/api/waypoint */
9829  function Waypoint(options) {
9830    if (!options) {
9831      throw new Error('No options passed to Waypoint constructor')
9832    }
9833    if (!options.element) {
9834      throw new Error('No element option passed to Waypoint constructor')
9835    }
9836    if (!options.handler) {
9837      throw new Error('No handler option passed to Waypoint constructor')
9838    }
9839
9840    this.key = 'waypoint-' + keyCounter
9841    this.options = Waypoint.Adapter.extend({}, Waypoint.defaults, options)
9842    this.element = this.options.element
9843    this.adapter = new Waypoint.Adapter(this.element)
9844    this.callback = options.handler
9845    this.axis = this.options.horizontal ? 'horizontal' : 'vertical'
9846    this.enabled = this.options.enabled
9847    this.triggerPoint = null
9848    this.group = Waypoint.Group.findOrCreate({
9849      name: this.options.group,
9850      axis: this.axis
9851    })
9852    this.context = Waypoint.Context.findOrCreateByElement(this.options.context)
9853
9854    if (Waypoint.offsetAliases[this.options.offset]) {
9855      this.options.offset = Waypoint.offsetAliases[this.options.offset]
9856    }
9857    this.group.add(this)
9858    this.context.add(this)
9859    allWaypoints[this.key] = this
9860    keyCounter += 1
9861  }
9862
9863  /* Private */
9864  Waypoint.prototype.queueTrigger = function(direction) {
9865    this.group.queueTrigger(this, direction)
9866  }
9867
9868  /* Private */
9869  Waypoint.prototype.trigger = function(args) {
9870    if (!this.enabled) {
9871      return
9872    }
9873    if (this.callback) {
9874      this.callback.apply(this, args)
9875    }
9876  }
9877
9878  /* Public */
9879  /* http://imakewebthings.com/waypoints/api/destroy */
9880  Waypoint.prototype.destroy = function() {
9881    this.context.remove(this)
9882    this.group.remove(this)
9883    delete allWaypoints[this.key]
9884  }
9885
9886  /* Public */
9887  /* http://imakewebthings.com/waypoints/api/disable */
9888  Waypoint.prototype.disable = function() {
9889    this.enabled = false
9890    return this
9891  }
9892
9893  /* Public */
9894  /* http://imakewebthings.com/waypoints/api/enable */
9895  Waypoint.prototype.enable = function() {
9896    this.context.refresh()
9897    this.enabled = true
9898    return this
9899  }
9900
9901  /* Public */
9902  /* http://imakewebthings.com/waypoints/api/next */
9903  Waypoint.prototype.next = function() {
9904    return this.group.next(this)
9905  }
9906
9907  /* Public */
9908  /* http://imakewebthings.com/waypoints/api/previous */
9909  Waypoint.prototype.previous = function() {
9910    return this.group.previous(this)
9911  }
9912
9913  /* Private */
9914  Waypoint.invokeAll = function(method) {
9915    var allWaypointsArray = []
9916    for (var waypointKey in allWaypoints) {
9917      allWaypointsArray.push(allWaypoints[waypointKey])
9918    }
9919    for (var i = 0, end = allWaypointsArray.length; i < end; i++) {
9920      allWaypointsArray[i][method]()
9921    }
9922  }
9923
9924  /* Public */
9925  /* http://imakewebthings.com/waypoints/api/destroy-all */
9926  Waypoint.destroyAll = function() {
9927    Waypoint.invokeAll('destroy')
9928  }
9929
9930  /* Public */
9931  /* http://imakewebthings.com/waypoints/api/disable-all */
9932  Waypoint.disableAll = function() {
9933    Waypoint.invokeAll('disable')
9934  }
9935
9936  /* Public */
9937  /* http://imakewebthings.com/waypoints/api/enable-all */
9938  Waypoint.enableAll = function() {
9939    Waypoint.Context.refreshAll()
9940    for (var waypointKey in allWaypoints) {
9941      allWaypoints[waypointKey].enabled = true
9942    }
9943    return this
9944  }
9945
9946  /* Public */
9947  /* http://imakewebthings.com/waypoints/api/refresh-all */
9948  Waypoint.refreshAll = function() {
9949    Waypoint.Context.refreshAll()
9950  }
9951
9952  /* Public */
9953  /* http://imakewebthings.com/waypoints/api/viewport-height */
9954  Waypoint.viewportHeight = function() {
9955    return window.innerHeight || document.documentElement.clientHeight
9956  }
9957
9958  /* Public */
9959  /* http://imakewebthings.com/waypoints/api/viewport-width */
9960  Waypoint.viewportWidth = function() {
9961    return document.documentElement.clientWidth
9962  }
9963
9964  Waypoint.adapters = []
9965
9966  Waypoint.defaults = {
9967    context: window,
9968    continuous: true,
9969    enabled: true,
9970    group: 'default',
9971    horizontal: false,
9972    offset: 0
9973  }
9974
9975  Waypoint.offsetAliases = {
9976    'bottom-in-view': function() {
9977      return this.context.innerHeight() - this.adapter.outerHeight()
9978    },
9979    'right-in-view': function() {
9980      return this.context.innerWidth() - this.adapter.outerWidth()
9981    }
9982  }
9983
9984  window.Waypoint = Waypoint
9985}())
9986;(function() {
9987  'use strict'
9988
9989  function requestAnimationFrameShim(callback) {
9990    window.setTimeout(callback, 1000 / 60)
9991  }
9992
9993  var keyCounter = 0
9994  var contexts = {}
9995  var Waypoint = window.Waypoint
9996  var oldWindowLoad = window.onload
9997
9998  /* http://imakewebthings.com/waypoints/api/context */
9999  function Context(element) {
10000    this.element = element
10001    this.Adapter = Waypoint.Adapter
10002    this.adapter = new this.Adapter(element)
10003    this.key = 'waypoint-context-' + keyCounter
10004    this.didScroll = false
10005    this.didResize = false
10006    this.oldScroll = {
10007      x: this.adapter.scrollLeft(),
10008      y: this.adapter.scrollTop()
10009    }
10010    this.waypoints = {
10011      vertical: {},
10012      horizontal: {}
10013    }
10014
10015    element.waypointContextKey = this.key
10016    contexts[element.waypointContextKey] = this
10017    keyCounter += 1
10018    if (!Waypoint.windowContext) {
10019      Waypoint.windowContext = true
10020      Waypoint.windowContext = new Context(window)
10021    }
10022
10023    this.createThrottledScrollHandler()
10024    this.createThrottledResizeHandler()
10025  }
10026
10027  /* Private */
10028  Context.prototype.add = function(waypoint) {
10029    var axis = waypoint.options.horizontal ? 'horizontal' : 'vertical'
10030    this.waypoints[axis][waypoint.key] = waypoint
10031    this.refresh()
10032  }
10033
10034  /* Private */
10035  Context.prototype.checkEmpty = function() {
10036    var horizontalEmpty = this.Adapter.isEmptyObject(this.waypoints.horizontal)
10037    var verticalEmpty = this.Adapter.isEmptyObject(this.waypoints.vertical)
10038    var isWindow = this.element == this.element.window
10039    if (horizontalEmpty && verticalEmpty && !isWindow) {
10040      this.adapter.off('.waypoints')
10041      delete contexts[this.key]
10042    }
10043  }
10044
10045  /* Private */
10046  Context.prototype.createThrottledResizeHandler = function() {
10047    var self = this
10048
10049    function resizeHandler() {
10050      self.handleResize()
10051      self.didResize = false
10052    }
10053
10054    this.adapter.on('resize.waypoints', function() {
10055      if (!self.didResize) {
10056        self.didResize = true
10057        Waypoint.requestAnimationFrame(resizeHandler)
10058      }
10059    })
10060  }
10061
10062  /* Private */
10063  Context.prototype.createThrottledScrollHandler = function() {
10064    var self = this
10065    function scrollHandler() {
10066      self.handleScroll()
10067      self.didScroll = false
10068    }
10069
10070    this.adapter.on('scroll.waypoints', function() {
10071      if (!self.didScroll || Waypoint.isTouch) {
10072        self.didScroll = true
10073        Waypoint.requestAnimationFrame(scrollHandler)
10074      }
10075    })
10076  }
10077
10078  /* Private */
10079  Context.prototype.handleResize = function() {
10080    Waypoint.Context.refreshAll()
10081  }
10082
10083  /* Private */
10084  Context.prototype.handleScroll = function() {
10085    var triggeredGroups = {}
10086    var axes = {
10087      horizontal: {
10088        newScroll: this.adapter.scrollLeft(),
10089        oldScroll: this.oldScroll.x,
10090        forward: 'right',
10091        backward: 'left'
10092      },
10093      vertical: {
10094        newScroll: this.adapter.scrollTop(),
10095        oldScroll: this.oldScroll.y,
10096        forward: 'down',
10097        backward: 'up'
10098      }
10099    }
10100
10101    for (var axisKey in axes) {
10102      var axis = axes[axisKey]
10103      var isForward = axis.newScroll > axis.oldScroll
10104      var direction = isForward ? axis.forward : axis.backward
10105
10106      for (var waypointKey in this.waypoints[axisKey]) {
10107        var waypoint = this.waypoints[axisKey][waypointKey]
10108        if (waypoint.triggerPoint === null) {
10109          continue
10110        }
10111        var wasBeforeTriggerPoint = axis.oldScroll < waypoint.triggerPoint
10112        var nowAfterTriggerPoint = axis.newScroll >= waypoint.triggerPoint
10113        var crossedForward = wasBeforeTriggerPoint && nowAfterTriggerPoint
10114        var crossedBackward = !wasBeforeTriggerPoint && !nowAfterTriggerPoint
10115        if (crossedForward || crossedBackward) {
10116          waypoint.queueTrigger(direction)
10117          triggeredGroups[waypoint.group.id] = waypoint.group
10118        }
10119      }
10120    }
10121
10122    for (var groupKey in triggeredGroups) {
10123      triggeredGroups[groupKey].flushTriggers()
10124    }
10125
10126    this.oldScroll = {
10127      x: axes.horizontal.newScroll,
10128      y: axes.vertical.newScroll
10129    }
10130  }
10131
10132  /* Private */
10133  Context.prototype.innerHeight = function() {
10134    /*eslint-disable eqeqeq */
10135    if (this.element == this.element.window) {
10136      return Waypoint.viewportHeight()
10137    }
10138    /*eslint-enable eqeqeq */
10139    return this.adapter.innerHeight()
10140  }
10141
10142  /* Private */
10143  Context.prototype.remove = function(waypoint) {
10144    delete this.waypoints[waypoint.axis][waypoint.key]
10145    this.checkEmpty()
10146  }
10147
10148  /* Private */
10149  Context.prototype.innerWidth = function() {
10150    /*eslint-disable eqeqeq */
10151    if (this.element == this.element.window) {
10152      return Waypoint.viewportWidth()
10153    }
10154    /*eslint-enable eqeqeq */
10155    return this.adapter.innerWidth()
10156  }
10157
10158  /* Public */
10159  /* http://imakewebthings.com/waypoints/api/context-destroy */
10160  Context.prototype.destroy = function() {
10161    var allWaypoints = []
10162    for (var axis in this.waypoints) {
10163      for (var waypointKey in this.waypoints[axis]) {
10164        allWaypoints.push(this.waypoints[axis][waypointKey])
10165      }
10166    }
10167    for (var i = 0, end = allWaypoints.length; i < end; i++) {
10168      allWaypoints[i].destroy()
10169    }
10170  }
10171
10172  /* Public */
10173  /* http://imakewebthings.com/waypoints/api/context-refresh */
10174  Context.prototype.refresh = function() {
10175    /*eslint-disable eqeqeq */
10176    var isWindow = this.element == this.element.window
10177    /*eslint-enable eqeqeq */
10178    var contextOffset = isWindow ? undefined : this.adapter.offset()
10179    var triggeredGroups = {}
10180    var axes
10181
10182    this.handleScroll()
10183    axes = {
10184      horizontal: {
10185        contextOffset: isWindow ? 0 : contextOffset.left,
10186        contextScroll: isWindow ? 0 : this.oldScroll.x,
10187        contextDimension: this.innerWidth(),
10188        oldScroll: this.oldScroll.x,
10189        forward: 'right',
10190        backward: 'left',
10191        offsetProp: 'left'
10192      },
10193      vertical: {
10194        contextOffset: isWindow ? 0 : contextOffset.top,
10195        contextScroll: isWindow ? 0 : this.oldScroll.y,
10196        contextDimension: this.innerHeight(),
10197        oldScroll: this.oldScroll.y,
10198        forward: 'down',
10199        backward: 'up',
10200        offsetProp: 'top'
10201      }
10202    }
10203
10204    for (var axisKey in axes) {
10205      var axis = axes[axisKey]
10206      for (var waypointKey in this.waypoints[axisKey]) {
10207        var waypoint = this.waypoints[axisKey][waypointKey]
10208        var adjustment = waypoint.options.offset
10209        var oldTriggerPoint = waypoint.triggerPoint
10210        var elementOffset = 0
10211        var freshWaypoint = oldTriggerPoint == null
10212        var contextModifier, wasBeforeScroll, nowAfterScroll
10213        var triggeredBackward, triggeredForward
10214
10215        if (waypoint.element !== waypoint.element.window) {
10216          elementOffset = waypoint.adapter.offset()[axis.offsetProp]
10217        }
10218
10219        if (typeof adjustment === 'function') {
10220          adjustment = adjustment.apply(waypoint)
10221        }
10222        else if (typeof adjustment === 'string') {
10223          adjustment = parseFloat(adjustment)
10224          if (waypoint.options.offset.indexOf('%') > - 1) {
10225            adjustment = Math.ceil(axis.contextDimension * adjustment / 100)
10226          }
10227        }
10228
10229        contextModifier = axis.contextScroll - axis.contextOffset
10230        waypoint.triggerPoint = Math.floor(elementOffset + contextModifier - adjustment)
10231        wasBeforeScroll = oldTriggerPoint < axis.oldScroll
10232        nowAfterScroll = waypoint.triggerPoint >= axis.oldScroll
10233        triggeredBackward = wasBeforeScroll && nowAfterScroll
10234        triggeredForward = !wasBeforeScroll && !nowAfterScroll
10235
10236        if (!freshWaypoint && triggeredBackward) {
10237          waypoint.queueTrigger(axis.backward)
10238          triggeredGroups[waypoint.group.id] = waypoint.group
10239        }
10240        else if (!freshWaypoint && triggeredForward) {
10241          waypoint.queueTrigger(axis.forward)
10242          triggeredGroups[waypoint.group.id] = waypoint.group
10243        }
10244        else if (freshWaypoint && axis.oldScroll >= waypoint.triggerPoint) {
10245          waypoint.queueTrigger(axis.forward)
10246          triggeredGroups[waypoint.group.id] = waypoint.group
10247        }
10248      }
10249    }
10250
10251    Waypoint.requestAnimationFrame(function() {
10252      for (var groupKey in triggeredGroups) {
10253        triggeredGroups[groupKey].flushTriggers()
10254      }
10255    })
10256
10257    return this
10258  }
10259
10260  /* Private */
10261  Context.findOrCreateByElement = function(element) {
10262    return Context.findByElement(element) || new Context(element)
10263  }
10264
10265  /* Private */
10266  Context.refreshAll = function() {
10267    for (var contextId in contexts) {
10268      contexts[contextId].refresh()
10269    }
10270  }
10271
10272  /* Public */
10273  /* http://imakewebthings.com/waypoints/api/context-find-by-element */
10274  Context.findByElement = function(element) {
10275    return contexts[element.waypointContextKey]
10276  }
10277
10278  window.onload = function() {
10279    if (oldWindowLoad) {
10280      oldWindowLoad()
10281    }
10282    Context.refreshAll()
10283  }
10284
10285
10286  Waypoint.requestAnimationFrame = function(callback) {
10287    var requestFn = window.requestAnimationFrame ||
10288      window.mozRequestAnimationFrame ||
10289      window.webkitRequestAnimationFrame ||
10290      requestAnimationFrameShim
10291    requestFn.call(window, callback)
10292  }
10293  Waypoint.Context = Context
10294}())
10295;(function() {
10296  'use strict'
10297
10298  function byTriggerPoint(a, b) {
10299    return a.triggerPoint - b.triggerPoint
10300  }
10301
10302  function byReverseTriggerPoint(a, b) {
10303    return b.triggerPoint - a.triggerPoint
10304  }
10305
10306  var groups = {
10307    vertical: {},
10308    horizontal: {}
10309  }
10310  var Waypoint = window.Waypoint
10311
10312  /* http://imakewebthings.com/waypoints/api/group */
10313  function Group(options) {
10314    this.name = options.name
10315    this.axis = options.axis
10316    this.id = this.name + '-' + this.axis
10317    this.waypoints = []
10318    this.clearTriggerQueues()
10319    groups[this.axis][this.name] = this
10320  }
10321
10322  /* Private */
10323  Group.prototype.add = function(waypoint) {
10324    this.waypoints.push(waypoint)
10325  }
10326
10327  /* Private */
10328  Group.prototype.clearTriggerQueues = function() {
10329    this.triggerQueues = {
10330      up: [],
10331      down: [],
10332      left: [],
10333      right: []
10334    }
10335  }
10336
10337  /* Private */
10338  Group.prototype.flushTriggers = function() {
10339    for (var direction in this.triggerQueues) {
10340      var waypoints = this.triggerQueues[direction]
10341      var reverse = direction === 'up' || direction === 'left'
10342      waypoints.sort(reverse ? byReverseTriggerPoint : byTriggerPoint)
10343      for (var i = 0, end = waypoints.length; i < end; i += 1) {
10344        var waypoint = waypoints[i]
10345        if (waypoint.options.continuous || i === waypoints.length - 1) {
10346          waypoint.trigger([direction])
10347        }
10348      }
10349    }
10350    this.clearTriggerQueues()
10351  }
10352
10353  /* Private */
10354  Group.prototype.next = function(waypoint) {
10355    this.waypoints.sort(byTriggerPoint)
10356    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
10357    var isLast = index === this.waypoints.length - 1
10358    return isLast ? null : this.waypoints[index + 1]
10359  }
10360
10361  /* Private */
10362  Group.prototype.previous = function(waypoint) {
10363    this.waypoints.sort(byTriggerPoint)
10364    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
10365    return index ? this.waypoints[index - 1] : null
10366  }
10367
10368  /* Private */
10369  Group.prototype.queueTrigger = function(waypoint, direction) {
10370    this.triggerQueues[direction].push(waypoint)
10371  }
10372
10373  /* Private */
10374  Group.prototype.remove = function(waypoint) {
10375    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
10376    if (index > -1) {
10377      this.waypoints.splice(index, 1)
10378    }
10379  }
10380
10381  /* Public */
10382  /* http://imakewebthings.com/waypoints/api/first */
10383  Group.prototype.first = function() {
10384    return this.waypoints[0]
10385  }
10386
10387  /* Public */
10388  /* http://imakewebthings.com/waypoints/api/last */
10389  Group.prototype.last = function() {
10390    return this.waypoints[this.waypoints.length - 1]
10391  }
10392
10393  /* Private */
10394  Group.findOrCreate = function(options) {
10395    return groups[options.axis][options.name] || new Group(options)
10396  }
10397
10398  Waypoint.Group = Group
10399}())
10400;(function() {
10401  'use strict'
10402
10403  var Waypoint = window.Waypoint
10404
10405  function isWindow(element) {
10406    return element === element.window
10407  }
10408
10409  function getWindow(element) {
10410    if (isWindow(element)) {
10411      return element
10412    }
10413    return element.defaultView
10414  }
10415
10416  function NoFrameworkAdapter(element) {
10417    this.element = element
10418    this.handlers = {}
10419  }
10420
10421  NoFrameworkAdapter.prototype.innerHeight = function() {
10422    var isWin = isWindow(this.element)
10423    return isWin ? this.element.innerHeight : this.element.clientHeight
10424  }
10425
10426  NoFrameworkAdapter.prototype.innerWidth = function() {
10427    var isWin = isWindow(this.element)
10428    return isWin ? this.element.innerWidth : this.element.clientWidth
10429  }
10430
10431  NoFrameworkAdapter.prototype.off = function(event, handler) {
10432    function removeListeners(element, listeners, handler) {
10433      for (var i = 0, end = listeners.length - 1; i < end; i++) {
10434        var listener = listeners[i]
10435        if (!handler || handler === listener) {
10436          element.removeEventListener(listener)
10437        }
10438      }
10439    }
10440
10441    var eventParts = event.split('.')
10442    var eventType = eventParts[0]
10443    var namespace = eventParts[1]
10444    var element = this.element
10445
10446    if (namespace && this.handlers[namespace] && eventType) {
10447      removeListeners(element, this.handlers[namespace][eventType], handler)
10448      this.handlers[namespace][eventType] = []
10449    }
10450    else if (eventType) {
10451      for (var ns in this.handlers) {
10452        removeListeners(element, this.handlers[ns][eventType] || [], handler)
10453        this.handlers[ns][eventType] = []
10454      }
10455    }
10456    else if (namespace && this.handlers[namespace]) {
10457      for (var type in this.handlers[namespace]) {
10458        removeListeners(element, this.handlers[namespace][type], handler)
10459      }
10460      this.handlers[namespace] = {}
10461    }
10462  }
10463
10464  /* Adapted from jQuery 1.x offset() */
10465  NoFrameworkAdapter.prototype.offset = function() {
10466    if (!this.element.ownerDocument) {
10467      return null
10468    }
10469
10470    var documentElement = this.element.ownerDocument.documentElement
10471    var win = getWindow(this.element.ownerDocument)
10472    var rect = {
10473      top: 0,
10474      left: 0
10475    }
10476
10477    if (this.element.getBoundingClientRect) {
10478      rect = this.element.getBoundingClientRect()
10479    }
10480
10481    return {
10482      top: rect.top + win.pageYOffset - documentElement.clientTop,
10483      left: rect.left + win.pageXOffset - documentElement.clientLeft
10484    }
10485  }
10486
10487  NoFrameworkAdapter.prototype.on = function(event, handler) {
10488    var eventParts = event.split('.')
10489    var eventType = eventParts[0]
10490    var namespace = eventParts[1] || '__default'
10491    var nsHandlers = this.handlers[namespace] = this.handlers[namespace] || {}
10492    var nsTypeList = nsHandlers[eventType] = nsHandlers[eventType] || []
10493
10494    nsTypeList.push(handler)
10495    this.element.addEventListener(eventType, handler)
10496  }
10497
10498  NoFrameworkAdapter.prototype.outerHeight = function(includeMargin) {
10499    var height = this.innerHeight()
10500    var computedStyle
10501
10502    if (includeMargin && !isWindow(this.element)) {
10503      computedStyle = window.getComputedStyle(this.element)
10504      height += parseInt(computedStyle.marginTop, 10)
10505      height += parseInt(computedStyle.marginBottom, 10)
10506    }
10507
10508    return height
10509  }
10510
10511  NoFrameworkAdapter.prototype.outerWidth = function(includeMargin) {
10512    var width = this.innerWidth()
10513    var computedStyle
10514
10515    if (includeMargin && !isWindow(this.element)) {
10516      computedStyle = window.getComputedStyle(this.element)
10517      width += parseInt(computedStyle.marginLeft, 10)
10518      width += parseInt(computedStyle.marginRight, 10)
10519    }
10520
10521    return width
10522  }
10523
10524  NoFrameworkAdapter.prototype.scrollLeft = function() {
10525    var win = getWindow(this.element)
10526    return win ? win.pageXOffset : this.element.scrollLeft
10527  }
10528
10529  NoFrameworkAdapter.prototype.scrollTop = function() {
10530    var win = getWindow(this.element)
10531    return win ? win.pageYOffset : this.element.scrollTop
10532  }
10533
10534  NoFrameworkAdapter.extend = function() {
10535    var args = Array.prototype.slice.call(arguments)
10536
10537    function merge(target, obj) {
10538      if (typeof target === 'object' && typeof obj === 'object') {
10539        for (var key in obj) {
10540          if (obj.hasOwnProperty(key)) {
10541            target[key] = obj[key]
10542          }
10543        }
10544      }
10545
10546      return target
10547    }
10548
10549    for (var i = 1, end = args.length; i < end; i++) {
10550      merge(args[0], args[i])
10551    }
10552    return args[0]
10553  }
10554
10555  NoFrameworkAdapter.inArray = function(element, array, i) {
10556    return array == null ? -1 : array.indexOf(element, i)
10557  }
10558
10559  NoFrameworkAdapter.isEmptyObject = function(obj) {
10560    /* eslint no-unused-vars: 0 */
10561    for (var name in obj) {
10562      return false
10563    }
10564    return true
10565  }
10566
10567  Waypoint.adapters.push({
10568    name: 'noframework',
10569    Adapter: NoFrameworkAdapter
10570  })
10571  Waypoint.Adapter = NoFrameworkAdapter
10572}())
10573;
10574
10575/***/ }),
10576
10577/***/ 781:
10578/***/ (function(module, exports) {
10579
10580/*!
10581Waypoints - 4.0.1
10582Copyright © 2011-2016 Caleb Troughton
10583Licensed under the MIT license.
10584https://github.com/imakewebthings/waypoints/blob/master/licenses.txt
10585*/
10586(function() {
10587  'use strict'
10588
10589  var keyCounter = 0
10590  var allWaypoints = {}
10591
10592  /* http://imakewebthings.com/waypoints/api/waypoint */
10593  function Waypoint(options) {
10594    if (!options) {
10595      throw new Error('No options passed to Waypoint constructor')
10596    }
10597    if (!options.element) {
10598      throw new Error('No element option passed to Waypoint constructor')
10599    }
10600    if (!options.handler) {
10601      throw new Error('No handler option passed to Waypoint constructor')
10602    }
10603
10604    this.key = 'waypoint-' + keyCounter
10605    this.options = Waypoint.Adapter.extend({}, Waypoint.defaults, options)
10606    this.element = this.options.element
10607    this.adapter = new Waypoint.Adapter(this.element)
10608    this.callback = options.handler
10609    this.axis = this.options.horizontal ? 'horizontal' : 'vertical'
10610    this.enabled = this.options.enabled
10611    this.triggerPoint = null
10612    this.group = Waypoint.Group.findOrCreate({
10613      name: this.options.group,
10614      axis: this.axis
10615    })
10616    this.context = Waypoint.Context.findOrCreateByElement(this.options.context)
10617
10618    if (Waypoint.offsetAliases[this.options.offset]) {
10619      this.options.offset = Waypoint.offsetAliases[this.options.offset]
10620    }
10621    this.group.add(this)
10622    this.context.add(this)
10623    allWaypoints[this.key] = this
10624    keyCounter += 1
10625  }
10626
10627  /* Private */
10628  Waypoint.prototype.queueTrigger = function(direction) {
10629    this.group.queueTrigger(this, direction)
10630  }
10631
10632  /* Private */
10633  Waypoint.prototype.trigger = function(args) {
10634    if (!this.enabled) {
10635      return
10636    }
10637    if (this.callback) {
10638      this.callback.apply(this, args)
10639    }
10640  }
10641
10642  /* Public */
10643  /* http://imakewebthings.com/waypoints/api/destroy */
10644  Waypoint.prototype.destroy = function() {
10645    this.context.remove(this)
10646    this.group.remove(this)
10647    delete allWaypoints[this.key]
10648  }
10649
10650  /* Public */
10651  /* http://imakewebthings.com/waypoints/api/disable */
10652  Waypoint.prototype.disable = function() {
10653    this.enabled = false
10654    return this
10655  }
10656
10657  /* Public */
10658  /* http://imakewebthings.com/waypoints/api/enable */
10659  Waypoint.prototype.enable = function() {
10660    this.context.refresh()
10661    this.enabled = true
10662    return this
10663  }
10664
10665  /* Public */
10666  /* http://imakewebthings.com/waypoints/api/next */
10667  Waypoint.prototype.next = function() {
10668    return this.group.next(this)
10669  }
10670
10671  /* Public */
10672  /* http://imakewebthings.com/waypoints/api/previous */
10673  Waypoint.prototype.previous = function() {
10674    return this.group.previous(this)
10675  }
10676
10677  /* Private */
10678  Waypoint.invokeAll = function(method) {
10679    var allWaypointsArray = []
10680    for (var waypointKey in allWaypoints) {
10681      allWaypointsArray.push(allWaypoints[waypointKey])
10682    }
10683    for (var i = 0, end = allWaypointsArray.length; i < end; i++) {
10684      allWaypointsArray[i][method]()
10685    }
10686  }
10687
10688  /* Public */
10689  /* http://imakewebthings.com/waypoints/api/destroy-all */
10690  Waypoint.destroyAll = function() {
10691    Waypoint.invokeAll('destroy')
10692  }
10693
10694  /* Public */
10695  /* http://imakewebthings.com/waypoints/api/disable-all */
10696  Waypoint.disableAll = function() {
10697    Waypoint.invokeAll('disable')
10698  }
10699
10700  /* Public */
10701  /* http://imakewebthings.com/waypoints/api/enable-all */
10702  Waypoint.enableAll = function() {
10703    Waypoint.Context.refreshAll()
10704    for (var waypointKey in allWaypoints) {
10705      allWaypoints[waypointKey].enabled = true
10706    }
10707    return this
10708  }
10709
10710  /* Public */
10711  /* http://imakewebthings.com/waypoints/api/refresh-all */
10712  Waypoint.refreshAll = function() {
10713    Waypoint.Context.refreshAll()
10714  }
10715
10716  /* Public */
10717  /* http://imakewebthings.com/waypoints/api/viewport-height */
10718  Waypoint.viewportHeight = function() {
10719    return window.innerHeight || document.documentElement.clientHeight
10720  }
10721
10722  /* Public */
10723  /* http://imakewebthings.com/waypoints/api/viewport-width */
10724  Waypoint.viewportWidth = function() {
10725    return document.documentElement.clientWidth
10726  }
10727
10728  Waypoint.adapters = []
10729
10730  Waypoint.defaults = {
10731    context: window,
10732    continuous: true,
10733    enabled: true,
10734    group: 'default',
10735    horizontal: false,
10736    offset: 0
10737  }
10738
10739  Waypoint.offsetAliases = {
10740    'bottom-in-view': function() {
10741      return this.context.innerHeight() - this.adapter.outerHeight()
10742    },
10743    'right-in-view': function() {
10744      return this.context.innerWidth() - this.adapter.outerWidth()
10745    }
10746  }
10747
10748  window.Waypoint = Waypoint
10749}())
10750;(function() {
10751  'use strict'
10752
10753  function requestAnimationFrameShim(callback) {
10754    window.setTimeout(callback, 1000 / 60)
10755  }
10756
10757  var keyCounter = 0
10758  var contexts = {}
10759  var Waypoint = window.Waypoint
10760  var oldWindowLoad = window.onload
10761
10762  /* http://imakewebthings.com/waypoints/api/context */
10763  function Context(element) {
10764    this.element = element
10765    this.Adapter = Waypoint.Adapter
10766    this.adapter = new this.Adapter(element)
10767    this.key = 'waypoint-context-' + keyCounter
10768    this.didScroll = false
10769    this.didResize = false
10770    this.oldScroll = {
10771      x: this.adapter.scrollLeft(),
10772      y: this.adapter.scrollTop()
10773    }
10774    this.waypoints = {
10775      vertical: {},
10776      horizontal: {}
10777    }
10778
10779    element.waypointContextKey = this.key
10780    contexts[element.waypointContextKey] = this
10781    keyCounter += 1
10782    if (!Waypoint.windowContext) {
10783      Waypoint.windowContext = true
10784      Waypoint.windowContext = new Context(window)
10785    }
10786
10787    this.createThrottledScrollHandler()
10788    this.createThrottledResizeHandler()
10789  }
10790
10791  /* Private */
10792  Context.prototype.add = function(waypoint) {
10793    var axis = waypoint.options.horizontal ? 'horizontal' : 'vertical'
10794    this.waypoints[axis][waypoint.key] = waypoint
10795    this.refresh()
10796  }
10797
10798  /* Private */
10799  Context.prototype.checkEmpty = function() {
10800    var horizontalEmpty = this.Adapter.isEmptyObject(this.waypoints.horizontal)
10801    var verticalEmpty = this.Adapter.isEmptyObject(this.waypoints.vertical)
10802    var isWindow = this.element == this.element.window
10803    if (horizontalEmpty && verticalEmpty && !isWindow) {
10804      this.adapter.off('.waypoints')
10805      delete contexts[this.key]
10806    }
10807  }
10808
10809  /* Private */
10810  Context.prototype.createThrottledResizeHandler = function() {
10811    var self = this
10812
10813    function resizeHandler() {
10814      self.handleResize()
10815      self.didResize = false
10816    }
10817
10818    this.adapter.on('resize.waypoints', function() {
10819      if (!self.didResize) {
10820        self.didResize = true
10821        Waypoint.requestAnimationFrame(resizeHandler)
10822      }
10823    })
10824  }
10825
10826  /* Private */
10827  Context.prototype.createThrottledScrollHandler = function() {
10828    var self = this
10829    function scrollHandler() {
10830      self.handleScroll()
10831      self.didScroll = false
10832    }
10833
10834    this.adapter.on('scroll.waypoints', function() {
10835      if (!self.didScroll || Waypoint.isTouch) {
10836        self.didScroll = true
10837        Waypoint.requestAnimationFrame(scrollHandler)
10838      }
10839    })
10840  }
10841
10842  /* Private */
10843  Context.prototype.handleResize = function() {
10844    Waypoint.Context.refreshAll()
10845  }
10846
10847  /* Private */
10848  Context.prototype.handleScroll = function() {
10849    var triggeredGroups = {}
10850    var axes = {
10851      horizontal: {
10852        newScroll: this.adapter.scrollLeft(),
10853        oldScroll: this.oldScroll.x,
10854        forward: 'right',
10855        backward: 'left'
10856      },
10857      vertical: {
10858        newScroll: this.adapter.scrollTop(),
10859        oldScroll: this.oldScroll.y,
10860        forward: 'down',
10861        backward: 'up'
10862      }
10863    }
10864
10865    for (var axisKey in axes) {
10866      var axis = axes[axisKey]
10867      var isForward = axis.newScroll > axis.oldScroll
10868      var direction = isForward ? axis.forward : axis.backward
10869
10870      for (var waypointKey in this.waypoints[axisKey]) {
10871        var waypoint = this.waypoints[axisKey][waypointKey]
10872        if (waypoint.triggerPoint === null) {
10873          continue
10874        }
10875        var wasBeforeTriggerPoint = axis.oldScroll < waypoint.triggerPoint
10876        var nowAfterTriggerPoint = axis.newScroll >= waypoint.triggerPoint
10877        var crossedForward = wasBeforeTriggerPoint && nowAfterTriggerPoint
10878        var crossedBackward = !wasBeforeTriggerPoint && !nowAfterTriggerPoint
10879        if (crossedForward || crossedBackward) {
10880          waypoint.queueTrigger(direction)
10881          triggeredGroups[waypoint.group.id] = waypoint.group
10882        }
10883      }
10884    }
10885
10886    for (var groupKey in triggeredGroups) {
10887      triggeredGroups[groupKey].flushTriggers()
10888    }
10889
10890    this.oldScroll = {
10891      x: axes.horizontal.newScroll,
10892      y: axes.vertical.newScroll
10893    }
10894  }
10895
10896  /* Private */
10897  Context.prototype.innerHeight = function() {
10898    /*eslint-disable eqeqeq */
10899    if (this.element == this.element.window) {
10900      return Waypoint.viewportHeight()
10901    }
10902    /*eslint-enable eqeqeq */
10903    return this.adapter.innerHeight()
10904  }
10905
10906  /* Private */
10907  Context.prototype.remove = function(waypoint) {
10908    delete this.waypoints[waypoint.axis][waypoint.key]
10909    this.checkEmpty()
10910  }
10911
10912  /* Private */
10913  Context.prototype.innerWidth = function() {
10914    /*eslint-disable eqeqeq */
10915    if (this.element == this.element.window) {
10916      return Waypoint.viewportWidth()
10917    }
10918    /*eslint-enable eqeqeq */
10919    return this.adapter.innerWidth()
10920  }
10921
10922  /* Public */
10923  /* http://imakewebthings.com/waypoints/api/context-destroy */
10924  Context.prototype.destroy = function() {
10925    var allWaypoints = []
10926    for (var axis in this.waypoints) {
10927      for (var waypointKey in this.waypoints[axis]) {
10928        allWaypoints.push(this.waypoints[axis][waypointKey])
10929      }
10930    }
10931    for (var i = 0, end = allWaypoints.length; i < end; i++) {
10932      allWaypoints[i].destroy()
10933    }
10934  }
10935
10936  /* Public */
10937  /* http://imakewebthings.com/waypoints/api/context-refresh */
10938  Context.prototype.refresh = function() {
10939    /*eslint-disable eqeqeq */
10940    var isWindow = this.element == this.element.window
10941    /*eslint-enable eqeqeq */
10942    var contextOffset = isWindow ? undefined : this.adapter.offset()
10943    var triggeredGroups = {}
10944    var axes
10945
10946    this.handleScroll()
10947    axes = {
10948      horizontal: {
10949        contextOffset: isWindow ? 0 : contextOffset.left,
10950        contextScroll: isWindow ? 0 : this.oldScroll.x,
10951        contextDimension: this.innerWidth(),
10952        oldScroll: this.oldScroll.x,
10953        forward: 'right',
10954        backward: 'left',
10955        offsetProp: 'left'
10956      },
10957      vertical: {
10958        contextOffset: isWindow ? 0 : contextOffset.top,
10959        contextScroll: isWindow ? 0 : this.oldScroll.y,
10960        contextDimension: this.innerHeight(),
10961        oldScroll: this.oldScroll.y,
10962        forward: 'down',
10963        backward: 'up',
10964        offsetProp: 'top'
10965      }
10966    }
10967
10968    for (var axisKey in axes) {
10969      var axis = axes[axisKey]
10970      for (var waypointKey in this.waypoints[axisKey]) {
10971        var waypoint = this.waypoints[axisKey][waypointKey]
10972        var adjustment = waypoint.options.offset
10973        var oldTriggerPoint = waypoint.triggerPoint
10974        var elementOffset = 0
10975        var freshWaypoint = oldTriggerPoint == null
10976        var contextModifier, wasBeforeScroll, nowAfterScroll
10977        var triggeredBackward, triggeredForward
10978
10979        if (waypoint.element !== waypoint.element.window) {
10980          elementOffset = waypoint.adapter.offset()[axis.offsetProp]
10981        }
10982
10983        if (typeof adjustment === 'function') {
10984          adjustment = adjustment.apply(waypoint)
10985        }
10986        else if (typeof adjustment === 'string') {
10987          adjustment = parseFloat(adjustment)
10988          if (waypoint.options.offset.indexOf('%') > - 1) {
10989            adjustment = Math.ceil(axis.contextDimension * adjustment / 100)
10990          }
10991        }
10992
10993        contextModifier = axis.contextScroll - axis.contextOffset
10994        waypoint.triggerPoint = Math.floor(elementOffset + contextModifier - adjustment)
10995        wasBeforeScroll = oldTriggerPoint < axis.oldScroll
10996        nowAfterScroll = waypoint.triggerPoint >= axis.oldScroll
10997        triggeredBackward = wasBeforeScroll && nowAfterScroll
10998        triggeredForward = !wasBeforeScroll && !nowAfterScroll
10999
11000        if (!freshWaypoint && triggeredBackward) {
11001          waypoint.queueTrigger(axis.backward)
11002          triggeredGroups[waypoint.group.id] = waypoint.group
11003        }
11004        else if (!freshWaypoint && triggeredForward) {
11005          waypoint.queueTrigger(axis.forward)
11006          triggeredGroups[waypoint.group.id] = waypoint.group
11007        }
11008        else if (freshWaypoint && axis.oldScroll >= waypoint.triggerPoint) {
11009          waypoint.queueTrigger(axis.forward)
11010          triggeredGroups[waypoint.group.id] = waypoint.group
11011        }
11012      }
11013    }
11014
11015    Waypoint.requestAnimationFrame(function() {
11016      for (var groupKey in triggeredGroups) {
11017        triggeredGroups[groupKey].flushTriggers()
11018      }
11019    })
11020
11021    return this
11022  }
11023
11024  /* Private */
11025  Context.findOrCreateByElement = function(element) {
11026    return Context.findByElement(element) || new Context(element)
11027  }
11028
11029  /* Private */
11030  Context.refreshAll = function() {
11031    for (var contextId in contexts) {
11032      contexts[contextId].refresh()
11033    }
11034  }
11035
11036  /* Public */
11037  /* http://imakewebthings.com/waypoints/api/context-find-by-element */
11038  Context.findByElement = function(element) {
11039    return contexts[element.waypointContextKey]
11040  }
11041
11042  window.onload = function() {
11043    if (oldWindowLoad) {
11044      oldWindowLoad()
11045    }
11046    Context.refreshAll()
11047  }
11048
11049
11050  Waypoint.requestAnimationFrame = function(callback) {
11051    var requestFn = window.requestAnimationFrame ||
11052      window.mozRequestAnimationFrame ||
11053      window.webkitRequestAnimationFrame ||
11054      requestAnimationFrameShim
11055    requestFn.call(window, callback)
11056  }
11057  Waypoint.Context = Context
11058}())
11059;(function() {
11060  'use strict'
11061
11062  function byTriggerPoint(a, b) {
11063    return a.triggerPoint - b.triggerPoint
11064  }
11065
11066  function byReverseTriggerPoint(a, b) {
11067    return b.triggerPoint - a.triggerPoint
11068  }
11069
11070  var groups = {
11071    vertical: {},
11072    horizontal: {}
11073  }
11074  var Waypoint = window.Waypoint
11075
11076  /* http://imakewebthings.com/waypoints/api/group */
11077  function Group(options) {
11078    this.name = options.name
11079    this.axis = options.axis
11080    this.id = this.name + '-' + this.axis
11081    this.waypoints = []
11082    this.clearTriggerQueues()
11083    groups[this.axis][this.name] = this
11084  }
11085
11086  /* Private */
11087  Group.prototype.add = function(waypoint) {
11088    this.waypoints.push(waypoint)
11089  }
11090
11091  /* Private */
11092  Group.prototype.clearTriggerQueues = function() {
11093    this.triggerQueues = {
11094      up: [],
11095      down: [],
11096      left: [],
11097      right: []
11098    }
11099  }
11100
11101  /* Private */
11102  Group.prototype.flushTriggers = function() {
11103    for (var direction in this.triggerQueues) {
11104      var waypoints = this.triggerQueues[direction]
11105      var reverse = direction === 'up' || direction === 'left'
11106      waypoints.sort(reverse ? byReverseTriggerPoint : byTriggerPoint)
11107      for (var i = 0, end = waypoints.length; i < end; i += 1) {
11108        var waypoint = waypoints[i]
11109        if (waypoint.options.continuous || i === waypoints.length - 1) {
11110          waypoint.trigger([direction])
11111        }
11112      }
11113    }
11114    this.clearTriggerQueues()
11115  }
11116
11117  /* Private */
11118  Group.prototype.next = function(waypoint) {
11119    this.waypoints.sort(byTriggerPoint)
11120    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
11121    var isLast = index === this.waypoints.length - 1
11122    return isLast ? null : this.waypoints[index + 1]
11123  }
11124
11125  /* Private */
11126  Group.prototype.previous = function(waypoint) {
11127    this.waypoints.sort(byTriggerPoint)
11128    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
11129    return index ? this.waypoints[index - 1] : null
11130  }
11131
11132  /* Private */
11133  Group.prototype.queueTrigger = function(waypoint, direction) {
11134    this.triggerQueues[direction].push(waypoint)
11135  }
11136
11137  /* Private */
11138  Group.prototype.remove = function(waypoint) {
11139    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
11140    if (index > -1) {
11141      this.waypoints.splice(index, 1)
11142    }
11143  }
11144
11145  /* Public */
11146  /* http://imakewebthings.com/waypoints/api/first */
11147  Group.prototype.first = function() {
11148    return this.waypoints[0]
11149  }
11150
11151  /* Public */
11152  /* http://imakewebthings.com/waypoints/api/last */
11153  Group.prototype.last = function() {
11154    return this.waypoints[this.waypoints.length - 1]
11155  }
11156
11157  /* Private */
11158  Group.findOrCreate = function(options) {
11159    return groups[options.axis][options.name] || new Group(options)
11160  }
11161
11162  Waypoint.Group = Group
11163}())
11164;(function() {
11165  'use strict'
11166
11167  var $ = window.jQuery
11168  var Waypoint = window.Waypoint
11169
11170  function JQueryAdapter(element) {
11171    this.$element = $(element)
11172  }
11173
11174  $.each([
11175    'innerHeight',
11176    'innerWidth',
11177    'off',
11178    'offset',
11179    'on',
11180    'outerHeight',
11181    'outerWidth',
11182    'scrollLeft',
11183    'scrollTop'
11184  ], function(i, method) {
11185    JQueryAdapter.prototype[method] = function() {
11186      var args = Array.prototype.slice.call(arguments)
11187      return this.$element[method].apply(this.$element, args)
11188    }
11189  })
11190
11191  $.each([
11192    'extend',
11193    'inArray',
11194    'isEmptyObject'
11195  ], function(i, method) {
11196    JQueryAdapter[method] = $[method]
11197  })
11198
11199  Waypoint.adapters.push({
11200    name: 'jquery',
11201    Adapter: JQueryAdapter
11202  })
11203  Waypoint.Adapter = JQueryAdapter
11204}())
11205;(function() {
11206  'use strict'
11207
11208  var Waypoint = window.Waypoint
11209
11210  function createExtension(framework) {
11211    return function() {
11212      var waypoints = []
11213      var overrides = arguments[0]
11214
11215      if (framework.isFunction(arguments[0])) {
11216        overrides = framework.extend({}, arguments[1])
11217        overrides.handler = arguments[0]
11218      }
11219
11220      this.each(function() {
11221        var options = framework.extend({}, overrides, {
11222          element: this
11223        })
11224        if (typeof options.context === 'string') {
11225          options.context = framework(this).closest(options.context)[0]
11226        }
11227        waypoints.push(new Waypoint(options))
11228      })
11229
11230      return waypoints
11231    }
11232  }
11233
11234  if (window.jQuery) {
11235    window.jQuery.fn.waypoint = createExtension(window.jQuery)
11236  }
11237  if (window.Zepto) {
11238    window.Zepto.fn.waypoint = createExtension(window.Zepto)
11239  }
11240}())
11241;
11242
11243/***/ }),
11244
11245/***/ 782:
11246/***/ (function(module, exports) {
11247
11248/*!
11249Waypoints Sticky Element Shortcut - 4.0.1
11250Copyright © 2011-2016 Caleb Troughton
11251Licensed under the MIT license.
11252https://github.com/imakewebthings/waypoints/blob/master/licenses.txt
11253*/
11254(function() {
11255  'use strict'
11256
11257  var $ = window.jQuery
11258  var Waypoint = window.Waypoint
11259
11260  /* http://imakewebthings.com/waypoints/shortcuts/sticky-elements */
11261  function Sticky(options) {
11262    this.options = $.extend({}, Waypoint.defaults, Sticky.defaults, options)
11263    this.element = this.options.element
11264    this.$element = $(this.element)
11265    this.createWrapper()
11266    this.createWaypoint()
11267  }
11268
11269  /* Private */
11270  Sticky.prototype.createWaypoint = function() {
11271    var originalHandler = this.options.handler
11272
11273    this.waypoint = new Waypoint($.extend({}, this.options, {
11274      element: this.wrapper,
11275      handler: $.proxy(function(direction) {
11276        var shouldBeStuck = this.options.direction.indexOf(direction) > -1
11277        var wrapperHeight = shouldBeStuck ? this.$element.outerHeight(true) : ''
11278
11279        this.$wrapper.height(wrapperHeight)
11280        this.$element.toggleClass(this.options.stuckClass, shouldBeStuck)
11281
11282        if (originalHandler) {
11283          originalHandler.call(this, direction)
11284        }
11285      }, this)
11286    }))
11287  }
11288
11289  /* Private */
11290  Sticky.prototype.createWrapper = function() {
11291    if (this.options.wrapper) {
11292      this.$element.wrap(this.options.wrapper)
11293    }
11294    this.$wrapper = this.$element.parent()
11295    this.wrapper = this.$wrapper[0]
11296  }
11297
11298  /* Public */
11299  Sticky.prototype.destroy = function() {
11300    if (this.$element.parent()[0] === this.wrapper) {
11301      this.waypoint.destroy()
11302      this.$element.removeClass(this.options.stuckClass)
11303      if (this.options.wrapper) {
11304        this.$element.unwrap()
11305      }
11306    }
11307  }
11308
11309  Sticky.defaults = {
11310    wrapper: '<div class="sticky-wrapper" />',
11311    stuckClass: 'stuck',
11312    direction: 'down right'
11313  }
11314
11315  Waypoint.Sticky = Sticky
11316}())
11317;
11318
11319/***/ }),
11320
11321/***/ 783:
11322/***/ (function(module, __webpack_exports__, __webpack_require__) {
11323
11324"use strict";
11325__webpack_require__.r(__webpack_exports__);
11326/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "preventScrollRestore", function() { return preventScrollRestore; });
11327/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "scrollToElement", function() { return scrollToElement; });
11328/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "scrollToElement2", function() { return scrollToElement2; });
11329/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "scrollToSelector", function() { return scrollToSelector; });
11330/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "scrollToTop", function() { return scrollToTop; });
11331function preventScrollRestore() {
11332  if ('scrollRestoration' in window.history) {
11333    window.history.scrollRestoration = 'manual';
11334  }
11335}
11336function scrollToElement(element) {
11337  var spacing = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 170;
11338  var direction = arguments.length > 2 ? arguments[2] : undefined;
11339  var elementScrollOffset = element.getBoundingClientRect().top;
11340  var currentScroll = document.scrollingElement.scrollTop;
11341  var pinnedElem = document.querySelector('.pinned');
11342  var scrollAmount = elementScrollOffset - spacing;
11343  if (pinnedElem) scrollAmount -= pinnedElem.offsetHeight;
11344  if (scrollAmount === 0) return;
11345  if (direction === 'down' && scrollAmount < 0) return;
11346  if (direction === 'up' && scrollAmount > 0) return;
11347  window.scrollTo({
11348    top: currentScroll + scrollAmount,
11349    behavior: 'smooth'
11350  });
11351}
11352function scrollToElement2(elem) {
11353  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
11354  var _options$direction = options.direction,
11355      direction = _options$direction === void 0 ? 'up' : _options$direction,
11356      _options$behavior = options.behavior,
11357      behavior = _options$behavior === void 0 ? 'smooth' : _options$behavior,
11358      _options$spacing = options.spacing,
11359      spacing = _options$spacing === void 0 ? 30 : _options$spacing;
11360  var elemScrollOffset = elem.getBoundingClientRect().top,
11361      currentScroll = document.scrollingElement.scrollTop;
11362  var scrollAmount = elemScrollOffset - spacing;
11363  if (scrollAmount === 0) return;
11364  if (direction === 'down' && scrollAmount < 0) return;
11365  if (direction === 'up' && scrollAmount > 0) return;
11366  window.scrollTo({
11367    left: 0,
11368    top: currentScroll + scrollAmount,
11369    behavior: behavior
11370  });
11371}
11372function scrollToSelector(selector) {
11373  var behavior = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'smooth';
11374  var elem = null;
11375  if (selector && selector !== '#') elem = document.querySelector(selector);
11376  if (!elem) return;
11377  elem.scrollIntoView({
11378    behavior: behavior,
11379    block: 'start',
11380    inline: 'nearest'
11381  });
11382}
11383function scrollToTop() {
11384  window.scrollTo(0, 0);
11385}
11386
11387/***/ }),
11388
11389/***/ 784:
11390/***/ (function(module, __webpack_exports__, __webpack_require__) {
11391
11392"use strict";
11393__webpack_require__.r(__webpack_exports__);
11394/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isMobileDevice", function() { return isMobileDevice; });
11395/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isInterentExplorerDevice", function() { return isInterentExplorerDevice; });
11396/* harmony import */ var core_js_modules_es_regexp_exec__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(35);
11397/* harmony import */ var core_js_modules_es_regexp_exec__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec__WEBPACK_IMPORTED_MODULE_0__);
11398/* harmony import */ var core_js_modules_es_string_match__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(105);
11399/* harmony import */ var core_js_modules_es_string_match__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_match__WEBPACK_IMPORTED_MODULE_1__);
11400/* harmony import */ var _regex_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(58);
11401
11402
11403
11404var isMobileDevice = function isMobileDevice() {
11405  return window.navigator.userAgent.match(_regex_utils__WEBPACK_IMPORTED_MODULE_2__[/* MOBILE_BROWSER_REGEX */ "e"]);
11406};
11407var isInterentExplorerDevice = function isInterentExplorerDevice() {
11408  return window.navigator.userAgent.match(_regex_utils__WEBPACK_IMPORTED_MODULE_2__[/* IE_BROW
vendor: 4,788 bytes, lines 11408-11564
11408SER_REGEX */ "d"]);
11409};
11410
11411/***/ }),
11412
11413/***/ 79:
11414/***/ (function(module, exports) {
11415
11416module.exports = {};
11417
11418
11419/***/ }),
11420
11421/***/ 8:
11422/***/ (function(module, exports, __webpack_require__) {
11423
11424var global = __webpack_require__(12);
11425var getOwnPropertyDescriptor = __webpack_require__(47).f;
11426var createNonEnumerableProperty = __webpack_require__(28);
11427var redefine = __webpack_require__(41);
11428var setGlobal = __webpack_require__(98);
11429var copyConstructorProperties = __webpack_require__(177);
11430var isForced = __webpack_require__(180);
11431
11432/*
11433  options.target      - name of the target object
11434  options.global      - target is the global object
11435  options.stat        - export as static methods of target
11436  options.proto       - export as prototype methods of target
11437  options.real        - real prototype method for the `pure` version
11438  options.forced      - export even if the native feature is available
11439  options.bind        - bind methods to the target, required for the `pure` version
11440  options.wrap        - wrap constructors to preventing global pollution, required for the `pure` version
11441  options.unsafe      - use the simple assignment of property instead of delete + defineProperty
11442  options.sham        - add a flag to not completely full polyfills
11443  options.enumerable  - export as enumerable property
11444  options.noTargetGet - prevent calling a getter on target
11445*/
11446module.exports = function (options, source) {
11447  var TARGET = options.target;
11448  var GLOBAL = options.global;
11449  var STATIC = options.stat;
11450  var FORCED, target, key, targetProperty, sourceProperty, descriptor;
11451  if (GLOBAL) {
11452    target = global;
11453  } else if (STATIC) {
11454    target = global[TARGET] || setGlobal(TARGET, {});
11455  } else {
11456    target = (global[TARGET] || {}).prototype;
11457  }
11458  if (target) for (key in source) {
11459    sourceProperty = source[key];
11460    if (options.noTargetGet) {
11461      descriptor = getOwnPropertyDescriptor(target, key);
11462      targetProperty = descriptor && descriptor.value;
11463    } else targetProperty = target[key];
11464    FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
11465    // contained in target
11466    if (!FORCED && targetProperty !== undefined) {
11467      if (typeof sourceProperty === typeof targetProperty) continue;
11468      copyConstructorProperties(sourceProperty, targetProperty);
11469    }
11470    // add a flag to not completely full polyfills
11471    if (options.sham || (targetProperty && targetProperty.sham)) {
11472      createNonEnumerableProperty(sourceProperty, 'sham', true);
11473    }
11474    // extend global
11475    redefine(target, key, sourceProperty, options);
11476  }
11477};
11478
11479
11480/***/ }),
11481
11482/***/ 80:
11483/***/ (function(module, exports, __webpack_require__) {
11484
11485var aFunction = __webpack_require__(103);
11486
11487// optional / simple context binding
11488module.exports = function (fn, that, length) {
11489  aFunction(fn);
11490  if (that === undefined) return fn;
11491  switch (length) {
11492    case 0: return function () {
11493      return fn.call(that);
11494    };
11495    case 1: return function (a) {
11496      return fn.call(that, a);
11497    };
11498    case 2: return function (a, b) {
11499      return fn.call(that, a, b);
11500    };
11501    case 3: return function (a, b, c) {
11502      return fn.call(that, a, b, c);
11503    };
11504  }
11505  return function (/* ...args */) {
11506    return fn.apply(that, arguments);
11507  };
11508};
11509
11510
11511/***/ }),
11512
11513/***/ 81:
11514/***/ (function(module, exports, __webpack_require__) {
11515
11516"use strict";
11517
11518var toPrimitive = __webpack_require__(78);
11519var definePropertyModule = __webpack_require__(24);
11520var createPropertyDescriptor = __webpack_require__(55);
11521
11522module.exports = function (object, key, value) {
11523  var propertyKey = toPrimitive(key);
11524  if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
11525  else object[propertyKey] = value;
11526};
11527
11528
11529/***/ }),
11530
11531/***/ 82:
11532/***/ (function(module, exports, __webpack_require__) {
11533
11534"use strict";
11535
11536var fails = __webpack_require__(10);
11537
11538module.exports = function (METHOD_NAME, argument) {
11539  var method = [][METHOD_NAME];
11540  return !!method && fails(function () {
11541    // eslint-disable-next-line no-useless-call,no-throw-literal
11542    method.call(null, argument || function () { throw 1; }, 1);
11543  });
11544};
11545
11546
11547/***/ }),
11548
11549/***/ 83:
11550/***/ (function(module, exports, __webpack_require__) {
11551
11552"use strict";
11553
11554// TODO: Remove from `core-js@4` since it's moved to entry points
11555__webpack_require__(35);
11556var redefine = __webpack_require__(41);
11557var fails = __webpack_require__(10);
11558var wellKnownSymbol = __webpack_require__(11);
11559var regexpExec = __webpack_require__(66);
11560var createNonEnumerableProperty = __webpack_require__(28);
11561
11562var SPECIES = wellKnownSymbol('species');
11563
11564var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
vendor: 5,634 bytes, lines 11565-11743
11565  // #replace needs built-in support for named groups.
11566  // #match works fine because it just return the exec results, even if it has
11567  // a "grops" property.
11568  var re = /./;
11569  re.exec = function () {
11570    var result = [];
11571    result.groups = { a: '7' };
11572    return result;
11573  };
11574  return ''.replace(re, '$<a>') !== '7';
11575});
11576
11577// IE <= 11 replaces $0 with the whole match, as if it was $&
11578// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
11579var REPLACE_KEEPS_$0 = (function () {
11580  return 'a'.replace(/./, '$0') === '$0';
11581})();
11582
11583var REPLACE = wellKnownSymbol('replace');
11584// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
11585var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
11586  if (/./[REPLACE]) {
11587    return /./[REPLACE]('a', '$0') === '';
11588  }
11589  return false;
11590})();
11591
11592// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
11593// Weex JS has frozen built-in prototypes, so use try / catch wrapper
11594var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
11595  var re = /(?:)/;
11596  var originalExec = re.exec;
11597  re.exec = function () { return originalExec.apply(this, arguments); };
11598  var result = 'ab'.split(re);
11599  return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
11600});
11601
11602module.exports = function (KEY, length, exec, sham) {
11603  var SYMBOL = wellKnownSymbol(KEY);
11604
11605  var DELEGATES_TO_SYMBOL = !fails(function () {
11606    // String methods call symbol-named RegEp methods
11607    var O = {};
11608    O[SYMBOL] = function () { return 7; };
11609    return ''[KEY](O) != 7;
11610  });
11611
11612  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
11613    // Symbol-named RegExp methods call .exec
11614    var execCalled = false;
11615    var re = /a/;
11616
11617    if (KEY === 'split') {
11618      // We can't use real regex here since it causes deoptimization
11619      // and serious performance degradation in V8
11620      // https://github.com/zloirock/core-js/issues/306
11621      re = {};
11622      // RegExp[@@split] doesn't call the regex's exec method, but first creates
11623      // a new one. We need to return the patched regex when creating the new one.
11624      re.constructor = {};
11625      re.constructor[SPECIES] = function () { return re; };
11626      re.flags = '';
11627      re[SYMBOL] = /./[SYMBOL];
11628    }
11629
11630    re.exec = function () { execCalled = true; return null; };
11631
11632    re[SYMBOL]('');
11633    return !execCalled;
11634  });
11635
11636  if (
11637    !DELEGATES_TO_SYMBOL ||
11638    !DELEGATES_TO_EXEC ||
11639    (KEY === 'replace' && !(
11640      REPLACE_SUPPORTS_NAMED_GROUPS &&
11641      REPLACE_KEEPS_$0 &&
11642      !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
11643    )) ||
11644    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
11645  ) {
11646    var nativeRegExpMethod = /./[SYMBOL];
11647    var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
11648      if (regexp.exec === regexpExec) {
11649        if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
11650          // The native String method already delegates to @@method (this
11651          // polyfilled function), leasing to infinite recursion.
11652          // We avoid it by directly calling the native @@method method.
11653          return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
11654        }
11655        return { done: true, value: nativeMethod.call(str, regexp, arg2) };
11656      }
11657      return { done: false };
11658    }, {
11659      REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,
11660      REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
11661    });
11662    var stringMethod = methods[0];
11663    var regexMethod = methods[1];
11664
11665    redefine(String.prototype, KEY, stringMethod);
11666    redefine(RegExp.prototype, SYMBOL, length == 2
11667      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
11668      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
11669      ? function (string, arg) { return regexMethod.call(string, this, arg); }
11670      // 21.2.5.6 RegExp.prototype[@@match](string)
11671      // 21.2.5.9 RegExp.prototype[@@search](string)
11672      : function (string) { return regexMethod.call(string, this); }
11673    );
11674  }
11675
11676  if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
11677};
11678
11679
11680/***/ }),
11681
11682/***/ 84:
11683/***/ (function(module, exports, __webpack_require__) {
11684
11685var classof = __webpack_require__(40);
11686var regexpExec = __webpack_require__(66);
11687
11688// `RegExpExec` abstract operation
11689// https://tc39.github.io/ecma262/#sec-regexpexec
11690module.exports = function (R, S) {
11691  var exec = R.exec;
11692  if (typeof exec === 'function') {
11693    var result = exec.call(R, S);
11694    if (typeof result !== 'object') {
11695      throw TypeError('RegExp exec method returned something other than an Object or null');
11696    }
11697    return result;
11698  }
11699
11700  if (classof(R) !== 'RegExp') {
11701    throw TypeError('RegExp#exec called on incompatible receiver');
11702  }
11703
11704  return regexpExec.call(R, S);
11705};
11706
11707
11708
11709/***/ }),
11710
11711/***/ 98:
11712/***/ (function(module, exports, __webpack_require__) {
11713
11714var global = __webpack_require__(12);
11715var createNonEnumerableProperty = __webpack_require__(28);
11716
11717module.exports = function (key, value) {
11718  try {
11719    createNonEnumerableProperty(global, key, value);
11720  } catch (error) {
11721    global[key] = value;
11722  } return value;
11723};
11724
11725
11726/***/ }),
11727
11728/***/ 99:
11729/***/ (function(module, exports, __webpack_require__) {
11730
11731var shared = __webpack_require__(118);
11732var uid = __webpack_require__(119);
11733
11734var keys = shared('keys');
11735
11736module.exports = function (key) {
11737  return keys[key] || (keys[key] = uid(key));
11738};
11739
11740
11741/***/ })
11742
11743/******/ });

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.