@mappedin/blue-dot 6.21.1-beta.0 → 6.22.0-beta.0

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.
@@ -1,2 +1,2 @@
1
- var G=Object.defineProperty,o=(n,a)=>G(n,"name",{value:a,configurable:!0});import{MappedinContext as R}from"@mappedin/react-native-sdk";import{useCallback as i,useContext as Y,useMemo as q,useRef as _}from"react";import{useCallback as $,useContext as AA}from"react";import{MappedinContext as tA,useEventCallback as eA,createEventSetupScript as iA,createEventCleanupScript as nA}from"@mappedin/react-native-sdk";import{useRegisterExtension as sA}from"@mappedin/react-native-sdk";var oA='\n // Define require function that uses bridge.modules for external dependencies\n globalThis.require = globalThis.require || ((id) => {\n if (window.bridge?.modules?.[id]) {\n return window.bridge.modules[id];\n }\n throw new Error(\'Module not found: \' + id);\n });\n \n"use strict";var BlueDot=(()=>{var zo=Object.create;var tt=Object.defineProperty;var jo=Object.getOwnPropertyDescriptor;var Zo=Object.getOwnPropertyNames;var Xo=Object.getPrototypeOf,Yo=Object.prototype.hasOwnProperty;var Rn=r=>{throw TypeError(r)};var Qo=(r,i,t)=>i in r?tt(r,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[i]=t;var a=(r,i)=>tt(r,"name",{value:i,configurable:!0}),_t=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(i,t)=>(typeof require<"u"?require:i)[t]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw Error(\'Dynamic require of "\'+r+\'" is not supported\')});var er=(r,i)=>()=>(i||r((i={exports:{}}).exports,i),i.exports),tr=(r,i)=>{for(var t in i)tt(r,t,{get:i[t],enumerable:!0})},Cn=(r,i,t,n)=>{if(i&&typeof i=="object"||typeof i=="function")for(let o of Zo(i))!Yo.call(r,o)&&o!==t&&tt(r,o,{get:()=>i[o],enumerable:!(n=jo(i,o))||n.enumerable});return r};var vi=(r,i,t)=>(t=r!=null?zo(Xo(r)):{},Cn(i||!r||!r.__esModule?tt(t,"default",{value:r,enumerable:!0}):t,r)),ir=r=>Cn(tt({},"__esModule",{value:!0}),r);var g=(r,i,t)=>Qo(r,typeof i!="symbol"?i+"":i,t),en=(r,i,t)=>i.has(r)||Rn("Cannot "+t);var e=(r,i,t)=>(en(r,i,"read from private field"),t?t.call(r):i.get(r)),u=(r,i,t)=>i.has(r)?Rn("Cannot add the same private member more than once"):i instanceof WeakSet?i.add(r):i.set(r,t),s=(r,i,t,n)=>(en(r,i,"write to private field"),n?n.call(r,t):i.set(r,t),t),p=(r,i,t)=>(en(r,i,"access private method"),t);var It=(r,i,t,n)=>({set _(o){s(r,i,o,t)},get _(){return e(r,i,n)}});var ao=er((zs,wi)=>{(function(){"use strict";function r(d,c){var m=d.x-c.x,f=d.y-c.y;return m*m+f*f}a(r,"getSqDist");function i(d,c,m){var f=c.x,b=c.y,T=m.x-f,D=m.y-b;if(T!==0||D!==0){var U=((d.x-f)*T+(d.y-b)*D)/(T*T+D*D);U>1?(f=m.x,b=m.y):U>0&&(f+=T*U,b+=D*U)}return T=d.x-f,D=d.y-b,T*T+D*D}a(i,"getSqSegDist");function t(d,c){for(var m=d[0],f=[m],b,T=1,D=d.length;T<D;T++)b=d[T],r(b,m)>c&&(f.push(b),m=b);return m!==b&&f.push(b),f}a(t,"simplifyRadialDist");function n(d,c,m,f,b){for(var T=f,D,U=c+1;U<m;U++){var $e=i(d[U],d[c],d[m]);$e>T&&(D=U,T=$e)}T>f&&(D-c>1&&n(d,c,D,f,b),b.push(d[D]),m-D>1&&n(d,D,m,f,b))}a(n,"simplifyDPStep");function o(d,c){var m=d.length-1,f=[d[0]];return n(d,0,m,c,f),f.push(d[m]),f}a(o,"simplifyDouglasPeucker");function l(d,c,m){if(d.length<=2)return d;var f=c!==void 0?c*c:1;return d=m?d:t(d,f),d=o(d,f),d}a(l,"simplify"),typeof define=="function"&&define.amd?define(function(){return l}):typeof wi<"u"?(wi.exports=l,wi.exports.default=l):typeof self<"u"?self.simplify=l:window.simplify=l})()});var Kr={};tr(Kr,{BaseSensor:()=>X,BlueDot:()=>Ki,ManualSensor:()=>gt,SensorRegistry:()=>Tt});var hi=_t("@mappedin/mappedin-js");var tn=class tn{constructor(){g(this,"_subscribers",{});g(this,"_abortController",new AbortController)}get signal(){return this._abortController.signal}publish(i,t){!this._subscribers||!this._subscribers[i]||this.signal.aborted||this._subscribers[i].forEach(function(n){typeof n=="function"&&n(t)})}onAbort(i){this.signal.addEventListener("abort",()=>i(),{once:!0})}on(i,t,n){let o=n?.signal;if(o?.aborted||this._abortController&&this._abortController.signal.aborted)return()=>{};this._subscribers||(this._subscribers={}),this._subscribers[i]=this._subscribers[i]||[],this._subscribers[i].push(t);let l=a(()=>{this.off(i,t)},"cleanup");return o&&o.addEventListener("abort",l,{once:!0}),l}off(i,t){if(!this._subscribers||this._subscribers[i]==null||this.signal.aborted)return;let n=this._subscribers[i].indexOf(t);n!==-1&&this._subscribers[i].splice(n,1)}destroy(){this.signal.aborted||(this._subscribers={},this._abortController.abort())}};a(tn,"PubSub");var V=tn;var Wo=vi(_t("zod"));var nn="#2266ff",nr="#808080";var Gn={visible:!0,radius:10,color:nn,inactiveColor:nr,heading:{visible:!0,color:nn,opacity:.7,displayWhenInactive:!1},accuracyRing:{visible:!0,color:nn,opacity:.3},timeout:3e4,watchDevicePosition:!0,debug:!1,accuracyThreshold:50,initialState:"hidden",preventOutOfBounds:!0,discardStaleUpdates:!0};var He=_t("@mappedin/mappedin-js");var Fn="data:application/octet-stream;base64,Z2xURgIAAAAcIAAAgAQAAEpTT057ImFzc2V0Ijp7InZlcnNpb24iOiIyLjAifSwic2NlbmVzIjpbeyJub2RlcyI6WzBdfV0sInNjZW5lIjowLCJub2RlcyI6W3sibWVzaCI6MH1dLCJidWZmZXJWaWV3cyI6W3siYnVmZmVyIjowLCJieXRlT2Zmc2V0IjowLCJieXRlTGVuZ3RoIjoyMzUyLCJ0YXJnZXQiOjM0OTYyLCJieXRlU3RyaWRlIjoxMn0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjIzNTIsImJ5dGVMZW5ndGgiOjIzNTIsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6NDcwNCwiYnl0ZUxlbmd0aCI6MTU2OCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6OH0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjYyNzIsImJ5dGVMZW5ndGgiOjc2OCwidGFyZ2V0IjozNDk2M31dLCJidWZmZXJzIjpbeyJieXRlTGVuZ3RoIjo3MDQwfV0sImFjY2Vzc29ycyI6W3siYnVmZmVyVmlldyI6MCwiY29tcG9uZW50VHlwZSI6NTEyNiwiY291bnQiOjE5NiwibWF4IjpbMSwxLDAuMDI1MDAwMDAwMzcyNTI5MDNdLCJtaW4iOlstMSwtMSwtMC4wMjUwMDAwMDAzNzI1MjkwM10sInR5cGUiOiJWRUMzIn0seyJidWZmZXJWaWV3IjoxLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MTk2LCJtYXgiOlsxLDEsMV0sIm1pbiI6Wy0xLC0xLC0xXSwidHlwZSI6IlZFQzMifSx7ImJ1ZmZlclZpZXciOjIsImNvbXBvbmVudFR5cGUiOjUxMjYsImNvdW50IjoxOTYsIm1heCI6WzEsMV0sIm1pbiI6WzAsMF0sInR5cGUiOiJWRUMyIn0seyJidWZmZXJWaWV3IjozLCJjb21wb25lbnRUeXBlIjo1MTIzLCJjb3VudCI6Mzg0LCJtYXgiOlsxOTVdLCJtaW4iOlswXSwidHlwZSI6IlNDQUxBUiJ9XSwibWF0ZXJpYWxzIjpbeyJwYnJNZXRhbGxpY1JvdWdobmVzcyI6eyJiYXNlQ29sb3JGYWN0b3IiOlswLjAxNTk5NjI5MzM2MTQ0NjI4OCwwLjEzMjg2ODMyMTU0NDE0NjI3LDEsMV0sIm1ldGFsbGljRmFjdG9yIjowLCJyb3VnaG5lc3NGYWN0b3IiOjF9LCJhbHBoYU1vZGUiOiJCTEVORCIsIm5hbWUiOiJBY2N1cmFjeVJpbmcifV0sIm1lc2hlcyI6W3sicHJpbWl0aXZlcyI6W3sibW9kZSI6NCwiYXR0cmlidXRlcyI6eyJQT1NJVElPTiI6MCwiTk9STUFMIjoxLCJURVhDT09SRF8wIjoyfSwiaW5kaWNlcyI6MywibWF0ZXJpYWwiOjB9XX1dfSCAGwAAQklOAAAAAAAAAIC/zczMPMLFRz6+FHu/zczMPBXvwz5eg2y/zczMPNo5Dj8x21S/zczMPPMENT/zBDW/zczMPDHbVD/aOQ6/zczMPF6DbD8V78O+zczMPL4Uez/CxUe+zczMPAAAgD9lZICkzczMPL4Uez/CxUc+zczMPF6DbD8V78M+zczMPDHbVD/aOQ4/zczMPPMENT/zBDU/zczMPNo5Dj8x21Q/zczMPBXvwz5eg2w/zczMPMLFRz6+FHs/zczMPDIxDSUAAIA/zczMPMLFR76+FHs/zczMPBXvw75eg2w/zczMPNo5Dr8x21Q/zczMPPMENb/zBDU/zczMPDHbVL/aOQ4/zczMPF6DbL8V78M+zczMPL4Ue7/CxUc+zczMPAAAgL8wMFolzczMPL4Ue7/CxUe+zczMPF6DbL8V78O+zczMPDHbVL/aOQ6/zczMPPMENb/zBDW/zczMPNo5Dr8x21S/zczMPBXvw75eg2y/zczMPMLFR76+FHu/zczMPDIxjaUAAIC/zczMPAAAAAAAAIC/zczMvMLFRz6+FHu/zczMvBXvwz5eg2y/zczMvNo5Dj8x21S/zczMvPMENT/zBDW/zczMvDHbVD/aOQ6/zczMvF6DbD8V78O+zczMvL4Uez/CxUe+zczMvAAAgD///ZmkzczMvL4Uez/CxUc+zczMvF6DbD8V78M+zczMvDHbVD/aOQ4/zczMvPMENT/zBDU/zczMvNo5Dj8x21Q/zczMvBXvwz5eg2w/zczMvMLFRz6+FHs/zczMvDIxDSUAAIA/zczMvMLFR76+FHs/zczMvBXvw75eg2w/zczMvNo5Dr8x21Q/zczMvPMENb/zBDU/zczMvDHbVL/aOQ4/zczMvF6DbL8V78M+zczMvL4Ue7/CxUc+zczMvAAAgL9kY00lzczMvL4Ue7/CxUe+zczMvF6DbL8V78O+zczMvDHbVL/aOQ6/zczMvPMENb/zBDW/zczMvNo5Dr8x21S/zczMvBXvw75eg2y/zczMvMLFR76+FHu/zczMvDIxjaUAAIC/zczMvAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAAAAAIC/zczMPMLFRz6+FHu/zczMPBXvwz5eg2y/zczMPNo5Dj8x21S/zczMPPMENT/zBDW/zczMPDHbVD/aOQ6/zczMPF6DbD8V78O+zczMPL4Uez/CxUe+zczMPAAAgD9lZICkzczMPL4Uez/CxUc+zczMPF6DbD8V78M+zczMPDHbVD/aOQ4/zczMPPMENT/zBDU/zczMPNo5Dj8x21Q/zczMPBXvwz5eg2w/zczMPMLFRz6+FHs/zczMPDIxDSUAAIA/zczMPMLFR76+FHs/zczMPBXvw75eg2w/zczMPNo5Dr8x21Q/zczMPPMENb/zBDU/zczMPDHbVL/aOQ4/zczMPF6DbL8V78M+zczMPL4Ue7/CxUc+zczMPAAAgL8wMFolzczMPL4Ue7/CxUe+zczMPF6DbL8V78O+zczMPDHbVL/aOQ6/zczMPPMENb/zBDW/zczMPNo5Dr8x21S/zczMPBXvw75eg2y/zczMPMLFR76+FHu/zczMPDIxjaUAAIC/zczMPAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAAAAAIC/zczMvMLFRz6+FHu/zczMvBXvwz5eg2y/zczMvNo5Dj8x21S/zczMvPMENT/zBDW/zczMvDHbVD/aOQ6/zczMvF6DbD8V78O+zczMvL4Uez/CxUe+zczMvAAAgD///ZmkzczMvL4Uez/CxUc+zczMvF6DbD8V78M+zczMvDHbVD/aOQ4/zczMvPMENT/zBDU/zczMvNo5Dj8x21Q/zczMvBXvwz5eg2w/zczMvMLFRz6+FHs/zczMvDIxDSUAAIA/zczMvMLFR76+FHs/zczMvBXvw75eg2w/zczMvNo5Dr8x21Q/zczMvPMENb/zBDU/zczMvDHbVL/aOQ4/zczMvF6DbL8V78M+zczMvL4Ue7/CxUc+zczMvAAAgL9kY00lzczMvL4Ue7/CxUe+zczMvF6DbL8V78O+zczMvDHbVL/aOQ6/zczMvPMENb/zBDW/zczMvNo5Dr8x21S/zczMvBXvw75eg2y/zczMvMLFR76+FHu/zczMvDIxjaUAAIC/zczMvAAAAAAAAIC/AACAJcLFRz6+FHu/vhR7JRXvwz5eg2y/XoNsJdo5Dj8x21S/MdtUJfMENT/zBDW/8wQ1JTHbVD/aOQ6/2jkOJV6DbD8V78O+Fe/DJL4Uez/CxUe+wsVHJAAAgD8yMY2kMjGNCr4Uez/CxUc+wsVHpF6DbD8V78M+Fe/DpDHbVD/aOQ4/2jkOpfMENT/zBDU/8wQ1pdo5Dj8x21Q/MdtUpRXvwz5eg2w/XoNspcLFRz6+FHs/vhR7pTIxDSUAAIA/AACApcLFR76+FHs/vhR7pRXvw75eg2w/XoNspdo5Dr8x21Q/MdtUpfMENb/zBDU/8wQ1pTHbVL/aOQ4/2jkOpV6DbL8V78M+Fe/DpL4Ue7/CxUc+wsVHpAAAgL/KyVMlyslTi74Ue7/CxUe+wsVHJF6DbL8V78O+Fe/DJDHbVL/aOQ6/2jkOJfMENb/zBDW/8wQ1Jdo5Dr8x21S/MdtUJRXvw75eg2y/XoNsJcLFR76+FHu/vhR7JTIxjaUAAIC/AACAJQAAAAAAAIC/AACAJcLFRz6+FHu/vhR7JRXvwz5eg2y/XoNsJdo5Dj8x21S/MdtUJfMENT/zBDW/8wQ1JTHbVD/aOQ6/2jkOJV6DbD8V78O+Fe/DJL4Uez/CxUe+wsVHJAAAgD8yMY2kMjGNCr4Uez/CxUc+wsVHpF6DbD8V78M+Fe/DpDHbVD/aOQ4/2jkOpfMENT/zBDU/8wQ1pdo5Dj8x21Q/MdtUpRXvwz5eg2w/XoNspcLFRz6+FHs/vhR7pTIxDSUAAIA/AACApcLFR76+FHs/vhR7pRXvw75eg2w/XoNspdo5Dr8x21Q/MdtUpfMENb/zBDU/8wQ1pTHbVL/aOQ4/2jkOpV6DbL8V78M+Fe/DpL4Ue7/CxUc+wsVHpAAAgL/KyVMlyslTi74Ue7/CxUe+wsVHJF6DbL8V78O+Fe/DJDHbVL/aOQ6/2jkOJfMENb/zBDW/8wQ1Jdo5Dr8x21S/MdtUJRXvw75eg2y/XoNsJcLFR76+FHu/vhR7JTIxjaUAAIC/AACAJQAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIA/AAAAPQAAgD8AAIA9AACAPwAAwD0AAIA/AAAAPgAAgD8AACA+AACAPwAAQD4AAIA/AABgPgAAgD8AAIA+AACAPwAAkD4AAIA/AACgPgAAgD8AALA+AACAPwAAwD4AAIA/AADQPgAAgD8AAOA+AACAPwAA8D4AAIA/AAAAPwAAgD8AAAg/AACAPwAAED8AAIA/AAAYPwAAgD8AACA/AACAPwAAKD8AAIA/AAAwPwAAgD8AADg/AACAPwAAQD8AAIA/AABIPwAAgD8AAFA/AACAPwAAWD8AAIA/AABgPwAAgD8AAGg/AACAPwAAcD8AAIA/AAB4PwAAgD8AAIA/AACAPwAAAAAAAAAAAAAAPQAAAAAAAIA9AAAAAAAAwD0AAAAAAAAAPgAAAAAAACA+AAAAAAAAQD4AAAAAAABgPgAAAAAAAIA+AAAAAAAAkD4AAAAAAACgPgAAAAAAALA+AAAAAAAAwD4AAAAAAADQPgAAAAAAAOA+AAAAAAAA8D4AAAAAAAAAPwAAAAAAAAg/AAAAAAAAED8AAAAA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";var Nn="data:application/octet-stream;base64,Z2xURgIAAAAcQAAAAAkAAEpTT057ImFzc2V0Ijp7InZlcnNpb24iOiIyLjAifSwic2NlbmVzIjpbeyJub2RlcyI6WzJdfV0sInNjZW5lIjowLCJub2RlcyI6W3sibWVzaCI6MH0seyJtZXNoIjoxfSx7ImNoaWxkcmVuIjpbMCwxXX1dLCJidWZmZXJWaWV3cyI6W3siYnVmZmVyIjowLCJieXRlT2Zmc2V0IjowLCJieXRlTGVuZ3RoIjoyMzUyLCJ0YXJnZXQiOjM0OTYyLCJieXRlU3RyaWRlIjoxMn0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjIzNTIsImJ5dGVMZW5ndGgiOjIzNTIsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6NDcwNCwiYnl0ZUxlbmd0aCI6MTU2OCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6OH0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjYyNzIsImJ5dGVMZW5ndGgiOjc2OCwidGFyZ2V0IjozNDk2M30seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjcwNDAsImJ5dGVMZW5ndGgiOjIzNTIsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6OTM5MiwiYnl0ZUxlbmd0aCI6MjM1MiwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6MTJ9LHsiYnVmZmVyIjowLCJieXRlT2Zmc2V0IjoxMTc0NCwiYnl0ZUxlbmd0aCI6MTU2OCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6OH0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjEzMzEyLCJieXRlTGVuZ3RoIjo3NjgsInRhcmdldCI6MzQ5NjN9XSwiYnVmZmVycyI6W3siYnl0ZUxlbmd0aCI6MTQwODB9XSwiYWNjZXNzb3JzIjpbeyJidWZmZXJWaWV3IjowLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MTk2LCJtYXgiOlswLjM0OTk5OTk5NDAzOTUzNTUsMC4zNDk5OTk5OTQwMzk1MzU1LDAuMDcwMDAwMDAwMjk4MDIzMjJdLCJtaW4iOlstMC4zNDk5OTk5OTQwMzk1MzU1LC0wLjM0OTk5OTk5NDAzOTUzNTUsLTEuNDkwMTE2OTE4NzQ1MzQzNGUtMTBdLCJ0eXBlIjoiVkVDMyJ9LHsiYnVmZmVyVmlldyI6MSwiY29tcG9uZW50VHlwZSI6NTEyNiwiY291bnQiOjE5NiwibWF4IjpbMSwxLDFdLCJtaW4iOlstMSwtMSwtMV0sInR5cGUiOiJWRUMzIn0seyJidWZmZXJWaWV3IjoyLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MTk2LCJtYXgiOlsxLDFdLCJtaW4iOlswLDBdLCJ0eXBlIjoiVkVDMiJ9LHsiYnVmZmVyVmlldyI6MywiY29tcG9uZW50VHlwZSI6NTEyMywiY291bnQiOjM4NCwibWF4IjpbMTk1XSwibWluIjpbMF0sInR5cGUiOiJTQ0FMQVIifSx7ImJ1ZmZlclZpZXciOjQsImNvbXBvbmVudFR5cGUiOjUxMjYsImNvdW50IjoxOTYsIm1heCI6WzAuMjgwMDAwMDAxMTkyMDkyOSwwLjI4MDAwMDAwMTE5MjA5MjksMC4wNzUwMDAwMDI5ODAyMzIyNF0sIm1pbiI6Wy0wLjI4MDAwMDAwMTE5MjA5MjksLTAuMjgwMDAwMDAxMTkyMDkyOSwwLjA2NDk5OTk5NzYxNTgxNDIxXSwidHlwZSI6IlZFQzMifSx7ImJ1ZmZlclZpZXciOjUsImNvbXBvbmVudFR5cGUiOjUxMjYsImNvdW50IjoxOTYsIm1heCI6WzEsMSwxXSwibWluIjpbLTEsLTEsLTFdLCJ0eXBlIjoiVkVDMyJ9LHsiYnVmZmVyVmlldyI6NiwiY29tcG9uZW50VHlwZSI6NTEyNiwiY291bnQiOjE5NiwibWF4IjpbMSwxXSwibWluIjpbMCwwXSwidHlwZSI6IlZFQzIifSx7ImJ1ZmZlclZpZXciOjcsImNvbXBvbmVudFR5cGUiOjUxMjMsImNvdW50IjozODQsIm1heCI6WzE5NV0sIm1pbiI6WzBdLCJ0eXBlIjoiU0NBTEFSIn1dLCJtYXRlcmlhbHMiOlt7InBick1ldGFsbGljUm91Z2huZXNzIjp7ImJhc2VDb2xvckZhY3RvciI6WzAu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AACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIA/AAAAPQAAgD8AAIA9AACAPwAAwD0AAIA/AAAAPgAAgD8AACA+AACAPwAAQD4AAIA/AABgPgAAgD8AAIA+AACAPwAAkD4AAIA/AACgPgAAgD8AALA+AACAPwAAwD4AAIA/AADQPgAAgD8AAOA+AACAPwAA8D4AAIA/AAAAPwAAgD8AAAg/AACAPwAAED8AAIA/AAAYPwAAgD8AACA/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I2ZuPghLHz64HoU93b1KPt29Sj64HoU9CEsfPiNmbj64HoU9LHLbPYdyhD64HoU9xb5fPfqajD64HoU9niIeJClcjz64HoU9xb5fvfqajD64HoU9LHLbvYdyhD64HoU9CEsfviNmbj64HoU93b1Kvt29Sj64HoU9I2ZuvghLHz64HoU9h3KEvixy2z24HoU9+pqMvsW+Xz24HoU9KVyPvjUVaCS4HoU9+pqMvsW+X724HoU9h3KEvixy2724HoU9I2ZuvghLH764HoU93b1Kvt29Sr64HoU9CEsfviNmbr64HoU9LHLbvYdyhL64HoU9xb5fvfqajL64HoU9niKepClcj764HoU9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAClcj76amZk9xb5fPfqajL6amZk9LHLbPYdyhL6amZk9CEsfPiNmbr6amZk93b1KPt29Sr6amZk9I2ZuPghLH76amZk9h3KEPixy272amZk9+pqMPsW+X72amZk9KVyPPi3lk6OamZk9+pqMPsW+Xz2amZk9h3KEPixy2z2amZk9I2ZuPghLHz6amZk93b1KPt29Sj6amZk9CEsfPiNmbj6amZk9LHLbPYdyhD6amZk9xb5fPfqajD6amZk9niIeJClcjz6amZk9xb5fvfqajD6amZk9LHLbvYdyhD6amZk9CEsfviNmbj6amZk93b1Kvt29Sj6amZk9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AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgD8AAAA9AACAPwAAgD0AAIA/AADAPQAAgD8AAAA+AACAPwAAID4AAIA/AABAPgAAgD8AAGA+AACAPwAAgD4AAIA/AACQPgAAgD8AAKA+AACAPwAAsD4AAIA/AADAPgAAgD8AANA+AACAPwAA4D4AAIA/AADwPgAAgD8AAAA/AACAPwAACD8AAIA/AAAQPwAAgD8AABg/AACAPwAAID8AAIA/AAAoPwAAgD8AADA/AACAPwAAOD8AAIA/AABAPwAAgD8AAEg/AACAPwAAUD8AAIA/AABYPwAAgD8AAGA/AACAPwAAaD8AAIA/AABwPwAAgD8AAHg/AACAPwAAgD8AAIA/AAAAAAAAAAAAAAA9AAAAAAAAgD0AAAAAAADAPQAAAAAAAAA+AAAAAAAAID4AAAAAAABAPgAAAAAAAGA+AAAAAAAAgD4AAAAAAACQPgAAAAAAAKA+AAAAAAAAsD4AAAAAAADAPgAAAAAAANA+AAAAAAAA4D4AAAAAAADwPgAAAAAAAAA/AAAAAAAACD8AAAAAAAAQPwAAAAAAABg/AAAAAAAAID8AAAAAAAAoPwAAAAAAADA/AAAAAAAAOD8AAAAAAABAPwAAAAAAAEg/AAAAAAAAUD8AAAAAAABYPwAAAAAAAGA/AAAAAAAAaD8AAAAAAABwPwAAAAAAAHg/AAAAAAAAgD8AAAAAAAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAgD8AAAA/X4p9P7j4GD+vQXY/xfswP5ltaj/tHEc/eoJaP3qCWj/tHEc/mW1qP8X7MD+vQXY/uPgYP1+KfT8AAAA/AACAP5AOzj5fin0/dQiePq9Bdj9MjGM+mW1qPxr2FT56glo/O5OsPe0cRz8M5Rs9xfswPzBoHTy4+Bg/AAAAAAAAAD8waB08kA7OPgzlGz11CJ4+O5OsPUyMYz4a9hU+GvYVPkyMYz47k6w9dQiePgzlGz2QDs4+MGgdPAAAAD8AAAAAuPgYPzBoHTzF+zA/DOUbPe0cRz87k6w9eoJaPxr2FT6ZbWo/TIxjPq9Bdj91CJ4+X4p9P5AOzj4AAIA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAIA/AAAAP1+KfT+QDs4+r0F2P3UInj6ZbWo/TIxjPnqCWj8a9hU+7RxHPzuTrD3F+zA/DOUbPbj4GD8waB08AAAAPwAAAACQDs4+MGgdPHUInj4M5Rs9TIxjPjuTrD0a9hU+GvYVPjuTrD1MjGM+DOUbPXUInj4waB08kA7OPgAAAAAAAAA/MGgdPLj4GD8M5Rs9xfswPzuTrD3tHEc/GvYVPnqCWj9MjGM+mW1qP3UInj6vQXY/kA7OPl+KfT8AAAA/AACAP7j4GD9fin0/xfswP69Bdj/tHEc/mW1qP3qCWj96glo/mW1qP+0cRz+vQXY/xfswP1+KfT+4+Bg/AACAPwAAAD8AACEAAQAhACIAAQABACIAAgAiACMAAgACACMAAwAjACQAAwADACQABAAkACUABAAEACUABQAlACYABQAFACYABgAmACcABgAGACcABwAnACgABwAHACgACAAoACkACAAIACkACQApACoACQAJACoACgAqACsACgAKACsACwArACwACwALACwADAAsAC0ADAAMAC0ADQAtAC4ADQANAC4ADgAuAC8ADgAOAC8ADwAvADAADwAPADAAEAAwADEAEAAQADEAEQAxADIAEQARADIAEgAyADMAEgASADMAEwAzADQAEwATADQAFAA0ADUAFAAUADUAFQA1ADYAFQAVADYAFgA2ADcAFgAWADcAFwA3ADgAFwAXADgAGAA4ADkAGAAYADkAGQA5ADoAGQAZADoAGgA6ADsAGgAaADsAGwA7ADwAGwAbADwAHAA8AD0AHAAcAD0AHQA9AD4AHQAdAD4AHgA+AD8AHgAeAD8AHwA/AEAAHwAfAEAAIABAAEEAIABiAGMAQgBjAGQAQwBkAGUARABlAGYARQBmAGcARgBnAGgARwBoAGkASABpAGoASQBqAGsASgBrAGwASwBsAG0ATABtAG4ATQBuAG8ATgBvAHAATwBwAHEAUABxAHIAUQByAHMAUgBzAHQAUwB0AHUAVAB1AHYAVQB2AHcAVgB3AHgAVwB4AHkAWAB5AHoAWQB6AHsAWgB7AHwAWwB8AH0AXAB9AH4AXQB+AH8AXgB/AIAAXwCAAIEAYACBAIIAYQCkAKMAgwClAKQAhACmAKUAhQCnAKYAhgCoAKcAhwCpAKgAiACqAKkAiQCrAKoAigCsAKsAiwCtAKwAjACuAK0AjQCvAK4AjgCwAK8AjwCxALAAkACyALEAkQCzALIAkgC0ALMAkwC1ALQAlAC2ALUAlQC3ALYAlgC4ALcAlwC5ALgAmAC6ALkAmQC7ALoAmgC8ALsAmwC9ALwAnAC+AL0AnQC/AL4AngDAAL8AnwDBAMAAoADCAMEAoQDDAMIAogA=";var Bn="data:application/octet-stream;base64,Z2xURgIAAABQMgAANAUAAEpTT057ImFzc2V0Ijp7InZlcnNpb24iOiIyLjAiLCJnZW5lcmF0b3IiOiJUSFJFRS5HTFRGRXhwb3J0ZXIgcjE3MyJ9LCJzY2VuZXMiOlt7Im5hbWUiOiJBdXhTY2VuZSIsIm5vZGVzIjpbMF19XSwic2NlbmUiOjAsIm5vZGVzIjpbeyJtZXNoIjowfV0sImJ1ZmZlclZpZXdzIjpbeyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjAsImJ5dGVMZW5ndGgiOjI4ODAsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6Mjg4MCwiYnl0ZUxlbmd0aCI6MTkyMCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6OH0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjQ4MDAsImJ5dGVMZW5ndGgiOjI4ODAsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6NzY4MCwiYnl0ZUxlbmd0aCI6Mzg0MCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6MTZ9XSwiYnVmZmVycyI6W3siYnl0ZUxlbmd0aCI6MTE1MjB9XSwiYWNjZXNzb3JzIjpbeyJidWZmZXJWaWV3IjowLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MjQwLCJtYXgiOlswLjU3MjIzNDU3MDk4MDA3MiwxLjQ0NjA3ODQxOTY4NTM2MzgsMC4xMDAwMDAwMDE0OTAxMTYxMl0sIm1pbiI6Wy0wLjcxMjM0NjY3MzAxMTc3OTgsMCwwXSwidHlwZSI6IlZFQzMifSx7ImJ1ZmZlclZpZXciOjEsImNvbXBvbmVudFR5cGUiOjUxMjYsImNvdW50IjoyNDAsIm1heCI6WzAsMV0sIm1pbiI6WzAsMF0sInR5cGUiOiJWRUMyIn0seyJidWZmZXJWaWV3IjoyLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MjQwLCJtYXgiOlswLjk4NzY4ODMwMjk5Mzc3NDQsMC45OTk2NTczMzI4OTcxODYzLDFdLCJtaW4iOlstMC45ODc2ODgz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AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwEZZD9wcei+AAAAAAEZZD9wcei+AAAAAAEZZD9wcei+AAAAAAEZZD9wcei+AAAAAAEZZD9wcei+AAAAAAEZZD9wcei+AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wIL4k2Xy/AAAAAF8wIL4k2Xy/AAAAAF8wIL4k2Xy/AAAAAF8wIL4k2Xy/AAAAgF8wIL4k2Xy/AAAAgF8wIL4k2Xy/AAAAgHBx6L4BGWS/AAAAAHBx6L4BGWS/AAAAAHBx6L4BGWS/AAAAAHBx6L4BGWS/AAAAgHBx6L4BGWS/AAAAgHBx6L4BGWS/AAAAgPMENb/zBDW/AAAAAPMENb/zBDW/AAAAAPMENb/zBDW/AAAAAPMENb/zBDW/AAAAgPMENb/zBDW/AAAAgPMENb/zBDW/AAAAgAEZZL9wcei+AAAAAAEZZL9wcei+AAAAAAEZZL9wcei+AAAAAAEZZL9wcei+AAAAgAEZZL9wcei+AAAAgAEZZL9wcei+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AACAPwAAgD8AAIA/B+hKPwAAgD8AAIA/AACAPwfoSj8AAIA/AACAPwAAgD/+bEg/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAA==";var rn=class rn extends Error{};a(rn,"InvalidTokenError");var on=rn;on.prototype.name="InvalidTokenError";var $n=63710088e-1;var ar="[MappedinJS]";function sn(r="",{prefix:i=ar}={}){let t=`${i}${r?`-${r}`:""}`,n=a((o,l)=>{if(typeof window<"u"&&window.rnDebug){let d=l.map(c=>c instanceof Error&&c.stack?`${c.message}\n${c.stack}`:c);window.rnDebug(`${r} ${o}: ${d.join(" ")}`)}},"rnDebug");return{logState:0,log(...o){this.logState<=0&&(console.log(t,...o),n("log",o))},warn(...o){this.logState<=1&&(console.warn(t,...o),n("warn",o))},error(...o){this.logState<=2&&(console.error(t,...o),n("error",o))},assert(...o){console.assert(...o)},time(o){console.time(o)},timeEnd(o){console.timeEnd(o)},setLevel(o){0<=o&&o<=3&&(this.logState=o)}}}a(sn,"createLogger");var ns=sn();function Q(r){return r*(Math.PI/180)}a(Q,"toRadians");function Di(r){return r*(180/Math.PI)}a(Di,"toDegrees");function Un(r,i){return(r%i+i)%i}a(Un,"euclideanModulo");function an([r,i],[t,n]){let o=Q(n-i),l=Q(t-r),d=Q(i),c=Q(n),m=Math.sin(o/2)*Math.sin(o/2)+Math.sin(l/2)*Math.sin(l/2)*Math.cos(d)*Math.cos(c),f=2*Math.atan2(Math.sqrt(m),Math.sqrt(1-m));return $n*f}a(an,"haversineDistance");function Vn([r,i],[t,n]){let o=Q(i),l=Q(r),d=Q(n),m=Q(t)-l,f=Math.sin(m)*Math.cos(d),b=Math.cos(o)*Math.sin(d)-Math.sin(o)*Math.cos(d)*Math.cos(m);return Di((Math.atan2(f,b)+Math.PI*2)%(Math.PI*2))}a(Vn,"getForwardBearing");function Hn(r,i){let t=Un(r,Math.PI*2),n=Un(i,Math.PI*2),o=n-t,l=n+(o>Math.PI?-Math.PI*2:o<-Math.PI?Math.PI*2:0);return{start:t,end:l}}a(Hn,"shortestTweenRotation");var h=sn("",{prefix:"[BlueDot]"});function ln(r,i){if(i==null)return r;let t={...r};for(let n in i){let o=i[n];o!==void 0&&n!=="accuracyRing"&&n!=="heading"&&(t[n]=o)}if(i.accuracyRing!=null){t.accuracyRing={...r.accuracyRing};for(let n in i.accuracyRing){let o=i.accuracyRing[n];o!==void 0&&(t.accuracyRing[n]=o)}}if(i.heading!=null){t.heading={...r.heading};for(let n in i.heading){let o=i.heading[n];o!==void 0&&(t.heading[n]=o)}}return t}a(ln,"deepMergeState");function ur([r,i],[t,n],[o,l]){let d=t-r,c=n-i,m=d**2+c**2;if(m===0)return;let f=((o-r)*d+(l-i)*c)/m,b;f<=0?b=[r,i]:f>=1?b=[t,n]:b=[r+f*d,i+f*c];let T=an([o,l],b);return{proportion:Math.max(0,Math.min(1,f)),intersection:b,distance:T}}a(ur,"getPointLineIntersection");function kn(r,i){if(r==null||r.length<2)return;let t=Number.MAX_SAFE_INTEGER,n,o=0,l=0;for(let d=0;d<r.length-1;d++){let c=r[d],m=r[d+1],f=ur(c,m,i);f!=null&&f.distance<t&&(t=f.distance,n=f.intersection,o=d,l=f.proportion)}if(n)return{intersection:n,distance:t,segmentIndex:o,proportion:l}}a(kn,"findBlueDotOnPath");function Jn(r,i){if(i==null)return r;let t={latitude:r?.latitude,longitude:r?.longitude,accuracy:r?.accuracy,floor:r?.floor,heading:r?.heading,timestamp:r?.timestamp};return"latitude"in i&&(t.latitude=i?.latitude==null||i.latitude==="device"?r?.latitude:i.latitude),"longitude"in i&&(t.longitude=i.longitude==null||i.longitude==="device"?r?.longitude:i.longitude),"accuracy"in i&&(t.accuracy=i.accuracy==="device"?r?.accuracy:i.accuracy),"floor"in i&&(t.floor=i.floor==="device"?r?.floor:i.floor),"heading"in i&&(t.heading=i.heading==="device"?r?.heading:i.heading),"timestamp"in i&&(t.timestamp=i.timestamp),t}a(Jn,"getPositionWithOverrides");function qn({longitude:r,latitude:i},{radius:t,center:n}){return an([r,i],[n.longitude,n.latitude])<=t}a(qn,"isWithinPanBounds");function Kn(r,i){let t=r*i/.35;return Math.max(t,1)}a(Kn,"computeBlueDotScale");function Wn(r,i,t,n=!0){return n?i!=null&&(r==="active"||r==="inactive"&&t):!1}a(Wn,"shouldShowHeadingCone");function zn(r,i=!0){return i?r!=="hidden"&&r!=="disabled":!1}a(zn,"shouldShowBlueDot");function jn(r,i,t=!0){return t&&r==="active"&&i!=null}a(jn,"shouldShowAccuracyRing");function un(r,i,t){if(t!=null&&"discardStaleUpdates"in t&&t.discardStaleUpdates===!1)return!1;let n=r!=null&&i!=null&&r<i;return n&&t?.debug===!0&&h.log(`Stale timestamp discarded (incoming: ${r}, current: ${i})`),n}a(un,"isStaleTimestamp");function dn(r,i){let t=r!=null?Q(r):0,n=i!=null?Q(-i):0,{start:o,end:l}=Hn(t,n);return[Di(o),Di(l)]}a(dn,"computeHeadingRotation");var y,N,L,Ve,xe,q,ee,te,ie,ne,oe,be,Me,we,ge,it,Lt,nt,ot,P,Zn,Ue,cn,Xn,Yn,Rt,Qn,Ct,hn,eo,to,io,no,mn=class mn{constructor(i,t){u(this,P);u(this,y);u(this,N);u(this,L,1);u(this,Ve,0);u(this,xe,!1);u(this,q);u(this,ee);u(this,te);u(this,ie);u(this,ne);u(this,oe);u(this,be);u(this,Me);u(this,we);u(this,ge);u(this,it,!1);g(this,"dot");g(this,"accuracyRing");g(this,"headingCone");u(this,Lt,a(i=>{e(this,Ct).call(this,i)},"#handleCameraChange"));g(this,"add",a(i=>{this.remove(),e(this,Ct).call(this,{zoomLevel:e(this,y).Camera.zoomLevel}),s(this,be,i.floor);let t=new He.Coordinate({latitude:i.latitude,longitude:i.longitude});this.accuracyRing=e(this,y).Models.add(t,Fn,{visible:!1,scale:i.accuracy??0,rotation:[0,0,0],color:e(this,N).getState().accuracyRing.color,opacity:e(this,N).getState().accuracyRing.opacity,visibleThroughGeometry:!0}),this.headingCone=e(this,y).Models.add(t,Bn,{visible:!1,scale:e(this,L),rotation:[0,0,0],color:e(this,N).getState().heading.color,opacity:e(this,N).getState().heading.opacity,visibleThroughGeometry:!0}),this.dot=e(this,y).Models.add(t,Nn,{visible:!1,scale:e(this,L),rotation:[0,0,0],interactive:!0,visibleThroughGeometry:!0,material:{Inner:{color:e(this,N).status==="inactive"?e(this,N).getState().inactiveColor:e(this,N).getState().color}}})},"add"));u(this,nt);u(this,ot);g(this,"update",a((i,t={},n)=>{let{position:o,status:l,accuracy:d,heading:c}=i;d!=null&&s(this,nt,d),c!=null&&s(this,ot,c),l&&p(this,P,no).call(this,l),t.animate?p(this,P,Yn).call(this,o,d,c,n):(p(this,P,cn).call(this),p(this,P,Xn).call(this,o,d,c,n))},"update"));u(this,Rt,a(()=>{p(this,P,Qn).call(this),e(this,xe)&&(s(this,xe,!1),p(this,P,hn).call(this))},"#handlePreRender"));u(this,Ct,a(i=>{let t=e(this,y).getMetersPerPixel();if(e(this,Ve)!==0&&Math.abs(t-e(this,Ve))<=.01*e(this,Ve))return;s(this,Ve,t);let n=Kn(e(this,N).getState().radius,t);n!==e(this,L)&&(s(this,L,n),this.dot&&e(this,y).updateState(this.dot,{scale:[e(this,L),e(this,L),e(this,L)]}),this.headingCone&&e(this,y).updateState(this.headingCone,{scale:[e(this,L),e(this,L),1]}))},"#syncScale"));g(this,"remove",a(()=>{s(this,it,!0),p(this,P,cn).call(this),s(this,it,!1),s(this,q,void 0),s(this,ee,void 0),s(this,te,void 0),s(this,be,void 0),s(this,Me,void 0),s(this,we,void 0),s(this,ge,void 0),s(this,nt,void 0),s(this,ot,void 0),this.dot&&(e(this,y).Models.remove(this.dot),this.dot=void 0),this.accuracyRing&&(e(this,y).Models.remove(this.accuracyRing),this.accuracyRing=void 0),this.headingCone&&(e(this,y).Models.remove(this.headingCone),this.headingCone=void 0)},"remove"));g(this,"destroy",a(()=>{this.remove(),e(this,y).off("pre-render",e(this,Rt)),e(this,y).off("camera-change",e(this,Lt))},"destroy"));s(this,y,i),s(this,N,t),e(this,y).on("pre-render",e(this,Rt)),e(this,y).on("camera-change",e(this,Lt))}getPosition(){if(this.dot!=null)return e(this,y).getState(this.dot).position}updateFloor(i){e(this,be)?.id!==i?.id&&(s(this,we,Date.now()),s(this,ge,e(this,Me)??p(this,P,Zn).call(this)),s(this,be,i))}};y=new WeakMap,N=new WeakMap,L=new WeakMap,Ve=new WeakMap,xe=new WeakMap,q=new WeakMap,ee=new WeakMap,te=new WeakMap,ie=new WeakMap,ne=new WeakMap,oe=new WeakMap,be=new WeakMap,Me=new WeakMap,we=new WeakMap,ge=new WeakMap,it=new WeakMap,Lt=new WeakMap,nt=new WeakMap,ot=new WeakMap,P=new WeakSet,Zn=a(function(){return this.dot?e(this,y).getState(this.dot)?.verticalOffset??0:0},"#getCurrentAltitude"),Ue=a(function(i){i&&(i.stop(),e(this,y).removeTween(i))},"#stopTween"),cn=a(function(){s(this,ie,p(this,P,Ue).call(this,e(this,ie))),s(this,ne,p(this,P,Ue).call(this,e(this,ne))),s(this,oe,p(this,P,Ue).call(this,e(this,oe)))},"#stopAllTweens"),Xn=a(function(i,t,n,o){if(i&&(s(this,q,{longitude:i.longitude,latitude:i.latitude}),typeof o=="function"&&o(e(this,q),!0)),t!=null&&s(this,ee,t),n!=null){let[,l]=dn(e(this,te),n);s(this,te,l)}p(this,P,hn).call(this)},"#setImmediate"),Yn=a(function(i,t,n,o){if(i){let l={longitude:i.longitude,latitude:i.latitude},d=e(this,q)??p(this,P,eo).call(this)??l;s(this,q,{...d}),s(this,ie,p(this,P,Ue).call(this,e(this,ie))),s(this,ie,e(this,y).tween({longitude:d.longitude,latitude:d.latitude}).to(l,1e3).easing(He.ANIMATION_TWEENS["ease-out"]).onUpdate(({longitude:c,latitude:m},f)=>{s(this,q,{longitude:c,latitude:m}),s(this,xe,!0),typeof o=="function"&&o(e(this,q),f>=1)}).onStop(({longitude:c,latitude:m})=>{e(this,it)||typeof o=="function"&&o({longitude:c,latitude:m},!1)}).onComplete(()=>{e(this,ie)&&(e(this,y).removeTween(e(this,ie)),s(this,ie,void 0))}).start())}if(t!=null){let l=t,d=e(this,ee)??p(this,P,to).call(this)??l;s(this,ee,d),s(this,ne,p(this,P,Ue).call(this,e(this,ne))),s(this,ne,e(this,y).tween({scale:d}).to({scale:l},150).easing(He.ANIMATION_TWEENS.linear).onUpdate(({scale:c})=>{s(this,ee,c),s(this,xe,!0)}).onComplete(()=>{e(this,ne)&&(e(this,y).removeTween(e(this,ne)),s(this,ne,void 0))}).start())}if(n!=null){let[l,d]=dn(e(this,te)??p(this,P,io).call(this),n);s(this,te,l),s(this,oe,p(this,P,Ue).call(this,e(this,oe))),s(this,oe,e(this,y).tween({rotation:l}).to({rotation:d},150).easing(He.ANIMATION_TWEENS.linear).onUpdate(({rotation:c})=>{s(this,te,c),s(this,xe,!0)}).onComplete(()=>{e(this,oe)&&(e(this,y).removeTween(e(this,oe)),s(this,oe,void 0))}).start())}},"#animateToTarget"),Rt=new WeakMap,Qn=a(function(){if(!this.dot||e(this,N).status==="hidden"||e(this,N).status==="disabled")return;let i=e(this,be)?e(this,y).getState(e(this,be))?.altitude??0:e(this,y).getState(e(this,y).currentFloor)?.altitude??0,t=i;if(e(this,we)!=null&&e(this,ge)!=null){let n=Date.now()-e(this,we),o=Math.min(n/1e3,1);if(o<1){let l=1-Math.pow(1-o,3);t=e(this,ge)+(i-e(this,ge))*l}else s(this,we,void 0),s(this,ge,void 0)}if(e(this,Me)==null||Math.abs(e(this,Me)-t)>.001){s(this,Me,t);let n={verticalOffset:t};e(this,y).updateState(this.dot,n),this.accuracyRing&&e(this,y).updateState(this.accuracyRing,n),this.headingCone&&e(this,y).updateState(this.headingCone,n)}},"#syncAltitude"),Ct=new WeakMap,hn=a(function(){let i=e(this,q)?new He.Coordinate({latitude:e(this,q).latitude,longitude:e(this,q).longitude}):void 0;if(this.dot){let t={scale:[e(this,L),e(this,L),e(this,L)]};i&&(t.position=i),e(this,y).updateState(this.dot,t)}if(this.accuracyRing){let t={};i&&(t.position=i),e(this,ee)!=null&&(t.scale=[e(this,ee),e(this,ee),1]),e(this,y).updateState(this.accuracyRing,t)}if(this.headingCone){let t={scale:[e(this,L),e(this,L),1]};i&&(t.position=i),e(this,te)!=null&&(t.rotation=[0,0,e(this,te)]),e(this,y).updateState(this.headingCone,t)}},"#applyAllModels"),eo=a(function(){if(!this.dot)return;let i=e(this,y).getState(this.dot);if(i?.position)return{longitude:i.position.longitude,latitude:i.position.latitude}},"#readCurrentPosition"),to=a(function(){return this.accuracyRing?e(this,y).getState(this.accuracyRing)?.scale?.[0]:void 0},"#readCurrentAccuracyScale"),io=a(function(){return this.headingCone?e(this,y).getState(this.headingCone)?.rotation?.[2]:void 0},"#readCurrentHeadingRotation"),no=a(function(i){let t=e(this,N).getState(),n=i==="active",o=zn(i,t.visible);if(this.dot){let l={visible:o};o&&(l.material={Inner:{color:n?t.color:t.inactiveColor}}),e(this,y).updateState(this.dot,l)}this.accuracyRing&&e(this,y).updateState(this.accuracyRing,{visible:jn(i,e(this,nt),t.accuracyRing.visible)}),this.headingCone&&e(this,y).updateState(this.headingCone,{visible:Wn(i,e(this,ot),t.heading.displayWhenInactive,t.heading.visible),color:n?t.heading.color:t.inactiveColor})},"#applyStatusAndAppearance"),a(mn,"ModelManager");var xi=mn;var I=vi(_t("zod")),oo=I.default.object({coords:I.default.object({latitude:I.default.number(),longitude:I.default.number(),accuracy:I.default.number(),altitude:I.default.number().optional().nullable(),altitudeAccuracy:I.default.number().optional().nullable(),heading:I.default.number().optional().nullable(),speed:I.default.number().optional().nullable(),floorLevel:I.default.number().optional().nullable()}),timestamp:I.default.number()}),ro=I.default.object({latitude:I.default.number(),longitude:I.default.number(),floor:I.default.any().optional(),accuracy:I.default.number().optional(),heading:I.default.number().optional().nullable(),timestamp:I.default.number().optional()});var so={hidden:{actions:{enable:"hidden",error:"hidden","position-update":"active",initialize:"inactive",disable:"disabled",timeout:"hidden"}},active:{actions:{enable:"active",disable:"disabled","position-update":"active",error:"inactive",timeout:"inactive"}},inactive:{actions:{enable:"inactive",disable:"disabled","position-update":"active",error:"inactive",timeout:"inactive"}},disabled:{actions:{enable:"hidden",disable:"disabled"}}};var j,de,rt,fn=class fn extends V{constructor(){super();u(this,j,"disabled");u(this,de);u(this,rt,!1)}get current(){return e(this,j)}get isEnabled(){return e(this,j)!=="disabled"}setDebug(t){s(this,rt,t)}transitionTo(t){let n=so[e(this,j)].actions[t];if(n==null){h.warn(`Invalid state transition from ${e(this,j)} to ${n} using ${t}`);return}n!==e(this,j)&&(e(this,rt)&&h.log(`Transitioning from ${e(this,j)} to ${n} using ${t}`),s(this,j,n),this.publish("status-change",{status:n,action:t}))}resetTimer(t){e(this,de)&&(clearTimeout(e(this,de)),s(this,de,void 0)),typeof t=="number"&&t<1/0&&s(this,de,setTimeout(()=>{e(this,rt)&&h.log(`Position timed out after ${t}ms`),this.transitionTo("timeout")},t))}clearTimer(){e(this,de)&&(clearTimeout(e(this,de)),s(this,de,void 0))}disable(){this.clearTimer(),this.transitionTo("disable")}shouldUpdateGeometry(){return e(this,j)!=="hidden"&&e(this,j)!=="disabled"}destroy(){this.clearTimer(),super.destroy()}};j=new WeakMap,de=new WeakMap,rt=new WeakMap,a(fn,"StatusManager");var Mi=fn;var lo=vi(ao());function Tr(r,i){let t=r.x-i.x,n=r.y-i.y;return Math.sqrt(t*t+n*n)}a(Tr,"calculatePixelDistance");function Pr(r){return{x:r.width/2,y:r.height/2}}a(Pr,"getContainerCenter");function uo(r,i){if(i.width===0||i.height===0)return;let t=Pr(i);return Tr(r,t)}a(uo,"calculateDistanceFromCenter");function co(r){let t=Math.min(r.width,r.height)*.22;return Math.max(96,Math.min(180,t))}a(co,"computePanExitThresholdPixels");function ho(r,i){return r!=null&&r>i}a(ho,"shouldExitFollowMode");function mo(r,i){return{zoomLevel:i?.zoomLevel??21,bearing:r==="position-only"?i?.bearing:void 0,pitch:i?.pitch??45}}a(mo,"createDefaultCameraTarget");function fo(r){return{duration:r?.duration??1e3,easing:r?.easing??"ease-in-out"}}a(fo,"createDefaultCameraOptions");function po(r,i,t=1e-5){let o=r.filter(d=>d.floorId===i).map(d=>({x:d.longitude,y:d.latitude}));return(0,lo.default)(o,t).map(d=>[d.x,d.y])}a(po,"simplifyPathCoordinates");function Sr(r,i){let t=kn(r,i);if(t==null)return;let n=r[t.segmentIndex],o=r[t.segmentIndex+1];if(!(n==null||o==null))return Vn(n,o)}a(Sr,"computePathBearing");function bo(r,i,t,n,o){if(r==="position-and-heading")return i??void 0;if(r==="position-and-path-direction"&&n!=null)return Sr(n,o);if(r==="position-only"&&t!=null)return t}a(bo,"computeFollowBearing");var E,Ae,ye,ke,Z,Je,Oe,_e,Gt,Ft,Nt,st,go,Bt,yo,pn=class pn extends V{constructor(t){super();u(this,st);u(this,E);u(this,Ae,!1);u(this,ye);u(this,ke);u(this,Z);u(this,Je);u(this,Oe,!1);u(this,_e);g(this,"cancel",a(()=>{e(this,E).Camera.isAnimating&&e(this,E).Camera.cancelAnimation(),s(this,Ae,!1),s(this,Oe,!1),s(this,ye,void 0),s(this,ke,void 0),s(this,Z,void 0),s(this,Je,void 0),s(this,_e,void 0),e(this,E).off("user-interaction-start",e(this,Gt)),e(this,E).off("user-interaction-end",e(this,Ft)),e(this,E).off("camera-change",e(this,Nt)),e(this,E).off("navigation-active-path-change",e(this,Bt)),this.publish("follow-change",{following:!1})},"cancel"));u(this,Gt,a(()=>{s(this,Oe,!0),e(this,E).Camera.isAnimating&&e(this,E).Camera.cancelAnimation()},"#handleUserInteractionStart"));u(this,Ft,a(()=>{s(this,Oe,!1),e(this,Z)!=null&&(e(this,Z).zoomLevel=e(this,E).Camera.zoomLevel,e(this,Z).pitch=e(this,E).Camera.pitch)},"#handleUserInteractionEnd"));u(this,Nt,a(()=>{if(!e(this,Oe)||e(this,_e)==null)return;let t=e(this,E).container.getBoundingClientRect(),n=p(this,st,go).call(this,t),o=co({width:t.width,height:t.height});ho(n,o)&&this.cancel()},"#handleCameraChange"));u(this,Bt,a(()=>{s(this,ye,void 0)},"#handlePathChange"));s(this,E,t)}get isFollowing(){return e(this,Ae)}start(t,n){if(t===!1){this.cancel();return}t!=="position-only"&&n?.bearing!=null&&h.warn(`Camera bearing option will be ignored in follow mode \'${t}\'. To control the bearing manually, use mode \'position-only\'.`),s(this,ke,t),s(this,Z,mo(t,n)),s(this,Je,fo(n)),e(this,Ae)||(s(this,Ae,!0),e(this,E).on("user-interaction-start",e(this,Gt)),e(this,E).on("user-interaction-end",e(this,Ft)),e(this,E).on("camera-change",e(this,Nt)),e(this,E).on("navigation-active-path-change",e(this,Bt))),this.publish("follow-change",{following:!0,mode:t})}handlePositionUpdate(t){if(!e(this,Ae)||!e(this,ke)||!e(this,Z)||!e(this,Je))return;let{coordinate:n,heading:o,floor:l}=t;if(s(this,_e,n),e(this,Oe))return;l!=null&&l.id!==e(this,E).currentFloor.id&&(e(this,E).setFloor(l.id),s(this,ye,void 0));let d=bo(e(this,ke),o,e(this,Z).bearing,p(this,st,yo).call(this),[n.longitude,n.latitude]),c={center:n,zoomLevel:e(this,Z).zoomLevel,pitch:e(this,Z).pitch,bearing:d};e(this,E).Camera.animateTo(c,e(this,Je))}destroy(){this.cancel(),super.destroy()}};E=new WeakMap,Ae=new WeakMap,ye=new WeakMap,ke=new WeakMap,Z=new WeakMap,Je=new WeakMap,Oe=new WeakMap,_e=new WeakMap,Gt=new WeakMap,Ft=new WeakMap,Nt=new WeakMap,st=new WeakSet,go=a(function(t){if(e(this,_e)==null)return;let n=e(this,E).getScreenCoordinateFromCoordinate(e(this,_e));return uo(n,{width:t.width,height:t.height})},"#getPixelDistanceFromCenter"),Bt=new WeakMap,yo=a(function(){if(e(this,ye)==null&&e(this,E).Navigation.activeDirections!=null){let t=Array.isArray(e(this,E).Navigation.activeDirections)?e(this,E).Navigation.activeDirections.flatMap(n=>n.coordinates):e(this,E).Navigation.activeDirections.coordinates;s(this,ye,po(t,e(this,E).currentFloor.id))}return e(this,ye)},"#getSimplifiedDirections"),a(pn,"FollowController");var Ai=pn;function $t(){return typeof window<"u"&&window!==null}a($t,"isBrowser");function Er(r){return $t()?(typeof r=="object"||typeof r=="function")&&r!==null&&"requestPermission"in r&&typeof r.requestPermission=="function":!1}a(Er,"hasRequestPermission");async function vr(r){if(!Er(r))return"unavailable";try{return await r.requestPermission()}catch{return"denied"}}a(vr,"requestPermission");function bn(r){return $t()?typeof r<"u"&&r!=null:!1}a(bn,"supportsEvent");async function gn(r){if(!bn(r))return"unavailable";let i=await vr(r);return i!=="unavailable"?i:"granted"}a(gn,"requestEventPermission");function Dr(r){return $t()?typeof navigator<"u"&&navigator!=null&&typeof navigator[r]<"u"&&navigator[r]!=null:!1}a(Dr,"supportsNavigatorAPI");async function To(){return Dr("geolocation")?new Promise(r=>{navigator.geolocation.getCurrentPosition(()=>r("granted"),i=>{i.code===i.PERMISSION_DENIED?r("denied"):r("granted")},{enableHighAccuracy:!0})}):"unavailable"}a(To,"requestGeolocationPermission");var xr=(()=>{let r;return{getDeviceType(){if(r)return r;let{userAgent:i,platform:t,maxTouchPoints:n}=window.navigator,o=/(iphone|ipod|ipad)/i.test(i),l=t==="iPad"||t.indexOf("Mac")===0&&n>0&&!window.MSStream,d=/android/i.test(i);return r={isIpad:l,isMobile:d||o||l,isIOS:o,isAndroid:d,isSafari12:/Version\\/12.+Safari/.test(i),isFirefox:/Firefox/.test(i),isWindows:/windows/i.test(i)},r},_reset(){r=void 0}}})(),Te=xr.getDeviceType,Po=(()=>{let r,i,t;function n(){if(i!==void 0)return i;r||(r=document.createElement("canvas"));let l=r.getContext("webgl")||r.getContext("experimental-webgl");if(!l)return i;try{let d=Te().isFirefox?null:l.getExtension("WEBGL_debug_renderer_info");return i=d?l.getParameter(d.UNMASKED_RENDERER_WEBGL):l.getParameter(l.RENDERER),i}catch{let c=new Error("Failed getting device info");throw c.name="FailedGettingDeviceInfo",c}}a(n,"getInfo");function o(){if(!Te().isWindows)return!1;if(t!==void 0)return t;let l=Mr()?.toLowerCase()??"";return t=l.includes("intel")&&(l.includes("uhd")||l.includes("iris")),t}return a(o,"shouldDisableOffscreenCanvas"),{getInfo:n,shouldDisableOffscreenCanvas:o,_setCanvas(l){r=l,i=void 0,t=void 0}}})(),Mr=Po.getInfo,aa=Po.shouldDisableOffscreenCanvas;var yn=class yn extends V{constructor(){super();g(this,"enabled",!1)}get isEnabled(){return this.enabled}onFusedPosition(t){}setAnchor(t){let n={latitude:t.latitude,longitude:t.longitude,heading:t.heading,floorLevel:t.floorLevel,sensorId:this.id,timestamp:Date.now(),ttl:t.ttl??3e4,confidence:t.confidence??1},o=t.anchorOnlyPeriodMs!=null?{anchorOnlyPeriodMs:t.anchorOnlyPeriodMs}:void 0;this.publish("anchor-set",{sensorId:this.id,anchor:n,configOverride:o})}clearAnchor(){this.publish("anchor-clear",{sensorId:this.id})}async enable(){if(this.enabled)return"granted";if(this.requiresPermission){let t=await this.checkPermission();if(t==="unavailable")return h.error(`Sensor "${this.id}" is unavailable on this device.`),t;let n=await this.requestPermission();if(n!=="granted")return h.error(`Permission declined for sensor "${this.id}".`),n}try{return await this.start(),this.enabled=!0,"granted"}catch(t){return h.error(`Error starting sensor "${this.id}".`,t),"unavailable"}}disable(){this.stop(),this.enabled=!1}};a(yn,"BaseSensor");var X=yn;function Oi(r,i,t){let n=null,o=null,l,d=null,c=0;t||(t={});let m=a(function(){c=t.leading===!1?0:Date.now(),d=null,o&&(l=r.apply(n,o)),d||(n=o=null)},"later");return function(...f){let b=Date.now();!c&&t.leading===!1&&(c=b);let T=i-(b-c);return T<=0||T>i?(d&&(clearTimeout(d),d=null),c=b,l=r.apply(this,f),d||(n=o=null)):!d&&t.trailing!==!1&&(n=this,o=f,d=setTimeout(m,T)),l}}a(Oi,"throttle");var So=["devicemotion","deviceorientation","deviceorientationabsolute","geolocation"];var qe,_i,Eo,Pn=class Pn{constructor(){u(this,_i);u(this,qe,new Map);this.reset()}async check(i){return e(this,qe).get(i)??"unavailable"}async request(i){let t="unavailable";switch(i){case"geolocation":t=await To();break;case"devicemotion":t=await gn(window?.DeviceMotionEvent);break;case"deviceorientation":t=await gn(window?.DeviceOrientationEvent);break;case"deviceorientationabsolute":t="granted";break;default:h.warn(`Unsupported permission type requested: ${i}`);break}return p(this,_i,Eo).call(this,i,t),t}reset(){for(let i of So)e(this,qe).set(i,"prompt")}};qe=new WeakMap,_i=new WeakSet,Eo=a(function(i,t){e(this,qe).get(i)!==t&&e(this,qe).set(i,t)},"#updatePermissionState"),a(Pn,"BrowserPermissions");var Tn=Pn,Pe=new Tn;var Ie,at,lt,Ut,Sn=class Sn extends X{constructor(){super();g(this,"id","deviceorientation");u(this,Ie);u(this,at,null);u(this,lt,2);g(this,"start",a(async()=>{window.addEventListener(e(this,Ie),e(this,Ut))},"start"));g(this,"stop",a(()=>{window.removeEventListener(e(this,Ie),e(this,Ut))},"stop"));g(this,"checkPermission",a(async()=>Pe.check(e(this,Ie)),"checkPermission"));g(this,"requestPermission",a(async()=>Pe.request(e(this,Ie)),"requestPermission"));u(this,Ut,Oi(t=>{let n=Math.round(t.webkitCompassHeading??-(t.alpha??0)),o=n-(e(this,at)??0);if(typeof n=="number"&&Math.abs(o)>e(this,lt)){let l=e(this,at)==null;s(this,at,n),l&&h.log(`Compass: first heading ${n}\\xB0`),this.publish("absolute-update",{sensorId:this.id,update:{heading:n,timestamp:Date.now(),confidence:1}})}},100));s(this,Ie,typeof DeviceOrientationEvent<"u"&&(bn(DeviceOrientationEvent)||Te().isIOS)?"deviceorientation":"deviceorientationabsolute")}get requiresPermission(){return Te().isIOS}configure(t){t.deltaThreshold!==void 0&&s(this,lt,Math.max(t.deltaThreshold,.5))}getConfig(){return{deltaThreshold:e(this,lt)}}};Ie=new WeakMap,at=new WeakMap,lt=new WeakMap,Ut=new WeakMap,a(Sn,"DeviceOrientationSensor");var Ii=Sn;var xo=vi(_t("zod"));var vo={maxPlausibleSpeed:10,minTimeForSpeedCheck:500};function Ar(r,i,t,n){let o=111320*Math.cos(r*Math.PI/180),l=(t-r)*111320,d=(n-i)*o;return Math.sqrt(l*l+d*d)}a(Ar,"calculateDistance");function Or(r,i,t){let n=Ar(r.latitude,r.longitude,i.latitude,i.longitude),o=(i.timestamp-r.timestamp)/1e3;if(o<t.minTimeForSpeedCheck/1e3)return{isOutlier:!1,distance:n,timeDelta:o,impliedSpeed:0};let l=n/o;return{isOutlier:l>t.maxPlausibleSpeed,distance:n,timeDelta:o,impliedSpeed:l}}a(Or,"checkForOutlier");function Do(r,i,t){return r==null?{isOutlier:!1,distance:0,timeDelta:0,impliedSpeed:0}:Or(r,i,t)}a(Do,"checkForOutlierSafe");var Le,ut,dt,Ke,Ri,Vt,Ci,Gi,En=class En extends X{constructor(){super(...arguments);g(this,"id","geolocation");g(this,"requiresPermission",!1);u(this,Le);u(this,ut,!1);u(this,dt);u(this,Ke,vo);u(this,Ri,a(t=>{if(this.isEnabled===!1)return;if(t==null||t.coords==null){let d={code:2,message:"Invalid position received",PERMISSION_DENIED:1,POSITION_UNAVAILABLE:2,TIMEOUT:3};e(this,Vt).call(this,d);return}let n=e(this,Ci).call(this,t);if(n==null)return;let o={latitude:n.latitude,longitude:n.longitude,timestamp:n.timestamp??Date.now()},l=Do(e(this,dt),o,e(this,Ke));if(l.isOutlier){h.warn(`GPS outlier rejected: ${l.distance.toFixed(0)}m in ${l.timeDelta.toFixed(1)}s (implied ${l.impliedSpeed.toFixed(1)} m/s, max ${e(this,Ke).maxPlausibleSpeed} m/s)`);return}s(this,dt,o),this.publish("absolute-update",{sensorId:this.id,update:n})},"#onSuccess"));u(this,Vt,a(t=>{switch(t.code){case t.PERMISSION_DENIED:h.error("Geolocation permission denied by the user.",t);break;case t.POSITION_UNAVAILABLE:h.error("Geolocation position unavailable.",t);break;case t.TIMEOUT:h.error("Geolocation request timed out.",t);break;default:h.error("An unknown geolocation error occurred.",t);break}this.publish("error",{sensorId:this.id,error:t})},"#onError"));u(this,Ci,a(t=>{try{oo.parse(t)}catch(l){this.publish("error",{sensorId:this.id,error:l}),h.error("Browser sent invalid position",l instanceof xo.default.ZodError?l.message:String(l));return}let n=t.coords.floorLevel!=null,o=e(this,ut);return s(this,ut,n),n&&!o?h.log("Geolocation: Likely switched to IPS (Indoor Positioning System) - floor level detected"):!n&&o&&h.log("Geolocation: Likely switched to GPS - no floor level"),{latitude:t.coords.latitude,longitude:t.coords.longitude,accuracy:t.coords.accuracy,heading:t.coords.heading,floorLevel:t.coords.floorLevel,timestamp:t.timestamp,confidence:e(this,Gi).call(this,t.coords.accuracy,n)}},"#createPositionUpdate"));u(this,Gi,a((t,n)=>n?t<=5?.9:t<=10?.7:t<=20?.5:.3:t<3?.1:t<=10?.15:t<=20?.1:.05,"#calculateConfidence"))}get isLikelyIPS(){return e(this,ut)}configureOutlierDetection(t){s(this,Ke,{...e(this,Ke),...t})}async enable(){return this.enabled||(await this.start(),this.enabled=!0),"granted"}async start(){if(e(this,Le)!=null){h.warn("Geolocation sensor already started.");return}s(this,Le,navigator.geolocation.watchPosition(t=>e(this,Ri).call(this,t),t=>e(this,Vt).call(this,t),{enableHighAccuracy:!0}))}stop(){e(this,Le)!=null&&(navigator.geolocation.clearWatch(e(this,Le)),s(this,Le,void 0)),s(this,dt,void 0)}async checkPermission(){return Pe.check(this.id)}async requestPermission(){return Pe.request(this.id)}};Le=new WeakMap,ut=new WeakMap,dt=new WeakMap,Ke=new WeakMap,Ri=new WeakMap,Vt=new WeakMap,Ci=new WeakMap,Gi=new WeakMap,a(En,"GeolocationSensor");var Li=En;function wo(r,i,t){let n=Mo(i);if(r===void 0)return n;let o=n-r;o>180&&(o-=360),o<-180&&(o+=360);let l=r+o*t;return Mo(l)}a(wo,"smoothHeading");function Mo(r){let i=r%360;return i<0&&(i+=360),i===0?0:i}a(Mo,"normalizeAngle");function vn(r,i,t){let n=Math.abs(i-9.81),o=i>r.lastMagnitude;return{isPeak:r.wasRising&&!o&&r.lastNetAcceleration>t,nextState:{wasRising:o,lastMagnitude:i,lastNetAcceleration:n}}}a(vn,"detectStepPeak");function Ao(r,i,t,n,o){if(o<=0)return r;let l=i.filter($e=>t-$e<n);if(l.length<2)return r;let d=l[0],c=(t-d)/1e3/60,D=1+((l.length-1)/c/110-1)*o,U=Math.min(Math.max(D,.7),1.3);return r*U}a(Ao,"calculateAdaptiveStepLength");function Oo(r,i){let t=r*Math.PI/180;return{dx:i*Math.sin(t),dy:i*Math.cos(t)}}a(Oo,"calculateStepDisplacement");function _o(r,i,t,n,o,l){return!o||!(t-r<l.zuptDelayMs)||n>l.tiltThreshold||t-i<l.minStepInterval}a(_o,"shouldSuppressStepDetection");function Io(r){return Math.abs(r-9.81)}a(Io,"calculateNetAcceleration");function Lo(r,i,t){return Math.sqrt(r*r+i*i+t*t)}a(Lo,"calculateAccelerationMagnitude");function Ro(r,i,t){return Math.sqrt(r*r+i*i+t*t)}a(Ro,"calculateRotationMagnitude");function Co(r,i,t){return r.filter(n=>i-n<t)}a(Co,"pruneOldTimestamps");var re,se,Fi,We,ze,kt,ct,ht,Jt,qt,je,mt,ft,pt,bt,Kt,ce,Go,Fo,No,Wt,Bo,Dn=class Dn extends X{constructor(){super(...arguments);u(this,ce);g(this,"id","devicemotion");u(this,re,!1);u(this,se);u(this,Fi,.3);u(this,We,{wasRising:!1,lastMagnitude:9.81,lastNetAcceleration:0});u(this,ze,[]);u(this,kt,5e3);u(this,ct,0);u(this,ht,0);u(this,Jt,0);u(this,qt,{zuptDelayMs:500,tiltThreshold:50,minStepInterval:300});u(this,je,1);u(this,mt,.7);u(this,ft,0);u(this,pt,.5);u(this,bt,!0);g(this,"start",a(async()=>{if(this.enabled){h.warn("Device motion sensor already started.");return}this.enabled=!0,window.addEventListener("devicemotion",e(this,Kt))},"start"));g(this,"stop",a(()=>{if(!this.enabled){h.warn("Device motion sensor not started.");return}this.enabled=!1,window.removeEventListener("devicemotion",e(this,Kt))},"stop"));g(this,"checkPermission",a(async()=>Pe.check("devicemotion"),"checkPermission"));g(this,"requestPermission",a(async()=>Pe.request("devicemotion"),"requestPermission"));u(this,Kt,Oi(t=>{let n=Date.now();p(this,ce,Go).call(this,t.rotationRate,n),p(this,ce,Fo).call(this,t.accelerationIncludingGravity,n)},50));u(this,Wt,0)}get requiresPermission(){return Te().isIOS}get isMoving(){return e(this,re)}setHeading(t){let n=e(this,se)==null;s(this,se,wo(e(this,se),t,e(this,Fi))),n&&h.log(`PDR heading initialized: ${e(this,se)?.toFixed(1)}\\xB0`)}configure(t){t.stepDetectionThreshold!==void 0&&s(this,je,Math.max(t.stepDetectionThreshold,.1)),t.stepLength!==void 0&&s(this,mt,Math.min(Math.max(t.stepLength,.2),2)),t.strideAdaptation!==void 0&&s(this,ft,Math.min(Math.max(t.strideAdaptation,0),1)),t.motionThreshold!==void 0&&s(this,pt,Math.max(t.motionThreshold,.1)),t.pdrEnabled!==void 0&&s(this,bt,t.pdrEnabled)}getConfig(){return{stepDetectionThreshold:e(this,je),stepLength:e(this,mt),strideAdaptation:e(this,ft),motionThreshold:e(this,pt),pdrEnabled:e(this,bt)}}};re=new WeakMap,se=new WeakMap,Fi=new WeakMap,We=new WeakMap,ze=new WeakMap,kt=new WeakMap,ct=new WeakMap,ht=new WeakMap,Jt=new WeakMap,qt=new WeakMap,je=new WeakMap,mt=new WeakMap,ft=new WeakMap,pt=new WeakMap,bt=new WeakMap,Kt=new WeakMap,ce=new WeakSet,Go=a(function(t,n){t!=null&&(t.alpha!=null&&this.publish("absolute-update",{sensorId:this.id,update:{angularVelocity:t.alpha,timestamp:n,confidence:.9}}),t.alpha!=null&&t.beta!=null&&t.gamma!=null&&s(this,Jt,Ro(t.alpha,t.beta,t.gamma)))},"#processGyroscope"),Fo=a(function(t,n){if(t==null)return;let{x:o,y:l,z:d}=t;if(o==null||l==null||d==null)return;let c=Lo(o,l,d),m=Io(c);if(p(this,ce,No).call(this,m,n),e(this,bt))p(this,ce,Bo).call(this,c,n);else{let f=vn(e(this,We),c,e(this,je));s(this,We,f.nextState)}},"#processAccelerometer"),No=a(function(t,n){let o=e(this,re);if(s(this,re,t>e(this,pt)),e(this,re)&&s(this,ht,n),o!==e(this,re)){e(this,re)&&h.log(`Motion: MOVING, accel=${t.toFixed(2)} m/s\\xB2`);let l=e(this,re)?.7:1;this.publish("absolute-update",{sensorId:this.id,update:{timestamp:n,confidence:l,speed:e(this,re)?t:0}})}},"#updateMotionState"),Wt=new WeakMap,Bo=a(function(t,n){let o=vn(e(this,We),t,e(this,je));if(s(this,We,o.nextState),!o.isPeak)return;h.log(`Peak detected: magnitude=${t.toFixed(2)} m/s\\xB2`);let l=e(this,se)!=null,d=n-e(this,ht)<e(this,qt).zuptDelayMs,c=n-e(this,ct);if(_o(e(this,ht),e(this,ct),n,e(this,Jt),l,e(this,qt))){h.warn(`Step suppressed: hasHeading=${l}, recentlyMoving=${d}, timeSinceLastStep=${c}ms`);return}s(this,ct,n),e(this,ze).push(n),s(this,ze,Co(e(this,ze),n,e(this,kt)));let f=Ao(e(this,mt),e(this,ze),n,e(this,kt),e(this,ft)),b=Oo(e(this,se),f);It(this,Wt)._++,h.log(`Step #${e(this,Wt)}: heading=${e(this,se)?.toFixed(1)}\\xB0, dx=${b.dx.toFixed(3)}m, dy=${b.dy.toFixed(3)}m`),this.publish("relative-update",{sensorId:this.id,update:{dx:b.dx,dy:b.dy,heading:e(this,se),timestamp:n,confidence:.7}})},"#processPDR"),a(Dn,"DeviceMotionSensor");var Ht=Dn;var Se,xn=class xn extends X{constructor(){super(...arguments);g(this,"id","manual");g(this,"requiresPermission",!1);u(this,Se,!1)}reportPosition(t){if(!e(this,Se))return;let n={latitude:t.latitude,longitude:t.longitude,accuracy:t.accuracy,heading:t.heading,floorLevel:t.floorLevel,confidence:t.confidence??.5,timestamp:t.timestamp??Date.now()};this.publish("absolute-update",{sensorId:this.id,update:n})}reportDisplacement(t){if(!e(this,Se))return;let n={dx:t.dx,dy:t.dy,heading:t.heading,confidence:t.confidence??.8,timestamp:t.timestamp??Date.now()};this.publish("relative-update",{sensorId:this.id,update:n})}forcePosition(t){if(!e(this,Se))return;let n=t.ttl??3e4;this.setAnchor({latitude:t.latitude,longitude:t.longitude,heading:t.heading,floorLevel:t.floorLevel,ttl:n,confidence:1,anchorOnlyPeriodMs:n})}clearForcedPosition(){e(this,Se)&&this.clearAnchor()}async start(){s(this,Se,!0)}stop(){s(this,Se,!1)}async checkPermission(){return"granted"}async requestPermission(){return"granted"}};Se=new WeakMap,a(xn,"ManualSensor");var gt=xn;var ae,zt,Re,yt,jt,Zt,Xt,Yt,Qt,Mn=class Mn extends V{constructor(){super();u(this,Re);u(this,ae,new Map);u(this,zt,!1);u(this,jt,a(({sensorId:t,update:n})=>{if(this.publish("absolute-update",{sensorId:t,update:n}),(t==="deviceorientation"||t==="manual")&&n.heading!=null){let o=e(this,ae).get("devicemotion");o instanceof Ht&&(e(this,zt)||(s(this,zt,!0),h.log(`Registry: forwarding heading ${n.heading}\\xB0 from ${t} to PDR`)),o.setHeading(n.heading))}},"#handleAbsoluteUpdate"));u(this,Zt,a(({sensorId:t,update:n})=>{this.publish("relative-update",{sensorId:t,update:n})},"#handleRelativeUpdate"));u(this,Xt,a(t=>{this.publish("anchor-set",t)},"#handleAnchorSet"));u(this,Yt,a(t=>{this.publish("anchor-clear",t)},"#handleAnchorClear"));u(this,Qt,a(({sensorId:t,error:n})=>{this.publish("error",{sensorId:t,error:n})},"#handleError"));$t()&&(p(this,Re,yt).call(this,new Li),p(this,Re,yt).call(this,new Ii),p(this,Re,yt).call(this,new Ht),p(this,Re,yt).call(this,new gt))}register(t){return p(this,Re,yt).call(this,t)}get(t){return e(this,ae).get(t)}unregister(t){let n=typeof t=="string"?t:t.id,o=e(this,ae).get(n);o&&(o.isEnabled&&o.disable(),o.off("absolute-update",e(this,jt)),o.off("relative-update",e(this,Zt)),o.off("anchor-set",e(this,Xt)),o.off("anchor-clear",e(this,Yt)),o.off("error",e(this,Qt)),e(this,ae).delete(n))}getAll(){return e(this,ae).entries()}destroy(){let t=[...e(this,ae).keys()];for(let n of t)this.unregister(n);super.destroy()}};ae=new WeakMap,zt=new WeakMap,Re=new WeakSet,yt=a(function(t){let n=t.id;if(e(this,ae).has(n)){h.warn(`Sensor with id ${n} already registered. Please use a different id.`);return}return e(this,ae).set(n,t),t.on("absolute-update",e(this,jt)),t.on("relative-update",e(this,Zt)),t.on("anchor-set",e(this,Xt)),t.on("anchor-clear",e(this,Yt)),t.on("error",e(this,Qt)),t},"#registerInternal"),jt=new WeakMap,Zt=new WeakMap,Xt=new WeakMap,Yt=new WeakMap,Qt=new WeakMap,a(Mn,"SensorRegistry");var Tt=Mn;function Pt(r,i,t,n){if(r==null||i==null)return"none";let o=t-i;return o>=r.ttl?"none":o<n.anchorOnlyPeriodMs?"anchor-only":"transition"}a(Pt,"getAnchorState");function $o(r,i,t,n){let l=i-r-t.anchorOnlyPeriodMs;if(l<=0)return 1;let d=Math.LN2/n;return Math.exp(-d*l)}a($o,"getAnchorConfidenceDecay");var Uo={anchorOnlyPeriodMs:5e3,halfLifeMs:1e4,maxAgeMs:5e3},Vo=3e4;var Gr=.7,Fr=1,Nr=2e3,Br=1,$r=30,Ur=100,Ho=5;function Ce(r){return(r%360+360)%360}a(Ce,"normalizeAngle");function wn(r,i){let t=Ce(i)-Ce(r);return t>180?t-360:t<-180?t+360:t}a(wn,"angleDifference");var _,St,Ee,Et,vt,Dt,xt,ei,Ge,Y,Fe,Bi,ko,An=class An{constructor(){u(this,Bi);u(this,_,null);u(this,St,null);u(this,Ee,null);u(this,Et,Gr);u(this,vt,Br);u(this,Dt,$r);u(this,xt,!0);u(this,ei,2);u(this,Ge,0);u(this,Y,[]);u(this,Fe,!1)}updateCompass(i,t){let n=Ce(i+e(this,Ge));if(s(this,St,n),e(this,xt)&&(e(this,Y).push(n),e(this,Y).length>Ho&&e(this,Y).shift(),s(this,Fe,p(this,Bi,ko).call(this))),e(this,_)===null){s(this,_,n);return}let o=wn(e(this,_),n);if(Math.abs(o)>e(this,Dt)){s(this,_,n);return}let l=1-e(this,Et);e(this,Fe)&&(l*=.1),!e(this,Fe)&&Math.abs(o)<30&&(l=Math.max(.01,l)),s(this,_,Ce(e(this,_)+o*l))}updateGyro(i,t){if(e(this,_)===null){s(this,Ee,t);return}if(e(this,Ee)!==null){let n=(t-e(this,Ee))/1e3;if(n>Nr/1e3||n<0){s(this,Ee,t);return}if(Math.abs(i)>e(this,vt)){let{isIOS:o}=Te(),l=o?-i*n:i*n;s(this,_,Ce(e(this,_)+l))}}s(this,Ee,t)}correctWithGps(i,t,n=1){if(t<Fr)return;if(e(this,_)===null){s(this,_,Ce(i));return}let o=Ce(i),l=wn(e(this,_),o),d=Math.min(.5,n*.5);s(this,_,Ce(e(this,_)+l*d))}setCalibrationOffset(i){s(this,Ge,i)}configure(i){i.complementaryAlpha!==void 0&&s(this,Et,Math.min(Math.max(i.complementaryAlpha,0),1)),i.gyroNoiseThreshold!==void 0&&s(this,vt,Math.max(i.gyroNoiseThreshold,0)),i.maxHeadingError!==void 0&&s(this,Dt,Math.min(Math.max(i.maxHeadingError,1),180)),i.magneticGatingEnabled!==void 0&&s(this,xt,i.magneticGatingEnabled),i.deltaThreshold!==void 0&&s(this,ei,Math.max(i.deltaThreshold,0)),i.calibrationOffset!==void 0&&s(this,Ge,i.calibrationOffset)}getConfig(){return{complementaryAlpha:e(this,Et),gyroNoiseThreshold:e(this,vt),maxHeadingError:e(this,Dt),magneticGatingEnabled:e(this,xt),deltaThreshold:e(this,ei),calibrationOffset:e(this,Ge)}}isMagneticDisturbanceActive(){return e(this,Fe)}getHeading(){return e(this,_)}isInitialized(){return e(this,_)!==null}getLastCompassHeading(){return e(this,St)}reset(){s(this,_,null),s(this,St,null),s(this,Ee,null),s(this,Y,[]),s(this,Fe,!1),s(this,Ge,0)}};_=new WeakMap,St=new WeakMap,Ee=new WeakMap,Et=new WeakMap,vt=new WeakMap,Dt=new WeakMap,xt=new WeakMap,ei=new WeakMap,Ge=new WeakMap,Y=new WeakMap,Fe=new WeakMap,Bi=new WeakSet,ko=a(function(){if(e(this,Y).length<Ho)return!1;let i=0,t=e(this,Y)[0];for(let o=1;o<e(this,Y).length;o++){let l=wn(t,e(this,Y)[o]);i+=l*l}return i/(e(this,Y).length-1)>Ur},"#detectMagneticDisturbance"),a(An,"HeadingFusionFilter");var Ni=An;var Vr={halfLifeMs:1e4},Hr=15e3,kr=1e-8,Jr=1e-6,Jo=111320,S,R,K,ti,ii,ni,On,_n=class _n{constructor(i){u(this,ni);u(this,S,null);u(this,R,null);u(this,K,null);u(this,ti);u(this,ii);s(this,ti,{...Vr,...i}),s(this,ii,Math.LN2/e(this,ti).halfLifeMs)}predict(i){if(e(this,S)===null||e(this,R)===null||e(this,K)===null)return;let t=i-e(this,K);if(t>Hr||t<0){this.reset();return}if(t===0)return;let n=t/1e3;e(this,S)[0]+=e(this,S)[2]*n,e(this,S)[1]+=e(this,S)[3]*n;let o=e(this,R),l=n*n,d=kr*e(this,ii)*t,c=o[0]+2*n*o[2]+l*o[10],m=o[5]+2*n*o[7]+l*o[15],f=o[2]+n*o[10],b=o[7]+n*o[15];o[0]=c+d*l,o[5]=m+d*l,o[2]=f,o[8]=f,o[7]=b,o[13]=b,o[10]+=d*n,o[15]+=d*n,s(this,K,i)}updatePosition(i,t,n,o){if(e(this,S)===null||e(this,R)===null||e(this,K)===null){p(this,ni,On).call(this,i,t,n,o);return}if(this.predict(o),e(this,S)===null||e(this,R)===null){p(this,ni,On).call(this,i,t,n,o);return}let l=e(this,R),d=n,c=i-e(this,S)[0],m=t-e(this,S)[1],f=l[0]+d,b=l[5]+d,T=l[0]/f,D=l[5]/b,U=l[2]/f,$e=l[7]/b;e(this,S)[0]+=T*c,e(this,S)[1]+=D*m,e(this,S)[2]+=U*c,e(this,S)[3]+=$e*m,l[0]=(1-T)*l[0],l[2]=(1-T)*l[2],l[5]=(1-D)*l[5],l[7]=(1-D)*l[7],l[10]=l[10]-U*l[2],l[15]=l[15]-$e*l[7],s(this,K,o)}updateOdometry(i,t,n,o){if(e(this,S)===null||e(this,R)===null||e(this,K)===null||(this.predict(o),e(this,S)===null||e(this,R)===null))return;let l=t/Jo,d=Jo*Math.cos(e(this,S)[0]*Math.PI/180),c=i/d;e(this,S)[0]+=l,e(this,S)[1]+=c;let m=n;e(this,R)[0]+=m,e(this,R)[5]+=m,s(this,K,o)}getPosition(){return e(this,S)===null?null:{latitude:e(this,S)[0],longitude:e(this,S)[1]}}getVelocity(){return e(this,S)===null?null:{vLat:e(this,S)[2],vLon:e(this,S)[3]}}getUncertainty(){return e(this,R)===null?1/0:e(this,R)[0]+e(this,R)[5]}getLastTimestamp(){return e(this,K)}isInitialized(){return e(this,S)!==null}reset(){s(this,S,null),s(this,R,null),s(this,K,null)}};S=new WeakMap,R=new WeakMap,K=new WeakMap,ti=new WeakMap,ii=new WeakMap,ni=new WeakSet,On=a(function(i,t,n,o){s(this,S,[i,t,0,0]);let l=n,d=Jr;s(this,R,[l,0,0,0,0,l,0,0,0,0,d,0,0,0,0,d]),s(this,K,o)},"#initialize"),a(_n,"MultiSensorEKF");var $i=_n;function Ui(r,i){let t=Math.max(.01,Math.min(1,r));return i*i*1e-10/t}a(Ui,"confidenceToNoise");var qr=1,H,he,k,W,C,J,ri,v,z,Ne,B,me,Xe,Ye,Be,si,ai,li,w,Ze,Vi,qo,Mt,oi,ui,ki,Ji,di,ci,Ko,qi,In=class In extends V{constructor(t,n){super();u(this,w);u(this,H);u(this,he);u(this,k);u(this,W);u(this,C);u(this,J);u(this,ri,0);u(this,v);u(this,z);u(this,Ne);u(this,B,{dx:0,dy:0});u(this,me);u(this,Xe);u(this,Ye);u(this,Be);u(this,si,a(({error:t})=>{this.publish("error",{error:t})},"#handleError"));u(this,ai,a(({anchor:t,configOverride:n})=>{this.setAnchor(t,n)},"#handleAnchorSetEvent"));u(this,li,a(()=>{this.clearAnchor()},"#handleAnchorClearEvent"));u(this,Mt,0);u(this,ui,a(({sensorId:t,update:n})=>{n.latitude!=null&&n.longitude!=null?e(this,qi).call(this,t,n):n.heading!=null&&n.angularVelocity==null?e(this,ki).call(this,n.heading,n.timestamp??Date.now()):n.angularVelocity!=null&&e(this,Ji).call(this,n.angularVelocity,n.timestamp??Date.now())},"#handleAbsoluteUpdate"));u(this,ki,a((t,n)=>{e(this,W).updateCompass(t,n);let o=e(this,W).getHeading();o!=null&&e(this,di).call(this,o,n)},"#handleCompassUpdate"));u(this,Ji,a((t,n)=>{e(this,W).updateGyro(t,n);let o=e(this,W).getHeading();o!=null&&(e(this,C)!=null&&Math.abs(o-e(this,C))<.5||e(this,di).call(this,o,n))},"#handleGyroUpdate"));u(this,di,a((t,n)=>{s(this,C,t),this.publish("heading-update",{heading:t}),e(this,k).isInitialized()?p(this,w,oi).call(this,n):e(this,J)!=null&&this.publish("fused-position",{position:{...e(this,J),heading:t,timestamp:n}})},"#emitFusedHeading"));u(this,ci,a(({sensorId:t,update:n})=>{let o=n.timestamp,l=Pt(e(this,v),e(this,z),o,p(this,w,Ze).call(this));if(h.log(`PDR received: dx=${n.dx.toFixed(3)}m, dy=${n.dy.toFixed(3)}m, anchorState=${l}`),l==="none"){h.warn(`Relative update from sensor "${t}" ignored: no anchor set. Set an anchor first via VPS/AI Localizer.`);return}e(this,B).dx+=n.dx,e(this,B).dy+=n.dy;let d=Ui(n.confidence,.5);e(this,k).updateOdometry(n.dx,n.dy,d,o),n.heading!=null&&s(this,C,n.heading),It(this,ri)._++,h.log(`PDR #${e(this,ri)} ACCEPTED: total dx=${e(this,B).dx.toFixed(2)}m, dy=${e(this,B).dy.toFixed(2)}m`),h.log(`Relative update from "${t}": dx=${n.dx.toFixed(2)}m, dy=${n.dy.toFixed(2)}m. Total displacement: dx=${e(this,B).dx.toFixed(2)}m, dy=${e(this,B).dy.toFixed(2)}m`),p(this,w,oi).call(this,o)},"#handleRelativeUpdate"));u(this,qi,a((t,n)=>{let o=n.timestamp??Date.now();n.heading!=null&&s(this,Xe,n.heading),n.floorLevel!=null&&s(this,Ye,n.floorLevel),n.accuracy!=null&&s(this,Be,n.accuracy);let l=Pt(e(this,v),e(this,z),o,p(this,w,Ze).call(this));if(l==="anchor-only"){h.log("GPS update rejected during anchor-only period");return}if(n.heading!=null&&(n.speed??0)>=qr){e(this,W).correctWithGps(n.heading,n.speed??0,n.confidence??.15);let m=e(this,W).getHeading();m!=null&&s(this,C,m)}if(l==="none"){p(this,w,Ko).call(this,t,n,o);return}let d=Ui(n.confidence??.5,n.accuracy??10),c={sensorId:t,weight:n.confidence??.5,position:n};if(e(this,k).updatePosition(n.latitude,n.longitude,d,o),p(this,w,oi).call(this,o),e(this,J)!=null){let m=e(this,J).contributions.findIndex(f=>f.sensorId===t);m>=0?e(this,J).contributions[m]=c:e(this,J).contributions.push(c)}},"#handlePositionUpdate"));s(this,H,t),s(this,he,{...Uo,...n}),s(this,k,new $i({halfLifeMs:e(this,he).halfLifeMs})),s(this,W,new Ni),e(this,H).on("absolute-update",e(this,ui)),e(this,H).on("relative-update",e(this,ci)),e(this,H).on("anchor-set",e(this,ai)),e(this,H).on("anchor-clear",e(this,li)),e(this,H).on("error",e(this,si))}get config(){return{...e(this,he)}}getAnchorState(t){return Pt(e(this,v),e(this,z),t??Date.now(),p(this,w,Ze).call(this))}get anchor(){if(!(e(this,v)==null||Pt(e(this,v),e(this,z),Date.now(),p(this,w,Ze).call(this))==="none"))return{...e(this,v)}}get displacement(){return{...e(this,B)}}setAnchor(t,n){let o=Date.now();p(this,w,Vi).call(this),s(this,v,t),s(this,z,o),n?.anchorOnlyPeriodMs!=null?s(this,me,{anchorOnlyPeriodMs:n.anchorOnlyPeriodMs}):s(this,me,void 0),s(this,B,{dx:0,dy:0}),s(this,J,void 0),e(this,k).reset();let l=Ui(t.confidence??1,1);e(this,k).updatePosition(t.latitude,t.longitude,l,o),h.log(`Anchor set from sensor "${t.sensorId}" at [${t.latitude}, ${t.longitude}]`),h.log(`ANCHOR SET from ${t.sensorId}, anchorOnlyPeriodMs=${p(this,w,Ze).call(this).anchorOnlyPeriodMs}`),this.publish("anchor-set",{anchor:{...t}}),p(this,w,oi).call(this,o),t.ttl!==1/0&&s(this,Ne,setTimeout(()=>{p(this,w,qo).call(this)},t.ttl))}clearAnchor(){p(this,w,Vi).call(this),s(this,v,void 0),s(this,z,void 0),s(this,me,void 0),s(this,B,{dx:0,dy:0}),h.log("Anchor cleared")}resetEKF(){e(this,k).reset()}resetHeadingFilter(){e(this,W).reset(),s(this,C,void 0)}get headingFilter(){return e(this,W)}get ekf(){return e(this,k)}getLastPosition(){return e(this,J)}destroy(){e(this,H).off("absolute-update",e(this,ui)),e(this,H).off("relative-update",e(this,ci)),e(this,H).off("anchor-set",e(this,ai)),e(this,H).off("anchor-clear",e(this,li)),e(this,H).off("error",e(this,si)),p(this,w,Vi).call(this),e(this,k).reset(),e(this,W).reset(),s(this,v,void 0),s(this,z,void 0),s(this,me,void 0),s(this,B,{dx:0,dy:0}),s(this,C,void 0),s(this,J,void 0),s(this,Xe,void 0),s(this,Ye,void 0),s(this,Be,void 0),super.destroy()}};H=new WeakMap,he=new WeakMap,k=new WeakMap,W=new WeakMap,C=new WeakMap,J=new WeakMap,ri=new WeakMap,v=new WeakMap,z=new WeakMap,Ne=new WeakMap,B=new WeakMap,me=new WeakMap,Xe=new WeakMap,Ye=new WeakMap,Be=new WeakMap,si=new WeakMap,ai=new WeakMap,li=new WeakMap,w=new WeakSet,Ze=a(function(){return e(this,me)?{...e(this,he),...e(this,me)}:e(this,he)},"#getEffectiveConfig"),Vi=a(function(){e(this,Ne)!=null&&(clearTimeout(e(this,Ne)),s(this,Ne,void 0))},"#clearAnchorTimer"),qo=a(function(){if(e(this,v)==null)return;let t={...e(this,v)};s(this,v,void 0),s(this,z,void 0),s(this,Ne,void 0),s(this,me,void 0),s(this,B,{dx:0,dy:0}),h.log(`Anchor from sensor "${t.sensorId}" expired after ${t.ttl}ms`),this.publish("anchor-expired",{anchor:t})},"#expireAnchor"),Mt=new WeakMap,oi=a(function(t){It(this,Mt)._++;let n=e(this,k).getPosition();if(n==null){h.warn(`emitFusedPosition #${e(this,Mt)} FAILED: EKF position is null`);return}let o=Pt(e(this,v),e(this,z),t,p(this,w,Ze).call(this)),l=o!=="none",d=e(this,k).getUncertainty(),c=Math.max(.1,Math.min(1,1/(1+d*1e9))),m=e(this,C)??e(this,Xe)??e(this,v)?.heading,f=e(this,v)?.floorLevel??e(this,Ye),b;e(this,Be)!=null?b=e(this,Be):l&&e(this,v)!=null?b=3:b=Math.min(50,Math.max(1,Math.sqrt(d)*1e5));let T={latitude:n.latitude,longitude:n.longitude,accuracy:b,heading:m,floorLevel:f,timestamp:t,confidence:c,sensorId:"fusion",isCalibrated:l,displacement:l?{...e(this,B)}:void 0,contributions:[]};if(e(this,v)!=null&&l){let D=o==="transition"?$o(e(this,z),t,e(this,he),e(this,he).halfLifeMs):1;T.contributions.push({sensorId:e(this,v).sensorId,weight:D,position:{latitude:e(this,v).latitude,longitude:e(this,v).longitude,heading:e(this,v).heading,floorLevel:e(this,v).floorLevel,timestamp:e(this,v).timestamp,confidence:e(this,v).confidence??1}})}e(this,C)!=null&&e(this,C)!==e(this,v)?.heading&&T.contributions.push({sensorId:"deviceorientation",weight:0,position:{heading:e(this,C),timestamp:t,confidence:1}}),s(this,J,T),h.log(`EMIT fused-position #${e(this,Mt)}: ${T.latitude.toFixed(6)}, ${T.longitude.toFixed(6)}`),this.publish("fused-position",{position:T})},"#emitFusedPosition"),ui=new WeakMap,ki=new WeakMap,Ji=new WeakMap,di=new WeakMap,ci=new WeakMap,Ko=a(function(t,n,o){let l=e(this,C)??e(this,Xe),d=n.accuracy??e(this,Be)??10,c=[{sensorId:t,weight:n.confidence??.5,position:n}];e(this,C)!=null&&c.push({sensorId:"deviceorientation",weight:0,position:{heading:e(this,C),timestamp:o,confidence:1}});let m={latitude:n.latitude,longitude:n.longitude,accuracy:d,heading:l,floorLevel:e(this,Ye),timestamp:o,confidence:n.confidence??.5,sensorId:"fusion",isCalibrated:!1,contributions:c};s(this,J,m),h.log(`EMIT direct-position: ${m.latitude.toFixed(6)}, ${m.longitude.toFixed(6)}`),this.publish("fused-position",{position:m})},"#emitDirectPosition"),qi=new WeakMap,a(In,"FusionEngine");var Hi=In;var $,fe,ve,A,le,G,ue,Qe,F,O,pe,x,De,M,wt,At,Ot,mi,fi,pi,bi,gi,et,Wi,zi,ji,Zi,Xi,yi,Yi,Qi,Ti,Pi,Si,Ei,Ln=class Ln{constructor(i){u(this,$,new V);u(this,fe);u(this,ve);u(this,A);u(this,le);u(this,G);u(this,ue);u(this,Qe);u(this,F);u(this,O);u(this,pe);u(this,x);u(this,De);u(this,M,Gn);u(this,wt,new Map);u(this,At);u(this,Ot);g(this,"enable",a(i=>{s(this,M,ln(e(this,M),i)),e(this,A).setDebug(e(this,M).debug),this.isEnabled||(e(this,O).on("fused-position",e(this,mi)),e(this,O).on("heading-update",e(this,fi)),e(this,O).on("error",e(this,pi)),e(this,O).on("anchor-set",e(this,bi)),e(this,O).on("anchor-expired",e(this,gi))),e(this,A).transitionTo("enable"),this.watchDevicePosition(e(this,M).watchDevicePosition),e(this,M).initialState==="inactive"&&e(this,A).transitionTo("initialize")},"enable"));g(this,"disable",a(()=>{e(this,O).off("fused-position",e(this,mi)),e(this,O).off("heading-update",e(this,fi)),e(this,O).off("error",e(this,pi)),e(this,O).off("anchor-set",e(this,bi)),e(this,O).off("anchor-expired",e(this,gi)),e(this,O).clearAnchor(),e(this,G).remove(),e(this,A).clearTimer(),e(this,le).isFollowing&&e(this,le).cancel(),this.watchDevicePosition(!1),this.watchDeviceOrientation(!1),s(this,x,void 0),s(this,pe,void 0),e(this,wt).clear(),e(this,A).transitionTo("disable")},"disable"));g(this,"on",a((i,t)=>e(this,$).on(i,t),"on"));g(this,"off",a((i,t)=>{e(this,$).off(i,t)},"off"));g(this,"updateState",a(i=>{let t=e(this,M).watchDevicePosition;s(this,M,ln(e(this,M),i)),i.debug!=null&&e(this,A).setDebug(i.debug),e(this,G).update({status:this.status},{animate:!1}),i.watchDevicePosition!=null&&i.watchDevicePosition!==t&&this.watchDevicePosition(i.watchDevicePosition),i.timeout!=null&&this.status==="active"&&e(this,A).resetTimer(e(this,M).timeout)},"updateState"));g(this,"watchDevicePosition",a(i=>{s(this,ue,void 0);let t=e(this,F).get("geolocation");if(!t){h.warn("Geolocation sensor unavailable. watchDevicePosition requires a browser environment.");return}if(e(this,Ot)!=null&&(navigator.geolocation.clearWatch(e(this,Ot)),s(this,Ot,void 0)),!i){t.disable(),e(this,O).resetEKF(),e(this,O).resetHeadingFilter();return}if(!this.isEnabled){h.warn("BlueDot must be enabled before watching browser position.");return}t.enable()},"watchDevicePosition"));g(this,"watchDeviceOrientation",a(async i=>{s(this,Qe,void 0);let t=e(this,F).get("deviceorientation");if(!t){h.warn("Device orientation sensor unavailable. watchDeviceOrientation requires a browser environment.");return}i?await t.enable()!=="granted"&&h.error(\'Device orientation permission denied. "deviceorientation" event must be enabled in response to a transient activation. https://www.w3.org/TR/orientation-event/#dom-deviceorientationevent-requestpermission\'):t.disable()},"watchDeviceOrientation"));u(this,mi,a(async i=>{let{position:t}=i;if(!this.isEnabled)return;let n=await e(this,yi).call(this,t.floorLevel,t.latitude,t.longitude);if(!this.isEnabled)return;let o={latitude:t.latitude,longitude:t.longitude,accuracy:t.accuracy??void 0,heading:t.heading??void 0,floor:n,timestamp:t.timestamp},l=o;if(e(this,At)){let d=e(this,Qi).call(this,o);if(d==null){e(this,M).debug&&h.log("Position update discarded by position processor");return}l=d}un(l.timestamp,e(this,x)?.timestamp,e(this,M))||(s(this,ue,l),e(this,et).call(this,l))},"#handleFusedPosition"));u(this,fi,a(i=>{let{heading:t}=i;s(this,Qe,t),this.status==="active"&&e(this,ji).call(this,t)},"#handleHeadingUpdate"));u(this,pi,a(i=>{let{error:t}=i;if(e(this,A).transitionTo("error"),t!=null&&typeof t=="object"&&"code"in t&&typeof t.code=="number"){let n=t;n.code===1&&e(this,Ti).call(this).sendWatchPositionDenied(),e(this,$).publish("error",n)}},"#handleGeolocationError"));u(this,bi,a(i=>{e(this,$).publish("anchor-set",i)},"#handleAnchorSet"));u(this,gi,a(i=>{e(this,$).publish("anchor-expired",i)},"#handleAnchorExpired"));u(this,et,a((i,t)=>{let n;try{e(this,Qe)!=null&&(i=Object.assign({},i,{heading:e(this,Qe)})),n=ro.parse(Jn(i,e(this,pe)))}catch(o){e(this,A).transitionTo("error"),h.error("Position parse failed",o instanceof Wo.default.ZodError?o.message:String(o));return}if(e(this,M).debug&&h.log("Parsed position",n),e(this,M).preventOutOfBounds){let{radius:o,center:l}=e(this,fe).Camera.bounds;if(o!=null&&isFinite(o)&&l!=null&&!qn({longitude:n.longitude,latitude:n.latitude},{radius:o,center:l})){h.warn(`Position [${n.longitude}, ${n.latitude}] is outside map bounds. Position update will be discarded.`);return}}if(!e(this,Yi).call(this,n.accuracy)){h.log(`Dropping position update with accuracy ${n.accuracy}m (exceeds threshold ${e(this,M).accuracyThreshold}m)`);return}if(t?.silent?e(this,G).update({status:this.status},{animate:!1}):e(this,A).transitionTo("position-update"),!e(this,A).shouldUpdateGeometry()){h.warn(`Cannot update position because BlueDot state is \'${this.status}\'. BlueDot must be enabled first.`);return}e(this,Wi).call(this,n,t)},"#setPosition"));u(this,Wi,a((i,t)=>{if(un(i.timestamp,e(this,x)?.timestamp,e(this,M)))return;let n=e(this,x)?.floor?.id;s(this,x,i);let o=i.floor?.id;t?.silent||(e(this,A).resetTimer(e(this,M).timeout),e(this,Ti).call(this).updateState({userPosition:{bluedotTimestamp:Date.now(),latitude:i.latitude,longitude:i.longitude,floorLevel:i.floor?.elevation,accuracy:i.accuracy}})),this.dotModel||e(this,G).add(i),e(this,G).updateFloor(i.floor);let l=new hi.Coordinate({latitude:i.latitude,longitude:i.longitude}),d=this.status==="active"?i.accuracy:void 0,c=e(this,zi).call(this)?i.heading??void 0:void 0,m=t?.animate!==!1;if(e(this,G).update({position:l,accuracy:d,heading:c,status:this.status},{animate:m},(f,b)=>{let T=b?o:n??o;e(this,$).publish("dot-position-update",{position:new hi.Coordinate({latitude:f.latitude,longitude:f.longitude,floorId:T})})}),!t?.silent){let f={floor:this.floor,heading:this.heading,accuracy:this.accuracy,coordinate:this.coordinate};e(this,$).publish("position-update",f),e(this,le).handlePositionUpdate(f)}},"#applyPosition"));u(this,zi,a(()=>this.heading==null?!1:this.status==="active"?!0:e(this,M).heading.displayWhenInactive,"#shouldShowHeading"));u(this,ji,a(i=>{if(!e(this,A).shouldUpdateGeometry()){h.warn(`Cannot update orientation because BlueDot state is \'${this.status}\'. BlueDot must be enabled first.`);return}if(e(this,x)==null){e(this,M).debug&&h.log("Cannot update orientation before a valid position has been applied.");return}s(this,x,{...e(this,x),heading:i}),e(this,G).update({heading:i},{animate:!0}),e(this,$).publish("device-orientation-update",{heading:i})},"#setOrientation"));g(this,"update",a((i,t)=>{if(!this.isEnabled)return;if(i==null){s(this,pe,void 0),e(this,ue)!=null&&e(this,et).call(this,e(this,ue),t);return}if("coords"in i){e(this,Zi).call(this,i,t);return}let{timestamp:n,...o}=i,l=Object.assign({},e(this,pe),o);if("floorOrFloorId"in i){let{floorOrFloorId:c}=i;c==null?l.floor=void 0:c==="device"?l.floor="device":typeof c=="string"?l.floor=e(this,Xi).call(this,c):l.floor=c}s(this,pe,l),(l.latitude!=null&&l.longitude!=null||e(this,ue)!=null)&&e(this,et).call(this,e(this,ue),t)},"update"));u(this,Zi,a(async(i,t)=>{let n=await e(this,yi).call(this,i.coords.floorLevel,i.coords.latitude,i.coords.longitude);if(!this.isEnabled)return;let{timestamp:o,...l}=i,d=Object.assign({},e(this,pe),{...l.coords,floor:n});s(this,pe,d),(d.latitude!=null&&d.longitude!=null||e(this,ue)!=null)&&e(this,et).call(this,e(this,ue),t)},"#processAsyncGeolocation"));u(this,Xi,a(i=>e(this,ve).getById("floor",i),"#getFloorByFloorId"));u(this,yi,a(async(i,t,n)=>{if(i==null)return;let o=e(this,wt).get(i);if(o==null&&(o=e(this,ve).getByType("floor").filter(l=>l.elevation===i),e(this,wt).set(i,o)),o.length===0){h.warn(`Received elevation level ${i} but no floors could be found at that elevation.`);return}if(o.length===1)return o[0];if(t!=null&&n!=null){let l=new hi.Coordinate({latitude:t,longitude:n,floorId:o[0].id}),d=await e(this,ve).Query.nearest(l,e(this,ve).getByType("node"),{limit:"same-elevation",mode:"absolute-distance",maxResults:1});if(d&&d.length>0&&d[0].feature!=null&&d[0].feature.floor!=null)return d[0].feature.floor}return e(this,fe).currentFloorStack.floors.find(l=>l.elevation===i)},"#getFloorByFloorLevel"));g(this,"follow",a((i,t)=>{e(this,le).start(i,t)},"follow"));u(this,Yi,a(i=>i==null?this.status!=="disabled":i<=e(this,M).accuracyThreshold,"#isAccurateEnough"));u(this,Qi,a(i=>{let t={latitude:e(this,x)?.latitude,longitude:e(this,x)?.longitude,accuracy:e(this,x)?.accuracy,heading:e(this,x)?.heading,floor:e(this,x)?.floor,timestamp:e(this,x)?.timestamp};try{return e(this,At).call(this,t,i)}catch(n){return h.error("Position processor callback threw an error",n instanceof Error?n.message:String(n)),i}},"#processIncomingPosition"));g(this,"destroy",a(()=>{this.disable(),e(this,O).destroy(),e(this,F).destroy(),e(this,G).destroy(),e(this,A).destroy(),e(this,le).destroy(),e(this,fe).off("click",e(this,Si)),e(this,fe).off("hover",e(this,Ei)),e(this,$).destroy()},"destroy"));u(this,Ti,a(()=>e(this,M).preventOutOfBounds?e(this,ve).internal.Analytics:{sendWatchPositionDenied:a(()=>{},"sendWatchPositionDenied"),updateState:a(()=>{},"updateState")},"#getAnalyticsIfEnabled"));u(this,Pi,a(i=>t=>{t.models==null||t.models.length===0||this.dotModel==null||t.models.find(o=>o.id===this.dotModel?.id)==null||e(this,$).publish(i,{coordinate:t.coordinate})},"#handleClickOrHover"));u(this,Si,e(this,Pi).call(this,"click"));u(this,Ei,e(this,Pi).call(this,"hover"));s(this,fe,i),s(this,ve,i.getMapData()),s(this,A,new Mi),s(this,le,new Ai(i)),s(this,G,new xi(i,this)),s(this,F,new Tt),s(this,O,new Hi(e(this,F))),e(this,A).on("status-change",t=>{e(this,G).update({status:t.status},{animate:!1}),e(this,$).publish("status-change",t)}),e(this,le).on("follow-change",t=>{e(this,$).publish("follow-change",t)}),e(this,fe).on("click",e(this,Si)),e(this,fe).on("hover",e(this,Ei))}get Sensors(){return e(this,F)}get Fusion(){return e(this,O)}get anchor(){return e(this,O).anchor}get displacement(){return e(this,O).displacement}get dotModel(){return e(this,G).dot}get accuracyRingModel(){return e(this,G).accuracyRing}get headingConeModel(){return e(this,G).headingCone}get isEnabled(){return e(this,A).isEnabled}get status(){return e(this,A).current}get isFollowing(){return e(this,le).isFollowing}get heading(){return e(this,x)?.heading}get accuracy(){return e(this,x)?.accuracy}get coordinate(){if(e(this,x)!=null)return(e(this,De)==null||this.floor?.id!==e(this,De).floorId||e(this,x).latitude!==e(this,De).latitude||e(this,x).longitude!==e(this,De).longitude)&&s(this,De,new hi.Coordinate({latitude:e(this,x).latitude,longitude:e(this,x).longitude,floorId:this.floor?.id})),e(this,De)}getState(){return{...e(this,M)}}get floor(){return e(this,x)?.floor}forcePosition(i,t=Vo){let n=e(this,F).get("manual");if(n==null){h.warn("Manual sensor not available");return}this.isEnabled||this.enable(),n.isEnabled||n.enable(),n.forcePosition({latitude:i.latitude,longitude:i.longitude,heading:i.heading,floorLevel:i.floorLevel,ttl:t})}reportPosition(i){let t=e(this,F).get("manual");if(t==null){h.warn("Manual sensor not available");return}this.isEnabled||this.enable(),t.isEnabled||t.enable(),t.reportPosition(i)}async __enableSensor(i){let t=e(this,F).get(i);return t==null?(h.warn(`Sensor \'${i}\' not found`),"unavailable"):t.enable()}__disableSensor(i){let t=e(this,F).get(i);if(t==null){h.warn(`Sensor \'${i}\' not found`);return}t.disable()}async __checkSensorPermission(i){let t=e(this,F).get(i);return t==null?(h.warn(`Sensor \'${i}\' not found`),"unavailable"):t.checkPermission()}async __requestSensorPermission(i){let t=e(this,F).get(i);return t==null?(h.warn(`Sensor \'${i}\' not found`),"unavailable"):t.requestPermission()}__isSensorEnabled(i){let t=e(this,F).get(i);return t==null?(h.warn(`Sensor \'${i}\' not found`),!1):t.isEnabled}setPositionProcessor(i){s(this,At,i)}};$=new WeakMap,fe=new WeakMap,ve=new WeakMap,A=new WeakMap,le=new WeakMap,G=new WeakMap,ue=new WeakMap,Qe=new WeakMap,F=new WeakMap,O=new WeakMap,pe=new WeakMap,x=new WeakMap,De=new WeakMap,M=new WeakMap,wt=new WeakMap,At=new WeakMap,Ot=new WeakMap,mi=new WeakMap,fi=new WeakMap,pi=new WeakMap,bi=new WeakMap,gi=new WeakMap,et=new WeakMap,Wi=new WeakMap,zi=new WeakMap,ji=new WeakMap,Zi=new WeakMap,Xi=new WeakMap,yi=new WeakMap,Yi=new WeakMap,Qi=new WeakMap,Ti=new WeakMap,Pi=new WeakMap,Si=new WeakMap,Ei=new WeakMap,a(Ln,"BlueDot");var Ki=Ln;return ir(Kr);})();\n\n\n// Register the extension\nif (window.bridge && window.bridge.extensions) {\n try {\n window.bridge.extensions.register({ name: \'blue-dot\', package: { Extension: BlueDot.BlueDot } });\n if (window.rnDebug) window.rnDebug(\'BlueDot Extension Registered\');\n } catch(e) {\n if (window.rnDebug) window.rnDebug(\'Failed to register blue-dot extension: \' + e.message);\n }\n} else {\n if (window.rnDebug) window.rnDebug(\'Bridge or extensions not available for registration\');\n}';function D(){return oA}o(D,"getRegistrationScript");var aA="[MappedinJS]";function M(n="",{prefix:a=aA}={}){const l=`${a}${n?`-${n}`:""}`,s=o((e,d)=>{if(typeof window<"u"&&window.rnDebug){const c=d.map(h=>h instanceof Error&&h.stack?`${h.message}
2
- ${h.stack}`:h);window.rnDebug(`${n} ${e}: ${c.join(" ")}`)}},"rnDebug");return{logState:0,log(...e){this.logState<=0&&(console.log(l,...e),s("log",e))},warn(...e){this.logState<=1&&(console.warn(l,...e),s("warn",e))},error(...e){this.logState<=2&&(console.error(l,...e),s("error",e))},assert(...e){console.assert(...e)},time(e){console.time(e)},timeEnd(e){console.timeEnd(e)},setLevel(e){0<=e&&e<=3&&(this.logState=e)}}}o(M,"createLogger");var rA=M(),z=rA;function C(){sA({extensionName:"blue-dot",getRegistrationScript:D,logger:{log:o(n=>z.log(n),"log"),error:o((n,a)=>z.error(n,a),"error")}})}o(C,"useBlueDotRegistration");function w(n,a){if(typeof n!="string"||n.length===0)throw new Error("Event parameter must be a non-empty string");if(typeof a!="function")throw new Error("Callback parameter must be a function");const l=AA(tA),{extensions:s,mapData:e}=l;if(!e)throw new Error("Map data is not available");C();const c=(s?.["blue-dot"]?.registrationState||"unregistered")==="registered",h=$(u=>{try{a(u)}catch(P){console.error(`Error in blue dot event callback for ${String(n)}:`,P)}},[n,a]);eA({eventKey:`blue-dot:${String(n)}`,callback:h,setupScript:o(()=>iA({extensionName:"blue-dot",eventName:n}),"setupScript"),cleanupScript:o(()=>nA({extensionName:"blue-dot",eventName:n}),"cleanupScript"),shouldInject:c})}o(w,"useBlueDotEvent");function p(){const n=Y(R),{bridge:a,extensions:l,updateExtensionState:s}=n;C();const e=l["blue-dot"],c=(e?.registrationState||"unregistered")==="registered",h=e?.isEnabled||!1,u=e?.status||"hidden",P=e?.isFollowing||!1,v=e?.coordinate,b=e?.floor,m=e?.accuracy,f=e?.heading,y=e?.dotModel,j=e?.accuracyRingModel,U=e?.headingConeModel,g=_(l);g.current=l,w("position-update",i(A=>{s("blue-dot",r=>({...r,coordinate:A.coordinate,floor:A.floor,accuracy:A.accuracy??void 0,heading:A.heading??void 0}))},[s])),w("status-change",i(A=>{s("blue-dot",r=>({...r,status:A.status}))},[s])),w("follow-change",i(A=>{s("blue-dot",r=>({...r,isFollowing:A.following}))},[s]));const t=i(async(A,r=[])=>{if(!a?.isReady)throw new Error("Bridge is not ready. Ensure the WebView is loaded.");return await a.instruct({type:"extension",payload:{name:"blue-dot",method:A,args:r}})},[a]),k=i(async A=>{g.current?.["blue-dot"]?.isEnabled||(await t("enable",[A]),s("blue-dot",J=>({...J,isEnabled:!0})))},[t,s]),E=i(async()=>{await t("disable"),s("blue-dot",{registrationState:"unregistered",isEnabled:!1,status:"hidden",coordinate:void 0,floor:void 0,isFollowing:!1,accuracy:void 0,heading:void 0})},[t,s]),L=i((...A)=>t("update",A),[t]),Z=i((...A)=>t("follow",A),[t]),N=i((...A)=>t("getState",A),[t]),B=i((...A)=>t("updateState",A),[t]),x=i((...A)=>t("watchDevicePosition",A),[t]),V=i((...A)=>t("setPositionProcessor",A),[t]),O=i((...A)=>t("watchDeviceOrientation",A),[t]),I=i(A=>({id:A,enable:o(()=>t("__enableSensor",[A]),"enable"),disable:o(()=>t("__disableSensor",[A]),"disable"),checkPermission:o(()=>t("__checkSensorPermission",[A]),"checkPermission"),requestPermission:o(()=>t("__requestSensorPermission",[A]),"requestPermission"),getIsEnabled:o(()=>t("__isSensorEnabled",[A]),"getIsEnabled")}),[t]),W=q(()=>({get:o(A=>I(A),"get")}),[I]),X=i((A,r)=>t("forcePosition",[A,r]),[t]),Q=i(A=>t("reportPosition",[A]),[t]),T=i(A=>t("__enableSensor",[A]),[t]),S=i(A=>t("__disableSensor",[A]),[t]),H=i(A=>t("__checkSensorPermission",[A]),[t]),F=i(A=>t("__requestSensorPermission",[A]),[t]),K=i(A=>t("__isSensorEnabled",[A]),[t]);return{isReady:c,isEnabled:h,status:u,coordinate:v,floor:b,isFollowing:P,accuracy:m,heading:f,dotModel:y,accuracyRingModel:j,headingConeModel:U,Sensors:W,getState:N,enable:k,disable:E,update:L,updateState:B,follow:Z,watchDevicePosition:x,watchDeviceOrientation:O,setPositionProcessor:V,forcePosition:X,reportPosition:Q,enableSensor:T,disableSensor:S,checkSensorPermission:H,requestSensorPermission:F,isSensorEnabled:K,anchor:void 0,displacement:{dx:0,dy:0}}}o(p,"useBlueDot");export{p as useBlueDot,w as useBlueDotEvent};
1
+ var G=Object.defineProperty,o=(s,a)=>G(s,"name",{value:a,configurable:!0});import{MappedinContext as R}from"@mappedin/react-native-sdk";import{useCallback as i,useContext as Y,useMemo as q,useRef as _}from"react";import{useCallback as $,useContext as AA}from"react";import{MappedinContext as tA,useEventCallback as eA,createEventSetupScript as iA,createEventCleanupScript as sA}from"@mappedin/react-native-sdk";import{useRegisterExtension as nA}from"@mappedin/react-native-sdk";var oA='\n // Define require function that uses bridge.modules for external dependencies\n globalThis.require = globalThis.require || ((id) => {\n if (window.bridge?.modules?.[id]) {\n return window.bridge.modules[id];\n }\n throw new Error(\'Module not found: \' + id);\n });\n \n"use strict";var BlueDot=(()=>{var Qo=Object.create;var tt=Object.defineProperty;var es=Object.getOwnPropertyDescriptor;var ts=Object.getOwnPropertyNames;var is=Object.getPrototypeOf,ns=Object.prototype.hasOwnProperty;var Nn=s=>{throw TypeError(s)};var os=(s,i,t)=>i in s?tt(s,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[i]=t;var a=(s,i)=>tt(s,"name",{value:i,configurable:!0}),Lt=(s=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(s,{get:(i,t)=>(typeof require<"u"?require:i)[t]}):s)(function(s){if(typeof require<"u")return require.apply(this,arguments);throw Error(\'Dynamic require of "\'+s+\'" is not supported\')});var ss=(s,i)=>()=>(i||s((i={exports:{}}).exports,i),i.exports),rs=(s,i)=>{for(var t in i)tt(s,t,{get:i[t],enumerable:!0})},Bn=(s,i,t,n)=>{if(i&&typeof i=="object"||typeof i=="function")for(let o of ts(i))!ns.call(s,o)&&o!==t&&tt(s,o,{get:()=>i[o],enumerable:!(n=es(i,o))||n.enumerable});return s};var Ai=(s,i,t)=>(t=s!=null?Qo(is(s)):{},Bn(i||!s||!s.__esModule?tt(t,"default",{value:s,enumerable:!0}):t,s)),as=s=>Bn(tt({},"__esModule",{value:!0}),s);var g=(s,i,t)=>os(s,typeof i!="symbol"?i+"":i,t),rn=(s,i,t)=>i.has(s)||Nn("Cannot "+t);var e=(s,i,t)=>(rn(s,i,"read from private field"),t?t.call(s):i.get(s)),u=(s,i,t)=>i.has(s)?Nn("Cannot add the same private member more than once"):i instanceof WeakSet?i.add(s):i.set(s,t),r=(s,i,t,n)=>(rn(s,i,"write to private field"),n?n.call(s,t):i.set(s,t),t),p=(s,i,t)=>(rn(s,i,"access private method"),t);var Rt=(s,i,t,n)=>({set _(o){r(s,i,o,t)},get _(){return e(s,i,n)}});var fo=ss((Qr,Li)=>{(function(){"use strict";function s(d,h){var f=d.x-h.x,m=d.y-h.y;return f*f+m*m}a(s,"getSqDist");function i(d,h,f){var m=h.x,b=h.y,T=f.x-m,D=f.y-b;if(T!==0||D!==0){var U=((d.x-m)*T+(d.y-b)*D)/(T*T+D*D);U>1?(m=f.x,b=f.y):U>0&&(m+=T*U,b+=D*U)}return T=d.x-m,D=d.y-b,T*T+D*D}a(i,"getSqSegDist");function t(d,h){for(var f=d[0],m=[f],b,T=1,D=d.length;T<D;T++)b=d[T],s(b,f)>h&&(m.push(b),f=b);return f!==b&&m.push(b),m}a(t,"simplifyRadialDist");function n(d,h,f,m,b){for(var T=m,D,U=h+1;U<f;U++){var $e=i(d[U],d[h],d[f]);$e>T&&(D=U,T=$e)}T>m&&(D-h>1&&n(d,h,D,m,b),b.push(d[D]),f-D>1&&n(d,D,f,m,b))}a(n,"simplifyDPStep");function o(d,h){var f=d.length-1,m=[d[0]];return n(d,0,f,h,m),m.push(d[f]),m}a(o,"simplifyDouglasPeucker");function l(d,h,f){if(d.length<=2)return d;var m=h!==void 0?h*h:1;return d=f?d:t(d,m),d=o(d,m),d}a(l,"simplify"),typeof define=="function"&&define.amd?define(function(){return l}):typeof Li<"u"?(Li.exports=l,Li.exports.default=l):typeof self<"u"?self.simplify=l:window.simplify=l})()});var Xs={};rs(Xs,{BaseSensor:()=>te,BlueDot:()=>Xi,ManualSensor:()=>Tt,SensorRegistry:()=>St});var mi=Lt("@mappedin/mappedin-js");var an=class an{constructor(){g(this,"_subscribers",{});g(this,"_abortController",new AbortController)}get signal(){return this._abortController.signal}publish(i,t){!this._subscribers||!this._subscribers[i]||this.signal.aborted||this._subscribers[i].forEach(function(n){typeof n=="function"&&n(t)})}onAbort(i){this.signal.addEventListener("abort",()=>i(),{once:!0})}on(i,t,n){let o=n?.signal;if(o?.aborted||this._abortController&&this._abortController.signal.aborted)return()=>{};this._subscribers||(this._subscribers={}),this._subscribers[i]=this._subscribers[i]||[],this._subscribers[i].push(t);let l=a(()=>{this.off(i,t)},"cleanup");return o&&o.addEventListener("abort",l,{once:!0}),l}off(i,t){if(!this._subscribers||this._subscribers[i]==null||this.signal.aborted)return;let n=this._subscribers[i].indexOf(t);n!==-1&&this._subscribers[i].splice(n,1)}destroy(){this.signal.aborted||(this._subscribers={},this._abortController.abort())}};a(an,"PubSub");var V=an;var Yo=Ai(Lt("zod"));var ln="#2266ff",ls="#808080";var $n={visible:!0,radius:10,color:ln,inactiveColor:ls,heading:{visible:!0,color:ln,opacity:.7,displayWhenInactive:!1},accuracyRing:{visible:!0,color:ln,opacity:.3},timeout:3e4,watchDevicePosition:!0,debug:!1,accuracyThreshold:50,initialState:"hidden",preventOutOfBounds:!0,discardStaleUpdates:!0};var Ve=Lt("@mappedin/mappedin-js");var Un="data:application/octet-stream;base64,Z2xURgIAAAAcIAAAgAQAAEpTT057ImFzc2V0Ijp7InZlcnNpb24iOiIyLjAifSwic2NlbmVzIjpbeyJub2RlcyI6WzBdfV0sInNjZW5lIjowLCJub2RlcyI6W3sibWVzaCI6MH1dLCJidWZmZXJWaWV3cyI6W3siYnVmZmVyIjowLCJieXRlT2Zmc2V0IjowLCJieXRlTGVuZ3RoIjoyMzUyLCJ0YXJnZXQiOjM0OTYyLCJieXRlU3RyaWRlIjoxMn0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjIzNTIsImJ5dGVMZW5ndGgiOjIzNTIsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6NDcwNCwiYnl0ZUxlbmd0aCI6MTU2OCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6OH0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjYyNzIsImJ5dGVMZW5ndGgiOjc2OCwidGFyZ2V0IjozNDk2M31dLCJidWZmZXJzIjpbeyJieXRlTGVuZ3RoIjo3MDQwfV0sImFjY2Vzc29ycyI6W3siYnVmZmVyVmlldyI6MCwiY29tcG9uZW50VHlwZSI6NTEyNiwiY291bnQiOjE5NiwibWF4IjpbMSwxLDAuMDI1MDAwMDAwMzcyNTI5MDNdLCJtaW4iOlstMSwtMSwtMC4wMjUwMDAwMDAzNzI1MjkwM10sInR5cGUiOiJWRUMzIn0seyJidWZmZXJWaWV3IjoxLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MTk2LCJtYXgiOlsxLDEsMV0sIm1pbiI6Wy0xLC0xLC0xXSwidHlwZSI6IlZFQzMifSx7ImJ1ZmZlclZpZXciOjIsImNvbXBvbmVudFR5cGUiOjUxMjYsImNvdW50IjoxOTYsIm1heCI6WzEsMV0sIm1pbiI6WzAsMF0sInR5cGUiOiJWRUMyIn0seyJidWZmZXJWaWV3IjozLCJjb21wb25lbnRUeXBlIjo1MTIzLCJjb3VudCI6Mzg0LCJtYXgiOlsxOTVdLCJtaW4iOlswXSwidHlwZSI6IlNDQUxBUiJ9XSwibWF0ZXJpYWxzIjpbeyJwYnJNZXRhbGxpY1JvdWdobmVzcyI6eyJiYXNlQ29sb3JGYWN0b3IiOlswLjAxNTk5NjI5MzM2MTQ0NjI4OCwwLjEzMjg2ODMyMTU0NDE0NjI3LDEsMV0sIm1ldGFsbGljRmFjdG9yIjowLCJyb3VnaG5lc3NGYWN0b3IiOjF9LCJhbHBoYU1vZGUiOiJCTEVORCIsIm5hbWUiOiJBY2N1cmFjeVJpbmcifV0sIm1lc2hlcyI6W3sicHJpbWl0aXZlcyI6W3sibW9kZSI6NCwiYXR0cmlidXRlcyI6eyJQT1NJVElPTiI6MCwiTk9STUFMIjoxLCJURVhDT09SRF8wIjoyfSwiaW5kaWNlcyI6MywibWF0ZXJpYWwiOjB9XX1dfSCAGwAAQklOAAAAAAAAAIC/zczMPMLFRz6+FHu/zczMPBXvwz5eg2y/zczMPNo5Dj8x21S/zczMPPMENT/zBDW/zczMPDHbVD/aOQ6/zczMPF6DbD8V78O+zczMPL4Uez/CxUe+zczMPAAAgD9lZICkzczMPL4Uez/CxUc+zczMPF6DbD8V78M+zczMPDHbVD/aOQ4/zczMPPMENT/zBDU/zczMPNo5Dj8x21Q/zczMPBXvwz5eg2w/zczMPMLFRz6+FHs/zczMPDIxDSUAAIA/zczMPMLFR76+FHs/zczMPBXvw75eg2w/zczMPNo5Dr8x21Q/zczMPPMENb/zBDU/zczMPDHbVL/aOQ4/zczMPF6DbL8V78M+zczMPL4Ue7/CxUc+zczMPAAAgL8wMFolzczMPL4Ue7/CxUe+zczMPF6DbL8V78O+zczMPDHbVL/aOQ6/zczMPPMENb/zBDW/zczMPNo5Dr8x21S/zczMPBXvw75eg2y/zczMPMLFR76+FHu/zczMPDIxjaUAAIC/zczMPAAAAAAAAIC/zczMvMLFRz6+FHu/zczMvBXvwz5eg2y/zczMvNo5Dj8x21S/zczMvPMENT/zBDW/zczMvDHbVD/aOQ6/zczMvF6DbD8V78O+zczMvL4Uez/CxUe+zczMvAAAgD///ZmkzczMvL4Uez/CxUc+zczMvF6DbD8V78M+zczMvDHbVD/aOQ4/zczMvPMENT/zBDU/zczMvNo5Dj8x21Q/zczMvBXvwz5eg2w/zczMvMLFRz6+FHs/zczMvDIxDSUAAIA/zczMvMLFR76+FHs/zczMvBXvw75eg2w/zczMvNo5Dr8x21Q/zczMvPMENb/zBDU/zczMvDHbVL/aOQ4/zczMvF6DbL8V78M+zczMvL4Ue7/CxUc+zczMvAAAgL9kY00lzczMvL4Ue7/CxUe+zczMvF6DbL8V78O+zczMvDHbVL/aOQ6/zczMvPMENb/zBDW/zczMvNo5Dr8x21S/zczMvBXvw75eg2y/zczMvMLFR76+FHu/zczMvDIxjaUAAIC/zczMvAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAADNzMwizczMPAAAAAAAAIC/zczMPMLFRz6+FHu/zczMPBXvwz5eg2y/zczMPNo5Dj8x21S/zczMPPMENT/zBDW/zczMPDHbVD/aOQ6/zczMPF6DbD8V78O+zczMPL4Uez/CxUe+zczMPAAAgD9lZICkzczMPL4Uez/CxUc+zczMPF6DbD8V78M+zczMPDHbVD/aOQ4/zczMPPMENT/zBDU/zczMPNo5Dj8x21Q/zczMPBXvwz5eg2w/zczMPMLFRz6+FHs/zczMPDIxDSUAAIA/zczMPMLFR76+FHs/zczMPBXvw75eg2w/zczMPNo5Dr8x21Q/zczMPPMENb/zBDU/zczMPDHbVL/aOQ4/zczMPF6DbL8V78M+zczMPL4Ue7/CxUc+zczMPAAAgL8wMFolzczMPL4Ue7/CxUe+zczMPF6DbL8V78O+zczMPDHbVL/aOQ6/zczMPPMENb/zBDW/zczMPNo5Dr8x21S/zczMPBXvw75eg2y/zczMPMLFR76+FHu/zczMPDIxjaUAAIC/zczMPAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAADNzMyizczMvAAAAAAAAIC/zczMvMLFRz6+FHu/zczMvBXvwz5eg2y/zczMvNo5Dj8x21S/zczMvPMENT/zBDW/zczMvDHbVD/aOQ6/zczMvF6DbD8V78O+zczMvL4Uez/CxUe+zczMvAAAgD///ZmkzczMvL4Uez/CxUc+zczMvF6DbD8V78M+zczMvDHbVD/aOQ4/zczMvPMENT/zBDU/zczMvNo5Dj8x21Q/zczMvBXvwz5eg2w/zczMvMLFRz6+FHs/zczMvDIxDSUAAIA/zczMvMLFR76+FHs/zczMvBXvw75eg2w/zczMvNo5Dr8x21Q/zczMvPMENb/zBDU/zczMvDHbVL/aOQ4/zczMvF6DbL8V78M+zczMvL4Ue7/CxUc+zczMvAAAgL9kY00lzczMvL4Ue7/CxUe+zczMvF6DbL8V78O+zczMvDHbVL/aOQ6/zczMvPMENb/zBDW/zczMvNo5Dr8x21S/zczMvBXvw75eg2y/zczMvMLFR76+FHu/zczMvDIxjaUAAIC/zczMvAAAAAAAAIC/AACAJcLFRz6+FHu/vhR7JRXvwz5eg2y/XoNsJdo5Dj8x21S/MdtUJfMENT/zBDW/8wQ1JTHbVD/aOQ6/2jkOJV6DbD8V78O+Fe/DJL4Uez/CxUe+wsVHJAAAgD8yMY2kMjGNCr4Uez/CxUc+wsVHpF6DbD8V78M+Fe/DpDHbVD/aOQ4/2jkOpfMENT/zBDU/8wQ1pdo5Dj8x21Q/MdtUpRXvwz5eg2w/XoNspcLFRz6+FHs/vhR7pTIxDSUAAIA/AACApcLFR76+FHs/vhR7pRXvw75eg2w/XoNspdo5Dr8x21Q/MdtUpfMENb/zBDU/8wQ1pTHbVL/aOQ4/2jkOpV6DbL8V78M+Fe/DpL4Ue7/CxUc+wsVHpAAAgL/KyVMlyslTi74Ue7/CxUe+wsVHJF6DbL8V78O+Fe/DJDHbVL/aOQ6/2jkOJfMENb/zBDW/8wQ1Jdo5Dr8x21S/MdtUJRXvw75eg2y/XoNsJcLFR76+FHu/vhR7JTIxjaUAAIC/AACAJQAAAAAAAIC/AACAJcLFRz6+FHu/vhR7JRXvwz5eg2y/XoNsJdo5Dj8x21S/MdtUJfMENT/zBDW/8wQ1JTHbVD/aOQ6/2jkOJV6DbD8V78O+Fe/DJL4Uez/CxUe+wsVHJAAAgD8yMY2kMjGNCr4Uez/CxUc+wsVHpF6DbD8V78M+Fe/DpDHbVD/aOQ4/2jkOpfMENT/zBDU/8wQ1pdo5Dj8x21Q/MdtUpRXvwz5eg2w/XoNspcLFRz6+FHs/vhR7pTIxDSUAAIA/AACApcLFR76+FHs/vhR7pRXvw75eg2w/XoNspdo5Dr8x21Q/MdtUpfMENb/zBDU/8wQ1pTHbVL/aOQ4/2jkOpV6DbL8V78M+Fe/DpL4Ue7/CxUc+wsVHpAAAgL/KyVMlyslTi74Ue7/CxUe+wsVHJF6DbL8V78O+Fe/DJDHbVL/aOQ6/2jkOJfMENb/zBDW/8wQ1Jdo5Dr8x21S/MdtUJRXvw75eg2y/XoNsJcLFR76+FHu/vhR7JTIxjaUAAIC/AACAJQAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIAlAACAPwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIA/AAAAPQAAgD8AAIA9AACAPwAAwD0AAIA/AAAAPgAAgD8AACA+AACAPwAAQD4AAIA/AABgPgAAgD8AAIA+AACAPwAAkD4AAIA/AACgPgAAgD8AALA+AACAPwAAwD4AAIA/AADQPgAAgD8AAOA+AACAPwAA8D4AAIA/AAAAPwAAgD8AAAg/AACAPwAAED8AAIA/AAAYPwAAgD8AACA/AACAPwAAKD8AAIA/AAAwPwAAgD8AADg/AACAPwAAQD8AAIA/AABIPwAAgD8AAFA/AACAPwAAWD8AAIA/AABgPwAAgD8AAGg/AACAPwAAcD8AAIA/AAB4PwAAgD8AAIA/AACAPwAAAAAAAAAAAAAAPQAAAAAAAIA9AAAAAAAAwD0AAAAAAAAAPgAAAAAAACA+AAAAAAAAQD4AAAAAAABgPgAAAAAAAIA+AAAAAAAAkD4AAAAAAACgPgAAAAAAALA+AAAAAAAAwD4AAAAAAADQPgAAAAAAAOA+AAAAAAAA8D4AAAAAAAAAPwAAAAAAAAg/AAAAAAAAED8AAAAA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";var Vn="data:application/octet-stream;base64,Z2xURgIAAAAcQAAAAAkAAEpTT057ImFzc2V0Ijp7InZlcnNpb24iOiIyLjAifSwic2NlbmVzIjpbeyJub2RlcyI6WzJdfV0sInNjZW5lIjowLCJub2RlcyI6W3sibWVzaCI6MH0seyJtZXNoIjoxfSx7ImNoaWxkcmVuIjpbMCwxXX1dLCJidWZmZXJWaWV3cyI6W3siYnVmZmVyIjowLCJieXRlT2Zmc2V0IjowLCJieXRlTGVuZ3RoIjoyMzUyLCJ0YXJnZXQiOjM0OTYyLCJieXRlU3RyaWRlIjoxMn0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjIzNTIsImJ5dGVMZW5ndGgiOjIzNTIsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6NDcwNCwiYnl0ZUxlbmd0aCI6MTU2OCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6OH0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjYyNzIsImJ5dGVMZW5ndGgiOjc2OCwidGFyZ2V0IjozNDk2M30seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjcwNDAsImJ5dGVMZW5ndGgiOjIzNTIsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6OTM5MiwiYnl0ZUxlbmd0aCI6MjM1MiwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6MTJ9LHsiYnVmZmVyIjowLCJieXRlT2Zmc2V0IjoxMTc0NCwiYnl0ZUxlbmd0aCI6MTU2OCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6OH0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjEzMzEyLCJieXRlTGVuZ3RoIjo3NjgsInRhcmdldCI6MzQ5NjN9XSwiYnVmZmVycyI6W3siYnl0ZUxlbmd0aCI6MTQwODB9XSwiYWNjZXNzb3JzIjpbeyJidWZmZXJWaWV3IjowLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MTk2LCJtYXgiOlswLjM0OTk5OTk5NDAzOTUzNTUsMC4zNDk5OTk5OTQwMzk1MzU1LDAuMDcwMDAwMDAwMjk4MDIzMjJdLCJtaW4iOlstMC4zNDk5OTk5OTQwMzk1MzU1LC0wLjM0OTk5OTk5NDAzOTUzNTUsLTEuNDkwMTE2OTE4NzQ1MzQzNGUtMTBdLCJ0eXBlIjoiVkVDMyJ9LHsiYnVmZmVyVmlldyI6MSwiY29tcG9uZW50VHlwZSI6NTEyNiwiY291bnQiOjE5NiwibWF4IjpbMSwxLDFdLCJtaW4iOlstMSwtMSwtMV0sInR5cGUiOiJWRUMzIn0seyJidWZmZXJWaWV3IjoyLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MTk2LCJtYXgiOlsxLDFdLCJtaW4iOlswLDBdLCJ0eXBlIjoiVkVDMiJ9LHsiYnVmZmVyVmlldyI6MywiY29tcG9uZW50VHlwZSI6NTEyMywiY291bnQiOjM4NCwibWF4IjpbMTk1XSwibWluIjpbMF0sInR5cGUiOiJTQ0FMQVIifSx7ImJ1ZmZlclZpZXciOjQsImNvbXBvbmVudFR5cGUiOjUxMjYsImNvdW50IjoxOTYsIm1heCI6WzAuMjgwMDAwMDAxMTkyMDkyOSwwLjI4MDAwMDAwMTE5MjA5MjksMC4wNzUwMDAwMDI5ODAyMzIyNF0sIm1pbiI6Wy0wLjI4MDAwMDAwMTE5MjA5MjksLTAuMjgwMDAwMDAxMTkyMDkyOSwwLjA2NDk5OTk5NzYxNTgxNDIxXSwidHlwZSI6IlZFQzMifSx7ImJ1ZmZlclZpZXciOjUsImNvbXBvbmVudFR5cGUiOjUxMjYsImNvdW50IjoxOTYsIm1heCI6WzEsMSwxXSwibWluIjpbLTEsLTEsLTFdLCJ0eXBlIjoiVkVDMyJ9LHsiYnVmZmVyVmlldyI6NiwiY29tcG9uZW50VHlwZSI6NTEyNiwiY291bnQiOjE5NiwibWF4IjpbMSwxXSwibWluIjpbMCwwXSwidHlwZSI6IlZFQzIifSx7ImJ1ZmZlclZpZXciOjcsImNvbXBvbmVudFR5cGUiOjUxMjMsImNvdW50IjozODQsIm1heCI6WzE5NV0sIm1pbiI6WzBdLCJ0eXBlIjoiU0NBTEFSIn1dLCJtYXRlcmlhbHMiOlt7InBick1ldGFsbGljUm91Z2huZXNzIjp7ImJhc2VDb2xvckZhY3RvciI6WzAu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AACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIClAACAvwAAAAAAAIA/AAAAPQAAgD8AAIA9AACAPwAAwD0AAIA/AAAAPgAAgD8AACA+AACAPwAAQD4AAIA/AABgPgAAgD8AAIA+AACAPwAAkD4AAIA/AACgPgAAgD8AALA+AACAPwAAwD4AAIA/AADQPgAAgD8AAOA+AACAPwAA8D4AAIA/AAAAPwAAgD8AAAg/AACAPwAAED8AAIA/AAAYPwAAgD8AACA/AACAPwAAKD8AAIA/AAAwPwAAgD8AADg/AACAPwAAQD8AAIA/AABIPwAAgD8AAFA/AACAPwAAWD8AAIA/AABgPwAAgD8AAGg/AACAPwAAcD8AAIA/AAB4PwAAgD8AAIA/AACAPwAAAAAAAAAAAAAAPQAAAAAAAIA9AAAAAAAAwD0AAAAAAAAAPgAAAAAAACA+AAAAAAAAQD4AAAAAAABgPgAAAAAAAIA+AAAAAAAAkD4AAAAAAACgPgAAAAAAALA+AAAAAAAAwD4AAAAAAADQPgAAAAAAAOA+AAAAAAAA8D4AAAAAAAAAPwAAAAAAAAg/AAAAAAAAED8AAAAAAAAYPwAAAAAAACA/AAAAAAAAKD8AAAAAAAAwPwAAAAAAADg/AAAAAAAAQD8AAAAAAABIPwAAAAAAAFA/AAAAAAAAWD8AAAAAAABgPwAAAAAAAGg/AAAAAAAAcD8AAAAAAAB4PwAAAAAAAIA/AAAAAAAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAIA/AAAAP1+KfT+4+Bg/r0F2P8X7MD+ZbWo/7RxHP3qCWj96glo/7RxHP5ltaj/F+zA/r0F2P7j4GD9fin0/AAAAPwAAgD+QDs4+X4p9P3UInj6vQXY/TIxjPpltaj8a9hU+eoJaPzuTrD3tHEc/DOUbPcX7MD8waB08uPgYPwAAAAAAAAA/MGgdPJAOzj4M5Rs9dQiePjuTrD1MjGM+GvYVPhr2FT5MjGM+O5OsPXUInj4M5Rs9kA7OPjBoHTwAAAA/AAAAALj4GD8waB08xfswPwzlGz3tHEc/O5OsPXqCWj8a9hU+mW1qP0yMYz6vQXY/dQiePl+KfT+QDs4+AACAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AACAPwAAAD9fin0/kA7OPq9Bdj91CJ4+mW1qP0yMYz56glo/GvYVPu0cRz87k6w9xfswPwzlGz24+Bg/MGgdPAAAAD8AAAAAkA7OPjBoHTx1CJ4+DOUbPUyMYz47k6w9GvYVPhr2FT47k6w9TIxjPgzlGz11CJ4+MGgdPJAOzj4AAAAAAAAAPzBoHTy4+Bg/DOUbPcX7MD87k6w97RxHPxr2FT56glo/TIxjPpltaj91CJ4+r0F2P5AOzj5fin0/AAAAPwAAgD+4+Bg/X4p9P8X7MD+vQXY/7RxHP5ltaj96glo/eoJaP5ltaj/tHEc/r0F2P8X7MD9fin0/uPgYPwAAgD8AAAA/AAAhAAEAIQAiAAEAAQAiAAIAIgAjAAIAAgAjAAMAIwAkAAMAAwAkAAQAJAAlAAQABAAlAAUAJQAmAAUABQAmAAYAJgAnAAYABgAnAAcAJwAoAAcABwAoAAgAKAApAAgACAApAAkAKQAqAAkACQAqAAoAKgArAAoACgArAAsAKwAsAAsACwAsAAwALAAtAAwADAAtAA0ALQAuAA0ADQAuAA4ALgAvAA4ADgAvAA8ALwAwAA8ADwAwABAAMAAxABAAEAAxABEAMQAyABEAEQAyABIAMgAzABIAEgAzABMAMwA0ABMAEwA0ABQANAA1ABQAFAA1ABUANQA2ABUAFQA2ABYANgA3ABYAFgA3ABcANwA4ABcAFwA4ABgAOAA5ABgAGAA5ABkAOQA6ABkAGQA6ABoAOgA7ABoAGgA7ABsAOwA8ABsAGwA8ABwAPAA9ABwAHAA9AB0APQA+AB0AHQA+AB4APgA/AB4AHgA/AB8APwBAAB8AHwBAACAAQABBACAAYgBjAEIAYwBkAEMAZABlAEQAZQBmAEUAZgBnAEYAZwBoAEcAaABpAEgAaQBqAEkAagBrAEoAawBsAEsAbABtAEwAbQBuAE0AbgBvAE4AbwBwAE8AcABxAFAAcQByAFEAcgBzAFIAcwB0AFMAdAB1AFQAdQB2AFUAdgB3AFYAdwB4AFcAeAB5AFgAeQB6AFkAegB7AFoAewB8AFsAfAB9AFwAfQB+AF0AfgB/AF4AfwCAAF8AgACBAGAAgQCCAGEApACjAIMApQCkAIQApgClAIUApwCmAIYAqACnAIcAqQCoAIgAqgCpAIkAqwCqAIoArACrAIsArQCsAIwArgCtAI0ArwCuAI4AsACvAI8AsQCwAJAAsgCxAJEAswCyAJIAtACzAJMAtQC0AJQAtgC1AJUAtwC2AJYAuAC3AJcAuQC4AJgAugC5AJkAuwC6AJoAvAC7AJsAvQC8AJwAvgC9AJ0AvwC+AJ4AwAC/AJ8AwQDAAKAAwgDBAKEAwwDCAKIAAAAAAClcj76amZk9xb5fPfqajL6amZk9LHLbPYdyhL6amZk9CEsfPiNmbr6amZk93b1KPt29Sr6amZk9I2ZuPghLH76amZk9h3KEPixy272amZk9+pqMPsW+X72amZk9KVyPPi3lk6OamZk9+pqMPsW+Xz2amZk9h3KEPixy2z2amZk9I2ZuPghLHz6amZk93b1KPt29Sj6amZk9CEsfPiNmbj6amZk9LHLbPYdyhD6amZk9xb5fPfqajD6amZk9niIeJClcjz6amZk9xb5fvfqajD6amZk9LHLbvYdyhD6amZk9CEsfviNmbj6amZk93b1Kvt29Sj6amZk9I2ZuvghLHz6amZk9h3KEvixy2z2amZk9+pqMvsW+Xz2amZk9KVyPvqVSciSamZk9+pqMvsW+X72amZk9h3KEvixy272amZk9I2ZuvghLH76amZk93b1Kvt29Sr6amZk9CEsfviNmbr6amZk9LHLbvYdyhL6amZk9xb5fvfqajL6amZk9niKepClcj76amZk9AAAAAClcj764HoU9xb5fPfqajL64HoU9LHLbPYdyhL64HoU9CEsfPiNmbr64HoU93b1KPt29Sr64HoU9I2ZuPghLH764HoU9h3KEPixy2724HoU9+pqMPsW+X724HoU9KVyPPg9gqKO4HoU9+pqMPsW+Xz24HoU9h3KEPixy2z24HoU9I2ZuPghLHz64HoU93b1KPt29Sj64HoU9CEsfPiNmbj64HoU9LHLbPYdyhD64HoU9xb5fPfqajD64HoU9niIeJClcjz64HoU9xb5fvfqajD64HoU9LHLbvYdyhD64HoU9CEsfviNmbj64HoU93b1Kvt29Sj64HoU9I2ZuvghLHz64HoU9h3KEvixy2z24HoU9+pqMvsW+Xz24HoU9KVyPvjUVaCS4HoU9+pqMvsW+X724HoU9h3KEvixy2724HoU9I2ZuvghLH764HoU93b1Kvt29Sr64HoU9CEsfviNmbr64HoU9LHLbvYdyhL64HoU9xb5fvfqajL64HoU9niKepClcj764HoU9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAArXoyGamZk9AAAAAClcj76amZk9xb5fPfqajL6amZk9LHLbPYdyhL6amZk9CEsfPiNmbr6amZk93b1KPt29Sr6amZk9I2ZuPghLH76amZk9h3KEPixy272amZk9+pqMPsW+X72amZk9KVyPPi3lk6OamZk9+pqMPsW+Xz2amZk9h3KEPixy2z2amZk9I2ZuPghLHz6amZk93b1KPt29Sj6amZk9CEsfPiNmbj6amZk9LHLbPYdyhD6amZk9xb5fPfqajD6amZk9niIeJClcjz6amZk9xb5fvfqajD6amZk9LHLbvYdyhD6amZk9CEsfviNmbj6amZk93b1Kvt29Sj6amZk9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AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgCUAAIA/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgKUAAIC/AAAAAAAAgD8AAAA9AACAPwAAgD0AAIA/AADAPQAAgD8AAAA+AACAPwAAID4AAIA/AABAPgAAgD8AAGA+AACAPwAAgD4AAIA/AACQPgAAgD8AAKA+AACAPwAAsD4AAIA/AADAPgAAgD8AANA+AACAPwAA4D4AAIA/AADwPgAAgD8AAAA/AACAPwAACD8AAIA/AAAQPwAAgD8AABg/AACAPwAAID8AAIA/AAAoPwAAgD8AADA/AACAPwAAOD8AAIA/AABAPwAAgD8AAEg/AACAPwAAUD8AAIA/AABYPwAAgD8AAGA/AACAPwAAaD8AAIA/AABwPwAAgD8AAHg/AACAPwAAgD8AAIA/AAAAAAAAAAAAAAA9AAAAAAAAgD0AAAAAAADAPQAAAAAAAAA+AAAAAAAAID4AAAAAAABAPgAAAAAAAGA+AAAAAAAAgD4AAAAAAACQPgAAAAAAAKA+AAAAAAAAsD4AAAAAAADAPgAAAAAAANA+AAAAAAAA4D4AAAAAAADwPgAAAAAAAAA/AAAAAAAACD8AAAAAAAAQPwAAAAAAABg/AAAAAAAAID8AAAAAAAAoPwAAAAAAADA/AAAAAAAAOD8AAAAAAABAPwAAAAAAAEg/AAAAAAAAUD8AAAAAAABYPwAAAAAAAGA/AAAAAAAAaD8AAAAAAABwPwAAAAAAAHg/AAAAAAAAgD8AAAAAAAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAgD8AAAA/X4p9P7j4GD+vQXY/xfswP5ltaj/tHEc/eoJaP3qCWj/tHEc/mW1qP8X7MD+vQXY/uPgYP1+KfT8AAAA/AACAP5AOzj5fin0/dQiePq9Bdj9MjGM+mW1qPxr2FT56glo/O5OsPe0cRz8M5Rs9xfswPzBoHTy4+Bg/AAAAAAAAAD8waB08kA7OPgzlGz11CJ4+O5OsPUyMYz4a9hU+GvYVPkyMYz47k6w9dQiePgzlGz2QDs4+MGgdPAAAAD8AAAAAuPgYPzBoHTzF+zA/DOUbPe0cRz87k6w9eoJaPxr2FT6ZbWo/TIxjPq9Bdj91CJ4+X4p9P5AOzj4AAIA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAAA/AAAAPwAAAD8AAIA/AAAAP1+KfT+QDs4+r0F2P3UInj6ZbWo/TIxjPnqCWj8a9hU+7RxHPzuTrD3F+zA/DOUbPbj4GD8waB08AAAAPwAAAACQDs4+MGgdPHUInj4M5Rs9TIxjPjuTrD0a9hU+GvYVPjuTrD1MjGM+DOUbPXUInj4waB08kA7OPgAAAAAAAAA/MGgdPLj4GD8M5Rs9xfswPzuTrD3tHEc/GvYVPnqCWj9MjGM+mW1qP3UInj6vQXY/kA7OPl+KfT8AAAA/AACAP7j4GD9fin0/xfswP69Bdj/tHEc/mW1qP3qCWj96glo/mW1qP+0cRz+vQXY/xfswP1+KfT+4+Bg/AACAPwAAAD8AACEAAQAhACIAAQABACIAAgAiACMAAgACACMAAwAjACQAAwADACQABAAkACUABAAEACUABQAlACYABQAFACYABgAmACcABgAGACcABwAnACgABwAHACgACAAoACkACAAIACkACQApACoACQAJACoACgAqACsACgAKACsACwArACwACwALACwADAAsAC0ADAAMAC0ADQAtAC4ADQANAC4ADgAuAC8ADgAOAC8ADwAvADAADwAPADAAEAAwADEAEAAQADEAEQAxADIAEQARADIAEgAyADMAEgASADMAEwAzADQAEwATADQAFAA0ADUAFAAUADUAFQA1ADYAFQAVADYAFgA2ADcAFgAWADcAFwA3ADgAFwAXADgAGAA4ADkAGAAYADkAGQA5ADoAGQAZADoAGgA6ADsAGgAaADsAGwA7ADwAGwAbADwAHAA8AD0AHAAcAD0AHQA9AD4AHQAdAD4AHgA+AD8AHgAeAD8AHwA/AEAAHwAfAEAAIABAAEEAIABiAGMAQgBjAGQAQwBkAGUARABlAGYARQBmAGcARgBnAGgARwBoAGkASABpAGoASQBqAGsASgBrAGwASwBsAG0ATABtAG4ATQBuAG8ATgBvAHAATwBwAHEAUABxAHIAUQByAHMAUgBzAHQAUwB0AHUAVAB1AHYAVQB2AHcAVgB3AHgAVwB4AHkAWAB5AHoAWQB6AHsAWgB7AHwAWwB8AH0AXAB9AH4AXQB+AH8AXgB/AIAAXwCAAIEAYACBAIIAYQCkAKMAgwClAKQAhACmAKUAhQCnAKYAhgCoAKcAhwCpAKgAiACqAKkAiQCrAKoAigCsAKsAiwCtAKwAjACuAK0AjQCvAK4AjgCwAK8AjwCxALAAkACyALEAkQCzALIAkgC0ALMAkwC1ALQAlAC2ALUAlQC3ALYAlgC4ALcAlwC5ALgAmAC6ALkAmQC7ALoAmgC8ALsAmwC9ALwAnAC+AL0AnQC/AL4AngDAAL8AnwDBAMAAoADCAMEAoQDDAMIAogA=";var Hn="data:application/octet-stream;base64,Z2xURgIAAABQMgAANAUAAEpTT057ImFzc2V0Ijp7InZlcnNpb24iOiIyLjAiLCJnZW5lcmF0b3IiOiJUSFJFRS5HTFRGRXhwb3J0ZXIgcjE3MyJ9LCJzY2VuZXMiOlt7Im5hbWUiOiJBdXhTY2VuZSIsIm5vZGVzIjpbMF19XSwic2NlbmUiOjAsIm5vZGVzIjpbeyJtZXNoIjowfV0sImJ1ZmZlclZpZXdzIjpbeyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjAsImJ5dGVMZW5ndGgiOjI4ODAsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6Mjg4MCwiYnl0ZUxlbmd0aCI6MTkyMCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6OH0seyJidWZmZXIiOjAsImJ5dGVPZmZzZXQiOjQ4MDAsImJ5dGVMZW5ndGgiOjI4ODAsInRhcmdldCI6MzQ5NjIsImJ5dGVTdHJpZGUiOjEyfSx7ImJ1ZmZlciI6MCwiYnl0ZU9mZnNldCI6NzY4MCwiYnl0ZUxlbmd0aCI6Mzg0MCwidGFyZ2V0IjozNDk2MiwiYnl0ZVN0cmlkZSI6MTZ9XSwiYnVmZmVycyI6W3siYnl0ZUxlbmd0aCI6MTE1MjB9XSwiYWNjZXNzb3JzIjpbeyJidWZmZXJWaWV3IjowLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MjQwLCJtYXgiOlswLjU3MjIzNDU3MDk4MDA3MiwxLjQ0NjA3ODQxOTY4NTM2MzgsMC4xMDAwMDAwMDE0OTAxMTYxMl0sIm1pbiI6Wy0wLjcxMjM0NjY3MzAxMTc3OTgsMCwwXSwidHlwZSI6IlZFQzMifSx7ImJ1ZmZlclZpZXciOjEsImNvbXBvbmVudFR5cGUiOjUxMjYsImNvdW50IjoyNDAsIm1heCI6WzAsMV0sIm1pbiI6WzAsMF0sInR5cGUiOiJWRUMyIn0seyJidWZmZXJWaWV3IjoyLCJjb21wb25lbnRUeXBlIjo1MTI2LCJjb3VudCI6MjQwLCJtYXgiOlswLjk4NzY4ODMwMjk5Mzc3NDQsMC45OTk2NTczMzI4OTcxODYzLDFdLCJtaW4iOlstMC45ODc2ODgz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AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAIA/AAAAAAAAgD8AAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAIAAAACAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwEZZD9wcei+AAAAAAEZZD9wcei+AAAAAAEZZD9wcei+AAAAAAEZZD9wcei+AAAAAAEZZD9wcei+AAAAAAEZZD9wcei+AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAPMENT/zBDW/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAHBx6D4BGWS/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wID4k2Xy/AAAAAF8wIL4k2Xy/AAAAAF8wIL4k2Xy/AAAAAF8wIL4k2Xy/AAAAAF8wIL4k2Xy/AAAAgF8wIL4k2Xy/AAAAgF8wIL4k2Xy/AAAAgHBx6L4BGWS/AAAAAHBx6L4BGWS/AAAAAHBx6L4BGWS/AAAAAHBx6L4BGWS/AAAAgHBx6L4BGWS/AAAAgHBx6L4BGWS/AAAAgPMENb/zBDW/AAAAAPMENb/zBDW/AAAAAPMENb/zBDW/AAAAAPMENb/zBDW/AAAAgPMENb/zBDW/AAAAgPMENb/zBDW/AAAAgAEZZL9wcei+AAAAAAEZZL9wcei+AAAAAAEZZL9wcei+AAAAAAEZZL9wcei+AAAAgAEZZL9wcei+AAAAgAEZZL9wcei+AAAAgCTZfL9fMCC+AAAAACTZfL9fMCC+AAAAACTZfL9fMCC+AAAAACTZfL9fMCC+AAAAgCTZfL9fMCC+AAAAgCTZfL9fMCC+AAAAgF/FfD+ZICK+AAAAAF/FfD+ZICK+AAAAAF/FfD+ZICK+AAAAAF/FfD+ZICK+AAAAAF/FfD+ZICK+AAAAAF/FfD+ZICK+AAAAAPKbOj6Ytns/AAAAAPKbOj6Ytns/AAAAAPKbOj6Ytns/AAAAAPKbOj6Ytns/AAAAAPKbOj6Ytns/AAAAAPKbOj6Ytns/AAAAALuoBT5Uz30/AAAAALuoBT5Uz30/AAAAALuoBT5Uz30/AAAAALuoBT5Uz30/AAAAALuoBT5Uz30/AAAAALuoBT5Uz30/AAAAAMeuoD36NX8/AAAAAMeuoD36NX8/AAAAAMeuoD36NX8/AAAAAMeuoD36NX8/AAAAAMeuoD36NX8/AAAAAMeuoD36NX8/AAAAAGhy1jyL6X8/AAAAAGhy1jyL6X8/AAAAAGhy1jyL6X8/AAAAAGhy1jyL6X8/AAAAAGhy1jyL6X8/AAAAAGhy1jyL6X8/AAAAAGhy1ryL6X8/AAAAAGhy1ryL6X8/AAAAAGhy1ryL6X8/AAAAAGhy1ryL6X8/AAAAAGhy1ryL6X8/AAAAAGhy1ryL6X8/AAAAAMeuoL36NX8/AAAAAMeuoL36NX8/AAAAAMeuoL36NX8/AAAAAMeuoL36NX8/AAAAAMeuoL36NX8/AAAAAMeuoL36NX8/AAAAALuoBb5Uz30/AAAAALuoBb5Uz30/AAAAALuoBb5Uz30/AAAAALuoBb5Uz30/AAAAALuoBb5Uz30/AAAAALuoBb5Uz30/AAAAAPKbOr6Ytns/AAAAAPKbOr6Ytns/AAAAAPKbOr6Ytns/AAAAAPKbOr6Ytns/AAAAAPKbOr6Ytns/AAAAAPKbOr6Ytns/AAAAAGcMb7477Xg/AAAAAGcMb7477Xg/AAAAAGcMb7477Xg/AAAAAGcMb7477Xg/AAAAAGcMb7477Xg/AAAAAGcMb7477Xg/AAAAAOpGd7/vg4S+AAAAAOpGd7/vg4S+AAAAAOpGd7/vg4S+AAAAAOpGd7/vg4S+AAAAgOpGd7/vg4S+AAAAgOpGd7/vg4S+AAAAgCTZfD9fMCC+AAAAACTZfD9fMCC+AAAAACTZfD9fMCC+AAAAACTZfD9fMCC+AAAAACTZfD9fMCC+AAAAACTZfD9fMCC+AAAAAAAAgD8AAIA/AACAPyqVbT8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/KpVtPwAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPyqVbT8AAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8qlW0/AACAPwAAgD8AAIA/OgBePwAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPzoAXj8AAIA/AACAPwAAgD8qlW0/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD86AF4/AACAPwAAgD8AAIA/ZDlSPwAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAP2Q5Uj8AAIA/AACAPwAAgD86AF4/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD9kOVI/AACAPwAAgD8AAIA/B+hKPwAAgD8AAIA/AACAP2Q5Uj8AAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8H6Eo/AACAPwAAgD8AAIA//mxIPwAAgD8AAIA/AACAPwfoSj8AAIA/AACAPwAAgD9kOVI/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD/+bEg/AACAPwAAgD8AAIA/B+hKPwAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/KpVtPwAAgD8AAIA/AACAPyqVbT8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/KpVtPwAAgD8AAIA/AACAPzoAXj8AAIA/AACAPwAAgD8qlW0/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8qlW0/AACAPwAAgD8AAIA/OgBePwAAgD8AAIA/AACAP2Q5Uj8AAIA/AACAPwAAgD86AF4/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD86AF4/AACAPwAAgD8AAIA/ZDlSPwAAgD8AAIA/AACAPwfoSj8AAIA/AACAPwAAgD9kOVI/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/ZDlSPwAAgD8AAIA/AACAP/5sSD8AAIA/AACAPwAAgD8H6Eo/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD9kOVI/AACAPwAAgD8AAIA/B+hKPwAAgD8AAIA/AACAPwfoSj8AAIA/AACAPwAAgD/+bEg/AACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAAAAgD8AAIA/AACAPwAAAAAAAIA/AACAPwAAgD8AAAAAAACAPwAAgD8AAIA/AAAAAA==";var dn=class dn extends Error{};a(dn,"InvalidTokenError");var un=dn;un.prototype.name="InvalidTokenError";var kn=63710088e-1;var cs="[MappedinJS]";function hn(s="",{prefix:i=cs}={}){let t=`${i}${s?`-${s}`:""}`,n=a((o,l)=>{if(typeof window<"u"&&window.rnDebug){let d=l.map(h=>h instanceof Error&&h.stack?`${h.message}\n${h.stack}`:h);window.rnDebug(`${s} ${o}: ${d.join(" ")}`)}},"rnDebug");return{logState:0,log(...o){this.logState<=0&&(console.log(t,...o),n("log",o))},warn(...o){this.logState<=1&&(console.warn(t,...o),n("warn",o))},error(...o){this.logState<=2&&(console.error(t,...o),n("error",o))},assert(...o){console.assert(...o)},time(o){console.time(o)},timeEnd(o){console.timeEnd(o)},setLevel(o){0<=o&&o<=3&&(this.logState=o)}}}a(hn,"createLogger");var lr=hn();function ne(s){return s*(Math.PI/180)}a(ne,"toRadians");function Oi(s){return s*(180/Math.PI)}a(Oi,"toDegrees");function Jn(s,i){return(s%i+i)%i}a(Jn,"euclideanModulo");function cn([s,i],[t,n]){let o=ne(n-i),l=ne(t-s),d=ne(i),h=ne(n),f=Math.sin(o/2)*Math.sin(o/2)+Math.sin(l/2)*Math.sin(l/2)*Math.cos(d)*Math.cos(h),m=2*Math.atan2(Math.sqrt(f),Math.sqrt(1-f));return kn*m}a(cn,"haversineDistance");function qn([s,i],[t,n]){let o=ne(i),l=ne(s),d=ne(n),f=ne(t)-l,m=Math.sin(f)*Math.cos(d),b=Math.cos(o)*Math.sin(d)-Math.sin(o)*Math.cos(d)*Math.cos(f);return Oi((Math.atan2(m,b)+Math.PI*2)%(Math.PI*2))}a(qn,"getForwardBearing");function Kn(s,i){let t=Jn(s,Math.PI*2),n=Jn(i,Math.PI*2),o=n-t,l=n+(o>Math.PI?-Math.PI*2:o<-Math.PI?Math.PI*2:0);return{start:t,end:l}}a(Kn,"shortestTweenRotation");var c=hn("",{prefix:"[BlueDot]"});function fn(s,i){if(i==null)return s;let t={...s};for(let n in i){let o=i[n];o!==void 0&&n!=="accuracyRing"&&n!=="heading"&&(t[n]=o)}if(i.accuracyRing!=null){t.accuracyRing={...s.accuracyRing};for(let n in i.accuracyRing){let o=i.accuracyRing[n];o!==void 0&&(t.accuracyRing[n]=o)}}if(i.heading!=null){t.heading={...s.heading};for(let n in i.heading){let o=i.heading[n];o!==void 0&&(t.heading[n]=o)}}return t}a(fn,"deepMergeState");function ms([s,i],[t,n],[o,l]){let d=t-s,h=n-i,f=d**2+h**2;if(f===0)return;let m=((o-s)*d+(l-i)*h)/f,b;m<=0?b=[s,i]:m>=1?b=[t,n]:b=[s+m*d,i+m*h];let T=cn([o,l],b);return{proportion:Math.max(0,Math.min(1,m)),intersection:b,distance:T}}a(ms,"getPointLineIntersection");function Wn(s,i){if(s==null||s.length<2)return;let t=Number.MAX_SAFE_INTEGER,n,o=0,l=0;for(let d=0;d<s.length-1;d++){let h=s[d],f=s[d+1],m=ms(h,f,i);m!=null&&m.distance<t&&(t=m.distance,n=m.intersection,o=d,l=m.proportion)}if(n)return{intersection:n,distance:t,segmentIndex:o,proportion:l}}a(Wn,"findBlueDotOnPath");function zn(s,i){if(i==null)return s;let t={latitude:s?.latitude,longitude:s?.longitude,accuracy:s?.accuracy,floor:s?.floor,heading:s?.heading,timestamp:s?.timestamp};return"latitude"in i&&(t.latitude=i?.latitude==null||i.latitude==="device"?s?.latitude:i.latitude),"longitude"in i&&(t.longitude=i.longitude==null||i.longitude==="device"?s?.longitude:i.longitude),"accuracy"in i&&(t.accuracy=i.accuracy==="device"?s?.accuracy:i.accuracy),"floor"in i&&(t.floor=i.floor==="device"?s?.floor:i.floor),"heading"in i&&(t.heading=i.heading==="device"?s?.heading:i.heading),"timestamp"in i&&(t.timestamp=i.timestamp),t}a(zn,"getPositionWithOverrides");function jn({longitude:s,latitude:i},{radius:t,center:n}){return cn([s,i],[n.longitude,n.latitude])<=t}a(jn,"isWithinPanBounds");function Zn(s,i){let t=s*i/.35;return Math.max(t,1)}a(Zn,"computeBlueDotScale");function Xn(s,i,t,n=!0){return n?i!=null&&(s==="active"||s==="inactive"&&t):!1}a(Xn,"shouldShowHeadingCone");function Yn(s,i=!0){return i?s!=="hidden"&&s!=="disabled":!1}a(Yn,"shouldShowBlueDot");function Qn(s,i,t=!0){return t&&s==="active"&&i!=null}a(Qn,"shouldShowAccuracyRing");function mn(s,i,t){if(t!=null&&"discardStaleUpdates"in t&&t.discardStaleUpdates===!1)return!1;let n=s!=null&&i!=null&&s<i;return n&&t?.debug===!0&&c.log(`Stale timestamp discarded (incoming: ${s}, current: ${i})`),n}a(mn,"isStaleTimestamp");function pn(s,i){let t=s!=null?ne(s):0,n=i!=null?ne(-i):0,{start:o,end:l}=Kn(t,n);return[Oi(o),Oi(l)]}a(pn,"computeHeadingRotation");var y,B,L,Ue,it,K,oe,se,W,z,j,ge,Me,we,ye,nt,Ct,ot,st,P,eo,he,to,io,no,rt,Gt,oo,Ft,bn,so,ro,ao,lo,gn=class gn{constructor(i,t){u(this,P);u(this,y);u(this,B);u(this,L,1);u(this,Ue,0);u(this,it,!1);u(this,K);u(this,oe);u(this,se);u(this,W);u(this,z);u(this,j);u(this,ge);u(this,Me);u(this,we);u(this,ye);u(this,nt,!1);g(this,"dot");g(this,"accuracyRing");g(this,"headingCone");u(this,Ct,a(i=>{e(this,Ft).call(this,i)},"#handleCameraChange"));g(this,"add",a(i=>{this.remove(),e(this,Ft).call(this,{zoomLevel:e(this,y).Camera.zoomLevel}),r(this,ge,i.floor);let t=new Ve.Coordinate({latitude:i.latitude,longitude:i.longitude});this.accuracyRing=e(this,y).Models.add(t,Un,{visible:!1,scale:i.accuracy??0,rotation:[0,0,0],color:e(this,B).getState().accuracyRing.color,opacity:e(this,B).getState().accuracyRing.opacity,visibleThroughGeometry:!0}),this.headingCone=e(this,y).Models.add(t,Hn,{visible:!1,scale:e(this,L),rotation:[0,0,0],color:e(this,B).getState().heading.color,opacity:e(this,B).getState().heading.opacity,visibleThroughGeometry:!0}),this.dot=e(this,y).Models.add(t,Vn,{visible:!1,scale:e(this,L),rotation:[0,0,0],interactive:!0,visibleThroughGeometry:!0,material:{Inner:{color:e(this,B).status==="inactive"?e(this,B).getState().inactiveColor:e(this,B).getState().color}}})},"add"));u(this,ot);u(this,st);g(this,"update",a((i,t={},n)=>{let{position:o,status:l,accuracy:d,heading:h}=i;d!=null&&r(this,ot,d),h!=null&&r(this,st,h),l&&p(this,P,lo).call(this,l),t.animate?p(this,P,no).call(this,o,d,h,n):(o!=null&&r(this,W,p(this,P,he).call(this,e(this,W))),d!=null&&r(this,z,p(this,P,he).call(this,e(this,z))),h!=null&&r(this,j,p(this,P,he).call(this,e(this,j))),p(this,P,io).call(this,o,d,h,n))},"update"));u(this,rt,a(()=>{r(this,it,!0),e(this,y).update()},"#markDirty"));u(this,Gt,a(()=>{p(this,P,oo).call(this),e(this,it)&&(r(this,it,!1),p(this,P,bn).call(this))},"#handlePreRender"));u(this,Ft,a(i=>{let t=e(this,y).getMetersPerPixel();if(e(this,Ue)!==0&&Math.abs(t-e(this,Ue))<=.01*e(this,Ue))return;r(this,Ue,t);let n=Zn(e(this,B).getState().radius,t);n!==e(this,L)&&(r(this,L,n),this.dot&&e(this,y).updateState(this.dot,{scale:[e(this,L),e(this,L),e(this,L)]}),this.headingCone&&e(this,y).updateState(this.headingCone,{scale:[e(this,L),e(this,L),1]}))},"#syncScale"));g(this,"remove",a(()=>{r(this,nt,!0),p(this,P,to).call(this),r(this,nt,!1),r(this,K,void 0),r(this,oe,void 0),r(this,se,void 0),r(this,ge,void 0),r(this,Me,void 0),r(this,we,void 0),r(this,ye,void 0),r(this,ot,void 0),r(this,st,void 0),this.dot&&(e(this,y).Models.remove(this.dot),this.dot=void 0),this.accuracyRing&&(e(this,y).Models.remove(this.accuracyRing),this.accuracyRing=void 0),this.headingCone&&(e(this,y).Models.remove(this.headingCone),this.headingCone=void 0)},"remove"));g(this,"destroy",a(()=>{this.remove(),e(this,y).off("pre-render",e(this,Gt)),e(this,y).off("camera-change",e(this,Ct))},"destroy"));r(this,y,i),r(this,B,t),e(this,y).on("pre-render",e(this,Gt)),e(this,y).on("camera-change",e(this,Ct))}getPosition(){if(this.dot!=null)return e(this,y).getState(this.dot).position}updateFloor(i){e(this,ge)?.id!==i?.id&&(r(this,we,Date.now()),r(this,ye,e(this,Me)??p(this,P,eo).call(this)),r(this,ge,i))}};y=new WeakMap,B=new WeakMap,L=new WeakMap,Ue=new WeakMap,it=new WeakMap,K=new WeakMap,oe=new WeakMap,se=new WeakMap,W=new WeakMap,z=new WeakMap,j=new WeakMap,ge=new WeakMap,Me=new WeakMap,we=new WeakMap,ye=new WeakMap,nt=new WeakMap,Ct=new WeakMap,ot=new WeakMap,st=new WeakMap,P=new WeakSet,eo=a(function(){return this.dot?e(this,y).getState(this.dot)?.verticalOffset??0:0},"#getCurrentAltitude"),he=a(function(i){i&&(i.stop(),e(this,y).removeTween(i))},"#stopTween"),to=a(function(){r(this,W,p(this,P,he).call(this,e(this,W))),r(this,z,p(this,P,he).call(this,e(this,z))),r(this,j,p(this,P,he).call(this,e(this,j)))},"#stopAllTweens"),io=a(function(i,t,n,o){if(i&&(r(this,K,{longitude:i.longitude,latitude:i.latitude}),typeof o=="function"&&o(e(this,K),!0)),t!=null&&r(this,oe,t),n!=null){let[,l]=pn(e(this,se),n);r(this,se,l)}p(this,P,bn).call(this)},"#setImmediate"),no=a(function(i,t,n,o){if(i){let l={longitude:i.longitude,latitude:i.latitude},d=e(this,K)??p(this,P,so).call(this)??l;r(this,K,{...d}),r(this,W,p(this,P,he).call(this,e(this,W))),r(this,W,e(this,y).tween({longitude:d.longitude,latitude:d.latitude}).to(l,1e3).easing(Ve.ANIMATION_TWEENS["ease-out"]).onUpdate(({longitude:h,latitude:f},m)=>{r(this,K,{longitude:h,latitude:f}),e(this,rt).call(this),typeof o=="function"&&o(e(this,K),m>=1)}).onStop(({longitude:h,latitude:f})=>{e(this,nt)||typeof o=="function"&&o({longitude:h,latitude:f},!1)}).onComplete(()=>{e(this,W)&&(e(this,y).removeTween(e(this,W)),r(this,W,void 0))}).start())}if(t!=null){let l=t,d=e(this,oe)??p(this,P,ro).call(this)??l;r(this,oe,d),r(this,z,p(this,P,he).call(this,e(this,z))),r(this,z,e(this,y).tween({scale:d}).to({scale:l},150).easing(Ve.ANIMATION_TWEENS.linear).onUpdate(({scale:h})=>{r(this,oe,h),e(this,rt).call(this)}).onComplete(()=>{e(this,z)&&(e(this,y).removeTween(e(this,z)),r(this,z,void 0))}).start())}if(n!=null){let[l,d]=pn(e(this,se)??p(this,P,ao).call(this),n);r(this,se,l),r(this,j,p(this,P,he).call(this,e(this,j))),r(this,j,e(this,y).tween({rotation:l}).to({rotation:d},150).easing(Ve.ANIMATION_TWEENS.linear).onUpdate(({rotation:h})=>{r(this,se,h),e(this,rt).call(this)}).onComplete(()=>{e(this,j)&&(e(this,y).removeTween(e(this,j)),r(this,j,void 0))}).start())}},"#animateToTarget"),rt=new WeakMap,Gt=new WeakMap,oo=a(function(){if(!this.dot||e(this,B).status==="hidden"||e(this,B).status==="disabled")return;let i=e(this,ge)?e(this,y).getState(e(this,ge))?.altitude??0:e(this,y).getState(e(this,y).currentFloor)?.altitude??0,t=i;if(e(this,we)!=null&&e(this,ye)!=null){let n=Date.now()-e(this,we),o=Math.min(n/1e3,1);if(o<1){let l=1-Math.pow(1-o,3);t=e(this,ye)+(i-e(this,ye))*l}else r(this,we,void 0),r(this,ye,void 0)}if(e(this,Me)==null||Math.abs(e(this,Me)-t)>.001){r(this,Me,t);let n={verticalOffset:t};e(this,y).updateState(this.dot,n),this.accuracyRing&&e(this,y).updateState(this.accuracyRing,n),this.headingCone&&e(this,y).updateState(this.headingCone,n)}},"#syncAltitude"),Ft=new WeakMap,bn=a(function(){let i=e(this,K)?new Ve.Coordinate({latitude:e(this,K).latitude,longitude:e(this,K).longitude}):void 0;if(this.dot){let t={scale:[e(this,L),e(this,L),e(this,L)]};i&&(t.position=i),e(this,y).updateState(this.dot,t)}if(this.accuracyRing){let t={};i&&(t.position=i),e(this,oe)!=null&&(t.scale=[e(this,oe),e(this,oe),1]),e(this,y).updateState(this.accuracyRing,t)}if(this.headingCone){let t={scale:[e(this,L),e(this,L),1]};i&&(t.position=i),e(this,se)!=null&&(t.rotation=[0,0,e(this,se)]),e(this,y).updateState(this.headingCone,t)}},"#applyAllModels"),so=a(function(){if(!this.dot)return;let i=e(this,y).getState(this.dot);if(i?.position)return{longitude:i.position.longitude,latitude:i.position.latitude}},"#readCurrentPosition"),ro=a(function(){return this.accuracyRing?e(this,y).getState(this.accuracyRing)?.scale?.[0]:void 0},"#readCurrentAccuracyScale"),ao=a(function(){return this.headingCone?e(this,y).getState(this.headingCone)?.rotation?.[2]:void 0},"#readCurrentHeadingRotation"),lo=a(function(i){let t=e(this,B).getState(),n=i==="active",o=Yn(i,t.visible);if(this.dot){let l={visible:o};o&&(l.material={Inner:{color:n?t.color:t.inactiveColor}}),e(this,y).updateState(this.dot,l)}this.accuracyRing&&e(this,y).updateState(this.accuracyRing,{visible:Qn(i,e(this,ot),t.accuracyRing.visible)}),this.headingCone&&e(this,y).updateState(this.headingCone,{visible:Xn(i,e(this,st),t.heading.displayWhenInactive,t.heading.visible),color:n?t.heading.color:t.inactiveColor})},"#applyStatusAndAppearance"),a(gn,"ModelManager");var _i=gn;var I=Ai(Lt("zod")),uo=I.default.object({coords:I.default.object({latitude:I.default.number(),longitude:I.default.number(),accuracy:I.default.number(),altitude:I.default.number().optional().nullable(),altitudeAccuracy:I.default.number().optional().nullable(),heading:I.default.number().optional().nullable(),speed:I.default.number().optional().nullable(),floorLevel:I.default.number().optional().nullable()}),timestamp:I.default.number()}),ho=I.default.object({latitude:I.default.number(),longitude:I.default.number(),floor:I.default.any().optional(),accuracy:I.default.number().optional(),heading:I.default.number().optional().nullable(),timestamp:I.default.number().optional()});var co={hidden:{actions:{enable:"hidden",error:"hidden","position-update":"active",initialize:"inactive",disable:"disabled",timeout:"hidden"}},active:{actions:{enable:"active",disable:"disabled","position-update":"active",error:"inactive",timeout:"inactive"}},inactive:{actions:{enable:"inactive",disable:"disabled","position-update":"active",error:"inactive",timeout:"inactive"}},disabled:{actions:{enable:"hidden",disable:"disabled"}}};var Q,ce,at,yn=class yn extends V{constructor(){super();u(this,Q,"disabled");u(this,ce);u(this,at,!1)}get current(){return e(this,Q)}get isEnabled(){return e(this,Q)!=="disabled"}setDebug(t){r(this,at,t)}transitionTo(t){let n=co[e(this,Q)].actions[t];if(n==null){c.warn(`Invalid state transition from ${e(this,Q)} to ${n} using ${t}`);return}n!==e(this,Q)&&(e(this,at)&&c.log(`Transitioning from ${e(this,Q)} to ${n} using ${t}`),r(this,Q,n),this.publish("status-change",{status:n,action:t}))}resetTimer(t){e(this,ce)&&(clearTimeout(e(this,ce)),r(this,ce,void 0)),typeof t=="number"&&t<1/0&&r(this,ce,setTimeout(()=>{e(this,at)&&c.log(`Position timed out after ${t}ms`),this.transitionTo("timeout")},t))}clearTimer(){e(this,ce)&&(clearTimeout(e(this,ce)),r(this,ce,void 0))}disable(){this.clearTimer(),this.transitionTo("disable")}shouldUpdateGeometry(){return e(this,Q)!=="hidden"&&e(this,Q)!=="disabled"}destroy(){this.clearTimer(),super.destroy()}};Q=new WeakMap,ce=new WeakMap,at=new WeakMap,a(yn,"StatusManager");var Ii=yn;var mo=Ai(fo());function Ds(s,i){let t=s.x-i.x,n=s.y-i.y;return Math.sqrt(t*t+n*n)}a(Ds,"calculatePixelDistance");function xs(s){return{x:s.width/2,y:s.height/2}}a(xs,"getContainerCenter");function po(s,i){if(i.width===0||i.height===0)return;let t=xs(i);return Ds(s,t)}a(po,"calculateDistanceFromCenter");function bo(s){let t=Math.min(s.width,s.height)*.22;return Math.max(96,Math.min(180,t))}a(bo,"computePanExitThresholdPixels");function go(s,i){return s!=null&&s>i}a(go,"shouldExitFollowMode");function yo(s,i){return{zoomLevel:i?.zoomLevel??21,bearing:s==="position-only"?i?.bearing:void 0,pitch:i?.pitch??45}}a(yo,"createDefaultCameraTarget");function To(s){return{duration:s?.duration??1e3,easing:s?.easing??"ease-in-out"}}a(To,"createDefaultCameraOptions");function Po(s,i,t=1e-5){let o=s.filter(d=>d.floorId===i).map(d=>({x:d.longitude,y:d.latitude}));return(0,mo.default)(o,t).map(d=>[d.x,d.y])}a(Po,"simplifyPathCoordinates");function Ms(s,i){let t=Wn(s,i);if(t==null)return;let n=s[t.segmentIndex],o=s[t.segmentIndex+1];if(!(n==null||o==null))return qn(n,o)}a(Ms,"computePathBearing");function So(s,i,t,n,o){if(s==="position-and-heading")return i??void 0;if(s==="position-and-path-direction"&&n!=null)return Ms(n,o);if(s==="position-only"&&t!=null)return t}a(So,"computeFollowBearing");var E,Ae,Te,He,ee,ke,Oe,_e,Nt,Bt,$t,lt,Eo,Ut,vo,Tn=class Tn extends V{constructor(t){super();u(this,lt);u(this,E);u(this,Ae,!1);u(this,Te);u(this,He);u(this,ee);u(this,ke);u(this,Oe,!1);u(this,_e);g(this,"cancel",a(()=>{e(this,E).Camera.isAnimating&&e(this,E).Camera.cancelAnimation(),r(this,Ae,!1),r(this,Oe,!1),r(this,Te,void 0),r(this,He,void 0),r(this,ee,void 0),r(this,ke,void 0),r(this,_e,void 0),e(this,E).off("user-interaction-start",e(this,Nt)),e(this,E).off("user-interaction-end",e(this,Bt)),e(this,E).off("camera-change",e(this,$t)),e(this,E).off("navigation-active-path-change",e(this,Ut)),this.publish("follow-change",{following:!1})},"cancel"));u(this,Nt,a(()=>{r(this,Oe,!0),e(this,E).Camera.isAnimating&&e(this,E).Camera.cancelAnimation()},"#handleUserInteractionStart"));u(this,Bt,a(()=>{r(this,Oe,!1),e(this,ee)!=null&&(e(this,ee).zoomLevel=e(this,E).Camera.zoomLevel,e(this,ee).pitch=e(this,E).Camera.pitch)},"#handleUserInteractionEnd"));u(this,$t,a(()=>{if(!e(this,Oe)||e(this,_e)==null)return;let t=e(this,E).container.getBoundingClientRect(),n=p(this,lt,Eo).call(this,t),o=bo({width:t.width,height:t.height});go(n,o)&&this.cancel()},"#handleCameraChange"));u(this,Ut,a(()=>{r(this,Te,void 0)},"#handlePathChange"));r(this,E,t)}get isFollowing(){return e(this,Ae)}start(t,n){if(t===!1){this.cancel();return}t!=="position-only"&&n?.bearing!=null&&c.warn(`Camera bearing option will be ignored in follow mode \'${t}\'. To control the bearing manually, use mode \'position-only\'.`),r(this,He,t),r(this,ee,yo(t,n)),r(this,ke,To(n)),e(this,Ae)||(r(this,Ae,!0),e(this,E).on("user-interaction-start",e(this,Nt)),e(this,E).on("user-interaction-end",e(this,Bt)),e(this,E).on("camera-change",e(this,$t)),e(this,E).on("navigation-active-path-change",e(this,Ut))),this.publish("follow-change",{following:!0,mode:t})}handlePositionUpdate(t){if(!e(this,Ae)||!e(this,He)||!e(this,ee)||!e(this,ke))return;let{coordinate:n,heading:o,floor:l}=t;if(r(this,_e,n),e(this,Oe))return;l!=null&&l.id!==e(this,E).currentFloor.id&&(e(this,E).setFloor(l.id),r(this,Te,void 0));let d=So(e(this,He),o,e(this,ee).bearing,p(this,lt,vo).call(this),[n.longitude,n.latitude]),h={center:n,zoomLevel:e(this,ee).zoomLevel,pitch:e(this,ee).pitch,bearing:d};e(this,E).Camera.animateTo(h,e(this,ke))}destroy(){this.cancel(),super.destroy()}};E=new WeakMap,Ae=new WeakMap,Te=new WeakMap,He=new WeakMap,ee=new WeakMap,ke=new WeakMap,Oe=new WeakMap,_e=new WeakMap,Nt=new WeakMap,Bt=new WeakMap,$t=new WeakMap,lt=new WeakSet,Eo=a(function(t){if(e(this,_e)==null)return;let n=e(this,E).getScreenCoordinateFromCoordinate(e(this,_e));return po(n,{width:t.width,height:t.height})},"#getPixelDistanceFromCenter"),Ut=new WeakMap,vo=a(function(){if(e(this,Te)==null&&e(this,E).Navigation.activeDirections!=null){let t=Array.isArray(e(this,E).Navigation.activeDirections)?e(this,E).Navigation.activeDirections.flatMap(n=>n.coordinates):e(this,E).Navigation.activeDirections.coordinates;r(this,Te,Po(t,e(this,E).currentFloor.id))}return e(this,Te)},"#getSimplifiedDirections"),a(Tn,"FollowController");var Ri=Tn;function Vt(){return typeof window<"u"&&window!==null}a(Vt,"isBrowser");function ws(s){return Vt()?(typeof s=="object"||typeof s=="function")&&s!==null&&"requestPermission"in s&&typeof s.requestPermission=="function":!1}a(ws,"hasRequestPermission");async function As(s){if(!ws(s))return"unavailable";try{return await s.requestPermission()}catch{return"denied"}}a(As,"requestPermission");function Pn(s){return Vt()?typeof s<"u"&&s!=null:!1}a(Pn,"supportsEvent");async function Sn(s){if(!Pn(s))return"unavailable";let i=await As(s);return i!=="unavailable"?i:"granted"}a(Sn,"requestEventPermission");function Os(s){return Vt()?typeof navigator<"u"&&navigator!=null&&typeof navigator[s]<"u"&&navigator[s]!=null:!1}a(Os,"supportsNavigatorAPI");async function Do(){return Os("geolocation")?new Promise(s=>{navigator.geolocation.getCurrentPosition(()=>s("granted"),i=>{i.code===i.PERMISSION_DENIED?s("denied"):s("granted")},{enableHighAccuracy:!0})}):"unavailable"}a(Do,"requestGeolocationPermission");var _s=(()=>{let s;return{getDeviceType(){if(s)return s;let{userAgent:i,platform:t,maxTouchPoints:n}=window.navigator,o=/(iphone|ipod|ipad)/i.test(i),l=t==="iPad"||t.indexOf("Mac")===0&&n>0&&!window.MSStream,d=/android/i.test(i);return s={isIpad:l,isMobile:d||o||l,isIOS:o,isAndroid:d,isSafari12:/Version\\/12.+Safari/.test(i),isFirefox:/Firefox/.test(i),isWindows:/windows/i.test(i)},s},_reset(){s=void 0}}})(),Pe=_s.getDeviceType,xo=(()=>{let s,i,t;function n(){if(i!==void 0)return i;s||(s=document.createElement("canvas"));let l=s.getContext("webgl")||s.getContext("experimental-webgl");if(!l)return i;try{let d=Pe().isFirefox?null:l.getExtension("WEBGL_debug_renderer_info");return i=d?l.getParameter(d.UNMASKED_RENDERER_WEBGL):l.getParameter(l.RENDERER),i}catch{let h=new Error("Failed getting device info");throw h.name="FailedGettingDeviceInfo",h}}a(n,"getInfo");function o(){if(!Pe().isWindows)return!1;if(t!==void 0)return t;let l=Is()?.toLowerCase()??"";return t=l.includes("intel")&&(l.includes("uhd")||l.includes("iris")),t}return a(o,"shouldDisableOffscreenCanvas"),{getInfo:n,shouldDisableOffscreenCanvas:o,_setCanvas(l){s=l,i=void 0,t=void 0}}})(),Is=xo.getInfo,ca=xo.shouldDisableOffscreenCanvas;var En=class En extends V{constructor(){super();g(this,"enabled",!1)}get isEnabled(){return this.enabled}onFusedPosition(t){}setAnchor(t){let n={latitude:t.latitude,longitude:t.longitude,heading:t.heading,floorLevel:t.floorLevel,sensorId:this.id,timestamp:Date.now(),ttl:t.ttl??3e4,confidence:t.confidence??1},o=t.anchorOnlyPeriodMs!=null?{anchorOnlyPeriodMs:t.anchorOnlyPeriodMs}:void 0;this.publish("anchor-set",{sensorId:this.id,anchor:n,configOverride:o})}clearAnchor(){this.publish("anchor-clear",{sensorId:this.id})}async enable(){if(this.enabled)return"granted";if(this.requiresPermission){let t=await this.checkPermission();if(t==="unavailable")return c.error(`Sensor "${this.id}" is unavailable on this device.`),t;let n=await this.requestPermission();if(n!=="granted")return c.error(`Permission declined for sensor "${this.id}".`),n}try{return await this.start(),this.enabled=!0,"granted"}catch(t){return c.error(`Error starting sensor "${this.id}".`,t),"unavailable"}}disable(){this.stop(),this.enabled=!1}};a(En,"BaseSensor");var te=En;function Ci(s,i,t){let n=null,o=null,l,d=null,h=0;t||(t={});let f=a(function(){h=t.leading===!1?0:Date.now(),d=null,o&&(l=s.apply(n,o)),d||(n=o=null)},"later");return function(...m){let b=Date.now();!h&&t.leading===!1&&(h=b);let T=i-(b-h);return T<=0||T>i?(d&&(clearTimeout(d),d=null),h=b,l=s.apply(this,m),d||(n=o=null)):!d&&t.trailing!==!1&&(n=this,o=m,d=setTimeout(f,T)),l}}a(Ci,"throttle");var Mo=["devicemotion","deviceorientation","deviceorientationabsolute","geolocation"];var Je,Gi,wo,Dn=class Dn{constructor(){u(this,Gi);u(this,Je,new Map);this.reset()}async check(i){return e(this,Je).get(i)??"unavailable"}async request(i){let t="unavailable";switch(i){case"geolocation":t=await Do();break;case"devicemotion":t=await Sn(window?.DeviceMotionEvent);break;case"deviceorientation":t=await Sn(window?.DeviceOrientationEvent);break;case"deviceorientationabsolute":t="granted";break;default:c.warn(`Unsupported permission type requested: ${i}`);break}return p(this,Gi,wo).call(this,i,t),t}reset(){for(let i of Mo)e(this,Je).set(i,"prompt")}};Je=new WeakMap,Gi=new WeakSet,wo=a(function(i,t){e(this,Je).get(i)!==t&&e(this,Je).set(i,t)},"#updatePermissionState"),a(Dn,"BrowserPermissions");var vn=Dn,Se=new vn;var Ie,ut,dt,Ht,xn=class xn extends te{constructor(){super();g(this,"id","deviceorientation");u(this,Ie);u(this,ut,null);u(this,dt,2);g(this,"start",a(async()=>{window.addEventListener(e(this,Ie),e(this,Ht))},"start"));g(this,"stop",a(()=>{window.removeEventListener(e(this,Ie),e(this,Ht))},"stop"));g(this,"checkPermission",a(async()=>Se.check(e(this,Ie)),"checkPermission"));g(this,"requestPermission",a(async()=>Se.request(e(this,Ie)),"requestPermission"));u(this,Ht,Ci(t=>{let n=Math.round(t.webkitCompassHeading??-(t.alpha??0)),o=n-(e(this,ut)??0);if(typeof n=="number"&&Math.abs(o)>e(this,dt)){let l=e(this,ut)==null;r(this,ut,n),l&&c.log(`Compass: first heading ${n}\\xB0`),this.publish("absolute-update",{sensorId:this.id,update:{heading:n,timestamp:Date.now(),confidence:1}})}},100));r(this,Ie,typeof DeviceOrientationEvent<"u"&&(Pn(DeviceOrientationEvent)||Pe().isIOS)?"deviceorientation":"deviceorientationabsolute")}get requiresPermission(){return Pe().isIOS}configure(t){t.deltaThreshold!==void 0&&r(this,dt,Math.max(t.deltaThreshold,.5))}getConfig(){return{deltaThreshold:e(this,dt)}}};Ie=new WeakMap,ut=new WeakMap,dt=new WeakMap,Ht=new WeakMap,a(xn,"DeviceOrientationSensor");var Fi=xn;var _o=Ai(Lt("zod"));var Ao={maxPlausibleSpeed:10,minTimeForSpeedCheck:500};function Rs(s,i,t,n){let o=111320*Math.cos(s*Math.PI/180),l=(t-s)*111320,d=(n-i)*o;return Math.sqrt(l*l+d*d)}a(Rs,"calculateDistance");function Cs(s,i,t){let n=Rs(s.latitude,s.longitude,i.latitude,i.longitude),o=(i.timestamp-s.timestamp)/1e3;if(o<t.minTimeForSpeedCheck/1e3)return{isOutlier:!1,distance:n,timeDelta:o,impliedSpeed:0};let l=n/o;return{isOutlier:l>t.maxPlausibleSpeed,distance:n,timeDelta:o,impliedSpeed:l}}a(Cs,"checkForOutlier");function Oo(s,i,t){return s==null?{isOutlier:!1,distance:0,timeDelta:0,impliedSpeed:0}:Cs(s,i,t)}a(Oo,"checkForOutlierSafe");var Le,ht,ct,qe,Bi,kt,$i,Ui,Mn=class Mn extends te{constructor(){super(...arguments);g(this,"id","geolocation");g(this,"requiresPermission",!1);u(this,Le);u(this,ht,!1);u(this,ct);u(this,qe,Ao);u(this,Bi,a(t=>{if(this.isEnabled===!1)return;if(t==null||t.coords==null){let d={code:2,message:"Invalid position received",PERMISSION_DENIED:1,POSITION_UNAVAILABLE:2,TIMEOUT:3};e(this,kt).call(this,d);return}let n=e(this,$i).call(this,t);if(n==null)return;let o={latitude:n.latitude,longitude:n.longitude,timestamp:n.timestamp??Date.now()},l=Oo(e(this,ct),o,e(this,qe));if(l.isOutlier){c.warn(`GPS outlier rejected: ${l.distance.toFixed(0)}m in ${l.timeDelta.toFixed(1)}s (implied ${l.impliedSpeed.toFixed(1)} m/s, max ${e(this,qe).maxPlausibleSpeed} m/s)`);return}r(this,ct,o),this.publish("absolute-update",{sensorId:this.id,update:n})},"#onSuccess"));u(this,kt,a(t=>{switch(t.code){case t.PERMISSION_DENIED:c.error("Geolocation permission denied by the user.",t);break;case t.POSITION_UNAVAILABLE:c.error("Geolocation position unavailable.",t);break;case t.TIMEOUT:c.error("Geolocation request timed out.",t);break;default:c.error("An unknown geolocation error occurred.",t);break}this.publish("error",{sensorId:this.id,error:t})},"#onError"));u(this,$i,a(t=>{try{uo.parse(t)}catch(l){this.publish("error",{sensorId:this.id,error:l}),c.error("Browser sent invalid position",l instanceof _o.default.ZodError?l.message:String(l));return}let n=t.coords.floorLevel!=null,o=e(this,ht);return r(this,ht,n),n&&!o?c.log("Geolocation: Likely switched to IPS (Indoor Positioning System) - floor level detected"):!n&&o&&c.log("Geolocation: Likely switched to GPS - no floor level"),{latitude:t.coords.latitude,longitude:t.coords.longitude,accuracy:t.coords.accuracy,heading:t.coords.heading,floorLevel:t.coords.floorLevel,timestamp:t.timestamp,confidence:e(this,Ui).call(this,t.coords.accuracy,n)}},"#createPositionUpdate"));u(this,Ui,a((t,n)=>n?t<=5?.9:t<=10?.7:t<=20?.5:.3:t<3?.1:t<=10?.15:t<=20?.1:.05,"#calculateConfidence"))}get isLikelyIPS(){return e(this,ht)}configureOutlierDetection(t){r(this,qe,{...e(this,qe),...t})}async enable(){return this.enabled||(await this.start(),this.enabled=!0),"granted"}async start(){if(e(this,Le)!=null){c.warn("Geolocation sensor already started.");return}r(this,Le,navigator.geolocation.watchPosition(t=>e(this,Bi).call(this,t),t=>e(this,kt).call(this,t),{enableHighAccuracy:!0}))}stop(){e(this,Le)!=null&&(navigator.geolocation.clearWatch(e(this,Le)),r(this,Le,void 0)),r(this,ct,void 0)}async checkPermission(){return Se.check(this.id)}async requestPermission(){return Se.request(this.id)}};Le=new WeakMap,ht=new WeakMap,ct=new WeakMap,qe=new WeakMap,Bi=new WeakMap,kt=new WeakMap,$i=new WeakMap,Ui=new WeakMap,a(Mn,"GeolocationSensor");var Ni=Mn;function Lo(s,i,t){let n=Io(i);if(s===void 0)return n;let o=n-s;o>180&&(o-=360),o<-180&&(o+=360);let l=s+o*t;return Io(l)}a(Lo,"smoothHeading");function Io(s){let i=s%360;return i<0&&(i+=360),i===0?0:i}a(Io,"normalizeAngle");function wn(s,i,t){let n=Math.abs(i-9.81),o=i>s.lastMagnitude;return{isPeak:s.wasRising&&!o&&s.lastNetAcceleration>t,nextState:{wasRising:o,lastMagnitude:i,lastNetAcceleration:n}}}a(wn,"detectStepPeak");function Ro(s,i,t,n,o){if(o<=0)return s;let l=i.filter($e=>t-$e<n);if(l.length<2)return s;let d=l[0],h=(t-d)/1e3/60,D=1+((l.length-1)/h/110-1)*o,U=Math.min(Math.max(D,.7),1.3);return s*U}a(Ro,"calculateAdaptiveStepLength");function Co(s,i){let t=s*Math.PI/180;return{dx:i*Math.sin(t),dy:i*Math.cos(t)}}a(Co,"calculateStepDisplacement");function Go(s,i,t,n,o,l){return!o||!(t-s<l.zuptDelayMs)||n>l.tiltThreshold||t-i<l.minStepInterval}a(Go,"shouldSuppressStepDetection");function Fo(s){return Math.abs(s-9.81)}a(Fo,"calculateNetAcceleration");function No(s,i,t){return Math.sqrt(s*s+i*i+t*t)}a(No,"calculateAccelerationMagnitude");function Bo(s,i,t){return Math.sqrt(s*s+i*i+t*t)}a(Bo,"calculateRotationMagnitude");function $o(s,i,t){return s.filter(n=>i-n<t)}a($o,"pruneOldTimestamps");var re,ae,Vi,Ke,We,qt,ft,mt,Kt,Wt,ze,pt,bt,gt,yt,zt,fe,Uo,Vo,Ho,jt,ko,An=class An extends te{constructor(){super(...arguments);u(this,fe);g(this,"id","devicemotion");u(this,re,!1);u(this,ae);u(this,Vi,.3);u(this,Ke,{wasRising:!1,lastMagnitude:9.81,lastNetAcceleration:0});u(this,We,[]);u(this,qt,5e3);u(this,ft,0);u(this,mt,0);u(this,Kt,0);u(this,Wt,{zuptDelayMs:500,tiltThreshold:50,minStepInterval:300});u(this,ze,1);u(this,pt,.7);u(this,bt,0);u(this,gt,.5);u(this,yt,!0);g(this,"start",a(async()=>{if(this.enabled){c.warn("Device motion sensor already started.");return}this.enabled=!0,window.addEventListener("devicemotion",e(this,zt))},"start"));g(this,"stop",a(()=>{if(!this.enabled){c.warn("Device motion sensor not started.");return}this.enabled=!1,window.removeEventListener("devicemotion",e(this,zt))},"stop"));g(this,"checkPermission",a(async()=>Se.check("devicemotion"),"checkPermission"));g(this,"requestPermission",a(async()=>Se.request("devicemotion"),"requestPermission"));u(this,zt,Ci(t=>{let n=Date.now();p(this,fe,Uo).call(this,t.rotationRate,n),p(this,fe,Vo).call(this,t.accelerationIncludingGravity,n)},50));u(this,jt,0)}get requiresPermission(){return Pe().isIOS}get isMoving(){return e(this,re)}setHeading(t){let n=e(this,ae)==null;r(this,ae,Lo(e(this,ae),t,e(this,Vi))),n&&c.log(`PDR heading initialized: ${e(this,ae)?.toFixed(1)}\\xB0`)}configure(t){t.stepDetectionThreshold!==void 0&&r(this,ze,Math.max(t.stepDetectionThreshold,.1)),t.stepLength!==void 0&&r(this,pt,Math.min(Math.max(t.stepLength,.2),2)),t.strideAdaptation!==void 0&&r(this,bt,Math.min(Math.max(t.strideAdaptation,0),1)),t.motionThreshold!==void 0&&r(this,gt,Math.max(t.motionThreshold,.1)),t.pdrEnabled!==void 0&&r(this,yt,t.pdrEnabled)}getConfig(){return{stepDetectionThreshold:e(this,ze),stepLength:e(this,pt),strideAdaptation:e(this,bt),motionThreshold:e(this,gt),pdrEnabled:e(this,yt)}}};re=new WeakMap,ae=new WeakMap,Vi=new WeakMap,Ke=new WeakMap,We=new WeakMap,qt=new WeakMap,ft=new WeakMap,mt=new WeakMap,Kt=new WeakMap,Wt=new WeakMap,ze=new WeakMap,pt=new WeakMap,bt=new WeakMap,gt=new WeakMap,yt=new WeakMap,zt=new WeakMap,fe=new WeakSet,Uo=a(function(t,n){t!=null&&(t.alpha!=null&&this.publish("absolute-update",{sensorId:this.id,update:{angularVelocity:t.alpha,timestamp:n,confidence:.9}}),t.alpha!=null&&t.beta!=null&&t.gamma!=null&&r(this,Kt,Bo(t.alpha,t.beta,t.gamma)))},"#processGyroscope"),Vo=a(function(t,n){if(t==null)return;let{x:o,y:l,z:d}=t;if(o==null||l==null||d==null)return;let h=No(o,l,d),f=Fo(h);if(p(this,fe,Ho).call(this,f,n),e(this,yt))p(this,fe,ko).call(this,h,n);else{let m=wn(e(this,Ke),h,e(this,ze));r(this,Ke,m.nextState)}},"#processAccelerometer"),Ho=a(function(t,n){let o=e(this,re);if(r(this,re,t>e(this,gt)),e(this,re)&&r(this,mt,n),o!==e(this,re)){e(this,re)&&c.log(`Motion: MOVING, accel=${t.toFixed(2)} m/s\\xB2`);let l=e(this,re)?.7:1;this.publish("absolute-update",{sensorId:this.id,update:{timestamp:n,confidence:l,speed:e(this,re)?t:0}})}},"#updateMotionState"),jt=new WeakMap,ko=a(function(t,n){let o=wn(e(this,Ke),t,e(this,ze));if(r(this,Ke,o.nextState),!o.isPeak)return;c.log(`Peak detected: magnitude=${t.toFixed(2)} m/s\\xB2`);let l=e(this,ae)!=null,d=n-e(this,mt)<e(this,Wt).zuptDelayMs,h=n-e(this,ft);if(Go(e(this,mt),e(this,ft),n,e(this,Kt),l,e(this,Wt))){c.warn(`Step suppressed: hasHeading=${l}, recentlyMoving=${d}, timeSinceLastStep=${h}ms`);return}r(this,ft,n),e(this,We).push(n),r(this,We,$o(e(this,We),n,e(this,qt)));let m=Ro(e(this,pt),e(this,We),n,e(this,qt),e(this,bt)),b=Co(e(this,ae),m);Rt(this,jt)._++,c.log(`Step #${e(this,jt)}: heading=${e(this,ae)?.toFixed(1)}\\xB0, dx=${b.dx.toFixed(3)}m, dy=${b.dy.toFixed(3)}m`),this.publish("relative-update",{sensorId:this.id,update:{dx:b.dx,dy:b.dy,heading:e(this,ae),timestamp:n,confidence:.7}})},"#processPDR"),a(An,"DeviceMotionSensor");var Jt=An;var Ee,On=class On extends te{constructor(){super(...arguments);g(this,"id","manual");g(this,"requiresPermission",!1);u(this,Ee,!1)}reportPosition(t){if(!e(this,Ee))return;let n={latitude:t.latitude,longitude:t.longitude,accuracy:t.accuracy,heading:t.heading,floorLevel:t.floorLevel,confidence:t.confidence??.5,timestamp:t.timestamp??Date.now()};this.publish("absolute-update",{sensorId:this.id,update:n})}reportDisplacement(t){if(!e(this,Ee))return;let n={dx:t.dx,dy:t.dy,heading:t.heading,confidence:t.confidence??.8,timestamp:t.timestamp??Date.now()};this.publish("relative-update",{sensorId:this.id,update:n})}forcePosition(t){if(!e(this,Ee))return;let n=t.ttl??3e4;this.setAnchor({latitude:t.latitude,longitude:t.longitude,heading:t.heading,floorLevel:t.floorLevel,ttl:n,confidence:1,anchorOnlyPeriodMs:n})}clearForcedPosition(){e(this,Ee)&&this.clearAnchor()}async start(){r(this,Ee,!0)}stop(){r(this,Ee,!1)}async checkPermission(){return"granted"}async requestPermission(){return"granted"}};Ee=new WeakMap,a(On,"ManualSensor");var Tt=On;var le,Zt,Re,Pt,Xt,Yt,Qt,ei,ti,_n=class _n extends V{constructor(){super();u(this,Re);u(this,le,new Map);u(this,Zt,!1);u(this,Xt,a(({sensorId:t,update:n})=>{if(this.publish("absolute-update",{sensorId:t,update:n}),(t==="deviceorientation"||t==="manual")&&n.heading!=null){let o=e(this,le).get("devicemotion");o instanceof Jt&&(e(this,Zt)||(r(this,Zt,!0),c.log(`Registry: forwarding heading ${n.heading}\\xB0 from ${t} to PDR`)),o.setHeading(n.heading))}},"#handleAbsoluteUpdate"));u(this,Yt,a(({sensorId:t,update:n})=>{this.publish("relative-update",{sensorId:t,update:n})},"#handleRelativeUpdate"));u(this,Qt,a(t=>{this.publish("anchor-set",t)},"#handleAnchorSet"));u(this,ei,a(t=>{this.publish("anchor-clear",t)},"#handleAnchorClear"));u(this,ti,a(({sensorId:t,error:n})=>{this.publish("error",{sensorId:t,error:n})},"#handleError"));Vt()&&(p(this,Re,Pt).call(this,new Ni),p(this,Re,Pt).call(this,new Fi),p(this,Re,Pt).call(this,new Jt),p(this,Re,Pt).call(this,new Tt))}register(t){return p(this,Re,Pt).call(this,t)}get(t){return e(this,le).get(t)}unregister(t){let n=typeof t=="string"?t:t.id,o=e(this,le).get(n);o&&(o.isEnabled&&o.disable(),o.off("absolute-update",e(this,Xt)),o.off("relative-update",e(this,Yt)),o.off("anchor-set",e(this,Qt)),o.off("anchor-clear",e(this,ei)),o.off("error",e(this,ti)),e(this,le).delete(n))}getAll(){return e(this,le).entries()}destroy(){let t=[...e(this,le).keys()];for(let n of t)this.unregister(n);super.destroy()}};le=new WeakMap,Zt=new WeakMap,Re=new WeakSet,Pt=a(function(t){let n=t.id;if(e(this,le).has(n)){c.warn(`Sensor with id ${n} already registered. Please use a different id.`);return}return e(this,le).set(n,t),t.on("absolute-update",e(this,Xt)),t.on("relative-update",e(this,Yt)),t.on("anchor-set",e(this,Qt)),t.on("anchor-clear",e(this,ei)),t.on("error",e(this,ti)),t},"#registerInternal"),Xt=new WeakMap,Yt=new WeakMap,Qt=new WeakMap,ei=new WeakMap,ti=new WeakMap,a(_n,"SensorRegistry");var St=_n;function Et(s,i,t,n){if(s==null||i==null)return"none";let o=t-i;return o>=s.ttl?"none":o<n.anchorOnlyPeriodMs?"anchor-only":"transition"}a(Et,"getAnchorState");function Jo(s,i,t,n){let l=i-s-t.anchorOnlyPeriodMs;if(l<=0)return 1;let d=Math.LN2/n;return Math.exp(-d*l)}a(Jo,"getAnchorConfidenceDecay");var qo={anchorOnlyPeriodMs:5e3,halfLifeMs:1e4,maxAgeMs:5e3},Ko=3e4;var Us=.7,Vs=1,Hs=2e3,ks=1,Js=30,qs=100,Wo=5;function Ce(s){return(s%360+360)%360}a(Ce,"normalizeAngle");function In(s,i){let t=Ce(i)-Ce(s);return t>180?t-360:t<-180?t+360:t}a(In,"angleDifference");var _,vt,ve,Dt,xt,Mt,wt,ii,Ge,ie,Fe,ki,zo,Ln=class Ln{constructor(){u(this,ki);u(this,_,null);u(this,vt,null);u(this,ve,null);u(this,Dt,Us);u(this,xt,ks);u(this,Mt,Js);u(this,wt,!0);u(this,ii,2);u(this,Ge,0);u(this,ie,[]);u(this,Fe,!1)}updateCompass(i,t){let n=Ce(i+e(this,Ge));if(r(this,vt,n),e(this,wt)&&(e(this,ie).push(n),e(this,ie).length>Wo&&e(this,ie).shift(),r(this,Fe,p(this,ki,zo).call(this))),e(this,_)===null){r(this,_,n);return}let o=In(e(this,_),n);if(Math.abs(o)>e(this,Mt)){r(this,_,n);return}let l=1-e(this,Dt);e(this,Fe)&&(l*=.1),!e(this,Fe)&&Math.abs(o)<30&&(l=Math.max(.01,l)),r(this,_,Ce(e(this,_)+o*l))}updateGyro(i,t){if(e(this,_)===null){r(this,ve,t);return}if(e(this,ve)!==null){let n=(t-e(this,ve))/1e3;if(n>Hs/1e3||n<0){r(this,ve,t);return}if(Math.abs(i)>e(this,xt)){let{isIOS:o}=Pe(),l=o?-i*n:i*n;r(this,_,Ce(e(this,_)+l))}}r(this,ve,t)}correctWithGps(i,t,n=1){if(t<Vs)return;if(e(this,_)===null){r(this,_,Ce(i));return}let o=Ce(i),l=In(e(this,_),o),d=Math.min(.5,n*.5);r(this,_,Ce(e(this,_)+l*d))}setCalibrationOffset(i){r(this,Ge,i)}configure(i){i.complementaryAlpha!==void 0&&r(this,Dt,Math.min(Math.max(i.complementaryAlpha,0),1)),i.gyroNoiseThreshold!==void 0&&r(this,xt,Math.max(i.gyroNoiseThreshold,0)),i.maxHeadingError!==void 0&&r(this,Mt,Math.min(Math.max(i.maxHeadingError,1),180)),i.magneticGatingEnabled!==void 0&&r(this,wt,i.magneticGatingEnabled),i.deltaThreshold!==void 0&&r(this,ii,Math.max(i.deltaThreshold,0)),i.calibrationOffset!==void 0&&r(this,Ge,i.calibrationOffset)}getConfig(){return{complementaryAlpha:e(this,Dt),gyroNoiseThreshold:e(this,xt),maxHeadingError:e(this,Mt),magneticGatingEnabled:e(this,wt),deltaThreshold:e(this,ii),calibrationOffset:e(this,Ge)}}isMagneticDisturbanceActive(){return e(this,Fe)}getHeading(){return e(this,_)}isInitialized(){return e(this,_)!==null}getLastCompassHeading(){return e(this,vt)}reset(){r(this,_,null),r(this,vt,null),r(this,ve,null),r(this,ie,[]),r(this,Fe,!1),r(this,Ge,0)}};_=new WeakMap,vt=new WeakMap,ve=new WeakMap,Dt=new WeakMap,xt=new WeakMap,Mt=new WeakMap,wt=new WeakMap,ii=new WeakMap,Ge=new WeakMap,ie=new WeakMap,Fe=new WeakMap,ki=new WeakSet,zo=a(function(){if(e(this,ie).length<Wo)return!1;let i=0,t=e(this,ie)[0];for(let o=1;o<e(this,ie).length;o++){let l=In(t,e(this,ie)[o]);i+=l*l}return i/(e(this,ie).length-1)>qs},"#detectMagneticDisturbance"),a(Ln,"HeadingFusionFilter");var Hi=Ln;var Ks={halfLifeMs:1e4},Ws=15e3,zs=1e-8,js=1e-6,jo=111320,S,R,Z,ni,oi,si,Rn,Cn=class Cn{constructor(i){u(this,si);u(this,S,null);u(this,R,null);u(this,Z,null);u(this,ni);u(this,oi);r(this,ni,{...Ks,...i}),r(this,oi,Math.LN2/e(this,ni).halfLifeMs)}predict(i){if(e(this,S)===null||e(this,R)===null||e(this,Z)===null)return;let t=i-e(this,Z);if(t>Ws||t<0){this.reset();return}if(t===0)return;let n=t/1e3;e(this,S)[0]+=e(this,S)[2]*n,e(this,S)[1]+=e(this,S)[3]*n;let o=e(this,R),l=n*n,d=zs*e(this,oi)*t,h=o[0]+2*n*o[2]+l*o[10],f=o[5]+2*n*o[7]+l*o[15],m=o[2]+n*o[10],b=o[7]+n*o[15];o[0]=h+d*l,o[5]=f+d*l,o[2]=m,o[8]=m,o[7]=b,o[13]=b,o[10]+=d*n,o[15]+=d*n,r(this,Z,i)}updatePosition(i,t,n,o){if(e(this,S)===null||e(this,R)===null||e(this,Z)===null){p(this,si,Rn).call(this,i,t,n,o);return}if(this.predict(o),e(this,S)===null||e(this,R)===null){p(this,si,Rn).call(this,i,t,n,o);return}let l=e(this,R),d=n,h=i-e(this,S)[0],f=t-e(this,S)[1],m=l[0]+d,b=l[5]+d,T=l[0]/m,D=l[5]/b,U=l[2]/m,$e=l[7]/b;e(this,S)[0]+=T*h,e(this,S)[1]+=D*f,e(this,S)[2]+=U*h,e(this,S)[3]+=$e*f,l[0]=(1-T)*l[0],l[2]=(1-T)*l[2],l[5]=(1-D)*l[5],l[7]=(1-D)*l[7],l[10]=l[10]-U*l[2],l[15]=l[15]-$e*l[7],r(this,Z,o)}updateOdometry(i,t,n,o){if(e(this,S)===null||e(this,R)===null||e(this,Z)===null||(this.predict(o),e(this,S)===null||e(this,R)===null))return;let l=t/jo,d=jo*Math.cos(e(this,S)[0]*Math.PI/180),h=i/d;e(this,S)[0]+=l,e(this,S)[1]+=h;let f=n;e(this,R)[0]+=f,e(this,R)[5]+=f,r(this,Z,o)}getPosition(){return e(this,S)===null?null:{latitude:e(this,S)[0],longitude:e(this,S)[1]}}getVelocity(){return e(this,S)===null?null:{vLat:e(this,S)[2],vLon:e(this,S)[3]}}getUncertainty(){return e(this,R)===null?1/0:e(this,R)[0]+e(this,R)[5]}getLastTimestamp(){return e(this,Z)}isInitialized(){return e(this,S)!==null}reset(){r(this,S,null),r(this,R,null),r(this,Z,null)}};S=new WeakMap,R=new WeakMap,Z=new WeakMap,ni=new WeakMap,oi=new WeakMap,si=new WeakSet,Rn=a(function(i,t,n,o){r(this,S,[i,t,0,0]);let l=n,d=js;r(this,R,[l,0,0,0,0,l,0,0,0,0,d,0,0,0,0,d]),r(this,Z,o)},"#initialize"),a(Cn,"MultiSensorEKF");var Ji=Cn;function qi(s,i){let t=Math.max(.01,Math.min(1,s));return i*i*1e-10/t}a(qi,"confidenceToNoise");var Zs=1,H,me,k,X,C,J,ai,v,Y,Ne,$,pe,Ze,Xe,Be,li,ui,di,w,je,Ki,Zo,At,ri,hi,zi,ji,ci,fi,Xo,Zi,Gn=class Gn extends V{constructor(t,n){super();u(this,w);u(this,H);u(this,me);u(this,k);u(this,X);u(this,C);u(this,J);u(this,ai,0);u(this,v);u(this,Y);u(this,Ne);u(this,$,{dx:0,dy:0});u(this,pe);u(this,Ze);u(this,Xe);u(this,Be);u(this,li,a(({error:t})=>{this.publish("error",{error:t})},"#handleError"));u(this,ui,a(({anchor:t,configOverride:n})=>{this.setAnchor(t,n)},"#handleAnchorSetEvent"));u(this,di,a(()=>{this.clearAnchor()},"#handleAnchorClearEvent"));u(this,At,0);u(this,hi,a(({sensorId:t,update:n})=>{n.latitude!=null&&n.longitude!=null?e(this,Zi).call(this,t,n):n.heading!=null&&n.angularVelocity==null?e(this,zi).call(this,n.heading,n.timestamp??Date.now()):n.angularVelocity!=null&&e(this,ji).call(this,n.angularVelocity,n.timestamp??Date.now())},"#handleAbsoluteUpdate"));u(this,zi,a((t,n)=>{e(this,X).updateCompass(t,n);let o=e(this,X).getHeading();o!=null&&e(this,ci).call(this,o,n)},"#handleCompassUpdate"));u(this,ji,a((t,n)=>{e(this,X).updateGyro(t,n);let o=e(this,X).getHeading();o!=null&&(e(this,C)!=null&&Math.abs(o-e(this,C))<.5||e(this,ci).call(this,o,n))},"#handleGyroUpdate"));u(this,ci,a((t,n)=>{r(this,C,t),this.publish("heading-update",{heading:t}),e(this,k).isInitialized()?p(this,w,ri).call(this,n):e(this,J)!=null&&this.publish("fused-position",{position:{...e(this,J),heading:t,timestamp:n}})},"#emitFusedHeading"));u(this,fi,a(({sensorId:t,update:n})=>{let o=n.timestamp,l=Et(e(this,v),e(this,Y),o,p(this,w,je).call(this));if(c.log(`PDR received: dx=${n.dx.toFixed(3)}m, dy=${n.dy.toFixed(3)}m, anchorState=${l}`),l==="none"){c.warn(`Relative update from sensor "${t}" ignored: no anchor set. Set an anchor first via VPS/AI Localizer.`);return}e(this,$).dx+=n.dx,e(this,$).dy+=n.dy;let d=qi(n.confidence,.5);e(this,k).updateOdometry(n.dx,n.dy,d,o),n.heading!=null&&r(this,C,n.heading),Rt(this,ai)._++,c.log(`PDR #${e(this,ai)} ACCEPTED: total dx=${e(this,$).dx.toFixed(2)}m, dy=${e(this,$).dy.toFixed(2)}m`),c.log(`Relative update from "${t}": dx=${n.dx.toFixed(2)}m, dy=${n.dy.toFixed(2)}m. Total displacement: dx=${e(this,$).dx.toFixed(2)}m, dy=${e(this,$).dy.toFixed(2)}m`),p(this,w,ri).call(this,o)},"#handleRelativeUpdate"));u(this,Zi,a((t,n)=>{let o=n.timestamp??Date.now();n.heading!=null&&r(this,Ze,n.heading),n.floorLevel!=null&&r(this,Xe,n.floorLevel),n.accuracy!=null&&r(this,Be,n.accuracy);let l=Et(e(this,v),e(this,Y),o,p(this,w,je).call(this));if(l==="anchor-only"){c.log("GPS update rejected during anchor-only period");return}if(n.heading!=null&&(n.speed??0)>=Zs){e(this,X).correctWithGps(n.heading,n.speed??0,n.confidence??.15);let f=e(this,X).getHeading();f!=null&&r(this,C,f)}if(l==="none"){p(this,w,Xo).call(this,t,n,o);return}let d=qi(n.confidence??.5,n.accuracy??10),h={sensorId:t,weight:n.confidence??.5,position:n};if(e(this,k).updatePosition(n.latitude,n.longitude,d,o),p(this,w,ri).call(this,o),e(this,J)!=null){let f=e(this,J).contributions.findIndex(m=>m.sensorId===t);f>=0?e(this,J).contributions[f]=h:e(this,J).contributions.push(h)}},"#handlePositionUpdate"));r(this,H,t),r(this,me,{...qo,...n}),r(this,k,new Ji({halfLifeMs:e(this,me).halfLifeMs})),r(this,X,new Hi),e(this,H).on("absolute-update",e(this,hi)),e(this,H).on("relative-update",e(this,fi)),e(this,H).on("anchor-set",e(this,ui)),e(this,H).on("anchor-clear",e(this,di)),e(this,H).on("error",e(this,li))}get config(){return{...e(this,me)}}getAnchorState(t){return Et(e(this,v),e(this,Y),t??Date.now(),p(this,w,je).call(this))}get anchor(){if(!(e(this,v)==null||Et(e(this,v),e(this,Y),Date.now(),p(this,w,je).call(this))==="none"))return{...e(this,v)}}get displacement(){return{...e(this,$)}}setAnchor(t,n){let o=Date.now();p(this,w,Ki).call(this),r(this,v,t),r(this,Y,o),n?.anchorOnlyPeriodMs!=null?r(this,pe,{anchorOnlyPeriodMs:n.anchorOnlyPeriodMs}):r(this,pe,void 0),r(this,$,{dx:0,dy:0}),r(this,J,void 0),e(this,k).reset();let l=qi(t.confidence??1,1);e(this,k).updatePosition(t.latitude,t.longitude,l,o),c.log(`Anchor set from sensor "${t.sensorId}" at [${t.latitude}, ${t.longitude}]`),c.log(`ANCHOR SET from ${t.sensorId}, anchorOnlyPeriodMs=${p(this,w,je).call(this).anchorOnlyPeriodMs}`),this.publish("anchor-set",{anchor:{...t}}),p(this,w,ri).call(this,o),t.ttl!==1/0&&r(this,Ne,setTimeout(()=>{p(this,w,Zo).call(this)},t.ttl))}clearAnchor(){p(this,w,Ki).call(this),r(this,v,void 0),r(this,Y,void 0),r(this,pe,void 0),r(this,$,{dx:0,dy:0}),c.log("Anchor cleared")}resetEKF(){e(this,k).reset()}resetHeadingFilter(){e(this,X).reset(),r(this,C,void 0)}get headingFilter(){return e(this,X)}get ekf(){return e(this,k)}getLastPosition(){return e(this,J)}destroy(){e(this,H).off("absolute-update",e(this,hi)),e(this,H).off("relative-update",e(this,fi)),e(this,H).off("anchor-set",e(this,ui)),e(this,H).off("anchor-clear",e(this,di)),e(this,H).off("error",e(this,li)),p(this,w,Ki).call(this),e(this,k).reset(),e(this,X).reset(),r(this,v,void 0),r(this,Y,void 0),r(this,pe,void 0),r(this,$,{dx:0,dy:0}),r(this,C,void 0),r(this,J,void 0),r(this,Ze,void 0),r(this,Xe,void 0),r(this,Be,void 0),super.destroy()}};H=new WeakMap,me=new WeakMap,k=new WeakMap,X=new WeakMap,C=new WeakMap,J=new WeakMap,ai=new WeakMap,v=new WeakMap,Y=new WeakMap,Ne=new WeakMap,$=new WeakMap,pe=new WeakMap,Ze=new WeakMap,Xe=new WeakMap,Be=new WeakMap,li=new WeakMap,ui=new WeakMap,di=new WeakMap,w=new WeakSet,je=a(function(){return e(this,pe)?{...e(this,me),...e(this,pe)}:e(this,me)},"#getEffectiveConfig"),Ki=a(function(){e(this,Ne)!=null&&(clearTimeout(e(this,Ne)),r(this,Ne,void 0))},"#clearAnchorTimer"),Zo=a(function(){if(e(this,v)==null)return;let t={...e(this,v)};r(this,v,void 0),r(this,Y,void 0),r(this,Ne,void 0),r(this,pe,void 0),r(this,$,{dx:0,dy:0}),c.log(`Anchor from sensor "${t.sensorId}" expired after ${t.ttl}ms`),this.publish("anchor-expired",{anchor:t})},"#expireAnchor"),At=new WeakMap,ri=a(function(t){Rt(this,At)._++;let n=e(this,k).getPosition();if(n==null){c.warn(`emitFusedPosition #${e(this,At)} FAILED: EKF position is null`);return}let o=Et(e(this,v),e(this,Y),t,p(this,w,je).call(this)),l=o!=="none",d=e(this,k).getUncertainty(),h=Math.max(.1,Math.min(1,1/(1+d*1e9))),f=e(this,C)??e(this,Ze)??e(this,v)?.heading,m=e(this,v)?.floorLevel??e(this,Xe),b;e(this,Be)!=null?b=e(this,Be):l&&e(this,v)!=null?b=3:b=Math.min(50,Math.max(1,Math.sqrt(d)*1e5));let T={latitude:n.latitude,longitude:n.longitude,accuracy:b,heading:f,floorLevel:m,timestamp:t,confidence:h,sensorId:"fusion",isCalibrated:l,displacement:l?{...e(this,$)}:void 0,contributions:[]};if(e(this,v)!=null&&l){let D=o==="transition"?Jo(e(this,Y),t,e(this,me),e(this,me).halfLifeMs):1;T.contributions.push({sensorId:e(this,v).sensorId,weight:D,position:{latitude:e(this,v).latitude,longitude:e(this,v).longitude,heading:e(this,v).heading,floorLevel:e(this,v).floorLevel,timestamp:e(this,v).timestamp,confidence:e(this,v).confidence??1}})}e(this,C)!=null&&e(this,C)!==e(this,v)?.heading&&T.contributions.push({sensorId:"deviceorientation",weight:0,position:{heading:e(this,C),timestamp:t,confidence:1}}),r(this,J,T),c.log(`EMIT fused-position #${e(this,At)}: ${T.latitude.toFixed(6)}, ${T.longitude.toFixed(6)}`),this.publish("fused-position",{position:T})},"#emitFusedPosition"),hi=new WeakMap,zi=new WeakMap,ji=new WeakMap,ci=new WeakMap,fi=new WeakMap,Xo=a(function(t,n,o){let l=e(this,C)??e(this,Ze),d=n.accuracy??e(this,Be)??10,h=[{sensorId:t,weight:n.confidence??.5,position:n}];e(this,C)!=null&&h.push({sensorId:"deviceorientation",weight:0,position:{heading:e(this,C),timestamp:o,confidence:1}});let f={latitude:n.latitude,longitude:n.longitude,accuracy:d,heading:l,floorLevel:e(this,Xe),timestamp:o,confidence:n.confidence??.5,sensorId:"fusion",isCalibrated:!1,contributions:h};r(this,J,f),c.log(`EMIT direct-position: ${f.latitude.toFixed(6)}, ${f.longitude.toFixed(6)}`),this.publish("fused-position",{position:f})},"#emitDirectPosition"),Zi=new WeakMap,a(Gn,"FusionEngine");var Wi=Gn;var F,q,De,A,ue,G,de,Ye,N,O,be,x,xe,Qe,pi,M,Ot,_t,It,bi,gi,yi,Ti,Pi,et,Yi,Si,Ei,Qi,en,tn,nn,vi,on,sn,Di,xi,Mi,wi,Fn=class Fn{constructor(i){u(this,F,new V);u(this,q);u(this,De);u(this,A);u(this,ue);u(this,G);u(this,de);u(this,Ye);u(this,N);u(this,O);u(this,be);u(this,x);u(this,xe);u(this,Qe,!1);u(this,pi);u(this,M,$n);u(this,Ot,new Map);u(this,_t);u(this,It);g(this,"enable",a(i=>{r(this,M,fn(e(this,M),i)),e(this,A).setDebug(e(this,M).debug),this.isEnabled||(e(this,O).on("fused-position",e(this,bi)),e(this,O).on("heading-update",e(this,gi)),e(this,O).on("error",e(this,yi)),e(this,O).on("anchor-set",e(this,Ti)),e(this,O).on("anchor-expired",e(this,Pi))),e(this,A).transitionTo("enable"),this.watchDevicePosition(e(this,M).watchDevicePosition),e(this,M).initialState==="inactive"&&e(this,A).transitionTo("initialize")},"enable"));g(this,"disable",a(()=>{e(this,O).off("fused-position",e(this,bi)),e(this,O).off("heading-update",e(this,gi)),e(this,O).off("error",e(this,yi)),e(this,O).off("anchor-set",e(this,Ti)),e(this,O).off("anchor-expired",e(this,Pi)),e(this,O).clearAnchor(),e(this,G).remove(),e(this,A).clearTimer(),e(this,ue).isFollowing&&e(this,ue).cancel(),this.watchDevicePosition(!1),this.watchDeviceOrientation(!1),r(this,x,void 0),r(this,be,void 0),e(this,Ot).clear(),r(this,Qe,!1),e(this,A).transitionTo("disable")},"disable"));g(this,"on",a((i,t)=>e(this,F).on(i,t),"on"));g(this,"off",a((i,t)=>{e(this,F).off(i,t)},"off"));g(this,"updateState",a(i=>{let t=e(this,M).watchDevicePosition;r(this,M,fn(e(this,M),i)),i.debug!=null&&e(this,A).setDebug(i.debug),e(this,G).update({status:this.status},{animate:!1}),i.watchDevicePosition!=null&&i.watchDevicePosition!==t&&this.watchDevicePosition(i.watchDevicePosition),i.timeout!=null&&this.status==="active"&&e(this,A).resetTimer(e(this,M).timeout)},"updateState"));g(this,"watchDevicePosition",a(i=>{r(this,de,void 0);let t=e(this,N).get("geolocation");if(!t){c.warn("Geolocation sensor unavailable. watchDevicePosition requires a browser environment.");return}if(e(this,It)!=null&&(navigator.geolocation.clearWatch(e(this,It)),r(this,It,void 0)),!i){t.disable(),e(this,O).resetEKF(),e(this,O).resetHeadingFilter();return}if(!this.isEnabled){c.warn("BlueDot must be enabled before watching browser position.");return}t.enable()},"watchDevicePosition"));g(this,"watchDeviceOrientation",a(async i=>{r(this,Ye,void 0);let t=e(this,N).get("deviceorientation");if(!t){c.warn("Device orientation sensor unavailable. watchDeviceOrientation requires a browser environment.");return}i?await t.enable()!=="granted"&&c.error(\'Device orientation permission denied. "deviceorientation" event must be enabled in response to a transient activation. https://www.w3.org/TR/orientation-event/#dom-deviceorientationevent-requestpermission\'):t.disable()},"watchDeviceOrientation"));u(this,bi,a(async i=>{let{position:t}=i;if(!this.isEnabled)return;let n=await e(this,vi).call(this,t.floorLevel,t.latitude,t.longitude);if(!this.isEnabled)return;let o={latitude:t.latitude,longitude:t.longitude,accuracy:t.accuracy??void 0,heading:t.heading??void 0,floor:n,timestamp:t.timestamp},l=o;if(e(this,_t)){let d=e(this,sn).call(this,o);if(d==null){e(this,M).debug&&c.log("Position update discarded by position processor");return}l=d}mn(l.timestamp,e(this,x)?.timestamp,e(this,M))||(r(this,de,l),e(this,et).call(this,l))},"#handleFusedPosition"));u(this,gi,a(i=>{let{heading:t}=i;r(this,Ye,t),this.status==="active"&&e(this,en).call(this,t)},"#handleHeadingUpdate"));u(this,yi,a(i=>{let{error:t}=i;if(e(this,A).transitionTo("error"),t!=null&&typeof t=="object"&&"code"in t&&typeof t.code=="number"){let n=t;n.code===1&&e(this,Di).call(this).sendWatchPositionDenied(),e(this,F).publish("error",n)}},"#handleGeolocationError"));u(this,Ti,a(i=>{e(this,F).publish("anchor-set",i)},"#handleAnchorSet"));u(this,Pi,a(i=>{e(this,F).publish("anchor-expired",i)},"#handleAnchorExpired"));u(this,et,a((i,t)=>{let n;try{e(this,Ye)!=null&&(i=Object.assign({},i,{heading:e(this,Ye)})),n=ho.parse(zn(i,e(this,be)))}catch(o){e(this,A).transitionTo("error"),c.error("Position parse failed",o instanceof Yo.default.ZodError?o.message:String(o));return}if(e(this,M).debug&&c.log("Parsed position",n),e(this,M).preventOutOfBounds){let{radius:o,center:l}=e(this,q).Camera.bounds;if(o!=null&&isFinite(o)&&l!=null&&!jn({longitude:n.longitude,latitude:n.latitude},{radius:o,center:l})){c.warn(`Position [${n.longitude}, ${n.latitude}] is outside map bounds. Position update will be discarded.`);return}}if(!e(this,on).call(this,n.accuracy)){c.log(`Dropping position update with accuracy ${n.accuracy}m (exceeds threshold ${e(this,M).accuracyThreshold}m)`);return}if(t?.silent?e(this,G).update({status:this.status},{animate:!1}):e(this,A).transitionTo("position-update"),!e(this,A).shouldUpdateGeometry()){c.warn(`Cannot update position because BlueDot state is \'${this.status}\'. BlueDot must be enabled first.`);return}e(this,Yi).call(this,n,t)},"#setPosition"));u(this,Yi,a((i,t)=>{if(mn(i.timestamp,e(this,x)?.timestamp,e(this,M)))return;let n=e(this,x)?.floor?.id;r(this,x,i);let o=i.floor?.id;e(this,Ei).call(this,!1),t?.silent||(e(this,A).resetTimer(e(this,M).timeout),e(this,Di).call(this).updateState({userPosition:{bluedotTimestamp:Date.now(),latitude:i.latitude,longitude:i.longitude,floorLevel:i.floor?.elevation,accuracy:i.accuracy}})),this.dotModel||e(this,G).add(i),e(this,G).updateFloor(i.floor);let l=new mi.Coordinate({latitude:i.latitude,longitude:i.longitude}),d=this.status==="active"?i.accuracy:void 0,h=e(this,Qi).call(this)?i.heading??void 0:void 0,f=t?.animate!==!1;if(e(this,G).update({position:l,accuracy:d,heading:h,status:this.status},{animate:f},(m,b)=>{let T=b?o:n??o;e(this,F).publish("dot-position-update",{position:new mi.Coordinate({latitude:m.latitude,longitude:m.longitude,floorId:T})})}),!t?.silent){let m={floor:this.floor,heading:this.heading,accuracy:this.accuracy,coordinate:this.coordinate};e(this,F).publish("position-update",m),e(this,ue).handlePositionUpdate(m)}},"#applyPosition"));u(this,Si,a(()=>{e(this,Ei).call(this,!0)},"#handleFloorChange"));u(this,Ei,a(i=>{let t=this.floor,n=this.isEnabled&&!e(this,pi)&&t!=null&&t.id!==e(this,q).currentFloor.id;n!==e(this,Qe)&&(r(this,Qe,n),i&&e(this,G).update({status:this.status},{animate:!1}),e(this,F).publish("status-change",{status:this.status,action:"visibility-change"}))},"#syncFloorVisibility"));u(this,Qi,a(()=>this.heading==null?!1:this.status==="active"?!0:e(this,M).heading.displayWhenInactive,"#shouldShowHeading"));u(this,en,a(i=>{if(!e(this,A).shouldUpdateGeometry()){c.warn(`Cannot update orientation because BlueDot state is \'${this.status}\'. BlueDot must be enabled first.`);return}if(e(this,x)==null){e(this,M).debug&&c.log("Cannot update orientation before a valid position has been applied.");return}r(this,x,{...e(this,x),heading:i}),e(this,G).update({heading:i},{animate:!0}),e(this,F).publish("device-orientation-update",{heading:i})},"#setOrientation"));g(this,"update",a((i,t)=>{if(!this.isEnabled)return;if(i==null){r(this,be,void 0),e(this,de)!=null&&e(this,et).call(this,e(this,de),t);return}if("coords"in i){e(this,tn).call(this,i,t);return}let{timestamp:n,...o}=i,l=Object.assign({},e(this,be),o);if("floorOrFloorId"in i){let{floorOrFloorId:h}=i;h==null?l.floor=void 0:h==="device"?l.floor="device":typeof h=="string"?l.floor=e(this,nn).call(this,h):l.floor=h}r(this,be,l),(l.latitude!=null&&l.longitude!=null||e(this,de)!=null)&&e(this,et).call(this,e(this,de),t)},"update"));u(this,tn,a(async(i,t)=>{let n=await e(this,vi).call(this,i.coords.floorLevel,i.coords.latitude,i.coords.longitude);if(!this.isEnabled)return;let{timestamp:o,...l}=i,d=Object.assign({},e(this,be),{...l.coords,floor:n});r(this,be,d),(d.latitude!=null&&d.longitude!=null||e(this,de)!=null)&&e(this,et).call(this,e(this,de),t)},"#processAsyncGeolocation"));u(this,nn,a(i=>e(this,De).getById("floor",i),"#getFloorByFloorId"));u(this,vi,a(async(i,t,n)=>{if(i==null)return;let o=e(this,Ot).get(i);if(o==null&&(o=e(this,De).getByType("floor").filter(l=>l.elevation===i),e(this,Ot).set(i,o)),o.length===0){c.warn(`Received elevation level ${i} but no floors could be found at that elevation.`);return}if(o.length===1)return o[0];if(t!=null&&n!=null){let l=new mi.Coordinate({latitude:t,longitude:n,floorId:o[0].id}),d=await e(this,De).Query.nearest(l,e(this,De).getByType("node"),{limit:"same-elevation",mode:"absolute-distance",maxResults:1});if(d&&d.length>0&&d[0].feature!=null&&d[0].feature.floor!=null)return d[0].feature.floor}return e(this,q).currentFloorStack.floors.find(l=>l.elevation===i)},"#getFloorByFloorLevel"));g(this,"follow",a((i,t)=>{e(this,ue).start(i,t)},"follow"));u(this,on,a(i=>i==null?this.status!=="disabled":i<=e(this,M).accuracyThreshold,"#isAccurateEnough"));u(this,sn,a(i=>{let t={latitude:e(this,x)?.latitude,longitude:e(this,x)?.longitude,accuracy:e(this,x)?.accuracy,heading:e(this,x)?.heading,floor:e(this,x)?.floor,timestamp:e(this,x)?.timestamp};try{return e(this,_t).call(this,t,i)}catch(n){return c.error("Position processor callback threw an error",n instanceof Error?n.message:String(n)),i}},"#processIncomingPosition"));g(this,"destroy",a(()=>{this.disable(),e(this,O).destroy(),e(this,N).destroy(),e(this,G).destroy(),e(this,A).destroy(),e(this,ue).destroy(),e(this,q).off("click",e(this,Mi)),e(this,q).off("hover",e(this,wi)),e(this,q).off("floor-change",e(this,Si)),e(this,F).destroy()},"destroy"));u(this,Di,a(()=>e(this,M).preventOutOfBounds?e(this,De).internal.Analytics:{sendWatchPositionDenied:a(()=>{},"sendWatchPositionDenied"),updateState:a(()=>{},"updateState")},"#getAnalyticsIfEnabled"));u(this,xi,a(i=>t=>{t.models==null||t.models.length===0||this.dotModel==null||t.models.find(o=>o.id===this.dotModel?.id)==null||e(this,F).publish(i,{coordinate:t.coordinate})},"#handleClickOrHover"));u(this,Mi,e(this,xi).call(this,"click"));u(this,wi,e(this,xi).call(this,"hover"));r(this,q,i),r(this,De,i.getMapData()),r(this,pi,e(this,q).options.multiFloorView?.enabled===!0),r(this,A,new Ii),r(this,ue,new Ri(i)),r(this,G,new _i(i,this)),r(this,N,new St),r(this,O,new Wi(e(this,N))),e(this,A).on("status-change",t=>{e(this,G).update({status:this.status},{animate:!1}),e(this,F).publish("status-change",{status:this.status,action:t.action})}),e(this,ue).on("follow-change",t=>{e(this,F).publish("follow-change",t)}),e(this,q).on("click",e(this,Mi)),e(this,q).on("hover",e(this,wi)),e(this,q).on("floor-change",e(this,Si))}get Sensors(){return e(this,N)}get Fusion(){return e(this,O)}get anchor(){return e(this,O).anchor}get displacement(){return e(this,O).displacement}get dotModel(){return e(this,G).dot}get accuracyRingModel(){return e(this,G).accuracyRing}get headingConeModel(){return e(this,G).headingCone}get isEnabled(){return e(this,A).isEnabled}get status(){return e(this,Qe)?"hidden":e(this,A).current}get isFollowing(){return e(this,ue).isFollowing}get heading(){return e(this,x)?.heading}get accuracy(){return e(this,x)?.accuracy}get coordinate(){if(e(this,x)!=null)return(e(this,xe)==null||this.floor?.id!==e(this,xe).floorId||e(this,x).latitude!==e(this,xe).latitude||e(this,x).longitude!==e(this,xe).longitude)&&r(this,xe,new mi.Coordinate({latitude:e(this,x).latitude,longitude:e(this,x).longitude,floorId:this.floor?.id})),e(this,xe)}getState(){return{...e(this,M)}}get floor(){return e(this,x)?.floor}forcePosition(i,t=Ko){let n=e(this,N).get("manual");if(n==null){c.warn("Manual sensor not available");return}this.isEnabled||this.enable(),n.isEnabled||n.enable(),n.forcePosition({latitude:i.latitude,longitude:i.longitude,heading:i.heading,floorLevel:i.floorLevel,ttl:t})}reportPosition(i){let t=e(this,N).get("manual");if(t==null){c.warn("Manual sensor not available");return}this.isEnabled||this.enable(),t.isEnabled||t.enable(),t.reportPosition(i)}async __enableSensor(i){let t=e(this,N).get(i);return t==null?(c.warn(`Sensor \'${i}\' not found`),"unavailable"):t.enable()}__disableSensor(i){let t=e(this,N).get(i);if(t==null){c.warn(`Sensor \'${i}\' not found`);return}t.disable()}async __checkSensorPermission(i){let t=e(this,N).get(i);return t==null?(c.warn(`Sensor \'${i}\' not found`),"unavailable"):t.checkPermission()}async __requestSensorPermission(i){let t=e(this,N).get(i);return t==null?(c.warn(`Sensor \'${i}\' not found`),"unavailable"):t.requestPermission()}__isSensorEnabled(i){let t=e(this,N).get(i);return t==null?(c.warn(`Sensor \'${i}\' not found`),!1):t.isEnabled}setPositionProcessor(i){r(this,_t,i)}};F=new WeakMap,q=new WeakMap,De=new WeakMap,A=new WeakMap,ue=new WeakMap,G=new WeakMap,de=new WeakMap,Ye=new WeakMap,N=new WeakMap,O=new WeakMap,be=new WeakMap,x=new WeakMap,xe=new WeakMap,Qe=new WeakMap,pi=new WeakMap,M=new WeakMap,Ot=new WeakMap,_t=new WeakMap,It=new WeakMap,bi=new WeakMap,gi=new WeakMap,yi=new WeakMap,Ti=new WeakMap,Pi=new WeakMap,et=new WeakMap,Yi=new WeakMap,Si=new WeakMap,Ei=new WeakMap,Qi=new WeakMap,en=new WeakMap,tn=new WeakMap,nn=new WeakMap,vi=new WeakMap,on=new WeakMap,sn=new WeakMap,Di=new WeakMap,xi=new WeakMap,Mi=new WeakMap,wi=new WeakMap,a(Fn,"BlueDot");var Xi=Fn;return as(Xs);})();\n\n\n// Register the extension\nif (window.bridge && window.bridge.extensions) {\n try {\n window.bridge.extensions.register({ name: \'blue-dot\', package: { Extension: BlueDot.BlueDot } });\n if (window.rnDebug) window.rnDebug(\'BlueDot Extension Registered\');\n } catch(e) {\n if (window.rnDebug) window.rnDebug(\'Failed to register blue-dot extension: \' + e.message);\n }\n} else {\n if (window.rnDebug) window.rnDebug(\'Bridge or extensions not available for registration\');\n}';function D(){return oA}o(D,"getRegistrationScript");var aA="[MappedinJS]";function M(s="",{prefix:a=aA}={}){const l=`${a}${s?`-${s}`:""}`,n=o((e,d)=>{if(typeof window<"u"&&window.rnDebug){const c=d.map(h=>h instanceof Error&&h.stack?`${h.message}
2
+ ${h.stack}`:h);window.rnDebug(`${s} ${e}: ${c.join(" ")}`)}},"rnDebug");return{logState:0,log(...e){this.logState<=0&&(console.log(l,...e),n("log",e))},warn(...e){this.logState<=1&&(console.warn(l,...e),n("warn",e))},error(...e){this.logState<=2&&(console.error(l,...e),n("error",e))},assert(...e){console.assert(...e)},time(e){console.time(e)},timeEnd(e){console.timeEnd(e)},setLevel(e){0<=e&&e<=3&&(this.logState=e)}}}o(M,"createLogger");var rA=M(),z=rA;function C(){nA({extensionName:"blue-dot",getRegistrationScript:D,logger:{log:o(s=>z.log(s),"log"),error:o((s,a)=>z.error(s,a),"error")}})}o(C,"useBlueDotRegistration");function w(s,a){if(typeof s!="string"||s.length===0)throw new Error("Event parameter must be a non-empty string");if(typeof a!="function")throw new Error("Callback parameter must be a function");const l=AA(tA),{extensions:n,mapData:e}=l;if(!e)throw new Error("Map data is not available");C();const c=(n?.["blue-dot"]?.registrationState||"unregistered")==="registered",h=$(u=>{try{a(u)}catch(P){console.error(`Error in blue dot event callback for ${String(s)}:`,P)}},[s,a]);eA({eventKey:`blue-dot:${String(s)}`,callback:h,setupScript:o(()=>iA({extensionName:"blue-dot",eventName:s}),"setupScript"),cleanupScript:o(()=>sA({extensionName:"blue-dot",eventName:s}),"cleanupScript"),shouldInject:c})}o(w,"useBlueDotEvent");function p(){const s=Y(R),{bridge:a,extensions:l,updateExtensionState:n}=s;C();const e=l["blue-dot"],c=(e?.registrationState||"unregistered")==="registered",h=e?.isEnabled||!1,u=e?.status||"hidden",P=e?.isFollowing||!1,v=e?.coordinate,b=e?.floor,m=e?.accuracy,f=e?.heading,y=e?.dotModel,j=e?.accuracyRingModel,U=e?.headingConeModel,g=_(l);g.current=l,w("position-update",i(A=>{n("blue-dot",r=>({...r,coordinate:A.coordinate,floor:A.floor,accuracy:A.accuracy??void 0,heading:A.heading??void 0}))},[n])),w("status-change",i(A=>{n("blue-dot",r=>({...r,status:A.status}))},[n])),w("follow-change",i(A=>{n("blue-dot",r=>({...r,isFollowing:A.following}))},[n]));const t=i(async(A,r=[])=>{if(!a?.isReady)throw new Error("Bridge is not ready. Ensure the WebView is loaded.");return await a.instruct({type:"extension",payload:{name:"blue-dot",method:A,args:r}})},[a]),k=i(async A=>{g.current?.["blue-dot"]?.isEnabled||(await t("enable",[A]),n("blue-dot",J=>({...J,isEnabled:!0})))},[t,n]),E=i(async()=>{await t("disable"),n("blue-dot",{registrationState:"unregistered",isEnabled:!1,status:"hidden",coordinate:void 0,floor:void 0,isFollowing:!1,accuracy:void 0,heading:void 0})},[t,n]),L=i((...A)=>t("update",A),[t]),Z=i((...A)=>t("follow",A),[t]),x=i((...A)=>t("getState",A),[t]),N=i((...A)=>t("updateState",A),[t]),B=i((...A)=>t("watchDevicePosition",A),[t]),V=i((...A)=>t("setPositionProcessor",A),[t]),O=i((...A)=>t("watchDeviceOrientation",A),[t]),I=i(A=>({id:A,enable:o(()=>t("__enableSensor",[A]),"enable"),disable:o(()=>t("__disableSensor",[A]),"disable"),checkPermission:o(()=>t("__checkSensorPermission",[A]),"checkPermission"),requestPermission:o(()=>t("__requestSensorPermission",[A]),"requestPermission"),getIsEnabled:o(()=>t("__isSensorEnabled",[A]),"getIsEnabled")}),[t]),X=q(()=>({get:o(A=>I(A),"get")}),[I]),W=i((A,r)=>t("forcePosition",[A,r]),[t]),Q=i(A=>t("reportPosition",[A]),[t]),T=i(A=>t("__enableSensor",[A]),[t]),H=i(A=>t("__disableSensor",[A]),[t]),S=i(A=>t("__checkSensorPermission",[A]),[t]),F=i(A=>t("__requestSensorPermission",[A]),[t]),K=i(A=>t("__isSensorEnabled",[A]),[t]);return{isReady:c,isEnabled:h,status:u,coordinate:v,floor:b,isFollowing:P,accuracy:m,heading:f,dotModel:y,accuracyRingModel:j,headingConeModel:U,Sensors:X,getState:x,enable:k,disable:E,update:L,updateState:N,follow:Z,watchDevicePosition:B,watchDeviceOrientation:O,setPositionProcessor:V,forcePosition:W,reportPosition:Q,enableSensor:T,disableSensor:H,checkSensorPermission:S,requestSensorPermission:F,isSensorEnabled:K,anchor:void 0,displacement:{dx:0,dy:0}}}o(p,"useBlueDot");export{p as useBlueDot,w as useBlueDotEvent};