(()=>{var pa=Object.create;var Wr=Object.defineProperty;var va=Object.getOwnPropertyDescriptor;var Aa=Object.getOwnPropertyNames;var $a=Object.getPrototypeOf,Ma=Object.prototype.hasOwnProperty;var Ta=(o,e,r)=>e in o?Wr(o,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[e]=r;var u=(o,e)=>()=>(e||o((e={exports:{}}).exports,e),e.exports);var Pa=(o,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Aa(e))!Ma.call(o,i)&&i!==r&&Wr(o,i,{get:()=>e[i],enumerable:!(t=va(e,i))||t.enumerable});return o};var Qr=(o,e,r)=>(r=o!=null?pa($a(o)):{},Pa(e||!o||!o.__esModule?Wr(r,"default",{value:o,enumerable:!0}):r,o));var D=(o,e,r)=>(Ta(o,typeof e!="symbol"?e+"":e,r),r);var Lt=u(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.trim=(o,e)=>o.replace(new RegExp("^["+e+"]+|["+e+"]+$","g"),"")});var j=u(xr=>{"use strict";Object.defineProperty(xr,"__esModule",{value:!0});var _a=Lt();xr.formatVersion=(o,e)=>{if(o===void 0)return"";let r=_a.trim(o,". ").replace(new RegExp("_","g"),"."),t=r.split(".");return/^\d+$/.test(t.join(""))?e!==0&&Number.isInteger(parseFloat(r))?parseInt(r,10).toFixed(1):t.length>1&&e!==null?t.slice(0,e+1).join("."):r:r};xr.parseBrowserEngineVersion=(o,e)=>{if(!e)return"";if(e==="Gecko"){let i=/[ ](?:rv[: ]([0-9\.]+)).*gecko\/[0-9]{8,10}/i,l=o.match(i);if(l)return l.pop()}let r=new RegExp(`${e}\\s*\\/?\\s*((?:(?=\\d+\\.\\d)\\d+[.\\d]*|\\d{1,7}(?=(?:\\D|$))))`,"i"),t=o.match(r);return t?t.pop():""}});var N=u(Yr=>{"use strict";Object.defineProperty(Yr,"__esModule",{value:!0});Yr.variableReplacement=(o,e)=>{let r=new RegExp("\\$\\d","g");return o==null?"":o.replace(r,t=>{let i=parseInt(t.substr(1),10);return e[i-1]||""})}});var Gt=u(zr=>{"use strict";Object.defineProperty(zr,"__esModule",{value:!0});zr.memoryCache=()=>{let o={};return{set:(t,i)=>{o[t]=i},get:t=>{if(o.hasOwnProperty(t))return o[t]}}}});var L=u(Jr=>{"use strict";Object.defineProperty(Jr,"__esModule",{value:!0});var ba=Gt(),Et=ba.memoryCache(),fa=o=>{let e=Et.get(o);if(e)return e.value;let r=RegExp(`(?:^|[^A-Z0-9-_]|[^A-Z0-9-]_|sprd-)(?:${o})`,"i");return Et.set(o,{value:r}),r};Jr.userAgentParser=(o,e)=>{try{let t=fa(o).exec(e);return t?t.slice(1):null}catch{return null}}});var yt=u((Qm,La)=>{La.exports=[{regex:"Helio/(\\d+[\\.\\d]+)",name:"Helio",version:"$1",engine:{default:"Blink"}},{regex:"7654Browser/(\\d+[\\.\\d]+)",name:"7654 Browser",version:"$1",engine:{default:"Blink"}},{regex:"Qazweb/(\\d+[\\.\\d]+)",name:"Qazweb",version:"$1",engine:{default:"Gecko"}},{regex:"Degdegan/(\\d+[\\.\\d]+)",name:"deg-degan",version:"$1",engine:{default:"Blink"}},{regex:"JavaFX/(\\d+[\\.\\d]+)",name:"JavaFX",version:"$1",engine:{default:"WebKit"}},{regex:"Chedot/(\\d+[\\.\\d]+)",name:"Chedot",version:"$1",engine:{default:"Blink"}},{regex:"Chrome/(\\d+[\\.\\d]+) \\(Chromium GOST\\)",name:"Chromium GOST",version:"$1",engine:{default:"Blink"}},{regex:"(?:DeledaoPersonal|DeledaoFamily)/(\\d+[\\.\\d]+)",name:"Deledao",version:"$1",engine:{default:"Blink"}},{regex:"HasBrowser/(\\d+[\\.\\d]+)",name:"HasBrowser",version:"$1",engine:{default:"Blink"}},{regex:"Byffox/(\\d+[\\.\\d]+)",name:"Byffox",version:"$1",engine:{default:"Gecko"}},{regex:"Chrome/(\\d+[\\.\\d]+).+AgentWeb.+UCBrowser",name:"CoolBrowser",version:"$1",engine:{default:"Blink"}},{regex:"DotBrowser/(\\d+[\\.\\d]+)",name:"Dot Browser",version:"$1",engine:{default:"Blink"}},{regex:"CravingExplorer/(\\d+[\\.\\d]+)",name:"Craving Explorer",version:"$1",engine:{default:"Blink"}},{regex:"DeskBrowse/(\\d+[\\.\\d]+)",name:"DeskBrowse",version:"$1"},{regex:"Lolifox/(\\d+[\\.\\d]+)",name:"Lolifox",version:"$1"},{regex:"qutebrowser/(\\d+[\\.\\d]+).+Chrome",name:"Qutebrowser",version:"$1",engine:{default:"Blink"}},{regex:"qutebrowser(?:/(\\d+[\\.\\d]+))?",name:"Qutebrowser",version:"$1"},{regex:"flast/(\\d+[\\.\\d]+)",name:"Flast",version:"$1",engine:{default:"Blink"}},{regex:"PolyBrowser/(\\d+[\\.\\d]+)",name:"PolyBrowser",version:"$1",engine:{default:"Gecko"}},{regex:"Chrome.+BriskBard/(\\d+[\\.\\d]+)",name:"BriskBard",version:"$1",engine:{default:"Blink"}},{regex:"BriskBard(?:/(\\d+[\\.\\d]+))?",name:"BriskBard",version:"$1"},{regex:"GinxDroidBrowser/(\\d+[\\.\\d]+)",name:"GinxDroid Browser",version:"$1",engine:{default:"Blink"}},{regex:"AviraScout/(\\d+[\\.\\d]+)",name:"Avira Scout",version:"$1",engine:{default:"Blink"}},{regex:"VenusBrowser/(\\d+[\\.\\d]+)",name:"Venus Browser",version:"$1",engine:{default:"Blink"}},{regex:"Chrome.+Otter(?:[ /](\\d+[\\.\\d]+))?",name:"Otter Browser",version:"$1",engine:{default:"Blink"}},{regex:"Otter(?:[ /](\\d+[\\.\\d]+))?",name:"Otter Browser",version:"$1"},{regex:"Chrome.+Smooz/(\\d+[\\.\\d]+)",name:"Smooz",version:"$1",engine:{default:"Blink"}},{regex:"Smooz/(\\d+[\\.\\d]+)",name:"Smooz",version:"$1"},{regex:"Cornowser/(\\d+[\\.\\d]+)",name:"Cornowser",version:"$1",engine:{default:"Blink"}},{regex:"Orca/(\\d+[\\.\\d]+)",name:"Orca",version:"$1"},{regex:"Flow/(?:(\\d+[\\.\\d]+))",name:"Flow",version:"$1",engine:{default:"EkiohFlow"}},{regex:"Ekioh/(?:(\\d+[\\.\\d]+))",name:"Flow",version:"$1",engine:{default:"EkiohFlow"}},{regex:"xStand/(\\d+[\\.\\d]+)",name:"xStand",version:"$1",engine:{default:"WebKit"}},{regex:"Biyubi/(\\d+[\\.\\d]+)",name:"Biyubi",version:"$1"},{regex:"(?:Perfect%20Browser(?:-iPad)?|Perfect(?:BrowserPro)?)/(\\d+[\\.\\d]+)",name:"Perfect Browser",version:"$1",engine:{default:"WebKit"}},{regex:"Browser/Phantom/V(\\d+[\\.\\d]+)",name:"Phantom Browser",version:"$1"},{regex:"AwoX(?:/(\\d+[\\.\\d]+))? Browser",name:"AwoX",version:"$1"},{regex:"Zetakey/(\\d+[\\.\\d]+)",name:"Zetakey",version:"$1",engine:{default:"WebKit"}},{regex:"PlayFreeBrowser/(?:(\\d+[\\.\\d]+))?",name:"PlayFree Browser",version:"$1"},{regex:"(?:chimlac_browser|chimlac)/(?:(\\d+[\\.\\d]+))",name:"Chim Lac",version:"$1",engine:{default:"Blink"}},{regex:"Odin/(?:(\\d+[\\.\\d]+))",name:"Odin",version:"$1",engine:{default:"Blink"}},{regex:"Tbrowser/(\\d+[\\.\\d]+)",name:"T-Browser",version:"$1",engine:{default:"Blink"}},{regex:"SFive(?:_Android)?/.+ Chrome/(\\d+[\\.\\d]+)",name:"SFive",version:"$1",engine:{default:"Blink"}},{regex:"SFive_IOS/(\\d+[\\.\\d]+)",name:"SFive",version:"$1"},{regex:"Navigateur web/(?:(\\d+[\\.\\d]+))?",name:"Navigateur Web",version:"$1"},{regex:"Sraf(?:[/ ](\\d+[\\.\\d]+))?",name:"Seraphic Sraf",version:"$1",engine:{default:"Blink"}},{regex:"SeewoBrowser/(?:(\\d+[\\.\\d]+))?",name:"Seewo Browser",version:"$1",engine:{default:"Blink"}},{regex:"(?:Kode(?:iOS)?/(?:(\\d+[\\.\\d]+))?|TansoDL)",name:"Kode Browser",version:"$1"},{regex:"UR/(?:(\\d+[\\.\\d]+))",name:"UR Browser",version:"$1",engine:{default:"Blink"}},{regex:"OceanHero/([\\.\\d]+)",name:"OceanHero",version:"$1",engine:{default:"Blink"}},{regex:"Chrome/.+ SLBrowser/(?:(\\d+[\\.\\d]+))?",name:"Smart Lenovo Browser",version:"$1",engine:{default:"Blink"}},{regex:"SLBrowser/(?:(\\d+[\\.\\d]+))?",name:"Smart Lenovo Browser",version:"$1"},{regex:"Browzar",name:"Browzar",version:""},{regex:"Stargon/(?:(\\d+[\\.\\d]+))?",name:"Stargon",version:"$1",engine:{default:"Blink"}},{regex:"NFSBrowser/(?:(\\d+[\\.\\d]+))?",name:"NFS Browser",version:"$1",engine:{default:"Blink"}},{regex:"Borealis/(\\d+[\\.\\d]+)",name:"Borealis Navigator",version:"$1"},{regex:"YoloBrowser/(?:(\\d+[\\.\\d]+))?",name:"Yolo Browser",version:"$1",engine:{default:"Blink"}},{regex:"PHX/(?:(\\d+[\\.\\d]+))?",name:"Phoenix Browser",version:"$1"},{regex:"PrivacyWall/(?:(\\d+[\\.\\d]+))?",name:"PrivacyWall",version:"$1"},{regex:"Ghostery:?(\\d+[\\.\\d]+)?",name:"Ghostery Privacy Browser",version:"$1"},{regex:"Firefox/.*(?:Turkcell-)?YaaniBrowser(?:/(\\d+[\\.\\d]+))?",name:"Yaani Browser",version:"$1",engine:{default:"Gecko"}},{regex:"(?:Turkcell-)?YaaniBrowser(?:/(\\d+[\\.\\d]+))?",name:"Yaani Browser",version:"$1",engine:{default:"Blink"}},{regex:"SEB/(?:(\\d+[\\.\\d]+))?",name:"Safe Exam Browser",version:"$1"},{regex:"Colibri/(?:(\\d+[\\.\\d]+))?",name:"Colibri",version:"$1"},{regex:"Xvast/(?:(\\d+[\\.\\d]+))?",name:"Xvast",version:"$1"},{regex:"TungstenBrowser/(?:(\\d+[\\.\\d]+))?",name:"Tungsten",version:"$1"},{regex:"Lulumi-browser/(?:(\\d+[\\.\\d]+))?",name:"Lulumi",version:"$1"},{regex:"ybrowser/(?:(\\d+[\\.\\d]+))?",name:"Yahoo! Japan Browser",version:"$1"},{regex:"iLunascapeLite/(?:(\\d+[\\.\\d]+))?",name:"Lunascape Lite",version:"$1"},{regex:"Polypane/(?:(\\d+[\\.\\d]+))?",name:"Polypane",version:"$1"},{regex:"OhHaiBrowser/(?:(\\d+[\\.\\d]+))?",name:"OhHai Browser",version:"$1"},{regex:"Sizzy/(?:(\\d+[\\.\\d]+))?",name:"Sizzy",version:"$1"},{regex:"GlassBrowser/(?:(\\d+[\\.\\d]+))?",name:"Glass Browser",version:"$1"},{regex:"ToGate/(?:(\\d+[\\.\\d]+))?",name:"ToGate",version:"$1"},{regex:"AirWatch Browser v(?:(\\d+[\\.\\d]+))?",name:"VMware AirWatch",version:"$1"},{regex:"ADG/(?:(\\d+[\\.\\d]+))?",name:"AOL Desktop",version:"$1"},{regex:"Elements Browser/(?:(\\d+[\\.\\d]+))?",name:"Elements Browser",version:"$1"},{regex:"Light/(\\d+[\\.\\d]+)",name:"Light",version:"$1"},{regex:"Valve Steam GameOverlay/(?:(\\d+[\\.\\d]+))?",name:"Steam In-Game Overlay",version:"$1"},{regex:"115Browser/(?:(\\d+[\\.\\d]+))?",name:"115 Browser",version:"$1"},{regex:"Atom/(?:(\\d+[\\.\\d]+))?",name:"Atom",version:"$1"},{regex:"Mobile VR.+Firefox",name:"Firefox Reality",version:""},{regex:"AVG(?:/(\\d+[\\.\\d]+))?",name:"AVG Secure Browser",version:"$1"},{regex:"Start/(?:(\\d+[\\.\\d]+))?",name:"START Internet Browser",version:"$1"},{regex:"Lovense(?:/(\\d+[\\.\\d]+))?",name:"Lovense Browser",version:"$1"},{regex:"com.airfind.deltabrowser(?:/(\\d+[\\.\\d]+))?",name:"Delta Browser",version:"$1"},{regex:"(?:Ordissimo|webissimo3)(?:/(\\d+[\\.\\d]+))?",name:"Ordissimo",version:"$1"},{regex:"CCleaner(?:/(\\d+[\\.\\d]+))?",name:"CCleaner",version:"$1"},{regex:"AlohaLite(?:/(\\d+[\\.\\d]+))?",name:"Aloha Browser Lite",version:"$1",engine:{default:"Blink"}},{regex:"TaoBrowser(?:/(\\d+[\\.\\d]+))?",name:"Tao Browser",version:"$1"},{regex:"Falkon(?:/(\\d+[\\.\\d]+))?",name:"Falkon",version:"$1"},{regex:"mCent(?:/(\\d+[\\.\\d]+))?",name:"mCent",version:"$1"},{regex:"SalamWeb(?:/(\\d+[\\.\\d]+))?",name:"SalamWeb",version:"$1"},{regex:"BlackHawk(?:/(\\d+[\\.\\d]+))?",name:"BlackHawk",version:"$1"},{regex:"Minimo(?:/(\\d+[\\.\\d]+))?",name:"Minimo",version:"$1"},{regex:"WIB(?:/(\\d+[\\.\\d]+))?",name:"Wear Internet Browser",version:"$1"},{regex:"Origyn Web Browser",name:"Origyn Web Browser",version:""},{regex:"Kinza(?:/(\\d+[\\.\\d]+))?",name:"Kinza",version:"$1"},{regex:"Beamrise(?:/(\\d+[\\.\\d]+))?",name:"Beamrise",version:"$1"},{regex:"Faux(?:/(\\d+[\\.\\d]+))?",name:"Faux Browser",version:"$1"},{regex:"splash Version(?:/(\\d+[\\.\\d]+))?",name:"Splash",version:"$1"},{regex:"MZBrowser(?:/(\\d+[\\.\\d]+))?",name:"Meizu Browser",version:"$1"},{regex:"COSBrowser(?:/(\\d+[\\.\\d]+))?",name:"COS Browser",version:"$1"},{regex:"Crusta(?:/(\\d+[\\.\\d]+))?",name:"Crusta",version:"$1"},{regex:"Hawk/TurboBrowser(?:/v?(\\d+[\\.\\d]+))?",name:"Hawk Turbo Browser",version:"$1",engine:{default:"Blink"}},{regex:"FreeU(?:/(\\d+[\\.\\d]+))?",name:"FreeU",version:"$1",engine:{default:"Blink"}},{regex:"NoxBrowser(?:/(\\d+[\\.\\d]+))?",name:"Nox Browser",version:"$1",engine:{default:"Blink"}},{regex:"Basilisk(?:/(\\d+[\\.\\d]+))?",name:"Basilisk",version:"$1",engine:{default:"Goanna"}},{regex:"SputnikBrowser(?:/(\\d+[\\.\\d]+))?",name:"Sputnik Browser",version:"$1",engine:{default:"Blink"}},{regex:"TNSBrowser(?:/(\\d+[\\.\\d]+))?",name:"K.Browser",version:"$1",engine:{default:"Blink"}},{regex:"OculusBrowser(?:/(\\d+[\\.\\d]+))?",name:"Oculus Browser",version:"$1"},{regex:"Jio(?:Browser|Pages)(?:/(\\d+[\\.\\d]+))?",name:"Jio Browser",version:"$1",engine:{default:"Blink"}},{regex:"Chrome/.+ Hola(?:/(\\d+[\\.\\d]+))?",name:"hola! Browser",version:"$1",engine:{default:"Blink"}},{regex:"Slimjet/(?:(\\d+[\\.\\d]+))",name:"Slimjet",version:"$1",engine:{default:"Blink"}},{regex:"7Star/(?:(\\d+[\\.\\d]+))",name:"7Star",version:"$1",engine:{default:"Blink"}},{regex:"MxNitro/(?:(\\d+[\\.\\d]+))",name:"MxNitro",version:"$1",engine:{default:"Blink"}},{regex:"HuaweiBrowser(?:/(\\d+[\\.\\d]+))?",name:"Huawei Browser",version:"$1"},{regex:"VivoBrowser(?:/(\\d+[\\.\\d]+))?",name:"vivo Browser",version:"$1"},{regex:"RealmeBrowser(?:/(\\d+[\\.\\d]+))?",name:"Realme Browser",version:"$1"},{regex:"Beaker ?Browser(?:[/ ](\\d+[\\.\\d]+))?",name:"Beaker Browser",version:"$1",engine:{default:"Blink"}},{regex:"QwantiOS/(\\d+[\\.\\d]+)",name:"Qwant Mobile",version:"$1",engine:{default:"WebKit"}},{regex:"QwantMobile(?:/(\\d+[\\.\\d]+))?",name:"Qwant Mobile",version:"$1",engine:{default:"Gecko"}},{regex:"Qwant/(\\d+[\\.\\d]+)",name:"Qwant Mobile",version:"$1",engine:{default:"Gecko"}},{regex:"TenFourFox(?:/(\\d+[\\.\\d]+))?",name:"TenFourFox",version:"$1",engine:{default:"Gecko"}},{regex:"AOLShield(?:/(\\d+[\\.\\d]+))?",name:"AOL Shield",version:"$1",engine:{default:"Gecko"}},{regex:"Edge[ /](\\d+[\\.\\d]+)",name:"Microsoft Edge",version:"$1",engine:{default:"Edge"}},{regex:"EdgiOS[ /](\\d+[\\.\\d]+)",name:"Microsoft Edge",version:"$1",engine:{default:"WebKit"}},{regex:"EdgA[ /](\\d+[\\.\\d]+)",name:"Microsoft Edge",version:"$1",engine:{default:"Blink"}},{regex:"Edg[ /](\\d+[\\.\\d]+)",name:"Microsoft Edge",version:"$1",engine:{default:"Blink"}},{regex:"QIHU 360[ES]E",name:"360 Browser",version:""},{regex:"360 Aphone Browser(?: \\((\\d+[\\.\\d]+)(?:beta)?\\))?",name:"360 Phone Browser",version:"$1",engine:{default:"WebKit"}},{regex:"SailfishBrowser(?:/(\\d+[\\.\\d]+))?",name:"Sailfish Browser",version:"$1",engine:{default:"Gecko"}},{regex:"IceCat(?:/(\\d+[\\.\\d]+))?",name:"IceCat",version:"$1",engine:{default:"Gecko"}},{regex:"Mobicip",name:"Mobicip",version:"",engine:{default:"Gecko"}},{regex:"Camino(?:/(\\d+[\\.\\d]+))?",name:"Camino",version:"$1",engine:{default:"Gecko"}},{regex:"Waterfox(?:/(\\d+[\\.\\d]+))?",name:"Waterfox",version:"$1",engine:{default:"Gecko"}},{regex:"Chrome/.+ AlohaBrowser(?:/(\\d+[\\.\\d]+))?",name:"Aloha Browser",version:"$1",engine:{default:"Blink"}},{regex:"AlohaBrowser(?:/(\\d+[\\.\\d]+))?",name:"Aloha Browser",version:"$1"},{regex:"(?:Avast|ASW|Safer)(?:/(\\d+[\\.\\d]+))?",name:"Avast Secure Browser",version:"$1"},{regex:"Epic(?:/(\\d+[\\.\\d]+))",name:"Epic",version:"$1",engine:{default:"Gecko"}},{regex:"Fennec(?:/(\\d+[\\.\\d]+))?",name:"Fennec",version:"$1",engine:{default:"Gecko"}},{regex:"Firefox.*Tablet browser (\\d+[\\.\\d]+)",name:"MicroB",version:"$1",engine:{default:"Gecko"}},{regex:"Maemo Browser(?: (\\d+[\\.\\d]+))?",name:"MicroB",version:"$1",engine:{default:"Gecko"}},{regex:"Deepnet Explorer (\\d+[\\.\\d]+)?",name:"Deepnet Explorer",version:"$1"},{regex:"Avant ?Browser",name:"Avant Browser",version:"",engine:{default:""}},{regex:"OppoBrowser(?:/(\\d+[\\.\\d]+))?",name:"Oppo Browser",version:"$1"},{regex:"Chrome/(\\d+[\\.\\d]+).*MRCHROME",name:"Amigo",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"AtomicBrowser(?:/(\\d+[\\.\\d]+))?",name:"Atomic Web Browser",version:"$1"},{regex:"Bunjalloo(?:/(\\d+[\\.\\d]+))?",name:"Bunjalloo",version:"$1"},{regex:"Brave(?:/(\\d+[\\.\\d]+))?",name:"Brave",version:"$1",engine:{default:"Blink"}},{regex:"Iridium(?:/(\\d+[\\.\\d]+))?",name:"Iridium",version:"$1"},{regex:"Iceweasel(?:/(\\d+[\\.\\d]+))?",name:"Iceweasel",version:"$1",engine:{default:"Gecko"}},{regex:"WebPositive",name:"WebPositive",version:"",engine:{default:"WebKit"}},{regex:".*Goanna.*PaleMoon(?:/(\\d+[\\.\\d]+))?",name:"Pale Moon",version:"$1",engine:{default:"Goanna"}},{regex:"PaleMoon(?:/(\\d+[\\.\\d]+))?",name:"Pale Moon",version:"$1",engine:{default:"Gecko"}},{regex:"CometBird(?:/(\\d+[\\.\\d]+))?",name:"CometBird",version:"$1",engine:{default:"Gecko"}},{regex:"IceDragon(?:/(\\d+[\\.\\d]+))?",name:"IceDragon",version:"$1",engine:{default:"Gecko"}},{regex:"Flock(?:/(\\d+[\\.\\d]+))?",name:"Flock",version:"$1",engine:{default:"Gecko",versions:{"3":"WebKit"}}},{regex:"JigBrowserPlus/(?:(\\d+[\\.\\d]+))?",name:"Jig Browser Plus",version:"$1"},{regex:"jig browser(?: web;|9i?)?(?:[/ ](\\d+[\\.\\d]+))?",name:"Jig Browser",version:"$1"},{regex:"Kapiko(?:/(\\d+[\\.\\d]+))?",name:"Kapiko",version:"$1",engine:{default:"Gecko"}},{regex:"Kylo(?:/(\\d+[\\.\\d]+))?",name:"Kylo",version:"$1",engine:{default:"Gecko"}},{regex:"Origin/(?:(\\d+[\\.\\d]+))?",name:"Origin In-Game Overlay",version:"$1"},{regex:"Cunaguaro(?:/(\\d+[\\.\\d]+))?",name:"Cunaguaro",version:"$1"},{regex:"(?:TO-Browser/TOB|DT-Browser/DTB)(\\d+[\\.\\d]+)",name:"t-online.de Browser",version:"$1"},{regex:"Kazehakase(?:/(\\d+[\\.\\d]+))?",name:"Kazehakase",version:"$1",engine:{default:""}},{regex:"ArcticFox(?:/(\\d+[\\.\\d]+))?",name:"Arctic Fox",version:"$1",engine:{default:"Goanna"}},{regex:"Mypal(?:/(\\d+[\\.\\d]+))?",name:"Mypal",version:"$1",engine:{default:"Goanna"}},{regex:"Centaury(?:/(\\d+[\\.\\d]+))?",name:"Centaury",version:"$1",engine:{default:"Goanna"}},{regex:"(?:Focus|Klar)(?:/(\\d+[\\.\\d]+))?",name:"Firefox Focus",version:"$1"},{regex:"Cyberfox(?:/(\\d+[\\.\\d]+))?",name:"Cyberfox",version:"$1",engine:{default:"Gecko"}},{regex:"Firefox/(\\d+[\\.\\d]+).*\\(Swiftfox\\)",name:"Swiftfox",version:"$1",engine:{default:"Gecko"}},{regex:"(?:Mobile|Tablet).*Servo.*Firefox(?:/(\\d+[\\.\\d]+))?",name:"Firefox Mobile",version:"$1",engine:{default:"Servo"}},{regex:"(?:Mobile|Tablet).*Firefox(?:/(\\d+[\\.\\d]+))?",name:"Firefox Mobile",version:"$1",engine:{default:"Gecko"}},{regex:"FxiOS/(\\d+[\\.\\d]+)",name:"Firefox Mobile iOS",version:"$1",engine:{default:"WebKit"}},{regex:".*Servo.*Firefox(?:/(\\d+[\\.\\d]+))?",name:"Firefox",version:"$1",engine:{default:"Servo"}},{regex:"(?!.*Opera[ /])Firefox(?:/(\\d+[\\.\\d]+))?",name:"Firefox",version:"$1",engine:{default:"Gecko"}},{regex:"(?:BonEcho|GranParadiso|Lorentz|Minefield|Namoroka|Shiretoko)/(\\d+[\\.\\d]+)",name:"Firefox",version:"$1",engine:{default:"Gecko"}},{regex:"ANTFresco(?:[/ ](\\d+[\\.\\d]+))?",name:"ANT Fresco",version:"$1"},{regex:"ANTGalio(?:/(\\d+[\\.\\d]+))?",name:"ANTGalio",version:"$1"},{regex:"(?:Espial|Escape)(?:[/ ](\\d+[\\.\\d]+))?",name:"Espial TV Browser",version:"$1"},{regex:"RockMelt(?:/(\\d+[\\.\\d]+))?",name:"RockMelt",version:"$1",engine:{default:"WebKit"}},{regex:"Fireweb Navigator(?:/(\\d+[\\.\\d]+))?",name:"Fireweb Navigator",version:"$1"},{regex:"Fireweb(?:/(\\d+[\\.\\d]+))?",name:"Fireweb",version:"$1"},{regex:"(?:Navigator|Netscape6?)(?:/(\\d+[\\.\\d]+))?",name:"Netscape",version:"$1",engine:{default:""}},{regex:"(?:Polarity)(?:[/ ](\\d+[\\.\\d]+))?",name:"Polarity",version:"$1"},{regex:"(?:QupZilla)(?:[/ ](\\d+[\\.\\d]+))?",name:"QupZilla",version:"$1"},{regex:"(?:Dooble)(?:[/ ](\\d+[\\.\\d]+))?",name:"Dooble",version:"$1"},{regex:"Whale/(\\d+[\\.\\d]+)",name:"Whale Browser",version:"$1",engine:{default:"Blink"}},{regex:"Obigo[ ]?(?:InternetBrowser|Browser)?(?:[ /]([a-z0-9]*))?",name:"Obigo",version:"$1"},{regex:"Obigo|Teleca",name:"Obigo",version:""},{regex:"UCBrowserHD/(\\d[\\d\\.]+)",name:"UC Browser HD",version:"$1"},{regex:"UCMini(?:[ /]?(\\d+[\\.\\d]+))?",name:"UC Browser Mini",version:"$1"},{regex:"UC[ ]?Browser.* \\(UCMini\\)",name:"UC Browser Mini",version:""},{regex:"UCTurbo(?:[ /]?(\\d+[\\.\\d]+))?",name:"UC Browser Turbo",version:"$1"},{regex:"UC[ ]?Browser.* \\(UCTurbo\\)",name:"UC Browser Turbo",version:""},{regex:"OPRGX(?:/(\\d+[\\.\\d]+))?",name:"Opera GX",version:"$1",engine:{default:"Blink"}},{regex:"(?:Opera Tablet.*Version|Opera/.+Opera Mobi.+Version|Mobile.+OPR)/(\\d+[\\.\\d]+)",name:"Opera Mobile",version:"$1",engine:{default:"Presto",versions:{"15":"Blink"}}},{regex:"MMS/(\\d+[\\.\\d]+)",name:"Opera Neon",version:"$1",engine:{default:"Blink"}},{regex:"OMI/(\\d+[\\.\\d]+)",name:"Opera Devices",version:"$1",engine:{default:"Blink"}},{regex:"Opera%20Touch/(\\d+[\\.\\d]+)? CFNetwork/.+Darwin/.+(?!.*x86_64)",name:"Opera Touch",version:"$1",engine:{default:"WebKit"}},{regex:"OPT/(\\d+[\\.\\d]+)",name:"Opera Touch",version:"$1",engine:{default:"Blink"}},{regex:"Opera/(\\d+[\\.\\d]+).+Opera Mobi",name:"Opera Mobile",version:"$1",engine:{default:"Presto",versions:{"15":"Blink"}}},{regex:"Opera ?Mini/(?:att/)?(\\d+[\\.\\d]+)",name:"Opera Mini",version:"$1",engine:{default:"Presto"}},{regex:"Opera ?Mini.+Version/(\\d+[\\.\\d]+)",name:"Opera Mini",version:"$1",engine:{default:"Presto"}},{regex:"OPiOS/(\\d+[\\.\\d]+)",name:"Opera Mini iOS",version:"$1",engine:{default:"WebKit"}},{regex:"Opera%20Mini/(\\d+[\\.\\d]+) CFNetwork",name:"Opera Mini iOS",version:"$1",engine:{default:"WebKit"}},{regex:"Opera.+Edition Next.+Version/(\\d+[\\.\\d]+)",name:"Opera Next",version:"$1",engine:{default:"Presto",versions:{"15":"Blink"}}},{regex:"(?:Opera|OPR)[/ ](?:9.80.*Version/)?(\\d+[\\.\\d]+).+Edition Next",name:"Opera Next",version:"$1",engine:{default:"Presto",versions:{"15":"Blink"}}},{regex:"(?:Opera[/ ]?|OPR[/ ])(?:9.80.*Version/)?(\\d+[\\.\\d]+)",name:"Opera",version:"$1",engine:{default:"",versions:{"7":"Presto","15":"Blink","3.5":"Elektra"}}},{regex:"rekonq(?:/(\\d+[\\.\\d]+))?",name:"Rekonq",version:"$1",engine:{default:"WebKit"}},{regex:"CoolNovo(?:/(\\d+[\\.\\d]+))?",name:"CoolNovo",version:"$1",engine:{default:""}},{regex:"(?:Comodo[ _])?Dragon(?!fruit)(?:/(\\d+[\\.\\d]+))?",name:"Comodo Dragon",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"ChromePlus(?:/(\\d+[\\.\\d]+))?",name:"ChromePlus",version:"$1",engine:{default:""}},{regex:"Conkeror(?:/(\\d+[\\.\\d]+))?",name:"Conkeror",version:"$1",engine:{default:"Gecko"}},{regex:"Konqueror(?:/(\\d+[\\.\\d]+))?",name:"Konqueror",version:"$1",engine:{default:"KHTML",versions:{"4":""}}},{regex:"(?:baidubrowser|bdbrowser(?:(?:hd)?_i18n)?|FlyFlow|BaiduHD)(?:[/ ](\\d+[\\.\\d]*))?",name:"Baidu Browser",version:"$1"},{regex:"(?:(?:BD)?Spark(?:Safe)?|BIDUBrowser)[/ ](\\d+[\\.\\d]*)",name:"Baidu Spark",version:"$1"},{regex:"YaBrowser(?:/(\\d+[\\.\\d]*)) \\(lite\\)?",name:"Yandex Browser Lite",version:"$1",engine:{default:"Blink"}},{regex:"YaBrowser(?:/(\\d+[\\.\\d]*))(?: \\((alpha|beta)\\))?",name:"Yandex Browser",version:"$1 $2",engine:{default:"Blink"}},{regex:"Ya(?:ndex)?SearchBrowser(?:/(\\d+[\\.\\d]*))",name:"Yandex Browser",version:"$1",engine:{default:"Blink"}},{regex:"Vivaldi(?:/(\\d+[\\.\\d]+))?",name:"Vivaldi",version:"$1",engine:{default:"Blink"}},{regex:"TweakStyle(?:/(\\d+[\\.\\d]+))?",name:"TweakStyle",version:"$1",engine:{default:"Blink"}},{regex:"Chrome.+Midori Browser/(\\d+[\\.\\d]+)",name:"Midori",version:"$1",engine:{default:"Blink"}},{regex:"Midori(?:/(\\d+[\\.\\d]+))?",name:"Midori",version:"$1",engine:{default:"WebKit"}},{regex:"Mercury(?:/(\\d+[\\.\\d]+))?",name:"Mercury",version:"$1"},{regex:"Chrome.+Maxthon(?:.+\\(portable\\))?/(\\d+[\\.\\d]+)",name:"Maxthon",version:"$1",engine:{default:"WebKit",versions:{"5.2":"Blink"}}},{regex:"(?:Maxthon(?:%20Browser)?|MxBrowser(?:-inhouse|-iPhone)?)[ /](\\d+[\\.\\d]+)",name:"Maxthon",version:"$1",engine:{default:"",versions:{"3":"WebKit"}}},{regex:"(?:Maxthon|MyIE2)",name:"Maxthon",version:"",engine:{default:""}},{regex:"Puffin(?:/(\\d+[\\.\\d]+))?",name:"Puffin",version:"$1"},{regex:"MobileIron(?:/(\\d+[\\.\\d]+))?",name:"Iron Mobile",version:"$1",engine:{default:"Blink"}},{regex:"Chrome(?:/(\\d+[\\.\\d]+))?.*Iron",name:"Iron",version:"$1",engine:{default:"WebKit"}},{regex:"Iron(?:/(\\d+[\\.\\d]+))?",name:"Iron",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"Epiphany(?:/(\\d+[\\.\\d]+))?",name:"GNOME Web",version:"$1",engine:{default:"Gecko",versions:{"2.9.16":"","2.28":"WebKit"}}},{regex:"LieBaoFast(?:[ /](\\d+[\\.\\d]+))?",name:"LieBaoFast",version:"$1"},{regex:"LBBrowser(?:[ /](\\d+[\\.\\d]+))?",name:"Cheetah Browser",version:"$1"},{regex:"SE (\\d+[\\.\\d]+)",name:"Sogou Explorer",version:"$1"},{regex:"QQBrowserLite/([\\d\\.]+)",name:"QQ Browser Lite",version:"$1"},{regex:"M?QQBrowser/Mini([\\.\\d]+)?",name:"QQ Browser Mini",version:"$1",engine:{default:""}},{regex:"M?QQBrowser(?:/([\\.\\d]+))?",name:"QQ Browser",version:"$1",engine:{default:""}},{regex:"(?:MIUIBrowser|MiuiBrowser)(?:/(\\d+[\\.\\d]+))?",name:"MIUI Browser",version:"$1",engine:{default:""}},{regex:"(?:coc_coc_browser|coccocbrowser|CocCoc)(?:/(\\d+[\\.\\d]+))?",name:"Coc Coc",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"DuckDuckGo/(\\d+[\\.\\d]*)",name:"DuckDuckGo Privacy Browser",version:"$1",engine:{default:"Blink"}},{regex:"Samsung ?Browser(?:[/ ](\\d+[\\.\\d]+))?",name:"Samsung Browser",version:"$1"},{regex:"(?:SFB(?:rowser)?)/(\\d+[\\.\\d]+)",name:"Super Fast Browser",version:"$1"},{regex:"com.browser.tssomas(?:/(\\d+[\\.\\d]+))?",name:"Super Fast Browser",version:"$1"},{regex:"EUI Browser(?:/(\\d+[\\.\\d]+))?",name:"EUI Browser",version:"$1"},{regex:"UBrowser(?:/(\\d+[\\.\\d]+))?",name:"UBrowser",version:"$1"},{regex:"Streamy(?:/(\\d+[\\.\\d]+))?",name:"Streamy",version:"$1",engine:{default:"WebKit"}},{regex:"isivioo",name:"Isivioo",version:"",engine:{default:"WebKit"}},{regex:"UC[ ]?Browser(?:[ /]?(\\d+[\\.\\d]+))?",name:"UC Browser",version:"$1"},{regex:"UCWEB(?:[ /]?(\\d+[\\.\\d]+))?",name:"UC Browser",version:"$1"},{regex:"UC AppleWebKit",name:"UC Browser",version:""},{regex:"Tenta/(\\d+[\\.\\d]+)",name:"Tenta Browser",version:"$1",engine:{default:"WebKit"}},{regex:"Rocket/(\\d+[\\.\\d]+)",name:"Firefox Rocket",version:"$1",engine:{default:"WebKit"}},{regex:"Web Explorer/(\\d+[\\.\\d]+).*Chrome",name:"Web Explorer",version:"$1",engine:{default:"WebKit"}},{regex:"SznProhlizec/(\\d+[\\.\\d]+)",name:"Seznam Browser",version:"$1",engine:{default:"Blink"}},{regex:"SogouMobileBrowser/(\\d+[\\.\\d]+)",name:"Sogou Mobile Browser",version:"$1",engine:{default:""}},{regex:"Mint Browser/(\\d+[\\.\\d]+)",name:"Mint Browser",version:"$1",engine:{default:""}},{regex:"Ecosia (?:android|ios)@(\\d+[\\.\\d]+)",name:"Ecosia",version:"$1",engine:{default:""}},{regex:"ACHEETAHI",name:"CM Browser",version:"",engine:{default:""}},{regex:"Kiwi Chrome",name:"Kiwi",version:"",engine:{default:""}},{regex:"Mb2345Browser/(\\d+[\\.\\d]+)",name:"2345 Browser",version:"$1",engine:{default:""}},{regex:"QtWebEngine/(\\d+[\\.\\d]+)",name:"QtWebEngine",version:"$1",engine:{default:""}},{regex:"Silk/(\\d+[\\.\\d]+) like Chrome",name:"Mobile Silk",version:"$1",engine:{default:"Blink"}},{regex:"Silk(?:/(\\d+[\\.\\d]+))?",name:"Mobile Silk",version:"$1",engine:{default:"WebKit"}},{regex:"IBrowse(?:[ /](\\d+[\\.\\d]+))?",name:"IBrowse",version:"$1"},{regex:"UP.Browser(?:/(\\d+[\\.\\d]+))?",name:"Openwave Mobile Browser",version:"$1"},{regex:"Openwave(?:/(\\d+[\\.\\d]+))?",name:"Openwave Mobile Browser",version:"$1"},{regex:"OneBrowser(?:[ /](\\d+[\\.\\d]+))?",name:"ONE Browser",version:"$1",engine:{default:"WebKit"}},{regex:"(?:NokiaBrowser|BrowserNG)(?:/(\\d+[\\.\\d]+))?",name:"Nokia Browser",version:"$1"},{regex:"Series60/5\\.0",name:"Nokia Browser",version:"7.0"},{regex:"Series60/(\\d+[\\.\\d]+)",name:"Nokia OSS Browser",version:"$1"},{regex:"S40OviBrowser/(\\d+[\\.\\d]+)",name:"Nokia Ovi Browser",version:"$1"},{regex:"^Nokia|Nokia[EN]?\\d+",name:"Nokia Browser",version:""},{regex:"Sleipnir(?:(?:%20Browser)?[ /](\\d+[\\.\\d]+))?",name:"Sleipnir",version:"$1",engine:{default:""}},{regex:"NTENTBrowser(?:/(\\d+[\\.\\d]+))?",name:"NTENT Browser",version:"$1"},{regex:"TV Bro/(\\d+[\\.\\d]+)",name:"TV Bro",version:"$1"},{regex:"Chrome/.+ Quark(?:/(\\d+[\\.\\d]+))?",name:"Quark",version:"$1",engine:{default:"WebKit"}},{regex:"MonumentBrowser(?:/(\\d+[\\.\\d]+))?",name:"Monument Browser",version:"$1",engine:{default:"WebKit"}},{regex:"BlueBrowser(?:/(\\d+[\\.\\d]+))?",name:"Blue Browser",version:"$1",engine:{default:"WebKit"}},{regex:"JAPAN Browser(?:/(\\d+[\\.\\d]+))?",name:"Japan Browser",version:"$1",engine:{default:"WebKit"}},{regex:"Version/.* Chrome(?:/(\\d+[\\.\\d]+))?",name:"Chrome Webview",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"CrMo(?:/(\\d+[\\.\\d]+))?",name:"Chrome Mobile",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"CriOS(?:/(\\d+[\\.\\d]+))?",name:"Chrome Mobile iOS",version:"$1",engine:{default:"WebKit"}},{regex:"Chrome(?:/(\\d+[\\.\\d]+))? Mobile",name:"Chrome Mobile",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"chromeframe(?:/(\\d+[\\.\\d]+))?",name:"Chrome Frame",version:"$1",engine:{default:"WebKit"}},{regex:"Chromium(?:/(\\d+[\\.\\d]+))?",name:"Chromium",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"HeadlessChrome(?:/(\\d+[\\.\\d]+))?",name:"Headless Chrome",version:"$1",engine:{default:"Blink"}},{regex:"Chrome(?!book)(?:/(\\d+[\\.\\d]+))?",name:"Chrome",version:"$1",engine:{default:"WebKit",versions:{"28":"Blink"}}},{regex:"(?:Tizen|SLP) Browser(?:/(\\d+[\\.\\d]+))?",name:"Tizen Browser",version:"$1"},{regex:"Blazer(?:/(\\d+[\\.\\d]+))?",name:"Palm Blazer",version:"$1"},{regex:"Pre/(\\d+[\\.\\d]+)",name:"Palm Pre",version:"$1"},{regex:"(?:hpw|web)OS/(\\d+[\\.\\d]+)",name:"wOSBrowser",version:"$1"},{regex:"WebPro(?:[ /](\\d+[\\.\\d]+))?",name:"Palm WebPro",version:"$1"},{regex:"Palmscape(?:[ /](\\d+[\\.\\d]+))?",name:"Palmscape",version:"$1"},{regex:"Jasmine(?:[ /](\\d+[\\.\\d]+))?",name:"Jasmine",version:"$1"},{regex:"Lynx(?:/(\\d+[\\.\\d]+))?",name:"Lynx",version:"$1",engine:{default:"Text-based"}},{regex:"NCSA_Mosaic(?:/(\\d+[\\.\\d]+))?",name:"NCSA Mosaic",version:"$1"},{regex:"ABrowse(?: (\\d+[\\.\\d]+))?",name:"ABrowse",version:"$1"},{regex:"amaya(?:/(\\d+[\\.\\d]+))?",name:"Amaya",version:"$1"},{regex:"AmigaVoyager(?:/(\\d+[\\.\\d]+))?",name:"Amiga Voyager",version:"$1"},{regex:"Amiga-Aweb(?:/(\\d+[\\.\\d]+))?",name:"Amiga Aweb",version:"$1"},{regex:"Arora(?:/(\\d+[\\.\\d]+))?",name:"Arora",version:"$1",engine:{default:"WebKit"}},{regex:"Beonex(?:/(\\d+[\\.\\d]+))?",name:"Beonex",version:"$1",engine:{default:"Gecko"}},{regex:"bline(?:/(\\d+[\\.\\d]+))?",name:"B-Line",version:"$1",engine:{default:"WebKit"}},{regex:"BrowseX \\((\\d+[\\.\\d]+)",name:"BrowseX",version:"$1"},{regex:"Charon(?:[/ ](\\d+[\\.\\d]+))?",name:"Charon",version:"$1"},{regex:"Cheshire(?:/(\\d+[\\.\\d]+))?",name:"Cheshire",version:"$1"},{regex:"dbrowser",name:"dbrowser",version:"",engine:{default:"WebKit"}},{regex:"Dillo(?:/(\\d+[\\.\\d]+))?",name:"Dillo",version:"$1",engine:{default:"Dillo"}},{regex:"Dolfin(?:/(\\d+[\\.\\d]+))?|dolphin",name:"Dolphin",version:"$1",engine:{default:"WebKit"}},{regex:"Elinks(?:/(\\d+[\\.\\d]+))?",name:"Elinks",version:"$1",engine:{default:"Text-based"}},{regex:"Element Browser(?:[ /](\\d+[\\.\\d]+))?",name:"Element Browser",version:"$1"},{regex:"eZBrowser(?:/(\\d+[\\.\\d]+))?",name:"eZ Browser",version:"$1"},{regex:"Firebird(?! Build)(?:/(\\d+[\\.\\d]+))?",name:"Firebird",version:"$1",engine:{default:"Gecko"}},{regex:"Fluid(?:/(\\d+[\\.\\d]+))?",name:"Fluid",version:"$1",engine:{default:"WebKit"}},{regex:"Galeon(?:/(\\d+[\\.\\d]+))?",name:"Galeon",version:"$1",engine:{default:"Gecko"}},{regex:"Google Earth(?:/(\\d+[\\.\\d]+))?",name:"Google Earth",version:"$1",engine:{default:"WebKit"}},{regex:"HotJava(?:/(\\d+[\\.\\d]+))?",name:"HotJava",version:"$1"},{regex:"iCabMobile(?:[ /](\\d+[\\.\\d]+))?",name:"iCab Mobile",version:"$1",engine:{default:"WebKit"}},{regex:"iCab(?:[ /](\\d+[\\.\\d]+))?",name:"iCab",version:"$1",engine:{default:"iCab",versions:{"4":"WebKit"}}},{regex:"i?Lunascape(?:[/ ](\\d+[\\.\\d]+))?",name:"Lunascape",version:"$1",engine:{default:""}},{regex:"Crazy Browser (\\d+[\\.\\d]+)",name:"Crazy Browser",version:"$1",engine:{default:"Trident"}},{regex:"IEMobile[ /](\\d+[\\.\\d]+)",name:"IE Mobile",version:"$1",engine:{default:"Trident"}},{regex:"MSIE (\\d+[\\.\\d]+).*XBLWP7",name:"IE Mobile",version:"$1",engine:{default:"Trident"}},{regex:"MSIE.*Trident/4.0",name:"Internet Explorer",version:"8.0",engine:{default:"Trident"}},{regex:"MSIE.*Trident/5.0",name:"Internet Explorer",version:"9.0",engine:{default:"Trident"}},{regex:"MSIE.*Trident/6.0",name:"Internet Explorer",version:"10.0",engine:{default:"Trident"}},{regex:"Trident/[78].0",name:"Internet Explorer",version:"11.0",engine:{default:"Trident"}},{regex:"MSIE (\\d+[\\.\\d]+)",name:"Internet Explorer",version:"$1",engine:{default:"Trident"}},{regex:"IE[ /](\\d+[\\.\\d]+)",name:"Internet Explorer",version:"$1",engine:{default:"Trident"}},{regex:"Kindle/(\\d+[\\.\\d]+)",name:"Kindle Browser",version:"$1"},{regex:"K-meleon(?:/(\\d+[\\.\\d]+))?",name:"K-meleon",version:"$1",engine:{default:"Gecko"}},{regex:"Links(?: \\((\\d+[\\.\\d]+))?",name:"Links",version:"$1",engine:{default:"Text-based"}},{regex:"LG Browser(?:/(\\d+[\\.\\d]+))",name:"LG Browser",version:"$1"},{regex:"LuaKit(?:/(\\d+[\\.\\d]+))?",name:"LuaKit",version:"$1"},{regex:"OmniWeb(?:/[v]?(\\d+[\\.\\d]+))?",name:"OmniWeb",version:"$1",engine:{default:"WebKit"}},{regex:"Phoenix(?:/(\\d+[\\.\\d]+))?",name:"Phoenix",version:"$1"},{regex:"NetFrontLifeBrowser(?:/(\\d+[\\.\\d]+))?",name:"NetFront Life",version:"$1",engine:{default:"NetFront"}},{regex:"NetFront(?:/(\\d+[\\.\\d]+))?",name:"NetFront",version:"$1",engine:{default:"NetFront"}},{regex:"PLAYSTATION|NINTENDO 3|AppleWebKit.+ N[XF]/\\d+\\.\\d+\\.\\d+",name:"NetFront",version:""},{regex:"NetPositive(?:/(\\d+[\\.\\d]+))?",name:"NetPositive",version:"$1"},{regex:"Odyssey Web Browser(?:.*OWB/(\\d+[\\.\\d]+))?",name:"Odyssey Web Browser",version:"$1"},{regex:"OffByOne",name:"Off By One",version:""},{regex:"(?:Oregano|OreganMediaBrowser)(?:[ /](\\d+[\\.\\d]+))?",name:"Oregano",version:"$1"},{regex:"(?:Polaris|Embider)(?:[/ ](\\d+[\\.\\d]+))?",name:"Polaris",version:"$1"},{regex:"SEMC-Browser(?:[/ ](\\d+[\\.\\d]+))?",name:"SEMC-Browser",version:"$1"},{regex:"Shiira(?:[/ ](\\d+[\\.\\d]+))?",name:"Shiira",version:"$1",engine:{default:"WebKit"}},{regex:"Skyfire(?:[/ ](\\d+[\\.\\d]+))?",name:"Skyfire",version:"$1"},{regex:"Snowshoe(?:/(\\d+[\\.\\d]+))?",name:"Snowshoe",version:"$1",engine:{default:"WebKit"}},{regex:"Sunrise(?:Browser)?(?:/(\\d+[\\.\\d]+))?",name:"Sunrise",version:"$1"},{regex:"SuperBird(?:/(\\d+[\\.\\d]+))?",name:"SuperBird",version:"$1"},{regex:"Vision-Browser(?:/(\\d+[\\.\\d]+))",name:"Vision Mobile Browser",version:"$1"},{regex:"WeTab-Browser",name:"WeTab Browser",version:""},{regex:"Xiino(?:/(\\d+[\\.\\d]+))?",name:"Xiino",version:"$1"},{regex:"BlackBerry|PlayBook|BB10",name:"BlackBerry Browser",version:""},{regex:"Android",name:"Android Browser",version:"",engine:{default:"WebKit"}},{regex:"Coast(?:/(\\d+[\\.\\d]+))?",name:"Coast",version:"$1"},{regex:"Surf(?:/(\\d+[\\.\\d]+))?",name:"surf",version:"$1",engine:{default:"WebKit"}},{regex:"(?:(?:iPod|iPad|iPhone).+Version|MobileSafari)/(\\d+[\\.\\d]+)",name:"Mobile Safari",version:"$1",engine:{default:"WebKit"}},{regex:"(?:Version/(\\d+[\\.\\d]+).*)?Mobile.*Safari/",name:"Mobile Safari",version:"$1",engine:{default:"WebKit"}},{regex:"(?:iPod|iPhone|iPad)",name:"Mobile Safari",version:"",engine:{default:"WebKit"}},{regex:"Version/(\\d+[\\.\\d]+).*Safari/|Safari/?\\d+",name:"Safari",version:"$1",engine:{default:"WebKit"}},{regex:"Dorado WAP-Browser[/ ](\\d+[\\.\\d]+)",name:"Dorado",version:"$1"},{regex:"NetSurf(?:/(\\d+[\\.\\d]+))?",name:"NetSurf",version:"$1",engine:{default:"NetSurf"}},{regex:"Uzbl",name:"Uzbl",version:""},{regex:"SimpleBrowser",name:"SimpleBrowser",version:""},{regex:"Zvu(?:/(\\d+[\\.\\d]+))?",name:"Zvu",version:"$1",engine:{default:"Gecko"}},{regex:"GOGGalaxyClient/(\\d+[\\.\\d]+)?",name:"GOG Galaxy",version:"$1"},{regex:"WAP Browser/MAUI|(?:\\w+)?Maui Wap Browser|MAUI[- ]Browser",name:"MAUI WAP Browser",version:""},{regex:"SP%20Browser/(\\d+[\\.\\d]+)",name:"SP Browser",version:"$1",engine:{default:"WebKit"}}]});var Bt=u((Zm,Ga)=>{Ga.exports=[{regex:"NetFront",name:"NetFront"},{regex:"Edge",name:"Edge"},{regex:"Trident",name:"Trident"},{regex:"(?{Ea.exports={"1B":"115 Browser","2B":"2345 Browser","36":"360 Phone Browser","3B":"360 Browser","7B":"7654 Browser",AA:"Avant Browser",AB:"ABrowse",AF:"ANT Fresco",AG:"ANTGalio",AL:"Aloha Browser",AH:"Aloha Browser Lite",AM:"Amaya",AO:"Amigo",AN:"Android Browser",AE:"AOL Desktop",AD:"AOL Shield",AR:"Arora",AX:"Arctic Fox",AV:"Amiga Voyager",AW:"Amiga Aweb",A0:"Atom",AT:"Atomic Web Browser",AS:"Avast Secure Browser",VG:"AVG Secure Browser",AC:"Avira Scout",A1:"AwoX",BA:"Beaker Browser",BM:"Beamrise",BB:"BlackBerry Browser",BD:"Baidu Browser",BS:"Baidu Spark",BI:"Basilisk",BE:"Beonex",BH:"BlackHawk",BJ:"Bunjalloo",BL:"B-Line",BU:"Blue Browser",BN:"Borealis Navigator",BR:"Brave",BK:"BriskBard",BX:"BrowseX",BZ:"Browzar",BY:"Biyubi",BF:"Byffox",CA:"Camino",CL:"CCleaner",C6:"Chedot",C0:"Centaury",CC:"Coc Coc",C4:"CoolBrowser",C2:"Colibri",CD:"Comodo Dragon",C1:"Coast",CX:"Charon",CE:"CM Browser",CF:"Chrome Frame",HC:"Headless Chrome",CH:"Chrome",CI:"Chrome Mobile iOS",CK:"Conkeror",CM:"Chrome Mobile",CN:"CoolNovo",CO:"CometBird",CB:"COS Browser",CW:"Cornowser",C3:"Chim Lac",CP:"ChromePlus",CR:"Chromium",C5:"Chromium GOST",CY:"Cyberfox",CS:"Cheshire",CT:"Crusta",CG:"Craving Explorer",CZ:"Crazy Browser",CU:"Cunaguaro",CV:"Chrome Webview",DB:"dbrowser",DE:"Deepnet Explorer",DG:"deg-degan",DA:"Deledao",DT:"Delta Browser",DS:"DeskBrowse",DF:"Dolphin",DO:"Dorado",DR:"Dot Browser",DL:"Dooble",DI:"Dillo",DD:"DuckDuckGo Privacy Browser",EC:"Ecosia",EI:"Epic",EL:"Elinks",EB:"Element Browser",EE:"Elements Browser",EZ:"eZ Browser",EU:"EUI Browser",EP:"GNOME Web",ES:"Espial TV Browser",FA:"Falkon",FX:"Faux Browser",F1:"Firefox Mobile iOS",FB:"Firebird",FD:"Fluid",FE:"Fennec",FF:"Firefox",FK:"Firefox Focus",FY:"Firefox Reality",FR:"Firefox Rocket",FL:"Flock",FO:"Flow",FM:"Firefox Mobile",FW:"Fireweb",FN:"Fireweb Navigator",FS:"Flast",FU:"FreeU",GA:"Galeon",GH:"Ghostery Privacy Browser",GI:"GinxDroid Browser",GB:"Glass Browser",GE:"Google Earth",GO:"GOG Galaxy",HS:"HasBrowser",HA:"Hawk Turbo Browser",HE:"Helio",HO:"hola! Browser",HJ:"HotJava",HU:"Huawei Browser",IB:"IBrowse",IC:"iCab",I2:"iCab Mobile",I1:"Iridium",I3:"Iron Mobile",I4:"IceCat",ID:"IceDragon",IV:"Isivioo",IW:"Iceweasel",IE:"Internet Explorer",IM:"IE Mobile",IR:"Iron",JB:"Japan Browser",JS:"Jasmine",JA:"JavaFX",JI:"Jig Browser",JP:"Jig Browser Plus",JO:"Jio Browser",KB:"K.Browser",KI:"Kindle Browser",KM:"K-meleon",KO:"Konqueror",KP:"Kapiko",KN:"Kinza",KW:"Kiwi",KD:"Kode Browser",KY:"Kylo",KZ:"Kazehakase",LB:"Cheetah Browser",LF:"LieBaoFast",LG:"LG Browser",LH:"Light",LI:"Links",IF:"Lolifox",LO:"Lovense Browser",LU:"LuaKit",LL:"Lulumi",LS:"Lunascape",LN:"Lunascape Lite",LX:"Lynx",M1:"mCent",MB:"MicroB",MC:"NCSA Mosaic",MZ:"Meizu Browser",ME:"Mercury",MF:"Mobile Safari",MI:"Midori",MO:"Mobicip",MU:"MIUI Browser",MS:"Mobile Silk",MN:"Minimo",MT:"Mint Browser",MX:"Maxthon",NM:"MxNitro",MY:"Mypal",MR:"Monument Browser",MW:"MAUI WAP Browser",NW:"Navigateur Web",NR:"NFS Browser",NB:"Nokia Browser",NO:"Nokia OSS Browser",NV:"Nokia Ovi Browser",NX:"Nox Browser",NE:"NetSurf",NF:"NetFront",NL:"NetFront Life",NP:"NetPositive",NS:"Netscape",NT:"NTENT Browser",OC:"Oculus Browser",O1:"Opera Mini iOS",OB:"Obigo",O2:"Odin",H2:"OceanHero",OD:"Odyssey Web Browser",OF:"Off By One",HH:"OhHai Browser",OE:"ONE Browser",OX:"Opera GX",OG:"Opera Neon",OH:"Opera Devices",OI:"Opera Mini",OM:"Opera Mobile",OP:"Opera",ON:"Opera Next",OO:"Opera Touch",OA:"Orca",OS:"Ordissimo",OR:"Oregano",O0:"Origin In-Game Overlay",OY:"Origyn Web Browser",OV:"Openwave Mobile Browser",OW:"OmniWeb",OT:"Otter Browser",PL:"Palm Blazer",PM:"Pale Moon",PY:"Polypane",PP:"Oppo Browser",PR:"Palm Pre",PU:"Puffin",PW:"Palm WebPro",PA:"Palmscape",PE:"Perfect Browser",PH:"Phantom Browser",PX:"Phoenix",PB:"Phoenix Browser",PF:"PlayFree Browser",PO:"Polaris",PT:"Polarity",LY:"PolyBrowser",PI:"PrivacyWall",PS:"Microsoft Edge",QA:"Qazweb",Q2:"QQ Browser Lite",Q1:"QQ Browser Mini",QQ:"QQ Browser",QT:"Qutebrowser",QU:"Quark",QZ:"QupZilla",QM:"Qwant Mobile",QW:"QtWebEngine",RE:"Realme Browser",RK:"Rekonq",RM:"RockMelt",SB:"Samsung Browser",SA:"Sailfish Browser",S8:"Seewo Browser",SC:"SEMC-Browser",SE:"Sogou Explorer",SF:"Safari",S5:"Safe Exam Browser",SW:"SalamWeb",SV:"SFive",SH:"Shiira",S1:"SimpleBrowser",SY:"Sizzy",SK:"Skyfire",SS:"Seraphic Sraf",SL:"Sleipnir",S6:"Slimjet",S7:"SP Browser","7S":"7Star",LE:"Smart Lenovo Browser",OZ:"Smooz",SN:"Snowshoe",SO:"Sogou Mobile Browser",S2:"Splash",SI:"Sputnik Browser",SR:"Sunrise",SP:"SuperBird",SU:"Super Fast Browser",S3:"surf",SG:"Stargon",S0:"START Internet Browser",S4:"Steam In-Game Overlay",ST:"Streamy",SX:"Swiftfox",SZ:"Seznam Browser",TR:"T-Browser",TO:"t-online.de Browser",TA:"Tao Browser",TF:"TenFourFox",TB:"Tenta Browser",TZ:"Tizen Browser",TU:"Tungsten",TG:"ToGate",TS:"TweakStyle",TV:"TV Bro",UB:"UBrowser",UC:"UC Browser",UH:"UC Browser HD",UM:"UC Browser Mini",UT:"UC Browser Turbo",UR:"UR Browser",UZ:"Uzbl",VE:"Venus Browser",VI:"Vivaldi",VV:"vivo Browser",VB:"Vision Mobile Browser",VM:"VMware AirWatch",WI:"Wear Internet Browser",WP:"Web Explorer",WE:"WebPositive",WF:"Waterfox",WH:"Whale Browser",WO:"wOSBrowser",WT:"WeTab Browser",YJ:"Yahoo! Japan Browser",YA:"Yandex Browser",YL:"Yandex Browser Lite",YN:"Yaani Browser",YB:"Yolo Browser",XS:"xStand",XI:"Xiino",XV:"Xvast",ZE:"Zetakey",ZV:"Zvu"}});var Nt=u((zm,ya)=>{ya.exports=["36","OC","PU","SK","MF","OI","OM","DD","DB","ST","BL","IV","FM","C1","C4","SA","SB","FR","WP","HA","NX","HU","VV","RE","CB","MZ","UM","FK","FX","WI","MN","M1","AH","SU","EU","EZ","UT","DT","S0","QU","YN","JB","GH","PI","SG","KD","PE","UH","S7","CW","OZ","GI","VE"]});var qr=u(Ge=>{"use strict";var ur=Ge&&Ge.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Ge,"__esModule",{value:!0});var cr=j(),Ot=N(),Ba=L(),Ca=ur(yt()),Na=ur(Bt()),Oa=ur(Ct()),wa=ur(Nt()),xe=class{constructor(e){this.options={versionTruncation:1},this.parse=r=>{let t={type:"",name:"",version:"",engine:"",engineVersion:""};for(let i of Ca.default){let l=Ba.userAgentParser(i.regex,r);if(!l)continue;let a=Ot.variableReplacement(i.version,l),n=cr.formatVersion(a,this.options.versionTruncation),d=n&&parseFloat(cr.formatVersion(a,1))||"";if(i.engine&&(t.engine=i.engine.default,i.engine&&i.engine.versions&&d)){let m=Object.entries(i.engine.versions).sort((g,S)=>parseFloat(g[0])>parseFloat(S[0])?1:-1);for(let[g,S]of m)parseFloat(g)<=d&&(t.engine=S||"")}t.type="browser",t.name=Ot.variableReplacement(i.name,l),t.version=n;break}if(!t.engine)for(let i of Na.default){let l=null;try{l=RegExp(i.regex,"i").exec(r)}catch{}if(l){t.engine=i.name;break}}return t.engineVersion=cr.formatVersion(cr.parseBrowserEngineVersion(r,t.engine),this.options.versionTruncation),t},this.options=Object.assign(Object.assign({},this.options),e)}};Ge.default=xe;xe.getBrowserShortName=o=>{for(let[e,r]of Object.entries(Oa.default))if(r===o)return e;return""};xe.isMobileOnlyBrowser=o=>wa.default.includes(xe.getBrowserShortName(o))});var wt=u((qm,Ia)=>{Ia.exports=[{regex:"AndroidDownloadManager(?:[ /]([\\d\\.]+))?",name:"AndroidDownloadManager",version:"$1"},{regex:"(?:Apple)?News(?:[ /][\\d\\.]+)? Version(?:[ /]([\\d\\.]+))?",name:"Apple News",version:"$1"},{regex:"bPod",name:"bPod",version:""},{regex:"MessengerLiteForiOS.(?:FBAV)(?:[ /]([\\d\\.]+))?",name:"Facebook Messenger Lite",version:"$1"},{regex:"(?:MessengerForiOS|MESSENGER).(?:FBAV)(?:[ /]([\\d\\.]+))?",name:"Facebook Messenger",version:"$1"},{regex:"(?:FBAV|com.facebook.katana)(?:[ /]([\\d\\.]+))?",name:"Facebook",version:"$1"},{regex:"(?:FBAN|FBSV|FBID|FBBV)/",name:"Facebook",version:""},{regex:"FeedR(?:/([\\d\\.]+))?",name:"FeedR",version:"$1"},{regex:"com.google.android.apps.searchlite",name:"Google Go",version:""},{regex:"com.google.android.apps.magazines",name:"Google Play Newsstand",version:""},{regex:"com.google.GooglePlus",name:"Google Plus",version:""},{regex:"MicroMessenger/([^; ]+)",name:"WeChat",version:"$1"},{regex:"WeChatShareExtensionNew/([\\d\\.]+)",name:"WeChat Share Extension",version:"$1"},{regex:"DingTalk/([0-9\\.]+)",name:"DingTalk",version:"$1"},{regex:".*__weibo__([0-9\\.]+)__",name:"Sina Weibo",version:"$1"},{regex:"Pinterest(?: for (?:Android|iOS))?(?:/([\\d\\.]+))?",name:"Pinterest",version:"$1"},{regex:"Podcatcher Deluxe",name:"Podcatcher Deluxe",version:""},{regex:"com.google.android.youtube(?:/([\\d\\.]+))?",name:"YouTube",version:"$1"},{regex:"([^/]+)/(\\d+(?:\\.\\d+)+) \\((?:iPhone|iPad); iOS [0-9\\.]+; Scale/[0-9\\.]+\\)",name:"$1",version:"$2"},{regex:"WhatsApp(?:[ /]([\\d\\.]+))?",name:"WhatsApp",version:"$1"},{regex:"Line(?:[ /]([\\d\\.]+))",name:"Line",version:"$1"},{regex:"Instacast(?:HD)?/(\\d\\.[\\d\\.abc]+) CFNetwork/([\\d\\.]+) Darwin/([\\d\\.]+)",name:"Instacast",version:"$1"},{regex:"Podcasts/([\\d\\.]+)",name:"Podcasts",version:"$1"},{regex:"Pocket Casts(?:, (?:Android|iOS) v([\\d\\.]+))?",name:"Pocket Casts",version:"$1"},{regex:"Podcat/([\\d\\.]+)",name:"Podcat",version:"$1"},{regex:"BeyondPod",name:"BeyondPod",version:null},{regex:"AntennaPod/?([\\d\\.]+)?",name:"AntennaPod",version:"$1"},{regex:"Overcast/([\\d\\.]+)",name:"Overcast",version:"$1"},{regex:"(?:CastBox|fm.castbox.audiobook.radio.podcast)/?([\\d\\.]+)?",name:"CastBox",version:"$1"},{regex:"Player FM",name:"Player FM",version:""},{regex:"Podkicker(?: Pro)?/([\\d\\.]+)",name:"Podkicker",version:"$1"},{regex:"PodcastRepublic/([\\d\\.]+)",name:"Podcast Republic",version:"$1"},{regex:"Castro/(\\d+)",name:"Castro",version:"$1"},{regex:"Castro 2 ([\\d\\.]+)/[\\d]+ Like iTunes",name:"Castro 2",version:"$1"},{regex:"Castro 2",name:"Castro 2",version:""},{regex:"DoggCatcher",name:"DoggCatcher",version:null},{regex:"PodcastAddict/v([\\d]+)",name:"Podcast & Radio Addict",version:"$1"},{regex:"Podcat(?:%202)?/([\\d]+) CFNetwork",name:"Podcat",version:"$1"},{regex:"iCatcher[^\\d]+([\\d\\.]+)",name:"iCatcher",version:"$1"},{regex:"YelpApp/([\\d\\.]+)",name:"Yelp Mobile",version:"$1"},{regex:"jp.co.yahoo.android.yjtop/([\\d\\.]+)",name:"Yahoo! Japan",version:"$1"},{regex:"RSSRadio/([\\d]+)?",name:"RSSRadio",version:"$1"},{regex:"SogouSearch Android[\\d\\.]+ version([\\d\\.]+)?",name:"SogouSearch App",version:"$1"},{regex:"NewsArticle/([\\d\\.]+)?",name:"NewsArticle App",version:"$1"},{regex:"tieba/([\\d\\.]+)?",name:"tieba",version:"$1"},{regex:"com\\.douban\\.group/([\\d\\.]+)?",name:"douban App",version:"$1"},{regex:"BingWeb/([\\d\\.]+)?",name:"BingWebApp",version:"$1"},{regex:"(?:com.google.GoogleMobile|GSA)/([\\d\\.]+)?",name:"Google Search App",version:"$1"},{regex:"Flipboard/([\\d\\.]+)?",name:"Flipboard App",version:"$1"},{regex:"Instagram[ /]([\\d\\.]+)?",name:"Instagram App",version:"$1"},{regex:"baiduboxapp/([\\d\\.]+)?",name:"Baidu Box App",version:"$1"},{regex:"Crosswalk(?!.*(?:Streamy|QwantMobile))/([\\d\\.]+)?",name:"CrosswalkApp",version:"$1"},{regex:"Twitter for iPhone[/]?([\\d\\.]+)?",name:"Twitter",version:"$1"},{regex:"Twitter/([\\d\\.]+)",name:"Twitter",version:"$1"},{regex:"TwitterAndroid[/]?([\\d\\.]+)?",name:"Twitter",version:"$1"},{regex:"TopBuzz/([\\d\\.]+)",name:"TopBuzz",version:"$1"},{regex:"Snapchat/([\\d\\.]+)",name:"Snapchat",version:"$1"},{regex:"UnityPlayer/([\\d\\.]+)",name:"UnityPlayer",version:"$1"},{regex:"UCURSOS/v([\\d\\.]+)",name:"U-Cursos",version:"$1"},{regex:"HeyTapBrowser/([\\d\\.]+)",name:"HeyTapBrowser",version:"$1"},{regex:"RobloxApp/([\\d\\.]+)",name:"Roblox",version:"$1"},{regex:"Viber/([\\d\\.]+)",name:"Viber",version:"$1"},{regex:"Siri/1",name:"Siri",version:"1.0"},{regex:"LinkedIn/([\\d\\.]+)",name:"LinkedIn",version:"$1"},{regex:"Instapaper/([\\d\\.]+)",name:"Instapaper",version:"$1"},{regex:"Keeper/([\\d\\.]+)",name:"Keeper Password Manager",version:"$1"},{regex:"Skyeng Teachers/([\\d\\.]+)",name:"Skyeng Teachers",version:"$1"},{regex:"Kik/([\\d\\.]+) \\(Android",name:"Kik",version:"$1"},{regex:"Procast/?([\\d\\.]+)?",name:"Procast",version:"$1"},{regex:"DeviantArt/([\\d\\.]+)",name:"DeviantArt",version:""},{regex:"Discord/([\\d\\.]+)",name:"Discord",version:""},{regex:"Covenant%20Eyes/([\\d\\.]+)",name:"Covenant Eyes",version:"$1"},{regex:"HP%20Smart/([\\d\\.]+)",name:"HP Smart",version:""},{regex:"Bitsboard/([\\d\\.]+)",name:"Bitsboard",version:"$1"},{regex:"Betbull/([\\d\\.]+)",name:"BetBull",version:""},{regex:"U-Cursos/([\\d\\.]+)",name:"U-Cursos",version:""},{regex:"1PasswordThumbs/([\\d\\.]+)",name:"1Password",version:"$1"},{regex:"(?:Microsoft Office )?(Access|Excel|OneDrive for Business|OneNote|PowerPoint|Project|Publisher|Visio|Word)[ /]([\\d\\.]+)",name:"Microsoft Office $1",version:"$2"},{regex:"OneDriveiOSApp/([\\d\\.]+)",name:"Microsoft OneDrive",version:"$1"},{regex:"Microsoft Office Mobile/([\\d\\.]+)",name:"Microsoft Office Mobile",version:"$1"},{regex:"OC/([\\d\\.]+) \\(Skype for Business\\)",name:"Skype for Business",version:"$1"},{regex:"TikTok[/ ](\\d+\\.(?:[\\.\\d]+))?",name:"TikTok",version:"$1"},{regex:"NAVER/(\\d+[\\.\\d]+) CFNetwork",name:"Naver",version:"$1"},{regex:"Copied/(\\d+[\\.\\d]+) CFNetwork",name:"Copied",version:""},{regex:"Pic%20Collage/(\\d+[\\.\\d]+) CFNetwork",name:"Pic Collage",version:"$1"},{regex:"Papers/(\\d+[\\.\\d]+) CFNetwork",name:"Papers",version:"$1"},{regex:"RoboForm/(\\d+[\\.\\d]+) CFNetwork",name:"RoboForm",version:""},{regex:"Slack/(\\d+[\\.\\d]+) CFNetwork",name:"Slack",version:""},{regex:"KAKAOTALK (\\d+\\.(?:[\\.\\d]+))?",name:"KakaoTalk",version:"$1"},{regex:"ShopeeVN/([\\d\\.]+)",name:"Shopee",version:"$1"},{regex:"SPORT1/([\\d\\.]+)",name:"SPORT1",version:""},{regex:"Clovia/([\\d\\.]+)",name:"Clovia",version:"$1"},{regex:"ShowMe/([\\d\\.]+)",name:"ShowMe",version:"$1"},{regex:"Wattpad/([\\d\\.]+)",name:"Wattpad",version:"$1"},{regex:"WSJ/([\\d\\.]+)",name:"The Wall Street Journal",version:""},{regex:"WH%20Questions/([\\d\\.]+)",name:"WH Questions",version:"$1"},{regex:"whisper/([\\d\\.]+)",name:"Whisper",version:""},{regex:"Opal/([\\d\\.]+)",name:"Opal Travel",version:"$1"},{regex:"Zalo/([\\d\\.]+)",name:"Zalo",version:"$1"},{regex:"Yandex/([\\d\\.]+)",name:"Yandex",version:""},{regex:"Zoho%20Chat/([\\d\\.]+)",name:"Zoho Chat",version:"$1"},{regex:"Thunder/(\\d+[\\.\\d]+)",name:"Thunder",version:"$1"},{regex:"CGNBrowser/(\\d+[\\.\\d]+)",name:"CGN",version:"$1"},{regex:"Podbean/.+App (\\d+[\\.\\d]+)",name:"Podbean",version:"$1"},{regex:"AlexaMediaPlayer/(\\d+[\\.\\d]+)",name:"Alexa Media Player",version:"$1"},{regex:"TuneIn Radio Pro(?:[^/]+)?/(\\d+[\\.\\d]+)",name:"TuneIn Radio Pro",version:"$1"},{regex:"TuneIn Radio(?:[^/]+)?/(\\d+[\\.\\d]+)",name:"TuneIn Radio",version:"$1"},{regex:"Podcaster/(\\d+[\\.\\d]+)",name:"Podcaster",version:"$1"},{regex:"Swoot/(\\d+[\\.\\d]+)",name:"Swoot",version:"$1"},{regex:"RadioPublic/android-(\\d+[\\.\\d]+)",name:"RadioPublic",version:"$1"},{regex:"Podimo/(\\d+[\\.\\d]+)",name:"Podimo",version:"$1"},{regex:"com.evolve.podcast/(\\d+[\\.\\d]+)",name:"Evolve Podcast",version:"$1"},{regex:" Rocket.Chat\\+?/(\\d+[\\.\\d]+)",name:"Rocket Chat",version:"$1"},{regex:"^Pandora Audio.+Android",name:"Pandora",version:""},{regex:"^NPROneAndroid",name:"NPR One",version:""},{regex:"^WirtschaftsWoche-iOS-(\\d+[\\.\\d]+)",name:"Wirtschafts Woche",version:"$1"},{regex:"^Outlook-iOS/.+\\((\\d+[\\.\\d]+)\\)$",name:"Microsoft Outlook",version:"$1"},{regex:"^TVirl/(\\d+[\\.\\d]+)",name:"TVirl",version:"$1"},{regex:"2?chMate/(\\d+[\\.\\d]+)",name:"ChMate",version:"$1"},{regex:"2tch/(\\d+[\\.\\d]+)",name:"2tch",version:"$1"},{regex:"Ciisaa/(\\d+[\\.\\d]+)",name:"Ciisaa",version:"$1"},{regex:"BB2C (\\d+[\\.\\d]+)",name:"BB2C",version:"$1"},{regex:"twinkle/(\\d+[\\.\\d]+)",name:"twinkle",version:"$1"},{regex:"JaneStyle_iOS/(\\d+[\\.\\d]+)",name:"JaneStyle",version:"$1"}]});var Ft=u(Ee=>{"use strict";var Fa=Ee&&Ee.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Ee,"__esModule",{value:!0});var Da=Fa(wt()),Ra=j(),It=N(),Xa=L(),jr=class{constructor(e){this.options={versionTruncation:1},this.parse=r=>{let t={type:"",name:"",version:""};for(let i of Da.default){let l=Xa.userAgentParser(i.regex,r);if(l){t.type="mobile app",t.name=It.variableReplacement(i.name,l),t.version=Ra.formatVersion(It.variableReplacement(i.version,l),this.options.versionTruncation);break}}return t},this.options=Object.assign(Object.assign({},this.options),e)}};Ee.default=jr});var Dt=u((eg,Va)=>{Va.exports=[{regex:"Akregator(?:/(\\d+[\\.\\d]+))?",name:"Akregator",version:"$1",url:"http://userbase.kde.org/Akregator",type:"Feed Reader"},{regex:"Apple-PubSub(?:/(\\d+[\\.\\d]+))?",name:"Apple PubSub",version:"$1",url:"https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/pubsub.1.html",type:"Feed Reader"},{regex:"BashPodder",name:"BashPodder",version:"",url:"http://lincgeek.org/bashpodder/",type:"Feed Reader"},{regex:"Breaker/v([\\d\\.]+)",name:"Breaker",version:"$1",url:"https://www.breaker.audio/",type:"Feed Reader App"},{regex:"Downcast/([\\d\\.]+)",name:"Downcast",version:"$1",url:"http://downcastapp.com/",type:"Feed Reader App"},{regex:"FeedDemon(?:/(\\d+[\\.\\d]+))?",name:"FeedDemon",version:"$1",url:"http://www.feeddemon.com/",type:"Feed Reader"},{regex:"Feeddler(?:RSS|PRO)(?:[/ ](\\d+[\\.\\d]+))?",name:"Feeddler RSS Reader",version:"$1",url:"http://www.chebinliu.com/projects/iphone/feeddler-rss-reader/",type:"Feed Reader App"},{regex:"QuiteRSS(?:[/ ](\\d+[\\.\\d]+))?",name:"QuiteRSS",version:"$1",url:"https://quiterss.org",type:"Feed Reader App"},{regex:"gPodder/([\\d\\.]+)",name:"gPodder",version:"$1",url:"http://gpodder.org/",type:"Feed Reader App"},{regex:"JetBrains Omea Reader(?:[/ ](\\d+[\\.\\d]+))?",name:"JetBrains Omea Reader",version:"$1",url:"http://www.jetbrains.com/omea/reader/",type:"Feed Reader"},{regex:"Liferea(?:[/ ](\\d+[\\.\\d]+))?",name:"Liferea",version:"$1",url:"http://liferea.sf.net/",type:"Feed Reader"},{regex:"(?:NetNewsWire|Evergreen.+MacOS)(?:[/ ](\\d+[\\.\\d]+))?",name:"NetNewsWire",version:"$1",url:"http://netnewswireapp.com/",type:"Feed Reader"},{regex:"NewsBlur (?:iPhone|iPad) App(?: v(\\d+[\\.\\d]+))?",name:"NewsBlur Mobile App",version:"$1",url:"http://www.newsblur.com",type:"Feed Reader App"},{regex:"NewsBlur(?:/(\\d+[\\.\\d]+))",name:"NewsBlur",version:"$1",url:"http://www.newsblur.com",type:"Feed Reader"},{regex:"newsbeuter(?:[/ ](\\d+[\\.\\d]+))?",name:"Newsbeuter",version:"$1",url:"http://www.newsbeuter.org/",type:"Feed Reader"},{regex:"PritTorrent/([\\d\\.]+)",name:"PritTorrent",version:"$1",url:"http://bitlove.org",type:"Feed Reader"},{regex:"Pulp[/ ](\\d+[\\.\\d]+)",name:"Pulp",version:"$1",url:"http://www.acrylicapps.com/pulp/",type:"Feed Reader App"},{regex:"ReadKit(?:[/ ](\\d+[\\.\\d]+))?",name:"ReadKit",version:"$1",url:"http://readkitapp.com/",type:"Feed Reader App"},{regex:"Reeder[/ ](\\d+[\\.\\d]+)",name:"Reeder",version:"$1",url:"http://reederapp.com/",type:"Feed Reader App"},{regex:"RSSBandit(?:[/ ](\\d+[\\.\\d]+))?",name:"RSS Bandit",version:"$1",url:"http://www.rssbandit.org)",type:"Feed Reader"},{regex:"RSS Junkie(?:[/ ](\\d+[\\.\\d]+))?",name:"RSS Junkie",version:"$1",url:"https://play.google.com/store/apps/details?id=com.bitpowder.rssjunkie",type:"Feed Reader App"},{regex:"RSSOwl(?:[/ ](\\d+[\\.\\d]+))?",name:"RSSOwl",version:"$1",url:"http://www.rssowl.org/",type:"Feed Reader"},{regex:"Stringer",name:"Stringer",version:"",url:"https://github.com/swanson/stringer",type:"Feed Reader"}]});var Xt=u(ye=>{"use strict";var Ha=ye&&ye.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(ye,"__esModule",{value:!0});var Ua=Ha(Dt()),ka=j(),Rt=N(),Ka=L(),eo=class{constructor(e){this.options={versionTruncation:1},this.parse=r=>{let t={type:"",name:"",version:"",url:""};for(let i of Ua.default){let l=Ka.userAgentParser(i.regex,r);if(l){t.type="feed reader",t.name=Rt.variableReplacement(i.name,l),t.version=ka.formatVersion(Rt.variableReplacement(i.version,l),this.options.versionTruncation),t.url=i.url;break}}return t},this.options=Object.assign(Object.assign({},this.options),e)}};ye.default=eo});var Vt=u((og,Wa)=>{Wa.exports=[{regex:"Wget(?:/(\\d+[\\.\\d]+))?",name:"Wget",version:"$1"},{regex:"Guzzle(?:/(\\d+[\\.\\d]+))?",name:"Guzzle (PHP HTTP Client)",version:"$1"},{regex:"(?:lib)?curl(?:/(\\d+[\\.\\d]+))?",name:"curl",version:"$1"},{regex:"python-requests(?:/(\\d+[\\.\\d]+))?",name:"Python Requests",version:"$1"},{regex:"Python-urllib(?:/?(\\d+[\\.\\d]+))?",name:"Python urllib",version:"$1"},{regex:"Java(?:/?(\\d+[\\.\\d]+))?",name:"Java",version:"$1"},{regex:"(?:perlclient|libwww-perl)(?:/?(\\d+[\\.\\d]+))?",name:"Perl",version:"$1"},{regex:"okhttp/([\\d\\.]+)",name:"OkHttp",version:"$1"},{regex:"HTTP_Request2(?:/(\\d+[\\.\\d]+))?",name:"HTTP_Request2",version:"$1"},{regex:"HTTP_Request2(?:/(\\d+[\\.\\d]+))?",name:"HTTP_Request2",version:"$1",url:"http://pear.php.net/package/http_request2"},{regex:"Mechanize(?:/(\\d+[\\.\\d]+))?",name:"Mechanize",version:"$1",url:"http://github.com/sparklemotion/mechanize/"},{regex:"aiohttp(?:/(\\d+[\\.\\d]+))?",name:"aiohttp",version:"$1"},{regex:"Google-HTTP-Java-Client(?:/(\\d+[\\.\\d\\w-]+))?",name:"Google HTTP Java Client",version:"$1"},{regex:"WWW-Mechanize(?:/(\\d+[\\.\\d]+))?",name:"WWW-Mechanize",version:"$1"},{regex:"Faraday(?: v(\\d+[\\.\\d]+))?",name:"Faraday",version:"$1"},{regex:"(?:Go-http-client|Go )/?(?:(\\d+[\\.\\d]+))?(?: package http)?",name:"Go-http-client",version:"$1"},{regex:"urlgrabber(?:/(\\d+[\\.\\d]+))?",name:"urlgrabber (yum)",version:"$1"},{regex:"libdnf(?:/(\\d+[\\.\\d]+))?",name:"libdnf",version:"$1"},{regex:"HTTPie(?:/(\\d+[\\.\\d]+))?",name:"HTTPie",version:"$1"},{regex:"rest-client/(\\d+[\\.\\d]+).*ruby",name:"REST Client for Ruby",version:"$1"},{regex:"RestSharp/(\\d+[\\.\\d]+)",name:"RestSharp",version:"$1",url:"http://restsharp.org/"},{regex:"scalaj-http/(\\d+[\\.\\d]+)",name:"ScalaJ HTTP",version:"$1",url:"https://github.com/scalaj/scalaj-http"},{regex:"REST::Client/(\\d+)",name:"Perl REST::Client",version:"$1",url:"https://metacpan.org/pod/REST::Client"},{regex:"node-fetch/(\\d+[\\.\\d]+)",name:"Node Fetch",version:"$1",url:"https://github.com/node-fetch/node-fetch"},{regex:"ReactorNetty/(\\d+[\\.\\d]+)",name:"ReactorNetty",version:"$1",url:"https://github.com/reactor/reactor-netty"},{regex:"PostmanRuntime(?:/(\\d+[\\.\\d]+))?",name:"Postman Desktop",version:"$1",url:"https://github.com/postmanlabs/postman-runtime"},{regex:"Jakarta Commons-HttpClient/([\\.\\d]+)",name:"Jakarta Commons HttpClient",version:"$1",url:"https://hc.apache.org/httpclient-3.x"},{regex:"WinHttp.WinHttpRequest.+([\\.\\d]+)",name:"WinHttp WinHttpRequest",version:"$1"},{regex:"Embarcadero URI Client/([\\.\\d]+)",name:"Embarcadero URI Client",version:"$1"},{regex:"Mikrotik/([\\.\\d]+)",name:"Mikrotik Fetch",version:"$1"},{regex:"GRequests(?:/(\\d+[\\.\\d]+))?",name:"GRequests",version:"$1"},{regex:"akka-http/([\\.\\d]+)",name:"Akka HTTP",version:"$1"}]});var Ut=u(Be=>{"use strict";var Qa=Be&&Be.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Be,"__esModule",{value:!0});var Za=Qa(Vt()),Ya=j(),Ht=N(),za=L(),ro=class{constructor(e){this.options={versionTruncation:1},this.parse=r=>{let t={type:"",name:"",version:"",url:""};for(let i of Za.default){let l=za.userAgentParser(i.regex,r);if(l){t.type="library",t.name=Ht.variableReplacement(i.name,l),t.version=Ya.formatVersion(Ht.variableReplacement(i.version,l),this.options.versionTruncation),t.url=i.url||"";break}}return t},this.options=Object.assign(Object.assign({},this.options),e)}};Be.default=ro});var kt=u((ig,Ja)=>{Ja.exports=[{regex:"Audacious(?:[ /]([\\d\\.]+))?",name:"Audacious",version:"$1"},{regex:"Banshee(?:[ /]([\\d\\.]+))?",name:"Banshee",version:"$1"},{regex:"Boxee(?:[ /]([\\d\\.]+))?",name:"Boxee",version:"$1"},{regex:"Clementine(?:[ /]([\\d\\.]+))?",name:"Clementine",version:"$1"},{regex:"Deezer(?:/([\\d\\.]+))?",name:"Deezer",version:"$1"},{regex:"iTunes(?:-iPhone|-iPad)?(?:/([\\d\\.]+))?",name:"iTunes",version:"$1"},{regex:"FlyCast(?:/([\\d\\.]+))?",name:"FlyCast",version:"$1"},{regex:"foobar2000(?:/([\\d\\.]+))?",name:"Foobar2000",version:"$1"},{regex:"MediaMonkey(?:[ /](\\d+[\\.\\d]+))?",name:"MediaMonkey",version:"$1"},{regex:"Miro(?:/(\\d+[\\.\\d]+))?",name:"Miro",version:"$1"},{regex:"NexPlayer(?:/(\\d+[\\.\\d]+))?",name:"NexPlayer",version:"$1"},{regex:"Nightingale(?:/([\\d\\.]+))?",name:"Nightingale",version:"$1"},{regex:"QuickTime(?:(?:(?:.+qtver=)|(?:(?: E-)?[\\./]))([\\d\\.]+))?",name:"QuickTime",version:"$1"},{regex:"Songbird(?:/([\\d\\.]+))?",name:"Songbird",version:"$1"},{regex:"SubStream(?:/([\\d\\.]+))?",name:"SubStream",version:"$1"},{regex:"Sonos/([\\d\\.]+)?",name:"SONOS",version:"$1"},{regex:"(?:Lib)?VLC(?:/([\\d\\.]+))?",name:"VLC",version:"$1"},{regex:"Winamp(?:MPEG)?(?:/(\\d+[\\.\\d]+))?",name:"Winamp",version:"$1"},{regex:"(?:Windows-Media-Player|NSPlayer)(?:/(\\d+[\\.\\d]+))?",name:"Windows Media Player",version:"$1"},{regex:"XBMC(?:/([\\d\\.]+))?",name:"XBMC",version:"$1"},{regex:"Kodi(?:/([\\d\\.]+))?",name:"Kodi",version:"$1"},{regex:"stagefright(?:/([\\d\\.]+))?",name:"Stagefright",version:"$1"},{regex:"GoogleChirp(?:/(\\d+[\\.\\d]+))?",name:"Google Podcasts",version:"$1"},{regex:"Music Player Daemon (?:(\\d+[\\.\\d]+))?",name:"Music Player Daemon",version:"$1"},{regex:"mpv (?:(\\d+[\\.\\d]+))?",name:"mpv",version:"$1"}]});var Wt=u(Ce=>{"use strict";var qa=Ce&&Ce.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Ce,"__esModule",{value:!0});var ja=qa(kt()),en=j(),Kt=N(),rn=L(),oo=class{constructor(e){this.options={versionTruncation:1},this.parse=r=>{let t={type:"",name:"",version:""};for(let i of ja.default){let l=rn.userAgentParser(i.regex,r);if(l){t.type="media player",t.name=Kt.variableReplacement(i.name,l),t.version=en.formatVersion(Kt.variableReplacement(i.version,l),this.options.versionTruncation);break}}return t},this.options=Object.assign(Object.assign({},this.options),e)}};Ce.default=oo});var Qt=u((ag,on)=>{on.exports=[{regex:"Outlook-Express(?:/(\\d+[\\.\\d]+))?",name:"Outlook Express",version:"$1"},{regex:"Microsoft Outlook(?:[/ ](\\d+[\\.\\d]+))?",name:"Microsoft Outlook",version:"$1"},{regex:"(?:Thunderbird|Icedove|Shredder)(?:/(\\d+[\\.\\d]+))?",name:"Thunderbird",version:"$1"},{regex:"Airmail(?: (\\d+[\\.\\d]+))?",name:"Airmail",version:"$1"},{regex:"Lotus-Notes(?:/(\\d+[\\.\\d]+))?",name:"Lotus Notes",version:"$1"},{regex:"Barca(?:Pro)?(?:[/ ](\\d+[\\.\\d]+))?",name:"Barca",version:"$1"},{regex:"Postbox(?:[/ ](\\d+[\\.\\d]+))?",name:"Postbox",version:"$1"},{regex:"MailBar(?:[/ ](\\d+[\\.\\d]+))?",name:"MailBar",version:"$1"},{regex:"The Bat!(?: Voyager)?(?:[/ ](\\d+[\\.\\d]+))?",name:"The Bat!",version:"$1"},{regex:"DAVdroid(?:/(\\d+[\\.\\d]+))?",name:"DAVdroid",version:"$1"},{regex:"(?:SeaMonkey|Iceape)(?:/(\\d+[\\.\\d]+))?",name:"SeaMonkey",version:"$1"},{regex:"Live5ch/(\\d+[\\.\\d]+)",name:"Live5ch",version:"$1"},{regex:"JaneView/",name:"JaneView",version:""},{regex:"BathyScaphe/",name:"BathyScaphe",version:""}]});var Yt=u(Ne=>{"use strict";var tn=Ne&&Ne.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Ne,"__esModule",{value:!0});var ln=tn(Qt()),an=j(),Zt=N(),nn=L(),to=class{constructor(e){this.options={versionTruncation:1},this.parse=r=>{let t={type:"",name:"",version:""};for(let i of ln.default){let l=nn.userAgentParser(i.regex,r);if(l){t.type="personal information manager",t.name=Zt.variableReplacement(i.name,l),t.version=an.formatVersion(Zt.variableReplacement(i.version,l),this.options.versionTruncation);break}}return t},this.options=Object.assign(Object.assign({},this.options),e)}};Ne.default=to});var zt=u(Oe=>{"use strict";var ce=Oe&&Oe.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Oe,"__esModule",{value:!0});var dn=ce(qr()),sn=ce(Ft()),mn=ce(Xt()),gn=ce(Ut()),xn=ce(Wt()),cn=ce(Yt()),un=[mn.default,sn.default,xn.default,cn.default,dn.default,gn.default],io=class{constructor(e){this.options={versionTruncation:1},this.parse=r=>{for(let t of un){let l=new t(this.options).parse(r);if(l.type!=="")return l}return null},this.options=Object.assign(Object.assign({},this.options),e)}};Oe.default=io});var Jt=u((sg,Sn)=>{Sn.exports={Nikon:{regex:"Coolpix S800c",device:"camera",model:"Coolpix S800c"},Samsung:{regex:"EK-G[CN][0-9]{3}",device:"camera",models:[{regex:"EK-GN120",model:"Galaxy NX"},{regex:"EK-GC100",model:"Galaxy Camera"},{regex:"EK-GC110",model:"Galaxy Camera WiFi only"},{regex:"EK-GC200",model:"Galaxy Camera 2"},{regex:"EK-GC([0-9]{3})",model:"Galaxy Camera $1"}]}}});var ei=u(we=>{"use strict";var hn=we&&we.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(we,"__esModule",{value:!0});var pn=hn(Jt()),qt=N(),jt=L(),lo=class{constructor(){this.parse=e=>{let r={type:"",brand:"",model:""};for(let[t,i]of Object.entries(pn.default)){let l=jt.userAgentParser(i.regex,e);if(l){if(r.type="camera",r.brand=t,"model"in i&&i.model)r.model=qt.variableReplacement(i.model,l).trim();else if("models"in i&&i.models)for(let a of i.models){let n=jt.userAgentParser(a.regex,e);if(n){r.model=qt.variableReplacement(a.model,n).trim();break}}break}}return r}}};we.default=lo});var ri=u((gg,vn)=>{vn.exports={"360":{regex:"(?:180[1379]-A01|1713-A01|1707-A01|1509-A00|1603-A03|1607-A01|1503-A01)(?:[);/ ]|$)",device:"smartphone",models:[{regex:"1807-A01(?:[);/ ]|$)",model:"N7"},{regex:"1803-A01(?:[);/ ]|$)",model:"N7 Lite"},{regex:"1809-A01(?:[);/ ]|$)",model:"N7 Pro"},{regex:"1713-A01(?:[);/ ]|$)",model:"N6 Lite"},{regex:"1707-A01(?:[);/ ]|$)",model:"N6"},{regex:"1801-A01(?:[);/ ]|$)",model:"N6 Pro"},{regex:"1509-A00(?:[);/ ]|$)",model:"Q5 Plus"},{regex:"1503-A01(?:[);/ ]|$)",model:"N4"},{regex:"1603-A03(?:[);/ ]|$)",model:"N4A"},{regex:"1607-A01(?:[);/ ]|$)",model:"N5S"}]},"8848":{regex:"8848 (M[3-6])(?:[);/ ]|$)",device:"smartphone",model:"$1"},Ace:{regex:"(?:BUZZ [12]|BUZZ 2|CLEVER 1|URBAN 1(?: Pro)?)(?:[);/ ]|$)",device:"smartphone",models:[{regex:"BUZZ ([12]) Lite",model:"Buzz $1 Lite"},{regex:"BUZZ ([12]) Plus",model:"Buzz $1 Plus"},{regex:"BUZZ ([12])",model:"Buzz $1"},{regex:"CLEVER 1",model:"Clever 1"},{regex:"URBAN 1 Pro",model:"Urban 1 Pro"},{regex:"URBAN 1",model:"Urban 1"}]},"Tunisie Telecom":{regex:"StarTrail TT(?:[);/ ]|$)",device:"smartphone",model:"StarTrail by TT"},SFR:{regex:"StarShine|StarTrail|STARADDICT|StarText|StarNaute|StarXtrem|StarTab",device:"smartphone",models:[{regex:"StarXtrem II(?:[);/ ]|$)",model:"StarXtrem 2"},{regex:"StarXtrem ?([3-6])(?:[);/ ]|$)",model:"StarXtrem $1"},{regex:"StarXtrem(?:[);/ ]|$)",model:"StarXtrem"},{regex:"StarTrail III(?:[);/ ]|$)",model:"StarTrail 3"},{regex:"StarTrail II(?:[);/ ]|$)",model:"StarTrail 2"},{regex:"StarTrail[ _]?([1-9])[ _]([34])G(?:[);/ ]|$)",model:"StarTrail $1 $2G"},{regex:"StarTrail[ _]?([1-9])(?:[);/ ]|$)",model:"StarTrail $1"},{regex:"StarTrail(?:[);/ ]|$)",model:"StarTrail"},{regex:"StarShine II(?:[);/ ]|$)",model:"StarShine 2"},{regex:"StarShine(?:[);/ ]|$)",model:"StarShine"},{regex:"STARADDICT 4(?:[);/ ]|$)",model:"Staraddict 4"},{regex:"STARADDICT III(?:[);/ ]|$)",model:"Staraddict 3"},{regex:"STARADDICT II Plus(?:[);/ ]|$)",model:"Staraddict 2 Plus"},{regex:"STARADDICT II(?:[);/ ]|$)",model:"Staraddict 2"},{regex:"STARADDICT(?:[);/ ]|$)",model:"Staraddict"},{regex:"StarText II(?:[);/ ]|$)",model:"StarText 2"},{regex:"StarText(?:[);/ ]|$)",model:"StarText"},{regex:"StarNaute II(?:[);/ ]|$)",model:"StarNaute 2"},{regex:"StarNaute(?:[);/ ]|$)",model:"StarNaute"},{regex:"StarTab",model:"StarTab",device:"tablet"},{regex:"((?:StarShine|StarTrail|STARADDICT|StarText|StarNaute|StarXtrem)[^;/]*) Build",model:"$1"}]},HTC:{regex:"HTC|Sprint (?:APA|ATP)|ADR(?!910L)[a-z0-9]+|NexusHD2|Amaze[ _]4G(?:[);/ ]|$)|(Desire|Sensation|Evo ?3D|IncredibleS|Wildfire|Butterfly)[ _]?([^;/)]+)(?: Build|\\))|(Amaze[ _]4G|(?{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});ao.buildModel=o=>(o=o.replace(/_/g," "),o=o.replace(RegExp(" TD$","i"),""),o==="Build"?"":o)});var li=u(Ie=>{"use strict";var An=Ie&&Ie.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Ie,"__esModule",{value:!0});var $n=An(ri()),oi=N(),ti=L(),ii=Sr(),no=class{constructor(){this.parse=e=>{let r={type:"",brand:"",model:""},t="";for(let[i,l]of Object.entries($n.default)){let a=ti.userAgentParser(l.regex,e);if(a){if(t="device"in l&&l.device||"",r.brand=i,"model"in l&&l.model)r.model=ii.buildModel(oi.variableReplacement(l.model,a)).trim();else if("models"in l&&l.models)for(let n of l.models){let d=ti.userAgentParser(n.regex,e);if(d){r.model=ii.buildModel(oi.variableReplacement(n.model,d)).trim(),"device"in n&&n.device&&(t=n.device),"brand"in n&&(r.brand=n.brand||"");break}}break}}return t==="tv"?r.type="television":t==="car browser"?r.type="car":r.type=t,r.brand==="Unknown"&&(r.brand=""),r}}};Ie.default=no});var ai=u((ug,Mn)=>{Mn.exports={Airties:{regex:"Airties",device:"tv",models:[{regex:"Airties; ?([^);/]+)",model:"$1"}]},"ALDI NORD":{regex:"ALDINORD[;,]",device:"tv",model:""},"ALDI S\xDCD":{regex:"ALDISUED[;,]",device:"tv",model:""},"Altech UEC":{regex:"Altech UEC",device:"tv",models:[{regex:"Altech UEC; ?([^);/]+)",model:"$1"}]},AOC:{regex:"AOC",device:"tv",models:[{regex:"(LE43S5970-20|S50856)",model:"$1"}]},ARRIS:{regex:"ARRIS[;,]",device:"tv",models:[{regex:"FS-ARS-01B",model:"FS-ARS-01B"}]},Atvio:{regex:"ATVIO",device:"tv",models:[{regex:"55D1620",model:"55D1620"}]},BangOlufsen:{regex:"Bangolufsen",device:"tv",model:"BeoVision"},Blaupunkt:{regex:"Blaupunkt_UMC[;,]",device:"tv",models:[{regex:"LC-65CUG8052E",model:"LC-65CUG8052E"}]},Bush:{regex:"BUSH[;,]",device:"tv",model:""},Celcus:{regex:"CELCUS[;,]",device:"tv",model:""},Changhong:{regex:"Changhong",device:"tv",models:[{regex:"Changhong; ?([^);/]+)",model:"$1"}]},CreNova:{regex:"CreNova",device:"tv",model:"CNV001"},Digihome:{regex:"DIGIHOME[;,]",device:"tv",model:""},DMM:{regex:"DMM",device:"tv",model:"Dreambox"},ELECTRONIA:{regex:"ELECTRONIA[;,]",device:"tv",model:""},Essentielb:{regex:"ESSENTIELB[;,]",device:"tv",model:""},Finlux:{regex:"FINLUX[;,]",device:"tv",model:""},"F&U":{regex:"FU[;,]",device:"tv",model:""},Fuego:{regex:"FUEGO[;,]",device:"tv",model:""},GoGEN:{regex:"GOGEN[;,]",device:"tv",model:""},Grundig:{regex:"(OWB|Grundig|Arcelik)",device:"tv",model:""},Haier:{regex:"(?:HHW_)?HAIER",device:"tv",models:[{regex:"LE55X7000U",model:"LE55X7000U"}]},"Hi-Level":{regex:"HI-LEVEL[;,]",device:"tv",model:""},Hisense:{regex:"Hisense|Eurofins_Digital_Testing",device:"tv",models:[{regex:"50ADEVTOOL",model:"50ADEVTOOL"},{regex:"50A683FEVS",model:"50A683FEVS"},{regex:"55A6100EE",model:"55A6100EE"},{regex:"55U62QGAVT",model:"55U62QGAVT"},{regex:"50A6502EA",model:"50A6502EA"},{regex:"MICALIDVB6886",model:"MICALIDVB6886"},{regex:"(L[A-Z]{2,3}[0-9]{2}[A-Z][0-9]{3,4}[A-Z]{0,6}[0-9]?[A-Z]?)",model:"$1"},{regex:"(H[A-Z]?[0-9]{2}[A-Z][0-9]{3,4}[A-Z]{0,4})",model:"$1"}]},Hitachi:{regex:"Hitachi[;,]",device:"tv",models:[{regex:"49D2900",model:"49D2900"}]},Horizon:{regex:"HORIZON[;,]",device:"tv",model:""},Hotel:{regex:"HOTEL[;,]",device:"tv",model:""},Humax:{regex:"Humax",device:"tv",models:[{regex:"(HD-FOX C|HD (FOX\\+|NANO)|iCord (HD\\+|MINI|Cable)|(CX|IR)HD-5100(C|S)|HM9503HD)",model:"$1"},{regex:"HMS1000S",model:"HMS-1000S"},{regex:"Humax; ([^);/]+)",model:"$1"}]},Hyundai:{regex:"HYUNDAI[;,]",device:"tv",model:""},Ikea:{regex:"Ikea",device:"tv",model:""},Intek:{regex:"Intek",device:"tv",models:[{regex:"(Vantage|VT-100|VT-1)",model:"$1"}]},Inverto:{regex:"Inverto",device:"tv",models:[{regex:"inverto; ([^);/]+)",model:"$1"},{regex:"(Volksbox Web Edition|Volksbox Essential|Volksbox II|Volksbox)",model:"$1"}]},JVC:{regex:"AFTSO001|JVC[;,]",device:"tv",models:[{regex:"AFTSO001",model:"4K (2019)"}]},Kalley:{regex:"KALLEY[;,]",device:"tv",models:[{regex:"32D1620",model:"32D1620"}]},KUBO:{regex:"KUBO[;,]",device:"tv",model:""},Laurus:{regex:"LAURUS[;,]",device:"tv",model:""},LG:{regex:"LGE",device:"tv",models:[{regex:"XU43WT180N",model:"XU43WT180N"},{regex:"43LJ614V-ZA",model:"43LJ614V-ZA"},{regex:"55SK850V-ZA",model:"55SK850V-ZA"},{regex:"KEY0000213F1z",model:"KEY0000213F1z"},{regex:"KEY0000213F",model:"KEY0000213F"},{regex:"KEY000000(2E|2F|3B|3F)",model:"KEY000000$1"},{regex:"(NetCast [0-9]{1}.[0-9]{1}|GLOBAL_PLAT3)",model:"$1"},{regex:"(OLED[0-9]{2}[A-Z0-9]{3}[A-Z]{2})",model:"$1"},{regex:"(OLED[0-9]{2}[A-Z][0-9][A-Z])",model:"$1"},{regex:"(OLED[0-9]{2}[A-Z0-9]{2})",model:"$1"},{regex:"([0-9]{2}[A-Z]{2}[0-9]{4}[A-Z0-9]{1}[A-Z]{2})",model:"$1"},{regex:"([0-9]{2}NANO[0-9]{3}[A-Z]{2})",model:"$1"},{regex:"([0-9]{2}NANO[0-9]{2})",model:"$1"},{regex:"LGE;? ?([0-9]{2}[A-Z]{2}[0-9]{2,4}[A-Z]?)",model:"$1"},{regex:"LM21U",model:"LM21U"},{regex:"32LM",model:"32LM"}]},Lifemaxx:{regex:"Lifemaxx[;,]",device:"tv",model:""},Linsar:{regex:"LINSAR[;,]",device:"tv",model:""},Loewe:{regex:"Loewe",device:"tv",models:[{regex:"([A-Z]{2}[0-9]{3})",model:"$1"}]},Luxor:{regex:"LUXOR[;,]",device:"tv",model:""},Manhattan:{regex:"Manhattan",device:"tv",models:[{regex:"T3",model:"T3"}]},MediaTek:{regex:"MTK|MediaTek;",device:"tv",models:[{regex:"(MT[0-9]{4})",model:"$1"}]},Medion:{regex:"Medion",device:"tv",model:""},Miray:{regex:"MIRAY",device:"tv",models:[{regex:"LEDM-322NIP",model:"LEDM-322NIP"}]},MStar:{regex:"MStar[;,]",device:"tv",models:[{regex:"([24])KTV18",model:"$1KTV18"}]},MTC:{regex:"MTC[;,]",device:"tv",models:[{regex:"([24])K_Android_TV_V01",model:"$1K Android TV"}]},Nordmende:{regex:"NORDMENDE[;,]",device:"tv",model:""},Metz:{regex:"Metz",device:"tv",model:""},Ok:{regex:"OK[;,]",device:"tv",model:""},Panasonic:{regex:"Panasonic",device:"tv",models:[{regex:"VIERA (201[1-9])",model:"VIERA ($1)"},{regex:"(DIGA [A-Z]{1}[0-9]{4})",model:"$1"},{regex:"DIGA Webkit ([A-Z]{1}[0-9]{4})",model:"DIGA $1"},{regex:"SmartTV(201[89]|202[0-1])",model:"Smart TV ($1)"}]},PEAQ:{regex:"PEAQ",device:"tv",model:""},Philips:{regex:"Philips|NETTV/",device:"tv",models:[{regex:"Philips[,;] ?((?! )[^),;/]+)",model:"$1"},{regex:"NETTV/[0-9\\.]{5}",model:"NetTV Series"}]},Polaroid:{regex:"POLAROID[;,]",device:"tv",model:""},PROFiLO:{regex:"PROFILO[;,]",device:"tv",model:""},Qilive:{regex:"QILIVE[;,]",device:"tv",model:""},REGAL:{regex:"REGAL[;,]",device:"tv",model:""},Saba:{regex:"Saba[;,]",device:"tv",model:""},Salora:{regex:"Salora[;,]",device:"tv",model:""},Samsung:{regex:"Samsung|Maple_2011",device:"tv",models:[{regex:"SmartTV(201[2-9]|202[0-1]):([^);/]+)",model:"$2"},{regex:"SmartTV(201[2-9]|202[0-1])",model:"Smart TV ($1)"},{regex:"Maple_2011",model:"Smart TV (2011)"}]},SCBC:{regex:"SCBC[;,]",device:"tv",models:[{regex:"SCBC586",model:"SCBC586"},{regex:"43D1850",model:"43D1850"}]},SEG:{regex:"SEG[;,]",device:"tv",model:""},Selevision:{regex:"Selevision",device:"tv",models:[{regex:"Selevision; (?:Selevision )?([^);/]+)",model:"$1"},{regex:"(EMC1000i)",model:"$1"}]},Sharp:{regex:"(?:UMC-)?Sharp",device:"tv",models:[{regex:"Sharp[,;] ?((?! |HbbTV)[^),;/]+)",model:"$1"},{regex:"(LE[0-9]{3}[A-Z]{0,3})",model:"$1"},{regex:"LC-([^);/]+)",model:"LC-$1"},{regex:"BLA-43",model:"BLA-43"}]},Skyworth:{regex:"Sky_worth",device:"tv",models:[{regex:"Sky_worth;([^);/]+)",model:"$1"}]},Smart:{regex:"Smart[;,]",device:"tv",models:[{regex:"Smart; ([^);/]+)",model:"$1"},{regex:"([A-Z]{2}[0-9]{2}|ZAPPIX)",model:"$1"}]},Sony:{regex:"Sony",device:"tv",models:[{regex:"KDL-GR1",model:"KDL-GR1"},{regex:"KDL-GN([56])",model:"KDL-GN$1"},{regex:"BRAVIA (VH1|4K VH2)",model:"BRAVIA $1"},{regex:"(KDL?-?[0-9]{2}[A-Z]{1}[0-9]{4}[A-Z]{1})",model:"$1"},{regex:"(KDL?-?[0-9]{2}[A-Z]{1}[0-9]{3}[A-Z]{1})",model:"$1"},{regex:"(KDL?-?[0-9]{2}[A-Z]{1,2}[0-9]{1,5})",model:"$1"}]},SWTV:{regex:"SWTV[;,]",device:"tv",models:[{regex:"SKWE20E21",model:"SKWE20E21"}]},"TD Systems":{regex:"TDSystems[;,]",device:"tv",models:[{regex:"SmartTV(2019|2020)",model:"Smart TV ($1)"}]},Technicolor:{regex:"Technicolor",device:"tv",models:[{regex:"uzw4054ttg",model:"UZW4054TTG"}]},Technika:{regex:"TECHNIKA[;,]",device:"tv",model:""},TechniSat:{regex:"TechniSat",device:"tv",models:[{regex:"((DigiCorder|MultyVision|Digit) (ISIO S|ISIO C|ISIO))",model:"$1"}]},TechnoTrend:{regex:"TechnoTrend",device:"tv",models:[{regex:"([A-Z]{1}-[0-9]{3})",model:"$1"}]},Techwood:{regex:"Techwood[;,]",device:"tv",model:""},Telefunken:{regex:"Telefunken",device:"tv",model:""},TCL:{regex:"TCL",device:"tv",models:[{regex:"(32D1820|(?:39|55)D2900|32D2930|(?:32|43)S4900)",model:"$1"}]},Thomson:{regex:"THOMSON[,]?|THOM",device:"tv",models:[{regex:"(TB28D19DHS-01|T28D18SFS-01B)",model:'$1 28.0"'},{regex:"(T32RTM5040|T32D18SFS-01B)",model:'$1 32.0"'},{regex:"(T43FSL5031|T43D18SFS-01B)",model:'$1 43.0"'},{regex:"(T40D18SFS-01B)",model:'$1 40.0"'},{regex:"(T49D18SFS-01B)",model:'$1 49.0"'},{regex:"(T55D18[SD]FS-01B)",model:'$1 55.0"'},{regex:"40FB5426",model:"40FB5426"}]},TOKYO:{regex:"TOKYO[;,]",device:"tv",models:[{regex:"TOKTCLED32S",model:"TOKTCLED32S"}]},Toshiba:{regex:"Toshiba",device:"tv",models:[{regex:"40L2600",model:"40L2600"},{regex:"(([0-9]{2}|DTV_)[A-Z]{2}[0-9]{1,3})",model:"$1"}]},Videoweb:{regex:"videoweb|tv2n",device:"tv",models:[{regex:"(tv2n)",model:"$1"},{regex:"(videowebtv)",model:"VideoWeb TV"}]},VOX:{regex:"VOX[;,]",device:"tv",model:""},WELLINGTON:{regex:"WELLINGTON[;,]",device:"tv",model:""},"X.Vision":{regex:"X-VISION[;,]",device:"tv",model:""},Vestel:{regex:"(?:Vestel.+VESTEL|VESTEL;)",device:"tv",model:""}}});var si=u(Fe=>{"use strict";var Tn=Fe&&Fe.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Fe,"__esModule",{value:!0});var Pn=Tn(ai()),ni=N(),so=L(),di=Sr(),mo=class{constructor(){this.parse=e=>{let r={type:"",brand:"",model:""};if(!this.isHbbTv(e))return r;r.type="television";for(let[t,i]of Object.entries(Pn.default)){let l=so.userAgentParser(i.regex,e);if(l){if(r.brand=t,"model"in i&&i.model)r.model=di.buildModel(ni.variableReplacement(i.model,l)).trim();else if("models"in i&&i.models)for(let a of i.models){let n=so.userAgentParser(a.regex,e);if(n){r.model=di.buildModel(ni.variableReplacement(a.model,n)).trim();break}}break}}return r},this.isHbbTv=e=>so.userAgentParser("HbbTV/([1-9]{1}(?:.[0-9]{1}){1,2})",e)}};Fe.default=mo});var mi=u((hg,_n)=>{_n.exports={Tesla:{regex:"(?:Tesla/[0-9.]+|QtCarBrowser)",device:"car browser",models:[{regex:"QtCarBrowser",model:"Model S"},{regex:"Tesla/[0-9.]+",model:""}]},"MAC AUDIO":{regex:"Mac Audio Spro",device:"car browser",models:[{regex:"Spro",model:"S Pro"}]},Topway:{regex:"sp9853i_1h10_vmm",device:"car browser",models:[{regex:"sp9853i_1h10_vmm",model:"TS9"}]}}});var xi=u(De=>{"use strict";var bn=De&&De.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(De,"__esModule",{value:!0});var fn=bn(mi()),Ln=N(),gi=L(),go=class{constructor(){this.parse=e=>{let r={type:"",brand:"",model:""};for(let[t,i]of Object.entries(fn.default))if(gi.userAgentParser(i.regex,e)){r.type="car",r.brand=t;for(let a of i.models){let n=gi.userAgentParser(a.regex,e);n&&(r.model=Ln.variableReplacement(a.model,n).trim())}break}return r}}};De.default=go});var ci=u((vg,Gn)=>{Gn.exports={Archos:{regex:"Archos.*GAMEPAD([2]?)",device:"console",model:"Gamepad $1"},Microsoft:{regex:"Xbox",device:"console",models:[{regex:"Xbox Series X",model:"Xbox Series X"},{regex:"Xbox One X",model:"Xbox One X"},{regex:"Xbox One",model:"Xbox One"},{regex:"XBOX_ONE_ED",model:"Xbox One S"},{regex:"Xbox",model:"Xbox 360"}]},Nintendo:{regex:"Nintendo (([3]?DS[i]?)|Wii[U]?|Switch)",device:"console",model:"$1"},OUYA:{regex:"OUYA",device:"console",model:"OUYA"},Sega:{regex:"Dreamcast",device:"console",model:"Dreamcast"},Sony:{regex:"PlayStation (3|4 Pro|4|Portable|Vita)",device:"console",model:"PlayStation $1"}}});var hi=u(Re=>{"use strict";var En=Re&&Re.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Re,"__esModule",{value:!0});var yn=En(ci()),ui=N(),Si=L(),xo=class{constructor(){this.parse=e=>{let r={type:"",brand:"",model:""};for(let[t,i]of Object.entries(yn.default)){let l=Si.userAgentParser(i.regex,e);if(l){if(r.type=i.device,r.brand=t,"model"in i&&i.model)r.model=ui.variableReplacement(i.model,l).trim();else if("models"in i&&i.models)for(let a of i.models){let n=Si.userAgentParser(a.regex,e);if(n){r.model=ui.variableReplacement(a.model,n).trim();break}}break}}return r}}};Re.default=xo});var pi=u(($g,Bn)=>{Bn.exports={Acer:{regex:"FBMD/(?:Aspire E5-421G|Z5WAL|One S1003);",device:"desktop",models:[{regex:"FBMD/Aspire E5-421G;",model:"Aspire E5-421G"},{regex:"FBMD/Z5WAL;",model:"Aspire E5-511"},{regex:"FBMD/One S1003;",model:"One 10"}]},Asus:{regex:"FBMD/(?:K50IN|K54L|T100HAN|T103HAF|UX360CAK|X550LB|X553MA|X555LN|X556UQK);",device:"desktop",models:[{regex:"FBMD/K50IN;",model:"K50IN"},{regex:"FBMD/K54L;",model:"K54L"},{regex:"FBMD/T100HAN;",model:"Transformer Book"},{regex:"FBMD/T103HAF;",model:"Transformer Mini"},{regex:"FBMD/UX360CAK;",model:"ZenBook Flip"},{regex:"FBMD/X550LB;",model:"X550LB"},{regex:"FBMD/X553MA;",model:"X553MA"},{regex:"FBMD/X555LN;",model:"X555LN"},{regex:"FBMD/X556UQK;",model:"X556UQK"}]},Dell:{regex:"FBMD/(?:Latitude E4300|Inspiron 3541|XPS 15 95[35]0);",device:"desktop",models:[{regex:"Latitude E4300",model:"Latitude E4300"},{regex:"Inspiron 3541",model:"Inspiron 3541"},{regex:"XPS 15 9530",model:"XPS 15 9530"},{regex:"XPS 15 9550",model:"XPS 15 9550"}]},HP:{regex:"FBMD/((?:Compaq|HP) |23-f364)",device:"desktop",models:[{regex:"Compaq Presario CQ61 Notebook PC",model:"Compaq Presario CQ61"},{regex:"HP Pavilion x2 Detachable",model:"Pavilion x2"},{regex:"HP Laptop 15-bs0xx",model:"15 Laptop PC"},{regex:"HP ENVY x360 Convertible 15-bp0xx",model:"ENVY x360 Convertible PC"},{regex:"HP EliteBook (25[67]0p)",model:"EliteBook $1"},{regex:"HP ProBook (440 G5|6[35]60b)",model:"ProBook $1"},{regex:"HP Pavilion dv6 Notebook PC",model:"Pavilion dv6"},{regex:"HP Pavilion Notebook",model:"Pavilion"},{regex:"HP Spectre x360 Convertible",model:"Spectre x360"},{regex:"HP Pavilion All-in-One 24-r0xx",model:"Pavilion 24-r0xx All-in-One Desktop PC",device:"desktop"},{regex:"23-f364",model:"Pavilion TouchSmart 23-f364 All-in-One Desktop PC",device:"desktop"}]},Lenovo:{regex:"FBMD/(?:37021C5|80E5|80SM|80VR);",device:"desktop",models:[{regex:"FBMD/37021C5;",model:"ThinkPad Helix 3702"},{regex:"FBMD/80E5;",model:"G50-80"},{regex:"FBMD/80SM;",model:"Ideapad 310-15ISK"},{regex:"FBMD/80VR;",model:"Legion Y720"}]},Schneider:{regex:"FBMD/SCL141CTP;",device:"desktop",model:'Notebook 14" Cherry Trail'},Thomson:{regex:"FBMD/TH360R12.32CTW;",device:"desktop",model:"Prestige TH-360R12.32CTW"},Toshiba:{regex:"FBMD/Satellite ",device:"desktop",models:[{regex:"Satellite (A[25]00|C650|C855|L650|S855)",model:"Satellite $1"},{regex:"Satellite ([^;\\)]+);",model:"Satellite $1"}]}}});var Ai=u(Xe=>{"use strict";var Cn=Xe&&Xe.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Xe,"__esModule",{value:!0});var Nn=Cn(pi()),vi=N(),co=L(),On=Sr(),uo=class{constructor(){this.parse=e=>{let r={type:"",brand:"",model:""};if(!co.userAgentParser("FBMD/",e))return r;for(let[t,i]of Object.entries(Nn.default)){let l=co.userAgentParser(i.regex,e);if(l){if(r.type="desktop",r.brand=t,"model"in i&&i.model)r.model=On.buildModel(vi.variableReplacement(i.model,l)).trim();else if("models"in i&&i.models)for(let a of i.models){let n=co.userAgentParser(a.regex,e);n&&(r.model=vi.variableReplacement(a.model,n).trim())}break}}return r}}};Xe.default=uo});var $i=u((Tg,wn)=>{wn.exports={Apple:{regex:"(?:Apple-)?iPod",device:"portable media player",models:[{regex:"(?:Apple-)?iPod1[C,]1",model:"iPod Touch 1G"},{regex:"(?:Apple-)?iPod2[C,]1",model:"iPod Touch 2G"},{regex:"(?:Apple-)?iPod3[C,]1",model:"iPod Touch 3"},{regex:"(?:Apple-)?iPod4[C,]1",model:"iPod Touch 4"},{regex:"(?:Apple-)?iPod5[C,]1",model:"iPod Touch 5"},{regex:"(?:Apple-)?iPod7[C,]1",model:"iPod Touch 6"},{regex:"(?:Apple-)?iPod",model:"iPod Touch"}]},Cowon:{regex:"COWON ([^;/]+) Build",device:"portable media player",model:"$1"},Microsoft:{regex:"Microsoft ZuneHD",device:"portable media player",model:"Zune HD"},Panasonic:{regex:"(SV-MV100)",device:"portable media player",model:"$1"},Samsung:{regex:"YP-(G[SIPB]?1|G[57]0|GB70D)",device:"portable media player",models:[{regex:"YP-G[B]?1",model:"Galaxy Player 4.0"},{regex:"YP-G70",model:"Galaxy Player 5.0"},{regex:"YP-GS1",model:"Galaxy Player 3.6"},{regex:"YP-GI1",model:"Galaxy Player 4.2"},{regex:"YP-GP1",model:"Galaxy Player 5.8"},{regex:"YP-G50",model:"Galaxy Player 50"},{regex:"YP-GB70D",model:"Galaxy Player 70 Plus"}]},Wizz:{regex:"(DV-PTB1080)(?:[);/ ]|$)",device:"portable media player",model:"$1"},SONOS:{regex:"Sonos/.+\\((?:ZP.+)\\)|Sonos;",device:"portable media player",models:[{regex:"\\((ZPS(?:[13569]|1[1-578]|2[03])|ZP90)\\)",model:"$1"},{regex:"Sonos;Play5;",model:"Play:5"},{regex:"Sonos;One;",model:"One"}]}}});var Pi=u(Ve=>{"use strict";var In=Ve&&Ve.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Ve,"__esModule",{value:!0});var Fn=In($i()),Mi=N(),Ti=L(),So=class{constructor(){this.parse=e=>{let r={type:"",brand:"",model:""};for(let[t,i]of Object.entries(Fn.default)){let l=Ti.userAgentParser(i.regex,e);if(l){if(r.type=i.device,r.brand=t,"model"in i&&i.model)r.model=Mi.variableReplacement(i.model,l).trim();else if("models"in i&&i.models)for(let a of i.models){let n=Ti.userAgentParser(a.regex,e);if(n){r.model=Mi.variableReplacement(a.model,n).trim();break}}break}}return r}}};Ve.default=So});var _i=u(He=>{"use strict";var ae=He&&He.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(He,"__esModule",{value:!0});var Dn=ae(ei()),Rn=ae(li()),Xn=ae(si()),Vn=ae(xi()),Hn=ae(hi()),Un=ae(Ai()),kn=ae(Pi()),Kn=[Hn.default,Vn.default,Dn.default,Xn.default,kn.default,Rn.default,Un.default],ho=class{constructor(){this.parse=e=>{for(let r of Kn){let i=new r().parse(e);if(i.type!=="")return i}return null}}};He.default=ho});var bi=u((bg,Wn)=>{Wn.exports=[{regex:"Grid OS (\\d+[\\.\\d]+)",name:"GridOS",version:"$1"},{regex:"CaixaMagica",name:"Caixa M\xE1gica",version:""},{regex:"Mageia; Linux",name:"Mageia",version:""},{regex:"(?:WH|WhaleTV/)(\\d+[\\.\\d]+)",name:"Whale OS",version:"$1"},{regex:"Tizen[ /]?(\\d+[\\.\\d]+)?",name:"Tizen",version:"$1"},{regex:"Sailfish|Jolla",name:"Sailfish OS",version:""},{regex:"(?:Ali)?YunOS[ /]?(\\d+[\\.\\d]+)?",name:"YunOS",version:"$1"},{regex:"Windows Phone;FBSV/(\\d+[\\.\\d]+)",name:"Windows Phone",version:"$1"},{regex:"(?:Windows Phone (?:OS)?|wds)[ /]?(\\d+[\\.\\d]+)",name:"Windows Phone",version:"$1"},{regex:"XBLWP7|Windows Phone",name:"Windows Phone",version:""},{regex:"Windows CE(?: (\\d+[\\.\\d]+))?",name:"Windows CE",version:"$1"},{regex:"(?:IEMobile|Windows ?Mobile)(?: (\\d+[\\.\\d]+))?",name:"Windows Mobile",version:"$1"},{regex:"Windows NT 6.2; ARM;",name:"Windows RT",version:""},{regex:"Windows NT 6.3; ARM;",name:"Windows RT",version:"8.1"},{regex:"Windows IoT 10.0",name:"Windows IoT",version:"10"},{regex:"KAIOS(?:/(\\d+[\\.\\d]+))?",name:"KaiOS",version:"$1"},{regex:"RazoDroiD(?: v(\\d+[\\.\\d]*))?",name:"RazoDroiD",version:"$1"},{regex:"MildWild(?: CM-(\\d+[\\.\\d]*))?",name:"MildWild",version:"$1"},{regex:"CyanogenMod(?:[\\-/](?:CM)?(\\d+[\\.\\d]*))?",name:"CyanogenMod",version:"$1"},{regex:"(?:.*_)?MocorDroid(?:(\\d+[\\.\\d]*))?",name:"MocorDroid",version:"$1"},{regex:"Fire OS(?:/(\\d+[\\.\\d]*))?",name:"Fire OS",version:"$1"},{regex:"AFTSO001",name:"Fire OS",version:"7"},{regex:"FydeOS",name:"FydeOS",version:""},{regex:"(?:Podbean|Podimo)(?:.+)?/Android",name:"Android",version:""},{regex:"Pinterest for Android/.+; (\\d(?:[\\d\\.]+)?)\\)$",name:"Android",version:"$1"},{regex:"Android; (\\d+[\\.\\d]*); Mobile;",name:"Android",version:"$1"},{regex:"[ ]([\\d\\.]+)\\) AppleWebKit.*ROBLOX Android App",name:"Android",version:"$1"},{regex:"(?:(?:Orca-)?Android|Adr)[ /]?(?:[a-z]+ )?(\\d+[\\.\\d]*)",name:"Android",version:"$1"},{regex:"(?:Allview_TX1_Quasar|Cosmote_My_mini_Tab) (\\d+[\\.\\d]*)",name:"Android",version:"$1"},{regex:"Android ?(?:jelly bean|Kit Kat|S.O. Ginger Bread|The FireCyano|:) (\\d+[\\.\\d]*)",name:"Android",version:"$1"},{regex:"(?:Orca-Android|FB4A).*FBSV/(\\d+[\\.\\d]*);",name:"Android",version:"$1"},{regex:" Adr |Android|Silk-Accelerated=[a-z]{4,5}",name:"Android",version:""},{regex:"(?:TwitterAndroid).*[ /](?:[a-z]+ )?(\\d+[\\.\\d]*)",name:"Android",version:"$1"},{regex:"BeyondPod|AntennaPod|Podkicker|DoggCatcher|Player FM|okhttp|Podcatcher Deluxe|.+K_?Android_?TV_|Sonos/.+\\(ACR_",name:"Android",version:""},{regex:"Linux; Andr0id[; ](\\d+[\\.\\d]*)",name:"Android",version:"$1"},{regex:"Linux; diordnA[; ](\\d+[\\.\\d]*)",name:"Android",version:"$1"},{regex:"AmigaOS[ ]?(\\d+[\\.\\d]+)",name:"AmigaOS",version:"$1"},{regex:"AmigaOS|AmigaVoyager|Amiga-AWeb",name:"AmigaOS",version:""},{regex:"ThreadX(?:/(\\d+[\\.\\d]*))?",name:"ThreadX",version:"$1"},{regex:"Nucleus(?:(?: |/v?)(\\d+[\\.\\d]*))?",name:"MTK / Nucleus",version:"$1"},{regex:"MTK(?:(?: |/v?)(\\d+[\\.\\d]*))?",name:"MTK / Nucleus",version:"$1"},{regex:"MRE/(\\d+)\\.(\\d+).*;MAUI",name:"MRE",version:"$1.$2"},{regex:"dvkbuntu",name:"DVKBuntu",version:""},{regex:"Helio/(\\d+[\\.\\d]+)",name:"Lumin OS",version:"$1"},{regex:"HasCodingOs (\\d+[\\.\\d]+)",name:"HasCodingOS",version:"$1"},{regex:"PCLinuxOS/(\\d+[\\.\\d]+)",name:"PCLinuxOS",version:"$1"},{regex:"(Ordissimo|webissimo3)",name:"Ordissimo",version:""},{regex:"(?:Win|Sistema )Fenix",name:"Fenix",version:""},{regex:"TOS; Linux",name:"TmaxOS",version:""},{regex:"Maemo",name:"Maemo",version:""},{regex:"Arch ?Linux(?:[ /\\-](\\d+[\\.\\d]+))?",name:"Arch Linux",version:"$1"},{regex:"VectorLinux(?: package)?(?:[ /\\-](\\d+[\\.\\d]+))?",name:"VectorLinux",version:"$1"},{regex:"Linux; .*((?:Debian|Knoppix|Mint|Ubuntu|Kubuntu|Xubuntu|Lubuntu|Fedora|Red Hat|Mandriva|Gentoo|Sabayon|Slackware|SUSE|CentOS|BackTrack))[ /](\\d+[\\.\\d]+)",name:"$1",version:"$2"},{regex:"Deepin[ /](\\d+[\\.\\d]+)",name:"Deepin",version:"$1"},{regex:"(Debian|Knoppix|Mint(?! Browser)|Ubuntu|Kubuntu|Xubuntu|Lubuntu|Fedora|Red Hat|Mandriva|Gentoo|Sabayon|Slackware|SUSE|CentOS|BackTrack|Freebox)(?:(?: Enterprise)? Linux)?(?:[ /\\-](\\d+[\\.\\d]+))?",name:"$1",version:"$2"},{regex:"OS ROSA; Linux",name:"Rosa",version:""},{regex:"WEBOS(\\d+[\\.\\d]+)",name:"webOS",version:"$1"},{regex:"Web0S; Linux/SmartTV.+Chrome/68",name:"webOS",version:"5"},{regex:"Web0S; Linux/SmartTV.+Chrome/53",name:"webOS",version:"4"},{regex:"Web0S; Linux/SmartTV.+Chrome/38",name:"webOS",version:"3"},{regex:"Web0S; Linux/SmartTV.+Safari/538",name:"webOS",version:"2"},{regex:"Web0S; Linux/SmartTV.+Safari/537",name:"webOS",version:"1"},{regex:"(?:Web0S; .*WEBOS|webOS|web0S|Palm webOS|hpwOS)(?:[/]?(\\d+[\\.\\d]+))?",name:"webOS",version:"$1"},{regex:"(?:PalmOS|Palm OS)(?:[/ ](\\d+[\\.\\d]+))?|Palm",name:"palmOS",version:"$1"},{regex:"Xiino(?:.*v\\. (\\d+[\\.\\d]+))?",name:"palmOS",version:"$1"},{regex:"MorphOS(?:[ /](\\d+[\\.\\d]+))?",name:"MorphOS",version:"$1"},{regex:"FBW.+FBSV/(\\d+[\\.\\d]*);",name:"Windows",version:"$1"},{regex:"mingw32",name:"Windows",version:""},{regex:"Windows/(\\d+\\.\\d+)",name:"Windows",version:"$1"},{regex:"CYGWIN_NT-10.0|Windows NT 10.0|Windows 10",name:"Windows",version:"10"},{regex:"CYGWIN_NT-6.4|Windows NT 6.4|Windows 10|win10",name:"Windows",version:"10"},{regex:"CYGWIN_NT-6.3|Windows NT 6.3|Windows 8.1",name:"Windows",version:"8.1"},{regex:"CYGWIN_NT-6.2|Windows NT 6.2|Windows 8",name:"Windows",version:"8"},{regex:"CYGWIN_NT-6.1|Windows NT 6.1|Windows 7|win7",name:"Windows",version:"7"},{regex:"CYGWIN_NT-6.0|Windows NT 6.0|Windows Vista",name:"Windows",version:"Vista"},{regex:"CYGWIN_NT-5.2|Windows NT 5.2|Windows Server 2003 / XP x64",name:"Windows",version:"Server 2003"},{regex:"CYGWIN_NT-5.1|Windows NT 5.1|Windows XP",name:"Windows",version:"XP"},{regex:"CYGWIN_NT-5.0|Windows NT 5.0|Windows 2000",name:"Windows",version:"2000"},{regex:"CYGWIN_NT-4.0|Windows NT 4.0|WinNT|Windows NT",name:"Windows",version:"NT"},{regex:"CYGWIN_ME-4.90|Win 9x 4.90|Windows ME",name:"Windows",version:"ME"},{regex:"CYGWIN_98-4.10|Win98|Windows 98",name:"Windows",version:"98"},{regex:"CYGWIN_95-4.0|Win32|Win95|Windows 95|Windows_95",name:"Windows",version:"95"},{regex:"Windows 3.1",name:"Windows",version:"3.1"},{regex:"Windows",name:"Windows",version:""},{regex:"Haiku",name:"Haiku OS",version:""},{regex:"(?:Watch1,[12]/|Watch OS,|watchOS[ /])(\\d+[\\.\\d]*)",name:"watchOS",version:"$1"},{regex:"iPad/([89]|1[012]).(\\d+[\\.\\d]*)",name:"iOS",version:"$1.$2"},{regex:"Pinterest for iOS/.+; (\\d(?:[\\d\\.]+)?)\\)$",name:"iOS",version:"$1"},{regex:"CFNetwork/.+ Darwin/20.4.0(?!.*x86_64)",name:"iOS",version:"14.5"},{regex:"CFNetwork/.+ Darwin/20.3.0(?!.*x86_64)",name:"iOS",version:"14.4"},{regex:"CFNetwork/.+ Darwin/20.2.0(?!.*x86_64)",name:"iOS",version:"14.3"},{regex:"CFNetwork/.+ Darwin/20.1.0(?!.*x86_64)",name:"iOS",version:"14.2"},{regex:"CFNetwork/.+ Darwin/20.0.0(?!.*x86_64)",name:"iOS",version:"14.0"},{regex:"CFNetwork/.+ Darwin/19.6.0(?!.*x86_64)",name:"iOS",version:"13.6"},{regex:"CFNetwork/.+ Darwin/19.5.0(?!.*x86_64)",name:"iOS",version:"13.5"},{regex:"CFNetwork/.+ Darwin/19.4.0(?!.*x86_64)",name:"iOS",version:"13.4"},{regex:"CFNetwork/.+ Darwin/19.3.0(?!.*x86_64)",name:"iOS",version:"13.3.1"},{regex:"CFNetwork/.+ Darwin/19.2.0(?!.*x86_64)",name:"iOS",version:"13.3"},{regex:"CFNetwork/.+ Darwin/19.0.0(?!.*x86_64)",name:"iOS",version:"13.0"},{regex:"CFNetwork/.+ Darwin/18.7.0(?!.*x86_64)",name:"iOS",version:"12.4"},{regex:"CFNetwork/.+ Darwin/18.6.0(?!.*x86_64)",name:"iOS",version:"12.3"},{regex:"CFNetwork/.+ Darwin/18.5.0(?!.*x86_64)",name:"iOS",version:"12.2"},{regex:"CFNetwork/.+ Darwin/18.2.0(?!.*x86_64)",name:"iOS",version:"12.1"},{regex:"CFNetwork/.+ Darwin/18.0.0(?!.*x86_64)",name:"iOS",version:"12.0"},{regex:"CFNetwork/.+ Darwin/17.7.0(?!.*x86_64)",name:"iOS",version:"11.4.1"},{regex:"CFNetwork/.+ Darwin/17.6.0(?!.*x86_64)",name:"iOS",version:"11.4"},{regex:"CFNetwork/889(?!.*x86_64)",name:"iOS",version:"11.1"},{regex:"CFNetwork/887(?!.*x86_64)",name:"iOS",version:"11.0"},{regex:"CFNetwork/811(?!.*x86_64)",name:"iOS",version:"10.3"},{regex:"CFNetwork/808\\.3",name:"iOS",version:"10.3"},{regex:"CFNetwork/808\\.2",name:"iOS",version:"10.2"},{regex:"CFNetwork/808\\.1",name:"iOS",version:"10.1"},{regex:"CFNetwork/808\\.0",name:"iOS",version:"10.0"},{regex:"CFNetwork/808",name:"iOS",version:"10"},{regex:"CFNetwork/758\\.4\\.3",name:"iOS",version:"9.3.2"},{regex:"CFNetwork/758\\.3\\.15",name:"iOS",version:"9.3"},{regex:"CFNetwork/758\\.2\\.[78]",name:"iOS",version:"9.2"},{regex:"CFNetwork/758\\.1\\.6",name:"iOS",version:"9.1"},{regex:"CFNetwork/758\\.0\\.2",name:"iOS",version:"9.0"},{regex:"CFNetwork/711\\.5\\.6",name:"iOS",version:"8.4.1"},{regex:"CFNetwork/711\\.4\\.6",name:"iOS",version:"8.4"},{regex:"CFNetwork/711\\.3\\.18",name:"iOS",version:"8.3"},{regex:"CFNetwork/711\\.2\\.23",name:"iOS",version:"8.2"},{regex:"CFNetwork/711\\.1\\.1[26]",name:"iOS",version:"8.1"},{regex:"CFNetwork/711\\.0\\.6",name:"iOS",version:"8.0"},{regex:"CFNetwork/672\\.1",name:"iOS",version:"7.1"},{regex:"CFNetwork/672\\.0",name:"iOS",version:"7.0"},{regex:"CFNetwork/609\\.1",name:"iOS",version:"6.1"},{regex:"CFNetwork/60[29]",name:"iOS",version:"6.0"},{regex:"CFNetwork/548\\.1",name:"iOS",version:"5.1"},{regex:"CFNetwork/548\\.0",name:"iOS",version:"5.0"},{regex:"CFNetwork/485\\.13",name:"iOS",version:"4.3"},{regex:"CFNetwork/485\\.12",name:"iOS",version:"4.2"},{regex:"CFNetwork/485\\.10",name:"iOS",version:"4.1"},{regex:"CFNetwork/485\\.2",name:"iOS",version:"4.0"},{regex:"CFNetwork/467\\.12",name:"iOS",version:"3.2"},{regex:"CFNetwork/459",name:"iOS",version:"3.1"},{regex:"iPhone/(\\d+[\\.\\d]*) hw/",name:"iOS",version:"$1"},{regex:"iOS(\\d+\\.\\d+\\.\\d+)",name:"iOS",version:"$1"},{regex:"iOS(\\d+)\\.(\\d+)0",name:"iOS",version:"$1.$2"},{regex:"iPhone OS ([0-9]{1})([0-9]{1})([0-9]{1})",name:"iOS",version:"$1.$2.$3"},{regex:"(?:CPU OS|iPh(?:one)?[ _]OS|iOS)[ _/](\\d+(?:[_\\.]\\d+)*)",name:"iOS",version:"$1"},{regex:"(?:FBIOS|Messenger(?:Lite)?ForiOS).*FBSV/ ?(\\d+[\\.\\d]*);",name:"iOS",version:"$1"},{regex:"(?:Apple-)?(?:iPhone|iPad|iPod)(?:.*Mac OS X.*Version/(\\d+\\.\\d+)|; Opera)?",name:"iOS",version:"$1"},{regex:"(?:Podcasts/(?:[\\d\\.]+)|Instacast(?:HD)?/(?:\\d\\.[\\d\\.abc]+)|Pocket Casts, iOS|\\(iOS\\)|iOS; Opera|Overcast|Castro|Podcat|iCatcher|RSSRadio/|MobileSafari/)(?!.*x86_64)",name:"iOS",version:""},{regex:"iTunes-(iPod|iPad|iPhone)/(?:[\\d\\.]+)",name:"iOS",version:""},{regex:"iOS/Version ([\\d\\.]+)",name:"iOS",version:"$1"},{regex:"Sonos/.+\\(ICRU_",name:"iOS",version:""},{regex:"CFNetwork/.+ Darwin/20.2.0.*(x86_64)|(x86_64-apple-)?darwin20.2.0",name:"Mac",version:"11.1"},{regex:"CFNetwork/.+ Darwin/20.[01].0.*(x86_64)|(x86_64-apple-)?darwin20.[01].0",name:"Mac",version:"11.0"},{regex:"CFNetwork/.+ Darwin/19.6.0.*(x86_64)|(x86_64-apple-)?darwin19.6.0",name:"Mac",version:"10.15.6"},{regex:"CFNetwork/.+ Darwin/19.5.0.*(x86_64)|(x86_64-apple-)?darwin19.5.0",name:"Mac",version:"10.15.5"},{regex:"CFNetwork/.+ Darwin/19.4.0.*(x86_64)|(x86_64-apple-)?darwin19.4.0",name:"Mac",version:"10.15.4"},{regex:"CFNetwork/.+ Darwin/19.3.0.*(x86_64)|(x86_64-apple-)?darwin19.3.0",name:"Mac",version:"10.15.3"},{regex:"CFNetwork/.+ Darwin/19.2.0.*(x86_64)|(x86_64-apple-)?darwin19.2.0",name:"Mac",version:"10.15.2"},{regex:"CFNetwork/(?:108[258]|109[18]|1103).*(x86_64)",name:"Mac",version:"10.15"},{regex:"CFNetwork/.+ Darwin/18.2.0.*(x86_64)|(x86_64-apple-)?darwin18.2.0",name:"Mac",version:"10.14.1"},{regex:"CFNetwork/(?:96[29]|97[14568]).*(x86_64)",name:"Mac",version:"10.14"},{regex:"CFNetwork/.+ Darwin/17.7.0.*(x86_64)|(x86_64-apple-)?darwin17.7.0",name:"Mac",version:"10.13.6"},{regex:"CFNetwork/.+ Darwin/17.6.0.*(x86_64)|(x86_64-apple-)?darwin17.6.0",name:"Mac",version:"10.13.5"},{regex:"CFNetwork/.+ Darwin/17.5.0.*(x86_64)|(x86_64-apple-)?darwin17.5.0",name:"Mac",version:"10.13.4"},{regex:"CFNetwork/.+ Darwin/17.4.0.*(x86_64)|(x86_64-apple-)?darwin17.4.0",name:"Mac",version:"10.13.3"},{regex:"CFNetwork/.+ Darwin/17.3.0.*(x86_64)|(x86_64-apple-)?darwin17.3.0",name:"Mac",version:"10.13.2"},{regex:"CFNetwork/.+ Darwin/17.2.0.*(x86_64)|(x86_64-apple-)?darwin17.2.0",name:"Mac",version:"10.13.1"},{regex:"CFNetwork/(?:887|889|893|897|901|902).*(x86_64)",name:"Mac",version:"10.13"},{regex:"CFNetwork/.+ Darwin/16.7.0.*(x86_64)|(x86_64-apple-)?darwin16.7.0",name:"Mac",version:"10.12.6"},{regex:"CFNetwork/.+ Darwin/16.6.0.*(x86_64)|(x86_64-apple-)?darwin16.6.0",name:"Mac",version:"10.12.5"},{regex:"CFNetwork/.+ Darwin/16.5.0.*(x86_64)|(x86_64-apple-)?darwin16.5.0",name:"Mac",version:"10.12.4"},{regex:"CFNetwork/.+ Darwin/16.3.0.*(x86_64)|(x86_64-apple-)?darwin16.3.0",name:"Mac",version:"10.12.3"},{regex:"CFNetwork/.+ Darwin/16.2.0.*(x86_64)|(x86_64-apple-)?darwin16.2.0",name:"Mac",version:"10.12.2"},{regex:"CFNetwork/.+ Darwin/16.1.0.*(x86_64)|(x86_64-apple-)?darwin16.1.0",name:"Mac",version:"10.12.1"},{regex:"CFNetwork/811.*(x86_64)",name:"Mac",version:"10.12"},{regex:"CFNetwork/807",name:"Mac",version:"10.12"},{regex:"CFNetwork/.+ Darwin/15.6.0.*(x86_64)|(x86_64-apple-)?darwin15.6.0",name:"Mac",version:"10.11.6"},{regex:"CFNetwork/.+ Darwin/15.5.0.*(x86_64)|(x86_64-apple-)?darwin15.5.0",name:"Mac",version:"10.11.5"},{regex:"CFNetwork/.+ Darwin/15.4.0.*(x86_64)|(x86_64-apple-)?darwin15.4.0",name:"Mac",version:"10.11.4"},{regex:"CFNetwork/.+ Darwin/15.3.0.*(x86_64)|(x86_64-apple-)?darwin15.3.0",name:"Mac",version:"10.11.3"},{regex:"CFNetwork/.+ Darwin/15.2.0.*(x86_64)|(x86_64-apple-)?darwin15.2.0",name:"Mac",version:"10.11.2"},{regex:"CFNetwork/760",name:"Mac",version:"10.11"},{regex:"CFNetwork/.+ Darwin/14.5.0.*(x86_64)|(x86_64-apple-)?darwin14.5.0",name:"Mac",version:"10.10.5"},{regex:"CFNetwork/.+ Darwin/14.4.0.*(x86_64)|(x86_64-apple-)?darwin14.4.0",name:"Mac",version:"10.10.4"},{regex:"CFNetwork/.+ Darwin/14.3.0.*(x86_64)|(x86_64-apple-)?darwin14.3.0",name:"Mac",version:"10.10.3"},{regex:"CFNetwork/.+ Darwin/14.1.0.*(x86_64)|(x86_64-apple-)?darwin14.1.0",name:"Mac",version:"10.10.2"},{regex:"CFNetwork/720",name:"Mac",version:"10.10"},{regex:"CFNetwork/.+ Darwin/13.4.0.*(x86_64)|(x86_64-apple-)?darwin13.4.0",name:"Mac",version:"10.9.5"},{regex:"CFNetwork/.+ Darwin/13.3.0.*(x86_64)|(x86_64-apple-)?darwin13.3.0",name:"Mac",version:"10.9.4"},{regex:"CFNetwork/.+ Darwin/13.2.0.*(x86_64)|(x86_64-apple-)?darwin13.2.0",name:"Mac",version:"10.9.3"},{regex:"CFNetwork/.+ Darwin/13.1.0.*(x86_64)|(x86_64-apple-)?darwin13.1.0",name:"Mac",version:"10.9.2"},{regex:"CFNetwork/673",name:"Mac",version:"10.9"},{regex:"CFNetwork/.+ Darwin/12.5.0.*(x86_64)|(x86_64-apple-)?darwin12.5.0",name:"Mac",version:"10.8.5"},{regex:"CFNetwork/.+ Darwin/12.4.0.*(x86_64)|(x86_64-apple-)?darwin12.4.0",name:"Mac",version:"10.8.4"},{regex:"CFNetwork/.+ Darwin/12.3.0.*(x86_64)|(x86_64-apple-)?darwin12.3.0",name:"Mac",version:"10.8.3"},{regex:"CFNetwork/.+ Darwin/12.2.0.*(x86_64)|(x86_64-apple-)?darwin12.2.0",name:"Mac",version:"10.8.2"},{regex:"CFNetwork/.+ Darwin/12.1.0.*(x86_64)|(x86_64-apple-)?darwin12.1.0",name:"Mac",version:"10.8.1"},{regex:"CFNetwork/596",name:"Mac",version:"10.8"},{regex:"CFNetwork/.+ Darwin/11.5.0.*(x86_64)|(x86_64-apple-)?darwin11.5.0",name:"Mac",version:"10.7.5"},{regex:"CFNetwork/.+ Darwin/11.4.0.*(x86_64)|(x86_64-apple-)?darwin11.4.0",name:"Mac",version:"10.7.4"},{regex:"CFNetwork/.+ Darwin/11.3.0.*(x86_64)|(x86_64-apple-)?darwin11.3.0",name:"Mac",version:"10.7.3"},{regex:"CFNetwork/.+ Darwin/11.2.0.*(x86_64)|(x86_64-apple-)?darwin11.2.0",name:"Mac",version:"10.7.2"},{regex:"CFNetwork/.+ Darwin/11.1.0.*(x86_64)|(x86_64-apple-)?darwin11.1.0",name:"Mac",version:"10.7.1"},{regex:"CFNetwork/520",name:"Mac",version:"10.7"},{regex:"CFNetwork/454",name:"Mac",version:"10.6"},{regex:"CFNetwork/(?:438|422|339|330|221|220|217)",name:"Mac",version:"10.5"},{regex:"CFNetwork/12[89]",name:"Mac",version:"10.4"},{regex:"CFNetwork/1\\.2",name:"Mac",version:"10.3"},{regex:"CFNetwork/1\\.1",name:"Mac",version:"10.2"},{regex:"Mac[ +]OS[ +]?X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?",name:"Mac",version:"$1"},{regex:"Mac (?:OS/)?(\\d+(?:[_\\.]\\d+)+)",name:"Mac",version:"$1"},{regex:"macOS/(\\d+[\\.\\d]+)",name:"Mac",version:"$1"},{regex:"Darwin|Macintosh|Mac_PowerPC|PPC|Mac PowerPC|iMac|MacBook|macOS|Sonos/.+\\(MDCR_",name:"Mac",version:""},{regex:"SeewoOS x86_64 (\\d+[\\.\\d]+)",name:"SeewoOS",version:"$1"},{regex:"CrOS [a-z0-9_]+ .* Chrome/(\\d+[\\.\\d]+)",name:"Chrome OS",version:"$1"},{regex:"(?:BB10;.+Version|Black[Bb]erry[0-9a-z]+|Black[Bb]erry.+Version)/(\\d+[\\.\\d]+)",name:"BlackBerry OS",version:"$1"},{regex:"RIM Tablet OS (\\d+[\\.\\d]+)",name:"BlackBerry Tablet OS",version:"$1"},{regex:"RIM Tablet OS|QNX|Play[Bb]ook",name:"BlackBerry Tablet OS",version:""},{regex:"BlackBerry",name:"BlackBerry OS",version:""},{regex:"bPod",name:"BlackBerry OS",version:""},{regex:"BeOS",name:"BeOS",version:""},{regex:"Symbian/3.+NokiaBrowser/7\\.3",name:"Symbian^3",version:"Anna"},{regex:"Symbian/3.+NokiaBrowser/7\\.4",name:"Symbian^3",version:"Belle"},{regex:"Symbian/3",name:"Symbian^3",version:""},{regex:"(?:Series ?60|SymbOS|S60)(?:[ /]?(\\d+[\\.\\d]+|V\\d+))?",name:"Symbian OS Series 60",version:"$1"},{regex:"Series40",name:"Symbian OS Series 40",version:""},{regex:"SymbianOS/(\\d+[\\.\\d]+)",name:"Symbian OS",version:"$1"},{regex:"MeeGo|WeTab",name:"MeeGo",version:""},{regex:"Symbian(?: OS)?|SymbOS",name:"Symbian OS",version:""},{regex:"Nokia",name:"Symbian",version:""},{regex:"(?:Mobile|Tablet);.+Firefox/\\d+\\.\\d+",name:"Firefox OS",version:""},{regex:"RISC OS(?:-NC)?(?:[ /](\\d+[\\.\\d]+))?",name:"RISC OS",version:"$1"},{regex:"Inferno(?:[ /](\\d+[\\.\\d]+))?",name:"Inferno",version:"$1"},{regex:"bada(?:[ /](\\d+[\\.\\d]+))?",name:"Bada",version:"$1"},{regex:"(?:Brew(?!-Applet)(?: MP)?|BMP)(?:[ /](\\d+[\\.\\d]+))?",name:"Brew",version:"$1"},{regex:"GoogleTV(?:[ /](\\d+[\\.\\d]+))?",name:"Google TV",version:"$1"},{regex:"AppleTV(?:/?(\\d+[\\.\\d]+))?",name:"Apple TV",version:"$1"},{regex:"WebTV/(\\d+[\\.\\d]+)",name:"WebTV",version:"$1"},{regex:"RemixOS 5.1.1",name:"Remix OS",version:"1"},{regex:"RemixOS 6.0",name:"Remix OS",version:"2"},{regex:"RemixOS",name:"Remix OS",version:""},{regex:"(?:SunOS|Solaris)(?:[/ ](\\d+[\\.\\d]+))?",name:"Solaris",version:"$1"},{regex:"AIX(?:[/ ]?(\\d+[\\.\\d]+))?",name:"AIX",version:"$1"},{regex:"HP-UX(?:[/ ]?(\\d+[\\.\\d]+))?",name:"HP-UX",version:"$1"},{regex:"FreeBSD(?:[/ ]?(\\d+[\\.\\d]+))?",name:"FreeBSD",version:"$1"},{regex:"NetBSD(?:[/ ]?(\\d+[\\.\\d]+))?",name:"NetBSD",version:"$1"},{regex:"OpenBSD(?:[/ ]?(\\d+[\\.\\d]+))?",name:"OpenBSD",version:"$1"},{regex:"DragonFly(?:[/ ]?(\\d+[\\.\\d]+))?",name:"DragonFly",version:"$1"},{regex:"Syllable(?:[/ ]?(\\d+[\\.\\d]+))?",name:"Syllable",version:"$1"},{regex:"IRIX(?:;64)?(?:[/ ]?(\\d+[\\.\\d]+))",name:"IRIX",version:"$1"},{regex:"OSF1(?:[/ ]?v?(\\d+[\\.\\d]+))?",name:"OSF1",version:"$1"},{regex:"Nintendo (Wii|Switch)",name:"Nintendo",version:"$1"},{regex:"PlayStation ?([34])",name:"PlayStation",version:"$1"},{regex:"Xbox|KIN\\.(?:One|Two)",name:"Xbox",version:"360"},{regex:"Nitro|Nintendo ([3]?DS[i]?)",name:"Nintendo Mobile",version:"$1"},{regex:"PlayStation ((?:Portable|Vita))",name:"PlayStation Portable",version:"$1"},{regex:"OS/2",name:"OS/2",version:""},{regex:"Linux(?:OS)?[^a-z]",name:"GNU/Linux",version:""}]});var fi=u((fg,Qn)=>{Qn.exports={operatingSystem:{AIX:"AIX",AND:"Android",AMG:"AmigaOS",ATV:"Apple TV",ARL:"Arch Linux",BTR:"BackTrack",SBA:"Bada",BEO:"BeOS",BLB:"BlackBerry OS",QNX:"BlackBerry Tablet OS",BMP:"Brew",CES:"CentOS",COS:"Chrome OS",CYN:"CyanogenMod",DEB:"Debian",DEE:"Deepin",DFB:"DragonFly",FED:"Fedora",FOS:"Firefox OS",FIR:"Fire OS",FRE:"Freebox",BSD:"FreeBSD",FYD:"FydeOS",GNT:"Gentoo",GTV:"Google TV",HPX:"HP-UX",HAI:"Haiku OS",IRI:"IRIX",INF:"Inferno",KOS:"KaiOS",KNO:"Knoppix",KBT:"Kubuntu",LIN:"GNU/Linux",LBT:"Lubuntu",VLN:"VectorLinux",MAC:"Mac",MAE:"Maemo",MDR:"Mandriva",SMG:"MeeGo",MCD:"MocorDroid",MIN:"Mint",MLD:"MildWild",MOR:"MorphOS",NBS:"NetBSD",MTK:"MTK / Nucleus",MRE:"MRE",WII:"Nintendo",NDS:"Nintendo Mobile",OS2:"OS/2",T64:"OSF1",OBS:"OpenBSD",ORD:"Ordissimo",PSP:"PlayStation Portable",PS3:"PlayStation",RHT:"Red Hat",ROS:"RISC OS",RSO:"Rosa",REM:"Remix OS",RZD:"RazoDroiD",SAB:"Sabayon",SSE:"SUSE",SAF:"Sailfish OS",SEE:"SeewoOS",SLW:"Slackware",SOS:"Solaris",SYL:"Syllable",SYM:"Symbian",SYS:"Symbian OS",S40:"Symbian OS Series 40",S60:"Symbian OS Series 60",SY3:"Symbian^3",TDX:"ThreadX",TIZ:"Tizen",TOS:"TmaxOS",UBT:"Ubuntu",WAS:"watchOS",WTV:"WebTV",WHS:"Whale OS",WIN:"Windows",WCE:"Windows CE",WIO:"Windows IoT",WMO:"Windows Mobile",WPH:"Windows Phone",WRT:"Windows RT",XBX:"Xbox",XBT:"Xubuntu",YNS:"YunOs",IOS:"iOS",POS:"palmOS",WOS:"webOS"},osFamilies:{Android:["AND","CYN","FIR","REM","RZD","MLD","MCD","YNS"],AmigaOS:["AMG","MOR"],"Apple TV":["ATV"],BlackBerry:["BLB","QNX"],Brew:["BMP"],BeOS:["BEO","HAI"],"Chrome OS":["COS","FYD","SEE"],"Firefox OS":["FOS","KOS"],"Gaming Console":["WII","PS3"],"Google TV":["GTV"],IBM:["OS2"],iOS:["IOS","WAS"],"RISC OS":["ROS"],"GNU/Linux":["LIN","ARL","DEB","KNO","MIN","UBT","KBT","XBT","LBT","FED","RHT","VLN","MDR","GNT","SAB","SLW","SSE","CES","BTR","SAF","ORD","TOS","RSO","DEE","FRE"],Mac:["MAC"],"Mobile Gaming Console":["PSP","NDS","XBX"],"Real-time OS":["MTK","TDX","MRE"],"Other Mobile":["WOS","POS","SBA","TIZ","SMG","MAE"],Symbian:["SYM","SYS","SY3","S60","S40"],Unix:["SOS","AIX","HPX","BSD","NBS","OBS","DFB","SYL","IRI","T64","INF"],WebTV:["WTV"],Windows:["WIN"],"Windows Mobile":["WPH","WMO","WCE","WRT","WIO"],"Other Smart TV":["WHS"]}}});var yi=u(Ue=>{"use strict";var Gi=Ue&&Ue.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Ue,"__esModule",{value:!0});var Zn=Gi(bi()),Yn=j(),Li=N(),ue=L(),Ei=Gi(fi()),zn=["AmigaOS","IBM","GNU/Linux","Mac","Unix","Windows","BeOS","Chrome OS"],Jn=Ei.default.operatingSystem,qn=Ei.default.osFamilies,ne=class{constructor(e){this.options={versionTruncation:1},this.parse=r=>{let t={name:"",version:"",platform:this.parsePlatform(r)};for(let i of Zn.default){let l=ue.userAgentParser(i.regex,r);if(l)return t.name=Li.variableReplacement(i.name,l),t.version=Yn.formatVersion(Li.variableReplacement(i.version,l),this.options.versionTruncation),t.name==="lubuntu"&&(t.name="Lubuntu"),t.name==="debian"&&(t.name="Debian"),t.name==="YunOS"&&(t.name="YunOs"),t}return null},this.parsePlatform=r=>ue.userAgentParser("arm|aarch64|Watch ?OS|Watch1,[12]",r)?"ARM":ue.userAgentParser("mips",r)?"MIPS":ue.userAgentParser("sh4",r)?"SuperH":ue.userAgentParser("WOW64|x64|win64|amd64|x86_?64",r)?"x64":ue.userAgentParser("(?:i[0-9]|x)86|i86pc",r)?"x86":"",this.options=Object.assign(Object.assign({},this.options),e)}};Ue.default=ne;ne.getDesktopOsArray=()=>zn;ne.getOsFamily=o=>{let e=ne.getOsShortName(o);for(let[r,t]of Object.entries(qn))if(t.includes(e))return r;return""};ne.getOsShortName=o=>{for(let[e,r]of Object.entries(Jn))if(r===o)return e;return""}});var Bi=u((Gg,jn)=>{jn.exports={Dell:["MDDR(JS)?","MDDC(JS)?","MDDS(JS)?"],Acer:["MAAR(JS)?"],Sony:["MASE(JS)?","MASP(JS)?","MASA(JS)?"],Asus:["MAAU","NP0[26789]","ASJB","ASU2(JS)?"],Samsung:["MASM(JS)?","SMJB"],Lenovo:["MALC(JS)?","MALE(JS)?","MALN(JS)?","LCJB","LEN2"],Toshiba:["MATM(JS)?","MATB(JS)?","MATP(JS)?","TNJB","TAJB"],Medion:["MAMD"],MSI:["MAMI(JS)?","MAM3"],Gateway:["MAGW(JS)?"],Fujitsu:["MAFS(JS)?","FSJB"],Compaq:["CPDTDF","CPNTDF(JS?)","CMNTDF(JS)?","CMDTDF(JS)?"],HP:["HPCMHP","HPNTDF(JS)?","HPDTDF(JS)?"],Hyrican:["MANM(JS)?"],Ordissimo:["Ordissimo","webissimo3"]}});var Ci=u(ke=>{"use strict";var ed=ke&&ke.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(ke,"__esModule",{value:!0});var rd=ed(Bi()),od=L(),po=class{constructor(){this.parse=e=>{for(let[r,t]of Object.entries(rd.default))for(let i of t)if(od.userAgentParser(i,e))return r;return""}}};ke.default=po});var Ni=u((yg,td)=>{td.exports=[{regex:"360Spider(-Image|-Video)?",name:"360Spider",category:"Search bot",url:"https://www.so.com/help/help_3_2.html",producer:{name:"Online Media Group, Inc.",url:""}},{regex:"Aboundex",name:"Aboundexbot",category:"Search bot",url:"http://www.aboundex.com/crawler/",producer:{name:"Aboundex.com",url:"http://www.aboundex.com"}},{regex:"AcoonBot",name:"Acoon",category:"Search bot",url:"http://www.acoon.de/robot.asp",producer:{name:"Acoon GmbH",url:"http://www.acoon.de"}},{regex:"AddThis\\.com",name:"AddThis.com",category:"Social Media Agent",url:"",producer:{name:"Clearspring Technologies, Inc.",url:"http://www.clearspring.com"}},{regex:"AhrefsBot",name:"aHrefs Bot",category:"Crawler",url:"https://ahrefs.com/robot",producer:{name:"Ahrefs Pte Ltd",url:"https://ahrefs.com/robot"}},{regex:"ia_archiver|alexabot|verifybot",name:"Alexa Crawler",category:"Search bot",url:"https://support.alexa.com/hc/en-us/sections/200100794-Crawlers",producer:{name:"Alexa Internet",url:"https://www.alexa.com"}},{regex:"alexa site audit",name:"Alexa Site Audit",category:"Site Monitor",url:"https://support.alexa.com/hc/en-us/articles/200450194",producer:{name:"Alexa Internet",url:"https://www.alexa.com"}},{regex:"Amazon[ -]Route ?53[ -]Health[ -]Check[ -]Service",name:"Amazon Route53 Health Check",category:"Service Agent",producer:{name:"Amazon Web Services",url:"https://aws.amazon.com/"}},{regex:"AmorankSpider",name:"Amorank Spider",category:"Crawler",url:"http://amorank.com/webcrawler.html",producer:{name:"Amorank",url:"http://www.amorank.com"}},{regex:"ApacheBench",name:"ApacheBench",category:"Benchmark",url:"https://httpd.apache.org/docs/2.4/programs/ab.html",producer:{name:"The Apache Software Foundation",url:"https://www.apache.org/foundation/"}},{regex:"Applebot",name:"Applebot",category:"Crawler",url:"https://support.apple.com/en-us/HT204683",producer:{name:"Apple Inc",url:"https://www.apple.com"}},{regex:"AppSignalBot",name:"AppSignalBot",category:"Site Monitor",url:"https://docs.appsignal.com/uptime-monitoring/",producer:{name:"AppSignal",url:"https://appsignal.com/"}},{regex:"Arachni",name:"Arachni",category:"Security Checker",url:"https://www.arachni-scanner.com/",producer:{name:"Sarosys LLC",url:"https://www.sarosys.com/"}},{regex:"AspiegelBot",name:"AspiegelBot",category:"Crawler",url:"https://aspiegel.com/",producer:{name:"Huawei",url:"https://www.huawei.com/"}},{regex:"Castro 2, Episode Duration Lookup",name:"Castro 2",category:"Service Agent",url:"http://supertop.co/castro/",producer:{name:"Supertop",url:"http://supertop.co"}},{regex:"Curious George",name:"Analytics SEO Crawler",category:"Crawler",url:"http://www.analyticsseo.com/crawler",producer:{name:"Analytics SEO",url:"http://www.analyticsseo.com"}},{regex:"archive\\.org_bot|special_archiver",name:"archive.org bot",category:"Crawler",url:"https://archive.org/details/archive.org_bot",producer:{name:"The Internet Archive",url:"https://archive.org"}},{regex:"Ask Jeeves/Teoma",name:"Ask Jeeves",category:"Search bot",url:"",producer:{name:"Ask Jeeves Inc.",url:"http://www.ask.com"}},{regex:"Backlink-Check\\.de",name:"Backlink-Check.de",category:"Crawler",url:"http://www.backlink-check.de/bot.html",producer:{name:"Mediagreen Medienservice",url:"http://www.backlink-check.de"}},{regex:"BacklinkCrawler",name:"BacklinkCrawler",category:"Crawler",url:"http://www.backlinktest.com/crawler.html",producer:{name:"2.0Promotion GbR",url:"http://www.backlinktest.com"}},{regex:"baiduspider(-image)?|baidu Transcoder|baidu.*spider",name:"Baidu Spider",category:"Search bot",url:"http://www.baidu.com/search/spider.htm",producer:{name:"Baidu",url:"http://www.baidu.com"}},{regex:"BazQux",name:"BazQux Reader",url:"https://bazqux.com/fetcher",category:"Feed Fetcher",producer:{name:"",url:""}},{regex:"MSNBot|msrbot|bingbot|BingPreview|msnbot-(UDiscovery|NewsBlogs)|adidxbot",name:"BingBot",category:"Search bot",url:"http://search.msn.com/msnbot.htmn",producer:{name:"Microsoft Corporation",url:"http://www.microsoft.com"}},{regex:"Blekkobot",name:"Blekkobot",category:"Search bot",url:"http://blekko.com/about/blekkobot",producer:{name:"Blekko",url:"http://blekko.com"}},{regex:"BLEXBot(Test)?",name:"BLEXBot Crawler",category:"Crawler",url:"http://webmeup-crawler.com",producer:{name:"WebMeUp",url:"http://webmeup.com"}},{regex:"Bloglovin",name:"Bloglovin",url:"http://www.bloglovin.com",category:"Feed Fetcher",producer:{name:"",url:""}},{regex:"Blogtrottr",name:"Blogtrottr",url:"",category:"Feed Fetcher",producer:{name:"Blogtrottr Ltd",url:"https://blogtrottr.com/"}},{regex:"BoardReader Blog Indexer",name:"BoardReader Blog Indexer",category:"Crawler",producer:{name:"BoardReader",url:"https://boardreader.com/"}},{regex:"BountiiBot",name:"Bountii Bot",category:"Search bot",url:"http://bountii.com/contact.php",producer:{name:"Bountii Inc.",url:"http://bountii.com"}},{regex:"Browsershots",name:"Browsershots",category:"Service Agent",url:"http://browsershots.org/faq",producer:{name:"Browsershots.org",url:"http://browsershots.org"}},{regex:"BUbiNG",name:"BUbiNG",category:"Crawler",url:"http://law.di.unimi.it/BUbiNG.html",producer:{name:"The Laboratory for Web Algorithmics (LAW)",url:"http://law.di.unimi.it/software.php#buging"}},{regex:"(?{"use strict";var id=Ao&&Ao.__importDefault||function(o){return o&&o.__esModule?o:{default:o}},ld=id(Ni()),ad=L(),vo=class{constructor(){this.parse=e=>{var r,t,i,l;for(let a of ld.default)if(ad.userAgentParser(a.regex,e))return{name:a.name,category:a.category||"",url:a.url||"",producer:{name:((t=(r=a)===null||r===void 0?void 0:r.producer)===null||t===void 0?void 0:t.name)||"",url:((l=(i=a)===null||i===void 0?void 0:i.producer)===null||l===void 0?void 0:l.url)||""}};return null}}};Oi.exports=vo});var Ii=u($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.versionCompare=(o,e,r)=>{let t,i,l=0,a={dev:-6,alpha:-5,a:-5,beta:-4,b:-4,RC:-3,rc:-3,"#":-2,p:1,pl:1},n=m=>(m=(""+m).replace(/[_\-+]/g,"."),m=m.replace(/([^.\d]+)/g,".$1.").replace(/\.{2,}/g,"."),m.length?m.split("."):[-8]),d=m=>m?isNaN(m)?a[m]||-7:parseInt(m,10):0;for(o=n(o),e=n(e),i=Math.max(o.length,e.length),t=0;te[t]){l=1;break}}if(!r)return l;switch(r){case">":case"gt":return l>0;case">=":case"ge":return l>=0;case"<=":case"le":return l<=0;case"===":case"=":case"eq":return l===0;case"<>":case"!==":case"ne":return l!==0;case"":case"<":case"lt":return l<0;default:return null}}});var Di=u((Po,Fi)=>{"use strict";var Ke=Po&&Po.__importDefault||function(o){return o&&o.__esModule?o:{default:o}},nd=Ke(zt()),dd=Ke(_i()),Mo=Ke(yi()),sd=Ke(Ci()),md=Ke(qr()),gd=wi(),V=L(),hr=Ii(),To=class{constructor(e){this.options={skipBotDetection:!1,versionTruncation:1},this.parse=r=>{var t,i,l,a,n,d,m,g,S,p,h,A,P,b;let c={client:this.clientParser.parse(r),os:this.operatingSystemParser.parse(r),device:this.deviceParser.parse(r),bot:this.options.skipBotDetection?null:this.botParser.parse(r)},w=(t=c.os)===null||t===void 0?void 0:t.name,I=(i=c.os)===null||i===void 0?void 0:i.version,f=Mo.default.getOsFamily(w||"");if(!(!((l=c.device)===null||l===void 0)&&l.brand)){let ge=this.vendorFragmentParser.parse(r);ge&&(c.device||(c.device=this.createDeviceObject()),c.device.brand=ge)}return!(!((a=c.device)===null||a===void 0)&&a.brand)&&["Apple TV","watchOS","iOS","Mac"].includes(w||"")&&(c.device||(c.device=this.createDeviceObject()),c.device.brand="Apple"),!(!((n=c.device)===null||n===void 0)&&n.type)&&f==="Android"&&V.userAgentParser("Chrome/[\\.0-9]*",r)&&(V.userAgentParser("Chrome/[.0-9]* (?:Mobile|eliboM)",r)?(c.device||(c.device=this.createDeviceObject()),c.device.type="smartphone"):V.userAgentParser("Chrome/[.0-9]* (?!Mobile)",r)&&(c.device||(c.device=this.createDeviceObject()),c.device.type="tablet")),(!(!((d=c.device)===null||d===void 0)&&d.type)&&this.hasAndroidTabletFragment(r)||V.userAgentParser("Opera Tablet",r))&&(c.device||(c.device=this.createDeviceObject()),c.device.type="tablet"),!(!((m=c.device)===null||m===void 0)&&m.type)&&this.hasAndroidMobileFragment(r)&&(c.device||(c.device=this.createDeviceObject()),c.device.type="smartphone"),!(!((g=c.device)===null||g===void 0)&&g.type)&&w==="Android"&&I!==""&&(hr.versionCompare(I,"2.0")===-1?(c.device||(c.device=this.createDeviceObject()),c.device.type="smartphone"):hr.versionCompare(I,"3.0")>=0&&hr.versionCompare(I,"4.0")===-1&&(c.device||(c.device=this.createDeviceObject()),c.device.type="tablet")),((S=c.device)===null||S===void 0?void 0:S.type)==="feature phone"&&f==="Android"&&(c.device.type="smartphone"),!(!((p=c.device)===null||p===void 0)&&p.type)&&this.isToucheEnabled(r)&&(w==="Windows RT"||w==="Windows"&&hr.versionCompare(I,"8.0")>=0)&&(c.device||(c.device=this.createDeviceObject()),c.device.type="tablet"),V.userAgentParser("Opera TV Store",r)&&(c.device||(c.device=this.createDeviceObject()),c.device.type="television"),V.userAgentParser("SmartTV|Tizen.+ TV .+$",r)&&(c.device||(c.device=this.createDeviceObject()),c.device.type="television"),!(!((h=c.device)===null||h===void 0)&&h.type)&&["Kylo","Espial TV Browser"].includes(((A=c.client)===null||A===void 0?void 0:A.name)||"")&&(c.device||(c.device=this.createDeviceObject()),c.device.type="television"),((P=c.device)===null||P===void 0?void 0:P.type)!=="desktop"&&V.userAgentParser("Desktop",r)!==null&&this.hasDesktopFragment(r)&&(c.device||(c.device=this.createDeviceObject()),c.device.type="desktop"),!(!((b=c.device)===null||b===void 0)&&b.type)&&this.isDesktop(c,f)&&(c.device||(c.device=this.createDeviceObject()),c.device.type="desktop"),c},this.hasAndroidMobileFragment=r=>V.userAgentParser("Android( [.0-9]+)?; Mobile;",r),this.hasAndroidTabletFragment=r=>V.userAgentParser("Android( [.0-9]+)?; Tablet;",r),this.hasDesktopFragment=r=>V.userAgentParser("Desktop (x(?:32|64)|WOW64);",r),this.isDesktop=(r,t)=>!r.os||this.usesMobileBrowser(r.client)?!1:Mo.default.getDesktopOsArray().includes(t),this.usesMobileBrowser=r=>{var t,i;return r?((t=r)===null||t===void 0?void 0:t.type)==="browser"&&md.default.isMobileOnlyBrowser((i=r)===null||i===void 0?void 0:i.name):!1},this.isToucheEnabled=r=>V.userAgentParser("Touch",r),this.createDeviceObject=()=>({type:"",brand:"",model:""}),this.options=Object.assign(Object.assign({},this.options),e),this.clientParser=new nd.default(this.options),this.deviceParser=new dd.default,this.operatingSystemParser=new Mo.default(this.options),this.vendorFragmentParser=new sd.default,this.botParser=new gd}};Fi.exports=To});var zi=u((Lo,Yi)=>{(function(o,e){"use strict";typeof define=="function"&&define.amd?define("stackframe",[],e):typeof Lo=="object"?Yi.exports=e():o.StackFrame=e()})(Lo,function(){"use strict";function o(h){return!isNaN(parseFloat(h))&&isFinite(h)}function e(h){return h.charAt(0).toUpperCase()+h.substring(1)}function r(h){return function(){return this[h]}}var t=["isConstructor","isEval","isNative","isToplevel"],i=["columnNumber","lineNumber"],l=["fileName","functionName","source"],a=["args"],n=["evalOrigin"],d=t.concat(i,l,a,n);function m(h){if(h)for(var A=0;A{(function(o,e){"use strict";typeof define=="function"&&define.amd?define("error-stack-parser",["stackframe"],e):typeof Go=="object"?Ji.exports=e(zi()):o.ErrorStackParser=e(o.StackFrame)})(Go,function(e){"use strict";var r=/(^|@)\S+:\d+/,t=/^\s*at .*(\S+:\d+|\(native\))/m,i=/^(eval@)?(\[native code])?$/;return{parse:function(a){if(typeof a.stacktrace<"u"||typeof a["opera#sourceloc"]<"u")return this.parseOpera(a);if(a.stack&&a.stack.match(t))return this.parseV8OrIE(a);if(a.stack)return this.parseFFOrSafari(a);throw new Error("Cannot parse given Error object")},extractLocation:function(a){if(a.indexOf(":")===-1)return[a];var n=/(.+?)(?::(\d+))?(?::(\d+))?$/,d=n.exec(a.replace(/[()]/g,""));return[d[1],d[2]||void 0,d[3]||void 0]},parseV8OrIE:function(a){var n=a.stack.split(` `).filter(function(d){return!!d.match(t)},this);return n.map(function(d){d.indexOf("(eval ")>-1&&(d=d.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(,.*$)/g,""));var m=d.replace(/^\s+/,"").replace(/\(eval code/g,"(").replace(/^.*?\s+/,""),g=m.match(/ (\(.+\)$)/);m=g?m.replace(g[0],""):m;var S=this.extractLocation(g?g[1]:m),p=g&&m||void 0,h=["eval",""].indexOf(S[0])>-1?void 0:S[0];return new e({functionName:p,fileName:h,lineNumber:S[1],columnNumber:S[2],source:d})},this)},parseFFOrSafari:function(a){var n=a.stack.split(` `).filter(function(d){return!d.match(i)},this);return n.map(function(d){if(d.indexOf(" > eval")>-1&&(d=d.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),d.indexOf("@")===-1&&d.indexOf(":")===-1)return new e({functionName:d});var m=/((.*".+"[^@]*)?[^@]*)(?:@)/,g=d.match(m),S=g&&g[1]?g[1]:void 0,p=this.extractLocation(d.replace(m,""));return new e({functionName:S,fileName:p[0],lineNumber:p[1],columnNumber:p[2],source:d})},this)},parseOpera:function(a){return!a.stacktrace||a.message.indexOf(` `)>-1&&a.message.split(` `).length>a.stacktrace.split(` `).length?this.parseOpera9(a):a.stack?this.parseOpera11(a):this.parseOpera10(a)},parseOpera9:function(a){for(var n=/Line (\d+).*script (?:in )?(\S+)/i,d=a.message.split(` `),m=[],g=2,S=d.length;g/,"$2").replace(/\([^)]*\)/g,"")||void 0,h;S.match(/\(([^)]*)\)/)&&(h=S.replace(/^[^(]+\(([^)]*)\)$/,"$1"));var A=h===void 0||h==="[arguments not available]"?void 0:h.split(",");return new e({functionName:p,args:A,fileName:g[0],lineNumber:g[1],columnNumber:g[2],source:d})},this)}}})});var dl=u((Q,nl)=>{var al=typeof self<"u"?self:Q,Ar=function(){function o(){this.fetch=!1,this.DOMException=al.DOMException}return o.prototype=al,new o}();(function(o){var e=function(r){var t={searchParams:"URLSearchParams"in o,iterable:"Symbol"in o&&"iterator"in Symbol,blob:"FileReader"in o&&"Blob"in o&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in o,arrayBuffer:"ArrayBuffer"in o};function i(s){return s&&DataView.prototype.isPrototypeOf(s)}if(t.arrayBuffer)var l=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],a=ArrayBuffer.isView||function(s){return s&&l.indexOf(Object.prototype.toString.call(s))>-1};function n(s){if(typeof s!="string"&&(s=String(s)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(s))throw new TypeError("Invalid character in header field name");return s.toLowerCase()}function d(s){return typeof s!="string"&&(s=String(s)),s}function m(s){var x={next:function(){var v=s.shift();return{done:v===void 0,value:v}}};return t.iterable&&(x[Symbol.iterator]=function(){return x}),x}function g(s){this.map={},s instanceof g?s.forEach(function(x,v){this.append(v,x)},this):Array.isArray(s)?s.forEach(function(x){this.append(x[0],x[1])},this):s&&Object.getOwnPropertyNames(s).forEach(function(x){this.append(x,s[x])},this)}g.prototype.append=function(s,x){s=n(s),x=d(x);var v=this.map[s];this.map[s]=v?v+", "+x:x},g.prototype.delete=function(s){delete this.map[n(s)]},g.prototype.get=function(s){return s=n(s),this.has(s)?this.map[s]:null},g.prototype.has=function(s){return this.map.hasOwnProperty(n(s))},g.prototype.set=function(s,x){this.map[n(s)]=d(x)},g.prototype.forEach=function(s,x){for(var v in this.map)this.map.hasOwnProperty(v)&&s.call(x,this.map[v],v,this)},g.prototype.keys=function(){var s=[];return this.forEach(function(x,v){s.push(v)}),m(s)},g.prototype.values=function(){var s=[];return this.forEach(function(x){s.push(x)}),m(s)},g.prototype.entries=function(){var s=[];return this.forEach(function(x,v){s.push([v,x])}),m(s)},t.iterable&&(g.prototype[Symbol.iterator]=g.prototype.entries);function S(s){if(s.bodyUsed)return Promise.reject(new TypeError("Already read"));s.bodyUsed=!0}function p(s){return new Promise(function(x,v){s.onload=function(){x(s.result)},s.onerror=function(){v(s.error)}})}function h(s){var x=new FileReader,v=p(x);return x.readAsArrayBuffer(s),v}function A(s){var x=new FileReader,v=p(x);return x.readAsText(s),v}function P(s){for(var x=new Uint8Array(s),v=new Array(x.length),y=0;y-1?x:s}function f(s,x){x=x||{};var v=x.body;if(s instanceof f){if(s.bodyUsed)throw new TypeError("Already read");this.url=s.url,this.credentials=s.credentials,x.headers||(this.headers=new g(s.headers)),this.method=s.method,this.mode=s.mode,this.signal=s.signal,!v&&s._bodyInit!=null&&(v=s._bodyInit,s.bodyUsed=!0)}else this.url=String(s);if(this.credentials=x.credentials||this.credentials||"same-origin",(x.headers||!this.headers)&&(this.headers=new g(x.headers)),this.method=I(x.method||this.method||"GET"),this.mode=x.mode||this.mode||null,this.signal=x.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&v)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(v)}f.prototype.clone=function(){return new f(this,{body:this._bodyInit})};function mr(s){var x=new FormData;return s.trim().split("&").forEach(function(v){if(v){var y=v.split("="),G=y.shift().replace(/\+/g," "),$=y.join("=").replace(/\+/g," ");x.append(decodeURIComponent(G),decodeURIComponent($))}}),x}function ge(s){var x=new g,v=s.replace(/\r?\n[\t ]+/g," ");return v.split(/\r?\n/).forEach(function(y){var G=y.split(":"),$=G.shift().trim();if($){var gr=G.join(":").trim();x.append($,gr)}}),x}c.call(f.prototype);function F(s,x){x||(x={}),this.type="default",this.status=x.status===void 0?200:x.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in x?x.statusText:"OK",this.headers=new g(x.headers),this.url=x.url||"",this._initBody(s)}c.call(F.prototype),F.prototype.clone=function(){return new F(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new g(this.headers),url:this.url})},F.error=function(){var s=new F(null,{status:0,statusText:""});return s.type="error",s};var ha=[301,302,303,307,308];F.redirect=function(s,x){if(ha.indexOf(x)===-1)throw new RangeError("Invalid status code");return new F(null,{status:x,headers:{location:s}})},r.DOMException=o.DOMException;try{new r.DOMException}catch{r.DOMException=function(x,v){this.message=x,this.name=v;var y=Error(x);this.stack=y.stack},r.DOMException.prototype=Object.create(Error.prototype),r.DOMException.prototype.constructor=r.DOMException}function kr(s,x){return new Promise(function(v,y){var G=new f(s,x);if(G.signal&&G.signal.aborted)return y(new r.DOMException("Aborted","AbortError"));var $=new XMLHttpRequest;function gr(){$.abort()}$.onload=function(){var Le={status:$.status,statusText:$.statusText,headers:ge($.getAllResponseHeaders()||"")};Le.url="responseURL"in $?$.responseURL:Le.headers.get("X-Request-URL");var Kr="response"in $?$.response:$.responseText;v(new F(Kr,Le))},$.onerror=function(){y(new TypeError("Network request failed"))},$.ontimeout=function(){y(new TypeError("Network request failed"))},$.onabort=function(){y(new r.DOMException("Aborted","AbortError"))},$.open(G.method,G.url,!0),G.credentials==="include"?$.withCredentials=!0:G.credentials==="omit"&&($.withCredentials=!1),"responseType"in $&&t.blob&&($.responseType="blob"),G.headers.forEach(function(Le,Kr){$.setRequestHeader(Kr,Le)}),G.signal&&(G.signal.addEventListener("abort",gr),$.onreadystatechange=function(){$.readyState===4&&G.signal.removeEventListener("abort",gr)}),$.send(typeof G._bodyInit>"u"?null:G._bodyInit)})}return kr.polyfill=!0,o.fetch||(o.fetch=kr,o.Headers=g,o.Request=f,o.Response=F),r.Headers=g,r.Request=f,r.Response=F,r.fetch=kr,Object.defineProperty(r,"__esModule",{value:!0}),r}({})})(Ar);Ar.fetch.ponyfill=!0;delete Ar.fetch.polyfill;var he=Ar;Q=he.fetch;Q.default=he.fetch;Q.fetch=he.fetch;Q.Headers=he.Headers;Q.Request=he.Request;Q.Response=he.Response;nl.exports=Q});var Eo=u((o0,ul)=>{function H(){}H.prototype.clear=function(){this._root=null,this.size=0};H.prototype.find=function(o){for(var e=this._root;e!==null;){var r=this._comparator(o,e.data);if(r===0)return e.data;e=e.get_child(r>0)}return null};H.prototype.findIter=function(o){for(var e=this._root,r=this.iterator();e!==null;){var t=this._comparator(o,e.data);if(t===0)return r._cursor=e,r;r._ancestors.push(e),e=e.get_child(t>0)}return null};H.prototype.lowerBound=function(o){for(var e=this._root,r=this.iterator(),t=this._comparator;e!==null;){var i=t(o,e.data);if(i===0)return r._cursor=e,r;r._ancestors.push(e),e=e.get_child(i>0)}for(var l=r._ancestors.length-1;l>=0;--l)if(e=r._ancestors[l],t(o,e.data)<0)return r._cursor=e,r._ancestors.length=l,r;return r._ancestors.length=0,r};H.prototype.upperBound=function(o){for(var e=this.lowerBound(o),r=this._comparator;e.data()!==null&&r(e.data(),o)===0;)e.next();return e};H.prototype.min=function(){var o=this._root;if(o===null)return null;for(;o.left!==null;)o=o.left;return o.data};H.prototype.max=function(){var o=this._root;if(o===null)return null;for(;o.right!==null;)o=o.right;return o.data};H.prototype.iterator=function(){return new pe(this)};H.prototype.each=function(o){for(var e=this.iterator(),r;(r=e.next())!==null;)if(o(r)===!1)return};H.prototype.reach=function(o){for(var e=this.iterator(),r;(r=e.prev())!==null;)if(o(r)===!1)return};function pe(o){this._tree=o,this._ancestors=[],this._cursor=null}pe.prototype.data=function(){return this._cursor!==null?this._cursor.data:null};pe.prototype.next=function(){if(this._cursor===null){var o=this._tree._root;o!==null&&this._minNode(o)}else if(this._cursor.right===null){var e;do if(e=this._cursor,this._ancestors.length)this._cursor=this._ancestors.pop();else{this._cursor=null;break}while(this._cursor.right===e)}else this._ancestors.push(this._cursor),this._minNode(this._cursor.right);return this._cursor!==null?this._cursor.data:null};pe.prototype.prev=function(){if(this._cursor===null){var o=this._tree._root;o!==null&&this._maxNode(o)}else if(this._cursor.left===null){var e;do if(e=this._cursor,this._ancestors.length)this._cursor=this._ancestors.pop();else{this._cursor=null;break}while(this._cursor.left===e)}else this._ancestors.push(this._cursor),this._maxNode(this._cursor.left);return this._cursor!==null?this._cursor.data:null};pe.prototype._minNode=function(o){for(;o.left!==null;)this._ancestors.push(o),o=o.left;this._cursor=o};pe.prototype._maxNode=function(o){for(;o.right!==null;)this._ancestors.push(o),o=o.right;this._cursor=o};ul.exports=H});var pl=u((t0,hl)=>{var Gd=Eo();function ve(o){this.data=o,this.left=null,this.right=null,this.red=!0}ve.prototype.get_child=function(o){return o?this.right:this.left};ve.prototype.set_child=function(o,e){o?this.right=e:this.left=e};function $r(o){this._root=null,this._comparator=o,this.size=0}$r.prototype=new Gd;$r.prototype.insert=function(o){var e=!1;if(this._root===null)this._root=new ve(o),e=!0,this.size++;else{var r=new ve(void 0),t=0,i=0,l=null,a=r,n=null,d=this._root;for(a.right=this._root;;){if(d===null?(d=new ve(o),n.set_child(t,d),e=!0,this.size++):R(d.left)&&R(d.right)&&(d.red=!0,d.left.red=!1,d.right.red=!1),R(d)&&R(n)){var m=a.right===l;d===n.get_child(i)?a.set_child(m,Qe(l,!i)):a.set_child(m,Sl(l,!i))}var g=this._comparator(d.data,o);if(g===0)break;i=t,t=g<0,l!==null&&(a=l),l=n,n=d,d=d.get_child(t)}this._root=r.right}return this._root.red=!1,e};$r.prototype.remove=function(o){if(this._root===null)return!1;var e=new ve(void 0),r=e;r.right=this._root;for(var t=null,i=null,l=null,a=1;r.get_child(a)!==null;){var n=a;i=t,t=r,r=r.get_child(a);var d=this._comparator(o,r.data);if(a=d>0,d===0&&(l=r),!R(r)&&!R(r.get_child(a))){if(R(r.get_child(!a))){var m=Qe(r,a);t.set_child(n,m),t=m}else if(!R(r.get_child(!a))){var g=t.get_child(!n);if(g!==null)if(!R(g.get_child(!n))&&!R(g.get_child(n)))t.red=!1,g.red=!0,r.red=!0;else{var S=i.right===t;R(g.get_child(n))?i.set_child(S,Sl(t,n)):R(g.get_child(!n))&&i.set_child(S,Qe(t,n));var p=i.get_child(S);p.red=!0,r.red=!0,p.left.red=!1,p.right.red=!1}}}}return l!==null&&(l.data=r.data,t.set_child(t.right===r,r.get_child(r.left===null)),this.size--),this._root=e.right,this._root!==null&&(this._root.red=!1),l!==null};function R(o){return o!==null&&o.red}function Qe(o,e){var r=o.get_child(!e);return o.set_child(!e,r.get_child(e)),r.set_child(e,o),o.red=!0,r.red=!1,r}function Sl(o,e){return o.set_child(!e,Qe(o.get_child(!e),!e)),Qe(o,e)}hl.exports=$r});var Al=u((i0,vl)=>{var Ed=Eo();function Ze(o){this.data=o,this.left=null,this.right=null}Ze.prototype.get_child=function(o){return o?this.right:this.left};Ze.prototype.set_child=function(o,e){o?this.right=e:this.left=e};function Mr(o){this._root=null,this._comparator=o,this.size=0}Mr.prototype=new Ed;Mr.prototype.insert=function(o){if(this._root===null)return this._root=new Ze(o),this.size++,!0;for(var e=0,r=null,t=this._root;;){if(t===null)return t=new Ze(o),r.set_child(e,t),ret=!0,this.size++,!0;if(this._comparator(t.data,o)===0)return!1;e=this._comparator(t.data,o)<0,r=t,t=t.get_child(e)}};Mr.prototype.remove=function(o){if(this._root===null)return!1;var e=new Ze(void 0),r=e;r.right=this._root;for(var t=null,i=null,l=1;r.get_child(l)!==null;){t=r,r=r.get_child(l);var a=this._comparator(o,r.data);l=a>0,a===0&&(i=r)}return i!==null?(i.data=r.data,t.set_child(t.right===r,r.get_child(r.left===null)),this._root=e.right,this.size--,!0):!1};vl.exports=Mr});var Ml=u((l0,$l)=>{$l.exports={RBTree:pl(),BinTree:Al()}});var _l=u((a0,Pl)=>{var yd=Ml().RBTree;function M(o,e,r){this.discrete=o===!1,this.delta=o||.01,this.K=e===void 0?25:e,this.CX=r===void 0?1.1:r,this.centroids=new yd(Tl),this.nreset=0,this.reset()}M.prototype.reset=function(){this.centroids.clear(),this.n=0,this.nreset+=1,this.last_cumulate=0};M.prototype.size=function(){return this.centroids.size};M.prototype.toArray=function(o){var e=[];return o?(this._cumulate(!0),this.centroids.each(function(r){e.push(r)})):this.centroids.each(function(r){e.push({mean:r.mean,n:r.n})}),e};M.prototype.summary=function(){var o=this.discrete?"exact ":"approximating ",e=[o+this.n+" samples using "+this.size()+" centroids","min = "+this.percentile(0),"Q1 = "+this.percentile(.25),"Q2 = "+this.percentile(.5),"Q3 = "+this.percentile(.75),"max = "+this.percentile(1)];return e.join(` `)};function Tl(o,e){return o.mean>e.mean?1:o.meanthis.n/this.last_cumulate)){var e=0;this.centroids.each(function(r){r.mean_cumn=e+r.n/2,e=r.cumn=e+r.n}),this.n=this.last_cumulate=e}};M.prototype.find_nearest=function(o){if(this.size()===0)return null;var e=this.centroids.lowerBound({mean:o}),r=e.data()===null?e.prev():e.data();if(r.mean===o||this.discrete)return r;var t=e.prev();return t&&Math.abs(t.mean-o)=e?this._addweight(i,o,e):this._new_centroid(o,e,i.cumn)}this._cumulate(!1),!this.discrete&&this.K&&this.size()>this.K/this.delta&&this.compress()};M.prototype.bound_mean=function(o){var e=this.centroids.upperBound({mean:o}),r=e.prev(),t=r.mean===o?r:e.next();return[r,t]};M.prototype.p_rank=function(o){var e=Array.isArray(o)?o:[o],r=e.map(this._p_rank,this);return Array.isArray(o)?r:r[0]};M.prototype._p_rank=function(o){if(this.size()!==0){{if(othis.centroids.max().mean)return 1}this._cumulate(!0);var e=this.bound_mean(o),r=e[0],t=e[1];if(this.discrete)return r.cumn/this.n;var i=r.mean_cumn;return r!==t&&(i+=(o-r.mean)*(t.mean_cumn-r.mean_cumn)/(t.mean-r.mean)),i/this.n}};M.prototype.bound_mean_cumn=function(o){this.centroids._comparator=Bd;var e=this.centroids.upperBound({mean_cumn:o});this.centroids._comparator=Tl;var r=e.prev(),t=r&&r.mean_cumn===o?r:e.next();return[r,t]};M.prototype.percentile=function(o){var e=Array.isArray(o)?o:[o],r=e.map(this._percentile,this);return Array.isArray(o)?r:r[0]};M.prototype._percentile=function(o){if(this.size()!==0){this._cumulate(!0);var e=this.n*o,r=this.bound_mean_cumn(e),t=r[0],i=r[1];return i===t||t===null||i===null?(t||i).mean:this.discrete?e<=t.cumn?t.mean:i.mean:t.mean+(e-t.mean_cumn)*(i.mean-t.mean)/(i.mean_cumn-t.mean_cumn)}};function Cd(o){var e=Math.floor(Math.random()*o.length);return o.splice(e,1)[0]}M.prototype.compress=function(){if(!this.compressing){var o=this.toArray();for(this.reset(),this.compressing=!0;o.length>0;)this.push_centroid(Cd(o));this._cumulate(!0),this.compressing=!1}};function ee(o){this.config=o||{},this.mode=this.config.mode||"auto",M.call(this,this.mode==="cont"?o.delta:!1),this.digest_ratio=this.config.ratio||.9,this.digest_thresh=this.config.thresh||1e3,this.n_unique=0}ee.prototype=Object.create(M.prototype);ee.prototype.constructor=ee;ee.prototype.push=function(o){M.prototype.push.call(this,o),this.check_continuous()};ee.prototype._new_centroid=function(o,e,r){this.n_unique+=1,M.prototype._new_centroid.call(this,o,e,r)};ee.prototype._addweight=function(o,e,r){o.n===1&&(this.n_unique-=1),M.prototype._addweight.call(this,o,e,r)};ee.prototype.check_continuous=function(){return this.mode!=="auto"||this.size()this.digest_ratio?(this.mode="cont",this.discrete=!1,this.delta=this.config.delta||.01,this.compress(),!0):!1};Pl.exports={TDigest:M,Digest:ee}});var Sa=Qr(Di());function xd(o){var e=this.constructor;return this.then(function(r){return e.resolve(o()).then(function(){return r})},function(r){return e.resolve(o()).then(function(){return e.reject(r)})})}var Ri=xd;function cd(o){var e=this;return new e(function(r,t){if(!(o&&typeof o.length<"u"))return t(new TypeError(typeof o+" "+o+" is not iterable(cannot read property Symbol(Symbol.iterator))"));var i=Array.prototype.slice.call(o);if(i.length===0)return r([]);var l=i.length;function a(d,m){if(m&&(typeof m=="object"||typeof m=="function")){var g=m.then;if(typeof g=="function"){g.call(m,function(S){a(d,S)},function(S){i[d]={status:"rejected",reason:S},--l===0&&r(i)});return}}i[d]={status:"fulfilled",value:m},--l===0&&r(i)}for(var n=0;n>e||1}var Qi=function(){function o(e){this.maxStringLength=1024,this.maxObjectLength=ki,this.maxArrayLength=ki,this.maxDepth=8,this.keys=[],this.keysBlocklist=[],this.seen=[];var r=e.level||0;this.keysBlocklist=e.keysBlocklist||[],this.maxStringLength=pr(this.maxStringLength,r),this.maxObjectLength=pr(this.maxObjectLength,r),this.maxArrayLength=pr(this.maxArrayLength,r),this.maxDepth=pr(this.maxDepth,r)}return o.prototype.truncate=function(e,r,t){if(r===void 0&&(r=""),t===void 0&&(t=0),e==null)return e;switch(typeof e){case"boolean":case"number":case"function":return e;case"string":return this.truncateString(e);case"object":break;default:return this.truncateString(String(e))}if(e instanceof String)return this.truncateString(e.toString());if(e instanceof Boolean||e instanceof Number||e instanceof Date||e instanceof RegExp)return e;if(e instanceof Error)return this.truncateString(e.toString());if(this.seen.indexOf(e)>=0)return"[Circular "+this.getPath(e)+"]";var i=$d(e);if(t++,t>this.maxDepth)return"[Truncated "+i+"]";switch(this.keys.push(r),this.seen.push(e),i){case"Array":return this.truncateArray(e,t);case"Object":return this.truncateObject(e,t);default:var l=this.maxDepth;this.maxDepth=0;var a=this.truncateObject(e,t);return a.__type=i,this.maxDepth=l,a}},o.prototype.getPath=function(e){for(var r=this.seen.indexOf(e),t=[this.keys[r]],i=r;i>=0;i--){var l=this.seen[i];l&&Ki(l,t[0])===e&&(e=l,t.unshift(this.keys[i]))}return"~"+t.join(".")},o.prototype.truncateString=function(e){return e.length>this.maxStringLength?e.slice(0,this.maxStringLength)+"...":e},o.prototype.truncateArray=function(e,r){r===void 0&&(r=0);for(var t=0,i=[],l=0;l=this.maxArrayLength)break}return i},o.prototype.truncateObject=function(e,r){r===void 0&&(r=0);var t=0,i={};for(var l in e)if(Object.prototype.hasOwnProperty.call(e,l)){if(Md(l,this.keysBlocklist)){i[l]=vd;continue}var a=Ki(e,l);if(!(a===void 0||typeof a=="function")&&(i[l]=this.truncate(a,l,r),t++,t>=this.maxObjectLength))break}return i},o}();function Ad(o,e){e===void 0&&(e={});var r=new Qi(e);return r.truncate(o)}function Ki(o,e){try{return o[e]}catch{return}}function $d(o){var e=Object.prototype.toString.apply(o);return e.slice(8,-1)}function Md(o,e){for(var r=0,t=e;r0?t._level--:(t.end(r),delete this._spans[t.name])},o.prototype._incGroup=function(e,r){this._groups[e]=(this._groups[e]||0)+r},o.prototype._duration=function(){return this.endTime||(this.endTime=new Date),this.endTime.getTime()-this.startTime.getTime()},o}();var Zi=function(){function o(){}return o.prototype.isRecording=function(){return!1},o.prototype.startSpan=function(e,r){},o.prototype.endSpan=function(e,r){},o.prototype._incGroup=function(e,r){},o}();var Se=function(){return Se=Object.assign||function(o){for(var e,r=1,t=arguments.length;r0&&(e.history=this._history.slice()),e},o.prototype.pushHistory=function(e){if(this._isDupState(e)){this._lastRecord.num?this._lastRecord.num++:this._lastRecord.num=2;return}e.date||(e.date=new Date),this._history.push(e),this._lastRecord=e,this._history.length>this._historyMaxLen&&(this._history=this._history.slice(-this._historyMaxLen))},o.prototype._isDupState=function(e){if(!this._lastRecord)return!1;for(var r in e)if(!(!e.hasOwnProperty(r)||r==="date")&&e[r]!==this._lastRecord[r])return!1;return!0},o.prototype.routeMetric=function(){return this._routeMetric||this._noopMetric},o.prototype.setRouteMetric=function(e){this._routeMetric=e},o.prototype.queueMetric=function(){return this._queueMetric||this._noopMetric},o.prototype.setQueueMetric=function(e){this._queueMetric=e},o}();var el=Qr(qi()),Pd=typeof console=="object"&&console.warn;function ji(o){try{return el.default.parse(o)}catch(e){Pd&&o.stack&&console.warn("ErrorStackParser:",e.toString(),o.stack)}return o.fileName?[o]:[]}function rl(o){var e=[];if(o.noStack)e.push({function:o.functionName||"",file:o.fileName||"",line:o.lineNumber||0,column:o.columnNumber||0});else{var r=ji(o);if(r.length===0)try{throw new Error("fake")}catch(d){r=ji(d),r.shift(),r.shift()}for(var t=0,i=r;t0){var r=e.backtrace[0];if(r.file==="")return null}return o}var fd=new RegExp(["^","Uncaught\\s","(.+?)",":\\s","(.+)","$"].join(""));function ll(o){var e=o.errors[0];if(e.type!==""&&e.type!=="Error")return o;var r=e.message.match(fd);return r!==null&&(e.type=r[1],e.message=r[2]),o}var ml=Qr(dl());var Z={unauthorized:new Error("airbrake: unauthorized: project id or key are wrong"),ipRateLimited:new Error("airbrake: IP is rate limited")};var sl=0;function gl(o){var e=Date.now()/1e3;if(e0&&(sl=Date.now()/1e3+l),Z.ipRateLimited}if(t.status===204)return{json:null};if(t.status===404)throw new Error("404 Not Found");return t.status>=200&&t.status<300?t.json().then(function(a){return{json:a}}):t.status>=400&&t.status<500?t.json().then(function(a){var n=new Error(a.message);throw n}):t.text().then(function(a){var n=new Error("airbrake: fetch: unexpected response: code="+t.status+" body='"+a+"'");throw n})})}function cl(o){return function(e){return Ld(e,o)}}var xl=0;function Ld(o,e){var r=Date.now()/1e3;return r0&&(xl=Date.now()/1e3+g);return}if(a.statusCode===204){t({json:null});return}if(a.statusCode>=200&&a.statusCode<300){var S=void 0;try{S=JSON.parse(n)}catch(p){i(p);return}t(S);return}if(a.statusCode>=400&&a.statusCode<500){var S=void 0;try{S=JSON.parse(n)}catch(h){i(h);return}l=new Error(S.message),i(l);return}n=n.trim(),l=new Error("airbrake: node: unexpected response: code="+a.statusCode+" body='"+n+"'"),i(l)})})}function Y(o){return o.request?cl(o.request):gl}var Nd=function(){var o=function(e,r){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var l in i)Object.prototype.hasOwnProperty.call(i,l)&&(t[l]=i[l])},o(e,r)};return function(e,r){o(e,r);function t(){this.constructor=e}e.prototype=r===null?Object.create(r):(t.prototype=r.prototype,new t)}}(),bl,re=!1;try{bl=_l(),re=!0}catch{}var Ae=function(){function o(){this.count=0,this.sum=0,this.sumsq=0,this._td=new bl.Digest}return o.prototype.add=function(e){e===0&&(e=1e-5),this.count+=1,this.sum+=e,this.sumsq+=e*e,this._td&&this._td.push(e)},o.prototype.toJSON=function(){return{count:this.count,sum:this.sum,sumsq:this.sumsq,tdigestCentroids:fl(this._td)}},o}();var Tr=function(o){Nd(e,o);function e(){var r=o!==null&&o.apply(this,arguments)||this;return r.groups={},r}return e.prototype.addGroups=function(r,t){this.add(r);for(var i in t)t.hasOwnProperty(i)&&this.addGroup(i,t[i])},e.prototype.addGroup=function(r,t){var i=this.groups[r];i||(i=new Ae,this.groups[r]=i),i.add(t)},e.prototype.toJSON=function(){return{count:this.count,sum:this.sum,sumsq:this.sumsq,tdigestCentroids:fl(this._td),groups:this.groups}},e}(Ae);function fl(o){var e=[],r=[];return o.centroids.each(function(t){e.push(t.mean),r.push(t.n)}),{mean:e,count:r}}var Pr=function(){return Pr=Object.assign||function(o){for(var e,r=1,t=arguments.length;r=300&&e.statusCode<400||e.statusCode===404||Object.keys(e._groups).length===0)){var t=e._duration();t===0&&(t=1e-5);var i=60*1e3,l=new Date(Math.floor(e.startTime.getTime()/i)*i),a={method:e.method,route:e.route,responseType:this._responseType(e),time:l},n=JSON.stringify(a),d=this._m[n];d||(d=new Tr,this._m[n]=d),d.addGroups(t,e._groups),!this._timer&&(this._timer=setTimeout(function(){r._flush()},Bl))}},o.prototype._flush=function(){var e=[];for(var r in this._m)if(this._m.hasOwnProperty(r)){var t=JSON.parse(r),i=$e($e({},t),this._m[r].toJSON());e.push(i)}this._m={},this._timer=null;var l=JSON.stringify({environment:this._opt.environment,routes:e}),a={method:"POST",url:this._url,body:l};this._requester(a).then(function(n){}).catch(function(n){console.error&&console.error("can not report routes breakdowns",n)})},o.prototype._responseType=function(e){return e.statusCode>=500?"5xx":e.statusCode>=400?"4xx":e.contentType?e.contentType.split(";")[0].split("/")[-1]:""},o}();var wl="airbrake-js/browser",Il="1.4.2",Fl="https://github.com/airbrake/airbrake-js/tree/master/packages/browser";var br=function(){return br=Object.assign||function(o){for(var e,r=1,t=arguments.length;r"}o.scope().pushHistory(t)}}}function Ud(o){if(!o)return"";var e=[];if(o.tagName&&e.push(o.tagName.toLowerCase()),o.id&&(e.push("#"),e.push(o.id)),o.classList&&Array.from)e.push("."),e.push(Array.from(o.classList).join("."));else if(o.className){var r=kd(o.className);r!==""&&(e.push("."),e.push(r))}if(o.getAttribute)for(var t=0,i=Vd;te))break;t=t.parentNode}return r.length===0?String(o):r.reverse().join(" > ")}function Vl(o,e){try{return o[e]}catch{return null}}function Hl(o){var e=window.fetch;window.fetch=function(r,t){var i={type:"xhr",date:new Date};return i.method=t&&t.method?t.method:"GET",typeof r=="string"?i.url=r:(i.method=r.method,i.url=r.url),o._ignoreNextXHR++,setTimeout(function(){return o._ignoreNextXHR--}),e.apply(this,arguments).then(function(l){return i.statusCode=l.status,i.duration=new Date().getTime()-i.date.getTime(),o.scope().pushHistory(i),l}).catch(function(l){throw i.error=l,i.duration=new Date().getTime()-i.date.getTime(),o.scope().pushHistory(i),l})}}var Bo="";function Ul(){return document.location&&document.location.pathname}function Kl(o){Bo=Ul();var e=window.onpopstate;window.onpopstate=function(i){var l=Ul();if(l&&kl(o,l),e)return e.apply(this,arguments)};var r=history.pushState;history.pushState=function(i,l,a){a&&kl(o,a.toString()),r.apply(this,arguments)}}function kl(o,e){var r=e.indexOf("://");r>=0?(e=e.slice(r+3),r=e.indexOf("/"),e=r>=0?e.slice(r):"/"):e.charAt(0)!=="/"&&(e="/"+e),o.scope().pushHistory({type:"location",from:Bo,to:e}),Bo=e}function Wl(o){function e(i){var l=i.__state;l.statusCode=i.status,l.duration=new Date().getTime()-l.date.getTime(),o.scope().pushHistory(l)}var r=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(l,a,n,d,m){o._ignoreNextXHR===0&&(this.__state={type:"xhr",method:l,url:a}),r.apply(this,arguments)};var t=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.send=function(l){var a=this.onreadystatechange;return this.onreadystatechange=function(n){if(this.readyState===4&&this.__state&&e(this),a)return a.apply(this,arguments)},this.__state&&(this.__state.date=new Date),t.apply(this,arguments)}}var Wd=function(){var o=function(e,r){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var l in i)Object.prototype.hasOwnProperty.call(i,l)&&(t[l]=i[l])},o(e,r)};return function(e,r){o(e,r);function t(){this.constructor=e}e.prototype=r===null?Object.create(r):(t.prototype=r.prototype,new t)}}(),fr=function(){return fr=Object.assign||function(o){for(var e,r=1,t=arguments.length;r"u"||(t.addFilter(Dl),window.addEventListener&&(t.onOnline=t.onOnline.bind(t),window.addEventListener("online",t.onOnline),t.onOffline=t.onOffline.bind(t),window.addEventListener("offline",t.onOffline),t.onUnhandledrejection=t.onUnhandledrejection.bind(t),window.addEventListener("unhandledrejection",t.onUnhandledrejection),t._onClose.push(function(){window.removeEventListener("online",t.onOnline),window.removeEventListener("offline",t.onOffline),window.removeEventListener("unhandledrejection",t.onUnhandledrejection)})),t._opt.ignoreWindowError&&(r.instrumentation.onerror=!1),t._instrument(r.instrumentation)),t}return e.prototype._instrument=function(r){if(r===void 0&&(r={}),r.console===void 0&&(r.console=!Qd(this._opt.environment)),Ye(r.onerror)){var t=this,i=window.onerror;window.onerror=function(){i&&i.apply(this,arguments),t.onerror.apply(t,arguments)}}Xl(this),Ye(r.fetch)&&typeof fetch=="function"&&Hl(this),Ye(r.history)&&typeof history=="object"&&Kl(this),Ye(r.console)&&typeof console=="object"&&Rl(this),Ye(r.xhr)&&typeof XMLHttpRequest<"u"&&Wl(this)},e.prototype.notify=function(r){var t=this;return this.offline?new W(function(i,l){for(t.todo.push({err:r,resolve:i,reject:l});t.todo.length>100;){var a=t.todo.shift();if(a===void 0)break;a.resolve({error:new Error("airbrake: offline queue is too large")})}}):o.prototype.notify.call(this,r)},e.prototype.onOnline=function(){this.offline=!1;for(var r=function(n){t.notify(n.err).then(function(d){n.resolve(d)})},t=this,i=0,l=this.todo;i0)){if(a){this.notify({error:a,context:{windowError:!0}});return}!t||!i||this.notify({error:{message:r,fileName:t,lineNumber:i,columnNumber:l,noStack:!0},context:{windowError:!0}})}},e.prototype._ignoreNextWindowError=function(){var r=this;this._ignoreWindowError++,setTimeout(function(){return r._ignoreWindowError--})},e}(yo);function Qd(o){return o&&o.startsWith&&o.startsWith("dev")}function Ye(o){return o===void 0||o===!0}(function(){if(window.Reflect===void 0||window.customElements===void 0||window.customElements.polyfillWrapFlushCallback)return;let o=HTMLElement,e={HTMLElement:function(){return Reflect.construct(o,[],this.constructor)}};window.HTMLElement=e.HTMLElement,HTMLElement.prototype=o.prototype,HTMLElement.prototype.constructor=HTMLElement,Object.setPrototypeOf(HTMLElement,o)})();(function(o){if(typeof o.requestSubmit=="function")return;o.requestSubmit=function(t){t?(e(t,this),t.click()):(t=document.createElement("input"),t.type="submit",t.hidden=!0,this.appendChild(t),t.click(),this.removeChild(t))};function e(t,i){t instanceof HTMLElement||r(TypeError,"parameter 1 is not of type 'HTMLElement'"),t.type=="submit"||r(TypeError,"The specified element is not a submit button"),t.form==i||r(DOMException,"The specified element is not owned by this form element","NotFoundError")}function r(t,i,l){throw new t("Failed to execute 'requestSubmit' on 'HTMLFormElement': "+i+".",l)}})(HTMLFormElement.prototype);var Jl=new WeakMap;function Zd(o){let e=o instanceof Element?o:o instanceof Node?o.parentElement:null,r=e?e.closest("input, button"):null;return r?.type=="submit"?r:null}function Yd(o){let e=Zd(o.target);e&&e.form&&Jl.set(e.form,e)}(function(){if("submitter"in Event.prototype)return;let o;if("SubmitEvent"in window&&/Apple Computer/.test(navigator.vendor))o=window.SubmitEvent.prototype;else{if("SubmitEvent"in window)return;o=window.Event.prototype}addEventListener("click",Yd,!0),Object.defineProperty(o,"submitter",{get(){if(this.type=="submit"&&this.target instanceof HTMLFormElement)return Jl.get(this.target)}})})();var ie;(function(o){o.eager="eager",o.lazy="lazy"})(ie||(ie={}));var K=class extends HTMLElement{constructor(){super(),this.loaded=Promise.resolve(),this.delegate=new K.delegateConstructor(this)}static get observedAttributes(){return["disabled","complete","loading","src"]}connectedCallback(){this.delegate.connect()}disconnectedCallback(){this.delegate.disconnect()}reload(){return this.delegate.sourceURLReloaded()}attributeChangedCallback(e){e=="loading"?this.delegate.loadingStyleChanged():e=="complete"?this.delegate.completeChanged():e=="src"?this.delegate.sourceURLChanged():this.delegate.disabledChanged()}get src(){return this.getAttribute("src")}set src(e){e?this.setAttribute("src",e):this.removeAttribute("src")}get loading(){return zd(this.getAttribute("loading")||"")}set loading(e){e?this.setAttribute("loading",e):this.removeAttribute("loading")}get disabled(){return this.hasAttribute("disabled")}set disabled(e){e?this.setAttribute("disabled",""):this.removeAttribute("disabled")}get autoscroll(){return this.hasAttribute("autoscroll")}set autoscroll(e){e?this.setAttribute("autoscroll",""):this.removeAttribute("autoscroll")}get complete(){return!this.delegate.isLoading}get isActive(){return this.ownerDocument===document&&!this.isPreview}get isPreview(){var e,r;return(r=(e=this.ownerDocument)===null||e===void 0?void 0:e.documentElement)===null||r===void 0?void 0:r.hasAttribute("data-turbo-preview")}};function zd(o){switch(o.toLowerCase()){case"lazy":return ie.lazy;default:return ie.eager}}function B(o){return new URL(o.toString(),document.baseURI)}function de(o){let e;if(o.hash)return o.hash.slice(1);if(e=o.href.match(/#(.*)$/))return e[1]}function ot(o,e){let r=e?.getAttribute("formaction")||o.getAttribute("action")||o.action;return B(r)}function Jd(o){return(os(o).match(/\.[^.]*$/)||[])[0]||""}function qd(o){return!!Jd(o).match(/^(?:|\.(?:htm|html|xhtml|php))$/)}function jd(o,e){let r=ts(e);return o.href===B(r).href||o.href.startsWith(r)}function Te(o,e){return jd(o,e)&&qd(o)}function No(o){let e=de(o);return e!=null?o.href.slice(0,-(e.length+1)):o.href}function Lr(o){return No(o)}function es(o,e){return B(o).href==B(e).href}function rs(o){return o.pathname.split("/").slice(1)}function os(o){return rs(o).slice(-1)[0]}function ts(o){return is(o.origin+o.pathname)}function is(o){return o.endsWith("/")?o:o+"/"}var ze=class{constructor(e){this.response=e}get succeeded(){return this.response.ok}get failed(){return!this.succeeded}get clientError(){return this.statusCode>=400&&this.statusCode<=499}get serverError(){return this.statusCode>=500&&this.statusCode<=599}get redirected(){return this.response.redirected}get location(){return B(this.response.url)}get isHTML(){return this.contentType&&this.contentType.match(/^(?:text\/([^\s;,]+\b)?html|application\/xhtml\+xml)\b/)}get statusCode(){return this.response.status}get contentType(){return this.header("Content-Type")}get responseText(){return this.response.clone().text()}get responseHTML(){return this.isHTML?this.response.clone().text():Promise.resolve(void 0)}header(e){return this.response.headers.get(e)}};function Ir(o){return o=="advance"||o=="replace"||o=="restore"}function Je(o){if(o.getAttribute("data-turbo-eval")=="false")return o;{let e=document.createElement("script"),r=Er("csp-nonce");return r&&(e.nonce=r),e.textContent=o.textContent,e.async=!1,ls(e,o),e}}function ls(o,e){for(let{name:r,value:t}of e.attributes)o.setAttribute(r,t)}function as(o){let e=document.createElement("template");return e.innerHTML=o,e.content}function E(o,{target:e,cancelable:r,detail:t}={}){let i=new CustomEvent(o,{cancelable:r,bubbles:!0,detail:t});return e&&e.isConnected?e.dispatchEvent(i):document.documentElement.dispatchEvent(i),i}function Gr(){return new Promise(o=>requestAnimationFrame(()=>o()))}function ns(){return new Promise(o=>setTimeout(()=>o(),0))}function ds(){return Promise.resolve()}function ql(o=""){return new DOMParser().parseFromString(o,"text/html")}function jl(o,...e){let r=ss(o,e).replace(/^\n/,"").split(` `),t=r[0].match(/^\s+/),i=t?t[0].length:0;return r.map(l=>l.slice(i)).join(` `)}function ss(o,e){return o.reduce((r,t,i)=>{let l=e[i]==null?"":e[i];return r+t+l},"")}function Pe(){return Array.from({length:36}).map((o,e)=>e==8||e==13||e==18||e==23?"-":e==14?"4":e==19?(Math.floor(Math.random()*4)+8).toString(16):Math.floor(Math.random()*15).toString(16)).join("")}function qe(o,...e){for(let r of e.map(t=>t?.getAttribute(o)))if(typeof r=="string")return r;return null}function ms(o,...e){return e.some(r=>r&&r.hasAttribute(o))}function Oo(...o){for(let e of o)e.localName=="turbo-frame"&&e.setAttribute("busy",""),e.setAttribute("aria-busy","true")}function wo(...o){for(let e of o)e.localName=="turbo-frame"&&e.removeAttribute("busy"),e.removeAttribute("aria-busy")}function gs(o,e=2e3){return new Promise(r=>{let t=()=>{o.removeEventListener("error",t),o.removeEventListener("load",t),r()};o.addEventListener("load",t,{once:!0}),o.addEventListener("error",t,{once:!0}),setTimeout(r,e)})}function ea(o){switch(o){case"replace":return history.replaceState;case"advance":case"restore":return history.pushState}}function xs(...o){let e=qe("data-turbo-action",...o);return Ir(e)?e:null}function ra(o){return document.querySelector(`meta[name="${o}"]`)}function Er(o){let e=ra(o);return e&&e.content}function cs(o,e){let r=ra(o);return r||(r=document.createElement("meta"),r.setAttribute("name",o),document.head.appendChild(r)),r.setAttribute("content",e),r}var O;(function(o){o[o.get=0]="get",o[o.post=1]="post",o[o.put=2]="put",o[o.patch=3]="patch",o[o.delete=4]="delete"})(O||(O={}));function us(o){switch(o.toLowerCase()){case"get":return O.get;case"post":return O.post;case"put":return O.put;case"patch":return O.patch;case"delete":return O.delete}}var je=class{constructor(e,r,t,i=new URLSearchParams,l=null){this.abortController=new AbortController,this.resolveRequestPromise=a=>{},this.delegate=e,this.method=r,this.headers=this.defaultHeaders,this.body=i,this.url=t,this.target=l}get location(){return this.url}get params(){return this.url.searchParams}get entries(){return this.body?Array.from(this.body.entries()):[]}cancel(){this.abortController.abort()}async perform(){var e,r;let{fetchOptions:t}=this;(r=(e=this.delegate).prepareHeadersForRequest)===null||r===void 0||r.call(e,this.headers,this),await this.allowRequestToBeIntercepted(t);try{this.delegate.requestStarted(this);let i=await fetch(this.url.href,t);return await this.receive(i)}catch(i){if(i.name!=="AbortError")throw this.willDelegateErrorHandling(i)&&this.delegate.requestErrored(this,i),i}finally{this.delegate.requestFinished(this)}}async receive(e){let r=new ze(e);return E("turbo:before-fetch-response",{cancelable:!0,detail:{fetchResponse:r},target:this.target}).defaultPrevented?this.delegate.requestPreventedHandlingResponse(this,r):r.succeeded?this.delegate.requestSucceededWithResponse(this,r):this.delegate.requestFailedWithResponse(this,r),r}get fetchOptions(){var e;return{method:O[this.method].toUpperCase(),credentials:"same-origin",headers:this.headers,redirect:"follow",body:this.isIdempotent?null:this.body,signal:this.abortSignal,referrer:(e=this.delegate.referrer)===null||e===void 0?void 0:e.href}}get defaultHeaders(){return{Accept:"text/html, application/xhtml+xml"}}get isIdempotent(){return this.method==O.get}get abortSignal(){return this.abortController.signal}acceptResponseType(e){this.headers.Accept=[e,this.headers.Accept].join(", ")}async allowRequestToBeIntercepted(e){let r=new Promise(i=>this.resolveRequestPromise=i);E("turbo:before-fetch-request",{cancelable:!0,detail:{fetchOptions:e,url:this.url,resume:this.resolveRequestPromise},target:this.target}).defaultPrevented&&await r}willDelegateErrorHandling(e){return!E("turbo:fetch-request-error",{target:this.target,cancelable:!0,detail:{request:this,error:e}}).defaultPrevented}},Io=class{constructor(e,r){this.started=!1,this.intersect=t=>{let i=t.slice(-1)[0];i?.isIntersecting&&this.delegate.elementAppearedInViewport(this.element)},this.delegate=e,this.element=r,this.intersectionObserver=new IntersectionObserver(this.intersect)}start(){this.started||(this.started=!0,this.intersectionObserver.observe(this.element))}stop(){this.started&&(this.started=!1,this.intersectionObserver.unobserve(this.element))}},J=class{constructor(e){this.fragment=Ss(e)}static wrap(e){return typeof e=="string"?new this(as(e)):e}};J.contentType="text/vnd.turbo-stream.html";function Ss(o){for(let e of o.querySelectorAll("turbo-stream")){let r=document.importNode(e,!0);for(let t of r.templateElement.content.querySelectorAll("script"))t.replaceWith(Je(t));e.replaceWith(r)}return o}var oe;(function(o){o[o.initialized=0]="initialized",o[o.requesting=1]="requesting",o[o.waiting=2]="waiting",o[o.receiving=3]="receiving",o[o.stopping=4]="stopping",o[o.stopped=5]="stopped"})(oe||(oe={}));var te;(function(o){o.urlEncoded="application/x-www-form-urlencoded",o.multipart="multipart/form-data",o.plain="text/plain"})(te||(te={}));function hs(o){switch(o.toLowerCase()){case te.multipart:return te.multipart;case te.plain:return te.plain;default:return te.urlEncoded}}var se=class{constructor(e,r,t,i=!1){this.state=oe.initialized,this.delegate=e,this.formElement=r,this.submitter=t,this.formData=ps(r,t),this.location=B(this.action),this.method==O.get&&$s(this.location,[...this.body.entries()]),this.fetchRequest=new je(this,this.method,this.location,this.body,this.formElement),this.mustRedirect=i}static confirmMethod(e,r,t){return Promise.resolve(confirm(e))}get method(){var e;let r=((e=this.submitter)===null||e===void 0?void 0:e.getAttribute("formmethod"))||this.formElement.getAttribute("method")||"";return us(r.toLowerCase())||O.get}get action(){var e;let r=typeof this.formElement.action=="string"?this.formElement.action:null;return!((e=this.submitter)===null||e===void 0)&&e.hasAttribute("formaction")?this.submitter.getAttribute("formaction")||"":this.formElement.getAttribute("action")||r||""}get body(){return this.enctype==te.urlEncoded||this.method==O.get?new URLSearchParams(this.stringFormData):this.formData}get enctype(){var e;return hs(((e=this.submitter)===null||e===void 0?void 0:e.getAttribute("formenctype"))||this.formElement.enctype)}get isIdempotent(){return this.fetchRequest.isIdempotent}get stringFormData(){return[...this.formData].reduce((e,[r,t])=>e.concat(typeof t=="string"?[[r,t]]:[]),[])}async start(){let{initialized:e,requesting:r}=oe,t=qe("data-turbo-confirm",this.submitter,this.formElement);if(!(typeof t=="string"&&!await se.confirmMethod(t,this.formElement,this.submitter))&&this.state==e)return this.state=r,this.fetchRequest.perform()}stop(){let{stopping:e,stopped:r}=oe;if(this.state!=e&&this.state!=r)return this.state=e,this.fetchRequest.cancel(),!0}prepareHeadersForRequest(e,r){if(!r.isIdempotent){let t=vs(Er("csrf-param"))||Er("csrf-token");t&&(e["X-CSRF-Token"]=t)}this.requestAcceptsTurboStreamResponse(r)&&r.acceptResponseType(J.contentType)}requestStarted(e){var r;this.state=oe.waiting,(r=this.submitter)===null||r===void 0||r.setAttribute("disabled",""),E("turbo:submit-start",{target:this.formElement,detail:{formSubmission:this}}),this.delegate.formSubmissionStarted(this)}requestPreventedHandlingResponse(e,r){this.result={success:r.succeeded,fetchResponse:r}}requestSucceededWithResponse(e,r){if(r.clientError||r.serverError)this.delegate.formSubmissionFailedWithResponse(this,r);else if(this.requestMustRedirect(e)&&As(r)){let t=new Error("Form responses must redirect to another location");this.delegate.formSubmissionErrored(this,t)}else this.state=oe.receiving,this.result={success:!0,fetchResponse:r},this.delegate.formSubmissionSucceededWithResponse(this,r)}requestFailedWithResponse(e,r){this.result={success:!1,fetchResponse:r},this.delegate.formSubmissionFailedWithResponse(this,r)}requestErrored(e,r){this.result={success:!1,error:r},this.delegate.formSubmissionErrored(this,r)}requestFinished(e){var r;this.state=oe.stopped,(r=this.submitter)===null||r===void 0||r.removeAttribute("disabled"),E("turbo:submit-end",{target:this.formElement,detail:Object.assign({formSubmission:this},this.result)}),this.delegate.formSubmissionFinished(this)}requestMustRedirect(e){return!e.isIdempotent&&this.mustRedirect}requestAcceptsTurboStreamResponse(e){return!e.isIdempotent||ms("data-turbo-stream",this.submitter,this.formElement)}};function ps(o,e){let r=new FormData(o),t=e?.getAttribute("name"),i=e?.getAttribute("value");return t&&r.append(t,i||""),r}function vs(o){if(o!=null){let r=(document.cookie?document.cookie.split("; "):[]).find(t=>t.startsWith(o));if(r){let t=r.split("=").slice(1).join("=");return t?decodeURIComponent(t):void 0}}}function As(o){return o.statusCode==200&&!o.redirected}function $s(o,e){let r=new URLSearchParams;for(let[t,i]of e)i instanceof File||r.append(t,i);return o.search=r.toString(),o}var _e=class{constructor(e){this.element=e}get activeElement(){return this.element.ownerDocument.activeElement}get children(){return[...this.element.children]}hasAnchor(e){return this.getElementForAnchor(e)!=null}getElementForAnchor(e){return e?this.element.querySelector(`[id='${e}'], a[name='${e}']`):null}get isConnected(){return this.element.isConnected}get firstAutofocusableElement(){let e="[inert], :disabled, [hidden], details:not([open]), dialog:not([open])";for(let r of this.element.querySelectorAll("[autofocus]"))if(r.closest(e)==null)return r;return null}get permanentElements(){return ta(this.element)}getPermanentElementById(e){return oa(this.element,e)}getPermanentElementMapForSnapshot(e){let r={};for(let t of this.permanentElements){let{id:i}=t,l=e.getPermanentElementById(i);l&&(r[i]=[t,l])}return r}};function oa(o,e){return o.querySelector(`#${e}[data-turbo-permanent]`)}function ta(o){return o.querySelectorAll("[id][data-turbo-permanent]")}var er=class{constructor(e,r){this.started=!1,this.submitCaptured=()=>{this.eventTarget.removeEventListener("submit",this.submitBubbled,!1),this.eventTarget.addEventListener("submit",this.submitBubbled,!1)},this.submitBubbled=t=>{if(!t.defaultPrevented){let i=t.target instanceof HTMLFormElement?t.target:void 0,l=t.submitter||void 0;i&&Ms(i,l)&&Ts(i,l)&&this.delegate.willSubmitForm(i,l)&&(t.preventDefault(),t.stopImmediatePropagation(),this.delegate.formSubmitted(i,l))}},this.delegate=e,this.eventTarget=r}start(){this.started||(this.eventTarget.addEventListener("submit",this.submitCaptured,!0),this.started=!0)}stop(){this.started&&(this.eventTarget.removeEventListener("submit",this.submitCaptured,!0),this.started=!1)}};function Ms(o,e){return(e?.getAttribute("formmethod")||o.getAttribute("method"))!="dialog"}function Ts(o,e){let r=e?.getAttribute("formtarget")||o.target;for(let t of document.getElementsByName(r))if(t instanceof HTMLIFrameElement)return!1;return!0}var yr=class{constructor(e,r){this.resolveRenderPromise=t=>{},this.resolveInterceptionPromise=t=>{},this.delegate=e,this.element=r}scrollToAnchor(e){let r=this.snapshot.getElementForAnchor(e);r?(this.scrollToElement(r),this.focusElement(r)):this.scrollToPosition({x:0,y:0})}scrollToAnchorFromLocation(e){this.scrollToAnchor(de(e))}scrollToElement(e){e.scrollIntoView()}focusElement(e){e instanceof HTMLElement&&(e.hasAttribute("tabindex")?e.focus():(e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")))}scrollToPosition({x:e,y:r}){this.scrollRoot.scrollTo(e,r)}scrollToTop(){this.scrollToPosition({x:0,y:0})}get scrollRoot(){return window}async render(e){let{isPreview:r,shouldRender:t,newSnapshot:i}=e;if(t)try{this.renderPromise=new Promise(d=>this.resolveRenderPromise=d),this.renderer=e,await this.prepareToRenderSnapshot(e);let l=new Promise(d=>this.resolveInterceptionPromise=d),a={resume:this.resolveInterceptionPromise,render:this.renderer.renderElement};this.delegate.allowsImmediateRender(i,a)||await l,await this.renderSnapshot(e),this.delegate.viewRenderedSnapshot(i,r),this.delegate.preloadOnLoadLinksForView(this.element),this.finishRenderingSnapshot(e)}finally{delete this.renderer,this.resolveRenderPromise(void 0),delete this.renderPromise}else this.invalidate(e.reloadReason)}invalidate(e){this.delegate.viewInvalidated(e)}async prepareToRenderSnapshot(e){this.markAsPreview(e.isPreview),await e.prepareToRender()}markAsPreview(e){e?this.element.setAttribute("data-turbo-preview",""):this.element.removeAttribute("data-turbo-preview")}async renderSnapshot(e){await e.render()}finishRenderingSnapshot(e){e.finishRendering()}},Fo=class extends yr{invalidate(){this.element.innerHTML=""}get snapshot(){return new _e(this.element)}},Br=class{constructor(e,r){this.clickBubbled=t=>{this.respondsToEventTarget(t.target)?this.clickEvent=t:delete this.clickEvent},this.linkClicked=t=>{this.clickEvent&&this.respondsToEventTarget(t.target)&&t.target instanceof Element&&this.delegate.shouldInterceptLinkClick(t.target,t.detail.url,t.detail.originalEvent)&&(this.clickEvent.preventDefault(),t.preventDefault(),this.delegate.linkClickIntercepted(t.target,t.detail.url,t.detail.originalEvent)),delete this.clickEvent},this.willVisit=t=>{delete this.clickEvent},this.delegate=e,this.element=r}start(){this.element.addEventListener("click",this.clickBubbled),document.addEventListener("turbo:click",this.linkClicked),document.addEventListener("turbo:before-visit",this.willVisit)}stop(){this.element.removeEventListener("click",this.clickBubbled),document.removeEventListener("turbo:click",this.linkClicked),document.removeEventListener("turbo:before-visit",this.willVisit)}respondsToEventTarget(e){let r=e instanceof Element?e:e instanceof Node?e.parentElement:null;return r&&r.closest("turbo-frame, html")==this.element}},Cr=class{constructor(e,r){this.started=!1,this.clickCaptured=()=>{this.eventTarget.removeEventListener("click",this.clickBubbled,!1),this.eventTarget.addEventListener("click",this.clickBubbled,!1)},this.clickBubbled=t=>{if(t instanceof MouseEvent&&this.clickEventIsSignificant(t)){let i=t.composedPath&&t.composedPath()[0]||t.target,l=this.findLinkFromClickTarget(i);if(l&&Ps(l)){let a=this.getLocationForLink(l);this.delegate.willFollowLinkToLocation(l,a,t)&&(t.preventDefault(),this.delegate.followedLinkToLocation(l,a))}}},this.delegate=e,this.eventTarget=r}start(){this.started||(this.eventTarget.addEventListener("click",this.clickCaptured,!0),this.started=!0)}stop(){this.started&&(this.eventTarget.removeEventListener("click",this.clickCaptured,!0),this.started=!1)}clickEventIsSignificant(e){return!(e.target&&e.target.isContentEditable||e.defaultPrevented||e.which>1||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey)}findLinkFromClickTarget(e){if(e instanceof Element)return e.closest("a[href]:not([target^=_]):not([download])")}getLocationForLink(e){return B(e.getAttribute("href")||"")}};function Ps(o){for(let e of document.getElementsByName(o.target))if(e instanceof HTMLIFrameElement)return!1;return!0}var Nr=class{constructor(e,r){this.delegate=e,this.linkInterceptor=new Cr(this,r)}start(){this.linkInterceptor.start()}stop(){this.linkInterceptor.stop()}willFollowLinkToLocation(e,r,t){return this.delegate.willSubmitFormLinkToLocation(e,r,t)&&e.hasAttribute("data-turbo-method")}followedLinkToLocation(e,r){let t=r.href,i=document.createElement("form");i.setAttribute("data-turbo","true"),i.setAttribute("action",t),i.setAttribute("hidden","");let l=e.getAttribute("data-turbo-method");l&&i.setAttribute("method",l);let a=e.getAttribute("data-turbo-frame");a&&i.setAttribute("data-turbo-frame",a);let n=e.getAttribute("data-turbo-action");n&&i.setAttribute("data-turbo-action",n);let d=e.getAttribute("data-turbo-confirm");d&&i.setAttribute("data-turbo-confirm",d),e.hasAttribute("data-turbo-stream")&&i.setAttribute("data-turbo-stream",""),this.delegate.submittedFormLinkToLocation(e,r,i),document.body.appendChild(i),i.addEventListener("turbo:submit-end",()=>i.remove(),{once:!0}),requestAnimationFrame(()=>i.requestSubmit())}},Or=class{constructor(e,r){this.delegate=e,this.permanentElementMap=r}static preservingPermanentElements(e,r,t){let i=new this(e,r);i.enter(),t(),i.leave()}enter(){for(let e in this.permanentElementMap){let[r,t]=this.permanentElementMap[e];this.delegate.enteringBardo(r,t),this.replaceNewPermanentElementWithPlaceholder(t)}}leave(){for(let e in this.permanentElementMap){let[r]=this.permanentElementMap[e];this.replaceCurrentPermanentElementWithClone(r),this.replacePlaceholderWithPermanentElement(r),this.delegate.leavingBardo(r)}}replaceNewPermanentElementWithPlaceholder(e){let r=_s(e);e.replaceWith(r)}replaceCurrentPermanentElementWithClone(e){let r=e.cloneNode(!0);e.replaceWith(r)}replacePlaceholderWithPermanentElement(e){let r=this.getPlaceholderById(e.id);r?.replaceWith(e)}getPlaceholderById(e){return this.placeholders.find(r=>r.content==e)}get placeholders(){return[...document.querySelectorAll("meta[name=turbo-permanent-placeholder][content]")]}};function _s(o){let e=document.createElement("meta");return e.setAttribute("name","turbo-permanent-placeholder"),e.setAttribute("content",o.id),e}var rr=class{constructor(e,r,t,i,l=!0){this.activeElement=null,this.currentSnapshot=e,this.newSnapshot=r,this.isPreview=i,this.willRender=l,this.renderElement=t,this.promise=new Promise((a,n)=>this.resolvingFunctions={resolve:a,reject:n})}get shouldRender(){return!0}get reloadReason(){}prepareToRender(){}finishRendering(){this.resolvingFunctions&&(this.resolvingFunctions.resolve(),delete this.resolvingFunctions)}preservingPermanentElements(e){Or.preservingPermanentElements(this,this.permanentElementMap,e)}focusFirstAutofocusableElement(){let e=this.connectedSnapshot.firstAutofocusableElement;bs(e)&&e.focus()}enteringBardo(e){this.activeElement||e.contains(this.currentSnapshot.activeElement)&&(this.activeElement=this.currentSnapshot.activeElement)}leavingBardo(e){e.contains(this.activeElement)&&this.activeElement instanceof HTMLElement&&(this.activeElement.focus(),this.activeElement=null)}get connectedSnapshot(){return this.newSnapshot.isConnected?this.newSnapshot:this.currentSnapshot}get currentElement(){return this.currentSnapshot.element}get newElement(){return this.newSnapshot.element}get permanentElementMap(){return this.currentSnapshot.getPermanentElementMapForSnapshot(this.newSnapshot)}};function bs(o){return o&&typeof o.focus=="function"}var or=class extends rr{constructor(e,r,t,i,l,a=!0){super(r,t,i,l,a),this.delegate=e}static renderElement(e,r){var t;let i=document.createRange();i.selectNodeContents(e),i.deleteContents();let l=r,a=(t=l.ownerDocument)===null||t===void 0?void 0:t.createRange();a&&(a.selectNodeContents(l),e.appendChild(a.extractContents()))}get shouldRender(){return!0}async render(){await Gr(),this.preservingPermanentElements(()=>{this.loadFrameElement()}),this.scrollFrameIntoView(),await Gr(),this.focusFirstAutofocusableElement(),await Gr(),this.activateScriptElements()}loadFrameElement(){this.delegate.willRenderFrame(this.currentElement,this.newElement),this.renderElement(this.currentElement,this.newElement)}scrollFrameIntoView(){if(this.currentElement.autoscroll||this.newElement.autoscroll){let e=this.currentElement.firstElementChild,r=fs(this.currentElement.getAttribute("data-autoscroll-block"),"end"),t=Ls(this.currentElement.getAttribute("data-autoscroll-behavior"),"auto");if(e)return e.scrollIntoView({block:r,behavior:t}),!0}return!1}activateScriptElements(){for(let e of this.newScriptElements){let r=Je(e);e.replaceWith(r)}}get newScriptElements(){return this.currentElement.querySelectorAll("script")}};function fs(o,e){return o=="end"||o=="start"||o=="center"||o=="nearest"?o:e}function Ls(o,e){return o=="auto"||o=="smooth"?o:e}var k=class{constructor(){this.hiding=!1,this.value=0,this.visible=!1,this.trickle=()=>{this.setValue(this.value+Math.random()/100)},this.stylesheetElement=this.createStylesheetElement(),this.progressElement=this.createProgressElement(),this.installStylesheetElement(),this.setValue(0)}static get defaultCSS(){return jl` .turbo-progress-bar { position: fixed; display: block; top: 0; left: 0; height: 3px; background: #0076ff; z-index: 2147483647; transition: width ${k.animationDuration}ms ease-out, opacity ${k.animationDuration/2}ms ${k.animationDuration/2}ms ease-in; transform: translate3d(0, 0, 0); } `}show(){this.visible||(this.visible=!0,this.installProgressElement(),this.startTrickling())}hide(){this.visible&&!this.hiding&&(this.hiding=!0,this.fadeProgressElement(()=>{this.uninstallProgressElement(),this.stopTrickling(),this.visible=!1,this.hiding=!1}))}setValue(e){this.value=e,this.refresh()}installStylesheetElement(){document.head.insertBefore(this.stylesheetElement,document.head.firstChild)}installProgressElement(){this.progressElement.style.width="0",this.progressElement.style.opacity="1",document.documentElement.insertBefore(this.progressElement,document.body),this.refresh()}fadeProgressElement(e){this.progressElement.style.opacity="0",setTimeout(e,k.animationDuration*1.5)}uninstallProgressElement(){this.progressElement.parentNode&&document.documentElement.removeChild(this.progressElement)}startTrickling(){this.trickleInterval||(this.trickleInterval=window.setInterval(this.trickle,k.animationDuration))}stopTrickling(){window.clearInterval(this.trickleInterval),delete this.trickleInterval}refresh(){requestAnimationFrame(()=>{this.progressElement.style.width=`${10+this.value*90}%`})}createStylesheetElement(){let e=document.createElement("style");return e.type="text/css",e.textContent=k.defaultCSS,this.cspNonce&&(e.nonce=this.cspNonce),e}createProgressElement(){let e=document.createElement("div");return e.className="turbo-progress-bar",e}get cspNonce(){return Er("csp-nonce")}};k.animationDuration=300;var Do=class extends _e{constructor(){super(...arguments),this.detailsByOuterHTML=this.children.filter(e=>!Bs(e)).map(e=>Os(e)).reduce((e,r)=>{let{outerHTML:t}=r,i=t in e?e[t]:{type:Gs(r),tracked:Es(r),elements:[]};return Object.assign(Object.assign({},e),{[t]:Object.assign(Object.assign({},i),{elements:[...i.elements,r]})})},{})}get trackedElementSignature(){return Object.keys(this.detailsByOuterHTML).filter(e=>this.detailsByOuterHTML[e].tracked).join("")}getScriptElementsNotInSnapshot(e){return this.getElementsMatchingTypeNotInSnapshot("script",e)}getStylesheetElementsNotInSnapshot(e){return this.getElementsMatchingTypeNotInSnapshot("stylesheet",e)}getElementsMatchingTypeNotInSnapshot(e,r){return Object.keys(this.detailsByOuterHTML).filter(t=>!(t in r.detailsByOuterHTML)).map(t=>this.detailsByOuterHTML[t]).filter(({type:t})=>t==e).map(({elements:[t]})=>t)}get provisionalElements(){return Object.keys(this.detailsByOuterHTML).reduce((e,r)=>{let{type:t,tracked:i,elements:l}=this.detailsByOuterHTML[r];return t==null&&!i?[...e,...l]:l.length>1?[...e,...l.slice(1)]:e},[])}getMetaValue(e){let r=this.findMetaElementByName(e);return r?r.getAttribute("content"):null}findMetaElementByName(e){return Object.keys(this.detailsByOuterHTML).reduce((r,t)=>{let{elements:[i]}=this.detailsByOuterHTML[t];return Ns(i,e)?i:r},void 0)}};function Gs(o){if(ys(o))return"script";if(Cs(o))return"stylesheet"}function Es(o){return o.getAttribute("data-turbo-track")=="reload"}function ys(o){return o.localName=="script"}function Bs(o){return o.localName=="noscript"}function Cs(o){let e=o.localName;return e=="style"||e=="link"&&o.getAttribute("rel")=="stylesheet"}function Ns(o,e){return o.localName=="meta"&&o.getAttribute("name")==e}function Os(o){return o.hasAttribute("nonce")&&o.setAttribute("nonce",""),o}var X=class extends _e{constructor(e,r){super(e),this.headSnapshot=r}static fromHTMLString(e=""){return this.fromDocument(ql(e))}static fromElement(e){return this.fromDocument(e.ownerDocument)}static fromDocument({head:e,body:r}){return new this(r,new Do(e))}clone(){let e=this.element.cloneNode(!0),r=this.element.querySelectorAll("select"),t=e.querySelectorAll("select");for(let[i,l]of r.entries()){let a=t[i];for(let n of a.selectedOptions)n.selected=!1;for(let n of l.selectedOptions)a.options[n.index].selected=!0}for(let i of e.querySelectorAll('input[type="password"]'))i.value="";return new X(e,this.headSnapshot)}get headElement(){return this.headSnapshot.element}get rootLocation(){var e;let r=(e=this.getSetting("root"))!==null&&e!==void 0?e:"/";return B(r)}get cacheControlValue(){return this.getSetting("cache-control")}get isPreviewable(){return this.cacheControlValue!="no-preview"}get isCacheable(){return this.cacheControlValue!="no-cache"}get isVisitable(){return this.getSetting("visit-control")!="reload"}getSetting(e){return this.headSnapshot.getMetaValue(`turbo-${e}`)}},Me;(function(o){o.visitStart="visitStart",o.requestStart="requestStart",o.requestEnd="requestEnd",o.visitEnd="visitEnd"})(Me||(Me={}));var U;(function(o){o.initialized="initialized",o.started="started",o.canceled="canceled",o.failed="failed",o.completed="completed"})(U||(U={}));var ws={action:"advance",historyChanged:!1,visitCachedSnapshot:()=>{},willRender:!0,updateHistory:!0,shouldCacheSnapshot:!0,acceptsStreamResponse:!1},le;(function(o){o[o.networkFailure=0]="networkFailure",o[o.timeoutFailure=-1]="timeoutFailure",o[o.contentTypeMismatch=-2]="contentTypeMismatch"})(le||(le={}));var Ro=class{constructor(e,r,t,i={}){this.identifier=Pe(),this.timingMetrics={},this.followedRedirect=!1,this.historyChanged=!1,this.scrolled=!1,this.shouldCacheSnapshot=!0,this.acceptsStreamResponse=!1,this.snapshotCached=!1,this.state=U.initialized,this.delegate=e,this.location=r,this.restorationIdentifier=t||Pe();let{action:l,historyChanged:a,referrer:n,snapshot:d,snapshotHTML:m,response:g,visitCachedSnapshot:S,willRender:p,updateHistory:h,shouldCacheSnapshot:A,acceptsStreamResponse:P}=Object.assign(Object.assign({},ws),i);this.action=l,this.historyChanged=a,this.referrer=n,this.snapshot=d,this.snapshotHTML=m,this.response=g,this.isSamePage=this.delegate.locationWithActionIsSamePage(this.location,this.action),this.visitCachedSnapshot=S,this.willRender=p,this.updateHistory=h,this.scrolled=!p,this.shouldCacheSnapshot=A,this.acceptsStreamResponse=P}get adapter(){return this.delegate.adapter}get view(){return this.delegate.view}get history(){return this.delegate.history}get restorationData(){return this.history.getRestorationDataForIdentifier(this.restorationIdentifier)}get silent(){return this.isSamePage}start(){this.state==U.initialized&&(this.recordTimingMetric(Me.visitStart),this.state=U.started,this.adapter.visitStarted(this),this.delegate.visitStarted(this))}cancel(){this.state==U.started&&(this.request&&this.request.cancel(),this.cancelRender(),this.state=U.canceled)}complete(){this.state==U.started&&(this.recordTimingMetric(Me.visitEnd),this.state=U.completed,this.followRedirect(),this.followedRedirect||(this.adapter.visitCompleted(this),this.delegate.visitCompleted(this)))}fail(){this.state==U.started&&(this.state=U.failed,this.adapter.visitFailed(this))}changeHistory(){var e;if(!this.historyChanged&&this.updateHistory){let r=this.location.href===((e=this.referrer)===null||e===void 0?void 0:e.href)?"replace":this.action,t=ea(r);this.history.update(t,this.location,this.restorationIdentifier),this.historyChanged=!0}}issueRequest(){this.hasPreloadedResponse()?this.simulateRequest():this.shouldIssueRequest()&&!this.request&&(this.request=new je(this,O.get,this.location),this.request.perform())}simulateRequest(){this.response&&(this.startRequest(),this.recordResponse(),this.finishRequest())}startRequest(){this.recordTimingMetric(Me.requestStart),this.adapter.visitRequestStarted(this)}recordResponse(e=this.response){if(this.response=e,e){let{statusCode:r}=e;Ql(r)?this.adapter.visitRequestCompleted(this):this.adapter.visitRequestFailedWithStatusCode(this,r)}}finishRequest(){this.recordTimingMetric(Me.requestEnd),this.adapter.visitRequestFinished(this)}loadResponse(){if(this.response){let{statusCode:e,responseHTML:r}=this.response;this.render(async()=>{this.shouldCacheSnapshot&&this.cacheSnapshot(),this.view.renderPromise&&await this.view.renderPromise,Ql(e)&&r!=null?(await this.view.renderPage(X.fromHTMLString(r),!1,this.willRender,this),this.performScroll(),this.adapter.visitRendered(this),this.complete()):(await this.view.renderError(X.fromHTMLString(r),this),this.adapter.visitRendered(this),this.fail())})}}getCachedSnapshot(){let e=this.view.getCachedSnapshotForLocation(this.location)||this.getPreloadedSnapshot();if(e&&(!de(this.location)||e.hasAnchor(de(this.location)))&&(this.action=="restore"||e.isPreviewable))return e}getPreloadedSnapshot(){if(this.snapshotHTML)return X.fromHTMLString(this.snapshotHTML)}hasCachedSnapshot(){return this.getCachedSnapshot()!=null}loadCachedSnapshot(){let e=this.getCachedSnapshot();if(e){let r=this.shouldIssueRequest();this.render(async()=>{this.cacheSnapshot(),this.isSamePage?this.adapter.visitRendered(this):(this.view.renderPromise&&await this.view.renderPromise,await this.view.renderPage(e,r,this.willRender,this),this.performScroll(),this.adapter.visitRendered(this),r||this.complete())})}}followRedirect(){var e;this.redirectedToLocation&&!this.followedRedirect&&(!((e=this.response)===null||e===void 0)&&e.redirected)&&(this.adapter.visitProposedToLocation(this.redirectedToLocation,{action:"replace",response:this.response}),this.followedRedirect=!0)}goToSamePageAnchor(){this.isSamePage&&this.render(async()=>{this.cacheSnapshot(),this.performScroll(),this.changeHistory(),this.adapter.visitRendered(this)})}prepareHeadersForRequest(e,r){this.acceptsStreamResponse&&r.acceptResponseType(J.contentType)}requestStarted(){this.startRequest()}requestPreventedHandlingResponse(e,r){}async requestSucceededWithResponse(e,r){let t=await r.responseHTML,{redirected:i,statusCode:l}=r;t==null?this.recordResponse({statusCode:le.contentTypeMismatch,redirected:i}):(this.redirectedToLocation=r.redirected?r.location:void 0,this.recordResponse({statusCode:l,responseHTML:t,redirected:i}))}async requestFailedWithResponse(e,r){let t=await r.responseHTML,{redirected:i,statusCode:l}=r;t==null?this.recordResponse({statusCode:le.contentTypeMismatch,redirected:i}):this.recordResponse({statusCode:l,responseHTML:t,redirected:i})}requestErrored(e,r){this.recordResponse({statusCode:le.networkFailure,redirected:!1})}requestFinished(){this.finishRequest()}performScroll(){!this.scrolled&&!this.view.forceReloaded&&(this.action=="restore"?this.scrollToRestoredPosition()||this.scrollToAnchor()||this.view.scrollToTop():this.scrollToAnchor()||this.view.scrollToTop(),this.isSamePage&&this.delegate.visitScrolledToSamePageLocation(this.view.lastRenderedLocation,this.location),this.scrolled=!0)}scrollToRestoredPosition(){let{scrollPosition:e}=this.restorationData;if(e)return this.view.scrollToPosition(e),!0}scrollToAnchor(){let e=de(this.location);if(e!=null)return this.view.scrollToAnchor(e),!0}recordTimingMetric(e){this.timingMetrics[e]=new Date().getTime()}getTimingMetrics(){return Object.assign({},this.timingMetrics)}getHistoryMethodForAction(e){switch(e){case"replace":return history.replaceState;case"advance":case"restore":return history.pushState}}hasPreloadedResponse(){return typeof this.response=="object"}shouldIssueRequest(){return this.isSamePage?!1:this.action=="restore"?!this.hasCachedSnapshot():this.willRender}cacheSnapshot(){this.snapshotCached||(this.view.cacheSnapshot(this.snapshot).then(e=>e&&this.visitCachedSnapshot(e)),this.snapshotCached=!0)}async render(e){this.cancelRender(),await new Promise(r=>{this.frame=requestAnimationFrame(()=>r())}),await e(),delete this.frame}cancelRender(){this.frame&&(cancelAnimationFrame(this.frame),delete this.frame)}};function Ql(o){return o>=200&&o<300}var Xo=class{constructor(e){this.progressBar=new k,this.showProgressBar=()=>{this.progressBar.show()},this.session=e}visitProposedToLocation(e,r){this.navigator.startVisit(e,r?.restorationIdentifier||Pe(),r)}visitStarted(e){this.location=e.location,e.loadCachedSnapshot(),e.issueRequest(),e.goToSamePageAnchor()}visitRequestStarted(e){this.progressBar.setValue(0),e.hasCachedSnapshot()||e.action!="restore"?this.showVisitProgressBarAfterDelay():this.showProgressBar()}visitRequestCompleted(e){e.loadResponse()}visitRequestFailedWithStatusCode(e,r){switch(r){case le.networkFailure:case le.timeoutFailure:case le.contentTypeMismatch:return this.reload({reason:"request_failed",context:{statusCode:r}});default:return e.loadResponse()}}visitRequestFinished(e){this.progressBar.setValue(1),this.hideVisitProgressBar()}visitCompleted(e){}pageInvalidated(e){this.reload(e)}visitFailed(e){}visitRendered(e){}formSubmissionStarted(e){this.progressBar.setValue(0),this.showFormProgressBarAfterDelay()}formSubmissionFinished(e){this.progressBar.setValue(1),this.hideFormProgressBar()}showVisitProgressBarAfterDelay(){this.visitProgressBarTimeout=window.setTimeout(this.showProgressBar,this.session.progressBarDelay)}hideVisitProgressBar(){this.progressBar.hide(),this.visitProgressBarTimeout!=null&&(window.clearTimeout(this.visitProgressBarTimeout),delete this.visitProgressBarTimeout)}showFormProgressBarAfterDelay(){this.formProgressBarTimeout==null&&(this.formProgressBarTimeout=window.setTimeout(this.showProgressBar,this.session.progressBarDelay))}hideFormProgressBar(){this.progressBar.hide(),this.formProgressBarTimeout!=null&&(window.clearTimeout(this.formProgressBarTimeout),delete this.formProgressBarTimeout)}reload(e){var r;E("turbo:reload",{detail:e}),window.location.href=((r=this.location)===null||r===void 0?void 0:r.toString())||window.location.href}get navigator(){return this.session.navigator}},Vo=class{constructor(){this.started=!1,this.removeStaleElements=e=>{let r=[...document.querySelectorAll('[data-turbo-cache="false"]')];for(let t of r)t.remove()}}start(){this.started||(this.started=!0,addEventListener("turbo:before-cache",this.removeStaleElements,!1))}stop(){this.started&&(this.started=!1,removeEventListener("turbo:before-cache",this.removeStaleElements,!1))}},Ho=class{constructor(e,r){this.session=e,this.element=r,this.linkInterceptor=new Br(this,r),this.formSubmitObserver=new er(this,r)}start(){this.linkInterceptor.start(),this.formSubmitObserver.start()}stop(){this.linkInterceptor.stop(),this.formSubmitObserver.stop()}shouldInterceptLinkClick(e,r,t){return this.shouldRedirect(e)}linkClickIntercepted(e,r,t){let i=this.findFrameElement(e);i&&i.delegate.linkClickIntercepted(e,r,t)}willSubmitForm(e,r){return e.closest("turbo-frame")==null&&this.shouldSubmit(e,r)&&this.shouldRedirect(e,r)}formSubmitted(e,r){let t=this.findFrameElement(e,r);t&&t.delegate.formSubmitted(e,r)}shouldSubmit(e,r){var t;let i=ot(e,r),l=this.element.ownerDocument.querySelector('meta[name="turbo-root"]'),a=B((t=l?.content)!==null&&t!==void 0?t:"/");return this.shouldRedirect(e,r)&&Te(i,a)}shouldRedirect(e,r){if(e instanceof HTMLFormElement?this.session.submissionIsNavigatable(e,r):this.session.elementIsNavigatable(e)){let i=this.findFrameElement(e,r);return i?i!=e.closest("turbo-frame"):!1}else return!1}findFrameElement(e,r){let t=r?.getAttribute("data-turbo-frame")||e.getAttribute("data-turbo-frame");if(t&&t!="_top"){let i=this.element.querySelector(`#${t}:not([disabled])`);if(i instanceof K)return i}}},Uo=class{constructor(e){this.restorationIdentifier=Pe(),this.restorationData={},this.started=!1,this.pageLoaded=!1,this.onPopState=r=>{if(this.shouldHandlePopState()){let{turbo:t}=r.state||{};if(t){this.location=new URL(window.location.href);let{restorationIdentifier:i}=t;this.restorationIdentifier=i,this.delegate.historyPoppedToLocationWithRestorationIdentifier(this.location,i)}}},this.onPageLoad=async r=>{await ds(),this.pageLoaded=!0},this.delegate=e}start(){this.started||(addEventListener("popstate",this.onPopState,!1),addEventListener("load",this.onPageLoad,!1),this.started=!0,this.replace(new URL(window.location.href)))}stop(){this.started&&(removeEventListener("popstate",this.onPopState,!1),removeEventListener("load",this.onPageLoad,!1),this.started=!1)}push(e,r){this.update(history.pushState,e,r)}replace(e,r){this.update(history.replaceState,e,r)}update(e,r,t=Pe()){let i={turbo:{restorationIdentifier:t}};e.call(history,i,"",r.href),this.location=r,this.restorationIdentifier=t}getRestorationDataForIdentifier(e){return this.restorationData[e]||{}}updateRestorationData(e){let{restorationIdentifier:r}=this,t=this.restorationData[r];this.restorationData[r]=Object.assign(Object.assign({},t),e)}assumeControlOfScrollRestoration(){var e;this.previousScrollRestoration||(this.previousScrollRestoration=(e=history.scrollRestoration)!==null&&e!==void 0?e:"auto",history.scrollRestoration="manual")}relinquishControlOfScrollRestoration(){this.previousScrollRestoration&&(history.scrollRestoration=this.previousScrollRestoration,delete this.previousScrollRestoration)}shouldHandlePopState(){return this.pageIsLoaded()}pageIsLoaded(){return this.pageLoaded||document.readyState=="complete"}},ko=class{constructor(e){this.delegate=e}proposeVisit(e,r={}){this.delegate.allowsVisitingLocationWithAction(e,r.action)&&(Te(e,this.view.snapshot.rootLocation)?this.delegate.visitProposedToLocation(e,r):window.location.href=e.toString())}startVisit(e,r,t={}){this.stop(),this.currentVisit=new Ro(this,B(e),r,Object.assign({referrer:this.location},t)),this.currentVisit.start()}submitForm(e,r){this.stop(),this.formSubmission=new se(this,e,r,!0),this.formSubmission.start()}stop(){this.formSubmission&&(this.formSubmission.stop(),delete this.formSubmission),this.currentVisit&&(this.currentVisit.cancel(),delete this.currentVisit)}get adapter(){return this.delegate.adapter}get view(){return this.delegate.view}get history(){return this.delegate.history}formSubmissionStarted(e){typeof this.adapter.formSubmissionStarted=="function"&&this.adapter.formSubmissionStarted(e)}async formSubmissionSucceededWithResponse(e,r){if(e==this.formSubmission){let t=await r.responseHTML;if(t){let i=e.method==O.get;i||this.view.clearSnapshotCache();let{statusCode:l,redirected:a}=r,d={action:this.getActionForFormSubmission(e),shouldCacheSnapshot:i,response:{statusCode:l,responseHTML:t,redirected:a}};this.proposeVisit(r.location,d)}}}async formSubmissionFailedWithResponse(e,r){let t=await r.responseHTML;if(t){let i=X.fromHTMLString(t);r.serverError?await this.view.renderError(i,this.currentVisit):await this.view.renderPage(i,!1,!0,this.currentVisit),this.view.scrollToTop(),this.view.clearSnapshotCache()}}formSubmissionErrored(e,r){console.error(r)}formSubmissionFinished(e){typeof this.adapter.formSubmissionFinished=="function"&&this.adapter.formSubmissionFinished(e)}visitStarted(e){this.delegate.visitStarted(e)}visitCompleted(e){this.delegate.visitCompleted(e)}locationWithActionIsSamePage(e,r){let t=de(e),i=de(this.view.lastRenderedLocation),l=r==="restore"&&typeof t>"u";return r!=="replace"&&No(e)===No(this.view.lastRenderedLocation)&&(l||t!=null&&t!==i)}visitScrolledToSamePageLocation(e,r){this.delegate.visitScrolledToSamePageLocation(e,r)}get location(){return this.history.location}get restorationIdentifier(){return this.history.restorationIdentifier}getActionForFormSubmission(e){let{formElement:r,submitter:t}=e,i=qe("data-turbo-action",t,r);return Ir(i)?i:"advance"}},z;(function(o){o[o.initial=0]="initial",o[o.loading=1]="loading",o[o.interactive=2]="interactive",o[o.complete=3]="complete"})(z||(z={}));var Ko=class{constructor(e){this.stage=z.initial,this.started=!1,this.interpretReadyState=()=>{let{readyState:r}=this;r=="interactive"?this.pageIsInteractive():r=="complete"&&this.pageIsComplete()},this.pageWillUnload=()=>{this.delegate.pageWillUnload()},this.delegate=e}start(){this.started||(this.stage==z.initial&&(this.stage=z.loading),document.addEventListener("readystatechange",this.interpretReadyState,!1),addEventListener("pagehide",this.pageWillUnload,!1),this.started=!0)}stop(){this.started&&(document.removeEventListener("readystatechange",this.interpretReadyState,!1),removeEventListener("pagehide",this.pageWillUnload,!1),this.started=!1)}pageIsInteractive(){this.stage==z.loading&&(this.stage=z.interactive,this.delegate.pageBecameInteractive())}pageIsComplete(){this.pageIsInteractive(),this.stage==z.interactive&&(this.stage=z.complete,this.delegate.pageLoaded())}get readyState(){return document.readyState}},Wo=class{constructor(e){this.started=!1,this.onScroll=()=>{this.updatePosition({x:window.pageXOffset,y:window.pageYOffset})},this.delegate=e}start(){this.started||(addEventListener("scroll",this.onScroll,!1),this.onScroll(),this.started=!0)}stop(){this.started&&(removeEventListener("scroll",this.onScroll,!1),this.started=!1)}updatePosition(e){this.delegate.scrollPositionChanged(e)}},Qo=class{render({fragment:e}){Or.preservingPermanentElements(this,Is(e),()=>document.documentElement.appendChild(e))}enteringBardo(e,r){r.replaceWith(e.cloneNode(!0))}leavingBardo(){}};function Is(o){let e=ta(document.documentElement),r={};for(let t of e){let{id:i}=t;for(let l of o.querySelectorAll("turbo-stream")){let a=oa(l.templateElement.content,i);a&&(r[i]=[t,a])}}return r}var Zo=class{constructor(e){this.sources=new Set,this.started=!1,this.inspectFetchResponse=r=>{let t=Fs(r);t&&Ds(t)&&(r.preventDefault(),this.receiveMessageResponse(t))},this.receiveMessageEvent=r=>{this.started&&typeof r.data=="string"&&this.receiveMessageHTML(r.data)},this.delegate=e}start(){this.started||(this.started=!0,addEventListener("turbo:before-fetch-response",this.inspectFetchResponse,!1))}stop(){this.started&&(this.started=!1,removeEventListener("turbo:before-fetch-response",this.inspectFetchResponse,!1))}connectStreamSource(e){this.streamSourceIsConnected(e)||(this.sources.add(e),e.addEventListener("message",this.receiveMessageEvent,!1))}disconnectStreamSource(e){this.streamSourceIsConnected(e)&&(this.sources.delete(e),e.removeEventListener("message",this.receiveMessageEvent,!1))}streamSourceIsConnected(e){return this.sources.has(e)}async receiveMessageResponse(e){let r=await e.responseHTML;r&&this.receiveMessageHTML(r)}receiveMessageHTML(e){this.delegate.receivedMessageFromStream(J.wrap(e))}};function Fs(o){var e;let r=(e=o.detail)===null||e===void 0?void 0:e.fetchResponse;if(r instanceof ze)return r}function Ds(o){var e;return((e=o.contentType)!==null&&e!==void 0?e:"").startsWith(J.contentType)}var wr=class extends rr{static renderElement(e,r){let{documentElement:t,body:i}=document;t.replaceChild(r,i)}async render(){this.replaceHeadAndBody(),this.activateScriptElements()}replaceHeadAndBody(){let{documentElement:e,head:r}=document;e.replaceChild(this.newHead,r),this.renderElement(this.currentElement,this.newElement)}activateScriptElements(){for(let e of this.scriptElements){let r=e.parentNode;if(r){let t=Je(e);r.replaceChild(t,e)}}}get newHead(){return this.newSnapshot.headSnapshot.element}get scriptElements(){return document.documentElement.querySelectorAll("script")}},tr=class extends rr{static renderElement(e,r){document.body&&r instanceof HTMLBodyElement?document.body.replaceWith(r):document.documentElement.appendChild(r)}get shouldRender(){return this.newSnapshot.isVisitable&&this.trackedElementsAreIdentical}get reloadReason(){if(!this.newSnapshot.isVisitable)return{reason:"turbo_visit_control_is_reload"};if(!this.trackedElementsAreIdentical)return{reason:"tracked_element_mismatch"}}async prepareToRender(){await this.mergeHead()}async render(){this.willRender&&this.replaceBody()}finishRendering(){super.finishRendering(),this.isPreview||this.focusFirstAutofocusableElement()}get currentHeadSnapshot(){return this.currentSnapshot.headSnapshot}get newHeadSnapshot(){return this.newSnapshot.headSnapshot}get newElement(){return this.newSnapshot.element}async mergeHead(){let e=this.copyNewHeadStylesheetElements();this.copyNewHeadScriptElements(),this.removeCurrentHeadProvisionalElements(),this.copyNewHeadProvisionalElements(),await e}replaceBody(){this.preservingPermanentElements(()=>{this.activateNewBody(),this.assignNewBody()})}get trackedElementsAreIdentical(){return this.currentHeadSnapshot.trackedElementSignature==this.newHeadSnapshot.trackedElementSignature}async copyNewHeadStylesheetElements(){let e=[];for(let r of this.newHeadStylesheetElements)e.push(gs(r)),document.head.appendChild(r);await Promise.all(e)}copyNewHeadScriptElements(){for(let e of this.newHeadScriptElements)document.head.appendChild(Je(e))}removeCurrentHeadProvisionalElements(){for(let e of this.currentHeadProvisionalElements)document.head.removeChild(e)}copyNewHeadProvisionalElements(){for(let e of this.newHeadProvisionalElements)document.head.appendChild(e)}activateNewBody(){document.adoptNode(this.newElement),this.activateNewBodyScriptElements()}activateNewBodyScriptElements(){for(let e of this.newBodyScriptElements){let r=Je(e);e.replaceWith(r)}}assignNewBody(){this.renderElement(this.currentElement,this.newElement)}get newHeadStylesheetElements(){return this.newHeadSnapshot.getStylesheetElementsNotInSnapshot(this.currentHeadSnapshot)}get newHeadScriptElements(){return this.newHeadSnapshot.getScriptElementsNotInSnapshot(this.currentHeadSnapshot)}get currentHeadProvisionalElements(){return this.currentHeadSnapshot.provisionalElements}get newHeadProvisionalElements(){return this.newHeadSnapshot.provisionalElements}get newBodyScriptElements(){return this.newElement.querySelectorAll("script")}},Yo=class{constructor(e){this.keys=[],this.snapshots={},this.size=e}has(e){return Lr(e)in this.snapshots}get(e){if(this.has(e)){let r=this.read(e);return this.touch(e),r}}put(e,r){return this.write(e,r),this.touch(e),r}clear(){this.snapshots={}}read(e){return this.snapshots[Lr(e)]}write(e,r){this.snapshots[Lr(e)]=r}touch(e){let r=Lr(e),t=this.keys.indexOf(r);t>-1&&this.keys.splice(t,1),this.keys.unshift(r),this.trim()}trim(){for(let e of this.keys.splice(this.size))delete this.snapshots[e]}},zo=class extends yr{constructor(){super(...arguments),this.snapshotCache=new Yo(10),this.lastRenderedLocation=new URL(location.href),this.forceReloaded=!1}renderPage(e,r=!1,t=!0,i){let l=new tr(this.snapshot,e,tr.renderElement,r,t);return l.shouldRender?i?.changeHistory():this.forceReloaded=!0,this.render(l)}renderError(e,r){r?.changeHistory();let t=new wr(this.snapshot,e,wr.renderElement,!1);return this.render(t)}clearSnapshotCache(){this.snapshotCache.clear()}async cacheSnapshot(e=this.snapshot){if(e.isCacheable){this.delegate.viewWillCacheSnapshot();let{lastRenderedLocation:r}=this;await ns();let t=e.clone();return this.snapshotCache.put(r,t),t}}getCachedSnapshotForLocation(e){return this.snapshotCache.get(e)}get snapshot(){return X.fromElement(this.element)}},Jo=class{constructor(e){this.selector="a[data-turbo-preload]",this.delegate=e}get snapshotCache(){return this.delegate.navigator.view.snapshotCache}start(){if(document.readyState==="loading")return document.addEventListener("DOMContentLoaded",()=>{this.preloadOnLoadLinksForView(document.body)});this.preloadOnLoadLinksForView(document.body)}preloadOnLoadLinksForView(e){for(let r of e.querySelectorAll(this.selector))this.preloadURL(r)}async preloadURL(e){let r=new URL(e.href);if(!this.snapshotCache.has(r))try{let i=await(await fetch(r.toString(),{headers:{"VND.PREFETCH":"true",Accept:"text/html"}})).text(),l=X.fromHTMLString(i);this.snapshotCache.put(r,l)}catch{}}},qo=class{constructor(){this.navigator=new ko(this),this.history=new Uo(this),this.preloader=new Jo(this),this.view=new zo(this,document.documentElement),this.adapter=new Xo(this),this.pageObserver=new Ko(this),this.cacheObserver=new Vo,this.linkClickObserver=new Cr(this,window),this.formSubmitObserver=new er(this,document),this.scrollObserver=new Wo(this),this.streamObserver=new Zo(this),this.formLinkClickObserver=new Nr(this,document.documentElement),this.frameRedirector=new Ho(this,document.documentElement),this.streamMessageRenderer=new Qo,this.drive=!0,this.enabled=!0,this.progressBarDelay=500,this.started=!1,this.formMode="on"}start(){this.started||(this.pageObserver.start(),this.cacheObserver.start(),this.formLinkClickObserver.start(),this.linkClickObserver.start(),this.formSubmitObserver.start(),this.scrollObserver.start(),this.streamObserver.start(),this.frameRedirector.start(),this.history.start(),this.preloader.start(),this.started=!0,this.enabled=!0)}disable(){this.enabled=!1}stop(){this.started&&(this.pageObserver.stop(),this.cacheObserver.stop(),this.formLinkClickObserver.stop(),this.linkClickObserver.stop(),this.formSubmitObserver.stop(),this.scrollObserver.stop(),this.streamObserver.stop(),this.frameRedirector.stop(),this.history.stop(),this.started=!1)}registerAdapter(e){this.adapter=e}visit(e,r={}){let t=r.frame?document.getElementById(r.frame):null;t instanceof K?(t.src=e.toString(),t.loaded):this.navigator.proposeVisit(B(e),r)}connectStreamSource(e){this.streamObserver.connectStreamSource(e)}disconnectStreamSource(e){this.streamObserver.disconnectStreamSource(e)}renderStreamMessage(e){this.streamMessageRenderer.render(J.wrap(e))}clearCache(){this.view.clearSnapshotCache()}setProgressBarDelay(e){this.progressBarDelay=e}setFormMode(e){this.formMode=e}get location(){return this.history.location}get restorationIdentifier(){return this.history.restorationIdentifier}historyPoppedToLocationWithRestorationIdentifier(e,r){this.enabled?this.navigator.startVisit(e,r,{action:"restore",historyChanged:!0}):this.adapter.pageInvalidated({reason:"turbo_disabled"})}scrollPositionChanged(e){this.history.updateRestorationData({scrollPosition:e})}willSubmitFormLinkToLocation(e,r){return this.elementIsNavigatable(e)&&Te(r,this.snapshot.rootLocation)}submittedFormLinkToLocation(){}willFollowLinkToLocation(e,r,t){return this.elementIsNavigatable(e)&&Te(r,this.snapshot.rootLocation)&&this.applicationAllowsFollowingLinkToLocation(e,r,t)}followedLinkToLocation(e,r){let t=this.getActionForLink(e),i=e.hasAttribute("data-turbo-stream");this.visit(r.href,{action:t,acceptsStreamResponse:i})}allowsVisitingLocationWithAction(e,r){return this.locationWithActionIsSamePage(e,r)||this.applicationAllowsVisitingLocation(e)}visitProposedToLocation(e,r){Zl(e),this.adapter.visitProposedToLocation(e,r)}visitStarted(e){e.acceptsStreamResponse||Oo(document.documentElement),Zl(e.location),e.silent||this.notifyApplicationAfterVisitingLocation(e.location,e.action)}visitCompleted(e){wo(document.documentElement),this.notifyApplicationAfterPageLoad(e.getTimingMetrics())}locationWithActionIsSamePage(e,r){return this.navigator.locationWithActionIsSamePage(e,r)}visitScrolledToSamePageLocation(e,r){this.notifyApplicationAfterVisitingSamePageLocation(e,r)}willSubmitForm(e,r){let t=ot(e,r);return this.submissionIsNavigatable(e,r)&&Te(B(t),this.snapshot.rootLocation)}formSubmitted(e,r){this.navigator.submitForm(e,r)}pageBecameInteractive(){this.view.lastRenderedLocation=this.location,this.notifyApplicationAfterPageLoad()}pageLoaded(){this.history.assumeControlOfScrollRestoration()}pageWillUnload(){this.history.relinquishControlOfScrollRestoration()}receivedMessageFromStream(e){this.renderStreamMessage(e)}viewWillCacheSnapshot(){var e;!((e=this.navigator.currentVisit)===null||e===void 0)&&e.silent||this.notifyApplicationBeforeCachingSnapshot()}allowsImmediateRender({element:e},r){let t=this.notifyApplicationBeforeRender(e,r),{defaultPrevented:i,detail:{render:l}}=t;return this.view.renderer&&l&&(this.view.renderer.renderElement=l),!i}viewRenderedSnapshot(e,r){this.view.lastRenderedLocation=this.history.location,this.notifyApplicationAfterRender()}preloadOnLoadLinksForView(e){this.preloader.preloadOnLoadLinksForView(e)}viewInvalidated(e){this.adapter.pageInvalidated(e)}frameLoaded(e){this.notifyApplicationAfterFrameLoad(e)}frameRendered(e,r){this.notifyApplicationAfterFrameRender(e,r)}applicationAllowsFollowingLinkToLocation(e,r,t){return!this.notifyApplicationAfterClickingLinkToLocation(e,r,t).defaultPrevented}applicationAllowsVisitingLocation(e){return!this.notifyApplicationBeforeVisitingLocation(e).defaultPrevented}notifyApplicationAfterClickingLinkToLocation(e,r,t){return E("turbo:click",{target:e,detail:{url:r.href,originalEvent:t},cancelable:!0})}notifyApplicationBeforeVisitingLocation(e){return E("turbo:before-visit",{detail:{url:e.href},cancelable:!0})}notifyApplicationAfterVisitingLocation(e,r){return E("turbo:visit",{detail:{url:e.href,action:r}})}notifyApplicationBeforeCachingSnapshot(){return E("turbo:before-cache")}notifyApplicationBeforeRender(e,r){return E("turbo:before-render",{detail:Object.assign({newBody:e},r),cancelable:!0})}notifyApplicationAfterRender(){return E("turbo:render")}notifyApplicationAfterPageLoad(e={}){return E("turbo:load",{detail:{url:this.location.href,timing:e}})}notifyApplicationAfterVisitingSamePageLocation(e,r){dispatchEvent(new HashChangeEvent("hashchange",{oldURL:e.toString(),newURL:r.toString()}))}notifyApplicationAfterFrameLoad(e){return E("turbo:frame-load",{target:e})}notifyApplicationAfterFrameRender(e,r){return E("turbo:frame-render",{detail:{fetchResponse:e},target:r,cancelable:!0})}submissionIsNavigatable(e,r){if(this.formMode=="off")return!1;{let t=r?this.elementIsNavigatable(r):!0;return this.formMode=="optin"?t&&e.closest('[data-turbo="true"]')!=null:t&&this.elementIsNavigatable(e)}}elementIsNavigatable(e){let r=e.closest("[data-turbo]"),t=e.closest("turbo-frame");return this.drive||t?r?r.getAttribute("data-turbo")!="false":!0:r?r.getAttribute("data-turbo")=="true":!1}getActionForLink(e){let r=e.getAttribute("data-turbo-action");return Ir(r)?r:"advance"}get snapshot(){return this.view.snapshot}};function Zl(o){Object.defineProperties(o,Rs)}var Rs={absoluteURL:{get(){return this.toString()}}},jo=class{constructor(e){this.session=e}clear(){this.session.clearCache()}resetCacheControl(){this.setCacheControl("")}exemptPageFromCache(){this.setCacheControl("no-cache")}exemptPageFromPreview(){this.setCacheControl("no-preview")}setCacheControl(e){cs("turbo-cache-control",e)}},ia={after(){this.targetElements.forEach(o=>{var e;return(e=o.parentElement)===null||e===void 0?void 0:e.insertBefore(this.templateContent,o.nextSibling)})},append(){this.removeDuplicateTargetChildren(),this.targetElements.forEach(o=>o.append(this.templateContent))},before(){this.targetElements.forEach(o=>{var e;return(e=o.parentElement)===null||e===void 0?void 0:e.insertBefore(this.templateContent,o)})},prepend(){this.removeDuplicateTargetChildren(),this.targetElements.forEach(o=>o.prepend(this.templateContent))},remove(){this.targetElements.forEach(o=>o.remove())},replace(){this.targetElements.forEach(o=>o.replaceWith(this.templateContent))},update(){this.targetElements.forEach(o=>o.replaceChildren(this.templateContent))}},_=new qo,Xs=new jo(_),{navigator:Vs}=_;function Fr(){_.start()}function Hs(o){_.registerAdapter(o)}function Us(o,e){_.visit(o,e)}function la(o){_.connectStreamSource(o)}function aa(o){_.disconnectStreamSource(o)}function ks(o){_.renderStreamMessage(o)}function Ks(){console.warn("Please replace `Turbo.clearCache()` with `Turbo.cache.clear()`. The top-level function is deprecated and will be removed in a future version of Turbo.`"),_.clearCache()}function Ws(o){_.setProgressBarDelay(o)}function Qs(o){se.confirmMethod=o}function Zs(o){_.setFormMode(o)}var Ys=Object.freeze({__proto__:null,navigator:Vs,session:_,cache:Xs,PageRenderer:tr,PageSnapshot:X,FrameRenderer:or,start:Fr,registerAdapter:Hs,visit:Us,connectStreamSource:la,disconnectStreamSource:aa,renderStreamMessage:ks,clearCache:Ks,setProgressBarDelay:Ws,setConfirmMethod:Qs,setFormMode:Zs,StreamActions:ia}),et=class{constructor(e){this.fetchResponseLoaded=r=>{},this.currentFetchRequest=null,this.resolveVisitPromise=()=>{},this.connected=!1,this.hasBeenLoaded=!1,this.ignoredAttributes=new Set,this.action=null,this.visitCachedSnapshot=({element:r})=>{let t=r.querySelector("#"+this.element.id);t&&this.previousFrameElement&&t.replaceChildren(...this.previousFrameElement.children),delete this.previousFrameElement},this.element=e,this.view=new Fo(this,this.element),this.appearanceObserver=new Io(this,this.element),this.formLinkClickObserver=new Nr(this,this.element),this.linkInterceptor=new Br(this,this.element),this.restorationIdentifier=Pe(),this.formSubmitObserver=new er(this,this.element)}connect(){this.connected||(this.connected=!0,this.loadingStyle==ie.lazy?this.appearanceObserver.start():this.loadSourceURL(),this.formLinkClickObserver.start(),this.linkInterceptor.start(),this.formSubmitObserver.start())}disconnect(){this.connected&&(this.connected=!1,this.appearanceObserver.stop(),this.formLinkClickObserver.stop(),this.linkInterceptor.stop(),this.formSubmitObserver.stop())}disabledChanged(){this.loadingStyle==ie.eager&&this.loadSourceURL()}sourceURLChanged(){this.isIgnoringChangesTo("src")||(this.element.isConnected&&(this.complete=!1),(this.loadingStyle==ie.eager||this.hasBeenLoaded)&&this.loadSourceURL())}sourceURLReloaded(){let{src:e}=this.element;return this.ignoringChangesToAttribute("complete",()=>{this.element.removeAttribute("complete")}),this.element.src=null,this.element.src=e,this.element.loaded}completeChanged(){this.isIgnoringChangesTo("complete")||this.loadSourceURL()}loadingStyleChanged(){this.loadingStyle==ie.lazy?this.appearanceObserver.start():(this.appearanceObserver.stop(),this.loadSourceURL())}async loadSourceURL(){this.enabled&&this.isActive&&!this.complete&&this.sourceURL&&(this.element.loaded=this.visit(B(this.sourceURL)),this.appearanceObserver.stop(),await this.element.loaded,this.hasBeenLoaded=!0)}async loadResponse(e){(e.redirected||e.succeeded&&e.isHTML)&&(this.sourceURL=e.response.url);try{let r=await e.responseHTML;if(r){let{body:t}=ql(r),i=await this.extractForeignFrameElement(t);if(i){let l=new _e(i),a=new or(this,this.view.snapshot,l,or.renderElement,!1,!1);this.view.renderPromise&&await this.view.renderPromise,this.changeHistory(),await this.view.render(a),this.complete=!0,_.frameRendered(e,this.element),_.frameLoaded(this.element),this.fetchResponseLoaded(e)}else this.willHandleFrameMissingFromResponse(e)&&(console.warn(`A matching frame for #${this.element.id} was missing from the response, transforming into full-page Visit.`),this.visitResponse(e.response))}}catch(r){console.error(r),this.view.invalidate()}finally{this.fetchResponseLoaded=()=>{}}}elementAppearedInViewport(e){this.loadSourceURL()}willSubmitFormLinkToLocation(e){return this.shouldInterceptNavigation(e)}submittedFormLinkToLocation(e,r,t){let i=this.findFrameElement(e);i&&t.setAttribute("data-turbo-frame",i.id)}shouldInterceptLinkClick(e,r,t){return this.shouldInterceptNavigation(e)}linkClickIntercepted(e,r){this.navigateFrame(e,r)}willSubmitForm(e,r){return e.closest("turbo-frame")==this.element&&this.shouldInterceptNavigation(e,r)}formSubmitted(e,r){this.formSubmission&&this.formSubmission.stop(),this.formSubmission=new se(this,e,r);let{fetchRequest:t}=this.formSubmission;this.prepareHeadersForRequest(t.headers,t),this.formSubmission.start()}prepareHeadersForRequest(e,r){var t;e["Turbo-Frame"]=this.id,!((t=this.currentNavigationElement)===null||t===void 0)&&t.hasAttribute("data-turbo-stream")&&r.acceptResponseType(J.contentType)}requestStarted(e){Oo(this.element)}requestPreventedHandlingResponse(e,r){this.resolveVisitPromise()}async requestSucceededWithResponse(e,r){await this.loadResponse(r),this.resolveVisitPromise()}async requestFailedWithResponse(e,r){console.error(r),await this.loadResponse(r),this.resolveVisitPromise()}requestErrored(e,r){console.error(r),this.resolveVisitPromise()}requestFinished(e){wo(this.element)}formSubmissionStarted({formElement:e}){Oo(e,this.findFrameElement(e))}formSubmissionSucceededWithResponse(e,r){let t=this.findFrameElement(e.formElement,e.submitter);t.delegate.proposeVisitIfNavigatedWithAction(t,e.formElement,e.submitter),t.delegate.loadResponse(r)}formSubmissionFailedWithResponse(e,r){this.element.delegate.loadResponse(r)}formSubmissionErrored(e,r){console.error(r)}formSubmissionFinished({formElement:e}){wo(e,this.findFrameElement(e))}allowsImmediateRender({element:e},r){let t=E("turbo:before-frame-render",{target:this.element,detail:Object.assign({newFrame:e},r),cancelable:!0}),{defaultPrevented:i,detail:{render:l}}=t;return this.view.renderer&&l&&(this.view.renderer.renderElement=l),!i}viewRenderedSnapshot(e,r){}preloadOnLoadLinksForView(e){_.preloadOnLoadLinksForView(e)}viewInvalidated(){}willRenderFrame(e,r){this.previousFrameElement=e.cloneNode(!0)}async visit(e){var r;let t=new je(this,O.get,e,new URLSearchParams,this.element);return(r=this.currentFetchRequest)===null||r===void 0||r.cancel(),this.currentFetchRequest=t,new Promise(i=>{this.resolveVisitPromise=()=>{this.resolveVisitPromise=()=>{},this.currentFetchRequest=null,i()},t.perform()})}navigateFrame(e,r,t){let i=this.findFrameElement(e,t);this.pageSnapshot=X.fromElement(i).clone(),i.delegate.proposeVisitIfNavigatedWithAction(i,e,t),this.withCurrentNavigationElement(e,()=>{i.src=r})}proposeVisitIfNavigatedWithAction(e,r,t){if(this.action=xs(t,r,e),Ir(this.action)){let{visitCachedSnapshot:i}=e.delegate;e.delegate.fetchResponseLoaded=l=>{if(e.src){let{statusCode:a,redirected:n}=l,d=e.ownerDocument.documentElement.outerHTML,g={response:{statusCode:a,redirected:n,responseHTML:d},visitCachedSnapshot:i,willRender:!1,updateHistory:!1,restorationIdentifier:this.restorationIdentifier,snapshot:this.pageSnapshot};this.action&&(g.action=this.action),_.visit(e.src,g)}}}}changeHistory(){if(this.action){let e=ea(this.action);_.history.update(e,B(this.element.src||""),this.restorationIdentifier)}}willHandleFrameMissingFromResponse(e){this.element.setAttribute("complete","");let r=e.response,t=async(l,a={})=>{l instanceof Response?this.visitResponse(l):_.visit(l,a)};return!E("turbo:frame-missing",{target:this.element,detail:{response:r,visit:t},cancelable:!0}).defaultPrevented}async visitResponse(e){let r=new ze(e),t=await r.responseHTML,{location:i,redirected:l,statusCode:a}=r;return _.visit(i,{response:{redirected:l,statusCode:a,responseHTML:t}})}findFrameElement(e,r){var t;let i=qe("data-turbo-frame",r,e)||this.element.getAttribute("target");return(t=Yl(i))!==null&&t!==void 0?t:this.element}async extractForeignFrameElement(e){let r,t=CSS.escape(this.id);try{if(r=zl(e.querySelector(`turbo-frame#${t}`),this.sourceURL),r)return r;if(r=zl(e.querySelector(`turbo-frame[src][recurse~=${t}]`),this.sourceURL),r)return await r.loaded,await this.extractForeignFrameElement(r)}catch(i){return console.error(i),new K}return null}formActionIsVisitable(e,r){let t=ot(e,r);return Te(B(t),this.rootLocation)}shouldInterceptNavigation(e,r){let t=qe("data-turbo-frame",r,e)||this.element.getAttribute("target");if(e instanceof HTMLFormElement&&!this.formActionIsVisitable(e,r)||!this.enabled||t=="_top")return!1;if(t){let i=Yl(t);if(i)return!i.disabled}return!(!_.elementIsNavigatable(e)||r&&!_.elementIsNavigatable(r))}get id(){return this.element.id}get enabled(){return!this.element.disabled}get sourceURL(){if(this.element.src)return this.element.src}set sourceURL(e){this.ignoringChangesToAttribute("src",()=>{this.element.src=e??null})}get loadingStyle(){return this.element.loading}get isLoading(){return this.formSubmission!==void 0||this.resolveVisitPromise()!==void 0}get complete(){return this.element.hasAttribute("complete")}set complete(e){this.ignoringChangesToAttribute("complete",()=>{e?this.element.setAttribute("complete",""):this.element.removeAttribute("complete")})}get isActive(){return this.element.isActive&&this.connected}get rootLocation(){var e;let r=this.element.ownerDocument.querySelector('meta[name="turbo-root"]'),t=(e=r?.content)!==null&&e!==void 0?e:"/";return B(t)}isIgnoringChangesTo(e){return this.ignoredAttributes.has(e)}ignoringChangesToAttribute(e,r){this.ignoredAttributes.add(e),r(),this.ignoredAttributes.delete(e)}withCurrentNavigationElement(e,r){this.currentNavigationElement=e,r(),delete this.currentNavigationElement}};function Yl(o){if(o!=null){let e=document.getElementById(o);if(e instanceof K)return e}}function zl(o,e){if(o){let r=o.getAttribute("src");if(r!=null&&e!=null&&es(r,e))throw new Error(`Matching element has a source URL which references itself`);if(o.ownerDocument!==document&&(o=document.importNode(o,!0)),o instanceof K)return o.connectedCallback(),o.disconnectedCallback(),o}}var ir=class extends HTMLElement{static async renderElement(e){await e.performAction()}async connectedCallback(){try{await this.render()}catch(e){console.error(e)}finally{this.disconnect()}}async render(){var e;return(e=this.renderPromise)!==null&&e!==void 0?e:this.renderPromise=(async()=>{let r=this.beforeRenderEvent;this.dispatchEvent(r)&&(await Gr(),await r.detail.render(this))})()}disconnect(){try{this.remove()}catch{}}removeDuplicateTargetChildren(){this.duplicateChildren.forEach(e=>e.remove())}get duplicateChildren(){var e;let r=this.targetElements.flatMap(i=>[...i.children]).filter(i=>!!i.id),t=[...((e=this.templateContent)===null||e===void 0?void 0:e.children)||[]].filter(i=>!!i.id).map(i=>i.id);return r.filter(i=>t.includes(i.id))}get performAction(){if(this.action){let e=ia[this.action];if(e)return e;this.raise("unknown action")}this.raise("action attribute is missing")}get targetElements(){if(this.target)return this.targetElementsById;if(this.targets)return this.targetElementsByQuery;this.raise("target or targets attribute is missing")}get templateContent(){return this.templateElement.content.cloneNode(!0)}get templateElement(){if(this.firstElementChild===null){let e=this.ownerDocument.createElement("template");return this.appendChild(e),e}else if(this.firstElementChild instanceof HTMLTemplateElement)return this.firstElementChild;this.raise("first child element must be a