Telegram Web K with changes to work inside I2P https://web.telegram.i2p/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

4082 lines
117 KiB

// Copyright 2011 Google Inc.
//
// This code is licensed under the same terms as WebM:
// Software License Agreement: http://www.webmproject.org/license/software/
// Additional IP Rights Grant: http://www.webmproject.org/license/additional/
// -----------------------------------------------------------------------------
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
// IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// -----------------------------------------------------------------------------
//
// Copyright 2011-2013 Dominik Homberger
// Libwebp Javascript / libwebpjs - the libwebp implementation in javascript (v0.2.0)
//
// Author: Dominik Homberger (dominik.homberger@gmail.com)
let i;
let a;
let self;
const ca = 0;
const p = null;
const s = 0;
const x = 0;
const la = s;
const E = s;
const bb = 0;
const Mb = 0;
function M(F) {
return JSON.parse(JSON.stringify(F));
}
function N(F, G, w, D, S) {
for (i = 0; i < S; ++i) F[G + i] = w[D + i];
}
function Nb(F) {
const G = [];
const w = F.length;
let D;
for (D = 0; D < w; ++D) G.push(F[D]);
return G;
}
function ic(F, G) {
const w = [];
w.push(M(F));
let D;
for (D = 0; D < G; ++D) w.push(M(F));
w.push(0);
return w;
}
function rc(F, G) {
const w = [];
let D;
for (D = 0; D < G; ++D) w.push(F);
w.push(0);
return w;
}
function memmove(arr1, index1, arr2, index2, length) {
let i;
for (i = 0; i < length; i++) {
arr1[index1 + i] = arr2[index2 + i];
}
}
function jd(F, G, w, D) {
let S;
for (S = 0; S < D; ++S) F[G + S] = w;
}
function kd(F, G, w, D) {
let S = '';
let ga;
for (ga = 0; ga < D; ++ga) S += String.fromCharCode(F[G + ga]);
return w == S ? 0 : 1;
}
function U(F, G) {
let w; const
D = [];
for (w = 0; w < F; ++w) D.push(G);
return D;
}
function ld(F, G) {
let w; const
D = [];
for (w = 0; w < F; ++w) D.push(M(G));
return D;
}
function md(F, G) {
let w;
for (w = F.length - 1; w >= 0; --w) G = M(U(F[w], G));
return G;
}
function $(F) {
if (!F) throw Error('assert :P');
}
export const WebPDecoder = function () {
function F(a) {
return a == Ob || a == Pb || a == Bb || a == Qb;
}
function G(a) {
return S(a, 1);
}
function w(a, b) {
const c = 1 + ((a.la - 1) * b >> 8);
const d = c << 8;
let e = s;
a.Z >= d ? (e = 1, a.la -= c, a.Z -= d) : (e = 0, a.la = c);
for (; a.la < 128;) a.Z <<= 1, a.la <<= 1, ++a.gc == 8 && (a.gc = 0, a.bc && (a.Z += a.qa[a.Ia++], a.bc--));
return e;
}
function D(a, b, c, d) {
d -= c;
d >= 2 ? (a.Z = b[c + 0] << 8 | b[c + 1], a.qa = b, a.Ia = c + 2, a.bc = d - 2) : (a.Z = 0, a.qa = p, a.bc = 0);
a.la = 255;
a.gc = 0;
}
function S(a, b) {
for (var c = 0, d = s, d = b - 1; d >= 0; d--) c |= w(a, 128) << d;
return c;
}
function ga(a, b) {
const c = S(a, b);
return G(a) ? -c : c;
}
function Rb(a, b, c, d) {
let e = Mb;
$(a != p);
$(b != p);
$(d < 4294967288);
a.qa = b;
a.Ia = c;
a.ya = d;
a.T = 0;
a.Q = 0;
a.g = 0;
a.L = 0;
for (e = a.fa = 0; e < 4 && e < a.ya; ++e) a.T |= a.qa[a.Ia + a.Q] << 8 * e, ++a.Q;
}
function Sb(a) {
for (; a.g >= 8 && a.Q < a.ya;) a.T >>>= 8, a.T += a.qa[a.Ia + a.Q] << 24 >>> 0, ++a.Q, a.g -= 8;
}
function Da(a) {
a.g >= 8 && Sb(a);
a.Q == a.ya && a.g == 32 && (a.L = 1);
}
function T(a, b) {
let c = 0;
$(b >= 0);
if (!a.L && b < gf) {
if (a.Q == a.ya && a.g + b >= 32 && (a.L = 1, a.g + b > 32)) return c;
c = a.T >> a.g & hf[b];
a.g += b;
a.g >= 8 && a.g >= 8 && Sb(a);
} else a.fa = 1;
return c;
}
function ma(a) {
return a.Pa == a.gb;
}
function nd(a, b) {
$(a != p);
if (b == 0) return 0;
a.gb = 2 * b - 1;
a.Y = ld(a.gb, jf);
if (a.Y == p) return 0;
a.Y[0].s = -1;
return a.Pa = 1;
}
function ja(a) {
a != p && (a.Y = p, a.Y = p, a.gb = 0, a.Pa = 0);
}
function jc(a, b, c, d) {
for (var e = a.Y, g = 0, k = +a.gb; d-- > 0;) {
if (g >= k) return 0;
if (e[g].s < 0) {
if (ma(a)) return 0;
const h = a;
const n = h.Y;
const l = +h.Pa;
e[g].s = l - g;
h.Pa += 2;
n[l + 0].s = -1;
n[l + 1].s = -1;
} else if (e[g].s == 0) return 0;
g += e[g].s + (c >> d & 1);
}
if (e[g].s < 0) e[g].s = 0;
else if (e[g].s != 0) return 0;
e[g].kc = b;
return 1;
}
function od(a, b, c) {
var d = s;
let e = 0;
let g = 0;
$(a != p);
$(b != p);
for (d = 0; d < c; ++d) b[d] > 0 && (++e, g = d);
if (!nd(a, e)) return 0;
if (e == 1) return g < 0 || g >= c ? (ja(a), 0) : jc(a, g, 0, 0);
e = 0;
g = U(c, s);
if (g == p) return (e = e && ma(a)) || ja(a), e;
var k = s;
var k = s;
var d = U(Tb + 1, 0);
let h = s;
const n = U(Tb + 1, 0);
let l = 0;
$(b != p);
$(c > 0);
$(g != p);
for (k = 0; k < c; ++k) b[k] > l && (l = b[k]);
if (l > Tb) d = 0;
else {
for (k = 0; k < c; ++k) ++d[b[k]];
h = d[0] = 0;
n[0] = -1;
for (k = 1; k <= l; ++k) h = h + d[k - 1] << 1, n[k] = h;
for (k = 0; k < c; ++k) g[k] = b[k] > 0 ? n[b[k]]++ : pd;
d = 1;
}
if (!d) return (e = e && ma(a)) || ja(a), e;
for (d = 0; d < c; ++d) {
if (b[d] > 0 && !jc(a, d, g[d], b[d])) {
return (e = e && ma(a)) || ja(a), e;
}
}
(e = ma(a)) || ja(a);
return e;
}
function Ea(a, b, c, d, e, g, k) {
for (var h = s, h = 0; h < k; ++h) e[g + h] = a[b + h] + c[d + h] & 255;
}
function qd(a, b, c) {
const d = a.P.l;
if (!(c = b < 0 || c < 0 || b + c > a.P.v)) {
if (c = b == 0) {
a: {
let e = a.Ga;
var g = a.G;
var k = a.ub;
c = a.P.l;
let h = a.P.v;
const n = a.Xb;
var l = [p];
let m = p;
let f = h * c;
var q = p;
var r = p;
var r = 'WEBP_FILTER_TYPE';
let u = s;
var l = s;
var v = 0;
let C = s;
$(c > 0 && h > 0 && d >= c);
$(e != p && n != p);
if (k <= Ub) c = 0;
else if (C = e[g + 0] >> 0 & 3, r = e[g + 0] >> 2 & 3, u = e[g + 0] >> 4 & 3, l = e[g + 0] >> 6 & 3, C < kc || C > kf || r >= lf || u > rd || l != 0) c = 0;
else {
if (C == kc) v = k >= f, l = e, m = g + Ub;
else {
l = U(f, 0);
m = 0;
if (l
== p) {
c = 0;
break a;
}
var v = g + Ub;
var k = k - Ub;
var g = l;
var q = M(Vb);
let A = 0;
const z = sd();
z == p ? v = 0 : (z.l = c, z.v = h, z.N = q, td(na), q.put = ud, q.Mb = vd, q.Pb = wd, q.ka = p, q.ka = g, q.fd = 0, q.width = c, q.height = h, z.a = L, Rb(z.o, e, v, k), z.Wa = Cb, Ka(c, h, 1, z, p) && xd(z, c) && (z.Wa = Db, A = lc(z, z.V, z.Ha, z.l, z.v, mf)), z != p && sa(z), v = A);
}
if (v) {
e = nf[r];
e != p ? (q = U(f, 0), r = 0, q == p && (v = 0, C != kc && (m = l = p)), e(l, m, c, h, 1, c, q, r), f = q, C = r) : (f = l, C = m);
for (e = 0; h-- > 0;) N(n, e, f, C, c), C += c, e += d;
u == rd && (v = l == p || m <= 0 || c <= 0 ? 0 : 1);
}
c = v;
}
}
c = !c;
}
}
return c ? p : b == 0 ? a.Xb : +b * d;
}
function of(a) {
let b = a.width;
const c = a.height;
let d = a.J;
if (b <= 0 || c <= 0 || !(d >= Qa && d < Cc)) return ta;
if (!a.Fc && a.Jb == p) {
var e = p;
var g = 0;
var k = 0;
var h = 0;
var n = 0;
var e = bb;
var l = b * yd[d];
var m = l * c;
d < ua || (g = parseInt((b + 1) / 2, 10), h = g * parseInt((c + 1) / 2, 10), d == Ra && (k = b, n = k * c));
e = m + 2 * h + n;
if (e != e) return ta;
e = U(e, 205);
if (e == p) return cb;
a.Jb = e;
a.jc = p;
d < ua ? (b = a.c.RGBA, b.ma = e, b.Sa = p, b.f = l, b.size = m) : (b = a.c.Va, b.y = e, b.D = p, b.F = l, b.Wc = m, b.c = e, b.B = p + m, b.nb = g, b.Rc = h, b.S = e, b.C = p + m + h, b.rb = g, b.Uc = h, d == Ra && (b.p = e, b.q = p + m + 2 * h), b.Wb = n, b.Fa = k);
}
d = 1;
g = a.J;
k = a.width;
h = a.height;
g >= Qa && g < Cc ? g < ua ? (a = a.c.RGBA, d
&= a.f * h <= a.size, d &= a.f >= k * yd[g], d &= a.ma != p) : (a = a.c.Va, n = a.nb * parseInt((h + 1) / 2, 10), l = a.rb * parseInt((h + 1) / 2, 10), m = a.Fa * h, d &= a.F * h <= a.Wc, d &= n <= a.Rc, d &= l <= a.Uc, d &= m <= a.Wb, d &= a.F >= k, d &= a.nb >= parseInt((k + 1) / 2, 10), d &= a.rb >= parseInt((k + 1) / 2, 10), d &= a.y != p, d &= a.c != p, d &= a.S != p, g == Ra && (d &= a.Fa >= k, d &= m <= a.Wb, d &= a.p != p)) : d = 0;
return d ? L : ta;
}
function zd(a, b, c, d) {
if (d == p || a <= 0 || b <= 0) return ta;
if (c != p) {
if (c.Ua) {
const e = c.wc;
const g = c.vc;
const k = c.t & -2;
const h = c.k & -2;
if (k < 0 || h < 0 || e <= 0 || g <= 0 || k + e > a || h + g > b) return ta;
a = e;
b = g;
}
if (c.I) {
if (c.Ba <= 0
|| c.Aa <= 0) return ta;
a = c.Ba;
b = c.Aa;
}
}
d.width = a;
d.height = b;
return of(d);
}
function mb(a) {
return !(a & -256) ? a : a < 0 ? 0 : 255;
}
function Ad(a, b, c, d) {
const e = U(16, 0);
let g;
g = 0;
let k;
for (k = 0; k < 4; ++k) {
var h = a[b + 0] + a[b + 8];
var n = a[b + 0] - a[b + 8];
var l = (a[b + 4] * Wb >> 16) - (a[b + 12] * Xb >> 16);
var m = (a[b + 4] * Xb >> 16) + (a[b + 12] * Wb >> 16);
e[g + 0] = h + m;
e[g + 1] = n + l;
e[g + 2] = n - l;
e[g + 3] = h - m;
g += 4;
b++;
}
for (k = g = 0; k < 4; ++k) {
a = e[g + 0] + 4, h = a + e[g + 8], n = a - e[g + 8], l = (e[g + 4] * Wb >> 16) - (e[g + 12] * Xb >> 16), m = (e[g + 4] * Xb >> 16) + (e[g + 12] * Wb >> 16), c[d + 0 + 0 * f] = mb(c[d + 0 + 0 * f] + (h + m >> 3)), c[d + 1 + 0 * f] = mb(c[d
+ 1 + 0 * f] + (n + l >> 3)), c[d + 2 + 0 * f] = mb(c[d + 2 + 0 * f] + (n - l >> 3)), c[d + 3 + 0 * f] = mb(c[d + 3 + 0 * f] + (h - m >> 3)), g++, d += f;
}
}
function pf(a, b, c, d, e) {
Ad(a, b, c, d);
e && Ad(a, b + 16, c, d + 4);
}
function qf(a, b, c, d) {
mc(a, b + 0, c, d + 0, 1);
mc(a, b + 32, c, d + 4 * f, 1);
}
function nc(a, b, c, d) {
a = a[b + 0] + 4;
let e;
for (e = 0; e < 4; ++e) for (b = 0; b < 4; ++b) c[d + b + e * f] = mb(c[d + b + e * f] + (a >> 3));
}
function rf(a, b, c, d) {
a[b + 0] && nc(a, b + 0, c, d + 0);
a[b + 16] && nc(a, b + 16, c, d + 4);
a[b + 32] && nc(a, b + 32, c, d + 4 * f);
a[b + 48] && nc(a, b + 48, c, d + 4 * f + 4);
}
function Dc(a, b, c) {
const d = b - f;
const e = oa;
const g = 255 - a[d - 1];
let k;
for (k = 0; k
< c; ++k) {
const h = e;
const n = g + a[b - 1];
var l;
for (l = 0; l < c; ++l) a[b + l] = h[n + a[d + l]];
b += f;
}
}
function Yb(a, b, c) {
let d;
for (d = 0; d < 16; ++d) for (i = 0; i < 16; ++i) b[c + d * f + i] = a;
}
function y(a, b, c) {
return a + 2 * b + c + 2 >> 2;
}
function Zb(a, b, c) {
let d; let
e;
for (d = 0; d < 8; ++d) for (e = 0; e < 8; ++e) b[c + e + d * f] = a;
}
function nb(a, b, c) {
const d = a[b - c];
const e = a[b + 0];
const g = 3 * (e - d) + sc[1020 + a[b - 2 * c] - a[b + c]];
const k = oc[112 + (g + 4 >> 3)];
a[b - c] = oa[255 + d + oc[112 + (g + 3 >> 3)]];
a[b + 0] = oa[255 + e - k];
}
function Bd(a, b, c, d) {
const e = a[b + 0];
const g = a[b + c];
return va[255 + a[b - 2 * c] - a[b - c]] > d || va[255 + g - e] > d;
}
function Cd(a,
b, c, d, e) {
const g = a[b - 3 * c];
const k = a[b - 2 * c];
const h = a[b - c];
const n = a[b + 0];
const l = a[b + c];
const m = a[b + 2 * c];
const f = a[b + 3 * c];
return 2 * va[255 + h - n] + tc[255 + k - l] > d ? 0 : va[255 + a[b - 4 * c] - g] <= e && va[255 + g - k] <= e && va[255 + k - h] <= e && va[255 + f - m] <= e && va[255 + m - l] <= e && va[255 + l - n] <= e;
}
function Dd(a, b, c, d) {
let e;
for (e = 0; e < 16; ++e) 2 * va[255 + a[b + e - c] - a[b + e + 0]] + tc[255 + a[b + e - 2 * c] - a[b + e + c]] <= d && nb(a, b + e, c);
}
function Ed(a, b, c, d) {
let e;
for (e = 0; e < 16; ++e) 2 * va[255 + a[b + e * c - 1] - a[b + e * c + 0]] + tc[255 + a[b + e * c - 2] - a[b + e * c + 1]] <= d && nb(a, b + e * c, 1);
}
function sf(a, b, c, d) {
let e;
for (e = 3; e > 0; --e) {
b
+= 4 * c, Dd(a, b + 0, c, d);
}
}
function tf(a, b, c, d) {
let e;
for (e = 3; e > 0; --e) b += 4, Ed(a, b + 0, c, d);
}
function Fa(a, b, c, d, e, g, k, h) {
for (; e-- > 0;) {
if (Cd(a, b + 0, c, g, k)) {
if (Bd(a, b + 0, c, h)) nb(a, b + 0, c);
else {
const n = a;
const l = b + 0;
const m = c;
const f = n[l - 2 * m];
const q = n[l - m];
const r = n[l + 0];
const u = n[l + m];
const v = n[l + 2 * m];
var C = sc[1020 + 3 * (r - q) + sc[1020 + f - u]];
const A = 27 * C + 63 >> 7;
const z = 18 * C + 63 >> 7;
var C = 9 * C + 63 >> 7;
n[l - 3 * m] = oa[255 + n[l - 3 * m] + C];
n[l - 2 * m] = oa[255 + f + z];
n[l - m] = oa[255 + q + A];
n[l + 0] = oa[255 + r - A];
n[l + m] = oa[255 + u - z];
n[l + 2 * m] = oa[255 + v - C];
}
}
b += d;
}
}
function Ga(a, b, c, d, e, g, k, h) {
for (; e-- > 0;) {
if (Cd(a, b + 0, c,
g, k)) {
if (Bd(a, b + 0, c, h)) nb(a, b + 0, c);
else {
const n = a;
const l = b + 0;
const m = c;
const f = n[l - m];
const q = n[l + 0];
const r = n[l + m];
var u = 3 * (q - f);
const v = oc[112 + (u + 4 >> 3)];
var u = oc[112 + (u + 3 >> 3)];
const C = v + 1 >> 1;
n[l - 2 * m] = oa[255 + n[l - 2 * m] + C];
n[l - m] = oa[255 + f + u];
n[l + 0] = oa[255 + q - v];
n[l + m] = oa[255 + r - C];
}
}
b += d;
}
}
function uf(a, b, c, d, e, g) {
Fa(a, b + 0, c, 1, 16, d, e, g);
}
function vf(a, b, c, d, e, g) {
Fa(a, b + 0, 1, c, 16, d, e, g);
}
function wf(a, b, c, d, e, g) {
let k;
for (k = 3; k > 0; --k) b += 4 * c, Ga(a, b + 0, c, 1, 16, d, e, g);
}
function xf(a, b, c, d, e, g) {
let k;
for (k = 3; k > 0; --k) b += 4, Ga(a, b + 0, 1, c, 16, d, e, g);
}
function yf(a, b, c, d, e,
g, k, h) {
Fa(a, b, e, 1, 8, g, k, h);
Fa(c, d, e, 1, 8, g, k, h);
}
function zf(a, b, c, d, e, g, k, h) {
Fa(a, b, 1, e, 8, g, k, h);
Fa(c, d, 1, e, 8, g, k, h);
}
function Af(a, b, c, d, e, g, k, h) {
Ga(a, b + 4 * e, e, 1, 8, g, k, h);
Ga(c, d + 4 * e, e, 1, 8, g, k, h);
}
function Bf(a, b, c, d, e, g, k, h) {
Ga(a, b + 4, 1, e, 8, g, k, h);
Ga(c, d + 4, 1, e, 8, g, k, h);
}
function Fd(a, b) {
return b == $b ? a.i == 0 ? a.d == 0 ? Cf : Df : a.d == 0 ? Ef : $b : b;
}
function Ec(a, b, c, d) {
for (i = 0; i < 4; ++i) a[b + i] = c[d + i];
}
function wa(a, b) {
return a < 0 ? 0 : a > b ? b : a;
}
function Gd(a) {
a.a = 'VP8_STATUS_OK';
a.xc = 'OK';
}
function td(a) {
a >>> 8 != na >>> 8 && alert('mismatch error');
}
function Y(a, b, c) {
a.a == L && (a.a = b, a.xc = c, a.za = 0);
// alert(b + ": " + c);
return 0;
}
function Hd(a, b) {
let c = [0];
let d = x;
var e = [Mb];
var g = M(Id);
var k = M(Jd);
let h = M(Fc);
var e = 'VP8StatusCode';
var g = M(Gc);
if (a == p) return alert('(dec == null)'), 0;
Gd(a);
if (b == p) return Y(a, 'VP8_STATUS_INVALID_PARAM', 'null VP8Io passed to VP8GetHeaders()');
g.data = b.data;
g.b = b.b;
g.e = b.e;
g.b = [g.b];
g.e = [g.e];
g = [g];
e = Kd(g);
if (e != L) return Y(a, e, 'Incorrect/incomplete header.');
g = g[0];
g.b = g.b[0];
g.e = g.e[0];
if (g.ia) return Y(a, W, 'Unexpected lossless format encountered.');
a.Ga == p && ($(a.ub == 0), a.Ga = g.$, a.G = g.G, a.ub = g.pa);
d = g.data;
c = g.b + g.offset;
e = g.e - g.offset;
$(g.e >= g.offset);
if (e[0] < 4) return Y(a, Z, 'Truncated header.');
h = d[c + 0] | d[c + 1] << 8 | d[c + 2] << 16;
g = a.Ac;
g.fb = !(h & 1) + 0;
g.Jc = h >> 1 & 7;
g.Nc = h >> 4 & 1;
g.Ra = h >> 5;
if (g.Jc > 3) return Y(a, 'VP8_STATUS_BITSTREAM_ERROR', 'Incorrect keyframe parameters.');
if (!g.Nc) return Y(a, 'VP8_STATUS_UNSUPPORTED_FEATURE', 'Frame not displayable.');
c += 3;
e -= 3;
k = a.P;
if (g.fb) {
if (e < 7) return Y(a, 'VP8_STATUS_NOT_ENOUGH_DATA', 'cannot parse picture header');
if (!(e
>= 3 && d[c + 0] == 157 && d[c + 1] == 1 && d[c + 2] == 42)) return Y(a, 'VP8_STATUS_BITSTREAM_ERROR', 'Bad code word');
k.l = (d[c + 4] << 8 | d[c + 3]) & 16383;
k.gd = d[c + 4] >> 6;
k.v = (d[c + 6] << 8 | d[c + 5]) & 16383;
k.hd = d[c + 6] >> 6;
c += 7;
e -= 7;
a.Ma = k.l + 15 >> 4;
a.hb = k.v + 15 >> 4;
b.width = k.l;
b.height = k.v;
b.I = 0;
b.Ua = 0;
b.k = 0;
b.t = 0;
b.Ka = b.width;
b.K = b.height;
b.m = b.width;
b.h = b.height;
h = a.R;
for (i = 0; i < h.Ta.length; ++i) h.Ta[i] = 255;
h.z = M(Ff);
h = a.Ca;
$(h != p);
h.pb = 0;
h.ob = 0;
h.tb = 1;
for (i = 0; i < h.Kb.length; ++i) h.Kb[i] = 0;
for (i = 0; i < h.Cb.length; ++i) h.Cb[i] = 0;
a.Lb = 0;
}
if (g.Ra
> e) return Y(a, 'VP8_STATUS_NOT_ENOUGH_DATA', 'bad partition length');
h = a.o;
D(h, d, c, c + g.Ra);
c += g.Ra;
e -= g.Ra;
g.fb && (k.uc = G(h), k.$c = G(h));
var k = h;
var n = a.Ca;
let l = a.R;
$(k != p);
$(n != p);
n.pb = G(k);
if (n.pb) {
n.ob = G(k);
if (G(k)) {
var m;
n.tb = G(k);
for (m = 0; m < xa; ++m) n.Kb[m] = G(k) ? ga(k, 7) : 0;
for (m = 0; m < xa; ++m) n.Cb[m] = G(k) ? ga(k, 6) : 0;
}
if (n.ob) for (m = 0; m < Ld; ++m) l.Ta[m] = G(k) ? S(k, 8) : 255;
} else n.ob = 0;
if (k.Ab) return Y(a, 'VP8_STATUS_BITSTREAM_ERROR', 'cannot parse segment header');
k = h;
n = a.ga;
n.Oc = G(k);
n.Fb = S(k, 6);
n.kb = S(k, 3);
n.oc = G(k);
if (n.oc
&& G(k)) {
for (l = 0; l < Hc; ++l) G(k) && (n.Lc[l] = ga(k, 6));
for (l = 0; l < Gf; ++l) G(k) && (n.Gc[l] = ga(k, 6));
}
a.A = n.Fb == 0 ? 0 : n.Oc ? 1 : 2;
if (a.A > 0) {
if (a.Ca.pb) for (l = 0; l < xa; ++l) m = a.Ca.Cb[l], a.Ca.tb || (m += n.Fb), a.Zb[l] = m;
else a.Zb[0] = n.Fb;
}
if (k.Ab) return Y(a, 'VP8_STATUS_BITSTREAM_ERROR', 'cannot parse filter header');
var k = d;
var f = c;
var n = f;
var e = f + e;
m = 0;
let q = s;
let r = s;
a.Hb = 1 << S(a.o, 2);
q = a.Hb - 1;
l = k;
m = f + 3 * q;
if (e < m) e = 'VP8_STATUS_NOT_ENOUGH_DATA';
else {
for (r = 0; r < q; ++r) {
var f = l;
var u = m + (k[n + 0] | k[n + 1] << 8 | k[n + 2] << 16);
u > e && (f = k);
D(a.ic[+r], l, m, u);
l = f;
m = u;
n += 3;
}
D(a.ic[+q], l, m, e);
e = m < e ? 'VP8_STATUS_OK' : 'VP8_STATUS_SUSPENDED';
}
if (e != 'VP8_STATUS_OK') return Y(a, 'VP8_STATUS_BITSTREAM_ERROR', 'cannot parse partitions');
q = a.o;
e = S(q, 7);
k = G(q) ? ga(q, 4) : 0;
n = G(q) ? ga(q, 4) : 0;
l = G(q) ? ga(q, 4) : 0;
m = G(q) ? ga(q, 4) : 0;
q = G(q) ? ga(q, 4) : 0;
r = a.Ca;
f = s;
for (f = 0; f < xa; ++f) {
u = s;
if (r.pb) u = r.Kb[f], r.tb || (u += e);
else if (f > 0) {
a.yb[f] = a.yb[0];
continue;
} else u = e;
const v = a.yb[f];
v.sc[0] = Ic[wa(u + k, 127)];
v.sc[1] = Jc[wa(u + 0, 127)];
v.sb[0] = 2 * Ic[wa(u + n, 127)];
v.sb[1] = 101581 * Jc[wa(u + l, 127)] >> 16;
v.sb[1] < 8
&& (v.sb[1] = 8);
v.qc[0] = Ic[wa(u + m, 117)];
v.qc[1] = Jc[wa(u + q, 127)];
}
if (g.fb) a.Zc = 259;
else return Y(a, Hf, 'Not a key frame.');
G(h);
e = a.R;
for (k = 0; k < Md; ++k) for (n = 0; n < Nd; ++n) for (l = 0; l < Kc; ++l) for (m = 0; m < Lc; ++m) w(h, If[k][n][l][m]) && (e.z[k][n][l][m] = S(h, 8));
a.pc = G(h);
a.pc && (a.Pc = S(h, 8));
if (a.P.uc) {
c -= 8;
h = Mb;
if (g.Ra < 8 || d[c + 8 - 1] != 1) return Y(a, W, 'RIFF: Inconsistent extra information.');
h = d[c + 0] << 0 | d[c + 1] << 8 | d[c + 2] << 16;
a.fc = h;
a.dd = p;
a.cd = d[c + 3];
}
return a.za = 1;
}
function Mc(a, b, c, d, e, g) {
let k = b[e][c];
if (!w(a, k[0])) return 0;
for (;;) {
++e;
if (w(a, k[1])) {
var h;
if (w(a, k[2])) {
if (w(a, k[3])) {
if (w(a, k[6])) {
h = x;
c = w(a, k[8]);
k = w(a, k[9 + c]);
k = 2 * c + k;
c = 0;
h = Jf[k];
var n;
for (n = 0; n < h.length - 1; ++n) c += c + w(a, h[n]);
c += 3 + (8 << k);
} else w(a, k[7]) ? (c = 7 + 2 * w(a, 165), c += w(a, 145)) : c = 5 + w(a, 159);
} else c = w(a, k[4]) ? 3 + w(a, k[5]) : 2;
k = b[Nc[e]][2];
} else k = b[Nc[e]][1], c = 1;
h = Kf[e - 1];
g[g[g.length - 1] + h] = (w(a, 128) ? -c : c) * d[(h > 0) + 0];
if (e == 16 || !w(a, k[0])) return e;
} else k = b[Nc[e]][0];
if (e == 16) return 16;
}
}
function ob(a, b) {
return ((16777216 * a[0] + 65536 * a[1] + 256 * a[2] + 1 * a[3]) * Lf
& 4278190080) >> b;
}
function Mf(a, b) {
let c = 0;
if (a == p) return 0;
if (b == p) return Y(a, 'VP8_STATUS_INVALID_PARAM', 'NULL VP8Io parameter in VP8Decode().');
if (!a.za && !Hd(a, b)) return 0;
$(a.za);
let d;
if (b.Mb && !b.Mb(b)) Y(a, Nf, 'Frame setup failed'), d = a.a;
else {
b.Za && (a.A = 0);
const e = uc[a.A];
a.A == 2 ? (a.lb = 0, a.mb = 0) : (a.lb = b.t - e >> 4, a.mb = b.k - e >> 4, a.lb < 0 && (a.lb = 0), a.mb < 0 && (a.mb = 0));
a.Ya = b.K + 15 + e >> 4;
a.wb = b.Ka + 15 + e >> 4;
a.wb > a.Ma && (a.wb = a.Ma);
a.Ya > a.hb && (a.Ya = a.hb);
d = L;
}
if (c = d == L) {
if (c) {
let g;
b: {
a.Ja = 0;
if (a.qb) {
const k = a.rc;
if (!WebPWorkerReset(k)) {
g = Y(a, cb, 'thread initialization failed.');
break b;
}
k.Qd = a;
k.Rd = a.oa.N;
k.Ud = FinishRow;
a.jb = a.A > 0 ? Od : Od - 1;
} else a.jb = Of;
g = 1;
}
let h;
if (!(h = !g)) {
let n;
b: {
const l = a.jb;
const m = a.Ma;
const t = 4 * m;
const q = 32 * m;
const r = m + 1;
const u = a.A > 0 ? m * (a.qb ? 2 : 1) : 0;
const v = Pf;
const C = q * (16 * l + parseInt(3 * uc[a.A] / 2, 10));
const A = a.Ga != p ? a.P.l * a.P.v : 0;
const z = t + q + r + u + v + 384 + C + A + Pd;
if (z != z) n = 0;
else {
if (z > a.Gb) {
a.ib = 0;
a.Gb = 0;
if (a.ib == p) {
n = Y(a, 'VP8_STATUS_OUT_OF_MEMORY', 'no memory during frame initialization.');
break b;
}
a.Gb = z;
}
a.dc = 205;
a.Xc = rc(205, 16 * m);
a.Sc = rc(205, 8 * m);
a.Vc = rc(205, 8 * m);
a.M = u ? ic(Oc, u) : p;
a.Sd = u ? 0 : p;
a.oa.ha = 0;
a.oa.M = a.M;
$((v & Pd) == 0);
a.Ea = rc(205, 1 * v);
a.z = -12851;
a.H = 16 * m;
a.r = 8 * m;
const Ha = uc[a.A];
const G = Ha * a.H;
const y = Ha / 2 * a.r;
a.ca = U(C, 205);
a.da = +G;
a.aa = a.ca;
a.ba = a.da + 16 * l * a.H + y;
a.ra = a.aa;
a.sa = a.ba + 8 * l * a.r + y;
a.Xb = A ? U(A, x) : p;
a.La = ic(Qd, r);
a.dc = rc($b, t);
n = 1;
}
}
h = !n;
}
if (h) c = 0;
else {
b.width = a.P.l;
b.height = a.P.v;
b.w = 0;
b.y = a.ca;
b.D = a.da;
b.c = a.aa;
b.B = a.ba;
b.S = a.ra;
b.C = a.sa;
b.F = a.H;
b.Da = a.r;
b.p = p;
b.q = p;
if (!Rd) {
let B;
for (B = -255; B <= 255; ++B) va[255 + B] = B < 0 ? -B : B, tc[255 + B] = va[255 + B] >> 1;
for (B = -1020; B
<= 1020; ++B) sc[1020 + B] = B < -128 ? -128 : B > 127 ? 127 : B;
for (B = -112; B <= 112; ++B) oc[112 + B] = B < -16 ? -16 : B > 15 ? 15 : B;
for (B = -255; B <= 510; ++B) oa[255 + B] = B < 0 ? 0 : B > 255 ? 255 : B;
Rd = 1;
}
mc = pf;
Pc = qf;
Qc = nc;
Rc = rf;
Sd = uf;
Td = vf;
Ud = yf;
Vd = zf;
Wd = wf;
Xd = xf;
Yd = Af;
Zd = Bf;
$d = Dd;
ae = Ed;
be = sf;
ce = tf;
c = 1;
}
}
if (c) {
a: {
for (a.d = 0; a.d < a.Ya; ++a.d) {
const Qf = a.ic[a.d & a.Hb - 1];
const db = a;
const F = db.La[0];
F.X = 0;
F.ua = 0;
jd(db.cc, 0, $b, db.cc.length);
db.W = (db.A > 0 && db.d >= db.mb && db.d <= db.Ya) + 0;
for (a.i = 0; a.i < a.Ma; a.i++) {
var D;
const H = a;
const T = Qf;
const ya = H.o;
const S = H.La[0];
const J = H.La[1 + H.i];
H.Ca.ob && (H.Lb = !w(ya,
H.R.Ta[0]) ? 0 + w(ya, H.R.Ta[1]) : 2 + w(ya, H.R.Ta[2]));
J.Nb = H.pc ? w(ya, H.Pc) : 0;
const O = H.dc;
O[O.length - 1] = 0 + 4 * H.i;
const Sc = H.cc;
H.wa = !w(ya, 145);
if (H.wa) {
for (var ga = H.Eb, ja = 0, Z = ca, Z = 0; Z < 4; ++Z) {
var V = Sc[Z];
var R;
for (R = 0; R < 4; ++R) {
const ta = Rf[O[O[O.length - 1] + R]][V];
var za = 0;
do za = Sf[2 * za + w(ya, ta[za])]; while (za > 0);
V = -za;
O[O[O.length - 1] + R] = V;
ga[ja] = V;
ja++;
}
Sc[Z] = V;
}
} else {
var V = w(ya, 156) ? w(ya, 128) ? de : ee : w(ya, 163) ? fe : ge;
H.Eb[0] = V;
for (za = 0; za < 4; ++za) O[za + O[O.length - 1]] = V;
for (za = 0; za < 4; ++za) Sc[za] = V;
}
H.Tc = !w(ya, 142) ? ge : !w(ya, 114) ? fe
: w(ya, 183) ? de : ee;
if (ya.Ab) D = 0;
else {
if (J.Nb) S.X = J.X = 0, H.wa || (S.ua = J.ua = 0), H.ja = 0, H.Oa = 0;
else {
let ia = ca;
let ka = ca;
var sa = ca;
var wa = Tf;
const Aa = H.yb[H.Lb];
var aa = H.z;
const ma = H.La[0];
const ua = U(4, 0);
const xa = U(4, 0);
let ea = U(4, 0);
let pb = U(4, 0);
let na = 0;
let Ba = 0;
var pa = ca;
let qa = ca;
let Sa = ca;
var aa = rc(0, 384);
if (H.wa) sa = 0, wa = H.R.z[3];
else {
const ab = U(16, 0);
var Ca = J.ua + ma.ua;
J.ua = ma.ua = (Mc(T, H.R.z[1], Ca, Aa.sb, 0, ab) > 0) + 0;
for (var sa = 1, wa = H.R.z[0], qb = ab, Ta = aa, La = U(16, s), X = s, X = 0; X < 4; ++X) {
var Da = qb[0 + X] + qb[12 + X];
var Ea = qb[4 + X] + qb[8 + X];
var Fa = qb[4 + X] - qb[8 + X];
var Ga = qb[0 + X] - qb[12 + X];
La[0 + X] = Da + Ea;
La[8
+ X] = Da - Ea;
La[4 + X] = Ga + Fa;
La[12 + X] = Ga - Fa;
}
for (X = 0; X < 4; ++X) {
const Oa = Ta[Ta.length - 1];
const lb = La[0 + 4 * X] + 3;
var Da = lb + La[3 + 4 * X];
var Ea = La[1 + 4 * X] + La[2 + 4 * X];
var Fa = La[1 + 4 * X] - La[2 + 4 * X];
var Ga = lb - La[3 + 4 * X];
Ta[Oa + 0] = Da + Ea >> 3;
Ta[Oa + 16] = Ga + Fa >> 3;
Ta[Oa + 32] = Da - Ea >> 3;
Ta[Oa + 48] = Ga - Fa >> 3;
Ta[Ta.length - 1] += 64;
}
aa[aa.length - 1] = 0;
}
ea = Nb(vc[J.X & 15]);
pb = Nb(vc[ma.X & 15]);
for (qa = 0; qa < 4; ++qa) {
for (var Eb = pb[qa], pa = 0; pa < 4; ++pa) {
var Ca = Eb + ea[pa];
var Ka = Mc(T, wa, Ca, Aa.sc, sa, aa);
ea[pa] = Eb = (Ka > 0) + 0;
xa[pa] = (aa[aa[aa.length - 1] + 0] != 0) + 0;
ua[pa] = (Ka > 1) + 0;
aa[aa.length
- 1] += 16;
}
pb[qa] = Eb;
Ba |= ob(xa, 24 - 4 * qa);
na |= ob(ua, 24 - 4 * qa);
}
ia = ob(ea, 24);
ka = ob(pb, 24);
ea = Nb(vc[J.X >> 4]);
pb = Nb(vc[ma.X >> 4]);
for (Sa = 0; Sa < 4; Sa += 2) {
for (qa = 0; qa < 2; ++qa) {
Eb = pb[Sa + qa];
for (pa = 0; pa < 2; ++pa) Ca = Eb + ea[Sa + pa], Ka = Mc(T, H.R.z[2], Ca, Aa.qc, 0, aa), ea[Sa + pa] = Eb = (Ka > 0) + 0, xa[2 * qa + pa] = (aa[aa[aa.length - 1] + 0] != 0) + 0, ua[2 * qa + pa] = (Ka > 1) + 0, aa[aa.length - 1] += 16;
pb[Sa + qa] = Eb;
}
Ba |= ob(xa, 8 - 2 * Sa);
na |= ob(ua, 8 - 2 * Sa);
}
ia |= ob(ea, 20);
ka |= ob(pb, 20);
J.X = ia;
ma.X = ka;
H.z = aa;
H.Oa = na + 0;
H.ja = na | Ba;
J.Nb = !H.ja + 0;
}
D = !T.Ab;
}
if (!D) {
c = Y(a, 'VP8_STATUS_NOT_ENOUGH_DATA',
`Premature end-of-file encountered.${a.i} ${a.d}`);
break a;
}
const P = a;
const da = P.Ea;
const Ma = Tc;
const Ua = P.Ea;
const Va = Uc;
const Wa = P.Ea;
const Xa = he;
if (P.i > 0) {
for (var ba = ca, ba = -1; ba < 16; ++ba) Ec(da, Ma + ba * f - 4, da, Ma + ba * f + 12);
for (ba = -1; ba < 8; ++ba) Ec(Ua, Va + ba * f - 4, Ua, Va + ba * f + 4), Ec(Wa, Xa + ba * f - 4, Wa, Xa + ba * f + 4);
} else {
for (ba = 0; ba < 16; ++ba) da[Ma + ba * f - 1] = 129;
for (ba = 0; ba < 8; ++ba) Ua[Va + ba * f - 1] = 129, Wa[Xa + ba * f - 1] = 129;
P.d > 0 && (da[Ma - 1 - f] = Ua[Va - 1 - f] = Wa[Xa - 1 - f] = 129);
}
const Qa = P.Xc;
const Ra = 16 * +P.i;
const mb = P.Sc;
const vb = 8 * +P.i;
const wb = P.Vc;
const xb = 8 * +P.i;
const Za = P.z;
let fa = ca;
if (P.d > 0) {
N(da, Ma - f, Qa, Ra,
16), N(Ua, Va - f, mb, vb, 8), N(Wa, Xa - f, wb, xb, 8);
} else if (P.i == 0) {
for (i = 0; i < 21; ++i) da[Ma - f - 1 + i] = 127;
for (i = 0; i < 9; ++i) Ua[Va - f - 1 + i] = 127;
for (i = 0; i < 9; ++i) Wa[Xa - f - 1 + i] = 127;
}
if (P.wa) {
const Ya = Ma - f + 16;
P.d > 0 && (P.i >= P.Ma - 1 ? da[Ya + 0] = da[Ya + 1] = da[Ya + 2] = da[Ya + 3] = Qa[Ra + 15] : N(da, Ya + 0, Qa, Ra + 16, 4));
for (let Fb = 0; Fb < 4; ++Fb) da[Fb + Ya + 4 * f] = da[Fb + Ya + 4 * f] = da[Fb + Ya + 8 * f] = da[Fb + Ya + 12 * f] = da[Fb + Ya + 0];
for (fa = 0; fa < 16; fa++) {
var ac = da;
var bc = Ma + ie[fa];
Uf[P.Eb[fa]](ac, bc);
P.Oa & 1 << fa ? mc(Za, 16 * +fa, ac, bc, 0) : P.ja & 1 << fa && Qc(Za, 16 * +fa, ac, bc);
}
} else {
var $a = Fd(P, P.Eb[0]);
Vf[$a](da, Ma);
if (P.ja) for (fa = 0; fa < 16; fa++) ac = da, bc = Ma + ie[fa], P.Oa & 1 << fa ? mc(Za, 16 * +fa, ac, bc, 0) : P.ja & 1 << fa && Qc(Za, 16 * +fa, ac, bc);
}
$a = Fd(P, P.Tc);
je[$a](Ua, Va);
je[$a](Wa, Xa);
if (P.ja & 983040) {
const zb = P.z;
var Pa = 256;
P.Oa & 983040 ? Pc(zb, Pa, Ua, Va) : Rc(zb, Pa, Ua, Va);
}
if (P.ja & 15728640) {
const Ab = P.z;
var Pa = 320;
P.Oa & 15728640 ? Pc(Ab, Pa, Wa, Xa) : Rc(Ab, Pa, Wa, Xa);
}
P.d < P.hb - 1 && (N(Qa, Ra, da, Ma + 15 * f, 16), N(mb, vb, Ua, Va + 7 * f, 8), N(wb, xb, Wa, Xa + 7 * f, 8));
const Q = a;
if (Q.A > 0) {
const kb = Q.M[1 + Q.i];
const Kb = Q.La[1 + Q.i].Nb;
let ha = Q.Zb[Q.Lb];
Q.ga.oc && (ha
+= Q.ga.Lc[0], Q.wa && (ha += Q.ga.Gc[0]));
ha = ha < 0 ? 0 : ha > 63 ? 63 : ha;
kb.zc = ha;
Q.ga.kb > 0 && (ha = Q.ga.kb > 4 ? ha >> 2 : ha >> 1, ha > 9 - Q.ga.kb && (ha = 9 - Q.ga.kb));
kb.yc = ha < 1 ? 1 : ha;
kb.ab = (!Kb || Q.wa) + 0;
}
for (var Ia = ca, Bb = 8 * Q.Ja * Q.r, Qb = Q.ca, Ub = Q.da + 16 * Q.i + 16 * Q.Ja * Q.H, Wb = Q.aa, Xb = Q.ba + 8 * Q.i + Bb, Yb = Q.ra, Zb = Q.sa + 8 * Q.i + Bb, Ia = 0; Ia < 16; ++Ia) N(Qb, Ub + Ia * Q.H, Q.Ea, +Tc + Ia * f, 16);
for (Ia = 0; Ia < 8; ++Ia) N(Wb, Xb + Ia * Q.r, Q.Ea, +Uc + Ia * f, 8), N(Yb, Zb + Ia * Q.r, Q.Ea, +he + Ia * f, 8);
}
const K = a;
const I = b;
var cc = 1;
const eb = K.oa;
if (K.qb) {
const nb = K.rc;
var cc = cc & WebPWorkerSync(nb);
$(nb.a == OK);
if (cc) {
eb.N = I;
eb.ha = K.Ja;
eb.d = K.d;
eb.W = K.W;
if (eb.W) {
const hc = eb.M;
eb.M = K.M;
K.M = hc;
}
WebPWorkerLaunch(nb);
++K.Ja == K.jb && (K.Ja = 0);
}
} else {
eb.d = K.d;
eb.W = K.W;
b: {
let Hb = 1;
const rb = K.oa;
const ib = uc[K.A];
const yb = ib * K.H;
const dc = parseInt(ib / 2) * K.r;
const Ib = 16 * rb.ha * K.H;
const jb = 8 * rb.ha * K.r;
const Jb = K.ca;
const Lb = K.da - yb + Ib;
const Ob = K.aa;
const Pb = K.ba - dc + jb;
const Rb = K.ra;
const Sb = K.sa - dc + jb;
const jc = rb.d == 0;
const Tb = (rb.d >= K.hb - 1) + 0;
var ra = 16 * rb.d;
let fb = 16 * (rb.d + 1);
if (rb.W) {
const pc = K;
let wc = s;
const kc = pc.oa.d;
$(pc.oa.W);
for (wc = pc.lb; wc < pc.wb; ++wc) {
const Na = pc;
const ec = wc;
const Vb = kc;
const xc = Na.oa;
const gb = Na.H;
const fc = xc.M[1 + ec];
const sb = Na.ca;
const tb = Na.da + 16 * xc.ha
* gb + 16 * ec;
const Gb = fc.zc;
const hb = fc.yc;
const Ja = 2 * Gb + hb;
if (Gb != 0) {
if (Na.A == 1) ec > 0 && ae(sb, tb, gb, Ja + 4), fc.ab && ce(sb, tb, gb, Ja), Vb > 0 && $d(sb, tb, gb, Ja + 4), fc.ab && be(sb, tb, gb, Ja);
else {
const gc = Na.r;
const yc = Na.aa;
const zc = Na.ba + 8 * xc.ha * gc + 8 * ec;
const Ac = Na.ra;
const Bc = Na.sa + 8 * xc.ha * gc + 8 * ec;
const ub = Na.Ac.fb ? Gb >= 40 ? 2 : Gb >= 15 ? 1 : 0 : Gb >= 40 ? 3 : Gb >= 20 ? 2 : Gb >= 15 ? 1 : 0;
ec > 0 && (Td(sb, tb, gb, Ja + 4, hb, ub), Vd(yc, zc, Ac, Bc, gc, Ja + 4, hb, ub));
fc.ab && (Xd(sb, tb, gb, Ja, hb, ub), Zd(yc, zc, Ac, Bc, gc, Ja, hb, ub));
Vb > 0 && (Sd(sb, tb, gb, Ja + 4, hb, ub), Ud(yc, zc, Ac, Bc, gc, Ja + 4, hb, ub));
fc.ab && (Wd(sb, tb, gb,
Ja, hb, ub), Yd(yc, zc, Ac, Bc, gc, Ja, hb, ub));
}
}
}
}
if (I.put) {
jc ? (I.y = K.ca, I.D = K.da + Ib, I.c = K.aa, I.B = K.ba + jb, I.S = K.ra, I.C = K.sa + jb) : (ra -= ib, I.y = Jb, I.D = Lb, I.c = Ob, I.B = Pb, I.S = Rb, I.C = Sb);
Tb || (fb -= ib);
fb > I.K && (fb = I.K);
if (K.Ga != p && ra < fb && (ra == 0 ? (I.p = qd(K, ra, fb - ra), I.q = 0) : I.q = qd(K, ra, fb - ra), I.p == p)) {
cc = Y(K, W, 'Could not decode alpha data.');
break b;
}
if (ra < I.k) {
const qc = I.k - ra;
var ra = I.k;
$(!(qc & 1));
I.D += K.H * qc;
I.B += K.r * (qc >> 1);
I.C += K.r * (qc >> 1);
I.p != p && (I.q += I.width * qc);
}
ra < fb && (I.D += I.t, I.B += I.t >> 1, I.C += I.t >> 1, I.p != p && (I.q += I.t),
I.w = ra - I.k, I.m = I.Ka - I.t, I.h = fb - ra, Hb = I.put(I));
}
rb.ha + 1 == K.jb && !Tb && (N(K.ca, K.da - yb, Jb, Lb + 16 * K.H, yb), N(K.aa, K.ba - dc, Ob, Pb + 8 * K.r, dc), N(K.ra, K.sa - dc, Rb, Sb + 8 * K.r, dc));
cc = Hb;
}
}
if (!cc) {
c = Y(a, 'VP8_STATUS_USER_ABORT', 'Output aborted.');
break a;
}
}
let Cb;
if (!(Cb = a.qb && !WebPWorkerSync(a.rc))) {
let Db;
if (Db = a.fc > 0) $(a), $(a.fc > 0), Db = !1;
Cb = Db;
}
c = Cb ? 0 : 1;
}
}
const lc = c;
b.Pb && b.Pb(b);
c = lc & 1;
}
if (!c) return ke(a), 0;
a.za = 0;
return c;
}
function ke(a) {
a != p && (a.ib && (a.ib = 0), a.ib = p, a.Gb = 0, a.za = 0);
}
function Aa(a, b) {
return a + (1 << b) - 1 >> b;
}
function hc(a, b, c, d, e) {
const g = vb[c] + wb[b] >> ea;
b = xb[b];
d[e + 0] = ia[a + Za[c] - J];
d[e + 1] = ia[a + g - J];
d[e + 2] = ia[a + b - J];
}
function le(a, b, c, d, e) {
const g = vb[c] + wb[b] >> ea;
b = xb[b];
d[e + 0] = ia[a + Za[c] - J] & 248 | ia[a + g - J] >> 5;
d[e + 1] = ia[a + g - J] << 3 & 224 | ia[a + b - J] >> 3;
}
function me(a, b, c, d, e) {
d[e + 0] = 255;
hc(a, b, c, d, e + 1);
}
function ne(a, b, c, d, e) {
const g = xb[b];
d[e + 0] = Hb[a + Za[c] - J] << 4 | Hb[a + (vb[c] + wb[b] >> ea) - J];
d[e + 1] = 15 | Hb[a + g - J] << 4;
}
function Vc(a, b, c, d, e) {
const g = Za[c];
c = vb[c] + wb[b] >> ea;
d[e + 0] = ia[a + xb[b] - J];
d[e + 1] = ia[a + c - J];
d[e + 2] = ia[a + g - J];
}
function oe(a, b, c, d, e) {
Vc(a, b, c, d, e);
d[e + 3] = 255;
}
function pe(a, b, c, d, e) {
hc(a, b, c, d, e);
d[e + 3] = 255;
}
function ib(a, b, c) {
a[b] = ((((a[b] & 4278255360) >>> 0) + ((c & 4278255360) >>> 0) & 4278255360) >>> 0 | (a[b] & 16711935) + (c & 16711935) & 16711935) >>> 0;
}
function ka(a, b) {
return (((a ^ b) & 4278124286) >>> 1) + ((a & b) >>> 0) >>> 0;
}
function $a(a) {
return a < 256 && a > 0 ? a : a <= 0 ? 0 : ~a >> 24 & 255;
}
function yb(a, b) {
return $a(a + parseInt((a - b) / 2, 10));
}
function Wc() {
return qe;
}
function Xc(a, b) {
a &= 255;
b &= 255;
a > 127 && (a -= 256);
b > 127 && (b -= 256);
return a * b >>> 5;
}
function re(a,
b, c, d, e, g, k) {
var h = s;
const n = 8 >> a.n;
const l = a.U;
const f = a.u;
if (n < 8) {
a = (1 << a.n) - 1;
for (var t = (1 << n) - 1, h = b; h < c; ++h) {
b = 0;
for (var q = s, q = 0; q < l; ++q) (q & a) == 0 && (b = d[e++] >> 8 & 255), g[k++] = f[b & t], b >>= n;
}
} else for (h = b; h < c; ++h) for (q = 0; q < l; ++q) g[k++] = f[d[e++] >> 8 & 255];
}
function se(a, b, c, d, e) {
for (c = b + c; b < c;) {
const g = a[b++];
d[e++] = g >> 16 & 255;
d[e++] = g >> 8 & 255;
d[e++] = g >> 0 & 255;
d[e++] = g >> 24 & 255;
}
}
function te(a, b, c, d, e) {
for (c = b + c; b < c;) {
const g = a[b++];
d[e++] = g >> 16 & 240 | g >> 12 & 15;
d[e++] = g >> 0 & 240 | g >> 28 & 15;
}
}
function Ib(a, b, c, d, e) {
for (c = b + c; b < c;) {
const g = a[b++];
d[e++] = g >> 24 & 255;
d[e++] = g >> 16 & 255;
d[e++] = g >> 8 & 255;
d[e++] = g >> 0 & 255;
}
}
function ue(a, b, c, d) {
if (T(a, 8) != ve) return 0;
b[0] = T(a, we) + 1;
c[0] = T(a, we) + 1;
d[0] = T(a, 1);
T(a, Wf);
return 1;
}
function xe(a, b) {
let c = s;
if (a < 4) return a + 1;
c = a - 2 >> 1;
return (2 + (a & 1) << c) + T(b, c) + 1;
}
function Oa(a, b) {
if (b.Q + 8 > b.ya) {
var c = a.Y;
var d = 0;
for ($(c != p); c[d].s != 0;) {
var e = c;
var g = b;
const k = g.T >> g.g & 1;
g.L ? g.fa = 1 : (++g.g, g.g >= 8 && Sb(g), g.Q == g.ya && g.g == 32 && (g.L = 1));
d = d + e[d].s + k;
}
return c[d].kc;
}
c = a.Y;
d = 0;
for ($(c != p); c[d].s != 0;) {
e = c, g = b.T >> b.g & 1, ++b.g, d = d
+ e[d].s + g;
}
return c[d].kc;
}
function zb(a, b) {
if (a != p) for (var c = s, d = s, c = 0; c < b; ++c) for (var e = a[c].va, d = 0; d < Yc; ++d) ja(e[d]);
}
function ye(a, b, c) {
b = a.eb == 0 ? 0 : a.ac[a.bd + a.Ec * (c >> a.eb) + (b >> a.eb)];
$(b < a.hc);
return a.Db[+b];
}
function ze(a, b, c, d) {
let e = a.Na;
const g = a.O;
const k = g + b;
var h = c;
var f = d;
d = a.Xa;
c = a.vb;
for (N(d, c, h, f, a.l * b); e-- > 0;) {
b = a.nc[e];
let l = g;
var m = k;
var t = h;
var q = f;
var f = d;
var h = c;
$(l < m);
$(m <= b.Vb);
switch (b.Qc) {
case Ae:
t = 0;
for (b = h + (m - l) * b.U; h < b;) {
var m = f;
var q = h;
var r = m[q] >> 8 & 255;
var u = (m[q] & 16711935) >>> 0;
var u = u + (r << 16 | r);
var u = u & 16711935;
f[h++] = ((m[q] & 4278255360)
>>> 0 | u) >>> 0;
l == 32 && t++;
}
break;
case Be:
var v = b;
var C = l;
var t = m;
var q = f;
var r = h;
var u = v.U;
if (C == 0) {
var A = s;
ib(q, r, qe);
for (A = 1; A < u; ++A) ib(q, r + A, q[r + A - 1]);
r += u;
++C;
}
for (var z = (1 << v.n) - 1, Ha = Aa(u, v.n), w = v.u, v = +(C >> v.n) * Ha; C < t;) {
var y = w;
var B = v;
let G = p;
ib(q, r, q[r - u + 0]);
G = Ce[y[B++] >> 8 & 15];
for (A = 1; A < u; ++A) {
let F = E;
(A & z) == 0 && (G = Ce[y[B++] >> 8 & 15]);
F = G(q[r + A - 1], q, r + A - u);
ib(q, r + A, F);
}
r += u;
++C;
(C & z) == 0 && (v += Ha);
}
m != b.Vb && (b = b.U, N(f, h - b, f, h + (m - l - 1) * b, b));
break;
case De:
t = b.U;
q = (1 << b.n) - 1;
r = Aa(t, b.n);
u = b.u;
for (b = +(l >> b.n) * r; l < m;) {
A = u;
C = b;
z = M(Xf);
Ha = s;
for (Ha = 0; Ha < t; ++Ha) (Ha & q) == 0 && (w = A[C++], v = z, v.Cc = w >> 0 & 255, v.Bc = w >> 8 & 255, v.Kc = w >> 16 & 255), w = f[h + Ha], v = w >>> 8, y = w >>> 16, B = w, y += Xc(z.Cc, v), y &= 255, B += Xc(z.Bc, v), B += Xc(z.Kc, y), B &= 255, f[h + Ha] = (w & 4278255360 | y << 16 | B) >>> 0;
h += t;
++l;
(l & q) == 0 && (b += r);
}
break;
case Ee:
t == f && b.n > 0 ? (t = (m - l) * Aa(b.U, b.n), q = h + (m - l) * b.U - t, memmove(f, q, f, h, t), re(b, l, m, f, q, f, h)) : re(b, l, m, t, q, f, h);
}
h = d;
f = c;
}
}
function Yf(a, b) {
var c = a.V;
var d = a.Ha + a.l * a.O;
var e = b - a.O;
if (!(e <= 0)) {
ze(a, e, c, d);
var g = a.N;
var c = a.Xa;
let k = [a.vb];
var d = a.O;
var e = b;
var h = k;
var f = g.width;
$(d < e);
$(g.t < g.Ka);
e > g.K && (e = g.K);
if (d < g.k) {
var l = g.k - d;
var d = g.k;
h[0] += f * l;
}
d >= e ? d = 0 : (h[0] += g.t, g.w = d - g.k, g.m = g.Ka - g.t, g.h = e - d, d = 1);
if (d) {
k = k[0];
d = a.Ib;
e = g.width;
if (d.J < ua) {
var m = d.c.RGBA;
var h = m.ma;
let t = m.Sa + a.xa * m.f;
if (g.I) c = EmitRescaledRows(a, c, k, e, g.h, h, t, m.f);
else {
for (var f = d.J, l = g.m, g = g.h, m = m.f, q = g; q-- > 0;) {
const r = c;
let u = k;
let v = l;
const C = h;
let A = t;
switch (f) {
case Qa:
for (v = u + v; u < v;) {
var z = r[u++];
C[A++] = z >> 16 & 255;
C[A++] = z >> 8 & 255;
C[A++] = z >> 0 & 255;
}
break;
case jb:
se(r, u, v, C, A);
break;
case Ob:
se(r, u, v, C, A);
WebPApplyAlphaMultiply(C, 0, v,
1, 0);
break;
case Zc:
for (v = u + v; u < v;) z = r[u++], C[A++] = z >> 0 & 255, C[A++] = z >> 8 & 255, C[A++] = z >> 16 & 255;
break;
case Pa:
Ib(r, u, v, C, A);
break;
case Pb:
Ib(r, u, v, C, A);
WebPApplyAlphaMultiply(C, 0, v, 1, 0);
break;
case Ab:
Ib(r, u, v, C, A);
break;
case Bb:
Ib(r, u, v, C, A);
WebPApplyAlphaMultiply(C, 1, v, 1, 0);
break;
case kb:
te(r, u, v, C, A);
break;
case Qb:
te(r, u, v, C, A);
WebPApplyAlphaMultiply4444(C, v, 1, 0);
break;
case Fe:
for (v = u + v; u < v;) z = r[u++], C[A++] = z >> 16 & 248 | z >> 13 & 7, C[A++] = z >> 5 & 224 | z >> 3 & 31;
break;
default:
$(0);
}
k += e;
t += m;
}
c = g;
}
a.xa += c;
} else {
a.xa = g.I ? EmitRescaledRowsYUVA(a, c, k, e, g.h) : EmitRowsYUVA(a, c, k, e, g.m, g.h);
}
$(a.xa <= d.height);
}
a.O = b;
$(a.O <= a.v);
}
}
function lc(a, b, c, d, e, g) {
let k = 1;
let h = 0;
let f = 0;
const l = a.o;
const m = a.cb;
let t = m.Db;
let q = c;
let r = c;
c += d * e;
e = Ba + Ge;
const u = e + m.xb;
const v = m.xb > 0 ? m.Yb : p;
const C = m.Dc;
let A = !1;
$(t != p);
for (; !l.L && q < c;) {
let z = s;
A || ((h & C) == 0 && (t = ye(m, h, f)), Da(l), z = Oa(t.va[Zf], l));
if (z < Ba || A) {
if (!A) {
var w = k = A = s;
var y = s;
Da(l);
A = Oa(t.va[$f], l);
k = z;
Da(l);
w = Oa(t.va[ag], l);
Da(l);
y = Oa(t.va[bg], l);
b[q] = (y << 24 >>> 0) + (A << 16) + (k << 8) + w;
}
A = !1;
++q;
++h;
if (h >= d && (h = 0, ++f, g != p && f
% $c == 0 && g(a, f), v != p)) for (; r < q;) k = b[r++], v.ea[ad * k >>> v.bb] = k;
} else if (z < e) {
w = w = s;
k = xe(z - Ba, l);
z = Oa(t.va[cg], l);
Da(l);
w = xe(z, l);
w > He ? w -= He : (z = dg[w - 1], z = (z >> 4) * d + (8 - (z & 15)), w = z >= 1 ? z : 1);
z = s;
for (z = 0; z < k; ++z) b[q + z] = b[q + z - w];
q += k;
for (h += k; h >= d;) h -= d, ++f, g != p && f % $c == 0 && g(a, f);
if (q < c && (t = ye(m, h, f), v != p)) for (; r < q;) k = b[r++], v.ea[ad * k >>> v.bb] = k;
} else if (z < u) {
A = z - e;
for ($(v != p); r < q;) z = b[r++], v.ea[ad * z >>> v.bb] = z;
z = b;
w = q;
y = v;
$(A <= -1 >>> y.bb);
z[w] = y.ea[A];
A = !0;
continue;
}(k = !l.fa) || End;
}
g != p && g(a, f);
l.fa || !k || l.L && q < c ? (k = 0, a.a = !l.L ? W : Ie) : q == c && (a.Ob = Db);
return k;
}
function bd(a) {
$(a);
a.ac = p;
zb(a.Db, a.hc);
const b = a.Yb;
b != p && (b.ea = p, b.ea = p);
$(a);
}
function sd() {
const a = M(eg);
if (a == p) return p;
a.a = L;
a.Wa = cd;
a.Ob = cd;
return a;
}
function sa(a) {
let b = s;
if (a != p) {
bd(a.cb);
a.V = p;
a.V = p;
for (b = 0; b < a.Na; ++b) {
const c = a.nc[b];
c.u = p;
c.u = p;
}
a.Na = 0;
a.Ub = 0;
a.Mc = p;
a.Mc = p;
a.Ib = p;
}
}
function Ka(a, b, c, d, e) {
var g = 1;
a = [a];
b = [b];
for (var k = d.o, h = d.cb, f = p, l = p, l = 0; ;) {
if (c) {
for (; g && T(k, 1);) {
var m = a;
var t = b;
var q = d;
var r = 1;
var u = q.o;
var g = q.nc[q.Na];
var v = T(u, 2);
if (q.Ub & 1 << v) g = 0;
else {
q.Ub
|= 1 << v;
g.Qc = v;
g.U = m[0];
g.Vb = t[0];
g.u = [p];
g.b = 0;
++q.Na;
$(q.Na <= Je);
switch (v) {
case Be:
case De:
g.n = T(u, 3) + 2;
r = Ka(Aa(g.U, g.n), Aa(g.Vb, g.n), 0, q, g.u);
break;
case Ee:
t = T(u, 8) + 1;
r = t > 16 ? 0 : t > 4 ? 1 : t > 2 ? 2 : 3;
m[0] = Aa(g.U, r);
g.n = r;
if (m = r = Ka(t, 1, 0, q, g.u)) {
if (m = t, q = g, r = s, t = 1 << (8 >>> q.n) >>> 0, u = Array(t), u == p) m = 0;
else {
var v = q.u[0];
var C = q.b;
u[0] = q.u[0][q.b + 0];
for (r = 1; r < m; ++r) u[r] = ((((v[C + r] & 4278255360) >>> 0) + ((u[r - 1] & 4278255360) >>> 0) & 4278255360) >>> 0 | (v[C + r] & 16711935) + (u[r - 1] & 16711935) & 16711935) >>> 0;
for (; r < t; ++r) u[r] = 0;
q.u[0] = p;
q.b = p;
q.u[0] = u;
q.b = 0;
m = 1;
}
}
r = m;
break;
case Ae:
break;
default:
$(0);
}
g.u = g.u[0];
g = r;
}
}
}
if (g && T(k, 1) && (l = T(k, 4), g = l >= 1 && l <= fg, !g)) {
d.a = W;
break;
}
if (g) {
a: {
var g = d;
var A = a[0];
var z = b[0];
var m = l;
var C = v = s;
var C = g.o;
var q = g.cb;
var r = [p];
var t = p;
var u = 1;
if (c && T(C, 1)) {
var v = T(C, 3) + 2;
var A = Aa(A, v);
var w = Aa(z, v);
var z = A * w;
if (!Ka(A, w, 0, g, r)) {
g.a = W;
zb(t, u);
g = 0;
break a;
}
r = r[0];
q.eb = v;
for (v = 0; v < z; ++v) A = r[v] >>> 8 & 65535, r[v] = A, A >= u && (u = A + 1);
}
if (C.fa) zb(t, u), g = 0;
else if ($(u <= 65536), t = ld(u, gg), t == p) g.a = cb, zb(t, u), g = 0;
else {
for (v = 0; v < u; ++v) {
z = t[v].va;
for (C = 0; C < Yc; ++C) {
A = hg[C];
C == 0 && m > 0 && (A += 1 << m);
b: {
const y = A;
var A = g;
const G = z[+C];
var B = 0;
var w = A.o;
if (T(w, 1)) {
var F = Array(2);
var D = Array(2);
var L = Array(2);
var B = T(w, 1) + 1;
var J = T(w, 1);
F[0] = T(w, J == 0 ? 1 : 8);
D[0] = 0;
L[0] = B - 1;
B == 2 && (F[1] = T(w, 8), D[1] = 1, L[1] = B - 1);
c: {
var J = 0;
var H = s;
$(G != p);
$(L != p);
$(D != p);
$(F != p);
if (nd(G, B)) {
for (H = 0; H < B; ++H) {
if (D[H] != pd) {
if (F[H] < 0 || F[H] >= y) {
(J = J && ma(G)) || ja(G);
B = J;
break c;
}
if (!jc(G, F[H], D[H], L[H])) {
(J = J && ma(G)) || ja(G);
B = J;
break c;
}
}
}(J = (J = 1) && ma(G)) || ja(G);
B = J;
} else B = 0;
}
} else {
B = s;
D = [];
F = T(w, 4) + 4;
if (F > Ke) {
A.a = W;
A = 0;
break b;
}
L = Array(y);
if (L == p) {
A.a = cb;
A = 0;
break b;
}
for (B = 0; B < F; ++B) D[ig[B]] = T(w, 3);
c: {
var B = A;
var O = D;
var D = y;
var F = L;
var J = 0;
var H = B.o;
let S = s;
let V = s;
let Y = jg;
const Z = M(Le);
if (od(Z, O, Ke)) {
if (T(H, 1)) {
if (S = 2 + 2 * T(H, 3), V = 2 + T(H, S), V > D) {
B.a = W;
ja(Z);
B = J;
break c;
}
} else V = D;
for (S = 0; S < D;) {
var R = s;
if (V-- == 0) break;
Da(H);
R = Oa(Z, H);
if (R < Me) F[S++] = R, R != 0 && (Y = R);
else {
var O = R == kg;
var R = R - Me;
const ea = lg[R];
var R = T(H, mg[R]) + ea;
if (S + R > D) {
B.a = W;
ja(Z);
B = J;
break c;
}
for (O = O ? Y : 0; R-- > 0;) F[S++] = O;
}
}
J = 1;
ja(Z);
B = J;
} else B.a = W, B = 0;
}
B && (B = od(G, L, y));
}(B = B && !w.fa) ? A = 1 : (A.a = W, A = 0);
}
if (!A) {
zb(t, u);
g = 0;
break a;
}
}
}
q.ac = r;
q.hc = u;
q.Db = t;
g = 1;
}
}
}
if (!g) {
d.a = W;
break;
}
if (l > 0) {
if (h.xb = 1 << l, m = h.Yb, q = 1 << l, $(m != p), $(l > 0), m.ea = U(q, 0), m.ea == p ? l = 0 : (m.bb = 32 - l, l = 1), !l) {
d.a = cb;
g = 0;
break;
}
} else h.xb = 0;
l = d;
m = a[0];
q = b[0];
r = l.cb;
t = r.eb;
l.l = m;
l.v = q;
r.Ec = Aa(m, t);
r.Dc = t == 0 ? -1 : (1 << t) - 1;
if (c) {
d.Ob = Cb;
break;
}
f = Array(a * b);
l = 0;
if (f == p) {
d.a = cb;
g = 0;
break;
}
g = (g = lc(d, f, l, a, b, p)) && !k.fa;
break;
}
g ? (e != p ? e[0] = f : ($(f == p), $(c)), c || bd(h)) : (bd(h), d.a == W && d.o.L && (d.a = Ie));
return g;
}
function xd(a, b) {
const c = a.l * a.v;
const d = c + b + b * $c;
$(a.l <= b);
a.V = Array(d);
a.Ha = 0;
if (a.V == p) {
return a.Xa = p, a.a = cb, 0;
}
a.Xa = a.V;
a.vb = a.Ha + c + b;
return 1;
}
function mf(a, b) {
var c = b - a.O;
var d = a.V;
var e = a.Ha + a.l * a.O;
if (!(c <= 0)) {
ze(a, c, d, e);
for (var e = a.N.width, c = e * c, d = a.N.ka, e = a.N.fd + e * a.O, g = a.Xa, k = a.vb, h = s, h = 0; h < c; ++h) d[e + h] = g[k + h] >>> 8 & 255;
a.O = a.xa = b;
}
}
function ng(a, b) {
const c = [s];
const d = [s];
const e = [s];
if (a == p) return 0;
if (b == p) return a.a = ta, 0;
a.N = b;
a.a = L;
Rb(a.o, b.data, b.b, b.e);
if (!ue(a.o, c, d, e)) return a.a = W, sa(a), $(a.a != L), 0;
a.Ob = cd;
b.width = c[0];
b.height = d[0];
a.Wa = Cb;
return !Ka(c[0], d[0], 1, a, p) ? (sa(a), $(a.a != L), 0) : 1;
}
function og(a) {
let b = p;
let c = p;
if (a == p) return 0;
b = a.N;
$(b != p);
c = b.ka;
$(c != p);
a.Ib = c.j;
a.Hc = c.Hc;
$(a.Ib != p);
if (!Ne(c.Qa, b, Pa)) return a.a = ta, sa(a), $(a.a != L), 0;
if (!xd(a, b.width) || b.I && !AllocateAndInitRescaler(a, b)) return sa(a), $(a.a != L), 0;
a.Wa = Db;
if (!lc(a, a.V, a.Ha, a.l, a.v, Yf)) return sa(a), $(a.a != L), 0;
c.ec = a.xa;
sa(a);
return 1;
}
function wa(a, b) {
return a < 0 ? 0 : a > b ? b : a;
}
function ab(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, C, w, z) {
let y; const G = C - 1 >> 1;
let F = e[g + 0] | k[h + 0] << 16;
let B = f[l + 0] | m[t + 0] << 16;
if (a) {
var D = 3 * F + B + 131074 >> 2;
w(a[b + 0], D & 255, D >> 16, q, r);
}
c && (D = 3 * B + F + 131074 >> 2, w(c[d + 0], D & 255, D >> 16, u, v));
for (y = 1; y <= G; ++y) {
const J = e[g + y] | k[h + y] << 16;
const L = f[l + y] | m[t + y] << 16;
var D = F + J + B + L + 524296;
const O = D + 2 * (J + B) >> 3;
const H = D + 2 * (F + L) >> 3;
a && (D = O + F >> 1, F = H + J >> 1, w(a[b + 2 * y - 1], D & 255, D >> 16, q, r + (2 * y - 1) * z), w(a[b + 2 * y - 0], F & 255, F >> 16, q, r + (2 * y - 0) * z));
c && (D = H + B >> 1, F = O + L >> 1, w(c[d + 2 * y - 1], D & 255, D >> 16, u, v + (2 * y - 1) * z), w(c[d + 2 * y + 0], F & 255, F >> 16, u, v + (2 * y + 0) * z));
F = J;
B = L;
}
C & 1 || (a && (D = 3 * F + B + 131074 >> 2, w(a[b + C - 1], D & 255, D >> 16, q, r + (C - 1) * z)), c && (D = 3 * B + F + 131074 >> 2, w(c[d + C - 1], D & 255, D >> 16, u, v + (C - 1) * z)));
}
function pg(a,
b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w) {
ab(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w, hc, 3);
}
function qg(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w) {
ab(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w, Vc, 3);
}
function Oe(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w) {
ab(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w, pe, 4);
}
function Pe(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w) {
ab(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w, oe, 4);
}
function Qe(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w) {
ab(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w, me, 4);
}
function Re(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w) {
ab(a, b, c, d, e, g, k, h,
f, l, m, t, q, r, u, v, w, ne, 2);
}
function rg(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w) {
ab(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u, v, w, le, 2);
}
function Ca(a, b, c, d, e, g, k, h, f, l, m, t, q, r, u) {
let v;
for (v = 0; v < q - 1; v += 2) r(a[b + 0], e[g + 0], k[h + 0], f, l), r(a[b + 1], e[g + 0], k[h + 0], f, l + u), r(c[d + 0], e[g + 0], k[h + 0], m, t), r(c[d + 1], e[g + 0], k[h + 0], m, t + u), b += 2, d += 2, g++, h++, l += 2 * u, t += 2 * u;
v == q - 1 && (r(a[b + 0], e[g + 0], k[h + 0], f, l), r(c[d + 0], e[g + 0], k[h + 0], m, t));
}
function Se(a, b, c, d, e, g, k, f, n, l, m, t, q) {
Ca(a, b, c, d, e, g, k, f, n, l, m, t, q, pe, 4);
}
function Te(a, b, c, d, e, g, k, f, n, l,
m, t, q) {
Ca(a, b, c, d, e, g, k, f, n, l, m, t, q, oe, 4);
}
function Ue(a, b, c, d, e, g, k, f, n, l, m, t, q) {
Ca(a, b, c, d, e, g, k, f, n, l, m, t, q, me, 4);
}
function Ve(a, b, c, d, e, g, k, f, n, l, m, t, q) {
Ca(a, b, c, d, e, g, k, f, n, l, m, t, q, ne, 2);
}
function sg(a, b, c, d, e, g) {
for (; e-- > 0;) {
for (var k = a, f = b + (c ? 1 : 0), n = a, l = b + (c ? 0 : 3), m = s, m = 0; m < d; ++m) {
var t = n[l + 4 * m];
if (t != 255) {
var t = 32897 * t;
let q = k;
let r = f + 4 * m + 0;
k[f + 4 * m + 0] * t >>> 23;
q[r] = ca;
q = k;
r = f + 4 * m + 1;
k[f + 4 * m + 1] * t >>> 23;
q[r] = ca;
q = k;
r = f + 4 * m + 2;
k[f + 4 * m + 2] * t >>> 23;
q[r] = ca;
}
}
b += g;
}
}
function tg(a, b) {
const c = b.j.c.Va;
const d = c.y;
const e = c.D + a.w * c.F;
const g = c.c;
const k = c.B + (a.w >> 1) * c.nb;
const f = c.S;
const n = c.C + (a.w >> 1) * c.rb;
const l = a.m;
const m = a.h;
const t = parseInt((l + 1) / 2, 10);
const q = parseInt((m + 1) / 2, 10);
let r;
for (r = 0; r < m; ++r) N(d, e + r * c.F, a.y, a.D + r * a.F, l);
for (r = 0; r < q; ++r) N(g, k + r * c.nb, a.c, a.B + r * a.Da, t), N(f, n + r * c.rb, a.S, a.C + r * a.Da, t);
return a.h;
}
function ug(a, b) {
var c = b.j;
const d = c.c.RGBA;
const e = d.ma;
let g = d.Sa + a.w * d.f;
const k = a.y;
let f = a.D;
const n = a.c;
let l = a.B;
const m = a.S;
let t = a.C;
var c = vg[c.J];
const q = a.m;
const r = a.h - 1;
let u;
for (u = 0; u < r; u += 2) c(k, f, k, f + a.F, n, l, m, t, e, g, e, g + d.f, q), f += 2 * a.F, l += a.Da, t += a.Da, g += 2 * d.f;
u == r && c(k, f, k, f, n, l, m, t, e, g, e, g, q);
return a.h;
}
function wg(a, b) {
let c = a.h;
const d = b.j.c.RGBA;
const e = d.ma;
let g = d.Sa + a.w * d.f;
const k = V[b.j.J];
const f = a.y;
let n = a.D;
const l = a.c;
let m = a.B;
const t = a.S;
let q = a.C;
let r = b.Qb;
let u = b.Rb;
let v = b.lc;
let w = b.mc;
let A = a.w;
const z = a.w + a.h;
const y = a.m;
const D = parseInt((y + 1) / 2, 10);
A == 0 ? k(p, p, f, n, l, m, t, q, l, m, t, q, p, p, e, g, y) : (k(b.Sb, b.Tb, f, n, r, u, v, w, l, m, t, q, e, g - d.f, e, g, y), ++c);
for (; A + 2 < z; A += 2) r = l, u = m, v = t, w = q, m += a.Da, q += a.Da, g += 2 * d.f, n += 2 * a.F, k(f, n - a.F, f, n, r, u, v, w, l, m, t, q, e, g - d.f, e, g, y);
n += a.F;
a.k + z < a.K ? (N(b.Sb, b.Tb, f, n, 1 * y), N(b.Qb, b.Rb, l, m, 1 * D), N(b.lc, b.mc, t, q, 1 * D), c--) : z & 1 || k(f, n, p, p, l, m, t, q, l, m,
t, q, e, g + d.f, p, p, y);
return c;
}
function xg(a, b) {
var c = a.p;
var d = a.q;
const e = b.j.c.Va;
const g = a.m;
const f = a.h;
const h = e.p;
let n = e.q + a.w * e.Fa;
var c = a.p;
var d = a.q;
let l = s;
if (c != p) for (l = 0; l < f; ++l) N(h, n, c, d, 1 * g), d += a.width, n += e.Fa;
else if (e.p != p) for (l = 0; l < f; ++l) jd(h, n, 255, g), n += e.Fa;
return 0;
}
function We(a, b, c) {
let d = a.w;
c[0] = a.h;
a.Bb && (d == 0 ? --c[0] : (--d, b[0] -= a.width), a.k + a.w + a.h == a.K && (c[0] = a.K - a.k - d));
return d;
}
function yg(a, b) {
const c = a.p;
var d = [a.q];
if (c != p) {
for (var e = a.m, g = b.j.J, f = g == Ab || g == Bb, h = b.j.c.RGBA, n = [s], l = We(a, d, n), d = d[0], m = h.ma, l = h.Sa + l * h.f,
t = l + (f ? 0 : 3), q = 255, r = s, u = s, u = 0; u < n[0]; ++u) {
for (r = 0; r < e; ++r) {
const v = c[d + r];
m[t + 4 * r] = v;
q &= v;
}
d += a.width;
t += h.f;
}
q != 255 && F(g) && WebPApplyAlphaMultiply(m, l, f, e, n, h.f);
}
return 0;
}
function zg(a, b) {
const c = a.p;
var d = [a.q];
if (c != p) {
const e = a.m;
const g = b.j.J;
const f = b.j.c.RGBA;
const h = [s];
var n = We(a, d, h);
var d = d[0];
const l = f.ma;
var n = f.Sa + n * f.f;
let m = n + 1;
let t = 15;
let q = s;
for (j = 0; j < h[0]; ++j) {
for (q = 0; q < e; ++q) {
const r = c[d + q] >> 4;
l[m + 2 * q] = l[m + 2 * q] & 240 | r;
t &= r;
}
d += a.width;
m += f.f;
}
t != 15 && F(g) && WebPApplyAlphaMultiply4444(l, n, e, h, f.f);
}
return 0;
}
function vd(a) {
let b = a.ka;
const c = b.j.J;
const d = c
< ua;
const e = c == jb || c == Pa || c == Ab || c == kb || c == Ra || F(c);
b.memory = p;
b.$a = p;
b.zb = p;
b.ad = p;
if (!Ne(b.Qa, a, e ? ua : Ra)) return 0;
if (a.I) {
if (!(d ? InitRGBRescaler(a, b) : InitYUVRescaler(a, b))) return alert('memory error #1'), 0;
} else {
if (d) {
if (b.$a = ug, a.Bb) {
const g = a.m + 1 >> 1;
const f = a.m + 2 * g;
let h; const
n = [];
for (h = 0; h < f; ++h) n.push(205);
n.push(0);
b.memory = n;
if (b.memory == p) return alert('memory error #2'), 0;
b.Sb = b.memory;
b.Tb = 0;
b.Qb = b.Sb;
b.Rb = b.Tb + a.m;
b.lc = b.Qb;
b.mc = b.Rb + g;
b.$a = wg;
V[Qa] = pg;
V[jb] = Oe;
V[Zc] = qg;
V[Pa] = Pe;
V[Ab] = Qe;
V[kb] = Re;
V[Fe] = rg;
}
} else {
b.$a = tg;
}
e && (F(c) && (WebPApplyAlphaMultiply = sg, V[Ob] = Oe, V[Pb] = Pe, V[Bb] = Qe, V[Qb] = Re), b.zb = c == kb || c == Qb ? zg : d ? yg : xg);
}
if (d && !Xe) {
for (a = 0; a < 256; ++a) Za[a] = 89858 * (a - 128) + Jb >> ea, wb[a] = -22014 * (a - 128) + Jb, vb[a] = -45773 * (a - 128), xb[a] = 113618 * (a - 128) + Jb >> ea;
for (a = J; a < dd; ++a) b = 76283 * (a - 16) + Jb >> ea, ia[a - J] = wa(b, 255), Hb[a - J] = wa(b + 8 >> 4, 15);
Xe = 1;
}
return 1;
}
function ud(a) {
const b = a.ka;
let c = a.m;
const d = a.h;
$(!(a.w & 1));
if (c <= 0 || d <= 0) return 0;
c = b.$a(a, b);
b.ec += c;
b.zb && b.zb(a, b);
return 1;
}
function wd(a) {
a = a.ka;
a.memory = '';
a.memory = p;
}
function ed(a,
b) {
return a[b + 0] | a[b + 1] << 8 | a[b + 2] << 16;
}
function Kb(a, b) {
return (ed(a, b) | a[b + 3] << 24) >>> 0;
}
function Ye(a, b, c, d, e, g, f) {
var h = 0;
var n = [0];
var l = 'VP8StatusCode';
const m = M(Gc);
if (a == p || c[0] < Lb) return Z;
m.data = a;
m.b = [b[0]];
m.e = [c[0]];
m.na = [m.na];
a: {
h = m.na;
$(a != p);
$(c != p);
$(h != p);
h[0] = 0;
if (c[0] >= Lb && !kd(a, b[0], 'RIFF', O)) {
if (kd(a, b[0] + 8, 'WEBP', O)) {
l = W;
break a;
}
var t = Kb(a, b[0] + O);
if (t < O + R) {
l = W;
break a;
}
h[0] = t;
b[0] += Lb;
c[0] -= Lb;
} else h[0] = 0;
l = L;
}
m.na = m.na[0];
if (l != L) return l;
h = m.na > 0;
t = [0];
a: if (l = R + fd, $(a != p), $(c != p), $(n != p), n[0] = 0, c[0] < R) l = Z;
else {
if (!kd(a, b[0], 'VP8X', O)) {
var q = s;
var r = s;
var u = E;
if (Kb(a, b[0] + O) != fd) {
l = W;
break a;
}
if (c[0] < l) {
l = Z;
break a;
}
u = Kb(a, b[0] + 8);
q = 1 + ed(a, b[0] + 12);
r = 1 + ed(a, b[0] + 15);
if (q * r >= Ag) {
l = W;
break a;
}
t != p && (t[0] = u);
d != p && (d[0] = q);
e != p && (e[0] = r);
b[0] += l;
c[0] -= l;
n[0] = 1;
}
l = L;
}
if (l != L) return l;
if (!h && n[0]) return W;
g != p && (g[0] = !!(t[0] & Bg));
if (n && f == p) return L;
if (c < O) return Z;
if (h && n[0] || !h && !n[0] && !kd(a, b[0], 'ALPH', O)) {
m.$ = [m.$];
m.G = [m.G];
m.pa = [m.pa];
a: {
var n = m.na;
var h = m.$;
var t = m.G;
var l = m.pa;
var q = x;
var r = 0;
var u = Mb;
let v = O + R + fd;
$(a != p);
$(c != p);
q = a;
r = b[0];
u = c[0];
$(h != p);
$(l != p);
h[0] = p;
t[0] = p;
for (l[0] = 0; ;) {
let w = E;
let y = E;
b[0] = r;
c[0] = u;
if (u < R) {
l = Z;
break a;
}
w = Kb(q, r + O);
y = R + w + 1 & -2;
v += y;
if (n > 0 && v > n) {
l = W;
break a;
}
if (u < y) {
l = Z;
break a;
}
if (kd(q, r, 'ALPH', O)) {
if (!kd(q, r, 'VP8 ', O) || !kd(q, 'VP8L', O)) {
l = L;
break a;
}
} else h[0] = q, t[0] = r + R, l[0] = w;
r += y;
u -= y;
}
l = ca;
}
m.$ = m.$[0];
m.G = m.G[0];
m.pa = m.pa[0];
if (l != L) return l;
}
m.ta = [m.ta];
m.ia = [m.ia];
a: if (n = m.na, h = m.ta, t = m.ia, r = !kd(a, b[0], 'VP8 ', O), l = !kd(a, b[0], 'VP8L', O), q = O + R, $(a != p), $(c != p), $(h != p), $(t != p), c[0] < R) l = Z;
else {
if (r || l) {
r = Kb(a, b[0] + O);
if (n >= q && r > n - q) {
l = W;
break a;
}
h[0] = r;
b[0] += R;
c[0] -= R;
t[0] = l;
} else t[0] = c >= 1 && a[b + 0] == ve, h[0] = c[0];
l = L;
}
m.ta = m.ta[0];
m.ia = m.ia[0];
if (l != L) return l;
if (m.ta > Ze) return W;
if (m.ia) {
if (c[0] < $e) return Z;
n = b[0];
h = c[0];
d = d ? d[0] : p;
e = e ? e[0] : p;
t = g ? g[0] : p;
a == p || h < $e ? a = 0 : (l = [s], q = [s], r = [s], u = M(af), Rb(u, a, n, h), ue(u, l, q, r) ? (d != p && (d[0] = l[0]), e != p && (e[0] = q[0]), t != p && (t[0] = r[0]), a = 1) : a = 0);
} else {
if (c < bf) return Z;
n = b[0];
h = c[0];
d = d ? d[0] : p;
e = e ? e[0] : p;
!(a == p || h < bf) && h - 3 >= 3 && a[n + 3 + 0] == 157 && a[n
+ 3 + 1] == 1 && a[n + 3 + 2] == 42 ? (h = a[n + 0] | a[n + 1] << 8 | a[n + 2] << 16, t = (a[n + 7] << 8 | a[n + 6]) & 16383, a = (a[n + 9] << 8 | a[n + 8]) & 16383, !(!(h & 1) + 0) || (h >> 1 & 7) > 3 || !(h >> 4 & 1) || h >> 5 >= m.ta ? a = 0 : (d && (d[0] = t), e && (e[0] = a), a = 1)) : a = 0;
}
if (!a) return W;
g != p && (g[0] |= m.$ != p);
f != p && (f[0] = m, f[0].offset = b[0] - f[0].b, $(b[0] - f[0].b < Ze), $(f[0].offset == f[0].e - c[0]));
return L;
}
function Kd(a) {
$(a != p);
return Ye(a[0].data, a[0].b, a[0].e, p, p, p, a);
}
function cf(a, b, c, d) {
let e = 'VP8StatusCode';
const g = M(Vb);
let f = M(Gc);
f.data = a;
f.b = b;
f.e = c;
f.b = [f.b];
f.e = [f.e];
f = [f];
e = Kd(f);
if (e
!= L) return e;
f = f[0];
f.b = f.b[0];
f.e = f.e[0];
$(d != p);
td(na);
g.data = f.data;
g.b = b + f.offset;
g.e = f.e - f.offset;
g.put = ud;
g.Mb = vd;
g.Pb = wd;
g.ka = d;
if (f.ia) {
a = sd();
if (a == p) return cb;
ng(a, g) ? (e = zd(g.width, g.height, d.Qa, d.j), e == L && !og(a) && (e = a.a)) : e = a.a;
a != p && sa(a);
} else {
e = M(Cg);
e != p && (Gd(e), e.za = 0, e.Hb = 1);
a = e;
if (a == p) return cb;
a.qb = 0;
a.Ga = f.$;
a.G = f.G;
a.ub = f.pa;
Hd(a, g) ? (e = zd(g.width, g.height, d.Qa, d.j), e == L && !Mf(a, g) && (e = a.a)) : e = a.a;
a != p && ke(a);
}
e != L && (self || this).Yc(d.j);
return e;
}
function lb(a, b, c, d, e) {
const g = {
value: 0,
};
c = {
value: c,
};
const f = M(df);
const h = M(gd);
f.j = h;
h.J = a;
const n = {
value: h.width,
};
const l = {
value: h.height,
};
let m;
m = c;
const t = M(ef);
hd(b, g, m, t) != L ? m = 0 : (n != p && (n.value = t.width), l != p && (l.value = t.height), m = 1);
if (!m) return p;
h.width = n.value;
h.height = l.value;
d != p && (d.value = h.width.value);
e != p && (e.value = h.height.value);
return cf(b, g.value, c.value, f) != L ? p : a < ua ? h.c.RGBA.ma : h.c.Va.y;
}
function hd(a, b, c, d) {
if (d == p || a == p) return ta;
$(d != p);
d.tc = 0;
d.width = [d.width];
d.height = [d.height];
d.$b = [d.$b];
return Ye(a, b, c, d.width, d.height, d.$b, p);
}
function Ne(a,
b, c) {
const d = b.width;
const e = b.height;
let g = 0;
let f = 0;
let h = d;
let n = e;
b.Ua = a != p && a.Ua > 0;
if (b.Ua && (h = a.wc, n = a.vc, g = a.t, f = a.k, c < ua || (g &= -2, f &= -2), g < 0 || f < 0 || h <= 0 || n <= 0 || g + h > d || f + n > e)) return 0;
b.t = g;
b.k = f;
b.Ka = g + h;
b.K = f + n;
b.m = h;
b.h = n;
b.I = a != p && a.I > 0;
if (b.I) {
if (a.Ba <= 0 || a.Aa <= 0) return 0;
b.Ba = a.Ba;
b.Aa = a.Aa;
}
b.Za = a && a.Za;
b.Bb = a == p || !a.ed;
b.I && (b.Za = b.Ba < 3 * d / 4 && b.Aa < 3 * e / 4, b.Bb = 0);
return 1;
}
var na = 512;
var Qa = 0;
var jb = 1;
var Zc = 2;
var Pa = 3;
var Ab = 4;
var kb = 5;
var Fe = 6;
var Ob = 7;
var Pb = 8;
var Bb = 9;
var Qb = 10;
var ua = 11;
var Ra = 12;
var Cc = 13;
this.WEBP_CSP_MODE = this.Cd = {
nd: 0,
od: 1,
kd: 2,
ld: 3,
jd: 4,
pd: 5,
qd: 6,
rd: 7,
sd: 8,
md: 9,
};
var gd = {
J: 'WEBP_CSP_MODE',
width: s,
height: s,
Fc: s,
c: {
RGBA: {
ma: x,
Sa: 0,
f: s,
size: Mb,
},
Va: {
y: x,
c: x,
S: x,
p: x,
D: x,
B: x,
C: x,
q: x,
F: s,
nb: s,
rb: s,
Fa: s,
Wc: Mb,
Rc: Mb,
Uc: Mb,
Wb: Mb,
},
},
Ic: U(4, E),
Jb: p,
jc: x,
};
var L = 0;
var cb = 1;
var ta = 2;
var W = 3;
var Hf = 4;
var Ie = 5;
var Nf = 6;
var Z = 7;
this.VP8StatusCode = this.td = {
xd: 0,
yd: 1,
vd: 2,
ud: 3,
Ad: 4,
zd: 5,
Bd: 6,
wd: 7,
};
var ef = {
width: {
value: s,
},
height: {
value: s,
},
$b: {
value: s,
},
tc: s,
Yd: s,
rotate: s,
be: s,
Ic: U(3, E),
};
this.WebPGetFeatures = this.Md = function (a, b, c) {
let d = 'VP8StatusCode';
na >>> 8 != na >>> 8 || c == p ? a = ta : (b = [b], d = hd(a, [0], b, c), a = d == Z ? W : d);
return a;
};
const ff = {
Za: s,
ed: s,
Ua: s,
t: s,
k: s,
wc: s,
vc: s,
I: s,
Ba: s,
Aa: s,
ae: s,
Td: s,
Xd: s,
Ic: U(6, E),
};
this.WebPDecoderConfig = this.Kd = {
input: M(ef),
j: M(gd),
options: M(ff),
};
this.WebPInitDecoderConfig = this.Nd = function (a) {
na >>> 8 != na >>> 8 || a == p ? a = 0 : (a = a.input, $(a != p), a.tc = 0, a = 1);
return a;
};
var Vb = {
width: s,
height: s,
w: s,
m: s,
h: s,
y: x,
c: x,
S: x,
D: 0,
B: 0,
C: 0,
F: s,
Da: s,
ka: 0,
put: 0,
Mb: 0,
Pb: 0,
Bb: s,
e: Mb,
data: x,
b: 0,
Za: s,
Ua: s,
t: s,
Ka: s,
k: s,
K: s,
I: s,
Ba: s,
Aa: s,
p: x,
q: 0,
};
var df = {
j: M(gd),
Sb: x,
Qb: x,
lc: x,
Tb: 0,
Rb: 0,
mc: 0,
ec: s,
Qa: M(ff),
memory: 0,
$a: '(OutputFunc)',
zb: '(OutputFunc)',
ad: '(OutputRowFunc)',
};
var Gc = {
data: x,
b: x,
e: Mb,
offset: Mb,
$: p,
G: x,
pa: Mb,
ta: Mb,
na: Mb,
ia: s,
};
var Fc = {
qa: x,
Ia: p,
Pd: x,
Ab: s,
la: E,
Z: E,
gc: s,
};
var af = {
T: bb,
qa: x,
Ia: x,
ya: Mb,
Q: Mb,
g: s,
L: s,
fa: s,
};
var gf = 25;
var hf = [0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535, 131071, 262143, 524287, 1048575, 2097151, 4194303, 8388607, 16777215];
var bf = 10;
var ve = 47;
var we = 14;
var Wf = 3;
var $e = 5;
var fg = 11;
var Yc = 5;
var qe = 4278190080;
var jg = 8;
var Tb = 15;
var Ba = 256;
var Ge = 24;
var Je = 4;
var Be = 0;
var De = 1;
var Ae = 2;
var Ee = 3;
var Ub = 1;
var kc = 0;
var kf = 1;
var rd = 1;
var O = 4;
var R = 8;
var Lb = 12;
var fd = 10;
var Bg = 16;
var Ag = 1 * Math.pow(2, 32);
var Ze = -1 - R - 1 >>> 0;
var jf = {
kc: s,
s,
};
var Le = {
Y: 'HuffmanTreeNode*',
gb: s,
Pa: s,
};
var pd = -1;
const Dg = {
ea: E,
bb: s,
};
var ad = 506832829;
var $b = 0;
var ge = $b;
var fe = 2;
var ee = 3;
var de = 1;
var Ef = 4;
var Df = 5;
var Cf = 6;
var Ld = 3;
var xa = 4;
var Hc = 4;
var Gf = 4;
var Md = 4;
var Nd = 8;
var Kc = 3;
var Lc = 11;
var f = 32;
var Pf = 17 * f + 9 * f;
var Tc = 1 * f + 8;
var Uc = Tc + 16 * f + f;
var he = Uc + 16;
var Id = {
fb: x,
Jc: x,
Nc: x,
Ra: E,
};
var Jd = {
l: 0,
v: 0,
gd: x,
hd: x,
uc: x,
$c: x,
};
const Eg = {
pb: s,
ob: s,
tb: s,
Kb: U(xa, 0),
Cb: U(xa, 0),
};
const Fg = {
Ta: U(Ld, x),
z: md([Md, Nd, Kc, Lc], x),
};
const Gg = {
Oc: s,
Fb: s,
kb: s,
oc: s,
Lc: U(Hc, s),
Gc: U(Hc, s),
};
var Oc = {
zc: s,
yc: s,
ab: s,
};
var Qd = {
X: s,
ua: s,
Nb: s,
};
const id = U(2, s);
const Hg = {
sc: M(id),
sb: M(id),
qc: M(id),
};
const Ig = {
ha: s,
d: s,
W: s,
M: Oc,
N: Vb,
};
var Cg = {
a: 'VP8StatusCode',
za: s,
xc: 0,
o: M(Fc),
Ac: M(Id),
P: M(Jd),
ga: M(Gg),
Ca: M(Eg),
rc: 'WebPWorker',
qb: s,
Ja: s,
jb: s,
oa: Ig,
Ma: s,
hb: s,
lb: s,
mb: s,
wb: s,
Ya: s,
Hb: s,
ic: ld(8, Fc),
Zc: E,
yb: ld(xa, Hg),
R: M(Fg),
pc: s,
Pc: x,
dc: x,
cc: U(4, x),
Xc: x,
Sc: x,
Vc: x,
La: M(Qd),
M: M(Oc),
Ea: x,
z: 0,
ca: x,
aa: x,
ra: x,
da: s,
ba: s,
sa: s,
H: s,
r: s,
ib: 0,
Gb: Mb,
i: s,
d: s,
wa: x,
Eb: U(16, x),
Vd: 0,
Tc: x,
Lb: x,
ja: E,
Oa: E,
A: s,
W: s,
Zb: U(xa, x),
Ga: p,
G: 0,
ub: Mb,
Xb: x,
Od: 0,
cd: s,
dd: x,
Wd: 0,
fc: Mb,
};
var Db = 0;
var Cb = 1;
var cd = 2;
const Jg = {
Qc: 'VP8LImageTransformType',
n: s,
U: s,
Vb: s,
u: E,
b: E,
};
var gg = {
va: ld(Yc, Le),
};
const Kg = {
xb: s,
Yb: M(Dg),
Dc: s,
eb: s,
Ec: s,
ac: E,
bd: E,
hc: s,
Db: 'HTreeGroup',
};
var eg = {
a: 'VP8StatusCode',
Wa: 'VP8LDecodeState',
Ob: 'VP8LDecodeState',
N: 'VP8Io',
Ib: 'WebPDecBuffer',
Hc: 'WebPDecBuffer',
V: E,
Ha: E,
Xa: E,
vb: E,
o: M(af),
l: s,
v: s,
O: s,
xa: s,
cb: M(Kg),
Na: s,
nc: ld(Je, Jg),
Ub: E,
Mc: x,
$d: x,
Zd: '*WebPRescaler',
};
var lf = 4;
var nf = [p, function (a, b, c, d, e, g, f, h) {
let n = s;
let l = h;
$(a != p);
$(f != p);
$(c > 0);
$(d > 0);
$(e > 0);
$(g >= c * e);
for (n = 0; n < d; ++n) {
n == 0 ? N(f, h, a, b, e) : Ea(a, b, f, l - g, f, h, e), Ea(a, b + e, f, l, f, h + e, e * (c - 1)),
l += g, b += g, h += g;
}
}, function (a, b, c, d, e, f, k, h) {
let n = s;
let l = h;
$(a != p);
$(k != p);
$(c > 0);
$(d > 0);
$(e > 0);
$(f >= c * e);
N(k, h, a, b, e);
Ea(a, b + e, k, l, k, h + e, e * (c - 1));
for (n = 1; n < d; ++n) b += f, h += f, Ea(a, b, k, l, k, h, e * c), l += f;
}, function (a, b, c, d, e, f, k, h) {
var n = h;
let l = s;
$(a != p);
$(k != p);
$(c > 0);
$(d > 0);
$(e > 0);
$(f >= c * e);
N(k, h, a, b, e);
Ea(a, b + e, k, n, k, h + e, e * (c - 1));
for (l = 1; l < d; ++l) {
let m = s;
var n = n + f;
b += f;
h += f;
Ea(a, b, k, n - f, k, h, e);
for (m = e; m < c * e; ++m) {
const t = k[n + m - e] + k[n + m - f] - k[n + m - f - e];
k[h + m] = a[b + m] + (t < 0 ? 0 : t > 255 ? 255 : t) & 255;
}
}
}];
var yd = [3, 4, 3, 4, 4, 2, 2, 4, 4, 4,
2, 1, 1,
];
this.WebPFreeDecBuffer = this.Yc = function (a) {
a != p && (a.Fc || (a.Jb = ''), a.jc = 0, a.Jb = a.jc = p);
};
self = this;
var va = U(511, x);
var tc = U(511, x);
var sc = U(2041, 0);
var oc = U(225, 0);
var oa = U(766, x);
var Rd = 0;
var Xb = 85627;
var Wb = 35468;
var Uf = [function (a, b) {
let c = 4;
let d;
for (d = 0; d < 4; ++d) c += a[b + d - f] + a[b - 1 + d * f];
c >>= 3;
for (d = 0; d < 4; ++d) jd(a, b + d * f, c, 4);
}, function (a, b) {
Dc(a, b, 4);
}, function (a, b) {
let c = b - f;
const d = [];
d.push(y(a[c - 1], a[c + 0], a[c + 1]));
d.push(y(a[c + 0], a[c + 1], a[c + 2]));
d.push(y(a[c + 1], a[c + 2], a[c + 3]));
d.push(y(a[c + 2], a[c + 3], a[c + 4]));
for (c = 0; c < 4; ++c) N(a, b + c * f, d, 0, 4);
},
function (a, b) {
const c = a[b - 1];
const d = a[b - 1 + f];
const e = a[b - 1 + 2 * f];
const g = a[b - 1 + 3 * f];
a[b + 0 + 0 * f] = a[b + 1 + 0 * f] = a[b + 2 + 0 * f] = a[b + 3 + 0 * f] = y(a[b - 1 - f], c, d);
a[b + 0 + 1 * f] = a[b + 1 + 1 * f] = a[b + 2 + 1 * f] = a[b + 3 + 1 * f] = y(c, d, e);
a[b + 0 + 2 * f] = a[b + 1 + 2 * f] = a[b + 2 + 2 * f] = a[b + 3 + 2 * f] = y(d, e, g);
a[b + 0 + 3 * f] = a[b + 1 + 3 * f] = a[b + 2 + 3 * f] = a[b + 3 + 3 * f] = y(e, g, g);
},
function (a, b) {
const c = a[b - 1 + 0 * f];
const d = a[b - 1 + 1 * f];
const e = a[b - 1 + 2 * f];
const g = a[b - 1 - f];
const k = a[b + 0 - f];
const h = a[b + 1 - f];
const n = a[b + 2 - f];
const l = a[b + 3 - f];
a[b + 0 + 3 * f] = y(d, e, a[b - 1 + 3 * f]);
a[b + 0 + 2 * f] = a[b + 1 + 3 * f] = y(c, d, e);
a[b + 0 + 1 * f] = a[b + 1 + 2 * f] = a[b + 2 + 3 * f] = y(g, c, d);
a[b
+ 0 + 0 * f] = a[b + 1 + 1 * f] = a[b + 2 + 2 * f] = a[b + 3 + 3 * f] = y(k, g, c);
a[b + 1 + 0 * f] = a[b + 2 + 1 * f] = a[b + 3 + 2 * f] = y(h, k, g);
a[b + 2 + 0 * f] = a[b + 3 + 1 * f] = y(n, h, k);
a[b + 3 + 0 * f] = y(l, n, h);
},
function (a, b) {
const c = a[b - 1 + 0 * f];
const d = a[b - 1 + 1 * f];
const e = a[b - 1 + 2 * f];
const g = a[b - 1 - f];
const k = a[b + 0 - f];
const h = a[b + 1 - f];
const n = a[b + 2 - f];
const l = a[b + 3 - f];
a[b + 0 + 0 * f] = a[b + 1 + 2 * f] = g + k + 1 >> 1;
a[b + 1 + 0 * f] = a[b + 2 + 2 * f] = k + h + 1 >> 1;
a[b + 2 + 0 * f] = a[b + 3 + 2 * f] = h + n + 1 >> 1;
a[b + 3 + 0 * f] = n + l + 1 >> 1;
a[b + 0 + 3 * f] = y(e, d, c);
a[b + 0 + 2 * f] = y(d, c, g);
a[b + 0 + 1 * f] = a[b + 1 + 3 * f] = y(c, g, k);
a[b + 1 + 1 * f] = a[b + 2 + 3 * f] = y(g, k, h);
a[b + 2 + 1 * f] = a[b + 3 + 3 * f] = y(k, h, n);
a[b + 3 + 1 * f] = y(h, n, l);
},
function (a, b) {
const c = a[b + 1 - f];
const d = a[b + 2 - f];
const e = a[b + 3 - f];
const g = a[b + 4 - f];
const k = a[b + 5 - f];
const h = a[b + 6 - f];
const n = a[b + 7 - f];
a[b + 0 + 0 * f] = y(a[b + 0 - f], c, d);
a[b + 1 + 0 * f] = a[b + 0 + 1 * f] = y(c, d, e);
a[b + 2 + 0 * f] = a[b + 1 + 1 * f] = a[b + 0 + 2 * f] = y(d, e, g);
a[b + 3 + 0 * f] = a[b + 2 + 1 * f] = a[b + 1 + 2 * f] = a[b + 0 + 3 * f] = y(e, g, k);
a[b + 3 + 1 * f] = a[b + 2 + 2 * f] = a[b + 1 + 3 * f] = y(g, k, h);
a[b + 3 + 2 * f] = a[b + 2 + 3 * f] = y(k, h, n);
a[b + 3 + 3 * f] = y(h, n, n);
},
function (a, b) {
const c = a[b + 0 - f];
const d = a[b + 1 - f];
const e = a[b + 2 - f];
const g = a[b + 3 - f];
const k = a[b + 4 - f];
const h = a[b + 5 - f];
const n = a[b + 6 - f];
const l = a[b + 7 - f];
a[b + 0 + 0 * f] = c + d + 1 >> 1;
a[b + 1 + 0 * f] = a[b
+ 0 + 2 * f] = d + e + 1 >> 1;
a[b + 2 + 0 * f] = a[b + 1 + 2 * f] = e + g + 1 >> 1;
a[b + 3 + 0 * f] = a[b + 2 + 2 * f] = g + k + 1 >> 1;
a[b + 0 + 1 * f] = y(c, d, e);
a[b + 1 + 1 * f] = a[b + 0 + 3 * f] = y(d, e, g);
a[b + 2 + 1 * f] = a[b + 1 + 3 * f] = y(e, g, k);
a[b + 3 + 1 * f] = a[b + 2 + 3 * f] = y(g, k, h);
a[b + 3 + 2 * f] = y(k, h, n);
a[b + 3 + 3 * f] = y(h, n, l);
},
function (a, b) {
const c = a[b - 1 + 0 * f];
const d = a[b - 1 + 1 * f];
const e = a[b - 1 + 2 * f];
const g = a[b - 1 + 3 * f];
const k = a[b - 1 - f];
const h = a[b + 0 - f];
const n = a[b + 1 - f];
const l = a[b + 2 - f];
a[b + 0 + 0 * f] = a[b + 2 + 1 * f] = c + k + 1 >> 1;
a[b + 0 + 1 * f] = a[b + 2 + 2 * f] = d + c + 1 >> 1;
a[b + 0 + 2 * f] = a[b + 2 + 3 * f] = e + d + 1 >> 1;
a[b + 0 + 3 * f] = g + e + 1 >> 1;
a[b + 3 + 0 * f] = y(h, n, l);
a[b + 2 + 0 * f] = y(k, h, n);
a[b
+ 1 + 0 * f] = a[b + 3 + 1 * f] = y(c, k, h);
a[b + 1 + 1 * f] = a[b + 3 + 2 * f] = y(d, c, k);
a[b + 1 + 2 * f] = a[b + 3 + 3 * f] = y(e, d, c);
a[b + 1 + 3 * f] = y(g, e, d);
},
function (a, b) {
const c = a[b - 1 + 0 * f];
const d = a[b - 1 + 1 * f];
const e = a[b - 1 + 2 * f];
const g = a[b - 1 + 3 * f];
a[b + 0 + 0 * f] = c + d + 1 >> 1;
a[b + 2 + 0 * f] = a[b + 0 + 1 * f] = d + e + 1 >> 1;
a[b + 2 + 1 * f] = a[b + 0 + 2 * f] = e + g + 1 >> 1;
a[b + 1 + 0 * f] = y(c, d, e);
a[b + 3 + 0 * f] = a[b + 1 + 1 * f] = y(d, e, g);
a[b + 3 + 1 * f] = a[b + 1 + 2 * f] = y(e, g, g);
a[b + 3 + 2 * f] = a[b + 2 + 2 * f] = a[b + 0 + 3 * f] = a[b + 1 + 3 * f] = a[b + 2 + 3 * f] = a[b + 3 + 3 * f] = g;
},
];
var Vf = [function (a, b) {
let c = 16;
let d;
for (d = 0; d < 16; ++d) c += a[b - 1 + d * f] + a[b + d - f];
Yb(c >> 5, a, b);
}, function (a,
b) {
Dc(a, b, 16);
}, function (a, b) {
let c;
for (c = 0; c < 16; ++c) N(a, b + c * f, a, b - f, 16);
}, function (a, b) {
let c;
for (c = 16; c > 0; --c) jd(a, b + 0, a[b - 1], 16), b += f;
}, function (a, b) {
let c = 8;
let d;
for (d = 0; d < 16; ++d) c += a[b - 1 + d * f];
Yb(c >> 4, a, b);
}, function (a, b) {
let c = 8;
let d;
for (d = 0; d < 16; ++d) c += a[b + d - f];
Yb(c >> 4, a, b);
}, function (a, b) {
Yb(128, a, b);
}];
var je = [function (a, b) {
let c = 8;
let d;
for (d = 0; d < 8; ++d) c += a[b + d - f] + a[b - 1 + d * f];
Zb(1 * (c >> 4), a, b);
}, function (a, b) {
Dc(a, b, 8);
}, function (a, b) {
let c;
for (c = 0; c < 8; ++c) N(a, b + c * f, a, b - f, 8);
}, function (a, b) {
let c;
for (c = 0; c < 8; ++c) {
jd(a,
b + 0, a[b - 1], 8), b += f;
}
}, function (a, b) {
let c = 4;
let d;
for (d = 0; d < 8; ++d) c += a[b - 1 + d * f];
Zb(1 * (c >> 3), a, b);
}, function (a, b) {
let c = 4;
let d;
for (d = 0; d < 8; ++d) c += a[b + d - f];
Zb(1 * (c >> 3), a, b);
}, function (a, b) {
Zb(128, a, b);
}];
let mc; let Pc; let Qc; let Rc; let Sd; let Td; let Ud; let Vd; let Wd; let Xd; let Yd; let Zd; let $d; let ae; let be; let ce; var Pd = 31;
var uc = [0, 2, 8];
var Od = 3;
var Of = 1;
var ie = [0 + 0 * f, 4 + 0 * f, 8 + 0 * f, 12 + 0 * f, 0 + 4 * f, 4 + 4 * f, 8 + 4 * f, 12 + 4 * f, 0 + 8 * f, 4 + 8 * f, 8 + 8 * f, 12 + 8 * f, 0 + 12 * f, 4 + 12 * f, 8 + 12 * f, 12 + 12 * f];
var Ic = [4, 5, 6, 7, 8, 9, 10, 10, 11, 12, 13, 14, 15, 16, 17, 17, 18, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 25, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 37, 38,
39, 40, 41, 42, 43, 44, 45, 46, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 91, 93, 95, 96, 98, 100, 101, 102, 104, 106, 108, 110, 112, 114, 116, 118, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 143, 145, 148, 151, 154, 157,
];
var Jc = [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 119, 122, 125, 128, 131, 134, 137, 140, 143, 146, 149, 152, 155, 158, 161, 164, 167, 170, 173, 177, 181, 185, 189, 193, 197, 201, 205, 209, 213, 217, 221, 225, 229, 234, 239, 245, 249, 254, 259, 264, 269, 274, 279, 284,
];
var Sf = [-$b, 1, -1, 2, -2, 3, 4, 6, -3, 5, -4, -5, -6, 7, -7, 8, -8, -9];
var Ff = [
[
[
[128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],
[128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],
[128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],
],
[
[253, 136, 254, 255, 228, 219, 128, 128, 128, 128, 128],
[189, 129, 242, 255, 227, 213, 255, 219, 128, 128,
128,
],
[106, 126, 227, 252, 214, 209, 255, 255, 128, 128, 128],
],
[
[1, 98, 248, 255, 236, 226, 255, 255, 128, 128, 128],
[181, 133, 238, 254, 221, 234, 255, 154, 128, 128, 128],
[78, 134, 202, 247, 198, 180, 255, 219, 128, 128, 128],
],
[
[1, 185, 249, 255, 243, 255, 128, 128, 128, 128, 128],
[184, 150, 247, 255, 236, 224, 128, 128, 128, 128, 128],
[77, 110, 216, 255, 236, 230, 128, 128, 128, 128, 128],
],
[
[1, 101, 251, 255, 241, 255, 128, 128, 128, 128, 128],
[170, 139, 241, 252, 236, 209, 255, 255, 128, 128, 128],
[37, 116, 196, 243, 228, 255, 255, 255, 128, 128, 128],
],
[
[1, 204, 254, 255, 245, 255, 128, 128, 128, 128,
128,
],
[207, 160, 250, 255, 238, 128, 128, 128, 128, 128, 128],
[102, 103, 231, 255, 211, 171, 128, 128, 128, 128, 128],
],
[
[1, 152, 252, 255, 240, 255, 128, 128, 128, 128, 128],
[177, 135, 243, 255, 234, 225, 128, 128, 128, 128, 128],
[80, 129, 211, 255, 194, 224, 128, 128, 128, 128, 128],
],
[
[1, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],
[246, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],
[255, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],
],
],
[
[
[198, 35, 237, 223, 193, 187, 162, 160, 145, 155, 62],
[131, 45, 198, 221, 172, 176, 220, 157, 252, 221, 1],
[68, 47, 146, 208, 149, 167, 221, 162, 255, 223, 128],
],
[
[1, 149, 241, 255, 221, 224, 255, 255, 128, 128, 128],
[184, 141, 234, 253, 222, 220, 255, 199, 128, 128, 128],
[81, 99, 181, 242, 176, 190, 249, 202, 255, 255, 128],
],
[
[1, 129, 232, 253, 214, 197, 242, 196, 255, 255, 128],
[99, 121, 210, 250, 201, 198, 255, 202, 128, 128, 128],
[23, 91, 163, 242, 170, 187, 247, 210, 255, 255, 128],
],
[
[1, 200, 246, 255, 234, 255, 128, 128, 128, 128, 128],
[109, 178, 241, 255, 231, 245, 255, 255, 128, 128, 128],
[44, 130, 201, 253, 205, 192, 255, 255, 128, 128, 128],
],
[
[1, 132, 239, 251, 219, 209, 255, 165, 128, 128, 128],
[94, 136, 225, 251, 218, 190, 255, 255, 128, 128, 128],
[22,
100, 174, 245, 186, 161, 255, 199, 128, 128, 128,
],
],
[
[1, 182, 249, 255, 232, 235, 128, 128, 128, 128, 128],
[124, 143, 241, 255, 227, 234, 128, 128, 128, 128, 128],
[35, 77, 181, 251, 193, 211, 255, 205, 128, 128, 128],
],
[
[1, 157, 247, 255, 236, 231, 255, 255, 128, 128, 128],
[121, 141, 235, 255, 225, 227, 255, 255, 128, 128, 128],
[45, 99, 188, 251, 195, 217, 255, 224, 128, 128, 128],
],
[
[1, 1, 251, 255, 213, 255, 128, 128, 128, 128, 128],
[203, 1, 248, 255, 255, 128, 128, 128, 128, 128, 128],
[137, 1, 177, 255, 224, 255, 128, 128, 128, 128, 128],
],
],
[
[
[253, 9, 248, 251, 207, 208, 255, 192, 128, 128, 128],
[175, 13,
224, 243, 193, 185, 249, 198, 255, 255, 128,
],
[73, 17, 171, 221, 161, 179, 236, 167, 255, 234, 128],
],
[
[1, 95, 247, 253, 212, 183, 255, 255, 128, 128, 128],
[239, 90, 244, 250, 211, 209, 255, 255, 128, 128, 128],
[155, 77, 195, 248, 188, 195, 255, 255, 128, 128, 128],
],
[
[1, 24, 239, 251, 218, 219, 255, 205, 128, 128, 128],
[201, 51, 219, 255, 196, 186, 128, 128, 128, 128, 128],
[69, 46, 190, 239, 201, 218, 255, 228, 128, 128, 128],
],
[
[1, 191, 251, 255, 255, 128, 128, 128, 128, 128, 128],
[223, 165, 249, 255, 213, 255, 128, 128, 128, 128, 128],
[141, 124, 248, 255, 255, 128, 128, 128, 128, 128, 128],
],
[
[1, 16, 248, 255,
255, 128, 128, 128, 128, 128, 128,
],
[190, 36, 230, 255, 236, 255, 128, 128, 128, 128, 128],
[149, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],
],
[
[1, 226, 255, 128, 128, 128, 128, 128, 128, 128, 128],
[247, 192, 255, 128, 128, 128, 128, 128, 128, 128, 128],
[240, 128, 255, 128, 128, 128, 128, 128, 128, 128, 128],
],
[
[1, 134, 252, 255, 255, 128, 128, 128, 128, 128, 128],
[213, 62, 250, 255, 255, 128, 128, 128, 128, 128, 128],
[55, 93, 255, 128, 128, 128, 128, 128, 128, 128, 128],
],
[
[128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],
[128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],
[128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128,
],
],
],
[
[
[202, 24, 213, 235, 186, 191, 220, 160, 240, 175, 255],
[126, 38, 182, 232, 169, 184, 228, 174, 255, 187, 128],
[61, 46, 138, 219, 151, 178, 240, 170, 255, 216, 128],
],
[
[1, 112, 230, 250, 199, 191, 247, 159, 255, 255, 128],
[166, 109, 228, 252, 211, 215, 255, 174, 128, 128, 128],
[39, 77, 162, 232, 172, 180, 245, 178, 255, 255, 128],
],
[
[1, 52, 220, 246, 198, 199, 249, 220, 255, 255, 128],
[124, 74, 191, 243, 183, 193, 250, 221, 255, 255, 128],
[24, 71, 130, 219, 154, 170, 243, 182, 255, 255, 128],
],
[
[1, 182, 225, 249, 219, 240, 255, 224, 128, 128, 128],
[149, 150, 226, 252, 216,
205, 255, 171, 128, 128, 128,
],
[28, 108, 170, 242, 183, 194, 254, 223, 255, 255, 128],
],
[
[1, 81, 230, 252, 204, 203, 255, 192, 128, 128, 128],
[123, 102, 209, 247, 188, 196, 255, 233, 128, 128, 128],
[20, 95, 153, 243, 164, 173, 255, 203, 128, 128, 128],
],
[
[1, 222, 248, 255, 216, 213, 128, 128, 128, 128, 128],
[168, 175, 246, 252, 235, 205, 255, 255, 128, 128, 128],
[47, 116, 215, 255, 211, 212, 255, 255, 128, 128, 128],
],
[
[1, 121, 236, 253, 212, 214, 255, 255, 128, 128, 128],
[141, 84, 213, 252, 201, 202, 255, 219, 128, 128, 128],
[42, 80, 160, 240, 162, 185, 255, 205, 128, 128, 128],
],
[
[1, 1, 255, 128, 128, 128, 128,
128, 128, 128, 128,
],
[244, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],
[238, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],
],
],
];
var Rf = [
[
[231, 120, 48, 89, 115, 113, 120, 152, 112],
[152, 179, 64, 126, 170, 118, 46, 70, 95],
[175, 69, 143, 80, 85, 82, 72, 155, 103],
[56, 58, 10, 171, 218, 189, 17, 13, 152],
[114, 26, 17, 163, 44, 195, 21, 10, 173],
[121, 24, 80, 195, 26, 62, 44, 64, 85],
[144, 71, 10, 38, 171, 213, 144, 34, 26],
[170, 46, 55, 19, 136, 160, 33, 206, 71],
[63, 20, 8, 114, 114, 208, 12, 9, 226],
[81, 40, 11, 96, 182, 84, 29, 16, 36],
],
[
[134, 183, 89, 137, 98, 101, 106, 165, 148],
[72, 187, 100, 130, 157, 111,
32, 75, 80,
],
[66, 102, 167, 99, 74, 62, 40, 234, 128],
[41, 53, 9, 178, 241, 141, 26, 8, 107],
[74, 43, 26, 146, 73, 166, 49, 23, 157],
[65, 38, 105, 160, 51, 52, 31, 115, 128],
[104, 79, 12, 27, 217, 255, 87, 17, 7],
[87, 68, 71, 44, 114, 51, 15, 186, 23],
[47, 41, 14, 110, 182, 183, 21, 17, 194],
[66, 45, 25, 102, 197, 189, 23, 18, 22],
],
[
[88, 88, 147, 150, 42, 46, 45, 196, 205],
[43, 97, 183, 117, 85, 38, 35, 179, 61],
[39, 53, 200, 87, 26, 21, 43, 232, 171],
[56, 34, 51, 104, 114, 102, 29, 93, 77],
[39, 28, 85, 171, 58, 165, 90, 98, 64],
[34, 22, 116, 206, 23, 34, 43, 166, 73],
[107, 54, 32, 26, 51, 1, 81, 43, 31],
[68, 25, 106, 22,
64, 171, 36, 225, 114,
],
[34, 19, 21, 102, 132, 188, 16, 76, 124],
[62, 18, 78, 95, 85, 57, 50, 48, 51],
],
[
[193, 101, 35, 159, 215, 111, 89, 46, 111],
[60, 148, 31, 172, 219, 228, 21, 18, 111],
[112, 113, 77, 85, 179, 255, 38, 120, 114],
[40, 42, 1, 196, 245, 209, 10, 25, 109],
[88, 43, 29, 140, 166, 213, 37, 43, 154],
[61, 63, 30, 155, 67, 45, 68, 1, 209],
[100, 80, 8, 43, 154, 1, 51, 26, 71],
[142, 78, 78, 16, 255, 128, 34, 197, 171],
[41, 40, 5, 102, 211, 183, 4, 1, 221],
[51, 50, 17, 168, 209, 192, 23, 25, 82],
],
[
[138, 31, 36, 171, 27, 166, 38, 44, 229],
[67, 87, 58, 169, 82, 115, 26, 59, 179],
[63, 59, 90, 180, 59, 166, 93, 73,
154,
],
[40, 40, 21, 116, 143, 209, 34, 39, 175],
[47, 15, 16, 183, 34, 223, 49, 45, 183],
[46, 17, 33, 183, 6, 98, 15, 32, 183],
[57, 46, 22, 24, 128, 1, 54, 17, 37],
[65, 32, 73, 115, 28, 128, 23, 128, 205],
[40, 3, 9, 115, 51, 192, 18, 6, 223],
[87, 37, 9, 115, 59, 77, 64, 21, 47],
],
[
[104, 55, 44, 218, 9, 54, 53, 130, 226],
[64, 90, 70, 205, 40, 41, 23, 26, 57],
[54, 57, 112, 184, 5, 41, 38, 166, 213],
[30, 34, 26, 133, 152, 116, 10, 32, 134],
[39, 19, 53, 221, 26, 114, 32, 73, 255],
[31, 9, 65, 234, 2, 15, 1, 118, 73],
[75, 32, 12, 51, 192, 255, 160, 43, 51],
[88, 31, 35, 67, 102, 85, 55, 186, 85],
[56, 21, 23, 111, 59, 205, 45, 37, 192],
[55, 38, 70, 124, 73, 102, 1, 34, 98],
],
[
[125, 98, 42, 88, 104, 85, 117, 175, 82],
[95, 84, 53, 89, 128, 100, 113, 101, 45],
[75, 79, 123, 47, 51, 128, 81, 171, 1],
[57, 17, 5, 71, 102, 57, 53, 41, 49],
[38, 33, 13, 121, 57, 73, 26, 1, 85],
[41, 10, 67, 138, 77, 110, 90, 47, 114],
[115, 21, 2, 10, 102, 255, 166, 23, 6],
[101, 29, 16, 10, 85, 128, 101, 196, 26],
[57, 18, 10, 102, 102, 213, 34, 20, 43],
[117, 20, 15, 36, 163, 128, 68, 1, 26],
],
[
[102, 61, 71, 37, 34, 53, 31, 243, 192],
[69, 60, 71, 38, 73, 119, 28, 222, 37],
[68, 45, 128, 34, 1, 47, 11, 245, 171],
[62, 17, 19, 70, 146, 85, 55, 62, 70],
[37, 43, 37, 154, 100, 163, 85, 160,
1,
],
[63, 9, 92, 136, 28, 64, 32, 201, 85],
[75, 15, 9, 9, 64, 255, 184, 119, 16],
[86, 6, 28, 5, 64, 255, 25, 248, 1],
[56, 8, 17, 132, 137, 255, 55, 116, 128],
[58, 15, 20, 82, 135, 57, 26, 121, 40],
],
[
[164, 50, 31, 137, 154, 133, 25, 35, 218],
[51, 103, 44, 131, 131, 123, 31, 6, 158],
[86, 40, 64, 135, 148, 224, 45, 183, 128],
[22, 26, 17, 131, 240, 154, 14, 1, 209],
[45, 16, 21, 91, 64, 222, 7, 1, 197],
[56, 21, 39, 155, 60, 138, 23, 102, 213],
[83, 12, 13, 54, 192, 255, 68, 47, 28],
[85, 26, 85, 85, 128, 128, 32, 146, 171],
[18, 11, 7, 63, 144, 171, 4, 4, 246],
[35, 27, 10, 146, 174, 171, 12, 26, 128],
],
[
[190, 80, 35, 99, 180, 80,
126, 54, 45,
],
[85, 126, 47, 87, 176, 51, 41, 20, 32],
[101, 75, 128, 139, 118, 146, 116, 128, 85],
[56, 41, 15, 176, 236, 85, 37, 9, 62],
[71, 30, 17, 119, 118, 255, 17, 18, 138],
[101, 38, 60, 138, 55, 70, 43, 26, 142],
[146, 36, 19, 30, 171, 255, 97, 27, 20],
[138, 45, 61, 62, 219, 1, 81, 188, 64],
[32, 41, 20, 117, 151, 142, 20, 21, 163],
[112, 19, 12, 61, 195, 128, 48, 4, 24],
],
];
var If = [
[
[
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[176, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[223, 241,
252, 255, 255, 255, 255, 255, 255, 255, 255,
],
[249, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255],
[234, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 246, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[239, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[251, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[251, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 254, 253, 255, 254, 255, 255, 255, 255, 255, 255],
[250, 255, 254, 255, 254, 255, 255, 255, 255, 255, 255],
[254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
],
[
[
[217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[225, 252, 241, 253, 255, 255, 254, 255,
255, 255, 255,
],
[234, 250, 241, 250, 253, 255, 253, 254, 255, 255, 255],
],
[
[255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[223, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[238, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[249, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[247, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 253, 254, 255, 255,
255, 255, 255, 255, 255, 255,
],
[252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255],
[250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
],
],
],
[
[
[186, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255],
[234, 251, 244, 254, 255, 255, 255, 255, 255, 255, 255],
[251, 251, 243, 253, 254, 255, 254, 255, 255, 255, 255],
],
[
[255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[236, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[251, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255],
],
[
[255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255,
],
],
[
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
],
[
[
[248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[250, 254, 252, 254, 255, 255, 255, 255, 255, 255, 255],
[248, 254, 249, 253, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255],
[246, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255],
[252, 254, 251, 254, 254, 255, 255, 255, 255, 255, 255],
],
[
[255, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255],
[248, 254, 253, 255, 255, 255,
255, 255, 255, 255, 255,
],
[253, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[245, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 251, 253, 255, 255, 255, 255, 255, 255, 255, 255],
[252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[249, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 255, 253,
255, 255, 255, 255, 255, 255, 255, 255,
],
[250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
[
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
[255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],
],
],
];
this.WebPGetDecoderVersion = this.Ld = function () {
return 512;
};
var Nc = [0, 1, 2, 3, 6, 4, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 0];
var Jf = [
[173, 148, 140, 0],
[176, 155, 140, 135, 0],
[180, 157, 141, 134, 130, 0],
[254, 254, 243, 230, 196, 177, 153, 140, 133, 130, 129, 0],
];
var Kf = [0, 1, 4, 8, 5, 2, 3, 6,
9, 12, 13, 10, 7, 11, 14, 15,
];
var Tf = md([Kc, Lc], '');
U(4, x);
var vc = [
[0, 0, 0, 0],
[1, 0, 0, 0],
[0, 1, 0, 0],
[1, 1, 0, 0],
[0, 0, 1, 0],
[1, 0, 1, 0],
[0, 1, 1, 0],
[1, 1, 1, 0],
[0, 0, 0, 1],
[1, 0, 0, 1],
[0, 1, 0, 1],
[1, 1, 0, 1],
[0, 0, 1, 1],
[1, 0, 1, 1],
[0, 1, 1, 1],
[1, 1, 1, 1],
];
var Lf = 134480385;
var ea = 16;
var J = -227;
var dd = 482;
var Ce = [Wc, function (a) {
return a;
}, function (a, b, c) {
return b[c + 0];
}, function (a, b, c) {
return b[c + 1];
}, function (a, b, c) {
return b[c - 1];
}, function (a, b, c) {
return ka(ka(a, b[c + 1]), b[c + 0]);
}, function (a, b, c) {
return ka(a, b[c - 1]);
}, function (a, b, c) {
return ka(a, b[c + 0]);
}, function (a,
b, c) {
return ka(b[c - 1], b[c + 0]);
}, function (a, b, c) {
return ka(b[c + 0], b[c + 1]);
}, function (a, b, c) {
return ka(ka(a, b[c - 1]), ka(b[c + 0], b[c + 1]));
}, function (a, b, c) {
return Math.abs((a >> 24 & 255) - (b[c - 1] >> 24 & 255)) - Math.abs((b[c + 0] >> 24 & 255) - (b[c - 1] >> 24 & 255)) + (Math.abs((a >> 16 & 255) - (b[c - 1] >> 16 & 255)) - Math.abs((b[c + 0] >> 16 & 255) - (b[c - 1] >> 16 & 255))) + (Math.abs((a >> 8 & 255) - (b[c - 1] >> 8 & 255)) - Math.abs((b[c + 0] >> 8 & 255) - (b[c - 1] >> 8 & 255))) + (Math.abs((a & 255) - (b[c - 1] & 255)) - Math.abs((b[c + 0] & 255) - (b[c - 1] & 255))) <= 0 ? b[c + 0] : a;
}, function (a, b, c) {
return ($a((a
>> 24 & 255) + (b[c + 0] >> 24 & 255) - (b[c - 1] >> 24 & 255)) << 24 | $a((a >> 16 & 255) + (b[c + 0] >> 16 & 255) - (b[c - 1] >> 16 & 255)) << 16 | $a((a >> 8 & 255) + (b[c + 0] >> 8 & 255) - (b[c - 1] >> 8 & 255)) << 8 | $a((a & 255) + (b[c + 0] & 255) - (b[c - 1] & 255))) >>> 0;
}, function (a, b, c) {
const d = b[c - 1];
a = ka(a, b[c + 0]);
return (yb(a >> 24 & 255, d >> 24 & 255) << 24 | yb(a >> 16 & 255, d >> 16 & 255) << 16 | yb(a >> 8 & 255, d >> 8 & 255) << 8 | yb(a >> 0 & 255, d >> 0 & 255)) >>> 0;
}, Wc, Wc];
var Xf = {
Cc: x,
Bc: x,
Kc: x,
};
var $c = 16;
var Me = 16;
var kg = 16;
var mg = [2, 3, 7];
var lg = [3, 3, 11];
var Zf = 0;
var $f = 1;
var ag = 2;
var bg = 3;
var cg = 4;
var hg = [Ba + Ge, Ba, Ba, Ba, 40];
var Ke = 19;
var ig = [17, 18, 0, 1, 2, 3, 4, 5, 16,
6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
];
var He = 120;
var dg = [24, 7, 23, 25, 40, 6, 39, 41, 22, 26, 38, 42, 56, 5, 55, 57, 21, 27, 54, 58, 37, 43, 72, 4, 71, 73, 20, 28, 53, 59, 70, 74, 36, 44, 88, 69, 75, 52, 60, 3, 87, 89, 19, 29, 86, 90, 35, 45, 68, 76, 85, 91, 51, 61, 104, 2, 103, 105, 18, 30, 102, 106, 34, 46, 84, 92, 67, 77, 101, 107, 50, 62, 120, 1, 119, 121, 83, 93, 17, 31, 100, 108, 66, 78, 118, 122, 33, 47, 117, 123, 49, 63, 99, 109, 82, 94, 0, 116, 124, 65, 79, 16, 32, 98, 110, 48, 115, 125, 81, 95, 64, 114, 126, 97, 111, 80, 113, 127, 96, 112];
var Jb = 1 << ea - 1;
var Za = U(256, 0);
var xb = U(256, 0);
var vb = U(256, la);
var wb = U(256, la);
var ia = U(dd - J, x);
var Hb = U(dd
- J, x);
var Xe = 0;
var V = Array(Cc);
var vg = [function (a, b, c, d, e, f, k, h, n, l, m, t, q) {
Ca(a, b, c, d, e, f, k, h, n, l, m, t, q, hc, 3);
}, Se, function (a, b, c, d, e, f, k, h, n, l, m, t, q) {
Ca(a, b, c, d, e, f, k, h, n, l, m, t, q, Vc, 3);
}, Te, Ue, Ve, function (a, b, c, d, e, f, k, h, n, l, m, t, q) {
Ca(a, b, c, d, e, f, k, h, n, l, m, t, q, le, 2);
}, Se, Te, Ue, Ve];
this.Hd = function (a, b, c, d) {
return lb(Qa, a, b, c, d);
};
this.Id = function (a, b, c, d) {
return lb(jb, a, b, c, d);
};
this.Jd = function (a, b, c, d) {
return lb(kb, a, b, c, d);
};
this.Ed = function (a, b, c, d) {
return lb(Ab, a, b, c, d);
};
this.Fd = function (a, b, c, d) {
return lb(Zc,
a, b, c, d);
};
this.Gd = function (a, b, c, d) {
return lb(Pa, a, b, c, d);
};
this.WebPDecode = this.Dd = function (a, b, c) {
const d = M(df);
let e = 'VP8StatusCode';
if (c == p) return ta;
e = hd(a, [0], [b], c.input);
if (e != L) return e == Z ? W : e;
d.j = c.j;
d.Qa = c.Qa;
return e = cf(a, 0, [b], d);
};
};