@samitouri / QOSami-HFS / commits / f21275bc

fix: some errors for firefox52

Massimo Melina committed Oct 19, 2025 at 11:05 UTC f21275bcdd308241292e5ceb1caff0e35c886f2e
4 files changed +42 -426
frontend/index.html
+9 -6
@@ -11,12 +11,15 @@
11 <div id="root">Wait for loading or <a href="?get=basic">use basic interface now</a></div>
12 <script>
13 function isModernBrowser() { // support BigInt
14 - const ua = navigator.userAgent
15 - return /Chrome\/(\d+)/.exec(ua)?.[1] >= 67 ||
16 - /Edg\/(\d+)/.exec(ua)?.[1] >= 79 ||
17 - /Firefox\/(\d+)/.exec(ua)?.[1] >= 68 ||
18 - /OPR\/(\d+)/.exec(ua)?.[1] >= 54 ||
19 - /Version\/(\d+).+Safari/.exec(ua)?.[1] >= 14
14 + return getUAversion(/Chrome\/(\d+)/) >= 67 ||
15 + getUAversion(/Edg\/(\d+)/) >= 79 ||
16 + getUAversion(/Firefox\/(\d+)/) >= 68 ||
17 + getUAversion(/OPR\/(\d+)/) >= 54 ||
18 + getUAversion(/Version\/(\d+).+Safari/) >= 14
19 + }
20 + function getUAversion(re) {
21 + const res = re.exec(navigator.userAgent)
22 + return res && res[1] || NaN
23 }
24 if (isModernBrowser())
25 document.getElementById('root').innerHTML = 'Loading...'
frontend/src/index.scss
+3
@@ -404,6 +404,7 @@ ul.dir {
404 &:last-child { margin-right: 0 }
405 }
406 button {
407 + padding: 0.5em 0; // fallback
408 padding: min(1vh, 0.5em) 0; // avoid wasting too much vertical space, and no need for horizontal padding as we are using flex to grow
409 }
410 }
@@ -753,6 +754,7 @@ form label+input { margin-top: .2em; }
754 }
755 }
756 .showing {
757 + max-width: calc(100% - 4vw); // fallback
758 max-width: calc(100% - min(4vw, var(--nav-size)) * 2); // avoid overlapping of controls and nav buttons
759 max-height: 100%;
760 }
@@ -800,6 +802,7 @@ form label+input { margin-top: .2em; }
802 &.nav-hidden:not(:hover) { opacity: .3 }
803 }
804 .bar {
805 + padding: .5em; // fallback
806 padding: .5em min(2vw, 1em);
807 background: var(--bg);
808 opacity: .8;
shared/api.ts
+5 -5
@@ -34,11 +34,11 @@ export function setDefaultApiCallOptions(options: Partial<ApiCallOptions>) {
34 export function apiCall<T=any>(cmd: string, params?: Dict, options: ApiCallOptions={}) {
35 _.defaults(options, defaultApiCallOptions)
36 const stop = options.modal?.(cmd, params)
37 - const controller = new AbortController()
37 + const controller = window.AbortController ? new AbortController() : undefined
38 let aborted = ''
39 const ms = 1000 * (timeoutByApi[cmd] ?? options.timeout ?? 10)
40 const timeout = ms && setTimeout(() => {
41 - controller.abort(aborted = 'timeout')
41 + controller?.abort(aborted = 'timeout')
42 console.debug('API TIMEOUT', cmd, params??'')
43 }, ms)
44 const asRest = options.restUri
@@ -47,7 +47,7 @@ export function apiCall<T=any>(cmd: string, params?: Dict, options: ApiCallOptio
47 return Object.assign(fetch(`${location.origin}${asRest || (getPrefixUrl() + API_URL + cmd)}`, {
48 method: asRest ? cmd : (options.method || 'POST'),
49 headers: { 'content-type': 'application/json', 'x-hfs-anti-csrf': '1' },
50 - signal: controller.signal,
50 + signal: controller?.signal,
51 body: params && JSON.stringify(params),
52 }).then(async res => {
53 stop?.()
@@ -70,9 +70,9 @@ export function apiCall<T=any>(cmd: string, params?: Dict, options: ApiCallOptio
70 throw aborted || err
71 }).finally(() => clearTimeout(timeout)), {
72 abort() {
73 - controller.abort(aborted='cancel')
73 + controller?.abort(aborted='cancel')
74 },
75 - aborted: () => controller.signal.aborted
75 + aborted: () => controller?.signal.aborted
76 })
77 }
78
shared/polyfills.js
+25 -415
@@ -1,421 +1,31 @@
1 window.BigInt ||= Number; // avoid crash at boot for chrome66
2 +// wget -O poly.js 'https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?version=4.8.0&features=Object.fromEntries%2CArray.prototype.flat%2CPromise.prototype.finally%2CString.prototype.replaceAll%2CArray.prototype.findLast%2CArray.prototype.at'
3
4 /*
4 -curl -H 'user-agent: Mozilla/5.0 (Android 4.4; Mobile; rv:41.0) Gecko/41.0 Firefox/40.0' \
5 -'https://polyfill.io/v3/polyfill.min.js?features=Object.fromEntries%2CArray.prototype.flat%2CPromise.prototype.finally%2CString.prototype.replaceAll'
6 - */
7 -/*
8 - * Polyfill service v3.111.0
5 + * Polyfill service v4.8.0
6 * Disable minification (remove `.min` from URL path) for more info
7 */
11 -(function (self, undefined) {
12 - function ArrayCreate (r) {
13 - if (1 / r == -Infinity && (r = 0), r > Math.pow(2, 32) - 1) throw new RangeError('Invalid array length')
14 - var n = []
15 - return n.length = r, n
16 - }
17 -
18 - function Call (t, l) {
19 - var n = arguments.length > 2 ? arguments[2] : []
20 - if (!1 === IsCallable(t)) throw new TypeError(Object.prototype.toString.call(t) + 'is not a function.')
21 - return t.apply(l, n)
22 - }
23 -
24 - function CreateDataProperty (e, r, t) {
25 - var a = { value: t, writable: !0, enumerable: !0, configurable: !0 }
26 - try {return Object.defineProperty(e, r, a), !0} catch (n) {return !1}
27 - }
28 -
29 - function CreateDataPropertyOrThrow (t, r, o) {
30 - var e = CreateDataProperty(t, r, o)
31 - if (!e) throw new TypeError(
32 - 'Cannot assign value `' + Object.prototype.toString.call(o) + '` to property `' + Object.prototype.toString.call(r) + '` on object `' +
33 - Object.prototype.toString.call(t) + '`')
34 - return e
35 - }
36 -
37 - function CreateMethodProperty (e, r, t) {
38 - var a = { value: t, writable: !0, enumerable: !1, configurable: !0 }
39 - Object.defineProperty(e, r, a)
40 - }
41 -
42 - function Get (n, t) {return n[t]}
43 -
44 - function HasProperty (n, r) {return r in n}
45 -
46 - function IsArray (r) {return '[object Array]' === Object.prototype.toString.call(r)}
47 -
48 - function IsCallable (n) {return 'function' == typeof n}
49 -
50 - function RequireObjectCoercible (e) {
51 - if (null === e || e === undefined) throw TypeError(Object.prototype.toString.call(e) + ' is not coercible to Object.')
52 - return e
53 - }
54 -
55 - function ToBoolean (o) {return Boolean(o)}
56 -
57 - function ToObject (e) {
58 - if (null === e || e === undefined) throw TypeError()
59 - return Object(e)
60 - }
61 -
62 - function GetV (t, e) {return ToObject(t)[e]}
63 -
64 - function GetMethod (e, n) {
65 - var r = GetV(e, n)
66 - if (null === r || r === undefined) return undefined
67 - if (!1 === IsCallable(r)) throw new TypeError('Method not callable: ' + n)
68 - return r
69 - }
70 -
71 - function Type (e) {
72 - switch (typeof e) {
73 - case'undefined':
74 - return 'undefined'
75 - case'boolean':
76 - return 'boolean'
77 - case'number':
78 - return 'number'
79 - case'string':
80 - return 'string'
81 - case'symbol':
82 - return 'symbol'
83 - default:
84 - return null === e ? 'null' : 'Symbol' in self && (e instanceof self.Symbol || e.constructor === self.Symbol) ? 'symbol' : 'object'
85 - }
86 - }
87 -
88 - function GetIterator (t) {
89 - var e = arguments.length > 1 ? arguments[1] : GetMethod(t, Symbol.iterator), r = Call(e, t)
90 - if ('object' !== Type(r)) throw new TypeError('bad iterator')
91 - var o = GetV(r, 'next'), a = Object.create(null)
92 - return a['[[Iterator]]'] = r, a['[[NextMethod]]'] = o, a['[[Done]]'] = !1, a
93 - }
94 -
95 - function GetPrototypeFromConstructor (t, o) {
96 - var r = Get(t, 'prototype')
97 - return 'object' !== Type(r) && (r = o), r
98 - }
99 -
100 - function OrdinaryCreateFromConstructor (r, e) {
101 - var t = arguments[2] || {}, o = GetPrototypeFromConstructor(r, e), a = Object.create(o)
102 - for (var n in t) Object.prototype.hasOwnProperty.call(t, n) &&
103 - Object.defineProperty(a, n, { configurable: !0, enumerable: !1, writable: !0, value: t[n] })
104 - return a
105 - }
106 -
107 - var GetSubstitution = function () {
108 - function e (e) {return /^[0-9]$/.test(e)}
109 -
110 - return function t (n, r, l, i, a, f) {
111 - for (var s = n.length, h = r.length, c = l + s, u = i.length, v = '', g = 0; g < f.length; g += 1) {
112 - var o = f.charAt(g), $ = g + 1 >= f.length, d = g + 2 >= f.length
113 - if ('$' !== o || $) v += f.charAt(g)
114 - else {
115 - var p = f.charAt(g + 1)
116 - if ('$' === p) v += '$', g += 1
117 - else if ('&' === p) v += n, g += 1
118 - else if ('`' === p) v += 0 === l ? '' : r.slice(0,
119 - l - 1), g += 1
120 - else if ('\'' === p) v += c >= h ? '' : r.slice(c), g += 1
121 - else {
122 - var A = d ? null : f.charAt(g + 2)
123 - if (!e(p) || '0' === p || !d && e(A)) if (e(p) && (d || e(A))) {
124 - var y = p + A, I = parseInt(y, 10) - 1
125 - v += y <= u && 'Undefined' === Type(i[I]) ? '' : i[I], g += 2
126 - } else v += '$'
127 - else {
128 - var T = parseInt(p, 10)
129 - v += T <= u && 'Undefined' === Type(i[T - 1]) ? '' : i[T - 1], g += 1
130 - }
131 - }
132 - }
133 - }
134 - return v
135 - }
136 - }()
137 -
138 - function IsConstructor (t) {return 'object' === Type(t) && ('function' == typeof t && !!t.prototype)}
139 -
140 - function Construct (r) {
141 - var t = arguments.length > 2 ? arguments[2] : r, o = arguments.length > 1 ? arguments[1] : []
142 - if (!IsConstructor(r)) throw new TypeError('F must be a constructor.')
143 - if (!IsConstructor(t)) throw new TypeError('newTarget must be a constructor.')
144 - if (t === r) return new (Function.prototype.bind.apply(r, [null].concat(o)))
145 - var n = OrdinaryCreateFromConstructor(t, Object.prototype)
146 - return Call(r, n, o)
147 - }
148 -
149 - function ArraySpeciesCreate (e, r) {
150 - if (0 === r && 1 / r == -Infinity && (r = 0), !1 === IsArray(e)) return ArrayCreate(r)
151 - var n = Get(e, 'constructor')
152 - if ('object' === Type(n) && null === (n = 'Symbol' in self && 'species' in self.Symbol ? Get(n, self.Symbol.species) : undefined) &&
153 - (n = undefined), n === undefined) return ArrayCreate(r)
154 - if (!IsConstructor(n)) throw new TypeError('C must be a constructor')
155 - return Construct(n, [r])
156 - }
157 -
158 - function IsRegExp (e) {
159 - if ('object' !== Type(e)) return !1
160 - var n = 'Symbol' in self && 'match' in self.Symbol ? Get(e, self.Symbol.match) : undefined
161 - if (n !== undefined) return ToBoolean(n)
162 - try {
163 - var t = e.lastIndex
164 - return e.lastIndex = 0, RegExp.prototype.exec.call(e), !0
165 - } catch (l) {} finally {e.lastIndex = t}
166 - return !1
167 - }
168 -
169 - function IteratorClose (r, t) {
170 - if ('object' !== Type(r['[[Iterator]]'])) throw new Error(Object.prototype.toString.call(r['[[Iterator]]']) + 'is not an Object.')
171 - var e = r['[[Iterator]]'], o = GetMethod(e, 'return')
172 - if (o === undefined) return t
173 - try {var n = Call(o, e)} catch (c) {var a = c}
174 - if (t) return t
175 - if (a) throw a
176 - if ('object' !== Type(n)) throw new TypeError('Iterator\'s return method returned a non-object.')
177 - return t
178 - }
179 -
180 - function IteratorComplete (t) {
181 - if ('object' !== Type(t)) throw new Error(Object.prototype.toString.call(t) + 'is not an Object.')
182 - return ToBoolean(Get(t, 'done'))
183 - }
184 -
185 - function IteratorNext (t) {
186 - if (arguments.length < 2) var e = Call(t['[[NextMethod]]'], t['[[Iterator]]'])
187 - else e = Call(t['[[NextMethod]]'], t['[[Iterator]]'], [arguments[1]])
188 - if ('object' !== Type(e)) throw new TypeError('bad iterator')
189 - return e
190 - }
191 -
192 - function IteratorStep (t) {
193 - var r = IteratorNext(t)
194 - return !0 !== IteratorComplete(r) && r
195 - }
196 -
197 - function IteratorValue (t) {
198 - if ('object' !== Type(t)) throw new Error(Object.prototype.toString.call(t) + 'is not an Object.')
199 - return Get(t, 'value')
200 - }
201 -
202 - var AddEntriesFromIterable = function () {
203 - var r = {}.toString, t = ''.split
204 - return function e (a, o, n) {
205 - if (!1 === IsCallable(n)) throw new TypeError('adder is not callable.')
206 - for (var l = GetIterator(o); ;) {
207 - var c = IteratorStep(l)
208 - if (!1 === c) return a
209 - var i = IteratorValue(c)
210 - if ('object' !== Type(i)) {
211 - var s = new TypeError('nextItem is not an object')
212 - throw IteratorClose(l, s), s
213 - }
214 - i = ('string' === Type(i) || i instanceof String) && '[object String]' == r.call(i) ? t.call(i, '') : i
215 - var I
216 - try {I = Get(i, '0')} catch (I) {return IteratorClose(l, I)}
217 - var u
218 - try {u = Get(i, '1')} catch (u) {return IteratorClose(l, u)}
219 - try {Call(n, a, [I, u])} catch (v) {return IteratorClose(l, v)}
220 - }
221 - }
222 - }()
223 -
224 - function OrdinaryToPrimitive (r, t) {
225 - if ('string' === t) var e = ['toString', 'valueOf']
226 - else e = ['valueOf', 'toString']
227 - for (var i = 0; i < e.length; ++i) {
228 - var n = e[i], a = Get(r, n)
229 - if (IsCallable(a)) {
230 - var o = Call(a, r)
231 - if ('object' !== Type(o)) return o
232 - }
233 - }
234 - throw new TypeError('Cannot convert to primitive.')
235 - }
236 -
237 - function SpeciesConstructor (e, o) {
238 - var r = Get(e, 'constructor')
239 - if (r === undefined) return o
240 - if ('object' !== Type(r)) throw new TypeError('O.constructor is not an Object')
241 - var n = 'function' == typeof self.Symbol && 'symbol' == typeof self.Symbol.species ? r[self.Symbol.species] : undefined
242 - if (n === undefined || null === n) return o
243 - if (IsConstructor(n)) return n
244 - throw new TypeError('No constructor found')
245 - }
246 -
247 - !function () {
248 - var t = Function.prototype.bind.call(Function.prototype.call, Promise.prototype.then), o = function (t, o) {return new t(function (t) {t(o())})}
249 - CreateMethodProperty(Promise.prototype, 'finally', function (e) {
250 - var r = this
251 - if ('object' !== Type(r)) throw new TypeError(
252 - 'Method %PromisePrototype%.finally called on incompatible receiver ' + Object.prototype.toString.call(r))
253 - var n = SpeciesConstructor(r, Promise)
254 - if (!1 === IsCallable(e)) var i = e, c = e
255 - else i = function (r) {return t(o(n, e), function () {return r})}, c = function (r) {
256 - return t(o(n, e), function () {throw r})
257 - }
258 - return t(r, i, c)
259 - })
260 - }()
261 -
262 - function StringIndexOf (r, n, e) {
263 - var f = r.length
264 - if ('' === n && e <= f) return e
265 - for (var t = n.length, a = e, i = -1; a + t <= f;) {
266 - for (var g = !0, o = 0; o < t; o += 1) if (r[a + o] !== n[o]) {
267 - g = !1
268 - break
269 - }
270 - if (g) {
271 - i = a
272 - break
273 - }
274 - a += 1
275 - }
276 - return i
277 - }
278 -
279 - function ToInteger (n) {
280 - if ('symbol' === Type(n)) throw new TypeError('Cannot convert a Symbol value to a number')
281 - var t = Number(n)
282 - return isNaN(t) ? 0 : 1 / t === Infinity || 1 / t == -Infinity || t === Infinity || t === -Infinity ? t : (t < 0 ? -1 : 1) * Math.floor(Math.abs(t))
283 - }
284 -
285 - function ToLength (n) {
286 - var t = ToInteger(n)
287 - return t <= 0 ? 0 : Math.min(t, Math.pow(2, 53) - 1)
288 - }
289 -
290 - function ToPrimitive (e) {
291 - var t = arguments.length > 1 ? arguments[1] : undefined
292 - if ('object' === Type(e)) {
293 - if (arguments.length < 2) var i = 'default'
294 - else t === String ? i = 'string' : t === Number && (i = 'number')
295 - var r = 'function' == typeof self.Symbol && 'symbol' == typeof self.Symbol.toPrimitive ? GetMethod(e, self.Symbol.toPrimitive) : undefined
296 - if (r !== undefined) {
297 - var n = Call(r, e, [i])
298 - if ('object' !== Type(n)) return n
299 - throw new TypeError('Cannot convert exotic object to primitive.')
300 - }
301 - return 'default' === i && (i = 'number'), OrdinaryToPrimitive(e, i)
302 - }
303 - return e
304 - }
305 -
306 - function ToString (t) {
307 - switch (Type(t)) {
308 - case'symbol':
309 - throw new TypeError('Cannot convert a Symbol value to a string')
310 - case'object':
311 - return ToString(ToPrimitive(t, String))
312 - default:
313 - return String(t)
314 - }
315 - }
316 -
317 - CreateMethodProperty(String.prototype, 'replaceAll', function e (r, t) {
318 - 'use strict'
319 - var n = RequireObjectCoercible(this)
320 - if (r !== undefined && null !== r) {
321 - if (IsRegExp(r)) {
322 - var i = Get(r, 'flags')
323 - if (!('flags' in RegExp.prototype || !0 === r.global)) throw TypeError('')
324 - if ('flags' in RegExp.prototype && (RequireObjectCoercible(i), -1 === ToString(i).indexOf('g'))) throw TypeError('')
325 - }
326 - var l = 'Symbol' in self && 'replace' in self.Symbol ? GetMethod(r, self.Symbol.replace) : undefined
327 - if (l !== undefined) return Call(l, r, [n, t])
328 - }
329 - var o = ToString(n), a = ToString(r), f = IsCallable(t)
330 - !1 === f && (t = ToString(t))
331 - for (var g = a.length, s = Math.max(1, g), u = [], p = StringIndexOf(o, a, 0); -1 !== p;) u.push(p), p = StringIndexOf(o, a, p + s)
332 - for (var d = 0, b = '', S = 0; S < u.length; S++) {
333 - var h = o.substring(d, u[S])
334 - if (f) var c = ToString(Call(t, undefined, [a, u[S], o]))
335 - else {
336 - var v = []
337 - c = GetSubstitution(a, o, u[S], v, undefined, t)
338 - }
339 - b = b + h + c, d = u[S] + g
340 - }
341 - return d < o.length && (b += o.substring(d)), b
342 - })
343 -
344 - function FlattenIntoArray (r, t, e, a, n) {
345 - for (var o = arguments[5], i = arguments[6], l = a, g = 0; g < e;) {
346 - var h = ToString(g)
347 - if (!0 === HasProperty(t, h)) {
348 - var y = Get(t, h)
349 - 5 in arguments && (y = Call(o, i, [y, g, t]))
350 - var f = !1
351 - if (n > 0 && (f = IsArray(y)), !0 === f) {l = FlattenIntoArray(r, y, ToLength(Get(y, 'length')), l, n - 1)} else {
352 - if (l >= Math.pow(2, 53) - 1) throw new TypeError('targetIndex is greater than or equal to 2^53-1')
353 - CreateDataPropertyOrThrow(r, ToString(l), y), l += 1
354 - }
355 - }
356 - g += 1
357 - }
358 - return l
359 - }
360 -
361 - CreateMethodProperty(Array.prototype, 'flat', function t () {
362 - 'use strict'
363 - var t = arguments[0], e = ToObject(this), r = ToLength(Get(e, 'length')), o = 1
364 - void 0 !== t && (o = ToInteger(t))
365 - var a = ArraySpeciesCreate(e, 0)
366 - return FlattenIntoArray(a, e, r, 0, o), a
367 - })
368 -
369 - function ToPropertyKey (r) {
370 - var i = ToPrimitive(r, String)
371 - return 'symbol' === Type(i) ? i : ToString(i)
372 - }
373 -
374 - CreateMethodProperty(Object, 'fromEntries', function r (e) {
375 - RequireObjectCoercible(e)
376 - var t = {}, o = function (r, e) {
377 - var t = this, o = ToPropertyKey(r)
378 - CreateDataPropertyOrThrow(t, o, e)
379 - }
380 - return AddEntriesFromIterable(t, e, o)
381 - })
382 -
383 - ;(function (global) {
384 - if (global.AbortController && global.AbortSignal) return
385 -
386 - function AbortSignal () {
387 - this.aborted = false
388 - this._listeners = []
389 - }
390 -
391 - AbortSignal.prototype.addEventListener = function (type, listener) {
392 - if (type === 'abort') this._listeners.push(listener)
393 - }
394 -
395 - AbortSignal.prototype.removeEventListener = function (type, listener) {
396 - if (type === 'abort') {
397 - var index = this._listeners.indexOf(listener)
398 - if (index !== -1) this._listeners.splice(index, 1)
399 - }
400 - }
401 -
402 - AbortSignal.prototype.dispatchEvent = function (event) {
403 - if (event.type === 'abort') {
404 - this.aborted = true
405 - this._listeners.forEach(listener => listener.call(this, event))
406 - }
407 - }
408 -
409 - function AbortController () {
410 - this.signal = new AbortSignal()
411 - }
412 -
413 - AbortController.prototype.abort = function () {
414 - this.signal.dispatchEvent({ type: 'abort' })
415 - }
416 -
417 - global.AbortController = AbortController
418 - global.AbortSignal = AbortSignal
419 - })(typeof self !== 'undefined' ? self : this);
8
421 -})('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {})
\ No newline at end of file
9 +(function(self, undefined) {function ArrayCreate(r){if(1/r==-1/0&&(r=0),r>Math.pow(2,32)-1)throw new RangeError("Invalid array length");var a=[];return a.length=r,a}function Call(t,l){var n=arguments.length>2?arguments[2]:[];if(!1===IsCallable(t))throw new TypeError(Object.prototype.toString.call(t)+"is not a function.");return t.apply(l,n)}function CreateDataProperty(e,r,t){var a={value:t,writable:!0,enumerable:!0,configurable:!0};try{return Object.defineProperty(e,r,a),!0}catch(e){return!1}}function CreateDataPropertyOrThrow(t,r,o){var e=CreateDataProperty(t,r,o);if(!e)throw new TypeError("Cannot assign value `"+Object.prototype.toString.call(o)+"` to property `"+Object.prototype.toString.call(r)+"` on object `"+Object.prototype.toString.call(t)+"`");return e}function CreateMethodProperty(e,r,t){var a={value:t,writable:!0,enumerable:!1,configurable:!0};Object.defineProperty(e,r,a)}if (!("freeze"in Object
10 +)) {CreateMethodProperty(Object,"freeze",function e(r){return r});}if (!("keys"in Object&&function(){return 2===Object.keys(arguments).length}(1,2)&&function(){try{return Object.keys(""),!0}catch(t){return!1}}()
11 +)) {CreateMethodProperty(Object,"keys",function(){"use strict";function t(){var t;try{t=Object.create({})}catch(t){return!0}return o.call(t,"__proto__")}function r(t){var r=n.call(t),e="[object Arguments]"===r;return e||(e="[object Array]"!==r&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Function]"===n.call(t.callee)),e}var e=Object.prototype.hasOwnProperty,n=Object.prototype.toString,o=Object.prototype.propertyIsEnumerable,c=!o.call({toString:null},"toString"),l=o.call(function(){},"prototype"),i=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],u=function(t){var r=t.constructor;return r&&r.prototype===t},a={$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},f=function(){if("undefined"==typeof window)return!1;for(var t in window)try{if(!a["$"+t]&&e.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{u(window[t])}catch(t){return!0}}catch(t){return!0}return!1}(),p=function(t){if("undefined"==typeof window||!f)return u(t);try{return u(t)}catch(t){return!1}};return function o(u){var a="[object Function]"===n.call(u),f=r(u),s="[object String]"===n.call(u),y=[];if(void 0===u||null===u)throw new TypeError("Cannot convert undefined or null to object");var h=l&&a;if(s&&u.length>0&&!e.call(u,0))for(var g=0;g<u.length;++g)y.push(String(g));if(f&&u.length>0)for(var w=0;w<u.length;++w)y.push(String(w));else for(var $ in u)t()&&"__proto__"===$||h&&"prototype"===$||!e.call(u,$)||y.push(String($));if(c)for(var d=p(u),b=0;b<i.length;++b)d&&"constructor"===i[b]||!e.call(u,i[b])||y.push(i[b]);return y}}());}function Get(n,t){return n[t]}function HasProperty(n,r){return r in n}function IsArray(r){return"[object Array]"===Object.prototype.toString.call(r)}function IsCallable(n){return"function"==typeof n}function RequireObjectCoercible(e){if(null===e||void 0===e)throw TypeError(Object.prototype.toString.call(e)+" is not coercible to Object.");return e}function SameValueNonNumber(e,n){return e===n}function ToBoolean(o){return Boolean(o)}function ToNumber(r){return Number(r)}function ToIntegerOrInfinity(r){var n=ToNumber(r);if(isNaN(n)||0===n||1/n==-1/0)return 0;if(n===1/0)return 1/0;if(n===-1/0)return-1/0;var t=Math.floor(Math.abs(n));return n<0&&(t=-t),t}function ToObject(r){if(null===r||void 0===r)throw TypeError();return Object(r)}function GetV(t,e){return ToObject(t)[e]}function GetMethod(e,l){var t=GetV(e,l);if(null!==t&&void 0!==t){if(!1===IsCallable(t))throw new TypeError("Method not callable: "+l);return t}}function Type(e){switch(typeof e){case"undefined":return"undefined";case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"symbol":return"symbol";default:return null===e?"null":"Symbol"in self&&(e instanceof self.Symbol||e.constructor===self.Symbol)?"symbol":"object"}}if (!("flags"in RegExp.prototype
12 +)) {Object.defineProperty(RegExp.prototype,"flags",{configurable:!0,enumerable:!1,get:function(){var e=this;if("object"!==Type(e))throw new TypeError("Method called on incompatible type: must be an object.");var o="";return ToBoolean(Get(e,"global"))&&(o+="g"),ToBoolean(Get(e,"ignoreCase"))&&(o+="i"),ToBoolean(Get(e,"multiline"))&&(o+="m"),ToBoolean(Get(e,"unicode"))&&(o+="u"),ToBoolean(Get(e,"sticky"))&&(o+="y"),o}});}function GetPrototypeFromConstructor(t,o){var r=Get(t,"prototype");return"object"!==Type(r)&&(r=o),r}function OrdinaryCreateFromConstructor(r,e){var t=arguments[2]||{},o=GetPrototypeFromConstructor(r,e),a=Object.create(o);for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&Object.defineProperty(a,n,{configurable:!0,enumerable:!1,writable:!0,value:t[n]});return a}var GetSubstitution=function(){function e(e){return/^[0-9]$/.test(e)}return function t(n,r,l,i,a,f){for(var s=n.length,h=r.length,c=l+s,u=i.length,v="",g=0;g<f.length;g+=1){var o=f.charAt(g),$=g+1>=f.length,d=g+2>=f.length;if("$"!==o||$)v+=f.charAt(g);else{var p=f.charAt(g+1);if("$"===p)v+="$",g+=1;else if("&"===p)v+=n,g+=1;else if("`"===p)v+=0===l?"":r.slice(0,l-1),g+=1;else if("'"===p)v+=c>=h?"":r.slice(c),g+=1;else{var A=d?null:f.charAt(g+2);if(!e(p)||"0"===p||!d&&e(A))if(e(p)&&(d||e(A))){var y=p+A,I=parseInt(y,10)-1;v+=y<=u&&"Undefined"===Type(i[I])?"":i[I],g+=2}else v+="$";else{var T=parseInt(p,10);v+=T<=u&&"Undefined"===Type(i[T-1])?"":i[T-1],g+=1}}}}return v}}();function IsConstructor(t){return"object"===Type(t)&&("function"==typeof t&&!!t.prototype)}function Construct(r){var t=arguments.length>2?arguments[2]:r,o=arguments.length>1?arguments[1]:[];if(!IsConstructor(r))throw new TypeError("F must be a constructor.");if(!IsConstructor(t))throw new TypeError("newTarget must be a constructor.");if(t===r)return new(Function.prototype.bind.apply(r,[null].concat(o)));var n=OrdinaryCreateFromConstructor(t,Object.prototype);return Call(r,n,o)}function ArraySpeciesCreate(r,e){if(0===e&&1/e==-1/0&&(e=0),!1===IsArray(r))return ArrayCreate(e);var t=Get(r,"constructor");if("object"===Type(t)&&null===(t="Symbol"in self&&"species"in self.Symbol?Get(t,self.Symbol.species):void 0)&&(t=void 0),void 0===t)return ArrayCreate(e);if(!IsConstructor(t))throw new TypeError("C must be a constructor");return Construct(t,[e])}function IsRegExp(e){if("object"!==Type(e))return!1;var t="Symbol"in self&&"match"in self.Symbol?Get(e,self.Symbol.match):void 0;if(void 0!==t)return ToBoolean(t);try{var l=e.lastIndex;return e.lastIndex=0,RegExp.prototype.exec.call(e),!0}catch(e){}finally{e.lastIndex=l}return!1}function IteratorClose(r,t){if("object"!==Type(r["[[Iterator]]"]))throw new Error(Object.prototype.toString.call(r["[[Iterator]]"])+"is not an Object.");var e=r["[[Iterator]]"],o=GetMethod(e,"return");if(void 0===o)return t;try{var n=Call(o,e)}catch(r){var a=r}if(t)return t;if(a)throw a;if("object"!==Type(n))throw new TypeError("Iterator's return method returned a non-object.");return t}function IteratorComplete(t){if("object"!==Type(t))throw new Error(Object.prototype.toString.call(t)+"is not an Object.");return ToBoolean(Get(t,"done"))}function IteratorNext(t){if(arguments.length<2)var e=Call(t["[[NextMethod]]"],t["[[Iterator]]"]);else e=Call(t["[[NextMethod]]"],t["[[Iterator]]"],[arguments[1]]);if("object"!==Type(e))throw new TypeError("bad iterator");return e}function IteratorStep(t){var r=IteratorNext(t);return!0!==IteratorComplete(r)&&r}function IteratorValue(t){if("object"!==Type(t))throw new Error(Object.prototype.toString.call(t)+"is not an Object.");return Get(t,"value")}function OrdinaryToPrimitive(r,t){if("string"===t)var e=["toString","valueOf"];else e=["valueOf","toString"];for(var i=0;i<e.length;++i){var n=e[i],a=Get(r,n);if(IsCallable(a)){var o=Call(a,r);if("object"!==Type(o))return o}}throw new TypeError("Cannot convert to primitive.")}function SameValueZero(e,a){return Type(e)===Type(a)&&("number"===Type(e)?!(!isNaN(e)||!isNaN(a))||(1/e==1/0&&1/a==-1/0||(1/e==-1/0&&1/a==1/0||e===a)):SameValueNonNumber(e,a))}function SpeciesConstructor(o,r){var t=Get(o,"constructor");if(void 0===t)return r;if("object"!==Type(t))throw new TypeError("O.constructor is not an Object");var e="function"==typeof self.Symbol&&"symbol"==typeof self.Symbol.species?t[self.Symbol.species]:void 0;if(void 0===e||null===e)return r;if(IsConstructor(e))return e;throw new TypeError("No constructor found")}function StringIndexOf(r,n,e){var f=r.length;if(""===n&&e<=f)return e;for(var t=n.length,a=e,i=-1;a+t<=f;){for(var g=!0,o=0;o<t;o+=1)if(r[a+o]!==n[o]){g=!1;break}if(g){i=a;break}a+=1}return i}function ToInteger(r){if("symbol"===Type(r))throw new TypeError("Cannot convert a Symbol value to a number");var o=Number(r);return isNaN(o)?0:1/o==1/0||1/o==-1/0||o===1/0||o===-1/0?o:(o<0?-1:1)*Math.floor(Math.abs(o))}function ToLength(n){var t=ToInteger(n);return t<=0?0:Math.min(t,Math.pow(2,53)-1)}function LengthOfArrayLike(e){return ToLength(Get(e,"length"))}function ToPrimitive(e){var t=arguments.length>1?arguments[1]:void 0;if("object"===Type(e)){if(arguments.length<2)var i="default";else t===String?i="string":t===Number&&(i="number");var r="function"==typeof self.Symbol&&"symbol"==typeof self.Symbol.toPrimitive?GetMethod(e,self.Symbol.toPrimitive):void 0;if(void 0!==r){var o=Call(r,e,[i]);if("object"!==Type(o))return o;throw new TypeError("Cannot convert exotic object to primitive.")}return"default"===i&&(i="number"),OrdinaryToPrimitive(e,i)}return e}function ToString(t){switch(Type(t)){case"symbol":throw new TypeError("Cannot convert a Symbol value to a string");case"object":return ToString(ToPrimitive(t,String));default:return String(t)}}if (!("at"in Array.prototype
13 +)) {CreateMethodProperty(Array.prototype,"at",function t(r){var e=ToObject(this),n=LengthOfArrayLike(e),o=ToIntegerOrInfinity(r),i=o>=0?o:n+o;if(!(i<0||i>=n))return Get(e,ToString(i))});}if (!("findLast"in Array.prototype
14 +)) {CreateMethodProperty(Array.prototype,"findLast",function r(t){var e=ToObject(this),o=LengthOfArrayLike(e);if(!IsCallable(t))throw TypeError();for(var a=o-1;a>=0;){var i=ToString(a),n=Get(e,i);if(ToBoolean(Call(t,arguments.length>1?arguments[1]:void 0,[n,a,e])))return n;a-=1}});}if (!("includes"in Array.prototype
15 +)) {CreateMethodProperty(Array.prototype,"includes",function e(r){"use strict";var t=ToObject(this),o=ToLength(Get(t,"length"));if(0===o)return!1;var n=ToInteger(arguments[1]);if(n>=0)var a=n;else(a=o+n)<0&&(a=0);for(;a<o;){var i=Get(t,ToString(a));if(SameValueZero(r,i))return!0;a+=1}return!1});}if (!("getOwnPropertyNames"in Object&&function(){try{return Object.getOwnPropertyNames(1),!0}catch(t){return!1}}()
16 +)) {!function(){var t={}.toString,e="".split,r=[].concat,o=Object.prototype.hasOwnProperty,c=Object.getOwnPropertyNames||Object.keys,n="object"==typeof self?c(self):[];CreateMethodProperty(Object,"getOwnPropertyNames",function l(a){var p=ToObject(a);if("[object Window]"===t.call(p))try{return c(p)}catch(t){return r.call([],n)}p="[object String]"==t.call(p)?e.call(p,""):Object(p);for(var i=c(p),s=["length","prototype"],O=0;O<s.length;O++){var b=s[O];o.call(p,b)&&!i.includes(b)&&i.push(b)}if(i.includes("__proto__")){var f=i.indexOf("__proto__");i.splice(f,1)}return i})}();}if (!("includes"in String.prototype
17 +)) {CreateMethodProperty(String.prototype,"includes",function t(e){"use strict";var r=arguments.length>1?arguments[1]:void 0,n=RequireObjectCoercible(this),o=ToString(n);if(IsRegExp(e))throw new TypeError("First argument to String.prototype.includes must not be a regular expression");var i=ToString(e),g=ToInteger(r),a=o.length,p=Math.min(Math.max(g,0),a);return-1!==String.prototype.indexOf.call(o,i,p)});}function FlattenIntoArray(r,t,e,a,n){for(var o=arguments[5],i=arguments[6],l=a,g=0;g<e;){var h=ToString(g);if(!0===HasProperty(t,h)){var y=Get(t,h);5 in arguments&&(y=Call(o,i,[y,g,t]));var f=!1;if(n>0&&(f=IsArray(y)),!0===f){l=FlattenIntoArray(r,y,ToLength(Get(y,"length")),l,n-1)}else{if(l>=Math.pow(2,53)-1)throw new TypeError("targetIndex is greater than or equal to 2^53-1");CreateDataPropertyOrThrow(r,ToString(l),y),l+=1}}g+=1}return l}if (!("flat"in Array.prototype
18 +)) {CreateMethodProperty(Array.prototype,"flat",function t(){"use strict";var e=arguments[0],r=ToObject(this),o=ToLength(Get(r,"length")),a=1;void 0!==e&&(a=ToInteger(e));var n=ArraySpeciesCreate(r,0);return FlattenIntoArray(n,r,o,0,a),n});}function ToPropertyKey(r){var i=ToPrimitive(r,String);return"symbol"===Type(i)?i:ToString(i)}if (!("getOwnPropertyDescriptor"in Object&&"function"==typeof Object.getOwnPropertyDescriptor&&function(){try{return"3"===Object.getOwnPropertyDescriptor("13.7",1).value}catch(t){return!1}}()
19 +)) {!function(){var t=Object.getOwnPropertyDescriptor,r={}.toString,e="".split;CreateMethodProperty(Object,"getOwnPropertyDescriptor",function o(n,c){var i=ToObject(n);i=("string"===Type(i)||i instanceof String)&&"[object String]"==r.call(n)?e.call(n,""):Object(n);var p=ToPropertyKey(c);return t(i,p)})}();}if (!("assign"in Object
20 +)) {CreateMethodProperty(Object,"assign",function t(e,r){var o=ToObject(e);if(1===arguments.length)return o;var c,a,l,n,i=Array.prototype.slice.call(arguments,1);for(c=0;c<i.length;c++){var p=i[c];for(void 0===p||null===p?l=[]:(n="[object String]"===Object.prototype.toString.call(p)?String(p).split(""):ToObject(p),l=Object.keys(n)),a=0;a<l.length;a++){var b,y=l[a];try{var g=Object.getOwnPropertyDescriptor(n,y);b=void 0!==g&&!0===g.enumerable}catch(t){b=Object.prototype.propertyIsEnumerable.call(n,y)}if(b){var j=Get(n,y);o[y]=j}}}return o});}if (!("setPrototypeOf"in Object
21 +)) {!function(){if(!Object.setPrototypeOf){var t,e,o=Object.getOwnPropertyNames,r=Object.getOwnPropertyDescriptor,n=Object.create,c=Object.defineProperty,_=Object.getPrototypeOf,f=Object.prototype,p=function(t,e){return o(e).forEach(function(o){c(t,o,r(e,o))}),t},O=function t(e,o){return p(n(o),e)};try{t=r(f,"__proto__").set,t.call({},null),e=function e(o,r){return t.call(o,r),o}}catch(o){t={__proto__:null},t instanceof Object?e=O:(t.__proto__=f,e=t instanceof Object?function t(e,o){return e.__proto__=o,e}:function t(e,o){return _(e)?(e.__proto__=o,e):O(e,o)})}CreateMethodProperty(Object,"setPrototypeOf",e)}}();}if (!("Symbol"in self&&0===self.Symbol.length
22 +)) {!function(r,t,n){"use strict";function e(r){if("symbol"===Type(r))return r;throw TypeError(r+" is not a symbol")}var o,u=0,i=""+Math.random(),a="__symbol:",l=a.length,c="__symbol@@"+i,f={},s="defineProperty",v="defineProperties",y="getOwnPropertyNames",b="getOwnPropertyDescriptor",h="propertyIsEnumerable",p=r.prototype,m=p.hasOwnProperty,g=p[h],d=p.toString,w=Array.prototype.concat,S=r.getOwnPropertyNames?r.getOwnPropertyNames(self):[],P=r[y],O=function r(t){if("[object Window]"===d.call(t))try{return P(t)}catch(r){return w.call([],S)}return P(t)},j=r[b],E=r.create,N=r.keys,T=r.freeze||r,_=r[s],k=r[v],F=j(r,y),I=function(r,t,n){if(!m.call(r,c))try{_(r,c,{enumerable:!1,configurable:!1,writable:!1,value:{}})}catch(t){r[c]={}}r[c]["@@"+t]=n},x=function(r,t){var n=E(r);return O(t).forEach(function(r){W.call(t,r)&&K(n,r,t[r])}),n},z=function(r){var t=E(r);return t.enumerable=!1,t},A=function r(){},D=function(r){return r!=c&&!m.call(G,r)},M=function(r){return r!=c&&m.call(G,r)},W=function r(t){var n=""+t;return M(n)?m.call(this,n)&&this[c]&&this[c]["@@"+n]:g.call(this,t)},q=function(t){var n={enumerable:!1,configurable:!0,get:A,set:function(r){o(this,t,{enumerable:!1,configurable:!0,writable:!0,value:r}),I(this,t,!0)}};try{_(p,t,n)}catch(r){p[t]=n.value}G[t]=_(r(t),"constructor",H);var e=j(C.prototype,"description");return e&&_(G[t],"description",e),T(G[t])},B=function(r){var t=e(r);if(X){var n=U(t);if(""!==n)return n.slice(1,-1)}if(void 0!==f[t])return f[t];var o=t.toString(),u=o.lastIndexOf("0.");return""!==(o=o.slice(10,u))?o:void 0},C=function r(){var t=arguments[0];if(this instanceof r)throw new TypeError("Symbol is not a constructor");var n=a.concat(t||"",i,++u);return void 0===t||null!==t&&!isNaN(t)&&""!==String(t)||(f[n]=String(t)),q(n)},G=E(null),H={value:C},J=function(r){return G[r]},K=function r(t,n,e){var u=""+n;return M(u)?(o(t,u,e.enumerable?z(e):e),I(t,u,!!e.enumerable)):_(t,n,e),t},L=function(r){return function(t){return m.call(r,c)&&m.call(r[c],"@@"+t)}},Q=function r(t){return O(t).filter(t===p?L(t):M).map(J)};F.value=K,_(r,s,F),F.value=Q,_(r,"getOwnPropertySymbols",F),F.value=function r(t){return O(t).filter(D)},_(r,y,F),F.value=function r(t,n){var e=Q(n);return e.length?N(n).concat(e).forEach(function(r){W.call(n,r)&&K(t,r,n[r])}):k(t,n),t},_(r,v,F),F.value=W,_(p,h,F),F.value=C,_(n,"Symbol",F),F.value=function(r){var t=a.concat(a,r,i);return t in p?G[t]:q(t)},_(C,"for",F),F.value=function(r){if(D(r))throw new TypeError(r+" is not a symbol");return m.call(G,r)?r.slice(2*l,-i.length):void 0},_(C,"keyFor",F),F.value=function r(t,n){var e=j(t,n);return e&&M(n)&&(e.enumerable=W.call(t,n)),e},_(r,b,F),F.value=function r(t,n){return 1===arguments.length||void 0===n?E(t):x(t,n)},_(r,"create",F);var R=null===function(){return this}.call(null);if(F.value=R?function(){var r=d.call(this);return"[object String]"===r&&M(this)?"[object Symbol]":r}:function(){if(this===window)return"[object Null]";var r=d.call(this);return"[object String]"===r&&M(this)?"[object Symbol]":r},_(p,"toString",F),o=function(r,t,n){var e=j(p,t);delete p[t],_(r,t,n),r!==p&&_(p,t,e)},function(){try{var t={};return r.defineProperty(t,"t",{configurable:!0,enumerable:!1,get:function(){return!0},set:void 0}),!!t.t}catch(r){return!1}}()){var U;try{U=Function("s","var v = s.valueOf(); return { [v]() {} }[v].name;")}catch(r){}var V=function(){},X=U&&"inferred"===V.name?U:null;r.defineProperty(n.Symbol.prototype,"description",{configurable:!0,enumerable:!1,get:function(){return B(this)}})}}(Object,0,self);}if (!("Symbol"in self&&"iterator"in self.Symbol
23 +)) {Object.defineProperty(self.Symbol,"iterator",{value:self.Symbol("iterator")});}function GetIterator(t){var e=arguments.length>1?arguments[1]:GetMethod(t,Symbol.iterator),r=Call(e,t);if("object"!==Type(r))throw new TypeError("bad iterator");var o=GetV(r,"next"),a=Object.create(null);return a["[[Iterator]]"]=r,a["[[NextMethod]]"]=o,a["[[Done]]"]=!1,a}var AddEntriesFromIterable=function(){var r={}.toString,t="".split;return function e(a,o,n){if(!1===IsCallable(n))throw new TypeError("adder is not callable.");for(var l=GetIterator(o);;){var c=IteratorStep(l);if(!1===c)return a;var i=IteratorValue(c);if("object"!==Type(i)){var s=new TypeError("nextItem is not an object");throw IteratorClose(l,s),s}i=("string"===Type(i)||i instanceof String)&&"[object String]"==r.call(i)?t.call(i,""):i;var I;try{I=Get(i,"0")}catch(I){return IteratorClose(l,I)}var u;try{u=Get(i,"1")}catch(u){return IteratorClose(l,u)}try{Call(n,a,[I,u])}catch(r){return IteratorClose(l,r)}}}}();if (!("Symbol"in self&&"replace"in self.Symbol
24 +)) {Object.defineProperty(Symbol,"replace",{value:Symbol("replace")});}if (!("replaceAll"in String.prototype
25 +)) {CreateMethodProperty(String.prototype,"replaceAll",function e(r,t){"use strict";var i=RequireObjectCoercible(this);if(void 0!==r&&null!==r){if(IsRegExp(r)){var o=Get(r,"flags");if(!("flags"in RegExp.prototype||!0===r.global))throw TypeError("");if("flags"in RegExp.prototype&&(RequireObjectCoercible(o),-1===ToString(o).indexOf("g")))throw TypeError("")}var l="Symbol"in self&&"replace"in self.Symbol?GetMethod(r,self.Symbol.replace):void 0;if(void 0!==l)return Call(l,r,[i,t])}var n=ToString(i),a=ToString(r),g=IsCallable(t);!1===g&&(t=ToString(t));for(var f=a.length,s=Math.max(1,f),p=[],v=StringIndexOf(n,a,0);-1!==v;)p.push(v),v=StringIndexOf(n,a,v+s);for(var b=0,u="",S=0;S<p.length;S++){var d=n.substring(b,p[S]);if(g)var h=ToString(Call(t,void 0,[a,p[S],n]));else{var c=[];h=GetSubstitution(a,n,p[S],c,void 0,t)}u=u+d+h,b=p[S]+f}return b<n.length&&(u+=n.substring(b)),u});}if (!("Symbol"in self&&"toStringTag"in self.Symbol
26 +)) {Object.defineProperty(Symbol,"toStringTag",{value:Symbol("toStringTag")});}if (!("Promise"in self
27 +)) {!function(){"use strict";function n(){return tn[q][B]||D}function t(n){return n&&"object"==typeof n}function e(n){return"function"==typeof n}function r(n,t){return n instanceof t}function o(n){return r(n,O)}function i(n,t,e){if(!t(n))throw a(e)}function u(){try{return T.apply(S,arguments)}catch(n){return Y.e=n,Y}}function c(n,t){return T=n,S=t,u}function f(n,t){function e(){for(var e=0;e<o;)t(r[e],r[e+1]),r[e++]=x,r[e++]=x;o=0,r.length>n&&(r.length=n)}var r=L(n),o=0;return function(n,t){r[o++]=n,r[o++]=t,2===o&&tn.nextTick(e)}}function s(n,t){var o,i,u,f,s=0;if(!n)throw a(N);var l=n[tn[q][z]];if(e(l))i=l.call(n);else{if(!e(n.next)){if(r(n,L)){for(o=n.length;s<o;)t(n[s],s++);return s}throw a(N)}i=n}for(;!(u=i.next()).done;)if((f=c(t)(u.value,s++))===Y)throw e(i[G])&&i[G](),f.e;return s}function a(n){return new TypeError(n)}function l(n){return(n?"":Q)+(new O).stack}function h(n,t){var e="on"+n.toLowerCase(),r=C[e];E&&E.listeners(n).length?n===X?E.emit(n,t._v,t):E.emit(n,t):r?r({reason:t._v,promise:t}):tn[n](t._v,t)}function v(n){return n&&n._s}function _(n){if(v(n))return new n(Z);var t,r,o;return t=new n(function(n,e){if(t)throw a();r=n,o=e}),i(r,e),i(o,e),t}function d(n,t){var e=!1;return function(r){e||(e=!0,I&&(n[M]=l(!0)),t===U?j(n,r):w(n,t,r))}}function p(n,t,r,o){return e(r)&&(t._onFulfilled=r),e(o)&&(n[J]&&h(W,n),t._onRejected=o),I&&(t._p=n),n[n._c++]=t,n._s!==$&&rn(n,t),t}function m(n){if(n._umark)return!0;n._umark=!0;for(var t,e=0,r=n._c;e<r;)if(t=n[e++],t._onRejected||m(t))return!0}function y(n,t){function e(n){return r.push(n.replace(/^\s+|\s+$/g,""))}var r=[];return I&&(t[M]&&e(t[M]),function n(t){t&&K in t&&(n(t._next),e(t[K]+""),n(t._p))}(t)),(n&&n.stack?n.stack:n)+("\n"+r.join("\n")).replace(nn,"")}function g(n,t){return n(t)}function w(n,t,e){var r=0,i=n._c;if(n._s===$)for(n._s=t,n._v=e,t===A&&(I&&o(e)&&(e.longStack=y(e,n)),on(n));r<i;)rn(n,n[r++]);return n}function j(n,r){if(r===n&&r)return w(n,A,a(V)),n;if(r!==P&&(e(r)||t(r))){var o=c(k)(r);if(o===Y)return w(n,A,o.e),n;e(o)?(I&&v(r)&&(n._next=r),v(r)?b(n,r,o):tn.nextTick(function(){b(n,r,o)})):w(n,U,r)}else w(n,U,r);return n}function k(n){return n.then}function b(n,t,e){var r=c(e,t)(function(e){t&&(t=P,j(n,e))},function(e){t&&(t=P,w(n,A,e))});r===Y&&t&&(w(n,A,r.e),t=P)}var x,T,S,P=null,R="object"==typeof self,C=self,F=C.Promise,E=C.process,H=C.console,I=!0,L=Array,O=Error,A=1,U=2,$=3,q="Symbol",z="iterator",B="species",D=q+"("+B+")",G="return",J="_uh",K="_pt",M="_st",N="Invalid argument",Q="\nFrom previous ",V="Chaining cycle detected for promise",W="rejectionHandled",X="unhandledRejection",Y={e:P},Z=function(){},nn=/^.+\/node_modules\/yaku\/.+\n?/gm,tn=function(n){var r,o=this;if(!t(o)||o._s!==x)throw a("Invalid this");if(o._s=$,I&&(o[K]=l()),n!==Z){if(!e(n))throw a(N);r=c(n)(d(o,U),d(o,A)),r===Y&&w(o,A,r.e)}};tn.default=tn,function en(n,t){for(var e in t)n[e]=t[e]}(tn.prototype,{then:function(n,t){if(void 0===this._s)throw a();return p(this,_(tn.speciesConstructor(this,tn)),n,t)},catch:function(n){return this.then(x,n)},finally:function(n){return this.then(function(t){return tn.resolve(n()).then(function(){return t})},function(t){return tn.resolve(n()).then(function(){throw t})})},_c:0,_p:P}),tn.resolve=function(n){return v(n)?n:j(_(this),n)},tn.reject=function(n){return w(_(this),A,n)},tn.race=function(n){var t=this,e=_(t),r=function(n){w(e,U,n)},o=function(n){w(e,A,n)},i=c(s)(n,function(n){t.resolve(n).then(r,o)});return i===Y?t.reject(i.e):e},tn.all=function(n){function t(n){w(o,A,n)}var e,r=this,o=_(r),i=[];return(e=c(s)(n,function(n,u){r.resolve(n).then(function(n){i[u]=n,--e||w(o,U,i)},t)}))===Y?r.reject(e.e):(e||w(o,U,[]),o)},tn.Symbol=C[q]||{},c(function(){Object.defineProperty(tn,n(),{get:function(){return this}})})(),tn.speciesConstructor=function(t,e){var r=t.constructor;return r?r[n()]||e:e},tn.unhandledRejection=function(n,t){H&&H.error("Uncaught (in promise)",I?t.longStack:y(n,t))},tn.rejectionHandled=Z,tn.enableLongStackTrace=function(){I=!0},tn.nextTick=R?function(n){F?new F(function(n){n()}).then(n):setTimeout(n)}:E.nextTick,tn._s=1;var rn=f(999,function(n,t){var e,r;return(r=n._s!==A?t._onFulfilled:t._onRejected)===x?void w(t,n._s,n._v):(e=c(g)(r,n._v))===Y?void w(t,A,e.e):void j(t,e)}),on=f(9,function(n){m(n)||(n[J]=1,h(X,n))});Object.defineProperty(tn.prototype,tn.Symbol.toStringTag,{value:"Promise",writable:!1,enumerable:!1,configurable:!0}),C.Promise=tn}();}if (!("Promise"in self&&"finally"in self.Promise.prototype
28 +)) {!function(){var t=Function.prototype.bind.call(Function.prototype.call,Promise.prototype.then),o=function(t,o){return new t(function(t){t(o())})};CreateMethodProperty(Promise.prototype,"finally",function(e){var r=this;if("object"!==Type(r))throw new TypeError("Method %PromisePrototype%.finally called on incompatible receiver "+Object.prototype.toString.call(r));var n=SpeciesConstructor(r,Promise);if(!1===IsCallable(e))var i=e,c=e;else i=function(r){return t(o(n,e),function(){return r})},c=function(r){return t(o(n,e),function(){throw r})};return t(r,i,c)})}();}var Iterator=function(){var e=function(){return this.length=0,this},t=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e},_=function(e,n){if(!(this instanceof _))return new _(e,n);Object.defineProperties(this,{__list__:{writable:!0,value:e},__context__:{writable:!0,value:n},__nextIndex__:{writable:!0,value:0}}),n&&(t(n.on),n.on("_add",this._onAdd.bind(this)),n.on("_delete",this._onDelete.bind(this)),n.on("_clear",this._onClear.bind(this)))};return Object.defineProperties(_.prototype,Object.assign({constructor:{value:_,configurable:!0,enumerable:!1,writable:!0},_next:{value:function(){var e;if(this.__list__)return this.__redo__&&void 0!==(e=this.__redo__.shift())?e:this.__nextIndex__<this.__list__.length?this.__nextIndex__++:void this._unBind()},configurable:!0,enumerable:!1,writable:!0},next:{value:function(){return this._createResult(this._next())},configurable:!0,enumerable:!1,writable:!0},_createResult:{value:function(e){return void 0===e?{done:!0,value:void 0}:{done:!1,value:this._resolve(e)}},configurable:!0,enumerable:!1,writable:!0},_resolve:{value:function(e){return this.__list__[e]},configurable:!0,enumerable:!1,writable:!0},_unBind:{value:function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off("_add",this._onAdd.bind(this)),this.__context__.off("_delete",this._onDelete.bind(this)),this.__context__.off("_clear",this._onClear.bind(this)),this.__context__=null)},configurable:!0,enumerable:!1,writable:!0},toString:{value:function(){return"[object Iterator]"},configurable:!0,enumerable:!1,writable:!0}},{_onAdd:{value:function(e){if(!(e>=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__)return void Object.defineProperty(this,"__redo__",{value:[e],configurable:!0,enumerable:!1,writable:!1});this.__redo__.forEach(function(t,_){t>=e&&(this.__redo__[_]=++t)},this),this.__redo__.push(e)}},configurable:!0,enumerable:!1,writable:!0},_onDelete:{value:function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(t=this.__redo__.indexOf(e),-1!==t&&this.__redo__.splice(t,1),this.__redo__.forEach(function(t,_){t>e&&(this.__redo__[_]=--t)},this)))},configurable:!0,enumerable:!1,writable:!0},_onClear:{value:function(){this.__redo__&&e.call(this.__redo__),this.__nextIndex__=0},configurable:!0,enumerable:!1,writable:!0}})),Object.defineProperty(_.prototype,Symbol.iterator,{value:function(){return this},configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(_.prototype,Symbol.toStringTag,{value:"Iterator",configurable:!1,enumerable:!1,writable:!0}),_}();var ArrayIterator=function(){var e=function(t,r){if(!(this instanceof e))return new e(t,r);Iterator.call(this,t),r=r?String.prototype.includes.call(r,"key+value")?"key+value":String.prototype.includes.call(r,"key")?"key":"value":"value",Object.defineProperty(this,"__kind__",{value:r,configurable:!1,enumerable:!1,writable:!1})};return Object.setPrototypeOf&&Object.setPrototypeOf(e,Iterator.prototype),e.prototype=Object.create(Iterator.prototype,{constructor:{value:e,configurable:!0,enumerable:!1,writable:!0},_resolve:{value:function(e){return"value"===this.__kind__?this.__list__[e]:"key+value"===this.__kind__?[e,this.__list__[e]]:e},configurable:!0,enumerable:!1,writable:!0},toString:{value:function(){return"[object Array Iterator]"},configurable:!0,enumerable:!1,writable:!0}}),Object.defineProperty(e.prototype,Symbol.toStringTag,{value:"Array Iterator",writable:!1,enumerable:!1,configurable:!0}),e}();if (!("values"in Array.prototype
29 +)) {"Symbol"in self&&"iterator"in Symbol&&"function"==typeof Array.prototype[Symbol.iterator]?CreateMethodProperty(Array.prototype,"values",Array.prototype[Symbol.iterator]):CreateMethodProperty(Array.prototype,"values",function r(){var t=ToObject(this);return new ArrayIterator(t,"value")});}if (!("Symbol"in self&&"iterator"in self.Symbol&&!!Array.prototype[self.Symbol.iterator]
30 +)) {CreateMethodProperty(Array.prototype,Symbol.iterator,Array.prototype.values);}if (!("fromEntries"in Object
31 +)) {CreateMethodProperty(Object,"fromEntries",function r(e){RequireObjectCoercible(e);var t={},o=function(r,e){var t=this,o=ToPropertyKey(r);CreateDataPropertyOrThrow(t,o,e)};return AddEntriesFromIterable(t,e,o)});}})('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
\ No newline at end of file