@kkcompany/player 2.25.0-canary.16 → 2.25.0-canary.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -24,31 +24,31 @@ var global$p =
24
24
  check(typeof self == 'object' && self) ||
25
25
  check(typeof global$p == 'object' && global$p) ||
26
26
  // eslint-disable-next-line no-new-func -- fallback
27
- (function () { return this; })() || Function('return this')();var objectGetOwnPropertyDescriptor = {};var fails$r = function (exec) {
27
+ (function () { return this; })() || Function('return this')();var objectGetOwnPropertyDescriptor = {};var fails$s = function (exec) {
28
28
  try {
29
29
  return !!exec();
30
30
  } catch (error) {
31
31
  return true;
32
32
  }
33
- };var fails$q = fails$r;
33
+ };var fails$r = fails$s;
34
34
 
35
35
  // Detect IE8's incomplete defineProperty implementation
36
- var descriptors = !fails$q(function () {
36
+ var descriptors = !fails$r(function () {
37
37
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
38
38
  return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
39
- });var fails$p = fails$r;
39
+ });var fails$q = fails$s;
40
40
 
41
- var functionBindNative = !fails$p(function () {
41
+ var functionBindNative = !fails$q(function () {
42
42
  // eslint-disable-next-line es/no-function-prototype-bind -- safe
43
43
  var test = (function () { /* empty */ }).bind();
44
44
  // eslint-disable-next-line no-prototype-builtins -- safe
45
45
  return typeof test != 'function' || test.hasOwnProperty('prototype');
46
46
  });var NATIVE_BIND$3 = functionBindNative;
47
47
 
48
- var call$h = Function.prototype.call;
48
+ var call$i = Function.prototype.call;
49
49
 
50
- var functionCall = NATIVE_BIND$3 ? call$h.bind(call$h) : function () {
51
- return call$h.apply(call$h, arguments);
50
+ var functionCall = NATIVE_BIND$3 ? call$i.bind(call$i) : function () {
51
+ return call$i.apply(call$i, arguments);
52
52
  };var objectPropertyIsEnumerable = {};var $propertyIsEnumerable = {}.propertyIsEnumerable;
53
53
  // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
54
54
  var getOwnPropertyDescriptor$2 = Object.getOwnPropertyDescriptor;
@@ -71,20 +71,20 @@ objectPropertyIsEnumerable.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
71
71
  };var NATIVE_BIND$2 = functionBindNative;
72
72
 
73
73
  var FunctionPrototype$2 = Function.prototype;
74
- var call$g = FunctionPrototype$2.call;
75
- var uncurryThisWithBind = NATIVE_BIND$2 && FunctionPrototype$2.bind.bind(call$g, call$g);
74
+ var call$h = FunctionPrototype$2.call;
75
+ var uncurryThisWithBind = NATIVE_BIND$2 && FunctionPrototype$2.bind.bind(call$h, call$h);
76
76
 
77
77
  var functionUncurryThisRaw = NATIVE_BIND$2 ? uncurryThisWithBind : function (fn) {
78
78
  return function () {
79
- return call$g.apply(fn, arguments);
79
+ return call$h.apply(fn, arguments);
80
80
  };
81
81
  };var uncurryThisRaw$1 = functionUncurryThisRaw;
82
82
 
83
- var toString$a = uncurryThisRaw$1({}.toString);
83
+ var toString$b = uncurryThisRaw$1({}.toString);
84
84
  var stringSlice$8 = uncurryThisRaw$1(''.slice);
85
85
 
86
86
  var classofRaw$2 = function (it) {
87
- return stringSlice$8(toString$a(it), 8, -1);
87
+ return stringSlice$8(toString$b(it), 8, -1);
88
88
  };var classofRaw$1 = classofRaw$2;
89
89
  var uncurryThisRaw = functionUncurryThisRaw;
90
90
 
@@ -93,39 +93,39 @@ var functionUncurryThis = function (fn) {
93
93
  // https://github.com/zloirock/core-js/issues/1128
94
94
  // https://github.com/zloirock/core-js/issues/1130
95
95
  if (classofRaw$1(fn) === 'Function') return uncurryThisRaw(fn);
96
- };var uncurryThis$r = functionUncurryThis;
97
- var fails$o = fails$r;
98
- var classof$b = classofRaw$2;
96
+ };var uncurryThis$s = functionUncurryThis;
97
+ var fails$p = fails$s;
98
+ var classof$c = classofRaw$2;
99
99
 
100
100
  var $Object$4 = Object;
101
- var split$3 = uncurryThis$r(''.split);
101
+ var split$3 = uncurryThis$s(''.split);
102
102
 
103
103
  // fallback for non-array-like ES3 and non-enumerable old V8 strings
104
- var indexedObject = fails$o(function () {
104
+ var indexedObject = fails$p(function () {
105
105
  // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
106
106
  // eslint-disable-next-line no-prototype-builtins -- safe
107
107
  return !$Object$4('z').propertyIsEnumerable(0);
108
108
  }) ? function (it) {
109
- return classof$b(it) == 'String' ? split$3(it, '') : $Object$4(it);
109
+ return classof$c(it) == 'String' ? split$3(it, '') : $Object$4(it);
110
110
  } : $Object$4;// we can't use just `it == null` since of `document.all` special case
111
111
  // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec
112
- var isNullOrUndefined$5 = function (it) {
112
+ var isNullOrUndefined$6 = function (it) {
113
113
  return it === null || it === undefined;
114
- };var isNullOrUndefined$4 = isNullOrUndefined$5;
114
+ };var isNullOrUndefined$5 = isNullOrUndefined$6;
115
115
 
116
- var $TypeError$e = TypeError;
116
+ var $TypeError$f = TypeError;
117
117
 
118
118
  // `RequireObjectCoercible` abstract operation
119
119
  // https://tc39.es/ecma262/#sec-requireobjectcoercible
120
- var requireObjectCoercible$5 = function (it) {
121
- if (isNullOrUndefined$4(it)) throw $TypeError$e("Can't call method on " + it);
120
+ var requireObjectCoercible$6 = function (it) {
121
+ if (isNullOrUndefined$5(it)) throw $TypeError$f("Can't call method on " + it);
122
122
  return it;
123
123
  };// toObject with fallback for non-array-like ES3 strings
124
124
  var IndexedObject$2 = indexedObject;
125
- var requireObjectCoercible$4 = requireObjectCoercible$5;
125
+ var requireObjectCoercible$5 = requireObjectCoercible$6;
126
126
 
127
127
  var toIndexedObject$5 = function (it) {
128
- return IndexedObject$2(requireObjectCoercible$4(it));
128
+ return IndexedObject$2(requireObjectCoercible$5(it));
129
129
  };var documentAll$2 = typeof document == 'object' && document.all;
130
130
 
131
131
  // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
@@ -162,9 +162,9 @@ var aFunction = function (argument) {
162
162
 
163
163
  var getBuiltIn$7 = function (namespace, method) {
164
164
  return arguments.length < 2 ? aFunction(global$o[namespace]) : global$o[namespace] && global$o[namespace][method];
165
- };var uncurryThis$q = functionUncurryThis;
165
+ };var uncurryThis$r = functionUncurryThis;
166
166
 
167
- var objectIsPrototypeOf = uncurryThis$q({}.isPrototypeOf);var getBuiltIn$6 = getBuiltIn$7;
167
+ var objectIsPrototypeOf = uncurryThis$r({}.isPrototypeOf);var getBuiltIn$6 = getBuiltIn$7;
168
168
 
169
169
  var engineUserAgent = getBuiltIn$6('navigator', 'userAgent') || '';var global$n = global$p;
170
170
  var userAgent$2 = engineUserAgent;
@@ -195,10 +195,10 @@ if (!version && userAgent$2) {
195
195
  var engineV8Version = version;/* eslint-disable es/no-symbol -- required for testing */
196
196
 
197
197
  var V8_VERSION = engineV8Version;
198
- var fails$n = fails$r;
198
+ var fails$o = fails$s;
199
199
 
200
200
  // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
201
- var symbolConstructorDetection = !!Object.getOwnPropertySymbols && !fails$n(function () {
201
+ var symbolConstructorDetection = !!Object.getOwnPropertySymbols && !fails$o(function () {
202
202
  var symbol = Symbol();
203
203
  // Chrome 38 Symbol has incorrect toString conversion
204
204
  // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
@@ -234,34 +234,34 @@ var tryToString$5 = function (argument) {
234
234
  };var isCallable$j = isCallable$n;
235
235
  var tryToString$4 = tryToString$5;
236
236
 
237
- var $TypeError$d = TypeError;
237
+ var $TypeError$e = TypeError;
238
238
 
239
239
  // `Assert: IsCallable(argument) is true`
240
240
  var aCallable$6 = function (argument) {
241
241
  if (isCallable$j(argument)) return argument;
242
- throw $TypeError$d(tryToString$4(argument) + ' is not a function');
242
+ throw $TypeError$e(tryToString$4(argument) + ' is not a function');
243
243
  };var aCallable$5 = aCallable$6;
244
- var isNullOrUndefined$3 = isNullOrUndefined$5;
244
+ var isNullOrUndefined$4 = isNullOrUndefined$6;
245
245
 
246
246
  // `GetMethod` abstract operation
247
247
  // https://tc39.es/ecma262/#sec-getmethod
248
- var getMethod$4 = function (V, P) {
248
+ var getMethod$5 = function (V, P) {
249
249
  var func = V[P];
250
- return isNullOrUndefined$3(func) ? undefined : aCallable$5(func);
251
- };var call$f = functionCall;
250
+ return isNullOrUndefined$4(func) ? undefined : aCallable$5(func);
251
+ };var call$g = functionCall;
252
252
  var isCallable$i = isCallable$n;
253
253
  var isObject$d = isObject$e;
254
254
 
255
- var $TypeError$c = TypeError;
255
+ var $TypeError$d = TypeError;
256
256
 
257
257
  // `OrdinaryToPrimitive` abstract operation
258
258
  // https://tc39.es/ecma262/#sec-ordinarytoprimitive
259
259
  var ordinaryToPrimitive$1 = function (input, pref) {
260
260
  var fn, val;
261
- if (pref === 'string' && isCallable$i(fn = input.toString) && !isObject$d(val = call$f(fn, input))) return val;
262
- if (isCallable$i(fn = input.valueOf) && !isObject$d(val = call$f(fn, input))) return val;
263
- if (pref !== 'string' && isCallable$i(fn = input.toString) && !isObject$d(val = call$f(fn, input))) return val;
264
- throw $TypeError$c("Can't convert object to primitive value");
261
+ if (pref === 'string' && isCallable$i(fn = input.toString) && !isObject$d(val = call$g(fn, input))) return val;
262
+ if (isCallable$i(fn = input.valueOf) && !isObject$d(val = call$g(fn, input))) return val;
263
+ if (pref !== 'string' && isCallable$i(fn = input.toString) && !isObject$d(val = call$g(fn, input))) return val;
264
+ throw $TypeError$d("Can't convert object to primitive value");
265
265
  };var shared$4 = {exports: {}};var isPure = false;var global$m = global$p;
266
266
 
267
267
  // eslint-disable-next-line es/no-object-defineproperty -- safe
@@ -289,32 +289,32 @@ var sharedStore = store$3;var store$2 = sharedStore;
289
289
  copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',
290
290
  license: 'https://github.com/zloirock/core-js/blob/v3.26.0/LICENSE',
291
291
  source: 'https://github.com/zloirock/core-js'
292
- });var requireObjectCoercible$3 = requireObjectCoercible$5;
292
+ });var requireObjectCoercible$4 = requireObjectCoercible$6;
293
293
 
294
294
  var $Object$2 = Object;
295
295
 
296
296
  // `ToObject` abstract operation
297
297
  // https://tc39.es/ecma262/#sec-toobject
298
298
  var toObject$a = function (argument) {
299
- return $Object$2(requireObjectCoercible$3(argument));
300
- };var uncurryThis$p = functionUncurryThis;
299
+ return $Object$2(requireObjectCoercible$4(argument));
300
+ };var uncurryThis$q = functionUncurryThis;
301
301
  var toObject$9 = toObject$a;
302
302
 
303
- var hasOwnProperty$2 = uncurryThis$p({}.hasOwnProperty);
303
+ var hasOwnProperty$2 = uncurryThis$q({}.hasOwnProperty);
304
304
 
305
305
  // `HasOwnProperty` abstract operation
306
306
  // https://tc39.es/ecma262/#sec-hasownproperty
307
307
  // eslint-disable-next-line es/no-object-hasown -- safe
308
308
  var hasOwnProperty_1 = Object.hasOwn || function hasOwn(it, key) {
309
309
  return hasOwnProperty$2(toObject$9(it), key);
310
- };var uncurryThis$o = functionUncurryThis;
310
+ };var uncurryThis$p = functionUncurryThis;
311
311
 
312
312
  var id$1 = 0;
313
313
  var postfix = Math.random();
314
- var toString$9 = uncurryThis$o(1.0.toString);
314
+ var toString$a = uncurryThis$p(1.0.toString);
315
315
 
316
316
  var uid$3 = function (key) {
317
- return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString$9(++id$1 + postfix, 36);
317
+ return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString$a(++id$1 + postfix, 36);
318
318
  };var global$k = global$p;
319
319
  var shared$3 = shared$4.exports;
320
320
  var hasOwn$f = hasOwnProperty_1;
@@ -327,7 +327,7 @@ var Symbol$1 = global$k.Symbol;
327
327
  var symbolFor = Symbol$1 && Symbol$1['for'];
328
328
  var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid$2;
329
329
 
330
- var wellKnownSymbol$l = function (name) {
330
+ var wellKnownSymbol$m = function (name) {
331
331
  if (!hasOwn$f(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL$1 || typeof WellKnownSymbolsStore[name] == 'string')) {
332
332
  var description = 'Symbol.' + name;
333
333
  if (NATIVE_SYMBOL$1 && hasOwn$f(Symbol$1, name)) {
@@ -338,27 +338,27 @@ var wellKnownSymbol$l = function (name) {
338
338
  WellKnownSymbolsStore[name] = createWellKnownSymbol(description);
339
339
  }
340
340
  } return WellKnownSymbolsStore[name];
341
- };var call$e = functionCall;
341
+ };var call$f = functionCall;
342
342
  var isObject$c = isObject$e;
343
343
  var isSymbol$2 = isSymbol$3;
344
- var getMethod$3 = getMethod$4;
344
+ var getMethod$4 = getMethod$5;
345
345
  var ordinaryToPrimitive = ordinaryToPrimitive$1;
346
- var wellKnownSymbol$k = wellKnownSymbol$l;
346
+ var wellKnownSymbol$l = wellKnownSymbol$m;
347
347
 
348
- var $TypeError$b = TypeError;
349
- var TO_PRIMITIVE = wellKnownSymbol$k('toPrimitive');
348
+ var $TypeError$c = TypeError;
349
+ var TO_PRIMITIVE = wellKnownSymbol$l('toPrimitive');
350
350
 
351
351
  // `ToPrimitive` abstract operation
352
352
  // https://tc39.es/ecma262/#sec-toprimitive
353
353
  var toPrimitive$2 = function (input, pref) {
354
354
  if (!isObject$c(input) || isSymbol$2(input)) return input;
355
- var exoticToPrim = getMethod$3(input, TO_PRIMITIVE);
355
+ var exoticToPrim = getMethod$4(input, TO_PRIMITIVE);
356
356
  var result;
357
357
  if (exoticToPrim) {
358
358
  if (pref === undefined) pref = 'default';
359
- result = call$e(exoticToPrim, input, pref);
359
+ result = call$f(exoticToPrim, input, pref);
360
360
  if (!isObject$c(result) || isSymbol$2(result)) return result;
361
- throw $TypeError$b("Can't convert object to primitive value");
361
+ throw $TypeError$c("Can't convert object to primitive value");
362
362
  }
363
363
  if (pref === undefined) pref = 'number';
364
364
  return ordinaryToPrimitive(input, pref);
@@ -380,17 +380,17 @@ var EXISTS$1 = isObject$b(document$1) && isObject$b(document$1.createElement);
380
380
  var documentCreateElement$2 = function (it) {
381
381
  return EXISTS$1 ? document$1.createElement(it) : {};
382
382
  };var DESCRIPTORS$h = descriptors;
383
- var fails$m = fails$r;
383
+ var fails$n = fails$s;
384
384
  var createElement = documentCreateElement$2;
385
385
 
386
386
  // Thanks to IE8 for its funny defineProperty
387
- var ie8DomDefine = !DESCRIPTORS$h && !fails$m(function () {
387
+ var ie8DomDefine = !DESCRIPTORS$h && !fails$n(function () {
388
388
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
389
389
  return Object.defineProperty(createElement('div'), 'a', {
390
390
  get: function () { return 7; }
391
391
  }).a != 7;
392
392
  });var DESCRIPTORS$g = descriptors;
393
- var call$d = functionCall;
393
+ var call$e = functionCall;
394
394
  var propertyIsEnumerableModule$1 = objectPropertyIsEnumerable;
395
395
  var createPropertyDescriptor$5 = createPropertyDescriptor$6;
396
396
  var toIndexedObject$4 = toIndexedObject$5;
@@ -409,13 +409,13 @@ objectGetOwnPropertyDescriptor.f = DESCRIPTORS$g ? $getOwnPropertyDescriptor$1 :
409
409
  if (IE8_DOM_DEFINE$1) try {
410
410
  return $getOwnPropertyDescriptor$1(O, P);
411
411
  } catch (error) { /* empty */ }
412
- if (hasOwn$e(O, P)) return createPropertyDescriptor$5(!call$d(propertyIsEnumerableModule$1.f, O, P), O[P]);
412
+ if (hasOwn$e(O, P)) return createPropertyDescriptor$5(!call$e(propertyIsEnumerableModule$1.f, O, P), O[P]);
413
413
  };var objectDefineProperty = {};var DESCRIPTORS$f = descriptors;
414
- var fails$l = fails$r;
414
+ var fails$m = fails$s;
415
415
 
416
416
  // V8 ~ Chrome 36-
417
417
  // https://bugs.chromium.org/p/v8/issues/detail?id=3334
418
- var v8PrototypeDefineBug = DESCRIPTORS$f && fails$l(function () {
418
+ var v8PrototypeDefineBug = DESCRIPTORS$f && fails$m(function () {
419
419
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
420
420
  return Object.defineProperty(function () { /* empty */ }, 'prototype', {
421
421
  value: 42,
@@ -424,19 +424,19 @@ var v8PrototypeDefineBug = DESCRIPTORS$f && fails$l(function () {
424
424
  });var isObject$a = isObject$e;
425
425
 
426
426
  var $String$2 = String;
427
- var $TypeError$a = TypeError;
427
+ var $TypeError$b = TypeError;
428
428
 
429
429
  // `Assert: Type(argument) is Object`
430
- var anObject$f = function (argument) {
430
+ var anObject$g = function (argument) {
431
431
  if (isObject$a(argument)) return argument;
432
- throw $TypeError$a($String$2(argument) + ' is not an object');
432
+ throw $TypeError$b($String$2(argument) + ' is not an object');
433
433
  };var DESCRIPTORS$e = descriptors;
434
434
  var IE8_DOM_DEFINE = ie8DomDefine;
435
435
  var V8_PROTOTYPE_DEFINE_BUG$1 = v8PrototypeDefineBug;
436
- var anObject$e = anObject$f;
436
+ var anObject$f = anObject$g;
437
437
  var toPropertyKey$2 = toPropertyKey$4;
438
438
 
439
- var $TypeError$9 = TypeError;
439
+ var $TypeError$a = TypeError;
440
440
  // eslint-disable-next-line es/no-object-defineproperty -- safe
441
441
  var $defineProperty = Object.defineProperty;
442
442
  // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
@@ -448,9 +448,9 @@ var WRITABLE = 'writable';
448
448
  // `Object.defineProperty` method
449
449
  // https://tc39.es/ecma262/#sec-object.defineproperty
450
450
  objectDefineProperty.f = DESCRIPTORS$e ? V8_PROTOTYPE_DEFINE_BUG$1 ? function defineProperty(O, P, Attributes) {
451
- anObject$e(O);
451
+ anObject$f(O);
452
452
  P = toPropertyKey$2(P);
453
- anObject$e(Attributes);
453
+ anObject$f(Attributes);
454
454
  if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
455
455
  var current = $getOwnPropertyDescriptor(O, P);
456
456
  if (current && current[WRITABLE]) {
@@ -463,13 +463,13 @@ objectDefineProperty.f = DESCRIPTORS$e ? V8_PROTOTYPE_DEFINE_BUG$1 ? function de
463
463
  }
464
464
  } return $defineProperty(O, P, Attributes);
465
465
  } : $defineProperty : function defineProperty(O, P, Attributes) {
466
- anObject$e(O);
466
+ anObject$f(O);
467
467
  P = toPropertyKey$2(P);
468
- anObject$e(Attributes);
468
+ anObject$f(Attributes);
469
469
  if (IE8_DOM_DEFINE) try {
470
470
  return $defineProperty(O, P, Attributes);
471
471
  } catch (error) { /* empty */ }
472
- if ('get' in Attributes || 'set' in Attributes) throw $TypeError$9('Accessors not supported');
472
+ if ('get' in Attributes || 'set' in Attributes) throw $TypeError$a('Accessors not supported');
473
473
  if ('value' in Attributes) O[P] = Attributes.value;
474
474
  return O;
475
475
  };var DESCRIPTORS$d = descriptors;
@@ -497,11 +497,11 @@ var functionName = {
497
497
  EXISTS: EXISTS,
498
498
  PROPER: PROPER,
499
499
  CONFIGURABLE: CONFIGURABLE
500
- };var uncurryThis$n = functionUncurryThis;
500
+ };var uncurryThis$o = functionUncurryThis;
501
501
  var isCallable$h = isCallable$n;
502
502
  var store$1 = sharedStore;
503
503
 
504
- var functionToString = uncurryThis$n(Function.toString);
504
+ var functionToString = uncurryThis$o(Function.toString);
505
505
 
506
506
  // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
507
507
  if (!isCallable$h(store$1.inspectSource)) {
@@ -591,20 +591,20 @@ var internalState = {
591
591
  has: has,
592
592
  enforce: enforce,
593
593
  getterFor: getterFor
594
- };var fails$k = fails$r;
594
+ };var fails$l = fails$s;
595
595
  var isCallable$f = isCallable$n;
596
596
  var hasOwn$b = hasOwnProperty_1;
597
597
  var DESCRIPTORS$b = descriptors;
598
598
  var CONFIGURABLE_FUNCTION_NAME$2 = functionName.CONFIGURABLE;
599
599
  var inspectSource$1 = inspectSource$2;
600
- var InternalStateModule$7 = internalState;
600
+ var InternalStateModule$8 = internalState;
601
601
 
602
- var enforceInternalState$3 = InternalStateModule$7.enforce;
603
- var getInternalState$6 = InternalStateModule$7.get;
602
+ var enforceInternalState$3 = InternalStateModule$8.enforce;
603
+ var getInternalState$7 = InternalStateModule$8.get;
604
604
  // eslint-disable-next-line es/no-object-defineproperty -- safe
605
605
  var defineProperty$9 = Object.defineProperty;
606
606
 
607
- var CONFIGURABLE_LENGTH = DESCRIPTORS$b && !fails$k(function () {
607
+ var CONFIGURABLE_LENGTH = DESCRIPTORS$b && !fails$l(function () {
608
608
  return defineProperty$9(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
609
609
  });
610
610
 
@@ -638,13 +638,13 @@ var makeBuiltIn$2 = makeBuiltIn$3.exports = function (value, name, options) {
638
638
  // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
639
639
  // eslint-disable-next-line no-extend-native -- required
640
640
  Function.prototype.toString = makeBuiltIn$2(function toString() {
641
- return isCallable$f(this) && getInternalState$6(this).source || inspectSource$1(this);
641
+ return isCallable$f(this) && getInternalState$7(this).source || inspectSource$1(this);
642
642
  }, 'toString');var isCallable$e = isCallable$n;
643
643
  var definePropertyModule$5 = objectDefineProperty;
644
644
  var makeBuiltIn$1 = makeBuiltIn$3.exports;
645
645
  var defineGlobalProperty$1 = defineGlobalProperty$3;
646
646
 
647
- var defineBuiltIn$a = function (O, key, value, options) {
647
+ var defineBuiltIn$b = function (O, key, value, options) {
648
648
  if (!options) options = {};
649
649
  var simple = options.enumerable;
650
650
  var name = options.name !== undefined ? options.name : key;
@@ -699,14 +699,14 @@ var min$1 = Math.min;
699
699
 
700
700
  // `ToLength` abstract operation
701
701
  // https://tc39.es/ecma262/#sec-tolength
702
- var toLength$6 = function (argument) {
702
+ var toLength$7 = function (argument) {
703
703
  return argument > 0 ? min$1(toIntegerOrInfinity$5(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
704
- };var toLength$5 = toLength$6;
704
+ };var toLength$6 = toLength$7;
705
705
 
706
706
  // `LengthOfArrayLike` abstract operation
707
707
  // https://tc39.es/ecma262/#sec-lengthofarraylike
708
708
  var lengthOfArrayLike$7 = function (obj) {
709
- return toLength$5(obj.length);
709
+ return toLength$6(obj.length);
710
710
  };var toIndexedObject$3 = toIndexedObject$5;
711
711
  var toAbsoluteIndex$3 = toAbsoluteIndex$4;
712
712
  var lengthOfArrayLike$6 = lengthOfArrayLike$7;
@@ -738,13 +738,13 @@ var arrayIncludes = {
738
738
  // `Array.prototype.indexOf` method
739
739
  // https://tc39.es/ecma262/#sec-array.prototype.indexof
740
740
  indexOf: createMethod$3(false)
741
- };var uncurryThis$m = functionUncurryThis;
741
+ };var uncurryThis$n = functionUncurryThis;
742
742
  var hasOwn$a = hasOwnProperty_1;
743
743
  var toIndexedObject$2 = toIndexedObject$5;
744
744
  var indexOf$1 = arrayIncludes.indexOf;
745
745
  var hiddenKeys$2 = hiddenKeys$4;
746
746
 
747
- var push$6 = uncurryThis$m([].push);
747
+ var push$6 = uncurryThis$n([].push);
748
748
 
749
749
  var objectKeysInternal = function (object, names) {
750
750
  var O = toIndexedObject$2(object);
@@ -778,16 +778,16 @@ objectGetOwnPropertyNames.f = Object.getOwnPropertyNames || function getOwnPrope
778
778
  return internalObjectKeys$1(O, hiddenKeys$1);
779
779
  };var objectGetOwnPropertySymbols = {};// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
780
780
  objectGetOwnPropertySymbols.f = Object.getOwnPropertySymbols;var getBuiltIn$4 = getBuiltIn$7;
781
- var uncurryThis$l = functionUncurryThis;
781
+ var uncurryThis$m = functionUncurryThis;
782
782
  var getOwnPropertyNamesModule = objectGetOwnPropertyNames;
783
783
  var getOwnPropertySymbolsModule$1 = objectGetOwnPropertySymbols;
784
- var anObject$d = anObject$f;
784
+ var anObject$e = anObject$g;
785
785
 
786
- var concat$2 = uncurryThis$l([].concat);
786
+ var concat$2 = uncurryThis$m([].concat);
787
787
 
788
788
  // all object keys, includes non-enumerable and symbols
789
789
  var ownKeys$u = getBuiltIn$4('Reflect', 'ownKeys') || function ownKeys(it) {
790
- var keys = getOwnPropertyNamesModule.f(anObject$d(it));
790
+ var keys = getOwnPropertyNamesModule.f(anObject$e(it));
791
791
  var getOwnPropertySymbols = getOwnPropertySymbolsModule$1.f;
792
792
  return getOwnPropertySymbols ? concat$2(keys, getOwnPropertySymbols(it)) : keys;
793
793
  };var hasOwn$9 = hasOwnProperty_1;
@@ -805,7 +805,7 @@ var copyConstructorProperties$2 = function (target, source, exceptions) {
805
805
  defineProperty(target, key, getOwnPropertyDescriptor(source, key));
806
806
  }
807
807
  }
808
- };var fails$j = fails$r;
808
+ };var fails$k = fails$s;
809
809
  var isCallable$d = isCallable$n;
810
810
 
811
811
  var replacement = /#|\.prototype\./;
@@ -814,7 +814,7 @@ var isForced$2 = function (feature, detection) {
814
814
  var value = data[normalize$1(feature)];
815
815
  return value == POLYFILL ? true
816
816
  : value == NATIVE ? false
817
- : isCallable$d(detection) ? fails$j(detection)
817
+ : isCallable$d(detection) ? fails$k(detection)
818
818
  : !!detection;
819
819
  };
820
820
 
@@ -829,7 +829,7 @@ var POLYFILL = isForced$2.POLYFILL = 'P';
829
829
  var isForced_1 = isForced$2;var global$g = global$p;
830
830
  var getOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f;
831
831
  var createNonEnumerableProperty$7 = createNonEnumerableProperty$9;
832
- var defineBuiltIn$9 = defineBuiltIn$a;
832
+ var defineBuiltIn$a = defineBuiltIn$b;
833
833
  var defineGlobalProperty = defineGlobalProperty$3;
834
834
  var copyConstructorProperties$1 = copyConstructorProperties$2;
835
835
  var isForced$1 = isForced_1;
@@ -877,11 +877,11 @@ var _export = function (options, source) {
877
877
  if (options.sham || (targetProperty && targetProperty.sham)) {
878
878
  createNonEnumerableProperty$7(sourceProperty, 'sham', true);
879
879
  }
880
- defineBuiltIn$9(target, key, sourceProperty, options);
880
+ defineBuiltIn$a(target, key, sourceProperty, options);
881
881
  }
882
- };var wellKnownSymbol$j = wellKnownSymbol$l;
882
+ };var wellKnownSymbol$k = wellKnownSymbol$m;
883
883
 
884
- var TO_STRING_TAG$4 = wellKnownSymbol$j('toStringTag');
884
+ var TO_STRING_TAG$4 = wellKnownSymbol$k('toStringTag');
885
885
  var test$1 = {};
886
886
 
887
887
  test$1[TO_STRING_TAG$4] = 'z';
@@ -889,9 +889,9 @@ test$1[TO_STRING_TAG$4] = 'z';
889
889
  var toStringTagSupport = String(test$1) === '[object z]';var TO_STRING_TAG_SUPPORT = toStringTagSupport;
890
890
  var isCallable$c = isCallable$n;
891
891
  var classofRaw = classofRaw$2;
892
- var wellKnownSymbol$i = wellKnownSymbol$l;
892
+ var wellKnownSymbol$j = wellKnownSymbol$m;
893
893
 
894
- var TO_STRING_TAG$3 = wellKnownSymbol$i('toStringTag');
894
+ var TO_STRING_TAG$3 = wellKnownSymbol$j('toStringTag');
895
895
  var $Object$1 = Object;
896
896
 
897
897
  // ES3 wrong here
@@ -905,7 +905,7 @@ var tryGet = function (it, key) {
905
905
  };
906
906
 
907
907
  // getting tag from ES6+ `Object.prototype.toString`
908
- var classof$a = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
908
+ var classof$b = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
909
909
  var O, tag, result;
910
910
  return it === undefined ? 'Undefined' : it === null ? 'Null'
911
911
  // @@toStringTag case
@@ -914,19 +914,19 @@ var classof$a = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
914
914
  : CORRECT_ARGUMENTS ? classofRaw(O)
915
915
  // ES3 arguments fallback
916
916
  : (result = classofRaw(O)) == 'Object' && isCallable$c(O.callee) ? 'Arguments' : result;
917
- };var classof$9 = classof$a;
917
+ };var classof$a = classof$b;
918
918
 
919
919
  var $String$1 = String;
920
920
 
921
- var toString$8 = function (argument) {
922
- if (classof$9(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');
921
+ var toString$9 = function (argument) {
922
+ if (classof$a(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');
923
923
  return $String$1(argument);
924
- };var anObject$c = anObject$f;
924
+ };var anObject$d = anObject$g;
925
925
 
926
926
  // `RegExp.prototype.flags` getter implementation
927
927
  // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
928
928
  var regexpFlags$1 = function () {
929
- var that = anObject$c(this);
929
+ var that = anObject$d(this);
930
930
  var result = '';
931
931
  if (that.hasIndices) result += 'd';
932
932
  if (that.global) result += 'g';
@@ -937,13 +937,13 @@ var regexpFlags$1 = function () {
937
937
  if (that.unicodeSets) result += 'v';
938
938
  if (that.sticky) result += 'y';
939
939
  return result;
940
- };var fails$i = fails$r;
940
+ };var fails$j = fails$s;
941
941
  var global$f = global$p;
942
942
 
943
943
  // babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
944
944
  var $RegExp$2 = global$f.RegExp;
945
945
 
946
- var UNSUPPORTED_Y$2 = fails$i(function () {
946
+ var UNSUPPORTED_Y$2 = fails$j(function () {
947
947
  var re = $RegExp$2('a', 'y');
948
948
  re.lastIndex = 2;
949
949
  return re.exec('abcd') != null;
@@ -951,11 +951,11 @@ var UNSUPPORTED_Y$2 = fails$i(function () {
951
951
 
952
952
  // UC Browser bug
953
953
  // https://github.com/zloirock/core-js/issues/1008
954
- var MISSED_STICKY$1 = UNSUPPORTED_Y$2 || fails$i(function () {
954
+ var MISSED_STICKY$1 = UNSUPPORTED_Y$2 || fails$j(function () {
955
955
  return !$RegExp$2('a', 'y').sticky;
956
956
  });
957
957
 
958
- var BROKEN_CARET = UNSUPPORTED_Y$2 || fails$i(function () {
958
+ var BROKEN_CARET = UNSUPPORTED_Y$2 || fails$j(function () {
959
959
  // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
960
960
  var re = $RegExp$2('^r', 'gy');
961
961
  re.lastIndex = 2;
@@ -977,7 +977,7 @@ var objectKeys$2 = Object.keys || function keys(O) {
977
977
  };var DESCRIPTORS$a = descriptors;
978
978
  var V8_PROTOTYPE_DEFINE_BUG = v8PrototypeDefineBug;
979
979
  var definePropertyModule$3 = objectDefineProperty;
980
- var anObject$b = anObject$f;
980
+ var anObject$c = anObject$g;
981
981
  var toIndexedObject$1 = toIndexedObject$5;
982
982
  var objectKeys$1 = objectKeys$2;
983
983
 
@@ -985,7 +985,7 @@ var objectKeys$1 = objectKeys$2;
985
985
  // https://tc39.es/ecma262/#sec-object.defineproperties
986
986
  // eslint-disable-next-line es/no-object-defineproperties -- safe
987
987
  objectDefineProperties.f = DESCRIPTORS$a && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
988
- anObject$b(O);
988
+ anObject$c(O);
989
989
  var props = toIndexedObject$1(Properties);
990
990
  var keys = objectKeys$1(Properties);
991
991
  var length = keys.length;
@@ -997,7 +997,7 @@ objectDefineProperties.f = DESCRIPTORS$a && !V8_PROTOTYPE_DEFINE_BUG ? Object.de
997
997
 
998
998
  var html$1 = getBuiltIn$3('document', 'documentElement');/* global ActiveXObject -- old IE, WSH */
999
999
 
1000
- var anObject$a = anObject$f;
1000
+ var anObject$b = anObject$g;
1001
1001
  var definePropertiesModule = objectDefineProperties;
1002
1002
  var enumBugKeys = enumBugKeys$3;
1003
1003
  var hiddenKeys = hiddenKeys$4;
@@ -1071,58 +1071,58 @@ hiddenKeys[IE_PROTO$1] = true;
1071
1071
  var objectCreate = Object.create || function create(O, Properties) {
1072
1072
  var result;
1073
1073
  if (O !== null) {
1074
- EmptyConstructor[PROTOTYPE$1] = anObject$a(O);
1074
+ EmptyConstructor[PROTOTYPE$1] = anObject$b(O);
1075
1075
  result = new EmptyConstructor();
1076
1076
  EmptyConstructor[PROTOTYPE$1] = null;
1077
1077
  // add "__proto__" for Object.getPrototypeOf polyfill
1078
1078
  result[IE_PROTO$1] = O;
1079
1079
  } else result = NullProtoObject();
1080
1080
  return Properties === undefined ? result : definePropertiesModule.f(result, Properties);
1081
- };var fails$h = fails$r;
1081
+ };var fails$i = fails$s;
1082
1082
  var global$e = global$p;
1083
1083
 
1084
1084
  // babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError
1085
1085
  var $RegExp$1 = global$e.RegExp;
1086
1086
 
1087
- var regexpUnsupportedDotAll = fails$h(function () {
1087
+ var regexpUnsupportedDotAll = fails$i(function () {
1088
1088
  var re = $RegExp$1('.', 's');
1089
1089
  return !(re.dotAll && re.exec('\n') && re.flags === 's');
1090
- });var fails$g = fails$r;
1090
+ });var fails$h = fails$s;
1091
1091
  var global$d = global$p;
1092
1092
 
1093
1093
  // babel-minify and Closure Compiler transpiles RegExp('(?<a>b)', 'g') -> /(?<a>b)/g and it causes SyntaxError
1094
1094
  var $RegExp = global$d.RegExp;
1095
1095
 
1096
- var regexpUnsupportedNcg = fails$g(function () {
1096
+ var regexpUnsupportedNcg = fails$h(function () {
1097
1097
  var re = $RegExp('(?<a>b)', 'g');
1098
1098
  return re.exec('b').groups.a !== 'b' ||
1099
1099
  'b'.replace(re, '$<a>c') !== 'bc';
1100
1100
  });/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */
1101
1101
  /* eslint-disable regexp/no-useless-quantifier -- testing */
1102
- var call$c = functionCall;
1103
- var uncurryThis$k = functionUncurryThis;
1104
- var toString$7 = toString$8;
1102
+ var call$d = functionCall;
1103
+ var uncurryThis$l = functionUncurryThis;
1104
+ var toString$8 = toString$9;
1105
1105
  var regexpFlags = regexpFlags$1;
1106
1106
  var stickyHelpers$1 = regexpStickyHelpers;
1107
1107
  var shared = shared$4.exports;
1108
1108
  var create$4 = objectCreate;
1109
- var getInternalState$5 = internalState.get;
1109
+ var getInternalState$6 = internalState.get;
1110
1110
  var UNSUPPORTED_DOT_ALL$1 = regexpUnsupportedDotAll;
1111
1111
  var UNSUPPORTED_NCG$1 = regexpUnsupportedNcg;
1112
1112
 
1113
1113
  var nativeReplace = shared('native-string-replace', String.prototype.replace);
1114
1114
  var nativeExec = RegExp.prototype.exec;
1115
1115
  var patchedExec = nativeExec;
1116
- var charAt$7 = uncurryThis$k(''.charAt);
1117
- var indexOf = uncurryThis$k(''.indexOf);
1118
- var replace$8 = uncurryThis$k(''.replace);
1119
- var stringSlice$7 = uncurryThis$k(''.slice);
1116
+ var charAt$7 = uncurryThis$l(''.charAt);
1117
+ var indexOf = uncurryThis$l(''.indexOf);
1118
+ var replace$8 = uncurryThis$l(''.replace);
1119
+ var stringSlice$7 = uncurryThis$l(''.slice);
1120
1120
 
1121
1121
  var UPDATES_LAST_INDEX_WRONG = (function () {
1122
1122
  var re1 = /a/;
1123
1123
  var re2 = /b*/g;
1124
- call$c(nativeExec, re1, 'a');
1125
- call$c(nativeExec, re2, 'a');
1124
+ call$d(nativeExec, re1, 'a');
1125
+ call$d(nativeExec, re2, 'a');
1126
1126
  return re1.lastIndex !== 0 || re2.lastIndex !== 0;
1127
1127
  })();
1128
1128
 
@@ -1136,21 +1136,21 @@ var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1 || UNSU
1136
1136
  if (PATCH) {
1137
1137
  patchedExec = function exec(string) {
1138
1138
  var re = this;
1139
- var state = getInternalState$5(re);
1140
- var str = toString$7(string);
1139
+ var state = getInternalState$6(re);
1140
+ var str = toString$8(string);
1141
1141
  var raw = state.raw;
1142
1142
  var result, reCopy, lastIndex, match, i, object, group;
1143
1143
 
1144
1144
  if (raw) {
1145
1145
  raw.lastIndex = re.lastIndex;
1146
- result = call$c(patchedExec, raw, str);
1146
+ result = call$d(patchedExec, raw, str);
1147
1147
  re.lastIndex = raw.lastIndex;
1148
1148
  return result;
1149
1149
  }
1150
1150
 
1151
1151
  var groups = state.groups;
1152
1152
  var sticky = UNSUPPORTED_Y$1 && re.sticky;
1153
- var flags = call$c(regexpFlags, re);
1153
+ var flags = call$d(regexpFlags, re);
1154
1154
  var source = re.source;
1155
1155
  var charsAdded = 0;
1156
1156
  var strCopy = str;
@@ -1178,7 +1178,7 @@ if (PATCH) {
1178
1178
  }
1179
1179
  if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
1180
1180
 
1181
- match = call$c(nativeExec, sticky ? reCopy : re, strCopy);
1181
+ match = call$d(nativeExec, sticky ? reCopy : re, strCopy);
1182
1182
 
1183
1183
  if (sticky) {
1184
1184
  if (match) {
@@ -1193,7 +1193,7 @@ if (PATCH) {
1193
1193
  if (NPCG_INCLUDED && match && match.length > 1) {
1194
1194
  // Fix browsers whose `exec` methods don't consistently return `undefined`
1195
1195
  // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/
1196
- call$c(nativeReplace, match[0], reCopy, function () {
1196
+ call$d(nativeReplace, match[0], reCopy, function () {
1197
1197
  for (i = 1; i < arguments.length - 2; i++) {
1198
1198
  if (arguments[i] === undefined) match[i] = undefined;
1199
1199
  }
@@ -1212,12 +1212,12 @@ if (PATCH) {
1212
1212
  };
1213
1213
  }
1214
1214
 
1215
- var regexpExec$2 = patchedExec;var $$9 = _export;
1215
+ var regexpExec$2 = patchedExec;var $$a = _export;
1216
1216
  var exec$4 = regexpExec$2;
1217
1217
 
1218
1218
  // `RegExp.prototype.exec` method
1219
1219
  // https://tc39.es/ecma262/#sec-regexp.prototype.exec
1220
- $$9({ target: 'RegExp', proto: true, forced: /./.exec !== exec$4 }, {
1220
+ $$a({ target: 'RegExp', proto: true, forced: /./.exec !== exec$4 }, {
1221
1221
  exec: exec$4
1222
1222
  });var react = {exports: {}};var react_production_min = {};/*
1223
1223
  object-assign
@@ -1744,11 +1744,11 @@ var documentCreateElement = documentCreateElement$2;
1744
1744
  var classList = documentCreateElement('span').classList;
1745
1745
  var DOMTokenListPrototype$1 = classList && classList.constructor && classList.constructor.prototype;
1746
1746
 
1747
- var domTokenListPrototype = DOMTokenListPrototype$1 === Object.prototype ? undefined : DOMTokenListPrototype$1;var wellKnownSymbol$h = wellKnownSymbol$l;
1747
+ var domTokenListPrototype = DOMTokenListPrototype$1 === Object.prototype ? undefined : DOMTokenListPrototype$1;var wellKnownSymbol$i = wellKnownSymbol$m;
1748
1748
  var create$3 = objectCreate;
1749
1749
  var defineProperty$8 = objectDefineProperty.f;
1750
1750
 
1751
- var UNSCOPABLES = wellKnownSymbol$h('unscopables');
1751
+ var UNSCOPABLES = wellKnownSymbol$i('unscopables');
1752
1752
  var ArrayPrototype$1 = Array.prototype;
1753
1753
 
1754
1754
  // Array.prototype[@@unscopables]
@@ -1763,9 +1763,9 @@ if (ArrayPrototype$1[UNSCOPABLES] == undefined) {
1763
1763
  // add a key to Array.prototype[@@unscopables]
1764
1764
  var addToUnscopables$1 = function (key) {
1765
1765
  ArrayPrototype$1[UNSCOPABLES][key] = true;
1766
- };var iterators = {};var fails$f = fails$r;
1766
+ };var iterators = {};var fails$g = fails$s;
1767
1767
 
1768
- var correctPrototypeGetter = !fails$f(function () {
1768
+ var correctPrototypeGetter = !fails$g(function () {
1769
1769
  function F() { /* empty */ }
1770
1770
  F.prototype.constructor = null;
1771
1771
  // eslint-disable-next-line es/no-object-getprototypeof -- required for testing
@@ -1790,14 +1790,14 @@ var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : f
1790
1790
  if (isCallable$b(constructor) && object instanceof constructor) {
1791
1791
  return constructor.prototype;
1792
1792
  } return object instanceof $Object ? ObjectPrototype$2 : null;
1793
- };var fails$e = fails$r;
1793
+ };var fails$f = fails$s;
1794
1794
  var isCallable$a = isCallable$n;
1795
1795
  var isObject$8 = isObject$e;
1796
1796
  var getPrototypeOf$3 = objectGetPrototypeOf;
1797
- var defineBuiltIn$8 = defineBuiltIn$a;
1798
- var wellKnownSymbol$g = wellKnownSymbol$l;
1797
+ var defineBuiltIn$9 = defineBuiltIn$b;
1798
+ var wellKnownSymbol$h = wellKnownSymbol$m;
1799
1799
 
1800
- var ITERATOR$7 = wellKnownSymbol$g('iterator');
1800
+ var ITERATOR$7 = wellKnownSymbol$h('iterator');
1801
1801
  var BUGGY_SAFARI_ITERATORS$1 = false;
1802
1802
 
1803
1803
  // `%IteratorPrototype%` object
@@ -1815,7 +1815,7 @@ if ([].keys) {
1815
1815
  }
1816
1816
  }
1817
1817
 
1818
- var NEW_ITERATOR_PROTOTYPE = !isObject$8(IteratorPrototype$2) || fails$e(function () {
1818
+ var NEW_ITERATOR_PROTOTYPE = !isObject$8(IteratorPrototype$2) || fails$f(function () {
1819
1819
  var test = {};
1820
1820
  // FF44- legacy iterators case
1821
1821
  return IteratorPrototype$2[ITERATOR$7].call(test) !== test;
@@ -1826,7 +1826,7 @@ if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype$2 = {};
1826
1826
  // `%IteratorPrototype%[@@iterator]()` method
1827
1827
  // https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
1828
1828
  if (!isCallable$a(IteratorPrototype$2[ITERATOR$7])) {
1829
- defineBuiltIn$8(IteratorPrototype$2, ITERATOR$7, function () {
1829
+ defineBuiltIn$9(IteratorPrototype$2, ITERATOR$7, function () {
1830
1830
  return this;
1831
1831
  });
1832
1832
  }
@@ -1836,9 +1836,9 @@ var iteratorsCore = {
1836
1836
  BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS$1
1837
1837
  };var defineProperty$7 = objectDefineProperty.f;
1838
1838
  var hasOwn$7 = hasOwnProperty_1;
1839
- var wellKnownSymbol$f = wellKnownSymbol$l;
1839
+ var wellKnownSymbol$g = wellKnownSymbol$m;
1840
1840
 
1841
- var TO_STRING_TAG$2 = wellKnownSymbol$f('toStringTag');
1841
+ var TO_STRING_TAG$2 = wellKnownSymbol$g('toStringTag');
1842
1842
 
1843
1843
  var setToStringTag$5 = function (target, TAG, STATIC) {
1844
1844
  if (target && !STATIC) target = target.prototype;
@@ -1862,15 +1862,15 @@ var iteratorCreateConstructor = function (IteratorConstructor, NAME, next, ENUME
1862
1862
  };var isCallable$9 = isCallable$n;
1863
1863
 
1864
1864
  var $String = String;
1865
- var $TypeError$8 = TypeError;
1865
+ var $TypeError$9 = TypeError;
1866
1866
 
1867
1867
  var aPossiblePrototype$1 = function (argument) {
1868
1868
  if (typeof argument == 'object' || isCallable$9(argument)) return argument;
1869
- throw $TypeError$8("Can't set " + $String(argument) + ' as a prototype');
1869
+ throw $TypeError$9("Can't set " + $String(argument) + ' as a prototype');
1870
1870
  };/* eslint-disable no-proto -- safe */
1871
1871
 
1872
- var uncurryThis$j = functionUncurryThis;
1873
- var anObject$9 = anObject$f;
1872
+ var uncurryThis$k = functionUncurryThis;
1873
+ var anObject$a = anObject$g;
1874
1874
  var aPossiblePrototype = aPossiblePrototype$1;
1875
1875
 
1876
1876
  // `Object.setPrototypeOf` method
@@ -1883,28 +1883,28 @@ var objectSetPrototypeOf = Object.setPrototypeOf || ('__proto__' in {} ? functio
1883
1883
  var setter;
1884
1884
  try {
1885
1885
  // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
1886
- setter = uncurryThis$j(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);
1886
+ setter = uncurryThis$k(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);
1887
1887
  setter(test, []);
1888
1888
  CORRECT_SETTER = test instanceof Array;
1889
1889
  } catch (error) { /* empty */ }
1890
1890
  return function setPrototypeOf(O, proto) {
1891
- anObject$9(O);
1891
+ anObject$a(O);
1892
1892
  aPossiblePrototype(proto);
1893
1893
  if (CORRECT_SETTER) setter(O, proto);
1894
1894
  else O.__proto__ = proto;
1895
1895
  return O;
1896
1896
  };
1897
- }() : undefined);var $$8 = _export;
1898
- var call$b = functionCall;
1897
+ }() : undefined);var $$9 = _export;
1898
+ var call$c = functionCall;
1899
1899
  var FunctionName$1 = functionName;
1900
1900
  var isCallable$8 = isCallable$n;
1901
- var createIteratorConstructor$1 = iteratorCreateConstructor;
1901
+ var createIteratorConstructor$2 = iteratorCreateConstructor;
1902
1902
  var getPrototypeOf$2 = objectGetPrototypeOf;
1903
1903
  var setPrototypeOf$4 = objectSetPrototypeOf;
1904
1904
  var setToStringTag$3 = setToStringTag$5;
1905
1905
  var createNonEnumerableProperty$6 = createNonEnumerableProperty$9;
1906
- var defineBuiltIn$7 = defineBuiltIn$a;
1907
- var wellKnownSymbol$e = wellKnownSymbol$l;
1906
+ var defineBuiltIn$8 = defineBuiltIn$b;
1907
+ var wellKnownSymbol$f = wellKnownSymbol$m;
1908
1908
  var Iterators$3 = iterators;
1909
1909
  var IteratorsCore = iteratorsCore;
1910
1910
 
@@ -1912,7 +1912,7 @@ var PROPER_FUNCTION_NAME$2 = FunctionName$1.PROPER;
1912
1912
  var CONFIGURABLE_FUNCTION_NAME$1 = FunctionName$1.CONFIGURABLE;
1913
1913
  var IteratorPrototype = IteratorsCore.IteratorPrototype;
1914
1914
  var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
1915
- var ITERATOR$6 = wellKnownSymbol$e('iterator');
1915
+ var ITERATOR$6 = wellKnownSymbol$f('iterator');
1916
1916
  var KEYS = 'keys';
1917
1917
  var VALUES = 'values';
1918
1918
  var ENTRIES = 'entries';
@@ -1920,7 +1920,7 @@ var ENTRIES = 'entries';
1920
1920
  var returnThis = function () { return this; };
1921
1921
 
1922
1922
  var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
1923
- createIteratorConstructor$1(IteratorConstructor, NAME, next);
1923
+ createIteratorConstructor$2(IteratorConstructor, NAME, next);
1924
1924
 
1925
1925
  var getIterationMethod = function (KIND) {
1926
1926
  if (KIND === DEFAULT && defaultIterator) return defaultIterator;
@@ -1950,7 +1950,7 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
1950
1950
  if (setPrototypeOf$4) {
1951
1951
  setPrototypeOf$4(CurrentIteratorPrototype, IteratorPrototype);
1952
1952
  } else if (!isCallable$8(CurrentIteratorPrototype[ITERATOR$6])) {
1953
- defineBuiltIn$7(CurrentIteratorPrototype, ITERATOR$6, returnThis);
1953
+ defineBuiltIn$8(CurrentIteratorPrototype, ITERATOR$6, returnThis);
1954
1954
  }
1955
1955
  }
1956
1956
  // Set @@toStringTag to native iterators
@@ -1964,7 +1964,7 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
1964
1964
  createNonEnumerableProperty$6(IterablePrototype, 'name', VALUES);
1965
1965
  } else {
1966
1966
  INCORRECT_VALUES_NAME = true;
1967
- defaultIterator = function values() { return call$b(nativeIterator, this); };
1967
+ defaultIterator = function values() { return call$c(nativeIterator, this); };
1968
1968
  }
1969
1969
  }
1970
1970
 
@@ -1977,34 +1977,34 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
1977
1977
  };
1978
1978
  if (FORCED) for (KEY in methods) {
1979
1979
  if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
1980
- defineBuiltIn$7(IterablePrototype, KEY, methods[KEY]);
1980
+ defineBuiltIn$8(IterablePrototype, KEY, methods[KEY]);
1981
1981
  }
1982
- } else $$8({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
1982
+ } else $$9({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
1983
1983
  }
1984
1984
 
1985
1985
  // define iterator
1986
1986
  if (IterablePrototype[ITERATOR$6] !== defaultIterator) {
1987
- defineBuiltIn$7(IterablePrototype, ITERATOR$6, defaultIterator, { name: DEFAULT });
1987
+ defineBuiltIn$8(IterablePrototype, ITERATOR$6, defaultIterator, { name: DEFAULT });
1988
1988
  }
1989
1989
  Iterators$3[NAME] = defaultIterator;
1990
1990
 
1991
1991
  return methods;
1992
1992
  };// `CreateIterResultObject` abstract operation
1993
1993
  // https://tc39.es/ecma262/#sec-createiterresultobject
1994
- var createIterResultObject$2 = function (value, done) {
1994
+ var createIterResultObject$3 = function (value, done) {
1995
1995
  return { value: value, done: done };
1996
1996
  };var toIndexedObject = toIndexedObject$5;
1997
1997
  var addToUnscopables = addToUnscopables$1;
1998
1998
  var Iterators$2 = iterators;
1999
- var InternalStateModule$6 = internalState;
1999
+ var InternalStateModule$7 = internalState;
2000
2000
  var defineProperty$6 = objectDefineProperty.f;
2001
2001
  var defineIterator$1 = iteratorDefine;
2002
- var createIterResultObject$1 = createIterResultObject$2;
2002
+ var createIterResultObject$2 = createIterResultObject$3;
2003
2003
  var DESCRIPTORS$9 = descriptors;
2004
2004
 
2005
2005
  var ARRAY_ITERATOR = 'Array Iterator';
2006
- var setInternalState$5 = InternalStateModule$6.set;
2007
- var getInternalState$4 = InternalStateModule$6.getterFor(ARRAY_ITERATOR);
2006
+ var setInternalState$6 = InternalStateModule$7.set;
2007
+ var getInternalState$5 = InternalStateModule$7.getterFor(ARRAY_ITERATOR);
2008
2008
 
2009
2009
  // `Array.prototype.entries` method
2010
2010
  // https://tc39.es/ecma262/#sec-array.prototype.entries
@@ -2017,7 +2017,7 @@ var getInternalState$4 = InternalStateModule$6.getterFor(ARRAY_ITERATOR);
2017
2017
  // `CreateArrayIterator` internal method
2018
2018
  // https://tc39.es/ecma262/#sec-createarrayiterator
2019
2019
  var es_array_iterator = defineIterator$1(Array, 'Array', function (iterated, kind) {
2020
- setInternalState$5(this, {
2020
+ setInternalState$6(this, {
2021
2021
  type: ARRAY_ITERATOR,
2022
2022
  target: toIndexedObject(iterated), // target
2023
2023
  index: 0, // next index
@@ -2026,17 +2026,17 @@ var es_array_iterator = defineIterator$1(Array, 'Array', function (iterated, kin
2026
2026
  // `%ArrayIteratorPrototype%.next` method
2027
2027
  // https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
2028
2028
  }, function () {
2029
- var state = getInternalState$4(this);
2029
+ var state = getInternalState$5(this);
2030
2030
  var target = state.target;
2031
2031
  var kind = state.kind;
2032
2032
  var index = state.index++;
2033
2033
  if (!target || index >= target.length) {
2034
2034
  state.target = undefined;
2035
- return createIterResultObject$1(undefined, true);
2035
+ return createIterResultObject$2(undefined, true);
2036
2036
  }
2037
- if (kind == 'keys') return createIterResultObject$1(index, false);
2038
- if (kind == 'values') return createIterResultObject$1(target[index], false);
2039
- return createIterResultObject$1([index, target[index]], false);
2037
+ if (kind == 'keys') return createIterResultObject$2(index, false);
2038
+ if (kind == 'values') return createIterResultObject$2(target[index], false);
2039
+ return createIterResultObject$2([index, target[index]], false);
2040
2040
  }, 'values');
2041
2041
 
2042
2042
  // argumentsList[@@iterator] is %ArrayProto_values%
@@ -2057,10 +2057,10 @@ var DOMIterables = domIterables;
2057
2057
  var DOMTokenListPrototype = domTokenListPrototype;
2058
2058
  var ArrayIteratorMethods = es_array_iterator;
2059
2059
  var createNonEnumerableProperty$5 = createNonEnumerableProperty$9;
2060
- var wellKnownSymbol$d = wellKnownSymbol$l;
2060
+ var wellKnownSymbol$e = wellKnownSymbol$m;
2061
2061
 
2062
- var ITERATOR$5 = wellKnownSymbol$d('iterator');
2063
- var TO_STRING_TAG$1 = wellKnownSymbol$d('toStringTag');
2062
+ var ITERATOR$5 = wellKnownSymbol$e('iterator');
2063
+ var TO_STRING_TAG$1 = wellKnownSymbol$e('toStringTag');
2064
2064
  var ArrayValues = ArrayIteratorMethods.values;
2065
2065
 
2066
2066
  var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {
@@ -2091,12 +2091,12 @@ for (var COLLECTION_NAME in DOMIterables) {
2091
2091
 
2092
2092
  handlePrototype(DOMTokenListPrototype, 'DOMTokenList');// a string of all valid unicode whitespaces
2093
2093
  var whitespaces$2 = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' +
2094
- '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';var uncurryThis$i = functionUncurryThis;
2095
- var requireObjectCoercible$2 = requireObjectCoercible$5;
2096
- var toString$6 = toString$8;
2094
+ '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';var uncurryThis$j = functionUncurryThis;
2095
+ var requireObjectCoercible$3 = requireObjectCoercible$6;
2096
+ var toString$7 = toString$9;
2097
2097
  var whitespaces$1 = whitespaces$2;
2098
2098
 
2099
- var replace$7 = uncurryThis$i(''.replace);
2099
+ var replace$7 = uncurryThis$j(''.replace);
2100
2100
  var whitespace$1 = '[' + whitespaces$1 + ']';
2101
2101
  var ltrim = RegExp('^' + whitespace$1 + whitespace$1 + '*');
2102
2102
  var rtrim = RegExp(whitespace$1 + whitespace$1 + '*$');
@@ -2104,7 +2104,7 @@ var rtrim = RegExp(whitespace$1 + whitespace$1 + '*$');
2104
2104
  // `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
2105
2105
  var createMethod$2 = function (TYPE) {
2106
2106
  return function ($this) {
2107
- var string = toString$6(requireObjectCoercible$2($this));
2107
+ var string = toString$7(requireObjectCoercible$3($this));
2108
2108
  if (TYPE & 1) string = replace$7(string, ltrim, '');
2109
2109
  if (TYPE & 2) string = replace$7(string, rtrim, '');
2110
2110
  return string;
@@ -2122,7 +2122,7 @@ var stringTrim = {
2122
2122
  // https://tc39.es/ecma262/#sec-string.prototype.trim
2123
2123
  trim: createMethod$2(3)
2124
2124
  };var PROPER_FUNCTION_NAME$1 = functionName.PROPER;
2125
- var fails$d = fails$r;
2125
+ var fails$e = fails$s;
2126
2126
  var whitespaces = whitespaces$2;
2127
2127
 
2128
2128
  var non = '\u200B\u0085\u180E';
@@ -2130,18 +2130,18 @@ var non = '\u200B\u0085\u180E';
2130
2130
  // check that a method works with the correct list
2131
2131
  // of whitespaces and has a correct name
2132
2132
  var stringTrimForced = function (METHOD_NAME) {
2133
- return fails$d(function () {
2133
+ return fails$e(function () {
2134
2134
  return !!whitespaces[METHOD_NAME]()
2135
2135
  || non[METHOD_NAME]() !== non
2136
2136
  || (PROPER_FUNCTION_NAME$1 && whitespaces[METHOD_NAME].name !== METHOD_NAME);
2137
2137
  });
2138
- };var $$7 = _export;
2138
+ };var $$8 = _export;
2139
2139
  var $trim = stringTrim.trim;
2140
2140
  var forcedStringTrimMethod = stringTrimForced;
2141
2141
 
2142
2142
  // `String.prototype.trim` method
2143
2143
  // https://tc39.es/ecma262/#sec-string.prototype.trim
2144
- $$7({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
2144
+ $$8({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
2145
2145
  trim: function trim() {
2146
2146
  return $trim(this);
2147
2147
  }
@@ -3263,20 +3263,20 @@ const getSource = function (sourceOptions) {
3263
3263
  };
3264
3264
 
3265
3265
  const getSourceText = source => [].concat(source).filter(item => item.type === 'text/vtt');// eslint-disable-next-line es/no-typed-arrays -- safe
3266
- var arrayBufferBasicDetection = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';var defineBuiltIn$6 = defineBuiltIn$a;
3266
+ var arrayBufferBasicDetection = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';var defineBuiltIn$7 = defineBuiltIn$b;
3267
3267
 
3268
3268
  var defineBuiltIns$2 = function (target, src, options) {
3269
- for (var key in src) defineBuiltIn$6(target, key, src[key], options);
3269
+ for (var key in src) defineBuiltIn$7(target, key, src[key], options);
3270
3270
  return target;
3271
3271
  };var isPrototypeOf$5 = objectIsPrototypeOf;
3272
3272
 
3273
- var $TypeError$7 = TypeError;
3273
+ var $TypeError$8 = TypeError;
3274
3274
 
3275
3275
  var anInstance$4 = function (it, Prototype) {
3276
3276
  if (isPrototypeOf$5(Prototype, it)) return it;
3277
- throw $TypeError$7('Incorrect invocation');
3277
+ throw $TypeError$8('Incorrect invocation');
3278
3278
  };var toIntegerOrInfinity$4 = toIntegerOrInfinity$7;
3279
- var toLength$4 = toLength$6;
3279
+ var toLength$5 = toLength$7;
3280
3280
 
3281
3281
  var $RangeError$3 = RangeError;
3282
3282
 
@@ -3285,7 +3285,7 @@ var $RangeError$3 = RangeError;
3285
3285
  var toIndex$2 = function (it) {
3286
3286
  if (it === undefined) return 0;
3287
3287
  var number = toIntegerOrInfinity$4(it);
3288
- var length = toLength$4(number);
3288
+ var length = toLength$5(number);
3289
3289
  if (number !== length) throw $RangeError$3('Wrong length or index');
3290
3290
  return length;
3291
3291
  };// IEEE754 conversions based on https://github.com/feross/ieee754
@@ -3428,16 +3428,16 @@ var arraySliceSimple = function (O, start, end) {
3428
3428
  result.length = n;
3429
3429
  return result;
3430
3430
  };var global$b = global$p;
3431
- var uncurryThis$h = functionUncurryThis;
3431
+ var uncurryThis$i = functionUncurryThis;
3432
3432
  var DESCRIPTORS$8 = descriptors;
3433
3433
  var NATIVE_ARRAY_BUFFER$1 = arrayBufferBasicDetection;
3434
3434
  var FunctionName = functionName;
3435
3435
  var createNonEnumerableProperty$4 = createNonEnumerableProperty$9;
3436
3436
  var defineBuiltIns$1 = defineBuiltIns$2;
3437
- var fails$c = fails$r;
3437
+ var fails$d = fails$s;
3438
3438
  var anInstance$3 = anInstance$4;
3439
3439
  var toIntegerOrInfinity$3 = toIntegerOrInfinity$7;
3440
- var toLength$3 = toLength$6;
3440
+ var toLength$4 = toLength$7;
3441
3441
  var toIndex$1 = toIndex$2;
3442
3442
  var IEEE754 = ieee754;
3443
3443
  var getPrototypeOf$1 = objectGetPrototypeOf;
@@ -3447,12 +3447,12 @@ var defineProperty$5 = objectDefineProperty.f;
3447
3447
  var arrayFill = arrayFill$1;
3448
3448
  var arraySlice$2 = arraySliceSimple;
3449
3449
  var setToStringTag$2 = setToStringTag$5;
3450
- var InternalStateModule$5 = internalState;
3450
+ var InternalStateModule$6 = internalState;
3451
3451
 
3452
3452
  var PROPER_FUNCTION_NAME = FunctionName.PROPER;
3453
3453
  var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
3454
- var getInternalState$3 = InternalStateModule$5.get;
3455
- var setInternalState$4 = InternalStateModule$5.set;
3454
+ var getInternalState$4 = InternalStateModule$6.get;
3455
+ var setInternalState$5 = InternalStateModule$6.set;
3456
3456
  var ARRAY_BUFFER = 'ArrayBuffer';
3457
3457
  var DATA_VIEW = 'DataView';
3458
3458
  var PROTOTYPE = 'prototype';
@@ -3466,8 +3466,8 @@ var DataViewPrototype$1 = $DataView && $DataView[PROTOTYPE];
3466
3466
  var ObjectPrototype$1 = Object.prototype;
3467
3467
  var Array$1 = global$b.Array;
3468
3468
  var RangeError$2 = global$b.RangeError;
3469
- var fill = uncurryThis$h(arrayFill);
3470
- var reverse = uncurryThis$h([].reverse);
3469
+ var fill = uncurryThis$i(arrayFill);
3470
+ var reverse = uncurryThis$i([].reverse);
3471
3471
 
3472
3472
  var packIEEE754 = IEEE754.pack;
3473
3473
  var unpackIEEE754 = IEEE754.unpack;
@@ -3497,14 +3497,14 @@ var packFloat64 = function (number) {
3497
3497
  };
3498
3498
 
3499
3499
  var addGetter$1 = function (Constructor, key) {
3500
- defineProperty$5(Constructor[PROTOTYPE], key, { get: function () { return getInternalState$3(this)[key]; } });
3500
+ defineProperty$5(Constructor[PROTOTYPE], key, { get: function () { return getInternalState$4(this)[key]; } });
3501
3501
  };
3502
3502
 
3503
3503
  var get = function (view, count, index, isLittleEndian) {
3504
3504
  var intIndex = toIndex$1(index);
3505
- var store = getInternalState$3(view);
3505
+ var store = getInternalState$4(view);
3506
3506
  if (intIndex + count > store.byteLength) throw RangeError$2(WRONG_INDEX);
3507
- var bytes = getInternalState$3(store.buffer).bytes;
3507
+ var bytes = getInternalState$4(store.buffer).bytes;
3508
3508
  var start = intIndex + store.byteOffset;
3509
3509
  var pack = arraySlice$2(bytes, start, start + count);
3510
3510
  return isLittleEndian ? pack : reverse(pack);
@@ -3512,9 +3512,9 @@ var get = function (view, count, index, isLittleEndian) {
3512
3512
 
3513
3513
  var set = function (view, count, index, conversion, value, isLittleEndian) {
3514
3514
  var intIndex = toIndex$1(index);
3515
- var store = getInternalState$3(view);
3515
+ var store = getInternalState$4(view);
3516
3516
  if (intIndex + count > store.byteLength) throw RangeError$2(WRONG_INDEX);
3517
- var bytes = getInternalState$3(store.buffer).bytes;
3517
+ var bytes = getInternalState$4(store.buffer).bytes;
3518
3518
  var start = intIndex + store.byteOffset;
3519
3519
  var pack = conversion(+value);
3520
3520
  for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1];
@@ -3524,7 +3524,7 @@ if (!NATIVE_ARRAY_BUFFER$1) {
3524
3524
  $ArrayBuffer = function ArrayBuffer(length) {
3525
3525
  anInstance$3(this, ArrayBufferPrototype$1);
3526
3526
  var byteLength = toIndex$1(length);
3527
- setInternalState$4(this, {
3527
+ setInternalState$5(this, {
3528
3528
  bytes: fill(Array$1(byteLength), 0),
3529
3529
  byteLength: byteLength
3530
3530
  });
@@ -3536,12 +3536,12 @@ if (!NATIVE_ARRAY_BUFFER$1) {
3536
3536
  $DataView = function DataView(buffer, byteOffset, byteLength) {
3537
3537
  anInstance$3(this, DataViewPrototype$1);
3538
3538
  anInstance$3(buffer, ArrayBufferPrototype$1);
3539
- var bufferLength = getInternalState$3(buffer).byteLength;
3539
+ var bufferLength = getInternalState$4(buffer).byteLength;
3540
3540
  var offset = toIntegerOrInfinity$3(byteOffset);
3541
3541
  if (offset < 0 || offset > bufferLength) throw RangeError$2('Wrong offset');
3542
- byteLength = byteLength === undefined ? bufferLength - offset : toLength$3(byteLength);
3542
+ byteLength = byteLength === undefined ? bufferLength - offset : toLength$4(byteLength);
3543
3543
  if (offset + byteLength > bufferLength) throw RangeError$2(WRONG_LENGTH$1);
3544
- setInternalState$4(this, {
3544
+ setInternalState$5(this, {
3545
3545
  buffer: buffer,
3546
3546
  byteLength: byteLength,
3547
3547
  byteOffset: offset
@@ -3617,11 +3617,11 @@ if (!NATIVE_ARRAY_BUFFER$1) {
3617
3617
  } else {
3618
3618
  var INCORRECT_ARRAY_BUFFER_NAME = PROPER_FUNCTION_NAME && NativeArrayBuffer.name !== ARRAY_BUFFER;
3619
3619
  /* eslint-disable no-new -- required for testing */
3620
- if (!fails$c(function () {
3620
+ if (!fails$d(function () {
3621
3621
  NativeArrayBuffer(1);
3622
- }) || !fails$c(function () {
3622
+ }) || !fails$d(function () {
3623
3623
  new NativeArrayBuffer(-1);
3624
- }) || fails$c(function () {
3624
+ }) || fails$d(function () {
3625
3625
  new NativeArrayBuffer();
3626
3626
  new NativeArrayBuffer(1.5);
3627
3627
  new NativeArrayBuffer(NaN);
@@ -3653,7 +3653,7 @@ if (!NATIVE_ARRAY_BUFFER$1) {
3653
3653
 
3654
3654
  // iOS Safari 7.x bug
3655
3655
  var testView = new $DataView(new $ArrayBuffer(2));
3656
- var $setInt8 = uncurryThis$h(DataViewPrototype$1.setInt8);
3656
+ var $setInt8 = uncurryThis$i(DataViewPrototype$1.setInt8);
3657
3657
  testView.setInt8(0, 2147483648);
3658
3658
  testView.setInt8(1, 2147483649);
3659
3659
  if (testView.getInt8(0) || !testView.getInt8(1)) defineBuiltIns$1(DataViewPrototype$1, {
@@ -3672,10 +3672,10 @@ setToStringTag$2($DataView, DATA_VIEW);
3672
3672
  var arrayBuffer = {
3673
3673
  ArrayBuffer: $ArrayBuffer,
3674
3674
  DataView: $DataView
3675
- };var uncurryThis$g = functionUncurryThis;
3676
- var fails$b = fails$r;
3675
+ };var uncurryThis$h = functionUncurryThis;
3676
+ var fails$c = fails$s;
3677
3677
  var isCallable$7 = isCallable$n;
3678
- var classof$8 = classof$a;
3678
+ var classof$9 = classof$b;
3679
3679
  var getBuiltIn$2 = getBuiltIn$7;
3680
3680
  var inspectSource = inspectSource$2;
3681
3681
 
@@ -3683,7 +3683,7 @@ var noop = function () { /* empty */ };
3683
3683
  var empty = [];
3684
3684
  var construct = getBuiltIn$2('Reflect', 'construct');
3685
3685
  var constructorRegExp = /^\s*(?:class|function)\b/;
3686
- var exec$3 = uncurryThis$g(constructorRegExp.exec);
3686
+ var exec$3 = uncurryThis$h(constructorRegExp.exec);
3687
3687
  var INCORRECT_TO_STRING = !constructorRegExp.exec(noop);
3688
3688
 
3689
3689
  var isConstructorModern = function isConstructor(argument) {
@@ -3698,7 +3698,7 @@ var isConstructorModern = function isConstructor(argument) {
3698
3698
 
3699
3699
  var isConstructorLegacy = function isConstructor(argument) {
3700
3700
  if (!isCallable$7(argument)) return false;
3701
- switch (classof$8(argument)) {
3701
+ switch (classof$9(argument)) {
3702
3702
  case 'AsyncFunction':
3703
3703
  case 'GeneratorFunction':
3704
3704
  case 'AsyncGeneratorFunction': return false;
@@ -3717,7 +3717,7 @@ isConstructorLegacy.sham = true;
3717
3717
 
3718
3718
  // `IsConstructor` abstract operation
3719
3719
  // https://tc39.es/ecma262/#sec-isconstructor
3720
- var isConstructor$3 = !construct || fails$b(function () {
3720
+ var isConstructor$3 = !construct || fails$c(function () {
3721
3721
  var called;
3722
3722
  return isConstructorModern(isConstructorModern.call)
3723
3723
  || !isConstructorModern(Object)
@@ -3726,56 +3726,56 @@ var isConstructor$3 = !construct || fails$b(function () {
3726
3726
  }) ? isConstructorLegacy : isConstructorModern;var isConstructor$2 = isConstructor$3;
3727
3727
  var tryToString$3 = tryToString$5;
3728
3728
 
3729
- var $TypeError$6 = TypeError;
3729
+ var $TypeError$7 = TypeError;
3730
3730
 
3731
3731
  // `Assert: IsConstructor(argument) is true`
3732
3732
  var aConstructor$2 = function (argument) {
3733
3733
  if (isConstructor$2(argument)) return argument;
3734
- throw $TypeError$6(tryToString$3(argument) + ' is not a constructor');
3735
- };var anObject$8 = anObject$f;
3734
+ throw $TypeError$7(tryToString$3(argument) + ' is not a constructor');
3735
+ };var anObject$9 = anObject$g;
3736
3736
  var aConstructor$1 = aConstructor$2;
3737
- var isNullOrUndefined$2 = isNullOrUndefined$5;
3738
- var wellKnownSymbol$c = wellKnownSymbol$l;
3737
+ var isNullOrUndefined$3 = isNullOrUndefined$6;
3738
+ var wellKnownSymbol$d = wellKnownSymbol$m;
3739
3739
 
3740
- var SPECIES$3 = wellKnownSymbol$c('species');
3740
+ var SPECIES$3 = wellKnownSymbol$d('species');
3741
3741
 
3742
3742
  // `SpeciesConstructor` abstract operation
3743
3743
  // https://tc39.es/ecma262/#sec-speciesconstructor
3744
- var speciesConstructor$2 = function (O, defaultConstructor) {
3745
- var C = anObject$8(O).constructor;
3744
+ var speciesConstructor$3 = function (O, defaultConstructor) {
3745
+ var C = anObject$9(O).constructor;
3746
3746
  var S;
3747
- return C === undefined || isNullOrUndefined$2(S = anObject$8(C)[SPECIES$3]) ? defaultConstructor : aConstructor$1(S);
3748
- };var $$6 = _export;
3749
- var uncurryThis$f = functionUncurryThis;
3750
- var fails$a = fails$r;
3747
+ return C === undefined || isNullOrUndefined$3(S = anObject$9(C)[SPECIES$3]) ? defaultConstructor : aConstructor$1(S);
3748
+ };var $$7 = _export;
3749
+ var uncurryThis$g = functionUncurryThis;
3750
+ var fails$b = fails$s;
3751
3751
  var ArrayBufferModule$1 = arrayBuffer;
3752
- var anObject$7 = anObject$f;
3752
+ var anObject$8 = anObject$g;
3753
3753
  var toAbsoluteIndex = toAbsoluteIndex$4;
3754
- var toLength$2 = toLength$6;
3755
- var speciesConstructor$1 = speciesConstructor$2;
3754
+ var toLength$3 = toLength$7;
3755
+ var speciesConstructor$2 = speciesConstructor$3;
3756
3756
 
3757
3757
  var ArrayBuffer$3 = ArrayBufferModule$1.ArrayBuffer;
3758
3758
  var DataView$2 = ArrayBufferModule$1.DataView;
3759
3759
  var DataViewPrototype = DataView$2.prototype;
3760
- var nativeArrayBufferSlice = uncurryThis$f(ArrayBuffer$3.prototype.slice);
3761
- var getUint8 = uncurryThis$f(DataViewPrototype.getUint8);
3762
- var setUint8 = uncurryThis$f(DataViewPrototype.setUint8);
3760
+ var nativeArrayBufferSlice = uncurryThis$g(ArrayBuffer$3.prototype.slice);
3761
+ var getUint8 = uncurryThis$g(DataViewPrototype.getUint8);
3762
+ var setUint8 = uncurryThis$g(DataViewPrototype.setUint8);
3763
3763
 
3764
- var INCORRECT_SLICE = fails$a(function () {
3764
+ var INCORRECT_SLICE = fails$b(function () {
3765
3765
  return !new ArrayBuffer$3(2).slice(1, undefined).byteLength;
3766
3766
  });
3767
3767
 
3768
3768
  // `ArrayBuffer.prototype.slice` method
3769
3769
  // https://tc39.es/ecma262/#sec-arraybuffer.prototype.slice
3770
- $$6({ target: 'ArrayBuffer', proto: true, unsafe: true, forced: INCORRECT_SLICE }, {
3770
+ $$7({ target: 'ArrayBuffer', proto: true, unsafe: true, forced: INCORRECT_SLICE }, {
3771
3771
  slice: function slice(start, end) {
3772
3772
  if (nativeArrayBufferSlice && end === undefined) {
3773
- return nativeArrayBufferSlice(anObject$7(this), start); // FF fix
3773
+ return nativeArrayBufferSlice(anObject$8(this), start); // FF fix
3774
3774
  }
3775
- var length = anObject$7(this).byteLength;
3775
+ var length = anObject$8(this).byteLength;
3776
3776
  var first = toAbsoluteIndex(start, length);
3777
3777
  var fin = toAbsoluteIndex(end === undefined ? length : end, length);
3778
- var result = new (speciesConstructor$1(this, ArrayBuffer$3))(toLength$2(fin - first));
3778
+ var result = new (speciesConstructor$2(this, ArrayBuffer$3))(toLength$3(fin - first));
3779
3779
  var viewSource = new DataView$2(this);
3780
3780
  var viewTarget = new DataView$2(result);
3781
3781
  var index = 0;
@@ -3783,9 +3783,9 @@ $$6({ target: 'ArrayBuffer', proto: true, unsafe: true, forced: INCORRECT_SLICE
3783
3783
  setUint8(viewTarget, index++, getUint8(viewSource, first++));
3784
3784
  } return result;
3785
3785
  }
3786
- });var typedArrayConstructor = {exports: {}};var wellKnownSymbol$b = wellKnownSymbol$l;
3786
+ });var typedArrayConstructor = {exports: {}};var wellKnownSymbol$c = wellKnownSymbol$m;
3787
3787
 
3788
- var ITERATOR$4 = wellKnownSymbol$b('iterator');
3788
+ var ITERATOR$4 = wellKnownSymbol$c('iterator');
3789
3789
  var SAFE_CLOSING = false;
3790
3790
 
3791
3791
  try {
@@ -3826,20 +3826,20 @@ var global$a = global$p;
3826
3826
  var isCallable$6 = isCallable$n;
3827
3827
  var isObject$7 = isObject$e;
3828
3828
  var hasOwn$6 = hasOwnProperty_1;
3829
- var classof$7 = classof$a;
3829
+ var classof$8 = classof$b;
3830
3830
  var tryToString$2 = tryToString$5;
3831
3831
  var createNonEnumerableProperty$3 = createNonEnumerableProperty$9;
3832
- var defineBuiltIn$5 = defineBuiltIn$a;
3832
+ var defineBuiltIn$6 = defineBuiltIn$b;
3833
3833
  var defineProperty$4 = objectDefineProperty.f;
3834
3834
  var isPrototypeOf$4 = objectIsPrototypeOf;
3835
3835
  var getPrototypeOf = objectGetPrototypeOf;
3836
3836
  var setPrototypeOf$2 = objectSetPrototypeOf;
3837
- var wellKnownSymbol$a = wellKnownSymbol$l;
3837
+ var wellKnownSymbol$b = wellKnownSymbol$m;
3838
3838
  var uid = uid$3;
3839
- var InternalStateModule$4 = internalState;
3839
+ var InternalStateModule$5 = internalState;
3840
3840
 
3841
- var enforceInternalState$2 = InternalStateModule$4.enforce;
3842
- var getInternalState$2 = InternalStateModule$4.get;
3841
+ var enforceInternalState$2 = InternalStateModule$5.enforce;
3842
+ var getInternalState$3 = InternalStateModule$5.get;
3843
3843
  var Int8Array$2 = global$a.Int8Array;
3844
3844
  var Int8ArrayPrototype = Int8Array$2 && Int8Array$2.prototype;
3845
3845
  var Uint8ClampedArray$1 = global$a.Uint8ClampedArray;
@@ -3849,11 +3849,11 @@ var TypedArrayPrototype$1 = Int8ArrayPrototype && getPrototypeOf(Int8ArrayProtot
3849
3849
  var ObjectPrototype = Object.prototype;
3850
3850
  var TypeError$3 = global$a.TypeError;
3851
3851
 
3852
- var TO_STRING_TAG = wellKnownSymbol$a('toStringTag');
3852
+ var TO_STRING_TAG = wellKnownSymbol$b('toStringTag');
3853
3853
  var TYPED_ARRAY_TAG$1 = uid('TYPED_ARRAY_TAG');
3854
3854
  var TYPED_ARRAY_CONSTRUCTOR = 'TypedArrayConstructor';
3855
3855
  // Fixing native typed arrays in Opera Presto crashes the browser, see #595
3856
- var NATIVE_ARRAY_BUFFER_VIEWS$2 = NATIVE_ARRAY_BUFFER && !!setPrototypeOf$2 && classof$7(global$a.opera) !== 'Opera';
3856
+ var NATIVE_ARRAY_BUFFER_VIEWS$2 = NATIVE_ARRAY_BUFFER && !!setPrototypeOf$2 && classof$8(global$a.opera) !== 'Opera';
3857
3857
  var TYPED_ARRAY_TAG_REQUIRED = false;
3858
3858
  var NAME, Constructor, Prototype;
3859
3859
 
@@ -3876,7 +3876,7 @@ var BigIntArrayConstructorsList = {
3876
3876
 
3877
3877
  var isView = function isView(it) {
3878
3878
  if (!isObject$7(it)) return false;
3879
- var klass = classof$7(it);
3879
+ var klass = classof$8(it);
3880
3880
  return klass === 'DataView'
3881
3881
  || hasOwn$6(TypedArrayConstructorsList, klass)
3882
3882
  || hasOwn$6(BigIntArrayConstructorsList, klass);
@@ -3885,13 +3885,13 @@ var isView = function isView(it) {
3885
3885
  var getTypedArrayConstructor = function (it) {
3886
3886
  var proto = getPrototypeOf(it);
3887
3887
  if (!isObject$7(proto)) return;
3888
- var state = getInternalState$2(proto);
3888
+ var state = getInternalState$3(proto);
3889
3889
  return (state && hasOwn$6(state, TYPED_ARRAY_CONSTRUCTOR)) ? state[TYPED_ARRAY_CONSTRUCTOR] : getTypedArrayConstructor(proto);
3890
3890
  };
3891
3891
 
3892
3892
  var isTypedArray$1 = function (it) {
3893
3893
  if (!isObject$7(it)) return false;
3894
- var klass = classof$7(it);
3894
+ var klass = classof$8(it);
3895
3895
  return hasOwn$6(TypedArrayConstructorsList, klass)
3896
3896
  || hasOwn$6(BigIntArrayConstructorsList, klass);
3897
3897
  };
@@ -3920,7 +3920,7 @@ var exportTypedArrayMethod$1 = function (KEY, property, forced, options) {
3920
3920
  }
3921
3921
  }
3922
3922
  if (!TypedArrayPrototype$1[KEY] || forced) {
3923
- defineBuiltIn$5(TypedArrayPrototype$1, KEY, forced ? property
3923
+ defineBuiltIn$6(TypedArrayPrototype$1, KEY, forced ? property
3924
3924
  : NATIVE_ARRAY_BUFFER_VIEWS$2 && Int8ArrayPrototype[KEY] || property, options);
3925
3925
  }
3926
3926
  };
@@ -3938,14 +3938,14 @@ var exportTypedArrayStaticMethod$1 = function (KEY, property, forced) {
3938
3938
  if (!TypedArray$1[KEY] || forced) {
3939
3939
  // V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable
3940
3940
  try {
3941
- return defineBuiltIn$5(TypedArray$1, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS$2 && TypedArray$1[KEY] || property);
3941
+ return defineBuiltIn$6(TypedArray$1, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS$2 && TypedArray$1[KEY] || property);
3942
3942
  } catch (error) { /* empty */ }
3943
3943
  } else return;
3944
3944
  }
3945
3945
  for (ARRAY in TypedArrayConstructorsList) {
3946
3946
  TypedArrayConstructor = global$a[ARRAY];
3947
3947
  if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {
3948
- defineBuiltIn$5(TypedArrayConstructor, KEY, property);
3948
+ defineBuiltIn$6(TypedArrayConstructor, KEY, property);
3949
3949
  }
3950
3950
  }
3951
3951
  };
@@ -4011,23 +4011,23 @@ var arrayBufferViewCore = {
4011
4011
  };/* eslint-disable no-new -- required for testing */
4012
4012
 
4013
4013
  var global$9 = global$p;
4014
- var fails$9 = fails$r;
4014
+ var fails$a = fails$s;
4015
4015
  var checkCorrectnessOfIteration = checkCorrectnessOfIteration$1;
4016
4016
  var NATIVE_ARRAY_BUFFER_VIEWS$1 = arrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS;
4017
4017
 
4018
4018
  var ArrayBuffer$2 = global$9.ArrayBuffer;
4019
4019
  var Int8Array$1 = global$9.Int8Array;
4020
4020
 
4021
- var typedArrayConstructorsRequireWrappers = !NATIVE_ARRAY_BUFFER_VIEWS$1 || !fails$9(function () {
4021
+ var typedArrayConstructorsRequireWrappers = !NATIVE_ARRAY_BUFFER_VIEWS$1 || !fails$a(function () {
4022
4022
  Int8Array$1(1);
4023
- }) || !fails$9(function () {
4023
+ }) || !fails$a(function () {
4024
4024
  new Int8Array$1(-1);
4025
4025
  }) || !checkCorrectnessOfIteration(function (iterable) {
4026
4026
  new Int8Array$1();
4027
4027
  new Int8Array$1(null);
4028
4028
  new Int8Array$1(1.5);
4029
4029
  new Int8Array$1(iterable);
4030
- }, true) || fails$9(function () {
4030
+ }, true) || fails$a(function () {
4031
4031
  // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill
4032
4032
  return new Int8Array$1(new ArrayBuffer$2(2), 1, undefined).length !== 1;
4033
4033
  });var isObject$6 = isObject$e;
@@ -4055,11 +4055,11 @@ var toOffset$1 = function (it, BYTES) {
4055
4055
  var offset = toPositiveInteger(it);
4056
4056
  if (offset % BYTES) throw $RangeError$1('Wrong offset');
4057
4057
  return offset;
4058
- };var uncurryThis$e = functionUncurryThis;
4058
+ };var uncurryThis$f = functionUncurryThis;
4059
4059
  var aCallable$4 = aCallable$6;
4060
4060
  var NATIVE_BIND$1 = functionBindNative;
4061
4061
 
4062
- var bind$5 = uncurryThis$e(uncurryThis$e.bind);
4062
+ var bind$5 = uncurryThis$f(uncurryThis$f.bind);
4063
4063
 
4064
4064
  // optional / simple context binding
4065
4065
  var functionBindContext = function (fn, that) {
@@ -4067,59 +4067,59 @@ var functionBindContext = function (fn, that) {
4067
4067
  return that === undefined ? fn : NATIVE_BIND$1 ? bind$5(fn, that) : function (/* ...args */) {
4068
4068
  return fn.apply(that, arguments);
4069
4069
  };
4070
- };var classof$6 = classof$a;
4071
- var getMethod$2 = getMethod$4;
4072
- var isNullOrUndefined$1 = isNullOrUndefined$5;
4070
+ };var classof$7 = classof$b;
4071
+ var getMethod$3 = getMethod$5;
4072
+ var isNullOrUndefined$2 = isNullOrUndefined$6;
4073
4073
  var Iterators$1 = iterators;
4074
- var wellKnownSymbol$9 = wellKnownSymbol$l;
4074
+ var wellKnownSymbol$a = wellKnownSymbol$m;
4075
4075
 
4076
- var ITERATOR$3 = wellKnownSymbol$9('iterator');
4076
+ var ITERATOR$3 = wellKnownSymbol$a('iterator');
4077
4077
 
4078
4078
  var getIteratorMethod$4 = function (it) {
4079
- if (!isNullOrUndefined$1(it)) return getMethod$2(it, ITERATOR$3)
4080
- || getMethod$2(it, '@@iterator')
4081
- || Iterators$1[classof$6(it)];
4082
- };var call$a = functionCall;
4079
+ if (!isNullOrUndefined$2(it)) return getMethod$3(it, ITERATOR$3)
4080
+ || getMethod$3(it, '@@iterator')
4081
+ || Iterators$1[classof$7(it)];
4082
+ };var call$b = functionCall;
4083
4083
  var aCallable$3 = aCallable$6;
4084
- var anObject$6 = anObject$f;
4084
+ var anObject$7 = anObject$g;
4085
4085
  var tryToString$1 = tryToString$5;
4086
4086
  var getIteratorMethod$3 = getIteratorMethod$4;
4087
4087
 
4088
- var $TypeError$5 = TypeError;
4088
+ var $TypeError$6 = TypeError;
4089
4089
 
4090
4090
  var getIterator$3 = function (argument, usingIterator) {
4091
4091
  var iteratorMethod = arguments.length < 2 ? getIteratorMethod$3(argument) : usingIterator;
4092
- if (aCallable$3(iteratorMethod)) return anObject$6(call$a(iteratorMethod, argument));
4093
- throw $TypeError$5(tryToString$1(argument) + ' is not iterable');
4094
- };var wellKnownSymbol$8 = wellKnownSymbol$l;
4092
+ if (aCallable$3(iteratorMethod)) return anObject$7(call$b(iteratorMethod, argument));
4093
+ throw $TypeError$6(tryToString$1(argument) + ' is not iterable');
4094
+ };var wellKnownSymbol$9 = wellKnownSymbol$m;
4095
4095
  var Iterators = iterators;
4096
4096
 
4097
- var ITERATOR$2 = wellKnownSymbol$8('iterator');
4097
+ var ITERATOR$2 = wellKnownSymbol$9('iterator');
4098
4098
  var ArrayPrototype = Array.prototype;
4099
4099
 
4100
4100
  // check on default Array iterator
4101
4101
  var isArrayIteratorMethod$2 = function (it) {
4102
4102
  return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR$2] === it);
4103
- };var classof$5 = classof$a;
4104
- var uncurryThis$d = functionUncurryThis;
4103
+ };var classof$6 = classof$b;
4104
+ var uncurryThis$e = functionUncurryThis;
4105
4105
 
4106
- var slice$1 = uncurryThis$d(''.slice);
4106
+ var slice$1 = uncurryThis$e(''.slice);
4107
4107
 
4108
4108
  var isBigIntArray$1 = function (it) {
4109
- return slice$1(classof$5(it), 0, 3) === 'Big';
4109
+ return slice$1(classof$6(it), 0, 3) === 'Big';
4110
4110
  };var toPrimitive = toPrimitive$2;
4111
4111
 
4112
- var $TypeError$4 = TypeError;
4112
+ var $TypeError$5 = TypeError;
4113
4113
 
4114
4114
  // `ToBigInt` abstract operation
4115
4115
  // https://tc39.es/ecma262/#sec-tobigint
4116
4116
  var toBigInt$1 = function (argument) {
4117
4117
  var prim = toPrimitive(argument, 'number');
4118
- if (typeof prim == 'number') throw $TypeError$4("Can't convert number to bigint");
4118
+ if (typeof prim == 'number') throw $TypeError$5("Can't convert number to bigint");
4119
4119
  // eslint-disable-next-line es/no-bigint -- safe
4120
4120
  return BigInt(prim);
4121
4121
  };var bind$4 = functionBindContext;
4122
- var call$9 = functionCall;
4122
+ var call$a = functionCall;
4123
4123
  var aConstructor = aConstructor$2;
4124
4124
  var toObject$5 = toObject$a;
4125
4125
  var lengthOfArrayLike$3 = lengthOfArrayLike$7;
@@ -4142,7 +4142,7 @@ var typedArrayFrom$2 = function from(source /* , mapfn, thisArg */) {
4142
4142
  iterator = getIterator$2(O, iteratorMethod);
4143
4143
  next = iterator.next;
4144
4144
  O = [];
4145
- while (!(step = call$9(next, iterator)).done) {
4145
+ while (!(step = call$a(next, iterator)).done) {
4146
4146
  O.push(step.value);
4147
4147
  }
4148
4148
  }
@@ -4158,19 +4158,19 @@ var typedArrayFrom$2 = function from(source /* , mapfn, thisArg */) {
4158
4158
  result[i] = thisIsBigIntArray ? toBigInt(value) : +value;
4159
4159
  }
4160
4160
  return result;
4161
- };var classof$4 = classofRaw$2;
4161
+ };var classof$5 = classofRaw$2;
4162
4162
 
4163
4163
  // `IsArray` abstract operation
4164
4164
  // https://tc39.es/ecma262/#sec-isarray
4165
4165
  // eslint-disable-next-line es/no-array-isarray -- safe
4166
4166
  var isArray$1 = Array.isArray || function isArray(argument) {
4167
- return classof$4(argument) == 'Array';
4167
+ return classof$5(argument) == 'Array';
4168
4168
  };var isArray = isArray$1;
4169
4169
  var isConstructor$1 = isConstructor$3;
4170
4170
  var isObject$5 = isObject$e;
4171
- var wellKnownSymbol$7 = wellKnownSymbol$l;
4171
+ var wellKnownSymbol$8 = wellKnownSymbol$m;
4172
4172
 
4173
- var SPECIES$2 = wellKnownSymbol$7('species');
4173
+ var SPECIES$2 = wellKnownSymbol$8('species');
4174
4174
  var $Array$1 = Array;
4175
4175
 
4176
4176
  // a part of `ArraySpeciesCreate` abstract operation
@@ -4193,13 +4193,13 @@ var arraySpeciesConstructor$1 = function (originalArray) {
4193
4193
  var arraySpeciesCreate$1 = function (originalArray, length) {
4194
4194
  return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
4195
4195
  };var bind$3 = functionBindContext;
4196
- var uncurryThis$c = functionUncurryThis;
4196
+ var uncurryThis$d = functionUncurryThis;
4197
4197
  var IndexedObject$1 = indexedObject;
4198
4198
  var toObject$4 = toObject$a;
4199
4199
  var lengthOfArrayLike$2 = lengthOfArrayLike$7;
4200
4200
  var arraySpeciesCreate = arraySpeciesCreate$1;
4201
4201
 
4202
- var push$5 = uncurryThis$c([].push);
4202
+ var push$5 = uncurryThis$d([].push);
4203
4203
 
4204
4204
  // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation
4205
4205
  var createMethod$1 = function (TYPE) {
@@ -4266,10 +4266,10 @@ var arrayIteration = {
4266
4266
  filterReject: createMethod$1(7)
4267
4267
  };var getBuiltIn$1 = getBuiltIn$7;
4268
4268
  var definePropertyModule$1 = objectDefineProperty;
4269
- var wellKnownSymbol$6 = wellKnownSymbol$l;
4269
+ var wellKnownSymbol$7 = wellKnownSymbol$m;
4270
4270
  var DESCRIPTORS$6 = descriptors;
4271
4271
 
4272
- var SPECIES$1 = wellKnownSymbol$6('species');
4272
+ var SPECIES$1 = wellKnownSymbol$7('species');
4273
4273
 
4274
4274
  var setSpecies$2 = function (CONSTRUCTOR_NAME) {
4275
4275
  var Constructor = getBuiltIn$1(CONSTRUCTOR_NAME);
@@ -4298,9 +4298,9 @@ var inheritIfRequired$2 = function ($this, dummy, Wrapper) {
4298
4298
  NewTargetPrototype !== Wrapper.prototype
4299
4299
  ) setPrototypeOf$1($this, NewTargetPrototype);
4300
4300
  return $this;
4301
- };var $$5 = _export;
4301
+ };var $$6 = _export;
4302
4302
  var global$8 = global$p;
4303
- var call$8 = functionCall;
4303
+ var call$9 = functionCall;
4304
4304
  var DESCRIPTORS$5 = descriptors;
4305
4305
  var TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS$1 = typedArrayConstructorsRequireWrappers;
4306
4306
  var ArrayBufferViewCore$1 = arrayBufferViewCore;
@@ -4309,12 +4309,12 @@ var anInstance$2 = anInstance$4;
4309
4309
  var createPropertyDescriptor$1 = createPropertyDescriptor$6;
4310
4310
  var createNonEnumerableProperty$2 = createNonEnumerableProperty$9;
4311
4311
  var isIntegralNumber = isIntegralNumber$1;
4312
- var toLength$1 = toLength$6;
4312
+ var toLength$2 = toLength$7;
4313
4313
  var toIndex = toIndex$2;
4314
4314
  var toOffset = toOffset$1;
4315
4315
  var toPropertyKey = toPropertyKey$4;
4316
4316
  var hasOwn$5 = hasOwnProperty_1;
4317
- var classof$3 = classof$a;
4317
+ var classof$4 = classof$b;
4318
4318
  var isObject$3 = isObject$e;
4319
4319
  var isSymbol = isSymbol$3;
4320
4320
  var create$1 = objectCreate;
@@ -4326,12 +4326,12 @@ var forEach = arrayIteration.forEach;
4326
4326
  var setSpecies$1 = setSpecies$2;
4327
4327
  var definePropertyModule = objectDefineProperty;
4328
4328
  var getOwnPropertyDescriptorModule = objectGetOwnPropertyDescriptor;
4329
- var InternalStateModule$3 = internalState;
4329
+ var InternalStateModule$4 = internalState;
4330
4330
  var inheritIfRequired$1 = inheritIfRequired$2;
4331
4331
 
4332
- var getInternalState$1 = InternalStateModule$3.get;
4333
- var setInternalState$3 = InternalStateModule$3.set;
4334
- var enforceInternalState$1 = InternalStateModule$3.enforce;
4332
+ var getInternalState$2 = InternalStateModule$4.get;
4333
+ var setInternalState$4 = InternalStateModule$4.set;
4334
+ var enforceInternalState$1 = InternalStateModule$4.enforce;
4335
4335
  var nativeDefineProperty = definePropertyModule.f;
4336
4336
  var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
4337
4337
  var round = Math.round;
@@ -4359,13 +4359,13 @@ var fromList = function (C, list) {
4359
4359
 
4360
4360
  var addGetter = function (it, key) {
4361
4361
  nativeDefineProperty(it, key, { get: function () {
4362
- return getInternalState$1(this)[key];
4362
+ return getInternalState$2(this)[key];
4363
4363
  } });
4364
4364
  };
4365
4365
 
4366
4366
  var isArrayBuffer = function (it) {
4367
4367
  var klass;
4368
- return isPrototypeOf$3(ArrayBufferPrototype, it) || (klass = classof$3(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer';
4368
+ return isPrototypeOf$3(ArrayBufferPrototype, it) || (klass = classof$4(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer';
4369
4369
  };
4370
4370
 
4371
4371
  var isTypedArrayIndex = function (target, key) {
@@ -4410,7 +4410,7 @@ if (DESCRIPTORS$5) {
4410
4410
  addGetter(TypedArrayPrototype, 'length');
4411
4411
  }
4412
4412
 
4413
- $$5({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, {
4413
+ $$6({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, {
4414
4414
  getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor,
4415
4415
  defineProperty: wrappedDefineProperty
4416
4416
  });
@@ -4426,12 +4426,12 @@ if (DESCRIPTORS$5) {
4426
4426
  var exported = {};
4427
4427
 
4428
4428
  var getter = function (that, index) {
4429
- var data = getInternalState$1(that);
4429
+ var data = getInternalState$2(that);
4430
4430
  return data.view[GETTER](index * BYTES + data.byteOffset, true);
4431
4431
  };
4432
4432
 
4433
4433
  var setter = function (that, index, value) {
4434
- var data = getInternalState$1(that);
4434
+ var data = getInternalState$2(that);
4435
4435
  if (CLAMPED) value = (value = round(value)) < 0 ? 0 : value > 0xFF ? 0xFF : value & 0xFF;
4436
4436
  data.view[SETTER](index * BYTES + data.byteOffset, value, true);
4437
4437
  };
@@ -4467,16 +4467,16 @@ if (DESCRIPTORS$5) {
4467
4467
  byteLength = $len - byteOffset;
4468
4468
  if (byteLength < 0) throw RangeError$1(WRONG_LENGTH);
4469
4469
  } else {
4470
- byteLength = toLength$1($length) * BYTES;
4470
+ byteLength = toLength$2($length) * BYTES;
4471
4471
  if (byteLength + byteOffset > $len) throw RangeError$1(WRONG_LENGTH);
4472
4472
  }
4473
4473
  length = byteLength / BYTES;
4474
4474
  } else if (isTypedArray(data)) {
4475
4475
  return fromList(TypedArrayConstructor, data);
4476
4476
  } else {
4477
- return call$8(typedArrayFrom$1, TypedArrayConstructor, data);
4477
+ return call$9(typedArrayFrom$1, TypedArrayConstructor, data);
4478
4478
  }
4479
- setInternalState$3(that, {
4479
+ setInternalState$4(that, {
4480
4480
  buffer: buffer,
4481
4481
  byteOffset: byteOffset,
4482
4482
  byteLength: byteLength,
@@ -4499,7 +4499,7 @@ if (DESCRIPTORS$5) {
4499
4499
  ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES))
4500
4500
  : new NativeTypedArrayConstructor(data);
4501
4501
  if (isTypedArray(data)) return fromList(TypedArrayConstructor, data);
4502
- return call$8(typedArrayFrom$1, TypedArrayConstructor, data);
4502
+ return call$9(typedArrayFrom$1, TypedArrayConstructor, data);
4503
4503
  }(), dummy, TypedArrayConstructor);
4504
4504
  });
4505
4505
 
@@ -4526,7 +4526,7 @@ if (DESCRIPTORS$5) {
4526
4526
 
4527
4527
  exported[CONSTRUCTOR_NAME] = TypedArrayConstructor;
4528
4528
 
4529
- $$5({ global: true, constructor: true, forced: FORCED, sham: !NATIVE_ARRAY_BUFFER_VIEWS }, exported);
4529
+ $$6({ global: true, constructor: true, forced: FORCED, sham: !NATIVE_ARRAY_BUFFER_VIEWS }, exported);
4530
4530
 
4531
4531
  if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) {
4532
4532
  createNonEnumerableProperty$2(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES);
@@ -4600,8 +4600,8 @@ var engineIsIeOrEdge = /MSIE|Trident/.test(UA);var userAgent = engineUserAgent;
4600
4600
  var webkit = userAgent.match(/AppleWebKit\/(\d+)\./);
4601
4601
 
4602
4602
  var engineWebkitVersion = !!webkit && +webkit[1];var global$7 = global$p;
4603
- var uncurryThis$b = functionUncurryThis;
4604
- var fails$8 = fails$r;
4603
+ var uncurryThis$c = functionUncurryThis;
4604
+ var fails$9 = fails$s;
4605
4605
  var aCallable$2 = aCallable$6;
4606
4606
  var internalSort$1 = arraySort$1;
4607
4607
  var ArrayBufferViewCore = arrayBufferViewCore;
@@ -4613,16 +4613,16 @@ var WEBKIT$2 = engineWebkitVersion;
4613
4613
  var aTypedArray = ArrayBufferViewCore.aTypedArray;
4614
4614
  var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
4615
4615
  var Uint16Array$1 = global$7.Uint16Array;
4616
- var nativeSort$1 = Uint16Array$1 && uncurryThis$b(Uint16Array$1.prototype.sort);
4616
+ var nativeSort$1 = Uint16Array$1 && uncurryThis$c(Uint16Array$1.prototype.sort);
4617
4617
 
4618
4618
  // WebKit
4619
- var ACCEPT_INCORRECT_ARGUMENTS = !!nativeSort$1 && !(fails$8(function () {
4619
+ var ACCEPT_INCORRECT_ARGUMENTS = !!nativeSort$1 && !(fails$9(function () {
4620
4620
  nativeSort$1(new Uint16Array$1(2), null);
4621
- }) && fails$8(function () {
4621
+ }) && fails$9(function () {
4622
4622
  nativeSort$1(new Uint16Array$1(2), {});
4623
4623
  }));
4624
4624
 
4625
- var STABLE_SORT$1 = !!nativeSort$1 && !fails$8(function () {
4625
+ var STABLE_SORT$1 = !!nativeSort$1 && !fails$9(function () {
4626
4626
  // feature detection can be too slow, so check engines versions
4627
4627
  if (V8$1) return V8$1 < 74;
4628
4628
  if (FF$1) return FF$1 < 67;
@@ -4671,34 +4671,34 @@ exportTypedArrayMethod('sort', function sort(comparefn) {
4671
4671
 
4672
4672
  var FunctionPrototype = Function.prototype;
4673
4673
  var apply$1 = FunctionPrototype.apply;
4674
- var call$7 = FunctionPrototype.call;
4674
+ var call$8 = FunctionPrototype.call;
4675
4675
 
4676
4676
  // eslint-disable-next-line es/no-reflect -- safe
4677
- var functionApply = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call$7.bind(apply$1) : function () {
4678
- return call$7.apply(apply$1, arguments);
4677
+ var functionApply = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call$8.bind(apply$1) : function () {
4678
+ return call$8.apply(apply$1, arguments);
4679
4679
  });// TODO: Remove from `core-js@4` since it's moved to entry points
4680
4680
 
4681
- var uncurryThis$a = functionUncurryThis;
4682
- var defineBuiltIn$4 = defineBuiltIn$a;
4681
+ var uncurryThis$b = functionUncurryThis;
4682
+ var defineBuiltIn$5 = defineBuiltIn$b;
4683
4683
  var regexpExec$1 = regexpExec$2;
4684
- var fails$7 = fails$r;
4685
- var wellKnownSymbol$5 = wellKnownSymbol$l;
4684
+ var fails$8 = fails$s;
4685
+ var wellKnownSymbol$6 = wellKnownSymbol$m;
4686
4686
  var createNonEnumerableProperty$1 = createNonEnumerableProperty$9;
4687
4687
 
4688
- var SPECIES = wellKnownSymbol$5('species');
4689
- var RegExpPrototype$2 = RegExp.prototype;
4688
+ var SPECIES = wellKnownSymbol$6('species');
4689
+ var RegExpPrototype$3 = RegExp.prototype;
4690
4690
 
4691
4691
  var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
4692
- var SYMBOL = wellKnownSymbol$5(KEY);
4692
+ var SYMBOL = wellKnownSymbol$6(KEY);
4693
4693
 
4694
- var DELEGATES_TO_SYMBOL = !fails$7(function () {
4694
+ var DELEGATES_TO_SYMBOL = !fails$8(function () {
4695
4695
  // String methods call symbol-named RegEp methods
4696
4696
  var O = {};
4697
4697
  O[SYMBOL] = function () { return 7; };
4698
4698
  return ''[KEY](O) != 7;
4699
4699
  });
4700
4700
 
4701
- var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails$7(function () {
4701
+ var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails$8(function () {
4702
4702
  // Symbol-named RegExp methods call .exec
4703
4703
  var execCalled = false;
4704
4704
  var re = /a/;
@@ -4727,11 +4727,11 @@ var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
4727
4727
  !DELEGATES_TO_EXEC ||
4728
4728
  FORCED
4729
4729
  ) {
4730
- var uncurriedNativeRegExpMethod = uncurryThis$a(/./[SYMBOL]);
4730
+ var uncurriedNativeRegExpMethod = uncurryThis$b(/./[SYMBOL]);
4731
4731
  var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
4732
- var uncurriedNativeMethod = uncurryThis$a(nativeMethod);
4732
+ var uncurriedNativeMethod = uncurryThis$b(nativeMethod);
4733
4733
  var $exec = regexp.exec;
4734
- if ($exec === regexpExec$1 || $exec === RegExpPrototype$2.exec) {
4734
+ if ($exec === regexpExec$1 || $exec === RegExpPrototype$3.exec) {
4735
4735
  if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
4736
4736
  // The native String method already delegates to @@method (this
4737
4737
  // polyfilled function), leasing to infinite recursion.
@@ -4743,23 +4743,23 @@ var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
4743
4743
  return { done: false };
4744
4744
  });
4745
4745
 
4746
- defineBuiltIn$4(String.prototype, KEY, methods[0]);
4747
- defineBuiltIn$4(RegExpPrototype$2, SYMBOL, methods[1]);
4746
+ defineBuiltIn$5(String.prototype, KEY, methods[0]);
4747
+ defineBuiltIn$5(RegExpPrototype$3, SYMBOL, methods[1]);
4748
4748
  }
4749
4749
 
4750
- if (SHAM) createNonEnumerableProperty$1(RegExpPrototype$2[SYMBOL], 'sham', true);
4751
- };var uncurryThis$9 = functionUncurryThis;
4750
+ if (SHAM) createNonEnumerableProperty$1(RegExpPrototype$3[SYMBOL], 'sham', true);
4751
+ };var uncurryThis$a = functionUncurryThis;
4752
4752
  var toIntegerOrInfinity$1 = toIntegerOrInfinity$7;
4753
- var toString$5 = toString$8;
4754
- var requireObjectCoercible$1 = requireObjectCoercible$5;
4753
+ var toString$6 = toString$9;
4754
+ var requireObjectCoercible$2 = requireObjectCoercible$6;
4755
4755
 
4756
- var charAt$6 = uncurryThis$9(''.charAt);
4757
- var charCodeAt$1 = uncurryThis$9(''.charCodeAt);
4758
- var stringSlice$6 = uncurryThis$9(''.slice);
4756
+ var charAt$6 = uncurryThis$a(''.charAt);
4757
+ var charCodeAt$1 = uncurryThis$a(''.charCodeAt);
4758
+ var stringSlice$6 = uncurryThis$a(''.slice);
4759
4759
 
4760
4760
  var createMethod = function (CONVERT_TO_STRING) {
4761
4761
  return function ($this, pos) {
4762
- var S = toString$5(requireObjectCoercible$1($this));
4762
+ var S = toString$6(requireObjectCoercible$2($this));
4763
4763
  var position = toIntegerOrInfinity$1(pos);
4764
4764
  var size = S.length;
4765
4765
  var first, second;
@@ -4787,15 +4787,15 @@ var stringMultibyte = {
4787
4787
 
4788
4788
  // `AdvanceStringIndex` abstract operation
4789
4789
  // https://tc39.es/ecma262/#sec-advancestringindex
4790
- var advanceStringIndex$1 = function (S, index, unicode) {
4790
+ var advanceStringIndex$2 = function (S, index, unicode) {
4791
4791
  return index + (unicode ? charAt$5(S, index).length : 1);
4792
- };var uncurryThis$8 = functionUncurryThis;
4792
+ };var uncurryThis$9 = functionUncurryThis;
4793
4793
  var toObject$3 = toObject$a;
4794
4794
 
4795
4795
  var floor$2 = Math.floor;
4796
- var charAt$4 = uncurryThis$8(''.charAt);
4797
- var replace$6 = uncurryThis$8(''.replace);
4798
- var stringSlice$5 = uncurryThis$8(''.slice);
4796
+ var charAt$4 = uncurryThis$9(''.charAt);
4797
+ var replace$6 = uncurryThis$9(''.replace);
4798
+ var stringSlice$5 = uncurryThis$9(''.slice);
4799
4799
  var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g;
4800
4800
  var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g;
4801
4801
 
@@ -4832,50 +4832,50 @@ var getSubstitution$1 = function (matched, str, position, captures, namedCapture
4832
4832
  }
4833
4833
  return capture === undefined ? '' : capture;
4834
4834
  });
4835
- };var call$6 = functionCall;
4836
- var anObject$5 = anObject$f;
4835
+ };var call$7 = functionCall;
4836
+ var anObject$6 = anObject$g;
4837
4837
  var isCallable$4 = isCallable$n;
4838
- var classof$2 = classofRaw$2;
4838
+ var classof$3 = classofRaw$2;
4839
4839
  var regexpExec = regexpExec$2;
4840
4840
 
4841
- var $TypeError$3 = TypeError;
4841
+ var $TypeError$4 = TypeError;
4842
4842
 
4843
4843
  // `RegExpExec` abstract operation
4844
4844
  // https://tc39.es/ecma262/#sec-regexpexec
4845
4845
  var regexpExecAbstract = function (R, S) {
4846
4846
  var exec = R.exec;
4847
4847
  if (isCallable$4(exec)) {
4848
- var result = call$6(exec, R, S);
4849
- if (result !== null) anObject$5(result);
4848
+ var result = call$7(exec, R, S);
4849
+ if (result !== null) anObject$6(result);
4850
4850
  return result;
4851
4851
  }
4852
- if (classof$2(R) === 'RegExp') return call$6(regexpExec, R, S);
4853
- throw $TypeError$3('RegExp#exec called on incompatible receiver');
4852
+ if (classof$3(R) === 'RegExp') return call$7(regexpExec, R, S);
4853
+ throw $TypeError$4('RegExp#exec called on incompatible receiver');
4854
4854
  };var apply = functionApply;
4855
- var call$5 = functionCall;
4856
- var uncurryThis$7 = functionUncurryThis;
4855
+ var call$6 = functionCall;
4856
+ var uncurryThis$8 = functionUncurryThis;
4857
4857
  var fixRegExpWellKnownSymbolLogic = fixRegexpWellKnownSymbolLogic;
4858
- var fails$6 = fails$r;
4859
- var anObject$4 = anObject$f;
4858
+ var fails$7 = fails$s;
4859
+ var anObject$5 = anObject$g;
4860
4860
  var isCallable$3 = isCallable$n;
4861
- var isNullOrUndefined = isNullOrUndefined$5;
4861
+ var isNullOrUndefined$1 = isNullOrUndefined$6;
4862
4862
  var toIntegerOrInfinity = toIntegerOrInfinity$7;
4863
- var toLength = toLength$6;
4864
- var toString$4 = toString$8;
4865
- var requireObjectCoercible = requireObjectCoercible$5;
4866
- var advanceStringIndex = advanceStringIndex$1;
4867
- var getMethod$1 = getMethod$4;
4863
+ var toLength$1 = toLength$7;
4864
+ var toString$5 = toString$9;
4865
+ var requireObjectCoercible$1 = requireObjectCoercible$6;
4866
+ var advanceStringIndex$1 = advanceStringIndex$2;
4867
+ var getMethod$2 = getMethod$5;
4868
4868
  var getSubstitution = getSubstitution$1;
4869
- var regExpExec = regexpExecAbstract;
4870
- var wellKnownSymbol$4 = wellKnownSymbol$l;
4869
+ var regExpExec$1 = regexpExecAbstract;
4870
+ var wellKnownSymbol$5 = wellKnownSymbol$m;
4871
4871
 
4872
- var REPLACE = wellKnownSymbol$4('replace');
4872
+ var REPLACE = wellKnownSymbol$5('replace');
4873
4873
  var max = Math.max;
4874
4874
  var min = Math.min;
4875
- var concat$1 = uncurryThis$7([].concat);
4876
- var push$4 = uncurryThis$7([].push);
4877
- var stringIndexOf$1 = uncurryThis$7(''.indexOf);
4878
- var stringSlice$4 = uncurryThis$7(''.slice);
4875
+ var concat$1 = uncurryThis$8([].concat);
4876
+ var push$4 = uncurryThis$8([].push);
4877
+ var stringIndexOf$2 = uncurryThis$8(''.indexOf);
4878
+ var stringSlice$4 = uncurryThis$8(''.slice);
4879
4879
 
4880
4880
  var maybeToString = function (it) {
4881
4881
  return it === undefined ? it : String(it);
@@ -4896,7 +4896,7 @@ var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
4896
4896
  return false;
4897
4897
  })();
4898
4898
 
4899
- var REPLACE_SUPPORTS_NAMED_GROUPS = !fails$6(function () {
4899
+ var REPLACE_SUPPORTS_NAMED_GROUPS = !fails$7(function () {
4900
4900
  var re = /./;
4901
4901
  re.exec = function () {
4902
4902
  var result = [];
@@ -4915,29 +4915,29 @@ fixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNa
4915
4915
  // `String.prototype.replace` method
4916
4916
  // https://tc39.es/ecma262/#sec-string.prototype.replace
4917
4917
  function replace(searchValue, replaceValue) {
4918
- var O = requireObjectCoercible(this);
4919
- var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod$1(searchValue, REPLACE);
4918
+ var O = requireObjectCoercible$1(this);
4919
+ var replacer = isNullOrUndefined$1(searchValue) ? undefined : getMethod$2(searchValue, REPLACE);
4920
4920
  return replacer
4921
- ? call$5(replacer, searchValue, O, replaceValue)
4922
- : call$5(nativeReplace, toString$4(O), searchValue, replaceValue);
4921
+ ? call$6(replacer, searchValue, O, replaceValue)
4922
+ : call$6(nativeReplace, toString$5(O), searchValue, replaceValue);
4923
4923
  },
4924
4924
  // `RegExp.prototype[@@replace]` method
4925
4925
  // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
4926
4926
  function (string, replaceValue) {
4927
- var rx = anObject$4(this);
4928
- var S = toString$4(string);
4927
+ var rx = anObject$5(this);
4928
+ var S = toString$5(string);
4929
4929
 
4930
4930
  if (
4931
4931
  typeof replaceValue == 'string' &&
4932
- stringIndexOf$1(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&
4933
- stringIndexOf$1(replaceValue, '$<') === -1
4932
+ stringIndexOf$2(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&
4933
+ stringIndexOf$2(replaceValue, '$<') === -1
4934
4934
  ) {
4935
4935
  var res = maybeCallNative(nativeReplace, rx, S, replaceValue);
4936
4936
  if (res.done) return res.value;
4937
4937
  }
4938
4938
 
4939
4939
  var functionalReplace = isCallable$3(replaceValue);
4940
- if (!functionalReplace) replaceValue = toString$4(replaceValue);
4940
+ if (!functionalReplace) replaceValue = toString$5(replaceValue);
4941
4941
 
4942
4942
  var global = rx.global;
4943
4943
  if (global) {
@@ -4946,14 +4946,14 @@ fixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNa
4946
4946
  }
4947
4947
  var results = [];
4948
4948
  while (true) {
4949
- var result = regExpExec(rx, S);
4949
+ var result = regExpExec$1(rx, S);
4950
4950
  if (result === null) break;
4951
4951
 
4952
4952
  push$4(results, result);
4953
4953
  if (!global) break;
4954
4954
 
4955
- var matchStr = toString$4(result[0]);
4956
- if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
4955
+ var matchStr = toString$5(result[0]);
4956
+ if (matchStr === '') rx.lastIndex = advanceStringIndex$1(S, toLength$1(rx.lastIndex), fullUnicode);
4957
4957
  }
4958
4958
 
4959
4959
  var accumulatedResult = '';
@@ -4961,7 +4961,7 @@ fixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNa
4961
4961
  for (var i = 0; i < results.length; i++) {
4962
4962
  result = results[i];
4963
4963
 
4964
- var matched = toString$4(result[0]);
4964
+ var matched = toString$5(result[0]);
4965
4965
  var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);
4966
4966
  var captures = [];
4967
4967
  // NOTE: This is equivalent to
@@ -4974,7 +4974,7 @@ fixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNa
4974
4974
  if (functionalReplace) {
4975
4975
  var replacerArgs = concat$1([matched], captures, position, S);
4976
4976
  if (namedCaptures !== undefined) push$4(replacerArgs, namedCaptures);
4977
- var replacement = toString$4(apply(replaceValue, undefined, replacerArgs));
4977
+ var replacement = toString$5(apply(replaceValue, undefined, replacerArgs));
4978
4978
  } else {
4979
4979
  replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
4980
4980
  }
@@ -5623,26 +5623,26 @@ const setAudioTrack = (_, _ref12, next) => {
5623
5623
  }
5624
5624
  };var tryToString = tryToString$5;
5625
5625
 
5626
- var $TypeError$2 = TypeError;
5626
+ var $TypeError$3 = TypeError;
5627
5627
 
5628
5628
  var deletePropertyOrThrow$1 = function (O, P) {
5629
- if (!delete O[P]) throw $TypeError$2('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));
5630
- };var fails$5 = fails$r;
5629
+ if (!delete O[P]) throw $TypeError$3('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));
5630
+ };var fails$6 = fails$s;
5631
5631
 
5632
5632
  var arrayMethodIsStrict$1 = function (METHOD_NAME, argument) {
5633
5633
  var method = [][METHOD_NAME];
5634
- return !!method && fails$5(function () {
5634
+ return !!method && fails$6(function () {
5635
5635
  // eslint-disable-next-line no-useless-call -- required for testing
5636
5636
  method.call(null, argument || function () { return 1; }, 1);
5637
5637
  });
5638
- };var $$4 = _export;
5639
- var uncurryThis$6 = functionUncurryThis;
5638
+ };var $$5 = _export;
5639
+ var uncurryThis$7 = functionUncurryThis;
5640
5640
  var aCallable$1 = aCallable$6;
5641
5641
  var toObject$2 = toObject$a;
5642
5642
  var lengthOfArrayLike$1 = lengthOfArrayLike$7;
5643
5643
  var deletePropertyOrThrow = deletePropertyOrThrow$1;
5644
- var toString$3 = toString$8;
5645
- var fails$4 = fails$r;
5644
+ var toString$4 = toString$9;
5645
+ var fails$5 = fails$s;
5646
5646
  var internalSort = arraySort$1;
5647
5647
  var arrayMethodIsStrict = arrayMethodIsStrict$1;
5648
5648
  var FF = engineFfVersion;
@@ -5651,21 +5651,21 @@ var V8 = engineV8Version;
5651
5651
  var WEBKIT$1 = engineWebkitVersion;
5652
5652
 
5653
5653
  var test = [];
5654
- var nativeSort = uncurryThis$6(test.sort);
5655
- var push$3 = uncurryThis$6(test.push);
5654
+ var nativeSort = uncurryThis$7(test.sort);
5655
+ var push$3 = uncurryThis$7(test.push);
5656
5656
 
5657
5657
  // IE8-
5658
- var FAILS_ON_UNDEFINED = fails$4(function () {
5658
+ var FAILS_ON_UNDEFINED = fails$5(function () {
5659
5659
  test.sort(undefined);
5660
5660
  });
5661
5661
  // V8 bug
5662
- var FAILS_ON_NULL = fails$4(function () {
5662
+ var FAILS_ON_NULL = fails$5(function () {
5663
5663
  test.sort(null);
5664
5664
  });
5665
5665
  // Old WebKit
5666
5666
  var STRICT_METHOD = arrayMethodIsStrict('sort');
5667
5667
 
5668
- var STABLE_SORT = !fails$4(function () {
5668
+ var STABLE_SORT = !fails$5(function () {
5669
5669
  // feature detection can be too slow, so check engines versions
5670
5670
  if (V8) return V8 < 70;
5671
5671
  if (FF && FF > 3) return;
@@ -5707,13 +5707,13 @@ var getSortCompare = function (comparefn) {
5707
5707
  if (y === undefined) return -1;
5708
5708
  if (x === undefined) return 1;
5709
5709
  if (comparefn !== undefined) return +comparefn(x, y) || 0;
5710
- return toString$3(x) > toString$3(y) ? 1 : -1;
5710
+ return toString$4(x) > toString$4(y) ? 1 : -1;
5711
5711
  };
5712
5712
  };
5713
5713
 
5714
5714
  // `Array.prototype.sort` method
5715
5715
  // https://tc39.es/ecma262/#sec-array.prototype.sort
5716
- $$4({ target: 'Array', proto: true, forced: FORCED }, {
5716
+ $$5({ target: 'Array', proto: true, forced: FORCED }, {
5717
5717
  sort: function sort(comparefn) {
5718
5718
  if (comparefn !== undefined) aCallable$1(comparefn);
5719
5719
 
@@ -5746,7 +5746,7 @@ $$4({ target: 'Array', proto: true, forced: FORCED }, {
5746
5746
  function getVersion() {
5747
5747
  try {
5748
5748
  // eslint-disable-next-line no-undef
5749
- return "2.25.0-canary.16";
5749
+ return "2.25.0-canary.18";
5750
5750
  } catch (e) {
5751
5751
  return undefined;
5752
5752
  }
@@ -5862,8 +5862,12 @@ const getAudioTracks = (_, _ref2) => {
5862
5862
  }, {});
5863
5863
  const tracks = Object.values(all);
5864
5864
 
5865
- if (tracks.length === 1) {
5866
- tracks[0].selected = true;
5865
+ if (tracks.length <= 1) {
5866
+ return [_objectSpread$p(_objectSpread$p({
5867
+ type: 'audio'
5868
+ }, tracks[0]), {}, {
5869
+ selected: true
5870
+ })];
5867
5871
  }
5868
5872
 
5869
5873
  return tracks;
@@ -11627,7 +11631,7 @@ const Settings = _ref4 => {
11627
11631
  })]
11628
11632
  });
11629
11633
  };const _excluded$6 = ["open", "containerRef", "children", "onClose"],
11630
- _excluded2$2 = ["buttonIcon", "uiType", "children", "slots"];
11634
+ _excluded2$2 = ["buttonIcon", "title", "uiType", "children", "slots"];
11631
11635
 
11632
11636
  function ownKeys$d(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
11633
11637
 
@@ -11655,7 +11659,7 @@ const DefaultContainer = _ref => {
11655
11659
  children
11656
11660
  } = _ref;
11657
11661
  return jsx("div", {
11658
- css: [containerStyle$3, open && openStyle$1, "production" === "production" ? "" : ";label:DefaultContainer;", "production" === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk92ZXJsYXlQYW5lbC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0QkkiLCJmaWxlIjoiT3ZlcmxheVBhbmVsLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvbm8tc3RhdGljLWVsZW1lbnQtaW50ZXJhY3Rpb25zICovXG4vKiBAanN4SW1wb3J0U291cmNlIEBlbW90aW9uL3JlYWN0ICovXG5pbXBvcnQge3VzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZX0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdXNlT25jbGlja091dHNpZGUgZnJvbSAncmVhY3QtY29vbC1vbmNsaWNrb3V0c2lkZSdcbmltcG9ydCB7b259IGZyb20gJ3V0aWwvZXZlbnRzJ1xuaW1wb3J0IHtpc0Rlc2t0b3B9IGZyb20gJ3V0aWwvZW52aXJvbm1lbnQnXG5pbXBvcnQge0J1dHRvbn0gZnJvbSAnLi9idXR0b25zJ1xuaW1wb3J0IHtGdW5jdGlvbkJhckV4dGVuc2lvbiwgVGl0bGVCYXJFeHRlbnNpb259IGZyb20gJy4vdWlFeHRlbnNpb25zJ1xuXG5jb25zdCBjb250YWluZXJTdHlsZSA9IHtcbiAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gIHpJbmRleDogJzInLFxuICB0b3A6ICcwJyxcbiAgd2lkdGg6ICcxMDAlJyxcbiAgaGVpZ2h0OiAnMTAwJScsXG4gIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTE1MHZoKScsXG4gIG9wYWNpdHk6ICcwJyxcbiAgdHJhbnNpdGlvbjogJ29wYWNpdHkgMC41cyBlYXNlLCB0cmFuc2Zvcm0gMHMgMC41cyBsaW5lYXInLFxufVxuXG5jb25zdCBvcGVuU3R5bGUgPSB7XG4gIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCknLFxuICBvcGFjaXR5OiAnMScsXG4gIHRyYW5zaXRpb246ICdvcGFjaXR5IDAuNXMgZWFzZScsXG59XG5cbmNvbnN0IERlZmF1bHRDb250YWluZXIgPSAoe29wZW4sIGNvbnRhaW5lclJlZiwgY2hpbGRyZW59KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e1tjb250YWluZXJTdHlsZSwgb3BlbiAmJiBvcGVuU3R5bGVdfVxuICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgIG9uQ2xpY2s9e2V2ZW50ID0+IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpfVxuICA+XG4gICAge2NoaWxkcmVufVxuICA8L2Rpdj5cbilcblxuY29uc3QgZGVza3RvcENvbnRhaW5lclN0eWxlID0ge1xuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgekluZGV4OiAnMScsXG4gIGJvdHRvbTogJ2NhbGMoNWVtICsgdmFyKC0tYm90dG9tLXNwYWNpbmcsIDByZW0pKScsXG4gIHJpZ2h0OiAnMXJlbScsXG4gIGJhY2tncm91bmQ6ICd0cmFuc3BhcmVudCcsXG4gIG91dGxpbmU6ICdub25lJyxcbiAgb3BhY2l0eTogJzAnLFxuICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC0xMDB2aCknLFxuICB0cmFuc2l0aW9uOiAnb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwcyBsaW5lYXIgMC4ycycsXG59XG5cbmNvbnN0IERlc2t0b3BPcGVuU3R5bGUgPSB7XG4gIG9wYWNpdHk6ICcxJyxcbiAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScsXG4gIHRyYW5zaXRpb246ICdvcGFjaXR5IDAuMnMgZWFzZSwgdHJhbnNmb3JtIDBzJyxcbn1cblxuY29uc3QgRGVza3RvcENvbnRhaW5lciA9ICh7b3BlbiwgY29udGFpbmVyUmVmLCBjaGlsZHJlbiwgb25DbG9zZSwgLi4ucmVzdH0pID0+IChcbiAgPGRpdlxuICAgIGNzcz17W2Rlc2t0b3BDb250YWluZXJTdHlsZSwgb3BlbiAmJiBEZXNrdG9wT3BlblN0eWxlXX1cbiAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICBvbkNsaWNrPXtldmVudCA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICB7Li4ucmVzdH1cbiAgPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9kaXY+XG4pXG5cbmNvbnN0IE92ZXJsYXlQYW5lbCA9ICh7XG4gIGJ1dHRvbkljb24sXG4gIHVpVHlwZSA9IGlzRGVza3RvcCgpID8gJ2Rlc2t0b3AnIDogJ21vYmlsZScsXG4gIGNoaWxkcmVuLFxuICBzbG90cyA9IHtcbiAgICByb290OiB1aVR5cGUgPT09ICdkZXNrdG9wJyA/IERlc2t0b3BDb250YWluZXIgOiBEZWZhdWx0Q29udGFpbmVyLFxuICB9LFxuICAuLi5yZXN0XG59KSA9PiB7XG4gIGNvbnN0IGNvbXBvbmVudHMgPSB7XG4gICAgcm9vdDogc2xvdHMucm9vdCxcbiAgfVxuICBjb25zdCBCdXR0b25XcmFwID1cbiAgICB1aVR5cGUgPT09ICdkZXNrdG9wJyA/IEZ1bmN0aW9uQmFyRXh0ZW5zaW9uIDogVGl0bGVCYXJFeHRlbnNpb25cbiAgY29uc3QgW29wZW4sIHNldE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IG9uQnV0dG9uQ2xpY2sgPSAoKSA9PiBzZXRUaW1lb3V0KCgpID0+IHNldE9wZW4oIW9wZW4pLCAxKVxuICBjb25zdCBvbkNsb3NlID0gKCkgPT4gc2V0T3BlbihmYWxzZSlcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKClcbiAgY29uc3QgcmVmID0gdXNlT25jbGlja091dHNpZGUoXG4gICAgKCkgPT4ge1xuICAgICAgaWYgKG9wZW4gJiYgdWlUeXBlID09PSAnZGVza3RvcCcpIHtcbiAgICAgICAgb25DbG9zZSgpXG4gICAgICB9XG4gICAgfSxcbiAgICB7ZXZlbnRUeXBlczogWydjbGljayddfVxuICApXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVmKGNvbnRhaW5lclJlZi5jdXJyZW50KVxuICAgIHJldHVybiBvbihjb250YWluZXJSZWYuY3VycmVudCwgJ2Nsb3NlLW1lbnUnLCBvbkNsb3NlKVxuICB9LCBbXSlcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8QnV0dG9uV3JhcCBwb3NpdGlvbj1cInJpZ2h0XCI+XG4gICAgICAgIDxCdXR0b24gc3RhcnRJY29uPXtidXR0b25JY29ufSBvbkNsaWNrPXtvbkJ1dHRvbkNsaWNrfSAvPlxuICAgICAgPC9CdXR0b25XcmFwPlxuICAgICAgPGNvbXBvbmVudHMucm9vdFxuICAgICAgICBjb250YWluZXJSZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgb3Blbj17b3Blbn1cbiAgICAgICAgey4uLnJlc3R9XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvY29tcG9uZW50cy5yb290PlxuICAgIDwvPlxuICApXG59XG5cbmV4cG9ydCBkZWZhdWx0IE92ZXJsYXlQYW5lbFxuIl19 */"],
11662
+ css: [containerStyle$3, open && openStyle$1, "production" === "production" ? "" : ";label:DefaultContainer;", "production" === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk92ZXJsYXlQYW5lbC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0QkkiLCJmaWxlIjoiT3ZlcmxheVBhbmVsLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvbm8tc3RhdGljLWVsZW1lbnQtaW50ZXJhY3Rpb25zICovXG4vKiBAanN4SW1wb3J0U291cmNlIEBlbW90aW9uL3JlYWN0ICovXG5pbXBvcnQge3VzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZX0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdXNlT25jbGlja091dHNpZGUgZnJvbSAncmVhY3QtY29vbC1vbmNsaWNrb3V0c2lkZSdcbmltcG9ydCB7b259IGZyb20gJ3V0aWwvZXZlbnRzJ1xuaW1wb3J0IHtpc0Rlc2t0b3B9IGZyb20gJ3V0aWwvZW52aXJvbm1lbnQnXG5pbXBvcnQge0J1dHRvbn0gZnJvbSAnLi9idXR0b25zJ1xuaW1wb3J0IHtGdW5jdGlvbkJhckV4dGVuc2lvbiwgVGl0bGVCYXJFeHRlbnNpb259IGZyb20gJy4vdWlFeHRlbnNpb25zJ1xuXG5jb25zdCBjb250YWluZXJTdHlsZSA9IHtcbiAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gIHpJbmRleDogJzInLFxuICB0b3A6ICcwJyxcbiAgd2lkdGg6ICcxMDAlJyxcbiAgaGVpZ2h0OiAnMTAwJScsXG4gIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTE1MHZoKScsXG4gIG9wYWNpdHk6ICcwJyxcbiAgdHJhbnNpdGlvbjogJ29wYWNpdHkgMC41cyBlYXNlLCB0cmFuc2Zvcm0gMHMgMC41cyBsaW5lYXInLFxufVxuXG5jb25zdCBvcGVuU3R5bGUgPSB7XG4gIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCknLFxuICBvcGFjaXR5OiAnMScsXG4gIHRyYW5zaXRpb246ICdvcGFjaXR5IDAuNXMgZWFzZScsXG59XG5cbmNvbnN0IERlZmF1bHRDb250YWluZXIgPSAoe29wZW4sIGNvbnRhaW5lclJlZiwgY2hpbGRyZW59KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e1tjb250YWluZXJTdHlsZSwgb3BlbiAmJiBvcGVuU3R5bGVdfVxuICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgIG9uQ2xpY2s9e2V2ZW50ID0+IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpfVxuICA+XG4gICAge2NoaWxkcmVufVxuICA8L2Rpdj5cbilcblxuY29uc3QgZGVza3RvcENvbnRhaW5lclN0eWxlID0ge1xuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgekluZGV4OiAnMScsXG4gIGJvdHRvbTogJ2NhbGMoNWVtICsgdmFyKC0tYm90dG9tLXNwYWNpbmcsIDByZW0pKScsXG4gIHJpZ2h0OiAnMXJlbScsXG4gIGJhY2tncm91bmQ6ICd0cmFuc3BhcmVudCcsXG4gIG91dGxpbmU6ICdub25lJyxcbiAgb3BhY2l0eTogJzAnLFxuICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC0xMDB2aCknLFxuICB0cmFuc2l0aW9uOiAnb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwcyBsaW5lYXIgMC4ycycsXG59XG5cbmNvbnN0IERlc2t0b3BPcGVuU3R5bGUgPSB7XG4gIG9wYWNpdHk6ICcxJyxcbiAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScsXG4gIHRyYW5zaXRpb246ICdvcGFjaXR5IDAuMnMgZWFzZSwgdHJhbnNmb3JtIDBzJyxcbn1cblxuY29uc3QgRGVza3RvcENvbnRhaW5lciA9ICh7b3BlbiwgY29udGFpbmVyUmVmLCBjaGlsZHJlbiwgb25DbG9zZSwgLi4ucmVzdH0pID0+IChcbiAgPGRpdlxuICAgIGNzcz17W2Rlc2t0b3BDb250YWluZXJTdHlsZSwgb3BlbiAmJiBEZXNrdG9wT3BlblN0eWxlXX1cbiAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICBvbkNsaWNrPXtldmVudCA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICB7Li4ucmVzdH1cbiAgPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9kaXY+XG4pXG5cbmNvbnN0IE92ZXJsYXlQYW5lbCA9ICh7XG4gIGJ1dHRvbkljb24sXG4gIHRpdGxlLFxuICB1aVR5cGUgPSBpc0Rlc2t0b3AoKSA/ICdkZXNrdG9wJyA6ICdtb2JpbGUnLFxuICBjaGlsZHJlbixcbiAgc2xvdHMgPSB7XG4gICAgcm9vdDogdWlUeXBlID09PSAnZGVza3RvcCcgPyBEZXNrdG9wQ29udGFpbmVyIDogRGVmYXVsdENvbnRhaW5lcixcbiAgfSxcbiAgLi4ucmVzdFxufSkgPT4ge1xuICBjb25zdCBjb21wb25lbnRzID0ge1xuICAgIHJvb3Q6IHNsb3RzLnJvb3QsXG4gIH1cbiAgY29uc3QgQnV0dG9uV3JhcCA9XG4gICAgdWlUeXBlID09PSAnZGVza3RvcCcgPyBGdW5jdGlvbkJhckV4dGVuc2lvbiA6IFRpdGxlQmFyRXh0ZW5zaW9uXG4gIGNvbnN0IFtvcGVuLCBzZXRPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBvbk9wZW4gPSBldmVudCA9PiB7XG4gICAgc2V0VGltZW91dCgoKSA9PiBzZXRPcGVuKHRydWUpLCAxKVxuICAgIGV2ZW50LmN1cnJlbnRUYXJnZXQuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBDdXN0b21FdmVudCgnZm9jdXMtbWVudScsIHtkZXRhaWw6IHtzdGF0dXM6ICdvcGVuJ30sIGJ1YmJsZXM6IHRydWV9KVxuICAgIClcbiAgfVxuICBjb25zdCBjb250YWluZXJSZWYgPSB1c2VSZWYoKVxuICBjb25zdCBvbkNsb3NlID0gKCkgPT4ge1xuICAgIHNldE9wZW4oZmFsc2UpXG4gICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBDdXN0b21FdmVudCgnZm9jdXMtbWVudScsIHtkZXRhaWw6IHtzdGF0dXM6ICdjbG9zZWQnfSwgYnViYmxlczogdHJ1ZX0pXG4gICAgKVxuICB9XG4gIGNvbnN0IHJlZiA9IHVzZU9uY2xpY2tPdXRzaWRlKFxuICAgICgpID0+IHtcbiAgICAgIGlmIChvcGVuICYmIHVpVHlwZSA9PT0gJ2Rlc2t0b3AnKSB7XG4gICAgICAgIG9uQ2xvc2UoKVxuICAgICAgfVxuICAgIH0sXG4gICAge2V2ZW50VHlwZXM6IFsnY2xpY2snXX1cbiAgKVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJlZihjb250YWluZXJSZWYuY3VycmVudClcbiAgICByZXR1cm4gb24oY29udGFpbmVyUmVmLmN1cnJlbnQsICdjbG9zZS1tZW51Jywgb25DbG9zZSlcbiAgfSwgW10pXG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPEJ1dHRvbldyYXAgcG9zaXRpb249XCJyaWdodFwiPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgdGl0bGU9e3RpdGxlfVxuICAgICAgICAgIHN0YXJ0SWNvbj17YnV0dG9uSWNvbn1cbiAgICAgICAgICBvbkNsaWNrPXtvcGVuID8gdW5kZWZpbmVkIDogb25PcGVufVxuICAgICAgICAvPlxuICAgICAgPC9CdXR0b25XcmFwPlxuICAgICAgPGNvbXBvbmVudHMucm9vdCBjb250YWluZXJSZWY9e2NvbnRhaW5lclJlZn0gb3Blbj17b3Blbn0gey4uLnJlc3R9PlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L2NvbXBvbmVudHMucm9vdD5cbiAgICA8Lz5cbiAgKVxufVxuXG5leHBvcnQgZGVmYXVsdCBPdmVybGF5UGFuZWxcbiJdfQ== */"],
11659
11663
  ref: containerRef,
11660
11664
  onClick: event => event.stopPropagation(),
11661
11665
  children: children
@@ -11689,7 +11693,7 @@ const DesktopContainer = _ref2 => {
11689
11693
  rest = _objectWithoutProperties(_ref2, _excluded$6);
11690
11694
 
11691
11695
  return jsx("div", _objectSpread$d(_objectSpread$d({
11692
- css: [desktopContainerStyle$1, open && DesktopOpenStyle, "production" === "production" ? "" : ";label:DesktopContainer;", "production" === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk92ZXJsYXlQYW5lbC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3REkiLCJmaWxlIjoiT3ZlcmxheVBhbmVsLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvbm8tc3RhdGljLWVsZW1lbnQtaW50ZXJhY3Rpb25zICovXG4vKiBAanN4SW1wb3J0U291cmNlIEBlbW90aW9uL3JlYWN0ICovXG5pbXBvcnQge3VzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZX0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdXNlT25jbGlja091dHNpZGUgZnJvbSAncmVhY3QtY29vbC1vbmNsaWNrb3V0c2lkZSdcbmltcG9ydCB7b259IGZyb20gJ3V0aWwvZXZlbnRzJ1xuaW1wb3J0IHtpc0Rlc2t0b3B9IGZyb20gJ3V0aWwvZW52aXJvbm1lbnQnXG5pbXBvcnQge0J1dHRvbn0gZnJvbSAnLi9idXR0b25zJ1xuaW1wb3J0IHtGdW5jdGlvbkJhckV4dGVuc2lvbiwgVGl0bGVCYXJFeHRlbnNpb259IGZyb20gJy4vdWlFeHRlbnNpb25zJ1xuXG5jb25zdCBjb250YWluZXJTdHlsZSA9IHtcbiAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gIHpJbmRleDogJzInLFxuICB0b3A6ICcwJyxcbiAgd2lkdGg6ICcxMDAlJyxcbiAgaGVpZ2h0OiAnMTAwJScsXG4gIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTE1MHZoKScsXG4gIG9wYWNpdHk6ICcwJyxcbiAgdHJhbnNpdGlvbjogJ29wYWNpdHkgMC41cyBlYXNlLCB0cmFuc2Zvcm0gMHMgMC41cyBsaW5lYXInLFxufVxuXG5jb25zdCBvcGVuU3R5bGUgPSB7XG4gIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCknLFxuICBvcGFjaXR5OiAnMScsXG4gIHRyYW5zaXRpb246ICdvcGFjaXR5IDAuNXMgZWFzZScsXG59XG5cbmNvbnN0IERlZmF1bHRDb250YWluZXIgPSAoe29wZW4sIGNvbnRhaW5lclJlZiwgY2hpbGRyZW59KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e1tjb250YWluZXJTdHlsZSwgb3BlbiAmJiBvcGVuU3R5bGVdfVxuICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgIG9uQ2xpY2s9e2V2ZW50ID0+IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpfVxuICA+XG4gICAge2NoaWxkcmVufVxuICA8L2Rpdj5cbilcblxuY29uc3QgZGVza3RvcENvbnRhaW5lclN0eWxlID0ge1xuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgekluZGV4OiAnMScsXG4gIGJvdHRvbTogJ2NhbGMoNWVtICsgdmFyKC0tYm90dG9tLXNwYWNpbmcsIDByZW0pKScsXG4gIHJpZ2h0OiAnMXJlbScsXG4gIGJhY2tncm91bmQ6ICd0cmFuc3BhcmVudCcsXG4gIG91dGxpbmU6ICdub25lJyxcbiAgb3BhY2l0eTogJzAnLFxuICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC0xMDB2aCknLFxuICB0cmFuc2l0aW9uOiAnb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwcyBsaW5lYXIgMC4ycycsXG59XG5cbmNvbnN0IERlc2t0b3BPcGVuU3R5bGUgPSB7XG4gIG9wYWNpdHk6ICcxJyxcbiAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScsXG4gIHRyYW5zaXRpb246ICdvcGFjaXR5IDAuMnMgZWFzZSwgdHJhbnNmb3JtIDBzJyxcbn1cblxuY29uc3QgRGVza3RvcENvbnRhaW5lciA9ICh7b3BlbiwgY29udGFpbmVyUmVmLCBjaGlsZHJlbiwgb25DbG9zZSwgLi4ucmVzdH0pID0+IChcbiAgPGRpdlxuICAgIGNzcz17W2Rlc2t0b3BDb250YWluZXJTdHlsZSwgb3BlbiAmJiBEZXNrdG9wT3BlblN0eWxlXX1cbiAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICBvbkNsaWNrPXtldmVudCA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICB7Li4ucmVzdH1cbiAgPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9kaXY+XG4pXG5cbmNvbnN0IE92ZXJsYXlQYW5lbCA9ICh7XG4gIGJ1dHRvbkljb24sXG4gIHVpVHlwZSA9IGlzRGVza3RvcCgpID8gJ2Rlc2t0b3AnIDogJ21vYmlsZScsXG4gIGNoaWxkcmVuLFxuICBzbG90cyA9IHtcbiAgICByb290OiB1aVR5cGUgPT09ICdkZXNrdG9wJyA/IERlc2t0b3BDb250YWluZXIgOiBEZWZhdWx0Q29udGFpbmVyLFxuICB9LFxuICAuLi5yZXN0XG59KSA9PiB7XG4gIGNvbnN0IGNvbXBvbmVudHMgPSB7XG4gICAgcm9vdDogc2xvdHMucm9vdCxcbiAgfVxuICBjb25zdCBCdXR0b25XcmFwID1cbiAgICB1aVR5cGUgPT09ICdkZXNrdG9wJyA/IEZ1bmN0aW9uQmFyRXh0ZW5zaW9uIDogVGl0bGVCYXJFeHRlbnNpb25cbiAgY29uc3QgW29wZW4sIHNldE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IG9uQnV0dG9uQ2xpY2sgPSAoKSA9PiBzZXRUaW1lb3V0KCgpID0+IHNldE9wZW4oIW9wZW4pLCAxKVxuICBjb25zdCBvbkNsb3NlID0gKCkgPT4gc2V0T3BlbihmYWxzZSlcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKClcbiAgY29uc3QgcmVmID0gdXNlT25jbGlja091dHNpZGUoXG4gICAgKCkgPT4ge1xuICAgICAgaWYgKG9wZW4gJiYgdWlUeXBlID09PSAnZGVza3RvcCcpIHtcbiAgICAgICAgb25DbG9zZSgpXG4gICAgICB9XG4gICAgfSxcbiAgICB7ZXZlbnRUeXBlczogWydjbGljayddfVxuICApXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVmKGNvbnRhaW5lclJlZi5jdXJyZW50KVxuICAgIHJldHVybiBvbihjb250YWluZXJSZWYuY3VycmVudCwgJ2Nsb3NlLW1lbnUnLCBvbkNsb3NlKVxuICB9LCBbXSlcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8QnV0dG9uV3JhcCBwb3NpdGlvbj1cInJpZ2h0XCI+XG4gICAgICAgIDxCdXR0b24gc3RhcnRJY29uPXtidXR0b25JY29ufSBvbkNsaWNrPXtvbkJ1dHRvbkNsaWNrfSAvPlxuICAgICAgPC9CdXR0b25XcmFwPlxuICAgICAgPGNvbXBvbmVudHMucm9vdFxuICAgICAgICBjb250YWluZXJSZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgb3Blbj17b3Blbn1cbiAgICAgICAgey4uLnJlc3R9XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvY29tcG9uZW50cy5yb290PlxuICAgIDwvPlxuICApXG59XG5cbmV4cG9ydCBkZWZhdWx0IE92ZXJsYXlQYW5lbFxuIl19 */"],
11696
+ css: [desktopContainerStyle$1, open && DesktopOpenStyle, "production" === "production" ? "" : ";label:DesktopContainer;", "production" === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk92ZXJsYXlQYW5lbC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3REkiLCJmaWxlIjoiT3ZlcmxheVBhbmVsLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvbm8tc3RhdGljLWVsZW1lbnQtaW50ZXJhY3Rpb25zICovXG4vKiBAanN4SW1wb3J0U291cmNlIEBlbW90aW9uL3JlYWN0ICovXG5pbXBvcnQge3VzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZX0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdXNlT25jbGlja091dHNpZGUgZnJvbSAncmVhY3QtY29vbC1vbmNsaWNrb3V0c2lkZSdcbmltcG9ydCB7b259IGZyb20gJ3V0aWwvZXZlbnRzJ1xuaW1wb3J0IHtpc0Rlc2t0b3B9IGZyb20gJ3V0aWwvZW52aXJvbm1lbnQnXG5pbXBvcnQge0J1dHRvbn0gZnJvbSAnLi9idXR0b25zJ1xuaW1wb3J0IHtGdW5jdGlvbkJhckV4dGVuc2lvbiwgVGl0bGVCYXJFeHRlbnNpb259IGZyb20gJy4vdWlFeHRlbnNpb25zJ1xuXG5jb25zdCBjb250YWluZXJTdHlsZSA9IHtcbiAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gIHpJbmRleDogJzInLFxuICB0b3A6ICcwJyxcbiAgd2lkdGg6ICcxMDAlJyxcbiAgaGVpZ2h0OiAnMTAwJScsXG4gIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTE1MHZoKScsXG4gIG9wYWNpdHk6ICcwJyxcbiAgdHJhbnNpdGlvbjogJ29wYWNpdHkgMC41cyBlYXNlLCB0cmFuc2Zvcm0gMHMgMC41cyBsaW5lYXInLFxufVxuXG5jb25zdCBvcGVuU3R5bGUgPSB7XG4gIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCknLFxuICBvcGFjaXR5OiAnMScsXG4gIHRyYW5zaXRpb246ICdvcGFjaXR5IDAuNXMgZWFzZScsXG59XG5cbmNvbnN0IERlZmF1bHRDb250YWluZXIgPSAoe29wZW4sIGNvbnRhaW5lclJlZiwgY2hpbGRyZW59KSA9PiAoXG4gIDxkaXZcbiAgICBjc3M9e1tjb250YWluZXJTdHlsZSwgb3BlbiAmJiBvcGVuU3R5bGVdfVxuICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgIG9uQ2xpY2s9e2V2ZW50ID0+IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpfVxuICA+XG4gICAge2NoaWxkcmVufVxuICA8L2Rpdj5cbilcblxuY29uc3QgZGVza3RvcENvbnRhaW5lclN0eWxlID0ge1xuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgekluZGV4OiAnMScsXG4gIGJvdHRvbTogJ2NhbGMoNWVtICsgdmFyKC0tYm90dG9tLXNwYWNpbmcsIDByZW0pKScsXG4gIHJpZ2h0OiAnMXJlbScsXG4gIGJhY2tncm91bmQ6ICd0cmFuc3BhcmVudCcsXG4gIG91dGxpbmU6ICdub25lJyxcbiAgb3BhY2l0eTogJzAnLFxuICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC0xMDB2aCknLFxuICB0cmFuc2l0aW9uOiAnb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwcyBsaW5lYXIgMC4ycycsXG59XG5cbmNvbnN0IERlc2t0b3BPcGVuU3R5bGUgPSB7XG4gIG9wYWNpdHk6ICcxJyxcbiAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScsXG4gIHRyYW5zaXRpb246ICdvcGFjaXR5IDAuMnMgZWFzZSwgdHJhbnNmb3JtIDBzJyxcbn1cblxuY29uc3QgRGVza3RvcENvbnRhaW5lciA9ICh7b3BlbiwgY29udGFpbmVyUmVmLCBjaGlsZHJlbiwgb25DbG9zZSwgLi4ucmVzdH0pID0+IChcbiAgPGRpdlxuICAgIGNzcz17W2Rlc2t0b3BDb250YWluZXJTdHlsZSwgb3BlbiAmJiBEZXNrdG9wT3BlblN0eWxlXX1cbiAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICBvbkNsaWNrPXtldmVudCA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICB7Li4ucmVzdH1cbiAgPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9kaXY+XG4pXG5cbmNvbnN0IE92ZXJsYXlQYW5lbCA9ICh7XG4gIGJ1dHRvbkljb24sXG4gIHRpdGxlLFxuICB1aVR5cGUgPSBpc0Rlc2t0b3AoKSA/ICdkZXNrdG9wJyA6ICdtb2JpbGUnLFxuICBjaGlsZHJlbixcbiAgc2xvdHMgPSB7XG4gICAgcm9vdDogdWlUeXBlID09PSAnZGVza3RvcCcgPyBEZXNrdG9wQ29udGFpbmVyIDogRGVmYXVsdENvbnRhaW5lcixcbiAgfSxcbiAgLi4ucmVzdFxufSkgPT4ge1xuICBjb25zdCBjb21wb25lbnRzID0ge1xuICAgIHJvb3Q6IHNsb3RzLnJvb3QsXG4gIH1cbiAgY29uc3QgQnV0dG9uV3JhcCA9XG4gICAgdWlUeXBlID09PSAnZGVza3RvcCcgPyBGdW5jdGlvbkJhckV4dGVuc2lvbiA6IFRpdGxlQmFyRXh0ZW5zaW9uXG4gIGNvbnN0IFtvcGVuLCBzZXRPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBvbk9wZW4gPSBldmVudCA9PiB7XG4gICAgc2V0VGltZW91dCgoKSA9PiBzZXRPcGVuKHRydWUpLCAxKVxuICAgIGV2ZW50LmN1cnJlbnRUYXJnZXQuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBDdXN0b21FdmVudCgnZm9jdXMtbWVudScsIHtkZXRhaWw6IHtzdGF0dXM6ICdvcGVuJ30sIGJ1YmJsZXM6IHRydWV9KVxuICAgIClcbiAgfVxuICBjb25zdCBjb250YWluZXJSZWYgPSB1c2VSZWYoKVxuICBjb25zdCBvbkNsb3NlID0gKCkgPT4ge1xuICAgIHNldE9wZW4oZmFsc2UpXG4gICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBDdXN0b21FdmVudCgnZm9jdXMtbWVudScsIHtkZXRhaWw6IHtzdGF0dXM6ICdjbG9zZWQnfSwgYnViYmxlczogdHJ1ZX0pXG4gICAgKVxuICB9XG4gIGNvbnN0IHJlZiA9IHVzZU9uY2xpY2tPdXRzaWRlKFxuICAgICgpID0+IHtcbiAgICAgIGlmIChvcGVuICYmIHVpVHlwZSA9PT0gJ2Rlc2t0b3AnKSB7XG4gICAgICAgIG9uQ2xvc2UoKVxuICAgICAgfVxuICAgIH0sXG4gICAge2V2ZW50VHlwZXM6IFsnY2xpY2snXX1cbiAgKVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJlZihjb250YWluZXJSZWYuY3VycmVudClcbiAgICByZXR1cm4gb24oY29udGFpbmVyUmVmLmN1cnJlbnQsICdjbG9zZS1tZW51Jywgb25DbG9zZSlcbiAgfSwgW10pXG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPEJ1dHRvbldyYXAgcG9zaXRpb249XCJyaWdodFwiPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgdGl0bGU9e3RpdGxlfVxuICAgICAgICAgIHN0YXJ0SWNvbj17YnV0dG9uSWNvbn1cbiAgICAgICAgICBvbkNsaWNrPXtvcGVuID8gdW5kZWZpbmVkIDogb25PcGVufVxuICAgICAgICAvPlxuICAgICAgPC9CdXR0b25XcmFwPlxuICAgICAgPGNvbXBvbmVudHMucm9vdCBjb250YWluZXJSZWY9e2NvbnRhaW5lclJlZn0gb3Blbj17b3Blbn0gey4uLnJlc3R9PlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L2NvbXBvbmVudHMucm9vdD5cbiAgICA8Lz5cbiAgKVxufVxuXG5leHBvcnQgZGVmYXVsdCBPdmVybGF5UGFuZWxcbiJdfQ== */"],
11693
11697
  ref: containerRef,
11694
11698
  onClick: event => event.stopPropagation()
11695
11699
  }, rest), {}, {
@@ -11700,6 +11704,7 @@ const DesktopContainer = _ref2 => {
11700
11704
  const OverlayPanel = _ref3 => {
11701
11705
  let {
11702
11706
  buttonIcon,
11707
+ title,
11703
11708
  uiType = isDesktop() ? 'desktop' : 'mobile',
11704
11709
  children,
11705
11710
  slots = {
@@ -11714,11 +11719,28 @@ const OverlayPanel = _ref3 => {
11714
11719
  const ButtonWrap = uiType === 'desktop' ? FunctionBarExtension : TitleBarExtension;
11715
11720
  const [open, setOpen] = react.exports.useState(false);
11716
11721
 
11717
- const onButtonClick = () => setTimeout(() => setOpen(!open), 1);
11718
-
11719
- const onClose = () => setOpen(false);
11722
+ const onOpen = event => {
11723
+ setTimeout(() => setOpen(true), 1);
11724
+ event.currentTarget.dispatchEvent(new CustomEvent('focus-menu', {
11725
+ detail: {
11726
+ status: 'open'
11727
+ },
11728
+ bubbles: true
11729
+ }));
11730
+ };
11720
11731
 
11721
11732
  const containerRef = react.exports.useRef();
11733
+
11734
+ const onClose = () => {
11735
+ setOpen(false);
11736
+ containerRef.current.dispatchEvent(new CustomEvent('focus-menu', {
11737
+ detail: {
11738
+ status: 'closed'
11739
+ },
11740
+ bubbles: true
11741
+ }));
11742
+ };
11743
+
11722
11744
  const ref = useOnclickOutside(() => {
11723
11745
  if (open && uiType === 'desktop') {
11724
11746
  onClose();
@@ -11734,8 +11756,9 @@ const OverlayPanel = _ref3 => {
11734
11756
  children: [jsx(ButtonWrap, {
11735
11757
  position: "right",
11736
11758
  children: jsx(Button, {
11759
+ title: title,
11737
11760
  startIcon: buttonIcon,
11738
- onClick: onButtonClick
11761
+ onClick: open ? undefined : onOpen
11739
11762
  })
11740
11763
  }), jsx(components.root, _objectSpread$d(_objectSpread$d({
11741
11764
  containerRef: containerRef,
@@ -12720,41 +12743,41 @@ const loadNative = _ref => {
12720
12743
  destroy: () => {}
12721
12744
  };
12722
12745
  };var charAt$3 = stringMultibyte.charAt;
12723
- var toString$2 = toString$8;
12724
- var InternalStateModule$2 = internalState;
12746
+ var toString$3 = toString$9;
12747
+ var InternalStateModule$3 = internalState;
12725
12748
  var defineIterator = iteratorDefine;
12726
- var createIterResultObject = createIterResultObject$2;
12749
+ var createIterResultObject$1 = createIterResultObject$3;
12727
12750
 
12728
12751
  var STRING_ITERATOR = 'String Iterator';
12729
- var setInternalState$2 = InternalStateModule$2.set;
12730
- var getInternalState = InternalStateModule$2.getterFor(STRING_ITERATOR);
12752
+ var setInternalState$3 = InternalStateModule$3.set;
12753
+ var getInternalState$1 = InternalStateModule$3.getterFor(STRING_ITERATOR);
12731
12754
 
12732
12755
  // `String.prototype[@@iterator]` method
12733
12756
  // https://tc39.es/ecma262/#sec-string.prototype-@@iterator
12734
12757
  defineIterator(String, 'String', function (iterated) {
12735
- setInternalState$2(this, {
12758
+ setInternalState$3(this, {
12736
12759
  type: STRING_ITERATOR,
12737
- string: toString$2(iterated),
12760
+ string: toString$3(iterated),
12738
12761
  index: 0
12739
12762
  });
12740
12763
  // `%StringIteratorPrototype%.next` method
12741
12764
  // https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next
12742
12765
  }, function next() {
12743
- var state = getInternalState(this);
12766
+ var state = getInternalState$1(this);
12744
12767
  var string = state.string;
12745
12768
  var index = state.index;
12746
12769
  var point;
12747
- if (index >= string.length) return createIterResultObject(undefined, true);
12770
+ if (index >= string.length) return createIterResultObject$1(undefined, true);
12748
12771
  point = charAt$3(string, index);
12749
12772
  state.index += point.length;
12750
- return createIterResultObject(point, false);
12751
- });var fails$3 = fails$r;
12752
- var wellKnownSymbol$3 = wellKnownSymbol$l;
12753
- var IS_PURE = isPure;
12773
+ return createIterResultObject$1(point, false);
12774
+ });var fails$4 = fails$s;
12775
+ var wellKnownSymbol$4 = wellKnownSymbol$m;
12776
+ var IS_PURE$1 = isPure;
12754
12777
 
12755
- var ITERATOR$1 = wellKnownSymbol$3('iterator');
12778
+ var ITERATOR$1 = wellKnownSymbol$4('iterator');
12756
12779
 
12757
- var urlConstructorDetection = !fails$3(function () {
12780
+ var urlConstructorDetection = !fails$4(function () {
12758
12781
  // eslint-disable-next-line unicorn/relative-url-style -- required for testing
12759
12782
  var url = new URL('b?a=1&b=2&c=3', 'http://a');
12760
12783
  var searchParams = url.searchParams;
@@ -12764,7 +12787,7 @@ var urlConstructorDetection = !fails$3(function () {
12764
12787
  searchParams['delete']('b');
12765
12788
  result += key + value;
12766
12789
  });
12767
- return (IS_PURE && !url.toJSON)
12790
+ return (IS_PURE$1 && !url.toJSON)
12768
12791
  || !searchParams.sort
12769
12792
  || url.href !== 'http://a/c%20d?a=1&c=3'
12770
12793
  || searchParams.get('c') !== '3'
@@ -12789,9 +12812,9 @@ var defineBuiltInAccessor$1 = function (target, name, descriptor) {
12789
12812
  if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });
12790
12813
  return defineProperty$3.f(target, name, descriptor);
12791
12814
  };var DESCRIPTORS$4 = descriptors;
12792
- var uncurryThis$5 = functionUncurryThis;
12793
- var call$4 = functionCall;
12794
- var fails$2 = fails$r;
12815
+ var uncurryThis$6 = functionUncurryThis;
12816
+ var call$5 = functionCall;
12817
+ var fails$3 = fails$s;
12795
12818
  var objectKeys = objectKeys$2;
12796
12819
  var getOwnPropertySymbolsModule = objectGetOwnPropertySymbols;
12797
12820
  var propertyIsEnumerableModule = objectPropertyIsEnumerable;
@@ -12802,11 +12825,11 @@ var IndexedObject = indexedObject;
12802
12825
  var $assign = Object.assign;
12803
12826
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
12804
12827
  var defineProperty$2 = Object.defineProperty;
12805
- var concat = uncurryThis$5([].concat);
12828
+ var concat = uncurryThis$6([].concat);
12806
12829
 
12807
12830
  // `Object.assign` method
12808
12831
  // https://tc39.es/ecma262/#sec-object.assign
12809
- var objectAssign = !$assign || fails$2(function () {
12832
+ var objectAssign = !$assign || fails$3(function () {
12810
12833
  // should have correct order of operations (Edge bug)
12811
12834
  if (DESCRIPTORS$4 && $assign({ b: 1 }, $assign(defineProperty$2({}, 'a', {
12812
12835
  enumerable: true,
@@ -12840,43 +12863,43 @@ var objectAssign = !$assign || fails$2(function () {
12840
12863
  var key;
12841
12864
  while (length > j) {
12842
12865
  key = keys[j++];
12843
- if (!DESCRIPTORS$4 || call$4(propertyIsEnumerable, S, key)) T[key] = S[key];
12866
+ if (!DESCRIPTORS$4 || call$5(propertyIsEnumerable, S, key)) T[key] = S[key];
12844
12867
  }
12845
12868
  } return T;
12846
- } : $assign;var call$3 = functionCall;
12847
- var anObject$3 = anObject$f;
12848
- var getMethod = getMethod$4;
12869
+ } : $assign;var call$4 = functionCall;
12870
+ var anObject$4 = anObject$g;
12871
+ var getMethod$1 = getMethod$5;
12849
12872
 
12850
12873
  var iteratorClose$1 = function (iterator, kind, value) {
12851
12874
  var innerResult, innerError;
12852
- anObject$3(iterator);
12875
+ anObject$4(iterator);
12853
12876
  try {
12854
- innerResult = getMethod(iterator, 'return');
12877
+ innerResult = getMethod$1(iterator, 'return');
12855
12878
  if (!innerResult) {
12856
12879
  if (kind === 'throw') throw value;
12857
12880
  return value;
12858
12881
  }
12859
- innerResult = call$3(innerResult, iterator);
12882
+ innerResult = call$4(innerResult, iterator);
12860
12883
  } catch (error) {
12861
12884
  innerError = true;
12862
12885
  innerResult = error;
12863
12886
  }
12864
12887
  if (kind === 'throw') throw value;
12865
12888
  if (innerError) throw innerResult;
12866
- anObject$3(innerResult);
12889
+ anObject$4(innerResult);
12867
12890
  return value;
12868
- };var anObject$2 = anObject$f;
12891
+ };var anObject$3 = anObject$g;
12869
12892
  var iteratorClose = iteratorClose$1;
12870
12893
 
12871
12894
  // call something on iterator step with safe closing on error
12872
12895
  var callWithSafeIterationClosing$1 = function (iterator, fn, value, ENTRIES) {
12873
12896
  try {
12874
- return ENTRIES ? fn(anObject$2(value)[0], value[1]) : fn(value);
12897
+ return ENTRIES ? fn(anObject$3(value)[0], value[1]) : fn(value);
12875
12898
  } catch (error) {
12876
12899
  iteratorClose(iterator, 'throw', error);
12877
12900
  }
12878
12901
  };var bind$2 = functionBindContext;
12879
- var call$2 = functionCall;
12902
+ var call$3 = functionCall;
12880
12903
  var toObject = toObject$a;
12881
12904
  var callWithSafeIterationClosing = callWithSafeIterationClosing$1;
12882
12905
  var isArrayIteratorMethod = isArrayIteratorMethod$2;
@@ -12905,7 +12928,7 @@ var arrayFrom$1 = function from(arrayLike /* , mapfn = undefined, thisArg = unde
12905
12928
  iterator = getIterator$1(O, iteratorMethod);
12906
12929
  next = iterator.next;
12907
12930
  result = IS_CONSTRUCTOR ? new this() : [];
12908
- for (;!(step = call$2(next, iterator)).done; index++) {
12931
+ for (;!(step = call$3(next, iterator)).done; index++) {
12909
12932
  value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;
12910
12933
  createProperty(result, index, value);
12911
12934
  }
@@ -12920,7 +12943,7 @@ var arrayFrom$1 = function from(arrayLike /* , mapfn = undefined, thisArg = unde
12920
12943
  result.length = index;
12921
12944
  return result;
12922
12945
  };// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js
12923
- var uncurryThis$4 = functionUncurryThis;
12946
+ var uncurryThis$5 = functionUncurryThis;
12924
12947
 
12925
12948
  var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1
12926
12949
  var base = 36;
@@ -12937,15 +12960,15 @@ var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';
12937
12960
  var baseMinusTMin = base - tMin;
12938
12961
 
12939
12962
  var $RangeError = RangeError;
12940
- var exec$2 = uncurryThis$4(regexSeparators.exec);
12963
+ var exec$2 = uncurryThis$5(regexSeparators.exec);
12941
12964
  var floor$1 = Math.floor;
12942
12965
  var fromCharCode = String.fromCharCode;
12943
- var charCodeAt = uncurryThis$4(''.charCodeAt);
12944
- var join$2 = uncurryThis$4([].join);
12945
- var push$2 = uncurryThis$4([].push);
12946
- var replace$4 = uncurryThis$4(''.replace);
12947
- var split$2 = uncurryThis$4(''.split);
12948
- var toLowerCase$1 = uncurryThis$4(''.toLowerCase);
12966
+ var charCodeAt = uncurryThis$5(''.charCodeAt);
12967
+ var join$2 = uncurryThis$5([].join);
12968
+ var push$2 = uncurryThis$5([].push);
12969
+ var replace$4 = uncurryThis$5(''.replace);
12970
+ var split$2 = uncurryThis$5(''.split);
12971
+ var toLowerCase$1 = uncurryThis$5(''.toLowerCase);
12949
12972
 
12950
12973
  /**
12951
12974
  * Creates an array containing the numeric code points of each Unicode
@@ -13098,46 +13121,46 @@ var stringPunycodeToAscii = function (input) {
13098
13121
  push$2(encoded, exec$2(regexNonASCII, label) ? 'xn--' + encode(label) : label);
13099
13122
  }
13100
13123
  return join$2(encoded, '.');
13101
- };var $TypeError$1 = TypeError;
13124
+ };var $TypeError$2 = TypeError;
13102
13125
 
13103
13126
  var validateArgumentsLength$2 = function (passed, required) {
13104
- if (passed < required) throw $TypeError$1('Not enough arguments');
13127
+ if (passed < required) throw $TypeError$2('Not enough arguments');
13105
13128
  return passed;
13106
13129
  };// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
13107
13130
 
13108
- var $$3 = _export;
13131
+ var $$4 = _export;
13109
13132
  var global$5 = global$p;
13110
- var call$1 = functionCall;
13111
- var uncurryThis$3 = functionUncurryThis;
13133
+ var call$2 = functionCall;
13134
+ var uncurryThis$4 = functionUncurryThis;
13112
13135
  var DESCRIPTORS$3 = descriptors;
13113
13136
  var USE_NATIVE_URL$1 = urlConstructorDetection;
13114
- var defineBuiltIn$3 = defineBuiltIn$a;
13137
+ var defineBuiltIn$4 = defineBuiltIn$b;
13115
13138
  var defineBuiltIns = defineBuiltIns$2;
13116
13139
  var setToStringTag$1 = setToStringTag$5;
13117
- var createIteratorConstructor = iteratorCreateConstructor;
13118
- var InternalStateModule$1 = internalState;
13140
+ var createIteratorConstructor$1 = iteratorCreateConstructor;
13141
+ var InternalStateModule$2 = internalState;
13119
13142
  var anInstance$1 = anInstance$4;
13120
13143
  var isCallable$2 = isCallable$n;
13121
13144
  var hasOwn$4 = hasOwnProperty_1;
13122
13145
  var bind$1 = functionBindContext;
13123
- var classof$1 = classof$a;
13124
- var anObject$1 = anObject$f;
13146
+ var classof$2 = classof$b;
13147
+ var anObject$2 = anObject$g;
13125
13148
  var isObject$2 = isObject$e;
13126
- var $toString$1 = toString$8;
13149
+ var $toString$1 = toString$9;
13127
13150
  var create = objectCreate;
13128
13151
  var createPropertyDescriptor = createPropertyDescriptor$6;
13129
13152
  var getIterator = getIterator$3;
13130
13153
  var getIteratorMethod = getIteratorMethod$4;
13131
13154
  var validateArgumentsLength$1 = validateArgumentsLength$2;
13132
- var wellKnownSymbol$2 = wellKnownSymbol$l;
13155
+ var wellKnownSymbol$3 = wellKnownSymbol$m;
13133
13156
  var arraySort = arraySort$1;
13134
13157
 
13135
- var ITERATOR = wellKnownSymbol$2('iterator');
13158
+ var ITERATOR = wellKnownSymbol$3('iterator');
13136
13159
  var URL_SEARCH_PARAMS = 'URLSearchParams';
13137
13160
  var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';
13138
- var setInternalState$1 = InternalStateModule$1.set;
13139
- var getInternalParamsState = InternalStateModule$1.getterFor(URL_SEARCH_PARAMS);
13140
- var getInternalIteratorState = InternalStateModule$1.getterFor(URL_SEARCH_PARAMS_ITERATOR);
13161
+ var setInternalState$2 = InternalStateModule$2.set;
13162
+ var getInternalParamsState = InternalStateModule$2.getterFor(URL_SEARCH_PARAMS);
13163
+ var getInternalIteratorState = InternalStateModule$2.getterFor(URL_SEARCH_PARAMS_ITERATOR);
13141
13164
  // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
13142
13165
  var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
13143
13166
 
@@ -13157,14 +13180,14 @@ var RegExp$1 = global$5.RegExp;
13157
13180
  var TypeError$2 = global$5.TypeError;
13158
13181
  var decodeURIComponent$1 = global$5.decodeURIComponent;
13159
13182
  var encodeURIComponent$1 = global$5.encodeURIComponent;
13160
- var charAt$2 = uncurryThis$3(''.charAt);
13161
- var join$1 = uncurryThis$3([].join);
13162
- var push$1 = uncurryThis$3([].push);
13163
- var replace$3 = uncurryThis$3(''.replace);
13164
- var shift$1 = uncurryThis$3([].shift);
13165
- var splice = uncurryThis$3([].splice);
13166
- var split$1 = uncurryThis$3(''.split);
13167
- var stringSlice$3 = uncurryThis$3(''.slice);
13183
+ var charAt$2 = uncurryThis$4(''.charAt);
13184
+ var join$1 = uncurryThis$4([].join);
13185
+ var push$1 = uncurryThis$4([].push);
13186
+ var replace$3 = uncurryThis$4(''.replace);
13187
+ var shift$1 = uncurryThis$4([].shift);
13188
+ var splice = uncurryThis$4([].splice);
13189
+ var split$1 = uncurryThis$4(''.split);
13190
+ var stringSlice$3 = uncurryThis$4(''.slice);
13168
13191
 
13169
13192
  var plus = /\+/g;
13170
13193
  var sequences = Array(4);
@@ -13213,8 +13236,8 @@ var serialize = function (it) {
13213
13236
  return replace$3(encodeURIComponent$1(it), find, replacer);
13214
13237
  };
13215
13238
 
13216
- var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {
13217
- setInternalState$1(this, {
13239
+ var URLSearchParamsIterator = createIteratorConstructor$1(function Iterator(params, kind) {
13240
+ setInternalState$2(this, {
13218
13241
  type: URL_SEARCH_PARAMS_ITERATOR,
13219
13242
  iterator: getIterator(getInternalParamsState(params).entries),
13220
13243
  kind: kind
@@ -13252,13 +13275,13 @@ URLSearchParamsState.prototype = {
13252
13275
  if (iteratorMethod) {
13253
13276
  iterator = getIterator(object, iteratorMethod);
13254
13277
  next = iterator.next;
13255
- while (!(step = call$1(next, iterator)).done) {
13256
- entryIterator = getIterator(anObject$1(step.value));
13278
+ while (!(step = call$2(next, iterator)).done) {
13279
+ entryIterator = getIterator(anObject$2(step.value));
13257
13280
  entryNext = entryIterator.next;
13258
13281
  if (
13259
- (first = call$1(entryNext, entryIterator)).done ||
13260
- (second = call$1(entryNext, entryIterator)).done ||
13261
- !call$1(entryNext, entryIterator).done
13282
+ (first = call$2(entryNext, entryIterator)).done ||
13283
+ (second = call$2(entryNext, entryIterator)).done ||
13284
+ !call$2(entryNext, entryIterator).done
13262
13285
  ) throw TypeError$2('Expected sequence with length 2');
13263
13286
  push$1(this.entries, { key: $toString$1(first.value), value: $toString$1(second.value) });
13264
13287
  }
@@ -13307,7 +13330,7 @@ URLSearchParamsState.prototype = {
13307
13330
  var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
13308
13331
  anInstance$1(this, URLSearchParamsPrototype);
13309
13332
  var init = arguments.length > 0 ? arguments[0] : undefined;
13310
- setInternalState$1(this, new URLSearchParamsState(init));
13333
+ setInternalState$2(this, new URLSearchParamsState(init));
13311
13334
  };
13312
13335
 
13313
13336
  var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;
@@ -13431,30 +13454,30 @@ defineBuiltIns(URLSearchParamsPrototype, {
13431
13454
  }, { enumerable: true });
13432
13455
 
13433
13456
  // `URLSearchParams.prototype[@@iterator]` method
13434
- defineBuiltIn$3(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, { name: 'entries' });
13457
+ defineBuiltIn$4(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, { name: 'entries' });
13435
13458
 
13436
13459
  // `URLSearchParams.prototype.toString` method
13437
13460
  // https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior
13438
- defineBuiltIn$3(URLSearchParamsPrototype, 'toString', function toString() {
13461
+ defineBuiltIn$4(URLSearchParamsPrototype, 'toString', function toString() {
13439
13462
  return getInternalParamsState(this).serialize();
13440
13463
  }, { enumerable: true });
13441
13464
 
13442
13465
  setToStringTag$1(URLSearchParamsConstructor, URL_SEARCH_PARAMS);
13443
13466
 
13444
- $$3({ global: true, constructor: true, forced: !USE_NATIVE_URL$1 }, {
13467
+ $$4({ global: true, constructor: true, forced: !USE_NATIVE_URL$1 }, {
13445
13468
  URLSearchParams: URLSearchParamsConstructor
13446
13469
  });
13447
13470
 
13448
13471
  // Wrap `fetch` and `Request` for correct work with polyfilled `URLSearchParams`
13449
13472
  if (!USE_NATIVE_URL$1 && isCallable$2(Headers)) {
13450
- var headersHas = uncurryThis$3(HeadersPrototype.has);
13451
- var headersSet = uncurryThis$3(HeadersPrototype.set);
13473
+ var headersHas = uncurryThis$4(HeadersPrototype.has);
13474
+ var headersSet = uncurryThis$4(HeadersPrototype.set);
13452
13475
 
13453
13476
  var wrapRequestOptions = function (init) {
13454
13477
  if (isObject$2(init)) {
13455
13478
  var body = init.body;
13456
13479
  var headers;
13457
- if (classof$1(body) === URL_SEARCH_PARAMS) {
13480
+ if (classof$2(body) === URL_SEARCH_PARAMS) {
13458
13481
  headers = init.headers ? new Headers(init.headers) : new Headers();
13459
13482
  if (!headersHas(headers, 'content-type')) {
13460
13483
  headersSet(headers, 'content-type', 'application/x-www-form-urlencoded;charset=UTF-8');
@@ -13468,7 +13491,7 @@ if (!USE_NATIVE_URL$1 && isCallable$2(Headers)) {
13468
13491
  };
13469
13492
 
13470
13493
  if (isCallable$2(nativeFetch)) {
13471
- $$3({ global: true, enumerable: true, dontCallGetSet: true, forced: true }, {
13494
+ $$4({ global: true, enumerable: true, dontCallGetSet: true, forced: true }, {
13472
13495
  fetch: function fetch(input /* , init */) {
13473
13496
  return nativeFetch(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});
13474
13497
  }
@@ -13484,7 +13507,7 @@ if (!USE_NATIVE_URL$1 && isCallable$2(Headers)) {
13484
13507
  RequestPrototype.constructor = RequestConstructor;
13485
13508
  RequestConstructor.prototype = RequestPrototype;
13486
13509
 
13487
- $$3({ global: true, constructor: true, dontCallGetSet: true, forced: true }, {
13510
+ $$4({ global: true, constructor: true, dontCallGetSet: true, forced: true }, {
13488
13511
  Request: RequestConstructor
13489
13512
  });
13490
13513
  }
@@ -13495,13 +13518,13 @@ var web_urlSearchParams_constructor = {
13495
13518
  getState: getInternalParamsState
13496
13519
  };// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
13497
13520
 
13498
- var $$2 = _export;
13521
+ var $$3 = _export;
13499
13522
  var DESCRIPTORS$2 = descriptors;
13500
13523
  var USE_NATIVE_URL = urlConstructorDetection;
13501
13524
  var global$4 = global$p;
13502
13525
  var bind = functionBindContext;
13503
- var uncurryThis$2 = functionUncurryThis;
13504
- var defineBuiltIn$2 = defineBuiltIn$a;
13526
+ var uncurryThis$3 = functionUncurryThis;
13527
+ var defineBuiltIn$3 = defineBuiltIn$b;
13505
13528
  var defineBuiltInAccessor = defineBuiltInAccessor$1;
13506
13529
  var anInstance = anInstance$4;
13507
13530
  var hasOwn$3 = hasOwnProperty_1;
@@ -13510,14 +13533,14 @@ var arrayFrom = arrayFrom$1;
13510
13533
  var arraySlice = arraySliceSimple;
13511
13534
  var codeAt = stringMultibyte.codeAt;
13512
13535
  var toASCII = stringPunycodeToAscii;
13513
- var $toString = toString$8;
13536
+ var $toString = toString$9;
13514
13537
  var setToStringTag = setToStringTag$5;
13515
13538
  var validateArgumentsLength = validateArgumentsLength$2;
13516
13539
  var URLSearchParamsModule = web_urlSearchParams_constructor;
13517
- var InternalStateModule = internalState;
13540
+ var InternalStateModule$1 = internalState;
13518
13541
 
13519
- var setInternalState = InternalStateModule.set;
13520
- var getInternalURLState = InternalStateModule.getterFor('URL');
13542
+ var setInternalState$1 = InternalStateModule$1.set;
13543
+ var getInternalURLState = InternalStateModule$1.getterFor('URL');
13521
13544
  var URLSearchParams$1 = URLSearchParamsModule.URLSearchParams;
13522
13545
  var getInternalSearchParamsState = URLSearchParamsModule.getState;
13523
13546
 
@@ -13526,18 +13549,18 @@ var TypeError$1 = global$4.TypeError;
13526
13549
  var parseInt$1 = global$4.parseInt;
13527
13550
  var floor = Math.floor;
13528
13551
  var pow = Math.pow;
13529
- var charAt$1 = uncurryThis$2(''.charAt);
13530
- var exec$1 = uncurryThis$2(/./.exec);
13531
- var join = uncurryThis$2([].join);
13532
- var numberToString = uncurryThis$2(1.0.toString);
13533
- var pop = uncurryThis$2([].pop);
13534
- var push = uncurryThis$2([].push);
13535
- var replace$2 = uncurryThis$2(''.replace);
13536
- var shift = uncurryThis$2([].shift);
13537
- var split = uncurryThis$2(''.split);
13538
- var stringSlice$2 = uncurryThis$2(''.slice);
13539
- var toLowerCase = uncurryThis$2(''.toLowerCase);
13540
- var unshift = uncurryThis$2([].unshift);
13552
+ var charAt$1 = uncurryThis$3(''.charAt);
13553
+ var exec$1 = uncurryThis$3(/./.exec);
13554
+ var join = uncurryThis$3([].join);
13555
+ var numberToString = uncurryThis$3(1.0.toString);
13556
+ var pop = uncurryThis$3([].pop);
13557
+ var push = uncurryThis$3([].push);
13558
+ var replace$2 = uncurryThis$3(''.replace);
13559
+ var shift = uncurryThis$3([].shift);
13560
+ var split = uncurryThis$3(''.split);
13561
+ var stringSlice$2 = uncurryThis$3(''.slice);
13562
+ var toLowerCase = uncurryThis$3(''.toLowerCase);
13563
+ var unshift = uncurryThis$3([].unshift);
13541
13564
 
13542
13565
  var INVALID_AUTHORITY = 'Invalid authority';
13543
13566
  var INVALID_SCHEME = 'Invalid scheme';
@@ -14435,7 +14458,7 @@ URLState.prototype = {
14435
14458
  var URLConstructor = function URL(url /* , base */) {
14436
14459
  var that = anInstance(this, URLPrototype);
14437
14460
  var base = validateArgumentsLength(arguments.length, 1) > 1 ? arguments[1] : undefined;
14438
- var state = setInternalState(that, new URLState(url, false, base));
14461
+ var state = setInternalState$1(that, new URLState(url, false, base));
14439
14462
  if (!DESCRIPTORS$2) {
14440
14463
  that.href = state.serialize();
14441
14464
  that.origin = state.getOrigin();
@@ -14508,13 +14531,13 @@ if (DESCRIPTORS$2) {
14508
14531
 
14509
14532
  // `URL.prototype.toJSON` method
14510
14533
  // https://url.spec.whatwg.org/#dom-url-tojson
14511
- defineBuiltIn$2(URLPrototype, 'toJSON', function toJSON() {
14534
+ defineBuiltIn$3(URLPrototype, 'toJSON', function toJSON() {
14512
14535
  return getInternalURLState(this).serialize();
14513
14536
  }, { enumerable: true });
14514
14537
 
14515
14538
  // `URL.prototype.toString` method
14516
14539
  // https://url.spec.whatwg.org/#URL-stringification-behavior
14517
- defineBuiltIn$2(URLPrototype, 'toString', function toString() {
14540
+ defineBuiltIn$3(URLPrototype, 'toString', function toString() {
14518
14541
  return getInternalURLState(this).serialize();
14519
14542
  }, { enumerable: true });
14520
14543
 
@@ -14523,15 +14546,15 @@ if (NativeURL) {
14523
14546
  var nativeRevokeObjectURL = NativeURL.revokeObjectURL;
14524
14547
  // `URL.createObjectURL` method
14525
14548
  // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL
14526
- if (nativeCreateObjectURL) defineBuiltIn$2(URLConstructor, 'createObjectURL', bind(nativeCreateObjectURL, NativeURL));
14549
+ if (nativeCreateObjectURL) defineBuiltIn$3(URLConstructor, 'createObjectURL', bind(nativeCreateObjectURL, NativeURL));
14527
14550
  // `URL.revokeObjectURL` method
14528
14551
  // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL
14529
- if (nativeRevokeObjectURL) defineBuiltIn$2(URLConstructor, 'revokeObjectURL', bind(nativeRevokeObjectURL, NativeURL));
14552
+ if (nativeRevokeObjectURL) defineBuiltIn$3(URLConstructor, 'revokeObjectURL', bind(nativeRevokeObjectURL, NativeURL));
14530
14553
  }
14531
14554
 
14532
14555
  setToStringTag(URLConstructor, 'URL');
14533
14556
 
14534
- $$2({ global: true, constructor: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS$2 }, {
14557
+ $$3({ global: true, constructor: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS$2 }, {
14535
14558
  URL: URLConstructor
14536
14559
  });/*
14537
14560
  We overwrite standard function for getting mediaSource object
@@ -14551,12 +14574,12 @@ const getUrlObject = fn => {
14551
14574
 
14552
14575
  var promiseNativeConstructor = global$3.Promise;var newPromiseCapability$1 = {};var aCallable = aCallable$6;
14553
14576
 
14554
- var $TypeError = TypeError;
14577
+ var $TypeError$1 = TypeError;
14555
14578
 
14556
14579
  var PromiseCapability = function (C) {
14557
14580
  var resolve, reject;
14558
14581
  this.promise = new C(function ($$resolve, $$reject) {
14559
- if (resolve !== undefined || reject !== undefined) throw $TypeError('Bad Promise constructor');
14582
+ if (resolve !== undefined || reject !== undefined) throw $TypeError$1('Bad Promise constructor');
14560
14583
  resolve = $$resolve;
14561
14584
  reject = $$reject;
14562
14585
  });
@@ -14568,39 +14591,39 @@ var PromiseCapability = function (C) {
14568
14591
  // https://tc39.es/ecma262/#sec-newpromisecapability
14569
14592
  newPromiseCapability$1.f = function (C) {
14570
14593
  return new PromiseCapability(C);
14571
- };var anObject = anObject$f;
14594
+ };var anObject$1 = anObject$g;
14572
14595
  var isObject$1 = isObject$e;
14573
14596
  var newPromiseCapability = newPromiseCapability$1;
14574
14597
 
14575
14598
  var promiseResolve$1 = function (C, x) {
14576
- anObject(C);
14599
+ anObject$1(C);
14577
14600
  if (isObject$1(x) && x.constructor === C) return x;
14578
14601
  var promiseCapability = newPromiseCapability.f(C);
14579
14602
  var resolve = promiseCapability.resolve;
14580
14603
  resolve(x);
14581
14604
  return promiseCapability.promise;
14582
- };var $$1 = _export;
14605
+ };var $$2 = _export;
14583
14606
  var NativePromiseConstructor = promiseNativeConstructor;
14584
- var fails$1 = fails$r;
14607
+ var fails$2 = fails$s;
14585
14608
  var getBuiltIn = getBuiltIn$7;
14586
14609
  var isCallable$1 = isCallable$n;
14587
- var speciesConstructor = speciesConstructor$2;
14610
+ var speciesConstructor$1 = speciesConstructor$3;
14588
14611
  var promiseResolve = promiseResolve$1;
14589
- var defineBuiltIn$1 = defineBuiltIn$a;
14612
+ var defineBuiltIn$2 = defineBuiltIn$b;
14590
14613
 
14591
14614
  var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;
14592
14615
 
14593
14616
  // Safari bug https://bugs.webkit.org/show_bug.cgi?id=200829
14594
- var NON_GENERIC = !!NativePromiseConstructor && fails$1(function () {
14617
+ var NON_GENERIC = !!NativePromiseConstructor && fails$2(function () {
14595
14618
  // eslint-disable-next-line unicorn/no-thenable -- required for testing
14596
14619
  NativePromisePrototype['finally'].call({ then: function () { /* empty */ } }, function () { /* empty */ });
14597
14620
  });
14598
14621
 
14599
14622
  // `Promise.prototype.finally` method
14600
14623
  // https://tc39.es/ecma262/#sec-promise.prototype.finally
14601
- $$1({ target: 'Promise', proto: true, real: true, forced: NON_GENERIC }, {
14624
+ $$2({ target: 'Promise', proto: true, real: true, forced: NON_GENERIC }, {
14602
14625
  'finally': function (onFinally) {
14603
- var C = speciesConstructor(this, getBuiltIn('Promise'));
14626
+ var C = speciesConstructor$1(this, getBuiltIn('Promise'));
14604
14627
  var isFunction = isCallable$1(onFinally);
14605
14628
  return this.then(
14606
14629
  isFunction ? function (x) {
@@ -14617,7 +14640,7 @@ $$1({ target: 'Promise', proto: true, real: true, forced: NON_GENERIC }, {
14617
14640
  if (isCallable$1(NativePromiseConstructor)) {
14618
14641
  var method = getBuiltIn('Promise').prototype['finally'];
14619
14642
  if (NativePromisePrototype['finally'] !== method) {
14620
- defineBuiltIn$1(NativePromisePrototype, 'finally', method, { unsafe: true });
14643
+ defineBuiltIn$2(NativePromisePrototype, 'finally', method, { unsafe: true });
14621
14644
  }
14622
14645
  }/*! @license
14623
14646
  * Shaka Player
@@ -14665,7 +14688,7 @@ const makeResponse = (headers, data, status, uri, responseURL, requestType) => {
14665
14688
  throw new shaka$1.util.Error(severity, shaka$1.util.Error.Category.NETWORK, shaka$1.util.Error.Code.BAD_HTTP_STATUS, uri, status, responseText, headers, requestType);
14666
14689
  };
14667
14690
 
14668
- const goog$1 = {
14691
+ const goog$2 = {
14669
14692
  asserts: {
14670
14693
  assert: () => {}
14671
14694
  }
@@ -14811,7 +14834,7 @@ class HttpFetchPlugin {
14811
14834
  }
14812
14835
 
14813
14836
  if (readObj.done) {
14814
- goog$1.asserts.assert(!readObj.value, 'readObj should be unset when "done" is true.');
14837
+ goog$2.asserts.assert(!readObj.value, 'readObj should be unset when "done" is true.');
14815
14838
  controller.close();
14816
14839
  } else {
14817
14840
  controller.enqueue(readObj.value);
@@ -14974,27 +14997,27 @@ const setupKKFariplay = (player, extensionOptions) => {
14974
14997
  extensionOptions.requestHandlers.push(requestHandler);
14975
14998
  extensionOptions.responseHandlers.push(stripResponseCkc);
14976
14999
  };var isObject = isObject$e;
14977
- var classof = classofRaw$2;
14978
- var wellKnownSymbol$1 = wellKnownSymbol$l;
15000
+ var classof$1 = classofRaw$2;
15001
+ var wellKnownSymbol$2 = wellKnownSymbol$m;
14979
15002
 
14980
- var MATCH$1 = wellKnownSymbol$1('match');
15003
+ var MATCH$1 = wellKnownSymbol$2('match');
14981
15004
 
14982
15005
  // `IsRegExp` abstract operation
14983
15006
  // https://tc39.es/ecma262/#sec-isregexp
14984
15007
  var isRegexp = function (it) {
14985
15008
  var isRegExp;
14986
- return isObject(it) && ((isRegExp = it[MATCH$1]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');
14987
- };var call = functionCall;
15009
+ return isObject(it) && ((isRegExp = it[MATCH$1]) !== undefined ? !!isRegExp : classof$1(it) == 'RegExp');
15010
+ };var call$1 = functionCall;
14988
15011
  var hasOwn$2 = hasOwnProperty_1;
14989
15012
  var isPrototypeOf$2 = objectIsPrototypeOf;
14990
15013
  var regExpFlags = regexpFlags$1;
14991
15014
 
14992
- var RegExpPrototype$1 = RegExp.prototype;
15015
+ var RegExpPrototype$2 = RegExp.prototype;
14993
15016
 
14994
15017
  var regexpGetFlags = function (R) {
14995
15018
  var flags = R.flags;
14996
- return flags === undefined && !('flags' in RegExpPrototype$1) && !hasOwn$2(R, 'flags') && isPrototypeOf$2(RegExpPrototype$1, R)
14997
- ? call(regExpFlags, R) : flags;
15019
+ return flags === undefined && !('flags' in RegExpPrototype$2) && !hasOwn$2(R, 'flags') && isPrototypeOf$2(RegExpPrototype$2, R)
15020
+ ? call$1(regExpFlags, R) : flags;
14998
15021
  };var defineProperty$1 = objectDefineProperty.f;
14999
15022
 
15000
15023
  var proxyAccessor$1 = function (Target, Source, key) {
@@ -15005,35 +15028,35 @@ var proxyAccessor$1 = function (Target, Source, key) {
15005
15028
  });
15006
15029
  };var DESCRIPTORS$1 = descriptors;
15007
15030
  var global$2 = global$p;
15008
- var uncurryThis$1 = functionUncurryThis;
15031
+ var uncurryThis$2 = functionUncurryThis;
15009
15032
  var isForced = isForced_1;
15010
15033
  var inheritIfRequired = inheritIfRequired$2;
15011
15034
  var createNonEnumerableProperty = createNonEnumerableProperty$9;
15012
15035
  var getOwnPropertyNames = objectGetOwnPropertyNames.f;
15013
15036
  var isPrototypeOf$1 = objectIsPrototypeOf;
15014
- var isRegExp = isRegexp;
15015
- var toString$1 = toString$8;
15016
- var getRegExpFlags = regexpGetFlags;
15037
+ var isRegExp$1 = isRegexp;
15038
+ var toString$2 = toString$9;
15039
+ var getRegExpFlags$1 = regexpGetFlags;
15017
15040
  var stickyHelpers = regexpStickyHelpers;
15018
15041
  var proxyAccessor = proxyAccessor$1;
15019
- var defineBuiltIn = defineBuiltIn$a;
15020
- var fails = fails$r;
15042
+ var defineBuiltIn$1 = defineBuiltIn$b;
15043
+ var fails$1 = fails$s;
15021
15044
  var hasOwn$1 = hasOwnProperty_1;
15022
15045
  var enforceInternalState = internalState.enforce;
15023
15046
  var setSpecies = setSpecies$2;
15024
- var wellKnownSymbol = wellKnownSymbol$l;
15047
+ var wellKnownSymbol$1 = wellKnownSymbol$m;
15025
15048
  var UNSUPPORTED_DOT_ALL = regexpUnsupportedDotAll;
15026
15049
  var UNSUPPORTED_NCG = regexpUnsupportedNcg;
15027
15050
 
15028
- var MATCH = wellKnownSymbol('match');
15051
+ var MATCH = wellKnownSymbol$1('match');
15029
15052
  var NativeRegExp = global$2.RegExp;
15030
- var RegExpPrototype = NativeRegExp.prototype;
15053
+ var RegExpPrototype$1 = NativeRegExp.prototype;
15031
15054
  var SyntaxError = global$2.SyntaxError;
15032
- var exec = uncurryThis$1(RegExpPrototype.exec);
15033
- var charAt = uncurryThis$1(''.charAt);
15034
- var replace$1 = uncurryThis$1(''.replace);
15035
- var stringIndexOf = uncurryThis$1(''.indexOf);
15036
- var stringSlice$1 = uncurryThis$1(''.slice);
15055
+ var exec = uncurryThis$2(RegExpPrototype$1.exec);
15056
+ var charAt = uncurryThis$2(''.charAt);
15057
+ var replace$1 = uncurryThis$2(''.replace);
15058
+ var stringIndexOf$1 = uncurryThis$2(''.indexOf);
15059
+ var stringSlice$1 = uncurryThis$2(''.slice);
15037
15060
  // TODO: Use only proper RegExpIdentifierName
15038
15061
  var IS_NCG = /^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/;
15039
15062
  var re1 = /a/g;
@@ -15046,7 +15069,7 @@ var MISSED_STICKY = stickyHelpers.MISSED_STICKY;
15046
15069
  var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;
15047
15070
 
15048
15071
  var BASE_FORCED = DESCRIPTORS$1 &&
15049
- (!CORRECT_NEW || MISSED_STICKY || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG || fails(function () {
15072
+ (!CORRECT_NEW || MISSED_STICKY || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG || fails$1(function () {
15050
15073
  re2[MATCH] = false;
15051
15074
  // RegExp constructor can alter flags and IsRegExp works correct with @@match
15052
15075
  return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';
@@ -15124,8 +15147,8 @@ var handleNCG = function (string) {
15124
15147
  // https://tc39.es/ecma262/#sec-regexp-constructor
15125
15148
  if (isForced('RegExp', BASE_FORCED)) {
15126
15149
  var RegExpWrapper = function RegExp(pattern, flags) {
15127
- var thisIsRegExp = isPrototypeOf$1(RegExpPrototype, this);
15128
- var patternIsRegExp = isRegExp(pattern);
15150
+ var thisIsRegExp = isPrototypeOf$1(RegExpPrototype$1, this);
15151
+ var patternIsRegExp = isRegExp$1(pattern);
15129
15152
  var flagsAreUndefined = flags === undefined;
15130
15153
  var groups = [];
15131
15154
  var rawPattern = pattern;
@@ -15135,24 +15158,24 @@ if (isForced('RegExp', BASE_FORCED)) {
15135
15158
  return pattern;
15136
15159
  }
15137
15160
 
15138
- if (patternIsRegExp || isPrototypeOf$1(RegExpPrototype, pattern)) {
15161
+ if (patternIsRegExp || isPrototypeOf$1(RegExpPrototype$1, pattern)) {
15139
15162
  pattern = pattern.source;
15140
- if (flagsAreUndefined) flags = getRegExpFlags(rawPattern);
15163
+ if (flagsAreUndefined) flags = getRegExpFlags$1(rawPattern);
15141
15164
  }
15142
15165
 
15143
- pattern = pattern === undefined ? '' : toString$1(pattern);
15144
- flags = flags === undefined ? '' : toString$1(flags);
15166
+ pattern = pattern === undefined ? '' : toString$2(pattern);
15167
+ flags = flags === undefined ? '' : toString$2(flags);
15145
15168
  rawPattern = pattern;
15146
15169
 
15147
15170
  if (UNSUPPORTED_DOT_ALL && 'dotAll' in re1) {
15148
- dotAll = !!flags && stringIndexOf(flags, 's') > -1;
15171
+ dotAll = !!flags && stringIndexOf$1(flags, 's') > -1;
15149
15172
  if (dotAll) flags = replace$1(flags, /s/g, '');
15150
15173
  }
15151
15174
 
15152
15175
  rawFlags = flags;
15153
15176
 
15154
15177
  if (MISSED_STICKY && 'sticky' in re1) {
15155
- sticky = !!flags && stringIndexOf(flags, 'y') > -1;
15178
+ sticky = !!flags && stringIndexOf$1(flags, 'y') > -1;
15156
15179
  if (sticky && UNSUPPORTED_Y) flags = replace$1(flags, /y/g, '');
15157
15180
  }
15158
15181
 
@@ -15162,7 +15185,7 @@ if (isForced('RegExp', BASE_FORCED)) {
15162
15185
  groups = handled[1];
15163
15186
  }
15164
15187
 
15165
- result = inheritIfRequired(NativeRegExp(pattern, flags), thisIsRegExp ? this : RegExpPrototype, RegExpWrapper);
15188
+ result = inheritIfRequired(NativeRegExp(pattern, flags), thisIsRegExp ? this : RegExpPrototype$1, RegExpWrapper);
15166
15189
 
15167
15190
  if (dotAll || sticky || groups.length) {
15168
15191
  state = enforceInternalState(result);
@@ -15186,9 +15209,9 @@ if (isForced('RegExp', BASE_FORCED)) {
15186
15209
  proxyAccessor(RegExpWrapper, NativeRegExp, keys[index++]);
15187
15210
  }
15188
15211
 
15189
- RegExpPrototype.constructor = RegExpWrapper;
15190
- RegExpWrapper.prototype = RegExpPrototype;
15191
- defineBuiltIn(global$2, 'RegExp', RegExpWrapper, { constructor: true });
15212
+ RegExpPrototype$1.constructor = RegExpWrapper;
15213
+ RegExpWrapper.prototype = RegExpPrototype$1;
15214
+ defineBuiltIn$1(global$2, 'RegExp', RegExpWrapper, { constructor: true });
15192
15215
  }
15193
15216
 
15194
15217
  // https://tc39.es/ecma262/#sec-get-regexp-@@species
@@ -15270,6 +15293,752 @@ const fixDashManifest = function (data) {
15270
15293
 
15271
15294
  window.manifestDoc = doc;
15272
15295
  return new XMLSerializer().serializeToString(doc);
15296
+ };/* eslint-disable es/no-string-prototype-matchall -- safe */
15297
+ var $$1 = _export;
15298
+ var call = functionCall;
15299
+ var uncurryThis$1 = functionUncurryThis;
15300
+ var createIteratorConstructor = iteratorCreateConstructor;
15301
+ var createIterResultObject = createIterResultObject$3;
15302
+ var requireObjectCoercible = requireObjectCoercible$6;
15303
+ var toLength = toLength$7;
15304
+ var toString$1 = toString$9;
15305
+ var anObject = anObject$g;
15306
+ var isNullOrUndefined = isNullOrUndefined$6;
15307
+ var classof = classofRaw$2;
15308
+ var isRegExp = isRegexp;
15309
+ var getRegExpFlags = regexpGetFlags;
15310
+ var getMethod = getMethod$5;
15311
+ var defineBuiltIn = defineBuiltIn$b;
15312
+ var fails = fails$s;
15313
+ var wellKnownSymbol = wellKnownSymbol$m;
15314
+ var speciesConstructor = speciesConstructor$3;
15315
+ var advanceStringIndex = advanceStringIndex$2;
15316
+ var regExpExec = regexpExecAbstract;
15317
+ var InternalStateModule = internalState;
15318
+ var IS_PURE = isPure;
15319
+
15320
+ var MATCH_ALL = wellKnownSymbol('matchAll');
15321
+ var REGEXP_STRING = 'RegExp String';
15322
+ var REGEXP_STRING_ITERATOR = REGEXP_STRING + ' Iterator';
15323
+ var setInternalState = InternalStateModule.set;
15324
+ var getInternalState = InternalStateModule.getterFor(REGEXP_STRING_ITERATOR);
15325
+ var RegExpPrototype = RegExp.prototype;
15326
+ var $TypeError = TypeError;
15327
+ var stringIndexOf = uncurryThis$1(''.indexOf);
15328
+ var nativeMatchAll = uncurryThis$1(''.matchAll);
15329
+
15330
+ var WORKS_WITH_NON_GLOBAL_REGEX = !!nativeMatchAll && !fails(function () {
15331
+ nativeMatchAll('a', /./);
15332
+ });
15333
+
15334
+ var $RegExpStringIterator = createIteratorConstructor(function RegExpStringIterator(regexp, string, $global, fullUnicode) {
15335
+ setInternalState(this, {
15336
+ type: REGEXP_STRING_ITERATOR,
15337
+ regexp: regexp,
15338
+ string: string,
15339
+ global: $global,
15340
+ unicode: fullUnicode,
15341
+ done: false
15342
+ });
15343
+ }, REGEXP_STRING, function next() {
15344
+ var state = getInternalState(this);
15345
+ if (state.done) return createIterResultObject(undefined, true);
15346
+ var R = state.regexp;
15347
+ var S = state.string;
15348
+ var match = regExpExec(R, S);
15349
+ if (match === null) {
15350
+ state.done = true;
15351
+ return createIterResultObject(undefined, true);
15352
+ }
15353
+ if (state.global) {
15354
+ if (toString$1(match[0]) === '') R.lastIndex = advanceStringIndex(S, toLength(R.lastIndex), state.unicode);
15355
+ return createIterResultObject(match, false);
15356
+ }
15357
+ state.done = true;
15358
+ return createIterResultObject(match, false);
15359
+ });
15360
+
15361
+ var $matchAll = function (string) {
15362
+ var R = anObject(this);
15363
+ var S = toString$1(string);
15364
+ var C = speciesConstructor(R, RegExp);
15365
+ var flags = toString$1(getRegExpFlags(R));
15366
+ var matcher, $global, fullUnicode;
15367
+ matcher = new C(C === RegExp ? R.source : R, flags);
15368
+ $global = !!~stringIndexOf(flags, 'g');
15369
+ fullUnicode = !!~stringIndexOf(flags, 'u');
15370
+ matcher.lastIndex = toLength(R.lastIndex);
15371
+ return new $RegExpStringIterator(matcher, S, $global, fullUnicode);
15372
+ };
15373
+
15374
+ // `String.prototype.matchAll` method
15375
+ // https://tc39.es/ecma262/#sec-string.prototype.matchall
15376
+ $$1({ target: 'String', proto: true, forced: WORKS_WITH_NON_GLOBAL_REGEX }, {
15377
+ matchAll: function matchAll(regexp) {
15378
+ var O = requireObjectCoercible(this);
15379
+ var flags, S, matcher, rx;
15380
+ if (!isNullOrUndefined(regexp)) {
15381
+ if (isRegExp(regexp)) {
15382
+ flags = toString$1(requireObjectCoercible(getRegExpFlags(regexp)));
15383
+ if (!~stringIndexOf(flags, 'g')) throw $TypeError('`.matchAll` does not allow non-global regexes');
15384
+ }
15385
+ if (WORKS_WITH_NON_GLOBAL_REGEX) return nativeMatchAll(O, regexp);
15386
+ matcher = getMethod(regexp, MATCH_ALL);
15387
+ if (matcher === undefined && IS_PURE && classof(regexp) == 'RegExp') matcher = $matchAll;
15388
+ if (matcher) return call(matcher, regexp, O);
15389
+ } else if (WORKS_WITH_NON_GLOBAL_REGEX) return nativeMatchAll(O, regexp);
15390
+ S = toString$1(O);
15391
+ rx = new RegExp(regexp, 'g');
15392
+ return rx[MATCH_ALL](S);
15393
+ }
15394
+ });
15395
+
15396
+ MATCH_ALL in RegExpPrototype || defineBuiltIn(RegExpPrototype, MATCH_ALL, $matchAll);/* eslint-disable no-cond-assign */
15397
+
15398
+ /* eslint-disable prefer-destructuring */
15399
+
15400
+ /*! @license
15401
+ * Shaka Player
15402
+ * Copyright 2016 Google LLC
15403
+ * SPDX-License-Identifier: Apache-2.0
15404
+ */
15405
+ const goog$1 = {
15406
+ asserts: {
15407
+ assert: (condition, message) => {
15408
+ if (!condition) {
15409
+ console.warn('GOOG Assert!', message);
15410
+ }
15411
+ }
15412
+ }
15413
+ };
15414
+
15415
+ const addDefaultTextColor = styles => {
15416
+ const textColor = shaka.text.Cue.defaultTextColor;
15417
+
15418
+ for (const [key, value] of Object.entries(textColor)) {
15419
+ const cue = new shaka.text.Cue(0, 0, '');
15420
+ cue.color = value;
15421
+ styles.set(".".concat(key), cue);
15422
+ }
15423
+
15424
+ const bgColor = shaka.text.Cue.defaultTextBackgroundColor;
15425
+
15426
+ for (const [key, value] of Object.entries(bgColor)) {
15427
+ const cue = new shaka.text.Cue(0, 0, '');
15428
+ cue.backgroundColor = value;
15429
+ styles.set(".".concat(key), cue);
15430
+ }
15431
+ };
15432
+
15433
+ const parseTime = text => {
15434
+ var _Array$from;
15435
+
15436
+ const timeFormat = /(?:(\d{1,}):)?(\d{2}):(\d{2})((\.(\d{1,3})))?/g;
15437
+ const results = (_Array$from = Array.from(text.matchAll(timeFormat))) === null || _Array$from === void 0 ? void 0 : _Array$from[0];
15438
+
15439
+ if (results == null) {
15440
+ return null;
15441
+ } // This capture is optional, but will still be in the array as undefined,
15442
+ // in which case it is 0.
15443
+
15444
+
15445
+ const hours = Number(results[1]) || 0;
15446
+ const minutes = Number(results[2]);
15447
+ const seconds = Number(results[3]);
15448
+ const milliseconds = Number(results[6]) || 0;
15449
+
15450
+ if (minutes > 59 || seconds > 59) {
15451
+ return null;
15452
+ }
15453
+
15454
+ return milliseconds / 1000 + seconds + minutes * 60 + hours * 3600;
15455
+ };
15456
+
15457
+ const parseRegion = block => {
15458
+ if (block[0].trim() !== 'REGION') {
15459
+ return [];
15460
+ }
15461
+
15462
+ const region = new shaka.text.CueRegion();
15463
+ block.slice(1).forEach(word => {
15464
+ let results = null;
15465
+
15466
+ if (results = /^id:(.*)$/.exec(word)) {
15467
+ region.id = results[1];
15468
+ } else if (results = /^width:(\d{1,2}|100)%$/.exec(word)) {
15469
+ region.width = Number(results[1]);
15470
+ } else if (results = /^lines:(\d+)$/.exec(word)) {
15471
+ region.height = Number(results[1]);
15472
+ region.heightUnits = shaka.text.CueRegion.units.LINES;
15473
+ } else if (results = /^regionanchor:(\d{1,2}|100)%,(\d{1,2}|100)%$/.exec(word)) {
15474
+ region.regionAnchorX = Number(results[1]);
15475
+ region.regionAnchorY = Number(results[2]);
15476
+ } else if (results = /^viewportanchor:(\d{1,2}|100)%,(\d{1,2}|100)%$/.exec(word)) {
15477
+ region.viewportAnchorX = Number(results[1]);
15478
+ region.viewportAnchorY = Number(results[2]);
15479
+ } else if (results = /^scroll:up$/.exec(word)) {
15480
+ region.scroll = shaka.text.CueRegion.scrollMode.UP;
15481
+ } else {
15482
+ shaka.log.warning('VTT parser encountered an invalid VTTRegion setting: ', word, ' The setting will be ignored.');
15483
+ }
15484
+ });
15485
+ return [region];
15486
+ };
15487
+ /**
15488
+ * @implements {shaka.extern.TextParser}
15489
+ * @export
15490
+ */
15491
+
15492
+
15493
+ class VttTextParser {
15494
+ /** Constructs a VTT parser. */
15495
+ constructor() {
15496
+ /** @private {boolean} */
15497
+ this.sequenceMode_ = false;
15498
+ /** @private {string} */
15499
+
15500
+ this.manifestType_ = shaka.media.ManifestParser.UNKNOWN;
15501
+ }
15502
+ /**
15503
+ * @override
15504
+ * @export
15505
+ */
15506
+
15507
+
15508
+ parseInit() {
15509
+ goog$1.asserts.assert(false, 'VTT does not have init segments');
15510
+ }
15511
+ /**
15512
+ * @override
15513
+ * @export
15514
+ */
15515
+
15516
+
15517
+ setSequenceMode(sequenceMode) {
15518
+ this.sequenceMode_ = sequenceMode;
15519
+ }
15520
+ /**
15521
+ * @override
15522
+ * @export
15523
+ */
15524
+
15525
+
15526
+ setManifestType(manifestType) {
15527
+ this.manifestType_ = manifestType;
15528
+ }
15529
+ /**
15530
+ * @override
15531
+ * @export
15532
+ */
15533
+
15534
+
15535
+ parseMedia(data, time) {
15536
+ // Get the input as a string. Normalize newlines to \n.
15537
+ let str = shaka.util.StringUtils.fromUTF8(data);
15538
+ str = str.replace(/\r\n|\r(?=[^\n]|$)/gm, '\n');
15539
+ const blocks = str.split(/\n{2,}/m);
15540
+
15541
+ if (!/^WEBVTT($|[ \t\n])/m.test(blocks[0])) {
15542
+ throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL, shaka.util.Error.Category.TEXT, shaka.util.Error.Code.INVALID_TEXT_HEADER);
15543
+ } // Depending on "segmentRelativeVttTiming" configuration,
15544
+ // "vttOffset" will correspond to either "periodStart" (default)
15545
+ // or "segmentStart", for segmented VTT where timings are relative
15546
+ // to the beginning of each segment.
15547
+ // NOTE: "periodStart" is the timestamp offset applied via TextEngine.
15548
+ // It is no longer closely tied to periods, but the name stuck around.
15549
+ // NOTE: This offset and the flag choosing its meaning have no effect on
15550
+ // HLS content, which should use X-TIMESTAMP-MAP and periodStart instead.
15551
+
15552
+
15553
+ let offset = time.vttOffset;
15554
+
15555
+ if (this.manifestType_ == shaka.media.ManifestParser.HLS) {
15556
+ // Only use 'X-TIMESTAMP-MAP' with HLS.
15557
+ if (blocks[0].includes('X-TIMESTAMP-MAP')) {
15558
+ offset = this.computeHlsOffset_(blocks[0], time);
15559
+ } else if (time.periodStart && time.vttOffset == time.periodStart) {
15560
+ // In the case where X-TIMESTAMP-MAP is not used and it is HLS, we
15561
+ // should not use offset unless segment-relative times are used.
15562
+ offset = 0;
15563
+ }
15564
+ }
15565
+
15566
+ const regions = [];
15567
+ /** @type {!Map<string, !shaka.text.Cue>} */
15568
+
15569
+ const styles = new Map();
15570
+ addDefaultTextColor(styles); // Parse cues.
15571
+
15572
+ const ret = [];
15573
+
15574
+ for (const block of blocks.slice(1)) {
15575
+ const lines = block.split('\n');
15576
+ VttTextParser.parseStyle_(lines, styles);
15577
+ regions.push(...parseRegion(lines));
15578
+ const cue = VttTextParser.parseCue_(lines, offset, regions, styles);
15579
+
15580
+ if (cue) {
15581
+ ret.push(cue);
15582
+ }
15583
+ }
15584
+
15585
+ return ret;
15586
+ }
15587
+ /**
15588
+ * @param {string} headerBlock Contains X-TIMESTAMP-MAP.
15589
+ * @param {shaka.extern.TextParser.TimeContext} time
15590
+ * @return {number}
15591
+ * @private
15592
+ */
15593
+
15594
+
15595
+ computeHlsOffset_(headerBlock, time) {
15596
+ // https://bit.ly/2K92l7y
15597
+ // The 'X-TIMESTAMP-MAP' header is used in HLS to align text with
15598
+ // the rest of the media.
15599
+ // The header format is 'X-TIMESTAMP-MAP=MPEGTS:n,LOCAL:m'
15600
+ // (the attributes can go in any order)
15601
+ // where n is MPEG-2 time and m is cue time it maps to.
15602
+ // For example 'X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000'
15603
+ // means an offset of 10 seconds
15604
+ // 900000/MPEG_TIMESCALE - cue time.
15605
+ const cueTimeMatch = headerBlock.match(/LOCAL:((?:(\d{1,}):)?(\d{2}):(\d{2})\.(\d{3}))/m);
15606
+ const mpegTimeMatch = headerBlock.match(/MPEGTS:(\d+)/m);
15607
+
15608
+ if (!cueTimeMatch || !mpegTimeMatch) {
15609
+ throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL, shaka.util.Error.Category.TEXT, shaka.util.Error.Code.INVALID_TEXT_HEADER);
15610
+ }
15611
+
15612
+ const cueTime = parseTime(cueTimeMatch[1]);
15613
+
15614
+ if (cueTime == null) {
15615
+ throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL, shaka.util.Error.Category.TEXT, shaka.util.Error.Code.INVALID_TEXT_HEADER);
15616
+ }
15617
+
15618
+ let mpegTime = Number(mpegTimeMatch[1]);
15619
+ const mpegTimescale = VttTextParser.MPEG_TIMESCALE_;
15620
+ const rolloverSeconds = VttTextParser.TS_ROLLOVER_ / mpegTimescale;
15621
+ let segmentStart = time.segmentStart - time.periodStart;
15622
+
15623
+ while (segmentStart >= rolloverSeconds) {
15624
+ segmentStart -= rolloverSeconds;
15625
+ mpegTime += VttTextParser.TS_ROLLOVER_;
15626
+ }
15627
+
15628
+ return time.periodStart + mpegTime / mpegTimescale - cueTime;
15629
+ }
15630
+ /**
15631
+ * Parses a style block into a Cue object.
15632
+ *
15633
+ * @param {!Array<string>} text
15634
+ * @param {!Map<string, !shaka.text.Cue>} styles
15635
+ * @private
15636
+ */
15637
+
15638
+
15639
+ static parseStyle_(text, styles) {
15640
+ // Skip empty blocks.
15641
+ if (text.length == 1 && !text[0]) {
15642
+ return;
15643
+ } // Skip comment blocks.
15644
+
15645
+
15646
+ if (/^NOTE($|[ \t])/.test(text[0])) {
15647
+ return;
15648
+ } // Only style block are allowed.
15649
+
15650
+
15651
+ if (text[0] != 'STYLE') {
15652
+ return;
15653
+ }
15654
+ /** @type {!Array<!Array<string>>} */
15655
+
15656
+
15657
+ const styleBlocks = [];
15658
+ let lastBlockIndex = -1;
15659
+
15660
+ for (let i = 1; i < text.length; i++) {
15661
+ if (text[i].includes('::cue')) {
15662
+ styleBlocks.push([]);
15663
+ lastBlockIndex = styleBlocks.length - 1;
15664
+ }
15665
+
15666
+ if (lastBlockIndex == -1) {
15667
+ continue;
15668
+ }
15669
+
15670
+ styleBlocks[lastBlockIndex].push(text[i]);
15671
+
15672
+ if (text[i].includes('}')) {
15673
+ lastBlockIndex = -1;
15674
+ }
15675
+ }
15676
+
15677
+ for (const styleBlock of styleBlocks) {
15678
+ let styleSelector = 'global'; // Look for what is within parentheses. For example:
15679
+ // <code>:: cue (b) {</code>, what we are looking for is <code>b</code>
15680
+
15681
+ const selector = styleBlock[0].match(/\((.*)\)/);
15682
+
15683
+ if (selector) {
15684
+ styleSelector = selector.pop();
15685
+ } // We start at 1 to avoid '::cue' and end earlier to avoid '}'
15686
+
15687
+
15688
+ let propertyLines = styleBlock.slice(1, -1);
15689
+
15690
+ if (styleBlock[0].includes('}')) {
15691
+ const payload = /\{(.*?)\}/.exec(styleBlock[0]);
15692
+
15693
+ if (payload) {
15694
+ propertyLines = payload[1].split(';');
15695
+ }
15696
+ } // Continue styles over multiple selectors if necessary.
15697
+ // For example,
15698
+ // ::cue(b) { background: white; } ::cue(b) { color: blue; }
15699
+ // should set both the background and foreground of bold tags.
15700
+
15701
+
15702
+ let cue = styles.get(styleSelector);
15703
+
15704
+ if (!cue) {
15705
+ cue = new shaka.text.Cue(0, 0, '');
15706
+ }
15707
+
15708
+ let validStyle = false;
15709
+
15710
+ for (let i = 0; i < propertyLines.length; i++) {
15711
+ // We look for CSS properties. As a general rule they are separated by
15712
+ // <code>:</code>. Eg: <code>color: red;</code>
15713
+ const lineParts = /^\s*([^:]+):\s*(.*)/.exec(propertyLines[i]);
15714
+
15715
+ if (lineParts) {
15716
+ const name = lineParts[1].trim();
15717
+ const value = lineParts[2].trim().replace(';', '');
15718
+
15719
+ switch (name) {
15720
+ case 'background-color':
15721
+ case 'background':
15722
+ validStyle = true;
15723
+ cue.backgroundColor = value;
15724
+ break;
15725
+
15726
+ case 'color':
15727
+ validStyle = true;
15728
+ cue.color = value;
15729
+ break;
15730
+
15731
+ case 'font-family':
15732
+ validStyle = true;
15733
+ cue.fontFamily = value;
15734
+ break;
15735
+
15736
+ case 'font-size':
15737
+ validStyle = true;
15738
+ cue.fontSize = value;
15739
+ break;
15740
+
15741
+ case 'font-weight':
15742
+ if (parseInt(value, 10) >= 700 || value == 'bold') {
15743
+ validStyle = true;
15744
+ cue.fontWeight = shaka.text.Cue.fontWeight.BOLD;
15745
+ }
15746
+
15747
+ break;
15748
+
15749
+ case 'font-style':
15750
+ switch (value) {
15751
+ case 'normal':
15752
+ validStyle = true;
15753
+ cue.fontStyle = shaka.text.Cue.fontStyle.NORMAL;
15754
+ break;
15755
+
15756
+ case 'italic':
15757
+ validStyle = true;
15758
+ cue.fontStyle = shaka.text.Cue.fontStyle.ITALIC;
15759
+ break;
15760
+
15761
+ case 'oblique':
15762
+ validStyle = true;
15763
+ cue.fontStyle = shaka.text.Cue.fontStyle.OBLIQUE;
15764
+ break;
15765
+ }
15766
+
15767
+ break;
15768
+
15769
+ case 'opacity':
15770
+ validStyle = true;
15771
+ cue.opacity = parseFloat(value);
15772
+ break;
15773
+
15774
+ case 'text-combine-upright':
15775
+ validStyle = true;
15776
+ cue.textCombineUpright = value;
15777
+ break;
15778
+
15779
+ case 'text-shadow':
15780
+ validStyle = true;
15781
+ cue.textShadow = value;
15782
+ break;
15783
+
15784
+ case 'white-space':
15785
+ validStyle = true;
15786
+ cue.wrapLine = value != 'noWrap';
15787
+ break;
15788
+
15789
+ default:
15790
+ shaka.log.warning('VTT parser encountered an unsupported style: ', lineParts);
15791
+ break;
15792
+ }
15793
+ }
15794
+ }
15795
+
15796
+ if (validStyle) {
15797
+ styles.set(styleSelector, cue);
15798
+ }
15799
+ }
15800
+ }
15801
+ /**
15802
+ * Parses a text block into a Cue object.
15803
+ *
15804
+ * @param {!Array<string>} text
15805
+ * @param {number} timeOffset
15806
+ * @param {!Array<!shaka.text.CueRegion>} regions
15807
+ * @param {!Map<string, !shaka.text.Cue>} styles
15808
+ * @return {shaka.text.Cue}
15809
+ * @private
15810
+ */
15811
+
15812
+
15813
+ static parseCue_(text, timeOffset, regions, styles) {
15814
+ // Skip empty blocks.
15815
+ if (text.length == 1 && !text[0]) {
15816
+ return null;
15817
+ } // Skip comment blocks.
15818
+
15819
+
15820
+ if (/^NOTE($|[ \t])/.test(text[0])) {
15821
+ return null;
15822
+ } // Skip style and region blocks.
15823
+
15824
+
15825
+ if (text[0] == 'STYLE' || text[0] == 'REGION') {
15826
+ return null;
15827
+ }
15828
+
15829
+ let id = null;
15830
+
15831
+ if (!text[0].includes('-->')) {
15832
+ id = text[0];
15833
+ text.splice(0, 1);
15834
+ } // Parse the times.
15835
+
15836
+
15837
+ let [start, end] = text[0].split('-->').map(part => parseTime(part.trim()));
15838
+
15839
+ if (start == null || end == null) {
15840
+ shaka.log.alwaysWarn('Failed to parse VTT time code. Cue skipped:', id, text);
15841
+ return null;
15842
+ }
15843
+
15844
+ start += timeOffset;
15845
+ end += timeOffset; // Get the payload.
15846
+
15847
+ const payload = text.slice(1).join('\n').trim();
15848
+ let cue = null;
15849
+
15850
+ if (styles.has('global')) {
15851
+ cue = styles.get('global').clone();
15852
+ cue.startTime = start;
15853
+ cue.endTime = end;
15854
+ cue.payload = payload;
15855
+ } else {
15856
+ cue = new shaka.text.Cue(start, end, payload);
15857
+ } // Parse optional settings.
15858
+
15859
+
15860
+ text[0].split(/\s+/g).slice(3).forEach(word => {
15861
+ if (!word.trim()) {
15862
+ return;
15863
+ }
15864
+
15865
+ if (!VttTextParser.parseCueSetting(cue, word, regions)) {
15866
+ shaka.log.warning('VTT parser encountered an invalid VTT setting: ', word, ' The setting will be ignored.');
15867
+ }
15868
+ });
15869
+ shaka.text.Cue.parseCuePayload(cue, styles);
15870
+
15871
+ if (id != null) {
15872
+ cue.id = id;
15873
+ }
15874
+
15875
+ return cue;
15876
+ }
15877
+ /**
15878
+ * Parses a WebVTT setting from the given word.
15879
+ *
15880
+ * @param {!shaka.text.Cue} cue
15881
+ * @param {string} word
15882
+ * @param {!Array<!shaka.text.CueRegion>} regions
15883
+ * @return {boolean} True on success.
15884
+ */
15885
+
15886
+
15887
+ static parseCueSetting(cue, word, regions) {
15888
+ let results = null;
15889
+
15890
+ if (results = /^align:(start|middle|center|end|left|right)$/.exec(word)) {
15891
+ VttTextParser.setTextAlign_(cue, results[1]);
15892
+ } else if (results = /^vertical:(lr|rl)$/.exec(word)) {
15893
+ VttTextParser.setVerticalWritingMode_(cue, results[1]);
15894
+ } else if (results = /^size:([\d.]+)%$/.exec(word)) {
15895
+ cue.size = Number(results[1]);
15896
+ } else if (results = /^position:([\d.]+)%(?:,(line-left|line-right|middle|center|start|end|auto))?$/.exec(word)) {
15897
+ cue.position = Number(results[1]);
15898
+
15899
+ if (results[2]) {
15900
+ VttTextParser.setPositionAlign_(cue, results[2]);
15901
+ }
15902
+ } else if (results = /^region:(.*)$/.exec(word)) {
15903
+ const region = VttTextParser.getRegionById_(regions, results[1]);
15904
+
15905
+ if (region) {
15906
+ cue.region = region;
15907
+ }
15908
+ } else {
15909
+ return VttTextParser.parsedLineValueAndInterpretation_(cue, word);
15910
+ }
15911
+
15912
+ return true;
15913
+ }
15914
+ /**
15915
+ *
15916
+ * @param {!Array<!shaka.text.CueRegion>} regions
15917
+ * @param {string} id
15918
+ * @return {?shaka.text.CueRegion}
15919
+ * @private
15920
+ */
15921
+
15922
+
15923
+ static getRegionById_(regions, id) {
15924
+ const regionsWithId = regions.filter(region => region.id == id);
15925
+
15926
+ if (!regionsWithId.length) {
15927
+ shaka.log.warning('VTT parser could not find a region with id: ', id, ' The region will be ignored.');
15928
+ return null;
15929
+ }
15930
+
15931
+ goog$1.asserts.assert(regionsWithId.length == 1, 'VTTRegion ids should be unique!');
15932
+ return regionsWithId[0];
15933
+ }
15934
+ /**
15935
+ * @param {!shaka.text.Cue} cue
15936
+ * @param {string} align
15937
+ * @private
15938
+ */
15939
+
15940
+
15941
+ static setTextAlign_(cue, align) {
15942
+ const Cue = shaka.text.Cue;
15943
+
15944
+ if (align == 'middle') {
15945
+ cue.textAlign = Cue.textAlign.CENTER;
15946
+ } else {
15947
+ goog$1.asserts.assert(align.toUpperCase() in Cue.textAlign, "".concat(align.toUpperCase(), " Should be in Cue.textAlign values!"));
15948
+ cue.textAlign = Cue.textAlign[align.toUpperCase()];
15949
+ }
15950
+ }
15951
+ /**
15952
+ * @param {!shaka.text.Cue} cue
15953
+ * @param {string} align
15954
+ * @private
15955
+ */
15956
+
15957
+
15958
+ static setPositionAlign_(cue, align) {
15959
+ const Cue = shaka.text.Cue;
15960
+
15961
+ if (align == 'line-left' || align == 'start') {
15962
+ cue.positionAlign = Cue.positionAlign.LEFT;
15963
+ } else if (align == 'line-right' || align == 'end') {
15964
+ cue.positionAlign = Cue.positionAlign.RIGHT;
15965
+ } else if (align == 'center' || align == 'middle') {
15966
+ cue.positionAlign = Cue.positionAlign.CENTER;
15967
+ } else {
15968
+ cue.positionAlign = Cue.positionAlign.AUTO;
15969
+ }
15970
+ }
15971
+ /**
15972
+ * @param {!shaka.text.Cue} cue
15973
+ * @param {string} value
15974
+ * @private
15975
+ */
15976
+
15977
+
15978
+ static setVerticalWritingMode_(cue, value) {
15979
+ const Cue = shaka.text.Cue;
15980
+
15981
+ if (value == 'lr') {
15982
+ cue.writingMode = Cue.writingMode.VERTICAL_LEFT_TO_RIGHT;
15983
+ } else {
15984
+ cue.writingMode = Cue.writingMode.VERTICAL_RIGHT_TO_LEFT;
15985
+ }
15986
+ }
15987
+ /**
15988
+ * @param {!shaka.text.Cue} cue
15989
+ * @param {string} word
15990
+ * @return {boolean}
15991
+ * @private
15992
+ */
15993
+
15994
+
15995
+ static parsedLineValueAndInterpretation_(cue, word) {
15996
+ const Cue = shaka.text.Cue;
15997
+ let results = null;
15998
+
15999
+ if (results = /^line:([\d.]+)%(?:,(start|end|center))?$/.exec(word)) {
16000
+ cue.lineInterpretation = Cue.lineInterpretation.PERCENTAGE;
16001
+ cue.line = Number(results[1]);
16002
+
16003
+ if (results[2]) {
16004
+ goog$1.asserts.assert(results[2].toUpperCase() in Cue.lineAlign, "".concat(results[2].toUpperCase(), " Should be in Cue.lineAlign values!"));
16005
+ cue.lineAlign = Cue.lineAlign[results[2].toUpperCase()];
16006
+ }
16007
+ } else if (results = /^line:(-?\d+)(?:,(start|end|center))?$/.exec(word)) {
16008
+ cue.lineInterpretation = Cue.lineInterpretation.LINE_NUMBER;
16009
+ cue.line = Number(results[1]);
16010
+
16011
+ if (results[2]) {
16012
+ goog$1.asserts.assert(results[2].toUpperCase() in Cue.lineAlign, "".concat(results[2].toUpperCase(), " Should be in Cue.lineAlign values!"));
16013
+ cue.lineAlign = Cue.lineAlign[results[2].toUpperCase()];
16014
+ }
16015
+ } else {
16016
+ return false;
16017
+ }
16018
+
16019
+ return true;
16020
+ }
16021
+
16022
+ }
16023
+ /**
16024
+ * @const {number}
16025
+ * @private
16026
+ */
16027
+
16028
+
16029
+ VttTextParser.MPEG_TIMESCALE_ = 90000;
16030
+ /**
16031
+ * At this value, timestamps roll over in TS content.
16032
+ * @const {number}
16033
+ * @private
16034
+ */
16035
+
16036
+ VttTextParser.TS_ROLLOVER_ = 0x200000000;
16037
+
16038
+ VttTextParser.register = shakaNameSpace => {
16039
+ shakaNameSpace.text.TextEngine.registerParser('text/vtt', () => new VttTextParser());
16040
+ shakaNameSpace.text.TextEngine.registerParser('text/vtt; codecs="vtt"', () => new VttTextParser());
16041
+ shakaNameSpace.text.TextEngine.registerParser('text/vtt; codecs="wvtt"', () => new VttTextParser());
15273
16042
  };/*! @license
15274
16043
  * Shaka Player
15275
16044
  * Copyright 2016 Google LLC
@@ -16171,9 +16940,13 @@ class UITextDisplayer {
16171
16940
  } else if (cue.textAlign == Cue.textAlign.RIGHT || cue.textAlign == Cue.textAlign.END) {
16172
16941
  style.width = '100%';
16173
16942
  style.alignItems = 'end';
16174
- }
16943
+ } // in VTT displayAlign can't be set, it defaults to 'after',
16944
+ // but for vertical, it should be 'before'
16945
+
16175
16946
 
16176
- if (cue.displayAlign == Cue.displayAlign.BEFORE) {
16947
+ if (/vertical/.test(cue.writingMode)) {
16948
+ style.justifyContent = 'flex-start';
16949
+ } else if (cue.displayAlign == Cue.displayAlign.BEFORE) {
16177
16950
  style.justifyContent = 'flex-start';
16178
16951
  } else if (cue.displayAlign == Cue.displayAlign.CENTER) {
16179
16952
  style.justifyContent = 'center';
@@ -16545,6 +17318,7 @@ const loadShaka = async function (videoElement) {
16545
17318
  return getQualityItem(activeTrack);
16546
17319
  };
16547
17320
 
17321
+ VttTextParser.register(shaka);
16548
17322
  HttpFetchPlugin.register(shaka);
16549
17323
  const networkEngine = player.getNetworkingEngine();
16550
17324
  networkEngine.registerRequestFilter((type, request) => extensionOptions.requestHandlers.reduce((merged, handler) => handler(type, merged, player, extensionOptions), request));
@@ -17007,8 +17781,8 @@ const shouldPause = _ref => {
17007
17781
 
17008
17782
 
17009
17783
  const menuClasses = {
17010
- default: /*#__PURE__*/css$1(LanguageMenu.styles, "production" === "production" ? "" : ";label:default;", "production" === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZW1pdW1QbGF5ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUVXIiwiZmlsZSI6IlByZW1pdW1QbGF5ZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1uZXN0ZWQtdGVybmFyeSAqL1xuaW1wb3J0IHt1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtjc3N9IGZyb20gJ0BlbW90aW9uL2NzcydcbmltcG9ydCB1c2VEaW1lbnNpb25zIGZyb20gJ3JlYWN0LWNvb2wtZGltZW5zaW9ucydcbmltcG9ydCB7UmVzaXplT2JzZXJ2ZXJ9IGZyb20gJ0BqdWdnbGUvcmVzaXplLW9ic2VydmVyJ1xuXG5pbXBvcnQge2hhbmRsZUVycm9yfSBmcm9tICdwbGF5ZXJDb3JlL2Vycm9ycydcbmltcG9ydCB7b259IGZyb20gJ3V0aWwvZXZlbnRzJ1xuaW1wb3J0IHtoYXZlUG9pbnRlciwgaXNEZXNrdG9wfSBmcm9tICd1dGlsL2Vudmlyb25tZW50J1xuaW1wb3J0IG11bHRpUmVmIGZyb20gJ3V0aWwvbXVsdGlSZWYnXG5pbXBvcnQge29uVmlld01vZGVDaGFuZ2UsIHRvZ2dsZUZ1bGxzY3JlZW59IGZyb20gJ3V0aWwvdmlld01vZGVzJ1xuaW1wb3J0IHt1c2VBdXRvSGlkZX0gZnJvbSAnaG9va3MnXG5pbXBvcnQge0ludGxQcm92aWRlcn0gZnJvbSAnY29udGV4dC9JMThuJ1xuaW1wb3J0IHtnZXRNZWRpYVRpbWUsIGlzQnVmZmVyZWR9IGZyb20gJ3BsYXllckNvcmUvbWVkaWFCaW5kaW5ncydcbmltcG9ydCBFcnJvciBmcm9tICdwbGF5ZXJVaS9FcnJvcidcbmltcG9ydCBMYXlvdXQgZnJvbSAncGxheWVyVWkvRGVmYXVsdExheW91dCdcbmltcG9ydCB7XG4gIEJ1dHRvbixcbiAgTGl2ZUJ1dHRvbixcbiAgRnVsbHNjcmVlbkJ1dHRvbixcbiAgUGxheUJ1dHRvbixcbiAgRm9yd2FyZEJ1dHRvbixcbn0gZnJvbSAncGxheWVyVWkvYnV0dG9ucydcbmltcG9ydCBTZWVrYmFyIGZyb20gJ3BsYXllclVpL1NlZWtiYXInXG5pbXBvcnQgRGlzcGxheVRpbWUgZnJvbSAncGxheWVyVWkvRGlzcGxheVRpbWUnXG5pbXBvcnQgTG9hZGluZ1NwaW5uZXIgZnJvbSAncGxheWVyVWkvTG9hZGluZ1NwaW5uZXInXG5pbXBvcnQgQmFja2Ryb3AgZnJvbSAncGxheWVyVWkvQmFja2Ryb3AnXG5pbXBvcnQgU2V0dGluZ3MgZnJvbSAncGxheWVyVWkvU2V0dGluZ3MnXG5pbXBvcnQgT3ZlcmxheVBhbmVsIGZyb20gJ3BsYXllclVpL092ZXJsYXlQYW5lbCdcbmltcG9ydCBMYW5ndWFnZU1lbnUgZnJvbSAncGxheWVyVWkvTGFuZ3VhZ2VNZW51J1xuaW1wb3J0IFBsYXlQYW5lbCBmcm9tICdwbGF5ZXJVaS9QbGF5UGFuZSdcbmltcG9ydCBWb2x1bWVDb250cm9sIGZyb20gJ2NvbXBvbmVudC9Wb2x1bWVDb250cm9sJ1xuaW1wb3J0IENhc3RVaSBmcm9tICdjYXN0L0Nhc3RVaSdcbmltcG9ydCB7bGlua0Nhc3R9IGZyb20gJ2Nhc3QvZnJhbWV3b3JrJ1xuaW1wb3J0IHtDYXN0U3RhdGV9IGZyb20gJ0VudW0nXG5pbXBvcnQge2Rpc3BhdGNoQ2hhcHRlckV2ZW50c30gZnJvbSAnLi90aW1lbGluZSdcbmltcG9ydCBWaWRlbyBmcm9tICcuLi9WaWRlbydcbmltcG9ydCB7Z2V0TGFuZ3VhZ2VPcHRpb25zLCBnZXRRdWFsaXR5T3B0aW9ucywgZ2V0U2V0dGluZ3NEYXRhfSBmcm9tICcuL3NldHRpbmdzJ1xuaW1wb3J0IHtsaW5rTWVkaWFWb2x1bWUsIHN5bmNWb2x1bWV9IGZyb20gJy4vdm9sdW1lJ1xuaW1wb3J0IFNlZWtQcmV2aWV3IGZyb20gJy4vU2Vla1ByZXZpZXcnXG5cbmNvbnN0IHNpemVzID0ge1xuICAnc21hbGwtZW1iZWQnOiAyMDAsXG4gIGVtYmVkOiA0MDAsXG4gICd0YWJsZXQtcG9ydHJhaXQnOiA2MDAsXG4gICd0YWJsZXQtbGFuZHNjYXBlJzogOTAwLFxuICBkZXNrdG9wOiAxMjAwLFxufVxuXG5jb25zdCB1c2VMaW5rU3RhdGUgPSAocmVxdWVzdCwgZGVwZW5kZW5jaWVzID0gW10pID0+IHtcbiAgY29uc3QgW3N0YXRlLCBzZXRTdGF0ZV0gPSB1c2VTdGF0ZSgpXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVxdWVzdChzZXRTdGF0ZSlcbiAgfSwgZGVwZW5kZW5jaWVzKVxuICByZXR1cm4gc3RhdGVcbn1cblxuY29uc3QgZmxpcFN0YXRlID0gc3RhdGUgPT4gKHN0YXRlID09PSAncGxheWluZycgPyAncGF1c2VkJyA6ICdwbGF5aW5nJylcblxuLy8gRklYTUU6IHRvbyBmZXcgbGluZXMgdG8gc3BsaXQgYSBmaWxlLCBsb29raW5nIGEgYmV0dGVyIHBsYWNlXG5jb25zdCBnZXRUaHVtYm5haWxzVXJsID0gc291cmNlID0+XG4gIFtdLmNvbmNhdChzb3VyY2UpLmZpbmQoaXRlbSA9PiBpdGVtLnR5cGUgPT09ICd0aHVtYm5haWwnKT8uc3JjXG5cbmNvbnN0IGRlZmF1bHRTZXR0aW5ncyA9IHt9XG5cbmNvbnN0IHNob3VsZFBhdXNlID0gKHt1c2VyRm9jdXMsIHVpVHlwZX0pID0+XG4gICh1aVR5cGUgPT09ICdtb2JpbGUnICYmIC9zZXR0aW5nc3xjaGFwdGVyLWxpc3QvLnRlc3QodXNlckZvY3VzKSkgfHxcbiAgL2Jsb2NraW5nfHNlZWtiYXJ8c2hhcmUtaW5uZXIvLnRlc3QodXNlckZvY3VzKVxuXG4vLyBUT0RPIGV4dHJhY3QgdG8gc29tZXdoZXJlIGVsc2VcbmNvbnN0IG1lbnVDbGFzc2VzID0ge1xuICBkZWZhdWx0OiBjc3MoTGFuZ3VhZ2VNZW51LnN0eWxlcyksXG4gIGRlc2t0b3A6IGNzcyhMYW5ndWFnZU1lbnUuc3R5bGVzLCBMYW5ndWFnZU1lbnUuZGVza3RvcFN0eWxlcyksXG59XG5cbmNvbnN0IExhbmd1YWdlU2V0dGluZ3MgPSAoe1xuICB1aVR5cGUsXG4gIGF1ZGlvVHJhY2tzID0gW10sXG4gIHRleHRUcmFja3MgPSBbXSxcbiAgZ2V0UGxheWVyLFxuICBvbkNoYW5nZSxcbiAgc2xvdHMgPSB7TGFuZ3VhZ2VNZW51fSxcbiAgLi4ucmVzdFxufSkgPT4ge1xuICBjb25zdCBvcHRpb25zID0gZ2V0TGFuZ3VhZ2VPcHRpb25zKGdldFBsYXllcigpLCB7YXVkaW9UcmFja3MsIHRleHRUcmFja3N9KVxuICByZXR1cm4gKFxuICAgIGF1ZGlvVHJhY2tzLmxlbmd0aCA+IDAgJiZcbiAgICB0ZXh0VHJhY2tzLmxlbmd0aCA+IDAgJiYgKFxuICAgIDxPdmVybGF5UGFuZWwgYnV0dG9uSWNvbj1cInN1YnRpdGxlXCI+XG4gICAgICA8c2xvdHMuTGFuZ3VhZ2VNZW51XG4gICAgICAgIHVpVHlwZT17dWlUeXBlfVxuICAgICAgICBjbGFzc2VzPXttZW51Q2xhc3Nlc31cbiAgICAgICAgc2VjdGlvbk9wdGlvbnM9e1tvcHRpb25zLmF1ZGlvVHJhY2tzLCBvcHRpb25zLnRleHRUcmFja3NdfVxuICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgIHsuLi5yZXN0fVxuICAgICAgLz5cbiAgICA8L092ZXJsYXlQYW5lbD5cbiAgICApXG4gIClcbn1cblxuY29uc3QgUHJlbWl1bVBsYXllciA9ICh7XG4gIHNvdXJjZSxcbiAgc3RhcnRUaW1lLFxuICBxdWFsaXR5ID0ge30sXG4gIHRpdGxlLFxuICBtZXRhZGF0YSxcbiAgY2hhbm5lbFRpdGxlLFxuICBjaGFwdGVycyxcbiAgcGxheWJhY2tTdGF0ZTogYXBwUGxheWJhY2tTdGF0ZSxcbiAgY3VycmVudFRpbWU6IGFwcEN1cnJlbnRUaW1lLFxuICBwbGF5YmFja1JhdGU6IGFwcFBsYXliYWNrUmF0ZSxcbiAgbG9vcCxcbiAgdm9sdW1lOiBhcHBWb2x1bWUsXG4gIGF1ZGlvVHJhY2s6IGFwcEF1ZGlvVHJhY2ssXG4gIHRleHRUcmFjazogYXBwVGV4dFRyYWNrLFxuICB0aHVtYm5haWxzVXJsLFxuICBjb250cm9scyA9IHthdXRvaGlkZTogMzAwMH0sXG4gIG1hcmtzID0gW10sXG4gIC8vIFRPRE8gc2VjdGlvbklkXG4gIGludGwsXG4gIHNldHRpbmdzOiBhcHBTZXR0aW5ncyA9IGRlZmF1bHRTZXR0aW5ncyxcbiAgYmxvY2tpbmcsXG4gIHBsdWdpbnMgPSBbXSxcbiAgbW9kdWxlc0NvbmZpZyxcblxuICB1aVR5cGUgPSBpc0Rlc2t0b3AoKSA/ICdkZXNrdG9wJyA6ICdtb2JpbGUnLFxuICBzdHlsZSxcbiAgY2hpbGRyZW4sXG4gIHVpTW9kZSA9ICdzdGFuZGFsb25lJyxcbiAgY2FzdDogY2FzdE9wdGlvbnMgPSAnY29tcGF0aWJsZScsXG4gIHNsb3RzLFxuICBzbG90UHJvcHMgPSB7fSxcbiAgb25FcnJvcixcbiAgb25QbGF5YmFja1N0YXRlQ2hhbmdlLFxuICBvbkJhY2ssXG4gIG9uQ2FzdCxcbiAgb25DaGFuZ2VOZXh0LFxuICBvbkNoYW5nZVByZXZpb3VzLFxuICBvbk9wZW5TZXR0aW5ncyxcbiAgb25DaGFuZ2VTZXR0aW5ncyxcbiAgb25QbGF5ZXJMb2FkZWQsXG4gIG9uQmxvY2tlZEF1dG9wbGF5LFxuICBvblBsYXlsb2dGaXJlZCxcbiAgLi4udmlkZW9Qcm9wc1xufSkgPT4ge1xuICBjb25zdCBjb21wb25lbnRzID0ge1xuICAgIFZvbHVtZUNvbnRyb2wsXG4gICAgQ2FzdFVpLFxuICAgIERpc3BsYXlUaW1lLFxuICAgIExpdmVCdXR0b24sXG4gICAgU2Vla2JhcixcbiAgICBTZXR0aW5ncyxcbiAgICAuLi5zbG90cyxcbiAgfVxuICBjb25zdCB2aWRlb1JlZiA9IHVzZVJlZigpXG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZigpXG4gIGNvbnN0IHBsYXllclJlZiA9IHVzZVJlZigpXG4gIGNvbnN0IGFkQ29udGFpbmVyUmVmID0gdXNlUmVmKClcbiAgY29uc3QgcmVmcyA9IHVzZVJlZih7fSlcbiAgLy8gVE9ETyBtb3ZlIFJXRCByZWxhdGVkIHRvIExheW91dFxuICBjb25zdCB7XG4gICAgY3VycmVudEJyZWFrcG9pbnQ6IHNpemUsXG4gICAgd2lkdGgsXG4gICAgb2JzZXJ2ZSxcbiAgfSA9IHVzZURpbWVuc2lvbnMoe1xuICAgIHBvbHlmaWxsOiBSZXNpemVPYnNlcnZlcixcbiAgICBicmVha3BvaW50czogc2l6ZXMsXG4gIH0pXG4gIGNvbnN0IFtpc1VzZXJBY3RpdmUsIHNldElzVXNlckFjdGl2ZV0gPSB1c2VTdGF0ZShcbiAgICB1aU1vZGUgPT09ICdzdGFuZGFsb25lJyA/IHRydWUgOiB2aWRlb1Byb3BzLmF1dG9wbGF5XG4gIClcbiAgY29uc3QgW3VzZXJGb2N1cywgc2V0VXNlckZvY3VzXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbdGFyZ2V0U3RhdGUsIHNldFRhcmdldFN0YXRlXSA9IHVzZVN0YXRlKCgpID0+ICh7XG4gICAgcGxheWJhY2tTdGF0ZTpcbiAgICAgIGFwcFBsYXliYWNrU3RhdGUgfHwgKHZpZGVvUHJvcHMuYXV0b3BsYXkgPyAncGxheWluZycgOiAncGF1c2VkJyksXG4gICAgY3VycmVudFRpbWU6IHN0YXJ0VGltZSxcbiAgfSkpXG4gIGNvbnN0IFtwbGF5YmFja1RpbWUsIHNldFBsYXliYWNrVGltZV0gPSB1c2VTdGF0ZSh7XG4gICAgY3VycmVudFRpbWU6IDAsXG4gICAgYnVmZmVyVGltZTogMCxcbiAgfSlcbiAgY29uc3QgdG9nZ2xlUGxheSA9IChvdmVycmlkZVN0YXRlLCB7dHJpZ2dlcmVkQnl9ID0ge30pID0+IHtcbiAgICBpZiAodGFyZ2V0U3RhdGUucGxheWJhY2tTdGF0ZSAhPT0gb3ZlcnJpZGVTdGF0ZSkge1xuICAgICAgc2V0VGFyZ2V0U3RhdGUoc3RhdGUgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHBsYXliYWNrU3RhdGU6IG92ZXJyaWRlU3RhdGUgfHwgZmxpcFN0YXRlKHN0YXRlLnBsYXliYWNrU3RhdGUpLFxuICAgICAgICBhbmltYXRpb246XG4gICAgICAgICAgdHJpZ2dlcmVkQnkgPT09ICd1c2VyLWFjdGlvbicgJiYgZmxpcFN0YXRlKHN0YXRlLnBsYXliYWNrU3RhdGUpLFxuICAgICAgfSkpXG4gICAgfVxuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoYXBwUGxheWJhY2tTdGF0ZSkge1xuICAgICAgdG9nZ2xlUGxheShhcHBQbGF5YmFja1N0YXRlKVxuICAgIH1cbiAgfSwgW2FwcFBsYXliYWNrU3RhdGVdKVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh1aVR5cGUgPT09ICdtb2JpbGUnKSB7XG4gICAgICBvbihkb2N1bWVudCwgJ3Zpc2liaWxpdHljaGFuZ2UnLCAoKSA9PiB0b2dnbGVQbGF5KCdwYXVzZWQnKSlcbiAgICB9XG4gIH0sIFt1aVR5cGUsIHRhcmdldFN0YXRlLnBsYXliYWNrU3RhdGVdKVxuICBjb25zdCB1cGRhdGVQbGF5YmFja1RpbWUgPSBldmVudCA9PlxuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShcbiAgICAgICgpID0+XG4gICAgICAgIChldmVudD8udHlwZSAhPT0gJ3RpbWV1cGRhdGUnIHx8IGlzQnVmZmVyZWQodmlkZW9SZWYuY3VycmVudCkpICYmXG4gICAgICAgIHNldFBsYXliYWNrVGltZShzdGF0ZSA9PiAoe1xuICAgICAgICAgIC4uLnN0YXRlLFxuICAgICAgICAgIC4uLmdldE1lZGlhVGltZSh2aWRlb1JlZi5jdXJyZW50LCB7XG4gICAgICAgICAgICBwbGF5ZXI6IHBsYXllclJlZi5jdXJyZW50LFxuICAgICAgICAgICAgcGx1Z2lucyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICAuLi4oZXZlbnQ/LnR5cGUgPT09ICdkdXJhdGlvbmNoYW5nZScgJiYge1xuICAgICAgICAgICAgY3VycmVudFRpbWU6IHN0YXRlLmN1cnJlbnRUaW1lLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9KSlcbiAgICApXG4gIGNvbnN0IHNldFRhcmdldFRpbWUgPSB0aW1lID0+IHtcbiAgICBjb25zdCB0cmltbWVkID0gTWF0aC5taW4oXG4gICAgICB0aW1lLFxuICAgICAgdmlkZW9SZWYuY3VycmVudD8uaW5pdGlhbER1cmF0aW9uIHx8IEluZmluaXR5XG4gICAgKVxuICAgIHNldFRhcmdldFN0YXRlKHN0YXRlID0+ICh7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIC8vIHNlZWsgdG8gMCByZXBlYXRlZGx5IGVkZ2UgY2FzZVxuICAgICAgY3VycmVudFRpbWU6IHN0YXRlLmN1cnJlbnRUaW1lICE9PSB0cmltbWVkID8gdHJpbW1lZCA6IHRyaW1tZWQgKyAwLjAxLFxuICAgIH0pKVxuICAgIHVwZGF0ZVBsYXliYWNrVGltZSgpXG4gIH1cbiAgY29uc3QgW3BsYXliYWNrU3RhdGUsIHNldFBsYXliYWNrU3RhdGVdID0gdXNlU3RhdGUoJ2luaXQnKVxuICBjb25zdCBbY2FzdFN0YXRlLCBzZXRDYXN0U3RhdGVdID0gdXNlU3RhdGUoJycpXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBhcHBDdXJyZW50VGltZSA9PT0gJ251bWJlcicpIHNldFRhcmdldFRpbWUoYXBwQ3VycmVudFRpbWUgfHwgMClcbiAgICBpZiAodHlwZW9mIGFwcEN1cnJlbnRUaW1lID09PSAnb2JqZWN0JylcbiAgICAgIHNldFRhcmdldFRpbWUoYXBwQ3VycmVudFRpbWU/LnZhbHVlIHx8IDApXG4gIH0sIFthcHBDdXJyZW50VGltZV0pXG4gIGNvbnN0IFtlcnJvckRhdGEsIHNldEVycm9yRGF0YV0gPSB1c2VTdGF0ZSgpXG4gIGNvbnN0IGVycm9ySGFuZGxlciA9IHJlYWN0RXZlbnQgPT4ge1xuICAgIG9uRXJyb3I/LihyZWFjdEV2ZW50Lm5hdGl2ZUV2ZW50KVxuICAgIGhhbmRsZUVycm9yKHJlYWN0RXZlbnQsIHtcbiAgICAgIG1lZGlhOiB2aWRlb1JlZi5jdXJyZW50LFxuICAgICAgZGlzcGxheUVycm9yOiBkYXRhID0+IHtcbiAgICAgICAgc2V0UGxheWJhY2tTdGF0ZSgnZXJyb3InKVxuICAgICAgICBzZXRFcnJvckRhdGEoY3VycmVudCA9PiAoY3VycmVudD8uY29kZSA/IGN1cnJlbnQgOiBkYXRhKSlcbiAgICAgIH0sXG4gICAgfSlcbiAgfVxuICBjb25zdCBpc0xpdmUgPSBwbGF5YmFja1RpbWUuc3RyZWFtVHlwZSA9PT0gJ2xpdmUnXG4gIGNvbnN0IFtzZXR0aW5ncywgc2V0U2V0dGluZ3NdID0gdXNlU3RhdGUoKCkgPT4gKHtcbiAgICBzZWN0aW9uczogW10sXG4gICAgdmFsdWVzOiB7c3BlZWQ6IDF9LFxuICB9KSlcbiAgY29uc3QgZmV0Y2hTZXR0aW5ncyA9ICgpID0+IHtcbiAgICBpZiAoIXBsYXllclJlZi5jdXJyZW50KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3Qgc3BlZWRJdGVtcyA9IGFwcFNldHRpbmdzLnNwZWVkSXRlbXMgfHwgKGlzTGl2ZSA/IFtdIDogdW5kZWZpbmVkKVxuICAgIHNldFNldHRpbmdzKGN1cnJlbnQgPT4ge1xuICAgICAgY29uc3Qge3ZhbHVlcywgc2VjdGlvbnN9ID0gZ2V0U2V0dGluZ3NEYXRhKHtcbiAgICAgICAgbWVkaWE6IHZpZGVvUmVmLmN1cnJlbnQsXG4gICAgICAgIHBsYXllcjogcGxheWVyUmVmLmN1cnJlbnQsXG4gICAgICAgIHNvdXJjZSxcbiAgICAgICAgcXVhbGl0eSxcbiAgICAgICAgc3BlZWRJdGVtcyxcbiAgICAgICAgbG9vcCxcbiAgICAgICAgcHJlZmVycmVkOiBjdXJyZW50LnByZWZlcnJlZCxcbiAgICAgICAgb3RoZXJTZWN0aW9uczogYXBwU2V0dGluZ3Muc2VjdGlvbnMsXG4gICAgICB9KVxuICAgICAgcmV0dXJuIHtwcmVmZXJyZWQ6IGN1cnJlbnQucHJlZmVycmVkLCB2YWx1ZXMsIHNlY3Rpb25zfVxuICAgIH0pXG4gIH1cbiAgY29uc3QgbGFzdFN0YXRlID0gdXNlUmVmKHBsYXliYWNrU3RhdGUpXG4gIGNvbnN0IGhhbmRsZVBsYXliYWNrU3RhdGVDaGFuZ2UgPSAoZXZlbnQsIHN0YXRlKSA9PiB7XG4gICAgaWYgKGxhc3RTdGF0ZS5jdXJyZW50ID09PSAnZXJyb3InKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgb25QbGF5YmFja1N0YXRlQ2hhbmdlPy4oZXZlbnQsIHN0YXRlKVxuICAgIC8vIHByZXZpb3VzbHkgVUkgcGxheWJhY2sgc3RhdGUgd2FzIHN5bmNlZCBvbmx5IHdoZW5cbiAgICAvLyBleGl0aW5nIGlPUyB2aWRlbyBvbmx5IGZ1bGxzY3JlZW4od2Via2l0ZW5kZnVsbHNjcmVlbilcbiAgICBpZiAoXG4gICAgICAvcGxheWluZ3xwYXVzZWQvLnRlc3Qoc3RhdGUpICYmXG4gICAgICAhKHVpVHlwZSA9PT0gJ21vYmlsZScgJiYgYmxvY2tpbmcpICYmXG4gICAgICAhc2hvdWxkUGF1c2Uoe3VzZXJGb2N1cywgdWlUeXBlfSlcbiAgICApIHtcbiAgICAgIHRvZ2dsZVBsYXkoc3RhdGUpXG4gICAgfVxuICAgIGlmIChzdGF0ZSA9PT0gJ2VuZGVkJykge1xuICAgICAgdG9nZ2xlUGxheSgncGF1c2VkJylcbiAgICB9XG4gICAgaWYgKHN0YXRlID09PSAnbG9hZGluZycgJiYgbGFzdFN0YXRlLmN1cnJlbnQgIT09ICdpbml0Jykge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0b2dnbGVQbGF5KCdwbGF5aW5nJyksIDEpXG4gICAgfVxuICAgIGlmIChzdGF0ZSA9PT0gJ3BsYXlpbmcnKSB7XG4gICAgICBzZXRJc1VzZXJBY3RpdmUodHJ1ZSlcbiAgICB9XG4gICAgaWYgKGxhc3RTdGF0ZS5jdXJyZW50ID09PSAnbG9hZGluZycpIHtcbiAgICAgIGZldGNoU2V0dGluZ3MoKVxuICAgIH1cbiAgICBsYXN0U3RhdGUuY3VycmVudCA9IHN0YXRlXG4gICAgc2V0UGxheWJhY2tTdGF0ZShzdGF0ZSlcbiAgfVxuXG4gIGNvbnN0IGNoYW5nZVNldHRpbmdzID0gKG5hbWUsIHZhbHVlLCB7a2VlcE9wZW59ID0ge30pID0+IHtcbiAgICAvLyBUT0RPIGNvbnNpZGVyIG1lcmdlIGludG8gdXNlUmVkdWNlcj9cbiAgICBvbkNoYW5nZVNldHRpbmdzPy4oe25hbWUsIHZhbHVlfSlcbiAgICBzZXRUYXJnZXRUaW1lKHBsYXliYWNrVGltZS5jdXJyZW50VGltZSlcbiAgICBzZXRTZXR0aW5ncyhjdXJyZW50ID0+ICh7XG4gICAgICAuLi5jdXJyZW50LFxuICAgICAgdmFsdWVzOiB7Li4uY3VycmVudC52YWx1ZXMsIFtuYW1lXTogdmFsdWV9LFxuICAgICAgcHJlZmVycmVkOiB7Li4uY3VycmVudC5wcmVmZXJyZWQsIFtuYW1lXTogdmFsdWV9LFxuICAgIH0pKVxuICAgIGlmICgha2VlcE9wZW4pIHtcbiAgICAgIHNldFVzZXJGb2N1cygnJylcbiAgICB9XG4gIH1cbiAgY29uc3Qgb3BlblNldHRpbmdzID0gZXZlbnQgPT4ge1xuICAgIGNvbnN0IGFuaW1hdGlvbkZyYW1lID1cbiAgICAgIHVzZXJGb2N1cyAhPT0gJ3NldHRpbmdzJyAmJlxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgb25PcGVuU2V0dGluZ3M/LihldmVudCwgc2V0dGluZ3MpXG4gICAgICAgIC8vIEluIGlPUyBTYWZhcmksIHdlIG5lZWQgdG8gdXBkYXRlIHNldHRpbmdzIGRhdGFcbiAgICAgICAgZmV0Y2hTZXR0aW5ncygpXG4gICAgICB9KVxuICAgIHNldFVzZXJGb2N1cyhjdXJyZW50ID0+IChjdXJyZW50ID09PSAnc2V0dGluZ3MnID8gJycgOiAnc2V0dGluZ3MnKSlcbiAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVcbiAgfVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChhcHBQbGF5YmFja1JhdGUgPiAwKSB7XG4gICAgICBzZXRTZXR0aW5ncyhjdXJyZW50ID0+ICh7XG4gICAgICAgIC4uLmN1cnJlbnQsXG4gICAgICAgIHZhbHVlczogey4uLmN1cnJlbnQudmFsdWVzLCBzcGVlZDogYXBwUGxheWJhY2tSYXRlfSxcbiAgICAgIH0pKVxuICAgIH1cbiAgfSwgW2FwcFBsYXliYWNrUmF0ZV0pXG5cbiAgY29uc3QgcXVhbGl0eU9wdGlvbnMgPSB1c2VNZW1vKFxuICAgICgpID0+IGdldFF1YWxpdHlPcHRpb25zKHNldHRpbmdzKSxcbiAgICBbc2V0dGluZ3MudmFsdWVzLnF1YWxpdHldXG4gIClcbiAgY29uc3Qgdmlld01vZGUgPSB1c2VMaW5rU3RhdGUodXBkYXRlID0+XG4gICAgb25WaWV3TW9kZUNoYW5nZSh2aWRlb1JlZi5jdXJyZW50LCB1cGRhdGUpXG4gIClcbiAgY29uc3Qgc291cmNlT3ZlcnJpZGUgPSB1c2VMaW5rU3RhdGUoXG4gICAgYXN5bmMgdXBkYXRlID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9XG4gICAgICAgIHNvdXJjZSAmJiAoYXdhaXQgcXVhbGl0eS5yZXdyaXRlTWFuaWZlc3Q/Lihzb3VyY2UsIHF1YWxpdHlPcHRpb25zKSlcbiAgICAgIHVwZGF0ZShyZXN1bHQgfHwgc291cmNlKVxuICAgIH0sXG4gICAgW3NvdXJjZSwgcXVhbGl0eU9wdGlvbnNdXG4gIClcbiAgY29uc3Qgd2FpdGluZyA9IC9lbXB0aWVkfGxvYWRpbmd8YnVmZmVyaW5nLy50ZXN0KHBsYXliYWNrU3RhdGUpXG4gIGNvbnN0IGFjdGl2ZVBsYXliYWNrID1cbiAgICBwbGF5YmFja1N0YXRlID09PSAncGxheWluZycgfHwgcGxheWJhY2tTdGF0ZSA9PT0gJ3dhaXRpbmcnXG4gIGNvbnN0IHtcbiAgICBtb2RlOiBhdXRvSGlkZU1vZGUsXG4gICAgb25DbGljayxcbiAgICBvbk1vdXNlTW92ZSxcbiAgfSA9IHVzZUF1dG9IaWRlKHtcbiAgICBwaW5uZWQ6ICFjb250cm9scy5hdXRvaGlkZSB8fCB3YWl0aW5nIHx8ICFhY3RpdmVQbGF5YmFjayB8fCB1c2VyRm9jdXMsXG4gICAgdGFwVG9IaWRlOiB1aVR5cGUgPT09ICdtb2JpbGUnLFxuICAgIGhpZGVUaW1lTXM6IGNvbnRyb2xzLmF1dG9oaWRlLFxuICB9KVxuICBjb25zdCBtb2RlID1cbiAgICB1c2VyRm9jdXMgPT09ICdzZWVrYmFyJ1xuICAgICAgPyAnaGlkZGVuJ1xuICAgICAgOiBjb250cm9scy5hdXRvaGlkZVxuICAgICAgPyBhdXRvSGlkZU1vZGVcbiAgICAgIDogY29udHJvbHNcbiAgICAgID8gJ3Nob3duJ1xuICAgICAgOiAnaGlkZGVuJ1xuICBjb25zdCBjb250cm9sc0Rpc3BsYXkgPVxuICAgIHVzZXJGb2N1cyA9PT0gJ3NlZWtiYXInXG4gICAgICA/ICdzZWVrYmFyLW9ubHknXG4gICAgICA6IGNvbnRyb2xzID09PSAndGl0bGUtb25seScgfHwgcGxheWJhY2tTdGF0ZSA9PT0gJ2VtcHRpZWQnXG4gICAgICA/ICdoaWRkZW4nXG4gICAgICA6IG1vZGVcbiAgY29uc3Qgc2hvdWxkSGlkZVBhbmVscyA9XG4gICAgKGNvbnRyb2xzID09PSAnbm8tcGFuZWwnIHx8IGNvbnRyb2xzRGlzcGxheSA9PT0gJ2hpZGRlbicpICYmIHVzZXJGb2N1c1xuICBjb25zdCBoYXZlUGxheVBhbmVsID1cbiAgICAhYmxvY2tpbmcgJiZcbiAgICBoYXZlUG9pbnRlcigpICYmXG4gICAgdWlUeXBlID09PSAnZGVza3RvcCcgJiZcbiAgICAhd2FpdGluZyAmJlxuICAgICEvdm9sdW1lfCcnLy50ZXN0KHVzZXJGb2N1cykgJiZcbiAgICAhL3RpdGxlLW9ubHl8bm8tcGFuZWwvLnRlc3QoY29udHJvbHMpICYmXG4gICAgKGNvbnRyb2xzLmF1dG9oaWRlIHx8IG1vZGUgPT09ICdzaG93bicpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoc2hvdWxkSGlkZVBhbmVscykge1xuICAgICAgc2V0VXNlckZvY3VzKCcnKVxuICAgIH1cbiAgfSwgW3Nob3VsZEhpZGVQYW5lbHNdKVxuICBjb25zdCB7c3Vic2NyaWJlLCBvbkNoYW5nZSwgdG9nZ2xlTXV0ZX0gPSBsaW5rTWVkaWFWb2x1bWUoKCkgPT4gKHtcbiAgICB2aWRlbzogdmlkZW9SZWYuY3VycmVudCxcbiAgICBnZXRQbGF5ZXI6ICgpID0+IHBsYXllclJlZi5jdXJyZW50LFxuICB9KSlcbiAgY29uc3QgY2hhbmdlUHJldmlvdXMgPSBldmVudCA9PiB7XG4gICAgb25DaGFuZ2VQcmV2aW91cyhldmVudClcbiAgICB0b2dnbGVQbGF5KCdwYXVzZWQnKVxuICAgIHZpZGVvUmVmLmN1cnJlbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2xvYWRzdGFydCcpKVxuICB9XG4gIGNvbnN0IGNoYW5nZU5leHQgPSBldmVudCA9PiB7XG4gICAgb25DaGFuZ2VOZXh0KGV2ZW50KVxuICAgIHRvZ2dsZVBsYXkoJ3BhdXNlZCcpXG4gICAgdmlkZW9SZWYuY3VycmVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnbG9hZHN0YXJ0JykpXG4gIH1cblxuICB1c2VFZmZlY3QoZmV0Y2hTZXR0aW5ncywgW2FwcFNldHRpbmdzXSlcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBUaGUgYWRDb250YWluZXIgc2hvdWxkIGJlIHNldCBiZWZvcmUgYGxvYWRgIGJlY2F1c2UgSW1hRGFpLmxvYWQgbmVlZHMgaXQuXG4gICAgcGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4uc2V0QWRDb250YWluZXI/LihhZENvbnRhaW5lclJlZi5jdXJyZW50KSlcbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KFxuICAgICgpID0+XG4gICAgICBkaXNwYXRjaENoYXB0ZXJFdmVudHMoe1xuICAgICAgICBtZWRpYTogdmlkZW9SZWYuY3VycmVudCxcbiAgICAgICAgY2hhcHRlcnMsXG4gICAgICAgIGdldFRpbWU6ICgpID0+IHZpZGVvUmVmLmN1cnJlbnQuY3VycmVudFRpbWUsXG4gICAgICB9KSxcbiAgICBbY2hhcHRlcnNdXG4gIClcblxuICBjb25zdCBpc0VuZCA9IHBsYXliYWNrU3RhdGUgPT09ICdlbmRlZCdcbiAgY29uc3QgY2FuU2VlayA9ICFpc0VuZCAmJiBwbGF5YmFja1RpbWUuZHVyYXRpb24gPiAwXG4gIGNvbnN0IGRlcml2ZWRQbGF5YmFja1N0YXRlID1cbiAgICAodWlUeXBlID09PSAnbW9iaWxlJyAmJiBibG9ja2luZykgfHwgc2hvdWxkUGF1c2Uoe3VzZXJGb2N1cywgdWlUeXBlfSlcbiAgICAgID8gJ3BhdXNlZCdcbiAgICAgIDogdGFyZ2V0U3RhdGUucGxheWJhY2tTdGF0ZVxuICBjb25zdCBhY3RpdmVUaHVtYm5haWxzVXJsID1cbiAgICAoIXVzZXJGb2N1cyB8fCB1c2VyRm9jdXMgPT09ICdzZWVrYmFyJykgJiZcbiAgICAoZ2V0VGh1bWJuYWlsc1VybChzb3VyY2UpIHx8IHRodW1ibmFpbHNVcmwpXG4gIGNvbnN0IGNzc1ZhcmlhYmxlcyA9IHtcbiAgICAnLS1wbGF5aW5nJzogcGxheWJhY2tTdGF0ZSA9PT0gJ3BsYXlpbmcnID8gJzEnIDogJzAnLFxuICB9XG4gIGNvbnN0IG9uUmV3aW5kID1cbiAgICAoIWlzTGl2ZSB8fCBwbGF5YmFja1RpbWUuY3VycmVudFRpbWUgPCAwKSAmJlxuICAgIGNhblNlZWsgJiZcbiAgICAoKCkgPT4gc2V0VGFyZ2V0VGltZShwbGF5YmFja1RpbWUuY3VycmVudFRpbWUgLSAxMCwgJ3Jld2luZCcpKVxuICBjb25zdCBvbkZvcndhcmQgPVxuICAgICghaXNMaXZlIHx8IHBsYXliYWNrVGltZS5jdXJyZW50VGltZSA8IDApICYmXG4gICAgY2FuU2VlayAmJlxuICAgICgoKSA9PiBzZXRUYXJnZXRUaW1lKHBsYXliYWNrVGltZS5jdXJyZW50VGltZSArIDEwLCAnZm9yd2FyZCcpKVxuICBjb25zdCBvbkNsaWNrQmxhbmsgPVxuICAgIGhhdmVQbGF5UGFuZWwgJiYgKCgpID0+IHRvZ2dsZVBsYXkoJycsIHt0cmlnZ2VyZWRCeTogJ3VzZXItYWN0aW9uJ30pKVxuXG4gIGNvbnN0IHVpSGFuZGxlcnMgPSB7XG4gICAgb25QbGF5OiAoKSA9PiB7XG4gICAgICB0b2dnbGVQbGF5KCcnLCB7dHJpZ2dlcmVkQnk6ICd1c2VyLWFjdGlvbid9KVxuICAgICAgc2V0SXNVc2VyQWN0aXZlKHRydWUpXG4gICAgfSxcbiAgICBvbkNsaWNrTGl2ZTogaXNMaXZlICYmICgoKSA9PiBzZXRUYXJnZXRUaW1lKDAsICdzZWVrVG9MaXZlJykpLFxuICAgIG9uQ2xpY2tTZWVrYmFyOiAoKSA9PiB7XG4gICAgICByZWZzLmN1cnJlbnQuZGVmZXJlZFNlZWtGb2N1cyA9IHNldFRpbWVvdXQoXG4gICAgICAgICgpID0+IHNldFVzZXJGb2N1cygnc2Vla2JhcicpLFxuICAgICAgICA2NlxuICAgICAgKVxuICAgIH0sXG4gICAgb25TZWVrOiB0aW1lID0+IHtcbiAgICAgIHNldFRhcmdldFRpbWUodGltZSwgJ3NlZWsnKVxuICAgICAgY2xlYXJUaW1lb3V0KHJlZnMuY3VycmVudC5kZWZlcmVkU2Vla0ZvY3VzKVxuICAgICAgc2V0VGltZW91dCgoKSA9PiBzZXRVc2VyRm9jdXMoJycpLCA2NilcbiAgICB9LFxuICAgIG9uQ2hhbmdlU2V0dGluZ3M6ICh7bmFtZSwgdmFsdWUsIGtlZXBPcGVufSkgPT5cbiAgICAgIGNoYW5nZVNldHRpbmdzKG5hbWUsIHZhbHVlLCB7a2VlcE9wZW59KSxcbiAgICBvbkNsb3NlU2V0dGluZ3M6IGV2ZW50ID0+IHtcbiAgICAgIHNldFVzZXJGb2N1cygnJylcbiAgICAgIHNsb3RQcm9wcz8uc2V0dGluZ3M/Lm9uQ2xvc2U/LihldmVudClcbiAgICB9LFxuICB9XG5cbiAgY29uc3QgdWlFbGVtZW50cyA9IHtcbiAgICBsaXZlQnV0dG9uOiB1aUhhbmRsZXJzLm9uQ2xpY2tMaXZlICYmIChcbiAgICAgIDxjb21wb25lbnRzLkxpdmVCdXR0b25cbiAgICAgICAgdXNpbmdTdGFydE92ZXI9e3BsYXliYWNrVGltZS5jdXJyZW50VGltZSA8IDB9XG4gICAgICAgIG9uQ2xpY2s9e3VpSGFuZGxlcnMub25DbGlja0xpdmV9XG4gICAgICAvPlxuICAgICksXG4gICAgY29udHJvbEJ1dHRvbnM6IHtcbiAgICAgIHBsYXlCdXR0b246IChcbiAgICAgICAgPFBsYXlCdXR0b25cbiAgICAgICAgICBwbGF5YmFja1N0YXRlPXtkZXJpdmVkUGxheWJhY2tTdGF0ZX1cbiAgICAgICAgICBlbmRlZD17aXNFbmR9XG4gICAgICAgICAgaGlkZGVuPXtcbiAgICAgICAgICAgIHVpVHlwZSA9PT0gJ21vYmlsZScgJiYgKHdhaXRpbmcgfHwgL2xvYWRpbmcvLnRlc3QocGxheWJhY2tTdGF0ZSkpXG4gICAgICAgICAgfVxuICAgICAgICAgIHZhcmlhbnQ9eyFpc1VzZXJBY3RpdmUgJiYgJ2ZpcnN0cGxheSd9XG4gICAgICAgICAgb25DbGljaz17dWlIYW5kbGVycy5vblBsYXl9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgICAgcmV3aW5kQnV0dG9uOiBvblJld2luZCAmJiAoXG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBzdGFydEljb249XCJyZXdpbmQxMFwiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLlJFV0lORFwiXG4gICAgICAgICAgZGlzYWJsZWQ9e2lzRW5kfVxuICAgICAgICAgIG9uQ2xpY2s9e29uUmV3aW5kfVxuICAgICAgICAvPlxuICAgICAgKSxcbiAgICAgIGZvcndhcmRCdXR0b246IG9uRm9yd2FyZCAmJiAoXG4gICAgICAgIDxGb3J3YXJkQnV0dG9uXG4gICAgICAgICAgc3RhcnRJY29uPVwiZm9yd2FyZDEwXCJcbiAgICAgICAgICB0aXRsZT1cIktLUy5QTEFZRVIuRk9SV0FSRFwiXG4gICAgICAgICAgZGlzYWJsZWQ9eyFjYW5TZWVrfVxuICAgICAgICAgIG9uQ2xpY2s9e29uRm9yd2FyZH1cbiAgICAgICAgLz5cbiAgICAgICksXG4gICAgICBuZXh0RXBpc29kZUJ1dHRvbjogKFxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgc3RhcnRJY29uPVwibmV4dFwiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLk5FWFRcIlxuICAgICAgICAgIGRpc2FibGVkPXshb25DaGFuZ2VOZXh0fVxuICAgICAgICAgIG9uQ2xpY2s9e2NoYW5nZU5leHR9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgICAgcHJldmlvdXNFcGlzb2RlQnV0dG9uOiAoXG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBzdGFydEljb249XCJwcmV2aW91c1wiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLlBSRVZJT1VTXCJcbiAgICAgICAgICBkaXNhYmxlZD17IW9uQ2hhbmdlUHJldmlvdXN9XG4gICAgICAgICAgb25DbGljaz17Y2hhbmdlUHJldmlvdXN9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgIH0sXG4gICAgc2Vla2JhcjogKFxuICAgICAgPGNvbXBvbmVudHMuU2Vla2JhclxuICAgICAgICBzdHlsZT17L3ZvbHVtZS8udGVzdCh1c2VyRm9jdXMpICYmIHtvcGFjaXR5OiAnMCd9fVxuICAgICAgICBzdGFydFRpbWU9e3BsYXliYWNrVGltZS5zdGFydFRpbWV9XG4gICAgICAgIGN1cnJlbnRUaW1lPXtwbGF5YmFja1RpbWUuY3VycmVudFRpbWV9XG4gICAgICAgIGJ1ZmZlclRpbWU9e3BsYXliYWNrVGltZS5idWZmZXJUaW1lfVxuICAgICAgICBkdXJhdGlvbj17cGxheWJhY2tUaW1lLmR1cmF0aW9ufVxuICAgICAgICBjaGFwdGVycz17Y2hhcHRlcnN9XG4gICAgICAgIG9uQ2hhbmdlPXt1aUhhbmRsZXJzLm9uQ2xpY2tTZWVrYmFyfVxuICAgICAgICBvbkNoYW5nZUNvbW1pdHRlZD17dWlIYW5kbGVycy5vblNlZWt9XG4gICAgICAgIG1hcmtzPXttYXJrc31cbiAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgey4uLnNsb3RQcm9wcy5zZWVrYmFyfVxuICAgICAgPlxuICAgICAgICB7YWN0aXZlVGh1bWJuYWlsc1VybCAmJiAoXG4gICAgICAgICAgPFNlZWtQcmV2aWV3XG4gICAgICAgICAgICB0aHVtYm5haWxzVXJsPXthY3RpdmVUaHVtYm5haWxzVXJsfVxuICAgICAgICAgICAgZHVyYXRpb249e3BsYXliYWNrVGltZS5kdXJhdGlvbn1cbiAgICAgICAgICAgIGNoYXB0ZXJzPXtjaGFwdGVyc31cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9jb21wb25lbnRzLlNlZWtiYXI+XG4gICAgKSxcbiAgICBkaXNwbGF5VGltZTogPGNvbXBvbmVudHMuRGlzcGxheVRpbWUgey4uLnBsYXliYWNrVGltZX0gLz4sXG4gICAgZnVsbHNjcmVlbkJ1dHRvbjogKFxuICAgICAgPEZ1bGxzY3JlZW5CdXR0b25cbiAgICAgICAgdmlld01vZGU9e3ZpZXdNb2RlfVxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB0b2dnbGVGdWxsc2NyZWVuKGNvbnRhaW5lclJlZi5jdXJyZW50KX1cbiAgICAgIC8+XG4gICAgKSxcbiAgICB2b2x1bWVDb250cm9sOiB3aWR0aCA+PSBzaXplc1snc21hbGwtZW1iZWQnXSAmJiAoXG4gICAgICA8Y29tcG9uZW50cy5Wb2x1bWVDb250cm9sXG4gICAgICAgIHsuLi57c3Vic2NyaWJlLCBvbkNoYW5nZSwgdG9nZ2xlTXV0ZX19XG4gICAgICAgIG9uTW91c2VPdmVyPXsoKSA9PiBzZXRVc2VyRm9jdXMoJ3ZvbHVtZScpfVxuICAgICAgICBvbk1vdXNlT3V0PXsoKSA9PiBzZXRVc2VyRm9jdXMoJycpfVxuICAgICAgICB7Li4uc2xvdFByb3BzPy52b2x1bWVDb250cm9sfVxuICAgICAgLz5cbiAgICApLFxuICAgIGJhY2tJdGVtczogKFxuICAgICAgPFBsYXlQYW5lbCBhbmltYXRpb249e3RhcmdldFN0YXRlLmFuaW1hdGlvbn0gb25DbGljaz17b25DbGlja0JsYW5rfSAvPlxuICAgICksXG4gIH1cbiAgY29uc3QgY29tcGF0aWJpbGl0eUNhc3RQcm9wcyA9IGNhc3RPcHRpb25zID09PSAnY29tcGF0aWJsZScgJiYge1xuICAgIHNvdXJjZSxcbiAgICB2YWx1ZXM6IHt0aXRsZSwgLi4uc2V0dGluZ3MudmFsdWVzLCAuLi5pbnRsLCBtb2R1bGVzQ29uZmlnfSxcbiAgICBvbkxvYWQ6IG9uQ2FzdCxcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGNhc3RPcHRpb25zICYmIGNhc3RPcHRpb25zICE9PSAnY29tcGF0aWJsZScpIHtcbiAgICAgIHJldHVybiBsaW5rQ2FzdCh7c291cmNlLCAuLi5jYXN0T3B0aW9uc30pXG4gICAgfSAvLyBUT0RPIHBsYXlsaXN0LCBhdWRpbyAvIHN1YnRpdGxlIHNldHRpbmdcbiAgfSwgW3NvdXJjZSwgY2FzdE9wdGlvbnMuY29udGVudElkLCBjYXN0T3B0aW9ucy5jdXN0b21EYXRhXSlcbiAgY29uc3Qgc2VsZWN0ZWRBdWRpb1RyYWNrID0gc2V0dGluZ3MucHJlZmVycmVkPy5hdWRpbyB8fCBhcHBBdWRpb1RyYWNrXG4gIGNvbnN0IHNlbGVjdGVkVGV4dFRyYWNrID0gc2V0dGluZ3MucHJlZmVycmVkPy5zdWJ0aXRsZXMgfHwgYXBwVGV4dFRyYWNrXG5cbiAgcmV0dXJuIChcbiAgICA8SW50bFByb3ZpZGVyIHsuLi5pbnRsfT5cbiAgICAgIDxMYXlvdXRcbiAgICAgICAgc3R5bGU9e3suLi5zdHlsZSwgY3NzVmFyaWFibGVzfX1cbiAgICAgICAgdHlwZT17dWlUeXBlfVxuICAgICAgICBkaXNwbGF5PXttb2RlfVxuICAgICAgICBjb250cm9sc0Rpc3BsYXk9e2NvbnRyb2xzRGlzcGxheX1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgdmlkZW89e1xuICAgICAgICAgIDxWaWRlb1xuICAgICAgICAgICAgey4uLnZpZGVvUHJvcHN9XG4gICAgICAgICAgICB2aWRlb1JlZj17bXVsdGlSZWYodmlkZW9SZWYsIHZpZGVvUHJvcHMudmlkZW9SZWYpfVxuICAgICAgICAgICAgc291cmNlPXtcbiAgICAgICAgICAgICAgY2FzdFN0YXRlICE9PSBDYXN0U3RhdGUuQ09OTkVDVEVEICYmXG4gICAgICAgICAgICAgIHBsYXliYWNrU3RhdGUgIT09ICdlcnJvcicgJiZcbiAgICAgICAgICAgICAgc291cmNlT3ZlcnJpZGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBsYXliYWNrU3RhdGU9e2Rlcml2ZWRQbGF5YmFja1N0YXRlfVxuICAgICAgICAgICAgY3VycmVudFRpbWU9e3RhcmdldFN0YXRlLmN1cnJlbnRUaW1lfVxuICAgICAgICAgICAgey4uLihhcHBWb2x1bWUgPj0gMCAmJiB7dm9sdW1lOiBhcHBWb2x1bWUsIG11dGVkOiBhcHBWb2x1bWUgPD0gMH0pfVxuICAgICAgICAgICAgcGxheWJhY2tSYXRlPXtzZXR0aW5ncy52YWx1ZXMuc3BlZWR9XG4gICAgICAgICAgICB2aWRlb1Jlc29sdXRpb249e3F1YWxpdHlPcHRpb25zfVxuICAgICAgICAgICAgYXVkaW9UcmFjaz17c2VsZWN0ZWRBdWRpb1RyYWNrfVxuICAgICAgICAgICAgdGV4dFRyYWNrPXtzZWxlY3RlZFRleHRUcmFja31cbiAgICAgICAgICAgIGxvb3A9e3NldHRpbmdzLnZhbHVlcy5sb29wfVxuICAgICAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgICAgIG1vZHVsZXNDb25maWc9e21vZHVsZXNDb25maWd9XG4gICAgICAgICAgICBvblBsYXlsb2dGaXJlZD17b25QbGF5bG9nRmlyZWR9XG4gICAgICAgICAgICBvbkVycm9yPXtlcnJvckhhbmRsZXJ9XG4gICAgICAgICAgICBvblBsYXliYWNrU3RhdGVDaGFuZ2U9e2hhbmRsZVBsYXliYWNrU3RhdGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkJsb2NrZWRBdXRvcGxheT17ZXJyb3IgPT4gb25CbG9ja2VkQXV0b3BsYXk/LihlcnJvcil9XG4gICAgICAgICAgICBvbkNhblBsYXk9e2V2ZW50ID0+IHtcbiAgICAgICAgICAgICAgdXBkYXRlUGxheWJhY2tUaW1lKGV2ZW50KVxuICAgICAgICAgICAgICB2aWRlb1Byb3BzLm9uQ2FuUGxheT8uKGV2ZW50KVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIG9uVGltZVVwZGF0ZT17dXBkYXRlUGxheWJhY2tUaW1lfVxuICAgICAgICAgICAgb25EdXJhdGlvbkNoYW5nZT17dXBkYXRlUGxheWJhY2tUaW1lfVxuICAgICAgICAgICAgb25QbGF5ZXJMb2FkZWQ9e3BsYXllciA9PiB7XG4gICAgICAgICAgICAgIHBsYXllclJlZi5jdXJyZW50ID0gcGxheWVyXG4gICAgICAgICAgICAgIG9uUGxheWVyTG9hZGVkPy4ocGxheWVyKVxuICAgICAgICAgICAgICBzeW5jVm9sdW1lKHZpZGVvUmVmLmN1cnJlbnQsIHZpZGVvUHJvcHMubXV0ZWQgPyAwIDogYXBwVm9sdW1lKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIGNvbnRhaW5lclJlZj17ZWxlbWVudCA9PiB7XG4gICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQgPSBlbGVtZW50XG4gICAgICAgICAgb2JzZXJ2ZShlbGVtZW50KVxuICAgICAgICB9fVxuICAgICAgICBiYWNrUmVmPXthZENvbnRhaW5lclJlZn1cbiAgICAgICAgdGl0bGU9e3RpdGxlfVxuICAgICAgICBjaGFubmVsVGl0bGU9e2NoYW5uZWxUaXRsZX1cbiAgICAgICAgYmFja0J1dHRvbj17b25CYWNrICYmIDxCdXR0b24gc3RhcnRJY29uPVwiYmFja1wiIG9uQ2xpY2s9e29uQmFja30gLz59XG4gICAgICAgIHsuLi4oaXNVc2VyQWN0aXZlICYmIHVpRWxlbWVudHMpfVxuICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICBvbk1vdXNlTW92ZT17b25Nb3VzZU1vdmV9XG4gICAgICA+XG4gICAgICAgIDxMb2FkaW5nU3Bpbm5lciBhY3RpdmU9e3dhaXRpbmd9IC8+XG4gICAgICAgIHtlcnJvckRhdGEgJiYgPEVycm9yIGVycm9yPXtlcnJvckRhdGF9IG9uQmFjaz17b25CYWNrfSAvPn1cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgICB7LyogVE9ETyBzeW5jIENhc3QgbGFzdCBwbGF5ZWQgdGltZSBiYWNrICovfVxuICAgICAgICB7aXNVc2VyQWN0aXZlICYmIChcbiAgICAgICAgICA8Y29tcG9uZW50cy5DYXN0VWlcbiAgICAgICAgICAgIG9uQmFjaz17b25CYWNrfVxuICAgICAgICAgICAgb25TdGF0ZUNoYW5nZT17c2V0Q2FzdFN0YXRlfVxuICAgICAgICAgICAgb25Mb2FkPXtvbkNhc3R9XG4gICAgICAgICAgICB7Li4uY29tcGF0aWJpbGl0eUNhc3RQcm9wc31cbiAgICAgICAgICAgIHsuLi5zbG90UHJvcHMuY2FzdFVpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIHtpc1VzZXJBY3RpdmUgJiYgKCAvLyBUT0RPOiBEZXNpZ24gPEV4dGVuc3Rpb24gLz4gZmxhZ1xuICAgICAgICAgIDxjb21wb25lbnRzLlNldHRpbmdzXG4gICAgICAgICAgICB0eXBlPXt1aVR5cGV9XG4gICAgICAgICAgICBzZWN0aW9ucz17c2V0dGluZ3Muc2VjdGlvbnN9XG4gICAgICAgICAgICAvLyBUT0RPIGhhc0JvdHRvbVBhbmVsIGJvdHRvbTogOGVtXG4gICAgICAgICAgICBvcGVuPXt1c2VyRm9jdXMgPT09ICdzZXR0aW5ncyd9XG4gICAgICAgICAgICB2YWx1ZXM9e3NldHRpbmdzLnZhbHVlc31cbiAgICAgICAgICAgIG9uT3Blbj17b3BlblNldHRpbmdzfVxuICAgICAgICAgICAgb25DaGFuZ2U9e3VpSGFuZGxlcnMub25DaGFuZ2VTZXR0aW5nc31cbiAgICAgICAgICAgIHsuLi5zbG90UHJvcHM/LnNldHRpbmdzfVxuICAgICAgICAgICAgb25DbG9zZT17dWlIYW5kbGVycy5vbkNsb3NlU2V0dGluZ3N9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgICAgPExhbmd1YWdlU2V0dGluZ3NcbiAgICAgICAgICB1aVR5cGU9e3VpVHlwZX1cbiAgICAgICAgICBnZXRQbGF5ZXI9eygpID0+IHBsYXllclJlZi5jdXJyZW50fVxuICAgICAgICAgIG9uQ2hhbmdlPXsoX2V2ZW50LCBpdGVtKSA9PiBjaGFuZ2VTZXR0aW5ncyhpdGVtLnR5cGUsIGl0ZW0udmFsdWUpfVxuICAgICAgICAgIHsuLi5zbG90UHJvcHMubGFuZ3VhZ2VTZXR0aW5nc31cbiAgICAgICAgLz5cbiAgICAgICAgPEJhY2tkcm9wIG9wZW49eyFwbGF5YmFja1N0YXRlIHx8IHBsYXliYWNrU3RhdGUgPT09ICdsb2FkaW5nJ30+XG4gICAgICAgICAgPExvYWRpbmdTcGlubmVyIC8+XG4gICAgICAgIDwvQmFja2Ryb3A+XG4gICAgICA8L0xheW91dD5cbiAgICA8L0ludGxQcm92aWRlcj5cbiAgKVxufVxuXG5leHBvcnQgZGVmYXVsdCBQcmVtaXVtUGxheWVyXG4iXX0= */"),
17011
- desktop: /*#__PURE__*/css$1(LanguageMenu.styles, LanguageMenu.desktopStyles, "production" === "production" ? "" : ";label:desktop;", "production" === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZW1pdW1QbGF5ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0VXIiwiZmlsZSI6IlByZW1pdW1QbGF5ZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1uZXN0ZWQtdGVybmFyeSAqL1xuaW1wb3J0IHt1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtjc3N9IGZyb20gJ0BlbW90aW9uL2NzcydcbmltcG9ydCB1c2VEaW1lbnNpb25zIGZyb20gJ3JlYWN0LWNvb2wtZGltZW5zaW9ucydcbmltcG9ydCB7UmVzaXplT2JzZXJ2ZXJ9IGZyb20gJ0BqdWdnbGUvcmVzaXplLW9ic2VydmVyJ1xuXG5pbXBvcnQge2hhbmRsZUVycm9yfSBmcm9tICdwbGF5ZXJDb3JlL2Vycm9ycydcbmltcG9ydCB7b259IGZyb20gJ3V0aWwvZXZlbnRzJ1xuaW1wb3J0IHtoYXZlUG9pbnRlciwgaXNEZXNrdG9wfSBmcm9tICd1dGlsL2Vudmlyb25tZW50J1xuaW1wb3J0IG11bHRpUmVmIGZyb20gJ3V0aWwvbXVsdGlSZWYnXG5pbXBvcnQge29uVmlld01vZGVDaGFuZ2UsIHRvZ2dsZUZ1bGxzY3JlZW59IGZyb20gJ3V0aWwvdmlld01vZGVzJ1xuaW1wb3J0IHt1c2VBdXRvSGlkZX0gZnJvbSAnaG9va3MnXG5pbXBvcnQge0ludGxQcm92aWRlcn0gZnJvbSAnY29udGV4dC9JMThuJ1xuaW1wb3J0IHtnZXRNZWRpYVRpbWUsIGlzQnVmZmVyZWR9IGZyb20gJ3BsYXllckNvcmUvbWVkaWFCaW5kaW5ncydcbmltcG9ydCBFcnJvciBmcm9tICdwbGF5ZXJVaS9FcnJvcidcbmltcG9ydCBMYXlvdXQgZnJvbSAncGxheWVyVWkvRGVmYXVsdExheW91dCdcbmltcG9ydCB7XG4gIEJ1dHRvbixcbiAgTGl2ZUJ1dHRvbixcbiAgRnVsbHNjcmVlbkJ1dHRvbixcbiAgUGxheUJ1dHRvbixcbiAgRm9yd2FyZEJ1dHRvbixcbn0gZnJvbSAncGxheWVyVWkvYnV0dG9ucydcbmltcG9ydCBTZWVrYmFyIGZyb20gJ3BsYXllclVpL1NlZWtiYXInXG5pbXBvcnQgRGlzcGxheVRpbWUgZnJvbSAncGxheWVyVWkvRGlzcGxheVRpbWUnXG5pbXBvcnQgTG9hZGluZ1NwaW5uZXIgZnJvbSAncGxheWVyVWkvTG9hZGluZ1NwaW5uZXInXG5pbXBvcnQgQmFja2Ryb3AgZnJvbSAncGxheWVyVWkvQmFja2Ryb3AnXG5pbXBvcnQgU2V0dGluZ3MgZnJvbSAncGxheWVyVWkvU2V0dGluZ3MnXG5pbXBvcnQgT3ZlcmxheVBhbmVsIGZyb20gJ3BsYXllclVpL092ZXJsYXlQYW5lbCdcbmltcG9ydCBMYW5ndWFnZU1lbnUgZnJvbSAncGxheWVyVWkvTGFuZ3VhZ2VNZW51J1xuaW1wb3J0IFBsYXlQYW5lbCBmcm9tICdwbGF5ZXJVaS9QbGF5UGFuZSdcbmltcG9ydCBWb2x1bWVDb250cm9sIGZyb20gJ2NvbXBvbmVudC9Wb2x1bWVDb250cm9sJ1xuaW1wb3J0IENhc3RVaSBmcm9tICdjYXN0L0Nhc3RVaSdcbmltcG9ydCB7bGlua0Nhc3R9IGZyb20gJ2Nhc3QvZnJhbWV3b3JrJ1xuaW1wb3J0IHtDYXN0U3RhdGV9IGZyb20gJ0VudW0nXG5pbXBvcnQge2Rpc3BhdGNoQ2hhcHRlckV2ZW50c30gZnJvbSAnLi90aW1lbGluZSdcbmltcG9ydCBWaWRlbyBmcm9tICcuLi9WaWRlbydcbmltcG9ydCB7Z2V0TGFuZ3VhZ2VPcHRpb25zLCBnZXRRdWFsaXR5T3B0aW9ucywgZ2V0U2V0dGluZ3NEYXRhfSBmcm9tICcuL3NldHRpbmdzJ1xuaW1wb3J0IHtsaW5rTWVkaWFWb2x1bWUsIHN5bmNWb2x1bWV9IGZyb20gJy4vdm9sdW1lJ1xuaW1wb3J0IFNlZWtQcmV2aWV3IGZyb20gJy4vU2Vla1ByZXZpZXcnXG5cbmNvbnN0IHNpemVzID0ge1xuICAnc21hbGwtZW1iZWQnOiAyMDAsXG4gIGVtYmVkOiA0MDAsXG4gICd0YWJsZXQtcG9ydHJhaXQnOiA2MDAsXG4gICd0YWJsZXQtbGFuZHNjYXBlJzogOTAwLFxuICBkZXNrdG9wOiAxMjAwLFxufVxuXG5jb25zdCB1c2VMaW5rU3RhdGUgPSAocmVxdWVzdCwgZGVwZW5kZW5jaWVzID0gW10pID0+IHtcbiAgY29uc3QgW3N0YXRlLCBzZXRTdGF0ZV0gPSB1c2VTdGF0ZSgpXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVxdWVzdChzZXRTdGF0ZSlcbiAgfSwgZGVwZW5kZW5jaWVzKVxuICByZXR1cm4gc3RhdGVcbn1cblxuY29uc3QgZmxpcFN0YXRlID0gc3RhdGUgPT4gKHN0YXRlID09PSAncGxheWluZycgPyAncGF1c2VkJyA6ICdwbGF5aW5nJylcblxuLy8gRklYTUU6IHRvbyBmZXcgbGluZXMgdG8gc3BsaXQgYSBmaWxlLCBsb29raW5nIGEgYmV0dGVyIHBsYWNlXG5jb25zdCBnZXRUaHVtYm5haWxzVXJsID0gc291cmNlID0+XG4gIFtdLmNvbmNhdChzb3VyY2UpLmZpbmQoaXRlbSA9PiBpdGVtLnR5cGUgPT09ICd0aHVtYm5haWwnKT8uc3JjXG5cbmNvbnN0IGRlZmF1bHRTZXR0aW5ncyA9IHt9XG5cbmNvbnN0IHNob3VsZFBhdXNlID0gKHt1c2VyRm9jdXMsIHVpVHlwZX0pID0+XG4gICh1aVR5cGUgPT09ICdtb2JpbGUnICYmIC9zZXR0aW5nc3xjaGFwdGVyLWxpc3QvLnRlc3QodXNlckZvY3VzKSkgfHxcbiAgL2Jsb2NraW5nfHNlZWtiYXJ8c2hhcmUtaW5uZXIvLnRlc3QodXNlckZvY3VzKVxuXG4vLyBUT0RPIGV4dHJhY3QgdG8gc29tZXdoZXJlIGVsc2VcbmNvbnN0IG1lbnVDbGFzc2VzID0ge1xuICBkZWZhdWx0OiBjc3MoTGFuZ3VhZ2VNZW51LnN0eWxlcyksXG4gIGRlc2t0b3A6IGNzcyhMYW5ndWFnZU1lbnUuc3R5bGVzLCBMYW5ndWFnZU1lbnUuZGVza3RvcFN0eWxlcyksXG59XG5cbmNvbnN0IExhbmd1YWdlU2V0dGluZ3MgPSAoe1xuICB1aVR5cGUsXG4gIGF1ZGlvVHJhY2tzID0gW10sXG4gIHRleHRUcmFja3MgPSBbXSxcbiAgZ2V0UGxheWVyLFxuICBvbkNoYW5nZSxcbiAgc2xvdHMgPSB7TGFuZ3VhZ2VNZW51fSxcbiAgLi4ucmVzdFxufSkgPT4ge1xuICBjb25zdCBvcHRpb25zID0gZ2V0TGFuZ3VhZ2VPcHRpb25zKGdldFBsYXllcigpLCB7YXVkaW9UcmFja3MsIHRleHRUcmFja3N9KVxuICByZXR1cm4gKFxuICAgIGF1ZGlvVHJhY2tzLmxlbmd0aCA+IDAgJiZcbiAgICB0ZXh0VHJhY2tzLmxlbmd0aCA+IDAgJiYgKFxuICAgIDxPdmVybGF5UGFuZWwgYnV0dG9uSWNvbj1cInN1YnRpdGxlXCI+XG4gICAgICA8c2xvdHMuTGFuZ3VhZ2VNZW51XG4gICAgICAgIHVpVHlwZT17dWlUeXBlfVxuICAgICAgICBjbGFzc2VzPXttZW51Q2xhc3Nlc31cbiAgICAgICAgc2VjdGlvbk9wdGlvbnM9e1tvcHRpb25zLmF1ZGlvVHJhY2tzLCBvcHRpb25zLnRleHRUcmFja3NdfVxuICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgIHsuLi5yZXN0fVxuICAgICAgLz5cbiAgICA8L092ZXJsYXlQYW5lbD5cbiAgICApXG4gIClcbn1cblxuY29uc3QgUHJlbWl1bVBsYXllciA9ICh7XG4gIHNvdXJjZSxcbiAgc3RhcnRUaW1lLFxuICBxdWFsaXR5ID0ge30sXG4gIHRpdGxlLFxuICBtZXRhZGF0YSxcbiAgY2hhbm5lbFRpdGxlLFxuICBjaGFwdGVycyxcbiAgcGxheWJhY2tTdGF0ZTogYXBwUGxheWJhY2tTdGF0ZSxcbiAgY3VycmVudFRpbWU6IGFwcEN1cnJlbnRUaW1lLFxuICBwbGF5YmFja1JhdGU6IGFwcFBsYXliYWNrUmF0ZSxcbiAgbG9vcCxcbiAgdm9sdW1lOiBhcHBWb2x1bWUsXG4gIGF1ZGlvVHJhY2s6IGFwcEF1ZGlvVHJhY2ssXG4gIHRleHRUcmFjazogYXBwVGV4dFRyYWNrLFxuICB0aHVtYm5haWxzVXJsLFxuICBjb250cm9scyA9IHthdXRvaGlkZTogMzAwMH0sXG4gIG1hcmtzID0gW10sXG4gIC8vIFRPRE8gc2VjdGlvbklkXG4gIGludGwsXG4gIHNldHRpbmdzOiBhcHBTZXR0aW5ncyA9IGRlZmF1bHRTZXR0aW5ncyxcbiAgYmxvY2tpbmcsXG4gIHBsdWdpbnMgPSBbXSxcbiAgbW9kdWxlc0NvbmZpZyxcblxuICB1aVR5cGUgPSBpc0Rlc2t0b3AoKSA/ICdkZXNrdG9wJyA6ICdtb2JpbGUnLFxuICBzdHlsZSxcbiAgY2hpbGRyZW4sXG4gIHVpTW9kZSA9ICdzdGFuZGFsb25lJyxcbiAgY2FzdDogY2FzdE9wdGlvbnMgPSAnY29tcGF0aWJsZScsXG4gIHNsb3RzLFxuICBzbG90UHJvcHMgPSB7fSxcbiAgb25FcnJvcixcbiAgb25QbGF5YmFja1N0YXRlQ2hhbmdlLFxuICBvbkJhY2ssXG4gIG9uQ2FzdCxcbiAgb25DaGFuZ2VOZXh0LFxuICBvbkNoYW5nZVByZXZpb3VzLFxuICBvbk9wZW5TZXR0aW5ncyxcbiAgb25DaGFuZ2VTZXR0aW5ncyxcbiAgb25QbGF5ZXJMb2FkZWQsXG4gIG9uQmxvY2tlZEF1dG9wbGF5LFxuICBvblBsYXlsb2dGaXJlZCxcbiAgLi4udmlkZW9Qcm9wc1xufSkgPT4ge1xuICBjb25zdCBjb21wb25lbnRzID0ge1xuICAgIFZvbHVtZUNvbnRyb2wsXG4gICAgQ2FzdFVpLFxuICAgIERpc3BsYXlUaW1lLFxuICAgIExpdmVCdXR0b24sXG4gICAgU2Vla2JhcixcbiAgICBTZXR0aW5ncyxcbiAgICAuLi5zbG90cyxcbiAgfVxuICBjb25zdCB2aWRlb1JlZiA9IHVzZVJlZigpXG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZigpXG4gIGNvbnN0IHBsYXllclJlZiA9IHVzZVJlZigpXG4gIGNvbnN0IGFkQ29udGFpbmVyUmVmID0gdXNlUmVmKClcbiAgY29uc3QgcmVmcyA9IHVzZVJlZih7fSlcbiAgLy8gVE9ETyBtb3ZlIFJXRCByZWxhdGVkIHRvIExheW91dFxuICBjb25zdCB7XG4gICAgY3VycmVudEJyZWFrcG9pbnQ6IHNpemUsXG4gICAgd2lkdGgsXG4gICAgb2JzZXJ2ZSxcbiAgfSA9IHVzZURpbWVuc2lvbnMoe1xuICAgIHBvbHlmaWxsOiBSZXNpemVPYnNlcnZlcixcbiAgICBicmVha3BvaW50czogc2l6ZXMsXG4gIH0pXG4gIGNvbnN0IFtpc1VzZXJBY3RpdmUsIHNldElzVXNlckFjdGl2ZV0gPSB1c2VTdGF0ZShcbiAgICB1aU1vZGUgPT09ICdzdGFuZGFsb25lJyA/IHRydWUgOiB2aWRlb1Byb3BzLmF1dG9wbGF5XG4gIClcbiAgY29uc3QgW3VzZXJGb2N1cywgc2V0VXNlckZvY3VzXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbdGFyZ2V0U3RhdGUsIHNldFRhcmdldFN0YXRlXSA9IHVzZVN0YXRlKCgpID0+ICh7XG4gICAgcGxheWJhY2tTdGF0ZTpcbiAgICAgIGFwcFBsYXliYWNrU3RhdGUgfHwgKHZpZGVvUHJvcHMuYXV0b3BsYXkgPyAncGxheWluZycgOiAncGF1c2VkJyksXG4gICAgY3VycmVudFRpbWU6IHN0YXJ0VGltZSxcbiAgfSkpXG4gIGNvbnN0IFtwbGF5YmFja1RpbWUsIHNldFBsYXliYWNrVGltZV0gPSB1c2VTdGF0ZSh7XG4gICAgY3VycmVudFRpbWU6IDAsXG4gICAgYnVmZmVyVGltZTogMCxcbiAgfSlcbiAgY29uc3QgdG9nZ2xlUGxheSA9IChvdmVycmlkZVN0YXRlLCB7dHJpZ2dlcmVkQnl9ID0ge30pID0+IHtcbiAgICBpZiAodGFyZ2V0U3RhdGUucGxheWJhY2tTdGF0ZSAhPT0gb3ZlcnJpZGVTdGF0ZSkge1xuICAgICAgc2V0VGFyZ2V0U3RhdGUoc3RhdGUgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHBsYXliYWNrU3RhdGU6IG92ZXJyaWRlU3RhdGUgfHwgZmxpcFN0YXRlKHN0YXRlLnBsYXliYWNrU3RhdGUpLFxuICAgICAgICBhbmltYXRpb246XG4gICAgICAgICAgdHJpZ2dlcmVkQnkgPT09ICd1c2VyLWFjdGlvbicgJiYgZmxpcFN0YXRlKHN0YXRlLnBsYXliYWNrU3RhdGUpLFxuICAgICAgfSkpXG4gICAgfVxuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoYXBwUGxheWJhY2tTdGF0ZSkge1xuICAgICAgdG9nZ2xlUGxheShhcHBQbGF5YmFja1N0YXRlKVxuICAgIH1cbiAgfSwgW2FwcFBsYXliYWNrU3RhdGVdKVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh1aVR5cGUgPT09ICdtb2JpbGUnKSB7XG4gICAgICBvbihkb2N1bWVudCwgJ3Zpc2liaWxpdHljaGFuZ2UnLCAoKSA9PiB0b2dnbGVQbGF5KCdwYXVzZWQnKSlcbiAgICB9XG4gIH0sIFt1aVR5cGUsIHRhcmdldFN0YXRlLnBsYXliYWNrU3RhdGVdKVxuICBjb25zdCB1cGRhdGVQbGF5YmFja1RpbWUgPSBldmVudCA9PlxuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShcbiAgICAgICgpID0+XG4gICAgICAgIChldmVudD8udHlwZSAhPT0gJ3RpbWV1cGRhdGUnIHx8IGlzQnVmZmVyZWQodmlkZW9SZWYuY3VycmVudCkpICYmXG4gICAgICAgIHNldFBsYXliYWNrVGltZShzdGF0ZSA9PiAoe1xuICAgICAgICAgIC4uLnN0YXRlLFxuICAgICAgICAgIC4uLmdldE1lZGlhVGltZSh2aWRlb1JlZi5jdXJyZW50LCB7XG4gICAgICAgICAgICBwbGF5ZXI6IHBsYXllclJlZi5jdXJyZW50LFxuICAgICAgICAgICAgcGx1Z2lucyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICAuLi4oZXZlbnQ/LnR5cGUgPT09ICdkdXJhdGlvbmNoYW5nZScgJiYge1xuICAgICAgICAgICAgY3VycmVudFRpbWU6IHN0YXRlLmN1cnJlbnRUaW1lLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9KSlcbiAgICApXG4gIGNvbnN0IHNldFRhcmdldFRpbWUgPSB0aW1lID0+IHtcbiAgICBjb25zdCB0cmltbWVkID0gTWF0aC5taW4oXG4gICAgICB0aW1lLFxuICAgICAgdmlkZW9SZWYuY3VycmVudD8uaW5pdGlhbER1cmF0aW9uIHx8IEluZmluaXR5XG4gICAgKVxuICAgIHNldFRhcmdldFN0YXRlKHN0YXRlID0+ICh7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIC8vIHNlZWsgdG8gMCByZXBlYXRlZGx5IGVkZ2UgY2FzZVxuICAgICAgY3VycmVudFRpbWU6IHN0YXRlLmN1cnJlbnRUaW1lICE9PSB0cmltbWVkID8gdHJpbW1lZCA6IHRyaW1tZWQgKyAwLjAxLFxuICAgIH0pKVxuICAgIHVwZGF0ZVBsYXliYWNrVGltZSgpXG4gIH1cbiAgY29uc3QgW3BsYXliYWNrU3RhdGUsIHNldFBsYXliYWNrU3RhdGVdID0gdXNlU3RhdGUoJ2luaXQnKVxuICBjb25zdCBbY2FzdFN0YXRlLCBzZXRDYXN0U3RhdGVdID0gdXNlU3RhdGUoJycpXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBhcHBDdXJyZW50VGltZSA9PT0gJ251bWJlcicpIHNldFRhcmdldFRpbWUoYXBwQ3VycmVudFRpbWUgfHwgMClcbiAgICBpZiAodHlwZW9mIGFwcEN1cnJlbnRUaW1lID09PSAnb2JqZWN0JylcbiAgICAgIHNldFRhcmdldFRpbWUoYXBwQ3VycmVudFRpbWU/LnZhbHVlIHx8IDApXG4gIH0sIFthcHBDdXJyZW50VGltZV0pXG4gIGNvbnN0IFtlcnJvckRhdGEsIHNldEVycm9yRGF0YV0gPSB1c2VTdGF0ZSgpXG4gIGNvbnN0IGVycm9ySGFuZGxlciA9IHJlYWN0RXZlbnQgPT4ge1xuICAgIG9uRXJyb3I/LihyZWFjdEV2ZW50Lm5hdGl2ZUV2ZW50KVxuICAgIGhhbmRsZUVycm9yKHJlYWN0RXZlbnQsIHtcbiAgICAgIG1lZGlhOiB2aWRlb1JlZi5jdXJyZW50LFxuICAgICAgZGlzcGxheUVycm9yOiBkYXRhID0+IHtcbiAgICAgICAgc2V0UGxheWJhY2tTdGF0ZSgnZXJyb3InKVxuICAgICAgICBzZXRFcnJvckRhdGEoY3VycmVudCA9PiAoY3VycmVudD8uY29kZSA/IGN1cnJlbnQgOiBkYXRhKSlcbiAgICAgIH0sXG4gICAgfSlcbiAgfVxuICBjb25zdCBpc0xpdmUgPSBwbGF5YmFja1RpbWUuc3RyZWFtVHlwZSA9PT0gJ2xpdmUnXG4gIGNvbnN0IFtzZXR0aW5ncywgc2V0U2V0dGluZ3NdID0gdXNlU3RhdGUoKCkgPT4gKHtcbiAgICBzZWN0aW9uczogW10sXG4gICAgdmFsdWVzOiB7c3BlZWQ6IDF9LFxuICB9KSlcbiAgY29uc3QgZmV0Y2hTZXR0aW5ncyA9ICgpID0+IHtcbiAgICBpZiAoIXBsYXllclJlZi5jdXJyZW50KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3Qgc3BlZWRJdGVtcyA9IGFwcFNldHRpbmdzLnNwZWVkSXRlbXMgfHwgKGlzTGl2ZSA/IFtdIDogdW5kZWZpbmVkKVxuICAgIHNldFNldHRpbmdzKGN1cnJlbnQgPT4ge1xuICAgICAgY29uc3Qge3ZhbHVlcywgc2VjdGlvbnN9ID0gZ2V0U2V0dGluZ3NEYXRhKHtcbiAgICAgICAgbWVkaWE6IHZpZGVvUmVmLmN1cnJlbnQsXG4gICAgICAgIHBsYXllcjogcGxheWVyUmVmLmN1cnJlbnQsXG4gICAgICAgIHNvdXJjZSxcbiAgICAgICAgcXVhbGl0eSxcbiAgICAgICAgc3BlZWRJdGVtcyxcbiAgICAgICAgbG9vcCxcbiAgICAgICAgcHJlZmVycmVkOiBjdXJyZW50LnByZWZlcnJlZCxcbiAgICAgICAgb3RoZXJTZWN0aW9uczogYXBwU2V0dGluZ3Muc2VjdGlvbnMsXG4gICAgICB9KVxuICAgICAgcmV0dXJuIHtwcmVmZXJyZWQ6IGN1cnJlbnQucHJlZmVycmVkLCB2YWx1ZXMsIHNlY3Rpb25zfVxuICAgIH0pXG4gIH1cbiAgY29uc3QgbGFzdFN0YXRlID0gdXNlUmVmKHBsYXliYWNrU3RhdGUpXG4gIGNvbnN0IGhhbmRsZVBsYXliYWNrU3RhdGVDaGFuZ2UgPSAoZXZlbnQsIHN0YXRlKSA9PiB7XG4gICAgaWYgKGxhc3RTdGF0ZS5jdXJyZW50ID09PSAnZXJyb3InKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgb25QbGF5YmFja1N0YXRlQ2hhbmdlPy4oZXZlbnQsIHN0YXRlKVxuICAgIC8vIHByZXZpb3VzbHkgVUkgcGxheWJhY2sgc3RhdGUgd2FzIHN5bmNlZCBvbmx5IHdoZW5cbiAgICAvLyBleGl0aW5nIGlPUyB2aWRlbyBvbmx5IGZ1bGxzY3JlZW4od2Via2l0ZW5kZnVsbHNjcmVlbilcbiAgICBpZiAoXG4gICAgICAvcGxheWluZ3xwYXVzZWQvLnRlc3Qoc3RhdGUpICYmXG4gICAgICAhKHVpVHlwZSA9PT0gJ21vYmlsZScgJiYgYmxvY2tpbmcpICYmXG4gICAgICAhc2hvdWxkUGF1c2Uoe3VzZXJGb2N1cywgdWlUeXBlfSlcbiAgICApIHtcbiAgICAgIHRvZ2dsZVBsYXkoc3RhdGUpXG4gICAgfVxuICAgIGlmIChzdGF0ZSA9PT0gJ2VuZGVkJykge1xuICAgICAgdG9nZ2xlUGxheSgncGF1c2VkJylcbiAgICB9XG4gICAgaWYgKHN0YXRlID09PSAnbG9hZGluZycgJiYgbGFzdFN0YXRlLmN1cnJlbnQgIT09ICdpbml0Jykge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0b2dnbGVQbGF5KCdwbGF5aW5nJyksIDEpXG4gICAgfVxuICAgIGlmIChzdGF0ZSA9PT0gJ3BsYXlpbmcnKSB7XG4gICAgICBzZXRJc1VzZXJBY3RpdmUodHJ1ZSlcbiAgICB9XG4gICAgaWYgKGxhc3RTdGF0ZS5jdXJyZW50ID09PSAnbG9hZGluZycpIHtcbiAgICAgIGZldGNoU2V0dGluZ3MoKVxuICAgIH1cbiAgICBsYXN0U3RhdGUuY3VycmVudCA9IHN0YXRlXG4gICAgc2V0UGxheWJhY2tTdGF0ZShzdGF0ZSlcbiAgfVxuXG4gIGNvbnN0IGNoYW5nZVNldHRpbmdzID0gKG5hbWUsIHZhbHVlLCB7a2VlcE9wZW59ID0ge30pID0+IHtcbiAgICAvLyBUT0RPIGNvbnNpZGVyIG1lcmdlIGludG8gdXNlUmVkdWNlcj9cbiAgICBvbkNoYW5nZVNldHRpbmdzPy4oe25hbWUsIHZhbHVlfSlcbiAgICBzZXRUYXJnZXRUaW1lKHBsYXliYWNrVGltZS5jdXJyZW50VGltZSlcbiAgICBzZXRTZXR0aW5ncyhjdXJyZW50ID0+ICh7XG4gICAgICAuLi5jdXJyZW50LFxuICAgICAgdmFsdWVzOiB7Li4uY3VycmVudC52YWx1ZXMsIFtuYW1lXTogdmFsdWV9LFxuICAgICAgcHJlZmVycmVkOiB7Li4uY3VycmVudC5wcmVmZXJyZWQsIFtuYW1lXTogdmFsdWV9LFxuICAgIH0pKVxuICAgIGlmICgha2VlcE9wZW4pIHtcbiAgICAgIHNldFVzZXJGb2N1cygnJylcbiAgICB9XG4gIH1cbiAgY29uc3Qgb3BlblNldHRpbmdzID0gZXZlbnQgPT4ge1xuICAgIGNvbnN0IGFuaW1hdGlvbkZyYW1lID1cbiAgICAgIHVzZXJGb2N1cyAhPT0gJ3NldHRpbmdzJyAmJlxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgb25PcGVuU2V0dGluZ3M/LihldmVudCwgc2V0dGluZ3MpXG4gICAgICAgIC8vIEluIGlPUyBTYWZhcmksIHdlIG5lZWQgdG8gdXBkYXRlIHNldHRpbmdzIGRhdGFcbiAgICAgICAgZmV0Y2hTZXR0aW5ncygpXG4gICAgICB9KVxuICAgIHNldFVzZXJGb2N1cyhjdXJyZW50ID0+IChjdXJyZW50ID09PSAnc2V0dGluZ3MnID8gJycgOiAnc2V0dGluZ3MnKSlcbiAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWVcbiAgfVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChhcHBQbGF5YmFja1JhdGUgPiAwKSB7XG4gICAgICBzZXRTZXR0aW5ncyhjdXJyZW50ID0+ICh7XG4gICAgICAgIC4uLmN1cnJlbnQsXG4gICAgICAgIHZhbHVlczogey4uLmN1cnJlbnQudmFsdWVzLCBzcGVlZDogYXBwUGxheWJhY2tSYXRlfSxcbiAgICAgIH0pKVxuICAgIH1cbiAgfSwgW2FwcFBsYXliYWNrUmF0ZV0pXG5cbiAgY29uc3QgcXVhbGl0eU9wdGlvbnMgPSB1c2VNZW1vKFxuICAgICgpID0+IGdldFF1YWxpdHlPcHRpb25zKHNldHRpbmdzKSxcbiAgICBbc2V0dGluZ3MudmFsdWVzLnF1YWxpdHldXG4gIClcbiAgY29uc3Qgdmlld01vZGUgPSB1c2VMaW5rU3RhdGUodXBkYXRlID0+XG4gICAgb25WaWV3TW9kZUNoYW5nZSh2aWRlb1JlZi5jdXJyZW50LCB1cGRhdGUpXG4gIClcbiAgY29uc3Qgc291cmNlT3ZlcnJpZGUgPSB1c2VMaW5rU3RhdGUoXG4gICAgYXN5bmMgdXBkYXRlID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9XG4gICAgICAgIHNvdXJjZSAmJiAoYXdhaXQgcXVhbGl0eS5yZXdyaXRlTWFuaWZlc3Q/Lihzb3VyY2UsIHF1YWxpdHlPcHRpb25zKSlcbiAgICAgIHVwZGF0ZShyZXN1bHQgfHwgc291cmNlKVxuICAgIH0sXG4gICAgW3NvdXJjZSwgcXVhbGl0eU9wdGlvbnNdXG4gIClcbiAgY29uc3Qgd2FpdGluZyA9IC9lbXB0aWVkfGxvYWRpbmd8YnVmZmVyaW5nLy50ZXN0KHBsYXliYWNrU3RhdGUpXG4gIGNvbnN0IGFjdGl2ZVBsYXliYWNrID1cbiAgICBwbGF5YmFja1N0YXRlID09PSAncGxheWluZycgfHwgcGxheWJhY2tTdGF0ZSA9PT0gJ3dhaXRpbmcnXG4gIGNvbnN0IHtcbiAgICBtb2RlOiBhdXRvSGlkZU1vZGUsXG4gICAgb25DbGljayxcbiAgICBvbk1vdXNlTW92ZSxcbiAgfSA9IHVzZUF1dG9IaWRlKHtcbiAgICBwaW5uZWQ6ICFjb250cm9scy5hdXRvaGlkZSB8fCB3YWl0aW5nIHx8ICFhY3RpdmVQbGF5YmFjayB8fCB1c2VyRm9jdXMsXG4gICAgdGFwVG9IaWRlOiB1aVR5cGUgPT09ICdtb2JpbGUnLFxuICAgIGhpZGVUaW1lTXM6IGNvbnRyb2xzLmF1dG9oaWRlLFxuICB9KVxuICBjb25zdCBtb2RlID1cbiAgICB1c2VyRm9jdXMgPT09ICdzZWVrYmFyJ1xuICAgICAgPyAnaGlkZGVuJ1xuICAgICAgOiBjb250cm9scy5hdXRvaGlkZVxuICAgICAgPyBhdXRvSGlkZU1vZGVcbiAgICAgIDogY29udHJvbHNcbiAgICAgID8gJ3Nob3duJ1xuICAgICAgOiAnaGlkZGVuJ1xuICBjb25zdCBjb250cm9sc0Rpc3BsYXkgPVxuICAgIHVzZXJGb2N1cyA9PT0gJ3NlZWtiYXInXG4gICAgICA/ICdzZWVrYmFyLW9ubHknXG4gICAgICA6IGNvbnRyb2xzID09PSAndGl0bGUtb25seScgfHwgcGxheWJhY2tTdGF0ZSA9PT0gJ2VtcHRpZWQnXG4gICAgICA/ICdoaWRkZW4nXG4gICAgICA6IG1vZGVcbiAgY29uc3Qgc2hvdWxkSGlkZVBhbmVscyA9XG4gICAgKGNvbnRyb2xzID09PSAnbm8tcGFuZWwnIHx8IGNvbnRyb2xzRGlzcGxheSA9PT0gJ2hpZGRlbicpICYmIHVzZXJGb2N1c1xuICBjb25zdCBoYXZlUGxheVBhbmVsID1cbiAgICAhYmxvY2tpbmcgJiZcbiAgICBoYXZlUG9pbnRlcigpICYmXG4gICAgdWlUeXBlID09PSAnZGVza3RvcCcgJiZcbiAgICAhd2FpdGluZyAmJlxuICAgICEvdm9sdW1lfCcnLy50ZXN0KHVzZXJGb2N1cykgJiZcbiAgICAhL3RpdGxlLW9ubHl8bm8tcGFuZWwvLnRlc3QoY29udHJvbHMpICYmXG4gICAgKGNvbnRyb2xzLmF1dG9oaWRlIHx8IG1vZGUgPT09ICdzaG93bicpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoc2hvdWxkSGlkZVBhbmVscykge1xuICAgICAgc2V0VXNlckZvY3VzKCcnKVxuICAgIH1cbiAgfSwgW3Nob3VsZEhpZGVQYW5lbHNdKVxuICBjb25zdCB7c3Vic2NyaWJlLCBvbkNoYW5nZSwgdG9nZ2xlTXV0ZX0gPSBsaW5rTWVkaWFWb2x1bWUoKCkgPT4gKHtcbiAgICB2aWRlbzogdmlkZW9SZWYuY3VycmVudCxcbiAgICBnZXRQbGF5ZXI6ICgpID0+IHBsYXllclJlZi5jdXJyZW50LFxuICB9KSlcbiAgY29uc3QgY2hhbmdlUHJldmlvdXMgPSBldmVudCA9PiB7XG4gICAgb25DaGFuZ2VQcmV2aW91cyhldmVudClcbiAgICB0b2dnbGVQbGF5KCdwYXVzZWQnKVxuICAgIHZpZGVvUmVmLmN1cnJlbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2xvYWRzdGFydCcpKVxuICB9XG4gIGNvbnN0IGNoYW5nZU5leHQgPSBldmVudCA9PiB7XG4gICAgb25DaGFuZ2VOZXh0KGV2ZW50KVxuICAgIHRvZ2dsZVBsYXkoJ3BhdXNlZCcpXG4gICAgdmlkZW9SZWYuY3VycmVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnbG9hZHN0YXJ0JykpXG4gIH1cblxuICB1c2VFZmZlY3QoZmV0Y2hTZXR0aW5ncywgW2FwcFNldHRpbmdzXSlcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBUaGUgYWRDb250YWluZXIgc2hvdWxkIGJlIHNldCBiZWZvcmUgYGxvYWRgIGJlY2F1c2UgSW1hRGFpLmxvYWQgbmVlZHMgaXQuXG4gICAgcGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4uc2V0QWRDb250YWluZXI/LihhZENvbnRhaW5lclJlZi5jdXJyZW50KSlcbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KFxuICAgICgpID0+XG4gICAgICBkaXNwYXRjaENoYXB0ZXJFdmVudHMoe1xuICAgICAgICBtZWRpYTogdmlkZW9SZWYuY3VycmVudCxcbiAgICAgICAgY2hhcHRlcnMsXG4gICAgICAgIGdldFRpbWU6ICgpID0+IHZpZGVvUmVmLmN1cnJlbnQuY3VycmVudFRpbWUsXG4gICAgICB9KSxcbiAgICBbY2hhcHRlcnNdXG4gIClcblxuICBjb25zdCBpc0VuZCA9IHBsYXliYWNrU3RhdGUgPT09ICdlbmRlZCdcbiAgY29uc3QgY2FuU2VlayA9ICFpc0VuZCAmJiBwbGF5YmFja1RpbWUuZHVyYXRpb24gPiAwXG4gIGNvbnN0IGRlcml2ZWRQbGF5YmFja1N0YXRlID1cbiAgICAodWlUeXBlID09PSAnbW9iaWxlJyAmJiBibG9ja2luZykgfHwgc2hvdWxkUGF1c2Uoe3VzZXJGb2N1cywgdWlUeXBlfSlcbiAgICAgID8gJ3BhdXNlZCdcbiAgICAgIDogdGFyZ2V0U3RhdGUucGxheWJhY2tTdGF0ZVxuICBjb25zdCBhY3RpdmVUaHVtYm5haWxzVXJsID1cbiAgICAoIXVzZXJGb2N1cyB8fCB1c2VyRm9jdXMgPT09ICdzZWVrYmFyJykgJiZcbiAgICAoZ2V0VGh1bWJuYWlsc1VybChzb3VyY2UpIHx8IHRodW1ibmFpbHNVcmwpXG4gIGNvbnN0IGNzc1ZhcmlhYmxlcyA9IHtcbiAgICAnLS1wbGF5aW5nJzogcGxheWJhY2tTdGF0ZSA9PT0gJ3BsYXlpbmcnID8gJzEnIDogJzAnLFxuICB9XG4gIGNvbnN0IG9uUmV3aW5kID1cbiAgICAoIWlzTGl2ZSB8fCBwbGF5YmFja1RpbWUuY3VycmVudFRpbWUgPCAwKSAmJlxuICAgIGNhblNlZWsgJiZcbiAgICAoKCkgPT4gc2V0VGFyZ2V0VGltZShwbGF5YmFja1RpbWUuY3VycmVudFRpbWUgLSAxMCwgJ3Jld2luZCcpKVxuICBjb25zdCBvbkZvcndhcmQgPVxuICAgICghaXNMaXZlIHx8IHBsYXliYWNrVGltZS5jdXJyZW50VGltZSA8IDApICYmXG4gICAgY2FuU2VlayAmJlxuICAgICgoKSA9PiBzZXRUYXJnZXRUaW1lKHBsYXliYWNrVGltZS5jdXJyZW50VGltZSArIDEwLCAnZm9yd2FyZCcpKVxuICBjb25zdCBvbkNsaWNrQmxhbmsgPVxuICAgIGhhdmVQbGF5UGFuZWwgJiYgKCgpID0+IHRvZ2dsZVBsYXkoJycsIHt0cmlnZ2VyZWRCeTogJ3VzZXItYWN0aW9uJ30pKVxuXG4gIGNvbnN0IHVpSGFuZGxlcnMgPSB7XG4gICAgb25QbGF5OiAoKSA9PiB7XG4gICAgICB0b2dnbGVQbGF5KCcnLCB7dHJpZ2dlcmVkQnk6ICd1c2VyLWFjdGlvbid9KVxuICAgICAgc2V0SXNVc2VyQWN0aXZlKHRydWUpXG4gICAgfSxcbiAgICBvbkNsaWNrTGl2ZTogaXNMaXZlICYmICgoKSA9PiBzZXRUYXJnZXRUaW1lKDAsICdzZWVrVG9MaXZlJykpLFxuICAgIG9uQ2xpY2tTZWVrYmFyOiAoKSA9PiB7XG4gICAgICByZWZzLmN1cnJlbnQuZGVmZXJlZFNlZWtGb2N1cyA9IHNldFRpbWVvdXQoXG4gICAgICAgICgpID0+IHNldFVzZXJGb2N1cygnc2Vla2JhcicpLFxuICAgICAgICA2NlxuICAgICAgKVxuICAgIH0sXG4gICAgb25TZWVrOiB0aW1lID0+IHtcbiAgICAgIHNldFRhcmdldFRpbWUodGltZSwgJ3NlZWsnKVxuICAgICAgY2xlYXJUaW1lb3V0KHJlZnMuY3VycmVudC5kZWZlcmVkU2Vla0ZvY3VzKVxuICAgICAgc2V0VGltZW91dCgoKSA9PiBzZXRVc2VyRm9jdXMoJycpLCA2NilcbiAgICB9LFxuICAgIG9uQ2hhbmdlU2V0dGluZ3M6ICh7bmFtZSwgdmFsdWUsIGtlZXBPcGVufSkgPT5cbiAgICAgIGNoYW5nZVNldHRpbmdzKG5hbWUsIHZhbHVlLCB7a2VlcE9wZW59KSxcbiAgICBvbkNsb3NlU2V0dGluZ3M6IGV2ZW50ID0+IHtcbiAgICAgIHNldFVzZXJGb2N1cygnJylcbiAgICAgIHNsb3RQcm9wcz8uc2V0dGluZ3M/Lm9uQ2xvc2U/LihldmVudClcbiAgICB9LFxuICB9XG5cbiAgY29uc3QgdWlFbGVtZW50cyA9IHtcbiAgICBsaXZlQnV0dG9uOiB1aUhhbmRsZXJzLm9uQ2xpY2tMaXZlICYmIChcbiAgICAgIDxjb21wb25lbnRzLkxpdmVCdXR0b25cbiAgICAgICAgdXNpbmdTdGFydE92ZXI9e3BsYXliYWNrVGltZS5jdXJyZW50VGltZSA8IDB9XG4gICAgICAgIG9uQ2xpY2s9e3VpSGFuZGxlcnMub25DbGlja0xpdmV9XG4gICAgICAvPlxuICAgICksXG4gICAgY29udHJvbEJ1dHRvbnM6IHtcbiAgICAgIHBsYXlCdXR0b246IChcbiAgICAgICAgPFBsYXlCdXR0b25cbiAgICAgICAgICBwbGF5YmFja1N0YXRlPXtkZXJpdmVkUGxheWJhY2tTdGF0ZX1cbiAgICAgICAgICBlbmRlZD17aXNFbmR9XG4gICAgICAgICAgaGlkZGVuPXtcbiAgICAgICAgICAgIHVpVHlwZSA9PT0gJ21vYmlsZScgJiYgKHdhaXRpbmcgfHwgL2xvYWRpbmcvLnRlc3QocGxheWJhY2tTdGF0ZSkpXG4gICAgICAgICAgfVxuICAgICAgICAgIHZhcmlhbnQ9eyFpc1VzZXJBY3RpdmUgJiYgJ2ZpcnN0cGxheSd9XG4gICAgICAgICAgb25DbGljaz17dWlIYW5kbGVycy5vblBsYXl9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgICAgcmV3aW5kQnV0dG9uOiBvblJld2luZCAmJiAoXG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBzdGFydEljb249XCJyZXdpbmQxMFwiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLlJFV0lORFwiXG4gICAgICAgICAgZGlzYWJsZWQ9e2lzRW5kfVxuICAgICAgICAgIG9uQ2xpY2s9e29uUmV3aW5kfVxuICAgICAgICAvPlxuICAgICAgKSxcbiAgICAgIGZvcndhcmRCdXR0b246IG9uRm9yd2FyZCAmJiAoXG4gICAgICAgIDxGb3J3YXJkQnV0dG9uXG4gICAgICAgICAgc3RhcnRJY29uPVwiZm9yd2FyZDEwXCJcbiAgICAgICAgICB0aXRsZT1cIktLUy5QTEFZRVIuRk9SV0FSRFwiXG4gICAgICAgICAgZGlzYWJsZWQ9eyFjYW5TZWVrfVxuICAgICAgICAgIG9uQ2xpY2s9e29uRm9yd2FyZH1cbiAgICAgICAgLz5cbiAgICAgICksXG4gICAgICBuZXh0RXBpc29kZUJ1dHRvbjogKFxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgc3RhcnRJY29uPVwibmV4dFwiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLk5FWFRcIlxuICAgICAgICAgIGRpc2FibGVkPXshb25DaGFuZ2VOZXh0fVxuICAgICAgICAgIG9uQ2xpY2s9e2NoYW5nZU5leHR9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgICAgcHJldmlvdXNFcGlzb2RlQnV0dG9uOiAoXG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBzdGFydEljb249XCJwcmV2aW91c1wiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLlBSRVZJT1VTXCJcbiAgICAgICAgICBkaXNhYmxlZD17IW9uQ2hhbmdlUHJldmlvdXN9XG4gICAgICAgICAgb25DbGljaz17Y2hhbmdlUHJldmlvdXN9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgIH0sXG4gICAgc2Vla2JhcjogKFxuICAgICAgPGNvbXBvbmVudHMuU2Vla2JhclxuICAgICAgICBzdHlsZT17L3ZvbHVtZS8udGVzdCh1c2VyRm9jdXMpICYmIHtvcGFjaXR5OiAnMCd9fVxuICAgICAgICBzdGFydFRpbWU9e3BsYXliYWNrVGltZS5zdGFydFRpbWV9XG4gICAgICAgIGN1cnJlbnRUaW1lPXtwbGF5YmFja1RpbWUuY3VycmVudFRpbWV9XG4gICAgICAgIGJ1ZmZlclRpbWU9e3BsYXliYWNrVGltZS5idWZmZXJUaW1lfVxuICAgICAgICBkdXJhdGlvbj17cGxheWJhY2tUaW1lLmR1cmF0aW9ufVxuICAgICAgICBjaGFwdGVycz17Y2hhcHRlcnN9XG4gICAgICAgIG9uQ2hhbmdlPXt1aUhhbmRsZXJzLm9uQ2xpY2tTZWVrYmFyfVxuICAgICAgICBvbkNoYW5nZUNvbW1pdHRlZD17dWlIYW5kbGVycy5vblNlZWt9XG4gICAgICAgIG1hcmtzPXttYXJrc31cbiAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgey4uLnNsb3RQcm9wcy5zZWVrYmFyfVxuICAgICAgPlxuICAgICAgICB7YWN0aXZlVGh1bWJuYWlsc1VybCAmJiAoXG4gICAgICAgICAgPFNlZWtQcmV2aWV3XG4gICAgICAgICAgICB0aHVtYm5haWxzVXJsPXthY3RpdmVUaHVtYm5haWxzVXJsfVxuICAgICAgICAgICAgZHVyYXRpb249e3BsYXliYWNrVGltZS5kdXJhdGlvbn1cbiAgICAgICAgICAgIGNoYXB0ZXJzPXtjaGFwdGVyc31cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9jb21wb25lbnRzLlNlZWtiYXI+XG4gICAgKSxcbiAgICBkaXNwbGF5VGltZTogPGNvbXBvbmVudHMuRGlzcGxheVRpbWUgey4uLnBsYXliYWNrVGltZX0gLz4sXG4gICAgZnVsbHNjcmVlbkJ1dHRvbjogKFxuICAgICAgPEZ1bGxzY3JlZW5CdXR0b25cbiAgICAgICAgdmlld01vZGU9e3ZpZXdNb2RlfVxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB0b2dnbGVGdWxsc2NyZWVuKGNvbnRhaW5lclJlZi5jdXJyZW50KX1cbiAgICAgIC8+XG4gICAgKSxcbiAgICB2b2x1bWVDb250cm9sOiB3aWR0aCA+PSBzaXplc1snc21hbGwtZW1iZWQnXSAmJiAoXG4gICAgICA8Y29tcG9uZW50cy5Wb2x1bWVDb250cm9sXG4gICAgICAgIHsuLi57c3Vic2NyaWJlLCBvbkNoYW5nZSwgdG9nZ2xlTXV0ZX19XG4gICAgICAgIG9uTW91c2VPdmVyPXsoKSA9PiBzZXRVc2VyRm9jdXMoJ3ZvbHVtZScpfVxuICAgICAgICBvbk1vdXNlT3V0PXsoKSA9PiBzZXRVc2VyRm9jdXMoJycpfVxuICAgICAgICB7Li4uc2xvdFByb3BzPy52b2x1bWVDb250cm9sfVxuICAgICAgLz5cbiAgICApLFxuICAgIGJhY2tJdGVtczogKFxuICAgICAgPFBsYXlQYW5lbCBhbmltYXRpb249e3RhcmdldFN0YXRlLmFuaW1hdGlvbn0gb25DbGljaz17b25DbGlja0JsYW5rfSAvPlxuICAgICksXG4gIH1cbiAgY29uc3QgY29tcGF0aWJpbGl0eUNhc3RQcm9wcyA9IGNhc3RPcHRpb25zID09PSAnY29tcGF0aWJsZScgJiYge1xuICAgIHNvdXJjZSxcbiAgICB2YWx1ZXM6IHt0aXRsZSwgLi4uc2V0dGluZ3MudmFsdWVzLCAuLi5pbnRsLCBtb2R1bGVzQ29uZmlnfSxcbiAgICBvbkxvYWQ6IG9uQ2FzdCxcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGNhc3RPcHRpb25zICYmIGNhc3RPcHRpb25zICE9PSAnY29tcGF0aWJsZScpIHtcbiAgICAgIHJldHVybiBsaW5rQ2FzdCh7c291cmNlLCAuLi5jYXN0T3B0aW9uc30pXG4gICAgfSAvLyBUT0RPIHBsYXlsaXN0LCBhdWRpbyAvIHN1YnRpdGxlIHNldHRpbmdcbiAgfSwgW3NvdXJjZSwgY2FzdE9wdGlvbnMuY29udGVudElkLCBjYXN0T3B0aW9ucy5jdXN0b21EYXRhXSlcbiAgY29uc3Qgc2VsZWN0ZWRBdWRpb1RyYWNrID0gc2V0dGluZ3MucHJlZmVycmVkPy5hdWRpbyB8fCBhcHBBdWRpb1RyYWNrXG4gIGNvbnN0IHNlbGVjdGVkVGV4dFRyYWNrID0gc2V0dGluZ3MucHJlZmVycmVkPy5zdWJ0aXRsZXMgfHwgYXBwVGV4dFRyYWNrXG5cbiAgcmV0dXJuIChcbiAgICA8SW50bFByb3ZpZGVyIHsuLi5pbnRsfT5cbiAgICAgIDxMYXlvdXRcbiAgICAgICAgc3R5bGU9e3suLi5zdHlsZSwgY3NzVmFyaWFibGVzfX1cbiAgICAgICAgdHlwZT17dWlUeXBlfVxuICAgICAgICBkaXNwbGF5PXttb2RlfVxuICAgICAgICBjb250cm9sc0Rpc3BsYXk9e2NvbnRyb2xzRGlzcGxheX1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgdmlkZW89e1xuICAgICAgICAgIDxWaWRlb1xuICAgICAgICAgICAgey4uLnZpZGVvUHJvcHN9XG4gICAgICAgICAgICB2aWRlb1JlZj17bXVsdGlSZWYodmlkZW9SZWYsIHZpZGVvUHJvcHMudmlkZW9SZWYpfVxuICAgICAgICAgICAgc291cmNlPXtcbiAgICAgICAgICAgICAgY2FzdFN0YXRlICE9PSBDYXN0U3RhdGUuQ09OTkVDVEVEICYmXG4gICAgICAgICAgICAgIHBsYXliYWNrU3RhdGUgIT09ICdlcnJvcicgJiZcbiAgICAgICAgICAgICAgc291cmNlT3ZlcnJpZGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBsYXliYWNrU3RhdGU9e2Rlcml2ZWRQbGF5YmFja1N0YXRlfVxuICAgICAgICAgICAgY3VycmVudFRpbWU9e3RhcmdldFN0YXRlLmN1cnJlbnRUaW1lfVxuICAgICAgICAgICAgey4uLihhcHBWb2x1bWUgPj0gMCAmJiB7dm9sdW1lOiBhcHBWb2x1bWUsIG11dGVkOiBhcHBWb2x1bWUgPD0gMH0pfVxuICAgICAgICAgICAgcGxheWJhY2tSYXRlPXtzZXR0aW5ncy52YWx1ZXMuc3BlZWR9XG4gICAgICAgICAgICB2aWRlb1Jlc29sdXRpb249e3F1YWxpdHlPcHRpb25zfVxuICAgICAgICAgICAgYXVkaW9UcmFjaz17c2VsZWN0ZWRBdWRpb1RyYWNrfVxuICAgICAgICAgICAgdGV4dFRyYWNrPXtzZWxlY3RlZFRleHRUcmFja31cbiAgICAgICAgICAgIGxvb3A9e3NldHRpbmdzLnZhbHVlcy5sb29wfVxuICAgICAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgICAgIG1vZHVsZXNDb25maWc9e21vZHVsZXNDb25maWd9XG4gICAgICAgICAgICBvblBsYXlsb2dGaXJlZD17b25QbGF5bG9nRmlyZWR9XG4gICAgICAgICAgICBvbkVycm9yPXtlcnJvckhhbmRsZXJ9XG4gICAgICAgICAgICBvblBsYXliYWNrU3RhdGVDaGFuZ2U9e2hhbmRsZVBsYXliYWNrU3RhdGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkJsb2NrZWRBdXRvcGxheT17ZXJyb3IgPT4gb25CbG9ja2VkQXV0b3BsYXk/LihlcnJvcil9XG4gICAgICAgICAgICBvbkNhblBsYXk9e2V2ZW50ID0+IHtcbiAgICAgICAgICAgICAgdXBkYXRlUGxheWJhY2tUaW1lKGV2ZW50KVxuICAgICAgICAgICAgICB2aWRlb1Byb3BzLm9uQ2FuUGxheT8uKGV2ZW50KVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIG9uVGltZVVwZGF0ZT17dXBkYXRlUGxheWJhY2tUaW1lfVxuICAgICAgICAgICAgb25EdXJhdGlvbkNoYW5nZT17dXBkYXRlUGxheWJhY2tUaW1lfVxuICAgICAgICAgICAgb25QbGF5ZXJMb2FkZWQ9e3BsYXllciA9PiB7XG4gICAgICAgICAgICAgIHBsYXllclJlZi5jdXJyZW50ID0gcGxheWVyXG4gICAgICAgICAgICAgIG9uUGxheWVyTG9hZGVkPy4ocGxheWVyKVxuICAgICAgICAgICAgICBzeW5jVm9sdW1lKHZpZGVvUmVmLmN1cnJlbnQsIHZpZGVvUHJvcHMubXV0ZWQgPyAwIDogYXBwVm9sdW1lKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIGNvbnRhaW5lclJlZj17ZWxlbWVudCA9PiB7XG4gICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQgPSBlbGVtZW50XG4gICAgICAgICAgb2JzZXJ2ZShlbGVtZW50KVxuICAgICAgICB9fVxuICAgICAgICBiYWNrUmVmPXthZENvbnRhaW5lclJlZn1cbiAgICAgICAgdGl0bGU9e3RpdGxlfVxuICAgICAgICBjaGFubmVsVGl0bGU9e2NoYW5uZWxUaXRsZX1cbiAgICAgICAgYmFja0J1dHRvbj17b25CYWNrICYmIDxCdXR0b24gc3RhcnRJY29uPVwiYmFja1wiIG9uQ2xpY2s9e29uQmFja30gLz59XG4gICAgICAgIHsuLi4oaXNVc2VyQWN0aXZlICYmIHVpRWxlbWVudHMpfVxuICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICBvbk1vdXNlTW92ZT17b25Nb3VzZU1vdmV9XG4gICAgICA+XG4gICAgICAgIDxMb2FkaW5nU3Bpbm5lciBhY3RpdmU9e3dhaXRpbmd9IC8+XG4gICAgICAgIHtlcnJvckRhdGEgJiYgPEVycm9yIGVycm9yPXtlcnJvckRhdGF9IG9uQmFjaz17b25CYWNrfSAvPn1cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgICB7LyogVE9ETyBzeW5jIENhc3QgbGFzdCBwbGF5ZWQgdGltZSBiYWNrICovfVxuICAgICAgICB7aXNVc2VyQWN0aXZlICYmIChcbiAgICAgICAgICA8Y29tcG9uZW50cy5DYXN0VWlcbiAgICAgICAgICAgIG9uQmFjaz17b25CYWNrfVxuICAgICAgICAgICAgb25TdGF0ZUNoYW5nZT17c2V0Q2FzdFN0YXRlfVxuICAgICAgICAgICAgb25Mb2FkPXtvbkNhc3R9XG4gICAgICAgICAgICB7Li4uY29tcGF0aWJpbGl0eUNhc3RQcm9wc31cbiAgICAgICAgICAgIHsuLi5zbG90UHJvcHMuY2FzdFVpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIHtpc1VzZXJBY3RpdmUgJiYgKCAvLyBUT0RPOiBEZXNpZ24gPEV4dGVuc3Rpb24gLz4gZmxhZ1xuICAgICAgICAgIDxjb21wb25lbnRzLlNldHRpbmdzXG4gICAgICAgICAgICB0eXBlPXt1aVR5cGV9XG4gICAgICAgICAgICBzZWN0aW9ucz17c2V0dGluZ3Muc2VjdGlvbnN9XG4gICAgICAgICAgICAvLyBUT0RPIGhhc0JvdHRvbVBhbmVsIGJvdHRvbTogOGVtXG4gICAgICAgICAgICBvcGVuPXt1c2VyRm9jdXMgPT09ICdzZXR0aW5ncyd9XG4gICAgICAgICAgICB2YWx1ZXM9e3NldHRpbmdzLnZhbHVlc31cbiAgICAgICAgICAgIG9uT3Blbj17b3BlblNldHRpbmdzfVxuICAgICAgICAgICAgb25DaGFuZ2U9e3VpSGFuZGxlcnMub25DaGFuZ2VTZXR0aW5nc31cbiAgICAgICAgICAgIHsuLi5zbG90UHJvcHM/LnNldHRpbmdzfVxuICAgICAgICAgICAgb25DbG9zZT17dWlIYW5kbGVycy5vbkNsb3NlU2V0dGluZ3N9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgICAgPExhbmd1YWdlU2V0dGluZ3NcbiAgICAgICAgICB1aVR5cGU9e3VpVHlwZX1cbiAgICAgICAgICBnZXRQbGF5ZXI9eygpID0+IHBsYXllclJlZi5jdXJyZW50fVxuICAgICAgICAgIG9uQ2hhbmdlPXsoX2V2ZW50LCBpdGVtKSA9PiBjaGFuZ2VTZXR0aW5ncyhpdGVtLnR5cGUsIGl0ZW0udmFsdWUpfVxuICAgICAgICAgIHsuLi5zbG90UHJvcHMubGFuZ3VhZ2VTZXR0aW5nc31cbiAgICAgICAgLz5cbiAgICAgICAgPEJhY2tkcm9wIG9wZW49eyFwbGF5YmFja1N0YXRlIHx8IHBsYXliYWNrU3RhdGUgPT09ICdsb2FkaW5nJ30+XG4gICAgICAgICAgPExvYWRpbmdTcGlubmVyIC8+XG4gICAgICAgIDwvQmFja2Ryb3A+XG4gICAgICA8L0xheW91dD5cbiAgICA8L0ludGxQcm92aWRlcj5cbiAgKVxufVxuXG5leHBvcnQgZGVmYXVsdCBQcmVtaXVtUGxheWVyXG4iXX0= */")
17784
+ default: /*#__PURE__*/css$1(LanguageMenu.styles, "production" === "production" ? "" : ";label:default;", "production" === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZW1pdW1QbGF5ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUVXIiwiZmlsZSI6IlByZW1pdW1QbGF5ZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1uZXN0ZWQtdGVybmFyeSAqL1xuaW1wb3J0IHt1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtjc3N9IGZyb20gJ0BlbW90aW9uL2NzcydcbmltcG9ydCB1c2VEaW1lbnNpb25zIGZyb20gJ3JlYWN0LWNvb2wtZGltZW5zaW9ucydcbmltcG9ydCB7UmVzaXplT2JzZXJ2ZXJ9IGZyb20gJ0BqdWdnbGUvcmVzaXplLW9ic2VydmVyJ1xuXG5pbXBvcnQge2hhbmRsZUVycm9yfSBmcm9tICdwbGF5ZXJDb3JlL2Vycm9ycydcbmltcG9ydCB7b259IGZyb20gJ3V0aWwvZXZlbnRzJ1xuaW1wb3J0IHtoYXZlUG9pbnRlciwgaXNEZXNrdG9wfSBmcm9tICd1dGlsL2Vudmlyb25tZW50J1xuaW1wb3J0IG11bHRpUmVmIGZyb20gJ3V0aWwvbXVsdGlSZWYnXG5pbXBvcnQge29uVmlld01vZGVDaGFuZ2UsIHRvZ2dsZUZ1bGxzY3JlZW59IGZyb20gJ3V0aWwvdmlld01vZGVzJ1xuaW1wb3J0IHt1c2VBdXRvSGlkZX0gZnJvbSAnaG9va3MnXG5pbXBvcnQge0ludGxQcm92aWRlcn0gZnJvbSAnY29udGV4dC9JMThuJ1xuaW1wb3J0IHtnZXRNZWRpYVRpbWUsIGlzQnVmZmVyZWR9IGZyb20gJ3BsYXllckNvcmUvbWVkaWFCaW5kaW5ncydcbmltcG9ydCBFcnJvciBmcm9tICdwbGF5ZXJVaS9FcnJvcidcbmltcG9ydCBMYXlvdXQgZnJvbSAncGxheWVyVWkvRGVmYXVsdExheW91dCdcbmltcG9ydCB7XG4gIEJ1dHRvbixcbiAgTGl2ZUJ1dHRvbixcbiAgRnVsbHNjcmVlbkJ1dHRvbixcbiAgUGxheUJ1dHRvbixcbiAgRm9yd2FyZEJ1dHRvbixcbn0gZnJvbSAncGxheWVyVWkvYnV0dG9ucydcbmltcG9ydCBTZWVrYmFyIGZyb20gJ3BsYXllclVpL1NlZWtiYXInXG5pbXBvcnQgRGlzcGxheVRpbWUgZnJvbSAncGxheWVyVWkvRGlzcGxheVRpbWUnXG5pbXBvcnQgTG9hZGluZ1NwaW5uZXIgZnJvbSAncGxheWVyVWkvTG9hZGluZ1NwaW5uZXInXG5pbXBvcnQgQmFja2Ryb3AgZnJvbSAncGxheWVyVWkvQmFja2Ryb3AnXG5pbXBvcnQgU2V0dGluZ3MgZnJvbSAncGxheWVyVWkvU2V0dGluZ3MnXG5pbXBvcnQgT3ZlcmxheVBhbmVsIGZyb20gJ3BsYXllclVpL092ZXJsYXlQYW5lbCdcbmltcG9ydCBMYW5ndWFnZU1lbnUgZnJvbSAncGxheWVyVWkvTGFuZ3VhZ2VNZW51J1xuaW1wb3J0IFBsYXlQYW5lbCBmcm9tICdwbGF5ZXJVaS9QbGF5UGFuZSdcbmltcG9ydCBWb2x1bWVDb250cm9sIGZyb20gJ2NvbXBvbmVudC9Wb2x1bWVDb250cm9sJ1xuaW1wb3J0IENhc3RVaSBmcm9tICdjYXN0L0Nhc3RVaSdcbmltcG9ydCB7bGlua0Nhc3R9IGZyb20gJ2Nhc3QvZnJhbWV3b3JrJ1xuaW1wb3J0IHtDYXN0U3RhdGV9IGZyb20gJ0VudW0nXG5pbXBvcnQge2Rpc3BhdGNoQ2hhcHRlckV2ZW50c30gZnJvbSAnLi90aW1lbGluZSdcbmltcG9ydCBWaWRlbyBmcm9tICcuLi9WaWRlbydcbmltcG9ydCB7Z2V0TGFuZ3VhZ2VPcHRpb25zLCBnZXRRdWFsaXR5T3B0aW9ucywgZ2V0U2V0dGluZ3NEYXRhfSBmcm9tICcuL3NldHRpbmdzJ1xuaW1wb3J0IHtsaW5rTWVkaWFWb2x1bWUsIHN5bmNWb2x1bWV9IGZyb20gJy4vdm9sdW1lJ1xuaW1wb3J0IFNlZWtQcmV2aWV3IGZyb20gJy4vU2Vla1ByZXZpZXcnXG5cbmNvbnN0IHNpemVzID0ge1xuICAnc21hbGwtZW1iZWQnOiAyMDAsXG4gIGVtYmVkOiA0MDAsXG4gICd0YWJsZXQtcG9ydHJhaXQnOiA2MDAsXG4gICd0YWJsZXQtbGFuZHNjYXBlJzogOTAwLFxuICBkZXNrdG9wOiAxMjAwLFxufVxuXG5jb25zdCB1c2VMaW5rU3RhdGUgPSAocmVxdWVzdCwgZGVwZW5kZW5jaWVzID0gW10pID0+IHtcbiAgY29uc3QgW3N0YXRlLCBzZXRTdGF0ZV0gPSB1c2VTdGF0ZSgpXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVxdWVzdChzZXRTdGF0ZSlcbiAgfSwgZGVwZW5kZW5jaWVzKVxuICByZXR1cm4gc3RhdGVcbn1cblxuY29uc3QgZmxpcFN0YXRlID0gc3RhdGUgPT4gKHN0YXRlID09PSAncGxheWluZycgPyAncGF1c2VkJyA6ICdwbGF5aW5nJylcblxuLy8gRklYTUU6IHRvbyBmZXcgbGluZXMgdG8gc3BsaXQgYSBmaWxlLCBsb29raW5nIGEgYmV0dGVyIHBsYWNlXG5jb25zdCBnZXRUaHVtYm5haWxzVXJsID0gc291cmNlID0+XG4gIFtdLmNvbmNhdChzb3VyY2UpLmZpbmQoaXRlbSA9PiBpdGVtLnR5cGUgPT09ICd0aHVtYm5haWwnKT8uc3JjXG5cbmNvbnN0IGRlZmF1bHRTZXR0aW5ncyA9IHt9XG5cbmNvbnN0IHNob3VsZFBhdXNlID0gKHt1c2VyRm9jdXMsIHVpVHlwZX0pID0+XG4gICh1aVR5cGUgPT09ICdtb2JpbGUnICYmIC9zZXR0aW5nc3xjaGFwdGVyLWxpc3QvLnRlc3QodXNlckZvY3VzKSkgfHxcbiAgL2Jsb2NraW5nfHNlZWtiYXJ8c2hhcmUtaW5uZXIvLnRlc3QodXNlckZvY3VzKVxuXG4vLyBUT0RPIGV4dHJhY3QgdG8gc29tZXdoZXJlIGVsc2VcbmNvbnN0IG1lbnVDbGFzc2VzID0ge1xuICBkZWZhdWx0OiBjc3MoTGFuZ3VhZ2VNZW51LnN0eWxlcyksXG4gIGRlc2t0b3A6IGNzcyhMYW5ndWFnZU1lbnUuc3R5bGVzLCBMYW5ndWFnZU1lbnUuZGVza3RvcFN0eWxlcyksXG59XG5cbmNvbnN0IExhbmd1YWdlU2V0dGluZ3MgPSAoe1xuICB1aVR5cGUsXG4gIGF1ZGlvVHJhY2tzID0gW10sXG4gIHRleHRUcmFja3MgPSBbXSxcbiAgZ2V0UGxheWVyLFxuICBvbkNoYW5nZSxcbiAgc2xvdHMgPSB7TGFuZ3VhZ2VNZW51fSxcbiAgLi4ucmVzdFxufSkgPT4ge1xuICBjb25zdCBvcHRpb25zID0gZ2V0TGFuZ3VhZ2VPcHRpb25zKGdldFBsYXllcigpLCB7YXVkaW9UcmFja3MsIHRleHRUcmFja3N9KVxuICByZXR1cm4gKFxuICAgIGF1ZGlvVHJhY2tzLmxlbmd0aCA+IDAgJiZcbiAgICB0ZXh0VHJhY2tzLmxlbmd0aCA+IDAgJiYgKFxuICAgIDxPdmVybGF5UGFuZWwgdGl0bGU9XCLlrZfluZXjg7vpn7Plo7DjgpLliIfjgormm7/jgYjjgotcIiBidXR0b25JY29uPVwic3VidGl0bGVcIj5cbiAgICAgIDxzbG90cy5MYW5ndWFnZU1lbnVcbiAgICAgICAgdWlUeXBlPXt1aVR5cGV9XG4gICAgICAgIGNsYXNzZXM9e21lbnVDbGFzc2VzfVxuICAgICAgICBzZWN0aW9uT3B0aW9ucz17W29wdGlvbnMuYXVkaW9UcmFja3MsIG9wdGlvbnMudGV4dFRyYWNrc119XG4gICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgey4uLnJlc3R9XG4gICAgICAvPlxuICAgIDwvT3ZlcmxheVBhbmVsPlxuICAgIClcbiAgKVxufVxuXG5jb25zdCBQcmVtaXVtUGxheWVyID0gKHtcbiAgc291cmNlLFxuICBzdGFydFRpbWUsXG4gIHF1YWxpdHkgPSB7fSxcbiAgdGl0bGUsXG4gIG1ldGFkYXRhLFxuICBjaGFubmVsVGl0bGUsXG4gIGNoYXB0ZXJzLFxuICBwbGF5YmFja1N0YXRlOiBhcHBQbGF5YmFja1N0YXRlLFxuICBjdXJyZW50VGltZTogYXBwQ3VycmVudFRpbWUsXG4gIHBsYXliYWNrUmF0ZTogYXBwUGxheWJhY2tSYXRlLFxuICBsb29wLFxuICB2b2x1bWU6IGFwcFZvbHVtZSxcbiAgYXVkaW9UcmFjazogYXBwQXVkaW9UcmFjayxcbiAgdGV4dFRyYWNrOiBhcHBUZXh0VHJhY2ssXG4gIHRodW1ibmFpbHNVcmwsXG4gIGNvbnRyb2xzID0ge2F1dG9oaWRlOiAzMDAwfSxcbiAgbWFya3MgPSBbXSxcbiAgLy8gVE9ETyBzZWN0aW9uSWRcbiAgaW50bCxcbiAgc2V0dGluZ3M6IGFwcFNldHRpbmdzID0gZGVmYXVsdFNldHRpbmdzLFxuICBibG9ja2luZyxcbiAgcGx1Z2lucyA9IFtdLFxuICBtb2R1bGVzQ29uZmlnLFxuXG4gIHVpVHlwZSA9IGlzRGVza3RvcCgpID8gJ2Rlc2t0b3AnIDogJ21vYmlsZScsXG4gIHN0eWxlLFxuICBjaGlsZHJlbixcbiAgdWlNb2RlID0gJ3N0YW5kYWxvbmUnLFxuICBjYXN0OiBjYXN0T3B0aW9ucyA9ICdjb21wYXRpYmxlJyxcbiAgc2xvdHMsXG4gIHNsb3RQcm9wcyA9IHt9LFxuICBvbkVycm9yLFxuICBvblBsYXliYWNrU3RhdGVDaGFuZ2UsXG4gIG9uQmFjayxcbiAgb25DYXN0LFxuICBvbkNoYW5nZU5leHQsXG4gIG9uQ2hhbmdlUHJldmlvdXMsXG4gIG9uT3BlblNldHRpbmdzLFxuICBvbkNoYW5nZVNldHRpbmdzLFxuICBvblBsYXllckxvYWRlZCxcbiAgb25CbG9ja2VkQXV0b3BsYXksXG4gIG9uUGxheWxvZ0ZpcmVkLFxuICAuLi52aWRlb1Byb3BzXG59KSA9PiB7XG4gIGNvbnN0IGNvbXBvbmVudHMgPSB7XG4gICAgVm9sdW1lQ29udHJvbCxcbiAgICBDYXN0VWksXG4gICAgRGlzcGxheVRpbWUsXG4gICAgTGl2ZUJ1dHRvbixcbiAgICBTZWVrYmFyLFxuICAgIFNldHRpbmdzLFxuICAgIC4uLnNsb3RzLFxuICB9XG4gIGNvbnN0IHZpZGVvUmVmID0gdXNlUmVmKClcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKClcbiAgY29uc3QgcGxheWVyUmVmID0gdXNlUmVmKClcbiAgY29uc3QgYWRDb250YWluZXJSZWYgPSB1c2VSZWYoKVxuICBjb25zdCByZWZzID0gdXNlUmVmKHt9KVxuICAvLyBUT0RPIG1vdmUgUldEIHJlbGF0ZWQgdG8gTGF5b3V0XG4gIGNvbnN0IHtcbiAgICBjdXJyZW50QnJlYWtwb2ludDogc2l6ZSxcbiAgICB3aWR0aCxcbiAgICBvYnNlcnZlLFxuICB9ID0gdXNlRGltZW5zaW9ucyh7XG4gICAgcG9seWZpbGw6IFJlc2l6ZU9ic2VydmVyLFxuICAgIGJyZWFrcG9pbnRzOiBzaXplcyxcbiAgfSlcbiAgY29uc3QgW2lzVXNlckFjdGl2ZSwgc2V0SXNVc2VyQWN0aXZlXSA9IHVzZVN0YXRlKFxuICAgIHVpTW9kZSA9PT0gJ3N0YW5kYWxvbmUnID8gdHJ1ZSA6IHZpZGVvUHJvcHMuYXV0b3BsYXlcbiAgKVxuICBjb25zdCBbdXNlckZvY3VzLCBzZXRVc2VyRm9jdXNdID0gdXNlU3RhdGUoJycpXG4gIGNvbnN0IFt0YXJnZXRTdGF0ZSwgc2V0VGFyZ2V0U3RhdGVdID0gdXNlU3RhdGUoKCkgPT4gKHtcbiAgICBwbGF5YmFja1N0YXRlOlxuICAgICAgYXBwUGxheWJhY2tTdGF0ZSB8fCAodmlkZW9Qcm9wcy5hdXRvcGxheSA/ICdwbGF5aW5nJyA6ICdwYXVzZWQnKSxcbiAgICBjdXJyZW50VGltZTogc3RhcnRUaW1lLFxuICB9KSlcbiAgY29uc3QgW3BsYXliYWNrVGltZSwgc2V0UGxheWJhY2tUaW1lXSA9IHVzZVN0YXRlKHtcbiAgICBjdXJyZW50VGltZTogMCxcbiAgICBidWZmZXJUaW1lOiAwLFxuICB9KVxuICBjb25zdCB0b2dnbGVQbGF5ID0gKG92ZXJyaWRlU3RhdGUsIHt0cmlnZ2VyZWRCeX0gPSB7fSkgPT4ge1xuICAgIGlmICh0YXJnZXRTdGF0ZS5wbGF5YmFja1N0YXRlICE9PSBvdmVycmlkZVN0YXRlKSB7XG4gICAgICBzZXRUYXJnZXRTdGF0ZShzdGF0ZSA9PiAoe1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgcGxheWJhY2tTdGF0ZTogb3ZlcnJpZGVTdGF0ZSB8fCBmbGlwU3RhdGUoc3RhdGUucGxheWJhY2tTdGF0ZSksXG4gICAgICAgIGFuaW1hdGlvbjpcbiAgICAgICAgICB0cmlnZ2VyZWRCeSA9PT0gJ3VzZXItYWN0aW9uJyAmJiBmbGlwU3RhdGUoc3RhdGUucGxheWJhY2tTdGF0ZSksXG4gICAgICB9KSlcbiAgICB9XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChhcHBQbGF5YmFja1N0YXRlKSB7XG4gICAgICB0b2dnbGVQbGF5KGFwcFBsYXliYWNrU3RhdGUpXG4gICAgfVxuICB9LCBbYXBwUGxheWJhY2tTdGF0ZV0pXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHVpVHlwZSA9PT0gJ21vYmlsZScpIHtcbiAgICAgIG9uKGRvY3VtZW50LCAndmlzaWJpbGl0eWNoYW5nZScsICgpID0+IHRvZ2dsZVBsYXkoJ3BhdXNlZCcpKVxuICAgIH1cbiAgfSwgW3VpVHlwZSwgdGFyZ2V0U3RhdGUucGxheWJhY2tTdGF0ZV0pXG4gIGNvbnN0IHVwZGF0ZVBsYXliYWNrVGltZSA9IGV2ZW50ID0+XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKFxuICAgICAgKCkgPT5cbiAgICAgICAgKGV2ZW50Py50eXBlICE9PSAndGltZXVwZGF0ZScgfHwgaXNCdWZmZXJlZCh2aWRlb1JlZi5jdXJyZW50KSkgJiZcbiAgICAgICAgc2V0UGxheWJhY2tUaW1lKHN0YXRlID0+ICh7XG4gICAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgICAgLi4uZ2V0TWVkaWFUaW1lKHZpZGVvUmVmLmN1cnJlbnQsIHtcbiAgICAgICAgICAgIHBsYXllcjogcGxheWVyUmVmLmN1cnJlbnQsXG4gICAgICAgICAgICBwbHVnaW5zLFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIC4uLihldmVudD8udHlwZSA9PT0gJ2R1cmF0aW9uY2hhbmdlJyAmJiB7XG4gICAgICAgICAgICBjdXJyZW50VGltZTogc3RhdGUuY3VycmVudFRpbWUsXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pKVxuICAgIClcbiAgY29uc3Qgc2V0VGFyZ2V0VGltZSA9IHRpbWUgPT4ge1xuICAgIGNvbnN0IHRyaW1tZWQgPSBNYXRoLm1pbihcbiAgICAgIHRpbWUsXG4gICAgICB2aWRlb1JlZi5jdXJyZW50Py5pbml0aWFsRHVyYXRpb24gfHwgSW5maW5pdHlcbiAgICApXG4gICAgc2V0VGFyZ2V0U3RhdGUoc3RhdGUgPT4gKHtcbiAgICAgIC4uLnN0YXRlLFxuICAgICAgLy8gc2VlayB0byAwIHJlcGVhdGVkbHkgZWRnZSBjYXNlXG4gICAgICBjdXJyZW50VGltZTogc3RhdGUuY3VycmVudFRpbWUgIT09IHRyaW1tZWQgPyB0cmltbWVkIDogdHJpbW1lZCArIDAuMDEsXG4gICAgfSkpXG4gICAgdXBkYXRlUGxheWJhY2tUaW1lKClcbiAgfVxuICBjb25zdCBbcGxheWJhY2tTdGF0ZSwgc2V0UGxheWJhY2tTdGF0ZV0gPSB1c2VTdGF0ZSgnaW5pdCcpXG4gIGNvbnN0IFtjYXN0U3RhdGUsIHNldENhc3RTdGF0ZV0gPSB1c2VTdGF0ZSgnJylcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodHlwZW9mIGFwcEN1cnJlbnRUaW1lID09PSAnbnVtYmVyJykgc2V0VGFyZ2V0VGltZShhcHBDdXJyZW50VGltZSB8fCAwKVxuICAgIGlmICh0eXBlb2YgYXBwQ3VycmVudFRpbWUgPT09ICdvYmplY3QnKVxuICAgICAgc2V0VGFyZ2V0VGltZShhcHBDdXJyZW50VGltZT8udmFsdWUgfHwgMClcbiAgfSwgW2FwcEN1cnJlbnRUaW1lXSlcbiAgY29uc3QgW2Vycm9yRGF0YSwgc2V0RXJyb3JEYXRhXSA9IHVzZVN0YXRlKClcbiAgY29uc3QgZXJyb3JIYW5kbGVyID0gcmVhY3RFdmVudCA9PiB7XG4gICAgb25FcnJvcj8uKHJlYWN0RXZlbnQubmF0aXZlRXZlbnQpXG4gICAgaGFuZGxlRXJyb3IocmVhY3RFdmVudCwge1xuICAgICAgbWVkaWE6IHZpZGVvUmVmLmN1cnJlbnQsXG4gICAgICBkaXNwbGF5RXJyb3I6IGRhdGEgPT4ge1xuICAgICAgICBzZXRQbGF5YmFja1N0YXRlKCdlcnJvcicpXG4gICAgICAgIHNldEVycm9yRGF0YShjdXJyZW50ID0+IChjdXJyZW50Py5jb2RlID8gY3VycmVudCA6IGRhdGEpKVxuICAgICAgfSxcbiAgICB9KVxuICB9XG4gIGNvbnN0IGlzTGl2ZSA9IHBsYXliYWNrVGltZS5zdHJlYW1UeXBlID09PSAnbGl2ZSdcbiAgY29uc3QgW3NldHRpbmdzLCBzZXRTZXR0aW5nc10gPSB1c2VTdGF0ZSgoKSA9PiAoe1xuICAgIHNlY3Rpb25zOiBbXSxcbiAgICB2YWx1ZXM6IHtzcGVlZDogMX0sXG4gIH0pKVxuICBjb25zdCBmZXRjaFNldHRpbmdzID0gKCkgPT4ge1xuICAgIGlmICghcGxheWVyUmVmLmN1cnJlbnQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCBzcGVlZEl0ZW1zID0gYXBwU2V0dGluZ3Muc3BlZWRJdGVtcyB8fCAoaXNMaXZlID8gW10gOiB1bmRlZmluZWQpXG4gICAgc2V0U2V0dGluZ3MoY3VycmVudCA9PiB7XG4gICAgICBjb25zdCB7dmFsdWVzLCBzZWN0aW9uc30gPSBnZXRTZXR0aW5nc0RhdGEoe1xuICAgICAgICBtZWRpYTogdmlkZW9SZWYuY3VycmVudCxcbiAgICAgICAgcGxheWVyOiBwbGF5ZXJSZWYuY3VycmVudCxcbiAgICAgICAgc291cmNlLFxuICAgICAgICBxdWFsaXR5LFxuICAgICAgICBzcGVlZEl0ZW1zLFxuICAgICAgICBsb29wLFxuICAgICAgICBwcmVmZXJyZWQ6IGN1cnJlbnQucHJlZmVycmVkLFxuICAgICAgICBvdGhlclNlY3Rpb25zOiBhcHBTZXR0aW5ncy5zZWN0aW9ucyxcbiAgICAgIH0pXG4gICAgICByZXR1cm4ge3ByZWZlcnJlZDogY3VycmVudC5wcmVmZXJyZWQsIHZhbHVlcywgc2VjdGlvbnN9XG4gICAgfSlcbiAgfVxuICBjb25zdCBsYXN0U3RhdGUgPSB1c2VSZWYocGxheWJhY2tTdGF0ZSlcbiAgY29uc3QgaGFuZGxlUGxheWJhY2tTdGF0ZUNoYW5nZSA9IChldmVudCwgc3RhdGUpID0+IHtcbiAgICBpZiAobGFzdFN0YXRlLmN1cnJlbnQgPT09ICdlcnJvcicpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBvblBsYXliYWNrU3RhdGVDaGFuZ2U/LihldmVudCwgc3RhdGUpXG4gICAgLy8gcHJldmlvdXNseSBVSSBwbGF5YmFjayBzdGF0ZSB3YXMgc3luY2VkIG9ubHkgd2hlblxuICAgIC8vIGV4aXRpbmcgaU9TIHZpZGVvIG9ubHkgZnVsbHNjcmVlbih3ZWJraXRlbmRmdWxsc2NyZWVuKVxuICAgIGlmIChcbiAgICAgIC9wbGF5aW5nfHBhdXNlZC8udGVzdChzdGF0ZSkgJiZcbiAgICAgICEodWlUeXBlID09PSAnbW9iaWxlJyAmJiBibG9ja2luZykgJiZcbiAgICAgICFzaG91bGRQYXVzZSh7dXNlckZvY3VzLCB1aVR5cGV9KVxuICAgICkge1xuICAgICAgdG9nZ2xlUGxheShzdGF0ZSlcbiAgICB9XG4gICAgaWYgKHN0YXRlID09PSAnZW5kZWQnKSB7XG4gICAgICB0b2dnbGVQbGF5KCdwYXVzZWQnKVxuICAgIH1cbiAgICBpZiAoc3RhdGUgPT09ICdsb2FkaW5nJyAmJiBsYXN0U3RhdGUuY3VycmVudCAhPT0gJ2luaXQnKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRvZ2dsZVBsYXkoJ3BsYXlpbmcnKSwgMSlcbiAgICB9XG4gICAgaWYgKHN0YXRlID09PSAncGxheWluZycpIHtcbiAgICAgIHNldElzVXNlckFjdGl2ZSh0cnVlKVxuICAgIH1cbiAgICBpZiAobGFzdFN0YXRlLmN1cnJlbnQgPT09ICdsb2FkaW5nJykge1xuICAgICAgZmV0Y2hTZXR0aW5ncygpXG4gICAgfVxuICAgIGxhc3RTdGF0ZS5jdXJyZW50ID0gc3RhdGVcbiAgICBzZXRQbGF5YmFja1N0YXRlKHN0YXRlKVxuICB9XG5cbiAgY29uc3QgY2hhbmdlU2V0dGluZ3MgPSAobmFtZSwgdmFsdWUsIHtrZWVwT3Blbn0gPSB7fSkgPT4ge1xuICAgIC8vIFRPRE8gY29uc2lkZXIgbWVyZ2UgaW50byB1c2VSZWR1Y2VyP1xuICAgIG9uQ2hhbmdlU2V0dGluZ3M/Lih7bmFtZSwgdmFsdWV9KVxuICAgIHNldFRhcmdldFRpbWUocGxheWJhY2tUaW1lLmN1cnJlbnRUaW1lKVxuICAgIHNldFNldHRpbmdzKGN1cnJlbnQgPT4gKHtcbiAgICAgIC4uLmN1cnJlbnQsXG4gICAgICB2YWx1ZXM6IHsuLi5jdXJyZW50LnZhbHVlcywgW25hbWVdOiB2YWx1ZX0sXG4gICAgICBwcmVmZXJyZWQ6IHsuLi5jdXJyZW50LnByZWZlcnJlZCwgW25hbWVdOiB2YWx1ZX0sXG4gICAgfSkpXG4gICAgaWYgKCFrZWVwT3Blbikge1xuICAgICAgc2V0VXNlckZvY3VzKCcnKVxuICAgIH1cbiAgfVxuICBjb25zdCBvcGVuU2V0dGluZ3MgPSBldmVudCA9PiB7XG4gICAgY29uc3QgYW5pbWF0aW9uRnJhbWUgPVxuICAgICAgdXNlckZvY3VzICE9PSAnc2V0dGluZ3MnICYmXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBvbk9wZW5TZXR0aW5ncz8uKGV2ZW50LCBzZXR0aW5ncylcbiAgICAgICAgLy8gSW4gaU9TIFNhZmFyaSwgd2UgbmVlZCB0byB1cGRhdGUgc2V0dGluZ3MgZGF0YVxuICAgICAgICBmZXRjaFNldHRpbmdzKClcbiAgICAgIH0pXG4gICAgc2V0VXNlckZvY3VzKGN1cnJlbnQgPT4gKGN1cnJlbnQgPT09ICdzZXR0aW5ncycgPyAnJyA6ICdzZXR0aW5ncycpKVxuICAgIHJldHVybiBhbmltYXRpb25GcmFtZVxuICB9XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGFwcFBsYXliYWNrUmF0ZSA+IDApIHtcbiAgICAgIHNldFNldHRpbmdzKGN1cnJlbnQgPT4gKHtcbiAgICAgICAgLi4uY3VycmVudCxcbiAgICAgICAgdmFsdWVzOiB7Li4uY3VycmVudC52YWx1ZXMsIHNwZWVkOiBhcHBQbGF5YmFja1JhdGV9LFxuICAgICAgfSkpXG4gICAgfVxuICB9LCBbYXBwUGxheWJhY2tSYXRlXSlcblxuICBjb25zdCBxdWFsaXR5T3B0aW9ucyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gZ2V0UXVhbGl0eU9wdGlvbnMoc2V0dGluZ3MpLFxuICAgIFtzZXR0aW5ncy52YWx1ZXMucXVhbGl0eV1cbiAgKVxuICBjb25zdCB2aWV3TW9kZSA9IHVzZUxpbmtTdGF0ZSh1cGRhdGUgPT5cbiAgICBvblZpZXdNb2RlQ2hhbmdlKHZpZGVvUmVmLmN1cnJlbnQsIHVwZGF0ZSlcbiAgKVxuICBjb25zdCBzb3VyY2VPdmVycmlkZSA9IHVzZUxpbmtTdGF0ZShcbiAgICBhc3luYyB1cGRhdGUgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID1cbiAgICAgICAgc291cmNlICYmIChhd2FpdCBxdWFsaXR5LnJld3JpdGVNYW5pZmVzdD8uKHNvdXJjZSwgcXVhbGl0eU9wdGlvbnMpKVxuICAgICAgdXBkYXRlKHJlc3VsdCB8fCBzb3VyY2UpXG4gICAgfSxcbiAgICBbc291cmNlLCBxdWFsaXR5T3B0aW9uc11cbiAgKVxuICBjb25zdCB3YWl0aW5nID0gL2VtcHRpZWR8bG9hZGluZ3xidWZmZXJpbmcvLnRlc3QocGxheWJhY2tTdGF0ZSlcbiAgY29uc3QgYWN0aXZlUGxheWJhY2sgPVxuICAgIHBsYXliYWNrU3RhdGUgPT09ICdwbGF5aW5nJyB8fCBwbGF5YmFja1N0YXRlID09PSAnd2FpdGluZydcbiAgY29uc3Qge1xuICAgIG1vZGU6IGF1dG9IaWRlTW9kZSxcbiAgICBvbkNsaWNrLFxuICAgIG9uTW91c2VNb3ZlLFxuICB9ID0gdXNlQXV0b0hpZGUoe1xuICAgIHBpbm5lZDogIWNvbnRyb2xzLmF1dG9oaWRlIHx8IHdhaXRpbmcgfHwgIWFjdGl2ZVBsYXliYWNrIHx8IHVzZXJGb2N1cyxcbiAgICB0YXBUb0hpZGU6IHVpVHlwZSA9PT0gJ21vYmlsZScsXG4gICAgaGlkZVRpbWVNczogY29udHJvbHMuYXV0b2hpZGUsXG4gIH0pXG4gIGNvbnN0IG1vZGUgPVxuICAgIHVzZXJGb2N1cyA9PT0gJ3NlZWtiYXInXG4gICAgICA/ICdoaWRkZW4nXG4gICAgICA6IGNvbnRyb2xzLmF1dG9oaWRlXG4gICAgICA/IGF1dG9IaWRlTW9kZVxuICAgICAgOiBjb250cm9sc1xuICAgICAgPyAnc2hvd24nXG4gICAgICA6ICdoaWRkZW4nXG4gIGNvbnN0IGNvbnRyb2xzRGlzcGxheSA9XG4gICAgdXNlckZvY3VzID09PSAnc2Vla2JhcidcbiAgICAgID8gJ3NlZWtiYXItb25seSdcbiAgICAgIDogY29udHJvbHMgPT09ICd0aXRsZS1vbmx5JyB8fCBwbGF5YmFja1N0YXRlID09PSAnZW1wdGllZCdcbiAgICAgID8gJ2hpZGRlbidcbiAgICAgIDogbW9kZVxuICBjb25zdCBzaG91bGRIaWRlUGFuZWxzID1cbiAgICAoY29udHJvbHMgPT09ICduby1wYW5lbCcgfHwgY29udHJvbHNEaXNwbGF5ID09PSAnaGlkZGVuJykgJiYgdXNlckZvY3VzXG4gIGNvbnN0IGhhdmVQbGF5UGFuZWwgPVxuICAgICFibG9ja2luZyAmJlxuICAgIGhhdmVQb2ludGVyKCkgJiZcbiAgICB1aVR5cGUgPT09ICdkZXNrdG9wJyAmJlxuICAgICF3YWl0aW5nICYmXG4gICAgIS92b2x1bWV8JycvLnRlc3QodXNlckZvY3VzKSAmJlxuICAgICEvdGl0bGUtb25seXxuby1wYW5lbC8udGVzdChjb250cm9scykgJiZcbiAgICAoY29udHJvbHMuYXV0b2hpZGUgfHwgbW9kZSA9PT0gJ3Nob3duJylcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChzaG91bGRIaWRlUGFuZWxzKSB7XG4gICAgICBzZXRVc2VyRm9jdXMoJycpXG4gICAgfVxuICB9LCBbc2hvdWxkSGlkZVBhbmVsc10pXG4gIHVzZUVmZmVjdCgoKSA9PiBcbiAgICBvbihjb250YWluZXJSZWYuY3VycmVudCwgJ2ZvY3VzLW1lbnUnLCBldmVudCA9PiB7XG4gICAgICBpZiAoZXZlbnQuZGV0YWlsPy5zdGF0dXMgPT09ICdvcGVuJykge1xuICAgICAgICBzZXRVc2VyRm9jdXMoJ21lbnUnKVxuICAgICAgfVxuICAgICAgaWYgKGV2ZW50LmRldGFpbD8uc3RhdHVzID09PSAnY2xvc2VkJykge1xuICAgICAgICBzZXRVc2VyRm9jdXMoY3VycmVudCA9PiAoY3VycmVudCA9PT0gJ21lbnUnID8gJycgOiBjdXJyZW50KSlcbiAgICAgIH1cbiAgICB9KVxuICAsIFtdKVxuICBjb25zdCB7c3Vic2NyaWJlLCBvbkNoYW5nZSwgdG9nZ2xlTXV0ZX0gPSBsaW5rTWVkaWFWb2x1bWUoKCkgPT4gKHtcbiAgICB2aWRlbzogdmlkZW9SZWYuY3VycmVudCxcbiAgICBnZXRQbGF5ZXI6ICgpID0+IHBsYXllclJlZi5jdXJyZW50LFxuICB9KSlcbiAgY29uc3QgY2hhbmdlUHJldmlvdXMgPSBldmVudCA9PiB7XG4gICAgb25DaGFuZ2VQcmV2aW91cyhldmVudClcbiAgICB0b2dnbGVQbGF5KCdwYXVzZWQnKVxuICAgIHZpZGVvUmVmLmN1cnJlbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2xvYWRzdGFydCcpKVxuICB9XG4gIGNvbnN0IGNoYW5nZU5leHQgPSBldmVudCA9PiB7XG4gICAgb25DaGFuZ2VOZXh0KGV2ZW50KVxuICAgIHRvZ2dsZVBsYXkoJ3BhdXNlZCcpXG4gICAgdmlkZW9SZWYuY3VycmVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnbG9hZHN0YXJ0JykpXG4gIH1cblxuICB1c2VFZmZlY3QoZmV0Y2hTZXR0aW5ncywgW2FwcFNldHRpbmdzXSlcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBUaGUgYWRDb250YWluZXIgc2hvdWxkIGJlIHNldCBiZWZvcmUgYGxvYWRgIGJlY2F1c2UgSW1hRGFpLmxvYWQgbmVlZHMgaXQuXG4gICAgcGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4uc2V0QWRDb250YWluZXI/LihhZENvbnRhaW5lclJlZi5jdXJyZW50KSlcbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KFxuICAgICgpID0+XG4gICAgICBkaXNwYXRjaENoYXB0ZXJFdmVudHMoe1xuICAgICAgICBtZWRpYTogdmlkZW9SZWYuY3VycmVudCxcbiAgICAgICAgY2hhcHRlcnMsXG4gICAgICAgIGdldFRpbWU6ICgpID0+IHZpZGVvUmVmLmN1cnJlbnQuY3VycmVudFRpbWUsXG4gICAgICB9KSxcbiAgICBbY2hhcHRlcnNdXG4gIClcblxuICBjb25zdCBpc0VuZCA9IHBsYXliYWNrU3RhdGUgPT09ICdlbmRlZCdcbiAgY29uc3QgY2FuU2VlayA9ICFpc0VuZCAmJiBwbGF5YmFja1RpbWUuZHVyYXRpb24gPiAwXG4gIGNvbnN0IGRlcml2ZWRQbGF5YmFja1N0YXRlID1cbiAgICAodWlUeXBlID09PSAnbW9iaWxlJyAmJiBibG9ja2luZykgfHwgc2hvdWxkUGF1c2Uoe3VzZXJGb2N1cywgdWlUeXBlfSlcbiAgICAgID8gJ3BhdXNlZCdcbiAgICAgIDogdGFyZ2V0U3RhdGUucGxheWJhY2tTdGF0ZVxuICBjb25zdCBhY3RpdmVUaHVtYm5haWxzVXJsID1cbiAgICAoIXVzZXJGb2N1cyB8fCB1c2VyRm9jdXMgPT09ICdzZWVrYmFyJykgJiZcbiAgICAoZ2V0VGh1bWJuYWlsc1VybChzb3VyY2UpIHx8IHRodW1ibmFpbHNVcmwpXG4gIGNvbnN0IGNzc1ZhcmlhYmxlcyA9IHtcbiAgICAnLS1wbGF5aW5nJzogcGxheWJhY2tTdGF0ZSA9PT0gJ3BsYXlpbmcnID8gJzEnIDogJzAnLFxuICB9XG4gIGNvbnN0IG9uUmV3aW5kID1cbiAgICAoIWlzTGl2ZSB8fCBwbGF5YmFja1RpbWUuY3VycmVudFRpbWUgPCAwKSAmJlxuICAgIGNhblNlZWsgJiZcbiAgICAoKCkgPT4gc2V0VGFyZ2V0VGltZShwbGF5YmFja1RpbWUuY3VycmVudFRpbWUgLSAxMCwgJ3Jld2luZCcpKVxuICBjb25zdCBvbkZvcndhcmQgPVxuICAgICghaXNMaXZlIHx8IHBsYXliYWNrVGltZS5jdXJyZW50VGltZSA8IDApICYmXG4gICAgY2FuU2VlayAmJlxuICAgICgoKSA9PiBzZXRUYXJnZXRUaW1lKHBsYXliYWNrVGltZS5jdXJyZW50VGltZSArIDEwLCAnZm9yd2FyZCcpKVxuICBjb25zdCBvbkNsaWNrQmxhbmsgPVxuICAgIGhhdmVQbGF5UGFuZWwgJiYgKCgpID0+IHRvZ2dsZVBsYXkoJycsIHt0cmlnZ2VyZWRCeTogJ3VzZXItYWN0aW9uJ30pKVxuXG4gIGNvbnN0IHVpSGFuZGxlcnMgPSB7XG4gICAgb25QbGF5OiAoKSA9PiB7XG4gICAgICB0b2dnbGVQbGF5KCcnLCB7dHJpZ2dlcmVkQnk6ICd1c2VyLWFjdGlvbid9KVxuICAgICAgc2V0SXNVc2VyQWN0aXZlKHRydWUpXG4gICAgfSxcbiAgICBvbkNsaWNrTGl2ZTogaXNMaXZlICYmICgoKSA9PiBzZXRUYXJnZXRUaW1lKDAsICdzZWVrVG9MaXZlJykpLFxuICAgIG9uQ2xpY2tTZWVrYmFyOiAoKSA9PiB7XG4gICAgICByZWZzLmN1cnJlbnQuZGVmZXJlZFNlZWtGb2N1cyA9IHNldFRpbWVvdXQoXG4gICAgICAgICgpID0+IHNldFVzZXJGb2N1cygnc2Vla2JhcicpLFxuICAgICAgICA2NlxuICAgICAgKVxuICAgIH0sXG4gICAgb25TZWVrOiB0aW1lID0+IHtcbiAgICAgIHNldFRhcmdldFRpbWUodGltZSwgJ3NlZWsnKVxuICAgICAgY2xlYXJUaW1lb3V0KHJlZnMuY3VycmVudC5kZWZlcmVkU2Vla0ZvY3VzKVxuICAgICAgc2V0VGltZW91dCgoKSA9PiBzZXRVc2VyRm9jdXMoJycpLCA2NilcbiAgICB9LFxuICAgIG9uQ2hhbmdlU2V0dGluZ3M6ICh7bmFtZSwgdmFsdWUsIGtlZXBPcGVufSkgPT5cbiAgICAgIGNoYW5nZVNldHRpbmdzKG5hbWUsIHZhbHVlLCB7a2VlcE9wZW59KSxcbiAgICBvbkNsb3NlU2V0dGluZ3M6IGV2ZW50ID0+IHtcbiAgICAgIHNldFVzZXJGb2N1cygnJylcbiAgICAgIHNsb3RQcm9wcz8uc2V0dGluZ3M/Lm9uQ2xvc2U/LihldmVudClcbiAgICB9LFxuICB9XG5cbiAgY29uc3QgdWlFbGVtZW50cyA9IHtcbiAgICBsaXZlQnV0dG9uOiB1aUhhbmRsZXJzLm9uQ2xpY2tMaXZlICYmIChcbiAgICAgIDxjb21wb25lbnRzLkxpdmVCdXR0b25cbiAgICAgICAgdXNpbmdTdGFydE92ZXI9e3BsYXliYWNrVGltZS5jdXJyZW50VGltZSA8IDB9XG4gICAgICAgIG9uQ2xpY2s9e3VpSGFuZGxlcnMub25DbGlja0xpdmV9XG4gICAgICAvPlxuICAgICksXG4gICAgY29udHJvbEJ1dHRvbnM6IHtcbiAgICAgIHBsYXlCdXR0b246IChcbiAgICAgICAgPFBsYXlCdXR0b25cbiAgICAgICAgICBwbGF5YmFja1N0YXRlPXtkZXJpdmVkUGxheWJhY2tTdGF0ZX1cbiAgICAgICAgICBlbmRlZD17aXNFbmR9XG4gICAgICAgICAgaGlkZGVuPXtcbiAgICAgICAgICAgIHVpVHlwZSA9PT0gJ21vYmlsZScgJiYgKHdhaXRpbmcgfHwgL2xvYWRpbmcvLnRlc3QocGxheWJhY2tTdGF0ZSkpXG4gICAgICAgICAgfVxuICAgICAgICAgIHZhcmlhbnQ9eyFpc1VzZXJBY3RpdmUgJiYgJ2ZpcnN0cGxheSd9XG4gICAgICAgICAgb25DbGljaz17dWlIYW5kbGVycy5vblBsYXl9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgICAgcmV3aW5kQnV0dG9uOiBvblJld2luZCAmJiAoXG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBzdGFydEljb249XCJyZXdpbmQxMFwiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLlJFV0lORFwiXG4gICAgICAgICAgZGlzYWJsZWQ9e2lzRW5kfVxuICAgICAgICAgIG9uQ2xpY2s9e29uUmV3aW5kfVxuICAgICAgICAvPlxuICAgICAgKSxcbiAgICAgIGZvcndhcmRCdXR0b246IG9uRm9yd2FyZCAmJiAoXG4gICAgICAgIDxGb3J3YXJkQnV0dG9uXG4gICAgICAgICAgc3RhcnRJY29uPVwiZm9yd2FyZDEwXCJcbiAgICAgICAgICB0aXRsZT1cIktLUy5QTEFZRVIuRk9SV0FSRFwiXG4gICAgICAgICAgZGlzYWJsZWQ9eyFjYW5TZWVrfVxuICAgICAgICAgIG9uQ2xpY2s9e29uRm9yd2FyZH1cbiAgICAgICAgLz5cbiAgICAgICksXG4gICAgICBuZXh0RXBpc29kZUJ1dHRvbjogKFxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgc3RhcnRJY29uPVwibmV4dFwiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLk5FWFRcIlxuICAgICAgICAgIGRpc2FibGVkPXshb25DaGFuZ2VOZXh0fVxuICAgICAgICAgIG9uQ2xpY2s9e2NoYW5nZU5leHR9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgICAgcHJldmlvdXNFcGlzb2RlQnV0dG9uOiAoXG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBzdGFydEljb249XCJwcmV2aW91c1wiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLlBSRVZJT1VTXCJcbiAgICAgICAgICBkaXNhYmxlZD17IW9uQ2hhbmdlUHJldmlvdXN9XG4gICAgICAgICAgb25DbGljaz17Y2hhbmdlUHJldmlvdXN9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgIH0sXG4gICAgc2Vla2JhcjogKFxuICAgICAgPGNvbXBvbmVudHMuU2Vla2JhclxuICAgICAgICBzdHlsZT17L3ZvbHVtZS8udGVzdCh1c2VyRm9jdXMpICYmIHtvcGFjaXR5OiAnMCd9fVxuICAgICAgICBzdGFydFRpbWU9e3BsYXliYWNrVGltZS5zdGFydFRpbWV9XG4gICAgICAgIGN1cnJlbnRUaW1lPXtwbGF5YmFja1RpbWUuY3VycmVudFRpbWV9XG4gICAgICAgIGJ1ZmZlclRpbWU9e3BsYXliYWNrVGltZS5idWZmZXJUaW1lfVxuICAgICAgICBkdXJhdGlvbj17cGxheWJhY2tUaW1lLmR1cmF0aW9ufVxuICAgICAgICBjaGFwdGVycz17Y2hhcHRlcnN9XG4gICAgICAgIG9uQ2hhbmdlPXt1aUhhbmRsZXJzLm9uQ2xpY2tTZWVrYmFyfVxuICAgICAgICBvbkNoYW5nZUNvbW1pdHRlZD17dWlIYW5kbGVycy5vblNlZWt9XG4gICAgICAgIG1hcmtzPXttYXJrc31cbiAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgey4uLnNsb3RQcm9wcy5zZWVrYmFyfVxuICAgICAgPlxuICAgICAgICB7YWN0aXZlVGh1bWJuYWlsc1VybCAmJiAoXG4gICAgICAgICAgPFNlZWtQcmV2aWV3XG4gICAgICAgICAgICB0aHVtYm5haWxzVXJsPXthY3RpdmVUaHVtYm5haWxzVXJsfVxuICAgICAgICAgICAgZHVyYXRpb249e3BsYXliYWNrVGltZS5kdXJhdGlvbn1cbiAgICAgICAgICAgIGNoYXB0ZXJzPXtjaGFwdGVyc31cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9jb21wb25lbnRzLlNlZWtiYXI+XG4gICAgKSxcbiAgICBkaXNwbGF5VGltZTogPGNvbXBvbmVudHMuRGlzcGxheVRpbWUgey4uLnBsYXliYWNrVGltZX0gLz4sXG4gICAgZnVsbHNjcmVlbkJ1dHRvbjogKFxuICAgICAgPEZ1bGxzY3JlZW5CdXR0b25cbiAgICAgICAgdmlld01vZGU9e3ZpZXdNb2RlfVxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB0b2dnbGVGdWxsc2NyZWVuKGNvbnRhaW5lclJlZi5jdXJyZW50KX1cbiAgICAgIC8+XG4gICAgKSxcbiAgICB2b2x1bWVDb250cm9sOiB3aWR0aCA+PSBzaXplc1snc21hbGwtZW1iZWQnXSAmJiAoXG4gICAgICA8Y29tcG9uZW50cy5Wb2x1bWVDb250cm9sXG4gICAgICAgIHsuLi57c3Vic2NyaWJlLCBvbkNoYW5nZSwgdG9nZ2xlTXV0ZX19XG4gICAgICAgIG9uTW91c2VPdmVyPXsoKSA9PiBzZXRVc2VyRm9jdXMoJ3ZvbHVtZScpfVxuICAgICAgICBvbk1vdXNlT3V0PXsoKSA9PiBzZXRVc2VyRm9jdXMoJycpfVxuICAgICAgICB7Li4uc2xvdFByb3BzPy52b2x1bWVDb250cm9sfVxuICAgICAgLz5cbiAgICApLFxuICAgIGJhY2tJdGVtczogKFxuICAgICAgPFBsYXlQYW5lbCBhbmltYXRpb249e3RhcmdldFN0YXRlLmFuaW1hdGlvbn0gb25DbGljaz17b25DbGlja0JsYW5rfSAvPlxuICAgICksXG4gIH1cbiAgY29uc3QgY29tcGF0aWJpbGl0eUNhc3RQcm9wcyA9IGNhc3RPcHRpb25zID09PSAnY29tcGF0aWJsZScgJiYge1xuICAgIHNvdXJjZSxcbiAgICB2YWx1ZXM6IHt0aXRsZSwgLi4uc2V0dGluZ3MudmFsdWVzLCAuLi5pbnRsLCBtb2R1bGVzQ29uZmlnfSxcbiAgICBvbkxvYWQ6IG9uQ2FzdCxcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGNhc3RPcHRpb25zICYmIGNhc3RPcHRpb25zICE9PSAnY29tcGF0aWJsZScpIHtcbiAgICAgIHJldHVybiBsaW5rQ2FzdCh7c291cmNlLCAuLi5jYXN0T3B0aW9uc30pXG4gICAgfSAvLyBUT0RPIHBsYXlsaXN0LCBhdWRpbyAvIHN1YnRpdGxlIHNldHRpbmdcbiAgfSwgW3NvdXJjZSwgY2FzdE9wdGlvbnMuY29udGVudElkLCBjYXN0T3B0aW9ucy5jdXN0b21EYXRhXSlcbiAgY29uc3Qgc2VsZWN0ZWRBdWRpb1RyYWNrID0gc2V0dGluZ3MucHJlZmVycmVkPy5hdWRpbyB8fCBhcHBBdWRpb1RyYWNrXG4gIGNvbnN0IHNlbGVjdGVkVGV4dFRyYWNrID0gc2V0dGluZ3MucHJlZmVycmVkPy5zdWJ0aXRsZXMgfHwgYXBwVGV4dFRyYWNrXG5cbiAgcmV0dXJuIChcbiAgICA8SW50bFByb3ZpZGVyIHsuLi5pbnRsfT5cbiAgICAgIDxMYXlvdXRcbiAgICAgICAgc3R5bGU9e3suLi5zdHlsZSwgY3NzVmFyaWFibGVzfX1cbiAgICAgICAgdHlwZT17dWlUeXBlfVxuICAgICAgICBkaXNwbGF5PXttb2RlfVxuICAgICAgICBjb250cm9sc0Rpc3BsYXk9e2NvbnRyb2xzRGlzcGxheX1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgdmlkZW89e1xuICAgICAgICAgIDxWaWRlb1xuICAgICAgICAgICAgey4uLnZpZGVvUHJvcHN9XG4gICAgICAgICAgICB2aWRlb1JlZj17bXVsdGlSZWYodmlkZW9SZWYsIHZpZGVvUHJvcHMudmlkZW9SZWYpfVxuICAgICAgICAgICAgc291cmNlPXtcbiAgICAgICAgICAgICAgY2FzdFN0YXRlICE9PSBDYXN0U3RhdGUuQ09OTkVDVEVEICYmXG4gICAgICAgICAgICAgIHBsYXliYWNrU3RhdGUgIT09ICdlcnJvcicgJiZcbiAgICAgICAgICAgICAgc291cmNlT3ZlcnJpZGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBsYXliYWNrU3RhdGU9e2Rlcml2ZWRQbGF5YmFja1N0YXRlfVxuICAgICAgICAgICAgY3VycmVudFRpbWU9e3RhcmdldFN0YXRlLmN1cnJlbnRUaW1lfVxuICAgICAgICAgICAgey4uLihhcHBWb2x1bWUgPj0gMCAmJiB7dm9sdW1lOiBhcHBWb2x1bWUsIG11dGVkOiBhcHBWb2x1bWUgPD0gMH0pfVxuICAgICAgICAgICAgcGxheWJhY2tSYXRlPXtzZXR0aW5ncy52YWx1ZXMuc3BlZWR9XG4gICAgICAgICAgICB2aWRlb1Jlc29sdXRpb249e3F1YWxpdHlPcHRpb25zfVxuICAgICAgICAgICAgYXVkaW9UcmFjaz17c2VsZWN0ZWRBdWRpb1RyYWNrfVxuICAgICAgICAgICAgdGV4dFRyYWNrPXtzZWxlY3RlZFRleHRUcmFja31cbiAgICAgICAgICAgIGxvb3A9e3NldHRpbmdzLnZhbHVlcy5sb29wfVxuICAgICAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgICAgIG1vZHVsZXNDb25maWc9e21vZHVsZXNDb25maWd9XG4gICAgICAgICAgICBvblBsYXlsb2dGaXJlZD17b25QbGF5bG9nRmlyZWR9XG4gICAgICAgICAgICBvbkVycm9yPXtlcnJvckhhbmRsZXJ9XG4gICAgICAgICAgICBvblBsYXliYWNrU3RhdGVDaGFuZ2U9e2hhbmRsZVBsYXliYWNrU3RhdGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkJsb2NrZWRBdXRvcGxheT17ZXJyb3IgPT4gb25CbG9ja2VkQXV0b3BsYXk/LihlcnJvcil9XG4gICAgICAgICAgICBvbkNhblBsYXk9e2V2ZW50ID0+IHtcbiAgICAgICAgICAgICAgdXBkYXRlUGxheWJhY2tUaW1lKGV2ZW50KVxuICAgICAgICAgICAgICB2aWRlb1Byb3BzLm9uQ2FuUGxheT8uKGV2ZW50KVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIG9uVGltZVVwZGF0ZT17dXBkYXRlUGxheWJhY2tUaW1lfVxuICAgICAgICAgICAgb25EdXJhdGlvbkNoYW5nZT17dXBkYXRlUGxheWJhY2tUaW1lfVxuICAgICAgICAgICAgb25QbGF5ZXJMb2FkZWQ9e3BsYXllciA9PiB7XG4gICAgICAgICAgICAgIHBsYXllclJlZi5jdXJyZW50ID0gcGxheWVyXG4gICAgICAgICAgICAgIG9uUGxheWVyTG9hZGVkPy4ocGxheWVyKVxuICAgICAgICAgICAgICBzeW5jVm9sdW1lKHZpZGVvUmVmLmN1cnJlbnQsIHZpZGVvUHJvcHMubXV0ZWQgPyAwIDogYXBwVm9sdW1lKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIGNvbnRhaW5lclJlZj17ZWxlbWVudCA9PiB7XG4gICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQgPSBlbGVtZW50XG4gICAgICAgICAgb2JzZXJ2ZShlbGVtZW50KVxuICAgICAgICB9fVxuICAgICAgICBiYWNrUmVmPXthZENvbnRhaW5lclJlZn1cbiAgICAgICAgdGl0bGU9e3RpdGxlfVxuICAgICAgICBjaGFubmVsVGl0bGU9e2NoYW5uZWxUaXRsZX1cbiAgICAgICAgYmFja0J1dHRvbj17b25CYWNrICYmIDxCdXR0b24gc3RhcnRJY29uPVwiYmFja1wiIG9uQ2xpY2s9e29uQmFja30gLz59XG4gICAgICAgIHsuLi4oaXNVc2VyQWN0aXZlICYmIHVpRWxlbWVudHMpfVxuICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICBvbk1vdXNlTW92ZT17b25Nb3VzZU1vdmV9XG4gICAgICA+XG4gICAgICAgIDxMb2FkaW5nU3Bpbm5lciBhY3RpdmU9e3dhaXRpbmd9IC8+XG4gICAgICAgIHtlcnJvckRhdGEgJiYgPEVycm9yIGVycm9yPXtlcnJvckRhdGF9IG9uQmFjaz17b25CYWNrfSAvPn1cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgICB7LyogVE9ETyBzeW5jIENhc3QgbGFzdCBwbGF5ZWQgdGltZSBiYWNrICovfVxuICAgICAgICB7aXNVc2VyQWN0aXZlICYmIChcbiAgICAgICAgICA8Y29tcG9uZW50cy5DYXN0VWlcbiAgICAgICAgICAgIG9uQmFjaz17b25CYWNrfVxuICAgICAgICAgICAgb25TdGF0ZUNoYW5nZT17c2V0Q2FzdFN0YXRlfVxuICAgICAgICAgICAgb25Mb2FkPXtvbkNhc3R9XG4gICAgICAgICAgICB7Li4uY29tcGF0aWJpbGl0eUNhc3RQcm9wc31cbiAgICAgICAgICAgIHsuLi5zbG90UHJvcHMuY2FzdFVpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIHtpc1VzZXJBY3RpdmUgJiYgKCAvLyBUT0RPOiBEZXNpZ24gPEV4dGVuc3Rpb24gLz4gZmxhZ1xuICAgICAgICAgIDxjb21wb25lbnRzLlNldHRpbmdzXG4gICAgICAgICAgICB0eXBlPXt1aVR5cGV9XG4gICAgICAgICAgICBzZWN0aW9ucz17c2V0dGluZ3Muc2VjdGlvbnN9XG4gICAgICAgICAgICAvLyBUT0RPIGhhc0JvdHRvbVBhbmVsIGJvdHRvbTogOGVtXG4gICAgICAgICAgICBvcGVuPXt1c2VyRm9jdXMgPT09ICdzZXR0aW5ncyd9XG4gICAgICAgICAgICB2YWx1ZXM9e3NldHRpbmdzLnZhbHVlc31cbiAgICAgICAgICAgIG9uT3Blbj17b3BlblNldHRpbmdzfVxuICAgICAgICAgICAgb25DaGFuZ2U9e3VpSGFuZGxlcnMub25DaGFuZ2VTZXR0aW5nc31cbiAgICAgICAgICAgIHsuLi5zbG90UHJvcHM/LnNldHRpbmdzfVxuICAgICAgICAgICAgb25DbG9zZT17dWlIYW5kbGVycy5vbkNsb3NlU2V0dGluZ3N9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgICAgPExhbmd1YWdlU2V0dGluZ3NcbiAgICAgICAgICB1aVR5cGU9e3VpVHlwZX1cbiAgICAgICAgICBnZXRQbGF5ZXI9eygpID0+IHBsYXllclJlZi5jdXJyZW50fVxuICAgICAgICAgIG9uQ2hhbmdlPXsoX2V2ZW50LCBpdGVtKSA9PiBjaGFuZ2VTZXR0aW5ncyhpdGVtLnR5cGUsIGl0ZW0udmFsdWUpfVxuICAgICAgICAgIHsuLi5zbG90UHJvcHMubGFuZ3VhZ2VTZXR0aW5nc31cbiAgICAgICAgLz5cbiAgICAgICAgPEJhY2tkcm9wIG9wZW49eyFwbGF5YmFja1N0YXRlIHx8IHBsYXliYWNrU3RhdGUgPT09ICdsb2FkaW5nJ30+XG4gICAgICAgICAgPExvYWRpbmdTcGlubmVyIC8+XG4gICAgICAgIDwvQmFja2Ryb3A+XG4gICAgICA8L0xheW91dD5cbiAgICA8L0ludGxQcm92aWRlcj5cbiAgKVxufVxuXG5leHBvcnQgZGVmYXVsdCBQcmVtaXVtUGxheWVyXG4iXX0= */"),
17785
+ desktop: /*#__PURE__*/css$1(LanguageMenu.styles, LanguageMenu.desktopStyles, "production" === "production" ? "" : ";label:desktop;", "production" === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZW1pdW1QbGF5ZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0VXIiwiZmlsZSI6IlByZW1pdW1QbGF5ZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1uZXN0ZWQtdGVybmFyeSAqL1xuaW1wb3J0IHt1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtjc3N9IGZyb20gJ0BlbW90aW9uL2NzcydcbmltcG9ydCB1c2VEaW1lbnNpb25zIGZyb20gJ3JlYWN0LWNvb2wtZGltZW5zaW9ucydcbmltcG9ydCB7UmVzaXplT2JzZXJ2ZXJ9IGZyb20gJ0BqdWdnbGUvcmVzaXplLW9ic2VydmVyJ1xuXG5pbXBvcnQge2hhbmRsZUVycm9yfSBmcm9tICdwbGF5ZXJDb3JlL2Vycm9ycydcbmltcG9ydCB7b259IGZyb20gJ3V0aWwvZXZlbnRzJ1xuaW1wb3J0IHtoYXZlUG9pbnRlciwgaXNEZXNrdG9wfSBmcm9tICd1dGlsL2Vudmlyb25tZW50J1xuaW1wb3J0IG11bHRpUmVmIGZyb20gJ3V0aWwvbXVsdGlSZWYnXG5pbXBvcnQge29uVmlld01vZGVDaGFuZ2UsIHRvZ2dsZUZ1bGxzY3JlZW59IGZyb20gJ3V0aWwvdmlld01vZGVzJ1xuaW1wb3J0IHt1c2VBdXRvSGlkZX0gZnJvbSAnaG9va3MnXG5pbXBvcnQge0ludGxQcm92aWRlcn0gZnJvbSAnY29udGV4dC9JMThuJ1xuaW1wb3J0IHtnZXRNZWRpYVRpbWUsIGlzQnVmZmVyZWR9IGZyb20gJ3BsYXllckNvcmUvbWVkaWFCaW5kaW5ncydcbmltcG9ydCBFcnJvciBmcm9tICdwbGF5ZXJVaS9FcnJvcidcbmltcG9ydCBMYXlvdXQgZnJvbSAncGxheWVyVWkvRGVmYXVsdExheW91dCdcbmltcG9ydCB7XG4gIEJ1dHRvbixcbiAgTGl2ZUJ1dHRvbixcbiAgRnVsbHNjcmVlbkJ1dHRvbixcbiAgUGxheUJ1dHRvbixcbiAgRm9yd2FyZEJ1dHRvbixcbn0gZnJvbSAncGxheWVyVWkvYnV0dG9ucydcbmltcG9ydCBTZWVrYmFyIGZyb20gJ3BsYXllclVpL1NlZWtiYXInXG5pbXBvcnQgRGlzcGxheVRpbWUgZnJvbSAncGxheWVyVWkvRGlzcGxheVRpbWUnXG5pbXBvcnQgTG9hZGluZ1NwaW5uZXIgZnJvbSAncGxheWVyVWkvTG9hZGluZ1NwaW5uZXInXG5pbXBvcnQgQmFja2Ryb3AgZnJvbSAncGxheWVyVWkvQmFja2Ryb3AnXG5pbXBvcnQgU2V0dGluZ3MgZnJvbSAncGxheWVyVWkvU2V0dGluZ3MnXG5pbXBvcnQgT3ZlcmxheVBhbmVsIGZyb20gJ3BsYXllclVpL092ZXJsYXlQYW5lbCdcbmltcG9ydCBMYW5ndWFnZU1lbnUgZnJvbSAncGxheWVyVWkvTGFuZ3VhZ2VNZW51J1xuaW1wb3J0IFBsYXlQYW5lbCBmcm9tICdwbGF5ZXJVaS9QbGF5UGFuZSdcbmltcG9ydCBWb2x1bWVDb250cm9sIGZyb20gJ2NvbXBvbmVudC9Wb2x1bWVDb250cm9sJ1xuaW1wb3J0IENhc3RVaSBmcm9tICdjYXN0L0Nhc3RVaSdcbmltcG9ydCB7bGlua0Nhc3R9IGZyb20gJ2Nhc3QvZnJhbWV3b3JrJ1xuaW1wb3J0IHtDYXN0U3RhdGV9IGZyb20gJ0VudW0nXG5pbXBvcnQge2Rpc3BhdGNoQ2hhcHRlckV2ZW50c30gZnJvbSAnLi90aW1lbGluZSdcbmltcG9ydCBWaWRlbyBmcm9tICcuLi9WaWRlbydcbmltcG9ydCB7Z2V0TGFuZ3VhZ2VPcHRpb25zLCBnZXRRdWFsaXR5T3B0aW9ucywgZ2V0U2V0dGluZ3NEYXRhfSBmcm9tICcuL3NldHRpbmdzJ1xuaW1wb3J0IHtsaW5rTWVkaWFWb2x1bWUsIHN5bmNWb2x1bWV9IGZyb20gJy4vdm9sdW1lJ1xuaW1wb3J0IFNlZWtQcmV2aWV3IGZyb20gJy4vU2Vla1ByZXZpZXcnXG5cbmNvbnN0IHNpemVzID0ge1xuICAnc21hbGwtZW1iZWQnOiAyMDAsXG4gIGVtYmVkOiA0MDAsXG4gICd0YWJsZXQtcG9ydHJhaXQnOiA2MDAsXG4gICd0YWJsZXQtbGFuZHNjYXBlJzogOTAwLFxuICBkZXNrdG9wOiAxMjAwLFxufVxuXG5jb25zdCB1c2VMaW5rU3RhdGUgPSAocmVxdWVzdCwgZGVwZW5kZW5jaWVzID0gW10pID0+IHtcbiAgY29uc3QgW3N0YXRlLCBzZXRTdGF0ZV0gPSB1c2VTdGF0ZSgpXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVxdWVzdChzZXRTdGF0ZSlcbiAgfSwgZGVwZW5kZW5jaWVzKVxuICByZXR1cm4gc3RhdGVcbn1cblxuY29uc3QgZmxpcFN0YXRlID0gc3RhdGUgPT4gKHN0YXRlID09PSAncGxheWluZycgPyAncGF1c2VkJyA6ICdwbGF5aW5nJylcblxuLy8gRklYTUU6IHRvbyBmZXcgbGluZXMgdG8gc3BsaXQgYSBmaWxlLCBsb29raW5nIGEgYmV0dGVyIHBsYWNlXG5jb25zdCBnZXRUaHVtYm5haWxzVXJsID0gc291cmNlID0+XG4gIFtdLmNvbmNhdChzb3VyY2UpLmZpbmQoaXRlbSA9PiBpdGVtLnR5cGUgPT09ICd0aHVtYm5haWwnKT8uc3JjXG5cbmNvbnN0IGRlZmF1bHRTZXR0aW5ncyA9IHt9XG5cbmNvbnN0IHNob3VsZFBhdXNlID0gKHt1c2VyRm9jdXMsIHVpVHlwZX0pID0+XG4gICh1aVR5cGUgPT09ICdtb2JpbGUnICYmIC9zZXR0aW5nc3xjaGFwdGVyLWxpc3QvLnRlc3QodXNlckZvY3VzKSkgfHxcbiAgL2Jsb2NraW5nfHNlZWtiYXJ8c2hhcmUtaW5uZXIvLnRlc3QodXNlckZvY3VzKVxuXG4vLyBUT0RPIGV4dHJhY3QgdG8gc29tZXdoZXJlIGVsc2VcbmNvbnN0IG1lbnVDbGFzc2VzID0ge1xuICBkZWZhdWx0OiBjc3MoTGFuZ3VhZ2VNZW51LnN0eWxlcyksXG4gIGRlc2t0b3A6IGNzcyhMYW5ndWFnZU1lbnUuc3R5bGVzLCBMYW5ndWFnZU1lbnUuZGVza3RvcFN0eWxlcyksXG59XG5cbmNvbnN0IExhbmd1YWdlU2V0dGluZ3MgPSAoe1xuICB1aVR5cGUsXG4gIGF1ZGlvVHJhY2tzID0gW10sXG4gIHRleHRUcmFja3MgPSBbXSxcbiAgZ2V0UGxheWVyLFxuICBvbkNoYW5nZSxcbiAgc2xvdHMgPSB7TGFuZ3VhZ2VNZW51fSxcbiAgLi4ucmVzdFxufSkgPT4ge1xuICBjb25zdCBvcHRpb25zID0gZ2V0TGFuZ3VhZ2VPcHRpb25zKGdldFBsYXllcigpLCB7YXVkaW9UcmFja3MsIHRleHRUcmFja3N9KVxuICByZXR1cm4gKFxuICAgIGF1ZGlvVHJhY2tzLmxlbmd0aCA+IDAgJiZcbiAgICB0ZXh0VHJhY2tzLmxlbmd0aCA+IDAgJiYgKFxuICAgIDxPdmVybGF5UGFuZWwgdGl0bGU9XCLlrZfluZXjg7vpn7Plo7DjgpLliIfjgormm7/jgYjjgotcIiBidXR0b25JY29uPVwic3VidGl0bGVcIj5cbiAgICAgIDxzbG90cy5MYW5ndWFnZU1lbnVcbiAgICAgICAgdWlUeXBlPXt1aVR5cGV9XG4gICAgICAgIGNsYXNzZXM9e21lbnVDbGFzc2VzfVxuICAgICAgICBzZWN0aW9uT3B0aW9ucz17W29wdGlvbnMuYXVkaW9UcmFja3MsIG9wdGlvbnMudGV4dFRyYWNrc119XG4gICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgey4uLnJlc3R9XG4gICAgICAvPlxuICAgIDwvT3ZlcmxheVBhbmVsPlxuICAgIClcbiAgKVxufVxuXG5jb25zdCBQcmVtaXVtUGxheWVyID0gKHtcbiAgc291cmNlLFxuICBzdGFydFRpbWUsXG4gIHF1YWxpdHkgPSB7fSxcbiAgdGl0bGUsXG4gIG1ldGFkYXRhLFxuICBjaGFubmVsVGl0bGUsXG4gIGNoYXB0ZXJzLFxuICBwbGF5YmFja1N0YXRlOiBhcHBQbGF5YmFja1N0YXRlLFxuICBjdXJyZW50VGltZTogYXBwQ3VycmVudFRpbWUsXG4gIHBsYXliYWNrUmF0ZTogYXBwUGxheWJhY2tSYXRlLFxuICBsb29wLFxuICB2b2x1bWU6IGFwcFZvbHVtZSxcbiAgYXVkaW9UcmFjazogYXBwQXVkaW9UcmFjayxcbiAgdGV4dFRyYWNrOiBhcHBUZXh0VHJhY2ssXG4gIHRodW1ibmFpbHNVcmwsXG4gIGNvbnRyb2xzID0ge2F1dG9oaWRlOiAzMDAwfSxcbiAgbWFya3MgPSBbXSxcbiAgLy8gVE9ETyBzZWN0aW9uSWRcbiAgaW50bCxcbiAgc2V0dGluZ3M6IGFwcFNldHRpbmdzID0gZGVmYXVsdFNldHRpbmdzLFxuICBibG9ja2luZyxcbiAgcGx1Z2lucyA9IFtdLFxuICBtb2R1bGVzQ29uZmlnLFxuXG4gIHVpVHlwZSA9IGlzRGVza3RvcCgpID8gJ2Rlc2t0b3AnIDogJ21vYmlsZScsXG4gIHN0eWxlLFxuICBjaGlsZHJlbixcbiAgdWlNb2RlID0gJ3N0YW5kYWxvbmUnLFxuICBjYXN0OiBjYXN0T3B0aW9ucyA9ICdjb21wYXRpYmxlJyxcbiAgc2xvdHMsXG4gIHNsb3RQcm9wcyA9IHt9LFxuICBvbkVycm9yLFxuICBvblBsYXliYWNrU3RhdGVDaGFuZ2UsXG4gIG9uQmFjayxcbiAgb25DYXN0LFxuICBvbkNoYW5nZU5leHQsXG4gIG9uQ2hhbmdlUHJldmlvdXMsXG4gIG9uT3BlblNldHRpbmdzLFxuICBvbkNoYW5nZVNldHRpbmdzLFxuICBvblBsYXllckxvYWRlZCxcbiAgb25CbG9ja2VkQXV0b3BsYXksXG4gIG9uUGxheWxvZ0ZpcmVkLFxuICAuLi52aWRlb1Byb3BzXG59KSA9PiB7XG4gIGNvbnN0IGNvbXBvbmVudHMgPSB7XG4gICAgVm9sdW1lQ29udHJvbCxcbiAgICBDYXN0VWksXG4gICAgRGlzcGxheVRpbWUsXG4gICAgTGl2ZUJ1dHRvbixcbiAgICBTZWVrYmFyLFxuICAgIFNldHRpbmdzLFxuICAgIC4uLnNsb3RzLFxuICB9XG4gIGNvbnN0IHZpZGVvUmVmID0gdXNlUmVmKClcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKClcbiAgY29uc3QgcGxheWVyUmVmID0gdXNlUmVmKClcbiAgY29uc3QgYWRDb250YWluZXJSZWYgPSB1c2VSZWYoKVxuICBjb25zdCByZWZzID0gdXNlUmVmKHt9KVxuICAvLyBUT0RPIG1vdmUgUldEIHJlbGF0ZWQgdG8gTGF5b3V0XG4gIGNvbnN0IHtcbiAgICBjdXJyZW50QnJlYWtwb2ludDogc2l6ZSxcbiAgICB3aWR0aCxcbiAgICBvYnNlcnZlLFxuICB9ID0gdXNlRGltZW5zaW9ucyh7XG4gICAgcG9seWZpbGw6IFJlc2l6ZU9ic2VydmVyLFxuICAgIGJyZWFrcG9pbnRzOiBzaXplcyxcbiAgfSlcbiAgY29uc3QgW2lzVXNlckFjdGl2ZSwgc2V0SXNVc2VyQWN0aXZlXSA9IHVzZVN0YXRlKFxuICAgIHVpTW9kZSA9PT0gJ3N0YW5kYWxvbmUnID8gdHJ1ZSA6IHZpZGVvUHJvcHMuYXV0b3BsYXlcbiAgKVxuICBjb25zdCBbdXNlckZvY3VzLCBzZXRVc2VyRm9jdXNdID0gdXNlU3RhdGUoJycpXG4gIGNvbnN0IFt0YXJnZXRTdGF0ZSwgc2V0VGFyZ2V0U3RhdGVdID0gdXNlU3RhdGUoKCkgPT4gKHtcbiAgICBwbGF5YmFja1N0YXRlOlxuICAgICAgYXBwUGxheWJhY2tTdGF0ZSB8fCAodmlkZW9Qcm9wcy5hdXRvcGxheSA/ICdwbGF5aW5nJyA6ICdwYXVzZWQnKSxcbiAgICBjdXJyZW50VGltZTogc3RhcnRUaW1lLFxuICB9KSlcbiAgY29uc3QgW3BsYXliYWNrVGltZSwgc2V0UGxheWJhY2tUaW1lXSA9IHVzZVN0YXRlKHtcbiAgICBjdXJyZW50VGltZTogMCxcbiAgICBidWZmZXJUaW1lOiAwLFxuICB9KVxuICBjb25zdCB0b2dnbGVQbGF5ID0gKG92ZXJyaWRlU3RhdGUsIHt0cmlnZ2VyZWRCeX0gPSB7fSkgPT4ge1xuICAgIGlmICh0YXJnZXRTdGF0ZS5wbGF5YmFja1N0YXRlICE9PSBvdmVycmlkZVN0YXRlKSB7XG4gICAgICBzZXRUYXJnZXRTdGF0ZShzdGF0ZSA9PiAoe1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgcGxheWJhY2tTdGF0ZTogb3ZlcnJpZGVTdGF0ZSB8fCBmbGlwU3RhdGUoc3RhdGUucGxheWJhY2tTdGF0ZSksXG4gICAgICAgIGFuaW1hdGlvbjpcbiAgICAgICAgICB0cmlnZ2VyZWRCeSA9PT0gJ3VzZXItYWN0aW9uJyAmJiBmbGlwU3RhdGUoc3RhdGUucGxheWJhY2tTdGF0ZSksXG4gICAgICB9KSlcbiAgICB9XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChhcHBQbGF5YmFja1N0YXRlKSB7XG4gICAgICB0b2dnbGVQbGF5KGFwcFBsYXliYWNrU3RhdGUpXG4gICAgfVxuICB9LCBbYXBwUGxheWJhY2tTdGF0ZV0pXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHVpVHlwZSA9PT0gJ21vYmlsZScpIHtcbiAgICAgIG9uKGRvY3VtZW50LCAndmlzaWJpbGl0eWNoYW5nZScsICgpID0+IHRvZ2dsZVBsYXkoJ3BhdXNlZCcpKVxuICAgIH1cbiAgfSwgW3VpVHlwZSwgdGFyZ2V0U3RhdGUucGxheWJhY2tTdGF0ZV0pXG4gIGNvbnN0IHVwZGF0ZVBsYXliYWNrVGltZSA9IGV2ZW50ID0+XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKFxuICAgICAgKCkgPT5cbiAgICAgICAgKGV2ZW50Py50eXBlICE9PSAndGltZXVwZGF0ZScgfHwgaXNCdWZmZXJlZCh2aWRlb1JlZi5jdXJyZW50KSkgJiZcbiAgICAgICAgc2V0UGxheWJhY2tUaW1lKHN0YXRlID0+ICh7XG4gICAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgICAgLi4uZ2V0TWVkaWFUaW1lKHZpZGVvUmVmLmN1cnJlbnQsIHtcbiAgICAgICAgICAgIHBsYXllcjogcGxheWVyUmVmLmN1cnJlbnQsXG4gICAgICAgICAgICBwbHVnaW5zLFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIC4uLihldmVudD8udHlwZSA9PT0gJ2R1cmF0aW9uY2hhbmdlJyAmJiB7XG4gICAgICAgICAgICBjdXJyZW50VGltZTogc3RhdGUuY3VycmVudFRpbWUsXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pKVxuICAgIClcbiAgY29uc3Qgc2V0VGFyZ2V0VGltZSA9IHRpbWUgPT4ge1xuICAgIGNvbnN0IHRyaW1tZWQgPSBNYXRoLm1pbihcbiAgICAgIHRpbWUsXG4gICAgICB2aWRlb1JlZi5jdXJyZW50Py5pbml0aWFsRHVyYXRpb24gfHwgSW5maW5pdHlcbiAgICApXG4gICAgc2V0VGFyZ2V0U3RhdGUoc3RhdGUgPT4gKHtcbiAgICAgIC4uLnN0YXRlLFxuICAgICAgLy8gc2VlayB0byAwIHJlcGVhdGVkbHkgZWRnZSBjYXNlXG4gICAgICBjdXJyZW50VGltZTogc3RhdGUuY3VycmVudFRpbWUgIT09IHRyaW1tZWQgPyB0cmltbWVkIDogdHJpbW1lZCArIDAuMDEsXG4gICAgfSkpXG4gICAgdXBkYXRlUGxheWJhY2tUaW1lKClcbiAgfVxuICBjb25zdCBbcGxheWJhY2tTdGF0ZSwgc2V0UGxheWJhY2tTdGF0ZV0gPSB1c2VTdGF0ZSgnaW5pdCcpXG4gIGNvbnN0IFtjYXN0U3RhdGUsIHNldENhc3RTdGF0ZV0gPSB1c2VTdGF0ZSgnJylcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodHlwZW9mIGFwcEN1cnJlbnRUaW1lID09PSAnbnVtYmVyJykgc2V0VGFyZ2V0VGltZShhcHBDdXJyZW50VGltZSB8fCAwKVxuICAgIGlmICh0eXBlb2YgYXBwQ3VycmVudFRpbWUgPT09ICdvYmplY3QnKVxuICAgICAgc2V0VGFyZ2V0VGltZShhcHBDdXJyZW50VGltZT8udmFsdWUgfHwgMClcbiAgfSwgW2FwcEN1cnJlbnRUaW1lXSlcbiAgY29uc3QgW2Vycm9yRGF0YSwgc2V0RXJyb3JEYXRhXSA9IHVzZVN0YXRlKClcbiAgY29uc3QgZXJyb3JIYW5kbGVyID0gcmVhY3RFdmVudCA9PiB7XG4gICAgb25FcnJvcj8uKHJlYWN0RXZlbnQubmF0aXZlRXZlbnQpXG4gICAgaGFuZGxlRXJyb3IocmVhY3RFdmVudCwge1xuICAgICAgbWVkaWE6IHZpZGVvUmVmLmN1cnJlbnQsXG4gICAgICBkaXNwbGF5RXJyb3I6IGRhdGEgPT4ge1xuICAgICAgICBzZXRQbGF5YmFja1N0YXRlKCdlcnJvcicpXG4gICAgICAgIHNldEVycm9yRGF0YShjdXJyZW50ID0+IChjdXJyZW50Py5jb2RlID8gY3VycmVudCA6IGRhdGEpKVxuICAgICAgfSxcbiAgICB9KVxuICB9XG4gIGNvbnN0IGlzTGl2ZSA9IHBsYXliYWNrVGltZS5zdHJlYW1UeXBlID09PSAnbGl2ZSdcbiAgY29uc3QgW3NldHRpbmdzLCBzZXRTZXR0aW5nc10gPSB1c2VTdGF0ZSgoKSA9PiAoe1xuICAgIHNlY3Rpb25zOiBbXSxcbiAgICB2YWx1ZXM6IHtzcGVlZDogMX0sXG4gIH0pKVxuICBjb25zdCBmZXRjaFNldHRpbmdzID0gKCkgPT4ge1xuICAgIGlmICghcGxheWVyUmVmLmN1cnJlbnQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCBzcGVlZEl0ZW1zID0gYXBwU2V0dGluZ3Muc3BlZWRJdGVtcyB8fCAoaXNMaXZlID8gW10gOiB1bmRlZmluZWQpXG4gICAgc2V0U2V0dGluZ3MoY3VycmVudCA9PiB7XG4gICAgICBjb25zdCB7dmFsdWVzLCBzZWN0aW9uc30gPSBnZXRTZXR0aW5nc0RhdGEoe1xuICAgICAgICBtZWRpYTogdmlkZW9SZWYuY3VycmVudCxcbiAgICAgICAgcGxheWVyOiBwbGF5ZXJSZWYuY3VycmVudCxcbiAgICAgICAgc291cmNlLFxuICAgICAgICBxdWFsaXR5LFxuICAgICAgICBzcGVlZEl0ZW1zLFxuICAgICAgICBsb29wLFxuICAgICAgICBwcmVmZXJyZWQ6IGN1cnJlbnQucHJlZmVycmVkLFxuICAgICAgICBvdGhlclNlY3Rpb25zOiBhcHBTZXR0aW5ncy5zZWN0aW9ucyxcbiAgICAgIH0pXG4gICAgICByZXR1cm4ge3ByZWZlcnJlZDogY3VycmVudC5wcmVmZXJyZWQsIHZhbHVlcywgc2VjdGlvbnN9XG4gICAgfSlcbiAgfVxuICBjb25zdCBsYXN0U3RhdGUgPSB1c2VSZWYocGxheWJhY2tTdGF0ZSlcbiAgY29uc3QgaGFuZGxlUGxheWJhY2tTdGF0ZUNoYW5nZSA9IChldmVudCwgc3RhdGUpID0+IHtcbiAgICBpZiAobGFzdFN0YXRlLmN1cnJlbnQgPT09ICdlcnJvcicpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBvblBsYXliYWNrU3RhdGVDaGFuZ2U/LihldmVudCwgc3RhdGUpXG4gICAgLy8gcHJldmlvdXNseSBVSSBwbGF5YmFjayBzdGF0ZSB3YXMgc3luY2VkIG9ubHkgd2hlblxuICAgIC8vIGV4aXRpbmcgaU9TIHZpZGVvIG9ubHkgZnVsbHNjcmVlbih3ZWJraXRlbmRmdWxsc2NyZWVuKVxuICAgIGlmIChcbiAgICAgIC9wbGF5aW5nfHBhdXNlZC8udGVzdChzdGF0ZSkgJiZcbiAgICAgICEodWlUeXBlID09PSAnbW9iaWxlJyAmJiBibG9ja2luZykgJiZcbiAgICAgICFzaG91bGRQYXVzZSh7dXNlckZvY3VzLCB1aVR5cGV9KVxuICAgICkge1xuICAgICAgdG9nZ2xlUGxheShzdGF0ZSlcbiAgICB9XG4gICAgaWYgKHN0YXRlID09PSAnZW5kZWQnKSB7XG4gICAgICB0b2dnbGVQbGF5KCdwYXVzZWQnKVxuICAgIH1cbiAgICBpZiAoc3RhdGUgPT09ICdsb2FkaW5nJyAmJiBsYXN0U3RhdGUuY3VycmVudCAhPT0gJ2luaXQnKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRvZ2dsZVBsYXkoJ3BsYXlpbmcnKSwgMSlcbiAgICB9XG4gICAgaWYgKHN0YXRlID09PSAncGxheWluZycpIHtcbiAgICAgIHNldElzVXNlckFjdGl2ZSh0cnVlKVxuICAgIH1cbiAgICBpZiAobGFzdFN0YXRlLmN1cnJlbnQgPT09ICdsb2FkaW5nJykge1xuICAgICAgZmV0Y2hTZXR0aW5ncygpXG4gICAgfVxuICAgIGxhc3RTdGF0ZS5jdXJyZW50ID0gc3RhdGVcbiAgICBzZXRQbGF5YmFja1N0YXRlKHN0YXRlKVxuICB9XG5cbiAgY29uc3QgY2hhbmdlU2V0dGluZ3MgPSAobmFtZSwgdmFsdWUsIHtrZWVwT3Blbn0gPSB7fSkgPT4ge1xuICAgIC8vIFRPRE8gY29uc2lkZXIgbWVyZ2UgaW50byB1c2VSZWR1Y2VyP1xuICAgIG9uQ2hhbmdlU2V0dGluZ3M/Lih7bmFtZSwgdmFsdWV9KVxuICAgIHNldFRhcmdldFRpbWUocGxheWJhY2tUaW1lLmN1cnJlbnRUaW1lKVxuICAgIHNldFNldHRpbmdzKGN1cnJlbnQgPT4gKHtcbiAgICAgIC4uLmN1cnJlbnQsXG4gICAgICB2YWx1ZXM6IHsuLi5jdXJyZW50LnZhbHVlcywgW25hbWVdOiB2YWx1ZX0sXG4gICAgICBwcmVmZXJyZWQ6IHsuLi5jdXJyZW50LnByZWZlcnJlZCwgW25hbWVdOiB2YWx1ZX0sXG4gICAgfSkpXG4gICAgaWYgKCFrZWVwT3Blbikge1xuICAgICAgc2V0VXNlckZvY3VzKCcnKVxuICAgIH1cbiAgfVxuICBjb25zdCBvcGVuU2V0dGluZ3MgPSBldmVudCA9PiB7XG4gICAgY29uc3QgYW5pbWF0aW9uRnJhbWUgPVxuICAgICAgdXNlckZvY3VzICE9PSAnc2V0dGluZ3MnICYmXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBvbk9wZW5TZXR0aW5ncz8uKGV2ZW50LCBzZXR0aW5ncylcbiAgICAgICAgLy8gSW4gaU9TIFNhZmFyaSwgd2UgbmVlZCB0byB1cGRhdGUgc2V0dGluZ3MgZGF0YVxuICAgICAgICBmZXRjaFNldHRpbmdzKClcbiAgICAgIH0pXG4gICAgc2V0VXNlckZvY3VzKGN1cnJlbnQgPT4gKGN1cnJlbnQgPT09ICdzZXR0aW5ncycgPyAnJyA6ICdzZXR0aW5ncycpKVxuICAgIHJldHVybiBhbmltYXRpb25GcmFtZVxuICB9XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGFwcFBsYXliYWNrUmF0ZSA+IDApIHtcbiAgICAgIHNldFNldHRpbmdzKGN1cnJlbnQgPT4gKHtcbiAgICAgICAgLi4uY3VycmVudCxcbiAgICAgICAgdmFsdWVzOiB7Li4uY3VycmVudC52YWx1ZXMsIHNwZWVkOiBhcHBQbGF5YmFja1JhdGV9LFxuICAgICAgfSkpXG4gICAgfVxuICB9LCBbYXBwUGxheWJhY2tSYXRlXSlcblxuICBjb25zdCBxdWFsaXR5T3B0aW9ucyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gZ2V0UXVhbGl0eU9wdGlvbnMoc2V0dGluZ3MpLFxuICAgIFtzZXR0aW5ncy52YWx1ZXMucXVhbGl0eV1cbiAgKVxuICBjb25zdCB2aWV3TW9kZSA9IHVzZUxpbmtTdGF0ZSh1cGRhdGUgPT5cbiAgICBvblZpZXdNb2RlQ2hhbmdlKHZpZGVvUmVmLmN1cnJlbnQsIHVwZGF0ZSlcbiAgKVxuICBjb25zdCBzb3VyY2VPdmVycmlkZSA9IHVzZUxpbmtTdGF0ZShcbiAgICBhc3luYyB1cGRhdGUgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID1cbiAgICAgICAgc291cmNlICYmIChhd2FpdCBxdWFsaXR5LnJld3JpdGVNYW5pZmVzdD8uKHNvdXJjZSwgcXVhbGl0eU9wdGlvbnMpKVxuICAgICAgdXBkYXRlKHJlc3VsdCB8fCBzb3VyY2UpXG4gICAgfSxcbiAgICBbc291cmNlLCBxdWFsaXR5T3B0aW9uc11cbiAgKVxuICBjb25zdCB3YWl0aW5nID0gL2VtcHRpZWR8bG9hZGluZ3xidWZmZXJpbmcvLnRlc3QocGxheWJhY2tTdGF0ZSlcbiAgY29uc3QgYWN0aXZlUGxheWJhY2sgPVxuICAgIHBsYXliYWNrU3RhdGUgPT09ICdwbGF5aW5nJyB8fCBwbGF5YmFja1N0YXRlID09PSAnd2FpdGluZydcbiAgY29uc3Qge1xuICAgIG1vZGU6IGF1dG9IaWRlTW9kZSxcbiAgICBvbkNsaWNrLFxuICAgIG9uTW91c2VNb3ZlLFxuICB9ID0gdXNlQXV0b0hpZGUoe1xuICAgIHBpbm5lZDogIWNvbnRyb2xzLmF1dG9oaWRlIHx8IHdhaXRpbmcgfHwgIWFjdGl2ZVBsYXliYWNrIHx8IHVzZXJGb2N1cyxcbiAgICB0YXBUb0hpZGU6IHVpVHlwZSA9PT0gJ21vYmlsZScsXG4gICAgaGlkZVRpbWVNczogY29udHJvbHMuYXV0b2hpZGUsXG4gIH0pXG4gIGNvbnN0IG1vZGUgPVxuICAgIHVzZXJGb2N1cyA9PT0gJ3NlZWtiYXInXG4gICAgICA/ICdoaWRkZW4nXG4gICAgICA6IGNvbnRyb2xzLmF1dG9oaWRlXG4gICAgICA/IGF1dG9IaWRlTW9kZVxuICAgICAgOiBjb250cm9sc1xuICAgICAgPyAnc2hvd24nXG4gICAgICA6ICdoaWRkZW4nXG4gIGNvbnN0IGNvbnRyb2xzRGlzcGxheSA9XG4gICAgdXNlckZvY3VzID09PSAnc2Vla2JhcidcbiAgICAgID8gJ3NlZWtiYXItb25seSdcbiAgICAgIDogY29udHJvbHMgPT09ICd0aXRsZS1vbmx5JyB8fCBwbGF5YmFja1N0YXRlID09PSAnZW1wdGllZCdcbiAgICAgID8gJ2hpZGRlbidcbiAgICAgIDogbW9kZVxuICBjb25zdCBzaG91bGRIaWRlUGFuZWxzID1cbiAgICAoY29udHJvbHMgPT09ICduby1wYW5lbCcgfHwgY29udHJvbHNEaXNwbGF5ID09PSAnaGlkZGVuJykgJiYgdXNlckZvY3VzXG4gIGNvbnN0IGhhdmVQbGF5UGFuZWwgPVxuICAgICFibG9ja2luZyAmJlxuICAgIGhhdmVQb2ludGVyKCkgJiZcbiAgICB1aVR5cGUgPT09ICdkZXNrdG9wJyAmJlxuICAgICF3YWl0aW5nICYmXG4gICAgIS92b2x1bWV8JycvLnRlc3QodXNlckZvY3VzKSAmJlxuICAgICEvdGl0bGUtb25seXxuby1wYW5lbC8udGVzdChjb250cm9scykgJiZcbiAgICAoY29udHJvbHMuYXV0b2hpZGUgfHwgbW9kZSA9PT0gJ3Nob3duJylcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChzaG91bGRIaWRlUGFuZWxzKSB7XG4gICAgICBzZXRVc2VyRm9jdXMoJycpXG4gICAgfVxuICB9LCBbc2hvdWxkSGlkZVBhbmVsc10pXG4gIHVzZUVmZmVjdCgoKSA9PiBcbiAgICBvbihjb250YWluZXJSZWYuY3VycmVudCwgJ2ZvY3VzLW1lbnUnLCBldmVudCA9PiB7XG4gICAgICBpZiAoZXZlbnQuZGV0YWlsPy5zdGF0dXMgPT09ICdvcGVuJykge1xuICAgICAgICBzZXRVc2VyRm9jdXMoJ21lbnUnKVxuICAgICAgfVxuICAgICAgaWYgKGV2ZW50LmRldGFpbD8uc3RhdHVzID09PSAnY2xvc2VkJykge1xuICAgICAgICBzZXRVc2VyRm9jdXMoY3VycmVudCA9PiAoY3VycmVudCA9PT0gJ21lbnUnID8gJycgOiBjdXJyZW50KSlcbiAgICAgIH1cbiAgICB9KVxuICAsIFtdKVxuICBjb25zdCB7c3Vic2NyaWJlLCBvbkNoYW5nZSwgdG9nZ2xlTXV0ZX0gPSBsaW5rTWVkaWFWb2x1bWUoKCkgPT4gKHtcbiAgICB2aWRlbzogdmlkZW9SZWYuY3VycmVudCxcbiAgICBnZXRQbGF5ZXI6ICgpID0+IHBsYXllclJlZi5jdXJyZW50LFxuICB9KSlcbiAgY29uc3QgY2hhbmdlUHJldmlvdXMgPSBldmVudCA9PiB7XG4gICAgb25DaGFuZ2VQcmV2aW91cyhldmVudClcbiAgICB0b2dnbGVQbGF5KCdwYXVzZWQnKVxuICAgIHZpZGVvUmVmLmN1cnJlbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2xvYWRzdGFydCcpKVxuICB9XG4gIGNvbnN0IGNoYW5nZU5leHQgPSBldmVudCA9PiB7XG4gICAgb25DaGFuZ2VOZXh0KGV2ZW50KVxuICAgIHRvZ2dsZVBsYXkoJ3BhdXNlZCcpXG4gICAgdmlkZW9SZWYuY3VycmVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgnbG9hZHN0YXJ0JykpXG4gIH1cblxuICB1c2VFZmZlY3QoZmV0Y2hTZXR0aW5ncywgW2FwcFNldHRpbmdzXSlcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBUaGUgYWRDb250YWluZXIgc2hvdWxkIGJlIHNldCBiZWZvcmUgYGxvYWRgIGJlY2F1c2UgSW1hRGFpLmxvYWQgbmVlZHMgaXQuXG4gICAgcGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4uc2V0QWRDb250YWluZXI/LihhZENvbnRhaW5lclJlZi5jdXJyZW50KSlcbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KFxuICAgICgpID0+XG4gICAgICBkaXNwYXRjaENoYXB0ZXJFdmVudHMoe1xuICAgICAgICBtZWRpYTogdmlkZW9SZWYuY3VycmVudCxcbiAgICAgICAgY2hhcHRlcnMsXG4gICAgICAgIGdldFRpbWU6ICgpID0+IHZpZGVvUmVmLmN1cnJlbnQuY3VycmVudFRpbWUsXG4gICAgICB9KSxcbiAgICBbY2hhcHRlcnNdXG4gIClcblxuICBjb25zdCBpc0VuZCA9IHBsYXliYWNrU3RhdGUgPT09ICdlbmRlZCdcbiAgY29uc3QgY2FuU2VlayA9ICFpc0VuZCAmJiBwbGF5YmFja1RpbWUuZHVyYXRpb24gPiAwXG4gIGNvbnN0IGRlcml2ZWRQbGF5YmFja1N0YXRlID1cbiAgICAodWlUeXBlID09PSAnbW9iaWxlJyAmJiBibG9ja2luZykgfHwgc2hvdWxkUGF1c2Uoe3VzZXJGb2N1cywgdWlUeXBlfSlcbiAgICAgID8gJ3BhdXNlZCdcbiAgICAgIDogdGFyZ2V0U3RhdGUucGxheWJhY2tTdGF0ZVxuICBjb25zdCBhY3RpdmVUaHVtYm5haWxzVXJsID1cbiAgICAoIXVzZXJGb2N1cyB8fCB1c2VyRm9jdXMgPT09ICdzZWVrYmFyJykgJiZcbiAgICAoZ2V0VGh1bWJuYWlsc1VybChzb3VyY2UpIHx8IHRodW1ibmFpbHNVcmwpXG4gIGNvbnN0IGNzc1ZhcmlhYmxlcyA9IHtcbiAgICAnLS1wbGF5aW5nJzogcGxheWJhY2tTdGF0ZSA9PT0gJ3BsYXlpbmcnID8gJzEnIDogJzAnLFxuICB9XG4gIGNvbnN0IG9uUmV3aW5kID1cbiAgICAoIWlzTGl2ZSB8fCBwbGF5YmFja1RpbWUuY3VycmVudFRpbWUgPCAwKSAmJlxuICAgIGNhblNlZWsgJiZcbiAgICAoKCkgPT4gc2V0VGFyZ2V0VGltZShwbGF5YmFja1RpbWUuY3VycmVudFRpbWUgLSAxMCwgJ3Jld2luZCcpKVxuICBjb25zdCBvbkZvcndhcmQgPVxuICAgICghaXNMaXZlIHx8IHBsYXliYWNrVGltZS5jdXJyZW50VGltZSA8IDApICYmXG4gICAgY2FuU2VlayAmJlxuICAgICgoKSA9PiBzZXRUYXJnZXRUaW1lKHBsYXliYWNrVGltZS5jdXJyZW50VGltZSArIDEwLCAnZm9yd2FyZCcpKVxuICBjb25zdCBvbkNsaWNrQmxhbmsgPVxuICAgIGhhdmVQbGF5UGFuZWwgJiYgKCgpID0+IHRvZ2dsZVBsYXkoJycsIHt0cmlnZ2VyZWRCeTogJ3VzZXItYWN0aW9uJ30pKVxuXG4gIGNvbnN0IHVpSGFuZGxlcnMgPSB7XG4gICAgb25QbGF5OiAoKSA9PiB7XG4gICAgICB0b2dnbGVQbGF5KCcnLCB7dHJpZ2dlcmVkQnk6ICd1c2VyLWFjdGlvbid9KVxuICAgICAgc2V0SXNVc2VyQWN0aXZlKHRydWUpXG4gICAgfSxcbiAgICBvbkNsaWNrTGl2ZTogaXNMaXZlICYmICgoKSA9PiBzZXRUYXJnZXRUaW1lKDAsICdzZWVrVG9MaXZlJykpLFxuICAgIG9uQ2xpY2tTZWVrYmFyOiAoKSA9PiB7XG4gICAgICByZWZzLmN1cnJlbnQuZGVmZXJlZFNlZWtGb2N1cyA9IHNldFRpbWVvdXQoXG4gICAgICAgICgpID0+IHNldFVzZXJGb2N1cygnc2Vla2JhcicpLFxuICAgICAgICA2NlxuICAgICAgKVxuICAgIH0sXG4gICAgb25TZWVrOiB0aW1lID0+IHtcbiAgICAgIHNldFRhcmdldFRpbWUodGltZSwgJ3NlZWsnKVxuICAgICAgY2xlYXJUaW1lb3V0KHJlZnMuY3VycmVudC5kZWZlcmVkU2Vla0ZvY3VzKVxuICAgICAgc2V0VGltZW91dCgoKSA9PiBzZXRVc2VyRm9jdXMoJycpLCA2NilcbiAgICB9LFxuICAgIG9uQ2hhbmdlU2V0dGluZ3M6ICh7bmFtZSwgdmFsdWUsIGtlZXBPcGVufSkgPT5cbiAgICAgIGNoYW5nZVNldHRpbmdzKG5hbWUsIHZhbHVlLCB7a2VlcE9wZW59KSxcbiAgICBvbkNsb3NlU2V0dGluZ3M6IGV2ZW50ID0+IHtcbiAgICAgIHNldFVzZXJGb2N1cygnJylcbiAgICAgIHNsb3RQcm9wcz8uc2V0dGluZ3M/Lm9uQ2xvc2U/LihldmVudClcbiAgICB9LFxuICB9XG5cbiAgY29uc3QgdWlFbGVtZW50cyA9IHtcbiAgICBsaXZlQnV0dG9uOiB1aUhhbmRsZXJzLm9uQ2xpY2tMaXZlICYmIChcbiAgICAgIDxjb21wb25lbnRzLkxpdmVCdXR0b25cbiAgICAgICAgdXNpbmdTdGFydE92ZXI9e3BsYXliYWNrVGltZS5jdXJyZW50VGltZSA8IDB9XG4gICAgICAgIG9uQ2xpY2s9e3VpSGFuZGxlcnMub25DbGlja0xpdmV9XG4gICAgICAvPlxuICAgICksXG4gICAgY29udHJvbEJ1dHRvbnM6IHtcbiAgICAgIHBsYXlCdXR0b246IChcbiAgICAgICAgPFBsYXlCdXR0b25cbiAgICAgICAgICBwbGF5YmFja1N0YXRlPXtkZXJpdmVkUGxheWJhY2tTdGF0ZX1cbiAgICAgICAgICBlbmRlZD17aXNFbmR9XG4gICAgICAgICAgaGlkZGVuPXtcbiAgICAgICAgICAgIHVpVHlwZSA9PT0gJ21vYmlsZScgJiYgKHdhaXRpbmcgfHwgL2xvYWRpbmcvLnRlc3QocGxheWJhY2tTdGF0ZSkpXG4gICAgICAgICAgfVxuICAgICAgICAgIHZhcmlhbnQ9eyFpc1VzZXJBY3RpdmUgJiYgJ2ZpcnN0cGxheSd9XG4gICAgICAgICAgb25DbGljaz17dWlIYW5kbGVycy5vblBsYXl9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgICAgcmV3aW5kQnV0dG9uOiBvblJld2luZCAmJiAoXG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBzdGFydEljb249XCJyZXdpbmQxMFwiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLlJFV0lORFwiXG4gICAgICAgICAgZGlzYWJsZWQ9e2lzRW5kfVxuICAgICAgICAgIG9uQ2xpY2s9e29uUmV3aW5kfVxuICAgICAgICAvPlxuICAgICAgKSxcbiAgICAgIGZvcndhcmRCdXR0b246IG9uRm9yd2FyZCAmJiAoXG4gICAgICAgIDxGb3J3YXJkQnV0dG9uXG4gICAgICAgICAgc3RhcnRJY29uPVwiZm9yd2FyZDEwXCJcbiAgICAgICAgICB0aXRsZT1cIktLUy5QTEFZRVIuRk9SV0FSRFwiXG4gICAgICAgICAgZGlzYWJsZWQ9eyFjYW5TZWVrfVxuICAgICAgICAgIG9uQ2xpY2s9e29uRm9yd2FyZH1cbiAgICAgICAgLz5cbiAgICAgICksXG4gICAgICBuZXh0RXBpc29kZUJ1dHRvbjogKFxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgc3RhcnRJY29uPVwibmV4dFwiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLk5FWFRcIlxuICAgICAgICAgIGRpc2FibGVkPXshb25DaGFuZ2VOZXh0fVxuICAgICAgICAgIG9uQ2xpY2s9e2NoYW5nZU5leHR9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgICAgcHJldmlvdXNFcGlzb2RlQnV0dG9uOiAoXG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBzdGFydEljb249XCJwcmV2aW91c1wiXG4gICAgICAgICAgdGl0bGU9XCJLS1MuUExBWUVSLlBSRVZJT1VTXCJcbiAgICAgICAgICBkaXNhYmxlZD17IW9uQ2hhbmdlUHJldmlvdXN9XG4gICAgICAgICAgb25DbGljaz17Y2hhbmdlUHJldmlvdXN9XG4gICAgICAgIC8+XG4gICAgICApLFxuICAgIH0sXG4gICAgc2Vla2JhcjogKFxuICAgICAgPGNvbXBvbmVudHMuU2Vla2JhclxuICAgICAgICBzdHlsZT17L3ZvbHVtZS8udGVzdCh1c2VyRm9jdXMpICYmIHtvcGFjaXR5OiAnMCd9fVxuICAgICAgICBzdGFydFRpbWU9e3BsYXliYWNrVGltZS5zdGFydFRpbWV9XG4gICAgICAgIGN1cnJlbnRUaW1lPXtwbGF5YmFja1RpbWUuY3VycmVudFRpbWV9XG4gICAgICAgIGJ1ZmZlclRpbWU9e3BsYXliYWNrVGltZS5idWZmZXJUaW1lfVxuICAgICAgICBkdXJhdGlvbj17cGxheWJhY2tUaW1lLmR1cmF0aW9ufVxuICAgICAgICBjaGFwdGVycz17Y2hhcHRlcnN9XG4gICAgICAgIG9uQ2hhbmdlPXt1aUhhbmRsZXJzLm9uQ2xpY2tTZWVrYmFyfVxuICAgICAgICBvbkNoYW5nZUNvbW1pdHRlZD17dWlIYW5kbGVycy5vblNlZWt9XG4gICAgICAgIG1hcmtzPXttYXJrc31cbiAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgey4uLnNsb3RQcm9wcy5zZWVrYmFyfVxuICAgICAgPlxuICAgICAgICB7YWN0aXZlVGh1bWJuYWlsc1VybCAmJiAoXG4gICAgICAgICAgPFNlZWtQcmV2aWV3XG4gICAgICAgICAgICB0aHVtYm5haWxzVXJsPXthY3RpdmVUaHVtYm5haWxzVXJsfVxuICAgICAgICAgICAgZHVyYXRpb249e3BsYXliYWNrVGltZS5kdXJhdGlvbn1cbiAgICAgICAgICAgIGNoYXB0ZXJzPXtjaGFwdGVyc31cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9jb21wb25lbnRzLlNlZWtiYXI+XG4gICAgKSxcbiAgICBkaXNwbGF5VGltZTogPGNvbXBvbmVudHMuRGlzcGxheVRpbWUgey4uLnBsYXliYWNrVGltZX0gLz4sXG4gICAgZnVsbHNjcmVlbkJ1dHRvbjogKFxuICAgICAgPEZ1bGxzY3JlZW5CdXR0b25cbiAgICAgICAgdmlld01vZGU9e3ZpZXdNb2RlfVxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB0b2dnbGVGdWxsc2NyZWVuKGNvbnRhaW5lclJlZi5jdXJyZW50KX1cbiAgICAgIC8+XG4gICAgKSxcbiAgICB2b2x1bWVDb250cm9sOiB3aWR0aCA+PSBzaXplc1snc21hbGwtZW1iZWQnXSAmJiAoXG4gICAgICA8Y29tcG9uZW50cy5Wb2x1bWVDb250cm9sXG4gICAgICAgIHsuLi57c3Vic2NyaWJlLCBvbkNoYW5nZSwgdG9nZ2xlTXV0ZX19XG4gICAgICAgIG9uTW91c2VPdmVyPXsoKSA9PiBzZXRVc2VyRm9jdXMoJ3ZvbHVtZScpfVxuICAgICAgICBvbk1vdXNlT3V0PXsoKSA9PiBzZXRVc2VyRm9jdXMoJycpfVxuICAgICAgICB7Li4uc2xvdFByb3BzPy52b2x1bWVDb250cm9sfVxuICAgICAgLz5cbiAgICApLFxuICAgIGJhY2tJdGVtczogKFxuICAgICAgPFBsYXlQYW5lbCBhbmltYXRpb249e3RhcmdldFN0YXRlLmFuaW1hdGlvbn0gb25DbGljaz17b25DbGlja0JsYW5rfSAvPlxuICAgICksXG4gIH1cbiAgY29uc3QgY29tcGF0aWJpbGl0eUNhc3RQcm9wcyA9IGNhc3RPcHRpb25zID09PSAnY29tcGF0aWJsZScgJiYge1xuICAgIHNvdXJjZSxcbiAgICB2YWx1ZXM6IHt0aXRsZSwgLi4uc2V0dGluZ3MudmFsdWVzLCAuLi5pbnRsLCBtb2R1bGVzQ29uZmlnfSxcbiAgICBvbkxvYWQ6IG9uQ2FzdCxcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGNhc3RPcHRpb25zICYmIGNhc3RPcHRpb25zICE9PSAnY29tcGF0aWJsZScpIHtcbiAgICAgIHJldHVybiBsaW5rQ2FzdCh7c291cmNlLCAuLi5jYXN0T3B0aW9uc30pXG4gICAgfSAvLyBUT0RPIHBsYXlsaXN0LCBhdWRpbyAvIHN1YnRpdGxlIHNldHRpbmdcbiAgfSwgW3NvdXJjZSwgY2FzdE9wdGlvbnMuY29udGVudElkLCBjYXN0T3B0aW9ucy5jdXN0b21EYXRhXSlcbiAgY29uc3Qgc2VsZWN0ZWRBdWRpb1RyYWNrID0gc2V0dGluZ3MucHJlZmVycmVkPy5hdWRpbyB8fCBhcHBBdWRpb1RyYWNrXG4gIGNvbnN0IHNlbGVjdGVkVGV4dFRyYWNrID0gc2V0dGluZ3MucHJlZmVycmVkPy5zdWJ0aXRsZXMgfHwgYXBwVGV4dFRyYWNrXG5cbiAgcmV0dXJuIChcbiAgICA8SW50bFByb3ZpZGVyIHsuLi5pbnRsfT5cbiAgICAgIDxMYXlvdXRcbiAgICAgICAgc3R5bGU9e3suLi5zdHlsZSwgY3NzVmFyaWFibGVzfX1cbiAgICAgICAgdHlwZT17dWlUeXBlfVxuICAgICAgICBkaXNwbGF5PXttb2RlfVxuICAgICAgICBjb250cm9sc0Rpc3BsYXk9e2NvbnRyb2xzRGlzcGxheX1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgdmlkZW89e1xuICAgICAgICAgIDxWaWRlb1xuICAgICAgICAgICAgey4uLnZpZGVvUHJvcHN9XG4gICAgICAgICAgICB2aWRlb1JlZj17bXVsdGlSZWYodmlkZW9SZWYsIHZpZGVvUHJvcHMudmlkZW9SZWYpfVxuICAgICAgICAgICAgc291cmNlPXtcbiAgICAgICAgICAgICAgY2FzdFN0YXRlICE9PSBDYXN0U3RhdGUuQ09OTkVDVEVEICYmXG4gICAgICAgICAgICAgIHBsYXliYWNrU3RhdGUgIT09ICdlcnJvcicgJiZcbiAgICAgICAgICAgICAgc291cmNlT3ZlcnJpZGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBsYXliYWNrU3RhdGU9e2Rlcml2ZWRQbGF5YmFja1N0YXRlfVxuICAgICAgICAgICAgY3VycmVudFRpbWU9e3RhcmdldFN0YXRlLmN1cnJlbnRUaW1lfVxuICAgICAgICAgICAgey4uLihhcHBWb2x1bWUgPj0gMCAmJiB7dm9sdW1lOiBhcHBWb2x1bWUsIG11dGVkOiBhcHBWb2x1bWUgPD0gMH0pfVxuICAgICAgICAgICAgcGxheWJhY2tSYXRlPXtzZXR0aW5ncy52YWx1ZXMuc3BlZWR9XG4gICAgICAgICAgICB2aWRlb1Jlc29sdXRpb249e3F1YWxpdHlPcHRpb25zfVxuICAgICAgICAgICAgYXVkaW9UcmFjaz17c2VsZWN0ZWRBdWRpb1RyYWNrfVxuICAgICAgICAgICAgdGV4dFRyYWNrPXtzZWxlY3RlZFRleHRUcmFja31cbiAgICAgICAgICAgIGxvb3A9e3NldHRpbmdzLnZhbHVlcy5sb29wfVxuICAgICAgICAgICAgcGx1Z2lucz17cGx1Z2luc31cbiAgICAgICAgICAgIG1vZHVsZXNDb25maWc9e21vZHVsZXNDb25maWd9XG4gICAgICAgICAgICBvblBsYXlsb2dGaXJlZD17b25QbGF5bG9nRmlyZWR9XG4gICAgICAgICAgICBvbkVycm9yPXtlcnJvckhhbmRsZXJ9XG4gICAgICAgICAgICBvblBsYXliYWNrU3RhdGVDaGFuZ2U9e2hhbmRsZVBsYXliYWNrU3RhdGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkJsb2NrZWRBdXRvcGxheT17ZXJyb3IgPT4gb25CbG9ja2VkQXV0b3BsYXk/LihlcnJvcil9XG4gICAgICAgICAgICBvbkNhblBsYXk9e2V2ZW50ID0+IHtcbiAgICAgICAgICAgICAgdXBkYXRlUGxheWJhY2tUaW1lKGV2ZW50KVxuICAgICAgICAgICAgICB2aWRlb1Byb3BzLm9uQ2FuUGxheT8uKGV2ZW50KVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIG9uVGltZVVwZGF0ZT17dXBkYXRlUGxheWJhY2tUaW1lfVxuICAgICAgICAgICAgb25EdXJhdGlvbkNoYW5nZT17dXBkYXRlUGxheWJhY2tUaW1lfVxuICAgICAgICAgICAgb25QbGF5ZXJMb2FkZWQ9e3BsYXllciA9PiB7XG4gICAgICAgICAgICAgIHBsYXllclJlZi5jdXJyZW50ID0gcGxheWVyXG4gICAgICAgICAgICAgIG9uUGxheWVyTG9hZGVkPy4ocGxheWVyKVxuICAgICAgICAgICAgICBzeW5jVm9sdW1lKHZpZGVvUmVmLmN1cnJlbnQsIHZpZGVvUHJvcHMubXV0ZWQgPyAwIDogYXBwVm9sdW1lKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIGNvbnRhaW5lclJlZj17ZWxlbWVudCA9PiB7XG4gICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQgPSBlbGVtZW50XG4gICAgICAgICAgb2JzZXJ2ZShlbGVtZW50KVxuICAgICAgICB9fVxuICAgICAgICBiYWNrUmVmPXthZENvbnRhaW5lclJlZn1cbiAgICAgICAgdGl0bGU9e3RpdGxlfVxuICAgICAgICBjaGFubmVsVGl0bGU9e2NoYW5uZWxUaXRsZX1cbiAgICAgICAgYmFja0J1dHRvbj17b25CYWNrICYmIDxCdXR0b24gc3RhcnRJY29uPVwiYmFja1wiIG9uQ2xpY2s9e29uQmFja30gLz59XG4gICAgICAgIHsuLi4oaXNVc2VyQWN0aXZlICYmIHVpRWxlbWVudHMpfVxuICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICBvbk1vdXNlTW92ZT17b25Nb3VzZU1vdmV9XG4gICAgICA+XG4gICAgICAgIDxMb2FkaW5nU3Bpbm5lciBhY3RpdmU9e3dhaXRpbmd9IC8+XG4gICAgICAgIHtlcnJvckRhdGEgJiYgPEVycm9yIGVycm9yPXtlcnJvckRhdGF9IG9uQmFjaz17b25CYWNrfSAvPn1cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgICB7LyogVE9ETyBzeW5jIENhc3QgbGFzdCBwbGF5ZWQgdGltZSBiYWNrICovfVxuICAgICAgICB7aXNVc2VyQWN0aXZlICYmIChcbiAgICAgICAgICA8Y29tcG9uZW50cy5DYXN0VWlcbiAgICAgICAgICAgIG9uQmFjaz17b25CYWNrfVxuICAgICAgICAgICAgb25TdGF0ZUNoYW5nZT17c2V0Q2FzdFN0YXRlfVxuICAgICAgICAgICAgb25Mb2FkPXtvbkNhc3R9XG4gICAgICAgICAgICB7Li4uY29tcGF0aWJpbGl0eUNhc3RQcm9wc31cbiAgICAgICAgICAgIHsuLi5zbG90UHJvcHMuY2FzdFVpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIHtpc1VzZXJBY3RpdmUgJiYgKCAvLyBUT0RPOiBEZXNpZ24gPEV4dGVuc3Rpb24gLz4gZmxhZ1xuICAgICAgICAgIDxjb21wb25lbnRzLlNldHRpbmdzXG4gICAgICAgICAgICB0eXBlPXt1aVR5cGV9XG4gICAgICAgICAgICBzZWN0aW9ucz17c2V0dGluZ3Muc2VjdGlvbnN9XG4gICAgICAgICAgICAvLyBUT0RPIGhhc0JvdHRvbVBhbmVsIGJvdHRvbTogOGVtXG4gICAgICAgICAgICBvcGVuPXt1c2VyRm9jdXMgPT09ICdzZXR0aW5ncyd9XG4gICAgICAgICAgICB2YWx1ZXM9e3NldHRpbmdzLnZhbHVlc31cbiAgICAgICAgICAgIG9uT3Blbj17b3BlblNldHRpbmdzfVxuICAgICAgICAgICAgb25DaGFuZ2U9e3VpSGFuZGxlcnMub25DaGFuZ2VTZXR0aW5nc31cbiAgICAgICAgICAgIHsuLi5zbG90UHJvcHM/LnNldHRpbmdzfVxuICAgICAgICAgICAgb25DbG9zZT17dWlIYW5kbGVycy5vbkNsb3NlU2V0dGluZ3N9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgICAgPExhbmd1YWdlU2V0dGluZ3NcbiAgICAgICAgICB1aVR5cGU9e3VpVHlwZX1cbiAgICAgICAgICBnZXRQbGF5ZXI9eygpID0+IHBsYXllclJlZi5jdXJyZW50fVxuICAgICAgICAgIG9uQ2hhbmdlPXsoX2V2ZW50LCBpdGVtKSA9PiBjaGFuZ2VTZXR0aW5ncyhpdGVtLnR5cGUsIGl0ZW0udmFsdWUpfVxuICAgICAgICAgIHsuLi5zbG90UHJvcHMubGFuZ3VhZ2VTZXR0aW5nc31cbiAgICAgICAgLz5cbiAgICAgICAgPEJhY2tkcm9wIG9wZW49eyFwbGF5YmFja1N0YXRlIHx8IHBsYXliYWNrU3RhdGUgPT09ICdsb2FkaW5nJ30+XG4gICAgICAgICAgPExvYWRpbmdTcGlubmVyIC8+XG4gICAgICAgIDwvQmFja2Ryb3A+XG4gICAgICA8L0xheW91dD5cbiAgICA8L0ludGxQcm92aWRlcj5cbiAgKVxufVxuXG5leHBvcnQgZGVmYXVsdCBQcmVtaXVtUGxheWVyXG4iXX0= */")
17012
17786
  };
17013
17787
 
17014
17788
  const LanguageSettings = _ref2 => {
@@ -17029,6 +17803,7 @@ const LanguageSettings = _ref2 => {
17029
17803
  textTracks
17030
17804
  });
17031
17805
  return audioTracks.length > 0 && textTracks.length > 0 && /*#__PURE__*/jsxRuntime.exports.jsx(OverlayPanel, {
17806
+ title: "\u5B57\u5E55\u30FB\u97F3\u58F0\u3092\u5207\u308A\u66FF\u3048\u308B",
17032
17807
  buttonIcon: "subtitle",
17033
17808
  children: /*#__PURE__*/jsxRuntime.exports.jsx(slots.LanguageMenu, _objectSpread$2({
17034
17809
  uiType: uiType,
@@ -17328,6 +18103,17 @@ const PremiumPlayer = _ref3 => {
17328
18103
  setUserFocus('');
17329
18104
  }
17330
18105
  }, [shouldHidePanels]);
18106
+ react.exports.useEffect(() => on(containerRef.current, 'focus-menu', event => {
18107
+ var _event$detail, _event$detail2;
18108
+
18109
+ if (((_event$detail = event.detail) === null || _event$detail === void 0 ? void 0 : _event$detail.status) === 'open') {
18110
+ setUserFocus('menu');
18111
+ }
18112
+
18113
+ if (((_event$detail2 = event.detail) === null || _event$detail2 === void 0 ? void 0 : _event$detail2.status) === 'closed') {
18114
+ setUserFocus(current => current === 'menu' ? '' : current);
18115
+ }
18116
+ }), []);
17331
18117
  const {
17332
18118
  subscribe,
17333
18119
  onChange,
@@ -17713,7 +18499,7 @@ var uncurryThis = functionUncurryThis;
17713
18499
  var hasOwn = hasOwnProperty_1;
17714
18500
  var isCallable = isCallable$n;
17715
18501
  var isPrototypeOf = objectIsPrototypeOf;
17716
- var toString = toString$8;
18502
+ var toString = toString$9;
17717
18503
  var defineProperty = objectDefineProperty.f;
17718
18504
  var copyConstructorProperties = copyConstructorProperties$2;
17719
18505