@zappar/zappar-cv 3.0.1-alpha.7 → 3.0.1-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/umd/zappar-cv.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ZCV=t():e.ZCV=t()}(self,(()=>(()=>{var e={238:function(e,t,r){var i;!function(a,n){"use strict";var o="function",s="undefined",_="object",c="string",l="model",d="name",h="type",u="vendor",f="version",p="architecture",m="console",b="mobile",g="tablet",w="smarttv",v="wearable",E="embedded",y="Amazon",A="Apple",T="ASUS",R="BlackBerry",x="Browser",k="Chrome",I="Firefox",L="Google",S="Huawei",M="LG",F="Microsoft",z="Motorola",P="Opera",C="Samsung",N="Sharp",U="Sony",D="Xiaomi",B="Zebra",O="Facebook",V=function(e){for(var t={},r=0;r<e.length;r++)t[e[r].toUpperCase()]=e[r];return t},j=function(e,t){return typeof e===c&&-1!==G(t).indexOf(G(e))},G=function(e){return e.toLowerCase()},W=function(e,t){if(typeof e===c)return e=e.replace(/^\s\s*/,""),typeof t===s?e:e.substring(0,350)},H=function(e,t){for(var r,i,a,s,c,l,d=0;d<t.length&&!c;){var h=t[d],u=t[d+1];for(r=i=0;r<h.length&&!c;)if(c=h[r++].exec(e))for(a=0;a<u.length;a++)l=c[++i],typeof(s=u[a])===_&&s.length>0?2===s.length?typeof s[1]==o?this[s[0]]=s[1].call(this,l):this[s[0]]=s[1]:3===s.length?typeof s[1]!==o||s[1].exec&&s[1].test?this[s[0]]=l?l.replace(s[1],s[2]):n:this[s[0]]=l?s[1].call(this,l,s[2]):n:4===s.length&&(this[s[0]]=l?s[3].call(this,l.replace(s[1],s[2])):n):this[s]=l||n;d+=2}},Y=function(e,t){for(var r in t)if(typeof t[r]===_&&t[r].length>0){for(var i=0;i<t[r].length;i++)if(j(t[r][i],e))return"?"===r?n:r}else if(j(t[r],e))return"?"===r?n:r;return e},X={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Z={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[f,[d,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[f,[d,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[d,f],[/opios[\/ ]+([\w\.]+)/i],[f,[d,P+" Mini"]],[/\bopr\/([\w\.]+)/i],[f,[d,P]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,/(weibo)__([\d\.]+)/i],[d,f],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[f,[d,"UC"+x]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i],[f,[d,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[f,[d,"WeChat"]],[/konqueror\/([\w\.]+)/i],[f,[d,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[f,[d,"IE"]],[/yabrowser\/([\w\.]+)/i],[f,[d,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[d,/(.+)/,"$1 Secure "+x],f],[/\bfocus\/([\w\.]+)/i],[f,[d,I+" Focus"]],[/\bopt\/([\w\.]+)/i],[f,[d,P+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[f,[d,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[f,[d,"Dolphin"]],[/coast\/([\w\.]+)/i],[f,[d,P+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[f,[d,"MIUI "+x]],[/fxios\/([-\w\.]+)/i],[f,[d,I]],[/\bqihu|(qi?ho?o?|360)browser/i],[[d,"360 "+x]],[/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i],[[d,/(.+)/,"$1 "+x],f],[/(comodo_dragon)\/([\w\.]+)/i],[[d,/_/g," "],f],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[d,f],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i,/\[(linkedin)app\]/i],[d],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[d,O],f],[/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[d,f],[/\bgsa\/([\w\.]+) .*safari\//i],[f,[d,"GSA"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[f,[d,k+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[d,k+" WebView"],f],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[f,[d,"Android "+x]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[d,f],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[f,[d,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[f,d],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[d,[f,Y,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[d,f],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[d,"Netscape"],f],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[f,[d,I+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[d,f],[/(cobalt)\/([\w\.]+)/i],[d,[f,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[p,"amd64"]],[/(ia32(?=;))/i],[[p,G]],[/((?:i[346]|x)86)[;\)]/i],[[p,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[p,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[p,"armhf"]],[/windows (ce|mobile); ppc;/i],[[p,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[p,/ower/,"",G]],[/(sun4\w)[;\)]/i],[[p,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[p,G]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[l,[u,C],[h,g]],[/\b((?:s[cgp]h|gt|sm)-\w+|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[l,[u,C],[h,b]],[/\((ip(?:hone|od)[\w ]*);/i],[l,[u,A],[h,b]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[l,[u,A],[h,g]],[/(macintosh);/i],[l,[u,A]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[l,[u,S],[h,g]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[l,[u,S],[h,b]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[l,/_/g," "],[u,D],[h,b]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[l,/_/g," "],[u,D],[h,g]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[l,[u,"OPPO"],[h,b]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[l,[u,"Vivo"],[h,b]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[l,[u,"Realme"],[h,b]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[l,[u,z],[h,b]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[l,[u,z],[h,g]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[l,[u,M],[h,g]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[l,[u,M],[h,b]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[l,[u,"Lenovo"],[h,g]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[l,/_/g," "],[u,"Nokia"],[h,b]],[/(pixel c)\b/i],[l,[u,L],[h,g]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[l,[u,L],[h,b]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[l,[u,U],[h,b]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[l,"Xperia Tablet"],[u,U],[h,g]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[l,[u,"OnePlus"],[h,b]],[/(alexa)webm/i,/(kf[a-z]{2}wi)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[l,[u,y],[h,g]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[l,/(.+)/g,"Fire Phone $1"],[u,y],[h,b]],[/(playbook);[-\w\),; ]+(rim)/i],[l,u,[h,g]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[l,[u,R],[h,b]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[l,[u,T],[h,g]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[l,[u,T],[h,b]],[/(nexus 9)/i],[l,[u,"HTC"],[h,g]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\w]*)/i],[u,[l,/_/g," "],[h,b]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[l,[u,"Acer"],[h,g]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[l,[u,"Meizu"],[h,b]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[l,[u,N],[h,b]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[u,l,[h,b]],[/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[u,l,[h,g]],[/(surface duo)/i],[l,[u,F],[h,g]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[l,[u,"Fairphone"],[h,b]],[/(u304aa)/i],[l,[u,"AT&T"],[h,b]],[/\bsie-(\w*)/i],[l,[u,"Siemens"],[h,b]],[/\b(rct\w+) b/i],[l,[u,"RCA"],[h,g]],[/\b(venue[\d ]{2,7}) b/i],[l,[u,"Dell"],[h,g]],[/\b(q(?:mv|ta)\w+) b/i],[l,[u,"Verizon"],[h,g]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[l,[u,"Barnes & Noble"],[h,g]],[/\b(tm\d{3}\w+) b/i],[l,[u,"NuVision"],[h,g]],[/\b(k88) b/i],[l,[u,"ZTE"],[h,g]],[/\b(nx\d{3}j) b/i],[l,[u,"ZTE"],[h,b]],[/\b(gen\d{3}) b.+49h/i],[l,[u,"Swiss"],[h,b]],[/\b(zur\d{3}) b/i],[l,[u,"Swiss"],[h,g]],[/\b((zeki)?tb.*\b) b/i],[l,[u,"Zeki"],[h,g]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[u,"Dragon Touch"],l,[h,g]],[/\b(ns-?\w{0,9}) b/i],[l,[u,"Insignia"],[h,g]],[/\b((nxa|next)-?\w{0,9}) b/i],[l,[u,"NextBook"],[h,g]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[u,"Voice"],l,[h,b]],[/\b(lvtel\-)?(v1[12]) b/i],[[u,"LvTel"],l,[h,b]],[/\b(ph-1) /i],[l,[u,"Essential"],[h,b]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[l,[u,"Envizen"],[h,g]],[/\b(trio[-\w\. ]+) b/i],[l,[u,"MachSpeed"],[h,g]],[/\btu_(1491) b/i],[l,[u,"Rotor"],[h,g]],[/(shield[\w ]+) b/i],[l,[u,"Nvidia"],[h,g]],[/(sprint) (\w+)/i],[u,l,[h,b]],[/(kin\.[onetw]{3})/i],[[l,/\./g," "],[u,F],[h,b]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[l,[u,B],[h,g]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[l,[u,B],[h,b]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[u,l,[h,m]],[/droid.+; (shield) bui/i],[l,[u,"Nvidia"],[h,m]],[/(playstation [345portablevi]+)/i],[l,[u,U],[h,m]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[l,[u,F],[h,m]],[/smart-tv.+(samsung)/i],[u,[h,w]],[/hbbtv.+maple;(\d+)/i],[[l,/^/,"SmartTV"],[u,C],[h,w]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[u,M],[h,w]],[/(apple) ?tv/i],[u,[l,A+" TV"],[h,w]],[/crkey/i],[[l,k+"cast"],[u,L],[h,w]],[/droid.+aft(\w)( bui|\))/i],[l,[u,y],[h,w]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[l,[u,N],[h,w]],[/(bravia[\w ]+)( bui|\))/i],[l,[u,U],[h,w]],[/(mitv-\w{5}) bui/i],[l,[u,D],[h,w]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w ]*; *(\w[^;]*);([^;]*)/i],[[u,W],[l,W],[h,w]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[h,w]],[/((pebble))app/i],[u,l,[h,v]],[/droid.+; (glass) \d/i],[l,[u,L],[h,v]],[/droid.+; (wt63?0{2,3})\)/i],[l,[u,B],[h,v]],[/(quest( 2)?)/i],[l,[u,O],[h,v]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[u,[h,E]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[l,[h,b]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[l,[h,g]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[h,g]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[h,b]],[/(android[-\w\. ]{0,9});.+buil/i],[l,[u,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[f,[d,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[f,[d,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i],[d,f],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[f,d]],os:[[/microsoft (windows) (vista|xp)/i],[d,f],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[d,[f,Y,X]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[d,"Windows"],[f,Y,X]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/cfnetwork\/.+darwin/i],[[f,/_/g,"."],[d,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[d,"Mac OS"],[f,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[f,d],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[d,f],[/\(bb(10);/i],[f,[d,R]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[f,[d,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[f,[d,I+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[f,[d,"webOS"]],[/crkey\/([\d\.]+)/i],[f,[d,k+"cast"]],[/(cros) [\w]+ ([\w\.]+\w)/i],[[d,"Chromium OS"],f],[/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[d,f],[/(sunos) ?([\w\.\d]*)/i],[[d,"Solaris"],f],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,/(unix) ?([\w\.]*)/i],[d,f]]},q=function(e,t){if(typeof e===_&&(t=e,e=n),!(this instanceof q))return new q(e,t).getResult();var r=e||(typeof a!==s&&a.navigator&&a.navigator.userAgent?a.navigator.userAgent:""),i=t?function(e,t){var r={};for(var i in e)t[i]&&t[i].length%2==0?r[i]=t[i].concat(e[i]):r[i]=e[i];return r}(Z,t):Z;return this.getBrowser=function(){var e,t={};return t[d]=n,t[f]=n,H.call(t,r,i.browser),t.major=typeof(e=t.version)===c?e.replace(/[^\d\.]/g,"").split(".")[0]:n,t},this.getCPU=function(){var e={};return e[p]=n,H.call(e,r,i.cpu),e},this.getDevice=function(){var e={};return e[u]=n,e[l]=n,e[h]=n,H.call(e,r,i.device),e},this.getEngine=function(){var e={};return e[d]=n,e[f]=n,H.call(e,r,i.engine),e},this.getOS=function(){var e={};return e[d]=n,e[f]=n,H.call(e,r,i.os),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return r},this.setUA=function(e){return r=typeof e===c&&e.length>350?W(e,350):e,this},this.setUA(r),this};q.VERSION="1.0.33",q.BROWSER=V([d,f,"major"]),q.CPU=V([p]),q.DEVICE=V([l,u,h,m,b,w,g,v,E]),q.ENGINE=q.OS=V([d,f]),typeof t!==s?(e.exports&&(t=e.exports=q),t.UAParser=q):r.amdO?(i=function(){return q}.call(t,r,t,e))===n||(e.exports=i):typeof a!==s&&(a.UAParser=q);var K=typeof a!==s&&(a.jQuery||a.Zepto);if(K&&!K.ua){var $=new q;K.ua=$.getResult(),K.ua.get=function(){return $.getUA()},K.ua.set=function(e){$.setUA(e);var t=$.getResult();for(var r in t)K.ua[r]=t[r]}}}("object"==typeof window?window:this)},276:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});var i=r(477),a=r.n(i);function n(){return a()('(()=>{var e={238:function(e,r,t){var a;!function(i,n){"use strict";var _="function",o="undefined",s="object",c="string",l="model",h="name",u="type",f="vendor",d="version",p="architecture",m="console",b="mobile",w="tablet",v="smarttv",E="wearable",g="embedded",y="Amazon",k="Apple",A="ASUS",z="BlackBerry",N="Browser",R="Chrome",S="Firefox",L="Google",T="Huawei",x="LG",I="Microsoft",P="Motorola",M="Opera",F="Samsung",O="Sharp",C="Sony",j="Xiaomi",B="Zebra",U="Facebook",V=function(e){for(var r={},t=0;t<e.length;t++)r[e[t].toUpperCase()]=e[t];return r},D=function(e,r){return typeof e===c&&-1!==K(r).indexOf(K(e))},K=function(e){return e.toLowerCase()},Z=function(e,r){if(typeof e===c)return e=e.replace(/^\\s\\s*/,""),typeof r===o?e:e.substring(0,350)},G=function(e,r){for(var t,a,i,o,c,l,h=0;h<r.length&&!c;){var u=r[h],f=r[h+1];for(t=a=0;t<u.length&&!c;)if(c=u[t++].exec(e))for(i=0;i<f.length;i++)l=c[++a],typeof(o=f[i])===s&&o.length>0?2===o.length?typeof o[1]==_?this[o[0]]=o[1].call(this,l):this[o[0]]=o[1]:3===o.length?typeof o[1]!==_||o[1].exec&&o[1].test?this[o[0]]=l?l.replace(o[1],o[2]):n:this[o[0]]=l?o[1].call(this,l,o[2]):n:4===o.length&&(this[o[0]]=l?o[3].call(this,l.replace(o[1],o[2])):n):this[o]=l||n;h+=2}},W=function(e,r){for(var t in r)if(typeof r[t]===s&&r[t].length>0){for(var a=0;a<r[t].length;a++)if(D(r[t][a],e))return"?"===t?n:t}else if(D(r[t],e))return"?"===t?n:t;return e},X={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Y={browser:[[/\\b(?:crmo|crios)\\/([\\w\\.]+)/i],[d,[h,"Chrome"]],[/edg(?:e|ios|a)?\\/([\\w\\.]+)/i],[d,[h,"Edge"]],[/(opera mini)\\/([-\\w\\.]+)/i,/(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,/(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i],[h,d],[/opios[\\/ ]+([\\w\\.]+)/i],[d,[h,M+" Mini"]],[/\\bopr\\/([\\w\\.]+)/i],[d,[h,M]],[/(kindle)\\/([\\w\\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,/(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,/(?:ms|\\()(ie) ([\\w\\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,/(weibo)__([\\d\\.]+)/i],[h,d],[/(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i],[d,[h,"UC"+N]],[/microm.+\\bqbcore\\/([\\w\\.]+)/i,/\\bqbcore\\/([\\w\\.]+).+microm/i],[d,[h,"WeChat(Win) Desktop"]],[/micromessenger\\/([\\w\\.]+)/i],[d,[h,"WeChat"]],[/konqueror\\/([\\w\\.]+)/i],[d,[h,"Konqueror"]],[/trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i],[d,[h,"IE"]],[/yabrowser\\/([\\w\\.]+)/i],[d,[h,"Yandex"]],[/(avast|avg)\\/([\\w\\.]+)/i],[[h,/(.+)/,"$1 Secure "+N],d],[/\\bfocus\\/([\\w\\.]+)/i],[d,[h,S+" Focus"]],[/\\bopt\\/([\\w\\.]+)/i],[d,[h,M+" Touch"]],[/coc_coc\\w+\\/([\\w\\.]+)/i],[d,[h,"Coc Coc"]],[/dolfin\\/([\\w\\.]+)/i],[d,[h,"Dolphin"]],[/coast\\/([\\w\\.]+)/i],[d,[h,M+" Coast"]],[/miuibrowser\\/([\\w\\.]+)/i],[d,[h,"MIUI "+N]],[/fxios\\/([-\\w\\.]+)/i],[d,[h,S]],[/\\bqihu|(qi?ho?o?|360)browser/i],[[h,"360 "+N]],[/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i],[[h,/(.+)/,"$1 "+N],d],[/(comodo_dragon)\\/([\\w\\.]+)/i],[[h,/_/g," "],d],[/(electron)\\/([\\w\\.]+) safari/i,/(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i],[h,d],[/(metasr)[\\/ ]?([\\w\\.]+)/i,/(lbbrowser)/i,/\\[(linkedin)app\\]/i],[h],[/((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i],[[h,U],d],[/safari (line)\\/([\\w\\.]+)/i,/\\b(line)\\/([\\w\\.]+)\\/iab/i,/(chromium|instagram)[\\/ ]([-\\w\\.]+)/i],[h,d],[/\\bgsa\\/([\\w\\.]+) .*safari\\//i],[d,[h,"GSA"]],[/headlesschrome(?:\\/([\\w\\.]+)| )/i],[d,[h,R+" Headless"]],[/ wv\\).+(chrome)\\/([\\w\\.]+)/i],[[h,R+" WebView"],d],[/droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i],[d,[h,"Android "+N]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i],[h,d],[/version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i],[d,[h,"Mobile Safari"]],[/version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i],[d,h],[/webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i],[h,[d,W,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\\/([\\w\\.]+)/i],[h,d],[/(navigator|netscape\\d?)\\/([-\\w\\.]+)/i],[[h,"Netscape"],d],[/mobile vr; rv:([\\w\\.]+)\\).+firefox/i],[d,[h,S+" Reality"]],[/ekiohf.+(flow)\\/([\\w\\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,/(firefox)\\/([\\w\\.]+)/i,/(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,/(links) \\(([\\w\\.]+)/i],[h,d],[/(cobalt)\\/([\\w\\.]+)/i],[h,[d,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i],[[p,"amd64"]],[/(ia32(?=;))/i],[[p,K]],[/((?:i[346]|x)86)[;\\)]/i],[[p,"ia32"]],[/\\b(aarch64|arm(v?8e?l?|_?64))\\b/i],[[p,"arm64"]],[/\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i],[[p,"armhf"]],[/windows (ce|mobile); ppc;/i],[[p,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i],[[p,/ower/,"",K]],[/(sun4\\w)[;\\)]/i],[[p,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i],[[p,K]]],device:[[/\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i],[l,[f,F],[u,w]],[/\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,/samsung[- ]([-\\w]+)/i,/sec-(sgh\\w+)/i],[l,[f,F],[u,b]],[/\\((ip(?:hone|od)[\\w ]*);/i],[l,[f,k],[u,b]],[/\\((ipad);[-\\w\\),; ]+apple/i,/applecoremedia\\/[\\w\\.]+ \\((ipad)/i,/\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i],[l,[f,k],[u,w]],[/(macintosh);/i],[l,[f,k]],[/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i],[l,[f,T],[u,w]],[/(?:huawei|honor)([-\\w ]+)[;\\)]/i,/\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i],[l,[f,T],[u,b]],[/\\b(poco[\\w ]+)(?: bui|\\))/i,/\\b; (\\w+) build\\/hm\\1/i,/\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,/\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,/\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i],[[l,/_/g," "],[f,j],[u,b]],[/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i],[[l,/_/g," "],[f,j],[u,w]],[/; (\\w+) bui.+ oppo/i,/\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i],[l,[f,"OPPO"],[u,b]],[/vivo (\\w+)(?: bui|\\))/i,/\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i],[l,[f,"Vivo"],[u,b]],[/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i],[l,[f,"Realme"],[u,b]],[/\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,/\\bmot(?:orola)?[- ](\\w*)/i,/((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i],[l,[f,P],[u,b]],[/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i],[l,[f,P],[u,w]],[/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i],[l,[f,x],[u,w]],[/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,/\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,/\\blg-?([\\d\\w]+) bui/i],[l,[f,x],[u,b]],[/(ideatab[-\\w ]+)/i,/lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i],[l,[f,"Lenovo"],[u,w]],[/(?:maemo|nokia).*(n900|lumia \\d+)/i,/nokia[-_ ]?([-\\w\\.]*)/i],[[l,/_/g," "],[f,"Nokia"],[u,b]],[/(pixel c)\\b/i],[l,[f,L],[u,w]],[/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i],[l,[f,L],[u,b]],[/droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i],[l,[f,C],[u,b]],[/sony tablet [ps]/i,/\\b(?:sony)?sgp\\w+(?: bui|\\))/i],[[l,"Xperia Tablet"],[f,C],[u,w]],[/ (kb2005|in20[12]5|be20[12][59])\\b/i,/(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i],[l,[f,"OnePlus"],[u,b]],[/(alexa)webm/i,/(kf[a-z]{2}wi)( bui|\\))/i,/(kf[a-z]+)( bui|\\)).+silk\\//i],[l,[f,y],[u,w]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i],[[l,/(.+)/g,"Fire Phone $1"],[f,y],[u,b]],[/(playbook);[-\\w\\),; ]+(rim)/i],[l,f,[u,w]],[/\\b((?:bb[a-f]|st[hv])100-\\d)/i,/\\(bb10; (\\w+)/i],[l,[f,z],[u,b]],[/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i],[l,[f,A],[u,w]],[/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i],[l,[f,A],[u,b]],[/(nexus 9)/i],[l,[f,"HTC"],[u,w]],[/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,/(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,/(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i],[f,[l,/_/g," "],[u,b]],[/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i],[l,[f,"Acer"],[u,w]],[/droid.+; (m[1-5] note) bui/i,/\\bmz-([-\\w]{2,})/i],[l,[f,"Meizu"],[u,b]],[/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i],[l,[f,O],[u,b]],[/(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,/(hp) ([\\w ]+\\w)/i,/(asus)-?(\\w+)/i,/(microsoft); (lumia[\\w ]+)/i,/(lenovo)[-_ ]?([-\\w]+)/i,/(jolla)/i,/(oppo) ?([\\w ]+) bui/i],[f,l,[u,b]],[/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\\/([\\w\\.]+)/i,/(nook)[\\w ]+build\\/(\\w+)/i,/(dell) (strea[kpr\\d ]*[\\dko])/i,/(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,/(trinity)[- ]*(t\\d{3}) bui/i,/(gigaset)[- ]+(q\\w{1,9}) bui/i,/(vodafone) ([\\w ]+)(?:\\)| bui)/i],[f,l,[u,w]],[/(surface duo)/i],[l,[f,I],[u,w]],[/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i],[l,[f,"Fairphone"],[u,b]],[/(u304aa)/i],[l,[f,"AT&T"],[u,b]],[/\\bsie-(\\w*)/i],[l,[f,"Siemens"],[u,b]],[/\\b(rct\\w+) b/i],[l,[f,"RCA"],[u,w]],[/\\b(venue[\\d ]{2,7}) b/i],[l,[f,"Dell"],[u,w]],[/\\b(q(?:mv|ta)\\w+) b/i],[l,[f,"Verizon"],[u,w]],[/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i],[l,[f,"Barnes & Noble"],[u,w]],[/\\b(tm\\d{3}\\w+) b/i],[l,[f,"NuVision"],[u,w]],[/\\b(k88) b/i],[l,[f,"ZTE"],[u,w]],[/\\b(nx\\d{3}j) b/i],[l,[f,"ZTE"],[u,b]],[/\\b(gen\\d{3}) b.+49h/i],[l,[f,"Swiss"],[u,b]],[/\\b(zur\\d{3}) b/i],[l,[f,"Swiss"],[u,w]],[/\\b((zeki)?tb.*\\b) b/i],[l,[f,"Zeki"],[u,w]],[/\\b([yr]\\d{2}) b/i,/\\b(dragon[- ]+touch |dt)(\\w{5}) b/i],[[f,"Dragon Touch"],l,[u,w]],[/\\b(ns-?\\w{0,9}) b/i],[l,[f,"Insignia"],[u,w]],[/\\b((nxa|next)-?\\w{0,9}) b/i],[l,[f,"NextBook"],[u,w]],[/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[f,"Voice"],l,[u,b]],[/\\b(lvtel\\-)?(v1[12]) b/i],[[f,"LvTel"],l,[u,b]],[/\\b(ph-1) /i],[l,[f,"Essential"],[u,b]],[/\\b(v(100md|700na|7011|917g).*\\b) b/i],[l,[f,"Envizen"],[u,w]],[/\\b(trio[-\\w\\. ]+) b/i],[l,[f,"MachSpeed"],[u,w]],[/\\btu_(1491) b/i],[l,[f,"Rotor"],[u,w]],[/(shield[\\w ]+) b/i],[l,[f,"Nvidia"],[u,w]],[/(sprint) (\\w+)/i],[f,l,[u,b]],[/(kin\\.[onetw]{3})/i],[[l,/\\./g," "],[f,I],[u,b]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i],[l,[f,B],[u,w]],[/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i],[l,[f,B],[u,b]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[f,l,[u,m]],[/droid.+; (shield) bui/i],[l,[f,"Nvidia"],[u,m]],[/(playstation [345portablevi]+)/i],[l,[f,C],[u,m]],[/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i],[l,[f,I],[u,m]],[/smart-tv.+(samsung)/i],[f,[u,v]],[/hbbtv.+maple;(\\d+)/i],[[l,/^/,"SmartTV"],[f,F],[u,v]],[/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i],[[f,x],[u,v]],[/(apple) ?tv/i],[f,[l,k+" TV"],[u,v]],[/crkey/i],[[l,R+"cast"],[f,L],[u,v]],[/droid.+aft(\\w)( bui|\\))/i],[l,[f,y],[u,v]],[/\\(dtv[\\);].+(aquos)/i,/(aquos-tv[\\w ]+)\\)/i],[l,[f,O],[u,v]],[/(bravia[\\w ]+)( bui|\\))/i],[l,[f,C],[u,v]],[/(mitv-\\w{5}) bui/i],[l,[f,j],[u,v]],[/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,/hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i],[[f,Z],[l,Z],[u,v]],[/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i],[[u,v]],[/((pebble))app/i],[f,l,[u,E]],[/droid.+; (glass) \\d/i],[l,[f,L],[u,E]],[/droid.+; (wt63?0{2,3})\\)/i],[l,[f,B],[u,E]],[/(quest( 2)?)/i],[l,[f,U],[u,E]],[/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i],[f,[u,g]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i],[l,[u,b]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i],[l,[u,w]],[/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i],[[u,w]],[/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i],[[u,b]],[/(android[-\\w\\. ]{0,9});.+buil/i],[l,[f,"Generic"]]],engine:[[/windows.+ edge\\/([\\w\\.]+)/i],[d,[h,"EdgeHTML"]],[/webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i],[d,[h,"Blink"]],[/(presto)\\/([\\w\\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,/ekioh(flow)\\/([\\w\\.]+)/i,/(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,/(icab)[\\/ ]([23]\\.[\\d\\.]+)/i],[h,d],[/rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i],[d,h]],os:[[/microsoft (windows) (vista|xp)/i],[h,d],[/(windows) nt 6\\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,/(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i],[h,[d,W,X]],[/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i],[[h,"Windows"],[d,W,X]],[/ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,/cfnetwork\\/.+darwin/i],[[d,/_/g,"."],[h,"iOS"]],[/(mac os x) ?([\\w\\. ]*)/i,/(macintosh|mac_powerpc\\b)(?!.+haiku)/i],[[h,"Mac OS"],[d,/_/g,"."]],[/droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i],[d,h],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,/(blackberry)\\w*\\/([\\w\\.]*)/i,/(tizen|kaios)[\\/ ]([\\w\\.]+)/i,/\\((series40);/i],[h,d],[/\\(bb(10);/i],[d,[h,z]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i],[d,[h,"Symbian"]],[/mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i],[d,[h,S+" OS"]],[/web0s;.+rt(tv)/i,/\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i],[d,[h,"webOS"]],[/crkey\\/([\\d\\.]+)/i],[d,[h,R+"cast"]],[/(cros) [\\w]+ ([\\w\\.]+\\w)/i],[[h,"Chromium OS"],d],[/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\\);]+)/i,/\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,/(mint)[\\/\\(\\) ]?(\\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,/(hurd|linux) ?([\\w\\.]*)/i,/(gnu) ?([\\w\\.]*)/i,/\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,/(haiku) (\\w+)/i],[h,d],[/(sunos) ?([\\w\\.\\d]*)/i],[[h,"Solaris"],d],[/((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,/(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,/\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,/(unix) ?([\\w\\.]*)/i],[h,d]]},H=function(e,r){if(typeof e===s&&(r=e,e=n),!(this instanceof H))return new H(e,r).getResult();var t=e||(typeof i!==o&&i.navigator&&i.navigator.userAgent?i.navigator.userAgent:""),a=r?function(e,r){var t={};for(var a in e)r[a]&&r[a].length%2==0?t[a]=r[a].concat(e[a]):t[a]=e[a];return t}(Y,r):Y;return this.getBrowser=function(){var e,r={};return r[h]=n,r[d]=n,G.call(r,t,a.browser),r.major=typeof(e=r.version)===c?e.replace(/[^\\d\\.]/g,"").split(".")[0]:n,r},this.getCPU=function(){var e={};return e[p]=n,G.call(e,t,a.cpu),e},this.getDevice=function(){var e={};return e[f]=n,e[l]=n,e[u]=n,G.call(e,t,a.device),e},this.getEngine=function(){var e={};return e[h]=n,e[d]=n,G.call(e,t,a.engine),e},this.getOS=function(){var e={};return e[h]=n,e[d]=n,G.call(e,t,a.os),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return t},this.setUA=function(e){return t=typeof e===c&&e.length>350?Z(e,350):e,this},this.setUA(t),this};H.VERSION="1.0.33",H.BROWSER=V([h,d,"major"]),H.CPU=V([p]),H.DEVICE=V([l,f,u,m,b,v,w,E,g]),H.ENGINE=H.OS=V([h,d]),typeof r!==o?(e.exports&&(r=e.exports=H),r.UAParser=H):t.amdO?(a=function(){return H}.call(r,t,r,e))===n||(e.exports=a):typeof i!==o&&(i.UAParser=H);var q=typeof i!==o&&(i.jQuery||i.Zepto);if(q&&!q.ua){var $=new H;q.ua=$.getResult(),q.ua.get=function(){return $.getUA()},q.ua.set=function(e){$.setUA(e);var r=$.getResult();for(var t in r)q.ua[t]=r[t]}}}("object"==typeof window?window:this)},751:(e,r,t)=>{"use strict";e.exports=t.p+"7e63bec626d6ccda2134.wasm"}},r={};function t(a){var i=r[a];if(void 0!==i)return i.exports;var n=r[a]={exports:{}};return e[a].call(n.exports,n,n.exports,t),n.exports}t.m=e,t.amdO={},t.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),t.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),(()=>{var e;t.g.importScripts&&(e=t.g.location+"");var r=t.g.document;if(!e&&r&&(r.currentScript&&(e=r.currentScript.src),!e)){var a=r.getElementsByTagName("script");if(a.length)for(var i=a.length-1;i>-1&&!e;)e=a[i--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\\?.*$/,"").replace(/\\/[^\\/]+$/,"/"),t.p=e})(),t.b=self.location+"",(()=>{"use strict";var e;const r=(e="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(r={}){var t,a,i=r;i.ready=new Promise(((e,r)=>{t=e,a=r}));var n,_=Object.assign({},i),o="./this.program",s=(e,r)=>{throw r},c="";c=self.location.href,e&&(c=e),c=c.startsWith("blob:")?"":c.substr(0,c.replace(/[?#].*/,"").lastIndexOf("/")+1),n=e=>{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)};var l,h=i.print||console.log.bind(console),u=i.printErr||console.error.bind(console);Object.assign(i,_),_=null,i.thisProgram&&(o=i.thisProgram),i.quit&&(s=i.quit),i.wasmBinary&&(l=i.wasmBinary),"object"!=typeof WebAssembly&&C("no native wasm support detected");var f,d,p,m,b,w,v,E,g,y,k=!1;function A(){var e=f.buffer;i.HEAP8=p=new Int8Array(e),i.HEAP16=b=new Int16Array(e),i.HEAPU8=m=new Uint8Array(e),i.HEAPU16=w=new Uint16Array(e),i.HEAP32=v=new Int32Array(e),i.HEAPU32=E=new Uint32Array(e),i.HEAPF32=g=new Float32Array(e),i.HEAPF64=y=new Float64Array(e)}var z=[],N=[],R=[];function S(){var e=i.preRun.shift();z.unshift(e)}var L,T,x,I=0,P=null,M=null;function F(){I++,i.monitorRunDependencies?.(I)}function O(){if(I--,i.monitorRunDependencies?.(I),0==I&&(null!==P&&(clearInterval(P),P=null),M)){var e=M;M=null,e()}}function C(e){throw i.onAbort?.(e),u(e="Aborted("+e+")"),k=!0,d=1,e=new WebAssembly.RuntimeError(e+". Build with -sASSERTIONS for more info."),a(e),e}if(!(L="zappar-cv.wasm").startsWith("data:application/octet-stream;base64,")){var j=L;L=i.locateFile?i.locateFile(j,c):c+j}function B(e){this.name="ExitStatus",this.message=`Program terminated with exit(${e})`,this.status=e}var U=e=>{for(;0<e.length;)e.shift()(i)},V=i.noExitRuntime||!0,D=[],K=0,Z=0;class G{constructor(e){this.ai=e,this.Qh=e-24}}var W=e=>{var r=Z;if(!r)return ut(0),0;var t=new G(r);E[t.Qh+16>>2]=r;var a=E[t.Qh+4>>2];if(!a)return ut(0),r;for(var i in e){var n=e[i];if(0===n||n===a)break;if(wt(n,a,t.Qh+16))return ut(n),r}return ut(a),r},X=()=>{var e=D.pop();e||C("no exception to throw");var r=e.ai;throw 0==p[e.Qh+13>>0]&&(D.push(e),p[e.Qh+13>>0]=1,p[e.Qh+12>>0]=0,K++),Z=r},Y=(e,r)=>{for(var t=0,a=e.length-1;0<=a;a--){var i=e[a];"."===i?e.splice(a,1):".."===i?(e.splice(a,1),t++):t&&(e.splice(a,1),t--)}if(r)for(;t;t--)e.unshift("..");return e},H=e=>{var r="/"===e.charAt(0),t="/"===e.substr(-1);return(e=Y(e.split("/").filter((e=>!!e)),!r).join("/"))||r||(e="."),e&&t&&(e+="/"),(r?"/":"")+e},q=e=>{var r=/^(\\/?|)([\\s\\S]*?)((?:\\.{1,2}|[^\\/]+?|)(\\.[^.\\/]*|))(?:[\\/]*)$/.exec(e).slice(1);return e=r[0],r=r[1],e||r?(r&&=r.substr(0,r.length-1),e+r):"."},$=e=>{if("/"===e)return"/";var r=(e=(e=H(e)).replace(/\\/$/,"")).lastIndexOf("/");return-1===r?e:e.substr(r+1)},Q=e=>(Q=(()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return e=>crypto.getRandomValues(e);C("initRandomDevice")})())(e);function J(){for(var e="",r=!1,t=arguments.length-1;-1<=t&&!r;t--){if("string"!=typeof(r=0<=t?arguments[t]:"/"))throw new TypeError("Arguments to path.resolve must be strings");if(!r)return"";e=r+"/"+e,r="/"===r.charAt(0)}return(r?"/":"")+(e=Y(e.split("/").filter((e=>!!e)),!r).join("/"))||"."}var ee="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,re=(e,r,t)=>{var a=r+t;for(t=r;e[t]&&!(t>=a);)++t;if(16<t-r&&e.buffer&&ee)return ee.decode(e.subarray(r,t));for(a="";r<t;){var i=e[r++];if(128&i){var n=63&e[r++];if(192==(224&i))a+=String.fromCharCode((31&i)<<6|n);else{var _=63&e[r++];65536>(i=224==(240&i)?(15&i)<<12|n<<6|_:(7&i)<<18|n<<12|_<<6|63&e[r++])?a+=String.fromCharCode(i):(i-=65536,a+=String.fromCharCode(55296|i>>10,56320|1023&i))}}else a+=String.fromCharCode(i)}return a},te=[],ae=e=>{for(var r=0,t=0;t<e.length;++t){var a=e.charCodeAt(t);127>=a?r++:2047>=a?r+=2:55296<=a&&57343>=a?(r+=4,++t):r+=3}return r},ie=(e,r,t,a)=>{if(!(0<a))return 0;var i=t;a=t+a-1;for(var n=0;n<e.length;++n){var _=e.charCodeAt(n);if(55296<=_&&57343>=_&&(_=65536+((1023&_)<<10)|1023&e.charCodeAt(++n)),127>=_){if(t>=a)break;r[t++]=_}else{if(2047>=_){if(t+1>=a)break;r[t++]=192|_>>6}else{if(65535>=_){if(t+2>=a)break;r[t++]=224|_>>12}else{if(t+3>=a)break;r[t++]=240|_>>18,r[t++]=128|_>>12&63}r[t++]=128|_>>6&63}r[t++]=128|63&_}}return r[t]=0,t-i};function ne(e,r){var t=Array(ae(e)+1);return e=ie(e,t,0,t.length),r&&(t.length=e),t}var _e=[];function oe(e,r){_e[e]={input:[],Rh:[],Zh:r},je(e,se)}var se={open(e){var r=_e[e.node.ji];if(!r)throw new ge(43);e.Oh=r,e.seekable=!1},close(e){e.Oh.Zh.ni(e.Oh)},ni(e){e.Oh.Zh.ni(e.Oh)},read(e,r,t,a){if(!e.Oh||!e.Oh.Zh.Di)throw new ge(60);for(var i=0,n=0;n<a;n++){try{var _=e.Oh.Zh.Di(e.Oh)}catch(e){throw new ge(29)}if(void 0===_&&0===i)throw new ge(6);if(null==_)break;i++,r[t+n]=_}return i&&(e.node.timestamp=Date.now()),i},write(e,r,t,a){if(!e.Oh||!e.Oh.Zh.yi)throw new ge(60);try{for(var i=0;i<a;i++)e.Oh.Zh.yi(e.Oh,r[t+i])}catch(e){throw new ge(29)}return a&&(e.node.timestamp=Date.now()),i}},ce={Di(){e:{if(!te.length){var e=null;if("undefined"!=typeof window&&"function"==typeof window.prompt?null!==(e=window.prompt("Input: "))&&(e+="\\n"):"function"==typeof readline&&null!==(e=readline())&&(e+="\\n"),!e){e=null;break e}te=ne(e,!0)}e=te.shift()}return e},yi(e,r){null===r||10===r?(h(re(e.Rh,0)),e.Rh=[]):0!=r&&e.Rh.push(r)},ni(e){e.Rh&&0<e.Rh.length&&(h(re(e.Rh,0)),e.Rh=[])},Ti:()=>({jj:25856,lj:5,ij:191,kj:35387,hj:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}),Ui:()=>0,Vi:()=>[24,80]},le={yi(e,r){null===r||10===r?(u(re(e.Rh,0)),e.Rh=[]):0!=r&&e.Rh.push(r)},ni(e){e.Rh&&0<e.Rh.length&&(u(re(e.Rh,0)),e.Rh=[])}};function he(e,r){var t=e.Mh?e.Mh.length:0;t>=r||(r=Math.max(r,t*(1048576>t?2:1.125)>>>0),0!=t&&(r=Math.max(r,256)),t=e.Mh,e.Mh=new Uint8Array(r),0<e.Ph&&e.Mh.set(t.subarray(0,e.Ph),0))}var ue={Vh:null,Yh:()=>ue.createNode(null,"/",16895,0),createNode(e,r,t,a){if(24576==(61440&t)||4096==(61440&t))throw new ge(63);return ue.Vh||(ue.Vh={dir:{node:{Uh:ue.Lh.Uh,Wh:ue.Lh.Wh,ii:ue.Lh.ii,oi:ue.Lh.oi,Ii:ue.Lh.Ii,vi:ue.Lh.vi,ri:ue.Lh.ri,pi:ue.Lh.pi,si:ue.Lh.si},stream:{ci:ue.Nh.ci}},file:{node:{Uh:ue.Lh.Uh,Wh:ue.Lh.Wh},stream:{ci:ue.Nh.ci,read:ue.Nh.read,write:ue.Nh.write,li:ue.Nh.li,Fi:ue.Nh.Fi,Hi:ue.Nh.Hi}},link:{node:{Uh:ue.Lh.Uh,Wh:ue.Lh.Wh,ki:ue.Lh.ki},stream:{}},Bi:{node:{Uh:ue.Lh.Uh,Wh:ue.Lh.Wh},stream:Ce}}),Le((t=Se(e,r,t,a)).mode)?(t.Lh=ue.Vh.dir.node,t.Nh=ue.Vh.dir.stream,t.Mh={}):32768==(61440&t.mode)?(t.Lh=ue.Vh.file.node,t.Nh=ue.Vh.file.stream,t.Ph=0,t.Mh=null):40960==(61440&t.mode)?(t.Lh=ue.Vh.link.node,t.Nh=ue.Vh.link.stream):8192==(61440&t.mode)&&(t.Lh=ue.Vh.Bi.node,t.Nh=ue.Vh.Bi.stream),t.timestamp=Date.now(),e&&(e.Mh[r]=t,e.timestamp=t.timestamp),t},qj:e=>e.Mh?e.Mh.subarray?e.Mh.subarray(0,e.Ph):new Uint8Array(e.Mh):new Uint8Array(0),Lh:{Uh(e){var r={};return r.Ni=8192==(61440&e.mode)?e.id:1,r.Ei=e.id,r.mode=e.mode,r.Zi=1,r.uid=0,r.Pi=0,r.ji=e.ji,Le(e.mode)?r.size=4096:32768==(61440&e.mode)?r.size=e.Ph:40960==(61440&e.mode)?r.size=e.link.length:r.size=0,r.Ji=new Date(e.timestamp),r.Yi=new Date(e.timestamp),r.Mi=new Date(e.timestamp),r.Ki=4096,r.Li=Math.ceil(r.size/r.Ki),r},Wh(e,r){if(void 0!==r.mode&&(e.mode=r.mode),void 0!==r.timestamp&&(e.timestamp=r.timestamp),void 0!==r.size&&(r=r.size,e.Ph!=r))if(0==r)e.Mh=null,e.Ph=0;else{var t=e.Mh;e.Mh=new Uint8Array(r),t&&e.Mh.set(t.subarray(0,Math.min(r,e.Ph))),e.Ph=r}},ii(){throw ye[44]},oi:(e,r,t,a)=>ue.createNode(e,r,t,a),Ii(e,r,t){if(Le(e.mode)){try{var a=Re(r,t)}catch(e){}if(a)for(var i in a.Mh)throw new ge(55)}delete e.parent.Mh[e.name],e.parent.timestamp=Date.now(),e.name=t,r.Mh[t]=e,r.timestamp=e.parent.timestamp,e.parent=r},vi(e,r){delete e.Mh[r],e.timestamp=Date.now()},ri(e,r){var t,a=Re(e,r);for(t in a.Mh)throw new ge(55);delete e.Mh[r],e.timestamp=Date.now()},pi(e){var r,t=[".",".."];for(r of Object.keys(e.Mh))t.push(r);return t},si:(e,r,t)=>((e=ue.createNode(e,r,41471,0)).link=t,e),ki(e){if(40960!=(61440&e.mode))throw new ge(28);return e.link}},Nh:{read(e,r,t,a,i){var n=e.node.Mh;if(i>=e.node.Ph)return 0;if(8<(e=Math.min(e.node.Ph-i,a))&&n.subarray)r.set(n.subarray(i,i+e),t);else for(a=0;a<e;a++)r[t+a]=n[i+a];return e},write(e,r,t,a,i,n){if(r.buffer===p.buffer&&(n=!1),!a)return 0;if((e=e.node).timestamp=Date.now(),r.subarray&&(!e.Mh||e.Mh.subarray)){if(n)return e.Mh=r.subarray(t,t+a),e.Ph=a;if(0===e.Ph&&0===i)return e.Mh=r.slice(t,t+a),e.Ph=a;if(i+a<=e.Ph)return e.Mh.set(r.subarray(t,t+a),i),a}if(he(e,i+a),e.Mh.subarray&&r.subarray)e.Mh.set(r.subarray(t,t+a),i);else for(n=0;n<a;n++)e.Mh[i+n]=r[t+n];return e.Ph=Math.max(e.Ph,i+a),a},ci(e,r,t){if(1===t?r+=e.position:2===t&&32768==(61440&e.node.mode)&&(r+=e.node.Ph),0>r)throw new ge(28);return r},li(e,r,t){he(e.node,r+t),e.node.Ph=Math.max(e.node.Ph,r+t)},Fi(e,r,t,a,i){if(32768!=(61440&e.node.mode))throw new ge(43);if(e=e.node.Mh,2&i||e.buffer!==p.buffer){if((0<t||t+r<e.length)&&(e=e.subarray?e.subarray(t,t+r):Array.prototype.slice.call(e,t,t+r)),t=!0,C(),!(r=void 0))throw new ge(48);p.set(e,r)}else t=!1,r=e.byteOffset;return{Qh:r,fi:t}},Hi:(e,r,t,a)=>(ue.Nh.write(e,r,0,a,t,!1),0)}},fe=i.preloadPlugins||[],de=(e,r)=>{var t=0;return e&&(t|=365),r&&(t|=146),t},pe=null,me={},be=[],we=1,ve=null,Ee=!0,ge=class{constructor(e){this.name="ErrnoError",this.Sh=e}},ye={};function ke(e,r={}){if(!(e=J(e)))return{path:"",node:null};if(8<(r=Object.assign({Ci:!0,zi:0},r)).zi)throw new ge(32);e=e.split("/").filter((e=>!!e));for(var t=pe,a="/",i=0;i<e.length;i++){var n=i===e.length-1;if(n&&r.parent)break;if(t=Re(t,e[i]),a=H(a+"/"+e[i]),t.gi&&(!n||n&&r.Ci)&&(t=t.gi.root),!n||r.mi)for(n=0;40960==(61440&t.mode);)if(t=Ze(a),t=ke(a=J(q(a),t),{zi:r.zi+1}).node,40<n++)throw new ge(32)}return{path:a,node:t}}function Ae(e){for(var r;;){if(e===e.parent)return e=e.Yh.Gi,r?"/"!==e[e.length-1]?`${e}/${r}`:e+r:e;r=r?`${e.name}/${r}`:e.name,e=e.parent}}function ze(e,r){for(var t=0,a=0;a<r.length;a++)t=(t<<5)-t+r.charCodeAt(a)|0;return(e+t>>>0)%ve.length}function Ne(e){var r=ze(e.parent.id,e.name);if(ve[r]===e)ve[r]=e.hi;else for(r=ve[r];r;){if(r.hi===e){r.hi=e.hi;break}r=r.hi}}function Re(e,r){var t=Le(e.mode)?(t=xe(e,"x"))?t:e.Lh.ii?0:2:54;if(t)throw new ge(t);for(t=ve[ze(e.id,r)];t;t=t.hi){var a=t.name;if(t.parent.id===e.id&&a===r)return t}return e.Lh.ii(e,r)}function Se(e,r,t,a){return r=ze((e=new it(e,r,t,a)).parent.id,e.name),e.hi=ve[r],ve[r]=e}function Le(e){return 16384==(61440&e)}function Te(e){var r=["r","w","rw"][3&e];return 512&e&&(r+="w"),r}function xe(e,r){return Ee?0:!r.includes("r")||292&e.mode?r.includes("w")&&!(146&e.mode)||r.includes("x")&&!(73&e.mode)?2:0:2}function Ie(e,r){try{return Re(e,r),20}catch(e){}return xe(e,"wx")}function Pe(e,r,t){try{var a=Re(e,r)}catch(e){return e.Sh}if(e=xe(e,"wx"))return e;if(t){if(!Le(a.mode))return 54;if(a===a.parent||"/"===Ae(a))return 10}else if(Le(a.mode))return 31;return 0}function Me(e){if(!(e=be[e]))throw new ge(8);return e}function Fe(e,r=-1){return He||((He=function(){this.Th={}}).prototype={},Object.defineProperties(He.prototype,{object:{get(){return this.node},set(e){this.node=e}},flags:{get(){return this.Th.flags},set(e){this.Th.flags=e}},position:{get(){return this.Th.position},set(e){this.Th.position=e}}})),e=Object.assign(new He,e),-1==r&&(r=function(){for(var e=0;4096>=e;e++)if(!be[e])return e;throw new ge(33)}()),e.$h=r,be[r]=e}var Oe,Ce={open(e){e.Nh=me[e.node.ji].Nh,e.Nh.open?.(e)},ci(){throw new ge(70)}};function je(e,r){me[e]={Nh:r}}function Be(e,r){var t="/"===r;if(t&&pe)throw new ge(10);if(!t&&r){var a=ke(r,{Ci:!1});if(r=a.path,(a=a.node).gi)throw new ge(10);if(!Le(a.mode))throw new ge(54)}r={type:e,uj:{},Gi:r,Xi:[]},(e=e.Yh(r)).Yh=r,r.root=e,t?pe=e:a&&(a.gi=r,a.Yh&&a.Yh.Xi.push(r))}function Ue(e,r,t){var a=ke(e,{parent:!0}).node;if(!(e=$(e))||"."===e||".."===e)throw new ge(28);var i=Ie(a,e);if(i)throw new ge(i);if(!a.Lh.oi)throw new ge(63);return a.Lh.oi(a,e,r,t)}function Ve(e){return Ue(e,16895,0)}function De(e,r,t){void 0===t&&(t=r,r=438),Ue(e,8192|r,t)}function Ke(e,r){if(!J(e))throw new ge(44);var t=ke(r,{parent:!0}).node;if(!t)throw new ge(44);var a=Ie(t,r=$(r));if(a)throw new ge(a);if(!t.Lh.si)throw new ge(63);t.Lh.si(t,r,e)}function Ze(e){if(!(e=ke(e).node))throw new ge(44);if(!e.Lh.ki)throw new ge(28);return J(Ae(e.parent),e.Lh.ki(e))}function Ge(e,r,t){if(""===e)throw new ge(44);if("string"==typeof r){var a={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[r];if(void 0===a)throw Error(`Unknown file open mode: ${r}`);r=a}if(t=64&r?4095&(void 0===t?438:t)|32768:0,"object"==typeof e)var n=e;else{e=H(e);try{n=ke(e,{mi:!(131072&r)}).node}catch(e){}}if(a=!1,64&r)if(n){if(128&r)throw new ge(20)}else n=Ue(e,t,0),a=!0;if(!n)throw new ge(44);if(8192==(61440&n.mode)&&(r&=-513),65536&r&&!Le(n.mode))throw new ge(54);if(!a&&(t=n?40960==(61440&n.mode)?32:Le(n.mode)&&("r"!==Te(r)||512&r)?31:xe(n,Te(r)):44))throw new ge(t);if(512&r&&!a){if(!(t="string"==typeof(t=n)?ke(t,{mi:!0}).node:t).Lh.Wh)throw new ge(63);if(Le(t.mode))throw new ge(31);if(32768!=(61440&t.mode))throw new ge(28);if(a=xe(t,"w"))throw new ge(a);t.Lh.Wh(t,{size:0,timestamp:Date.now()})}return r&=-131713,(n=Fe({node:n,path:Ae(n),flags:r,seekable:!0,position:0,Nh:n.Nh,dj:[],error:!1})).Nh.open&&n.Nh.open(n),!i.logReadFiles||1&r||(qe||={},e in qe||(qe[e]=1)),n}function We(e,r,t){if(null===e.$h)throw new ge(8);if(!e.seekable||!e.Nh.ci)throw new ge(70);if(0!=t&&1!=t&&2!=t)throw new ge(28);return e.position=e.Nh.ci(e,r,t),e.dj=[],e.position}function Xe(e,r,t){e=H("/dev/"+e);var a=de(!!r,!!t);Ye||=64;var i=Ye++<<8|0;je(i,{open(e){e.seekable=!1},close(){t?.buffer?.length&&t(10)},read(e,t,a,i){for(var n=0,_=0;_<i;_++){try{var o=r()}catch(e){throw new ge(29)}if(void 0===o&&0===n)throw new ge(6);if(null==o)break;n++,t[a+_]=o}return n&&(e.node.timestamp=Date.now()),n},write(e,r,a,i){for(var n=0;n<i;n++)try{t(r[a+n])}catch(e){throw new ge(29)}return i&&(e.node.timestamp=Date.now()),n}}),De(e,a,i)}var Ye,He,qe,$e={},Qe=(e,r)=>e?re(m,e,r):"";function Je(e,r){if("/"===r.charAt(0))return r;if(e=-100===e?"/":Me(e).path,0==r.length)throw new ge(44);return H(e+"/"+r)}var er=void 0;function rr(){var e=v[+er>>2];return er+=4,e}var tr,ar=e=>0==e%4&&(0!=e%100||0==e%400),ir=[0,31,60,91,121,152,182,213,244,274,305,335],nr=[0,31,59,90,120,151,181,212,243,273,304,334],_r=e=>{var r=ae(e)+1,t=ct(r);return t&&ie(e,m,t,r),t},or=e=>{d=e,V||(i.onExit?.(e),k=!0),s(e,new B(e))},sr=e=>{if(!k)try{if(e(),!V)try{d=e=d,or(e)}catch(e){e instanceof B||"unwind"==e||s(1,e)}}catch(e){e instanceof B||"unwind"==e||s(1,e)}},cr=(e,r)=>{setTimeout((()=>{sr(e)}),r)};tr=()=>performance.now();var lr,hr,ur,fr=!1,dr=null,pr=0,mr=null,br=0,wr=0,vr=0,Er=[],gr={},yr=!1,kr=!1,Ar=[],zr=!1,Nr=void 0,Rr=void 0;function Sr(){return!!yr&&((document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]),!0)}var Lr=0;function Tr(e){if("function"==typeof requestAnimationFrame)requestAnimationFrame(e);else{var r=Date.now();if(0===Lr)Lr=r+1e3/60;else for(;r+2>=Lr;)Lr+=1e3/60;setTimeout(e,Math.max(Lr-r,0))}}function xr(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]}var Ir=[];function Pr(){var e=i.canvas;Ir.forEach((r=>r(e.width,e.height)))}function Mr(e,r,t){r&&t?(e.ej=r,e.Qi=t):(r=e.ej,t=e.Qi);var a=r,n=t;if(i.forcedAspectRatio&&0<i.forcedAspectRatio&&(a/n<i.forcedAspectRatio?a=Math.round(n*i.forcedAspectRatio):n=Math.round(a/i.forcedAspectRatio)),(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var _=Math.min(screen.width/a,screen.height/n);a=Math.round(a*_),n=Math.round(n*_)}Rr?(e.width!=a&&(e.width=a),e.height!=n&&(e.height=n),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=r&&(e.width=r),e.height!=t&&(e.height=t),void 0!==e.style&&(a!=r||n!=t?(e.style.setProperty("width",a+"px","important"),e.style.setProperty("height",n+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))}var Fr,Or,Cr,jr,Br,Ur=[],Vr=e=>{var r=Ur[e];return r||(e>=Ur.length&&(Ur.length=e+1),Ur[e]=r=Cr.get(e)),r};function Dr(e,r,t,a,i){function n(){var r=0,t=0;y.response&&v&&0===E[e+12>>2]&&(t=y.response.byteLength),0<t&&(r=ct(t),m.set(new Uint8Array(y.response),r)),E[e+12>>2]=r,Kr(e+16,t),Kr(e+24,0),(r=y.response?y.response.byteLength:0)&&Kr(e+32,r),w[e+40>>1]=y.readyState,w[e+42>>1]=y.status,y.statusText&&ie(y.statusText,m,e+44,64)}var _=E[e+8>>2];if(_){var o=_?re(m,_):"",s=e+112,c=Qe(s+0);c||="GET";var l=E[s+56>>2],h=E[s+68>>2],u=E[s+72>>2];_=E[s+76>>2];var f=E[s+80>>2],d=E[s+84>>2],p=E[s+88>>2],b=E[s+52>>2],v=!!(1&b),g=!!(2&b);b=!!(64&b),h=h?h?re(m,h):"":void 0,u=u?u?re(m,u):"":void 0;var y=new XMLHttpRequest;if(y.withCredentials=!!m[s+60>>0],y.open(c,o,!b,h,u),b||(y.timeout=l),y.Th=o,y.responseType="arraybuffer",f&&(o=f?re(m,f):"",y.overrideMimeType(o)),_)for(;(s=E[_>>2])&&(o=E[_+4>>2]);)_+=8,s=s?re(m,s):"",o=o?re(m,o):"",y.setRequestHeader(s,o);var k=jr.li(y);E[e>>2]=k,_=d&&p?m.slice(d,d+p):null,y.onload=a=>{jr.has(k)&&(n(),200<=y.status&&300>y.status?r?.(e,y,a):t?.(e,y,a))},y.onerror=r=>{jr.has(k)&&(n(),t?.(e,y,r))},y.ontimeout=r=>{jr.has(k)&&t?.(e,y,r)},y.onprogress=r=>{if(jr.has(k)){var t=v&&g&&y.response?y.response.byteLength:0,i=0;0<t&&v&&g&&(i=ct(t),m.set(new Uint8Array(y.response),i)),E[e+12>>2]=i,Kr(e+16,t),Kr(e+24,r.loaded-t),Kr(e+32,r.total),w[e+40>>1]=y.readyState,3<=y.readyState&&0===y.status&&0<r.loaded&&(y.status=200),w[e+42>>1]=y.status,y.statusText&&ie(y.statusText,m,e+44,64),a?.(e,y,r),i&&st(i)}},y.onreadystatechange=r=>{jr.has(k)&&(w[e+40>>1]=y.readyState,2<=y.readyState&&(w[e+42>>1]=y.status),i?.(e,y,r))};try{y.send(_)}catch(r){t?.(e,y,r)}}else t(e,0,"no url specified!")}var Kr=(e,r)=>{E[e>>2]=r,E[e+4>>2]=(r-E[e>>2])/4294967296};function Zr(e,r,t,a){var i=Br;if(i){var n=E[e+112+64>>2];n||=E[e+8>>2];var _=n?re(m,n):"";try{var o=i.transaction(["FILES"],"readwrite").objectStore("FILES").put(r,_);o.onsuccess=()=>{w[e+40>>1]=4,w[e+42>>1]=200,ie("OK",m,e+44,64),t(e,0,_)},o.onerror=r=>{w[e+40>>1]=4,w[e+42>>1]=413,ie("Payload Too Large",m,e+44,64),a(e,0,r)}}catch(r){a(e,0,r)}}else a(e,0,"IndexedDB not available!")}var Gr,Wr,Xr,Yr={},Hr=()=>{if(!Gr){var e,r={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:o||"./this.program"};for(e in Yr)void 0===Yr[e]?delete r[e]:r[e]=Yr[e];var t=[];for(e in r)t.push(`${e}=${r[e]}`);Gr=t}return Gr},qr=1,$r=[],Qr=[],Jr=e=>{for(var r=qr++,t=e.length;t<r;t++)e[t]=null;return r},et=e=>{if(e||=Xr,!e.Ri){e.Ri=!0;var r=e.wi;(e=>{var r=e.getExtension("ANGLE_instanced_arrays");r&&(e.vertexAttribDivisor=(e,t)=>r.vertexAttribDivisorANGLE(e,t),e.drawArraysInstanced=(e,t,a,i)=>r.drawArraysInstancedANGLE(e,t,a,i),e.drawElementsInstanced=(e,t,a,i,n)=>r.drawElementsInstancedANGLE(e,t,a,i,n))})(r),(e=>{var r=e.getExtension("OES_vertex_array_object");r&&(e.createVertexArray=()=>r.createVertexArrayOES(),e.deleteVertexArray=e=>r.deleteVertexArrayOES(e),e.bindVertexArray=e=>r.bindVertexArrayOES(e),e.isVertexArray=e=>r.isVertexArrayOES(e))})(r),(e=>{var r=e.getExtension("WEBGL_draw_buffers");r&&(e.drawBuffers=(e,t)=>r.drawBuffersWEBGL(e,t))})(r),r.nj=r.getExtension("EXT_disjoint_timer_query"),r.rj=r.getExtension("WEBGL_multi_draw"),function(e){var r="ANGLE_instanced_arrays EXT_blend_minmax EXT_disjoint_timer_query EXT_frag_depth EXT_shader_texture_lod EXT_sRGB OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_depth_texture WEBGL_draw_buffers EXT_color_buffer_half_float EXT_float_blend EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw".split(" ");return(e.getSupportedExtensions()||[]).filter((e=>r.includes(e)))}(r).forEach((e=>{e.includes("lose_context")||e.includes("debug")||r.getExtension(e)}))}},rt={},tt=[31,29,31,30,31,30,31,31,30,31,30,31],at=[31,28,31,30,31,30,31,31,30,31,30,31];function it(e,r,t,a){e||=this,this.parent=e,this.Yh=e.Yh,this.gi=null,this.id=we++,this.name=r,this.mode=t,this.Lh={},this.Nh={},this.ji=a}Object.defineProperties(it.prototype,{read:{get:function(){return 365==(365&this.mode)},set:function(e){e?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146==(146&this.mode)},set:function(e){e?this.mode|=146:this.mode&=-147}}}),[44].forEach((e=>{ye[e]=new ge(e),ye[e].stack="<generic error, no stack>"})),ve=Array(4096),Be(ue,"/"),Ve("/tmp"),Ve("/home"),Ve("/home/web_user"),function(){Ve("/dev"),je(259,{read:()=>0,write:(e,r,t,a)=>a}),De("/dev/null",259),oe(1280,ce),oe(1536,le),De("/dev/tty",1280),De("/dev/tty1",1536);var e=new Uint8Array(1024),r=0,t=()=>(0===r&&(r=Q(e).byteLength),e[--r]);Xe("random",t),Xe("urandom",t),Ve("/dev/shm"),Ve("/dev/shm/tmp")}(),function(){Ve("/proc");var e=Ve("/proc/self");Ve("/proc/self/fd"),Be({Yh(){var r=Se(e,"fd",16895,73);return r.Lh={ii(e,r){var t=Me(+r);return(e={parent:null,Yh:{Gi:"fake"},Lh:{ki:()=>t.path}}).parent=e}},r}},"/proc/self/fd")}(),i.requestFullscreen=function(e,r){function t(){yr=!1;var e=a.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e?(a.exitFullscreen=Sr,Nr&&a.requestPointerLock(),yr=!0,Rr?("undefined"!=typeof SDL&&(v[SDL.screen>>2]=8388608|E[SDL.screen>>2]),Mr(i.canvas),Pr()):Mr(a)):(e.parentNode.insertBefore(a,e),e.parentNode.removeChild(e),Rr?("undefined"!=typeof SDL&&(v[SDL.screen>>2]=-8388609&E[SDL.screen>>2]),Mr(i.canvas),Pr()):Mr(a)),i.onFullScreen?.(yr),i.onFullscreen?.(yr)}void 0===(Nr=e)&&(Nr=!0),void 0===(Rr=r)&&(Rr=!1);var a=i.canvas;zr||(zr=!0,document.addEventListener("fullscreenchange",t,!1),document.addEventListener("mozfullscreenchange",t,!1),document.addEventListener("webkitfullscreenchange",t,!1),document.addEventListener("MSFullscreenChange",t,!1));var n=document.createElement("div");a.parentNode.insertBefore(n,a),n.appendChild(a),n.requestFullscreen=n.requestFullscreen||n.mozRequestFullScreen||n.msRequestFullscreen||(n.webkitRequestFullscreen?()=>n.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(n.webkitRequestFullScreen?()=>n.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null),n.requestFullscreen()},i.requestAnimationFrame=Tr,i.setCanvasSize=function(e,r,t){Mr(i.canvas,e,r),t||Pr()},i.pauseMainLoop=function(){dr=null,pr++},i.resumeMainLoop=function(){pr++;var e=br,r=wr,t=mr;mr=null,(e=>{!mr||C("emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),mr=e;var r=pr;fr=!1,hr=function(){if(!k)if(0<Er.length){var t=Er.shift();if(t.pj(t.gj),ur){var a=ur,n=0==a%1?a-1:Math.floor(a);ur=t.mj?n:(8*a+(n+.5))/9}i.setStatus&&(t=i.statusMessage||"Please wait...",n=gr.oj,(a=ur)?a<n?i.setStatus(t+" ("+(n-a)+"/"+n+")"):i.setStatus(t):i.setStatus("")),r<pr||setTimeout(hr,0)}else r<pr||(vr=vr+1|0,1==br&&1<wr&&0!=vr%wr?dr():(0==br&&(lr=tr()),k||i.preMainLoop&&!1===i.preMainLoop()||(sr(e),i.postMainLoop?.()),r<pr||("object"==typeof SDL&&SDL.audio?.vj?.(),dr())))}})(t),((e,r)=>{if(br=e,wr=r,mr)if(fr||=!0,0==e)dr=function(){var e=0|Math.max(0,lr+r-tr());setTimeout(hr,e)};else if(1==e)dr=function(){Tr(hr)};else if(2==e){if(void 0===Fr)if("undefined"==typeof setImmediate){var t=[];addEventListener("message",(e=>{"setimmediate"!==e.data&&"setimmediate"!==e.data.target||(e.stopPropagation(),t.shift()())}),!0),Fr=function(e){t.push(e),void 0===i.setImmediates&&(i.setImmediates=[]),i.setImmediates.push(e),postMessage({target:"setimmediate"})}}else Fr=setImmediate;dr=function(){Fr(hr)}}})(e,r),dr()},i.getUserMedia=function(e){let r;(r=window).getUserMedia||(r.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},i.createContext=function(e,r,t,a){if(r&&i.xi&&e==i.canvas)return i.xi;var n;if(r){var _={antialias:!1,alpha:!1,Wi:1};if(a)for(var o in a)_[o]=a[o];if(void 0!==rt&&(n=((e,r)=>{e.Th||(e.Th=e.getContext,e.getContext=function(r,t){return"webgl"==r==(t=e.Th(r,t))instanceof WebGLRenderingContext?t:null});var t=e.getContext("webgl",r);return t?((e,r)=>{var t=Jr(Qr),a={handle:t,attributes:r,version:r.Wi,wi:e};return e.canvas&&(e.canvas.fj=a),Qr[t]=a,(void 0===r.Oi||r.Oi)&&et(a),t})(t,r):0})(e,_)))var s=Qr[n].wi}else s=e.getContext("2d");return s?(t&&(r||void 0===nt||C("cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),i.xi=s,r&&(Xr=Qr[n],i.xi=nt=Xr?.wi),i.xj=r,Ar.forEach((e=>e())),function(){function e(){kr=document.pointerLockElement===i.canvas||document.mozPointerLockElement===i.canvas||document.webkitPointerLockElement===i.canvas||document.msPointerLockElement===i.canvas}if(!Or){Or=!0,fe.push({canHandle:function(e){return!i.tj&&/\\.(jpg|jpeg|png|bmp)$/i.test(e)},handle:function(e,r,t,a){var i=new Blob([e],{type:xr(r)});i.size!==e.length&&(i=new Blob([new Uint8Array(e).buffer],{type:xr(r)}));var n=URL.createObjectURL(i),_=new Image;_.onload=()=>{_.complete||C(`Image ${r} could not be decoded`);var a=document.createElement("canvas");a.width=_.width,a.height=_.height,a.getContext("2d").drawImage(_,0,0),URL.revokeObjectURL(n),t?.(e)},_.onerror=()=>{u(`Image ${n} could not be decoded`),a?.()},_.src=n}}),fe.push({canHandle:function(e){return!i.sj&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(e,r,t){function a(){i||(i=!0,t?.(e))}var i=!1,n=URL.createObjectURL(new Blob([e],{type:xr(r)})),_=new Audio;_.addEventListener("canplaythrough",(()=>a()),!1),_.onerror=function(){if(!i){u(`warning: browser could not fully decode audio ${r}, trying slower base64 approach`);for(var t="",n=0,o=0,s=0;s<e.length;s++)for(n=n<<8|e[s],o+=8;6<=o;){var c=n>>o-6&63;o-=6,t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[c]}2==o?(t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(3&n)<<4],t+="=="):4==o&&(t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(15&n)<<2],t+="="),_.src="data:audio/x-"+r.substr(-3)+";base64,"+t,a()}},_.src=n,cr((()=>{a()}),1e4)}});var r=i.canvas;r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||(()=>{}),r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||(()=>{}),r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",e,!1),document.addEventListener("mozpointerlockchange",e,!1),document.addEventListener("webkitpointerlockchange",e,!1),document.addEventListener("mspointerlockchange",e,!1),i.elementPointerLock&&r.addEventListener("click",(e=>{!kr&&i.canvas.requestPointerLock&&(i.canvas.requestPointerLock(),e.preventDefault())}),!1))}}()),s):null},jr=new class{constructor(){this.fi=[void 0],this.Th=[]}get(e){return this.fi[e]}has(e){return void 0!==this.fi[e]}li(e){var r=this.Th.pop()||this.fi.length;return this.fi[r]=e,r}},F(),function(e,r){try{var t=indexedDB.open("emscripten_filesystem",1)}catch(e){return void r()}t.onupgradeneeded=e=>{(e=e.target.result).objectStoreNames.contains("FILES")&&e.deleteObjectStore("FILES"),e.createObjectStore("FILES")},t.onsuccess=e=>(e=>{Br=e,O()})(e.target.result),t.onerror=r}(0,(()=>{Br=!1,O()}));var nt,_t={q:e=>{if(e=new G(e),0==p[e.Qh+12>>0]&&(p[e.Qh+12>>0]=1,K--),p[e.Qh+13>>0]=0,D.push(e),bt(e.ai),vt(E[e.Qh+4>>2]))e=E[e.ai>>2];else{var r=E[e.Qh+16>>2];e=0!==r?r:e.ai}return e},_b:()=>{if(!D.length)return 0;var e=D[D.length-1];return bt(e.ai),e.ai},x:()=>{ht(0,0);var e=D.pop();mt(e.ai),Z=0},a:()=>W([]),i:e=>W([e]),H:(e,r)=>W([e,r]),Ia:X,Zb:e=>{e&&(e=new G(e),D.push(e),p[e.Qh+13>>0]=1,X())},n:(e,r,t)=>{var a=new G(e);throw E[a.Qh+16>>2]=0,E[a.Qh+4>>2]=r,E[a.Qh+8>>2]=t,K++,Z=e},sa:()=>K,c:e=>{throw Z||=e,Z},T:function(e,r,t){er=t;try{var a=Me(e);switch(r){case 0:var i=rr();if(0>i)break;for(;be[i];)i++;return Fe(a,i).$h;case 1:case 2:case 13:case 14:return 0;case 3:return a.flags;case 4:return i=rr(),a.flags|=i,0;case 12:return i=rr(),b[i+0>>1]=2,0}return-28}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Sh}},ec:function(e,r,t){try{var a=Me(e);if(!a.bi){var i=ke(a.path,{mi:!0}).node;if(!i.Lh.pi)throw new ge(54);var n=i.Lh.pi(i);a.bi=n}e=0;for(var _=We(a,0,1),o=Math.floor(_/280);o<a.bi.length&&e+280<=t;){var s=a.bi[o];if("."===s)var c=a.node.id,l=4;else if(".."===s)c=ke(a.path,{parent:!0}).node.id,l=4;else{var h=Re(a.node,s);c=h.id,l=8192==(61440&h.mode)?2:Le(h.mode)?4:40960==(61440&h.mode)?10:8}x=[c>>>0,(T=c,1<=+Math.abs(T)?0<T?+Math.floor(T/4294967296)>>>0:~~+Math.ceil((T-+(~~T>>>0))/4294967296)>>>0:0)],v[r+e>>2]=x[0],v[r+e+4>>2]=x[1],x=[280*(o+1)>>>0,(T=280*(o+1),1<=+Math.abs(T)?0<T?+Math.floor(T/4294967296)>>>0:~~+Math.ceil((T-+(~~T>>>0))/4294967296)>>>0:0)],v[r+e+8>>2]=x[0],v[r+e+12>>2]=x[1],b[r+e+16>>1]=280,p[r+e+18>>0]=l,ie(s,m,r+e+19,256),e+=280,o+=1}return We(a,280*o,0),e}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Sh}},lc:function(e,r,t){er=t;try{var a=Me(e);switch(r){case 21509:case 21510:case 21511:case 21512:case 21524:case 21515:return a.Oh?0:-59;case 21505:if(!a.Oh)return-59;if(a.Oh.Zh.Ti){e=[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var i=rr();v[i>>2]=25856,v[i+4>>2]=5,v[i+8>>2]=191,v[i+12>>2]=35387;for(var n=0;32>n;n++)p[i+n+17>>0]=e[n]||0}return 0;case 21506:case 21507:case 21508:if(!a.Oh)return-59;if(a.Oh.Zh.Ui)for(i=rr(),e=[],n=0;32>n;n++)e.push(p[i+n+17>>0]);return 0;case 21519:return a.Oh?(i=rr(),v[i>>2]=0):-59;case 21520:return a.Oh?-28:-59;case 21531:if(i=rr(),!a.Nh.Si)throw new ge(59);return a.Nh.Si(a,r,i);case 21523:return a.Oh?(a.Oh.Zh.Vi&&(n=[24,80],i=rr(),b[i>>1]=n[0],b[i+2>>1]=n[1]),0):-59;default:return-28}}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Sh}},Ma:function(e,r,t,a){er=a;try{return Ge(r=Je(e,r=r?re(m,r):""),t,a?rr():0).$h}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Sh}},cc:function(e,r,t,a){try{if(r=Je(e,r=r?re(m,r):""),0>=a)return-28;var i=Ze(r),n=Math.min(a,ae(i)),_=p[t+n];return ie(i,m,t,a+1),p[t+n]=_,n}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Sh}},hc:function(e,r){try{var t=ke(e=e?re(m,e):"",{mi:!0}).node;if(!t)throw new ge(44);if(!t.Lh.Uh)throw new ge(63);var a=t.Lh.Uh(t);v[r>>2]=a.Ni,v[r+4>>2]=a.mode,E[r+8>>2]=a.Zi,v[r+12>>2]=a.uid,v[r+16>>2]=a.Pi,v[r+20>>2]=a.ji,x=[a.size>>>0,(T=a.size,1<=+Math.abs(T)?0<T?+Math.floor(T/4294967296)>>>0:~~+Math.ceil((T-+(~~T>>>0))/4294967296)>>>0:0)],v[r+24>>2]=x[0],v[r+28>>2]=x[1],v[r+32>>2]=4096,v[r+36>>2]=a.Li;var i=a.Ji.getTime(),n=a.Yi.getTime(),_=a.Mi.getTime();return x=[Math.floor(i/1e3)>>>0,(T=Math.floor(i/1e3),1<=+Math.abs(T)?0<T?+Math.floor(T/4294967296)>>>0:~~+Math.ceil((T-+(~~T>>>0))/4294967296)>>>0:0)],v[r+40>>2]=x[0],v[r+44>>2]=x[1],E[r+48>>2]=i%1e3*1e3,x=[Math.floor(n/1e3)>>>0,(T=Math.floor(n/1e3),1<=+Math.abs(T)?0<T?+Math.floor(T/4294967296)>>>0:~~+Math.ceil((T-+(~~T>>>0))/4294967296)>>>0:0)],v[r+56>>2]=x[0],v[r+60>>2]=x[1],E[r+64>>2]=n%1e3*1e3,x=[Math.floor(_/1e3)>>>0,(T=Math.floor(_/1e3),1<=+Math.abs(T)?0<T?+Math.floor(T/4294967296)>>>0:~~+Math.ceil((T-+(~~T>>>0))/4294967296)>>>0:0)],v[r+72>>2]=x[0],v[r+76>>2]=x[1],E[r+80>>2]=_%1e3*1e3,x=[a.Ei>>>0,(T=a.Ei,1<=+Math.abs(T)?0<T?+Math.floor(T/4294967296)>>>0:~~+Math.ceil((T-+(~~T>>>0))/4294967296)>>>0:0)],v[r+88>>2]=x[0],v[r+92>>2]=x[1],0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Sh}},dc:function(e,r){try{return Ke(e=e?re(m,e):"",r=r?re(m,r):""),0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Sh}},ac:function(e,r,t){try{if(r=Je(e,r=r?re(m,r):""),0===t){var a=r,i=ke(a,{parent:!0}).node;if(!i)throw new ge(44);var n=$(a),_=Re(i,n),o=Pe(i,n,!1);if(o)throw new ge(o);if(!i.Lh.vi)throw new ge(63);if(_.gi)throw new ge(10);i.Lh.vi(i,n),Ne(_)}else if(512===t){a=ke(i=r,{parent:!0}).node;var s=$(i),c=Re(a,s),l=Pe(a,s,!0);if(l)throw new ge(l);if(!a.Lh.ri)throw new ge(63);if(c.gi)throw new ge(10);a.Lh.ri(a,s),Ne(c)}else C("Invalid flags passed to unlinkat");return 0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Sh}},mc:function(e){if(jr.has(e)){var r=jr.get(e),t=jr;t.fi[e]=void 0,t.Th.push(e),0<r.readyState&&4>r.readyState&&r.abort()}},jc:()=>1,ub:function(e,r,t){e=new Date(1e3*(r+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*r:NaN)),v[t>>2]=e.getUTCSeconds(),v[t+4>>2]=e.getUTCMinutes(),v[t+8>>2]=e.getUTCHours(),v[t+12>>2]=e.getUTCDate(),v[t+16>>2]=e.getUTCMonth(),v[t+20>>2]=e.getUTCFullYear()-1900,v[t+24>>2]=e.getUTCDay(),v[t+28>>2]=(e.getTime()-Date.UTC(e.getUTCFullYear(),0,1,0,0,0,0))/864e5|0},vb:function(e,r,t){e=new Date(1e3*(r+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*r:NaN)),v[t>>2]=e.getSeconds(),v[t+4>>2]=e.getMinutes(),v[t+8>>2]=e.getHours(),v[t+12>>2]=e.getDate(),v[t+16>>2]=e.getMonth(),v[t+20>>2]=e.getFullYear()-1900,v[t+24>>2]=e.getDay(),v[t+28>>2]=(ar(e.getFullYear())?ir:nr)[e.getMonth()]+e.getDate()-1|0,v[t+36>>2]=-60*e.getTimezoneOffset(),r=new Date(e.getFullYear(),6,1).getTimezoneOffset();var a=new Date(e.getFullYear(),0,1).getTimezoneOffset();v[t+32>>2]=0|(r!=a&&e.getTimezoneOffset()==Math.min(a,r))},bc:(e,r,t)=>{function a(e){return(e=e.toTimeString().match(/\\(([A-Za-z ]+)\\)$/))?e[1]:"GMT"}var i=(new Date).getFullYear(),n=new Date(i,0,1),_=new Date(i,6,1);i=n.getTimezoneOffset();var o=_.getTimezoneOffset();E[e>>2]=60*Math.max(i,o),v[r>>2]=Number(i!=o),e=a(n),r=a(_),e=_r(e),r=_r(r),o<i?(E[t>>2]=e,E[t+4>>2]=r):(E[t>>2]=r,E[t+4>>2]=e)},F:()=>{C("")},pb:function(){self.postMessage({t:"gfx"})},rb:function(){var e=new URL(location.origin).hostname;if(0===e.length&&(e=new URL(location.href.replace("blob:","")).hostname),/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(e))0===e.indexOf("10.")&&(e="10.*"),0===e.indexOf("192.168.")&&(e="192.168.*"),0===e.indexOf("172.")&&(e="172.*"),0===e.indexOf("127.")&&(e="127.*");else{var r=new RegExp("("+String.fromCharCode(92)+".ngrok"+String.fromCharCode(92)+".io)$","i");r.test(e)&&(e="*.ngrok.io"),(r=new RegExp("("+String.fromCharCode(92)+".ngrok-free"+String.fromCharCode(92)+".app)$","i")).test(e)&&(e="*.ngrok.io"),(r=new RegExp("("+String.fromCharCode(92)+".arweb"+String.fromCharCode(92)+".app)$","i")).test(e)&&(e="*.arweb.app")}r=ae(e)+1;var t=ct(r);return ie(e,m,t,r+1),t},qb:function(){self.postMessage({t:"licerr"})},Ha:(e,r,t)=>{function a(){Vr(e)(r)}0<=t?cr(a,t):function(e){Tr((()=>{sr(e)}))}(a)},ta:()=>Date.now(),Xb:()=>2147483648,ic:tr,oc:()=>!1,kc:(e,r,t)=>m.copyWithin(e,r,r+t),$b:e=>{var r=m.length;if(2147483648<(e>>>=0))return!1;for(var t=1;4>=t;t*=2){var a=r*(1+.2/t);a=Math.min(a,e+100663296);var i=Math;a=Math.max(e,a);e:{i=(i.min.call(i,2147483648,a+(65536-a%65536)%65536)-f.buffer.byteLength+65535)/65536;try{f.grow(i),A();var n=1;break e}catch(e){}n=void 0}if(n)return!0}return!1},nc:function(e,r,t,a,i){function n(e){u?e():sr(e)}var _=e+112,o=E[_+36>>2],s=E[_+40>>2],c=E[_+44>>2],l=E[_+48>>2],h=E[_+52>>2],u=!!(64&h),f=e=>{n((()=>{o?Vr(o)(e):r?.(e)}))},d=e=>{n((()=>{c?Vr(c)(e):a?.(e)}))},p=e=>{n((()=>{s?Vr(s)(e):t?.(e)}))},b=e=>{n((()=>{l?Vr(l)(e):i?.(e)}))},v=e=>{Dr(e,f,p,d,b)},g=(e,t)=>{Zr(e,t.response,(e=>{n((()=>{o?Vr(o)(e):r?.(e)}))}),(e=>{n((()=>{o?Vr(o)(e):r?.(e)}))}))},y=Qe(_+0),k=!!(16&h),A=!!(4&h);if(h=!!(32&h),"EM_IDB_STORE"===y)v=E[_+84>>2],Zr(e,m.slice(v,v+E[_+88>>2]),f,p);else if("EM_IDB_DELETE"===y)!function(e,r,t){var a=Br;if(a){var i=E[e+112+64>>2];i||=E[e+8>>2],i=i?re(m,i):"";try{var n=a.transaction(["FILES"],"readwrite").objectStore("FILES").delete(i);n.onsuccess=t=>{t=t.target.result,E[e+12>>2]=0,Kr(e+16,0),Kr(e+24,0),Kr(e+32,0),w[e+40>>1]=4,w[e+42>>1]=200,ie("OK",m,e+44,64),r(e,0,t)},n.onerror=r=>{w[e+40>>1]=4,w[e+42>>1]=404,ie("Not Found",m,e+44,64),t(e,0,r)}}catch(r){t(e,0,r)}}else t(e,0,"IndexedDB not available!")}(e,f,p);else if(k){if(h)return 0;Dr(e,A?g:f,p,d,b)}else!function(e,r,t){var a=Br;if(a){var i=E[e+112+64>>2];i||=E[e+8>>2],i=i?re(m,i):"";try{var n=a.transaction(["FILES"],"readonly").objectStore("FILES").get(i);n.onsuccess=a=>{if(a.target.result){var i=(a=a.target.result).byteLength||a.length,n=ct(i);m.set(new Uint8Array(a),n),E[e+12>>2]=n,Kr(e+16,i),Kr(e+24,0),Kr(e+32,i),w[e+40>>1]=4,w[e+42>>1]=200,ie("OK",m,e+44,64),r(e,0,a)}else w[e+40>>1]=4,w[e+42>>1]=404,ie("Not Found",m,e+44,64),t(e,0,"no data")},n.onerror=r=>{w[e+40>>1]=4,w[e+42>>1]=404,ie("Not Found",m,e+44,64),t(e,0,r)}}catch(r){t(e,0,r)}}else t(e,0,"IndexedDB not available!")}(e,f,h?p:A?e=>{Dr(e,g,p,d,b)}:v);return e},fc:(e,r)=>{var t=0;return Hr().forEach(((a,i)=>{var n=r+t;for(i=E[e+4*i>>2]=n,n=0;n<a.length;++n)p[i++>>0]=a.charCodeAt(n);p[i>>0]=0,t+=a.length+1})),0},gc:(e,r)=>{var t=Hr();E[e>>2]=t.length;var a=0;return t.forEach((e=>a+=e.length+1)),E[r>>2]=a,0},qc:e=>{d=e,or(e)},ba:function(e){try{var r=Me(e);if(null===r.$h)throw new ge(8);r.bi&&(r.bi=null);try{r.Nh.close&&r.Nh.close(r)}catch(e){throw e}finally{be[r.$h]=null}return r.$h=null,0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return e.Sh}},Na:function(e,r,t,a){try{e:{var i=Me(e);e=r;for(var n,_=r=0;_<t;_++){var o=E[e>>2],s=E[e+4>>2];e+=8;var c=i,l=n,h=p;if(0>s||0>l)throw new ge(28);if(null===c.$h)throw new ge(8);if(1==(2097155&c.flags))throw new ge(8);if(Le(c.node.mode))throw new ge(31);if(!c.Nh.read)throw new ge(28);var u=void 0!==l;if(u){if(!c.seekable)throw new ge(70)}else l=c.position;var f=c.Nh.read(c,h,o,s,l);u||(c.position+=f);var d=f;if(0>d){var m=-1;break e}if(r+=d,d<s)break;void 0!==n&&(n+=d)}m=r}return E[a>>2]=m,0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return e.Sh}},wb:function(e,r,t,a,i){r=t+2097152>>>0<4194305-!!r?(r>>>0)+4294967296*t:NaN;try{if(isNaN(r))return 61;var n=Me(e);return We(n,r,a),x=[n.position>>>0,(T=n.position,1<=+Math.abs(T)?0<T?+Math.floor(T/4294967296)>>>0:~~+Math.ceil((T-+(~~T>>>0))/4294967296)>>>0:0)],v[i>>2]=x[0],v[i+4>>2]=x[1],n.bi&&0===r&&0===a&&(n.bi=null),0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return e.Sh}},ua:function(e,r,t,a){try{e:{var i=Me(e);e=r;for(var n,_=r=0;_<t;_++){var o=E[e>>2],s=E[e+4>>2];e+=8;var c=i,l=o,h=s,u=n,f=p;if(0>h||0>u)throw new ge(28);if(null===c.$h)throw new ge(8);if(0==(2097155&c.flags))throw new ge(8);if(Le(c.node.mode))throw new ge(31);if(!c.Nh.write)throw new ge(28);c.seekable&&1024&c.flags&&We(c,0,2);var d=void 0!==u;if(d){if(!c.seekable)throw new ge(70)}else u=c.position;var m=c.Nh.write(c,f,l,h,u,void 0);d||(c.position+=m);var b=m;if(0>b){var w=-1;break e}r+=b,void 0!==n&&(n+=b)}w=r}return E[a>>2]=w,0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return e.Sh}},Ka:(e,r)=>{nt.bindTexture(e,$r[r])},La:(e,r)=>{for(var t=0;t<e;t++){var a=nt.createTexture(),i=a&&Jr($r);a?(a.name=i,$r[i]=a):Wr||=1282,v[r+4*t>>2]=i}},qa:(e,r,t,a,i,n,_,o,s)=>{var c=nt,l=c.texImage2D;if(s){var h=o-5120;h=1==h?m:4==h?v:6==h?g:5==h||28922==h?E:w;var u=31-Math.clz32(h.BYTES_PER_ELEMENT);s=h.subarray(s>>u,s+i*(a*({5:3,6:4,8:2,29502:3,29504:4}[_-6402]||1)*(1<<u)+4-1&-4)>>u)}else s=null;l.call(c,e,r,t,a,i,n,_,o,s)},ra:function(e,r,t){nt.texParameteri(e,r,t)},y:function(e){var r=ft();try{return Vr(e)()}catch(e){if(dt(r),e!==e+0)throw e;ht(1,0)}},ka:function(e,r){var t=ft();try{return Vr(e)(r)}catch(e){if(dt(t),e!==e+0)throw e;ht(1,0)}},pc:function(e,r,t){var a=ft();try{return Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},Ca:function(e,r,t){var a=ft();try{return Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},P:function(e,r,t,a){var i=ft();try{return Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},eb:function(e,r,t,a,i){var n=ft();try{return Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},xa:function(e,r,t,a,i,n,_,o){var s=ft();try{return Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},Ib:function(e,r,t,a,i){var n=ft();try{return Ct(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},xb:function(e,r,t,a,i){var n=ft();try{return Gt(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Q:function(e,r){var t=ft();try{return Vr(e)(r)}catch(e){if(dt(t),e!==e+0)throw e;ht(1,0)}},ca:function(e,r,t){var a=ft();try{return Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},da:function(e,r,t,a){var i=ft();try{return Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},Za:function(e,r,t,a,i,n){var _=ft();try{return Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},s:function(e){var r=ft();try{return Vr(e)()}catch(e){if(dt(r),e!==e+0)throw e;ht(1,0)}},Oa:function(e,r,t,a,i){var n=ft();try{return Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Wa:function(e,r,t,a,i,n){var _=ft();try{return Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},b:function(e,r){var t=ft();try{return Vr(e)(r)}catch(e){if(dt(t),e!==e+0)throw e;ht(1,0)}},r:function(e,r,t){var a=ft();try{return Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},$:function(e,r,t,a){var i=ft();try{return Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},la:function(e,r,t,a,i){var n=ft();try{return Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},tc:function(e,r,t,a,i){var n=ft();try{return Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Ra:function(e,r,t,a){var i=ft();try{return Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},ea:function(e,r,t){var a=ft();try{return Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},Ya:function(e,r,t,a,i){var n=ft();try{return Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Xa:function(e,r,t,a,i,n){var _=ft();try{return Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},f:function(e,r,t){var a=ft();try{return Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},U:function(e,r,t,a){var i=ft();try{return Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},fb:function(e,r,t,a,i){var n=ft();try{return Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},sc:function(e,r,t,a,i,n,_,o){var s=ft();try{return Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},Va:function(e,r,t,a,i,n,_,o,s,c,l,h,u){var f=ft();try{return Vr(e)(r,t,a,i,n,_,o,s,c,l,h,u)}catch(e){if(dt(f),e!==e+0)throw e;ht(1,0)}},ya:function(e,r,t,a,i,n){var _=ft();try{return Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},jb:function(e,r,t,a,i,n){var _=ft();try{return Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},d:function(e,r,t,a){var i=ft();try{return Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},Qa:function(e,r,t,a,i,n){var _=ft();try{return Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},l:function(e,r,t,a,i){var n=ft();try{return Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Pa:function(e,r,t,a,i,n){var _=ft();try{return Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},fa:function(e,r,t,a,i,n,_){var o=ft();try{return Vr(e)(r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},Ea:function(e,r,t,a,i,n,_,o,s){var c=ft();try{return Vr(e)(r,t,a,i,n,_,o,s)}catch(e){if(dt(c),e!==e+0)throw e;ht(1,0)}},u:function(e,r,t,a,i,n){var _=ft();try{return Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},z:function(e,r,t,a,i,n,_){var o=ft();try{return Vr(e)(r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},w:function(e,r,t,a,i,n,_,o){var s=ft();try{return Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},mb:function(e,r,t,a,i,n,_,o,s,c,l){var h=ft();try{return Vr(e)(r,t,a,i,n,_,o,s,c,l)}catch(e){if(dt(h),e!==e+0)throw e;ht(1,0)}},G:function(e,r,t,a,i,n,_,o,s){var c=ft();try{return Vr(e)(r,t,a,i,n,_,o,s)}catch(e){if(dt(c),e!==e+0)throw e;ht(1,0)}},aa:function(e,r,t,a,i,n,_,o,s,c){var l=ft();try{return Vr(e)(r,t,a,i,n,_,o,s,c)}catch(e){if(dt(l),e!==e+0)throw e;ht(1,0)}},L:function(e,r,t,a,i,n,_,o,s,c,l){var h=ft();try{return Vr(e)(r,t,a,i,n,_,o,s,c,l)}catch(e){if(dt(h),e!==e+0)throw e;ht(1,0)}},ha:function(e,r,t,a,i,n,_,o,s,c,l,h){var u=ft();try{return Vr(e)(r,t,a,i,n,_,o,s,c,l,h)}catch(e){if(dt(u),e!==e+0)throw e;ht(1,0)}},tb:function(e,r,t,a,i,n,_){var o=ft();try{return Wt(e,r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},zb:function(e,r,t,a,i,n){var _=ft();try{return Kt(e,r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},Hb:function(e,r,t,a,i,n,_,o,s){var c=ft();try{return Mt(e,r,t,a,i,n,_,o,s)}catch(e){if(dt(c),e!==e+0)throw e;ht(1,0)}},Kb:function(e,r,t,a,i,n,_,o,s,c,l){var h=ft();try{return Pt(e,r,t,a,i,n,_,o,s,c,l)}catch(e){if(dt(h),e!==e+0)throw e;ht(1,0)}},Mb:function(e,r,t,a,i){var n=ft();try{return xt(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Sb:function(e,r,t,a){var i=ft();try{return zt(e,r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},Qb:function(e,r,t,a,i){var n=ft();try{return Nt(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Ob:function(e,r,t,a,i,n){var _=ft();try{return St(e,r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},Gb:function(e,r,t,a,i,n,_,o,s,c,l,h,u,f,d){var p=ft();try{return Ft(e,r,t,a,i,n,_,o,s,c,l,h,u,f,d)}catch(e){if(dt(p),e!==e+0)throw e;ht(1,0)}},Ab:function(e,r,t,a){var i=ft();try{return Dt(e,r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},Vb:function(e){var r=ft();try{return Et(e)}catch(e){if(dt(r),e!==e+0)throw e;ht(1,0)}},Lb:function(e,r){var t=ft();try{return It(e,r)}catch(e){if(dt(t),e!==e+0)throw e;ht(1,0)}},Eb:function(e,r,t){var a=ft();try{return Bt(e,r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},Fb:function(e,r,t,a){var i=ft();try{return jt(e,r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},sb:function(e,r,t,a,i){var n=ft();try{return Xt(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Pb:function(e,r,t,a){var i=ft();try{return Tt(e,r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},Nb:function(e,r,t,a,i){var n=ft();try{return Lt(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},yb:function(e,r,t){var a=ft();try{return Zt(e,r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},m:function(e){var r=ft();try{Vr(e)()}catch(e){if(dt(r),e!==e+0)throw e;ht(1,0)}},ib:function(e,r,t){var a=ft();try{Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},M:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},g:function(e,r){var t=ft();try{Vr(e)(r)}catch(e){if(dt(t),e!==e+0)throw e;ht(1,0)}},Sa:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},ja:function(e,r,t,a,i,n,_){var o=ft();try{Vr(e)(r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},Ua:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},Ja:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},rc:function(e,r,t,a){var i=ft();try{Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},X:function(e,r,t,a,i){var n=ft();try{Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},lb:function(e,r,t){var a=ft();try{Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},Ta:function(e,r,t,a,i){var n=ft();try{Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},$a:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},e:function(e,r,t){var a=ft();try{Vr(e)(r,t)}catch(e){if(dt(a),e!==e+0)throw e;ht(1,0)}},t:function(e,r,t,a){var i=ft();try{Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},S:function(e,r,t,a,i){var n=ft();try{Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},N:function(e,r,t,a){var i=ft();try{Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},Z:function(e,r,t,a,i){var n=ft();try{Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},za:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},ab:function(e,r,t,a,i,n,_,o,s){var c=ft();try{Vr(e)(r,t,a,i,n,_,o,s)}catch(e){if(dt(c),e!==e+0)throw e;ht(1,0)}},O:function(e,r,t,a,i){var n=ft();try{Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},h:function(e,r,t,a){var i=ft();try{Vr(e)(r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},ma:function(e,r,t,a,i){var n=ft();try{Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},wa:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},gb:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},db:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},cb:function(e,r,t,a,i,n,_,o,s){var c=ft();try{Vr(e)(r,t,a,i,n,_,o,s)}catch(e){if(dt(c),e!==e+0)throw e;ht(1,0)}},ga:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},Ga:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},W:function(e,r,t,a,i,n,_,o,s,c,l,h){var u=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h)}catch(e){if(dt(u),e!==e+0)throw e;ht(1,0)}},nb:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},oa:function(e,r,t,a,i,n,_){var o=ft();try{Vr(e)(r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},k:function(e,r,t,a,i){var n=ft();try{Vr(e)(r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Aa:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},ob:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},_a:function(e,r,t,a,i,n,_,o,s,c,l){var h=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l)}catch(e){if(dt(h),e!==e+0)throw e;ht(1,0)}},Fa:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},pa:function(e,r,t,a,i,n,_){var o=ft();try{Vr(e)(r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},bb:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},kb:function(e,r,t,a,i,n,_,o,s){var c=ft();try{Vr(e)(r,t,a,i,n,_,o,s)}catch(e){if(dt(c),e!==e+0)throw e;ht(1,0)}},j:function(e,r,t,a,i,n){var _=ft();try{Vr(e)(r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},V:function(e,r,t,a,i,n,_){var o=ft();try{Vr(e)(r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},hb:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},_:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},o:function(e,r,t,a,i,n,_){var o=ft();try{Vr(e)(r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},A:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},na:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},p:function(e,r,t,a,i,n,_,o){var s=ft();try{Vr(e)(r,t,a,i,n,_,o)}catch(e){if(dt(s),e!==e+0)throw e;ht(1,0)}},v:function(e,r,t,a,i,n,_,o,s,c,l,h,u){var f=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h,u)}catch(e){if(dt(f),e!==e+0)throw e;ht(1,0)}},R:function(e,r,t,a,i,n,_,o,s,c){var l=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c)}catch(e){if(dt(l),e!==e+0)throw e;ht(1,0)}},Y:function(e,r,t,a,i,n,_,o,s,c,l,h,u){var f=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h,u)}catch(e){if(dt(f),e!==e+0)throw e;ht(1,0)}},C:function(e,r,t,a,i,n,_,o,s){var c=ft();try{Vr(e)(r,t,a,i,n,_,o,s)}catch(e){if(dt(c),e!==e+0)throw e;ht(1,0)}},E:function(e,r,t,a,i,n,_,o,s,c){var l=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c)}catch(e){if(dt(l),e!==e+0)throw e;ht(1,0)}},I:function(e,r,t,a,i,n,_,o,s,c,l){var h=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l)}catch(e){if(dt(h),e!==e+0)throw e;ht(1,0)}},Ba:function(e,r,t,a,i,n,_,o,s,c,l,h){var u=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h)}catch(e){if(dt(u),e!==e+0)throw e;ht(1,0)}},J:function(e,r,t,a,i,n,_,o,s,c,l,h,u,f){var d=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h,u,f)}catch(e){if(dt(d),e!==e+0)throw e;ht(1,0)}},D:function(e,r,t,a,i,n,_,o,s,c,l,h){var u=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h)}catch(e){if(dt(u),e!==e+0)throw e;ht(1,0)}},K:function(e,r,t,a,i,n,_,o,s,c,l,h,u){var f=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h,u)}catch(e){if(dt(f),e!==e+0)throw e;ht(1,0)}},Da:function(e,r,t,a,i,n,_,o,s,c,l,h,u,f){var d=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h,u,f)}catch(e){if(dt(d),e!==e+0)throw e;ht(1,0)}},va:function(e,r,t,a,i,n,_,o,s,c,l,h,u,f,d){var p=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h,u,f,d)}catch(e){if(dt(p),e!==e+0)throw e;ht(1,0)}},ia:function(e,r,t,a,i,n,_,o,s,c,l,h,u,f,d,p){var m=ft();try{Vr(e)(r,t,a,i,n,_,o,s,c,l,h,u,f,d,p)}catch(e){if(dt(m),e!==e+0)throw e;ht(1,0)}},Ub:function(e,r,t,a,i,n){var _=ft();try{kt(e,r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},Wb:function(e,r,t,a,i){var n=ft();try{gt(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Jb:function(e,r,t,a,i,n){var _=ft();try{Ot(e,r,t,a,i,n)}catch(e){if(dt(_),e!==e+0)throw e;ht(1,0)}},Rb:function(e,r,t,a,i,n,_){var o=ft();try{yt(e,r,t,a,i,n,_)}catch(e){if(dt(o),e!==e+0)throw e;ht(1,0)}},Tb:function(e,r,t,a){var i=ft();try{At(e,r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},Db:function(e,r,t,a,i){var n=ft();try{Rt(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},Bb:function(e,r,t,a){var i=ft();try{Vt(e,r,t,a)}catch(e){if(dt(i),e!==e+0)throw e;ht(1,0)}},Cb:function(e,r,t,a,i){var n=ft();try{Ut(e,r,t,a,i)}catch(e){if(dt(n),e!==e+0)throw e;ht(1,0)}},B:e=>e,Yb:(e,r,t,a)=>((e,r,t,a)=>{function i(e,r,t){for(e="number"==typeof e?e.toString():e||"";e.length<r;)e=t[0]+e;return e}function n(e,r){return i(e,r,"0")}function _(e,r){function t(e){return 0>e?-1:0<e?1:0}var a;return 0===(a=t(e.getFullYear()-r.getFullYear()))&&0===(a=t(e.getMonth()-r.getMonth()))&&(a=t(e.getDate()-r.getDate())),a}function o(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function s(e){var r=e.di;for(e=new Date(new Date(e.ei+1900,0,1).getTime());0<r;){var t=e.getMonth(),a=(ar(e.getFullYear())?tt:at)[t];if(!(r>a-e.getDate())){e.setDate(e.getDate()+r);break}r-=a-e.getDate()+1,e.setDate(1),11>t?e.setMonth(t+1):(e.setMonth(0),e.setFullYear(e.getFullYear()+1))}return t=new Date(e.getFullYear()+1,0,4),r=o(new Date(e.getFullYear(),0,4)),t=o(t),0>=_(r,e)?0>=_(t,e)?e.getFullYear()+1:e.getFullYear():e.getFullYear()-1}var c=E[a+40>>2];for(var l in a={bj:v[a>>2],aj:v[a+4>>2],ti:v[a+8>>2],Ai:v[a+12>>2],ui:v[a+16>>2],ei:v[a+20>>2],Xh:v[a+24>>2],di:v[a+28>>2],wj:v[a+32>>2],$i:v[a+36>>2],cj:c&&c?re(m,c):""},t=t?re(m,t):"",c={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})t=t.replace(new RegExp(l,"g"),c[l]);var h="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),u="January February March April May June July August September October November December".split(" ");for(l in c={"%a":e=>h[e.Xh].substring(0,3),"%A":e=>h[e.Xh],"%b":e=>u[e.ui].substring(0,3),"%B":e=>u[e.ui],"%C":e=>n((e.ei+1900)/100|0,2),"%d":e=>n(e.Ai,2),"%e":e=>i(e.Ai,2," "),"%g":e=>s(e).toString().substring(2),"%G":s,"%H":e=>n(e.ti,2),"%I":e=>(0==(e=e.ti)?e=12:12<e&&(e-=12),n(e,2)),"%j":e=>{for(var r=0,t=0;t<=e.ui-1;r+=(ar(e.ei+1900)?tt:at)[t++]);return n(e.Ai+r,3)},"%m":e=>n(e.ui+1,2),"%M":e=>n(e.aj,2),"%n":()=>"\\n","%p":e=>0<=e.ti&&12>e.ti?"AM":"PM","%S":e=>n(e.bj,2),"%t":()=>"\\t","%u":e=>e.Xh||7,"%U":e=>n(Math.floor((e.di+7-e.Xh)/7),2),"%V":e=>{var r=Math.floor((e.di+7-(e.Xh+6)%7)/7);if(2>=(e.Xh+371-e.di-2)%7&&r++,r)53==r&&(4==(t=(e.Xh+371-e.di)%7)||3==t&&ar(e.ei)||(r=1));else{r=52;var t=(e.Xh+7-e.di-1)%7;(4==t||5==t&&ar(e.ei%400-1))&&r++}return n(r,2)},"%w":e=>e.Xh,"%W":e=>n(Math.floor((e.di+7-(e.Xh+6)%7)/7),2),"%y":e=>(e.ei+1900).toString().substring(2),"%Y":e=>e.ei+1900,"%z":e=>{var r=0<=(e=e.$i);return e=Math.abs(e)/60,(r?"+":"-")+String("0000"+(e/60*100+e%60)).slice(-4)},"%Z":e=>e.cj,"%%":()=>"%"},t=t.replace(/%%/g,"\\0\\0"),c)t.includes(l)&&(t=t.replace(new RegExp(l,"g"),c[l](a)));return(l=ne(t=t.replace(/\\0\\0/g,"%"),!1)).length>r?0:(p.set(l,e),l.length-1)})(e,r,t,a)},ot=function(){function e(e){return ot=e.exports,f=ot.uc,A(),Cr=ot.zc,N.unshift(ot.vc),O(),ot}var r={a:_t};if(F(),i.instantiateWasm)try{return i.instantiateWasm(r,e)}catch(e){u(`Module.instantiateWasm callback failed with error: ${e}`),a(e)}return r=function(e){if(L==L&&l)var r=new Uint8Array(l);else{if(!n)throw\'sync fetching of the wasm failed: you can preload it to Module["wasmBinary"] manually, or emcc.py will do that for you when generating HTML (but not JS)\';r=n(L)}return r=new WebAssembly.Module(r),[new WebAssembly.Instance(r,e),r]}(r),e(r[0])}();i._zappar_has_initialized=ot.wc,i._zappar_invert=ot.xc,i._zappar_loaded=ot.yc,i._zappar_pipeline_create=ot.Ac,i._zappar_pipeline_destroy=ot.Bc,i._zappar_pipeline_camera_frame_submit=ot.Cc,i._zappar_pipeline_camera_frame_submit_raw_pointer=ot.Dc,i._zappar_pipeline_frame_update=ot.Ec,i._zappar_pipeline_camera_frame_user_data=ot.Fc,i._zappar_pipeline_camera_model=ot.Gc,i._zappar_pipeline_frame_number=ot.Hc,i._zappar_pipeline_camera_frame_data_raw_size=ot.Ic,i._zappar_pipeline_camera_frame_data_raw_width=ot.Jc,i._zappar_pipeline_camera_frame_data_raw_height=ot.Kc,i._zappar_pipeline_camera_frame_data_raw=ot.Lc,i._zappar_pipeline_motion_accelerometer_submit=ot.Mc,i._zappar_pipeline_motion_accelerometer_with_gravity_submit_int=ot.Nc,i._zappar_pipeline_motion_accelerometer_without_gravity_submit_int=ot.Oc,i._zappar_pipeline_motion_rotation_rate_submit_int=ot.Pc,i._zappar_pipeline_motion_attitude_submit_int=ot.Qc,i._zappar_pipeline_motion_rotation_rate_submit=ot.Rc,i._zappar_pipeline_motion_attitude_submit=ot.Sc,i._zappar_pipeline_motion_attitude_matrix_submit=ot.Tc,i._zappar_pipeline_camera_frame_user_facing=ot.Uc,i._zappar_pipeline_camera_frame_texture_matrix=ot.Vc,i._zappar_pipeline_camera_pose_with_attitude=ot.Wc,i._zappar_pipeline_camera_pose_with_origin=ot.Xc,i._zappar_pipeline_camera_frame_camera_attitude=ot.Yc,i._zappar_pipeline_camera_frame_device_attitude=ot.Zc,i._zappar_pipeline_camera_frame_texture_gl=ot._c,i._zappar_pipeline_camera_frame_upload_gl=ot.$c,i._zappar_pipeline_sequence_record_start=ot.ad,i._zappar_pipeline_sequence_record_stop=ot.bd,i._zappar_pipeline_sequence_record_clear=ot.cd,i._zappar_pipeline_sequence_record_device_attitude_matrices_set=ot.dd,i._zappar_pipeline_sequence_record_data_size=ot.ed,i._zappar_pipeline_sequence_record_data=ot.fd,i._zappar_pipeline_process_gl=ot.gd,i._zappar_pipeline_camera_pose_default=ot.hd,i._zappar_instant_world_tracker_create=ot.id,i._zappar_instant_world_tracker_destroy=ot.jd,i._zappar_instant_world_tracker_anchor_pose_set_from_camera_offset_raw=ot.kd,i._zappar_instant_world_tracker_anchor_pose_raw=ot.ld,i._zappar_instant_world_tracker_enabled_set=ot.md,i._zappar_instant_world_tracker_enabled=ot.nd,i._zappar_image_tracker_create=ot.od,i._zappar_image_tracker_destroy=ot.pd,i._zappar_image_tracker_target_load_from_memory=ot.qd,i.__Z42zappar_image_tracker_target_load_from_fileP23zappar_image_tracker_tiPKc=ot.rd;var st=i._free=ot.sd;i._zappar_image_tracker_anchor_count=ot.td,i._zappar_image_tracker_anchor_id=ot.ud,i._zappar_image_tracker_anchor_pose_raw=ot.vd,i._zappar_image_tracker_enabled_set=ot.wd,i._zappar_image_tracker_enabled=ot.xd,i._zappar_image_tracker_target_loaded_version=ot.yd,i.__Z33zappar_image_tracker_target_countP23zappar_image_tracker_ti=ot.zd,i.__Z46zappar_image_tracker_target_preview_compressedP23zappar_image_tracker_tii=ot.Ad,i.__Z51zappar_image_tracker_target_preview_compressed_sizeP23zappar_image_tracker_tii=ot.Bd,i.__Z55zappar_image_tracker_target_preview_compressed_mimetypeP23zappar_image_tracker_tii=ot.Cd,i.__Z40zappar_image_tracker_target_preview_rgbaP23zappar_image_tracker_tii=ot.Dd,i.__Z45zappar_image_tracker_target_preview_rgba_sizeP23zappar_image_tracker_tii=ot.Ed,i.__Z46zappar_image_tracker_target_preview_rgba_widthP23zappar_image_tracker_tii=ot.Fd,i.__Z47zappar_image_tracker_target_preview_rgba_heightP23zappar_image_tracker_tii=ot.Gd,i.__Z38zappar_image_tracker_target_radius_topP23zappar_image_tracker_tii=ot.Hd,i.__Z41zappar_image_tracker_target_radius_bottomP23zappar_image_tracker_tii=ot.Id,i.__Z39zappar_image_tracker_target_side_lengthP23zappar_image_tracker_tii=ot.Jd,i.__Z49zappar_image_tracker_target_physical_scale_factorP23zappar_image_tracker_tii=ot.Kd,i.__Z49zappar_image_tracker_target_preview_mesh_verticesP23zappar_image_tracker_tii=ot.Ld,i.__Z48zappar_image_tracker_target_preview_mesh_normalsP23zappar_image_tracker_tii=ot.Md,i.__Z44zappar_image_tracker_target_preview_mesh_uvsP23zappar_image_tracker_tii=ot.Nd,i.__Z48zappar_image_tracker_target_preview_mesh_indicesP23zappar_image_tracker_tii=ot.Od,i.__Z54zappar_image_tracker_target_preview_mesh_vertices_sizeP23zappar_image_tracker_tii=ot.Pd,i.__Z53zappar_image_tracker_target_preview_mesh_normals_sizeP23zappar_image_tracker_tii=ot.Qd,i.__Z49zappar_image_tracker_target_preview_mesh_uvs_sizeP23zappar_image_tracker_tii=ot.Rd,i.__Z53zappar_image_tracker_target_preview_mesh_indices_sizeP23zappar_image_tracker_tii=ot.Sd,i.__Z32zappar_image_tracker_target_typeP23zappar_image_tracker_tii=ot.Td,i._zappar_face_tracker_create=ot.Ud,i._zappar_face_tracker_destroy=ot.Vd,i._zappar_face_tracker_model_load_from_memory=ot.Wd,i._zappar_face_tracker_anchor_count=ot.Xd,i._zappar_face_tracker_anchor_id=ot.Yd,i._zappar_face_tracker_anchor_pose_raw=ot.Zd,i._zappar_face_tracker_anchor_identity_coefficients=ot._d,i._zappar_face_tracker_anchor_expression_coefficients=ot.$d,i._zappar_face_tracker_enabled_set=ot.ae,i._zappar_face_tracker_enabled=ot.be,i._zappar_face_tracker_max_faces_set=ot.ce,i._zappar_face_tracker_max_faces=ot.de,i._zappar_face_tracker_model_loaded_version=ot.ee,i._zappar_face_landmark_create=ot.fe,i._zappar_face_landmark_destroy=ot.ge,i.__Z27zappar_face_landmark_updateP23zappar_face_landmark_tiPKfS2_i=ot.he,i._zappar_face_landmark_anchor_pose=ot.ie,i._zappar_barcode_finder_create=ot.je,i._zappar_barcode_finder_destroy=ot.ke,i._zappar_barcode_finder_found_number=ot.le,i._zappar_barcode_finder_found_text=ot.me,i._zappar_barcode_finder_enabled_set=ot.ne,i._zappar_barcode_finder_enabled=ot.oe,i._zappar_barcode_finder_found_format=ot.pe,i._zappar_barcode_finder_formats=ot.qe,i._zappar_barcode_finder_formats_set=ot.re,i._zappar_zapcode_tracker_create=ot.se,i._zappar_zapcode_tracker_destroy=ot.te,i._zappar_zapcode_tracker_target_load_from_memory=ot.ue,i.__Z44zappar_zapcode_tracker_target_load_from_fileP25zappar_zapcode_tracker_tiPKc=ot.ve,i._zappar_zapcode_tracker_anchor_count=ot.we,i._zappar_zapcode_tracker_anchor_id=ot.xe,i._zappar_zapcode_tracker_anchor_pose_raw=ot.ye,i._zappar_zapcode_tracker_enabled_set=ot.ze,i._zappar_zapcode_tracker_enabled=ot.Ae,i._zappar_zapcode_tracker_target_loaded_version=ot.Be;var ct=i._malloc=ot.Ce;i._zappar_face_mesh_create=ot.De,i._zappar_face_mesh_destroy=ot.Ee,i.__Z33zappar_face_mesh_load_from_memoryP19zappar_face_mesh_tiPKciiiii=ot.Fe,i.__Z29zappar_face_mesh_indices_sizeP19zappar_face_mesh_ti=ot.Ge,i.__Z25zappar_face_mesh_uvs_sizeP19zappar_face_mesh_ti=ot.He,i.__Z30zappar_face_mesh_vertices_sizeP19zappar_face_mesh_ti=ot.Ie,i.__Z31zappar_face_mesh_loaded_versionP19zappar_face_mesh_ti=ot.Je,i.__Z25zappar_face_mesh_verticesP19zappar_face_mesh_ti=ot.Ke,i.__Z20zappar_face_mesh_uvsP19zappar_face_mesh_ti=ot.Le,i.__Z24zappar_face_mesh_indicesP19zappar_face_mesh_ti=ot.Me,i.__Z23zappar_face_mesh_updateP19zappar_face_mesh_tiPKfS2_i=ot.Ne,i.__Z29zappar_face_mesh_normals_sizeP19zappar_face_mesh_ti=ot.Oe,i.__Z24zappar_face_mesh_normalsP19zappar_face_mesh_ti=ot.Pe,i._zappar_camera_source_create=ot.Qe,i._zappar_camera_source_destroy=ot.Re,i._zappar_camera_source_start=ot.Se,i._zappar_camera_source_pause=ot.Te,i._zappar_camera_default_device_id=ot.Ue,i._zappar_sequence_source_create=ot.Ve,i.__Z28zappar_sequence_source_startP25zappar_sequence_source_ti=ot.We,i.__Z39zappar_sequence_source_load_from_memoryP25zappar_sequence_source_tiPKci=ot.Xe,i.__Z28zappar_sequence_source_pauseP25zappar_sequence_source_ti=ot.Ye,i._zappar_sequence_source_destroy=ot.Ze,i._zappar_sequence_source_max_playback_fps_set=ot._e,i._zappar_log_level_set=ot.$e,i._zappar_log_level=ot.af,i.__Z23zappar_log_redirect_setPFv18zappar_log_level_tPKcE=ot.bf,i._zappar_world_tracker_create=ot.cf,i._zappar_world_tracker_destroy=ot.df,i._zappar_world_tracker_world_anchor_valid=ot.ef,i._zappar_world_tracker_plane_count=ot.ff,i._zappar_world_tracker_plane_pose_raw=ot.gf,i._zappar_world_tracker_world_anchor_pose_raw=ot.hf,i._zappar_world_tracker_ground_anchor_valid=ot.jf,i._zappar_world_tracker_ground_anchor_pose_raw=ot.kf,i._zappar_world_tracker_reset=ot.lf,i._zappar_world_tracker_enabled_set=ot.mf,i._zappar_world_tracker_quality=ot.nf,i._zappar_world_tracker_enabled=ot.of,i._zappar_world_tracker_debug_enabled=ot.pf,i._zappar_world_tracker_debug_enabled_set=ot.qf,i._zappar_world_tracker_debug_tracks_data=ot.rf,i._zappar_world_tracker_debug_tracks_data_size=ot.sf,i._zappar_world_tracker_debug_projections_data=ot.tf,i._zappar_world_tracker_debug_projections_data_size=ot.uf,i._worker_message_send_count=ot.vf,i._worker_message_send_clear=ot.wf,i._worker_message_send_data_size=ot.xf,i._worker_message_send_reference=ot.yf,i._worker_message_send_data=ot.zf,i._worker_message_receive=ot.Af,i._ceres_worker=ot.Bf,i._data_download_clear=ot.Cf,i._data_download_size=ot.Df,i._data_download=ot.Ef,i._data_should_record_set=ot.Ff,i._zappar_analytics_project_id_set=ot.Gf,i.__ZN5boost13serialization16singleton_module8get_lockEv=ot.Hf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN10SLAMSystem19InitializationInputEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.If,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23mapIi5FrameNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Jf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__24pairIKi5FrameEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Kf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveE5FrameE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Lf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23mapIiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEENS4_4lessIiEENS4_9allocatorINS4_4pairIKiS8_EEEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Mf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__24pairIKiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Nf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Of,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam5Pose3EE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Pf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi6ELi1ELi0ELi6ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Qf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi3ELi1ELi0ELi3ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Rf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam7imuBias12ConstantBiasEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Sf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__26bitsetILm2EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Tf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__26vectorI3ImuNS4_9allocatorIS6_EEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Uf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveE3ImuE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Vf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23mapIi12WorldFeatureNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Wf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__24pairIKi12WorldFeatureEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Xf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveE12WorldFeatureE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Yf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23setIiNS4_4lessIiEENS4_9allocatorIiEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Zf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__210shared_ptrIN5gtsam7Cal3_S2EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot._f,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam7Cal3_S2EE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.$f,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi5ELi1ELi0ELi5ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ag,i.__ZNK5boost7archive6detail19pointer_iserializerINS0_15binary_iarchiveEN5gtsam7Cal3_S2EE15load_object_ptrERNS1_14basic_iarchiveEPvj=ot.bg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__210shared_ptrIN5gtsam28PreintegrationCombinedParamsEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.cg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam28PreintegrationCombinedParamsEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.dg,i.__ZN5boost13serialization18void_cast_registerIN5gtsam28PreintegrationCombinedParamsENS2_20PreintegrationParamsEEERKNS0_16void_cast_detail11void_casterEPKT_PKT0_=ot.eg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam20PreintegrationParamsEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.fg,i.__ZN5boost13serialization18void_cast_registerIN5gtsam20PreintegrationParamsENS2_27PreintegratedRotationParamsEEERKNS0_16void_cast_detail11void_casterEPKT_PKT0_=ot.gg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam27PreintegratedRotationParamsEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.hg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__28optionalIN5gtsam5Pose3EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ig,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__28optionalIN5Eigen6MatrixIdLi3ELi1ELi0ELi3ELi1EEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.jg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi3ELi3ELi0ELi3ELi3EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.kg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi6ELi6ELi0ELi6ELi6EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.lg,i.__ZNK5boost7archive6detail19pointer_iserializerINS0_15binary_iarchiveEN5gtsam28PreintegrationCombinedParamsEE15load_object_ptrERNS1_14basic_iarchiveEPvj=ot.mg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN10SLAMSystem10ParametersEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ng,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN2cv12TermCriteriaEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.og,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN10SLAMSystem20InitializationResultEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.pg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23mapIi5FrameNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.qg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__24pairIKi5FrameEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.rg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveE5FrameE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.sg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23mapIiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEENS4_4lessIiEENS4_9allocatorINS4_4pairIKiS8_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.tg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__24pairIKiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ug,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.vg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam5Pose3EE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.wg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi6ELi1ELi0ELi6ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.xg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi3ELi1ELi0ELi3ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.yg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam7imuBias12ConstantBiasEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.zg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__26bitsetILm2EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ag,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__26vectorI3ImuNS4_9allocatorIS6_EEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Bg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveE3ImuE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Cg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23mapIi12WorldFeatureNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Dg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__24pairIKi12WorldFeatureEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Eg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveE12WorldFeatureE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Fg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23setIiNS4_4lessIiEENS4_9allocatorIiEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Gg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN10SLAMSystem19InitializationInputEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Hg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__210shared_ptrIN5gtsam7Cal3_S2EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ig,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam7Cal3_S2EE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Jg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi5ELi1ELi0ELi5ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Kg,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_15binary_oarchiveEN5gtsam7Cal3_S2EE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.Lg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__210shared_ptrIN5gtsam28PreintegrationCombinedParamsEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Mg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam28PreintegrationCombinedParamsEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ng,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam20PreintegrationParamsEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Og,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam27PreintegratedRotationParamsEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Pg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__28optionalIN5gtsam5Pose3EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Qg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__28optionalIN5Eigen6MatrixIdLi3ELi1ELi0ELi3ELi1EEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Rg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi3ELi3ELi0ELi3ELi3EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Sg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi6ELi6ELi0ELi6ELi6EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Tg,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_15binary_oarchiveEN5gtsam28PreintegrationCombinedParamsEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.Ug,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN10SLAMSystem10ParametersEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Vg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN2cv12TermCriteriaEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Wg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN10SLAMSystem20InitializationResultEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Xg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveE9RecordingE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Yg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__26vectorI11SensorEventNS4_9allocatorIS6_EEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Zg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveE11SensorEventE16save_object_dataERNS1_14basic_oarchiveEPKv=ot._g,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5Eigen6MatrixIdLin1ELi1ELi0ELin1ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.$g;var lt,ht=ot.ah,ut=ot.bh,ft=ot.ch,dt=ot.dh,pt=ot.eh,mt=ot.fh,bt=ot.gh,wt=ot.hh,vt=ot.ih,Et=i.dynCall_j=ot.jh,gt=i.dynCall_viij=ot.kh,yt=i.dynCall_viijii=ot.lh,kt=i.dynCall_viiij=ot.mh,At=i.dynCall_vij=ot.nh,zt=i.dynCall_iij=ot.oh,Nt=i.dynCall_iiji=ot.ph,Rt=i.dynCall_viji=ot.qh,St=i.dynCall_iijj=ot.rh,Lt=i.dynCall_jiji=ot.sh,Tt=i.dynCall_jij=ot.th,xt=i.dynCall_iiij=ot.uh,It=i.dynCall_ji=ot.vh,Pt=i.dynCall_iiiijjji=ot.wh,Mt=i.dynCall_iiiijji=ot.xh,Ft=i.dynCall_iijjjjjji=ot.yh,Ot=i.dynCall_viiji=ot.zh,Ct=i.dynCall_diji=ot.Ah,jt=i.dynCall_jiii=ot.Bh,Bt=i.dynCall_jii=ot.Ch,Ut=i.dynCall_vjii=ot.Dh,Vt=i.dynCall_vji=ot.Eh,Dt=i.dynCall_iji=ot.Fh,Kt=i.dynCall_iiiij=ot.Gh,Zt=i.dynCall_jj=ot.Hh,Gt=i.dynCall_djj=ot.Ih,Wt=i.dynCall_iiiiij=ot.Jh,Xt=i.dynCall_jiiii=ot.Kh;function Yt(){function e(){if(!lt&&(lt=!0,i.calledRun=!0,!k)){if(i.noFSInit||Oe||(Oe=!0,i.stdin=i.stdin,i.stdout=i.stdout,i.stderr=i.stderr,i.stdin?Xe("stdin",i.stdin):Ke("/dev/tty","/dev/stdin"),i.stdout?Xe("stdout",null,i.stdout):Ke("/dev/tty","/dev/stdout"),i.stderr?Xe("stderr",null,i.stderr):Ke("/dev/tty1","/dev/stderr"),Ge("/dev/stdin",0),Ge("/dev/stdout",1),Ge("/dev/stderr",1)),Ee=!1,U(N),t(i),i.onRuntimeInitialized&&i.onRuntimeInitialized(),i.postRun)for("function"==typeof i.postRun&&(i.postRun=[i.postRun]);i.postRun.length;){var e=i.postRun.shift();R.unshift(e)}U(R)}}if(!(0<I)){if(i.preRun)for("function"==typeof i.preRun&&(i.preRun=[i.preRun]);i.preRun.length;)S();U(z),0<I||(i.setStatus?(i.setStatus("Running..."),setTimeout((function(){setTimeout((function(){i.setStatus("")}),1),e()}),1)):e())}}if(i.___start_em_js=632092,i.___stop_em_js=633257,i.cwrap=(e,r,t,a)=>{var n=!t||t.every((e=>"number"===e||"boolean"===e));return"string"!==r&&n&&!a?i["_"+e]:function(){return((e,r,t,a)=>{var n={string:e=>{var r=0;if(null!=e&&0!==e){r=ae(e)+1;var t=pt(r);ie(e,m,t,r),r=t}return r},array:e=>{var r=pt(e.length);return p.set(e,r),r}};e=i["_"+e];var _,o=[],s=0;if(a)for(var c=0;c<a.length;c++){var l=n[t[c]];l?(0===s&&(s=ft()),o[c]=l(a[c])):o[c]=a[c]}return _=t=e.apply(null,o),0!==s&&dt(s),"string"===r?_?re(m,_):"":"boolean"===r?!!_:_})(e,r,t,arguments)}},i.setValue=function(e,r,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":case"i8":p[e>>0]=r;break;case"i16":b[e>>1]=r;break;case"i32":v[e>>2]=r;break;case"i64":C("to do setValue(i64) use WASM_BIGINT");case"float":g[e>>2]=r;break;case"double":y[e>>3]=r;break;case"*":E[e>>2]=r;break;default:C(`invalid type for setValue: ${t}`)}},i.getValue=function(e,r="i8"){switch(r.endsWith("*")&&(r="*"),r){case"i1":case"i8":return p[e>>0];case"i16":return b[e>>1];case"i32":return v[e>>2];case"i64":C("to do getValue(i64) use WASM_BIGINT");case"float":return g[e>>2];case"double":return y[e>>3];case"*":return E[e>>2];default:C(`invalid type for getValue: ${r}`)}},i.UTF8ToString=Qe,M=function e(){lt||Yt(),lt||(M=e)},i.preInit)for("function"==typeof i.preInit&&(i.preInit=[i.preInit]);0<i.preInit.length;)i.preInit.pop()();return Yt(),r});class a{constructor(e){this._messageSender=e,this._freeBufferPool=[],this._buffer=new ArrayBuffer(16),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=1,this._startOffset=-1,this._timeoutSet=!1,this._appender={int:e=>this.int(e),bool:e=>this.int(e?1:0),float:e=>this.float(e),string:e=>this.string(e),dataWithLength:e=>this.arrayBuffer(e),type:e=>this.int(e),matrix4x4:e=>this.float32ArrayBuffer(e),matrix3x3:e=>this.float32ArrayBuffer(e),floatArray:e=>this.float32ArrayBuffer(e),identityCoefficients:e=>this.float32ArrayBuffer(e),expressionCoefficients:e=>this.float32ArrayBuffer(e),cameraModel:e=>this.float32ArrayBuffer(e),timestamp:e=>this.double(e),barcodeFormat:e=>this.int(e),faceLandmarkName:e=>this.int(e),instantTrackerTransformOrientation:e=>this.int(e),logLevel:e=>this.int(e)},this._freeBufferPool.push(new ArrayBuffer(16)),this._freeBufferPool.push(new ArrayBuffer(16))}bufferReturn(e){this._freeBufferPool.push(e)}_ensureArrayBuffer(e){let r,t=4*(this._offset+e+8);if(this._buffer&&this._buffer.byteLength>=t)return;if(!r){let e=t;e--,e|=e>>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,e++,r=new ArrayBuffer(e)}let a=this._buffer?this._i32View:void 0;this._buffer=r,this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),a&&this._i32View.set(a.subarray(0,this._offset))}sendMessage(e,r){this._ensureArrayBuffer(4),this._startOffset=this._offset,this._i32View[this._offset+1]=e,this._offset+=2,r(this._appender),this._i32View[this._startOffset]=this._offset-this._startOffset,this._startOffset=-1,this._sendOneTime()}_sendOneTime(){!1===this._timeoutSet&&(this._timeoutSet=!0,setTimeout((()=>{this._timeoutSet=!1,this._send()}),0))}_send(){0!==this._freeBufferPool.length?(this._i32View[0]=this._offset,this._messageSender(this._buffer),this._buffer=void 0,this._buffer=this._freeBufferPool.pop(),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=1,this._startOffset=-1):this._sendOneTime()}int(e){this._ensureArrayBuffer(1),this._i32View[this._offset]=e,this._offset++}double(e){this._ensureArrayBuffer(2),this._offset%2==1&&this._offset++,this._f64View[this._offset/2]=e,this._offset+=2}float(e){this._ensureArrayBuffer(1),this._f32View[this._offset]=e,this._offset++}int32Array(e){this._ensureArrayBuffer(e.length);for(let r=0;r<e.length;++r)this._i32View[this._offset+r]=e[r];this._offset+=e.length}float32Array(e){this._ensureArrayBuffer(e.length);for(let r=0;r<e.length;++r)this._f32View[this._offset+r]=e[r];this._offset+=e.length}booleanArray(e){this._ensureArrayBuffer(e.length);for(let r=0;r<e.length;++r)this._i32View[this._offset+r]=e[r]?1:0;this._offset+=e.length}uint8ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.byteLength,this._offset++,this._u8View.set(e,4*this._offset),this._offset+=e.byteLength>>2,0!=(3&e.byteLength)&&this._offset++}arrayBuffer(e){let r=new Uint8Array(e);this.uint8ArrayBuffer(r)}uint8ClampedArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.byteLength,this._offset++,this._u8cView.set(e,4*this._offset),this._offset+=e.byteLength>>2,0!=(3&e.byteLength)&&this._offset++}float32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._f32View.set(e,this._offset),this._offset+=e.length}uint16ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++;let r=2*this._offset;this._u16View.set(e,r),this._offset+=e.length>>1,0!=(1&e.length)&&this._offset++}int32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._i32View.set(e,this._offset),this._offset+=e.length}uint32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._u32View.set(e,this._offset),this._offset+=e.length}string(e){let r=(new TextEncoder).encode(e);this._ensureArrayBuffer(r.byteLength/4),this._i32View[this._offset]=r.byteLength,this._offset++,this._u8View.set(r,4*this._offset),this._offset+=r.byteLength>>2,0!=(3&r.byteLength)&&this._offset++}}class i{constructor(){this._buffer=new ArrayBuffer(0),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=0,this._length=0,this._startOffset=-1,this._processor={int:()=>this._i32View[this._startOffset++],bool:()=>1===this._i32View[this._startOffset++],type:()=>this._i32View[this._startOffset++],float:()=>this._f32View[this._startOffset++],timestamp:()=>{this._startOffset%2==1&&this._startOffset++;let e=this._f64View[this._startOffset/2];return this._startOffset+=2,e},string:()=>{let e=this._i32View[this._startOffset++],r=(new TextDecoder).decode(new Uint8Array(this._buffer,4*this._startOffset,e));return this._startOffset+=e>>2,0!=(3&e)&&this._startOffset++,r},dataWithLength:()=>{let e=this._i32View[this._startOffset++],r=new Uint8Array(e);return r.set(this._u8View.subarray(4*this._startOffset,4*this._startOffset+e)),this._startOffset+=r.byteLength>>2,0!=(3&r.byteLength)&&this._startOffset++,r.buffer},floatArray:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+e)),this._startOffset+=e,r},matrix4x4:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+16)),this._startOffset+=e,r},matrix3x3:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+9)),this._startOffset+=e,r},identityCoefficients:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+50)),this._startOffset+=e,r},expressionCoefficients:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+29)),this._startOffset+=e,r},cameraModel:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+6)),this._startOffset+=e,r},barcodeFormat:()=>this._i32View[this._startOffset++],faceLandmarkName:()=>this._i32View[this._startOffset++],instantTrackerTransformOrientation:()=>this._i32View[this._startOffset++],logLevel:()=>this._i32View[this._startOffset++]}}setData(e){this._buffer=e,this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=0,this._length=0,e.byteLength>=4&&(this._offset=1,this._length=this._i32View[0]),this._startOffset=-1}hasMessage(){return this._offset+1<this._length}forMessages(e){for(;this.hasMessage();){let r=this._i32View[this._offset],t=this._i32View[this._offset+1];this._startOffset=this._offset+2,this._offset+=r,e(t,this._processor)}}}class n{constructor(e,r){this._impl=e,this._sender=r,this._deserializer=new i,this.serializersByPipelineId=new Map,this._pipeline_id_by_pipeline_id=new Map,this._pipeline_by_instance=new Map,this._pipeline_id_by_camera_source_id=new Map,this._camera_source_by_instance=new Map,this._pipeline_id_by_sequence_source_id=new Map,this._sequence_source_by_instance=new Map,this._pipeline_id_by_image_tracker_id=new Map,this._image_tracker_by_instance=new Map,this._pipeline_id_by_face_tracker_id=new Map,this._face_tracker_by_instance=new Map,this._pipeline_id_by_face_mesh_id=new Map,this._face_mesh_by_instance=new Map,this._pipeline_id_by_face_landmark_id=new Map,this._face_landmark_by_instance=new Map,this._pipeline_id_by_barcode_finder_id=new Map,this._barcode_finder_by_instance=new Map,this._pipeline_id_by_instant_world_tracker_id=new Map,this._instant_world_tracker_by_instance=new Map,this._pipeline_id_by_zapcode_tracker_id=new Map,this._zapcode_tracker_by_instance=new Map,this._pipeline_id_by_world_tracker_id=new Map,this._world_tracker_by_instance=new Map}processBuffer(e){this._deserializer.setData(e),this._deserializer.forMessages(((e,r)=>{switch(e){case 38:this._impl.log_level_set(r.logLevel());break;case 35:this._impl.analytics_project_id_set(r.string(),r.string());break;case 31:{let e=r.type(),t=this._impl.pipeline_create();this._pipeline_by_instance.set(e,t),this._pipeline_id_by_pipeline_id.set(e,e),this.serializersByPipelineId.set(e,new a((r=>{this._sender(e,r)})));break}case 32:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_destroy(t),this._pipeline_by_instance.delete(e);break}case 9:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_frame_update(t);break}case 8:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_camera_frame_submit(t,r.dataWithLength(),r.int(),r.int(),r.int(),r.matrix4x4(),r.cameraModel(),r.bool());break}case 10:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_accelerometer_submit(t,r.timestamp(),r.float(),r.float(),r.float());break}case 12:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_accelerometer_with_gravity_submit_int(t,r.timestamp(),r.timestamp(),r.float(),r.float(),r.float());break}case 11:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_accelerometer_without_gravity_submit_int(t,r.timestamp(),r.timestamp(),r.float(),r.float(),r.float());break}case 15:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_rotation_rate_submit(t,r.timestamp(),r.float(),r.float(),r.float());break}case 13:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_rotation_rate_submit_int(t,r.timestamp(),r.timestamp(),r.float(),r.float(),r.float());break}case 16:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_attitude_submit(t,r.timestamp(),r.float(),r.float(),r.float());break}case 14:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_attitude_submit_int(t,r.timestamp(),r.timestamp(),r.float(),r.float(),r.float());break}case 17:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_attitude_matrix_submit(t,r.matrix4x4());break}case 33:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=r.string(),n=this._impl.camera_source_create(a,i);this._camera_source_by_instance.set(e,n),this._pipeline_id_by_camera_source_id.set(e,t);break}case 34:{let e=r.type(),t=this._camera_source_by_instance.get(e);if(void 0===t)return;this._impl.camera_source_destroy(t),this._camera_source_by_instance.delete(e);break}case 39:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.sequence_source_create(a);this._sequence_source_by_instance.set(e,i),this._pipeline_id_by_sequence_source_id.set(e,t);break}case 40:{let e=r.type(),t=this._sequence_source_by_instance.get(e);if(void 0===t)return;this._impl.sequence_source_destroy(t),this._sequence_source_by_instance.delete(e);break}case 2:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.image_tracker_create(a);this._image_tracker_by_instance.set(e,i),this._pipeline_id_by_image_tracker_id.set(e,t);break}case 18:{let e=r.type(),t=this._image_tracker_by_instance.get(e);if(void 0===t)return;this._impl.image_tracker_destroy(t),this._image_tracker_by_instance.delete(e);break}case 4:{let e=r.type(),t=this._image_tracker_by_instance.get(e);if(void 0===t)return;this._impl.image_tracker_target_load_from_memory(t,r.dataWithLength());break}case 3:{let e=r.type(),t=this._image_tracker_by_instance.get(e);if(void 0===t)return;this._impl.image_tracker_enabled_set(t,r.bool());break}case 24:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.face_tracker_create(a);this._face_tracker_by_instance.set(e,i),this._pipeline_id_by_face_tracker_id.set(e,t);break}case 25:{let e=r.type(),t=this._face_tracker_by_instance.get(e);if(void 0===t)return;this._impl.face_tracker_destroy(t),this._face_tracker_by_instance.delete(e);break}case 26:{let e=r.type(),t=this._face_tracker_by_instance.get(e);if(void 0===t)return;this._impl.face_tracker_model_load_from_memory(t,r.dataWithLength());break}case 27:{let e=r.type(),t=this._face_tracker_by_instance.get(e);if(void 0===t)return;this._impl.face_tracker_enabled_set(t,r.bool());break}case 28:{let e=r.type(),t=this._face_tracker_by_instance.get(e);if(void 0===t)return;this._impl.face_tracker_max_faces_set(t,r.int());break}case 29:{let e=r.type(),t=this._impl.face_mesh_create();this._face_mesh_by_instance.set(e,t);break}case 30:{let e=r.type(),t=this._face_mesh_by_instance.get(e);if(void 0===t)return;this._impl.face_mesh_destroy(t),this._face_mesh_by_instance.delete(e);break}case 36:{let e=r.type(),t=r.faceLandmarkName(),a=this._impl.face_landmark_create(t);this._face_landmark_by_instance.set(e,a);break}case 37:{let e=r.type(),t=this._face_landmark_by_instance.get(e);if(void 0===t)return;this._impl.face_landmark_destroy(t),this._face_landmark_by_instance.delete(e);break}case 20:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.barcode_finder_create(a);this._barcode_finder_by_instance.set(e,i),this._pipeline_id_by_barcode_finder_id.set(e,t);break}case 21:{let e=r.type(),t=this._barcode_finder_by_instance.get(e);if(void 0===t)return;this._impl.barcode_finder_destroy(t),this._barcode_finder_by_instance.delete(e);break}case 22:{let e=r.type(),t=this._barcode_finder_by_instance.get(e);if(void 0===t)return;this._impl.barcode_finder_enabled_set(t,r.bool());break}case 23:{let e=r.type(),t=this._barcode_finder_by_instance.get(e);if(void 0===t)return;this._impl.barcode_finder_formats_set(t,r.barcodeFormat());break}case 5:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.instant_world_tracker_create(a);this._instant_world_tracker_by_instance.set(e,i),this._pipeline_id_by_instant_world_tracker_id.set(e,t);break}case 19:{let e=r.type(),t=this._instant_world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.instant_world_tracker_destroy(t),this._instant_world_tracker_by_instance.delete(e);break}case 6:{let e=r.type(),t=this._instant_world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.instant_world_tracker_enabled_set(t,r.bool());break}case 7:{let e=r.type(),t=this._instant_world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.instant_world_tracker_anchor_pose_set_from_camera_offset_raw(t,r.float(),r.float(),r.float(),r.instantTrackerTransformOrientation());break}case 41:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.zapcode_tracker_create(a);this._zapcode_tracker_by_instance.set(e,i),this._pipeline_id_by_zapcode_tracker_id.set(e,t);break}case 44:{let e=r.type(),t=this._zapcode_tracker_by_instance.get(e);if(void 0===t)return;this._impl.zapcode_tracker_destroy(t),this._zapcode_tracker_by_instance.delete(e);break}case 43:{let e=r.type(),t=this._zapcode_tracker_by_instance.get(e);if(void 0===t)return;this._impl.zapcode_tracker_target_load_from_memory(t,r.dataWithLength());break}case 42:{let e=r.type(),t=this._zapcode_tracker_by_instance.get(e);if(void 0===t)return;this._impl.zapcode_tracker_enabled_set(t,r.bool());break}case 45:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.world_tracker_create(a);this._world_tracker_by_instance.set(e,i),this._pipeline_id_by_world_tracker_id.set(e,t);break}case 46:{let e=r.type(),t=this._world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.world_tracker_destroy(t),this._world_tracker_by_instance.delete(e);break}case 47:{let e=r.type(),t=this._world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.world_tracker_enabled_set(t,r.bool());break}case 48:{let e=r.type(),t=this._world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.world_tracker_reset(t);break}case 49:{let e=r.type(),t=this._world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.world_tracker_debug_enabled_set(t,r.bool());break}}}))}exploreState(){for(let[e,r]of this._pipeline_by_instance){let t=this._pipeline_id_by_pipeline_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);a&&(a.sendMessage(7,(t=>{t.type(e),t.int(this._impl.pipeline_frame_number(r))})),a.sendMessage(6,(t=>{t.type(e),t.cameraModel(this._impl.pipeline_camera_model(r))})),a.sendMessage(5,(t=>{t.type(e),t.int(this._impl.pipeline_camera_frame_user_data(r))})),a.sendMessage(11,(t=>{t.type(e),t.matrix4x4(this._impl.pipeline_camera_frame_camera_attitude(r))})),a.sendMessage(12,(t=>{t.type(e),t.matrix4x4(this._impl.pipeline_camera_frame_device_attitude(r))})))}for(let[e,r]of this._camera_source_by_instance){let r=this._pipeline_id_by_camera_source_id.get(e);r&&this.serializersByPipelineId.get(r)}for(let[e,r]of this._sequence_source_by_instance){let r=this._pipeline_id_by_sequence_source_id.get(e);r&&this.serializersByPipelineId.get(r)}for(let[e,r]of this._image_tracker_by_instance){let t=this._pipeline_id_by_image_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(19,(t=>{t.type(e),t.int(this._impl.image_tracker_target_loaded_version(r))})),a.sendMessage(1,(t=>{t.type(e),t.int(this._impl.image_tracker_anchor_count(r))}));for(let t=0;t<this._impl.image_tracker_anchor_count(r);t++)a.sendMessage(2,(a=>{a.type(e),a.int(t),a.string(this._impl.image_tracker_anchor_id(r,t))}));for(let t=0;t<this._impl.image_tracker_anchor_count(r);t++)a.sendMessage(3,(a=>{a.type(e),a.int(t),a.matrix4x4(this._impl.image_tracker_anchor_pose_raw(r,t))}))}}for(let[e,r]of this._face_tracker_by_instance){let t=this._pipeline_id_by_face_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(18,(t=>{t.type(e),t.int(this._impl.face_tracker_model_loaded_version(r))})),a.sendMessage(13,(t=>{t.type(e),t.int(this._impl.face_tracker_anchor_count(r))}));for(let t=0;t<this._impl.face_tracker_anchor_count(r);t++)a.sendMessage(14,(a=>{a.type(e),a.int(t),a.string(this._impl.face_tracker_anchor_id(r,t))}));for(let t=0;t<this._impl.face_tracker_anchor_count(r);t++)a.sendMessage(15,(a=>{a.type(e),a.int(t),a.matrix4x4(this._impl.face_tracker_anchor_pose_raw(r,t))}));for(let t=0;t<this._impl.face_tracker_anchor_count(r);t++)a.sendMessage(16,(a=>{a.type(e),a.int(t),a.identityCoefficients(this._impl.face_tracker_anchor_identity_coefficients(r,t))}));for(let t=0;t<this._impl.face_tracker_anchor_count(r);t++)a.sendMessage(17,(a=>{a.type(e),a.int(t),a.expressionCoefficients(this._impl.face_tracker_anchor_expression_coefficients(r,t))}))}}for(let[e,r]of this._face_mesh_by_instance){let r=this._pipeline_id_by_face_mesh_id.get(e);r&&this.serializersByPipelineId.get(r)}for(let[e,r]of this._face_landmark_by_instance){let r=this._pipeline_id_by_face_landmark_id.get(e);r&&this.serializersByPipelineId.get(r)}for(let[e,r]of this._barcode_finder_by_instance){let t=this._pipeline_id_by_barcode_finder_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(8,(t=>{t.type(e),t.int(this._impl.barcode_finder_found_number(r))}));for(let t=0;t<this._impl.barcode_finder_found_number(r);t++)a.sendMessage(9,(a=>{a.type(e),a.int(t),a.string(this._impl.barcode_finder_found_text(r,t))}));for(let t=0;t<this._impl.barcode_finder_found_number(r);t++)a.sendMessage(10,(a=>{a.type(e),a.int(t),a.barcodeFormat(this._impl.barcode_finder_found_format(r,t))}))}}for(let[e,r]of this._instant_world_tracker_by_instance){let t=this._pipeline_id_by_instant_world_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);a&&a.sendMessage(4,(t=>{t.type(e),t.matrix4x4(this._impl.instant_world_tracker_anchor_pose_raw(r))}))}for(let[e,r]of this._zapcode_tracker_by_instance){let t=this._pipeline_id_by_zapcode_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(24,(t=>{t.type(e),t.int(this._impl.zapcode_tracker_target_loaded_version(r))})),a.sendMessage(21,(t=>{t.type(e),t.int(this._impl.zapcode_tracker_anchor_count(r))}));for(let t=0;t<this._impl.zapcode_tracker_anchor_count(r);t++)a.sendMessage(22,(a=>{a.type(e),a.int(t),a.string(this._impl.zapcode_tracker_anchor_id(r,t))}));for(let t=0;t<this._impl.zapcode_tracker_anchor_count(r);t++)a.sendMessage(23,(a=>{a.type(e),a.int(t),a.matrix4x4(this._impl.zapcode_tracker_anchor_pose_raw(r,t))}))}}for(let[e,r]of this._world_tracker_by_instance){let t=this._pipeline_id_by_world_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(31,(t=>{t.type(e),t.int(this._impl.world_tracker_quality(r))})),a.sendMessage(25,(t=>{t.type(e),t.int(this._impl.world_tracker_plane_count(r))}));for(let t=0;t<this._impl.world_tracker_plane_count(r);t++)a.sendMessage(26,(a=>{a.type(e),a.int(t),a.matrix4x4(this._impl.world_tracker_plane_pose_raw(r,t))}));a.sendMessage(27,(t=>{t.type(e),t.bool(this._impl.world_tracker_world_anchor_valid(r))})),a.sendMessage(28,(t=>{t.type(e),t.matrix4x4(this._impl.world_tracker_world_anchor_pose_raw(r))})),a.sendMessage(27,(t=>{t.type(e),t.bool(this._impl.world_tracker_ground_anchor_valid(r))})),a.sendMessage(30,(t=>{t.type(e),t.matrix4x4(this._impl.world_tracker_ground_anchor_pose_raw(r))})),a.sendMessage(33,(t=>{t.type(e),t.int(this._impl.world_tracker_debug_tracks_data_size(r))})),a.sendMessage(32,(t=>{t.type(e),t.floatArray(this._impl.world_tracker_debug_tracks_data(r))})),a.sendMessage(35,(t=>{t.type(e),t.int(this._impl.world_tracker_debug_projections_data_size(r))})),a.sendMessage(34,(t=>{t.type(e),t.floatArray(this._impl.world_tracker_debug_projections_data(r))}))}}}}class _{constructor(){this._funcs=[]}bind(e){this._funcs.push(e)}unbind(e){let r=this._funcs.indexOf(e);r>-1&&this._funcs.splice(r,1)}emit(){for(var e=0,r=this._funcs.length;e<r;e++)this._funcs[e]()}}class o{constructor(){this._funcs=[]}bind(e){this._funcs.push(e)}unbind(e){let r=this._funcs.indexOf(e);r>-1&&this._funcs.splice(r,1)}emit(e){for(var r=0,t=this._funcs.length;r<t;r++)this._funcs[r](e)}}var s,c,l,h,u,f,d,p,m="undefined"!=typeof Float32Array?Float32Array:Array;function b(){var e=new m(16);return m!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function w(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}Math.random,Math.PI,Math.hypot||(Math.hypot=function(){for(var e=0,r=arguments.length;r--;)e+=arguments[r]*arguments[r];return Math.sqrt(e)}),function(e){e[e.UNKNOWN=131072]="UNKNOWN",e[e.AZTEC=1]="AZTEC",e[e.CODABAR=2]="CODABAR",e[e.CODE_39=4]="CODE_39",e[e.CODE_93=8]="CODE_93",e[e.CODE_128=16]="CODE_128",e[e.DATA_MATRIX=32]="DATA_MATRIX",e[e.EAN_8=64]="EAN_8",e[e.EAN_13=128]="EAN_13",e[e.ITF=256]="ITF",e[e.MAXICODE=512]="MAXICODE",e[e.PDF_417=1024]="PDF_417",e[e.QR_CODE=2048]="QR_CODE",e[e.RSS_14=4096]="RSS_14",e[e.RSS_EXPANDED=8192]="RSS_EXPANDED",e[e.UPC_A=16384]="UPC_A",e[e.UPC_E=32768]="UPC_E",e[e.UPC_EAN_EXTENSION=65536]="UPC_EAN_EXTENSION",e[e.ALL=131071]="ALL"}(s||(s={})),function(e){e[e.EYE_LEFT=0]="EYE_LEFT",e[e.EYE_RIGHT=1]="EYE_RIGHT",e[e.EAR_LEFT=2]="EAR_LEFT",e[e.EAR_RIGHT=3]="EAR_RIGHT",e[e.NOSE_BRIDGE=4]="NOSE_BRIDGE",e[e.NOSE_TIP=5]="NOSE_TIP",e[e.NOSE_BASE=6]="NOSE_BASE",e[e.LIP_TOP=7]="LIP_TOP",e[e.LIP_BOTTOM=8]="LIP_BOTTOM",e[e.MOUTH_CENTER=9]="MOUTH_CENTER",e[e.CHIN=10]="CHIN",e[e.EYEBROW_LEFT=11]="EYEBROW_LEFT",e[e.EYEBROW_RIGHT=12]="EYEBROW_RIGHT"}(c||(c={})),function(e){e[e.WORLD=3]="WORLD",e[e.MINUS_Z_AWAY_FROM_USER=4]="MINUS_Z_AWAY_FROM_USER",e[e.MINUS_Z_HEADING=5]="MINUS_Z_HEADING",e[e.UNCHANGED=6]="UNCHANGED"}(l||(l={})),function(e){e[e.LOG_LEVEL_NONE=0]="LOG_LEVEL_NONE",e[e.LOG_LEVEL_ERROR=1]="LOG_LEVEL_ERROR",e[e.LOG_LEVEL_WARNING=2]="LOG_LEVEL_WARNING",e[e.LOG_LEVEL_VERBOSE=3]="LOG_LEVEL_VERBOSE"}(h||(h={})),function(e){e[e.FRAME_PIXEL_FORMAT_I420=0]="FRAME_PIXEL_FORMAT_I420",e[e.FRAME_PIXEL_FORMAT_I420A=1]="FRAME_PIXEL_FORMAT_I420A",e[e.FRAME_PIXEL_FORMAT_I422=2]="FRAME_PIXEL_FORMAT_I422",e[e.FRAME_PIXEL_FORMAT_I444=3]="FRAME_PIXEL_FORMAT_I444",e[e.FRAME_PIXEL_FORMAT_NV12=4]="FRAME_PIXEL_FORMAT_NV12",e[e.FRAME_PIXEL_FORMAT_RGBA=5]="FRAME_PIXEL_FORMAT_RGBA",e[e.FRAME_PIXEL_FORMAT_BGRA=6]="FRAME_PIXEL_FORMAT_BGRA",e[e.FRAME_PIXEL_FORMAT_Y=7]="FRAME_PIXEL_FORMAT_Y"}(u||(u={})),function(e){e[e.IMAGE_TRACKER_TYPE_PLANAR=0]="IMAGE_TRACKER_TYPE_PLANAR",e[e.IMAGE_TRACKER_TYPE_CYLINDRICAL=1]="IMAGE_TRACKER_TYPE_CYLINDRICAL",e[e.IMAGE_TRACKER_TYPE_CONICAL=2]="IMAGE_TRACKER_TYPE_CONICAL"}(f||(f={})),function(e){e[e.WORLD_TRACKER_QUALITY_INITIALIZING=0]="WORLD_TRACKER_QUALITY_INITIALIZING",e[e.WORLD_TRACKER_QUALITY_GOOD=1]="WORLD_TRACKER_QUALITY_GOOD",e[e.WORLD_TRACKER_QUALITY_ORIENTATION_ONLY=2]="WORLD_TRACKER_QUALITY_ORIENTATION_ONLY"}(d||(d={})),function(e){e[e.DEFAULT=0]="DEFAULT",e[e.HIGH=1]="HIGH"}(p||(p={}));const v=new Map;class E{constructor(e){this._gl=e,this._viewports=[],this._underlyingViewport=this._gl.viewport,this._viewports.push(this._gl.getParameter(this._gl.VIEWPORT)),this._gl.viewport=(e,r,t,a)=>{this._viewports[this._viewports.length-1]=[e,r,t,a],this._underlyingViewport.call(this._gl,e,r,t,a)}}static get(e){let r=v.get(e);return r||(r=new E(e),v.set(e,r)),r}push(){this._viewports.push(this._viewports[this._viewports.length-1])}pop(){const e=this._viewports.pop(),r=this._viewports[this._viewports.length-1];e&&e[0]===r[0]&&e[1]===r[1]&&e[2]===r[2]&&e[3]===r[3]||this._underlyingViewport.call(this._gl,r[0],r[1],r[2],r[3])}}var g,y=t(238);!function(e){e[e.OBJECT_URL=0]="OBJECT_URL",e[e.SRC_OBJECT=1]="SRC_OBJECT"}(g||(g={}));let k={deviceMotionMutliplier:-1,blacklisted:!1,showGyroPermissionsWarningIfNecessary:!1,showSafariPermissionsResetIfNecessary:!1,requestHighFrameRate:!1,videoWidth:640,videoHeight:480,getDataSize:e=>e===p.HIGH?[640,480]:[320,240],videoElementInDOM:!1,preferMediaStreamTrackProcessorCamera:!0,preferImageBitmapCamera:!1,ios164CameraSelection:!1,relyOnConstraintsForCameraSelection:!1,forceWindowOrientation:!1,intervalMultiplier:1,trustSensorIntervals:!1};"undefined"!=typeof window&&(window.zeeProfile=k,window.location.href.indexOf("_mstppipeline")>=0&&(console.log("Configuring for MSTP camera pipeline (if supported)"),k.preferMediaStreamTrackProcessorCamera=!0),window.location.href.indexOf("_imagebitmappipeline")>=0&&(console.log("Configuring for ImageBitmap camera pipeline (if supported)"),k.preferImageBitmapCamera=!0));let A=new y.UAParser,z=(A.getOS().name||"unknown").toLowerCase(),N=(A.getEngine().name||"unknown").toLowerCase();function R(e){k.forceWindowOrientation=!0,k.preferMediaStreamTrackProcessorCamera=!1,k.intervalMultiplier=1e3,k.trustSensorIntervals=!0;let r=e.split(".");if(r.length>=2){const e=parseInt(r[0]),t=parseInt(r[1]);(e<11||11===e&&t<3)&&(k.blacklisted=!0),(e<12||12===e&&t<2)&&(k.videoElementInDOM=!0),(12===e&&t>=2||e>=13)&&(k.showGyroPermissionsWarningIfNecessary=!0),e>=13&&(k.showSafariPermissionsResetIfNecessary=!0),(e>=12&&t>1||e>=13)&&navigator.mediaDevices&&navigator.mediaDevices.getSupportedConstraints&&navigator.mediaDevices.getSupportedConstraints().frameRate&&(k.requestHighFrameRate=!0,e<14&&(k.videoHeight=360,k.getDataSize=e=>e===p.HIGH?[640,360]:[320,180])),16===e&&t>=4&&(k.ios164CameraSelection=!0),e>=17&&(k.relyOnConstraintsForCameraSelection=!0)}}function S(e,r,t){let a=e.createShader(r);if(!a)throw new Error("Unable to create shader");e.shaderSource(a,t),e.compileShader(a);let i=e.getShaderInfoLog(a);if(i&&i.trim().length>0)throw new Error("Shader compile error: "+i);return a}"webkit"===N&&"ios"!==z&&(k.deviceMotionMutliplier=1,"undefined"!=typeof window&&void 0!==window.orientation&&R("15.0")),"webkit"===N&&"ios"===z&&(k.deviceMotionMutliplier=1,R(A.getOS().version||"15.0"));class L{constructor(e){this._gl=e,this._isPaused=!0,this._hadFrames=!1,this._isUserFacing=!1,this._cameraToScreenRotation=0,this._isUploadFrame=!0,this._computedTransformRotation=-1,this._computedFrontCameraRotation=!1,this._cameraUvTransform=b(),this._framebufferWidth=0,this._framebufferHeight=0,this._framebufferId=null,this._renderTexture=null,this._isWebGL2=!1,this._isWebGL2=e.getParameter(e.VERSION).indexOf("WebGL 2")>=0,this._isWebGL2||(this._instancedArraysExtension=this._gl.getExtension("ANGLE_instanced_arrays"))}resetGLContext(){this._framebufferId=null,this._renderTexture=null,this._vertexBuffer=void 0,this._indexBuffer=void 0,this._greyscaleShader=void 0}destroy(){this.resetGLContext()}uploadFrame(e,r,t,a,i){let n=this._gl;const _=E.get(n);_.push();const o=n.isEnabled(n.SCISSOR_TEST),s=n.isEnabled(n.DEPTH_TEST),c=n.isEnabled(n.BLEND),l=n.isEnabled(n.CULL_FACE),h=n.isEnabled(n.STENCIL_TEST),u=n.getParameter(n.ACTIVE_TEXTURE),f=n.getParameter(n.UNPACK_FLIP_Y_WEBGL),d=n.getParameter(n.CURRENT_PROGRAM);n.activeTexture(n.TEXTURE0);const p=n.getParameter(n.TEXTURE_BINDING_2D),m=n.getParameter(n.FRAMEBUFFER_BINDING),b=n.getParameter(n.ARRAY_BUFFER_BINDING),w=n.getParameter(n.ELEMENT_ARRAY_BUFFER_BINDING);n.disable(n.SCISSOR_TEST),n.disable(n.DEPTH_TEST),n.disable(n.BLEND),n.disable(n.CULL_FACE),n.disable(n.STENCIL_TEST),n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!1),n.bindTexture(n.TEXTURE_2D,e);const v=n.RGBA,g=n.RGBA,y=n.UNSIGNED_BYTE;n.texImage2D(n.TEXTURE_2D,0,v,g,y,r);let A=0,z=0;"undefined"!=typeof HTMLVideoElement&&r instanceof HTMLVideoElement?(A=r.videoWidth,z=r.videoHeight):(A=r.width,z=r.height),z>A&&(z=[A,A=z][0]),this._updateTransforms(t,a);const[N,R]=k.getDataSize(i);let S=this._getFramebuffer(n,N/4,R),L=this._getVertexBuffer(n),T=this._getIndexBuffer(n),x=this._getGreyscaleShader(n);const I=n.getVertexAttrib(x.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_SIZE),P=n.getVertexAttrib(x.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_TYPE),M=n.getVertexAttrib(x.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_NORMALIZED),F=n.getVertexAttrib(x.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_STRIDE),O=n.getVertexAttribOffset(x.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_POINTER),C=n.getVertexAttrib(x.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_ENABLED),j=n.getVertexAttrib(x.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING),B=n.getVertexAttrib(x.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_SIZE),U=n.getVertexAttrib(x.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_TYPE),V=n.getVertexAttrib(x.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_NORMALIZED),D=n.getVertexAttrib(x.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_STRIDE),K=n.getVertexAttribOffset(x.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_POINTER),Z=n.getVertexAttrib(x.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING),G=n.getVertexAttrib(x.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_ENABLED);let W=0,X=0;this._isWebGL2?(W=n.getVertexAttrib(x.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_DIVISOR),X=n.getVertexAttrib(x.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_DIVISOR),n.vertexAttribDivisor(x.aVertexPositionLoc,0),n.vertexAttribDivisor(x.aTextureCoordLoc,0)):this._instancedArraysExtension&&(W=n.getVertexAttrib(x.aVertexPositionLoc,this._instancedArraysExtension.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE),X=n.getVertexAttrib(x.aTextureCoordLoc,this._instancedArraysExtension.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE),this._instancedArraysExtension.vertexAttribDivisorANGLE(x.aVertexPositionLoc,0),this._instancedArraysExtension.vertexAttribDivisorANGLE(x.aTextureCoordLoc,0)),n.bindFramebuffer(n.FRAMEBUFFER,S),n.viewport(0,0,this._framebufferWidth,this._framebufferHeight),n.clear(n.COLOR_BUFFER_BIT),n.bindBuffer(n.ARRAY_BUFFER,L),n.vertexAttribPointer(x.aVertexPositionLoc,2,n.FLOAT,!1,16,0),n.enableVertexAttribArray(x.aVertexPositionLoc),n.vertexAttribPointer(x.aTextureCoordLoc,2,n.FLOAT,!1,16,8),n.enableVertexAttribArray(x.aTextureCoordLoc),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,T),n.useProgram(x.program),n.uniform1f(x.uTexWidthLoc,N),n.uniformMatrix4fv(x.uUvTransformLoc,!1,this._cameraUvTransform),n.activeTexture(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,e),n.uniform1i(x.uSamplerLoc,0),n.drawElements(n.TRIANGLES,6,n.UNSIGNED_SHORT,0),n.bindBuffer(n.ARRAY_BUFFER,j),n.vertexAttribPointer(x.aVertexPositionLoc,I,P,M,F,O),n.bindBuffer(n.ARRAY_BUFFER,Z),n.vertexAttribPointer(x.aTextureCoordLoc,B,U,V,D,K),n.bindBuffer(n.ARRAY_BUFFER,b),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,w),C||n.disableVertexAttribArray(x.aVertexPositionLoc),G||n.disableVertexAttribArray(x.aTextureCoordLoc),this._isWebGL2?(n.vertexAttribDivisor(x.aVertexPositionLoc,W),n.vertexAttribDivisor(x.aTextureCoordLoc,X)):this._instancedArraysExtension&&(this._instancedArraysExtension.vertexAttribDivisorANGLE(x.aVertexPositionLoc,W),this._instancedArraysExtension.vertexAttribDivisorANGLE(x.aTextureCoordLoc,X)),n.bindFramebuffer(n.FRAMEBUFFER,m),n.useProgram(d),n.bindTexture(n.TEXTURE_2D,p),n.activeTexture(u),n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,f),_.pop(),c&&n.enable(n.BLEND),l&&n.enable(n.CULL_FACE),s&&n.enable(n.DEPTH_TEST),o&&n.enable(n.SCISSOR_TEST),h&&n.enable(n.STENCIL_TEST)}readFrame(e,r,t){let a=this._gl,i=new Uint8Array(r);const n=a.getParameter(a.FRAMEBUFFER_BINDING),[_,o]=k.getDataSize(t);let s=this._getFramebuffer(a,_/4,o);return a.bindFramebuffer(a.FRAMEBUFFER,s),a.readPixels(0,0,this._framebufferWidth,this._framebufferHeight,a.RGBA,a.UNSIGNED_BYTE,i),a.bindFramebuffer(a.FRAMEBUFFER,n),{uvTransform:this._cameraUvTransform,data:r,texture:e,dataWidth:_,dataHeight:o,userFacing:this._computedFrontCameraRotation}}_updateTransforms(e,r){e==this._computedTransformRotation&&r==this._computedFrontCameraRotation||(this._computedTransformRotation=e,this._computedFrontCameraRotation=r,this._cameraUvTransform=this._getCameraUvTransform())}_getCameraUvTransform(){switch(this._computedTransformRotation){case 270:return new Float32Array([0,1,0,0,-1,0,0,0,0,0,1,0,1,0,0,1]);case 180:return new Float32Array([-1,0,0,0,0,-1,0,0,0,0,1,0,1,1,0,1]);case 90:return new Float32Array([0,-1,0,0,1,0,0,0,0,0,1,0,0,1,0,1])}return new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}_getFramebuffer(e,r,t){if(this._framebufferWidth===r&&this._framebufferHeight===t&&this._framebufferId)return this._framebufferId;if(this._framebufferId&&(e.deleteFramebuffer(this._framebufferId),this._framebufferId=null),this._renderTexture&&(e.deleteTexture(this._renderTexture),this._renderTexture=null),this._framebufferId=e.createFramebuffer(),!this._framebufferId)throw new Error("Unable to create framebuffer");if(e.bindFramebuffer(e.FRAMEBUFFER,this._framebufferId),this._renderTexture=e.createTexture(),!this._renderTexture)throw new Error("Unable to create render texture");e.activeTexture(e.TEXTURE0);const a=e.getParameter(e.TEXTURE_BINDING_2D);e.bindTexture(e.TEXTURE_2D,this._renderTexture),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,r,t,0,e.RGBA,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameterf(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this._renderTexture,0);let i=e.checkFramebufferStatus(e.FRAMEBUFFER);if(i!==e.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer not complete: "+i.toString());return this._framebufferWidth=r,this._framebufferHeight=t,e.bindTexture(e.TEXTURE_2D,a),e.bindFramebuffer(e.FRAMEBUFFER,null),this._framebufferId}_getVertexBuffer(e){if(this._vertexBuffer)return this._vertexBuffer;if(this._vertexBuffer=e.createBuffer(),!this._vertexBuffer)throw new Error("Unable to create vertex buffer");e.bindBuffer(e.ARRAY_BUFFER,this._vertexBuffer);let r=new Float32Array([-1,-1,0,0,-1,1,0,1,1,1,1,1,1,-1,1,0]);return e.bufferData(e.ARRAY_BUFFER,r,e.STATIC_DRAW),this._vertexBuffer}_getIndexBuffer(e){if(this._indexBuffer)return this._indexBuffer;if(this._indexBuffer=e.createBuffer(),!this._indexBuffer)throw new Error("Unable to create index buffer");e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this._indexBuffer);let r=new Uint16Array([0,1,2,0,2,3]);return e.bufferData(e.ELEMENT_ARRAY_BUFFER,r,e.STATIC_DRAW),this._indexBuffer}_getGreyscaleShader(e){if(this._greyscaleShader)return this._greyscaleShader;let r=e.createProgram();if(!r)throw new Error("Unable to create program");let t=S(e,e.VERTEX_SHADER,M),a=S(e,e.FRAGMENT_SHADER,F);e.attachShader(r,t),e.attachShader(r,a),function(e,r){e.linkProgram(r);let t=e.getProgramInfoLog(r);if(t&&t.trim().length>0)throw new Error("Unable to link: "+t)}(e,r);let i=e.getUniformLocation(r,"uTexWidth");if(!i)throw new Error("Unable to get uniform location uTexWidth");let n=e.getUniformLocation(r,"uUvTransform");if(!n)throw new Error("Unable to get uniform location uUvTransform");let _=e.getUniformLocation(r,"uSampler");if(!_)throw new Error("Unable to get uniform location uSampler");return this._greyscaleShader={program:r,aVertexPositionLoc:e.getAttribLocation(r,"aVertexPosition"),aTextureCoordLoc:e.getAttribLocation(r,"aTextureCoord"),uTexWidthLoc:i,uUvTransformLoc:n,uSamplerLoc:_},this._greyscaleShader}}let T,x,I,P,M="\\n attribute vec4 aVertexPosition;\\n attribute vec2 aTextureCoord;\\n\\n varying highp vec2 vTextureCoord1;\\n varying highp vec2 vTextureCoord2;\\n varying highp vec2 vTextureCoord3;\\n varying highp vec2 vTextureCoord4;\\n\\n uniform float uTexWidth;\\n\\tuniform mat4 uUvTransform;\\n\\n void main(void) {\\n highp vec2 offset1 = vec2(1.5 / uTexWidth, 0);\\n highp vec2 offset2 = vec2(0.5 / uTexWidth, 0);\\n\\n gl_Position = aVertexPosition;\\n vTextureCoord1 = (uUvTransform * vec4(aTextureCoord - offset1, 0, 1)).xy;\\n vTextureCoord2 = (uUvTransform * vec4(aTextureCoord - offset2, 0, 1)).xy;\\n vTextureCoord3 = (uUvTransform * vec4(aTextureCoord + offset2, 0, 1)).xy;\\n vTextureCoord4 = (uUvTransform * vec4(aTextureCoord + offset1, 0, 1)).xy;\\n }\\n",F="\\n varying highp vec2 vTextureCoord1;\\n varying highp vec2 vTextureCoord2;\\n varying highp vec2 vTextureCoord3;\\n varying highp vec2 vTextureCoord4;\\n\\n uniform sampler2D uSampler;\\n\\n const lowp vec3 colorWeights = vec3(77.0 / 256.0, 150.0 / 256.0, 29.0 / 256.0);\\n\\n void main(void) {\\n lowp vec4 outpx;\\n\\n outpx.r = dot(colorWeights, texture2D(uSampler, vTextureCoord1).xyz);\\n outpx.g = dot(colorWeights, texture2D(uSampler, vTextureCoord2).xyz);\\n outpx.b = dot(colorWeights, texture2D(uSampler, vTextureCoord3).xyz);\\n outpx.a = dot(colorWeights, texture2D(uSampler, vTextureCoord4).xyz);\\n\\n gl_FragColor = outpx;\\n }\\n";var O=function(e,r,t,a){return new(t||(t=Promise))((function(i,n){function _(e){try{s(a.next(e))}catch(e){n(e)}}function o(e){try{s(a.throw(e))}catch(e){n(e)}}function s(e){var r;e.done?i(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(_,o)}s((a=a.apply(e,r||[])).next())}))};let C,j=new class{constructor(){this.onOutgoingMessage=new _,this.onIncomingMessage=new o,this._outgoingMessages=[]}postIncomingMessage(e){this.onIncomingMessage.emit(e)}postOutgoingMessage(e,r){this._outgoingMessages.push({msg:e,transferables:r}),this.onOutgoingMessage.emit()}getOutgoingMessages(){let e=this._outgoingMessages;return this._outgoingMessages=[],e}},B=0,U=!1;const V=new Map,D=new Map;function K(e,t,a){return O(this,void 0,void 0,(function*(){let i=r({locateFile:(r,t)=>r.endsWith("zappar-cv.wasm")?e:t+r,instantiateWasm:(e,r)=>{const a=new WebAssembly.Instance(t,e);return r(a),a.exports},onRuntimeInitialized:()=>{let e=function(e){let r=e.cwrap("zappar_log_level","number",[]),t=e.cwrap("zappar_log_level_set",null,["number"]),a=e.cwrap("zappar_analytics_project_id_set",null,["string","string"]),i=e.cwrap("zappar_pipeline_create","number",[]),n=e.cwrap("zappar_pipeline_destroy",null,["number"]),_=e.cwrap("zappar_pipeline_camera_frame_data_raw","number",["number"]),o=e.cwrap("zappar_pipeline_camera_frame_data_raw_size","number",["number"]),s=e.cwrap("zappar_pipeline_camera_frame_data_raw_width","number",["number"]),c=e.cwrap("zappar_pipeline_camera_frame_data_raw_height","number",["number"]),l=e.cwrap("zappar_pipeline_frame_update",null,["number"]),h=e.cwrap("zappar_pipeline_frame_number","number",["number"]),u=e.cwrap("zappar_pipeline_camera_model","number",["number"]),f=e.cwrap("zappar_pipeline_camera_frame_user_data","number",["number"]),d=e.cwrap("zappar_pipeline_camera_frame_submit",null,["number","number","number","number","number","number","number","number","number"]),p=e.cwrap("zappar_pipeline_camera_frame_submit_raw_pointer",null,["number","number","number","number","number","number","number","number","number","number","number","number","number"]),m=e.cwrap("zappar_pipeline_camera_frame_camera_attitude","number",["number"]),b=e.cwrap("zappar_pipeline_camera_frame_device_attitude","number",["number"]),w=e.cwrap("zappar_pipeline_motion_accelerometer_submit",null,["number","number","number","number","number"]),v=e.cwrap("zappar_pipeline_motion_accelerometer_with_gravity_submit_int",null,["number","number","number","number","number","number"]),E=e.cwrap("zappar_pipeline_motion_accelerometer_without_gravity_submit_int",null,["number","number","number","number","number","number"]),g=e.cwrap("zappar_pipeline_motion_rotation_rate_submit",null,["number","number","number","number","number"]),y=e.cwrap("zappar_pipeline_motion_rotation_rate_submit_int",null,["number","number","number","number","number","number"]),k=e.cwrap("zappar_pipeline_motion_attitude_submit",null,["number","number","number","number","number"]),A=e.cwrap("zappar_pipeline_motion_attitude_submit_int",null,["number","number","number","number","number","number"]),z=e.cwrap("zappar_pipeline_motion_attitude_matrix_submit",null,["number","number"]),N=e.cwrap("zappar_camera_source_create","number",["number","string"]),R=e.cwrap("zappar_camera_source_destroy",null,["number"]),S=e.cwrap("zappar_sequence_source_create","number",["number"]),L=e.cwrap("zappar_sequence_source_destroy",null,["number"]),T=e.cwrap("zappar_image_tracker_create","number",["number"]),x=e.cwrap("zappar_image_tracker_destroy",null,["number"]),I=e.cwrap("zappar_image_tracker_target_load_from_memory",null,["number","number","number"]),P=e.cwrap("zappar_image_tracker_target_loaded_version","number",["number"]),M=e.cwrap("zappar_image_tracker_enabled","number",["number"]),F=e.cwrap("zappar_image_tracker_enabled_set",null,["number","number"]),O=e.cwrap("zappar_image_tracker_anchor_count","number",["number"]),C=e.cwrap("zappar_image_tracker_anchor_id","string",["number","number"]),j=e.cwrap("zappar_image_tracker_anchor_pose_raw","number",["number","number"]),B=e.cwrap("zappar_face_tracker_create","number",["number"]),U=e.cwrap("zappar_face_tracker_destroy",null,["number"]),V=e.cwrap("zappar_face_tracker_model_load_from_memory",null,["number","number","number"]),D=e.cwrap("zappar_face_tracker_model_loaded_version","number",["number"]),K=e.cwrap("zappar_face_tracker_enabled_set",null,["number","number"]),Z=e.cwrap("zappar_face_tracker_enabled","number",["number"]),G=e.cwrap("zappar_face_tracker_max_faces_set",null,["number","number"]),W=e.cwrap("zappar_face_tracker_max_faces","number",["number"]),X=e.cwrap("zappar_face_tracker_anchor_count","number",["number"]),Y=e.cwrap("zappar_face_tracker_anchor_id","string",["number","number"]),H=e.cwrap("zappar_face_tracker_anchor_pose_raw","number",["number","number"]),q=e.cwrap("zappar_face_tracker_anchor_identity_coefficients","number",["number","number"]),$=e.cwrap("zappar_face_tracker_anchor_expression_coefficients","number",["number","number"]),Q=e.cwrap("zappar_face_mesh_create","number",[]),J=e.cwrap("zappar_face_mesh_destroy",null,["number"]),ee=e.cwrap("zappar_face_landmark_create","number",["number"]),re=e.cwrap("zappar_face_landmark_destroy",null,["number"]),te=e.cwrap("zappar_barcode_finder_create","number",["number"]),ae=e.cwrap("zappar_barcode_finder_destroy",null,["number"]),ie=e.cwrap("zappar_barcode_finder_enabled_set",null,["number","number"]),ne=e.cwrap("zappar_barcode_finder_enabled","number",["number"]),_e=e.cwrap("zappar_barcode_finder_found_number","number",["number"]),oe=e.cwrap("zappar_barcode_finder_found_text","string",["number","number"]),se=e.cwrap("zappar_barcode_finder_found_format","number",["number","number"]),ce=e.cwrap("zappar_barcode_finder_formats","number",["number"]),le=e.cwrap("zappar_barcode_finder_formats_set",null,["number","number"]),he=e.cwrap("zappar_instant_world_tracker_create","number",["number"]),ue=e.cwrap("zappar_instant_world_tracker_destroy",null,["number"]),fe=e.cwrap("zappar_instant_world_tracker_enabled_set",null,["number","number"]),de=e.cwrap("zappar_instant_world_tracker_enabled","number",["number"]),pe=e.cwrap("zappar_instant_world_tracker_anchor_pose_raw","number",["number"]),me=e.cwrap("zappar_instant_world_tracker_anchor_pose_set_from_camera_offset_raw",null,["number","number","number","number","number"]),be=e.cwrap("zappar_zapcode_tracker_create","number",["number"]),we=e.cwrap("zappar_zapcode_tracker_destroy",null,["number"]),ve=e.cwrap("zappar_zapcode_tracker_target_load_from_memory",null,["number","number","number"]),Ee=e.cwrap("zappar_zapcode_tracker_target_loaded_version","number",["number"]),ge=e.cwrap("zappar_zapcode_tracker_enabled","number",["number"]),ye=e.cwrap("zappar_zapcode_tracker_enabled_set",null,["number","number"]),ke=e.cwrap("zappar_zapcode_tracker_anchor_count","number",["number"]),Ae=e.cwrap("zappar_zapcode_tracker_anchor_id","string",["number","number"]),ze=e.cwrap("zappar_zapcode_tracker_anchor_pose_raw","number",["number","number"]),Ne=e.cwrap("zappar_world_tracker_create","number",["number"]),Re=e.cwrap("zappar_world_tracker_destroy",null,["number"]),Se=e.cwrap("zappar_world_tracker_enabled","number",["number"]),Le=e.cwrap("zappar_world_tracker_enabled_set",null,["number","number"]),Te=e.cwrap("zappar_world_tracker_quality","number",["number"]),xe=e.cwrap("zappar_world_tracker_plane_count","number",["number"]),Ie=e.cwrap("zappar_world_tracker_plane_pose_raw","number",["number","number"]),Pe=e.cwrap("zappar_world_tracker_world_anchor_valid","number",["number"]),Me=e.cwrap("zappar_world_tracker_world_anchor_pose_raw","number",["number"]),Fe=e.cwrap("zappar_world_tracker_ground_anchor_valid","number",["number"]),Oe=e.cwrap("zappar_world_tracker_ground_anchor_pose_raw","number",["number"]),Ce=e.cwrap("zappar_world_tracker_reset",null,["number"]),je=e.cwrap("zappar_world_tracker_debug_enabled","number",["number"]),Be=e.cwrap("zappar_world_tracker_debug_enabled_set",null,["number","number"]),Ue=e.cwrap("zappar_world_tracker_debug_tracks_data_size","number",["number"]),Ve=e.cwrap("zappar_world_tracker_debug_tracks_data","number",["number"]),De=e.cwrap("zappar_world_tracker_debug_projections_data_size","number",["number"]),Ke=e.cwrap("zappar_world_tracker_debug_projections_data","number",["number"]),Ze=32,Ge=e._malloc(Ze),We=(e._malloc(64),new Map),Xe=(r,t)=>{let a=We.get(r);return(!a||a[0]<t)&&(a&&e._free(a[1]),a=[t,e._malloc(t)],We.set(r,a)),a[1]};return{log_level:()=>r(),log_level_set:e=>t(e),analytics_project_id_set:(e,r)=>a(e,r),pipeline_create:()=>i(),pipeline_destroy:()=>{n()},pipeline_camera_frame_data_raw:e=>_(e),pipeline_camera_frame_data_raw_size:e=>o(e),pipeline_camera_frame_data_raw_width:e=>s(e),pipeline_camera_frame_data_raw_height:e=>c(e),pipeline_frame_update:e=>l(e),pipeline_frame_number:e=>h(e),pipeline_camera_model:r=>{let t=u(r),a=new Float32Array(6);return a.set(e.HEAPF32.subarray(t/4,6+t/4)),t=a,t},pipeline_camera_frame_user_data:e=>f(e),pipeline_camera_frame_submit:(r,t,a,i,n,_,o,s)=>{Ze<t.byteLength&&(e._free(Ge),Ze=t.byteLength,Ge=e._malloc(Ze));let c=Ge,l=t.byteLength;e.HEAPU8.set(new Uint8Array(t),Ge);let h=a,u=i,f=n,p=Xe(4,_.byteLength);e.HEAPF32.set(_,p/4);let m=Xe(5,o.byteLength);return e.HEAPF32.set(o,m/4),d(r,c,l,h,u,f,p,m,s?1:0)},pipeline_camera_frame_submit_raw_pointer:(r,t,a,i,n,_,o,s,c,l,h,u,f)=>{let d=t,m=a,b=i,w=n,v=_,E=o,g=Xe(6,s.byteLength);e.HEAPF32.set(s,g/4);let y=c,k=Xe(8,l.byteLength);return e.HEAPF32.set(l,k/4),p(r,d,m,b,w,v,E,g,y,k,h?1:0,u,f?1:0)},pipeline_camera_frame_camera_attitude:r=>{let t=m(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},pipeline_camera_frame_device_attitude:r=>{let t=b(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},pipeline_motion_accelerometer_submit:(e,r,t,a,i)=>w(e,r,t,a,i),pipeline_motion_accelerometer_with_gravity_submit_int:(e,r,t,a,i,n)=>v(e,r,t,a,i,n),pipeline_motion_accelerometer_without_gravity_submit_int:(e,r,t,a,i,n)=>E(e,r,t,a,i,n),pipeline_motion_rotation_rate_submit:(e,r,t,a,i)=>g(e,r,t,a,i),pipeline_motion_rotation_rate_submit_int:(e,r,t,a,i,n)=>y(e,r,t,a,i,n),pipeline_motion_attitude_submit:(e,r,t,a,i)=>k(e,r,t,a,i),pipeline_motion_attitude_submit_int:(e,r,t,a,i,n)=>A(e,r,t,a,i,n),pipeline_motion_attitude_matrix_submit:(r,t)=>{let a=Xe(0,t.byteLength);return e.HEAPF32.set(t,a/4),z(r,a)},camera_source_create:(e,r)=>N(e,r),camera_source_destroy:()=>{R()},sequence_source_create:e=>S(e),sequence_source_destroy:()=>{L()},image_tracker_create:e=>T(e),image_tracker_destroy:()=>{x()},image_tracker_target_load_from_memory:(r,t)=>{Ze<t.byteLength&&(e._free(Ge),Ze=t.byteLength,Ge=e._malloc(Ze));let a=Ge,i=t.byteLength;return e.HEAPU8.set(new Uint8Array(t),Ge),I(r,a,i)},image_tracker_target_loaded_version:e=>P(e),image_tracker_enabled:e=>{let r=M(e);return r=1===r,r},image_tracker_enabled_set:(e,r)=>F(e,r?1:0),image_tracker_anchor_count:e=>O(e),image_tracker_anchor_id:(e,r)=>C(e,r),image_tracker_anchor_pose_raw:(r,t)=>{let a=j(r,t),i=new Float32Array(16);return i.set(e.HEAPF32.subarray(a/4,16+a/4)),a=i,a},face_tracker_create:e=>B(e),face_tracker_destroy:()=>{U()},face_tracker_model_load_from_memory:(r,t)=>{Ze<t.byteLength&&(e._free(Ge),Ze=t.byteLength,Ge=e._malloc(Ze));let a=Ge,i=t.byteLength;return e.HEAPU8.set(new Uint8Array(t),Ge),V(r,a,i)},face_tracker_model_loaded_version:e=>D(e),face_tracker_enabled_set:(e,r)=>K(e,r?1:0),face_tracker_enabled:e=>{let r=Z(e);return r=1===r,r},face_tracker_max_faces_set:(e,r)=>G(e,r),face_tracker_max_faces:e=>W(e),face_tracker_anchor_count:e=>X(e),face_tracker_anchor_id:(e,r)=>Y(e,r),face_tracker_anchor_pose_raw:(r,t)=>{let a=H(r,t),i=new Float32Array(16);return i.set(e.HEAPF32.subarray(a/4,16+a/4)),a=i,a},face_tracker_anchor_identity_coefficients:(r,t)=>{let a=q(r,t),i=new Float32Array(50);return i.set(e.HEAPF32.subarray(a/4,50+a/4)),a=i,a},face_tracker_anchor_expression_coefficients:(r,t)=>{let a=$(r,t),i=new Float32Array(29);return i.set(e.HEAPF32.subarray(a/4,29+a/4)),a=i,a},face_mesh_create:()=>Q(),face_mesh_destroy:()=>{J()},face_landmark_create:e=>ee(e),face_landmark_destroy:()=>{re()},barcode_finder_create:e=>te(e),barcode_finder_destroy:()=>{ae()},barcode_finder_enabled_set:(e,r)=>ie(e,r?1:0),barcode_finder_enabled:e=>{let r=ne(e);return r=1===r,r},barcode_finder_found_number:e=>_e(e),barcode_finder_found_text:(e,r)=>oe(e,r),barcode_finder_found_format:(e,r)=>se(e,r),barcode_finder_formats:e=>ce(e),barcode_finder_formats_set:(e,r)=>le(e,r),instant_world_tracker_create:e=>he(e),instant_world_tracker_destroy:()=>{ue()},instant_world_tracker_enabled_set:(e,r)=>fe(e,r?1:0),instant_world_tracker_enabled:e=>{let r=de(e);return r=1===r,r},instant_world_tracker_anchor_pose_raw:r=>{let t=pe(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},instant_world_tracker_anchor_pose_set_from_camera_offset_raw:(e,r,t,a,i)=>me(e,r,t,a,i),zapcode_tracker_create:e=>be(e),zapcode_tracker_destroy:()=>{we()},zapcode_tracker_target_load_from_memory:(r,t)=>{Ze<t.byteLength&&(e._free(Ge),Ze=t.byteLength,Ge=e._malloc(Ze));let a=Ge,i=t.byteLength;return e.HEAPU8.set(new Uint8Array(t),Ge),ve(r,a,i)},zapcode_tracker_target_loaded_version:e=>Ee(e),zapcode_tracker_enabled:e=>{let r=ge(e);return r=1===r,r},zapcode_tracker_enabled_set:(e,r)=>ye(e,r?1:0),zapcode_tracker_anchor_count:e=>ke(e),zapcode_tracker_anchor_id:(e,r)=>Ae(e,r),zapcode_tracker_anchor_pose_raw:(r,t)=>{let a=ze(r,t),i=new Float32Array(16);return i.set(e.HEAPF32.subarray(a/4,16+a/4)),a=i,a},world_tracker_create:e=>Ne(e),world_tracker_destroy:()=>{Re()},world_tracker_enabled:e=>{let r=Se(e);return r=1===r,r},world_tracker_enabled_set:(e,r)=>Le(e,r?1:0),world_tracker_quality:e=>Te(e),world_tracker_plane_count:e=>xe(e),world_tracker_plane_pose_raw:(r,t)=>{let a=Ie(r,t),i=new Float32Array(16);return i.set(e.HEAPF32.subarray(a/4,16+a/4)),a=i,a},world_tracker_world_anchor_valid:e=>{let r=Pe(e);return r=1===r,r},world_tracker_world_anchor_pose_raw:r=>{let t=Me(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},world_tracker_ground_anchor_valid:e=>{let r=Fe(e);return r=1===r,r},world_tracker_ground_anchor_pose_raw:r=>{let t=Oe(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},world_tracker_reset:e=>Ce(e),world_tracker_debug_enabled:e=>{let r=je(e);return r=1===r,r},world_tracker_debug_enabled_set:(e,r)=>Be(e,r?1:0),world_tracker_debug_tracks_data_size:e=>Ue(e),world_tracker_debug_tracks_data:r=>{let t=Ve(r),a=Ue(r),i=new Float32Array(a);return i.set(e.HEAPF32.subarray(t/4,a+t/4)),t=i,t},world_tracker_debug_projections_data_size:e=>De(e),world_tracker_debug_projections_data:r=>{let t=Ke(r),a=De(r),i=new Float32Array(a);return i.set(e.HEAPF32.subarray(t/4,a+t/4)),t=i,t}}}(i);const r=function(e){return{worker_message_send_count:e.cwrap("worker_message_send_count","number",[]),worker_message_send_clear:e.cwrap("worker_message_send_clear",null,[]),worker_message_send_data_size:e.cwrap("worker_message_send_data_size","number",["number"]),worker_message_send_data:e.cwrap("worker_message_send_data","number",["number"]),worker_message_send_reference:e.cwrap("worker_message_send_reference","number",["number"]),worker_message_receive:e.cwrap("worker_message_receive",null,["number","number","number"])}}(i),t=a?function(e){return{data_download_clear:e.cwrap("data_download_clear",null,[]),data_download_size:e.cwrap("data_download_size","number",[]),data_download:e.cwrap("data_download","number",[]),data_should_record_set:e.cwrap("data_should_record_set",null,["number"])}}(i):void 0;null==t||t.data_should_record_set(1);let _=new n(e,((e,r)=>{j.postOutgoingMessage({p:e,t:"zappar",d:r},[r])}));j.postOutgoingMessage("loaded",[]),j.onIncomingMessage.bind((a=>{var n,o,s;switch(a.t){case"zappar":_.processBuffer(a.d),j.postOutgoingMessage({t:"buf",d:a.d},[a.d]);break;case"buf":null===(n=_.serializersByPipelineId.get(a.p))||void 0===n||n.bufferReturn(a.d);break;case"cameraFrameC2S":{let n,o=a,s=_._pipeline_by_instance.get(o.p);s&&(e.pipeline_camera_frame_submit(s,o.d,o.width,o.height,o.token,o.c2d,o.cm,o.userFacing),e.pipeline_frame_update(s),n=e.pipeline_camera_frame_device_attitude(s),_.exploreState(),J(i,r),t&&ee(i,t));let c={token:o.token,d:o.d,p:o.p,t:"cameraFrameRecycleS2C",att:n};j.postOutgoingMessage(c,[o.d]);break}case"rawenabled":U=a.v;break;case"rawrequest":{const e=a,r=V.get(e.p),t={t:"raw",token:e.token,p:e.p,data:r&&null!==(s=null===(o=r.ready.find((r=>r.token===e.token)))||void 0===o?void 0:o.data)&&void 0!==s?s:null};j.postOutgoingMessage(t,[]);break}case"cameraProfileC2S":{let e=a;D.set(e.source,e.p);break}case"streamC2S":{let n=a;(function(e,r,t,a,i,n,_,o,s){return O(this,void 0,void 0,(function*(){for(;;){let c;try{c=yield t.getReader()}catch(e){yield $(1e3);continue}try{return void(yield q(e,r,c,a,i,n,_,o,s))}catch(e){}return void(yield $(1e3))}}))})(i,e,n.s,n.p,n.userFacing,_,n.source,r,t).then((()=>{let e={t:"streamEndedS2C",p:n.p,source:n.source};j.postOutgoingMessage(e,[])})).catch((e=>{}));break}case"cameraToScreenC2S":B=a.r;break;case"imageBitmapC2S":!function(e,r,t,a){const[i,n]=function(){if(!I||!P){const e=new OffscreenCanvas(1,1);if(P=e.getContext("webgl"),!P)throw new Error("Unable to get offscreen GL context");I=new L(P)}return[I,P]}();if(x||(x=n.createTexture(),n.bindTexture(n.TEXTURE_2D,x),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR)),!x)return;const[_,o]=k.getDataSize(e.cp);(!T||T.byteLength<_*o)&&(T=new ArrayBuffer(_*o)),i.uploadFrame(x,e.i,e.r,e.userFacing,e.cp);let s=i.readFrame(x,T,e.cp),c={t:"imageBitmapS2C",dataWidth:s.dataWidth,dataHeight:s.dataHeight,frame:e.i,userFacing:s.userFacing,uvTransform:s.uvTransform||b(),tokenId:e.tokenId,p:e.p};a.postOutgoingMessage(c,[e.i]);let l=t._pipeline_by_instance.get(e.p);l&&(r.pipeline_camera_frame_submit(l,T,s.dataWidth,s.dataHeight,e.tokenId,e.cameraToDevice,e.cameraModel,s.userFacing),r.pipeline_frame_update(l),t.exploreState())}(a,e,_,j);break;case"sensorDataC2S":{const r=a,t=_._pipeline_by_instance.get(r.p);if(!t)break;switch(r.sensor){case"accel":e.pipeline_motion_accelerometer_submit(t,r.timestamp,r.x,r.y,r.z);break;case"accel_w_gravity_int":e.pipeline_motion_accelerometer_with_gravity_submit_int(t,r.timestamp,r.interval,r.x,r.y,r.z);break;case"accel_wo_gravity_int":e.pipeline_motion_accelerometer_without_gravity_submit_int(t,r.timestamp,r.interval,r.x,r.y,r.z);break;case"attitude_int":e.pipeline_motion_attitude_submit_int(t,r.timestamp,r.interval,r.x,r.y,r.z);break;case"attitude":e.pipeline_motion_attitude_submit(t,r.timestamp,r.x,r.y,r.z);break;case"rotation_rate_int":e.pipeline_motion_rotation_rate_submit_int(t,r.timestamp,r.interval,r.x,r.y,r.z);break;case"rotation_rate":e.pipeline_motion_rotation_rate_submit(t,r.timestamp,r.x,r.y,r.z)}break}case"attitudeMatrixC2S":{const r=a,t=_._pipeline_by_instance.get(r.p);if(!t)break;e.pipeline_motion_attitude_matrix_submit(t,r.m);break}}}))}})}))}let Z=0,G=0,W=1;function X(e){return new Promise(((r,t)=>{const a=setTimeout((()=>{t("Frame timeout")}),2e3);e.read().then((e=>{clearTimeout(a),r(e)}))}))}const Y=b(),H=new Float32Array([300,300,160,120,0,0]);function q(e,r,t,a,i,n,_,o,s){var c,l;return O(this,void 0,void 0,(function*(){for(;;){let f=yield X(t);if(f.done)return void(null===(c=f.value)||void 0===c||c.close());let d=f.value,m=d.allocationSize();m>G&&(Z>0&&e._free(Z),Z=e._malloc(m),G=m),yield d.copyTo(e.HEAPU8.subarray(Z,Z+G));let b=W;W++;const v=d.visibleRect.width,E=d.visibleRect.height;let g,y=v,k=E;switch(B){case 270:g=new Float32Array([0,1,0,0,-1,0,0,0,0,0,1,0,1,0,0,1]),y=E,k=v;break;case 180:g=new Float32Array([-1,0,0,0,0,-1,0,0,0,0,1,0,1,1,0,1]);break;case 90:g=new Float32Array([0,-1,0,0,1,0,0,0,0,0,1,0,0,1,0,1]),y=E,k=v;break;default:g=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}let A=!1;D.get(_)!==p.HIGH&&(y/=2,k/=2,A=!0);let z=d.clone();i?(u=[-1,1,-1],(h=Y)[0]=u[0],h[1]=0,h[2]=0,h[3]=0,h[4]=0,h[5]=u[1],h[6]=0,h[7]=0,h[8]=0,h[9]=0,h[10]=u[2],h[11]=0,h[12]=0,h[13]=0,h[14]=0,h[15]=1):w(Y);let N=300*y/320;H[0]=N,H[1]=N,H[2]=.5*y,H[3]=.5*k;const R={token:b,d:z,p:a,t:"videoFrameS2C",userFacing:i,uvTransform:g,w:y,h:k,cameraToDevice:Y,cameraModel:H,source:_};j.postOutgoingMessage(R,[R.d,R.uvTransform.buffer]);const S=n._pipeline_by_instance.get(a);if(S){try{r.pipeline_camera_frame_submit_raw_pointer(S,Z,m,Q(d.format),v,E,b,Y,B,H,i,null!==(l=d.timestamp)&&void 0!==l?l:-1,A),J(e,o),s&&ee(e,s)}catch(e){console.log("Exception during camera processing",e)}if(r.pipeline_frame_update(S),U){let t=V.get(a);if(t||(t={available:[],ready:[]},V.set(a,t)),t.ready.length>4){const e=t.ready.splice(0,1);for(const r of e)t.available.push(new Uint8Array(r.data.data))}const i=r.pipeline_camera_frame_data_raw_size(S);let n;for(;!n||n.byteLength<i;)t.available.length<1&&t.available.push(new Uint8Array(i)),n=t.available.pop();const _=r.pipeline_camera_frame_data_raw(S);n.set(e.HEAPU8.subarray(_,_+i)),t.ready.push({token:b,data:{data:n,width:r.pipeline_camera_frame_data_raw_width(a),height:r.pipeline_camera_frame_data_raw_height(a)}})}n.exploreState()}d.close()}var h,u}))}function $(e){return new Promise((r=>{setTimeout(r,e)}))}function Q(e){switch(e){case"I420":return u.FRAME_PIXEL_FORMAT_I420;case"I420A":return u.FRAME_PIXEL_FORMAT_I420A;case"I422":return u.FRAME_PIXEL_FORMAT_I422;case"I444":return u.FRAME_PIXEL_FORMAT_I444;case"NV12":return u.FRAME_PIXEL_FORMAT_NV12;case"RGBA":case"RGBX":return u.FRAME_PIXEL_FORMAT_RGBA;case"BGRA":case"BGRX":return u.FRAME_PIXEL_FORMAT_BGRA}return u.FRAME_PIXEL_FORMAT_Y}function J(e,r){const t=r.worker_message_send_count();if(0!==t){C||(C=new MessageChannel,C.port1.start(),C.port1.addEventListener("message",(t=>{if("msgrec"!==t.data.t)return;const a=t.data.data,i=e._malloc(a.byteLength);e.HEAPU8.set(a,i),r.worker_message_receive(t.data.reference,a.byteLength,i),e._free(i)})),j.postOutgoingMessage({t:"setupCeresWorker",port:C.port2},[C.port2]));for(let a=0;a<t;a++){const t=r.worker_message_send_reference(a),i=r.worker_message_send_data_size(a),n=r.worker_message_send_data(a),_=e.HEAPU8.slice(n,n+i);C.port1.postMessage({t:"msgsend",data:_,reference:t},[_.buffer])}r.worker_message_send_clear()}}function ee(e,r){const t=r.data_download_size();if(0===t)return;const a=r.data_download(),i=e.HEAPU8.slice(a,a+t);j.postOutgoingMessage({t:"_z_datadownload",data:i},[i.buffer]),r.data_download_clear()}const re=self;j.onOutgoingMessage.bind((()=>{let e=j.getOutgoingMessages();for(let r of e)re.postMessage(r.msg,r.transferables)}));let te=e=>{var r;e&&e.data&&"wasm"===e.data.t&&(K(location.href.startsWith("blob")?e.data.url:new URL(t(751),t.b).toString(),e.data.module,null!==(r=e.data.shouldRecordData)&&void 0!==r&&r),re.removeEventListener("message",te))};re.addEventListener("message",te),re.addEventListener("message",(e=>{j.postIncomingMessage(e.data)}))})()})();',"Worker",void 0,r.p+"zappar-cv.worker.js")}},477:e=>{"use strict";e.exports=function(e,t,r,i){var a=self||window;try{try{var n;try{n=new a.Blob([e])}catch(t){(n=new(a.BlobBuilder||a.WebKitBlobBuilder||a.MozBlobBuilder||a.MSBlobBuilder)).append(e),n=n.getBlob()}var o=a.URL||a.webkitURL,s=o.createObjectURL(n),_=new a[t](s,r);return o.revokeObjectURL(s),_}catch(i){return new a[t]("data:application/javascript,".concat(encodeURIComponent(e)),r)}}catch(e){if(!i)throw Error("Inline worker is not supported");return new a[t](i,r)}}},698:(e,t,r)=>{"use strict";e.exports=r.p+"b4f46e148a3b3b5aef90.zbin"},825:(e,t,r)=>{"use strict";e.exports=r.p+"f7b62a3a53b5c9b3222b.zbin"},367:(e,t,r)=>{"use strict";e.exports=r.p+"482727c0e7dd40d73f5a.zbin"},751:(e,t,r)=>{"use strict";e.exports=r.p+"7e63bec626d6ccda2134.wasm"}},t={};function r(i){var a=t[i];if(void 0!==a)return a.exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}r.m=e,r.amdO={},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.u=e=>e+".zappar-cv.js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var i=t.getElementsByTagName("script");if(i.length)for(var a=i.length-1;a>-1&&!e;)e=i[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),r.b=document.baseURI||self.location.href;var i={};return(()=>{"use strict";var e,t,a,n,o,s,_,c;r.r(i),r.d(i,{barcode_format_t:()=>e,camera_profile_t:()=>c,face_landmark_name_t:()=>t,image_target_type_t:()=>s,initialize:()=>Zt,instant_world_tracker_transform_orientation_t:()=>a,log_level_t:()=>n,world_tracker_quality_t:()=>_}),function(e){e[e.UNKNOWN=131072]="UNKNOWN",e[e.AZTEC=1]="AZTEC",e[e.CODABAR=2]="CODABAR",e[e.CODE_39=4]="CODE_39",e[e.CODE_93=8]="CODE_93",e[e.CODE_128=16]="CODE_128",e[e.DATA_MATRIX=32]="DATA_MATRIX",e[e.EAN_8=64]="EAN_8",e[e.EAN_13=128]="EAN_13",e[e.ITF=256]="ITF",e[e.MAXICODE=512]="MAXICODE",e[e.PDF_417=1024]="PDF_417",e[e.QR_CODE=2048]="QR_CODE",e[e.RSS_14=4096]="RSS_14",e[e.RSS_EXPANDED=8192]="RSS_EXPANDED",e[e.UPC_A=16384]="UPC_A",e[e.UPC_E=32768]="UPC_E",e[e.UPC_EAN_EXTENSION=65536]="UPC_EAN_EXTENSION",e[e.ALL=131071]="ALL"}(e||(e={})),function(e){e[e.EYE_LEFT=0]="EYE_LEFT",e[e.EYE_RIGHT=1]="EYE_RIGHT",e[e.EAR_LEFT=2]="EAR_LEFT",e[e.EAR_RIGHT=3]="EAR_RIGHT",e[e.NOSE_BRIDGE=4]="NOSE_BRIDGE",e[e.NOSE_TIP=5]="NOSE_TIP",e[e.NOSE_BASE=6]="NOSE_BASE",e[e.LIP_TOP=7]="LIP_TOP",e[e.LIP_BOTTOM=8]="LIP_BOTTOM",e[e.MOUTH_CENTER=9]="MOUTH_CENTER",e[e.CHIN=10]="CHIN",e[e.EYEBROW_LEFT=11]="EYEBROW_LEFT",e[e.EYEBROW_RIGHT=12]="EYEBROW_RIGHT"}(t||(t={})),function(e){e[e.WORLD=3]="WORLD",e[e.MINUS_Z_AWAY_FROM_USER=4]="MINUS_Z_AWAY_FROM_USER",e[e.MINUS_Z_HEADING=5]="MINUS_Z_HEADING",e[e.UNCHANGED=6]="UNCHANGED"}(a||(a={})),function(e){e[e.LOG_LEVEL_NONE=0]="LOG_LEVEL_NONE",e[e.LOG_LEVEL_ERROR=1]="LOG_LEVEL_ERROR",e[e.LOG_LEVEL_WARNING=2]="LOG_LEVEL_WARNING",e[e.LOG_LEVEL_VERBOSE=3]="LOG_LEVEL_VERBOSE"}(n||(n={})),function(e){e[e.FRAME_PIXEL_FORMAT_I420=0]="FRAME_PIXEL_FORMAT_I420",e[e.FRAME_PIXEL_FORMAT_I420A=1]="FRAME_PIXEL_FORMAT_I420A",e[e.FRAME_PIXEL_FORMAT_I422=2]="FRAME_PIXEL_FORMAT_I422",e[e.FRAME_PIXEL_FORMAT_I444=3]="FRAME_PIXEL_FORMAT_I444",e[e.FRAME_PIXEL_FORMAT_NV12=4]="FRAME_PIXEL_FORMAT_NV12",e[e.FRAME_PIXEL_FORMAT_RGBA=5]="FRAME_PIXEL_FORMAT_RGBA",e[e.FRAME_PIXEL_FORMAT_BGRA=6]="FRAME_PIXEL_FORMAT_BGRA",e[e.FRAME_PIXEL_FORMAT_Y=7]="FRAME_PIXEL_FORMAT_Y"}(o||(o={})),function(e){e[e.IMAGE_TRACKER_TYPE_PLANAR=0]="IMAGE_TRACKER_TYPE_PLANAR",e[e.IMAGE_TRACKER_TYPE_CYLINDRICAL=1]="IMAGE_TRACKER_TYPE_CYLINDRICAL",e[e.IMAGE_TRACKER_TYPE_CONICAL=2]="IMAGE_TRACKER_TYPE_CONICAL"}(s||(s={})),function(e){e[e.WORLD_TRACKER_QUALITY_INITIALIZING=0]="WORLD_TRACKER_QUALITY_INITIALIZING",e[e.WORLD_TRACKER_QUALITY_GOOD=1]="WORLD_TRACKER_QUALITY_GOOD",e[e.WORLD_TRACKER_QUALITY_ORIENTATION_ONLY=2]="WORLD_TRACKER_QUALITY_ORIENTATION_ONLY"}(_||(_={})),function(e){e[e.DEFAULT=0]="DEFAULT",e[e.HIGH=1]="HIGH"}(c||(c={}));class l{constructor(e){this._messageSender=e,this._freeBufferPool=[],this._buffer=new ArrayBuffer(16),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=1,this._startOffset=-1,this._timeoutSet=!1,this._appender={int:e=>this.int(e),bool:e=>this.int(e?1:0),float:e=>this.float(e),string:e=>this.string(e),dataWithLength:e=>this.arrayBuffer(e),type:e=>this.int(e),matrix4x4:e=>this.float32ArrayBuffer(e),matrix3x3:e=>this.float32ArrayBuffer(e),floatArray:e=>this.float32ArrayBuffer(e),identityCoefficients:e=>this.float32ArrayBuffer(e),expressionCoefficients:e=>this.float32ArrayBuffer(e),cameraModel:e=>this.float32ArrayBuffer(e),timestamp:e=>this.double(e),barcodeFormat:e=>this.int(e),faceLandmarkName:e=>this.int(e),instantTrackerTransformOrientation:e=>this.int(e),logLevel:e=>this.int(e)},this._freeBufferPool.push(new ArrayBuffer(16)),this._freeBufferPool.push(new ArrayBuffer(16))}bufferReturn(e){this._freeBufferPool.push(e)}_ensureArrayBuffer(e){let t,r=4*(this._offset+e+8);if(this._buffer&&this._buffer.byteLength>=r)return;if(!t){let e=r;e--,e|=e>>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,e++,t=new ArrayBuffer(e)}let i=this._buffer?this._i32View:void 0;this._buffer=t,this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),i&&this._i32View.set(i.subarray(0,this._offset))}sendMessage(e,t){this._ensureArrayBuffer(4),this._startOffset=this._offset,this._i32View[this._offset+1]=e,this._offset+=2,t(this._appender),this._i32View[this._startOffset]=this._offset-this._startOffset,this._startOffset=-1,this._sendOneTime()}_sendOneTime(){!1===this._timeoutSet&&(this._timeoutSet=!0,setTimeout((()=>{this._timeoutSet=!1,this._send()}),0))}_send(){0!==this._freeBufferPool.length?(this._i32View[0]=this._offset,this._messageSender(this._buffer),this._buffer=void 0,this._buffer=this._freeBufferPool.pop(),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=1,this._startOffset=-1):this._sendOneTime()}int(e){this._ensureArrayBuffer(1),this._i32View[this._offset]=e,this._offset++}double(e){this._ensureArrayBuffer(2),this._offset%2==1&&this._offset++,this._f64View[this._offset/2]=e,this._offset+=2}float(e){this._ensureArrayBuffer(1),this._f32View[this._offset]=e,this._offset++}int32Array(e){this._ensureArrayBuffer(e.length);for(let t=0;t<e.length;++t)this._i32View[this._offset+t]=e[t];this._offset+=e.length}float32Array(e){this._ensureArrayBuffer(e.length);for(let t=0;t<e.length;++t)this._f32View[this._offset+t]=e[t];this._offset+=e.length}booleanArray(e){this._ensureArrayBuffer(e.length);for(let t=0;t<e.length;++t)this._i32View[this._offset+t]=e[t]?1:0;this._offset+=e.length}uint8ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.byteLength,this._offset++,this._u8View.set(e,4*this._offset),this._offset+=e.byteLength>>2,0!=(3&e.byteLength)&&this._offset++}arrayBuffer(e){let t=new Uint8Array(e);this.uint8ArrayBuffer(t)}uint8ClampedArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.byteLength,this._offset++,this._u8cView.set(e,4*this._offset),this._offset+=e.byteLength>>2,0!=(3&e.byteLength)&&this._offset++}float32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._f32View.set(e,this._offset),this._offset+=e.length}uint16ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++;let t=2*this._offset;this._u16View.set(e,t),this._offset+=e.length>>1,0!=(1&e.length)&&this._offset++}int32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._i32View.set(e,this._offset),this._offset+=e.length}uint32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._u32View.set(e,this._offset),this._offset+=e.length}string(e){let t=(new TextEncoder).encode(e);this._ensureArrayBuffer(t.byteLength/4),this._i32View[this._offset]=t.byteLength,this._offset++,this._u8View.set(t,4*this._offset),this._offset+=t.byteLength>>2,0!=(3&t.byteLength)&&this._offset++}}class d{constructor(){this._buffer=new ArrayBuffer(0),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=0,this._length=0,this._startOffset=-1,this._processor={int:()=>this._i32View[this._startOffset++],bool:()=>1===this._i32View[this._startOffset++],type:()=>this._i32View[this._startOffset++],float:()=>this._f32View[this._startOffset++],timestamp:()=>{this._startOffset%2==1&&this._startOffset++;let e=this._f64View[this._startOffset/2];return this._startOffset+=2,e},string:()=>{let e=this._i32View[this._startOffset++],t=(new TextDecoder).decode(new Uint8Array(this._buffer,4*this._startOffset,e));return this._startOffset+=e>>2,0!=(3&e)&&this._startOffset++,t},dataWithLength:()=>{let e=this._i32View[this._startOffset++],t=new Uint8Array(e);return t.set(this._u8View.subarray(4*this._startOffset,4*this._startOffset+e)),this._startOffset+=t.byteLength>>2,0!=(3&t.byteLength)&&this._startOffset++,t.buffer},floatArray:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+e)),this._startOffset+=e,t},matrix4x4:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+16)),this._startOffset+=e,t},matrix3x3:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+9)),this._startOffset+=e,t},identityCoefficients:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+50)),this._startOffset+=e,t},expressionCoefficients:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+29)),this._startOffset+=e,t},cameraModel:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+6)),this._startOffset+=e,t},barcodeFormat:()=>this._i32View[this._startOffset++],faceLandmarkName:()=>this._i32View[this._startOffset++],instantTrackerTransformOrientation:()=>this._i32View[this._startOffset++],logLevel:()=>this._i32View[this._startOffset++]}}setData(e){this._buffer=e,this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=0,this._length=0,e.byteLength>=4&&(this._offset=1,this._length=this._i32View[0]),this._startOffset=-1}hasMessage(){return this._offset+1<this._length}forMessages(e){for(;this.hasMessage();){let t=this._i32View[this._offset],r=this._i32View[this._offset+1];this._startOffset=this._offset+2,this._offset+=t,e(r,this._processor)}}}class h{constructor(e){this._messageSender=e,this._globalState={log_level:1},this.serializer=new l((e=>{this._messageSender(e)})),this.deserializer=new d,this._latestId=1,this._pipeline_state_by_instance=new Map,this._camera_source_state_by_instance=new Map,this._sequence_source_state_by_instance=new Map,this._image_tracker_state_by_instance=new Map,this._face_tracker_state_by_instance=new Map,this._face_mesh_state_by_instance=new Map,this._face_landmark_state_by_instance=new Map,this._barcode_finder_state_by_instance=new Map,this._instant_world_tracker_state_by_instance=new Map,this._zapcode_tracker_state_by_instance=new Map,this._world_tracker_state_by_instance=new Map,this.impl={log_level:()=>this._globalState.log_level,log_level_set:e=>{this.serializer.sendMessage(38,(t=>{t.logLevel(e)}))},analytics_project_id_set:(e,t)=>{this.serializer.sendMessage(35,(r=>{r.string(e),r.string(t)}))},pipeline_create:()=>{let e=this._latestId++,t={current_frame_user_data:0,camera_model:new Float32Array([300,300,160,120,0,0]),camera_pose:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),camera_frame_camera_attitude:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),camera_frame_device_attitude:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),frame_number:0};return this._pipeline_state_by_instance.set(e,t),this.serializer.sendMessage(31,(t=>{t.type(e)})),e},pipeline_destroy:e=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this._pipeline_state_by_instance.delete(e),this.serializer.sendMessage(32,(t=>{t.type(e)}))},pipeline_frame_update:e=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(9,(t=>{t.type(e)}))},pipeline_frame_number:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.frame_number},pipeline_camera_model:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.camera_model},pipeline_camera_frame_user_data:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.current_frame_user_data},pipeline_camera_frame_submit:(e,t,r,i,a,n,o,s)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(8,(_=>{_.type(e),_.dataWithLength(t),_.int(r),_.int(i),_.int(a),_.matrix4x4(n),_.cameraModel(o),_.bool(s)}))},pipeline_camera_frame_camera_attitude:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.camera_frame_camera_attitude},pipeline_camera_frame_device_attitude:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.camera_frame_device_attitude},pipeline_motion_accelerometer_submit:(e,t,r,i,a)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(10,(n=>{n.type(e),n.timestamp(t),n.float(r),n.float(i),n.float(a)}))},pipeline_motion_accelerometer_with_gravity_submit_int:(e,t,r,i,a,n)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(12,(o=>{o.type(e),o.timestamp(t),o.timestamp(r),o.float(i),o.float(a),o.float(n)}))},pipeline_motion_accelerometer_without_gravity_submit_int:(e,t,r,i,a,n)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(11,(o=>{o.type(e),o.timestamp(t),o.timestamp(r),o.float(i),o.float(a),o.float(n)}))},pipeline_motion_rotation_rate_submit:(e,t,r,i,a)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(15,(n=>{n.type(e),n.timestamp(t),n.float(r),n.float(i),n.float(a)}))},pipeline_motion_rotation_rate_submit_int:(e,t,r,i,a,n)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(13,(o=>{o.type(e),o.timestamp(t),o.timestamp(r),o.float(i),o.float(a),o.float(n)}))},pipeline_motion_attitude_submit:(e,t,r,i,a)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(16,(n=>{n.type(e),n.timestamp(t),n.float(r),n.float(i),n.float(a)}))},pipeline_motion_attitude_submit_int:(e,t,r,i,a,n)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(14,(o=>{o.type(e),o.timestamp(t),o.timestamp(r),o.float(i),o.float(a),o.float(n)}))},pipeline_motion_attitude_matrix_submit:(e,t)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(17,(r=>{r.type(e),r.matrix4x4(t)}))},camera_source_create:(e,t)=>{let r=this._latestId++;return this._camera_source_state_by_instance.set(r,{}),this.serializer.sendMessage(33,(i=>{i.type(r),i.type(e),i.string(t)})),r},camera_source_destroy:e=>{if(!this._camera_source_state_by_instance.get(e))throw new Error("This object has been destroyed");this._camera_source_state_by_instance.delete(e),this.serializer.sendMessage(34,(t=>{t.type(e)}))},sequence_source_create:e=>{let t=this._latestId++;return this._sequence_source_state_by_instance.set(t,{}),this.serializer.sendMessage(39,(r=>{r.type(t),r.type(e)})),t},sequence_source_destroy:e=>{if(!this._sequence_source_state_by_instance.get(e))throw new Error("This object has been destroyed");this._sequence_source_state_by_instance.delete(e),this.serializer.sendMessage(40,(t=>{t.type(e)}))},image_tracker_create:e=>{let t=this._latestId++;return this._image_tracker_state_by_instance.set(t,{enabled:!0,target_loaded_version:-1,anchor_count:0,anchor_id:[],anchor_pose:[]}),this.serializer.sendMessage(2,(r=>{r.type(t),r.type(e)})),t},image_tracker_destroy:e=>{if(!this._image_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._image_tracker_state_by_instance.delete(e),this.serializer.sendMessage(18,(t=>{t.type(e)}))},image_tracker_target_load_from_memory:(e,t)=>{if(!this._image_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(4,(r=>{r.type(e),r.dataWithLength(t)}))},image_tracker_target_loaded_version:e=>{let t=this._image_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.target_loaded_version},image_tracker_enabled:e=>{let t=this._image_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},image_tracker_enabled_set:(e,t)=>{if(!this._image_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(3,(r=>{r.type(e),r.bool(t)}))},image_tracker_anchor_count:e=>{let t=this._image_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.anchor_count},image_tracker_anchor_id:(e,t)=>{let r=this._image_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_id[t]},image_tracker_anchor_pose_raw:(e,t)=>{let r=this._image_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_pose[t]},face_tracker_create:e=>{let t=this._latestId++;return this._face_tracker_state_by_instance.set(t,{enabled:!0,model_loaded:-1,max_faces:1,anchor_count:0,anchor_id:[],anchor_pose:[],anchor_identity_coefficients:[],anchor_expression_coefficients:[]}),this.serializer.sendMessage(24,(r=>{r.type(t),r.type(e)})),t},face_tracker_destroy:e=>{if(!this._face_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._face_tracker_state_by_instance.delete(e),this.serializer.sendMessage(25,(t=>{t.type(e)}))},face_tracker_model_load_from_memory:(e,t)=>{if(!this._face_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(26,(r=>{r.type(e),r.dataWithLength(t)}))},face_tracker_model_loaded_version:e=>{let t=this._face_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.model_loaded},face_tracker_enabled_set:(e,t)=>{if(!this._face_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(27,(r=>{r.type(e),r.bool(t)}))},face_tracker_enabled:e=>{let t=this._face_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},face_tracker_max_faces_set:(e,t)=>{if(!this._face_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(28,(r=>{r.type(e),r.int(t)}))},face_tracker_max_faces:e=>{let t=this._face_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.max_faces},face_tracker_anchor_count:e=>{let t=this._face_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.anchor_count},face_tracker_anchor_id:(e,t)=>{let r=this._face_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_id[t]},face_tracker_anchor_pose_raw:(e,t)=>{let r=this._face_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_pose[t]},face_tracker_anchor_identity_coefficients:(e,t)=>{let r=this._face_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_identity_coefficients[t]},face_tracker_anchor_expression_coefficients:(e,t)=>{let r=this._face_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_expression_coefficients[t]},face_mesh_create:()=>{let e=this._latestId++;return this._face_mesh_state_by_instance.set(e,{}),this.serializer.sendMessage(29,(t=>{t.type(e)})),e},face_mesh_destroy:e=>{if(!this._face_mesh_state_by_instance.get(e))throw new Error("This object has been destroyed");this._face_mesh_state_by_instance.delete(e),this.serializer.sendMessage(30,(t=>{t.type(e)}))},face_landmark_create:e=>{let t=this._latestId++;return this._face_landmark_state_by_instance.set(t,{}),this.serializer.sendMessage(36,(r=>{r.type(t),r.faceLandmarkName(e)})),t},face_landmark_destroy:e=>{if(!this._face_landmark_state_by_instance.get(e))throw new Error("This object has been destroyed");this._face_landmark_state_by_instance.delete(e),this.serializer.sendMessage(37,(t=>{t.type(e)}))},barcode_finder_create:e=>{let t=this._latestId++;return this._barcode_finder_state_by_instance.set(t,{enabled:!0,number_found:0,found_text:[],found_format:[],formats:131071}),this.serializer.sendMessage(20,(r=>{r.type(t),r.type(e)})),t},barcode_finder_destroy:e=>{if(!this._barcode_finder_state_by_instance.get(e))throw new Error("This object has been destroyed");this._barcode_finder_state_by_instance.delete(e),this.serializer.sendMessage(21,(t=>{t.type(e)}))},barcode_finder_enabled_set:(e,t)=>{if(!this._barcode_finder_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(22,(r=>{r.type(e),r.bool(t)}))},barcode_finder_enabled:e=>{let t=this._barcode_finder_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},barcode_finder_found_number:e=>{let t=this._barcode_finder_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.number_found},barcode_finder_found_text:(e,t)=>{let r=this._barcode_finder_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.found_text[t]},barcode_finder_found_format:(e,t)=>{let r=this._barcode_finder_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.found_format[t]},barcode_finder_formats:e=>{let t=this._barcode_finder_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.formats},barcode_finder_formats_set:(e,t)=>{if(!this._barcode_finder_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(23,(r=>{r.type(e),r.barcodeFormat(t)}))},instant_world_tracker_create:e=>{let t=this._latestId++,r={enabled:!0,pose:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};return this._instant_world_tracker_state_by_instance.set(t,r),this.serializer.sendMessage(5,(r=>{r.type(t),r.type(e)})),t},instant_world_tracker_destroy:e=>{if(!this._instant_world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._instant_world_tracker_state_by_instance.delete(e),this.serializer.sendMessage(19,(t=>{t.type(e)}))},instant_world_tracker_enabled_set:(e,t)=>{if(!this._instant_world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(6,(r=>{r.type(e),r.bool(t)}))},instant_world_tracker_enabled:e=>{let t=this._instant_world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},instant_world_tracker_anchor_pose_raw:e=>{let t=this._instant_world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.pose},instant_world_tracker_anchor_pose_set_from_camera_offset_raw:(e,t,r,i,a)=>{if(!this._instant_world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(7,(n=>{n.type(e),n.float(t),n.float(r),n.float(i),n.instantTrackerTransformOrientation(a)}))},zapcode_tracker_create:e=>{let t=this._latestId++;return this._zapcode_tracker_state_by_instance.set(t,{enabled:!0,target_loaded_version:-1,anchor_count:0,anchor_id:[],anchor_pose:[]}),this.serializer.sendMessage(41,(r=>{r.type(t),r.type(e)})),t},zapcode_tracker_destroy:e=>{if(!this._zapcode_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._zapcode_tracker_state_by_instance.delete(e),this.serializer.sendMessage(44,(t=>{t.type(e)}))},zapcode_tracker_target_load_from_memory:(e,t)=>{if(!this._zapcode_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(43,(r=>{r.type(e),r.dataWithLength(t)}))},zapcode_tracker_target_loaded_version:e=>{let t=this._zapcode_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.target_loaded_version},zapcode_tracker_enabled:e=>{let t=this._zapcode_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},zapcode_tracker_enabled_set:(e,t)=>{if(!this._zapcode_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(42,(r=>{r.type(e),r.bool(t)}))},zapcode_tracker_anchor_count:e=>{let t=this._zapcode_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.anchor_count},zapcode_tracker_anchor_id:(e,t)=>{let r=this._zapcode_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_id[t]},zapcode_tracker_anchor_pose_raw:(e,t)=>{let r=this._zapcode_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_pose[t]},world_tracker_create:e=>{let t=this._latestId++,r={enabled:!0,plane_count:0,plane_pose:[],world_anchor_valid:!1,world_anchor_pose:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),ground_anchor_valid:!1,ground_anchor_pose:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),debug_enabled:!1,debug_tracks_data:new Float32Array([]),debug_tracks_data_size:0,debug_projections_data:new Float32Array([]),debug_projections_data_size:0,quality:0};return this._world_tracker_state_by_instance.set(t,r),this.serializer.sendMessage(45,(r=>{r.type(t),r.type(e)})),t},world_tracker_destroy:e=>{if(!this._world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._world_tracker_state_by_instance.delete(e),this.serializer.sendMessage(46,(t=>{t.type(e)}))},world_tracker_enabled:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},world_tracker_enabled_set:(e,t)=>{if(!this._world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(47,(r=>{r.type(e),r.bool(t)}))},world_tracker_quality:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.quality},world_tracker_plane_count:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.plane_count},world_tracker_plane_pose_raw:(e,t)=>{let r=this._world_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.plane_pose[t]},world_tracker_world_anchor_valid:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.world_anchor_valid},world_tracker_world_anchor_pose_raw:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.world_anchor_pose},world_tracker_ground_anchor_valid:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.world_anchor_valid},world_tracker_ground_anchor_pose_raw:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.ground_anchor_pose},world_tracker_reset:e=>{if(!this._world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(48,(t=>{t.type(e)}))},world_tracker_debug_enabled:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_enabled},world_tracker_debug_enabled_set:(e,t)=>{if(!this._world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(49,(r=>{r.type(e),r.bool(t)}))},world_tracker_debug_tracks_data_size:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_tracks_data_size},world_tracker_debug_tracks_data:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_tracks_data},world_tracker_debug_projections_data_size:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_projections_data_size},world_tracker_debug_projections_data:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_projections_data}}}processMessages(e){this.deserializer.setData(e),this.deserializer.forMessages(((e,t)=>{switch(e){case 7:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.frame_number=t.int();break}case 6:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.camera_model=t.cameraModel();break}case 5:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.current_frame_user_data=t.int();break}case 11:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.camera_frame_camera_attitude=t.matrix4x4();break}case 12:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.camera_frame_device_attitude=t.matrix4x4();break}case 19:{let e=t.type(),r=this._image_tracker_state_by_instance.get(e);if(!r)return;r.target_loaded_version=t.int();break}case 1:{let e=t.type(),r=this._image_tracker_state_by_instance.get(e);if(!r)return;r.anchor_count=t.int();break}case 2:{let e=t.type(),r=this._image_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_id[i]=t.string();break}case 3:{let e=t.type(),r=this._image_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_pose[i]=t.matrix4x4();break}case 18:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;r.model_loaded=t.int();break}case 13:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;r.anchor_count=t.int();break}case 14:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_id[i]=t.string();break}case 15:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_pose[i]=t.matrix4x4();break}case 16:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_identity_coefficients[i]=t.identityCoefficients();break}case 17:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_expression_coefficients[i]=t.expressionCoefficients();break}case 8:{let e=t.type(),r=this._barcode_finder_state_by_instance.get(e);if(!r)return;r.number_found=t.int();break}case 9:{let e=t.type(),r=this._barcode_finder_state_by_instance.get(e);if(!r)return;let i=t.int();r.found_text[i]=t.string();break}case 10:{let e=t.type(),r=this._barcode_finder_state_by_instance.get(e);if(!r)return;let i=t.int();r.found_format[i]=t.barcodeFormat();break}case 4:{let e=t.type(),r=this._instant_world_tracker_state_by_instance.get(e);if(!r)return;r.pose=t.matrix4x4();break}case 24:{let e=t.type(),r=this._zapcode_tracker_state_by_instance.get(e);if(!r)return;r.target_loaded_version=t.int();break}case 21:{let e=t.type(),r=this._zapcode_tracker_state_by_instance.get(e);if(!r)return;r.anchor_count=t.int();break}case 22:{let e=t.type(),r=this._zapcode_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_id[i]=t.string();break}case 23:{let e=t.type(),r=this._zapcode_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_pose[i]=t.matrix4x4();break}case 31:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.quality=t.int();break}case 25:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.plane_count=t.int();break}case 26:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.plane_pose[i]=t.matrix4x4();break}case 27:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.world_anchor_valid=t.bool();break}case 28:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.world_anchor_pose=t.matrix4x4();break}case 27:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.world_anchor_valid=t.bool();break}case 30:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.ground_anchor_pose=t.matrix4x4();break}case 33:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.debug_tracks_data_size=t.int();break}case 32:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.debug_tracks_data=t.floatArray();break}case 35:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.debug_projections_data_size=t.int();break}case 34:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.debug_projections_data=t.floatArray();break}}}))}}function u(e,t,r){let i=e.createShader(t);if(!i)throw new Error("Unable to create shader");e.shaderSource(i,r),e.compileShader(i);let a=e.getShaderInfoLog(i);if(a&&a.trim().length>0)throw new Error("Shader compile error: "+a);return i}function f(e,t){e.linkProgram(t);let r=e.getProgramInfoLog(t);if(r&&r.trim().length>0)throw new Error("Unable to link: "+r)}let p,m,b,g={};function w(e){if(b)return b;if(b=e.createBuffer(),!b)throw new Error("Unable to create buffer object");return e.bindBuffer(e.ARRAY_BUFFER,b),e.bufferData(e.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,1,1,0]),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),b}let v="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 projMatrix;\nuniform mat4 cameraMatrix;\nuniform mat4 modelViewMatrix;\nattribute vec4 position;\nattribute vec2 textureCoord;\n\nvarying highp vec2 vTextureCoord;\n\nvoid main()\n{\n gl_Position = projMatrix * cameraMatrix * modelViewMatrix * position;\n vTextureCoord = textureCoord;\n}",E="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying highp vec2 vTextureCoord;\nuniform sampler2D skinSampler;\n\nvoid main()\n{\n gl_FragColor = texture2D(skinSampler, vTextureCoord);\n}";function y(e){if(p)return p;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,v),i=u(e,e.FRAGMENT_SHADER,E);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"projMatrix");if(!a)throw new Error("Unable to get uniform location projMatrix");let n=e.getUniformLocation(t,"modelViewMatrix");if(!n)throw new Error("Unable to get uniform location modelViewMatrix");let o=e.getUniformLocation(t,"cameraMatrix");if(!o)throw new Error("Unable to get uniform location cameraMatrix");let s=e.getUniformLocation(t,"skinSampler");if(!s)throw new Error("Unable to get uniform location skinSampler");return p={prog:t,unif_matrix:n,unif_proj:a,unif_camera:o,unif_skinSampler:s,attr_position:e.getAttribLocation(t,"position"),attr_textureCoord:e.getAttribLocation(t,"textureCoord")},p}var A=1e-6,T="undefined"!=typeof Float32Array?Float32Array:Array;function R(){var e=new T(16);return T!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function x(e,t){var r=t[0],i=t[1],a=t[2],n=t[3],o=t[4],s=t[5],_=t[6],c=t[7],l=t[8],d=t[9],h=t[10],u=t[11],f=t[12],p=t[13],m=t[14],b=t[15],g=r*s-i*o,w=r*_-a*o,v=r*c-n*o,E=i*_-a*s,y=i*c-n*s,A=a*c-n*_,T=l*p-d*f,R=l*m-h*f,x=l*b-u*f,k=d*m-h*p,I=d*b-u*p,L=h*b-u*m,S=g*L-w*I+v*k+E*x-y*R+A*T;return S?(S=1/S,e[0]=(s*L-_*I+c*k)*S,e[1]=(a*I-i*L-n*k)*S,e[2]=(p*A-m*y+b*E)*S,e[3]=(h*y-d*A-u*E)*S,e[4]=(_*x-o*L-c*R)*S,e[5]=(r*L-a*x+n*R)*S,e[6]=(m*v-f*A-b*w)*S,e[7]=(l*A-h*v+u*w)*S,e[8]=(o*I-s*x+c*T)*S,e[9]=(i*x-r*I-n*T)*S,e[10]=(f*y-p*v+b*g)*S,e[11]=(d*v-l*y-u*g)*S,e[12]=(s*R-o*k-_*T)*S,e[13]=(r*k-i*R+a*T)*S,e[14]=(p*w-f*E-m*g)*S,e[15]=(l*E-d*w+h*g)*S,e):null}function k(e,t,r){var i=t[0],a=t[1],n=t[2],o=t[3],s=t[4],_=t[5],c=t[6],l=t[7],d=t[8],h=t[9],u=t[10],f=t[11],p=t[12],m=t[13],b=t[14],g=t[15],w=r[0],v=r[1],E=r[2],y=r[3];return e[0]=w*i+v*s+E*d+y*p,e[1]=w*a+v*_+E*h+y*m,e[2]=w*n+v*c+E*u+y*b,e[3]=w*o+v*l+E*f+y*g,w=r[4],v=r[5],E=r[6],y=r[7],e[4]=w*i+v*s+E*d+y*p,e[5]=w*a+v*_+E*h+y*m,e[6]=w*n+v*c+E*u+y*b,e[7]=w*o+v*l+E*f+y*g,w=r[8],v=r[9],E=r[10],y=r[11],e[8]=w*i+v*s+E*d+y*p,e[9]=w*a+v*_+E*h+y*m,e[10]=w*n+v*c+E*u+y*b,e[11]=w*o+v*l+E*f+y*g,w=r[12],v=r[13],E=r[14],y=r[15],e[12]=w*i+v*s+E*d+y*p,e[13]=w*a+v*_+E*h+y*m,e[14]=w*n+v*c+E*u+y*b,e[15]=w*o+v*l+E*f+y*g,e}function I(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}function L(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function S(e,t,r){var i,a,n,o=r[0],s=r[1],_=r[2],c=Math.hypot(o,s,_);return c<A?null:(o*=c=1/c,s*=c,_*=c,i=Math.sin(t),n=1-(a=Math.cos(t)),e[0]=o*o*n+a,e[1]=s*o*n+_*i,e[2]=_*o*n-s*i,e[3]=0,e[4]=o*s*n-_*i,e[5]=s*s*n+a,e[6]=_*s*n+o*i,e[7]=0,e[8]=o*_*n+s*i,e[9]=s*_*n-o*i,e[10]=_*_*n+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}function M(){var e=new T(3);return T!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function F(e,t){var r=t[0],i=t[1],a=t[2],n=r*r+i*i+a*a;return n>0&&(n=1/Math.sqrt(n)),e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function z(e,t,r){var i=t[0],a=t[1],n=t[2],o=r[0],s=r[1],_=r[2];return e[0]=a*_-n*s,e[1]=n*o-i*_,e[2]=i*s-a*o,e}function P(e,t,r){var i=t[0],a=t[1],n=t[2],o=r[3]*i+r[7]*a+r[11]*n+r[15];return o=o||1,e[0]=(r[0]*i+r[4]*a+r[8]*n+r[12])/o,e[1]=(r[1]*i+r[5]*a+r[9]*n+r[13])/o,e[2]=(r[2]*i+r[6]*a+r[10]*n+r[14])/o,e}Math.random,Math.PI,Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t];return Math.sqrt(e)}),M();var C,N=r(238);!function(e){e[e.OBJECT_URL=0]="OBJECT_URL",e[e.SRC_OBJECT=1]="SRC_OBJECT"}(C||(C={}));let U={deviceMotionMutliplier:-1,blacklisted:!1,showGyroPermissionsWarningIfNecessary:!1,showSafariPermissionsResetIfNecessary:!1,requestHighFrameRate:!1,videoWidth:640,videoHeight:480,getDataSize:e=>e===c.HIGH?[640,480]:[320,240],videoElementInDOM:!1,preferMediaStreamTrackProcessorCamera:!0,preferImageBitmapCamera:!1,ios164CameraSelection:!1,relyOnConstraintsForCameraSelection:!1,forceWindowOrientation:!1,intervalMultiplier:1,trustSensorIntervals:!1};"undefined"!=typeof window&&(window.zeeProfile=U,window.location.href.indexOf("_mstppipeline")>=0&&(console.log("Configuring for MSTP camera pipeline (if supported)"),U.preferMediaStreamTrackProcessorCamera=!0),window.location.href.indexOf("_imagebitmappipeline")>=0&&(console.log("Configuring for ImageBitmap camera pipeline (if supported)"),U.preferImageBitmapCamera=!0));let D=new N.UAParser,B=(D.getOS().name||"unknown").toLowerCase(),O=(D.getEngine().name||"unknown").toLowerCase();function V(e){U.forceWindowOrientation=!0,U.preferMediaStreamTrackProcessorCamera=!1,U.intervalMultiplier=1e3,U.trustSensorIntervals=!0;let t=e.split(".");if(t.length>=2){const e=parseInt(t[0]),r=parseInt(t[1]);(e<11||11===e&&r<3)&&(U.blacklisted=!0),(e<12||12===e&&r<2)&&(U.videoElementInDOM=!0),(12===e&&r>=2||e>=13)&&(U.showGyroPermissionsWarningIfNecessary=!0),e>=13&&(U.showSafariPermissionsResetIfNecessary=!0),(e>=12&&r>1||e>=13)&&navigator.mediaDevices&&navigator.mediaDevices.getSupportedConstraints&&navigator.mediaDevices.getSupportedConstraints().frameRate&&(U.requestHighFrameRate=!0,e<14&&(U.videoHeight=360,U.getDataSize=e=>e===c.HIGH?[640,360]:[320,180])),16===e&&r>=4&&(U.ios164CameraSelection=!0),e>=17&&(U.relyOnConstraintsForCameraSelection=!0)}}function j(e,t,r,i=.01,a=100){let n=2*e[2],o=2*e[3],s=R();!function(e,t,r,i,a,n,o){var s=1/(r-t),_=1/(a-i),c=1/(n-o);e[0]=2*n*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*n*_,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(a+i)*_,e[10]=(o+n)*c,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*n*2*c,e[15]=0}(s,i*(-.5-e[2])/e[0],i*(n-.5-e[2])/e[0],i*(o-.5-e[3])/e[1],i*(-.5-e[3])/e[1],i,a),s[4]*=-1,s[5]*=-1,s[6]*=-1,s[7]*=-1;let _=R();L(_,[.5*n,.5*o,1]),k(s,_,s),S(_,G(!1)*Math.PI/180,[0,0,1]),k(s,_,s);let c=M();c[0]=n,c[1]=o,c[2]=0,P(c,c,_);let l=Math.abs(c[0]),d=Math.abs(c[1]),h=1;return h=l/t>d/r?r/d:t/l,L(_,[h,h,1]),k(s,_,s),L(_,[2/t,2/r,1]),k(s,_,s),S(_,G(!1)*Math.PI/-180,[0,0,1]),k(s,s,_),s}function G(e){if(window.screen.orientation&&!U.forceWindowOrientation)switch(window.screen.orientation.type){case"portrait-primary":return e?90:270;case"landscape-secondary":return 180;case"portrait-secondary":return e?270:90;default:return 0}else if(void 0!==window.orientation)switch(window.orientation){case 0:return e?90:270;case 90:return 0;case 180:return e?270:90;case-90:return 180}return 0}"webkit"===O&&"ios"!==B&&(U.deviceMotionMutliplier=1,"undefined"!=typeof window&&void 0!==window.orientation&&V("15.0")),"webkit"===O&&"ios"===B&&(U.deviceMotionMutliplier=1,V(D.getOS().version||"15.0"));class W{constructor(){this._funcs=[]}bind(e){this._funcs.push(e)}unbind(e){let t=this._funcs.indexOf(e);t>-1&&this._funcs.splice(t,1)}emit(){for(var e=0,t=this._funcs.length;e<t;e++)this._funcs[e]()}}class H{constructor(){this._funcs=[]}bind(e){this._funcs.push(e)}unbind(e){let t=this._funcs.indexOf(e);t>-1&&this._funcs.splice(t,1)}emit(e){for(var t=0,r=this._funcs.length;t<r;t++)this._funcs[t](e)}}var Y=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};let X=new class{constructor(){this.onOutgoingMessage=new W,this.onIncomingMessage=new H,this._outgoingMessages=[]}postIncomingMessage(e){this.onIncomingMessage.emit(e)}postOutgoingMessage(e,t){this._outgoingMessages.push({msg:e,transferables:t}),this.onOutgoingMessage.emit()}getOutgoingMessages(){let e=this._outgoingMessages;return this._outgoingMessages=[],e}};const Z=Y(void 0,void 0,void 0,(function*(){const e=yield fetch(new URL(r(751),r.b).toString());return yield WebAssembly.compileStreaming(e)}));var q;!function(e){e[e.PermissionTitle=0]="PermissionTitle",e[e.PermissionDescription=1]="PermissionDescription",e[e.PermissionButton=2]="PermissionButton"}(q||(q={}));const[K,$]=function(e){const[t,r]=e.toLowerCase().split("-");return[t,r||""]}(navigator.language);function Q(e){switch(K){case"es":switch(e){case q.PermissionTitle:return"Ya casi...";case q.PermissionDescription:return"Para brindar esta experiencia de realidad aumentada, necesitamos acceso a la cámara y los sensores de movimiento de su dispositivo.";case q.PermissionButton:return"Permitir acceso"}break;case"de":switch(e){case q.PermissionTitle:return"Fast am Ziel..";case q.PermissionDescription:return"Um dir dieses Augmented Reality Erlebnis zu liefern, brauchen wir Zugriff auf die Kamera und Bewegungssensoren deines Gerätes.";case q.PermissionButton:return"Gewähre Zugriff"}break;case"pt":switch(e){case q.PermissionTitle:return"Está quase!";case q.PermissionDescription:return"Esta experiência de realidade aumentada precisa de acesso à câmera e aos sensores de movimento deste dispositivo.";case q.PermissionButton:return"Permitir acesso"}}switch(e){case q.PermissionTitle:return"Almost there...";case q.PermissionDescription:return"In order to provide this augmented reality experience, we need access to your device's camera and motion sensors.";case q.PermissionButton:return"Grant Access"}return""}var J=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};let ee=new N.UAParser,te=!1,re=!1,ie=!1,ae=!1;function ne(){return J(this,void 0,void 0,(function*(){if(navigator.permissions&&navigator.permissions.query)try{let e=yield navigator.permissions.query({name:"camera"});ie="denied"===e.state,te="granted"===e.state}catch(e){}}))}function oe(){return te}function se(){return re}function _e(){return ie}function ce(){return ae}function le(){return ie||ae}function de(){return te&&re}function he(){return J(this,void 0,void 0,(function*(){yield fe(),yield ue()}))}function ue(){return J(this,void 0,void 0,(function*(){try{(yield navigator.mediaDevices.getUserMedia({video:!0})).getTracks().forEach((e=>e.stop())),te=!0,ie=!1}catch(e){te=!1,ie=!0}}))}function fe(){return J(this,void 0,void 0,(function*(){if(window.DeviceOrientationEvent&&window.DeviceOrientationEvent.requestPermission&&"granted"!==(yield window.DeviceOrientationEvent.requestPermission()))return re=!1,ae=!0,!1;re=!0,ae=!1}))}function pe(){return J(this,void 0,void 0,(function*(){if(yield ne(),de())return!0;let e=document.createElement("div");e.classList.add("zappar-permission-request"),e.innerHTML=`\n <style>\n .zappar-permission-request {\n position: fixed;\n width: 100%;\n height: 100%;\n top: 0px;\n left: 0px;\n z-index: 1000;\n background-color: rgba(0, 0, 0, 0.9);\n font-family: sans-serif;\n color: white;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n .zappar-inner {\n max-width: 400px;\n text-align: center;\n }\n .zappar-title {\n font-size: 20px;\n }\n .zappar-text {\n font-size: 14px;\n padding: 15px;\n }\n .zappar-inner > button {\n background: none;\n outline: none;\n border: 2px solid white;\n border-radius: 10px;\n color: white;\n padding: 10px 40px;\n text-transform: uppercase;\n }\n </style>\n <div class="zappar-inner">\n <div class="zappar-title">${Q(q.PermissionTitle)}</div>\n <div class="zappar-text">${Q(q.PermissionDescription)}</div>\n <button id="zappar-permission-request-button">${Q(q.PermissionButton)}</button>\n </div>\n`,document.body.append(e);let t=e.querySelector("#zappar-permission-request-button");return yield new Promise((r=>{null==t||t.addEventListener("click",(()=>J(this,void 0,void 0,(function*(){for(yield he(),e.remove();;){if(yield new Promise((e=>requestAnimationFrame((()=>e())))),le())return void r(!1);if(de())return void r(!0)}}))))}))}))}function me(){"Chrome"===ee.getBrowser().name?function(){let e=document.createElement("div");e.classList.add("zappar-permission-request"),e.innerHTML='\n <style>\n .zappar-permission-request {\n position: fixed;\n width: 100%;\n height: 100%;\n top: 0px;\n left: 0px;\n z-index: 1000;\n background-color: rgba(0, 0, 0, 0.9);\n font-family: sans-serif;\n color: white;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n .zappar-inner {\n width: 400px;\n text-align: center;\n }\n .zappar-title {\n font-size: 20px;\n }\n .zappar-text {\n font-size: 14px;\n padding: 15px;\n }\n .zappar-inner > button {\n background: none;\n outline: none;\n border: 2px solid white;\n border-radius: 10px;\n color: white;\n padding: 10px 40px;\n text-transform: uppercase;\n }\n </style>\n <div class="zappar-inner">\n <div class="zappar-title">Permission is Needed</div>\n <div class="zappar-text">Permission to access your device\'s camera and motion sensors is necessary for this experience.<br/><br/>To grant access, please tap the ! button in the address bar of your browser, then "Site settings", and finally "Clear and reset". You can then reload the page to try again.</div>\n <button id="zappar-permission-reload-button">Reload</button>\n </div>\n',document.body.append(e);let t=e.querySelector("#zappar-permission-reload-button");null==t||t.addEventListener("click",(()=>window.location.reload()))}():function(){let e=document.createElement("div");e.classList.add("zappar-permission-request"),e.innerHTML='\n <style>\n .zappar-permission-request {\n position: fixed;\n width: 100%;\n height: 100%;\n top: 0px;\n left: 0px;\n z-index: 1000;\n background-color: rgba(0, 0, 0, 0.9);\n font-family: sans-serif;\n color: white;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n .zappar-inner {\n max-width: 400px;\n text-align: center;\n }\n .zappar-title {\n font-size: 20px;\n }\n .zappar-text {\n font-size: 14px;\n padding: 15px;\n }\n .zappar-inner > button {\n background: none;\n outline: none;\n border: 2px solid white;\n border-radius: 10px;\n color: white;\n padding: 10px 40px;\n text-transform: uppercase;\n }\n </style>\n <div class="zappar-inner">\n <div class="zappar-title">Permission is Needed</div>\n <div class="zappar-text">Permission to access your device\'s camera and motion sensors is necessary for this experience. Please reload the page to try again.</div>\n <button id="zappar-permission-reload-button">Reload</button>\n </div>\n',document.body.append(e);let t=e.querySelector("#zappar-permission-reload-button");null==t||t.addEventListener("click",(()=>window.location.reload()))}()}window.DeviceOrientationEvent&&window.DeviceOrientationEvent.requestPermission||(re=!0),ne();let be=n.LOG_LEVEL_ERROR;function ge(...e){be>=n.LOG_LEVEL_VERBOSE&&console.log("[Zappar] INFO",...e)}function we(...e){be>=n.LOG_LEVEL_ERROR&&console.error("[Zappar] ERROR",...e)}function ve(...e){be>=n.LOG_LEVEL_VERBOSE&&console.log("[Zappar] WARN",...e)}let Ee=1,ye=new Map;function Ae(e){return ye.get(e)}class Te{constructor(){this.render_mean_=new Float32Array,this.render_identity_=new Float32Array(50),this.render_expression_=new Float32Array(29),this.render_uvs_=new Float32Array,this.render_indices_=new Uint16Array,this.vertices_=new Float32Array,this.normals_=new Float32Array,this.normalsCalculated_=!1,this.modelVersion_=-1,this.mirrored_=!1}loadFromMemory(e,t,r,i,a){let n=0,o=new Uint16Array(e),s=new Int32Array(e),_=new Float32Array(e),c=()=>{let e=s[n++]*s[n++],t=_.subarray(n,n+e);return n+=e,t},l=()=>{let e=s[n++],t=o.subarray(2*n,2*n+e);return n+=e/2,t};this.render_mean_=c(),this.render_identity_=c(),this.render_expression_=c(),this.render_uvs_=c();let d=l(),h=n<s.length?l():new Uint16Array,u=n<s.length?l():new Uint16Array,f=n<s.length?l():new Uint16Array,p=n<s.length?l():new Uint16Array;if(t||r||i||a){let e=d.length;t&&(e+=h.length),r&&(e+=u.length),i&&(e+=f.length),a&&(e+=p.length),this.render_indices_=new Uint16Array(e),this.render_indices_.set(d,0);let n=d.length;t&&(this.render_indices_.set(h,n),n+=h.length),r&&(this.render_indices_.set(u,n),n+=u.length),i&&(this.render_indices_.set(f,n),n+=f.length),a&&(this.render_indices_.set(p,n),n+=p.length)}else this.render_indices_=d;this.vertices_=new Float32Array(this.render_mean_),this.normals_=new Float32Array(this.vertices_.length),this.modelVersion_++}getVertices(){return this.vertices_}getUVs(){return this.render_uvs_}getIndices(){if(this.mirrored_){if(!this.render_indices_reversed){this.render_indices_reversed=new Uint16Array(this.render_indices_.length);for(let e=0;e<this.render_indices_.length;e+=3)this.render_indices_reversed[e]=this.render_indices_[e+2],this.render_indices_reversed[e+1]=this.render_indices_[e+1],this.render_indices_reversed[e+2]=this.render_indices_[e]}return this.render_indices_reversed}return this.render_indices_}getNormals(){return this.normalsCalculated_||this.calculateNormals(),this.normals_}getModelVersion(){return this.modelVersion_}getLandmarkDataForVertex(e){let t=[this.render_mean_[3*e],this.render_mean_[3*e+1],this.render_mean_[3*e+2]],r=[];for(let t=0;t<50;t++)r.push(this.render_identity_[3*e*50+t]),r.push(this.render_identity_[50*(3*e+1)+t]),r.push(this.render_identity_[50*(3*e+2)+t]);let i=[];for(let t=0;t<29;t++)i.push(this.render_expression_[3*e*29+t]),i.push(this.render_expression_[29*(3*e+1)+t]),i.push(this.render_expression_[29*(3*e+2)+t]);return{mean:t,identity:r,expression:i}}update(e,t,r){if(0!==this.render_mean_.length&&0!==this.render_identity_.length&&0!==this.render_expression_.length){this.mirrored_=r,this.vertices_.set(this.render_mean_);for(let t=0;t<e.length;t++)for(let r=0;r<this.vertices_.length;r++)this.vertices_[r]+=e[t]*this.render_identity_[r*e.length+t];for(let e=0;e<t.length;e++)for(let r=0;r<this.vertices_.length;r++)this.vertices_[r]+=t[e]*this.render_expression_[r*t.length+e];if(r)for(let e=0;e<this.vertices_.length;e+=3)this.vertices_[e]*=-1;this.normalsCalculated_=!1}}calculateNormals(){let e=this.getIndices(),t=this.vertices_,r=new Float32Array(e.length);if(!t)return;let i=e.length,a=this.normals_,n=new Float32Array([0,0,0]),o=new Float32Array([0,0,0]),s=new Float32Array([0,0,0]);for(let a=0;a<i;a+=3){let i=3*e[a],h=3*e[a+1],u=3*e[a+2];n[0]=t[h]-t[i],n[1]=t[h+1]-t[i+1],n[2]=t[h+2]-t[i+2],o[0]=t[u]-t[i],o[1]=t[u+1]-t[i+1],o[2]=t[u+2]-t[i+2],z(s,n,o);let f=(c=void 0,l=void 0,d=void 0,c=(_=s)[0],l=_[1],d=_[2],Math.hypot(c,l,d));r[a]=s[0]/f,r[a+1]=s[1]/f,r[a+2]=s[2]/f}var _,c,l,d;a.fill(0);for(let t=0;t<i;t+=3){let i=3*e[t],n=3*e[t+1],o=3*e[t+2];a[i]+=r[t],a[i+1]+=r[t+1],a[i+2]+=r[t+2],a[n]+=r[t],a[n+1]+=r[t+1],a[n+2]+=r[t+2],a[o]+=r[t],a[o+1]+=r[t+1],a[o+2]+=r[t+2]}let h=a.length/3;for(let e=0;e<h;e++){let t=3*e;n[0]=a[t],n[1]=a[t+1],n[2]=a[t+2],F(o,n),a[t]=o[0],a[t+1]=o[1],a[t+2]=o[2]}this.normalsCalculated_=!0}}let Re=R();class xe{constructor(e){this._gl=e}dispose(){this._vbo&&this._gl.deleteBuffer(this._vbo),this._vbo=void 0,this._shader&&this._gl.deleteProgram(this._shader.prog),this._shader=void 0}_generate(e,t){if(this._vbo)return this._vbo;if(this._vbo||(this._vbo=e.createBuffer()),!this._vbo)throw new Error("Unable to create buffer object");let r=new Float32Array([-1,-1,0,0,0,-1,1,0,0,1,1,-1,0,1,0,1,-1,0,1,0,-1,1,0,0,1,1,1,0,1,1]);return e.bindBuffer(e.ARRAY_BUFFER,this._vbo),e.bufferData(e.ARRAY_BUFFER,new Float32Array(r),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),this._vbo}drawCameraFrame(e,t,r,i){if(!r.texture)return;let a=this._gl;const n=a.isEnabled(a.DEPTH_TEST),o=a.isEnabled(a.SCISSOR_TEST),s=a.isEnabled(a.CULL_FACE),_=a.isEnabled(a.STENCIL_TEST),c=a.isEnabled(a.BLEND),l=a.getParameter(a.TEXTURE_BINDING_2D),d=a.getParameter(a.FRAMEBUFFER_BINDING),h=a.getParameter(a.CURRENT_PROGRAM),u=a.getParameter(a.ACTIVE_TEXTURE);a.disable(a.DEPTH_TEST),a.disable(a.SCISSOR_TEST),a.disable(a.CULL_FACE),a.disable(a.STENCIL_TEST),a.disable(a.BLEND);let f=this._getCameraShader(a),p=this._generate(a,r);a.activeTexture(a.TEXTURE0),a.useProgram(f.prog),a.uniformMatrix4fv(f.unif_skinTexTransform,!1,Le(r.dataWidth,r.dataHeight,e,t,r.uvTransform||Re,i)),a.uniform1i(f.unif_skinSampler,0),a.bindTexture(a.TEXTURE_2D,r.texture),a.bindBuffer(a.ARRAY_BUFFER,p),a.vertexAttribPointer(f.attr_position,3,a.FLOAT,!1,20,0),a.enableVertexAttribArray(f.attr_position),a.vertexAttribPointer(f.attr_texCoord,2,a.FLOAT,!1,20,12),a.enableVertexAttribArray(f.attr_texCoord),a.drawArrays(a.TRIANGLES,0,6),a.disableVertexAttribArray(f.attr_position),a.disableVertexAttribArray(f.attr_texCoord),a.bindFramebuffer(a.FRAMEBUFFER,d),a.useProgram(h),a.bindTexture(a.TEXTURE_2D,l),a.activeTexture(u),c&&a.enable(a.BLEND),s&&a.enable(a.CULL_FACE),n&&a.enable(a.DEPTH_TEST),o&&a.enable(a.SCISSOR_TEST),_&&a.enable(a.STENCIL_TEST)}_getCameraShader(e){if(this._shader)return this._shader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,ke),i=u(e,e.FRAGMENT_SHADER,Ie);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"skinTexTransform");if(!a)throw new Error("Unable to get uniform location skinTexTransform");let n=e.getUniformLocation(t,"skinSampler");if(!n)throw new Error("Unable to get uniform location skinSampler");return this._shader={prog:t,unif_skinTexTransform:a,unif_skinSampler:n,attr_position:e.getAttribLocation(t,"position"),attr_texCoord:e.getAttribLocation(t,"texCoord")},this._shader}}let ke="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nattribute vec4 position;\nattribute vec4 texCoord;\nvarying vec4 skinTexVarying;\nuniform mat4 skinTexTransform;\n\nvoid main()\n{\n gl_Position = position;\n skinTexVarying = skinTexTransform * texCoord;\n}",Ie="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying vec4 skinTexVarying;\nuniform lowp sampler2D skinSampler;\n\nvoid main()\n{\n gl_FragColor = texture2DProj(skinSampler, skinTexVarying);\n}";function Le(e,t,r,i,a,n){let o=R(),s=R();I(s,[-.5,-.5,0]),k(o,s,o),n&&(L(s,[-1,1,1]),k(o,s,o)),S(s,-1*function(){if(window.screen.orientation&&!U.forceWindowOrientation)switch(window.screen.orientation.type){case"portrait-primary":return 270;case"landscape-secondary":return 180;case"portrait-secondary":return 90;default:return 0}else if(void 0!==window.orientation)switch(window.orientation){case 0:return 270;case 90:return 0;case 180:return 90;case-90:return 180}return 0}()*Math.PI/180,[0,0,1]),k(o,s,o);let _=M();_[0]=r,_[1]=i,_[2]=0,P(_,_,s);let c=Math.abs(_[0]),l=Math.abs(_[1]);L(s,[1,-1,1]),k(o,s,o);let d=c/l,h=e/t;return L(s,d>h?[1,h/d,1]:[d/h,1,1]),k(o,s,o),I(s,[.5,.5,0]),k(o,s,o),k(o,a,o),o}class Se{constructor(e){this._gl=e}dispose(){this._vbo&&this._gl.deleteBuffer(this._vbo),this._normalbo&&this._gl.deleteBuffer(this._normalbo),this._ibo&&this._gl.deleteBuffer(this._ibo),this._shader&&this._gl.deleteProgram(this._shader.prog),this._vbo=void 0,this._normalbo=void 0,this._ibo=void 0,this._shader=void 0}_generateIBO(e,t){if(this._ibo&&this._lastIndices===e)return this._ibo;if(this._lastIndices=e,this._ibo||(this._ibo=t.createBuffer()),!this._ibo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this._ibo),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null),this._ibo}_generateVBO(e,t){if(this._vbo||(this._vbo=t.createBuffer()),!this._vbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._vbo),t.bufferData(t.ARRAY_BUFFER,e,t.STREAM_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._vbo}_generateNormalBO(e,t){if(this._normalbo||(this._normalbo=t.createBuffer()),!this._normalbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._normalbo),t.bufferData(t.ARRAY_BUFFER,e,t.STREAM_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._normalbo}drawFace(e,t){let r=this._gl,i=this._getShader(r),a=this._generateVBO(t.getVertices(),r),n=this._generateNormalBO(t.getNormals(),r),o=this._generateIBO(t.getIndices(),r);r.enable(r.DEPTH_TEST),r.enable(r.CULL_FACE),r.useProgram(i.prog),r.uniformMatrix4fv(i.unif_matrix,!1,e),r.bindBuffer(r.ARRAY_BUFFER,a),r.vertexAttribPointer(i.attr_position,3,r.FLOAT,!1,12,0),r.enableVertexAttribArray(i.attr_position),r.bindBuffer(r.ARRAY_BUFFER,n),r.vertexAttribPointer(i.attr_normal,3,r.FLOAT,!1,12,0),r.enableVertexAttribArray(i.attr_normal),r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,o),r.drawElements(r.TRIANGLES,t.getIndices().length,r.UNSIGNED_SHORT,0),r.disableVertexAttribArray(i.attr_position),r.disableVertexAttribArray(i.attr_normal),r.bindBuffer(r.ARRAY_BUFFER,null),r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,null)}_getShader(e){if(this._shader)return this._shader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,Me),i=u(e,e.FRAGMENT_SHADER,Fe);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"matrix");if(!a)throw new Error("Unable to get uniform location mattrix");return this._shader={prog:t,unif_matrix:a,attr_position:e.getAttribLocation(t,"position"),attr_normal:e.getAttribLocation(t,"normal")},this._shader}}let Me="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 matrix;\nattribute vec4 position;\nattribute vec3 normal;\nvarying highp vec3 vnormal;\n\nvoid main()\n{\n gl_Position = matrix * position;\n vnormal = normal;\n}",Fe="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying vec4 skinTexVarying;\nvarying highp vec3 vnormal;\nuniform lowp sampler2D skinSampler;\n\nvoid main()\n{\n vec3 normal2 = 0.5 * vnormal + 0.5;\n gl_FragColor = vec4(normal2.x , normal2.y, normal2.z, 1.0);\n}";class ze{constructor(e){this._gl=e}dispose(){this._vbo&&this._gl.deleteBuffer(this._vbo),this._uvbo&&this._gl.deleteBuffer(this._uvbo),this._ibo&&this._gl.deleteBuffer(this._ibo),this._shader&&this._gl.deleteProgram(this._shader.prog),this._vbo=void 0,this._uvbo=void 0,this._ibo=void 0,this._shader=void 0}_generateIBO(e,t){if(this._ibo&&this._lastIndices===e)return this._ibo;if(this._lastIndices=e,this._ibo||(this._ibo=t.createBuffer()),!this._ibo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this._ibo),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null),this._ibo}_generateVBO(e,t){if(this._vbo||(this._vbo=t.createBuffer()),!this._vbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._vbo),t.bufferData(t.ARRAY_BUFFER,e,t.STREAM_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._vbo}_generateUVBO(e,t){if(this._uvbo||(this._uvbo=t.createBuffer()),!this._uvbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._uvbo),t.bufferData(t.ARRAY_BUFFER,e,t.STREAM_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._uvbo}drawFace(e,t,r,i,a,n){let o=this._gl,s=this._getShader(o),_=this._generateVBO(t,o),c=this._generateUVBO(i,o),l=this._generateIBO(a,o);o.enable(o.DEPTH_TEST),o.enable(o.CULL_FACE),o.useProgram(s.prog),o.uniformMatrix4fv(s.unif_matrix,!1,e),o.uniformMatrix4fv(s.unif_uvmatrix,!1,r),o.activeTexture(o.TEXTURE0),o.bindTexture(o.TEXTURE_2D,n),o.uniform1i(s.unif_sampler,0),o.bindBuffer(o.ARRAY_BUFFER,_),o.vertexAttribPointer(s.attr_position,3,o.FLOAT,!1,12,0),o.enableVertexAttribArray(s.attr_position),o.bindBuffer(o.ARRAY_BUFFER,c),o.vertexAttribPointer(s.attr_uv,3,o.FLOAT,!1,12,0),o.enableVertexAttribArray(s.attr_uv),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,l),o.drawElements(o.TRIANGLES,6912,o.UNSIGNED_SHORT,0),o.disableVertexAttribArray(s.attr_position),o.disableVertexAttribArray(s.attr_uv),o.bindBuffer(o.ARRAY_BUFFER,null),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,null)}_getShader(e){if(this._shader)return this._shader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,Pe),i=u(e,e.FRAGMENT_SHADER,Ce);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"matrix");if(!a)throw new Error("Unable to get uniform location matrix");let n=e.getUniformLocation(t,"uvmatrix");if(!n)throw new Error("Unable to get uniform location matrix");let o=e.getUniformLocation(t,"uSampler");if(!o)throw new Error("Unable to get uniform location sampler");return this._shader={prog:t,unif_matrix:a,unif_sampler:o,unif_uvmatrix:n,attr_position:e.getAttribLocation(t,"position"),attr_uv:e.getAttribLocation(t,"uv"),attr_texturecoord:e.getAttribLocation(t,"aTextureCoord")},this._shader}}let Pe="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 matrix;\nuniform mat4 uvmatrix;\nattribute vec4 position;\nattribute vec3 normal;\nattribute vec3 uv;\n\n// varying highp vec3 vnormal;\n\nvarying highp vec2 vTextureCoord;\nvarying highp float vAlpha;\n\nvoid main()\n{\n gl_Position = matrix * position;\n vec4 ret = uvmatrix * vec4(uv.x, uv.y, uv.z, 1.0);\n ret.x /= ret.w * 2.0;\n ret.y /= ret.w * 2.0;\n ret.x += 0.5;\n ret.y += 0.0;\n vAlpha = 1.0;\n vTextureCoord = ret.xy;\n}",Ce="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying highp vec2 vTextureCoord;\nvarying highp vec3 vnormal;\nvarying highp float vAlpha;\nuniform lowp sampler2D uSampler;\n\nvoid main()\n{\n // vec3 normal2 = 0.5 * vnormal + 0.5;\n vec4 p = texture2D(uSampler, vTextureCoord);\n p.a = vAlpha;\n gl_FragColor = p; // vec4(normal2.x , normal2.y, normal2.z, 1.0);\n}";var Ne;!function(e){e[e.CAMERA_FRAME=0]="CAMERA_FRAME",e[e.ACCELEROMETER=1]="ACCELEROMETER",e[e.ROTATION_RATE=2]="ROTATION_RATE",e[e.ATTITUDE=3]="ATTITUDE",e[e.ATTITUDE_MATRIX=4]="ATTITUDE_MATRIX",e[e.ACCELEROMETER_WO_GRAVITY_INT=5]="ACCELEROMETER_WO_GRAVITY_INT",e[e.ACCELEROMETER_W_GRAVITY_INT=6]="ACCELEROMETER_W_GRAVITY_INT",e[e.ROTATION_RATE_INT=7]="ROTATION_RATE_INT",e[e.ATTITUDE_INT=8]="ATTITUDE_INT"}(Ne||(Ne={}));class Ue{constructor(e){this._insertionByte=0,this._numberPackets=0,this._started=!1,this._hasLoggedUnsuppored=!1,this._data=new ArrayBuffer(this._estimatedSize(e,320,240)),this._dataView=new DataView(this._data),this._dataUint8=new Uint8Array(this._data),this._dataFloat32=new Float32Array(this._data)}_estimatedSize(e,t,r){return Ue.headerSizeBytes+(Ue.psbPacketType+Ue.cameraPacketSizeBytes+t*r)*e}start(){this._started=!0,this._insertionByte=0,this._numberPackets=0,this._growArrayBuffer(Ue.headerSizeBytes);let e=(new TextEncoder).encode("UAR1");this._dataUint8.set(e),this._dataView.setUint32(4,0,!0),this._insertionByte+=8}stop(){this._started=!1;let e=this._data.slice(0,this._insertionByte);this._data=e,this._dataUint8=new Uint8Array(this._data),this._dataFloat32=new Float32Array(this._data),this._dataView=new DataView(this._data)}data(){return this._dataUint8}appendCameraFrame(e){if(!this._started)return;if(!e.data){if(this._hasLoggedUnsuppored)return;return this._hasLoggedUnsuppored=!0,void we("Unable to record frames from this camera source")}if(e.data.byteLength!==e.dataWidth*e.dataHeight)return void we("Unable to record frame to sequence: greyscale array doesn't match dimensions");let t=Ue.psbPacketType+Ue.cameraPacketSizeBytes+e.dataWidth*e.dataHeight;this._growArrayBuffer(t),this._dataView.setUint32(this._insertionByte,Ne.CAMERA_FRAME,!0),this._insertionByte+=Ue.psbPacketType,this._dataView.setUint32(this._insertionByte,e.dataWidth,!0),this._insertionByte+=Ue.psbCameraFrameWidth,this._dataView.setUint32(this._insertionByte,e.dataHeight,!0),this._insertionByte+=Ue.psbCameraFrameHeight,this._dataFloat32.set(e.cameraToDevice,this._insertionByte/4),this._insertionByte+=Ue.psbCameraToDeviceTransform,this._dataFloat32.set(e.cameraModel,this._insertionByte/4),this._insertionByte+=Ue.psbCameraModel,this._dataView.setUint32(this._insertionByte,e.userFacing?1:0,!0),this._insertionByte+=Ue.psbFlags,this._dataUint8.set(new Uint8Array(e.data),this._insertionByte),this._insertionByte+=e.data.byteLength,this._numberPackets++,this._dataView.setUint32(4,this._numberPackets,!0)}appendAccelerometer(e,t,r,i){this._appendTimestampedVec3(Ne.ACCELEROMETER,e,t,r,i)}appendRotationRate(e,t,r,i){this._appendTimestampedVec3(Ne.ROTATION_RATE,e,t,r,i)}appendAttitude(e,t,r,i){this._appendTimestampedVec3(Ne.ATTITUDE,e,t,r,i)}appendAccelerometerWithoutGravityInt(e,t,r,i,a){this._appendSensorWithInterval(Ne.ACCELEROMETER_WO_GRAVITY_INT,e,t,r,i,a)}appendAccelerometerWithGravityInt(e,t,r,i,a){this._appendSensorWithInterval(Ne.ACCELEROMETER_W_GRAVITY_INT,e,t,r,i,a)}appendRotationRateInt(e,t,r,i,a){this._appendSensorWithInterval(Ne.ROTATION_RATE_INT,e,t,r,i,a)}appendAttitudeInt(e,t,r,i,a){this._appendSensorWithInterval(Ne.ATTITUDE_INT,e,t,r,i,a)}_appendSensorWithInterval(e,t,r,i,a,n){if(!this._started)return;let o=Ue.psbPacketType+Ue.sensorWithIntervalPacketSizeBytes;this._growArrayBuffer(o),this._dataView.setUint32(this._insertionByte,e,!0),this._insertionByte+=Ue.psbPacketType,this._dataView.setUint32(this._insertionByte,t,!0),this._insertionByte+=4,this._dataView.setUint32(this._insertionByte,r,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,i,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,a,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,n,!0),this._insertionByte+=4,this._numberPackets++,this._dataView.setUint32(4,this._numberPackets,!0)}_appendTimestampedVec3(e,t,r,i,a){if(!this._started)return;let n=Ue.psbPacketType+Ue.accelerometerPacketSizeBytes;this._growArrayBuffer(n),this._dataView.setUint32(this._insertionByte,e,!0),this._insertionByte+=Ue.psbPacketType,this._dataView.setUint32(this._insertionByte,t,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,r,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,i,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,a,!0),this._insertionByte+=4,this._numberPackets++,this._dataView.setUint32(4,this._numberPackets,!0)}appendAttitudeMatrix(e){if(!this._started)return;let t=Ue.psbPacketType+Ue.attitudeMatrixPacketSizeBytes;this._growArrayBuffer(t),this._dataView.setUint32(this._insertionByte,Ne.ATTITUDE_MATRIX,!0),this._insertionByte+=Ue.psbPacketType,this._dataFloat32.set(e,this._insertionByte/4),this._insertionByte+=Ue.attitudeMatrixPacketSizeBytes,this._numberPackets++,this._dataView.setUint32(4,this._numberPackets,!0)}_growArrayBuffer(e){for(;this._insertionByte+e>this._data.byteLength;){let e=Math.max(2*this._data.byteLength,this._estimatedSize(50,320,240)),t=new ArrayBuffer(e),r=new Uint8Array(t);r.set(this._dataUint8),this._data=t,this._dataUint8=r,this._dataFloat32=new Float32Array(this._data),this._dataView=new DataView(this._data)}}}Ue.headerSizeBytes=8,Ue.psbPacketType=4,Ue.psbCameraFrameWidth=4,Ue.psbCameraFrameHeight=4,Ue.psbFlags=4,Ue.psbCameraToDeviceTransform=64,Ue.psbCameraModel=24,Ue.cameraPacketSizeBytes=Ue.psbCameraFrameWidth+Ue.psbCameraFrameHeight+Ue.psbCameraToDeviceTransform+Ue.psbCameraModel+Ue.psbFlags,Ue.accelerometerPacketSizeBytes=16,Ue.sensorWithIntervalPacketSizeBytes=20,Ue.rotationRatePacketSizeBytes=16,Ue.attitudePacketSizeBytes=16,Ue.attitudeMatrixPacketSizeBytes=64;class De{constructor(e){this._data=e,this.dataByPacket=new Map,this.dataByCameraFrame=new Map,this.numberPackets=0,this.numberCameraFrames=0,this.numberAccelerometerPackets=0,this.numberRotationRatePackets=0,this.numberAttitudePackets=0,this.numberAttitudeMatrixPackets=0;let t=new TextDecoder,r="";try{r=t.decode(this._data.slice(0,4))}catch(e){throw new Error("Unable to decode header - perhaps this isn't a sequence file?")}if("UAR1"!==r)throw new Error(`Invalid - perhaps this isn't a sequence file: ${r}`);let i=0,a=new DataView(this._data);this.numberPackets=a.getUint32(4,!0),i+=Ue.headerSizeBytes;for(let e=0;e<this.numberPackets;e++){let t=a.getUint32(i,!0);switch(i+=Ue.psbPacketType,t){case Ne.CAMERA_FRAME:{let t=a.getUint32(i,!0);i+=Ue.psbCameraFrameWidth;let r=a.getUint32(i,!0);i+=Ue.psbCameraFrameHeight;let n=new Float32Array(this._data,i,Ue.psbCameraToDeviceTransform/4);i+=Ue.psbCameraToDeviceTransform;let o=new Float32Array(this._data,i,Ue.psbCameraModel/4);i+=Ue.psbCameraModel;let s=a.getUint32(i,!0);i+=Ue.psbFlags;let _=1===s,c=new Uint8Array(this._data,i,t*r);i+=t*r;let l={type:Ne.CAMERA_FRAME,width:t,height:r,cameraToDevice:n,cameraModel:o,userFacing:_,greyscale:c};this.dataByPacket.set(e,l),this.dataByCameraFrame.set(this.numberCameraFrames,l),this.numberCameraFrames++;break}case Ne.ACCELEROMETER:{let t=a.getUint32(i,!0);i+=4;let r=a.getFloat32(i,!0);i+=4;let n=a.getFloat32(i,!0);i+=4;let o=a.getFloat32(i,!0);i+=4,this.dataByPacket.set(e,{type:Ne.ACCELEROMETER,t,x:r,y:n,z:o}),this.numberAccelerometerPackets++;break}case Ne.ROTATION_RATE:{let t=a.getUint32(i,!0);i+=4;let r=a.getFloat32(i,!0);i+=4;let n=a.getFloat32(i,!0);i+=4;let o=a.getFloat32(i,!0);i+=4,this.dataByPacket.set(e,{type:Ne.ROTATION_RATE,t,x:r,y:n,z:o}),this.numberRotationRatePackets++;break}case Ne.ATTITUDE:{let t=a.getUint32(i,!0);i+=4;let r=a.getFloat32(i,!0);i+=4;let n=a.getFloat32(i,!0);i+=4;let o=a.getFloat32(i,!0);i+=4,this.dataByPacket.set(e,{type:Ne.ATTITUDE,t,x:r,y:n,z:o}),this.numberAttitudePackets++;break}case Ne.ATTITUDE_MATRIX:{let t=new Float32Array(this._data,i,Ue.attitudeMatrixPacketSizeBytes/4);i+=Ue.attitudeMatrixPacketSizeBytes,this.dataByPacket.set(e,{type:Ne.ATTITUDE_MATRIX,attitude:t}),this.numberAttitudeMatrixPackets++;break}case Ne.ACCELEROMETER_WO_GRAVITY_INT:case Ne.ACCELEROMETER_W_GRAVITY_INT:case Ne.ATTITUDE_INT:case Ne.ROTATION_RATE_INT:{let r=a.getUint32(i,!0);i+=4;let n=a.getUint32(i,!0);i+=4;let o=a.getFloat32(i,!0);i+=4;let s=a.getFloat32(i,!0);i+=4;let _=a.getFloat32(i,!0);i+=4,this.dataByPacket.set(e,{type:t,t:r,int:n,x:o,y:s,z:_}),this.numberAccelerometerPackets++;break}}}}}class Be{}const Oe=new Map;class Ve{constructor(e){this._gl=e,this._viewports=[],this._underlyingViewport=this._gl.viewport,this._viewports.push(this._gl.getParameter(this._gl.VIEWPORT)),this._gl.viewport=(e,t,r,i)=>{this._viewports[this._viewports.length-1]=[e,t,r,i],this._underlyingViewport.call(this._gl,e,t,r,i)}}static get(e){let t=Oe.get(e);return t||(t=new Ve(e),Oe.set(e,t)),t}push(){this._viewports.push(this._viewports[this._viewports.length-1])}pop(){const e=this._viewports.pop(),t=this._viewports[this._viewports.length-1];e&&e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]||this._underlyingViewport.call(this._gl,t[0],t[1],t[2],t[3])}}class je{constructor(e){this._gl=e,this._isPaused=!0,this._hadFrames=!1,this._isUserFacing=!1,this._cameraToScreenRotation=0,this._isUploadFrame=!0,this._computedTransformRotation=-1,this._computedFrontCameraRotation=!1,this._cameraUvTransform=R(),this._framebufferWidth=0,this._framebufferHeight=0,this._framebufferId=null,this._renderTexture=null,this._isWebGL2=!1,this._isWebGL2=e.getParameter(e.VERSION).indexOf("WebGL 2")>=0,this._isWebGL2||(this._instancedArraysExtension=this._gl.getExtension("ANGLE_instanced_arrays"))}resetGLContext(){this._framebufferId=null,this._renderTexture=null,this._vertexBuffer=void 0,this._indexBuffer=void 0,this._greyscaleShader=void 0}destroy(){this.resetGLContext()}uploadFrame(e,t,r,i,a){let n=this._gl;const o=Ve.get(n);o.push();const s=n.isEnabled(n.SCISSOR_TEST),_=n.isEnabled(n.DEPTH_TEST),c=n.isEnabled(n.BLEND),l=n.isEnabled(n.CULL_FACE),d=n.isEnabled(n.STENCIL_TEST),h=n.getParameter(n.ACTIVE_TEXTURE),u=n.getParameter(n.UNPACK_FLIP_Y_WEBGL),f=n.getParameter(n.CURRENT_PROGRAM);n.activeTexture(n.TEXTURE0);const p=n.getParameter(n.TEXTURE_BINDING_2D),m=n.getParameter(n.FRAMEBUFFER_BINDING),b=n.getParameter(n.ARRAY_BUFFER_BINDING),g=n.getParameter(n.ELEMENT_ARRAY_BUFFER_BINDING);n.disable(n.SCISSOR_TEST),n.disable(n.DEPTH_TEST),n.disable(n.BLEND),n.disable(n.CULL_FACE),n.disable(n.STENCIL_TEST),n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!1),n.bindTexture(n.TEXTURE_2D,e);const w=n.RGBA,v=n.RGBA,E=n.UNSIGNED_BYTE;n.texImage2D(n.TEXTURE_2D,0,w,v,E,t);let y=0,A=0;"undefined"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement?(y=t.videoWidth,A=t.videoHeight):(y=t.width,A=t.height),A>y&&(A=[y,y=A][0]),this._updateTransforms(r,i);const[T,R]=U.getDataSize(a);let x=this._getFramebuffer(n,T/4,R),k=this._getVertexBuffer(n),I=this._getIndexBuffer(n),L=this._getGreyscaleShader(n);const S=n.getVertexAttrib(L.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_SIZE),M=n.getVertexAttrib(L.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_TYPE),F=n.getVertexAttrib(L.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_NORMALIZED),z=n.getVertexAttrib(L.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_STRIDE),P=n.getVertexAttribOffset(L.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_POINTER),C=n.getVertexAttrib(L.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_ENABLED),N=n.getVertexAttrib(L.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING),D=n.getVertexAttrib(L.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_SIZE),B=n.getVertexAttrib(L.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_TYPE),O=n.getVertexAttrib(L.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_NORMALIZED),V=n.getVertexAttrib(L.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_STRIDE),j=n.getVertexAttribOffset(L.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_POINTER),G=n.getVertexAttrib(L.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING),W=n.getVertexAttrib(L.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_ENABLED);let H=0,Y=0;this._isWebGL2?(H=n.getVertexAttrib(L.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_DIVISOR),Y=n.getVertexAttrib(L.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_DIVISOR),n.vertexAttribDivisor(L.aVertexPositionLoc,0),n.vertexAttribDivisor(L.aTextureCoordLoc,0)):this._instancedArraysExtension&&(H=n.getVertexAttrib(L.aVertexPositionLoc,this._instancedArraysExtension.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE),Y=n.getVertexAttrib(L.aTextureCoordLoc,this._instancedArraysExtension.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE),this._instancedArraysExtension.vertexAttribDivisorANGLE(L.aVertexPositionLoc,0),this._instancedArraysExtension.vertexAttribDivisorANGLE(L.aTextureCoordLoc,0)),n.bindFramebuffer(n.FRAMEBUFFER,x),n.viewport(0,0,this._framebufferWidth,this._framebufferHeight),n.clear(n.COLOR_BUFFER_BIT),n.bindBuffer(n.ARRAY_BUFFER,k),n.vertexAttribPointer(L.aVertexPositionLoc,2,n.FLOAT,!1,16,0),n.enableVertexAttribArray(L.aVertexPositionLoc),n.vertexAttribPointer(L.aTextureCoordLoc,2,n.FLOAT,!1,16,8),n.enableVertexAttribArray(L.aTextureCoordLoc),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,I),n.useProgram(L.program),n.uniform1f(L.uTexWidthLoc,T),n.uniformMatrix4fv(L.uUvTransformLoc,!1,this._cameraUvTransform),n.activeTexture(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,e),n.uniform1i(L.uSamplerLoc,0),n.drawElements(n.TRIANGLES,6,n.UNSIGNED_SHORT,0),n.bindBuffer(n.ARRAY_BUFFER,N),n.vertexAttribPointer(L.aVertexPositionLoc,S,M,F,z,P),n.bindBuffer(n.ARRAY_BUFFER,G),n.vertexAttribPointer(L.aTextureCoordLoc,D,B,O,V,j),n.bindBuffer(n.ARRAY_BUFFER,b),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,g),C||n.disableVertexAttribArray(L.aVertexPositionLoc),W||n.disableVertexAttribArray(L.aTextureCoordLoc),this._isWebGL2?(n.vertexAttribDivisor(L.aVertexPositionLoc,H),n.vertexAttribDivisor(L.aTextureCoordLoc,Y)):this._instancedArraysExtension&&(this._instancedArraysExtension.vertexAttribDivisorANGLE(L.aVertexPositionLoc,H),this._instancedArraysExtension.vertexAttribDivisorANGLE(L.aTextureCoordLoc,Y)),n.bindFramebuffer(n.FRAMEBUFFER,m),n.useProgram(f),n.bindTexture(n.TEXTURE_2D,p),n.activeTexture(h),n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,u),o.pop(),c&&n.enable(n.BLEND),l&&n.enable(n.CULL_FACE),_&&n.enable(n.DEPTH_TEST),s&&n.enable(n.SCISSOR_TEST),d&&n.enable(n.STENCIL_TEST)}readFrame(e,t,r){let i=this._gl,a=new Uint8Array(t);const n=i.getParameter(i.FRAMEBUFFER_BINDING),[o,s]=U.getDataSize(r);let _=this._getFramebuffer(i,o/4,s);return i.bindFramebuffer(i.FRAMEBUFFER,_),i.readPixels(0,0,this._framebufferWidth,this._framebufferHeight,i.RGBA,i.UNSIGNED_BYTE,a),i.bindFramebuffer(i.FRAMEBUFFER,n),{uvTransform:this._cameraUvTransform,data:t,texture:e,dataWidth:o,dataHeight:s,userFacing:this._computedFrontCameraRotation}}_updateTransforms(e,t){e==this._computedTransformRotation&&t==this._computedFrontCameraRotation||(this._computedTransformRotation=e,this._computedFrontCameraRotation=t,this._cameraUvTransform=this._getCameraUvTransform())}_getCameraUvTransform(){switch(this._computedTransformRotation){case 270:return new Float32Array([0,1,0,0,-1,0,0,0,0,0,1,0,1,0,0,1]);case 180:return new Float32Array([-1,0,0,0,0,-1,0,0,0,0,1,0,1,1,0,1]);case 90:return new Float32Array([0,-1,0,0,1,0,0,0,0,0,1,0,0,1,0,1])}return new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}_getFramebuffer(e,t,r){if(this._framebufferWidth===t&&this._framebufferHeight===r&&this._framebufferId)return this._framebufferId;if(this._framebufferId&&(e.deleteFramebuffer(this._framebufferId),this._framebufferId=null),this._renderTexture&&(e.deleteTexture(this._renderTexture),this._renderTexture=null),this._framebufferId=e.createFramebuffer(),!this._framebufferId)throw new Error("Unable to create framebuffer");if(e.bindFramebuffer(e.FRAMEBUFFER,this._framebufferId),this._renderTexture=e.createTexture(),!this._renderTexture)throw new Error("Unable to create render texture");e.activeTexture(e.TEXTURE0);const i=e.getParameter(e.TEXTURE_BINDING_2D);e.bindTexture(e.TEXTURE_2D,this._renderTexture),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,r,0,e.RGBA,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameterf(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this._renderTexture,0);let a=e.checkFramebufferStatus(e.FRAMEBUFFER);if(a!==e.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer not complete: "+a.toString());return this._framebufferWidth=t,this._framebufferHeight=r,e.bindTexture(e.TEXTURE_2D,i),e.bindFramebuffer(e.FRAMEBUFFER,null),this._framebufferId}_getVertexBuffer(e){if(this._vertexBuffer)return this._vertexBuffer;if(this._vertexBuffer=e.createBuffer(),!this._vertexBuffer)throw new Error("Unable to create vertex buffer");e.bindBuffer(e.ARRAY_BUFFER,this._vertexBuffer);let t=new Float32Array([-1,-1,0,0,-1,1,0,1,1,1,1,1,1,-1,1,0]);return e.bufferData(e.ARRAY_BUFFER,t,e.STATIC_DRAW),this._vertexBuffer}_getIndexBuffer(e){if(this._indexBuffer)return this._indexBuffer;if(this._indexBuffer=e.createBuffer(),!this._indexBuffer)throw new Error("Unable to create index buffer");e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this._indexBuffer);let t=new Uint16Array([0,1,2,0,2,3]);return e.bufferData(e.ELEMENT_ARRAY_BUFFER,t,e.STATIC_DRAW),this._indexBuffer}_getGreyscaleShader(e){if(this._greyscaleShader)return this._greyscaleShader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,Ge),i=u(e,e.FRAGMENT_SHADER,We);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"uTexWidth");if(!a)throw new Error("Unable to get uniform location uTexWidth");let n=e.getUniformLocation(t,"uUvTransform");if(!n)throw new Error("Unable to get uniform location uUvTransform");let o=e.getUniformLocation(t,"uSampler");if(!o)throw new Error("Unable to get uniform location uSampler");return this._greyscaleShader={program:t,aVertexPositionLoc:e.getAttribLocation(t,"aVertexPosition"),aTextureCoordLoc:e.getAttribLocation(t,"aTextureCoord"),uTexWidthLoc:a,uUvTransformLoc:n,uSamplerLoc:o},this._greyscaleShader}}let Ge="\n attribute vec4 aVertexPosition;\n attribute vec2 aTextureCoord;\n\n varying highp vec2 vTextureCoord1;\n varying highp vec2 vTextureCoord2;\n varying highp vec2 vTextureCoord3;\n varying highp vec2 vTextureCoord4;\n\n uniform float uTexWidth;\n\tuniform mat4 uUvTransform;\n\n void main(void) {\n highp vec2 offset1 = vec2(1.5 / uTexWidth, 0);\n highp vec2 offset2 = vec2(0.5 / uTexWidth, 0);\n\n gl_Position = aVertexPosition;\n vTextureCoord1 = (uUvTransform * vec4(aTextureCoord - offset1, 0, 1)).xy;\n vTextureCoord2 = (uUvTransform * vec4(aTextureCoord - offset2, 0, 1)).xy;\n vTextureCoord3 = (uUvTransform * vec4(aTextureCoord + offset2, 0, 1)).xy;\n vTextureCoord4 = (uUvTransform * vec4(aTextureCoord + offset1, 0, 1)).xy;\n }\n",We="\n varying highp vec2 vTextureCoord1;\n varying highp vec2 vTextureCoord2;\n varying highp vec2 vTextureCoord3;\n varying highp vec2 vTextureCoord4;\n\n uniform sampler2D uSampler;\n\n const lowp vec3 colorWeights = vec3(77.0 / 256.0, 150.0 / 256.0, 29.0 / 256.0);\n\n void main(void) {\n lowp vec4 outpx;\n\n outpx.r = dot(colorWeights, texture2D(uSampler, vTextureCoord1).xyz);\n outpx.g = dot(colorWeights, texture2D(uSampler, vTextureCoord2).xyz);\n outpx.b = dot(colorWeights, texture2D(uSampler, vTextureCoord3).xyz);\n outpx.a = dot(colorWeights, texture2D(uSampler, vTextureCoord4).xyz);\n\n gl_FragColor = outpx;\n }\n",He=1,Ye=new Map;class Xe extends Be{constructor(e,t){super(),this._video=e,this._pipeline=t,this._isPaused=!0,this._hadFrames=!1,this._isUserFacing=!1,this._cameraToScreenRotation=0,this._isUploadFrame=!0,this._cameraToDeviceTransform=R(),this._cameraToDeviceTransformUserFacing=R(),this._cameraModel=new Float32Array([300,300,160,120,0,0]),this._profile=c.DEFAULT,L(this._cameraToDeviceTransformUserFacing,[-1,1,-1]);let r=this._video;this._video instanceof HTMLVideoElement?r.addEventListener("loadedmetadata",(()=>{this._hadFrames=!0})):this._hadFrames=!0,this._resetGLContext=this._resetGLContext.bind(this);let i=ht.get(this._pipeline);i&&i.onGLContextReset.bind(this._resetGLContext)}static createVideoElementSource(e,t){let r=He++;return Ye.set(r,new Xe(t,e)),ge("html_element_source_t initialized"),r}static getVideoElementSource(e){return Ye.get(e)}_resetGLContext(){var e,t;this._currentVideoTexture=void 0,null===(t=null===(e=this._imageProcessor)||void 0===e?void 0:e.resetGLContext)||void 0===t||t.call(e)}destroy(){let e=ht.get(this._pipeline);e&&e.onGLContextReset.unbind(this._resetGLContext),this.pause(),this._resetGLContext()}pause(){this._isPaused=!0;let e=ht.get(this._pipeline);e&&e.currentCameraSource===this&&(e.currentCameraSource=void 0)}start(){var e;this._isPaused&&(this._isUploadFrame=!0,this._video instanceof HTMLVideoElement&&(this._hadFrames=!1)),this._isPaused=!1;let t=ht.get(this._pipeline);t&&t.currentCameraSource!==this&&(null===(e=t.currentCameraSource)||void 0===e||e.pause(),t.currentCameraSource=this)}getFrame(e){let t=ht.get(this._pipeline);if(!t)return;let r=t.glContext;if(r&&!this._isPaused&&this._hadFrames)try{let i=this._processFrame(r,this._cameraToScreenRotation,e);if(i){let e=t.registerToken(i);t.sendDataToWorker(i.data||new ArrayBuffer(0),e,i.dataWidth,i.dataHeight,i.userFacing,i.cameraToDevice,i.cameraModel),i.data=void 0}}catch(e){console.log("Unable to process frame")}}_processFrame(e,t,r){let i=ht.get(this._pipeline);if(!i)return;if(this._imageProcessor||(this._imageProcessor=new je(e)),this._isUploadFrame){if(this._currentVideoTexture||(this._currentVideoTexture=i.getVideoTexture()),!this._currentVideoTexture)return;return this._imageProcessor.uploadFrame(this._currentVideoTexture,this._video,t,this._isUserFacing,this._profile),void(this._isUploadFrame=!this._isUploadFrame)}if(r||!this._currentVideoTexture)return;this._isUploadFrame=!this._isUploadFrame;const[a,n]=U.getDataSize(this._profile);let o=a*n,s=i.cameraPixelArrays.pop();for(;s&&s.byteLength!==o;)s=i.cameraPixelArrays.pop();s||(s=new ArrayBuffer(o));let _=this._currentVideoTexture;this._currentVideoTexture=void 0;let c=300*a/320;return this._cameraModel[0]=c,this._cameraModel[1]=c,this._cameraModel[2]=.5*a,this._cameraModel[3]=.5*n,Object.assign(Object.assign({},this._imageProcessor.readFrame(_,s,this._profile)),{cameraModel:this._cameraModel,cameraSource:this,cameraToDevice:this._isUserFacing?this._cameraToDeviceTransformUserFacing:this._cameraToDeviceTransform})}uploadGL(){}setProfile(e){this._profile=e}}var Ze=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};let qe=document.createElement("video");qe.setAttribute("playsinline",""),qe.setAttribute("webkit-playsinline",""),U.videoElementInDOM&&(qe.style.width="0px",qe.style.height="0px",document.body.appendChild(qe));class Ke extends Xe{constructor(e,t,r){super(qe,t),this._impl=e,this._deviceId=r,this._currentStream=null,this._activeDeviceId=null,this._hasStartedOrientation=!1,this._lastTimestamp=-1,this._deviceMotionListener=e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();const i=e.interval*U.intervalMultiplier;U.trustSensorIntervals&&(-1===this._lastTimestamp?this._lastTimestamp=r:(this._lastTimestamp+=i,r=this._lastTimestamp)),null!==e.acceleration&&null!==e.acceleration.x&&null!==e.acceleration.y&&null!==e.acceleration.z&&t.motionAccelerometerWithoutGravitySubmitInt(r,i,e.acceleration.x*U.deviceMotionMutliplier,e.acceleration.y*U.deviceMotionMutliplier,e.acceleration.z*U.deviceMotionMutliplier),null!==e.accelerationIncludingGravity&&null!==e.accelerationIncludingGravity.x&&null!==e.accelerationIncludingGravity.y&&null!==e.accelerationIncludingGravity.z&&(t.motionAccelerometerSubmit(r,e.accelerationIncludingGravity.x*U.deviceMotionMutliplier,e.accelerationIncludingGravity.y*U.deviceMotionMutliplier,e.accelerationIncludingGravity.z*U.deviceMotionMutliplier),t.motionAccelerometerWithGravitySubmitInt(r,i,e.accelerationIncludingGravity.x*U.deviceMotionMutliplier,e.accelerationIncludingGravity.y*U.deviceMotionMutliplier,e.accelerationIncludingGravity.z*U.deviceMotionMutliplier)),null!==e.rotationRate&&null!==e.rotationRate.alpha&&null!==e.rotationRate.beta&&null!==e.rotationRate.gamma&&this._hasStartedOrientation?(t.motionRotationRateSubmit(r,e.rotationRate.alpha*Math.PI/-180,e.rotationRate.beta*Math.PI/-180,e.rotationRate.gamma*Math.PI/-180),t.motionRotationRateSubmitInt(r,i,e.rotationRate.alpha,e.rotationRate.beta,e.rotationRate.gamma)):this._hasStartedOrientation||this._startDeviceOrientation()}}destroy(){nt(this._impl),super.destroy()}_stop(){this._currentStream&&(this._currentStream.getTracks().forEach((e=>e.stop())),this._currentStream=null)}pause(){super.pause(),this._stopDeviceMotion(),this._syncCamera()}start(){super.start(),this._startDeviceMotion(),this._syncCamera()}_getConstraints(){return Ze(this,void 0,void 0,(function*(){let e,t;if(this._deviceId!==Ke.DEFAULT_DEVICE_ID&&this._deviceId!==Ke.USER_DEFAULT_DEVICE_ID)e=this._deviceId;else if(t=this._deviceId===Ke.DEFAULT_DEVICE_ID?"environment":"user",U.ios164CameraSelection){if(!this._explicitEnvironmentCameraId||!this._explicitUserCameraId){(yield navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:t}})).getTracks().forEach((e=>e.stop()));let e=yield navigator.mediaDevices.enumerateDevices();e=e.filter((e=>"videoinput"===e.kind)),e.length>=2&&(this._explicitUserCameraId=e[0].deviceId,this._explicitEnvironmentCameraId=e[1].deviceId)}e="environment"===t?this._explicitEnvironmentCameraId:this._explicitUserCameraId}let r={audio:!1,video:{facingMode:t,width:U.videoWidth,height:U.videoHeight,frameRate:U.requestHighFrameRate?60:void 0,deviceId:e}};if(e||U.relyOnConstraintsForCameraSelection)return r;if(!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return r;let i=yield navigator.mediaDevices.enumerateDevices(),a=!1;return i=i.filter((e=>{if("videoinput"!==e.kind)return!1;if(e.getCapabilities){a=!0;let r=e.getCapabilities();if(r&&r.facingMode&&r.facingMode.indexOf("user"===t?"user":"environment")<0)return!1}return!0})),a&&0!==i.length?("object"==typeof r.video&&(ge("choosing device ID",i[i.length-1].deviceId),r.video.deviceId=i[i.length-1].deviceId),r):r}))}getFrame(e){this._cameraToScreenRotation=G(!1),super.getFrame(e)}_getUserMedia(){return Ze(this,void 0,void 0,(function*(){let e=yield this._getConstraints();return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?yield navigator.mediaDevices.getUserMedia(e):yield new Promise(((t,r)=>{navigator.getUserMedia(e,t,r)}))}))}_syncCamera(){return Ze(this,void 0,void 0,(function*(){if(this._currentStream&&this._isPaused)this._stop();else if(this._currentStream&&this._activeDeviceId!==this._deviceId&&this._stop(),!this._isPaused){if(this._activeDeviceId=this._deviceId,this._currentStream=yield this._getUserMedia(),this._isPaused)return void(yield this._syncCamera());if(this._isUserFacing=!1,this._currentStream){let e=this._currentStream.getVideoTracks();e.length>0&&(this._isUserFacing="user"===e[0].getSettings().facingMode)}if(!(this._video instanceof HTMLVideoElement))return;this._video.src="",this._video.loop=!1,this._video.muted=!0,this._video.srcObject=this._currentStream,this._video.play()}}))}_startDeviceOrientation(){this._hasStartedOrientation||(this._hasStartedOrientation=!0,this._deviceOrientationListener=e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();null!==e.alpha&&null!==e.beta&&null!==e.gamma&&t.motionAttitudeSubmitInt(r,0,e.alpha,e.beta,e.gamma)},window.addEventListener("deviceorientation",this._deviceOrientationListener))}_startDeviceMotion(){window.addEventListener("devicemotion",this._deviceMotionListener,!1),this._startDeviceOrientation()}_stopDeviceMotion(){window.removeEventListener("devicemotion",this._deviceMotionListener),this._deviceOrientationListener&&window.removeEventListener("deviceorientation",this._deviceOrientationListener)}}Ke.USER_DEFAULT_DEVICE_ID="Simulated User Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b",Ke.DEFAULT_DEVICE_ID="Simulated Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b";var $e=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};class Qe extends Be{constructor(e,t,r){super(),this._impl=e,this._pipeline=t,this._deviceId=r,this._currentStream=null,this._activeDeviceId=null,this._isPaused=!0,this._isUserFacing=!1,this._hadFrames=!1,this._canvas=new OffscreenCanvas(640,480),this._context=this._canvas.getContext("2d"),this._lastFrameTime=-1,this._video=document.createElement("video"),this._cameraToDeviceTransform=R(),this._cameraToDeviceTransformUserFacing=R(),this._cameraModel=new Float32Array([300,300,160,120,0,0]),this._profile=c.DEFAULT,this._hasStartedOrientation=!1,this._lastTimestamp=-1,this._deviceMotionListener=e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now(),i=e.interval;this._lastTimestamp>-1&&!U.trustSensorIntervals&&(i=Math.max(r-this._lastTimestamp,i)),this._lastTimestamp=r,i*=U.intervalMultiplier,null!==e.acceleration&&null!==e.acceleration.x&&null!==e.acceleration.y&&null!==e.acceleration.z&&t.motionAccelerometerWithoutGravitySubmitInt(r,i,e.acceleration.x*U.deviceMotionMutliplier,e.acceleration.y*U.deviceMotionMutliplier,e.acceleration.z*U.deviceMotionMutliplier),null!==e.accelerationIncludingGravity&&null!==e.accelerationIncludingGravity.x&&null!==e.accelerationIncludingGravity.y&&null!==e.accelerationIncludingGravity.z&&(t.motionAccelerometerSubmit(r,e.accelerationIncludingGravity.x*U.deviceMotionMutliplier,e.accelerationIncludingGravity.y*U.deviceMotionMutliplier,e.accelerationIncludingGravity.z*U.deviceMotionMutliplier),t.motionAccelerometerWithGravitySubmitInt(r,i,e.accelerationIncludingGravity.x*U.deviceMotionMutliplier,e.accelerationIncludingGravity.y*U.deviceMotionMutliplier,e.accelerationIncludingGravity.z*U.deviceMotionMutliplier)),null!==e.rotationRate&&null!==e.rotationRate.alpha&&null!==e.rotationRate.beta&&null!==e.rotationRate.gamma&&this._hasStartedOrientation?(t.motionRotationRateSubmit(r,e.rotationRate.alpha*Math.PI/-180,e.rotationRate.beta*Math.PI/-180,e.rotationRate.gamma*Math.PI/-180),t.motionRotationRateSubmitInt(r,i,e.rotationRate.alpha,e.rotationRate.beta,e.rotationRate.gamma)):this._hasStartedOrientation||this._startDeviceOrientation()},ge("Using ImageBitmap camera source"),L(this._cameraToDeviceTransformUserFacing,[-1,1,-1]),this._video.muted=!0,this._video.setAttribute("playsinline",""),this._video.setAttribute("webkit-playsinline",""),U.videoElementInDOM&&(this._video.style.width="0px",this._video.style.height="0px",document.body.appendChild(this._video)),this._video.addEventListener("loadedmetadata",(()=>{this._hadFrames=!0}))}destroy(){this.pause(),nt(this._impl)}setProfile(e){this._profile=e}_stop(){this._currentStream&&(this._currentStream.getTracks().forEach((e=>e.stop())),this._currentStream=null)}pause(){this._isPaused=!0;let e=ht.get(this._pipeline);e&&e.currentCameraSource===this&&(e.currentCameraSource=void 0),this._stopDeviceMotion(),this._syncCamera()}start(){var e;let t=ht.get(this._pipeline);t&&t.currentCameraSource!==this&&(null===(e=t.currentCameraSource)||void 0===e||e.pause(),t.currentCameraSource=this),this._isPaused=!1,this._startDeviceMotion(),this._syncCamera()}_getConstraints(){return $e(this,void 0,void 0,(function*(){let e,t;this._deviceId!==Qe.DEFAULT_DEVICE_ID&&this._deviceId!==Qe.USER_DEFAULT_DEVICE_ID?e=this._deviceId:t=this._deviceId===Qe.DEFAULT_DEVICE_ID?"environment":"user";let r={audio:!1,video:{facingMode:t,width:U.videoWidth,height:U.videoHeight,frameRate:U.requestHighFrameRate?60:void 0,deviceId:e}};if(e)return r;if(!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return r;let i=yield navigator.mediaDevices.enumerateDevices(),a=!1;return i=i.filter((e=>{if("videoinput"!==e.kind)return!1;if(e.getCapabilities){a=!0;let r=e.getCapabilities();if(r&&r.facingMode&&r.facingMode.indexOf("user"===t?"user":"environment")<0)return!1}return!0})),a&&0!==i.length?("object"==typeof r.video&&(ge("choosing device ID",i[i.length-1].deviceId),r.video.deviceId=i[i.length-1].deviceId),r):r}))}getFrame(e){var t,r;if(!this._context)return;if(!this._hadFrames)return;if(e)return;let i=performance.now();if(i<this._lastFrameTime+25)return;this._lastFrameTime=i,this._canvas.width!==this._video.videoWidth&&(this._canvas.width=this._video.videoWidth),this._canvas.height!==this._video.videoHeight&&(this._canvas.height=this._video.videoHeight),this._context.drawImage(this._video,0,0);const a=this._canvas.transferToImageBitmap();let n=G(!1),o=ht.get(this._pipeline);if(!o)return;const[s,_]=U.getDataSize(this._profile);let c=300*s/320;this._cameraModel[0]=c,this._cameraModel[1]=c,this._cameraModel[2]=.5*s,this._cameraModel[3]=.5*_;let l=o.registerToken({dataWidth:this._canvas.width,dataHeight:this._canvas.height,texture:void 0,userFacing:this._isUserFacing,cameraSource:this,cameraModel:this._cameraModel.slice(),cameraToDevice:this._isUserFacing?this._cameraToDeviceTransformUserFacing:this._cameraToDeviceTransform});null===(r=null===(t=ht.get(this._pipeline))||void 0===t?void 0:t.sendImageBitmapToWorker)||void 0===r||r.call(t,a,n,this._isUserFacing,l,this._cameraModel,this._isUserFacing?this._cameraToDeviceTransformUserFacing:this._cameraToDeviceTransform,this._profile)}_getUserMedia(){return $e(this,void 0,void 0,(function*(){let e=yield this._getConstraints();return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?yield navigator.mediaDevices.getUserMedia(e):yield new Promise(((t,r)=>{navigator.getUserMedia(e,t,r)}))}))}_syncCamera(){return $e(this,void 0,void 0,(function*(){if(this._currentStream&&this._isPaused)this._stop();else if(this._currentStream&&this._activeDeviceId!==this._deviceId&&this._stop(),!this._isPaused){if(this._activeDeviceId=this._deviceId,this._currentStream=yield this._getUserMedia(),this._isPaused)return void(yield this._syncCamera());if(this._isUserFacing=!1,this._currentStream){let e=this._currentStream.getVideoTracks();e.length>0&&(this._isUserFacing="user"===e[0].getSettings().facingMode)}this._video.src="",this._video.loop=!1,this._video.muted=!0,this._video.srcObject=this._currentStream,this._video.play()}}))}_startDeviceOrientation(){this._hasStartedOrientation||(this._hasStartedOrientation=!0,window.addEventListener("deviceorientation",(e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();null!==e.alpha&&null!==e.beta&&null!==e.gamma&&t.motionAttitudeSubmitInt(r,0,e.alpha,e.beta,e.gamma)})))}_startDeviceMotion(){window.addEventListener("devicemotion",this._deviceMotionListener,!1)}_stopDeviceMotion(){window.removeEventListener("devicemotion",this._deviceMotionListener)}uploadGL(e){const t=ht.get(this._pipeline),r=null==t?void 0:t.glContext;if(!e||e.texture||!e.frame||!t||!r)return;let i=t.getVideoTexture();i&&(r.bindTexture(r.TEXTURE_2D,i),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,e.frame),r.bindTexture(r.TEXTURE_2D,null),e.texture=i,e.frame.close(),delete e.frame)}}Qe.USER_DEFAULT_DEVICE_ID="Simulated User Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b",Qe.DEFAULT_DEVICE_ID="Simulated Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b";var Je=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};class et extends Be{constructor(e,t,r){super(),this._impl=e,this._pipeline=t,this._deviceId=r,this._currentStream=null,this._activeDeviceId=null,this._isPaused=!0,this._isUserFacing=!1,this._cameraToScreenRotation=0,this._hasStartedOrientation=!1,this._lastTimestamp=-1,this._deviceMotionListener=e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();const i=e.interval*U.intervalMultiplier;U.trustSensorIntervals&&(-1===this._lastTimestamp?this._lastTimestamp=r:(this._lastTimestamp+=i,r=this._lastTimestamp)),null!==e.acceleration&&null!==e.acceleration.x&&null!==e.acceleration.y&&null!==e.acceleration.z&&t.motionAccelerometerWithoutGravitySubmitInt(r,i,e.acceleration.x*U.deviceMotionMutliplier,e.acceleration.y*U.deviceMotionMutliplier,e.acceleration.z*U.deviceMotionMutliplier),null!==e.accelerationIncludingGravity&&null!==e.accelerationIncludingGravity.x&&null!==e.accelerationIncludingGravity.y&&null!==e.accelerationIncludingGravity.z&&(t.motionAccelerometerSubmit(r,e.accelerationIncludingGravity.x*U.deviceMotionMutliplier,e.accelerationIncludingGravity.y*U.deviceMotionMutliplier,e.accelerationIncludingGravity.z*U.deviceMotionMutliplier),t.motionAccelerometerWithGravitySubmitInt(r,i,e.accelerationIncludingGravity.x*U.deviceMotionMutliplier,e.accelerationIncludingGravity.y*U.deviceMotionMutliplier,e.accelerationIncludingGravity.z*U.deviceMotionMutliplier)),null!==e.rotationRate&&null!==e.rotationRate.alpha&&null!==e.rotationRate.beta&&null!==e.rotationRate.gamma&&this._hasStartedOrientation?(t.motionRotationRateSubmit(r,e.rotationRate.alpha*Math.PI/-180,e.rotationRate.beta*Math.PI/-180,e.rotationRate.gamma*Math.PI/-180),t.motionRotationRateSubmitInt(r,i,e.rotationRate.alpha,e.rotationRate.beta,e.rotationRate.gamma)):this._hasStartedOrientation||this._startDeviceOrientation()},this._lastAccelerometerTimestamp=-1,this._accelerometerReading=()=>{var e;if(!this._accelerometer||void 0===this._accelerometer.x||void 0===this._accelerometer.y||void 0===this._accelerometer.z)return;let t=ht.get(this._pipeline);if(!t)return;const r=null!==(e=this._accelerometer.timestamp)&&void 0!==e?e:performance.now(),i=this._lastAccelerometerTimestamp>-1?r-this._lastAccelerometerTimestamp:30;this._lastAccelerometerTimestamp=r,t.motionAccelerometerSubmit(r,this._accelerometer.x*U.deviceMotionMutliplier,this._accelerometer.y*U.deviceMotionMutliplier,this._accelerometer.z*U.deviceMotionMutliplier),t.motionAccelerometerWithGravitySubmitInt(r,i,this._accelerometer.x*U.deviceMotionMutliplier,this._accelerometer.y*U.deviceMotionMutliplier,this._accelerometer.z*U.deviceMotionMutliplier)},this._lastLinearAccelerationTimestamp=-1,this._linearAccelerationReading=()=>{var e;if(!this._linearAcceleration||void 0===this._linearAcceleration.x||void 0===this._linearAcceleration.y||void 0===this._linearAcceleration.z)return;let t=ht.get(this._pipeline);if(!t)return;const r=null!==(e=this._linearAcceleration.timestamp)&&void 0!==e?e:performance.now(),i=this._lastLinearAccelerationTimestamp>-1?r-this._lastLinearAccelerationTimestamp:30;this._lastLinearAccelerationTimestamp=r,t.motionAccelerometerWithoutGravitySubmitInt(r,i,this._linearAcceleration.x*U.deviceMotionMutliplier,this._linearAcceleration.y*U.deviceMotionMutliplier,this._linearAcceleration.z*U.deviceMotionMutliplier)},this._lastGyroscopeReading=-1,this._gyroscopeReading=()=>{var e;if(!this._gyroscope||void 0===this._gyroscope.x||void 0===this._gyroscope.y||void 0===this._gyroscope.z)return;let t=ht.get(this._pipeline);if(!t)return;const r=null!==(e=this._gyroscope.timestamp)&&void 0!==e?e:performance.now(),i=this._lastGyroscopeReading>-1?r-this._lastGyroscopeReading:30;this._lastGyroscopeReading=r,t.motionRotationRateSubmit(r,-this._gyroscope.x,-this._gyroscope.y,-this._gyroscope.z),t.motionRotationRateSubmitInt(r,i,180*this._gyroscope.x/Math.PI,180*this._gyroscope.y/Math.PI,180*this._gyroscope.z/Math.PI)},ge("Using MSTP camera source")}destroy(){this.pause(),nt(this._impl)}_stop(){this._currentStream&&(this._currentStream.getTracks().forEach((e=>e.stop())),this._currentStream=null)}pause(){this._isPaused=!0;let e=ht.get(this._pipeline);e&&e.currentCameraSource===this&&(e.currentCameraSource=void 0),this._stopDeviceMotion(),this._syncCamera()}start(){var e;let t=ht.get(this._pipeline);t&&t.currentCameraSource!==this&&(null===(e=t.currentCameraSource)||void 0===e||e.pause(),t.currentCameraSource=this),this._isPaused=!1,this._startDeviceMotion(),this._syncCamera()}_getConstraints(){return Je(this,void 0,void 0,(function*(){let e,t;this._deviceId!==et.DEFAULT_DEVICE_ID&&this._deviceId!==et.USER_DEFAULT_DEVICE_ID?e=this._deviceId:t=this._deviceId===et.DEFAULT_DEVICE_ID?"environment":"user";let r={audio:!1,video:{facingMode:t,width:U.videoWidth,height:U.videoHeight,frameRate:U.requestHighFrameRate?60:30,deviceId:e}};if(e)return r;if(!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return r;let i=yield navigator.mediaDevices.enumerateDevices(),a=!1;return i=i.filter((e=>{if("videoinput"!==e.kind)return!1;if(e.getCapabilities){a=!0;let r=e.getCapabilities();if(r&&r.facingMode&&r.facingMode.indexOf("user"===t?"user":"environment")<0)return!1}return!0})),a&&0!==i.length?("object"==typeof r.video&&(ge("choosing device ID",i[i.length-1].deviceId),r.video.deviceId=i[i.length-1].deviceId),r):r}))}getFrame(e){var t,r;let i=G(!1);i!=this._cameraToScreenRotation&&(null===(r=null===(t=ht.get(this._pipeline))||void 0===t?void 0:t.sendCameraToScreenRotationToWorker)||void 0===r||r.call(t,i),this._cameraToScreenRotation=i)}_getUserMedia(){return Je(this,void 0,void 0,(function*(){let e=yield this._getConstraints();return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?yield navigator.mediaDevices.getUserMedia(e):yield new Promise(((t,r)=>{navigator.getUserMedia(e,t,r)}))}))}streamEnded(){console.log("MSTP stream ended"),this._stop(),this._syncCamera()}_syncCamera(){return Je(this,void 0,void 0,(function*(){if(this._currentStream&&this._isPaused)this._stop();else if(this._currentStream&&this._activeDeviceId!==this._deviceId&&this._stop(),!this._isPaused){if(this._activeDeviceId=this._deviceId,this._currentStream=yield this._getUserMedia(),this._isPaused)return void(yield this._syncCamera());if(this._isUserFacing=!1,this._currentStream){let e=this._currentStream.getVideoTracks();if(e.length>0){this._isUserFacing="user"===e[0].getSettings().facingMode;let t=new MediaStreamTrackProcessor({track:e[0]});const r=this._currentStream;if(yield(1e3,new Promise((e=>{setTimeout(e,1e3)}))),r!==this._currentStream)return;let i=ht.get(this._pipeline);i&&i.sendCameraStreamToWorker(this._impl,t.readable,this._isUserFacing)}}}}))}setProfile(e){let t=ht.get(this._pipeline);t&&t.sendCameraProfileToWorker(this._impl,e)}_startDeviceOrientation(){this._hasStartedOrientation||(this._hasStartedOrientation=!0,window.addEventListener("deviceorientation",(e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();null!==e.alpha&&null!==e.beta&&null!==e.gamma&&t.motionAttitudeSubmitInt(r,0,e.alpha,e.beta,e.gamma)})))}_startDeviceMotion(){try{this._accelerometer=new Accelerometer({frequency:60}),this._linearAcceleration=new LinearAccelerationSensor({frequency:60}),this._gyroscope=new Gyroscope({frequency:60}),this._accelerometer.addEventListener("reading",this._accelerometerReading),this._accelerometer.start(),this._linearAcceleration.addEventListener("reading",this._linearAccelerationReading),this._linearAcceleration.start(),this._gyroscope.addEventListener("reading",this._gyroscopeReading),this._gyroscope.start()}catch(e){window.addEventListener("devicemotion",this._deviceMotionListener,!1)}}_stopDeviceMotion(){this._accelerometer&&(this._accelerometer.stop(),this._accelerometer.removeEventListener("reading",this._accelerometerReading),delete this._accelerometer),this._linearAcceleration&&(this._linearAcceleration.stop(),this._linearAcceleration.removeEventListener("reading",this._linearAccelerationReading),delete this._linearAcceleration),this._gyroscope&&(this._gyroscope.stop(),this._gyroscope.removeEventListener("reading",this._gyroscopeReading),delete this._gyroscope),window.removeEventListener("devicemotion",this._deviceMotionListener)}uploadGL(e){const t=ht.get(this._pipeline),r=null==t?void 0:t.glContext;if(!e||e.texture||!e.frame||!t||!r)return;let i=t.getVideoTexture();i&&(r.bindTexture(r.TEXTURE_2D,i),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,e.frame),r.bindTexture(r.TEXTURE_2D,null),e.texture=i,e.frame.close(),delete e.frame)}}et.USER_DEFAULT_DEVICE_ID="Simulated User Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b",et.DEFAULT_DEVICE_ID="Simulated Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b";let tt=1,rt=new Map;function it(e,t){rt.set(e,t)}function at(e){return rt.get(e)}function nt(e){rt.delete(e)}class ot{constructor(e){this._gl=e}dispose(){this._vbo&&this._gl.deleteBuffer(this._vbo),this._uvbo&&this._gl.deleteBuffer(this._uvbo),this._ibo&&this._gl.deleteBuffer(this._ibo),this._shader&&this._gl.deleteProgram(this._shader.prog),this._vbo=void 0,this._uvbo=void 0,this._ibo=void 0,this._shader=void 0}_generateIBO(e,t){if(this._ibo&&this._lastIndices===e)return this._ibo;if(this._lastIndices=e,this._ibo||(this._ibo=t.createBuffer()),!this._ibo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this._ibo),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null),this._ibo}_generateVBO(e,t){if(this._vbo||(this._vbo=t.createBuffer()),!this._vbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._vbo),t.bufferData(t.ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._vbo}_generateUVBO(e,t){if(this._uvbo||(this._uvbo=t.createBuffer()),!this._uvbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._uvbo),t.bufferData(t.ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._uvbo}draw(e,t,r){var i;const a=t.getPreviewMesh(r),n=null===(i=t.getTargetInfo(r).preview)||void 0===i?void 0:i.image;if(!a||!n)return;if(!n.complete)return;let o=this._gl,s=this._getShader(o),_=this._generateVBO(a.vertices,o),c=this._generateUVBO(a.uvs,o),l=this._generateIBO(a.indices,o);o.enable(o.DEPTH_TEST),o.enable(o.CULL_FACE),o.useProgram(s.prog),o.uniformMatrix4fv(s.unif_matrix,!1,e),o.activeTexture(o.TEXTURE0),o.bindTexture(o.TEXTURE_2D,function(e,t){let r=st.get(t);if(r)return r;if(r=e.createTexture()||void 0,!r)throw new Error("Unable to create texture");st.set(t,r),e.bindTexture(e.TEXTURE_2D,r),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE);const i=e.RGBA,a=e.RGBA,n=e.UNSIGNED_BYTE;return e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,i,a,n,t),t.addEventListener("load",(()=>{if(!r)return;e.bindTexture(e.TEXTURE_2D,r);const i=e.RGBA,a=e.RGBA,n=e.UNSIGNED_BYTE;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,i,a,n,t)})),r}(o,n)),o.uniform1i(s.unif_skinSampler,0),o.bindBuffer(o.ARRAY_BUFFER,_),o.vertexAttribPointer(s.attr_position,3,o.FLOAT,!1,0,0),o.enableVertexAttribArray(s.attr_position),o.bindBuffer(o.ARRAY_BUFFER,c),o.vertexAttribPointer(s.attr_textureCoord,2,o.FLOAT,!1,0,0),o.enableVertexAttribArray(s.attr_textureCoord),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,l),o.drawElements(o.TRIANGLES,a.indices.length,o.UNSIGNED_SHORT,0),o.disableVertexAttribArray(s.attr_position),o.disableVertexAttribArray(s.attr_textureCoord),o.bindBuffer(o.ARRAY_BUFFER,null),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,null)}_getShader(e){if(this._shader)return this._shader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,_t),i=u(e,e.FRAGMENT_SHADER,ct);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"matrix");if(!a)throw new Error("Unable to get uniform location mattrix");let n=e.getUniformLocation(t,"skinSampler");if(!n)throw new Error("Unable to get uniform location skinSampler");return this._shader={prog:t,unif_matrix:a,unif_skinSampler:n,attr_position:e.getAttribLocation(t,"position"),attr_textureCoord:e.getAttribLocation(t,"textureCoord")},this._shader}}const st=new Map;let _t="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 matrix;\nattribute vec4 position;\nattribute vec2 textureCoord;\n\nvarying highp vec2 vTextureCoord;\n\nvoid main()\n{\n gl_Position = matrix * position;\n vTextureCoord = textureCoord;\n}",ct="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying highp vec2 vTextureCoord;\nuniform sampler2D skinSampler;\n\nvoid main()\n{\n gl_FragColor = texture2D(skinSampler, vTextureCoord);\n}",lt=new Map,dt=R();class ht{constructor(e,t,r){this._client=e,this._impl=t,this._mgr=r,this.pendingMessages=[],this.cameraTokens=new Map,this.nextCameraToken=1,this.tokensInFlight=0,this.videoTextures=[],this.cameraPixelArrays=[],this._sequenceRecordDeviceAttitudeMatrices=!0,this._sequenceRecorderFirstCameraToken=0,this._cameraFrameDataPromises=new Map,this._cameraFrameDataResolves=new Map,this._cameraFrameDataRejects=new Map,this._cameraFrameDataEnabled=!1,this.onGLContextReset=new W}static create(e,t){let r=e.pipeline_create();return lt.set(r,new ht(e,r,t)),r}static get(e){return lt.get(e)}frameUpdate(e){for(let t of this.pendingMessages)e.processMessages(t),this._mgr.postOutgoingMessage({t:"buf",p:this._impl,d:t},[t]);this.pendingMessages=[],this.cleanOldFrames()}cleanOldFrames(){var e,t;let r=this._client.pipeline_camera_frame_user_data(this._impl);if(r)for(let i of this.cameraTokens)i[0]<r&&(i[1].texture&&this.videoTextures.push(i[1].texture),null===(t=null===(e=i[1].frame)||void 0===e?void 0:e.close)||void 0===t||t.call(e),i[1].data&&(this.cameraPixelArrays.push(i[1].data),i[1].data=void 0),this.cameraTokens.delete(i[0]))}cameraFrameDataRawResult(e){var t,r;let i=this.cameraTokens.get(e.token);i&&(null===e.data?null===(t=this._cameraFrameDataRejects.get(i))||void 0===t||t(new Error("Raw camera data not available")):(i.data=e.data.data,null===(r=this._cameraFrameDataResolves.get(i))||void 0===r||r(e.data)),this._cameraFrameDataRejects.delete(i),this._cameraFrameDataResolves.delete(i),this._cameraFrameDataPromises.delete(i))}cameraTokenReturn(e){let t=this.cameraTokens.get(e.token);if(this._sequenceRecorder&&this._sequenceRecordDeviceAttitudeMatrices&&e.token>=this._sequenceRecorderFirstCameraToken&&t&&(e.att&&this._sequenceRecorder.appendAttitudeMatrix(e.att),t.data=e.d,this._sequenceRecorder.appendCameraFrame(t)),t&&!t.data&&e.d){t.data=e.d;const r=this._cameraFrameDataResolves.get(t);r&&r({data:t.data,width:t.dataWidth,height:t.dataHeight}),this._cameraFrameDataRejects.delete(t),this._cameraFrameDataResolves.delete(t),this._cameraFrameDataPromises.delete(t)}this.tokensInFlight--}sequenceRecordStart(e){this._sequenceRecorder||(this._sequenceRecorder=new Ue(e)),this._sequenceRecorder.start(),this._sequenceRecorderFirstCameraToken=this.nextCameraToken}sequenceRecordStop(){var e;null===(e=this._sequenceRecorder)||void 0===e||e.stop()}sequenceRecordData(){var e;return(null===(e=this._sequenceRecorder)||void 0===e?void 0:e.data())||new Uint8Array(0)}sequenceRecordClear(){delete this._sequenceRecorder}sequenceRecordDeviceAttitudeMatrices(e){this._sequenceRecordDeviceAttitudeMatrices=e}getVideoTexture(){return this.videoTextures.pop()}getCameraFrameDataRaw(){if(!this._cameraFrameDataEnabled)throw new Error("Raw camera frame data is not enabled.");const e=this.getCurrentCameraInfo();if(!e)return Promise.resolve(void 0);if(e.data)return Promise.resolve({data:e.data.slice(0),width:e.dataWidth,height:e.dataHeight});let t=this._cameraFrameDataPromises.get(e);return t||(t=new Promise(((t,r)=>{if(void 0!==e.remoteToken){const t={t:"rawrequest",token:e.remoteToken,p:this._impl};this._mgr.postOutgoingMessage(t,[])}this._cameraFrameDataResolves.set(e,t),this._cameraFrameDataRejects.set(e,r)})),this._cameraFrameDataPromises.set(e,t)),t}setCameraFrameDataRawEnabled(e){this._cameraFrameDataEnabled=e;const t={t:"rawenabled",v:e};this._mgr.postOutgoingMessage(t,[])}destroy(){this._client.pipeline_destroy(this._impl),lt.delete(this._impl)}getCurrentCameraInfo(){let e=this._client.pipeline_camera_frame_user_data(this._impl);if(e)return this.cameraTokens.get(e)}cameraFrameDrawGL(e,t,r){if(!this.glContext)return;let i=this.getCurrentCameraInfo();i&&(this._cameraDraw||(this._cameraDraw=new xe(this.glContext)),this._cameraDraw.drawCameraFrame(e,t,i,!0===r))}glContextLost(){this._cameraDraw&&this._cameraDraw.dispose(),this._faceDraw&&this._faceDraw.dispose(),this._imageTargetPreviewDraw&&this._imageTargetPreviewDraw.dispose(),this._faceProjectDraw&&this._faceProjectDraw.dispose(),delete this._cameraDraw,delete this._faceDraw,delete this._imageTargetPreviewDraw,delete this._faceProjectDraw,p=void 0,m=void 0,b=void 0,g={},this.onGLContextReset.emit();for(let e of this.videoTextures)this.glContext&&this.glContext.deleteTexture(e);this.videoTextures=[];for(let e of this.cameraTokens)this.glContext&&e[1].texture&&this.glContext.deleteTexture(e[1].texture),e[1].texture=void 0;this.glContext=void 0}glContextSet(e,t){this.glContextLost(),this.glContext=e,t=t||[];for(let r=0;r<4;r++){let i=t[r]||e.createTexture();i&&(e.bindTexture(e.TEXTURE_2D,i),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),this.videoTextures.push(i))}e.bindTexture(e.TEXTURE_2D,null)}drawFace(e,t,r,i){if(!this.glContext)return;this._faceDraw||(this._faceDraw=new Se(this.glContext));let a=R();k(a,e,t),k(a,a,r),this._faceDraw.drawFace(a,i)}drawImageTargetPreview(e,t,r,i,a){if(!this.glContext)return;this._imageTargetPreviewDraw||(this._imageTargetPreviewDraw=new ot(this.glContext));let n=R();k(n,e,t),k(n,n,r),this._imageTargetPreviewDraw.draw(n,a,i)}drawFaceProject(e,t,r,i,a,n){this.glContext&&(this._faceProjectDraw||(this._faceProjectDraw=new ze(this.glContext)),this._faceProjectDraw.drawFace(e,t,r,i,a,n))}cameraFrameTexture(){var e;return null===(e=this.getCurrentCameraInfo())||void 0===e?void 0:e.texture}cameraFrameTextureMatrix(e,t,r){let i=this.getCurrentCameraInfo();return i?Le(i.dataWidth,i.dataHeight,e,t,i.uvTransform||dt,r):R()}cameraFrameUserFacing(){var e;return(null===(e=this.getCurrentCameraInfo())||void 0===e?void 0:e.userFacing)||!1}cameraPoseWithAttitude(e){let t=ut(this.getCurrentCameraInfo(),this._client.pipeline_camera_frame_camera_attitude(this._impl));if(e){let e=R();L(e,[-1,1,1]),k(t,e,t),k(t,t,e)}return x(t,t),t}videoFrameFromWorker(e){let t=this.nextCameraToken++;const r=at(e.source);r&&(this.cameraTokens.set(t,{dataWidth:e.w,dataHeight:e.h,texture:void 0,frame:e.d,userFacing:e.userFacing,uvTransform:e.uvTransform,cameraModel:e.cameraModel,cameraToDevice:e.cameraToDevice,cameraSource:r,remoteToken:e.token}),this.cleanOldFrames())}imageBitmapFromWorker(e){let t=this.cameraTokens.get(e.tokenId);t&&(t.dataWidth=e.dataWidth,t.dataHeight=e.dataHeight,t.frame=e.frame,t.userFacing=e.userFacing,t.uvTransform=e.uvTransform,this.tokensInFlight--,this.cleanOldFrames())}uploadGL(){var e,t;let r=this.getCurrentCameraInfo();null===(t=null===(e=null==r?void 0:r.cameraSource)||void 0===e?void 0:e.uploadGL)||void 0===t||t.call(e,r)}registerToken(e){let t=this.nextCameraToken++;return this.cameraTokens.set(t,e),this.tokensInFlight++,t}processGL(){this.glContext?this.currentCameraSource&&(this.tokensInFlight>0?this.currentCameraSource.getFrame(!0):this.currentCameraSource.getFrame(!1)):we("no GL context for camera frames - please call pipeline_gl_context_set")}motionAccelerometerSubmit(e,t,r,i){var a;this._sequenceRecordDeviceAttitudeMatrices||null===(a=this._sequenceRecorder)||void 0===a||a.appendAccelerometer(e,t,r,i);const n={t:"sensorDataC2S",sensor:"accel",interval:0,timestamp:e,x:t,y:r,z:i,p:this._impl};this._mgr.postOutgoingMessage(n,[])}motionAccelerometerWithoutGravitySubmitInt(e,t,r,i,a){var n;null===(n=this._sequenceRecorder)||void 0===n||n.appendAccelerometerWithoutGravityInt(e,t,r,i,a);const o={t:"sensorDataC2S",sensor:"accel_wo_gravity_int",interval:t,timestamp:e,x:r,y:i,z:a,p:this._impl};this._mgr.postOutgoingMessage(o,[])}motionAccelerometerWithGravitySubmitInt(e,t,r,i,a){var n;null===(n=this._sequenceRecorder)||void 0===n||n.appendAccelerometerWithGravityInt(e,t,r,i,a);const o={t:"sensorDataC2S",sensor:"accel_w_gravity_int",interval:t,timestamp:e,x:r,y:i,z:a,p:this._impl};this._mgr.postOutgoingMessage(o,[])}motionRotationRateSubmitInt(e,t,r,i,a){var n;null===(n=this._sequenceRecorder)||void 0===n||n.appendRotationRateInt(e,t,r,i,a);const o={t:"sensorDataC2S",sensor:"rotation_rate_int",interval:t,timestamp:e,x:r,y:i,z:a,p:this._impl};this._mgr.postOutgoingMessage(o,[])}motionAttitudeSubmitInt(e,t,r,i,a){var n;null===(n=this._sequenceRecorder)||void 0===n||n.appendAttitudeInt(e,t,r,i,a);const o={t:"sensorDataC2S",sensor:"attitude_int",interval:t,timestamp:e,x:r,y:i,z:a,p:this._impl};this._mgr.postOutgoingMessage(o,[])}motionRotationRateSubmit(e,t,r,i){var a;this._sequenceRecordDeviceAttitudeMatrices||null===(a=this._sequenceRecorder)||void 0===a||a.appendRotationRate(e,t,r,i);const n={t:"sensorDataC2S",sensor:"rotation_rate",interval:0,timestamp:e,x:t,y:r,z:i,p:this._impl};this._mgr.postOutgoingMessage(n,[])}motionAttitudeSubmit(e,t,r,i){var a;this._sequenceRecordDeviceAttitudeMatrices||null===(a=this._sequenceRecorder)||void 0===a||a.appendAttitude(e,t,r,i);const n={t:"sensorDataC2S",sensor:"attitude",interval:0,timestamp:e,x:t,y:r,z:i,p:this._impl};this._mgr.postOutgoingMessage(n,[])}motionAttitudeMatrix(e){const t={t:"attitudeMatrixC2S",p:this._impl,m:e};this._mgr.postOutgoingMessage(t,[])}sendCameraStreamToWorker(e,t,r){let i={t:"streamC2S",p:this._impl,s:t,userFacing:r,source:e};this._mgr.postOutgoingMessage(i,[i.s])}sendCameraProfileToWorker(e,t){let r={t:"cameraProfileC2S",p:this._impl,source:e,profile:t};this._mgr.postOutgoingMessage(r,[])}sendCameraToScreenRotationToWorker(e){let t={p:this._impl,t:"cameraToScreenC2S",r:e};this._mgr.postOutgoingMessage(t,[])}sendImageBitmapToWorker(e,t,r,i,a,n,o){let s={p:this._impl,t:"imageBitmapC2S",i:e,r:t,tokenId:i,userFacing:r,cameraModel:a,cameraToDevice:n,cp:o};this._mgr.postOutgoingMessage(s,[e])}sendDataToWorker(e,t,r,i,a,n,o){let s={d:e,p:this._impl,width:r,height:i,token:t,userFacing:a,c2d:n,cm:o,t:"cameraFrameC2S"};this._mgr.postOutgoingMessage(s,[e])}}function ut(e,t){let r=!1;r=!!e&&e.userFacing;let i=R();return S(i,G(r)*Math.PI/180,[0,0,1]),k(i,i,t),i}const ft={0:[{mean:[.235,.2344,.7305],identity:[.008,.0087,.0024,-.0026,6e-4,-.0022,5e-4,.0033,.0026,.0017,-.0055,-8e-4,.0011,.0059,0,2e-4,.001,-.001,-.0044,-.0011,-1e-4,.0024,.0019,-9e-4,4e-4,-.0015,0,.0038,.0013,3e-4,.002,-.0021,.0018,.0023,.0011,.0012,-.0011,-.0017,9e-4,-.0012,-8e-4,7e-4,-.0017,.0029,-.0029,8e-4,-.0027,8e-4,-.0017,4e-4,9e-4,-.001,-3e-4,8e-4,-.0016,-3e-4,-7e-4,.0016,-9e-4,.0021,-5e-4,.0011,-.0024,-1e-4,6e-4,1e-4,-.0026,-4e-4,-3e-4,-9e-4,5e-4,3e-4,-8e-4,-.001,-4e-4,-8e-4,.0022,-.0014,-1e-4,-.0023,0,-.0018,7e-4,-.0036,.0017,.0017,-.0018,-2e-4,-4e-4,-9e-4,-8e-4,3e-4,.0012,9e-4,-4e-4,-.0016,5e-4,-.0013,.0011,.0023,.0029,.0024,.0017,-.0027,-4e-4,-.001,-.0018,-.0015,-.001,.001,-.0013,-1e-4,-2e-4,7e-4,3e-4,3e-4,-.0016,9e-4,-.0021,4e-4,.0014,.002,-7e-4,-4e-4,2e-4,-4e-4,-6e-4,-9e-4,.0015,4e-4,-4e-4,5e-4,-.0015,9e-4,3e-4,3e-4,-2e-4,-8e-4,-9e-4,.0023,4e-4,1e-4,-4e-4,-1e-4,7e-4,2e-4,.001,1e-4,-.0029,-5e-4],expression:[0,3e-4,.0052,-7e-4,-.0051,-.0103,0,.0019,.0027,-.0054,.0135,.035,-5e-4,-6e-4,.0025,-.0045,-.0557,-.003,-.0191,-.1199,.0548,-.0036,-.0682,-.0167,2e-4,-.0085,-.0085,.0044,.0041,-.0568,.0044,.179,.0065,-.0017,-.1006,.0036,-.0267,-.3279,.0301,-.0011,-.0173,-.001,.0046,.2808,.0207,.0162,.238,-.0225,.0017,.1041,.0203,5e-4,.0161,.0031,-.0436,.6504,.0873,-.0099,.1039,.0048,-.0254,.2534,-.0042,.003,-.0106,-.0153,-.0118,.0252,9e-4,-.0071,.0099,.007,-.0724,.0461,-.0235,.0833,.004,.0141,-.0219,.0132,-.0042,-.0179,.0045,-.0215,.3638,.0054,-.0445]},{mean:[.2358,.1466,.7183],identity:[.0077,.0093,1e-4,-.0022,0,-.0041,5e-4,.0022,.0028,.0018,-.0038,-.0013,.001,.0044,-2e-4,0,.0017,-.0016,-.0043,-2e-4,-1e-4,.0023,9e-4,5e-4,-7e-4,-4e-4,-.0017,.003,7e-4,6e-4,.0011,-.0018,5e-4,.0018,-8e-4,4e-4,-.0023,-6e-4,-3e-4,-.0015,-.0014,-1e-4,-.0018,.0027,-.0026,3e-4,-.0031,.0011,-.0026,-.0011,.0012,-.0013,-2e-4,7e-4,-.0021,.0021,4e-4,.0012,-.001,.002,-3e-4,2e-4,-.0026,-3e-4,.001,1e-4,-.0018,-.001,9e-4,-.0011,.001,4e-4,-8e-4,-7e-4,-.001,-3e-4,7e-4,-5e-4,-6e-4,-.0019,-5e-4,-.002,7e-4,-.0027,.0014,.0013,6e-4,-5e-4,-3e-4,-3e-4,-.001,0,.0019,1e-4,6e-4,-.0012,4e-4,-9e-4,4e-4,.0025,3e-4,.0024,.0017,-9e-4,-.0015,-.0015,-.001,-.0023,-.001,-5e-4,-4e-4,8e-4,9e-4,7e-4,2e-4,7e-4,-9e-4,9e-4,-.0013,1e-4,9e-4,2e-4,6e-4,-6e-4,-8e-4,-4e-4,-7e-4,8e-4,.0019,3e-4,.0015,2e-4,-.0015,-3e-4,0,6e-4,3e-4,6e-4,-6e-4,2e-4,5e-4,-4e-4,.0012,-4e-4,2e-4,-8e-4,6e-4,-4e-4,2e-4,-.0021],expression:[-.0034,.0054,.0069,.004,6e-4,-.0104,-3e-4,.0036,.0025,.0065,.0296,.0208,-9e-4,.0154,.0029,-.0167,.0124,.004,-.0102,.0351,.028,-.019,.0146,-.0035,-.0023,-.0069,-.0051,-.01,.0262,-.028,.0112,.082,.023,-.0019,-.066,-.0104,-.0408,.0164,.0075,-.0074,.0367,.0041,.0517,-.0207,.0045,.0291,-.0672,-.0129,.0345,-.1558,-.0106,.0037,-.0437,-.0021,.0854,-.1121,.0187,.0041,.0072,.0011,.0193,-.0143,-.0119,.005,-.02,-.0122,-.008,.0527,.0036,-.006,.0222,.007,-.0429,.046,-.0046,.0226,-.0059,.0202,-.0173,.0087,0,-.0067,-.0095,-.0153,.1506,-.0017,.0021]}],1:[{mean:[-.2271,.2323,.7319],identity:[-.0084,.0097,.0018,.0041,2e-4,-.002,-.0012,.0036,.0019,-9e-4,-.0063,-.001,-3e-4,.0053,6e-4,1e-4,5e-4,-.0015,.0044,-.0025,-.0015,-.002,.0016,-6e-4,2e-4,-.0013,0,-.0022,2e-4,2e-4,-.0025,-.0014,.0015,8e-4,2e-4,.0012,6e-4,-6e-4,.0017,0,3e-4,-1e-4,.0024,.0025,-.0029,-.0015,-.0015,1e-4,.0031,-.0016,7e-4,.0019,6e-4,.002,9e-4,.001,-.0014,-.002,-.0015,.0029,1e-4,5e-4,-.0023,8e-4,-.0011,.0019,.0017,-3e-4,-.0011,-3e-4,.0011,-8e-4,.0019,-.0022,1e-4,.0015,.0017,-8e-4,-.0011,-.0022,3e-4,.0022,6e-4,-.003,-2e-4,0,-.0017,-2e-4,0,1e-4,4e-4,.0012,.0019,-.0014,4e-4,-.0017,-.0012,-.0011,.0021,-.0029,.0026,.0018,-.0023,-.0029,1e-4,.0014,-.0019,-4e-4,-4e-4,.0023,-.0016,0,-9e-4,.0014,-.0015,.0015,-.0016,-.0011,-.0022,1e-4,-.0018,.0027,-.0013,4e-4,-1e-4,-5e-4,.0011,-2e-4,.0015,5e-4,-9e-4,-1e-4,.0029,6e-4,0,-3e-4,7e-4,-8e-4,-5e-4,.0025,3e-4,2e-4,-8e-4,-1e-4,3e-4,0,.0014,2e-4,-.0024,1e-4],expression:[-.0025,-9e-4,.006,.004,-.0027,-.0113,-8e-4,.001,.0031,-.0016,.0144,.0382,-3e-4,-5e-4,.0035,-.0044,-.0511,-.0014,-7e-4,-.1007,.0582,-6e-4,-.0606,-.0165,5e-4,-.0087,-.0093,.0036,.0057,-.0576,-.0039,.1488,.0127,.0016,-.0666,-9e-4,-.0153,.3162,-.0445,-.0021,.0023,.0043,-.0033,.2382,.0063,-.0217,.167,-.039,.0097,-.1144,-.0189,-.0145,.6831,.0632,-.0012,-.1959,-.0133,4e-4,.1108,-3e-4,.0062,.2593,-.0161,-.0018,-.0051,-.012,.0162,.016,-.0022,-.0052,-.0201,.0101,.0115,.0365,-.024,-.0059,.0188,-.0336,.0352,.0224,-.0229,.0146,.0086,-.0273,-.0032,.0103,-.0112]},{mean:[-.2288,.1541,.7202],identity:[-.0082,.0101,2e-4,.0036,-7e-4,-.0037,-8e-4,.0024,.0022,-.0013,-.0045,-.0013,-6e-4,.0045,-4e-4,4e-4,.0012,-.0014,.0042,-.001,-7e-4,-.0019,3e-4,-2e-4,.0012,-4e-4,-.0012,-.0018,-4e-4,-1e-4,-.0014,-.0012,1e-4,1e-4,-.0017,.001,.0015,-1e-4,6e-4,1e-4,0,-6e-4,.0028,.0021,-.0025,-.002,-.0015,7e-4,.0028,-.0023,9e-4,.0013,1e-4,.0016,.0012,.0032,-6e-4,-.0013,-.0011,.0021,3e-4,-5e-4,-.0024,4e-4,-4e-4,.0014,.0015,-8e-4,-3e-4,3e-4,.0017,-6e-4,.002,-.0018,-3e-4,9e-4,1e-4,2e-4,-6e-4,-.0015,-4e-4,.0022,7e-4,-.0023,0,-2e-4,-2e-4,-3e-4,-1e-4,6e-4,-2e-4,6e-4,.0022,-3e-4,.0013,-.0014,-5e-4,-3e-4,.0013,-.0027,6e-4,.0025,-.0023,-8e-4,-.0013,.0017,-9e-4,-.0019,1e-4,8e-4,-7e-4,-4e-4,0,.001,-.001,.0019,-8e-4,-.0015,-6e-4,-2e-4,-.0011,8e-4,1e-4,9e-4,-8e-4,-4e-4,6e-4,7e-4,.0021,-4e-4,7e-4,-5e-4,.0021,-7e-4,-4e-4,-9e-4,8e-4,3e-4,1e-4,3e-4,1e-4,9e-4,.001,-5e-4,5e-4,-.001,.001,4e-4,-5e-4,-.0012],expression:[8e-4,.0037,.0078,-4e-4,5e-4,-.012,-2e-4,-.0046,.0033,-.0089,.0295,.0221,-.0024,-.0084,.0013,.0057,.0125,.0049,-.0036,.0373,.0285,.0115,.0135,-.0035,.0048,.0108,-.0033,.0106,.0281,-.0301,-.0082,.0803,.0244,-7e-4,-.0725,-.0105,-.0247,-.0036,-.0143,-.0045,-.029,2e-4,-.0303,.0093,-.0021,-.0196,-.0754,-.0211,.0326,.1246,.006,-.0804,-.1499,.0109,.0182,-.0029,-.0014,-.0035,.0072,-8e-4,-.0152,-.0108,-.0166,-.0073,-.0144,-.0095,.0101,.047,-.0018,-.004,-.0189,.0027,.0104,.0298,-.0042,-.0096,.0191,-.0217,.0228,.0226,-.0105,.0047,-.0048,-.0172,.0061,-.0043,-.0016]}],2:{mean:[.5396,.2028,.2496],identity:[.0204,.0146,-.0182,-.0052,.0158,-.0038,-.0025,-.0108,-.006,.0085,-.0044,.0029,.0042,.001,.0095,.0015,-.0034,-.0064,-.0057,7e-4,.0026,7e-4,.0037,-6e-4,.0037,.0026,.0024,5e-4,-.0019,-.0013,.003,-.0028,.0018,-9e-4,.002,-.0047,.004,-.003,.0031,-.0027,-.0026,-.0017,.0016,.0014,-4e-4,.0021,-.002,0,.0017,7e-4,-4e-4,-7e-4,-.0018,-9e-4,2e-4,-.0012,1e-4,-5e-4,-.0011,4e-4,2e-4,.0011,1e-4,8e-4,.0017,-.0013,.0025,.0017,.001,2e-4,3e-4,5e-4,-4e-4,-1e-4,-5e-4,7e-4,-.0022,-.0029,6e-4,-8e-4,-6e-4,6e-4,-5e-4,5e-4,.0013,3e-4,-5e-4,-.003,7e-4,2e-4,.0016,-4e-4,0,0,4e-4,1e-4,.0014,.0012,1e-4,4e-4,-1e-4,8e-4,9e-4,4e-4,-4e-4,9e-4,-2e-4,.001,9e-4,4e-4,1e-4,7e-4,7e-4,.001,-.0017,-8e-4,2e-4,.0017,-3e-4,-1e-4,4e-4,5e-4,7e-4,5e-4,-1e-4,-6e-4,-1e-4,1e-4,-3e-4,-7e-4,-2e-4,-5e-4,0,-3e-4,3e-4,8e-4,-2e-4,-3e-4,5e-4,1e-4,-7e-4,-.001,-2e-4,3e-4,4e-4,-1e-4,7e-4,0,4e-4,4e-4],expression:[1e-4,-4e-4,1e-4,0,5e-4,2e-4,0,0,3e-4,-2e-4,3e-4,5e-4,-1e-4,2e-4,8e-4,1e-4,-2e-4,-5e-4,-3e-4,6e-4,5e-4,0,1e-4,2e-4,1e-4,-1e-4,-6e-4,-2e-4,5e-4,0,-4e-4,4e-4,.0016,4e-4,-4e-4,-.0015,0,1e-4,1e-4,-3e-4,3e-4,.0019,-2e-4,7e-4,4e-4,4e-4,-8e-4,-.0015,.0013,-.0016,-.0069,4e-4,-6e-4,-.0019,0,-1e-4,5e-4,-3e-4,2e-4,.0014,-3e-4,6e-4,.0011,4e-4,-3e-4,-.0032,-6e-4,8e-4,.0025,-3e-4,3e-4,.0015,-1e-4,1e-4,3e-4,-1e-4,0,0,-3e-4,4e-4,.0019,1e-4,0,-8e-4,-1e-4,1e-4,5e-4]},3:{mean:[-.5464,.2141,.26],identity:[-.0207,.0172,-.0176,.0068,.0148,-.0051,.0042,-.0101,-.0058,-.0087,-.0059,.0045,-.0056,.0017,.0097,-.0048,-.004,-.0044,.0019,2e-4,.0041,-.0052,.0041,2e-4,-.0027,6e-4,.002,-.0027,-.0033,-6e-4,-.004,9e-4,-.0012,-1e-4,-.0026,.0021,-.003,-.0025,.0052,.0025,.0022,-1e-4,-8e-4,.0013,.001,4e-4,.0018,.0014,6e-4,-5e-4,-.0015,-.0039,.0014,-1e-4,8e-4,-2e-4,6e-4,-5e-4,-.0038,-.0012,-.0018,-3e-4,.001,9e-4,.0012,.0024,-.0024,-7e-4,-.0016,-.0016,3e-4,-.001,-.0014,-.0014,.001,-3e-4,-7e-4,-.0012,3e-4,6e-4,3e-4,-5e-4,3e-4,.0012,6e-4,-8e-4,4e-4,4e-4,8e-4,-2e-4,-.0014,3e-4,0,.0023,-3e-4,-.0012,-.0013,.0011,-2e-4,-.0014,-1e-4,.0014,0,3e-4,3e-4,-8e-4,-5e-4,-7e-4,-7e-4,-2e-4,3e-4,5e-4,2e-4,-1e-4,.0011,-.0014,1e-4,-.0015,-1e-4,-3e-4,0,-.001,-1e-4,-8e-4,8e-4,-8e-4,-2e-4,-.0011,-3e-4,-4e-4,1e-4,-2e-4,3e-4,-7e-4,0,3e-4,1e-4,-8e-4,5e-4,1e-4,4e-4,.0014,-6e-4,-.001,-3e-4,-2e-4,1e-4,-1e-4,-1e-4,7e-4],expression:[-3e-4,-1e-4,6e-4,4e-4,0,-7e-4,0,-3e-4,-2e-4,-4e-4,.0012,8e-4,1e-4,-5e-4,-7e-4,-4e-4,0,1e-4,-4e-4,.0017,7e-4,0,1e-4,3e-4,0,4e-4,4e-4,5e-4,1e-4,-.001,-7e-4,.0022,.0026,5e-4,-.0024,-.0023,0,1e-4,3e-4,0,-.0013,-.0015,6e-4,.0014,8e-4,-2e-4,-.0025,-.0023,-3e-4,.0049,.006,-2e-4,-7e-4,-2e-4,0,-.0019,-.0018,-2e-4,.0017,.0017,3e-4,.0015,7e-4,1e-4,-.0023,-.0036,2e-4,.0023,.0017,0,-5e-4,-3e-4,-3e-4,4e-4,2e-4,-1e-4,-3e-4,-5e-4,1e-4,.0018,.0025,1e-4,-6e-4,-.0011,0,1e-4,1e-4]},4:{mean:[.0018,.1864,.853],identity:[-.0011,.0134,.0085,9e-4,-.0025,-7e-4,-3e-4,.0033,4e-4,-5e-4,-.0047,-.002,7e-4,.0026,-.0069,-1e-4,.0036,.0072,5e-4,-8e-4,-.0047,4e-4,-8e-4,-.001,0,2e-4,-.0036,-2e-4,-.001,-.0048,-1e-4,.0018,.0044,-7e-4,-2e-4,.0043,3e-4,.002,-.0031,0,-7e-4,.0013,0,.0037,.0033,-.0016,-.0012,.002,-1e-4,-.0027,.0051,5e-4,8e-4,7e-4,-.0017,.0054,.0023,-3e-4,.0032,1e-4,0,7e-4,-5e-4,-.0011,2e-4,8e-4,0,-.0033,-8e-4,-7e-4,7e-4,.0033,5e-4,-3e-4,.0029,-1e-4,-.0024,-.0011,-.002,-.0015,-.0019,2e-4,7e-4,.0031,6e-4,.0012,0,0,-.0021,0,-9e-4,-.0011,-.0011,-2e-4,.0015,.001,.0013,8e-4,.001,-3e-4,9e-4,.0027,-2e-4,-.0011,-.0011,6e-4,7e-4,2e-4,1e-4,-5e-4,-.0022,.0011,-.0014,9e-4,3e-4,2e-4,0,-6e-4,-4e-4,-.0011,-7e-4,.001,-.0012,6e-4,-.0012,-.0015,3e-4,-9e-4,-.0013,-.0013,7e-4,.001,-.0011,-.0013,.0015,4e-4,1e-4,4e-4,-1e-4,-.0016,-.0016,9e-4,-7e-4,-.0024,5e-4,-1e-4,-.0017,-2e-4,3e-4,-9e-4],expression:[-.0017,.0019,.0097,.003,-.0103,-.0093,9e-4,6e-4,.0023,-.0017,-.0204,.0376,.0033,-.0034,.0033,-.0026,-.0322,.0396,-.0032,-.0947,.0942,-7e-4,-.0175,.0266,-.001,-6e-4,.0016,.0025,.0157,-.0142,-.0022,.037,.015,.0021,-.0102,-.0107,.0036,.0055,-.0051,.0021,3e-4,-3e-4,4e-4,-.0177,.0074,-6e-4,-.0357,.0149,-.0066,9e-4,.0013,-.0031,.0016,.0095,.002,.0052,.0035,-3e-4,.0053,-.0082,.002,.0022,-.0071,-.0011,5e-4,.0055,.0011,3e-4,-.0126,-4e-4,3e-4,-.0023,-.0015,.0059,.0063,-.0042,-.0023,.0055,.0019,.0017,-.0075,6e-4,-8e-4,.0018,.0012,.0012,-5e-4]},5:{mean:[-.002,-.0469,1.0039],identity:[-.0017,.0018,.0156,6e-4,-.0038,5e-4,4e-4,.0013,.002,-4e-4,-.0015,-.0051,5e-4,-7e-4,-.0055,-1e-4,-9e-4,.008,-2e-4,.0036,-.0053,4e-4,-.0026,-.0016,7e-4,9e-4,-.009,-3e-4,7e-4,-.0084,.0015,.0021,.0032,-.0015,.0018,.0046,-3e-4,-4e-4,-1e-4,8e-4,-.0044,-7e-4,-8e-4,7e-4,.0048,-.0024,-3e-4,.0024,2e-4,-.0051,.0058,-6e-4,.0028,.0018,-.0021,.0035,.0057,.0011,.0065,0,-2e-4,.0011,.003,-.0027,8e-4,7e-4,3e-4,-.0039,-.002,-2e-4,-.0015,.0034,.0012,-.0025,.0024,-2e-4,4e-4,-.0042,-.0024,-.001,-.0023,.0016,-7e-4,.0039,1e-4,-5e-4,.0018,3e-4,-2e-4,-9e-4,-.0015,3e-4,-7e-4,-1e-4,-2e-4,.0023,.0032,.002,-.0013,.0013,-.0038,.0045,1e-4,-.0031,1e-4,.0019,-1e-4,.0016,.0013,0,-.002,.0023,2e-4,.0011,.0018,-.0024,6e-4,-.0017,.002,-8e-4,-.0021,7e-4,.0011,8e-4,4e-4,-.001,.0012,2e-4,-6e-4,-.0027,-5e-4,.001,-9e-4,1e-4,-1e-4,8e-4,-.0011,.0022,-.001,-5e-4,-.0011,.0016,-.0015,8e-4,-3e-4,9e-4,.0013,-7e-4,-7e-4,-2e-4],expression:[-.0018,-.0168,.0088,.0389,.1026,.0414,.2201,-.0262,-.0016,-.0017,.0612,-.0298,-.0323,.0093,.0013,-.005,.2207,.1315,-4e-4,.0858,-.0303,-.0133,.015,-.008,.1454,.0114,.0177,-.0077,.1022,.0356,-.0023,.1088,.0232,.003,-.0706,.0347,-1e-4,.004,-.0011,.0397,-.0096,-.0033,.0029,-.01,-.0083,-6e-4,-.0135,.0016,-.0087,-.0019,.0022,-.004,-.0087,.0105,8e-4,-.005,.0069,.0028,.0409,-.0391,.003,.0103,.0051,.0026,.0776,-.0083,-.0062,-.0567,.0268,.0175,.0017,.0156,-.0043,.0299,-.0395,-.0015,.0051,-.0148,.0125,.0035,.0603,.0109,-.0645,-.0257,.002,6e-4,-8e-4]},6:{mean:[-6e-4,-.1542,.8789],identity:[-7e-4,-.0032,.01,0,-.0027,.0031,6e-4,5e-4,-6e-4,-3e-4,.0013,-.0049,-2e-4,-.002,-.0046,8e-4,-.0011,.0054,2e-4,.0043,-.0027,3e-4,-.0022,-.0019,8e-4,.0032,-.0069,0,4e-4,-.0071,.0016,.0027,.0039,-.0017,9e-4,.0031,-1e-4,-5e-4,-4e-4,7e-4,-.0026,-.0012,-5e-4,6e-4,2e-4,-.0014,-.0013,.0019,-2e-4,-.0053,.0031,-6e-4,.0016,.0023,-.0013,.0021,.0029,8e-4,.0052,0,4e-4,0,.0037,-.0026,3e-4,.002,-2e-4,-.0024,4e-4,-4e-4,-.0012,8e-4,7e-4,-.0023,5e-4,0,.0014,-.0022,-.0016,0,-.0012,8e-4,-7e-4,.0014,-6e-4,-.0012,-3e-4,2e-4,.0012,-3e-4,-.002,-1e-4,1e-4,-2e-4,-.0016,9e-4,.002,.0019,0,6e-4,-.0022,.0016,1e-4,-.0017,-.0013,.001,9e-4,-1e-4,.0011,3e-4,-7e-4,.0014,8e-4,.0013,.0011,-.002,0,-.0015,.0014,.001,-.0015,7e-4,3e-4,.001,-1e-4,.0012,7e-4,6e-4,-4e-4,-.0013,-.0012,-9e-4,-.0011,2e-4,-5e-4,5e-4,4e-4,2e-4,1e-4,0,5e-4,5e-4,-.0014,.0015,-9e-4,5e-4,.0014,-8e-4,-8e-4,.0012],expression:[8e-4,.0481,.1653,.0784,.1008,-.3992,.5088,-.02,.0542,.001,.3723,-.0151,-.0986,.0283,-.0033,-.0121,.2634,.1202,.0036,-.0529,-.0245,-.0297,-.1085,.0495,.3264,.0083,4e-4,-.0314,.1459,-.1142,-.003,1e-4,.1154,-.0035,-.0285,-.0184,-1e-4,.0012,.0035,.079,-.0103,.0043,.011,-.004,-.0774,-.0047,-.023,.0284,-.0048,-.001,.0149,-.0039,.0046,.0528,-6e-4,.0063,.0376,.0096,.0558,-.0295,0,-.0311,-.0634,.0062,.0176,-.0154,-.0109,-.1149,.0192,.0326,.0121,.0237,.0034,.0262,-.0778,.0014,-.0045,-.0203,.0077,.0588,.0575,.008,-.0557,-.0095,.0032,.0054,-.0042]},7:{mean:[.0038,-.2927,.833],identity:[6e-4,-.0109,.0073,-6e-4,-.0044,.0017,-1e-4,-.0022,-6e-4,-3e-4,.0065,-.0014,-6e-4,-.0051,-.0046,3e-4,-.0029,.003,2e-4,.0038,-6e-4,0,-.0012,6e-4,-4e-4,.0053,-.0075,-2e-4,-7e-4,-.0063,.0014,.0026,.0019,-.0022,.0018,.0028,-1e-4,-.0012,.0011,9e-4,.0019,-.0019,-1e-4,.0012,-.0022,-3e-4,-.0012,4e-4,-8e-4,3e-4,-3e-4,0,.0017,.0021,-4e-4,.0012,.0022,-3e-4,.0026,-3e-4,4e-4,-.0026,.0032,-.0019,3e-4,.0015,1e-4,-.0015,.0013,-1e-4,1e-4,-.0029,0,-2e-4,-.0028,-7e-4,.0019,-3e-4,-2e-4,.0012,9e-4,4e-4,-.001,-.002,-.0016,.0011,-1e-4,3e-4,.0021,2e-4,-.0014,-9e-4,-1e-4,0,-2e-4,-.001,.0015,.0018,1e-4,7e-4,8e-4,.0017,.001,-9e-4,1e-4,4e-4,.0023,-1e-4,.0012,1e-4,-8e-4,2e-4,.0018,6e-4,3e-4,1e-4,.0012,-3e-4,.002,-6e-4,0,-1e-4,-.0022,4e-4,5e-4,.0011,2e-4,-.0013,-.0023,6e-4,6e-4,-5e-4,-5e-4,9e-4,2e-4,2e-4,.0011,-3e-4,.0011,.0015,.0011,3e-4,2e-4,8e-4,-4e-4,-8e-4,3e-4,0,.0012,-1e-4],expression:[.026,.1107,.3257,.1917,.3206,-1.1348,1.0791,-.035,.1549,-.0103,.6953,1e-4,-.3262,.068,.0219,-.0044,.3643,.2178,.0168,-.2478,-.1321,-.0414,-.3782,-.0617,.5088,-.0031,-.0311,-.0497,.0948,-.385,.0148,-.2224,-.1415,-.0074,.0863,-.203,3e-4,-.0081,.0057,.1164,-.0039,.0015,-.0024,.0505,.1532,.0039,-.0148,-.0753,.0163,.0058,-.0339,.0036,.0252,-.0569,-.0041,.0163,-.0361,.0035,-.018,.1266,0,-.0163,-.0046,.0133,-.1656,.2134,.0191,.0057,.0734,.0681,.0039,-.0144,.029,-.074,-.046,.0122,.0072,-.0162,-.0349,-.1234,.0212,-.0355,.0535,.1218,.0043,-.024,.0016]},8:{mean:[-.0018,-.3037,.8491],identity:[2e-4,-.0112,.0077,-4e-4,-.0044,.0024,1e-4,-.0021,-4e-4,-4e-4,.0066,-.002,-4e-4,-.0052,-.0044,3e-4,-.0032,.0039,4e-4,.0042,-3e-4,2e-4,-.0012,-2e-4,-2e-4,.0052,-.0083,-1e-4,-8e-4,-.0056,.0017,.0024,.0019,-.0023,.002,.0027,-2e-4,-.0013,.002,9e-4,.0017,-.0028,-2e-4,.0012,-.0026,0,-.0016,2e-4,-5e-4,3e-4,-.001,-1e-4,.0016,.0016,-3e-4,.0012,.0012,-3e-4,.0027,-3e-4,3e-4,-.0026,.0037,-.0017,1e-4,.0016,1e-4,-.0015,.0024,1e-4,2e-4,-.0039,0,-3e-4,-.0033,-6e-4,.0017,-4e-4,-4e-4,.0012,.0018,2e-4,-.0012,-.002,-.0017,.0013,-.001,3e-4,.0021,4e-4,-.0012,-6e-4,-2e-4,0,-4e-4,-9e-4,.0016,.0017,4e-4,7e-4,7e-4,.001,9e-4,-8e-4,5e-4,5e-4,.0023,.001,.0013,2e-4,-4e-4,2e-4,.0017,8e-4,3e-4,-1e-4,9e-4,-4e-4,.0019,-5e-4,3e-4,0,-.0025,3e-4,3e-4,.0011,1e-4,-.0015,-.001,7e-4,7e-4,-7e-4,-7e-4,8e-4,0,1e-4,.0013,-4e-4,.0012,.0014,.0017,4e-4,2e-4,3e-4,-3e-4,-9e-4,1e-4,0,.001,-4e-4],expression:[-.0092,2.8809,1.416,.2018,1.1982,-.9351,1.4492,-.1902,.1749,.0305,-.167,-.1572,-.7354,-.0492,.0115,.0608,.2971,.1179,.0046,-.0997,-.0041,-.0104,.3379,-.1854,.009,.0366,-.0583,.0269,-.0029,-.4175,-8e-4,.1794,.0752,-.0135,.1158,.1234,5e-4,.003,-.0032,.1034,-.0504,-.0055,-.0076,-.0772,.224,.0047,.0229,-.1044,.0162,-.0161,-.0241,-.0083,-.1388,-.0434,-.0125,-.0997,-.0327,-.0111,.1576,-.3911,.0199,.2522,.142,.0059,-.0721,-.0045,.031,-.1136,-.1685,.0641,.0142,.0312,.0426,-.1366,.1011,.0101,-.0157,.0018,-.0103,-.0344,.0907,.0016,.1168,-.0806,.0104,-.0057,.0111]},9:[{mean:[.0038,-.2927,.833],identity:[6e-4,-.0109,.0073,-6e-4,-.0044,.0017,-1e-4,-.0022,-6e-4,-3e-4,.0065,-.0014,-6e-4,-.0051,-.0046,3e-4,-.0029,.003,2e-4,.0038,-6e-4,0,-.0012,6e-4,-4e-4,.0053,-.0075,-2e-4,-7e-4,-.0063,.0014,.0026,.0019,-.0022,.0018,.0028,-1e-4,-.0012,.0011,9e-4,.0019,-.0019,-1e-4,.0012,-.0022,-3e-4,-.0012,4e-4,-8e-4,3e-4,-3e-4,0,.0017,.0021,-4e-4,.0012,.0022,-3e-4,.0026,-3e-4,4e-4,-.0026,.0032,-.0019,3e-4,.0015,1e-4,-.0015,.0013,-1e-4,1e-4,-.0029,0,-2e-4,-.0028,-7e-4,.0019,-3e-4,-2e-4,.0012,9e-4,4e-4,-.001,-.002,-.0016,.0011,-1e-4,3e-4,.0021,2e-4,-.0014,-9e-4,-1e-4,0,-2e-4,-.001,.0015,.0018,1e-4,7e-4,8e-4,.0017,.001,-9e-4,1e-4,4e-4,.0023,-1e-4,.0012,1e-4,-8e-4,2e-4,.0018,6e-4,3e-4,1e-4,.0012,-3e-4,.002,-6e-4,0,-1e-4,-.0022,4e-4,5e-4,.0011,2e-4,-.0013,-.0023,6e-4,6e-4,-5e-4,-5e-4,9e-4,2e-4,2e-4,.0011,-3e-4,.0011,.0015,.0011,3e-4,2e-4,8e-4,-4e-4,-8e-4,3e-4,0,.0012,-1e-4],expression:[.026,.1107,.3257,.1917,.3206,-1.1348,1.0791,-.035,.1549,-.0103,.6953,1e-4,-.3262,.068,.0219,-.0044,.3643,.2178,.0168,-.2478,-.1321,-.0414,-.3782,-.0617,.5088,-.0031,-.0311,-.0497,.0948,-.385,.0148,-.2224,-.1415,-.0074,.0863,-.203,3e-4,-.0081,.0057,.1164,-.0039,.0015,-.0024,.0505,.1532,.0039,-.0148,-.0753,.0163,.0058,-.0339,.0036,.0252,-.0569,-.0041,.0163,-.0361,.0035,-.018,.1266,0,-.0163,-.0046,.0133,-.1656,.2134,.0191,.0057,.0734,.0681,.0039,-.0144,.029,-.074,-.046,.0122,.0072,-.0162,-.0349,-.1234,.0212,-.0355,.0535,.1218,.0043,-.024,.0016]},{mean:[-.0018,-.3037,.8491],identity:[2e-4,-.0112,.0077,-4e-4,-.0044,.0024,1e-4,-.0021,-4e-4,-4e-4,.0066,-.002,-4e-4,-.0052,-.0044,3e-4,-.0032,.0039,4e-4,.0042,-3e-4,2e-4,-.0012,-2e-4,-2e-4,.0052,-.0083,-1e-4,-8e-4,-.0056,.0017,.0024,.0019,-.0023,.002,.0027,-2e-4,-.0013,.002,9e-4,.0017,-.0028,-2e-4,.0012,-.0026,0,-.0016,2e-4,-5e-4,3e-4,-.001,-1e-4,.0016,.0016,-3e-4,.0012,.0012,-3e-4,.0027,-3e-4,3e-4,-.0026,.0037,-.0017,1e-4,.0016,1e-4,-.0015,.0024,1e-4,2e-4,-.0039,0,-3e-4,-.0033,-6e-4,.0017,-4e-4,-4e-4,.0012,.0018,2e-4,-.0012,-.002,-.0017,.0013,-.001,3e-4,.0021,4e-4,-.0012,-6e-4,-2e-4,0,-4e-4,-9e-4,.0016,.0017,4e-4,7e-4,7e-4,.001,9e-4,-8e-4,5e-4,5e-4,.0023,.001,.0013,2e-4,-4e-4,2e-4,.0017,8e-4,3e-4,-1e-4,9e-4,-4e-4,.0019,-5e-4,3e-4,0,-.0025,3e-4,3e-4,.0011,1e-4,-.0015,-.001,7e-4,7e-4,-7e-4,-7e-4,8e-4,0,1e-4,.0013,-4e-4,.0012,.0014,.0017,4e-4,2e-4,3e-4,-3e-4,-9e-4,1e-4,0,.001,-4e-4],expression:[-.0092,2.8809,1.416,.2018,1.1982,-.9351,1.4492,-.1902,.1749,.0305,-.167,-.1572,-.7354,-.0492,.0115,.0608,.2971,.1179,.0046,-.0997,-.0041,-.0104,.3379,-.1854,.009,.0366,-.0583,.0269,-.0029,-.4175,-8e-4,.1794,.0752,-.0135,.1158,.1234,5e-4,.003,-.0032,.1034,-.0504,-.0055,-.0076,-.0772,.224,.0047,.0229,-.1044,.0162,-.0161,-.0241,-.0083,-.1388,-.0434,-.0125,-.0997,-.0327,-.0111,.1576,-.3911,.0199,.2522,.142,.0059,-.0721,-.0045,.031,-.1136,-.1685,.0641,.0142,.0312,.0426,-.1366,.1011,.0101,-.0157,.0018,-.0103,-.0344,.0907,.0016,.1168,-.0806,.0104,-.0057,.0111]}],10:{mean:[-.007,-.6338,.7695],identity:[1e-4,-.0296,.0089,-6e-4,-.0073,-.0065,-1e-4,-.0029,-.0031,-2e-4,.0128,.0065,0,-.0116,-.014,-1e-4,-.0037,-.0052,-5e-4,.0028,.003,-4e-4,.0041,.0015,6e-4,.0088,-.0076,-.0011,-.0015,-.0073,7e-4,-.0011,.0019,-.0011,-5e-4,.0031,-1e-4,-.0018,9e-4,.0018,.0038,.0068,-4e-4,-1e-4,.0061,.0024,.0024,-.0066,-6e-4,.0051,.0014,.002,.005,-.0035,1e-4,-.0034,-.004,-7e-4,.001,-8e-4,1e-4,-5e-4,-.0021,2e-4,.0045,-.0043,-.0012,-.0024,-.0014,6e-4,.0034,.0027,-8e-4,-.0053,.0014,1e-4,.0013,-.0018,6e-4,-.0015,.0029,-2e-4,-.0035,1e-4,-.002,.0012,.0048,.0011,1e-4,-2e-4,-3e-4,-.0012,.0033,6e-4,.002,-.0033,4e-4,.0028,2e-4,8e-4,-1e-4,-.0018,8e-4,.0017,1e-4,9e-4,8e-4,3e-4,.0019,-.001,.001,-7e-4,-.0013,0,1e-4,.0032,-1e-4,1e-4,.0011,-4e-4,5e-4,-7e-4,.0018,-3e-4,2e-4,7e-4,8e-4,-.0014,7e-4,.0015,-6e-4,-1e-4,-4e-4,.0019,-9e-4,-6e-4,-6e-4,-.0012,2e-4,-.0012,-8e-4,4e-4,6e-4,-.0011,3e-4,9e-4,-4e-4,6e-4,-7e-4,-4e-4],expression:[-.0603,2.0527,1.9014,.1025,.6143,.3804,.7881,-.1023,-.0764,.0454,-.2487,-.5073,-.6704,-.031,-.0181,.0466,.0651,-.0726,-.0033,-.0022,.2944,.0101,.1669,-.5225,-.4685,.0236,.0079,.011,.2173,.4529,.0121,-.2104,-.0673,.0225,-.4023,.0317,-9e-4,.0076,-.0032,.0333,.0523,.0129,-.001,-.0319,-.0139,.0015,-.0044,.0247,-5e-4,.0161,.0061,.0074,.0776,-.0176,.007,.055,-.017,.0052,-.1819,.0294,-.0161,-.0337,.0226,-.008,-.0297,.1967,-.0095,.0383,.2039,.0434,.0271,-.0064,-.0037,-.0294,-.024,.0024,-.0137,-.0209,-.0031,.0628,.1003,-.0126,-.056,-.0097,-.0012,-.0041,.0162]},11:{mean:[.2505,.3833,.7793],identity:[.0098,.012,.0077,-6e-4,-3e-4,0,1e-4,.0082,-7e-4,.0019,-.0036,-.0012,2e-4,.0119,-.0039,.001,1e-4,.0031,-.0036,-.0059,-7e-4,.0026,.0028,-.0011,9e-4,-.0032,8e-4,.0029,.0043,3e-4,.0025,-9e-4,.0047,.0016,.0022,.0018,-.001,.0025,-.003,-.001,.0033,.0034,4e-4,-.0052,.0024,-2e-4,.001,-.0014,-6e-4,.0038,-.0015,-6e-4,-.001,-.0011,-4e-4,-.001,4e-4,-7e-4,.0036,-8e-4,-2e-4,-.0019,5e-4,3e-4,-6e-4,-.0024,-.0017,-.0014,6e-4,-4e-4,-.0031,-.0013,-6e-4,.0042,2e-4,-2e-4,-.002,-3e-4,8e-4,.0018,-5e-4,-6e-4,-2e-4,-6e-4,.0025,.0019,.001,8e-4,-.0015,-.0012,-1e-4,-6e-4,-4e-4,.0023,-.001,6e-4,-2e-4,-.001,0,-9e-4,-.002,-.0011,1e-4,0,-1e-4,5e-4,6e-4,9e-4,-6e-4,5e-4,8e-4,-1e-4,-2e-4,-.0017,-6e-4,-4e-4,4e-4,-6e-4,.0012,4e-4,3e-4,-7e-4,3e-4,-2e-4,6e-4,1e-4,5e-4,-.0019,-6e-4,4e-4,7e-4,-1e-4,1e-4,5e-4,.001,-6e-4,-.002,-7e-4,-5e-4,5e-4,3e-4,7e-4,.0014,0,5e-4,-5e-4,-2e-4,3e-4,-6e-4,-1e-4],expression:[-9e-4,-3e-4,.0032,-.003,-.0034,-.0031,.0014,0,4e-4,-.0139,-.0764,.0275,-.002,-.0089,.0031,-.0503,-.0771,.038,-.1323,-.3523,.1368,-.0474,-.0564,.0296,-.0045,.007,-.0013,.0153,.1259,-.0464,.0866,.2175,-.0786,-.0413,-.1248,.0448,-.1777,-.4607,.1782,-5e-4,-.005,.0016,.0629,.1506,-.0624,.0545,.2576,-.0864,-.0231,-.0552,.0244,-.0136,-.0359,.0169,-.1158,-.2996,.1214,-.0235,-.0354,.0165,-.0745,-.1079,.0475,-.0116,-.0039,.0012,.0013,-.0108,-8e-4,.0044,-.0027,-1e-4,-.0694,.0363,.0071,.1462,-.136,.0047,.009,-.0177,.0038,-.0271,.0118,.0011,-.0399,-.0111,.0123]},12:{mean:[-.2981,.3828,.7563],identity:[-.0116,.014,.0054,.0018,5e-4,0,-4e-4,.0068,-.0013,-.0019,-.0048,-5e-4,5e-4,.0108,-.0036,-.0029,-.0018,.0029,.0043,-.0077,6e-4,-.0017,.002,-.0011,-.0014,-.0035,.0015,-.0024,.0011,4e-4,-.0048,2e-4,.0029,-1e-4,-1e-4,.003,.0019,.0035,-.0016,-4e-4,.0039,.0019,1e-4,-.0064,.004,3e-4,.002,-.0021,.0017,.0011,-.001,.0026,.0025,-5e-4,2e-4,-3e-4,-5e-4,-7e-4,9e-4,-4e-4,-.001,-.0022,.001,9e-4,-.0014,7e-4,.0011,-.001,-5e-4,-8e-4,-.0017,-.0021,9e-4,.0036,5e-4,4e-4,-.0031,6e-4,-.0015,.0027,2e-4,1e-4,-.0011,2e-4,-.0011,-.0018,4e-4,-.0013,-2e-4,7e-4,9e-4,-3e-4,.001,-.0021,8e-4,6e-4,-9e-4,4e-4,-7e-4,8e-4,-.002,-.0013,0,7e-4,-.0012,-1e-4,.0014,.0014,-1e-4,.0013,6e-4,6e-4,-.0014,-.0015,-9e-4,1e-4,1e-4,9e-4,7e-4,0,1e-4,-.001,-4e-4,0,-5e-4,1e-4,-3e-4,4e-4,-5e-4,-1e-4,-.0011,2e-4,0,1e-4,8e-4,8e-4,0,-7e-4,-8e-4,0,2e-4,-1e-4,.001,3e-4,4e-4,-2e-4,0,5e-4,.0018,-1e-4],expression:[0,-4e-4,.0028,.0036,-8e-4,-.0026,-.0015,-8e-4,3e-4,.0075,-.0608,.025,.0019,-.0076,.0033,.0379,-.0437,.0335,.0964,-.2452,.1233,.0368,-.0251,.0253,.0033,.0097,-.0021,-.0095,.1171,-.0475,-.064,.1548,-.0718,.0228,-.0831,.0343,-.1924,.6206,-.2771,.0021,-.0143,.0056,-.0705,.2522,-.1116,-.0692,.4229,-.1592,-.0093,.05,-.0185,.0948,-.3196,.1437,-.0184,.0194,-.0131,.0205,-.0353,.0201,.0676,-.135,.0672,.0137,-.0311,.0118,3e-4,-.0077,-2e-4,-.0151,4e-4,-.0058,.029,-.0139,.0163,.1324,.1819,-.0039,.0406,.0501,.0017,.0331,.0161,.0062,-.0235,-.0446,.0047]}};let pt=1,mt=new Map;function bt(e){return mt.get(e)}class gt{constructor(e){this._name=e,this.anchor_pose=R()}_getVertex(e,t,r){let i=r.mean.slice();for(let t=0;t<50;t++)i[0]+=e[t]*r.identity[3*t+0],i[1]+=e[t]*r.identity[3*t+1],i[2]+=e[t]*r.identity[3*t+2];for(let e=0;e<29;e++)i[0]+=t[e]*r.expression[3*e+0],i[1]+=t[e]*r.expression[3*e+1],i[2]+=t[e]*r.expression[3*e+2];return i}update(e,t,r){let i,a=ft[this._name.toString()];if(a){if(Array.isArray(a)){i=this._getVertex(e,t,a[0]);let r=this._getVertex(e,t,a[1]);i[0]=.5*(i[0]+r[0]),i[1]=.5*(i[1]+r[1]),i[2]=.5*(i[2]+r[2])}else i=this._getVertex(e,t,a);r&&(i[0]*=-1),I(this.anchor_pose,i)}}}const wt={incompatible:()=>!("function"==typeof Promise&&"object"==typeof WebAssembly&&navigator.mediaDevices&&navigator.mediaDevices.enumerateDevices&&navigator.mediaDevices.getUserMedia),incompatible_ui:()=>{const e=document.createElement("div");e.append(function(){let e=document.createElement("div"),t="a recent web browser";navigator.userAgent.match(/Android/i)?(t="Chrome for Android",window.location.href="googlechrome://navigate?url="+encodeURI(window.location.href),setTimeout((()=>{window.location.href="samsunginternet://open?url="+encodeURI(window.location.href)}),2e3)):navigator.userAgent.match(/iPhone|iPod|iPad/i)&&(t="Safari",e.classList.add("zee-launcher-browser-safari")),e.classList.add("zee-launcher-unsupported"),e.innerHTML=`\n <style>.zee-launcher-unsupported {\n display: flex;\n flex-direction: column;\n height: 100%;\n justify-content: center;\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n align-items: center;\n }\n .zee-launcher-browser-logo {\n background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg version='1.1' viewBox='0 0 210 211' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-82 -146)' fill-rule='nonzero' stroke='%23ffffff' stroke-width='2'%3E%3Cg transform='translate(83 146.5)'%3E%3Cpath d='m55.146 88.785l-32.039-49.472c19.962-24.947 49.904-38.684 80.517-38.81 17.739-0.12642 35.855 4.4246 52.336 13.99 18.2 10.619 32.039 25.874 40.846 43.404l-86.095-4.5511c-24.365-1.4327-47.556 12.347-55.565 35.439zm13.797 16.224c0 19.468 15.684 35.229 35.059 35.229 19.374 0 35.059-15.76 35.059-35.229 0-19.468-15.684-35.229-35.059-35.229-19.374 0-35.059 15.718-35.059 35.229zm132.06-37.588l-58.585 3.034c15.894 18.668 16.145 45.595 2.7678 66.243l-47.01 72.648c19.5 1.0535 39.588-3.2447 57.788-13.864 45.039-26.126 63.282-80.908 45.039-128.06zm-144.93 57.647l-39.126-77.326c-10.694 16.434-16.942 36.156-16.942 57.267 0 52.253 38.078 95.53 87.856 103.2l26.713-52.59c-24.155 4.5511-47.472-8.765-58.501-30.551z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");\n width: 211px;\n height: 211px;\n margin-bottom: 25%;\n margin-top: -60px;\n background-repeat: no-repeat;\n }\n .zee-launcher-browser-safari .zee-launcher-browser-logo {\n background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg version='1.1' viewBox='0 0 211 211' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-82 -146)' fill-rule='nonzero' stroke='%23ffffff' stroke-width='2'%3E%3Cpath d='m180 251.86c0-4.0385 2.9377-7.855 7.2552-7.855 3.9614 0 7.7448 2.8402 7.7448 7.145 0 4.0385-2.8487 7.855-7.1662 7.855-4.0059 0-7.8338-2.9734-7.8338-7.145zm112-0.35503c0 57.728-46.772 104.5-104.5 104.5s-104.5-46.772-104.5-104.5 46.772-104.5 104.5-104.5 104.5 46.772 104.5 104.5zm-12-1c0-51.649-41.851-93.5-93.5-93.5s-93.5 41.851-93.5 93.5 41.851 93.5 93.5 93.5 93.5-41.851 93.5-93.5zm-30.624 40.983c0 1.5095 5.4495 4.2768 6.8328 5.1154-11.486 17.401-29.26 29.938-49.423 34.928l-1.8444-7.757c-0.12576-1.0482-0.79646-1.174-1.7606-1.174-0.79646 0-1.2576 1.174-1.1737 1.7611l1.8444 7.8828c-5.5753 1.174-11.234 1.7611-16.935 1.7611-15.217 0-30.182-4.2768-43.177-12.202 0.71263-1.174 5.1141-7.5474 5.1141-8.4698 0-0.79666-0.71263-1.5095-1.5091-1.5095-1.6348 0-5.1141 6.9603-6.1621 8.344-17.522-11.615-30.182-29.602-35.044-50.148l8.0066-1.761c0.92222-0.25158 1.1737-0.92246 1.1737-1.7611 0-0.79667-1.1737-1.2579-1.8444-1.174l-7.8389 1.803c-1.048-5.3251-1.6348-10.692-1.6348-16.143 0-15.556 4.4015-30.86 12.66-43.984 1.1737 0.71281 6.749 4.5284 7.6712 4.5284 0.79646 0 1.5091-0.58702 1.5091-1.3837 0-1.6353-6.1621-4.7381-7.5455-5.7024 11.821-17.275 29.805-29.728 50.219-34.34l1.7606 7.757c0.25152 0.92246 0.92222 1.174 1.7606 1.174 0.83838 0 1.2576-1.174 1.1737-1.8449l-1.7606-7.6732c5.1141-0.92246 10.312-1.5095 15.552-1.5095 15.552 0 30.727 4.4026 43.973 12.663-0.79646 1.174-4.5273 6.6249-4.5273 7.5474 0 0.79667 0.58687 1.5095 1.3833 1.5095 1.6348 0 4.7369-6.0379 5.5753-7.4216 17.187 11.615 29.469 29.351 34.248 49.561l-6.4975 1.3837c-1.048 0.25158-1.1737 0.92246-1.1737 1.8449 0 0.79667 1.1737 1.2579 1.7606 1.174l6.6232-1.5095c1.048 5.3251 1.6348 10.776 1.6348 16.227 0 15.221-4.1919 30.189-12.073 43.062-1.1737-0.58702-6.0364-4.0672-6.9586-4.0672-0.8803 0-1.5929 0.71281-1.5929 1.5095zm-14.876-98.483c-5.2178 4.88-53.863 49.48-55.228 51.8l-38.772 64.2c5.0974-4.76 53.863-49.6 55.108-51.72l38.892-64.28z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");\n }\n .zee-launcher-unsupported-message {\n text-align: center;\n width: 250px;\n font-family: sans-serif;\n color: #ffffff;\n }\n .zee-launcher-unsupported-message-copy {\n border: 1px solid #ffffff;\n border-radius: 5px;\n margin-top: 10px;\n }\n #zee-launcher-unsupported-message-input {\n border: none;\n padding: 10px;\n border-radius: 0px;\n border-right: 1px solid #344B60;\n height: 40px;\n color: #ffffff;\n background-color: black;\n box-sizing: border-box;\n width: calc(100% - 65px);\n margin-left: 5px;\n }\n #zee-launcher-unsupported-message-button {\n background: none;\n border: none;\n outline: none;\n text-transform: uppercase;\n color: #ffffff;\n height: 40px;\n display: inline-block;\n width: 59px;\n }\n .zee-launcher-unsupported-message-before-copy {\n height: 100px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-top: 20px;\n }\n .zee-launcher-unsupported-message-copied .zee-launcher-unsupported-message-before-copy {\n display: none;\n }\n .zee-launcher-unsupported-message-after-copy {\n display: none;\n }\n .zee-launcher-unsupported-message-copied .zee-launcher-unsupported-message-after-copy {\n height: 100px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-top: 20px;\n }\n </style>\n <div class="zee-launcher-browser-logo"></div>\n <div class="zee-launcher-unsupported-message">Open with ${t} to access this content.</div>\n <div class="zee-launcher-unsupported-message-before-copy">\n <div class="zee-launcher-unsupported-message ">Tap below to copy the address for easy pasting into ${t}.</div>\n <div class="zee-launcher-unsupported-message-copy"><input id="zee-launcher-unsupported-message-input" type="text/"><button id="zee-launcher-unsupported-message-button">Copy</button></div>\n </div>\n <div class="zee-launcher-unsupported-message zee-launcher-unsupported-message-after-copy">COPIED! Now paste into ${t}'s address bar to experience the content.</div>\n `;let r=e.querySelector("#zee-launcher-unsupported-message-input")||document.createElement("input");r.value=window.location.href;let i=()=>{if(navigator.userAgent.match(/iPhone|iPod|iPad/i)){let e=document.createRange();e.selectNodeContents(r);let t=window.getSelection();if(!t)return;t.removeAllRanges(),t.addRange(e),r.setSelectionRange(0,999999999)}else r.select();document.execCommand("copy"),r.blur(),e.classList.toggle("zee-launcher-unsupported-message-copied",!0)};return(e.querySelector("#zee-launcher-unsupported-message-button")||document.createElement("button")).addEventListener("click",i),r.addEventListener("click",i),e}()),Object.assign(e.style,{position:"fixed",width:"100%",height:"100%",top:"0px",left:"0px",zIndex:1001,backgroundColor:"rgba(0, 0, 0, 0.9)",fontFamily:"sans-serif",color:"white",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"}),e.classList.add("zee_launcher_compatibility"),document.body.append(e)}};let vt=1,Et=new Map;class yt extends Be{constructor(e,t){super(),this._impl=e,this._pipeline=t,this._packetNumber=0,this._motionUpdatesQueued=0,this._motionUpdatesSent=0,this._minFrameGapMs=0,this._lastUpdateTime=0}static create(e){let t=vt++;return Et.set(t,new yt(t,e)),ge("sequence_source_source_t initialized"),t}static get(e){return Et.get(e)}loadFromMemory(e){try{this._decoder=new De(e),this._packetNumber=0,this._lastUpdateTime=0}catch(e){we("Unable to decode sequence:",e)}}maxPlaybackFpsSet(e){this._minFrameGapMs=e<=0?0:1e3/e}setTime(e){e<0?delete this._time:this._time=e}getFrame(e){var t;let r=ht.get(this._pipeline);if(!r)return;if(!this._decoder)return;if(this._submitMotionUpdates(r),this._motionUpdatesQueued>this._motionUpdatesSent)return;if(e)return;let i=null!==(t=this._time)&&void 0!==t?t:performance.now();if(i<this._lastUpdateTime+this._minFrameGapMs)return;if(this._packetNumber>=this._decoder.numberPackets)return;let a=this._decoder.dataByPacket.get(this._packetNumber);if(a.type!=Ne.CAMERA_FRAME)return;this._packetNumber++;let n=r.cameraPixelArrays.pop();for(;n&&n.byteLength!==a.greyscale.byteLength;)n=r.cameraPixelArrays.pop();n||(n=new ArrayBuffer(a.greyscale.byteLength)),new Uint8Array(n).set(a.greyscale),this._lastUpdateTime=i;let o={data:n,cameraSourceData:a.greyscale,cameraModel:a.cameraModel,cameraToDevice:a.cameraToDevice,dataWidth:a.width,dataHeight:a.height,texture:void 0,userFacing:a.userFacing,uvTransform:R(),cameraSource:this};this._submitMotionUpdates(r);const s=r.registerToken(o);r.sendDataToWorker(o.data||new ArrayBuffer(0),s,o.dataWidth,o.dataHeight,o.userFacing,o.cameraToDevice,o.cameraModel)}destroy(){Et.delete(this._impl),this.pause()}start(){var e;let t=ht.get(this._pipeline);t&&t.currentCameraSource!==this&&(null===(e=t.currentCameraSource)||void 0===e||e.pause(),t.currentCameraSource=this)}pause(){let e=ht.get(this._pipeline);e&&e.currentCameraSource===this&&(e.currentCameraSource=void 0)}uploadGL(e){let t=ht.get(this._pipeline);if(!t)return;let r=null==t?void 0:t.glContext;r&&(e.texture||(e.texture=t.getVideoTexture()),e.texture&&e.cameraSourceData&&(r.bindTexture(r.TEXTURE_2D,e.texture),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.LUMINANCE,e.dataWidth,e.dataHeight,0,r.LUMINANCE,r.UNSIGNED_BYTE,new Uint8Array(e.cameraSourceData)),r.bindTexture(r.TEXTURE_2D,null)))}_submitMotionUpdates(e){let t=!1;for(;this._packetNumber<this._decoder.numberPackets;){let r=this._decoder.dataByPacket.get(this._packetNumber);if(r.type==Ne.CAMERA_FRAME)break;switch(r.type){case Ne.ACCELEROMETER:e.motionAccelerometerSubmit(r.t,r.x,r.y,r.z),t=!0;break;case Ne.ROTATION_RATE:e.motionRotationRateSubmit(r.t,r.x,r.y,r.z),t=!0;break;case Ne.ATTITUDE:e.motionAttitudeSubmit(r.t,r.x,r.y,r.z),t=!0;break;case Ne.ATTITUDE_MATRIX:e.motionAttitudeMatrix(r.attitude),t=!0;break;case Ne.ACCELEROMETER_WO_GRAVITY_INT:e.motionAccelerometerWithoutGravitySubmitInt(r.t,r.int,r.x,r.y,r.z),t=!0;break;case Ne.ACCELEROMETER_W_GRAVITY_INT:e.motionAccelerometerWithGravitySubmitInt(r.t,r.int,r.x,r.y,r.z),t=!0;break;case Ne.ATTITUDE_INT:e.motionAttitudeSubmitInt(r.t,r.int,r.x,r.y,r.z),t=!0;break;case Ne.ROTATION_RATE_INT:e.motionRotationRateSubmitInt(r.t,r.int,r.x,r.y,r.z),t=!0}this._packetNumber++}t&&(this._motionUpdatesQueued++,setTimeout((()=>{this._motionUpdatesSent++}),0))}}const At='<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="250" height="80.408" viewBox="0 0 250 80.408"><defs><filter id="a" x="0" y="1.182" width="250" height="79.226" filterUnits="userSpaceOnUse"><feOffset dy="3" input="SourceAlpha"/><feGaussianBlur stdDeviation="3" result="b"/><feFlood flood-opacity="0.161"/><feComposite operator="in" in2="b"/><feComposite in="SourceGraphic"/></filter><filter id="c" x="6.929" y="0" width="111.975" height="40.988" filterUnits="userSpaceOnUse"><feOffset dy="3" input="SourceAlpha"/><feGaussianBlur stdDeviation="3" result="d"/><feFlood flood-opacity="0.161"/><feComposite operator="in" in2="d"/><feComposite in="SourceGraphic"/></filter></defs><g transform="translate(-26.873 -414.029)"><g transform="translate(44 423.332)"><g transform="translate(0 0.635)" style="isolation:isolate"><g transform="translate(0 0)"><g transform="matrix(1, 0, 0, 1, -17.13, -9.94)" filter="url(#a)"><path d="M55.766,44.97V11.8h8.272v2.6h.089a8.258,8.258,0,0,1,7.046-3.357,11.4,11.4,0,0,1,8.5,3.686,12.667,12.667,0,0,1,3.278,8.622,12.509,12.509,0,0,1-3.25,8.57,11.353,11.353,0,0,1-8.429,3.6,9.533,9.533,0,0,1-7.229-2.95V43.378l-8.269,1.594h0Zm8-21.671a4.958,4.958,0,0,0,5.319,5.15A4.957,4.957,0,0,0,74.4,23.3a5.321,5.321,0,0,0-10.638,0ZM16.105,18.412H2.752V11.038H30.9L14.887,37.16H38.22L0,44.534ZM131.469,38.45a.761.761,0,0,1-.484-.166.582.582,0,0,1-.228-.419l-.553-3.586a12.243,12.243,0,0,1-1.782-.721l-2.789,2.084a.718.718,0,0,1-.5.176.688.688,0,0,1-.495-.214,25.864,25.864,0,0,1-3.264-3.274.754.754,0,0,1,.018-.9c.2-.277.543-.713,1.01-1.3.483-.6.832-1.05,1.068-1.374a9.614,9.614,0,0,1-.811-1.929l-3.62-.527a.631.631,0,0,1-.416-.243.728.728,0,0,1-.159-.458V21.283a.743.743,0,0,1,.159-.448.6.6,0,0,1,.376-.253l3.68-.546a9.511,9.511,0,0,1,.772-1.792c-.523-.733-1.235-1.638-2.117-2.69a.731.731,0,0,1-.2-.467.82.82,0,0,1,.178-.449,19.577,19.577,0,0,1,1.949-2.095c.953-.924,1.582-1.393,1.87-1.393a.861.861,0,0,1,.515.195l2.729,2.084a11.551,11.551,0,0,1,1.8-.741,31.446,31.446,0,0,1,.573-3.623.666.666,0,0,1,.712-.546h4.392a.757.757,0,0,1,.485.166.58.58,0,0,1,.228.419l.553,3.584a12.576,12.576,0,0,1,1.782.722l2.809-2.085a.641.641,0,0,1,.475-.176.776.776,0,0,1,.5.195,27.035,27.035,0,0,1,3.264,3.313.625.625,0,0,1,.139.429.742.742,0,0,1-.159.447c-.2.271-.525.7-1.008,1.3-.467.581-.827,1.043-1.069,1.373a11.8,11.8,0,0,1,.812,1.91l3.62.545a.626.626,0,0,1,.416.244.736.736,0,0,1,.158.457v4.325a.755.755,0,0,1-.158.449.6.6,0,0,1-.4.253l-3.66.545a12.692,12.692,0,0,1-.772,1.774c.465.653,1.177,1.559,2.117,2.688a.751.751,0,0,1,.2.488.648.648,0,0,1-.178.448,19.638,19.638,0,0,1-1.958,2.1c-.947.918-1.573,1.384-1.861,1.384a.976.976,0,0,1-.515-.176l-2.731-2.1a11.361,11.361,0,0,1-1.8.741,31.849,31.849,0,0,1-.573,3.625.668.668,0,0,1-.713.546Zm-1.385-18.491a4.935,4.935,0,0,0,0,7.053,5.12,5.12,0,0,0,7.163,0,4.931,4.931,0,0,0,0-7.053,5.117,5.117,0,0,0-7.163,0Zm69.969,14.868a18.523,18.523,0,0,1-4.932-2.073l1.705-6.1A13.441,13.441,0,0,0,200.779,29a12.14,12.14,0,0,0,4.344.818,4.644,4.644,0,0,0,2.351-.482,1.538,1.538,0,0,0,.806-1.4q0-1.5-3.25-2.242-1.061-.246-1.705-.425a12.335,12.335,0,0,1-5.358-2.589,5.5,5.5,0,0,1-1.671-4.157,6.323,6.323,0,0,1,2.547-5.267,10.993,10.993,0,0,1,6.9-1.972,21.351,21.351,0,0,1,4.552.5,25.439,25.439,0,0,1,4.736,1.557l-1.705,5.491a14.244,14.244,0,0,0-3.319-1.636,10.6,10.6,0,0,0-3.364-.561,4.227,4.227,0,0,0-2.121.426,1.357,1.357,0,0,0-.714,1.232q0,1.211,3.227,2.04.737.2,1.106.291,4.264,1.187,5.935,2.79a5.728,5.728,0,0,1,1.67,4.337A6.781,6.781,0,0,1,213,33.37a11.48,11.48,0,0,1-7.259,2.14A22.577,22.577,0,0,1,200.053,34.827ZM30.568,31.834a12.566,12.566,0,0,1-3.292-8.59,12.567,12.567,0,0,1,3.247-8.568,11.3,11.3,0,0,1,8.423-3.638,9.519,9.519,0,0,1,7.217,3V11.8h8.264V34.735H46.163V32.186h-.09c-1.32,2.071-3.951,3.308-7.038,3.308A11.412,11.412,0,0,1,30.568,31.834Zm5.245-8.545a4.95,4.95,0,0,0,5.312,5.141,4.95,4.95,0,0,0,5.312-5.141A5.023,5.023,0,0,0,41.125,18.1,5.023,5.023,0,0,0,35.813,23.289Zm69.2,11.554-3.527-10.452q-.282-.892-.505-1.8t-.412-1.8a30.821,30.821,0,0,1-.917,3.454l-.047.16L96.1,34.842H90.176l-9.925-23.1h8.632l3.552,10.223q.4,1.12.634,1.955t.377,1.635a23.558,23.558,0,0,1,.917-3.179q.093-.274.141-.411l3.528-10.223h5.056l3.5,10.2.07.183a20.724,20.724,0,0,1,.988,3.43q.141-.732.364-1.532t.647-2.058l3.574-10.223h8.678l-9.971,23.1Zm80.154-.092-8.587-9.841v9.841h-7.888V1.5L176.583,0V22.28l8.272-9.665h9.96L184.584,23.266l11.156,11.485Zm-35.09,0V11.782h8.272v3.761h.091a8.131,8.131,0,0,1,7.546-4.074h1.593V19.3a6.8,6.8,0,0,0-3.5-.761c-4.593,0-5.728,3-5.728,6.941v9.268Z" transform="translate(17.13 15.31)"/></g><g transform="matrix(1, 0, 0, 1, -17.13, -9.94)" filter="url(#c)"><path d="M3.576-12.852v-4.3H6.628a2.867,2.867,0,0,1,1.945.55A2.034,2.034,0,0,1,9.188-15a2.06,2.06,0,0,1-.615,1.608,2.784,2.784,0,0,1-1.945.542ZM2.017-18.464V-6.748H3.576v-4.792H7.153a3.569,3.569,0,0,0,2.683-.9A3.478,3.478,0,0,0,10.747-15a3.45,3.45,0,0,0-.911-2.552,3.638,3.638,0,0,0-2.683-.911Zm11.421,7.483a4.221,4.221,0,0,1,.205-1.37,2.957,2.957,0,0,1,.566-1.009,2.411,2.411,0,0,1,.845-.624A2.515,2.515,0,0,1,16.08-14.2a2.515,2.515,0,0,1,1.026.213,2.411,2.411,0,0,1,.845.624,2.957,2.957,0,0,1,.566,1.009,4.221,4.221,0,0,1,.205,1.37,4.221,4.221,0,0,1-.205,1.37,2.867,2.867,0,0,1-.566,1,2.457,2.457,0,0,1-.845.615,2.515,2.515,0,0,1-1.026.213,2.515,2.515,0,0,1-1.026-.213,2.457,2.457,0,0,1-.845-.615,2.867,2.867,0,0,1-.566-1A4.221,4.221,0,0,1,13.438-10.981Zm-1.477,0a5.573,5.573,0,0,0,.263,1.739,3.97,3.97,0,0,0,.788,1.4,3.623,3.623,0,0,0,1.3.935,4.4,4.4,0,0,0,1.772.336A4.381,4.381,0,0,0,17.86-6.9a3.641,3.641,0,0,0,1.288-.935,3.97,3.97,0,0,0,.788-1.4,5.573,5.573,0,0,0,.263-1.739,5.65,5.65,0,0,0-.263-1.748,3.96,3.96,0,0,0-.788-1.411,3.729,3.729,0,0,0-1.288-.944,4.29,4.29,0,0,0-1.78-.345,4.3,4.3,0,0,0-1.772.345,3.71,3.71,0,0,0-1.3.944,3.96,3.96,0,0,0-.788,1.411A5.65,5.65,0,0,0,11.961-10.981Zm18.28,4.234,2.708-8.484H31.5L29.6-8.29h-.033L27.8-15.231H26.27L24.564-8.29h-.033l-1.92-6.941H21.068l2.724,8.484H25.3l1.707-6.744h.033l1.723,6.744ZM40.169-11.8H35.3a2.905,2.905,0,0,1,.213-.927A2.473,2.473,0,0,1,36-13.492a2.255,2.255,0,0,1,.747-.517,2.429,2.429,0,0,1,.976-.189,2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,40.169-11.8Zm1.346,2.363H40.136a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.105,5.105,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,41.515-9.439Zm1.526-5.793v8.484h1.395v-3.774a5.8,5.8,0,0,1,.164-1.452,2.784,2.784,0,0,1,.525-1.075,2.251,2.251,0,0,1,.952-.673,3.945,3.945,0,0,1,1.428-.23v-1.477a3.135,3.135,0,0,0-1.871.459,3.779,3.779,0,0,0-1.247,1.526h-.033v-1.789ZM54.15-11.8H49.276a2.905,2.905,0,0,1,.213-.927,2.473,2.473,0,0,1,.492-.763,2.255,2.255,0,0,1,.747-.517A2.429,2.429,0,0,1,51.7-14.2a2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,54.15-11.8ZM55.5-9.439H54.117a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.1,5.1,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,55.5-9.439Zm2.593-1.477a5.581,5.581,0,0,1,.131-1.214,3.212,3.212,0,0,1,.427-1.05,2.221,2.221,0,0,1,.788-.738,2.4,2.4,0,0,1,1.2-.279,2.589,2.589,0,0,1,1.231.271,2.389,2.389,0,0,1,.829.714,2.985,2.985,0,0,1,.468,1.026,4.889,4.889,0,0,1,.148,1.206,4.919,4.919,0,0,1-.139,1.165,3.053,3.053,0,0,1-.451,1.026,2.4,2.4,0,0,1-.8.73,2.4,2.4,0,0,1-1.2.279,2.491,2.491,0,0,1-1.173-.263,2.332,2.332,0,0,1-.82-.706,3.122,3.122,0,0,1-.476-1.009A4.338,4.338,0,0,1,58.088-10.916Zm6.564,4.168V-18.464H63.257V-14.1h-.033a2.247,2.247,0,0,0-.566-.632,3.216,3.216,0,0,0-.714-.41,3.583,3.583,0,0,0-.755-.222,4.132,4.132,0,0,0-.706-.066,3.861,3.861,0,0,0-1.7.353,3.487,3.487,0,0,0-1.214.952,4.018,4.018,0,0,0-.722,1.4,5.985,5.985,0,0,0-.238,1.707,5.8,5.8,0,0,0,.246,1.707,4.218,4.218,0,0,0,.73,1.411,3.529,3.529,0,0,0,1.214.968,3.827,3.827,0,0,0,1.715.361,4.135,4.135,0,0,0,1.625-.312A2.053,2.053,0,0,0,63.224-7.9h.033v1.149Zm6.761-11.716V-6.748h1.395V-7.88h.033a2.247,2.247,0,0,0,.566.632,2.982,2.982,0,0,0,.714.4,3.874,3.874,0,0,0,.763.213,4.193,4.193,0,0,0,.7.066,3.94,3.94,0,0,0,1.7-.345,3.4,3.4,0,0,0,1.214-.944,4.018,4.018,0,0,0,.722-1.4,5.985,5.985,0,0,0,.238-1.707,5.8,5.8,0,0,0-.246-1.707,4.312,4.312,0,0,0-.73-1.419,3.488,3.488,0,0,0-1.214-.976,3.827,3.827,0,0,0-1.715-.361,4.043,4.043,0,0,0-1.625.32,2.088,2.088,0,0,0-1.083,1.026h-.033v-4.381Zm6.564,7.4a5.581,5.581,0,0,1-.131,1.214,3.212,3.212,0,0,1-.427,1.05,2.243,2.243,0,0,1-.779.738,2.385,2.385,0,0,1-1.206.279A2.589,2.589,0,0,1,74.2-8.052a2.389,2.389,0,0,1-.829-.714,2.985,2.985,0,0,1-.468-1.026A4.889,4.889,0,0,1,72.758-11a4.919,4.919,0,0,1,.139-1.165,3.053,3.053,0,0,1,.451-1.026,2.4,2.4,0,0,1,.8-.73,2.4,2.4,0,0,1,1.2-.279,2.491,2.491,0,0,1,1.173.263,2.332,2.332,0,0,1,.82.706,3.122,3.122,0,0,1,.476,1.009A4.338,4.338,0,0,1,77.976-11.063Zm6.449,5.448a8.871,8.871,0,0,1-.484,1.05,2.871,2.871,0,0,1-.525.7,1.782,1.782,0,0,1-.64.394,2.462,2.462,0,0,1-.812.123,3.721,3.721,0,0,1-.492-.033A2.324,2.324,0,0,1,81-3.5v-1.28a2.342,2.342,0,0,0,.418.139,1.765,1.765,0,0,0,.4.057,1.2,1.2,0,0,0,.714-.205,1.255,1.255,0,0,0,.435-.583L83.539-6.8l-3.364-8.434h1.575L84.228-8.29h.033l2.379-6.941h1.477Z" transform="translate(17.85 28.4)"/></g></g></g><g transform="translate(0 0)"><g transform="translate(0 5.371)"><path d="M11.76,24.456A11.41,11.41,0,0,1,3.292,20.8,12.564,12.564,0,0,1,0,12.206,12.569,12.569,0,0,1,3.246,3.638,11.307,11.307,0,0,1,11.67,0a9.519,9.519,0,0,1,7.217,3V.759h8.264V23.7H18.887V21.148H18.8C17.478,23.219,14.846,24.456,11.76,24.456ZM13.849,7.064A5.023,5.023,0,0,0,8.537,12.25a4.95,4.95,0,0,0,5.312,5.141A4.95,4.95,0,0,0,19.16,12.25,5.023,5.023,0,0,0,13.849,7.064Z" transform="translate(27.277 11.038)" fill="#fff"/><path d="M0,33.931V.758H8.271v2.6H8.36A8.258,8.258,0,0,1,15.406,0,11.4,11.4,0,0,1,23.9,3.686a12.665,12.665,0,0,1,3.278,8.622,12.508,12.508,0,0,1-3.25,8.57,11.351,11.351,0,0,1-8.429,3.6,9.535,9.535,0,0,1-7.229-2.95V32.337L0,33.931ZM13.317,7.07A5.028,5.028,0,0,0,8,12.259a4.957,4.957,0,0,0,5.319,5.15,4.957,4.957,0,0,0,5.319-5.15A5.028,5.028,0,0,0,13.317,7.07Z" transform="translate(55.766 11.041)" fill="#fff"/><path d="M22.836,0l3.5,10.2.07.183a20.748,20.748,0,0,1,.988,3.43q.141-.731.364-1.532t.647-2.058L31.985,0h8.678L30.691,23.1H24.764L21.237,12.647q-.282-.891-.505-1.8t-.412-1.8A30.927,30.927,0,0,1,19.4,12.51l-.047.16L15.851,23.1H9.925L0,0H8.631l3.552,10.223q.4,1.121.635,1.955t.377,1.635a23.522,23.522,0,0,1,.917-3.179q.093-.274.141-.411L17.78,0h5.056" transform="translate(80.251 11.743)" fill="#fff"/><path d="M0,34.75V1.5L7.888,0V22.28l8.272-9.665H26.12L15.889,23.266,27.045,34.75H16.475L7.888,24.91v9.84H0" transform="translate(168.695 0)" fill="#fff"/><path d="M0,21.47l1.705-6.1a13.453,13.453,0,0,0,3.952,2.342A12.145,12.145,0,0,0,10,18.534a4.643,4.643,0,0,0,2.351-.482,1.539,1.539,0,0,0,.807-1.4q0-1.5-3.25-2.241-1.06-.246-1.705-.426A12.325,12.325,0,0,1,2.846,11.4,5.5,5.5,0,0,1,1.176,7.239,6.324,6.324,0,0,1,3.722,1.972,11,11,0,0,1,10.624,0a21.365,21.365,0,0,1,4.551.5,25.45,25.45,0,0,1,4.736,1.558l-1.706,5.49a14.24,14.24,0,0,0-3.319-1.636,10.6,10.6,0,0,0-3.364-.56A4.22,4.22,0,0,0,9.4,5.782a1.356,1.356,0,0,0-.714,1.233q0,1.211,3.227,2.04.737.2,1.106.291,4.264,1.188,5.935,2.79a5.728,5.728,0,0,1,1.671,4.337,6.782,6.782,0,0,1-2.743,5.614,11.478,11.478,0,0,1-7.259,2.14,22.565,22.565,0,0,1-5.693-.683A18.517,18.517,0,0,1,0,21.47" transform="translate(195.121 11.284)" fill="#fff"/><path d="M8.273,4.075h.091A8.13,8.13,0,0,1,15.909,0H17.5V7.834A6.8,6.8,0,0,0,14,7.074c-4.593,0-5.728,3-5.728,6.941v9.268H0V.313H8.273V4.075" transform="translate(150.08 11.469)" fill="#fff"/><path d="M17.392,29.929H13a.76.76,0,0,1-.485-.166.579.579,0,0,1-.227-.419l-.553-3.586a12.3,12.3,0,0,1-1.781-.721L7.163,27.123a.719.719,0,0,1-.495.176.687.687,0,0,1-.495-.214A25.873,25.873,0,0,1,2.91,23.81a.753.753,0,0,1,.019-.9c.2-.277.542-.713,1.009-1.3.483-.6.832-1.05,1.068-1.374a9.591,9.591,0,0,1-.811-1.929l-3.62-.526a.63.63,0,0,1-.416-.243A.729.729,0,0,1,0,17.089V12.762a.746.746,0,0,1,.159-.448.6.6,0,0,1,.376-.253l3.68-.546a9.5,9.5,0,0,1,.772-1.792C4.464,8.991,3.752,8.085,2.87,7.034a.732.732,0,0,1-.2-.468.82.82,0,0,1,.179-.449A19.622,19.622,0,0,1,4.8,4.023C5.751,3.1,6.38,2.631,6.668,2.631a.859.859,0,0,1,.515.194L9.913,4.91a11.536,11.536,0,0,1,1.8-.741A31.372,31.372,0,0,1,12.287.546.665.665,0,0,1,13,0h4.392a.755.755,0,0,1,.485.166.581.581,0,0,1,.229.419l.553,3.584a12.543,12.543,0,0,1,1.781.722L23.25,2.807a.641.641,0,0,1,.475-.176.775.775,0,0,1,.495.194,27.092,27.092,0,0,1,3.264,3.313.625.625,0,0,1,.139.429.745.745,0,0,1-.159.448c-.2.271-.525.695-1.008,1.3-.467.581-.827,1.043-1.069,1.373a11.784,11.784,0,0,1,.812,1.91l3.62.545a.625.625,0,0,1,.416.244.736.736,0,0,1,.157.458v4.325a.754.754,0,0,1-.157.449.606.606,0,0,1-.4.253l-3.66.545a12.628,12.628,0,0,1-.772,1.774c.465.654,1.177,1.559,2.117,2.688a.752.752,0,0,1,.2.488.648.648,0,0,1-.177.448,19.641,19.641,0,0,1-1.959,2.1c-.947.918-1.573,1.384-1.86,1.384a.978.978,0,0,1-.515-.176l-2.731-2.1a11.429,11.429,0,0,1-1.8.741,32.016,32.016,0,0,1-.573,3.624A.668.668,0,0,1,17.392,29.929ZM15.2,9.976a4.938,4.938,0,0,0-3.582,1.463,4.935,4.935,0,0,0,0,7.053,5.12,5.12,0,0,0,7.163,0,4.932,4.932,0,0,0,0-7.053A4.938,4.938,0,0,0,15.2,9.976Z" transform="translate(118.47 8.521)" fill="#fff"/><path d="M0,33.5,16.106,7.374H2.752V0H30.9L14.887,26.122H38.22L0,33.5" transform="translate(0 11.038)" fill="#fff"/></g><path d="M3.576-12.852v-4.3H6.628a2.867,2.867,0,0,1,1.945.55A2.034,2.034,0,0,1,9.188-15a2.06,2.06,0,0,1-.615,1.608,2.784,2.784,0,0,1-1.945.542ZM2.017-18.464V-6.748H3.576v-4.792H7.153a3.569,3.569,0,0,0,2.683-.9A3.478,3.478,0,0,0,10.747-15a3.45,3.45,0,0,0-.911-2.552,3.638,3.638,0,0,0-2.683-.911Zm11.421,7.483a4.221,4.221,0,0,1,.205-1.37,2.957,2.957,0,0,1,.566-1.009,2.411,2.411,0,0,1,.845-.624A2.515,2.515,0,0,1,16.08-14.2a2.515,2.515,0,0,1,1.026.213,2.411,2.411,0,0,1,.845.624,2.957,2.957,0,0,1,.566,1.009,4.221,4.221,0,0,1,.205,1.37,4.221,4.221,0,0,1-.205,1.37,2.867,2.867,0,0,1-.566,1,2.457,2.457,0,0,1-.845.615,2.515,2.515,0,0,1-1.026.213,2.515,2.515,0,0,1-1.026-.213,2.457,2.457,0,0,1-.845-.615,2.867,2.867,0,0,1-.566-1A4.221,4.221,0,0,1,13.438-10.981Zm-1.477,0a5.573,5.573,0,0,0,.263,1.739,3.97,3.97,0,0,0,.788,1.4,3.623,3.623,0,0,0,1.3.935,4.4,4.4,0,0,0,1.772.336A4.381,4.381,0,0,0,17.86-6.9a3.641,3.641,0,0,0,1.288-.935,3.97,3.97,0,0,0,.788-1.4,5.573,5.573,0,0,0,.263-1.739,5.65,5.65,0,0,0-.263-1.748,3.96,3.96,0,0,0-.788-1.411,3.729,3.729,0,0,0-1.288-.944,4.29,4.29,0,0,0-1.78-.345,4.3,4.3,0,0,0-1.772.345,3.71,3.71,0,0,0-1.3.944,3.96,3.96,0,0,0-.788,1.411A5.65,5.65,0,0,0,11.961-10.981Zm18.28,4.234,2.708-8.484H31.5L29.6-8.29h-.033L27.8-15.231H26.27L24.564-8.29h-.033l-1.92-6.941H21.068l2.724,8.484H25.3l1.707-6.744h.033l1.723,6.744ZM40.169-11.8H35.3a2.905,2.905,0,0,1,.213-.927A2.473,2.473,0,0,1,36-13.492a2.255,2.255,0,0,1,.747-.517,2.429,2.429,0,0,1,.976-.189,2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,40.169-11.8Zm1.346,2.363H40.136a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.105,5.105,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,41.515-9.439Zm1.526-5.793v8.484h1.395v-3.774a5.8,5.8,0,0,1,.164-1.452,2.784,2.784,0,0,1,.525-1.075,2.251,2.251,0,0,1,.952-.673,3.945,3.945,0,0,1,1.428-.23v-1.477a3.135,3.135,0,0,0-1.871.459,3.779,3.779,0,0,0-1.247,1.526h-.033v-1.789ZM54.15-11.8H49.276a2.905,2.905,0,0,1,.213-.927,2.473,2.473,0,0,1,.492-.763,2.255,2.255,0,0,1,.747-.517A2.429,2.429,0,0,1,51.7-14.2a2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,54.15-11.8ZM55.5-9.439H54.117a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.1,5.1,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,55.5-9.439Zm2.593-1.477a5.581,5.581,0,0,1,.131-1.214,3.212,3.212,0,0,1,.427-1.05,2.221,2.221,0,0,1,.788-.738,2.4,2.4,0,0,1,1.2-.279,2.589,2.589,0,0,1,1.231.271,2.389,2.389,0,0,1,.829.714,2.985,2.985,0,0,1,.468,1.026,4.889,4.889,0,0,1,.148,1.206,4.919,4.919,0,0,1-.139,1.165,3.053,3.053,0,0,1-.451,1.026,2.4,2.4,0,0,1-.8.73,2.4,2.4,0,0,1-1.2.279,2.491,2.491,0,0,1-1.173-.263,2.332,2.332,0,0,1-.82-.706,3.122,3.122,0,0,1-.476-1.009A4.338,4.338,0,0,1,58.088-10.916Zm6.564,4.168V-18.464H63.257V-14.1h-.033a2.247,2.247,0,0,0-.566-.632,3.216,3.216,0,0,0-.714-.41,3.583,3.583,0,0,0-.755-.222,4.132,4.132,0,0,0-.706-.066,3.861,3.861,0,0,0-1.7.353,3.487,3.487,0,0,0-1.214.952,4.018,4.018,0,0,0-.722,1.4,5.985,5.985,0,0,0-.238,1.707,5.8,5.8,0,0,0,.246,1.707,4.218,4.218,0,0,0,.73,1.411,3.529,3.529,0,0,0,1.214.968,3.827,3.827,0,0,0,1.715.361,4.135,4.135,0,0,0,1.625-.312A2.053,2.053,0,0,0,63.224-7.9h.033v1.149Zm6.761-11.716V-6.748h1.395V-7.88h.033a2.247,2.247,0,0,0,.566.632,2.982,2.982,0,0,0,.714.4,3.874,3.874,0,0,0,.763.213,4.193,4.193,0,0,0,.7.066,3.94,3.94,0,0,0,1.7-.345,3.4,3.4,0,0,0,1.214-.944,4.018,4.018,0,0,0,.722-1.4,5.985,5.985,0,0,0,.238-1.707,5.8,5.8,0,0,0-.246-1.707,4.312,4.312,0,0,0-.73-1.419,3.488,3.488,0,0,0-1.214-.976,3.827,3.827,0,0,0-1.715-.361,4.043,4.043,0,0,0-1.625.32,2.088,2.088,0,0,0-1.083,1.026h-.033v-4.381Zm6.564,7.4a5.581,5.581,0,0,1-.131,1.214,3.212,3.212,0,0,1-.427,1.05,2.243,2.243,0,0,1-.779.738,2.385,2.385,0,0,1-1.206.279A2.589,2.589,0,0,1,74.2-8.052a2.389,2.389,0,0,1-.829-.714,2.985,2.985,0,0,1-.468-1.026A4.889,4.889,0,0,1,72.758-11a4.919,4.919,0,0,1,.139-1.165,3.053,3.053,0,0,1,.451-1.026,2.4,2.4,0,0,1,.8-.73,2.4,2.4,0,0,1,1.2-.279,2.491,2.491,0,0,1,1.173.263,2.332,2.332,0,0,1,.82.706,3.122,3.122,0,0,1,.476,1.009A4.338,4.338,0,0,1,77.976-11.063Zm6.449,5.448a8.871,8.871,0,0,1-.484,1.05,2.871,2.871,0,0,1-.525.7,1.782,1.782,0,0,1-.64.394,2.462,2.462,0,0,1-.812.123,3.721,3.721,0,0,1-.492-.033A2.324,2.324,0,0,1,81-3.5v-1.28a2.342,2.342,0,0,0,.418.139,1.765,1.765,0,0,0,.4.057,1.2,1.2,0,0,0,.714-.205,1.255,1.255,0,0,0,.435-.583L83.539-6.8l-3.364-8.434h1.575L84.228-8.29h.033l2.379-6.941h1.477Z" transform="translate(0.722 18.464)" fill="#fff"/></g></g></g></svg>';function Tt(){var e=new T(2);return T!=Float32Array&&(e[0]=0,e[1]=0),e}function Rt(e,t){return e[0]=t[0],e[1]=t[1],e}function xt(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e}function kt(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e}function It(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e}function Lt(e){var t=e[0],r=e[1];return Math.hypot(t,r)}function St(){return{indices:new Uint16Array(0),vertices:new Float32Array(0),normals:new Float32Array(0),uvs:new Float32Array(0)}}function Mt(e){const t=2*e.trainedWidth/(e.trainedHeight*e.topRadius);return Ft(e,2,!1,0,0,0,Tt(),e.trainedWidth/e.trainedHeight,t,e.physicalScaleFactor)}function Ft(e,t,r,i,a,n,o,_,c,l){isNaN(_)&&(_=1);const d=[],h=[],u=l>0?l:1,f=2*u/t,p=64;for(let t=0;t<=p;++t){const i=t*c/p+(2*Math.PI-c)/2,a=e.bottomRadius*Math.sin(i)*f,n=e.bottomRadius*Math.cos(i)*f,o=e.topRadius*Math.sin(i)*f,s=e.topRadius*Math.cos(i)*f,_=-1*u,l=u;r?(d.push(a,_,n),d.push(o,l,s)):(d.push(o,l,-s),d.push(a,_,-n))}for(let t=0;t<=p;++t)if(e.type==s.IMAGE_TRACKER_TYPE_CYLINDRICAL){const e=1-t/p;h.push(e,1),h.push(e,0)}else{let e=2*-(t/p-.5)*i;r&&(e=-e+i,e>i&&(e=e-i-i));const s=Tt();s[0]=Math.sin(e),s[1]=Math.cos(e),r&&(s[1]*=-1);const c=Tt();Rt(c,s),It(c,c,a),xt(c,o,c);const l=Tt();Rt(l,s),It(l,l,n),xt(l,o,l),h.push((l[0]+_)/(2*_),1-(1-l[1])/2),h.push((c[0]+_)/(2*_),1-(1-c[1])/2)}const m=[];for(let e=0;e<p;++e){const t=2*e;m.push(t+1,t+2,t+3),m.push(t+0,t+2,t+1)}return{vertices:new Float32Array(d),indices:new Uint16Array(m),normals:new Float32Array(0),uvs:new Float32Array(h)}}Tt();const zt=new TextDecoder;class Pt{constructor(e,t=!1){this._data=e,this._paddingBytes=t,this.truncatedChunks=!1,this._view=new DataView(this._data),this.root=this._parse()}_parse(){if("RIFF"!==zt.decode(this._data.slice(0,4)))throw new Error("Not a valid ZPT file");return this._parseChunk(0)}_parseChunk(e){const t=zt.decode(this._data.slice(e,e+4)),r=this._view.getUint32(e+4,!0),i=new Uint8Array(this._data,e+8,r);let a,n;if(i.byteLength!==r&&(this.truncatedChunks=!0),"RIFF"===t||"LIST"===t){n=zt.decode(this._data.slice(e+8,e+12)),a=[];let t=4;for(;t<i.byteLength-1;){const r=this._parseChunk(e+8+t);a.push(r),t+=r.data.byteLength+8,this._paddingBytes&&1&r.data.byteLength&&t++}}return{ident:t,data:i,subident:n,subchunks:a}}find(e,t=this.root){if(t.ident===e)return t;if(t.subchunks)for(let r of t.subchunks){const t=this.find(e,r);if(t)return t}}has(e){return void 0!==this.find(e)}}let Ct=new Map;const Nt=new TextDecoder;class Ut{constructor(e,t){this._client=e,this._impl=t,this._targets=[]}static create(e,t){let r=t.image_tracker_create(e);return Ct.set(r,new Ut(t,r)),r}static get(e){return Ct.get(e)}destroy(){this._client.image_tracker_destroy(this._impl),Ct.delete(this._impl)}loadFromMemory(e){this._targets.push({data:e}),this._client.image_tracker_target_load_from_memory(this._impl,e)}targetCount(){return this._targets.length}getTargetInfo(e){let t=this._targets[e];if(t&&t.info)return t.info;t.info={topRadius:-1,bottomRadius:-1,sideLength:-1,physicalScaleFactor:-1,trainedWidth:0,trainedHeight:0,type:s.IMAGE_TRACKER_TYPE_PLANAR};try{const e=new Pt(t.data,!1),r=e.find("IMG ");if(r){let i="image/png";const a=e.find("IMGM");a&&(i=Nt.decode(a.data)),t.info.preview={mimeType:i,compressed:r.data}}const i=e.find("ODLE");if(i){const e=Nt.decode(i.data);this._parseOdle(e,t.info)}}catch(e){}return t.info}_parseOdle(e,t){let r=0,i="0";return[i,r]=Dt(r,e),"1"===i?this._parseOdleV1(e,r,t):"3"===i?this._parseOdleV3(e,r,t):void 0}_parseOdleV1(e,t,r){let i="0";if([i,t]=Dt(t,e),"0"!==i&&"1"!==i)return;let a="";if([a,t]=Dt(t,e),0!==a.length)return;let n="";[n,t]=Dt(t,e);const o=n.split(" ");o.length<5||(r.trainedWidth=parseInt(o[3].replace("[","")),r.trainedHeight=parseInt(o[4].replace("]","")))}_parseOdleV3(e,t,r){let i="0";if([i,t]=Dt(t,e),"0"!==i&&"1"!==i)return;let a="0";[a,t]=Dt(t,e);const n=parseInt(a);if(isNaN(n)||n<1)return;let o="";if([o,t]=Dt(t,e),0!==o.length)return;let s="";[s,t]=Dt(t,e);const _=s.split(" ");if(_.length<6)return;const c=parseInt(_[0]);0!==c&&1!==c&&2!==c||(r.type=c),r.trainedWidth=parseInt(_[4].replace("[","")),r.trainedHeight=parseInt(_[5].replace("]","")),_.length>=7&&(r.physicalScaleFactor=parseFloat(_[6]),isNaN(r.physicalScaleFactor)&&(r.physicalScaleFactor=-1)),_.length>=8&&(r.topRadius=parseFloat(_[7]),isNaN(r.topRadius)&&(r.topRadius=-1),r.bottomRadius=r.topRadius),_.length>=9&&(r.bottomRadius=parseFloat(_[8]),isNaN(r.bottomRadius)&&(r.bottomRadius=-1)),_.length>=10&&(r.sideLength=parseFloat(_[9]),isNaN(r.sideLength)&&(r.sideLength=-1))}getDecodedPreview(e){const t=this.getTargetInfo(e);if(t.preview){if(!t.preview.image){const e=new Blob([t.preview.compressed],{type:t.preview.mimeType});t.preview.image=new Image,t.preview.image.src=URL.createObjectURL(e)}return t.preview.image}}getPreviewMesh(e){const t=this.getTargetInfo(e);return t.previewMesh||(t.previewMesh=function(e){switch(e.type){case s.IMAGE_TRACKER_TYPE_PLANAR:return function(e){const t=e.trainedWidth/e.trainedHeight;if(isNaN(t))return St();const r=e.physicalScaleFactor>0?e.physicalScaleFactor:1;return{vertices:new Float32Array([-1*t*r,-1*r,0,-1*t*r,r,0,t*r,r,0,t*r,-1*r,0]),indices:new Uint16Array([0,2,1,0,3,2]),uvs:new Float32Array([0,0,0,1,1,1,1,0]),normals:new Float32Array([0,0,1,0,0,1,0,0,1,0,0,1])}}(e);case s.IMAGE_TRACKER_TYPE_CYLINDRICAL:return Mt(e);case s.IMAGE_TRACKER_TYPE_CONICAL:return function(e){const t=e.topRadius-e.bottomRadius;if(0===t)return console.warn("Conical target has matching radii, using cylindrical preview mesh with a defined image size instead."),Mt(e);const r=Math.sqrt(e.sideLength*e.sideLength-t*t),i=e.bottomRadius>e.topRadius;let a=e.trainedWidth/e.trainedHeight;isNaN(a)&&(a=1);const n=!(e.bottomRadius>0&&e.topRadius>0),o=e.sideLength<2*Math.abs(e.topRadius-e.bottomRadius),s=Tt(),_=Tt(),c=Tt();if(n)if(o)if(i){c[1]=a-1;const e=Math.acos((2-a)/a);s[0]=a*Math.sin(e),s[1]=a-1+a*Math.cos(e),Rt(_,c)}else{c[1]=1-a;const e=Math.PI+Math.acos((2-a)/a);s[0]=a*Math.sin(e),s[1]=1-a+a*Math.cos(e),Rt(_,c)}else i?(c[1]=1,Rt(_,c),s[0]=a,s[1]=1-Math.sqrt(4-Math.pow(a,2))):(c[1]=-1,Rt(_,c),s[0]=-a,s[1]=Math.sqrt(4-Math.pow(a,2))-1);else if(o)if(i){c[1]=a-1;const t=Math.acos((2-a)/a);s[0]=a*Math.sin(t),s[1]=a-1+a*Math.cos(t),_[0]=(a-e.sideLength)*Math.sin(t),_[1]=a-1+(a-e.sideLength)*Math.cos(t)}else{c[1]=1-a;const t=Math.PI+Math.acos((2-a)/a);s[0]=a*Math.sin(t),s[1]=1-a+a*Math.cos(t),_[0]=(a-e.sideLength)*Math.sin(t),_[1]=1-a+(a-e.sideLength)*Math.cos(t)}else{const t=i?e.topRadius/e.bottomRadius:e.bottomRadius/e.topRadius;i?(_[0]=t*a,_[1]=1,s[0]=a,s[1]=1-Math.sqrt(e.sideLength*e.sideLength-(_[0]-s[0])*(_[0]-s[0])),c[1]=s[1]+s[0]/(s[0]-_[0])*(_[1]-s[1])):(_[0]=-t*a,_[1]=-1,s[0]=-a,s[1]=Math.sqrt(e.sideLength*e.sideLength-(_[0]-s[0])*(_[0]-s[0]))-1,c[1]=s[1]- -s[0]/(_[0]-s[0])*(s[1]-_[1]))}const l=Tt();kt(l,s,c);const d=Tt();kt(d,_,c);const h=Lt(l),u=Lt(d);let f=2*Math.abs(Math.atan(l[0]/l[1]));o&&(f=2*Math.PI-f);let p=h*f/e.topRadius,m=Math.abs(Math.atan(l[0]/l[1]));return o&&(m=Math.PI-m),Ft(e,r,i,m,u,h,c,a,p,e.physicalScaleFactor)}(e)}return St()}(t)),t.previewMesh}}function Dt(e,t){let r=t.indexOf("\n",e);return[t.substring(e,r>=0?r:void 0).replace("\r",""),r+1]}let Bt,Ot,Vt;let jt="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 projMatrix;\nuniform mat4 cameraMatrix;\nuniform mat4 modelViewMatrix;\nattribute vec4 position;\nattribute vec2 textureCoord;\n\nvarying highp vec2 vTextureCoord;\n\nvoid main()\n{\n gl_Position = projMatrix * cameraMatrix * modelViewMatrix * position;\n vTextureCoord = textureCoord;\n}",Gt="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying highp vec2 vTextureCoord;\nuniform sampler2D skinSampler;\n\nvoid main()\n{\n vec2 pixels = 100.0 * vTextureCoord + 0.5;\n if ((int(mod(pixels.x, 10.0)) == 0) || (int(mod(pixels.y, 10.0)) == 0)) {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\n } else {\n discard;\n }\n}";var Wt=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};let Ht;function Yt(e){if(Ht)return Ht;let t=!1;(function(e){return Y(this,void 0,void 0,(function*(){var t;function i(){let t=X.getOutgoingMessages();for(let r of t)e.postMessage(r.msg,r.transferables)}e||(e=new Worker(new URL(r.p+r.u(751),r.b),{type:void 0})),e.postMessage({t:"wasm",url:new URL(r(751),r.b).toString(),module:yield Z,shouldRecordData:window.location.href.indexOf("_zrecorddata")>=0}),yield(t=e,new Promise((e=>{let r=i=>{"loaded"===i.data&&(t.removeEventListener("message",r),e())};t.addEventListener("message",r)}))),X.onOutgoingMessage.bind(i),i(),e.addEventListener("message",(e=>{X.postIncomingMessage(e.data)}))}))})(null==e?void 0:e.worker).then((()=>{ge("Fully loaded"),t=!0}));let i=new h((e=>{X.postOutgoingMessage({t:"zappar",d:e},[e])}));const a=function(){let e=window.localStorage.getItem("z_uar_lid");if(null===e){const t=new Uint8Array(8);window.crypto.getRandomValues(t),e="";for(let r=0;r<t.byteLength;r++){const i=t[r].toString(16);1===i.length?e+="0"+i:2===i.length&&(e+=i)}}return e}();let n=!1;if(window.location.hostname.toLowerCase().indexOf(".zappar.io")>0||window.location.hostname.toLowerCase().indexOf(".webar.run")>0||window.location.hostname.toLowerCase().indexOf(".arweb.app")>0){let e=window.location.pathname.split("/");e.length>1&&e[1].length>0&&i.impl.analytics_project_id_set(".wiz"+e[1],a)}return X.onIncomingMessage.bind((e=>{var t,a,n,o,s,_,c,l;switch(e.t){case"zappar":null===(t=ht.get(e.p))||void 0===t||t.pendingMessages.push(e.d);break;case"buf":i.serializer.bufferReturn(e.d);break;case"cameraFrameRecycleS2C":{let t=e;null===(n=null===(a=ht.get(t.p))||void 0===a?void 0:a.cameraTokenReturn)||void 0===n||n.call(a,e);break}case"videoFrameS2C":{let t=e;null===(s=null===(o=ht.get(t.p))||void 0===o?void 0:o.videoFrameFromWorker)||void 0===s||s.call(o,t);break}case"imageBitmapS2C":{let t=e;null===(c=null===(_=ht.get(t.p))||void 0===_?void 0:_.imageBitmapFromWorker)||void 0===c||c.call(_,t);break}case"raw":{let t=e;null===(l=ht.get(t.p))||void 0===l||l.cameraFrameDataRawResult(t);break}case"streamEndedS2C":{const t=at(e.source);t instanceof et&&t.streamEnded();break}case"setupCeresWorker":!function(e,t){Y(this,void 0,void 0,(function*(){t||(t=new Worker(new URL(r.p+r.u(25),r.b),{type:void 0})),t.postMessage({t:"wasm",url:new URL(r(751),r.b).toString(),module:yield Z,port:e},[e])}))}(e.port);break;case"_z_datadownload":{let t=new Blob([e.data],{type:"application/octet-stream"}),r=URL.createObjectURL(t),i=document.createElement("a");i.download="sequencedata.bin",i.href=r,i.click();break}case"licerr":{let e=document.createElement("div");e.innerHTML="Visit <a href='https://docs.zap.works/universal-ar/licensing/' style='color: white;'>our licensing page</a> to find out about hosting on your own domain.",e.style.position="absolute",e.style.bottom="20px",e.style.width="80%",e.style.backgroundColor="black",e.style.color="white",e.style.borderRadius="10px",e.style.padding="10px",e.style.fontFamily="sans-serif",e.style.textAlign="center",e.style.left="10%",e.style.zIndex=Number.MAX_SAFE_INTEGER.toString();let t=document.createElement("span");t.innerText=" (30)",e.append(t);let r=30;setInterval((function(){r--,r>=0&&(t.innerText=" ("+r.toString()+")")}),1e3),document.body.append(e)}case"gfx":{let e=document.createElement("div");e.innerHTML=At,e.style.position="absolute",e.style.bottom="20px",e.style.width="250px",e.style.left="50%",e.style.marginLeft="-125px",e.style.zIndex=Number.MAX_SAFE_INTEGER.toString(),e.style.opacity="0",e.style.transition="opacity 0.5s",document.body.append(e),setTimeout((function(){e.style.opacity="1"}),500),setTimeout((function(){e.style.opacity="0"}),3e3),setTimeout((function(){e.remove()}),4e3)}}})),Ht=Object.assign(Object.assign({},i.impl),{loaded:()=>t,camera_default_device_id:e=>e?Ke.USER_DEFAULT_DEVICE_ID:Ke.DEFAULT_DEVICE_ID,camera_source_create:(e,t)=>function(e,t){let r=tt++;return U.preferMediaStreamTrackProcessorCamera&&"MediaStreamTrackProcessor"in window&&"MediaStreamTrackGenerator"in window?it(r,new et(r,e,t)):U.preferImageBitmapCamera&&"undefined"!=typeof OffscreenCanvas?it(r,new Qe(r,e,t)):it(r,new Ke(r,e,t)),ge("camera_source_t initialized"),r}(e,t),camera_source_destroy:e=>{var t;return null===(t=at(e))||void 0===t?void 0:t.destroy()},camera_source_pause:e=>{var t;return null===(t=at(e))||void 0===t?void 0:t.pause()},camera_source_start:e=>{var t;return null===(t=at(e))||void 0===t?void 0:t.start()},camera_source_profile_set:(e,t)=>{var r;return null===(r=at(e))||void 0===r?void 0:r.setProfile(t)},camera_count:()=>2,camera_id:e=>0===e?Ke.DEFAULT_DEVICE_ID:Ke.USER_DEFAULT_DEVICE_ID,camera_name:e=>0===e?"Rear-facing Camera":"User-facing Camera",camera_user_facing:e=>0!==e,pose_from_raw:(e,t)=>{let r=ut(void 0,e);if(t){let e=R();L(e,[-1,1,1]),k(r,e,r),k(r,r,e)}return r},pipeline_create:()=>ht.create(i.impl,X),pipeline_frame_update:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.frameUpdate(i)},pipeline_camera_frame_draw_gl:(e,t,r,i)=>{var a;null===(a=ht.get(e))||void 0===a||a.cameraFrameDrawGL(t,r,i)},pipeline_camera_frame_data_width:e=>{var t,r;const i=null===(t=ht.get(e))||void 0===t?void 0:t.getCurrentCameraInfo();return null!==(r=null==i?void 0:i.dataWidth)&&void 0!==r?r:0},pipeline_camera_frame_data_height:e=>{var t,r;const i=null===(t=ht.get(e))||void 0===t?void 0:t.getCurrentCameraInfo();return null!==(r=null==i?void 0:i.dataHeight)&&void 0!==r?r:0},draw_plane:(e,t,r,i,a)=>{!function(e,t,r,i,a){let n=y(e),o=function(e){if(m)return m;if(m=e.createBuffer(),!m)throw new Error("Unable to create buffer object");return e.bindBuffer(e.ARRAY_BUFFER,m),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-.5,.125,0,-.5,-.125,0,.5,.125,0,.5,-.125,0]),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),m}(e),s=w(e);e.disable(e.DEPTH_TEST),e.useProgram(n.prog),e.uniformMatrix4fv(n.unif_proj,!1,t),e.uniformMatrix4fv(n.unif_camera,!1,r),e.uniformMatrix4fv(n.unif_matrix,!1,i),e.bindBuffer(e.ARRAY_BUFFER,o),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,function(e,t){if(g[t])return g[t];let r=e.createTexture();if(!r)throw new Error("Unable to create texture");g[t]=r,e.bindTexture(e.TEXTURE_2D,r);const i=e.RGBA,a=e.RGBA,n=e.UNSIGNED_BYTE,o=new Uint8Array([0,0,255,255]);e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,i,1,1,0,a,n,o);const s=new Image;return s.onload=function(){e.bindTexture(e.TEXTURE_2D,r),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,i,a,n,s),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR)},s.src=t,r}(e,a)),e.uniform1i(n.unif_skinSampler,0),e.vertexAttribPointer(n.attr_position,3,e.FLOAT,!1,12,0),e.enableVertexAttribArray(n.attr_position),e.bindBuffer(e.ARRAY_BUFFER,s),e.vertexAttribPointer(n.attr_textureCoord,2,e.FLOAT,!1,8,0),e.enableVertexAttribArray(n.attr_textureCoord),e.drawArrays(e.TRIANGLE_STRIP,0,4),e.disableVertexAttribArray(n.attr_position),e.disableVertexAttribArray(n.attr_textureCoord),e.bindBuffer(e.ARRAY_BUFFER,null)}(e,t,r,i,a)},draw_grid:(e,t,r,i)=>{!function(e,t,r,i){let a=function(e){if(Bt)return Bt;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,jt),i=u(e,e.FRAGMENT_SHADER,Gt);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"projMatrix");if(!a)throw new Error("Unable to get uniform location projMatrix");let n=e.getUniformLocation(t,"modelViewMatrix");if(!n)throw new Error("Unable to get uniform location modelViewMatrix");let o=e.getUniformLocation(t,"cameraMatrix");if(!o)throw new Error("Unable to get uniform location cameraMatrix");return Bt={prog:t,unif_matrix:n,unif_proj:a,unif_camera:o,attr_position:e.getAttribLocation(t,"position"),attr_textureCoord:e.getAttribLocation(t,"textureCoord")},Bt}(e),n=function(e){if(Ot)return Ot;if(Ot=e.createBuffer(),!Ot)throw new Error("Unable to create buffer object");return e.bindBuffer(e.ARRAY_BUFFER,Ot),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-.5,0,.5,-.5,0,-.5,.5,0,.5,.5,0,-.5]),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),Ot}(e),o=function(e){if(Vt)return Vt;if(Vt=e.createBuffer(),!Vt)throw new Error("Unable to create buffer object");return e.bindBuffer(e.ARRAY_BUFFER,Vt),e.bufferData(e.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,1,1,0]),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),Vt}(e);e.disable(e.DEPTH_TEST),e.useProgram(a.prog),e.uniformMatrix4fv(a.unif_proj,!1,t),e.uniformMatrix4fv(a.unif_camera,!1,r),e.uniformMatrix4fv(a.unif_matrix,!1,i),e.bindBuffer(e.ARRAY_BUFFER,n),e.vertexAttribPointer(a.attr_position,3,e.FLOAT,!1,12,0),e.enableVertexAttribArray(a.attr_position),e.bindBuffer(e.ARRAY_BUFFER,o),e.vertexAttribPointer(a.attr_textureCoord,2,e.FLOAT,!1,8,0),e.enableVertexAttribArray(a.attr_textureCoord),e.drawArrays(e.TRIANGLE_STRIP,0,4),e.disableVertexAttribArray(a.attr_position),e.disableVertexAttribArray(a.attr_textureCoord),e.bindBuffer(e.ARRAY_BUFFER,null)}(e,t,r,i)},pipeline_draw_face:(e,t,r,i,a)=>{var n;let o=Ae(a);if(!o)return ve("attempting to call draw_face on a destroyed zappar_face_mesh_t"),new Uint16Array;null===(n=ht.get(e))||void 0===n||n.drawFace(t,r,i,o)},pipeline_draw_face_project:(e,t,r,i,a,n,o)=>{var s;null===(s=ht.get(e))||void 0===s||s.drawFaceProject(t,r,i,a,n,o)},pipeline_draw_image_target_preview:(e,t,r,i,a,n)=>{var o;let s=Ut.get(a);s?null===(o=ht.get(e))||void 0===o||o.drawImageTargetPreview(t,r,i,n,s):ve("image tracker not found")},projection_matrix_from_camera_model:j,projection_matrix_from_camera_model_ext:j,pipeline_process_gl:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.processGL()},pipeline_gl_context_set:(e,t,r)=>{var i;return null===(i=ht.get(e))||void 0===i?void 0:i.glContextSet(t,r)},pipeline_gl_context_lost:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.glContextLost()},pipeline_camera_frame_upload_gl:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.uploadGL()},pipeline_camera_frame_texture_gl:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.cameraFrameTexture()},pipeline_camera_frame_texture_matrix:(e,t,r,i)=>{var a;return(null===(a=ht.get(e))||void 0===a?void 0:a.cameraFrameTextureMatrix(t,r,i))||R()},pipeline_camera_frame_user_facing:e=>{var t;return(null===(t=ht.get(e))||void 0===t?void 0:t.cameraFrameUserFacing())||!1},pipeline_camera_pose_default:()=>R(),pipeline_camera_pose_with_attitude:(e,t)=>{var r;return(null===(r=ht.get(e))||void 0===r?void 0:r.cameraPoseWithAttitude(t))||R()},pipeline_camera_pose_with_origin:(e,t)=>{let r=R();return x(r,t),r},pipeline_sequence_record_clear:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.sequenceRecordClear()},pipeline_sequence_record_start:(e,t)=>{var r;return null===(r=ht.get(e))||void 0===r?void 0:r.sequenceRecordStart(t)},pipeline_sequence_record_stop:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.sequenceRecordStop()},pipeline_sequence_record_device_attitude_matrices_set:(e,t)=>{var r;return null===(r=ht.get(e))||void 0===r?void 0:r.sequenceRecordDeviceAttitudeMatrices(t)},pipeline_sequence_record_data:e=>{var t;return(null===(t=ht.get(e))||void 0===t?void 0:t.sequenceRecordData())||new Uint8Array(0)},pipeline_sequence_record_data_size:e=>{var t;return(null===(t=ht.get(e))||void 0===t?void 0:t.sequenceRecordData().byteLength)||0},pipeline_camera_frame_data_raw:e=>{var t;return(null===(t=ht.get(e))||void 0===t?void 0:t.getCameraFrameDataRaw())||Promise.reject()},pipeline_camera_frame_data_raw_enabled_set:(e,t)=>{var r;return null===(r=ht.get(e))||void 0===r?void 0:r.setCameraFrameDataRawEnabled(t)},instant_world_tracker_anchor_pose_camera_relative:(e,t)=>{let r=ut(void 0,i.impl.instant_world_tracker_anchor_pose_raw(e));if(t){let e=R();L(e,[-1,1,1]),k(r,e,r),k(r,r,e)}return r},instant_world_tracker_anchor_pose:(e,t,r)=>{let a=ut(void 0,i.impl.instant_world_tracker_anchor_pose_raw(e));if(r){let e=R();L(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return k(a,t,a),a},instant_world_tracker_anchor_pose_set_from_camera_offset:(e,t,r,a,n)=>{let o=G(!1)*Math.PI/180,s=R();S(s,-o,[0,0,1]);let _=M();P(_,[t,r,a],s),i.impl.instant_world_tracker_anchor_pose_set_from_camera_offset_raw(e,_[0],_[1],_[2],n)},image_tracker_create:e=>Ut.create(e,i.impl),image_tracker_destroy:e=>{var t;return null===(t=Ut.get(e))||void 0===t?void 0:t.destroy()},image_tracker_target_type:(e,t)=>{let r=Ut.get(e);return r?r.getTargetInfo(t).type:(ve("attempting to call image_tracker_target_type on a destroyed zappar_image_tracker_t"),s.IMAGE_TRACKER_TYPE_PLANAR)},image_tracker_target_count:e=>{let t=Ut.get(e);return t?t.targetCount():(ve("attempting to call image_tracker_target_count on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_load_from_memory:(e,t)=>{let r=Ut.get(e);if(!r)return ve("attempting to call image_tracker_target_load_from_memory on a destroyed zappar_image_tracker_t"),0;r.loadFromMemory(t)},image_tracker_target_preview_compressed:(e,t)=>{var r;let i=Ut.get(e);return i?(null===(r=i.getTargetInfo(t).preview)||void 0===r?void 0:r.compressed)||new Uint8Array(0):(ve("attempting to call image_tracker_target_preview_compressed on a destroyed zappar_image_tracker_t"),new Uint8Array(0))},image_tracker_target_preview_compressed_mimetype:(e,t)=>{var r;let i=Ut.get(e);return i?(null===(r=i.getTargetInfo(t).preview)||void 0===r?void 0:r.mimeType)||"":(ve("attempting to call image_tracker_target_preview_compressed_mimetype on a destroyed zappar_image_tracker_t"),"")},image_tracker_target_preview_compressed_size:(e,t)=>{var r,i;let a=Ut.get(e);return a?(null===(i=null===(r=a.getTargetInfo(t).preview)||void 0===r?void 0:r.compressed)||void 0===i?void 0:i.byteLength)||0:(ve("attempting to call image_tracker_target_preview_compressed_size on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_physical_scale_factor:(e,t)=>{let r=Ut.get(e);return r?r.getTargetInfo(t).physicalScaleFactor:(ve("attempting to call image_tracker_target_physical_scale_factor on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_radius_top:(e,t)=>{let r=Ut.get(e);return r?r.getTargetInfo(t).topRadius:(ve("attempting to call image_tracker_target_radius_top on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_radius_bottom:(e,t)=>{let r=Ut.get(e);return r?r.getTargetInfo(t).bottomRadius:(ve("attempting to call image_tracker_target_radius_bottom on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_side_length:(e,t)=>{let r=Ut.get(e);return r?r.getTargetInfo(t).sideLength:(ve("attempting to call image_tracker_target_side_length on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_image:(e,t)=>{let r=Ut.get(e);return r?r.getDecodedPreview(t):(ve("attempting to call image_tracker_target_image on a destroyed zappar_image_tracker_t"),new Image)},image_tracker_anchor_pose_camera_relative:(e,t,r)=>{let a=ut(void 0,i.impl.image_tracker_anchor_pose_raw(e,t));if(r){let e=R();L(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return a},image_tracker_anchor_pose:(e,t,r,a)=>{let n=ut(void 0,i.impl.image_tracker_anchor_pose_raw(e,t));if(a){let e=R();L(e,[-1,1,1]),k(n,e,n),k(n,n,e)}return k(n,r,n),n},image_tracker_target_preview_mesh_indices:(e,t)=>{let r=Ut.get(e);return r?r.getPreviewMesh(t).indices:(ve("attempting to call image_tracker_target_preview_mesh_indices on a destroyed zappar_image_tracker_t"),new Uint16Array)},image_tracker_target_preview_mesh_vertices:(e,t)=>{let r=Ut.get(e);return r?r.getPreviewMesh(t).vertices:(ve("attempting to call image_tracker_target_preview_mesh_vertices on a destroyed zappar_image_tracker_t"),new Float32Array)},image_tracker_target_preview_mesh_uvs:(e,t)=>{let r=Ut.get(e);return r?r.getPreviewMesh(t).uvs:(ve("attempting to call image_tracker_target_preview_mesh_uvs on a destroyed zappar_image_tracker_t"),new Float32Array)},image_tracker_target_preview_mesh_normals:(e,t)=>{let r=Ut.get(e);return r?r.getPreviewMesh(t).normals:(ve("attempting to call image_tracker_target_preview_mesh_normals on a destroyed zappar_image_tracker_t"),new Float32Array)},image_tracker_target_preview_mesh_indices_size:(e,t)=>{let r=Ut.get(e);return r?r.getPreviewMesh(t).indices.length:(ve("attempting to call image_tracker_target_preview_mesh_indices_size on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_preview_mesh_vertices_size:(e,t)=>{let r=Ut.get(e);return r?r.getPreviewMesh(t).vertices.length:(ve("attempting to call image_tracker_target_preview_mesh_vertices_size on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_preview_mesh_uvs_size:(e,t)=>{let r=Ut.get(e);return r?r.getPreviewMesh(t).uvs.length:(ve("attempting to call image_tracker_target_preview_mesh_uvs_size on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_preview_mesh_normals_size:(e,t)=>{let r=Ut.get(e);return r?r.getPreviewMesh(t).normals.length:(ve("attempting to call image_tracker_target_preview_mesh_normals_size on a destroyed zappar_image_tracker_t"),0)},zapcode_tracker_anchor_pose_camera_relative:(e,t,r)=>{let a=ut(void 0,i.impl.zapcode_tracker_anchor_pose_raw(e,t));if(r){let e=R();L(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return a},zapcode_tracker_anchor_pose:(e,t,r,a)=>{let n=ut(void 0,i.impl.zapcode_tracker_anchor_pose_raw(e,t));if(a){let e=R();L(e,[-1,1,1]),k(n,e,n),k(n,n,e)}return k(n,r,n),n},face_tracker_anchor_pose_camera_relative:(e,t,r)=>{let a=ut(void 0,i.impl.face_tracker_anchor_pose_raw(e,t));if(r){let e=R();L(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return a},face_tracker_anchor_pose:(e,t,r,a)=>{let n=ut(void 0,i.impl.face_tracker_anchor_pose_raw(e,t));if(a){let e=R();L(e,[-1,1,1]),k(n,e,n),k(n,n,e)}return k(n,r,n),n},face_tracker_model_load_default:e=>Wt(this,void 0,void 0,(function*(){yield function(e){return Wt(this,void 0,void 0,(function*(){let t=new URL(r(367),r.b),i=yield fetch(t.toString()),a=yield i.arrayBuffer();null==Ht||Ht.face_tracker_model_load_from_memory(e,a)}))}(e)})),face_mesh_create:()=>function(){let e=Ee++;return ye.set(e,new Te),ge("face_mesh_t initialized"),e}(),face_mesh_destroy:e=>{!function(e){ye.delete(e)}(e)},face_mesh_indices:e=>{let t=Ae(e);return t?t.getIndices():(ve("attempting to call face_mesh_indices on a destroyed zappar_face_mesh_t"),new Uint16Array)},face_mesh_indices_size:e=>{let t=Ae(e);return t?t.getIndices().length:(ve("attempting to call face_mesh_indices_size on a destroyed zappar_face_mesh_t"),0)},face_mesh_uvs:e=>{let t=Ae(e);return t?t.getUVs():(ve("attempting to call face_mesh_uvs on a destroyed zappar_face_mesh_t"),new Float32Array)},face_mesh_uvs_size:e=>{let t=Ae(e);return t?t.getUVs().length:(ve("attempting to call face_mesh_uvs_size on a destroyed zappar_face_mesh_t"),0)},face_mesh_vertices:e=>{let t=Ae(e);return t?t.getVertices():(ve("attempting to call face_mesh_vertices on a destroyed zappar_face_mesh_t"),new Float32Array)},face_mesh_vertices_size:e=>{let t=Ae(e);return t?t.getVertices().length:(ve("attempting to call face_mesh_vertices_size on a destroyed zappar_face_mesh_t"),0)},face_mesh_normals:e=>{let t=Ae(e);return t?t.getNormals():(ve("attempting to call face_mesh_normals on a destroyed zappar_face_mesh_t"),new Float32Array)},face_mesh_normals_size:e=>{let t=Ae(e);return t?t.getNormals().length:(ve("attempting to call face_mesh_normals_size on a destroyed zappar_face_mesh_t"),0)},face_mesh_load_from_memory:(e,t,r,i,a,n)=>{let o=Ae(e);o?o.loadFromMemory(t,r,i,a,n):ve("attempting to call face_mesh_load_from_memory on a destroyed zappar_face_mesh_t")},face_mesh_update:(e,t,r,i)=>{let a=Ae(e);a?a.update(t,r,i):ve("attempting to call face_mesh_update on a destroyed zappar_face_mesh_t")},face_mesh_load_default:e=>Wt(this,void 0,void 0,(function*(){let t=Ae(e);if(!t)return void ve("attempting to call face_mesh_load_default on a destroyed zappar_face_mesh_t");let i=new URL(r(698),r.b),a=yield fetch(i.toString());t.loadFromMemory(yield a.arrayBuffer(),!1,!1,!1,!1)})),face_mesh_load_default_face:(e,t,i,a)=>Wt(this,void 0,void 0,(function*(){let n=Ae(e);if(!n)return void ve("attempting to call face_mesh_load_default_face on a destroyed zappar_face_mesh_t");let o=new URL(r(698),r.b),s=yield fetch(o.toString());n.loadFromMemory(yield s.arrayBuffer(),t,i,a,!1)})),face_mesh_load_default_full_head_simplified:(e,t,i,a,n)=>Wt(this,void 0,void 0,(function*(){let o=Ae(e);if(!o)return void ve("attempting to call face_mesh_load_default_full_head_simplified on a destroyed zappar_face_mesh_t");let s=new URL(r(825),r.b),_=yield fetch(s.toString());o.loadFromMemory(yield _.arrayBuffer(),t,i,a,n)})),face_mesh_loaded_version:e=>{let t=Ae(e);return t?t.getModelVersion():(ve("attempting to call face_mesh_load_default on a destroyed zappar_face_mesh_t"),-1)},face_landmark_create:e=>function(e){let t=pt++;return mt.set(t,new gt(e)),ge("face_landmark_t initialized"),t}(e),face_landmark_destroy:e=>{!function(e){mt.delete(e)}(e)},face_landmark_update:(e,t,r,i)=>{let a=bt(e);a?a.update(t,r,i):ve("attempting to call face_landmark_update on a destroyed zappar_face_landmark_t")},face_landmark_anchor_pose:e=>{let t=bt(e);return t?t.anchor_pose:(ve("attempting to call face_landmark_anchor_pose on a destroyed zappar_face_landmark_t"),R())},world_tracker_plane_pose_camera_relative:(e,t,r)=>{let a=ut(void 0,i.impl.world_tracker_plane_pose_raw(e,t));if(r){let e=R();L(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return a},world_tracker_plane_pose:(e,t,r,a)=>{let n=ut(void 0,i.impl.world_tracker_plane_pose_raw(e,t));if(a){let e=R();L(e,[-1,1,1]),k(n,e,n),k(n,n,e)}return k(n,r,n),n},world_tracker_world_anchor_pose:(e,t,r)=>{let a=ut(void 0,i.impl.world_tracker_world_anchor_pose_raw(e));if(r){let e=R();L(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return k(a,t,a),a},world_tracker_world_anchor_pose_camera_relative:(e,t)=>{let r=ut(void 0,i.impl.world_tracker_world_anchor_pose_raw(e));if(t){let e=R();L(e,[-1,1,1]),k(r,e,r),k(r,r,e)}return r},world_tracker_ground_anchor_pose:(e,t,r)=>{let a=ut(void 0,i.impl.world_tracker_ground_anchor_pose_raw(e));if(r){let e=R();L(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return k(a,t,a),a},world_tracker_ground_anchor_pose_camera_relative:(e,t)=>{let r=ut(void 0,i.impl.world_tracker_ground_anchor_pose_raw(e));if(t){let e=R();L(e,[-1,1,1]),k(r,e,r),k(r,r,e)}return r},html_element_source_create:(e,t)=>Xe.createVideoElementSource(e,t),html_element_source_start:e=>{var t;return null===(t=Xe.getVideoElementSource(e))||void 0===t?void 0:t.start()},html_element_source_pause:e=>{var t;return null===(t=Xe.getVideoElementSource(e))||void 0===t?void 0:t.pause()},html_element_source_destroy:e=>{var t;return null===(t=Xe.getVideoElementSource(e))||void 0===t?void 0:t.destroy()},sequence_source_create:e=>yt.create(e),sequence_source_load_from_memory:(e,t)=>{var r;return null===(r=yt.get(e))||void 0===r?void 0:r.loadFromMemory(t)},sequence_source_pause:e=>{var t;return null===(t=yt.get(e))||void 0===t?void 0:t.pause()},sequence_source_start:e=>{var t;return null===(t=yt.get(e))||void 0===t?void 0:t.start()},sequence_source_max_playback_fps_set:(e,t)=>{var r;return null===(r=yt.get(e))||void 0===r?void 0:r.maxPlaybackFpsSet(t)},sequence_source_time_set:(e,t)=>{var r;return null===(r=yt.get(e))||void 0===r?void 0:r.setTime(t)},sequence_source_destroy:e=>{var t;return null===(t=yt.get(e))||void 0===t?void 0:t.destroy()},permission_granted_all:de,permission_granted_camera:oe,permission_granted_motion:se,permission_denied_any:le,permission_denied_camera:_e,permission_denied_motion:ce,permission_request_motion:fe,permission_request_camera:ue,permission_request_all:he,permission_request_ui:pe,permission_request_ui_promise:pe,permission_denied_ui:me,browser_incompatible:wt.incompatible,browser_incompatible_ui:wt.incompatible_ui,log_level_set:e=>{!function(e){be=e}(e),i.impl.log_level_set(e)},cookies_permitted:e=>{var t;e?n||(t=a,window.localStorage.setItem("z_uar_lid",t),n=!0):window.localStorage.removeItem("z_uar_lid")}}),Ht}const Xt="3.0.1-alpha.7";function Zt(e){return function(e){return console.log(`Zappar CV v${Xt}`),Yt(e)}(Object.assign(Object.assign({},e),{worker:(null==e?void 0:e.worker)||new(r(276).Z)}))}})(),i})()));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ZCV=t():e.ZCV=t()}(self,(()=>(()=>{var e={238:function(e,t,r){var i;!function(a,n){"use strict";var o="function",s="undefined",_="object",c="string",l="model",d="name",h="type",u="vendor",f="version",p="architecture",m="console",b="mobile",g="tablet",v="smarttv",E="wearable",w="embedded",y="Amazon",A="Apple",T="ASUS",R="BlackBerry",x="Browser",k="Chrome",S="Firefox",N="Google",I="Huawei",L="LG",F="Microsoft",M="Motorola",z="Opera",P="Samsung",C="Sharp",D="Sony",j="Xiaomi",U="Zebra",B="Facebook",O=function(e){for(var t={},r=0;r<e.length;r++)t[e[r].toUpperCase()]=e[r];return t},V=function(e,t){return typeof e===c&&-1!==G(t).indexOf(G(e))},G=function(e){return e.toLowerCase()},K=function(e,t){if(typeof e===c)return e=e.replace(/^\s\s*/,""),typeof t===s?e:e.substring(0,350)},W=function(e,t){for(var r,i,a,s,c,l,d=0;d<t.length&&!c;){var h=t[d],u=t[d+1];for(r=i=0;r<h.length&&!c;)if(c=h[r++].exec(e))for(a=0;a<u.length;a++)l=c[++i],typeof(s=u[a])===_&&s.length>0?2===s.length?typeof s[1]==o?this[s[0]]=s[1].call(this,l):this[s[0]]=s[1]:3===s.length?typeof s[1]!==o||s[1].exec&&s[1].test?this[s[0]]=l?l.replace(s[1],s[2]):n:this[s[0]]=l?s[1].call(this,l,s[2]):n:4===s.length&&(this[s[0]]=l?s[3].call(this,l.replace(s[1],s[2])):n):this[s]=l||n;d+=2}},Z=function(e,t){for(var r in t)if(typeof t[r]===_&&t[r].length>0){for(var i=0;i<t[r].length;i++)if(V(t[r][i],e))return"?"===r?n:r}else if(V(t[r],e))return"?"===r?n:r;return e},H={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Y={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[f,[d,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[f,[d,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[d,f],[/opios[\/ ]+([\w\.]+)/i],[f,[d,z+" Mini"]],[/\bopr\/([\w\.]+)/i],[f,[d,z]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,/(weibo)__([\d\.]+)/i],[d,f],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[f,[d,"UC"+x]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i],[f,[d,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[f,[d,"WeChat"]],[/konqueror\/([\w\.]+)/i],[f,[d,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[f,[d,"IE"]],[/yabrowser\/([\w\.]+)/i],[f,[d,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[d,/(.+)/,"$1 Secure "+x],f],[/\bfocus\/([\w\.]+)/i],[f,[d,S+" Focus"]],[/\bopt\/([\w\.]+)/i],[f,[d,z+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[f,[d,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[f,[d,"Dolphin"]],[/coast\/([\w\.]+)/i],[f,[d,z+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[f,[d,"MIUI "+x]],[/fxios\/([-\w\.]+)/i],[f,[d,S]],[/\bqihu|(qi?ho?o?|360)browser/i],[[d,"360 "+x]],[/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i],[[d,/(.+)/,"$1 "+x],f],[/(comodo_dragon)\/([\w\.]+)/i],[[d,/_/g," "],f],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[d,f],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i,/\[(linkedin)app\]/i],[d],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[d,B],f],[/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[d,f],[/\bgsa\/([\w\.]+) .*safari\//i],[f,[d,"GSA"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[f,[d,k+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[d,k+" WebView"],f],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[f,[d,"Android "+x]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[d,f],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[f,[d,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[f,d],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[d,[f,Z,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[d,f],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[d,"Netscape"],f],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[f,[d,S+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[d,f],[/(cobalt)\/([\w\.]+)/i],[d,[f,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[p,"amd64"]],[/(ia32(?=;))/i],[[p,G]],[/((?:i[346]|x)86)[;\)]/i],[[p,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[p,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[p,"armhf"]],[/windows (ce|mobile); ppc;/i],[[p,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[p,/ower/,"",G]],[/(sun4\w)[;\)]/i],[[p,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[p,G]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[l,[u,P],[h,g]],[/\b((?:s[cgp]h|gt|sm)-\w+|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[l,[u,P],[h,b]],[/\((ip(?:hone|od)[\w ]*);/i],[l,[u,A],[h,b]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[l,[u,A],[h,g]],[/(macintosh);/i],[l,[u,A]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[l,[u,I],[h,g]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[l,[u,I],[h,b]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[l,/_/g," "],[u,j],[h,b]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[l,/_/g," "],[u,j],[h,g]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[l,[u,"OPPO"],[h,b]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[l,[u,"Vivo"],[h,b]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[l,[u,"Realme"],[h,b]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[l,[u,M],[h,b]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[l,[u,M],[h,g]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[l,[u,L],[h,g]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[l,[u,L],[h,b]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[l,[u,"Lenovo"],[h,g]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[l,/_/g," "],[u,"Nokia"],[h,b]],[/(pixel c)\b/i],[l,[u,N],[h,g]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[l,[u,N],[h,b]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[l,[u,D],[h,b]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[l,"Xperia Tablet"],[u,D],[h,g]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[l,[u,"OnePlus"],[h,b]],[/(alexa)webm/i,/(kf[a-z]{2}wi)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[l,[u,y],[h,g]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[l,/(.+)/g,"Fire Phone $1"],[u,y],[h,b]],[/(playbook);[-\w\),; ]+(rim)/i],[l,u,[h,g]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[l,[u,R],[h,b]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[l,[u,T],[h,g]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[l,[u,T],[h,b]],[/(nexus 9)/i],[l,[u,"HTC"],[h,g]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\w]*)/i],[u,[l,/_/g," "],[h,b]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[l,[u,"Acer"],[h,g]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[l,[u,"Meizu"],[h,b]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[l,[u,C],[h,b]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[u,l,[h,b]],[/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[u,l,[h,g]],[/(surface duo)/i],[l,[u,F],[h,g]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[l,[u,"Fairphone"],[h,b]],[/(u304aa)/i],[l,[u,"AT&T"],[h,b]],[/\bsie-(\w*)/i],[l,[u,"Siemens"],[h,b]],[/\b(rct\w+) b/i],[l,[u,"RCA"],[h,g]],[/\b(venue[\d ]{2,7}) b/i],[l,[u,"Dell"],[h,g]],[/\b(q(?:mv|ta)\w+) b/i],[l,[u,"Verizon"],[h,g]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[l,[u,"Barnes & Noble"],[h,g]],[/\b(tm\d{3}\w+) b/i],[l,[u,"NuVision"],[h,g]],[/\b(k88) b/i],[l,[u,"ZTE"],[h,g]],[/\b(nx\d{3}j) b/i],[l,[u,"ZTE"],[h,b]],[/\b(gen\d{3}) b.+49h/i],[l,[u,"Swiss"],[h,b]],[/\b(zur\d{3}) b/i],[l,[u,"Swiss"],[h,g]],[/\b((zeki)?tb.*\b) b/i],[l,[u,"Zeki"],[h,g]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[u,"Dragon Touch"],l,[h,g]],[/\b(ns-?\w{0,9}) b/i],[l,[u,"Insignia"],[h,g]],[/\b((nxa|next)-?\w{0,9}) b/i],[l,[u,"NextBook"],[h,g]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[u,"Voice"],l,[h,b]],[/\b(lvtel\-)?(v1[12]) b/i],[[u,"LvTel"],l,[h,b]],[/\b(ph-1) /i],[l,[u,"Essential"],[h,b]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[l,[u,"Envizen"],[h,g]],[/\b(trio[-\w\. ]+) b/i],[l,[u,"MachSpeed"],[h,g]],[/\btu_(1491) b/i],[l,[u,"Rotor"],[h,g]],[/(shield[\w ]+) b/i],[l,[u,"Nvidia"],[h,g]],[/(sprint) (\w+)/i],[u,l,[h,b]],[/(kin\.[onetw]{3})/i],[[l,/\./g," "],[u,F],[h,b]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[l,[u,U],[h,g]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[l,[u,U],[h,b]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[u,l,[h,m]],[/droid.+; (shield) bui/i],[l,[u,"Nvidia"],[h,m]],[/(playstation [345portablevi]+)/i],[l,[u,D],[h,m]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[l,[u,F],[h,m]],[/smart-tv.+(samsung)/i],[u,[h,v]],[/hbbtv.+maple;(\d+)/i],[[l,/^/,"SmartTV"],[u,P],[h,v]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[u,L],[h,v]],[/(apple) ?tv/i],[u,[l,A+" TV"],[h,v]],[/crkey/i],[[l,k+"cast"],[u,N],[h,v]],[/droid.+aft(\w)( bui|\))/i],[l,[u,y],[h,v]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[l,[u,C],[h,v]],[/(bravia[\w ]+)( bui|\))/i],[l,[u,D],[h,v]],[/(mitv-\w{5}) bui/i],[l,[u,j],[h,v]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w ]*; *(\w[^;]*);([^;]*)/i],[[u,K],[l,K],[h,v]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[h,v]],[/((pebble))app/i],[u,l,[h,E]],[/droid.+; (glass) \d/i],[l,[u,N],[h,E]],[/droid.+; (wt63?0{2,3})\)/i],[l,[u,U],[h,E]],[/(quest( 2)?)/i],[l,[u,B],[h,E]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[u,[h,w]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[l,[h,b]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[l,[h,g]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[h,g]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[h,b]],[/(android[-\w\. ]{0,9});.+buil/i],[l,[u,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[f,[d,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[f,[d,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i],[d,f],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[f,d]],os:[[/microsoft (windows) (vista|xp)/i],[d,f],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[d,[f,Z,H]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[d,"Windows"],[f,Z,H]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/cfnetwork\/.+darwin/i],[[f,/_/g,"."],[d,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[d,"Mac OS"],[f,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[f,d],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[d,f],[/\(bb(10);/i],[f,[d,R]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[f,[d,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[f,[d,S+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[f,[d,"webOS"]],[/crkey\/([\d\.]+)/i],[f,[d,k+"cast"]],[/(cros) [\w]+ ([\w\.]+\w)/i],[[d,"Chromium OS"],f],[/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[d,f],[/(sunos) ?([\w\.\d]*)/i],[[d,"Solaris"],f],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,/(unix) ?([\w\.]*)/i],[d,f]]},X=function(e,t){if(typeof e===_&&(t=e,e=n),!(this instanceof X))return new X(e,t).getResult();var r=e||(typeof a!==s&&a.navigator&&a.navigator.userAgent?a.navigator.userAgent:""),i=t?function(e,t){var r={};for(var i in e)t[i]&&t[i].length%2==0?r[i]=t[i].concat(e[i]):r[i]=e[i];return r}(Y,t):Y;return this.getBrowser=function(){var e,t={};return t[d]=n,t[f]=n,W.call(t,r,i.browser),t.major=typeof(e=t.version)===c?e.replace(/[^\d\.]/g,"").split(".")[0]:n,t},this.getCPU=function(){var e={};return e[p]=n,W.call(e,r,i.cpu),e},this.getDevice=function(){var e={};return e[u]=n,e[l]=n,e[h]=n,W.call(e,r,i.device),e},this.getEngine=function(){var e={};return e[d]=n,e[f]=n,W.call(e,r,i.engine),e},this.getOS=function(){var e={};return e[d]=n,e[f]=n,W.call(e,r,i.os),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return r},this.setUA=function(e){return r=typeof e===c&&e.length>350?K(e,350):e,this},this.setUA(r),this};X.VERSION="1.0.33",X.BROWSER=O([d,f,"major"]),X.CPU=O([p]),X.DEVICE=O([l,u,h,m,b,v,g,E,w]),X.ENGINE=X.OS=O([d,f]),typeof t!==s?(e.exports&&(t=e.exports=X),t.UAParser=X):r.amdO?(i=function(){return X}.call(t,r,t,e))===n||(e.exports=i):typeof a!==s&&(a.UAParser=X);var q=typeof a!==s&&(a.jQuery||a.Zepto);if(q&&!q.ua){var $=new X;q.ua=$.getResult(),q.ua.get=function(){return $.getUA()},q.ua.set=function(e){$.setUA(e);var t=$.getResult();for(var r in t)q.ua[r]=t[r]}}}("object"==typeof window?window:this)},276:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});var i=r(477),a=r.n(i);function n(){return a()('(()=>{var e={238:function(e,r,t){var a;!function(i,_){"use strict";var n="function",o="undefined",s="object",c="string",l="model",d="name",h="type",u="vendor",f="version",p="architecture",b="console",m="mobile",E="tablet",v="smarttv",w="wearable",g="embedded",y="Amazon",N="Apple",k="ASUS",S="BlackBerry",j="Browser",z="Chrome",I="Firefox",R="Google",A="Huawei",x="LG",L="Microsoft",T="Motorola",P="Opera",F="Samsung",M="Sharp",K="Sony",C="Xiaomi",O="Zebra",B="Facebook",D=function(e){for(var r={},t=0;t<e.length;t++)r[e[t].toUpperCase()]=e[t];return r},U=function(e,r){return typeof e===c&&-1!==Z(r).indexOf(Z(e))},Z=function(e){return e.toLowerCase()},V=function(e,r){if(typeof e===c)return e=e.replace(/^\\s\\s*/,""),typeof r===o?e:e.substring(0,350)},G=function(e,r){for(var t,a,i,o,c,l,d=0;d<r.length&&!c;){var h=r[d],u=r[d+1];for(t=a=0;t<h.length&&!c;)if(c=h[t++].exec(e))for(i=0;i<u.length;i++)l=c[++a],typeof(o=u[i])===s&&o.length>0?2===o.length?typeof o[1]==n?this[o[0]]=o[1].call(this,l):this[o[0]]=o[1]:3===o.length?typeof o[1]!==n||o[1].exec&&o[1].test?this[o[0]]=l?l.replace(o[1],o[2]):_:this[o[0]]=l?o[1].call(this,l,o[2]):_:4===o.length&&(this[o[0]]=l?o[3].call(this,l.replace(o[1],o[2])):_):this[o]=l||_;d+=2}},H=function(e,r){for(var t in r)if(typeof r[t]===s&&r[t].length>0){for(var a=0;a<r[t].length;a++)if(U(r[t][a],e))return"?"===t?_:t}else if(U(r[t],e))return"?"===t?_:t;return e},W={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Y={browser:[[/\\b(?:crmo|crios)\\/([\\w\\.]+)/i],[f,[d,"Chrome"]],[/edg(?:e|ios|a)?\\/([\\w\\.]+)/i],[f,[d,"Edge"]],[/(opera mini)\\/([-\\w\\.]+)/i,/(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,/(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i],[d,f],[/opios[\\/ ]+([\\w\\.]+)/i],[f,[d,P+" Mini"]],[/\\bopr\\/([\\w\\.]+)/i],[f,[d,P]],[/(kindle)\\/([\\w\\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,/(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,/(?:ms|\\()(ie) ([\\w\\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,/(weibo)__([\\d\\.]+)/i],[d,f],[/(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i],[f,[d,"UC"+j]],[/microm.+\\bqbcore\\/([\\w\\.]+)/i,/\\bqbcore\\/([\\w\\.]+).+microm/i],[f,[d,"WeChat(Win) Desktop"]],[/micromessenger\\/([\\w\\.]+)/i],[f,[d,"WeChat"]],[/konqueror\\/([\\w\\.]+)/i],[f,[d,"Konqueror"]],[/trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i],[f,[d,"IE"]],[/yabrowser\\/([\\w\\.]+)/i],[f,[d,"Yandex"]],[/(avast|avg)\\/([\\w\\.]+)/i],[[d,/(.+)/,"$1 Secure "+j],f],[/\\bfocus\\/([\\w\\.]+)/i],[f,[d,I+" Focus"]],[/\\bopt\\/([\\w\\.]+)/i],[f,[d,P+" Touch"]],[/coc_coc\\w+\\/([\\w\\.]+)/i],[f,[d,"Coc Coc"]],[/dolfin\\/([\\w\\.]+)/i],[f,[d,"Dolphin"]],[/coast\\/([\\w\\.]+)/i],[f,[d,P+" Coast"]],[/miuibrowser\\/([\\w\\.]+)/i],[f,[d,"MIUI "+j]],[/fxios\\/([-\\w\\.]+)/i],[f,[d,I]],[/\\bqihu|(qi?ho?o?|360)browser/i],[[d,"360 "+j]],[/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i],[[d,/(.+)/,"$1 "+j],f],[/(comodo_dragon)\\/([\\w\\.]+)/i],[[d,/_/g," "],f],[/(electron)\\/([\\w\\.]+) safari/i,/(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i],[d,f],[/(metasr)[\\/ ]?([\\w\\.]+)/i,/(lbbrowser)/i,/\\[(linkedin)app\\]/i],[d],[/((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i],[[d,B],f],[/safari (line)\\/([\\w\\.]+)/i,/\\b(line)\\/([\\w\\.]+)\\/iab/i,/(chromium|instagram)[\\/ ]([-\\w\\.]+)/i],[d,f],[/\\bgsa\\/([\\w\\.]+) .*safari\\//i],[f,[d,"GSA"]],[/headlesschrome(?:\\/([\\w\\.]+)| )/i],[f,[d,z+" Headless"]],[/ wv\\).+(chrome)\\/([\\w\\.]+)/i],[[d,z+" WebView"],f],[/droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i],[f,[d,"Android "+j]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i],[d,f],[/version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i],[f,[d,"Mobile Safari"]],[/version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i],[f,d],[/webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i],[d,[f,H,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\\/([\\w\\.]+)/i],[d,f],[/(navigator|netscape\\d?)\\/([-\\w\\.]+)/i],[[d,"Netscape"],f],[/mobile vr; rv:([\\w\\.]+)\\).+firefox/i],[f,[d,I+" Reality"]],[/ekiohf.+(flow)\\/([\\w\\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,/(firefox)\\/([\\w\\.]+)/i,/(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,/(links) \\(([\\w\\.]+)/i],[d,f],[/(cobalt)\\/([\\w\\.]+)/i],[d,[f,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i],[[p,"amd64"]],[/(ia32(?=;))/i],[[p,Z]],[/((?:i[346]|x)86)[;\\)]/i],[[p,"ia32"]],[/\\b(aarch64|arm(v?8e?l?|_?64))\\b/i],[[p,"arm64"]],[/\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i],[[p,"armhf"]],[/windows (ce|mobile); ppc;/i],[[p,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i],[[p,/ower/,"",Z]],[/(sun4\\w)[;\\)]/i],[[p,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i],[[p,Z]]],device:[[/\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i],[l,[u,F],[h,E]],[/\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,/samsung[- ]([-\\w]+)/i,/sec-(sgh\\w+)/i],[l,[u,F],[h,m]],[/\\((ip(?:hone|od)[\\w ]*);/i],[l,[u,N],[h,m]],[/\\((ipad);[-\\w\\),; ]+apple/i,/applecoremedia\\/[\\w\\.]+ \\((ipad)/i,/\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i],[l,[u,N],[h,E]],[/(macintosh);/i],[l,[u,N]],[/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i],[l,[u,A],[h,E]],[/(?:huawei|honor)([-\\w ]+)[;\\)]/i,/\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i],[l,[u,A],[h,m]],[/\\b(poco[\\w ]+)(?: bui|\\))/i,/\\b; (\\w+) build\\/hm\\1/i,/\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,/\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,/\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i],[[l,/_/g," "],[u,C],[h,m]],[/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i],[[l,/_/g," "],[u,C],[h,E]],[/; (\\w+) bui.+ oppo/i,/\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i],[l,[u,"OPPO"],[h,m]],[/vivo (\\w+)(?: bui|\\))/i,/\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i],[l,[u,"Vivo"],[h,m]],[/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i],[l,[u,"Realme"],[h,m]],[/\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,/\\bmot(?:orola)?[- ](\\w*)/i,/((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i],[l,[u,T],[h,m]],[/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i],[l,[u,T],[h,E]],[/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i],[l,[u,x],[h,E]],[/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,/\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,/\\blg-?([\\d\\w]+) bui/i],[l,[u,x],[h,m]],[/(ideatab[-\\w ]+)/i,/lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i],[l,[u,"Lenovo"],[h,E]],[/(?:maemo|nokia).*(n900|lumia \\d+)/i,/nokia[-_ ]?([-\\w\\.]*)/i],[[l,/_/g," "],[u,"Nokia"],[h,m]],[/(pixel c)\\b/i],[l,[u,R],[h,E]],[/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i],[l,[u,R],[h,m]],[/droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i],[l,[u,K],[h,m]],[/sony tablet [ps]/i,/\\b(?:sony)?sgp\\w+(?: bui|\\))/i],[[l,"Xperia Tablet"],[u,K],[h,E]],[/ (kb2005|in20[12]5|be20[12][59])\\b/i,/(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i],[l,[u,"OnePlus"],[h,m]],[/(alexa)webm/i,/(kf[a-z]{2}wi)( bui|\\))/i,/(kf[a-z]+)( bui|\\)).+silk\\//i],[l,[u,y],[h,E]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i],[[l,/(.+)/g,"Fire Phone $1"],[u,y],[h,m]],[/(playbook);[-\\w\\),; ]+(rim)/i],[l,u,[h,E]],[/\\b((?:bb[a-f]|st[hv])100-\\d)/i,/\\(bb10; (\\w+)/i],[l,[u,S],[h,m]],[/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i],[l,[u,k],[h,E]],[/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i],[l,[u,k],[h,m]],[/(nexus 9)/i],[l,[u,"HTC"],[h,E]],[/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,/(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,/(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i],[u,[l,/_/g," "],[h,m]],[/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i],[l,[u,"Acer"],[h,E]],[/droid.+; (m[1-5] note) bui/i,/\\bmz-([-\\w]{2,})/i],[l,[u,"Meizu"],[h,m]],[/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i],[l,[u,M],[h,m]],[/(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,/(hp) ([\\w ]+\\w)/i,/(asus)-?(\\w+)/i,/(microsoft); (lumia[\\w ]+)/i,/(lenovo)[-_ ]?([-\\w]+)/i,/(jolla)/i,/(oppo) ?([\\w ]+) bui/i],[u,l,[h,m]],[/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\\/([\\w\\.]+)/i,/(nook)[\\w ]+build\\/(\\w+)/i,/(dell) (strea[kpr\\d ]*[\\dko])/i,/(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,/(trinity)[- ]*(t\\d{3}) bui/i,/(gigaset)[- ]+(q\\w{1,9}) bui/i,/(vodafone) ([\\w ]+)(?:\\)| bui)/i],[u,l,[h,E]],[/(surface duo)/i],[l,[u,L],[h,E]],[/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i],[l,[u,"Fairphone"],[h,m]],[/(u304aa)/i],[l,[u,"AT&T"],[h,m]],[/\\bsie-(\\w*)/i],[l,[u,"Siemens"],[h,m]],[/\\b(rct\\w+) b/i],[l,[u,"RCA"],[h,E]],[/\\b(venue[\\d ]{2,7}) b/i],[l,[u,"Dell"],[h,E]],[/\\b(q(?:mv|ta)\\w+) b/i],[l,[u,"Verizon"],[h,E]],[/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i],[l,[u,"Barnes & Noble"],[h,E]],[/\\b(tm\\d{3}\\w+) b/i],[l,[u,"NuVision"],[h,E]],[/\\b(k88) b/i],[l,[u,"ZTE"],[h,E]],[/\\b(nx\\d{3}j) b/i],[l,[u,"ZTE"],[h,m]],[/\\b(gen\\d{3}) b.+49h/i],[l,[u,"Swiss"],[h,m]],[/\\b(zur\\d{3}) b/i],[l,[u,"Swiss"],[h,E]],[/\\b((zeki)?tb.*\\b) b/i],[l,[u,"Zeki"],[h,E]],[/\\b([yr]\\d{2}) b/i,/\\b(dragon[- ]+touch |dt)(\\w{5}) b/i],[[u,"Dragon Touch"],l,[h,E]],[/\\b(ns-?\\w{0,9}) b/i],[l,[u,"Insignia"],[h,E]],[/\\b((nxa|next)-?\\w{0,9}) b/i],[l,[u,"NextBook"],[h,E]],[/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[u,"Voice"],l,[h,m]],[/\\b(lvtel\\-)?(v1[12]) b/i],[[u,"LvTel"],l,[h,m]],[/\\b(ph-1) /i],[l,[u,"Essential"],[h,m]],[/\\b(v(100md|700na|7011|917g).*\\b) b/i],[l,[u,"Envizen"],[h,E]],[/\\b(trio[-\\w\\. ]+) b/i],[l,[u,"MachSpeed"],[h,E]],[/\\btu_(1491) b/i],[l,[u,"Rotor"],[h,E]],[/(shield[\\w ]+) b/i],[l,[u,"Nvidia"],[h,E]],[/(sprint) (\\w+)/i],[u,l,[h,m]],[/(kin\\.[onetw]{3})/i],[[l,/\\./g," "],[u,L],[h,m]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i],[l,[u,O],[h,E]],[/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i],[l,[u,O],[h,m]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[u,l,[h,b]],[/droid.+; (shield) bui/i],[l,[u,"Nvidia"],[h,b]],[/(playstation [345portablevi]+)/i],[l,[u,K],[h,b]],[/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i],[l,[u,L],[h,b]],[/smart-tv.+(samsung)/i],[u,[h,v]],[/hbbtv.+maple;(\\d+)/i],[[l,/^/,"SmartTV"],[u,F],[h,v]],[/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i],[[u,x],[h,v]],[/(apple) ?tv/i],[u,[l,N+" TV"],[h,v]],[/crkey/i],[[l,z+"cast"],[u,R],[h,v]],[/droid.+aft(\\w)( bui|\\))/i],[l,[u,y],[h,v]],[/\\(dtv[\\);].+(aquos)/i,/(aquos-tv[\\w ]+)\\)/i],[l,[u,M],[h,v]],[/(bravia[\\w ]+)( bui|\\))/i],[l,[u,K],[h,v]],[/(mitv-\\w{5}) bui/i],[l,[u,C],[h,v]],[/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,/hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i],[[u,V],[l,V],[h,v]],[/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i],[[h,v]],[/((pebble))app/i],[u,l,[h,w]],[/droid.+; (glass) \\d/i],[l,[u,R],[h,w]],[/droid.+; (wt63?0{2,3})\\)/i],[l,[u,O],[h,w]],[/(quest( 2)?)/i],[l,[u,B],[h,w]],[/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i],[u,[h,g]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i],[l,[h,m]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i],[l,[h,E]],[/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i],[[h,E]],[/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i],[[h,m]],[/(android[-\\w\\. ]{0,9});.+buil/i],[l,[u,"Generic"]]],engine:[[/windows.+ edge\\/([\\w\\.]+)/i],[f,[d,"EdgeHTML"]],[/webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i],[f,[d,"Blink"]],[/(presto)\\/([\\w\\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,/ekioh(flow)\\/([\\w\\.]+)/i,/(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,/(icab)[\\/ ]([23]\\.[\\d\\.]+)/i],[d,f],[/rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i],[f,d]],os:[[/microsoft (windows) (vista|xp)/i],[d,f],[/(windows) nt 6\\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,/(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i],[d,[f,H,W]],[/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i],[[d,"Windows"],[f,H,W]],[/ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,/cfnetwork\\/.+darwin/i],[[f,/_/g,"."],[d,"iOS"]],[/(mac os x) ?([\\w\\. ]*)/i,/(macintosh|mac_powerpc\\b)(?!.+haiku)/i],[[d,"Mac OS"],[f,/_/g,"."]],[/droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i],[f,d],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,/(blackberry)\\w*\\/([\\w\\.]*)/i,/(tizen|kaios)[\\/ ]([\\w\\.]+)/i,/\\((series40);/i],[d,f],[/\\(bb(10);/i],[f,[d,S]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i],[f,[d,"Symbian"]],[/mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i],[f,[d,I+" OS"]],[/web0s;.+rt(tv)/i,/\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i],[f,[d,"webOS"]],[/crkey\\/([\\d\\.]+)/i],[f,[d,z+"cast"]],[/(cros) [\\w]+ ([\\w\\.]+\\w)/i],[[d,"Chromium OS"],f],[/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\\);]+)/i,/\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,/(mint)[\\/\\(\\) ]?(\\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,/(hurd|linux) ?([\\w\\.]*)/i,/(gnu) ?([\\w\\.]*)/i,/\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,/(haiku) (\\w+)/i],[d,f],[/(sunos) ?([\\w\\.\\d]*)/i],[[d,"Solaris"],f],[/((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,/(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,/\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,/(unix) ?([\\w\\.]*)/i],[d,f]]},X=function(e,r){if(typeof e===s&&(r=e,e=_),!(this instanceof X))return new X(e,r).getResult();var t=e||(typeof i!==o&&i.navigator&&i.navigator.userAgent?i.navigator.userAgent:""),a=r?function(e,r){var t={};for(var a in e)r[a]&&r[a].length%2==0?t[a]=r[a].concat(e[a]):t[a]=e[a];return t}(Y,r):Y;return this.getBrowser=function(){var e,r={};return r[d]=_,r[f]=_,G.call(r,t,a.browser),r.major=typeof(e=r.version)===c?e.replace(/[^\\d\\.]/g,"").split(".")[0]:_,r},this.getCPU=function(){var e={};return e[p]=_,G.call(e,t,a.cpu),e},this.getDevice=function(){var e={};return e[u]=_,e[l]=_,e[h]=_,G.call(e,t,a.device),e},this.getEngine=function(){var e={};return e[d]=_,e[f]=_,G.call(e,t,a.engine),e},this.getOS=function(){var e={};return e[d]=_,e[f]=_,G.call(e,t,a.os),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return t},this.setUA=function(e){return t=typeof e===c&&e.length>350?V(e,350):e,this},this.setUA(t),this};X.VERSION="1.0.33",X.BROWSER=D([d,f,"major"]),X.CPU=D([p]),X.DEVICE=D([l,u,h,b,m,v,E,w,g]),X.ENGINE=X.OS=D([d,f]),typeof r!==o?(e.exports&&(r=e.exports=X),r.UAParser=X):t.amdO?(a=function(){return X}.call(r,t,r,e))===_||(e.exports=a):typeof i!==o&&(i.UAParser=X);var q=typeof i!==o&&(i.jQuery||i.Zepto);if(q&&!q.ua){var $=new X;q.ua=$.getResult(),q.ua.get=function(){return $.getUA()},q.ua.set=function(e){$.setUA(e);var r=$.getResult();for(var t in r)q.ua[t]=r[t]}}}("object"==typeof window?window:this)},751:(e,r,t)=>{"use strict";e.exports=t.p+"5a86c8fa5c139c48ad64.wasm"}},r={};function t(a){var i=r[a];if(void 0!==i)return i.exports;var _=r[a]={exports:{}};return e[a].call(_.exports,_,_.exports,t),_.exports}t.m=e,t.amdO={},t.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),t.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),(()=>{var e;t.g.importScripts&&(e=t.g.location+"");var r=t.g.document;if(!e&&r&&(r.currentScript&&(e=r.currentScript.src),!e)){var a=r.getElementsByTagName("script");if(a.length)for(var i=a.length-1;i>-1&&!e;)e=a[i--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\\?.*$/,"").replace(/\\/[^\\/]+$/,"/"),t.p=e})(),t.b=self.location+"",(()=>{"use strict";var e;const r=(e="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(r={}){var t,a,i=r;i.ready=new Promise(((e,r)=>{t=e,a=r}));var _,n=Object.assign({},i),o="./this.program",s=(e,r)=>{throw r},c="";c=self.location.href,e&&(c=e),c=c.startsWith("blob:")?"":c.substr(0,c.replace(/[?#].*/,"").lastIndexOf("/")+1),_=e=>{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)};var l,d=i.print||console.log.bind(console),h=i.printErr||console.error.bind(console);Object.assign(i,n),n=null,i.thisProgram&&(o=i.thisProgram),i.quit&&(s=i.quit),i.wasmBinary&&(l=i.wasmBinary),"object"!=typeof WebAssembly&&K("no native wasm support detected");var u,f,p,b,m,E,v,w,g,y,N=!1;function k(){var e=u.buffer;i.HEAP8=p=new Int8Array(e),i.HEAP16=m=new Int16Array(e),i.HEAPU8=b=new Uint8Array(e),i.HEAPU16=E=new Uint16Array(e),i.HEAP32=v=new Int32Array(e),i.HEAPU32=w=new Uint32Array(e),i.HEAPF32=g=new Float32Array(e),i.HEAPF64=y=new Float64Array(e)}var S=[],j=[],z=[];function I(){var e=i.preRun.shift();S.unshift(e)}var R,A,x,L=0,T=null,P=null;function F(){L++,i.monitorRunDependencies?.(L)}function M(){if(L--,i.monitorRunDependencies?.(L),0==L&&(null!==T&&(clearInterval(T),T=null),P)){var e=P;P=null,e()}}function K(e){throw i.onAbort?.(e),h(e="Aborted("+e+")"),N=!0,f=1,e=new WebAssembly.RuntimeError(e+". Build with -sASSERTIONS for more info."),a(e),e}if(!(R="zappar-cv.wasm").startsWith("data:application/octet-stream;base64,")){var C=R;R=i.locateFile?i.locateFile(C,c):c+C}function O(e){this.name="ExitStatus",this.message=`Program terminated with exit(${e})`,this.status=e}var B=e=>{for(;0<e.length;)e.shift()(i)},D=i.noExitRuntime||!0,U=[],Z=0,V=0;class G{constructor(e){this.Rj=e,this.Gj=e-24}}var H=e=>{var r=V;if(!r)return ht(0),0;var t=new G(r);w[t.Gj+16>>2]=r;var a=w[t.Gj+4>>2];if(!a)return ht(0),r;for(var i in e){var _=e[i];if(0===_||_===a)break;if(Et(_,a,t.Gj+16))return ht(_),r}return ht(a),r},W=()=>{var e=U.pop();e||K("no exception to throw");var r=e.Rj;throw 0==p[e.Gj+13>>0]&&(U.push(e),p[e.Gj+13>>0]=1,p[e.Gj+12>>0]=0,Z++),V=r},Y=(e,r)=>{for(var t=0,a=e.length-1;0<=a;a--){var i=e[a];"."===i?e.splice(a,1):".."===i?(e.splice(a,1),t++):t&&(e.splice(a,1),t--)}if(r)for(;t;t--)e.unshift("..");return e},X=e=>{var r="/"===e.charAt(0),t="/"===e.substr(-1);return(e=Y(e.split("/").filter((e=>!!e)),!r).join("/"))||r||(e="."),e&&t&&(e+="/"),(r?"/":"")+e},q=e=>{var r=/^(\\/?|)([\\s\\S]*?)((?:\\.{1,2}|[^\\/]+?|)(\\.[^.\\/]*|))(?:[\\/]*)$/.exec(e).slice(1);return e=r[0],r=r[1],e||r?(r&&=r.substr(0,r.length-1),e+r):"."},$=e=>{if("/"===e)return"/";var r=(e=(e=X(e)).replace(/\\/$/,"")).lastIndexOf("/");return-1===r?e:e.substr(r+1)},J=e=>(J=(()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return e=>crypto.getRandomValues(e);K("initRandomDevice")})())(e);function Q(){for(var e="",r=!1,t=arguments.length-1;-1<=t&&!r;t--){if("string"!=typeof(r=0<=t?arguments[t]:"/"))throw new TypeError("Arguments to path.resolve must be strings");if(!r)return"";e=r+"/"+e,r="/"===r.charAt(0)}return(r?"/":"")+(e=Y(e.split("/").filter((e=>!!e)),!r).join("/"))||"."}var ee="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,re=(e,r,t)=>{var a=r+t;for(t=r;e[t]&&!(t>=a);)++t;if(16<t-r&&e.buffer&&ee)return ee.decode(e.subarray(r,t));for(a="";r<t;){var i=e[r++];if(128&i){var _=63&e[r++];if(192==(224&i))a+=String.fromCharCode((31&i)<<6|_);else{var n=63&e[r++];65536>(i=224==(240&i)?(15&i)<<12|_<<6|n:(7&i)<<18|_<<12|n<<6|63&e[r++])?a+=String.fromCharCode(i):(i-=65536,a+=String.fromCharCode(55296|i>>10,56320|1023&i))}}else a+=String.fromCharCode(i)}return a},te=[],ae=e=>{for(var r=0,t=0;t<e.length;++t){var a=e.charCodeAt(t);127>=a?r++:2047>=a?r+=2:55296<=a&&57343>=a?(r+=4,++t):r+=3}return r},ie=(e,r,t,a)=>{if(!(0<a))return 0;var i=t;a=t+a-1;for(var _=0;_<e.length;++_){var n=e.charCodeAt(_);if(55296<=n&&57343>=n&&(n=65536+((1023&n)<<10)|1023&e.charCodeAt(++_)),127>=n){if(t>=a)break;r[t++]=n}else{if(2047>=n){if(t+1>=a)break;r[t++]=192|n>>6}else{if(65535>=n){if(t+2>=a)break;r[t++]=224|n>>12}else{if(t+3>=a)break;r[t++]=240|n>>18,r[t++]=128|n>>12&63}r[t++]=128|n>>6&63}r[t++]=128|63&n}}return r[t]=0,t-i};function _e(e,r){var t=Array(ae(e)+1);return e=ie(e,t,0,t.length),r&&(t.length=e),t}var ne=[];function oe(e,r){ne[e]={input:[],Hj:[],Pj:r},Ce(e,se)}var se={open(e){var r=ne[e.node.$j];if(!r)throw new ge(43);e.Ej=r,e.seekable=!1},close(e){e.Ej.Pj.dk(e.Ej)},dk(e){e.Ej.Pj.dk(e.Ej)},read(e,r,t,a){if(!e.Ej||!e.Ej.Pj.tk)throw new ge(60);for(var i=0,_=0;_<a;_++){try{var n=e.Ej.Pj.tk(e.Ej)}catch(e){throw new ge(29)}if(void 0===n&&0===i)throw new ge(6);if(null==n)break;i++,r[t+_]=n}return i&&(e.node.timestamp=Date.now()),i},write(e,r,t,a){if(!e.Ej||!e.Ej.Pj.nk)throw new ge(60);try{for(var i=0;i<a;i++)e.Ej.Pj.nk(e.Ej,r[t+i])}catch(e){throw new ge(29)}return a&&(e.node.timestamp=Date.now()),i}},ce={tk(){e:{if(!te.length){var e=null;if("undefined"!=typeof window&&"function"==typeof window.prompt?null!==(e=window.prompt("Input: "))&&(e+="\\n"):"function"==typeof readline&&null!==(e=readline())&&(e+="\\n"),!e){e=null;break e}te=_e(e,!0)}e=te.shift()}return e},nk(e,r){null===r||10===r?(d(re(e.Hj,0)),e.Hj=[]):0!=r&&e.Hj.push(r)},dk(e){e.Hj&&0<e.Hj.length&&(d(re(e.Hj,0)),e.Hj=[])},Jk:()=>({$k:25856,bl:5,Zk:191,al:35387,Yk:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}),Kk:()=>0,Lk:()=>[24,80]},le={nk(e,r){null===r||10===r?(h(re(e.Hj,0)),e.Hj=[]):0!=r&&e.Hj.push(r)},dk(e){e.Hj&&0<e.Hj.length&&(h(re(e.Hj,0)),e.Hj=[])}};function de(e,r){var t=e.Cj?e.Cj.length:0;t>=r||(r=Math.max(r,t*(1048576>t?2:1.125)>>>0),0!=t&&(r=Math.max(r,256)),t=e.Cj,e.Cj=new Uint8Array(r),0<e.Fj&&e.Cj.set(t.subarray(0,e.Fj),0))}var he={Lj:null,Oj:()=>he.createNode(null,"/",16895,0),createNode(e,r,t,a){if(24576==(61440&t)||4096==(61440&t))throw new ge(63);return he.Lj||(he.Lj={dir:{node:{Kj:he.Bj.Kj,Mj:he.Bj.Mj,Zj:he.Bj.Zj,ek:he.Bj.ek,yk:he.Bj.yk,kk:he.Bj.kk,gk:he.Bj.gk,fk:he.Bj.fk,hk:he.Bj.hk},stream:{Tj:he.Dj.Tj}},file:{node:{Kj:he.Bj.Kj,Mj:he.Bj.Mj},stream:{Tj:he.Dj.Tj,read:he.Dj.read,write:he.Dj.write,bk:he.Dj.bk,vk:he.Dj.vk,xk:he.Dj.xk}},link:{node:{Kj:he.Bj.Kj,Mj:he.Bj.Mj,ak:he.Bj.ak},stream:{}},rk:{node:{Kj:he.Bj.Kj,Mj:he.Bj.Mj},stream:Ke}}),Re((t=Ie(e,r,t,a)).mode)?(t.Bj=he.Lj.dir.node,t.Dj=he.Lj.dir.stream,t.Cj={}):32768==(61440&t.mode)?(t.Bj=he.Lj.file.node,t.Dj=he.Lj.file.stream,t.Fj=0,t.Cj=null):40960==(61440&t.mode)?(t.Bj=he.Lj.link.node,t.Dj=he.Lj.link.stream):8192==(61440&t.mode)&&(t.Bj=he.Lj.rk.node,t.Dj=he.Lj.rk.stream),t.timestamp=Date.now(),e&&(e.Cj[r]=t,e.timestamp=t.timestamp),t},gl:e=>e.Cj?e.Cj.subarray?e.Cj.subarray(0,e.Fj):new Uint8Array(e.Cj):new Uint8Array(0),Bj:{Kj(e){var r={};return r.Dk=8192==(61440&e.mode)?e.id:1,r.uk=e.id,r.mode=e.mode,r.Pk=1,r.uid=0,r.Fk=0,r.$j=e.$j,Re(e.mode)?r.size=4096:32768==(61440&e.mode)?r.size=e.Fj:40960==(61440&e.mode)?r.size=e.link.length:r.size=0,r.zk=new Date(e.timestamp),r.Ok=new Date(e.timestamp),r.Ck=new Date(e.timestamp),r.Ak=4096,r.Bk=Math.ceil(r.size/r.Ak),r},Mj(e,r){if(void 0!==r.mode&&(e.mode=r.mode),void 0!==r.timestamp&&(e.timestamp=r.timestamp),void 0!==r.size&&(r=r.size,e.Fj!=r))if(0==r)e.Cj=null,e.Fj=0;else{var t=e.Cj;e.Cj=new Uint8Array(r),t&&e.Cj.set(t.subarray(0,Math.min(r,e.Fj))),e.Fj=r}},Zj(){throw ye[44]},ek:(e,r,t,a)=>he.createNode(e,r,t,a),yk(e,r,t){if(Re(e.mode)){try{var a=ze(r,t)}catch(e){}if(a)for(var i in a.Cj)throw new ge(55)}delete e.parent.Cj[e.name],e.parent.timestamp=Date.now(),e.name=t,r.Cj[t]=e,r.timestamp=e.parent.timestamp,e.parent=r},kk(e,r){delete e.Cj[r],e.timestamp=Date.now()},gk(e,r){var t,a=ze(e,r);for(t in a.Cj)throw new ge(55);delete e.Cj[r],e.timestamp=Date.now()},fk(e){var r,t=[".",".."];for(r of Object.keys(e.Cj))t.push(r);return t},hk:(e,r,t)=>((e=he.createNode(e,r,41471,0)).link=t,e),ak(e){if(40960!=(61440&e.mode))throw new ge(28);return e.link}},Dj:{read(e,r,t,a,i){var _=e.node.Cj;if(i>=e.node.Fj)return 0;if(8<(e=Math.min(e.node.Fj-i,a))&&_.subarray)r.set(_.subarray(i,i+e),t);else for(a=0;a<e;a++)r[t+a]=_[i+a];return e},write(e,r,t,a,i,_){if(r.buffer===p.buffer&&(_=!1),!a)return 0;if((e=e.node).timestamp=Date.now(),r.subarray&&(!e.Cj||e.Cj.subarray)){if(_)return e.Cj=r.subarray(t,t+a),e.Fj=a;if(0===e.Fj&&0===i)return e.Cj=r.slice(t,t+a),e.Fj=a;if(i+a<=e.Fj)return e.Cj.set(r.subarray(t,t+a),i),a}if(de(e,i+a),e.Cj.subarray&&r.subarray)e.Cj.set(r.subarray(t,t+a),i);else for(_=0;_<a;_++)e.Cj[i+_]=r[t+_];return e.Fj=Math.max(e.Fj,i+a),a},Tj(e,r,t){if(1===t?r+=e.position:2===t&&32768==(61440&e.node.mode)&&(r+=e.node.Fj),0>r)throw new ge(28);return r},bk(e,r,t){de(e.node,r+t),e.node.Fj=Math.max(e.node.Fj,r+t)},vk(e,r,t,a,i){if(32768!=(61440&e.node.mode))throw new ge(43);if(e=e.node.Cj,2&i||e.buffer!==p.buffer){if((0<t||t+r<e.length)&&(e=e.subarray?e.subarray(t,t+r):Array.prototype.slice.call(e,t,t+r)),t=!0,K(),!(r=void 0))throw new ge(48);p.set(e,r)}else t=!1,r=e.byteOffset;return{Gj:r,Wj:t}},xk:(e,r,t,a)=>(he.Dj.write(e,r,0,a,t,!1),0)}},ue=i.preloadPlugins||[],fe=(e,r)=>{var t=0;return e&&(t|=365),r&&(t|=146),t},pe=null,be={},me=[],Ee=1,ve=null,we=!0,ge=class{constructor(e){this.name="ErrnoError",this.Ij=e}},ye={};function Ne(e,r={}){if(!(e=Q(e)))return{path:"",node:null};if(8<(r=Object.assign({sk:!0,pk:0},r)).pk)throw new ge(32);e=e.split("/").filter((e=>!!e));for(var t=pe,a="/",i=0;i<e.length;i++){var _=i===e.length-1;if(_&&r.parent)break;if(t=ze(t,e[i]),a=X(a+"/"+e[i]),t.Xj&&(!_||_&&r.sk)&&(t=t.Xj.root),!_||r.ck)for(_=0;40960==(61440&t.mode);)if(t=Ve(a),t=Ne(a=Q(q(a),t),{pk:r.pk+1}).node,40<_++)throw new ge(32)}return{path:a,node:t}}function ke(e){for(var r;;){if(e===e.parent)return e=e.Oj.wk,r?"/"!==e[e.length-1]?`${e}/${r}`:e+r:e;r=r?`${e.name}/${r}`:e.name,e=e.parent}}function Se(e,r){for(var t=0,a=0;a<r.length;a++)t=(t<<5)-t+r.charCodeAt(a)|0;return(e+t>>>0)%ve.length}function je(e){var r=Se(e.parent.id,e.name);if(ve[r]===e)ve[r]=e.Yj;else for(r=ve[r];r;){if(r.Yj===e){r.Yj=e.Yj;break}r=r.Yj}}function ze(e,r){var t=Re(e.mode)?(t=xe(e,"x"))?t:e.Bj.Zj?0:2:54;if(t)throw new ge(t);for(t=ve[Se(e.id,r)];t;t=t.Yj){var a=t.name;if(t.parent.id===e.id&&a===r)return t}return e.Bj.Zj(e,r)}function Ie(e,r,t,a){return r=Se((e=new it(e,r,t,a)).parent.id,e.name),e.Yj=ve[r],ve[r]=e}function Re(e){return 16384==(61440&e)}function Ae(e){var r=["r","w","rw"][3&e];return 512&e&&(r+="w"),r}function xe(e,r){return we?0:!r.includes("r")||292&e.mode?r.includes("w")&&!(146&e.mode)||r.includes("x")&&!(73&e.mode)?2:0:2}function Le(e,r){try{return ze(e,r),20}catch(e){}return xe(e,"wx")}function Te(e,r,t){try{var a=ze(e,r)}catch(e){return e.Ij}if(e=xe(e,"wx"))return e;if(t){if(!Re(a.mode))return 54;if(a===a.parent||"/"===ke(a))return 10}else if(Re(a.mode))return 31;return 0}function Pe(e){if(!(e=me[e]))throw new ge(8);return e}function Fe(e,r=-1){return Xe||((Xe=function(){this.Jj={}}).prototype={},Object.defineProperties(Xe.prototype,{object:{get(){return this.node},set(e){this.node=e}},flags:{get(){return this.Jj.flags},set(e){this.Jj.flags=e}},position:{get(){return this.Jj.position},set(e){this.Jj.position=e}}})),e=Object.assign(new Xe,e),-1==r&&(r=function(){for(var e=0;4096>=e;e++)if(!me[e])return e;throw new ge(33)}()),e.Qj=r,me[r]=e}var Me,Ke={open(e){e.Dj=be[e.node.$j].Dj,e.Dj.open?.(e)},Tj(){throw new ge(70)}};function Ce(e,r){be[e]={Dj:r}}function Oe(e,r){var t="/"===r;if(t&&pe)throw new ge(10);if(!t&&r){var a=Ne(r,{sk:!1});if(r=a.path,(a=a.node).Xj)throw new ge(10);if(!Re(a.mode))throw new ge(54)}r={type:e,kl:{},wk:r,Nk:[]},(e=e.Oj(r)).Oj=r,r.root=e,t?pe=e:a&&(a.Xj=r,a.Oj&&a.Oj.Nk.push(r))}function Be(e,r,t){var a=Ne(e,{parent:!0}).node;if(!(e=$(e))||"."===e||".."===e)throw new ge(28);var i=Le(a,e);if(i)throw new ge(i);if(!a.Bj.ek)throw new ge(63);return a.Bj.ek(a,e,r,t)}function De(e){return Be(e,16895,0)}function Ue(e,r,t){void 0===t&&(t=r,r=438),Be(e,8192|r,t)}function Ze(e,r){if(!Q(e))throw new ge(44);var t=Ne(r,{parent:!0}).node;if(!t)throw new ge(44);var a=Le(t,r=$(r));if(a)throw new ge(a);if(!t.Bj.hk)throw new ge(63);t.Bj.hk(t,r,e)}function Ve(e){if(!(e=Ne(e).node))throw new ge(44);if(!e.Bj.ak)throw new ge(28);return Q(ke(e.parent),e.Bj.ak(e))}function Ge(e,r,t){if(""===e)throw new ge(44);if("string"==typeof r){var a={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[r];if(void 0===a)throw Error(`Unknown file open mode: ${r}`);r=a}if(t=64&r?4095&(void 0===t?438:t)|32768:0,"object"==typeof e)var _=e;else{e=X(e);try{_=Ne(e,{ck:!(131072&r)}).node}catch(e){}}if(a=!1,64&r)if(_){if(128&r)throw new ge(20)}else _=Be(e,t,0),a=!0;if(!_)throw new ge(44);if(8192==(61440&_.mode)&&(r&=-513),65536&r&&!Re(_.mode))throw new ge(54);if(!a&&(t=_?40960==(61440&_.mode)?32:Re(_.mode)&&("r"!==Ae(r)||512&r)?31:xe(_,Ae(r)):44))throw new ge(t);if(512&r&&!a){if(!(t="string"==typeof(t=_)?Ne(t,{ck:!0}).node:t).Bj.Mj)throw new ge(63);if(Re(t.mode))throw new ge(31);if(32768!=(61440&t.mode))throw new ge(28);if(a=xe(t,"w"))throw new ge(a);t.Bj.Mj(t,{size:0,timestamp:Date.now()})}return r&=-131713,(_=Fe({node:_,path:ke(_),flags:r,seekable:!0,position:0,Dj:_.Dj,Uk:[],error:!1})).Dj.open&&_.Dj.open(_),!i.logReadFiles||1&r||(qe||={},e in qe||(qe[e]=1)),_}function He(e,r,t){if(null===e.Qj)throw new ge(8);if(!e.seekable||!e.Dj.Tj)throw new ge(70);if(0!=t&&1!=t&&2!=t)throw new ge(28);return e.position=e.Dj.Tj(e,r,t),e.Uk=[],e.position}function We(e,r,t){e=X("/dev/"+e);var a=fe(!!r,!!t);Ye||=64;var i=Ye++<<8|0;Ce(i,{open(e){e.seekable=!1},close(){t?.buffer?.length&&t(10)},read(e,t,a,i){for(var _=0,n=0;n<i;n++){try{var o=r()}catch(e){throw new ge(29)}if(void 0===o&&0===_)throw new ge(6);if(null==o)break;_++,t[a+n]=o}return _&&(e.node.timestamp=Date.now()),_},write(e,r,a,i){for(var _=0;_<i;_++)try{t(r[a+_])}catch(e){throw new ge(29)}return i&&(e.node.timestamp=Date.now()),_}}),Ue(e,a,i)}var Ye,Xe,qe,$e={},Je=(e,r)=>e?re(b,e,r):"";function Qe(e,r){if("/"===r.charAt(0))return r;if(e=-100===e?"/":Pe(e).path,0==r.length)throw new ge(44);return X(e+"/"+r)}var er=void 0;function rr(){var e=v[+er>>2];return er+=4,e}var tr,ar=e=>0==e%4&&(0!=e%100||0==e%400),ir=[0,31,60,91,121,152,182,213,244,274,305,335],_r=[0,31,59,90,120,151,181,212,243,273,304,334],nr=e=>{var r=ae(e)+1,t=ct(r);return t&&ie(e,b,t,r),t},or=e=>{f=e,D||(i.onExit?.(e),N=!0),s(e,new O(e))},sr=e=>{if(!N)try{if(e(),!D)try{f=e=f,or(e)}catch(e){e instanceof O||"unwind"==e||s(1,e)}}catch(e){e instanceof O||"unwind"==e||s(1,e)}},cr=(e,r)=>{setTimeout((()=>{sr(e)}),r)};tr=()=>performance.now();var lr,dr,hr,ur=!1,fr=null,pr=0,br=null,mr=0,Er=0,vr=0,wr=[],gr={},yr=!1,Nr=!1,kr=[],Sr=!1,jr=void 0,zr=void 0;function Ir(){return!!yr&&((document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{})).apply(document,[]),!0)}var Rr=0;function Ar(e){if("function"==typeof requestAnimationFrame)requestAnimationFrame(e);else{var r=Date.now();if(0===Rr)Rr=r+1e3/60;else for(;r+2>=Rr;)Rr+=1e3/60;setTimeout(e,Math.max(Rr-r,0))}}function xr(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]}var Lr=[];function Tr(){var e=i.canvas;Lr.forEach((r=>r(e.width,e.height)))}function Pr(e,r,t){r&&t?(e.Vk=r,e.Gk=t):(r=e.Vk,t=e.Gk);var a=r,_=t;if(i.forcedAspectRatio&&0<i.forcedAspectRatio&&(a/_<i.forcedAspectRatio?a=Math.round(_*i.forcedAspectRatio):_=Math.round(a/i.forcedAspectRatio)),(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var n=Math.min(screen.width/a,screen.height/_);a=Math.round(a*n),_=Math.round(_*n)}zr?(e.width!=a&&(e.width=a),e.height!=_&&(e.height=_),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=r&&(e.width=r),e.height!=t&&(e.height=t),void 0!==e.style&&(a!=r||_!=t?(e.style.setProperty("width",a+"px","important"),e.style.setProperty("height",_+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))}var Fr,Mr,Kr,Cr,Or,Br=[],Dr=e=>{var r=Br[e];return r||(e>=Br.length&&(Br.length=e+1),Br[e]=r=Kr.get(e)),r};function Ur(e,r,t,a,i){function _(){var r=0,t=0;y.response&&v&&0===w[e+12>>2]&&(t=y.response.byteLength),0<t&&(r=ct(t),b.set(new Uint8Array(y.response),r)),w[e+12>>2]=r,Zr(e+16,t),Zr(e+24,0),(r=y.response?y.response.byteLength:0)&&Zr(e+32,r),E[e+40>>1]=y.readyState,E[e+42>>1]=y.status,y.statusText&&ie(y.statusText,b,e+44,64)}var n=w[e+8>>2];if(n){var o=n?re(b,n):"",s=e+112,c=Je(s+0);c||="GET";var l=w[s+56>>2],d=w[s+68>>2],h=w[s+72>>2];n=w[s+76>>2];var u=w[s+80>>2],f=w[s+84>>2],p=w[s+88>>2],m=w[s+52>>2],v=!!(1&m),g=!!(2&m);m=!!(64&m),d=d?d?re(b,d):"":void 0,h=h?h?re(b,h):"":void 0;var y=new XMLHttpRequest;if(y.withCredentials=!!b[s+60>>0],y.open(c,o,!m,d,h),m||(y.timeout=l),y.Jj=o,y.responseType="arraybuffer",u&&(o=u?re(b,u):"",y.overrideMimeType(o)),n)for(;(s=w[n>>2])&&(o=w[n+4>>2]);)n+=8,s=s?re(b,s):"",o=o?re(b,o):"",y.setRequestHeader(s,o);var N=Cr.bk(y);w[e>>2]=N,n=f&&p?b.slice(f,f+p):null,y.onload=a=>{Cr.has(N)&&(_(),200<=y.status&&300>y.status?r?.(e,y,a):t?.(e,y,a))},y.onerror=r=>{Cr.has(N)&&(_(),t?.(e,y,r))},y.ontimeout=r=>{Cr.has(N)&&t?.(e,y,r)},y.onprogress=r=>{if(Cr.has(N)){var t=v&&g&&y.response?y.response.byteLength:0,i=0;0<t&&v&&g&&(i=ct(t),b.set(new Uint8Array(y.response),i)),w[e+12>>2]=i,Zr(e+16,t),Zr(e+24,r.loaded-t),Zr(e+32,r.total),E[e+40>>1]=y.readyState,3<=y.readyState&&0===y.status&&0<r.loaded&&(y.status=200),E[e+42>>1]=y.status,y.statusText&&ie(y.statusText,b,e+44,64),a?.(e,y,r),i&&st(i)}},y.onreadystatechange=r=>{Cr.has(N)&&(E[e+40>>1]=y.readyState,2<=y.readyState&&(E[e+42>>1]=y.status),i?.(e,y,r))};try{y.send(n)}catch(r){t?.(e,y,r)}}else t(e,0,"no url specified!")}var Zr=(e,r)=>{w[e>>2]=r,w[e+4>>2]=(r-w[e>>2])/4294967296};function Vr(e,r,t,a){var i=Or;if(i){var _=w[e+112+64>>2];_||=w[e+8>>2];var n=_?re(b,_):"";try{var o=i.transaction(["FILES"],"readwrite").objectStore("FILES").put(r,n);o.onsuccess=()=>{E[e+40>>1]=4,E[e+42>>1]=200,ie("OK",b,e+44,64),t(e,0,n)},o.onerror=r=>{E[e+40>>1]=4,E[e+42>>1]=413,ie("Payload Too Large",b,e+44,64),a(e,0,r)}}catch(r){a(e,0,r)}}else a(e,0,"IndexedDB not available!")}var Gr,Hr,Wr,Yr={},Xr=()=>{if(!Gr){var e,r={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:o||"./this.program"};for(e in Yr)void 0===Yr[e]?delete r[e]:r[e]=Yr[e];var t=[];for(e in r)t.push(`${e}=${r[e]}`);Gr=t}return Gr},qr=1,$r=[],Jr=[],Qr=e=>{for(var r=qr++,t=e.length;t<r;t++)e[t]=null;return r},et=e=>{if(e||=Wr,!e.Hk){e.Hk=!0;var r=e.lk;(e=>{var r=e.getExtension("ANGLE_instanced_arrays");r&&(e.vertexAttribDivisor=(e,t)=>r.vertexAttribDivisorANGLE(e,t),e.drawArraysInstanced=(e,t,a,i)=>r.drawArraysInstancedANGLE(e,t,a,i),e.drawElementsInstanced=(e,t,a,i,_)=>r.drawElementsInstancedANGLE(e,t,a,i,_))})(r),(e=>{var r=e.getExtension("OES_vertex_array_object");r&&(e.createVertexArray=()=>r.createVertexArrayOES(),e.deleteVertexArray=e=>r.deleteVertexArrayOES(e),e.bindVertexArray=e=>r.bindVertexArrayOES(e),e.isVertexArray=e=>r.isVertexArrayOES(e))})(r),(e=>{var r=e.getExtension("WEBGL_draw_buffers");r&&(e.drawBuffers=(e,t)=>r.drawBuffersWEBGL(e,t))})(r),r.dl=r.getExtension("EXT_disjoint_timer_query"),r.hl=r.getExtension("WEBGL_multi_draw"),function(e){var r="ANGLE_instanced_arrays EXT_blend_minmax EXT_disjoint_timer_query EXT_frag_depth EXT_shader_texture_lod EXT_sRGB OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_depth_texture WEBGL_draw_buffers EXT_color_buffer_half_float EXT_float_blend EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw".split(" ");return(e.getSupportedExtensions()||[]).filter((e=>r.includes(e)))}(r).forEach((e=>{e.includes("lose_context")||e.includes("debug")||r.getExtension(e)}))}},rt={},tt=[31,29,31,30,31,30,31,31,30,31,30,31],at=[31,28,31,30,31,30,31,31,30,31,30,31];function it(e,r,t,a){e||=this,this.parent=e,this.Oj=e.Oj,this.Xj=null,this.id=Ee++,this.name=r,this.mode=t,this.Bj={},this.Dj={},this.$j=a}Object.defineProperties(it.prototype,{read:{get:function(){return 365==(365&this.mode)},set:function(e){e?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146==(146&this.mode)},set:function(e){e?this.mode|=146:this.mode&=-147}}}),[44].forEach((e=>{ye[e]=new ge(e),ye[e].stack="<generic error, no stack>"})),ve=Array(4096),Oe(he,"/"),De("/tmp"),De("/home"),De("/home/web_user"),function(){De("/dev"),Ce(259,{read:()=>0,write:(e,r,t,a)=>a}),Ue("/dev/null",259),oe(1280,ce),oe(1536,le),Ue("/dev/tty",1280),Ue("/dev/tty1",1536);var e=new Uint8Array(1024),r=0,t=()=>(0===r&&(r=J(e).byteLength),e[--r]);We("random",t),We("urandom",t),De("/dev/shm"),De("/dev/shm/tmp")}(),function(){De("/proc");var e=De("/proc/self");De("/proc/self/fd"),Oe({Oj(){var r=Ie(e,"fd",16895,73);return r.Bj={Zj(e,r){var t=Pe(+r);return(e={parent:null,Oj:{wk:"fake"},Bj:{ak:()=>t.path}}).parent=e}},r}},"/proc/self/fd")}(),i.requestFullscreen=function(e,r){function t(){yr=!1;var e=a.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e?(a.exitFullscreen=Ir,jr&&a.requestPointerLock(),yr=!0,zr?("undefined"!=typeof SDL&&(v[SDL.screen>>2]=8388608|w[SDL.screen>>2]),Pr(i.canvas),Tr()):Pr(a)):(e.parentNode.insertBefore(a,e),e.parentNode.removeChild(e),zr?("undefined"!=typeof SDL&&(v[SDL.screen>>2]=-8388609&w[SDL.screen>>2]),Pr(i.canvas),Tr()):Pr(a)),i.onFullScreen?.(yr),i.onFullscreen?.(yr)}void 0===(jr=e)&&(jr=!0),void 0===(zr=r)&&(zr=!1);var a=i.canvas;Sr||(Sr=!0,document.addEventListener("fullscreenchange",t,!1),document.addEventListener("mozfullscreenchange",t,!1),document.addEventListener("webkitfullscreenchange",t,!1),document.addEventListener("MSFullscreenChange",t,!1));var _=document.createElement("div");a.parentNode.insertBefore(_,a),_.appendChild(a),_.requestFullscreen=_.requestFullscreen||_.mozRequestFullScreen||_.msRequestFullscreen||(_.webkitRequestFullscreen?()=>_.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(_.webkitRequestFullScreen?()=>_.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null),_.requestFullscreen()},i.requestAnimationFrame=Ar,i.setCanvasSize=function(e,r,t){Pr(i.canvas,e,r),t||Tr()},i.pauseMainLoop=function(){fr=null,pr++},i.resumeMainLoop=function(){pr++;var e=mr,r=Er,t=br;br=null,(e=>{!br||K("emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),br=e;var r=pr;ur=!1,dr=function(){if(!N)if(0<wr.length){var t=wr.shift();if(t.fl(t.Xk),hr){var a=hr,_=0==a%1?a-1:Math.floor(a);hr=t.cl?_:(8*a+(_+.5))/9}i.setStatus&&(t=i.statusMessage||"Please wait...",_=gr.el,(a=hr)?a<_?i.setStatus(t+" ("+(_-a)+"/"+_+")"):i.setStatus(t):i.setStatus("")),r<pr||setTimeout(dr,0)}else r<pr||(vr=vr+1|0,1==mr&&1<Er&&0!=vr%Er?fr():(0==mr&&(lr=tr()),N||i.preMainLoop&&!1===i.preMainLoop()||(sr(e),i.postMainLoop?.()),r<pr||("object"==typeof SDL&&SDL.audio?.ll?.(),fr())))}})(t),((e,r)=>{if(mr=e,Er=r,br)if(ur||=!0,0==e)fr=function(){var e=0|Math.max(0,lr+r-tr());setTimeout(dr,e)};else if(1==e)fr=function(){Ar(dr)};else if(2==e){if(void 0===Fr)if("undefined"==typeof setImmediate){var t=[];addEventListener("message",(e=>{"setimmediate"!==e.data&&"setimmediate"!==e.data.target||(e.stopPropagation(),t.shift()())}),!0),Fr=function(e){t.push(e),void 0===i.setImmediates&&(i.setImmediates=[]),i.setImmediates.push(e),postMessage({target:"setimmediate"})}}else Fr=setImmediate;fr=function(){Fr(dr)}}})(e,r),fr()},i.getUserMedia=function(e){let r;(r=window).getUserMedia||(r.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},i.createContext=function(e,r,t,a){if(r&&i.mk&&e==i.canvas)return i.mk;var _;if(r){var n={antialias:!1,alpha:!1,Mk:1};if(a)for(var o in a)n[o]=a[o];if(void 0!==rt&&(_=((e,r)=>{e.Jj||(e.Jj=e.getContext,e.getContext=function(r,t){return"webgl"==r==(t=e.Jj(r,t))instanceof WebGLRenderingContext?t:null});var t=e.getContext("webgl",r);return t?((e,r)=>{var t=Qr(Jr),a={handle:t,attributes:r,version:r.Mk,lk:e};return e.canvas&&(e.canvas.Wk=a),Jr[t]=a,(void 0===r.Ek||r.Ek)&&et(a),t})(t,r):0})(e,n)))var s=Jr[_].lk}else s=e.getContext("2d");return s?(t&&(r||void 0===_t||K("cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),i.mk=s,r&&(Wr=Jr[_],i.mk=_t=Wr?.lk),i.nl=r,kr.forEach((e=>e())),function(){function e(){Nr=document.pointerLockElement===i.canvas||document.mozPointerLockElement===i.canvas||document.webkitPointerLockElement===i.canvas||document.msPointerLockElement===i.canvas}if(!Mr){Mr=!0,ue.push({canHandle:function(e){return!i.jl&&/\\.(jpg|jpeg|png|bmp)$/i.test(e)},handle:function(e,r,t,a){var i=new Blob([e],{type:xr(r)});i.size!==e.length&&(i=new Blob([new Uint8Array(e).buffer],{type:xr(r)}));var _=URL.createObjectURL(i),n=new Image;n.onload=()=>{n.complete||K(`Image ${r} could not be decoded`);var a=document.createElement("canvas");a.width=n.width,a.height=n.height,a.getContext("2d").drawImage(n,0,0),URL.revokeObjectURL(_),t?.(e)},n.onerror=()=>{h(`Image ${_} could not be decoded`),a?.()},n.src=_}}),ue.push({canHandle:function(e){return!i.il&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(e,r,t){function a(){i||(i=!0,t?.(e))}var i=!1,_=URL.createObjectURL(new Blob([e],{type:xr(r)})),n=new Audio;n.addEventListener("canplaythrough",(()=>a()),!1),n.onerror=function(){if(!i){h(`warning: browser could not fully decode audio ${r}, trying slower base64 approach`);for(var t="",_=0,o=0,s=0;s<e.length;s++)for(_=_<<8|e[s],o+=8;6<=o;){var c=_>>o-6&63;o-=6,t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[c]}2==o?(t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(3&_)<<4],t+="=="):4==o&&(t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(15&_)<<2],t+="="),n.src="data:audio/x-"+r.substr(-3)+";base64,"+t,a()}},n.src=_,cr((()=>{a()}),1e4)}});var r=i.canvas;r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||(()=>{}),r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||(()=>{}),r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",e,!1),document.addEventListener("mozpointerlockchange",e,!1),document.addEventListener("webkitpointerlockchange",e,!1),document.addEventListener("mspointerlockchange",e,!1),i.elementPointerLock&&r.addEventListener("click",(e=>{!Nr&&i.canvas.requestPointerLock&&(i.canvas.requestPointerLock(),e.preventDefault())}),!1))}}()),s):null},Cr=new class{constructor(){this.Wj=[void 0],this.Jj=[]}get(e){return this.Wj[e]}has(e){return void 0!==this.Wj[e]}bk(e){var r=this.Jj.pop()||this.Wj.length;return this.Wj[r]=e,r}},F(),function(e,r){try{var t=indexedDB.open("emscripten_filesystem",1)}catch(e){return void r()}t.onupgradeneeded=e=>{(e=e.target.result).objectStoreNames.contains("FILES")&&e.deleteObjectStore("FILES"),e.createObjectStore("FILES")},t.onsuccess=e=>(e=>{Or=e,M()})(e.target.result),t.onerror=r}(0,(()=>{Or=!1,M()}));var _t,nt={r:e=>{if(e=new G(e),0==p[e.Gj+12>>0]&&(p[e.Gj+12>>0]=1,Z--),p[e.Gj+13>>0]=0,U.push(e),mt(e.Rj),vt(w[e.Gj+4>>2]))e=w[e.Rj>>2];else{var r=w[e.Gj+16>>2];e=0!==r?r:e.Rj}return e},dc:()=>{if(!U.length)return 0;var e=U[U.length-1];return mt(e.Rj),e.Rj},w:()=>{dt(0,0);var e=U.pop();bt(e.Rj),V=0},a:()=>H([]),i:e=>H([e]),D:(e,r)=>H([e,r]),Ka:W,cc:e=>{e&&(e=new G(e),U.push(e),p[e.Gj+13>>0]=1,W())},n:(e,r,t)=>{var a=new G(e);throw w[a.Gj+16>>2]=0,w[a.Gj+4>>2]=r,w[a.Gj+8>>2]=t,Z++,V=e},ta:()=>Z,c:e=>{throw V||=e,V},T:function(e,r,t){er=t;try{var a=Pe(e);switch(r){case 0:var i=rr();if(0>i)break;for(;me[i];)i++;return Fe(a,i).Qj;case 1:case 2:case 13:case 14:return 0;case 3:return a.flags;case 4:return i=rr(),a.flags|=i,0;case 12:return i=rr(),m[i+0>>1]=2,0}return-28}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Ij}},jc:function(e,r,t){try{var a=Pe(e);if(!a.Sj){var i=Ne(a.path,{ck:!0}).node;if(!i.Bj.fk)throw new ge(54);var _=i.Bj.fk(i);a.Sj=_}e=0;for(var n=He(a,0,1),o=Math.floor(n/280);o<a.Sj.length&&e+280<=t;){var s=a.Sj[o];if("."===s)var c=a.node.id,l=4;else if(".."===s)c=Ne(a.path,{parent:!0}).node.id,l=4;else{var d=ze(a.node,s);c=d.id,l=8192==(61440&d.mode)?2:Re(d.mode)?4:40960==(61440&d.mode)?10:8}x=[c>>>0,(A=c,1<=+Math.abs(A)?0<A?+Math.floor(A/4294967296)>>>0:~~+Math.ceil((A-+(~~A>>>0))/4294967296)>>>0:0)],v[r+e>>2]=x[0],v[r+e+4>>2]=x[1],x=[280*(o+1)>>>0,(A=280*(o+1),1<=+Math.abs(A)?0<A?+Math.floor(A/4294967296)>>>0:~~+Math.ceil((A-+(~~A>>>0))/4294967296)>>>0:0)],v[r+e+8>>2]=x[0],v[r+e+12>>2]=x[1],m[r+e+16>>1]=280,p[r+e+18>>0]=l,ie(s,b,r+e+19,256),e+=280,o+=1}return He(a,280*o,0),e}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Ij}},qc:function(e,r,t){er=t;try{var a=Pe(e);switch(r){case 21509:case 21510:case 21511:case 21512:case 21524:case 21515:return a.Ej?0:-59;case 21505:if(!a.Ej)return-59;if(a.Ej.Pj.Jk){e=[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var i=rr();v[i>>2]=25856,v[i+4>>2]=5,v[i+8>>2]=191,v[i+12>>2]=35387;for(var _=0;32>_;_++)p[i+_+17>>0]=e[_]||0}return 0;case 21506:case 21507:case 21508:if(!a.Ej)return-59;if(a.Ej.Pj.Kk)for(i=rr(),e=[],_=0;32>_;_++)e.push(p[i+_+17>>0]);return 0;case 21519:return a.Ej?(i=rr(),v[i>>2]=0):-59;case 21520:return a.Ej?-28:-59;case 21531:if(i=rr(),!a.Dj.Ik)throw new ge(59);return a.Dj.Ik(a,r,i);case 21523:return a.Ej?(a.Ej.Pj.Lk&&(_=[24,80],i=rr(),m[i>>1]=_[0],m[i+2>>1]=_[1]),0):-59;default:return-28}}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Ij}},Oa:function(e,r,t,a){er=a;try{return Ge(r=Qe(e,r=r?re(b,r):""),t,a?rr():0).Qj}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Ij}},hc:function(e,r,t,a){try{if(r=Qe(e,r=r?re(b,r):""),0>=a)return-28;var i=Ve(r),_=Math.min(a,ae(i)),n=p[t+_];return ie(i,b,t,a+1),p[t+_]=n,_}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Ij}},mc:function(e,r){try{var t=Ne(e=e?re(b,e):"",{ck:!0}).node;if(!t)throw new ge(44);if(!t.Bj.Kj)throw new ge(63);var a=t.Bj.Kj(t);v[r>>2]=a.Dk,v[r+4>>2]=a.mode,w[r+8>>2]=a.Pk,v[r+12>>2]=a.uid,v[r+16>>2]=a.Fk,v[r+20>>2]=a.$j,x=[a.size>>>0,(A=a.size,1<=+Math.abs(A)?0<A?+Math.floor(A/4294967296)>>>0:~~+Math.ceil((A-+(~~A>>>0))/4294967296)>>>0:0)],v[r+24>>2]=x[0],v[r+28>>2]=x[1],v[r+32>>2]=4096,v[r+36>>2]=a.Bk;var i=a.zk.getTime(),_=a.Ok.getTime(),n=a.Ck.getTime();return x=[Math.floor(i/1e3)>>>0,(A=Math.floor(i/1e3),1<=+Math.abs(A)?0<A?+Math.floor(A/4294967296)>>>0:~~+Math.ceil((A-+(~~A>>>0))/4294967296)>>>0:0)],v[r+40>>2]=x[0],v[r+44>>2]=x[1],w[r+48>>2]=i%1e3*1e3,x=[Math.floor(_/1e3)>>>0,(A=Math.floor(_/1e3),1<=+Math.abs(A)?0<A?+Math.floor(A/4294967296)>>>0:~~+Math.ceil((A-+(~~A>>>0))/4294967296)>>>0:0)],v[r+56>>2]=x[0],v[r+60>>2]=x[1],w[r+64>>2]=_%1e3*1e3,x=[Math.floor(n/1e3)>>>0,(A=Math.floor(n/1e3),1<=+Math.abs(A)?0<A?+Math.floor(A/4294967296)>>>0:~~+Math.ceil((A-+(~~A>>>0))/4294967296)>>>0:0)],v[r+72>>2]=x[0],v[r+76>>2]=x[1],w[r+80>>2]=n%1e3*1e3,x=[a.uk>>>0,(A=a.uk,1<=+Math.abs(A)?0<A?+Math.floor(A/4294967296)>>>0:~~+Math.ceil((A-+(~~A>>>0))/4294967296)>>>0:0)],v[r+88>>2]=x[0],v[r+92>>2]=x[1],0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Ij}},ic:function(e,r){try{return Ze(e=e?re(b,e):"",r=r?re(b,r):""),0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Ij}},fc:function(e,r,t){try{if(r=Qe(e,r=r?re(b,r):""),0===t){var a=r,i=Ne(a,{parent:!0}).node;if(!i)throw new ge(44);var _=$(a),n=ze(i,_),o=Te(i,_,!1);if(o)throw new ge(o);if(!i.Bj.kk)throw new ge(63);if(n.Xj)throw new ge(10);i.Bj.kk(i,_),je(n)}else if(512===t){a=Ne(i=r,{parent:!0}).node;var s=$(i),c=ze(a,s),l=Te(a,s,!0);if(l)throw new ge(l);if(!a.Bj.gk)throw new ge(63);if(c.Xj)throw new ge(10);a.Bj.gk(a,s),je(c)}else K("Invalid flags passed to unlinkat");return 0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return-e.Ij}},rc:function(e){if(Cr.has(e)){var r=Cr.get(e),t=Cr;t.Wj[e]=void 0,t.Jj.push(e),0<r.readyState&&4>r.readyState&&r.abort()}},oc:()=>1,xb:function(e,r,t){e=new Date(1e3*(r+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*r:NaN)),v[t>>2]=e.getUTCSeconds(),v[t+4>>2]=e.getUTCMinutes(),v[t+8>>2]=e.getUTCHours(),v[t+12>>2]=e.getUTCDate(),v[t+16>>2]=e.getUTCMonth(),v[t+20>>2]=e.getUTCFullYear()-1900,v[t+24>>2]=e.getUTCDay(),v[t+28>>2]=(e.getTime()-Date.UTC(e.getUTCFullYear(),0,1,0,0,0,0))/864e5|0},yb:function(e,r,t){e=new Date(1e3*(r+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*r:NaN)),v[t>>2]=e.getSeconds(),v[t+4>>2]=e.getMinutes(),v[t+8>>2]=e.getHours(),v[t+12>>2]=e.getDate(),v[t+16>>2]=e.getMonth(),v[t+20>>2]=e.getFullYear()-1900,v[t+24>>2]=e.getDay(),v[t+28>>2]=(ar(e.getFullYear())?ir:_r)[e.getMonth()]+e.getDate()-1|0,v[t+36>>2]=-60*e.getTimezoneOffset(),r=new Date(e.getFullYear(),6,1).getTimezoneOffset();var a=new Date(e.getFullYear(),0,1).getTimezoneOffset();v[t+32>>2]=0|(r!=a&&e.getTimezoneOffset()==Math.min(a,r))},gc:(e,r,t)=>{function a(e){return(e=e.toTimeString().match(/\\(([A-Za-z ]+)\\)$/))?e[1]:"GMT"}var i=(new Date).getFullYear(),_=new Date(i,0,1),n=new Date(i,6,1);i=_.getTimezoneOffset();var o=n.getTimezoneOffset();w[e>>2]=60*Math.max(i,o),v[r>>2]=Number(i!=o),e=a(_),r=a(n),e=nr(e),r=nr(r),o<i?(w[t>>2]=e,w[t+4>>2]=r):(w[t>>2]=r,w[t+4>>2]=e)},G:()=>{K("")},sb:function(){self.postMessage({t:"gfx"})},ub:function(){var e=new URL(location.origin).hostname;if(0===e.length&&(e=new URL(location.href.replace("blob:","")).hostname),/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(e))0===e.indexOf("10.")&&(e="10.*"),0===e.indexOf("192.168.")&&(e="192.168.*"),0===e.indexOf("172.")&&(e="172.*"),0===e.indexOf("127.")&&(e="127.*");else{var r=new RegExp("("+String.fromCharCode(92)+".ngrok"+String.fromCharCode(92)+".io)$","i");r.test(e)&&(e="*.ngrok.io"),(r=new RegExp("("+String.fromCharCode(92)+".ngrok-free"+String.fromCharCode(92)+".app)$","i")).test(e)&&(e="*.ngrok.io"),(r=new RegExp("("+String.fromCharCode(92)+".arweb"+String.fromCharCode(92)+".app)$","i")).test(e)&&(e="*.arweb.app")}r=ae(e)+1;var t=ct(r);return ie(e,b,t,r+1),t},tb:function(){self.postMessage({t:"licerr"})},Ja:(e,r,t)=>{function a(){Dr(e)(r)}0<=t?cr(a,t):function(e){Ar((()=>{sr(e)}))}(a)},ua:()=>Date.now(),ac:()=>2147483648,nc:tr,tc:()=>!1,pc:(e,r,t)=>b.copyWithin(e,r,r+t),ec:e=>{var r=b.length;if(2147483648<(e>>>=0))return!1;for(var t=1;4>=t;t*=2){var a=r*(1+.2/t);a=Math.min(a,e+100663296);var i=Math;a=Math.max(e,a);e:{i=(i.min.call(i,2147483648,a+(65536-a%65536)%65536)-u.buffer.byteLength+65535)/65536;try{u.grow(i),k();var _=1;break e}catch(e){}_=void 0}if(_)return!0}return!1},sc:function(e,r,t,a,i){function _(e){h?e():sr(e)}var n=e+112,o=w[n+36>>2],s=w[n+40>>2],c=w[n+44>>2],l=w[n+48>>2],d=w[n+52>>2],h=!!(64&d),u=e=>{_((()=>{o?Dr(o)(e):r?.(e)}))},f=e=>{_((()=>{c?Dr(c)(e):a?.(e)}))},p=e=>{_((()=>{s?Dr(s)(e):t?.(e)}))},m=e=>{_((()=>{l?Dr(l)(e):i?.(e)}))},v=e=>{Ur(e,u,p,f,m)},g=(e,t)=>{Vr(e,t.response,(e=>{_((()=>{o?Dr(o)(e):r?.(e)}))}),(e=>{_((()=>{o?Dr(o)(e):r?.(e)}))}))},y=Je(n+0),N=!!(16&d),k=!!(4&d);if(d=!!(32&d),"EM_IDB_STORE"===y)v=w[n+84>>2],Vr(e,b.slice(v,v+w[n+88>>2]),u,p);else if("EM_IDB_DELETE"===y)!function(e,r,t){var a=Or;if(a){var i=w[e+112+64>>2];i||=w[e+8>>2],i=i?re(b,i):"";try{var _=a.transaction(["FILES"],"readwrite").objectStore("FILES").delete(i);_.onsuccess=t=>{t=t.target.result,w[e+12>>2]=0,Zr(e+16,0),Zr(e+24,0),Zr(e+32,0),E[e+40>>1]=4,E[e+42>>1]=200,ie("OK",b,e+44,64),r(e,0,t)},_.onerror=r=>{E[e+40>>1]=4,E[e+42>>1]=404,ie("Not Found",b,e+44,64),t(e,0,r)}}catch(r){t(e,0,r)}}else t(e,0,"IndexedDB not available!")}(e,u,p);else if(N){if(d)return 0;Ur(e,k?g:u,p,f,m)}else!function(e,r,t){var a=Or;if(a){var i=w[e+112+64>>2];i||=w[e+8>>2],i=i?re(b,i):"";try{var _=a.transaction(["FILES"],"readonly").objectStore("FILES").get(i);_.onsuccess=a=>{if(a.target.result){var i=(a=a.target.result).byteLength||a.length,_=ct(i);b.set(new Uint8Array(a),_),w[e+12>>2]=_,Zr(e+16,i),Zr(e+24,0),Zr(e+32,i),E[e+40>>1]=4,E[e+42>>1]=200,ie("OK",b,e+44,64),r(e,0,a)}else E[e+40>>1]=4,E[e+42>>1]=404,ie("Not Found",b,e+44,64),t(e,0,"no data")},_.onerror=r=>{E[e+40>>1]=4,E[e+42>>1]=404,ie("Not Found",b,e+44,64),t(e,0,r)}}catch(r){t(e,0,r)}}else t(e,0,"IndexedDB not available!")}(e,u,d?p:k?e=>{Ur(e,g,p,f,m)}:v);return e},kc:(e,r)=>{var t=0;return Xr().forEach(((a,i)=>{var _=r+t;for(i=w[e+4*i>>2]=_,_=0;_<a.length;++_)p[i++>>0]=a.charCodeAt(_);p[i>>0]=0,t+=a.length+1})),0},lc:(e,r)=>{var t=Xr();w[e>>2]=t.length;var a=0;return t.forEach((e=>a+=e.length+1)),w[r>>2]=a,0},uc:e=>{f=e,or(e)},ca:function(e){try{var r=Pe(e);if(null===r.Qj)throw new ge(8);r.Sj&&(r.Sj=null);try{r.Dj.close&&r.Dj.close(r)}catch(e){throw e}finally{me[r.Qj]=null}return r.Qj=null,0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return e.Ij}},Pa:function(e,r,t,a){try{e:{var i=Pe(e);e=r;for(var _,n=r=0;n<t;n++){var o=w[e>>2],s=w[e+4>>2];e+=8;var c=i,l=_,d=p;if(0>s||0>l)throw new ge(28);if(null===c.Qj)throw new ge(8);if(1==(2097155&c.flags))throw new ge(8);if(Re(c.node.mode))throw new ge(31);if(!c.Dj.read)throw new ge(28);var h=void 0!==l;if(h){if(!c.seekable)throw new ge(70)}else l=c.position;var u=c.Dj.read(c,d,o,s,l);h||(c.position+=u);var f=u;if(0>f){var b=-1;break e}if(r+=f,f<s)break;void 0!==_&&(_+=f)}b=r}return w[a>>2]=b,0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return e.Ij}},zb:function(e,r,t,a,i){r=t+2097152>>>0<4194305-!!r?(r>>>0)+4294967296*t:NaN;try{if(isNaN(r))return 61;var _=Pe(e);return He(_,r,a),x=[_.position>>>0,(A=_.position,1<=+Math.abs(A)?0<A?+Math.floor(A/4294967296)>>>0:~~+Math.ceil((A-+(~~A>>>0))/4294967296)>>>0:0)],v[i>>2]=x[0],v[i+4>>2]=x[1],_.Sj&&0===r&&0===a&&(_.Sj=null),0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return e.Ij}},va:function(e,r,t,a){try{e:{var i=Pe(e);e=r;for(var _,n=r=0;n<t;n++){var o=w[e>>2],s=w[e+4>>2];e+=8;var c=i,l=o,d=s,h=_,u=p;if(0>d||0>h)throw new ge(28);if(null===c.Qj)throw new ge(8);if(0==(2097155&c.flags))throw new ge(8);if(Re(c.node.mode))throw new ge(31);if(!c.Dj.write)throw new ge(28);c.seekable&&1024&c.flags&&He(c,0,2);var f=void 0!==h;if(f){if(!c.seekable)throw new ge(70)}else h=c.position;var b=c.Dj.write(c,u,l,d,h,void 0);f||(c.position+=b);var m=b;if(0>m){var E=-1;break e}r+=m,void 0!==_&&(_+=m)}E=r}return w[a>>2]=E,0}catch(e){if(void 0===$e||"ErrnoError"!==e.name)throw e;return e.Ij}},Ma:(e,r)=>{_t.bindTexture(e,$r[r])},Na:(e,r)=>{for(var t=0;t<e;t++){var a=_t.createTexture(),i=a&&Qr($r);a?(a.name=i,$r[i]=a):Hr||=1282,v[r+4*t>>2]=i}},ra:(e,r,t,a,i,_,n,o,s)=>{var c=_t,l=c.texImage2D;if(s){var d=o-5120;d=1==d?b:4==d?v:6==d?g:5==d||28922==d?w:E;var h=31-Math.clz32(d.BYTES_PER_ELEMENT);s=d.subarray(s>>h,s+i*(a*({5:3,6:4,8:2,29502:3,29504:4}[n-6402]||1)*(1<<h)+4-1&-4)>>h)}else s=null;l.call(c,e,r,t,a,i,_,n,o,s)},sa:function(e,r,t){_t.texParameteri(e,r,t)},z:function(e){var r=ut();try{return Dr(e)()}catch(e){if(ft(r),e!==e+0)throw e;dt(1,0)}},da:function(e,r){var t=ut();try{return Dr(e)(r)}catch(e){if(ft(t),e!==e+0)throw e;dt(1,0)}},wa:function(e,r,t){var a=ut();try{return Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},W:function(e,r,t){var a=ut();try{return Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},V:function(e,r,t,a){var i=ut();try{return Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},ib:function(e,r,t,a,i){var _=ut();try{return Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},za:function(e,r,t,a,i,_,n,o){var s=ut();try{return Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},Mb:function(e,r,t,a,i){var _=ut();try{return Ft(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Ab:function(e,r,t,a,i){var _=ut();try{return Wt(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Q:function(e,r){var t=ut();try{return Dr(e)(r)}catch(e){if(ft(t),e!==e+0)throw e;dt(1,0)}},fa:function(e,r,t){var a=ut();try{return Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},ga:function(e,r,t,a){var i=ut();try{return Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},ab:function(e,r,t,a,i,_){var n=ut();try{return Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},t:function(e){var r=ut();try{return Dr(e)()}catch(e){if(ft(r),e!==e+0)throw e;dt(1,0)}},Ra:function(e,r,t,a,i){var _=ut();try{return Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Ya:function(e,r,t,a,i,_){var n=ut();try{return Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},b:function(e,r){var t=ut();try{return Dr(e)(r)}catch(e){if(ft(t),e!==e+0)throw e;dt(1,0)}},q:function(e,r,t){var a=ut();try{return Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},Aa:function(e,r,t,a){var i=ut();try{return Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},wc:function(e,r,t,a,i){var _=ut();try{return Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},ya:function(e,r,t,a){var i=ut();try{return Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},ha:function(e,r,t){var a=ut();try{return Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},_a:function(e,r,t,a,i){var _=ut();try{return Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Za:function(e,r,t,a,i,_){var n=ut();try{return Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},e:function(e,r,t){var a=ut();try{return Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},U:function(e,r,t,a){var i=ut();try{return Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},jb:function(e,r,t,a,i){var _=ut();try{return Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},vc:function(e,r,t,a,i,_,n,o){var s=ut();try{return Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},Xa:function(e,r,t,a,i,_,n,o,s,c,l,d,h){var u=ut();try{return Dr(e)(r,t,a,i,_,n,o,s,c,l,d,h)}catch(e){if(ft(u),e!==e+0)throw e;dt(1,0)}},$a:function(e,r,t,a,i,_){var n=ut();try{return Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},mb:function(e,r,t,a,i,_){var n=ut();try{return Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},d:function(e,r,t,a){var i=ut();try{return Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},Ta:function(e,r,t,a,i,_){var n=ut();try{return Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},l:function(e,r,t,a,i){var _=ut();try{return Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Sa:function(e,r,t,a,i,_){var n=ut();try{return Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},ia:function(e,r,t,a,i,_,n){var o=ut();try{return Dr(e)(r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},Ga:function(e,r,t,a,i,_,n,o,s){var c=ut();try{return Dr(e)(r,t,a,i,_,n,o,s)}catch(e){if(ft(c),e!==e+0)throw e;dt(1,0)}},s:function(e,r,t,a,i,_){var n=ut();try{return Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},B:function(e,r,t,a,i,_,n){var o=ut();try{return Dr(e)(r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},x:function(e,r,t,a,i,_,n,o){var s=ut();try{return Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},pb:function(e,r,t,a,i,_,n,o,s,c,l){var d=ut();try{return Dr(e)(r,t,a,i,_,n,o,s,c,l)}catch(e){if(ft(d),e!==e+0)throw e;dt(1,0)}},H:function(e,r,t,a,i,_,n,o,s){var c=ut();try{return Dr(e)(r,t,a,i,_,n,o,s)}catch(e){if(ft(c),e!==e+0)throw e;dt(1,0)}},ba:function(e,r,t,a,i,_,n,o,s,c){var l=ut();try{return Dr(e)(r,t,a,i,_,n,o,s,c)}catch(e){if(ft(l),e!==e+0)throw e;dt(1,0)}},M:function(e,r,t,a,i,_,n,o,s,c,l){var d=ut();try{return Dr(e)(r,t,a,i,_,n,o,s,c,l)}catch(e){if(ft(d),e!==e+0)throw e;dt(1,0)}},ka:function(e,r,t,a,i,_,n,o,s,c,l,d){var h=ut();try{return Dr(e)(r,t,a,i,_,n,o,s,c,l,d)}catch(e){if(ft(h),e!==e+0)throw e;dt(1,0)}},wb:function(e,r,t,a,i,_,n){var o=ut();try{return Yt(e,r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},Jb:function(e,r,t,a,i,_,n,o,s){var c=ut();try{return Ct(e,r,t,a,i,_,n,o,s)}catch(e){if(ft(c),e!==e+0)throw e;dt(1,0)}},Cb:function(e,r,t,a,i,_){var n=ut();try{return Gt(e,r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},Rb:function(e,r,t,a,i){var _=ut();try{return xt(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Xb:function(e,r,t,a){var i=ut();try{return St(e,r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},Vb:function(e,r,t,a,i){var _=ut();try{return jt(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Lb:function(e,r,t,a,i,_){var n=ut();try{return Mt(e,r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},Ib:function(e,r,t,a,i,_,n){var o=ut();try{return Ot(e,r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},Tb:function(e,r,t,a,i,_){var n=ut();try{return It(e,r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},Ob:function(e,r,t,a,i,_,n,o,s,c,l,d,h){var u=ut();try{return Tt(e,r,t,a,i,_,n,o,s,c,l,d,h)}catch(e){if(ft(u),e!==e+0)throw e;dt(1,0)}},Db:function(e,r,t,a){var i=ut();try{return Vt(e,r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},_b:function(e){var r=ut();try{return wt(e)}catch(e){if(ft(r),e!==e+0)throw e;dt(1,0)}},Qb:function(e,r){var t=ut();try{return Lt(e,r)}catch(e){if(ft(t),e!==e+0)throw e;dt(1,0)}},Gb:function(e,r,t){var a=ut();try{return Dt(e,r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},Hb:function(e,r,t,a){var i=ut();try{return Bt(e,r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},vb:function(e,r,t,a,i){var _=ut();try{return Xt(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Ub:function(e,r,t,a){var i=ut();try{return At(e,r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},Sb:function(e,r,t,a,i){var _=ut();try{return Rt(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Bb:function(e,r,t){var a=ut();try{return Ht(e,r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},m:function(e){var r=ut();try{Dr(e)()}catch(e){if(ft(r),e!==e+0)throw e;dt(1,0)}},Ea:function(e,r,t){var a=ut();try{Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},L:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},g:function(e,r){var t=ut();try{Dr(e)(r)}catch(e){if(ft(t),e!==e+0)throw e;dt(1,0)}},Qa:function(e,r,t){var a=ut();try{Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},gb:function(e,r,t,a){var i=ut();try{Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},Ua:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},ma:function(e,r,t,a,i,_,n){var o=ut();try{Dr(e)(r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},Wa:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},La:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},aa:function(e,r,t,a){var i=ut();try{Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},R:function(e,r,t,a,i){var _=ut();try{Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},ob:function(e,r,t){var a=ut();try{Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},Va:function(e,r,t,a,i){var _=ut();try{Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},cb:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},f:function(e,r,t){var a=ut();try{Dr(e)(r,t)}catch(e){if(ft(a),e!==e+0)throw e;dt(1,0)}},u:function(e,r,t,a){var i=ut();try{Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},O:function(e,r,t,a,i){var _=ut();try{Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},N:function(e,r,t,a){var i=ut();try{Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},_:function(e,r,t,a,i){var _=ut();try{Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Ba:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},db:function(e,r,t,a,i,_,n,o,s){var c=ut();try{Dr(e)(r,t,a,i,_,n,o,s)}catch(e){if(ft(c),e!==e+0)throw e;dt(1,0)}},P:function(e,r,t,a,i){var _=ut();try{Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},h:function(e,r,t,a){var i=ut();try{Dr(e)(r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},ea:function(e,r,t,a,i){var _=ut();try{Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},xa:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},kb:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},Ca:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},ja:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},Ia:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},Y:function(e,r,t,a,i,_,n,o,s,c,l,d){var h=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d)}catch(e){if(ft(h),e!==e+0)throw e;dt(1,0)}},qb:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},pa:function(e,r,t,a,i,_,n){var o=ut();try{Dr(e)(r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},j:function(e,r,t,a,i){var _=ut();try{Dr(e)(r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},na:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},hb:function(e,r,t,a,i,_,n,o,s){var c=ut();try{Dr(e)(r,t,a,i,_,n,o,s)}catch(e){if(ft(c),e!==e+0)throw e;dt(1,0)}},rb:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},bb:function(e,r,t,a,i,_,n,o,s,c,l){var d=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l)}catch(e){if(ft(d),e!==e+0)throw e;dt(1,0)}},Ha:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},qa:function(e,r,t,a,i,_,n){var o=ut();try{Dr(e)(r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},fb:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},nb:function(e,r,t,a,i,_,n,o,s){var c=ut();try{Dr(e)(r,t,a,i,_,n,o,s)}catch(e){if(ft(c),e!==e+0)throw e;dt(1,0)}},k:function(e,r,t,a,i,_){var n=ut();try{Dr(e)(r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},X:function(e,r,t,a,i,_,n){var o=ut();try{Dr(e)(r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},lb:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},$:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},o:function(e,r,t,a,i,_,n){var o=ut();try{Dr(e)(r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},y:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},oa:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},p:function(e,r,t,a,i,_,n,o){var s=ut();try{Dr(e)(r,t,a,i,_,n,o)}catch(e){if(ft(s),e!==e+0)throw e;dt(1,0)}},v:function(e,r,t,a,i,_,n,o,s,c,l,d,h){var u=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d,h)}catch(e){if(ft(u),e!==e+0)throw e;dt(1,0)}},S:function(e,r,t,a,i,_,n,o,s,c){var l=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c)}catch(e){if(ft(l),e!==e+0)throw e;dt(1,0)}},Z:function(e,r,t,a,i,_,n,o,s,c,l,d,h){var u=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d,h)}catch(e){if(ft(u),e!==e+0)throw e;dt(1,0)}},C:function(e,r,t,a,i,_,n,o,s){var c=ut();try{Dr(e)(r,t,a,i,_,n,o,s)}catch(e){if(ft(c),e!==e+0)throw e;dt(1,0)}},F:function(e,r,t,a,i,_,n,o,s,c){var l=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c)}catch(e){if(ft(l),e!==e+0)throw e;dt(1,0)}},I:function(e,r,t,a,i,_,n,o,s,c,l){var d=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l)}catch(e){if(ft(d),e!==e+0)throw e;dt(1,0)}},Da:function(e,r,t,a,i,_,n,o,s,c,l,d){var h=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d)}catch(e){if(ft(h),e!==e+0)throw e;dt(1,0)}},K:function(e,r,t,a,i,_,n,o,s,c,l,d,h,u){var f=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d,h,u)}catch(e){if(ft(f),e!==e+0)throw e;dt(1,0)}},E:function(e,r,t,a,i,_,n,o,s,c,l,d){var h=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d)}catch(e){if(ft(h),e!==e+0)throw e;dt(1,0)}},J:function(e,r,t,a,i,_,n,o,s,c,l,d,h){var u=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d,h)}catch(e){if(ft(u),e!==e+0)throw e;dt(1,0)}},Fa:function(e,r,t,a,i,_,n,o,s,c,l,d,h,u){var f=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d,h,u)}catch(e){if(ft(f),e!==e+0)throw e;dt(1,0)}},eb:function(e,r,t,a,i,_,n,o,s,c,l,d,h,u,f){var p=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d,h,u,f)}catch(e){if(ft(p),e!==e+0)throw e;dt(1,0)}},la:function(e,r,t,a,i,_,n,o,s,c,l,d,h,u,f,p){var b=ut();try{Dr(e)(r,t,a,i,_,n,o,s,c,l,d,h,u,f,p)}catch(e){if(ft(b),e!==e+0)throw e;dt(1,0)}},Kb:function(e,r,t,a,i,_,n,o,s){var c=ut();try{Kt(e,r,t,a,i,_,n,o,s)}catch(e){if(ft(c),e!==e+0)throw e;dt(1,0)}},Zb:function(e,r,t,a,i,_){var n=ut();try{Nt(e,r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},$b:function(e,r,t,a,i){var _=ut();try{gt(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Nb:function(e,r,t,a,i,_){var n=ut();try{Pt(e,r,t,a,i,_)}catch(e){if(ft(n),e!==e+0)throw e;dt(1,0)}},Wb:function(e,r,t,a,i,_,n){var o=ut();try{yt(e,r,t,a,i,_,n)}catch(e){if(ft(o),e!==e+0)throw e;dt(1,0)}},Yb:function(e,r,t,a){var i=ut();try{kt(e,r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},Pb:function(e,r,t,a,i){var _=ut();try{zt(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},Eb:function(e,r,t,a){var i=ut();try{Zt(e,r,t,a)}catch(e){if(ft(i),e!==e+0)throw e;dt(1,0)}},Fb:function(e,r,t,a,i){var _=ut();try{Ut(e,r,t,a,i)}catch(e){if(ft(_),e!==e+0)throw e;dt(1,0)}},A:e=>e,bc:(e,r,t,a)=>((e,r,t,a)=>{function i(e,r,t){for(e="number"==typeof e?e.toString():e||"";e.length<r;)e=t[0]+e;return e}function _(e,r){return i(e,r,"0")}function n(e,r){function t(e){return 0>e?-1:0<e?1:0}var a;return 0===(a=t(e.getFullYear()-r.getFullYear()))&&0===(a=t(e.getMonth()-r.getMonth()))&&(a=t(e.getDate()-r.getDate())),a}function o(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function s(e){var r=e.Uj;for(e=new Date(new Date(e.Vj+1900,0,1).getTime());0<r;){var t=e.getMonth(),a=(ar(e.getFullYear())?tt:at)[t];if(!(r>a-e.getDate())){e.setDate(e.getDate()+r);break}r-=a-e.getDate()+1,e.setDate(1),11>t?e.setMonth(t+1):(e.setMonth(0),e.setFullYear(e.getFullYear()+1))}return t=new Date(e.getFullYear()+1,0,4),r=o(new Date(e.getFullYear(),0,4)),t=o(t),0>=n(r,e)?0>=n(t,e)?e.getFullYear()+1:e.getFullYear():e.getFullYear()-1}var c=w[a+40>>2];for(var l in a={Sk:v[a>>2],Rk:v[a+4>>2],ik:v[a+8>>2],qk:v[a+12>>2],jk:v[a+16>>2],Vj:v[a+20>>2],Nj:v[a+24>>2],Uj:v[a+28>>2],ml:v[a+32>>2],Qk:v[a+36>>2],Tk:c&&c?re(b,c):""},t=t?re(b,t):"",c={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})t=t.replace(new RegExp(l,"g"),c[l]);var d="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),h="January February March April May June July August September October November December".split(" ");for(l in c={"%a":e=>d[e.Nj].substring(0,3),"%A":e=>d[e.Nj],"%b":e=>h[e.jk].substring(0,3),"%B":e=>h[e.jk],"%C":e=>_((e.Vj+1900)/100|0,2),"%d":e=>_(e.qk,2),"%e":e=>i(e.qk,2," "),"%g":e=>s(e).toString().substring(2),"%G":s,"%H":e=>_(e.ik,2),"%I":e=>(0==(e=e.ik)?e=12:12<e&&(e-=12),_(e,2)),"%j":e=>{for(var r=0,t=0;t<=e.jk-1;r+=(ar(e.Vj+1900)?tt:at)[t++]);return _(e.qk+r,3)},"%m":e=>_(e.jk+1,2),"%M":e=>_(e.Rk,2),"%n":()=>"\\n","%p":e=>0<=e.ik&&12>e.ik?"AM":"PM","%S":e=>_(e.Sk,2),"%t":()=>"\\t","%u":e=>e.Nj||7,"%U":e=>_(Math.floor((e.Uj+7-e.Nj)/7),2),"%V":e=>{var r=Math.floor((e.Uj+7-(e.Nj+6)%7)/7);if(2>=(e.Nj+371-e.Uj-2)%7&&r++,r)53==r&&(4==(t=(e.Nj+371-e.Uj)%7)||3==t&&ar(e.Vj)||(r=1));else{r=52;var t=(e.Nj+7-e.Uj-1)%7;(4==t||5==t&&ar(e.Vj%400-1))&&r++}return _(r,2)},"%w":e=>e.Nj,"%W":e=>_(Math.floor((e.Uj+7-(e.Nj+6)%7)/7),2),"%y":e=>(e.Vj+1900).toString().substring(2),"%Y":e=>e.Vj+1900,"%z":e=>{var r=0<=(e=e.Qk);return e=Math.abs(e)/60,(r?"+":"-")+String("0000"+(e/60*100+e%60)).slice(-4)},"%Z":e=>e.Tk,"%%":()=>"%"},t=t.replace(/%%/g,"\\0\\0"),c)t.includes(l)&&(t=t.replace(new RegExp(l,"g"),c[l](a)));return(l=_e(t=t.replace(/\\0\\0/g,"%"),!1)).length>r?0:(p.set(l,e),l.length-1)})(e,r,t,a)},ot=function(){function e(e){return ot=e.exports,u=ot.xc,k(),Kr=ot.Cc,j.unshift(ot.yc),M(),ot}var r={a:nt};if(F(),i.instantiateWasm)try{return i.instantiateWasm(r,e)}catch(e){h(`Module.instantiateWasm callback failed with error: ${e}`),a(e)}return r=function(e){if(R==R&&l)var r=new Uint8Array(l);else{if(!_)throw\'sync fetching of the wasm failed: you can preload it to Module["wasmBinary"] manually, or emcc.py will do that for you when generating HTML (but not JS)\';r=_(R)}return r=new WebAssembly.Module(r),[new WebAssembly.Instance(r,e),r]}(r),e(r[0])}();i._zappar_has_initialized=ot.zc,i._zappar_invert=ot.Ac,i._zappar_loaded=ot.Bc,i._zappar_pipeline_create=ot.Dc,i._zappar_pipeline_destroy=ot.Ec,i._zappar_pipeline_camera_frame_submit=ot.Fc,i._zappar_pipeline_camera_frame_submit_raw_pointer=ot.Gc,i._zappar_pipeline_frame_update=ot.Hc,i._zappar_pipeline_camera_frame_user_data=ot.Ic,i._zappar_pipeline_camera_model=ot.Jc,i._zappar_pipeline_frame_number=ot.Kc,i._zappar_pipeline_camera_frame_data_raw_size=ot.Lc,i._zappar_pipeline_camera_frame_data_raw_width=ot.Mc,i._zappar_pipeline_camera_frame_data_raw_height=ot.Nc,i._zappar_pipeline_camera_frame_data_raw=ot.Oc,i._zappar_pipeline_motion_accelerometer_submit=ot.Pc,i._zappar_pipeline_motion_accelerometer_with_gravity_submit_int=ot.Qc,i._zappar_pipeline_motion_accelerometer_without_gravity_submit_int=ot.Rc,i._zappar_pipeline_motion_rotation_rate_submit_int=ot.Sc,i._zappar_pipeline_motion_attitude_submit_int=ot.Tc,i._zappar_pipeline_motion_rotation_rate_submit=ot.Uc,i._zappar_pipeline_motion_attitude_submit=ot.Vc,i._zappar_pipeline_motion_attitude_matrix_submit=ot.Wc,i._zappar_pipeline_camera_frame_user_facing=ot.Xc,i._zappar_pipeline_camera_frame_texture_matrix=ot.Yc,i._zappar_pipeline_camera_pose_with_attitude=ot.Zc,i._zappar_pipeline_camera_pose_with_origin=ot._c,i._zappar_pipeline_camera_frame_camera_attitude=ot.$c,i._zappar_pipeline_camera_frame_device_attitude=ot.ad,i._zappar_pipeline_camera_frame_texture_gl=ot.bd,i._zappar_pipeline_camera_frame_upload_gl=ot.cd,i._zappar_pipeline_sequence_record_start=ot.dd,i._zappar_pipeline_sequence_record_stop=ot.ed,i._zappar_pipeline_sequence_record_clear=ot.fd,i._zappar_pipeline_sequence_record_device_attitude_matrices_set=ot.gd,i._zappar_pipeline_sequence_record_data_size=ot.hd,i._zappar_pipeline_sequence_record_data=ot.id,i._zappar_pipeline_process_gl=ot.jd,i._zappar_pipeline_camera_pose_default=ot.kd,i._zappar_instant_world_tracker_create=ot.ld,i._zappar_instant_world_tracker_destroy=ot.md,i._zappar_instant_world_tracker_anchor_pose_set_from_camera_offset_raw=ot.nd,i._zappar_instant_world_tracker_anchor_pose_raw=ot.od,i._zappar_instant_world_tracker_enabled_set=ot.pd,i._zappar_instant_world_tracker_enabled=ot.qd,i._zappar_image_tracker_create=ot.rd,i._zappar_image_tracker_destroy=ot.sd,i._zappar_image_tracker_target_load_from_memory=ot.td,i.__Z42zappar_image_tracker_target_load_from_fileP23zappar_image_tracker_tiPKc=ot.ud;var st=i._free=ot.vd;i._zappar_image_tracker_anchor_count=ot.wd,i._zappar_image_tracker_anchor_id=ot.xd,i._zappar_image_tracker_anchor_pose_raw=ot.yd,i._zappar_image_tracker_enabled_set=ot.zd,i._zappar_image_tracker_enabled=ot.Ad,i._zappar_image_tracker_target_loaded_version=ot.Bd,i.__Z33zappar_image_tracker_target_countP23zappar_image_tracker_ti=ot.Cd,i.__Z46zappar_image_tracker_target_preview_compressedP23zappar_image_tracker_tii=ot.Dd,i.__Z51zappar_image_tracker_target_preview_compressed_sizeP23zappar_image_tracker_tii=ot.Ed,i.__Z55zappar_image_tracker_target_preview_compressed_mimetypeP23zappar_image_tracker_tii=ot.Fd,i.__Z40zappar_image_tracker_target_preview_rgbaP23zappar_image_tracker_tii=ot.Gd,i.__Z45zappar_image_tracker_target_preview_rgba_sizeP23zappar_image_tracker_tii=ot.Hd,i.__Z46zappar_image_tracker_target_preview_rgba_widthP23zappar_image_tracker_tii=ot.Id,i.__Z47zappar_image_tracker_target_preview_rgba_heightP23zappar_image_tracker_tii=ot.Jd,i.__Z38zappar_image_tracker_target_radius_topP23zappar_image_tracker_tii=ot.Kd,i.__Z41zappar_image_tracker_target_radius_bottomP23zappar_image_tracker_tii=ot.Ld,i.__Z39zappar_image_tracker_target_side_lengthP23zappar_image_tracker_tii=ot.Md,i.__Z49zappar_image_tracker_target_physical_scale_factorP23zappar_image_tracker_tii=ot.Nd,i.__Z49zappar_image_tracker_target_preview_mesh_verticesP23zappar_image_tracker_tii=ot.Od,i.__Z48zappar_image_tracker_target_preview_mesh_normalsP23zappar_image_tracker_tii=ot.Pd,i.__Z44zappar_image_tracker_target_preview_mesh_uvsP23zappar_image_tracker_tii=ot.Qd,i.__Z48zappar_image_tracker_target_preview_mesh_indicesP23zappar_image_tracker_tii=ot.Rd,i.__Z54zappar_image_tracker_target_preview_mesh_vertices_sizeP23zappar_image_tracker_tii=ot.Sd,i.__Z53zappar_image_tracker_target_preview_mesh_normals_sizeP23zappar_image_tracker_tii=ot.Td,i.__Z49zappar_image_tracker_target_preview_mesh_uvs_sizeP23zappar_image_tracker_tii=ot.Ud,i.__Z53zappar_image_tracker_target_preview_mesh_indices_sizeP23zappar_image_tracker_tii=ot.Vd,i.__Z32zappar_image_tracker_target_typeP23zappar_image_tracker_tii=ot.Wd,i._zappar_face_tracker_create=ot.Xd,i._zappar_face_tracker_destroy=ot.Yd,i._zappar_face_tracker_model_load_from_memory=ot.Zd,i._zappar_face_tracker_anchor_count=ot._d,i._zappar_face_tracker_anchor_id=ot.$d,i._zappar_face_tracker_anchor_pose_raw=ot.ae,i._zappar_face_tracker_anchor_identity_coefficients=ot.be,i._zappar_face_tracker_anchor_expression_coefficients=ot.ce,i._zappar_face_tracker_enabled_set=ot.de,i._zappar_face_tracker_enabled=ot.ee,i._zappar_face_tracker_max_faces_set=ot.fe,i._zappar_face_tracker_max_faces=ot.ge,i._zappar_face_tracker_model_loaded_version=ot.he,i._zappar_face_landmark_create=ot.ie,i._zappar_face_landmark_destroy=ot.je,i.__Z27zappar_face_landmark_updateP23zappar_face_landmark_tiPKfS2_i=ot.ke,i._zappar_face_landmark_anchor_pose=ot.le,i._zappar_barcode_finder_create=ot.me,i._zappar_barcode_finder_destroy=ot.ne,i._zappar_barcode_finder_found_number=ot.oe,i._zappar_barcode_finder_found_text=ot.pe,i._zappar_barcode_finder_enabled_set=ot.qe,i._zappar_barcode_finder_enabled=ot.re,i._zappar_barcode_finder_found_format=ot.se,i._zappar_barcode_finder_formats=ot.te,i._zappar_barcode_finder_formats_set=ot.ue,i._zappar_zapcode_tracker_create=ot.ve,i._zappar_zapcode_tracker_destroy=ot.we,i._zappar_zapcode_tracker_target_load_from_memory=ot.xe,i.__Z44zappar_zapcode_tracker_target_load_from_fileP25zappar_zapcode_tracker_tiPKc=ot.ye,i._zappar_zapcode_tracker_anchor_count=ot.ze,i._zappar_zapcode_tracker_anchor_id=ot.Ae,i._zappar_zapcode_tracker_anchor_pose_raw=ot.Be,i._zappar_zapcode_tracker_enabled_set=ot.Ce,i._zappar_zapcode_tracker_enabled=ot.De,i._zappar_zapcode_tracker_target_loaded_version=ot.Ee;var ct=i._malloc=ot.Fe;i._zappar_face_mesh_create=ot.Ge,i._zappar_face_mesh_destroy=ot.He,i.__Z33zappar_face_mesh_load_from_memoryP19zappar_face_mesh_tiPKciiiii=ot.Ie,i.__Z29zappar_face_mesh_indices_sizeP19zappar_face_mesh_ti=ot.Je,i.__Z25zappar_face_mesh_uvs_sizeP19zappar_face_mesh_ti=ot.Ke,i.__Z30zappar_face_mesh_vertices_sizeP19zappar_face_mesh_ti=ot.Le,i.__Z31zappar_face_mesh_loaded_versionP19zappar_face_mesh_ti=ot.Me,i.__Z25zappar_face_mesh_verticesP19zappar_face_mesh_ti=ot.Ne,i.__Z20zappar_face_mesh_uvsP19zappar_face_mesh_ti=ot.Oe,i.__Z24zappar_face_mesh_indicesP19zappar_face_mesh_ti=ot.Pe,i.__Z23zappar_face_mesh_updateP19zappar_face_mesh_tiPKfS2_i=ot.Qe,i.__Z29zappar_face_mesh_normals_sizeP19zappar_face_mesh_ti=ot.Re,i.__Z24zappar_face_mesh_normalsP19zappar_face_mesh_ti=ot.Se,i._zappar_camera_source_create=ot.Te,i._zappar_camera_source_destroy=ot.Ue,i._zappar_camera_source_start=ot.Ve,i._zappar_camera_source_pause=ot.We,i._zappar_camera_default_device_id=ot.Xe,i._zappar_sequence_source_create=ot.Ye,i.__Z28zappar_sequence_source_startP25zappar_sequence_source_ti=ot.Ze,i.__Z39zappar_sequence_source_load_from_memoryP25zappar_sequence_source_tiPKci=ot._e,i.__Z28zappar_sequence_source_pauseP25zappar_sequence_source_ti=ot.$e,i._zappar_sequence_source_destroy=ot.af,i._zappar_sequence_source_max_playback_fps_set=ot.bf,i._zappar_log_level_set=ot.cf,i._zappar_log_level=ot.df,i.__Z23zappar_log_redirect_setPFv18zappar_log_level_tPKcE=ot.ef,i._zappar_world_tracker_create=ot.ff,i._zappar_world_tracker_destroy=ot.gf,i._zappar_world_tracker_world_anchor_valid=ot.hf,i._zappar_world_tracker_plane_count=ot.jf,i._zappar_world_tracker_plane_pose_raw=ot.kf,i._zappar_world_tracker_world_anchor_pose_raw=ot.lf,i._zappar_world_tracker_ground_anchor_valid=ot.mf,i._zappar_world_tracker_ground_anchor_pose_raw=ot.nf,i._zappar_world_tracker_reset=ot.of,i._zappar_world_tracker_enabled_set=ot.pf,i._zappar_world_tracker_quality=ot.qf,i._zappar_world_tracker_enabled=ot.rf,i._zappar_world_tracker_debug_enabled=ot.sf,i._zappar_world_tracker_debug_enabled_set=ot.tf,i._zappar_world_tracker_debug_tracks_data=ot.uf,i._zappar_world_tracker_debug_tracks_data_size=ot.vf,i._zappar_world_tracker_debug_projections_data=ot.wf,i._zappar_world_tracker_debug_projections_data_size=ot.xf,i._worker_message_send_count=ot.yf,i._worker_message_send_clear=ot.zf,i._worker_message_send_data_size=ot.Af,i._worker_message_send_reference=ot.Bf,i._worker_message_send_data=ot.Cf,i._worker_message_receive=ot.Df,i._ceres_worker=ot.Ef,i._data_download_clear=ot.Ff,i._data_download_size=ot.Gf,i._data_download=ot.Hf,i._data_should_record_set=ot.If,i._zappar_analytics_project_id_set=ot.Jf,i.__ZN5boost13serialization16singleton_module8get_lockEv=ot.Kf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN10SLAMSystem19InitializationInputEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Lf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23mapIi5FrameNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Mf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__24pairIKi5FrameEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Nf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveE5FrameE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Of,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23mapIiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEENS4_4lessIiEENS4_9allocatorINS4_4pairIKiS8_EEEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Pf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__24pairIKiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Qf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Rf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam5Pose3EE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Sf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi3ELi1ELi0ELi3ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Tf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__26bitsetILm1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Uf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__26vectorI3ImuNS4_9allocatorIS6_EEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Vf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveE3ImuE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Wf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23mapIi12WorldFeatureNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Xf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__24pairIKi12WorldFeatureEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Yf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveE12WorldFeatureE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Zf,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__210shared_ptrIN5gtsam7Cal3_S2EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot._f,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam7Cal3_S2EE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.$f,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi5ELi1ELi0ELi5ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ag,i.__ZNK5boost7archive6detail19pointer_iserializerINS0_15binary_iarchiveEN5gtsam7Cal3_S2EE15load_object_ptrERNS1_14basic_iarchiveEPvj=ot.bg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN10SLAMSystem10ParametersEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.cg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN2cv12TermCriteriaEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.dg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN10SLAMSystem20InitializationResultEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.eg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN10SLAMSystem19InitializationInputEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.fg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23mapIi5FrameNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.gg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__24pairIKi5FrameEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.hg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveE5FrameE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ig,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23mapIiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEENS4_4lessIiEENS4_9allocatorINS4_4pairIKiS8_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.jg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__24pairIKiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.kg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.lg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam5Pose3EE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.mg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi3ELi1ELi0ELi3ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ng,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__26bitsetILm1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.og,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__26vectorI3ImuNS4_9allocatorIS6_EEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.pg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveE3ImuE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.qg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23mapIi12WorldFeatureNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.rg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__24pairIKi12WorldFeatureEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.sg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveE12WorldFeatureE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.tg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__210shared_ptrIN5gtsam7Cal3_S2EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ug,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam7Cal3_S2EE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.vg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi5ELi1ELi0ELi5ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.wg,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_15binary_oarchiveEN5gtsam7Cal3_S2EE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.xg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN10SLAMSystem10ParametersEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.yg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN2cv12TermCriteriaEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.zg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN10SLAMSystem20InitializationResultEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Ag,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveE9RecordingE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Bg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__26vectorI11SensorEventNS4_9allocatorIS6_EEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Cg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveE11SensorEventE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Dg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5Eigen6MatrixIdLin1ELi1ELi0ELin1ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Eg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23setIiNS4_4lessIiEENS4_9allocatorIiEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Fg,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__26bitsetILm2EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Gg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23setIiNS4_4lessIiEENS4_9allocatorIiEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Hg,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__26bitsetILm2EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ig,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5Eigen6MatrixIdLi3ELi1ELi0ELi3ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Jg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5Eigen6MatrixIdLi5ELi1ELi0ELi5ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Kg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__23setIiNS4_4lessIiEENS4_9allocatorIiEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Lg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__26bitsetILm2EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Mg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__23mapIi5FrameNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ng,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__24pairIKi5FrameEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Og,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveE5FrameE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Pg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__23mapIiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEENS4_4lessIiEENS4_9allocatorINS4_4pairIKiS8_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Qg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__24pairIKiN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Rg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5Eigen6MatrixIdLi2ELi1ELi0ELi2ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Sg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam5Pose3EE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Tg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__26bitsetILm1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ug,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__26vectorI3ImuNS4_9allocatorIS6_EEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Vg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveE3ImuE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Wg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__23mapIi12WorldFeatureNS4_4lessIiEENS4_9allocatorINS4_4pairIKiS6_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Xg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__24pairIKi12WorldFeatureEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Yg,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveE12WorldFeatureE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Zg,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_15binary_iarchiveEN5gtsam5Pose3EE11instantiateEv=ot._g,i.__ZNK5boost7archive6detail19pointer_iserializerINS0_15binary_iarchiveEN5gtsam5Pose3EE15load_object_ptrERNS1_14basic_iarchiveEPvj=ot.$g,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_15binary_oarchiveEN5gtsam5Pose3EE11instantiateEv=ot.ah,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_15binary_oarchiveEN5gtsam5Pose3EE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.bh,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_12xml_oarchiveEN5gtsam5Pose3EE11instantiateEv=ot.ch,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_12xml_oarchiveEN5gtsam5Pose3EE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.dh,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_15binary_iarchiveEN5gtsam21LinearContainerFactorEE11instantiateEv=ot.eh,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam21LinearContainerFactorEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.fh,i.__ZN5boost13serialization18void_cast_registerIN5gtsam21LinearContainerFactorENS2_15NonlinearFactorEEERKNS0_16void_cast_detail11void_casterEPKT_PKT0_=ot.gh,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam15NonlinearFactorEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.hh,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__210shared_ptrIN5gtsam14GaussianFactorEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ih,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__28optionalIN5gtsam6ValuesEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.jh,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam6ValuesEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.kh,i.__ZNK5boost7archive6detail19pointer_iserializerINS0_15binary_iarchiveEN5gtsam21LinearContainerFactorEE15load_object_ptrERNS1_14basic_iarchiveEPvj=ot.lh,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_15binary_oarchiveEN5gtsam21LinearContainerFactorEE11instantiateEv=ot.mh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam21LinearContainerFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.nh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam15NonlinearFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.oh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__210shared_ptrIN5gtsam14GaussianFactorEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ph,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__28optionalIN5gtsam6ValuesEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.qh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam6ValuesEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.rh,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_15binary_oarchiveEN5gtsam21LinearContainerFactorEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.sh,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_12xml_oarchiveEN5gtsam21LinearContainerFactorEE11instantiateEv=ot.th,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam21LinearContainerFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.uh,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam15NonlinearFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.vh,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__210shared_ptrIN5gtsam14GaussianFactorEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.wh,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__28optionalIN5gtsam6ValuesEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.xh,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam6ValuesEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.yh,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_12xml_oarchiveEN5gtsam21LinearContainerFactorEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.zh,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_15binary_iarchiveEN5gtsam13HessianFactorEE11instantiateEv=ot.Ah,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam13HessianFactorEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Bh,i.__ZNK5boost7archive6detail19pointer_iserializerINS0_15binary_iarchiveEN5gtsam13HessianFactorEE15load_object_ptrERNS1_14basic_iarchiveEPvj=ot.Ch,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_15binary_oarchiveEN5gtsam13HessianFactorEE11instantiateEv=ot.Dh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam13HessianFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Eh,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_15binary_oarchiveEN5gtsam13HessianFactorEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.Fh,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_12xml_oarchiveEN5gtsam13HessianFactorEE11instantiateEv=ot.Gh,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam13HessianFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Hh,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_12xml_oarchiveEN5gtsam13HessianFactorEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.Ih,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_15binary_iarchiveEN5gtsam14JacobianFactorEE11instantiateEv=ot.Jh,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam14JacobianFactorEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Kh,i.__ZNK5boost7archive6detail19pointer_iserializerINS0_15binary_iarchiveEN5gtsam14JacobianFactorEE15load_object_ptrERNS1_14basic_iarchiveEPvj=ot.Lh,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_15binary_oarchiveEN5gtsam14JacobianFactorEE11instantiateEv=ot.Mh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam14JacobianFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Nh,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_15binary_oarchiveEN5gtsam14JacobianFactorEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.Oh,i.__ZN5boost7archive6detail25ptr_serialization_supportINS0_12xml_oarchiveEN5gtsam14JacobianFactorEE11instantiateEv=ot.Ph,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam14JacobianFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Qh,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_12xml_oarchiveEN5gtsam14JacobianFactorEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.Rh,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLi6ELi1ELi0ELi6ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Sh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLi6ELi1ELi0ELi6ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Th,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5Eigen6MatrixIdLi6ELi1ELi0ELi6ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Uh,i.__ZN5boost13serialization18void_cast_registerIN5gtsam10noiseModel8DiagonalENS3_8GaussianEEERKNS0_16void_cast_detail11void_casterEPKT_PKT0_=ot.Vh,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam10noiseModel8GaussianEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Wh,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLin1ELi1ELi0ELin1ELi1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Xh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam10noiseModel8GaussianEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Yh,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLin1ELi1ELi0ELin1ELi1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Zh,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam10noiseModel8GaussianEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot._h,i.__ZN5boost13serialization18void_cast_registerIN5gtsam15NonlinearFactorENS2_6FactorEEERKNS0_16void_cast_detail11void_casterEPKT_PKT0_=ot.$h,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam6FactorEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ai,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam6FactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.bi,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam6FactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ci,i.__ZN5boost13serialization18void_cast_registerIN5gtsam14GaussianFactorENS2_6FactorEEERKNS0_16void_cast_detail11void_casterEPKT_PKT0_=ot.di,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5Eigen6MatrixIdLin1ELin1ELi0ELin1ELin1EEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ei,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__26vectorIlNS4_9allocatorIlEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.fi,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5Eigen6MatrixIdLin1ELin1ELi0ELin1ELin1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.gi,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__26vectorIlNS4_9allocatorIlEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.hi,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5Eigen6MatrixIdLin1ELin1ELi0ELin1ELin1EEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ii,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__26vectorIlNS4_9allocatorIlEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ji,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__23mapIyNS4_10unique_ptrIN5gtsam5ValueENS4_14default_deleteIS8_EEEENS4_4lessIyEENS4_9allocatorINS4_4pairIKySB_EEEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ki,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__24pairIKyNS4_10unique_ptrIN5gtsam5ValueENS4_14default_deleteIS9_EEEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.li,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__210unique_ptrIN5gtsam5ValueENS4_14default_deleteIS7_EEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.mi,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__23mapIyRKN5gtsam5ValueENS4_4lessIyEENS4_9allocatorINS4_4pairIKyS9_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ni,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__24pairIKyRKN5gtsam5ValueEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.oi,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam5ValueEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.pi,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__23mapIyRKN5gtsam5ValueENS4_4lessIyEENS4_9allocatorINS4_4pairIKyS9_EEEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.qi,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__24pairIKyRKN5gtsam5ValueEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ri,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam5ValueEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.si,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__26vectorIyNS4_9allocatorIyEEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.ti,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__26vectorIyNS4_9allocatorIyEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.ui,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__26vectorIyNS4_9allocatorIyEEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.vi,i.__ZN5boost13serialization18void_cast_registerIN5gtsam14JacobianFactorENS2_14GaussianFactorEEERKNS0_16void_cast_detail11void_casterEPKT_PKT0_=ot.wi,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam14GaussianFactorEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.xi,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam19VerticalBlockMatrixEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.yi,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveENSt3__210shared_ptrIN5gtsam10noiseModel8DiagonalEEEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.zi,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam10noiseModel8DiagonalEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Ai,i.__ZNK5boost7archive6detail19pointer_iserializerINS0_15binary_iarchiveEN5gtsam10noiseModel8DiagonalEE15load_object_ptrERNS1_14basic_iarchiveEPvj=ot.Bi,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam14GaussianFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ci,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam19VerticalBlockMatrixEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Di,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveENSt3__210shared_ptrIN5gtsam10noiseModel8DiagonalEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ei,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam10noiseModel8DiagonalEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Fi,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_15binary_oarchiveEN5gtsam10noiseModel8DiagonalEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.Gi,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam14GaussianFactorEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Hi,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam19VerticalBlockMatrixEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ii,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveENSt3__210shared_ptrIN5gtsam10noiseModel8DiagonalEEEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ji,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam10noiseModel8DiagonalEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Ki,i.__ZNK5boost7archive6detail19pointer_oserializerINS0_12xml_oarchiveEN5gtsam10noiseModel8DiagonalEE15save_object_ptrERNS1_14basic_oarchiveEPKv=ot.Li,i.__ZN5boost13serialization18void_cast_registerIN5gtsam13HessianFactorENS2_14GaussianFactorEEERKNS0_16void_cast_detail11void_casterEPKT_PKT0_=ot.Mi,i.__ZNK5boost7archive6detail11iserializerINS0_15binary_iarchiveEN5gtsam20SymmetricBlockMatrixEE16load_object_dataERNS1_14basic_iarchiveEPvj=ot.Ni,i.__ZNK5boost7archive6detail11oserializerINS0_15binary_oarchiveEN5gtsam20SymmetricBlockMatrixEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Oi,i.__ZNK5boost7archive6detail11oserializerINS0_12xml_oarchiveEN5gtsam20SymmetricBlockMatrixEE16save_object_dataERNS1_14basic_oarchiveEPKv=ot.Pi;var lt,dt=ot.Qi,ht=ot.Ri,ut=ot.Si,ft=ot.Ti,pt=ot.Ui,bt=ot.Vi,mt=ot.Wi,Et=ot.Xi,vt=ot.Yi,wt=i.dynCall_j=ot.Zi,gt=i.dynCall_viij=ot._i,yt=i.dynCall_viijii=ot.$i,Nt=i.dynCall_viiij=ot.aj,kt=i.dynCall_vij=ot.bj,St=i.dynCall_iij=ot.cj,jt=i.dynCall_iiji=ot.dj,zt=i.dynCall_viji=ot.ej,It=i.dynCall_iijj=ot.fj,Rt=i.dynCall_jiji=ot.gj,At=i.dynCall_jij=ot.hj,xt=i.dynCall_iiij=ot.ij,Lt=i.dynCall_ji=ot.jj,Tt=i.dynCall_iijjjjji=ot.kj,Pt=i.dynCall_viiji=ot.lj,Ft=i.dynCall_diji=ot.mj,Mt=i.dynCall_iijii=ot.nj,Kt=i.dynCall_viiiijii=ot.oj,Ct=i.dynCall_iiiiijii=ot.pj,Ot=i.dynCall_iijiii=ot.qj,Bt=i.dynCall_jiii=ot.rj,Dt=i.dynCall_jii=ot.sj,Ut=i.dynCall_vjii=ot.tj,Zt=i.dynCall_vji=ot.uj,Vt=i.dynCall_iji=ot.vj,Gt=i.dynCall_iiiij=ot.wj,Ht=i.dynCall_jj=ot.xj,Wt=i.dynCall_djj=ot.yj,Yt=i.dynCall_iiiiij=ot.zj,Xt=i.dynCall_jiiii=ot.Aj;function qt(){function e(){if(!lt&&(lt=!0,i.calledRun=!0,!N)){if(i.noFSInit||Me||(Me=!0,i.stdin=i.stdin,i.stdout=i.stdout,i.stderr=i.stderr,i.stdin?We("stdin",i.stdin):Ze("/dev/tty","/dev/stdin"),i.stdout?We("stdout",null,i.stdout):Ze("/dev/tty","/dev/stdout"),i.stderr?We("stderr",null,i.stderr):Ze("/dev/tty1","/dev/stderr"),Ge("/dev/stdin",0),Ge("/dev/stdout",1),Ge("/dev/stderr",1)),we=!1,B(j),t(i),i.onRuntimeInitialized&&i.onRuntimeInitialized(),i.postRun)for("function"==typeof i.postRun&&(i.postRun=[i.postRun]);i.postRun.length;){var e=i.postRun.shift();z.unshift(e)}B(z)}}if(!(0<L)){if(i.preRun)for("function"==typeof i.preRun&&(i.preRun=[i.preRun]);i.preRun.length;)I();B(S),0<L||(i.setStatus?(i.setStatus("Running..."),setTimeout((function(){setTimeout((function(){i.setStatus("")}),1),e()}),1)):e())}}if(i.___start_em_js=681716,i.___stop_em_js=682881,i.cwrap=(e,r,t,a)=>{var _=!t||t.every((e=>"number"===e||"boolean"===e));return"string"!==r&&_&&!a?i["_"+e]:function(){return((e,r,t,a)=>{var _={string:e=>{var r=0;if(null!=e&&0!==e){r=ae(e)+1;var t=pt(r);ie(e,b,t,r),r=t}return r},array:e=>{var r=pt(e.length);return p.set(e,r),r}};e=i["_"+e];var n,o=[],s=0;if(a)for(var c=0;c<a.length;c++){var l=_[t[c]];l?(0===s&&(s=ut()),o[c]=l(a[c])):o[c]=a[c]}return n=t=e.apply(null,o),0!==s&&ft(s),"string"===r?n?re(b,n):"":"boolean"===r?!!n:n})(e,r,t,arguments)}},i.setValue=function(e,r,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":case"i8":p[e>>0]=r;break;case"i16":m[e>>1]=r;break;case"i32":v[e>>2]=r;break;case"i64":K("to do setValue(i64) use WASM_BIGINT");case"float":g[e>>2]=r;break;case"double":y[e>>3]=r;break;case"*":w[e>>2]=r;break;default:K(`invalid type for setValue: ${t}`)}},i.getValue=function(e,r="i8"){switch(r.endsWith("*")&&(r="*"),r){case"i1":case"i8":return p[e>>0];case"i16":return m[e>>1];case"i32":return v[e>>2];case"i64":K("to do getValue(i64) use WASM_BIGINT");case"float":return g[e>>2];case"double":return y[e>>3];case"*":return w[e>>2];default:K(`invalid type for getValue: ${r}`)}},i.UTF8ToString=Je,P=function e(){lt||qt(),lt||(P=e)},i.preInit)for("function"==typeof i.preInit&&(i.preInit=[i.preInit]);0<i.preInit.length;)i.preInit.pop()();return qt(),r});class a{constructor(e){this._messageSender=e,this._freeBufferPool=[],this._buffer=new ArrayBuffer(16),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=1,this._startOffset=-1,this._timeoutSet=!1,this._appender={int:e=>this.int(e),bool:e=>this.int(e?1:0),float:e=>this.float(e),string:e=>this.string(e),dataWithLength:e=>this.arrayBuffer(e),type:e=>this.int(e),matrix4x4:e=>this.float32ArrayBuffer(e),matrix3x3:e=>this.float32ArrayBuffer(e),floatArray:e=>this.float32ArrayBuffer(e),identityCoefficients:e=>this.float32ArrayBuffer(e),expressionCoefficients:e=>this.float32ArrayBuffer(e),cameraModel:e=>this.float32ArrayBuffer(e),timestamp:e=>this.double(e),barcodeFormat:e=>this.int(e),faceLandmarkName:e=>this.int(e),instantTrackerTransformOrientation:e=>this.int(e),logLevel:e=>this.int(e)},this._freeBufferPool.push(new ArrayBuffer(16)),this._freeBufferPool.push(new ArrayBuffer(16))}bufferReturn(e){this._freeBufferPool.push(e)}_ensureArrayBuffer(e){let r,t=4*(this._offset+e+8);if(this._buffer&&this._buffer.byteLength>=t)return;if(!r){let e=t;e--,e|=e>>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,e++,r=new ArrayBuffer(e)}let a=this._buffer?this._i32View:void 0;this._buffer=r,this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),a&&this._i32View.set(a.subarray(0,this._offset))}sendMessage(e,r){this._ensureArrayBuffer(4),this._startOffset=this._offset,this._i32View[this._offset+1]=e,this._offset+=2,r(this._appender),this._i32View[this._startOffset]=this._offset-this._startOffset,this._startOffset=-1,this._sendOneTime()}_sendOneTime(){!1===this._timeoutSet&&(this._timeoutSet=!0,setTimeout((()=>{this._timeoutSet=!1,this._send()}),0))}_send(){0!==this._freeBufferPool.length?(this._i32View[0]=this._offset,this._messageSender(this._buffer),this._buffer=void 0,this._buffer=this._freeBufferPool.pop(),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=1,this._startOffset=-1):this._sendOneTime()}int(e){this._ensureArrayBuffer(1),this._i32View[this._offset]=e,this._offset++}double(e){this._ensureArrayBuffer(2),this._offset%2==1&&this._offset++,this._f64View[this._offset/2]=e,this._offset+=2}float(e){this._ensureArrayBuffer(1),this._f32View[this._offset]=e,this._offset++}int32Array(e){this._ensureArrayBuffer(e.length);for(let r=0;r<e.length;++r)this._i32View[this._offset+r]=e[r];this._offset+=e.length}float32Array(e){this._ensureArrayBuffer(e.length);for(let r=0;r<e.length;++r)this._f32View[this._offset+r]=e[r];this._offset+=e.length}booleanArray(e){this._ensureArrayBuffer(e.length);for(let r=0;r<e.length;++r)this._i32View[this._offset+r]=e[r]?1:0;this._offset+=e.length}uint8ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.byteLength,this._offset++,this._u8View.set(e,4*this._offset),this._offset+=e.byteLength>>2,0!=(3&e.byteLength)&&this._offset++}arrayBuffer(e){let r=new Uint8Array(e);this.uint8ArrayBuffer(r)}uint8ClampedArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.byteLength,this._offset++,this._u8cView.set(e,4*this._offset),this._offset+=e.byteLength>>2,0!=(3&e.byteLength)&&this._offset++}float32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._f32View.set(e,this._offset),this._offset+=e.length}uint16ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++;let r=2*this._offset;this._u16View.set(e,r),this._offset+=e.length>>1,0!=(1&e.length)&&this._offset++}int32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._i32View.set(e,this._offset),this._offset+=e.length}uint32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._u32View.set(e,this._offset),this._offset+=e.length}string(e){let r=(new TextEncoder).encode(e);this._ensureArrayBuffer(r.byteLength/4),this._i32View[this._offset]=r.byteLength,this._offset++,this._u8View.set(r,4*this._offset),this._offset+=r.byteLength>>2,0!=(3&r.byteLength)&&this._offset++}}class i{constructor(){this._buffer=new ArrayBuffer(0),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=0,this._length=0,this._startOffset=-1,this._processor={int:()=>this._i32View[this._startOffset++],bool:()=>1===this._i32View[this._startOffset++],type:()=>this._i32View[this._startOffset++],float:()=>this._f32View[this._startOffset++],timestamp:()=>{this._startOffset%2==1&&this._startOffset++;let e=this._f64View[this._startOffset/2];return this._startOffset+=2,e},string:()=>{let e=this._i32View[this._startOffset++],r=(new TextDecoder).decode(new Uint8Array(this._buffer,4*this._startOffset,e));return this._startOffset+=e>>2,0!=(3&e)&&this._startOffset++,r},dataWithLength:()=>{let e=this._i32View[this._startOffset++],r=new Uint8Array(e);return r.set(this._u8View.subarray(4*this._startOffset,4*this._startOffset+e)),this._startOffset+=r.byteLength>>2,0!=(3&r.byteLength)&&this._startOffset++,r.buffer},floatArray:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+e)),this._startOffset+=e,r},matrix4x4:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+16)),this._startOffset+=e,r},matrix3x3:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+9)),this._startOffset+=e,r},identityCoefficients:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+50)),this._startOffset+=e,r},expressionCoefficients:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+29)),this._startOffset+=e,r},cameraModel:()=>{let e=this._i32View[this._startOffset++],r=new Float32Array(e);return r.set(this._f32View.subarray(this._startOffset,this._startOffset+6)),this._startOffset+=e,r},barcodeFormat:()=>this._i32View[this._startOffset++],faceLandmarkName:()=>this._i32View[this._startOffset++],instantTrackerTransformOrientation:()=>this._i32View[this._startOffset++],logLevel:()=>this._i32View[this._startOffset++]}}setData(e){this._buffer=e,this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=0,this._length=0,e.byteLength>=4&&(this._offset=1,this._length=this._i32View[0]),this._startOffset=-1}hasMessage(){return this._offset+1<this._length}forMessages(e){for(;this.hasMessage();){let r=this._i32View[this._offset],t=this._i32View[this._offset+1];this._startOffset=this._offset+2,this._offset+=r,e(t,this._processor)}}}class _{constructor(e,r){this._impl=e,this._sender=r,this._deserializer=new i,this.serializersByPipelineId=new Map,this._pipeline_id_by_pipeline_id=new Map,this._pipeline_by_instance=new Map,this._pipeline_id_by_camera_source_id=new Map,this._camera_source_by_instance=new Map,this._pipeline_id_by_sequence_source_id=new Map,this._sequence_source_by_instance=new Map,this._pipeline_id_by_image_tracker_id=new Map,this._image_tracker_by_instance=new Map,this._pipeline_id_by_face_tracker_id=new Map,this._face_tracker_by_instance=new Map,this._pipeline_id_by_face_mesh_id=new Map,this._face_mesh_by_instance=new Map,this._pipeline_id_by_face_landmark_id=new Map,this._face_landmark_by_instance=new Map,this._pipeline_id_by_barcode_finder_id=new Map,this._barcode_finder_by_instance=new Map,this._pipeline_id_by_instant_world_tracker_id=new Map,this._instant_world_tracker_by_instance=new Map,this._pipeline_id_by_zapcode_tracker_id=new Map,this._zapcode_tracker_by_instance=new Map,this._pipeline_id_by_world_tracker_id=new Map,this._world_tracker_by_instance=new Map}processBuffer(e){this._deserializer.setData(e),this._deserializer.forMessages(((e,r)=>{switch(e){case 38:this._impl.log_level_set(r.logLevel());break;case 35:this._impl.analytics_project_id_set(r.string(),r.string());break;case 31:{let e=r.type(),t=this._impl.pipeline_create();this._pipeline_by_instance.set(e,t),this._pipeline_id_by_pipeline_id.set(e,e),this.serializersByPipelineId.set(e,new a((r=>{this._sender(e,r)})));break}case 32:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_destroy(t),this._pipeline_by_instance.delete(e);break}case 9:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_frame_update(t);break}case 8:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_camera_frame_submit(t,r.dataWithLength(),r.int(),r.int(),r.int(),r.matrix4x4(),r.cameraModel(),r.bool());break}case 10:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_accelerometer_submit(t,r.timestamp(),r.float(),r.float(),r.float());break}case 12:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_accelerometer_with_gravity_submit_int(t,r.timestamp(),r.timestamp(),r.float(),r.float(),r.float());break}case 11:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_accelerometer_without_gravity_submit_int(t,r.timestamp(),r.timestamp(),r.float(),r.float(),r.float());break}case 15:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_rotation_rate_submit(t,r.timestamp(),r.float(),r.float(),r.float());break}case 13:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_rotation_rate_submit_int(t,r.timestamp(),r.timestamp(),r.float(),r.float(),r.float());break}case 16:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_attitude_submit(t,r.timestamp(),r.float(),r.float(),r.float());break}case 14:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_attitude_submit_int(t,r.timestamp(),r.timestamp(),r.float(),r.float(),r.float());break}case 17:{let e=r.type(),t=this._pipeline_by_instance.get(e);if(void 0===t)return;this._impl.pipeline_motion_attitude_matrix_submit(t,r.matrix4x4());break}case 33:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=r.string(),_=this._impl.camera_source_create(a,i);this._camera_source_by_instance.set(e,_),this._pipeline_id_by_camera_source_id.set(e,t);break}case 34:{let e=r.type(),t=this._camera_source_by_instance.get(e);if(void 0===t)return;this._impl.camera_source_destroy(t),this._camera_source_by_instance.delete(e);break}case 39:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.sequence_source_create(a);this._sequence_source_by_instance.set(e,i),this._pipeline_id_by_sequence_source_id.set(e,t);break}case 40:{let e=r.type(),t=this._sequence_source_by_instance.get(e);if(void 0===t)return;this._impl.sequence_source_destroy(t),this._sequence_source_by_instance.delete(e);break}case 2:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.image_tracker_create(a);this._image_tracker_by_instance.set(e,i),this._pipeline_id_by_image_tracker_id.set(e,t);break}case 18:{let e=r.type(),t=this._image_tracker_by_instance.get(e);if(void 0===t)return;this._impl.image_tracker_destroy(t),this._image_tracker_by_instance.delete(e);break}case 4:{let e=r.type(),t=this._image_tracker_by_instance.get(e);if(void 0===t)return;this._impl.image_tracker_target_load_from_memory(t,r.dataWithLength());break}case 3:{let e=r.type(),t=this._image_tracker_by_instance.get(e);if(void 0===t)return;this._impl.image_tracker_enabled_set(t,r.bool());break}case 24:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.face_tracker_create(a);this._face_tracker_by_instance.set(e,i),this._pipeline_id_by_face_tracker_id.set(e,t);break}case 25:{let e=r.type(),t=this._face_tracker_by_instance.get(e);if(void 0===t)return;this._impl.face_tracker_destroy(t),this._face_tracker_by_instance.delete(e);break}case 26:{let e=r.type(),t=this._face_tracker_by_instance.get(e);if(void 0===t)return;this._impl.face_tracker_model_load_from_memory(t,r.dataWithLength());break}case 27:{let e=r.type(),t=this._face_tracker_by_instance.get(e);if(void 0===t)return;this._impl.face_tracker_enabled_set(t,r.bool());break}case 28:{let e=r.type(),t=this._face_tracker_by_instance.get(e);if(void 0===t)return;this._impl.face_tracker_max_faces_set(t,r.int());break}case 29:{let e=r.type(),t=this._impl.face_mesh_create();this._face_mesh_by_instance.set(e,t);break}case 30:{let e=r.type(),t=this._face_mesh_by_instance.get(e);if(void 0===t)return;this._impl.face_mesh_destroy(t),this._face_mesh_by_instance.delete(e);break}case 36:{let e=r.type(),t=r.faceLandmarkName(),a=this._impl.face_landmark_create(t);this._face_landmark_by_instance.set(e,a);break}case 37:{let e=r.type(),t=this._face_landmark_by_instance.get(e);if(void 0===t)return;this._impl.face_landmark_destroy(t),this._face_landmark_by_instance.delete(e);break}case 20:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.barcode_finder_create(a);this._barcode_finder_by_instance.set(e,i),this._pipeline_id_by_barcode_finder_id.set(e,t);break}case 21:{let e=r.type(),t=this._barcode_finder_by_instance.get(e);if(void 0===t)return;this._impl.barcode_finder_destroy(t),this._barcode_finder_by_instance.delete(e);break}case 22:{let e=r.type(),t=this._barcode_finder_by_instance.get(e);if(void 0===t)return;this._impl.barcode_finder_enabled_set(t,r.bool());break}case 23:{let e=r.type(),t=this._barcode_finder_by_instance.get(e);if(void 0===t)return;this._impl.barcode_finder_formats_set(t,r.barcodeFormat());break}case 5:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.instant_world_tracker_create(a);this._instant_world_tracker_by_instance.set(e,i),this._pipeline_id_by_instant_world_tracker_id.set(e,t);break}case 19:{let e=r.type(),t=this._instant_world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.instant_world_tracker_destroy(t),this._instant_world_tracker_by_instance.delete(e);break}case 6:{let e=r.type(),t=this._instant_world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.instant_world_tracker_enabled_set(t,r.bool());break}case 7:{let e=r.type(),t=this._instant_world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.instant_world_tracker_anchor_pose_set_from_camera_offset_raw(t,r.float(),r.float(),r.float(),r.instantTrackerTransformOrientation());break}case 41:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.zapcode_tracker_create(a);this._zapcode_tracker_by_instance.set(e,i),this._pipeline_id_by_zapcode_tracker_id.set(e,t);break}case 44:{let e=r.type(),t=this._zapcode_tracker_by_instance.get(e);if(void 0===t)return;this._impl.zapcode_tracker_destroy(t),this._zapcode_tracker_by_instance.delete(e);break}case 43:{let e=r.type(),t=this._zapcode_tracker_by_instance.get(e);if(void 0===t)return;this._impl.zapcode_tracker_target_load_from_memory(t,r.dataWithLength());break}case 42:{let e=r.type(),t=this._zapcode_tracker_by_instance.get(e);if(void 0===t)return;this._impl.zapcode_tracker_enabled_set(t,r.bool());break}case 45:{let e=r.type(),t=r.type(),a=this._pipeline_by_instance.get(t),i=this._impl.world_tracker_create(a);this._world_tracker_by_instance.set(e,i),this._pipeline_id_by_world_tracker_id.set(e,t);break}case 46:{let e=r.type(),t=this._world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.world_tracker_destroy(t),this._world_tracker_by_instance.delete(e);break}case 47:{let e=r.type(),t=this._world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.world_tracker_enabled_set(t,r.bool());break}case 48:{let e=r.type(),t=this._world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.world_tracker_reset(t);break}case 49:{let e=r.type(),t=this._world_tracker_by_instance.get(e);if(void 0===t)return;this._impl.world_tracker_debug_enabled_set(t,r.bool());break}}}))}exploreState(){for(let[e,r]of this._pipeline_by_instance){let t=this._pipeline_id_by_pipeline_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);a&&(a.sendMessage(7,(t=>{t.type(e),t.int(this._impl.pipeline_frame_number(r))})),a.sendMessage(6,(t=>{t.type(e),t.cameraModel(this._impl.pipeline_camera_model(r))})),a.sendMessage(5,(t=>{t.type(e),t.int(this._impl.pipeline_camera_frame_user_data(r))})),a.sendMessage(11,(t=>{t.type(e),t.matrix4x4(this._impl.pipeline_camera_frame_camera_attitude(r))})),a.sendMessage(12,(t=>{t.type(e),t.matrix4x4(this._impl.pipeline_camera_frame_device_attitude(r))})))}for(let[e,r]of this._camera_source_by_instance){let r=this._pipeline_id_by_camera_source_id.get(e);r&&this.serializersByPipelineId.get(r)}for(let[e,r]of this._sequence_source_by_instance){let r=this._pipeline_id_by_sequence_source_id.get(e);r&&this.serializersByPipelineId.get(r)}for(let[e,r]of this._image_tracker_by_instance){let t=this._pipeline_id_by_image_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(19,(t=>{t.type(e),t.int(this._impl.image_tracker_target_loaded_version(r))})),a.sendMessage(1,(t=>{t.type(e),t.int(this._impl.image_tracker_anchor_count(r))}));for(let t=0;t<this._impl.image_tracker_anchor_count(r);t++)a.sendMessage(2,(a=>{a.type(e),a.int(t),a.string(this._impl.image_tracker_anchor_id(r,t))}));for(let t=0;t<this._impl.image_tracker_anchor_count(r);t++)a.sendMessage(3,(a=>{a.type(e),a.int(t),a.matrix4x4(this._impl.image_tracker_anchor_pose_raw(r,t))}))}}for(let[e,r]of this._face_tracker_by_instance){let t=this._pipeline_id_by_face_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(18,(t=>{t.type(e),t.int(this._impl.face_tracker_model_loaded_version(r))})),a.sendMessage(13,(t=>{t.type(e),t.int(this._impl.face_tracker_anchor_count(r))}));for(let t=0;t<this._impl.face_tracker_anchor_count(r);t++)a.sendMessage(14,(a=>{a.type(e),a.int(t),a.string(this._impl.face_tracker_anchor_id(r,t))}));for(let t=0;t<this._impl.face_tracker_anchor_count(r);t++)a.sendMessage(15,(a=>{a.type(e),a.int(t),a.matrix4x4(this._impl.face_tracker_anchor_pose_raw(r,t))}));for(let t=0;t<this._impl.face_tracker_anchor_count(r);t++)a.sendMessage(16,(a=>{a.type(e),a.int(t),a.identityCoefficients(this._impl.face_tracker_anchor_identity_coefficients(r,t))}));for(let t=0;t<this._impl.face_tracker_anchor_count(r);t++)a.sendMessage(17,(a=>{a.type(e),a.int(t),a.expressionCoefficients(this._impl.face_tracker_anchor_expression_coefficients(r,t))}))}}for(let[e,r]of this._face_mesh_by_instance){let r=this._pipeline_id_by_face_mesh_id.get(e);r&&this.serializersByPipelineId.get(r)}for(let[e,r]of this._face_landmark_by_instance){let r=this._pipeline_id_by_face_landmark_id.get(e);r&&this.serializersByPipelineId.get(r)}for(let[e,r]of this._barcode_finder_by_instance){let t=this._pipeline_id_by_barcode_finder_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(8,(t=>{t.type(e),t.int(this._impl.barcode_finder_found_number(r))}));for(let t=0;t<this._impl.barcode_finder_found_number(r);t++)a.sendMessage(9,(a=>{a.type(e),a.int(t),a.string(this._impl.barcode_finder_found_text(r,t))}));for(let t=0;t<this._impl.barcode_finder_found_number(r);t++)a.sendMessage(10,(a=>{a.type(e),a.int(t),a.barcodeFormat(this._impl.barcode_finder_found_format(r,t))}))}}for(let[e,r]of this._instant_world_tracker_by_instance){let t=this._pipeline_id_by_instant_world_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);a&&a.sendMessage(4,(t=>{t.type(e),t.matrix4x4(this._impl.instant_world_tracker_anchor_pose_raw(r))}))}for(let[e,r]of this._zapcode_tracker_by_instance){let t=this._pipeline_id_by_zapcode_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(24,(t=>{t.type(e),t.int(this._impl.zapcode_tracker_target_loaded_version(r))})),a.sendMessage(21,(t=>{t.type(e),t.int(this._impl.zapcode_tracker_anchor_count(r))}));for(let t=0;t<this._impl.zapcode_tracker_anchor_count(r);t++)a.sendMessage(22,(a=>{a.type(e),a.int(t),a.string(this._impl.zapcode_tracker_anchor_id(r,t))}));for(let t=0;t<this._impl.zapcode_tracker_anchor_count(r);t++)a.sendMessage(23,(a=>{a.type(e),a.int(t),a.matrix4x4(this._impl.zapcode_tracker_anchor_pose_raw(r,t))}))}}for(let[e,r]of this._world_tracker_by_instance){let t=this._pipeline_id_by_world_tracker_id.get(e);if(!t)continue;let a=this.serializersByPipelineId.get(t);if(a){a.sendMessage(31,(t=>{t.type(e),t.int(this._impl.world_tracker_quality(r))})),a.sendMessage(25,(t=>{t.type(e),t.int(this._impl.world_tracker_plane_count(r))}));for(let t=0;t<this._impl.world_tracker_plane_count(r);t++)a.sendMessage(26,(a=>{a.type(e),a.int(t),a.matrix4x4(this._impl.world_tracker_plane_pose_raw(r,t))}));a.sendMessage(27,(t=>{t.type(e),t.bool(this._impl.world_tracker_world_anchor_valid(r))})),a.sendMessage(28,(t=>{t.type(e),t.matrix4x4(this._impl.world_tracker_world_anchor_pose_raw(r))})),a.sendMessage(27,(t=>{t.type(e),t.bool(this._impl.world_tracker_ground_anchor_valid(r))})),a.sendMessage(30,(t=>{t.type(e),t.matrix4x4(this._impl.world_tracker_ground_anchor_pose_raw(r))})),a.sendMessage(33,(t=>{t.type(e),t.int(this._impl.world_tracker_debug_tracks_data_size(r))})),a.sendMessage(32,(t=>{t.type(e),t.floatArray(this._impl.world_tracker_debug_tracks_data(r))})),a.sendMessage(35,(t=>{t.type(e),t.int(this._impl.world_tracker_debug_projections_data_size(r))})),a.sendMessage(34,(t=>{t.type(e),t.floatArray(this._impl.world_tracker_debug_projections_data(r))}))}}}}class n{constructor(){this._funcs=[]}bind(e){this._funcs.push(e)}unbind(e){let r=this._funcs.indexOf(e);r>-1&&this._funcs.splice(r,1)}emit(){for(var e=0,r=this._funcs.length;e<r;e++)this._funcs[e]()}}class o{constructor(){this._funcs=[]}bind(e){this._funcs.push(e)}unbind(e){let r=this._funcs.indexOf(e);r>-1&&this._funcs.splice(r,1)}emit(e){for(var r=0,t=this._funcs.length;r<t;r++)this._funcs[r](e)}}var s,c,l,d,h,u,f,p,b="undefined"!=typeof Float32Array?Float32Array:Array;function m(){var e=new b(16);return b!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function E(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}Math.random,Math.PI,Math.hypot||(Math.hypot=function(){for(var e=0,r=arguments.length;r--;)e+=arguments[r]*arguments[r];return Math.sqrt(e)}),function(e){e[e.UNKNOWN=131072]="UNKNOWN",e[e.AZTEC=1]="AZTEC",e[e.CODABAR=2]="CODABAR",e[e.CODE_39=4]="CODE_39",e[e.CODE_93=8]="CODE_93",e[e.CODE_128=16]="CODE_128",e[e.DATA_MATRIX=32]="DATA_MATRIX",e[e.EAN_8=64]="EAN_8",e[e.EAN_13=128]="EAN_13",e[e.ITF=256]="ITF",e[e.MAXICODE=512]="MAXICODE",e[e.PDF_417=1024]="PDF_417",e[e.QR_CODE=2048]="QR_CODE",e[e.RSS_14=4096]="RSS_14",e[e.RSS_EXPANDED=8192]="RSS_EXPANDED",e[e.UPC_A=16384]="UPC_A",e[e.UPC_E=32768]="UPC_E",e[e.UPC_EAN_EXTENSION=65536]="UPC_EAN_EXTENSION",e[e.ALL=131071]="ALL"}(s||(s={})),function(e){e[e.EYE_LEFT=0]="EYE_LEFT",e[e.EYE_RIGHT=1]="EYE_RIGHT",e[e.EAR_LEFT=2]="EAR_LEFT",e[e.EAR_RIGHT=3]="EAR_RIGHT",e[e.NOSE_BRIDGE=4]="NOSE_BRIDGE",e[e.NOSE_TIP=5]="NOSE_TIP",e[e.NOSE_BASE=6]="NOSE_BASE",e[e.LIP_TOP=7]="LIP_TOP",e[e.LIP_BOTTOM=8]="LIP_BOTTOM",e[e.MOUTH_CENTER=9]="MOUTH_CENTER",e[e.CHIN=10]="CHIN",e[e.EYEBROW_LEFT=11]="EYEBROW_LEFT",e[e.EYEBROW_RIGHT=12]="EYEBROW_RIGHT"}(c||(c={})),function(e){e[e.WORLD=3]="WORLD",e[e.MINUS_Z_AWAY_FROM_USER=4]="MINUS_Z_AWAY_FROM_USER",e[e.MINUS_Z_HEADING=5]="MINUS_Z_HEADING",e[e.UNCHANGED=6]="UNCHANGED"}(l||(l={})),function(e){e[e.LOG_LEVEL_NONE=0]="LOG_LEVEL_NONE",e[e.LOG_LEVEL_ERROR=1]="LOG_LEVEL_ERROR",e[e.LOG_LEVEL_WARNING=2]="LOG_LEVEL_WARNING",e[e.LOG_LEVEL_VERBOSE=3]="LOG_LEVEL_VERBOSE"}(d||(d={})),function(e){e[e.FRAME_PIXEL_FORMAT_I420=0]="FRAME_PIXEL_FORMAT_I420",e[e.FRAME_PIXEL_FORMAT_I420A=1]="FRAME_PIXEL_FORMAT_I420A",e[e.FRAME_PIXEL_FORMAT_I422=2]="FRAME_PIXEL_FORMAT_I422",e[e.FRAME_PIXEL_FORMAT_I444=3]="FRAME_PIXEL_FORMAT_I444",e[e.FRAME_PIXEL_FORMAT_NV12=4]="FRAME_PIXEL_FORMAT_NV12",e[e.FRAME_PIXEL_FORMAT_RGBA=5]="FRAME_PIXEL_FORMAT_RGBA",e[e.FRAME_PIXEL_FORMAT_BGRA=6]="FRAME_PIXEL_FORMAT_BGRA",e[e.FRAME_PIXEL_FORMAT_Y=7]="FRAME_PIXEL_FORMAT_Y"}(h||(h={})),function(e){e[e.IMAGE_TRACKER_TYPE_PLANAR=0]="IMAGE_TRACKER_TYPE_PLANAR",e[e.IMAGE_TRACKER_TYPE_CYLINDRICAL=1]="IMAGE_TRACKER_TYPE_CYLINDRICAL",e[e.IMAGE_TRACKER_TYPE_CONICAL=2]="IMAGE_TRACKER_TYPE_CONICAL"}(u||(u={})),function(e){e[e.WORLD_TRACKER_QUALITY_INITIALIZING=0]="WORLD_TRACKER_QUALITY_INITIALIZING",e[e.WORLD_TRACKER_QUALITY_GOOD=1]="WORLD_TRACKER_QUALITY_GOOD",e[e.WORLD_TRACKER_QUALITY_ORIENTATION_ONLY=2]="WORLD_TRACKER_QUALITY_ORIENTATION_ONLY"}(f||(f={})),function(e){e[e.DEFAULT=0]="DEFAULT",e[e.HIGH=1]="HIGH"}(p||(p={}));const v=new Map;class w{constructor(e){this._gl=e,this._viewports=[],this._underlyingViewport=this._gl.viewport,this._viewports.push(this._gl.getParameter(this._gl.VIEWPORT)),this._gl.viewport=(e,r,t,a)=>{this._viewports[this._viewports.length-1]=[e,r,t,a],this._underlyingViewport.call(this._gl,e,r,t,a)}}static get(e){let r=v.get(e);return r||(r=new w(e),v.set(e,r)),r}push(){this._viewports.push(this._viewports[this._viewports.length-1])}pop(){const e=this._viewports.pop(),r=this._viewports[this._viewports.length-1];e&&e[0]===r[0]&&e[1]===r[1]&&e[2]===r[2]&&e[3]===r[3]||this._underlyingViewport.call(this._gl,r[0],r[1],r[2],r[3])}}var g,y=t(238);!function(e){e[e.OBJECT_URL=0]="OBJECT_URL",e[e.SRC_OBJECT=1]="SRC_OBJECT"}(g||(g={}));let N={deviceMotionMutliplier:-1,blacklisted:!1,showGyroPermissionsWarningIfNecessary:!1,showSafariPermissionsResetIfNecessary:!1,requestHighFrameRate:!1,videoWidth:640,videoHeight:480,getDataSize:e=>e===p.HIGH?[640,480]:[320,240],videoElementInDOM:!1,preferMediaStreamTrackProcessorCamera:!0,preferImageBitmapCamera:!1,ios164CameraSelection:!1,relyOnConstraintsForCameraSelection:!1,forceWindowOrientation:!1,intervalMultiplier:1,trustSensorIntervals:!1};"undefined"!=typeof window&&(window.zeeProfile=N,window.location.href.indexOf("_mstppipeline")>=0&&(console.log("Configuring for MSTP camera pipeline (if supported)"),N.preferMediaStreamTrackProcessorCamera=!0),window.location.href.indexOf("_imagebitmappipeline")>=0&&(console.log("Configuring for ImageBitmap camera pipeline (if supported)"),N.preferImageBitmapCamera=!0));let k=new y.UAParser,S=(k.getOS().name||"unknown").toLowerCase(),j=(k.getEngine().name||"unknown").toLowerCase();function z(e){N.forceWindowOrientation=!0,N.preferMediaStreamTrackProcessorCamera=!1,N.intervalMultiplier=1e3,N.trustSensorIntervals=!0;let r=e.split(".");if(r.length>=2){const e=parseInt(r[0]),t=parseInt(r[1]);(e<11||11===e&&t<3)&&(N.blacklisted=!0),(e<12||12===e&&t<2)&&(N.videoElementInDOM=!0),(12===e&&t>=2||e>=13)&&(N.showGyroPermissionsWarningIfNecessary=!0),e>=13&&(N.showSafariPermissionsResetIfNecessary=!0),(e>=12&&t>1||e>=13)&&navigator.mediaDevices&&navigator.mediaDevices.getSupportedConstraints&&navigator.mediaDevices.getSupportedConstraints().frameRate&&(N.requestHighFrameRate=!0,e<14&&(N.videoHeight=360,N.getDataSize=e=>e===p.HIGH?[640,360]:[320,180])),16===e&&t>=4&&(N.ios164CameraSelection=!0),e>=17&&(N.relyOnConstraintsForCameraSelection=!0)}}function I(e,r,t){let a=e.createShader(r);if(!a)throw new Error("Unable to create shader");e.shaderSource(a,t),e.compileShader(a);let i=e.getShaderInfoLog(a);if(i&&i.trim().length>0)throw new Error("Shader compile error: "+i);return a}"webkit"===j&&"ios"!==S&&(N.deviceMotionMutliplier=1,"undefined"!=typeof window&&void 0!==window.orientation&&z("15.0")),"webkit"===j&&"ios"===S&&(N.deviceMotionMutliplier=1,z(k.getOS().version||"15.0"));class R{constructor(e){this._gl=e,this._isPaused=!0,this._hadFrames=!1,this._isUserFacing=!1,this._cameraToScreenRotation=0,this._isUploadFrame=!0,this._computedTransformRotation=-1,this._computedFrontCameraRotation=!1,this._cameraUvTransform=m(),this._framebufferWidth=0,this._framebufferHeight=0,this._framebufferId=null,this._renderTexture=null,this._isWebGL2=!1,this._isWebGL2=e.getParameter(e.VERSION).indexOf("WebGL 2")>=0,this._isWebGL2||(this._instancedArraysExtension=this._gl.getExtension("ANGLE_instanced_arrays"))}resetGLContext(){this._framebufferId=null,this._renderTexture=null,this._vertexBuffer=void 0,this._indexBuffer=void 0,this._greyscaleShader=void 0}destroy(){this.resetGLContext()}uploadFrame(e,r,t,a,i){let _=this._gl;const n=w.get(_);n.push();const o=_.isEnabled(_.SCISSOR_TEST),s=_.isEnabled(_.DEPTH_TEST),c=_.isEnabled(_.BLEND),l=_.isEnabled(_.CULL_FACE),d=_.isEnabled(_.STENCIL_TEST),h=_.getParameter(_.ACTIVE_TEXTURE),u=_.getParameter(_.UNPACK_FLIP_Y_WEBGL),f=_.getParameter(_.CURRENT_PROGRAM);_.activeTexture(_.TEXTURE0);const p=_.getParameter(_.TEXTURE_BINDING_2D),b=_.getParameter(_.FRAMEBUFFER_BINDING),m=_.getParameter(_.ARRAY_BUFFER_BINDING),E=_.getParameter(_.ELEMENT_ARRAY_BUFFER_BINDING);_.disable(_.SCISSOR_TEST),_.disable(_.DEPTH_TEST),_.disable(_.BLEND),_.disable(_.CULL_FACE),_.disable(_.STENCIL_TEST),_.pixelStorei(_.UNPACK_FLIP_Y_WEBGL,!1),_.bindTexture(_.TEXTURE_2D,e);const v=_.RGBA,g=_.RGBA,y=_.UNSIGNED_BYTE;_.texImage2D(_.TEXTURE_2D,0,v,g,y,r);let k=0,S=0;"undefined"!=typeof HTMLVideoElement&&r instanceof HTMLVideoElement?(k=r.videoWidth,S=r.videoHeight):(k=r.width,S=r.height),S>k&&(S=[k,k=S][0]),this._updateTransforms(t,a);const[j,z]=N.getDataSize(i);let I=this._getFramebuffer(_,j/4,z),R=this._getVertexBuffer(_),A=this._getIndexBuffer(_),x=this._getGreyscaleShader(_);const L=_.getVertexAttrib(x.aVertexPositionLoc,_.VERTEX_ATTRIB_ARRAY_SIZE),T=_.getVertexAttrib(x.aVertexPositionLoc,_.VERTEX_ATTRIB_ARRAY_TYPE),P=_.getVertexAttrib(x.aVertexPositionLoc,_.VERTEX_ATTRIB_ARRAY_NORMALIZED),F=_.getVertexAttrib(x.aVertexPositionLoc,_.VERTEX_ATTRIB_ARRAY_STRIDE),M=_.getVertexAttribOffset(x.aVertexPositionLoc,_.VERTEX_ATTRIB_ARRAY_POINTER),K=_.getVertexAttrib(x.aVertexPositionLoc,_.VERTEX_ATTRIB_ARRAY_ENABLED),C=_.getVertexAttrib(x.aVertexPositionLoc,_.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING),O=_.getVertexAttrib(x.aTextureCoordLoc,_.VERTEX_ATTRIB_ARRAY_SIZE),B=_.getVertexAttrib(x.aTextureCoordLoc,_.VERTEX_ATTRIB_ARRAY_TYPE),D=_.getVertexAttrib(x.aTextureCoordLoc,_.VERTEX_ATTRIB_ARRAY_NORMALIZED),U=_.getVertexAttrib(x.aTextureCoordLoc,_.VERTEX_ATTRIB_ARRAY_STRIDE),Z=_.getVertexAttribOffset(x.aTextureCoordLoc,_.VERTEX_ATTRIB_ARRAY_POINTER),V=_.getVertexAttrib(x.aTextureCoordLoc,_.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING),G=_.getVertexAttrib(x.aTextureCoordLoc,_.VERTEX_ATTRIB_ARRAY_ENABLED);let H=0,W=0;this._isWebGL2?(H=_.getVertexAttrib(x.aVertexPositionLoc,_.VERTEX_ATTRIB_ARRAY_DIVISOR),W=_.getVertexAttrib(x.aTextureCoordLoc,_.VERTEX_ATTRIB_ARRAY_DIVISOR),_.vertexAttribDivisor(x.aVertexPositionLoc,0),_.vertexAttribDivisor(x.aTextureCoordLoc,0)):this._instancedArraysExtension&&(H=_.getVertexAttrib(x.aVertexPositionLoc,this._instancedArraysExtension.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE),W=_.getVertexAttrib(x.aTextureCoordLoc,this._instancedArraysExtension.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE),this._instancedArraysExtension.vertexAttribDivisorANGLE(x.aVertexPositionLoc,0),this._instancedArraysExtension.vertexAttribDivisorANGLE(x.aTextureCoordLoc,0)),_.bindFramebuffer(_.FRAMEBUFFER,I),_.viewport(0,0,this._framebufferWidth,this._framebufferHeight),_.clear(_.COLOR_BUFFER_BIT),_.bindBuffer(_.ARRAY_BUFFER,R),_.vertexAttribPointer(x.aVertexPositionLoc,2,_.FLOAT,!1,16,0),_.enableVertexAttribArray(x.aVertexPositionLoc),_.vertexAttribPointer(x.aTextureCoordLoc,2,_.FLOAT,!1,16,8),_.enableVertexAttribArray(x.aTextureCoordLoc),_.bindBuffer(_.ELEMENT_ARRAY_BUFFER,A),_.useProgram(x.program),_.uniform1f(x.uTexWidthLoc,j),_.uniformMatrix4fv(x.uUvTransformLoc,!1,this._cameraUvTransform),_.activeTexture(_.TEXTURE0),_.bindTexture(_.TEXTURE_2D,e),_.uniform1i(x.uSamplerLoc,0),_.drawElements(_.TRIANGLES,6,_.UNSIGNED_SHORT,0),_.bindBuffer(_.ARRAY_BUFFER,C),_.vertexAttribPointer(x.aVertexPositionLoc,L,T,P,F,M),_.bindBuffer(_.ARRAY_BUFFER,V),_.vertexAttribPointer(x.aTextureCoordLoc,O,B,D,U,Z),_.bindBuffer(_.ARRAY_BUFFER,m),_.bindBuffer(_.ELEMENT_ARRAY_BUFFER,E),K||_.disableVertexAttribArray(x.aVertexPositionLoc),G||_.disableVertexAttribArray(x.aTextureCoordLoc),this._isWebGL2?(_.vertexAttribDivisor(x.aVertexPositionLoc,H),_.vertexAttribDivisor(x.aTextureCoordLoc,W)):this._instancedArraysExtension&&(this._instancedArraysExtension.vertexAttribDivisorANGLE(x.aVertexPositionLoc,H),this._instancedArraysExtension.vertexAttribDivisorANGLE(x.aTextureCoordLoc,W)),_.bindFramebuffer(_.FRAMEBUFFER,b),_.useProgram(f),_.bindTexture(_.TEXTURE_2D,p),_.activeTexture(h),_.pixelStorei(_.UNPACK_FLIP_Y_WEBGL,u),n.pop(),c&&_.enable(_.BLEND),l&&_.enable(_.CULL_FACE),s&&_.enable(_.DEPTH_TEST),o&&_.enable(_.SCISSOR_TEST),d&&_.enable(_.STENCIL_TEST)}readFrame(e,r,t){let a=this._gl,i=new Uint8Array(r);const _=a.getParameter(a.FRAMEBUFFER_BINDING),[n,o]=N.getDataSize(t);let s=this._getFramebuffer(a,n/4,o);return a.bindFramebuffer(a.FRAMEBUFFER,s),a.readPixels(0,0,this._framebufferWidth,this._framebufferHeight,a.RGBA,a.UNSIGNED_BYTE,i),a.bindFramebuffer(a.FRAMEBUFFER,_),{uvTransform:this._cameraUvTransform,data:r,texture:e,dataWidth:n,dataHeight:o,userFacing:this._computedFrontCameraRotation}}_updateTransforms(e,r){e==this._computedTransformRotation&&r==this._computedFrontCameraRotation||(this._computedTransformRotation=e,this._computedFrontCameraRotation=r,this._cameraUvTransform=this._getCameraUvTransform())}_getCameraUvTransform(){switch(this._computedTransformRotation){case 270:return new Float32Array([0,1,0,0,-1,0,0,0,0,0,1,0,1,0,0,1]);case 180:return new Float32Array([-1,0,0,0,0,-1,0,0,0,0,1,0,1,1,0,1]);case 90:return new Float32Array([0,-1,0,0,1,0,0,0,0,0,1,0,0,1,0,1])}return new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}_getFramebuffer(e,r,t){if(this._framebufferWidth===r&&this._framebufferHeight===t&&this._framebufferId)return this._framebufferId;if(this._framebufferId&&(e.deleteFramebuffer(this._framebufferId),this._framebufferId=null),this._renderTexture&&(e.deleteTexture(this._renderTexture),this._renderTexture=null),this._framebufferId=e.createFramebuffer(),!this._framebufferId)throw new Error("Unable to create framebuffer");if(e.bindFramebuffer(e.FRAMEBUFFER,this._framebufferId),this._renderTexture=e.createTexture(),!this._renderTexture)throw new Error("Unable to create render texture");e.activeTexture(e.TEXTURE0);const a=e.getParameter(e.TEXTURE_BINDING_2D);e.bindTexture(e.TEXTURE_2D,this._renderTexture),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,r,t,0,e.RGBA,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameterf(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this._renderTexture,0);let i=e.checkFramebufferStatus(e.FRAMEBUFFER);if(i!==e.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer not complete: "+i.toString());return this._framebufferWidth=r,this._framebufferHeight=t,e.bindTexture(e.TEXTURE_2D,a),e.bindFramebuffer(e.FRAMEBUFFER,null),this._framebufferId}_getVertexBuffer(e){if(this._vertexBuffer)return this._vertexBuffer;if(this._vertexBuffer=e.createBuffer(),!this._vertexBuffer)throw new Error("Unable to create vertex buffer");e.bindBuffer(e.ARRAY_BUFFER,this._vertexBuffer);let r=new Float32Array([-1,-1,0,0,-1,1,0,1,1,1,1,1,1,-1,1,0]);return e.bufferData(e.ARRAY_BUFFER,r,e.STATIC_DRAW),this._vertexBuffer}_getIndexBuffer(e){if(this._indexBuffer)return this._indexBuffer;if(this._indexBuffer=e.createBuffer(),!this._indexBuffer)throw new Error("Unable to create index buffer");e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this._indexBuffer);let r=new Uint16Array([0,1,2,0,2,3]);return e.bufferData(e.ELEMENT_ARRAY_BUFFER,r,e.STATIC_DRAW),this._indexBuffer}_getGreyscaleShader(e){if(this._greyscaleShader)return this._greyscaleShader;let r=e.createProgram();if(!r)throw new Error("Unable to create program");let t=I(e,e.VERTEX_SHADER,P),a=I(e,e.FRAGMENT_SHADER,F);e.attachShader(r,t),e.attachShader(r,a),function(e,r){e.linkProgram(r);let t=e.getProgramInfoLog(r);if(t&&t.trim().length>0)throw new Error("Unable to link: "+t)}(e,r);let i=e.getUniformLocation(r,"uTexWidth");if(!i)throw new Error("Unable to get uniform location uTexWidth");let _=e.getUniformLocation(r,"uUvTransform");if(!_)throw new Error("Unable to get uniform location uUvTransform");let n=e.getUniformLocation(r,"uSampler");if(!n)throw new Error("Unable to get uniform location uSampler");return this._greyscaleShader={program:r,aVertexPositionLoc:e.getAttribLocation(r,"aVertexPosition"),aTextureCoordLoc:e.getAttribLocation(r,"aTextureCoord"),uTexWidthLoc:i,uUvTransformLoc:_,uSamplerLoc:n},this._greyscaleShader}}let A,x,L,T,P="\\n attribute vec4 aVertexPosition;\\n attribute vec2 aTextureCoord;\\n\\n varying highp vec2 vTextureCoord1;\\n varying highp vec2 vTextureCoord2;\\n varying highp vec2 vTextureCoord3;\\n varying highp vec2 vTextureCoord4;\\n\\n uniform float uTexWidth;\\n\\tuniform mat4 uUvTransform;\\n\\n void main(void) {\\n highp vec2 offset1 = vec2(1.5 / uTexWidth, 0);\\n highp vec2 offset2 = vec2(0.5 / uTexWidth, 0);\\n\\n gl_Position = aVertexPosition;\\n vTextureCoord1 = (uUvTransform * vec4(aTextureCoord - offset1, 0, 1)).xy;\\n vTextureCoord2 = (uUvTransform * vec4(aTextureCoord - offset2, 0, 1)).xy;\\n vTextureCoord3 = (uUvTransform * vec4(aTextureCoord + offset2, 0, 1)).xy;\\n vTextureCoord4 = (uUvTransform * vec4(aTextureCoord + offset1, 0, 1)).xy;\\n }\\n",F="\\n varying highp vec2 vTextureCoord1;\\n varying highp vec2 vTextureCoord2;\\n varying highp vec2 vTextureCoord3;\\n varying highp vec2 vTextureCoord4;\\n\\n uniform sampler2D uSampler;\\n\\n const lowp vec3 colorWeights = vec3(77.0 / 256.0, 150.0 / 256.0, 29.0 / 256.0);\\n\\n void main(void) {\\n lowp vec4 outpx;\\n\\n outpx.r = dot(colorWeights, texture2D(uSampler, vTextureCoord1).xyz);\\n outpx.g = dot(colorWeights, texture2D(uSampler, vTextureCoord2).xyz);\\n outpx.b = dot(colorWeights, texture2D(uSampler, vTextureCoord3).xyz);\\n outpx.a = dot(colorWeights, texture2D(uSampler, vTextureCoord4).xyz);\\n\\n gl_FragColor = outpx;\\n }\\n";var M=function(e,r,t,a){return new(t||(t=Promise))((function(i,_){function n(e){try{s(a.next(e))}catch(e){_(e)}}function o(e){try{s(a.throw(e))}catch(e){_(e)}}function s(e){var r;e.done?i(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(n,o)}s((a=a.apply(e,r||[])).next())}))};let K,C=new class{constructor(){this.onOutgoingMessage=new n,this.onIncomingMessage=new o,this._outgoingMessages=[]}postIncomingMessage(e){this.onIncomingMessage.emit(e)}postOutgoingMessage(e,r){this._outgoingMessages.push({msg:e,transferables:r}),this.onOutgoingMessage.emit()}getOutgoingMessages(){let e=this._outgoingMessages;return this._outgoingMessages=[],e}},O=0,B=!1;const D=new Map,U=new Map;function Z(e,t,a){return M(this,void 0,void 0,(function*(){let i=r({locateFile:(r,t)=>r.endsWith("zappar-cv.wasm")?e:t+r,instantiateWasm:(e,r)=>{const a=new WebAssembly.Instance(t,e);return r(a),a.exports},onRuntimeInitialized:()=>{let e=function(e){let r=e.cwrap("zappar_log_level","number",[]),t=e.cwrap("zappar_log_level_set",null,["number"]),a=e.cwrap("zappar_analytics_project_id_set",null,["string","string"]),i=e.cwrap("zappar_pipeline_create","number",[]),_=e.cwrap("zappar_pipeline_destroy",null,["number"]),n=e.cwrap("zappar_pipeline_camera_frame_data_raw","number",["number"]),o=e.cwrap("zappar_pipeline_camera_frame_data_raw_size","number",["number"]),s=e.cwrap("zappar_pipeline_camera_frame_data_raw_width","number",["number"]),c=e.cwrap("zappar_pipeline_camera_frame_data_raw_height","number",["number"]),l=e.cwrap("zappar_pipeline_frame_update",null,["number"]),d=e.cwrap("zappar_pipeline_frame_number","number",["number"]),h=e.cwrap("zappar_pipeline_camera_model","number",["number"]),u=e.cwrap("zappar_pipeline_camera_frame_user_data","number",["number"]),f=e.cwrap("zappar_pipeline_camera_frame_submit",null,["number","number","number","number","number","number","number","number","number"]),p=e.cwrap("zappar_pipeline_camera_frame_submit_raw_pointer",null,["number","number","number","number","number","number","number","number","number","number","number","number","number"]),b=e.cwrap("zappar_pipeline_camera_frame_camera_attitude","number",["number"]),m=e.cwrap("zappar_pipeline_camera_frame_device_attitude","number",["number"]),E=e.cwrap("zappar_pipeline_motion_accelerometer_submit",null,["number","number","number","number","number"]),v=e.cwrap("zappar_pipeline_motion_accelerometer_with_gravity_submit_int",null,["number","number","number","number","number","number"]),w=e.cwrap("zappar_pipeline_motion_accelerometer_without_gravity_submit_int",null,["number","number","number","number","number","number"]),g=e.cwrap("zappar_pipeline_motion_rotation_rate_submit",null,["number","number","number","number","number"]),y=e.cwrap("zappar_pipeline_motion_rotation_rate_submit_int",null,["number","number","number","number","number","number"]),N=e.cwrap("zappar_pipeline_motion_attitude_submit",null,["number","number","number","number","number"]),k=e.cwrap("zappar_pipeline_motion_attitude_submit_int",null,["number","number","number","number","number","number"]),S=e.cwrap("zappar_pipeline_motion_attitude_matrix_submit",null,["number","number"]),j=e.cwrap("zappar_camera_source_create","number",["number","string"]),z=e.cwrap("zappar_camera_source_destroy",null,["number"]),I=e.cwrap("zappar_sequence_source_create","number",["number"]),R=e.cwrap("zappar_sequence_source_destroy",null,["number"]),A=e.cwrap("zappar_image_tracker_create","number",["number"]),x=e.cwrap("zappar_image_tracker_destroy",null,["number"]),L=e.cwrap("zappar_image_tracker_target_load_from_memory",null,["number","number","number"]),T=e.cwrap("zappar_image_tracker_target_loaded_version","number",["number"]),P=e.cwrap("zappar_image_tracker_enabled","number",["number"]),F=e.cwrap("zappar_image_tracker_enabled_set",null,["number","number"]),M=e.cwrap("zappar_image_tracker_anchor_count","number",["number"]),K=e.cwrap("zappar_image_tracker_anchor_id","string",["number","number"]),C=e.cwrap("zappar_image_tracker_anchor_pose_raw","number",["number","number"]),O=e.cwrap("zappar_face_tracker_create","number",["number"]),B=e.cwrap("zappar_face_tracker_destroy",null,["number"]),D=e.cwrap("zappar_face_tracker_model_load_from_memory",null,["number","number","number"]),U=e.cwrap("zappar_face_tracker_model_loaded_version","number",["number"]),Z=e.cwrap("zappar_face_tracker_enabled_set",null,["number","number"]),V=e.cwrap("zappar_face_tracker_enabled","number",["number"]),G=e.cwrap("zappar_face_tracker_max_faces_set",null,["number","number"]),H=e.cwrap("zappar_face_tracker_max_faces","number",["number"]),W=e.cwrap("zappar_face_tracker_anchor_count","number",["number"]),Y=e.cwrap("zappar_face_tracker_anchor_id","string",["number","number"]),X=e.cwrap("zappar_face_tracker_anchor_pose_raw","number",["number","number"]),q=e.cwrap("zappar_face_tracker_anchor_identity_coefficients","number",["number","number"]),$=e.cwrap("zappar_face_tracker_anchor_expression_coefficients","number",["number","number"]),J=e.cwrap("zappar_face_mesh_create","number",[]),Q=e.cwrap("zappar_face_mesh_destroy",null,["number"]),ee=e.cwrap("zappar_face_landmark_create","number",["number"]),re=e.cwrap("zappar_face_landmark_destroy",null,["number"]),te=e.cwrap("zappar_barcode_finder_create","number",["number"]),ae=e.cwrap("zappar_barcode_finder_destroy",null,["number"]),ie=e.cwrap("zappar_barcode_finder_enabled_set",null,["number","number"]),_e=e.cwrap("zappar_barcode_finder_enabled","number",["number"]),ne=e.cwrap("zappar_barcode_finder_found_number","number",["number"]),oe=e.cwrap("zappar_barcode_finder_found_text","string",["number","number"]),se=e.cwrap("zappar_barcode_finder_found_format","number",["number","number"]),ce=e.cwrap("zappar_barcode_finder_formats","number",["number"]),le=e.cwrap("zappar_barcode_finder_formats_set",null,["number","number"]),de=e.cwrap("zappar_instant_world_tracker_create","number",["number"]),he=e.cwrap("zappar_instant_world_tracker_destroy",null,["number"]),ue=e.cwrap("zappar_instant_world_tracker_enabled_set",null,["number","number"]),fe=e.cwrap("zappar_instant_world_tracker_enabled","number",["number"]),pe=e.cwrap("zappar_instant_world_tracker_anchor_pose_raw","number",["number"]),be=e.cwrap("zappar_instant_world_tracker_anchor_pose_set_from_camera_offset_raw",null,["number","number","number","number","number"]),me=e.cwrap("zappar_zapcode_tracker_create","number",["number"]),Ee=e.cwrap("zappar_zapcode_tracker_destroy",null,["number"]),ve=e.cwrap("zappar_zapcode_tracker_target_load_from_memory",null,["number","number","number"]),we=e.cwrap("zappar_zapcode_tracker_target_loaded_version","number",["number"]),ge=e.cwrap("zappar_zapcode_tracker_enabled","number",["number"]),ye=e.cwrap("zappar_zapcode_tracker_enabled_set",null,["number","number"]),Ne=e.cwrap("zappar_zapcode_tracker_anchor_count","number",["number"]),ke=e.cwrap("zappar_zapcode_tracker_anchor_id","string",["number","number"]),Se=e.cwrap("zappar_zapcode_tracker_anchor_pose_raw","number",["number","number"]),je=e.cwrap("zappar_world_tracker_create","number",["number"]),ze=e.cwrap("zappar_world_tracker_destroy",null,["number"]),Ie=e.cwrap("zappar_world_tracker_enabled","number",["number"]),Re=e.cwrap("zappar_world_tracker_enabled_set",null,["number","number"]),Ae=e.cwrap("zappar_world_tracker_quality","number",["number"]),xe=e.cwrap("zappar_world_tracker_plane_count","number",["number"]),Le=e.cwrap("zappar_world_tracker_plane_pose_raw","number",["number","number"]),Te=e.cwrap("zappar_world_tracker_world_anchor_valid","number",["number"]),Pe=e.cwrap("zappar_world_tracker_world_anchor_pose_raw","number",["number"]),Fe=e.cwrap("zappar_world_tracker_ground_anchor_valid","number",["number"]),Me=e.cwrap("zappar_world_tracker_ground_anchor_pose_raw","number",["number"]),Ke=e.cwrap("zappar_world_tracker_reset",null,["number"]),Ce=e.cwrap("zappar_world_tracker_debug_enabled","number",["number"]),Oe=e.cwrap("zappar_world_tracker_debug_enabled_set",null,["number","number"]),Be=e.cwrap("zappar_world_tracker_debug_tracks_data_size","number",["number"]),De=e.cwrap("zappar_world_tracker_debug_tracks_data","number",["number"]),Ue=e.cwrap("zappar_world_tracker_debug_projections_data_size","number",["number"]),Ze=e.cwrap("zappar_world_tracker_debug_projections_data","number",["number"]),Ve=32,Ge=e._malloc(Ve),He=(e._malloc(64),new Map),We=(r,t)=>{let a=He.get(r);return(!a||a[0]<t)&&(a&&e._free(a[1]),a=[t,e._malloc(t)],He.set(r,a)),a[1]};return{log_level:()=>r(),log_level_set:e=>t(e),analytics_project_id_set:(e,r)=>a(e,r),pipeline_create:()=>i(),pipeline_destroy:()=>{_()},pipeline_camera_frame_data_raw:e=>n(e),pipeline_camera_frame_data_raw_size:e=>o(e),pipeline_camera_frame_data_raw_width:e=>s(e),pipeline_camera_frame_data_raw_height:e=>c(e),pipeline_frame_update:e=>l(e),pipeline_frame_number:e=>d(e),pipeline_camera_model:r=>{let t=h(r),a=new Float32Array(6);return a.set(e.HEAPF32.subarray(t/4,6+t/4)),t=a,t},pipeline_camera_frame_user_data:e=>u(e),pipeline_camera_frame_submit:(r,t,a,i,_,n,o,s)=>{Ve<t.byteLength&&(e._free(Ge),Ve=t.byteLength,Ge=e._malloc(Ve));let c=Ge,l=t.byteLength;e.HEAPU8.set(new Uint8Array(t),Ge);let d=a,h=i,u=_,p=We(4,n.byteLength);e.HEAPF32.set(n,p/4);let b=We(5,o.byteLength);return e.HEAPF32.set(o,b/4),f(r,c,l,d,h,u,p,b,s?1:0)},pipeline_camera_frame_submit_raw_pointer:(r,t,a,i,_,n,o,s,c,l,d,h,u)=>{let f=t,b=a,m=i,E=_,v=n,w=o,g=We(6,s.byteLength);e.HEAPF32.set(s,g/4);let y=c,N=We(8,l.byteLength);return e.HEAPF32.set(l,N/4),p(r,f,b,m,E,v,w,g,y,N,d?1:0,h,u?1:0)},pipeline_camera_frame_camera_attitude:r=>{let t=b(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},pipeline_camera_frame_device_attitude:r=>{let t=m(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},pipeline_motion_accelerometer_submit:(e,r,t,a,i)=>E(e,r,t,a,i),pipeline_motion_accelerometer_with_gravity_submit_int:(e,r,t,a,i,_)=>v(e,r,t,a,i,_),pipeline_motion_accelerometer_without_gravity_submit_int:(e,r,t,a,i,_)=>w(e,r,t,a,i,_),pipeline_motion_rotation_rate_submit:(e,r,t,a,i)=>g(e,r,t,a,i),pipeline_motion_rotation_rate_submit_int:(e,r,t,a,i,_)=>y(e,r,t,a,i,_),pipeline_motion_attitude_submit:(e,r,t,a,i)=>N(e,r,t,a,i),pipeline_motion_attitude_submit_int:(e,r,t,a,i,_)=>k(e,r,t,a,i,_),pipeline_motion_attitude_matrix_submit:(r,t)=>{let a=We(0,t.byteLength);return e.HEAPF32.set(t,a/4),S(r,a)},camera_source_create:(e,r)=>j(e,r),camera_source_destroy:()=>{z()},sequence_source_create:e=>I(e),sequence_source_destroy:()=>{R()},image_tracker_create:e=>A(e),image_tracker_destroy:()=>{x()},image_tracker_target_load_from_memory:(r,t)=>{Ve<t.byteLength&&(e._free(Ge),Ve=t.byteLength,Ge=e._malloc(Ve));let a=Ge,i=t.byteLength;return e.HEAPU8.set(new Uint8Array(t),Ge),L(r,a,i)},image_tracker_target_loaded_version:e=>T(e),image_tracker_enabled:e=>{let r=P(e);return r=1===r,r},image_tracker_enabled_set:(e,r)=>F(e,r?1:0),image_tracker_anchor_count:e=>M(e),image_tracker_anchor_id:(e,r)=>K(e,r),image_tracker_anchor_pose_raw:(r,t)=>{let a=C(r,t),i=new Float32Array(16);return i.set(e.HEAPF32.subarray(a/4,16+a/4)),a=i,a},face_tracker_create:e=>O(e),face_tracker_destroy:()=>{B()},face_tracker_model_load_from_memory:(r,t)=>{Ve<t.byteLength&&(e._free(Ge),Ve=t.byteLength,Ge=e._malloc(Ve));let a=Ge,i=t.byteLength;return e.HEAPU8.set(new Uint8Array(t),Ge),D(r,a,i)},face_tracker_model_loaded_version:e=>U(e),face_tracker_enabled_set:(e,r)=>Z(e,r?1:0),face_tracker_enabled:e=>{let r=V(e);return r=1===r,r},face_tracker_max_faces_set:(e,r)=>G(e,r),face_tracker_max_faces:e=>H(e),face_tracker_anchor_count:e=>W(e),face_tracker_anchor_id:(e,r)=>Y(e,r),face_tracker_anchor_pose_raw:(r,t)=>{let a=X(r,t),i=new Float32Array(16);return i.set(e.HEAPF32.subarray(a/4,16+a/4)),a=i,a},face_tracker_anchor_identity_coefficients:(r,t)=>{let a=q(r,t),i=new Float32Array(50);return i.set(e.HEAPF32.subarray(a/4,50+a/4)),a=i,a},face_tracker_anchor_expression_coefficients:(r,t)=>{let a=$(r,t),i=new Float32Array(29);return i.set(e.HEAPF32.subarray(a/4,29+a/4)),a=i,a},face_mesh_create:()=>J(),face_mesh_destroy:()=>{Q()},face_landmark_create:e=>ee(e),face_landmark_destroy:()=>{re()},barcode_finder_create:e=>te(e),barcode_finder_destroy:()=>{ae()},barcode_finder_enabled_set:(e,r)=>ie(e,r?1:0),barcode_finder_enabled:e=>{let r=_e(e);return r=1===r,r},barcode_finder_found_number:e=>ne(e),barcode_finder_found_text:(e,r)=>oe(e,r),barcode_finder_found_format:(e,r)=>se(e,r),barcode_finder_formats:e=>ce(e),barcode_finder_formats_set:(e,r)=>le(e,r),instant_world_tracker_create:e=>de(e),instant_world_tracker_destroy:()=>{he()},instant_world_tracker_enabled_set:(e,r)=>ue(e,r?1:0),instant_world_tracker_enabled:e=>{let r=fe(e);return r=1===r,r},instant_world_tracker_anchor_pose_raw:r=>{let t=pe(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},instant_world_tracker_anchor_pose_set_from_camera_offset_raw:(e,r,t,a,i)=>be(e,r,t,a,i),zapcode_tracker_create:e=>me(e),zapcode_tracker_destroy:()=>{Ee()},zapcode_tracker_target_load_from_memory:(r,t)=>{Ve<t.byteLength&&(e._free(Ge),Ve=t.byteLength,Ge=e._malloc(Ve));let a=Ge,i=t.byteLength;return e.HEAPU8.set(new Uint8Array(t),Ge),ve(r,a,i)},zapcode_tracker_target_loaded_version:e=>we(e),zapcode_tracker_enabled:e=>{let r=ge(e);return r=1===r,r},zapcode_tracker_enabled_set:(e,r)=>ye(e,r?1:0),zapcode_tracker_anchor_count:e=>Ne(e),zapcode_tracker_anchor_id:(e,r)=>ke(e,r),zapcode_tracker_anchor_pose_raw:(r,t)=>{let a=Se(r,t),i=new Float32Array(16);return i.set(e.HEAPF32.subarray(a/4,16+a/4)),a=i,a},world_tracker_create:e=>je(e),world_tracker_destroy:()=>{ze()},world_tracker_enabled:e=>{let r=Ie(e);return r=1===r,r},world_tracker_enabled_set:(e,r)=>Re(e,r?1:0),world_tracker_quality:e=>Ae(e),world_tracker_plane_count:e=>xe(e),world_tracker_plane_pose_raw:(r,t)=>{let a=Le(r,t),i=new Float32Array(16);return i.set(e.HEAPF32.subarray(a/4,16+a/4)),a=i,a},world_tracker_world_anchor_valid:e=>{let r=Te(e);return r=1===r,r},world_tracker_world_anchor_pose_raw:r=>{let t=Pe(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},world_tracker_ground_anchor_valid:e=>{let r=Fe(e);return r=1===r,r},world_tracker_ground_anchor_pose_raw:r=>{let t=Me(r),a=new Float32Array(16);return a.set(e.HEAPF32.subarray(t/4,16+t/4)),t=a,t},world_tracker_reset:e=>Ke(e),world_tracker_debug_enabled:e=>{let r=Ce(e);return r=1===r,r},world_tracker_debug_enabled_set:(e,r)=>Oe(e,r?1:0),world_tracker_debug_tracks_data_size:e=>Be(e),world_tracker_debug_tracks_data:r=>{let t=De(r),a=Be(r),i=new Float32Array(a);return i.set(e.HEAPF32.subarray(t/4,a+t/4)),t=i,t},world_tracker_debug_projections_data_size:e=>Ue(e),world_tracker_debug_projections_data:r=>{let t=Ze(r),a=Ue(r),i=new Float32Array(a);return i.set(e.HEAPF32.subarray(t/4,a+t/4)),t=i,t}}}(i);const r=function(e){return{worker_message_send_count:e.cwrap("worker_message_send_count","number",[]),worker_message_send_clear:e.cwrap("worker_message_send_clear",null,[]),worker_message_send_data_size:e.cwrap("worker_message_send_data_size","number",["number"]),worker_message_send_data:e.cwrap("worker_message_send_data","number",["number"]),worker_message_send_reference:e.cwrap("worker_message_send_reference","number",["number"]),worker_message_receive:e.cwrap("worker_message_receive",null,["number","number","number"])}}(i),t=a?function(e){return{data_download_clear:e.cwrap("data_download_clear",null,[]),data_download_size:e.cwrap("data_download_size","number",[]),data_download:e.cwrap("data_download","number",[]),data_should_record_set:e.cwrap("data_should_record_set",null,["number"])}}(i):void 0;null==t||t.data_should_record_set(1);let n=new _(e,((e,r)=>{C.postOutgoingMessage({p:e,t:"zappar",d:r},[r])}));C.postOutgoingMessage("loaded",[]),C.onIncomingMessage.bind((a=>{var _,o,s;switch(a.t){case"zappar":n.processBuffer(a.d),C.postOutgoingMessage({t:"buf",d:a.d},[a.d]);break;case"buf":null===(_=n.serializersByPipelineId.get(a.p))||void 0===_||_.bufferReturn(a.d);break;case"cameraFrameC2S":{let _,o=a,s=n._pipeline_by_instance.get(o.p);s&&(e.pipeline_camera_frame_submit(s,o.d,o.width,o.height,o.token,o.c2d,o.cm,o.userFacing),e.pipeline_frame_update(s),_=e.pipeline_camera_frame_device_attitude(s),n.exploreState(),Q(i,r),t&&ee(i,t));let c={token:o.token,d:o.d,p:o.p,t:"cameraFrameRecycleS2C",att:_};C.postOutgoingMessage(c,[o.d]);break}case"rawenabled":B=a.v;break;case"rawrequest":{const e=a,r=D.get(e.p),t={t:"raw",token:e.token,p:e.p,data:r&&null!==(s=null===(o=r.ready.find((r=>r.token===e.token)))||void 0===o?void 0:o.data)&&void 0!==s?s:null};C.postOutgoingMessage(t,[]);break}case"cameraProfileC2S":{let e=a;U.set(e.source,e.p);break}case"streamC2S":{let _=a;(function(e,r,t,a,i,_,n,o,s){return M(this,void 0,void 0,(function*(){for(;;){let c;try{c=yield t.getReader()}catch(e){yield $(1e3);continue}try{return void(yield q(e,r,c,a,i,_,n,o,s))}catch(e){}return void(yield $(1e3))}}))})(i,e,_.s,_.p,_.userFacing,n,_.source,r,t).then((()=>{let e={t:"streamEndedS2C",p:_.p,source:_.source};C.postOutgoingMessage(e,[])})).catch((e=>{}));break}case"cameraToScreenC2S":O=a.r;break;case"imageBitmapC2S":!function(e,r,t,a){const[i,_]=function(){if(!L||!T){const e=new OffscreenCanvas(1,1);if(T=e.getContext("webgl"),!T)throw new Error("Unable to get offscreen GL context");L=new R(T)}return[L,T]}();if(x||(x=_.createTexture(),_.bindTexture(_.TEXTURE_2D,x),_.texParameteri(_.TEXTURE_2D,_.TEXTURE_WRAP_S,_.CLAMP_TO_EDGE),_.texParameteri(_.TEXTURE_2D,_.TEXTURE_WRAP_T,_.CLAMP_TO_EDGE),_.texParameteri(_.TEXTURE_2D,_.TEXTURE_MIN_FILTER,_.LINEAR)),!x)return;const[n,o]=N.getDataSize(e.cp);(!A||A.byteLength<n*o)&&(A=new ArrayBuffer(n*o)),i.uploadFrame(x,e.i,e.r,e.userFacing,e.cp);let s=i.readFrame(x,A,e.cp),c={t:"imageBitmapS2C",dataWidth:s.dataWidth,dataHeight:s.dataHeight,frame:e.i,userFacing:s.userFacing,uvTransform:s.uvTransform||m(),tokenId:e.tokenId,p:e.p};a.postOutgoingMessage(c,[e.i]);let l=t._pipeline_by_instance.get(e.p);l&&(r.pipeline_camera_frame_submit(l,A,s.dataWidth,s.dataHeight,e.tokenId,e.cameraToDevice,e.cameraModel,s.userFacing),r.pipeline_frame_update(l),t.exploreState())}(a,e,n,C);break;case"sensorDataC2S":{const r=a,t=n._pipeline_by_instance.get(r.p);if(!t)break;switch(r.sensor){case"accel":e.pipeline_motion_accelerometer_submit(t,r.timestamp,r.x,r.y,r.z);break;case"accel_w_gravity_int":e.pipeline_motion_accelerometer_with_gravity_submit_int(t,r.timestamp,r.interval,r.x,r.y,r.z);break;case"accel_wo_gravity_int":e.pipeline_motion_accelerometer_without_gravity_submit_int(t,r.timestamp,r.interval,r.x,r.y,r.z);break;case"attitude_int":e.pipeline_motion_attitude_submit_int(t,r.timestamp,r.interval,r.x,r.y,r.z);break;case"attitude":e.pipeline_motion_attitude_submit(t,r.timestamp,r.x,r.y,r.z);break;case"rotation_rate_int":e.pipeline_motion_rotation_rate_submit_int(t,r.timestamp,r.interval,r.x,r.y,r.z);break;case"rotation_rate":e.pipeline_motion_rotation_rate_submit(t,r.timestamp,r.x,r.y,r.z)}break}case"attitudeMatrixC2S":{const r=a,t=n._pipeline_by_instance.get(r.p);if(!t)break;e.pipeline_motion_attitude_matrix_submit(t,r.m);break}}}))}})}))}let V=0,G=0,H=1;function W(e){return new Promise(((r,t)=>{const a=setTimeout((()=>{t("Frame timeout")}),2e3);e.read().then((e=>{clearTimeout(a),r(e)}))}))}const Y=m(),X=new Float32Array([300,300,160,120,0,0]);function q(e,r,t,a,i,_,n,o,s){var c,l;return M(this,void 0,void 0,(function*(){for(;;){let u=yield W(t);if(u.done)return void(null===(c=u.value)||void 0===c||c.close());let f=u.value,b=f.allocationSize();b>G&&(V>0&&e._free(V),V=e._malloc(b),G=b),yield f.copyTo(e.HEAPU8.subarray(V,V+G));let m=H;H++;const v=f.visibleRect.width,w=f.visibleRect.height;let g,y=v,N=w;switch(O){case 270:g=new Float32Array([0,1,0,0,-1,0,0,0,0,0,1,0,1,0,0,1]),y=w,N=v;break;case 180:g=new Float32Array([-1,0,0,0,0,-1,0,0,0,0,1,0,1,1,0,1]);break;case 90:g=new Float32Array([0,-1,0,0,1,0,0,0,0,0,1,0,0,1,0,1]),y=w,N=v;break;default:g=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}let k=!1;U.get(n)!==p.HIGH&&(y/=2,N/=2,k=!0);let S=f.clone();i?(h=[-1,1,-1],(d=Y)[0]=h[0],d[1]=0,d[2]=0,d[3]=0,d[4]=0,d[5]=h[1],d[6]=0,d[7]=0,d[8]=0,d[9]=0,d[10]=h[2],d[11]=0,d[12]=0,d[13]=0,d[14]=0,d[15]=1):E(Y);let j=300*y/320;X[0]=j,X[1]=j,X[2]=.5*y,X[3]=.5*N;const z={token:m,d:S,p:a,t:"videoFrameS2C",userFacing:i,uvTransform:g,w:y,h:N,cameraToDevice:Y,cameraModel:X,source:n};C.postOutgoingMessage(z,[z.d,z.uvTransform.buffer]);const I=_._pipeline_by_instance.get(a);if(I){try{r.pipeline_camera_frame_submit_raw_pointer(I,V,b,J(f.format),v,w,m,Y,O,X,i,null!==(l=f.timestamp)&&void 0!==l?l:-1,k),Q(e,o),s&&ee(e,s)}catch(e){console.log("Exception during camera processing",e)}if(r.pipeline_frame_update(I),B){let t=D.get(a);if(t||(t={available:[],ready:[]},D.set(a,t)),t.ready.length>4){const e=t.ready.splice(0,1);for(const r of e)t.available.push(new Uint8Array(r.data.data))}const i=r.pipeline_camera_frame_data_raw_size(I);let _;for(;!_||_.byteLength<i;)t.available.length<1&&t.available.push(new Uint8Array(i)),_=t.available.pop();const n=r.pipeline_camera_frame_data_raw(I);_.set(e.HEAPU8.subarray(n,n+i)),t.ready.push({token:m,data:{data:_,width:r.pipeline_camera_frame_data_raw_width(a),height:r.pipeline_camera_frame_data_raw_height(a)}})}_.exploreState()}f.close()}var d,h}))}function $(e){return new Promise((r=>{setTimeout(r,e)}))}function J(e){switch(e){case"I420":return h.FRAME_PIXEL_FORMAT_I420;case"I420A":return h.FRAME_PIXEL_FORMAT_I420A;case"I422":return h.FRAME_PIXEL_FORMAT_I422;case"I444":return h.FRAME_PIXEL_FORMAT_I444;case"NV12":return h.FRAME_PIXEL_FORMAT_NV12;case"RGBA":case"RGBX":return h.FRAME_PIXEL_FORMAT_RGBA;case"BGRA":case"BGRX":return h.FRAME_PIXEL_FORMAT_BGRA}return h.FRAME_PIXEL_FORMAT_Y}function Q(e,r){const t=r.worker_message_send_count();if(0!==t){K||(K=new MessageChannel,K.port1.start(),K.port1.addEventListener("message",(t=>{if("msgrec"!==t.data.t)return;const a=t.data.data,i=e._malloc(a.byteLength);e.HEAPU8.set(a,i),r.worker_message_receive(t.data.reference,a.byteLength,i),e._free(i)})),C.postOutgoingMessage({t:"setupCeresWorker",port:K.port2},[K.port2]));for(let a=0;a<t;a++){const t=r.worker_message_send_reference(a),i=r.worker_message_send_data_size(a),_=r.worker_message_send_data(a),n=e.HEAPU8.slice(_,_+i);K.port1.postMessage({t:"msgsend",data:n,reference:t},[n.buffer])}r.worker_message_send_clear()}}function ee(e,r){const t=r.data_download_size();if(0===t)return;const a=r.data_download(),i=e.HEAPU8.slice(a,a+t);C.postOutgoingMessage({t:"_z_datadownload",data:i},[i.buffer]),r.data_download_clear()}const re=self;C.onOutgoingMessage.bind((()=>{let e=C.getOutgoingMessages();for(let r of e)re.postMessage(r.msg,r.transferables)}));let te=e=>{var r;e&&e.data&&"wasm"===e.data.t&&(Z(location.href.startsWith("blob")?e.data.url:new URL(t(751),t.b).toString(),e.data.module,null!==(r=e.data.shouldRecordData)&&void 0!==r&&r),re.removeEventListener("message",te))};re.addEventListener("message",te),re.addEventListener("message",(e=>{C.postIncomingMessage(e.data)}))})()})();',"Worker",void 0,r.p+"zappar-cv.worker.js")}},477:e=>{"use strict";e.exports=function(e,t,r,i){var a=self||window;try{try{var n;try{n=new a.Blob([e])}catch(t){(n=new(a.BlobBuilder||a.WebKitBlobBuilder||a.MozBlobBuilder||a.MSBlobBuilder)).append(e),n=n.getBlob()}var o=a.URL||a.webkitURL,s=o.createObjectURL(n),_=new a[t](s,r);return o.revokeObjectURL(s),_}catch(i){return new a[t]("data:application/javascript,".concat(encodeURIComponent(e)),r)}}catch(e){if(!i)throw Error("Inline worker is not supported");return new a[t](i,r)}}},698:(e,t,r)=>{"use strict";e.exports=r.p+"b4f46e148a3b3b5aef90.zbin"},825:(e,t,r)=>{"use strict";e.exports=r.p+"f7b62a3a53b5c9b3222b.zbin"},367:(e,t,r)=>{"use strict";e.exports=r.p+"482727c0e7dd40d73f5a.zbin"},751:(e,t,r)=>{"use strict";e.exports=r.p+"5a86c8fa5c139c48ad64.wasm"}},t={};function r(i){var a=t[i];if(void 0!==a)return a.exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}r.m=e,r.amdO={},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.u=e=>e+".zappar-cv.js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var i=t.getElementsByTagName("script");if(i.length)for(var a=i.length-1;a>-1&&!e;)e=i[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),r.b=document.baseURI||self.location.href;var i={};return(()=>{"use strict";var e,t,a,n,o,s,_,c;r.r(i),r.d(i,{barcode_format_t:()=>e,camera_profile_t:()=>c,face_landmark_name_t:()=>t,image_target_type_t:()=>s,initialize:()=>Yt,instant_world_tracker_transform_orientation_t:()=>a,log_level_t:()=>n,world_tracker_quality_t:()=>_}),function(e){e[e.UNKNOWN=131072]="UNKNOWN",e[e.AZTEC=1]="AZTEC",e[e.CODABAR=2]="CODABAR",e[e.CODE_39=4]="CODE_39",e[e.CODE_93=8]="CODE_93",e[e.CODE_128=16]="CODE_128",e[e.DATA_MATRIX=32]="DATA_MATRIX",e[e.EAN_8=64]="EAN_8",e[e.EAN_13=128]="EAN_13",e[e.ITF=256]="ITF",e[e.MAXICODE=512]="MAXICODE",e[e.PDF_417=1024]="PDF_417",e[e.QR_CODE=2048]="QR_CODE",e[e.RSS_14=4096]="RSS_14",e[e.RSS_EXPANDED=8192]="RSS_EXPANDED",e[e.UPC_A=16384]="UPC_A",e[e.UPC_E=32768]="UPC_E",e[e.UPC_EAN_EXTENSION=65536]="UPC_EAN_EXTENSION",e[e.ALL=131071]="ALL"}(e||(e={})),function(e){e[e.EYE_LEFT=0]="EYE_LEFT",e[e.EYE_RIGHT=1]="EYE_RIGHT",e[e.EAR_LEFT=2]="EAR_LEFT",e[e.EAR_RIGHT=3]="EAR_RIGHT",e[e.NOSE_BRIDGE=4]="NOSE_BRIDGE",e[e.NOSE_TIP=5]="NOSE_TIP",e[e.NOSE_BASE=6]="NOSE_BASE",e[e.LIP_TOP=7]="LIP_TOP",e[e.LIP_BOTTOM=8]="LIP_BOTTOM",e[e.MOUTH_CENTER=9]="MOUTH_CENTER",e[e.CHIN=10]="CHIN",e[e.EYEBROW_LEFT=11]="EYEBROW_LEFT",e[e.EYEBROW_RIGHT=12]="EYEBROW_RIGHT"}(t||(t={})),function(e){e[e.WORLD=3]="WORLD",e[e.MINUS_Z_AWAY_FROM_USER=4]="MINUS_Z_AWAY_FROM_USER",e[e.MINUS_Z_HEADING=5]="MINUS_Z_HEADING",e[e.UNCHANGED=6]="UNCHANGED"}(a||(a={})),function(e){e[e.LOG_LEVEL_NONE=0]="LOG_LEVEL_NONE",e[e.LOG_LEVEL_ERROR=1]="LOG_LEVEL_ERROR",e[e.LOG_LEVEL_WARNING=2]="LOG_LEVEL_WARNING",e[e.LOG_LEVEL_VERBOSE=3]="LOG_LEVEL_VERBOSE"}(n||(n={})),function(e){e[e.FRAME_PIXEL_FORMAT_I420=0]="FRAME_PIXEL_FORMAT_I420",e[e.FRAME_PIXEL_FORMAT_I420A=1]="FRAME_PIXEL_FORMAT_I420A",e[e.FRAME_PIXEL_FORMAT_I422=2]="FRAME_PIXEL_FORMAT_I422",e[e.FRAME_PIXEL_FORMAT_I444=3]="FRAME_PIXEL_FORMAT_I444",e[e.FRAME_PIXEL_FORMAT_NV12=4]="FRAME_PIXEL_FORMAT_NV12",e[e.FRAME_PIXEL_FORMAT_RGBA=5]="FRAME_PIXEL_FORMAT_RGBA",e[e.FRAME_PIXEL_FORMAT_BGRA=6]="FRAME_PIXEL_FORMAT_BGRA",e[e.FRAME_PIXEL_FORMAT_Y=7]="FRAME_PIXEL_FORMAT_Y"}(o||(o={})),function(e){e[e.IMAGE_TRACKER_TYPE_PLANAR=0]="IMAGE_TRACKER_TYPE_PLANAR",e[e.IMAGE_TRACKER_TYPE_CYLINDRICAL=1]="IMAGE_TRACKER_TYPE_CYLINDRICAL",e[e.IMAGE_TRACKER_TYPE_CONICAL=2]="IMAGE_TRACKER_TYPE_CONICAL"}(s||(s={})),function(e){e[e.WORLD_TRACKER_QUALITY_INITIALIZING=0]="WORLD_TRACKER_QUALITY_INITIALIZING",e[e.WORLD_TRACKER_QUALITY_GOOD=1]="WORLD_TRACKER_QUALITY_GOOD",e[e.WORLD_TRACKER_QUALITY_ORIENTATION_ONLY=2]="WORLD_TRACKER_QUALITY_ORIENTATION_ONLY"}(_||(_={})),function(e){e[e.DEFAULT=0]="DEFAULT",e[e.HIGH=1]="HIGH"}(c||(c={}));class l{constructor(e){this._messageSender=e,this._freeBufferPool=[],this._buffer=new ArrayBuffer(16),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=1,this._startOffset=-1,this._timeoutSet=!1,this._appender={int:e=>this.int(e),bool:e=>this.int(e?1:0),float:e=>this.float(e),string:e=>this.string(e),dataWithLength:e=>this.arrayBuffer(e),type:e=>this.int(e),matrix4x4:e=>this.float32ArrayBuffer(e),matrix3x3:e=>this.float32ArrayBuffer(e),floatArray:e=>this.float32ArrayBuffer(e),identityCoefficients:e=>this.float32ArrayBuffer(e),expressionCoefficients:e=>this.float32ArrayBuffer(e),cameraModel:e=>this.float32ArrayBuffer(e),timestamp:e=>this.double(e),barcodeFormat:e=>this.int(e),faceLandmarkName:e=>this.int(e),instantTrackerTransformOrientation:e=>this.int(e),logLevel:e=>this.int(e)},this._freeBufferPool.push(new ArrayBuffer(16)),this._freeBufferPool.push(new ArrayBuffer(16))}bufferReturn(e){this._freeBufferPool.push(e)}_ensureArrayBuffer(e){let t,r=4*(this._offset+e+8);if(this._buffer&&this._buffer.byteLength>=r)return;if(!t){let e=r;e--,e|=e>>1,e|=e>>2,e|=e>>4,e|=e>>8,e|=e>>16,e++,t=new ArrayBuffer(e)}let i=this._buffer?this._i32View:void 0;this._buffer=t,this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),i&&this._i32View.set(i.subarray(0,this._offset))}sendMessage(e,t){this._ensureArrayBuffer(4),this._startOffset=this._offset,this._i32View[this._offset+1]=e,this._offset+=2,t(this._appender),this._i32View[this._startOffset]=this._offset-this._startOffset,this._startOffset=-1,this._sendOneTime()}_sendOneTime(){!1===this._timeoutSet&&(this._timeoutSet=!0,setTimeout((()=>{this._timeoutSet=!1,this._send()}),0))}_send(){0!==this._freeBufferPool.length?(this._i32View[0]=this._offset,this._messageSender(this._buffer),this._buffer=void 0,this._buffer=this._freeBufferPool.pop(),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u8cView=new Uint8ClampedArray(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=1,this._startOffset=-1):this._sendOneTime()}int(e){this._ensureArrayBuffer(1),this._i32View[this._offset]=e,this._offset++}double(e){this._ensureArrayBuffer(2),this._offset%2==1&&this._offset++,this._f64View[this._offset/2]=e,this._offset+=2}float(e){this._ensureArrayBuffer(1),this._f32View[this._offset]=e,this._offset++}int32Array(e){this._ensureArrayBuffer(e.length);for(let t=0;t<e.length;++t)this._i32View[this._offset+t]=e[t];this._offset+=e.length}float32Array(e){this._ensureArrayBuffer(e.length);for(let t=0;t<e.length;++t)this._f32View[this._offset+t]=e[t];this._offset+=e.length}booleanArray(e){this._ensureArrayBuffer(e.length);for(let t=0;t<e.length;++t)this._i32View[this._offset+t]=e[t]?1:0;this._offset+=e.length}uint8ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.byteLength,this._offset++,this._u8View.set(e,4*this._offset),this._offset+=e.byteLength>>2,0!=(3&e.byteLength)&&this._offset++}arrayBuffer(e){let t=new Uint8Array(e);this.uint8ArrayBuffer(t)}uint8ClampedArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.byteLength,this._offset++,this._u8cView.set(e,4*this._offset),this._offset+=e.byteLength>>2,0!=(3&e.byteLength)&&this._offset++}float32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._f32View.set(e,this._offset),this._offset+=e.length}uint16ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++;let t=2*this._offset;this._u16View.set(e,t),this._offset+=e.length>>1,0!=(1&e.length)&&this._offset++}int32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._i32View.set(e,this._offset),this._offset+=e.length}uint32ArrayBuffer(e){this._ensureArrayBuffer(e.byteLength/4),this._i32View[this._offset]=e.length,this._offset++,this._u32View.set(e,this._offset),this._offset+=e.length}string(e){let t=(new TextEncoder).encode(e);this._ensureArrayBuffer(t.byteLength/4),this._i32View[this._offset]=t.byteLength,this._offset++,this._u8View.set(t,4*this._offset),this._offset+=t.byteLength>>2,0!=(3&t.byteLength)&&this._offset++}}class d{constructor(){this._buffer=new ArrayBuffer(0),this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=0,this._length=0,this._startOffset=-1,this._processor={int:()=>this._i32View[this._startOffset++],bool:()=>1===this._i32View[this._startOffset++],type:()=>this._i32View[this._startOffset++],float:()=>this._f32View[this._startOffset++],timestamp:()=>{this._startOffset%2==1&&this._startOffset++;let e=this._f64View[this._startOffset/2];return this._startOffset+=2,e},string:()=>{let e=this._i32View[this._startOffset++],t=(new TextDecoder).decode(new Uint8Array(this._buffer,4*this._startOffset,e));return this._startOffset+=e>>2,0!=(3&e)&&this._startOffset++,t},dataWithLength:()=>{let e=this._i32View[this._startOffset++],t=new Uint8Array(e);return t.set(this._u8View.subarray(4*this._startOffset,4*this._startOffset+e)),this._startOffset+=t.byteLength>>2,0!=(3&t.byteLength)&&this._startOffset++,t.buffer},floatArray:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+e)),this._startOffset+=e,t},matrix4x4:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+16)),this._startOffset+=e,t},matrix3x3:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+9)),this._startOffset+=e,t},identityCoefficients:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+50)),this._startOffset+=e,t},expressionCoefficients:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+29)),this._startOffset+=e,t},cameraModel:()=>{let e=this._i32View[this._startOffset++],t=new Float32Array(e);return t.set(this._f32View.subarray(this._startOffset,this._startOffset+6)),this._startOffset+=e,t},barcodeFormat:()=>this._i32View[this._startOffset++],faceLandmarkName:()=>this._i32View[this._startOffset++],instantTrackerTransformOrientation:()=>this._i32View[this._startOffset++],logLevel:()=>this._i32View[this._startOffset++]}}setData(e){this._buffer=e,this._i32View=new Int32Array(this._buffer),this._f32View=new Float32Array(this._buffer),this._f64View=new Float64Array(this._buffer),this._u8View=new Uint8Array(this._buffer),this._u16View=new Uint16Array(this._buffer),this._u32View=new Uint32Array(this._buffer),this._offset=0,this._length=0,e.byteLength>=4&&(this._offset=1,this._length=this._i32View[0]),this._startOffset=-1}hasMessage(){return this._offset+1<this._length}forMessages(e){for(;this.hasMessage();){let t=this._i32View[this._offset],r=this._i32View[this._offset+1];this._startOffset=this._offset+2,this._offset+=t,e(r,this._processor)}}}class h{constructor(e){this._messageSender=e,this._globalState={log_level:1},this.serializer=new l((e=>{this._messageSender(e)})),this.deserializer=new d,this._latestId=1,this._pipeline_state_by_instance=new Map,this._camera_source_state_by_instance=new Map,this._sequence_source_state_by_instance=new Map,this._image_tracker_state_by_instance=new Map,this._face_tracker_state_by_instance=new Map,this._face_mesh_state_by_instance=new Map,this._face_landmark_state_by_instance=new Map,this._barcode_finder_state_by_instance=new Map,this._instant_world_tracker_state_by_instance=new Map,this._zapcode_tracker_state_by_instance=new Map,this._world_tracker_state_by_instance=new Map,this.impl={log_level:()=>this._globalState.log_level,log_level_set:e=>{this.serializer.sendMessage(38,(t=>{t.logLevel(e)}))},analytics_project_id_set:(e,t)=>{this.serializer.sendMessage(35,(r=>{r.string(e),r.string(t)}))},pipeline_create:()=>{let e=this._latestId++,t={current_frame_user_data:0,camera_model:new Float32Array([300,300,160,120,0,0]),camera_pose:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),camera_frame_camera_attitude:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),camera_frame_device_attitude:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),frame_number:0};return this._pipeline_state_by_instance.set(e,t),this.serializer.sendMessage(31,(t=>{t.type(e)})),e},pipeline_destroy:e=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this._pipeline_state_by_instance.delete(e),this.serializer.sendMessage(32,(t=>{t.type(e)}))},pipeline_frame_update:e=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(9,(t=>{t.type(e)}))},pipeline_frame_number:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.frame_number},pipeline_camera_model:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.camera_model},pipeline_camera_frame_user_data:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.current_frame_user_data},pipeline_camera_frame_submit:(e,t,r,i,a,n,o,s)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(8,(_=>{_.type(e),_.dataWithLength(t),_.int(r),_.int(i),_.int(a),_.matrix4x4(n),_.cameraModel(o),_.bool(s)}))},pipeline_camera_frame_camera_attitude:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.camera_frame_camera_attitude},pipeline_camera_frame_device_attitude:e=>{let t=this._pipeline_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.camera_frame_device_attitude},pipeline_motion_accelerometer_submit:(e,t,r,i,a)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(10,(n=>{n.type(e),n.timestamp(t),n.float(r),n.float(i),n.float(a)}))},pipeline_motion_accelerometer_with_gravity_submit_int:(e,t,r,i,a,n)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(12,(o=>{o.type(e),o.timestamp(t),o.timestamp(r),o.float(i),o.float(a),o.float(n)}))},pipeline_motion_accelerometer_without_gravity_submit_int:(e,t,r,i,a,n)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(11,(o=>{o.type(e),o.timestamp(t),o.timestamp(r),o.float(i),o.float(a),o.float(n)}))},pipeline_motion_rotation_rate_submit:(e,t,r,i,a)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(15,(n=>{n.type(e),n.timestamp(t),n.float(r),n.float(i),n.float(a)}))},pipeline_motion_rotation_rate_submit_int:(e,t,r,i,a,n)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(13,(o=>{o.type(e),o.timestamp(t),o.timestamp(r),o.float(i),o.float(a),o.float(n)}))},pipeline_motion_attitude_submit:(e,t,r,i,a)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(16,(n=>{n.type(e),n.timestamp(t),n.float(r),n.float(i),n.float(a)}))},pipeline_motion_attitude_submit_int:(e,t,r,i,a,n)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(14,(o=>{o.type(e),o.timestamp(t),o.timestamp(r),o.float(i),o.float(a),o.float(n)}))},pipeline_motion_attitude_matrix_submit:(e,t)=>{if(!this._pipeline_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(17,(r=>{r.type(e),r.matrix4x4(t)}))},camera_source_create:(e,t)=>{let r=this._latestId++;return this._camera_source_state_by_instance.set(r,{}),this.serializer.sendMessage(33,(i=>{i.type(r),i.type(e),i.string(t)})),r},camera_source_destroy:e=>{if(!this._camera_source_state_by_instance.get(e))throw new Error("This object has been destroyed");this._camera_source_state_by_instance.delete(e),this.serializer.sendMessage(34,(t=>{t.type(e)}))},sequence_source_create:e=>{let t=this._latestId++;return this._sequence_source_state_by_instance.set(t,{}),this.serializer.sendMessage(39,(r=>{r.type(t),r.type(e)})),t},sequence_source_destroy:e=>{if(!this._sequence_source_state_by_instance.get(e))throw new Error("This object has been destroyed");this._sequence_source_state_by_instance.delete(e),this.serializer.sendMessage(40,(t=>{t.type(e)}))},image_tracker_create:e=>{let t=this._latestId++;return this._image_tracker_state_by_instance.set(t,{enabled:!0,target_loaded_version:-1,anchor_count:0,anchor_id:[],anchor_pose:[]}),this.serializer.sendMessage(2,(r=>{r.type(t),r.type(e)})),t},image_tracker_destroy:e=>{if(!this._image_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._image_tracker_state_by_instance.delete(e),this.serializer.sendMessage(18,(t=>{t.type(e)}))},image_tracker_target_load_from_memory:(e,t)=>{if(!this._image_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(4,(r=>{r.type(e),r.dataWithLength(t)}))},image_tracker_target_loaded_version:e=>{let t=this._image_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.target_loaded_version},image_tracker_enabled:e=>{let t=this._image_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},image_tracker_enabled_set:(e,t)=>{if(!this._image_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(3,(r=>{r.type(e),r.bool(t)}))},image_tracker_anchor_count:e=>{let t=this._image_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.anchor_count},image_tracker_anchor_id:(e,t)=>{let r=this._image_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_id[t]},image_tracker_anchor_pose_raw:(e,t)=>{let r=this._image_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_pose[t]},face_tracker_create:e=>{let t=this._latestId++;return this._face_tracker_state_by_instance.set(t,{enabled:!0,model_loaded:-1,max_faces:1,anchor_count:0,anchor_id:[],anchor_pose:[],anchor_identity_coefficients:[],anchor_expression_coefficients:[]}),this.serializer.sendMessage(24,(r=>{r.type(t),r.type(e)})),t},face_tracker_destroy:e=>{if(!this._face_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._face_tracker_state_by_instance.delete(e),this.serializer.sendMessage(25,(t=>{t.type(e)}))},face_tracker_model_load_from_memory:(e,t)=>{if(!this._face_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(26,(r=>{r.type(e),r.dataWithLength(t)}))},face_tracker_model_loaded_version:e=>{let t=this._face_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.model_loaded},face_tracker_enabled_set:(e,t)=>{if(!this._face_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(27,(r=>{r.type(e),r.bool(t)}))},face_tracker_enabled:e=>{let t=this._face_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},face_tracker_max_faces_set:(e,t)=>{if(!this._face_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(28,(r=>{r.type(e),r.int(t)}))},face_tracker_max_faces:e=>{let t=this._face_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.max_faces},face_tracker_anchor_count:e=>{let t=this._face_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.anchor_count},face_tracker_anchor_id:(e,t)=>{let r=this._face_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_id[t]},face_tracker_anchor_pose_raw:(e,t)=>{let r=this._face_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_pose[t]},face_tracker_anchor_identity_coefficients:(e,t)=>{let r=this._face_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_identity_coefficients[t]},face_tracker_anchor_expression_coefficients:(e,t)=>{let r=this._face_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_expression_coefficients[t]},face_mesh_create:()=>{let e=this._latestId++;return this._face_mesh_state_by_instance.set(e,{}),this.serializer.sendMessage(29,(t=>{t.type(e)})),e},face_mesh_destroy:e=>{if(!this._face_mesh_state_by_instance.get(e))throw new Error("This object has been destroyed");this._face_mesh_state_by_instance.delete(e),this.serializer.sendMessage(30,(t=>{t.type(e)}))},face_landmark_create:e=>{let t=this._latestId++;return this._face_landmark_state_by_instance.set(t,{}),this.serializer.sendMessage(36,(r=>{r.type(t),r.faceLandmarkName(e)})),t},face_landmark_destroy:e=>{if(!this._face_landmark_state_by_instance.get(e))throw new Error("This object has been destroyed");this._face_landmark_state_by_instance.delete(e),this.serializer.sendMessage(37,(t=>{t.type(e)}))},barcode_finder_create:e=>{let t=this._latestId++;return this._barcode_finder_state_by_instance.set(t,{enabled:!0,number_found:0,found_text:[],found_format:[],formats:131071}),this.serializer.sendMessage(20,(r=>{r.type(t),r.type(e)})),t},barcode_finder_destroy:e=>{if(!this._barcode_finder_state_by_instance.get(e))throw new Error("This object has been destroyed");this._barcode_finder_state_by_instance.delete(e),this.serializer.sendMessage(21,(t=>{t.type(e)}))},barcode_finder_enabled_set:(e,t)=>{if(!this._barcode_finder_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(22,(r=>{r.type(e),r.bool(t)}))},barcode_finder_enabled:e=>{let t=this._barcode_finder_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},barcode_finder_found_number:e=>{let t=this._barcode_finder_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.number_found},barcode_finder_found_text:(e,t)=>{let r=this._barcode_finder_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.found_text[t]},barcode_finder_found_format:(e,t)=>{let r=this._barcode_finder_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.found_format[t]},barcode_finder_formats:e=>{let t=this._barcode_finder_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.formats},barcode_finder_formats_set:(e,t)=>{if(!this._barcode_finder_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(23,(r=>{r.type(e),r.barcodeFormat(t)}))},instant_world_tracker_create:e=>{let t=this._latestId++,r={enabled:!0,pose:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};return this._instant_world_tracker_state_by_instance.set(t,r),this.serializer.sendMessage(5,(r=>{r.type(t),r.type(e)})),t},instant_world_tracker_destroy:e=>{if(!this._instant_world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._instant_world_tracker_state_by_instance.delete(e),this.serializer.sendMessage(19,(t=>{t.type(e)}))},instant_world_tracker_enabled_set:(e,t)=>{if(!this._instant_world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(6,(r=>{r.type(e),r.bool(t)}))},instant_world_tracker_enabled:e=>{let t=this._instant_world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},instant_world_tracker_anchor_pose_raw:e=>{let t=this._instant_world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.pose},instant_world_tracker_anchor_pose_set_from_camera_offset_raw:(e,t,r,i,a)=>{if(!this._instant_world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(7,(n=>{n.type(e),n.float(t),n.float(r),n.float(i),n.instantTrackerTransformOrientation(a)}))},zapcode_tracker_create:e=>{let t=this._latestId++;return this._zapcode_tracker_state_by_instance.set(t,{enabled:!0,target_loaded_version:-1,anchor_count:0,anchor_id:[],anchor_pose:[]}),this.serializer.sendMessage(41,(r=>{r.type(t),r.type(e)})),t},zapcode_tracker_destroy:e=>{if(!this._zapcode_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._zapcode_tracker_state_by_instance.delete(e),this.serializer.sendMessage(44,(t=>{t.type(e)}))},zapcode_tracker_target_load_from_memory:(e,t)=>{if(!this._zapcode_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(43,(r=>{r.type(e),r.dataWithLength(t)}))},zapcode_tracker_target_loaded_version:e=>{let t=this._zapcode_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.target_loaded_version},zapcode_tracker_enabled:e=>{let t=this._zapcode_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},zapcode_tracker_enabled_set:(e,t)=>{if(!this._zapcode_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(42,(r=>{r.type(e),r.bool(t)}))},zapcode_tracker_anchor_count:e=>{let t=this._zapcode_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.anchor_count},zapcode_tracker_anchor_id:(e,t)=>{let r=this._zapcode_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_id[t]},zapcode_tracker_anchor_pose_raw:(e,t)=>{let r=this._zapcode_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.anchor_pose[t]},world_tracker_create:e=>{let t=this._latestId++,r={enabled:!0,plane_count:0,plane_pose:[],world_anchor_valid:!1,world_anchor_pose:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),ground_anchor_valid:!1,ground_anchor_pose:new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),debug_enabled:!1,debug_tracks_data:new Float32Array([]),debug_tracks_data_size:0,debug_projections_data:new Float32Array([]),debug_projections_data_size:0,quality:0};return this._world_tracker_state_by_instance.set(t,r),this.serializer.sendMessage(45,(r=>{r.type(t),r.type(e)})),t},world_tracker_destroy:e=>{if(!this._world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this._world_tracker_state_by_instance.delete(e),this.serializer.sendMessage(46,(t=>{t.type(e)}))},world_tracker_enabled:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.enabled},world_tracker_enabled_set:(e,t)=>{if(!this._world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(47,(r=>{r.type(e),r.bool(t)}))},world_tracker_quality:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.quality},world_tracker_plane_count:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.plane_count},world_tracker_plane_pose_raw:(e,t)=>{let r=this._world_tracker_state_by_instance.get(e);if(!r)throw new Error("This object has been destroyed");return r.plane_pose[t]},world_tracker_world_anchor_valid:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.world_anchor_valid},world_tracker_world_anchor_pose_raw:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.world_anchor_pose},world_tracker_ground_anchor_valid:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.world_anchor_valid},world_tracker_ground_anchor_pose_raw:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.ground_anchor_pose},world_tracker_reset:e=>{if(!this._world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(48,(t=>{t.type(e)}))},world_tracker_debug_enabled:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_enabled},world_tracker_debug_enabled_set:(e,t)=>{if(!this._world_tracker_state_by_instance.get(e))throw new Error("This object has been destroyed");this.serializer.sendMessage(49,(r=>{r.type(e),r.bool(t)}))},world_tracker_debug_tracks_data_size:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_tracks_data_size},world_tracker_debug_tracks_data:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_tracks_data},world_tracker_debug_projections_data_size:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_projections_data_size},world_tracker_debug_projections_data:e=>{let t=this._world_tracker_state_by_instance.get(e);if(!t)throw new Error("This object has been destroyed");return t.debug_projections_data}}}processMessages(e){this.deserializer.setData(e),this.deserializer.forMessages(((e,t)=>{switch(e){case 7:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.frame_number=t.int();break}case 6:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.camera_model=t.cameraModel();break}case 5:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.current_frame_user_data=t.int();break}case 11:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.camera_frame_camera_attitude=t.matrix4x4();break}case 12:{let e=t.type(),r=this._pipeline_state_by_instance.get(e);if(!r)return;r.camera_frame_device_attitude=t.matrix4x4();break}case 19:{let e=t.type(),r=this._image_tracker_state_by_instance.get(e);if(!r)return;r.target_loaded_version=t.int();break}case 1:{let e=t.type(),r=this._image_tracker_state_by_instance.get(e);if(!r)return;r.anchor_count=t.int();break}case 2:{let e=t.type(),r=this._image_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_id[i]=t.string();break}case 3:{let e=t.type(),r=this._image_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_pose[i]=t.matrix4x4();break}case 18:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;r.model_loaded=t.int();break}case 13:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;r.anchor_count=t.int();break}case 14:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_id[i]=t.string();break}case 15:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_pose[i]=t.matrix4x4();break}case 16:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_identity_coefficients[i]=t.identityCoefficients();break}case 17:{let e=t.type(),r=this._face_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_expression_coefficients[i]=t.expressionCoefficients();break}case 8:{let e=t.type(),r=this._barcode_finder_state_by_instance.get(e);if(!r)return;r.number_found=t.int();break}case 9:{let e=t.type(),r=this._barcode_finder_state_by_instance.get(e);if(!r)return;let i=t.int();r.found_text[i]=t.string();break}case 10:{let e=t.type(),r=this._barcode_finder_state_by_instance.get(e);if(!r)return;let i=t.int();r.found_format[i]=t.barcodeFormat();break}case 4:{let e=t.type(),r=this._instant_world_tracker_state_by_instance.get(e);if(!r)return;r.pose=t.matrix4x4();break}case 24:{let e=t.type(),r=this._zapcode_tracker_state_by_instance.get(e);if(!r)return;r.target_loaded_version=t.int();break}case 21:{let e=t.type(),r=this._zapcode_tracker_state_by_instance.get(e);if(!r)return;r.anchor_count=t.int();break}case 22:{let e=t.type(),r=this._zapcode_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_id[i]=t.string();break}case 23:{let e=t.type(),r=this._zapcode_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.anchor_pose[i]=t.matrix4x4();break}case 31:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.quality=t.int();break}case 25:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.plane_count=t.int();break}case 26:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;let i=t.int();r.plane_pose[i]=t.matrix4x4();break}case 27:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.world_anchor_valid=t.bool();break}case 28:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.world_anchor_pose=t.matrix4x4();break}case 27:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.world_anchor_valid=t.bool();break}case 30:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.ground_anchor_pose=t.matrix4x4();break}case 33:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.debug_tracks_data_size=t.int();break}case 32:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.debug_tracks_data=t.floatArray();break}case 35:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.debug_projections_data_size=t.int();break}case 34:{let e=t.type(),r=this._world_tracker_state_by_instance.get(e);if(!r)return;r.debug_projections_data=t.floatArray();break}}}))}}function u(e,t,r){let i=e.createShader(t);if(!i)throw new Error("Unable to create shader");e.shaderSource(i,r),e.compileShader(i);let a=e.getShaderInfoLog(i);if(a&&a.trim().length>0)throw new Error("Shader compile error: "+a);return i}function f(e,t){e.linkProgram(t);let r=e.getProgramInfoLog(t);if(r&&r.trim().length>0)throw new Error("Unable to link: "+r)}let p,m,b,g={};function v(e){if(b)return b;if(b=e.createBuffer(),!b)throw new Error("Unable to create buffer object");return e.bindBuffer(e.ARRAY_BUFFER,b),e.bufferData(e.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,1,1,0]),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),b}let E="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 projMatrix;\nuniform mat4 cameraMatrix;\nuniform mat4 modelViewMatrix;\nattribute vec4 position;\nattribute vec2 textureCoord;\n\nvarying highp vec2 vTextureCoord;\n\nvoid main()\n{\n gl_Position = projMatrix * cameraMatrix * modelViewMatrix * position;\n vTextureCoord = textureCoord;\n}",w="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying highp vec2 vTextureCoord;\nuniform sampler2D skinSampler;\n\nvoid main()\n{\n gl_FragColor = texture2D(skinSampler, vTextureCoord);\n}";function y(e){if(p)return p;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,E),i=u(e,e.FRAGMENT_SHADER,w);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"projMatrix");if(!a)throw new Error("Unable to get uniform location projMatrix");let n=e.getUniformLocation(t,"modelViewMatrix");if(!n)throw new Error("Unable to get uniform location modelViewMatrix");let o=e.getUniformLocation(t,"cameraMatrix");if(!o)throw new Error("Unable to get uniform location cameraMatrix");let s=e.getUniformLocation(t,"skinSampler");if(!s)throw new Error("Unable to get uniform location skinSampler");return p={prog:t,unif_matrix:n,unif_proj:a,unif_camera:o,unif_skinSampler:s,attr_position:e.getAttribLocation(t,"position"),attr_textureCoord:e.getAttribLocation(t,"textureCoord")},p}var A=1e-6,T="undefined"!=typeof Float32Array?Float32Array:Array;function R(){var e=new T(16);return T!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function x(e,t){var r=t[0],i=t[1],a=t[2],n=t[3],o=t[4],s=t[5],_=t[6],c=t[7],l=t[8],d=t[9],h=t[10],u=t[11],f=t[12],p=t[13],m=t[14],b=t[15],g=r*s-i*o,v=r*_-a*o,E=r*c-n*o,w=i*_-a*s,y=i*c-n*s,A=a*c-n*_,T=l*p-d*f,R=l*m-h*f,x=l*b-u*f,k=d*m-h*p,S=d*b-u*p,N=h*b-u*m,I=g*N-v*S+E*k+w*x-y*R+A*T;return I?(I=1/I,e[0]=(s*N-_*S+c*k)*I,e[1]=(a*S-i*N-n*k)*I,e[2]=(p*A-m*y+b*w)*I,e[3]=(h*y-d*A-u*w)*I,e[4]=(_*x-o*N-c*R)*I,e[5]=(r*N-a*x+n*R)*I,e[6]=(m*E-f*A-b*v)*I,e[7]=(l*A-h*E+u*v)*I,e[8]=(o*S-s*x+c*T)*I,e[9]=(i*x-r*S-n*T)*I,e[10]=(f*y-p*E+b*g)*I,e[11]=(d*E-l*y-u*g)*I,e[12]=(s*R-o*k-_*T)*I,e[13]=(r*k-i*R+a*T)*I,e[14]=(p*v-f*w-m*g)*I,e[15]=(l*w-d*v+h*g)*I,e):null}function k(e,t,r){var i=t[0],a=t[1],n=t[2],o=t[3],s=t[4],_=t[5],c=t[6],l=t[7],d=t[8],h=t[9],u=t[10],f=t[11],p=t[12],m=t[13],b=t[14],g=t[15],v=r[0],E=r[1],w=r[2],y=r[3];return e[0]=v*i+E*s+w*d+y*p,e[1]=v*a+E*_+w*h+y*m,e[2]=v*n+E*c+w*u+y*b,e[3]=v*o+E*l+w*f+y*g,v=r[4],E=r[5],w=r[6],y=r[7],e[4]=v*i+E*s+w*d+y*p,e[5]=v*a+E*_+w*h+y*m,e[6]=v*n+E*c+w*u+y*b,e[7]=v*o+E*l+w*f+y*g,v=r[8],E=r[9],w=r[10],y=r[11],e[8]=v*i+E*s+w*d+y*p,e[9]=v*a+E*_+w*h+y*m,e[10]=v*n+E*c+w*u+y*b,e[11]=v*o+E*l+w*f+y*g,v=r[12],E=r[13],w=r[14],y=r[15],e[12]=v*i+E*s+w*d+y*p,e[13]=v*a+E*_+w*h+y*m,e[14]=v*n+E*c+w*u+y*b,e[15]=v*o+E*l+w*f+y*g,e}function S(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}function N(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function I(e,t,r){var i,a,n,o=r[0],s=r[1],_=r[2],c=Math.hypot(o,s,_);return c<A?null:(o*=c=1/c,s*=c,_*=c,i=Math.sin(t),n=1-(a=Math.cos(t)),e[0]=o*o*n+a,e[1]=s*o*n+_*i,e[2]=_*o*n-s*i,e[3]=0,e[4]=o*s*n-_*i,e[5]=s*s*n+a,e[6]=_*s*n+o*i,e[7]=0,e[8]=o*_*n+s*i,e[9]=s*_*n-o*i,e[10]=_*_*n+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}function L(){var e=new T(3);return T!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function F(e,t){var r=t[0],i=t[1],a=t[2],n=r*r+i*i+a*a;return n>0&&(n=1/Math.sqrt(n)),e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function M(e,t,r){var i=t[0],a=t[1],n=t[2],o=r[0],s=r[1],_=r[2];return e[0]=a*_-n*s,e[1]=n*o-i*_,e[2]=i*s-a*o,e}function z(e,t,r){var i=t[0],a=t[1],n=t[2],o=r[3]*i+r[7]*a+r[11]*n+r[15];return o=o||1,e[0]=(r[0]*i+r[4]*a+r[8]*n+r[12])/o,e[1]=(r[1]*i+r[5]*a+r[9]*n+r[13])/o,e[2]=(r[2]*i+r[6]*a+r[10]*n+r[14])/o,e}Math.random,Math.PI,Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t];return Math.sqrt(e)}),L();var P,C=r(238);!function(e){e[e.OBJECT_URL=0]="OBJECT_URL",e[e.SRC_OBJECT=1]="SRC_OBJECT"}(P||(P={}));let D={deviceMotionMutliplier:-1,blacklisted:!1,showGyroPermissionsWarningIfNecessary:!1,showSafariPermissionsResetIfNecessary:!1,requestHighFrameRate:!1,videoWidth:640,videoHeight:480,getDataSize:e=>e===c.HIGH?[640,480]:[320,240],videoElementInDOM:!1,preferMediaStreamTrackProcessorCamera:!0,preferImageBitmapCamera:!1,ios164CameraSelection:!1,relyOnConstraintsForCameraSelection:!1,forceWindowOrientation:!1,intervalMultiplier:1,trustSensorIntervals:!1};"undefined"!=typeof window&&(window.zeeProfile=D,window.location.href.indexOf("_mstppipeline")>=0&&(console.log("Configuring for MSTP camera pipeline (if supported)"),D.preferMediaStreamTrackProcessorCamera=!0),window.location.href.indexOf("_imagebitmappipeline")>=0&&(console.log("Configuring for ImageBitmap camera pipeline (if supported)"),D.preferImageBitmapCamera=!0));let j=new C.UAParser,U=(j.getOS().name||"unknown").toLowerCase(),B=(j.getEngine().name||"unknown").toLowerCase();function O(e){D.forceWindowOrientation=!0,D.preferMediaStreamTrackProcessorCamera=!1,D.intervalMultiplier=1e3,D.trustSensorIntervals=!0;let t=e.split(".");if(t.length>=2){const e=parseInt(t[0]),r=parseInt(t[1]);(e<11||11===e&&r<3)&&(D.blacklisted=!0),(e<12||12===e&&r<2)&&(D.videoElementInDOM=!0),(12===e&&r>=2||e>=13)&&(D.showGyroPermissionsWarningIfNecessary=!0),e>=13&&(D.showSafariPermissionsResetIfNecessary=!0),(e>=12&&r>1||e>=13)&&navigator.mediaDevices&&navigator.mediaDevices.getSupportedConstraints&&navigator.mediaDevices.getSupportedConstraints().frameRate&&(D.requestHighFrameRate=!0,e<14&&(D.videoHeight=360,D.getDataSize=e=>e===c.HIGH?[640,360]:[320,180])),16===e&&r>=4&&(D.ios164CameraSelection=!0),e>=17&&(D.relyOnConstraintsForCameraSelection=!0)}}function V(e,t,r,i=.01,a=100){let n=2*e[2],o=2*e[3],s=R();!function(e,t,r,i,a,n,o){var s=1/(r-t),_=1/(a-i),c=1/(n-o);e[0]=2*n*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*n*_,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(a+i)*_,e[10]=(o+n)*c,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*n*2*c,e[15]=0}(s,i*(-.5-e[2])/e[0],i*(n-.5-e[2])/e[0],i*(o-.5-e[3])/e[1],i*(-.5-e[3])/e[1],i,a),s[4]*=-1,s[5]*=-1,s[6]*=-1,s[7]*=-1;let _=R();N(_,[.5*n,.5*o,1]),k(s,_,s),I(_,G(!1)*Math.PI/180,[0,0,1]),k(s,_,s);let c=L();c[0]=n,c[1]=o,c[2]=0,z(c,c,_);let l=Math.abs(c[0]),d=Math.abs(c[1]),h=1;return h=l/t>d/r?r/d:t/l,N(_,[h,h,1]),k(s,_,s),N(_,[2/t,2/r,1]),k(s,_,s),I(_,G(!1)*Math.PI/-180,[0,0,1]),k(s,s,_),s}function G(e){if(window.screen.orientation&&!D.forceWindowOrientation)switch(window.screen.orientation.type){case"portrait-primary":return e?90:270;case"landscape-secondary":return 180;case"portrait-secondary":return e?270:90;default:return 0}else if(void 0!==window.orientation)switch(window.orientation){case 0:return e?90:270;case 90:return 0;case 180:return e?270:90;case-90:return 180}return 0}"webkit"===B&&"ios"!==U&&(D.deviceMotionMutliplier=1,"undefined"!=typeof window&&void 0!==window.orientation&&O("15.0")),"webkit"===B&&"ios"===U&&(D.deviceMotionMutliplier=1,O(j.getOS().version||"15.0"));class K{constructor(){this._funcs=[]}bind(e){this._funcs.push(e)}unbind(e){let t=this._funcs.indexOf(e);t>-1&&this._funcs.splice(t,1)}emit(){for(var e=0,t=this._funcs.length;e<t;e++)this._funcs[e]()}}class W{constructor(){this._funcs=[]}bind(e){this._funcs.push(e)}unbind(e){let t=this._funcs.indexOf(e);t>-1&&this._funcs.splice(t,1)}emit(e){for(var t=0,r=this._funcs.length;t<r;t++)this._funcs[t](e)}}var Z=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};let H=new class{constructor(){this.onOutgoingMessage=new K,this.onIncomingMessage=new W,this._outgoingMessages=[]}postIncomingMessage(e){this.onIncomingMessage.emit(e)}postOutgoingMessage(e,t){this._outgoingMessages.push({msg:e,transferables:t}),this.onOutgoingMessage.emit()}getOutgoingMessages(){let e=this._outgoingMessages;return this._outgoingMessages=[],e}};const Y=Z(void 0,void 0,void 0,(function*(){const e=yield fetch(new URL(r(751),r.b).toString());return yield WebAssembly.compileStreaming(e)}));var X;!function(e){e[e.PermissionTitle=0]="PermissionTitle",e[e.PermissionDescription=1]="PermissionDescription",e[e.PermissionButton=2]="PermissionButton"}(X||(X={}));const[q,$]=function(e){const[t,r]=e.toLowerCase().split("-");return[t,r||""]}(navigator.language);function J(e){switch(q){case"es":switch(e){case X.PermissionTitle:return"Ya casi...";case X.PermissionDescription:return"Para brindar esta experiencia de realidad aumentada, necesitamos acceso a la cámara y los sensores de movimiento de su dispositivo.";case X.PermissionButton:return"Permitir acceso"}break;case"de":switch(e){case X.PermissionTitle:return"Fast am Ziel..";case X.PermissionDescription:return"Um dir dieses Augmented Reality Erlebnis zu liefern, brauchen wir Zugriff auf die Kamera und Bewegungssensoren deines Gerätes.";case X.PermissionButton:return"Gewähre Zugriff"}break;case"pt":switch(e){case X.PermissionTitle:return"Está quase!";case X.PermissionDescription:return"Esta experiência de realidade aumentada precisa de acesso à câmera e aos sensores de movimento deste dispositivo.";case X.PermissionButton:return"Permitir acesso"}}switch(e){case X.PermissionTitle:return"Almost there...";case X.PermissionDescription:return"In order to provide this augmented reality experience, we need access to your device's camera and motion sensors.";case X.PermissionButton:return"Grant Access"}return""}var Q=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};let ee=new C.UAParser,te=!1,re=!1,ie=!1,ae=!1;function ne(){return Q(this,void 0,void 0,(function*(){if(navigator.permissions&&navigator.permissions.query)try{let e=yield navigator.permissions.query({name:"camera"});ie="denied"===e.state,te="granted"===e.state}catch(e){}}))}function oe(){return te}function se(){return re}function _e(){return ie}function ce(){return ae}function le(){return ie||ae}function de(){return te&&re}function he(){return Q(this,void 0,void 0,(function*(){yield fe(),yield ue()}))}function ue(){return Q(this,void 0,void 0,(function*(){try{(yield navigator.mediaDevices.getUserMedia({video:!0})).getTracks().forEach((e=>e.stop())),te=!0,ie=!1}catch(e){te=!1,ie=!0}}))}function fe(){return Q(this,void 0,void 0,(function*(){if(window.DeviceOrientationEvent&&window.DeviceOrientationEvent.requestPermission&&"granted"!==(yield window.DeviceOrientationEvent.requestPermission()))return re=!1,ae=!0,!1;re=!0,ae=!1}))}function pe(){return Q(this,void 0,void 0,(function*(){if(yield ne(),de())return!0;let e=document.createElement("div");e.classList.add("zappar-permission-request"),e.innerHTML=`\n <style>\n .zappar-permission-request {\n position: fixed;\n width: 100%;\n height: 100%;\n top: 0px;\n left: 0px;\n z-index: 1000;\n background-color: rgba(0, 0, 0, 0.9);\n font-family: sans-serif;\n color: white;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n .zappar-inner {\n max-width: 400px;\n text-align: center;\n }\n .zappar-title {\n font-size: 20px;\n }\n .zappar-text {\n font-size: 14px;\n padding: 15px;\n }\n .zappar-inner > button {\n background: none;\n outline: none;\n border: 2px solid white;\n border-radius: 10px;\n color: white;\n padding: 10px 40px;\n text-transform: uppercase;\n }\n </style>\n <div class="zappar-inner">\n <div class="zappar-title">${J(X.PermissionTitle)}</div>\n <div class="zappar-text">${J(X.PermissionDescription)}</div>\n <button id="zappar-permission-request-button">${J(X.PermissionButton)}</button>\n </div>\n`,document.body.append(e);let t=e.querySelector("#zappar-permission-request-button");return yield new Promise((r=>{null==t||t.addEventListener("click",(()=>Q(this,void 0,void 0,(function*(){for(yield he(),e.remove();;){if(yield new Promise((e=>requestAnimationFrame((()=>e())))),le())return void r(!1);if(de())return void r(!0)}}))))}))}))}function me(){"Chrome"===ee.getBrowser().name?function(){let e=document.createElement("div");e.classList.add("zappar-permission-request"),e.innerHTML='\n <style>\n .zappar-permission-request {\n position: fixed;\n width: 100%;\n height: 100%;\n top: 0px;\n left: 0px;\n z-index: 1000;\n background-color: rgba(0, 0, 0, 0.9);\n font-family: sans-serif;\n color: white;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n .zappar-inner {\n width: 400px;\n text-align: center;\n }\n .zappar-title {\n font-size: 20px;\n }\n .zappar-text {\n font-size: 14px;\n padding: 15px;\n }\n .zappar-inner > button {\n background: none;\n outline: none;\n border: 2px solid white;\n border-radius: 10px;\n color: white;\n padding: 10px 40px;\n text-transform: uppercase;\n }\n </style>\n <div class="zappar-inner">\n <div class="zappar-title">Permission is Needed</div>\n <div class="zappar-text">Permission to access your device\'s camera and motion sensors is necessary for this experience.<br/><br/>To grant access, please tap the ! button in the address bar of your browser, then "Site settings", and finally "Clear and reset". You can then reload the page to try again.</div>\n <button id="zappar-permission-reload-button">Reload</button>\n </div>\n',document.body.append(e);let t=e.querySelector("#zappar-permission-reload-button");null==t||t.addEventListener("click",(()=>window.location.reload()))}():function(){let e=document.createElement("div");e.classList.add("zappar-permission-request"),e.innerHTML='\n <style>\n .zappar-permission-request {\n position: fixed;\n width: 100%;\n height: 100%;\n top: 0px;\n left: 0px;\n z-index: 1000;\n background-color: rgba(0, 0, 0, 0.9);\n font-family: sans-serif;\n color: white;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n .zappar-inner {\n max-width: 400px;\n text-align: center;\n }\n .zappar-title {\n font-size: 20px;\n }\n .zappar-text {\n font-size: 14px;\n padding: 15px;\n }\n .zappar-inner > button {\n background: none;\n outline: none;\n border: 2px solid white;\n border-radius: 10px;\n color: white;\n padding: 10px 40px;\n text-transform: uppercase;\n }\n </style>\n <div class="zappar-inner">\n <div class="zappar-title">Permission is Needed</div>\n <div class="zappar-text">Permission to access your device\'s camera and motion sensors is necessary for this experience. Please reload the page to try again.</div>\n <button id="zappar-permission-reload-button">Reload</button>\n </div>\n',document.body.append(e);let t=e.querySelector("#zappar-permission-reload-button");null==t||t.addEventListener("click",(()=>window.location.reload()))}()}window.DeviceOrientationEvent&&window.DeviceOrientationEvent.requestPermission||(re=!0),ne();let be=n.LOG_LEVEL_ERROR;function ge(...e){be>=n.LOG_LEVEL_VERBOSE&&console.log("[Zappar] INFO",...e)}function ve(...e){be>=n.LOG_LEVEL_ERROR&&console.error("[Zappar] ERROR",...e)}function Ee(...e){be>=n.LOG_LEVEL_VERBOSE&&console.log("[Zappar] WARN",...e)}let we=1,ye=new Map;function Ae(e){return ye.get(e)}class Te{constructor(){this.render_mean_=new Float32Array,this.render_identity_=new Float32Array(50),this.render_expression_=new Float32Array(29),this.render_uvs_=new Float32Array,this.render_indices_=new Uint16Array,this.vertices_=new Float32Array,this.normals_=new Float32Array,this.normalsCalculated_=!1,this.modelVersion_=-1,this.mirrored_=!1}loadFromMemory(e,t,r,i,a){let n=0,o=new Uint16Array(e),s=new Int32Array(e),_=new Float32Array(e),c=()=>{let e=s[n++]*s[n++],t=_.subarray(n,n+e);return n+=e,t},l=()=>{let e=s[n++],t=o.subarray(2*n,2*n+e);return n+=e/2,t};this.render_mean_=c(),this.render_identity_=c(),this.render_expression_=c(),this.render_uvs_=c();let d=l(),h=n<s.length?l():new Uint16Array,u=n<s.length?l():new Uint16Array,f=n<s.length?l():new Uint16Array,p=n<s.length?l():new Uint16Array;if(t||r||i||a){let e=d.length;t&&(e+=h.length),r&&(e+=u.length),i&&(e+=f.length),a&&(e+=p.length),this.render_indices_=new Uint16Array(e),this.render_indices_.set(d,0);let n=d.length;t&&(this.render_indices_.set(h,n),n+=h.length),r&&(this.render_indices_.set(u,n),n+=u.length),i&&(this.render_indices_.set(f,n),n+=f.length),a&&(this.render_indices_.set(p,n),n+=p.length)}else this.render_indices_=d;this.vertices_=new Float32Array(this.render_mean_),this.normals_=new Float32Array(this.vertices_.length),this.modelVersion_++}getVertices(){return this.vertices_}getUVs(){return this.render_uvs_}getIndices(){if(this.mirrored_){if(!this.render_indices_reversed){this.render_indices_reversed=new Uint16Array(this.render_indices_.length);for(let e=0;e<this.render_indices_.length;e+=3)this.render_indices_reversed[e]=this.render_indices_[e+2],this.render_indices_reversed[e+1]=this.render_indices_[e+1],this.render_indices_reversed[e+2]=this.render_indices_[e]}return this.render_indices_reversed}return this.render_indices_}getNormals(){return this.normalsCalculated_||this.calculateNormals(),this.normals_}getModelVersion(){return this.modelVersion_}getLandmarkDataForVertex(e){let t=[this.render_mean_[3*e],this.render_mean_[3*e+1],this.render_mean_[3*e+2]],r=[];for(let t=0;t<50;t++)r.push(this.render_identity_[3*e*50+t]),r.push(this.render_identity_[50*(3*e+1)+t]),r.push(this.render_identity_[50*(3*e+2)+t]);let i=[];for(let t=0;t<29;t++)i.push(this.render_expression_[3*e*29+t]),i.push(this.render_expression_[29*(3*e+1)+t]),i.push(this.render_expression_[29*(3*e+2)+t]);return{mean:t,identity:r,expression:i}}update(e,t,r){if(0!==this.render_mean_.length&&0!==this.render_identity_.length&&0!==this.render_expression_.length){this.mirrored_=r,this.vertices_.set(this.render_mean_);for(let t=0;t<e.length;t++)for(let r=0;r<this.vertices_.length;r++)this.vertices_[r]+=e[t]*this.render_identity_[r*e.length+t];for(let e=0;e<t.length;e++)for(let r=0;r<this.vertices_.length;r++)this.vertices_[r]+=t[e]*this.render_expression_[r*t.length+e];if(r)for(let e=0;e<this.vertices_.length;e+=3)this.vertices_[e]*=-1;this.normalsCalculated_=!1}}calculateNormals(){let e=this.getIndices(),t=this.vertices_,r=new Float32Array(e.length);if(!t)return;let i=e.length,a=this.normals_,n=new Float32Array([0,0,0]),o=new Float32Array([0,0,0]),s=new Float32Array([0,0,0]);for(let a=0;a<i;a+=3){let i=3*e[a],h=3*e[a+1],u=3*e[a+2];n[0]=t[h]-t[i],n[1]=t[h+1]-t[i+1],n[2]=t[h+2]-t[i+2],o[0]=t[u]-t[i],o[1]=t[u+1]-t[i+1],o[2]=t[u+2]-t[i+2],M(s,n,o);let f=(c=void 0,l=void 0,d=void 0,c=(_=s)[0],l=_[1],d=_[2],Math.hypot(c,l,d));r[a]=s[0]/f,r[a+1]=s[1]/f,r[a+2]=s[2]/f}var _,c,l,d;a.fill(0);for(let t=0;t<i;t+=3){let i=3*e[t],n=3*e[t+1],o=3*e[t+2];a[i]+=r[t],a[i+1]+=r[t+1],a[i+2]+=r[t+2],a[n]+=r[t],a[n+1]+=r[t+1],a[n+2]+=r[t+2],a[o]+=r[t],a[o+1]+=r[t+1],a[o+2]+=r[t+2]}let h=a.length/3;for(let e=0;e<h;e++){let t=3*e;n[0]=a[t],n[1]=a[t+1],n[2]=a[t+2],F(o,n),a[t]=o[0],a[t+1]=o[1],a[t+2]=o[2]}this.normalsCalculated_=!0}}let Re=R();class xe{constructor(e){this._gl=e}dispose(){this._vbo&&this._gl.deleteBuffer(this._vbo),this._vbo=void 0,this._shader&&this._gl.deleteProgram(this._shader.prog),this._shader=void 0}_generate(e,t){if(this._vbo)return this._vbo;if(this._vbo||(this._vbo=e.createBuffer()),!this._vbo)throw new Error("Unable to create buffer object");let r=new Float32Array([-1,-1,0,0,0,-1,1,0,0,1,1,-1,0,1,0,1,-1,0,1,0,-1,1,0,0,1,1,1,0,1,1]);return e.bindBuffer(e.ARRAY_BUFFER,this._vbo),e.bufferData(e.ARRAY_BUFFER,new Float32Array(r),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),this._vbo}drawCameraFrame(e,t,r,i){if(!r.texture)return;let a=this._gl;const n=a.isEnabled(a.DEPTH_TEST),o=a.isEnabled(a.SCISSOR_TEST),s=a.isEnabled(a.CULL_FACE),_=a.isEnabled(a.STENCIL_TEST),c=a.isEnabled(a.BLEND),l=a.getParameter(a.TEXTURE_BINDING_2D),d=a.getParameter(a.FRAMEBUFFER_BINDING),h=a.getParameter(a.CURRENT_PROGRAM),u=a.getParameter(a.ACTIVE_TEXTURE);a.disable(a.DEPTH_TEST),a.disable(a.SCISSOR_TEST),a.disable(a.CULL_FACE),a.disable(a.STENCIL_TEST),a.disable(a.BLEND);let f=this._getCameraShader(a),p=this._generate(a,r);a.activeTexture(a.TEXTURE0),a.useProgram(f.prog),a.uniformMatrix4fv(f.unif_skinTexTransform,!1,Ne(r.dataWidth,r.dataHeight,e,t,r.uvTransform||Re,i)),a.uniform1i(f.unif_skinSampler,0),a.bindTexture(a.TEXTURE_2D,r.texture),a.bindBuffer(a.ARRAY_BUFFER,p),a.vertexAttribPointer(f.attr_position,3,a.FLOAT,!1,20,0),a.enableVertexAttribArray(f.attr_position),a.vertexAttribPointer(f.attr_texCoord,2,a.FLOAT,!1,20,12),a.enableVertexAttribArray(f.attr_texCoord),a.drawArrays(a.TRIANGLES,0,6),a.disableVertexAttribArray(f.attr_position),a.disableVertexAttribArray(f.attr_texCoord),a.bindFramebuffer(a.FRAMEBUFFER,d),a.useProgram(h),a.bindTexture(a.TEXTURE_2D,l),a.activeTexture(u),c&&a.enable(a.BLEND),s&&a.enable(a.CULL_FACE),n&&a.enable(a.DEPTH_TEST),o&&a.enable(a.SCISSOR_TEST),_&&a.enable(a.STENCIL_TEST)}_getCameraShader(e){if(this._shader)return this._shader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,ke),i=u(e,e.FRAGMENT_SHADER,Se);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"skinTexTransform");if(!a)throw new Error("Unable to get uniform location skinTexTransform");let n=e.getUniformLocation(t,"skinSampler");if(!n)throw new Error("Unable to get uniform location skinSampler");return this._shader={prog:t,unif_skinTexTransform:a,unif_skinSampler:n,attr_position:e.getAttribLocation(t,"position"),attr_texCoord:e.getAttribLocation(t,"texCoord")},this._shader}}let ke="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nattribute vec4 position;\nattribute vec4 texCoord;\nvarying vec4 skinTexVarying;\nuniform mat4 skinTexTransform;\n\nvoid main()\n{\n gl_Position = position;\n skinTexVarying = skinTexTransform * texCoord;\n}",Se="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying vec4 skinTexVarying;\nuniform lowp sampler2D skinSampler;\n\nvoid main()\n{\n gl_FragColor = texture2DProj(skinSampler, skinTexVarying);\n}";function Ne(e,t,r,i,a,n){let o=R(),s=R();S(s,[-.5,-.5,0]),k(o,s,o),n&&(N(s,[-1,1,1]),k(o,s,o)),I(s,-1*function(){if(window.screen.orientation&&!D.forceWindowOrientation)switch(window.screen.orientation.type){case"portrait-primary":return 270;case"landscape-secondary":return 180;case"portrait-secondary":return 90;default:return 0}else if(void 0!==window.orientation)switch(window.orientation){case 0:return 270;case 90:return 0;case 180:return 90;case-90:return 180}return 0}()*Math.PI/180,[0,0,1]),k(o,s,o);let _=L();_[0]=r,_[1]=i,_[2]=0,z(_,_,s);let c=Math.abs(_[0]),l=Math.abs(_[1]);N(s,[1,-1,1]),k(o,s,o);let d=c/l,h=e/t;return N(s,d>h?[1,h/d,1]:[d/h,1,1]),k(o,s,o),S(s,[.5,.5,0]),k(o,s,o),k(o,a,o),o}class Ie{constructor(e){this._gl=e}dispose(){this._vbo&&this._gl.deleteBuffer(this._vbo),this._normalbo&&this._gl.deleteBuffer(this._normalbo),this._ibo&&this._gl.deleteBuffer(this._ibo),this._shader&&this._gl.deleteProgram(this._shader.prog),this._vbo=void 0,this._normalbo=void 0,this._ibo=void 0,this._shader=void 0}_generateIBO(e,t){if(this._ibo&&this._lastIndices===e)return this._ibo;if(this._lastIndices=e,this._ibo||(this._ibo=t.createBuffer()),!this._ibo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this._ibo),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null),this._ibo}_generateVBO(e,t){if(this._vbo||(this._vbo=t.createBuffer()),!this._vbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._vbo),t.bufferData(t.ARRAY_BUFFER,e,t.STREAM_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._vbo}_generateNormalBO(e,t){if(this._normalbo||(this._normalbo=t.createBuffer()),!this._normalbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._normalbo),t.bufferData(t.ARRAY_BUFFER,e,t.STREAM_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._normalbo}drawFace(e,t){let r=this._gl,i=this._getShader(r),a=this._generateVBO(t.getVertices(),r),n=this._generateNormalBO(t.getNormals(),r),o=this._generateIBO(t.getIndices(),r);r.enable(r.DEPTH_TEST),r.enable(r.CULL_FACE),r.useProgram(i.prog),r.uniformMatrix4fv(i.unif_matrix,!1,e),r.bindBuffer(r.ARRAY_BUFFER,a),r.vertexAttribPointer(i.attr_position,3,r.FLOAT,!1,12,0),r.enableVertexAttribArray(i.attr_position),r.bindBuffer(r.ARRAY_BUFFER,n),r.vertexAttribPointer(i.attr_normal,3,r.FLOAT,!1,12,0),r.enableVertexAttribArray(i.attr_normal),r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,o),r.drawElements(r.TRIANGLES,t.getIndices().length,r.UNSIGNED_SHORT,0),r.disableVertexAttribArray(i.attr_position),r.disableVertexAttribArray(i.attr_normal),r.bindBuffer(r.ARRAY_BUFFER,null),r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,null)}_getShader(e){if(this._shader)return this._shader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,Le),i=u(e,e.FRAGMENT_SHADER,Fe);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"matrix");if(!a)throw new Error("Unable to get uniform location mattrix");return this._shader={prog:t,unif_matrix:a,attr_position:e.getAttribLocation(t,"position"),attr_normal:e.getAttribLocation(t,"normal")},this._shader}}let Le="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 matrix;\nattribute vec4 position;\nattribute vec3 normal;\nvarying highp vec3 vnormal;\n\nvoid main()\n{\n gl_Position = matrix * position;\n vnormal = normal;\n}",Fe="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying vec4 skinTexVarying;\nvarying highp vec3 vnormal;\nuniform lowp sampler2D skinSampler;\n\nvoid main()\n{\n vec3 normal2 = 0.5 * vnormal + 0.5;\n gl_FragColor = vec4(normal2.x , normal2.y, normal2.z, 1.0);\n}";class Me{constructor(e){this._gl=e}dispose(){this._vbo&&this._gl.deleteBuffer(this._vbo),this._uvbo&&this._gl.deleteBuffer(this._uvbo),this._ibo&&this._gl.deleteBuffer(this._ibo),this._shader&&this._gl.deleteProgram(this._shader.prog),this._vbo=void 0,this._uvbo=void 0,this._ibo=void 0,this._shader=void 0}_generateIBO(e,t){if(this._ibo&&this._lastIndices===e)return this._ibo;if(this._lastIndices=e,this._ibo||(this._ibo=t.createBuffer()),!this._ibo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this._ibo),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null),this._ibo}_generateVBO(e,t){if(this._vbo||(this._vbo=t.createBuffer()),!this._vbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._vbo),t.bufferData(t.ARRAY_BUFFER,e,t.STREAM_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._vbo}_generateUVBO(e,t){if(this._uvbo||(this._uvbo=t.createBuffer()),!this._uvbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._uvbo),t.bufferData(t.ARRAY_BUFFER,e,t.STREAM_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._uvbo}drawFace(e,t,r,i,a,n){let o=this._gl,s=this._getShader(o),_=this._generateVBO(t,o),c=this._generateUVBO(i,o),l=this._generateIBO(a,o);o.enable(o.DEPTH_TEST),o.enable(o.CULL_FACE),o.useProgram(s.prog),o.uniformMatrix4fv(s.unif_matrix,!1,e),o.uniformMatrix4fv(s.unif_uvmatrix,!1,r),o.activeTexture(o.TEXTURE0),o.bindTexture(o.TEXTURE_2D,n),o.uniform1i(s.unif_sampler,0),o.bindBuffer(o.ARRAY_BUFFER,_),o.vertexAttribPointer(s.attr_position,3,o.FLOAT,!1,12,0),o.enableVertexAttribArray(s.attr_position),o.bindBuffer(o.ARRAY_BUFFER,c),o.vertexAttribPointer(s.attr_uv,3,o.FLOAT,!1,12,0),o.enableVertexAttribArray(s.attr_uv),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,l),o.drawElements(o.TRIANGLES,6912,o.UNSIGNED_SHORT,0),o.disableVertexAttribArray(s.attr_position),o.disableVertexAttribArray(s.attr_uv),o.bindBuffer(o.ARRAY_BUFFER,null),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,null)}_getShader(e){if(this._shader)return this._shader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,ze),i=u(e,e.FRAGMENT_SHADER,Pe);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"matrix");if(!a)throw new Error("Unable to get uniform location matrix");let n=e.getUniformLocation(t,"uvmatrix");if(!n)throw new Error("Unable to get uniform location matrix");let o=e.getUniformLocation(t,"uSampler");if(!o)throw new Error("Unable to get uniform location sampler");return this._shader={prog:t,unif_matrix:a,unif_sampler:o,unif_uvmatrix:n,attr_position:e.getAttribLocation(t,"position"),attr_uv:e.getAttribLocation(t,"uv"),attr_texturecoord:e.getAttribLocation(t,"aTextureCoord")},this._shader}}let ze="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 matrix;\nuniform mat4 uvmatrix;\nattribute vec4 position;\nattribute vec3 normal;\nattribute vec3 uv;\n\n// varying highp vec3 vnormal;\n\nvarying highp vec2 vTextureCoord;\nvarying highp float vAlpha;\n\nvoid main()\n{\n gl_Position = matrix * position;\n vec4 ret = uvmatrix * vec4(uv.x, uv.y, uv.z, 1.0);\n ret.x /= ret.w * 2.0;\n ret.y /= ret.w * 2.0;\n ret.x += 0.5;\n ret.y += 0.0;\n vAlpha = 1.0;\n vTextureCoord = ret.xy;\n}",Pe="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying highp vec2 vTextureCoord;\nvarying highp vec3 vnormal;\nvarying highp float vAlpha;\nuniform lowp sampler2D uSampler;\n\nvoid main()\n{\n // vec3 normal2 = 0.5 * vnormal + 0.5;\n vec4 p = texture2D(uSampler, vTextureCoord);\n p.a = vAlpha;\n gl_FragColor = p; // vec4(normal2.x , normal2.y, normal2.z, 1.0);\n}";var Ce;!function(e){e[e.CAMERA_FRAME=0]="CAMERA_FRAME",e[e.ACCELEROMETER=1]="ACCELEROMETER",e[e.ROTATION_RATE=2]="ROTATION_RATE",e[e.ATTITUDE=3]="ATTITUDE",e[e.ATTITUDE_MATRIX=4]="ATTITUDE_MATRIX",e[e.ACCELEROMETER_WO_GRAVITY_INT=5]="ACCELEROMETER_WO_GRAVITY_INT",e[e.ACCELEROMETER_W_GRAVITY_INT=6]="ACCELEROMETER_W_GRAVITY_INT",e[e.ROTATION_RATE_INT=7]="ROTATION_RATE_INT",e[e.ATTITUDE_INT=8]="ATTITUDE_INT"}(Ce||(Ce={}));class De{constructor(e){this._insertionByte=0,this._numberPackets=0,this._started=!1,this._hasLoggedUnsuppored=!1,this._data=new ArrayBuffer(this._estimatedSize(e,320,240)),this._dataView=new DataView(this._data),this._dataUint8=new Uint8Array(this._data),this._dataFloat32=new Float32Array(this._data)}_estimatedSize(e,t,r){return De.headerSizeBytes+(De.psbPacketType+De.cameraPacketSizeBytes+t*r)*e}start(){this._started=!0,this._insertionByte=0,this._numberPackets=0,this._growArrayBuffer(De.headerSizeBytes);let e=(new TextEncoder).encode("UAR1");this._dataUint8.set(e),this._dataView.setUint32(4,0,!0),this._insertionByte+=8}stop(){this._started=!1;let e=this._data.slice(0,this._insertionByte);this._data=e,this._dataUint8=new Uint8Array(this._data),this._dataFloat32=new Float32Array(this._data),this._dataView=new DataView(this._data)}data(){return this._dataUint8}appendCameraFrame(e){if(!this._started)return;if(!e.data){if(this._hasLoggedUnsuppored)return;return this._hasLoggedUnsuppored=!0,void ve("Unable to record frames from this camera source")}if(e.data.byteLength!==e.dataWidth*e.dataHeight)return void ve("Unable to record frame to sequence: greyscale array doesn't match dimensions");let t=De.psbPacketType+De.cameraPacketSizeBytes+e.dataWidth*e.dataHeight;this._growArrayBuffer(t),this._dataView.setUint32(this._insertionByte,Ce.CAMERA_FRAME,!0),this._insertionByte+=De.psbPacketType,this._dataView.setUint32(this._insertionByte,e.dataWidth,!0),this._insertionByte+=De.psbCameraFrameWidth,this._dataView.setUint32(this._insertionByte,e.dataHeight,!0),this._insertionByte+=De.psbCameraFrameHeight,this._dataFloat32.set(e.cameraToDevice,this._insertionByte/4),this._insertionByte+=De.psbCameraToDeviceTransform,this._dataFloat32.set(e.cameraModel,this._insertionByte/4),this._insertionByte+=De.psbCameraModel,this._dataView.setUint32(this._insertionByte,e.userFacing?1:0,!0),this._insertionByte+=De.psbFlags,this._dataUint8.set(new Uint8Array(e.data),this._insertionByte),this._insertionByte+=e.data.byteLength,this._numberPackets++,this._dataView.setUint32(4,this._numberPackets,!0)}appendAccelerometer(e,t,r,i){this._appendTimestampedVec3(Ce.ACCELEROMETER,e,t,r,i)}appendRotationRate(e,t,r,i){this._appendTimestampedVec3(Ce.ROTATION_RATE,e,t,r,i)}appendAttitude(e,t,r,i){this._appendTimestampedVec3(Ce.ATTITUDE,e,t,r,i)}appendAccelerometerWithoutGravityInt(e,t,r,i,a){this._appendSensorWithInterval(Ce.ACCELEROMETER_WO_GRAVITY_INT,e,t,r,i,a)}appendAccelerometerWithGravityInt(e,t,r,i,a){this._appendSensorWithInterval(Ce.ACCELEROMETER_W_GRAVITY_INT,e,t,r,i,a)}appendRotationRateInt(e,t,r,i,a){this._appendSensorWithInterval(Ce.ROTATION_RATE_INT,e,t,r,i,a)}appendAttitudeInt(e,t,r,i,a){this._appendSensorWithInterval(Ce.ATTITUDE_INT,e,t,r,i,a)}_appendSensorWithInterval(e,t,r,i,a,n){if(!this._started)return;let o=De.psbPacketType+De.sensorWithIntervalPacketSizeBytes;this._growArrayBuffer(o),this._dataView.setUint32(this._insertionByte,e,!0),this._insertionByte+=De.psbPacketType,this._dataView.setUint32(this._insertionByte,t,!0),this._insertionByte+=4,this._dataView.setUint32(this._insertionByte,r,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,i,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,a,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,n,!0),this._insertionByte+=4,this._numberPackets++,this._dataView.setUint32(4,this._numberPackets,!0)}_appendTimestampedVec3(e,t,r,i,a){if(!this._started)return;let n=De.psbPacketType+De.accelerometerPacketSizeBytes;this._growArrayBuffer(n),this._dataView.setUint32(this._insertionByte,e,!0),this._insertionByte+=De.psbPacketType,this._dataView.setUint32(this._insertionByte,t,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,r,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,i,!0),this._insertionByte+=4,this._dataView.setFloat32(this._insertionByte,a,!0),this._insertionByte+=4,this._numberPackets++,this._dataView.setUint32(4,this._numberPackets,!0)}appendAttitudeMatrix(e){if(!this._started)return;let t=De.psbPacketType+De.attitudeMatrixPacketSizeBytes;this._growArrayBuffer(t),this._dataView.setUint32(this._insertionByte,Ce.ATTITUDE_MATRIX,!0),this._insertionByte+=De.psbPacketType,this._dataFloat32.set(e,this._insertionByte/4),this._insertionByte+=De.attitudeMatrixPacketSizeBytes,this._numberPackets++,this._dataView.setUint32(4,this._numberPackets,!0)}_growArrayBuffer(e){for(;this._insertionByte+e>this._data.byteLength;){let e=Math.max(2*this._data.byteLength,this._estimatedSize(50,320,240)),t=new ArrayBuffer(e),r=new Uint8Array(t);r.set(this._dataUint8),this._data=t,this._dataUint8=r,this._dataFloat32=new Float32Array(this._data),this._dataView=new DataView(this._data)}}}De.headerSizeBytes=8,De.psbPacketType=4,De.psbCameraFrameWidth=4,De.psbCameraFrameHeight=4,De.psbFlags=4,De.psbCameraToDeviceTransform=64,De.psbCameraModel=24,De.cameraPacketSizeBytes=De.psbCameraFrameWidth+De.psbCameraFrameHeight+De.psbCameraToDeviceTransform+De.psbCameraModel+De.psbFlags,De.accelerometerPacketSizeBytes=16,De.sensorWithIntervalPacketSizeBytes=20,De.rotationRatePacketSizeBytes=16,De.attitudePacketSizeBytes=16,De.attitudeMatrixPacketSizeBytes=64;class je{constructor(e){this._data=e,this.dataByPacket=new Map,this.dataByCameraFrame=new Map,this.numberPackets=0,this.numberCameraFrames=0,this.numberAccelerometerPackets=0,this.numberRotationRatePackets=0,this.numberAttitudePackets=0,this.numberAttitudeMatrixPackets=0;let t=new TextDecoder,r="";try{r=t.decode(this._data.slice(0,4))}catch(e){throw new Error("Unable to decode header - perhaps this isn't a sequence file?")}if("UAR1"!==r)throw new Error(`Invalid - perhaps this isn't a sequence file: ${r}`);let i=0,a=new DataView(this._data);this.numberPackets=a.getUint32(4,!0),i+=De.headerSizeBytes;for(let e=0;e<this.numberPackets;e++){let t=a.getUint32(i,!0);switch(i+=De.psbPacketType,t){case Ce.CAMERA_FRAME:{let t=a.getUint32(i,!0);i+=De.psbCameraFrameWidth;let r=a.getUint32(i,!0);i+=De.psbCameraFrameHeight;let n=new Float32Array(this._data,i,De.psbCameraToDeviceTransform/4);i+=De.psbCameraToDeviceTransform;let o=new Float32Array(this._data,i,De.psbCameraModel/4);i+=De.psbCameraModel;let s=a.getUint32(i,!0);i+=De.psbFlags;let _=1===s,c=new Uint8Array(this._data,i,t*r);i+=t*r;let l={type:Ce.CAMERA_FRAME,width:t,height:r,cameraToDevice:n,cameraModel:o,userFacing:_,greyscale:c};this.dataByPacket.set(e,l),this.dataByCameraFrame.set(this.numberCameraFrames,l),this.numberCameraFrames++;break}case Ce.ACCELEROMETER:{let t=a.getUint32(i,!0);i+=4;let r=a.getFloat32(i,!0);i+=4;let n=a.getFloat32(i,!0);i+=4;let o=a.getFloat32(i,!0);i+=4,this.dataByPacket.set(e,{type:Ce.ACCELEROMETER,t,x:r,y:n,z:o}),this.numberAccelerometerPackets++;break}case Ce.ROTATION_RATE:{let t=a.getUint32(i,!0);i+=4;let r=a.getFloat32(i,!0);i+=4;let n=a.getFloat32(i,!0);i+=4;let o=a.getFloat32(i,!0);i+=4,this.dataByPacket.set(e,{type:Ce.ROTATION_RATE,t,x:r,y:n,z:o}),this.numberRotationRatePackets++;break}case Ce.ATTITUDE:{let t=a.getUint32(i,!0);i+=4;let r=a.getFloat32(i,!0);i+=4;let n=a.getFloat32(i,!0);i+=4;let o=a.getFloat32(i,!0);i+=4,this.dataByPacket.set(e,{type:Ce.ATTITUDE,t,x:r,y:n,z:o}),this.numberAttitudePackets++;break}case Ce.ATTITUDE_MATRIX:{let t=new Float32Array(this._data,i,De.attitudeMatrixPacketSizeBytes/4);i+=De.attitudeMatrixPacketSizeBytes,this.dataByPacket.set(e,{type:Ce.ATTITUDE_MATRIX,attitude:t}),this.numberAttitudeMatrixPackets++;break}case Ce.ACCELEROMETER_WO_GRAVITY_INT:case Ce.ACCELEROMETER_W_GRAVITY_INT:case Ce.ATTITUDE_INT:case Ce.ROTATION_RATE_INT:{let r=a.getUint32(i,!0);i+=4;let n=a.getUint32(i,!0);i+=4;let o=a.getFloat32(i,!0);i+=4;let s=a.getFloat32(i,!0);i+=4;let _=a.getFloat32(i,!0);i+=4,this.dataByPacket.set(e,{type:t,t:r,int:n,x:o,y:s,z:_}),this.numberAccelerometerPackets++;break}}}}}class Ue{}const Be=new Map;class Oe{constructor(e){this._gl=e,this._viewports=[],this._underlyingViewport=this._gl.viewport,this._viewports.push(this._gl.getParameter(this._gl.VIEWPORT)),this._gl.viewport=(e,t,r,i)=>{this._viewports[this._viewports.length-1]=[e,t,r,i],this._underlyingViewport.call(this._gl,e,t,r,i)}}static get(e){let t=Be.get(e);return t||(t=new Oe(e),Be.set(e,t)),t}push(){this._viewports.push(this._viewports[this._viewports.length-1])}pop(){const e=this._viewports.pop(),t=this._viewports[this._viewports.length-1];e&&e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]||this._underlyingViewport.call(this._gl,t[0],t[1],t[2],t[3])}}class Ve{constructor(e){this._gl=e,this._isPaused=!0,this._hadFrames=!1,this._isUserFacing=!1,this._cameraToScreenRotation=0,this._isUploadFrame=!0,this._computedTransformRotation=-1,this._computedFrontCameraRotation=!1,this._cameraUvTransform=R(),this._framebufferWidth=0,this._framebufferHeight=0,this._framebufferId=null,this._renderTexture=null,this._isWebGL2=!1,this._isWebGL2=e.getParameter(e.VERSION).indexOf("WebGL 2")>=0,this._isWebGL2||(this._instancedArraysExtension=this._gl.getExtension("ANGLE_instanced_arrays"))}resetGLContext(){this._framebufferId=null,this._renderTexture=null,this._vertexBuffer=void 0,this._indexBuffer=void 0,this._greyscaleShader=void 0}destroy(){this.resetGLContext()}uploadFrame(e,t,r,i,a){let n=this._gl;const o=Oe.get(n);o.push();const s=n.isEnabled(n.SCISSOR_TEST),_=n.isEnabled(n.DEPTH_TEST),c=n.isEnabled(n.BLEND),l=n.isEnabled(n.CULL_FACE),d=n.isEnabled(n.STENCIL_TEST),h=n.getParameter(n.ACTIVE_TEXTURE),u=n.getParameter(n.UNPACK_FLIP_Y_WEBGL),f=n.getParameter(n.CURRENT_PROGRAM);n.activeTexture(n.TEXTURE0);const p=n.getParameter(n.TEXTURE_BINDING_2D),m=n.getParameter(n.FRAMEBUFFER_BINDING),b=n.getParameter(n.ARRAY_BUFFER_BINDING),g=n.getParameter(n.ELEMENT_ARRAY_BUFFER_BINDING);n.disable(n.SCISSOR_TEST),n.disable(n.DEPTH_TEST),n.disable(n.BLEND),n.disable(n.CULL_FACE),n.disable(n.STENCIL_TEST),n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!1),n.bindTexture(n.TEXTURE_2D,e);const v=n.RGBA,E=n.RGBA,w=n.UNSIGNED_BYTE;n.texImage2D(n.TEXTURE_2D,0,v,E,w,t);let y=0,A=0;"undefined"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement?(y=t.videoWidth,A=t.videoHeight):(y=t.width,A=t.height),A>y&&(A=[y,y=A][0]),this._updateTransforms(r,i);const[T,R]=D.getDataSize(a);let x=this._getFramebuffer(n,T/4,R),k=this._getVertexBuffer(n),S=this._getIndexBuffer(n),N=this._getGreyscaleShader(n);const I=n.getVertexAttrib(N.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_SIZE),L=n.getVertexAttrib(N.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_TYPE),F=n.getVertexAttrib(N.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_NORMALIZED),M=n.getVertexAttrib(N.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_STRIDE),z=n.getVertexAttribOffset(N.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_POINTER),P=n.getVertexAttrib(N.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_ENABLED),C=n.getVertexAttrib(N.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING),j=n.getVertexAttrib(N.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_SIZE),U=n.getVertexAttrib(N.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_TYPE),B=n.getVertexAttrib(N.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_NORMALIZED),O=n.getVertexAttrib(N.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_STRIDE),V=n.getVertexAttribOffset(N.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_POINTER),G=n.getVertexAttrib(N.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING),K=n.getVertexAttrib(N.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_ENABLED);let W=0,Z=0;this._isWebGL2?(W=n.getVertexAttrib(N.aVertexPositionLoc,n.VERTEX_ATTRIB_ARRAY_DIVISOR),Z=n.getVertexAttrib(N.aTextureCoordLoc,n.VERTEX_ATTRIB_ARRAY_DIVISOR),n.vertexAttribDivisor(N.aVertexPositionLoc,0),n.vertexAttribDivisor(N.aTextureCoordLoc,0)):this._instancedArraysExtension&&(W=n.getVertexAttrib(N.aVertexPositionLoc,this._instancedArraysExtension.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE),Z=n.getVertexAttrib(N.aTextureCoordLoc,this._instancedArraysExtension.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE),this._instancedArraysExtension.vertexAttribDivisorANGLE(N.aVertexPositionLoc,0),this._instancedArraysExtension.vertexAttribDivisorANGLE(N.aTextureCoordLoc,0)),n.bindFramebuffer(n.FRAMEBUFFER,x),n.viewport(0,0,this._framebufferWidth,this._framebufferHeight),n.clear(n.COLOR_BUFFER_BIT),n.bindBuffer(n.ARRAY_BUFFER,k),n.vertexAttribPointer(N.aVertexPositionLoc,2,n.FLOAT,!1,16,0),n.enableVertexAttribArray(N.aVertexPositionLoc),n.vertexAttribPointer(N.aTextureCoordLoc,2,n.FLOAT,!1,16,8),n.enableVertexAttribArray(N.aTextureCoordLoc),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,S),n.useProgram(N.program),n.uniform1f(N.uTexWidthLoc,T),n.uniformMatrix4fv(N.uUvTransformLoc,!1,this._cameraUvTransform),n.activeTexture(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,e),n.uniform1i(N.uSamplerLoc,0),n.drawElements(n.TRIANGLES,6,n.UNSIGNED_SHORT,0),n.bindBuffer(n.ARRAY_BUFFER,C),n.vertexAttribPointer(N.aVertexPositionLoc,I,L,F,M,z),n.bindBuffer(n.ARRAY_BUFFER,G),n.vertexAttribPointer(N.aTextureCoordLoc,j,U,B,O,V),n.bindBuffer(n.ARRAY_BUFFER,b),n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,g),P||n.disableVertexAttribArray(N.aVertexPositionLoc),K||n.disableVertexAttribArray(N.aTextureCoordLoc),this._isWebGL2?(n.vertexAttribDivisor(N.aVertexPositionLoc,W),n.vertexAttribDivisor(N.aTextureCoordLoc,Z)):this._instancedArraysExtension&&(this._instancedArraysExtension.vertexAttribDivisorANGLE(N.aVertexPositionLoc,W),this._instancedArraysExtension.vertexAttribDivisorANGLE(N.aTextureCoordLoc,Z)),n.bindFramebuffer(n.FRAMEBUFFER,m),n.useProgram(f),n.bindTexture(n.TEXTURE_2D,p),n.activeTexture(h),n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,u),o.pop(),c&&n.enable(n.BLEND),l&&n.enable(n.CULL_FACE),_&&n.enable(n.DEPTH_TEST),s&&n.enable(n.SCISSOR_TEST),d&&n.enable(n.STENCIL_TEST)}readFrame(e,t,r){let i=this._gl,a=new Uint8Array(t);const n=i.getParameter(i.FRAMEBUFFER_BINDING),[o,s]=D.getDataSize(r);let _=this._getFramebuffer(i,o/4,s);return i.bindFramebuffer(i.FRAMEBUFFER,_),i.readPixels(0,0,this._framebufferWidth,this._framebufferHeight,i.RGBA,i.UNSIGNED_BYTE,a),i.bindFramebuffer(i.FRAMEBUFFER,n),{uvTransform:this._cameraUvTransform,data:t,texture:e,dataWidth:o,dataHeight:s,userFacing:this._computedFrontCameraRotation}}_updateTransforms(e,t){e==this._computedTransformRotation&&t==this._computedFrontCameraRotation||(this._computedTransformRotation=e,this._computedFrontCameraRotation=t,this._cameraUvTransform=this._getCameraUvTransform())}_getCameraUvTransform(){switch(this._computedTransformRotation){case 270:return new Float32Array([0,1,0,0,-1,0,0,0,0,0,1,0,1,0,0,1]);case 180:return new Float32Array([-1,0,0,0,0,-1,0,0,0,0,1,0,1,1,0,1]);case 90:return new Float32Array([0,-1,0,0,1,0,0,0,0,0,1,0,0,1,0,1])}return new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}_getFramebuffer(e,t,r){if(this._framebufferWidth===t&&this._framebufferHeight===r&&this._framebufferId)return this._framebufferId;if(this._framebufferId&&(e.deleteFramebuffer(this._framebufferId),this._framebufferId=null),this._renderTexture&&(e.deleteTexture(this._renderTexture),this._renderTexture=null),this._framebufferId=e.createFramebuffer(),!this._framebufferId)throw new Error("Unable to create framebuffer");if(e.bindFramebuffer(e.FRAMEBUFFER,this._framebufferId),this._renderTexture=e.createTexture(),!this._renderTexture)throw new Error("Unable to create render texture");e.activeTexture(e.TEXTURE0);const i=e.getParameter(e.TEXTURE_BINDING_2D);e.bindTexture(e.TEXTURE_2D,this._renderTexture),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,r,0,e.RGBA,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameterf(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this._renderTexture,0);let a=e.checkFramebufferStatus(e.FRAMEBUFFER);if(a!==e.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer not complete: "+a.toString());return this._framebufferWidth=t,this._framebufferHeight=r,e.bindTexture(e.TEXTURE_2D,i),e.bindFramebuffer(e.FRAMEBUFFER,null),this._framebufferId}_getVertexBuffer(e){if(this._vertexBuffer)return this._vertexBuffer;if(this._vertexBuffer=e.createBuffer(),!this._vertexBuffer)throw new Error("Unable to create vertex buffer");e.bindBuffer(e.ARRAY_BUFFER,this._vertexBuffer);let t=new Float32Array([-1,-1,0,0,-1,1,0,1,1,1,1,1,1,-1,1,0]);return e.bufferData(e.ARRAY_BUFFER,t,e.STATIC_DRAW),this._vertexBuffer}_getIndexBuffer(e){if(this._indexBuffer)return this._indexBuffer;if(this._indexBuffer=e.createBuffer(),!this._indexBuffer)throw new Error("Unable to create index buffer");e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this._indexBuffer);let t=new Uint16Array([0,1,2,0,2,3]);return e.bufferData(e.ELEMENT_ARRAY_BUFFER,t,e.STATIC_DRAW),this._indexBuffer}_getGreyscaleShader(e){if(this._greyscaleShader)return this._greyscaleShader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,Ge),i=u(e,e.FRAGMENT_SHADER,Ke);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"uTexWidth");if(!a)throw new Error("Unable to get uniform location uTexWidth");let n=e.getUniformLocation(t,"uUvTransform");if(!n)throw new Error("Unable to get uniform location uUvTransform");let o=e.getUniformLocation(t,"uSampler");if(!o)throw new Error("Unable to get uniform location uSampler");return this._greyscaleShader={program:t,aVertexPositionLoc:e.getAttribLocation(t,"aVertexPosition"),aTextureCoordLoc:e.getAttribLocation(t,"aTextureCoord"),uTexWidthLoc:a,uUvTransformLoc:n,uSamplerLoc:o},this._greyscaleShader}}let Ge="\n attribute vec4 aVertexPosition;\n attribute vec2 aTextureCoord;\n\n varying highp vec2 vTextureCoord1;\n varying highp vec2 vTextureCoord2;\n varying highp vec2 vTextureCoord3;\n varying highp vec2 vTextureCoord4;\n\n uniform float uTexWidth;\n\tuniform mat4 uUvTransform;\n\n void main(void) {\n highp vec2 offset1 = vec2(1.5 / uTexWidth, 0);\n highp vec2 offset2 = vec2(0.5 / uTexWidth, 0);\n\n gl_Position = aVertexPosition;\n vTextureCoord1 = (uUvTransform * vec4(aTextureCoord - offset1, 0, 1)).xy;\n vTextureCoord2 = (uUvTransform * vec4(aTextureCoord - offset2, 0, 1)).xy;\n vTextureCoord3 = (uUvTransform * vec4(aTextureCoord + offset2, 0, 1)).xy;\n vTextureCoord4 = (uUvTransform * vec4(aTextureCoord + offset1, 0, 1)).xy;\n }\n",Ke="\n varying highp vec2 vTextureCoord1;\n varying highp vec2 vTextureCoord2;\n varying highp vec2 vTextureCoord3;\n varying highp vec2 vTextureCoord4;\n\n uniform sampler2D uSampler;\n\n const lowp vec3 colorWeights = vec3(77.0 / 256.0, 150.0 / 256.0, 29.0 / 256.0);\n\n void main(void) {\n lowp vec4 outpx;\n\n outpx.r = dot(colorWeights, texture2D(uSampler, vTextureCoord1).xyz);\n outpx.g = dot(colorWeights, texture2D(uSampler, vTextureCoord2).xyz);\n outpx.b = dot(colorWeights, texture2D(uSampler, vTextureCoord3).xyz);\n outpx.a = dot(colorWeights, texture2D(uSampler, vTextureCoord4).xyz);\n\n gl_FragColor = outpx;\n }\n",We=1,Ze=new Map;class He extends Ue{constructor(e,t){super(),this._video=e,this._pipeline=t,this._isPaused=!0,this._hadFrames=!1,this._isUserFacing=!1,this._cameraToScreenRotation=0,this._isUploadFrame=!0,this._cameraToDeviceTransform=R(),this._cameraToDeviceTransformUserFacing=R(),this._cameraModel=new Float32Array([300,300,160,120,0,0]),this._profile=c.DEFAULT,N(this._cameraToDeviceTransformUserFacing,[-1,1,-1]);let r=this._video;this._video instanceof HTMLVideoElement?r.addEventListener("loadedmetadata",(()=>{this._hadFrames=!0})):this._hadFrames=!0,this._resetGLContext=this._resetGLContext.bind(this);let i=ht.get(this._pipeline);i&&i.onGLContextReset.bind(this._resetGLContext)}static createVideoElementSource(e,t){let r=We++;return Ze.set(r,new He(t,e)),ge("html_element_source_t initialized"),r}static getVideoElementSource(e){return Ze.get(e)}_resetGLContext(){var e,t;this._currentVideoTexture=void 0,null===(t=null===(e=this._imageProcessor)||void 0===e?void 0:e.resetGLContext)||void 0===t||t.call(e)}destroy(){let e=ht.get(this._pipeline);e&&e.onGLContextReset.unbind(this._resetGLContext),this.pause(),this._resetGLContext()}pause(){this._isPaused=!0;let e=ht.get(this._pipeline);e&&e.currentCameraSource===this&&(e.currentCameraSource=void 0)}start(){var e;this._isPaused&&(this._isUploadFrame=!0,this._video instanceof HTMLVideoElement&&(this._hadFrames=!1)),this._isPaused=!1;let t=ht.get(this._pipeline);t&&t.currentCameraSource!==this&&(null===(e=t.currentCameraSource)||void 0===e||e.pause(),t.currentCameraSource=this)}getFrame(e){let t=ht.get(this._pipeline);if(!t)return;let r=t.glContext;if(r&&!this._isPaused&&this._hadFrames)try{let i=this._processFrame(r,this._cameraToScreenRotation,e);if(i){let e=t.registerToken(i);t.sendDataToWorker(i.data||new ArrayBuffer(0),e,i.dataWidth,i.dataHeight,i.userFacing,i.cameraToDevice,i.cameraModel),i.data=void 0}}catch(e){console.log("Unable to process frame")}}_processFrame(e,t,r){let i=ht.get(this._pipeline);if(!i)return;if(this._imageProcessor||(this._imageProcessor=new Ve(e)),this._isUploadFrame){if(this._currentVideoTexture||(this._currentVideoTexture=i.getVideoTexture()),!this._currentVideoTexture)return;return this._imageProcessor.uploadFrame(this._currentVideoTexture,this._video,t,this._isUserFacing,this._profile),void(this._isUploadFrame=!this._isUploadFrame)}if(r||!this._currentVideoTexture)return;this._isUploadFrame=!this._isUploadFrame;const[a,n]=D.getDataSize(this._profile);let o=a*n,s=i.cameraPixelArrays.pop();for(;s&&s.byteLength!==o;)s=i.cameraPixelArrays.pop();s||(s=new ArrayBuffer(o));let _=this._currentVideoTexture;this._currentVideoTexture=void 0;let c=300*a/320;return this._cameraModel[0]=c,this._cameraModel[1]=c,this._cameraModel[2]=.5*a,this._cameraModel[3]=.5*n,Object.assign(Object.assign({},this._imageProcessor.readFrame(_,s,this._profile)),{cameraModel:this._cameraModel,cameraSource:this,cameraToDevice:this._isUserFacing?this._cameraToDeviceTransformUserFacing:this._cameraToDeviceTransform})}uploadGL(){}setProfile(e){this._profile=e}}var Ye=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};let Xe=document.createElement("video");Xe.setAttribute("playsinline",""),Xe.setAttribute("webkit-playsinline",""),D.videoElementInDOM&&(Xe.style.width="0px",Xe.style.height="0px",document.body.appendChild(Xe));class qe extends He{constructor(e,t,r){super(Xe,t),this._impl=e,this._deviceId=r,this._currentStream=null,this._activeDeviceId=null,this._hasStartedOrientation=!1,this._lastTimestamp=-1,this._deviceMotionListener=e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();const i=e.interval*D.intervalMultiplier;D.trustSensorIntervals&&(-1===this._lastTimestamp?this._lastTimestamp=r:(this._lastTimestamp+=i,r=this._lastTimestamp)),null!==e.acceleration&&null!==e.acceleration.x&&null!==e.acceleration.y&&null!==e.acceleration.z&&t.motionAccelerometerWithoutGravitySubmitInt(r,i,e.acceleration.x*D.deviceMotionMutliplier,e.acceleration.y*D.deviceMotionMutliplier,e.acceleration.z*D.deviceMotionMutliplier),null!==e.accelerationIncludingGravity&&null!==e.accelerationIncludingGravity.x&&null!==e.accelerationIncludingGravity.y&&null!==e.accelerationIncludingGravity.z&&(t.motionAccelerometerSubmit(r,e.accelerationIncludingGravity.x*D.deviceMotionMutliplier,e.accelerationIncludingGravity.y*D.deviceMotionMutliplier,e.accelerationIncludingGravity.z*D.deviceMotionMutliplier),t.motionAccelerometerWithGravitySubmitInt(r,i,e.accelerationIncludingGravity.x*D.deviceMotionMutliplier,e.accelerationIncludingGravity.y*D.deviceMotionMutliplier,e.accelerationIncludingGravity.z*D.deviceMotionMutliplier)),null!==e.rotationRate&&null!==e.rotationRate.alpha&&null!==e.rotationRate.beta&&null!==e.rotationRate.gamma&&this._hasStartedOrientation?(t.motionRotationRateSubmit(r,e.rotationRate.alpha*Math.PI/-180,e.rotationRate.beta*Math.PI/-180,e.rotationRate.gamma*Math.PI/-180),t.motionRotationRateSubmitInt(r,i,e.rotationRate.alpha,e.rotationRate.beta,e.rotationRate.gamma)):this._hasStartedOrientation||this._startDeviceOrientation()}}destroy(){nt(this._impl),super.destroy()}_stop(){this._currentStream&&(this._currentStream.getTracks().forEach((e=>e.stop())),this._currentStream=null)}pause(){super.pause(),this._stopDeviceMotion(),this._syncCamera()}start(){super.start(),this._startDeviceMotion(),this._syncCamera()}_getConstraints(){return Ye(this,void 0,void 0,(function*(){let e,t;if(this._deviceId!==qe.DEFAULT_DEVICE_ID&&this._deviceId!==qe.USER_DEFAULT_DEVICE_ID)e=this._deviceId;else if(t=this._deviceId===qe.DEFAULT_DEVICE_ID?"environment":"user",D.ios164CameraSelection){if(!this._explicitEnvironmentCameraId||!this._explicitUserCameraId){(yield navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:t}})).getTracks().forEach((e=>e.stop()));let e=yield navigator.mediaDevices.enumerateDevices();e=e.filter((e=>"videoinput"===e.kind)),e.length>=2&&(this._explicitUserCameraId=e[0].deviceId,this._explicitEnvironmentCameraId=e[1].deviceId)}e="environment"===t?this._explicitEnvironmentCameraId:this._explicitUserCameraId}let r={audio:!1,video:{facingMode:t,width:D.videoWidth,height:D.videoHeight,frameRate:D.requestHighFrameRate?60:void 0,deviceId:e}};if(e||D.relyOnConstraintsForCameraSelection)return r;if(!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return r;let i=yield navigator.mediaDevices.enumerateDevices(),a=!1;return i=i.filter((e=>{if("videoinput"!==e.kind)return!1;if(e.getCapabilities){a=!0;let r=e.getCapabilities();if(r&&r.facingMode&&r.facingMode.indexOf("user"===t?"user":"environment")<0)return!1}return!0})),a&&0!==i.length?("object"==typeof r.video&&(ge("choosing device ID",i[i.length-1].deviceId),r.video.deviceId=i[i.length-1].deviceId),r):r}))}getFrame(e){this._cameraToScreenRotation=G(!1),super.getFrame(e)}_getUserMedia(){return Ye(this,void 0,void 0,(function*(){let e=yield this._getConstraints();return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?yield navigator.mediaDevices.getUserMedia(e):yield new Promise(((t,r)=>{navigator.getUserMedia(e,t,r)}))}))}_syncCamera(){return Ye(this,void 0,void 0,(function*(){if(this._currentStream&&this._isPaused)this._stop();else if(this._currentStream&&this._activeDeviceId!==this._deviceId&&this._stop(),!this._isPaused){if(this._activeDeviceId=this._deviceId,this._currentStream=yield this._getUserMedia(),this._isPaused)return void(yield this._syncCamera());if(this._isUserFacing=!1,this._currentStream){let e=this._currentStream.getVideoTracks();e.length>0&&(this._isUserFacing="user"===e[0].getSettings().facingMode)}if(!(this._video instanceof HTMLVideoElement))return;this._video.src="",this._video.loop=!1,this._video.muted=!0,this._video.srcObject=this._currentStream,this._video.play()}}))}_startDeviceOrientation(){this._hasStartedOrientation||(this._hasStartedOrientation=!0,this._deviceOrientationListener=e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();null!==e.alpha&&null!==e.beta&&null!==e.gamma&&t.motionAttitudeSubmitInt(r,0,e.alpha,e.beta,e.gamma)},window.addEventListener("deviceorientation",this._deviceOrientationListener))}_startDeviceMotion(){window.addEventListener("devicemotion",this._deviceMotionListener,!1),this._startDeviceOrientation()}_stopDeviceMotion(){window.removeEventListener("devicemotion",this._deviceMotionListener),this._deviceOrientationListener&&window.removeEventListener("deviceorientation",this._deviceOrientationListener)}}qe.USER_DEFAULT_DEVICE_ID="Simulated User Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b",qe.DEFAULT_DEVICE_ID="Simulated Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b";var $e=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};class Je extends Ue{constructor(e,t,r){super(),this._impl=e,this._pipeline=t,this._deviceId=r,this._currentStream=null,this._activeDeviceId=null,this._isPaused=!0,this._isUserFacing=!1,this._hadFrames=!1,this._canvas=new OffscreenCanvas(640,480),this._context=this._canvas.getContext("2d"),this._lastFrameTime=-1,this._video=document.createElement("video"),this._cameraToDeviceTransform=R(),this._cameraToDeviceTransformUserFacing=R(),this._cameraModel=new Float32Array([300,300,160,120,0,0]),this._profile=c.DEFAULT,this._hasStartedOrientation=!1,this._lastTimestamp=-1,this._deviceMotionListener=e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now(),i=e.interval;this._lastTimestamp>-1&&!D.trustSensorIntervals&&(i=Math.max(r-this._lastTimestamp,i)),this._lastTimestamp=r,i*=D.intervalMultiplier,null!==e.acceleration&&null!==e.acceleration.x&&null!==e.acceleration.y&&null!==e.acceleration.z&&t.motionAccelerometerWithoutGravitySubmitInt(r,i,e.acceleration.x*D.deviceMotionMutliplier,e.acceleration.y*D.deviceMotionMutliplier,e.acceleration.z*D.deviceMotionMutliplier),null!==e.accelerationIncludingGravity&&null!==e.accelerationIncludingGravity.x&&null!==e.accelerationIncludingGravity.y&&null!==e.accelerationIncludingGravity.z&&(t.motionAccelerometerSubmit(r,e.accelerationIncludingGravity.x*D.deviceMotionMutliplier,e.accelerationIncludingGravity.y*D.deviceMotionMutliplier,e.accelerationIncludingGravity.z*D.deviceMotionMutliplier),t.motionAccelerometerWithGravitySubmitInt(r,i,e.accelerationIncludingGravity.x*D.deviceMotionMutliplier,e.accelerationIncludingGravity.y*D.deviceMotionMutliplier,e.accelerationIncludingGravity.z*D.deviceMotionMutliplier)),null!==e.rotationRate&&null!==e.rotationRate.alpha&&null!==e.rotationRate.beta&&null!==e.rotationRate.gamma&&this._hasStartedOrientation?(t.motionRotationRateSubmit(r,e.rotationRate.alpha*Math.PI/-180,e.rotationRate.beta*Math.PI/-180,e.rotationRate.gamma*Math.PI/-180),t.motionRotationRateSubmitInt(r,i,e.rotationRate.alpha,e.rotationRate.beta,e.rotationRate.gamma)):this._hasStartedOrientation||this._startDeviceOrientation()},ge("Using ImageBitmap camera source"),N(this._cameraToDeviceTransformUserFacing,[-1,1,-1]),this._video.muted=!0,this._video.setAttribute("playsinline",""),this._video.setAttribute("webkit-playsinline",""),D.videoElementInDOM&&(this._video.style.width="0px",this._video.style.height="0px",document.body.appendChild(this._video)),this._video.addEventListener("loadedmetadata",(()=>{this._hadFrames=!0}))}destroy(){this.pause(),nt(this._impl)}setProfile(e){this._profile=e}_stop(){this._currentStream&&(this._currentStream.getTracks().forEach((e=>e.stop())),this._currentStream=null)}pause(){this._isPaused=!0;let e=ht.get(this._pipeline);e&&e.currentCameraSource===this&&(e.currentCameraSource=void 0),this._stopDeviceMotion(),this._syncCamera()}start(){var e;let t=ht.get(this._pipeline);t&&t.currentCameraSource!==this&&(null===(e=t.currentCameraSource)||void 0===e||e.pause(),t.currentCameraSource=this),this._isPaused=!1,this._startDeviceMotion(),this._syncCamera()}_getConstraints(){return $e(this,void 0,void 0,(function*(){let e,t;this._deviceId!==Je.DEFAULT_DEVICE_ID&&this._deviceId!==Je.USER_DEFAULT_DEVICE_ID?e=this._deviceId:t=this._deviceId===Je.DEFAULT_DEVICE_ID?"environment":"user";let r={audio:!1,video:{facingMode:t,width:D.videoWidth,height:D.videoHeight,frameRate:D.requestHighFrameRate?60:void 0,deviceId:e}};if(e)return r;if(!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return r;let i=yield navigator.mediaDevices.enumerateDevices(),a=!1;return i=i.filter((e=>{if("videoinput"!==e.kind)return!1;if(e.getCapabilities){a=!0;let r=e.getCapabilities();if(r&&r.facingMode&&r.facingMode.indexOf("user"===t?"user":"environment")<0)return!1}return!0})),a&&0!==i.length?("object"==typeof r.video&&(ge("choosing device ID",i[i.length-1].deviceId),r.video.deviceId=i[i.length-1].deviceId),r):r}))}getFrame(e){var t,r;if(!this._context)return;if(!this._hadFrames)return;if(e)return;let i=performance.now();if(i<this._lastFrameTime+25)return;this._lastFrameTime=i,this._canvas.width!==this._video.videoWidth&&(this._canvas.width=this._video.videoWidth),this._canvas.height!==this._video.videoHeight&&(this._canvas.height=this._video.videoHeight),this._context.drawImage(this._video,0,0);const a=this._canvas.transferToImageBitmap();let n=G(!1),o=ht.get(this._pipeline);if(!o)return;const[s,_]=D.getDataSize(this._profile);let c=300*s/320;this._cameraModel[0]=c,this._cameraModel[1]=c,this._cameraModel[2]=.5*s,this._cameraModel[3]=.5*_;let l=o.registerToken({dataWidth:this._canvas.width,dataHeight:this._canvas.height,texture:void 0,userFacing:this._isUserFacing,cameraSource:this,cameraModel:this._cameraModel.slice(),cameraToDevice:this._isUserFacing?this._cameraToDeviceTransformUserFacing:this._cameraToDeviceTransform});null===(r=null===(t=ht.get(this._pipeline))||void 0===t?void 0:t.sendImageBitmapToWorker)||void 0===r||r.call(t,a,n,this._isUserFacing,l,this._cameraModel,this._isUserFacing?this._cameraToDeviceTransformUserFacing:this._cameraToDeviceTransform,this._profile)}_getUserMedia(){return $e(this,void 0,void 0,(function*(){let e=yield this._getConstraints();return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?yield navigator.mediaDevices.getUserMedia(e):yield new Promise(((t,r)=>{navigator.getUserMedia(e,t,r)}))}))}_syncCamera(){return $e(this,void 0,void 0,(function*(){if(this._currentStream&&this._isPaused)this._stop();else if(this._currentStream&&this._activeDeviceId!==this._deviceId&&this._stop(),!this._isPaused){if(this._activeDeviceId=this._deviceId,this._currentStream=yield this._getUserMedia(),this._isPaused)return void(yield this._syncCamera());if(this._isUserFacing=!1,this._currentStream){let e=this._currentStream.getVideoTracks();e.length>0&&(this._isUserFacing="user"===e[0].getSettings().facingMode)}this._video.src="",this._video.loop=!1,this._video.muted=!0,this._video.srcObject=this._currentStream,this._video.play()}}))}_startDeviceOrientation(){this._hasStartedOrientation||(this._hasStartedOrientation=!0,window.addEventListener("deviceorientation",(e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();null!==e.alpha&&null!==e.beta&&null!==e.gamma&&t.motionAttitudeSubmitInt(r,0,e.alpha,e.beta,e.gamma)})))}_startDeviceMotion(){window.addEventListener("devicemotion",this._deviceMotionListener,!1)}_stopDeviceMotion(){window.removeEventListener("devicemotion",this._deviceMotionListener)}uploadGL(e){const t=ht.get(this._pipeline),r=null==t?void 0:t.glContext;if(!e||e.texture||!e.frame||!t||!r)return;let i=t.getVideoTexture();i&&(r.bindTexture(r.TEXTURE_2D,i),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,e.frame),r.bindTexture(r.TEXTURE_2D,null),e.texture=i,e.frame.close(),delete e.frame)}}Je.USER_DEFAULT_DEVICE_ID="Simulated User Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b",Je.DEFAULT_DEVICE_ID="Simulated Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b";var Qe=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};class et extends Ue{constructor(e,t,r){super(),this._impl=e,this._pipeline=t,this._deviceId=r,this._currentStream=null,this._activeDeviceId=null,this._isPaused=!0,this._isUserFacing=!1,this._cameraToScreenRotation=0,this._hasStartedOrientation=!1,this._lastTimestamp=-1,this._deviceMotionListener=e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();const i=e.interval*D.intervalMultiplier;D.trustSensorIntervals&&(-1===this._lastTimestamp?this._lastTimestamp=r:(this._lastTimestamp+=i,r=this._lastTimestamp)),null!==e.acceleration&&null!==e.acceleration.x&&null!==e.acceleration.y&&null!==e.acceleration.z&&t.motionAccelerometerWithoutGravitySubmitInt(r,i,e.acceleration.x*D.deviceMotionMutliplier,e.acceleration.y*D.deviceMotionMutliplier,e.acceleration.z*D.deviceMotionMutliplier),null!==e.accelerationIncludingGravity&&null!==e.accelerationIncludingGravity.x&&null!==e.accelerationIncludingGravity.y&&null!==e.accelerationIncludingGravity.z&&(t.motionAccelerometerSubmit(r,e.accelerationIncludingGravity.x*D.deviceMotionMutliplier,e.accelerationIncludingGravity.y*D.deviceMotionMutliplier,e.accelerationIncludingGravity.z*D.deviceMotionMutliplier),t.motionAccelerometerWithGravitySubmitInt(r,i,e.accelerationIncludingGravity.x*D.deviceMotionMutliplier,e.accelerationIncludingGravity.y*D.deviceMotionMutliplier,e.accelerationIncludingGravity.z*D.deviceMotionMutliplier)),null!==e.rotationRate&&null!==e.rotationRate.alpha&&null!==e.rotationRate.beta&&null!==e.rotationRate.gamma&&this._hasStartedOrientation?(t.motionRotationRateSubmit(r,e.rotationRate.alpha*Math.PI/-180,e.rotationRate.beta*Math.PI/-180,e.rotationRate.gamma*Math.PI/-180),t.motionRotationRateSubmitInt(r,i,e.rotationRate.alpha,e.rotationRate.beta,e.rotationRate.gamma)):this._hasStartedOrientation||this._startDeviceOrientation()},this._lastAccelerometerTimestamp=-1,this._accelerometerReading=()=>{var e;if(!this._accelerometer||void 0===this._accelerometer.x||void 0===this._accelerometer.y||void 0===this._accelerometer.z)return;let t=ht.get(this._pipeline);if(!t)return;const r=null!==(e=this._accelerometer.timestamp)&&void 0!==e?e:performance.now(),i=this._lastAccelerometerTimestamp>-1?r-this._lastAccelerometerTimestamp:30;this._lastAccelerometerTimestamp=r,t.motionAccelerometerSubmit(r,this._accelerometer.x*D.deviceMotionMutliplier,this._accelerometer.y*D.deviceMotionMutliplier,this._accelerometer.z*D.deviceMotionMutliplier),t.motionAccelerometerWithGravitySubmitInt(r,i,this._accelerometer.x*D.deviceMotionMutliplier,this._accelerometer.y*D.deviceMotionMutliplier,this._accelerometer.z*D.deviceMotionMutliplier)},this._lastLinearAccelerationTimestamp=-1,this._linearAccelerationReading=()=>{var e;if(!this._linearAcceleration||void 0===this._linearAcceleration.x||void 0===this._linearAcceleration.y||void 0===this._linearAcceleration.z)return;let t=ht.get(this._pipeline);if(!t)return;const r=null!==(e=this._linearAcceleration.timestamp)&&void 0!==e?e:performance.now(),i=this._lastLinearAccelerationTimestamp>-1?r-this._lastLinearAccelerationTimestamp:30;this._lastLinearAccelerationTimestamp=r,t.motionAccelerometerWithoutGravitySubmitInt(r,i,this._linearAcceleration.x*D.deviceMotionMutliplier,this._linearAcceleration.y*D.deviceMotionMutliplier,this._linearAcceleration.z*D.deviceMotionMutliplier)},this._lastGyroscopeReading=-1,this._gyroscopeReading=()=>{var e;if(!this._gyroscope||void 0===this._gyroscope.x||void 0===this._gyroscope.y||void 0===this._gyroscope.z)return;let t=ht.get(this._pipeline);if(!t)return;const r=null!==(e=this._gyroscope.timestamp)&&void 0!==e?e:performance.now(),i=this._lastGyroscopeReading>-1?r-this._lastGyroscopeReading:30;this._lastGyroscopeReading=r,t.motionRotationRateSubmit(r,-this._gyroscope.x,-this._gyroscope.y,-this._gyroscope.z),t.motionRotationRateSubmitInt(r,i,180*this._gyroscope.x/Math.PI,180*this._gyroscope.y/Math.PI,180*this._gyroscope.z/Math.PI)},ge("Using MSTP camera source")}destroy(){this.pause(),nt(this._impl)}_stop(){this._currentStream&&(this._currentStream.getTracks().forEach((e=>e.stop())),this._currentStream=null)}pause(){this._isPaused=!0;let e=ht.get(this._pipeline);e&&e.currentCameraSource===this&&(e.currentCameraSource=void 0),this._stopDeviceMotion(),this._syncCamera()}start(){var e;let t=ht.get(this._pipeline);t&&t.currentCameraSource!==this&&(null===(e=t.currentCameraSource)||void 0===e||e.pause(),t.currentCameraSource=this),this._isPaused=!1,this._startDeviceMotion(),this._syncCamera()}_getConstraints(){return Qe(this,void 0,void 0,(function*(){let e,t;this._deviceId!==et.DEFAULT_DEVICE_ID&&this._deviceId!==et.USER_DEFAULT_DEVICE_ID?e=this._deviceId:t=this._deviceId===et.DEFAULT_DEVICE_ID?"environment":"user";let r={audio:!1,video:{facingMode:t,width:D.videoWidth,height:D.videoHeight,frameRate:D.requestHighFrameRate?60:30,deviceId:e}};if(e)return r;if(!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return r;let i=yield navigator.mediaDevices.enumerateDevices(),a=!1;return i=i.filter((e=>{if("videoinput"!==e.kind)return!1;if(e.getCapabilities){a=!0;let r=e.getCapabilities();if(r&&r.facingMode&&r.facingMode.indexOf("user"===t?"user":"environment")<0)return!1}return!0})),a&&0!==i.length?("object"==typeof r.video&&(ge("choosing device ID",i[i.length-1].deviceId),r.video.deviceId=i[i.length-1].deviceId),r):r}))}getFrame(e){var t,r;let i=G(!1);i!=this._cameraToScreenRotation&&(null===(r=null===(t=ht.get(this._pipeline))||void 0===t?void 0:t.sendCameraToScreenRotationToWorker)||void 0===r||r.call(t,i),this._cameraToScreenRotation=i)}_getUserMedia(){return Qe(this,void 0,void 0,(function*(){let e=yield this._getConstraints();return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?yield navigator.mediaDevices.getUserMedia(e):yield new Promise(((t,r)=>{navigator.getUserMedia(e,t,r)}))}))}streamEnded(){console.log("MSTP stream ended"),this._stop(),this._syncCamera()}_syncCamera(){return Qe(this,void 0,void 0,(function*(){if(this._currentStream&&this._isPaused)this._stop();else if(this._currentStream&&this._activeDeviceId!==this._deviceId&&this._stop(),!this._isPaused){if(this._activeDeviceId=this._deviceId,this._currentStream=yield this._getUserMedia(),this._isPaused)return void(yield this._syncCamera());if(this._isUserFacing=!1,this._currentStream){let e=this._currentStream.getVideoTracks();if(e.length>0){this._isUserFacing="user"===e[0].getSettings().facingMode;let t=new MediaStreamTrackProcessor({track:e[0]});const r=this._currentStream;if(yield(1e3,new Promise((e=>{setTimeout(e,1e3)}))),r!==this._currentStream)return;let i=ht.get(this._pipeline);i&&i.sendCameraStreamToWorker(this._impl,t.readable,this._isUserFacing)}}}}))}setProfile(e){let t=ht.get(this._pipeline);t&&t.sendCameraProfileToWorker(this._impl,e)}_startDeviceOrientation(){this._hasStartedOrientation||(this._hasStartedOrientation=!0,window.addEventListener("deviceorientation",(e=>{let t=ht.get(this._pipeline);if(!t)return;let r=void 0!==e.timeStamp&&null!==e.timeStamp?e.timeStamp:performance.now();null!==e.alpha&&null!==e.beta&&null!==e.gamma&&t.motionAttitudeSubmitInt(r,0,e.alpha,e.beta,e.gamma)})))}_startDeviceMotion(){try{this._accelerometer=new Accelerometer({frequency:60}),this._linearAcceleration=new LinearAccelerationSensor({frequency:60}),this._gyroscope=new Gyroscope({frequency:60}),this._accelerometer.addEventListener("reading",this._accelerometerReading),this._accelerometer.start(),this._linearAcceleration.addEventListener("reading",this._linearAccelerationReading),this._linearAcceleration.start(),this._gyroscope.addEventListener("reading",this._gyroscopeReading),this._gyroscope.start()}catch(e){window.addEventListener("devicemotion",this._deviceMotionListener,!1)}}_stopDeviceMotion(){this._accelerometer&&(this._accelerometer.stop(),this._accelerometer.removeEventListener("reading",this._accelerometerReading),delete this._accelerometer),this._linearAcceleration&&(this._linearAcceleration.stop(),this._linearAcceleration.removeEventListener("reading",this._linearAccelerationReading),delete this._linearAcceleration),this._gyroscope&&(this._gyroscope.stop(),this._gyroscope.removeEventListener("reading",this._gyroscopeReading),delete this._gyroscope),window.removeEventListener("devicemotion",this._deviceMotionListener)}uploadGL(e){const t=ht.get(this._pipeline),r=null==t?void 0:t.glContext;if(!e||e.texture||!e.frame||!t||!r)return;let i=t.getVideoTexture();i&&(r.bindTexture(r.TEXTURE_2D,i),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,e.frame),r.bindTexture(r.TEXTURE_2D,null),e.texture=i,e.frame.close(),delete e.frame)}}et.USER_DEFAULT_DEVICE_ID="Simulated User Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b",et.DEFAULT_DEVICE_ID="Simulated Default Device ID: a908df7f-5661-4d20-b227-a1c15d2fdb4b";let tt=1,rt=new Map;function it(e,t){rt.set(e,t)}function at(e){return rt.get(e)}function nt(e){rt.delete(e)}class ot{constructor(e){this._gl=e}dispose(){this._vbo&&this._gl.deleteBuffer(this._vbo),this._uvbo&&this._gl.deleteBuffer(this._uvbo),this._ibo&&this._gl.deleteBuffer(this._ibo),this._shader&&this._gl.deleteProgram(this._shader.prog),this._vbo=void 0,this._uvbo=void 0,this._ibo=void 0,this._shader=void 0}_generateIBO(e,t){if(this._ibo&&this._lastIndices===e)return this._ibo;if(this._lastIndices=e,this._ibo||(this._ibo=t.createBuffer()),!this._ibo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,this._ibo),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null),this._ibo}_generateVBO(e,t){if(this._vbo||(this._vbo=t.createBuffer()),!this._vbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._vbo),t.bufferData(t.ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._vbo}_generateUVBO(e,t){if(this._uvbo||(this._uvbo=t.createBuffer()),!this._uvbo)throw new Error("Unable to create buffer object");return t.bindBuffer(t.ARRAY_BUFFER,this._uvbo),t.bufferData(t.ARRAY_BUFFER,e,t.STATIC_DRAW),t.bindBuffer(t.ARRAY_BUFFER,null),this._uvbo}draw(e,t,r){var i;const a=t.getPreviewMesh(r),n=null===(i=t.getTargetInfo(r).preview)||void 0===i?void 0:i.image;if(!a||!n)return;if(!n.complete)return;let o=this._gl,s=this._getShader(o),_=this._generateVBO(a.vertices,o),c=this._generateUVBO(a.uvs,o),l=this._generateIBO(a.indices,o);o.enable(o.DEPTH_TEST),o.enable(o.CULL_FACE),o.useProgram(s.prog),o.uniformMatrix4fv(s.unif_matrix,!1,e),o.activeTexture(o.TEXTURE0),o.bindTexture(o.TEXTURE_2D,function(e,t){let r=st.get(t);if(r)return r;if(r=e.createTexture()||void 0,!r)throw new Error("Unable to create texture");st.set(t,r),e.bindTexture(e.TEXTURE_2D,r),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE);const i=e.RGBA,a=e.RGBA,n=e.UNSIGNED_BYTE;return e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,i,a,n,t),t.addEventListener("load",(()=>{if(!r)return;e.bindTexture(e.TEXTURE_2D,r);const i=e.RGBA,a=e.RGBA,n=e.UNSIGNED_BYTE;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,i,a,n,t)})),r}(o,n)),o.uniform1i(s.unif_skinSampler,0),o.bindBuffer(o.ARRAY_BUFFER,_),o.vertexAttribPointer(s.attr_position,3,o.FLOAT,!1,0,0),o.enableVertexAttribArray(s.attr_position),o.bindBuffer(o.ARRAY_BUFFER,c),o.vertexAttribPointer(s.attr_textureCoord,2,o.FLOAT,!1,0,0),o.enableVertexAttribArray(s.attr_textureCoord),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,l),o.drawElements(o.TRIANGLES,a.indices.length,o.UNSIGNED_SHORT,0),o.disableVertexAttribArray(s.attr_position),o.disableVertexAttribArray(s.attr_textureCoord),o.bindBuffer(o.ARRAY_BUFFER,null),o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,null)}_getShader(e){if(this._shader)return this._shader;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,_t),i=u(e,e.FRAGMENT_SHADER,ct);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"matrix");if(!a)throw new Error("Unable to get uniform location mattrix");let n=e.getUniformLocation(t,"skinSampler");if(!n)throw new Error("Unable to get uniform location skinSampler");return this._shader={prog:t,unif_matrix:a,unif_skinSampler:n,attr_position:e.getAttribLocation(t,"position"),attr_textureCoord:e.getAttribLocation(t,"textureCoord")},this._shader}}const st=new Map;let _t="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 matrix;\nattribute vec4 position;\nattribute vec2 textureCoord;\n\nvarying highp vec2 vTextureCoord;\n\nvoid main()\n{\n gl_Position = matrix * position;\n vTextureCoord = textureCoord;\n}",ct="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying highp vec2 vTextureCoord;\nuniform sampler2D skinSampler;\n\nvoid main()\n{\n gl_FragColor = texture2D(skinSampler, vTextureCoord);\n}",lt=new Map,dt=R();class ht{constructor(e,t,r){this._client=e,this._impl=t,this._mgr=r,this.pendingMessages=[],this.cameraTokens=new Map,this.nextCameraToken=1,this.tokensInFlight=0,this.videoTextures=[],this.cameraPixelArrays=[],this._sequenceRecordDeviceAttitudeMatrices=!0,this._sequenceRecorderFirstCameraToken=0,this._cameraFrameDataPromises=new Map,this._cameraFrameDataResolves=new Map,this._cameraFrameDataRejects=new Map,this._cameraFrameDataEnabled=!1,this.onGLContextReset=new K}static create(e,t){let r=e.pipeline_create();return lt.set(r,new ht(e,r,t)),r}static get(e){return lt.get(e)}frameUpdate(e){for(let t of this.pendingMessages)e.processMessages(t),this._mgr.postOutgoingMessage({t:"buf",p:this._impl,d:t},[t]);this.pendingMessages=[],this.cleanOldFrames()}cleanOldFrames(){var e,t;let r=this._client.pipeline_camera_frame_user_data(this._impl);if(r)for(let i of this.cameraTokens)i[0]<r&&(i[1].texture&&this.videoTextures.push(i[1].texture),null===(t=null===(e=i[1].frame)||void 0===e?void 0:e.close)||void 0===t||t.call(e),i[1].data&&(this.cameraPixelArrays.push(i[1].data),i[1].data=void 0),this.cameraTokens.delete(i[0]))}cameraFrameDataRawResult(e){var t,r;let i=this.cameraTokens.get(e.token);i&&(null===e.data?null===(t=this._cameraFrameDataRejects.get(i))||void 0===t||t(new Error("Raw camera data not available")):(i.data=e.data.data,null===(r=this._cameraFrameDataResolves.get(i))||void 0===r||r(e.data)),this._cameraFrameDataRejects.delete(i),this._cameraFrameDataResolves.delete(i),this._cameraFrameDataPromises.delete(i))}cameraTokenReturn(e){let t=this.cameraTokens.get(e.token);if(this._sequenceRecorder&&this._sequenceRecordDeviceAttitudeMatrices&&e.token>=this._sequenceRecorderFirstCameraToken&&t&&(e.att&&this._sequenceRecorder.appendAttitudeMatrix(e.att),t.data=e.d,this._sequenceRecorder.appendCameraFrame(t)),t&&!t.data&&e.d){t.data=e.d;const r=this._cameraFrameDataResolves.get(t);r&&r({data:t.data,width:t.dataWidth,height:t.dataHeight}),this._cameraFrameDataRejects.delete(t),this._cameraFrameDataResolves.delete(t),this._cameraFrameDataPromises.delete(t)}this.tokensInFlight--}sequenceRecordStart(e){this._sequenceRecorder||(this._sequenceRecorder=new De(e)),this._sequenceRecorder.start(),this._sequenceRecorderFirstCameraToken=this.nextCameraToken}sequenceRecordStop(){var e;null===(e=this._sequenceRecorder)||void 0===e||e.stop()}sequenceRecordData(){var e;return(null===(e=this._sequenceRecorder)||void 0===e?void 0:e.data())||new Uint8Array(0)}sequenceRecordClear(){delete this._sequenceRecorder}sequenceRecordDeviceAttitudeMatrices(e){this._sequenceRecordDeviceAttitudeMatrices=e}getVideoTexture(){return this.videoTextures.pop()}getCameraFrameDataRaw(){if(!this._cameraFrameDataEnabled)throw new Error("Raw camera frame data is not enabled.");const e=this.getCurrentCameraInfo();if(!e)return Promise.resolve(void 0);if(e.data)return Promise.resolve({data:e.data.slice(0),width:e.dataWidth,height:e.dataHeight});let t=this._cameraFrameDataPromises.get(e);return t||(t=new Promise(((t,r)=>{if(void 0!==e.remoteToken){const t={t:"rawrequest",token:e.remoteToken,p:this._impl};this._mgr.postOutgoingMessage(t,[])}this._cameraFrameDataResolves.set(e,t),this._cameraFrameDataRejects.set(e,r)})),this._cameraFrameDataPromises.set(e,t)),t}setCameraFrameDataRawEnabled(e){this._cameraFrameDataEnabled=e;const t={t:"rawenabled",v:e};this._mgr.postOutgoingMessage(t,[])}destroy(){this._client.pipeline_destroy(this._impl),lt.delete(this._impl)}getCurrentCameraInfo(){let e=this._client.pipeline_camera_frame_user_data(this._impl);if(e)return this.cameraTokens.get(e)}cameraFrameDrawGL(e,t,r){if(!this.glContext)return;let i=this.getCurrentCameraInfo();i&&(this._cameraDraw||(this._cameraDraw=new xe(this.glContext)),this._cameraDraw.drawCameraFrame(e,t,i,!0===r))}glContextLost(){this._cameraDraw&&this._cameraDraw.dispose(),this._faceDraw&&this._faceDraw.dispose(),this._imageTargetPreviewDraw&&this._imageTargetPreviewDraw.dispose(),this._faceProjectDraw&&this._faceProjectDraw.dispose(),delete this._cameraDraw,delete this._faceDraw,delete this._imageTargetPreviewDraw,delete this._faceProjectDraw,p=void 0,m=void 0,b=void 0,g={},this.onGLContextReset.emit();for(let e of this.videoTextures)this.glContext&&this.glContext.deleteTexture(e);this.videoTextures=[];for(let e of this.cameraTokens)this.glContext&&e[1].texture&&this.glContext.deleteTexture(e[1].texture),e[1].texture=void 0;this.glContext=void 0}glContextSet(e,t){this.glContextLost(),this.glContext=e,t=t||[];for(let r=0;r<4;r++){let i=t[r]||e.createTexture();i&&(e.bindTexture(e.TEXTURE_2D,i),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),this.videoTextures.push(i))}e.bindTexture(e.TEXTURE_2D,null)}drawFace(e,t,r,i){if(!this.glContext)return;this._faceDraw||(this._faceDraw=new Ie(this.glContext));let a=R();k(a,e,t),k(a,a,r),this._faceDraw.drawFace(a,i)}drawImageTargetPreview(e,t,r,i,a){if(!this.glContext)return;this._imageTargetPreviewDraw||(this._imageTargetPreviewDraw=new ot(this.glContext));let n=R();k(n,e,t),k(n,n,r),this._imageTargetPreviewDraw.draw(n,a,i)}drawFaceProject(e,t,r,i,a,n){this.glContext&&(this._faceProjectDraw||(this._faceProjectDraw=new Me(this.glContext)),this._faceProjectDraw.drawFace(e,t,r,i,a,n))}cameraFrameTexture(){var e;return null===(e=this.getCurrentCameraInfo())||void 0===e?void 0:e.texture}cameraFrameTextureMatrix(e,t,r){let i=this.getCurrentCameraInfo();return i?Ne(i.dataWidth,i.dataHeight,e,t,i.uvTransform||dt,r):R()}cameraFrameUserFacing(){var e;return(null===(e=this.getCurrentCameraInfo())||void 0===e?void 0:e.userFacing)||!1}cameraPoseWithAttitude(e){let t=ut(this.getCurrentCameraInfo(),this._client.pipeline_camera_frame_camera_attitude(this._impl));if(e){let e=R();N(e,[-1,1,1]),k(t,e,t),k(t,t,e)}return x(t,t),t}videoFrameFromWorker(e){let t=this.nextCameraToken++;const r=at(e.source);r&&(this.cameraTokens.set(t,{dataWidth:e.w,dataHeight:e.h,texture:void 0,frame:e.d,userFacing:e.userFacing,uvTransform:e.uvTransform,cameraModel:e.cameraModel,cameraToDevice:e.cameraToDevice,cameraSource:r,remoteToken:e.token}),this.cleanOldFrames())}imageBitmapFromWorker(e){let t=this.cameraTokens.get(e.tokenId);t&&(t.dataWidth=e.dataWidth,t.dataHeight=e.dataHeight,t.frame=e.frame,t.userFacing=e.userFacing,t.uvTransform=e.uvTransform,this.tokensInFlight--,this.cleanOldFrames())}uploadGL(){var e,t;let r=this.getCurrentCameraInfo();null===(t=null===(e=null==r?void 0:r.cameraSource)||void 0===e?void 0:e.uploadGL)||void 0===t||t.call(e,r)}registerToken(e){let t=this.nextCameraToken++;return this.cameraTokens.set(t,e),this.tokensInFlight++,t}processGL(){this.glContext?this.currentCameraSource&&(this.tokensInFlight>0?this.currentCameraSource.getFrame(!0):this.currentCameraSource.getFrame(!1)):ve("no GL context for camera frames - please call pipeline_gl_context_set")}motionAccelerometerSubmit(e,t,r,i){var a;this._sequenceRecordDeviceAttitudeMatrices||null===(a=this._sequenceRecorder)||void 0===a||a.appendAccelerometer(e,t,r,i);const n={t:"sensorDataC2S",sensor:"accel",interval:0,timestamp:e,x:t,y:r,z:i,p:this._impl};this._mgr.postOutgoingMessage(n,[])}motionAccelerometerWithoutGravitySubmitInt(e,t,r,i,a){var n;null===(n=this._sequenceRecorder)||void 0===n||n.appendAccelerometerWithoutGravityInt(e,t,r,i,a);const o={t:"sensorDataC2S",sensor:"accel_wo_gravity_int",interval:t,timestamp:e,x:r,y:i,z:a,p:this._impl};this._mgr.postOutgoingMessage(o,[])}motionAccelerometerWithGravitySubmitInt(e,t,r,i,a){var n;null===(n=this._sequenceRecorder)||void 0===n||n.appendAccelerometerWithGravityInt(e,t,r,i,a);const o={t:"sensorDataC2S",sensor:"accel_w_gravity_int",interval:t,timestamp:e,x:r,y:i,z:a,p:this._impl};this._mgr.postOutgoingMessage(o,[])}motionRotationRateSubmitInt(e,t,r,i,a){var n;null===(n=this._sequenceRecorder)||void 0===n||n.appendRotationRateInt(e,t,r,i,a);const o={t:"sensorDataC2S",sensor:"rotation_rate_int",interval:t,timestamp:e,x:r,y:i,z:a,p:this._impl};this._mgr.postOutgoingMessage(o,[])}motionAttitudeSubmitInt(e,t,r,i,a){var n;null===(n=this._sequenceRecorder)||void 0===n||n.appendAttitudeInt(e,t,r,i,a);const o={t:"sensorDataC2S",sensor:"attitude_int",interval:t,timestamp:e,x:r,y:i,z:a,p:this._impl};this._mgr.postOutgoingMessage(o,[])}motionRotationRateSubmit(e,t,r,i){var a;this._sequenceRecordDeviceAttitudeMatrices||null===(a=this._sequenceRecorder)||void 0===a||a.appendRotationRate(e,t,r,i);const n={t:"sensorDataC2S",sensor:"rotation_rate",interval:0,timestamp:e,x:t,y:r,z:i,p:this._impl};this._mgr.postOutgoingMessage(n,[])}motionAttitudeSubmit(e,t,r,i){var a;this._sequenceRecordDeviceAttitudeMatrices||null===(a=this._sequenceRecorder)||void 0===a||a.appendAttitude(e,t,r,i);const n={t:"sensorDataC2S",sensor:"attitude",interval:0,timestamp:e,x:t,y:r,z:i,p:this._impl};this._mgr.postOutgoingMessage(n,[])}motionAttitudeMatrix(e){const t={t:"attitudeMatrixC2S",p:this._impl,m:e};this._mgr.postOutgoingMessage(t,[])}sendCameraStreamToWorker(e,t,r){let i={t:"streamC2S",p:this._impl,s:t,userFacing:r,source:e};this._mgr.postOutgoingMessage(i,[i.s])}sendCameraProfileToWorker(e,t){let r={t:"cameraProfileC2S",p:this._impl,source:e,profile:t};this._mgr.postOutgoingMessage(r,[])}sendCameraToScreenRotationToWorker(e){let t={p:this._impl,t:"cameraToScreenC2S",r:e};this._mgr.postOutgoingMessage(t,[])}sendImageBitmapToWorker(e,t,r,i,a,n,o){let s={p:this._impl,t:"imageBitmapC2S",i:e,r:t,tokenId:i,userFacing:r,cameraModel:a,cameraToDevice:n,cp:o};this._mgr.postOutgoingMessage(s,[e])}sendDataToWorker(e,t,r,i,a,n,o){let s={d:e,p:this._impl,width:r,height:i,token:t,userFacing:a,c2d:n,cm:o,t:"cameraFrameC2S"};this._mgr.postOutgoingMessage(s,[e])}}function ut(e,t){let r=!1;r=!!e&&e.userFacing;let i=R();return I(i,G(r)*Math.PI/180,[0,0,1]),k(i,i,t),i}const ft={0:[{mean:[.235,.2344,.7305],identity:[.008,.0087,.0024,-.0026,6e-4,-.0022,5e-4,.0033,.0026,.0017,-.0055,-8e-4,.0011,.0059,0,2e-4,.001,-.001,-.0044,-.0011,-1e-4,.0024,.0019,-9e-4,4e-4,-.0015,0,.0038,.0013,3e-4,.002,-.0021,.0018,.0023,.0011,.0012,-.0011,-.0017,9e-4,-.0012,-8e-4,7e-4,-.0017,.0029,-.0029,8e-4,-.0027,8e-4,-.0017,4e-4,9e-4,-.001,-3e-4,8e-4,-.0016,-3e-4,-7e-4,.0016,-9e-4,.0021,-5e-4,.0011,-.0024,-1e-4,6e-4,1e-4,-.0026,-4e-4,-3e-4,-9e-4,5e-4,3e-4,-8e-4,-.001,-4e-4,-8e-4,.0022,-.0014,-1e-4,-.0023,0,-.0018,7e-4,-.0036,.0017,.0017,-.0018,-2e-4,-4e-4,-9e-4,-8e-4,3e-4,.0012,9e-4,-4e-4,-.0016,5e-4,-.0013,.0011,.0023,.0029,.0024,.0017,-.0027,-4e-4,-.001,-.0018,-.0015,-.001,.001,-.0013,-1e-4,-2e-4,7e-4,3e-4,3e-4,-.0016,9e-4,-.0021,4e-4,.0014,.002,-7e-4,-4e-4,2e-4,-4e-4,-6e-4,-9e-4,.0015,4e-4,-4e-4,5e-4,-.0015,9e-4,3e-4,3e-4,-2e-4,-8e-4,-9e-4,.0023,4e-4,1e-4,-4e-4,-1e-4,7e-4,2e-4,.001,1e-4,-.0029,-5e-4],expression:[0,3e-4,.0052,-7e-4,-.0051,-.0103,0,.0019,.0027,-.0054,.0135,.035,-5e-4,-6e-4,.0025,-.0045,-.0557,-.003,-.0191,-.1199,.0548,-.0036,-.0682,-.0167,2e-4,-.0085,-.0085,.0044,.0041,-.0568,.0044,.179,.0065,-.0017,-.1006,.0036,-.0267,-.3279,.0301,-.0011,-.0173,-.001,.0046,.2808,.0207,.0162,.238,-.0225,.0017,.1041,.0203,5e-4,.0161,.0031,-.0436,.6504,.0873,-.0099,.1039,.0048,-.0254,.2534,-.0042,.003,-.0106,-.0153,-.0118,.0252,9e-4,-.0071,.0099,.007,-.0724,.0461,-.0235,.0833,.004,.0141,-.0219,.0132,-.0042,-.0179,.0045,-.0215,.3638,.0054,-.0445]},{mean:[.2358,.1466,.7183],identity:[.0077,.0093,1e-4,-.0022,0,-.0041,5e-4,.0022,.0028,.0018,-.0038,-.0013,.001,.0044,-2e-4,0,.0017,-.0016,-.0043,-2e-4,-1e-4,.0023,9e-4,5e-4,-7e-4,-4e-4,-.0017,.003,7e-4,6e-4,.0011,-.0018,5e-4,.0018,-8e-4,4e-4,-.0023,-6e-4,-3e-4,-.0015,-.0014,-1e-4,-.0018,.0027,-.0026,3e-4,-.0031,.0011,-.0026,-.0011,.0012,-.0013,-2e-4,7e-4,-.0021,.0021,4e-4,.0012,-.001,.002,-3e-4,2e-4,-.0026,-3e-4,.001,1e-4,-.0018,-.001,9e-4,-.0011,.001,4e-4,-8e-4,-7e-4,-.001,-3e-4,7e-4,-5e-4,-6e-4,-.0019,-5e-4,-.002,7e-4,-.0027,.0014,.0013,6e-4,-5e-4,-3e-4,-3e-4,-.001,0,.0019,1e-4,6e-4,-.0012,4e-4,-9e-4,4e-4,.0025,3e-4,.0024,.0017,-9e-4,-.0015,-.0015,-.001,-.0023,-.001,-5e-4,-4e-4,8e-4,9e-4,7e-4,2e-4,7e-4,-9e-4,9e-4,-.0013,1e-4,9e-4,2e-4,6e-4,-6e-4,-8e-4,-4e-4,-7e-4,8e-4,.0019,3e-4,.0015,2e-4,-.0015,-3e-4,0,6e-4,3e-4,6e-4,-6e-4,2e-4,5e-4,-4e-4,.0012,-4e-4,2e-4,-8e-4,6e-4,-4e-4,2e-4,-.0021],expression:[-.0034,.0054,.0069,.004,6e-4,-.0104,-3e-4,.0036,.0025,.0065,.0296,.0208,-9e-4,.0154,.0029,-.0167,.0124,.004,-.0102,.0351,.028,-.019,.0146,-.0035,-.0023,-.0069,-.0051,-.01,.0262,-.028,.0112,.082,.023,-.0019,-.066,-.0104,-.0408,.0164,.0075,-.0074,.0367,.0041,.0517,-.0207,.0045,.0291,-.0672,-.0129,.0345,-.1558,-.0106,.0037,-.0437,-.0021,.0854,-.1121,.0187,.0041,.0072,.0011,.0193,-.0143,-.0119,.005,-.02,-.0122,-.008,.0527,.0036,-.006,.0222,.007,-.0429,.046,-.0046,.0226,-.0059,.0202,-.0173,.0087,0,-.0067,-.0095,-.0153,.1506,-.0017,.0021]}],1:[{mean:[-.2271,.2323,.7319],identity:[-.0084,.0097,.0018,.0041,2e-4,-.002,-.0012,.0036,.0019,-9e-4,-.0063,-.001,-3e-4,.0053,6e-4,1e-4,5e-4,-.0015,.0044,-.0025,-.0015,-.002,.0016,-6e-4,2e-4,-.0013,0,-.0022,2e-4,2e-4,-.0025,-.0014,.0015,8e-4,2e-4,.0012,6e-4,-6e-4,.0017,0,3e-4,-1e-4,.0024,.0025,-.0029,-.0015,-.0015,1e-4,.0031,-.0016,7e-4,.0019,6e-4,.002,9e-4,.001,-.0014,-.002,-.0015,.0029,1e-4,5e-4,-.0023,8e-4,-.0011,.0019,.0017,-3e-4,-.0011,-3e-4,.0011,-8e-4,.0019,-.0022,1e-4,.0015,.0017,-8e-4,-.0011,-.0022,3e-4,.0022,6e-4,-.003,-2e-4,0,-.0017,-2e-4,0,1e-4,4e-4,.0012,.0019,-.0014,4e-4,-.0017,-.0012,-.0011,.0021,-.0029,.0026,.0018,-.0023,-.0029,1e-4,.0014,-.0019,-4e-4,-4e-4,.0023,-.0016,0,-9e-4,.0014,-.0015,.0015,-.0016,-.0011,-.0022,1e-4,-.0018,.0027,-.0013,4e-4,-1e-4,-5e-4,.0011,-2e-4,.0015,5e-4,-9e-4,-1e-4,.0029,6e-4,0,-3e-4,7e-4,-8e-4,-5e-4,.0025,3e-4,2e-4,-8e-4,-1e-4,3e-4,0,.0014,2e-4,-.0024,1e-4],expression:[-.0025,-9e-4,.006,.004,-.0027,-.0113,-8e-4,.001,.0031,-.0016,.0144,.0382,-3e-4,-5e-4,.0035,-.0044,-.0511,-.0014,-7e-4,-.1007,.0582,-6e-4,-.0606,-.0165,5e-4,-.0087,-.0093,.0036,.0057,-.0576,-.0039,.1488,.0127,.0016,-.0666,-9e-4,-.0153,.3162,-.0445,-.0021,.0023,.0043,-.0033,.2382,.0063,-.0217,.167,-.039,.0097,-.1144,-.0189,-.0145,.6831,.0632,-.0012,-.1959,-.0133,4e-4,.1108,-3e-4,.0062,.2593,-.0161,-.0018,-.0051,-.012,.0162,.016,-.0022,-.0052,-.0201,.0101,.0115,.0365,-.024,-.0059,.0188,-.0336,.0352,.0224,-.0229,.0146,.0086,-.0273,-.0032,.0103,-.0112]},{mean:[-.2288,.1541,.7202],identity:[-.0082,.0101,2e-4,.0036,-7e-4,-.0037,-8e-4,.0024,.0022,-.0013,-.0045,-.0013,-6e-4,.0045,-4e-4,4e-4,.0012,-.0014,.0042,-.001,-7e-4,-.0019,3e-4,-2e-4,.0012,-4e-4,-.0012,-.0018,-4e-4,-1e-4,-.0014,-.0012,1e-4,1e-4,-.0017,.001,.0015,-1e-4,6e-4,1e-4,0,-6e-4,.0028,.0021,-.0025,-.002,-.0015,7e-4,.0028,-.0023,9e-4,.0013,1e-4,.0016,.0012,.0032,-6e-4,-.0013,-.0011,.0021,3e-4,-5e-4,-.0024,4e-4,-4e-4,.0014,.0015,-8e-4,-3e-4,3e-4,.0017,-6e-4,.002,-.0018,-3e-4,9e-4,1e-4,2e-4,-6e-4,-.0015,-4e-4,.0022,7e-4,-.0023,0,-2e-4,-2e-4,-3e-4,-1e-4,6e-4,-2e-4,6e-4,.0022,-3e-4,.0013,-.0014,-5e-4,-3e-4,.0013,-.0027,6e-4,.0025,-.0023,-8e-4,-.0013,.0017,-9e-4,-.0019,1e-4,8e-4,-7e-4,-4e-4,0,.001,-.001,.0019,-8e-4,-.0015,-6e-4,-2e-4,-.0011,8e-4,1e-4,9e-4,-8e-4,-4e-4,6e-4,7e-4,.0021,-4e-4,7e-4,-5e-4,.0021,-7e-4,-4e-4,-9e-4,8e-4,3e-4,1e-4,3e-4,1e-4,9e-4,.001,-5e-4,5e-4,-.001,.001,4e-4,-5e-4,-.0012],expression:[8e-4,.0037,.0078,-4e-4,5e-4,-.012,-2e-4,-.0046,.0033,-.0089,.0295,.0221,-.0024,-.0084,.0013,.0057,.0125,.0049,-.0036,.0373,.0285,.0115,.0135,-.0035,.0048,.0108,-.0033,.0106,.0281,-.0301,-.0082,.0803,.0244,-7e-4,-.0725,-.0105,-.0247,-.0036,-.0143,-.0045,-.029,2e-4,-.0303,.0093,-.0021,-.0196,-.0754,-.0211,.0326,.1246,.006,-.0804,-.1499,.0109,.0182,-.0029,-.0014,-.0035,.0072,-8e-4,-.0152,-.0108,-.0166,-.0073,-.0144,-.0095,.0101,.047,-.0018,-.004,-.0189,.0027,.0104,.0298,-.0042,-.0096,.0191,-.0217,.0228,.0226,-.0105,.0047,-.0048,-.0172,.0061,-.0043,-.0016]}],2:{mean:[.5396,.2028,.2496],identity:[.0204,.0146,-.0182,-.0052,.0158,-.0038,-.0025,-.0108,-.006,.0085,-.0044,.0029,.0042,.001,.0095,.0015,-.0034,-.0064,-.0057,7e-4,.0026,7e-4,.0037,-6e-4,.0037,.0026,.0024,5e-4,-.0019,-.0013,.003,-.0028,.0018,-9e-4,.002,-.0047,.004,-.003,.0031,-.0027,-.0026,-.0017,.0016,.0014,-4e-4,.0021,-.002,0,.0017,7e-4,-4e-4,-7e-4,-.0018,-9e-4,2e-4,-.0012,1e-4,-5e-4,-.0011,4e-4,2e-4,.0011,1e-4,8e-4,.0017,-.0013,.0025,.0017,.001,2e-4,3e-4,5e-4,-4e-4,-1e-4,-5e-4,7e-4,-.0022,-.0029,6e-4,-8e-4,-6e-4,6e-4,-5e-4,5e-4,.0013,3e-4,-5e-4,-.003,7e-4,2e-4,.0016,-4e-4,0,0,4e-4,1e-4,.0014,.0012,1e-4,4e-4,-1e-4,8e-4,9e-4,4e-4,-4e-4,9e-4,-2e-4,.001,9e-4,4e-4,1e-4,7e-4,7e-4,.001,-.0017,-8e-4,2e-4,.0017,-3e-4,-1e-4,4e-4,5e-4,7e-4,5e-4,-1e-4,-6e-4,-1e-4,1e-4,-3e-4,-7e-4,-2e-4,-5e-4,0,-3e-4,3e-4,8e-4,-2e-4,-3e-4,5e-4,1e-4,-7e-4,-.001,-2e-4,3e-4,4e-4,-1e-4,7e-4,0,4e-4,4e-4],expression:[1e-4,-4e-4,1e-4,0,5e-4,2e-4,0,0,3e-4,-2e-4,3e-4,5e-4,-1e-4,2e-4,8e-4,1e-4,-2e-4,-5e-4,-3e-4,6e-4,5e-4,0,1e-4,2e-4,1e-4,-1e-4,-6e-4,-2e-4,5e-4,0,-4e-4,4e-4,.0016,4e-4,-4e-4,-.0015,0,1e-4,1e-4,-3e-4,3e-4,.0019,-2e-4,7e-4,4e-4,4e-4,-8e-4,-.0015,.0013,-.0016,-.0069,4e-4,-6e-4,-.0019,0,-1e-4,5e-4,-3e-4,2e-4,.0014,-3e-4,6e-4,.0011,4e-4,-3e-4,-.0032,-6e-4,8e-4,.0025,-3e-4,3e-4,.0015,-1e-4,1e-4,3e-4,-1e-4,0,0,-3e-4,4e-4,.0019,1e-4,0,-8e-4,-1e-4,1e-4,5e-4]},3:{mean:[-.5464,.2141,.26],identity:[-.0207,.0172,-.0176,.0068,.0148,-.0051,.0042,-.0101,-.0058,-.0087,-.0059,.0045,-.0056,.0017,.0097,-.0048,-.004,-.0044,.0019,2e-4,.0041,-.0052,.0041,2e-4,-.0027,6e-4,.002,-.0027,-.0033,-6e-4,-.004,9e-4,-.0012,-1e-4,-.0026,.0021,-.003,-.0025,.0052,.0025,.0022,-1e-4,-8e-4,.0013,.001,4e-4,.0018,.0014,6e-4,-5e-4,-.0015,-.0039,.0014,-1e-4,8e-4,-2e-4,6e-4,-5e-4,-.0038,-.0012,-.0018,-3e-4,.001,9e-4,.0012,.0024,-.0024,-7e-4,-.0016,-.0016,3e-4,-.001,-.0014,-.0014,.001,-3e-4,-7e-4,-.0012,3e-4,6e-4,3e-4,-5e-4,3e-4,.0012,6e-4,-8e-4,4e-4,4e-4,8e-4,-2e-4,-.0014,3e-4,0,.0023,-3e-4,-.0012,-.0013,.0011,-2e-4,-.0014,-1e-4,.0014,0,3e-4,3e-4,-8e-4,-5e-4,-7e-4,-7e-4,-2e-4,3e-4,5e-4,2e-4,-1e-4,.0011,-.0014,1e-4,-.0015,-1e-4,-3e-4,0,-.001,-1e-4,-8e-4,8e-4,-8e-4,-2e-4,-.0011,-3e-4,-4e-4,1e-4,-2e-4,3e-4,-7e-4,0,3e-4,1e-4,-8e-4,5e-4,1e-4,4e-4,.0014,-6e-4,-.001,-3e-4,-2e-4,1e-4,-1e-4,-1e-4,7e-4],expression:[-3e-4,-1e-4,6e-4,4e-4,0,-7e-4,0,-3e-4,-2e-4,-4e-4,.0012,8e-4,1e-4,-5e-4,-7e-4,-4e-4,0,1e-4,-4e-4,.0017,7e-4,0,1e-4,3e-4,0,4e-4,4e-4,5e-4,1e-4,-.001,-7e-4,.0022,.0026,5e-4,-.0024,-.0023,0,1e-4,3e-4,0,-.0013,-.0015,6e-4,.0014,8e-4,-2e-4,-.0025,-.0023,-3e-4,.0049,.006,-2e-4,-7e-4,-2e-4,0,-.0019,-.0018,-2e-4,.0017,.0017,3e-4,.0015,7e-4,1e-4,-.0023,-.0036,2e-4,.0023,.0017,0,-5e-4,-3e-4,-3e-4,4e-4,2e-4,-1e-4,-3e-4,-5e-4,1e-4,.0018,.0025,1e-4,-6e-4,-.0011,0,1e-4,1e-4]},4:{mean:[.0018,.1864,.853],identity:[-.0011,.0134,.0085,9e-4,-.0025,-7e-4,-3e-4,.0033,4e-4,-5e-4,-.0047,-.002,7e-4,.0026,-.0069,-1e-4,.0036,.0072,5e-4,-8e-4,-.0047,4e-4,-8e-4,-.001,0,2e-4,-.0036,-2e-4,-.001,-.0048,-1e-4,.0018,.0044,-7e-4,-2e-4,.0043,3e-4,.002,-.0031,0,-7e-4,.0013,0,.0037,.0033,-.0016,-.0012,.002,-1e-4,-.0027,.0051,5e-4,8e-4,7e-4,-.0017,.0054,.0023,-3e-4,.0032,1e-4,0,7e-4,-5e-4,-.0011,2e-4,8e-4,0,-.0033,-8e-4,-7e-4,7e-4,.0033,5e-4,-3e-4,.0029,-1e-4,-.0024,-.0011,-.002,-.0015,-.0019,2e-4,7e-4,.0031,6e-4,.0012,0,0,-.0021,0,-9e-4,-.0011,-.0011,-2e-4,.0015,.001,.0013,8e-4,.001,-3e-4,9e-4,.0027,-2e-4,-.0011,-.0011,6e-4,7e-4,2e-4,1e-4,-5e-4,-.0022,.0011,-.0014,9e-4,3e-4,2e-4,0,-6e-4,-4e-4,-.0011,-7e-4,.001,-.0012,6e-4,-.0012,-.0015,3e-4,-9e-4,-.0013,-.0013,7e-4,.001,-.0011,-.0013,.0015,4e-4,1e-4,4e-4,-1e-4,-.0016,-.0016,9e-4,-7e-4,-.0024,5e-4,-1e-4,-.0017,-2e-4,3e-4,-9e-4],expression:[-.0017,.0019,.0097,.003,-.0103,-.0093,9e-4,6e-4,.0023,-.0017,-.0204,.0376,.0033,-.0034,.0033,-.0026,-.0322,.0396,-.0032,-.0947,.0942,-7e-4,-.0175,.0266,-.001,-6e-4,.0016,.0025,.0157,-.0142,-.0022,.037,.015,.0021,-.0102,-.0107,.0036,.0055,-.0051,.0021,3e-4,-3e-4,4e-4,-.0177,.0074,-6e-4,-.0357,.0149,-.0066,9e-4,.0013,-.0031,.0016,.0095,.002,.0052,.0035,-3e-4,.0053,-.0082,.002,.0022,-.0071,-.0011,5e-4,.0055,.0011,3e-4,-.0126,-4e-4,3e-4,-.0023,-.0015,.0059,.0063,-.0042,-.0023,.0055,.0019,.0017,-.0075,6e-4,-8e-4,.0018,.0012,.0012,-5e-4]},5:{mean:[-.002,-.0469,1.0039],identity:[-.0017,.0018,.0156,6e-4,-.0038,5e-4,4e-4,.0013,.002,-4e-4,-.0015,-.0051,5e-4,-7e-4,-.0055,-1e-4,-9e-4,.008,-2e-4,.0036,-.0053,4e-4,-.0026,-.0016,7e-4,9e-4,-.009,-3e-4,7e-4,-.0084,.0015,.0021,.0032,-.0015,.0018,.0046,-3e-4,-4e-4,-1e-4,8e-4,-.0044,-7e-4,-8e-4,7e-4,.0048,-.0024,-3e-4,.0024,2e-4,-.0051,.0058,-6e-4,.0028,.0018,-.0021,.0035,.0057,.0011,.0065,0,-2e-4,.0011,.003,-.0027,8e-4,7e-4,3e-4,-.0039,-.002,-2e-4,-.0015,.0034,.0012,-.0025,.0024,-2e-4,4e-4,-.0042,-.0024,-.001,-.0023,.0016,-7e-4,.0039,1e-4,-5e-4,.0018,3e-4,-2e-4,-9e-4,-.0015,3e-4,-7e-4,-1e-4,-2e-4,.0023,.0032,.002,-.0013,.0013,-.0038,.0045,1e-4,-.0031,1e-4,.0019,-1e-4,.0016,.0013,0,-.002,.0023,2e-4,.0011,.0018,-.0024,6e-4,-.0017,.002,-8e-4,-.0021,7e-4,.0011,8e-4,4e-4,-.001,.0012,2e-4,-6e-4,-.0027,-5e-4,.001,-9e-4,1e-4,-1e-4,8e-4,-.0011,.0022,-.001,-5e-4,-.0011,.0016,-.0015,8e-4,-3e-4,9e-4,.0013,-7e-4,-7e-4,-2e-4],expression:[-.0018,-.0168,.0088,.0389,.1026,.0414,.2201,-.0262,-.0016,-.0017,.0612,-.0298,-.0323,.0093,.0013,-.005,.2207,.1315,-4e-4,.0858,-.0303,-.0133,.015,-.008,.1454,.0114,.0177,-.0077,.1022,.0356,-.0023,.1088,.0232,.003,-.0706,.0347,-1e-4,.004,-.0011,.0397,-.0096,-.0033,.0029,-.01,-.0083,-6e-4,-.0135,.0016,-.0087,-.0019,.0022,-.004,-.0087,.0105,8e-4,-.005,.0069,.0028,.0409,-.0391,.003,.0103,.0051,.0026,.0776,-.0083,-.0062,-.0567,.0268,.0175,.0017,.0156,-.0043,.0299,-.0395,-.0015,.0051,-.0148,.0125,.0035,.0603,.0109,-.0645,-.0257,.002,6e-4,-8e-4]},6:{mean:[-6e-4,-.1542,.8789],identity:[-7e-4,-.0032,.01,0,-.0027,.0031,6e-4,5e-4,-6e-4,-3e-4,.0013,-.0049,-2e-4,-.002,-.0046,8e-4,-.0011,.0054,2e-4,.0043,-.0027,3e-4,-.0022,-.0019,8e-4,.0032,-.0069,0,4e-4,-.0071,.0016,.0027,.0039,-.0017,9e-4,.0031,-1e-4,-5e-4,-4e-4,7e-4,-.0026,-.0012,-5e-4,6e-4,2e-4,-.0014,-.0013,.0019,-2e-4,-.0053,.0031,-6e-4,.0016,.0023,-.0013,.0021,.0029,8e-4,.0052,0,4e-4,0,.0037,-.0026,3e-4,.002,-2e-4,-.0024,4e-4,-4e-4,-.0012,8e-4,7e-4,-.0023,5e-4,0,.0014,-.0022,-.0016,0,-.0012,8e-4,-7e-4,.0014,-6e-4,-.0012,-3e-4,2e-4,.0012,-3e-4,-.002,-1e-4,1e-4,-2e-4,-.0016,9e-4,.002,.0019,0,6e-4,-.0022,.0016,1e-4,-.0017,-.0013,.001,9e-4,-1e-4,.0011,3e-4,-7e-4,.0014,8e-4,.0013,.0011,-.002,0,-.0015,.0014,.001,-.0015,7e-4,3e-4,.001,-1e-4,.0012,7e-4,6e-4,-4e-4,-.0013,-.0012,-9e-4,-.0011,2e-4,-5e-4,5e-4,4e-4,2e-4,1e-4,0,5e-4,5e-4,-.0014,.0015,-9e-4,5e-4,.0014,-8e-4,-8e-4,.0012],expression:[8e-4,.0481,.1653,.0784,.1008,-.3992,.5088,-.02,.0542,.001,.3723,-.0151,-.0986,.0283,-.0033,-.0121,.2634,.1202,.0036,-.0529,-.0245,-.0297,-.1085,.0495,.3264,.0083,4e-4,-.0314,.1459,-.1142,-.003,1e-4,.1154,-.0035,-.0285,-.0184,-1e-4,.0012,.0035,.079,-.0103,.0043,.011,-.004,-.0774,-.0047,-.023,.0284,-.0048,-.001,.0149,-.0039,.0046,.0528,-6e-4,.0063,.0376,.0096,.0558,-.0295,0,-.0311,-.0634,.0062,.0176,-.0154,-.0109,-.1149,.0192,.0326,.0121,.0237,.0034,.0262,-.0778,.0014,-.0045,-.0203,.0077,.0588,.0575,.008,-.0557,-.0095,.0032,.0054,-.0042]},7:{mean:[.0038,-.2927,.833],identity:[6e-4,-.0109,.0073,-6e-4,-.0044,.0017,-1e-4,-.0022,-6e-4,-3e-4,.0065,-.0014,-6e-4,-.0051,-.0046,3e-4,-.0029,.003,2e-4,.0038,-6e-4,0,-.0012,6e-4,-4e-4,.0053,-.0075,-2e-4,-7e-4,-.0063,.0014,.0026,.0019,-.0022,.0018,.0028,-1e-4,-.0012,.0011,9e-4,.0019,-.0019,-1e-4,.0012,-.0022,-3e-4,-.0012,4e-4,-8e-4,3e-4,-3e-4,0,.0017,.0021,-4e-4,.0012,.0022,-3e-4,.0026,-3e-4,4e-4,-.0026,.0032,-.0019,3e-4,.0015,1e-4,-.0015,.0013,-1e-4,1e-4,-.0029,0,-2e-4,-.0028,-7e-4,.0019,-3e-4,-2e-4,.0012,9e-4,4e-4,-.001,-.002,-.0016,.0011,-1e-4,3e-4,.0021,2e-4,-.0014,-9e-4,-1e-4,0,-2e-4,-.001,.0015,.0018,1e-4,7e-4,8e-4,.0017,.001,-9e-4,1e-4,4e-4,.0023,-1e-4,.0012,1e-4,-8e-4,2e-4,.0018,6e-4,3e-4,1e-4,.0012,-3e-4,.002,-6e-4,0,-1e-4,-.0022,4e-4,5e-4,.0011,2e-4,-.0013,-.0023,6e-4,6e-4,-5e-4,-5e-4,9e-4,2e-4,2e-4,.0011,-3e-4,.0011,.0015,.0011,3e-4,2e-4,8e-4,-4e-4,-8e-4,3e-4,0,.0012,-1e-4],expression:[.026,.1107,.3257,.1917,.3206,-1.1348,1.0791,-.035,.1549,-.0103,.6953,1e-4,-.3262,.068,.0219,-.0044,.3643,.2178,.0168,-.2478,-.1321,-.0414,-.3782,-.0617,.5088,-.0031,-.0311,-.0497,.0948,-.385,.0148,-.2224,-.1415,-.0074,.0863,-.203,3e-4,-.0081,.0057,.1164,-.0039,.0015,-.0024,.0505,.1532,.0039,-.0148,-.0753,.0163,.0058,-.0339,.0036,.0252,-.0569,-.0041,.0163,-.0361,.0035,-.018,.1266,0,-.0163,-.0046,.0133,-.1656,.2134,.0191,.0057,.0734,.0681,.0039,-.0144,.029,-.074,-.046,.0122,.0072,-.0162,-.0349,-.1234,.0212,-.0355,.0535,.1218,.0043,-.024,.0016]},8:{mean:[-.0018,-.3037,.8491],identity:[2e-4,-.0112,.0077,-4e-4,-.0044,.0024,1e-4,-.0021,-4e-4,-4e-4,.0066,-.002,-4e-4,-.0052,-.0044,3e-4,-.0032,.0039,4e-4,.0042,-3e-4,2e-4,-.0012,-2e-4,-2e-4,.0052,-.0083,-1e-4,-8e-4,-.0056,.0017,.0024,.0019,-.0023,.002,.0027,-2e-4,-.0013,.002,9e-4,.0017,-.0028,-2e-4,.0012,-.0026,0,-.0016,2e-4,-5e-4,3e-4,-.001,-1e-4,.0016,.0016,-3e-4,.0012,.0012,-3e-4,.0027,-3e-4,3e-4,-.0026,.0037,-.0017,1e-4,.0016,1e-4,-.0015,.0024,1e-4,2e-4,-.0039,0,-3e-4,-.0033,-6e-4,.0017,-4e-4,-4e-4,.0012,.0018,2e-4,-.0012,-.002,-.0017,.0013,-.001,3e-4,.0021,4e-4,-.0012,-6e-4,-2e-4,0,-4e-4,-9e-4,.0016,.0017,4e-4,7e-4,7e-4,.001,9e-4,-8e-4,5e-4,5e-4,.0023,.001,.0013,2e-4,-4e-4,2e-4,.0017,8e-4,3e-4,-1e-4,9e-4,-4e-4,.0019,-5e-4,3e-4,0,-.0025,3e-4,3e-4,.0011,1e-4,-.0015,-.001,7e-4,7e-4,-7e-4,-7e-4,8e-4,0,1e-4,.0013,-4e-4,.0012,.0014,.0017,4e-4,2e-4,3e-4,-3e-4,-9e-4,1e-4,0,.001,-4e-4],expression:[-.0092,2.8809,1.416,.2018,1.1982,-.9351,1.4492,-.1902,.1749,.0305,-.167,-.1572,-.7354,-.0492,.0115,.0608,.2971,.1179,.0046,-.0997,-.0041,-.0104,.3379,-.1854,.009,.0366,-.0583,.0269,-.0029,-.4175,-8e-4,.1794,.0752,-.0135,.1158,.1234,5e-4,.003,-.0032,.1034,-.0504,-.0055,-.0076,-.0772,.224,.0047,.0229,-.1044,.0162,-.0161,-.0241,-.0083,-.1388,-.0434,-.0125,-.0997,-.0327,-.0111,.1576,-.3911,.0199,.2522,.142,.0059,-.0721,-.0045,.031,-.1136,-.1685,.0641,.0142,.0312,.0426,-.1366,.1011,.0101,-.0157,.0018,-.0103,-.0344,.0907,.0016,.1168,-.0806,.0104,-.0057,.0111]},9:[{mean:[.0038,-.2927,.833],identity:[6e-4,-.0109,.0073,-6e-4,-.0044,.0017,-1e-4,-.0022,-6e-4,-3e-4,.0065,-.0014,-6e-4,-.0051,-.0046,3e-4,-.0029,.003,2e-4,.0038,-6e-4,0,-.0012,6e-4,-4e-4,.0053,-.0075,-2e-4,-7e-4,-.0063,.0014,.0026,.0019,-.0022,.0018,.0028,-1e-4,-.0012,.0011,9e-4,.0019,-.0019,-1e-4,.0012,-.0022,-3e-4,-.0012,4e-4,-8e-4,3e-4,-3e-4,0,.0017,.0021,-4e-4,.0012,.0022,-3e-4,.0026,-3e-4,4e-4,-.0026,.0032,-.0019,3e-4,.0015,1e-4,-.0015,.0013,-1e-4,1e-4,-.0029,0,-2e-4,-.0028,-7e-4,.0019,-3e-4,-2e-4,.0012,9e-4,4e-4,-.001,-.002,-.0016,.0011,-1e-4,3e-4,.0021,2e-4,-.0014,-9e-4,-1e-4,0,-2e-4,-.001,.0015,.0018,1e-4,7e-4,8e-4,.0017,.001,-9e-4,1e-4,4e-4,.0023,-1e-4,.0012,1e-4,-8e-4,2e-4,.0018,6e-4,3e-4,1e-4,.0012,-3e-4,.002,-6e-4,0,-1e-4,-.0022,4e-4,5e-4,.0011,2e-4,-.0013,-.0023,6e-4,6e-4,-5e-4,-5e-4,9e-4,2e-4,2e-4,.0011,-3e-4,.0011,.0015,.0011,3e-4,2e-4,8e-4,-4e-4,-8e-4,3e-4,0,.0012,-1e-4],expression:[.026,.1107,.3257,.1917,.3206,-1.1348,1.0791,-.035,.1549,-.0103,.6953,1e-4,-.3262,.068,.0219,-.0044,.3643,.2178,.0168,-.2478,-.1321,-.0414,-.3782,-.0617,.5088,-.0031,-.0311,-.0497,.0948,-.385,.0148,-.2224,-.1415,-.0074,.0863,-.203,3e-4,-.0081,.0057,.1164,-.0039,.0015,-.0024,.0505,.1532,.0039,-.0148,-.0753,.0163,.0058,-.0339,.0036,.0252,-.0569,-.0041,.0163,-.0361,.0035,-.018,.1266,0,-.0163,-.0046,.0133,-.1656,.2134,.0191,.0057,.0734,.0681,.0039,-.0144,.029,-.074,-.046,.0122,.0072,-.0162,-.0349,-.1234,.0212,-.0355,.0535,.1218,.0043,-.024,.0016]},{mean:[-.0018,-.3037,.8491],identity:[2e-4,-.0112,.0077,-4e-4,-.0044,.0024,1e-4,-.0021,-4e-4,-4e-4,.0066,-.002,-4e-4,-.0052,-.0044,3e-4,-.0032,.0039,4e-4,.0042,-3e-4,2e-4,-.0012,-2e-4,-2e-4,.0052,-.0083,-1e-4,-8e-4,-.0056,.0017,.0024,.0019,-.0023,.002,.0027,-2e-4,-.0013,.002,9e-4,.0017,-.0028,-2e-4,.0012,-.0026,0,-.0016,2e-4,-5e-4,3e-4,-.001,-1e-4,.0016,.0016,-3e-4,.0012,.0012,-3e-4,.0027,-3e-4,3e-4,-.0026,.0037,-.0017,1e-4,.0016,1e-4,-.0015,.0024,1e-4,2e-4,-.0039,0,-3e-4,-.0033,-6e-4,.0017,-4e-4,-4e-4,.0012,.0018,2e-4,-.0012,-.002,-.0017,.0013,-.001,3e-4,.0021,4e-4,-.0012,-6e-4,-2e-4,0,-4e-4,-9e-4,.0016,.0017,4e-4,7e-4,7e-4,.001,9e-4,-8e-4,5e-4,5e-4,.0023,.001,.0013,2e-4,-4e-4,2e-4,.0017,8e-4,3e-4,-1e-4,9e-4,-4e-4,.0019,-5e-4,3e-4,0,-.0025,3e-4,3e-4,.0011,1e-4,-.0015,-.001,7e-4,7e-4,-7e-4,-7e-4,8e-4,0,1e-4,.0013,-4e-4,.0012,.0014,.0017,4e-4,2e-4,3e-4,-3e-4,-9e-4,1e-4,0,.001,-4e-4],expression:[-.0092,2.8809,1.416,.2018,1.1982,-.9351,1.4492,-.1902,.1749,.0305,-.167,-.1572,-.7354,-.0492,.0115,.0608,.2971,.1179,.0046,-.0997,-.0041,-.0104,.3379,-.1854,.009,.0366,-.0583,.0269,-.0029,-.4175,-8e-4,.1794,.0752,-.0135,.1158,.1234,5e-4,.003,-.0032,.1034,-.0504,-.0055,-.0076,-.0772,.224,.0047,.0229,-.1044,.0162,-.0161,-.0241,-.0083,-.1388,-.0434,-.0125,-.0997,-.0327,-.0111,.1576,-.3911,.0199,.2522,.142,.0059,-.0721,-.0045,.031,-.1136,-.1685,.0641,.0142,.0312,.0426,-.1366,.1011,.0101,-.0157,.0018,-.0103,-.0344,.0907,.0016,.1168,-.0806,.0104,-.0057,.0111]}],10:{mean:[-.007,-.6338,.7695],identity:[1e-4,-.0296,.0089,-6e-4,-.0073,-.0065,-1e-4,-.0029,-.0031,-2e-4,.0128,.0065,0,-.0116,-.014,-1e-4,-.0037,-.0052,-5e-4,.0028,.003,-4e-4,.0041,.0015,6e-4,.0088,-.0076,-.0011,-.0015,-.0073,7e-4,-.0011,.0019,-.0011,-5e-4,.0031,-1e-4,-.0018,9e-4,.0018,.0038,.0068,-4e-4,-1e-4,.0061,.0024,.0024,-.0066,-6e-4,.0051,.0014,.002,.005,-.0035,1e-4,-.0034,-.004,-7e-4,.001,-8e-4,1e-4,-5e-4,-.0021,2e-4,.0045,-.0043,-.0012,-.0024,-.0014,6e-4,.0034,.0027,-8e-4,-.0053,.0014,1e-4,.0013,-.0018,6e-4,-.0015,.0029,-2e-4,-.0035,1e-4,-.002,.0012,.0048,.0011,1e-4,-2e-4,-3e-4,-.0012,.0033,6e-4,.002,-.0033,4e-4,.0028,2e-4,8e-4,-1e-4,-.0018,8e-4,.0017,1e-4,9e-4,8e-4,3e-4,.0019,-.001,.001,-7e-4,-.0013,0,1e-4,.0032,-1e-4,1e-4,.0011,-4e-4,5e-4,-7e-4,.0018,-3e-4,2e-4,7e-4,8e-4,-.0014,7e-4,.0015,-6e-4,-1e-4,-4e-4,.0019,-9e-4,-6e-4,-6e-4,-.0012,2e-4,-.0012,-8e-4,4e-4,6e-4,-.0011,3e-4,9e-4,-4e-4,6e-4,-7e-4,-4e-4],expression:[-.0603,2.0527,1.9014,.1025,.6143,.3804,.7881,-.1023,-.0764,.0454,-.2487,-.5073,-.6704,-.031,-.0181,.0466,.0651,-.0726,-.0033,-.0022,.2944,.0101,.1669,-.5225,-.4685,.0236,.0079,.011,.2173,.4529,.0121,-.2104,-.0673,.0225,-.4023,.0317,-9e-4,.0076,-.0032,.0333,.0523,.0129,-.001,-.0319,-.0139,.0015,-.0044,.0247,-5e-4,.0161,.0061,.0074,.0776,-.0176,.007,.055,-.017,.0052,-.1819,.0294,-.0161,-.0337,.0226,-.008,-.0297,.1967,-.0095,.0383,.2039,.0434,.0271,-.0064,-.0037,-.0294,-.024,.0024,-.0137,-.0209,-.0031,.0628,.1003,-.0126,-.056,-.0097,-.0012,-.0041,.0162]},11:{mean:[.2505,.3833,.7793],identity:[.0098,.012,.0077,-6e-4,-3e-4,0,1e-4,.0082,-7e-4,.0019,-.0036,-.0012,2e-4,.0119,-.0039,.001,1e-4,.0031,-.0036,-.0059,-7e-4,.0026,.0028,-.0011,9e-4,-.0032,8e-4,.0029,.0043,3e-4,.0025,-9e-4,.0047,.0016,.0022,.0018,-.001,.0025,-.003,-.001,.0033,.0034,4e-4,-.0052,.0024,-2e-4,.001,-.0014,-6e-4,.0038,-.0015,-6e-4,-.001,-.0011,-4e-4,-.001,4e-4,-7e-4,.0036,-8e-4,-2e-4,-.0019,5e-4,3e-4,-6e-4,-.0024,-.0017,-.0014,6e-4,-4e-4,-.0031,-.0013,-6e-4,.0042,2e-4,-2e-4,-.002,-3e-4,8e-4,.0018,-5e-4,-6e-4,-2e-4,-6e-4,.0025,.0019,.001,8e-4,-.0015,-.0012,-1e-4,-6e-4,-4e-4,.0023,-.001,6e-4,-2e-4,-.001,0,-9e-4,-.002,-.0011,1e-4,0,-1e-4,5e-4,6e-4,9e-4,-6e-4,5e-4,8e-4,-1e-4,-2e-4,-.0017,-6e-4,-4e-4,4e-4,-6e-4,.0012,4e-4,3e-4,-7e-4,3e-4,-2e-4,6e-4,1e-4,5e-4,-.0019,-6e-4,4e-4,7e-4,-1e-4,1e-4,5e-4,.001,-6e-4,-.002,-7e-4,-5e-4,5e-4,3e-4,7e-4,.0014,0,5e-4,-5e-4,-2e-4,3e-4,-6e-4,-1e-4],expression:[-9e-4,-3e-4,.0032,-.003,-.0034,-.0031,.0014,0,4e-4,-.0139,-.0764,.0275,-.002,-.0089,.0031,-.0503,-.0771,.038,-.1323,-.3523,.1368,-.0474,-.0564,.0296,-.0045,.007,-.0013,.0153,.1259,-.0464,.0866,.2175,-.0786,-.0413,-.1248,.0448,-.1777,-.4607,.1782,-5e-4,-.005,.0016,.0629,.1506,-.0624,.0545,.2576,-.0864,-.0231,-.0552,.0244,-.0136,-.0359,.0169,-.1158,-.2996,.1214,-.0235,-.0354,.0165,-.0745,-.1079,.0475,-.0116,-.0039,.0012,.0013,-.0108,-8e-4,.0044,-.0027,-1e-4,-.0694,.0363,.0071,.1462,-.136,.0047,.009,-.0177,.0038,-.0271,.0118,.0011,-.0399,-.0111,.0123]},12:{mean:[-.2981,.3828,.7563],identity:[-.0116,.014,.0054,.0018,5e-4,0,-4e-4,.0068,-.0013,-.0019,-.0048,-5e-4,5e-4,.0108,-.0036,-.0029,-.0018,.0029,.0043,-.0077,6e-4,-.0017,.002,-.0011,-.0014,-.0035,.0015,-.0024,.0011,4e-4,-.0048,2e-4,.0029,-1e-4,-1e-4,.003,.0019,.0035,-.0016,-4e-4,.0039,.0019,1e-4,-.0064,.004,3e-4,.002,-.0021,.0017,.0011,-.001,.0026,.0025,-5e-4,2e-4,-3e-4,-5e-4,-7e-4,9e-4,-4e-4,-.001,-.0022,.001,9e-4,-.0014,7e-4,.0011,-.001,-5e-4,-8e-4,-.0017,-.0021,9e-4,.0036,5e-4,4e-4,-.0031,6e-4,-.0015,.0027,2e-4,1e-4,-.0011,2e-4,-.0011,-.0018,4e-4,-.0013,-2e-4,7e-4,9e-4,-3e-4,.001,-.0021,8e-4,6e-4,-9e-4,4e-4,-7e-4,8e-4,-.002,-.0013,0,7e-4,-.0012,-1e-4,.0014,.0014,-1e-4,.0013,6e-4,6e-4,-.0014,-.0015,-9e-4,1e-4,1e-4,9e-4,7e-4,0,1e-4,-.001,-4e-4,0,-5e-4,1e-4,-3e-4,4e-4,-5e-4,-1e-4,-.0011,2e-4,0,1e-4,8e-4,8e-4,0,-7e-4,-8e-4,0,2e-4,-1e-4,.001,3e-4,4e-4,-2e-4,0,5e-4,.0018,-1e-4],expression:[0,-4e-4,.0028,.0036,-8e-4,-.0026,-.0015,-8e-4,3e-4,.0075,-.0608,.025,.0019,-.0076,.0033,.0379,-.0437,.0335,.0964,-.2452,.1233,.0368,-.0251,.0253,.0033,.0097,-.0021,-.0095,.1171,-.0475,-.064,.1548,-.0718,.0228,-.0831,.0343,-.1924,.6206,-.2771,.0021,-.0143,.0056,-.0705,.2522,-.1116,-.0692,.4229,-.1592,-.0093,.05,-.0185,.0948,-.3196,.1437,-.0184,.0194,-.0131,.0205,-.0353,.0201,.0676,-.135,.0672,.0137,-.0311,.0118,3e-4,-.0077,-2e-4,-.0151,4e-4,-.0058,.029,-.0139,.0163,.1324,.1819,-.0039,.0406,.0501,.0017,.0331,.0161,.0062,-.0235,-.0446,.0047]}};let pt=1,mt=new Map;function bt(e){return mt.get(e)}class gt{constructor(e){this._name=e,this.anchor_pose=R()}_getVertex(e,t,r){let i=r.mean.slice();for(let t=0;t<50;t++)i[0]+=e[t]*r.identity[3*t+0],i[1]+=e[t]*r.identity[3*t+1],i[2]+=e[t]*r.identity[3*t+2];for(let e=0;e<29;e++)i[0]+=t[e]*r.expression[3*e+0],i[1]+=t[e]*r.expression[3*e+1],i[2]+=t[e]*r.expression[3*e+2];return i}update(e,t,r){let i,a=ft[this._name.toString()];if(a){if(Array.isArray(a)){i=this._getVertex(e,t,a[0]);let r=this._getVertex(e,t,a[1]);i[0]=.5*(i[0]+r[0]),i[1]=.5*(i[1]+r[1]),i[2]=.5*(i[2]+r[2])}else i=this._getVertex(e,t,a);r&&(i[0]*=-1),S(this.anchor_pose,i)}}}const vt={incompatible:()=>!("function"==typeof Promise&&"object"==typeof WebAssembly&&navigator.mediaDevices&&navigator.mediaDevices.enumerateDevices&&navigator.mediaDevices.getUserMedia),incompatible_ui:()=>{const e=document.createElement("div");e.append(function(){let e=document.createElement("div"),t="a recent web browser";navigator.userAgent.match(/Android/i)?(t="Chrome for Android",window.location.href="googlechrome://navigate?url="+encodeURI(window.location.href),setTimeout((()=>{window.location.href="samsunginternet://open?url="+encodeURI(window.location.href)}),2e3)):navigator.userAgent.match(/iPhone|iPod|iPad/i)&&(t="Safari",e.classList.add("zee-launcher-browser-safari")),e.classList.add("zee-launcher-unsupported"),e.innerHTML=`\n <style>.zee-launcher-unsupported {\n display: flex;\n flex-direction: column;\n height: 100%;\n justify-content: center;\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n align-items: center;\n }\n .zee-launcher-browser-logo {\n background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg version='1.1' viewBox='0 0 210 211' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-82 -146)' fill-rule='nonzero' stroke='%23ffffff' stroke-width='2'%3E%3Cg transform='translate(83 146.5)'%3E%3Cpath d='m55.146 88.785l-32.039-49.472c19.962-24.947 49.904-38.684 80.517-38.81 17.739-0.12642 35.855 4.4246 52.336 13.99 18.2 10.619 32.039 25.874 40.846 43.404l-86.095-4.5511c-24.365-1.4327-47.556 12.347-55.565 35.439zm13.797 16.224c0 19.468 15.684 35.229 35.059 35.229 19.374 0 35.059-15.76 35.059-35.229 0-19.468-15.684-35.229-35.059-35.229-19.374 0-35.059 15.718-35.059 35.229zm132.06-37.588l-58.585 3.034c15.894 18.668 16.145 45.595 2.7678 66.243l-47.01 72.648c19.5 1.0535 39.588-3.2447 57.788-13.864 45.039-26.126 63.282-80.908 45.039-128.06zm-144.93 57.647l-39.126-77.326c-10.694 16.434-16.942 36.156-16.942 57.267 0 52.253 38.078 95.53 87.856 103.2l26.713-52.59c-24.155 4.5511-47.472-8.765-58.501-30.551z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");\n width: 211px;\n height: 211px;\n margin-bottom: 25%;\n margin-top: -60px;\n background-repeat: no-repeat;\n }\n .zee-launcher-browser-safari .zee-launcher-browser-logo {\n background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg version='1.1' viewBox='0 0 211 211' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-82 -146)' fill-rule='nonzero' stroke='%23ffffff' stroke-width='2'%3E%3Cpath d='m180 251.86c0-4.0385 2.9377-7.855 7.2552-7.855 3.9614 0 7.7448 2.8402 7.7448 7.145 0 4.0385-2.8487 7.855-7.1662 7.855-4.0059 0-7.8338-2.9734-7.8338-7.145zm112-0.35503c0 57.728-46.772 104.5-104.5 104.5s-104.5-46.772-104.5-104.5 46.772-104.5 104.5-104.5 104.5 46.772 104.5 104.5zm-12-1c0-51.649-41.851-93.5-93.5-93.5s-93.5 41.851-93.5 93.5 41.851 93.5 93.5 93.5 93.5-41.851 93.5-93.5zm-30.624 40.983c0 1.5095 5.4495 4.2768 6.8328 5.1154-11.486 17.401-29.26 29.938-49.423 34.928l-1.8444-7.757c-0.12576-1.0482-0.79646-1.174-1.7606-1.174-0.79646 0-1.2576 1.174-1.1737 1.7611l1.8444 7.8828c-5.5753 1.174-11.234 1.7611-16.935 1.7611-15.217 0-30.182-4.2768-43.177-12.202 0.71263-1.174 5.1141-7.5474 5.1141-8.4698 0-0.79666-0.71263-1.5095-1.5091-1.5095-1.6348 0-5.1141 6.9603-6.1621 8.344-17.522-11.615-30.182-29.602-35.044-50.148l8.0066-1.761c0.92222-0.25158 1.1737-0.92246 1.1737-1.7611 0-0.79667-1.1737-1.2579-1.8444-1.174l-7.8389 1.803c-1.048-5.3251-1.6348-10.692-1.6348-16.143 0-15.556 4.4015-30.86 12.66-43.984 1.1737 0.71281 6.749 4.5284 7.6712 4.5284 0.79646 0 1.5091-0.58702 1.5091-1.3837 0-1.6353-6.1621-4.7381-7.5455-5.7024 11.821-17.275 29.805-29.728 50.219-34.34l1.7606 7.757c0.25152 0.92246 0.92222 1.174 1.7606 1.174 0.83838 0 1.2576-1.174 1.1737-1.8449l-1.7606-7.6732c5.1141-0.92246 10.312-1.5095 15.552-1.5095 15.552 0 30.727 4.4026 43.973 12.663-0.79646 1.174-4.5273 6.6249-4.5273 7.5474 0 0.79667 0.58687 1.5095 1.3833 1.5095 1.6348 0 4.7369-6.0379 5.5753-7.4216 17.187 11.615 29.469 29.351 34.248 49.561l-6.4975 1.3837c-1.048 0.25158-1.1737 0.92246-1.1737 1.8449 0 0.79667 1.1737 1.2579 1.7606 1.174l6.6232-1.5095c1.048 5.3251 1.6348 10.776 1.6348 16.227 0 15.221-4.1919 30.189-12.073 43.062-1.1737-0.58702-6.0364-4.0672-6.9586-4.0672-0.8803 0-1.5929 0.71281-1.5929 1.5095zm-14.876-98.483c-5.2178 4.88-53.863 49.48-55.228 51.8l-38.772 64.2c5.0974-4.76 53.863-49.6 55.108-51.72l38.892-64.28z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");\n }\n .zee-launcher-unsupported-message {\n text-align: center;\n width: 250px;\n font-family: sans-serif;\n color: #ffffff;\n }\n .zee-launcher-unsupported-message-copy {\n border: 1px solid #ffffff;\n border-radius: 5px;\n margin-top: 10px;\n }\n #zee-launcher-unsupported-message-input {\n border: none;\n padding: 10px;\n border-radius: 0px;\n border-right: 1px solid #344B60;\n height: 40px;\n color: #ffffff;\n background-color: black;\n box-sizing: border-box;\n width: calc(100% - 65px);\n margin-left: 5px;\n }\n #zee-launcher-unsupported-message-button {\n background: none;\n border: none;\n outline: none;\n text-transform: uppercase;\n color: #ffffff;\n height: 40px;\n display: inline-block;\n width: 59px;\n }\n .zee-launcher-unsupported-message-before-copy {\n height: 100px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-top: 20px;\n }\n .zee-launcher-unsupported-message-copied .zee-launcher-unsupported-message-before-copy {\n display: none;\n }\n .zee-launcher-unsupported-message-after-copy {\n display: none;\n }\n .zee-launcher-unsupported-message-copied .zee-launcher-unsupported-message-after-copy {\n height: 100px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-top: 20px;\n }\n </style>\n <div class="zee-launcher-browser-logo"></div>\n <div class="zee-launcher-unsupported-message">Open with ${t} to access this content.</div>\n <div class="zee-launcher-unsupported-message-before-copy">\n <div class="zee-launcher-unsupported-message ">Tap below to copy the address for easy pasting into ${t}.</div>\n <div class="zee-launcher-unsupported-message-copy"><input id="zee-launcher-unsupported-message-input" type="text/"><button id="zee-launcher-unsupported-message-button">Copy</button></div>\n </div>\n <div class="zee-launcher-unsupported-message zee-launcher-unsupported-message-after-copy">COPIED! Now paste into ${t}'s address bar to experience the content.</div>\n `;let r=e.querySelector("#zee-launcher-unsupported-message-input")||document.createElement("input");r.value=window.location.href;let i=()=>{if(navigator.userAgent.match(/iPhone|iPod|iPad/i)){let e=document.createRange();e.selectNodeContents(r);let t=window.getSelection();if(!t)return;t.removeAllRanges(),t.addRange(e),r.setSelectionRange(0,999999999)}else r.select();document.execCommand("copy"),r.blur(),e.classList.toggle("zee-launcher-unsupported-message-copied",!0)};return(e.querySelector("#zee-launcher-unsupported-message-button")||document.createElement("button")).addEventListener("click",i),r.addEventListener("click",i),e}()),Object.assign(e.style,{position:"fixed",width:"100%",height:"100%",top:"0px",left:"0px",zIndex:1001,backgroundColor:"rgba(0, 0, 0, 0.9)",fontFamily:"sans-serif",color:"white",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"}),e.classList.add("zee_launcher_compatibility"),document.body.append(e)}};let Et=1,wt=new Map;class yt extends Ue{constructor(e,t){super(),this._impl=e,this._pipeline=t,this._packetNumber=0,this._motionUpdatesQueued=0,this._motionUpdatesSent=0,this._minFrameGapMs=0,this._lastUpdateTime=0}static create(e){let t=Et++;return wt.set(t,new yt(t,e)),ge("sequence_source_source_t initialized"),t}static get(e){return wt.get(e)}loadFromMemory(e){try{this._decoder=new je(e),this._packetNumber=0,this._lastUpdateTime=0}catch(e){ve("Unable to decode sequence:",e)}}maxPlaybackFpsSet(e){this._minFrameGapMs=e<=0?0:1e3/e}setTime(e){e<0?delete this._time:this._time=e}getFrame(e){var t;let r=ht.get(this._pipeline);if(!r)return;if(!this._decoder)return;if(this._submitMotionUpdates(r),this._motionUpdatesQueued>this._motionUpdatesSent)return;if(e)return;let i=null!==(t=this._time)&&void 0!==t?t:performance.now();if(i<this._lastUpdateTime+this._minFrameGapMs)return;if(this._packetNumber>=this._decoder.numberPackets)return;let a=this._decoder.dataByPacket.get(this._packetNumber);if(a.type!=Ce.CAMERA_FRAME)return;this._packetNumber++;let n=r.cameraPixelArrays.pop();for(;n&&n.byteLength!==a.greyscale.byteLength;)n=r.cameraPixelArrays.pop();n||(n=new ArrayBuffer(a.greyscale.byteLength)),new Uint8Array(n).set(a.greyscale),this._lastUpdateTime=i;let o={data:n,cameraSourceData:a.greyscale,cameraModel:a.cameraModel,cameraToDevice:a.cameraToDevice,dataWidth:a.width,dataHeight:a.height,texture:void 0,userFacing:a.userFacing,uvTransform:R(),cameraSource:this};this._submitMotionUpdates(r);const s=r.registerToken(o);r.sendDataToWorker(o.data||new ArrayBuffer(0),s,o.dataWidth,o.dataHeight,o.userFacing,o.cameraToDevice,o.cameraModel)}destroy(){wt.delete(this._impl),this.pause()}start(){var e;let t=ht.get(this._pipeline);t&&t.currentCameraSource!==this&&(null===(e=t.currentCameraSource)||void 0===e||e.pause(),t.currentCameraSource=this)}pause(){let e=ht.get(this._pipeline);e&&e.currentCameraSource===this&&(e.currentCameraSource=void 0)}uploadGL(e){let t=ht.get(this._pipeline);if(!t)return;let r=null==t?void 0:t.glContext;r&&(e.texture||(e.texture=t.getVideoTexture()),e.texture&&e.cameraSourceData&&(r.bindTexture(r.TEXTURE_2D,e.texture),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.LUMINANCE,e.dataWidth,e.dataHeight,0,r.LUMINANCE,r.UNSIGNED_BYTE,new Uint8Array(e.cameraSourceData)),r.bindTexture(r.TEXTURE_2D,null)))}_submitMotionUpdates(e){let t=!1;for(;this._packetNumber<this._decoder.numberPackets;){let r=this._decoder.dataByPacket.get(this._packetNumber);if(r.type==Ce.CAMERA_FRAME)break;switch(r.type){case Ce.ACCELEROMETER:e.motionAccelerometerSubmit(r.t,r.x,r.y,r.z),t=!0;break;case Ce.ROTATION_RATE:e.motionRotationRateSubmit(r.t,r.x,r.y,r.z),t=!0;break;case Ce.ATTITUDE:e.motionAttitudeSubmit(r.t,r.x,r.y,r.z),t=!0;break;case Ce.ATTITUDE_MATRIX:e.motionAttitudeMatrix(r.attitude),t=!0;break;case Ce.ACCELEROMETER_WO_GRAVITY_INT:e.motionAccelerometerWithoutGravitySubmitInt(r.t,r.int,r.x,r.y,r.z),t=!0;break;case Ce.ACCELEROMETER_W_GRAVITY_INT:e.motionAccelerometerWithGravitySubmitInt(r.t,r.int,r.x,r.y,r.z),t=!0;break;case Ce.ATTITUDE_INT:e.motionAttitudeSubmitInt(r.t,r.int,r.x,r.y,r.z),t=!0;break;case Ce.ROTATION_RATE_INT:e.motionRotationRateSubmitInt(r.t,r.int,r.x,r.y,r.z),t=!0}this._packetNumber++}t&&(this._motionUpdatesQueued++,setTimeout((()=>{this._motionUpdatesSent++}),0))}}const At='<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="250" height="80.408" viewBox="0 0 250 80.408"><defs><filter id="a" x="0" y="1.182" width="250" height="79.226" filterUnits="userSpaceOnUse"><feOffset dy="3" input="SourceAlpha"/><feGaussianBlur stdDeviation="3" result="b"/><feFlood flood-opacity="0.161"/><feComposite operator="in" in2="b"/><feComposite in="SourceGraphic"/></filter><filter id="c" x="6.929" y="0" width="111.975" height="40.988" filterUnits="userSpaceOnUse"><feOffset dy="3" input="SourceAlpha"/><feGaussianBlur stdDeviation="3" result="d"/><feFlood flood-opacity="0.161"/><feComposite operator="in" in2="d"/><feComposite in="SourceGraphic"/></filter></defs><g transform="translate(-26.873 -414.029)"><g transform="translate(44 423.332)"><g transform="translate(0 0.635)" style="isolation:isolate"><g transform="translate(0 0)"><g transform="matrix(1, 0, 0, 1, -17.13, -9.94)" filter="url(#a)"><path d="M55.766,44.97V11.8h8.272v2.6h.089a8.258,8.258,0,0,1,7.046-3.357,11.4,11.4,0,0,1,8.5,3.686,12.667,12.667,0,0,1,3.278,8.622,12.509,12.509,0,0,1-3.25,8.57,11.353,11.353,0,0,1-8.429,3.6,9.533,9.533,0,0,1-7.229-2.95V43.378l-8.269,1.594h0Zm8-21.671a4.958,4.958,0,0,0,5.319,5.15A4.957,4.957,0,0,0,74.4,23.3a5.321,5.321,0,0,0-10.638,0ZM16.105,18.412H2.752V11.038H30.9L14.887,37.16H38.22L0,44.534ZM131.469,38.45a.761.761,0,0,1-.484-.166.582.582,0,0,1-.228-.419l-.553-3.586a12.243,12.243,0,0,1-1.782-.721l-2.789,2.084a.718.718,0,0,1-.5.176.688.688,0,0,1-.495-.214,25.864,25.864,0,0,1-3.264-3.274.754.754,0,0,1,.018-.9c.2-.277.543-.713,1.01-1.3.483-.6.832-1.05,1.068-1.374a9.614,9.614,0,0,1-.811-1.929l-3.62-.527a.631.631,0,0,1-.416-.243.728.728,0,0,1-.159-.458V21.283a.743.743,0,0,1,.159-.448.6.6,0,0,1,.376-.253l3.68-.546a9.511,9.511,0,0,1,.772-1.792c-.523-.733-1.235-1.638-2.117-2.69a.731.731,0,0,1-.2-.467.82.82,0,0,1,.178-.449,19.577,19.577,0,0,1,1.949-2.095c.953-.924,1.582-1.393,1.87-1.393a.861.861,0,0,1,.515.195l2.729,2.084a11.551,11.551,0,0,1,1.8-.741,31.446,31.446,0,0,1,.573-3.623.666.666,0,0,1,.712-.546h4.392a.757.757,0,0,1,.485.166.58.58,0,0,1,.228.419l.553,3.584a12.576,12.576,0,0,1,1.782.722l2.809-2.085a.641.641,0,0,1,.475-.176.776.776,0,0,1,.5.195,27.035,27.035,0,0,1,3.264,3.313.625.625,0,0,1,.139.429.742.742,0,0,1-.159.447c-.2.271-.525.7-1.008,1.3-.467.581-.827,1.043-1.069,1.373a11.8,11.8,0,0,1,.812,1.91l3.62.545a.626.626,0,0,1,.416.244.736.736,0,0,1,.158.457v4.325a.755.755,0,0,1-.158.449.6.6,0,0,1-.4.253l-3.66.545a12.692,12.692,0,0,1-.772,1.774c.465.653,1.177,1.559,2.117,2.688a.751.751,0,0,1,.2.488.648.648,0,0,1-.178.448,19.638,19.638,0,0,1-1.958,2.1c-.947.918-1.573,1.384-1.861,1.384a.976.976,0,0,1-.515-.176l-2.731-2.1a11.361,11.361,0,0,1-1.8.741,31.849,31.849,0,0,1-.573,3.625.668.668,0,0,1-.713.546Zm-1.385-18.491a4.935,4.935,0,0,0,0,7.053,5.12,5.12,0,0,0,7.163,0,4.931,4.931,0,0,0,0-7.053,5.117,5.117,0,0,0-7.163,0Zm69.969,14.868a18.523,18.523,0,0,1-4.932-2.073l1.705-6.1A13.441,13.441,0,0,0,200.779,29a12.14,12.14,0,0,0,4.344.818,4.644,4.644,0,0,0,2.351-.482,1.538,1.538,0,0,0,.806-1.4q0-1.5-3.25-2.242-1.061-.246-1.705-.425a12.335,12.335,0,0,1-5.358-2.589,5.5,5.5,0,0,1-1.671-4.157,6.323,6.323,0,0,1,2.547-5.267,10.993,10.993,0,0,1,6.9-1.972,21.351,21.351,0,0,1,4.552.5,25.439,25.439,0,0,1,4.736,1.557l-1.705,5.491a14.244,14.244,0,0,0-3.319-1.636,10.6,10.6,0,0,0-3.364-.561,4.227,4.227,0,0,0-2.121.426,1.357,1.357,0,0,0-.714,1.232q0,1.211,3.227,2.04.737.2,1.106.291,4.264,1.187,5.935,2.79a5.728,5.728,0,0,1,1.67,4.337A6.781,6.781,0,0,1,213,33.37a11.48,11.48,0,0,1-7.259,2.14A22.577,22.577,0,0,1,200.053,34.827ZM30.568,31.834a12.566,12.566,0,0,1-3.292-8.59,12.567,12.567,0,0,1,3.247-8.568,11.3,11.3,0,0,1,8.423-3.638,9.519,9.519,0,0,1,7.217,3V11.8h8.264V34.735H46.163V32.186h-.09c-1.32,2.071-3.951,3.308-7.038,3.308A11.412,11.412,0,0,1,30.568,31.834Zm5.245-8.545a4.95,4.95,0,0,0,5.312,5.141,4.95,4.95,0,0,0,5.312-5.141A5.023,5.023,0,0,0,41.125,18.1,5.023,5.023,0,0,0,35.813,23.289Zm69.2,11.554-3.527-10.452q-.282-.892-.505-1.8t-.412-1.8a30.821,30.821,0,0,1-.917,3.454l-.047.16L96.1,34.842H90.176l-9.925-23.1h8.632l3.552,10.223q.4,1.12.634,1.955t.377,1.635a23.558,23.558,0,0,1,.917-3.179q.093-.274.141-.411l3.528-10.223h5.056l3.5,10.2.07.183a20.724,20.724,0,0,1,.988,3.43q.141-.732.364-1.532t.647-2.058l3.574-10.223h8.678l-9.971,23.1Zm80.154-.092-8.587-9.841v9.841h-7.888V1.5L176.583,0V22.28l8.272-9.665h9.96L184.584,23.266l11.156,11.485Zm-35.09,0V11.782h8.272v3.761h.091a8.131,8.131,0,0,1,7.546-4.074h1.593V19.3a6.8,6.8,0,0,0-3.5-.761c-4.593,0-5.728,3-5.728,6.941v9.268Z" transform="translate(17.13 15.31)"/></g><g transform="matrix(1, 0, 0, 1, -17.13, -9.94)" filter="url(#c)"><path d="M3.576-12.852v-4.3H6.628a2.867,2.867,0,0,1,1.945.55A2.034,2.034,0,0,1,9.188-15a2.06,2.06,0,0,1-.615,1.608,2.784,2.784,0,0,1-1.945.542ZM2.017-18.464V-6.748H3.576v-4.792H7.153a3.569,3.569,0,0,0,2.683-.9A3.478,3.478,0,0,0,10.747-15a3.45,3.45,0,0,0-.911-2.552,3.638,3.638,0,0,0-2.683-.911Zm11.421,7.483a4.221,4.221,0,0,1,.205-1.37,2.957,2.957,0,0,1,.566-1.009,2.411,2.411,0,0,1,.845-.624A2.515,2.515,0,0,1,16.08-14.2a2.515,2.515,0,0,1,1.026.213,2.411,2.411,0,0,1,.845.624,2.957,2.957,0,0,1,.566,1.009,4.221,4.221,0,0,1,.205,1.37,4.221,4.221,0,0,1-.205,1.37,2.867,2.867,0,0,1-.566,1,2.457,2.457,0,0,1-.845.615,2.515,2.515,0,0,1-1.026.213,2.515,2.515,0,0,1-1.026-.213,2.457,2.457,0,0,1-.845-.615,2.867,2.867,0,0,1-.566-1A4.221,4.221,0,0,1,13.438-10.981Zm-1.477,0a5.573,5.573,0,0,0,.263,1.739,3.97,3.97,0,0,0,.788,1.4,3.623,3.623,0,0,0,1.3.935,4.4,4.4,0,0,0,1.772.336A4.381,4.381,0,0,0,17.86-6.9a3.641,3.641,0,0,0,1.288-.935,3.97,3.97,0,0,0,.788-1.4,5.573,5.573,0,0,0,.263-1.739,5.65,5.65,0,0,0-.263-1.748,3.96,3.96,0,0,0-.788-1.411,3.729,3.729,0,0,0-1.288-.944,4.29,4.29,0,0,0-1.78-.345,4.3,4.3,0,0,0-1.772.345,3.71,3.71,0,0,0-1.3.944,3.96,3.96,0,0,0-.788,1.411A5.65,5.65,0,0,0,11.961-10.981Zm18.28,4.234,2.708-8.484H31.5L29.6-8.29h-.033L27.8-15.231H26.27L24.564-8.29h-.033l-1.92-6.941H21.068l2.724,8.484H25.3l1.707-6.744h.033l1.723,6.744ZM40.169-11.8H35.3a2.905,2.905,0,0,1,.213-.927A2.473,2.473,0,0,1,36-13.492a2.255,2.255,0,0,1,.747-.517,2.429,2.429,0,0,1,.976-.189,2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,40.169-11.8Zm1.346,2.363H40.136a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.105,5.105,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,41.515-9.439Zm1.526-5.793v8.484h1.395v-3.774a5.8,5.8,0,0,1,.164-1.452,2.784,2.784,0,0,1,.525-1.075,2.251,2.251,0,0,1,.952-.673,3.945,3.945,0,0,1,1.428-.23v-1.477a3.135,3.135,0,0,0-1.871.459,3.779,3.779,0,0,0-1.247,1.526h-.033v-1.789ZM54.15-11.8H49.276a2.905,2.905,0,0,1,.213-.927,2.473,2.473,0,0,1,.492-.763,2.255,2.255,0,0,1,.747-.517A2.429,2.429,0,0,1,51.7-14.2a2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,54.15-11.8ZM55.5-9.439H54.117a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.1,5.1,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,55.5-9.439Zm2.593-1.477a5.581,5.581,0,0,1,.131-1.214,3.212,3.212,0,0,1,.427-1.05,2.221,2.221,0,0,1,.788-.738,2.4,2.4,0,0,1,1.2-.279,2.589,2.589,0,0,1,1.231.271,2.389,2.389,0,0,1,.829.714,2.985,2.985,0,0,1,.468,1.026,4.889,4.889,0,0,1,.148,1.206,4.919,4.919,0,0,1-.139,1.165,3.053,3.053,0,0,1-.451,1.026,2.4,2.4,0,0,1-.8.73,2.4,2.4,0,0,1-1.2.279,2.491,2.491,0,0,1-1.173-.263,2.332,2.332,0,0,1-.82-.706,3.122,3.122,0,0,1-.476-1.009A4.338,4.338,0,0,1,58.088-10.916Zm6.564,4.168V-18.464H63.257V-14.1h-.033a2.247,2.247,0,0,0-.566-.632,3.216,3.216,0,0,0-.714-.41,3.583,3.583,0,0,0-.755-.222,4.132,4.132,0,0,0-.706-.066,3.861,3.861,0,0,0-1.7.353,3.487,3.487,0,0,0-1.214.952,4.018,4.018,0,0,0-.722,1.4,5.985,5.985,0,0,0-.238,1.707,5.8,5.8,0,0,0,.246,1.707,4.218,4.218,0,0,0,.73,1.411,3.529,3.529,0,0,0,1.214.968,3.827,3.827,0,0,0,1.715.361,4.135,4.135,0,0,0,1.625-.312A2.053,2.053,0,0,0,63.224-7.9h.033v1.149Zm6.761-11.716V-6.748h1.395V-7.88h.033a2.247,2.247,0,0,0,.566.632,2.982,2.982,0,0,0,.714.4,3.874,3.874,0,0,0,.763.213,4.193,4.193,0,0,0,.7.066,3.94,3.94,0,0,0,1.7-.345,3.4,3.4,0,0,0,1.214-.944,4.018,4.018,0,0,0,.722-1.4,5.985,5.985,0,0,0,.238-1.707,5.8,5.8,0,0,0-.246-1.707,4.312,4.312,0,0,0-.73-1.419,3.488,3.488,0,0,0-1.214-.976,3.827,3.827,0,0,0-1.715-.361,4.043,4.043,0,0,0-1.625.32,2.088,2.088,0,0,0-1.083,1.026h-.033v-4.381Zm6.564,7.4a5.581,5.581,0,0,1-.131,1.214,3.212,3.212,0,0,1-.427,1.05,2.243,2.243,0,0,1-.779.738,2.385,2.385,0,0,1-1.206.279A2.589,2.589,0,0,1,74.2-8.052a2.389,2.389,0,0,1-.829-.714,2.985,2.985,0,0,1-.468-1.026A4.889,4.889,0,0,1,72.758-11a4.919,4.919,0,0,1,.139-1.165,3.053,3.053,0,0,1,.451-1.026,2.4,2.4,0,0,1,.8-.73,2.4,2.4,0,0,1,1.2-.279,2.491,2.491,0,0,1,1.173.263,2.332,2.332,0,0,1,.82.706,3.122,3.122,0,0,1,.476,1.009A4.338,4.338,0,0,1,77.976-11.063Zm6.449,5.448a8.871,8.871,0,0,1-.484,1.05,2.871,2.871,0,0,1-.525.7,1.782,1.782,0,0,1-.64.394,2.462,2.462,0,0,1-.812.123,3.721,3.721,0,0,1-.492-.033A2.324,2.324,0,0,1,81-3.5v-1.28a2.342,2.342,0,0,0,.418.139,1.765,1.765,0,0,0,.4.057,1.2,1.2,0,0,0,.714-.205,1.255,1.255,0,0,0,.435-.583L83.539-6.8l-3.364-8.434h1.575L84.228-8.29h.033l2.379-6.941h1.477Z" transform="translate(17.85 28.4)"/></g></g></g><g transform="translate(0 0)"><g transform="translate(0 5.371)"><path d="M11.76,24.456A11.41,11.41,0,0,1,3.292,20.8,12.564,12.564,0,0,1,0,12.206,12.569,12.569,0,0,1,3.246,3.638,11.307,11.307,0,0,1,11.67,0a9.519,9.519,0,0,1,7.217,3V.759h8.264V23.7H18.887V21.148H18.8C17.478,23.219,14.846,24.456,11.76,24.456ZM13.849,7.064A5.023,5.023,0,0,0,8.537,12.25a4.95,4.95,0,0,0,5.312,5.141A4.95,4.95,0,0,0,19.16,12.25,5.023,5.023,0,0,0,13.849,7.064Z" transform="translate(27.277 11.038)" fill="#fff"/><path d="M0,33.931V.758H8.271v2.6H8.36A8.258,8.258,0,0,1,15.406,0,11.4,11.4,0,0,1,23.9,3.686a12.665,12.665,0,0,1,3.278,8.622,12.508,12.508,0,0,1-3.25,8.57,11.351,11.351,0,0,1-8.429,3.6,9.535,9.535,0,0,1-7.229-2.95V32.337L0,33.931ZM13.317,7.07A5.028,5.028,0,0,0,8,12.259a4.957,4.957,0,0,0,5.319,5.15,4.957,4.957,0,0,0,5.319-5.15A5.028,5.028,0,0,0,13.317,7.07Z" transform="translate(55.766 11.041)" fill="#fff"/><path d="M22.836,0l3.5,10.2.07.183a20.748,20.748,0,0,1,.988,3.43q.141-.731.364-1.532t.647-2.058L31.985,0h8.678L30.691,23.1H24.764L21.237,12.647q-.282-.891-.505-1.8t-.412-1.8A30.927,30.927,0,0,1,19.4,12.51l-.047.16L15.851,23.1H9.925L0,0H8.631l3.552,10.223q.4,1.121.635,1.955t.377,1.635a23.522,23.522,0,0,1,.917-3.179q.093-.274.141-.411L17.78,0h5.056" transform="translate(80.251 11.743)" fill="#fff"/><path d="M0,34.75V1.5L7.888,0V22.28l8.272-9.665H26.12L15.889,23.266,27.045,34.75H16.475L7.888,24.91v9.84H0" transform="translate(168.695 0)" fill="#fff"/><path d="M0,21.47l1.705-6.1a13.453,13.453,0,0,0,3.952,2.342A12.145,12.145,0,0,0,10,18.534a4.643,4.643,0,0,0,2.351-.482,1.539,1.539,0,0,0,.807-1.4q0-1.5-3.25-2.241-1.06-.246-1.705-.426A12.325,12.325,0,0,1,2.846,11.4,5.5,5.5,0,0,1,1.176,7.239,6.324,6.324,0,0,1,3.722,1.972,11,11,0,0,1,10.624,0a21.365,21.365,0,0,1,4.551.5,25.45,25.45,0,0,1,4.736,1.558l-1.706,5.49a14.24,14.24,0,0,0-3.319-1.636,10.6,10.6,0,0,0-3.364-.56A4.22,4.22,0,0,0,9.4,5.782a1.356,1.356,0,0,0-.714,1.233q0,1.211,3.227,2.04.737.2,1.106.291,4.264,1.188,5.935,2.79a5.728,5.728,0,0,1,1.671,4.337,6.782,6.782,0,0,1-2.743,5.614,11.478,11.478,0,0,1-7.259,2.14,22.565,22.565,0,0,1-5.693-.683A18.517,18.517,0,0,1,0,21.47" transform="translate(195.121 11.284)" fill="#fff"/><path d="M8.273,4.075h.091A8.13,8.13,0,0,1,15.909,0H17.5V7.834A6.8,6.8,0,0,0,14,7.074c-4.593,0-5.728,3-5.728,6.941v9.268H0V.313H8.273V4.075" transform="translate(150.08 11.469)" fill="#fff"/><path d="M17.392,29.929H13a.76.76,0,0,1-.485-.166.579.579,0,0,1-.227-.419l-.553-3.586a12.3,12.3,0,0,1-1.781-.721L7.163,27.123a.719.719,0,0,1-.495.176.687.687,0,0,1-.495-.214A25.873,25.873,0,0,1,2.91,23.81a.753.753,0,0,1,.019-.9c.2-.277.542-.713,1.009-1.3.483-.6.832-1.05,1.068-1.374a9.591,9.591,0,0,1-.811-1.929l-3.62-.526a.63.63,0,0,1-.416-.243A.729.729,0,0,1,0,17.089V12.762a.746.746,0,0,1,.159-.448.6.6,0,0,1,.376-.253l3.68-.546a9.5,9.5,0,0,1,.772-1.792C4.464,8.991,3.752,8.085,2.87,7.034a.732.732,0,0,1-.2-.468.82.82,0,0,1,.179-.449A19.622,19.622,0,0,1,4.8,4.023C5.751,3.1,6.38,2.631,6.668,2.631a.859.859,0,0,1,.515.194L9.913,4.91a11.536,11.536,0,0,1,1.8-.741A31.372,31.372,0,0,1,12.287.546.665.665,0,0,1,13,0h4.392a.755.755,0,0,1,.485.166.581.581,0,0,1,.229.419l.553,3.584a12.543,12.543,0,0,1,1.781.722L23.25,2.807a.641.641,0,0,1,.475-.176.775.775,0,0,1,.495.194,27.092,27.092,0,0,1,3.264,3.313.625.625,0,0,1,.139.429.745.745,0,0,1-.159.448c-.2.271-.525.695-1.008,1.3-.467.581-.827,1.043-1.069,1.373a11.784,11.784,0,0,1,.812,1.91l3.62.545a.625.625,0,0,1,.416.244.736.736,0,0,1,.157.458v4.325a.754.754,0,0,1-.157.449.606.606,0,0,1-.4.253l-3.66.545a12.628,12.628,0,0,1-.772,1.774c.465.654,1.177,1.559,2.117,2.688a.752.752,0,0,1,.2.488.648.648,0,0,1-.177.448,19.641,19.641,0,0,1-1.959,2.1c-.947.918-1.573,1.384-1.86,1.384a.978.978,0,0,1-.515-.176l-2.731-2.1a11.429,11.429,0,0,1-1.8.741,32.016,32.016,0,0,1-.573,3.624A.668.668,0,0,1,17.392,29.929ZM15.2,9.976a4.938,4.938,0,0,0-3.582,1.463,4.935,4.935,0,0,0,0,7.053,5.12,5.12,0,0,0,7.163,0,4.932,4.932,0,0,0,0-7.053A4.938,4.938,0,0,0,15.2,9.976Z" transform="translate(118.47 8.521)" fill="#fff"/><path d="M0,33.5,16.106,7.374H2.752V0H30.9L14.887,26.122H38.22L0,33.5" transform="translate(0 11.038)" fill="#fff"/></g><path d="M3.576-12.852v-4.3H6.628a2.867,2.867,0,0,1,1.945.55A2.034,2.034,0,0,1,9.188-15a2.06,2.06,0,0,1-.615,1.608,2.784,2.784,0,0,1-1.945.542ZM2.017-18.464V-6.748H3.576v-4.792H7.153a3.569,3.569,0,0,0,2.683-.9A3.478,3.478,0,0,0,10.747-15a3.45,3.45,0,0,0-.911-2.552,3.638,3.638,0,0,0-2.683-.911Zm11.421,7.483a4.221,4.221,0,0,1,.205-1.37,2.957,2.957,0,0,1,.566-1.009,2.411,2.411,0,0,1,.845-.624A2.515,2.515,0,0,1,16.08-14.2a2.515,2.515,0,0,1,1.026.213,2.411,2.411,0,0,1,.845.624,2.957,2.957,0,0,1,.566,1.009,4.221,4.221,0,0,1,.205,1.37,4.221,4.221,0,0,1-.205,1.37,2.867,2.867,0,0,1-.566,1,2.457,2.457,0,0,1-.845.615,2.515,2.515,0,0,1-1.026.213,2.515,2.515,0,0,1-1.026-.213,2.457,2.457,0,0,1-.845-.615,2.867,2.867,0,0,1-.566-1A4.221,4.221,0,0,1,13.438-10.981Zm-1.477,0a5.573,5.573,0,0,0,.263,1.739,3.97,3.97,0,0,0,.788,1.4,3.623,3.623,0,0,0,1.3.935,4.4,4.4,0,0,0,1.772.336A4.381,4.381,0,0,0,17.86-6.9a3.641,3.641,0,0,0,1.288-.935,3.97,3.97,0,0,0,.788-1.4,5.573,5.573,0,0,0,.263-1.739,5.65,5.65,0,0,0-.263-1.748,3.96,3.96,0,0,0-.788-1.411,3.729,3.729,0,0,0-1.288-.944,4.29,4.29,0,0,0-1.78-.345,4.3,4.3,0,0,0-1.772.345,3.71,3.71,0,0,0-1.3.944,3.96,3.96,0,0,0-.788,1.411A5.65,5.65,0,0,0,11.961-10.981Zm18.28,4.234,2.708-8.484H31.5L29.6-8.29h-.033L27.8-15.231H26.27L24.564-8.29h-.033l-1.92-6.941H21.068l2.724,8.484H25.3l1.707-6.744h.033l1.723,6.744ZM40.169-11.8H35.3a2.905,2.905,0,0,1,.213-.927A2.473,2.473,0,0,1,36-13.492a2.255,2.255,0,0,1,.747-.517,2.429,2.429,0,0,1,.976-.189,2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,40.169-11.8Zm1.346,2.363H40.136a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.105,5.105,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,41.515-9.439Zm1.526-5.793v8.484h1.395v-3.774a5.8,5.8,0,0,1,.164-1.452,2.784,2.784,0,0,1,.525-1.075,2.251,2.251,0,0,1,.952-.673,3.945,3.945,0,0,1,1.428-.23v-1.477a3.135,3.135,0,0,0-1.871.459,3.779,3.779,0,0,0-1.247,1.526h-.033v-1.789ZM54.15-11.8H49.276a2.905,2.905,0,0,1,.213-.927,2.473,2.473,0,0,1,.492-.763,2.255,2.255,0,0,1,.747-.517A2.429,2.429,0,0,1,51.7-14.2a2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,54.15-11.8ZM55.5-9.439H54.117a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.1,5.1,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,55.5-9.439Zm2.593-1.477a5.581,5.581,0,0,1,.131-1.214,3.212,3.212,0,0,1,.427-1.05,2.221,2.221,0,0,1,.788-.738,2.4,2.4,0,0,1,1.2-.279,2.589,2.589,0,0,1,1.231.271,2.389,2.389,0,0,1,.829.714,2.985,2.985,0,0,1,.468,1.026,4.889,4.889,0,0,1,.148,1.206,4.919,4.919,0,0,1-.139,1.165,3.053,3.053,0,0,1-.451,1.026,2.4,2.4,0,0,1-.8.73,2.4,2.4,0,0,1-1.2.279,2.491,2.491,0,0,1-1.173-.263,2.332,2.332,0,0,1-.82-.706,3.122,3.122,0,0,1-.476-1.009A4.338,4.338,0,0,1,58.088-10.916Zm6.564,4.168V-18.464H63.257V-14.1h-.033a2.247,2.247,0,0,0-.566-.632,3.216,3.216,0,0,0-.714-.41,3.583,3.583,0,0,0-.755-.222,4.132,4.132,0,0,0-.706-.066,3.861,3.861,0,0,0-1.7.353,3.487,3.487,0,0,0-1.214.952,4.018,4.018,0,0,0-.722,1.4,5.985,5.985,0,0,0-.238,1.707,5.8,5.8,0,0,0,.246,1.707,4.218,4.218,0,0,0,.73,1.411,3.529,3.529,0,0,0,1.214.968,3.827,3.827,0,0,0,1.715.361,4.135,4.135,0,0,0,1.625-.312A2.053,2.053,0,0,0,63.224-7.9h.033v1.149Zm6.761-11.716V-6.748h1.395V-7.88h.033a2.247,2.247,0,0,0,.566.632,2.982,2.982,0,0,0,.714.4,3.874,3.874,0,0,0,.763.213,4.193,4.193,0,0,0,.7.066,3.94,3.94,0,0,0,1.7-.345,3.4,3.4,0,0,0,1.214-.944,4.018,4.018,0,0,0,.722-1.4,5.985,5.985,0,0,0,.238-1.707,5.8,5.8,0,0,0-.246-1.707,4.312,4.312,0,0,0-.73-1.419,3.488,3.488,0,0,0-1.214-.976,3.827,3.827,0,0,0-1.715-.361,4.043,4.043,0,0,0-1.625.32,2.088,2.088,0,0,0-1.083,1.026h-.033v-4.381Zm6.564,7.4a5.581,5.581,0,0,1-.131,1.214,3.212,3.212,0,0,1-.427,1.05,2.243,2.243,0,0,1-.779.738,2.385,2.385,0,0,1-1.206.279A2.589,2.589,0,0,1,74.2-8.052a2.389,2.389,0,0,1-.829-.714,2.985,2.985,0,0,1-.468-1.026A4.889,4.889,0,0,1,72.758-11a4.919,4.919,0,0,1,.139-1.165,3.053,3.053,0,0,1,.451-1.026,2.4,2.4,0,0,1,.8-.73,2.4,2.4,0,0,1,1.2-.279,2.491,2.491,0,0,1,1.173.263,2.332,2.332,0,0,1,.82.706,3.122,3.122,0,0,1,.476,1.009A4.338,4.338,0,0,1,77.976-11.063Zm6.449,5.448a8.871,8.871,0,0,1-.484,1.05,2.871,2.871,0,0,1-.525.7,1.782,1.782,0,0,1-.64.394,2.462,2.462,0,0,1-.812.123,3.721,3.721,0,0,1-.492-.033A2.324,2.324,0,0,1,81-3.5v-1.28a2.342,2.342,0,0,0,.418.139,1.765,1.765,0,0,0,.4.057,1.2,1.2,0,0,0,.714-.205,1.255,1.255,0,0,0,.435-.583L83.539-6.8l-3.364-8.434h1.575L84.228-8.29h.033l2.379-6.941h1.477Z" transform="translate(0.722 18.464)" fill="#fff"/></g></g></g></svg>';function Tt(){var e=new T(2);return T!=Float32Array&&(e[0]=0,e[1]=0),e}function Rt(e,t){return e[0]=t[0],e[1]=t[1],e}function xt(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e}function kt(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e}function St(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e}function Nt(e){var t=e[0],r=e[1];return Math.hypot(t,r)}function It(){return{indices:new Uint16Array(0),vertices:new Float32Array(0),normals:new Float32Array(0),uvs:new Float32Array(0)}}function Lt(e){const t=2*e.trainedWidth/(e.trainedHeight*e.topRadius);return Ft(e,2,!1,0,0,0,Tt(),e.trainedWidth/e.trainedHeight,t,e.physicalScaleFactor)}function Ft(e,t,r,i,a,n,o,_,c,l){isNaN(_)&&(_=1);const d=[],h=[],u=l>0?l:1,f=2*u/t,p=64;for(let t=0;t<=p;++t){const i=t*c/p+(2*Math.PI-c)/2,a=e.bottomRadius*Math.sin(i)*f,n=e.bottomRadius*Math.cos(i)*f,o=e.topRadius*Math.sin(i)*f,s=e.topRadius*Math.cos(i)*f,_=-1*u,l=u;r?(d.push(a,_,n),d.push(o,l,s)):(d.push(o,l,-s),d.push(a,_,-n))}for(let t=0;t<=p;++t)if(e.type==s.IMAGE_TRACKER_TYPE_CYLINDRICAL){const e=1-t/p;h.push(e,1),h.push(e,0)}else{let e=2*-(t/p-.5)*i;r&&(e=-e+i,e>i&&(e=e-i-i));const s=Tt();s[0]=Math.sin(e),s[1]=Math.cos(e),r&&(s[1]*=-1);const c=Tt();Rt(c,s),St(c,c,a),xt(c,o,c);const l=Tt();Rt(l,s),St(l,l,n),xt(l,o,l),h.push((l[0]+_)/(2*_),1-(1-l[1])/2),h.push((c[0]+_)/(2*_),1-(1-c[1])/2)}const m=[];for(let e=0;e<p;++e){const t=2*e;m.push(t+1,t+2,t+3),m.push(t+0,t+2,t+1)}return{vertices:new Float32Array(d),indices:new Uint16Array(m),normals:new Float32Array(0),uvs:new Float32Array(h)}}Tt();const Mt=new TextDecoder;class zt{constructor(e,t=!1){this._data=e,this._paddingBytes=t,this.truncatedChunks=!1,this._view=new DataView(this._data),this.root=this._parse()}_parse(){if("RIFF"!==Mt.decode(this._data.slice(0,4)))throw new Error("Not a valid ZPT file");return this._parseChunk(0)}_parseChunk(e){const t=Mt.decode(this._data.slice(e,e+4)),r=this._view.getUint32(e+4,!0),i=new Uint8Array(this._data,e+8,r);let a,n;if(i.byteLength!==r&&(this.truncatedChunks=!0),"RIFF"===t||"LIST"===t){n=Mt.decode(this._data.slice(e+8,e+12)),a=[];let t=4;for(;t<i.byteLength-1;){const r=this._parseChunk(e+8+t);a.push(r),t+=r.data.byteLength+8,this._paddingBytes&&1&r.data.byteLength&&t++}}return{ident:t,data:i,subident:n,subchunks:a}}find(e,t=this.root){if(t.ident===e)return t;if(t.subchunks)for(let r of t.subchunks){const t=this.find(e,r);if(t)return t}}has(e){return void 0!==this.find(e)}}let Pt=new Map;const Ct=new TextDecoder;class Dt{constructor(e,t){this._client=e,this._impl=t,this._targets=[]}static create(e,t){let r=t.image_tracker_create(e);return Pt.set(r,new Dt(t,r)),r}static get(e){return Pt.get(e)}destroy(){this._client.image_tracker_destroy(this._impl),Pt.delete(this._impl)}loadFromMemory(e){this._targets.push({data:e}),this._client.image_tracker_target_load_from_memory(this._impl,e)}targetCount(){return this._targets.length}getTargetInfo(e){let t=this._targets[e];if(t&&t.info)return t.info;t.info={topRadius:-1,bottomRadius:-1,sideLength:-1,physicalScaleFactor:-1,trainedWidth:0,trainedHeight:0,type:s.IMAGE_TRACKER_TYPE_PLANAR};try{const e=new zt(t.data,!1),r=e.find("IMG ");if(r){let i="image/png";const a=e.find("IMGM");a&&(i=Ct.decode(a.data)),t.info.preview={mimeType:i,compressed:r.data}}const i=e.find("ODLE");if(i){const e=Ct.decode(i.data);this._parseOdle(e,t.info)}}catch(e){}return t.info}_parseOdle(e,t){let r=0,i="0";return[i,r]=jt(r,e),"1"===i?this._parseOdleV1(e,r,t):"3"===i?this._parseOdleV3(e,r,t):void 0}_parseOdleV1(e,t,r){let i="0";if([i,t]=jt(t,e),"0"!==i&&"1"!==i)return;let a="";if([a,t]=jt(t,e),0!==a.length)return;let n="";[n,t]=jt(t,e);const o=n.split(" ");o.length<5||(r.trainedWidth=parseInt(o[3].replace("[","")),r.trainedHeight=parseInt(o[4].replace("]","")))}_parseOdleV3(e,t,r){let i="0";if([i,t]=jt(t,e),"0"!==i&&"1"!==i)return;let a="0";[a,t]=jt(t,e);const n=parseInt(a);if(isNaN(n)||n<1)return;let o="";if([o,t]=jt(t,e),0!==o.length)return;let s="";[s,t]=jt(t,e);const _=s.split(" ");if(_.length<6)return;const c=parseInt(_[0]);0!==c&&1!==c&&2!==c||(r.type=c),r.trainedWidth=parseInt(_[4].replace("[","")),r.trainedHeight=parseInt(_[5].replace("]","")),_.length>=7&&(r.physicalScaleFactor=parseFloat(_[6]),isNaN(r.physicalScaleFactor)&&(r.physicalScaleFactor=-1)),_.length>=8&&(r.topRadius=parseFloat(_[7]),isNaN(r.topRadius)&&(r.topRadius=-1),r.bottomRadius=r.topRadius),_.length>=9&&(r.bottomRadius=parseFloat(_[8]),isNaN(r.bottomRadius)&&(r.bottomRadius=-1)),_.length>=10&&(r.sideLength=parseFloat(_[9]),isNaN(r.sideLength)&&(r.sideLength=-1))}getDecodedPreview(e){const t=this.getTargetInfo(e);if(t.preview){if(!t.preview.image){const e=new Blob([t.preview.compressed],{type:t.preview.mimeType});t.preview.image=new Image,t.preview.image.src=URL.createObjectURL(e)}return t.preview.image}}getPreviewMesh(e){const t=this.getTargetInfo(e);return t.previewMesh||(t.previewMesh=function(e){switch(e.type){case s.IMAGE_TRACKER_TYPE_PLANAR:return function(e){const t=e.trainedWidth/e.trainedHeight;if(isNaN(t))return It();const r=e.physicalScaleFactor>0?e.physicalScaleFactor:1;return{vertices:new Float32Array([-1*t*r,-1*r,0,-1*t*r,r,0,t*r,r,0,t*r,-1*r,0]),indices:new Uint16Array([0,2,1,0,3,2]),uvs:new Float32Array([0,0,0,1,1,1,1,0]),normals:new Float32Array([0,0,1,0,0,1,0,0,1,0,0,1])}}(e);case s.IMAGE_TRACKER_TYPE_CYLINDRICAL:return Lt(e);case s.IMAGE_TRACKER_TYPE_CONICAL:return function(e){const t=e.topRadius-e.bottomRadius;if(0===t)return console.warn("Conical target has matching radii, using cylindrical preview mesh with a defined image size instead."),Lt(e);const r=Math.sqrt(e.sideLength*e.sideLength-t*t),i=e.bottomRadius>e.topRadius;let a=e.trainedWidth/e.trainedHeight;isNaN(a)&&(a=1);const n=!(e.bottomRadius>0&&e.topRadius>0),o=e.sideLength<2*Math.abs(e.topRadius-e.bottomRadius),s=Tt(),_=Tt(),c=Tt();if(n)if(o)if(i){c[1]=a-1;const e=Math.acos((2-a)/a);s[0]=a*Math.sin(e),s[1]=a-1+a*Math.cos(e),Rt(_,c)}else{c[1]=1-a;const e=Math.PI+Math.acos((2-a)/a);s[0]=a*Math.sin(e),s[1]=1-a+a*Math.cos(e),Rt(_,c)}else i?(c[1]=1,Rt(_,c),s[0]=a,s[1]=1-Math.sqrt(4-Math.pow(a,2))):(c[1]=-1,Rt(_,c),s[0]=-a,s[1]=Math.sqrt(4-Math.pow(a,2))-1);else if(o)if(i){c[1]=a-1;const t=Math.acos((2-a)/a);s[0]=a*Math.sin(t),s[1]=a-1+a*Math.cos(t),_[0]=(a-e.sideLength)*Math.sin(t),_[1]=a-1+(a-e.sideLength)*Math.cos(t)}else{c[1]=1-a;const t=Math.PI+Math.acos((2-a)/a);s[0]=a*Math.sin(t),s[1]=1-a+a*Math.cos(t),_[0]=(a-e.sideLength)*Math.sin(t),_[1]=1-a+(a-e.sideLength)*Math.cos(t)}else{const t=i?e.topRadius/e.bottomRadius:e.bottomRadius/e.topRadius;i?(_[0]=t*a,_[1]=1,s[0]=a,s[1]=1-Math.sqrt(e.sideLength*e.sideLength-(_[0]-s[0])*(_[0]-s[0])),c[1]=s[1]+s[0]/(s[0]-_[0])*(_[1]-s[1])):(_[0]=-t*a,_[1]=-1,s[0]=-a,s[1]=Math.sqrt(e.sideLength*e.sideLength-(_[0]-s[0])*(_[0]-s[0]))-1,c[1]=s[1]- -s[0]/(_[0]-s[0])*(s[1]-_[1]))}const l=Tt();kt(l,s,c);const d=Tt();kt(d,_,c);const h=Nt(l),u=Nt(d);let f=2*Math.abs(Math.atan(l[0]/l[1]));o&&(f=2*Math.PI-f);let p=h*f/e.topRadius,m=Math.abs(Math.atan(l[0]/l[1]));return o&&(m=Math.PI-m),Ft(e,r,i,m,u,h,c,a,p,e.physicalScaleFactor)}(e)}return It()}(t)),t.previewMesh}}function jt(e,t){let r=t.indexOf("\n",e);return[t.substring(e,r>=0?r:void 0).replace("\r",""),r+1]}let Ut,Bt,Ot;let Vt="\n#ifndef GL_ES\n#define highp\n#define mediump\n#define lowp\n#endif\n\nuniform mat4 projMatrix;\nuniform mat4 cameraMatrix;\nuniform mat4 modelViewMatrix;\nattribute vec4 position;\nattribute vec2 textureCoord;\n\nvarying highp vec2 vTextureCoord;\n\nvoid main()\n{\n gl_Position = projMatrix * cameraMatrix * modelViewMatrix * position;\n vTextureCoord = textureCoord;\n}",Gt="\n#define highp mediump\n#ifdef GL_ES\n // define default precision for float, vec, mat.\n precision highp float;\n#else\n#define highp\n#define mediump\n#define lowp\n#endif\n\nvarying highp vec2 vTextureCoord;\nuniform sampler2D skinSampler;\n\nvoid main()\n{\n vec2 pixels = 100.0 * vTextureCoord + 0.5;\n if ((int(mod(pixels.x, 10.0)) == 0) || (int(mod(pixels.y, 10.0)) == 0)) {\n gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\n } else {\n discard;\n }\n}";var Kt=function(e,t,r,i){return new(r||(r=Promise))((function(a,n){function o(e){try{_(i.next(e))}catch(e){n(e)}}function s(e){try{_(i.throw(e))}catch(e){n(e)}}function _(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}_((i=i.apply(e,t||[])).next())}))};let Wt;function Zt(e){if(Wt)return Wt;let t=!1;(function(e){return Z(this,void 0,void 0,(function*(){var t;function i(){let t=H.getOutgoingMessages();for(let r of t)e.postMessage(r.msg,r.transferables)}e||(e=new Worker(new URL(r.p+r.u(751),r.b),{type:void 0})),e.postMessage({t:"wasm",url:new URL(r(751),r.b).toString(),module:yield Y,shouldRecordData:window.location.href.indexOf("_zrecorddata")>=0}),yield(t=e,new Promise((e=>{let r=i=>{"loaded"===i.data&&(t.removeEventListener("message",r),e())};t.addEventListener("message",r)}))),H.onOutgoingMessage.bind(i),i(),e.addEventListener("message",(e=>{H.postIncomingMessage(e.data)}))}))})(null==e?void 0:e.worker).then((()=>{ge("Fully loaded"),t=!0}));let i=new h((e=>{H.postOutgoingMessage({t:"zappar",d:e},[e])}));const a=function(){let e=window.localStorage.getItem("z_uar_lid");if(null===e){const t=new Uint8Array(8);window.crypto.getRandomValues(t),e="";for(let r=0;r<t.byteLength;r++){const i=t[r].toString(16);1===i.length?e+="0"+i:2===i.length&&(e+=i)}}return e}();let n=!1;if(window.location.hostname.toLowerCase().indexOf(".zappar.io")>0||window.location.hostname.toLowerCase().indexOf(".webar.run")>0||window.location.hostname.toLowerCase().indexOf(".arweb.app")>0){let e=window.location.pathname.split("/");e.length>1&&e[1].length>0&&i.impl.analytics_project_id_set(".wiz"+e[1],a)}return H.onIncomingMessage.bind((e=>{var t,a,n,o,s,_,c,l;switch(e.t){case"zappar":null===(t=ht.get(e.p))||void 0===t||t.pendingMessages.push(e.d);break;case"buf":i.serializer.bufferReturn(e.d);break;case"cameraFrameRecycleS2C":{let t=e;null===(n=null===(a=ht.get(t.p))||void 0===a?void 0:a.cameraTokenReturn)||void 0===n||n.call(a,e);break}case"videoFrameS2C":{let t=e;null===(s=null===(o=ht.get(t.p))||void 0===o?void 0:o.videoFrameFromWorker)||void 0===s||s.call(o,t);break}case"imageBitmapS2C":{let t=e;null===(c=null===(_=ht.get(t.p))||void 0===_?void 0:_.imageBitmapFromWorker)||void 0===c||c.call(_,t);break}case"raw":{let t=e;null===(l=ht.get(t.p))||void 0===l||l.cameraFrameDataRawResult(t);break}case"streamEndedS2C":{const t=at(e.source);t instanceof et&&t.streamEnded();break}case"setupCeresWorker":!function(e,t){Z(this,void 0,void 0,(function*(){t||(t=new Worker(new URL(r.p+r.u(25),r.b),{type:void 0})),t.postMessage({t:"wasm",url:new URL(r(751),r.b).toString(),module:yield Y,port:e},[e])}))}(e.port);break;case"_z_datadownload":{let t=new Blob([e.data],{type:"application/octet-stream"}),r=URL.createObjectURL(t),i=document.createElement("a");i.download="sequencedata.bin",i.href=r,i.click();break}case"licerr":{let e=document.createElement("div");e.innerHTML="Visit <a href='https://docs.zap.works/universal-ar/licensing/' style='color: white;'>our licensing page</a> to find out about hosting on your own domain.",e.style.position="absolute",e.style.bottom="20px",e.style.width="80%",e.style.backgroundColor="black",e.style.color="white",e.style.borderRadius="10px",e.style.padding="10px",e.style.fontFamily="sans-serif",e.style.textAlign="center",e.style.left="10%",e.style.zIndex=Number.MAX_SAFE_INTEGER.toString();let t=document.createElement("span");t.innerText=" (30)",e.append(t);let r=30;setInterval((function(){r--,r>=0&&(t.innerText=" ("+r.toString()+")")}),1e3),document.body.append(e)}case"gfx":{let e=document.createElement("div");e.innerHTML=At,e.style.position="absolute",e.style.bottom="20px",e.style.width="250px",e.style.left="50%",e.style.marginLeft="-125px",e.style.zIndex=Number.MAX_SAFE_INTEGER.toString(),e.style.opacity="0",e.style.transition="opacity 0.5s",document.body.append(e),setTimeout((function(){e.style.opacity="1"}),500),setTimeout((function(){e.style.opacity="0"}),3e3),setTimeout((function(){e.remove()}),4e3)}}})),Wt=Object.assign(Object.assign({},i.impl),{loaded:()=>t,camera_default_device_id:e=>e?qe.USER_DEFAULT_DEVICE_ID:qe.DEFAULT_DEVICE_ID,camera_source_create:(e,t)=>function(e,t){let r=tt++;return D.preferMediaStreamTrackProcessorCamera&&"MediaStreamTrackProcessor"in window&&"MediaStreamTrackGenerator"in window?it(r,new et(r,e,t)):D.preferImageBitmapCamera&&"undefined"!=typeof OffscreenCanvas?it(r,new Je(r,e,t)):it(r,new qe(r,e,t)),ge("camera_source_t initialized"),r}(e,t),camera_source_destroy:e=>{var t;return null===(t=at(e))||void 0===t?void 0:t.destroy()},camera_source_pause:e=>{var t;return null===(t=at(e))||void 0===t?void 0:t.pause()},camera_source_start:e=>{var t;return null===(t=at(e))||void 0===t?void 0:t.start()},camera_source_profile_set:(e,t)=>{var r;return null===(r=at(e))||void 0===r?void 0:r.setProfile(t)},camera_count:()=>2,camera_id:e=>0===e?qe.DEFAULT_DEVICE_ID:qe.USER_DEFAULT_DEVICE_ID,camera_name:e=>0===e?"Rear-facing Camera":"User-facing Camera",camera_user_facing:e=>0!==e,pose_from_raw:(e,t)=>{let r=ut(void 0,e);if(t){let e=R();N(e,[-1,1,1]),k(r,e,r),k(r,r,e)}return r},pipeline_create:()=>ht.create(i.impl,H),pipeline_frame_update:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.frameUpdate(i)},pipeline_camera_frame_draw_gl:(e,t,r,i)=>{var a;null===(a=ht.get(e))||void 0===a||a.cameraFrameDrawGL(t,r,i)},pipeline_camera_frame_data_width:e=>{var t,r;const i=null===(t=ht.get(e))||void 0===t?void 0:t.getCurrentCameraInfo();return null!==(r=null==i?void 0:i.dataWidth)&&void 0!==r?r:0},pipeline_camera_frame_data_height:e=>{var t,r;const i=null===(t=ht.get(e))||void 0===t?void 0:t.getCurrentCameraInfo();return null!==(r=null==i?void 0:i.dataHeight)&&void 0!==r?r:0},draw_plane:(e,t,r,i,a)=>{!function(e,t,r,i,a){let n=y(e),o=function(e){if(m)return m;if(m=e.createBuffer(),!m)throw new Error("Unable to create buffer object");return e.bindBuffer(e.ARRAY_BUFFER,m),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-.5,.125,0,-.5,-.125,0,.5,.125,0,.5,-.125,0]),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),m}(e),s=v(e);e.disable(e.DEPTH_TEST),e.useProgram(n.prog),e.uniformMatrix4fv(n.unif_proj,!1,t),e.uniformMatrix4fv(n.unif_camera,!1,r),e.uniformMatrix4fv(n.unif_matrix,!1,i),e.bindBuffer(e.ARRAY_BUFFER,o),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,function(e,t){if(g[t])return g[t];let r=e.createTexture();if(!r)throw new Error("Unable to create texture");g[t]=r,e.bindTexture(e.TEXTURE_2D,r);const i=e.RGBA,a=e.RGBA,n=e.UNSIGNED_BYTE,o=new Uint8Array([0,0,255,255]);e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,i,1,1,0,a,n,o);const s=new Image;return s.onload=function(){e.bindTexture(e.TEXTURE_2D,r),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,i,a,n,s),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR)},s.src=t,r}(e,a)),e.uniform1i(n.unif_skinSampler,0),e.vertexAttribPointer(n.attr_position,3,e.FLOAT,!1,12,0),e.enableVertexAttribArray(n.attr_position),e.bindBuffer(e.ARRAY_BUFFER,s),e.vertexAttribPointer(n.attr_textureCoord,2,e.FLOAT,!1,8,0),e.enableVertexAttribArray(n.attr_textureCoord),e.drawArrays(e.TRIANGLE_STRIP,0,4),e.disableVertexAttribArray(n.attr_position),e.disableVertexAttribArray(n.attr_textureCoord),e.bindBuffer(e.ARRAY_BUFFER,null)}(e,t,r,i,a)},draw_grid:(e,t,r,i)=>{!function(e,t,r,i){let a=function(e){if(Ut)return Ut;let t=e.createProgram();if(!t)throw new Error("Unable to create program");let r=u(e,e.VERTEX_SHADER,Vt),i=u(e,e.FRAGMENT_SHADER,Gt);e.attachShader(t,r),e.attachShader(t,i),f(e,t);let a=e.getUniformLocation(t,"projMatrix");if(!a)throw new Error("Unable to get uniform location projMatrix");let n=e.getUniformLocation(t,"modelViewMatrix");if(!n)throw new Error("Unable to get uniform location modelViewMatrix");let o=e.getUniformLocation(t,"cameraMatrix");if(!o)throw new Error("Unable to get uniform location cameraMatrix");return Ut={prog:t,unif_matrix:n,unif_proj:a,unif_camera:o,attr_position:e.getAttribLocation(t,"position"),attr_textureCoord:e.getAttribLocation(t,"textureCoord")},Ut}(e),n=function(e){if(Bt)return Bt;if(Bt=e.createBuffer(),!Bt)throw new Error("Unable to create buffer object");return e.bindBuffer(e.ARRAY_BUFFER,Bt),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-.5,0,.5,-.5,0,-.5,.5,0,.5,.5,0,-.5]),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),Bt}(e),o=function(e){if(Ot)return Ot;if(Ot=e.createBuffer(),!Ot)throw new Error("Unable to create buffer object");return e.bindBuffer(e.ARRAY_BUFFER,Ot),e.bufferData(e.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,1,1,0]),e.STATIC_DRAW),e.bindBuffer(e.ARRAY_BUFFER,null),Ot}(e);e.disable(e.DEPTH_TEST),e.useProgram(a.prog),e.uniformMatrix4fv(a.unif_proj,!1,t),e.uniformMatrix4fv(a.unif_camera,!1,r),e.uniformMatrix4fv(a.unif_matrix,!1,i),e.bindBuffer(e.ARRAY_BUFFER,n),e.vertexAttribPointer(a.attr_position,3,e.FLOAT,!1,12,0),e.enableVertexAttribArray(a.attr_position),e.bindBuffer(e.ARRAY_BUFFER,o),e.vertexAttribPointer(a.attr_textureCoord,2,e.FLOAT,!1,8,0),e.enableVertexAttribArray(a.attr_textureCoord),e.drawArrays(e.TRIANGLE_STRIP,0,4),e.disableVertexAttribArray(a.attr_position),e.disableVertexAttribArray(a.attr_textureCoord),e.bindBuffer(e.ARRAY_BUFFER,null)}(e,t,r,i)},pipeline_draw_face:(e,t,r,i,a)=>{var n;let o=Ae(a);if(!o)return Ee("attempting to call draw_face on a destroyed zappar_face_mesh_t"),new Uint16Array;null===(n=ht.get(e))||void 0===n||n.drawFace(t,r,i,o)},pipeline_draw_face_project:(e,t,r,i,a,n,o)=>{var s;null===(s=ht.get(e))||void 0===s||s.drawFaceProject(t,r,i,a,n,o)},pipeline_draw_image_target_preview:(e,t,r,i,a,n)=>{var o;let s=Dt.get(a);s?null===(o=ht.get(e))||void 0===o||o.drawImageTargetPreview(t,r,i,n,s):Ee("image tracker not found")},projection_matrix_from_camera_model:V,projection_matrix_from_camera_model_ext:V,pipeline_process_gl:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.processGL()},pipeline_gl_context_set:(e,t,r)=>{var i;return null===(i=ht.get(e))||void 0===i?void 0:i.glContextSet(t,r)},pipeline_gl_context_lost:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.glContextLost()},pipeline_camera_frame_upload_gl:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.uploadGL()},pipeline_camera_frame_texture_gl:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.cameraFrameTexture()},pipeline_camera_frame_texture_matrix:(e,t,r,i)=>{var a;return(null===(a=ht.get(e))||void 0===a?void 0:a.cameraFrameTextureMatrix(t,r,i))||R()},pipeline_camera_frame_user_facing:e=>{var t;return(null===(t=ht.get(e))||void 0===t?void 0:t.cameraFrameUserFacing())||!1},pipeline_camera_pose_default:()=>R(),pipeline_camera_pose_with_attitude:(e,t)=>{var r;return(null===(r=ht.get(e))||void 0===r?void 0:r.cameraPoseWithAttitude(t))||R()},pipeline_camera_pose_with_origin:(e,t)=>{let r=R();return x(r,t),r},pipeline_sequence_record_clear:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.sequenceRecordClear()},pipeline_sequence_record_start:(e,t)=>{var r;return null===(r=ht.get(e))||void 0===r?void 0:r.sequenceRecordStart(t)},pipeline_sequence_record_stop:e=>{var t;return null===(t=ht.get(e))||void 0===t?void 0:t.sequenceRecordStop()},pipeline_sequence_record_device_attitude_matrices_set:(e,t)=>{var r;return null===(r=ht.get(e))||void 0===r?void 0:r.sequenceRecordDeviceAttitudeMatrices(t)},pipeline_sequence_record_data:e=>{var t;return(null===(t=ht.get(e))||void 0===t?void 0:t.sequenceRecordData())||new Uint8Array(0)},pipeline_sequence_record_data_size:e=>{var t;return(null===(t=ht.get(e))||void 0===t?void 0:t.sequenceRecordData().byteLength)||0},pipeline_camera_frame_data_raw:e=>{var t;return(null===(t=ht.get(e))||void 0===t?void 0:t.getCameraFrameDataRaw())||Promise.reject()},pipeline_camera_frame_data_raw_enabled_set:(e,t)=>{var r;return null===(r=ht.get(e))||void 0===r?void 0:r.setCameraFrameDataRawEnabled(t)},instant_world_tracker_anchor_pose_camera_relative:(e,t)=>{let r=ut(void 0,i.impl.instant_world_tracker_anchor_pose_raw(e));if(t){let e=R();N(e,[-1,1,1]),k(r,e,r),k(r,r,e)}return r},instant_world_tracker_anchor_pose:(e,t,r)=>{let a=ut(void 0,i.impl.instant_world_tracker_anchor_pose_raw(e));if(r){let e=R();N(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return k(a,t,a),a},instant_world_tracker_anchor_pose_set_from_camera_offset:(e,t,r,a,n)=>{let o=G(!1)*Math.PI/180,s=R();I(s,-o,[0,0,1]);let _=L();z(_,[t,r,a],s),i.impl.instant_world_tracker_anchor_pose_set_from_camera_offset_raw(e,_[0],_[1],_[2],n)},image_tracker_create:e=>Dt.create(e,i.impl),image_tracker_destroy:e=>{var t;return null===(t=Dt.get(e))||void 0===t?void 0:t.destroy()},image_tracker_target_type:(e,t)=>{let r=Dt.get(e);return r?r.getTargetInfo(t).type:(Ee("attempting to call image_tracker_target_type on a destroyed zappar_image_tracker_t"),s.IMAGE_TRACKER_TYPE_PLANAR)},image_tracker_target_count:e=>{let t=Dt.get(e);return t?t.targetCount():(Ee("attempting to call image_tracker_target_count on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_load_from_memory:(e,t)=>{let r=Dt.get(e);if(!r)return Ee("attempting to call image_tracker_target_load_from_memory on a destroyed zappar_image_tracker_t"),0;r.loadFromMemory(t)},image_tracker_target_preview_compressed:(e,t)=>{var r;let i=Dt.get(e);return i?(null===(r=i.getTargetInfo(t).preview)||void 0===r?void 0:r.compressed)||new Uint8Array(0):(Ee("attempting to call image_tracker_target_preview_compressed on a destroyed zappar_image_tracker_t"),new Uint8Array(0))},image_tracker_target_preview_compressed_mimetype:(e,t)=>{var r;let i=Dt.get(e);return i?(null===(r=i.getTargetInfo(t).preview)||void 0===r?void 0:r.mimeType)||"":(Ee("attempting to call image_tracker_target_preview_compressed_mimetype on a destroyed zappar_image_tracker_t"),"")},image_tracker_target_preview_compressed_size:(e,t)=>{var r,i;let a=Dt.get(e);return a?(null===(i=null===(r=a.getTargetInfo(t).preview)||void 0===r?void 0:r.compressed)||void 0===i?void 0:i.byteLength)||0:(Ee("attempting to call image_tracker_target_preview_compressed_size on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_physical_scale_factor:(e,t)=>{let r=Dt.get(e);return r?r.getTargetInfo(t).physicalScaleFactor:(Ee("attempting to call image_tracker_target_physical_scale_factor on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_radius_top:(e,t)=>{let r=Dt.get(e);return r?r.getTargetInfo(t).topRadius:(Ee("attempting to call image_tracker_target_radius_top on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_radius_bottom:(e,t)=>{let r=Dt.get(e);return r?r.getTargetInfo(t).bottomRadius:(Ee("attempting to call image_tracker_target_radius_bottom on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_side_length:(e,t)=>{let r=Dt.get(e);return r?r.getTargetInfo(t).sideLength:(Ee("attempting to call image_tracker_target_side_length on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_image:(e,t)=>{let r=Dt.get(e);return r?r.getDecodedPreview(t):(Ee("attempting to call image_tracker_target_image on a destroyed zappar_image_tracker_t"),new Image)},image_tracker_anchor_pose_camera_relative:(e,t,r)=>{let a=ut(void 0,i.impl.image_tracker_anchor_pose_raw(e,t));if(r){let e=R();N(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return a},image_tracker_anchor_pose:(e,t,r,a)=>{let n=ut(void 0,i.impl.image_tracker_anchor_pose_raw(e,t));if(a){let e=R();N(e,[-1,1,1]),k(n,e,n),k(n,n,e)}return k(n,r,n),n},image_tracker_target_preview_mesh_indices:(e,t)=>{let r=Dt.get(e);return r?r.getPreviewMesh(t).indices:(Ee("attempting to call image_tracker_target_preview_mesh_indices on a destroyed zappar_image_tracker_t"),new Uint16Array)},image_tracker_target_preview_mesh_vertices:(e,t)=>{let r=Dt.get(e);return r?r.getPreviewMesh(t).vertices:(Ee("attempting to call image_tracker_target_preview_mesh_vertices on a destroyed zappar_image_tracker_t"),new Float32Array)},image_tracker_target_preview_mesh_uvs:(e,t)=>{let r=Dt.get(e);return r?r.getPreviewMesh(t).uvs:(Ee("attempting to call image_tracker_target_preview_mesh_uvs on a destroyed zappar_image_tracker_t"),new Float32Array)},image_tracker_target_preview_mesh_normals:(e,t)=>{let r=Dt.get(e);return r?r.getPreviewMesh(t).normals:(Ee("attempting to call image_tracker_target_preview_mesh_normals on a destroyed zappar_image_tracker_t"),new Float32Array)},image_tracker_target_preview_mesh_indices_size:(e,t)=>{let r=Dt.get(e);return r?r.getPreviewMesh(t).indices.length:(Ee("attempting to call image_tracker_target_preview_mesh_indices_size on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_preview_mesh_vertices_size:(e,t)=>{let r=Dt.get(e);return r?r.getPreviewMesh(t).vertices.length:(Ee("attempting to call image_tracker_target_preview_mesh_vertices_size on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_preview_mesh_uvs_size:(e,t)=>{let r=Dt.get(e);return r?r.getPreviewMesh(t).uvs.length:(Ee("attempting to call image_tracker_target_preview_mesh_uvs_size on a destroyed zappar_image_tracker_t"),0)},image_tracker_target_preview_mesh_normals_size:(e,t)=>{let r=Dt.get(e);return r?r.getPreviewMesh(t).normals.length:(Ee("attempting to call image_tracker_target_preview_mesh_normals_size on a destroyed zappar_image_tracker_t"),0)},zapcode_tracker_anchor_pose_camera_relative:(e,t,r)=>{let a=ut(void 0,i.impl.zapcode_tracker_anchor_pose_raw(e,t));if(r){let e=R();N(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return a},zapcode_tracker_anchor_pose:(e,t,r,a)=>{let n=ut(void 0,i.impl.zapcode_tracker_anchor_pose_raw(e,t));if(a){let e=R();N(e,[-1,1,1]),k(n,e,n),k(n,n,e)}return k(n,r,n),n},face_tracker_anchor_pose_camera_relative:(e,t,r)=>{let a=ut(void 0,i.impl.face_tracker_anchor_pose_raw(e,t));if(r){let e=R();N(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return a},face_tracker_anchor_pose:(e,t,r,a)=>{let n=ut(void 0,i.impl.face_tracker_anchor_pose_raw(e,t));if(a){let e=R();N(e,[-1,1,1]),k(n,e,n),k(n,n,e)}return k(n,r,n),n},face_tracker_model_load_default:e=>Kt(this,void 0,void 0,(function*(){yield function(e){return Kt(this,void 0,void 0,(function*(){let t=new URL(r(367),r.b),i=yield fetch(t.toString()),a=yield i.arrayBuffer();null==Wt||Wt.face_tracker_model_load_from_memory(e,a)}))}(e)})),face_mesh_create:()=>function(){let e=we++;return ye.set(e,new Te),ge("face_mesh_t initialized"),e}(),face_mesh_destroy:e=>{!function(e){ye.delete(e)}(e)},face_mesh_indices:e=>{let t=Ae(e);return t?t.getIndices():(Ee("attempting to call face_mesh_indices on a destroyed zappar_face_mesh_t"),new Uint16Array)},face_mesh_indices_size:e=>{let t=Ae(e);return t?t.getIndices().length:(Ee("attempting to call face_mesh_indices_size on a destroyed zappar_face_mesh_t"),0)},face_mesh_uvs:e=>{let t=Ae(e);return t?t.getUVs():(Ee("attempting to call face_mesh_uvs on a destroyed zappar_face_mesh_t"),new Float32Array)},face_mesh_uvs_size:e=>{let t=Ae(e);return t?t.getUVs().length:(Ee("attempting to call face_mesh_uvs_size on a destroyed zappar_face_mesh_t"),0)},face_mesh_vertices:e=>{let t=Ae(e);return t?t.getVertices():(Ee("attempting to call face_mesh_vertices on a destroyed zappar_face_mesh_t"),new Float32Array)},face_mesh_vertices_size:e=>{let t=Ae(e);return t?t.getVertices().length:(Ee("attempting to call face_mesh_vertices_size on a destroyed zappar_face_mesh_t"),0)},face_mesh_normals:e=>{let t=Ae(e);return t?t.getNormals():(Ee("attempting to call face_mesh_normals on a destroyed zappar_face_mesh_t"),new Float32Array)},face_mesh_normals_size:e=>{let t=Ae(e);return t?t.getNormals().length:(Ee("attempting to call face_mesh_normals_size on a destroyed zappar_face_mesh_t"),0)},face_mesh_load_from_memory:(e,t,r,i,a,n)=>{let o=Ae(e);o?o.loadFromMemory(t,r,i,a,n):Ee("attempting to call face_mesh_load_from_memory on a destroyed zappar_face_mesh_t")},face_mesh_update:(e,t,r,i)=>{let a=Ae(e);a?a.update(t,r,i):Ee("attempting to call face_mesh_update on a destroyed zappar_face_mesh_t")},face_mesh_load_default:e=>Kt(this,void 0,void 0,(function*(){let t=Ae(e);if(!t)return void Ee("attempting to call face_mesh_load_default on a destroyed zappar_face_mesh_t");let i=new URL(r(698),r.b),a=yield fetch(i.toString());t.loadFromMemory(yield a.arrayBuffer(),!1,!1,!1,!1)})),face_mesh_load_default_face:(e,t,i,a)=>Kt(this,void 0,void 0,(function*(){let n=Ae(e);if(!n)return void Ee("attempting to call face_mesh_load_default_face on a destroyed zappar_face_mesh_t");let o=new URL(r(698),r.b),s=yield fetch(o.toString());n.loadFromMemory(yield s.arrayBuffer(),t,i,a,!1)})),face_mesh_load_default_full_head_simplified:(e,t,i,a,n)=>Kt(this,void 0,void 0,(function*(){let o=Ae(e);if(!o)return void Ee("attempting to call face_mesh_load_default_full_head_simplified on a destroyed zappar_face_mesh_t");let s=new URL(r(825),r.b),_=yield fetch(s.toString());o.loadFromMemory(yield _.arrayBuffer(),t,i,a,n)})),face_mesh_loaded_version:e=>{let t=Ae(e);return t?t.getModelVersion():(Ee("attempting to call face_mesh_load_default on a destroyed zappar_face_mesh_t"),-1)},face_landmark_create:e=>function(e){let t=pt++;return mt.set(t,new gt(e)),ge("face_landmark_t initialized"),t}(e),face_landmark_destroy:e=>{!function(e){mt.delete(e)}(e)},face_landmark_update:(e,t,r,i)=>{let a=bt(e);a?a.update(t,r,i):Ee("attempting to call face_landmark_update on a destroyed zappar_face_landmark_t")},face_landmark_anchor_pose:e=>{let t=bt(e);return t?t.anchor_pose:(Ee("attempting to call face_landmark_anchor_pose on a destroyed zappar_face_landmark_t"),R())},world_tracker_plane_pose_camera_relative:(e,t,r)=>{let a=ut(void 0,i.impl.world_tracker_plane_pose_raw(e,t));if(r){let e=R();N(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return a},world_tracker_plane_pose:(e,t,r,a)=>{let n=ut(void 0,i.impl.world_tracker_plane_pose_raw(e,t));if(a){let e=R();N(e,[-1,1,1]),k(n,e,n),k(n,n,e)}return k(n,r,n),n},world_tracker_world_anchor_pose:(e,t,r)=>{let a=ut(void 0,i.impl.world_tracker_world_anchor_pose_raw(e));if(r){let e=R();N(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return k(a,t,a),a},world_tracker_world_anchor_pose_camera_relative:(e,t)=>{let r=ut(void 0,i.impl.world_tracker_world_anchor_pose_raw(e));if(t){let e=R();N(e,[-1,1,1]),k(r,e,r),k(r,r,e)}return r},world_tracker_ground_anchor_pose:(e,t,r)=>{let a=ut(void 0,i.impl.world_tracker_ground_anchor_pose_raw(e));if(r){let e=R();N(e,[-1,1,1]),k(a,e,a),k(a,a,e)}return k(a,t,a),a},world_tracker_ground_anchor_pose_camera_relative:(e,t)=>{let r=ut(void 0,i.impl.world_tracker_ground_anchor_pose_raw(e));if(t){let e=R();N(e,[-1,1,1]),k(r,e,r),k(r,r,e)}return r},html_element_source_create:(e,t)=>He.createVideoElementSource(e,t),html_element_source_start:e=>{var t;return null===(t=He.getVideoElementSource(e))||void 0===t?void 0:t.start()},html_element_source_pause:e=>{var t;return null===(t=He.getVideoElementSource(e))||void 0===t?void 0:t.pause()},html_element_source_destroy:e=>{var t;return null===(t=He.getVideoElementSource(e))||void 0===t?void 0:t.destroy()},sequence_source_create:e=>yt.create(e),sequence_source_load_from_memory:(e,t)=>{var r;return null===(r=yt.get(e))||void 0===r?void 0:r.loadFromMemory(t)},sequence_source_pause:e=>{var t;return null===(t=yt.get(e))||void 0===t?void 0:t.pause()},sequence_source_start:e=>{var t;return null===(t=yt.get(e))||void 0===t?void 0:t.start()},sequence_source_max_playback_fps_set:(e,t)=>{var r;return null===(r=yt.get(e))||void 0===r?void 0:r.maxPlaybackFpsSet(t)},sequence_source_time_set:(e,t)=>{var r;return null===(r=yt.get(e))||void 0===r?void 0:r.setTime(t)},sequence_source_destroy:e=>{var t;return null===(t=yt.get(e))||void 0===t?void 0:t.destroy()},permission_granted_all:de,permission_granted_camera:oe,permission_granted_motion:se,permission_denied_any:le,permission_denied_camera:_e,permission_denied_motion:ce,permission_request_motion:fe,permission_request_camera:ue,permission_request_all:he,permission_request_ui:pe,permission_request_ui_promise:pe,permission_denied_ui:me,browser_incompatible:vt.incompatible,browser_incompatible_ui:vt.incompatible_ui,log_level_set:e=>{!function(e){be=e}(e),i.impl.log_level_set(e)},cookies_permitted:e=>{var t;e?n||(t=a,window.localStorage.setItem("z_uar_lid",t),n=!0):window.localStorage.removeItem("z_uar_lid")}}),Wt}const Ht="3.0.1-alpha.8";function Yt(e){return function(e){return console.log(`Zappar CV v${Ht}`),Zt(e)}(Object.assign(Object.assign({},e),{worker:(null==e?void 0:e.worker)||new(r(276).Z)}))}})(),i})()));