Advertisement
Guest User

kitkat.min.js

a guest
Oct 16th, 2013
267
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function () {
  2.  
  3.     var k = void 0,
  4.         l = !0,
  5.         n = null,
  6.         p = !1,
  7.         r, s = this;
  8.  
  9.     function aa(a, b) {
  10.         var c = a.split("."),
  11.             d = s;
  12.         !(c[0] in d) && d.execScript && d.execScript("var " + c[0]);
  13.         for (var f; c.length && (f = c.shift());)!c.length && b !== k ? d[f] = b : d = d[f] ? d[f] : d[f] = {}
  14.     }
  15.  
  16.     function ba(a) {
  17.         var b = typeof a;
  18.         if ("object" == b)
  19.             if (a) {
  20.                 if (a instanceof Array) return "array";
  21.                 if (a instanceof Object) return b;
  22.                 var c = Object.prototype.toString.call(a);
  23.                 if ("[object Window]" == c) return "object";
  24.                 if ("[object Array]" == c || "number" == typeof a.length && "undefined" != typeof a.splice && "undefined" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable("splice")) return "array";
  25.                 if ("[object Function]" == c || "undefined" != typeof a.call && "undefined" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable("call")) return "function"
  26.             } else return "null";
  27.             else if ("function" == b && "undefined" == typeof a.call) return "object";
  28.         return b
  29.     }
  30.  
  31.     function t(a) {
  32.         return "string" == typeof a
  33.     }
  34.  
  35.     function ca(a) {
  36.         return "function" == ba(a)
  37.     }
  38.  
  39.     function u(a) {
  40.         return a[da] || (a[da] = ++ea)
  41.     }
  42.     var da = "closure_uid_" + (1E9 * Math.random() >>> 0),
  43.         ea = 0;
  44.  
  45.     function fa(a, b, c) {
  46.         return a.call.apply(a.bind, arguments)
  47.     }
  48.  
  49.     function ga(a, b, c) {
  50.         if (!a) throw Error();
  51.         if (2 < arguments.length) {
  52.             var d = Array.prototype.slice.call(arguments, 2);
  53.             return function () {
  54.                 var c = Array.prototype.slice.call(arguments);
  55.                 Array.prototype.unshift.apply(c, d);
  56.                 return a.apply(b, c)
  57.             }
  58.         }
  59.         return function () {
  60.             return a.apply(b, arguments)
  61.         }
  62.     }
  63.  
  64.     function v(a, b, c) {
  65.         v = Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf("native code") ? fa : ga;
  66.         return v.apply(n, arguments)
  67.     }
  68.  
  69.     function ha(a, b) {
  70.         var c = Array.prototype.slice.call(arguments, 1);
  71.         return function () {
  72.             var b = Array.prototype.slice.call(arguments);
  73.             b.unshift.apply(b, c);
  74.             return a.apply(this, b)
  75.         }
  76.     }
  77.     var ia = Date.now || function () {
  78.             return +new Date
  79.         };
  80.  
  81.     function x(a, b) {
  82.         function c() {}
  83.         c.prototype = b.prototype;
  84.         a.wa = b.prototype;
  85.         a.prototype = new c
  86.     }
  87.     Function.prototype.bind = Function.prototype.bind || function (a, b) {
  88.         if (1 < arguments.length) {
  89.             var c = Array.prototype.slice.call(arguments, 1);
  90.             c.unshift(this, a);
  91.             return v.apply(n, c)
  92.         }
  93.         return v(this, a)
  94.     };
  95.  
  96.     function ja(a) {
  97.         return String(a).replace(/\-([a-z])/g, function (a, c) {
  98.             return c.toUpperCase()
  99.         })
  100.     }
  101.  
  102.     function ka(a) {
  103.         var b = t(k) ? "undefined".replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g, "\\$1").replace(/\x08/g, "\\x08") : "\\s";
  104.         return a.replace(RegExp("(^" + (b ? "|[" + b + "]+" : "") + ")([a-z])", "g"), function (a, b, f) {
  105.             return b + f.toUpperCase()
  106.         })
  107.     };
  108.     var y = Array.prototype,
  109.         la = y.indexOf ? function (a, b, c) {
  110.             return y.indexOf.call(a, b, c)
  111.         } : function (a, b, c) {
  112.             c = c == n ? 0 : 0 > c ? Math.max(0, a.length + c) : c;
  113.             if (t(a)) return !t(b) || 1 != b.length ? -1 : a.indexOf(b, c);
  114.             for (; c < a.length; c++)
  115.                 if (c in a && a[c] === b) return c;
  116.             return -1
  117.         }, ma = y.forEach ? function (a, b, c) {
  118.             y.forEach.call(a, b, c)
  119.         } : function (a, b, c) {
  120.             for (var d = a.length, f = t(a) ? a.split("") : a, e = 0; e < d; e++) e in f && b.call(c, f[e], e, a)
  121.         }, na = y.filter ? function (a, b, c) {
  122.             return y.filter.call(a, b, c)
  123.         } : function (a, b, c) {
  124.             for (var d = a.length, f = [], e = 0, g = t(a) ?
  125.                     a.split("") : a, h = 0; h < d; h++)
  126.                 if (h in g) {
  127.                     var m = g[h];
  128.                     b.call(c, m, h, a) && (f[e++] = m)
  129.                 }
  130.             return f
  131.         };
  132.  
  133.     function z(a, b) {
  134.         return 0 <= la(a, b)
  135.     }
  136.  
  137.     function oa(a, b) {
  138.         var c = la(a, b),
  139.             d;
  140.         (d = 0 <= c) && y.splice.call(a, c, 1);
  141.         return d
  142.     }
  143.  
  144.     function pa(a, b, c) {
  145.         return 2 >= arguments.length ? y.slice.call(a, b) : y.slice.call(a, b, c)
  146.     };
  147.     var A, qa, ra, sa, ta, ua, B;
  148.  
  149.     function va() {
  150.         return s.navigator ? s.navigator.userAgent : n
  151.     }
  152.     ta = sa = ra = qa = A = p;
  153.     var wa;
  154.     if (wa = va()) {
  155.         var xa = s.navigator;
  156.         A = 0 == wa.indexOf("Opera");
  157.         qa = !A && -1 != wa.indexOf("MSIE");
  158.         sa = (ra = !A && -1 != wa.indexOf("WebKit")) && -1 != wa.indexOf("Mobile");
  159.         ta = !A && !ra && "Gecko" == xa.product
  160.     }
  161.     var ya = A,
  162.         C = qa,
  163.         D = ta,
  164.         E = ra,
  165.         za = sa,
  166.         Aa = s.navigator;
  167.     ua = -1 != (Aa && Aa.platform || "").indexOf("Mac");
  168.     var Ba = va();
  169.     B = !! Ba && 0 <= Ba.indexOf("Android");
  170.     var Ca = !! Ba && 0 <= Ba.indexOf("iPad");
  171.  
  172.     function Da() {
  173.         var a = s.document;
  174.         return a ? a.documentMode : k
  175.     }
  176.     var Ea;
  177.     a: {
  178.         var Fa = "",
  179.             Ga;
  180.         if (ya && s.opera) var Ha = s.opera.version,
  181.         Fa = "function" == typeof Ha ? Ha() : Ha;
  182.         else if (D ? Ga = /rv\:([^\);]+)(\)|;)/ : C ? Ga = /MSIE\s+([^\);]+)(\)|;)/ : E && (Ga = /WebKit\/(\S+)/), Ga) var Ia = Ga.exec(va()),
  183.         Fa = Ia ? Ia[1] : "";
  184.         if (C) {
  185.             var Ja = Da();
  186.             if (Ja > parseFloat(Fa)) {
  187.                 Ea = String(Ja);
  188.                 break a
  189.             }
  190.         }
  191.         Ea = Fa
  192.     }
  193.     var Ka = {};
  194.  
  195.     function F(a) {
  196.         var b;
  197.         if (!(b = Ka[a])) {
  198.             b = 0;
  199.             for (var c = String(Ea).replace(/^[\s\xa0]+|[\s\xa0]+$/g, "").split("."), d = String(a).replace(/^[\s\xa0]+|[\s\xa0]+$/g, "").split("."), f = Math.max(c.length, d.length), e = 0; 0 == b && e < f; e++) {
  200.                 var g = c[e] || "",
  201.                     h = d[e] || "",
  202.                     m = RegExp("(\\d*)(\\D*)", "g"),
  203.                     T = RegExp("(\\d*)(\\D*)", "g");
  204.                 do {
  205.                     var q = m.exec(g) || ["", "", ""],
  206.                         w = T.exec(h) || ["", "", ""];
  207.                     if (0 == q[0].length && 0 == w[0].length) break;
  208.                     b = ((0 == q[1].length ? 0 : parseInt(q[1], 10)) < (0 == w[1].length ? 0 : parseInt(w[1], 10)) ? -1 : (0 == q[1].length ? 0 : parseInt(q[1],
  209.                         10)) > (0 == w[1].length ? 0 : parseInt(w[1], 10)) ? 1 : 0) || ((0 == q[2].length) < (0 == w[2].length) ? -1 : (0 == q[2].length) > (0 == w[2].length) ? 1 : 0) || (q[2] < w[2] ? -1 : q[2] > w[2] ? 1 : 0)
  210.                 } while (0 == b)
  211.             }
  212.             b = Ka[a] = 0 <= b
  213.         }
  214.         return b
  215.     }
  216.     var La = s.document,
  217.         Ma = !La || !C ? k : Da() || ("CSS1Compat" == La.compatMode ? parseInt(Ea, 10) : 5);
  218.     var Na;
  219.     !D && !C || C && C && 9 <= Ma || D && F("1.9.1");
  220.     C && F("9");
  221.  
  222.     function Oa(a) {
  223.         a = a.className;
  224.         return t(a) && a.match(/\S+/g) || []
  225.     }
  226.  
  227.     function G(a, b) {
  228.         for (var c = Oa(a), d = pa(arguments, 1), f = c, e = 0; e < d.length; e++) z(f, d[e]) || f.push(d[e]);
  229.         a.className = c.join(" ")
  230.     }
  231.  
  232.     function Pa(a, b) {
  233.         var c = Oa(a),
  234.             d = pa(arguments, 1),
  235.             c = Qa(c, d);
  236.         a.className = c.join(" ")
  237.     }
  238.  
  239.     function Qa(a, b) {
  240.         return na(a, function (a) {
  241.             return !z(b, a)
  242.         })
  243.     };
  244.  
  245.     function H(a, b) {
  246.         this.x = a !== k ? a : 0;
  247.         this.y = b !== k ? b : 0
  248.     }
  249.     H.prototype.toString = function () {
  250.         return "(" + this.x + ", " + this.y + ")"
  251.     };
  252.     H.prototype.floor = function () {
  253.         this.x = Math.floor(this.x);
  254.         this.y = Math.floor(this.y);
  255.         return this
  256.     };
  257.     H.prototype.round = function () {
  258.         this.x = Math.round(this.x);
  259.         this.y = Math.round(this.y);
  260.         return this
  261.     };
  262.  
  263.     function J(a, b) {
  264.         this.width = a;
  265.         this.height = b
  266.     }
  267.     J.prototype.toString = function () {
  268.         return "(" + this.width + " x " + this.height + ")"
  269.     };
  270.     J.prototype.floor = function () {
  271.         this.width = Math.floor(this.width);
  272.         this.height = Math.floor(this.height);
  273.         return this
  274.     };
  275.     J.prototype.round = function () {
  276.         this.width = Math.round(this.width);
  277.         this.height = Math.round(this.height);
  278.         return this
  279.     };
  280.  
  281.     function Ra(a, b) {
  282.         for (var c in a) b.call(k, a[c], c, a)
  283.     }
  284.  
  285.     function Sa() {
  286.         var a = Ta,
  287.             b;
  288.         for (b in a) return p;
  289.         return l
  290.     }
  291.     var Ua = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");
  292.  
  293.     function Va(a, b) {
  294.         for (var c, d, f = 1; f < arguments.length; f++) {
  295.             d = arguments[f];
  296.             for (c in d) a[c] = d[c];
  297.             for (var e = 0; e < Ua.length; e++) c = Ua[e], Object.prototype.hasOwnProperty.call(d, c) && (a[c] = d[c])
  298.         }
  299.     };
  300.  
  301.     function K(a) {
  302.         return t(a) ? document.getElementById(a) : a
  303.     }
  304.  
  305.     function Wa(a, b) {
  306.         var c = b || document;
  307.         return c.querySelectorAll && c.querySelector ? c.querySelectorAll("." + a) : c.getElementsByClassName ? c.getElementsByClassName(a) : Xa(a, b)
  308.     }
  309.  
  310.     function L(a, b) {
  311.         var c = b || document,
  312.             d = n;
  313.         return (d = c.querySelectorAll && c.querySelector ? c.querySelector("." + a) : Wa(a, b)[0]) || n
  314.     }
  315.  
  316.     function Xa(a, b) {
  317.         var c, d, f, e;
  318.         c = document;
  319.         c = b || c;
  320.         if (c.querySelectorAll && c.querySelector && a) return c.querySelectorAll("" + (a ? "." + a : ""));
  321.         if (a && c.getElementsByClassName) {
  322.             var g = c.getElementsByClassName(a);
  323.             return g
  324.         }
  325.         g = c.getElementsByTagName("*");
  326.         if (a) {
  327.             e = {};
  328.             for (d = f = 0; c = g[d]; d++) {
  329.                 var h = c.className;
  330.                 "function" == typeof h.split && z(h.split(/\s+/), a) && (e[f++] = c)
  331.             }
  332.             e.length = f;
  333.             return e
  334.         }
  335.         return g
  336.     }
  337.  
  338.     function M() {
  339.         var a = window.document,
  340.             a = "CSS1Compat" == a.compatMode ? a.documentElement : a.body;
  341.         return new J(a.clientWidth, a.clientHeight)
  342.     }
  343.  
  344.     function N(a) {
  345.         return 9 == a.nodeType ? a : a.ownerDocument || a.document
  346.     }
  347.  
  348.     function O(a, b) {
  349.         if (!b) return n;
  350.         var c = b ? b.toUpperCase() : n;
  351.         return Ya(a, function (a) {
  352.             return (!c || a.nodeName == c) && l
  353.         })
  354.     }
  355.  
  356.     function Ya(a, b) {
  357.         for (var c = 0; a;) {
  358.             if (b(a)) return a;
  359.             a = a.parentNode;
  360.             c++
  361.         }
  362.         return n
  363.     }
  364.  
  365.     function Za(a) {
  366.         this.L = a || s.document || document
  367.     };
  368.  
  369.     function P(a, b, c) {
  370.         t(b) ? $a(a, c, b) : Ra(b, ha($a, a))
  371.     }
  372.  
  373.     function $a(a, b, c) {
  374.         var d;
  375.         a: if (d = ja(c), a.style[d] === k && (c = (E ? "Webkit" : D ? "Moz" : C ? "ms" : ya ? "O" : n) + ka(c), a.style[c] !== k)) {
  376.             d = c;
  377.             break a
  378.         }
  379.         d && (a.style[d] = b)
  380.     }
  381.  
  382.     function ab(a, b) {
  383.         var c;
  384.         a: {
  385.             c = N(a);
  386.             if (c.defaultView && c.defaultView.getComputedStyle && (c = c.defaultView.getComputedStyle(a, n))) {
  387.                 c = c[b] || c.getPropertyValue(b) || "";
  388.                 break a
  389.             }
  390.             c = ""
  391.         }
  392.         return c || (a.currentStyle ? a.currentStyle[b] : n) || a.style && a.style[b]
  393.     }
  394.  
  395.     function bb(a) {
  396.         var b = a.getBoundingClientRect();
  397.         C && (a = a.ownerDocument, b.left -= a.documentElement.clientLeft + a.body.clientLeft, b.top -= a.documentElement.clientTop + a.body.clientTop);
  398.         return b
  399.     }
  400.  
  401.     function cb(a) {
  402.         if (C && !(C && 8 <= Ma)) return a.offsetParent;
  403.         var b = N(a),
  404.             c = ab(a, "position"),
  405.             d = "fixed" == c || "absolute" == c;
  406.         for (a = a.parentNode; a && a != b; a = a.parentNode)
  407.             if (c = ab(a, "position"), d = d && "static" == c && a != b.documentElement && a != b.body, !d && (a.scrollWidth > a.clientWidth || a.scrollHeight > a.clientHeight || "fixed" == c || "absolute" == c || "relative" == c)) return a;
  408.         return n
  409.     }
  410.  
  411.     function Q(a) {
  412.         var b, c = N(a),
  413.             d = ab(a, "position"),
  414.             f = D && c.getBoxObjectFor && !a.getBoundingClientRect && "absolute" == d && (b = c.getBoxObjectFor(a)) && (0 > b.screenX || 0 > b.screenY),
  415.             e = new H(0, 0),
  416.             g;
  417.         b = c ? N(c) : document;
  418.         if (g = C)
  419.             if (g = !(C && 9 <= Ma)) g = "CSS1Compat" != (b ? new Za(N(b)) : Na || (Na = new Za)).L.compatMode;
  420.         g = g ? b.body : b.documentElement;
  421.         if (a == g) return e;
  422.         if (a.getBoundingClientRect) b = bb(a), c = (c ? new Za(N(c)) : Na || (Na = new Za)).L, a = !E && "CSS1Compat" == c.compatMode ? c.documentElement : c.body, c = c.parentWindow || c.defaultView, a = C && F("10") &&
  423.             c.pageYOffset != a.scrollTop ? new H(a.scrollLeft, a.scrollTop) : new H(c.pageXOffset || a.scrollLeft, c.pageYOffset || a.scrollTop), e.x = b.left + a.x, e.y = b.top + a.y;
  424.         else if (c.getBoxObjectFor && !f) b = c.getBoxObjectFor(a), a = c.getBoxObjectFor(g), e.x = b.screenX - a.screenX, e.y = b.screenY - a.screenY;
  425.         else {
  426.             b = a;
  427.             do {
  428.                 e.x += b.offsetLeft;
  429.                 e.y += b.offsetTop;
  430.                 b != a && (e.x += b.clientLeft || 0, e.y += b.clientTop || 0);
  431.                 if (E && "fixed" == ab(b, "position")) {
  432.                     e.x += c.body.scrollLeft;
  433.                     e.y += c.body.scrollTop;
  434.                     break
  435.                 }
  436.                 b = b.offsetParent
  437.             } while (b && b != a);
  438.             if (ya || E && "absolute" ==
  439.                 d) e.y -= c.body.offsetTop;
  440.             for (b = a;
  441.                 (b = cb(b)) && b != c.body && b != g;)
  442.                 if (e.x -= b.scrollLeft, !ya || "TR" != b.tagName) e.y -= b.scrollTop
  443.         }
  444.         return e
  445.     }
  446.  
  447.     function R(a) {
  448.         if ("none" != ab(a, "display")) return db(a);
  449.         var b = a.style,
  450.             c = b.display,
  451.             d = b.visibility,
  452.             f = b.position;
  453.         b.visibility = "hidden";
  454.         b.position = "absolute";
  455.         b.display = "inline";
  456.         a = db(a);
  457.         b.display = c;
  458.         b.position = f;
  459.         b.visibility = d;
  460.         return a
  461.     }
  462.  
  463.     function db(a) {
  464.         var b = a.offsetWidth,
  465.             c = a.offsetHeight,
  466.             d = E && !b && !c;
  467.         return (b === k || d) && a.getBoundingClientRect ? (a = bb(a), new J(a.right - a.left, a.bottom - a.top)) : new J(b, c)
  468.     };
  469.     var eb = !C || C && 9 <= Ma,
  470.         fb = C && !F("9");
  471.     !E || F("528");
  472.     D && F("1.9b") || C && F("8") || ya && F("9.5") || E && F("528");
  473.     D && !F("8") || C && F("9");
  474.  
  475.     function gb() {
  476.         0 != hb && (this.ya = Error().stack, u(this))
  477.     }
  478.     var hb = 0;
  479.  
  480.     function S(a, b) {
  481.         this.type = a;
  482.         this.currentTarget = this.target = b
  483.     }
  484.     S.prototype.q = p;
  485.     S.prototype.defaultPrevented = p;
  486.     S.prototype.W = l;
  487.     S.prototype.preventDefault = function () {
  488.         this.defaultPrevented = l;
  489.         this.W = p
  490.     };
  491.  
  492.     function ib(a) {
  493.         ib[" "](a);
  494.         return a
  495.     }
  496.     ib[" "] = function () {};
  497.  
  498.     function jb(a, b) {
  499.         a && this.b(a, b)
  500.     }
  501.     x(jb, S);
  502.     r = jb.prototype;
  503.     r.target = n;
  504.     r.relatedTarget = n;
  505.     r.offsetX = 0;
  506.     r.offsetY = 0;
  507.     r.clientX = 0;
  508.     r.clientY = 0;
  509.     r.screenX = 0;
  510.     r.screenY = 0;
  511.     r.button = 0;
  512.     r.keyCode = 0;
  513.     r.charCode = 0;
  514.     r.ctrlKey = p;
  515.     r.altKey = p;
  516.     r.shiftKey = p;
  517.     r.metaKey = p;
  518.     r.ta = p;
  519.     r.P = n;
  520.     r.b = function (a, b) {
  521.         var c = this.type = a.type;
  522.         S.call(this, c);
  523.         this.target = a.target || a.srcElement;
  524.         this.currentTarget = b;
  525.         var d = a.relatedTarget;
  526.         if (d) {
  527.             if (D) {
  528.                 var f;
  529.                 a: {
  530.                     try {
  531.                         ib(d.nodeName);
  532.                         f = l;
  533.                         break a
  534.                     } catch (e) {}
  535.                     f = p
  536.                 }
  537.                 f || (d = n)
  538.             }
  539.         } else "mouseover" == c ? d = a.fromElement : "mouseout" == c && (d = a.toElement);
  540.         this.relatedTarget = d;
  541.         this.offsetX = E || a.offsetX !== k ? a.offsetX : a.layerX;
  542.         this.offsetY = E || a.offsetY !== k ? a.offsetY : a.layerY;
  543.         this.clientX = a.clientX !== k ? a.clientX : a.pageX;
  544.         this.clientY = a.clientY !== k ? a.clientY : a.pageY;
  545.         this.screenX = a.screenX ||
  546.             0;
  547.         this.screenY = a.screenY || 0;
  548.         this.button = a.button;
  549.         this.keyCode = a.keyCode || 0;
  550.         this.charCode = a.charCode || ("keypress" == c ? a.keyCode : 0);
  551.         this.ctrlKey = a.ctrlKey;
  552.         this.altKey = a.altKey;
  553.         this.shiftKey = a.shiftKey;
  554.         this.metaKey = a.metaKey;
  555.         this.ta = ua ? a.metaKey : a.ctrlKey;
  556.         this.state = a.state;
  557.         this.P = a;
  558.         a.defaultPrevented && this.preventDefault();
  559.         delete this.q
  560.     };
  561.     r.preventDefault = function () {
  562.         jb.wa.preventDefault.call(this);
  563.         var a = this.P;
  564.         if (a.preventDefault) a.preventDefault();
  565.         else if (a.returnValue = p, fb) try {
  566.             if (a.ctrlKey || 112 <= a.keyCode && 123 >= a.keyCode) a.keyCode = -1
  567.         } catch (b) {}
  568.     };
  569.     var kb = "closure_listenable_" + (1E6 * Math.random() | 0),
  570.         lb = 0;
  571.  
  572.     function mb(a, b, c, d, f, e) {
  573.         if (ca(a)) this.R = l;
  574.         else if (a && a.handleEvent && ca(a.handleEvent)) this.R = p;
  575.         else throw Error("Invalid listener argument");
  576.         this.j = a;
  577.         this.V = b;
  578.         this.src = c;
  579.         this.type = d;
  580.         this.capture = !! f;
  581.         this.D = e;
  582.         this.key = ++lb;
  583.         this.l = this.r = p
  584.     }
  585.     mb.prototype.handleEvent = function (a) {
  586.         return this.R ? this.j.call(this.D || this.src, a) : this.j.handleEvent.call(this.j, a)
  587.     };
  588.     var nb = {}, U = {}, V = {}, W = {};
  589.  
  590.     function X(a, b, c, d, f) {
  591.         if ("array" == ba(b))
  592.             for (var e = 0; e < b.length; e++) X(a, b[e], c, d, f);
  593.         else if (a && a[kb]) {
  594.             e = ob(c);
  595.             c = a.n[b] || (a.n[b] = []);
  596.             var g = pb(c, e, d, f); - 1 < g ? (a = c[g], a.r = p) : (a = new mb(e, n, a, b, !! d, f), a.r = p, c.push(a))
  597.         } else a: {
  598.             if (!b) throw Error("Invalid event type");
  599.             d = !! d;
  600.             var h = U;
  601.             b in h || (h[b] = {
  602.                 g: 0,
  603.                 k: 0
  604.             });
  605.             h = h[b];
  606.             d in h || (h[d] = {
  607.                 g: 0,
  608.                 k: 0
  609.             }, h.g++);
  610.             h = h[d];
  611.             e = u(a);
  612.             h.k++;
  613.             if (h[e])
  614.                 for (var g = h[e], m = 0; m < g.length; m++) {
  615.                     if (h = g[m], h.j == c && h.D == f) {
  616.                         if (h.l) break;
  617.                         g[m].r = p;
  618.                         break a
  619.                     }
  620.                 } else g = h[e] = [], h.g++;
  621.             m = qb();
  622.             h = new mb(c, m, a, b,
  623.                 d, f);
  624.             h.r = p;
  625.             m.src = a;
  626.             m.j = h;
  627.             g.push(h);
  628.             V[e] || (V[e] = []);
  629.             V[e].push(h);
  630.             a.addEventListener ? (a == s || !a.customEvent_) && a.addEventListener(b, m, d) : a.attachEvent(b in W ? W[b] : W[b] = "on" + b, m);
  631.             nb[h.key] = h
  632.         }
  633.     }
  634.  
  635.     function qb() {
  636.         var a = rb,
  637.             b = eb ? function (c) {
  638.                 return a.call(b.src, b.j, c)
  639.             } : function (c) {
  640.                 c = a.call(b.src, b.j, c);
  641.                 if (!c) return c
  642.             };
  643.         return b
  644.     }
  645.  
  646.     function sb(a, b, c, d, f) {
  647.         if ("array" == ba(b))
  648.             for (var e = 0; e < b.length; e++) sb(a, b[e], c, d, f);
  649.         else if (a && a[kb]) c = ob(c), b in a.n && (a = a.n[b], f = pb(a, c, d, f), -1 < f && (c = a[f], delete nb[c.key], c.l = l, y.splice.call(a, f, 1)));
  650.         else {
  651.             d = !! d;
  652.             a: {
  653.                 e = U;
  654.                 if (b in e && (e = e[b], d in e && (e = e[d], a = u(a), e[a]))) {
  655.                     a = e[a];
  656.                     break a
  657.                 }
  658.                 a = n
  659.             }
  660.             if (a)
  661.                 for (e = 0; e < a.length; e++)
  662.                     if (a[e].j == c && a[e].capture == d && a[e].D == f) {
  663.                         tb(a[e]);
  664.                         break
  665.                     }
  666.         }
  667.     }
  668.  
  669.     function tb(a) {
  670.         if ("number" != typeof a && a && !a.l) {
  671.             var b = a.src;
  672.             if (b && b[kb]) ub(b, a);
  673.             else {
  674.                 var c = a.type,
  675.                     d = a.V,
  676.                     f = a.capture;
  677.                 b.removeEventListener ? (b == s || !b.customEvent_) && b.removeEventListener(c, d, f) : b.detachEvent && b.detachEvent(c in W ? W[c] : W[c] = "on" + c, d);
  678.                 b = u(b);
  679.                 V[b] && (d = V[b], oa(d, a), 0 == d.length && delete V[b]);
  680.                 a.l = l;
  681.                 if (d = U[c][f][b]) d.T = l, vb(c, f, b, d);
  682.                 delete nb[a.key]
  683.             }
  684.         }
  685.     }
  686.  
  687.     function vb(a, b, c, d) {
  688.         if (!d.F && d.T) {
  689.             for (var f = 0, e = 0; f < d.length; f++) d[f].l ? d[f].V.src = n : (f != e && (d[e] = d[f]), e++);
  690.             d.length = e;
  691.             d.T = p;
  692.             0 == e && (delete U[a][b][c], U[a][b].g--, 0 == U[a][b].g && (delete U[a][b], U[a].g--), 0 == U[a].g && delete U[a])
  693.         }
  694.     }
  695.  
  696.     function wb(a, b, c, d, f) {
  697.         var e = 1;
  698.         b = u(b);
  699.         if (a[b]) {
  700.             var g = --a.k,
  701.                 h = a[b];
  702.             h.F ? h.F++ : h.F = 1;
  703.             try {
  704.                 for (var m = h.length, T = 0; T < m; T++) {
  705.                     var q = h[T];
  706.                     q && !q.l && (e &= xb(q, f) !== p)
  707.                 }
  708.             } finally {
  709.                 a.k = Math.max(g, a.k), h.F--, vb(c, d, b, h)
  710.             }
  711.         }
  712.         return Boolean(e)
  713.     }
  714.  
  715.     function xb(a, b) {
  716.         a.r && tb(a);
  717.         return a.handleEvent(b)
  718.     }
  719.  
  720.     function rb(a, b) {
  721.         if (a.l) return l;
  722.         var c = a.type,
  723.             d = U;
  724.         if (!(c in d)) return l;
  725.         var d = d[c],
  726.             f, e;
  727.         if (!eb) {
  728.             var g;
  729.             if (!(g = b)) a: {
  730.                 g = ["window", "event"];
  731.                 for (var h = s; f = g.shift();)
  732.                     if (h[f] != n) h = h[f];
  733.                     else {
  734.                         g = n;
  735.                         break a
  736.                     }
  737.                 g = h
  738.             }
  739.             f = g;
  740.             g = l in d;
  741.             h = p in d;
  742.             if (g) {
  743.                 if (0 > f.keyCode || f.returnValue != k) return l;
  744.                 a: {
  745.                     var m = p;
  746.                     if (0 == f.keyCode) try {
  747.                         f.keyCode = -1;
  748.                         break a
  749.                     } catch (T) {
  750.                         m = l
  751.                     }
  752.                     if (m || f.returnValue == k) f.returnValue = l
  753.                 }
  754.             }
  755.             m = new jb;
  756.             m.b(f, this);
  757.             f = l;
  758.             try {
  759.                 if (g) {
  760.                     for (var q = [], w = m.currentTarget; w; w = w.parentNode) q.push(w);
  761.                     e = d[l];
  762.                     e.k = e.g;
  763.                     for (var I = q.length -
  764.                         1; !m.q && 0 <= I && e.k; I--) m.currentTarget = q[I], f &= wb(e, q[I], c, l, m);
  765.                     if (h) {
  766.                         e = d[p];
  767.                         e.k = e.g;
  768.                         for (I = 0; !m.q && I < q.length && e.k; I++) m.currentTarget = q[I], f &= wb(e, q[I], c, p, m)
  769.                     }
  770.                 } else f = xb(a, m)
  771.             } finally {
  772.                 q && (q.length = 0)
  773.             }
  774.             return f
  775.         }
  776.         c = new jb(b, this);
  777.         return f = xb(a, c)
  778.     }
  779.     var yb = "__closure_events_fn_" + (1E9 * Math.random() >>> 0);
  780.  
  781.     function ob(a) {
  782.         return ca(a) ? a : a[yb] || (a[yb] = function (b) {
  783.             return a.handleEvent(b)
  784.         })
  785.     };
  786.  
  787.     function Y() {
  788.         gb.call(this);
  789.         this.n = {};
  790.         this.X = this
  791.     }
  792.     x(Y, gb);
  793.     Y.prototype[kb] = l;
  794.     Y.prototype.customEvent_ = l;
  795.     Y.prototype.U = n;
  796.     Y.prototype.addEventListener = function (a, b, c, d) {
  797.         X(this, a, b, c, d)
  798.     };
  799.     Y.prototype.removeEventListener = function (a, b, c, d) {
  800.         sb(this, a, b, c, d)
  801.     };
  802.     Y.prototype.dispatchEvent = function (a) {
  803.         var b, c = this.U;
  804.         if (c)
  805.             for (b = []; c; c = c.U) b.push(c);
  806.         var c = this.X,
  807.             d = a.type || a;
  808.         if (t(a)) a = new S(a, c);
  809.         else if (a instanceof S) a.target = a.target || c;
  810.         else {
  811.             var f = a;
  812.             a = new S(d, c);
  813.             Va(a, f)
  814.         }
  815.         var f = l,
  816.             e;
  817.         if (b)
  818.             for (var g = b.length - 1; !a.q && 0 <= g; g--) e = a.currentTarget = b[g], f = zb(e, d, l, a) && f;
  819.         a.q || (e = a.currentTarget = c, f = zb(e, d, l, a) && f, a.q || (f = zb(e, d, p, a) && f));
  820.         if (b)
  821.             for (g = 0; !a.q && g < b.length; g++) e = a.currentTarget = b[g], f = zb(e, d, p, a) && f;
  822.         return f
  823.     };
  824.  
  825.     function ub(a, b) {
  826.         var c = b.type;
  827.         c in a.n && oa(a.n[c], b) && (delete nb[b.key], b.l = l)
  828.     }
  829.  
  830.     function zb(a, b, c, d) {
  831.         if (!(b in a.n)) return l;
  832.         var f = l;
  833.         b = a.n[b];
  834.         var e = b.length;
  835.         if (0 < e) {
  836.             for (var g = Array(e), h = 0; h < e; h++) g[h] = b[h];
  837.             b = g
  838.         } else b = [];
  839.         for (e = 0; e < b.length; ++e)
  840.             if ((g = b[e]) && !g.l && g.capture == c) g.r && ub(a, g), f = g.handleEvent(d) !== p && f;
  841.         return f && d.W != p
  842.     }
  843.  
  844.     function pb(a, b, c, d) {
  845.         for (var f = 0; f < a.length; ++f) {
  846.             var e = a[f];
  847.             if (e.j == b && e.capture == !! c && e.D == d) return f
  848.         }
  849.         return -1
  850.     };
  851.  
  852.     function Ab() {
  853.         Y.call(this);
  854.         this.m = Bb;
  855.         this.O = this.startTime = n
  856.     }
  857.     x(Ab, Y);
  858.     var Bb = 0;
  859.     Ab.prototype.h = function (a) {
  860.         this.dispatchEvent(a)
  861.     };
  862.  
  863.     function Cb(a, b, c) {
  864.         gb.call(this);
  865.         this.S = a;
  866.         this.na = b || 0;
  867.         this.ja = c;
  868.         this.Z = v(this.ba, this)
  869.     }
  870.     x(Cb, gb);
  871.     Cb.prototype.t = 0;
  872.     Cb.prototype.start = function (a) {
  873.         this.stop();
  874.         var b = this.Z;
  875.         a = a !== k ? a : this.na;
  876.         if (!ca(b))
  877.             if (b && "function" == typeof b.handleEvent) b = v(b.handleEvent, b);
  878.             else throw Error("Invalid listener argument");
  879.         this.t = 2147483647 < a ? -1 : s.setTimeout(b, a || 0)
  880.     };
  881.     Cb.prototype.stop = function () {
  882.         0 != this.t && s.clearTimeout(this.t);
  883.         this.t = 0
  884.     };
  885.     Cb.prototype.ba = function () {
  886.         this.t = 0;
  887.         this.S && this.S.call(this.ja)
  888.     };
  889.     var Ta = {}, Db = n;
  890.  
  891.     function Eb(a) {
  892.         a = u(a);
  893.         delete Ta[a];
  894.         Sa() && Db && Db.stop()
  895.     }
  896.  
  897.     function Fb() {
  898.         Db || (Db = new Cb(function () {
  899.             Gb()
  900.         }, 20));
  901.         var a = Db;
  902.         0 != a.t || a.start()
  903.     }
  904.  
  905.     function Gb() {
  906.         var a = ia();
  907.         Ra(Ta, function (b) {
  908.             Hb(b, a)
  909.         });
  910.         Sa() || Fb()
  911.     };
  912.  
  913.     function Ib(a, b, c, d) {
  914.         Ab.call(this);
  915.         if ("array" != ba(a) || "array" != ba(b)) throw Error("Start and end parameters must be arrays");
  916.         if (a.length != b.length) throw Error("Start and end points must be the same length");
  917.         this.v = a;
  918.         this.fa = b;
  919.         this.duration = c;
  920.         this.J = d;
  921.         this.coords = [];
  922.         this.Ca = p
  923.     }
  924.     x(Ib, Ab);
  925.     r = Ib.prototype;
  926.     r.Q = 0;
  927.     r.c = 0;
  928.     r.I = n;
  929.     r.play = function (a) {
  930.         if (a || this.m == Bb) this.c = 0, this.coords = this.v;
  931.         else if (1 == this.m) return p;
  932.         Eb(this);
  933.         this.startTime = a = ia(); - 1 == this.m && (this.startTime -= this.duration * this.c);
  934.         this.O = this.startTime + this.duration;
  935.         this.I = this.startTime;
  936.         this.c || this.h("begin");
  937.         this.h("play"); - 1 == this.m && this.h("resume");
  938.         this.m = 1;
  939.         var b = u(this);
  940.         b in Ta || (Ta[b] = this);
  941.         Fb();
  942.         Hb(this, a);
  943.         return l
  944.     };
  945.     r.stop = function (a) {
  946.         Eb(this);
  947.         this.m = Bb;
  948.         a && (this.c = 1);
  949.         Jb(this, this.c);
  950.         this.h("stop");
  951.         this.h("end")
  952.     };
  953.  
  954.     function Hb(a, b) {
  955.         a.c = (b - a.startTime) / (a.O - a.startTime);
  956.         1 <= a.c && (a.c = 1);
  957.         a.Q = 1E3 / (b - a.I);
  958.         a.I = b;
  959.         Jb(a, a.c);
  960.         1 == a.c ? (a.m = Bb, Eb(a), a.h("finish"), a.h("end")) : 1 == a.m && a.h("animate")
  961.     }
  962.  
  963.     function Jb(a, b) {
  964.         ca(a.J) && (b = a.J(b));
  965.         a.coords = Array(a.v.length);
  966.         for (var c = 0; c < a.v.length; c++) a.coords[c] = (a.fa[c] - a.v[c]) * b + a.v[c]
  967.     }
  968.     r.h = function (a) {
  969.         this.dispatchEvent(new Kb(a, this))
  970.     };
  971.  
  972.     function Kb(a, b) {
  973.         S.call(this, a);
  974.         this.coords = b.coords;
  975.         this.x = b.coords[0];
  976.         this.y = b.coords[1];
  977.         this.z = b.coords[2];
  978.         this.duration = b.duration;
  979.         this.c = b.c;
  980.         this.za = b.Q;
  981.         this.state = b.m;
  982.         this.C = b
  983.     }
  984.     x(Kb, S);
  985.     var Z = {
  986.         d: {}
  987.     };
  988.     Z.d.s = function () {
  989.         return window.scrollY ? window.scrollY : document.documentElement.scrollTop
  990.     };
  991.     Z.d.ha = function () {
  992.         return window.location.protocol + "//" + window.location.host
  993.     };
  994.     Z.d.da = function (a) {
  995.         return 1 - Math.pow(1 - a, 3)
  996.     };
  997.     Z.Y = {};
  998.  
  999.     function $(a) {
  1000.         this.a = K(a);
  1001.         this.b()
  1002.     }
  1003.     $.prototype.b = function () {
  1004.         this.u = L("imagecontainer", this.a);
  1005.         this.copy = L("copy", this.a);
  1006.         this.p = 0;
  1007.         if (!za && !Ca && !B) this.f(), this.o();
  1008.         else {
  1009.             var a = R(this.u).height,
  1010.                 b = R(this.a).height,
  1011.                 a = Math.round(0 - 0.5 * (a - b));
  1012.             P(this.u, "bottom", String(a) + "px")
  1013.         }
  1014.     };
  1015.     $.prototype.f = function () {
  1016.         X(window, "scroll", this.e, p, this);
  1017.         X(window, "resize", this.o, p, this)
  1018.     };
  1019.     $.prototype.e = function () {
  1020.         var a = R(this.u).height,
  1021.             b = R(this.a).height,
  1022.             c = Z.d.s(),
  1023.             d = this.p - M().height + 60,
  1024.             f = (c - d) / (this.p + b - d);
  1025.         0 > f && (f = 0);
  1026.         1 < f && (f = 1);
  1027.         a = Math.round(0 - f * (a - b));
  1028.         a = String(a) + "px";
  1029.         c = (c - d) / (this.p - d) / 0.75;
  1030.         0 > c && (c = 0);
  1031.         1 < c && (c = 1);
  1032.         P(this.copy, {
  1033.             opacity: String(c)
  1034.         });
  1035.         P(this.u, "bottom", a)
  1036.     };
  1037.     $.prototype.o = function () {
  1038.         this.p = Q(this.a).y;
  1039.         this.e()
  1040.     };
  1041.  
  1042.     function Lb() {
  1043.         this.a = K("bucket-cta");
  1044.         this.b()
  1045.     }
  1046.     Lb.prototype.b = function () {
  1047.         this.u = L("imagecontainer", this.a);
  1048.         this.copy = L("cta", this.a);
  1049.         this.B = L("logo", this.a);
  1050.         this.xa = L("circle", this.B);
  1051.         this.ua = L("scrollme", this.a);
  1052.         this.Aa = L("android", this.B);
  1053.         this.H = !(za || Ca) && !B;
  1054.         this.f();
  1055.         this.o()
  1056.     };
  1057.     Lb.prototype.f = function () {
  1058.         X(window, "scroll", this.e, p, this);
  1059.         X(window, "resize", this.o, p, this)
  1060.     };
  1061.     Lb.prototype.o = function () {
  1062.         this.p = Q(this.a).y;
  1063.         var a = R(this.u).height,
  1064.             a = Math.round(0.15 * a + 101);
  1065.         P(this.copy, "top", String(a) + "px");
  1066.         this.e()
  1067.     };
  1068.     Lb.prototype.e = function () {
  1069.         var a = R(this.a).height,
  1070.             a = Z.d.s() / (this.p - 60 - 0.5 * a);
  1071.         0 > a && (a = 0);
  1072.         1 < a && (a = 1);
  1073.         P(this.ua, {
  1074.             opacity: String(1 - a * a),
  1075.             filter: "alpha(opacity=0)"
  1076.         })
  1077.     };
  1078.     Z.elements = {};
  1079.  
  1080.     function Mb() {
  1081.         this.a = K("header");
  1082.         this.b()
  1083.     }
  1084.     Mb.prototype.b = function () {
  1085.         this.H = !(za || Ca) && !B;
  1086.         this.ma = L("background", this.a);
  1087.         this.copy = L("headercopy", this.a);
  1088.         var a = this.a;
  1089.         !this.H ? G(a, "overridepos") : Pa(a, "overridepos")
  1090.     };
  1091.  
  1092.     function Nb() {
  1093.         this.a = K("arrow");
  1094.         this.b()
  1095.     }
  1096.     Nb.prototype.b = function () {
  1097.         (this.G = !(za || Ca) && !B) ? (this.M = K("bucket-cta"), this.f(), this.update()) : G(this.a, "forceHide")
  1098.     };
  1099.     Nb.prototype.f = function () {
  1100.         X(window, "scroll", this.update, p, this);
  1101.         X(window, "resize", this.update, p, this)
  1102.     };
  1103.     Nb.prototype.update = function () {
  1104.         var a = Z.d.s(),
  1105.             b = K("android-kitkat"),
  1106.             c = R(b).height,
  1107.             c = Q(b).y + c,
  1108.             c = M().height - (c - a - 52);
  1109.         25 < c ? P(this.a, {
  1110.             bottom: c + "px"
  1111.         }) : (b = Q(this.M).y, c = R(this.M).height, c = M().height - (b + c - a + 104), 25 <= c ? P(this.a, {
  1112.             bottom: "25px"
  1113.         }) : P(this.a, {
  1114.             bottom: Math.round(c) + "px"
  1115.         }))
  1116.     };
  1117.  
  1118.     function Ob() {
  1119.         this.a = K("timeline");
  1120.         this.A = -1;
  1121.         this.Ba = 0;
  1122.         this.i = "link-cupcake link-donut link-eclair link-froyo link-gingerbread link-honeycomb link-icecream link-jellybean link-kitkat".split(" ");
  1123.         this.b()
  1124.     }
  1125.     r = Ob.prototype;
  1126.     r.b = function () {
  1127.         if (!za && !Ca && !B) {
  1128.             var a = K("link-cupcake");
  1129.             L("dot", a) || (a.innerHTML = '<span class="dot">&nbsp;</span><a class="innerlink" href="#android-cupcake">1.5</a>');
  1130.             this.f();
  1131.             this.o()
  1132.         } else G(this.a, "forceHide")
  1133.     };
  1134.     r.f = function () {
  1135.         X(window, "resize", this.o, p, this);
  1136.         X(window, "scroll", this.e, p, this);
  1137.         for (var a = 0; a < this.i.length; a++) {
  1138.             var b = K(this.i[a]);
  1139.             X(b, "mouseout", this.ra, p, this);
  1140.             X(b, "mouseover", this.sa, p, this)
  1141.         }
  1142.     };
  1143.     r.sa = function (a) {
  1144.         a = a.target;
  1145.         "DIV" != a.tagName && O(a, "DIV") && (a = O(a, "DIV"));
  1146.         G(a, "hover")
  1147.     };
  1148.     r.ra = function (a) {
  1149.         a = a.target;
  1150.         "DIV" != a.tagName && O(a, "DIV") && (a = O(a, "DIV"));
  1151.         Pa(a, "hover")
  1152.     };
  1153.     r.o = function () {
  1154.         for (var a = 0; a < this.i.length; a++) P(K(this.i[a]), "bottom", String(400 - 50 * a) + "px");
  1155.         this.e()
  1156.     };
  1157.     r.e = function () {
  1158.         var a = Q(K("android-cupcake")).y,
  1159.             b = K("android-kitkat"),
  1160.             c = R(b).height,
  1161.             b = Q(b).y,
  1162.             d = Z.d.s(),
  1163.             f = 0.5 * (M().height - 400),
  1164.             e = M().height + d - a; - 400 + e - 70 < f && (f = -400 + e - 70);
  1165.         c = M().height - (b + c - d);
  1166.         c + 70 > f && (f = c + 70);
  1167.         P(this.a, "bottom", String(f) + "px");
  1168.         c = (d - a + 70) / (b - a);
  1169.         a = p;
  1170.         0 > c && (c = 0, a = l);
  1171.         1 < c && (c = 1);
  1172.         this.A = c = Math.floor(c / 0.125);
  1173.         for (b = 0; b < this.i.length; b++) d = K(this.i[b]), b == c ? G(d, "active") : Pa(d, "active");
  1174.         a && (this.A = -1)
  1175.     };
  1176.  
  1177.     function Pb() {}
  1178.     r = Pb.prototype;
  1179.     r.b = function () {
  1180.         this.C = n;
  1181.         this.N = K("checkbutton");
  1182.         this.$ = new Lb;
  1183.         this.K = new Nb;
  1184.         this.ka = new Mb;
  1185.         this.aa = new $("android-cupcake");
  1186.         this.ca = new $("android-donut");
  1187.         this.ea = new $("android-eclair");
  1188.         this.ga = new $("android-froyo");
  1189.         this.ia = new $("android-gingerbread");
  1190.         this.B = new $("android-honeycomb");
  1191.         this.la = new $("android-icecream");
  1192.         this.oa = new $("android-jellybean");
  1193.         this.pa = new $("android-kitkat");
  1194.         this.Y = [this.aa, this.ca, this.ea, this.ga, this.ia, this.B, this.la, this.oa, this.pa];
  1195.         this.w = new Ob;
  1196.         this.f();
  1197.         Qb()
  1198.     };
  1199.     r.f = function () {
  1200.         X(document, "click", this.qa, p, this);
  1201.         X(window, "scroll", this.e, p, this)
  1202.     };
  1203.  
  1204.     function Qb() {
  1205.         var a = Wa("comingsoon-launched"),
  1206.             b = Wa("comingsoon-countdown");
  1207.         if (0 < a.length) {
  1208.             var c = a[0].getAttribute("data-date").replace(/[^0-9]/g, ""),
  1209.                 d = a[0].getAttribute("data-time").replace(/[^0-9]/g, ""),
  1210.                 f = new Date,
  1211.                 e = f.getUTCMonth() + 1,
  1212.                 g = f.getUTCDate(),
  1213.                 h = f.getUTCHours(),
  1214.                 m = f.getUTCMinutes(),
  1215.                 f = "" + f.getUTCFullYear(),
  1216.                 f = f + (10 > e ? "0" + e : e) + (10 > g ? "0" + g : g),
  1217.                 f = f + (10 > h ? "0" + h : h),
  1218.                 f = f + (10 > m ? "0" + m : m);
  1219.             (c = 1 * f >= 1 * (c + d)) && ma(a, function (a) {
  1220.                     G(a, "comingsoon-visible")
  1221.                 });
  1222.             c || ma(b, function (a) {
  1223.                 G(a, "comingsoon-visible")
  1224.             })
  1225.         }
  1226.     }
  1227.     r.e = function () {
  1228.         var a = Z.d.s() / (this.$.p - 60);
  1229.         1 < a && (a = 1);
  1230.         var b = this.ka,
  1231.             c = 1 - 0.5 * a;
  1232.         if (b.H) {
  1233.             var d = "alpha(opacity=" + String(Math.round(100 * c)) + ")";
  1234.             P(b.ma, {
  1235.                 opacity: String(c),
  1236.                 filter: d
  1237.             });
  1238.             P(b.copy, {
  1239.                 opacity: String(c),
  1240.                 filter: d
  1241.             })
  1242.         }
  1243.         a = 1 <= a;
  1244.         this.N && (b = this.N, a ? G(b, "visible") : Pa(b, "visible"));
  1245.         this.w.A >= this.w.i.length - 1 ? (a = this.K, a.G && P(a.a, {
  1246.             "-webkit-transform": "rotate(180deg)",
  1247.             "-moz-transform": "rotate(180deg)",
  1248.             "-ms-transform": "rotate(180deg)",
  1249.             "-o-transform": "rotate(180deg)",
  1250.             transform: "rotate(180deg)"
  1251.         })) : (a = this.K, a.G &&
  1252.             P(a.a, {
  1253.                 "-webkit-transform": "rotate(0deg)",
  1254.                 "-moz-transform": "rotate(0deg)",
  1255.                 "-ms-transform": "rotate(0deg)",
  1256.                 "-o-transform": "rotate(0deg)",
  1257.                 transform: "rotate(0deg)"
  1258.             }))
  1259.     };
  1260.     r.qa = function (a) {
  1261.         var b = a.target;
  1262.         "A" != b.tagName && O(b, "A") && (b = O(b, "A"));
  1263.         if ("A" == b.tagName) {
  1264.             var c = Z.d.ha();
  1265.             if (0 <= b.href.indexOf(c)) {
  1266.                 c = b.href.replace(c, "");
  1267.                 if (z(Oa(b), "arrowlink")) {
  1268.                     a.preventDefault();
  1269.                     var d = this.w.A + 1;
  1270.                     d >= this.w.i.length ? Rb(this, "header-spacer") : (d = this.w.i[d].replace("link-", "android-"), Rb(this, d))
  1271.                 }
  1272.                 z(Oa(b), "scrollmearrow") && (a.preventDefault(), Rb(this, "bucket-cta"));
  1273.                 z(Oa(b), "innerlink") && -1 < c.indexOf("#") && (a.preventDefault(), Rb(this, c.split("#")[1]))
  1274.             }
  1275.         }
  1276.     };
  1277.  
  1278.     function Rb(a, b) {
  1279.         var c = Q(K(b)).y - 60;
  1280.         a.C = new Ib([0, Z.d.s()], [0, c], 500, Z.d.da);
  1281.         X(a.C, ["begin", "animate", "end"], a.va, p, a);
  1282.         a.C.play(p)
  1283.     }
  1284.     r.va = function (a) {
  1285.         window.scrollTo(0, a.y)
  1286.     };
  1287.     aa("kitkat", Z);
  1288.     aa("kitkat.Main", Pb);
  1289.     Pb.prototype.init = Pb.prototype.b;
  1290.  
  1291. }())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement