quilk-js-error-reporting
Version:
Capture and send client-side errors from your production environments as they happen and for free. Add as much extra custom data to each report as you need.
2 lines • 56.6 kB
JavaScript
!function(e,r){Array.prototype.map||(Array.prototype.map=function(e,r){var n,t,a;if(null==this)throw new TypeError(" this is null or not defined");var o=Object(this),i=o.length>>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(r&&(n=r),t=new Array(i),a=0;a<i;){var c,s;a in o&&(c=o[a],s=e.call(n,c,a,o),t[a]=s),a++}return t});var n=e.detect=function(){var e=function(){},r={browser_parsers:[{regex:"^(Opera)/(\\d+)\\.(\\d+) \\(Nintendo Wii",family_replacement:"Wii",manufacturer:"Nintendo"},{regex:"(SeaMonkey|Camino)/(\\d+)\\.(\\d+)\\.?([ab]?\\d+[a-z]*)",family_replacement:"Camino",other:!0},{regex:"(Pale[Mm]oon)/(\\d+)\\.(\\d+)\\.?(\\d+)?",family_replacement:"Pale Moon (Firefox Variant)",other:!0},{regex:"(Fennec)/(\\d+)\\.(\\d+)\\.?([ab]?\\d+[a-z]*)",family_replacement:"Firefox Mobile"},{regex:"(Fennec)/(\\d+)\\.(\\d+)(pre)",family_replacment:"Firefox Mobile"},{regex:"(Fennec)/(\\d+)\\.(\\d+)",family_replacement:"Firefox Mobile"},{regex:"Mobile.*(Firefox)/(\\d+)\\.(\\d+)",family_replacement:"Firefox Mobile"},{regex:"(Namoroka|Shiretoko|Minefield)/(\\d+)\\.(\\d+)\\.(\\d+(?:pre)?)",family_replacement:"Firefox ($1)"},{regex:"(Firefox)/(\\d+)\\.(\\d+)(a\\d+[a-z]*)",family_replacement:"Firefox Alpha"},{regex:"(Firefox)/(\\d+)\\.(\\d+)(b\\d+[a-z]*)",family_replacement:"Firefox Beta"},{regex:"(Firefox)-(?:\\d+\\.\\d+)?/(\\d+)\\.(\\d+)(a\\d+[a-z]*)",family_replacement:"Firefox Alpha"},{regex:"(Firefox)-(?:\\d+\\.\\d+)?/(\\d+)\\.(\\d+)(b\\d+[a-z]*)",family_replacement:"Firefox Beta"},{regex:"(Namoroka|Shiretoko|Minefield)/(\\d+)\\.(\\d+)([ab]\\d+[a-z]*)?",family_replacement:"Firefox ($1)"},{regex:"(Firefox).*Tablet browser (\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"MicroB",tablet:!0},{regex:"(MozillaDeveloperPreview)/(\\d+)\\.(\\d+)([ab]\\d+[a-z]*)?"},{regex:"(Flock)/(\\d+)\\.(\\d+)(b\\d+?)",family_replacement:"Flock",other:!0},{regex:"(RockMelt)/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Rockmelt",other:!0},{regex:"(Navigator)/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Netscape"},{regex:"(Navigator)/(\\d+)\\.(\\d+)([ab]\\d+)",family_replacement:"Netscape"},{regex:"(Netscape6)/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Netscape"},{regex:"(MyIBrow)/(\\d+)\\.(\\d+)",family_replacement:"My Internet Browser",other:!0},{regex:"(Opera Tablet).*Version/(\\d+)\\.(\\d+)(?:\\.(\\d+))?",family_replacement:"Opera Tablet",tablet:!0},{regex:"(Opera)/.+Opera Mobi.+Version/(\\d+)\\.(\\d+)",family_replacement:"Opera Mobile"},{regex:"Opera Mobi",family_replacement:"Opera Mobile"},{regex:"(Opera Mini)/(\\d+)\\.(\\d+)",family_replacement:"Opera Mini"},{regex:"(Opera Mini)/att/(\\d+)\\.(\\d+)",family_replacement:"Opera Mini"},{regex:"(Opera)/9.80.*Version/(\\d+)\\.(\\d+)(?:\\.(\\d+))?",family_replacement:"Opera"},{regex:"(OPR)/(\\d+)\\.(\\d+)(?:\\.(\\d+))?",family_replacement:"Opera"},{regex:"(webOSBrowser)/(\\d+)\\.(\\d+)",family_replacement:"webOS"},{regex:"(webOS)/(\\d+)\\.(\\d+)",family_replacement:"webOS"},{regex:"(wOSBrowser).+TouchPad/(\\d+)\\.(\\d+)",family_replacement:"webOS TouchPad"},{regex:"(luakit)",family_replacement:"LuaKit",other:!0},{regex:"(Lightning)/(\\d+)\\.(\\d+)([ab]?\\d+[a-z]*)",family_replacement:"Lightning",other:!0},{regex:"(Firefox)/(\\d+)\\.(\\d+)\\.(\\d+(?:pre)?) \\(Swiftfox\\)",family_replacement:"Swiftfox",other:!0},{regex:"(Firefox)/(\\d+)\\.(\\d+)([ab]\\d+[a-z]*)? \\(Swiftfox\\)",family_replacement:"Swiftfox",other:!0},{regex:"rekonq",family_replacement:"Rekonq",other:!0},{regex:"(conkeror|Conkeror)/(\\d+)\\.(\\d+)\\.?(\\d+)?",family_replacement:"Conkeror",other:!0},{regex:"(konqueror)/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Konqueror",other:!0},{regex:"(WeTab)-Browser",family_replacement:"WeTab",other:!0},{regex:"(Comodo_Dragon)/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Comodo Dragon",other:!0},{regex:"(YottaaMonitor)",family_replacement:"Yottaa Monitor",other:!0},{regex:"(Kindle)/(\\d+)\\.(\\d+)",family_replacement:"Kindle"},{regex:"(Symphony) (\\d+).(\\d+)",family_replacement:"Symphony",other:!0},{regex:"Minimo",family_replacement:"Minimo",other:!0},{regex:"(Edge)/(\\d+)\\.(\\d+)",family_replacement:"Edge"},{regex:"(CrMo)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Chrome Mobile"},{regex:"(CriOS)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Chrome Mobile iOS"},{regex:"(Chrome)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+) Mobile",family_replacement:"Chrome Mobile"},{regex:"(chromeframe)/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Chrome Frame"},{regex:"(UC Browser)(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"UC Browser",other:!0},{regex:"(SLP Browser)/(\\d+)\\.(\\d+)",family_replacement:"Tizen Browser",other:!0},{regex:"(Epiphany)/(\\d+)\\.(\\d+).(\\d+)",family_replacement:"Epiphany",other:!0},{regex:"(SE 2\\.X) MetaSr (\\d+)\\.(\\d+)",family_replacement:"Sogou Explorer",other:!0},{regex:"(Pingdom.com_bot_version_)(\\d+)\\.(\\d+)",family_replacement:"PingdomBot",other:!0},{regex:"(facebookexternalhit)/(\\d+)\\.(\\d+)",family_replacement:"FacebookBot"},{regex:"(Twitterbot)/(\\d+)\\.(\\d+)",family_replacement:"TwitterBot"},{regex:"(AdobeAIR|Chromium|FireWeb|Jasmine|ANTGalio|Midori|Fresco|Lobo|PaleMoon|Maxthon|Lynx|OmniWeb|Dillo|Camino|Demeter|Fluid|Fennec|Shiira|Sunrise|Chrome|Flock|Netscape|Lunascape|WebPilot|NetFront|Netfront|Konqueror|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|Opera Mini|iCab|NetNewsWire|ThunderBrowse|Iron|Iris|UP\\.Browser|Bunjaloo|Google Earth|Raven for Mac)/(\\d+)\\.(\\d+)\\.(\\d+)"},{regex:"(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|Iron|Space Bison|Stainless|Orca|Dolfin|BOLT|Minimo|Tizen Browser|Polaris)/(\\d+)\\.(\\d+)"},{regex:"(iRider|Crazy Browser|SkipStone|iCab|Lunascape|Sleipnir|Maemo Browser) (\\d+)\\.(\\d+)\\.(\\d+)"},{regex:"(iCab|Lunascape|Opera|Android|Jasmine|Polaris|BREW) (\\d+)\\.(\\d+)\\.?(\\d+)?"},{regex:"(Android) Donut",v2_replacement:"2",v1_replacement:"1"},{regex:"(Android) Eclair",v2_replacement:"1",v1_replacement:"2"},{regex:"(Android) Froyo",v2_replacement:"2",v1_replacement:"2"},{regex:"(Android) Gingerbread",v2_replacement:"3",v1_replacement:"2"},{regex:"(Android) Honeycomb",v1_replacement:"3"},{regex:"(IEMobile)[ /](\\d+)\\.(\\d+)",family_replacement:"IE Mobile"},{regex:"(MSIE) (\\d+)\\.(\\d+).*XBLWP7",family_replacement:"IE Large Screen"},{regex:"(Firefox)/(\\d+)\\.(\\d+)\\.(\\d+)"},{regex:"(Firefox)/(\\d+)\\.(\\d+)(pre|[ab]\\d+[a-z]*)?"},{regex:"(Obigo)InternetBrowser",other:!0},{regex:"(Obigo)\\-Browser",other:!0},{regex:"(Obigo|OBIGO)[^\\d]*(\\d+)(?:.(\\d+))?",other:!0},{regex:"(MAXTHON|Maxthon) (\\d+)\\.(\\d+)",family_replacement:"Maxthon",other:!0},{regex:"(Maxthon|MyIE2|Uzbl|Shiira)",v1_replacement:"0",other:!0},{regex:"(PLAYSTATION) (\\d+)",family_replacement:"PlayStation",manufacturer:"Sony"},{regex:"(PlayStation Portable)[^\\d]+(\\d+).(\\d+)",manufacturer:"Sony"},{regex:"(BrowseX) \\((\\d+)\\.(\\d+)\\.(\\d+)",other:!0},{regex:"(POLARIS)/(\\d+)\\.(\\d+)",family_replacement:"Polaris",other:!0},{regex:"(Embider)/(\\d+)\\.(\\d+)",family_replacement:"Polaris",other:!0},{regex:"(BonEcho)/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Bon Echo",other:!0},{regex:"(iPod).+Version/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Mobile Safari",manufacturer:"Apple"},{regex:"(iPod).*Version/(\\d+)\\.(\\d+)",family_replacement:"Mobile Safari",manufacturer:"Apple"},{regex:"(iPod)",family_replacement:"Mobile Safari",manufacturer:"Apple"},{regex:"(iPhone).*Version/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Mobile Safari",manufacturer:"Apple"},{regex:"(iPhone).*Version/(\\d+)\\.(\\d+)",family_replacement:"Mobile Safari",manufacturer:"Apple"},{regex:"(iPhone)",family_replacement:"Mobile Safari",manufacturer:"Apple"},{regex:"(iPad).*Version/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Mobile Safari",tablet:!0,manufacturer:"Apple"},{regex:"(iPad).*Version/(\\d+)\\.(\\d+)",family_replacement:"Mobile Safari",tablet:!0,manufacturer:"Apple"},{regex:"(iPad)",family_replacement:"Mobile Safari",tablet:!0,manufacturer:"Apple"},{regex:"(AvantGo) (\\d+).(\\d+)",other:!0},{regex:"(Avant)",v1_replacement:"1",other:!0},{regex:"^(Nokia)",family_replacement:"Nokia Services (WAP) Browser",manufacturer:"Nokia"},{regex:"(NokiaBrowser)/(\\d+)\\.(\\d+).(\\d+)\\.(\\d+)",manufacturer:"Nokia"},{regex:"(NokiaBrowser)/(\\d+)\\.(\\d+).(\\d+)",manufacturer:"Nokia"},{regex:"(NokiaBrowser)/(\\d+)\\.(\\d+)",manufacturer:"Nokia"},{regex:"(BrowserNG)/(\\d+)\\.(\\d+).(\\d+)",family_replacement:"NokiaBrowser",manufacturer:"Nokia"},{regex:"(Series60)/5\\.0",v2_replacement:"0",v1_replacement:"7",family_replacement:"NokiaBrowser",manufacturer:"Nokia"},{regex:"(Series60)/(\\d+)\\.(\\d+)",family_replacement:"Nokia OSS Browser",manufacturer:"Nokia"},{regex:"(S40OviBrowser)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Nokia Series 40 Ovi Browser",manufacturer:"Nokia"},{regex:"(Nokia)[EN]?(\\d+)",manufacturer:"Nokia"},{regex:"(PlayBook).+RIM Tablet OS (\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Blackberry WebKit",tablet:!0,manufacturer:"Nokia"},{regex:"(Black[bB]erry).+Version/(\\d+)\\.(\\d+)\\.(\\d+)",family_replacement:"Blackberry WebKit",manufacturer:"RIM"},{regex:"(Black[bB]erry)\\s?(\\d+)",family_replacement:"Blackberry",manufacturer:"RIM"},{regex:"(OmniWeb)/v(\\d+)\\.(\\d+)",other:!0},{regex:"(Blazer)/(\\d+)\\.(\\d+)",family_replacement:"Palm Blazer",manufacturer:"Palm"},{regex:"(Pre)/(\\d+)\\.(\\d+)",family_replacement:"Palm Pre",manufacturer:"Palm"},{regex:"(Links) \\((\\d+)\\.(\\d+)",other:!0},{regex:"(QtWeb) Internet Browser/(\\d+)\\.(\\d+)",other:!0},{regex:"(Silk)/(\\d+)\\.(\\d+)(?:\\.([0-9\\-]+))?",other:!0,tablet:!0},{regex:"(AppleWebKit)/(\\d+)\\.?(\\d+)?\\+ .* Version/\\d+\\.\\d+.\\d+ Safari/",family_replacement:"WebKit Nightly"},{regex:"(Version)/(\\d+)\\.(\\d+)(?:\\.(\\d+))?.*Safari/",family_replacement:"Safari"},{regex:"(Safari)/\\d+"},{regex:"(OLPC)/Update(\\d+)\\.(\\d+)",other:!0},{regex:"(OLPC)/Update()\\.(\\d+)",v1_replacement:"0",other:!0},{regex:"(SEMC\\-Browser)/(\\d+)\\.(\\d+)",other:!0},{regex:"(Teleca)",family_replacement:"Teleca Browser",other:!0},{regex:"Trident(.*)rv.(\\d+)\\.(\\d+)",family_replacement:"IE"},{regex:"(MSIE) (\\d+)\\.(\\d+)",family_replacement:"IE"}],os_parsers:[{regex:"(Android) (\\d+)\\.(\\d+)(?:[.\\-]([a-z0-9]+))?"},{regex:"(Android)\\-(\\d+)\\.(\\d+)(?:[.\\-]([a-z0-9]+))?"},{regex:"(Android) Donut",os_v2_replacement:"2",os_v1_replacement:"1"},{regex:"(Android) Eclair",os_v2_replacement:"1",os_v1_replacement:"2"},{regex:"(Android) Froyo",os_v2_replacement:"2",os_v1_replacement:"2"},{regex:"(Android) Gingerbread",os_v2_replacement:"3",os_v1_replacement:"2"},{regex:"(Android) Honeycomb",os_v1_replacement:"3"},{regex:"(Silk-Accelerated=[a-z]{4,5})",os_replacement:"Android"},{regex:"(Windows Phone 6\\.5)"},{regex:"(Windows (?:NT 5\\.2|NT 5\\.1))",os_replacement:"Windows XP"},{regex:"(XBLWP7)",os_replacement:"Windows Phone OS"},{regex:"(Windows NT 6\\.1)",os_replacement:"Windows 7"},{regex:"(Windows NT 6\\.0)",os_replacement:"Windows Vista"},{regex:"(Windows 98|Windows XP|Windows ME|Windows 95|Windows CE|Windows 7|Windows NT 4\\.0|Windows Vista|Windows 2000)"},{regex:"(Windows NT 6\\.4|Windows NT 10\\.0)",os_replacement:"Windows 10"},{regex:"(Windows NT 6\\.2)",os_replacement:"Windows 8"},{regex:"(Windows Phone 8)",os_replacement:"Windows Phone 8"},{regex:"(Windows NT 5\\.0)",os_replacement:"Windows 2000"},{regex:"(Windows Phone OS) (\\d+)\\.(\\d+)"},{regex:"(Windows ?Mobile)",os_replacement:"Windows Mobile"},{regex:"(WinNT4.0)",os_replacement:"Windows NT 4.0"},{regex:"(Win98)",os_replacement:"Windows 98"},{regex:"(Tizen)/(\\d+)\\.(\\d+)",other:!0},{regex:"(Mac OS X) (\\d+)[_.](\\d+)(?:[_.](\\d+))?",manufacturer:"Apple"},{regex:"(?:PPC|Intel) (Mac OS X)",manufacturer:"Apple"},{regex:"(CPU OS|iPhone OS) (\\d+)_(\\d+)(?:_(\\d+))?",os_replacement:"iOS",manufacturer:"Apple"},{regex:"(iPhone|iPad|iPod); Opera",os_replacement:"iOS",manufacturer:"Apple"},{regex:"(iPad); Opera",tablet:!0,manufacturer:"Apple"},{regex:"(iPhone|iPad|iPod).*Mac OS X.*Version/(\\d+)\\.(\\d+)",os_replacement:"iOS",manufacturer:"Apple"},{regex:"(CrOS) [a-z0-9_]+ (\\d+)\\.(\\d+)(?:\\.(\\d+))?",os_replacement:"Chrome OS"},{regex:"(Debian)-(\\d+)\\.(\\d+)\\.(\\d+)(?:\\.(\\d+))?",other:!0},{regex:"(Linux Mint)(?:/(\\d+))?",other:!0},{regex:"(Mandriva)(?: Linux)?/(\\d+)\\.(\\d+)\\.(\\d+)(?:\\.(\\d+))?",other:!0},{regex:"(Symbian[Oo][Ss])/(\\d+)\\.(\\d+)",os_replacement:"Symbian OS"},{regex:"(Symbian/3).+NokiaBrowser/7\\.3",os_replacement:"Symbian^3 Anna"},{regex:"(Symbian/3).+NokiaBrowser/7\\.4",os_replacement:"Symbian^3 Belle"},{regex:"(Symbian/3)",os_replacement:"Symbian^3"},{regex:"(Series 60|SymbOS|S60)",os_replacement:"Symbian OS"},{regex:"(MeeGo)",other:!0},{regex:"Symbian [Oo][Ss]",os_replacement:"Symbian OS"},{regex:"(Black[Bb]erry)[0-9a-z]+/(\\d+)\\.(\\d+)\\.(\\d+)(?:\\.(\\d+))?",os_replacement:"BlackBerry OS",manufacturer:"RIM"},{regex:"(Black[Bb]erry).+Version/(\\d+)\\.(\\d+)\\.(\\d+)(?:\\.(\\d+))?",os_replacement:"BlackBerry OS",manufacturer:"RIM"},{regex:"(RIM Tablet OS) (\\d+)\\.(\\d+)\\.(\\d+)",os_replacement:"BlackBerry Tablet OS",tablet:!0,manufacturer:"RIM"},{regex:"(Play[Bb]ook)",os_replacement:"BlackBerry Tablet OS",tablet:!0,manufacturer:"RIM"},{regex:"(Black[Bb]erry)",os_replacement:"Blackberry OS",manufacturer:"RIM"},{regex:"(webOS|hpwOS)/(\\d+)\\.(\\d+)(?:\\.(\\d+))?",os_replacement:"webOS"},{regex:"(SUSE|Fedora|Red Hat|PCLinuxOS)/(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)",other:!0},{regex:"(SUSE|Fedora|Red Hat|Puppy|PCLinuxOS|CentOS)/(\\d+)\\.(\\d+)\\.(\\d+)",other:!0},{regex:"(Ubuntu|Kindle|Bada|Lubuntu|BackTrack|Red Hat|Slackware)/(\\d+)\\.(\\d+)"},{regex:"(Windows|OpenBSD|FreeBSD|NetBSD|Ubuntu|Kubuntu|Android|Arch Linux|CentOS|WeTab|Slackware)"},{regex:"(Linux|BSD)",other:!0}],mobile_os_families:["Windows Phone 6.5","Windows CE","Symbian OS"],device_parsers:[{regex:"HTC ([A-Z][a-z0-9]+) Build",device_replacement:"HTC $1",manufacturer:"HTC"},{regex:"HTC ([A-Z][a-z0-9 ]+) \\d+\\.\\d+\\.\\d+\\.\\d+",device_replacement:"HTC $1",manufacturer:"HTC"},{regex:"HTC_Touch_([A-Za-z0-9]+)",device_replacement:"HTC Touch ($1)",manufacturer:"HTC"},{regex:"USCCHTC(\\d+)",device_replacement:"HTC $1 (US Cellular)",manufacturer:"HTC"},{regex:"Sprint APA(9292)",device_replacement:"HTC $1 (Sprint)",manufacturer:"HTC"},{regex:"HTC ([A-Za-z0-9]+ [A-Z])",device_replacement:"HTC $1",manufacturer:"HTC"},{regex:"HTC-([A-Za-z0-9]+)",device_replacement:"HTC $1",manufacturer:"HTC"},{regex:"HTC_([A-Za-z0-9]+)",device_replacement:"HTC $1",manufacturer:"HTC"},{regex:"HTC ([A-Za-z0-9]+)",device_replacement:"HTC $1",manufacturer:"HTC"},{regex:"(ADR[A-Za-z0-9]+)",device_replacement:"HTC $1",manufacturer:"HTC"},{regex:"(HTC)",manufacturer:"HTC"},{regex:"SonyEricsson([A-Za-z0-9]+)/",device_replacement:"Ericsson $1",other:!0,manufacturer:"Sony"},{regex:"Android[\\- ][\\d]+\\.[\\d]+\\; [A-Za-z]{2}\\-[A-Za-z]{2}\\; WOWMobile (.+) Build"},{regex:"Android[\\- ][\\d]+\\.[\\d]+\\.[\\d]+; [A-Za-z]{2}\\-[A-Za-z]{2}\\; (.+) Build"},{regex:"Android[\\- ][\\d]+\\.[\\d]+\\-update1\\; [A-Za-z]{2}\\-[A-Za-z]{2}\\; (.+) Build"},{regex:"Android[\\- ][\\d]+\\.[\\d]+\\; [A-Za-z]{2}\\-[A-Za-z]{2}\\; (.+) Build"},{regex:"Android[\\- ][\\d]+\\.[\\d]+\\.[\\d]+; (.+) Build"},{regex:"NokiaN([0-9]+)",device_replacement:"Nokia N$1",manufacturer:"Nokia"},{regex:"Nokia([A-Za-z0-9\\v-]+)",device_replacement:"Nokia $1",manufacturer:"Nokia"},{regex:"NOKIA ([A-Za-z0-9\\-]+)",device_replacement:"Nokia $1",manufacturer:"Nokia"},{regex:"Nokia ([A-Za-z0-9\\-]+)",device_replacement:"Nokia $1",manufacturer:"Nokia"},{regex:"Lumia ([A-Za-z0-9\\-]+)",device_replacement:"Lumia $1",manufacturer:"Nokia"},{regex:"Symbian",device_replacement:"Nokia",manufacturer:"Nokia"},{regex:"(PlayBook).+RIM Tablet OS",device_replacement:"Blackberry Playbook",tablet:!0,manufacturer:"RIM"},{regex:"(Black[Bb]erry [0-9]+);",manufacturer:"RIM"},{regex:"Black[Bb]erry([0-9]+)",device_replacement:"BlackBerry $1",manufacturer:"RIM"},{regex:"(Pre)/(\\d+)\\.(\\d+)",device_replacement:"Palm Pre",manufacturer:"Palm"},{regex:"(Pixi)/(\\d+)\\.(\\d+)",device_replacement:"Palm Pixi",manufacturer:"Palm"},{regex:"(Touchpad)/(\\d+)\\.(\\d+)",device_replacement:"HP Touchpad",manufacturer:"HP"},{regex:"HPiPAQ([A-Za-z0-9]+)/(\\d+).(\\d+)",device_replacement:"HP iPAQ $1",manufacturer:"HP"},{regex:"Palm([A-Za-z0-9]+)",device_replacement:"Palm $1",manufacturer:"Palm"},{regex:"Treo([A-Za-z0-9]+)",device_replacement:"Palm Treo $1",manufacturer:"Palm"},{regex:"webOS.*(P160UNA)/(\\d+).(\\d+)",device_replacement:"HP Veer",manufacturer:"HP"},{regex:"(Kindle Fire)",manufacturer:"Amazon"},{regex:"(Kindle)",manufacturer:"Amazon"},{regex:"(Silk)/(\\d+)\\.(\\d+)(?:\\.([0-9\\-]+))?",device_replacement:"Kindle Fire",tablet:!0,manufacturer:"Amazon"},{regex:"(iPad) Simulator;",manufacturer:"Apple"},{regex:"(iPad);",manufacturer:"Apple"},{regex:"(iPod);",manufacturer:"Apple"},{regex:"(iPhone) Simulator;",manufacturer:"Apple"},{regex:"(iPhone);",manufacturer:"Apple"},{regex:"Nexus\\ ([A-Za-z0-9\\-]+)",device_replacement:"Nexus $1"},{regex:"acer_([A-Za-z0-9]+)_",device_replacement:"Acer $1",manufacturer:"Acer"},{regex:"acer_([A-Za-z0-9]+)_",device_replacement:"Acer $1",manufacturer:"Acer"},{regex:"Amoi\\-([A-Za-z0-9]+)",device_replacement:"Amoi $1",other:!0,manufacturer:"Amoi"},{regex:"AMOI\\-([A-Za-z0-9]+)",device_replacement:"Amoi $1",other:!0,manufacturer:"Amoi"},{regex:"Asus\\-([A-Za-z0-9]+)",device_replacement:"Asus $1",manufacturer:"Asus"},{regex:"ASUS\\-([A-Za-z0-9]+)",device_replacement:"Asus $1",manufacturer:"Asus"},{regex:"BIRD\\-([A-Za-z0-9]+)",device_replacement:"Bird $1",other:!0},{regex:"BIRD\\.([A-Za-z0-9]+)",device_replacement:"Bird $1",other:!0},{regex:"BIRD ([A-Za-z0-9]+)",device_replacement:"Bird $1",other:!0},{regex:"Dell ([A-Za-z0-9]+)",device_replacement:"Dell $1",manufacturer:"Dell"},{regex:"DoCoMo/2\\.0 ([A-Za-z0-9]+)",device_replacement:"DoCoMo $1",other:!0},{regex:"([A-Za-z0-9]+)\\_W\\;FOMA",device_replacement:"DoCoMo $1",other:!0},{regex:"([A-Za-z0-9]+)\\;FOMA",device_replacement:"DoCoMo $1",other:!0},{regex:"vodafone([A-Za-z0-9]+)",device_replacement:"Huawei Vodafone $1",other:!0},{regex:"i\\-mate ([A-Za-z0-9]+)",device_replacement:"i-mate $1",other:!0},{regex:"Kyocera\\-([A-Za-z0-9]+)",device_replacement:"Kyocera $1",other:!0},{regex:"KWC\\-([A-Za-z0-9]+)",device_replacement:"Kyocera $1",other:!0},{regex:"Lenovo\\-([A-Za-z0-9]+)",device_replacement:"Lenovo $1",manufacturer:"Lenovo"},{regex:"Lenovo\\_([A-Za-z0-9]+)",device_replacement:"Lenovo $1",manufacturer:"Levovo"},{regex:"LG/([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"LG-LG([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"LGE-LG([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"LGE VX([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"LG ([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"LGE LG\\-AX([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"LG\\-([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"LGE\\-([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"LG([A-Za-z0-9]+)",device_replacement:"LG $1",manufacturer:"LG"},{regex:"(KIN)\\.One (\\d+)\\.(\\d+)",device_replacement:"Microsoft $1"},{regex:"(KIN)\\.Two (\\d+)\\.(\\d+)",device_replacement:"Microsoft $1"},{regex:"(Motorola)\\-([A-Za-z0-9]+)",manufacturer:"Motorola"},{regex:"MOTO\\-([A-Za-z0-9]+)",device_replacement:"Motorola $1",manufacturer:"Motorola"},{regex:"MOT\\-([A-Za-z0-9]+)",device_replacement:"Motorola $1",manufacturer:"Motorola"},{regex:"Philips([A-Za-z0-9]+)",device_replacement:"Philips $1",manufacturer:"Philips"},{regex:"Philips ([A-Za-z0-9]+)",device_replacement:"Philips $1",manufacturer:"Philips"},{regex:"SAMSUNG-([A-Za-z0-9\\-]+)",device_replacement:"Samsung $1",manufacturer:"Samsung"},{regex:"SAMSUNG\\; ([A-Za-z0-9\\-]+)",device_replacement:"Samsung $1",manufacturer:"Samsung"},{regex:"Softbank/1\\.0/([A-Za-z0-9]+)",device_replacement:"Softbank $1",other:!0},{regex:"Softbank/2\\.0/([A-Za-z0-9]+)",device_replacement:"Softbank $1",other:!0},{regex:"(hiptop|avantgo|plucker|xiino|blazer|elaine|up.browser|up.link|mmp|smartphone|midp|wap|vodafone|o2|pocket|mobile|pda)",device_replacement:"Generic Smartphone"},{regex:"^(1207|3gso|4thp|501i|502i|503i|504i|505i|506i|6310|6590|770s|802s|a wa|acer|acs\\-|airn|alav|asus|attw|au\\-m|aur |aus |abac|acoo|aiko|alco|alca|amoi|anex|anny|anyw|aptu|arch|argo|bell|bird|bw\\-n|bw\\-u|beck|benq|bilb|blac|c55/|cdm\\-|chtm|capi|comp|cond|craw|dall|dbte|dc\\-s|dica|ds\\-d|ds12|dait|devi|dmob|doco|dopo|el49|erk0|esl8|ez40|ez60|ez70|ezos|ezze|elai|emul|eric|ezwa|fake|fly\\-|fly\\_|g\\-mo|g1 u|g560|gf\\-5|grun|gene|go.w|good|grad|hcit|hd\\-m|hd\\-p|hd\\-t|hei\\-|hp i|hpip|hs\\-c|htc |htc\\-|htca|htcg)",device_replacement:"Generic Feature Phone"},{regex:"^(htcp|htcs|htct|htc\\_|haie|hita|huaw|hutc|i\\-20|i\\-go|i\\-ma|i230|iac|iac\\-|iac/|ig01|im1k|inno|iris|jata|java|kddi|kgt|kgt/|kpt |kwc\\-|klon|lexi|lg g|lg\\-a|lg\\-b|lg\\-c|lg\\-d|lg\\-f|lg\\-g|lg\\-k|lg\\-l|lg\\-m|lg\\-o|lg\\-p|lg\\-s|lg\\-t|lg\\-u|lg\\-w|lg/k|lg/l|lg/u|lg50|lg54|lge\\-|lge/|lynx|leno|m1\\-w|m3ga|m50/|maui|mc01|mc21|mcca|medi|meri|mio8|mioa|mo01|mo02|mode|modo|mot |mot\\-|mt50|mtp1|mtv |mate|maxo|merc|mits|mobi|motv|mozz|n100|n101|n102|n202|n203|n300|n302|n500|n502|n505|n700|n701|n710|nec\\-|nem\\-|newg|neon)",device_replacement:"Generic Feature Phone"},{regex:"^(netf|noki|nzph|o2 x|o2\\-x|opwv|owg1|opti|oran|ot\\-s|p800|pand|pg\\-1|pg\\-2|pg\\-3|pg\\-6|pg\\-8|pg\\-c|pg13|phil|pn\\-2|pt\\-g|palm|pana|pire|pock|pose|psio|qa\\-a|qc\\-2|qc\\-3|qc\\-5|qc\\-7|qc07|qc12|qc21|qc32|qc60|qci\\-|qwap|qtek|r380|r600|raks|rim9|rove|s55/|sage|sams|sc01|sch\\-|scp\\-|sdk/|se47|sec\\-|sec0|sec1|semc|sgh\\-|shar|sie\\-|sk\\-0|sl45|slid|smb3|smt5|sp01|sph\\-|spv |spv\\-|sy01|samm|sany|sava|scoo|send|siem|smar|smit|soft|sony|t\\-mo|t218|t250|t600|t610|t618|tcl\\-|tdg\\-|telm|tim\\-|ts70|tsm\\-|tsm3|tsm5|tx\\-9|tagt)",device_replacement:"Generic Feature Phone"},{regex:"^(talk|teli|topl|tosh|up.b|upg1|utst|v400|v750|veri|vk\\-v|vk40|vk50|vk52|vk53|vm40|vx98|virg|vite|voda|vulc|w3c |w3c\\-|wapj|wapp|wapu|wapm|wig |wapi|wapr|wapv|wapy|wapa|waps|wapt|winc|winw|wonu|x700|xda2|xdag|yas\\-|your|zte\\-|zeto|aste|audi|avan|blaz|brew|brvw|bumb|ccwa|cell|cldc|cmd\\-|dang|eml2|fetc|hipt|http|ibro|idea|ikom|ipaq|jbro|jemu|jigs|keji|kyoc|kyok|libw|m\\-cr|midp|mmef|moto|mwbp|mywa|newt|nok6|o2im|pant|pdxg|play|pluc|port|prox|rozo|sama|seri|smal|symb|treo|upsi|vx52|vx53|vx60|vx61|vx70|vx80|vx81|vx83|vx85|wap\\-|webc|whit|wmlb|xda\\-|xda\\_)",device_replacement:"Generic Feature Phone"},{regex:"(bot|borg|google(^tv)|yahoo|slurp|msnbot|msrbot|openbot|archiver|netresearch|lycos|scooter|altavista|teoma|gigabot|baiduspider|blitzbot|oegp|charlotte|furlbot|http%20client|polybot|htdig|ichiro|mogimogi|larbin|pompos|scrubby|searchsight|seekbot|semanticdiscovery|silk|snappy|speedy|spider|voila|vortex|voyager|zao|zeal|fast\\-webcrawler|converacrawler|dataparksearch|findlinks)",device_replacement:"Spider"}],mobile_browser_families:["Firefox Mobile","Opera Mobile","Opera Mini","Mobile Safari","webOS","IE Mobile","Playstation Portable","Nokia","Blackberry","Palm","Silk","Android","Maemo","Obigo","Netfront","AvantGo","Teleca","SEMC-Browser","Bolt","Iris","UP.Browser","Symphony","Minimo","Bunjaloo","Jasmine","Dolfin","Polaris","BREW","Chrome Mobile","Chrome Mobile iOS","UC Browser","Tizen Browser"]};e.parsers=["device_parsers","browser_parsers","os_parsers","mobile_os_families","mobile_browser_families"],e.types=["browser","os","device"],e.regexes=r||function(){var r={};return e.parsers.map(function(e){r[e]=[]}),r}(),e.families=function(){var r={};return e.types.map(function(e){r[e]=[]}),r}();var n=Array.prototype,t=(Object.prototype,Function.prototype,n.forEach),a=(n.indexOf,function(e,r){for(var n={},t=0;t<r.length&&!(n=r[t](e));t++);return n}),o=function(e,r){i(e,function(e){i(r,function(r){delete e[r]})})},i=forEach=function(e,r,n){if(null!=e)if(t&&e.forEach===t)e.forEach(r,n);else if(e.length===+e.length)for(var a=0,o=e.length;a<o;a++)r.call(n,e[a],a,e);else for(var i in e)_.has(e,i)&&r.call(n,e[i],i,e)},c=function(e){return!(!e||"undefined"==typeof e||null==e)},s=function(e){var r="";return e=e||{},c(e)&&c(e.major)&&(r+=e.major,c(e.minor)&&(r+="."+e.minor,c(e.patch)&&(r+="."+e.patch))),r},l=function(e){e=e||{};var r=s(e);return r&&(r=" "+r),e&&c(e.family)?e.family+r:""};return e.parse=function(r){var n=function(r){return e.regexes[r+"_parsers"].map(function(e){function n(r){var n=r.match(t);if(!n)return null;var i={};return i.family=(a?a.replace("$1",n[1]):n[1])||"other",i.major=parseInt(o?o:n[2])||null,i.minor=n[3]?parseInt(n[3]):null,i.patch=n[4]?parseInt(n[4]):null,i.tablet=e.tablet,i.man=e.manufacturer||null,i}var t=new RegExp(e.regex),a=e[("browser"===r?"family":r)+"_replacement"],o=e.major_version_replacement;return n})},t=function(){},i=n("browser"),u=n("os"),m=n("device"),d=new t;d.source=r,d.browser=a(r,i),c(d.browser)?(d.browser.name=l(d.browser),d.browser.version=s(d.browser)):d.browser={},d.os=a(r,u),c(d.os)?(d.os.name=l(d.os),d.os.version=s(d.os)):d.os={},d.device=a(r,m),c(d.device)?(d.device.name=l(d.device),d.device.version=s(d.device)):d.device={tablet:!1,family:"Other"};var p={};e.regexes.mobile_browser_families.map(function(e){p[e]=!0}),e.regexes.mobile_os_families.map(function(e){p[e]=!0});return"Spider"===d.browser.family?d.device.type="Spider":d.browser.tablet||d.os.tablet||d.device.tablet?d.device.type="Tablet":p.hasOwnProperty(d.browser.family)?d.device.type="Mobile":d.device.type="Desktop",d.device.manufacturer=d.browser.man||d.os.man||d.device.man||null,o([d.browser,d.os,d.device],["tablet","man"]),d},e}();"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=n),exports.detect=n):e.detect=n,"function"==typeof define&&define.amd&&define(function(e){return n})}(window),function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var r;r="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,r.StackTrace=e()}}(function(){var e;return function e(r,n,t){function a(i,c){if(!n[i]){if(!r[i]){var s="function"==typeof require&&require;if(!c&&s)return s(i,!0);if(o)return o(i,!0);var l=new Error("Cannot find module '"+i+"'");throw l.code="MODULE_NOT_FOUND",l}var u=n[i]={exports:{}};r[i][0].call(u.exports,function(e){var n=r[i][1][e];return a(n?n:e)},u,u.exports,e,r,n,t)}return n[i].exports}for(var o="function"==typeof require&&require,i=0;i<t.length;i++)a(t[i]);return a}({1:[function(r,n,t){!function(a,o){"use strict";"function"==typeof e&&e.amd?e("error-stack-parser",["stackframe"],o):"object"==typeof t?n.exports=o(r("stackframe")):a.ErrorStackParser=o(a.StackFrame)}(this,function(e){"use strict";function r(e,r,n){if("function"==typeof Array.prototype.map)return e.map(r,n);for(var t=new Array(e.length),a=0;a<e.length;a++)t[a]=r.call(n,e[a]);return t}function n(e,r,n){if("function"==typeof Array.prototype.filter)return e.filter(r,n);for(var t=[],a=0;a<e.length;a++)r.call(n,e[a])&&t.push(e[a]);return t}function t(e,r){if("function"==typeof Array.prototype.indexOf)return e.indexOf(r);for(var n=0;n<e.length;n++)if(e[n]===r)return n;return-1}var a=/(^|@)\S+\:\d+/,o=/^\s*at .*(\S+\:\d+|\(native\))/m,i=/^(eval@)?(\[native code\])?$/;return{parse:function(e){if("undefined"!=typeof e.stacktrace||"undefined"!=typeof e["opera#sourceloc"])return this.parseOpera(e);if(e.stack&&e.stack.match(o))return this.parseV8OrIE(e);if(e.stack)return this.parseFFOrSafari(e);throw new Error("Cannot parse given Error object")},extractLocation:function(e){if(e.indexOf(":")===-1)return[e];var r=/(.+?)(?:\:(\d+))?(?:\:(\d+))?$/,n=r.exec(e.replace(/[\(\)]/g,""));return[n[1],n[2]||void 0,n[3]||void 0]},parseV8OrIE:function(a){var i=n(a.stack.split("\n"),function(e){return!!e.match(o)},this);return r(i,function(r){r.indexOf("(eval ")>-1&&(r=r.replace(/eval code/g,"eval").replace(/(\(eval at [^\()]*)|(\)\,.*$)/g,""));var n=r.replace(/^\s+/,"").replace(/\(eval code/g,"(").split(/\s+/).slice(1),a=this.extractLocation(n.pop()),o=n.join(" ")||void 0,i=t(["eval","<anonymous>"],a[0])>-1?void 0:a[0];return new e(o,void 0,i,a[1],a[2],r)},this)},parseFFOrSafari:function(t){var a=n(t.stack.split("\n"),function(e){return!e.match(i)},this);return r(a,function(r){if(r.indexOf(" > eval")>-1&&(r=r.replace(/ line (\d+)(?: > eval line \d+)* > eval\:\d+\:\d+/g,":$1")),r.indexOf("@")===-1&&r.indexOf(":")===-1)return new e(r);var n=r.split("@"),t=this.extractLocation(n.pop()),a=n.join("@")||void 0;return new e(a,void 0,t[0],t[1],t[2],r)},this)},parseOpera:function(e){return!e.stacktrace||e.message.indexOf("\n")>-1&&e.message.split("\n").length>e.stacktrace.split("\n").length?this.parseOpera9(e):e.stack?this.parseOpera11(e):this.parseOpera10(e)},parseOpera9:function(r){for(var n=/Line (\d+).*script (?:in )?(\S+)/i,t=r.message.split("\n"),a=[],o=2,i=t.length;o<i;o+=2){var c=n.exec(t[o]);c&&a.push(new e(void 0,void 0,c[2],c[1],void 0,t[o]))}return a},parseOpera10:function(r){for(var n=/Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i,t=r.stacktrace.split("\n"),a=[],o=0,i=t.length;o<i;o+=2){var c=n.exec(t[o]);c&&a.push(new e(c[3]||void 0,void 0,c[2],c[1],void 0,t[o]))}return a},parseOpera11:function(t){var o=n(t.stack.split("\n"),function(e){return!!e.match(a)&&!e.match(/^Error created at/)},this);return r(o,function(r){var n,t=r.split("@"),a=this.extractLocation(t.pop()),o=t.shift()||"",i=o.replace(/<anonymous function(: (\w+))?>/,"$2").replace(/\([^\)]*\)/g,"")||void 0;o.match(/\(([^\)]*)\)/)&&(n=o.replace(/^[^\(]+\(([^\)]*)\)$/,"$1"));var c=void 0===n||"[arguments not available]"===n?void 0:n.split(",");return new e(i,c,a[0],a[1],a[2],r)},this)}}})},{stackframe:11}],2:[function(e,r,n){function t(){this._array=[],this._set=Object.create(null)}var a=e("./util"),o=Object.prototype.hasOwnProperty;t.fromArray=function(e,r){for(var n=new t,a=0,o=e.length;a<o;a++)n.add(e[a],r);return n},t.prototype.size=function(){return Object.getOwnPropertyNames(this._set).length},t.prototype.add=function(e,r){var n=a.toSetString(e),t=o.call(this._set,n),i=this._array.length;t&&!r||this._array.push(e),t||(this._set[n]=i)},t.prototype.has=function(e){var r=a.toSetString(e);return o.call(this._set,r)},t.prototype.indexOf=function(e){var r=a.toSetString(e);if(o.call(this._set,r))return this._set[r];throw new Error('"'+e+'" is not in the set.')},t.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},t.prototype.toArray=function(){return this._array.slice()},n.ArraySet=t},{"./util":8}],3:[function(e,r,n){function t(e){return e<0?(-e<<1)+1:(e<<1)+0}function a(e){var r=1===(1&e),n=e>>1;return r?-n:n}var o=e("./base64"),i=5,c=1<<i,s=c-1,l=c;n.encode=function(e){var r,n="",a=t(e);do r=a&s,a>>>=i,a>0&&(r|=l),n+=o.encode(r);while(a>0);return n},n.decode=function(e,r,n){var t,c,u=e.length,m=0,d=0;do{if(r>=u)throw new Error("Expected more digits in base 64 VLQ value.");if(c=o.decode(e.charCodeAt(r++)),c===-1)throw new Error("Invalid base64 digit: "+e.charAt(r-1));t=!!(c&l),c&=s,m+=c<<d,d+=i}while(t);n.value=a(m),n.rest=r}},{"./base64":4}],4:[function(e,r,n){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");n.encode=function(e){if(0<=e&&e<t.length)return t[e];throw new TypeError("Must be between 0 and 63: "+e)},n.decode=function(e){var r=65,n=90,t=97,a=122,o=48,i=57,c=43,s=47,l=26,u=52;return r<=e&&e<=n?e-r:t<=e&&e<=a?e-t+l:o<=e&&e<=i?e-o+u:e==c?62:e==s?63:-1;
}},{}],5:[function(e,r,n){function t(e,r,a,o,i,c){var s=Math.floor((r-e)/2)+e,l=i(a,o[s],!0);return 0===l?s:l>0?r-s>1?t(s,r,a,o,i,c):c==n.LEAST_UPPER_BOUND?r<o.length?r:-1:s:s-e>1?t(e,s,a,o,i,c):c==n.LEAST_UPPER_BOUND?s:e<0?-1:e}n.GREATEST_LOWER_BOUND=1,n.LEAST_UPPER_BOUND=2,n.search=function(e,r,a,o){if(0===r.length)return-1;var i=t(-1,r.length,e,r,a,o||n.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&0===a(r[i],r[i-1],!0);)--i;return i}},{}],6:[function(e,r,n){function t(e,r,n){var t=e[r];e[r]=e[n],e[n]=t}function a(e,r){return Math.round(e+Math.random()*(r-e))}function o(e,r,n,i){if(n<i){var c=a(n,i),s=n-1;t(e,c,i);for(var l=e[i],u=n;u<i;u++)r(e[u],l)<=0&&(s+=1,t(e,s,u));t(e,s+1,u);var m=s+1;o(e,r,n,m-1),o(e,r,m+1,i)}}n.quickSort=function(e,r){o(e,r,0,e.length-1)}},{}],7:[function(e,r,n){function t(e){var r=e;return"string"==typeof e&&(r=JSON.parse(e.replace(/^\)\]\}'/,""))),null!=r.sections?new i(r):new a(r)}function a(e){var r=e;"string"==typeof e&&(r=JSON.parse(e.replace(/^\)\]\}'/,"")));var n=c.getArg(r,"version"),t=c.getArg(r,"sources"),a=c.getArg(r,"names",[]),o=c.getArg(r,"sourceRoot",null),i=c.getArg(r,"sourcesContent",null),s=c.getArg(r,"mappings"),u=c.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);t=t.map(String).map(c.normalize).map(function(e){return o&&c.isAbsolute(o)&&c.isAbsolute(e)?c.relative(o,e):e}),this._names=l.fromArray(a.map(String),!0),this._sources=l.fromArray(t,!0),this.sourceRoot=o,this.sourcesContent=i,this._mappings=s,this.file=u}function o(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function i(e){var r=e;"string"==typeof e&&(r=JSON.parse(e.replace(/^\)\]\}'/,"")));var n=c.getArg(r,"version"),a=c.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new l,this._names=new l;var o={line:-1,column:0};this._sections=a.map(function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var r=c.getArg(e,"offset"),n=c.getArg(r,"line"),a=c.getArg(r,"column");if(n<o.line||n===o.line&&a<o.column)throw new Error("Section offsets must be ordered and non-overlapping.");return o=r,{generatedOffset:{generatedLine:n+1,generatedColumn:a+1},consumer:new t(c.getArg(e,"map"))}})}var c=e("./util"),s=e("./binary-search"),l=e("./array-set").ArraySet,u=e("./base64-vlq"),m=e("./quick-sort").quickSort;t.fromSourceMap=function(e){return a.fromSourceMap(e)},t.prototype._version=3,t.prototype.__generatedMappings=null,Object.defineProperty(t.prototype,"_generatedMappings",{get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),t.prototype.__originalMappings=null,Object.defineProperty(t.prototype,"_originalMappings",{get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),t.prototype._charIsMappingSeparator=function(e,r){var n=e.charAt(r);return";"===n||","===n},t.prototype._parseMappings=function(e,r){throw new Error("Subclasses must implement _parseMappings")},t.GENERATED_ORDER=1,t.ORIGINAL_ORDER=2,t.GREATEST_LOWER_BOUND=1,t.LEAST_UPPER_BOUND=2,t.prototype.eachMapping=function(e,r,n){var a,o=r||null,i=n||t.GENERATED_ORDER;switch(i){case t.GENERATED_ORDER:a=this._generatedMappings;break;case t.ORIGINAL_ORDER:a=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var s=this.sourceRoot;a.map(function(e){var r=null===e.source?null:this._sources.at(e.source);return null!=r&&null!=s&&(r=c.join(s,r)),{source:r,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:null===e.name?null:this._names.at(e.name)}},this).forEach(e,o)},t.prototype.allGeneratedPositionsFor=function(e){var r=c.getArg(e,"line"),n={source:c.getArg(e,"source"),originalLine:r,originalColumn:c.getArg(e,"column",0)};if(null!=this.sourceRoot&&(n.source=c.relative(this.sourceRoot,n.source)),!this._sources.has(n.source))return[];n.source=this._sources.indexOf(n.source);var t=[],a=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",c.compareByOriginalPositions,s.LEAST_UPPER_BOUND);if(a>=0){var o=this._originalMappings[a];if(void 0===e.column)for(var i=o.originalLine;o&&o.originalLine===i;)t.push({line:c.getArg(o,"generatedLine",null),column:c.getArg(o,"generatedColumn",null),lastColumn:c.getArg(o,"lastGeneratedColumn",null)}),o=this._originalMappings[++a];else for(var l=o.originalColumn;o&&o.originalLine===r&&o.originalColumn==l;)t.push({line:c.getArg(o,"generatedLine",null),column:c.getArg(o,"generatedColumn",null),lastColumn:c.getArg(o,"lastGeneratedColumn",null)}),o=this._originalMappings[++a]}return t},n.SourceMapConsumer=t,a.prototype=Object.create(t.prototype),a.prototype.consumer=t,a.fromSourceMap=function(e){var r=Object.create(a.prototype),n=r._names=l.fromArray(e._names.toArray(),!0),t=r._sources=l.fromArray(e._sources.toArray(),!0);r.sourceRoot=e._sourceRoot,r.sourcesContent=e._generateSourcesContent(r._sources.toArray(),r.sourceRoot),r.file=e._file;for(var i=e._mappings.toArray().slice(),s=r.__generatedMappings=[],u=r.__originalMappings=[],d=0,p=i.length;d<p;d++){var f=i[d],g=new o;g.generatedLine=f.generatedLine,g.generatedColumn=f.generatedColumn,f.source&&(g.source=t.indexOf(f.source),g.originalLine=f.originalLine,g.originalColumn=f.originalColumn,f.name&&(g.name=n.indexOf(f.name)),u.push(g)),s.push(g)}return m(r.__originalMappings,c.compareByOriginalPositions),r},a.prototype._version=3,Object.defineProperty(a.prototype,"sources",{get:function(){return this._sources.toArray().map(function(e){return null!=this.sourceRoot?c.join(this.sourceRoot,e):e},this)}}),a.prototype._parseMappings=function(e,r){for(var n,t,a,i,s,l=1,d=0,p=0,f=0,g=0,h=0,_=e.length,v=0,x={},y={},b=[],w=[];v<_;)if(";"===e.charAt(v))l++,v++,d=0;else if(","===e.charAt(v))v++;else{for(n=new o,n.generatedLine=l,i=v;i<_&&!this._charIsMappingSeparator(e,i);i++);if(t=e.slice(v,i),a=x[t])v+=t.length;else{for(a=[];v<i;)u.decode(e,v,y),s=y.value,v=y.rest,a.push(s);if(2===a.length)throw new Error("Found a source, but no line and column");if(3===a.length)throw new Error("Found a source and line, but no column");x[t]=a}n.generatedColumn=d+a[0],d=n.generatedColumn,a.length>1&&(n.source=g+a[1],g+=a[1],n.originalLine=p+a[2],p=n.originalLine,n.originalLine+=1,n.originalColumn=f+a[3],f=n.originalColumn,a.length>4&&(n.name=h+a[4],h+=a[4])),w.push(n),"number"==typeof n.originalLine&&b.push(n)}m(w,c.compareByGeneratedPositionsDeflated),this.__generatedMappings=w,m(b,c.compareByOriginalPositions),this.__originalMappings=b},a.prototype._findMapping=function(e,r,n,t,a,o){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[t]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[t]);return s.search(e,r,a,o)},a.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var r=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var n=this._generatedMappings[e+1];if(r.generatedLine===n.generatedLine){r.lastGeneratedColumn=n.generatedColumn-1;continue}}r.lastGeneratedColumn=1/0}},a.prototype.originalPositionFor=function(e){var r={generatedLine:c.getArg(e,"line"),generatedColumn:c.getArg(e,"column")},n=this._findMapping(r,this._generatedMappings,"generatedLine","generatedColumn",c.compareByGeneratedPositionsDeflated,c.getArg(e,"bias",t.GREATEST_LOWER_BOUND));if(n>=0){var a=this._generatedMappings[n];if(a.generatedLine===r.generatedLine){var o=c.getArg(a,"source",null);null!==o&&(o=this._sources.at(o),null!=this.sourceRoot&&(o=c.join(this.sourceRoot,o)));var i=c.getArg(a,"name",null);return null!==i&&(i=this._names.at(i)),{source:o,line:c.getArg(a,"originalLine",null),column:c.getArg(a,"originalColumn",null),name:i}}}return{source:null,line:null,column:null,name:null}},a.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return null==e}))},a.prototype.sourceContentFor=function(e,r){if(!this.sourcesContent)return null;if(null!=this.sourceRoot&&(e=c.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var n;if(null!=this.sourceRoot&&(n=c.urlParse(this.sourceRoot))){var t=e.replace(/^file:\/\//,"");if("file"==n.scheme&&this._sources.has(t))return this.sourcesContent[this._sources.indexOf(t)];if((!n.path||"/"==n.path)&&this._sources.has("/"+e))return this.sourcesContent[this._sources.indexOf("/"+e)]}if(r)return null;throw new Error('"'+e+'" is not in the SourceMap.')},a.prototype.generatedPositionFor=function(e){var r=c.getArg(e,"source");if(null!=this.sourceRoot&&(r=c.relative(this.sourceRoot,r)),!this._sources.has(r))return{line:null,column:null,lastColumn:null};r=this._sources.indexOf(r);var n={source:r,originalLine:c.getArg(e,"line"),originalColumn:c.getArg(e,"column")},a=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",c.compareByOriginalPositions,c.getArg(e,"bias",t.GREATEST_LOWER_BOUND));if(a>=0){var o=this._originalMappings[a];if(o.source===n.source)return{line:c.getArg(o,"generatedLine",null),column:c.getArg(o,"generatedColumn",null),lastColumn:c.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},n.BasicSourceMapConsumer=a,i.prototype=Object.create(t.prototype),i.prototype.constructor=t,i.prototype._version=3,Object.defineProperty(i.prototype,"sources",{get:function(){for(var e=[],r=0;r<this._sections.length;r++)for(var n=0;n<this._sections[r].consumer.sources.length;n++)e.push(this._sections[r].consumer.sources[n]);return e}}),i.prototype.originalPositionFor=function(e){var r={generatedLine:c.getArg(e,"line"),generatedColumn:c.getArg(e,"column")},n=s.search(r,this._sections,function(e,r){var n=e.generatedLine-r.generatedOffset.generatedLine;return n?n:e.generatedColumn-r.generatedOffset.generatedColumn}),t=this._sections[n];return t?t.consumer.originalPositionFor({line:r.generatedLine-(t.generatedOffset.generatedLine-1),column:r.generatedColumn-(t.generatedOffset.generatedLine===r.generatedLine?t.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},i.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(e){return e.consumer.hasContentsOfAllSources()})},i.prototype.sourceContentFor=function(e,r){for(var n=0;n<this._sections.length;n++){var t=this._sections[n],a=t.consumer.sourceContentFor(e,!0);if(a)return a}if(r)return null;throw new Error('"'+e+'" is not in the SourceMap.')},i.prototype.generatedPositionFor=function(e){for(var r=0;r<this._sections.length;r++){var n=this._sections[r];if(n.consumer.sources.indexOf(c.getArg(e,"source"))!==-1){var t=n.consumer.generatedPositionFor(e);if(t){var a={line:t.line+(n.generatedOffset.generatedLine-1),column:t.column+(n.generatedOffset.generatedLine===t.line?n.generatedOffset.generatedColumn-1:0)};return a}}}return{line:null,column:null}},i.prototype._parseMappings=function(e,r){this.__generatedMappings=[],this.__originalMappings=[];for(var n=0;n<this._sections.length;n++)for(var t=this._sections[n],a=t.consumer._generatedMappings,o=0;o<a.length;o++){var i=a[o],s=t.consumer._sources.at(i.source);null!==t.consumer.sourceRoot&&(s=c.join(t.consumer.sourceRoot,s)),this._sources.add(s),s=this._sources.indexOf(s);var l=t.consumer._names.at(i.name);this._names.add(l),l=this._names.indexOf(l);var u={source:s,generatedLine:i.generatedLine+(t.generatedOffset.generatedLine-1),generatedColumn:i.generatedColumn+(t.generatedOffset.generatedLine===i.generatedLine?t.generatedOffset.generatedColumn-1:0),originalLine:i.originalLine,originalColumn:i.originalColumn,name:l};this.__generatedMappings.push(u),"number"==typeof u.originalLine&&this.__originalMappings.push(u)}m(this.__generatedMappings,c.compareByGeneratedPositionsDeflated),m(this.__originalMappings,c.compareByOriginalPositions)},n.IndexedSourceMapConsumer=i},{"./array-set":2,"./base64-vlq":3,"./binary-search":5,"./quick-sort":6,"./util":8}],8:[function(e,r,n){function t(e,r,n){if(r in e)return e[r];if(3===arguments.length)return n;throw new Error('"'+r+'" is a required argument.')}function a(e){var r=e.match(_);return r?{scheme:r[1],auth:r[2],host:r[3],port:r[4],path:r[5]}:null}function o(e){var r="";return e.scheme&&(r+=e.scheme+":"),r+="//",e.auth&&(r+=e.auth+"@"),e.host&&(r+=e.host),e.port&&(r+=":"+e.port),e.path&&(r+=e.path),r}function i(e){var r=e,t=a(e);if(t){if(!t.path)return e;r=t.path}for(var i,c=n.isAbsolute(r),s=r.split(/\/+/),l=0,u=s.length-1;u>=0;u--)i=s[u],"."===i?s.splice(u,1):".."===i?l++:l>0&&(""===i?(s.splice(u+1,l),l=0):(s.splice(u,2),l--));return r=s.join("/"),""===r&&(r=c?"/":"."),t?(t.path=r,o(t)):r}function c(e,r){""===e&&(e="."),""===r&&(r=".");var n=a(r),t=a(e);if(t&&(e=t.path||"/"),n&&!n.scheme)return t&&(n.scheme=t.scheme),o(n);if(n||r.match(v))return r;if(t&&!t.host&&!t.path)return t.host=r,o(t);var c="/"===r.charAt(0)?r:i(e.replace(/\/+$/,"")+"/"+r);return t?(t.path=c,o(t)):c}function s(e,r){""===e&&(e="."),e=e.replace(/\/$/,"");for(var n=0;0!==r.indexOf(e+"/");){var t=e.lastIndexOf("/");if(t<0)return r;if(e=e.slice(0,t),e.match(/^([^\/]+:\/)?\/*$/))return r;++n}return Array(n+1).join("../")+r.substr(e.length+1)}function l(e){return e}function u(e){return d(e)?"$"+e:e}function m(e){return d(e)?e.slice(1):e}function d(e){if(!e)return!1;var r=e.length;if(r<9)return!1;if(95!==e.charCodeAt(r-1)||95!==e.charCodeAt(r-2)||111!==e.charCodeAt(r-3)||116!==e.charCodeAt(r-4)||111!==e.charCodeAt(r-5)||114!==e.charCodeAt(r-6)||112!==e.charCodeAt(r-7)||95!==e.charCodeAt(r-8)||95!==e.charCodeAt(r-9))return!1;for(var n=r-10;n>=0;n--)if(36!==e.charCodeAt(n))return!1;return!0}function p(e,r,n){var t=e.source-r.source;return 0!==t?t:(t=e.originalLine-r.originalLine,0!==t?t:(t=e.originalColumn-r.originalColumn,0!==t||n?t:(t=e.generatedColumn-r.generatedColumn,0!==t?t:(t=e.generatedLine-r.generatedLine,0!==t?t:e.name-r.name))))}function f(e,r,n){var t=e.generatedLine-r.generatedLine;return 0!==t?t:(t=e.generatedColumn-r.generatedColumn,0!==t||n?t:(t=e.source-r.source,0!==t?t:(t=e.originalLine-r.originalLine,0!==t?t:(t=e.originalColumn-r.originalColumn,0!==t?t:e.name-r.name))))}function g(e,r){return e===r?0:e>r?1:-1}function h(e,r){var n=e.generatedLine-r.generatedLine;return 0!==n?n:(n=e.generatedColumn-r.generatedColumn,0!==n?n:(n=g(e.source,r.source),0!==n?n:(n=e.originalLine-r.originalLine,0!==n?n:(n=e.originalColumn-r.originalColumn,0!==n?n:g(e.name,r.name)))))}n.getArg=t;var _=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,v=/^data:.+\,.+$/;n.urlParse=a,n.urlGenerate=o,n.normalize=i,n.join=c,n.isAbsolute=function(e){return"/"===e.charAt(0)||!!e.match(_)},n.relative=s;var x=function(){var e=Object.create(null);return!("__proto__"in e)}();n.toSetString=x?l:u,n.fromSetString=x?l:m,n.compareByOriginalPositions=p,n.compareByGeneratedPositionsDeflated=f,n.compareByGeneratedPositionsInflated=h},{}],9:[function(r,n,t){!function(r,a){"use strict";"function"==typeof e&&e.amd?e("stackframe",[],a):"object"==typeof t?n.exports=a():r.StackFrame=a()}(this,function(){"use strict";function e(e){return!isNaN(parseFloat(e))&&isFinite(e)}function r(e,r,n,t,a,o){void 0!==e&&this.setFunctionName(e),void 0!==r&&this.setArgs(r),void 0!==n&&this.setFileName(n),void 0!==t&&this.setLineNumber(t),void 0!==a&&this.setColumnNumber(a),void 0!==o&&this.setSource(o)}return r.prototype={getFunctionName:function(){return this.functionName},setFunctionName:function(e){this.functionName=String(e)},getArgs:function(){return this.args},setArgs:function(e){if("[object Array]"!==Object.prototype.toString.call(e))throw new TypeError("Args must be an Array");this.args=e},getFileName:function(){return this.fileName},setFileName:function(e){this.fileName=String(e)},getLineNumber:function(){return this.lineNumber},setLineNumber:function(r){if(!e(r))throw new TypeError("Line Number must be a Number");this.lineNumber=Number(r)},getColumnNumber:function(){return this.columnNumber},setColumnNumber:function(r){if(!e(r))throw new TypeError("Column Number must be a Number");this.columnNumber=Number(r)},getSource:function(){return this.source},setSource:function(e){this.source=String(e)},toString:function(){var r=this.getFunctionName()||"{anonymous}",n="("+(this.getArgs()||[]).join(",")+")",t=this.getFileName()?"@"+this.getFileName():"",a=e(this.getLineNumber())?":"+this.getLineNumber():"",o=e(this.getColumnNumber())?":"+this.getColumnNumber():"";return r+n+t+a+o}},r})},{}],10:[function(r,n,t){!function(a,o){"use strict";"function"==typeof e&&e.amd?e("stack-generator",["stackframe"],o):"object"==typeof t?n.exports=o(r("stackframe")):a.StackGenerator=o(a.StackFrame)}(this,function(e){return{backtrace:function(r){var n=[],t=10;"object"==typeof r&&"number"==typeof r.maxStackSize&&(t=r.maxStackSize);for(var a=arguments.callee;a&&n.length<t;){for(var o=new Array(a.arguments.length),i=0;i<o.length;++i)o[i]=a.arguments[i];/function(?:\s+([\w$]+))+\s*\(/.test(a.toString())?n.push(new e(RegExp.$1||void 0,o)):n.push(new e(void 0,o));try{a=a.caller}catch(e){break}}return n}}})},{stackframe:9}],11:[function(e,r,n){arguments[4][9][0].apply(n,arguments)},{dup:9}],12:[function(r,n,t){!function(a,o){"use strict";"function"==typeof e&&e.amd?e("stacktrace-gps",["source-map","stackframe"],o):"object"==typeof t?n.exports=o(r("source-map/lib/source-map-consumer"),r("stackframe")):a.StackTraceGPS=o(a.SourceMap||a.sourceMap,a.StackFrame)}(this,function(e,r){"use strict";function n(e){return new Promise(function(r,n){var t=new XMLHttpRequest;t.open("get",e),t.onerror=n,t.onreadystatechange=function(){4===t.readyState&&(t.status>=200&&t.status<300?r(t.responseText):n(new Error("HTTP status: "+t.status+" retrieving "+e)))},t