Overview

URL fi.livingorganicnews.com/helicopter-money-why-economists-are-now-thinking-unthinkable-253785
IP172.67.158.5
ASNCLOUDFLARENET
Location United States
Report completed2022-10-04 15:24:42 UTC
StatusLoading report..
urlquery Alerts No alerts detected


Settings

UserAgentMozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Referer


Intrusion Detection Systems

Suricata /w Emerging Threats Pro  No alerts detected


Blocklists

OpenPhish  No alerts detected
PhishTank  No alerts detected
Fortinet's Web Filter  No alerts detected
mnemonic secure dns  No alerts detected
Quad9 DNS
Scan Date Severity Indicator Comment
2022-10-04 2 havanese.top Sinkholed


Files

URL mc.yandex.ru/watch/53565751?wmode=7&page-url=https%3A%2F%2Ffi.livingorganic (...)
IP  87.250.250.119
Magic gzip compressed data, max compression\012- data
Size 131011
MD5 7899f0ee9fd803d3184f687e9e51c08a
SHA1 1ecbc68dbadb9078b893c9035e1f1b02e52588d8
SHA256 838e5ed28453d0b0f6f8215f1855f8b6ff977452346d4a1ffe5f0143d1f29077
Analyzer Analysed Verdict Comment
VirusTotal 0/0


Passive DNS (51)

Passive DNS Source Fully Qualifying Domain Name Rank First Seen Last Seen IP Comment
mnemonic passive DNS fi.livingorganicnews.com (3) 0 No data No data 104.21.65.39 Unknown ranking
mnemonic passive DNS content-signature-2.cdn.mozilla.net (1) 1152 2020-11-03 12:26:46 UTC 2022-10-04 04:29:41 UTC 143.204.55.25
mnemonic passive DNS cdn.zx-adnet.com (2) 120818 2018-10-26 14:09:55 UTC 2022-10-04 13:54:02 UTC 151.101.65.195
mnemonic passive DNS livingorganicnews.com (8) 0 2015-12-20 22:04:18 UTC 2022-09-27 14:36:11 UTC 172.67.158.5 Unknown ranking
mnemonic passive DNS fonts.googleapis.com (2) 8877 2013-06-10 20:14:26 UTC 2022-10-04 11:55:48 UTC 142.250.74.10
mnemonic passive DNS cst.cstwpush.com (1) 102037 2021-01-06 11:06:08 UTC 2022-10-04 08:12:39 UTC 45.133.44.24
mnemonic passive DNS firefox.settings.services.mozilla.com (2) 867 2020-05-27 20:08:30 UTC 2022-10-04 09:13:54 UTC 143.204.55.36
mnemonic passive DNS stackpath.bootstrapcdn.com (3) 2467 2018-04-05 04:41:29 UTC 2022-10-04 07:23:22 UTC 104.18.10.207
mnemonic passive DNS cst.wpu.sh (1) 148954 2019-12-02 04:24:21 UTC 2022-10-04 08:12:38 UTC 188.166.100.156
mnemonic passive DNS ocsp.digicert.com (11) 86 2012-05-21 07:02:23 UTC 2022-10-04 07:51:20 UTC 93.184.220.29
mnemonic passive DNS adx.adform.net (8) 4501 2013-01-17 14:52:24 UTC 2022-10-04 04:55:37 UTC 37.157.4.29
mnemonic passive DNS ssum-sec.casalemedia.com (2) 509 2014-06-23 13:16:59 UTC 2022-10-04 04:22:56 UTC 104.18.18.126
mnemonic passive DNS gum.criteo.com (2) 381 2015-01-22 10:58:57 UTC 2022-10-04 10:21:25 UTC 178.250.2.146
mnemonic passive DNS r3.o.lencr.org (11) 344 2020-12-02 08:52:13 UTC 2022-10-04 04:17:22 UTC 23.36.77.32
mnemonic passive DNS get.optad360.io (2) 24145 2018-09-29 14:32:14 UTC 2022-10-04 12:54:42 UTC 143.204.55.44
mnemonic passive DNS htlb.casalemedia.com (1) 475 2019-08-22 07:04:41 UTC 2022-10-04 04:22:55 UTC 104.18.19.126
mnemonic passive DNS js.wpadmngr.com (2) 25762 2021-06-02 14:43:46 UTC 2022-10-04 09:02:35 UTC 45.133.44.24
mnemonic passive DNS securepubads.g.doubleclick.net (1) 190 2013-05-31 04:19:39 UTC 2022-10-04 09:32:29 UTC 216.58.207.194
mnemonic passive DNS adservice.google.no (1) 96969 2017-09-26 14:23:08 UTC 2022-10-04 04:17:30 UTC 142.250.74.162
mnemonic passive DNS acdn.adnxs.com (4) 573 2015-11-11 13:40:40 UTC 2022-10-04 09:38:33 UTC 151.101.85.108
mnemonic passive DNS i.livingorganicnews.com (21) 0 2020-05-18 10:01:27 UTC 2022-09-05 06:51:04 UTC 172.67.158.5 Unknown ranking
mnemonic passive DNS mc.yandex.ru (4) 2672 2017-01-29 05:34:36 UTC 2022-10-04 08:04:40 UTC 87.250.250.119
mnemonic passive DNS havanese.top (1) 0 2022-06-29 21:01:30 UTC 2022-10-04 11:05:34 UTC 185.177.92.29 Unknown ranking
mnemonic passive DNS ocsp.pki.goog (16) 175 2017-06-14 07:23:31 UTC 2022-10-04 04:17:09 UTC 142.250.74.3
mnemonic passive DNS ocsp.globalsign.com (2) 2075 2012-05-25 06:20:55 UTC 2022-10-04 04:22:54 UTC 104.18.20.226
mnemonic passive DNS counter.yadro.ru (1) 7275 2014-09-09 18:41:17 UTC 2022-10-04 04:52:30 UTC 88.212.201.198
mnemonic passive DNS img-getpocket.cdn.mozilla.net (6) 1631 2017-09-01 03:40:57 UTC 2022-10-04 04:18:32 UTC 34.120.237.76
mnemonic passive DNS js.wpshsdk.com (4) 12130 2021-06-04 13:50:00 UTC 2022-10-04 09:08:55 UTC 45.133.44.25
mnemonic passive DNS fi.livingorganicnews.com (3) 0 No data No data 172.67.158.5 Unknown ranking
mnemonic passive DNS hal9000.redintelligence.net (1) 29599 2017-01-30 05:07:51 UTC 2022-10-04 12:29:34 UTC 138.201.63.116
mnemonic passive DNS ib.adnxs.com (17) 241 2012-05-23 22:36:14 UTC 2022-10-04 04:17:45 UTC 37.252.173.22
mnemonic passive DNS ddff0678c2250dd1a58937ee8b8e45b4.safeframe.googlesyndication.com (1) 0 No data No data 142.250.74.65 Domain (googlesyndication.com) ranked at: 1586
mnemonic passive DNS tpc.googlesyndication.com (1) 126 2020-01-16 08:35:32 UTC 2022-10-04 10:28:49 UTC 142.250.74.33
mnemonic passive DNS hal90006.redintelligence.net (4) 233066 2017-01-29 07:40:55 UTC 2022-10-04 07:38:29 UTC 138.201.63.164
mnemonic passive DNS site2text-2021.web.app (1) 214809 2021-01-26 12:39:13 UTC 2022-10-04 12:55:18 UTC 199.36.158.100
mnemonic passive DNS prebid-eu.creativecdn.com (4) 5570 2018-01-27 12:14:32 UTC 2022-10-04 12:54:45 UTC 185.184.8.90
mnemonic passive DNS na.nawpush.com (1) 38563 2020-12-23 08:18:12 UTC 2022-10-04 11:07:35 UTC 45.133.44.24
mnemonic passive DNS 69080e98bd.b88f1c5cda.com (1) 0 2022-10-01 03:32:21 UTC 2022-10-04 10:05:02 UTC 45.133.44.24 Unknown ranking
mnemonic passive DNS fp.metricswpsh.com (2) 0 2022-04-22 11:20:32 UTC 2022-10-04 11:07:35 UTC 157.90.84.242 Unknown ranking
mnemonic passive DNS js.wpushsdk.com (1) 36947 2021-05-07 12:03:12 UTC 2022-10-04 10:05:02 UTC 45.133.44.24
mnemonic passive DNS ajax.googleapis.com (1) 12905 2013-08-16 09:51:31 UTC 2022-10-04 13:58:02 UTC 142.250.74.138
mnemonic passive DNS sw.wpush.org (2) 78308 2020-02-15 07:54:44 UTC 2022-10-04 10:50:51 UTC 45.133.44.25
mnemonic passive DNS script.4dex.io (2) 2135 2021-09-03 18:08:04 UTC 2022-10-04 13:43:50 UTC 172.67.75.241
mnemonic passive DNS contile.services.mozilla.com (1) 1114 2021-05-27 18:32:35 UTC 2022-10-04 04:16:51 UTC 34.117.237.239
mnemonic passive DNS fonts.gstatic.com (4) 0 2014-08-29 13:43:22 UTC 2022-10-04 09:46:16 UTC 216.58.207.195 Domain (gstatic.com) ranked at: 540
mnemonic passive DNS push.services.mozilla.com (1) 2140 2015-09-03 10:29:36 UTC 2022-10-04 04:45:06 UTC 52.88.220.109
mnemonic passive DNS cdn.jsdelivr.net (1) 439 2012-09-30 00:15:09 UTC 2022-10-04 04:19:28 UTC 151.101.85.229
mnemonic passive DNS adservice.google.com (1) 76 2021-02-20 16:10:48 UTC 2022-10-04 14:29:35 UTC 142.250.74.162
mnemonic passive DNS js-sec.indexww.com (1) 663 2015-05-13 07:47:54 UTC 2022-10-04 04:22:56 UTC 23.38.200.248
mnemonic passive DNS cdn.indexww.com (1) 0 2022-07-20 16:24:02 UTC 2022-10-04 10:25:36 UTC 104.18.12.76 Domain (indexww.com) ranked at: 3280
mnemonic passive DNS cdn.contentspread.net (1) 46302 2014-09-07 13:58:54 UTC 2022-10-04 10:50:16 UTC 88.99.65.215


Recent reports on same IP/ASN/Domain/Screenshot

Last 4 reports on IP: 172.67.158.5

Date UQ / IDS / BL URL IP
2022-11-27 15:41:12 +0000
0 - 0 - 98 bilutv2.net/ 172.67.158.5
2022-10-26 04:27:24 +0000
0 - 0 - 1 projectionexquisite.cn/ 172.67.158.5
2022-10-12 15:56:42 +0000
0 - 0 - 2 eadcursos.online/prof--leonardo-rolfson-phd/a (...) 172.67.158.5
2022-10-04 15:24:42 +0000
0 - 0 - 1 fi.livingorganicnews.com/helicopter-money-why (...) 172.67.158.5

Last 5 reports on ASN: CLOUDFLARENET

Date UQ / IDS / BL URL IP
2022-12-06 23:19:11 +0000
0 - 0 - 3 104.25.116.25/ 104.25.116.25
2022-12-06 23:11:29 +0000
0 - 0 - 2 kitwekcbo.org/ 172.67.169.207
2022-12-06 23:09:18 +0000
0 - 0 - 15 leakednudecelebs.com/posts/f9ff770404732dfb3b (...) 172.67.180.92
2022-12-06 23:01:07 +0000
0 - 0 - 8 sjgetmjx.org/ 188.114.96.1
2022-12-06 22:58:02 +0000
0 - 0 - 3 we-meet-today.com/tt/02?affiliate_id=13989&su (...) 172.67.154.135

Last 1 reports on domain: livingorganicnews.com

Date UQ / IDS / BL URL IP
2022-10-04 15:24:42 +0000
0 - 0 - 1 fi.livingorganicnews.com/helicopter-money-why (...) 172.67.158.5

No other reports with similar screenshot



JavaScript

Executed Scripts (48)


Executed Evals (106)

#1 JavaScript::Eval (size: 45, repeated: 1) - SHA256: 067496fc639e9b8fa80ec2bb2236b9453da5169040e451c35ff763663e6ac296

                                        0,
function(e, k) {
    k = p(e, m(e, 66)), xE(e.G, 491, k)
}
                                    

#2 JavaScript::Eval (size: 78, repeated: 1) - SHA256: 91173567a8869ad47bd11216bf66bcfea5974d1dbe0fe38e28d76fdced0e4ac0

                                        0,
function(e, k, X, K) {
    w((K = m(e, (X = m(e, (k = m(e, 82), 80)), 66)), e), K, p(e, k) || p(e, X))
}
                                    

#3 JavaScript::Eval (size: 447, repeated: 1) - SHA256: 496829dd16423a9799aa24c84a043b8c86130c0dc48cef7ac1fc8e20f9e86731

                                        0, V4 = function(x, U, y, J, D, S, e, k, X) {
    if (!U.i) {
        U.aY++;
        try {
            for (D = (e = U.Y, X = 0, void 0); --y;) try {
                if ((S = void 0, U).U) D = Dv(U.U, U);
                else {
                    if ((X = p(U, 491), X) >= e) break;
                    D = p(U, (S = m((w(U, J, X), U), 64), S))
                }
                f((D && (k = D[Nl], (k | 0) - 2048 - -2049 + (~k | 2048)) ? D(U, y) : wW(3, U, 0, [Ro, 21, S]), 1), x, y, U, false, false)
            } catch (K) {
                p(U, 95) ? wW(3, U, 22, K) : w(U, 95, K)
            }
            if (!y) {
                if (U.Lu) {
                    V4(12, (U.aY--, U), 588817040931, 39);
                    return
                }
                wW(3, U, 0, [Ro, 33])
            }
        } catch (K) {
            try {
                wW(3, U, 22, K)
            } catch (N) {
                d(U, ":", 6, N)
            }
        }
        U.aY--
    }
}
                                    

#4 JavaScript::Eval (size: 580, repeated: 1) - SHA256: 6dc8a19a6c3e6cf6bc2f76996dc4eccde72f7c1bb12134e38f857fa228a58897

                                        0, Dx = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
    for (k = (S = U.replace(/\r\n/g, "\n"), I = [], X = 0); k < S.length; k++) b = S.charCodeAt(k), 128 > b ? I[X++] = b : (2048 > b ? I[X++] = (N = b >> x, (N | 0) - (N & -193) + (N ^ 192)) : (55296 == 64512 + (~b ^ 64512) - (~b | 64512) && k + 1 < S.length && 56320 == (S.charCodeAt(k + 1) & 64512) ? (b = 65536 + (1023 + (~b ^ 1023) - (~b | 1023) << 10) + (S.charCodeAt(++k) & 1023), I[X++] = (J = b >> 18, -(J & 240) - ~(J & 240) + -2 - ~(J | 240)), I[X++] = (e = b >> 12 & 63, (e & 128) - ~e + -129 + 2 * (~e & 128))) : I[X++] = (K = b >> 12, (K | 0) + ~K - ~(K | 224)), I[X++] = (y = (D = b >> x, (D | 63) - -1 - (~D & 63) + (~D | 63)), 256 - ~y + -258 - (y | -129))), I[X++] = -2 * ~(b & 63) + ~b + 2 * (b & -64) + (~b | 63) | 128);
    return I
}
                                    

#5 JavaScript::Eval (size: 400, repeated: 1) - SHA256: fc9a9faaa43c049bef867383704fa115af3d7a6d9540c047476398e1dbccd952

                                        0, wW = function(x, U, y, J, D, S, e, k, X, K) {
    if (!U.Su) {
        if ((X = (0 == (D = (e = void 0, J && J[0] === Ro && (e = J[2], y = J[1], J = void 0), p)(U, 88), D.length) && (S = p(U, 39) >> x, D.push(y, S >> 8 & 255, S & 255), void 0 != e && D.push(e & 255)), ""), J && (J.message && (X += J.message), J.stack && (X += ":" + J.stack)), k = p(U, 59), k) > x) {
            U.G = (X = Dx(6, (X = X.slice(0, (k | 0) - x), k -= (X.length | 0) + x, X)), K = U.G, U);
            try {
                h(U, 150, G(X.length, 2).concat(X), 12)
            } finally {
                U.G = K
            }
        }
        w(U, 59, k)
    }
}
                                    

#6 JavaScript::Eval (size: 98, repeated: 1) - SHA256: e1a4e0525ea476c84ce404d1a0c69bc98bd6ab314f0139e24b3bbed2e8e66c70

                                        0,
function(e, k, X, K, N, b) {
    w(e, (N = p(e, (k = p(e, (X = m(e, (b = m(e, (K = m(e, 80), 66)), 82)), b)), K)), X), N in k | 0)
}
                                    

#7 JavaScript::Eval (size: 1, repeated: 1) - SHA256: 50e721e49c013f00c62cf59f2163542a9d8df02464efeb615d31051b0fddc326

                                        w
                                    

#8 JavaScript::Eval (size: 131, repeated: 1) - SHA256: 2b32a04ceee46a34ee96e00e65e72714c6edeb5d2b5f8fc0110c75152befcb5a

                                        p = function(x, U, y) {
    if (void 0 === (y = x.P[U], y)) throw [Ro, 30, U];
    if (y.value) return y.create();
    return y.create(1 * U * U + -81 * U + 53), y.prototype
}
                                    

#9 JavaScript::Eval (size: 70, repeated: 1) - SHA256: f54709c4bb0d9fa4f0f3e2e8c457a1f836dddccfc963a3468abc6c4f4d4540dd

                                        0, sl = function(x, U) {
    for (U = []; x--;) U.push(255 * Math.random() | 0);
    return U
}
                                    

#10 JavaScript::Eval (size: 1, repeated: 1) - SHA256: 333e0a1e27815d0ceee55c473fe3dc93d56c63e3bee2b3b4aee8eed6d70191a3

                                        G
                                    

#11 JavaScript::Eval (size: 43188, repeated: 1) - SHA256: 412c3caf746b30f65eef94abd9d193a93b4d1116eacbdc3491f154105384fc8e

                                        //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjogMywic291cmNlcyI6WyIiXSwic291cmNlc0NvbnRlbnQiOlsiICJdLCJuYW1lcyI6WyJjbG9zdXJlRHluYW1pY0J1dHRvbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEifQ==
(function() {
    var m = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
            return 1 == (1 == ((U & 90) == ((U & 60) == ((U | 72) == U && (X = (J | 0) - ~(J & 7) + ~J, S = [-18, -81, -84, 69, 50, -71, S, 12, -16, -10], k = xx, N = i4[D.Z](D.t$), N[D.Z] = function(O) {
                X += 6 + 7 * (K = O, J), X &= 7
            }, N.concat = function(O, R, Z, t, E) {
                return (E = (O = (t = e % y + x, -t * K + X - 2332 * K + S[Z = X + 35, -1 - ~(Z | 7) - (Z ^ 7)] * e * t + x * e * e * t + (k() | 0) * t + 44 * K * K - 44 * e * e * K) - -3564 * e * K, K = void 0, S[O]), S[(R = X + 13, 2 * (R | 0) - 7 - 2 * (R & -8) + (~R & 7)) + (J & 2)] = E, S)[X + (2 + (~J ^ 2) - (~J | 2))] = -81, E
            }, I = N), U) && (I = b = function() {
                if (D.G == D) {
                    if (D.P) {
                        var O = [sn, J, S, void 0, k, X, arguments];
                        if (e == y) var R = Un(!(C(29, 0, D, O), 1), x, 0, x, D);
                        else if (1 == e) {
                            var Z = !D.T.length;
                            C(25, 0, D, O), Z && Un(false, x, 0, x, D)
                        } else R = ep(D, O, 1, 2);
                        return R
                    }
                    k && X && k.removeEventListener(X, b, $x)
                }
            }), U) && (x.U ? I = Dv(x.W, x) : (y = kx(491, true, 8, x), y & 128 && (y = (y & -129) - (~y ^ 128) + (~y | 128), J = kx(491, true, 2, x), y = (D = y << 2, 3 * (D | J) - -1 + ~(D | J) - (D ^ J))), I = y)), (U | 7) >> 3) && (J = i4[x.Z](x.BW), J[x.Z] = function() {
                return y
            }, J.concat = function(O) {
                y = O
            }, I = J), U) - 8 >> 3 && (I = (k = (S = J[D] << y | J[(D | 0) + 1] << x, X = J[(D | 0) + 2] << 8, ~S - 2 * ~(S | X) + (S & ~X) + (~S ^ X)), e = J[(D | 0) + 3], -~(k | e) + (k ^ e) + (~k ^ e))), I
        },
        a = function(x, U, y, J, D, S, e, k, X) {
            if (2 <= (y | 9) >> x && 2 > (y << 2 & 10)) {
                for (e = m(J, 82), S = U; D > U; D--) S = S << 8 | n(491, J, 8);
                w(J, e, S)
            }
            if ((y - x | 21) >= y && y - 7 << 1 < y)
                if (S = "array" === Sp("object", "call", D) ? D : [D], this.i) U(this.i);
                else try {
                    e = [], k = !this.T.length, C(37, 0, this, [X6, e, S]), C(17, 0, this, [NC, U, e]), J && !k || Un(false, J, 0, true, this)
                } catch (K) {
                    d(this, ":", 5, K), U(this.i)
                }
                return 1 == ((y ^ 27) & 5) && (D = n(491, J, 8), (D | 0) - (D | 128) - ~(D | 128) + (~D | 128) && (D = (S = U * (D | 127) - ~(D & 127) - -1 + U * ~(D | 127), e = n(491, J, 8) << 7, U * (S & e) + U * ~(S & e) - ~S - (S | ~e))), X = D), X
        },
        f = function(x, U, y, J, D, S, e, k, X, K, N, b, I, O, R) {
            if (3 == (U ^ (18 > (U << 2 & 28) && 10 <= (U >> 1 & 15) && (M.call(this, x ? x.type : ""), this.relatedTarget = this.currentTarget = this.target = null, this.button = this.screenY = this.screenX = this.clientY = this.clientX = this.offsetY = this.offsetX = 0, this.key = "", this.charCode = this.keyCode = 0, this.metaKey = this.shiftKey = this.altKey = this.ctrlKey = false, this.state = null, this.pointerId = 0, this.pointerType = "", this.C = null, x && (D = this.type = x.type, J = x.changedTouches && x.changedTouches.length ? x.changedTouches[0] : null, this.target = x.target || x.srcElement, this.currentTarget = y, S = x.relatedTarget, S || ("mouseover" == D ? S = x.fromElement : "mouseout" == D && (S = x.toElement)), this.relatedTarget = S, J ? (this.clientX = void 0 !== J.clientX ? J.clientX : J.pageX, this.clientY = void 0 !== J.clientY ? J.clientY : J.pageY, this.screenX = J.screenX || 0, this.screenY = J.screenY || 0) : (this.offsetX = x.offsetX, this.offsetY = x.offsetY, this.clientX = void 0 !== x.clientX ? x.clientX : x.pageX, this.clientY = void 0 !== x.clientY ? x.clientY : x.pageY, this.screenX = x.screenX || 0, this.screenY = x.screenY || 0), this.button = x.button, this.keyCode = x.keyCode || 0, this.key = x.key || "", this.charCode = x.charCode || ("keypress" == D ? x.keyCode : 0), this.ctrlKey = x.ctrlKey, this.altKey = x.altKey, this.shiftKey = x.shiftKey, this.metaKey = x.metaKey, this.pointerId = x.pointerId || 0, this.pointerType = "string" === typeof x.pointerType ? x.pointerType : b4[x.pointerType] || "", this.state = x.state, this.C = x, x.defaultPrevented && L.F.preventDefault.call(this))), 40)) >> 3)
                if (Array.isArray(k))
                    for (N = x; N < k.length; N++) f(0, 49, null, J, D, S, e, k[N]);
                else K = A(17, y, S) ? !!S.capture : !!S, D = IB(true, 15, D), J && J[Cz] ? J.K.remove(String(k), D, K, e) : J && (X = r(23, 17, J)) && (b = X.F6(e, D, K, k)) && oB(9, 16, "on", 0, b);
            if (U - 2 << 2 >= U && (U - 4 | 54) < U && (D.classList ? D.classList.remove(S) : (D.classList ? D.classList.contains(S) : q(7, x, S, d(D, J, 76))) && r(23, 15, J, D, Array.prototype.filter.call(d(D, J, 73), function(Z) {
                    return Z != S
                }).join(y))), !((U ^ 14) >> 3)) {
                if ((J.bw += ((I = (O = (X = (b = 0 < (D || J.mZ++, J).Vh && J.zF && J.Qh && J.aY <= x && !J.U && !J.J && (!D || J.HW - y > x) && 0 == document.hidden, (K = 4 == J.mZ) || b ? J.o() : J.O), X - J.O), O >> 14), J.D) && (J.D = (N = J.D, k = I * (O << 2), -(k | 0) + (N | k) + ~N - ~(N | k))), I), J.G = I || J.G, K) || b) J.mZ = 0, J.O = X;
                !b || X - J.L < J.Vh - (S ? 255 : D ? 5 : 2) ? R = false : (J.HW = y, e = p(J, D ? 39 : 491), w(J, 491, J.Y), J.T.push([mu, e, D ? y + x : y]), J.J = nz, R = true)
            }
            return (U | 40) == U && (On.call(this), x || RB || (RB = new wq), this.cW = void 0, this.TF = this.U4 = null, this.IY = false, this.Ku = this.Cu = this.iw = null), R
        },
        Zv = function(x, U, y, J, D, S, e, k, X, K, N) {
            if ((y & 106) == y)
                if (Array.isArray(X))
                    for (K = U; K < X.length; K++) Zv(13, 0, 34, true, D, S, e, k, X[K]);
                else k = IB(true, x, k), S && S[Cz] ? S.K.add(String(X), k, J, A(49, null, D) ? !!D.capture : !!D, e) : v(15, X, false, null, D, e, S, J, k);
            if (2 == (y | 5) >> 3) a: {
                switch (e) {
                    case J:
                        N = k ? "disable" : "enable";
                        break a;
                    case 2:
                        N = k ? "highlight" : "unhighlight";
                        break a;
                    case S:
                        N = k ? "activate" : "deactivate";
                        break a;
                    case D:
                        N = k ? "select" : "unselect";
                        break a;
                    case U:
                        N = k ? "check" : "uncheck";
                        break a;
                    case 32:
                        N = k ? "focus" : "blur";
                        break a;
                    case 64:
                        N = k ? "open" : "close";
                        break a
                }
                throw Error("Invalid component state");
            }
            return (y | ((y | 24) == y && (this.type = U, this.currentTarget = this.target = J, this.defaultPrevented = this.H = false), 1)) >> 4 || (N = Object.prototype.hasOwnProperty.call(U, dq) && U[dq] || (U[dq] = ++tS)), N
        },
        q = function(x, U, y, J, D) {
            return (((x & 124) == x && (w(J, U, y), y[En] = 2796), (x & 110) == x && (VI.call(this), this.K = new aB(this), this.ZY = null, this.qn = this), x + 3) & 76) >= x && (x - 8 | 7) < x && (D = d(1, U, 23, y, J) >= U), D
        },
        MC = function(x, U, y) {
            return ((U | 3) >> 3 || (this.X6 = this.X6), 23 <= U + 1) && 2 > (U | 7) >> x && (y = Math.floor(this.h$ + (this.o() - this.L))), y
        },
        Lz = function(x, U, y, J, D, S, e, k, X) {
            if ((U ^ 31) >> 3 == x && (e = J, e = (k = e << 13, ~k - ~(e | k) + (~e & k)), e ^= e >> 17, e = (S = e << 5, (S | 0) + ~S + (~e & S) - (~e | S)), (e &= D) || (e = x), X = y ^ e), (U + 8 ^ 19) >= U && (U + 2 & 25) < U) {
                if (!y) throw Error("Invalid class name " + y);
                if ("function" !== typeof J) throw Error("Invalid decorator function " + J);
            }
            return (U & 56) == U && (this.s = W.document || document), X
        },
        v = function(x, U, y, J, D, S, e, k, X, K, N, b, I, O) {
            if ((x | ((x & 30) == x && (D = U.type, D in y.A && C(59, 1, U, y.A[D]) && (c(U, J, 8), 0 == y.A[D].length && (delete y.A[D], y.g--))), 24)) == x) {
                if (fz.call(this, U), !(S = y)) {
                    for (k = this.constructor; k;) {
                        if (D = (X = Zv(13, k, 3), AS[X])) break;
                        k = (e = Object.getPrototypeOf(k.prototype)) && e.constructor
                    }
                    S = D ? "function" === typeof D.PW ? D.PW() : new D : null
                }
                this.V = S
            }
            if (0 <= x + 4 >> 3 && 8 > (x << 2 & 8))
                if (e && e.once) Zv(13, 0, 32, y, e, S, U, D, k);
                else if (Array.isArray(k))
                for (X = 0; X < k.length; X++) v(5, U, true, null, D, S, e, k[X]);
            else D = IB(true, 17, D), S && S[Cz] ? S.K.add(String(k), D, false, A(17, J, e) ? !!e.capture : !!e, U) : v(11, k, false, null, e, U, S, false, D);
            if ((x + 6 ^ 19) < x && (x - 3 | 3) >= x) {
                if (!U) throw Error("Invalid event type");
                if (!(b = (N = ((K = r(23, 24, e)) || (e[rq] = K = new aB(e)), A(65, J, D) ? !!D.capture : !!D), K).add(U, X, k, N, S), b.proxy)) {
                    if (((b.proxy = (I = gq(6, 5), I), I).src = e, I).listener = b, e.addEventListener) qC || (D = N), void 0 === D && (D = y), e.addEventListener(U.toString(), I, D);
                    else if (e.attachEvent) e.attachEvent(A(24, "on", U.toString()), I);
                    else if (e.addListener && e.removeListener) e.addListener(I);
                    else throw Error("addEventListener and attachEvent are unavailable.");
                    jp++
                }
            }
            return O
        },
        c = function(x, U, y, J, D, S) {
            return 4 > (((y | 8) == y && (x.v = true, x.listener = U, x.proxy = U, x.src = U, x.A$ = U), y << 2) & 8) && 15 <= (y | 1) && (D = function() {}, D.prototype = J.prototype, x.F = J.prototype, x.prototype = new D, x.prototype.constructor = x, x.jA = function(e, k, X) {
                for (var K = Array(arguments.length - U), N = U; N < arguments.length; N++) K[N - U] = arguments[N];
                return J.prototype[k].apply(e, K)
            }), S
        },
        IB = function(x, U, y, J, D, S, e, k, X) {
            return (((23 <= U << 2 && 6 > (U - 7 & 15) && (y.v ? D = x : (e = new L(J, this), S = y.A$ || y.src, k = y.listener, y.N && oB(9, 8, "on", 0, y), D = k.call(S, e)), X = D), 11) <= U - 2 && 31 > (U | 3) && ("function" === typeof y ? X = y : (y[pz] || (y[pz] = function(K) {
                return y.handleEvent(K)
            }), X = y[pz])), U) | 64) == U && (J(function(K) {
                K(y)
            }), X = [function() {
                return y
            }]), X
        },
        r = function(x, U, y, J, D, S, e, k) {
            return ((U & 121) == (U + 3 >> 2 < U && (U + 4 ^ x) >= U && (this.listener = y, this.proxy = null, this.src = D, this.type = S, this.capture = !!J, this.A$ = e, this.key = ++u4, this.N = this.v = false), U) && (J = y[rq], k = J instanceof aB ? J : null), 6) <= ((U | 5) & 7) && 4 > (U - 5 & 4) && (typeof J.className == y ? J.className = D : J.setAttribute && J.setAttribute("class", D)), k
        },
        d = function(x, U, y, J, D, S, e, k, X) {
            if (8 <= (y | 4) && 2 > (y ^ 28) >> 4) a: if ("string" === typeof D) X = "string" !== typeof J || J.length != x ? -1 : D.indexOf(J, U);
                else {
                    for (S = U; S < D.length; S++)
                        if (S in D && D[S] === J) {
                            X = S;
                            break a
                        }
                    X = -1
                }
            if ((y | 4) >> 4 || (x.i = ((x.i ? x.i + "~" : "E:") + J.message + U + J.stack).slice(0, 2048)), (y + 4 ^ 14) >= y && (y + 9 ^ 27) < y)
                for (k = D.length, e = "string" === typeof D ? D.split(x) : D, S = U; S < k; S++) S in e && J.call(void 0, e[S], S, D);
            return (y | 72) == y && (X = x.classList ? x.classList : Yx(65, "", 6, U, x).match(/\S+/g) || []), X
        },
        vv = function(x, U, y, J, D, S, e, k, X, K, N, b) {
            if ((((U ^ 78) >> 4 || (this.src = x, this.A = {}, this.g = 0), U) | 80) == U) a: {
                for (S in J)
                    if (D.call(void 0, J[S], S, J)) {
                        b = y;
                        break a
                    }
                b = x
            }
            if ((U & 31) == ((U + 9 ^ 12) < U && U - 3 << 2 >= U && x.Ku && x.Ku.forEach(y, void 0), U)) {
                for (D = X = 0; X < x.length; X++) D += x.charCodeAt(X), D += D << 10, D ^= D >> 6;
                (K = new Number((k = (S = 1 << y, -(e = (D = (N = (D += D << 3, D >> 11), (D & N) + ~(D & N) - (~D ^ N)), D) + (D << 15) >>> 0, S | 1) - 1 - ~S + (S & -2)), -(e | 0) - 2 * ~k + (e & ~k) + 2 * (e | ~k))), K)[0] = (e >>> y) % J, b = K
            }
            return (U + 2 & 52) >= U && U + 7 >> 1 < U && (this.G = x), b
        },
        C = function(x, U, y, J, D, S, e) {
            if ((x - (2 == ((x ^ ((x | 56) == x && (D = d(U, 0, 22, y, J), (S = 0 <= D) && Array.prototype.splice.call(J, D, U), e = S), 14)) >> 3 || (U.classList ? Array.prototype.forEach.call(y, function(k) {
                    f(0, 3, " ", "string", U, k)
                }) : r(23, 14, "string", U, Array.prototype.filter.call(d(U, "string", 75), function(k) {
                    return !q(5, 0, k, y)
                }).join(" "))), x << 1 & 6) && y.T.splice(U, U, J), 7) | 84) >= x && (x + 5 ^ 7) < x)
                if (U.classList) Array.prototype.forEach.call(y, function(k, X) {
                    U.classList ? U.classList.add(k) : (U.classList ? U.classList.contains(k) : q(9, 0, k, d(U, "string", 72))) || (X = Yx(65, "", 3, "string", U), r(23, 22, "string", U, X + (0 < X.length ? " " + k : k)))
                });
                else {
                    for (S in D = (Array.prototype.forEach.call(d(U, (J = {}, "string"), 74), function(k) {
                            J[k] = true
                        }), Array.prototype.forEach.call(y, function(k) {
                            J[k] = true
                        }), ""), J) D += 0 < D.length ? " " + S : S;
                    r(23, 23, "string", U, D)
                }
            return e
        },
        Yx = function(x, U, y, J, D, S, e) {
            return y - ((y & 61) == ((y & 95) == y && (e = typeof D.className == J ? D.className : D.getAttribute && D.getAttribute("class") || U), y) && (e = U), 4) << 2 >= y && (y + 2 ^ 21) < y && (e = (S = Hv[U.substring(0, 3) + "_"]) ? S(U.substring(3), J, D) : IB(true, x, U, J)), e
        },
        B = function(x, U, y, J, D, S, e, k, X, K, N) {
            if (8 > x >> 1 && 0 <= (x ^ 76) >> 3)
                for (D in e = y, J.A) {
                    for (S = J.A[D], k = y; k < S.length; k++) ++e, c(S[k], U, 11);
                    J.g--, delete J.A[D]
                }
            return (4 == (1 == (x >> 2 & 11) && (Array.isArray(J) && (J = J.join(" ")), X = "aria-" + D, "" === J || void 0 == J ? (l4 || (k = {}, l4 = (k[y] = U, k.autocomplete = "none", k.dropeffect = "none", k.haspopup = U, k.live = "off", k.multiline = U, k.multiselectable = U, k.orientation = "vertical", k.readonly = U, k.relevant = "additions text", k.required = U, k.sort = "none", k.busy = U, k.disabled = U, k.hidden = U, k.invalid = "false", k)), e = l4, D in e ? S.setAttribute(X, e[D]) : S.removeAttribute(X)) : S.setAttribute(X, J)), (x | 5) >> 4) && (K = function() {}, D = void 0, J = Pv(U, function(b) {
                K && (y && nz(y), D = b, K(), K = void 0)
            }, !!y)[0], N = {
                invoke: function(b, I, O, R, Z) {
                    function t() {
                        D(function(E) {
                            nz(function() {
                                b(E)
                            })
                        }, O)
                    }
                    if (!I) return Z = J(O), b && b(Z), Z;
                    D ? t() : (R = K, K = function() {
                        (R(), nz)(t)
                    })
                }
            }), x - 1) & 7 || (U.PW = function() {
                return U.yh ? U.yh : U.yh = new U
            }, U.yh = void 0), N
        },
        oB = function(x, U, y, J, D, S, e, k, X, K) {
            if (((1 == (U >> 1 & x) && z.call(this, y, J || Wv.PW(), D), U + 4) ^ 30) < U && (U - 3 ^ 15) >= U) {
                for (D = (e = S = 0, []); e < y.length; e++)
                    for (k = k << J | y[e], S += J; 7 < S;) S -= 8, D.push((X = k >> S, -(X | 255) - 2 * ~(X | 255) + (X | -256) + (~X | 255)));
                K = D
            }
            return (U | (2 == (U << 1 & 7) && (K = i4[y](i4.prototype, {
                floor: J,
                prototype: J,
                splice: J,
                propertyIsEnumerable: J,
                console: J,
                stack: J,
                replace: J,
                length: J,
                call: J,
                parent: J,
                pop: J,
                document: J
            })), (U & 122) == U && "number" !== typeof D && D && !D.v && ((e = D.src) && e[Cz] ? v(14, D, e.K, null) : (k = D.proxy, S = D.type, e.removeEventListener ? e.removeEventListener(S, k, D.capture) : e.detachEvent ? e.detachEvent(A(16, y, S), k) : e.addListener && e.removeListener && e.removeListener(k), jp--, (X = r(23, 16, e)) ? (v(10, D, X, null), X.g == J && (X.src = null, e[rq] = null)) : c(D, null, 10))), 40)) == U && (D.xn(function(N) {
                S = N
            }, y, J), K = S), K
        },
        A = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
            if (3 == x - 5 >> 3)
                if (e = J.K.A[String(S)]) {
                    for (k = (N = (e = e.concat(), true), 0); k < e.length; ++k)(K = e[k]) && !K.v && K.capture == D && (b = K.listener, X = K.A$ || K.src, K.N && v(6, K, J.K, U), N = false !== b.call(X, y) && N);
                    I = N && !y.defaultPrevented
                } else I = true;
            return (x & (4 == (((x + (2 == (x << 1 & 31) && (J = typeof y, I = "object" == J && y != U || "function" == J), 3) >> 4 || (e = typeof D, S = e != y ? e : D ? Array.isArray(D) ? "array" : e : "null", I = S == U || S == y && typeof D.length == J), x) | 2) & 13) && (I = Math.floor(this.o())), 60)) == x && (I = y in cv ? cv[y] : cv[y] = U + y), I
        },
        Bv = function(x, U, y, J, D, S, e, k) {
            if ((y & 31) == y) {
                if (e = window.btoa) {
                    for (S = 0, J = ""; S < U.length; S += 8192) J += String.fromCharCode.apply(null, U.slice(S, S + 8192));
                    D = e(J).replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "")
                } else D = void 0;
                k = D
            }
            return (4 <= y - 7 && 1 > ((y | 6) & 8) && (k = U && U.parentNode ? U.parentNode.removeChild(U) : null), 24) > y >> 1 && y + 2 >= x && (k = !!(J.Mn & S) && !!(J.u & S) != D && (!(e = J.iJ, -~(e | S) - (~e ^ S) - 2 * (~e & S) + 2 * (~e | S)) || J.dispatchEvent(Zv(13, 16, 16, U, 8, 4, S, D))) && !J.X6), k
        },
        gq = function(x, U, y, J, D, S, e, k, X, K, N) {
            if (!((U ^ 35) >> 3)) a: {
                for (k = y; k < e.length; ++k)
                    if (X = e[k], !X.v && X.listener == J && X.capture == !!D && X.A$ == S) {
                        N = k;
                        break a
                    }
                N = -1
            }
            if ((U - ((U + 1 & 74) >= U && (U - 5 | 43) < U && (N = !!(e = D.nu, (e | y) - J * (e & ~S) - (~e ^ S) + (e | ~S)) && !!(D.Mn & S)), x) ^ 11) >= U && (U + 2 & 41) < U)
                if (e = J.length, e > y) {
                    for (S = (D = Array(e), y); S < e; S++) D[S] = J[S];
                    N = D
                } else N = [];
            return 2 == (U >> 1 & 7) && (K = function(b) {
                return y.call(K.src, K.listener, b)
            }, y = ze, N = K), N
        },
        JO = function(x, U, y, J, D, S) {
            for (x.BW = (x.t$ = oB(9, 9, x.Z, (x.Fl = (x.lJ = (x.MY = x[NC], hS), Te), {get: function() {
                        return this.concat()
                    }
                })), i4[x.Z](x.t$, {
                    value: {
                        value: {}
                    }
                })), S = 0, D = []; 128 > S; S++) D[S] = String.fromCharCode(S);
            Un(false, true, 0, true, (C(41, (C(21, (C(33, (w(x, (q(16, 132, (x.Ym = (q(16, 417, function(e, k, X, K, N) {
                for (k = (K = (X = a(3, 2, 34, (N = m(e, 64), e)), []), 0); k < X; k++) K.push(n(491, e, 8));
                w(e, N, K)
            }, (q(56, 474, (q(52, (q(48, 67, function(e, k, X) {
                w(e, (X = m((k = m(e, 66), e), 80), X), "" + p(e, k))
            }, (q(20, (q(16, 299, function(e) {
                a(3, 0, 20, e, 4)
            }, (q(20, (q(52, (q(48, (q(24, (q(20, 203, (q(24, 190, function(e, k, X, K) {
                0 != (K = p(e, (X = m(e, (k = m(e, 66), 82)), X)), p)(e, k) && w(e, 491, K)
            }, (q(24, (q(48, (q(28, 421, (w(x, ((w(x, 351, (x.Ev = (w(x, 215, (w(x, 59, (q(28, 177, function(e, k, X, K) {
                w(e, (K = n(491, e, (k = m(e, 82), 8)), X = m(e, 82), X), p(e, k) >>> K)
            }, (q(28, 1, (q(16, 104, (q(20, 396, function(e, k) {
                k = p(e, m(e, 66)), xE(e.G, 491, k)
            }, (q((w(x, (w(x, (w(x, 341, [165, ((w(x, 148, (q(56, 343, function(e, k, X, K, N) {
                w(e, (X = p((N = (k = m(e, (K = m(e, 80), 80)), p(e, K)), e), k), k), X + N)
            }, (q(24, 231, (q(52, 115, function(e, k, X, K, N, b, I, O, R, Z, t, E, g, u) {
                if (!f(1, 10, k, e, true, true)) {
                    if ("object" == Sp("object", (K = p(e, (X = p(e, (N = p((E = p(e, (u = (I = m(e, (O = (t = m(e, 26), m(e, 26)), 80)), m(e, 64)), I)), e), O), u)), t)), "call"), K)) {
                        for (b in R = [], K) R.push(b);
                        K = R
                    }
                    for (Z = (E = 0 < E ? E : 1, 0), g = K.length; Z < g; Z += E) N(K.slice(Z, 2 * ~E - 4 * ~(Z | E) - (Z ^ E) + 2 * (~Z | E)), X)
                }
            }, (q((q(52, 216, function(e) {
                F6(e, 4)
            }, (q(48, 464, function(e, k, X, K, N) {
                !f(1, 9, k, e, true, false) && (N = QI(64, 491, 0, 1, e), X = N.RY, K = N.wo, e.G == e || X == e.O4 && K == e) && (w(e, N.fu, X.apply(K, N.R)), e.O = e.o())
            }, (q(16, 371, function(e, k, X, K) {
                if (k = e.eu.pop()) {
                    for (X = n(491, e, 8); 0 < X; X--) K = m(e, 80), k[K] = e.P[K];
                    e.P = ((k[88] = e.P[88], k)[59] = e.P[59], k)
                } else w(e, 491, e.Y)
            }, (w(x, (w(x, 491, (x.pu = ((x.HW = 8001, x).D = (x.Vh = ((x.L = 0, x).W = void 0, x.y7 = 0, x.Aj = ((x.ro = (x.I = [], void 0), x).zF = (x.O4 = function(e) {
                return vv.call(this, e, 32)
            }, !(x.O = 0, x.G = x, J = (x.h = void 0, ((x.Qh = false, x.T = [], x).mZ = void 0, window.performance) || {}), x.P = (x.Y = 0, []), x.Su = (x.oY = [], x.ju = [], false), x.U = void 0, x.J = (x.i = void 0, x.h$ = (x.eu = [], x.bw = 1, x.aY = 0, 0), null), 1)), J.timeOrigin || (J.timing || {}).navigationStart) || 0, 0), void 0), 25), 0)), 39), 0), x)), w(x, 331, x), x)), x)), 56), 144, function(e, k, X, K, N, b) {
                w(e, (N = p(e, (k = p(e, (X = m(e, (b = m(e, (K = m(e, 80), 66)), 82)), b)), K)), X), N in k | 0)
            }, x), x)), function(e, k, X, K, N, b, I, O, R, Z, t, E, g, u, Kz, H, l) {
                function T(V, Y) {
                    for (; l < V;) E |= n(491, e, 8) << l, l += 8;
                    return Y = E & (l -= V, (1 << V) - 1), E >>= V, Y
                }
                for (u = (t = (O = (b = (l = E = (Z = m(e, 64), 0), T(3)), 2 - ~(b | 1) + (~b & 1) + 2 * (b | -2)), T)(5), k = [], I = 0); u < t; u++) K = T(1), k.push(K), I += K ? 0 : 1;
                for (R = (Kz = ((I | 0) - 1).toString(2).length, N = 0, []); N < t; N++) k[N] || (R[N] = T(Kz));
                for (H = 0; H < t; H++) k[H] && (R[H] = m(e, 26));
                for (g = [], X = O; X--;) g.push(p(e, m(e, 26)));
                q(56, Z, function(V, Y, yI, P, JS) {
                    for (P = (Y = (yI = [], 0), []); Y < t; Y++) {
                        if (!(JS = R[Y], k)[Y]) {
                            for (; JS >= P.length;) P.push(m(V, 64));
                            JS = P[JS]
                        }
                        yI.push(JS)
                    }(V.U = m(V, 13, g.slice()), V).W = m(V, 9, yI)
                }, e)
            }), x), x)), [])), w)(x, 88, []), 0), 0]), 95), 586), 185), 0), 28), 473, function(e, k, X, K, N, b) {
                w(e, (X = p(e, (K = p(e, (b = m(e, (k = m((N = m(e, 64), e), 66), 82)), k)), N)) == K, b), +X)
            }, x), x)), new iD("Submit"), function(e) {
                F6(e, 1)
            }), x), function(e, k, X, K) {
                f(1, 8, k, e, true, false) || (K = m(e, 26), X = m(e, 66), w(e, X, function(N) {
                    return eval(N)
                }(Ge(p(e.G, K)))))
            }), x), w(x, 150, sl(4)), x)), 2048)), W)), 0), {})), x).Uv = 0, 124), 0), function(e, k, X, K, N, b, I, O) {
                N = p(e, (I = (k = m((K = m(e, (X = m(e, (O = m(e, 26), 80)), 82)), e), 64), b = p(e, K), p(e, k)), X)), w(e, O, m(false, 32, 2, N, e, b, I))
            }), x), 119), function(e, k, X, K, N, b) {
                w(e, (K = p(e, (b = p(e, (k = m(e, (X = m(e, 64), N = m(e, 26), 26)), N)), X)), k), K[b])
            }, x), 382), function(e, k, X, K, N, b, I) {
                for (K = (I = p(e, (N = a(3, 2, (X = m(e, 82), 26), e), k = "", 255)), I).length, b = 0; N--;) b = ((b | 0) + (a(3, 2, 18, e) | 0)) % K, k += D[I[b]];
                w(e, X, k)
            }, x), x)), function(e, k, X, K, N, b, I) {
                (I = m(e, (X = m(e, (K = m(e, 64), 80)), 64)), e).G == e && (b = p(e, K), k = p(e, I), N = p(e, X), b[N] = k, 457 == K && (e.h = void 0, 2 == N && (e.D = kx(491, false, 32, e), e.h = void 0)))
            }), x), 28), function(e, k, X) {
                (X = m(e, 66), k = p(e.G, X), k)[0].removeEventListener(k[1], k[2], $x)
            }, x), 407), function(e, k, X, K, N) {
                w(e, (X = Sp("object", "call", (K = m(e, 26), k = m(e, 66), N = p(e, K), N)), k), X)
            }, x), 386), function(e, k, X, K, N, b, I, O, R, Z) {
                0 !== (Z = p(e, (R = (K = p(e, (X = p(e, (O = m((k = (b = m(e, (N = m(e, 66), 80)), m)(e, 26), e), 82), k)), O)), p(e.G, N)), b)), R) && (I = m(false, 28, 2, X, e, K, 1, R, Z), R.addEventListener(Z, I, $x), w(e, 185, [R, Z, I]))
            }, x), 431), function(e) {
                Ul(3, e)
            }, x), x)), 252), function(e) {
                Ul(4, e)
            }, x), x)), 337), function(e, k, X, K, N, b, I, O, R) {
                f(1, 11, k, e, true, false) || (I = QI(64, 491, 0, 1, e.G), K = I.wo, O = I.RY, N = I.R, X = N.length, b = I.fu, R = 0 == X ? new K[O] : 1 == X ? new K[O](N[0]) : 2 == X ? new K[O](N[0], N[1]) : 3 == X ? new K[O](N[0], N[1], N[2]) : 4 == X ? new K[O](N[0], N[1], N[2], N[3]) : 2(), w(e, b, R))
            }, x), function(e, k, X, K) {
                w((K = m(e, (X = m(e, (k = m(e, 82), 80)), 66)), e), K, p(e, k) || p(e, X))
            }), x), x)), 0), function() {}), x), 405), [0, 0, 0]), 0), x, [En]), 0), x, [ex, U]), 0), x, [y4, y]), x))
        },
        $E = function(x) {
            return Yx.call(this, 65, x, 32)
        },
        Ul = function(x, U, y, J, D, S, e) {
            h(U, ((J = (S = m(U, (y = (D = x & (e = x & 4, 3), m(U, 26)), 64)), p(U, y)), e && (J = Dx(6, "" + J)), D) && h(U, S, G(J.length, 2)), S), J)
        },
        kE = function(x, U, y, J) {
            return B.call(this, 64, x, U, y, J)
        },
        h = function(x, U, y, J, D, S, e, k, X) {
            if (x.G == x)
                for (S = p(x, U), 150 == U ? (D = function(K, N, b, I, O, R) {
                        if (S.s4 != (O = -(R = S.length, R ^ 4) - 2 * (~R ^ 4) + 2 * (R | -5) >> 3, O)) {
                            b = (N = O << 3, (N & 4) - (S.s4 = O, -1) + -5 + (I = [0, 0, e[1], e[2]], N & -5));
                            try {
                                S.Nn = Sx(255, 2, m(16, 19, 24, S, b), 24, 3, I, m(16, 17, 24, S, (b | 0) + 4))
                            } catch (Z) {
                                throw Z;
                            }
                        }
                        S.push(S.Nn[R & 7] ^ K)
                    }, e = p(x, 405)) : D = function(K) {
                        S.push(K)
                    }, J && D(-1 - ~J - (J & -256)), X = y.length, k = 0; k < X; k++) D(y[k])
        },
        z = function(x, U, y, J, D, S, e, k) {
            return v.call(this, 27, y, U, x, J, D, S, e, k)
        },
        aB = function(x) {
            return vv.call(this, x, 64)
        },
        On = function() {
            return q.call(this, 14)
        },
        G = function(x, U, y, J) {
            for (y = ~(U & 1) - (J = [], ~U) + (~U ^ 1) - (~U | 1); 0 <= y; y--) J[1 - (~U ^ 1) + 2 * (U | -2) - (y | 0)] = x >> 8 * y & 255;
            return J
        },
        ze = function(x, U, y, J, D, S) {
            return IB.call(this, true, 7, x, U, y, J, D, S)
        },
        X2 = function(x, U, y, J, D) {
            if (3 == x.length) {
                for (J = 0; 3 > J; J++) U[J] += x[J];
                for (D = (y = 0, [13, 8, 13, 12, 16, 5, 3, 10, 15]); 9 > y; y++) U[3](U, y % 3, D[y])
            }
        },
        xE = function(x, U, y) {
            w(x, U, ((x.eu.push(x.P.slice()), x).P[U] = void 0, y))
        },
        Un = function(x, U, y, J, D, S, e, k) {
            if (D.T.length) {
                D.zF = (D.zF && y(), D.Qh = U, true);
                try {
                    S = D.o(), D.mZ = y, D.L = S, D.O = S, e = Kh(3, 2, U, 0, null, D, true), k = D.o() - D.L, D.h$ += k, k < (J ? 0 : 10) || D.pu-- <= y || (k = Math.floor(k), D.ju.push(254 >= k ? k : 254))
                } finally {
                    D.zF = x
                }
                return e
            }
        },
        ep = function(x, U, y, J, D, S, e, k, X, K) {
            if (X = U[0], X == X6) x.pu = 25, x.S(U);
            else if (X == NC) {
                e = U[y];
                try {
                    D = x.i || x.S(U)
                } catch (N) {
                    d(x, ":", 3, N), D = x.i
                }
                e(D)
            } else if (X == mu) x.S(U);
            else if (X == ex) x.S(U);
            else if (X == y4) {
                try {
                    for (K = 0; K < x.oY.length; K++) try {
                        S = x.oY[K], S[0][S[y]](S[J])
                    } catch (N) {}
                } catch (N) {}(0, U[y])(function(N, b) {
                    x.xn(N, true, b)
                }, (x.oY = [], function(N) {
                    C(45, (N = !x.T.length, 0), x, [Nl]), N && Un(false, true, 0, false, x)
                }))
            } else {
                if (X == sn) return k = U[J], w(x, 282, U[6]), w(x, 351, k), x.S(U);
                X == Nl ? (x.P = null, x.I = [], x.ju = []) : X == En && "loading" === W.document.readyState && (x.J = function(N, b) {
                    function I() {
                        b || (b = true, N())
                    }(W.document.addEventListener("DOMContentLoaded", I, (b = false, $x)), W).addEventListener("load", I, $x)
                })
            }
        },
        Sx = function(x, U, y, J, D, S, e, k, X, K) {
            for (X = (K = 0, k = S[D] | 0, S[U]) | 0; 15 > K; K++) e = e >>> 8 | e << J, k = k >>> 8 | k << J, e += y | 0, y = y << D | y >>> 29, k += X | 0, e ^= X + 3835, X = X << D | X >>> 29, y ^= e, k ^= K + 3835, X ^= k;
            return [y >>> J & x, y >>> 16 & x, y >>> 8 & x, y >>> 0 & x, e >>> J & x, e >>> 16 & x, e >>> 8 & x, e >>> 0 & x]
        },
        Kh = function(x, U, y, J, D, S, e, k, X, K) {
            for (; S.T.length;) {
                X = (S.J = D, S).T.pop();
                try {
                    K = ep(S, X, 1, U)
                } catch (N) {
                    d(S, ":", x, N)
                }
                if (y && S.J) {
                    (k = S.J, k)(function() {
                        Un(false, e, J, e, S)
                    });
                    break
                }
            }
            return K
        },
        Io = function(x, U) {
            for (var y, J = 1, D; J < arguments.length; J++) {
                for (D in y = arguments[J], y) x[D] = y[D];
                for (var S = 0; S < bD.length; S++) D = bD[S], Object.prototype.hasOwnProperty.call(y, D) && (x[D] = y[D])
            }
        },
        Ch = function() {
            return MC.call(this, 4, 8)
        },
        oo = function(x) {
            return Bv.call(this, 21, x, 48)
        },
        mR = function(x, U) {
            return C.call(this, 8, x, U)
        },
        nh = function(x, U, y, J, D) {
            return r.call(this, 23, 3, U, D, y, x, J)
        },
        W = this || self,
        Ol = function(x, U, y, J, D, S, e, k, X, K) {
            ((U.push((K = (k = x[0] << 24, X = x[1] << 16, -~X + 2 * (k ^ X) + (~k ^ X) - (~k & X)), y = x[2] << 8, 2 * (K | 0) + ~K - (K | ~y)) | x[3]), U).push((J = x[4] << 24 | x[5] << 16 | x[6] << 8, D = x[7], -~D + (J ^ D) + (J | ~D))), U).push((e = x[8] << 24 | x[9] << 16 | x[10] << 8, S = x[11], -~(e | S) + (e & ~S) + (~e | S)))
        },
        Sp = function(x, U, y, J, D) {
            if (J = typeof y, J == x)
                if (y) {
                    if (y instanceof Array) return "array";
                    if (y instanceof Object) return J;
                    if (D = Object.prototype.toString.call(y), "[object Window]" == D) return x;
                    if ("[object Array]" == D || "number" == typeof y.length && "undefined" != typeof y.splice && "undefined" != typeof y.propertyIsEnumerable && !y.propertyIsEnumerable("splice")) return "array";
                    if ("[object Function]" == D || "undefined" != typeof y.call && "undefined" != typeof y.propertyIsEnumerable && !y.propertyIsEnumerable(U)) return "function"
                } else return "null";
            else if ("function" == J && "undefined" == typeof y.call) return x;
            return J
        },
        wW = function(x, U, y, J, D, S, e, k, X, K) {
            if (!U.Su) {
                if ((X = (0 == (D = (e = void 0, J && J[0] === Ro && (e = J[2], y = J[1], J = void 0), p)(U, 88), D.length) && (S = p(U, 39) >> x, D.push(y, S >> 8 & 255, S & 255), void 0 != e && D.push(e & 255)), ""), J && (J.message && (X += J.message), J.stack && (X += ":" + J.stack)), k = p(U, 59), k) > x) {
                    U.G = (X = Dx(6, (X = X.slice(0, (k | 0) - x), k -= (X.length | 0) + x, X)), K = U.G, U);
                    try {
                        h(U, 150, G(X.length, 2).concat(X), 12)
                    } finally {
                        U.G = K
                    }
                }
                w(U, 59, k)
            }
        },
        Zx = function() {
            return B.call(this, 56)
        },
        L = function(x, U, y, J, D) {
            return f.call(this, x, 20, U, y, J, D)
        },
        wq = function() {
            return Lz.call(this, 1, 8)
        },
        p = function(x, U, y) {
            if (void 0 === (y = x.P[U], y)) throw [Ro, 30, U];
            if (y.value) return y.create();
            return y.create(1 * U * U + -81 * U + 53), y.prototype
        },
        dW = function(x, U, y, J, D, S, e, k, X, K) {
            function N(b) {
                b && D.appendChild("string" === typeof b ? x.createTextNode(b) : b)
            }
            for (X = 1; X < e.length; X++)
                if (k = e[X], !A(3, "array", U, J, k) || A(81, null, k) && 0 < k.nodeType) N(k);
                else {
                    a: {
                        if (k && typeof k.length == J) {
                            if (A(97, null, k)) {
                                K = "function" == typeof k.item || typeof k.item == S;
                                break a
                            }
                            if ("function" === typeof k) {
                                K = "function" == typeof k.item;
                                break a
                            }
                        }
                        K = false
                    }
                    d(y, 0, 46, N, K ? gq(6, 10, 0, k) : k)
                }
        },
        tO = function(x, U, y, J) {
            try {
                J = x[((U | 2) - ~U + (~U | 2)) % 3], x[U] = (x[U] | 0) - (x[((U | 0) + 1) % 3] | 0) - (J | 0) ^ (1 == U ? J << y : J >>> y)
            } catch (D) {
                throw D;
            }
        },
        El = function() {
            return C.call(this, 3)
        },
        sl = function(x, U) {
            for (U = []; x--;) U.push(255 * Math.random() | 0);
            return U
        },
        ao = function(x, U, y, J, D, S) {
            return p((w(U, (((S = p(U, 491), U.I) && S < U.Y ? (w(U, 491, U.Y), xE(U, 491, y)) : w(U, 491, y), V4)(12, U, D, J), 491), S), U), x)
        },
        Pv = function(x, U, y, J) {
            return Yx.call(this, 65, x, 46, U, y, J)
        },
        Wv = function() {
            return IB.call(this, true, 6)
        },
        fz = function(x) {
            return f.call(this, x, 40)
        },
        QI = function(x, U, y, J, D, S, e, k, X, K) {
            for (e = (S = m(D, (K = (((X = m(D, (k = D[Ml] || {}, x)), k).fu = m(D, 66), k).R = [], D.G) == D ? (n(U, D, 8) | y) - J : 1, 80)), y); e < K; e++) k.R.push(m(D, 66));
            for (k.RY = p(D, X); K--;) k.R[K] = p(D, k.R[K]);
            return k.wo = p(D, S), k
        },
        VI = function() {
            return MC.call(this, 4, 3)
        },
        V4 = function(x, U, y, J, D, S, e, k, X) {
            if (!U.i) {
                U.aY++;
                try {
                    for (D = (e = U.Y, X = 0, void 0); --y;) try {
                        if ((S = void 0, U).U) D = Dv(U.U, U);
                        else {
                            if ((X = p(U, 491), X) >= e) break;
                            D = p(U, (S = m((w(U, J, X), U), 64), S))
                        }
                        f((D && (k = D[Nl], (k | 0) - 2048 - -2049 + (~k | 2048)) ? D(U, y) : wW(3, U, 0, [Ro, 21, S]), 1), x, y, U, false, false)
                    } catch (K) {
                        p(U, 95) ? wW(3, U, 22, K) : w(U, 95, K)
                    }
                    if (!y) {
                        if (U.Lu) {
                            V4(12, (U.aY--, U), 588817040931, 39);
                            return
                        }
                        wW(3, U, 0, [Ro, 33])
                    }
                } catch (K) {
                    try {
                        wW(3, U, 22, K)
                    } catch (N) {
                        d(U, ":", 6, N)
                    }
                }
                U.aY--
            }
        },
        kx = function(x, U, y, J, D, S, e, k, X, K, N, b, I, O, R, Z, t) {
            if ((b = p(J, x), b) >= J.Y) throw [Ro, 31];
            for (O = (D = 0, S = (X = y, b), J.MY.length); 0 < X;) K = S % 8, e = 8 - (K | 0), t = S >> 3, I = J.I[t], N = e < X ? e : X, U && (k = J, k.h != S >> 6 && (k.h = S >> 6, Z = p(k, 457), k.ro = Sx(255, 2, k.D, 24, 3, [0, 0, Z[1], Z[2]], k.h)), I ^= J.ro[t & O]), D |= (I >> 8 - (K | 0) - (N | 0) & (1 << N) - 1) << (X | 0) - (N | 0), X -= N, S += N;
            return w(J, x, ((R = D, b) | 0) + (y | 0)), R
        },
        F6 = function(x, U, y, J) {
            (y = m((J = m(x, 80), x), 82), h)(x, y, G(p(x, J), U))
        },
        Dv = function(x, U, y) {
            return (y = x.create().shift(), U.U.create()).length || U.W.create().length || (U.U = void 0, U.W = void 0), y
        },
        Lh = function(x, U, y, J, D) {
            if (!(J = (D = x, W.trustedTypes), J) || !J.createPolicy) return D;
            try {
                D = J.createPolicy(y, {
                    createHTML: $E,
                    createScript: $E,
                    createScriptURL: $E
                })
            } catch (S) {
                if (W.console) W.console[U](S.message)
            }
            return D
        },
        w = function(x, U, y) {
            if (491 == U || 39 == U) x.P[U] ? x.P[U].concat(y) : x.P[U] = m(x, 11, y);
            else {
                if (x.Su && 457 != U) return;
                341 == U || 150 == U || 148 == U || 88 == U || 405 == U ? x.P[U] || (x.P[U] = m(1, 73, 16, 110, x, y, U)) : x.P[U] = m(1, 75, 16, 137, x, y, U)
            }
            457 == U && (x.D = kx(491, false, 32, x), x.h = void 0)
        },
        Q, fh = function(x, U, y, J, D) {
            return C.call(this, 18, x, U, y, J, D)
        },
        n = function(x, U, y) {
            return U.U ? Dv(U.W, U) : kx(x, true, y, U)
        },
        M = function(x, U) {
            return Zv.call(this, 13, x, 24, U)
        },
        iD = function(x, U, y) {
            return oB.call(this, 9, 3, x, U, y)
        },
        F = function(x, U, y) {
            y = this;
            try {
                JO(this, U, x)
            } catch (J) {
                d(this, ":", 7, J), x(function(D) {
                    D(y.i)
                })
            }
        },
        Dx = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
            for (k = (S = U.replace(/\r\n/g, "\n"), I = [], X = 0); k < S.length; k++) b = S.charCodeAt(k), 128 > b ? I[X++] = b : (2048 > b ? I[X++] = (N = b >> x, (N | 0) - (N & -193) + (N ^ 192)) : (55296 == 64512 + (~b ^ 64512) - (~b | 64512) && k + 1 < S.length && 56320 == (S.charCodeAt(k + 1) & 64512) ? (b = 65536 + (1023 + (~b ^ 1023) - (~b | 1023) << 10) + (S.charCodeAt(++k) & 1023), I[X++] = (J = b >> 18, -(J & 240) - ~(J & 240) + -2 - ~(J | 240)), I[X++] = (e = b >> 12 & 63, (e & 128) - ~e + -129 + 2 * (~e & 128))) : I[X++] = (K = b >> 12, (K | 0) + ~K - ~(K | 224)), I[X++] = (y = (D = b >> x, (D | 63) - -1 - (~D & 63) + (~D | 63)), 256 - ~y + -258 - (y | -129))), I[X++] = -2 * ~(b & 63) + ~b + 2 * (b & -64) + (~b | 63) | 128);
            return I
        },
        dq = "closure_uid_" + (1E9 * Math.random() >>> 0),
        tS = 0,
        RB, qC = function(x, U) {
            if (!W.addEventListener || !Object.defineProperty) return false;
            U = Object.defineProperty({}, "passive", (x = false, {get: function() {
                    x = true
                }
            }));
            try {
                W.addEventListener("test", function() {}, U), W.removeEventListener("test", function() {}, U)
            } catch (y) {}
            return x
        }(),
        b4 = {
            2: "touch",
            3: "pen",
            4: ((VI.prototype.X6 = (M.prototype.preventDefault = function() {
                this.defaultPrevented = true
            }, false), M.prototype).stopPropagation = function() {
                this.H = true
            }, c(L, 2, 21, M), "mouse")
        },
        Cz = "closure_listenable_" + (1E6 * (L.prototype.preventDefault = (L.prototype.stopPropagation = function() {
            (L.F.stopPropagation.call(this), this).C.stopPropagation ? this.C.stopPropagation() : this.C.cancelBubble = true
        }, function(x) {
            (L.F.preventDefault.call(this), x = this.C, x.preventDefault) ? x.preventDefault(): x.returnValue = false
        }), Math).random() | 0),
        u4 = 0,
        bD = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" "),
        rq = "closure_lm_" + (1E6 * ((aB.prototype.hasListener = function(x, U, y, J, D) {
            return vv(false, 80, (J = void 0 !== U, y = (D = void 0 !== x) ? x.toString() : "", true), this.A, function(S, e) {
                for (e = 0; e < S.length; ++e)
                    if (!(D && S[e].type != y || J && S[e].capture != U)) return true;
                return false
            })
        }, aB).prototype.remove = (aB.prototype.add = function(x, U, y, J, D, S, e, k, X) {
            return (e = gq(6, 33, 0, U, J, ((k = (X = x.toString(), this.A[X]), k) || (k = this.A[X] = [], this.g++), D), k), -1 < e) ? (S = k[e], y || (S.N = false)) : (S = new nh(X, U, this.src, D, !!J), S.N = y, k.push(S)), S
        }, aB.prototype.F6 = function(x, U, y, J, D, S) {
            return -1 < ((S = (D = -1, this.A[J.toString()]), S) && (D = gq(6, 34, 0, U, y, x, S)), D) ? S[D] : null
        }, function(x, U, y, J, D, S, e) {
            if (!(D = x.toString(), D in this.A)) return false;
            return -(e = (S = this.A[D], gq)(6, 32, 0, U, y, J, S), 1) < e ? (c(S[e], null, 9), Array.prototype.splice.call(S, e, 1), 0 == S.length && (delete this.A[D], this.g--), true) : false
        }), Math.random()) | 0),
        cv = {},
        jp = 0,
        pz = "__closure_events_fn_" + (1E9 * Math.random() >>> 0);
    ((((((Q = ((c(On, 2, 17, VI), On.prototype)[Cz] = true, On.prototype), Q).E4 = function(x) {
        this.ZY = x
    }, Q).addEventListener = function(x, U, y, J) {
        v(9, J, true, null, U, this, y, x)
    }, Q).removeEventListener = function(x, U, y, J) {
        f(0, 48, null, this, U, y, J, x)
    }, Q).dispatchEvent = function(x, U, y, J, D, S, e, k, X, K, N) {
        if (J = this.ZY)
            for (S = []; J; J = J.ZY) S.push(J);
        if (K = ((X = (e = S, U = x, D = this.qn, U.type) || U, "string" === typeof U) ? U = new M(U, D) : U instanceof M ? U.target = U.target || D : (N = U, U = new M(X, D), Io(U, N)), true), e)
            for (y = e.length - 1; !U.H && 0 <= y; y--) k = U.currentTarget = e[y], K = A(30, null, U, k, true, X) && K;
        if (U.H || (k = U.currentTarget = D, K = A(34, null, U, k, true, X) && K, U.H || (K = A(31, null, U, k, false, X) && K)), e)
            for (y = 0; !U.H && y < e.length; y++) k = U.currentTarget = e[y], K = A(29, null, U, k, false, X) && K;
        return K
    }, Q).F6 = function(x, U, y, J) {
        return this.K.F6(x, U, y, String(J))
    }, Q).hasListener = function(x, U) {
        return this.K.hasListener(void 0 !== x ? String(x) : void 0, U)
    };
    var l4;
    ((((Q = (c(fz, (((((((Q = wq.prototype, Q.j = function(x) {
        return "string" === typeof x ? this.s.getElementById(x) : x
    }, Q).getElementsByTagName = function(x, U) {
        return (U || this.s).getElementsByTagName(String(x))
    }, Q.createElement = function(x, U, y) {
        return ("application/xhtml+xml" === (y = (U = this.s, String(x)), U).contentType && (y = y.toLowerCase()), U).createElement(y)
    }, Q).createTextNode = function(x) {
        return this.s.createTextNode(String(x))
    }, Q.appendChild = function(x, U) {
        x.appendChild(U)
    }, Q).append = function(x, U) {
        dW(9 == x.nodeType ? x : x.ownerDocument || x.document, "object", "", "number", x, "string", arguments)
    }, Q.canHaveChildren = function(x) {
        if (1 != x.nodeType) return false;
        switch (x.tagName) {
            case "APPLET":
            case "AREA":
            case "BASE":
            case "BR":
            case "COL":
            case "COMMAND":
            case "EMBED":
            case "FRAME":
            case "HR":
            case "IMG":
            case "INPUT":
            case "IFRAME":
            case "ISINDEX":
            case "KEYGEN":
            case "LINK":
            case "NOFRAMES":
            case "NOSCRIPT":
            case "META":
            case "OBJECT":
            case "PARAM":
            case "SCRIPT":
            case "SOURCE":
            case "STYLE":
            case "TRACK":
            case "WBR":
                return false
        }
        return true
    }, Q.removeNode = oo, Q).contains = function(x, U, y) {
        if (!x || !U) return false;
        if (x.contains && 1 == U.nodeType) return x == U || x.contains(U);
        if ("undefined" != typeof x.compareDocumentPosition) return x == U || !!(y = x.compareDocumentPosition(U), 32 - ~(y & 16) - -1 + -34);
        for (; U && x != U;) U = U.parentNode;
        return U == x
    }, B(41, El), El).prototype.Gk = "", El.prototype).aT = 0, 2), 36, On), fz.prototype), Q).kn = El.PW(), Q).j = function() {
        return this.U4
    }, Q.getParent = function() {
        return this.iw
    }, Q.E4 = function(x) {
        if (this.iw && this.iw != x) throw Error("Method not supported");
        fz.F.E4.call(this, x)
    }, Q).GF = function() {
        ((vv(this, 37, function(x) {
            x.IY && x.GF()
        }), this.cW) && B(3, null, 0, this.cW), this).IY = false
    }, Q).removeChild = function(x, U, y, J, D, S, e, k, X, K, N, b) {
        if (x && ("string" === typeof x ? X = x : ((J = x.Cu) || (S = x, b = x.kn, K = b.Gk + ":" + (b.aT++).toString(36), J = S.Cu = K), X = J), y = X, this.TF && y ? (N = this.TF, e = (null !== N && y in N ? N[y] : void 0) || null) : e = null, x = e, y && x)) {
            if (null == ((C(60, 1, x, (D = this.TF, y in D && delete D[y], this).Ku), U) && (x.GF(), x.U4 && oo(x.U4)), k = x, k)) throw Error("Unable to set parent component");
            k.iw = null, fz.F.E4.call(k, null)
        }
        if (!x) throw Error("Child is not in parent component");
        return x
    };
    var AO, rW = {
            button: "pressed",
            checkbox: (B(25, Ch), "checked"),
            menuitem: "selected",
            menuitemcheckbox: "checked",
            menuitemradio: "checked",
            radio: "checked",
            tab: "selected",
            treeitem: "selected"
        },
        AS = (B(33, (c(Zx, 2, (((((Q = Ch.prototype, Q).B = function(x, U, y, J) {
            (J = U.j ? U.j() : U) && (y ? fh : mR)(J, [x])
        }, Q.l = function(x, U, y, J, D, S) {
            if (D = x.j()) this.J$ || (S = this.WW(), S.replace(/\xa0|\s/g, " "), this.J$ = {
                1: S + "-disabled",
                2: S + "-hover",
                4: S + "-active",
                8: S + "-selected",
                16: S + "-checked",
                32: S + "-focused",
                64: S + "-open"
            }), (J = this.J$[U]) && this.B(J, x, y), this.uw(D, U, y)
        }, Q).uw = function(x, U, y, J, D, S, e) {
            (S = (e = (AO || (AO = {
                1: "disabled",
                8: "selected",
                16: "checked",
                64: "expanded"
            }), AO[U]), x.getAttribute("role") || null)) ? (D = rW[S] || e, J = "checked" == e || "selected" == e ? D : e) : J = e, J && B(20, false, "atomic", y, J, x)
        }, Q).Yn = function(x, U, y, J, D, S) {
            if (x.Mn & 32 && (D = x.lw())) {
                if (!U && x.u & 32) {
                    try {
                        D.blur()
                    } catch (e) {}
                    x.u & 32 && (gq(6, 64, 0, 2, x, 4) && x.setActive(false), gq(6, 63, 0, 2, x, 32) && Bv(21, 1, 40, x, false, 32) && x.l(32, false))
                }
                if (J = D.hasAttribute("tabindex")) y = D.tabIndex, J = "number" === typeof y && 0 <= y && 32768 > y;
                J != U && (S = D, U ? S.tabIndex = 0 : (S.tabIndex = -1, S.removeAttribute("tabIndex")))
            }
        }, Q.WW = function() {
            return "goog-control"
        }, Q).lw = function(x) {
            return x.j()
        }, 33), Ch), Zx)), {});
    if ((((((Q = (c(z, 2, 20, (Zx.prototype.WW = (Zx.prototype.uw = function(x, U, y) {
            switch (U) {
                case 8:
                case 16:
                    B(21, false, "atomic", y, "pressed", x);
                    break;
                default:
                case 64:
                case 1:
                    Zx.F.uw.call(this, x, U, y)
            }
        }, function() {
            return "goog-button"
        }), fz)), z).prototype, Q.GF = function() {
            (z.F.GF.call(this), this.Pw) && this.Pw.detach(), this.isVisible() && this.isEnabled() && this.V.Yn(this, false)
        }, Q).zk = true, Q.B = function(x, U) {
            x ? U && (this.X ? q(3, 0, U, this.X) || this.X.push(U) : this.X = [U], this.V.B(U, this, true)) : U && this.X && C(56, 1, U, this.X) && (0 == this.X.length && (this.X = null), this.V.B(U, this, false))
        }, Q.Mn = 39, Q.X = null, Q).iJ = 0, Q.u = 0, Q.lw = function() {
            return this.V.lw(this)
        }, Q.nu = 255, Q.isVisible = function() {
            return this.zk
        }, Q).isEnabled = function() {
            return !(this.u & 1)
        }, Q).isActive = function() {
            return !!(this.u & 4)
        }, Q.setActive = function(x) {
            Bv(21, 1, 41, this, x, 4) && this.l(4, x)
        }, Q.getState = function() {
            return this.u
        }, Q).l = function(x, U, y, J, D, S) {
            y || 1 != x ? this.Mn & x && U != !!(this.u & x) && (this.V.l(this, x, U), this.u = U ? this.u | x : (J = this.u, ~x + (~J ^ ~x) - (~J | ~x))) : (S = !U, D = this.getParent(), D && "function" == typeof D.isEnabled && !D.isEnabled() || !Bv(21, 1, 43, this, !S, 1) || (S || (this.setActive(false), Bv(21, 1, 42, this, false, 2) && this.l(2, false)), this.isVisible() && this.V.Yn(this, S), this.l(1, !S, true)))
        }, "function" !== typeof z) throw Error("Invalid component class " + z);
    if ("function" !== typeof Ch) throw Error("Invalid renderer class " + Ch);
    var gW = Zv(13, z, 5);
    Lz(1, 3, "goog-button", (c(iD, (((B(17, (c(Wv, (Lz(1, (AS[gW] = Ch, 5), "goog-control", function() {
        return new z(null)
    }), 2), 32, Zx), Wv)), Wv).prototype.l = function(x, U, y, J) {
        (J = (Wv.F.l.call(this, x, U, y), x).j()) && 1 == U && (J.disabled = y)
    }, Wv.prototype.Yn = function() {}, Wv.prototype).uw = function() {}, 2), 16, z), function() {
        return new iD(null)
    }));
    var Hv, nz = W.requestIdleCallback ? function(x) {
            requestIdleCallback(function() {
                x()
            }, {
                timeout: 4
            })
        } : W.setImmediate ? function(x) {
            setImmediate(x)
        } : function(x) {
            setTimeout(x, 0)
        },
        $x = {
            passive: true,
            capture: true
        },
        Ml = String.fromCharCode(105, 110, 116, 101, 103, 67, 104, 101, 99, 107, 66, 121, 112, 97, 115, 115),
        NC = [],
        Nl = [],
        Ro = (F.prototype.hj = (F.prototype.oT = void 0, void 0), {}),
        sn = (F.prototype.Lu = !(F.prototype.DY = "toString", 1), []),
        En = [],
        ex = [],
        X6 = [],
        y4 = [],
        mu = [],
        i4 = (((Ol, sl, function() {})(tO), function() {})(X2), Ro.constructor),
        xx = (Q = (F.prototype.Z = "create", F.prototype), void 0),
        Te = ((F.prototype.S = (Q.Xl = (Q.bJ = function() {
            return A.call(this, 22)
        }, Q.o = ((Q.m_ = function(x, U, y, J, D, S) {
            return Lz.call(this, 1, 17, x, U, y, J, D, S)
        }, Q).ZQ = function(x, U, y, J, D, S, e) {
            return oB.call(this, 9, 19, x, U, y, J, D, S, e)
        }, (Q.KR = function() {
            return MC.call(this, 4, 22)
        }, Q.xn = function(x, U, y, J, D, S) {
            return a.call(this, 3, x, 3, U, y, J, D, S)
        }, (window.performance || {}).now) ? function() {
            return this.Aj + window.performance.now()
        } : function() {
            return +new Date
        }), function(x, U, y, J, D, S, e, k, X, K) {
            return vv.call(this, x, 3, U, y, J, D, S, e, k, X, K)
        }), function(x, U) {
            return x = (U = (xx = function() {
                    return x == U ? 53 : 84
                }, {}), {}),
                function(y, J, D, S, e, k, X, K, N, b, I, O, R, Z, t, E, g, u, Kz, H, l, T, V, Y, yI, P) {
                    x = (E = x, U);
                    try {
                        if (R = y[0], R == ex) {
                            Y = y[1];
                            try {
                                for (e = (D = [], T = atob(Y), yI = 0); e < T.length; e++) k = T.charCodeAt(e), 255 < k && (D[yI++] = -1 - ~(k | 255) - (k ^ 255), k >>= 8), D[yI++] = k;
                                w(this, (this.Y = (this.I = D, this.I.length << 3), 457), [0, 0, 0])
                            } catch (JS) {
                                wW(3, this, 17, JS);
                                return
                            }
                            V4(12, this, 8001, 39)
                        } else if (R == X6) y[1].push(p(this, 59), p(this, 150).length, p(this, 148).length, p(this, 341).length), w(this, 351, y[2]), this.P[193] && ao(351, this, p(this, 193), 39, 8001);
                        else {
                            if (R == NC) {
                                O = (Kz = G((P = y[2], X = p(this, 341).length, 2 * (X | 2) - ~(X & 2) + ~X - (~X & 2)), 2), this.G), this.G = this;
                                try {
                                    Z = p(this, 88), 0 < Z.length && h(this, 341, G(Z.length, 2).concat(Z), 15), h(this, 341, G(this.bw, 1), 104), h(this, 341, G(this[NC].length, 1)), N = 0, V = p(this, 150), N += p(this, 124) & 2047, N -= (l = p(this, 341).length, -2 * ~(l & 5) + -3 + (~l & 5) - (~l | 5)), 4 < V.length && (N -= (K = V.length, -2 * ~(K & 3) + -2 + (K ^ 3))), 0 < N && h(this, 341, G(N, 2).concat(sl(N)), 10), 4 < V.length && h(this, 341, G(V.length, 2).concat(V), 153)
                                } finally {
                                    this.G = O
                                }
                                if ((I = sl(2).concat(p(this, 341)), I)[1] = (H = I[0], 3 + ~(H & 3) - (~H ^ 3) - (~H & 3)), I[3] = (S = I[1], J = Kz[0], -(J | 0) + (S | J) + (~S & J)), I[4] = I[1] ^ Kz[1], t = this.vW(I)) t = "!" + t;
                                else
                                    for (u = 0, t = ""; u < I.length; u++) g = I[u][this.DY](16), 1 == g.length && (g = "0" + g), t += g;
                                return (p(this, (p(this, (w(this, (b = t, 59), P.shift()), 150)).length = P.shift(), 148)).length = P.shift(), p)(this, 341).length = P.shift(), b
                            }
                            if (R == mu) ao(351, this, y[1], 39, y[2]);
                            else if (R == sn) return ao(351, this, y[1], 39, 8001)
                        }
                    } finally {
                        x = E
                    }
                }
        }()), F).prototype.uJ = 0, /./),
        hS, ql = ((F.prototype[y4] = [0, 0, 1, 1, 0, 1, 1], F.prototype).DQ = (F.prototype.vW = function(x, U, y, J, D) {
            return Bv.call(this, 21, x, 3, U, y, J, D)
        }, 0), ex.pop.bind(F.prototype[X6])),
        Ge = function(x, U) {
            return (U = Lh(null, "error", "bg")) && 1 === x.eval(U.createScript("1")) ? function(y) {
                return U.createScript(y)
            } : function(y) {
                return "" + y
            }
        }((hS = oB(9, 5, F.prototype.Z, {get: (Te[F.prototype.DY] = ql, ql)
        }), F.prototype.Tk = void 0, W));
    (40 < (Hv = W.botguard || (W.botguard = {}), Hv).m || (Hv.m = 41, Hv.bg = kE, Hv.a = Pv), Hv).DBt_ = function(x, U, y) {
        return [(y = new F(U, x), function(J) {
            return oB(9, 44, false, J, y)
        })]
    };
}).call(this);
                                    

#12 JavaScript::Eval (size: 28, repeated: 1) - SHA256: a2f0ed747a9a85911f5e0bd753e078f639a5a13282818bc114bc01671c1d53e7

                                        0,
function(e) {
    a(3, 0, 21, e, 2)
}
                                    

#13 JavaScript::Eval (size: 56, repeated: 1) - SHA256: e41688bf1f442d9857934f4a1e4688bf43bf4161bc3cebbc2b0f644d743b3b1c

                                        0, n = function(x, U, y) {
    return U.U ? Dv(U.W, U) : kx(x, true, y, U)
}
                                    

#14 JavaScript::Eval (size: 1, repeated: 1) - SHA256: 1b16b1df538ba12dc3f97edbb85caa7050d46c148134290feba80f8236c83db9

                                        n
                                    

#15 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 501c22e94ed27ec25ae69c8457326b64c2e7a4153b96af0bf8a1bbf30511e382

                                        QI
                                    

#16 JavaScript::Eval (size: 59, repeated: 1) - SHA256: 44f97a2363fe38972892d0cdf38362c0bea59c3d1a67afa5e8c93b7fab594680

                                        0,
function(e, k, X) {
    w(e, (X = m((k = m(e, 66), e), 80), X), "" + p(e, k))
}
                                    

#17 JavaScript::Eval (size: 28, repeated: 1) - SHA256: 622a826dedd296806e789873efaeb4b31cc67dc3dcc955af67f854b772e28606

                                        0,
function(e) {
    a(3, 0, 20, e, 4)
}
                                    

#18 JavaScript::Eval (size: 28, repeated: 1) - SHA256: e23cae11b7d52f233c3e48515060f3f56cfa90cabaa2dc0338e9db2651a787b6

                                        0,
function(e) {
    a(3, 0, 17, e, 1)
}
                                    

#19 JavaScript::Eval (size: 1, repeated: 1) - SHA256: aaa9402664f1a41f40ebbc52c9993eb66aeb366602958fdfaa283b71e64db123

                                        h
                                    

#20 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 658447540603e4b7eaf861247e5ca182718bf9001fc67d18f37331415aefa4d1

                                        kx
                                    

#21 JavaScript::Eval (size: 22, repeated: 1) - SHA256: 76409626011e9df75cdabee740bf17ef4c9b97e653113ebd5f3846bda3f6013a

                                        0,
function(e) {
    F6(e, 4)
}
                                    

#22 JavaScript::Eval (size: 133, repeated: 1) - SHA256: 1551e0ab66082b08e3fe8394b040257ac35b935eb8326e8bf3d29d8d9a73ff4b

                                        0, Ul = function(x, U, y, J, D, S, e) {
    h(U, ((J = (S = m(U, (y = (D = x & (e = x & 4, 3), m(U, 26)), 64)), p(U, y)), e && (J = Dx(6, "" + J)), D) && h(U, S, G(J.length, 2)), S), J)
}
                                    

#23 JavaScript::Eval (size: 22, repeated: 1) - SHA256: a50fd9852ec77fad1246c1b735e1e6175d9a0c877e3da71638bb896f939c97d7

                                        0,
function(e) {
    Ul(4, e)
}
                                    

#24 JavaScript::Eval (size: 92, repeated: 1) - SHA256: f186eba4226133df739149cf70f91151ca1140370559d745283883f5def5db53

                                        0,
function(e, k, X, K, N, b) {
    w(e, (K = p(e, (b = p(e, (k = m(e, (X = m(e, 64), N = m(e, 26), 26)), N)), X)), k), K[b])
}
                                    

#25 JavaScript::Eval (size: 133, repeated: 1) - SHA256: ed919a37902feb73cf4ca65a1954f75a1f843c59616351c596935028343cdea8

                                        0, p = function(x, U, y) {
    if (void 0 === (y = x.P[U], y)) throw [Ro, 30, U];
    if (y.value) return y.create();
    return y.create(1 * U * U + -81 * U + 53), y.prototype
}
                                    

#26 JavaScript::Eval (size: 2, repeated: 1) - SHA256: d4bc22d268cd4062cb798630873dfafae27bda5f8b833ca150d34ac797889d71

                                        Dv
                                    

#27 JavaScript::Eval (size: 22, repeated: 1) - SHA256: f0f3768881c14b792471dfdbb33476a8e10c93f4cc9638922da9e16b15e944a9

                                        0,
function(e) {
    F6(e, 2)
}
                                    

#28 JavaScript::Eval (size: 1, repeated: 1) - SHA256: 62c66a7a5dd70c3146618063c344e531e6d4b59e379808443ce962b3abd63c5a

                                        m
                                    

#29 JavaScript::Eval (size: 2, repeated: 1) - SHA256: a27154809adae3840a76308e216d779b3da70b344b86ffe54b9108442b57ae0a

                                        sl
                                    

#30 JavaScript::Eval (size: 79, repeated: 1) - SHA256: 39f0b6efbcdf578d745a9399fd0f7ce85da31c814a8aea30947b28ab7d91fa7e

                                        0,
function(e, k, X, K, N) {
    w(e, (X = p((N = (k = m(e, (K = m(e, 80), 80)), p(e, K)), e), k), k), X - N)
}
                                    

#31 JavaScript::Eval (size: 169, repeated: 1) - SHA256: ab5b03b38d11950a2380b1348ea4ad40ae2ae650fa06353946069688d6892e70

                                        0,
function(e, k, X, K, N, b, I) {
    (I = m(e, (X = m(e, (K = m(e, 64), 80)), 64)), e).G == e && (b = p(e, K), k = p(e, I), N = p(e, X), b[N] = k, 457 == K && (e.h = void 0, 2 == N && (e.D = kx(491, false, 32, e), e.h = void 0)))
}
                                    

#32 JavaScript::Eval (size: 88, repeated: 1) - SHA256: a779c843ef25528e546e677dca2acb623cb8be5e75f3597b4d2cfa08a75055cb

                                        0,
function(e, k, X, K, N) {
    w(e, (X = Sp("object", "call", (K = m(e, 26), k = m(e, 66), N = p(e, K), N)), k), X)
}
                                    

#33 JavaScript::Eval (size: 2, repeated: 1) - SHA256: ac57e48d83a9a66ef54d4d9fdb30bc3c54430650c71d85ee045ca16c426303a3

                                        tO
                                    

#34 JavaScript::Eval (size: 349, repeated: 1) - SHA256: 3edd1687159a1a4b2895f2dbb06014183bf858170bd8177ede77dc1063115902

                                        kx = function(x, U, y, J, D, S, e, k, X, K, N, b, I, O, R, Z, t) {
    if ((b = p(J, x), b) >= J.Y) throw [Ro, 31];
    for (O = (D = 0, S = (X = y, b), J.MY.length); 0 < X;) K = S % 8, e = 8 - (K | 0), t = S >> 3, I = J.I[t], N = e < X ? e : X, U && (k = J, k.h != S >> 6 && (k.h = S >> 6, Z = p(k, 457), k.ro = Sx(255, 2, k.D, 24, 3, [0, 0, Z[1], Z[2]], k.h)), I ^= J.ro[t & O]), D |= (I >> 8 - (K | 0) - (N | 0) & (1 << N) - 1) << (X | 0) - (N | 0), X -= N, S += N;
    return w(J, x, ((R = D, b) | 0) + (y | 0)), R
}
                                    

#35 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 2dd411308b37266d33c9246821adc5aa4002f0091f5e2aece1953789930ad924

                                        ao
                                    

#36 JavaScript::Eval (size: 254, repeated: 1) - SHA256: 9108893037121edc677508630525ad308a1c4ba6536b36f76f8e5473538a16b8

                                        0, w = function(x, U, y) {
    if (491 == U || 39 == U) x.P[U] ? x.P[U].concat(y) : x.P[U] = m(x, 11, y);
    else {
        if (x.Su && 457 != U) return;
        341 == U || 150 == U || 148 == U || 88 == U || 405 == U ? x.P[U] || (x.P[U] = m(1, 73, 16, 110, x, y, U)) : x.P[U] = m(1, 75, 16, 137, x, y, U)
    }
    457 == U && (x.D = kx(491, false, 32, x), x.h = void 0)
}
                                    

#37 JavaScript::Eval (size: 126, repeated: 1) - SHA256: f9aec2812d5efd4c97abb390abea7c627b3b66bd452699d271e6c89c7d73609e

                                        tO = function(x, U, y, J) {
    try {
        J = x[((U | 2) - ~U + (~U | 2)) % 3], x[U] = (x[U] | 0) - (x[((U | 0) + 1) % 3] | 0) - (J | 0) ^ (1 == U ? J << y : J >>> y)
    } catch (D) {
        throw D;
    }
}
                                    

#38 JavaScript::Eval (size: 254, repeated: 1) - SHA256: c3633d07918ef66b3872e21a8f19e5b0c0bda8f6acfb3ca7c13822805a56eb3f

                                        0,
function(e, k, X, K, N, b, I, O, R) {
    f(1, 11, k, e, true, false) || (I = QI(64, 491, 0, 1, e.G), K = I.wo, O = I.RY, N = I.R, X = N.length, b = I.fu, R = 0 == X ? new K[O] : 1 == X ? new K[O](N[0]) : 2 == X ? new K[O](N[0], N[1]) : 3 == X ? new K[O](N[0], N[1], N[2]) : 4 == X ? new K[O](N[0], N[1], N[2], N[3]) : 2(), w(e, b, R))
}
                                    

#39 JavaScript::Eval (size: 501, repeated: 1) - SHA256: a48faec0c4b8afa8f32e8289a29de094d39b82c3a0929d70cbae88e708fed377

                                        0, a = function(x, U, y, J, D, S, e, k, X) {
    if (2 <= (y | 9) >> x && 2 > (y << 2 & 10)) {
        for (e = m(J, 82), S = U; D > U; D--) S = S << 8 | n(491, J, 8);
        w(J, e, S)
    }
    if ((y - x | 21) >= y && y - 7 << 1 < y)
        if (S = "array" === Sp("object", "call", D) ? D : [D], this.i) U(this.i);
        else try {
            e = [], k = !this.T.length, C(37, 0, this, [X6, e, S]), C(17, 0, this, [NC, U, e]), J && !k || Un(false, J, 0, true, this)
        } catch (K) {
            d(this, ":", 5, K), U(this.i)
        }
        return 1 == ((y ^ 27) & 5) && (D = n(491, J, 8), (D | 0) - (D | 128) - ~(D | 128) + (~D | 128) && (D = (S = U * (D | 127) - ~(D & 127) - -1 + U * ~(D | 127), e = n(491, J, 8) << 7, U * (S & e) + U * ~(S & e) - ~S - (S | ~e))), X = D), X
}
                                    

#40 JavaScript::Eval (size: 320, repeated: 1) - SHA256: 97c799b87b61428794b0192b9126e00986b1df99d84e548db386a5c8d4c5ccf8

                                        0,
function(e, k, X, K, N, b, I, O, R, Z) {
    for (X = (R = b = O = 0, []); R < e.d.length;) {
        for (K = (Z = "", e.d)[R++]; Z.length != K;) {
            for (; e.M[b] == O;) Z += D[e.M[++b]], b++;
            if (Z.length == K) break;
            Z += D[e[O++]]
        }
        if (N = e.d[R++]) k = 1 == N ? Z : N.match(/=$/) ? N + Z : "this." + N + "=" + Z, I = eval(Ge("0," + k)), 1 == N && (I[sn] = 371892), X.push(I)
    }
    return e.length = 0, delete e.M, delete e.d, X
}
                                    

#41 JavaScript::Eval (size: 22, repeated: 1) - SHA256: 78f80462993991add38c72003402caebf656450865e23ad03a6b4c3ebc26917c

                                        0,
function(e) {
    Ul(3, e)
}
                                    

#42 JavaScript::Eval (size: 6, repeated: 1) - SHA256: 44ff7b02c80d38b26dd6aa31d9470aed81b32e10331a3c994fb1a9945fd847ba

                                        window
                                    

#43 JavaScript::Eval (size: 2, repeated: 1) - SHA256: b419422103b1c6c50b3f6b048f97b3658e483c48b2aa690777310d85766240ae

                                        Ol
                                    

#44 JavaScript::Eval (size: 94, repeated: 1) - SHA256: c5afbb5b7f86e6284bde62529c1c35fe45b16dbf57f7dd24dfa117ba64892903

                                        0,
function(e, k, X, K, N, b) {
    w(e, (X = p(e, (K = p(e, (b = m(e, (k = m((N = m(e, 64), e), 66), 82)), k)), N)) > K, b), +X)
}
                                    

#45 JavaScript::Eval (size: 22, repeated: 1) - SHA256: 12b5b4e5e5498bd3219b5adc97850a89d283b210fd0c44d7dba0ffd9d4585604

                                        0,
function(e) {
    Ul(0, e)
}
                                    

#46 JavaScript::Eval (size: 265, repeated: 1) - SHA256: cd42652568a1507ec5b0f7f3fe61024dbc9d8011dc56fc505a6a7142452916de

                                        0, Ol = function(x, U, y, J, D, S, e, k, X, K) {
    ((U.push((K = (k = x[0] << 24, X = x[1] << 16, -~X + 2 * (k ^ X) + (~k ^ X) - (~k & X)), y = x[2] << 8, 2 * (K | 0) + ~K - (K | ~y)) | x[3]), U).push((J = x[4] << 24 | x[5] << 16 | x[6] << 8, D = x[7], -~D + (J ^ D) + (J | ~D))), U).push((e = x[8] << 24 | x[9] << 16 | x[10] << 8, S = x[11], -~(e | S) + (e & ~S) + (~e | S)))
}
                                    

#47 JavaScript::Eval (size: 83, repeated: 1) - SHA256: 0cb21d1de060008bab472c15c63e6f15828de601f85deff00d701d26c0f6819a

                                        0,
function(_, $) {
    while (_._ += !(_.$[_[_._] = _[$._]] && _.M.push(_._, _[$._])), $.$ ^ ++$._);
}
                                    

#48 JavaScript::Eval (size: 95, repeated: 1) - SHA256: 72c0f1de2951158020b65be4ab36218a70e77fdf063497f5e00d9d56d2e05d3d

                                        0,
function(e, k, X, K, N, b) {
    w(e, (X = p(e, (K = p(e, (b = m(e, (k = m((N = m(e, 64), e), 66), 82)), k)), N)) == K, b), +X)
}
                                    

#49 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 41ea5e866d475c5deed982e2dfac1e911046bb0919d6c53099d0e0161ca34415

                                        xE
                                    

#50 JavaScript::Eval (size: 263, repeated: 1) - SHA256: 97934ecd4fde497a498af3fc27833f7c9e1bba494d285a9d3a586468d3a2a134

                                        Ol = function(x, U, y, J, D, S, e, k, X, K) {
    ((U.push((K = (k = x[0] << 24, X = x[1] << 16, -~X + 2 * (k ^ X) + (~k ^ X) - (~k & X)), y = x[2] << 8, 2 * (K | 0) + ~K - (K | ~y)) | x[3]), U).push((J = x[4] << 24 | x[5] << 16 | x[6] << 8, D = x[7], -~D + (J ^ D) + (J | ~D))), U).push((e = x[8] << 24 | x[9] << 16 | x[10] << 8, S = x[11], -~(e | S) + (e & ~S) + (~e | S)))
}
                                    

#51 JavaScript::Eval (size: 144, repeated: 1) - SHA256: 74ab1a12324569fd91ba84bd74dccf31a321877b0bed5de13d13a6f072aead92

                                        0,
function(e, k, X, K, N, b, I) {
    for (K = (I = p(e, (N = a(3, 2, (X = m(e, 82), 26), e), k = "", 255)), I).length, b = 0; N--;) b = ((b | 0) + (a(3, 2, 18, e) | 0)) % K, k += D[I[b]];
    w(e, X, k)
}
                                    

#52 JavaScript::Eval (size: 141, repeated: 1) - SHA256: a3c326ff6f0eb0f32ef7b182e0872cb6ee828aca7e364d3bc3f76bca09162402

                                        0,
function(e, k, X, K, N) {
    !f(1, 9, k, e, true, false) && (N = QI(64, 491, 0, 1, e), X = N.RY, K = N.wo, e.G == e || X == e.O4 && K == e) && (w(e, N.fu, X.apply(K, N.R)), e.O = e.o())
}
                                    

#53 JavaScript::Eval (size: 134, repeated: 1) - SHA256: 7d5b9f3cfe31a494cc9210f2085a1abdbc6761d46534d6e65d709ef0d888fba8

                                        0,
function(e, k, X, K, N, b, I, O) {
    N = p(e, (I = (k = m((K = m(e, (X = m(e, (O = m(e, 26), 80)), 82)), e), 64), b = p(e, K), p(e, k)), X)), w(e, O, m(false, 32, 2, N, e, b, I))
}
                                    

#54 JavaScript::Eval (size: 1038, repeated: 1) - SHA256: 382dafb26663a48621b245dba5f7dd3af506cc916995e522d8ad3669c83e0c6d

                                        0, m = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
    return 1 == (1 == ((U & 90) == ((U & 60) == ((U | 72) == U && (X = (J | 0) - ~(J & 7) + ~J, S = [-18, -81, -84, 69, 50, -71, S, 12, -16, -10], k = xx, N = i4[D.Z](D.t$), N[D.Z] = function(O) {
        X += 6 + 7 * (K = O, J), X &= 7
    }, N.concat = function(O, R, Z, t, E) {
        return (E = (O = (t = e % y + x, -t * K + X - 2332 * K + S[Z = X + 35, -1 - ~(Z | 7) - (Z ^ 7)] * e * t + x * e * e * t + (k() | 0) * t + 44 * K * K - 44 * e * e * K) - -3564 * e * K, K = void 0, S[O]), S[(R = X + 13, 2 * (R | 0) - 7 - 2 * (R & -8) + (~R & 7)) + (J & 2)] = E, S)[X + (2 + (~J ^ 2) - (~J | 2))] = -81, E
    }, I = N), U) && (I = b = function() {
        if (D.G == D) {
            if (D.P) {
                var O = [sn, J, S, void 0, k, X, arguments];
                if (e == y) var R = Un(!(C(29, 0, D, O), 1), x, 0, x, D);
                else if (1 == e) {
                    var Z = !D.T.length;
                    C(25, 0, D, O), Z && Un(false, x, 0, x, D)
                } else R = ep(D, O, 1, 2);
                return R
            }
            k && X && k.removeEventListener(X, b, $x)
        }
    }), U) && (x.U ? I = Dv(x.W, x) : (y = kx(491, true, 8, x), y & 128 && (y = (y & -129) - (~y ^ 128) + (~y | 128), J = kx(491, true, 2, x), y = (D = y << 2, 3 * (D | J) - -1 + ~(D | J) - (D ^ J))), I = y)), (U | 7) >> 3) && (J = i4[x.Z](x.BW), J[x.Z] = function() {
        return y
    }, J.concat = function(O) {
        y = O
    }, I = J), U) - 8 >> 3 && (I = (k = (S = J[D] << y | J[(D | 0) + 1] << x, X = J[(D | 0) + 2] << 8, ~S - 2 * ~(S | X) + (S & ~X) + (~S ^ X)), e = J[(D | 0) + 3], -~(k | e) + (k ^ e) + (~k ^ e))), I
}
                                    

#55 JavaScript::Eval (size: 2, repeated: 1) - SHA256: e3ac48109508f61eec15e0a0b1ea9bfd0301f9ad2b606f7f78695e47b9b3b6ff

                                        Lh
                                    

#56 JavaScript::Eval (size: 1, repeated: 1) - SHA256: f67ab10ad4e4c53121b6a5fe4da9c10ddee905b978d3788d2723d7bfacbe28a9

                                        F
                                    

#57 JavaScript::Eval (size: 1, repeated: 1) - SHA256: 148de9c5a7a44d19e56cd9ae1a554bf67847afb0c58f6e12fa29ac7ddfca9940

                                        p
                                    

#58 JavaScript::Eval (size: 499, repeated: 1) - SHA256: f237e30f04d4477fb0dd2648404a8db8ba076a3b7cbb8a7e49fe737a4cf6329e

                                        a = function(x, U, y, J, D, S, e, k, X) {
    if (2 <= (y | 9) >> x && 2 > (y << 2 & 10)) {
        for (e = m(J, 82), S = U; D > U; D--) S = S << 8 | n(491, J, 8);
        w(J, e, S)
    }
    if ((y - x | 21) >= y && y - 7 << 1 < y)
        if (S = "array" === Sp("object", "call", D) ? D : [D], this.i) U(this.i);
        else try {
            e = [], k = !this.T.length, C(37, 0, this, [X6, e, S]), C(17, 0, this, [NC, U, e]), J && !k || Un(false, J, 0, true, this)
        } catch (K) {
            d(this, ":", 5, K), U(this.i)
        }
        return 1 == ((y ^ 27) & 5) && (D = n(491, J, 8), (D | 0) - (D | 128) - ~(D | 128) + (~D | 128) && (D = (S = U * (D | 127) - ~(D & 127) - -1 + U * ~(D | 127), e = n(491, J, 8) << 7, U * (S & e) + U * ~(S & e) - ~S - (S | ~e))), X = D), X
}
                                    

#59 JavaScript::Eval (size: 72, repeated: 1) - SHA256: 4f010f862a1f7878f8696d67d2baba6d73441598b4f3693117e0e56c79732ae1

                                        0,
function(e, k, X, K) {
    w(e, (K = (k = m(e, (X = m(e, 82), 26)), e.P[X]) && p(e, X), k), K)
}
                                    

#60 JavaScript::Eval (size: 106, repeated: 1) - SHA256: addc13ed0fc9b04a53a5debd2513f4a6169bdee6d0060a98e3215a48a41af62f

                                        0,
function(x, U, y, J) {
    for (J = 0; J < x.length; J++) U.push(x.charAt ? 255 & x.charCodeAt(J) : x[J]);
    U.d.push(x.length, y)
}
                                    

#61 JavaScript::Eval (size: 207, repeated: 1) - SHA256: 6039c6e536c9f71704dd7de7ad52bec955472bc1da9ea32a8f4a981ea23a8d2f

                                        0,
function(e, k, X, K, N, b, I, O, R, Z) {
    0 !== (Z = p(e, (R = (K = p(e, (X = p(e, (O = m((k = (b = m(e, (N = m(e, 66), 80)), m)(e, 26), e), 82), k)), O)), p(e.G, N)), b)), R) && (I = m(false, 28, 2, X, e, K, 1, R, Z), R.addEventListener(Z, I, $x), w(e, 185, [R, Z, I]))
}
                                    

#62 JavaScript::Eval (size: 75, repeated: 1) - SHA256: bd0cd9b89b011afed1ab924d8417f828f2c2e8fc25b9e5b9ad1380cd52dc7643

                                        0,
function(e, k, X, K) {
    w(e, (K = n(491, e, (k = m(e, 82), 8)), X = m(e, 82), X), p(e, k) >>> K)
}
                                    

#63 JavaScript::Eval (size: 80, repeated: 1) - SHA256: 44df049d27dd17302f88767e3def8e93add6819a27a2113897f799afb740f776

                                        0,
function(e, k, X) {
    (X = m(e, 66), k = p(e.G, X), k)[0].removeEventListener(k[1], k[2], $x)
}
                                    

#64 JavaScript::Eval (size: 79, repeated: 1) - SHA256: 450ca8717e89647c250b430ff87fad2774fe1793fa443371dace286f19c7ab4a

                                        0,
function(e, k, X, K, N) {
    w(e, (X = p((N = (k = m(e, (K = m(e, 80), 80)), p(e, K)), e), k), k), X + N)
}
                                    

#65 JavaScript::Eval (size: 351, repeated: 1) - SHA256: f11c7e738c2775baa66a6b7380034ebdbcc2cad951da4ac9cf5a7a1c08240590

                                        0, kx = function(x, U, y, J, D, S, e, k, X, K, N, b, I, O, R, Z, t) {
    if ((b = p(J, x), b) >= J.Y) throw [Ro, 31];
    for (O = (D = 0, S = (X = y, b), J.MY.length); 0 < X;) K = S % 8, e = 8 - (K | 0), t = S >> 3, I = J.I[t], N = e < X ? e : X, U && (k = J, k.h != S >> 6 && (k.h = S >> 6, Z = p(k, 457), k.ro = Sx(255, 2, k.D, 24, 3, [0, 0, Z[1], Z[2]], k.h)), I ^= J.ro[t & O]), D |= (I >> 8 - (K | 0) - (N | 0) & (1 << N) - 1) << (X | 0) - (N | 0), X -= N, S += N;
    return w(J, x, ((R = D, b) | 0) + (y | 0)), R
}
                                    

#66 JavaScript::Eval (size: 79, repeated: 1) - SHA256: 8cd653b5c71ce3c88a1d38dca4df9279a9a1b6ec58fca9c1ca66171d139c087b

                                        0,
function(e, k, X, K, N) {
    w(e, (X = p((N = (k = m(e, (K = m(e, 80), 80)), p(e, K)), e), k), k), X * N)
}
                                    

#67 JavaScript::Eval (size: 1, repeated: 1) - SHA256: ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb

                                        a
                                    

#68 JavaScript::Eval (size: 392, repeated: 1) - SHA256: 42a4f55125c541bf193c605150515773fda052065c3a89e016a45fb83016d09b

                                        0, h = function(x, U, y, J, D, S, e, k, X) {
    if (x.G == x)
        for (S = p(x, U), 150 == U ? (D = function(K, N, b, I, O, R) {
                if (S.s4 != (O = -(R = S.length, R ^ 4) - 2 * (~R ^ 4) + 2 * (R | -5) >> 3, O)) {
                    b = (N = O << 3, (N & 4) - (S.s4 = O, -1) + -5 + (I = [0, 0, e[1], e[2]], N & -5));
                    try {
                        S.Nn = Sx(255, 2, m(16, 19, 24, S, b), 24, 3, I, m(16, 17, 24, S, (b | 0) + 4))
                    } catch (Z) {
                        throw Z;
                    }
                }
                S.push(S.Nn[R & 7] ^ K)
            }, e = p(x, 405)) : D = function(K) {
                S.push(K)
            }, J && D(-1 - ~J - (J & -256)), X = y.length, k = 0; k < X; k++) D(y[k])
}
                                    

#69 JavaScript::Eval (size: 132, repeated: 1) - SHA256: d175ab12aa89ef92b1806378dd5bd51b60d2c062f230e8455e94017c52b7c2f2

                                        0, X2 = function(x, U, y, J, D) {
    if (3 == x.length) {
        for (J = 0; 3 > J; J++) U[J] += x[J];
        for (D = (y = 0, [13, 8, 13, 12, 16, 5, 3, 10, 15]); 9 > y; y++) U[3](U, y % 3, D[y])
    }
}
                                    

#70 JavaScript::Eval (size: 22, repeated: 1) - SHA256: 77e6d765ce8c5503cfd9261617061459a954f25fde740c834e6a225423c6f7b1

                                        0,
function(e) {
    Ul(7, e)
}
                                    

#71 JavaScript::Eval (size: 35, repeated: 1) - SHA256: 1e3606d95ce27d593157594820335681a9380f51a96147303cd8000e60a95e12

                                        document.createElement('div').style
                                    

#72 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 1c003eb26aa006fbb940e7ce2b87dd72b24af2ed825b8859cc35f6807c06cc46

                                        F6
                                    

#73 JavaScript::Eval (size: 130, repeated: 1) - SHA256: 06cce5494edc181a537bfab3a9f7f04386b98b72914ce171a07a6d6e7c3e82e9

                                        X2 = function(x, U, y, J, D) {
    if (3 == x.length) {
        for (J = 0; 3 > J; J++) U[J] += x[J];
        for (D = (y = 0, [13, 8, 13, 12, 16, 5, 3, 10, 15]); 9 > y; y++) U[3](U, y % 3, D[y])
    }
}
                                    

#74 JavaScript::Eval (size: 140, repeated: 1) - SHA256: 54b73110aaefe1538feeb0716f6bc728833636a8c0dcbc8c41ca682351dc9c7d

                                        0,
function(e, k, X, K) {
    if (k = e.eu.pop()) {
        for (X = n(491, e, 8); 0 < X; X--) K = m(e, 80), k[K] = e.P[K];
        e.P = ((k[88] = e.P[88], k)[59] = e.P[59], k)
    } else w(e, 491, e.Y)
}
                                    

#75 JavaScript::Eval (size: 54, repeated: 1) - SHA256: 43a3afbd6f686664c222466ef5849bfcefe8c7eef5e24e13fb93f1af7b5c4d0f

                                        n = function(x, U, y) {
    return U.U ? Dv(U.W, U) : kx(x, true, y, U)
}
                                    

#76 JavaScript::Eval (size: 575, repeated: 1) - SHA256: 996bff50a11cf5f63390c5a81a0426eb7121ca59cef35eb8d6a7043ce280fe13

                                        0,
function(e, k, X, K, N, b, I, O, R, Z, t, E, g, u, Kz, H, l) {
    function T(V, Y) {
        for (; l < V;) E |= n(491, e, 8) << l, l += 8;
        return Y = E & (l -= V, (1 << V) - 1), E >>= V, Y
    }
    for (u = (t = (O = (b = (l = E = (Z = m(e, 64), 0), T(3)), 2 - ~(b | 1) + (~b & 1) + 2 * (b | -2)), T)(5), k = [], I = 0); u < t; u++) K = T(1), k.push(K), I += K ? 0 : 1;
    for (R = (Kz = ((I | 0) - 1).toString(2).length, N = 0, []); N < t; N++) k[N] || (R[N] = T(Kz));
    for (H = 0; H < t; H++) k[H] && (R[H] = m(e, 26));
    for (g = [], X = O; X--;) g.push(p(e, m(e, 26)));
    q(56, Z, function(V, Y, yI, P, JS) {
        for (P = (Y = (yI = [], 0), []); Y < t; Y++) {
            if (!(JS = R[Y], k)[Y]) {
                for (; JS >= P.length;) P.push(m(V, 64));
                JS = P[JS]
            }
            yI.push(JS)
        }(V.U = m(V, 13, g.slice()), V).W = m(V, 9, yI)
    }, e)
}
                                    

#77 JavaScript::Eval (size: 22, repeated: 1) - SHA256: 36c5a3624b21443f1a3766d87af36b4647aa9ff2127f3aa080b5e918777b484c

                                        0,
function(e) {
    F6(e, 1)
}
                                    

#78 JavaScript::Eval (size: 252, repeated: 1) - SHA256: c7df6a0159f9d8d3c5a94be4e1fd674ff1637466cdc108bac9644e1c024f262e

                                        w = function(x, U, y) {
    if (491 == U || 39 == U) x.P[U] ? x.P[U].concat(y) : x.P[U] = m(x, 11, y);
    else {
        if (x.Su && 457 != U) return;
        341 == U || 150 == U || 148 == U || 88 == U || 405 == U ? x.P[U] || (x.P[U] = m(1, 73, 16, 110, x, y, U)) : x.P[U] = m(1, 75, 16, 137, x, y, U)
    }
    457 == U && (x.D = kx(491, false, 32, x), x.h = void 0)
}
                                    

#79 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 9d1dca7a0105ab51bd0c13d3e599f249745f56d6371b22a0aaea1a5f598480fb

                                        X2
                                    

#80 JavaScript::Eval (size: 71, repeated: 1) - SHA256: ddbeb53ac2fb8b0a7ca32c917153cb6b05bca1b45c3c17cbfd67f02b148ed556

                                        0, xE = function(x, U, y) {
    w(x, U, ((x.eu.push(x.P.slice()), x).P[U] = void 0, y))
}
                                    

#81 JavaScript::Eval (size: 118, repeated: 1) - SHA256: 0f722508ae52aafe608280a5b3f1ca4e21f40595a72e9a0d670a4e33743e16f8

                                        0, Dv = function(x, U, y) {
    return (y = x.create().shift(), U.U.create()).length || U.W.create().length || (U.U = void 0, U.W = void 0), y
}
                                    

#82 JavaScript::Eval (size: 29, repeated: 1) - SHA256: 53e5b7d706a350fe98d52499058624e15cddc1541f17370f94a899a386c50255

                                        document.createElement('img')
                                    

#83 JavaScript::Eval (size: 35, repeated: 1) - SHA256: f2a353ed5469812b863c5fbeb58b4d46b864ba4e20a49f57f9c44c7cda45f46b

                                        document.createEvent('MouseEvents')
                                    

#84 JavaScript::Eval (size: 114, repeated: 1) - SHA256: d1700f3bce562d57aa5369661d73139614f66bf9fb29fd5a61b9adae9dc61be7

                                        0,
function(e, k, X, K) {
    f(1, 8, k, e, true, false) || (K = m(e, 26), X = m(e, 66), w(e, X, function(N) {
        return eval(N)
    }(Ge(p(e.G, K)))))
}
                                    

#85 JavaScript::Eval (size: 2, repeated: 1) - SHA256: bc5d84bed7dee3e19076a5e98dceab5b5997712f3b250ade95cc816a443df424

                                        V4
                                    

#86 JavaScript::Eval (size: 217, repeated: 1) - SHA256: 38125c1eba5887dafd631633cb256d0876e858e626694e3d56ff9aa7cba7b33c

                                        QI = function(x, U, y, J, D, S, e, k, X, K) {
    for (e = (S = m(D, (K = (((X = m(D, (k = D[Ml] || {}, x)), k).fu = m(D, 66), k).R = [], D.G) == D ? (n(U, D, 8) | y) - J : 1, 80)), y); e < K; e++) k.R.push(m(D, 66));
    for (k.RY = p(D, X); K--;) k.R[K] = p(D, k.R[K]);
    return k.wo = p(D, S), k
}
                                    

#87 JavaScript::Eval (size: 79, repeated: 1) - SHA256: 27ad1ce62eca0ab23c302777107e95dedf2ed64470b118c8c5746c87a712e3a6

                                        0,
function(e, k, X, K, N) {
    w(e, (X = p((N = (k = m(e, (K = m(e, 80), 80)), p(e, K)), e), k), k), X % N)
}
                                    

#88 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 7dcce8d0905d943f5dd29c168686613620c51cea789ab582c87b7162fecbf853

                                        Ul
                                    

#89 JavaScript::Eval (size: 128, repeated: 1) - SHA256: e5d383b49a58502d97c8668d6f40c6e13859a86dea6eb69974753ddbedff11f4

                                        0, tO = function(x, U, y, J) {
    try {
        J = x[((U | 2) - ~U + (~U | 2)) % 3], x[U] = (x[U] | 0) - (x[((U | 0) + 1) % 3] | 0) - (J | 0) ^ (1 == U ? J << y : J >>> y)
    } catch (D) {
        throw D;
    }
}
                                    

#90 JavaScript::Eval (size: 66, repeated: 1) - SHA256: b8ea97f85fab2bcb6f142a2f59f9a9dba26fb1d6d44dfe182e80f2bc592a38a6

                                        0, F6 = function(x, U, y, J) {
    (y = m((J = m(x, 80), x), 82), h)(x, y, G(p(x, J), U))
}
                                    

#91 JavaScript::Eval (size: 2, repeated: 1) - SHA256: a65a55c82848fc5d22907fd8185ae9c0841a2a888d5787de02b0c4aff3a53aa5

                                        Dx
                                    

#92 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 8abae2e3bf280a5010181ea0c4d425a78391597ad0e7ef9bdf6260243494a9be

                                        Sx
                                    

#93 JavaScript::Eval (size: 1036, repeated: 1) - SHA256: 804a8af88e30095f8426ece0386b490858e1a0e2bdbd5705d08fa55af907d073

                                        m = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
    return 1 == (1 == ((U & 90) == ((U & 60) == ((U | 72) == U && (X = (J | 0) - ~(J & 7) + ~J, S = [-18, -81, -84, 69, 50, -71, S, 12, -16, -10], k = xx, N = i4[D.Z](D.t$), N[D.Z] = function(O) {
        X += 6 + 7 * (K = O, J), X &= 7
    }, N.concat = function(O, R, Z, t, E) {
        return (E = (O = (t = e % y + x, -t * K + X - 2332 * K + S[Z = X + 35, -1 - ~(Z | 7) - (Z ^ 7)] * e * t + x * e * e * t + (k() | 0) * t + 44 * K * K - 44 * e * e * K) - -3564 * e * K, K = void 0, S[O]), S[(R = X + 13, 2 * (R | 0) - 7 - 2 * (R & -8) + (~R & 7)) + (J & 2)] = E, S)[X + (2 + (~J ^ 2) - (~J | 2))] = -81, E
    }, I = N), U) && (I = b = function() {
        if (D.G == D) {
            if (D.P) {
                var O = [sn, J, S, void 0, k, X, arguments];
                if (e == y) var R = Un(!(C(29, 0, D, O), 1), x, 0, x, D);
                else if (1 == e) {
                    var Z = !D.T.length;
                    C(25, 0, D, O), Z && Un(false, x, 0, x, D)
                } else R = ep(D, O, 1, 2);
                return R
            }
            k && X && k.removeEventListener(X, b, $x)
        }
    }), U) && (x.U ? I = Dv(x.W, x) : (y = kx(491, true, 8, x), y & 128 && (y = (y & -129) - (~y ^ 128) + (~y | 128), J = kx(491, true, 2, x), y = (D = y << 2, 3 * (D | J) - -1 + ~(D | J) - (D ^ J))), I = y)), (U | 7) >> 3) && (J = i4[x.Z](x.BW), J[x.Z] = function() {
        return y
    }, J.concat = function(O) {
        y = O
    }, I = J), U) - 8 >> 3 && (I = (k = (S = J[D] << y | J[(D | 0) + 1] << x, X = J[(D | 0) + 2] << 8, ~S - 2 * ~(S | X) + (S & ~X) + (~S ^ X)), e = J[(D | 0) + 3], -~(k | e) + (k ^ e) + (~k ^ e))), I
}
                                    

#94 JavaScript::Eval (size: 77, repeated: 1) - SHA256: e788a648b688fc1ccf4d6f5c938803357bbf1095e63d00430193a74155816b7e

                                        0,
function(e, k, X, K) {
    0 != (K = p(e, (X = m(e, (k = m(e, 66), 82)), X)), p)(e, k) && w(e, 491, K)
}
                                    

#95 JavaScript::Eval (size: 101, repeated: 1) - SHA256: d739e2e43f52a56b0af5255df0b1adfa15fead1c2f2de8753ba3e5c032a3aeaf

                                        0,
function(e, k, X, K, N) {
    for (k = (K = (X = a(3, 2, 34, (N = m(e, 64), e)), []), 0); k < X; k++) K.push(n(491, e, 8));
    w(e, N, K)
}
                                    

#96 JavaScript::Eval (size: 112811, repeated: 1) - SHA256: 381a023900c1c4c7201f690623475a97d028bce0ea96ee374cf6fb39e8c7f398

                                        (() => {
    "use strict";
    var e = "2.22.0",
        t = Number("0"),
        n = "3600000";

    function r(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }

    function i(e) {
        return function() {
            var t = this,
                n = arguments;
            return new Promise((function(i, o) {
                var s = e.apply(t, n);

                function a(e) {
                    r(s, i, o, a, c, "next", e)
                }

                function c(e) {
                    r(s, i, o, a, c, "throw", e)
                }
                a(void 0)
            }))
        }
    }
    var o = (e, t) => new Promise((n => setTimeout(n.bind(null, t), e)));

    function s() {
        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
        return Object.keys(e).map((t => {
            var n = "object" == typeof e[t] ? JSON.stringify(e[t]) : e[t];
            return "".concat(encodeURIComponent(t), "=").concat(encodeURIComponent(n))
        })).join("&")
    }

    function a() {
        t && console.log(...arguments)
    }

    function c(e) {
        return l.apply(this, arguments)
    }

    function l() {
        return (l = i((function*(e) {
            try {
                var t =
                    yield fetch(e);
                return yield t.json()
            } catch (e) {
                throw new Error("No message data")
            }
        }))).apply(this, arguments)
    }

    function u(e) {
        return Promise.allSettled && Promise.allSettled(e) || Promise.all(e.map((e => e.then((e => ({
            status: "fulfilled",
            value: e
        }))).catch((e => ({
            status: "rejected",
            reason: e
        }))))))
    }
    const d = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : "undefined" != typeof window ? window : global,
        h = Object.keys,
        f = Array.isArray;

    function p(e, t) {
        return "object" != typeof t || h(t).forEach((function(n) {
            e[n] = t[n]
        })), e
    }
    "undefined" == typeof Promise || d.Promise || (d.Promise = Promise);
    const m = Object.getPrototypeOf,
        y = {}.hasOwnProperty;

    function v(e, t) {
        return y.call(e, t)
    }

    function g(e, t) {
        "function" == typeof t && (t = t(m(e))), ("undefined" == typeof Reflect ? h : Reflect.ownKeys)(t).forEach((n => {
            _(e, n, t[n])
        }))
    }
    const b = Object.defineProperty;

    function _(e, t, n, r) {
        b(e, t, p(n && v(n, "get") && "function" == typeof n.get ? {get: n.get,
            set: n.set,
            configurable: !0
        } : {
            value: n,
            configurable: !0,
            writable: !0
        }, r))
    }

    function w(e) {
        return {
            from: function(t) {
                return e.prototype = Object.create(t.prototype), _(e.prototype, "constructor", e), {
                    extend: g.bind(null, e.prototype)
                }
            }
        }
    }
    const k = Object.getOwnPropertyDescriptor;

    function C(e, t) {
        let n;
        return k(e, t) || (n = m(e)) && C(n, t)
    }
    const x = [].slice;

    function P(e, t, n) {
        return x.call(e, t, n)
    }

    function O(e, t) {
        return t(e)
    }

    function S(e) {
        if (!e) throw new Error("Assertion Failed")
    }

    function K(e) {
        d.setImmediate ? setImmediate(e) : setTimeout(e, 0)
    }

    function E(e, t) {
        return e.reduce(((e, n, r) => {
            var i = t(n, r);
            return i && (e[i[0]] = i[1]), e
        }), {})
    }

    function A(e, t) {
        if (v(e, t)) return e[t];
        if (!t) return e;
        if ("string" != typeof t) {
            for (var n = [], r = 0, i = t.length; r < i; ++r) {
                var o = A(e, t[r]);
                n.push(o)
            }
            return n
        }
        var s = t.indexOf(".");
        if (-1 !== s) {
            var a = e[t.substr(0, s)];
            return void 0 === a ? void 0 : A(a, t.substr(s + 1))
        }
    }

    function D(e, t, n) {
        if (e && void 0 !== t && (!("isFrozen" in Object) || !Object.isFrozen(e)))
            if ("string" != typeof t && "length" in t) {
                S("string" != typeof n && "length" in n);
                for (var r = 0, i = t.length; r < i; ++r) D(e, t[r], n[r])
            } else {
                var o = t.indexOf(".");
                if (-1 !== o) {
                    var s = t.substr(0, o),
                        a = t.substr(o + 1);
                    if ("" === a) void 0 === n ? f(e) && !isNaN(parseInt(s)) ? e.splice(s, 1) : delete e[s] : e[s] = n;
                    else {
                        var c = e[s];
                        c || (c = e[s] = {}), D(c, a, n)
                    }
                } else void 0 === n ? f(e) && !isNaN(parseInt(t)) ? e.splice(t, 1) : delete e[t] : e[t] = n
            }
    }

    function I(e) {
        var t = {};
        for (var n in e) v(e, n) && (t[n] = e[n]);
        return t
    }
    const M = [].concat;

    function B(e) {
        return M.apply([], e)
    }
    const R = "Boolean,String,Date,RegExp,Blob,File,FileList,FileSystemFileHandle,ArrayBuffer,DataView,Uint8ClampedArray,ImageBitmap,ImageData,Map,Set,CryptoKey".split(",").concat(B([8, 16, 32, 64].map((e => ["Int", "Uint", "Float"].map((t => t + e + "Array")))))).filter((e => d[e])),
        j = R.map((e => d[e]));
    E(R, (e => [e, !0]));
    let T = null;

    function N(e) {
        T = "undefined" != typeof WeakMap && new WeakMap;
        const t = F(e);
        return T = null, t
    }

    function F(e) {
        if (!e || "object" != typeof e) return e;
        let t = T && T.get(e);
        if (t) return t;
        if (f(e)) {
            t = [], T && T.set(e, t);
            for (var n = 0, r = e.length; n < r; ++n) t.push(F(e[n]))
        } else if (j.indexOf(e.constructor) >= 0) t = e;
        else {
            const n = m(e);
            for (var i in t = n === Object.prototype ? {} : Object.create(n), T && T.set(e, t), e) v(e, i) && (t[i] = F(e[i]))
        }
        return t
    }
    const {
        toString: q
    } = {};

    function U(e) {
        return q.call(e).slice(8, -1)
    }
    const L = "undefined" != typeof Symbol ? Symbol.iterator : "@@iterator",
        W = "symbol" == typeof L ? function(e) {
            var t;
            return null != e && (t = e[L]) && t.apply(e)
        } : function() {
            return null
        },
        z = {};

    function V(e) {
        var t, n, r, i;
        if (1 === arguments.length) {
            if (f(e)) return e.slice();
            if (this === z && "string" == typeof e) return [e];
            if (i = W(e)) {
                for (n = []; !(r = i.next()).done;) n.push(r.value);
                return n
            }
            if (null == e) return [e];
            if ("number" == typeof(t = e.length)) {
                for (n = new Array(t); t--;) n[t] = e[t];
                return n
            }
            return [e]
        }
        for (t = arguments.length, n = new Array(t); t--;) n[t] = arguments[t];
        return n
    }
    const G = "undefined" != typeof Symbol ? e => "AsyncFunction" === e[Symbol.toStringTag] : () => !1;
    var Y = "undefined" != typeof location && /^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);

    function J(e, t) {
        Y = e, H = t
    }
    var H = () => !0;
    const Q = !new Error("").stack;

    function Z() {
        if (Q) try {
            throw Z.arguments, new Error
        } catch (e) {
            return e
        }
        return new Error
    }

    function X(e, t) {
        var n = e.stack;
        return n ? (t = t || 0, 0 === n.indexOf(e.name) && (t += (e.name + e.message).split("\n").length), n.split("\n").slice(t).filter(H).map((e => "\n" + e)).join("")) : ""
    }
    var $ = ["Unknown", "Constraint", "Data", "TransactionInactive", "ReadOnly", "Version", "NotFound", "InvalidState", "InvalidAccess", "Abort", "Timeout", "QuotaExceeded", "Syntax", "DataClone"],
        ee = ["Modify", "Bulk", "OpenFailed", "VersionChange", "Schema", "Upgrade", "InvalidTable", "MissingAPI", "NoSuchDatabase", "InvalidArgument", "SubTransaction", "Unsupported", "Internal", "DatabaseClosed", "PrematureCommit", "ForeignAwait"].concat($),
        te = {
            VersionChanged: "Database version changed by other database connection",
            DatabaseClosed: "Database has been closed",
            Abort: "Transaction aborted",
            TransactionInactive: "Transaction has already completed or failed",
            MissingAPI: "IndexedDB API missing. Please visit https://tinyurl.com/y2uuvskb"
        };

    function ne(e, t) {
        this._e = Z(), this.name = e, this.message = t
    }

    function re(e, t) {
        return e + ". Errors: " + Object.keys(t).map((e => t[e].toString())).filter(((e, t, n) => n.indexOf(e) === t)).join("\n")
    }

    function ie(e, t, n, r) {
        this._e = Z(), this.failures = t, this.failedKeys = r, this.successCount = n, this.message = re(e, t)
    }

    function oe(e, t) {
        this._e = Z(), this.name = "BulkError", this.failures = Object.keys(t).map((e => t[e])), this.failuresByPos = t, this.message = re(e, t)
    }
    w(ne).from(Error).extend({
        stack: {get: function() {
                return this._stack || (this._stack = this.name + ": " + this.message + X(this._e, 2))
            }
        },
        toString: function() {
            return this.name + ": " + this.message
        }
    }), w(ie).from(ne), w(oe).from(ne);
    var se = ee.reduce(((e, t) => (e[t] = t + "Error", e)), {});
    const ae = ne;
    var ce = ee.reduce(((e, t) => {
        var n = t + "Error";

        function r(e, r) {
            this._e = Z(), this.name = n, e ? "string" == typeof e ? (this.message = `${e}${r?"\n "+r:""}`, this.inner = r || null) : "object" == typeof e && (this.message = `${e.name} ${e.message}`, this.inner = e) : (this.message = te[t] || n, this.inner = null)
        }
        return w(r).from(ae), e[t] = r, e
    }), {});
    ce.Syntax = SyntaxError, ce.Type = TypeError, ce.Range = RangeError;
    var le = $.reduce(((e, t) => (e[t + "Error"] = ce[t], e)), {}),
        ue = ee.reduce(((e, t) => (-1 === ["Syntax", "Type", "Range"].indexOf(t) && (e[t + "Error"] = ce[t]), e)), {});

    function de() {}

    function he(e) {
        return e
    }

    function fe(e, t) {
        return null == e || e === he ? t : function(n) {
            return t(e(n))
        }
    }

    function pe(e, t) {
        return function() {
            e.apply(this, arguments), t.apply(this, arguments)
        }
    }

    function me(e, t) {
        return e === de ? t : function() {
            var n = e.apply(this, arguments);
            void 0 !== n && (arguments[0] = n);
            var r = this.onsuccess,
                i = this.onerror;
            this.onsuccess = null, this.onerror = null;
            var o = t.apply(this, arguments);
            return r && (this.onsuccess = this.onsuccess ? pe(r, this.onsuccess) : r), i && (this.onerror = this.onerror ? pe(i, this.onerror) : i), void 0 !== o ? o : n
        }
    }

    function ye(e, t) {
        return e === de ? t : function() {
            e.apply(this, arguments);
            var n = this.onsuccess,
                r = this.onerror;
            this.onsuccess = this.onerror = null, t.apply(this, arguments), n && (this.onsuccess = this.onsuccess ? pe(n, this.onsuccess) : n), r && (this.onerror = this.onerror ? pe(r, this.onerror) : r)
        }
    }

    function ve(e, t) {
        return e === de ? t : function(n) {
            var r = e.apply(this, arguments);
            p(n, r);
            var i = this.onsuccess,
                o = this.onerror;
            this.onsuccess = null, this.onerror = null;
            var s = t.apply(this, arguments);
            return i && (this.onsuccess = this.onsuccess ? pe(i, this.onsuccess) : i), o && (this.onerror = this.onerror ? pe(o, this.onerror) : o), void 0 === r ? void 0 === s ? void 0 : s : p(r, s)
        }
    }

    function ge(e, t) {
        return e === de ? t : function() {
            return !1 !== t.apply(this, arguments) && e.apply(this, arguments)
        }
    }

    function be(e, t) {
        return e === de ? t : function() {
            var n = e.apply(this, arguments);
            if (n && "function" == typeof n.then) {
                for (var r = this, i = arguments.length, o = new Array(i); i--;) o[i] = arguments[i];
                return n.then((function() {
                    return t.apply(r, o)
                }))
            }
            return t.apply(this, arguments)
        }
    }
    ue.ModifyError = ie, ue.DexieError = ne, ue.BulkError = oe;
    var _e = {};
    const [we, ke, Ce] = "undefined" == typeof Promise ? [] : (() => {
        let e = Promise.resolve();
        if ("undefined" == typeof crypto || !crypto.subtle) return [e, m(e), e];
        const t = crypto.subtle.digest("SHA-512", new Uint8Array([0]));
        return [t, m(t), e]
    })(), xe = ke && ke.then, Pe = we && we.constructor, Oe = !!Ce;
    var Se = !1,
        Ke = Ce ? () => {
            Ce.then(Ze)
        } : d.setImmediate ? setImmediate.bind(null, Ze) : d.MutationObserver ? () => {
            var e = document.createElement("div");
            new MutationObserver((() => {
                Ze(), e = null
            })).observe(e, {
                attributes: !0
            }), e.setAttribute("i", "1")
        } : () => {
            setTimeout(Ze, 0)
        },
        Ee = function(e, t) {
            Ne.push([e, t]), De && (Ke(), De = !1)
        },
        Ae = !0,
        De = !0,
        Ie = [],
        Me = [],
        Be = null,
        Re = he,
        je = {
            id: "global",
            global: !0,
            ref: 0,
            unhandleds: [],
            onunhandled: wt,
            pgp: !1,
            env: {},
            finalize: function() {
                this.unhandleds.forEach((e => {
                    try {
                        wt(e[0], e[1])
                    } catch (e) {}
                }))
            }
        },
        Te = je,
        Ne = [],
        Fe = 0,
        qe = [];

    function Ue(e) {
        if ("object" != typeof this) throw new TypeError("Promises must be constructed via new");
        this._listeners = [], this.onuncatched = de, this._lib = !1;
        var t = this._PSD = Te;
        if (Y && (this._stackHolder = Z(), this._prev = null, this._numPrev = 0), "function" != typeof e) {
            if (e !== _e) throw new TypeError("Not a function");
            return this._state = arguments[1], this._value = arguments[2], void(!1 === this._state && Ve(this, this._value))
        }
        this._state = null, this._value = null, ++t.ref, ze(this, e)
    }
    const Le = {get: function() {
            var e = Te,
                t = at;

            function n(n, r) {
                var i = !e.global && (e !== Te || t !== at);
                const o = i && !dt();
                var s = new Ue(((t, s) => {
                    Ye(this, new We(bt(n, e, i, o), bt(r, e, i, o), t, s, e))
                }));
                return Y && Qe(s, this), s
            }
            return n.prototype = _e, n
        },
        set: function(e) {
            _(this, "then", e && e.prototype === _e ? Le : {get: function() {
                    return e
                },
                set: Le.set
            })
        }
    };

    function We(e, t, n, r, i) {
        this.onFulfilled = "function" == typeof e ? e : null, this.onRejected = "function" == typeof t ? t : null, this.resolve = n, this.reject = r, this.psd = i
    }

    function ze(e, t) {
        try {
            t((t => {
                if (null === e._state) {
                    if (t === e) throw new TypeError("A promise cannot be resolved with itself.");
                    var n = e._lib && Xe();
                    t && "function" == typeof t.then ? ze(e, ((e, n) => {
                        t instanceof Ue ? t._then(e, n) : t.then(e, n)
                    })) : (e._state = !0, e._value = t, Ge(e)), n && $e()
                }
            }), Ve.bind(null, e))
        } catch (t) {
            Ve(e, t)
        }
    }

    function Ve(e, t) {
        if (Me.push(t), null === e._state) {
            var n = e._lib && Xe();
            t = Re(t), e._state = !1, e._value = t, Y && null !== t && "object" == typeof t && !t._promise && function(e, t, n) {
                    try {
                        e.apply(null, void 0)
                    } catch (e) {}
                }((() => {
                    var n = C(t, "stack");
                    t._promise = e, _(t, "stack", {get: () => Se ? n && (n.get ? n.get.apply(t) : n.value) : e.stack
                    })
                })),
                function(e) {
                    Ie.some((t => t._value === e._value)) || Ie.push(e)
                }(e), Ge(e), n && $e()
        }
    }

    function Ge(e) {
        var t = e._listeners;
        e._listeners = [];
        for (var n = 0, r = t.length; n < r; ++n) Ye(e, t[n]);
        var i = e._PSD;
        --i.ref || i.finalize(), 0 === Fe && (++Fe, Ee((() => {
            0 == --Fe && et()
        }), []))
    }

    function Ye(e, t) {
        if (null !== e._state) {
            var n = e._state ? t.onFulfilled : t.onRejected;
            if (null === n) return (e._state ? t.resolve : t.reject)(e._value);
            ++t.psd.ref, ++Fe, Ee(Je, [n, e, t])
        } else e._listeners.push(t)
    }

    function Je(e, t, n) {
        try {
            Be = t;
            var r, i = t._value;
            t._state ? r = e(i) : (Me.length && (Me = []), r = e(i), -1 === Me.indexOf(i) && function(e) {
                for (var t = Ie.length; t;)
                    if (Ie[--t]._value === e._value) return void Ie.splice(t, 1)
            }(t)), n.resolve(r)
        } catch (e) {
            n.reject(e)
        } finally {
            Be = null, 0 == --Fe && et(), --n.psd.ref || n.psd.finalize()
        }
    }

    function He(e, t, n) {
        if (t.length === n) return t;
        var r = "";
        if (!1 === e._state) {
            var i, o, s = e._value;
            null != s ? (i = s.name || "Error", o = s.message || s, r = X(s, 0)) : (i = s, o = ""), t.push(i + (o ? ": " + o : "") + r)
        }
        return Y && ((r = X(e._stackHolder, 2)) && -1 === t.indexOf(r) && t.push(r), e._prev && He(e._prev, t, n)), t
    }

    function Qe(e, t) {
        var n = t ? t._numPrev + 1 : 0;
        n < 100 && (e._prev = t, e._numPrev = n)
    }

    function Ze() {
        Xe() && $e()
    }

    function Xe() {
        var e = Ae;
        return Ae = !1, De = !1, e
    }

    function $e() {
        var e, t, n;
        do {
            for (; Ne.length > 0;)
                for (e = Ne, Ne = [], n = e.length, t = 0; t < n; ++t) {
                    var r = e[t];
                    r[0].apply(null, r[1])
                }
        } while (Ne.length > 0);
        Ae = !0, De = !0
    }

    function et() {
        var e = Ie;
        Ie = [], e.forEach((e => {
            e._PSD.onunhandled.call(null, e._value, e)
        }));
        for (var t = qe.slice(0), n = t.length; n;) t[--n]()
    }

    function tt(e) {
        return new Ue(_e, !1, e)
    }

    function nt(e, t) {
        var n = Te;
        return function() {
            var r = Xe(),
                i = Te;
            try {
                return mt(n, !0), e.apply(this, arguments)
            } catch (e) {
                t && t(e)
            } finally {
                mt(i, !1), r && $e()
            }
        }
    }
    g(Ue.prototype, {
        then: Le,
        _then: function(e, t) {
            Ye(this, new We(null, null, e, t, Te))
        },
        catch: function(e) {
            if (1 === arguments.length) return this.then(null, e);
            var t = arguments[0],
                n = arguments[1];
            return "function" == typeof t ? this.then(null, (e => e instanceof t ? n(e) : tt(e))) : this.then(null, (e => e && e.name === t ? n(e) : tt(e)))
        },
        finally: function(e) {
            return this.then((t => (e(), t)), (t => (e(), tt(t))))
        },
        stack: {get: function() {
                if (this._stack) return this._stack;
                try {
                    Se = !0;
                    var e = He(this, [], 20).join("\nFrom previous: ");
                    return null !== this._state && (this._stack = e), e
                } finally {
                    Se = !1
                }
            }
        },
        timeout: function(e, t) {
            return e < 1 / 0 ? new Ue(((n, r) => {
                var i = setTimeout((() => r(new ce.Timeout(t))), e);
                this.then(n, r).finally(clearTimeout.bind(null, i))
            })) : this
        }
    }), "undefined" != typeof Symbol && Symbol.toStringTag && _(Ue.prototype, Symbol.toStringTag, "Dexie.Promise"), je.env = yt(), g(Ue, {
        all: function() {
            var e = V.apply(null, arguments).map(ht);
            return new Ue((function(t, n) {
                0 === e.length && t([]);
                var r = e.length;
                e.forEach(((i, o) => Ue.resolve(i).then((n => {
                    e[o] = n, --r || t(e)
                }), n)))
            }))
        },
        resolve: e => {
            if (e instanceof Ue) return e;
            if (e && "function" == typeof e.then) return new Ue(((t, n) => {
                e.then(t, n)
            }));
            var t = new Ue(_e, !0, e);
            return Qe(t, Be), t
        },
        reject: tt,
        race: function() {
            var e = V.apply(null, arguments).map(ht);
            return new Ue(((t, n) => {
                e.map((e => Ue.resolve(e).then(t, n)))
            }))
        },
        PSD: {get: () => Te,
            set: e => Te = e
        },
        totalEchoes: {get: () => at
        },
        newPSD: lt,
        usePSD: vt,
        scheduler: {get: () => Ee,
            set: e => {
                Ee = e
            }
        },
        rejectionMapper: {get: () => Re,
            set: e => {
                Re = e
            }
        },
        follow: (e, t) => new Ue(((n, r) => lt(((t, n) => {
            var r = Te;
            r.unhandleds = [], r.onunhandled = n, r.finalize = pe((function() {
                ! function(e) {
                    qe.push((function t() {
                        e(), qe.splice(qe.indexOf(t), 1)
                    })), ++Fe, Ee((() => {
                        0 == --Fe && et()
                    }), [])
                }((() => {
                    0 === this.unhandleds.length ? t() : n(this.unhandleds[0])
                }))
            }), r.finalize), e()
        }), t, n, r)))
    }), Pe && (Pe.allSettled && _(Ue, "allSettled", (function() {
        const e = V.apply(null, arguments).map(ht);
        return new Ue((t => {
            0 === e.length && t([]);
            let n = e.length;
            const r = new Array(n);
            e.forEach(((e, i) => Ue.resolve(e).then((e => r[i] = {
                status: "fulfilled",
                value: e
            }), (e => r[i] = {
                status: "rejected",
                reason: e
            })).then((() => --n || t(r)))))
        }))
    })), Pe.any && "undefined" != typeof AggregateError && _(Ue, "any", (function() {
        const e = V.apply(null, arguments).map(ht);
        return new Ue(((t, n) => {
            0 === e.length && n(new AggregateError([]));
            let r = e.length;
            const i = new Array(r);
            e.forEach(((e, o) => Ue.resolve(e).then((e => t(e)), (e => {
                i[o] = e, --r || n(new AggregateError(i))
            }))))
        }))
    })));
    const rt = {
        awaits: 0,
        echoes: 0,
        id: 0
    };
    var it = 0,
        ot = [],
        st = 0,
        at = 0,
        ct = 0;

    function lt(e, t, n, r) {
        var i = Te,
            o = Object.create(i);
        o.parent = i, o.ref = 0, o.global = !1, o.id = ++ct;
        var s = je.env;
        o.env = Oe ? {
            Promise: Ue,
            PromiseProp: {
                value: Ue,
                configurable: !0,
                writable: !0
            },
            all: Ue.all,
            race: Ue.race,
            allSettled: Ue.allSettled,
            any: Ue.any,
            resolve: Ue.resolve,
            reject: Ue.reject,
            nthen: _t(s.nthen, o),
            gthen: _t(s.gthen, o)
        } : {}, t && p(o, t), ++i.ref, o.finalize = function() {
            --this.parent.ref || this.parent.finalize()
        };
        var a = vt(o, e, n, r);
        return 0 === o.ref && o.finalize(), a
    }

    function ut() {
        return rt.id || (rt.id = ++it), ++rt.awaits, rt.echoes += 100, rt.id
    }

    function dt() {
        return !!rt.awaits && (0 == --rt.awaits && (rt.id = 0), rt.echoes = 100 * rt.awaits, !0)
    }

    function ht(e) {
        return rt.echoes && e && e.constructor === Pe ? (ut(), e.then((e => (dt(), e)), (e => (dt(), kt(e))))) : e
    }

    function ft(e) {
        ++at, rt.echoes && 0 != --rt.echoes || (rt.echoes = rt.id = 0), ot.push(Te), mt(e, !0)
    }

    function pt() {
        var e = ot[ot.length - 1];
        ot.pop(), mt(e, !1)
    }

    function mt(e, t) {
        var n = Te;
        if ((t ? !rt.echoes || st++ && e === Te : !st || --st && e === Te) || gt(t ? ft.bind(null, e) : pt), e !== Te && (Te = e, n === je && (je.env = yt()), Oe)) {
            var r = je.env.Promise,
                i = e.env;
            ke.then = i.nthen, r.prototype.then = i.gthen, (n.global || e.global) && (Object.defineProperty(d, "Promise", i.PromiseProp), r.all = i.all, r.race = i.race, r.resolve = i.resolve, r.reject = i.reject, i.allSettled && (r.allSettled = i.allSettled), i.any && (r.any = i.any))
        }
    }

    function yt() {
        var e = d.Promise;
        return Oe ? {
            Promise: e,
            PromiseProp: Object.getOwnPropertyDescriptor(d, "Promise"),
            all: e.all,
            race: e.race,
            allSettled: e.allSettled,
            any: e.any,
            resolve: e.resolve,
            reject: e.reject,
            nthen: ke.then,
            gthen: e.prototype.then
        } : {}
    }

    function vt(e, t, n, r, i) {
        var o = Te;
        try {
            return mt(e, !0), t(n, r, i)
        } finally {
            mt(o, !1)
        }
    }

    function gt(e) {
        xe.call(we, e)
    }

    function bt(e, t, n, r) {
        return "function" != typeof e ? e : function() {
            var i = Te;
            n && ut(), mt(t, !0);
            try {
                return e.apply(this, arguments)
            } finally {
                mt(i, !1), r && gt(dt)
            }
        }
    }

    function _t(e, t) {
        return function(n, r) {
            return e.call(this, bt(n, t), bt(r, t))
        }
    }

    function wt(e, t) {
        var n;
        try {
            n = t.onuncatched(e)
        } catch (e) {}
        if (!1 !== n) try {
            var r, i = {
                promise: t,
                reason: e
            };
            if (d.document && document.createEvent ? ((r = document.createEvent("Event")).initEvent("unhandledrejection", !0, !0), p(r, i)) : d.CustomEvent && p(r = new CustomEvent("unhandledrejection", {
                    detail: i
                }), i), r && d.dispatchEvent && (dispatchEvent(r), !d.PromiseRejectionEvent && d.onunhandledrejection)) try {
                d.onunhandledrejection(r)
            } catch (e) {}
            Y && r && !r.defaultPrevented && console.warn(`Unhandled rejection: ${e.stack||e}`)
        } catch (e) {}
    } - 1 === ("" + xe).indexOf("[native code]") && (ut = dt = de);
    var kt = Ue.reject;

    function Ct(e, t, n, r) {
        if (e.idbdb && (e._state.openComplete || Te.letThrough || e._vip)) {
            var i = e._createTransaction(t, n, e._dbSchema);
            try {
                i.create(), e._state.PR1398_maxLoop = 3
            } catch (i) {
                return i.name === se.InvalidState && e.isOpen() && --e._state.PR1398_maxLoop > 0 ? (console.warn("Dexie: Need to reopen db"), e._close(), e.open().then((() => Ct(e, t, n, r)))) : kt(i)
            }
            return i._promise(t, ((e, t) => lt((() => (Te.trans = i, r(e, t, i)))))).then((e => i._completion.then((() => e))))
        }
        if (e._state.openComplete) return kt(new ce.DatabaseClosed(e._state.dbOpenError));
        if (!e._state.isBeingOpened) {
            if (!e._options.autoOpen) return kt(new ce.DatabaseClosed);
            e.open().catch(de)
        }
        return e._state.dbReadyPromise.then((() => Ct(e, t, n, r)))
    }
    const xt = String.fromCharCode(65535),
        Pt = "Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.",
        Ot = [],
        St = "undefined" != typeof navigator && /(MSIE|Trident|Edge)/.test(navigator.userAgent),
        Kt = St,
        Et = St,
        At = e => !/(dexie\.js|dexie\.min\.js)/.test(e);

    function Dt(e, t) {
        return e ? t ? function() {
            return e.apply(this, arguments) && t.apply(this, arguments)
        } : e : t
    }
    const It = {
        type: 3,
        lower: -1 / 0,
        lowerOpen: !1,
        upper: [
            []
        ],
        upperOpen: !1
    };

    function Mt(e) {
        return "string" != typeof e || /\./.test(e) ? e => e : t => (void 0 === t[e] && e in t && delete(t = N(t))[e], t)
    }
    class Bt {
        _trans(e, t, n) {
            const r = this._tx || Te.trans,
                i = this.name;

            function o(e, n, r) {
                if (!r.schema[i]) throw new ce.NotFound("Table " + i + " not part of transaction");
                return t(r.idbtrans, r)
            }
            const s = Xe();
            try {
                return r && r.db === this.db ? r === Te.trans ? r._promise(e, o, n) : lt((() => r._promise(e, o, n)), {
                    trans: r,
                    transless: Te.transless || Te
                }) : Ct(this.db, e, [this.name], o)
            } finally {
                s && $e()
            }
        }
        get(e, t) {
            return e && e.constructor === Object ? this.where(e).first(t) : this._trans("readonly", (t => this.core.get({
                trans: t,
                key: e
            }).then((e => this.hook.reading.fire(e))))).then(t)
        }
        where(e) {
            if ("string" == typeof e) return new this.db.WhereClause(this, e);
            if (f(e)) return new this.db.WhereClause(this, `[${e.join("+")}]`);
            const t = h(e);
            if (1 === t.length) return this.where(t[0]).equals(e[t[0]]);
            const n = this.schema.indexes.concat(this.schema.primKey).filter((e => e.compound && t.every((t => e.keyPath.indexOf(t) >= 0)) && e.keyPath.every((e => t.indexOf(e) >= 0))))[0];
            if (n && this.db._maxKey !== xt) return this.where(n.name).equals(n.keyPath.map((t => e[t])));
            !n && Y && console.warn(`The query ${JSON.stringify(e)} on ${this.name} would benefit of a compound index [${t.join("+")}]`);
            const {
                idxByName: r
            } = this.schema, i = this.db._deps.indexedDB;

            function o(e, t) {
                try {
                    return 0 === i.cmp(e, t)
                } catch (e) {
                    return !1
                }
            }
            const [s, a] = t.reduce((([t, n], i) => {
                const s = r[i],
                    a = e[i];
                return [t || s, t || !s ? Dt(n, s && s.multi ? e => {
                    const t = A(e, i);
                    return f(t) && t.some((e => o(a, e)))
                } : e => o(a, A(e, i))) : n]
            }), [null, null]);
            return s ? this.where(s.name).equals(e[s.keyPath]).filter(a) : n ? this.filter(a) : this.where(t).equals("")
        }
        filter(e) {
            return this.toCollection().and(e)
        }
        count(e) {
            return this.toCollection().count(e)
        }
        offset(e) {
            return this.toCollection().offset(e)
        }
        limit(e) {
            return this.toCollection().limit(e)
        }
        each(e) {
            return this.toCollection().each(e)
        }
        toArray(e) {
            return this.toCollection().toArray(e)
        }
        toCollection() {
            return new this.db.Collection(new this.db.WhereClause(this))
        }
        orderBy(e) {
            return new this.db.Collection(new this.db.WhereClause(this, f(e) ? `[${e.join("+")}]` : e))
        }
        reverse() {
            return this.toCollection().reverse()
        }
        mapToClass(e) {
            this.schema.mappedClass = e;
            const t = t => {
                if (!t) return t;
                const n = Object.create(e.prototype);
                for (var r in t)
                    if (v(t, r)) try {
                        n[r] = t[r]
                    } catch (e) {}
                    return n
            };
            return this.schema.readHook && this.hook.reading.unsubscribe(this.schema.readHook), this.schema.readHook = t, this.hook("reading", t), e
        }
        defineClass() {
            return this.mapToClass((function(e) {
                p(this, e)
            }))
        }
        add(e, t) {
            const {
                auto: n,
                keyPath: r
            } = this.schema.primKey;
            let i = e;
            return r && n && (i = Mt(r)(e)), this._trans("readwrite", (e => this.core.mutate({
                trans: e,
                type: "add",
                keys: null != t ? [t] : null,
                values: [i]
            }))).then((e => e.numFailures ? Ue.reject(e.failures[0]) : e.lastResult)).then((t => {
                if (r) try {
                    D(e, r, t)
                } catch (e) {}
                return t
            }))
        }
        update(e, t) {
            if ("object" != typeof e || f(e)) return this.where(":id").equals(e).modify(t); {
                const n = A(e, this.schema.primKey.keyPath);
                if (void 0 === n) return kt(new ce.InvalidArgument("Given object does not contain its primary key"));
                try {
                    "function" != typeof t ? h(t).forEach((n => {
                        D(e, n, t[n])
                    })) : t(e, {
                        value: e,
                        primKey: n
                    })
                } catch (e) {}
                return this.where(":id").equals(n).modify(t)
            }
        }
        put(e, t) {
            const {
                auto: n,
                keyPath: r
            } = this.schema.primKey;
            let i = e;
            return r && n && (i = Mt(r)(e)), this._trans("readwrite", (e => this.core.mutate({
                trans: e,
                type: "put",
                values: [i],
                keys: null != t ? [t] : null
            }))).then((e => e.numFailures ? Ue.reject(e.failures[0]) : e.lastResult)).then((t => {
                if (r) try {
                    D(e, r, t)
                } catch (e) {}
                return t
            }))
        }
        delete(e) {
            return this._trans("readwrite", (t => this.core.mutate({
                trans: t,
                type: "delete",
                keys: [e]
            }))).then((e => e.numFailures ? Ue.reject(e.failures[0]) : void 0))
        }
        clear() {
            return this._trans("readwrite", (e => this.core.mutate({
                trans: e,
                type: "deleteRange",
                range: It
            }))).then((e => e.numFailures ? Ue.reject(e.failures[0]) : void 0))
        }
        bulkGet(e) {
            return this._trans("readonly", (t => this.core.getMany({
                keys: e,
                trans: t
            }).then((e => e.map((e => this.hook.reading.fire(e)))))))
        }
        bulkAdd(e, t, n) {
            const r = Array.isArray(t) ? t : void 0,
                i = (n = n || (r ? void 0 : t)) ? n.allKeys : void 0;
            return this._trans("readwrite", (t => {
                const {
                    auto: n,
                    keyPath: o
                } = this.schema.primKey;
                if (o && r) throw new ce.InvalidArgument("bulkAdd(): keys argument invalid on tables with inbound keys");
                if (r && r.length !== e.length) throw new ce.InvalidArgument("Arguments objects and keys must have the same length");
                const s = e.length;
                let a = o && n ? e.map(Mt(o)) : e;
                return this.core.mutate({
                    trans: t,
                    type: "add",
                    keys: r,
                    values: a,
                    wantResults: i
                }).then((({
                    numFailures: e,
                    results: t,
                    lastResult: n,
                    failures: r
                }) => {
                    if (0 === e) return i ? t : n;
                    throw new oe(`${this.name}.bulkAdd(): ${e} of ${s} operations failed`, r)
                }))
            }))
        }
        bulkPut(e, t, n) {
            const r = Array.isArray(t) ? t : void 0,
                i = (n = n || (r ? void 0 : t)) ? n.allKeys : void 0;
            return this._trans("readwrite", (t => {
                const {
                    auto: n,
                    keyPath: o
                } = this.schema.primKey;
                if (o && r) throw new ce.InvalidArgument("bulkPut(): keys argument invalid on tables with inbound keys");
                if (r && r.length !== e.length) throw new ce.InvalidArgument("Arguments objects and keys must have the same length");
                const s = e.length;
                let a = o && n ? e.map(Mt(o)) : e;
                return this.core.mutate({
                    trans: t,
                    type: "put",
                    keys: r,
                    values: a,
                    wantResults: i
                }).then((({
                    numFailures: e,
                    results: t,
                    lastResult: n,
                    failures: r
                }) => {
                    if (0 === e) return i ? t : n;
                    throw new oe(`${this.name}.bulkPut(): ${e} of ${s} operations failed`, r)
                }))
            }))
        }
        bulkDelete(e) {
            const t = e.length;
            return this._trans("readwrite", (t => this.core.mutate({
                trans: t,
                type: "delete",
                keys: e
            }))).then((({
                numFailures: e,
                lastResult: n,
                failures: r
            }) => {
                if (0 === e) return n;
                throw new oe(`${this.name}.bulkDelete(): ${e} of ${t} operations failed`, r)
            }))
        }
    }

    function Rt(e) {
        var t = {},
            n = function(n, r) {
                if (r) {
                    for (var i = arguments.length, o = new Array(i - 1); --i;) o[i - 1] = arguments[i];
                    return t[n].subscribe.apply(null, o), e
                }
                if ("string" == typeof n) return t[n]
            };
        n.addEventType = o;
        for (var r = 1, i = arguments.length; r < i; ++r) o(arguments[r]);
        return n;

        function o(e, r, i) {
            if ("object" == typeof e) return s(e);
            r || (r = ge), i || (i = de);
            var o = {
                subscribers: [],
                fire: i,
                subscribe: function(e) {
                    -1 === o.subscribers.indexOf(e) && (o.subscribers.push(e), o.fire = r(o.fire, e))
                },
                unsubscribe: function(e) {
                    o.subscribers = o.subscribers.filter((function(t) {
                        return t !== e
                    })), o.fire = o.subscribers.reduce(r, i)
                }
            };
            return t[e] = n[e] = o, o
        }

        function s(e) {
            h(e).forEach((function(t) {
                var n = e[t];
                if (f(n)) o(t, e[t][0], e[t][1]);
                else {
                    if ("asap" !== n) throw new ce.InvalidArgument("Invalid event config");
                    var r = o(t, he, (function() {
                        for (var e = arguments.length, t = new Array(e); e--;) t[e] = arguments[e];
                        r.subscribers.forEach((function(e) {
                            K((function() {
                                e.apply(null, t)
                            }))
                        }))
                    }))
                }
            }))
        }
    }

    function jt(e, t) {
        return w(t).from({
            prototype: e
        }), t
    }

    function Tt(e, t) {
        return !(e.filter || e.algorithm || e.or) && (t ? e.justLimit : !e.replayFilter)
    }

    function Nt(e, t) {
        e.filter = Dt(e.filter, t)
    }

    function Ft(e, t, n) {
        var r = e.replayFilter;
        e.replayFilter = r ? () => Dt(r(), t()) : t, e.justLimit = n && !r
    }

    function qt(e, t) {
        if (e.isPrimKey) return t.primaryKey;
        const n = t.getIndexByKeyPath(e.index);
        if (!n) throw new ce.Schema("KeyPath " + e.index + " on object store " + t.name + " is not indexed");
        return n
    }

    function Ut(e, t, n) {
        const r = qt(e, t.schema);
        return t.openCursor({
            trans: n,
            values: !e.keysOnly,
            reverse: "prev" === e.dir,
            unique: !!e.unique,
            query: {
                index: r,
                range: e.range
            }
        })
    }

    function Lt(e, t, n, r) {
        const i = e.replayFilter ? Dt(e.filter, e.replayFilter()) : e.filter;
        if (e.or) {
            const o = {},
                s = (e, n, r) => {
                    if (!i || i(n, r, (e => n.stop(e)), (e => n.fail(e)))) {
                        var s = n.primaryKey,
                            a = "" + s;
                        "[object ArrayBuffer]" === a && (a = "" + new Uint8Array(s)), v(o, a) || (o[a] = !0, t(e, n, r))
                    }
                };
            return Promise.all([e.or._iterate(s, n), Wt(Ut(e, r, n), e.algorithm, s, !e.keysOnly && e.valueMapper)])
        }
        return Wt(Ut(e, r, n), Dt(e.algorithm, i), t, !e.keysOnly && e.valueMapper)
    }

    function Wt(e, t, n, r) {
        var i = nt(r ? (e, t, i) => n(r(e), t, i) : n);
        return e.then((e => {
            if (e) return e.start((() => {
                var n = () => e.continue();
                t && !t(e, (e => n = e), (t => {
                    e.stop(t), n = de
                }), (t => {
                    e.fail(t), n = de
                })) || i(e.value, e, (e => n = e)), n()
            }))
        }))
    }

    function zt(e, t) {
        try {
            const n = Vt(e),
                r = Vt(t);
            if (n !== r) return "Array" === n ? 1 : "Array" === r ? -1 : "binary" === n ? 1 : "binary" === r ? -1 : "string" === n ? 1 : "string" === r ? -1 : "Date" === n ? 1 : "Date" !== r ? NaN : -1;
            switch (n) {
                case "number":
                case "Date":
                case "string":
                    return e > t ? 1 : e < t ? -1 : 0;
                case "binary":
                    return function(e, t) {
                        const n = e.length,
                            r = t.length,
                            i = n < r ? n : r;
                        for (let n = 0; n < i; ++n)
                            if (e[n] !== t[n]) return e[n] < t[n] ? -1 : 1;
                        return n === r ? 0 : n < r ? -1 : 1
                    }(Gt(e), Gt(t));
                case "Array":
                    return function(e, t) {
                        const n = e.length,
                            r = t.length,
                            i = n < r ? n : r;
                        for (let n = 0; n < i; ++n) {
                            const r = zt(e[n], t[n]);
                            if (0 !== r) return r
                        }
                        return n === r ? 0 : n < r ? -1 : 1
                    }(e, t)
            }
        } catch (e) {}
        return NaN
    }

    function Vt(e) {
        const t = typeof e;
        if ("object" !== t) return t;
        if (ArrayBuffer.isView(e)) return "binary";
        const n = U(e);
        return "ArrayBuffer" === n ? "binary" : n
    }

    function Gt(e) {
        return e instanceof Uint8Array ? e : ArrayBuffer.isView(e) ? new Uint8Array(e.buffer, e.byteOffset, e.byteLength) : new Uint8Array(e)
    }
    class Yt {
        _read(e, t) {
            var n = this._ctx;
            return n.error ? n.table._trans(null, kt.bind(null, n.error)) : n.table._trans("readonly", e).then(t)
        }
        _write(e) {
            var t = this._ctx;
            return t.error ? t.table._trans(null, kt.bind(null, t.error)) : t.table._trans("readwrite", e, "locked")
        }
        _addAlgorithm(e) {
            var t = this._ctx;
            t.algorithm = Dt(t.algorithm, e)
        }
        _iterate(e, t) {
            return Lt(this._ctx, e, t, this._ctx.table.core)
        }
        clone(e) {
            var t = Object.create(this.constructor.prototype),
                n = Object.create(this._ctx);
            return e && p(n, e), t._ctx = n, t
        }
        raw() {
            return this._ctx.valueMapper = null, this
        }
        each(e) {
            var t = this._ctx;
            return this._read((n => Lt(t, e, n, t.table.core)))
        }
        count(e) {
            return this._read((e => {
                const t = this._ctx,
                    n = t.table.core;
                if (Tt(t, !0)) return n.count({
                    trans: e,
                    query: {
                        index: qt(t, n.schema),
                        range: t.range
                    }
                }).then((e => Math.min(e, t.limit)));
                var r = 0;
                return Lt(t, (() => (++r, !1)), e, n).then((() => r))
            })).then(e)
        }
        sortBy(e, t) {
            const n = e.split(".").reverse(),
                r = n[0],
                i = n.length - 1;

            function o(e, t) {
                return t ? o(e[n[t]], t - 1) : e[r]
            }
            var s = "next" === this._ctx.dir ? 1 : -1;

            function a(e, t) {
                var n = o(e, i),
                    r = o(t, i);
                return n < r ? -s : n > r ? s : 0
            }
            return this.toArray((function(e) {
                return e.sort(a)
            })).then(t)
        }
        toArray(e) {
            return this._read((e => {
                var t = this._ctx;
                if ("next" === t.dir && Tt(t, !0) && t.limit > 0) {
                    const {
                        valueMapper: n
                    } = t, r = qt(t, t.table.core.schema);
                    return t.table.core.query({
                        trans: e,
                        limit: t.limit,
                        values: !0,
                        query: {
                            index: r,
                            range: t.range
                        }
                    }).then((({
                        result: e
                    }) => n ? e.map(n) : e))
                } {
                    const n = [];
                    return Lt(t, (e => n.push(e)), e, t.table.core).then((() => n))
                }
            }), e)
        }
        offset(e) {
            var t = this._ctx;
            return e <= 0 || (t.offset += e, Tt(t) ? Ft(t, (() => {
                var t = e;
                return (e, n) => 0 === t || (1 === t ? (--t, !1) : (n((() => {
                    e.advance(t), t = 0
                })), !1))
            })) : Ft(t, (() => {
                var t = e;
                return () => --t < 0
            }))), this
        }
        limit(e) {
            return this._ctx.limit = Math.min(this._ctx.limit, e), Ft(this._ctx, (() => {
                var t = e;
                return function(e, n, r) {
                    return --t <= 0 && n(r), t >= 0
                }
            }), !0), this
        }
        until(e, t) {
            return Nt(this._ctx, (function(n, r, i) {
                return !e(n.value) || (r(i), t)
            })), this
        }
        first(e) {
            return this.limit(1).toArray((function(e) {
                return e[0]
            })).then(e)
        }
        last(e) {
            return this.reverse().first(e)
        }
        filter(e) {
            var t, n;
            return Nt(this._ctx, (function(t) {
                return e(t.value)
            })), t = this._ctx, n = e, t.isMatch = Dt(t.isMatch, n), this
        }
        and(e) {
            return this.filter(e)
        }
        or(e) {
            return new this.db.WhereClause(this._ctx.table, e, this)
        }
        reverse() {
            return this._ctx.dir = "prev" === this._ctx.dir ? "next" : "prev", this._ondirectionchange && this._ondirectionchange(this._ctx.dir), this
        }
        desc() {
            return this.reverse()
        }
        eachKey(e) {
            var t = this._ctx;
            return t.keysOnly = !t.isMatch, this.each((function(t, n) {
                e(n.key, n)
            }))
        }
        eachUniqueKey(e) {
            return this._ctx.unique = "unique", this.eachKey(e)
        }
        eachPrimaryKey(e) {
            var t = this._ctx;
            return t.keysOnly = !t.isMatch, this.each((function(t, n) {
                e(n.primaryKey, n)
            }))
        }
        keys(e) {
            var t = this._ctx;
            t.keysOnly = !t.isMatch;
            var n = [];
            return this.each((function(e, t) {
                n.push(t.key)
            })).then((function() {
                return n
            })).then(e)
        }
        primaryKeys(e) {
            var t = this._ctx;
            if ("next" === t.dir && Tt(t, !0) && t.limit > 0) return this._read((e => {
                var n = qt(t, t.table.core.schema);
                return t.table.core.query({
                    trans: e,
                    values: !1,
                    limit: t.limit,
                    query: {
                        index: n,
                        range: t.range
                    }
                })
            })).then((({
                result: e
            }) => e)).then(e);
            t.keysOnly = !t.isMatch;
            var n = [];
            return this.each((function(e, t) {
                n.push(t.primaryKey)
            })).then((function() {
                return n
            })).then(e)
        }
        uniqueKeys(e) {
            return this._ctx.unique = "unique", this.keys(e)
        }
        firstKey(e) {
            return this.limit(1).keys((function(e) {
                return e[0]
            })).then(e)
        }
        lastKey(e) {
            return this.reverse().firstKey(e)
        }
        distinct() {
            var e = this._ctx,
                t = e.index && e.table.schema.idxByName[e.index];
            if (!t || !t.multi) return this;
            var n = {};
            return Nt(this._ctx, (function(e) {
                var t = e.primaryKey.toString(),
                    r = v(n, t);
                return n[t] = !0, !r
            })), this
        }
        modify(e) {
            var t = this._ctx;
            return this._write((n => {
                var r;
                if ("function" == typeof e) r = e;
                else {
                    var i = h(e),
                        o = i.length;
                    r = function(t) {
                        for (var n = !1, r = 0; r < o; ++r) {
                            var s = i[r],
                                a = e[s];
                            A(t, s) !== a && (D(t, s, a), n = !0)
                        }
                        return n
                    }
                }
                const s = t.table.core,
                    {
                        outbound: a,
                        extractKey: c
                    } = s.schema.primaryKey,
                    l = this.db._options.modifyChunkSize || 200,
                    u = [];
                let d = 0;
                const f = [],
                    p = (e, t) => {
                        const {
                            failures: n,
                            numFailures: r
                        } = t;
                        d += e - r;
                        for (let e of h(n)) u.push(n[e])
                    };
                return this.clone().primaryKeys().then((i => {
                    const o = u => {
                        const d = Math.min(l, i.length - u);
                        return s.getMany({
                            trans: n,
                            keys: i.slice(u, u + d),
                            cache: "immutable"
                        }).then((h => {
                            const f = [],
                                m = [],
                                y = a ? [] : null,
                                v = [];
                            for (let e = 0; e < d; ++e) {
                                const t = h[e],
                                    n = {
                                        value: N(t),
                                        primKey: i[u + e]
                                    };
                                !1 !== r.call(n, n.value, n) && (null == n.value ? v.push(i[u + e]) : a || 0 === zt(c(t), c(n.value)) ? (m.push(n.value), a && y.push(i[u + e])) : (v.push(i[u + e]), f.push(n.value)))
                            }
                            const g = Tt(t) && t.limit === 1 / 0 && ("function" != typeof e || e === Jt) && {
                                index: t.index,
                                range: t.range
                            };
                            return Promise.resolve(f.length > 0 && s.mutate({
                                trans: n,
                                type: "add",
                                values: f
                            }).then((e => {
                                for (let t in e.failures) v.splice(parseInt(t), 1);
                                p(f.length, e)
                            }))).then((() => (m.length > 0 || g && "object" == typeof e) && s.mutate({
                                trans: n,
                                type: "put",
                                keys: y,
                                values: m,
                                criteria: g,
                                changeSpec: "function" != typeof e && e
                            }).then((e => p(m.length, e))))).then((() => (v.length > 0 || g && e === Jt) && s.mutate({
                                trans: n,
                                type: "delete",
                                keys: v,
                                criteria: g
                            }).then((e => p(v.length, e))))).then((() => i.length > u + d && o(u + l)))
                        }))
                    };
                    return o(0).then((() => {
                        if (u.length > 0) throw new ie("Error modifying one or more objects", u, d, f);
                        return i.length
                    }))
                }))
            }))
        }
        delete() {
            var e = this._ctx,
                t = e.range;
            return Tt(e) && (e.isPrimKey && !Et || 3 === t.type) ? this._write((n => {
                const {
                    primaryKey: r
                } = e.table.core.schema, i = t;
                return e.table.core.count({
                    trans: n,
                    query: {
                        index: r,
                        range: i
                    }
                }).then((t => e.table.core.mutate({
                    trans: n,
                    type: "deleteRange",
                    range: i
                }).then((({
                    failures: e,
                    lastResult: n,
                    results: r,
                    numFailures: i
                }) => {
                    if (i) throw new ie("Could not delete some values", Object.keys(e).map((t => e[t])), t - i);
                    return t - i
                }))))
            })) : this.modify(Jt)
        }
    }
    const Jt = (e, t) => t.value = null;

    function Ht(e, t) {
        return e < t ? -1 : e === t ? 0 : 1
    }

    function Qt(e, t) {
        return e > t ? -1 : e === t ? 0 : 1
    }

    function Zt(e, t, n) {
        var r = e instanceof rn ? new e.Collection(e) : e;
        return r._ctx.error = n ? new n(t) : new TypeError(t), r
    }

    function Xt(e) {
        return new e.Collection(e, (() => nn(""))).limit(0)
    }

    function $t(e, t, n, r, i, o) {
        for (var s = Math.min(e.length, r.length), a = -1, c = 0; c < s; ++c) {
            var l = t[c];
            if (l !== r[c]) return i(e[c], n[c]) < 0 ? e.substr(0, c) + n[c] + n.substr(c + 1) : i(e[c], r[c]) < 0 ? e.substr(0, c) + r[c] + n.substr(c + 1) : a >= 0 ? e.substr(0, a) + t[a] + n.substr(a + 1) : null;
            i(e[c], l) < 0 && (a = c)
        }
        return s < r.length && "next" === o ? e + n.substr(e.length) : s < e.length && "prev" === o ? e.substr(0, n.length) : a < 0 ? null : e.substr(0, a) + r[a] + n.substr(a + 1)
    }

    function en(e, t, n, r) {
        var i, o, s, a, c, l, u, d = n.length;
        if (!n.every((e => "string" == typeof e))) return Zt(e, "String expected.");

        function h(e) {
            i = function(e) {
                return "next" === e ? e => e.toUpperCase() : e => e.toLowerCase()
            }(e), o = function(e) {
                return "next" === e ? e => e.toLowerCase() : e => e.toUpperCase()
            }(e), s = "next" === e ? Ht : Qt;
            var t = n.map((function(e) {
                return {
                    lower: o(e),
                    upper: i(e)
                }
            })).sort((function(e, t) {
                return s(e.lower, t.lower)
            }));
            a = t.map((function(e) {
                return e.upper
            })), c = t.map((function(e) {
                return e.lower
            })), l = e, u = "next" === e ? "" : r
        }
        h("next");
        var f = new e.Collection(e, (() => tn(a[0], c[d - 1] + r)));
        f._ondirectionchange = function(e) {
            h(e)
        };
        var p = 0;
        return f._addAlgorithm((function(e, n, r) {
            var i = e.key;
            if ("string" != typeof i) return !1;
            var h = o(i);
            if (t(h, c, p)) return !0;
            for (var f = null, m = p; m < d; ++m) {
                var y = $t(i, h, a[m], c[m], s, l);
                null === y && null === f ? p = m + 1 : (null === f || s(f, y) > 0) && (f = y)
            }
            return n(null !== f ? function() {
                e.continue(f + u)
            } : r), !1
        })), f
    }

    function tn(e, t, n, r) {
        return {
            type: 2,
            lower: e,
            upper: t,
            lowerOpen: n,
            upperOpen: r
        }
    }

    function nn(e) {
        return {
            type: 1,
            lower: e,
            upper: e
        }
    }
    class rn {
        get Collection() {
            return this._ctx.table.db.Collection
        }
        between(e, t, n, r) {
            n = !1 !== n, r = !0 === r;
            try {
                return this._cmp(e, t) > 0 || 0 === this._cmp(e, t) && (n || r) && (!n || !r) ? Xt(this) : new this.Collection(this, (() => tn(e, t, !n, !r)))
            } catch (e) {
                return Zt(this, Pt)
            }
        }
        equals(e) {
            return null == e ? Zt(this, Pt) : new this.Collection(this, (() => nn(e)))
        }
        above(e) {
            return null == e ? Zt(this, Pt) : new this.Collection(this, (() => tn(e, void 0, !0)))
        }
        aboveOrEqual(e) {
            return null == e ? Zt(this, Pt) : new this.Collection(this, (() => tn(e, void 0, !1)))
        }
        below(e) {
            return null == e ? Zt(this, Pt) : new this.Collection(this, (() => tn(void 0, e, !1, !0)))
        }
        belowOrEqual(e) {
            return null == e ? Zt(this, Pt) : new this.Collection(this, (() => tn(void 0, e)))
        }
        startsWith(e) {
            return "string" != typeof e ? Zt(this, "String expected.") : this.between(e, e + xt, !0, !0)
        }
        startsWithIgnoreCase(e) {
            return "" === e ? this.startsWith(e) : en(this, ((e, t) => 0 === e.indexOf(t[0])), [e], xt)
        }
        equalsIgnoreCase(e) {
            return en(this, ((e, t) => e === t[0]), [e], "")
        }
        anyOfIgnoreCase() {
            var e = V.apply(z, arguments);
            return 0 === e.length ? Xt(this) : en(this, ((e, t) => -1 !== t.indexOf(e)), e, "")
        }
        startsWithAnyOfIgnoreCase() {
            var e = V.apply(z, arguments);
            return 0 === e.length ? Xt(this) : en(this, ((e, t) => t.some((t => 0 === e.indexOf(t)))), e, xt)
        }
        anyOf() {
            const e = V.apply(z, arguments);
            let t = this._cmp;
            try {
                e.sort(t)
            } catch (e) {
                return Zt(this, Pt)
            }
            if (0 === e.length) return Xt(this);
            const n = new this.Collection(this, (() => tn(e[0], e[e.length - 1])));
            n._ondirectionchange = n => {
                t = "next" === n ? this._ascending : this._descending, e.sort(t)
            };
            let r = 0;
            return n._addAlgorithm(((n, i, o) => {
                const s = n.key;
                for (; t(s, e[r]) > 0;)
                    if (++r, r === e.length) return i(o), !1;
                return 0 === t(s, e[r]) || (i((() => {
                    n.continue(e[r])
                })), !1)
            })), n
        }
        notEqual(e) {
            return this.inAnyRange([
                [-1 / 0, e],
                [e, this.db._maxKey]
            ], {
                includeLowers: !1,
                includeUppers: !1
            })
        }
        noneOf() {
            const e = V.apply(z, arguments);
            if (0 === e.length) return new this.Collection(this);
            try {
                e.sort(this._ascending)
            } catch (e) {
                return Zt(this, Pt)
            }
            const t = e.reduce(((e, t) => e ? e.concat([
                [e[e.length - 1][1], t]
            ]) : [
                [-1 / 0, t]
            ]), null);
            return t.push([e[e.length - 1], this.db._maxKey]), this.inAnyRange(t, {
                includeLowers: !1,
                includeUppers: !1
            })
        }
        inAnyRange(e, t) {
            const n = this._cmp,
                r = this._ascending,
                i = this._descending,
                o = this._min,
                s = this._max;
            if (0 === e.length) return Xt(this);
            if (!e.every((e => void 0 !== e[0] && void 0 !== e[1] && r(e[0], e[1]) <= 0))) return Zt(this, "First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower", ce.InvalidArgument);
            const a = !t || !1 !== t.includeLowers,
                c = t && !0 === t.includeUppers;
            let l, u = r;

            function d(e, t) {
                return u(e[0], t[0])
            }
            try {
                l = e.reduce((function(e, t) {
                    let r = 0,
                        i = e.length;
                    for (; r < i; ++r) {
                        const i = e[r];
                        if (n(t[0], i[1]) < 0 && n(t[1], i[0]) > 0) {
                            i[0] = o(i[0], t[0]), i[1] = s(i[1], t[1]);
                            break
                        }
                    }
                    return r === i && e.push(t), e
                }), []), l.sort(d)
            } catch (e) {
                return Zt(this, Pt)
            }
            let h = 0;
            const f = c ? e => r(e, l[h][1]) > 0 : e => r(e, l[h][1]) >= 0,
                p = a ? e => i(e, l[h][0]) > 0 : e => i(e, l[h][0]) >= 0;
            let m = f;
            const y = new this.Collection(this, (() => tn(l[0][0], l[l.length - 1][1], !a, !c)));
            return y._ondirectionchange = e => {
                "next" === e ? (m = f, u = r) : (m = p, u = i), l.sort(d)
            }, y._addAlgorithm(((e, t, n) => {
                for (var i = e.key; m(i);)
                    if (++h, h === l.length) return t(n), !1;
                return !! function(e) {
                    return !f(e) && !p(e)
                }(i) || (0 === this._cmp(i, l[h][1]) || 0 === this._cmp(i, l[h][0]) || t((() => {
                    u === r ? e.continue(l[h][0]) : e.continue(l[h][1])
                })), !1)
            })), y
        }
        startsWithAnyOf() {
            const e = V.apply(z, arguments);
            return e.every((e => "string" == typeof e)) ? 0 === e.length ? Xt(this) : this.inAnyRange(e.map((e => [e, e + xt]))) : Zt(this, "startsWithAnyOf() only works with strings")
        }
    }

    function on(e) {
        return nt((function(t) {
            return sn(t), e(t.target.error), !1
        }))
    }

    function sn(e) {
        e.stopPropagation && e.stopPropagation(), e.preventDefault && e.preventDefault()
    }
    const an = Rt(null, "storagemutated");
    class cn {
        _lock() {
            return S(!Te.global), ++this._reculock, 1 !== this._reculock || Te.global || (Te.lockOwnerFor = this), this
        }
        _unlock() {
            if (S(!Te.global), 0 == --this._reculock)
                for (Te.global || (Te.lockOwnerFor = null); this._blockedFuncs.length > 0 && !this._locked();) {
                    var e = this._blockedFuncs.shift();
                    try {
                        vt(e[1], e[0])
                    } catch (e) {}
                }
            return this
        }
        _locked() {
            return this._reculock && Te.lockOwnerFor !== this
        }
        create(e) {
            if (!this.mode) return this;
            const t = this.db.idbdb,
                n = this.db._state.dbOpenError;
            if (S(!this.idbtrans), !e && !t) switch (n && n.name) {
                case "DatabaseClosedError":
                    throw new ce.DatabaseClosed(n);
                case "MissingAPIError":
                    throw new ce.MissingAPI(n.message, n);
                default:
                    throw new ce.OpenFailed(n)
            }
            if (!this.active) throw new ce.TransactionInactive;
            return S(null === this._completion._state), (e = this.idbtrans = e || (this.db.core ? this.db.core.transaction(this.storeNames, this.mode, {
                durability: this.chromeTransactionDurability
            }) : t.transaction(this.storeNames, this.mode, {
                durability: this.chromeTransactionDurability
            }))).onerror = nt((t => {
                sn(t), this._reject(e.error)
            })), e.onabort = nt((t => {
                sn(t), this.active && this._reject(new ce.Abort(e.error)), this.active = !1, this.on("abort").fire(t)
            })), e.oncomplete = nt((() => {
                this.active = !1, this._resolve(), "mutatedParts" in e && an.storagemutated.fire(e.mutatedParts)
            })), this
        }
        _promise(e, t, n) {
            if ("readwrite" === e && "readwrite" !== this.mode) return kt(new ce.ReadOnly("Transaction is readonly"));
            if (!this.active) return kt(new ce.TransactionInactive);
            if (this._locked()) return new Ue(((r, i) => {
                this._blockedFuncs.push([() => {
                    this._promise(e, t, n).then(r, i)
                }, Te])
            }));
            if (n) return lt((() => {
                var e = new Ue(((e, n) => {
                    this._lock();
                    const r = t(e, n, this);
                    r && r.then && r.then(e, n)
                }));
                return e.finally((() => this._unlock())), e._lib = !0, e
            }));
            var r = new Ue(((e, n) => {
                var r = t(e, n, this);
                r && r.then && r.then(e, n)
            }));
            return r._lib = !0, r
        }
        _root() {
            return this.parent ? this.parent._root() : this
        }
        waitFor(e) {
            var t = this._root();
            const n = Ue.resolve(e);
            if (t._waitingFor) t._waitingFor = t._waitingFor.then((() => n));
            else {
                t._waitingFor = n, t._waitingQueue = [];
                var r = t.idbtrans.objectStore(t.storeNames[0]);
                ! function e() {
                    for (++t._spinCount; t._waitingQueue.length;) t._waitingQueue.shift()();
                    t._waitingFor && (r.get(-1 / 0).onsuccess = e)
                }()
            }
            var i = t._waitingFor;
            return new Ue(((e, r) => {
                n.then((n => t._waitingQueue.push(nt(e.bind(null, n)))), (e => t._waitingQueue.push(nt(r.bind(null, e))))).finally((() => {
                    t._waitingFor === i && (t._waitingFor = null)
                }))
            }))
        }
        abort() {
            this.active && (this.active = !1, this.idbtrans && this.idbtrans.abort(), this._reject(new ce.Abort))
        }
        table(e) {
            const t = this._memoizedTables || (this._memoizedTables = {});
            if (v(t, e)) return t[e];
            const n = this.schema[e];
            if (!n) throw new ce.NotFound("Table " + e + " not part of transaction");
            const r = new this.db.Table(e, n, this);
            return r.core = this.db.core.table(e), t[e] = r, r
        }
    }

    function ln(e, t, n, r, i, o, s) {
        return {
            name: e,
            keyPath: t,
            unique: n,
            multi: r,
            auto: i,
            compound: o,
            src: (n && !s ? "&" : "") + (r ? "*" : "") + (i ? "++" : "") + un(t)
        }
    }

    function un(e) {
        return "string" == typeof e ? e : e ? "[" + [].join.call(e, "+") + "]" : ""
    }

    function dn(e, t, n) {
        return {
            name: e,
            primKey: t,
            indexes: n,
            mappedClass: null,
            idxByName: E(n, (e => [e.name, e]))
        }
    }
    let hn = e => {
        try {
            return e.only([
                []
            ]), hn = () => [
                []
            ], [
                []
            ]
        } catch (e) {
            return hn = () => xt, xt
        }
    };

    function fn(e) {
        return null == e ? () => {} : "string" == typeof e ? function(e) {
            return 1 === e.split(".").length ? t => t[e] : t => A(t, e)
        }(e) : t => A(t, e)
    }

    function pn(e) {
        return [].slice.call(e)
    }
    let mn = 0;

    function yn(e) {
        return null == e ? ":id" : "string" == typeof e ? e : `[${e.join("+")}]`
    }

    function vn(e, t, n) {
        function r(e) {
            if (3 === e.type) return null;
            if (4 === e.type) throw new Error("Cannot convert never type to IDBKeyRange");
            const {
                lower: n,
                upper: r,
                lowerOpen: i,
                upperOpen: o
            } = e;
            return void 0 === n ? void 0 === r ? null : t.upperBound(r, !!o) : void 0 === r ? t.lowerBound(n, !!i) : t.bound(n, r, !!i, !!o)
        }
        const {
            schema: i,
            hasGetAll: o
        } = function(e, t) {
            const n = pn(e.objectStoreNames);
            return {
                schema: {
                    name: e.name,
                    tables: n.map((e => t.objectStore(e))).map((e => {
                        const {
                            keyPath: t,
                            autoIncrement: n
                        } = e, r = f(t), i = null == t, o = {}, s = {
                            name: e.name,
                            primaryKey: {
                                name: null,
                                isPrimaryKey: !0,
                                outbound: i,
                                compound: r,
                                keyPath: t,
                                autoIncrement: n,
                                unique: !0,
                                extractKey: fn(t)
                            },
                            indexes: pn(e.indexNames).map((t => e.index(t))).map((e => {
                                const {
                                    name: t,
                                    unique: n,
                                    multiEntry: r,
                                    keyPath: i
                                } = e, s = {
                                    name: t,
                                    compound: f(i),
                                    keyPath: i,
                                    unique: n,
                                    multiEntry: r,
                                    extractKey: fn(i)
                                };
                                return o[yn(i)] = s, s
                            })),
                            getIndexByKeyPath: e => o[yn(e)]
                        };
                        return o[":id"] = s.primaryKey, null != t && (o[yn(t)] = s.primaryKey), s
                    }))
                },
                hasGetAll: n.length > 0 && "getAll" in t.objectStore(n[0]) && !("undefined" != typeof navigator && /Safari/.test(navigator.userAgent) && !/(Chrome\/|Edge\/)/.test(navigator.userAgent) && [].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1] < 604)
            }
        }(e, n), s = i.tables.map((e => function(e) {
            const t = e.name;
            return {
                name: t,
                schema: e,
                mutate: function({
                    trans: e,
                    type: n,
                    keys: i,
                    values: o,
                    range: s
                }) {
                    return new Promise(((a, c) => {
                        a = nt(a);
                        const l = e.objectStore(t),
                            u = null == l.keyPath,
                            d = "put" === n || "add" === n;
                        if (!d && "delete" !== n && "deleteRange" !== n) throw new Error("Invalid operation type: " + n);
                        const {
                            length: h
                        } = i || o || {
                            length: 1
                        };
                        if (i && o && i.length !== o.length) throw new Error("Given keys array must have same length as given values array.");
                        if (0 === h) return a({
                            numFailures: 0,
                            failures: {},
                            results: [],
                            lastResult: void 0
                        });
                        let f;
                        const p = [],
                            m = [];
                        let y = 0;
                        const v = e => {
                            ++y, sn(e)
                        };
                        if ("deleteRange" === n) {
                            if (4 === s.type) return a({
                                numFailures: y,
                                failures: m,
                                results: [],
                                lastResult: void 0
                            });
                            3 === s.type ? p.push(f = l.clear()) : p.push(f = l.delete(r(s)))
                        } else {
                            const [e, t] = d ? u ? [o, i] : [o, null] : [i, null];
                            if (d)
                                for (let r = 0; r < h; ++r) p.push(f = t && void 0 !== t[r] ? l[n](e[r], t[r]) : l[n](e[r])), f.onerror = v;
                            else
                                for (let t = 0; t < h; ++t) p.push(f = l[n](e[t])), f.onerror = v
                        }
                        const g = e => {
                            const t = e.target.result;
                            p.forEach(((e, t) => null != e.error && (m[t] = e.error))), a({
                                numFailures: y,
                                failures: m,
                                results: "delete" === n ? i : p.map((e => e.result)),
                                lastResult: t
                            })
                        };
                        f.onerror = e => {
                            v(e), g(e)
                        }, f.onsuccess = g
                    }))
                },
                getMany: ({
                    trans: e,
                    keys: n
                }) => new Promise(((r, i) => {
                    r = nt(r);
                    const o = e.objectStore(t),
                        s = n.length,
                        a = new Array(s);
                    let c, l = 0,
                        u = 0;
                    const d = e => {
                            const t = e.target;
                            a[t._pos] = t.result, ++u === l && r(a)
                        },
                        h = on(i);
                    for (let e = 0; e < s; ++e) null != n[e] && (c = o.get(n[e]), c._pos = e, c.onsuccess = d, c.onerror = h, ++l);
                    0 === l && r(a)
                })),
                get: ({
                    trans: e,
                    key: n
                }) => new Promise(((r, i) => {
                    r = nt(r);
                    const o = e.objectStore(t).get(n);
                    o.onsuccess = e => r(e.target.result), o.onerror = on(i)
                })),
                query: function(e) {
                    return n => new Promise(((i, o) => {
                        i = nt(i);
                        const {
                            trans: s,
                            values: a,
                            limit: c,
                            query: l
                        } = n, u = c === 1 / 0 ? void 0 : c, {
                            index: d,
                            range: h
                        } = l, f = s.objectStore(t), p = d.isPrimaryKey ? f : f.index(d.name), m = r(h);
                        if (0 === c) return i({
                            result: []
                        });
                        if (e) {
                            const e = a ? p.getAll(m, u) : p.getAllKeys(m, u);
                            e.onsuccess = e => i({
                                result: e.target.result
                            }), e.onerror = on(o)
                        } else {
                            let e = 0;
                            const t = a || !("openKeyCursor" in p) ? p.openCursor(m) : p.openKeyCursor(m),
                                n = [];
                            t.onsuccess = r => {
                                const o = t.result;
                                return o ? (n.push(a ? o.value : o.primaryKey), ++e === c ? i({
                                    result: n
                                }) : void o.continue()) : i({
                                    result: n
                                })
                            }, t.onerror = on(o)
                        }
                    }))
                }(o),
                openCursor: function({
                    trans: e,
                    values: n,
                    query: i,
                    reverse: o,
                    unique: s
                }) {
                    return new Promise(((a, c) => {
                        a = nt(a);
                        const {
                            index: l,
                            range: u
                        } = i, d = e.objectStore(t), h = l.isPrimaryKey ? d : d.index(l.name), f = o ? s ? "prevunique" : "prev" : s ? "nextunique" : "next", p = n || !("openKeyCursor" in h) ? h.openCursor(r(u), f) : h.openKeyCursor(r(u), f);
                        p.onerror = on(c), p.onsuccess = nt((t => {
                            const n = p.result;
                            if (!n) return void a(null);
                            n.___id = ++mn, n.done = !1;
                            const r = n.continue.bind(n);
                            let i = n.continuePrimaryKey;
                            i && (i = i.bind(n));
                            const o = n.advance.bind(n),
                                s = () => {
                                    throw new Error("Cursor not stopped")
                                };
                            n.trans = e, n.stop = n.continue = n.continuePrimaryKey = n.advance = () => {
                                throw new Error("Cursor not started")
                            }, n.fail = nt(c), n.next = function() {
                                let e = 1;
                                return this.start((() => e-- ? this.continue() : this.stop())).then((() => this))
                            }, n.start = e => {
                                const t = new Promise(((e, t) => {
                                        e = nt(e), p.onerror = on(t), n.fail = t, n.stop = t => {
                                            n.stop = n.continue = n.continuePrimaryKey = n.advance = s, e(t)
                                        }
                                    })),
                                    a = () => {
                                        if (p.result) try {
                                            e()
                                        } catch (e) {
                                            n.fail(e)
                                        } else n.done = !0, n.start = () => {
                                            throw new Error("Cursor behind last entry")
                                        }, n.stop()
                                    };
                                return p.onsuccess = nt((e => {
                                    p.onsuccess = a, a()
                                })), n.continue = r, n.continuePrimaryKey = i, n.advance = o, a(), t
                            }, a(n)
                        }), c)
                    }))
                },
                count({
                    query: e,
                    trans: n
                }) {
                    const {
                        index: i,
                        range: o
                    } = e;
                    return new Promise(((e, s) => {
                        const a = n.objectStore(t),
                            c = i.isPrimaryKey ? a : a.index(i.name),
                            l = r(o),
                            u = l ? c.count(l) : c.count();
                        u.onsuccess = nt((t => e(t.target.result))), u.onerror = on(s)
                    }))
                }
            }
        }(e))), a = {};
        return s.forEach((e => a[e.name] = e)), {
            stack: "dbcore",
            transaction: e.transaction.bind(e),
            table(e) {
                if (!a[e]) throw new Error(`Table '${e}' not found`);
                return a[e]
            },
            MIN_KEY: -1 / 0,
            MAX_KEY: hn(t),
            schema: i
        }
    }

    function gn({
        _novip: e
    }, t) {
        const n = t.db,
            r = function(e, t, {
                IDBKeyRange: n,
                indexedDB: r
            }, i) {
                const o = function(e, t) {
                    return t.reduce(((e, {
                        create: t
                    }) => ({...e, ...t(e)
                    })), e)
                }(vn(t, n, i), e.dbcore);
                return {
                    dbcore: o
                }
            }(e._middlewares, n, e._deps, t);
        e.core = r.dbcore, e.tables.forEach((t => {
            const n = t.name;
            e.core.schema.tables.some((e => e.name === n)) && (t.core = e.core.table(n), e[n] instanceof e.Table && (e[n].core = t.core))
        }))
    }

    function bn({
        _novip: e
    }, t, n, r) {
        n.forEach((n => {
            const i = r[n];
            t.forEach((t => {
                const r = C(t, n);
                (!r || "value" in r && void 0 === r.value) && (t === e.Transaction.prototype || t instanceof e.Transaction ? _(t, n, {
                    get() {
                        return this.table(n)
                    }, set(e) {
                        b(this, n, {
                            value: e,
                            writable: !0,
                            configurable: !0,
                            enumerable: !0
                        })
                    }
                }) : t[n] = new e.Table(n, i))
            }))
        }))
    }

    function _n({
        _novip: e
    }, t) {
        t.forEach((t => {
            for (let n in t) t[n] instanceof e.Table && delete t[n]
        }))
    }

    function wn(e, t) {
        return e._cfg.version - t._cfg.version
    }

    function kn(e, t, n, r) {
        const i = e._dbSchema,
            o = e._createTransaction("readwrite", e._storeNames, i);
        o.create(n), o._completion.catch(r);
        const s = o._reject.bind(o),
            a = Te.transless || Te;
        lt((() => {
            Te.trans = o, Te.transless = a, 0 === t ? (h(i).forEach((e => {
                xn(n, e, i[e].primKey, i[e].indexes)
            })), gn(e, n), Ue.follow((() => e.on.populate.fire(o))).catch(s)) : function({
                _novip: e
            }, t, n, r) {
                const i = [],
                    o = e._versions;
                let s = e._dbSchema = On(e, e.idbdb, r),
                    a = !1;
                return o.filter((e => e._cfg.version >= t)).forEach((o => {
                        i.push((() => {
                            const i = s,
                                c = o._cfg.dbschema;
                            Sn(e, i, r), Sn(e, c, r), s = e._dbSchema = c;
                            const l = Cn(i, c);
                            l.add.forEach((e => {
                                xn(r, e[0], e[1].primKey, e[1].indexes)
                            })), l.change.forEach((e => {
                                if (e.recreate) throw new ce.Upgrade("Not yet support for changing primary key"); {
                                    const t = r.objectStore(e.name);
                                    e.add.forEach((e => Pn(t, e))), e.change.forEach((e => {
                                        t.deleteIndex(e.name), Pn(t, e)
                                    })), e.del.forEach((e => t.deleteIndex(e)))
                                }
                            }));
                            const u = o._cfg.contentUpgrade;
                            if (u && o._cfg.version > t) {
                                gn(e, r), n._memoizedTables = {}, a = !0;
                                let t = I(c);
                                l.del.forEach((e => {
                                    t[e] = i[e]
                                })), _n(e, [e.Transaction.prototype]), bn(e, [e.Transaction.prototype], h(t), t), n.schema = t;
                                const o = G(u);
                                let s;
                                o && ut();
                                const d = Ue.follow((() => {
                                    if (s = u(n), s && o) {
                                        var e = dt.bind(null, null);
                                        s.then(e, e)
                                    }
                                }));
                                return s && "function" == typeof s.then ? Ue.resolve(s) : d.then((() => s))
                            }
                        })), i.push((t => {
                            a && Kt || function(e, t) {
                                [].slice.call(t.db.objectStoreNames).forEach((n => null == e[n] && t.db.deleteObjectStore(n)))
                            }(o._cfg.dbschema, t), _n(e, [e.Transaction.prototype]), bn(e, [e.Transaction.prototype], e._storeNames, e._dbSchema), n.schema = e._dbSchema
                        }))
                    })),
                    function e() {
                        return i.length ? Ue.resolve(i.shift()(n.idbtrans)).then(e) : Ue.resolve()
                    }().then((() => {
                        var e, t;
                        t = r, h(e = s).forEach((n => {
                            t.db.objectStoreNames.contains(n) || xn(t, n, e[n].primKey, e[n].indexes)
                        }))
                    }))
            }(e, t, o, n).catch(s)
        }))
    }

    function Cn(e, t) {
        const n = {
            del: [],
            add: [],
            change: []
        };
        let r;
        for (r in e) t[r] || n.del.push(r);
        for (r in t) {
            const i = e[r],
                o = t[r];
            if (i) {
                const e = {
                    name: r,
                    def: o,
                    recreate: !1,
                    del: [],
                    add: [],
                    change: []
                };
                if ("" + (i.primKey.keyPath || "") != "" + (o.primKey.keyPath || "") || i.primKey.auto !== o.primKey.auto && !St) e.recreate = !0, n.change.push(e);
                else {
                    const t = i.idxByName,
                        r = o.idxByName;
                    let s;
                    for (s in t) r[s] || e.del.push(s);
                    for (s in r) {
                        const n = t[s],
                            i = r[s];
                        n ? n.src !== i.src && e.change.push(i) : e.add.push(i)
                    }(e.del.length > 0 || e.add.length > 0 || e.change.length > 0) && n.change.push(e)
                }
            } else n.add.push([r, o])
        }
        return n
    }

    function xn(e, t, n, r) {
        const i = e.db.createObjectStore(t, n.keyPath ? {
            keyPath: n.keyPath,
            autoIncrement: n.auto
        } : {
            autoIncrement: n.auto
        });
        return r.forEach((e => Pn(i, e))), i
    }

    function Pn(e, t) {
        e.createIndex(t.name, t.keyPath, {
            unique: t.unique,
            multiEntry: t.multi
        })
    }

    function On(e, t, n) {
        const r = {};
        return P(t.objectStoreNames, 0).forEach((e => {
            const t = n.objectStore(e);
            let i = t.keyPath;
            const o = ln(un(i), i || "", !1, !1, !!t.autoIncrement, i && "string" != typeof i, !0),
                s = [];
            for (let e = 0; e < t.indexNames.length; ++e) {
                const n = t.index(t.indexNames[e]);
                i = n.keyPath;
                var a = ln(n.name, i, !!n.unique, !!n.multiEntry, !1, i && "string" != typeof i, !1);
                s.push(a)
            }
            r[e] = dn(e, o, s)
        })), r
    }

    function Sn({
        _novip: e
    }, t, n) {
        const r = n.db.objectStoreNames;
        for (let i = 0; i < r.length; ++i) {
            const o = r[i],
                s = n.objectStore(o);
            e._hasGetAll = "getAll" in s;
            for (let e = 0; e < s.indexNames.length; ++e) {
                const n = s.indexNames[e],
                    r = s.index(n).keyPath,
                    i = "string" == typeof r ? r : "[" + P(r).join("+") + "]";
                if (t[o]) {
                    const e = t[o].idxByName[i];
                    e && (e.name = n, delete t[o].idxByName[i], t[o].idxByName[n] = e)
                }
            }
        }
        "undefined" != typeof navigator && /Safari/.test(navigator.userAgent) && !/(Chrome\/|Edge\/)/.test(navigator.userAgent) && d.WorkerGlobalScope && d instanceof d.WorkerGlobalScope && [].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1] < 604 && (e._hasGetAll = !1)
    }
    class Kn {
        _parseStoresSpec(e, t) {
            h(e).forEach((n => {
                if (null !== e[n]) {
                    var r = e[n].split(",").map(((e, t) => {
                            const n = (e = e.trim()).replace(/([&*]|\+\+)/g, ""),
                                r = /^\[/.test(n) ? n.match(/^\[(.*)\]$/)[1].split("+") : n;
                            return ln(n, r || null, /\&/.test(e), /\*/.test(e), /\+\+/.test(e), f(r), 0 === t)
                        })),
                        i = r.shift();
                    if (i.multi) throw new ce.Schema("Primary key cannot be multi-valued");
                    r.forEach((e => {
                        if (e.auto) throw new ce.Schema("Only primary key can be marked as autoIncrement (++)");
                        if (!e.keyPath) throw new ce.Schema("Index must have a name and cannot be an empty string")
                    })), t[n] = dn(n, i, r)
                }
            }))
        }
        stores(e) {
            const t = this.db;
            this._cfg.storesSource = this._cfg.storesSource ? p(this._cfg.storesSource, e) : e;
            const n = t._versions,
                r = {};
            let i = {};
            return n.forEach((e => {
                p(r, e._cfg.storesSource), i = e._cfg.dbschema = {}, e._parseStoresSpec(r, i)
            })), t._dbSchema = i, _n(t, [t._allTables, t, t.Transaction.prototype]), bn(t, [t._allTables, t, t.Transaction.prototype, this._cfg.tables], h(i), i), t._storeNames = h(i), this
        }
        upgrade(e) {
            return this._cfg.contentUpgrade = be(this._cfg.contentUpgrade || de, e), this
        }
    }

    function En(e, t) {
        let n = e._dbNamesDB;
        return n || (n = e._dbNamesDB = new Qn("__dbnames", {
            addons: [],
            indexedDB: e,
            IDBKeyRange: t
        }), n.version(1).stores({
            dbnames: "name"
        })), n.table("dbnames")
    }

    function An(e) {
        return e && "function" == typeof e.databases
    }

    function Dn(e) {
        return lt((function() {
            return Te.letThrough = !0, e()
        }))
    }

    function In() {
        var e;
        return !navigator.userAgentData && /Safari\//.test(navigator.userAgent) && !/Chrom(e|ium)\//.test(navigator.userAgent) && indexedDB.databases ? new Promise((function(t) {
            var n = function() {
                return indexedDB.databases().finally(t)
            };
            e = setInterval(n, 100), n()
        })).finally((function() {
            return clearInterval(e)
        })) : Promise.resolve()
    }

    function Mn(e) {
        var t = t => e.next(t),
            n = i(t),
            r = i((t => e.throw(t)));

        function i(e) {
            return t => {
                var i = e(t),
                    o = i.value;
                return i.done ? o : o && "function" == typeof o.then ? o.then(n, r) : f(o) ? Promise.all(o).then(n, r) : n(o)
            }
        }
        return i(t)()
    }

    function Bn(e, t, n) {
        var r = arguments.length;
        if (r < 2) throw new ce.InvalidArgument("Too few arguments");
        for (var i = new Array(r - 1); --r;) i[r - 1] = arguments[r];
        n = i.pop();
        var o = B(i);
        return [e, o, n]
    }

    function Rn(e, t, n, r, i) {
        return Ue.resolve().then((() => {
            const o = Te.transless || Te,
                s = e._createTransaction(t, n, e._dbSchema, r),
                a = {
                    trans: s,
                    transless: o
                };
            if (r) s.idbtrans = r.idbtrans;
            else try {
                s.create(), e._state.PR1398_maxLoop = 3
            } catch (r) {
                return r.name === se.InvalidState && e.isOpen() && --e._state.PR1398_maxLoop > 0 ? (console.warn("Dexie: Need to reopen db"), e._close(), e.open().then((() => Rn(e, t, n, null, i)))) : kt(r)
            }
            const c = G(i);
            let l;
            c && ut();
            const u = Ue.follow((() => {
                if (l = i.call(s, s), l)
                    if (c) {
                        var e = dt.bind(null, null);
                        l.then(e, e)
                    } else "function" == typeof l.next && "function" == typeof l.throw && (l = Mn(l))
            }), a);
            return (l && "function" == typeof l.then ? Ue.resolve(l).then((e => s.active ? e : kt(new ce.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn")))) : u.then((() => l))).then((e => (r && s._resolve(), s._completion.then((() => e))))).catch((e => (s._reject(e), kt(e))))
        }))
    }

    function jn(e, t, n) {
        const r = f(e) ? e.slice() : [e];
        for (let e = 0; e < n; ++e) r.push(t);
        return r
    }
    const Tn = {
        stack: "dbcore",
        name: "VirtualIndexMiddleware",
        level: 1,
        create: function(e) {
            return {...e, table(t) {
                    const n = e.table(t),
                        {
                            schema: r
                        } = n,
                        i = {},
                        o = [];

                    function s(e, t, n) {
                        const r = yn(e),
                            a = i[r] = i[r] || [],
                            c = null == e ? 0 : "string" == typeof e ? 1 : e.length,
                            l = t > 0,
                            u = {...n, isVirtual: l, keyTail: t, keyLength: c, extractKey: fn(e), unique: !l && n.unique
                            };
                        return a.push(u), u.isPrimaryKey || o.push(u), c > 1 && s(2 === c ? e[0] : e.slice(0, c - 1), t + 1, n), a.sort(((e, t) => e.keyTail - t.keyTail)), u
                    }
                    const a = s(r.primaryKey.keyPath, 0, r.primaryKey);
                    i[":id"] = [a];
                    for (const e of r.indexes) s(e.keyPath, 0, e);

                    function c(t) {
                        const n = t.query.index;
                        return n.isVirtual ? {...t, query: {
                                index: n,
                                range: (r = t.query.range, i = n.keyTail, {
                                    type: 1 === r.type ? 2 : r.type,
                                    lower: jn(r.lower, r.lowerOpen ? e.MAX_KEY : e.MIN_KEY, i),
                                    lowerOpen: !0,
                                    upper: jn(r.upper, r.upperOpen ? e.MIN_KEY : e.MAX_KEY, i),
                                    upperOpen: !0
                                })
                            }
                        } : t;
                        var r, i
                    }
                    const l = {...n, schema: {...r, primaryKey: a, indexes: o, getIndexByKeyPath: function(e) {
                                const t = i[yn(e)];
                                return t && t[0]
                            }
                        }, count: e => n.count(c(e)), query: e => n.query(c(e)), openCursor(t) {
                            const {
                                keyTail: r,
                                isVirtual: i,
                                keyLength: o
                            } = t.query.index;
                            return i ? n.openCursor(c(t)).then((n => n && function(n) {
                                const i = Object.create(n, {
                                    continue: {
                                        value: function(i) {
                                            null != i ? n.continue(jn(i, t.reverse ? e.MAX_KEY : e.MIN_KEY, r)) : t.unique ? n.continue(n.key.slice(0, o).concat(t.reverse ? e.MIN_KEY : e.MAX_KEY, r)) : n.continue()
                                        }
                                    },
                                    continuePrimaryKey: {
                                        value(t, i) {
                                            n.continuePrimaryKey(jn(t, e.MAX_KEY, r), i)
                                        }
                                    },
                                    primaryKey: {get: () => n.primaryKey
                                    },
                                    key: {
                                        get() {
                                            const e = n.key;
                                            return 1 === o ? e[0] : e.slice(0, o)
                                        }
                                    },
                                    value: {get: () => n.value
                                    }
                                });
                                return i
                            }(n))) : n.openCursor(t)
                        }
                    };
                    return l
                }
            }
        }
    };

    function Nn(e, t, n, r) {
        return n = n || {}, r = r || "", h(e).forEach((i => {
            if (v(t, i)) {
                var o = e[i],
                    s = t[i];
                if ("object" == typeof o && "object" == typeof s && o && s) {
                    const e = U(o);
                    e !== U(s) ? n[r + i] = t[i] : "Object" === e ? Nn(o, s, n, r + i + ".") : o !== s && (n[r + i] = t[i])
                } else o !== s && (n[r + i] = t[i])
            } else n[r + i] = void 0
        })), h(t).forEach((i => {
            v(e, i) || (n[r + i] = t[i])
        })), n
    }
    const Fn = {
        stack: "dbcore",
        name: "HooksMiddleware",
        level: 2,
        create: e => ({...e, table(t) {
                const n = e.table(t),
                    {
                        primaryKey: r
                    } = n.schema,
                    i = {...n, mutate(e) {
                            const i = Te.trans,
                                {
                                    deleting: o,
                                    creating: s,
                                    updating: a
                                } = i.table(t).hook;
                            switch (e.type) {
                                case "add":
                                    if (s.fire === de) break;
                                    return i._promise("readwrite", (() => c(e)), !0);
                                case "put":
                                    if (s.fire === de && a.fire === de) break;
                                    return i._promise("readwrite", (() => c(e)), !0);
                                case "delete":
                                    if (o.fire === de) break;
                                    return i._promise("readwrite", (() => c(e)), !0);
                                case "deleteRange":
                                    if (o.fire === de) break;
                                    return i._promise("readwrite", (() => function(e) {
                                        return l(e.trans, e.range, 1e4)
                                    }(e)), !0)
                            }
                            return n.mutate(e);

                            function c(e) {
                                const t = Te.trans,
                                    i = e.keys || function(e, t) {
                                        return "delete" === t.type ? t.keys : t.keys || t.values.map(e.extractKey)
                                    }(r, e);
                                if (!i) throw new Error("Keys missing");
                                return "delete" !== (e = "add" === e.type || "put" === e.type ? {...e, keys: i
                                    } : {...e
                                    }).type && (e.values = [...e.values]), e.keys && (e.keys = [...e.keys]),
                                    function(e, t, n) {
                                        return "add" === t.type ? Promise.resolve([]) : e.getMany({
                                            trans: t.trans,
                                            keys: n,
                                            cache: "immutable"
                                        })
                                    }(n, e, i).then((c => {
                                        const l = i.map(((n, i) => {
                                            const l = c[i],
                                                u = {
                                                    onerror: null,
                                                    onsuccess: null
                                                };
                                            if ("delete" === e.type) o.fire.call(u, n, l, t);
                                            else if ("add" === e.type || void 0 === l) {
                                                const o = s.fire.call(u, n, e.values[i], t);
                                                null == n && null != o && (n = o, e.keys[i] = n, r.outbound || D(e.values[i], r.keyPath, n))
                                            } else {
                                                const r = Nn(l, e.values[i]),
                                                    o = a.fire.call(u, r, n, l, t);
                                                if (o) {
                                                    const t = e.values[i];
                                                    Object.keys(o).forEach((e => {
                                                        v(t, e) ? t[e] = o[e] : D(t, e, o[e])
                                                    }))
                                                }
                                            }
                                            return u
                                        }));
                                        return n.mutate(e).then((({
                                            failures: t,
                                            results: n,
                                            numFailures: r,
                                            lastResult: o
                                        }) => {
                                            for (let r = 0; r < i.length; ++r) {
                                                const o = n ? n[r] : i[r],
                                                    s = l[r];
                                                null == o ? s.onerror && s.onerror(t[r]) : s.onsuccess && s.onsuccess("put" === e.type && c[r] ? e.values[r] : o)
                                            }
                                            return {
                                                failures: t,
                                                results: n,
                                                numFailures: r,
                                                lastResult: o
                                            }
                                        })).catch((e => (l.forEach((t => t.onerror && t.onerror(e))), Promise.reject(e))))
                                    }))
                            }

                            function l(e, t, i) {
                                return n.query({
                                    trans: e,
                                    values: !1,
                                    query: {
                                        index: r,
                                        range: t
                                    },
                                    limit: i
                                }).then((({
                                    result: n
                                }) => c({
                                    type: "delete",
                                    keys: n,
                                    trans: e
                                }).then((r => r.numFailures > 0 ? Promise.reject(r.failures[0]) : n.length < i ? {
                                    failures: [],
                                    numFailures: 0,
                                    lastResult: void 0
                                } : l(e, {...t, lower: n[n.length - 1], lowerOpen: !0
                                }, i)))))
                            }
                        }
                    };
                return i
            }
        })
    };

    function qn(e, t, n) {
        try {
            if (!t) return null;
            if (t.keys.length < e.length) return null;
            const r = [];
            for (let i = 0, o = 0; i < t.keys.length && o < e.length; ++i) 0 === zt(t.keys[i], e[o]) && (r.push(n ? N(t.values[i]) : t.values[i]), ++o);
            return r.length === e.length ? r : null
        } catch (e) {
            return null
        }
    }
    const Un = {
        stack: "dbcore",
        level: -1,
        create: e => ({
            table: t => {
                const n = e.table(t);
                return {...n, getMany: e => {
                        if (!e.cache) return n.getMany(e);
                        const t = qn(e.keys, e.trans._cache, "clone" === e.cache);
                        return t ? Ue.resolve(t) : n.getMany(e).then((t => (e.trans._cache = {
                            keys: e.keys,
                            values: "clone" === e.cache ? N(t) : t
                        }, t)))
                    }, mutate: e => ("add" !== e.type && (e.trans._cache = null), n.mutate(e))
                }
            }
        })
    };

    function Ln(e) {
        return !("from" in e)
    }
    const Wn = function(e, t) {
        if (!this) {
            const t = new Wn;
            return e && "d" in e && p(t, e), t
        }
        p(this, arguments.length ? {
            d: 1,
            from: e,
            to: arguments.length > 1 ? t : e
        } : {
            d: 0
        })
    };

    function zn(e, t, n) {
        const r = zt(t, n);
        if (isNaN(r)) return;
        if (r > 0) throw RangeError();
        if (Ln(e)) return p(e, {
            from: t,
            to: n,
            d: 1
        });
        const i = e.l,
            o = e.r;
        if (zt(n, e.from) < 0) return i ? zn(i, t, n) : e.l = {
            from: t,
            to: n,
            d: 1,
            l: null,
            r: null
        }, Yn(e);
        if (zt(t, e.to) > 0) return o ? zn(o, t, n) : e.r = {
            from: t,
            to: n,
            d: 1,
            l: null,
            r: null
        }, Yn(e);
        zt(t, e.from) < 0 && (e.from = t, e.l = null, e.d = o ? o.d + 1 : 1), zt(n, e.to) > 0 && (e.to = n, e.r = null, e.d = e.l ? e.l.d + 1 : 1);
        const s = !e.r;
        i && !e.l && Vn(e, i), o && s && Vn(e, o)
    }

    function Vn(e, t) {
        Ln(t) || function e(t, {
            from: n,
            to: r,
            l: i,
            r: o
        }) {
            zn(t, n, r), i && e(t, i), o && e(t, o)
        }(e, t)
    }

    function Gn(e) {
        let t = Ln(e) ? null : {
            s: 0,
            n: e
        };
        return {
            next(e) {
                const n = arguments.length > 0;
                for (; t;) switch (t.s) {
                    case 0:
                        if (t.s = 1, n)
                            for (; t.n.l && zt(e, t.n.from) < 0;) t = {
                                up: t,
                                n: t.n.l,
                                s: 1
                            };
                        else
                            for (; t.n.l;) t = {
                                up: t,
                                n: t.n.l,
                                s: 1
                            };
                    case 1:
                        if (t.s = 2, !n || zt(e, t.n.to) <= 0) return {
                            value: t.n,
                            done: !1
                        };
                    case 2:
                        if (t.n.r) {
                            t.s = 3, t = {
                                up: t,
                                n: t.n.r,
                                s: 0
                            };
                            continue
                        }
                    case 3:
                        t = t.up
                }
                return {
                    done: !0
                }
            }
        }
    }

    function Yn(e) {
        var t, n;
        const r = ((null === (t = e.r) || void 0 === t ? void 0 : t.d) || 0) - ((null === (n = e.l) || void 0 === n ? void 0 : n.d) || 0),
            i = r > 1 ? "r" : r < -1 ? "l" : "";
        if (i) {
            const t = "r" === i ? "l" : "r",
                n = {...e
                },
                r = e[i];
            e.from = r.from, e.to = r.to, e[i] = r[i], n[i] = r[t], e[t] = n, n.d = Jn(n)
        }
        e.d = Jn(e)
    }

    function Jn({
        r: e,
        l: t
    }) {
        return (e ? t ? Math.max(e.d, t.d) : e.d : t ? t.d : 0) + 1
    }
    g(Wn.prototype, {
        add(e) {
            return Vn(this, e), this
        }, addKey(e) {
            return zn(this, e, e), this
        }, addKeys(e) {
            return e.forEach((e => zn(this, e, e))), this
        }, [L]() {
            return Gn(this)
        }
    });
    const Hn = {
        stack: "dbcore",
        level: 0,
        create: e => {
            const t = e.schema.name,
                n = new Wn(e.MIN_KEY, e.MAX_KEY);
            return {...e, table: r => {
                    const i = e.table(r),
                        {
                            schema: o
                        } = i,
                        {
                            primaryKey: s
                        } = o,
                        {
                            extractKey: a,
                            outbound: c
                        } = s,
                        l = {...i, mutate: e => {
                                const s = e.trans,
                                    a = s.mutatedParts || (s.mutatedParts = {}),
                                    c = e => {
                                        const n = `idb://${t}/${r}/${e}`;
                                        return a[n] || (a[n] = new Wn)
                                    },
                                    l = c(""),
                                    u = c(":dels"),
                                    {
                                        type: d
                                    } = e;
                                let [h, p] = "deleteRange" === e.type ? [e.range] : "delete" === e.type ? [e.keys] : e.values.length < 50 ? [
                                    [], e.values
                                ] : [];
                                const m = e.trans._cache;
                                return i.mutate(e).then((e => {
                                    if (f(h)) {
                                        "delete" !== d && (h = e.results), l.addKeys(h);
                                        const t = qn(h, m);
                                        t || "add" === d || u.addKeys(h), (t || p) && function(e, t, n, r) {
                                            t.indexes.forEach((function(t) {
                                                const i = e(t.name || "");

                                                function o(e) {
                                                    return null != e ? t.extractKey(e) : null
                                                }
                                                const s = e => t.multiEntry && f(e) ? e.forEach((e => i.addKey(e))) : i.addKey(e);
                                                (n || r).forEach(((e, t) => {
                                                    const i = n && o(n[t]),
                                                        a = r && o(r[t]);
                                                    0 !== zt(i, a) && (null != i && s(i), null != a && s(a))
                                                }))
                                            }))
                                        }(c, o, t, p)
                                    } else if (h) {
                                        const e = {
                                            from: h.lower,
                                            to: h.upper
                                        };
                                        u.add(e), l.add(e)
                                    } else l.add(n), u.add(n), o.indexes.forEach((e => c(e.name).add(n)));
                                    return e
                                }))
                            }
                        },
                        u = ({
                            query: {
                                index: t,
                                range: n
                            }
                        }) => {
                            var r, i;
                            return [t, new Wn(null !== (r = n.lower) && void 0 !== r ? r : e.MIN_KEY, null !== (i = n.upper) && void 0 !== i ? i : e.MAX_KEY)]
                        },
                        d = {get: e => [s, new Wn(e.key)],
                            getMany: e => [s, (new Wn).addKeys(e.keys)],
                            count: u,
                            query: u,
                            openCursor: u
                        };
                    return h(d).forEach((e => {
                        l[e] = function(o) {
                            const {
                                subscr: s
                            } = Te;
                            if (s) {
                                const l = e => {
                                        const n = `idb://${t}/${r}/${e}`;
                                        return s[n] || (s[n] = new Wn)
                                    },
                                    u = l(""),
                                    h = l(":dels"),
                                    [f, p] = d[e](o);
                                if (l(f.name || "").add(p), !f.isPrimaryKey) {
                                    if ("count" !== e) {
                                        const t = "query" === e && c && o.values && i.query({...o, values: !1
                                        });
                                        return i[e].apply(this, arguments).then((n => {
                                            if ("query" === e) {
                                                if (c && o.values) return t.then((({
                                                    result: e
                                                }) => (u.addKeys(e), n)));
                                                const e = o.values ? n.result.map(a) : n.result;
                                                o.values ? u.addKeys(e) : h.addKeys(e)
                                            } else if ("openCursor" === e) {
                                                const e = n,
                                                    t = o.values;
                                                return e && Object.create(e, {
                                                    key: {get: () => (h.addKey(e.primaryKey), e.key)
                                                    },
                                                    primaryKey: {
                                                        get() {
                                                            const t = e.primaryKey;
                                                            return h.addKey(t), t
                                                        }
                                                    },
                                                    value: {get: () => (t && u.addKey(e.primaryKey), e.value)
                                                    }
                                                })
                                            }
                                            return n
                                        }))
                                    }
                                    h.add(n)
                                }
                            }
                            return i[e].apply(this, arguments)
                        }
                    })), l
                }
            }
        }
    };
    class Qn {
        constructor(e, t) {
            this._middlewares = {}, this.verno = 0;
            const n = Qn.dependencies;
            this._options = t = {
                addons: Qn.addons,
                autoOpen: !0,
                indexedDB: n.indexedDB,
                IDBKeyRange: n.IDBKeyRange,
                ...t
            }, this._deps = {
                indexedDB: t.indexedDB,
                IDBKeyRange: t.IDBKeyRange
            };
            const {
                addons: r
            } = t;
            this._dbSchema = {}, this._versions = [], this._storeNames = [], this._allTables = {}, this.idbdb = null, this._novip = this;
            const i = {
                dbOpenError: null,
                isBeingOpened: !1,
                onReadyBeingFired: null,
                openComplete: !1,
                dbReadyResolve: de,
                dbReadyPromise: null,
                cancelOpen: de,
                openCanceller: null,
                autoSchema: !0,
                PR1398_maxLoop: 3
            };
            var o;
            i.dbReadyPromise = new Ue((e => {
                i.dbReadyResolve = e
            })), i.openCanceller = new Ue(((e, t) => {
                i.cancelOpen = t
            })), this._state = i, this.name = e, this.on = Rt(this, "populate", "blocked", "versionchange", "close", {
                ready: [be, de]
            }), this.on.ready.subscribe = O(this.on.ready.subscribe, (e => (t, n) => {
                Qn.vip((() => {
                    const r = this._state;
                    if (r.openComplete) r.dbOpenError || Ue.resolve().then(t), n && e(t);
                    else if (r.onReadyBeingFired) r.onReadyBeingFired.push(t), n && e(t);
                    else {
                        e(t);
                        const r = this;
                        n || e((function e() {
                            r.on.ready.unsubscribe(t), r.on.ready.unsubscribe(e)
                        }))
                    }
                }))
            })), this.Collection = (o = this, jt(Yt.prototype, (function(e, t) {
                this.db = o;
                let n = It,
                    r = null;
                if (t) try {
                    n = t()
                } catch (e) {
                    r = e
                }
                const i = e._ctx,
                    s = i.table,
                    a = s.hook.reading.fire;
                this._ctx = {
                    table: s,
                    index: i.index,
                    isPrimKey: !i.index || s.schema.primKey.keyPath && i.index === s.schema.primKey.name,
                    range: n,
                    keysOnly: !1,
                    dir: "next",
                    unique: "",
                    algorithm: null,
                    filter: null,
                    replayFilter: null,
                    justLimit: !0,
                    isMatch: null,
                    offset: 0,
                    limit: 1 / 0,
                    error: r,
                    or: i.or,
                    valueMapper: a !== he ? a : null
                }
            }))), this.Table = function(e) {
                return jt(Bt.prototype, (function(t, n, r) {
                    this.db = e, this._tx = r, this.name = t, this.schema = n, this.hook = e._allTables[t] ? e._allTables[t].hook : Rt(null, {
                        creating: [me, de],
                        reading: [fe, he],
                        updating: [ve, de],
                        deleting: [ye, de]
                    })
                }))
            }(this), this.Transaction = function(e) {
                return jt(cn.prototype, (function(t, n, r, i, o) {
                    this.db = e, this.mode = t, this.storeNames = n, this.schema = r, this.chromeTransactionDurability = i, this.idbtrans = null, this.on = Rt(this, "complete", "error", "abort"), this.parent = o || null, this.active = !0, this._reculock = 0, this._blockedFuncs = [], this._resolve = null, this._reject = null, this._waitingFor = null, this._waitingQueue = null, this._spinCount = 0, this._completion = new Ue(((e, t) => {
                        this._resolve = e, this._reject = t
                    })), this._completion.then((() => {
                        this.active = !1, this.on.complete.fire()
                    }), (e => {
                        var t = this.active;
                        return this.active = !1, this.on.error.fire(e), this.parent ? this.parent._reject(e) : t && this.idbtrans && this.idbtrans.abort(), kt(e)
                    }))
                }))
            }(this), this.Version = function(e) {
                return jt(Kn.prototype, (function(t) {
                    this.db = e, this._cfg = {
                        version: t,
                        storesSource: null,
                        dbschema: {},
                        tables: {},
                        contentUpgrade: null
                    }
                }))
            }(this), this.WhereClause = function(e) {
                return jt(rn.prototype, (function(t, n, r) {
                    this.db = e, this._ctx = {
                        table: t,
                        index: ":id" === n ? null : n,
                        or: r
                    };
                    const i = e._deps.indexedDB;
                    if (!i) throw new ce.MissingAPI;
                    this._cmp = this._ascending = i.cmp.bind(i), this._descending = (e, t) => i.cmp(t, e), this._max = (e, t) => i.cmp(e, t) > 0 ? e : t, this._min = (e, t) => i.cmp(e, t) < 0 ? e : t, this._IDBKeyRange = e._deps.IDBKeyRange
                }))
            }(this), this.on("versionchange", (e => {
                e.newVersion > 0 ? console.warn(`Another connection wants to upgrade database '${this.name}'. Closing db now to resume the upgrade.`) : console.warn(`Another connection wants to delete database '${this.name}'. Closing db now to resume the delete request.`), this.close()
            })), this.on("blocked", (e => {
                !e.newVersion || e.newVersion < e.oldVersion ? console.warn(`Dexie.delete('${this.name}') was blocked`) : console.warn(`Upgrade '${this.name}' blocked by other connection holding version ${e.oldVersion/10}`)
            })), this._maxKey = hn(t.IDBKeyRange), this._createTransaction = (e, t, n, r) => new this.Transaction(e, t, n, this._options.chromeTransactionDurability, r), this._fireOnBlocked = e => {
                this.on("blocked").fire(e), Ot.filter((e => e.name === this.name && e !== this && !e._state.vcFired)).map((t => t.on("versionchange").fire(e)))
            }, this.use(Tn), this.use(Fn), this.use(Hn), this.use(Un), this.vip = Object.create(this, {
                _vip: {
                    value: !0
                }
            }), r.forEach((e => e(this)))
        }
        version(e) {
            if (isNaN(e) || e < .1) throw new ce.Type("Given version is not a positive number");
            if (e = Math.round(10 * e) / 10, this.idbdb || this._state.isBeingOpened) throw new ce.Schema("Cannot add version when database is open");
            this.verno = Math.max(this.verno, e);
            const t = this._versions;
            var n = t.filter((t => t._cfg.version === e))[0];
            return n || (n = new this.Version(e), t.push(n), t.sort(wn), n.stores({}), this._state.autoSchema = !1, n)
        }
        _whenReady(e) {
            return this.idbdb && (this._state.openComplete || Te.letThrough || this._vip) ? e() : new Ue(((e, t) => {
                if (this._state.openComplete) return t(new ce.DatabaseClosed(this._state.dbOpenError));
                if (!this._state.isBeingOpened) {
                    if (!this._options.autoOpen) return void t(new ce.DatabaseClosed);
                    this.open().catch(de)
                }
                this._state.dbReadyPromise.then(e, t)
            })).then(e)
        }
        use({
            stack: e,
            create: t,
            level: n,
            name: r
        }) {
            r && this.unuse({
                stack: e,
                name: r
            });
            const i = this._middlewares[e] || (this._middlewares[e] = []);
            return i.push({
                stack: e,
                create: t,
                level: null == n ? 10 : n,
                name: r
            }), i.sort(((e, t) => e.level - t.level)), this
        }
        unuse({
            stack: e,
            name: t,
            create: n
        }) {
            return e && this._middlewares[e] && (this._middlewares[e] = this._middlewares[e].filter((e => n ? e.create !== n : !!t && e.name !== t))), this
        }
        open() {
            return function(e) {
                const t = e._state,
                    {
                        indexedDB: n
                    } = e._deps;
                if (t.isBeingOpened || e.idbdb) return t.dbReadyPromise.then((() => t.dbOpenError ? kt(t.dbOpenError) : e));
                Y && (t.openCanceller._stackHolder = Z()), t.isBeingOpened = !0, t.dbOpenError = null, t.openComplete = !1;
                const r = t.openCanceller;

                function i() {
                    if (t.openCanceller !== r) throw new ce.DatabaseClosed("db.open() was cancelled")
                }
                let o = t.dbReadyResolve,
                    s = null,
                    a = !1;
                return Ue.race([r, ("undefined" == typeof navigator ? Ue.resolve() : In()).then((() => new Ue(((r, o) => {
                    if (i(), !n) throw new ce.MissingAPI;
                    const c = e.name,
                        l = t.autoSchema ? n.open(c) : n.open(c, Math.round(10 * e.verno));
                    if (!l) throw new ce.MissingAPI;
                    l.onerror = on(o), l.onblocked = nt(e._fireOnBlocked), l.onupgradeneeded = nt((r => {
                        if (s = l.transaction, t.autoSchema && !e._options.allowEmptyDB) {
                            l.onerror = sn, s.abort(), l.result.close();
                            const e = n.deleteDatabase(c);
                            e.onsuccess = e.onerror = nt((() => {
                                o(new ce.NoSuchDatabase(`Database ${c} doesnt exist`))
                            }))
                        } else {
                            s.onerror = on(o);
                            var i = r.oldVersion > Math.pow(2, 62) ? 0 : r.oldVersion;
                            a = i < 1, e._novip.idbdb = l.result, kn(e, i / 10, s, o)
                        }
                    }), o), l.onsuccess = nt((() => {
                        s = null;
                        const n = e._novip.idbdb = l.result,
                            i = P(n.objectStoreNames);
                        if (i.length > 0) try {
                            const r = n.transaction(1 === (o = i).length ? o[0] : o, "readonly");
                            t.autoSchema ? function({
                                _novip: e
                            }, t, n) {
                                e.verno = t.version / 10;
                                const r = e._dbSchema = On(0, t, n);
                                e._storeNames = P(t.objectStoreNames, 0), bn(e, [e._allTables], h(r), r)
                            }(e, n, r) : (Sn(e, e._dbSchema, r), function(e, t) {
                                const n = Cn(On(0, e.idbdb, t), e._dbSchema);
                                return !(n.add.length || n.change.some((e => e.add.length || e.change.length)))
                            }(e, r) || console.warn("Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Some queries may fail.")), gn(e, r)
                        } catch (e) {}
                        var o;
                        Ot.push(e), n.onversionchange = nt((n => {
                            t.vcFired = !0, e.on("versionchange").fire(n)
                        })), n.onclose = nt((t => {
                            e.on("close").fire(t)
                        })), a && function({
                            indexedDB: e,
                            IDBKeyRange: t
                        }, n) {
                            !An(e) && "__dbnames" !== n && En(e, t).put({
                                name: n
                            }).catch(de)
                        }(e._deps, c), r()
                    }), o)
                }))))]).then((() => (i(), t.onReadyBeingFired = [], Ue.resolve(Dn((() => e.on.ready.fire(e.vip)))).then((function n() {
                    if (t.onReadyBeingFired.length > 0) {
                        let r = t.onReadyBeingFired.reduce(be, de);
                        return t.onReadyBeingFired = [], Ue.resolve(Dn((() => r(e.vip)))).then(n)
                    }
                }))))).finally((() => {
                    t.onReadyBeingFired = null, t.isBeingOpened = !1
                })).then((() => e)).catch((n => {
                    t.dbOpenError = n;
                    try {
                        s && s.abort()
                    } catch (e) {}
                    return r === t.openCanceller && e._close(), kt(n)
                })).finally((() => {
                    t.openComplete = !0, o()
                }))
            }(this)
        }
        _close() {
            const e = this._state,
                t = Ot.indexOf(this);
            if (t >= 0 && Ot.splice(t, 1), this.idbdb) {
                try {
                    this.idbdb.close()
                } catch (e) {}
                this._novip.idbdb = null
            }
            e.dbReadyPromise = new Ue((t => {
                e.dbReadyResolve = t
            })), e.openCanceller = new Ue(((t, n) => {
                e.cancelOpen = n
            }))
        }
        close() {
            this._close();
            const e = this._state;
            this._options.autoOpen = !1, e.dbOpenError = new ce.DatabaseClosed, e.isBeingOpened && e.cancelOpen(e.dbOpenError)
        }
        delete() {
            const e = arguments.length > 0,
                t = this._state;
            return new Ue(((n, r) => {
                const i = () => {
                    this.close();
                    var e = this._deps.indexedDB.deleteDatabase(this.name);
                    e.onsuccess = nt((() => {
                        ! function({
                            indexedDB: e,
                            IDBKeyRange: t
                        }, n) {
                            !An(e) && "__dbnames" !== n && En(e, t).delete(n).catch(de)
                        }(this._deps, this.name), n()
                    })), e.onerror = on(r), e.onblocked = this._fireOnBlocked
                };
                if (e) throw new ce.InvalidArgument("Arguments not allowed in db.delete()");
                t.isBeingOpened ? t.dbReadyPromise.then(i) : i()
            }))
        }
        backendDB() {
            return this.idbdb
        }
        isOpen() {
            return null !== this.idbdb
        }
        hasBeenClosed() {
            const e = this._state.dbOpenError;
            return e && "DatabaseClosed" === e.name
        }
        hasFailed() {
            return null !== this._state.dbOpenError
        }
        dynamicallyOpened() {
            return this._state.autoSchema
        }
        get tables() {
            return h(this._allTables).map((e => this._allTables[e]))
        }
        transaction() {
            const e = Bn.apply(this, arguments);
            return this._transaction.apply(this, e)
        }
        _transaction(e, t, n) {
            let r = Te.trans;
            r && r.db === this && -1 === e.indexOf("!") || (r = null);
            const i = -1 !== e.indexOf("?");
            let o, s;
            e = e.replace("!", "").replace("?", "");
            try {
                if (s = t.map((e => {
                        var t = e instanceof this.Table ? e.name : e;
                        if ("string" != typeof t) throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed");
                        return t
                    })), "r" == e || "readonly" === e) o = "readonly";
                else {
                    if ("rw" != e && "readwrite" != e) throw new ce.InvalidArgument("Invalid transaction mode: " + e);
                    o = "readwrite"
                }
                if (r) {
                    if ("readonly" === r.mode && "readwrite" === o) {
                        if (!i) throw new ce.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY");
                        r = null
                    }
                    r && s.forEach((e => {
                        if (r && -1 === r.storeNames.indexOf(e)) {
                            if (!i) throw new ce.SubTransaction("Table " + e + " not included in parent transaction.");
                            r = null
                        }
                    })), i && r && !r.active && (r = null)
                }
            } catch (e) {
                return r ? r._promise(null, ((t, n) => {
                    n(e)
                })) : kt(e)
            }
            const a = Rn.bind(null, this, o, s, r, n);
            return r ? r._promise(o, a, "lock") : Te.trans ? vt(Te.transless, (() => this._whenReady(a))) : this._whenReady(a)
        }
        table(e) {
            if (!v(this._allTables, e)) throw new ce.InvalidTable(`Table ${e} does not exist`);
            return this._allTables[e]
        }
    }
    const Zn = "undefined" != typeof Symbol && "observable" in Symbol ? Symbol.observable : "@@observable";
    class Xn {
        constructor(e) {
            this._subscribe = e
        }
        subscribe(e, t, n) {
            return this._subscribe(e && "function" != typeof e ? e : {
                next: e,
                error: t,
                complete: n
            })
        }[Zn]() {
            return this
        }
    }

    function $n(e, t) {
        return h(t).forEach((n => {
            Vn(e[n] || (e[n] = new Wn), t[n])
        })), e
    }
    let er;
    try {
        er = {
            indexedDB: d.indexedDB || d.mozIndexedDB || d.webkitIndexedDB || d.msIndexedDB,
            IDBKeyRange: d.IDBKeyRange || d.webkitIDBKeyRange
        }
    } catch (d) {
        er = {
            indexedDB: null,
            IDBKeyRange: null
        }
    }
    const tr = Qn;

    function nr(e) {
        let t = rr;
        try {
            rr = !0, an.storagemutated.fire(e)
        } finally {
            rr = t
        }
    }
    g(tr, {...ue, delete: e => new tr(e, {
            addons: []
        }).delete(), exists: e => new tr(e, {
            addons: []
        }).open().then((e => (e.close(), !0))).catch("NoSuchDatabaseError", (() => !1)), getDatabaseNames(e) {
            try {
                return function({
                    indexedDB: e,
                    IDBKeyRange: t
                }) {
                    return An(e) ? Promise.resolve(e.databases()).then((e => e.map((e => e.name)).filter((e => "__dbnames" !== e)))) : En(e, t).toCollection().primaryKeys()
                }(tr.dependencies).then(e)
            } catch (e) {
                return kt(new ce.MissingAPI)
            }
        }, defineClass: () => function(e) {
            p(this, e)
        }, ignoreTransaction: e => Te.trans ? vt(Te.transless, e) : e(), vip: Dn, async: function(e) {
            return function() {
                try {
                    var t = Mn(e.apply(this, arguments));
                    return t && "function" == typeof t.then ? t : Ue.resolve(t)
                } catch (e) {
                    return kt(e)
                }
            }
        }, spawn: function(e, t, n) {
            try {
                var r = Mn(e.apply(n, t || []));
                return r && "function" == typeof r.then ? r : Ue.resolve(r)
            } catch (e) {
                return kt(e)
            }
        }, currentTransaction: {get: () => Te.trans || null
        }, waitFor: function(e, t) {
            const n = Ue.resolve("function" == typeof e ? tr.ignoreTransaction(e) : e).timeout(t || 6e4);
            return Te.trans ? Te.trans.waitFor(n) : n
        }, Promise: Ue, debug: {get: () => Y,
            set: e => {
                J(e, "dexie" === e ? () => !0 : At)
            }
        }, derive: w, extend: p, props: g, override: O, Events: Rt, on: an, liveQuery: function(e) {
            return new Xn((t => {
                const n = G(e);
                let r = !1,
                    i = {},
                    o = {};
                const s = {get closed() {
                        return r
                    },
                    unsubscribe: () => {
                        r = !0, an.storagemutated.unsubscribe(u)
                    }
                };
                t.start && t.start(s);
                let a = !1,
                    c = !1;

                function l() {
                    return h(o).some((e => i[e] && function(e, t) {
                        const n = Gn(t);
                        let r = n.next();
                        if (r.done) return !1;
                        let i = r.value;
                        const o = Gn(e);
                        let s = o.next(i.from),
                            a = s.value;
                        for (; !r.done && !s.done;) {
                            if (zt(a.from, i.to) <= 0 && zt(a.to, i.from) >= 0) return !0;
                            zt(i.from, a.from) < 0 ? i = (r = n.next(a.from)).value : a = (s = o.next(i.from)).value
                        }
                        return !1
                    }(i[e], o[e])))
                }
                const u = e => {
                        $n(i, e), l() && d()
                    },
                    d = () => {
                        if (a || r) return;
                        i = {};
                        const h = {},
                            f = function(t) {
                                n && ut();
                                const r = () => lt(e, {
                                        subscr: t,
                                        trans: null
                                    }),
                                    i = Te.trans ? vt(Te.transless, r) : r();
                                return n && i.then(dt, dt), i
                            }(h);
                        c || (an("storagemutated", u), c = !0), a = !0, Promise.resolve(f).then((e => {
                            a = !1, r || (l() ? d() : (i = {}, o = h, t.next && t.next(e)))
                        }), (e => {
                            a = !1, t.error && t.error(e), s.unsubscribe()
                        }))
                    };
                return d(), s
            }))
        }, extendObservabilitySet: $n, getByKeyPath: A, setByKeyPath: D, delByKeyPath: function(e, t) {
            "string" == typeof t ? D(e, t, void 0) : "length" in t && [].map.call(t, (function(t) {
                D(e, t, void 0)
            }))
        }, shallowClone: I, deepClone: N, getObjectDiff: Nn, cmp: zt, asap: K, minKey: -1 / 0, addons: [], connections: Ot, errnames: se, dependencies: er, semVer: "3.2.1", version: "3.2.1".split(".").map((e => parseInt(e))).reduce(((e, t, n) => e + t / Math.pow(10, 2 * n)))
    }), tr.maxKey = hn(tr.dependencies.IDBKeyRange), "undefined" != typeof dispatchEvent && "undefined" != typeof addEventListener && (an("storagemutated", (e => {
        if (!rr) {
            let t;
            St ? (t = document.createEvent("CustomEvent"), t.initCustomEvent("x-storagemutated-1", !0, !0, e)) : t = new CustomEvent("x-storagemutated-1", {
                detail: e
            }), rr = !0, dispatchEvent(t), rr = !1
        }
    })), addEventListener("x-storagemutated-1", (({
        detail: e
    }) => {
        rr || nr(e)
    })));
    let rr = !1;
    if ("undefined" != typeof BroadcastChannel) {
        const e = new BroadcastChannel("x-storagemutated-1");
        an("storagemutated", (t => {
            rr || e.postMessage(t)
        })), e.onmessage = e => {
            e.data && nr(e.data)
        }
    } else if ("undefined" != typeof self && "undefined" != typeof navigator) {
        an("storagemutated", (e => {
            try {
                rr || ("undefined" != typeof localStorage && localStorage.setItem("x-storagemutated-1", JSON.stringify({
                    trig: Math.random(),
                    changedParts: e
                })), "object" == typeof self.clients && [...self.clients.matchAll({
                    includeUncontrolled: !0
                })].forEach((t => t.postMessage({
                    type: "x-storagemutated-1",
                    changedParts: e
                }))))
            } catch (e) {}
        })), addEventListener("storage", (e => {
            if ("x-storagemutated-1" === e.key) {
                const t = JSON.parse(e.newValue);
                t && nr(t.changedParts)
            }
        }));
        const e = self.document && navigator.serviceWorker;
        e && e.addEventListener("message", (function({
            data: e
        }) {
            e && "x-storagemutated-1" === e.type && nr(e.changedParts)
        }))
    }
    Ue.rejectionMapper = function(e, t) {
        if (!e || e instanceof ne || e instanceof TypeError || e instanceof SyntaxError || !e.name || !le[e.name]) return e;
        var n = new le[e.name](t || e.message, e);
        return "stack" in e && _(n, "stack", {get: function() {
                return this.inner.stack
            }
        }), n
    }, J(Y, At);
    var ir = new class extends Qn {
        constructor() {
            super("tcp_ccl");
            var e = this;
            e.version(1).stores({
                fclicks: "++id,url,rid,ttl,date",
                clicks: "++id,url,crtid,price,ttl,date"
            }), e.version(2).stores({
                impWCl: "++id,rid,cl"
            }), e.version(3).stores({
                fclicks: "++id,url,rid,cid,ttl,date",
                clicks: "++id,url,cid,crtid,capping,capping_period,price,ttl,date"
            }), e.version(4).stores({
                fclicks: "++id,url,rid,cid,capping_uid,capping_endat,ttl,date",
                clicks: "++id,url,cid,crtid,capping_uid,capping_endat,capping,capping_period,price,ttl,date"
            }), e.version(5).stores({
                fclicks: "++id,url,rid,cid,capping_uid,ttl,date",
                clicks: "++id,url,cid,crtid,capping_uid,price,ttl,date",
                plimit: "++id,uid,limit,count,event_trigger,end_at"
            }), e.version(6).stores({
                ownNotifications: "++id,url,title",
                clicks: "++id,url,cid,crtid,capping_uid,price,ttl,date",
                plimit: "++id,uid,limit,count,event_trigger,end_at"
            }), e.version(7).stores({
                auction: "request_options,last_notifications_request,notifications"
            }), e.version(8).stores({
                auction: "request_options,last_notifications_request,notifications",
                settings: "++id,settings"
            }), e.version(9).stores({
                stat: "++id,creative_id,impressions,clicks,create_time,update_time"
            }), e.version(10).stores({
                stat: "++id,creative_id,impressions,clicks,create_time,update_time,category,creative_country"
            }), e.version(11).stores({
                stat: "++id,creative_id,impressions,clicks,create_time,update_time,category,creative_country,tag"
            })
        }
    };

    function or(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }

    function sr(e) {
        return function() {
            var t = this,
                n = arguments;
            return new Promise((function(r, i) {
                var o = e.apply(t, n);

                function s(e) {
                    or(o, r, i, s, a, "next", e)
                }

                function a(e) {
                    or(o, r, i, s, a, "throw", e)
                }
                s(void 0)
            }))
        }
    }
    class ar {
        saveParameters(e) {
            var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : [];
            return ir.transaction("rw", ir.auction, function() {
                var n = sr((function*(n) {
                    yield ir.auction.clear(),
                        yield ir.auction.put({
                            request_options: JSON.stringify(e),
                            notifications: JSON.stringify(t)
                        })
                }));
                return function(e) {
                    return n.apply(this, arguments)
                }
            }())
        }
        getParameters() {
            return sr((function*() {
                var e =
                    yield ir.auction.toArray();
                if (e.length) {
                    var t = e[0];
                    return {
                        auctionRequestOptions: JSON.parse(t.request_options),
                        notifications: JSON.parse(t.notifications)
                    }
                }
                return null
            }))()
        }
        saveSettings(e) {
            return ir.transaction("rw", ir.settings, function() {
                var t = sr((function*(t) {
                    yield ir.settings.clear(),
                        yield ir.settings.put({
                            next_notification: e.nextNotification,
                            mode: e.mode,
                            demand_mode_probability: e.demandModeProbability,
                            creatives_update_time: e.creativesUpdateTime,
                            postponed_update_time: e.postponedUpdateTime,
                            stat_send_time: e.statSendTime,
                            is_adblock: Boolean(e.is_adblock),
                            is_meta_mask_active: e.isMetaMaskActive,
                            user_keywords: e.userKeywords,
                            entry_referrer_domain: e.entryReferrerDomain,
                            tag_ab: e.tagAbVersion,
                            visitor_id: e.visitorId
                        })
                }));
                return function(e) {
                    return t.apply(this, arguments)
                }
            }())
        }
        getSettings() {
            return sr((function*() {
                var e =
                    yield ir.settings.toArray();
                if (e.length) {
                    var t = e[0];
                    return {
                        nextNotification: t.next_notification || 0,
                        mode: t.mode || null,
                        demandModeProbability: t.demand_mode_probability || 0,
                        creativesUpdateTime: t.creatives_update_time || null,
                        postponedUpdateTime: t.postponed_update_time || null,
                        statSendTime: t.stat_send_time || null,
                        is_adblock: t.is_adblock || !1,
                        isMetaMaskActive: t.is_meta_mask_active || !1,
                        userKeywords: t.user_keywords,
                        entryReferrerDomain: t.entry_referrer_domain,
                        tagAbVersion: t.tag_ab,
                        visitorId: t.visitor_id
                    }
                }
                return null
            }))()
        }
    }

    function cr(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }

    function lr(e) {
        return function() {
            var t = this,
                n = arguments;
            return new Promise((function(r, i) {
                var o = e.apply(t, n);

                function s(e) {
                    cr(o, r, i, s, a, "next", e)
                }

                function a(e) {
                    cr(o, r, i, s, a, "throw", e)
                }
                s(void 0)
            }))
        }
    }
    class ur {
        addImpression(e) {
            return ir.transaction("rw", ir.stat, lr((function*() {
                var t = Date.now(),
                    n =
                    yield ir.stat.get({
                        creative_id: e.creative_id,
                        tag: ""
                    });
                return n ? ir.stat.update(n.id, {
                    impressions: n.impressions + 1,
                    update_time: t
                }) : ir.stat.put({
                    creative_id: e.creative_id,
                    impressions: 1,
                    clicks: 0,
                    create_time: t,
                    update_time: t,
                    category: e.category,
                    creative_country: e.creative_country,
                    tag: ""
                })
            })))
        }
        addClick(e) {
            return ir.transaction("rw", ir.stat, lr((function*() {
                var t = Date.now(),
                    n =
                    yield ir.stat.get({
                        creative_id: e.creative_id,
                        tag: ""
                    });
                return n ? ir.stat.update(n.id, {
                    clicks: n.clicks + 1,
                    update_time: t
                }) : ir.stat.put({
                    creative_id: e.creative_id,
                    impressions: 0,
                    clicks: 1,
                    create_time: t,
                    update_time: t,
                    category: e.category,
                    creative_country: e.creative_country,
                    tag: ""
                })
            })))
        }
        getData(e) {
            return ir.transaction("rw", ir.stat, lr((function*() {
                return yield ir.stat.where({
                    tag: ""
                }).modify({
                    tag: e
                }), ir.stat.where({
                    tag: e
                }).toArray()
            })))
        }
        clearTag(e) {
            return ir.transaction("rw", ir.stat, (() => ir.stat.where({
                tag: e
            }).modify({
                tag: ""
            })))
        }
        clearData(e) {
            return ir.transaction("rw", ir.stat, (() => ir.stat.where({
                tag: e
            }).delete()))
        }
    }

    function dr(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }

    function hr(e) {
        return function() {
            var t = this,
                n = arguments;
            return new Promise((function(r, i) {
                var o = e.apply(t, n);

                function s(e) {
                    dr(o, r, i, s, a, "next", e)
                }

                function a(e) {
                    dr(o, r, i, s, a, "throw", e)
                }
                s(void 0)
            }))
        }
    }
    class fr {
        setRules(e) {
            return ir.transaction("rw", ir.plimit, hr((function*() {
                var t =
                    yield ir.plimit.where("uid").anyOf(e.map((e => e.uid))).filter((t => e.some((e => e.uid === t.uid && e.end_at === t.end_at)))).toArray();
                return void 0 === t ? ir.plimit.bulkPut(e.map((e => (e.count = 0, e)))) : ir.plimit.bulkPut(e.filter((e => !t.some((t => e.uid === t.uid && e.end_at === t.end_at)))))
            })))
        }
        updateLimits(e) {
            return ir.transaction("rw", ir.plimit, hr((function*() {
                var t =
                    yield ir.plimit.where("uid").equals(e).and((e => e.count !== e.limit)).toArray();
                if (t.length > 0) return ir.plimit.bulkPut(t.map((e => (e.count = e.count + 1, e))))
            })))
        }
        isLimited(e) {
            return ir.transaction("rw", ir.plimit, hr((function*() {
                var t = Date.now(),
                    n =
                    yield ir.plimit.where("uid").equals(e).toArray();
                return ir.plimit.bulkDelete(n.filter((e => t > e.end_at)).map((e => e.id))), 0 === n.filter((e => t < e.end_at && e.limit === e.count)).length
            })))
        }
    }

    function pr(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }

    function mr(e) {
        return function() {
            var t = this,
                n = arguments;
            return new Promise((function(r, i) {
                var o = e.apply(t, n);

                function s(e) {
                    pr(o, r, i, s, a, "next", e)
                }

                function a(e) {
                    pr(o, r, i, s, a, "throw", e)
                }
                s(void 0)
            }))
        }
    }
    class yr {
        addImpression(e) {
            return ir.transaction("rw", ir.impWCl, mr((function*() {
                if ((
                        yield ir.impWCl.count()) >= 1e3) {
                    var t =
                        yield ir.impWCl.limit(1).first();
                    ir.impWCl.delete(t.id)
                }
                return ir.impWCl.put({
                    rid: e,
                    cl: 0
                })
            })))
        }
        getImpression(e) {
            return ir.impWCl.get({
                rid: e
            })
        }
        getAllImpressions() {
            return ir.impWCl.toArray()
        }
        incrementImpressionClicks(e) {
            var t = this;
            return ir.transaction("rw", ir.impWCl, mr((function*() {
                var n =
                    yield ir.impWCl.get({
                        rid: e
                    });
                return n ? ir.impWCl.update(n.id, {
                    cl: n.cl + 1
                }) : t.addImpression(e)
            })))
        }
    }

    function vr(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }
    var gr = new class {
        clearOld() {
            return ir.transaction("rw", [ir.fclicks, ir.clicks], (() => {
                var e = Date.now(),
                    t = e - 1728e5;
                return Promise.all([ir.fclicks.filter((e => void 0 === e.date)).delete(), ir.fclicks.where("ttl").belowOrEqual(e).delete(), ir.clicks.where("ttl").belowOrEqual(e).delete(), ir.fclicks.where("date").below(t).delete(), ir.clicks.where("date").below(t).delete()])
            }))
        }
        countAllClicks() {
            var e = this;
            return function(e) {
                return function() {
                    var t = this,
                        n = arguments;
                    return new Promise((function(r, i) {
                        var o = e.apply(t, n);

                        function s(e) {
                            vr(o, r, i, s, a, "next", e)
                        }

                        function a(e) {
                            vr(o, r, i, s, a, "throw", e)
                        }
                        s(void 0)
                    }))
                }
            }((function*() {
                return yield e.clearOld(), ir.clicks.count()
            }))()
        }
        getFiredClick() {
            var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "";
            return ir.fclicks.where({
                url: e
            }).first()
        }
        getFiredClicks() {
            return ir.fclicks.toArray()
        }
        addFiredClicks(e) {
            return ir.fclicks.bulkPut(e)
        }
        getFiredClickByCid(e) {
            return ir.fclicks.where("cid").equals(e).toArray()
        }
        getStoredClicks() {
            return ir.clicks.toArray()
        }
        getStoredMaxPriceClick() {
            return ir.clicks.orderBy("price").last()
        }
        addStoredClicks(e) {
            return ir.clicks.bulkPut(e)
        }
        removeStoredClick(e) {
            return ir.clicks.where("id").equals(e).delete()
        }
        removeStoredClicks(e) {
            return ir.clicks.bulkDelete(e)
        }
    };
    class br {
        constructor() {
            var e, t, n;
            gr.clearOld(), this.firedClicks = null, this.storedClicks = null, this.newFiredClicks = [], this.newStoredClicks = [], this.newRemovedStoredClicks = [], this.syncLocalDataWithIDB = (e = () => {
                this.addLocalFiredClicksToIDB(), this.addLocalStoredClicksToIDB(), this.removeLocalStoredClicksFromIDB()
            }, t = 2e3, function() {
                var r = this,
                    i = arguments;
                clearTimeout(n), n = setTimeout((() => e.apply(r, i)), t)
            })
        }
        loadClickStore() {
            return Promise.all([this.loadStoredClicks(), this.loadFiredClicks()])
        }
        loadFiredClicks() {
            return gr.getFiredClicks().then((e => {
                null === this.firedClicks && (this.firedClicks = e)
            }))
        }
        addLocalFiredClicksToIDB() {
            0 !== this.newFiredClicks.length && (gr.addFiredClicks(this.newFiredClicks), this.newFiredClicks = [])
        }
        isClickUrlFired(e) {
            return this.getFiredClicks().some((t => t.url === e))
        }
        getFiredClicks() {
            return this.syncLocalDataWithIDB(), this.firedClicks
        }
        getFiredClicksByCid(e) {
            return this.getFiredClicks().filter((t => t.cid === e))
        }
        getFiredClicksByUid(e) {
            return this.getFiredClicks().filter((t => t.capping_uid === e))
        }
        addFiredClick(e) {
            return this.getFiredClicks().push(e), this.newFiredClicks.push(e), e
        }
        loadStoredClicks() {
            return gr.getStoredClicks().then((e => {
                null === this.storedClicks && (this.storedClicks = e)
            }))
        }
        addLocalStoredClicksToIDB() {
            0 !== this.newStoredClicks.length && (gr.addStoredClicks(this.newStoredClicks.filter((e => !this.firedClicks.some((t => e.url === t.url))))), this.newStoredClicks = [])
        }
        removeLocalStoredClicksFromIDB() {
            0 !== this.newRemovedStoredClicks.length && (gr.removeStoredClicks(this.newRemovedStoredClicks), this.newRemovedStoredClicks = [])
        }
        getStoredMaxPriceClick() {
            var e = this.getStoredClicks().sort(((e, t) => t.price - e.price)).shift();
            return void 0 !== e && e.id && this.newRemovedStoredClicks.push(e.id), e
        }
        getStoredClicks() {
            return this.syncLocalDataWithIDB(), this.storedClicks
        }
        addStoredClick(e) {
            return this.getStoredClicks().push(e), this.newStoredClicks.push(e), e
        }
    }

    function _r(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }

    function wr(e) {
        return function() {
            var t = this,
                n = arguments;
            return new Promise((function(r, i) {
                var o = e.apply(t, n);

                function s(e) {
                    _r(o, r, i, s, a, "next", e)
                }

                function a(e) {
                    _r(o, r, i, s, a, "throw", e)
                }
                s(void 0)
            }))
        }
    }

    function kr(e, t) {
        var n = Object.keys(e);
        if (Object.getOwnPropertySymbols) {
            var r = Object.getOwnPropertySymbols(e);
            t && (r = r.filter((function(t) {
                return Object.getOwnPropertyDescriptor(e, t).enumerable
            }))), n.push.apply(n, r)
        }
        return n
    }

    function Cr(e) {
        for (var t = 1; t < arguments.length; t++) {
            var n = null != arguments[t] ? arguments[t] : {};
            t % 2 ? kr(Object(n), !0).forEach((function(t) {
                xr(e, t, n[t])
            })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : kr(Object(n)).forEach((function(t) {
                Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
            }))
        }
        return e
    }

    function xr(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    function Pr(e, t) {
        ! function(e, t) {
            if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object")
        }(e, t), t.add(e)
    }

    function Or(e, t, n) {
        if (!t.has(e)) throw new TypeError("attempted to get private field on non-instance");
        return n
    }
    var Sr = new WeakSet,
        Kr = new WeakSet;
    const Er = class {
        constructor() {
            Pr(this, Kr), Pr(this, Sr), this.timezone_offset = (new Date).getTimezoneOffset() / -60, this.version = e, this.ClickLocalDB = new br, this.LimitRuleModel = new fr, this.ImpressionModel = new yr
        }
        static getVersion() {
            return e
        }
        createNotificationRecord(e) {
            var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
                n = Date.now() - 1e3 * e.currentTime,
                r = Date.now();

            function i(e, t) {
                return void 0 === e || "number" != typeof e || 0 === e ? null : e + t
            }
            var o = e.capping_ext ? e.capping_ext.map((e => (e.end_at = i(e.end_at, n), e))) : null;
            return o && this.LimitRuleModel.setRules(o), {
                data: Cr(Cr({}, t), {}, {
                    notificationUrl: e.notificationUrl,
                    delay: e.delay,
                    capping_uid: e.capping_uid || null,
                    cid: e.cid,
                    url: e.url,
                    price: e.correctedPrice || 0,
                    ttl: i(e.expirationTimestamp, n),
                    botProtection: e.botProtection || !1,
                    isCpm: -1 === e.url.indexOf("is_cpm=0"),
                    ignoreClickLogic: e.ignoreClickLogic || !1,
                    crtid: e.crtid,
                    rid: Math.random().toString(36).substring(5) + Math.random().toString(36).substring(5),
                    trackCloseUrl: e.track_close_url,
                    showTime: r
                }),
                title: e.title,
                body: e.body,
                image: e.image,
                icon: Or(this, Kr, Dr).call(this, e, r),
                actions: e.options.actions,
                requireInteraction: e.options.requireInteraction
            }
        }
        closeExpiredNotifications() {
            return wr((function*() {
                (
                    yield self.registration.getNotifications()).forEach((e => {
                    e.data.ttl <= Date.now() && e.close()
                }))
            }))()
        }
        displayNotification(e) {
            return o(e.data.delay, self.registration.showNotification(e.title, e)).then((() => {
                e.data.notificationUrl && fetch(e.data.notificationUrl), this.ImpressionModel.addImpression(e.data.rid)
            })).catch((e => {
                console.log("TC SW Imp Error: ".concat(e.toString()))
            }))
        }
        openNotificationUrl(e, t) {
            var n = this;
            return wr((function*() {
                var r = Date.now();
                n.ClickLocalDB.addFiredClick({
                    rid: e.rid,
                    cid: e.cid,
                    url: e.url,
                    capping_uid: e.capping_uid,
                    ttl: e.ttl,
                    date: r
                }), n.ImpressionModel.incrementImpressionClicks(e.rid), e.capping_uid && n.LimitRuleModel.updateLimits(e.capping_uid);
                var i = Or(n, Sr, Ar).call(n, e, t, r);
                return self.clients.openWindow(i)
            }))()
        }
        isClickPossible(e) {
            var t = this;
            return wr((function*() {
                return t.ClickLocalDB.isClickUrlFired(e.url) ? (a("ClickUrlFired"), !1) : e.ttl && e.ttl <= Date.now() ? (a("Click ttl expired"), !1) : !e.capping_uid || t.LimitRuleModel.isLimited(e.capping_uid)
            }))()
        }
        reAuction(e, t, n) {
            var r = this;
            return wr((function*() {
                var i =
                    yield c(e + "&send_id=1");
                if (Array.isArray(i) && i.length > 0) {
                    var o = i.map((i => r.createNotificationRecord(i, {
                        pushPayload: t,
                        auctionUrl: e,
                        tokenId: n
                    }))).sort(((e, t) => t.data.price - e.data.price));
                    return o.forEach((e => r.displayNotification(e))), o
                }
                return []
            }))()
        }
        processClick(e, t) {
            var n = this;
            return wr((function*() {
                var {
                    rid: r,
                    auctionUrl: i,
                    botProtection: o,
                    pushPayload: s,
                    ignoreClickLogic: c
                } = e.data;
                a("ignoreClickLogic", c), n.ClickLocalDB.getStoredClicks() || (
                    yield n.ClickLocalDB.loadClickStore());
                var l =
                    yield n.isClickPossible(e.data);
                a("originalClickPossible: ", l, e.data);
                var u = n.ClickLocalDB.getStoredClicks().length;
                if ((0 === u || 1 === u && !l || c) && e.close(), l) return n.openNotificationUrl(e.data, t);
                var d = n.ClickLocalDB.getStoredMaxPriceClick();
                if (d) return (
                    yield n.isClickPossible(d)) ? (a("storedClick used: ", d), n.openNotificationUrl(Object.assign(d, {
                    rid: r,
                    count: u,
                    botProtection: o
                }), t)) : n.processClick(e, t);
                if (0 === ((
                        yield n.ImpressionModel.getImpression(r)) || {
                        cl: 0
                    }).cl) {
                    var h =
                        yield n.reAuction(i, s, e.data.tokenId);
                    for (var f of(a("reAuction done: ", h), h))
                        if (
                            yield n.isClickPossible(f.data)) return a("get click url from reaction: ", f), n.openNotificationUrl(Object.assign(f.data, {
                            rid: r,
                            botProtection: o
                        }), t)
                }
                return Promise.resolve()
            }))()
        }
        push(e, t, n) {
            var r = this;
            return wr((function*() {
                var i, o, {
                        isMetaMaskActive: s,
                        userKeywords: a,
                        entryReferrerDomain: l,
                        tagAbVersion: u,
                        visitorId: d
                    } = n,
                    h = t;
                try {
                    var f = e.data.json();
                    h = f.sid ? f : f.data
                } catch (e) {
                    h = t
                }
                if (h) try {
                    h.ver = r.version, h.ver_c = r.version;
                    var p =
                        yield r.ImpressionModel.getAllImpressions();
                    p.length >= 100 && (h.ctr = p.reduce(((e, t) => e += t.cl), 0) / p.length);
                    var m = 0 === r.timezone_offset ? 0 : r.timezone_offset,
                        y = (i = Cr(Cr({}, h), {}, {
                            timezone_offset: m,
                            mm: s,
                            user_keywords: a,
                            pr: l,
                            tag_ab: u,
                            user_fp: d
                        }), o = new URL("/in/multy", "https://notification.tubecup.net"), Object.entries(i).forEach((e => {
                            var [t, n] = e;
                            "object" == typeof n ? o.searchParams.append(t, encodeURI(JSON.stringify(n))) : o.searchParams.append(t, n)
                        })), o.toString()),
                        v =
                        yield c(y);
                    return r.closeExpiredNotifications(), Promise.all(v.map((e => {
                        var n = r.createNotificationRecord(e, {
                            auctionUrl: y,
                            pushPayload: h,
                            tokenId: t.token_id
                        });
                        return r.displayNotification(n)
                    })))
                } catch (e) {
                    throw new Error("TC SW Error: ".concat(e))
                }
            }))()
        }
        notificationclick(e) {
            var t;
            if (!e.notification.data) return Promise.resolve();
            var n = null !== (t = e.notification.actions.find((t => t.action === e.action))) && void 0 !== t ? t : {
                action: "banner"
            };
            return o(0, this.processClick(e.notification, n))
        }
        notificationclose(e) {
            var t = this;
            return wr((function*() {
                if (!e.notification.data) return Promise.resolve();
                var {
                    url: n,
                    price: r,
                    ttl: i,
                    cid: o,
                    capping_uid: s,
                    ignoreClickLogic: a,
                    crtid: c,
                    isCpm: l,
                    trackCloseUrl: u
                } = e.notification.data;
                u && function(e, t) {
                    try {
                        fetch(e, t)
                    } catch (e) {
                        console.log(e)
                    }
                }(u);
                var d = new URL(n);
                return d.searchParams.append("ml", 1), !a && (t.ClickLocalDB.getStoredClicks() || (
                    yield t.ClickLocalDB.loadClickStore()), t.ClickLocalDB.isClickUrlFired(n) || l || i && !(i > Date.now()) ? void 0 : (t.ClickLocalDB.addStoredClick({
                    url: d.toString(),
                    price: r,
                    ttl: i,
                    cid: o,
                    capping_uid: s,
                    crtid: c,
                    date: Date.now()
                }), Promise.resolve()))
            }))()
        }
    };

    function Ar(e, t, n) {
        var r = new URL(e.url);
        return void 0 !== e.count && r.searchParams.append("scheme_id", e.count), r.searchParams.append("event_timestamp", n), r.searchParams.append("action", t.action), t.title && r.searchParams.append("button_title", encodeURIComponent(t.title)), r.searchParams.append("token_id", e.tokenId), r.searchParams.append("show_time", e.showTime), r
    }

    function Dr(e, t) {
        var n = new URL(e.icon),
            r = e.options.actions.map((e => e.title)).join(",");
        return n.searchParams.append("button_title", encodeURI(r)), n.searchParams.append("show_time", t), n.href
    }
    var Ir = {
            beforeAuctionFetch: {
                et: 60
            },
            beforeIconLoad: {
                et: 61
            },
            iconLoaded: {
                et: 62
            },
            windowOpened: {
                et: 63
            },
            windowNotOpened: {
                et: 64
            },
            iconNotLoaded: {
                et: 65
            }
        },
        Mr = ["hdzog"];
    for (var Br = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_", Rr = new Uint8Array(256), jr = 0; jr < Br.length; jr++) Rr[Br.charCodeAt(jr)] = jr;

    function Tr(e) {
        for (var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : Br, n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "", r = new Uint8Array(e), i = r.length, o = "", s = 0; s < i; s += 3) o += t[r[s] >> 2], o += t[(3 & r[s]) << 4 | r[s + 1] >> 4], o += t[(15 & r[s + 1]) << 2 | r[s + 2] >> 6], o += t[63 & r[s + 2]];
        return i % 3 == 2 ? o = o.slice(0, o.length - 1) + n : i % 3 == 1 && (o = o.slice(0, o.length - 2) + n + n), o
    }

    function Nr(e) {
        var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : Rr,
            n = e.length,
            r = Math.floor(.75 * e.length),
            i = 0;
        "=" === e[n - 1] && (r--, "=" === e[n - 2] && r--);
        for (var o = new Uint8Array(r), s = 0; s < n; s += 4) {
            var a = t[e.charCodeAt(s)],
                c = t[e.charCodeAt(s + 1)],
                l = t[e.charCodeAt(s + 2)],
                u = t[e.charCodeAt(s + 3)];
            o[i++] = a << 2 | c >> 4, o[i++] = (15 & c) << 4 | l >> 2, o[i++] = (3 & l) << 6 | 63 & u
        }
        return o
    }
    Rr[45] = 62, Rr[95] = 63;
    const Fr = JSON.parse('{"x":[{"id":1,"publicKey":"BPZP2eiVQ9M9ldQ7r2fhzutv-XFsMp-Td09w-YeUa4GfRM0v67zx1qaGM63ObPzaTsCP5dDka49rKFLAdMPE6OE","privateKey":"SRw6iGC8p0D_rch2VJJAD2DfI39Rq3aLy6kYBLcw54Y"},{"id":2,"publicKey":"BF6EtvSBQCWLNPiIKFl1BDdED6YuQP6-SzMrPMbNW7sVfANmHqfBFw740chC-It4jksmVqZisq0_PSF7gAgP5nQ","privateKey":"dMhda8ZV6PvVZKrtCO6m_zXhTTY_PO7Gca--ay32pX0"},{"id":3,"publicKey":"BEHF3tidJXPYC72Em3qikxTlUu8muOulHJZslAdiiYUnfzHf4WK4DcgPwmrPaAogLp5qPnC8heItmL_1YWFSAhY","privateKey":"K4-CPL84qFnYUzJyfOy7S2SJOO5-aWCtD7dZ-32FImQ"},{"id":4,"publicKey":"BBDqg-WUChOYKzOIX6NN5XJrar5S07W-CKaZZXXJGB60ZSgxwngaE2rUaAEtk6d7YubEG8O41nTU3WfgUylFQ58","privateKey":"HlH2-3te9k6uump5dD1yGtO1VF_xzGaewzwI2tUz_HM"},{"id":5,"publicKey":"BJYNCsbiJGzE8t9JwcXGYGuCqCMpnvmXWrbMoSzmbnjzxMHQj1q1ID-opWyEWc_S9uV4O8AywYCrlsXmm9tXiOo","privateKey":"6AL8w5ADSWOpTiyWeLYCmQbATZojYRVVpVCZSmPPfzI"},{"id":6,"publicKey":"BPXqJtk9Bdkncr9C2ufUukTZSSF9glUiIZAIiSzAcxW0dLYQQIybaflPfEAKB5SniyGy4ClBMyRK4vCZ1pKsPqI","privateKey":"Rtq7aePf5xT5cXdUQ8-aV2mKiKGnxJpgSvTkTwIlvCw"},{"id":7,"publicKey":"BMJh9g24g8sh8vW1tkCeH_KtNuZnibzf1I-7Bs6vrwFaLsQIMovo1V5xjG2OFLhyATSkD0w2KCHtBaQOcQSnuHk","privateKey":"wNDseDj6MMa1fZODaHqMZdWF7PvceFfGaFz1dMNNWBI"},{"id":8,"publicKey":"BE2A1EVOc4rObFyk2Nm-xFoDzyWzQcpnJGrWddYd4ZqNZDR-5YpjJ19iDI6JVwk9C_AkxaHqAw5URUyg7HIIPYk","privateKey":"X4cCxtvFpbZwaHg4D6BpItXRoCPD3rRVWlRhDhMulb0"},{"id":9,"publicKey":"BAqDDxkwMOnPahAtxNpsYdK8YCQFtaOdHE98XBO89YW0MZ0F7WZnTK7Q5Pz6wQ-N3ZHoPfZVZcgAs6VwPlLbQYY","privateKey":"B1S_I-klUdAPZsuDO59BIhrCEUEb-BceCUm9nrAvcX8"},{"id":10,"publicKey":"BBzCwiEPu1eobZvl_KHxzz3SUYJolGR4YZM-oplWC-oT5DfXXAcolbHY0i3qXwekwgD8ALMNwPtfpTuu77TpeFo","privateKey":"Wx-mwGLAmRGLuT4fsLqrA9dl-BTGTMYV4ghUpGGswDs"},{"id":11,"publicKey":"BEFv-JC2neGUXalb09va2aGjz4D5GHVHPcT6oHhoLhb3ZUgQywuVFy4HTh7VM_W74ZXGGa2p94IsZa2muhfTtDo","privateKey":"zQEKtUrcM0HvqgQzoA7kELu7_hGTVAUCOEaBl7TIjQM"},{"id":12,"publicKey":"BBzueAo9ImxPRg1hAT45FOxxkOhpw6nqsAOn78o4K94vuGrYxhn6Z5R9n_40IjhTfIM2DCxY1-k8A5c19omjKEQ","privateKey":"4BkiHfeJ_igDORlmx1MlJ3Heceez4CyoQfu6wjbv6GY"},{"id":13,"publicKey":"BCyBc56nn-zkbnQKJLh7G_KHGYRRN0zB7wSuwHhKo04zKj_ajZCbtGiufGddn_Hn9R1ShgdGPYuen3YkPuREDNk","privateKey":"2AJsDkii7KOhUIWfW9rN7riCtKdhquuEJAO8E_Wmlwg"},{"id":14,"publicKey":"BBdjVYgvM8VxAOPHBj1lPKxMtNgudcgw6UjkvPCvwicj3Go6iCgNdE9UsJXESnUbsBdxWPtaphjZ5Z0p_B0DOxU","privateKey":"HQEfHtvc_kwvAUyUqCFkGEbixMfzwsIB6aXnp0s4QG0"},{"id":15,"publicKey":"BFN9nGQSgD4PkkiGmgzf1jhImZrDdXkX-nUi1J_Vi6AtFymSfSMMXjF5GSsUjbL0NQO81YWuIpRsOSz7eR1Hs2Q","privateKey":"QOVWcay4m0NXSElJS-tBfyB2dvb_69n4lqeJr67WOGM"},{"id":16,"publicKey":"BBVEJplDPoX7Wl9-uHQFYPmUhDxBnBUdO_2ilTUN4gsUcqh7R7Z-zqJMHdbkx2UI2FIZ2yKFwNX9ov3FUGa-FT8","privateKey":"AwM1XS3A4TaJJL7DhQkPfZpQ_l3hAJCNCvofv6zDD-4"},{"id":17,"publicKey":"BMcljipZcnmxn2I-vVmWr3eENKXMxZ1C1X_ffIV02S2h5ltE0gL9iRuukT2gB-HYdh5VkIlJQus0DfeWEXQnBFA","privateKey":"eYmTgEF-oZven1YK8O3lGOU3s1Xq611Lh6MszwgzLyc"},{"id":18,"publicKey":"BDODN9DbpTXP3FB-NUE_pPxsS-OBMlpJUI-YAUsY-RguSzboQQeuMTzzopfDrmdGCScB4W_5DIMdmJ7g6bTLLYs","privateKey":"F-lsx0NoUCu_3OkNpoqOoeVZ1MGEj6hP46yuo4_aVYA"},{"id":19,"publicKey":"BPkizkKtqQTLNLR-SSYwi3nvAMSMFWJ5PzPV7iAS0c1VZVNPqAZt-iSCdKi0SNqL96afrnz959x5a3LI0nxCLe0","privateKey":"hzIxQXjSEiSOw3r234RkRg1vRCRJMRbOdpnp1-mOJPQ"},{"id":20,"publicKey":"BORkMYRMLhgUSKHs3w4AE5pNuLGU795obmB3nrUWmzEJHWddWEszHG8A1BYTk8SER80M2qEJa55kDtEAhbSHP-o","privateKey":"Mv3-4zDqM8iGv6FwFx0IPhY_pIFAZZj7jL64sZZMBCk"},{"id":21,"publicKey":"BBWGT0JNCgkuEbakF26pyL6CGEYJZiMsdKR-FGVBpshr9yDtYdlNDqnMrP7Tsgsg9oayG7qyA8hwAId2rvbHNxY","privateKey":"dImp_iFqstH8GrG641WwCTIfvH-gUYWyY0G-dGV2Ev8"},{"id":22,"publicKey":"BAiXrsjkiBnG49Nqb-CHOrtoLWZ0WyjV0FKLw3K0xZeGsUyREy-Rt_nmjLNd5zXXmXfEfcTqzBvrUBX18N3gkS4","privateKey":"zHomSXSv_nuZWHNBb7LzVfsl0z5lZvbO3YcP8UEI9mA"},{"id":23,"publicKey":"BKHxooeIkJAGM__VZMOPNf_eWW7xDPc9A1U8QU5pFNgfJQjIaUcJUiiSLOS3BYzDbxAUOI361KAIZQD22BKhB9Y","privateKey":"mB_5soSImOI-xElX-HrHojkUQ1ZSYSxy4Ga_-iRXrfg"},{"id":24,"publicKey":"BAIPvLA7WiYtvC-RdxhY7FvdnzEdA3o1MKqxnTfWjkfyK_gnlWtBVV5zOMiYQvhr1nbfzZi0GH8ye75n_ufgVvU","privateKey":"9IpMgu7qiUfR_vuedSo3YphgeV41yJNIi0FbqzzXZ7U"},{"id":25,"publicKey":"BFJnYsFNNuHSacuzylt1M6fyCYrZT3NNGxKGeQeG8f4mIsDcDHjK0MAoqeDD4vhBp_ZSj_IFJOZidFGfhbqolno","privateKey":"HSuyfoUfoGvR3Vb0OwtD3i1UC5V2bG4XTvZkQR2OQjI"},{"id":26,"publicKey":"BA6epAzFJ6vGppad_WPQ9e4hybpsOtx60Gg7AzKROy_Msbdi4vQN9TVCWiLVkagkXC4lUp7W03i7Uv7mFOhMF50","privateKey":"XrvW6TH0i9kDf1tSJcVBhAIBFKkzgizcX6CUKILRb6U"},{"id":27,"publicKey":"BFDJdEweGkbC7tyox7a5id6deOvOEg5jI4zD3_mM5Nthxcchr0IMr4-Sp6C40AH6oKUtJ-__O0nirPNUUO_rXdU","privateKey":"dBWCDB4w9NpEqF-mpn7K30-Po43ThpJO4vTVfM0ae3o"},{"id":28,"publicKey":"BFi-zcJoVhHOde2CmQYIi8ht30R1176eeUcAsWsxyTzQaARhGI7gmcv92oS_tZQx3OJhEOygU3gGBz_dGqBpMFE","privateKey":"VCjppYkHbDDtrQoNoimLyvLgRbtVKdHp5j-b7znzTyI"},{"id":29,"publicKey":"BAPJbkUpORgly-IyS7SWb2MOwgapL_RzE5zvRc_85Oa_9vVEmbg1JWmniOVPVgu9NjICSFmRozPvskGvicuNQWo","privateKey":"5m9xHyGByOgl5Bvj8CGWS8fMC5hzb8ZeNg5rWire3mU"},{"id":30,"publicKey":"BO5ulR7aC1L9nBV9zZSdMCOa75Dy87xu2n5dL53V0B-maYLcJ2ojCpNFB5MlXHvhVC1xbHIrEdUybb8I_BgQo90","privateKey":"8xd56TwJsx9VXya98BgET8Rm-sRVLyFyLzsmIBGeERg"}]}');

    function qr(e) {
        var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0,
            n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : e.length - 1,
            r = e.slice(t, n + 1);
        return r[Math.floor(Math.random() * r.length)]
    }

    function Ur(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }

    function Lr(e) {
        return function() {
            var t = this,
                n = arguments;
            return new Promise((function(r, i) {
                var o = e.apply(t, n);

                function s(e) {
                    Ur(o, r, i, s, a, "next", e)
                }

                function a(e) {
                    Ur(o, r, i, s, a, "throw", e)
                }
                s(void 0)
            }))
        }
    }
    var Wr = [1019, 1025, 1012, 3482, 2225, 1050, 1024];

    function zr(e) {
        return Vr.apply(this, arguments)
    }

    function Vr() {
        return (Vr = Lr((function*(t) {
            var {
                pushManager: n,
                currentSubscription: r,
                vapidKey: i,
                vapID: o,
                tcId: s,
                spotId: a,
                tube: c,
                sub: l,
                utmSource: u,
                utmMedium: d,
                utmCampaign: h,
                utmContent: f,
                isAdblock: p,
                fingerprint: m,
                referrer: y = "",
                href: v = "",
                sid: g
            } = t;
            yield r.unsubscribe();
            var b =
                yield n.subscribe({
                    applicationServerKey: Nr(i),
                    userVisibleOnly: !0
                }),
                _ = b.getKey("p256dh"),
                w = b.getKey("auth");
            return (
                yield fetch("https://subscribers.production.wpu.sh/register", {
                    method: "POST",
                    headers: {
                        "Content-type": "application/json"
                    },
                    body: JSON.stringify({
                        contentEncoding: (PushManager.supportedContentEncodings || ["aesgcm"])[0],
                        authToken: Tr(w),
                        publicKey: Tr(_),
                        endpoint: b.endpoint,
                        sdkVersion: e,
                        tcid: s,
                        spot_id: a,
                        token_id: o,
                        tube: "other" === c ? "tcpublisher" : c,
                        sub: l,
                        utm_source: u,
                        utm_medium: d,
                        utm_campaign: h,
                        utm_content: f,
                        is_adblock: p,
                        fp: m,
                        referrer: y,
                        href: v,
                        sid: g
                    })
                })).json()
        }))).apply(this, arguments)
    }

    function Gr() {
        return (Gr = Lr((function*(e, t, n) {
            var {
                tcId: r,
                spotId: i,
                tube: o,
                sub: s,
                utmSource: a,
                utmMedium: c,
                utmCampaign: l,
                utmContent: u,
                isAdblock: d,
                fingerprint: h,
                sid: f,
                referrer: p,
                href: m
            } = t, {
                minIndexKey: y,
                maxIndexKey: v
            } = n, g = Fr.x.map((e => {
                    var {
                        publicKey: t
                    } = e;
                    return t
                })), b =
                yield e.getSubscription(), _ = Tr(b.options.applicationServerKey);
            if (!g.includes(_) || "other" === o) {
                var w = Fr.x,
                    k = qr(w, y, v) || w[0];
                return yield zr({
                    pushManager: e,
                    currentSubscription: b,
                    vapidKey: k.publicKey,
                    vapID: k.id,
                    tcId: r,
                    spotId: i,
                    tube: o,
                    sub: s,
                    utmSource: a,
                    utmMedium: c,
                    utmCampaign: l,
                    utmContent: u,
                    isAdblock: d,
                    fingerprint: h,
                    referrer: p,
                    href: m,
                    sid: f
                })
            }
            return {
                sid: f
            }
        }))).apply(this, arguments)
    }

    function Yr(e, t) {
        var n = Object.keys(e);
        if (Object.getOwnPropertySymbols) {
            var r = Object.getOwnPropertySymbols(e);
            t && (r = r.filter((function(t) {
                return Object.getOwnPropertyDescriptor(e, t).enumerable
            }))), n.push.apply(n, r)
        }
        return n
    }

    function Jr(e) {
        for (var t = 1; t < arguments.length; t++) {
            var n = null != arguments[t] ? arguments[t] : {};
            t % 2 ? Yr(Object(n), !0).forEach((function(t) {
                Hr(e, t, n[t])
            })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : Yr(Object(n)).forEach((function(t) {
                Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
            }))
        }
        return e
    }

    function Hr(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    function Qr(e, t, n, r, i, o, s) {
        try {
            var a = e[o](s),
                c = a.value
        } catch (e) {
            return void n(e)
        }
        a.done ? t(c) : Promise.resolve(c).then(r, i)
    }

    function Zr(e) {
        return function() {
            var t = this,
                n = arguments;
            return new Promise((function(r, i) {
                var o = e.apply(t, n);

                function s(e) {
                    Qr(o, r, i, s, a, "next", e)
                }

                function a(e) {
                    Qr(o, r, i, s, a, "throw", e)
                }
                s(void 0)
            }))
        }
    }
    var Xr = [{
            action: "more",
            title: "More"
        }, {
            action: "settings",
            title: "Settings"
        }],
        $r = ["auction-request", "on-demand", "mixed"],
        ei = {
            more: ["<9", "=�", "=�", "=�", "=�", "<�", "<�", "=�"],
            settings: ["='", "=�", "�"]
        },
        ti = ["bookmark", "face", "starburst", "warranty"],
        ni = {
            nextNotification: 0,
            mode: null,
            demandModeProbability: .5,
            creativesUpdateTime: null,
            statSendTime: null,
            postponedUpdateTime: null,
            isMetaMaskActive: !1,
            userKeywords: "",
            entryReferrerDomain: null,
            tagAbVersion: "",
            visitorId: 0
        };
    class ri {
        constructor() {
            this.Tracking = new class {
                constructor() {
                    var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "https://logger.wpu.sh/";
                    this.trackingURL = e, this.params = {}
                }
                track(e) {
                    var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
                    return Mr.includes(this.params.site) && Ir[e] ? fetch(this.trackingURL + "?" + this.getQueryString(e, t)).catch((() => Promise.resolve())) : Promise.resolve()
                }
                setParam(e, t) {
                    this.params[e] = t
                }
                getQueryString(e, t) {
                    return Object.keys(Ir[e]).map((t => "".concat(encodeURIComponent(t), "=").concat(encodeURIComponent(Ir[e][t])))).concat(Object.keys(t).map((e => "".concat(encodeURIComponent(e), "=").concat(encodeURIComponent(t[e]))))).join("&")
                }
            }, this.Auction = new ar, this.Stat = new ur, this.modes = {
                auctionRequest: new Er
            }, this.version = e, this.auctionRequestOptions = null, this.notificationsMap = {}, this.settingsRestored = !1, Object.keys(ni).forEach((e => {
                this[e] = ni[e]
            }))
        }
        get notifications() {
            return this._notifications || []
        }
        set notifications(e) {
            this._notifications = e, this.notificationsMap = {}, this._notifications.forEach((e => {
                this.notificationsMap[e.creative_id] = e
            }))
        }
        static getVersion() {
            return e
        }
        restoreEnvironment() {
            var e = this;
            return Zr((function*() {
                if (!e.settingsRestored) {
                    e.settingsRestored = !0;
                    var t =
                        yield e.Auction.getParameters();
                    t && (e.auctionRequestOptions = t.auctionRequestOptions, e.notifications = t.notifications);
                    var n =
                        yield e.Auction.getSettings();
                    Object.keys(ni).forEach((t => {
                        e[t] = n && n[t] || ni[t]
                    }))
                }
            }))()
        }
        saveEnvironment() {
            var e = this;
            return Zr((function*() {
                return u([e.Auction.saveParameters(e.auctionRequestOptions, e.notifications), e.Auction.saveSettings(Object.keys(ni).reduce(((t, n) => (t[n] = e[n], t)), {}))])
            }))()
        }
        showNotification() {
            var e = this;
            return Zr((function*() {
                if (
                    yield e.restoreEnvironment(), null === self.registration.active || !e.notifications || !e.notifications.length) return Promise.resolve();
                var t;
                e.nextNotification >= e.notifications.length && (e.nextNotification = e.notifications.length - 1);
                var n = e.notifications[e.nextNotification++];
                (e.nextNotification === e.notifications.length || e.nextNotification > 13) && (e.nextNotification = 0);
                var r = Xr.map((e => ({
                    action: e.action,
                    title: "".concat(ei[e.action][Math.round(Math.random() * (ei[e.action].length - 1))], " ").concat(e.title)
                })));
                return t = self.registration.showNotification(n.title, {
                    body: n.body,
                    requireInteraction: !0,
                    image: n.imgurl,
                    icon: n.icon || n.imgurl,
                    badge: "https://static.bookmsg.com/creatives/icons/icon-" + ti[Math.round(Math.random() * (ti.length - 1))] + ".webp",
                    actions: r,
                    tag: Math.random(),
                    data: Jr(Jr({}, n), {}, {
                        mode: "on-demand"
                    })
                }), u([e.Stat.addImpression(n).then((() => {
                    e.sendStat()
                })), e.saveEnvironment(), t])
            }))()
        }
        getMode() {
            $r.includes(this.mode) || (this.mode = null);
            var e = this.mode;
            return "mixed" === e ? e = Math.random() < this.demandModeProbability ? "on-demand" : "auction-request" : this.mode || (e = "auction-request"), e
        }
        setDemandModeProbability(e) {
            this.demandModeProbability = parseFloat(e), isNaN(this.demandModeProbability) || !isFinite(this.demandModeProbability) || this.demandModeProbability < 0 ? this.demandModeProbability = 0 : this.demandModeProbability > 1 && (this.demandModeProbability = 1)
        }
        message(e) {
            var t, n, r, i, o, s, a, c, l, u;
            this.isMetaMaskActive = null === (t = e.data) || void 0 === t || null === (n = t.adManagerEnv) || void 0 === n ? void 0 : n.isMetaMaskActive, this.userKeywords = null === (r = e.data) || void 0 === r || null === (i = r.adManagerEnv) || void 0 === i ? void 0 : i.keywords, this.entryReferrerDomain = null === (o = e.data) || void 0 === o || null === (s = o.adManagerEnv) || void 0 === s ? void 0 : s.entryReferrerDomain, this.tagAbVersion = null === (a = e.data) || void 0 === a || null === (c = a.adManagerEnv) || void 0 === c ? void 0 : c.tagAbVersion, this.visitorId = null === (l = e.data) || void 0 === l || null === (u = l.adManagerEnv) || void 0 === u ? void 0 : u.visitorId, e.waitUntil(this.saveEnvironment())
        }
        push(e) {
            var t = this;
            return Zr((function*() {
                var r;
                yield t.restoreEnvironment();
                var i, o, a, c, l, d, h, f, p, m, y, v, g, b, _, w, k, C, x, P, O, S, K, E, A = null,
                    D = Date.now();
                try {
                    A = e.data.json()
                } catch (e) {}
                Math.random().toFixed(2) > .87 && (K = null === (r = A) || void 0 === r ? void 0 : r.spot_id, Wr.includes(K)) && (
                    yield
                    function(e, t, n) {
                        return Gr.apply(this, arguments)
                    }(self.registration.pushManager, {
                        tcId: null !== (i = null === (o = A) || void 0 === o ? void 0 : o.tcid) && void 0 !== i ? i : null,
                        spotId: null !== (a = null === (c = A) || void 0 === c ? void 0 : c.spot_id) && void 0 !== a ? a : null,
                        tube: null !== (l = null === (d = A) || void 0 === d ? void 0 : d.site) && void 0 !== l ? l : "tcpublisher",
                        sub: null !== (h = null === (f = A) || void 0 === f ? void 0 : f.ad_sub) && void 0 !== h ? h : 0,
                        utmSource: null !== (p = null === (m = A) || void 0 === m ? void 0 : m.utm_source) && void 0 !== p ? p : "",
                        utmMedium: null !== (y = null === (v = A) || void 0 === v ? void 0 : v.utm_medium) && void 0 !== y ? y : "",
                        utmCampaign: null !== (g = null === (b = A) || void 0 === b ? void 0 : b.utm_campaign) && void 0 !== g ? g : "",
                        utmContent: null !== (_ = null === (w = A) || void 0 === w ? void 0 : w.utm_content) && void 0 !== _ ? _ : "",
                        isAdblock: null !== (k = null === (C = A) || void 0 === C ? void 0 : C.is_adblock) && void 0 !== k ? k : 0,
                        fingerprint: null !== (x = null === (P = A) || void 0 === P ? void 0 : P.fingerprint) && void 0 !== x ? x : "",
                        sid: null !== (O = null === (S = A) || void 0 === S ? void 0 : S.sid) && void 0 !== O ? O : null
                    }, {
                        minIndexKey: 10,
                        maxIndexKey: 20
                    }));
                if (!A) return E = t.getMode(), t.auctionRequestOptions ? "on-demand" === E ? t.showNotification() : t.modes.auctionRequest.push(e, t.auctionRequestOptions, {
                    isMetaMaskActive: t.isMetaMaskActive,
                    userKeywords: t.userKeywords,
                    entryReferrerDomain: t.entryReferrerDomain,
                    tagAbVersion: t.tagAbVersion,
                    visitorId: t.visitorId
                }) : Promise.resolve();
                t.auctionRequestOptions = A.sid ? A : A.data, void 0 !== t.auctionRequestOptions.mixModeProbability && (t.setDemandModeProbability(t.auctionRequestOptions.mixModeProbability), delete t.auctionRequestOptions.mixModeProbability), void 0 !== t.auctionRequestOptions.mode && (t.mode = t.auctionRequestOptions.mode, delete t.auctionRequestOptions.mode), E = t.getMode(), t.postponedUpdateTime || "on-demand" !== E || (t.postponedUpdateTime = Math.round(D + Math.random() * n));
                var I = D < t.postponedUpdateTime && (!t.notifications || !t.notifications.length);
                return "on-demand" !== E || I ? u([t.saveEnvironment(), t.modes.auctionRequest.push(e, t.auctionRequestOptions, {
                    isMetaMaskActive: t.isMetaMaskActive,
                    userKeywords: t.userKeywords,
                    entryReferrerDomain: t.entryReferrerDomain,
                    tagAbVersion: t.tagAbVersion,
                    visitorId: t.visitorId
                })]) : D < t.postponedUpdateTime || t.creativesUpdateTime && D - t.creativesUpdateTime < n ? t.showNotification() : fetch("".concat("https://bookmsg.com/in/creativesv2", "?").concat(s(t.getAuctionOptions()))).then(function() {
                    var e = Zr((function*(e) {
                        if (200 !== e.status) throw new Error("Request JSON data failed.");
                        var n =
                            yield e.json();
                        if (t.creativesUpdateTime = Date.now(), Array.isArray(n)) t.notifications = n;
                        else if (n && Array.isArray(n.notifications)) {
                            if (!n.notifications.length) throw new Error("No data found.");
                            t.notifications = n.notifications
                        }
                        return t.notifications.sort((() => Math.random() - .5)), t.saveEnvironment().then((() => t.showNotification()))
                    }));
                    return function(t) {
                        return e.apply(this, arguments)
                    }
                }()).catch((() => t.saveEnvironment().finally((() => t.showNotification()))))
            }))()
        }
        getAuctionOptions() {
            var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
            return Jr(Jr({}, this.auctionRequestOptions), {}, {
                ver: this.version,
                ver_c: this.version,
                timezone_offset: (new Date).getTimezoneOffset() / -60,
                dt: Date.now(),
                cat: e && e.category || ""
            })
        }
        notificationclick(e) {
            var t = this;
            return Zr((function*() {
                if ("on-demand" === (e.notification.data && e.notification.data.mode)) {
                    yield t.restoreEnvironment();
                    var n = t.Stat.addClick(e.notification.data).then(t.sendStat.bind(t));
                    if (!t.auctionRequestOptions) return e.notification.close(), n;
                    e.notification.close();
                    var r = "".concat("https://bookmsg.com").concat("/in/message", "?").concat(s(t.getAuctionOptions(e.notification.data)));
                    t.Tracking.setParam("site", t.auctionRequestOptions && t.auctionRequestOptions.site);
                    var i = [];
                    if (i.push(t.Tracking.track("beforeAuctionFetch")), 200 !== (
                            yield fetch(r)).status) return n;
                    var o = "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png",
                        a = "https://www.google.com";
                    i.push(t.Tracking.track("beforeIconLoad"));
                    var c = Date.now();
                    return fetch(o, {
                        mode: "no-cors",
                        redirect: "follow",
                        headers: {
                            Accept: "image/*,*/*;q=0.8"
                        }
                    }).then((() => {
                        Date.now();
                        return i.push(t.Tracking.track("iconLoaded")), self.clients.openWindow(a).then((() => u(i.concat([t.Tracking.track("windowOpened")])))).catch((e => u(i.concat([t.Tracking.track("windowNotOpened")]))))
                    })).catch((e => u(i.concat([t.Tracking.track("iconNotLoaded", {
                        t: Date.now() - c
                    })]))))
                }
                e.waitUntil(t.modes.auctionRequest.notificationclick(e))
            }))()
        }
        notificationclose(e) {
            var t = this;
            return Zr((function*() {
                if (
                    yield t.restoreEnvironment(), e.notification.data && "on-demand" !== e.notification.data.mode) return t.modes.auctionRequest.notificationclose(e)
            }))()
        }
        install() {
            return self.skipWaiting()
        }
        activate() {
            return self.clients.claim()
        }
        sendStat() {
            var e = this;
            return Zr((function*() {
                var t = Date.now();
                e.statSendTime || (e.statSendTime = t, e.saveEnvironment());
                var n = Math.random().toString(),
                    r =
                    yield e.Stat.getData(n),
                    i = r.some((e => e.clicks > 0)),
                    o = 0;
                if (i || (o = r.reduce(((e, t) => e + t.impressions), 0)), !i && o < "5" && (!o || t - e.statSendTime < "600000")) return e.Stat.clearTag(n);
                var s = r.map((t => {
                    var n = e.notificationsMap[t.creative_id] || t;
                    return {
                        creative_id: t.creative_id,
                        impressions: t.impressions,
                        clicks: t.clicks,
                        site: e.auctionRequestOptions.site,
                        spot_id: e.auctionRequestOptions.spot_id,
                        tcid: e.auctionRequestOptions.tcid,
                        category: n.category || "",
                        creative_country: n.creative_country || "",
                        subscriber_id: e.auctionRequestOptions.sid || "",
                        sw_ver_core: e.version || ""
                    }
                }));
                return fetch("https://notification.tubecup.net/in/aim", {
                    method: "POST",
                    mode: "cors",
                    cache: "no-cache",
                    headers: {
                        "content-type": "application/json"
                    },
                    body: JSON.stringify(s)
                }).then((r => 201 === r.status ? (e.statSendTime = t, u([e.saveEnvironment(), e.Stat.clearData(n)])) : e.Stat.clearTag(n))).catch((() => e.Stat.clearTag(n)))
            }))()
        }
    }
    self.getWorker = () => ri
})();
                                    

#97 JavaScript::Eval (size: 36684, repeated: 1) - SHA256: 443dbd404e3668a26dddf87785b58b7da9a251ab0b4af210017d1e113689f170

                                        //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjogMywic291cmNlcyI6WyIiXSwic291cmNlc0NvbnRlbnQiOlsiICJdLCJuYW1lcyI6WyJjbG9zdXJlRHluYW1pY0J1dHRvbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEifQ==
(function() {
    var m = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
            return 1 == (1 == ((U & 90) == ((U & 60) == ((U | 72) == U && (X = (J | 0) - ~(J & 7) + ~J, S = [-18, -81, -84, 69, 50, -71, S, 12, -16, -10], k = xx, N = i4[D.Z](D.t$), N[D.Z] = function(O) {
                X += 6 + 7 * (K = O, J), X &= 7
            }, N.concat = function(O, R, Z, t, E) {
                return (E = (O = (t = e % y + x, -t * K + X - 2332 * K + S[Z = X + 35, -1 - ~(Z | 7) - (Z ^ 7)] * e * t + x * e * e * t + (k() | 0) * t + 44 * K * K - 44 * e * e * K) - -3564 * e * K, K = void 0, S[O]), S[(R = X + 13, 2 * (R | 0) - 7 - 2 * (R & -8) + (~R & 7)) + (J & 2)] = E, S)[X + (2 + (~J ^ 2) - (~J | 2))] = -81, E
            }, I = N), U) && (I = b = function() {
                if (D.G == D) {
                    if (D.P) {
                        var O = [sn, J, S, void 0, k, X, arguments];
                        if (e == y) var R = Un(!(C(29, 0, D, O), 1), x, 0, x, D);
                        else if (1 == e) {
                            var Z = !D.T.length;
                            C(25, 0, D, O), Z && Un(false, x, 0, x, D)
                        } else R = ep(D, O, 1, 2);
                        return R
                    }
                    k && X && k.removeEventListener(X, b, $x)
                }
            }), U) && (x.U ? I = Dv(x.W, x) : (y = kx(491, true, 8, x), y & 128 && (y = (y & -129) - (~y ^ 128) + (~y | 128), J = kx(491, true, 2, x), y = (D = y << 2, 3 * (D | J) - -1 + ~(D | J) - (D ^ J))), I = y)), (U | 7) >> 3) && (J = i4[x.Z](x.BW), J[x.Z] = function() {
                return y
            }, J.concat = function(O) {
                y = O
            }, I = J), U) - 8 >> 3 && (I = (k = (S = J[D] << y | J[(D | 0) + 1] << x, X = J[(D | 0) + 2] << 8, ~S - 2 * ~(S | X) + (S & ~X) + (~S ^ X)), e = J[(D | 0) + 3], -~(k | e) + (k ^ e) + (~k ^ e))), I
        },
        a = function(x, U, y, J, D, S, e, k, X) {
            if (2 <= (y | 9) >> x && 2 > (y << 2 & 10)) {
                for (e = m(J, 82), S = U; D > U; D--) S = S << 8 | n(491, J, 8);
                w(J, e, S)
            }
            if ((y - x | 21) >= y && y - 7 << 1 < y)
                if (S = "array" === Sp("object", "call", D) ? D : [D], this.i) U(this.i);
                else try {
                    e = [], k = !this.T.length, C(37, 0, this, [X6, e, S]), C(17, 0, this, [NC, U, e]), J && !k || Un(false, J, 0, true, this)
                } catch (K) {
                    d(this, ":", 5, K), U(this.i)
                }
                return 1 == ((y ^ 27) & 5) && (D = n(491, J, 8), (D | 0) - (D | 128) - ~(D | 128) + (~D | 128) && (D = (S = U * (D | 127) - ~(D & 127) - -1 + U * ~(D | 127), e = n(491, J, 8) << 7, U * (S & e) + U * ~(S & e) - ~S - (S | ~e))), X = D), X
        },
        f = function(x, U, y, J, D, S, e, k, X, K, N, b, I, O, R) {
            if (3 == (U ^ (18 > (U << 2 & 28) && 10 <= (U >> 1 & 15) && (M.call(this, x ? x.type : ""), this.relatedTarget = this.currentTarget = this.target = null, this.button = this.screenY = this.screenX = this.clientY = this.clientX = this.offsetY = this.offsetX = 0, this.key = "", this.charCode = this.keyCode = 0, this.metaKey = this.shiftKey = this.altKey = this.ctrlKey = false, this.state = null, this.pointerId = 0, this.pointerType = "", this.C = null, x && (D = this.type = x.type, J = x.changedTouches && x.changedTouches.length ? x.changedTouches[0] : null, this.target = x.target || x.srcElement, this.currentTarget = y, S = x.relatedTarget, S || ("mouseover" == D ? S = x.fromElement : "mouseout" == D && (S = x.toElement)), this.relatedTarget = S, J ? (this.clientX = void 0 !== J.clientX ? J.clientX : J.pageX, this.clientY = void 0 !== J.clientY ? J.clientY : J.pageY, this.screenX = J.screenX || 0, this.screenY = J.screenY || 0) : (this.offsetX = x.offsetX, this.offsetY = x.offsetY, this.clientX = void 0 !== x.clientX ? x.clientX : x.pageX, this.clientY = void 0 !== x.clientY ? x.clientY : x.pageY, this.screenX = x.screenX || 0, this.screenY = x.screenY || 0), this.button = x.button, this.keyCode = x.keyCode || 0, this.key = x.key || "", this.charCode = x.charCode || ("keypress" == D ? x.keyCode : 0), this.ctrlKey = x.ctrlKey, this.altKey = x.altKey, this.shiftKey = x.shiftKey, this.metaKey = x.metaKey, this.pointerId = x.pointerId || 0, this.pointerType = "string" === typeof x.pointerType ? x.pointerType : b4[x.pointerType] || "", this.state = x.state, this.C = x, x.defaultPrevented && L.F.preventDefault.call(this))), 40)) >> 3)
                if (Array.isArray(k))
                    for (N = x; N < k.length; N++) f(0, 49, null, J, D, S, e, k[N]);
                else K = A(17, y, S) ? !!S.capture : !!S, D = IB(true, 15, D), J && J[Cz] ? J.K.remove(String(k), D, K, e) : J && (X = r(23, 17, J)) && (b = X.F6(e, D, K, k)) && oB(9, 16, "on", 0, b);
            if (U - 2 << 2 >= U && (U - 4 | 54) < U && (D.classList ? D.classList.remove(S) : (D.classList ? D.classList.contains(S) : q(7, x, S, d(D, J, 76))) && r(23, 15, J, D, Array.prototype.filter.call(d(D, J, 73), function(Z) {
                    return Z != S
                }).join(y))), !((U ^ 14) >> 3)) {
                if ((J.bw += ((I = (O = (X = (b = 0 < (D || J.mZ++, J).Vh && J.zF && J.Qh && J.aY <= x && !J.U && !J.J && (!D || J.HW - y > x) && 0 == document.hidden, (K = 4 == J.mZ) || b ? J.o() : J.O), X - J.O), O >> 14), J.D) && (J.D = (N = J.D, k = I * (O << 2), -(k | 0) + (N | k) + ~N - ~(N | k))), I), J.G = I || J.G, K) || b) J.mZ = 0, J.O = X;
                !b || X - J.L < J.Vh - (S ? 255 : D ? 5 : 2) ? R = false : (J.HW = y, e = p(J, D ? 39 : 491), w(J, 491, J.Y), J.T.push([mu, e, D ? y + x : y]), J.J = nz, R = true)
            }
            return (U | 40) == U && (On.call(this), x || RB || (RB = new wq), this.cW = void 0, this.TF = this.U4 = null, this.IY = false, this.Ku = this.Cu = this.iw = null), R
        },
        Zv = function(x, U, y, J, D, S, e, k, X, K, N) {
            if ((y & 106) == y)
                if (Array.isArray(X))
                    for (K = U; K < X.length; K++) Zv(13, 0, 34, true, D, S, e, k, X[K]);
                else k = IB(true, x, k), S && S[Cz] ? S.K.add(String(X), k, J, A(49, null, D) ? !!D.capture : !!D, e) : v(15, X, false, null, D, e, S, J, k);
            if (2 == (y | 5) >> 3) a: {
                switch (e) {
                    case J:
                        N = k ? "disable" : "enable";
                        break a;
                    case 2:
                        N = k ? "highlight" : "unhighlight";
                        break a;
                    case S:
                        N = k ? "activate" : "deactivate";
                        break a;
                    case D:
                        N = k ? "select" : "unselect";
                        break a;
                    case U:
                        N = k ? "check" : "uncheck";
                        break a;
                    case 32:
                        N = k ? "focus" : "blur";
                        break a;
                    case 64:
                        N = k ? "open" : "close";
                        break a
                }
                throw Error("Invalid component state");
            }
            return (y | ((y | 24) == y && (this.type = U, this.currentTarget = this.target = J, this.defaultPrevented = this.H = false), 1)) >> 4 || (N = Object.prototype.hasOwnProperty.call(U, dq) && U[dq] || (U[dq] = ++tS)), N
        },
        q = function(x, U, y, J, D) {
            return (((x & 124) == x && (w(J, U, y), y[En] = 2796), (x & 110) == x && (VI.call(this), this.K = new aB(this), this.ZY = null, this.qn = this), x + 3) & 76) >= x && (x - 8 | 7) < x && (D = d(1, U, 23, y, J) >= U), D
        },
        MC = function(x, U, y) {
            return ((U | 3) >> 3 || (this.X6 = this.X6), 23 <= U + 1) && 2 > (U | 7) >> x && (y = Math.floor(this.h$ + (this.o() - this.L))), y
        },
        Lz = function(x, U, y, J, D, S, e, k, X) {
            if ((U ^ 31) >> 3 == x && (e = J, e = (k = e << 13, ~k - ~(e | k) + (~e & k)), e ^= e >> 17, e = (S = e << 5, (S | 0) + ~S + (~e & S) - (~e | S)), (e &= D) || (e = x), X = y ^ e), (U + 8 ^ 19) >= U && (U + 2 & 25) < U) {
                if (!y) throw Error("Invalid class name " + y);
                if ("function" !== typeof J) throw Error("Invalid decorator function " + J);
            }
            return (U & 56) == U && (this.s = W.document || document), X
        },
        v = function(x, U, y, J, D, S, e, k, X, K, N, b, I, O) {
            if ((x | ((x & 30) == x && (D = U.type, D in y.A && C(59, 1, U, y.A[D]) && (c(U, J, 8), 0 == y.A[D].length && (delete y.A[D], y.g--))), 24)) == x) {
                if (fz.call(this, U), !(S = y)) {
                    for (k = this.constructor; k;) {
                        if (D = (X = Zv(13, k, 3), AS[X])) break;
                        k = (e = Object.getPrototypeOf(k.prototype)) && e.constructor
                    }
                    S = D ? "function" === typeof D.PW ? D.PW() : new D : null
                }
                this.V = S
            }
            if (0 <= x + 4 >> 3 && 8 > (x << 2 & 8))
                if (e && e.once) Zv(13, 0, 32, y, e, S, U, D, k);
                else if (Array.isArray(k))
                for (X = 0; X < k.length; X++) v(5, U, true, null, D, S, e, k[X]);
            else D = IB(true, 17, D), S && S[Cz] ? S.K.add(String(k), D, false, A(17, J, e) ? !!e.capture : !!e, U) : v(11, k, false, null, e, U, S, false, D);
            if ((x + 6 ^ 19) < x && (x - 3 | 3) >= x) {
                if (!U) throw Error("Invalid event type");
                if (!(b = (N = ((K = r(23, 24, e)) || (e[rq] = K = new aB(e)), A(65, J, D) ? !!D.capture : !!D), K).add(U, X, k, N, S), b.proxy)) {
                    if (((b.proxy = (I = gq(6, 5), I), I).src = e, I).listener = b, e.addEventListener) qC || (D = N), void 0 === D && (D = y), e.addEventListener(U.toString(), I, D);
                    else if (e.attachEvent) e.attachEvent(A(24, "on", U.toString()), I);
                    else if (e.addListener && e.removeListener) e.addListener(I);
                    else throw Error("addEventListener and attachEvent are unavailable.");
                    jp++
                }
            }
            return O
        },
        c = function(x, U, y, J, D, S) {
            return 4 > (((y | 8) == y && (x.v = true, x.listener = U, x.proxy = U, x.src = U, x.A$ = U), y << 2) & 8) && 15 <= (y | 1) && (D = function() {}, D.prototype = J.prototype, x.F = J.prototype, x.prototype = new D, x.prototype.constructor = x, x.jA = function(e, k, X) {
                for (var K = Array(arguments.length - U), N = U; N < arguments.length; N++) K[N - U] = arguments[N];
                return J.prototype[k].apply(e, K)
            }), S
        },
        IB = function(x, U, y, J, D, S, e, k, X) {
            return (((23 <= U << 2 && 6 > (U - 7 & 15) && (y.v ? D = x : (e = new L(J, this), S = y.A$ || y.src, k = y.listener, y.N && oB(9, 8, "on", 0, y), D = k.call(S, e)), X = D), 11) <= U - 2 && 31 > (U | 3) && ("function" === typeof y ? X = y : (y[pz] || (y[pz] = function(K) {
                return y.handleEvent(K)
            }), X = y[pz])), U) | 64) == U && (J(function(K) {
                K(y)
            }), X = [function() {
                return y
            }]), X
        },
        r = function(x, U, y, J, D, S, e, k) {
            return ((U & 121) == (U + 3 >> 2 < U && (U + 4 ^ x) >= U && (this.listener = y, this.proxy = null, this.src = D, this.type = S, this.capture = !!J, this.A$ = e, this.key = ++u4, this.N = this.v = false), U) && (J = y[rq], k = J instanceof aB ? J : null), 6) <= ((U | 5) & 7) && 4 > (U - 5 & 4) && (typeof J.className == y ? J.className = D : J.setAttribute && J.setAttribute("class", D)), k
        },
        d = function(x, U, y, J, D, S, e, k, X) {
            if (8 <= (y | 4) && 2 > (y ^ 28) >> 4) a: if ("string" === typeof D) X = "string" !== typeof J || J.length != x ? -1 : D.indexOf(J, U);
                else {
                    for (S = U; S < D.length; S++)
                        if (S in D && D[S] === J) {
                            X = S;
                            break a
                        }
                    X = -1
                }
            if ((y | 4) >> 4 || (x.i = ((x.i ? x.i + "~" : "E:") + J.message + U + J.stack).slice(0, 2048)), (y + 4 ^ 14) >= y && (y + 9 ^ 27) < y)
                for (k = D.length, e = "string" === typeof D ? D.split(x) : D, S = U; S < k; S++) S in e && J.call(void 0, e[S], S, D);
            return (y | 72) == y && (X = x.classList ? x.classList : Yx(65, "", 6, U, x).match(/\S+/g) || []), X
        },
        vv = function(x, U, y, J, D, S, e, k, X, K, N, b) {
            if ((((U ^ 78) >> 4 || (this.src = x, this.A = {}, this.g = 0), U) | 80) == U) a: {
                for (S in J)
                    if (D.call(void 0, J[S], S, J)) {
                        b = y;
                        break a
                    }
                b = x
            }
            if ((U & 31) == ((U + 9 ^ 12) < U && U - 3 << 2 >= U && x.Ku && x.Ku.forEach(y, void 0), U)) {
                for (D = X = 0; X < x.length; X++) D += x.charCodeAt(X), D += D << 10, D ^= D >> 6;
                (K = new Number((k = (S = 1 << y, -(e = (D = (N = (D += D << 3, D >> 11), (D & N) + ~(D & N) - (~D ^ N)), D) + (D << 15) >>> 0, S | 1) - 1 - ~S + (S & -2)), -(e | 0) - 2 * ~k + (e & ~k) + 2 * (e | ~k))), K)[0] = (e >>> y) % J, b = K
            }
            return (U + 2 & 52) >= U && U + 7 >> 1 < U && (this.G = x), b
        },
        C = function(x, U, y, J, D, S, e) {
            if ((x - (2 == ((x ^ ((x | 56) == x && (D = d(U, 0, 22, y, J), (S = 0 <= D) && Array.prototype.splice.call(J, D, U), e = S), 14)) >> 3 || (U.classList ? Array.prototype.forEach.call(y, function(k) {
                    f(0, 3, " ", "string", U, k)
                }) : r(23, 14, "string", U, Array.prototype.filter.call(d(U, "string", 75), function(k) {
                    return !q(5, 0, k, y)
                }).join(" "))), x << 1 & 6) && y.T.splice(U, U, J), 7) | 84) >= x && (x + 5 ^ 7) < x)
                if (U.classList) Array.prototype.forEach.call(y, function(k, X) {
                    U.classList ? U.classList.add(k) : (U.classList ? U.classList.contains(k) : q(9, 0, k, d(U, "string", 72))) || (X = Yx(65, "", 3, "string", U), r(23, 22, "string", U, X + (0 < X.length ? " " + k : k)))
                });
                else {
                    for (S in D = (Array.prototype.forEach.call(d(U, (J = {}, "string"), 74), function(k) {
                            J[k] = true
                        }), Array.prototype.forEach.call(y, function(k) {
                            J[k] = true
                        }), ""), J) D += 0 < D.length ? " " + S : S;
                    r(23, 23, "string", U, D)
                }
            return e
        },
        Yx = function(x, U, y, J, D, S, e) {
            return y - ((y & 61) == ((y & 95) == y && (e = typeof D.className == J ? D.className : D.getAttribute && D.getAttribute("class") || U), y) && (e = U), 4) << 2 >= y && (y + 2 ^ 21) < y && (e = (S = Hv[U.substring(0, 3) + "_"]) ? S(U.substring(3), J, D) : IB(true, x, U, J)), e
        },
        B = function(x, U, y, J, D, S, e, k, X, K, N) {
            if (8 > x >> 1 && 0 <= (x ^ 76) >> 3)
                for (D in e = y, J.A) {
                    for (S = J.A[D], k = y; k < S.length; k++) ++e, c(S[k], U, 11);
                    J.g--, delete J.A[D]
                }
            return (4 == (1 == (x >> 2 & 11) && (Array.isArray(J) && (J = J.join(" ")), X = "aria-" + D, "" === J || void 0 == J ? (l4 || (k = {}, l4 = (k[y] = U, k.autocomplete = "none", k.dropeffect = "none", k.haspopup = U, k.live = "off", k.multiline = U, k.multiselectable = U, k.orientation = "vertical", k.readonly = U, k.relevant = "additions text", k.required = U, k.sort = "none", k.busy = U, k.disabled = U, k.hidden = U, k.invalid = "false", k)), e = l4, D in e ? S.setAttribute(X, e[D]) : S.removeAttribute(X)) : S.setAttribute(X, J)), (x | 5) >> 4) && (K = function() {}, D = void 0, J = Pv(U, function(b) {
                K && (y && nz(y), D = b, K(), K = void 0)
            }, !!y)[0], N = {
                invoke: function(b, I, O, R, Z) {
                    function t() {
                        D(function(E) {
                            nz(function() {
                                b(E)
                            })
                        }, O)
                    }
                    if (!I) return Z = J(O), b && b(Z), Z;
                    D ? t() : (R = K, K = function() {
                        (R(), nz)(t)
                    })
                }
            }), x - 1) & 7 || (U.PW = function() {
                return U.yh ? U.yh : U.yh = new U
            }, U.yh = void 0), N
        },
        oB = function(x, U, y, J, D, S, e, k, X, K) {
            if (((1 == (U >> 1 & x) && z.call(this, y, J || Wv.PW(), D), U + 4) ^ 30) < U && (U - 3 ^ 15) >= U) {
                for (D = (e = S = 0, []); e < y.length; e++)
                    for (k = k << J | y[e], S += J; 7 < S;) S -= 8, D.push((X = k >> S, -(X | 255) - 2 * ~(X | 255) + (X | -256) + (~X | 255)));
                K = D
            }
            return (U | (2 == (U << 1 & 7) && (K = i4[y](i4.prototype, {
                floor: J,
                prototype: J,
                splice: J,
                propertyIsEnumerable: J,
                console: J,
                stack: J,
                replace: J,
                length: J,
                call: J,
                parent: J,
                pop: J,
                document: J
            })), (U & 122) == U && "number" !== typeof D && D && !D.v && ((e = D.src) && e[Cz] ? v(14, D, e.K, null) : (k = D.proxy, S = D.type, e.removeEventListener ? e.removeEventListener(S, k, D.capture) : e.detachEvent ? e.detachEvent(A(16, y, S), k) : e.addListener && e.removeListener && e.removeListener(k), jp--, (X = r(23, 16, e)) ? (v(10, D, X, null), X.g == J && (X.src = null, e[rq] = null)) : c(D, null, 10))), 40)) == U && (D.xn(function(N) {
                S = N
            }, y, J), K = S), K
        },
        A = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
            if (3 == x - 5 >> 3)
                if (e = J.K.A[String(S)]) {
                    for (k = (N = (e = e.concat(), true), 0); k < e.length; ++k)(K = e[k]) && !K.v && K.capture == D && (b = K.listener, X = K.A$ || K.src, K.N && v(6, K, J.K, U), N = false !== b.call(X, y) && N);
                    I = N && !y.defaultPrevented
                } else I = true;
            return (x & (4 == (((x + (2 == (x << 1 & 31) && (J = typeof y, I = "object" == J && y != U || "function" == J), 3) >> 4 || (e = typeof D, S = e != y ? e : D ? Array.isArray(D) ? "array" : e : "null", I = S == U || S == y && typeof D.length == J), x) | 2) & 13) && (I = Math.floor(this.o())), 60)) == x && (I = y in cv ? cv[y] : cv[y] = U + y), I
        },
        Bv = function(x, U, y, J, D, S, e, k) {
            if ((y & 31) == y) {
                if (e = window.btoa) {
                    for (S = 0, J = ""; S < U.length; S += 8192) J += String.fromCharCode.apply(null, U.slice(S, S + 8192));
                    D = e(J).replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "")
                } else D = void 0;
                k = D
            }
            return (4 <= y - 7 && 1 > ((y | 6) & 8) && (k = U && U.parentNode ? U.parentNode.removeChild(U) : null), 24) > y >> 1 && y + 2 >= x && (k = !!(J.Mn & S) && !!(J.u & S) != D && (!(e = J.iJ, -~(e | S) - (~e ^ S) - 2 * (~e & S) + 2 * (~e | S)) || J.dispatchEvent(Zv(13, 16, 16, U, 8, 4, S, D))) && !J.X6), k
        },
        gq = function(x, U, y, J, D, S, e, k, X, K, N) {
            if (!((U ^ 35) >> 3)) a: {
                for (k = y; k < e.length; ++k)
                    if (X = e[k], !X.v && X.listener == J && X.capture == !!D && X.A$ == S) {
                        N = k;
                        break a
                    }
                N = -1
            }
            if ((U - ((U + 1 & 74) >= U && (U - 5 | 43) < U && (N = !!(e = D.nu, (e | y) - J * (e & ~S) - (~e ^ S) + (e | ~S)) && !!(D.Mn & S)), x) ^ 11) >= U && (U + 2 & 41) < U)
                if (e = J.length, e > y) {
                    for (S = (D = Array(e), y); S < e; S++) D[S] = J[S];
                    N = D
                } else N = [];
            return 2 == (U >> 1 & 7) && (K = function(b) {
                return y.call(K.src, K.listener, b)
            }, y = ze, N = K), N
        },
        JO = function(x, U, y, J, D, S) {
            for (x.BW = (x.t$ = oB(9, 9, x.Z, (x.Fl = (x.lJ = (x.MY = x[NC], hS), Te), {get: function() {
                        return this.concat()
                    }
                })), i4[x.Z](x.t$, {
                    value: {
                        value: {}
                    }
                })), S = 0, D = []; 128 > S; S++) D[S] = String.fromCharCode(S);
            Un(false, true, 0, true, (C(41, (C(21, (C(33, (w(x, (q(16, 132, (x.Ym = (q(16, 417, function(e, k, X, K, N) {
                for (k = (K = (X = a(3, 2, 34, (N = m(e, 64), e)), []), 0); k < X; k++) K.push(n(491, e, 8));
                w(e, N, K)
            }, (q(56, 474, (q(52, (q(48, 67, function(e, k, X) {
                w(e, (X = m((k = m(e, 66), e), 80), X), "" + p(e, k))
            }, (q(20, (q(16, 299, function(e) {
                a(3, 0, 20, e, 4)
            }, (q(20, (q(52, (q(48, (q(24, (q(20, 203, (q(24, 190, function(e, k, X, K) {
                0 != (K = p(e, (X = m(e, (k = m(e, 66), 82)), X)), p)(e, k) && w(e, 491, K)
            }, (q(24, (q(48, (q(28, 421, (w(x, ((w(x, 351, (x.Ev = (w(x, 215, (w(x, 59, (q(28, 177, function(e, k, X, K) {
                w(e, (K = n(491, e, (k = m(e, 82), 8)), X = m(e, 82), X), p(e, k) >>> K)
            }, (q(28, 1, (q(16, 104, (q(20, 396, function(e, k) {
                k = p(e, m(e, 66)), xE(e.G, 491, k)
            }, (q((w(x, (w(x, (w(x, 341, [165, ((w(x, 148, (q(56, 343, function(e, k, X, K, N) {
                w(e, (X = p((N = (k = m(e, (K = m(e, 80), 80)), p(e, K)), e), k), k), X + N)
            }, (q(24, 231, (q(52, 115, function(e, k, X, K, N, b, I, O, R, Z, t, E, g, u) {
                if (!f(1, 10, k, e, true, true)) {
                    if ("object" == Sp("object", (K = p(e, (X = p(e, (N = p((E = p(e, (u = (I = m(e, (O = (t = m(e, 26), m(e, 26)), 80)), m(e, 64)), I)), e), O), u)), t)), "call"), K)) {
                        for (b in R = [], K) R.push(b);
                        K = R
                    }
                    for (Z = (E = 0 < E ? E : 1, 0), g = K.length; Z < g; Z += E) N(K.slice(Z, 2 * ~E - 4 * ~(Z | E) - (Z ^ E) + 2 * (~Z | E)), X)
                }
            }, (q((q(52, 216, function(e) {
                F6(e, 4)
            }, (q(48, 464, function(e, k, X, K, N) {
                !f(1, 9, k, e, true, false) && (N = QI(64, 491, 0, 1, e), X = N.RY, K = N.wo, e.G == e || X == e.O4 && K == e) && (w(e, N.fu, X.apply(K, N.R)), e.O = e.o())
            }, (q(16, 371, function(e, k, X, K) {
                if (k = e.eu.pop()) {
                    for (X = n(491, e, 8); 0 < X; X--) K = m(e, 80), k[K] = e.P[K];
                    e.P = ((k[88] = e.P[88], k)[59] = e.P[59], k)
                } else w(e, 491, e.Y)
            }, (w(x, (w(x, 491, (x.pu = ((x.HW = 8001, x).D = (x.Vh = ((x.L = 0, x).W = void 0, x.y7 = 0, x.Aj = ((x.ro = (x.I = [], void 0), x).zF = (x.O4 = function(e) {
                return vv.call(this, e, 32)
            }, !(x.O = 0, x.G = x, J = (x.h = void 0, ((x.Qh = false, x.T = [], x).mZ = void 0, window.performance) || {}), x.P = (x.Y = 0, []), x.Su = (x.oY = [], x.ju = [], false), x.U = void 0, x.J = (x.i = void 0, x.h$ = (x.eu = [], x.bw = 1, x.aY = 0, 0), null), 1)), J.timeOrigin || (J.timing || {}).navigationStart) || 0, 0), void 0), 25), 0)), 39), 0), x)), w(x, 331, x), x)), x)), 56), 144, function(e, k, X, K, N, b) {
                w(e, (N = p(e, (k = p(e, (X = m(e, (b = m(e, (K = m(e, 80), 66)), 82)), b)), K)), X), N in k | 0)
            }, x), x)), function(e, k, X, K, N, b, I, O, R, Z, t, E, g, u, Kz, H, l) {
                function T(V, Y) {
                    for (; l < V;) E |= n(491, e, 8) << l, l += 8;
                    return Y = E & (l -= V, (1 << V) - 1), E >>= V, Y
                }
                for (u = (t = (O = (b = (l = E = (Z = m(e, 64), 0), T(3)), 2 - ~(b | 1) + (~b & 1) + 2 * (b | -2)), T)(5), k = [], I = 0); u < t; u++) K = T(1), k.push(K), I += K ? 0 : 1;
                for (R = (Kz = ((I | 0) - 1).toString(2).length, N = 0, []); N < t; N++) k[N] || (R[N] = T(Kz));
                for (H = 0; H < t; H++) k[H] && (R[H] = m(e, 26));
                for (g = [], X = O; X--;) g.push(p(e, m(e, 26)));
                q(56, Z, function(V, Y, yI, P, JS) {
                    for (P = (Y = (yI = [], 0), []); Y < t; Y++) {
                        if (!(JS = R[Y], k)[Y]) {
                            for (; JS >= P.length;) P.push(m(V, 64));
                            JS = P[JS]
                        }
                        yI.push(JS)
                    }(V.U = m(V, 13, g.slice()), V).W = m(V, 9, yI)
                }, e)
            }), x), x)), [])), w)(x, 88, []), 0), 0]), 95), 586), 185), 0), 28), 473, function(e, k, X, K, N, b) {
                w(e, (X = p(e, (K = p(e, (b = m(e, (k = m((N = m(e, 64), e), 66), 82)), k)), N)) == K, b), +X)
            }, x), x)), new iD("Submit"), function(e) {
                F6(e, 1)
            }), x), function(e, k, X, K) {
                f(1, 8, k, e, true, false) || (K = m(e, 26), X = m(e, 66), w(e, X, function(N) {
                    return eval(N)
                }(Ge(p(e.G, K)))))
            }), x), w(x, 150, sl(4)), x)), 2048)), W)), 0), {})), x).Uv = 0, 124), 0), function(e, k, X, K, N, b, I, O) {
                N = p(e, (I = (k = m((K = m(e, (X = m(e, (O = m(e, 26), 80)), 82)), e), 64), b = p(e, K), p(e, k)), X)), w(e, O, m(false, 32, 2, N, e, b, I))
            }), x), 119), function(e, k, X, K, N, b) {
                w(e, (K = p(e, (b = p(e, (k = m(e, (X = m(e, 64), N = m(e, 26), 26)), N)), X)), k), K[b])
            }, x), 382), function(e, k, X, K, N, b, I) {
                for (K = (I = p(e, (N = a(3, 2, (X = m(e, 82), 26), e), k = "", 255)), I).length, b = 0; N--;) b = ((b | 0) + (a(3, 2, 18, e) | 0)) % K, k += D[I[b]];
                w(e, X, k)
            }, x), x)), function(e, k, X, K, N, b, I) {
                (I = m(e, (X = m(e, (K = m(e, 64), 80)), 64)), e).G == e && (b = p(e, K), k = p(e, I), N = p(e, X), b[N] = k, 457 == K && (e.h = void 0, 2 == N && (e.D = kx(491, false, 32, e), e.h = void 0)))
            }), x), 28), function(e, k, X) {
                (X = m(e, 66), k = p(e.G, X), k)[0].removeEventListener(k[1], k[2], $x)
            }, x), 407), function(e, k, X, K, N) {
                w(e, (X = Sp("object", "call", (K = m(e, 26), k = m(e, 66), N = p(e, K), N)), k), X)
            }, x), 386), function(e, k, X, K, N, b, I, O, R, Z) {
                0 !== (Z = p(e, (R = (K = p(e, (X = p(e, (O = m((k = (b = m(e, (N = m(e, 66), 80)), m)(e, 26), e), 82), k)), O)), p(e.G, N)), b)), R) && (I = m(false, 28, 2, X, e, K, 1, R, Z), R.addEventListener(Z, I, $x), w(e, 185, [R, Z, I]))
            }, x), 431), function(e) {
                Ul(3, e)
            }, x), x)), 252), function(e) {
                Ul(4, e)
            }, x), x)), 337), function(e, k, X, K, N, b, I, O, R) {
                f(1, 11, k, e, true, false) || (I = QI(64, 491, 0, 1, e.G), K = I.wo, O = I.RY, N = I.R, X = N.length, b = I.fu, R = 0 == X ? new K[O] : 1 == X ? new K[O](N[0]) : 2 == X ? new K[O](N[0], N[1]) : 3 == X ? new K[O](N[0], N[1], N[2]) : 4 == X ? new K[O](N[0], N[1], N[2], N[3]) : 2(), w(e, b, R))
            }, x), function(e, k, X, K) {
                w((K = m(e, (X = m(e, (k = m(e, 82), 80)), 66)), e), K, p(e, k) || p(e, X))
            }), x), x)), 0), function() {}), x), 405), [0, 0, 0]), 0), x, [En]), 0), x, [ex, U]), 0), x, [y4, y]), x))
        },
        $E = function(x) {
            return Yx.call(this, 65, x, 32)
        },
        Ul = function(x, U, y, J, D, S, e) {
            h(U, ((J = (S = m(U, (y = (D = x & (e = x & 4, 3), m(U, 26)), 64)), p(U, y)), e && (J = Dx(6, "" + J)), D) && h(U, S, G(J.length, 2)), S), J)
        },
        kE = function(x, U, y, J) {
            return B.call(this, 64, x, U, y, J)
        },
        h = function(x, U, y, J, D, S, e, k, X) {
            if (x.G == x)
                for (S = p(x, U), 150 == U ? (D = function(K, N, b, I, O, R) {
                        if (S.s4 != (O = -(R = S.length, R ^ 4) - 2 * (~R ^ 4) + 2 * (R | -5) >> 3, O)) {
                            b = (N = O << 3, (N & 4) - (S.s4 = O, -1) + -5 + (I = [0, 0, e[1], e[2]], N & -5));
                            try {
                                S.Nn = Sx(255, 2, m(16, 19, 24, S, b), 24, 3, I, m(16, 17, 24, S, (b | 0) + 4))
                            } catch (Z) {
                                throw Z;
                            }
                        }
                        S.push(S.Nn[R & 7] ^ K)
                    }, e = p(x, 405)) : D = function(K) {
                        S.push(K)
                    }, J && D(-1 - ~J - (J & -256)), X = y.length, k = 0; k < X; k++) D(y[k])
        },
        z = function(x, U, y, J, D, S, e, k) {
            return v.call(this, 27, y, U, x, J, D, S, e, k)
        },
        aB = function(x) {
            return vv.call(this, x, 64)
        },
        On = function() {
            return q.call(this, 14)
        },
        G = function(x, U, y, J) {
            for (y = ~(U & 1) - (J = [], ~U) + (~U ^ 1) - (~U | 1); 0 <= y; y--) J[1 - (~U ^ 1) + 2 * (U | -2) - (y | 0)] = x >> 8 * y & 255;
            return J
        },
        ze = function(x, U, y, J, D, S) {
            return IB.call(this, true, 7, x, U, y, J, D, S)
        },
        X2 = function(x, U, y, J, D) {
            if (3 == x.length) {
                for (J = 0; 3 > J; J++) U[J] += x[J];
                for (D = (y = 0, [13, 8, 13, 12, 16, 5, 3, 10, 15]); 9 > y; y++) U[3](U, y % 3, D[y])
            }
        },
        xE = function(x, U, y) {
            w(x, U, ((x.eu.push(x.P.slice()), x).P[U] = void 0, y))
        },
        Un = function(x, U, y, J, D, S, e, k) {
            if (D.T.length) {
                D.zF = (D.zF && y(), D.Qh = U, true);
                try {
                    S = D.o(), D.mZ = y, D.L = S, D.O = S, e = Kh(3, 2, U, 0, null, D, true), k = D.o() - D.L, D.h$ += k, k < (J ? 0 : 10) || D.pu-- <= y || (k = Math.floor(k), D.ju.push(254 >= k ? k : 254))
                } finally {
                    D.zF = x
                }
                return e
            }
        },
        ep = function(x, U, y, J, D, S, e, k, X, K) {
            if (X = U[0], X == X6) x.pu = 25, x.S(U);
            else if (X == NC) {
                e = U[y];
                try {
                    D = x.i || x.S(U)
                } catch (N) {
                    d(x, ":", 3, N), D = x.i
                }
                e(D)
            } else if (X == mu) x.S(U);
            else if (X == ex) x.S(U);
            else if (X == y4) {
                try {
                    for (K = 0; K < x.oY.length; K++) try {
                        S = x.oY[K], S[0][S[y]](S[J])
                    } catch (N) {}
                } catch (N) {}(0, U[y])(function(N, b) {
                    x.xn(N, true, b)
                }, (x.oY = [], function(N) {
                    C(45, (N = !x.T.length, 0), x, [Nl]), N && Un(false, true, 0, false, x)
                }))
            } else {
                if (X == sn) return k = U[J], w(x, 282, U[6]), w(x, 351, k), x.S(U);
                X == Nl ? (x.P = null, x.I = [], x.ju = []) : X == En && "loading" === W.document.readyState && (x.J = function(N, b) {
                    function I() {
                        b || (b = true, N())
                    }(W.document.addEventListener("DOMContentLoaded", I, (b = false, $x)), W).addEventListener("load", I, $x)
                })
            }
        },
        Sx = function(x, U, y, J, D, S, e, k, X, K) {
            for (X = (K = 0, k = S[D] | 0, S[U]) | 0; 15 > K; K++) e = e >>> 8 | e << J, k = k >>> 8 | k << J, e += y | 0, y = y << D | y >>> 29, k += X | 0, e ^= X + 3835, X = X << D | X >>> 29, y ^= e, k ^= K + 3835, X ^= k;
            return [y >>> J & x, y >>> 16 & x, y >>> 8 & x, y >>> 0 & x, e >>> J & x, e >>> 16 & x, e >>> 8 & x, e >>> 0 & x]
        },
        Kh = function(x, U, y, J, D, S, e, k, X, K) {
            for (; S.T.length;) {
                X = (S.J = D, S).T.pop();
                try {
                    K = ep(S, X, 1, U)
                } catch (N) {
                    d(S, ":", x, N)
                }
                if (y && S.J) {
                    (k = S.J, k)(function() {
                        Un(false, e, J, e, S)
                    });
                    break
                }
            }
            return K
        },
        Io = function(x, U) {
            for (var y, J = 1, D; J < arguments.length; J++) {
                for (D in y = arguments[J], y) x[D] = y[D];
                for (var S = 0; S < bD.length; S++) D = bD[S], Object.prototype.hasOwnProperty.call(y, D) && (x[D] = y[D])
            }
        },
        Ch = function() {
            return MC.call(this, 4, 8)
        },
        oo = function(x) {
            return Bv.call(this, 21, x, 48)
        },
        mR = function(x, U) {
            return C.call(this, 8, x, U)
        },
        nh = function(x, U, y, J, D) {
            return r.call(this, 23, 3, U, D, y, x, J)
        },
        W = this || self,
        Ol = function(x, U, y, J, D, S, e, k, X, K) {
            ((U.push((K = (k = x[0] << 24, X = x[1] << 16, -~X + 2 * (k ^ X) + (~k ^ X) - (~k & X)), y = x[2] << 8, 2 * (K | 0) + ~K - (K | ~y)) | x[3]), U).push((J = x[4] << 24 | x[5] << 16 | x[6] << 8, D = x[7], -~D + (J ^ D) + (J | ~D))), U).push((e = x[8] << 24 | x[9] << 16 | x[10] << 8, S = x[11], -~(e | S) + (e & ~S) + (~e | S)))
        },
        Sp = function(x, U, y, J, D) {
            if (J = typeof y, J == x)
                if (y) {
                    if (y instanceof Array) return "array";
                    if (y instanceof Object) return J;
                    if (D = Object.prototype.toString.call(y), "[object Window]" == D) return x;
                    if ("[object Array]" == D || "number" == typeof y.length && "undefined" != typeof y.splice && "undefined" != typeof y.propertyIsEnumerable && !y.propertyIsEnumerable("splice")) return "array";
                    if ("[object Function]" == D || "undefined" != typeof y.call && "undefined" != typeof y.propertyIsEnumerable && !y.propertyIsEnumerable(U)) return "function"
                } else return "null";
            else if ("function" == J && "undefined" == typeof y.call) return x;
            return J
        },
        wW = function(x, U, y, J, D, S, e, k, X, K) {
            if (!U.Su) {
                if ((X = (0 == (D = (e = void 0, J && J[0] === Ro && (e = J[2], y = J[1], J = void 0), p)(U, 88), D.length) && (S = p(U, 39) >> x, D.push(y, S >> 8 & 255, S & 255), void 0 != e && D.push(e & 255)), ""), J && (J.message && (X += J.message), J.stack && (X += ":" + J.stack)), k = p(U, 59), k) > x) {
                    U.G = (X = Dx(6, (X = X.slice(0, (k | 0) - x), k -= (X.length | 0) + x, X)), K = U.G, U);
                    try {
                        h(U, 150, G(X.length, 2).concat(X), 12)
                    } finally {
                        U.G = K
                    }
                }
                w(U, 59, k)
            }
        },
        Zx = function() {
            return B.call(this, 56)
        },
        L = function(x, U, y, J, D) {
            return f.call(this, x, 20, U, y, J, D)
        },
        wq = function() {
            return Lz.call(this, 1, 8)
        },
        p = function(x, U, y) {
            if (void 0 === (y = x.P[U], y)) throw [Ro, 30, U];
            if (y.value) return y.create();
            return y.create(1 * U * U + -81 * U + 53), y.prototype
        },
        dW = function(x, U, y, J, D, S, e, k, X, K) {
            function N(b) {
                b && D.appendChild("string" === typeof b ? x.createTextNode(b) : b)
            }
            for (X = 1; X < e.length; X++)
                if (k = e[X], !A(3, "array", U, J, k) || A(81, null, k) && 0 < k.nodeType) N(k);
                else {
                    a: {
                        if (k && typeof k.length == J) {
                            if (A(97, null, k)) {
                                K = "function" == typeof k.item || typeof k.item == S;
                                break a
                            }
                            if ("function" === typeof k) {
                                K = "function" == typeof k.item;
                                break a
                            }
                        }
                        K = false
                    }
                    d(y, 0, 46, N, K ? gq(6, 10, 0, k) : k)
                }
        },
        tO = function(x, U, y, J) {
            try {
                J = x[((U | 2) - ~U + (~U | 2)) % 3], x[U] = (x[U] | 0) - (x[((U | 0) + 1) % 3] | 0) - (J | 0) ^ (1 == U ? J << y : J >>> y)
            } catch (D) {
                throw D;
            }
        },
        El = function() {
            return C.call(this, 3)
        },
        sl = function(x, U) {
            for (U = []; x--;) U.push(255 * Math.random() | 0);
            return U
        },
        ao = function(x, U, y, J, D, S) {
            return p((w(U, (((S = p(U, 491), U.I) && S < U.Y ? (w(U, 491, U.Y), xE(U, 491, y)) : w(U, 491, y), V4)(12, U, D, J), 491), S), U), x)
        },
        Pv = function(x, U, y, J) {
            return Yx.call(this, 65, x, 46, U, y, J)
        },
        Wv = function() {
            return IB.call(this, true, 6)
        },
        fz = function(x) {
            return f.call(this, x, 40)
        },
        QI = function(x, U, y, J, D, S, e, k, X, K) {
            for (e = (S = m(D, (K = (((X = m(D, (k = D[Ml] || {}, x)), k).fu = m(D, 66), k).R = [], D.G) == D ? (n(U, D, 8) | y) - J : 1, 80)), y); e < K; e++) k.R.push(m(D, 66));
            for (k.RY = p(D, X); K--;) k.R[K] = p(D, k.R[K]);
            return k.wo = p(D, S), k
        },
        VI = function() {
            return MC.call(this, 4, 3)
        },
        V4 = function(x, U, y, J, D, S, e, k, X) {
            if (!U.i) {
                U.aY++;
                try {
                    for (D = (e = U.Y, X = 0, void 0); --y;) try {
                        if ((S = void 0, U).U) D = Dv(U.U, U);
                        else {
                            if ((X = p(U, 491), X) >= e) break;
                            D = p(U, (S = m((w(U, J, X), U), 64), S))
                        }
                        f((D && (k = D[Nl], (k | 0) - 2048 - -2049 + (~k | 2048)) ? D(U, y) : wW(3, U, 0, [Ro, 21, S]), 1), x, y, U, false, false)
                    } catch (K) {
                        p(U, 95) ? wW(3, U, 22, K) : w(U, 95, K)
                    }
                    if (!y) {
                        if (U.Lu) {
                            V4(12, (U.aY--, U), 588817040931, 39);
                            return
                        }
                        wW(3, U, 0, [Ro, 33])
                    }
                } catch (K) {
                    try {
                        wW(3, U, 22, K)
                    } catch (N) {
                        d(U, ":", 6, N)
                    }
                }
                U.aY--
            }
        },
        kx = function(x, U, y, J, D, S, e, k, X, K, N, b, I, O, R, Z, t) {
            if ((b = p(J, x), b) >= J.Y) throw [Ro, 31];
            for (O = (D = 0, S = (X = y, b), J.MY.length); 0 < X;) K = S % 8, e = 8 - (K | 0), t = S >> 3, I = J.I[t], N = e < X ? e : X, U && (k = J, k.h != S >> 6 && (k.h = S >> 6, Z = p(k, 457), k.ro = Sx(255, 2, k.D, 24, 3, [0, 0, Z[1], Z[2]], k.h)), I ^= J.ro[t & O]), D |= (I >> 8 - (K | 0) - (N | 0) & (1 << N) - 1) << (X | 0) - (N | 0), X -= N, S += N;
            return w(J, x, ((R = D, b) | 0) + (y | 0)), R
        },
        F6 = function(x, U, y, J) {
            (y = m((J = m(x, 80), x), 82), h)(x, y, G(p(x, J), U))
        },
        Dv = function(x, U, y) {
            return (y = x.create().shift(), U.U.create()).length || U.W.create().length || (U.U = void 0, U.W = void 0), y
        },
        Lh = function(x, U, y, J, D) {
            if (!(J = (D = x, W.trustedTypes), J) || !J.createPolicy) return D;
            try {
                D = J.createPolicy(y, {
                    createHTML: $E,
                    createScript: $E,
                    createScriptURL: $E
                })
            } catch (S) {
                if (W.console) W.console[U](S.message)
            }
            return D
        },
        w = function(x, U, y) {
            if (491 == U || 39 == U) x.P[U] ? x.P[U].concat(y) : x.P[U] = m(x, 11, y);
            else {
                if (x.Su && 457 != U) return;
                341 == U || 150 == U || 148 == U || 88 == U || 405 == U ? x.P[U] || (x.P[U] = m(1, 73, 16, 110, x, y, U)) : x.P[U] = m(1, 75, 16, 137, x, y, U)
            }
            457 == U && (x.D = kx(491, false, 32, x), x.h = void 0)
        },
        Q, fh = function(x, U, y, J, D) {
            return C.call(this, 18, x, U, y, J, D)
        },
        n = function(x, U, y) {
            return U.U ? Dv(U.W, U) : kx(x, true, y, U)
        },
        M = function(x, U) {
            return Zv.call(this, 13, x, 24, U)
        },
        iD = function(x, U, y) {
            return oB.call(this, 9, 3, x, U, y)
        },
        F = function(x, U, y) {
            y = this;
            try {
                JO(this, U, x)
            } catch (J) {
                d(this, ":", 7, J), x(function(D) {
                    D(y.i)
                })
            }
        },
        Dx = function(x, U, y, J, D, S, e, k, X, K, N, b, I) {
            for (k = (S = U.replace(/\r\n/g, "\n"), I = [], X = 0); k < S.length; k++) b = S.charCodeAt(k), 128 > b ? I[X++] = b : (2048 > b ? I[X++] = (N = b >> x, (N | 0) - (N & -193) + (N ^ 192)) : (55296 == 64512 + (~b ^ 64512) - (~b | 64512) && k + 1 < S.length && 56320 == (S.charCodeAt(k + 1) & 64512) ? (b = 65536 + (1023 + (~b ^ 1023) - (~b | 1023) << 10) + (S.charCodeAt(++k) & 1023), I[X++] = (J = b >> 18, -(J & 240) - ~(J & 240) + -2 - ~(J | 240)), I[X++] = (e = b >> 12 & 63, (e & 128) - ~e + -129 + 2 * (~e & 128))) : I[X++] = (K = b >> 12, (K | 0) + ~K - ~(K | 224)), I[X++] = (y = (D = b >> x, (D | 63) - -1 - (~D & 63) + (~D | 63)), 256 - ~y + -258 - (y | -129))), I[X++] = -2 * ~(b & 63) + ~b + 2 * (b & -64) + (~b | 63) | 128);
            return I
        },
        dq = "closure_uid_" + (1E9 * Math.random() >>> 0),
        tS = 0,
        RB, qC = function(x, U) {
            if (!W.addEventListener || !Object.defineProperty) return false;
            U = Object.defineProperty({}, "passive", (x = false, {get: function() {
                    x = true
                }
            }));
            try {
                W.addEventListener("test", function() {}, U), W.removeEventListener("test", function() {}, U)
            } catch (y) {}
            return x
        }(),
        b4 = {
            2: "touch",
            3: "pen",
            4: ((VI.prototype.X6 = (M.prototype.preventDefault = function() {
                this.defaultPrevented = true
            }, false), M.prototype).stopPropagation = function() {
                this.H = true
            }, c(L, 2, 21, M), "mouse")
        },
        Cz = "closure_listenable_" + (1E6 * (L.prototype.preventDefault = (L.prototype.stopPropagation = function() {
            (L.F.stopPropagation.call(this), this).C.stopPropagation ? this.C.stopPropagation() : this.C.cancelBubble = true
        }, function(x) {
            (L.F.preventDefault.call(this), x = this.C, x.preventDefault) ? x.preventDefault(): x.returnValue = false
        }), Math).random() | 0),
        u4 = 0,
        bD = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" "),
        rq = "closure_lm_" + (1E6 * ((aB.prototype.hasListener = function(x, U, y, J, D) {
            return vv(false, 80, (J = void 0 !== U, y = (D = void 0 !== x) ? x.toString() : "", true), this.A, function(S, e) {
                for (e = 0; e < S.length; ++e)
                    if (!(D && S[e].type != y || J && S[e].capture != U)) return true;
                return false
            })
        }, aB).prototype.remove = (aB.prototype.add = function(x, U, y, J, D, S, e, k, X) {
            return (e = gq(6, 33, 0, U, J, ((k = (X = x.toString(), this.A[X]), k) || (k = this.A[X] = [], this.g++), D), k), -1 < e) ? (S = k[e], y || (S.N = false)) : (S = new nh(X, U, this.src, D, !!J), S.N = y, k.push(S)), S
        }, aB.prototype.F6 = function(x, U, y, J, D, S) {
            return -1 < ((S = (D = -1, this.A[J.toString()]), S) && (D = gq(6, 34, 0, U, y, x, S)), D) ? S[D] : null
        }, function(x, U, y, J, D, S, e) {
            if (!(D = x.toString(), D in this.A)) return false;
            return -(e = (S = this.A[D], gq)(6, 32, 0, U, y, J, S), 1) < e ? (c(S[e], null, 9), Array.prototype.splice.call(S, e, 1), 0 == S.length && (delete this.A[D], this.g--), true) : false
        }), Math.random()) | 0),
        cv = {},
        jp = 0,
        pz = "__closure_events_fn_" + (1E9 * Math.random() >>> 0);
    ((((((Q = ((c(On, 2, 17, VI), On.prototype)[Cz] = true, On.prototype), Q).E4 = function(x) {
        this.ZY = x
    }, Q).addEventListener = function(x, U, y, J) {
        v(9, J, true, null, U, this, y, x)
    }, Q).removeEventListener = function(x, U, y, J) {
        f(0, 48, null, this, U, y, J, x)
    }, Q).dispatchEvent = function(x, U, y, J, D, S, e, k, X, K, N) {
        if (J = this.ZY)
            for (S = []; J; J = J.ZY) S.push(J);
        if (K = ((X = (e = S, U = x, D = this.qn, U.type) || U, "string" === typeof U) ? U = new M(U, D) : U instanceof M ? U.target = U.target || D : (N = U, U = new M(X, D), Io(U, N)), true), e)
            for (y = e.length - 1; !U.H && 0 <= y; y--) k = U.currentTarget = e[y], K = A(30, null, U, k, true, X) && K;
        if (U.H || (k = U.currentTarget = D, K = A(34, null, U, k, true, X) && K, U.H || (K = A(31, null, U, k, false, X) && K)), e)
            for (y = 0; !U.H && y < e.length; y++) k = U.currentTarget = e[y], K = A(29, null, U, k, false, X) && K;
        return K
    }, Q).F6 = function(x, U, y, J) {
        return this.K.F6(x, U, y, String(J))
    }, Q).hasListener = function(x, U) {
        return this.K.hasListener(void 0 !== x ? String(x) : void 0, U)
    };
    var l4;
    ((((Q = (c(fz, (((((((Q = wq.prototype, Q.j = function(x) {
        return "string" === typeof x ? this.s.getElementById(x) : x
    }, Q).getElementsByTagName = function(x, U) {
        return (U || this.s).getElementsByTagName(String(x))
    }, Q.createElement = function(x, U, y) {
        return ("application/xhtml+xml" === (y = (U = this.s, String(x)), U).contentType && (y = y.toLowerCase()), U).createElement(y)
    }, Q).createTextNode = function(x) {
        return this.s.createTextNode(String(x))
    }, Q.appendChild = function(x, U) {
        x.appendChild(U)
    }, Q).append = function(x, U) {
        dW(9 == x.nodeType ? x : x.ownerDocument || x.document, "object", "", "number", x, "string", arguments)
    }, Q.canHaveChildren = function(x) {
        if (1 != x.nodeType) return false;
        switch (x.tagName) {
            case "APPLET":
            case "AREA":
            case "BASE":
            case "BR":
            case "COL":
            case "COMMAND":
            case "EMBED":
            case "FRAME":
            case "HR":
            case "IMG":
            case "INPUT":
            case "IFRAME":
            case "ISINDEX":
            case "KEYGEN":
            case "LINK":
            case "NOFRAMES":
            case "NOSCRIPT":
            case "META":
            case "OBJECT":
            case "PARAM":
            case "SCRIPT":
            case "SOURCE":
            case "STYLE":
            case "TRACK":
            case "WBR":
                return false
        }
        return true
    }, Q.removeNode = oo, Q).contains = function(x, U, y) {
        if (!x || !U) return false;
        if (x.contains && 1 == U.nodeType) return x == U || x.contains(U);
        if ("undefined" != typeof x.compareDocumentPosition) return x == U || !!(y = x.compareDocumentPosition(U), 32 - ~(y & 16) - -1 + -34);
        for (; U && x != U;) U = U.parentNode;
        return U == x
    }, B(41, El), El).prototype.Gk = "", El.prototype).aT = 0, 2), 36, On), fz.prototype), Q).kn = El.PW(), Q).j = function() {
        return this.U4
    }, Q.getParent = function() {
        return this.iw
    }, Q.E4 = function(x) {
        if (this.iw && this.iw != x) throw Error("Method not supported");
        fz.F.E4.call(this, x)
    }, Q).GF = function() {
        ((vv(this, 37, function(x) {
            x.IY && x.GF()
        }), this.cW) && B(3, null, 0, this.cW), this).IY = false
    }, Q).removeChild = function(x, U, y, J, D, S, e, k, X, K, N, b) {
        if (x && ("string" === typeof x ? X = x : ((J = x.Cu) || (S = x, b = x.kn, K = b.Gk + ":" + (b.aT++).toString(36), J = S.Cu = K), X = J), y = X, this.TF && y ? (N = this.TF, e = (null !== N && y in N ? N[y] : void 0) || null) : e = null, x = e, y && x)) {
            if (null == ((C(60, 1, x, (D = this.TF, y in D && delete D[y], this).Ku), U) && (x.GF(), x.U4 && oo(x.U4)), k = x, k)) throw Error("Unable to set parent component");
            k.iw = null, fz.F.E4.call(k, null)
        }
        if (!x) throw Error("Child is not in parent component");
        return x
    };
    var AO, rW = {
            button: "pressed",
            checkbox: (B(25, Ch), "checked"),
            menuitem: "selected",
            menuitemcheckbox: "checked",
            menuitemradio: "checked",
            radio: "checked",
            tab: "selected",
            treeitem: "selected"
        },
        AS = (B(33, (c(Zx, 2, (((((Q = Ch.prototype, Q).B = function(x, U, y, J) {
            (J = U.j ? U.j() : U) && (y ? fh : mR)(J, [x])
        }, Q.l = function(x, U, y, J, D, S) {
            if (D = x.j()) this.J$ || (S = this.WW(), S.replace(/\xa0|\s/g, " "), this.J$ = {
                1: S + "-disabled",
                2: S + "-hover",
                4: S + "-active",
                8: S + "-selected",
                16: S + "-checked",
                32: S + "-focused",
                64: S + "-open"
            }), (J = this.J$[U]) && this.B(J, x, y), this.uw(D, U, y)
        }, Q).uw = function(x, U, y, J, D, S, e) {
            (S = (e = (AO || (AO = {
                1: "disabled",
                8: "selected",
                16: "checked",
                64: "expanded"
            }), AO[U]), x.getAttribute("role") || null)) ? (D = rW[S] || e, J = "checked" == e || "selected" == e ? D : e) : J = e, J && B(20, false, "atomic", y, J, x)
        }, Q).Yn = function(x, U, y, J, D, S) {
            if (x.Mn & 32 && (D = x.lw())) {
                if (!U && x.u & 32) {
                    try {
                        D.blur()
                    } catch (e) {}
                    x.u & 32 && (gq(6, 64, 0, 2, x, 4) && x.setActive(false), gq(6, 63, 0, 2, x, 32) && Bv(21, 1, 40, x, false, 32) && x.l(32, false))
                }
                if (J = D.hasAttribute("tabindex")) y = D.tabIndex, J = "number" === typeof y && 0 <= y && 32768 > y;
                J != U && (S = D, U ? S.tabIndex = 0 : (S.tabIndex = -1, S.removeAttribute("tabIndex")))
            }
        }, Q.WW = function() {
            return "goog-control"
        }, Q).lw = function(x) {
            return x.j()
        }, 33), Ch), Zx)), {});
    if ((((((Q = (c(z, 2, 20, (Zx.prototype.WW = (Zx.prototype.uw = function(x, U, y) {
            switch (U) {
                case 8:
                case 16:
                    B(21, false, "atomic", y, "pressed", x);
                    break;
                default:
                case 64:
                case 1:
                    Zx.F.uw.call(this, x, U, y)
            }
        }, function() {
            return "goog-button"
        }), fz)), z).prototype, Q.GF = function() {
            (z.F.GF.call(this), this.Pw) && this.Pw.detach(), this.isVisible() && this.isEnabled() && this.V.Yn(this, false)
        }, Q).zk = true, Q.B = function(x, U) {
            x ? U && (this.X ? q(3, 0, U, this.X) || this.X.push(U) : this.X = [U], this.V.B(U, this, true)) : U && this.X && C(56, 1, U, this.X) && (0 == this.X.length && (this.X = null), this.V.B(U, this, false))
        }, Q.Mn = 39, Q.X = null, Q).iJ = 0, Q.u = 0, Q.lw = function() {
            return this.V.lw(this)
        }, Q.nu = 255, Q.isVisible = function() {
            return this.zk
        }, Q).isEnabled = function() {
            return !(this.u & 1)
        }, Q).isActive = function() {
            return !!(this.u & 4)
        }, Q.setActive = function(x) {
            Bv(21, 1, 41, this, x, 4) && this.l(4, x)
        }, Q.getState = function() {
            return this.u
        }, Q).l = function(x, U, y, J, D, S) {
            y || 1 != x ? this.Mn & x && U != !!(this.u & x) && (this.V.l(this, x, U), this.u = U ? this.u | x : (J = this.u, ~x + (~J ^ ~x) - (~J | ~x))) : (S = !U, D = this.getParent(), D && "function" == typeof D.isEnabled && !D.isEnabled() || !Bv(21, 1, 43, this, !S, 1) || (S || (this.setActive(false), Bv(21, 1, 42, this, false, 2) && this.l(2, false)), this.isVisible() && this.V.Yn(this, S), this.l(1, !S, true)))
        }, "function" !== typeof z) throw Error("Invalid component class " + z);
    if ("function" !== typeof Ch) throw Error("Invalid renderer class " + Ch);
    var gW = Zv(13, z, 5);
    Lz(1, 3, "goog-button", (c(iD, (((B(17, (c(Wv, (Lz(1, (AS[gW] = Ch, 5), "goog-control", function() {
        return new z(null)
    }), 2), 32, Zx), Wv)), Wv).prototype.l = function(x, U, y, J) {
        (J = (Wv.F.l.call(this, x, U, y), x).j()) && 1 == U && (J.disabled = y)
    }, Wv.prototype.Yn = function() {}, Wv.prototype).uw = function() {}, 2), 16, z), function() {
        return new iD(null)
    }));
    var Hv, nz = W.requestIdleCallback ? function(x) {
            requestIdleCallback(function() {
                x()
            }, {
                timeout: 4
            })
        } : W.setImmediate ? function(x) {
            setImmediate(x)
        } : function(x) {
            setTimeout(x, 0)
        },
        $x = {
            passive: true,
            capture: true
        },
        Ml = String.fromCharCode(105, 110, 116, 101, 103, 67, 104, 101, 99, 107, 66, 121, 112, 97, 115, 115),
        NC = [],
        Nl = [],
        Ro = (F.prototype.hj = (F.prototype.oT = void 0, void 0), {}),
        sn = (F.prototype.Lu = !(F.prototype.DY = "toString", 1), []),
        En = [],
        ex = [],
        X6 = [],
        y4 = [],
        mu = [],
        i4 = (((Ol, sl, function() {})(tO), function() {})(X2), Ro.constructor),
        xx = (Q = (F.prototype.Z = "create", F.prototype), void 0),
        Te = ((F.prototype.S = (Q.Xl = (Q.bJ = function() {
            return A.call(this, 22)
        }, Q.o = ((Q.m_ = function(x, U, y, J, D, S) {
            return Lz.call(this, 1, 17, x, U, y, J, D, S)
        }, Q).ZQ = function(x, U, y, J, D, S, e) {
            return oB.call(this, 9, 19, x, U, y, J, D, S, e)
        }, (Q.KR = function() {
            return MC.call(this, 4, 22)
        }, Q.xn = function(x, U, y, J, D, S) {
            return a.call(this, 3, x, 3, U, y, J, D, S)
        }, (window.performance || {}).now) ? function() {
            return this.Aj + window.performance.now()
        } : function() {
            return +new Date
        }), function(x, U, y, J, D, S, e, k, X, K) {
            return vv.call(this, x, 3, U, y, J, D, S, e, k, X, K)
        }), function(x, U) {
            return x = (U = (xx = function() {
                    return x == U ? 53 : 84
                }, {}), {}),
                function(y, J, D, S, e, k, X, K, N, b, I, O, R, Z, t, E, g, u, Kz, H, l, T, V, Y, yI, P) {
                    x = (E = x, U);
                    try {
                        if (R = y[0], R == ex) {
                            Y = y[1];
                            try {
                                for (e = (D = [], T = atob(Y), yI = 0); e < T.length; e++) k = T.charCodeAt(e), 255 < k && (D[yI++] = -1 - ~(k | 255) - (k ^ 255), k >>= 8), D[yI++] = k;
                                w(this, (this.Y = (this.I = D, this.I.length << 3), 457), [0, 0, 0])
                            } catch (JS) {
                                wW(3, this, 17, JS);
                                return
                            }
                            V4(12, this, 8001, 39)
                        } else if (R == X6) y[1].push(p(this, 59), p(this, 150).length, p(this, 148).length, p(this, 341).length), w(this, 351, y[2]), this.P[193] && ao(351, this, p(this, 193), 39, 8001);
                        else {
                            if (R == NC) {
                                O = (Kz = G((P = y[2], X = p(this, 341).length, 2 * (X | 2) - ~(X & 2) + ~X - (~X & 2)), 2), this.G), this.G = this;
                                try {
                                    Z = p(this, 88), 0 < Z.length && h(this, 341, G(Z.length, 2).concat(Z), 15), h(this, 341, G(this.bw, 1), 104), h(this, 341, G(this[NC].length, 1)), N = 0, V = p(this, 150), N += p(this, 124) & 2047, N -= (l = p(this, 341).length, -2 * ~(l & 5) + -3 + (~l & 5) - (~l | 5)), 4 < V.length && (N -= (K = V.length, -2 * ~(K & 3) + -2 + (K ^ 3))), 0 < N && h(this, 341, G(N, 2).concat(sl(N)), 10), 4 < V.length && h(this, 341, G(V.length, 2).concat(V), 153)
                                } finally {
                                    this.G = O
                                }
                                if ((I = sl(2).concat(p(this, 341)), I)[1] = (H = I[0], 3 + ~(H & 3) - (~H ^ 3) - (~H & 3)), I[3] = (S = I[1], J = Kz[0], -(J | 0) + (S | J) + (~S & J)), I[4] = I[1] ^ Kz[1], t = this.vW(I)) t = "!" + t;
                                else
                                    for (u = 0, t = ""; u < I.length; u++) g = I[u][this.DY](16), 1 == g.length && (g = "0" + g), t += g;
                                return (p(this, (p(this, (w(this, (b = t, 59), P.shift()), 150)).length = P.shift(), 148)).length = P.shift(), p)(this, 341).length = P.shift(), b
                            }
                            if (R == mu) ao(351, this, y[1], 39, y[2]);
                            else if (R == sn) return ao(351, this, y[1], 39, 8001)
                        }
                    } finally {
                        x = E
                    }
                }
        }()), F).prototype.uJ = 0, /./),
        hS, ql = ((F.prototype[y4] = [0, 0, 1, 1, 0, 1, 1], F.prototype).DQ = (F.prototype.vW = function(x, U, y, J, D) {
            return Bv.call(this, 21, x, 3, U, y, J, D)
        }, 0), ex.pop.bind(F.prototype[X6])),
        Ge = function(x, U) {
            return (U = Lh(null, "error", "bg")) && 1 === x.eval(U.createScript("1")) ? function(y) {
                return U.createScript(y)
            } : function(y) {
                return "" + y
            }
        }((hS = oB(9, 5, F.prototype.Z, {get: (Te[F.prototype.DY] = ql, ql)
        }), F.prototype.Tk = void 0, W));
    (40 < (Hv = W.botguard || (W.botguard = {}), Hv).m || (Hv.m = 41, Hv.bg = kE, Hv.a = Pv), Hv).DBt_ = function(x, U, y) {
        return [(y = new F(U, x), function(J) {
            return oB(9, 44, false, J, y)
        })]
    };
}).call(this);
                                    

#98 JavaScript::Eval (size: 77, repeated: 1) - SHA256: a8609ba95205e7f4356a057583f842657554ff215d138a5721caf3db2a249753

                                        0,
function(e, k, X, K) {
    w((K = m(e, (X = m(e, (k = m(e, 82), 80)), 66)), e), K, p(e, k) | p(e, X))
}
                                    

#99 JavaScript::Eval (size: 219, repeated: 1) - SHA256: af0d0274ce1f751b50c72b1a6fc0ed6da6bf793c5461319b994c3b0c26c89417

                                        0, QI = function(x, U, y, J, D, S, e, k, X, K) {
    for (e = (S = m(D, (K = (((X = m(D, (k = D[Ml] || {}, x)), k).fu = m(D, 66), k).R = [], D.G) == D ? (n(U, D, 8) | y) - J : 1, 80)), y); e < K; e++) k.R.push(m(D, 66));
    for (k.RY = p(D, X); K--;) k.R[K] = p(D, k.R[K]);
    return k.wo = p(D, S), k
}
                                    

#100 JavaScript::Eval (size: 133, repeated: 1) - SHA256: b125c67b5e80a76a63d4273a6db573cc1f608fb9d52abbef80e77f49cdc3d71d

                                        0, ao = function(x, U, y, J, D, S) {
    return p((w(U, (((S = p(U, 491), U.I) && S < U.Y ? (w(U, 491, U.Y), xE(U, 491, y)) : w(U, 491, y), V4)(12, U, D, J), 491), S), U), x)
}
                                    

#101 JavaScript::Eval (size: 74, repeated: 1) - SHA256: 1ea1df006541962fc45870f8909f529157d48f4bf9639f5fe25ebdd45df20f66

                                        0,
function(e, k, X, K) {
    w(e, (K = n(491, e, (k = m(e, 82), 8)), X = m(e, 82), X), p(e, k) << K)
}
                                    

#102 JavaScript::Eval (size: 311, repeated: 1) - SHA256: 42e807ba14d559eae3f2262626522d9fcb8e1863bd44e9f9c3e319c7c82616f2

                                        0,
function(e, k, X, K, N, b, I, O, R, Z, t, E, g, u) {
    if (!f(1, 10, k, e, true, true)) {
        if ("object" == Sp("object", (K = p(e, (X = p(e, (N = p((E = p(e, (u = (I = m(e, (O = (t = m(e, 26), m(e, 26)), 80)), m(e, 64)), I)), e), O), u)), t)), "call"), K)) {
            for (b in R = [], K) R.push(b);
            K = R
        }
        for (Z = (E = 0 < E ? E : 1, 0), g = K.length; Z < g; Z += E) N(K.slice(Z, 2 * ~E - 4 * ~(Z | E) - (Z ^ E) + 2 * (~Z | E)), X)
    }
}
                                    

#103 JavaScript::Eval (size: 212, repeated: 1) - SHA256: 6c476476702fdccb1cb51a401ffe8f427acc23650bb150658173d5a3a15d6834

                                        0, Lh = function(x, U, y, J, D) {
    if (!(J = (D = x, W.trustedTypes), J) || !J.createPolicy) return D;
    try {
        D = J.createPolicy(y, {
            createHTML: $E,
            createScript: $E,
            createScriptURL: $E
        })
    } catch (S) {
        if (W.console) W.console[U](S.message)
    }
    return D
}
                                    

#104 JavaScript::Eval (size: 244, repeated: 1) - SHA256: 9ed15072250f3e232429232890b02254089e0df20e2478189f9c3667e9df1824

                                        0, Sx = function(x, U, y, J, D, S, e, k, X, K) {
    for (X = (K = 0, k = S[D] | 0, S[U]) | 0; 15 > K; K++) e = e >>> 8 | e << J, k = k >>> 8 | k << J, e += y | 0, y = y << D | y >>> 29, k += X | 0, e ^= X + 3835, X = X << D | X >>> 29, y ^= e, k ^= K + 3835, X ^= k;
    return [y >>> J & x, y >>> 16 & x, y >>> 8 & x, y >>> 0 & x, e >>> J & x, e >>> 16 & x, e >>> 8 & x, e >>> 0 & x]
}
                                    

#105 JavaScript::Eval (size: 19, repeated: 1) - SHA256: 5421715bbdaf2550e31d10fc28d444310a8fe7147bbddecf0abb490358a1553b

                                        /.*\d:\d\d | \d+$/g
                                    

#106 JavaScript::Eval (size: 2, repeated: 1) - SHA256: 7c521f5969e58c6a6069969c0ae5a0437712f36fddd1f8b8686fd71fd72dfd85

                                        wW
                                    

Executed Writes (11)

#1 JavaScript::Write (size: 18, repeated: 1) - SHA256: 0304f6f192da1241555759cbd47b6e2f7267f1661188f93500fb12bab9c28a87

                                        < div id = "ad_unit" >
                                    

#2 JavaScript::Write (size: 6, repeated: 1) - SHA256: aac32651b10f567c461b9b4f255d6fb1fa6859b5368d8bd9a51af920ab21cf23

                                        < /div>
                                    

#3 JavaScript::Write (size: 1884, repeated: 1) - SHA256: 384855e257a09b72ee9a5b7d2e33891d7ea68a106880290842a09047efb51626

                                        < script src = "https://hal9000.redintelligence.net/zone/hrzfgtj0okcb?subid=&gdpr=-1&gdpr_consent=&redirectClick=https%3A%2F%2Fgoogleads.g.doubleclick.net%2Fdbm%2Fclk%3Fsa%3DL%26ai%3DCR7U3NFA8Y4mKAdOCiQaX04pAybminGnsrs3O1Q_wLhABIKqAwyJgw4SAgJgYyAEJqQKlFvlX5ZCwPqgDAaoE8wFP0ABxUb54xsTJ10mvIsArypI6AAO8pz1e5sPElutRMuOR4DTHzTX5pmRlrgAt-wX5-DsUye_lcKfXVae-rGAYUzBIwwemfZ3C7K2Deqa5EoXLKFaIeJd5HJBwAd8HZNRzkmatXq4i6FFRe9g3dwp8x7N9sHpgmwKhOUp5K-bQ2tyAEyPISPNirJfqelIWVDXdwUbVa3b__WvDnMExnegf1jB-VIInhqXSwx_0agPrLAkjJ42SpjFbnUIsZjt6mScyvkepijPDwm5TtbBmTxCGWIXUfyNxRmhkRW7Vw5QKPcqS60ordmoDdlmH9SKkeyPpXa3ABMG9lPzzA-AEA5AGAaAGTYAHrK31nwOoB47OG6gHk9gbqAfulrECqAf-nrECqAeko7ECqAfVyRuoB6a-G6gHmgaoB_PRG6gHltgbqAeqm7ECqAffn7EC2AcA0ggTCIjhgBAQARgdMgOqggE6A4DAA_IIG2FkeC1zdWJzeW4tMzY0MTIwMzE4ODU2ODI4OIAKA5gLAcgLAYAMAbATnKLNDtATANgTA9gUAdAVAfgWAYAXAQ%26ae%3D1%26num%3D1%26cid%3DCAASJ-Ro_GPTaoFT-ZGht3TdJBow7F6BacFNeq_Ul7SYWhT2k0z7C_qdUg%26sig%3DAOD64_34A37krv2tnkL2_2-80AzDgNv9Lw%26client%3Dca-pub-5512390705137507%26dbm_c%3DAKAmf-DM2EUBk-ivL3k9t15Kuw2CqkrUq6uQI4oFhasspAhGfjd9Hr0Kc-xu6OvvRTGwjUcnzJvmGkQwbUzYo2M8MwnprWR2dnvDtf7_44ZIRz9jslKYlOY3EntDj10J6_zyMyLUtB7wLv78MTXRIX8GQ7ZT9_qSv_P7eCu17r_FnmVqzVCHVrU%26cry%3D1%26dbm_d%3DAKAmf-DZv-EpV850mkIDWCOi8Cci1K0A29shh84O3Lbp6rMEFCMrxqDhuLFJG-lP_8yRzdJoirdXx0pV9XX0vNGozdUj_3MWVIVuzZYcfhUBsF-MUSIPWa0jKPItohOAXf0PzLUc11fYEcRsfOkmxh6Q3MdbVBrHrqVTrCQ3VfkGRAfPXTraWQL-u9bV0N-w2ZIk8JJa1-zNOBWMcshgMmgG2O1EvvRC4cBfH2mvlS6ifoCrbP9a20tnv4QJ7DdQP9AaF1lQ2kIE9luqor_3q-WoVVA-KhMHjO8nOvM-QizIYT9BPyw_opP5njXhuFKZ10iIlyAjGfwVfEGIiEeV0zzHS7QRdKP8P5f2qfHr7HvxR-wXAJpVEB4Vf9j9d9QS8zv_4i9zzKOq_osempEDfY-ipXK8SVQXaiZrHrPVvcy0CLtFYu0bcOn3BczLF7TL24ABg5cBtYk7HwQEX3AP_8kanO7cg8_q0D3TafjwE0E8HUmgygAV4hQS071KDhw7-xPwRUNbu_yTPzeemsGOwqHr4-Y36pRiVN7z_B8ksyDkG9gFldmUWsx2T7IfEX6DN3e7jp-8zJhfl9GYlNh5hYeZ8dr2RpFccr4AfwN70yEBZgSBt2Gvb1_qRJ2rhEIPyRbqBgNxQ-yK%26adurl%3D" > < /script>
                                    

#4 JavaScript::Write (size: 161, repeated: 1) - SHA256: a28d4045414109d64377667939554b819e6d7239582f2787ff2e61f567e70c9b

                                        < div id = "e430095873073"
style = "width:1px;height:1px;border:0px;margin:0px;margin-left:1px;margin-top:1px;padding:0px;position:absolute;visibility:hidden;" > < /div>
                                    

#5 JavaScript::Write (size: 2289, repeated: 1) - SHA256: e252576b2f3b537ba19049d639ecc8cd84961cf3159ff544a9f6bde78d1352c1

                                        < script language = "JavaScript"
id = "tpAdtagInnerScriptIdd4b7e72877"
src = "https://hal90006.redintelligence.net/request.php?zone=hrzfgtj0okcb&nw=20&renderingType=javascript&namespace=d4b7e72877&subid=&uid=9b07ae4d763103e7&screenSize=1280x1024&screenSizeAvail=1280x1002&clientSize=750x100&scrollPos=0x0&extData[]=&envData=&gdpr=-1&gdpr_consent=&ud=&redirectClick=https%3A%2F%2Fgoogleads.g.doubleclick.net%2Fdbm%2Fclk%3Fsa%3DL%26ai%3DCR7U3NFA8Y4mKAdOCiQaX04pAybminGnsrs3O1Q_wLhABIKqAwyJgw4SAgJgYyAEJqQKlFvlX5ZCwPqgDAaoE8wFP0ABxUb54xsTJ10mvIsArypI6AAO8pz1e5sPElutRMuOR4DTHzTX5pmRlrgAt-wX5-DsUye_lcKfXVae-rGAYUzBIwwemfZ3C7K2Deqa5EoXLKFaIeJd5HJBwAd8HZNRzkmatXq4i6FFRe9g3dwp8x7N9sHpgmwKhOUp5K-bQ2tyAEyPISPNirJfqelIWVDXdwUbVa3b__WvDnMExnegf1jB-VIInhqXSwx_0agPrLAkjJ42SpjFbnUIsZjt6mScyvkepijPDwm5TtbBmTxCGWIXUfyNxRmhkRW7Vw5QKPcqS60ordmoDdlmH9SKkeyPpXa3ABMG9lPzzA-AEA5AGAaAGTYAHrK31nwOoB47OG6gHk9gbqAfulrECqAf-nrECqAeko7ECqAfVyRuoB6a-G6gHmgaoB_PRG6gHltgbqAeqm7ECqAffn7EC2AcA0ggTCIjhgBAQARgdMgOqggE6A4DAA_IIG2FkeC1zdWJzeW4tMzY0MTIwMzE4ODU2ODI4OIAKA5gLAcgLAYAMAbATnKLNDtATANgTA9gUAdAVAfgWAYAXAQ%26ae%3D1%26num%3D1%26cid%3DCAASJ-Ro_GPTaoFT-ZGht3TdJBow7F6BacFNeq_Ul7SYWhT2k0z7C_qdUg%26sig%3DAOD64_34A37krv2tnkL2_2-80AzDgNv9Lw%26client%3Dca-pub-5512390705137507%26dbm_c%3DAKAmf-DM2EUBk-ivL3k9t15Kuw2CqkrUq6uQI4oFhasspAhGfjd9Hr0Kc-xu6OvvRTGwjUcnzJvmGkQwbUzYo2M8MwnprWR2dnvDtf7_44ZIRz9jslKYlOY3EntDj10J6_zyMyLUtB7wLv78MTXRIX8GQ7ZT9_qSv_P7eCu17r_FnmVqzVCHVrU%26cry%3D1%26dbm_d%3DAKAmf-DZv-EpV850mkIDWCOi8Cci1K0A29shh84O3Lbp6rMEFCMrxqDhuLFJG-lP_8yRzdJoirdXx0pV9XX0vNGozdUj_3MWVIVuzZYcfhUBsF-MUSIPWa0jKPItohOAXf0PzLUc11fYEcRsfOkmxh6Q3MdbVBrHrqVTrCQ3VfkGRAfPXTraWQL-u9bV0N-w2ZIk8JJa1-zNOBWMcshgMmgG2O1EvvRC4cBfH2mvlS6ifoCrbP9a20tnv4QJ7DdQP9AaF1lQ2kIE9luqor_3q-WoVVA-KhMHjO8nOvM-QizIYT9BPyw_opP5njXhuFKZ10iIlyAjGfwVfEGIiEeV0zzHS7QRdKP8P5f2qfHr7HvxR-wXAJpVEB4Vf9j9d9QS8zv_4i9zzKOq_osempEDfY-ipXK8SVQXaiZrHrPVvcy0CLtFYu0bcOn3BczLF7TL24ABg5cBtYk7HwQEX3AP_8kanO7cg8_q0D3TafjwE0E8HUmgygAV4hQS071KDhw7-xPwRUNbu_yTPzeemsGOwqHr4-Y36pRiVN7z_B8ksyDkG9gFldmUWsx2T7IfEX6DN3e7jp-8zJhfl9GYlNh5hYeZ8dr2RpFccr4AfwN70yEBZgSBt2Gvb1_qRJ2rhEIPyRbqBgNxQ-yK%26adurl%3D&documentReferer=https%3A%2F%2Ffi.livingorganicnews.com%2F&ancestorOrigins=null&random=5254079684011&isIframe=1&container=&adPos=0x0&adPosCheck=1x1&adtagId=0" > < /script>
                                    

#6 JavaScript::Write (size: 183, repeated: 1) - SHA256: 59891b8948fedf60cd81b74d3ad9051196b240e7fd2906ec5b2666974bbd1f61

                                        < div style = "width:750px; height:100px; border:0px; margin:0px; padding:0px; text-align:left; vertical-align:top; position:static; display:block; visibility:visible; overflow:hidden;" >
                                    

#7 JavaScript::Write (size: 17375, repeated: 1) - SHA256: dc47a795a5c99d56eab68310880aa923bbeb62ce4ea9e3ad12d68306ef5ba6be

                                        < !doctype html > < html > < head > < script >
    var jscVersion = 'r20220928'; < /script><script>var google_casm=[];</script > < /head><body leftMargin="0" topMargin="0" marginwidth="0" marginheight="0"><div class="GoogleActiveViewInnerContainer"style="left:0px;top:0px;width:100%;height:100%;position:fixed;pointer-events:none;z-index:-9999;"></div > < div style = "display:inline"
class = "GoogleActiveViewElement"
data - google - av - cxn = "https://pagead2.googlesyndication.com/pcs/activeview?xai=AKAOjsu5xqqBHkt0MmwMij7QO6GZqtv-XEogHI5FOY-fUa7BHDmrZzRRPGlXTFFUG62XAdJ5-hauZsHp3ZY9mgEjYXtWtZoiFpfDHRRgZULzv6nhLAosJYnyUlni3khBqD8&amp;sai=AMfl-YQNV_IyQgvgT7tqjLPbNDm-sgoq2JthV92pbGv83C75uB_qUF-WCddHZOPcWEUHJBKXm86Waxl2JZ6NRNeN2T7wPoV45nMi8q3B4Zw42ecneOGGBS0crxUaCN1qqYkFnQ&amp;sig=Cg0ArKJSzJaSLUPYpiL-EAE&amp;cid=CAASJ-Ro_GPTaoFT-ZGht3TdJBow7F6BacFNeq_Ul7SYWhT2k0z7C_qdUg"
data - google - av - adk = "2134781000"
data - google - av - metadata = "la=0&amp;xdi=0&amp;"
data - google - av - override = "-1"
data - google - av - dm = "2"
data - google - av - immediate data - google - av - aid = "0"
data - google - av - naid = "1"
data - google - av - slift = ""
data - google - av - cpmav = ""
data - google - av - btr = ""
data - google - av - itpl = "20"
data - google - av - rs = "4"
data - google - av - flags = "[&quot;x%278440&#39;9efotm(&amp;753374%2bejvf/%27844&gt;&#39;9wuvb$&amp;56533&gt;!=|vqc)!273794&amp;&lt;qqvb/%&lt;1735020!=nehu`/!364=5051!9abk{a($160210:3&amp;&lt;cbotf+*0150034:%2bejvf/%72;17613!=efdwa*&#39;76463;21$?ebkpb$&amp;0366717&gt;*&gt;bgipf+!3=712363%9aihwc)!7202&lt;217&#39;9efotm(&amp;20061;48&amp;&gt;`dopb/%&lt;1707200!=8(&amp;2005575?&amp;&gt;`dopb/%&lt;170642?!=|vqc)!7201;=50&#39;9wuvb$&amp;03641654*&gt;bgipf+!3=731103%9aihwc)!72000225&#39;9efotmy&quot;]" > < DIV STYLE = "position: absolute; left: 0px; top: 0px; visibility: hidden;" > < IMG SRC = "https://pagead2.googlesyndication.com/pagead/gen_204?id=xbid&dbm_b=AKAmf-Bxki_au1T2FG0bbzZvCOrSMyJ92khYZ_36aYlliZT9cEVgo66CAd8q2SZ4TAHzAZzJH7uNxj4mmAd8P3T4gtoUl-iVHRmdYcAz2KFSkldkxIk_YZ8"
BORDER = 0 WIDTH = 1 HEIGHT = 1 ALT = ""
STYLE = "display:none" > < /DIV><iframe title="Blank" src="https:/ / googleads.g.doubleclick.net / xbbe / pixel ? d = CN - KGhDw3uOiAxjm0YzGATAB & v = APEucNW9Nfsnp - An7ZbvziNTpIakSwzhY9FrfOauWvihN_oC2nmGuwb19qfXvg80BS0mWL8IoKn5WxXGRePRMNiEQaoVO4ERne1JZ0FRXaHx7UNIf - HkQHPGXOco6 - TO7g7Zi5dU9BesV2QbWvmZJq6fB9jCyet2ydMVefDiwk_sjBqr912FjE - bJb8uMIp38bIsAgBHyznXrpa5 - Q_cB62g9z9woae7DR2J - kL9hdlyLhrXj8J1LkDAgx6lRScmbq6uaq0UKpTQrfLazkAQiNZeDr - f4EyiCJXnThgZBNpcEaWkzFm6zEQjqBwBKsIOfLEQXlW079Qup1HqV5vAQng8gp5GqI58jLQsLUA6V7BMkcHlXbLonEOu_6hfoNe_RMW6cwJ - JvsAVpcJF2iKofTC_efDLD845tXvwD7L5RPALqSFiE6vhtTSyu_S0t9g0o3pcM8dOHNwiCAibTehn_0ADRKugCcAkyD0hBojVWr72GOWQ2XFWXd1nWU48wmYjm_l4N3qFFMMcpOrItOB3dpZcVb1h70KJa2BZdcw8HmDHWZpW1nmFsUB7jfnD1oqjxM3EPNuvUtriqgSsVcgsHJXGVbgTH0US7DvXxHdwEETNpqzLV0BHnNt5Rt5Tm58lng6gKVc5cx74VdVjVAMe - 0 zK__WhI4AL5AAOwOqw24mX8s2bVMB9xufO40WxXy5gk3hukpo_MY859OELsd9gDgts9_16rvTBVLlqcQM5jZ4QAL479Ck6orOlaK_C7H42oXyPtWzRW2h - faHLbP4 - CMEBdxa4P6aJM2bHJqlA819NR3QP5LV0M4I5yRH4fDtbwFdQuNQbV1j2Je6P9VNzekRVb8bycPEF2TRKJ74pNcHYc1d6I4tjPXx0sOR4Yf8C_6MYxBH_5hzOhX - d8j9g55_ - vfDav5Kb49ww4032GTdRXGCYyHawojKww5xAK7fbUK26obcGQ3gXJd9jCUxYRLnEp7gPH4U6s7fBOtjitksyp3fiMUH - 4 QahyOEXheXl0kDhC4sXUE4NFA_TR6GVjEkNmCuj8qPZA " style="
display: none " aria-hidden="
true "></iframe><div><div style="
position: relative;
display: block;
"><script data-jc="
75 " data-jc-version="
r20220928 " data-jc-flags=" [ & quot;x % 278442 & #39;921378y&quot;]">(function(){/*  Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ 'use strict';var l= this || self;
    var m = new class {
        constructor(a, b = 0) {
            this.key = a;
            this.defaultValue = b;
            this.valueType = "number"
        }
    }("100004", 16E3);

    function n(a, b) {
        Array.prototype.forEach.call(a, b, void 0)
    }

    function p(a, b) {
        return Array.prototype.map.call(a, b, void 0)
    }

    function q(a, b) {
        return Array.prototype.reduce.call(a, b, -1)
    }

    function r(a) {
        const b = [];
        for (let c = 0; c < a; c++) b[c] = "";
        return b
    }; /*  SPDX-License-Identifier: Apache-2.0 */
    function t(a) {
        t[" "](a);
        return a
    }
    t[" "] = function() {};

    function u(a, b) {
        if (a)
            for (const c in a) Object.prototype.hasOwnProperty.call(a, c) && b(a[c], c, a)
    }

    function v(a = document) {
        return a.createElement("img")
    };
    let w = 0;

    function x(a, b = null) {
        return b && b.getAttribute("data-jc") === String(a) ? b : document.querySelector(`[${"data-jc"}="${a}"]`)
    };

    function y() {
        z || (z = new A);
        const a = z.g[m.key];
        if ("proto" === m.valueType) {
            try {
                const b = JSON.parse(a);
                if (Array.isArray(b)) return b
            } catch (b) {}
            return m.defaultValue
        }
        return typeof a === typeof m.defaultValue ? a : m.defaultValue
    }
    var B = class {
        constructor() {
            this.g = {}
        }
    };
    var A = class extends B {
            constructor() {
                super();
                var a = x(w, document.currentScript);
                a = a && a.getAttribute("data-jc-flags") || "";
                try {
                    const b = JSON.parse(a)[0];
                    a = "";
                    for (let c = 0; c < b.length; c++) a += String.fromCharCode(b.charCodeAt(c) ^ "\u0003\u0007\u0003\u0007\b\u0004\u0004\u0006\u0005\u0003".charCodeAt(c % 10));
                    this.g = JSON.parse(a)
                } catch (b) {}
            }
        },
        z;
    const C = RegExp("^https?://(\\w|-)+\\.cdn\\.ampproject\\.(net|org)(\\?|/|$)");

    function D() {
        var a = l;
        const b = [];
        let c = null,
            d;
        do {
            d = a;
            try {
                var e;
                if (e = !!d && null != d.location.href) b: {
                    try {
                        t(d.foo);
                        e = !0;
                        break b
                    } catch (h) {}
                    e = !1
                }
                var f = e
            } catch {
                f = !1
            }
            if (f) {
                var g = d.location.href;
                c = d.document && d.document.referrer || null
            } else g = c, c = null;
            b.push(new E(g || ""));
            try {
                a = d.parent
            } catch (h) {
                a = null
            }
        } while (a && d != a);
        for (let h = 0, k = b.length - 1; h <= k; ++h) b[h].depth = k - h;
        d = l;
        if (d.location && d.location.ancestorOrigins && d.location.ancestorOrigins.length == b.length - 1) for (a = 1; a < b.length; ++a) g = b[a], g.url || (g.url = d.location.ancestorOrigins[a - 1] || "", g.h = !0);
        return b
    }

    function F(a) {
        a = a || D();
        let b = new E(l.location.href, !1),
            c = null;
        const d = a.length - 1;
        for (var e = d; 0 <= e; --e) {
            var f = a[e];
            !c && C.test(f.url) && (c = f);
            if (f.url && !f.h) {
                b = f;
                break
            }
        }
        e = null;
        f = a.length && a[d].url;
        0 != b.depth && f && (e = a[d]);
        return new G(b, e, c)
    }
    var G = class {
            constructor(a, b, c) {
                this.i = a;
                this.j = b;
                this.g = c
            }
        },
        E = class {
            constructor(a, b) {
                this.url = a;
                this.h = !!b;
                this.depth = null
            }
        };

    function H(a, b, c, d, e) {
        const f = [];
        u(a, function(g, h) {
            (g = I(g, b, c, d, e)) && f.push(h + "=" + g)
        });
        return f.join(b)
    }

    function I(a, b, c, d, e) {
        if (null == a) return "";
        b = b || "&";
        c = c || ",$";
        "string" == typeof c && (c = c.split(""));
        if (a instanceof Array) {
            if (d = d || 0, d < c.length) {
                const f = [];
                for (let g = 0; g < a.length; g++) f.push(I(a[g], b, c, d + 1, e));
                return f.join(c[d])
            }
        } else if ("object" == typeof a) return e = e || 0, 2 > e ? encodeURIComponent(H(a, b, c, d, e + 1)) : "...";
        return encodeURIComponent(String(a))
    };class J {
        constructor(a, b) {
            this.g = a;
            this.depth = b
        }
    }
    var L = () => {
        var a = D();
        const b = Math.max(a.length - 1, 0);
        var c = F(a);
        a = c.i;
        var d = c.j;
        const e = c.g,
            f = [];
        c = (h, k) => null == h ? k : h;
        e && f.push(new J([e.url, e.h ? 2 : 0], c(e.depth, 1)));
        d && d != e && f.push(new J([d.url, 2], 0));
        a.url && a != e && f.push(new J([a.url, 0], c(a.depth, b)));
        const g = p(f, (h, k) => f.slice(0, f.length - k));
        !a.url || (e || d) && a != e || (d = /https?:\/\/[^\/]+/.exec(a.url) ? .[0] ? ? "") && g.push([new J([d, 1], c(a.depth, b))]);
        g.push([]);
        return p(g, h => K(b, h))
    };

    function K(a, b) {
        const c = q(b, (e, f) => Math.max(e, f.depth)),
            d = r(c + 2);
        d[0] = a;
        n(b, e => d[e.depth + 1] = e.g);
        return d
    }

    function M() {
        return L().map(a => I(a))
    };w = 75;window.rfl = function(a) {
        try {
            var b = Number(0 === (y() || 0) ? 2083 : y());
            const c = M();
            c.pop();
            const d = b - a.length - 5;
            for (b = 0; b < c.length; b++) {
                const e = encodeURIComponent(c[b]);
                if (e.length <= d) return setTimeout(() => {
                    if (!(.01 < Math.random())) {
                        var f = x(75, document.currentScript);
                        f = f && "true" === f.getAttribute("data-jc-rcd") ? "pagead2.googlesyndication-cn.com" : "pagead2.googlesyndication.com";
                        var g = (g = x(75, document.currentScript)) && g.getAttribute("data-jc-version") || "unknown";
                        f = `https://${f}/pagead/gen_204?id=jca&jc=${75}&version=${g}&sample=${.01}`;
                        g = window;
                        var h;
                        if (h = g.navigator) h = g.navigator.userAgent, h = /Chrome/.test(h) && !/Edge/.test(h) ? !0 : !1;
                        h && g.navigator.sendBeacon ? g.navigator.sendBeacon(f) : (g.google_image_requests || (g.google_image_requests = []), h = v(g.document), h.src = f, g.google_image_requests.push(h))
                    }
                }, 0), a + "&rfl=" + e
            }
            return a
        } catch {}
        return a
    };
}).call(this); < /script><script>var url = 'https:/ / googleads.g.doubleclick.net / dbm / ad ? dbm_c = AKAmf - B1ylU3fdgZcsJh8hPOM_Vz4v9zjwtEgW4bbocLrXNNRMiDQHYvD3kSGNZc2Qa2nIHVVZqO1W - uHuTtn45Pt_W5YaBMUG2DPWSpfcKFaGMQlLSamCF0ZbhS6zHo77IW55FeZmfTLQCA6e - 9 pAn8i1vETFo6jVByt_gwhQN7 - TrX0nibHH4 & cry = 1 & dbm_d = AKAmf - A_VjKObRwEs21Ap1L03dtj8xpsWqNSaK9XlzgFDK2NWdJV9XeuX5vMB104c9HIenspVyUVh9xC0SRbKjHULzZad2clmvz4uDVu8dqJ1w_vh42eJKJzNsoquVXmYGLM4Jmt - zn4ECkjyaPxy7B8IiLw7jleDxpVhOTBHFYWgnzOzINjF4KAks58HFkfxc1m2UAMuZgH42qUMlGzUlpQr6ZM08RKrKwuvQvQXa2TALYCJoZiuNCEq85tcWAxpbwaHQsXrnrthiYFKZVQ0D9RAv1D7Fb2UQztuK_DBG3wKp4ZyepOEMGd2CdAX2OT7xW02z2hPWbBWFt4tIwVs3mk_KqRWtjTtO4BMMHb - SwnCsxhUhT_ZeLLno9rgzhaGSnxgjIUBHmSbzVRJetkAkCwfPk04Minv_ehdW1CXWsLzNM5aDUfxEE0ZdZFKPQYPRXOpDjh3OKA - fyz43Dn0AxEgP - Z9fkGmS9Z3LpxKArMLTuuk4MRvvFxWRAscVK8qRz4Gx07487G6R9C_1N_cqOaObcQj3kiL39RRZ7oavmfqHNGbfvSjNRknE5iB3KuC0ksRvqQWdW1hwXLXv_KqwWPX3cQ1U1_snF6KRVkhSO7zeWgEWISz6CG24a1wsPgoNsTKsHbvUko1pR - w3TKHAkCRWXTsWz73xIOKOM8pfdd1oBZVZgX8B - lgwV9RbH2ecWfwm8_WyVA - 7e3 njzKadC58ZaUm2mhf5zBUH3eDuv_3cC1ZUg80a - Z3h_v4n34V0SbLVxZ55iAWGgv5Vi_UHRNrZmiaWoTG_ksDtI2RXjaagWbe2ST5bK55TS6J_ZYRHBs5dqiL0Mty7kQF1_uIoOMVgxlDYLBBHp6RyLB8dweYZ1yY1GxO908ircH8tqPpLTMwGj0Drp0ncH4FYXzMC9cjhRuqh01FI0X7NiLLLJyoyq0FunWpryhuRE0TfilQN12XPqDcNfIq - qhDfTQf08HeeOr - mQ3vr0901H08BD8zqvtiKiqYhede2QLiGGi26CBA8oy - kFelBZgzJZI8k_qbq2D3wL9XShieJPaXQL7ZQSiCEaFMA4MKVtDotds4DLVRCVhOoBVEe - Af5Ki_6lbZdbxCAjRiAX_TJOtqdM9EwoGDCHg0OcLyyF0QBFTYPQWdO - z61utICzkbQ3NGIysv26oDTUNY7rs - BtJytGn77zVePj9jqrLDD10NIYKICXBj5SE5mpe823oUY05Mug94Jjgme1h2EpdwJlBrGrJ1vDEM2Xk9q1XszGl0kbp0Vbxw0Y3uC91W3KVMwl9GuSrf8ZmvwKsA3HDrDu0UwvsKyWjl2XmoGbIJQn8Ox2w5phRJ8wXjx5OYi0K_ysluGJB1RLKcko20h - ic9cqyiPcCd4DY74VzfClgZ8XKcDeoulgud1Rda2Eqdp5LkySJH0TrErCVWqN - LkSpEiYD3Lst_kpxeZuzhcmHLHT73R0UpUPv8xCxi8pfUzsrBpyG_w - 2 vPfqEsAQDeWWZtlnmEtNBs5NMj8VkvfToKzROwDB7DqzgTfyj7s_NGWD_8iZGM0W_6gtg4J9hXrTPfcDWDcrKrWCTPJm77cLHEdT8Ys2tr9mS1XsW4fzCe3B5WIzPbcI5gP - IRt2T0MrF5Rdo6zkaxkSF78mZp3MV - AHKrCW3j7bV3sp8eybFf_ghqEfuvQIkUxsGQ7wrVp - 79 luMOStM8K0TcjdA92QuyVaZmlaHtDRoypUGNG_iGSRmUCwpb46XtbfNyTpGSSW7JAZXUx1GWBPhKmeyV0C - ZaoJaKRAIrxxxp_P - A5fLRv69fmH_VsOw35z27WXnOsm1TXV_QtOfx40iaU083mcO7N6r9nZ3P2BtQLsevpDRi7 - H - DnhGQC8EO7D9aO_eWN7yKsWSyjZIE5uwdYtBavUb2w4MSTmIxyIKcxT5bfOYWSvN_jQVcoCgiPr8XUEFsgGQHetBpUj - Si6UHEIuwlQE3CMBb2eIEatv6oEhKFuaiGxUh59Ne1Dc7dFHLOMDVqB3ftOKsiGflTOIolCgg - 72 kO54nj0y_kaVIfXEPvBHTVNTDGQSOuZMyy_9IUn7S9HvtT - FMaVMtS8Fg7zBeZqyTd3qpXfydipeLFZTwcZFI_YpcV0Azah0v8MmQtzwVn5R8dnCLXpYe5sZLg0D6Fzh5EHusAEhqRbDSL3aP1ZCz981OCxMErqcI42sQtlX2fOvxH8ph3_Y3Rhj - LTQd - PIbdO9MlB - xF8GeDHHSMWXJaofaUWIbDdqH3 - 5 uZU6mdyBR_RH7NeifUxu_IaG4Umf4SQ0rG3vYTe67TLutMlXQJZ60UpLN5dAHS6BRA4METxEnWPz1sWoj8DBIATJsV7 - O6vzxYyg - 03 ZX - 4 zTGJhIX1CGckoW8VV4XTm_tZRyifI4WzGa8G2s1kXFa7SRzQUzedftE5_fVX6T88NunwfGgrGXUMD9g6a8gnycKGI8jeHIcuJYy7 - 4 _7_0Yq7A5efw0aPoNfsz1ufNmZqW28uZq1h9MauhCQkjAbfcdHoyiNOZFe0ABErIqv1E5 - Dsos2bPY20s6Hj9E38gU9CLgnwdfial3SArc7hCuBbve22E7Oz73sN7CmYZBxMnSx90Pn50vpGHIHNo_1evPx9or7JHWphQ8isDkOxjj4UzCtYlF_t8DlvjkgV_mGd_FMNu87ufCpto5PfCvQhlyiA_NalvX7KuUG9hBRJXdKb - LsWkN6lo5O_GBogQDfs4Nu5d_De3FbLiZ551YHUtQ3gMkeS4WYJ9c_GuGngI0pUf_U8k_A8xWUC01pl2NVRc9RbAiL_KrTpA4rDYduqKj8PEI6Ig6E2pn8Y9xPF6oOvLMbC4NEyfM - o6BTtfCHOjYb5Bpnbtt6Ovm3JCZT3o0AO9b9n0uMlICVFAAQhrXbWWdaKTPZyl0h3ct4aPp0EQTsAn0DW4hdIG69mugor0tghfOPSJOafcxHAMvAJSNmA4H7vXHz3q_blRvEqx9O45CzoBwOcEGjpsMmyQS2ZGJb00Whblt - _EfBOwCxVs1haYgDX3Gm8gCaInUGqYivCsIXKEa8F_d9xuRABfJlfSpug8p20oxZEFBj0pJAb3XDTYcGna6VXd818QHIEeCynjmmyPJ0FhDIkGBQjb89d_oGKxraL3of4bDgIb - zdvKM433VWpnCKB8Q92toI2BaY_Gf8OYK4L3Yck1wIdKaZuVvREbfkTNTGpwSByTU2Apvp_atcngx1bQnK1vEZybOWcqwpUmlDbn01prh5HRzwe1RKrqejp0hWg15 - cDpun5WP5y4apLRzpzZyHfs - 38 kxuqjx2oa7Oc8iFPLZbb7KSw5QZgNISDh1eLbjTA3ToVc9Thx1RIwVlF - GIzG - Q4EJeVcVW3jVyxRvAaIrggFZZFi - wjsPfUM_NlTyfcmJ9yQkT7qz3TUQY1iGp7yvEy0MbHC2xPcCCUamlcV48r2aE1rcMEzi1Axtl7lUvDU - 9E BvEunjhxEQayU8SQDOy7S8Mi851H1xJD0yCnyLdvmOwoax0FKOHtSwUejzF18YvNCNV2nfXhJP - X3BHqfALYDjm_9FrLnYnTaes1GLULpyaGz8OLQY8OFpprGJd7aRxEb8WfBOTM2mlKqOIuOfj1G9qnWtTY8BOjr2P4f0TFE7yZiiEU8wdax0f0PA - I5xuNTiOsnkDYmKj9Odj8_kqEyPWAKb3fGNb2hhwqJSeDOauALPv920iL872LUPpxYOB9jgYlvWGwgfQbZCN514_LFrZ6P_tYE8h6K2xgGtZr0KlmkMPJ4yEsOWo69s2ncR2gOs4xsajeXM9R2ogYWKDMgMJIh82BHash6BBfQ1qrXmAzLh1bF - Qo5tPD4A0QDMyRp6sdrrZ4IqeLOfZDcLOmAk0opCGRiMHlwarnjRmEbW_rvFSlj88P9dNH3JZaGAax6N0jM3x5eoApQWJiES2LiiHmaoQvuy66ZESX7oxeV2d - H56ylCEklpjM0_qL4WbJ7B1qmWUUsBpUTT1l7MySgWgARXLsn8sZnqs2a51FW_3_tsNWZKfODgqdq9W3wyJcqo0vQiaN7AjmrLbbN5rUxIBJa58VJSBjwIklj4gdJRixVbaYnCvHfgR6DXO980 - 2 fMQj1pFziOOxxsx8fcVjVqNPDYMsSObhg - qzdcaVA3axMYB1e7Is1IbDvBROmU0sTl06TjJAhOsHOBNdzrmcNZiK - 6 Q2rWHJXs49eNppioK0GpF4LeGduqaWUGy7Kwv - EQqJt4zEF8HQPdhkmU32AgL - WxTfuS6clxlfQDZwxIyyXudm_UBxyXuo1I6rBrAHX2Un2qGh88CfwMx2QfvTJuWb6MOrAHAkB--3 oQBwPMuEcvMCFj7OOOjbiNCaNtA4ewW9LbbmwyleTtQ7FgqntBGyUHxXq5FsfMI - OUw77fwEU & cid = CAASJ - Ro_GPTaoFT - ZGht3TdJBow7F6BacFNeq_Ul7SYWhT2k0z7C_qdUg ';document.write(' < script src = "' + (window.rfl ? window.rfl(url) : url) + '" > < /s' + 'cript>');</script > < script type = "text/javascript" >
    sb_gdpr = "-1"; /* 0 if GDPR does not apply, 1 if GDPR applies */
sb_gdpr_consent = ""; /* IAB TCF 2.0 consent string */
sb_redirect_click = "https://googleads.g.doubleclick.net/dbm/clk?sa=L&ai=CR7U3NFA8Y4mKAdOCiQaX04pAybminGnsrs3O1Q_wLhABIKqAwyJgw4SAgJgYyAEJqQKlFvlX5ZCwPqgDAaoE8wFP0ABxUb54xsTJ10mvIsArypI6AAO8pz1e5sPElutRMuOR4DTHzTX5pmRlrgAt-wX5-DsUye_lcKfXVae-rGAYUzBIwwemfZ3C7K2Deqa5EoXLKFaIeJd5HJBwAd8HZNRzkmatXq4i6FFRe9g3dwp8x7N9sHpgmwKhOUp5K-bQ2tyAEyPISPNirJfqelIWVDXdwUbVa3b__WvDnMExnegf1jB-VIInhqXSwx_0agPrLAkjJ42SpjFbnUIsZjt6mScyvkepijPDwm5TtbBmTxCGWIXUfyNxRmhkRW7Vw5QKPcqS60ordmoDdlmH9SKkeyPpXa3ABMG9lPzzA-AEA5AGAaAGTYAHrK31nwOoB47OG6gHk9gbqAfulrECqAf-nrECqAeko7ECqAfVyRuoB6a-G6gHmgaoB_PRG6gHltgbqAeqm7ECqAffn7EC2AcA0ggTCIjhgBAQARgdMgOqggE6A4DAA_IIG2FkeC1zdWJzeW4tMzY0MTIwMzE4ODU2ODI4OIAKA5gLAcgLAYAMAbATnKLNDtATANgTA9gUAdAVAfgWAYAXAQ&ae=1&num=1&cid=CAASJ-Ro_GPTaoFT-ZGht3TdJBow7F6BacFNeq_Ul7SYWhT2k0z7C_qdUg&sig=AOD64_34A37krv2tnkL2_2-80AzDgNv9Lw&client=ca-pub-5512390705137507&dbm_c=AKAmf-DM2EUBk-ivL3k9t15Kuw2CqkrUq6uQI4oFhasspAhGfjd9Hr0Kc-xu6OvvRTGwjUcnzJvmGkQwbUzYo2M8MwnprWR2dnvDtf7_44ZIRz9jslKYlOY3EntDj10J6_zyMyLUtB7wLv78MTXRIX8GQ7ZT9_qSv_P7eCu17r_FnmVqzVCHVrU&cry=1&dbm_d=AKAmf-DZv-EpV850mkIDWCOi8Cci1K0A29shh84O3Lbp6rMEFCMrxqDhuLFJG-lP_8yRzdJoirdXx0pV9XX0vNGozdUj_3MWVIVuzZYcfhUBsF-MUSIPWa0jKPItohOAXf0PzLUc11fYEcRsfOkmxh6Q3MdbVBrHrqVTrCQ3VfkGRAfPXTraWQL-u9bV0N-w2ZIk8JJa1-zNOBWMcshgMmgG2O1EvvRC4cBfH2mvlS6ifoCrbP9a20tnv4QJ7DdQP9AaF1lQ2kIE9luqor_3q-WoVVA-KhMHjO8nOvM-QizIYT9BPyw_opP5njXhuFKZ10iIlyAjGfwVfEGIiEeV0zzHS7QRdKP8P5f2qfHr7HvxR-wXAJpVEB4Vf9j9d9QS8zv_4i9zzKOq_osempEDfY-ipXK8SVQXaiZrHrPVvcy0CLtFYu0bcOn3BczLF7TL24ABg5cBtYk7HwQEX3AP_8kanO7cg8_q0D3TafjwE0E8HUmgygAV4hQS071KDhw7-xPwRUNbu_yTPzeemsGOwqHr4-Y36pRiVN7z_B8ksyDkG9gFldmUWsx2T7IfEX6DN3e7jp-8zJhfl9GYlNh5hYeZ8dr2RpFccr4AfwN70yEBZgSBt2Gvb1_qRJ2rhEIPyRbqBgNxQ-yK&adurl="; /* 3rd-party clicktracking */
sb_subid = ""; /* your own tracking-sub-id, max. 128 chars: a-z, A-Z, 0-9 and: -_.,:;/| */

sb_url_base = "https://hal9000.redintelligence.net/zone/hrzfgtj0okcb";
sb_url = sb_url_base;
sb_url = sb_url + "?subid=" + encodeURIComponent(sb_subid);
sb_url = sb_url + "&gdpr=" + encodeURIComponent(sb_gdpr);
sb_url = sb_url + "&gdpr_consent=" + encodeURIComponent(sb_gdpr_consent);
sb_url = sb_url + "&redirectClick=" + encodeURIComponent(sb_redirect_click);
document.write('<scr' + 'ipt src="' + sb_url + '"></scr' + 'ipt>'); < /script></div > < /div></div > < script data - jc = "22"
src = "https://tpc.googlesyndication.com/pagead/js/r20220928/r20110914/client/window_focus_fy2021.js"
async data - jc - version = "r20220928"
data - jcp - url = "https://googleads.g.doubleclick.net/pagead/interaction/?ai=CR7U3NFA8Y4mKAdOCiQaX04pAybminGnsrs3O1Q_wLhABIKqAwyJgw4SAgJgYyAEJqQKlFvlX5ZCwPqgDAaoE8wFP0ABxUb54xsTJ10mvIsArypI6AAO8pz1e5sPElutRMuOR4DTHzTX5pmRlrgAt-wX5-DsUye_lcKfXVae-rGAYUzBIwwemfZ3C7K2Deqa5EoXLKFaIeJd5HJBwAd8HZNRzkmatXq4i6FFRe9g3dwp8x7N9sHpgmwKhOUp5K-bQ2tyAEyPISPNirJfqelIWVDXdwUbVa3b__WvDnMExnegf1jB-VIInhqXSwx_0agPrLAkjJ42SpjFbnUIsZjt6mScyvkepijPDwm5TtbBmTxCGWIXUfyNxRmhkRW7Vw5QKPcqS60ordmoDdlmH9SKkeyPpXa3ABMG9lPzzA-AEA5AGAaAGTYAHrK31nwOoB47OG6gHk9gbqAfulrECqAf-nrECqAeko7ECqAfVyRuoB6a-G6gHmgaoB_PRG6gHltgbqAeqm7ECqAffn7EC2AcA0ggTCIjhgBAQARgdMgOqggE6A4DAA_IIG2FkeC1zdWJzeW4tMzY0MTIwMzE4ODU2ODI4OIAKA5gLAcgLAYAMAbATnKLNDtATANgTA9gUAdAVAfgWAYAXAQ&amp;sigh=F08uoUVfUy4&amp;cid=CAQSPgCsnQUxO9YRlmETw1u9t8TAn9uDDo8BJaVDtd_SpIbZRsVkTnjRis-jFidSjtzTJLCtnngga49Eww5fJ57ZIBM"
data - jcp - gws - id = ""
data - jcp - qem - id = "CIn0tvbwxvoCFVNBwgodl6kCCA" > < /script><script data-jc="23" src="https:/ / tpc.googlesyndication.com / pagead / js / r20220928 / r20110914 / client / qs_click_protection_fy2021.js " data-jc-version="
r20220928 "></script><script>googqscp.init([[[[null,500,99,2,9,null,null,null,1]]]]);</script><img src=" //www.google.com/ads/measurement/l?ebcid=ALh7CaRVXn5uNKXRdRORSbXllK4RHiz8FvRpkBZJep5C2bFxNvG0RYBfbWWqWj9wGMGlTp9LAuNj3o04hBS_JXVnth434J9O7w" style="display:none;" alt=""></img><div style="bottom:0;right:0;width:750px;height:100px;background:initial !important;position:absolute !important;max-width:100% !important;max-height:100% !important;pointer-events:none !important;image-rendering:-moz-crisp-edges !important;z-index:2147483647;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAAWBAMAAACrl3iAAAAABlBMVEUAAAD+AciWmZzWAAAAAnRSTlMAApidrBQAAAB9SURBVBjTbZABFoAgCEPHDbj/adMNJlb0MnnO9RnwX6FC7K07IHm61lzljgrw2Req2ydSZWJ0Voe/uLylbW+T+A5JXCSZ3Cit4E1iU/IISoaIg47hLb2wuQ1UHP0z3CBzBJPqtXYmOJ2btBleCZa7Rj0JNk58syvrkeA14QMUzAVclha01gAAAABJRU5ErkJggg==') !important;"></div><script id="googleActiveViewDisplayScript" src="https://www.googletagservices.com/activeview/js/current/rx_lidar.js?cache=r20110914"></script><script type="text/javascript">osdlfm();</script></body></html>
                                    

#8 JavaScript::Write (size: 4822, repeated: 1) - SHA256: cb2d9f94838bca392cfb14dac62e420f827e33deed00d80622f71e187464d8bf

                                        < script src = "https://googleads.g.doubleclick.net/dbm/ad?dbm_c=AKAmf-B1ylU3fdgZcsJh8hPOM_Vz4v9zjwtEgW4bbocLrXNNRMiDQHYvD3kSGNZc2Qa2nIHVVZqO1W-uHuTtn45Pt_W5YaBMUG2DPWSpfcKFaGMQlLSamCF0ZbhS6zHo77IW55FeZmfTLQCA6e-9pAn8i1vETFo6jVByt_gwhQN7-TrX0nibHH4&cry=1&dbm_d=AKAmf-A_VjKObRwEs21Ap1L03dtj8xpsWqNSaK9XlzgFDK2NWdJV9XeuX5vMB104c9HIenspVyUVh9xC0SRbKjHULzZad2clmvz4uDVu8dqJ1w_vh42eJKJzNsoquVXmYGLM4Jmt-zn4ECkjyaPxy7B8IiLw7jleDxpVhOTBHFYWgnzOzINjF4KAks58HFkfxc1m2UAMuZgH42qUMlGzUlpQr6ZM08RKrKwuvQvQXa2TALYCJoZiuNCEq85tcWAxpbwaHQsXrnrthiYFKZVQ0D9RAv1D7Fb2UQztuK_DBG3wKp4ZyepOEMGd2CdAX2OT7xW02z2hPWbBWFt4tIwVs3mk_KqRWtjTtO4BMMHb-SwnCsxhUhT_ZeLLno9rgzhaGSnxgjIUBHmSbzVRJetkAkCwfPk04Minv_ehdW1CXWsLzNM5aDUfxEE0ZdZFKPQYPRXOpDjh3OKA-fyz43Dn0AxEgP-Z9fkGmS9Z3LpxKArMLTuuk4MRvvFxWRAscVK8qRz4Gx07487G6R9C_1N_cqOaObcQj3kiL39RRZ7oavmfqHNGbfvSjNRknE5iB3KuC0ksRvqQWdW1hwXLXv_KqwWPX3cQ1U1_snF6KRVkhSO7zeWgEWISz6CG24a1wsPgoNsTKsHbvUko1pR-w3TKHAkCRWXTsWz73xIOKOM8pfdd1oBZVZgX8B-lgwV9RbH2ecWfwm8_WyVA-7e3njzKadC58ZaUm2mhf5zBUH3eDuv_3cC1ZUg80a-Z3h_v4n34V0SbLVxZ55iAWGgv5Vi_UHRNrZmiaWoTG_ksDtI2RXjaagWbe2ST5bK55TS6J_ZYRHBs5dqiL0Mty7kQF1_uIoOMVgxlDYLBBHp6RyLB8dweYZ1yY1GxO908ircH8tqPpLTMwGj0Drp0ncH4FYXzMC9cjhRuqh01FI0X7NiLLLJyoyq0FunWpryhuRE0TfilQN12XPqDcNfIq-qhDfTQf08HeeOr-mQ3vr0901H08BD8zqvtiKiqYhede2QLiGGi26CBA8oy-kFelBZgzJZI8k_qbq2D3wL9XShieJPaXQL7ZQSiCEaFMA4MKVtDotds4DLVRCVhOoBVEe-Af5Ki_6lbZdbxCAjRiAX_TJOtqdM9EwoGDCHg0OcLyyF0QBFTYPQWdO-z61utICzkbQ3NGIysv26oDTUNY7rs-BtJytGn77zVePj9jqrLDD10NIYKICXBj5SE5mpe823oUY05Mug94Jjgme1h2EpdwJlBrGrJ1vDEM2Xk9q1XszGl0kbp0Vbxw0Y3uC91W3KVMwl9GuSrf8ZmvwKsA3HDrDu0UwvsKyWjl2XmoGbIJQn8Ox2w5phRJ8wXjx5OYi0K_ysluGJB1RLKcko20h-ic9cqyiPcCd4DY74VzfClgZ8XKcDeoulgud1Rda2Eqdp5LkySJH0TrErCVWqN-LkSpEiYD3Lst_kpxeZuzhcmHLHT73R0UpUPv8xCxi8pfUzsrBpyG_w-2vPfqEsAQDeWWZtlnmEtNBs5NMj8VkvfToKzROwDB7DqzgTfyj7s_NGWD_8iZGM0W_6gtg4J9hXrTPfcDWDcrKrWCTPJm77cLHEdT8Ys2tr9mS1XsW4fzCe3B5WIzPbcI5gP-IRt2T0MrF5Rdo6zkaxkSF78mZp3MV-AHKrCW3j7bV3sp8eybFf_ghqEfuvQIkUxsGQ7wrVp-79luMOStM8K0TcjdA92QuyVaZmlaHtDRoypUGNG_iGSRmUCwpb46XtbfNyTpGSSW7JAZXUx1GWBPhKmeyV0C-ZaoJaKRAIrxxxp_P-A5fLRv69fmH_VsOw35z27WXnOsm1TXV_QtOfx40iaU083mcO7N6r9nZ3P2BtQLsevpDRi7-H-DnhGQC8EO7D9aO_eWN7yKsWSyjZIE5uwdYtBavUb2w4MSTmIxyIKcxT5bfOYWSvN_jQVcoCgiPr8XUEFsgGQHetBpUj-Si6UHEIuwlQE3CMBb2eIEatv6oEhKFuaiGxUh59Ne1Dc7dFHLOMDVqB3ftOKsiGflTOIolCgg-72kO54nj0y_kaVIfXEPvBHTVNTDGQSOuZMyy_9IUn7S9HvtT-FMaVMtS8Fg7zBeZqyTd3qpXfydipeLFZTwcZFI_YpcV0Azah0v8MmQtzwVn5R8dnCLXpYe5sZLg0D6Fzh5EHusAEhqRbDSL3aP1ZCz981OCxMErqcI42sQtlX2fOvxH8ph3_Y3Rhj-LTQd-PIbdO9MlB-xF8GeDHHSMWXJaofaUWIbDdqH3-5uZU6mdyBR_RH7NeifUxu_IaG4Umf4SQ0rG3vYTe67TLutMlXQJZ60UpLN5dAHS6BRA4METxEnWPz1sWoj8DBIATJsV7-O6vzxYyg-03ZX-4zTGJhIX1CGckoW8VV4XTm_tZRyifI4WzGa8G2s1kXFa7SRzQUzedftE5_fVX6T88NunwfGgrGXUMD9g6a8gnycKGI8jeHIcuJYy7-4_7_0Yq7A5efw0aPoNfsz1ufNmZqW28uZq1h9MauhCQkjAbfcdHoyiNOZFe0ABErIqv1E5-Dsos2bPY20s6Hj9E38gU9CLgnwdfial3SArc7hCuBbve22E7Oz73sN7CmYZBxMnSx90Pn50vpGHIHNo_1evPx9or7JHWphQ8isDkOxjj4UzCtYlF_t8DlvjkgV_mGd_FMNu87ufCpto5PfCvQhlyiA_NalvX7KuUG9hBRJXdKb-LsWkN6lo5O_GBogQDfs4Nu5d_De3FbLiZ551YHUtQ3gMkeS4WYJ9c_GuGngI0pUf_U8k_A8xWUC01pl2NVRc9RbAiL_KrTpA4rDYduqKj8PEI6Ig6E2pn8Y9xPF6oOvLMbC4NEyfM-o6BTtfCHOjYb5Bpnbtt6Ovm3JCZT3o0AO9b9n0uMlICVFAAQhrXbWWdaKTPZyl0h3ct4aPp0EQTsAn0DW4hdIG69mugor0tghfOPSJOafcxHAMvAJSNmA4H7vXHz3q_blRvEqx9O45CzoBwOcEGjpsMmyQS2ZGJb00Whblt-_EfBOwCxVs1haYgDX3Gm8gCaInUGqYivCsIXKEa8F_d9xuRABfJlfSpug8p20oxZEFBj0pJAb3XDTYcGna6VXd818QHIEeCynjmmyPJ0FhDIkGBQjb89d_oGKxraL3of4bDgIb-zdvKM433VWpnCKB8Q92toI2BaY_Gf8OYK4L3Yck1wIdKaZuVvREbfkTNTGpwSByTU2Apvp_atcngx1bQnK1vEZybOWcqwpUmlDbn01prh5HRzwe1RKrqejp0hWg15-cDpun5WP5y4apLRzpzZyHfs-38kxuqjx2oa7Oc8iFPLZbb7KSw5QZgNISDh1eLbjTA3ToVc9Thx1RIwVlF-GIzG-Q4EJeVcVW3jVyxRvAaIrggFZZFi-wjsPfUM_NlTyfcmJ9yQkT7qz3TUQY1iGp7yvEy0MbHC2xPcCCUamlcV48r2aE1rcMEzi1Axtl7lUvDU-9EBvEunjhxEQayU8SQDOy7S8Mi851H1xJD0yCnyLdvmOwoax0FKOHtSwUejzF18YvNCNV2nfXhJP-X3BHqfALYDjm_9FrLnYnTaes1GLULpyaGz8OLQY8OFpprGJd7aRxEb8WfBOTM2mlKqOIuOfj1G9qnWtTY8BOjr2P4f0TFE7yZiiEU8wdax0f0PA-I5xuNTiOsnkDYmKj9Odj8_kqEyPWAKb3fGNb2hhwqJSeDOauALPv920iL872LUPpxYOB9jgYlvWGwgfQbZCN514_LFrZ6P_tYE8h6K2xgGtZr0KlmkMPJ4yEsOWo69s2ncR2gOs4xsajeXM9R2ogYWKDMgMJIh82BHash6BBfQ1qrXmAzLh1bF-Qo5tPD4A0QDMyRp6sdrrZ4IqeLOfZDcLOmAk0opCGRiMHlwarnjRmEbW_rvFSlj88P9dNH3JZaGAax6N0jM3x5eoApQWJiES2LiiHmaoQvuy66ZESX7oxeV2d-H56ylCEklpjM0_qL4WbJ7B1qmWUUsBpUTT1l7MySgWgARXLsn8sZnqs2a51FW_3_tsNWZKfODgqdq9W3wyJcqo0vQiaN7AjmrLbbN5rUxIBJa58VJSBjwIklj4gdJRixVbaYnCvHfgR6DXO980-2fMQj1pFziOOxxsx8fcVjVqNPDYMsSObhg-qzdcaVA3axMYB1e7Is1IbDvBROmU0sTl06TjJAhOsHOBNdzrmcNZiK-6Q2rWHJXs49eNppioK0GpF4LeGduqaWUGy7Kwv-EQqJt4zEF8HQPdhkmU32AgL-WxTfuS6clxlfQDZwxIyyXudm_UBxyXuo1I6rBrAHX2Un2qGh88CfwMx2QfvTJuWb6MOrAHAkB--3oQBwPMuEcvMCFj7OOOjbiNCaNtA4ewW9LbbmwyleTtQ7FgqntBGyUHxXq5FsfMI-OUw77fwEU&cid=CAASJ-Ro_GPTaoFT-ZGht3TdJBow7F6BacFNeq_Ul7SYWhT2k0z7C_qdUg&rfl=1%2Chttps%253A%252F%252Ffi.livingorganicnews.com%252F%240" > < /script>
                                    

#9 JavaScript::Write (size: 252, repeated: 1) - SHA256: 3e193d9c4c99193364ae1f796985184bce8bef30538d3a261f3c8c3a1995e08c

                                        < iframe id = "e978607"
name = "e978607"
src = "about:blank"
style = " width:750px; height:100px; border:0px; margin:0px; padding:0px; position:static; display:block; visibility:visible;"
frameborder = "0"
marginwidth = "0"
marginheight = "0"
scrolling = "no" > < /iframe>
                                    

#10 JavaScript::Write (size: 140, repeated: 1) - SHA256: bb8f0cd0c5df4ed8ae0d6903ac549355e08a0f34e61d16617ba118d607e67279

                                        < div style = "width:2px;height:2px;border:0px;margin:0px;padding:0px;text-align:left;vertical-align:top;position:absolute;visibility:hidden;" >
                                    

#11 JavaScript::Write (size: 130, repeated: 1) - SHA256: 8f14145ecbc3e335bc3068afcf4534c2f64f6c81411093cf2cfaf17ba882fbbb

                                        < div id = "e582499136957"
style = "width:1px;height:1px;border:0px;margin:0px;padding:0px;position:absolute;visibility:hidden;" > < /div>
                                    


HTTP Transactions (173)


Request Response
                                        
                                            GET /helicopter-money-why-economists-are-now-thinking-unthinkable-253785 HTTP/1.1 
Host: fi.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1

                                         
                                         104.21.65.39
HTTP/1.1 301 Moved Permanently
                                        
Date: Tue, 04 Oct 2022 15:24:31 GMT
Transfer-Encoding: chunked
Connection: keep-alive
Cache-Control: max-age=3600
Expires: Tue, 04 Oct 2022 16:24:31 GMT
Location: https://fi.livingorganicnews.com/helicopter-money-why-economists-are-now-thinking-unthinkable-253785
Report-To: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=39kk01rtM7FFx%2FhaZBMNKvMsQ2xl8zXKAj3ULYAn94mWtBGp%2BMXDtLbEXDB3CeBrODj1oH4levpmYZ7FqPoiXwuQXo0nm1StuSnIf6dDz6WuWJeQuuZO7nRZh26qMOiP%2FM6ye6pBQoMULoA%3D"}],"group":"cf-nel","max_age":604800}
NEL: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
Vary: Accept-Encoding
X-Content-Type-Options: nosniff
Server: cloudflare
CF-RAY: 754eecca2f780b02-OSL
alt-svc: h2=":443"; ma=60

                                        
                                            GET /v1/ HTTP/1.1 
Host: firefox.settings.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         143.204.55.36
HTTP/1.1 200 OK
Content-Type: application/json
                                        
Content-Length: 939
Connection: keep-alive
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: Alert, Content-Type, Backoff, Content-Length, Retry-After
Cache-Control: max-age=3600
Content-Security-Policy: default-src 'none'; frame-ancestors 'none'; base-uri 'none';
Date: Tue, 04 Oct 2022 14:47:04 GMT
X-Content-Type-Options: nosniff
X-Cache: Hit from cloudfront
Via: 1.1 50584ad285d5f627ddebae74efdd0770.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: OSL50-C1
X-Amz-Cf-Id: YOeoGaGD31BlgBbWJ031bClDs95YVmmK0Ij6kJlOkyJtGgdoCH3qYA==
Age: 2247


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with very long lines (939), with no line terminators
Size:   939
Md5:    1b3053fa528e28810f8a2cc9284cc921
Sha1:   cca9eb471d941881a6b9a1793aecb6c281908f6a
Sha256: a2427848ba35575dda8a82cf88f104978234c05389deebc3fc8279d9075eff45
                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.77.32
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "1F611155394FAC39439B8EC8217D8CD493D6B588D372D264E0D66C03129C50C6"
Last-Modified: Sun, 02 Oct 2022 21:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=6070
Expires: Tue, 04 Oct 2022 17:05:41 GMT
Date: Tue, 04 Oct 2022 15:24:31 GMT
Connection: keep-alive

                                        
                                            GET /chains/remote-settings.content-signature.mozilla.org-2022-10-30-18-47-44.chain HTTP/1.1 
Host: content-signature-2.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

                                         
                                         143.204.55.25
HTTP/2 200 OK
content-type: binary/octet-stream
                                        
content-length: 5348
last-modified: Sat, 10 Sep 2022 18:47:45 GMT
content-disposition: attachment
accept-ranges: bytes
server: AmazonS3
date: Tue, 04 Oct 2022 05:28:28 GMT
etag: "6113f8408c59aebe188d6af273b90743"
x-cache: Hit from cloudfront
via: 1.1 b9f0050ca4d212d7c855e005be54b1ac.cloudfront.net (CloudFront)
x-amz-cf-pop: OSL50-C1
x-amz-cf-id: XaoRxJjehqOaLB_5m6kd5LYN9cXaEEaZYatiWeCIdcLFp8ROL19Hqg==
age: 35764
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  PEM certificate\012- , ASCII text
Size:   5348
Md5:    6113f8408c59aebe188d6af273b90743
Sha1:   7398873bf00f99944eaa77ad3ebc0d43c23dba6b
Sha256: b6e0cc9ad68306208a160f3835fb8da76acc5a82d8fde1da5a98e1de1c11a770
                                        
                                            GET /v1/tiles HTTP/1.1 
Host: contile.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         34.117.237.239
HTTP/2 200 OK
content-type: application/json
                                        
server: nginx
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 12
strict-transport-security: max-age=31536000
via: 1.1 google
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with no line terminators
Size:   12
Md5:    23e88fb7b99543fb33315b29b1fad9d6
Sha1:   a48926c4ec03c7c8a4e8dffcd31e5a6cdda417ce
Sha256: 7d8f1de8b7de7bc21dfb546a1d0c51bf31f16eee5fad49dbceae1e76da38e5c3
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET /adx/optr21_19091901.js HTTP/1.1 
Host: cdn.zx-adnet.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

                                         
                                         151.101.65.195
HTTP/2 200 OK
content-type: text/javascript; charset=utf-8
                                        
cache-control: max-age=3600,public
content-encoding: br
etag: "8d667337f4b47f19e2bec17c6b3da3ea299231ef64ae69dbf0b8eacded0e31a3-br"
last-modified: Sun, 02 Oct 2022 08:34:14 GMT
strict-transport-security: max-age=31556926
x-robots-tag: noindex, nofollow, noarchive
accept-ranges: bytes
date: Tue, 04 Oct 2022 15:24:32 GMT
x-served-by: cache-bma1634-BMA
x-cache: HIT
x-cache-hits: 4
x-timer: S1664897072.304468,VS0,VE1
vary: accept-language, x-country-code, x-fh-requested-host, accept-encoding
alt-svc: h3=":443";ma=86400,h3-29=":443";ma=86400,h3-27=":443";ma=86400
content-length: 20001
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Unicode text, UTF-8 (with BOM) text, with very long lines (64489), with CRLF line terminators
Size:   20001
Md5:    b37347ad00f57eb2d934c4d43346f783
Sha1:   225af7142062d3d37ed529328c9fae858854f603
Sha256: 440b08b2dbf4d45046fdcc060e5e5e2891d78f2669c5707bd3d522355f724d66
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET /bootstrap/4.1.3/css/bootstrap.min.css HTTP/1.1 
Host: stackpath.bootstrapcdn.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: style
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         104.18.10.207
HTTP/2 200 OK
content-type: text/css; charset=utf-8
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
vary: Accept-Encoding
cdn-pullzone: 252412
cdn-uid: b1941f61-b576-4f40-80de-5677acb38f74
cdn-requestcountrycode: DE
access-control-allow-origin: *
cache-control: public, max-age=31919000
etag: W/"04aca1f4cd3ec3c05a75a879f3be75a3"
last-modified: Mon, 25 Jan 2021 22:04:06 GMT
cdn-cachedat: 08/20/2022 02:32:49
cdn-proxyver: 1.02
cdn-requestpullcode: 200
cdn-requestpullsuccess: True
cdn-edgestorageid: 756
timing-allow-origin: *
cross-origin-resource-policy: cross-origin
x-content-type-options: nosniff
cdn-status: 200
cdn-requestid: 6fdd8ff23fbf6a35af5281c85976cb39
cdn-cache: HIT
cf-cache-status: HIT
strict-transport-security: max-age=31536000; includeSubDomains; preload
server: cloudflare
cf-ray: 754eeccd88a0b4f3-OSL
content-encoding: br
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (65324)
Size:   22647
Md5:    f1fa73b6fa8e1f40f72e598da039bfb1
Sha1:   1d35878b371bf42c36ccd176f0aae39edc0b64e3
Sha256: 9875320c5cfe564a4e4e086e34d0294314651b6969860d291bacdb89e94860a2
                                        
                                            GET /static/adManager.js HTTP/1.1 
Host: cst.wpu.sh
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

                                         
                                         188.166.100.156
HTTP/2 301 Moved Permanently
content-type: text/html
                                        
server: nginx/1.18.0
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 169
location: https://cst.cstwpush.com/static/adManager.js
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  HTML document text\012- HTML document text\012- HTML document, ASCII text, with CRLF line terminators
Size:   169
Md5:    84855c13836b389d5ec7cfd4c9266173
Sha1:   1cf3056ff23c4176fd7ca9816a000ed461d6d323
Sha256: 502083c916ae481cdd413b8d93315300653df5fb3dcc5770c01991de19977eae
                                        
                                            GET /template/js/bootstrap.min.js HTTP/1.1 
Host: livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: application/javascript
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
last-modified: Sun, 31 Mar 2019 10:02:00 GMT
etag: W/"8fd8-58560feb23600-gzip"
cache-control: max-age=1209600
expires: Tue, 18 Oct 2022 01:28:06 GMT
vary: Accept-Encoding
access-control-allow-origin: *
cf-cache-status: HIT
age: 50186
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=fxBQORpMuOrPHIS564gwFAyo5Hj0q1Yt64SolKfU%2FjaJyWagvIicdcbvTqJpDkRMMsQbgxb1%2BgckSV4uEkXsYbU9WQ4TMvc4YPV4RY68CxbWx4e85fH8mZ%2FbsSnQQiOb%2BQ%2BSSFanr8k%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eeccd58b6b518-OSL
content-encoding: br
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (32034), with CRLF line terminators
Size:   55939
Md5:    8a88d6711d3c487e1b313a2724dd1aba
Sha1:   91259b831cf5d72c3428a75f2442d270d9765b77
Sha256: e50eb931bb689c17aec9214af1fffb9201bd5a6dff95e5d43d7ecd4d115b2dc1
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET /img/health-medicine/87/few-australian-women-use-long-acting-contraceptives-despite-their-advantages.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 31001
last-modified: Mon, 02 Dec 2019 23:13:48 GMT
etag: "7919-598c0bb68199a"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:32 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=EmGhzMJPBlb0YAimYcactBf8E2n8RDTp8az3BoU8tHBmv%2BWM0c0cb1%2BkLdE%2BNNazH1sAfWzjz0sScipzQl2mOjdGmN2G%2BVv2%2Fhvbrg0WQ5qUcJYZgfkg%2Fp0NSY%2BfH6ODC%2FxlpcxjmKASow%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce4a55b518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:06 13:14:01], progressive, precision 8, 542x264, components 3\012- data
Size:   31001
Md5:    d4dc8bccbc9953b0638c0dffd6fd7b06
Sha1:   52393fc85d9433cf20b0a807d2e0695ce826f5f2
Sha256: 2d5d17d8f5e890d63d7a9caedbb0483563b87ffc9fce0b045e83b348d350b987
                                        
                                            GET /img/health-medicine/40/people-who-shoot-risk-unhealthy-levels-lead-exposure.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 46609
last-modified: Mon, 02 Dec 2019 23:12:21 GMT
etag: "b611-598c0b63045e4"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:32 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=ywR%2FDVvVma%2F0XpTuwD0ubkLJA7vwizURSWQqUjRSg8kAjqTx%2BrmaBkP6F1e4IVVxbLqcqTIcmfdSDnRYm4RMu2H%2BTBs1VYR77jF1BQy%2BxowxeBKOVqv59xUak0vbYIjJpR6flMyq0A55cw%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce4a4db518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:06 12:47:24], progressive, precision 8, 542x264, components 3\012- data
Size:   46609
Md5:    15a3b799115b5ac6b8856f4404e738e4
Sha1:   e725ce39d97a4b2fc320a93ed48fafec04ff6175
Sha256: b52bacef1fe8e4361f5095e9efb941a8e0a7ea3ad4b15795a9978afcaae3e32b
                                        
                                            GET /img/education/85/african-universities-are-ignoring-rich-invaluable-resource-their-alumni.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 34486
last-modified: Mon, 02 Dec 2019 23:07:43 GMT
etag: "86b6-598c0a59d7048"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:32 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=djR17QtUKmOEjkwqYy8Nm9silky8KlSW7y9uOVQGnxZDwMP5yItWLdF2q2drUoG8CyikMZ3k%2FHTCoaxJrt5bMVx1%2FCtY4ETP3nVP52g3mdARy8hYXJCT56vvCzDGoLn2gI2ANCiMW20Mqg%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce4a5cb518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:06 13:12:37], progressive, precision 8, 542x264, components 3\012- data
Size:   34486
Md5:    770403e9e4a8b80bb6ef7a5ecfa60329
Sha1:   4e1408912451d28e4ae9422c0d5556d0c3dd3d55
Sha256: 44ba952b137ede6b5f0839a7bc6cb59cba70301e98590da1f24f4216945e93f7
                                        
                                            GET /template/js/modernizr-custom.js HTTP/1.1 
Host: livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: application/javascript
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
last-modified: Sun, 31 Mar 2019 10:02:00 GMT
etag: W/"13e8-58560feb23600-gzip"
cache-control: max-age=1209600
expires: Tue, 18 Oct 2022 01:27:53 GMT
vary: Accept-Encoding
access-control-allow-origin: *
cf-cache-status: HIT
age: 50199
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=w9CHwTEzYvvqiknkjJzcE3J2tuqeWEieW4CkojzbPii%2Fe5zjmlwPYxxWWynqAwI2iea%2BtYCD2x%2FUZGcqbn2OiZgDVz9B7yLNLfyP1iWrPcaxw7lQHqSsFaoq%2BfYJDQp9aHUfx9w87Kg%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eeccd68ddb518-OSL
content-encoding: br
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (4952), with CRLF line terminators
Size:   32390
Md5:    23466d01392cf9b5d2941a713061e9dc
Sha1:   055753b1f79b4182d5a518ad9107e51e370f366e
Sha256: 59bdc551ec8271725a23657c1fdd7a15952c6ed58f795c292a3bdc724b5937f4
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET /font-awesome/4.7.0/fonts/fontawesome-webfont.woff2?v=4.7.0 HTTP/1.1 
Host: stackpath.bootstrapcdn.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: identity
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://stackpath.bootstrapcdn.com/
Sec-Fetch-Dest: font
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site
TE: trailers

                                         
                                         104.18.10.207
HTTP/2 200 OK
content-type: font/woff2
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 77160
cdn-pullzone: 252412
cdn-uid: b1941f61-b576-4f40-80de-5677acb38f74
cdn-requestcountrycode: DE
access-control-allow-origin: *
cache-control: public, max-age=31919000
etag: "af7ae505a9eed503f8b8e6982036873e"
last-modified: Mon, 25 Jan 2021 22:04:55 GMT
cdn-cachedat: 08/17/2022 18:20:14
cdn-proxyver: 1.02
cdn-requestpullcode: 200
cdn-requestpullsuccess: True
cdn-edgestorageid: 752
timing-allow-origin: *
cross-origin-resource-policy: cross-origin
x-content-type-options: nosniff
cdn-status: 200
cdn-requestid: 5364ac7f5319814fabcb9e56a634e4b5
cdn-cache: HIT
cf-cache-status: HIT
accept-ranges: bytes
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
server: cloudflare
cf-ray: 754eeccf9bc8b4f3-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Web Open Font Format (Version 2), TrueType, length 77160, version 4.459\012- data
Size:   77160
Md5:    af7ae505a9eed503f8b8e6982036873e
Sha1:   d6f48cba7d076fb6f2fd6ba993a75b9dc1ecbf0c
Sha256: 2adefcbc041e7d18fcf2d417879dc5a09997aa64d675b7a3c4b6ce33da13f3fe
                                        
                                            GET /s/roboto/v30/KFOlCnqEu92Fr1MmYUtfBBc4.woff2 HTTP/1.1 
Host: fonts.gstatic.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: identity
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fonts.googleapis.com/
Sec-Fetch-Dest: font
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         216.58.207.195
HTTP/2 200 OK
content-type: font/woff2
                                        
accept-ranges: bytes
access-control-allow-origin: *
content-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes
cross-origin-resource-policy: cross-origin
cross-origin-opener-policy: same-origin; report-to="apps-themes"
report-to: {"group":"apps-themes","max_age":2592000,"endpoints":[{"url":"https://csp.withgoogle.com/csp/report-to/apps-themes"}]}
timing-allow-origin: *
content-length: 15752
x-content-type-options: nosniff
server: sffe
x-xss-protection: 0
date: Wed, 28 Sep 2022 19:40:23 GMT
expires: Thu, 28 Sep 2023 19:40:23 GMT
cache-control: public, max-age=31536000
age: 503049
last-modified: Wed, 11 May 2022 19:24:56 GMT
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Web Open Font Format (Version 2), TrueType, length 15752, version 1.0\012- data
Size:   15752
Md5:    b20371a6daf29d4a1f2e85dbbf40fb20
Sha1:   0355a01c1ccb45cb728e7e07c41c8ebf456f70bb
Sha256: 7e262106f82cc52663e403f5b73795bbeab9ca0630c33c03579354fbcd4fae1e
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET /s/playfairdisplay/v30/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2 HTTP/1.1 
Host: fonts.gstatic.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: identity
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fonts.googleapis.com/
Sec-Fetch-Dest: font
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         216.58.207.195
HTTP/2 200 OK
content-type: font/woff2
                                        
accept-ranges: bytes
access-control-allow-origin: *
content-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes
cross-origin-resource-policy: cross-origin
cross-origin-opener-policy: same-origin; report-to="apps-themes"
report-to: {"group":"apps-themes","max_age":2592000,"endpoints":[{"url":"https://csp.withgoogle.com/csp/report-to/apps-themes"}]}
timing-allow-origin: *
content-length: 35764
x-content-type-options: nosniff
server: sffe
x-xss-protection: 0
date: Mon, 03 Oct 2022 21:14:36 GMT
expires: Tue, 03 Oct 2023 21:14:36 GMT
cache-control: public, max-age=31536000
age: 65396
last-modified: Mon, 18 Jul 2022 19:06:36 GMT
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Web Open Font Format (Version 2), TrueType, length 35764, version 1.0\012- data
Size:   35764
Md5:    60f23230f1a8d5c3b7d25b73f5b5ce23
Sha1:   ed08ada85d017893b9bcb8224e99154c6708f5d2
Sha256: 22b6cdc450204c1cb32b31e679d812fea1c17ac506a7b78daeb12bd0ab25fde8
                                        
                                            GET /s/roboto/v30/KFOlCnqEu92Fr1MmSU5fBBc4.woff2 HTTP/1.1 
Host: fonts.gstatic.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: identity
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fonts.googleapis.com/
Sec-Fetch-Dest: font
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         216.58.207.195
HTTP/2 200 OK
content-type: font/woff2
                                        
accept-ranges: bytes
access-control-allow-origin: *
content-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes
cross-origin-resource-policy: cross-origin
cross-origin-opener-policy: same-origin; report-to="apps-themes"
report-to: {"group":"apps-themes","max_age":2592000,"endpoints":[{"url":"https://csp.withgoogle.com/csp/report-to/apps-themes"}]}
timing-allow-origin: *
content-length: 15740
x-content-type-options: nosniff
server: sffe
x-xss-protection: 0
date: Wed, 28 Sep 2022 19:34:21 GMT
expires: Thu, 28 Sep 2023 19:34:21 GMT
cache-control: public, max-age=31536000
age: 503411
last-modified: Wed, 11 May 2022 19:24:56 GMT
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Web Open Font Format (Version 2), TrueType, length 15740, version 1.0\012- data
Size:   15740
Md5:    b9c29351c46f3e8c8631c4002457f48a
Sha1:   e57e59c5780995ff2937ab2b511a769212974a87
Sha256: f75911313e1c7802c23345ab57e754d87801581706780c993fb23ff4e0fe62ef
                                        
                                            GET /s/roboto/v30/KFOlCnqEu92Fr1MmWUlfBBc4.woff2 HTTP/1.1 
Host: fonts.gstatic.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: identity
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fonts.googleapis.com/
Sec-Fetch-Dest: font
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         216.58.207.195
HTTP/2 200 OK
content-type: font/woff2
                                        
accept-ranges: bytes
access-control-allow-origin: *
content-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes
cross-origin-resource-policy: cross-origin
cross-origin-opener-policy: same-origin; report-to="apps-themes"
report-to: {"group":"apps-themes","max_age":2592000,"endpoints":[{"url":"https://csp.withgoogle.com/csp/report-to/apps-themes"}]}
timing-allow-origin: *
content-length: 15860
x-content-type-options: nosniff
server: sffe
x-xss-protection: 0
date: Wed, 28 Sep 2022 19:34:08 GMT
expires: Thu, 28 Sep 2023 19:34:08 GMT
cache-control: public, max-age=31536000
age: 503424
last-modified: Wed, 11 May 2022 19:24:42 GMT
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Web Open Font Format (Version 2), TrueType, length 15860, version 1.0\012- data
Size:   15860
Md5:    e9f5aaf547f165386cd313b995dddd8e
Sha1:   acdef5603c2387b0e5bffd744b679a24a8bc1968
Sha256: f5aebdfea35d1e7656ef4acc5db1f243209755ae3300943ef8fc6280f363c860
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:32 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.77.32
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "F85BA82D8ADF5D77156B5550C9B9C8AAC48AD9CEC4BD0B4EF25C594843DC5EA2"
Last-Modified: Tue, 04 Oct 2022 00:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=3009
Expires: Tue, 04 Oct 2022 16:14:41 GMT
Date: Tue, 04 Oct 2022 15:24:32 GMT
Connection: keep-alive

                                        
                                            GET /img/news/49/de-lartiste-plasticien-au-chauffeur-uber-rinventer-laccompagnement-destravailleurs-autonomes.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 32926
last-modified: Mon, 02 Dec 2019 23:16:12 GMT
etag: "809e-598c0c3f12e5a"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:32 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=8xwmSaM0jYRE0XD%2Bh5B%2FiTb7PBfoN01DMyCwun2rPSF5ILkSeTitUB4Bw7JRaYB24lUfPQU8HHYAl4pISPzcxGacvyUbGED4glwWhHYPyKcMX4Likraz6ivYtYODbIG%2F%2FNt0Kxw2dBjXpg%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce5a67b518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:06 13:11:56], progressive, precision 8, 542x264, components 3\012- data
Size:   32926
Md5:    e0518b6282a37c2bf07982f6f41ece7f
Sha1:   35d40d30a66171b97a15e06cbb5d2e565eb22c65
Sha256: 8eb4a3d3bb58297e3c8a8b72ff8c904d78b95221eb5bbf395275dbb751f8400a
                                        
                                            GET /img/news/23/self-efficacy-desirability-feasibility-key-concepts.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 37676
last-modified: Mon, 02 Dec 2019 23:14:51 GMT
etag: "932c-598c0bf2aa25e"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:32 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=iW92JW5oc0ZteGVvDjcNjIRd2MC%2Bgc82bwaHpdSQzo9H%2FuIVRUdlmFextjLBbzJ5lVVfU2EHQ6coYbB855UY3NP3sx7HhgfkfN8fA73lm8WAgZDracpKU%2F1dHpR%2F8ik%2FgoXmDlojVqc2JQ%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce5a6cb518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:06 13:05:11], progressive, precision 8, 542x264, components 3\012- data
Size:   37676
Md5:    e3b8104a45e175642086530e91481a74
Sha1:   c1e6c63f77d1c1ec6b70953157d839654a7b771d
Sha256: 31e968406dc9b26e79a9e5bc873bc805ddf37945f4a5596c1eb0204dda1cfb7d
                                        
                                            GET /sf/prebid5.14.0.js HTTP/1.1 
Host: get.optad360.io
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site
TE: trailers

                                         
                                         143.204.55.44
HTTP/2 200 OK
content-type: application/javascript
                                        
content-length: 471445
date: Thu, 22 Sep 2022 03:30:24 GMT
last-modified: Thu, 23 Sep 2021 07:59:54 GMT
etag: "6dd0a13bde35d2daa452bba998871016"
cache-control: public, max-age=360000000
accept-ranges: bytes
server: AmazonS3
x-cache: Hit from cloudfront
via: 1.1 c9f2a4d2bcd548d1a3cbe1617a22f216.cloudfront.net (CloudFront)
x-amz-cf-pop: OSL50-C1
x-amz-cf-id: O73JCfNmsAgO2DWucR9DQjJmshzvNi86ZKhD0MFmHkoHq3UsD7wABw==
age: 1079649
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (47069)
Size:   471445
Md5:    6dd0a13bde35d2daa452bba998871016
Sha1:   67c1a126236fe4d9fefd628dc4040a2991417f2a
Sha256: 7109518959a6958168f639860050324f4f063fd1697f32677cf9d0180ab02453
                                        
                                            GET /img/news/42/ta-chaise-nest-pas-lachaise-oucomment-aider-lesenfants-autistesasperger.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 48706
last-modified: Mon, 02 Dec 2019 23:15:51 GMT
etag: "be42-598c0c2b84027"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:32 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=hxwhEhRgOFnPVjZ7r6rDxEseggxA6S2dr9zC8TpD5SFE4oni7vZuOqnd8xGn3zBNK9xgI5DKXafKY1%2BTe6H2B23l1D%2BFy20612D1bAWkIdieyUeS4j9X5QTWCTm4fsWIhr1C79QGAj5XOA%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce5a74b518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:06 12:40:25], progressive, precision 8, 542x264, components 3\012- data
Size:   48706
Md5:    d8e4317e0eb0314fd0534e5e41fec36e
Sha1:   6755dfd8d22586f5bd4892a95103696571ce3a90
Sha256: f6205308d0d0fff8d87a24dce20506b2171127dd13cc3f1995e57c1338e62646
                                        
                                            GET /img/arts-culture/43/adelaide-festival-review-green-porno.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:32 GMT
content-length: 33949
last-modified: Mon, 02 Dec 2019 22:59:37 GMT
etag: "849d-598c088a28d83"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:32 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=jfXP16%2B5nbOSuWRBrPPrz%2FMneK8zs6zWUZHTEqZdkfEvGM6AzcBkWpEPpezdKoyq%2FeI3F3ogKEYHT21%2FI0Vd6r4KFRkI6GV5sc5fMS5smy6d9H73YXcrhPA64HWk4vNORJ1ImUgTFegbFQ%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce6a7cb518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:06 13:10:21], progressive, precision 8, 542x264, components 3\012- data
Size:   33949
Md5:    ec743b99ae0ba391ff8cad78a359e10f
Sha1:   088a870761c119f81800d01831524964ca7a802c
Sha256: 78fc0273bc5b33513613948c3a25bedde63b6633b234ac9186d08d71fbc5c2a3
                                        
                                            GET /v1/buckets/main/collections/ms-language-packs/records/cfr-v1-en-US HTTP/1.1 
Host: firefox.settings.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: application/json
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         143.204.55.36
HTTP/1.1 200 OK
Content-Type: application/json
                                        
Content-Length: 329
Connection: keep-alive
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: ETag, Expires, Content-Length, Cache-Control, Pragma, Content-Type, Alert, Backoff, Last-Modified, Retry-After
Content-Security-Policy: default-src 'none'; frame-ancestors 'none'; base-uri 'none';
Last-Modified: Fri, 25 Mar 2022 17:45:46 GMT
Strict-Transport-Security: max-age=31536000
X-Content-Type-Options: nosniff
Cache-Control: max-age=3600, max-age=3600
Date: Tue, 04 Oct 2022 14:29:33 GMT
Expires: Tue, 04 Oct 2022 14:31:25 GMT
ETag: "1648230346554"
X-Cache: Hit from cloudfront
Via: 1.1 71c98156ae29b36a903974f9dd2568f8.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: OSL50-C1
X-Amz-Cf-Id: dOiNPhVPrNAVz-Rf_bRXUWl3yCOL6Mfzl_cTnqh-kGJ1qIm9cOsziQ==
Age: 3299


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with very long lines (329), with no line terminators
Size:   329
Md5:    0333b0655111aa68de771adfcc4db243
Sha1:   63f295a144ac87a7c8e23417626724eeca68a7eb
Sha256: 60636eb1dc67c9ed000fe0b49f03777ad6f549cb1d2b9ff010cf198465ae6300
                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 2106
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:32 GMT
Last-Modified: Tue, 04 Oct 2022 14:49:26 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.77.32
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "92438154ABAFC8751AF3968EE4BF43F008231C5242FA848A3F4482DA56D25569"
Last-Modified: Sun, 02 Oct 2022 21:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=7748
Expires: Tue, 04 Oct 2022 17:33:41 GMT
Date: Tue, 04 Oct 2022 15:24:33 GMT
Connection: keep-alive

                                        
                                            GET /tic?startqa=1&r=0.007012768245909351 HTTP/1.1 
Host: site2text-2021.web.app
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

                                         
                                         199.36.158.100
HTTP/2 200 OK
content-type: text/html
                                        
cache-control: private
function-execution-id: 1z1x02cf6ws3
server: Google Frontend
strict-transport-security: max-age=31556926; includeSubDomains; preload
x-cloud-trace-context: f8977cc95d0b7833cd3a485ec08e5bbc
x-country-code: NO
x-orig-accept-language: en-US,en;q=0.5
x-robots-tag: noindex
accept-ranges: bytes
date: Tue, 04 Oct 2022 15:24:33 GMT
x-served-by: cache-bma1627-BMA
x-cache: MISS
x-cache-hits: 0
x-timer: S1664897073.908025,VS0,VE266
vary: cookie,need-authorization, x-fh-requested-host, accept-encoding
alt-svc: h3=":443";ma=86400,h3-29=":443";ma=86400,h3-27=":443";ma=86400
content-length: 0
X-Firefox-Spdy: h2

                                        
                                            POST /s/gts1d4int/7ZBQLSBvJ5A HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         142.250.74.3
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:33 GMT
Cache-Control: public, max-age=14400
Server: scaffolding on HTTPServer2
Content-Length: 471
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET / HTTP/1.1 
Host: push.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Sec-WebSocket-Version: 13
Origin: wss://push.services.mozilla.com/
Sec-WebSocket-Protocol: push-notification
Sec-WebSocket-Extensions: permessage-deflate
Sec-WebSocket-Key: SOvK61vbweXCYRs0EsmEmg==
Connection: keep-alive, Upgrade
Sec-Fetch-Dest: websocket
Sec-Fetch-Mode: websocket
Sec-Fetch-Site: cross-site
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket

                                         
                                         52.88.220.109
HTTP/1.1 101 Switching Protocols
                                        
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Accept: 0jo0VvWywcbTVn+cs77h+T0MhKM=

                                        
                                            GET /gh/prebid/currency-file@1/latest.json?date=20221004 HTTP/1.1 
Host: cdn.jsdelivr.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         151.101.85.229
HTTP/2 200 OK
content-type: application/json; charset=utf-8
                                        
access-control-allow-origin: *
access-control-expose-headers: *
timing-allow-origin: *
cache-control: public, max-age=604800, s-maxage=43200
cross-origin-resource-policy: cross-origin
x-content-type-options: nosniff
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-jsd-version: 1.0.1483
x-jsd-version-type: version
etag: W/"66d-kQ4WxmHMp+ygnAsji8TLZciyY5U"
content-encoding: gzip
accept-ranges: bytes
date: Tue, 04 Oct 2022 15:24:33 GMT
age: 1414
x-served-by: cache-fra19153-FRA, cache-bma1661-BMA
x-cache: HIT, HIT
vary: Accept-Encoding
alt-svc: h3=":443";ma=86400,h3-29=":443";ma=86400,h3-27=":443";ma=86400
content-length: 925
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with very long lines (1645), with no line terminators
Size:   925
Md5:    51945ded6a0f473034c57fe81afb9c75
Sha1:   7bcc6bede291e84bedcb837b696bdd718e36adb4
Sha256: cfd9e91679da8a58e85907aa52cfadc9977ff13fa86f6217cb866191d6c6ece7
                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 6468
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:33 GMT
Last-Modified: Tue, 04 Oct 2022 13:36:45 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            GET /cygnus?s=420039&v=7.2&ac=j&sd=1&r=%7B%22id%22%3A%227f6a1c716751fa%22%2C%22site%22%3A%7B%22page%22%3A%22https%3A%2F%2Ffi.livingorganicnews.com%2Fhelicopter-money-why-economists-are-now-thinking-unthinkable-253785%22%7D%2C%22ext%22%3A%7B%22source%22%3A%22prebid%22%2C%22ixdiag%22%3A%7B%22msd%22%3A2%2C%22msi%22%3A2%2C%22mfu%22%3A0%2C%22bu%22%3A1%2C%22iu%22%3A0%2C%22nu%22%3A0%2C%22ou%22%3A0%2C%22allu%22%3A1%2C%22ren%22%3Afalse%2C%22version%22%3A%225.14.0%22%2C%22userIds%22%3A%5B%5D%7D%7D%2C%22imp%22%3A%5B%7B%22id%22%3A%228e19c7e937391e8%22%2C%22banner%22%3A%7B%22topframe%22%3A1%2C%22format%22%3A%5B%7B%22w%22%3A970%2C%22h%22%3A90%2C%22ext%22%3A%7B%22siteID%22%3A%22420039%22%2C%22sid%22%3A%22970x90%22%7D%7D%2C%7B%22w%22%3A728%2C%22h%22%3A90%2C%22ext%22%3A%7B%22siteID%22%3A%22420039%22%2C%22sid%22%3A%22728x90%22%7D%7D%2C%7B%22w%22%3A750%2C%22h%22%3A100%2C%22ext%22%3A%7B%22siteID%22%3A%22420039%22%2C%22sid%22%3A%22750x100%22%7D%7D%5D%7D%7D%5D%2C%22source%22%3A%7B%22ext%22%3A%7B%22schain%22%3A%7B%22ver%22%3A%221.0%22%2C%22complete%22%3A1%2C%22nodes%22%3A%5B%7B%22asi%22%3A%22optad360.com%22%2C%22sid%22%3A%224863746%22%2C%22hp%22%3A1%7D%5D%7D%7D%7D%2C%22regs%22%3A%7B%22ext%22%3A%7B%22gdpr%22%3A0%7D%7D%2C%22user%22%3A%7B%22ext%22%3A%7B%22consent%22%3A%22%22%7D%7D%7D HTTP/1.1 
Host: htlb.casalemedia.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         104.18.19.126
HTTP/2 200 OK
content-type: application/json
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 36
cf-ray: 754eecd40bdd0afa-OSL
access-control-allow-origin: https://fi.livingorganicnews.com
cache-control: no-cache
expires: 0
cf-cache-status: DYNAMIC
access-control-allow-credentials: true
pragma: no-cache
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=dgUXxHiEubQtcflYYdm7PTEM9RQkYjfiORGpuHFfFBM66izARR7vVDgAkogRRtciQC0v0EiLjZObFiGKtLO5cQITuWbovuvjZy8DCn1S8WJeqpRFc%2B%2B5jo02m1JsedhJgtyvBXgz"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0.01,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
server: cloudflare
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with no line terminators
Size:   36
Md5:    ad20256ffaea79dedc16d2ecc1a292eb
Sha1:   50bfa0ab500b67b99292ea212df93d802c2c14e7
Sha256: 84eca97b92c1f51576587616564f1aac69bef0a7f98fd6d9337fb5bb2e280eef
                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 6468
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:33 GMT
Last-Modified: Tue, 04 Oct 2022 13:36:45 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 6468
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:33 GMT
Last-Modified: Tue, 04 Oct 2022 13:36:45 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 6468
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:33 GMT
Last-Modified: Tue, 04 Oct 2022 13:36:45 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            POST /adx/openrtb HTTP/1.1 
Host: adx.adform.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: application/json
Content-Length: 598
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site
TE: trailers

                                         
                                         37.157.4.29
HTTP/2 204 No Content
                                        
server: nginx
date: Tue, 04 Oct 2022 15:24:33 GMT
access-control-allow-credentials: true
access-control-allow-headers: Content-Type,Cache-Control,Accept-Encoding,X-Requested-With
access-control-allow-methods: POST,OPTIONS
access-control-allow-origin: https://fi.livingorganicnews.com
access-control-max-age: 86400
cache-control: no-cache, no-store, must-revalidate, no-transform
expires: -1
pragma: no-cache
p3p: CP="NOI DSP COR NID CURa ADMa DEVa TAIa PSAa PSDa OUR LEG NAV INT"
strict-transport-security: max-age=31536000; includeSubDomains
X-Firefox-Spdy: h2

                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 5843
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:33 GMT
Last-Modified: Tue, 04 Oct 2022 13:47:10 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            GET /img/politics-society/15/supply-demand-changing-nature-war-drugs.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 35440
last-modified: Mon, 30 Mar 2020 08:08:08 GMT
etag: "8a70-5a20df390c376"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:33 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=4tkH%2BAGx8bT6vkRal4wfnbb3rbJOGlqTUyHM4XeDtlunUAEM0gWAhdGqFw3WBZqtbCODFmdH8Oo6z52LlritxguGmLFdzSlkh9nS8Xg%2FU%2F96S4Q6zV91DtTSGV8FBU9JOSdXLO9dezygOQ%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce6a98b518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:14 15:03:21], progressive, precision 8, 526x256, components 3\012- data
Size:   35440
Md5:    d23b297f882eb190ed6b043401210982
Sha1:   352b5a7dbf10a9648c54c30ad9c2540573b9fceb
Sha256: 3f5034170508df3ddb0cbd9b8b8af9f490377c3eeeecbb350edd5d59659ad49c
                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 5843
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:33 GMT
Last-Modified: Tue, 04 Oct 2022 13:47:10 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            POST /adx/openrtb HTTP/1.1 
Host: adx.adform.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: application/json
Content-Length: 633
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site
TE: trailers

                                         
                                         37.157.4.29
HTTP/2 204 No Content
                                        
server: nginx
date: Tue, 04 Oct 2022 15:24:33 GMT
access-control-allow-credentials: true
access-control-allow-headers: Content-Type,Cache-Control,Accept-Encoding,X-Requested-With
access-control-allow-methods: POST,OPTIONS
access-control-allow-origin: https://fi.livingorganicnews.com
access-control-max-age: 86400
cache-control: no-cache, no-store, must-revalidate, no-transform
expires: -1
pragma: no-cache
p3p: CP="NOI DSP COR NID CURa ADMa DEVa TAIa PSAa PSDa OUR LEG NAV INT"
strict-transport-security: max-age=31536000; includeSubDomains
X-Firefox-Spdy: h2

                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 5843
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:33 GMT
Last-Modified: Tue, 04 Oct 2022 13:47:10 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            POST /bidder/prebid/bids HTTP/1.1 
Host: prebid-eu.creativecdn.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Content-Length: 610
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         185.184.8.90
HTTP/2 204 No Content
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
access-control-allow-origin: https://fi.livingorganicnews.com
access-control-allow-credentials: true
access-control-allow-methods: POST
access-control-max-age: 3600
vary: Origin
X-Firefox-Spdy: h2

                                        
                                            POST /ca/gsatlasr3dvtlsca2022q1 HTTP/1.1 
Host: ocsp.globalsign.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         104.18.20.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Tue, 04 Oct 2022 15:24:33 GMT
Transfer-Encoding: chunked
Connection: keep-alive
Etag: "95C18D214F2BA3AD4702C9398FF87F98A21D38F7"
Expires: Wed, 05 Oct 2022 02:00:00 GMT
Last-Modified: Tue, 04 Oct 2022 14:00:00 UTC
Cache-Control: s-maxage=3600, public, no-transform, must-revalidate
CF-Cache-Status: HIT
Age: 1701
Vary: Accept-Encoding
Server: cloudflare
CF-RAY: 754eecd4e971b503-OSL


--- Additional Info ---
Magic:  data
Size:   1462
Md5:    be86d472f93a60e2d6b1d205261496b7
Sha1:   2f99638b84e415a0a997c6348464637732dd5a0f
Sha256: 1f9fa6a1668c20360d158eb2571b23f749afa0ff80f5b068d573d0dd83dabda9
                                        
                                            POST /adx/openrtb HTTP/1.1 
Host: adx.adform.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: application/json
Content-Length: 633
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site
TE: trailers

                                         
                                         37.157.4.29
HTTP/2 204 No Content
                                        
server: nginx
date: Tue, 04 Oct 2022 15:24:33 GMT
access-control-allow-credentials: true
access-control-allow-headers: Content-Type,Cache-Control,Accept-Encoding,X-Requested-With
access-control-allow-methods: POST,OPTIONS
access-control-allow-origin: https://fi.livingorganicnews.com
access-control-max-age: 86400
cache-control: no-cache, no-store, must-revalidate, no-transform
expires: -1
pragma: no-cache
p3p: CP="NOI DSP COR NID CURa ADMa DEVa TAIa PSAa PSDa OUR LEG NAV INT"
strict-transport-security: max-age=31536000; includeSubDomains
X-Firefox-Spdy: h2

                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 5843
Cache-Control: 'max-age=158059'
Date: Tue, 04 Oct 2022 15:24:33 GMT
Last-Modified: Tue, 04 Oct 2022 13:47:10 GMT
Server: ECS (ska/F711)
X-Cache: HIT
Content-Length: 471

                                        
                                            POST /bidder/prebid/bids HTTP/1.1 
Host: prebid-eu.creativecdn.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Content-Length: 576
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         185.184.8.90
HTTP/2 204 No Content
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
access-control-allow-origin: https://fi.livingorganicnews.com
access-control-allow-credentials: true
access-control-allow-methods: POST
access-control-max-age: 3600
vary: Origin
X-Firefox-Spdy: h2

                                        
                                            POST /ut/v3/prebid HTTP/1.1 
Host: ib.adnxs.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Content-Length: 751
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         37.252.173.22
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
                                        
Server: nginx/1.21.3
Date: Tue, 04 Oct 2022 15:24:33 GMT
Content-Length: 140
Connection: keep-alive
Cache-Control: no-store, no-cache, private
Pragma: no-cache
Expires: Sat, 15 Nov 2008 16:00:00 GMT
P3P: policyref="http://cdn.adnxs-simple.com/w3c/policy/p3p.xml", CP="NOI DSP COR ADM PSAo PSDo OURo SAMo UNRo OTRo BUS COM NAV DEM STA PRE"
X-XSS-Protection: 0
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: https://fi.livingorganicnews.com
AN-X-Request-Uuid: df85bbdd-a3d9-477c-bc47-41c57b220410
X-Proxy-Origin: 91.90.42.154; 91.90.42.154; 536.bm-nginx-loadbalancer.mgmt.fra1.adnexus.net; adnxs.com


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with no line terminators
Size:   140
Md5:    8ed6870abffafa447b5d07d710aff498
Sha1:   39fa5e2ecc57277906ddd6e092b9bf19d386549d
Sha256: e8489157c0dd8d898fa265a348de200ff4d73fb84c504084bd5f68660264910c
                                        
                                            POST /ut/v3/prebid HTTP/1.1 
Host: ib.adnxs.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Content-Length: 803
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         37.252.173.22
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
                                        
Server: nginx/1.21.3
Date: Tue, 04 Oct 2022 15:24:33 GMT
Content-Length: 140
Connection: keep-alive
Cache-Control: no-store, no-cache, private
Pragma: no-cache
Expires: Sat, 15 Nov 2008 16:00:00 GMT
P3P: policyref="http://cdn.adnxs-simple.com/w3c/policy/p3p.xml", CP="NOI DSP COR ADM PSAo PSDo OURo SAMo UNRo OTRo BUS COM NAV DEM STA PRE"
X-XSS-Protection: 0
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: https://fi.livingorganicnews.com
AN-X-Request-Uuid: 35d1b7c8-5bbe-47e2-baf5-5920a1857b16
X-Proxy-Origin: 91.90.42.154; 91.90.42.154; 536.bm-nginx-loadbalancer.mgmt.fra1.adnexus.net; adnxs.com


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with no line terminators
Size:   140
Md5:    901b320cb1e676f9bdf914d32b52b478
Sha1:   64bada01dc2427776591313136f3a43ed16acb8d
Sha256: 9ba66300bea3be2a93050c8580b0541c8ea864abc6028065ba6f8d754f86a427
                                        
                                            POST /adx/openrtb HTTP/1.1 
Host: adx.adform.net
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: application/json
Content-Length: 598
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site
TE: trailers

                                         
                                         37.157.4.29
HTTP/2 204 No Content
                                        
server: nginx
date: Tue, 04 Oct 2022 15:24:33 GMT
access-control-allow-credentials: true
access-control-allow-headers: Content-Type,Cache-Control,Accept-Encoding,X-Requested-With
access-control-allow-methods: POST,OPTIONS
access-control-allow-origin: https://fi.livingorganicnews.com
access-control-max-age: 86400
cache-control: no-cache, no-store, must-revalidate, no-transform
expires: -1
pragma: no-cache
p3p: CP="NOI DSP COR NID CURa ADMa DEVa TAIa PSAa PSDa OUR LEG NAV INT"
strict-transport-security: max-age=31536000; includeSubDomains
X-Firefox-Spdy: h2

                                        
                                            GET /img/news/97/que-faire-lorsquon-ne-saimepas-assez.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 42124
last-modified: Mon, 30 Mar 2020 08:07:49 GMT
etag: "a48c-5a20df270fc00"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:33 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=nmjF0WQ2Lr%2FchNynKJmzxY6IhDh7qDS7Rjds8x7uBdI9FPiWYNnLvisF7cP2k2%2FFjLBXDPGNxhuVUh%2FVU8MigX56pD86I%2FzBGtYzByRw1UMjHRQfA2fKL7fy39EcmjgDblhYyUYJyQaS9Q%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce6a8eb518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:14 14:55:24], progressive, precision 8, 526x256, components 3\012- data
Size:   42124
Md5:    8bf613b9621815d9f320e9dd83b2eabf
Sha1:   cc7446add3cae1f66a980e9549b2c27857a9ab6a
Sha256: da2e84d054ae0a534f98256fae119e20e7d283b5be81a55676e3802158aaf583
                                        
                                            POST /bidder/prebid/bids HTTP/1.1 
Host: prebid-eu.creativecdn.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Content-Length: 576
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         185.184.8.90
HTTP/2 204 No Content
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
access-control-allow-origin: https://fi.livingorganicnews.com
access-control-allow-credentials: true
access-control-allow-methods: POST
access-control-max-age: 3600
vary: Origin
X-Firefox-Spdy: h2

                                        
                                            GET /npc/sdk/wp-banners.js HTTP/1.1 
Host: js.wpadmngr.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

                                         
                                         45.133.44.24
HTTP/2 200 OK
content-type: application/javascript; charset=utf-8
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 0
server: nginx/1.18.0
last-modified: Fri, 20 Aug 2021 15:14:31 GMT
etag: "611fc6d7-0"
expires: Tue, 04 Oct 2022 15:29:33 GMT
cache-control: max-age=300
x-proxy-cache: HIT
access-control-allow-origin: *
accept-ranges: bytes
X-Firefox-Spdy: h2

                                        
                                            GET /static/adManager.m.js HTTP/1.1 
Host: js.wpadmngr.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         45.133.44.24
HTTP/2 200 OK
content-type: application/javascript; charset=utf-8
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
server: nginx/1.18.0
last-modified: Fri, 30 Sep 2022 10:01:06 GMT
etag: W/"6336be62-15b3d"
content-encoding: gzip
expires: Tue, 04 Oct 2022 15:29:33 GMT
cache-control: max-age=300
x-proxy-cache: HIT
access-control-allow-origin: *
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  data
Size:   32071
Md5:    bacb3758ec245fc990d363f7392622db
Sha1:   8375bed2935d246ac1f8df914667d1d38e199df0
Sha256: 5bb33a6b21785fb8e855cdee5afa1bb0408d3a6dbdb453ae6c4bd76c0d208ae7
                                        
                                            POST /bidder/prebid/bids HTTP/1.1 
Host: prebid-eu.creativecdn.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Content-Length: 608
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         185.184.8.90
HTTP/2 204 No Content
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
access-control-allow-origin: https://fi.livingorganicnews.com
access-control-allow-credentials: true
access-control-allow-methods: POST
access-control-max-age: 3600
vary: Origin
X-Firefox-Spdy: h2

                                        
                                            POST /ut/v3/prebid HTTP/1.1 
Host: ib.adnxs.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: text/plain
Content-Length: 751
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         37.252.173.22
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
                                        
Server: nginx/1.21.3
Date: Tue, 04 Oct 2022 15:24:33 GMT
Content-Length: 139
Connection: keep-alive
Cache-Control: no-store, no-cache, private
Pragma: no-cache
Expires: Sat, 15 Nov 2008 16:00:00 GMT
P3P: policyref="http://cdn.adnxs-simple.com/w3c/policy/p3p.xml", CP="NOI DSP COR ADM PSAo PSDo OURo SAMo UNRo OTRo BUS COM NAV DEM STA PRE"
X-XSS-Protection: 0
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: https://fi.livingorganicnews.com
AN-X-Request-Uuid: af034a84-9b41-4278-a1dc-c9a3991897fc
X-Proxy-Origin: 91.90.42.154; 91.90.42.154; 536.bm-nginx-loadbalancer.mgmt.fra1.adnexus.net; adnxs.com


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with no line terminators
Size:   139
Md5:    60bb02c682b85983088cb8bf74579ac1
Sha1:   64db9912b843fda3e5f1b45ce7e74480170f058e
Sha256: 112b97e5a26f016ba00d3cdc20550b3c30eb5d0389f910c6354c1956474a0abf
                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

                                         
                                         23.36.77.32
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "406A06C4537F2C8A8979B6239BBD386D734D5D205C5AD30293BF9518918D2491"
Last-Modified: Sun, 02 Oct 2022 21:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=7820
Expires: Tue, 04 Oct 2022 17:34:53 GMT
Date: Tue, 04 Oct 2022 15:24:33 GMT
Connection: keep-alive

                                        
                                            GET /img/politics-society/50/how-westminster-raised-stakes-scottish-devolution-with-brexit-bill.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 21674
last-modified: Mon, 30 Mar 2020 08:09:50 GMT
etag: "54aa-5a20df9a7e5f8"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:33 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=46hCloNtD%2FM7Nbskn0%2F2PtfHi3uFBLjkbJEgv0H0Rwk8vhyMc2L%2BgUmqNSgWL1QaCySusfNdf%2FU9u5xavHLaT1321xuY4sUGWPo2UbNM3o%2BtroAM6yWqav6nMdU0FBLBPO5c7p%2F3sucpcw%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce6a92b518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:14 15:11:13], progressive, precision 8, 526x256, components 3\012- data
Size:   21674
Md5:    dcb1a0f50109e42bf2f6d93a59cb14d6
Sha1:   7a6c054bfc466244ccbd28475e8039d21eda2347
Sha256: b4ae2da2e318823066b460415984451236435b87429f8fe16ec6358942b217fa
                                        
                                            GET /tags/1349?version_name=c HTTP/1.1 
Host: na.nawpush.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: https://fi.livingorganicnews.com
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

                                         
                                         45.133.44.24
HTTP/2 200 OK
content-type: application/json
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 664
server: nginx/1.18.0
cache-control: max-age=300, public
x-proxy-cache: EXPIRED
access-control-allow-origin: *
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with very long lines (664), with no line terminators
Size:   664
Md5:    c3c58ac26676dabbf2f2e6b3454b1c8a
Sha1:   2b237261a1c6df6580d6a27b69ab964f35b1e45a
Sha256: 62b6443bd16aa6f557a10fe471dacc0aa1e45e9c35c83deeb9a35152be991895
                                        
                                            GET /img/education/20/dc-graduation-scandal-shows-how-chronic-absenteeism-threatens-americas-schools.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 21021
last-modified: Mon, 30 Mar 2020 07:58:06 GMT
etag: "521d-5a20dcfb81c38"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:33 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=9bbplgGas013ciM1F%2FjzIIl722E3e2lDtxll6QlUsuvckd0jyTZf1c6C4ACmxoSxY6kPE5yPuCTLt2kD7fph2ffNPYkEkcrwF%2Bhtvr6PxdUPNynOQdRhmWONisqZxap9favW88ixjLPfgg%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce6a8cb518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:14 15:10:52], progressive, precision 8, 526x256, components 3\012- data
Size:   21021
Md5:    54a4c24fd5afa54d531967de2956d8a6
Sha1:   0265ec1f3f2493b09ef17776594da4dfc8425478
Sha256: 397dc72380a060d926aef5f6afbf3432ea50a5995a09bbb1076a2f94bee2ef08
                                        
                                            GET /img/cities/32/some-suburbs-are-being-short-changed-services.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 50273
last-modified: Mon, 30 Mar 2020 07:57:50 GMT
etag: "c461-5a20dceb830bf"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:33 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=h6H38WQOUwJ46%2FjtE9gsUdQGhw%2B%2BZx1ScI2PmTh0B0FxKJvKq9ISOc10Hzoh%2FSJI4acy%2BBQPvsqqJJ%2F8VRxtO30Av3q9Bz6oji0zYjFxqcBzs8yYj8AFN94WO5nJTSOAeLdndevhQHouHg%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce7a99b518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:14 14:40:39], progressive, precision 8, 526x256, components 3\012- data
Size:   50273
Md5:    d7dc06f05bd7581057bd996150ca2c74
Sha1:   08253390dbc089f8e2df6c51a37adb00f7f3558b
Sha256: 3ffe34950be9ad08f2c8a1406960feb569304961761b3326b0c5d8783b4101d0
                                        
                                            GET /img/environment-energy/31/fracking-will-be-tried-court-public-opinion-2015.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 37032
last-modified: Mon, 30 Mar 2020 08:00:05 GMT
etag: "90a8-5a20dd6ca9787"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:33 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=djpizsTacZ9lGmsHDvv2Cg7vtTQQfb3Ca9ewc9Iatqk2Vob5yUMFUDNhHLM72Rk8PQAaJTVPi5Wq8lgnMNU4TSlfDoe4KecYHPflbA3%2FqZ7f04C2Kq2o6Z0w3w4UzTNZfN4R92N63XdWgA%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce7a9cb518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:14 14:58:09], progressive, precision 8, 526x256, components 3\012- data
Size:   37032
Md5:    0270b98dadcaf76a887d42522a739906
Sha1:   97d3a30a274f9a6411449e4978b8361860bc5efc
Sha256: 004b823e8d9686611ef8c9540dd30541f7feadd982a918c033bc3f253c8d1d8f
                                        
                                            GET /img/news/16/lcole-franaise-championne-des-ingalits-sociales.jpg HTTP/1.1 
Host: i.livingorganicnews.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-site
TE: trailers

                                         
                                         172.67.158.5
HTTP/2 200 OK
content-type: image/jpeg
                                        
date: Tue, 04 Oct 2022 15:24:33 GMT
content-length: 34050
last-modified: Mon, 30 Mar 2020 08:05:39 GMT
etag: "8502-5a20deab5040f"
cache-control: max-age=31536000
expires: Wed, 04 Oct 2023 15:24:33 GMT
access-control-allow-origin: *
cf-cache-status: MISS
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=PsaUO7uKGAXqL%2Fjew4DP4dFnHx9rdzGsCw0jU51jq64wn9PjIz4MReiWcI9HHRo6I5zja99HhWmoQYv%2B%2B2%2BDb8kWbOLujNri%2Fnh8iDoHQTfCr0EoKdlZy5p4zdSFNLWGGGe37gsdNd28Wg%3D%3D"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 754eecce7aa2b518-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=2, datetime=2019:05:14 15:02:52], progressive, precision 8, 526x256, components 3\012- data
Size:   34050
Md5:    8c13b5fced00aca5990364babc1226b7
Sha1:   6d6ef856bbd1393774ad20ffbc35fdddbc21cf0f
Sha256: cfceb9c47d919b2cb26d137092dac9c1d9a93e5da35f788e1247dd7dd442e189
                                        
                                            GET /css?family=Roboto:300,700,900 HTTP/1.1 
Host: fonts.googleapis.com
                                        
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://fi.livingorganicnews.com/
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

                                         
                                         142.250.74.10
HTTP/2 200 OK
content-type: text/css; charset=utf-8
                                        
access-control-allow-origin: *
timing-allow-origin: *
link: <https://fonts.gstatic.com>; rel=preconnect; crossorigin