@kpi4me/golden-layout
Version:
A multi-screen javascript Layout manager https://golden-layout.com
1,851 lines (1,846 loc) • 79.7 kB
JavaScript
var parser;
exports.browser = Object.create(null);
parser = Object.create(null);
parser[0] = new RegExp("(HbbTV)/(\\d+)\\.(\\d+)\\.(\\d+) \\(");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[0] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Chimera|SeaMonkey|Camino)/(\\d+)\\.(\\d+)\\.?([ab]?\\d+[a-z]*)?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[1] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Pale[Mm]oon)/(\\d+)\\.(\\d+)\\.?(\\d+)?");
parser[1] = "Pale Moon (Firefox Variant)";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[2] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Fennec)/(\\d+)\\.(\\d+)\\.?([ab]?\\d+[a-z]*)");
parser[1] = "Firefox Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[3] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Fennec)/(\\d+)\\.(\\d+)(pre)");
parser[1] = "Firefox Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[4] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Fennec)/(\\d+)\\.(\\d+)");
parser[1] = "Firefox Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[5] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Mobile.*(Firefox)/(\\d+)\\.(\\d+)");
parser[1] = "Firefox Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[6] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Namoroka|Shiretoko|Minefield)/(\\d+)\\.(\\d+)\\.(\\d+(?:pre)?)");
parser[1] = "Firefox ($1)";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[7] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox)/(\\d+)\\.(\\d+)(a\\d+[a-z]*)");
parser[1] = "Firefox Alpha";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[8] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox)/(\\d+)\\.(\\d+)(b\\d+[a-z]*)");
parser[1] = "Firefox Beta";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[9] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox)-(?:\\d+\\.\\d+)?/(\\d+)\\.(\\d+)(a\\d+[a-z]*)");
parser[1] = "Firefox Alpha";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[10] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox)-(?:\\d+\\.\\d+)?/(\\d+)\\.(\\d+)(b\\d+[a-z]*)");
parser[1] = "Firefox Beta";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[11] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Namoroka|Shiretoko|Minefield)/(\\d+)\\.(\\d+)([ab]\\d+[a-z]*)?");
parser[1] = "Firefox ($1)";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[12] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox).*Tablet browser (\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "MicroB";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[13] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(MozillaDeveloperPreview)/(\\d+)\\.(\\d+)([ab]\\d+[a-z]*)?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[14] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Flock)/(\\d+)\\.(\\d+)(b\\d+?)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[15] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(RockMelt)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[16] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Navigator)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Netscape";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[17] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Navigator)/(\\d+)\\.(\\d+)([ab]\\d+)");
parser[1] = "Netscape";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[18] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Netscape6)/(\\d+)\\.(\\d+)\\.?([ab]?\\d+)?");
parser[1] = "Netscape";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[19] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(MyIBrow)/(\\d+)\\.(\\d+)");
parser[1] = "My Internet Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[20] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Opera Tablet).*Version/(\\d+)\\.(\\d+)(?:\\.(\\d+))?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[21] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Opera)/.+Opera Mobi.+Version/(\\d+)\\.(\\d+)");
parser[1] = "Opera Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[22] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Opera)/(\\d+)\\.(\\d+).+Opera Mobi");
parser[1] = "Opera Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[23] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Opera Mobi.+(Opera)(?:/|\\s+)(\\d+)\\.(\\d+)");
parser[1] = "Opera Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[24] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Opera Mobi");
parser[1] = "Opera Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[25] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Opera Mini)(?:/att)?/(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[26] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Opera)/9.80.*Version/(\\d+)\\.(\\d+)(?:\\.(\\d+))?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[27] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(?:Mobile Safari).*(OPR)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Opera Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[28] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(?:Chrome).*(OPR)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Opera";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[29] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(hpw|web)OS/(\\d+)\\.(\\d+)(?:\\.(\\d+))?");
parser[1] = "webOS Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[30] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(luakit)");
parser[1] = "LuaKit";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[31] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Snowshoe)/(\\d+)\\.(\\d+).(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[32] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Lightning)/(\\d+)\\.(\\d+)\\.?((?:[ab]?\\d+[a-z]*)|(?:\\d*))");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[33] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox)/(\\d+)\\.(\\d+)\\.(\\d+(?:pre)?) \\(Swiftfox\\)");
parser[1] = "Swiftfox";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[34] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox)/(\\d+)\\.(\\d+)([ab]\\d+[a-z]*)? \\(Swiftfox\\)");
parser[1] = "Swiftfox";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[35] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(rekonq)/(\\d+)\\.(\\d+)\\.?(\\d+)? Safari");
parser[1] = "Rekonq";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[36] = parser;
parser = Object.create(null);
parser[0] = new RegExp("rekonq");
parser[1] = "Rekonq";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[37] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(conkeror|Conkeror)/(\\d+)\\.(\\d+)\\.?(\\d+)?");
parser[1] = "Conkeror";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[38] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(konqueror)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Konqueror";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[39] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(WeTab)-Browser");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[40] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Comodo_Dragon)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Comodo Dragon";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[41] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(YottaaMonitor|BrowserMob|HttpMonitor|YandexBot|Slurp|BingPreview|PagePeeker|ThumbShotsBot|WebThumb|URL2PNG|ZooShot|GomezA|Catchpoint bot|Willow Internet Crawler|Google SketchUp|Read%20Later)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[42] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Symphony) (\\d+).(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[43] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Minimo)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[44] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(CrMo)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Chrome Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[45] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(CriOS)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Chrome Mobile iOS";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[46] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Chrome)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+) Mobile");
parser[1] = "Chrome Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[47] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(chromeframe)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Chrome Frame";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[48] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(UCBrowser)[ /](\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "UC Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[49] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(UC Browser)[ /](\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[50] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(UC Browser|UCBrowser|UCWEB)(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "UC Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[51] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(SLP Browser)/(\\d+)\\.(\\d+)");
parser[1] = "Tizen Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[52] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(SE 2\\.X) MetaSr (\\d+)\\.(\\d+)");
parser[1] = "Sogou Explorer";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[53] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(baidubrowser)[/\\s](\\d+)");
parser[1] = "Baidu Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[54] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(FlyFlow)/(\\d+)\\.(\\d+)");
parser[1] = "Baidu Explorer";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[55] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(MQQBrowser/Mini)(?:(\\d+)(?:\\.(\\d+)(?:\\.(\\d+))?)?)?");
parser[1] = "QQ Browser Mini";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[56] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(MQQBrowser)(?:/(\\d+)(?:\\.(\\d+)(?:\\.(\\d+))?)?)?");
parser[1] = "QQ Browser Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[57] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(QQBrowser)(?:/(\\d+)(?:\\.(\\d+)\\.(\\d+)(?:\\.(\\d+))?)?)?");
parser[1] = "QQ Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[58] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Pingdom.com_bot_version_)(\\d+)\\.(\\d+)");
parser[1] = "PingdomBot";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[59] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(facebookexternalhit)/(\\d+)\\.(\\d+)");
parser[1] = "FacebookBot";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[60] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(LinkedInBot)/(\\d+)\\.(\\d+)");
parser[1] = "LinkedInBot";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[61] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Twitterbot)/(\\d+)\\.(\\d+)");
parser[1] = "TwitterBot";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[62] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Google.*/\\+/web/snippet");
parser[1] = "GooglePlusBot";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[63] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Rackspace Monitoring)/(\\d+)\\.(\\d+)");
parser[1] = "RackspaceBot";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[64] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(PyAMF)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[65] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(YaBrowser)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Yandex Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[66] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Chrome)/(\\d+)\\.(\\d+)\\.(\\d+).* MRCHROME");
parser[1] = "Mail.ru Chromium Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[67] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(AOL) (\\d+)\\.(\\d+); AOLBuild (\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[68] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(AdobeAIR|FireWeb|Jasmine|ANTGalio|Midori|Fresco|Lobo|PaleMoon|Maxthon|Lynx|OmniWeb|Dillo|Camino|Demeter|Fluid|Fennec|Epiphany|Shiira|Sunrise|Flock|Netscape|Lunascape|WebPilot|NetFront|Netfront|Konqueror|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|Opera Mini|iCab|NetNewsWire|ThunderBrowse|Iris|UP\\.Browser|Bunjalloo|Google Earth|Raven for Mac|Openwave)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[69] = parser;
parser = Object.create(null);
parser[0] = new RegExp("MSOffice 12");
parser[1] = "Outlook";
parser[2] = "2007";
parser[3] = 0;
parser[4] = 0;
exports.browser[70] = parser;
parser = Object.create(null);
parser[0] = new RegExp("MSOffice 14");
parser[1] = "Outlook";
parser[2] = "2010";
parser[3] = 0;
parser[4] = 0;
exports.browser[71] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Microsoft Outlook 15\\.\\d+\\.\\d+");
parser[1] = "Outlook";
parser[2] = "2013";
parser[3] = 0;
parser[4] = 0;
exports.browser[72] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Airmail) (\\d+)\\.(\\d+)(?:\\.(\\d+))?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[73] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Thunderbird)/(\\d+)\\.(\\d+)\\.(\\d+(?:pre)?)");
parser[1] = "Thunderbird";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[74] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Chromium|Chrome)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[75] = parser;
parser = Object.create(null);
parser[0] = new RegExp("\\b(Dolphin)(?: |HDCN/|/INT\\-)(\\d+)\\.(\\d+)\\.?(\\d+)?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[76] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(bingbot|Bolt|Jasmine|IceCat|Skyfire|Midori|Maxthon|Lynx|Arora|IBrowse|Dillo|Camino|Shiira|Fennec|Phoenix|Chrome|Flock|Netscape|Lunascape|Epiphany|WebPilot|Opera Mini|Opera|NetFront|Netfront|Konqueror|Googlebot|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|iCab|NetNewsWire|Space Bison|Stainless|Orca|Dolfin|BOLT|Minimo|Tizen Browser|Polaris|Abrowser|Planetweb|ICE Browser|mDolphin)/(\\d+)\\.(\\d+)\\.?(\\d+)?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[77] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Chromium|Chrome)/(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[78] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(IEMobile)[ /](\\d+)\\.(\\d+)");
parser[1] = "IE Mobile";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[79] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iRider|Crazy Browser|SkipStone|iCab|Lunascape|Sleipnir|Maemo Browser) (\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[80] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iCab|Lunascape|Opera|Android|Jasmine|Polaris) (\\d+)\\.(\\d+)\\.?(\\d+)?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[81] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Kindle)/(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[82] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Android) Donut");
parser[1] = 0;
parser[2] = "1";
parser[3] = "2";
parser[4] = 0;
exports.browser[83] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Android) Eclair");
parser[1] = 0;
parser[2] = "2";
parser[3] = "1";
parser[4] = 0;
exports.browser[84] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Android) Froyo");
parser[1] = 0;
parser[2] = "2";
parser[3] = "2";
parser[4] = 0;
exports.browser[85] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Android) Gingerbread");
parser[1] = 0;
parser[2] = "2";
parser[3] = "3";
parser[4] = 0;
exports.browser[86] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Android) Honeycomb");
parser[1] = 0;
parser[2] = "3";
parser[3] = 0;
parser[4] = 0;
exports.browser[87] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(MSIE) (\\d+)\\.(\\d+).*XBLWP7");
parser[1] = "IE Large Screen";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[88] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Obigo)InternetBrowser");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[89] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Obigo)\\-Browser");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[90] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Obigo|OBIGO)[^\\d]*(\\d+)(?:.(\\d+))?");
parser[1] = "Obigo";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[91] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(MAXTHON|Maxthon) (\\d+)\\.(\\d+)");
parser[1] = "Maxthon";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[92] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Maxthon|MyIE2|Uzbl|Shiira)");
parser[1] = 0;
parser[2] = "0";
parser[3] = 0;
parser[4] = 0;
exports.browser[93] = parser;
parser = Object.create(null);
parser[0] = new RegExp("PLAYSTATION 3.+WebKit");
parser[1] = "NetFront NX";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[94] = parser;
parser = Object.create(null);
parser[0] = new RegExp("PLAYSTATION 3");
parser[1] = "NetFront";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[95] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(PlayStation Portable)");
parser[1] = "NetFront";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[96] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(PlayStation Vita)");
parser[1] = "NetFront NX";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[97] = parser;
parser = Object.create(null);
parser[0] = new RegExp("AppleWebKit.+ (NX)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "NetFront NX";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[98] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Nintendo 3DS)");
parser[1] = "NetFront NX";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[99] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(BrowseX) \\((\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[100] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(NCSA_Mosaic)/(\\d+)\\.(\\d+)");
parser[1] = "NCSA Mosaic";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[101] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(POLARIS)/(\\d+)\\.(\\d+)");
parser[1] = "Polaris";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[102] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Embider)/(\\d+)\\.(\\d+)");
parser[1] = "Polaris";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[103] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(BonEcho)/(\\d+)\\.(\\d+)\\.?([ab]?\\d+)?");
parser[1] = "Bon Echo";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[104] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(CFNetwork)(?:/(\\d+)\\.(\\d+)\\.?(\\d+)?)?");
parser[1] = "CFNetwork";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[105] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPod).+Version/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Mobile Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[106] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPod).*Version/(\\d+)\\.(\\d+)");
parser[1] = "Mobile Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[107] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPhone).*Version/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Mobile Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[108] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPhone).*Version/(\\d+)\\.(\\d+)");
parser[1] = "Mobile Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[109] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPad).*Version/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Mobile Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[110] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPad).*Version/(\\d+)\\.(\\d+)");
parser[1] = "Mobile Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[111] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPod|iPhone|iPad);.*CPU.*OS (\\d+)(?:_\\d+)?_(\\d+).*Mobile");
parser[1] = "Mobile Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[112] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPod|iPhone|iPad)");
parser[1] = "Mobile Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[113] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(AvantGo) (\\d+).(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[114] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(OneBrowser)/(\\d+).(\\d+)");
parser[1] = "ONE Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[115] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Avant)");
parser[1] = 0;
parser[2] = "1";
parser[3] = 0;
parser[4] = 0;
exports.browser[116] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(QtCarBrowser)");
parser[1] = 0;
parser[2] = "1";
parser[3] = 0;
parser[4] = 0;
exports.browser[117] = parser;
parser = Object.create(null);
parser[0] = new RegExp("^(iBrowser/Mini)(\\d+).(\\d+)");
parser[1] = "iBrowser Mini";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[118] = parser;
parser = Object.create(null);
parser[0] = new RegExp("^(iBrowser|iRAPP)/(\\d+).(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[119] = parser;
parser = Object.create(null);
parser[0] = new RegExp("^(Nokia)");
parser[1] = "Nokia Services (WAP) Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[120] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(NokiaBrowser)/(\\d+)\\.(\\d+).(\\d+)\\.(\\d+)");
parser[1] = "Nokia Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[121] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(NokiaBrowser)/(\\d+)\\.(\\d+).(\\d+)");
parser[1] = "Nokia Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[122] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(NokiaBrowser)/(\\d+)\\.(\\d+)");
parser[1] = "Nokia Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[123] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(BrowserNG)/(\\d+)\\.(\\d+).(\\d+)");
parser[1] = "Nokia Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[124] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Series60)/5\\.0");
parser[1] = "Nokia Browser";
parser[2] = "7";
parser[3] = "0";
parser[4] = 0;
exports.browser[125] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Series60)/(\\d+)\\.(\\d+)");
parser[1] = "Nokia OSS Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[126] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(S40OviBrowser)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "Ovi Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[127] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Nokia)[EN]?(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[128] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(BB10);");
parser[1] = "BlackBerry WebKit";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[129] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(PlayBook).+RIM Tablet OS (\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "BlackBerry WebKit";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[130] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Black[bB]erry).+Version/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "BlackBerry WebKit";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[131] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Black[bB]erry)\\s?(\\d+)");
parser[1] = "BlackBerry";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[132] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(OmniWeb)/v(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[133] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Blazer)/(\\d+)\\.(\\d+)");
parser[1] = "Palm Blazer";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[134] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Pre)/(\\d+)\\.(\\d+)");
parser[1] = "Palm Pre";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[135] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(ELinks)/(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[136] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(ELinks) \\((\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[137] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Links) \\((\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[138] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(QtWeb) Internet Browser/(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[139] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Silk)/(\\d+)\\.(\\d+)(?:\\.([0-9\\-]+))?");
parser[1] = "Amazon Silk";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[140] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(PhantomJS)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[141] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(AppleWebKit)/(\\d+)\\.?(\\d+)?\\+ .* Safari");
parser[1] = "WebKit Nightly";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[142] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Version)/(\\d+)\\.(\\d+)(?:\\.(\\d+))?.*Safari/");
parser[1] = "Safari";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[143] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Safari)/\\d+");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[144] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(OLPC)/Update(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[145] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(OLPC)/Update()\\.(\\d+)");
parser[1] = 0;
parser[2] = "0";
parser[3] = 0;
parser[4] = 0;
exports.browser[146] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(SEMC\\-Browser)/(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[147] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Teleca)");
parser[1] = "Teleca Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[148] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Phantom)/V(\\d+)\\.(\\d+)");
parser[1] = "Phantom Browser";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[149] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Trident(.*)rv.(\\d+)\\.(\\d+)");
parser[1] = "IE";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[150] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Espial)/(\\d+)(?:\\.(\\d+))?(?:\\.(\\d+))?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[151] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(AppleWebKit)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "AppleMail";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[152] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[153] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Firefox)/(\\d+)\\.(\\d+)(pre|[ab]\\d+[a-z]*)?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[154] = parser;
parser = Object.create(null);
parser[0] = new RegExp("([MS]?IE) (\\d+)\\.(\\d+)");
parser[1] = "IE";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[155] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(python-requests)/(\\d+)\\.(\\d+)");
parser[1] = "Python Requests";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[156] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Thunderbird)/(\\d+)\\.(\\d+)\\.?(\\d+)?");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[157] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Wget)/(\\d+)\\.(\\d+)\\.?([ab]?\\d+[a-z]*)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[158] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(curl)/(\\d+)\\.(\\d+)\\.(\\d+)");
parser[1] = "cURL";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.browser[159] = parser;
exports.browser.length = 160;
exports.device = Object.create(null);
parser = Object.create(null);
parser[0] = new RegExp("HTC ([A-Z][a-z0-9]+) Build");
parser[1] = "HTC $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[0] = parser;
parser = Object.create(null);
parser[0] = new RegExp("HTC ([A-Z][a-z0-9 ]+) \\d+\\.\\d+\\.\\d+\\.\\d+");
parser[1] = "HTC $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[1] = parser;
parser = Object.create(null);
parser[0] = new RegExp("HTC_Touch_([A-Za-z0-9]+)");
parser[1] = "HTC Touch ($1)";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[2] = parser;
parser = Object.create(null);
parser[0] = new RegExp("USCCHTC(\\d+)");
parser[1] = "HTC $1 (US Cellular)";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[3] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Sprint APA(9292)");
parser[1] = "HTC $1 (Sprint)";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[4] = parser;
parser = Object.create(null);
parser[0] = new RegExp("HTC ([A-Za-z0-9]+ [A-Z])");
parser[1] = "HTC $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[5] = parser;
parser = Object.create(null);
parser[0] = new RegExp("HTC[-_/\\s]([A-Za-z0-9]+)");
parser[1] = "HTC $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[6] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(ADR[A-Za-z0-9]+)");
parser[1] = "HTC $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[7] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(HTC)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[8] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(QtCarBrowser)");
parser[1] = "Tesla Model S";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[9] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(SamsungSGHi560)");
parser[1] = "Samsung SGHi560";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[10] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(SCH-[A-Za-z0-9_-]+)");
parser[1] = "Samsung $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[11] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(SGH-[A-Za-z0-9_-]+)");
parser[1] = "Samsung $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[12] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(GT-[A-Za-z0-9_-]+)");
parser[1] = "Samsung $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[13] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(SM-[A-Za-z0-9_-]+)");
parser[1] = "Samsung $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[14] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(SPH-[A-Za-z0-9_-]+)");
parser[1] = "Samsung $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[15] = parser;
parser = Object.create(null);
parser[0] = new RegExp("SAMSUNG-([A-Za-z0-9_-]+)");
parser[1] = "Samsung $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[16] = parser;
parser = Object.create(null);
parser[0] = new RegExp("SAMSUNG ([A-Za-z0-9_-]+)");
parser[1] = "Samsung $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[17] = parser;
parser = Object.create(null);
parser[0] = new RegExp("SonyEricsson([A-Za-z0-9]+)/");
parser[1] = "Ericsson $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[18] = parser;
parser = Object.create(null);
parser[0] = new RegExp("PLAYSTATION 3");
parser[1] = "PlayStation 3";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[19] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(PlayStation (:?Portable|Vita))");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[20] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(PlayStation (:?\\d+))");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[21] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFOT Build)");
parser[1] = "Kindle Fire";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[22] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFTT Build)");
parser[1] = "Kindle Fire HD";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[23] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFJWI Build)");
parser[1] = "Kindle Fire HD 8.9\" WiFi";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[24] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFJWA Build)");
parser[1] = "Kindle Fire HD 8.9\" 4G";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[25] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFSOWI Build)");
parser[1] = "Kindle Fire HD 7\" WiFi";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[26] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFTHWI Build)");
parser[1] = "Kindle Fire HDX 7\" WiFi";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[27] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFTHWA Build)");
parser[1] = "Kindle Fire HDX 7\" 4G";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[28] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFAPWI Build)");
parser[1] = "Kindle Fire HDX 8.9\" WiFi";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[29] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KFAPWA Build)");
parser[1] = "Kindle Fire HDX 8.9\" 4G";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[30] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Kindle Fire)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[31] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Kindle)");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[32] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Silk)/(\\d+)\\.(\\d+)(?:\\.([0-9\\-]+))?");
parser[1] = "Kindle Fire";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[33] = parser;
parser = Object.create(null);
parser[0] = new RegExp("NokiaN([0-9]+)");
parser[1] = "Nokia N$1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[34] = parser;
parser = Object.create(null);
parser[0] = new RegExp("NOKIA([A-Za-z0-9\\v-]+)");
parser[1] = "Nokia $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[35] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Nokia([A-Za-z0-9\\v-]+)");
parser[1] = "Nokia $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[36] = parser;
parser = Object.create(null);
parser[0] = new RegExp("NOKIA ([A-Za-z0-9\\-]+)");
parser[1] = "Nokia $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[37] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Nokia ([A-Za-z0-9\\-]+)");
parser[1] = "Nokia $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[38] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Lumia ([A-Za-z0-9\\-]+)");
parser[1] = "Lumia $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[39] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Symbian");
parser[1] = "Nokia";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[40] = parser;
parser = Object.create(null);
parser[0] = new RegExp("BB10; ([A-Za-z0-9\\- ]+)\\)");
parser[1] = "BlackBerry $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[41] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(PlayBook).+RIM Tablet OS");
parser[1] = "BlackBerry Playbook";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[42] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Black[Bb]erry ([0-9]+);");
parser[1] = "BlackBerry $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[43] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Black[Bb]erry([0-9]+)");
parser[1] = "BlackBerry $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[44] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Black[Bb]erry;");
parser[1] = "BlackBerry";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[45] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Pre)/(\\d+)\\.(\\d+)");
parser[1] = "Palm Pre";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[46] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Pixi)/(\\d+)\\.(\\d+)");
parser[1] = "Palm Pixi";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[47] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(Touch[Pp]ad)/(\\d+)\\.(\\d+)");
parser[1] = "HP TouchPad";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[48] = parser;
parser = Object.create(null);
parser[0] = new RegExp("HPiPAQ([A-Za-z0-9]+)/(\\d+).(\\d+)");
parser[1] = "HP iPAQ $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[49] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Palm([A-Za-z0-9]+)");
parser[1] = "Palm $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[50] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Treo([A-Za-z0-9]+)");
parser[1] = "Palm Treo $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[51] = parser;
parser = Object.create(null);
parser[0] = new RegExp("webOS.*(P160UNA)/(\\d+).(\\d+)");
parser[1] = "HP Veer";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[52] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(AppleTV)");
parser[1] = "AppleTV";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[53] = parser;
parser = Object.create(null);
parser[0] = new RegExp("AdsBot-Google-Mobile");
parser[1] = "Spider";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[54] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Googlebot-Mobile/(\\d+).(\\d+)");
parser[1] = "Spider";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[55] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Googlebot/\\d+.\\d+");
parser[1] = "Spider";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[56] = parser;
parser = Object.create(null);
parser[0] = new RegExp("NING/(\\d+).(\\d+)");
parser[1] = "Spider";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[57] = parser;
parser = Object.create(null);
parser[0] = new RegExp("MsnBot-Media /(\\d+).(\\d+)");
parser[1] = "Spider";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[58] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPad) Simulator;");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[59] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPad);");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[60] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPod) touch;");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[61] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPod);");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[62] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPhone) Simulator;");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[63] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(iPhone);");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[64] = parser;
parser = Object.create(null);
parser[0] = new RegExp("acer_([A-Za-z0-9]+)_");
parser[1] = "Acer $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[65] = parser;
parser = Object.create(null);
parser[0] = new RegExp("acer_([A-Za-z0-9]+)_");
parser[1] = "Acer $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[66] = parser;
parser = Object.create(null);
parser[0] = new RegExp("ALCATEL-([A-Za-z0-9]+)");
parser[1] = "Alcatel $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[67] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Alcatel-([A-Za-z0-9]+)");
parser[1] = "Alcatel $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[68] = parser;
parser = Object.create(null);
parser[0] = new RegExp("ALCATEL_ONE_TOUCH_([A-Za-z0-9]+)");
parser[1] = "Alcatel ONE TOUCH $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[69] = parser;
parser = Object.create(null);
parser[0] = new RegExp("ALCATEL (ONE TOUCH [A-Za-z0-9]+)");
parser[1] = "Alcatel $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[70] = parser;
parser = Object.create(null);
parser[0] = new RegExp("ALCATEL (one touch [A-Za-z0-9]+)");
parser[1] = "Alcatel $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[71] = parser;
parser = Object.create(null);
parser[0] = new RegExp("ALCATEL ([A-Za-z0-9]+)");
parser[1] = "Alcatel $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[72] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Amoi\\-([A-Za-z0-9]+)");
parser[1] = "Amoi $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[73] = parser;
parser = Object.create(null);
parser[0] = new RegExp("AMOI\\-([A-Za-z0-9]+)");
parser[1] = "Amoi $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[74] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Asus\\-([A-Za-z0-9]+)");
parser[1] = "Asus $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[75] = parser;
parser = Object.create(null);
parser[0] = new RegExp("ASUS\\-([A-Za-z0-9]+)");
parser[1] = "Asus $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[76] = parser;
parser = Object.create(null);
parser[0] = new RegExp("BIRD\\-([A-Za-z0-9]+)");
parser[1] = "Bird $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[77] = parser;
parser = Object.create(null);
parser[0] = new RegExp("BIRD\\.([A-Za-z0-9]+)");
parser[1] = "Bird $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[78] = parser;
parser = Object.create(null);
parser[0] = new RegExp("BIRD ([A-Za-z0-9]+)");
parser[1] = "Bird $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[79] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Dell ([A-Za-z0-9]+)");
parser[1] = "Dell $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[80] = parser;
parser = Object.create(null);
parser[0] = new RegExp("DoCoMo/2\\.0 ([A-Za-z0-9]+)");
parser[1] = "DoCoMo $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[81] = parser;
parser = Object.create(null);
parser[0] = new RegExp("([A-Za-z0-9]+)_W\\;FOMA");
parser[1] = "DoCoMo $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[82] = parser;
parser = Object.create(null);
parser[0] = new RegExp("([A-Za-z0-9]+)\\;FOMA");
parser[1] = "DoCoMo $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[83] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Huawei([A-Za-z0-9]+)");
parser[1] = "Huawei $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[84] = parser;
parser = Object.create(null);
parser[0] = new RegExp("HUAWEI-([A-Za-z0-9]+)");
parser[1] = "Huawei $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[85] = parser;
parser = Object.create(null);
parser[0] = new RegExp("vodafone([A-Za-z0-9]+)");
parser[1] = "Huawei Vodafone $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[86] = parser;
parser = Object.create(null);
parser[0] = new RegExp("i\\-mate ([A-Za-z0-9]+)");
parser[1] = "i-mate $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[87] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Kyocera\\-([A-Za-z0-9]+)");
parser[1] = "Kyocera $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[88] = parser;
parser = Object.create(null);
parser[0] = new RegExp("KWC\\-([A-Za-z0-9]+)");
parser[1] = "Kyocera $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[89] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Lenovo\\-([A-Za-z0-9]+)");
parser[1] = "Lenovo $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[90] = parser;
parser = Object.create(null);
parser[0] = new RegExp("Lenovo_([A-Za-z0-9]+)");
parser[1] = "Lenovo $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[91] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(HbbTV)/[0-9]+\\.[0-9]+\\.[0-9]+");
parser[1] = 0;
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[92] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LG/([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[93] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LG-LG([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[94] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LGE-LG([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[95] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LGE VX([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[96] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LG ([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[97] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LGE LG\\-AX([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[98] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LG\\-([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[99] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LGE\\-([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[100] = parser;
parser = Object.create(null);
parser[0] = new RegExp("LG([A-Za-z0-9]+)");
parser[1] = "LG $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[101] = parser;
parser = Object.create(null);
parser[0] = new RegExp("(KIN)\\.One (\\d+)\\.(\\d+)");
parser[1] = "Microsoft $1";
parser[2] = 0;
parser[3] = 0;
parser[4] = 0;
exports.device[102] = parser;
parser = Object.crea