function I()

in src/core/lib/gif.worker.js [166:255]


      function I() {
        o = [], q = new Int32Array(256), t = new Int32Array(a), y = new Int32Array(a), z = new Int32Array(a >> 3);var c, d;for (c = 0; c < a; c++) {
          d = (c << b + 8) / a, o[c] = new Float64Array([d, d, d, 0]), y[c] = e / a, t[c] = 0;
        }
      }function J() {
        for (var c = 0; c < a; c++) {
          o[c][0] >>= b, o[c][1] >>= b, o[c][2] >>= b, o[c][3] = c;
        }
      }function K(b, a, c, e, f) {
        o[a][0] -= b * (o[a][0] - c) / d, o[a][1] -= b * (o[a][1] - e) / d, o[a][2] -= b * (o[a][2] - f) / d;
      }function L(j, e, n, l, k) {
        var h = Math.abs(e - j),
            i = Math.min(e + j, a),
            g = e + 1,
            f = e - 1,
            m = 1,
            b,
            d;while (g < i || f > h) {
          d = z[m++], g < i && (b = o[g++], b[0] -= d * (b[0] - n) / c, b[1] -= d * (b[1] - l) / c, b[2] -= d * (b[2] - k) / c), f > h && (b = o[f--], b[0] -= d * (b[0] - n) / c, b[1] -= d * (b[1] - l) / c, b[2] -= d * (b[2] - k) / c);
        }
      }function C(p, s, q) {
        var h = 2147483647,
            k = h,
            d = -1,
            m = d,
            c,
            j,
            e,
            n,
            l;for (c = 0; c < a; c++) {
          j = o[c], e = Math.abs(j[0] - p) + Math.abs(j[1] - s) + Math.abs(j[2] - q), e < h && (h = e, d = c), n = e - (t[c] >> i - b), n < k && (k = n, m = c), l = y[c] >> g, y[c] -= l, t[c] += l << f;
        }return y[d] += x, t[d] -= r, m;
      }function D() {
        var d,
            b,
            e,
            c,
            h,
            g,
            f = 0,
            i = 0;for (d = 0; d < a; d++) {
          for (e = o[d], h = d, g = e[1], b = d + 1; b < a; b++) {
            c = o[b], c[1] < g && (h = b, g = c[1]);
          }if (c = o[h], d != h && (b = c[0], c[0] = e[0], e[0] = b, b = c[1], c[1] = e[1], e[1] = b, b = c[2], c[2] = e[2], e[2] = b, b = c[3], c[3] = e[3], e[3] = b), g != f) {
            for (q[f] = i + d >> 1, b = f + 1; b < g; b++) {
              q[b] = d;
            }f = g, i = d;
          }
        }for (q[f] = i + n >> 1, b = f + 1; b < 256; b++) {
          q[b] = n;
        }
      }function E(j, i, k) {
        var b,
            d,
            c,
            e = 1e3,
            h = -1,
            f = q[i],
            g = f - 1;while (f < a || g >= 0) {
          f < a && (d = o[f], c = d[1] - i, c >= e ? f = a : (f++, c < 0 && (c = -c), b = d[0] - j, b < 0 && (b = -b), c += b, c < e && (b = d[2] - k, b < 0 && (b = -b), c += b, c < e && (e = c, h = d[3])))), g >= 0 && (d = o[g], c = i - d[1], c >= e ? g = -1 : (g--, c < 0 && (c = -c), b = d[0] - j, b < 0 && (b = -b), c += b, c < e && (b = d[2] - k, b < 0 && (b = -b), c += b, c < e && (e = c, h = d[3]))));
        }return h;
      }function F() {
        var c,
            f = A.length,
            D = 30 + (B - 1) / 3,
            y = f / (3 * B),
            q = ~~(y / w),
            n = d,
            o = u,
            a = o >> h;for (a <= 1 && (a = 0), c = 0; c < a; c++) {
          z[c] = n * ((a * a - c * c) * m / (a * a));
        }var i;f < s ? (B = 1, i = 3) : f % l !== 0 ? i = 3 * l : f % k !== 0 ? i = 3 * k : f % p !== 0 ? i = 3 * p : i = 3 * j;var r,
            t,
            x,
            e,
            g = 0;c = 0;while (c < y) {
          if (r = (A[g] & 255) << b, t = (A[g + 1] & 255) << b, x = (A[g + 2] & 255) << b, e = C(r, t, x), K(n, e, r, t, x), a !== 0 && L(a, e, r, t, x), g += i, g >= f && (g -= f), c++, q === 0 && (q = 1), c % q === 0) for (n -= n / D, o -= o / v, a = o >> h, a <= 1 && (a = 0), e = 0; e < a; e++) {
            z[e] = n * ((a * a - e * e) * m / (a * a));
          }
        }
      }function G() {
        I(), F(), J(), D();
      }function H() {
        var b = [],
            g = [];for (var c = 0; c < a; c++) {
          g[o[c][3]] = c;
        }var d = 0;for (var e = 0; e < a; e++) {
          var f = g[e];b[d++] = o[f][0], b[d++] = o[f][1], b[d++] = o[f][2];
        }return b;
      }var o, q, t, y, z;this.buildColormap = G, this.getColormap = H, this.lookupRGB = E;