Skip to content

Instantly share code, notes, and snippets.

@justpsvm justpsvm/krpano.js
Created May 22, 2018

Embed
What would you like to do?
解密后的 krpano.js 版本号: krpano-1.19-pr15
/*
krpano Embedding Script
krpano 1.19-pr4 (build 2016-04-07)
*/
function createPanoViewer(e) {
function ut(e) {
return ("" + e).toLowerCase()
}
function at(e, t) {
return e[d](t) >= 0
}
function ft() {
var t, r, i, s, o, u, a, f, l = n.location;
l = l.search || l.hash;
if (l) {
t = ".html5.flash.wmode.mobilescale.fakedevice.", r = l[R](1)[j]("&");
for (i = 0; i < r[M]; i++) s = r[i], o = s[d]("="), o == -1 && (o = s[M]), u = s[R](0, o), a = ut(u), f = s[R](o + 1), t[d]("." + a) >= 0 ? e[a] = f : a[N](0, 9) == "initvars." ? (e[O] || (e[O] = {}), e[O][u[N](9)] = f) : e.addVariable(u, f)
}
}
function lt(e) {
return e[P] = ft, e
}
function ct() {
function x() {
var e, n, i, s, o, u, a;
if (t.plugins) {
e = t.plugins["Shockwave Flash"];
if (typeof e == "object") {
n = e.description;
if (n) {
i = v, t[q] && (s = t[q]["application/x-shockwave-flash"], s && (s.enabledPlugin || (i = p)));
if (i) {
o = n[j](" ");
for (u = 0; u < o[M]; ++u) {
a = parseFloat(o[u]);
if (isNaN(a)) continue;
return a
}
}
}
}
}
if (r[G]) try {
e = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
if (e) {
n = e.GetVariable("$version");
if (n) return parseFloat(n[j](" ")[1][j](",").join("."))
}
} catch (f) {}
return 0
}
function T() {
var e, t, i = p,
s = n[Z]("div");
for (e = 0; e < 5; e++)
if (typeof s.style[["p", "msP", "MozP", "WebkitP", "OP"][e] + "erspective"] != U) {
i = v, e == 3 && r.matchMedia && (t = r.matchMedia("(-webkit-transform-3d)"), t && (i = t.matches == v));
break
}
return i
}
function C() {
var e, t, i = {
failIfMajorPerformanceCaveat: v
};
if (r._krpWGL == v) return v;
try {
e = n[Z]("canvas");
for (t = 0; t < 4; t++)
if (e.getContext([B, "experimental-webgl", "moz-webgl", "webkit-3d"][t], i)) return r._krpWGL = v, v
} catch (s) {}
return p
}
var l, c, h, m, g, y, b, w, E, S;
if (s > 0) return;
l = p, c = p, h = p, c = C();
if (e.isDevice("iphone|ipad|ipod") && i[d]("opera mini") < 0) a = f = v, l = v;
else {
o = x(), o >= 10.1 && (u = v), l = T(), m = ut(t.platform), g = 0, y = 0, b = 0, w = i[d]("firefox/"), w < 0 && (w = i[d]("gecko/")), w >= 0 && (g = parseInt(i[N](1 + i[d]("/", w)), 10)), h = !!r[et], w = i[d](et), w > 0 && (b = parseInt(i[N](w + 7), 10), h = v), w = i[d](tt), w > 0 && (y = parseInt(i[N](w + 8), 10), g >= 18 && (y = 4)), l && (y > 0 && y < 4 && (l = p), g > 3 && g < 18 && y > 1 && (c = l = p), c || (m[d](Q) < 0 && g > 3 && y < 1 && (l = p), h && (l = p)));
if (l || c) {
a = v, E = i[d]("blackberry") >= 0 || i[d]("rim tablet") >= 0 || i[d]("bb10") >= 0, S = (t.msMaxTouchPoints | 0) > 1;
if (y >= 4 || E || S) f = v
}
}
s = 1 | l << 1 | c << 2 | h << 3
}
function ht(e) {
function L(e) {
function a() {
r[m] ? (r[m]("DOMMouseScroll", c, p), r[m]("mousewheel", c, p), n[m]("mousedown", f, p), n[m]("mouseup", l, p)) : (r.opera ? r.attachEvent(_, c) : r[_] = n[_] = c, n.onmousedown = f, n.onmouseup = l)
}
function f(e) {
e || (e = r.event, e[w] = e[X]), u = e ? e[w] : x
}
function l(e) {
var t, i, s, a, f, l, c, h;
e || (e = r.event, e[w] = e[X]), t = 0, i = o[M];
for (t = 0; t < i; t++) {
s = o[t];
if (s) {
a = n[s.id];
if (a && s.needfix) {
f = a[S](), l = a == e[w], c = a == u, h = e.clientX >= f.left && e.clientX < f.right && e.clientY >= f.top && e.clientY < f.bottom;
if ((l || c) && h == p) try {
a[I] && a[I](0, "mouseUp")
} catch (d) {}
}
}
}
return v
}
function c(t) {
var i, u, a, f, l, c;
t || (t = r.event, t[w] = t[X]), i = 0, u = p, t.wheelDelta ? (i = t.wheelDelta / 120, r.opera && s && (i /= 4 / 3)) : t.detail && (i = -t.detail, s == p && (i /= 3));
if (i) {
a = 0, f = o[M];
for (a = 0; a < f; a++) {
l = o[a];
if (l) {
c = n[l.id];
if (c && c == t[w]) {
try {
c.jswheel ? c.jswheel(i) : c[b] ? c[b](i) : c[k] && (c[k](), c[b] && c[b](i))
} catch (h) {}
u = v;
break
}
}
}
}
e[$] == p && (u = p);
if (u) return t[nt] && t[nt](), t[st] && t[st](), t.cancelBubble = v, t.cancel = v, n[m] || (t.returnValue = p), p
}
var i, s = ut(t.appVersion)[d](Q) >= 0,
o = r._krpMW,
u = x;
o || (o = r._krpMW = new Array, a()), i = e[y], o.push({
id: e.id,
needfix: s || !!r[et] || i == "opaque" || i == "transparent"
})
}
var i, s, o, u, a, f, l = encodeURIComponent,
c = "",
h = e[rt],
T = e[H],
N = e.id;
for (;;) {
s = n[E](N);
if (!s) break;
N += String.fromCharCode(48 + Math.floor(9 * Math.random())), e.id = N
}
e[y] && (T[y] = e[y]), e[C] && (T[C] = e[C]), e[z] !== undefined && (h[z] = e[z]), e[y] = ut(T[y]), T.allowfullscreen = "true", T.allowscriptaccess = it, i = "browser.", c = i + "useragent=" + l(t.userAgent) + "&" + i + "location=" + l(r.location.href);
for (i in h) c += "&" + l(i) + "=" + l(h[i]);
i = O, h = e[i];
if (h) {
c += "&" + i + "=";
for (i in h) c += "%26" + l(escape(i)) + "=" + l(escape(h[i]))
}
T.flashvars = c, e[A] && (T.base = e[A]), o = "", u = ' id="' + N + '" width="' + e.width + '" height="' + e.height + '" style="outline:none;" ', a = "_krpcb_" + N, !e[F] || (r[a] = function() {
try {
delete r[a]
} catch (t) {
r[a] = x
}
e[F](n[E](N))
});
if (t.plugins && t[q] && !r[G]) {
o = '<embed name="' + N + '"' + u + 'type="application/x-shockwave-flash" src="' + e.swf + '" ';
for (i in T) o += i + '="' + T[i] + '" ';
o += " />"
} else {
o = "<object" + u + 'classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"><param name="movie" value="' + e.swf + '" />';
for (i in T) o += '<param name="' + i + '" value="' + T[i] + '" />';
o += "</object>"
}
e[g].innerHTML = o, e.focus === v && (f = n[E](N), f && f.focus()), L(e)
}
function pt(e) {
typeof embedpanoJS !== U ? embedpanoJS(e) : e[T]("krpano HTML5 Viewer not available!")
}
function dt(n, r) {
var u, a, f, l;
n == 1 ? (o >= 11.4 && (u = v, ut(t.platform)[d](Q) >= 0 && ut(t.vendor)[d]("apple") >= 0 && (a = i[d]("webkit/"), a > 0 && (a = parseFloat(i[N](a + 7)), !isNaN(a) && a > 0 && a < 534 && (u = p))), u && (e[y] == x && !e[H][y] ? e[y] = s & 8 ? "window" : "direct" : (f = ("" + e[y])[d]("-flash"), f > 0 && (e[y] = e[y][N](0, f))))), ht(e)) : n == 2 ? pt(e) : (l = "", r < 2 && (l += "Adobe Flashplayer"), r == 0 && (l += " or<br/>"), r != 1 && (l += "HTML5 Browser with WebGL ", at(ut(e[W]), B) || (l += "or CSS3D "), l += "support"), l += " required!", e[T](l))
}
function vt() {
var t = 'Local usage with <span style="border:1px solid gray;padding:0px 3px;">file://</span> urls is limited due browser security restrictions!<br><br>Use a localhost server (like the <a href="http://krpano.com/tools/ktestingserver/#top" style="color:white;">krpano Testing Server</a>) for local testing!<br>Just start the krpano Testing Server and refresh this page.<br><br><a href="http://krpano.com/docu/localusage/#top" style="color:gray;font-style:italic;text-decoration:none;">More information...</a>';
e[T](t)
}
function mt(e, t, n) {
var r;
try {
r = new XMLHttpRequest, r.responseType = "text", r.open("GET", e, v), r.onreadystatechange = function() {
var e;
r.readyState === 4 && (e = r.status, e == 0 && r.responseText || e == 200 ? t() : n())
}, r.send(x)
} catch (i) {
n()
}
}
var t, n, r, i, s, o, u, a, f, l, c, h, p = !1,
d = "indexOf",
v = !0,
m = "addEventListener",
g = "targetelement",
y = "wmode",
b = "externalMouseEvent",
w = "target",
E = "getElementById",
S = "getBoundingClientRect",
x = null,
T = "onerror",
N = "slice",
C = "bgcolor",
k = "enable_mousewheel_js_bugfix",
L = "localfallback",
A = "flashbasepath",
O = "initvars",
M = "length",
_ = "onmousewheel",
D = "fallback",
P = "passQueryParameters",
H = "params",
B = "webgl",
j = "split",
F = "onready",
I = "externalMouseEvent2",
q = "mimeTypes",
R = "substring",
U = "undefined",
z = "xml",
W = "html5",
X = "srcElement",
V = "basepath",
$ = "mwheel",
J = "flash",
K = "consolelog",
Q = "mac",
G = "ActiveXObject",
Y = "never",
Z = "createElement",
et = "chrome",
tt = "android",
nt = "stopPropagation",
rt = "vars",
it = "always",
st = "preventDefault",
ot = "only";
return t = navigator, n = document, r = window, i = ut(t.userAgent), s = 0, o = 0, u = p, a = p, f = v, e || (e = {}), l = e[P] === v, e.swf || (e.swf = "krpano.swf"), e[z] === undefined && (e[z] = e.swf[j](".swf").join(".xml")), e.id || (e.id = "krpanoSWFObject"), e.width || (e.width = "100%"), e.height || (e.height = "100%"), e[C] || (e[C] = "#000000"), e[y] || (e[y] = x), e[w] || (e[w] = x), e[W] || (e[W] = "auto"), e[J] || (e[J] = x), e[$] === undefined && (e[$] = v), e[rt] || (e[rt] = {}), e[H] || (e[H] = {}), e[F] || (e[F] = x), e.mobilescale || (e.mobilescale = .5), e.fakedevice || (e.fakedevice = x), e[L] || (e[L] = "http://localhost:8090"), e[V] ? e[A] = e[V] : (c = "./", h = e.swf.lastIndexOf("/"), h >= 0 && (c = e.swf[N](0, h + 1)), e[V] = c), e.isDevice = function(e) {
var t, n, r, s = "all",
o = ["ipad", "iphone", "ipod", tt];
for (t = 0; t < 4; t++) i[d](o[t]) >= 0 && (s += "|" + o[t]);
e = ut(e)[j]("|");
if (e == x) return v;
n = e[M];
for (t = 0; t < n; t++) {
r = e[t];
if (s[d](r) >= 0) return v
}
return p
}, e.addVariable = function(t, n) {
t = ut(t), t == "pano" || t == z ? e[z] = n : e[rt][t] = n
}, e.addParam = function(t, n) {
e[H][ut(t)] = n
}, e.useHTML5 = function(t) {
e[W] = t
}, e.isHTML5possible = function() {
return ct(), a
}, e.isFlashpossible = function() {
return ct(), u
}, e[T] || (e[T] = function(t) {
var n = e[g];
n ? n.innerHTML = '<table style="width:100%;height:100%;"><tr style="vertical-align:middle;text-align:center;"><td>ERROR:<br><br>' + t + "<br><br></td></tr></table>" : alert("ERROR: " + t)
}), e.embed = function(t) {
var i, o, f, c, h, m;
t && (e[w] = t), e[g] = n[E](e[w]), e[g] ? (l && ft(), e.focus === undefined && e[g][S] && (i = e[g][S](), e.focus = i.top == 0 && i.left == 0 && i.right >= r.innerWidth && i.bottom >= r.innerHeight), e[$] == p && (e[rt]["control.disablewheel"] = v), e[K] && (e[rt][K] = e[K]), s == 0 && ct(), o = ut(e[W]), f = e[J], f && (f = ut(f), f == "prefer" ? o = D : f == D ? o = "prefer" : f == ot ? o = Y : f == Y && (o = ot)), c = 0, h = 0, m = a, m && at(o, B) && (m = s & 4), o == Y ? (c = u ? 1 : 0, h = 1) : at(o, ot) ? (c = m ? 2 : 0, h = 2) : at(o, it) ? c = h = 2 : o == D ? c = u ? 1 : a ? 2 : 0 : c = m ? 2 : u ? 1 : 0, c == 2 && ut(location.href[N](0, 7)) == "file://" ? mt(location.href, function() {
dt(c, h)
}, function() {
var t, n = ut(e[L]);
n == J ? u ? dt(1, 0) : vt() : n == "none" ? dt(c, h) : n[d]("://") > 0 ? (t = new Image, t[T] = vt, t.onload = function() {
location.href = n + "/krpanotestingserverredirect.html?" + location.href
}, t.src = n + "/krpanotestingserver.png") : vt()
}) : dt(c, h)) : e[T]("No Embedding Target")
}, lt(e)
}
function removepano(e) {
var t, n, r, i, s = document.getElementById(e);
if (s) {
t = window._krpMW;
if (t)
for (n = 0; n < t.length; n++) {
r = t[n];
if (r && r.id === e) {
t.splice(n, 1);
break
}
}
s.unload && s.unload(), i = s.parentNode, i && i.removeChild(s)
}
}
function embedpano(e) {
createPanoViewer(e).embed()
};
/*
krpano HTML5 Viewer
krpano 1.19-pr4 (build 2016-04-07)
*/
var krpanoJS = {
version: "1.19-pr4",
build: "2016-04-07"
};
function embedpanoJS(p) {
function embedhtml5(ed, Jc) {
function Zd() {
function F(a) {
return ("" + a).toLowerCase()
}
function ya(a, c) {
if (!a) return a;
var w = 0,
b = 0,
e, n = a.length,
h;
for (e = 0; e < n; e++)
if (h = a.charCodeAt(e), 32 >= h) w++;
else break;
for (e = n - 1; 0 < e; e--)
if (h = a.charCodeAt(e), 32 >= h) b++;
else break;
void 0 === c && (e = a.charAt(w), h = a.charAt(n - b - 1), ("'" == e && "'" == h || '"' == e && '"' == h) && 3 == a.split(e).length && (w++, b++));
return a = a.slice(w, n - b)
}
function ma(a) {
return _[55] === typeof a ? a : 0 <= _[402].indexOf(String(a).toLowerCase())
}
function qa(a, c) {
if (typeof a != c) {
if (_[540] == c) return Number(a);
if (_[55] == c) return ma(a);
if (_[1] == c) return null == a ? null : String(a)
}
return a
}
function sa(a) {
return Number(a).toFixed(6)
}
function va(a, c, w, b) {
a.__defineGetter__(c, w);
void 0 !== b && a.__defineSetter__(c, b)
}
function Eb(a, c, w) {
a.__defineGetter__(c, function() {
return a[w]
});
a.__defineSetter__(c, function(c) {
a[w] = c
})
}
function ta(a, c, w) {
var b = "_" + c;
a[b] = w;
a.__defineGetter__(c, function() {
return a[b]
});
a.__defineSetter__(c, function(c) {
c = qa(c, typeof w);
c != a[b] && (a[b] = c, a.haschanged = !0)
})
}
function na(a) {
a && a.preventDefault()
}
function ca(a, c, w, b) {
a && a.addEventListener(c, w, b)
}
function ka(a, c, w, b) {
a && a.removeEventListener(c, w, b)
}
function jb(a, c, w, b, e) {
c[a + _[320]](w, b, e)
}
function Ja(a) {
var c = ba.createElement(1 == a ? "img" : 2 == a ? _[541] : "div");
c && 1 == a && "off" != ud && (c.crossOrigin = ud);
return c
}
function Kc(a) {
return function() {
return a.apply(a, arguments)
}
}
function vd(a) {
return a.split("<").join("&lt;").split(">").join("&gt;")
}
function wa(a, c) {
var w = "(" + (a >> 16 & 255) + "," + (a >> 8 & 255) + "," + (a & 255);
void 0 === c && (c = 1 - (a >> 24 & 255) / 255);
return (1 > c ? "rgba" + w + "," + c : "rgb" + w) + ")"
}
function $d(a) {
return a.split("[").join("<").split("<<").join("[").split("]").join(">").split(">>").join("]")
}
function fd(a, c) {
a = Number(a);
c = Number(c);
return a - 360 * Math.round((a - c) / 360)
}
function gd(a) {
if (a) {
var c = a.indexOf("?");
0 <= c && (a = a.slice(0, c));
c = a.indexOf("#");
0 <= c && (a = a.slice(0, c))
}
return a
}
function ed(a) {
a = gd(a);
var c = a.lastIndexOf("/"),
w = a.lastIndexOf("\\");
w > c && (c = w);
return a.slice(c + 1)
}
function wd(a, c) {
var w = String(a).charCodeAt(0);
return 48 <= w && 57 >= w ? (oa(3, c + _[167]), !1) : !0
}
function Zd(a, c) {
for (var w = "", b = 0, e = 1, n = 0, h = 0; 1 == e && 0 == b;) {
var g, z = a.indexOf("*", n),
w = "";
0 > z ? (z = a.length, b = 1) : (w = a.indexOf("*", z + 1), 0 > w && (w = a.length), g = w - (z + 1), w = a.substr(z + 1, g));
g = z - n;
0 < g && c.substr(h, b ? void 0 : g) != a.substr(n, g) && (e = 0);
n = z + 1;
"" != w && (h = c.indexOf(w, h), 0 > h && (e = 0))
}
return !!e
}
function Lc(a, c, w, b) {
for (; 32 >= a.charCodeAt(c);) c++;
for (; 32 >= a.charCodeAt(w - 1);) w--;
var e = a.charCodeAt(c);
if (37 == e) a = Q(a.slice(c + 1, w), b);
else if (103 == e && "get(" == a.slice(c, c + 4)) {
for (c += 4; 32 >= a.charCodeAt(c);) c++;
for (w = a.lastIndexOf(")"); 32 >= a.charCodeAt(w - 1);) w--;
a = Q(a.slice(c, w), b)
} else 99 == e && "calc(" == a.slice(c, c + 5) ? a = Q(a.slice(c, w), b) : (b = a.charCodeAt(c), 39 != b && 34 != b || b != a.charCodeAt(w - 1) || (c++, w--), a = a.slice(c, w));
return a
}
function xd(a) {
var c = [];
if (null == a || void 0 == a) return c;
var w, b = 0,
e, n, h = 0;
a = F(a);
e = a.length;
for (w = 0; w < e; w++) n = a.charCodeAt(w), 40 == n ? h++ : 41 == n ? h-- : 46 == n && 0 == h && (c.push(a.slice(b, w)), b = w + 1);
c.push(a.slice(b));
return c
}
function Na(a, c) {
var b = !1;
a = F(a);
var f, e, n, h;
n = hd[a];
null != n && void 0 !== n && "" != n && (Ob(n, null, c), b = !0);
h = hd.getArray();
e = h.length;
for (f = 0; f < e; f++)
if (n = h[f]) n = n[a], null != n && void 0 !== n && "" != n && (Ob(n, null, c), b = !0);
return b
}
function da(a, c, b, f, e) {
if (c && _[1] == typeof c) {
var n = c.slice(0, 4);
"get:" == n ? c = Q(c.slice(4)) : "calc" == n && 58 == c.charCodeAt(4) && (c = X.calc(null, c.slice(5)))
}
var n = null,
h, g = xd(a);
h = g.length;
if (1 == h && f && (n = g[0], void 0 !== f[n])) {
f[n] = _[55] == typeof f[n] ? ma(c) : c;
return
}
var z = l,
n = null;
1 < h && (n = g[h - 1]);
for (a = 0; a < h; a++) {
var ua = g[a],
r = a == h - 1,
y = null,
p = ua.indexOf("[");
0 < p && (y = Lc(ua, p + 1, ua.length - 1, f), ua = ua.slice(0, p));
p = !1;
if (void 0 === z[ua]) {
if (b) break;
r || (null == y ? z[ua] = new id : (z[ua] = new pb(id), p = !0))
} else p = !0; if (p && 0 == r && z[ua] && 1 == z[ua].isArray && null != y)
if (r = null, z = z[ua], r = b ? z.getItem(y) : z.createItem(y)) {
if (a == h - 2 && "name" == n) {
c = F(c);
y != c && (null == c || "null" == c || "" == c ? z.removeItem(y) : z.renameItem(y, c));
break
}
z = r;
continue
} else break;
if (r) z[ua] = 1 == e ? c : qa(c, typeof z[ua]);
else if (z = z[ua], null == z) break
}
}
function ae(a) {
if (a && "null" != a) {
if (_[1] == typeof a) {
var c = a.split("&"),
b = c.length,
f;
a = {};
for (f = 0; f < b; f++) {
var e = c[f].split("=");
a[e[0]] = e[1]
}
}
for (var n in a) "xml" != n && da(n, a[n])
}
}
function Q(a, c, b) {
if (a && "calc(" == ("" + a).slice(0, 5)) return X.calc(null, a.slice(5, a.lastIndexOf(")")));
var f, e, n = xd(a);
f = n.length;
if (1 == f && _[324] == n[0]) return c ? c._type + "[" + c.name + "]" : "";
if (1 == f && c && (e = n[0], c.hasOwnProperty(e))) return c[e];
var h = l;
for (a = 0; a < f; a++) {
e = n[a];
var g = a == f - 1,
z = null,
ua = e.indexOf("[");
0 < ua && (z = Lc(e, ua + 1, e.length - 1, c), e = e.slice(0, ua));
if (h && void 0 !== h[e]) {
if (null != z && (ua = h[e]) && ua.isArray)
if (e = ua.getItem(z)) {
if (g) return e;
h = e;
continue
} else break;
if (g) return h[e];
h = h[e]
} else break
}
return !0 === b ? void 0 : null
}
function Ob(a, c, b) {
X.callaction(a, c, b)
}
function We(a, c, b) {
Ob(a, c ? Q(c) : null, b ? ma(b) : null)
}
function oa(a, c) {
!yd && (0 < a || l.debugmode) && (c = ["DEBUG", "INFO", _[519], "ERROR", _[378]][a] + ": " + c, V.log(c), 2 < a && l.showerrors && setTimeout(function() {
try {
V.showlog(!0)
} catch (a) {}
}, 500))
}
function Ga(a, c) {
if (!yd) {
a = "" + a;
var w = 0 < F(a).indexOf("load");
a = vd(a).split("[br]").join("<br/>");
var f = La.createItem(_[466]),
e = La.createItem(_[464]);
f.sprite || (f.create(), V.controllayer.appendChild(f.sprite));
e.sprite || (e.create(), V.controllayer.appendChild(e.sprite));
f.imagewidth = 1;
f.imageheight = 1;
f.loaded = !0;
f.handcursor = !1;
f.align = _[82];
f.width = "100%";
f.height = "100%";
f.alpha = .5;
f.keep = !0;
f = f.sprite.style;
f.backgroundColor = _[38];
f.zIndex = 99999998;
w && (e.visible = !1);
e.imagewidth = 1;
e.imageheight = 1;
e.loaded = !0;
e.handcursor = !1;
e.align = _[87];
e.y = 0;
e.width = "105%";
var n = b.ie || b.android ? -2 : 2;
e.height = n + 46 / aa;
e.keep = !0;
f = e.sprite.style;
f.backgroundColor = _[38];
f.color = _[54];
f.fontFamily = b.realDesktop && !b.ie ? _[30] : _[20];
f.fontSize = "12px";
f.margin = "-2px";
f.border = _[258];
c || (c = _[302]);
e.sprite.innerHTML = _[178] + c + "<br/>" + a + _[334];
f.zIndex = 99999999;
f[jd] = _[219];
e.jsplugin = {
onresize: function(a, c) {
var b = e.sprite.childNodes[0].clientHeight;
e.height = n + Math.max(46, b) / aa;
0 >= b && (e.imageheight = 1)
}
};
setTimeout(function() {
try {
e.visible = !0
} catch (a) {}
}, w ? 500 : 10)
}
}
function Xe() {
fb.removeelements(!0);
xe.stop();
gb.unregister();
cb.unload();
V.remove()
}
function Ye() {
this.caller = this.args = this.cmd = null
}
function qb(a, c, b) {
var f = null;
if (null == a || "" == a) return null;
for (var e = 0, n = 0, h = 0, g = 0, z = 0, l = 0, r = 0, y = 0, p = "", p = 0, p = a.charCodeAt(z); 0 < p && 32 >= p || 59 == p;) z++, p = a.charCodeAt(z);
for (var v = Ze, t = 0, n = a.length, e = z; e < n; e++)
if (p = a.charCodeAt(e), 0 == y && 0 == r && 40 == p) h++;
else if (0 == y && 0 == r && 41 == p) {
if (g++, h == g) {
l = e + 1;
p = a.slice(z, l);
v[t++] = p;
z = l;
for (p = a.charCodeAt(z); 0 < p && 32 >= p;) z++, p = a.charCodeAt(z);
p = a.charCodeAt(z);
if (59 != p) {
l = n;
break
}
z++;
for (p = a.charCodeAt(z); 59 == p || 0 < p && 32 >= p;) z++, p = a.charCodeAt(z);
e = z
}
} else 34 == p ? 0 == r ? r = 1 : 1 == r && (r = 0) : 39 == p ? 0 == r ? r = 2 : 2 == r && (r = 0) : 91 == p && 0 == r ? y++ : 93 == p && 0 == r && y--;
l != n && (p = a.slice(z, n), 0 < p.length && (v[t++] = p));
n = t;
for (e = 0; e < n; e++)
if (p = v[e], r = p.indexOf("["), a = p.indexOf("]"), h = p.indexOf("("), 0 < r && 0 < a && h > r && h < a && (h = p.indexOf("(", a)), g = a = null, 0 < h ? (a = p.slice(0, h), g = ya(p.slice(h + 1, p.lastIndexOf(")")), !1), 0 >= g.length && (g = null)) : (a = p, g = null), a = ya(a), "//" != a.slice(0, 2)) {
z = [];
if (null != g) {
for (var l = g.length, h = 0, q = t = -1, x = r = 0, p = null, y = 0; y < l; y++) p = g.charCodeAt(y), 0 == r && 40 == p ? h++ : 0 == r && 41 == p ? h-- : 34 == p ? 1 == r && 0 <= t ? (t = -1, r = 0) : 0 == r && (t = y, r = 1) : 39 == p && (2 == r && 0 <= q ? (q = -1, r = 0) : 0 == r && (q = y, r = 2)), 44 == p && 0 == h && 0 == r && (p = ya(g.slice(x, y)), z.push(p), x = y + 1);
0 == h && (p = ya(g.slice(x, y)), z.push(p))
}
null == f && (f = []);
h = new Ye;
h.cmd = b ? a : F(a);
h.args = z;
h.caller = c;
f.push(h)
}
return f
}
function uc() {
this.z = this.y = this.x = 0
}
function Ra() {
var a = _[134] !== typeof Float32Array ? new Float32Array(16) : Array(16);
a[0] = a[5] = a[10] = a[15] = 1;
a[1] = a[2] = a[3] = a[4] = a[6] = a[7] = a[8] = a[9] = a[11] = a[12] = a[13] = a[14] = 0;
return a
}
function ye(a, c, b, f, e, n, h, g, z, l, r, y, p, v, t, q, x) {
a[0] = c;
a[1] = b;
a[2] = f;
a[3] = e;
a[4] = n;
a[5] = h;
a[6] = g;
a[7] = z;
a[8] = l;
a[9] = r;
a[10] = y;
a[11] = p;
a[12] = v;
a[13] = t;
a[14] = q;
a[15] = x
}
function Pb(a, c, b, f, e, n, h, g, z, l) {
a[0] = c;
a[1] = b;
a[2] = f;
a[3] = 0;
a[4] = e;
a[5] = n;
a[6] = h;
a[7] = 0;
a[8] = g;
a[9] = z;
a[10] = l;
a[11] = 0;
a[12] = 0;
a[13] = 0;
a[14] = 0;
a[15] = 1
}
function Nd(a, c) {
a[0] = c[0];
a[1] = c[1];
a[2] = c[2];
a[3] = c[3];
a[4] = c[4];
a[5] = c[5];
a[6] = c[6];
a[7] = c[7];
a[8] = c[8];
a[9] = c[9];
a[10] = c[10];
a[11] = c[11];
a[12] = c[12];
a[13] = c[13];
a[14] = c[14];
a[15] = c[15]
}
function ic(a, c) {
var b = c[0],
f = c[1],
e = c[2],
n = c[3],
h = c[4],
g = c[5],
z = c[6],
l = c[7],
r = c[8],
y = c[9],
p = c[10],
v = c[11],
t = c[12],
q = c[13],
x = c[14],
J = c[15],
B = a[0],
D = a[1],
A = a[2],
k = a[3];
a[0] = B * b + D * h + A * r + k * t;
a[1] = B * f + D * g + A * y + k * q;
a[2] = B * e + D * z + A * p + k * x;
a[3] = B * n + D * l + A * v + k * J;
B = a[4];
D = a[5];
A = a[6];
k = a[7];
a[4] = B * b + D * h + A * r + k * t;
a[5] = B * f + D * g + A * y + k * q;
a[6] = B * e + D * z + A * p + k * x;
a[7] = B * n + D * l + A * v + k * J;
B = a[8];
D = a[9];
A = a[10];
k = a[11];
a[8] = B * b + D * h + A * r + k * t;
a[9] = B * f + D * g + A * y + k * q;
a[10] = B * e + D * z + A * p + k * x;
a[11] = B * n + D * l + A * v + k * J;
B = a[12];
D = a[13];
A = a[14];
k = a[15];
a[12] = B * b + D * h + A * r + k * t;
a[13] = B * f + D * g + A * y + k * q;
a[14] = B * e + D * z + A * p + k * x;
a[15] = B * n + D * l + A * v + k * J
}
function uf(a, c) {
var b = a[0],
f = a[1],
e = a[2],
n = a[3],
h = a[4],
g = a[5],
z = a[6],
l = a[7],
r = a[8],
y = a[9],
p = a[10],
v = a[11],
t = a[12],
q = a[13],
x = a[14],
J = a[15],
B = c[0],
D = c[1],
A = c[2],
k = c[3],
d = c[4],
G = c[5],
E = c[6],
R = c[7],
u = c[8],
N = c[9],
T = c[10],
H = c[11],
Fb = c[12],
ea = c[13],
O = c[14],
F = c[15];
a[0] = B * b + D * h + A * r + k * t;
a[1] = B * f + D * g + A * y + k * q;
a[2] = B * e + D * z + A * p + k * x;
a[3] = B * n + D * l + A * v + k * J;
a[4] = d * b + G * h + E * r + R * t;
a[5] = d * f + G * g + E * y + R * q;
a[6] = d * e + G * z + E * p + R * x;
a[7] = d * n + G * l + E * v + R * J;
a[8] = u * b + N * h + T * r + H * t;
a[9] = u * f + N * g + T * y + H * q;
a[10] = u * e + N * z + T * p + H * x;
a[11] = u * n + N * l + T * v + H * J;
a[12] = Fb * b + ea * h + O * r + F * t;
a[13] = Fb * f + ea * g + O * y + F * q;
a[14] = Fb * e + ea * z + O * p + F * x;
a[15] = Fb * n + ea * l + O * v + F * J
}
function $e(a, c, b, f) {
ye(a, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, c, b, f, 1)
}
function ze(a, c, b, f) {
var e = a[3],
n = a[7],
h = a[11],
g = a[15];
a[0] += e * c;
a[1] += e * b;
a[2] += e * f;
a[4] += n * c;
a[5] += n * b;
a[6] += n * f;
a[8] += h * c;
a[9] += h * b;
a[10] += h * f;
a[12] += g * c;
a[13] += g * b;
a[14] += g * f
}
function af(a, c) {
var b = c[0],
f = c[1],
e = c[2],
n = c[4],
h = c[5],
g = c[6],
z = c[8],
l = c[9],
r = c[10],
y = a[0],
p = a[1],
v = a[2];
a[0] = y * b + p * n + v * z;
a[1] = y * f + p * h + v * l;
a[2] = y * e + p * g + v * r;
y = a[4];
p = a[5];
v = a[6];
a[4] = y * b + p * n + v * z;
a[5] = y * f + p * h + v * l;
a[6] = y * e + p * g + v * r;
y = a[8];
p = a[9];
v = a[10];
a[8] = y * b + p * n + v * z;
a[9] = y * f + p * h + v * l;
a[10] = y * e + p * g + v * r;
y = a[12];
p = a[13];
v = a[14];
a[12] = y * b + p * n + v * z;
a[13] = y * f + p * h + v * l;
a[14] = y * e + p * g + v * r
}
function Ae(a, c, b, f) {
var e, n, h;
e = b * Y;
b = Math.cos(e);
n = Math.sin(e);
e = -(c - 90) * Y;
c = Math.cos(e);
h = Math.sin(e);
e = -f * Y;
f = Math.cos(e);
e = Math.sin(e);
Pb(a, c * f - h * n * e, c * e + h * n * f, -h * b, -b * e, b * f, n, h * f + c * n * e, h * e - c * n * f, c * b)
}
function bf(a, c, b) {
b = -b * Y;
var f = Math.cos(b);
b = Math.sin(b);
0 == c ? Pb(a, 1, 0, 0, 0, f, b, 0, -b, f) : 1 == c ? Pb(a, f, 0, -b, 0, 1, 0, b, 0, f) : Pb(a, f, b, 0, -b, f, 0, 0, 0, 1)
}
function Be(a, c, b, f, e) {
var n, h, g;
e && (f = -f, b = -b, c = -c);
n = -f * Y;
f = Math.cos(n);
h = Math.sin(n);
n = -b * Y;
b = Math.cos(n);
g = Math.sin(n);
n = -c * Y;
c = Math.cos(n);
n = Math.sin(n);
e ? Pb(a, b * c - g * h * n, b * n + g * h * c, -g * f, -f * n, f * c, h, g * c + b * h * n, g * n - b * h * c, b * f) : Pb(a, c * b + n * h * g, n * f, -c * g + n * h * b, -n * b + c * h * g, c * f, n * g + c * h * b, f * g, -h, f * b)
}
function Ce(a, c) {
var b = c[0],
f = c[1],
e = c[2],
n = c[4],
h = c[5],
g = c[6],
z = c[8],
l = c[9],
r = c[10],
y = 1 / (b * h * r + f * g * z + n * l * e - z * h * e - n * f * r - l * g * b);
Pb(a, (h * r - l * g) * y, (-f * r + l * e) * y, (f * g - h * e) * y, (-n * r + z * g) * y, (b * r - z * e) * y, (-b * g + n * e) * y, (n * l - z * h) * y, (-b * l + z * f) * y, (b * h - n * f) * y)
}
function Od(a, c) {
var b = c.x,
f = c.y,
e = c.z;
c.x = b * a[0] + f * a[4] + e * a[8];
c.y = b * a[1] + f * a[5] + e * a[9];
c.z = b * a[2] + f * a[6] + e * a[10]
}
function be(a, c) {
var b = c[0],
f = c[1],
e = c[2];
c[0] = b * a[0] + f * a[4] + e * a[8];
c[1] = b * a[1] + f * a[5] + e * a[9];
c[2] = b * a[2] + f * a[6] + e * a[10]
}
function Ub(a) {
return b.fractionalscaling ? Math.round(a * (b.pixelratio + 1E-7)) / b.pixelratio : Math.round(a)
}
function Vb(a, c, b, f) {
a = ("" + a).split(b);
f = f ? f : [0, 0, 0, 0];
b = a.length;
4 == b ? (f[0] = a[0] * c + .5 | 0, f[1] = a[1] * c + .5 | 0, f[2] = a[2] * c + .5 | 0, f[3] = a[3] * c + .5 | 0) : 3 == b ? (f[0] = a[0] * c + .5 | 0, f[1] = f[3] = a[1] * c + .5 | 0, f[2] = a[2] * c + .5 | 0) : 2 == b ? (f[0] = f[2] = a[0] * c + .5 | 0, f[1] = f[3] = a[1] * c + .5 | 0) : f[0] = f[1] = f[2] = f[3] = a[0] * c + .5 | 0;
return f
}
function De(a) {
var c = a && a._poly;
c && (c.setAttribute("fill", !0 === a.polyline ? "none" : wa(a.fillcolor, a.fillalpha)), c.setAttribute(_[539], wa(a.bordercolor, a.borderalpha)), c.setAttribute(_[340], a.borderwidth * aa))
}
function cf(a) {
var c = u.r_rmatrix,
b = u.r_zoom,
f = u.r_zoff,
e = .5 * Sa,
n = .5 * Da + u.r_yoff,
h = u._stereographic ? 10 - f : 1 - f * (1 - Math.min(u.fisheye * u.fisheye, 1)),
g = a._poly;
if (!g) {
var z = V.svglayer;
z || (z = document.createElementNS(_[96], "svg"), z.setAttribute(_[63], "100%"), z.setAttribute(_[18], "100%"), z.style.position = _[0], z.style.left = 0, z.style.top = 0, z.style.display = la.stereo ? "none" : "", V.svglayer = z, V.hotspotlayer.appendChild(z));
g = document.createElementNS(_[96], ma(a.polyline) ? _[138] : _[532]);
z.appendChild(g);
g.kobject = a;
a._poly = g;
De(a);
g.style.opacity = Number(a.DATA.alpha) * (a.keep ? 1 : vc);
a._assignEvents(g);
setTimeout(function() {
a.loading = !1;
a.loaded = !0;
X.callaction(a.onloaded, a)
}, 7)
}
var z = a.point.getArray(),
l = z.length,
r = [];
if (1 < l && a.DATA.visible && 0 == la.stereo) {
var y, p, v, t = new uc,
q = new uc,
x;
p = z[l - 1];
v = (180 - Number(p.ath)) * Y;
p = Number(p.atv) * Y;
t.x = 1E3 * Math.cos(p) * Math.cos(v);
t.z = 1E3 * Math.cos(p) * Math.sin(v);
t.y = 1E3 * Math.sin(p);
Od(c, t);
for (y = 0; y < l; y++) p = z[y], v = (180 - Number(p.ath)) * Y, p = Number(p.atv) * Y, q.x = 1E3 * Math.cos(p) * Math.cos(v), q.z = 1E3 * Math.cos(p) * Math.sin(v), q.y = 1E3 * Math.sin(p), Od(c, q), q.z >= h ? (t.z >= h || (x = (h - t.z) / (q.z - t.z), p = b / (h + f), v = (t.x + (q.x - t.x) * x) * p + e, p = (t.y + (q.y - t.y) * x) * p + n, r.push(v.toFixed(2) + "," + p.toFixed(2))), p = b / (q.z + f), v = q.x * p + e, p = q.y * p + n, r.push(v.toFixed(2) + "," + p.toFixed(2))) : t.z >= h && (x = (h - q.z) / (t.z - q.z), p = b / (h + f), v = (q.x + (t.x - q.x) * x) * p + e, p = (q.y + (t.y - q.y) * x) * p + n, r.push(v.toFixed(2) + "," + p.toFixed(2))), t.x = q.x, t.y = q.y, t.z = q.z;
0 == a.polyline && 2 < r.length && r.push(r[0]);
g.style.pointerEvents = a.DATA.enabled ? _[286] : "none";
g.style.cursor = a.DATA.handcursor ? _[10] : _[5];
g.style.visibility = a.DATA.visible ? _[16] : _[6]
}
g.setAttribute(_[544], r.join(" "))
}
function df(a, c) {
var b = 0,
f, e, n;
if (a && c) {
b = a.DATA.zorder;
f = c.DATA.zorder;
e = null == b || isNaN(b);
n = null == f || isNaN(f);
if (b == f || e && n)
if (b = a.DATA.depth, f = c.DATA.depth, e = null == b || isNaN(b), n = null == f || isNaN(f), b == f || e && n) b = a.index, f = c.index, e = n = !1;
b = e ? -1 : n ? 1 : b - f
}
return b
}
function ce(a, c) {
if (void 0 === c && jc) {
var w = db.getArray();
w.sort(df);
var f = w.length,
e;
for (e = 0; e < f; e++) {
var n = w[e];
n && (n.index = e)
}
jc = !1
}
var w = db.getArray(),
f = w.length,
h;
e = u.r_rmatrix;
var n = Sa,
g = Da,
z = aa,
l = .5 * n,
r = .5 * g,
y = u.r_zoom,
p = u.r_hlookat,
v = u.r_vlookat,
t = u.r_vlookatA,
q = u.r_yoff,
x = u.r_zoff,
J = u._camroll;
h = u._stereographic;
var B;
B = 1 * (1 + x / 1E3);
var D = 50;
0 < x && (h ? D -= x : (D = 20 - x, -125 > D && (D = -125)));
var A = 0,
k = 0;
h = 0;
void 0 !== c && (h = c, f = h + 1);
var d = kc,
G = b.realDesktop && 250 > y ? 1.5 : 0,
E = ef,
R = ff;
E[1] = l;
E[5] = de;
E[9] = sa(p);
E[15] = d + "," + d + "," + d;
var Ha = vb,
N = new uc,
T = null;
if (!la.stereo)
for (; h < f; h++) {
var H = w[h];
if (H && H._ready) {
var F = null == H.DATA.url && 0 < H.point.count,
T = null;
if (!F) {
if (H.DATA.webGL) continue;
T = H.sprite;
if (!T) continue
}
0 != H.haschanged_flags && H.processUpdates();
var ea = H.getparsed(),
T = T ? T.style : null,
O = Number(H.DATA.alpha) * (H.keep ? 1 : vc);
T && (T.opacity = O);
H._poly && (H._poly.style.opacity = O);
O = a || H.poschanged || H.forceupdate;
if (F) O && (cf(H), H.poschanged = !1);
else if (H.DATA.visible && H.loaded && O) {
H.poschanged = !1;
F = Number(H.DATA.flying);
A = (1 - F) * Number(H.DATA.ath);
k = (1 - F) * Number(H.DATA.atv);
0 < F && (A += F * fd(p, H.DATA.ath), k += F * fd(v, H.DATA.atv));
var O = !1,
Z = (180 - A) * Y,
P = k * Y;
N.x = 1E3 * Math.cos(P) * Math.cos(Z);
N.z = 1E3 * Math.cos(P) * Math.sin(Z);
N.y = 1E3 * Math.sin(P);
Od(e, N);
var zb = !1,
W = N.x,
m = N.y,
Z = N.z;
if (Z >= D - x) var C = y / (Z + x),
W = W * C,
m = m * C + q,
zb = 8E3 > Math.abs(W) && 8E3 > Math.abs(m),
W = W + l,
m = m + r;
if (H.DATA.distorted) {
T.pointerEvents = 50 <= Z + x && H.DATA.enabled ? "auto" : "none";
O = !0;
P = H.DATA.scale;
Z = Number(H.DATA.scale);
isNaN(Z) && (Z = 1);
H._hszscale = Z;
1 == H.scaleflying && (Z = Z * (1 - F) + Z / (y / (g / 2)) * B * F);
H.DATA.scale = 1;
H.updatepluginpos(_[203]);
H.DATA.scale = P;
var S = H.pixelwidth,
I = H.pixelheight,
ra = P = 1;
H._use_css_scale && (P = S / H.imagewidth, ra = I / H.imageheight);
var Ma = .5 * -I,
W = m = 0,
nb = H._oxpix,
kd = H._oypix,
m = m + .5 * -S / P,
W = W + Ma / ra,
m = m - (ea.ex - .5) * S / P,
W = W - (ea.ey - .5) * I / ra,
ea = -500,
S = H._deepscale,
I = H.DATA.depth;
isNaN(I) && (I = 1E3);
Ma = 1;
0 == (I | 0) ? (ea = 0, S = 1) : Ma = 1E3 / I;
2 == wb && (S *= 15);
S /= 1 + F + G;
if (b.firefox || 6 < b.iosversion && .1 > H.scale) S = 10 / (1 + F);
0 < x && (S = 1);
Z = Z * S * Ma;
ea *= S;
nb = nb * S * Ma;
kd = kd * S * Ma;
if (0 < x || b.firefox) O = zb;
zb = S * Ma * d / 2;
zb = _[303] + zb * H.tx + "px," + zb * H.ty + "px," + -zb * H.tz + "px) ";
E[3] = sa(r + q * (1 - F));
E[7] = sa(-(t * (1 - F) + v * F));
E[11] = zb + _[141] + sa(-A);
E[13] = sa(k);
E[17] = ea;
E[19] = sa(1 * H.DATA.rotate + F * J);
E[21] = nb;
E[23] = kd;
H.inverserotation ? (E[25] = "Y(" + sa(H.ry), E[27] = "X(" + sa(H.rx), E[29] = "Z(" + sa(-H.rz)) : (E[25] = "Z(" + sa(H.rz), E[27] = "X(" + sa(-H.rx), E[29] = "Y(" + sa(-H.ry));
E[31] = Z * P;
E[33] = Z * ra;
E[35] = m;
E[37] = W;
T[Ha + _[89]] = "0 0";
T[Ha] = E.join("")
} else if (Z >= D && (Z = 1, zb)) {
if (H.zoom || H.distorted) Z *= Number(2 * (1 - F) * C + F * aa) / aa;
H.updatepluginpos(_[215]);
S = H.pixelwidth;
I = H.pixelheight;
ra = P = 1;
H._use_css_scale && (P = S / H.imagewidth, ra = I / H.imageheight);
A = W;
k = m;
0 == H.accuracy && (A = Math.round(A), k = Math.round(k));
W = m = 0;
nb = H._oxpix * Z;
kd = H._oypix * Z;
Ma = 0 != P ? S / P : 0;
zb = 0 != ra ? I / ra : 0;
m -= (ea.ex - .5) * Ma;
W -= (ea.ey - .5) * zb;
ea = 2 * Z * (Math.max(S, I) * H.DATA.scale + Math.max(nb, kd));
if (0 < A + ea || 0 < k + ea || A - ea < n || k - ea < g) H._use_css_scale ? Z *= z : (m *= z, W *= z), O = -Ma / 2, ea = -zb / 2, H._istextfield && 0 == H.accuracy && (A |= 0, k |= 0, O |= 0, ea |= 0, nb |= 0, kd |= 0, m |= 0, W |= 0), R[1] = sa(A), R[3] = sa(k), R[5] = sa(O), R[7] = sa(ea), R[9] = sa(1 * H.DATA.rotate - J * (1 - F)), R[11] = nb, R[13] = kd, R[15] = Z * P, R[17] = Z * ra, R[19] = sa(m), R[21] = sa(W), F = R.join(""), F = wc && 2 > wb && .5 < Number(H.zorder2) ? _[365] + (999999999E3 + H._zdeep) + "px) " + F : _[293] + F, T[Ha + _[89]] = _[488], T[Ha] = F, O = !0
}
0 == H.forceupdate && (F = O ? "" : "none", F != T.display && (T.display = F));
H.forceupdate = !1
}
}
}
}
function gf(a, c, w, f) {
function e() {
var d = Ja(),
a = d.style;
a.marginTop = a.marginBottom = v[17] * J + "px";
a.height = "1px";
a.backgroundColor = wa(v[18]);
"none" != v[19] && (a.borderBottom = _[373] + wa(v[19]));
B.appendChild(d)
}
function n(a) {
var d = a.changedTouches;
return (d && 0 < d.length ? d[0] : a).pageY
}
function h(d, a, c) {
var e = Ja(),
k = e.style;
k.padding = v[20] * J + "px";
k.border = v[21] + _[33] + wa(v[22]);
k.borderRadius = v[23] * J + "px";
k.marginTop = v[24] * J + "px";
k.marginBottom = v[24] * J + "px";
b.androidstock && (k[_[41]] = _[13]);
gb.touch && ca(e, b.browser.events.touchstart, function(d) {
function S(S) {
S = n(S) - ra;
if (q > Da) {
var d = m + S | 0;
d < Da - q - 10 ? d = Da - q - 10 : 10 < d && (d = 10);
x.style.top = d + "px"
}
15 < Math.abs(S) && (e.onmouseout(), nb = !0)
}
function I() {
ka(M, k, S, !0);
ka(M, f, I, !0);
if (0 == nb) e.onclick()
}
na(d);
d.stopPropagation();
if (c && a) {
e.onmouseover();
var ra = n(d),
m = parseInt(x.style.top) | 0,
nb = !1,
k = b.browser.events.touchmove,
f = b.browser.events.touchend;
ca(M, k, S, !0);
ca(M, f, I, !0)
}
}, !0);
c && a ? (k.cursor = _[10], e.onmousedown = function(d) {
d.stopPropagation()
}, e.onmouseover = function() {
k = this.style;
k.background = wa(v[25]);
k.border = v[21] + _[33] + wa(v[26]);
k.color = wa(v[27])
}, e.onmouseout = function() {
k = this.style;
k.background = "none";
k.border = v[21] + _[33] + wa(v[22]);
k.color = wa(v[4])
}, e.oncontextmenu = function(d) {
na(d);
d.stopPropagation();
e.onclick()
}, e.onclick = function(d) {
f ? (k = x.style, k.opacity = 1, k.transition = _[117], k.opacity = 0, setTimeout(w, 300)) : w();
X.callaction(c)
}) : (0 == a && (k.color = wa(v[5])), k.cursor = _[5]);
var m = Ja();
m.style.marginLeft = v[28] * J + "px";
m.style.marginRight = v[29] * J + "px";
m.innerHTML = d;
e.appendChild(m);
B.appendChild(e);
return m
}
function g() {
function d() {
return .4 > Math.random() ? " " : _[156]
}
var a = h("About" + d() + "the" + d() + _[56] + d() + _[479] + d() + _[434], !0, function() {
X.openurl(_[233])
});
try {
(new MutationObserver(function(d) {
d = M.getComputedStyle(a);
9 > Math.min(parseInt(d.width) | 0, parseInt(d.height) | 0) && (l = {}, Ga(_[116]))
})).observe(a, {
attributes: !1,
childList: !0,
characterData: !0,
subtree: !0
})
} catch (c) {}
}
function z() {
h(V.fullscreen ? p.exitfs : p.enterfs, !0, function() {
l.fullscreen = !l.fullscreen
})
}
function u() {
var d = b.android,
a = b.infoString,
a = a.split(_[476]).join("");
h((Ha ? "" : _[143] + l.version + _[263] + l.build + _[292]) + (d ? _[504] : "") + a + cb.infoString + (d ? _[472] : ""), !0, null)
}
function r() {
za && za[2] && h(za[2], !0, function() {
X.openurl(za[3])
})
}
function y() {
var d = x.getBoundingClientRect(),
b = d.width,
d = d.height,
e = c;
if (0 < b && 0 < d) {
q = d;
f && (a -= b >> 1, a + b > Sa && (a = Sa - b - 10), 10 > a && (a = 10));
for (; a + b > Sa;) a -= b / 2;
0 > a && (a = 0);
c + d > Da && (c = f ? Da - d - 10 : c - d);
0 > c && (f ? c = Da - d >> 1 : e > Da / 2 ? (c = e - d, 0 > c && (c = 4)) : (c = e, c + d > Da && (c = Da - 4 - d)));
t = x.style;
t.left = (a | 0) + "px";
t.top = (c | 0) + "px";
f && (t.transition = _[117], t.opacity = 1)
} else 10 > ++ea && setTimeout(y, 32)
}
var p = l.contextmenu;
if (f && 0 == p.touch) return null;
var v = null;
p.customstyle && (_[127] == b.browser.domain || 0 == b.realDesktop || b.realDesktop && 0 != (Xa & 16)) && (v = F(p.customstyle).split("|"), 30 != v.length && (v = null));
null == v && (v = (b.mac ? "default|14|default|0xFFFFFF|0x000000|0xBBBBBB|0|0|5|2|2|8|0x66000000|0|0|1|4|5|0xEEEEEE|none|1|0|0|0|3|0xEEEEEE|0|0|20|12" : "default|default|150%|0xFFFFFF|0x000000|0xBBBBBB|1|0xBBBBBB|0|2|2|8|0x66000000|0|0|2|2|5|0xE0E0E0|none|4|0|0|0|3|0xEEEEEE|0|0|18|12").split("|"));
var t = null,
q = 0,
x = Ja();
x.onselectstart = _[316];
b.desktop && b.chrome && (x.style.opacity = .999);
if (b.linux || b.android) v[1] = 12;
t = x.style;
t.position = _[0];
t.zIndex = 99999999999;
var J = 1;
b.androidstock ? J = b.pixelratio : b.chrome && 40 > b.chromeversion && (t[vb] = _[27]);
_[5] != v[0] ? t.fontFamily = v[0] : b.ios ? (t.fontFamily = _[20], t.fontWeight = _[510], _[5] == v[1] && (v[1] = 14)) : t.font = "menu";
_[5] != v[1] && (t.fontSize = v[1] * J * (b.android ? 1.2 : 1) + "px");
_[5] != v[2] && (t.lineHeight = v[2]);
t.background = wa(v[3]);
t.color = wa(v[4]);
t.border = v[6] + _[33] + wa(v[7]);
t.borderRadius = v[8] * J + "px";
t.minWidth = "150px";
t.textAlign = "left";
t[jd] = v[9] + "px " + v[10] + "px " + v[11] + "px " + wa(v[12]);
var B = Ja(),
t = B.style;
t.border = v[13] + _[33] + wa(v[14]);
t.paddingTop = v[15] * J + "px";
t.paddingBottom = v[16] * J + "px";
gb.touch && ca(B, b.browser.events.touchstart, function(d) {
na(d);
d.stopPropagation()
}, !1);
x.appendChild(B);
var D = p.item.getArray(),
A, k, d = 0,
G, E = D.length,
R, Ha = 0 != (Xa & 16),
N = Ha,
T = Ha,
H = !1,
Fb = !1;
for (R = 0; R < E; R++)
if (A = D[R])
if (k = A.caption) k = $d(unescape(k)), A.separator && 0 < d && e(), G = F(k), _[56] == G ? 0 == N && (N = !0, g(), d++) : za && _[446] == G ? 0 == T && (T = !0, r(), d++) : _[129] == G ? (H = !0, b.fullscreensupport && (z(), d++)) : _[346] == G ? (Fb = !0, u(), d++) : (G = A.visible && (!A.showif || X.calc(null, A.showif))) ? (h(k, A.enabled, A.onclick), d++) : 0 == G && A.separator && 0 < d && B.removeChild(B.lastChild);
za && 0 == T && (0 < d && (e(), d = 0), r());
0 == N && (0 < d && e(), g(), d++);
0 == H && 1 == p.fullscreen && b.fullscreensupport && (z(), d++);
0 == Fb && 1 == p.versioninfo && (0 < d && e(), u(), d++);
if (0 == d) return null;
t = x.style;
t.left = _[139];
t.top = "10px";
var ea = 0;
f && (t.opacity = 0);
setTimeout(y, 16);
return x
}
function Of() {
function a(a, c, b) {
a.__defineGetter__(c, b)
}
l = new id;
l.set = da;
l.get = Q;
l.call = Ob;
l.trace = oa;
Object.defineProperty(l, _[527], {
value: X
});
l.Kloader = pa;
l["true"] = !0;
l[_[25]] = !1;
l.strict = !1;
l.version = _[450];
l.build = _[386];
l.buildversion = l.version;
l.debugmode = !1;
l.tweentypes = ld;
l.basedir = _[389];
l.lasterror = "";
l.showtext = function() {};
l.bgcolor = 0;
l[bc[0]] = l[bc[1]] = !0;
l.haveexternalinterface = !0;
l.havenetworkaccess = !0;
l.device = b;
l.browser = b.browser;
l._have_top_access = b.topAccess;
l._isrealdesktop = b.realDesktop;
l.iosversion = b.iosversion;
l.isphone = b.iphone;
l.ispad = b.ipad;
l.isandroid = b.android;
l.ishtml5 = !0;
l.isflash = !1;
l.ismobile = b.mobile;
l.istablet = b.tablet;
l.isdesktop = b.desktop;
l.istouchdevice = b.touchdevice;
l.isgesturedevice = b.gesturedevice;
a(l, _[391], function() {
return Gb / aa
});
a(l, _[347], function() {
return ab / aa
});
va(l, _[396], function() {
return aa
}, function(a) {
a = Number(a);
isNaN(a) && (a = 1);
1E-4 < Math.abs(a - aa) && (aa = a, V.onResize(null, !0))
});
xb = l.area = new Pf;
l.wheeldelta = 0;
l.wheeldelta_raw = Number.NaN;
l.wheeldelta_touchscale = 0;
l.keycode = 0;
l.idletime = .5;
l.__defineGetter__(_[427], Ca);
l.__defineGetter__(_[572], Math.random);
va(l, _[129], function() {
return V.fullscreen
}, function(a) {
V.setFullscreen(ma(a))
});
va(l, _[423], function() {
return pa.swfpath
}, function(a) {
pa.swfpath = a
});
l.hlookat_moveforce = 0;
l.vlookat_moveforce = 0;
l.fov_moveforce = 0;
l.multireslevel = 0;
l.lockmultireslevel = "-1";
l.downloadlockedlevel = !1;
K = l.mouse = {
down: !1,
up: !1,
moved: !1,
dragging: !1,
vinvert: !1,
downx: 0,
downy: 0,
x: 0,
y: 0
};
a(K, _[571], function() {
return K.x + xb.pixelx
});
a(K, _[570], function() {
return K.y + xb.pixely
});
a(K, "dd", function() {
var a = K.x - K.downx,
c = K.y - K.downy;
return Math.sqrt(a * a + c * c)
});
u = l.view = new Qf;
l.screentosphere = u.screentosphere;
l.spheretoscreen = u.spheretoscreen;
l.loadFile = pa.loadfile;
l.decodeLicense = pa.decodeLicense;
l.haveLicense = Kc(function(a) {
var c = !1,
b = Xa;
switch (a.toLowerCase().charCodeAt(0)) {
case 107:
c = 0 != (b & 1);
break;
case 109:
c = 0 != (b & 128);
break;
case 98:
c = 0 != (b & 16)
}
return c
});
l.parsepath = l.parsePath = pa.parsePath;
l.contextmenu = new Rf;
ha = l.control = new Sf;
md = l.cursors = new Tf;
L = l.image = {};
La = l.plugin = new pb(yc);
l.layer = La;
db = l.hotspot = new pb(Uf);
hd = l.events = new pb(null, !0);
hd.dispatch = Na;
la = l.display = {
currentfps: 60,
r_ft: 16,
FRM: 0,
_framebufferscale: 1,
mipmapping: "auto",
loadwhilemoving: b.realDesktop ? "true" : "auto",
_stereo: !1,
stereooverlap: 0,
hardwarelimit: b.realDesktop && b.safari && "6" > b.safariversion ? 2E3 : b.realDesktop && !b.webgl ? 2560 : b.iphone && b.retina && !b.iphone5 ? 800 : b.iphone && !b.retina ? 600 : b.ipod && b.retina ? 640 : b.mobile || b.tablet ? 1024 : 4096
};
va(la, _[158], function() {
return la._stereo
}, function(a) {
a = ma(a);
la._stereo != a && (a = a && b.webgl, la._stereo = a, V.svglayer && (V.svglayer.style.display = a ? "none" : ""), u.haschanged = !0)
});
va(la, _[413], function() {
var a = la.FRM | 0;
return 0 == a ? "auto" : "" + a
}, function(a) {
a |= 0;
0 > a && (a = 0);
la.FRM = a
});
va(la, _[250], function() {
return la._framebufferscale
}, function(a) {
a = Number(a);
if (isNaN(a) || 0 == a) a = 1;
la._framebufferscale = a;
V.onResize(null, !0)
});
l.memory = {
maxmem: b.realDesktop ? Math.min(Math.max(150, 48 * screen.availWidth * screen.availHeight >> 20), 400) : b.ios && 7.1 > b.iosversion || b.iphone && !b.iphone5 ? 40 : 50
};
l.network = {
retrycount: 2
};
Mc = l.progress = {};
Mc.progress = 0;
Ta = new yc;
Ta.name = "STAGE";
rb = new yc;
rb.name = _[505];
La.alpha = 1;
db.alpha = 1;
db.visible = !0;
va(La, _[16], function() {
return "none" != V.pluginlayer.style.display
}, function(a) {
V.pluginlayer.style.display = ma(a) ? "" : "none"
});
l.xml = {
url: "",
content: null,
scene: null,
sceneNEW: null
};
var c = l.security = {};
va(c, "cors", function() {
return ud
}, function(a) {
ud = a
});
Ab = l.autorotate = new Vf;
l.math = function() {
function a(c) {
var b = Q(c, X.actioncaller);
return Number(null !== b ? b : c)
}
function c(b) {
return function(c, e) {
da(c, Math[b](a(void 0 === e ? c : e)), !1, X.actioncaller)
}
}
var b = {},
n = _[168].split(" "),
h;
for (h in n) {
var g = n[h];
b[g] = c(g)
}
b.pi = Ua;
b.atan2 = function(c, b, e) {
da(c, Math.atan2(a(b), a(e)), !1, X.actioncaller)
};
b.min = function() {
var c = arguments,
b = c.length,
e = 3 > b ? 0 : 1,
f = a(c[e]);
for (e++; e < b; e++) f = Math.min(f, a(c[e]));
da(c[0], f, !1, X.actioncaller)
};
b.max = function() {
var c = arguments,
b = c.length,
e = 3 > b ? 0 : 1,
f = a(c[e]);
for (e++; e < b; e++) f = Math.max(f, a(c[e]));
da(c[0], f, !1, X.actioncaller)
};
b.pow = X.pow;
return b
}();
l.action = new pb;
l.scene = new pb;
l.data = new pb;
l.addlayer = l.addplugin = function(a) {
if (!wd(a, _[225] + a + ")")) return null;
a = La.createItem(a);
if (!a) return null;
null == a.sprite && (a._dyn = !0, a.create(), null == a._parent && V.pluginlayer.appendChild(a.sprite));
return a
};
l.removelayer = l.removeplugin = function(a, c) {
var b = La.getItem(a);
if (b) {
if (ma(c)) {
var n = b._childs;
if (n)
for (; 0 < n.length;) l.removeplugin(n[0].name, !0)
}
b.visible = !1;
b.parent = null;
b.sprite && V.pluginlayer.removeChild(b.sprite);
b.destroy();
La.removeItem(a)
}
};
l.addhotspot = function(a) {
if (!wd(a, _[367] + a + ")")) return null;
a = db.createItem(a);
if (!a) return null;
0 == a._ready && (a._dyn = !0, a.create(), a.sprite && V.hotspotlayer.appendChild(a.sprite));
Pd = !0;
return a
};
l.removehotspot = function(a) {
var c = db.getItem(a);
if (c) {
c.visible = !1;
c.parent = null;
if (c.sprite) try {
V.hotspotlayer.removeChild(c.sprite)
} catch (b) {}
if (c._poly) {
try {
V.svglayer.removeChild(c._poly)
} catch (n) {}
c._poly.kobject = null;
c._poly = null
}
c.destroy();
db.removeItem(a)
}
}
}
function Wf() {
var a = l.webVR;
X.processTicks();
var c = u.haschanged;
Ya++;
la.frame = Ya;
cb.fps();
var w = V.resizeCheck(),
f = X.processAnimations(),
c = c | u.haschanged;
if (b.webgl || !b.ios || b.ios && 5 <= b.iosversion) f = !1;
f |= Pd;
Pd = !1;
f && (u._hlookat += ((Ya & 1) - .5) / (1 + u.r_zoom), c = !0);
c |= fb.handleloading();
c |= gb.handleFrictions();
c |= fb.idlecheck();
c |= u.continuousupdates;
X.processTicks();
Za && (c = !0, Za = !1);
a && a.enabled && (c = !0);
c || w ? (cb.startFrame(), fb.updateview(0, !0), cb.finishFrame()) : (u.haschanged && u.updateView(), ce(!1), b.webgl && cb.hittesthotspots(null));
fb.updateplugins(w);
b.desktop && fb.checkHovering();
a && a.enabled && a.submitframe && a.submitframe()
}
var zc = this;
try {
!Object.prototype.__defineGetter__ && Object.defineProperty({}, "x", {
get: function() {
return !0
}
}).x && (Object.defineProperty(Object.prototype, _[246], {
enumerable: !1,
configurable: !0,
value: function(a, c) {
Object.defineProperty(this, a, {
get: c,
enumerable: !0,
configurable: !0
})
}
}), Object.defineProperty(Object.prototype, _[245], {
enumerable: !1,
configurable: !0,
value: function(a, c) {
Object.defineProperty(this, a, {
set: c,
enumerable: !0,
configurable: !0
})
}
}))
} catch (ag) {}
var bb = navigator,
ba = document,
M = window,
Ua = Math.PI,
Y = Ua / 180,
Qb = Number.NaN,
Qd = 0,
Ca = M.performance && M.performance.now ? function() {
return M.performance.now() - Qd
} : function() {
return (new Date).getTime() - Qd
},
Qd = Ca(),
nd = String.fromCharCode,
l = null,
Gb = 0,
ab = 0,
Sa = 0,
Da = 0,
aa = 1,
Rd = 1,
Ac = 0,
xb = null,
Ab = null,
ha = null,
md = null,
la = null,
hd = null,
Mc = null,
db = null,
L = null,
K = null,
La = null,
u = null,
Ta = null,
rb = null,
ee = !1,
Wb = !1,
fe = !1,
ge = 0,
Ya = 0,
he = 60,
Xa = 14,
ie = null,
bc = [_[387], _[569]],
za = null,
ud = "",
Rb = null,
eb = null,
Bb = null,
$a = null,
Pd = !1,
Kb = 0,
hb = 0,
Za = !1,
wc = !0,
b = {
runDetection: function(a) {
function c() {
var a = screen.width,
d = screen.height,
c = b.topAccess ? top : M,
m = c.innerWidth,
e = c.innerHeight,
c = c.orientation | 0,
S = a / (d + 1),
I = m / (e + 1);
if (1 < S && 1 > I || 1 > S && 1 < I) S = a, a = d, d = S;
r.width = a;
r.height = d;
r.orientation = c;
b.window = {
width: m,
height: e
};
a /= m;
return b.pagescale = a
}
function w(a, d) {
for (var c = ["ms", "Moz", _[535], "O"], b = 0; 5 > b; b++) {
var e = 0 < b ? c[b - 1] + a.slice(0, 1).toUpperCase() + a.slice(1) : a;
if (void 0 !== K.style[e]) return e
}
return null
}
var f = "flash html5 mobile tablet desktop ie edge webkit firefox ios iosversion iphone ipod ipad retina hidpi android androidstock blackberry touchdevice gesturedevice fullscreensupport windows mac linux air standalone silk".split(" "),
e, n, h, g, z = ba.documentElement,
l = a.mobilescale;
isNaN(l) && (l = .5);
n = f.length;
for (e = 0; e < n; e++) h = f[e], b[h] = !1;
b.html5 = b.html = !0;
b.iosversion = 0;
b.css3d = !1;
b.webgl = !1;
b.topAccess = !1;
b.simulator = !1;
b.multiressupport = !1;
b.panovideosupport = !1;
var r = b.screen = {};
try {
top && top.document && (b.topAccess = !0)
} catch (y) {}
var p = bb.platform,
f = F(p),
v = bb.userAgent,
t = F(v),
q = n = "";
0 <= f.indexOf("win") ? b.windows = !0 : 0 <= f.indexOf("mac") ? b.mac = !0 : 0 <= f.indexOf("linux") && (b.linux = !0);
var x = M.devicePixelRatio,
J = 2 <= x;
e = 1;
var B = 0 <= f.indexOf("ipod"),
D = 0 <= f.indexOf(_[62]),
A = 0 <= f.indexOf("ipad"),
k = D || B || A,
d = t.indexOf("silk/"),
G = 0 <= t.indexOf(_[491]) || 0 <= t.indexOf(_[160]),
E = 0 > d && !G && 0 <= t.indexOf(_[489]),
R = h = !1,
u = !1,
N = v.indexOf(_[149]),
T = M.chrome && !G,
H = v.indexOf(_[490]),
Fb = !1,
ea = (k || E || 0 <= d) && (b.windows || b.mac);
G && (N = H = -1);
var f = !1,
O = 0;
Rd = c();
if (k) {
if (b.ios = !0, n = p, g = v.indexOf("OS "), 0 < g && (g += 3, O = v.slice(g, v.indexOf(" ", g)).split("_").join("."), n += _[496] + O, b.iosversion = parseFloat(O), "6.0" <= O && (D && !J || B && J) && (b._iOS6_canvas_bug = !0)), h = D || B, R = A, g = Math.max(screen.width, screen.height), b.iphone = D || B, b.iphone5 = D && 500 < g, b.ip6p = D && 735 < g, b.ipod = B, b.ipad = A, b.retina = J, D || B) e *= l
} else if (E)
if (g = v.indexOf(_[497]), O = parseFloat(v.slice(g + 8)), b.android = !0, b.linux = !1, b.androidversion = O, n = v.slice(g, v.indexOf(";", g)), h = 0 < t.indexOf(_[59]), T && 0 < t.indexOf(_[322]) && (h = 480 > Math.min(screen.width, screen.height)), R = !h, g = v.indexOf(")"), 5 < g && (O = v.slice(0, g).lastIndexOf(";"), 5 < O && (J = v.indexOf(_[562], O), 0 < J && (g = J), n += " (" + v.slice(O + 2, g) + ")")), 0 < H && isNaN(x) && (x = Rd), R && 1 < x) {
if (b.hidpi = !0, e = x, 0 <= N || 0 < H) b.hidpi = !1, e = 1
} else h && (b.hidpi = 1 < x, e = x * l, .5 > e && (e = .5), 0 <= N || 0 < H || ea) && (b.hidpi = !1, e = l);
else {
if (0 <= t.indexOf(_[398]) || 0 <= t.indexOf(_[395]) || 0 <= t.indexOf("bb10")) Fb = !0, b.blackberry = !0, n = _[370], f = !0;
0 <= d ? (Fb = !0, b.silk = !0, n = _[344] + parseFloat(t.slice(d + 5)).toFixed(2), u = !1, h = 0 <= t.indexOf(_[59]), R = !h, f = !0) : 0 <= t.indexOf("ipad") || 0 <= t.indexOf(_[62]) ? u = Fb = !0 : 0 <= t.indexOf(_[157]) ? (R = !0, n += _[552]) : 0 <= t.indexOf(_[59]) ? (h = !0, n += _[550], e = l) : u = !0
}
B = bb.vendor && 0 <= bb.vendor.indexOf("Apple");
D = M.opera;
J = !1;
u && (n = _[307]);
g = v.indexOf(_[529]);
0 < g && (B || D || E) && (g += 8, O = v.slice(g, v.indexOf(" ", g)), B ? (b.safari = !0, b.safariversion = O, q = _[548]) : (E && (q = _[261], f = !0), D && (b.opera = !0, b.operaversion = O, q = "Opera")), q += " " + O);
k && (g = v.indexOf(_[546]), 0 < g && (b.safari = !0, g += 6, O = parseFloat(v.slice(g, v.indexOf(" ", g))), b.crios = O, q = _[530] + O.toFixed(1)));
g = N;
if (0 <= g || T) O = parseFloat(v.slice(g + 7)), b.chrome = !0, b.chromeversion = O, b.chromemobile = E || 0 <= d, q = _[149] + (isNaN(O) ? "" : " " + O.toFixed(1)), g = t.indexOf("opr/"), 0 < g && (q = _[538] + parseFloat(v.slice(g + 4)).toFixed(1) + _[424]), E && 28 > O && (f = !0), E && 1 < x && 20 > O && !ea && (b.hidpi = !0, e = x, h && (e *= l));
else if (g = H, 0 > g && (g = v.indexOf(_[537])), 0 <= g && (O = parseFloat(v.slice(1 + v.indexOf("/", g))), b.firefox = !0, b.firefoxversion = O, q = _[455] + (isNaN(O) ? "" : O.toFixed(1)), E && 35 > O && (f = !0)), g = v.indexOf("MSIE "), J = 0 <= g || G) u = b.ie = !0, R = !1, q = _[236], 0 < t.indexOf(_[474]) || 0 < t.indexOf(_[321]) ? (h = !0, u = !1, q = _[498] + q, e = l) : 0 < t.indexOf("arm;") && 1 < bb.msMaxTouchPoints && (R = !0, u = !1, q = _[515] + q, f = !0, e = 1), 0 <= g ? (O = v.slice(g + 4, v.indexOf(";", g)), b.ieversion = parseFloat(O), q += O) : (g = v.indexOf("rv:"), 0 <= g ? (O = parseFloat(v.slice(g + 3)), !isNaN(O) && 10 <= O && 100 > O && (b.ieversion = O, q += " " + O.toFixed(1))) : (g = t.indexOf(_[160]), 0 <= g && (q = _[285], b.edge = !0, wc = !1, O = parseFloat(v.slice(g + 6)), isNaN(O) || (b.ieversion = O, q += " " + O.toFixed(5))))), n = q, q = "";
b.android && (b.androidstock = !(b.chrome || b.firefox || b.opera));
0 == b.ie && 0 < (g = t.indexOf(_[521])) && (O = parseFloat(t.slice(g + 7)), !isNaN(O) && 0 < O && (b.webkit = !0, b.webkitversion = O));
b.pixelratio = isNaN(x) ? 1 : x;
b.fractionalscaling = 0 != b.pixelratio % 1;
var x = {},
K = Ja();
x.find = w;
x.prefix = J ? "ms" : b.firefox ? "moz" : b.safari || b.chrome || b.androidstock ? _[86] : "";
x.perspective = w(_[371]);
x.transform = w(_[437]);
x.backgroundsize = w(_[294]);
x.boxshadow = w(_[412]);
x.boxshadow_style = _[270] == x.boxshadow ? _[228] : _[325] == x.boxshadow ? _[280] : _[390];
E && "4.0" > b.androidversion && (x.perspective = null);
x.perspective && (b.css3d = !0, _[239] == x.perspective && M.matchMedia && (t = M.matchMedia(_[206]))) && (b.css3d = 1 == t.matches);
K = null;
b.webgl = function() {
var a = null;
try {
for (var d = Ja(2), c = 0; 4 > c && !(a = d.getContext([_[65], _[100], _[130], _[131]][c])); c++);
} catch (b) {}
return null != a
}();
t = {};
t.useragent = v;
t.platform = p;
t.domain = null;
t.location = M.location.href;
p = t.events = {};
t.css = x;
if (k || E || void 0 !== z.ontouchstart || Fb) b.touchdevice = !0, b.gesturedevice = !0;
k = 0;
(bb.msPointerEnabled || bb.pointerEnabled) && b.ie && (E = bb.msMaxTouchPoints || bb.maxTouchPoints, bb.msPointerEnabled && (k = 2), bb.pointerEnabled && (k = 1), b.touchdevice = 0 < E, b.gesturedevice = 1 < E);
p.touchstart = [_[47], _[361], _[317]][k];
p.touchmove = [_[49], _[360], _[299]][k];
p.touchend = [_[52], _[417], _[350]][k];
p.touchcancel = [_[353], _[298], _[279]][k];
p.gesturestart = [_[338], _[111], _[111]][k];
p.gesturechange = [_[300], _[109], _[109]][k];
p.gestureend = [_[383], _[119], _[119]][k];
p.pointerover = [_[12], _[12], _[44]][k];
p.pointerout = [_[14], _[14], _[45]][k];
b.pointerEvents = b.opera || b.ie && 11 > b.ieversion ? !1 : !0;
q && (n += " - " + q);
b.realDesktop = u;
q = a.vars ? F(a.vars.simulatedevice) : null;
_[436] == q && (0 <= v.indexOf(_[153]) || 0 <= v.indexOf("iPod") ? q = _[62] : 0 <= v.indexOf("iPad") && (q = "ipad"));
b.touchdeviceNS = b.touchdevice;
v = _[62] == q ? 1 : "ipad" == q ? 2 : 0;
0 < v && (b.simulator = !0, b.crios = 0, n += " - " + (1 == v ? _[153] : "iPad") + _[379], e = v * l, h = 1 == v, R = 2 == v, u = !1, b.ios = !0, b.iphone = h, b.ipad = R, b.touchdevice = !0, b.gesturedevice = !0);
b.browser = t;
b.infoString = n;
a = F(a.fakedevice);
_[59] == a ? (h = !0, R = u = !1) : _[157] == a ? (R = !0, h = u = !1) : _[525] == a && (u = !0, h = R = !1);
b.mobile = h;
b.tablet = R;
b.desktop = u;
b.normal = R || u;
b.touch = b.gesturedevice;
b.mouse = u;
b.getViewportScale = c;
aa = e;
0 == b.simulator && 0 != ba.fullscreenEnabled && 0 != ba.mozFullScreenEnabled && 0 != ba.webkitFullScreenEnabled && 0 != ba.webkitFullscreenEnabled && 0 != ba.msFullscreenEnabled && (a = [_[238], _[217], _[201], _[202], _[224]], l = -1, e = null, n = _[248], z[a[0]] ? (e = "", l = 0) : z[a[1]] ? (e = "moz", l = 1) : z[a[2]] ? (e = _[86], l = 2) : z[a[3]] ? (e = _[86], l = 3) : z[a[4]] && (e = "MS", n = _[251], l = 4), 0 <= l && 0 == f && (b.fullscreensupport = !0, p.fullscreenchange = e + n, p.requestfullscreen = a[l]));
b.buildList();
delete b.runDetection
},
buildList: function() {
var a, c = "|all";
for (a in b) a == F(a) && b[a] && (c += "|" + a);
b.haveList = c + "|"
},
checkSupport: function(a) {
a = F(a).split("no-").join("!").split(".or.").join("|").split(".and.").join("+").split("|");
var c, l, f = a.length;
for (c = 0; c < f; c++) {
var e = a[c].split("+"),
n = !1;
for (l = 0; l < e.length; l++) {
var n = e[l],
h = !1;
33 == n.charCodeAt(0) && (n = n.slice(1), h = !0);
if (0 == n.indexOf("ios") && b.ios)
if (3 == n.length || b.iosversion >= parseFloat(n.slice(3)))
if (h) {
n = !1;
break
} else n = !0;
else if (h) n = !0;
else {
n = !1;
break
} else if (0 <= b.haveList.indexOf("|" + n + "|"))
if (h) {
n = !1;
break
} else n = !0;
else if (h) n = !0;
else {
n = !1;
break
}
}
if (n) return !0
}
return !1
}
},
wb = 1,
yd = !1,
vb = null,
je = null,
ke = null,
Nc = null,
jd = null,
le = !1,
Oc = 0,
id = function() {
var a = this;
a._type = "base";
a.registerattribute = function(c, b, f, e) {
c = F(c);
f && e ? (a.hasOwnProperty(c) && (b = qa(a[c], typeof b)), a.__defineGetter__(c, e), a.__defineSetter__(c, f), f(b)) : a.hasOwnProperty(c) ? a[c] = qa(a[c], typeof b) : a[c] = b
};
a.createobject = function(c) {
c = F(c);
try {
return a.hasOwnProperty(c) ? a[c] : a[c] = new id
} catch (b) {}
return null
};
a.removeobject = a.removeattribute = function(c) {
c = F(c);
try {
a[c] = null, delete a[c]
} catch (b) {}
};
a.createarray = function(c) {
c = F(c);
return a[c] && a[c].isArray ? a[c] : a[c] = new pb(id)
};
a.removearray = function(c) {
c = F(c);
a[c] && a[c].isArray && (a[c] = null, delete a[c])
};
a.getattributes = function() {
var c = [],
b = ["index", _[448], "DATA"],
f;
for (f in a) _[15] != typeof a[f] && -1 == b.indexOf(f) && "_" != f.charAt(0) && c.push(f);
return c
}
},
pb = function(a, c) {
var b = [],
f = {};
this.isArray = !0;
this.isDynArray = 1 == c;
this.__defineGetter__("count", function() {
return b.length
});
this.__defineSetter__("count", function(a) {
0 == a ? (b = [], f = {}) : b.length = a
});
this.createItem = function(c, n) {
var h = -1,
g = null,
h = String(c).charCodeAt(0);
if (48 <= h && 57 >= h) {
if (n) return null;
h = parseInt(c, 10);
g = b[h];
if (null == g || void 0 == g) g = null != a ? new a : {}, g.name = "n" + h, g.index = h, b[h] = g, f[g.name] = g
} else if (c = F(c), g = f[c], null == g || void 0 == g) g = n ? n : null != a ? new a : {}, h = b.push(g) - 1, g.index = h, g.name = c, b[h] = g, f[c] = g;
return g
};
this.getItem = function(a) {
var c = -1,
c = String(a).charCodeAt(0);
48 <= c && 57 >= c ? (c = parseInt(a, 10), a = b[c]) : a = f[F(a)];
return a
};
this.getArray = function() {
return b
};
this.renameItem = function(a, c) {
var h = -1,
h = String(a).charCodeAt(0);
48 <= h && 57 >= h ? (h = parseInt(a, 10), h = b[h]) : h = f[F(a)];
h && (delete f[h.name], c = F(c), h.name = c, f[c] = h)
};
this.removearrayitem = this.removeItem = function(a) {
var c = -1,
c = null;
a = String(a);
c = String(a).charCodeAt(0);
48 <= c && 57 >= c ? (c = parseInt(a, 10), c = b[c]) : c = f[F(a)];
if (c) {
f[c.name] = null;
delete f[c.name];
b.splice(c.index, 1);
var h;
h = b.length;
for (a = c.index; a < h; a++) b[a].index--
}
return c
};
this.sortby = function(a, c) {
var f, g;
g = b.length;
if (1 < g) {
var l = 1,
u = !1,
r = !1;
_[1] === typeof c && (c = c.toLowerCase(), 0 <= c.indexOf(_[392]) && (l = -1), 0 <= c.indexOf(_[500]) && (u = !0), 0 <= c.indexOf(_[281]) && (r = !0));
b.sort(function(c, b) {
var f = c[a],
g = b[a];
u ? (f = Number(f), isNaN(f) && (f = void 0), g = Number(g), isNaN(g) && (g = void 0), void 0 === f && void 0 === g && (f = c[a], g = b[a])) : r && (null != f && (f = ("" + f).toLowerCase()), null != g && (g = ("" + g).toLowerCase()));
return void 0 === f && void 0 !== g ? +l : void 0 !== f && void 0 === g || f < g ? -l : f > g ? +l : 0
});
for (f = 0; f < g; f++) b[f].index = f
}
}
},
Ze = Array(256),
pa = {};
(function() {
function a(a) {
var c, b, e, f, k = a.length;
c = 3 * (k >> 2) - ("=" == a.charAt(k - 1)) - ("=" == a.charAt(k - 2));
for (var d = new r(c), g = c / 3 | 0, h = 0, n = 0; 0 < g--;) c = p[a.charCodeAt(h) & 127], b = p[a.charCodeAt(h + 1) & 127], e = p[a.charCodeAt(h + 2) & 127], f = p[a.charCodeAt(h + 3) & 127], d[n] = c << 2 | b >> 4, d[n + 1] = (b & 15) << 4 | e >> 2, d[n + 2] = (e & 3) << 6 | f, h += 4, n += 3;
h < k && (c = p[a.charCodeAt(h) & 127], b = p[a.charCodeAt(h + 1) & 127], e = p[a.charCodeAt(h + 2) & 127], f = p[a.charCodeAt(h + 3) & 127], d[n++] = c << 2 | b >> 4, 64 != e && (d[n++] = (b & 15) << 4 | e >> 2), 64 != f && (d[n++] = (e & 3) << 6 | f));
return d
}
function c(a, c) {
var b, e, f = 15,
k = _[244],
d = new r(256);
if (82 == c)
if (ie) f = 127, k = ie;
else return null;
b = a[65] & 7;
for (e = 0; 128 > e; e++) d[2 * e] = a[e], d[2 * e + 1] = String(k).charCodeAt(e & f);
v.srand(d, 256);
return v.flip(a, b + 128, a.length - 128 - b)
}
function w(a, c, b) {
if (null == a) return null;
a = "" + a;
1 == c && l.basedir && 0 > a.indexOf("://") && 0 != a.indexOf("/") && _[92] != a.slice(0, 5) && (a = l.basedir + a);
a = a.split("\\").join("/");
null == g.firstxmlpath && (g.firstxmlpath = "");
null == g.currentxmlpath && (g.currentxmlpath = "");
null == g.swfpath && (g.swfpath = "");
null == g.htmlpath && (g.htmlpath = "");
for (c = a.indexOf("%"); 0 <= c;) {
var e = a.indexOf("%", c + 1);
if (e > c) {
var f = a.slice(c + 1, e),
k = null;
if (36 == f.charCodeAt(0)) {
if (f = Q(f.slice(1)), null != f) {
f = "" + f;
a = 47 == f.charCodeAt(0) || 0 < f.indexOf("://") ? f + a.slice(e + 1) : a.slice(0, c) + f + a.slice(e + 1);
c = a.indexOf("%");
continue
}
} else switch (f) {
case _[485]:
k = 1 == b ? "" : g.firstxmlpath;
break;
case _[405]:
k = g.currentxmlpath;
break;
case _[528]:
k = 1 == b ? "" : g.swfpath;
break;
case _[487]:
k = 1 == b ? "" : g.htmlpath;
break;
case _[531]:
k = 1 == b ? "" : l.basedir
}
null != k ? (e++, "/" == a.charAt(e) && e++, a = k + a.slice(e), c = a.indexOf("%")) : c = a.indexOf("%", c + 1)
} else c = -1
}
return a
}
function f(b, f, g) {
var h, n;
0 <= (h = f.indexOf(_[352])) ? (n = f.indexOf(_[336])) > h && (f = f.slice(h + 11, n), h = f.indexOf(_[432]), 0 <= h && (f = f.slice(h + 9, -3), 0 <= f.indexOf(_[101]) && (f = f.split(_[101]).join(_[566])))) : g && 0 <= (h = f.indexOf('"[[KENC')) && (n = f.lastIndexOf(']]"')) > h && (f = f.slice(h + 3, n));
var k = null;
h = f.slice(0, 8);
n = f.slice(8);
g = !0 === g && Xa & 64 || !g && Xa & 32;
if ("KENC" != h.slice(0, 4)) return f;
f = !1;
var d = 0,
p = 0,
p = 0,
l = !1,
d = String(h).charCodeAt(4);
if (80 == d || 82 == d)
if (p = String(h).charCodeAt(5), 85 == p && (p = String(h).charCodeAt(6), l = 90 == p, 66 == p || l)) f = !0;
if (f && (!g || 80 != d))
if (l) {
h = d;
k = n.length;
f = g = null;
var q = p = l = d = 0,
v = 0,
z = 0,
t = 0;
for (g = new r(4 * k / 5 | 0); d < k;) p = n.charCodeAt(d++) - 35, q = n.charCodeAt(d++) - 35, v = n.charCodeAt(d++) - 35, z = n.charCodeAt(d++) - 35, t = n.charCodeAt(d++) - 35, 56 < p && p--, 56 < q && q--, 56 < v && v--, 56 < z && z--, 56 < t && t--, t += 85 * (85 * (85 * (85 * p + q) + v) + z), g[l++] = t >> 24 & 255, g[l++] = t >> 16 & 255, g[l++] = t >> 8 & 255, g[l++] = t & 255;
g = c(g, h);
if (null == g) k = null;
else {
k = g[2] << 16 | g[1] << 8 | g[0];
f = new r(k);
k = 8 + (g[6] << 16 | g[5] << 8 | g[4]);
d = 8;
for (l = 0; d < k;) {
p = g[d++];
q = p >> 4;
for (v = q + 240; 255 === v; q += v = g[d++]);
for (z = d + q; d < z;) f[l++] = g[d++];
if (d === k) break;
t = l - (g[d++] | g[d++] << 8);
q = p & 15;
for (v = q + 240; 255 === v; q += v = g[d++]);
for (z = l + q + 4; l < z;) f[l++] = f[t++]
}
g.length = 0;
k = n = e(f)
}
} else k = a(n), (k = c(k, d)) && (k = e(k));
null == k && b && Ga(b + _[205]);
return k
}
function e(a) {
if (y) return y.decode(a);
for (var c = "", b = 0, e = 0, f = 0, k = 0, d = a.length; b < d;) e = a[b], 128 > e ? (0 < e && (c += nd(e)), b++) : 191 < e && 224 > e ? (f = a[b + 1], c += nd((e & 31) << 6 | f & 63), b += 2) : (f = a[b + 1], k = a[b + 2], e = (e & 15) << 12 | (f & 63) << 6 | k & 63, 65279 != e && (c += nd(e)), b += 3);
return c
}
function n(a, c, b) {
void 0 !== c ? c(a, b) : Ga(a + _[98] + b + ")")
}
function h(a, c, e, f, h) {
if (0 == g.DMcheck(a)) n(a, h, _[254]);
else {
var k = null,
d = !1;
if (b.ie && "" == ba.domain) try {
k = new ActiveXObject(_[234]), d = !0
} catch (r) {
k = null
}
null == k && (k = new XMLHttpRequest);
void 0 !== k.overrideMimeType && c && k.overrideMimeType(c);
k.onreadystatechange = function() {
if (4 == k.readyState) {
var c = k.status,
b = k.responseText;
if (0 == c && b || 200 == c || 304 == c)
if (e) {
var g = null,
g = d ? (new DOMParser).parseFromString(b, _[36]) : k.responseXML;
f(a, g, c)
} else f(a, b);
else n(a, h, k.status)
}
};
try {
k.open("GET", a, !0), k.send(null)
} catch (p) {
n(a, h, p)
}
}
}
var g = pa,
z = 1;
try {
String.fromCharCode.apply(null, (new Uint8Array(4)).subarray(2))
} catch (u) {
z = 0
}
var r = z ? Uint8Array : Array,
y = z && window.TextDecoder ? new TextDecoder : null,
p = null;
(function() {
var a;
p = new r(128);
for (a = 0; 128 > a; a++) p[a] = 0;
p[43] = 62;
p[47] = 63;
p[61] = 64;
for (a = 48; 58 > a; a++) p[a] = a + 4;
for (a = 65; 91 > a; a++) p[a] = a - 65;
for (a = 97; 123 > a; a++) p[a] = a - 71
})();
g.firstxmlpath = null;
g.currentxmlpath = null;
g.swfpath = null;
g.htmlpath = null;
g.parsePath = w;
g.DMcheck = function(a) {
var c;
if (Xa & 256 && (c = ba.domain) && Rb) {
a = a.toLowerCase();
var b = a.indexOf("://");
if (0 < b) {
var b = b + 3,
e = a.indexOf("/", b);
if (0 < e) return a = a.slice(b, e), b = a.indexOf(":"), 1 < b && (a = a.slice(0, b)), a == c
} else return c == Rb
}
return !0
};
var v = new function() {
var a, c, b;
this.srand = function(e, f) {
var k, d, g, h, n = new r(256);
for (k = 0; 256 > k; k++) n[k] = k;
for (d = k = 0; 256 > k; k++) d = d + n[k] + e[k % f] & 255, h = n[k], n[k] = n[d], n[d] = h;
for (g = d = k = 0; 256 > g; g++) k = k + 1 & 255, d = d + n[k] & 255, h = n[k], n[k] = n[d], n[d] = h;
a = n;
c = k;
b = d
};
this.flip = function(e, f, k) {
var d = new r(k),
g, h;
d.length = k;
var n = a,
p = c,
l = b;
for (g = 0; g < k; g++, f++) p = p + 1 & 255, l = l + n[p] & 255, d[g] = e[f] ^ a[n[p] + n[l] & 255], h = n[p], n[p] = n[l], n[l] = h;
c = p;
b = l;
return d
}
},
t = {},
q = function() {
this.img = this.url = null;
this.retries = 0;
this.refs = 1;
this.state = 0;
this.cb_done = [];
this.cb_err = []
};
q.prototype.handleEvent = function(a) {
a = a.type;
var c = 1;
if ("load" == a) c = 2;
else if (_[91] == a) c = 4;
else if (_[40] == a && (c = 3, ++this.retries < l.network.retrycount)) {
this.reload();