Advertisement
Guest User

Unbelievr

a guest
Feb 20th, 2012
443
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function (e, c, ka) {
  2.     function $a(c) {
  3.         var e = [],
  4.             m;
  5.         for (m in c) c.hasOwnProperty(m) && (e[e.length] = m + "=" + encodeURIComponent(c[m]));
  6.         return e.join("&")
  7.     }
  8.     function F(c) {
  9.         for (var e = 1, m = c.length; e < arguments.length; e++) c[m++] = arguments[e];
  10.         return c.length
  11.     }
  12.     function Ga(c, e) {
  13.         for (var m = 0, B = c.length; m < e.length; m++) c[B++] = e[m]
  14.     }
  15.     function la(c) {
  16.         for (var e = "string" == typeof c ?
  17.         function (e) {
  18.             return c.charCodeAt(e)
  19.         } : function (e) {
  20.             return c[e]
  21.         }, m = c.length, B = 0, r = 255, y = 255; m;) {
  22.             var C = 21 < m ? 21 : m,
  23.                 m = m - C;
  24.             do {
  25.                 var o = e(B++);
  26.                 if (255 < o) var F = o >> 8,
  27.                     o = o & 255,
  28.                     o = o ^ F;
  29.                 r += o;
  30.                 y += r
  31.             } while (--C);
  32.             r = (r & 255) + (r >> 8);
  33.             y = (y & 255) + (y >> 8)
  34.         }
  35.         e = (r & 255) + (r >> 8) << 8 | (y & 255) + (y >> 8);
  36.         return 65535 == e ? 0 : e
  37.     }
  38.     function ta(e, o, m, B) {
  39.         var r = "";
  40.         m && (r = new Date, r.setTime(r.getTime() + 6E4 * m), r = ";expires=" + r.toGMTString());
  41.         c.cookie = e + "=" + o + r + ";path=" + (B || "/")
  42.     }
  43.     function Ha(e) {
  44.         return c.cookie.match(RegExp("(?:^|;\\s*)" + e + "=([^;]*)")) ? RegExp.$1 : null
  45.     }
  46.     function ab() {
  47.         ta("_metrika_enabled", "1", 60);
  48.         var c = !! Ha("_metrika_enabled");
  49.         ta("_metrika_enabled", "", -1);
  50.         return c
  51.     }
  52.     function o() {
  53.         for (var c = {}, o = "hash,host,hostname,href,pathname,port,protocol,search".split(","), m = o.length, B = m; B--;) c[o[B]] = "";
  54.         try {
  55.             for (var r = e.location, B = m; B--;) {
  56.                 var y = o[B];
  57.                 c[y] = r[y]
  58.             }
  59.         } catch (C) {
  60.             R && (c = R)
  61.         }
  62.         return c
  63.     }
  64.     function T(c) {
  65.         try {
  66.             delete e[c]
  67.         } catch (o) {
  68.             e[c] = ka
  69.         }
  70.     }
  71.     function ba(e) {
  72.         var o = c.createElement("script");
  73.         o.type = "text/javascript";
  74.         o.async = !0;
  75.         o.src = e;
  76.         try {
  77.             var m = c.getElementsByTagName("html")[0];
  78.             c.getElementsByTagName("head")[0] || m.appendChild(c.createElement("head"));
  79.             var B = c.getElementsByTagName("head")[0];
  80.             B.insertBefore(o, B.firstChild)
  81.         } catch (r) {}
  82.     }
  83.     function ma(c) {
  84.         ba(ua + "//metrika.yandex.ru/js/" + c + "/_loader.js")
  85.     }
  86.     function bb(A, J, m, B, r) {
  87.         function y(d) {
  88.             return function () {
  89.                 try {
  90.                     return d.apply(this, arguments)
  91.                 } catch (j) {
  92.                     (new Image).src = "//an.yandex.ru/jserr/" + A + "?" + $a({
  93.                         "cnt-class": 100 + J,
  94.                         errmsg: j.message + "--" + (d.toString().match(/function\s([^(]*)/) || {
  95.                             1: ""
  96.                         })[1]
  97.                     })
  98.                 }
  99.             }
  100.         }
  101.         function C() {
  102.             return "CSS1Compat" == c.compatMode ? c.documentElement : c.body
  103.         }
  104.         function R() {
  105.             var d = C();
  106.             return [d.clientWidth, d.clientHeight]
  107.         }
  108.         function L() {
  109.             var d = C(),
  110.                 j = R();
  111.             return [Math.max(d.scrollWidth, j[0]), Math.max(d.scrollHeight, j[1])]
  112.         }
  113.         function Y() {
  114.             return [e.pageXOffset || c.documentElement && c.documentElement.scrollLeft || c.body && c.body.scrollLeft || 0, e.pageYOffset || c.documentElement && c.documentElement.scrollTop || c.body && c.body.scrollTop || 0]
  115.         }
  116.         function Z(d) {
  117.             if (!d.ownerDocument || "PARAM" == d.tagName || d == c.body || d == c.documentElement) return [0, 0];
  118.             if (d.getBoundingClientRect) return d = d.getBoundingClientRect(), [Math.round(d.left + S[0]), Math.round(d.top + S[1])];
  119.             for (var j = 0, a = 0; d;) j += d.offsetLeft, a += d.offsetTop, d = d.offsetParent;
  120.             return [j, a]
  121.         }
  122.         function ca(d) {
  123.             return d == c.documentElement ? null : d == c.body ? c.documentElement : d.parentNode
  124.         }
  125.         function $(d, j) {
  126.             var a = [];
  127.             if (d) for (var c = d.childNodes, b = 0, f = c.length; b < f; b++) {
  128.                 var g = c[b];
  129.                 !("INPUT" == g.nodeName && g.type && "hidden" == g.type.toLocaleLowerCase()) && (!j || g.nodeName == j) && F(a, g)
  130.             }
  131.             return a
  132.         }
  133.         function na(d) {
  134.             var j = Z(d),
  135.                 d = d == c.body || d == c.documentElement ? L() : [d.offsetWidth, d.offsetHeight];
  136.             return [j[0], j[1], d[0], d[1]]
  137.         }
  138.         function M(d) {
  139.             for (var j = "", d = d.childNodes, a = 0, b = d.length; a < b; a++) 3 == d[a].nodeType && (j += d[a].nodeValue);
  140.             return la(j.replace(/[\u0000-\u0020]+/g, ""))
  141.         }
  142.         function aa(d) {
  143.             var j = "",
  144.                 a = "className,width,height,align,title,alt,name".split(",");
  145.             "IMG" == d.tagName && (j += d.src.toLowerCase());
  146.             "A" == d.tagName && (j += d.href.toLowerCase());
  147.             for (var b = 0; b < a.length; b++) j += ("" + (d.getAttribute(a[b]) || "")).toLowerCase();
  148.             return la(j.replace(/[\u0000-\u0020]+/g, ""))
  149.         }
  150.         function oa(d) {
  151.             for (var j = c.getElementsByTagName("form"), a = 0, b = j.length; a < b; a++) if (j[a] == d) return a;
  152.             return -1
  153.         }
  154.         function da(d) {
  155.             return "INPUT" == d.nodeName && "submit" != d.type && "image" != d.type && "hidden" != d.type ? "radio" == d.type || "checkbox" == d.type ? !d.checked : !d.value : "TEXTAREA" == d.nodeName ? !d.value : "SELECT" == d.nodeName ? 0 > d.selectedIndex : !0
  156.         }
  157.         function t(d, j, a) {
  158.             var b = y(function (d) {
  159.                 return a(d || e.event)
  160.             });
  161.             U[U.length] = [d, j, a, b];
  162.             d.addEventListener ? d.addEventListener(j, b, !0) : d.attachEvent && d.attachEvent("on" + j, b)
  163.         }
  164.         function x(d, j, a) {
  165.             for (var b = 0; b < U.length; b++) if (U[b] && U[b][0] == d && U[b][1] == j && U[b][2] == a) {
  166.                 var c = U[b][3];
  167.                 delete U[b];
  168.                 break
  169.             }
  170.             c && (d.removeEventListener ? d.removeEventListener(j, c, !0) : d.detachEvent && d.detachEvent("on" + j, c))
  171.         }
  172.         function ia(d) {
  173.             var j = C();
  174.             return [d.pageX || d.clientX + S[0] - (j.clientLeft || 0) || 0, d.pageY || d.clientY + S[1] - (j.clientTop || 0) || 0]
  175.         }
  176.         function V(d) {
  177.             return d.target || d.srcElement
  178.         }
  179.         function ea(d) {
  180.             return (d.shiftKey ? wb : 0) | (d.ctrlKey ? cb : 0) | (d.altKey ? xb : 0) | (d.metaKey ? Ib : 0) | (d.ctrlKey || d.altKey ? Ia : 0)
  181.         }
  182.         function ja(d) {
  183.             var j = (new Date).getTime();
  184.             d && j < d && (db += d - j + eb);
  185.             e.setTimeout(y(function () {
  186.                 ja(j)
  187.             }), eb)
  188.         }
  189.         function pa() {
  190.             var d = (new Date).getTime() + db;
  191.             d < fb && (d = fb + eb / 2);
  192.             return fb = d
  193.         }
  194.         function G() {
  195.             return Math.round((pa() - Kb) / Ha)
  196.         }
  197.         function fa(d, j) {
  198.             j = Math.max(0, Math.min(j, 65535));
  199.             F(d, j >> 8, j & 255)
  200.         }
  201.         function p(d, j) {
  202.             F(d, j & 255)
  203.         }
  204.         function h(d, j) {
  205.             for (j = Math.max(0, j | 0); 127 < j;) F(d, j & 127 | 128), j >>= 7;
  206.             F(d, j)
  207.         }
  208.         function va(d, j) {
  209.             255 < j.length && (j = j.substr(0, 255));
  210.             F(d, j.length);
  211.             for (var a = 0; a < j.length; a++) fa(d, j.charCodeAt(a))
  212.         }
  213.         function wa(d, j) {
  214.             h(d, j.length);
  215.             for (var a = 0; a < j.length; a++) h(d, j.charCodeAt(a))
  216.         }
  217.         function ta(d) {
  218.             if (!d.nodeName) return d[K] = -1, null;
  219.             var a = Number(d[K]);
  220.             if (!isFinite(a) || 0 >= a) return null;
  221.             var b = Mb,
  222.                 c = 0,
  223.                 g = ca(d),
  224.                 f = g && g[K] ? g[K] : 0;
  225.             0 > f && (f = 0);
  226.             var e = d.nodeName.toUpperCase(),
  227.                 n = Nb[e];
  228.             n || (b |= Ob);
  229.             var k;
  230.             a: {
  231.                 k = $(ca(d), d.nodeName);
  232.                 for (var w = 0; w < k.length; w++) if (k[w] == d) {
  233.                     k = w;
  234.                     break a
  235.                 }
  236.                 k = 0
  237.             }
  238.             k || (b |= Pb);
  239.             w = na(d);
  240.             (g = g ? na(g) : null) && w[0] == g[0] && w[1] == g[1] && w[2] == g[2] && w[3] == g[3] && (b |= yb);
  241.             Ja[a].pos = w[0] + "x" + w[1];
  242.             Ja[a].size = w[2] + "x" + w[3];
  243.             d.id && "string" == typeof d.id && (b |= zb);
  244.             (g = M(d)) && (b |= Qb);
  245.             var I = aa(d);
  246.             I && (c |= Rb);
  247.             var i;
  248.             a: {
  249.                 i = $(ca(d), d.tagName);
  250.                 for (var u = 0; u < i.length; u++) if (!(i[u].id && "string" == typeof i[u].id) && aa(i[u]) == I && M(i[u]) == g) {
  251.                     i = !0;
  252.                     break a
  253.                 }
  254.                 i = !1
  255.             }
  256.             if (i) var b = b | Ab,
  257.                 q = la((d.innerHTML || "").replace(/(<[^>]*>|[\u0000-\u0020])/g, ""));
  258.             i = [];
  259.             p(i, ba);
  260.             h(i, a);
  261.             p(i, b);
  262.             h(i, f);
  263.             n ? p(i, n) : va(i, e);
  264.             k && h(i, k);
  265.             b & yb || (h(i, w[0]), h(i, w[1]), h(i, w[2]), h(i, w[3]));
  266.             b & zb && va(i, d.id);
  267.             g && fa(i, g);
  268.             b & Ab && fa(i, q);
  269.             p(i, c);
  270.             I && fa(i, I);
  271.             return i
  272.         }
  273.         function Ka(d, a, b, c, g, f) {
  274.             for (; b && (!b.offsetWidth || !b.offsetHeight);) b = ca(b);
  275.             if (!b) return null;
  276.             var e = b[K];
  277.             if (!e || 0 > e) return null;
  278.             var n = {
  279.                 mousemove: ma,
  280.                 click: Sb,
  281.                 mousedown: Va,
  282.                 mouseup: Tb,
  283.                 touch: ab
  284.             }[a];
  285.             if (!n) return null;
  286.             var w = Z(b),
  287.                 b = [];
  288.             p(b, n);
  289.             h(b, d);
  290.             h(b, e);
  291.             h(b, Math.max(0, c[0] - w[0]));
  292.             h(b, Math.max(0, c[1] - w[1]));
  293.             /^mouse(up|down)|click$/.test(a) && (d = g || f, p(b, 2 > d ? Ub : d == (g ? 2 : 4) ? Vb : Wb));
  294.             return b
  295.         }
  296.         function xa(d, a) {
  297.             var b = [];
  298.             p(b, Ua);
  299.             h(b, d);
  300.             h(b, a[0]);
  301.             h(b, a[1]);
  302.             return b
  303.         }
  304.         function ua(d, a, b) {
  305.             var c = [];
  306.             p(c, Yb);
  307.             h(c, d);
  308.             h(c, a[0]);
  309.             h(c, a[1]);
  310.             h(c, b[0]);
  311.             h(c, b[1]);
  312.             return c
  313.         }
  314.         function l(d, a, b, c) {
  315.             var g = [];
  316.             p(g, Wa);
  317.             h(g, d);
  318.             fa(g, a);
  319.             p(g, b);
  320.             d = c[K];
  321.             if (!d || 0 > d) d = 0;
  322.             h(g, d);
  323.             return g
  324.         }
  325.         function ya(d, a) {
  326.             var b, c;
  327.             0 == a.length ? c = b = "" : 100 >= a.length ? (b = a, c = "") : 200 >= a.length ? (b = a.substr(0, 100), c = a.substr(100)) : (b = a.substr(0, 97), c = a.substr(a.length - 97));
  328.             var g = [];
  329.             p(g, Zb);
  330.             h(g, d);
  331.             wa(g, b);
  332.             wa(g, c);
  333.             return g
  334.         }
  335.         function za(d) {
  336.             var a = [];
  337.             p(a, $b);
  338.             h(a, d);
  339.             return a
  340.         }
  341.         function ga(d) {
  342.             var a = [];
  343.             p(a, bb);
  344.             h(a, d);
  345.             return a
  346.         }
  347.         function La(d) {
  348.             var a = [];
  349.             p(a, sb);
  350.             h(a, d);
  351.             return a
  352.         }
  353.         function Ma(d, a) {
  354.             var b = [];
  355.             p(b, tb);
  356.             h(b, d);
  357.             h(b, a[K]);
  358.             return b
  359.         }
  360.         function H(d, a) {
  361.             var b = [];
  362.             p(b, ub);
  363.             h(b, d);
  364.             h(b, a[K]);
  365.             return b
  366.         }
  367.         function Na(d, a, b) {
  368.             var c = [];
  369.             p(c, vb);
  370.             h(c, d);
  371.             h(c, a[K]);
  372.             va(c, "" + b);
  373.             return c
  374.         }
  375.         function gb(d, a, b) {
  376.             if (b = Bb(b)) {
  377.                 b.shift();
  378.                 a = q(a);
  379.                 a.shift();
  380.                 Ga(a, b);
  381.                 b = [];
  382.                 p(b, ac);
  383.                 h(b, d);
  384.                 h(b, a.length);
  385.                 for (d = 0; d < a.length; d++) p(b, a[d]);
  386.                 return b
  387.             }
  388.             return null
  389.         }
  390.         function W(d, a) {
  391.             var b = a[K];
  392.             if (0 < b) {
  393.                 var c = [],
  394.                     g = na(a),
  395.                     f = Ja[b],
  396.                     e = g[0] + "x" + g[1],
  397.                     n = g[2] + "x" + g[3];
  398.                 if (e != f.pos) f.pos = e, p(c, Za), h(c, d), h(c, b), h(c, g[0]), h(c, g[1]);
  399.                 if (n != f.size) f.size = n, p(c, ra), h(c, d), h(c, b), h(c, g[2]), h(c, g[3]);
  400.                 if (c.length) return c
  401.             }
  402.             return null
  403.         }
  404.         function Aa(d) {
  405.             var a = d[K];
  406.             if (!a || 0 > a || !/^INPUT|SELECT|TEXTAREA$/.test(d.nodeName) || !d.form || /(?:^|\s)-metrika-noform(?:\s|$)/.test(d.form.className)) return null;
  407.             var b = oa(d.form);
  408.             if (0 > b) return null;
  409.             var c;
  410.             c = "INPUT" == d.nodeName ? {
  411.                 text: 0,
  412.                 password: 2,
  413.                 radio: 3,
  414.                 checkbox: 4,
  415.                 file: 6,
  416.                 image: 7
  417.             }[d.type] : {
  418.                 SELECT: 1,
  419.                 TEXTAREA: 5
  420.             }[d.nodeName];
  421.             if ("number" != typeof c) return null;
  422.             for (var g = -1, f = d.form.elements, e = f.length, n = 0, w = 0; n < e; n++) if (f[n].name == d.name) {
  423.                 if (f[n] == d) {
  424.                     g = w;
  425.                     break
  426.                 }
  427.                 w++
  428.             }
  429.             if (0 > g) return null;
  430.             f = [];
  431.             p(f, Xa);
  432.             h(f, a);
  433.             h(f, b);
  434.             h(f, c);
  435.             wa(f, d.name || "");
  436.             h(f, g);
  437.             return f
  438.         }
  439.         function Ba(d, a) {
  440.             var b = oa(a);
  441.             if (0 > b) return null;
  442.             for (var c = a.elements, g = c.length, f = [], e = 0; e < g; e++) if (!da(c[e])) {
  443.                 var n = c[e][K];
  444.                 n && 0 < n && F(f, n)
  445.             }
  446.             c = [];
  447.             p(c, sa);
  448.             h(c, d);
  449.             h(c, b);
  450.             h(c, f.length);
  451.             for (b = 0; b < f.length; b++) h(c, f[b]);
  452.             return c
  453.         }
  454.         function ha(d) {
  455.             clearTimeout(Cb);
  456.             for (var a = (new Date).getTime() + bc; Oa.length && (d || +(new Date).getTime() < a);) {
  457.                 var b = Oa.shift();
  458.                 if (b = b[0].apply(e, b[1])) 6500 < qa.length + b.length && Pa(), Ga(qa, b), Qa || (Qa = e.setTimeout(y(Pa), z))
  459.             }!0 === d && Pa(!0);
  460.             Oa.length && (Cb = e.setTimeout(y(ha), cc))
  461.         }
  462.         function E(d, a, b) {
  463.             F(Oa, [d, a]);
  464.             ha(b)
  465.         }
  466.         function N(d) {
  467.             if (d[K]) E(W, [G(), d]);
  468.             else {
  469.                 var a = ca(d);
  470.                 a && N(a);
  471.                 d[K] = hb;
  472.                 Ja[hb] = {};
  473.                 hb++;
  474.                 E(ta, [d]);
  475.                 E(Aa, [d])
  476.             }
  477.         }
  478.         function O(d) {
  479.             var a = V(d);
  480.             a && "SCROLLBAR" != a.nodeName && (N(a), E(Ka, [G(), d.type, a, ia(d), d.which, d.button]))
  481.         }
  482.         function Ca(d) {
  483.             O(d);
  484.             var a, b;
  485.             if (e.getSelection) d = e.getSelection(), a = d.toString(), b = d.anchorNode;
  486.             else if (c.selection && c.selection.createRange) d = c.selection.createRange(), a = d.text, b = d.parentElement();
  487.             for (; b && 1 != b.nodeType;) b = b.parentNode;
  488.             if (!(b && "INPUT" == b.tagName && "password" == b.type || b && /(?:^|\s)-metrika-nokeys(?:\s|$)/.test(b.className)) && a != ib) ib = a, E(ya, [G(), a])
  489.         }
  490.         function Da(d) {
  491.             var a = pa(),
  492.                 b = a - Db;
  493.             if (!(b < T)) {
  494.                 var c = ia(d),
  495.                     g = jb[0] - c[0],
  496.                     f = jb[1] - c[1],
  497.                     g = g * g + f * f;
  498.                 if (!(0 >= g || 16 > g && 100 > b) && !(20 > b && 256 > g)) Db = a, jb = c, O(d)
  499.             }
  500.         }
  501.         function P() {
  502.             S = Y();
  503.             var d = pa();
  504.             d - Eb < T || 10 > Math.abs(S[0] - kb[0]) && 10 > Math.abs(S[1] - kb[1]) || (Eb = d, kb = S, E(xa, [G(), S]))
  505.         }
  506.         function a() {
  507.             E(ua, [G(), R(), L()])
  508.         }
  509.         function g(d) {
  510.             Pa(!0);
  511.             if ("beforeunload" == d.type) for (d = +new Date + 50; + new Date < d;);
  512.         }
  513.         function b(d, a, b) {
  514.             d = V(d);
  515.             "INPUT" == d.tagName && "password" == d.type || /(?:^|\s)-metrika-nokeys(?:\s|$)/.test(d.className) || (N(d), E(l, [G(), a, b, d]))
  516.         }
  517.         function f(d) {
  518.             var a = d.keyCode,
  519.                 c = ea(d);
  520.             if ({
  521.                 3: 1,
  522.                 8: 1,
  523.                 9: 1,
  524.                 13: 1,
  525.                 16: 1,
  526.                 17: 1,
  527.                 18: 1,
  528.                 19: 1,
  529.                 20: 1,
  530.                 27: 1,
  531.                 33: 1,
  532.                 34: 1,
  533.                 35: 1,
  534.                 36: 1,
  535.                 37: 1,
  536.                 38: 1,
  537.                 39: 1,
  538.                 40: 1,
  539.                 45: 1,
  540.                 46: 1,
  541.                 91: 1,
  542.                 92: 1,
  543.                 93: 1,
  544.                 106: 1,
  545.                 110: 1,
  546.                 111: 1,
  547.                 144: 1,
  548.                 145: 1
  549.             }[a] || 112 <= a && 123 >= a || 96 <= a && 105 >= a || c & Ia) 19 == a && (c & ~Ia) == cb && (a = 144), b(d, a, c | Ia), lb = !1, 67 == a && c & cb && !(c & xb) && !(c & wb) && I()
  550.         }
  551.         function n() {
  552.             lb = !0
  553.         }
  554.         function k(d) {
  555.             lb && !mb && (b(d, d.charCode || d.keyCode, ea(d)), mb = !0, e.setTimeout(y(function () {
  556.                 mb = !1
  557.             }), 1))
  558.         }
  559.         function I() {
  560.             nb || (nb = !0, ib && E(za, [G()]), e.setTimeout(y(function () {
  561.                 nb = !1
  562.             }), 1))
  563.         }
  564.         function ob() {
  565.             Ea || (Ea = !0, E(ga, [G()]))
  566.         }
  567.         function Fa() {
  568.             Ea && (Ea = !1, E(La, [G()]))
  569.         }
  570.         function Fb(d) {
  571.             (!Ea || d && !d.fromElement) && ob()
  572.         }
  573.         function u(d) {
  574.             d && !d.toElement && Fa()
  575.         }
  576.         function Ra(d) {
  577.             if ((d = V(d)) && /^INPUT|SELECT|TEXTAREA|BUTTON$/.test(d.tagName)) N(d), E(Ma, [G(), d])
  578.         }
  579.         function v(d) {
  580.             if ((d = V(d)) && /^INPUT|SELECT|TEXTAREA|BUTTON$/.test(d.tagName)) N(d), E(H, [G(), d])
  581.         }
  582.         function Sa(d) {
  583.             d = V(d);
  584.             if (!("INPUT" == d.tagName && "password" == d.type || d && /(?:^|\s)-metrika-nokeys(?:\s|$)/.test(d.className)) && d && /^INPUT|SELECT|TEXTAREA$/.test(d.tagName)) {
  585.                 var a = /^(checkbox|radio)$/.test(d.type) ? d.checked : d.value;
  586.                 N(d);
  587.                 E(Na, [G(), d, a])
  588.             }
  589.         }
  590.         function D(d) {
  591.             d = V(d);
  592.             if (!/(?:^|\s)-metrika-noform(?:\s|$)/.test(d.className) && "FORM" == d.nodeName) {
  593.                 for (var a = d.elements, b = 0; b < a.length; b++) da(a[b]) || N(a[b]);
  594.                 E(Ba, [G(), d], !0)
  595.             }
  596.         }
  597.         function w(d) {
  598.             P();
  599.             if (d.touches && d.touches.length) {
  600.                 var a = V(d);
  601.                 if (a) {
  602.                     N(a);
  603.                     for (var b = 0; b < d.touches.length; b++) E(Ka, [G(), "touch", a, [d.touches[b].pageX, d.touches[b].pageY], 0, 0])
  604.                 }
  605.             }
  606.         }
  607.         function Pa() {
  608.             clearTimeout(Qa);
  609.             Qa = 0;
  610.             if (qa.length) {
  611.                 for (var d = {
  612.                     rn: Math.round(1E5 * Math.random()),
  613.                     "wv-type": 0,
  614.                     "cnt-class": J,
  615.                     "page-url": "" + o().href,
  616.                     wmode: 0,
  617.                     "wv-hit": B,
  618.                     "wv-part": dc++,
  619.                     "wv-check": la(qa),
  620.                     "browser-info": ["z", Gb, "i", pb].join(":")
  621.                 }, a = qa, b = a.length, c = [], g = b - b % 3, f, e = 0; e < g; e += 3) f = (a[e] << 16) + (a[e + 1] << 8) + a[e + 2], F(c, X[f >> 18 & 63], X[f >> 12 & 63], X[f >> 6 & 63], X[f & 63]);
  622.                 switch (b - g) {
  623.                 case 1:
  624.                     f = a[g] << 4;
  625.                     F(c, X[f >> 6 & 63], X[f & 63], "__");
  626.                     break;
  627.                 case 2:
  628.                     f = (a[g] << 10) + (a[g + 1] << 2), F(c, X[f >> 12 & 63], X[f >> 6 & 63], X[f & 63], "_")
  629.                 }
  630.                 a = {
  631.                     "wv-data": c.join("")
  632.                 };
  633.                 r.send("visor", "webvisor", d, a);
  634.                 qa.length = 0
  635.             }
  636.         }
  637.         function Hb(d) {
  638.             if ("undefined" == typeof d) return [ec];
  639.             if (null === d) return [fc];
  640.             if ("boolean" == typeof d) return [d ? gc : hc];
  641.             if ("number" == typeof d) return i(d);
  642.             if ("string" == typeof d) return q(d);
  643.             if ("[object Array]" == {}.toString.call(d)) return Bb(d);
  644.             if ("[object Date]" == {}.toString.call(d)) return [ic].concat(s(d.getFullYear())).concat(s(d.getMonth())).concat(s(d.getDate())).concat(s(d.getHours())).concat(s(d.getMinutes())).concat(s(d.getSeconds())).concat(s(d.getMilliseconds()));
  645.             if ("[object RegExp]" == {}.toString.call(d)) {
  646.                 var a;
  647.                 a = 0 | (d.global ? 1 : 0);
  648.                 a |= d.ignoreCase ? 2 : 0;
  649.                 a |= d.multiline ? 4 : 0;
  650.                 a |= d.lastIndex ? 8 : 0;
  651.                 var b = q(d.source);
  652.                 b.shift();
  653.                 return [jc, a].concat(b).concat(d.lastIndex ? s(d.lastIndex) : [])
  654.             }
  655.             if (d && d.ownerDocument == c) return N(d), [kc].concat(s(d[K]));
  656.             if ("[object Object]" == d.toString()) {
  657.                 a = [];
  658.                 for (b in d) a.push(b), a.push(d[b]);
  659.                 d = [lc].concat(s(a.length / 2));
  660.                 for (b = 0; b < a.length; b++) {
  661.                     var g = Hb(a[b]);
  662.                     if (!g) return null;
  663.                     d = d.concat(g)
  664.                 }
  665.                 return d
  666.             }
  667.             return null
  668.         }
  669.         function i(d) {
  670.             if (isNaN(d)) return [mc];
  671.             if (d == Number.NEGATIVE_INFINITY) return [nc];
  672.             if (d == Number.POSITIVE_INFINITY) return [oc];
  673.             if (0 === d) return [pc];
  674.             var a = !1;
  675.             0 > d && (d *= -1, a = !0);
  676.             var b = ("" + d).split("e"),
  677.                 d = +(b[1] || 0) + (-1 == b[0].indexOf(".") ? b[0].length : b[0].indexOf(".")),
  678.                 b = +b[0].replace(".", "");
  679.             return [a ? qc : rc].concat(s(b)).concat(s(d))
  680.         }
  681.         function q(d) {
  682.             for (var a = [sc].concat(s(d.length)), b = 0; b < d.length; b++) a = a.concat(s(d.charCodeAt(b)));
  683.             return a
  684.         }
  685.         function Bb(a) {
  686.             for (var b = [tc].concat(s(a.length)), c = 0; c < a.length; c++) {
  687.                 var g = Hb(a[c]);
  688.                 if (!g) return null;
  689.                 b = b.concat(g)
  690.             }
  691.             return b
  692.         }
  693.         function s(a) {
  694.             for (var b = []; 127 < a;) b.push(a & 127 | 128), a >>= 7;
  695.             b.push(a);
  696.             return b
  697.         }
  698.         var bc = 100,
  699.             cc = 200,
  700.             z = 15E3,
  701.             eb = 20,
  702.             Ha = 50,
  703.             T = 10,
  704.             ba = 1,
  705.             ma = 2,
  706.             Ua = 3,
  707.             Va = 4,
  708.             Wa = 5,
  709.             Xa = 7,
  710.             Za = 9,
  711.             ra = 10,
  712.             sa = 11,
  713.             ab = 12,
  714.             bb = 14,
  715.             sb = 15,
  716.             tb = 17,
  717.             ub = 18,
  718.             vb = 19,
  719.             ac = 26,
  720.             $b = 27,
  721.             Yb = 28,
  722.             Zb = 29,
  723.             Tb = 30,
  724.             Sb = 32,
  725.             Ub = 1,
  726.             Wb = 2,
  727.             Vb = 4,
  728.             Ab = 1,
  729.             Ob = 2,
  730.             Pb = 4,
  731.             yb = 8,
  732.             Qb = 16,
  733.             zb = 32,
  734.             Mb = 64,
  735.             Rb = 2,
  736.             xb = 1,
  737.             wb = 2,
  738.             cb = 4,
  739.             Ib = 8,
  740.             Ia = 16,
  741.             Nb = {
  742.                 A: 1,
  743.                 ABBR: 2,
  744.                 ACRONYM: 3,
  745.                 ADDRESS: 4,
  746.                 APPLET: 5,
  747.                 AREA: 6,
  748.                 B: 7,
  749.                 BASE: 8,
  750.                 BASEFONT: 9,
  751.                 BDO: 10,
  752.                 BIG: 11,
  753.                 BLOCKQUOTE: 12,
  754.                 BODY: 13,
  755.                 BR: 14,
  756.                 BUTTON: 15,
  757.                 CAPTION: 16,
  758.                 CENTER: 17,
  759.                 CITE: 18,
  760.                 CODE: 19,
  761.                 COL: 20,
  762.                 COLGROUP: 21,
  763.                 DD: 22,
  764.                 DEL: 23,
  765.                 DFN: 24,
  766.                 DIR: 25,
  767.                 DIV: 26,
  768.                 DL: 27,
  769.                 DT: 28,
  770.                 EM: 29,
  771.                 FIELDSET: 30,
  772.                 FONT: 31,
  773.                 FORM: 32,
  774.                 FRAME: 33,
  775.                 FRAMESET: 34,
  776.                 H1: 35,
  777.                 H2: 36,
  778.                 H3: 37,
  779.                 H4: 38,
  780.                 H5: 39,
  781.                 H6: 40,
  782.                 HEAD: 41,
  783.                 HR: 42,
  784.                 HTML: 43,
  785.                 I: 44,
  786.                 IFRAME: 45,
  787.                 IMG: 46,
  788.                 INPUT: 47,
  789.                 INS: 48,
  790.                 ISINDEX: 49,
  791.                 KBD: 50,
  792.                 LABEL: 51,
  793.                 LEGEND: 52,
  794.                 LI: 53,
  795.                 LINK: 54,
  796.                 MAP: 55,
  797.                 MENU: 56,
  798.                 META: 57,
  799.                 NOFRAMES: 58,
  800.                 NOSCRIPT: 59,
  801.                 OBJECT: 60,
  802.                 OL: 61,
  803.                 OPTGROUP: 62,
  804.                 OPTION: 63,
  805.                 P: 64,
  806.                 PARAM: 65,
  807.                 PRE: 66,
  808.                 Q: 67,
  809.                 S: 68,
  810.                 SAMP: 69,
  811.                 SCRIPT: 70,
  812.                 SELECT: 71,
  813.                 SMALL: 72,
  814.                 SPAN: 73,
  815.                 STRIKE: 74,
  816.                 STRONG: 75,
  817.                 STYLE: 76,
  818.                 SUB: 77,
  819.                 SUP: 78,
  820.                 TABLE: 79,
  821.                 TBODY: 80,
  822.                 TD: 81,
  823.                 TEXTAREA: 82,
  824.                 TFOOT: 83,
  825.                 TH: 84,
  826.                 THEAD: 85,
  827.                 TITLE: 86,
  828.                 TR: 87,
  829.                 TT: 88,
  830.                 U: 89,
  831.                 UL: 90,
  832.                 VAR: 91,
  833.                 NOINDEX: 100
  834.             },
  835.             S = Y(),
  836.             U = [],
  837.             db = 0;
  838.         ja(0);
  839.         var fb = 0,
  840.             Oa = [],
  841.             Cb, hb = 1,
  842.             Db = 0,
  843.             jb = [0, 0],
  844.             Eb = 0,
  845.             kb = [0, 0],
  846.             lb = !0,
  847.             mb = !1,
  848.             ib = "",
  849.             nb = !1,
  850.             Ea = !0,
  851.             X = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789*-".split(""),
  852.             qa = [],
  853.             Qa, dc = 1,
  854.             ec = 1,
  855.             fc = 2,
  856.             mc = 3,
  857.             nc = 4,
  858.             oc = 5,
  859.             pc = 6,
  860.             gc = 7,
  861.             hc = 8,
  862.             sc = 9,
  863.             rc = 10,
  864.             qc = 11,
  865.             tc = 12,
  866.             ic = 13,
  867.             jc = 14,
  868.             kc = 15,
  869.             lc = 16,
  870.             Kb = pa(),
  871.             K = "metrikaId_" + Math.random(),
  872.             Ja = {},
  873.             qb = ":submit" + Math.random();
  874.         if ("MetrikaPlayer" != e.name && (t(c, "mousemove", Da), t(c, "click", O), t(c, "mousedown", O), t(c, "mouseup", Ca), t(e, "scroll", P), t(e, "beforeunload", g), e.Components == ka && t(e, "unload", g), t(e, "resize", a), t(c, "keydown", f), t(c, "keyup", n), t(c, "keypress", k), t(c, "copy", I), t(c, "touchmove", w), t(c, "touchstart", w), c.attachEvent && !e.opera ? (t(c, "focusin", Fb), t(c, "focusout", u)) : (t(e, "focus", ob), t(e, "blur", Fa), t(c, "blur", Fa)), c.addEventListener ? (c.addEventListener("focus", Ra, !0), c.addEventListener("blur", v, !0), c.addEventListener("change", Sa, !0), c.addEventListener("submit", D, !0)) : c.attachEvent && (t(c, "focusin", Ra), t(c, "focusout", v), function () {
  875.             for (var a = c.getElementsByTagName("form"), b = 0; b < a.length; b++) {
  876.                 for (var g = a[b].getElementsByTagName("*"), f = 0; f < g.length; f++) / ^ INPUT | SELECT | TEXTAREA$ / .test(g[f].tagName) && t(g[f], "change", Sa);
  877.                 t(a[b], "submit", D)
  878.             }
  879.         }()), function () {
  880.             var a = c.getElementsByTagName("form");
  881.             if (a.length) for (var b = 0; b < a.length; b++) a[b][qb] = a[b].submit, a[b].submit = function () {
  882.                 D({
  883.                     target: this
  884.                 });
  885.                 return this[qb]()
  886.             }
  887.         }(), "0:0" != S.join(":") && P(), Ya.Metrika.captureFunctions = function () {
  888.             for (var a = 0; a < arguments.length; a++) {
  889.                 var b = arguments[a];
  890.                 "function" == typeof e[b] && (e[b] = function (a, d) {
  891.                     return function () {
  892.                         var b;
  893.                         E(gb, [G(), a, arguments]);
  894.                         return d.apply(this, arguments)
  895.                     }
  896.                 }(b, e[b]))
  897.             }
  898.         }, "undefined" != typeof m && m.webvisor)) {
  899.             var Q = m.webvisor;
  900.             if (Q.captureFunctions) {
  901.                 if ("[object Array]" != Object.prototype.toString.call(Q.captureFunctions)) Q.captureFunctions = [Q.captureFunctions];
  902.                 Ya.Metrika.captureFunctions.apply(this, Q.captureFunctions)
  903.             }
  904.             if (Q.uploadPages) {
  905.                 if ("[object Array]" != Object.prototype.toString.call(Q.uploadPages)) Q.uploadPages = [Q.uploadPages];
  906.                 for (var rb = 0; rb < Q.uploadPages.length; rb++) {
  907.                     var Ta = Q.uploadPages[rb];
  908.                     if ("string" == typeof Ta && (Ta = Ta.replace(/[.*+?\^=!:${}()|\[\]\/\\]/g, function (a) {
  909.                         return "*" == a ? ".*" : "\\" + a
  910.                     }), RegExp("^" + Ta + "$").test(o().href))) {
  911.                         Ya.Metrika.uploadPage();
  912.                         break
  913.                     }
  914.                 }
  915.             }
  916.         }
  917.         return {
  918.             stop: function () {
  919.                 x(c, "mousemove", Da);
  920.                 x(c, "click", O);
  921.                 x(c, "mousedown", O);
  922.                 x(c, "mouseup", Ca);
  923.                 x(e, "scroll", P);
  924.                 x(e, "beforeunload", g);
  925.                 x(e, "unload", g);
  926.                 x(e, "resize", a);
  927.                 x(c, "keydown", f);
  928.                 x(c, "keyup", n);
  929.                 x(c, "keypress", k);
  930.                 x(c, "copy", I);
  931.                 x(c, "touchmove", w);
  932.                 x(c, "touchstart", w);
  933.                 x(c, "focusin", Fb);
  934.                 x(c, "focusout", u);
  935.                 x(e, "focus", ob);
  936.                 x(e, "blur", Fa);
  937.                 x(c, "blur", Fa);
  938.                 c.removeEventListener ? (c.removeEventListener("focus", Ra, !0), c.removeEventListener("blur", v, !0), c.removeEventListener("change", Sa, !0), c.removeEventListener("submit", D, !0)) : c.detachEvent && (x(c, "focusin", Ra), x(c, "focusout", v), function () {
  939.                     for (var a = c.getElementsByTagName("form"), b = 0; b < a.length; b++) {
  940.                         for (var g = a[b].getElementsByTagName("*"), f = 0; f < g.length; f++) / ^ INPUT | SELECT | TEXTAREA$ / .test(g[f].tagName) && x(g[f], "change", Sa);
  941.                         x(a[b], "submit", D)
  942.                     }
  943.                 }());
  944.                 (function () {
  945.                     for (var a = c.getElementsByTagName("form"), b = 0; b < a.length; b++) a[b].submit = a[b][qb]
  946.                 })()
  947.             }
  948.         }
  949.     }
  950.     var sb = !1;
  951.     e.Ya = e.Ya || {};
  952.     Ya._metrika = Ya._metrika || {};
  953.     Ya._metrika.hitParam = Ya._metrika.hitParam || {};
  954.     var tb = !1,
  955.         R = o(),
  956.         Gb, pb, Y = e.navigator,
  957.         Z = e.screen,
  958.         ua = "https:" == R.protocol ? "https:" : "http:",
  959.         ub = "$Rev: 1825 $".match(/(\d+)/)[1],
  960.         $ = "object" == typeof c.all,
  961.         Ua = 64,
  962.         aa = $ ? 512 : 2048,
  963.         Va = $ ? 512 : 2048,
  964.         Wa = $ ? 100 : 400,
  965.         ia = "noindex",
  966.         ja = 50,
  967.         Xa = RegExp("\\.(7z|aac|ai|avi|apk|bmp|cab|csv|cdr|dmg|djvu?|doc(x|m|b)?|eps|exe|flv|gif|gz|jpe?g|js|m4a|mp(3|4|e?g)|mov|msi|ods|pdf|phps|png|ppt(x|m|b)?|psd|rar|rss|rtf|sea|sit|tar|tif?f|torrent|txt|wav|wma|wmv|xls(x|m|b)?|xpi|zip)$", "i"),
  968.         vb = +new Date,
  969.         Za = "_ym_visorc";
  970.     e.Ya.Metrika = function (A, J, m, B) {
  971.         function r(a, c, b) {
  972.             W[W.length] = [b, b];
  973.             a.addEventListener ? a.addEventListener(c, b, !1) : a.attachEvent && a.attachEvent("on" + c, b)
  974.         }
  975.         function y(a, c, b) {
  976.             for (var f = 0; f < W.length; f++) if (W[f] && W[f][0] == b) {
  977.                 var e = W[f][1];
  978.                 delete W[f];
  979.                 break
  980.             }
  981.             e && (a.removeEventListener ? a.removeEventListener(c, e, !1) : a.detachEvent && a.detachEvent("on" + c, e))
  982.         }
  983.         function C(a, c) {
  984.             c = c || 256;
  985.             if (!a) return "";
  986.             a.length > c && (a = a.substr(0, c));
  987.             return (e.encodeURIComponent || e.escape)(a).replace(/\+/g, "%2B")
  988.         }
  989.         function L(a) {
  990.             function c(a) {
  991.                 return a ? a.replace(/\\/g, "\\\\").replace(/"/g, '\\"') : ""
  992.             }
  993.             if (a === ka) return "";
  994.             if (null === a) return "null";
  995.             switch (a.constructor) {
  996.             case Boolean:
  997.                 return a.toString();
  998.             case Number:
  999.                 return isFinite(a) ? a.toString() : "null";
  1000.             case String:
  1001.                 return '"' + c(a) + '"';
  1002.             case Array:
  1003.                 for (var b = [], f = 0, e = a.length; f < e; f++) b[b.length] = L(a[f]);
  1004.                 return "[" + b.join(",") + "]";
  1005.             case Object:
  1006.                 b = "{";
  1007.                 f = 0;
  1008.                 for (e in a) if (a.hasOwnProperty(e)) {
  1009.                     var k = a[e];
  1010.                     k !== ka && (b += (f ? "," : "") + '"' + c(e) + '":' + L(k), f++)
  1011.                 }
  1012.                 return b + "}";
  1013.             default:
  1014.                 return "null"
  1015.             }
  1016.         }
  1017.  
  1018.         function T(a) {
  1019.             for (var c = +new Date, b = 1; 0 < b; b++) if (0 == b % 1E3) {
  1020.                 var f = +new Date;
  1021.                 if (c > f) break;
  1022.                 if (f - c > a) break
  1023.             }
  1024.         }
  1025.         function ba(a, c) {
  1026.             if (!a || !c) return !1;
  1027.             for (var b = [], f = 0; f < c.length; f++) b.push(c[f].replace(/\^/g, "\\^").replace(/\$/g, "\\$").replace(/\./g, "\\.").replace(/\[/g, "\\[").replace(/\]/g, "\\]").replace(/\|/g, "\\|").replace(/\(/g, "\\(").replace(/\)/g, "\\)").replace(/\?/g, "\\?").replace(/\*/g, "\\*").replace(/\+/g, "\\+").replace(/\{/g, "\\{").replace(/\}/g, "\\}"));
  1028.             return RegExp("\\.(" + b.join("|") + ")$", "i").test(a)
  1029.         }
  1030.  
  1031.         function ma(a) {
  1032.             a = a.target || a.srcElement;
  1033.             if (!a) return !1;
  1034.             if (3 == a.nodeType) a = a.parentNode;
  1035.             for (var c = a.nodeName.toString().toLowerCase(); a.parentNode && a.parentNode.nodeName && ("a" != c && "area" != c || !a.href);) a = a.parentNode, c = a.nodeName.toString().toLowerCase();
  1036.             return !a.href ? !1 : a
  1037.         }
  1038.         function ca(a, c) {
  1039.             return (a ? a.replace(/^www\./, "") : "") == (c ? c.replace(/^www\./, "") : "") ? !0 : !1
  1040.         }
  1041.         function ra(a, c) {
  1042.             function b(a) {
  1043.                 a = a.split(":");
  1044.                 a = a[1] || "";
  1045.                 a = a.replace(/^\/*/, "").replace(/^www\./, "");
  1046.                 return a.split("/")[0]
  1047.             }
  1048.             return !a || !c ? !a && !c ? !0 : !1 : b(a) == b(c) ? !0 : !1
  1049.         }
  1050.         function na(a, c) {
  1051.             var b = c.target,
  1052.                 f = !1;
  1053.             if (!c.hostname) return !1;
  1054.             if (!b || "_self" == b || "_top" == b || "_parent" == b) f = !0;
  1055.             (b = a.shiftKey || a.ctrlKey || a.altKey) || a.modifiers && e.Event && (b = a.modifiers & e.Event.CONTROL_MASK || a.modifiers & e.Event.SHIFT_MASK || a.modifiers & e.Event.ALT_MASK);
  1056.             return f && !b
  1057.         }
  1058.         function M(a, c, b, f, n) {
  1059.             function k(a, b) {
  1060.                 I[I.length] = a;
  1061.                 I[I.length] = b
  1062.             }
  1063.             var n = n || {},
  1064.                 b = "undefined" != typeof b ? b : ga,
  1065.                 I = [];
  1066.             n.ar && !n.onlyData && (b = da(b), a = da(a));
  1067.             k("page-ref", C(b, aa));
  1068.             k("page-url", C(a, aa));
  1069.             k("browser-info", x(c, n)); - 1 != o().hostname.search(/(?:^|\.)(?:ya|yandex|narod|narod2)\.(?:\w+|com\.\w+)$/) ? k("ut", ia) : "undefined" != typeof n.ut && k("ut", C("" + n.ut, Ua));
  1070.             f && k("site-info", C(L(f), Va));
  1071.             n.saveRef && (ga = b);
  1072.             a = oa(Na, I);
  1073.             if ("MetrikaPlayer" != e.name)(new Image).src = a, t(a), n.isDelay && T(n.delay);
  1074.             return a
  1075.         }
  1076.         function sa(a, g, b, f, n, k, I) {
  1077.             function h(a, b) {
  1078.                 m[m.length] = a;
  1079.                 m[m.length] = b
  1080.             }
  1081.             var n = n || {},
  1082.                 b = "undefined" != typeof b ? b : ga,
  1083.                 m = [];
  1084.             n.ar && !n.onlyData && (b = da(b), a = da(a));
  1085.             if ("MetrikaPlayer" != e.name) {
  1086.                 var l = "_ymjsp" + Math.floor(1E6 * Math.random()),
  1087.                     u = c.createElement("script");
  1088.                 e[l] = function (a) {
  1089.                     try {
  1090.                         delete e[l]
  1091.                     } catch (b) {
  1092.                         e[l] = ka
  1093.                     }
  1094.                     I(a);
  1095.                     u.parentNode && u.parentNode.removeChild(u)
  1096.                 };
  1097.                 h("wmode", 5);
  1098.                 h("callback", l);
  1099.                 h("page-ref", C(b, aa));
  1100.                 h("page-url", C(a, aa));
  1101.                 a = x(g, n);
  1102.                 k && (a = ["vc", k, a].join(":"));
  1103.                 h("browser-info", a); - 1 != o().hostname.search(/(?:^|\.)(?:ya|yandex|narod|narod2)\.(?:\w+|com\.\w+)$/) ? h("ut", ia) : "undefined" != typeof n.ut && h("ut", C("" + n.ut, Ua));
  1104.                 f && h("site-info", C(L(f), Va));
  1105.                 n.saveRef && (ga = b);
  1106.                 f = oa(Na, m);
  1107.                 u.type = "text/javascript";
  1108.                 u.src = f;
  1109.                 n = c.getElementsByTagName("head")[0];
  1110.                 n.insertBefore(u, n.firstChild);
  1111.                 t(f)
  1112.             }
  1113.         }
  1114.         function oa(a, c) {
  1115.             for (var b = ["rn", Math.floor(1E6 * Math.random()), "cnt-class", m].concat(c), f = [], e = 0; e < b.length; e += 2) {
  1116.                 var k = b[e + 1];
  1117.                 k && (f[f.length] = b[e] + "=" + k)
  1118.             }
  1119.             return ua + a + A + "?" + f.join("&")
  1120.         }
  1121.         function da(a) {
  1122.             var c = o(),
  1123.                 b = c.host,
  1124.                 c = c.href;
  1125.             if (!a) return c;
  1126.             if (-1 != a.search(/^\w+:\/\//)) return a;
  1127.             var f = a.charAt(0);
  1128.             if ("?" == f) return f = c.search(/\?/), -1 == f ? c + a : c.substr(0, f) + a;
  1129.             if ("#" == f) return f = c.search(/#/), -1 == f ? c + a : c.substr(0, f) + a;
  1130.             if ("/" == f) {
  1131.                 if (f = c.search(b), -1 != f) return c.substr(0, f + b.length) + a
  1132.             } else return b = c.split("/"), b[b.length - 1] = a, b.join("/");
  1133.             return a
  1134.         }
  1135.         function t(a) {
  1136.             "function" == typeof e.ymLog && e.ymLog(a)
  1137.         }
  1138.         function x(a, g) {
  1139.             function b(a, b) {
  1140.                 a && b && (n[n.length] = [a, b].join(":"))
  1141.             }
  1142.             function f(a) {
  1143.                 b(a, g[a] ? "1" : "")
  1144.             }
  1145.             var g = g || {},
  1146.                 n = [],
  1147.                 k = -1 * (new Date).getTimezoneOffset(),
  1148.                 h = pa();
  1149.             pb || (pb = h, Gb = k);
  1150.             b("j", Y.javaEnabled() ? "1" : "");
  1151.             Z && b("s", Z.width + "x" + Z.height + "x" + (Z.colorDepth || Z.pixelDepth));
  1152.             null === Aa && (Aa = V());
  1153.             b("f", Aa);
  1154.             b("w", G() + "x" + fa());
  1155.             b("z", k);
  1156.             b("i", h);
  1157.             null === Ba && (Ba = Jb());
  1158.             b("l", Ba || "");
  1159.             b("en", Ga() || "");
  1160.             b("v", ub);
  1161.             b("c", Y.cookieEnabled ? "1" : "");
  1162.             $ && c.documentMode && (null === ha && (ha = Function("return /*@cc_on @_jscript_version @*/;")()), ha && b("jv", ha));
  1163.             b("la", (Y && (Y.language || Y.browserLanguage) || "").toLowerCase());
  1164.             b("ex", "prerender" == c.webkitVisibilityState ? "pre1" : "");
  1165.             P && b("wh", "1");
  1166.             h = "ar,ln,dl,ad,nb,pa".split(",");
  1167.             for (k = 0; k < h.length; k++) f(h[k]);
  1168.             h = ["va", "vt", "sn", "sa", "he"];
  1169.             for (k = 0; k < h.length; k++) {
  1170.                 var m = h[k];
  1171.                 b(m, g[m])
  1172.             }
  1173.             if (l._webvisor) {
  1174.                 b("hid", ya);
  1175.                 if (!e.name) e.name = Math.round(65535 * Math.random());
  1176.                 if (k = +e.name) 0 > k && (k *= -1), k %= 65535;
  1177.                 b("wn", k || la(e.name));
  1178.                 try {
  1179.                     e.opener && e.opener.name && b("on", la(e.opener.name))
  1180.                 } catch (o) {}
  1181.                 try {
  1182.                     e.history && b("hl", "" + e.history.length)
  1183.                 } catch (t) {}
  1184.             }
  1185.             k = "undefined" == typeof a ? (k = ea()) ? C(k, Wa) : "" : C(a, Wa);
  1186.             b("t", k);
  1187.             return n.join(":")
  1188.         }
  1189.         function Ga() {
  1190.             var a = "",
  1191.                 g = c.getElementsByTagName("meta");
  1192.             if (g && 0 < g.length) for (var b = 0, f = g.length; b < f; b++) {
  1193.                 if (g[b].content) {
  1194.                     var e = g[b].content.match(/charset=(.*)/);
  1195.                     if (e) {
  1196.                         a = e[1];
  1197.                         break
  1198.                     }
  1199.                 }
  1200.             } else a = c.characterSet || c.charset;
  1201.             return a
  1202.         }
  1203.         function V() {
  1204.             var a = null,
  1205.                 c = null,
  1206.                 b, f = e.navigator;
  1207.             if ("undefined" != typeof f.plugins && "object" == typeof f.plugins["Shockwave Flash"])(a = f.plugins["Shockwave Flash"].description) && !("undefined" != typeof f.mimeTypes && f.mimeTypes["application/x-shockwave-flash"] && !f.mimeTypes["application/x-shockwave-flash"].enabledPlugin) && (c = a.replace(/([a-zA-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, "."));
  1208.             else if ("undefined" != typeof e.ActiveXObject) try {
  1209.                 if (b = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"))(a = b.GetVariable("$version")) && (c = a.split(" ")[1].replace(/,/g, ".").replace(/[^.\d]/g, ""))
  1210.             } catch (n) {}
  1211.             return c
  1212.         }
  1213.         function ea() {
  1214.             var a = c.title;
  1215.             "string" != typeof a && (a = (a = c.getElementsByTagName("title")) && a.length ? a[0].innerHTML : "");
  1216.             return a
  1217.         }
  1218.         function Jb() {
  1219.             var a = null;
  1220.             if (e.ActiveXObject) try {
  1221.                 var c = new ActiveXObject("AgControl.AgControl"),
  1222.                     b = function (a, b, c, f) {
  1223.                         for (; a.isVersionSupported(b[0] + "." + b[1] + "." + b[2] + "." + b[3]);) b[c] += f;
  1224.                         b[c] -= f
  1225.                     },
  1226.                     f = [1, 0, 0, 0];
  1227.                 b(c, f, 0, 1);
  1228.                 b(c, f, 1, 1);
  1229.                 b(c, f, 2, 1E4);
  1230.                 b(c, f, 2, 1E3);
  1231.                 b(c, f, 2, 100);
  1232.                 b(c, f, 2, 10);
  1233.                 b(c, f, 2, 1);
  1234.                 b(c, f, 3, 1);
  1235.                 a = f.join(".")
  1236.             } catch (n) {} else if (c = Y.plugins["Silverlight Plug-In"]) a = c.description;
  1237.             return a
  1238.         }
  1239.         function pa() {
  1240.             for (var a = new Date, a = [a.getFullYear(), a.getMonth() + 1, a.getDate(), a.getHours(), a.getMinutes(), a.getSeconds()], c = "", b = 0; b < a.length; b++) c += 10 > a[b] ? "0" + a[b] : a[b];
  1241.             return c
  1242.         }
  1243.         function G() {
  1244.             var a = -1;
  1245.             if (c.documentElement && "CSS1Compat" == c.compatMode) a = c.documentElement.clientWidth;
  1246.             else if (c.body) a = c.body.clientWidth;
  1247.             return a
  1248.         }
  1249.         function fa() {
  1250.             var a = -1;
  1251.             if (c.documentElement && "CSS1Compat" == c.compatMode) a = c.documentElement.clientHeight;
  1252.             else if (c.body) a = c.body.clientHeight;
  1253.             return a
  1254.         }
  1255.         function p() {
  1256.             Ya._metrika.counters = Ya._metrika.counters || {};
  1257.             var a = !1,
  1258.                 g = A + ":" + m;
  1259.             if (Ya._metrika.hitParam[g]) if (1 == m && !Ya._metrika.counters[g]) a = !0;
  1260.             else return !1;
  1261.             Ya._metrika.counters[g] = l;
  1262.             Ya._metrika.hitParam[g] = 1;
  1263.             var b;
  1264.             l._webvisor = !B && (H && H.webvisor || sb || tb);
  1265.             if (!B && !a) {
  1266.                 var f = Ha(Za);
  1267.                 "b" != f && "w" != f && (f = "");
  1268.                 ab() || (f = "b");
  1269.                 sa(R.href, ea(), c.referrer, J, {
  1270.                     ut: za,
  1271.                     he: H ? ~~H.httpError : 0,
  1272.                     ad: 1 == m && e.Ya && e.Ya.Direct ? !0 : !1,
  1273.                     saveRef: !0
  1274.                 }, f, function (a) {
  1275.                     var a = a || {},
  1276.                         c = a.webvisor || {},
  1277.                         a = [];
  1278.                     if (b) {
  1279.                         c = +c.recp;
  1280.                         if (!isFinite(c) || 0 > c || 1 < c) f = "w";
  1281.                         f || (f = ya % 100 / 100 < c ? "w" : "b");
  1282.                         ta(Za, f, 30);
  1283.                         "w" == f ? F(a, "visor") : b.stop()
  1284.                     }
  1285.                     E.init(a)
  1286.                 })
  1287.             }
  1288.             va();
  1289.             H && (H.enableAll ? l.enableAll() : (H.clickmap && l.clickmap(H.clickmap), H.trackLinks && l.trackLinks(H.trackLinks), H.accurateTrackBounce && l.accurateTrackBounce(H.accurateTrackBounce)), H.trackHash && l.trackHash(!0));
  1290.             l._webvisor && (b = new bb(A, m, H, ya, E))
  1291.         }
  1292.         function h(a) {
  1293.             var c = {
  1294.                 delay: ja
  1295.             };
  1296.             switch (typeof a) {
  1297.             case "string":
  1298.                 c.on = !0;
  1299.                 break;
  1300.             case "object":
  1301.                 c.on = !0;
  1302.                 c.delay = "number" != typeof a.delay ? ja : a.delay;
  1303.                 break;
  1304.             case "boolean":
  1305.                 c.on = a;
  1306.                 break;
  1307.             default:
  1308.                 return
  1309.             }
  1310.             N = c
  1311.         }
  1312.         function va() {
  1313.             h(!1);
  1314.             r(c, "click", function (a) {
  1315.                 N.on && wa(a)
  1316.             })
  1317.         }
  1318.         function wa(a) {
  1319.             function c(a) {
  1320.                 var f;
  1321.                 f = (f = b.innerHTML ? b.innerHTML.toString().replace(/<\/?[^>]+>/gi, "") : "") ? f.toString().replace(/^\s+/, "").replace(/\s+$/, "") : "";
  1322.                 M(e, e == f ? "" : f, o().href, null, a)
  1323.             }
  1324.             var b = ma(a);
  1325.             if (b) {
  1326.                 var f = !1,
  1327.                     e = "" + b.href,
  1328.                     k = e ? e.split(/\?/)[0] : "";
  1329.                 if (Xa.test(k) || Xa.test(e) || ba(e, O) || ba(k, O)) f = !0;
  1330.                 var h = b.className,
  1331.                     k = h && -1 != h.search(/ym-disable-tracklink/) ? !0 : !1,
  1332.                     h = h && -1 != h.search(/ym-external-link/) ? !0 : !1;
  1333.                 if (!k) if (a = {
  1334.                     ln: !0,
  1335.                     dl: f,
  1336.                     isDelay: na(a, b),
  1337.                     delay: N.delay
  1338.                 }, h) c(a);
  1339.                 else if (ca(o().hostname, b.hostname)) {
  1340.                     if (f) a.ln = !1, c(a)
  1341.                 } else if (!(e && -1 != e.search(/^ *javascript:/i))) a.ut = ia, c(a)
  1342.             }
  1343.         }
  1344.         function Lb(a, g) {
  1345.             function b() {
  1346.                 if (!A) {
  1347.                     u && clearTimeout(u);
  1348.                     var b = g - (l ? o : o + +new Date - t);
  1349.                     0 > b && (b = 0);
  1350.                     u = setTimeout(function () {
  1351.                         A = !0;
  1352.                         n(!1);
  1353.                         a()
  1354.                     }, b)
  1355.                 }
  1356.             }
  1357.             function f() {
  1358.                 m || (h = !0, l = !1, m = !0, b())
  1359.             }
  1360.             function n(a) {
  1361.                 for (var b = 0; b < v.length; b += 3) a ? r(v[b], v[b + 1], v[b + 2]) : y(v[b], v[b + 1], v[b + 2])
  1362.             }
  1363.             var h = !1,
  1364.                 m = !1,
  1365.                 l = !0,
  1366.                 o = 0,
  1367.                 t = +new Date,
  1368.                 u = null,
  1369.                 A = !1,
  1370.                 v = [e, "blur", function () {
  1371.                     l = h = m = !0;
  1372.                     o += +new Date - t;
  1373.                     t = +new Date;
  1374.                     b()
  1375.                 },
  1376.                 e, "focus", function () {
  1377.                     !h && !m && (o = 0);
  1378.                     t = +new Date;
  1379.                     h = m = !0;
  1380.                     l = !1;
  1381.                     b()
  1382.                 },
  1383.                 c, "click", f, c, "mousemove", f, c, "keydown", f, c, "scroll", f];
  1384.             n(!0);
  1385.             b()
  1386.         }
  1387.         function Ka(a) {
  1388.             function c() {
  1389.                 var a = o().hash.split("#")[1];
  1390.                 if ("undefined" == typeof a) return !1;
  1391.                 var b = a.indexOf("?");
  1392.                 0 < b && (a = a.substring(0, b));
  1393.                 return a
  1394.             }
  1395.             var b = c();
  1396.             (function n() {
  1397.                 var e = c();
  1398.                 e !== b && (a(), b = e);
  1399.                 Da = setTimeout(n, 200)
  1400.             })()
  1401.         }
  1402.         function xa() {
  1403.             Ma = ga = La;
  1404.             M(o().href, ea(), Ma, null, {
  1405.                 ut: za,
  1406.                 ad: 1 == m && e.Ya && e.Ya.Direct ? !0 : !1,
  1407.                 wh: !0,
  1408.                 saveRef: !0
  1409.             });
  1410.             La = o().href
  1411.         }
  1412.         function Xb(a) {
  1413.             function g() {
  1414.                 var a = c.documentElement;
  1415.                 return Math.max(a.scrollWidth, c.body.scrollWidth, a.clientWidth)
  1416.             }
  1417.             function b(a) {
  1418.                 function b(a) {
  1419.                     for (var c = 0, f = 0; a;) c += parseInt(a.offsetTop), f += parseInt(a.offsetLeft), a = a.offsetParent;
  1420.                     return {
  1421.                         top: c,
  1422.                         left: f
  1423.                     }
  1424.                 }
  1425.                 function f(a) {
  1426.                     var a = a.getBoundingClientRect(),
  1427.                         b = c.body,
  1428.                         g = c.documentElement,
  1429.                         w = a.left + (e.pageXOffset || g.scrollLeft || b.scrollLeft) - (g.clientLeft || b.clientLeft || 0);
  1430.                     return {
  1431.                         top: Math.round(a.top + (e.pageYOffset || g.scrollTop || b.scrollTop) - (g.clientTop || b.clientTop || 0)),
  1432.                         left: Math.round(w)
  1433.                     }
  1434.                 }
  1435.                 return a.getBoundingClientRect ? f(a) : b(a)
  1436.             }
  1437.             function f(a) {
  1438.                 return a.toString().toUpperCase()
  1439.             }
  1440.             function h(a) {
  1441.                 return a && (a = "" + a.className) && -1 != a.search(/ym-clickmap-ignore/) ? !0 : !1
  1442.             }
  1443.             function k(a) {
  1444.                 if (null == a.pageX && null != a.clientX) {
  1445.                     var b = c.documentElement,
  1446.                         f = c.body;
  1447.                     a.pageX = a.clientX + (b && b.scrollLeft || f && f.scrollLeft || 0) - (b.clientLeft || 0);
  1448.                     a.pageY = a.clientY + (b && b.scrollTop || f && f.scrollTop || 0) - (b.clientTop || 0)
  1449.                 }
  1450.                 return {
  1451.                     x: a.pageX,
  1452.                     y: a.pageY
  1453.                 }
  1454.             }
  1455.             function m(a) {
  1456.                 for (var b = f(a.nodeName); a.parentNode && "BODY" != b && "HTML" != b;) {
  1457.                     if ("A" == b || "INPUT" == b || "TEXTAREA" == b) return !0;
  1458.                     a = a.parentNode;
  1459.                     b = a.nodeName
  1460.                 }
  1461.                 return !1
  1462.             }
  1463.             for (var l = this, A = 0, x = null, u = "A,B,BIG,BODY,BUTTON,DD,DIV,DL,DT,EM,FIELDSET,FORM,H1,H2,H3,H4,H5,H6,HR,I,IMG,INPUT,LI,OL,P,PRE,SELECT,SMALL,SPAN,STRONG,SUB,SUP,TABLE,TBODY,TD,TEXTAREA,TFOOT,TH,THEAD,TR,U,UL,ABBR,AREA,BLOCKQUOTE,CAPTION,CENTER,CITE,CODE,CANVAS,DFN,EMBED,FONT,INS,KBD,LEGEND,LABEL,MAP,OBJECT,Q,S,SAMP,STRIKE,TT,ARTICLE,AUDIO,ASIDE,FOOTER,HEADER,MENU,METER,NAV,PROGRESS,SECTION,TIME,VIDEO,NOINDEX,NOBR".split(","), p = 59, v = String.fromCharCode, B = {}, D = 0; D < u.length; D++) B[u[D]] = v(p), v(p), p++;
  1464.             this.handler = function (a) {
  1465.                 var u = c.getElementsByTagName("body")[0];
  1466.                 if (!e.ymDisabledClickmap && !h(u)) {
  1467.                     if (l._prefs.hasQuota) {
  1468.                         if (!l._prefs.quota) return;
  1469.                         l._prefs.quota--
  1470.                     }
  1471.                     var v = a.target || a.srcElement;
  1472.                     if (3 == v.nodeType) v = v.parentNode;
  1473.                     var u = f(v.nodeName),
  1474.                         i = k(a),
  1475.                         q;
  1476.                     if (!a.which && a.button !== ka) a.which = a.button & 1 ? 1 : a.button & 2 ? 3 : a.button & 4 ? 2 : 0;
  1477.                     q = a.which;
  1478.                     if (!(q = (2 == q || 3 == q) && "A" != u)) q = v.offsetHeight, q = 0 === v.offsetWidth && 0 === q || v.style && "none" === v.style.display;
  1479.                     if (!q) {
  1480.                         b: {
  1481.                             for (q = v; q.parentNode;) {
  1482.                                 if (h(q)) {
  1483.                                     q = !0;
  1484.                                     break b
  1485.                                 }
  1486.                                 q = q.parentNode
  1487.                             }
  1488.                             q = !1
  1489.                         }
  1490.                         if (!q) {
  1491.                             b: {
  1492.                                 q = l._prefs.ignoreTags;
  1493.                                 for (var p = 0; p < q.length; p++) if (f(q[p]) == f(u)) {
  1494.                                     q = !0;
  1495.                                     break b
  1496.                                 }
  1497.                                 q = !1
  1498.                             }
  1499.                             q = q || !l._prefs.filter(v, u)
  1500.                         }
  1501.                         if (!q) {
  1502.                             u = +new Date;
  1503.                             v = {
  1504.                                 dom: v,
  1505.                                 x: i.x,
  1506.                                 y: i.y,
  1507.                                 time: u
  1508.                             };
  1509.                             if (i = 50 < u - A) if (!(i = !l._prefs.ignoreSameClicks)) {
  1510.                                 if (i = x) {
  1511.                                     q = Math.abs(i.x - v.x);
  1512.                                     var p = Math.abs(i.y - v.y),
  1513.                                         s = v.time - i.time,
  1514.                                         i = i.dom == v.dom && 2 > q && 2 > p && 1E3 > s ? !0 : !1
  1515.                                 } else i = !1;
  1516.                                 i = !i
  1517.                             }
  1518.                             if (i && "MetrikaPlayer" != e.name) {
  1519.                                 q = k(a);
  1520.                                 i = q.x;
  1521.                                 q = q.y;
  1522.                                 var s = a.target || a.srcElement,
  1523.                                     r = l._prefs,
  1524.                                     D = b(s),
  1525.                                     z = "",
  1526.                                     p = o().href;
  1527.                                 switch (r.mode) {
  1528.                                 case "fixed":
  1529.                                     z = "0";
  1530.                                     m(s) && (z += "u");
  1531.                                     break;
  1532.                                 case "centered":
  1533.                                     z = "1";
  1534.                                     D = Math.floor(g() / 2);
  1535.                                     i = i > D ? i - D + 32768 : i;
  1536.                                     m(s) && (z += "u");
  1537.                                     break;
  1538.                                 default:
  1539.                                     z = f(s.nodeName);
  1540.                                     z = "BODY" == z || "HTML" == z ? g() : s.offsetWidth;
  1541.                                     r = f(s.nodeName);
  1542.                                     "BODY" == r || "HTML" == r ? (r = c.documentElement, r = Math.max(r.scrollHeight, c.body.scrollHeight, r.clientHeight)) : r = s.offsetHeight;
  1543.                                     z || (z = 1);
  1544.                                     r || (r = 1);
  1545.                                     i = Math.floor(65535 * (i - D.left) / z);
  1546.                                     q = Math.floor(65535 * (q - D.top) / r);
  1547.                                     for (D = ""; s.parentNode && "BODY" != f(s.nodeName) && "HTML" != f(s.nodeName);) {
  1548.                                         D += B[s.nodeName] || "*";
  1549.                                         b: {
  1550.                                             for (var z = s.parentNode, y = r = 0; y < z.childNodes.length; y++) if (s.nodeName == z.childNodes[y].nodeName) {
  1551.                                                 if (s == z.childNodes[y]) {
  1552.                                                     z = r;
  1553.                                                     break b
  1554.                                                 }
  1555.                                                 r++
  1556.                                             }
  1557.                                             z = 0
  1558.                                         }
  1559.                                         D += z || "";
  1560.                                         s = s.parentNode
  1561.                                     }
  1562.                                     z = C(D, 128)
  1563.                                 }
  1564.                                 P || (p = p ? p.replace(/\#.*$/, "") : p);
  1565.                                 "function" == typeof l._prefs.urlFilter && (p = l._prefs.urlFilter(p));
  1566.                                 i = oa(gb, ["page-url", C(p, aa), "pointer-click", "x:" + i + ":y:" + q + ":t:" + Math.floor(Math.floor(+new Date - vb) / 100) + ":p:" + z]);
  1567.                                 (new Image).src = i;
  1568.                                 t(i);
  1569.                                 if (i = a.target || a.srcElement) {
  1570.                                     if (3 == i.nodeType) i = i.parentNode;
  1571.                                     for (q = f(i.nodeName); i.parentNode && i.parentNode.nodeName && ("A" != q && "AREA" != q || !i.href);) i = i.parentNode, q = f(i.nodeName);
  1572.                                     i = !i.href ? !1 : i
  1573.                                 } else i = !1;
  1574.                                 i && na(a, i) && T(l._prefs.delay)
  1575.                             }
  1576.                             A = u;
  1577.                             x = v
  1578.                         }
  1579.                     }
  1580.                 }
  1581.             };
  1582.             this.setPrefs = function (a) {
  1583.                 function b() {
  1584.                     return !0
  1585.                 }
  1586.                 this._prefs = "undefined" == typeof a || !1 === a || !0 === a ? {
  1587.                     filter: b,
  1588.                     ignoreTags: [],
  1589.                     mode: "",
  1590.                     delay: ja,
  1591.                     quota: 0,
  1592.                     hasQuota: !1,
  1593.                     ignoreSameClicks: !0
  1594.                 } : {
  1595.                     filter: a.filter || b,
  1596.                     ignoreTags: a.ignoreTags || [],
  1597.                     mode: a.mode || "",
  1598.                     delay: "undefined" == typeof a.delay ? ja : a.delay,
  1599.                     quota: a.quota || 0,
  1600.                     hasQuota: !! a.quota,
  1601.                     ignoreSameClicks: "undefined" == typeof a.ignoreSameClicks ? !0 : !1,
  1602.                     urlFilter: a.urlFilter
  1603.                 }
  1604.             };
  1605.             this.updateStatus = function (a) {
  1606.                 switch (typeof a) {
  1607.                 case "undefined":
  1608.                     this.start(!0);
  1609.                     break;
  1610.                 case "boolean":
  1611.                     a ? this.start(a) : this.stop();
  1612.                     break;
  1613.                 case "object":
  1614.                     this.start(a)
  1615.                 }
  1616.             };
  1617.             this._start = !1;
  1618.             this.start = function (a) {
  1619.                 this.setPrefs(a);
  1620.                 this._start || r(c, "click", this.handler);
  1621.                 this._start = !0
  1622.             };
  1623.             this.stop = function () {
  1624.                 this._start && y(c, "click", this.handler);
  1625.                 this._start = !1
  1626.             };
  1627.             this.start(a)
  1628.         }
  1629.         var l = this,
  1630.             ya = Math.round(1073741824 * Math.random()),
  1631.             za = "",
  1632.             ga = R.href,
  1633.             La = R.href,
  1634.             Ma = "";
  1635.         if (!Ya._metrika.counter) Ya._metrika.counter = l;
  1636.         var H;
  1637.         if ("object" == typeof A) H = A, B = A.defer, za = A.ut, m = A.type, J = A.params, A = A.id;
  1638.         var A = A || 0,
  1639.             m = m || 0,
  1640.             Na = "//mc.yandex.ru/watch/",
  1641.             gb = "//mc.yandex.ru/clmap/",
  1642.             W = [],
  1643.             Aa = null,
  1644.             Ba = null,
  1645.             ha = null,
  1646.             E = new function (a, c) {
  1647.                 function b(a, b, c) {
  1648.                     if (l) f(a, b, c);
  1649.                     else {
  1650.                         if ("XMLHttpRequest" in e) {
  1651.                             var g = new XMLHttpRequest;
  1652.                             if ("withCredentials" in g) {
  1653.                                 var k = c ? "POST" : "GET",
  1654.                                     a = h(a, b, "POST" == k ? 1 : 0);
  1655.                                 g.open(k, a, !0);
  1656.                                 g.withCredentials = !0;
  1657.                                 "POST" == k && "[object nsXPCComponents]" != "" + e.Components && g.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  1658.                                 g.send("POST" == k ? $a(c) : null);
  1659.                                 return
  1660.                             }
  1661.                         }
  1662.                         for (k in c) c.hasOwnProperty(k) && (b[k] = c[k]);
  1663.                         (new Image).src = h(a, b, 0)
  1664.                     }
  1665.                 }
  1666.                 function f(a, b, c) {
  1667.                     var f = "ifr" + Math.round(1E10 * Math.random()),
  1668.                         e = l.createElement("div"),
  1669.                         a = ['<iframe name="', f, '"></iframe>', '<form action="', h(a, b, 0), '" method="post" target="', f, '" enctype="application/x-www-form-urlencoded">'],
  1670.                         g;
  1671.                     for (g in c) c.hasOwnProperty(g) && F(a, '<textarea name="', g, '">', c[g], "</textarea>");
  1672.                     F(a, "</form>");
  1673.                     e.innerHTML = a.join("");
  1674.                     l.body.appendChild(e);
  1675.                     e.getElementsByTagName("form")[0].submit();
  1676.                     setTimeout(function () {
  1677.                         l.body.removeChild(e)
  1678.                     }, 1E4)
  1679.                 }
  1680.                 function h(b, f, e) {
  1681.                     f["browser-info"] = ["ct", e, f["browser-info"]].join(":");
  1682.                     return "//" + a + "/" + b + "/" + c + "?" + $a(f)
  1683.                 }
  1684.                 function k() {
  1685.                     if (e.ActiveXObject) {
  1686.                         var a = new ActiveXObject("htmlfile");
  1687.                         a.open();
  1688.                         a.write("<html><body></body></html>");
  1689.                         a.close();
  1690.                         return a
  1691.                     }
  1692.                     return null
  1693.                 }
  1694.                 try {
  1695.                     var l = k()
  1696.                 } catch (m) {}
  1697.                 var o = "",
  1698.                     p = [];
  1699.                 return {
  1700.                     send: function (a, c, f, e) {
  1701.                         a ? o ? -1 < o.indexOf("|" + a + "|") && b(c, f, e) : F(p, arguments) : b(c, f, e)
  1702.                     },
  1703.                     init: function (a) {
  1704.                         o = "|" + a.join("|") + "|";
  1705.                         for (a = 0; a < p.length; a++) - 1 < o.indexOf("|" + p[a][0] + "|") && b(p[a][1], p[a][2], p[a][3]);
  1706.                         p.length = 0
  1707.                     }
  1708.                 }
  1709.             }("mc.yandex.ru", A);
  1710.         l.reachGoal = function (a, e) {
  1711.             var b = a ? "goal://" + o().hostname + "/" + a : o().href,
  1712.                 f = ea(),
  1713.                 h = a ? o().href : c.referrer;
  1714.             M(b, f, h, e, {
  1715.                 ar: !0,
  1716.                 isDelay: a ? !0 : !1,
  1717.                 delay: 100
  1718.             });
  1719.             return !0
  1720.         };
  1721.         var N;
  1722.         l.trackLinks = h;
  1723.         l.hit = function (a, c, b, f, e) {
  1724.             a && M(a, c, b, f, {
  1725.                 ut: e,
  1726.                 ar: !0,
  1727.                 saveRef: !0
  1728.             })
  1729.         };
  1730.         l.params = function (a) {
  1731.             if (a) {
  1732.                 var c = arguments.length;
  1733.                 if (1 < c) {
  1734.                     for (var b = {}, f = b, e = 0; e < c - 1; e++) {
  1735.                         var h = "" + arguments[e];
  1736.                         f[h] = {};
  1737.                         e < c - 2 && (f = f[h])
  1738.                     }
  1739.                     f[h] = arguments[c - 1];
  1740.                     a = b
  1741.                 }
  1742.                 M("", "", "", a, {
  1743.                     ar: !0,
  1744.                     pa: !0,
  1745.                     onlyData: !0
  1746.                 })
  1747.             }
  1748.         };
  1749.         l.file = function (a, c, b, f) {
  1750.             a && M(a, "", o().href, f, {
  1751.                 ar: !0,
  1752.                 ln: !0,
  1753.                 dl: !0
  1754.             })
  1755.         };
  1756.         l.extLink = function (a, c, b, f) {
  1757.             a && M(a, "", o().href, f, {
  1758.                 ar: !0,
  1759.                 ln: !0,
  1760.                 ut: ia
  1761.             })
  1762.         };
  1763.         l.notBounce = function () {
  1764.             M("", "", "", null, {
  1765.                 ar: !0,
  1766.                 nb: !0,
  1767.                 onlyData: !0
  1768.             })
  1769.         };
  1770.         var O = [];
  1771.         l.addFileExtension = function (a) {
  1772.             "string" == typeof a ? O.push(a) : O = O.concat(a)
  1773.         };
  1774.         l.clickmap = function (a) {
  1775.             l._clickmap ? l._clickmap.updateStatus(a) : l._clickmap = new Xb(a)
  1776.         };
  1777.         var Ca = !1;
  1778.         l.accurateTrackBounce = function (a) {
  1779.             function e() {
  1780.                 l.notBounce()
  1781.             }
  1782.             Ca || (Ca = !0, ra(c.referrer, o().href) || ("number" != typeof a && (a = 15E3), $ ? setTimeout(e, a) : Lb(e, a)))
  1783.         };
  1784.         var Da = null,
  1785.             P = !1;
  1786.         l.trackHash = function (a) {
  1787.             !1 === a ? P && ("onhashchange" in e ? y(e, "hashchange", xa) : clearInterval(Da), P = !1) : P || ("onhashchange" in e ? r(e, "hashchange", xa) : Ka(xa), P = !0);
  1788.             l._trackHash = P
  1789.         };
  1790.         l.video = function (a, c, b, f) {
  1791.             var e = ["end", "play", "pause", "seek"];
  1792.             if (a && b) {
  1793.                 a: {
  1794.                     for (var h = 0, l = e.length; h < l; h += 1) if (a === e[h]) {
  1795.                         e = h;
  1796.                         break a
  1797.                     }
  1798.                     e = !1
  1799.                 }!1 !== e && M(b, f || "", "", null, {
  1800.                     ar: !0,
  1801.                     va: a,
  1802.                     vt: ~~c
  1803.                 })
  1804.             }
  1805.         };
  1806.         l.social = function (a, c, b) {
  1807.             a && c && M(b || o().href, "", "", null, {
  1808.                 ar: !0,
  1809.                 sn: C(a, 64),
  1810.                 sa: C(c, 64)
  1811.             })
  1812.         };
  1813.         l.enableAll = function () {
  1814.             l.trackLinks(!0);
  1815.             l.clickmap(!0);
  1816.             l.accurateTrackBounce()
  1817.         };
  1818.         l.pause = T;
  1819.         l.uploadPage = function () {};
  1820.         A && p()
  1821.     };
  1822.     e.ya_cid && new Ya.Metrika(e.ya_cid, e.ya_params, e.ya_class);
  1823.     if (e.ya_cid && !e.ya_hit) e.ya_hit = function (c, e) {
  1824.         Ya._metrika.counter && Ya._metrika.counter.reachGoal(c, e)
  1825.     };
  1826.     var L = e.yandex_metrika_callback,
  1827.         J = e.yandex_metrika_callbacks;
  1828.     "function" == typeof L && L();
  1829.     if ("object" == typeof J) for (L = 0; L < J.length; L++) {
  1830.         var ra = J[L];
  1831.         ra && (J[L] = null, ra())
  1832.     }
  1833.     T("yandex_metrika_callback");
  1834.     T("yandex_metrika_callbacks");
  1835.     J = R.href; - 1 != J.search("ym_playback=linkmap") ? ma("linkmap") : -1 != J.search("ym_playback=clickmap") && ma("clickmap");
  1836.     e.Ya.Metrika.informer = function (c) {
  1837.         var e = !! Ya.Metrika._informer;
  1838.         Ya.Metrika._informer = c;
  1839.         e || ba(ua + "//bs.yandex.ru/metrika/informer.js")
  1840.     };
  1841.     if (top != e && parent == top && e.postMessage && !Ya.Metrika_visorPlayerOn) {
  1842.         Ya.Metrika_visorPlayerOn = !0;
  1843.         J = c.createElement("div");
  1844.         J.innerHTML = '<iframe name="RemoteIframe" allowtransparency="true" style="position: absolute; left: -999px; top: -999px; width: 1px; height: 1px;"></iframe>';
  1845.         var sa = J.firstChild;
  1846.         setTimeout(function () {
  1847.             c.body.insertBefore(sa, c.body.firstChild);
  1848.             try {
  1849.                 var e = sa.contentWindow.document
  1850.             } catch (o) {}
  1851.             e && (e.open(), e.write('<!doctype html><html><head><meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7,IE=edge" /></head><body><script type="text/javascript">var newversion = true;try {if (top.postMessage) {window.onmessage = function(evt) {evt = evt || window.event;try {var message = new Function("return " + evt.data)();} catch (e) {return;}if (/(^|\\.)yandex\\.(ru|com|ua|kz|by|com\\.tr)(:\\d{4})?$/.test(evt.origin) && message.name == "script" && message.data) {var head = document.getElementsByTagName("head")[0];var base = document.createElement("base");base.href = message.data;head.appendChild(base);var script = document.createElement("script");script.src = message.data;head.appendChild(script);parent.removeEventListener("message", window.onmessage, false);window.onmessage = null;}};if (navigator.userAgent.indexOf("Firefox/3.6.") > -1) {parent.addEventListener("message", window.onmessage, false);}top.postMessage(\'{"name":"ping"}\', "*");}} catch (e) {}<\/script></body></html>'), e.close())
  1852.         }, 200)
  1853.     }
  1854. })(this, this.document);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement