"use strict"; function getOS(e) { return -1 !== e.indexOf("Windows Phone") ? "Windows Phone" : -1 !== e.indexOf("Win") ? "Windows" : -1 !== e.indexOf("Android") ? "Android" : -1 !== e.indexOf("Linux") ? "Linux" : -1 !== e.indexOf("X11") ? "UNIX" : /iPad|iPhone|iPod/.test(e) ? "iOS" : -1 !== e.indexOf("Mac") ? "OS X" : void 0 } function info(e) { var i, n = e || navigator.userAgent, o = getOS(n), r = n.match(/(opera|coast|chrome|safari|firefox|edge|trident(?=\/))\/?\s*?(\S+)/i) || []; if (null !== (i = n.match(/\bIEMobile\/(\S+[0-9])/))) return { name: "IEMobile", version: i[1].split(".")[0], fullVersion: i[1], os: o }; if (/trident/i.test(r[1])) return { name: "IE", version: (i = /\brv[ :]+(\S+[0-9])/g.exec(n) || [])[1] && i[1].split(".")[0], fullVersion: i[1], os: o }; if ("Chrome" === r[1]) { if (null !== (i = n.match(/\bOPR\/(\d+)/))) return { name: "Opera", version: i[1].split(".")[0], fullVersion: i[1], os: o }; if (null !== (i = n.match(/\bEdg\/(\S+)/) || n.match(/\bEdge\/(\S+)/))) return { name: "Edge", version: i[1].split(".")[0], fullVersion: i[1], os: o } } ("Coast" === (r = r[2] ? [r[1], r[2]] : [navigator.appName, navigator.appVersion, "-?"])[0] && (r[0] = "OperaCoast"), "Chrome" !== r[0]) && (null !== (i = n.match(/version\/(\S+)/i)) && "" !== i && r.splice(1, 1, i[1])); return "Firefox" === r[0] && (r[0] = /waterfox/i.test(n) ? "Waterfox" : r[0]), { name: r[0], version: r[1].split(".")[0], fullVersion: r[1], os: o } }