SHARE
TWEET

Untitled

a guest Apr 19th, 2019 162 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function param(t) {
  2.     var e = "";
  3.     for (var n in t) t.hasOwnProperty(n) && (0 < e.length && (e += "&"), e += encodeURI(n + "=" + t[n]));
  4.     return e
  5. }! function(t, e) {
  6.     "object" == typeof exports && "object" == typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define([], e) : "object" == typeof exports ? exports.ClipboardJS = e() : t.ClipboardJS = e()
  7. }(this, function() {
  8.     return function(n) {
  9.         function o(t) {
  10.             if (r[t]) return r[t].exports;
  11.             var e = r[t] = {
  12.                 i: t,
  13.                 l: !1,
  14.                 exports: {}
  15.             };
  16.             return n[t].call(e.exports, e, e.exports, o), e.l = !0, e.exports
  17.         }
  18.         var r = {};
  19.         return o.m = n, o.c = r, o.i = function(t) {
  20.             return t
  21.         }, o.d = function(t, e, n) {
  22.             o.o(t, e) || Object.defineProperty(t, e, {
  23.                 configurable: !1,
  24.                 enumerable: !0,
  25.                 get: n
  26.             })
  27.         }, o.n = function(t) {
  28.             var e = t && t.__esModule ? function() {
  29.                 return t.default
  30.             } : function() {
  31.                 return t
  32.             };
  33.             return o.d(e, "a", e), e
  34.         }, o.o = function(t, e) {
  35.             return Object.prototype.hasOwnProperty.call(t, e)
  36.         }, o.p = "", o(o.s = 3)
  37.     }([function(t, e, n) {
  38.         var o, r, i;
  39.         r = [t, n(7)], void 0 !== (i = "function" == typeof(o = function(t, e) {
  40.             "use strict";
  41.             var n, o = (n = e) && n.__esModule ? n : {
  42.                     default: n
  43.                 },
  44.                 r = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) {
  45.                     return typeof t
  46.                 } : function(t) {
  47.                     return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t
  48.                 },
  49.                 i = function() {
  50.                     function o(t, e) {
  51.                         for (var n = 0; n < e.length; n++) {
  52.                             var o = e[n];
  53.                             o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(t, o.key, o)
  54.                         }
  55.                     }
  56.                     return function(t, e, n) {
  57.                         return e && o(t.prototype, e), n && o(t, n), t
  58.                     }
  59.                 }(),
  60.                 a = function() {
  61.                     function e(t) {
  62.                         (function(t, e) {
  63.                             if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
  64.                         })(this, e), this.resolveOptions(t), this.initSelection()
  65.                     }
  66.                     return i(e, [{
  67.                         key: "resolveOptions",
  68.                         value: function() {
  69.                             var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {};
  70.                             this.action = t.action, this.container = t.container, this.emitter = t.emitter, this.target = t.target, this.text = t.text, this.trigger = t.trigger, this.selectedText = ""
  71.                         }
  72.                     }, {
  73.                         key: "initSelection",
  74.                         value: function() {
  75.                             this.text ? this.selectFake() : this.target && this.selectTarget()
  76.                         }
  77.                     }, {
  78.                         key: "selectFake",
  79.                         value: function() {
  80.                             var t = this,
  81.                                 e = "rtl" == document.documentElement.getAttribute("dir");
  82.                             this.removeFake(), this.fakeHandlerCallback = function() {
  83.                                 return t.removeFake()
  84.                             }, this.fakeHandler = this.container.addEventListener("click", this.fakeHandlerCallback) || !0, this.fakeElem = document.createElement("textarea"), this.fakeElem.style.fontSize = "12pt", this.fakeElem.style.border = "0", this.fakeElem.style.padding = "0", this.fakeElem.style.margin = "0", this.fakeElem.style.position = "absolute", this.fakeElem.style[e ? "right" : "left"] = "-9999px";
  85.                             var n = window.pageYOffset || document.documentElement.scrollTop;
  86.                             this.fakeElem.style.top = n + "px", this.fakeElem.setAttribute("readonly", ""), this.fakeElem.value = this.text, this.container.appendChild(this.fakeElem), this.selectedText = (0, o.default)(this.fakeElem), this.copyText()
  87.                         }
  88.                     }, {
  89.                         key: "removeFake",
  90.                         value: function() {
  91.                             this.fakeHandler && (this.container.removeEventListener("click", this.fakeHandlerCallback), this.fakeHandler = null, this.fakeHandlerCallback = null), this.fakeElem && (this.container.removeChild(this.fakeElem), this.fakeElem = null)
  92.                         }
  93.                     }, {
  94.                         key: "selectTarget",
  95.                         value: function() {
  96.                             this.selectedText = (0, o.default)(this.target), this.copyText()
  97.                         }
  98.                     }, {
  99.                         key: "copyText",
  100.                         value: function() {
  101.                             var e = void 0;
  102.                             try {
  103.                                 e = document.execCommand(this.action)
  104.                             } catch (t) {
  105.                                 e = !1
  106.                             }
  107.                             this.handleResult(e)
  108.                         }
  109.                     }, {
  110.                         key: "handleResult",
  111.                         value: function(t) {
  112.                             this.emitter.emit(t ? "success" : "error", {
  113.                                 action: this.action,
  114.                                 text: this.selectedText,
  115.                                 trigger: this.trigger,
  116.                                 clearSelection: this.clearSelection.bind(this)
  117.                             })
  118.                         }
  119.                     }, {
  120.                         key: "clearSelection",
  121.                         value: function() {
  122.                             this.trigger && this.trigger.focus(), window.getSelection().removeAllRanges()
  123.                         }
  124.                     }, {
  125.                         key: "destroy",
  126.                         value: function() {
  127.                             this.removeFake()
  128.                         }
  129.                     }, {
  130.                         key: "action",
  131.                         set: function() {
  132.                             var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : "copy";
  133.                             if (this._action = t, "copy" !== this._action && "cut" !== this._action) throw new Error('Invalid "action" value, use either "copy" or "cut"')
  134.                         },
  135.                         get: function() {
  136.                             return this._action
  137.                         }
  138.                     }, {
  139.                         key: "target",
  140.                         set: function(t) {
  141.                             if (void 0 !== t) {
  142.                                 if (!t || "object" !== (void 0 === t ? "undefined" : r(t)) || 1 !== t.nodeType) throw new Error('Invalid "target" value, use a valid Element');
  143.                                 if ("copy" === this.action && t.hasAttribute("disabled")) throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');
  144.                                 if ("cut" === this.action && (t.hasAttribute("readonly") || t.hasAttribute("disabled"))) throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');
  145.                                 this._target = t
  146.                             }
  147.                         },
  148.                         get: function() {
  149.                             return this._target
  150.                         }
  151.                     }]), e
  152.                 }();
  153.             t.exports = a
  154.         }) ? o.apply(e, r) : o) && (t.exports = i)
  155.     }, function(t, e, n) {
  156.         var d = n(6),
  157.             h = n(5);
  158.         t.exports = function(t, e, n) {
  159.             if (!t && !e && !n) throw new Error("Missing required arguments");
  160.             if (!d.string(e)) throw new TypeError("Second argument must be a String");
  161.             if (!d.fn(n)) throw new TypeError("Third argument must be a Function");
  162.             if (d.node(t)) return r = e, i = n, (o = t).addEventListener(r, i), {
  163.                 destroy: function() {
  164.                     o.removeEventListener(r, i)
  165.                 }
  166.             };
  167.             var o, r, i, a, c, u, l, s, f;
  168.             if (d.nodeList(t)) return a = t, c = e, u = n, Array.prototype.forEach.call(a, function(t) {
  169.                 t.addEventListener(c, u)
  170.             }), {
  171.                 destroy: function() {
  172.                     Array.prototype.forEach.call(a, function(t) {
  173.                         t.removeEventListener(c, u)
  174.                     })
  175.                 }
  176.             };
  177.             if (d.string(t)) return l = t, s = e, f = n, h(document.body, l, s, f);
  178.             throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")
  179.         }
  180.     }, function(t, e) {
  181.         function n() {}
  182.         n.prototype = {
  183.             on: function(t, e, n) {
  184.                 var o = this.e || (this.e = {});
  185.                 return (o[t] || (o[t] = [])).push({
  186.                     fn: e,
  187.                     ctx: n
  188.                 }), this
  189.             },
  190.             once: function(t, e, n) {
  191.                 function o() {
  192.                     r.off(t, o), e.apply(n, arguments)
  193.                 }
  194.                 var r = this;
  195.                 return o._ = e, this.on(t, o, n)
  196.             },
  197.             emit: function(t) {
  198.                 for (var e = [].slice.call(arguments, 1), n = ((this.e || (this.e = {}))[t] || []).slice(), o = 0, r = n.length; o < r; o++) n[o].fn.apply(n[o].ctx, e);
  199.                 return this
  200.             },
  201.             off: function(t, e) {
  202.                 var n = this.e || (this.e = {}),
  203.                     o = n[t],
  204.                     r = [];
  205.                 if (o && e)
  206.                     for (var i = 0, a = o.length; i < a; i++) o[i].fn !== e && o[i].fn._ !== e && r.push(o[i]);
  207.                 return r.length ? n[t] = r : delete n[t], this
  208.             }
  209.         }, t.exports = n
  210.     }, function(t, e, n) {
  211.         var o, r, i;
  212.         r = [t, n(0), n(2), n(1)], void 0 !== (i = "function" == typeof(o = function(t, e, n, o) {
  213.             "use strict";
  214.  
  215.             function r(t) {
  216.                 return t && t.__esModule ? t : {
  217.                     default: t
  218.                 }
  219.             }
  220.  
  221.             function i(t, e) {
  222.                 var n = "data-clipboard-" + t;
  223.                 if (e.hasAttribute(n)) return e.getAttribute(n)
  224.             }
  225.             var a = r(e),
  226.                 c = r(n),
  227.                 u = r(o),
  228.                 l = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) {
  229.                     return typeof t
  230.                 } : function(t) {
  231.                     return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t
  232.                 },
  233.                 s = function() {
  234.                     function o(t, e) {
  235.                         for (var n = 0; n < e.length; n++) {
  236.                             var o = e[n];
  237.                             o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(t, o.key, o)
  238.                         }
  239.                     }
  240.                     return function(t, e, n) {
  241.                         return e && o(t.prototype, e), n && o(t, n), t
  242.                     }
  243.                 }(),
  244.                 f = function(t) {
  245.                     function o(t, e) {
  246.                         ! function(t, e) {
  247.                             if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
  248.                         }(this, o);
  249.                         var n = function(t, e) {
  250.                             if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  251.                             return !e || "object" != typeof e && "function" != typeof e ? t : e
  252.                         }(this, (o.__proto__ || Object.getPrototypeOf(o)).call(this));
  253.                         return n.resolveOptions(e), n.listenClick(t), n
  254.                     }
  255.                     return function(t, e) {
  256.                         if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
  257.                         t.prototype = Object.create(e && e.prototype, {
  258.                             constructor: {
  259.                                 value: t,
  260.                                 enumerable: !1,
  261.                                 writable: !0,
  262.                                 configurable: !0
  263.                             }
  264.                         }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
  265.                     }(o, t), s(o, [{
  266.                         key: "resolveOptions",
  267.                         value: function() {
  268.                             var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {};
  269.                             this.action = "function" == typeof t.action ? t.action : this.defaultAction, this.target = "function" == typeof t.target ? t.target : this.defaultTarget, this.text = "function" == typeof t.text ? t.text : this.defaultText, this.container = "object" === l(t.container) ? t.container : document.body
  270.                         }
  271.                     }, {
  272.                         key: "listenClick",
  273.                         value: function(t) {
  274.                             var e = this;
  275.                             this.listener = (0, u.default)(t, "click", function(t) {
  276.                                 return e.onClick(t)
  277.                             })
  278.                         }
  279.                     }, {
  280.                         key: "onClick",
  281.                         value: function(t) {
  282.                             var e = t.delegateTarget || t.currentTarget;
  283.                             this.clipboardAction && (this.clipboardAction = null), this.clipboardAction = new a.default({
  284.                                 action: this.action(e),
  285.                                 target: this.target(e),
  286.                                 text: this.text(e),
  287.                                 container: this.container,
  288.                                 trigger: e,
  289.                                 emitter: this
  290.                             })
  291.                         }
  292.                     }, {
  293.                         key: "defaultAction",
  294.                         value: function(t) {
  295.                             return i("action", t)
  296.                         }
  297.                     }, {
  298.                         key: "defaultTarget",
  299.                         value: function(t) {
  300.                             var e = i("target", t);
  301.                             if (e) return document.querySelector(e)
  302.                         }
  303.                     }, {
  304.                         key: "defaultText",
  305.                         value: function(t) {
  306.                             return i("text", t)
  307.                         }
  308.                     }, {
  309.                         key: "destroy",
  310.                         value: function() {
  311.                             this.listener.destroy(), this.clipboardAction && (this.clipboardAction.destroy(), this.clipboardAction = null)
  312.                         }
  313.                     }], [{
  314.                         key: "isSupported",
  315.                         value: function() {
  316.                             var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : ["copy", "cut"],
  317.                                 e = "string" == typeof t ? [t] : t,
  318.                                 n = !!document.queryCommandSupported;
  319.                             return e.forEach(function(t) {
  320.                                 n = n && !!document.queryCommandSupported(t)
  321.                             }), n
  322.                         }
  323.                     }]), o
  324.                 }(c.default);
  325.             t.exports = f
  326.         }) ? o.apply(e, r) : o) && (t.exports = i)
  327.     }, function(t, e) {
  328.         if ("undefined" != typeof Element && !Element.prototype.matches) {
  329.             var n = Element.prototype;
  330.             n.matches = n.matchesSelector || n.mozMatchesSelector || n.msMatchesSelector || n.oMatchesSelector || n.webkitMatchesSelector
  331.         }
  332.         t.exports = function(t, e) {
  333.             for (; t && 9 !== t.nodeType;) {
  334.                 if ("function" == typeof t.matches && t.matches(e)) return t;
  335.                 t = t.parentNode
  336.             }
  337.         }
  338.     }, function(t, e, n) {
  339.         function i(t, e, n, o, r) {
  340.             var i = function(e, n, t, o) {
  341.                 return function(t) {
  342.                     t.delegateTarget = a(t.target, n), t.delegateTarget && o.call(e, t)
  343.                 }
  344.             }.apply(this, arguments);
  345.             return t.addEventListener(n, i, r), {
  346.                 destroy: function() {
  347.                     t.removeEventListener(n, i, r)
  348.                 }
  349.             }
  350.         }
  351.         var a = n(4);
  352.         t.exports = function(t, e, n, o, r) {
  353.             return "function" == typeof t.addEventListener ? i.apply(null, arguments) : "function" == typeof n ? i.bind(null, document).apply(null, arguments) : ("string" == typeof t && (t = document.querySelectorAll(t)), Array.prototype.map.call(t, function(t) {
  354.                 return i(t, e, n, o, r)
  355.             }))
  356.         }
  357.     }, function(t, n) {
  358.         n.node = function(t) {
  359.             return void 0 !== t && t instanceof HTMLElement && 1 === t.nodeType
  360.         }, n.nodeList = function(t) {
  361.             var e = Object.prototype.toString.call(t);
  362.             return void 0 !== t && ("[object NodeList]" === e || "[object HTMLCollection]" === e) && "length" in t && (0 === t.length || n.node(t[0]))
  363.         }, n.string = function(t) {
  364.             return "string" == typeof t || t instanceof String
  365.         }, n.fn = function(t) {
  366.             return "[object Function]" === Object.prototype.toString.call(t)
  367.         }
  368.     }, function(t, e) {
  369.         t.exports = function(t) {
  370.             var e;
  371.             if ("SELECT" === t.nodeName) t.focus(), e = t.value;
  372.             else if ("INPUT" === t.nodeName || "TEXTAREA" === t.nodeName) {
  373.                 var n = t.hasAttribute("readonly");
  374.                 n || t.setAttribute("readonly", ""), t.select(), t.setSelectionRange(0, t.value.length), n || t.removeAttribute("readonly"), e = t.value
  375.             } else {
  376.                 t.hasAttribute("contenteditable") && t.focus();
  377.                 var o = window.getSelection(),
  378.                     r = document.createRange();
  379.                 r.selectNodeContents(t), o.removeAllRanges(), o.addRange(r), e = o.toString()
  380.             }
  381.             return e
  382.         }
  383.     }])
  384. }), document.addEventListener("DOMContentLoaded", function(t) {
  385.     document.documentElement.className = "js";
  386.     for (var e = document.querySelectorAll("img.defer"), n = 0; n < e.length; n++) e[n].getAttribute("data-src") && e[n].setAttribute("src", e[n].getAttribute("data-src"))
  387. });
  388. var WIMB = WIMB || {
  389.         version: "1.4",
  390.         meta_string: function() {
  391.             return "href=" + encodeURIComponent(window.location.href) + "&wimb_version=" + WIMB.version
  392.         },
  393.         init: {
  394.             namespace_the_window: function() {
  395.                 window.wimb || (window.wimb = {}), window.wimb.data || (window.wimb.data = {})
  396.             }
  397.         },
  398.         detect: {
  399.             javascript: {
  400.                 enabled: function() {
  401.                     return !0
  402.                 }
  403.             },
  404.             cookies: {
  405.                 enabled: function() {
  406.                     return !!navigator.cookieEnabled
  407.                 }
  408.             },
  409.             cookies_third_party: {
  410.                 enabled: function() {
  411.                     return "enabled" == window.wimb.data.cookies_third_party || "disabled" != window.wimb.data.cookies_third_party && null
  412.                 },
  413.                 trigger_set_cookie: function(e) {
  414.                     return WIMB.init.namespace_the_window(), window.wimb.data.cookies_third_party = "unknown", cookie_set_script_element_id = "set_cookie", e = (e = void 0 !== e ? e : "//webbrowsertests.com/detect/are-third-party-cookies-enabled-set-cookie") + "?" + WIMB.meta_string(), cookie_set_script_element = document.createElement("script"), cookie_set_script_element.setAttribute("src", e), cookie_set_script_element.setAttribute("id", cookie_set_script_element_id), cookie_set_script_element.setAttribute("async", "async"), body_object = document.getElementsByTagName("body")[0], body_object.appendChild(cookie_set_script_element), null !== document.getElementById(cookie_set_script_element_id)
  415.                 },
  416.                 cookie_has_now_been_set_by_third_party: function(e) {
  417.                     e = (e = void 0 !== e ? e : "//webbrowsertests.com/detect/are-third-party-cookies-enabled-check-cookie") + "?" + WIMB.meta_string(), cookie_check_script_element = document.createElement("script"), cookie_check_script_element.setAttribute("src", e), cookie_set_script_element.setAttribute("id", "check_cookie"), body_object = document.getElementsByTagName("body")[0], body_object.appendChild(cookie_check_script_element)
  418.                 },
  419.                 cookies_test_finished: function(e) {
  420.                     window.wimb.data.cookies_third_party = e ? "enabled" : "disabled"
  421.                 }
  422.             },
  423.             flash: {
  424.                 version_array: function() {
  425.                     playerVersion = [0, 0, 0];
  426.                     var e, t, i = "Shockwave",
  427.                         n = "Flash",
  428.                         r = i + " " + n,
  429.                         a = "application/x-shockwave-flash",
  430.                         l = navigator,
  431.                         s = l.plugins,
  432.                         o = l.mimeTypes;
  433.                     if (s && "object" == typeof s[r]) {
  434.                         if ((e = s[r].description) && (!o || !o[a] || o[a].enabledPlugin)) return e = e.replace(/^.*\s+(\S+\s+\S+$)/, "$1"), playerVersion[0] = parseInt(e.replace(/^(.*)\..*$/, "$1"), 10), playerVersion[1] = parseInt(e.replace(/^.*\.(.*)\s.*$/, "$1"), 10), playerVersion[2] = /[a-zA-Z]/.test(e) ? parseInt(e.replace(/^.*[a-zA-Z]+(.*)$/, "$1"), 10) : 0, playerVersion
  435.                     } else if (window.ActiveXObject) try {
  436.                         if ((t = new ActiveXObject("ShockwaveFlash.ShockwaveFlash")) && (e = t.GetVariable("$version"))) return e = e.split(" ")[1].split(","), playerVersion = [parseInt(e[0], 10), parseInt(e[1], 10), parseInt(e[2], 10)], playerVersion
  437.                     } catch (e) {}
  438.                     return !1
  439.                 },
  440.                 enabled: function() {
  441.                     return !1 !== WIMB.detect.flash.version_array()
  442.                 },
  443.                 version_major: function() {
  444.                     return version_array = WIMB.detect.flash.version_array(), !1 !== version_array && version_array[0]
  445.                 },
  446.                 version_full: function() {
  447.                     return version_array = WIMB.detect.flash.version_array(), !1 !== version_array && version_array[0] + "." + version_array[1] + "." + version_array[2]
  448.                 },
  449.                 version: function() {
  450.                     return version_array = WIMB.detect.flash.version_array(), !1 !== version_array && version_array[0] + "." + version_array[1]
  451.                 }
  452.             },
  453.             java: {
  454.                 _get_version_string: function() {
  455.                     WIMB.init.namespace_the_window(), window.wimb.deployJava || (window.wimb.deployJava = function() {
  456.                         var e = {
  457.                                 core: ["id", "class", "title", "style"],
  458.                                 i18n: ["lang", "dir"],
  459.                                 events: ["onclick", "ondblclick", "onmousedown", "onmouseup", "onmouseover", "onmousemove", "onmouseout", "onkeypress", "onkeydown", "onkeyup"],
  460.                                 applet: ["codebase", "code", "name", "archive", "object", "width", "height", "alt", "align", "hspace", "vspace"],
  461.                                 object: ["classid", "codebase", "codetype", "data", "type", "archive", "declare", "standby", "height", "width", "usemap", "name", "tabindex", "align", "border", "hspace", "vspace"]
  462.                             },
  463.                             o = (e.object.concat(e.core, e.i18n, e.events), e.applet.concat(e.core));
  464.  
  465.                         function d(e) {
  466.                             t.debug && (console.log ? console.log(e) : alert(e))
  467.                         }
  468.  
  469.                         function r(e) {
  470.                             var t = "http://java.com/dt-redirect";
  471.                             return null == e || 0 == e.length ? t : ("&" == e.charAt(0) && (e = e.substring(1, e.length)), t + "?" + e)
  472.                         }
  473.  
  474.                         function u(e, t) {
  475.                             for (var i = e.length, n = 0; n < i; n++)
  476.                                 if (e[n] === t) return !0;
  477.                             return !1
  478.                         }
  479.                         var t = {
  480.                             debug: null,
  481.                             version: "20120801",
  482.                             firefoxJavaVersion: null,
  483.                             myInterval: null,
  484.                             preInstallJREList: null,
  485.                             returnPage: null,
  486.                             brand: null,
  487.                             locale: null,
  488.                             installType: null,
  489.                             EAInstallEnabled: !1,
  490.                             EarlyAccessURL: null,
  491.                             oldMimeType: "application/npruntime-scriptable-plugin;DeploymentToolkit",
  492.                             mimeType: "application/java-deployment-toolkit",
  493.                             launchButtonPNG: function() {
  494.                                 var t = "//java.com/js/webstart.png";
  495.                                 try {
  496.                                     return -1 != document.location.protocol.indexOf("http") ? t : "http:" + t
  497.                                 } catch (e) {
  498.                                     return "http:" + t
  499.                                 }
  500.                             }(),
  501.                             browserName: null,
  502.                             browserName2: null,
  503.                             getJREs: function() {
  504.                                 var e = new Array;
  505.                                 if (this.isPluginInstalled())
  506.                                     for (var t = this.getPlugin().jvms, i = 0; i < t.getLength(); i++) e[i] = t.get(i).version;
  507.                                 else {
  508.                                     var n = this.getBrowser();
  509.                                     "MSIE" == n ? this.testUsingActiveX("1.7.0") ? e[0] = "1.7.0" : this.testUsingActiveX("1.6.0") ? e[0] = "1.6.0" : this.testUsingActiveX("1.5.0") ? e[0] = "1.5.0" : this.testUsingActiveX("1.4.2") ? e[0] = "1.4.2" : this.testForMSVM() && (e[0] = "1.1") : "Netscape Family" == n && (this.getJPIVersionUsingMimeType(), null != this.firefoxJavaVersion ? e[0] = this.firefoxJavaVersion : this.testUsingMimeTypes("1.7") ? e[0] = "1.7.0" : this.testUsingMimeTypes("1.6") ? e[0] = "1.6.0" : this.testUsingMimeTypes("1.5") ? e[0] = "1.5.0" : this.testUsingMimeTypes("1.4.2") ? e[0] = "1.4.2" : "Safari" == this.browserName2 && (this.testUsingPluginsArray("1.7.0") ? e[0] = "1.7.0" : this.testUsingPluginsArray("1.6") ? e[0] = "1.6.0" : this.testUsingPluginsArray("1.5") ? e[0] = "1.5.0" : this.testUsingPluginsArray("1.4.2") && (e[0] = "1.4.2")))
  510.                                 }
  511.                                 if (this.debug)
  512.                                     for (i = 0; i < e.length; ++i) d("[getJREs()] We claim to have detected Java SE " + e[i]);
  513.                                 return e
  514.                             },
  515.                             installJRE: function(e, t) {
  516.                                 if (this.isPluginInstalled() && this.isAutoInstallEnabled(e)) {
  517.                                     var i = !1;
  518.                                     return (i = this.isCallbackSupported() ? this.getPlugin().installJRE(e, t) : this.getPlugin().installJRE(e)) && (this.refresh(), null != this.returnPage && (document.location = this.returnPage)), i
  519.                                 }
  520.                                 return this.installLatestJRE()
  521.                             },
  522.                             isAutoInstallEnabled: function(e) {
  523.                                 return !!this.isPluginInstalled() && (void 0 === e && (e = null), t = e, "MSIE" != deployJava.browserName || !!deployJava.compareVersionToPattern(deployJava.getPlugin().version, ["10", "0", "0"], !1, !0) || null != t && ! function(e, t) {
  524.                                     if (null == e || 0 == e.length) return !0;
  525.                                     var i = e.charAt(e.length - 1);
  526.                                     if ("+" != i && "*" != i && -1 != e.indexOf("_") && "_" != i && (e += "*", i = "*"), 0 < (e = e.substring(0, e.length - 1)).length) {
  527.                                         var n = e.charAt(e.length - 1);
  528.                                         "." != n && "_" != n || (e = e.substring(0, e.length - 1))
  529.                                     }
  530.                                     return "*" == i ? 0 == t.indexOf(e) : "+" == i && e <= t
  531.                                 }("1.6.0_33+", t));
  532.                                 var t
  533.                             },
  534.                             isCallbackSupported: function() {
  535.                                 return this.isPluginInstalled() && this.compareVersionToPattern(this.getPlugin().version, ["10", "2", "0"], !1, !0)
  536.                             },
  537.                             installLatestJRE: function(e) {
  538.                                 if (this.isPluginInstalled() && this.isAutoInstallEnabled()) {
  539.                                     var t = !1;
  540.                                     return (t = this.isCallbackSupported() ? this.getPlugin().installLatestJRE(e) : this.getPlugin().installLatestJRE()) && (this.refresh(), null != this.returnPage && (document.location = this.returnPage)), t
  541.                                 }
  542.                                 var i = this.getBrowser(),
  543.                                     n = navigator.platform.toLowerCase();
  544.                                 return "true" == this.EAInstallEnabled && -1 != n.indexOf("win") && null != this.EarlyAccessURL ? (this.preInstallJREList = this.getJREs(), null != this.returnPage && (this.myInterval = setInterval("deployJava.poll()", 3e3)), location.href = this.EarlyAccessURL, !1) : "MSIE" == i ? this.IEInstall() : "Netscape Family" == i && -1 != n.indexOf("win32") ? this.FFInstall() : (location.href = r((null != this.returnPage ? "&returnPage=" + this.returnPage : "") + (null != this.locale ? "&locale=" + this.locale : "") + (null != this.brand ? "&brand=" + this.brand : "")), !1)
  545.                             },
  546.                             runApplet: function(e, t, i) {
  547.                                 "undefined" != i && null != i || (i = "1.1");
  548.                                 var n = i.match("^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$");
  549.                                 (null == this.returnPage && (this.returnPage = document.location), null != n) ? "?" != this.getBrowser() ? this.versionCheck(i + "+") ? this.writeAppletTag(e, t) : this.installJRE(i + "+") && (this.refresh(), location.href = document.location, this.writeAppletTag(e, t)) : this.writeAppletTag(e, t): d("[runApplet()] Invalid minimumVersion argument to runApplet():" + i)
  550.                             },
  551.                             writeAppletTag: function(e, t) {
  552.                                 var i = "<applet ",
  553.                                     n = "",
  554.                                     r = !0;
  555.                                 for (var a in null != t && "object" == typeof t || (t = new Object), e) u(o, a.toLowerCase()) ? (i += " " + a + '="' + e[a] + '"', "code" == a && (r = !1)) : t[a] = e[a];
  556.                                 var l = !1;
  557.                                 for (var s in t) "codebase_lookup" == s && (l = !0), "object" != s && "java_object" != s && "java_code" != s || (r = !1), n += '<param name="' + s + '" value="' + t[s] + '"/>';
  558.                                 l || (n += '<param name="codebase_lookup" value="false"/>'), r && (i += ' code="dummy"'), i += ">", document.getElementsByTagName("body")[0].insertAdjacentHTML("afterbegin", i + "\n" + n + "\n</applet>")
  559.                             },
  560.                             versionCheck: function(e) {
  561.                                 var t = 0,
  562.                                     i = e.match("^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?(\\*|\\+)?$");
  563.                                 if (null != i) {
  564.                                     for (var n = !1, r = !1, a = new Array, l = 1; l < i.length; ++l) "string" == typeof i[l] && "" != i[l] && (a[t] = i[l], t++);
  565.                                     "+" == a[a.length - 1] ? (n = !(r = !0), a.length--) : "*" == a[a.length - 1] ? (n = !(r = !1), a.length--) : a.length < 4 && (n = !(r = !1));
  566.                                     var s = this.getJREs();
  567.                                     for (l = 0; l < s.length; ++l)
  568.                                         if (this.compareVersionToPattern(s[l], a, n, r)) return !0;
  569.                                     return !1
  570.                                 }
  571.                                 var o = "Invalid versionPattern passed to versionCheck: " + e;
  572.                                 return d("[versionCheck()] " + o), alert(o), !1
  573.                             },
  574.                             isWebStartInstalled: function(e) {
  575.                                 if ("?" == this.getBrowser()) return !0;
  576.                                 "undefined" != e && null != e || (e = "1.4.2");
  577.                                 var t = !1;
  578.                                 return null != e.match("^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$") ? t = this.versionCheck(e + "+") : (d("[isWebStartInstaller()] Invalid minimumVersion argument to isWebStartInstalled(): " + e), t = this.versionCheck("1.4.2+")), t
  579.                             },
  580.                             getJPIVersionUsingMimeType: function() {
  581.                                 for (var e = 0; e < navigator.mimeTypes.length; ++e) {
  582.                                     var t = navigator.mimeTypes[e].type.match(/^application\/x-java-applet;jpi-version=(.*)$/);
  583.                                     if (null != t && (this.firefoxJavaVersion = t[1], "Opera" != this.browserName2)) break
  584.                                 }
  585.                             },
  586.                             launchWebStartApplication: function(e) {
  587.                                 navigator.userAgent.toLowerCase();
  588.                                 if (this.getJPIVersionUsingMimeType(), 0 == this.isWebStartInstalled("1.7.0") && (0 == this.installJRE("1.7.0+") || 0 == this.isWebStartInstalled("1.7.0"))) return !1;
  589.                                 var t = null;
  590.                                 document.documentURI && (t = document.documentURI), null == t && (t = document.URL);
  591.                                 var i, n = this.getBrowser();
  592.                                 if ("MSIE" == n ? i = '<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" width="0" height="0"><PARAM name="launchjnlp" value="' + e + '"><PARAM name="docbase" value="' + t + '"></object>' : "Netscape Family" == n && (i = '<embed type="application/x-java-applet;jpi-version=' + this.firefoxJavaVersion + '" width="0" height="0" launchjnlp="' + e + '"docbase="' + t + '" />'), "undefined" == document.body || null == document.body) document.getElementsByTagName("body")[0].insertAdjacentHTML("afterbegin", i), document.location = t;
  593.                                 else {
  594.                                     var r = document.createElement("div");
  595.                                     r.id = "div1", r.style.position = "relative", r.style.left = "-10000px", r.style.margin = "0px auto", r.className = "dynamicDiv", r.innerHTML = i, document.body.appendChild(r)
  596.                                 }
  597.                             },
  598.                             createWebStartLaunchButtonEx: function(e, t) {
  599.                                 null == this.returnPage && (this.returnPage = e);
  600.                                 var i = "javascript:deployJava.launchWebStartApplication('" + e + "');";
  601.                                 document.getElementsByTagName("body")[0].insertAdjacentHTML("afterbegin", '<a href="' + i + '" onMouseOver="window.status=\'\'; return true;"><img src="' + this.launchButtonPNG + '" border="0" /></a>')
  602.                             },
  603.                             createWebStartLaunchButton: function(e, t) {
  604.                                 null == this.returnPage && (this.returnPage = e);
  605.                                 var i = "javascript:if (!deployJava.isWebStartInstalled(&quot;" + t + "&quot;)) {if (deployJava.installLatestJRE()) {if (deployJava.launch(&quot;" + e + "&quot;)) {}}} else {if (deployJava.launch(&quot;" + e + "&quot;)) {}}";
  606.                                 document.getElementsByTagName("body")[0].insertAdjacentHTML("afterbegin", '<a href="' + i + '" onMouseOver="window.status=\'\'; return true;"><img src="' + this.launchButtonPNG + '" border="0" /></a>')
  607.                             },
  608.                             launch: function(e) {
  609.                                 return document.location = e, !0
  610.                             },
  611.                             isPluginInstalled: function() {
  612.                                 var e = this.getPlugin();
  613.                                 return !(!e || !e.jvms)
  614.                             },
  615.                             isAutoUpdateEnabled: function() {
  616.                                 return !!this.isPluginInstalled() && this.getPlugin().isAutoUpdateEnabled()
  617.                             },
  618.                             setAutoUpdateEnabled: function() {
  619.                                 return !!this.isPluginInstalled() && this.getPlugin().setAutoUpdateEnabled()
  620.                             },
  621.                             setInstallerType: function(e) {
  622.                                 return this.installType = e, !!this.isPluginInstalled() && this.getPlugin().setInstallerType(e)
  623.                             },
  624.                             setAdditionalPackages: function(e) {
  625.                                 return !!this.isPluginInstalled() && this.getPlugin().setAdditionalPackages(e)
  626.                             },
  627.                             setEarlyAccess: function(e) {
  628.                                 this.EAInstallEnabled = e
  629.                             },
  630.                             isPlugin2: function() {
  631.                                 if (this.isPluginInstalled() && this.versionCheck("1.6.0_10+")) try {
  632.                                     return this.getPlugin().isPlugin2()
  633.                                 } catch (e) {}
  634.                                 return !1
  635.                             },
  636.                             allowPlugin: function() {
  637.                                 return this.getBrowser(), "Safari" != this.browserName2 && "Opera" != this.browserName2
  638.                             },
  639.                             getPlugin: function() {
  640.                                 this.refresh();
  641.                                 var e = null;
  642.                                 return this.allowPlugin() && (e = document.getElementById("deployJavaPlugin")), e
  643.                             },
  644.                             compareVersionToPattern: function(e, t, i, n) {
  645.                                 if (null == e || null == t) return !1;
  646.                                 var r = e.match("^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$");
  647.                                 if (null != r) {
  648.                                     for (var a = 0, l = new Array, s = 1; s < r.length; ++s) "string" == typeof r[s] && "" != r[s] && (l[a] = r[s], a++);
  649.                                     var o = Math.min(l.length, t.length);
  650.                                     if (n) {
  651.                                         for (s = 0; s < o; ++s) {
  652.                                             if (l[s] < t[s]) return !1;
  653.                                             if (l[s] > t[s]) return !0
  654.                                         }
  655.                                         return !0
  656.                                     }
  657.                                     for (s = 0; s < o; ++s)
  658.                                         if (l[s] != t[s]) return !1;
  659.                                     return !!i || l.length == t.length
  660.                                 }
  661.                                 return !1
  662.                             },
  663.                             getBrowser: function() {
  664.                                 if (null == this.browserName) {
  665.                                     var e = navigator.userAgent.toLowerCase();
  666.                                     d("[getBrowser()] navigator.userAgent.toLowerCase() -> " + e), -1 != e.indexOf("msie") && -1 == e.indexOf("opera") ? (this.browserName = "MSIE", this.browserName2 = "MSIE") : -1 != e.indexOf("trident") || -1 != e.indexOf("Trident") ? (this.browserName = "MSIE", this.browserName2 = "MSIE") : -1 != e.indexOf("iphone") ? (this.browserName = "Netscape Family", this.browserName2 = "iPhone") : -1 != e.indexOf("firefox") && -1 == e.indexOf("opera") ? (this.browserName = "Netscape Family", this.browserName2 = "Firefox") : -1 != e.indexOf("chrome") ? (this.browserName = "Netscape Family", this.browserName2 = "Chrome") : -1 != e.indexOf("safari") ? (this.browserName = "Netscape Family", this.browserName2 = "Safari") : -1 != e.indexOf("mozilla") && -1 == e.indexOf("opera") ? (this.browserName = "Netscape Family", this.browserName2 = "Other") : -1 != e.indexOf("opera") ? (this.browserName = "Netscape Family", this.browserName2 = "Opera") : (this.browserName = "?", this.browserName2 = "unknown"), d("[getBrowser()] Detected browser name:" + this.browserName + ", " + this.browserName2)
  667.                                 }
  668.                                 return this.browserName
  669.                             },
  670.                             testUsingActiveX: function(e) {
  671.                                 var t = "JavaWebStart.isInstalled." + e + ".0";
  672.                                 if ("undefined" == typeof ActiveXObject || !ActiveXObject) return d("[testUsingActiveX()] Browser claims to be IE, but no ActiveXObject object?"), !1;
  673.                                 try {
  674.                                     return null != new ActiveXObject(t)
  675.                                 } catch (e) {
  676.                                     return !1
  677.                                 }
  678.                             },
  679.                             testForMSVM: function() {
  680.                                 if ("undefined" != typeof oClientCaps) {
  681.                                     var e = oClientCaps.getComponentVersion("{08B0E5C0-4FCB-11CF-AAA5-00401C608500}", "ComponentID");
  682.                                     return "" != e && "5,0,5000,0" != e
  683.                                 }
  684.                                 return !1
  685.                             },
  686.                             testUsingMimeTypes: function(e) {
  687.                                 if (!navigator.mimeTypes) return d("[testUsingMimeTypes()] Browser claims to be Netscape family, but no mimeTypes[] array?"), !1;
  688.                                 for (var t = 0; t < navigator.mimeTypes.length; ++t) {
  689.                                     s = navigator.mimeTypes[t].type;
  690.                                     var i = s.match(/^application\/x-java-applet\x3Bversion=(1\.8|1\.7|1\.6|1\.5|1\.4\.2)$/);
  691.                                     if (null != i && this.compareVersions(i[1], e)) return !0
  692.                                 }
  693.                                 return !1
  694.                             },
  695.                             testUsingPluginsArray: function(e) {
  696.                                 if (!navigator.plugins || !navigator.plugins.length) return !1;
  697.                                 for (var t = navigator.platform.toLowerCase(), i = 0; i < navigator.plugins.length; ++i)
  698.                                     if (s = navigator.plugins[i].description, -1 != s.search(/^Java Switchable Plug-in (Cocoa)/)) {
  699.                                         if (this.compareVersions("1.5.0", e)) return !0
  700.                                     } else if (-1 != s.search(/^Java/) && -1 != t.indexOf("win") && (this.compareVersions("1.5.0", e) || this.compareVersions("1.6.0", e))) return !0;
  701.                                 return !1
  702.                             },
  703.                             IEInstall: function() {
  704.                                 return location.href = r((null != this.returnPage ? "&returnPage=" + this.returnPage : "") + (null != this.locale ? "&locale=" + this.locale : "") + (null != this.brand ? "&brand=" + this.brand : "")), !1
  705.                             },
  706.                             done: function(e, t) {},
  707.                             FFInstall: function() {
  708.                                 return location.href = r((null != this.returnPage ? "&returnPage=" + this.returnPage : "") + (null != this.locale ? "&locale=" + this.locale : "") + (null != this.brand ? "&brand=" + this.brand : "") + (null != this.installType ? "&type=" + this.installType : "")), !1
  709.                             },
  710.                             compareVersions: function(e, t) {
  711.                                 for (var i = e.split("."), n = t.split("."), r = 0; r < i.length; ++r) i[r] = Number(i[r]);
  712.                                 for (r = 0; r < n.length; ++r) n[r] = Number(n[r]);
  713.                                 return 2 == i.length && (i[2] = 0), i[0] > n[0] || !(i[0] < n[0]) && (i[1] > n[1] || !(i[1] < n[1]) && (i[2] > n[2] || !(i[2] < n[2])))
  714.                             },
  715.                             enableAlerts: function() {
  716.                                 this.browserName = null, this.debug = !0
  717.                             },
  718.                             poll: function() {
  719.                                 this.refresh();
  720.                                 var e = this.getJREs();
  721.                                 0 == this.preInstallJREList.length && 0 != e.length && (clearInterval(this.myInterval), null != this.returnPage && (location.href = this.returnPage)), 0 != this.preInstallJREList.length && 0 != e.length && this.preInstallJREList[0] != e[0] && (clearInterval(this.myInterval), null != this.returnPage && (location.href = this.returnPage))
  722.                             },
  723.                             writePluginTag: function() {
  724.                                 var e = this.getBrowser();
  725.                                 "MSIE" == e ? document.getElementsByTagName("body")[0].insertAdjacentHTML("afterbegin", '<object classid="clsid:CAFEEFAC-DEC7-0000-0001-ABCDEFFEDCBA" id="deployJavaPlugin" width="0" height="0"></object>') : "Netscape Family" == e && this.allowPlugin() && this.writeEmbedTag()
  726.                             },
  727.                             refresh: function() {
  728.                                 (navigator.plugins.refresh(!1), "Netscape Family" == this.getBrowser() && this.allowPlugin()) && (null == document.getElementById("deployJavaPlugin") && this.writeEmbedTag())
  729.                             },
  730.                             writeEmbedTag: function() {
  731.                                 var e = !1;
  732.                                 if (null != navigator.mimeTypes) {
  733.                                     for (var t = 0; t < navigator.mimeTypes.length; t++) navigator.mimeTypes[t].type == this.mimeType && navigator.mimeTypes[t].enabledPlugin && (document.getElementsByTagName("body")[0].insertAdjacentHTML("afterbegin", '<embed id="deployJavaPlugin" type="' + this.mimeType + '" hidden="true" />'), e = !0);
  734.                                     if (!e)
  735.                                         for (t = 0; t < navigator.mimeTypes.length; t++) navigator.mimeTypes[t].type == this.oldMimeType && navigator.mimeTypes[t].enabledPlugin && document.getElementsByTagName("body")[0].insertAdjacentHTML("afterbegin", '<embed id="deployJavaPlugin" type="' + this.oldMimeType + '" hidden="true" />')
  736.                                 }
  737.                             }
  738.                         };
  739.                         if (t.writePluginTag(), null == t.locale) {
  740.                             var i = null;
  741.                             if (null == i) try {
  742.                                 i = navigator.userLanguage
  743.                             } catch (e) {}
  744.                             if (null == i) try {
  745.                                 i = navigator.systemLanguage
  746.                             } catch (e) {}
  747.                             if (null == i) try {
  748.                                 i = navigator.language
  749.                             } catch (e) {}
  750.                             null != i && (i.replace("-", "_"), t.locale = i)
  751.                         }
  752.                         return t
  753.                     }());
  754.                     var e = window.wimb.deployJava.getJREs();
  755.                     return !!e[0] && e[0]
  756.                 },
  757.                 enabled: function() {
  758.                     return !1 !== WIMB.detect.java._get_version_string()
  759.                 },
  760.                 version_array: function() {
  761.                     var e = WIMB.detect.java._get_version_string();
  762.                     return !1 !== e && (version_array = WIMB_UTIL.decode_java_version(e), !1 !== version_array && version_array)
  763.                 },
  764.                 version: function() {
  765.                     if (java_version_array = WIMB.detect.java.version_array(), !1 !== java_version_array) {
  766.                         for (version_string = "", vai = 0; vai < java_version_array.version.length && vai <= 4; vai++) version_string = version_string + java_version_array.version[vai] + ".";
  767.                         return version_string = version_string.slice(0, -1), java_version_array.update && (version_string = version_string + " update " + java_version_array.update), version_string
  768.                     }
  769.                     return !1
  770.                 }
  771.             },
  772.             popup_windows: {
  773.                 allowed: function(e, t, i) {
  774.                     return e = void 0 !== e ? e : "/", t = void 0 !== t ? parseInt(t) : 1, i = void 0 !== i ? parseInt(i) : 1, popup_test_params = "width=" + t + ",height=" + i + ",left=0,top=0,location=no,toolbar=no,menubar=no,scrollbars=no,status=no,resizable=no,directories=no", popup_test_window = window.open(e, "wimb_popup_test", popup_test_params), !(!popup_test_window || popup_test_window.closed || void 0 === popup_test_window.closed || 0 == parseInt(popup_test_window.outerHeight) || 0 == parseInt(popup_test_window.outerWidth))
  775.                 }
  776.             },
  777.             browser_window_size: {
  778.                 width: function() {
  779.                     return void 0 !== window.outerWidth ? parseInt(window.outerWidth) : 0
  780.                 },
  781.                 height: function() {
  782.                     return void 0 !== window.outerHeight ? parseInt(window.outerHeight) : 0
  783.                 }
  784.             },
  785.             browser_viewport_size: {
  786.                 width: function() {
  787.                     var e = document.documentElement,
  788.                         t = document.getElementsByTagName("body")[0],
  789.                         i = window.innerWidth || e.clientWidth || t.clientWidth;
  790.                     return parseInt(i)
  791.                 },
  792.                 height: function() {
  793.                     var e = document.documentElement,
  794.                         t = document.getElementsByTagName("body")[0],
  795.                         i = window.innerHeight || e.clientHeight || t.clientHeight;
  796.                     return parseInt(i)
  797.                 }
  798.             },
  799.             computer_screen: {
  800.                 width: function() {
  801.                     return void 0 !== window.screen.width ? parseInt(WIMB.detect.computer_screen.device_pixel_ratio() * parseInt(window.screen.width)) : 0
  802.                 },
  803.                 height: function() {
  804.                     return void 0 !== window.screen.height ? parseInt(WIMB.detect.computer_screen.device_pixel_ratio() * parseInt(window.screen.height)) : 0
  805.                 },
  806.                 color_depth: function() {
  807.                     return void 0 !== window.screen.colorDepth ? parseInt(window.screen.colorDepth) : 0
  808.                 },
  809.                 device_pixel_ratio: function() {
  810.                     return "undefined" !== window.devicePixelRatio ? parseInt(window.devicePixelRatio) : 1
  811.                 }
  812.             },
  813.             local_ipv4_addresses: {
  814.                 retrieve: function() {
  815.                     if (void 0 !== window.wimb.ipv4_addresses) return window.wimb.ipv4_addresses
  816.                 },
  817.                 trigger_detection: function() {
  818.                     WIMB.init.namespace_the_window(), window.wimb.ipv4_addresses || (window.wimb.ipv4_addresses = []);
  819.                     var e = window.RTCPeerConnection || window.webkitRTCPeerConnection || window.mozRTCPeerConnection;
  820.                     return void 0 !== e && (e && function() {
  821.                         var t = function(e) {
  822.                                 if ("" !== ipv4_address && "0.0.0.0" !== ipv4_address) {
  823.                                     for (local_ipv4_address_key in window.wimb.ipv4_addresses)
  824.                                         if (window.wimb.ipv4_addresses[local_ipv4_address_key] == ipv4_address) return !0;
  825.                                     window.wimb.ipv4_addresses.push(ipv4_address)
  826.                                 }
  827.                             },
  828.                             i = new e({
  829.                                 iceServers: []
  830.                             });
  831.                         try {
  832.                             i.createDataChannel("", {
  833.                                 reliable: !1
  834.                             })
  835.                         } catch (e) {}
  836.  
  837.                         function n(e) {
  838.                             var n = "";
  839.                             return e.split("\r\n").forEach(function(e) {
  840.                                 if (~e.indexOf("a=candidate")) {
  841.                                     var t = (i = e.split(" "))[4];
  842.                                     "host" === i[7] && (n = t)
  843.                                 } else if (~e.indexOf("c=")) {
  844.                                     var i;
  845.                                     t = (i = e.split(" "))[2];
  846.                                     n = t
  847.                                 }
  848.                             }), n
  849.                         }
  850.                         i.onicecandidate = function(e) {
  851.                             e.candidate && (ipv4_address = n("a=" + e.candidate.candidate), t(ipv4_address))
  852.                         }, i.createOffer(function(e) {
  853.                             ipv4_address = n(e.sdp), t(ipv4_address), i.setLocalDescription(e)
  854.                         }, function(e) {})
  855.                     }(), !0)
  856.                 }
  857.             },
  858.             gmt_offset: function() {
  859.                 z = function(e) {
  860.                     return e < 10 ? "0" + e : e
  861.                 };
  862.                 var e = new Date,
  863.                     t = 0 < e.getTimezoneOffset() ? "-" : "+",
  864.                     i = Math.abs(e.getTimezoneOffset());
  865.                 return t + z(Math.floor(i / 60)) + ":" + z(i % 60)
  866.             },
  867.             addons: {
  868.                 get_all_names: function() {
  869.                     return addons = [], WIMB.detect.addons.adblock.enabled() && addons.push({
  870.                         code: "adblocker",
  871.                         name: "Ad blocker",
  872.                         version: null
  873.                     }), WIMB.detect.addons.silverlight.enabled() && addons.push({
  874.                         code: "silverlight",
  875.                         name: "Microsoft Silverlight",
  876.                         version: WIMB.detect.addons.silverlight.version()
  877.                     }), addons
  878.                 },
  879.                 adblock: {
  880.                     ad_div_id: "ads-advert-banner",
  881.                     _init: function() {
  882.                         var e = document.createElement("div");
  883.                         e.id = WIMB.detect.addons.adblock.ad_div_id, null !== document.body && document.body.appendChild(e)
  884.                     },
  885.                     enabled: function() {
  886.                         return WIMB.detect.addons.adblock._init(), advert_id = document.getElementById(WIMB.detect.addons.adblock.ad_div_id), "none" == WIMB_UTIL.get_style(advert_id, "display")
  887.                     }
  888.                 },
  889.                 silverlight: {
  890.                     _init: function() {
  891.                         window.Silverlight || (window.Silverlight = {}), Silverlight._silverlightCount = 0, Silverlight.__onSilverlightInstalledCalled = !1, Silverlight.fwlinkRoot = "http://go2.microsoft.com/fwlink/?LinkID=", Silverlight.__installationEventFired = !1, Silverlight.onGetSilverlight = null, Silverlight.onSilverlightInstalled = function() {
  892.                             window.location.reload(!1)
  893.                         }, Silverlight.isInstalled = function(e) {
  894.                             null == e && (e = null);
  895.                             var t = !1;
  896.                             try {
  897.                                 var i = null,
  898.                                     n = !1;
  899.                                 if (window.ActiveXObject) try {
  900.                                     i = new ActiveXObject("AgControl.AgControl"), null === e ? t = !0 : i.IsVersionSupported(e) && (t = !0), i = null
  901.                                 } catch (e) {
  902.                                     n = !0
  903.                                 } else n = !0;
  904.                                 if (n) {
  905.                                     var r = navigator.plugins["Silverlight Plug-In"];
  906.                                     if (r)
  907.                                         if (null === e) t = !0;
  908.                                         else {
  909.                                             var a = r.description;
  910.                                             "1.0.30226.2" === a && (a = "2.0.30226.2");
  911.                                             for (var l = a.split("."); 3 < l.length;) l.pop();
  912.                                             for (; l.length < 4;) l.push(0);
  913.                                             for (var s = e.split("."); 4 < s.length;) s.pop();
  914.                                             for (var o, d, u = 0; o = parseInt(s[u]), d = parseInt(l[u]), ++u < s.length && o === d;);
  915.                                             o <= d && !isNaN(o) && (t = !0)
  916.                                         }
  917.                                 }
  918.                             } catch (e) {
  919.                                 t = !1
  920.                             }
  921.                             return t
  922.                         }, Silverlight.WaitForInstallCompletion = function() {
  923.                             if (!Silverlight.isBrowserRestartRequired && Silverlight.onSilverlightInstalled) {
  924.                                 try {
  925.                                     navigator.plugins.refresh()
  926.                                 } catch (e) {}
  927.                                 Silverlight.isInstalled(null) && !Silverlight.__onSilverlightInstalledCalled ? (Silverlight.onSilverlightInstalled(), Silverlight.__onSilverlightInstalledCalled = !0) : setTimeout(Silverlight.WaitForInstallCompletion, 3e3)
  928.                             }
  929.                         }, Silverlight.__startup = function() {
  930.                             if (navigator.plugins.refresh(), Silverlight.isBrowserRestartRequired = Silverlight.isInstalled(null), Silverlight.isBrowserRestartRequired) {
  931.                                 if (window.navigator.mimeTypes) {
  932.                                     var e = navigator.mimeTypes["application/x-silverlight-2"],
  933.                                         t = navigator.mimeTypes["application/x-silverlight-2-b2"],
  934.                                         i = navigator.mimeTypes["application/x-silverlight-2-b1"],
  935.                                         n = i;
  936.                                     t && (n = t), e || !i && !t ? e && n && e.enabledPlugin && n.enabledPlugin && e.enabledPlugin.description != n.enabledPlugin.description && (Silverlight.__installationEventFired || (Silverlight.onRestartRequired(), Silverlight.__installationEventFired = !0)) : Silverlight.__installationEventFired || (Silverlight.onUpgradeRequired(), Silverlight.__installationEventFired = !0)
  937.                                 }
  938.                             } else Silverlight.WaitForInstallCompletion(), Silverlight.__installationEventFired || (Silverlight.onInstallRequired(), Silverlight.__installationEventFired = !0);
  939.                             Silverlight.disableAutoStartup || (window.removeEventListener ? window.removeEventListener("load", Silverlight.__startup, !1) : window.detachEvent("onload", Silverlight.__startup))
  940.                         }, Silverlight.disableAutoStartup || (window.addEventListener ? window.addEventListener("load", Silverlight.__startup, !1) : window.attachEvent("onload", Silverlight.__startup)), Silverlight.createObject = function(e, t, i, n, r, a, l) {
  941.                             var s = {},
  942.                                 o = n,
  943.                                 d = r;
  944.                             if (s.version = o.version, o.source = e, s.alt = o.alt, a && (o.initParams = a), o.isWindowless && !o.windowless && (o.windowless = o.isWindowless), o.framerate && !o.maxFramerate && (o.maxFramerate = o.framerate), i && !o.id && (o.id = i), delete o.ignoreBrowserVer, delete o.inplaceInstallPrompt, delete o.version, delete o.isWindowless, delete o.framerate, delete o.data, delete o.src, delete o.alt, Silverlight.isInstalled(s.version)) {
  945.                                 for (var u in d)
  946.                                     if (d[u]) {
  947.                                         if ("onLoad" == u && "function" == typeof d[u] && 1 != d[u].length) {
  948.                                             var c = d[u];
  949.                                             d[u] = function(e) {
  950.                                                 return c(document.getElementById(i), l, e)
  951.                                             }
  952.                                         }
  953.                                         var v = Silverlight.__getHandlerName(d[u]);
  954.                                         if (null == v) throw "typeof events." + u + " must be 'function' or 'string'";
  955.                                         o[u] = v, d[u] = null
  956.                                     } slPluginHTML = Silverlight.buildHTML(o)
  957.                             } else slPluginHTML = Silverlight.buildPromptHTML(s);
  958.                             if (!t) return slPluginHTML;
  959.                             t.innerHTML = slPluginHTML
  960.                         }, Silverlight.buildHTML = function(e) {
  961.                             var t = [];
  962.                             for (var i in t.push('<object type="application/x-silverlight" data="data:application/x-silverlight,"'), null != e.id && t.push(' id="' + Silverlight.HtmlAttributeEncode(e.id) + '"'), null != e.width && t.push(' width="' + e.width + '"'), null != e.height && t.push(' height="' + e.height + '"'), t.push(" >"), delete e.id, delete e.width, delete e.height, e) e[i] && t.push('<param name="' + Silverlight.HtmlAttributeEncode(i) + '" value="' + Silverlight.HtmlAttributeEncode(e[i]) + '" />');
  963.                             return t.push("</object>"), t.join("")
  964.                         }, Silverlight.createObjectEx = function(e) {
  965.                             var t = e,
  966.                                 i = Silverlight.createObject(t.source, t.parentElement, t.id, t.properties, t.events, t.initParams, t.context);
  967.                             if (null == t.parentElement) return i
  968.                         }, Silverlight.buildPromptHTML = function(e) {
  969.                             var t = "",
  970.                                 i = Silverlight.fwlinkRoot,
  971.                                 n = e.version;
  972.                             return e.alt ? t = e.alt : (n || (n = ""), t = (t = (t = "<a href='javascript:Silverlight.getSilverlight(\"{1}\");' style='text-decoration: none;'><img src='{2}' alt='Get Microsoft Silverlight' style='border-style: none'/></a>").replace("{1}", n)).replace("{2}", i + "161376")), t
  973.                         }, Silverlight.getSilverlight = function(e) {
  974.                             Silverlight.onGetSilverlight && Silverlight.onGetSilverlight();
  975.                             var t = "",
  976.                                 i = String(e).split(".");
  977.                             if (1 < i.length) {
  978.                                 var n = parseInt(i[0]);
  979.                                 t = isNaN(n) || n < 2 ? "1.0" : i[0] + "." + i[1]
  980.                             }
  981.                             var r = "";
  982.                             t.match(/^\d+\056\d+$/) && (r = "&v=" + t), Silverlight.followFWLink("149156" + r)
  983.                         }, Silverlight.followFWLink = function(e) {
  984.                             top.location = Silverlight.fwlinkRoot + String(e)
  985.                         }, Silverlight.HtmlAttributeEncode = function(e) {
  986.                             var t, i = "";
  987.                             if (null == e) return null;
  988.                             for (var n = 0; n < e.length; n++) 96 < (t = e.charCodeAt(n)) && t < 123 || 64 < t && t < 91 || 43 < t && t < 58 && 47 != t || 95 == t ? i += String.fromCharCode(t) : i = i + "&#" + t + ";";
  989.                             return i
  990.                         }, Silverlight.default_error_handler = function(e, t) {
  991.                             var i = t.ErrorType,
  992.                                 n = "\nSilverlight error message     \n";
  993.                             n += "ErrorCode: " + t.ErrorCode + "\n", n += "ErrorType: " + i + "       \n", n += "Message: " + t.ErrorMessage + "     \n", "ParserError" == i ? (n += "XamlFile: " + t.xamlFile + "     \n", n += "Line: " + t.lineNumber + "     \n", n += "Position: " + t.charPosition + "     \n") : "RuntimeError" == i && (0 != t.lineNumber && (n += "Line: " + t.lineNumber + "     \n", n += "Position: " + t.charPosition + "     \n"), n += "MethodName: " + t.methodName + "     \n"), alert(n)
  994.                         }, Silverlight.__cleanup = function() {
  995.                             for (var e = Silverlight._silverlightCount - 1; 0 <= e; e--) window["__slEvent" + e] = null;
  996.                             Silverlight._silverlightCount = 0, window.removeEventListener ? window.removeEventListener("unload", Silverlight.__cleanup, !1) : window.detachEvent("onunload", Silverlight.__cleanup)
  997.                         }, Silverlight.__getHandlerName = function(e) {
  998.                             var t = "";
  999.                             if ("string" == typeof e) t = e;
  1000.                             else if ("function" == typeof e) {
  1001.                                 0 == Silverlight._silverlightCount && (window.addEventListener ? window.addEventListener("unload", Silverlight.__cleanup, !1) : window.attachEvent("onunload", Silverlight.__cleanup)), t = "__slEvent" + Silverlight._silverlightCount++, window[t] = e
  1002.                             } else t = null;
  1003.                             return t
  1004.                         }, Silverlight.onRequiredVersionAvailable = function() {}, Silverlight.onRestartRequired = function() {}, Silverlight.onUpgradeRequired = function() {}, Silverlight.onInstallRequired = function() {}, Silverlight.IsVersionAvailableOnError = function(e, t) {
  1005.                             var i = !1;
  1006.                             try {
  1007.                                 8001 != t.ErrorCode || Silverlight.__installationEventFired ? 8002 != t.ErrorCode || Silverlight.__installationEventFired ? 5014 == t.ErrorCode || 2106 == t.ErrorCode ? Silverlight.__verifySilverlight2UpgradeSuccess(t.getHost()) && (i = !0) : i = !0 : (Silverlight.onRestartRequired(), Silverlight.__installationEventFired = !0) : (Silverlight.onUpgradeRequired(), Silverlight.__installationEventFired = !0)
  1008.                             } catch (e) {}
  1009.                             return i
  1010.                         }, Silverlight.IsVersionAvailableOnLoad = function(e) {
  1011.                             var t = !1;
  1012.                             try {
  1013.                                 Silverlight.__verifySilverlight2UpgradeSuccess(e.getHost()) && (t = !0)
  1014.                             } catch (e) {}
  1015.                             return t
  1016.                         }, Silverlight.__verifySilverlight2UpgradeSuccess = function(e) {
  1017.                             var t = !1,
  1018.                                 i = "4.0.50401",
  1019.                                 n = null;
  1020.                             try {
  1021.                                 e.IsVersionSupported(i + ".99") ? (n = Silverlight.onRequiredVersionAvailable, t = !0) : n = e.IsVersionSupported(i + ".0") ? Silverlight.onRestartRequired : Silverlight.onUpgradeRequired, n && !Silverlight.__installationEventFired && (n(), Silverlight.__installationEventFired = !0)
  1022.                             } catch (e) {}
  1023.                             return t
  1024.                         }
  1025.                     },
  1026.                     version: function() {
  1027.                         if (WIMB.detect.addons.silverlight._init(), !Silverlight.isInstalled("1.0")) return !1;
  1028.                         for (var e = 1; e <= 5; e++)
  1029.                             for (var t = 0; t < 10; t++)
  1030.                                 if (!0 === Silverlight.isInstalled(e + "." + t)) return e + "." + t
  1031.                     },
  1032.                     enabled: function() {
  1033.                         return WIMB.detect.addons.silverlight._init(), !!Silverlight.isInstalled("1.0")
  1034.                     }
  1035.                 }
  1036.             }
  1037.         },
  1038.         version_check: {
  1039.             flash: {
  1040.                 _latest_version_data_exists: function() {
  1041.                     return void 0 !== WIMB.version_check.flash._get_latest_flash_version()
  1042.                 },
  1043.                 _get_latest_flash_version: function() {
  1044.                     if ("undefined" == typeof wimb_version_numbers) return !1;
  1045.                     var e = navigator.userAgent,
  1046.                         t = new RegExp("android", "i").exec(e),
  1047.                         i = new RegExp("linux", "i").exec(e),
  1048.                         n = new RegExp("chrom", "i").exec(e);
  1049.                     if (t) var r = wimb_version_numbers.flash.android;
  1050.                     else if (i)
  1051.                         if (n) r = wimb_version_numbers.flash.standard;
  1052.                         else r = wimb_version_numbers.flash.linux;
  1053.                     else r = wimb_version_numbers.flash.standard;
  1054.                     return r
  1055.                 },
  1056.                 is_up_to_date: function() {
  1057.                     if (!0 === WIMB.version_check.flash._latest_version_data_exists()) {
  1058.                         var e = WIMB.detect.flash.version_array(),
  1059.                             t = WIMB.version_check.flash._get_latest_flash_version();
  1060.                         for (their_flash_version_fragment_key in e)
  1061.                             if (void 0 !== e[their_flash_version_fragment_key] && void 0 !== t[their_flash_version_fragment_key]) {
  1062.                                 if (parseInt(e[their_flash_version_fragment_key]) == parseInt(t[their_flash_version_fragment_key])) continue;
  1063.                                 return !(parseInt(e[their_flash_version_fragment_key]) < parseInt(t[their_flash_version_fragment_key]))
  1064.                             } return !0
  1065.                     }
  1066.                     return -1
  1067.                 }
  1068.             },
  1069.             java: {
  1070.                 _latest_version_data_exists: function() {
  1071.                     return "undefined" != typeof wimb_version_numbers && void 0 !== wimb_version_numbers.java
  1072.                 },
  1073.                 is_up_to_date: function() {
  1074.                     if (!0 === WIMB.version_check.java._latest_version_data_exists()) {
  1075.                         var e = WIMB.detect.java.version_array(),
  1076.                             t = wimb_version_numbers.java;
  1077.                         for (their_java_version_fragment_key in their_java_version = e.version, latest_java_version = t.version, their_java_version)
  1078.                             if (void 0 !== their_java_version[their_java_version_fragment_key] && void 0 !== latest_java_version[their_java_version_fragment_key]) {
  1079.                                 if (parseInt(their_java_version[their_java_version_fragment_key]) == parseInt(latest_java_version[their_java_version_fragment_key])) continue;
  1080.                                 return !(parseInt(their_java_version[their_java_version_fragment_key]) < parseInt(latest_java_version[their_java_version_fragment_key]))
  1081.                             } return their_java_update = e.update, latest_java_update = t.update, !(parseInt(their_java_update) < parseInt(latest_java_update))
  1082.                     }
  1083.                     return -1
  1084.                 }
  1085.             }
  1086.         }
  1087.     },
  1088.     WIMB_UTIL = WIMB_UTIL || {
  1089.         version: "1.0",
  1090.         get_style: function(e, t) {
  1091.             return rv = "", e.currentStyle ? rv = e.currentStyle[t] : window.getComputedStyle && (rv = document.defaultView.getComputedStyle(e, null).getPropertyValue(t)), rv
  1092.         },
  1093.         decode_java_version: function(e) {
  1094.             if (!e) return !1;
  1095.             var t = e.split("."),
  1096.                 i = [],
  1097.                 n = "";
  1098.             for ("1" == t[0] && t[1] <= "4" ? v = 0 : v = 1, v = v; v < t.length; v++) {
  1099.                 !1 !== t[v].search(/^[0-9]+[_]+[0-9]*$/) ? (fragment_fragments = t[v].split("_"), i.push(parseInt(fragment_fragments[0])), void 0 !== fragment_fragments[1] && (n = parseInt(fragment_fragments[1]))) : (i.push(t[v]), v++)
  1100.             }
  1101.             return {
  1102.                 version: i,
  1103.                 update: n
  1104.             }
  1105.         }
  1106.     };
  1107. var WIMB_CAPABILITIES = WIMB_CAPABILITIES || {
  1108.         capabilities: {},
  1109.         add: function(e, t, d) {
  1110.             d ? (WIMB_CAPABILITIES.capabilities[d] || (WIMB_CAPABILITIES.capabilities[d] = {}), WIMB_CAPABILITIES.capabilities[d][e] = t) : WIMB_CAPABILITIES.capabilities[e] = t
  1111.         },
  1112.         add_update: function(e, t) {
  1113.             WIMB_CAPABILITIES.add(e, t)
  1114.         },
  1115.         get_as_json_string: function() {
  1116.             if (void 0 === WIMB_CAPABILITIES) return console.log("debug: There was an error getting capabilities. WIMB_CAPABILITIES is undefined."), "{}";
  1117.             if (void 0 === WIMB_CAPABILITIES.capabilities.javascript) return console.log("debug: There was an error getting capabilities. The `javascript` key was missing."), "{}";
  1118.             for (key in rv = "{", WIMB_CAPABILITIES.capabilities)
  1119.                 if ("object" == typeof WIMB_CAPABILITIES.capabilities[key]) {
  1120.                     var e = "";
  1121.                     for (sub_key in WIMB_CAPABILITIES.capabilities[key]) e = e + '"' + sub_key + '": "' + WIMB_CAPABILITIES.capabilities[key][sub_key] + '",';
  1122.                     e = e.slice(0, -1), rv = rv + '"' + key + '": {' + e + "},"
  1123.                 } else rv = rv + '"' + key + '": "' + WIMB_CAPABILITIES.capabilities[key] + '",';
  1124.             return rv = rv.slice(0, -1), rv += "}", rv
  1125.         }
  1126.     },
  1127.     add_row_to_tech_details = function(e) {
  1128.         document.getElementById("technical-details") && (document.getElementById("technical-details").innerHTML = document.getElementById("technical-details").innerHTML + '<div class="tech-detail-item"><div class="key" ' + (e.title ? 'title="' + e.title + '"' : "") + ">" + e.key + '</div><div class="value">' + e.value + "</div></div>")
  1129.     },
  1130.     do_capabilities_detection = function() {
  1131.         for (var t = document.querySelectorAll(".detection-secondary tr.no-javascript"), d = 0; d < t.length; d++) try {
  1132.             t[d].classList.remove("no-javascript")
  1133.         } catch (e) {
  1134.             t[d].setAttribute("class", t[d].getAttribute("class").replace("no-javascript", " "))
  1135.         }
  1136.         document.getElementById("javascript-detection").innerHTML = '<span class="detection-message">Yes</span>', WIMB_CAPABILITIES.add("javascript", "1"), WIMB.detect.cookies.enabled() ? (document.getElementById("cookies-detection").innerHTML = '<span class="detection-message">Yes</span>', WIMB_CAPABILITIES.add("cookies", "1")) : (document.getElementById("cookies-detection").innerHTML = '<span class="detection-message">No</span>', WIMB_CAPABILITIES.add("cookies", "0"));
  1137.         var e = "Please wait...";
  1138.         document.getElementById("third-party-cookies-detection").innerHTML = '<span class="detection-message">' + e + "</span>", WIMB.detect.cookies_third_party.trigger_set_cookie("//" + window.third_party_domain + "/detect/are-third-party-cookies-enabled-set-cookie"), cookie_check_interval = setInterval(function() {
  1139.             1 == WIMB.detect.cookies_third_party.enabled() ? (document.getElementById("third-party-cookies-detection").innerHTML = '<span class="detection-message">Yes</span>', WIMB_CAPABILITIES.add("cookies_third_party", "1"), clearInterval(cookie_check_interval)) : 0 == WIMB.detect.cookies_third_party.enabled() && (document.getElementById("third-party-cookies-detection").innerHTML = '<span class="detection-message">No</span>', WIMB_CAPABILITIES.add("cookies_third_party", "0"), clearInterval(cookie_check_interval))
  1140.         }, 50), setTimeout(function() {
  1141.             document.querySelector("#third-party-cookies-detection .detection-message").innerHTML == e && (document.getElementById("third-party-cookies-detection").innerHTML = '<span class="detection-message">Error. Try reloading.</span>', WIMB_CAPABILITIES.add("cookies_third_party", "-1")), clearInterval(cookie_check_interval)
  1142.         }, 4e3), WIMB.detect.flash.enabled() ? (flash_info_link = document.querySelector(".is-flash-installed a.info-link"), flash_info_link.parentNode.removeChild(flash_info_link), document.getElementById("flash-detection").innerHTML = '<span class="detection-message">Flash ' + WIMB.detect.flash.version() + " is installed</span>", add_row_to_tech_details({
  1143.             key: "Adobe Flash Full version",
  1144.             value: WIMB.detect.flash.version_full()
  1145.         }), WIMB_CAPABILITIES.add("flash", "1"), WIMB_CAPABILITIES.add("flash_version_array", WIMB.detect.flash.version_array()), !0 === WIMB.version_check.flash.is_up_to_date() ? document.getElementById("flash-detection").insertAdjacentHTML("afterend", '<div class="label label-success version-check"><span class="symbol">✓</span> Up to date</div>') : !1 === WIMB.version_check.flash.is_up_to_date() && document.getElementById("flash-detection").insertAdjacentHTML("afterend", '<div class="label label-danger version-check"><span class="symbol">✗</span> <a href="https://get.adobe.com/flashplayer/" target="_blank">Out of date - click to update</a></div>')) : (document.getElementById("flash-detection").innerHTML = '<span class="detection-message">Flash is not installed, or disabled</span>', WIMB_CAPABILITIES.add("flash", "0")), WIMB.detect.java.enabled() ? (java_info_link = document.querySelector(".is-java-installed a.info-link"), java_info_link.parentNode.removeChild(java_info_link), document.getElementById("java-detection").innerHTML = '<span class="detection-message">Java ' + WIMB.detect.java.version() + " is installed</span>", add_row_to_tech_details({
  1146.             key: "Java version string",
  1147.             value: WIMB.detect.java._get_version_string()
  1148.         }), WIMB_CAPABILITIES.add("java", "1"), WIMB_CAPABILITIES.add("java_version_encoded", WIMB.detect.java._get_version_string()), !0 === WIMB.version_check.java.is_up_to_date() && document.getElementById("java-detection").insertAdjacentHTML("afterend", '<div class="label label-success version-check"><span class="symbol">✓</span> Up to date</div>'), !1 === WIMB.version_check.java.is_up_to_date() && document.getElementById("java-detection").insertAdjacentHTML("afterend", '<div class="label label-danger version-check"><span class="symbol">✗</span> <a href="https://java.com/download" target="_blank">Out of date - click to update</a></div>')) : (document.getElementById("java-detection").innerHTML = '<span class="detection-message">Java is not installed, or is disabled</span>', WIMB_CAPABILITIES.add("java", "0")), WIMB.detect.local_ipv4_addresses.trigger_detection(), setTimeout(function() {
  1149.             var e = WIMB.detect.local_ipv4_addresses.retrieve();
  1150.             if (0 < e.length) {
  1151.                 var t = '<div id="local-ip-address" class="detection-block detection-block-tertiary"><div class="description-column"><h3>Local IP Address' + (1 < e.length ? "es" : "") + '</h3><div class="text"><p>The local IP Address' + (1 < e.length ? "es" : "") + ' of your computer on your network.</p></div></div><div class="detected-column"><a href="/detect/what-is-my-local-ip-address">';
  1152.                 for (local_ipv4_address_key in e) t = t + e[local_ipv4_address_key] + "<br />", WIMB_CAPABILITIES.add("ip_" + local_ipv4_address_key, e[local_ipv4_address_key], "local_ipv4_addresses");
  1153.                 t += '</a></div><div class="clearer"></div></div>', document.getElementById("ip-address").insertAdjacentHTML("afterend", t)
  1154.             }
  1155.         }, 1e3), WIMB.detect.computer_screen.width() && WIMB.detect.computer_screen.height() && (WIMB_CAPABILITIES.add("computer_screen_width", WIMB.detect.computer_screen.width()), WIMB_CAPABILITIES.add("computer_screen_height", WIMB.detect.computer_screen.height()), WIMB_CAPABILITIES.add("computer_screen_color_depth", WIMB.detect.computer_screen.color_depth()), document.getElementById("computer-screen-detection").innerHTML = '<span class="detection-message">' + WIMB.detect.computer_screen.width() + " <span>x</span> " + WIMB.detect.computer_screen.height() + " pixels<br />" + WIMB.detect.computer_screen.color_depth() + " bit</span>");
  1156.         var a = function() {
  1157.             if (WIMB_CAPABILITIES.add_update("browser_window_size_width", WIMB.detect.browser_window_size.width()), WIMB_CAPABILITIES.add_update("browser_window_size_height", WIMB.detect.browser_window_size.height()), 0 == WIMB.detect.browser_window_size.width() || 0 == WIMB.detect.browser_window_size.height()) {
  1158.                 var e = document.getElementById("browser-window-size");
  1159.                 try {
  1160.                     e.parentNode.removeChild(e)
  1161.                 } catch (e) {}
  1162.             } else document.getElementById("browser-window-size-detection").innerHTML = '<span class="detection-message">' + WIMB.detect.browser_window_size.width() + " x " + WIMB.detect.browser_window_size.height() + " pixels</span>"
  1163.         };
  1164.         a(), setTimeout(function() {
  1165.             a()
  1166.         }, 2e3), window.addEventListener("resize", function(e) {
  1167.             a()
  1168.         }), setTimeout(function() {
  1169.             if (browser_addons = WIMB.detect.addons.get_all_names(), 0 < browser_addons.length) {
  1170.                 for (browser_addon_key in browser_addons) WIMB_CAPABILITIES.add(browser_addons[browser_addon_key].code, browser_addons[browser_addon_key].version ? browser_addons[browser_addon_key].version : "true", "browser_addons"), document.getElementById("detected-addons-ul").insertAdjacentHTML("beforeend", "<li>" + browser_addons[browser_addon_key].name + "</li>");
  1171.                 document.getElementById("detected-addons").style.display = "block"
  1172.             }
  1173.         }, 1e3), WIMB.detect.computer_screen.device_pixel_ratio() && (WIMB_CAPABILITIES.add("device_pixel_ratio", WIMB.detect.computer_screen.device_pixel_ratio()), add_row_to_tech_details({
  1174.             key: "Device Pixel Ratio",
  1175.             value: WIMB.detect.computer_screen.device_pixel_ratio()
  1176.         })), add_row_to_tech_details({
  1177.             key: "Browser GMT Offset",
  1178.             value: WIMB.detect.gmt_offset()
  1179.         }), WIMB_CAPABILITIES.add("browser_gmt_offset", WIMB.detect.gmt_offset()), document.getElementById("send-to-tech-form").addEventListener("submit", function(e) {
  1180.             document.getElementById("id_capabilities").value = WIMB_CAPABILITIES.get_as_json_string()
  1181.         })
  1182.     };
  1183. if (ClipboardJS.isSupported()) {
  1184.     var clipboard = new ClipboardJS("#ubuc-copy-link");
  1185.     try {
  1186.         (ubuc_send_link = document.getElementById("ubuc-send-link")).parentNode.removeChild(ubuc_send_link)
  1187.     } catch (e) {
  1188.         var ubuc_send_link;
  1189.         (ubuc_send_link = document.getElementById("ubuc-send-link")) && (ubuc_send_link.style.display = "none")
  1190.     }
  1191.     if (document.getElementById("ubuc-copy-link")) try {
  1192.         document.getElementById("ubuc-copy-link").classList.add("button-is-visible")
  1193.     } catch (e) {
  1194.         document.getElementById("ubuc-copy-link").className += " button-is-visible"
  1195.     }
  1196.     clipboard.on("success", function(e) {
  1197.         document.getElementById("ubuc-copy-link").innerHTML = "URL copied ✓";
  1198.         try {
  1199.             document.getElementById("ubuc-copy-link").classList.add("copied")
  1200.         } catch (e) {
  1201.             document.getElementById("ubuc-copy-link").className += " copied"
  1202.         }
  1203.         document.getElementById("clipboard-message").innerHTML = "Your unique URL has been copied to your clipboard. You can paste it into an email, tweet or ticket to your support desk.", document.getElementById("clipboard-message").style.display = "block"
  1204.     }), clipboard.on("error", function(e) {
  1205.         document.getElementById("clipboard-message").innerHTML = "There was a problem copying your unique URL to your clipboard. Manually copy and paste the link to your support desk.", document.getElementById("clipboard-message").style.display = "block", console.error("Action:", e.action), console.error("Trigger:", e.trigger)
  1206.     })
  1207. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top