@panoramax/web-viewer 4.4.0-develop-7826d3ed → 4.4.0-develop-12077507

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.js CHANGED
@@ -9,7 +9,7 @@
9
9
  * LICENSE file in the root directory of this source tree.
10
10
  *
11
11
  */
12
- !function(vt,bt){"object"===typeof exports&&"object"===typeof module?module.exports=bt():"function"===typeof define&&define.amd?define("Panoramax",[],bt):"object"===typeof exports?exports.Panoramax=bt():vt.Panoramax=bt()}(this,(()=>(()=>{var vt={9039:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Basic});var ls,ho=le(7528),Dl=le(4542),Fl=le(5254),sc=le(4964),uc=le(5995),mc=le(7343),gc=le(2614),Ac=le.n(gc),Ec=le(8330);le(1865),le(3638);class Basic extends Dl.WF{constructor(){let vt=arguments.length>0&&void 0!==arguments[0]&&arguments[0];super(),this.lang=this.getAttribute("lang")||null,this.endpoint=this.getAttribute("endpoint")||null,this.picture=this.getAttribute("picture")||null,this.sequence=this.getAttribute("sequence")||null,console.info("\ud83d\udcf7 Panoramax ".concat(this.getClassName()," - Version ").concat(Ec.rE," (").concat("7826d3e",")\n\n\ud83c\udd98 Issues can be reported at ").concat(Ec.Jk.O)),vt||(this._isInternetFast=null,(0,mc.isInternetFast)().then((vt=>this._isInternetFast=vt)))}connectedCallback(){super.connectedCallback(),this._t=(0,sc.getTranslations)(this.lang),this.loader=(0,uc.createWebComp)("pnx-loader",{_parent:this,"no-label":(0,mc.isInIframe)()}),this._loadsAPI&&this.endpoint&&this._loadsAPI===this.endpoint||this.api&&this.api._endpoint===this.endpoint||!this.endpoint||((this._loadsAPI||this.api)&&(delete this.api,delete this._loadsAPI),this._setupAPI()),Object.entries({map:"map-options",psv:"psv-options",fetchOptions:"fetch-options",mapstyle:"map-style"}).forEach((vt=>{let[bt,le]=vt;this.getAttribute(bt)&&console.error('Component attribute "'.concat(bt,'" has been renamed into "').concat(le,'". Old attribute "').concat(bt,'" is ignored.'))})),(0,mc.isInIframe)()&&this.classList.add("pnx-iframed")}_setupAPI(){if(this.loader=this.loader||(0,uc.createWebComp)("pnx-loader",{_parent:this}),!this.endpoint)return void console.warn("No endpoint is defined");this._loadsAPI=this.endpoint;let vt=this.endpoint;try{this.api=new Fl.A(this.endpoint,{fetch:this["fetch-options"]}),this.api.onceReady().then((()=>{if(vt!=this._loadsAPI||!this.api)return;let bt=this.api.getUnavailableFeatures(),le=this.api.getAvailableFeatures();le=0===bt.length?"\u2705 All features available":"\u2705 Available features: "+le.join(", "),bt=0===bt.length?"":"\ud83d\udeab Unavailable features: "+bt.join(", "),console.info('\ud83c\udf10 Connected to API "'.concat(this.api._metadata.name,'" (').concat(this.api._endpoint,")\n\u2139\ufe0f API runs STAC ").concat(this.api._metadata.stac_version," ").concat(this.api._metadata.geovisio_version?"& GeoVisio "+this.api._metadata.geovisio_version:"","\n ").concat(le,"\n ").concat(bt,"\n").trim())})).catch((vt=>this.loader.dismiss(vt,this._t.pnx.error_api))).finally((()=>delete this._loadsAPI))}catch(le){var bt;delete this._loadsAPI,null!==(bt=this.loader)&&void 0!==bt&&bt.dismiss?this.loader.dismiss(le,this._t.pnx.error_api):console.error(le)}}onceReady(){throw new Error("You must override this method on sub-class")}onceAPIReady(){return this.api?this.api.onceReady():new Promise((vt=>setTimeout(vt,250))).then(this.onceAPIReady.bind(this))}createRenderRoot(){return this}attributeChangedCallback(vt,bt,le){if(super.attributeChangedCallback(vt,bt,le),"endpoint"===vt&&(this._loadsAPI&&le&&this._loadsAPI===le||this.api&&this.api._endpoint===le||!le||((this._loadsAPI||this.api)&&(delete this.api,delete this._loadsAPI),this._setupAPI())),["picture","sequence"].includes(vt)){let ls,ho,Dl,Fl;"picture"===vt?(ls=this.sequence,Dl=this.sequence,ho=le,Fl=bt):(ls=le,Dl=bt,ho=this.picture,Fl=this.picture),this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{seqId:ls,picId:ho,prevSeqId:Dl,prevPicId:Fl}}))}}getClassName(){return"Basic"}select(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;arguments.length>2&&void 0!==arguments[2]&&arguments[2]&&(this.picture=null,this.sequence=null),this.picture=bt,this.sequence=vt}isWidthSmall(){return(null===this||void 0===this?void 0:this.offsetWidth)<576}isHeightSmall(){return(null===this||void 0===this?void 0:this.offsetHeight)<400}render(){return(0,Dl.qy)(ls||(ls=(0,ho.A)(["<p>Should not be used directly, use Viewer/CoverageMap/Editor instead</p>"])))}getSubComponentsNames(){return["loader","api"]}getAPI(){return this.api}addEventListener(vt,bt,le){let ls=vt.split(":").shift();if(ls&&this.getSubComponentsNames().includes(ls)){var ho;const Dl=vt.substring(ls.length+1);null!==(ho=this[ls])&&void 0!==ho&&ho.addEventListener?this[ls].addEventListener(Dl,bt,le):setTimeout((()=>this.addEventListener(vt,bt,le)),50)}else super.addEventListener(vt,bt,le)}static GetJSONConverter(){return{fromAttribute:vt=>null===vt||void 0===vt||""===vt?null:"object"===typeof vt||Array.isArray(vt)?vt:Ac().parse(vt),toAttribute:vt=>null===vt||void 0===vt||""===vt?"":"string"===typeof vt?vt:Ac().stringify(vt)}}}Basic.properties={picture:{type:String,reflect:!0},sequence:{type:String,reflect:!0},"fetch-options":{converter:Basic.GetJSONConverter()},lang:{type:String},endpoint:{type:String}}},153:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>CoverageMap});var ls=le(9379),ho=le(9039),Dl=le(5642),Fl=le(927),sc=(le(7776),le(2118)),uc=le(7208),mc=le(4997);class CoverageMap extends ho.A{constructor(){super(),this["map-style"]=this.getAttribute("map-style")||(0,uc.MapTiles)();try{this["map-style"]=JSON.parse(this["map-style"])}catch(vt){}this.mapStyleComposer=new mc.A(this),this.mapStyleComposer.addBasemap("streets",this["map-style"],!0),this._mapContainer=document.createElement("div"),this.onceAPIReady().then((()=>{this.loader.setAttribute("value",30),this._initParams=new sc.Ay(sc.Ay.GetComponentProperties(CoverageMap,this));const vt=this.user&&""!=this.user;this.mapStyleComposer._createPanoramaxEndpointFromAPI("default",this.api,!vt),vt&&this.mapStyleComposer._createPanoramaxEndpointForUser(this.user),this._initMap()}))}attributeChangedCallback(vt,bt,le){var ls;super.attributeChangedCallback(vt,bt,le),"user"===vt&&1===(null===(ls=this.api)||void 0===ls?void 0:ls._isReady)&&(le&&""!=le?this.mapStyleComposer._createPanoramaxEndpointForUser(le):this.mapStyleComposer.switchPanoramaxEndpoint("default"))}disconnectedCallback(){var vt;super.disconnectedCallback(),null===(vt=this.map)||void 0===vt||vt.destroy()}getClassName(){return"CoverageMap"}onceReady(){return this.map&&this.map.waitForEnoughMapLoaded?this.map.waitForEnoughMapLoaded():new Promise((vt=>setTimeout(vt,100))).then(this.onceReady.bind(this))}render(){return[this.loader,this._mapContainer]}getSubComponentsNames(){return super.getSubComponentsNames().concat(["map","mapStyleComposer"])}_initMap(){this.map=new Dl.A(this,this._mapContainer,Object.assign({},this._initParams.getMapInit(),{hash:!0})),this.map.addControl(new Fl.NavigationControl({showCompass:!1})),this.loader.setAttribute("value",70),this.addEventListener("select",this._onSelect.bind(this)),this.map.on("picture-click",(vt=>this.select(vt.seqId,vt.picId))),this.map.on("sequence-click",(vt=>this.select(vt.seqId))),this.map.waitForEnoughMapLoaded().then((async()=>{await(0,sc.mK)(this.map,this._initParams.getMapPostInit()),this.loader.dismiss()}))}_onSelect(vt){if(vt.detail.picId||vt.detail.seqId){const bt=this.map.getLayersOrder().find((bt=>bt.endsWith(vt.detail.picId?"pictures":"sequences"))),le=this.map.queryRenderedFeatures({layers:[bt],filter:["==",["get","id"],vt.detail.picId||vt.detail.seqId]});le.length>=0&&null!=le[0]&&this.map._attachPreviewToPictures({features:le},bt)}}}CoverageMap.properties=(0,ls.A)({"map-options":{converter:ho.A.GetJSONConverter()},"map-style":{type:String},user:{type:String}},ho.A.properties),customElements.define("pnx-coverage-map",CoverageMap)},1752:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Editor});var ls=le(9379),ho=(le(7365),le(9039)),Dl=le(5642),Fl=le(9048),sc=le(508),uc=le(8340),mc=le(1545),gc=le(5995),Ac=le(4997),Ec=le(7208);const kc="sequence-headings";class Editor extends ho.A{constructor(){super(),this.raster=null,this.background="streets",this["map-style"]=this.getAttribute("map-style")||(0,Ec.MapTiles)();try{this["map-style"]=JSON.parse(this["map-style"])}catch(vt){}this.mapStyleComposer=new Ac.A(this),this.mapStyleComposer.addBasemap("streets",this["map-style"],!0),this._psvContainer=document.createElement("div"),this._psvContainer.setAttribute("slot","bg"),this._mapContainer=document.createElement("div"),this._mapContainer.setAttribute("slot","bg"),this.grid=(0,gc.createWebComp)("pnx-cornered-grid"),this.grid.appendChild(this._psvContainer),this.grid.appendChild(this._mapContainer),this.onceAPIReady().then((()=>{this.loader.setAttribute("value",30),this.sequence||this.loader.dismiss({},"No sequence is selected"),this.addEventListener("select",this._onSelect.bind(this)),this._initPSV(),this._initMap()}))}disconnectedCallback(){var vt,bt;super.disconnectedCallback(),null===(vt=this.map)||void 0===vt||vt.destroy(),null===(bt=this.psv)||void 0===bt||bt.destroy()}getClassName(){return"Editor"}onceReady(){var vt,bt;return this.map&&this.psv&&null!==(vt=(bt=this.map).loaded)&&void 0!==vt&&vt.call(bt)?Promise.resolve():new Promise((vt=>setTimeout(vt,100))).then(this.onceReady.bind(this))}connectedCallback(){if(super.connectedCallback(),this._moveChildToGrid(),window.addEventListener("DOMContentLoaded",(()=>{this._moveChildToGrid()}),{once:!0}),this.raster){const vt=this.mapStyleComposer._createRasterBasemap(this.raster);"aerial"===this.background&&this.mapStyleComposer.switchBasemap(vt)}}render(){return[this.loader,this.grid]}getSubComponentsNames(){return super.getSubComponentsNames().concat(["map","psv","grid","mapStyleComposer"])}_initPSV(){try{this.psv=new Fl.Ay(this,this._psvContainer),this.psv._myVTour.datasource.nodeResolver=this._getNode.bind(this),this.grid.appendChild((0,gc.createWebComp)("pnx-widget-player",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:"xl",more:"never"}))}catch(vt){let bt=mc.IJ.isWebGLSupported?this._t.pnx.error_psv:this._t.pnx.error_webgl;this.loader.dismiss(vt,bt)}}_initMap(){try{this.map=new Dl.A(this,this._mapContainer,{background:this.background,zoom:15,picMarkerDraggable:!0}),(0,uc.linkMapAndPhoto)(this),this.loader.setAttribute("value",50),this._loadSequence(),this.map.once("load",(()=>{this.mapStyleComposer.hasManyBasemaps()&&this._addMapBackgroundWidget()}));const vt=this.map._picMarker.setRotation.bind(this.map._picMarker);this.map._picMarker.setRotation=bt=>(bt=void 0===this._lastRelHeading?bt:bt+this._lastRelHeading-this.psv.getPictureRelativeHeading(),vt(bt))}catch(vt){this.loader.dismiss(vt,this._t.pnx.error_psv)}}_loadSequence(){return this.loader.setAttribute("value",60),this.api.getSequenceItems(this.sequence).then((vt=>{this.loader.setAttribute("value",80),this._sequenceData=vt.features;const bt={type:"FeatureCollection",features:[{id:this.sequence,type:"Feature",properties:{id:this.sequence},geometry:{type:"LineString",coordinates:vt.features.map((vt=>vt.geometry.coordinates))}},...vt.features.map((vt=>(vt.properties.id=vt.id,vt.properties.sequences=[this.sequence],vt)))]};if(this.map.once("styledata",(()=>this.loader.dismiss())),this.mapStyleComposer.addPanoramaxEndpoint("default",{sources:{geovisio:{type:"geojson",data:bt}}},!0),this.picture){const bt=vt.features.find((vt=>vt.id===this.picture));bt?(this.select(this.sequence,this.picture,!0),this.map.jumpTo({center:bt.geometry.coordinates,zoom:18})):console.log("Picture with ID",bt,"was not found")}else{const bt=[...vt.features[0].geometry.coordinates,...vt.features[0].geometry.coordinates];for(let le=1;le<vt.features.length;le++){const ls=vt.features[le].geometry.coordinates;ls[0]<bt[0]&&(bt[0]=ls[0]),ls[1]<bt[1]&&(bt[1]=ls[1]),ls[0]>bt[2]&&(bt[2]=ls[0]),ls[1]>bt[3]&&(bt[3]=ls[1])}this.map.fitBounds(bt,{animate:!1})}})).catch((vt=>this.loader.dismiss(vt,this._t.pnx.error_api)))}_getNode(vt){const bt=this._sequenceData.find((bt=>bt.properties.id===vt)),le=bt?(0,sc.apiFeatureToPSVNode)(bt,this._t,this._isInternetFast,void 0,(vt=>this.api.cleanResourceURL(vt))):null;return le&&delete le.links,le}_addMapBackgroundWidget(){const vt=(0,gc.createWebComp)("pnx-map-background",{_parent:this,size:"sm",slot:"bottom-left"});this.grid.appendChild(vt)}_moveChildToGrid(){Array.from(this.querySelectorAll("[slot]")).forEach((vt=>{var bt;null!==(bt=vt.tagName)&&void 0!==bt&&bt.toLowerCase().startsWith("pnx-")&&(vt._parent=this,vt._t=this._t),this.grid.appendChild(vt)}))}previewSequenceHeadingChange(vt){const bt=void 0!==this.map.getLayer(kc);if(this.map._picMarkerPreview.remove(),void 0===vt)return delete this._lastRelHeading,bt&&this.map.setLayoutProperty(kc,"visibility","none"),void(this.picture&&this.map._picMarker.setRotation(this.psv.getXY().x));this._lastRelHeading=vt,bt||this.map.addLayer({id:kc,type:"symbol",source:"geovisio",layout:{"icon-image":"pnx-marker","icon-overlap":"always","icon-size":.8}});const le=-this.psv.getPictureRelativeHeading();this.map.setLayoutProperty(kc,"visibility","visible"),this.map.setLayoutProperty(kc,"icon-rotate",["+",["get","view:azimuth"],le,vt]);const ls=[["==",["geometry-type"],"Point"]];this.picture&&ls.push(["!=",["get","id"],this.picture]),this.map.setFilter(kc,["all",...ls]),this.picture&&this.map._picMarker.setRotation(this.psv.getXY().x)}_onSelect(){void 0!==this._lastRelHeading&&this.previewSequenceHeadingChange(this._lastRelHeading)}}Editor.properties=(0,ls.A)({raster:{converter:ho.A.GetJSONConverter()},background:{type:String},"map-style":{type:String}},ho.A.properties),customElements.define("pnx-editor",Editor)},3407:(vt,bt,le)=>{"use strict";le.d(bt,{$p:()=>Ec,Ay:()=>PhotoViewer,RD:()=>du});var ls=le(9379),ho=(le(970),le(1545)),Dl=le(4451),Fl=le(9039),sc=le(9048),uc=le(5995),mc=le(7343),gc=le(2118),Ac=le(4207);const Ec=20,kc=Math.PI/6,du=["pnx-mini","pnx-widget-player","pnx-widget-zoom"];class PhotoViewer extends Fl.A{constructor(){super(),this["psv-options"]={},this["url-parameters"]=this.getAttribute("url-parameters")||"true",this["keyboard-shortcuts"]=this.getAttribute("keyboard-shortcuts")||"true",this["skip-tags-menu-opening"]="true"!==(this.getAttribute("skip-tags-menu-opening")||"false"),this["share-base-url"]=this.getAttribute("share-base-url")||null,this.widgets=this.getAttribute("widgets")||"true",this.grid=(0,uc.createWebComp)("pnx-cornered-grid"),this.psvContainer=document.createElement("div"),this.psvContainer.setAttribute("slot","bg"),this.grid.appendChild(this.psvContainer),this.popup=(0,uc.createWebComp)("pnx-popup",{_parent:this,onclose:this._onPopupClose.bind(this)}),this.tabindex=0,this._sequencesMetadata={}}_createInitParamsHandler(){var vt,bt;this._initParams=new gc.Ay(gc.Ay.GetComponentProperties(PhotoViewer,this),Object.assign({},null===(vt=this.urlHandler)||void 0===vt?void 0:vt.currentURLParams(),null===(bt=this.urlHandler)||void 0===bt?void 0:bt.currentURLParams(!0)),{disableAnnotations:localStorage.getItem(mc.DISABLE_ANNOTATIONS_PARAM)})}_initWidgets(){"false"!==this._initParams.getParentPostInit().widgets&&((0,mc.isInIframe)()||(this.grid.appendChild((0,uc.createWebComp)("pnx-widget-player",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:this.isHeightSmall()?"md":"xl"})),this.grid.appendChild((0,uc.createWebComp)("pnx-annotations-switch",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:this.isHeightSmall()?"md":"xl"}))),(0,mc.isInIframe)()?(this.legend=(0,uc.createWebComp)("pnx-widget-legend",{slot:"bottom-right",light:!0,_parent:this,focus:this._initParams.getParentPostInit().focus,picture:this._initParams.getParentPostInit().picture}),this.grid.appendChild(this.legend)):this.isWidthSmall()?(this.legend=(0,uc.createWebComp)("pnx-picture-legend",{_parent:this}),this.bottomDrawer=(0,uc.createWebComp)("pnx-bottom-drawer",{slot:"bottom",_parent:this,class:this._initParams.getParentPostInit().willLoadPicture?void 0:"pnx-hidden"}),this.bottomDrawer.appendChild(this.legend),this.grid.appendChild(this.bottomDrawer),this.addEventListener("select",(vt=>{(0,mc.isNullId)(vt.detail.picId)?this.bottomDrawer.classList.add("pnx-hidden"):this.bottomDrawer.classList.remove("pnx-hidden")}))):(this.legend=(0,uc.createWebComp)("pnx-widget-legend",{slot:this.isWidthSmall()?void 0:"top-left",_parent:this,focus:this._initParams.getParentPostInit().focus,picture:this._initParams.getParentPostInit().picture}),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-zoom",{slot:"bottom-right",class:"pnx-print-hidden",_parent:this})),this.grid.appendChild(this.legend)))}connectedCallback(){super.connectedCallback(),this.presetsManager=new Ac.A(this.lang),"false"!==this["url-parameters"]&&(this.urlHandler=new Dl.A(this),this.onceReady().then((()=>{this.urlHandler.listenToChanges(),this.urlHandler._onParentChange()}))),this.onceAPIReady().then(this._postAPIInit.bind(this)),this._moveChildToGrid(),window.addEventListener("DOMContentLoaded",(()=>{this._moveChildToGrid()}),{once:!0})}disconnectedCallback(){var vt,bt;super.disconnectedCallback(),null===(vt=this.urlHandler)||void 0===vt||vt.destroy(),null===(bt=this.psv)||void 0===bt||bt.destroy(),document.body.removeEventListener("click",this._toggleKeyboardBasedOnFocus),window.removeEventListener("keypress",this._toggleKeyboardBasedOnFocus)}getClassName(){return"PhotoViewer"}onceReady(){return this.oncePSVReady().then((()=>this._initParams.getParentPostInit().willLoadPicture&&!this.psv.getPictureMetadata()?this.onceFirstPicLoaded():Promise.resolve()))}render(){return[this.loader,this.grid,this.popup]}getSubComponentsNames(){return super.getSubComponentsNames().concat(["psv","grid","popup","urlHandler"])}oncePSVReady(){let vt;return new Promise((bt=>{vt=setInterval((()=>{this.psv&&"object"===typeof this.psv&&(this.psv.container?(clearInterval(vt),bt()):this.psv.addEventListener&&this.psv.addEventListener("ready",(()=>{clearInterval(vt),bt()}),{once:!0}))}),250)}))}onceFirstPicLoaded(){return this.oncePSVReady().then((()=>this.psv.getPictureMetadata()?Promise.resolve():new Promise((vt=>{this.psv.addEventListener("picture-loaded",vt,{once:!0})}))))}async _postAPIInit(){this.loader.setAttribute("value",30),this._createInitParamsHandler();const vt=this._initParams.getParentPostInit();this._initPSV(),this._initWidgets(),(0,gc.ai)(this,vt),vt.keyboardShortcuts&&this._handleKeyboardManagement(),vt.willLoadPicture?this.psv.getPictureMetadata()?this.loader.dismiss():this.psv.addEventListener("picture-loaded",(()=>this.loader.dismiss()),{once:!0}):this.loader.dismiss()}_initPSV(){try{this.psv=new sc.Ay(this,this.psvContainer,(0,ls.A)({shouldGoFast:this._psvShouldGoFast.bind(this),keyboard:"always",keyboardActions:(0,ls.A)((0,ls.A)({},ho.zY.keyboardActions),{},{8:"ROTATE_UP",2:"ROTATE_DOWN",4:"ROTATE_LEFT",6:"ROTATE_RIGHT",PageUp:()=>this.psv.goToNextPicture(),9:()=>this.psv.goToNextPicture(),PageDown:()=>this.psv.goToPrevPicture(),3:()=>this.psv.goToPrevPicture(),5:()=>this.moveCenter(),"*":()=>this.moveCenter(),Home:()=>{var vt;return null===(vt=this._toggleFocus)||void 0===vt?void 0:vt.call(this)},7:()=>{var vt;return null===(vt=this._toggleFocus)||void 0===vt?void 0:vt.call(this)},End:()=>this.mini.toggleAttribute("collapsed"),1:()=>this.mini.toggleAttribute("collapsed")," ":()=>this.psv.toggleSequencePlaying(),0:()=>this.psv.toggleSequencePlaying()})},this._initParams.getPSVInit())),this.oncePSVReady().then((()=>{this.loader.setAttribute("value",50),(0,gc.Vy)(this.psv,this._initParams.getPSVPostInit())})),this.psv.addEventListener("sequence-playing",(()=>this.classList.add("pnx-playing"))),this.psv.addEventListener("sequence-stopped",(()=>this.classList.remove("pnx-playing"))),this.psv.addEventListener("dblclick",(()=>clearTimeout(this._gridFocus))),this.psv.addEventListener("click",(vt=>{clearTimeout(this._gridFocus),"CANVAS"===vt.data.target.tagName&&(!this.isMapWide||this.isMapWide&&!this.isMapWide())&&(this._gridFocus=setTimeout((()=>{this.grid.toggleAway()?this.classList.add("pnx-grid-toggled"):this.classList.remove("pnx-grid-toggled")}),250))})),this.psvContainer.addEventListener("mousemove",(()=>{this.grid._hidden&&(clearTimeout(this._gridFocus),this.grid.toggleAway(!0),this.classList.remove("pnx-grid-toggled"))}))}catch(vt){let bt=ho.IJ.isWebGLSupported?this._t.pnx.error_psv:this._t.pnx.error_webgl;this.loader.dismiss(vt,bt)}}_enableKeyboard(){this.psv.startKeyboardControl()}_disableKeyboard(){this.psv.stopKeyboardControl()}_toggleKeyboardBasedOnFocus(vt){const bt=(null===vt||void 0===vt?void 0:vt.target)||document.activeElement;if(this.contains(bt)){for(let vt of this.grid.childNodes)if("bg"!==vt.getAttribute("slot")&&!du.includes(vt.tagName.toLowerCase())&&vt.contains(bt))return void this._disableKeyboard();if(null!==this.popup.getAttribute("visible"))return void this._disableKeyboard();this._enableKeyboard()}else this._disableKeyboard()}_handleKeyboardManagement(){window.addEventListener("click",(vt=>this._toggleKeyboardBasedOnFocus(vt))),window.addEventListener("keypress",this._toggleKeyboardBasedOnFocus.bind(this)),this.popup.addEventListener("open",this._disableKeyboard.bind(this)),this.popup.addEventListener("close",this._enableKeyboard.bind(this)),this.psv.addEventListener("click",this._enableKeyboard.bind(this));for(let vt of this.grid.childNodes)"bg"===vt.getAttribute("slot")||du.includes(vt.tagName.toLowerCase())||(vt.addEventListener("focusin",this._disableKeyboard.bind(this)),vt.addEventListener("focusout",(()=>{null===this.popup.getAttribute("visible")&&this._enableKeyboard()})))}_psvShouldGoFast(){return this.psv._sequencePlaying&&this.psv.getTransitionDuration()<1e3}_moveChildToGrid(){Array.from(this.querySelectorAll("[slot]")).forEach((vt=>{var bt;null!==(bt=vt.tagName)&&void 0!==bt&&bt.toLowerCase().startsWith("pnx-")&&(vt._parent=this,vt._t=this._t),"editors"===vt.getAttribute("slot")?this.onceReady().then((()=>{var bt;return null===(bt=this.legend)||void 0===bt?void 0:bt.appendChild(vt)})):this.grid.appendChild(vt)}))}setPopup(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;vt?this.popup.setAttribute("visible",""):this.popup.removeAttribute("visible"),this.popup.innerHTML="","string"===typeof bt?this.popup.innerHTML=bt:Array.isArray(bt)&&bt.forEach((vt=>this.popup.appendChild(vt)))}_onPopupClose(){this.dispatchEvent(new CustomEvent("focus-changed",{detail:{focus:this.map&&this.isMapWide()?"map":"pic"}}))}_showQualityScoreDoc(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-quality-score-doc",{_t:this._t})])}_showReportForm(){if(!this.psv.getPictureMetadata())throw new Error("No picture currently selected");this.setPopup(!0,[(0,uc.createWebComp)("pnx-report-form",{_parent:this})])}_showShareOptions(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-share-menu",{_parent:this,"base-url":this["share-base-url"]})])}_showSemanticsDoc(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-semantics-doc",{_t:this._t})])}_showSemanticsDownload(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-semantics-download",{_t:this._t})])}moveCenter(){this.psv.getPictureMetadata()&&this._psvAnimate({speed:sc.LM,yaw:0,pitch:0,zoom:sc.cS})}moveLeft(){this._moveToDirection("left")}moveRight(){this._moveToDirection("right")}moveUp(){this._moveToDirection("up")}moveDown(){this._moveToDirection("down")}_moveToDirection(vt){let bt=this.psv.getPosition();switch(vt){case"up":bt.pitch+=kc;break;case"left":bt.yaw-=kc;break;case"down":bt.pitch-=kc;break;case"right":bt.yaw+=kc}this._psvAnimate((0,ls.A)({speed:sc.LM},bt))}_psvAnimate(vt){this._lastPsvAnim&&this._lastPsvAnim.cancel(),this._lastPsvAnim=this.psv.animate(vt)}addEventListener(vt,bt,le){super.addEventListener(vt,bt,le)}}PhotoViewer.properties=(0,ls.A)({"psv-options":{converter:Fl.A.GetJSONConverter()},widgets:{type:String},"url-parameters":{type:String},"keyboard-shortcuts":{type:String},tabindex:{type:Number},"skip-tags-menu-opening":{type:String},"share-base-url":{type:String}},Fl.A.properties),customElements.define("pnx-photo-viewer",PhotoViewer)},8743:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Viewer});var ls=le(9379),ho=(le(9616),le(8340)),Dl=le(3407),Fl=le(2771),sc=le(7343),uc=le(5995),mc=le(7208),gc=le(9683),Ac=le(2e3),Ec=le(2118),kc=le(4997),du=le(5254);const _u=100;class Viewer extends Dl.Ay{constructor(){super(),this["map-options"]=!0,this["map-style"]=this.getAttribute("map-style")||(0,mc.MapTiles)(),this.geocoder=this.getAttribute("geocoder")||"nominatim";try{this["map-style"]=JSON.parse(this["map-style"])}catch(vt){}this.mini=(0,uc.createWebComp)("pnx-mini",{slot:"bottom-left",_parent:this,onexpand:this._onMiniExpand.bind(this),collapsed:!!(0,sc.isNullId)(this.picture)||void 0}),this.mini.addEventListener("expand",this._toggleFocus.bind(this)),this.grid.appendChild(this.mini),this.mapContainer=document.createElement("div"),this.tabindex=0}connectedCallback(){super.connectedCallback(),this.metacatalog=this.getAttribute("metacatalog"),[null,void 0,""].includes(this.metacatalog)&&(this.metacatalog=(0,mc.PanoramaxMetaCatalogURL)()),this["endpoint-to-use"]=this.getAttribute("endpoint-to-use"),this.mapStyleComposer=new kc.A(this),this.mapStyleComposer.addBasemap("streets",this["map-style"],!0)}_createInitParamsHandler(){var vt,bt;this._initParams=new Ec.Ay(Ec.Ay.GetComponentProperties(Viewer,this),Object.assign({},null===(vt=this.urlHandler)||void 0===vt?void 0:vt.currentURLParams(),null===(bt=this.urlHandler)||void 0===bt?void 0:bt.currentURLParams(!0)),{map:(0,ho.getMapParamsFromLocalStorage)(),disableAnnotations:localStorage.getItem(sc.DISABLE_ANNOTATIONS_PARAM)})}_initWidgets(){var vt,bt;"false"!==this._initParams.getParentPostInit().widgets&&(this.grid.appendChild((0,uc.createWebComp)("pnx-widget-zoom",{slot:this.isWidthSmall()?"top-left":"bottom-right",class:this.isWidthSmall()?"pnx-only-map pnx-print-hidden":"pnx-print-hidden",_parent:this})),(0,sc.isInIframe)()?(this.legend=(0,uc.createWebComp)("pnx-widget-legend",{slot:"bottom-right",light:!0,_parent:this,focus:this._initParams.getParentPostInit().focus,picture:this._initParams.getParentPostInit().picture}),this.grid.appendChild(this.legend)):this.isWidthSmall()?(this.legend=(0,uc.createWebComp)("pnx-picture-legend",{_parent:this}),this.bottomDrawer=(0,uc.createWebComp)("pnx-bottom-drawer",{slot:"bottom",_parent:this,class:this._initParams.getParentPostInit().willLoadPicture?void 0:"pnx-hidden"}),this.bottomDrawer.appendChild(this.legend),this.grid.appendChild(this.bottomDrawer),this.addEventListener("select",(vt=>{(0,sc.isNullId)(vt.detail.picId)?this.bottomDrawer.classList.add("pnx-hidden"):this.bottomDrawer.classList.remove("pnx-hidden")}))):(this.legend=(0,uc.createWebComp)("pnx-widget-legend",{slot:this.isWidthSmall()?"top":"top-left",_parent:this,focus:this._initParams.getParentPostInit().focus,picture:this._initParams.getParentPostInit().picture}),this._miniPicLegend=(0,uc.createWebComp)("pnx-mini-picture-legend",{_parent:this}),this.grid.appendChild(this.legend)),(0,sc.isInIframe)()||(this.grid.appendChild((0,uc.createWebComp)("pnx-widget-player",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:this.isHeightSmall()?"md":"xl"})),this.grid.appendChild((0,uc.createWebComp)("pnx-annotations-switch",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:this.isHeightSmall()?"md":"xl"})),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-geosearch",{slot:this.isWidthSmall()?"top-right":"top-left",_parent:this,class:"pnx-only-map pnx-print-hidden",geocoder:this._initParams.getParentPostInit().geocoder})),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-mapfilters",{slot:this.isWidthSmall()?"top-right":"top-left",_parent:this,"user-search":null!==this.api._endpoints.user_search&&null!==this.api._endpoints.user_tiles,"quality-score":(null===(vt=this.map)||void 0===vt||null===(bt=vt._hasQualityScore)||void 0===bt?void 0:bt.call(vt))||!1,"no-source":!this.hasTwoAPIs(),class:"pnx-only-map pnx-print-hidden"})),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-semantics-filters",{slot:this.isWidthSmall()?"top-right":"top-left",_parent:this,class:"pnx-only-map pnx-print-hidden"})),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-maplayers",{slot:"top-right",_parent:this,class:"pnx-only-map pnx-print-hidden"}))))}disconnectedCallback(){var vt;super.disconnectedCallback(),null===(vt=this.map)||void 0===vt||vt.destroy()}getClassName(){return"Viewer"}getSubComponentsNames(){return super.getSubComponentsNames().concat(["mini","map","mapStyleComposer"])}onceReady(){return Promise.all([this.oncePSVReady(),this.onceMapReady()]).then((()=>this._initParams.getParentPostInit().willLoadPicture&&!this.psv.getPictureMetadata()?this.onceFirstPicLoaded():Promise.resolve()))}onceAPIReady(){return this.api?this.api.onceReady():new Promise((vt=>setTimeout(vt,250))).then(this.onceAPIReady.bind(this))}onceAllAPIsReady(){return this.getAPI()?this.getAPI().onceReady():new Promise((vt=>setTimeout(vt,250))).then(this.onceAllAPIsReady.bind(this))}attributeChangedCallback(vt,bt,le){var ls,ho;if(super.attributeChangedCallback(vt,bt,le),"picture"===vt)if(null===(ls=this.legend)||void 0===ls||null===(ho=ls.setAttribute)||void 0===ho||ho.call(ls,"picture",le),(0,sc.isNullId)(bt)&&!(0,sc.isNullId)(le)&&this.mini.removeAttribute("collapsed"),(0,sc.isNullId)(le))this.map&&this.isMapWide()?this.mini.classList.add("pnx-hidden"):this.map&&!this.isMapWide()&&this._setFocus("map");else if((0,sc.isNullId)(bt)&&this.sequence==this._initParams.getParentPostInit().sequence&&!this._initParams.getParentPostInit().picture){var Dl,Fl;this.mini.classList.remove("pnx-hidden"),this.mini.removeAttribute("collapsed"),"closed"===(null===(Dl=this.bottomDrawer)||void 0===Dl||null===(Fl=Dl.getAttribute)||void 0===Fl?void 0:Fl.call(Dl,"openness"))&&this.bottomDrawer.setAttribute("openness","half-opened")}else{var uc,mc;if(this.mini.classList.remove("pnx-hidden"),(0,sc.isNullId)(bt))this._setFocus("pic"),"closed"===(null===(uc=this.bottomDrawer)||void 0===uc||null===(mc=uc.getAttribute)||void 0===mc?void 0:mc.call(uc,"openness"))&&this.bottomDrawer.setAttribute("openness","half-opened")}"focus"===vt&&this._setFocus(le)}onceMapReady(){if(!this["map-options"])return Promise.resolve();let vt;return new Promise((bt=>{vt=setInterval((()=>{var le,ls,ho;"object"===typeof this.map&&(null!==(le=this.map)&&void 0!==le&&null!==(ls=le.loaded)&&void 0!==ls&&ls.call(le)?(clearInterval(vt),bt()):null!==(ho=this.map)&&void 0!==ho&&ho.once&&this.map.once("render",(()=>{clearInterval(vt),bt()})))}),250)}))}async _initMap(){await new Promise((vt=>{const bt=this._initParams.getMapInit();bt.raster&&this.mapStyleComposer._createRasterBasemap(bt.raster),this.map=new Fl.A(this,this.mapContainer,bt),(0,ho.saveMapParamsToLocalStorage)(this.map),this.map.waitForEnoughMapLoaded().then((()=>{this.loader.setAttribute("value",Math.max(75,parseInt(this.loader.getAttribute("value"))))})),vt()})),await(0,Ec.mK)(this.map,this._initParams.getMapPostInit()),(0,ho.initMapKeyboardHandler)(this),(0,ho.linkMapAndPhoto)(this)}hasTwoAPIs(){return this.apiMC&&this.api||"false"!==this.metacatalog}getAPI(){var vt;let bt=this.mapStyleComposer.panoramax||this["endpoint-to-use"]||(this.hasTwoAPIs()?"metacatalog":"default");return"metacatalog"===bt&&"false"===this.metacatalog&&(bt="default"),null!==(vt=bt)&&void 0!==vt&&vt.startsWith("metacatalog")?this.apiMC:this.api}async _postAPIInit(){this.loader.setAttribute("value",30),this._createInitParamsHandler();const vt=this._initParams.getParentPostInit(),bt=[null,void 0,"","default"].includes(vt.users);await this._lookForMetacatalog(!bt),this.mapStyleComposer._createPanoramaxEndpointFromAPI("default",this.api,bt),this._initPSV(),await this._initMap(),this._initWidgets(),this._moveChildToGrid(),(0,Ec.iz)(this,vt),vt.keyboardShortcuts&&this._handleKeyboardManagement(),vt.willLoadPicture?this.psv.addEventListener("picture-loaded",(()=>{(0,Ec.iz)(this,vt),this.loader.dismiss()}),{once:!0}):this.map.waitForEnoughMapLoaded().then((()=>{this.loader.dismiss()}))}async _lookForMetacatalog(vt){this.hasTwoAPIs()&&(this.apiMC=new du.A(this.metacatalog+"/api"),await this.apiMC.onceReady(),this.mapStyleComposer._createPanoramaxEndpointFromAPI("metacatalog",this.apiMC,vt))}_enableKeyboard(){this.map&&this.isMapWide()?this._enableKeyboardMap():this._enableKeyboardPSV()}_enableKeyboardMap(){this.psv.stopKeyboardControl(),this.map.keyboard.enable()}_enableKeyboardPSV(){this.psv.startKeyboardControl(),this.map.keyboard.disable()}_disableKeyboard(){this.psv.stopKeyboardControl(),this.map.keyboard.disable()}_handleKeyboardManagement(){window.addEventListener("click",(vt=>this._toggleKeyboardBasedOnFocus(vt))),window.addEventListener("keypress",this._toggleKeyboardBasedOnFocus.bind(this)),this.addEventListener("focus-changed",(vt=>{this.popup.getAttribute("visible")?this._disableKeyboard():"map"===vt.detail.focus?this._enableKeyboardMap():this._enableKeyboardPSV()})),this.popup.addEventListener("open",this._disableKeyboard.bind(this)),this.popup.addEventListener("close",this._enableKeyboard.bind(this)),this.psv.addEventListener("click",this._enableKeyboardPSV.bind(this));for(let vt of this.grid.childNodes)"bg"===vt.getAttribute("slot")||Dl.RD.includes(vt.tagName.toLowerCase())||(vt.addEventListener("focusin",this._disableKeyboard.bind(this)),vt.addEventListener("focusout",(()=>{null===this.popup.getAttribute("visible")&&this._enableKeyboard()})))}moveCenter(){const vt=this.psv.getPictureMetadata();vt&&(this.map&&this.isMapWide()?this.map.flyTo({center:vt.gps,zoom:20}):super.moveCenter())}_moveToDirection(vt){if(this.map&&this.isMapWide()){let bt;switch(vt){case"up":bt=[0,-100];break;case"left":bt=[-100,0];break;case"down":bt=[0,_u];break;case"right":bt=[_u,0]}this.map.panBy(bt)}else super._moveToDirection(vt)}isMapWide(){return this.mapContainer.parentNode==this.grid}_setFocus(vt){var bt,le,ls,ho;let Dl=arguments.length>1&&void 0!==arguments[1]&&arguments[1],Fl=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("map"===vt&&!this.map)throw new Error("Map is not enabled");if(!["map","pic"].includes(vt))throw new Error("Invalid focus value (should be pic or map)");if(this.focus=vt,(Fl||("map"!==vt||!this.map||!this.isMapWide())&&("pic"!==vt||this.map&&this.isMapWide()))&&("map"===vt?(this.psvContainer.parentNode==this.grid&&(this.grid.removeChild(this.psvContainer),this.psvContainer.removeAttribute("slot")),this.mapContainer.parentNode==this.mini&&this.mini.removeChild(this.mapContainer),this.mapContainer.setAttribute("slot","bg"),this.grid.appendChild(this.mapContainer),this.mini.appendChild(this.psvContainer),this.mini.icon=(0,uc.fa)(gc.pt),this._miniPicLegend&&this.mini.appendChild(this._miniPicLegend),(0,sc.isNullId)(this.picture)?this.mini.classList.add("pnx-hidden"):this.mini.classList.remove("pnx-hidden"),this.map.getCanvas().focus()):(this.mapContainer.parentNode==this.grid&&(this.grid.removeChild(this.mapContainer),this.mapContainer.removeAttribute("slot")),this.psvContainer.parentNode==this.mini&&(this.mini.removeChild(this.psvContainer),this._miniPicLegend&&this.mini.removeChild(this._miniPicLegend)),this.psvContainer.setAttribute("slot","bg"),this.grid.appendChild(this.psvContainer),this.mini.classList.remove("pnx-hidden"),this.mini.appendChild(this.mapContainer),this.mini.icon=(0,uc.fa)(Ac.e5),this.psvContainer.focus()),null===this||void 0===this||null===(bt=this.map)||void 0===bt||null===(le=bt.resize)||void 0===le||le.call(bt),this.psv.autoSize(),this.psv.forceRefresh(),null===(ls=this.legend)||void 0===ls||null===(ho=ls.setAttribute)||void 0===ho||ho.call(ls,"focus",this.focus),!Dl)){const bt=new CustomEvent("focus-changed",{detail:{focus:vt}});this.dispatchEvent(bt)}}_toggleFocus(){this._setFocus(this.isMapWide()?"pic":"map")}_onMiniExpand(){this.map.resize(),this.psv.autoSize()}_showLocationPrecisionDoc(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-location-precision-doc",{_t:this._t})])}}Viewer.properties=(0,ls.A)({"map-options":{converter:Dl.Ay.GetJSONConverter()},"map-style":{type:String},focus:{type:String,reflect:!0},geocoder:{type:String},tabindex:{type:Number},metacatalog:{type:String},"endpoint-to-use":{type:String}},Dl.Ay.properties),customElements.define("pnx-viewer",Viewer)},3921:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{Basic:()=>ls.A,CoverageMap:()=>ho.A,Editor:()=>Dl.A,PhotoViewer:()=>sc.Ay,Viewer:()=>Fl.A});var ls=le(9039),ho=le(153),Dl=le(1752),Fl=le(8743),sc=le(3407)},9341:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{core:()=>ls,layout:()=>ho,menus:()=>Dl,ui:()=>Fl});var ls=le(3921),ho=le(456),Dl=le(8794),Fl=le(7091)},6784:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>BottomDrawer});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(1198),uc=le(5995);const mc={opened:0,"half-opened":.7,closed:1};class BottomDrawer extends Fl.WF{constructor(){super(),this._isDragging=!1,this.openness="half-opened"}firstUpdated(){super.firstUpdated(),this._boundTouchMove=this._onTouchMove.bind(this),this._boundTouchEnd=this._onTouchEnd.bind(this),this._drawerHeight=window.innerHeight-30;const vt=this._getDrawer();vt&&(vt.style.height="".concat(this._drawerHeight,"px"),vt.style.maxHeight="".concat(this._drawerHeight,"px"),(0,uc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{var vt,bt;null===(vt=this._parent.map)||void 0===vt||vt.addEventListener("click",(()=>this.openness="closed")),null===(bt=this._parent.psv)||void 0===bt||bt.addEventListener("click",(()=>this.openness="closed"))})))}attributeChangedCallback(vt,bt,le){if(super.attributeChangedCallback(vt,bt,le),"openness"===vt){if("opened"!==le){const vt=this.shadowRoot.querySelector(".content");vt&&(vt.scrollTop=0)}const vt=this._getDrawer();vt&&(vt.style.transform=null)}}disconnectedCallback(){super.disconnectedCallback(),this._cleanupTouchListeners()}_getDrawer(){var vt;return null===(vt=this.shadowRoot)||void 0===vt?void 0:vt.querySelector(".drawer")}_onHandleClick(){"opened"===this.openness?this.openness="closed":"half-opened"===this.openness?this.openness="opened":"closed"===this.openness&&(this.openness="half-opened")}_onTouchStart(vt){this._isDragging=!0,this._startFingerY=vt.touches[0].clientY,this._deltaFingerY=0,this._drawerY=this._drawerHeight*mc[this.openness],window.addEventListener("touchmove",this._boundTouchMove,{passive:!0}),window.addEventListener("touchend",this._boundTouchEnd),window.addEventListener("touchcancel",this._boundTouchEnd)}_onTouchMove(vt){if(!this._isDragging)return;const bt=this.shadowRoot.querySelector(".content");bt.scrollHeight>bt.offsetHeight&&bt.scrollTop>0?this._updateDrawerTransform(0):(this._deltaFingerY=vt.touches[0].clientY-this._startFingerY,this._updateDrawerTransform(this._drawerY+this._deltaFingerY))}_onTouchEnd(vt){(this._isDragging&&!(Math.abs(this._deltaFingerY)<30)||vt.target.closest(".handle"))&&(vt.preventDefault(),this._isDragging=!1,0===this._deltaFingerY&&"closed"===this.openness?this.openness="half-opened":this._updateDrawerTransform(this._drawerY+this._deltaFingerY,!0),this._cleanupTouchListeners(),this._startFingerY=null,this._deltaFingerY=null)}_cleanupTouchListeners(){window.removeEventListener("touchmove",this._boundTouchMove),window.removeEventListener("touchend",this._boundTouchEnd),window.removeEventListener("touchcancel",this._boundTouchCancel)}_updateDrawerTransform(vt){let bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const le=this._getDrawer();le&&(vt=Math.max(0,Math.min(vt,this._drawerHeight-30)),bt&&(this._deltaFingerY<0?"closed"===this.openness?Math.abs(this._deltaFingerY)>this._drawerHeight*(1-mc["half-opened"])?this.openness="opened":this.openness="half-opened":this.openness="opened":this.openness="closed",this._drawerY=null,vt=Math.max(0,Math.min(mc[this.openness]*this._drawerHeight,this._drawerHeight-30))),le.style.transform="translateY(".concat(vt,"px)"))}render(){const vt={drawer:!0,[this.openness]:!0,dragging:this._isDragging};return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["\n\t\t\t<div\n\t\t\t\tclass=",'\n\t\t\t\t@touchstart="','"\n\t\t\t\t@touchmove="','"\n\t\t\t\t@touchend="','"\n\t\t\t>\n\t\t\t\t<div class="handle" @click=','>\n\t\t\t\t\t<div class="handle-bar"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="content">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t'])),(0,sc.H)(vt),this._onTouchStart,this._onTouchMove,this._onTouchEnd,this._onHandleClick)}}BottomDrawer.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host {\n\t\t\tposition: fixed;\n\t\t\tbottom: 0;\n\t\t\tleft: 0;\n\t\t\twidth: 100%;\n\t\t\tz-index: 130;\n\t\t\tpointer-events: none;\n\t\t\ttouch-action: none;\n\t\t}\n\n\t\t.drawer {\n\t\t\tbackground: var(--widget-bg);\n\t\t\tborder-top-left-radius: 16px;\n\t\t\tborder-top-right-radius: 16px;\n\t\t\tbox-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\ttransition: transform 0.3s ease;\n\t\t\twill-change: transform;\n\t\t\ttouch-action: auto;\n\t\t\tpointer-events: auto;\n\t\t}\n\n\t\t.drawer.dragging { transition: none; }\n\t\t.drawer.closed { transform: translateY(calc(100% - 30px)); }\n\t\t.drawer.half-opened { transform: translateY(70%); }\n\t\t.drawer.half-opened .content { overflow-y: hidden; }\n\t\t.drawer.opened { transform: translateY(0%); }\n\n\t\t.handle {\n\t\t\theight: 30px;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tcursor: pointer;\n\t\t}\n\n\t\t.handle-bar {\n\t\t\twidth: 40px;\n\t\t\theight: 5px;\n\t\t\tbackground: var(--grey-pale);\n\t\t\tborder-radius: 3px;\n\t\t}\n\n\t\t.content {\n\t\t\toverflow: auto;\n\t\t\tflex: 1;\n\t\t}\n\t"]))),BottomDrawer.properties={_fingerY:{state:!0},_deltaFingerY:{state:!0},_drawerY:{state:!0},_isDragging:{state:!0},_drawerHeight:{state:!0},openness:{type:String,reflect:!0}},customElements.define("pnx-bottom-drawer",BottomDrawer)},7422:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>CorneredGrid});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(1198);class CorneredGrid extends Fl.WF{constructor(){super(),this._hidden=!1}toggleAway(vt){return this._hidden=null===vt||void 0===vt?!this._hidden:!vt,this._hidden}render(){return this.renderRoot.host.className=this._hidden?"toggled":"",(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<div class="bg">\n\t\t\t\t<slot name="bg"></slot>\n\t\t\t</div>\n\t\t\t<div class=','>\n\t\t\t\t<div class="corner left" part="corner-top-left">\n\t\t\t\t\t<slot name="top-left"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="corner middle" part="corner-top">\n\t\t\t\t\t<slot name="top"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="corner right" part="corner-top-right">\n\t\t\t\t\t<slot name="top-right"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class=','>\n\t\t\t\t<div class="corner left" part="corner-bottom-left">\n\t\t\t\t\t<slot name="bottom-left"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="corner middle" part="corner-bottom">\n\t\t\t\t\t<slot name="bottom"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="corner right" part="corner-bottom-right">\n\t\t\t\t\t<slot name="bottom-right"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t'])),(0,sc.H)({row:!0,top:!0,toggled:this._hidden}),(0,sc.H)({row:!0,bottom:!0,toggled:this._hidden}))}}CorneredGrid.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host {\n\t\t\tposition: relative;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tgap: 5px;\n\t\t\tflex-wrap: no-wrap;\n\t\t}\n\n\t\t.bg {\n\t\t\tposition: absolute;\n\t\t\tinset: 0;\n\t\t\tz-index: 0;\n\t\t}\n\n\t\t.row {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\tflex: 1 1 50%;\n\t\t\tpointer-events: none;\n\t\t\ttransition: margin 0.5s ease-in-out;\n\t\t}\n\n\t\t.row.bottom { align-items: flex-end; }\n\n\t\t.row.top.toggled { margin: -100% 0 200% 0; }\n\t\t.row.bottom.toggled { margin: 200% 0 -100% 0; }\n\t\t@media screen and (min-width: 576px) {\n\t\t\t.row.top.toggled { margin: -50% 0 100% 0; }\n\t\t\t.row.bottom.toggled { margin: 100% 0 -50% 0; }\n\t\t}\n\n\t\t.corner {\n\t\t\tposition: relative;\n\t\t\tflex: 1 1 33%;\n\t\t\tdisplay: flex;\n\t\t\tgap: 10px;\n\t\t\theight: min-content;\n\t\t}\n\n\t\t.corner slot {\n\t\t\tpointer-events: auto;\n\t\t\tposition: relative;\n\t\t\tz-index: 120;\n\t\t}\n\n\t\t.row.bottom .corner:not(.middle) { flex-direction: column; }\n\t\t.row.bottom .corner.left { flex-direction: column-reverse; justify-content: flex-start; align-items: flex-start; }\n\t\t.row.bottom .corner.middle { justify-content: center; align-items: flex-end; }\n\t\t.row.bottom .corner.right { justify-content: flex-end; align-items: flex-end; }\n\n\t\t.row.top .corner { flex-direction: row; }\n\t\t.row.top .corner.left { justify-content: flex-start; align-items: flex-start; }\n\t\t.row.top .corner.middle { justify-content: center; }\n\t\t.row.top .corner.right { justify-content: flex-end; align-items: flex-start; }\n\t"]))),CorneredGrid.properties={_hidden:{state:!0}},customElements.define("pnx-cornered-grid",CorneredGrid)},1445:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Mini});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(1462),mc=le(5721);class Mini extends sc.WF{constructor(){super(),this.collapsed=!1,this.icon=null}render(){var vt,bt;const le=(null===(vt=this._parent)||void 0===vt?void 0:vt.isWidthSmall())||(null===(bt=this._parent)||void 0===bt?void 0:bt.isHeightSmall()),onExpand=()=>this.dispatchEvent(new Event("expand",{bubbles:!0,composed:!0}));if(this.collapsed||le){const vt=le?onExpand:()=>this.collapsed=!1;return(0,sc.qy)(ls||(ls=(0,Fl.A)(['<pnx-button\n\t\t\t\tkind="flat"\n\t\t\t\tsize="xxl"\n\t\t\t\tstyle="bottom: 0"\n\t\t\t\t@click=',"\n\t\t\t>","</pnx-button>"])),vt,this.icon)}var Dl,gc,Ac;return(0,sc.qy)(ho||(ho=(0,Fl.A)(['\n\t\t\t\t<slot></slot>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\ttitle=','\n\t\t\t\t\tstyle="top: 0; right: 0"\n\t\t\t\t\t@click=',"\n\t\t\t\t>\n\t\t\t\t\t<img src=",' alt="" />\n\t\t\t\t\t','\n\t\t\t\t</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="flat"\n\t\t\t\t\ttitle=','\n\t\t\t\t\tstyle="bottom: 0; left: 0"\n\t\t\t\t\t@click=',"\n\t\t\t\t>\n\t\t\t\t\t<img src=",' alt="" />\n\t\t\t\t</pnx-button>\n\t\t\t'])),null===(Dl=this._parent)||void 0===Dl?void 0:Dl._t.pnx.expand_info,onExpand,uc,null===(gc=this._parent)||void 0===gc?void 0:gc._t.pnx.expand,null===(Ac=this._parent)||void 0===Ac?void 0:Ac._t.pnx.minimize,(()=>this.collapsed=!0),mc)}}Mini.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(['\n\t\t:host {\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\tinset: 0;\n\t\t\tpointer-events: none;\n\t\t}\n\n\t\tslot {\n\t\t\tz-index: 120;\n\t\t\tpointer-events: auto;\n\t\t}\n\n\t\tpnx-button {\n\t\t\tz-index: 121;\n\t\t\tposition: absolute;\n\t\t\tpointer-events: auto;\n\t\t}\n\n\t\tpnx-button img {\n\t\t\theight: 20px;\n\t\t}\n\n\t\tpnx-button:not([size="xxl"])::part(btn) {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\t']))),Mini.properties={icon:{type:String},collapsed:{type:Boolean,reflect:!0}},customElements.define("pnx-mini",Mini)},5534:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Tabs});var ls,ho,Dl,Fl=le(7528),sc=le(4542);class Tabs extends sc.WF{constructor(){super(),this.activeTabIndex=0,this.hideNav=!1}_getTabs(){var vt;return(null===(vt=this.shadowRoot.querySelector("slot[name='title']"))||void 0===vt?void 0:vt.assignedNodes())||[]}_getContents(){var vt;return(null===(vt=this.shadowRoot.querySelector("slot[name='content']"))||void 0===vt?void 0:vt.assignedNodes())||[]}_changeTab(vt,bt){const le=this._getTabs(),ls=this._getContents();void 0===vt&&void 0===bt||(vt&&(bt=le.findIndex((bt=>bt===vt||bt===vt.parentNode))),!isNaN(bt)&&bt>=0&&bt<le.length&&le.forEach(((vt,le)=>{le==bt?(this.activeTabIndex=le,ls[le].classList.add("active"),vt.classList.add("active")):(ls[le].classList.remove("active"),vt.classList.remove("active"))})))}_handleTabClick(vt){this._changeTab(vt.target)}updated(vt){vt.has("activeTabIndex")&&this._changeTab(void 0,this.activeTabIndex)}render(){return(0,sc.qy)(ls||(ls=(0,Fl.A)(["\n\t\t\t",'\n\t\t\t<div class="contents">\n\t\t\t\t<slot name="content"></slot>\n\t\t\t</div>\n\t\t'])),this.hideNav?sc.s6:(0,sc.qy)(ho||(ho=(0,Fl.A)(['<nav @click="','">\n\t\t\t\t<slot name="title" @slotchange=',"></slot>\n\t\t\t</nav>"])),this._handleTabClick,(()=>this.activeTabIndex=0)))}}Tabs.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\t/* Tabs */\n\t\tnav {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\talign-items: stretch;\n\t\t\toverflow-x: auto;\n\t\t\ttouch-action: pan-x;\n\t\t\tposition: sticky;\n\t\t\ttop: 0;\n\t\t\tbackground: white;\n\t\t\tz-index: 125;\n\t\t}\n\t\tnav ::slotted(*) {\n\t\t\tcolor: var(--grey-dark);\n\t\t\tborder-bottom: 2px solid rgba(0,0,0,0);\n\t\t\tcursor: pointer;\n\t\t\ttransition: all 0.1s;\n\t\t\tflex: 1;\n\t\t}\n\t\tnav ::slotted(*:hover:not(.active)) { background-color: var(--blue-pale); }\n\t\tnav ::slotted(*.active) {\n\t\t\tcolor: var(--blue-dark);\n\t\t\tborder-bottom: 2px solid var(--blue-dark);\n\t\t}\n\n\t\t/* Content */\n\t\t.contents ::slotted(div) { display: none !important; }\n\t\t.contents ::slotted(.active) { display: block !important; }\n\t"]))),Tabs.properties={activeTabIndex:{type:Number,reflect:!0},hideNav:{type:Boolean}},customElements.define("pnx-tabs",Tabs)},456:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{BottomDrawer:()=>ls.A,CorneredGrid:()=>ho.A,Mini:()=>Dl.A,Tabs:()=>Fl.A});var ls=le(6784),ho=le(7422),Dl=le(1445),Fl=le(5534)},5537:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>LocationPrecisionDoc});var ls,ho=le(7528),Dl=le(4542),Fl=le(8591),sc=le(5995),uc=le(6655),mc=le(7704),gc=le(7343);class LocationPrecisionDoc extends Dl.WF{render(){var vt,bt,le,Fl,Ac,Ec;return(0,Dl.qy)(ls||(ls=(0,ho.A)(["\n\t\t\t<h4>"," ","</h4>\n\t\t\t<p>","</p>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-grade-filter grade=""></pnx-grade-filter>\n\t\t\t<p>',"</p>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-link-button\n\t\t\t\thref="https://docs.panoramax.fr/pictures-metadata/quality_score/#gps-position-accuracy"\n\t\t\t\ttarget="_blank"\n\t\t\t\tkind="outline"\n\t\t\t\tstyle="width: 100%"\n\t\t\t>'," ","</pnx-link-button>\n\t\t"])),(0,sc.fa)(uc.Pc),null===(vt=this._t)||void 0===vt?void 0:vt.pnx.filter_gps_precision,null===(bt=this._t)||void 0===bt?void 0:bt.pnx.filter_gps_precision_help_1,null===(le=this._t)||void 0===le?void 0:le.pnx.filter_gps_precision_help_2,null===(Fl=this._t)||void 0===Fl?void 0:Fl.pnx.filter_gps_precision_help_3.replace("{p5}",gc.QUALITYSCORE_GPS_VALUES[1]).replace("{p1}",gc.QUALITYSCORE_GPS_VALUES[7]).replace(/\.01/g,""),null===(Ac=this._t)||void 0===Ac?void 0:Ac.pnx.filter_gps_precision_help_4,(0,sc.fa)(mc.A),null===(Ec=this._t)||void 0===Ec?void 0:Ec.pnx.popup_details_link)}}LocationPrecisionDoc.styles=[Fl.YC,Fl.Op,Fl.lk],customElements.define("pnx-location-precision-doc",LocationPrecisionDoc)},5036:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapBackground});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(7534),uc=le(6810),mc=le(5995);class MapBackground extends Fl.WF{constructor(){super(),this.size="md"}connectedCallback(){super.connectedCallback(),(0,mc.onceParentAvailable)(this).then((()=>{var vt,bt;null===(vt=this._parent.mapStyleComposer)||void 0===vt||vt.addEventListener("basemap-changed",(vt=>{this.bg=vt.detail.basemap})),this.bg=null===(bt=this._parent.mapStyleComposer)||void 0===bt?void 0:bt.basemap}))}_onBgSelect(vt){var bt,le;this.bg=vt.target.value,null===(bt=this._parent)||void 0===bt||null===(le=bt.mapStyleComposer)||void 0===le||le.switchBasemap(this.bg)}render(){var vt,bt;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<input\n\t\t\t\ttype="radio"\n\t\t\t\tid="bg-streets"\n\t\t\t\tname="bg"\n\t\t\t\tvalue="streets"\n\t\t\t\t@change=',"\n\t\t\t\t.checked=",'\n\t\t\t/>\n\t\t\t<label for="bg-streets">\n\t\t\t\t<img src='," class=",' alt="" />\n\t\t\t\t','\n\t\t\t</label>\n\t\t\t<input\n\t\t\t\ttype="radio"\n\t\t\t\tid="bg-aerial"\n\t\t\t\tname="bg"\n\t\t\t\tvalue="aerial"\n\t\t\t\t@change=',"\n\t\t\t\t.checked=",'\n\t\t\t/>\n\t\t\t<label for="bg-aerial">\n\t\t\t\t<img src='," class=",' alt="" />\n\t\t\t\t',"\n\t\t\t</label>\n\t\t"])),this._onBgSelect,"streets"==this.bg,uc,this.size,null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.map_background_streets,this._onBgSelect,"aerial"==this.bg,sc,this.size,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.map_background_aerial)}}MapBackground.styles=[(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host {\n\t\t\tjustify-content: space-evenly;\n\t\t\tbox-sizing: border-box;\n\t\t\tdisplay: flex;\n\t\t\tgap: 10px;\n\t\t}\n\t\tinput { display: none; }\n\t\tlabel { cursor: pointer; }\n\n\t\timg {\n\t\t\twidth: 40px;\n\t\t\tborder-radius: 5px;\n\t\t\tvertical-align: middle;\n\t\t\tmargin-right: 5px;\n\t\t\tborder: 2px solid var(--widget-bg);\n\t\t}\n\n\t\timg.sm {\n\t\t\twidth: 32px;\n\t\t}\n\n\t\tinput:checked + label img {\n\t\t\toutline: 3px solid var(--widget-border-btn);\n\t\t}\n\t"])))],MapBackground.properties={bg:{state:!0},size:{type:String}},customElements.define("pnx-map-background",MapBackground)},3581:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapFilters});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc=le(7528),du=le(4542),_u=le(5995),Md=le(7343),Ld=le(8591),Nd=le(5279),Rd=le(9186),Od=le(6069),jd=le(3233),Ud=le(6668),Gd=le(7879),qd=le(6655),Hd=le(2045),Wd=le(4780),Zd=le(8340);class MapFilters extends du.WF{constructor(){super(),this._formDelay=null,this.showZoomIn=!0}connectedCallback(){super.connectedCallback();for(let vt of this.shadowRoot.querySelectorAll("input"))vt.addEventListener("change",this._onFormChange.bind(this)),vt.addEventListener("keypress",this._onFormChange.bind(this)),vt.addEventListener("paste",this._onFormChange.bind(this)),vt.addEventListener("input",this._onFormChange.bind(this));(0,_u.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt).then((async()=>{this._parent.map.on("zoomend",this._onMapZoom.bind(this)),this._parent.mapStyleComposer.addEventListener("filters-changed",(vt=>this._onParentFilterChange(vt.detail))),this._parent.mapStyleComposer.addEventListener("panoramax-changed",(()=>this._onParentFilterChange(this._parent.mapStyleComposer.panoramaxFilters))),this._onMapZoom(),this._onParentFilterChange(this._parent.mapStyleComposer.panoramaxFilters)}))}))}_onMapZoom(){this.showZoomIn=this._parent.map.getZoom()<7}_onParentFilterChange(vt){var bt;if(this.minDate=(null===vt||void 0===vt?void 0:vt.minDate)||null,this.maxDate=(null===vt||void 0===vt?void 0:vt.maxDate)||null,this.minDate&&this.maxDate&&this.minDate>this.maxDate){const vt=this.minDate;this.minDate=this.maxDate,this.maxDate=vt,this._onFormChange()}if(this.score=Array.isArray(null===vt||void 0===vt?void 0:vt.qualityscore)?vt.qualityscore.join(","):(null===vt||void 0===vt?void 0:vt.qualityscore)||"",this.gps=null!==vt&&void 0!==vt&&vt.gps&&Array.isArray(vt.gps)?vt.gps.join(","):(null===vt||void 0===vt||null===(bt=vt.gps)||void 0===bt?void 0:bt.length)>0?vt.gps:"",this.type="",null!==vt&&void 0!==vt&&vt.pic_type&&""!=vt.pic_type&&(this.type="flat"==vt.pic_type?"flat":"equirectangular"),(0,Zd.isPanoramaxEndpointSingleUser)(this._parent.mapStyleComposer.panoramax)){if(this.source=this._parent.mapStyleComposer.panoramax.startsWith("metacatalog_")?"metacatalog":"default",null==this.user){let vt=this._parent.mapStyleComposer.panoramax.replace("metacatalog_","");this._parent.getAPI().getUserName(vt).then((vt=>{this.user=vt,this.shadowRoot.querySelector("#pnx-filter-search-user").setAttribute("value",vt)}))}}else this.source=this._parent.mapStyleComposer.panoramax,this.user=null}_onSubmit(vt){return vt.preventDefault(),this._onFormChange(),!1}_onFormChange(){this._formDelay&&clearTimeout(this._formDelay),this._formDelay=setTimeout((()=>{var vt,bt,le,ls;this.minDate=null===(vt=this.shadowRoot.querySelector("#pnx-filter-date-from"))||void 0===vt?void 0:vt.value,this.maxDate=null===(bt=this.shadowRoot.querySelector("#pnx-filter-date-end"))||void 0===bt?void 0:bt.value;const ho=this.shadowRoot.querySelector("#pnx-filter-type-flat"),Dl=this.shadowRoot.querySelector("#pnx-filter-type-360");this.type=Dl.checked?"equirectangular":ho.checked?"flat":"",this.score=null===(le=this.shadowRoot.querySelector("#pnx-filter-qualityscore"))||void 0===le?void 0:le.grade,this.gps=null===(ls=this.shadowRoot.querySelector("#pnx-filter-gps"))||void 0===ls?void 0:ls.grade;const Fl=this._parent.mapStyleComposer,sc={minDate:this.minDate,maxDate:this.maxDate,pic_type:this.type,qualityscore:this.score,gps:this.gps,featuresRestrictions:Fl.panoramaxFilters.featuresRestrictions};Fl.setPanoramaxFilters(sc)}),250)}_onSourceChange(vt){this.source=vt.target.checked?"default":"metacatalog",this.user=null,this._onUserSearchResult()}_userSearch(vt){var bt,le;return null===(bt=(le=this._parent).getAPI)||void 0===bt?void 0:bt.call(le).searchUsers(vt).then((vt=>(vt||[]).map((vt=>({title:vt.label,data:vt})))))}_onUserSearchResult(vt){var bt;if(null!==vt&&void 0!==vt&&null!==(bt=vt.detail)&&void 0!==bt&&bt.data){var le;vt.target.classList.add("pnx-filter-active");const bt="metacatalog"===this.source?"metacatalog_"+vt.detail.data.id:vt.detail.data.id;return null===(le=this._parent)||void 0===le?void 0:le.mapStyleComposer._createPanoramaxEndpointForUser(bt)}{var ls;const bt=(null===vt||void 0===vt?void 0:vt.target)||this.shadowRoot.querySelector("#pnx-filter-search-user");return bt&&(bt.classList.remove("pnx-filter-active"),bt.setAttribute("value","")),null===(ls=this._parent)||void 0===ls?void 0:ls.mapStyleComposer.switchPanoramaxEndpoint(this.source)}}_onReset(){var vt,bt,le;null===(vt=this.shadowRoot.querySelector("#pnx-filter-qualityscore"))||void 0===vt||vt.setAttribute("grade",""),null===(bt=this.shadowRoot.querySelector("#pnx-filter-search-user"))||void 0===bt||bt.reset(),null===(le=this.shadowRoot.querySelector("#pnx-filter-gps"))||void 0===le||le.setAttribute("grade",""),this.minDate=null,this.maxDate=null,this.type="",this.score=null,this.user=null,this._onFormChange()}_onDateShortcut(vt){const bt=this.shadowRoot.getElementById("pnx-filter-date-from"),le=this.shadowRoot.getElementById("pnx-filter-date-end");bt&&(bt.value!==vt?bt.value=vt:bt.value=""),le&&(le.value="")}_onMeUserSearch(){var vt,bt,le;const ls=(0,Md.getUserAccount)();if(!ls)return;const ho=this.shadowRoot.getElementById("pnx-filter-search-user");null!==(vt=this._parent)&&void 0!==vt&&null!==(bt=vt.mapStyleComposer)&&void 0!==bt&&null!==(le=bt.panoramax)&&void 0!==le&&le.endsWith(ls.id)?null===ho||void 0===ho||ho._onResultClick():null===ho||void 0===ho||ho._onResultClick({title:ls.name,data:{id:ls.id}})}render(){var vt,bt,le,Ec,Ld,Zd,Yd,Qd,Xd,Kd,Jd,$d,sp,tm,em,im,nm,rm,am,sm,om,lm,cm,um,hm,dm,pm;const mm=(0,Md.getUserAccount)(),fm={1:null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.filter_gps_precision_morethan.replace("{n}",Md.QUALITYSCORE_GPS_VALUES[7]).replace(/\.01/g,""),2:null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.filter_gps_precision_between.replace("{n1}",Md.QUALITYSCORE_GPS_VALUES[5]).replace("{n2}",Md.QUALITYSCORE_GPS_VALUES[7]).replace(/\.01/g,""),3:null===(le=this._parent)||void 0===le?void 0:le._t.pnx.filter_gps_precision_between.replace("{n1}",Md.QUALITYSCORE_GPS_VALUES[3]).replace("{n2}",Md.QUALITYSCORE_GPS_VALUES[5]).replace(/\.01/g,""),4:null===(Ec=this._parent)||void 0===Ec?void 0:Ec._t.pnx.filter_gps_precision_between.replace("{n1}",Md.QUALITYSCORE_GPS_VALUES[1]).replace("{n2}",Md.QUALITYSCORE_GPS_VALUES[3]).replace(/\.01/g,""),5:null===(Ld=this._parent)||void 0===Ld?void 0:Ld._t.pnx.filter_gps_precision_lessthan.replace("{n}",Md.QUALITYSCORE_GPS_VALUES[1]).replace(/\.01/g,"")};let gm=null===(Zd=this._parent.api._metadata)||void 0===Zd?void 0:Zd.name;var Am;gm&&"Unnamed"!==gm||(gm=null===(Am=this._parent)||void 0===Am?void 0:Am._t.pnx.filter_source_local);return(0,du.qy)(ls||(ls=(0,kc.A)(["<form\n\t\t\t@reset=","\n\t\t\t@change=","\n\t\t\t@submit=","\n\t\t>\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\t\t</form>"])),this._onReset,this._onFormChange,this._onSubmit,this["no-source"]?"":(0,du.qy)(ho||(ho=(0,kc.A)(['<div class="pnx-filter-block">\n\t\t\t\t<pnx-icon-switch\n\t\t\t\t\tid="pnx-pictures-source"\n\t\t\t\t\tname="pnx-pictures-source"\n\t\t\t\t\t@change=',"\n\t\t\t\t\t.checked=","\n\t\t\t\t>\n\t\t\t\t\t",'\n\t\t\t\t\t<span slot="label-left">',"</span>\n\t\t\t\t\t",'\n\t\t\t\t\t<span slot="label-right">',"</span>\n\t\t\t\t</pnx-icon-switch>\n\t\t\t</div>"])),this._onSourceChange,"default"===this.source,(0,_u.fa)(Hd.B$,{attributes:{slot:"icon-left"}}),null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.filter_source_world,(0,_u.fa)(Wd.yy,{attributes:{slot:"icon-right"}}),gm),this["no-date"]?"":(0,du.qy)(Dl||(Dl=(0,kc.A)(['<div class="pnx-filter-block">\n\t\t\t\t<div class="pnx-filter-zoomin ','">',"</div>\n\t\t\t\t<h4>"," ",'</h4>\n\t\t\t\t<div class="pnx-input-shortcuts">\n\t\t\t\t\t<button\n\t\t\t\t\t\t@click=',"\n\t\t\t\t\t>","</button>\n\t\t\t\t\t<button\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>","</button>\n\t\t\t\t\t<button\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>",'</button>\n\t\t\t\t</div>\n\t\t\t\t<div class="pnx-input-group">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="date"\n\t\t\t\t\t\tid="pnx-filter-date-from"\n\t\t\t\t\t\t.value=',"\n\t\t\t\t\t\tclass=","\n\t\t\t\t\t/>\n\t\t\t\t\t",'\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="date"\n\t\t\t\t\t\tid="pnx-filter-date-end"\n\t\t\t\t\t\t.value=',"\n\t\t\t\t\t\tclass=","\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>"])),this.showZoomIn?"":"hidden",null===(Qd=this._parent)||void 0===Qd?void 0:Qd._t.pnx.filter_zoom_in,(0,_u.fa)(Rd.ok),null===(Xd=this._parent)||void 0===Xd?void 0:Xd._t.pnx.filter_date,(()=>this._onDateShortcut(new Date((new Date).setMonth((new Date).getMonth()-1)).toISOString().split("T")[0])),null===(Kd=this._parent)||void 0===Kd?void 0:Kd._t.pnx.filter_date_1month,(()=>this._onDateShortcut(new Date((new Date).setMonth((new Date).getMonth()-6)).toISOString().split("T")[0])),null===(Jd=this._parent)||void 0===Jd?void 0:Jd._t.pnx.filter_date_6months,(()=>this._onDateShortcut(new Date((new Date).setFullYear((new Date).getFullYear()-1)).toISOString().split("T")[0])),null===($d=this._parent)||void 0===$d?void 0:$d._t.pnx.filter_date_1year,this.minDate,this.minDate&&""!=this.minDate?"pnx-filter-active":"",(0,_u.fa)(Od.dm),this.maxDate,this.maxDate&&""!=this.maxDate?"pnx-filter-active":""),this["no-picture-type"]?"":(0,du.qy)(Fl||(Fl=(0,kc.A)(['<div class="pnx-filter-block">\n\t\t\t\t<h4>'," ",'</h4>\n\t\t\t\t<div class="pnx-input-group pnx-checkbox-btns" style="justify-content: center;">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="radio"\n\t\t\t\t\t\tid="pnx-filter-type-all"\n\t\t\t\t\t\tname="pnx-filter-type"\n\t\t\t\t\t\tvalue=""\n\t\t\t\t\t\t.checked=','\n\t\t\t\t\t/>\n\t\t\t\t\t<label for="pnx-filter-type-all">','</label>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="radio"\n\t\t\t\t\t\tid="pnx-filter-type-flat"\n\t\t\t\t\t\tname="pnx-filter-type"\n\t\t\t\t\t\tvalue="flat"\n\t\t\t\t\t\t.checked=','\n\t\t\t\t\t/>\n\t\t\t\t\t<label for="pnx-filter-type-flat">','</label>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="radio"\n\t\t\t\t\t\tid="pnx-filter-type-360"\n\t\t\t\t\t\tname="pnx-filter-type"\n\t\t\t\t\t\tvalue="equirectangular"\n\t\t\t\t\t\t.checked=','\n\t\t\t\t\t/>\n\t\t\t\t\t<label for="pnx-filter-type-360">',"</label>\n\t\t\t\t</div>\n\t\t\t</div>"])),(0,_u.fa)(Nd.jb),null===(sp=this._parent)||void 0===sp?void 0:sp._t.pnx.filter_picture,!this.type||""===this.type,null===(tm=this._parent)||void 0===tm?void 0:tm._t.pnx.picture_all,"flat"===this.type,null===(em=this._parent)||void 0===em?void 0:em._t.pnx.picture_flat,"equirectangular"===this.type,null===(im=this._parent)||void 0===im?void 0:im._t.pnx.picture_360),this["quality-score"]?(0,du.qy)(sc||(sc=(0,kc.A)(['\n\t\t\t\t<div class="pnx-filter-block">\n\t\t\t\t\t<div class="pnx-filter-zoomin ','">',"</div>\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t"," ",'\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\ttitle="','"\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t",'\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t</h4>\n\t\t\t\t\t<div class="pnx-input-group">\n\t\t\t\t\t\t<pnx-quality-score\n\t\t\t\t\t\t\tid="pnx-filter-qualityscore"\n\t\t\t\t\t\t\t._t=','\n\t\t\t\t\t\t\tinput="pnx-filter-qualityscore"\n\t\t\t\t\t\t\tgrade=',"\n\t\t\t\t\t\t\t@change=","\n\t\t\t\t\t\t>\n\t\t\t\t\t\t</pnx-quality-score>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t"])),this.showZoomIn?"":"hidden",null===(nm=this._parent)||void 0===nm?void 0:nm._t.pnx.filter_zoom_in,(0,_u.fa)(jd.B9),null===(rm=this._parent)||void 0===rm?void 0:rm._t.pnx.filter_qualityscore,null===(am=this._parent)||void 0===am?void 0:am._t.pnx.metadata_quality_help,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showQualityScoreDoc()}),(0,_u.fa)(Ud.iW),null===(sm=this._parent)||void 0===sm?void 0:sm._t,this.score,this._onFormChange):du.s6,this["no-gps"]?"":(0,du.qy)(uc||(uc=(0,kc.A)(['\n\t\t\t\t<div class="pnx-filter-block">\n\t\t\t\t\t<div class="pnx-filter-zoomin ','">',"</div>\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t"," ","\n\t\t\t\t\t\t",'\n\t\t\t\t\t</h4>\n\t\t\t\t\t<div class="pnx-input-group">\n\t\t\t\t\t\t<pnx-grade-filter\n\t\t\t\t\t\t\tid="pnx-filter-gps"\n\t\t\t\t\t\t\t._t=','\n\t\t\t\t\t\t\tinput="pnx-filter-gps"\n\t\t\t\t\t\t\tgrade=',"\n\t\t\t\t\t\t\t@change=","\n\t\t\t\t\t\t\t.labels=","\n\t\t\t\t\t\t>\n\t\t\t\t\t\t</pnx-grade-filter>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t"])),this.showZoomIn?"":"hidden",null===(om=this._parent)||void 0===om?void 0:om._t.pnx.filter_zoom_in,(0,_u.fa)(qd.Pc),null===(lm=this._parent)||void 0===lm?void 0:lm._t.pnx.filter_gps_precision,this._parent._showLocationPrecisionDoc?(0,du.qy)(mc||(mc=(0,kc.A)(['\n\t\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\t\ttitle="','"\n\t\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t"])),null===(cm=this._parent)||void 0===cm?void 0:cm._t.pnx.filter_gps_precision_help,(()=>this._parent._showLocationPrecisionDoc()),(0,_u.fa)(Ud.iW)):du.s6,null===(um=this._parent)||void 0===um?void 0:um._t,this.gps,this._onFormChange,fm),this["user-search"]?(0,du.qy)(gc||(gc=(0,kc.A)(['\n\t\t\t\t<div class="pnx-filter-block">\n\t\t\t\t\t<h4>'," ","</h4>\n\t\t\t\t\t",'\n\t\t\t\t\t<pnx-search-bar\n\t\t\t\t\t\tid="pnx-filter-search-user"\n\t\t\t\t\t\tplaceholder=',"\n\t\t\t\t\t\tclass=","\n\t\t\t\t\t\t.value=","\n\t\t\t\t\t\t@result=","\n\t\t\t\t\t\t.searcher=","\n\t\t\t\t\t\t._parent=","\n\t\t\t\t\t\tno-menu-closure\n\t\t\t\t\t>\n\t\t\t\t\t</pnx-search-bar>\n\t\t\t\t</div>\n\t\t\t"])),(0,_u.fa)(Gd.X4),null===(hm=this._parent)||void 0===hm?void 0:hm._t.pnx.filter_user,"default"===this.source&&mm?(0,du.qy)(Ac||(Ac=(0,kc.A)(['\n\t\t\t\t\t\t<div class="pnx-input-shortcuts">\n\t\t\t\t\t\t\t<button @click=',">\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t"])),this._onMeUserSearch,null===(dm=this._parent)||void 0===dm?void 0:dm._t.pnx.filter_user_mypics):du.s6,null===(pm=this._parent)||void 0===pm?void 0:pm._t.pnx.search_user,this.user?"pnx-filter-active":"",this.user,this._onUserSearchResult,this._userSearch.bind(this),this._parent):du.s6)}}MapFilters.styles=[Ld.Op,Ld.YC,(0,du.AH)(Ec||(Ec=(0,kc.A)(['\n\t\t.pnx-input-group {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tgap: 5px;\n\t\t}\n\n\t\t/* Filter block */\n\t\t.pnx-filter-block {\n\t\t\tposition: relative;\n\t\t\tpadding: 10px 15px;\n\t\t\tborder-bottom: 2px solid var(--widget-border-div);\n\t\t}\n\t\t.pnx-filter-block:first-child {\n\t\t\tpadding-top: 15px;\n\t\t}\n\t\t.pnx-filter-block:last-child {\n\t\t\tborder-bottom: none;\n\t\t\tpadding-bottom: 15px;\n\t\t}\n\t\t.pnx-filter-block h4 {\n\t\t\tmargin-bottom: 5px;\n\t\t}\n\t\t.pnx-filter-zoomin {\n\t\t\tz-index: 131;\n\t\t\tbackground-color: rgba(255,255,255,0.8);\n\t\t\ttext-align: center;\n\t\t\tfont-weight: 800;\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tleft: 0;\n\t\t\tbottom: 0;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-items: center;\n\t\t\tborder-radius: 25px;\n\t\t}\n\t\t.pnx-filter-zoomin.hidden {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t/* Input styles */\n\t\t.pnx-filter-active,\n\t\tpnx-search-bar.pnx-filter-active::part(container),\n\t\tpnx-search-bar.pnx-filter-active::part(input) {\n\t\t\tbackground-color: var(--widget-bg-active) !important;\n\t\t\tborder-color: var(--widget-bg-active) !important;\n\t\t\tcolor: var(--widget-font-active) !important;\n\t\t}\n\t\tinput[type=date] {\n\t\t\tmin-width: 0;\n\t\t\tflex-grow: 2;\n\t\t\tpadding: 2px 0;\n\t\t\ttext-align: center;\n\t\t\tbackground-color: var(--widget-bg);\n\t\t\tcolor: var(--widget-font);\n\t\t\tborder: 1px solid var(--widget-border-div);\n\t\t\tborder-radius: 20px;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\n\t\t/* Input shortcuts */\n\t\t.pnx-input-shortcuts {\n\t\t\tmargin-top: 0px;\n\t\t\tmargin-bottom: 5px;\n\t\t}\n\t\t.pnx-input-shortcuts button {\n\t\t\tborder: none;\n\t\t\tfont-size: 0.75em;\n\t\t\tpadding: 2px 6px;\n\t\t\tvertical-align: middle;\n\t\t\tbackground-color: var(--grey-pale);\n\t\t\tcolor: var(--black);\n\t\t\tborder-radius: 10px;\n\t\t\tcursor: pointer;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\t\t.pnx-input-shortcuts button:hover {\n\t\t\tbackground-color: #d9dcd9;\n\t\t}\n\n\t\t/* Checkbox looking like buttons */\n\t\t.pnx-input-group.pnx-checkbox-btns {\n\t\t\tgap: 0;\n\t\t\talign-items: stretch;\n\t\t}\n\t\t.pnx-checkbox-btns label {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding: 2px 7px;\n\t\t\tbackground: none;\n\t\t\tborder: 1px solid var(--widget-border-btn);\n\t\t\tcolor: var(--widget-font-direct);\n\t\t\tcursor: pointer;\n\t\t\tfont-size: 16px;\n\t\t\ttext-decoration: none;\n\t\t\tborder-left-width: 0px;\n\t\t}\n\t\t.pnx-checkbox-btns label:hover {\n\t\t\tbackground-color: var(--widget-bg-hover);\n\t\t}\n\t\t.pnx-checkbox-btns label:first-of-type {\n\t\t\tborder-top-left-radius: 8px;\n\t\t\tborder-bottom-left-radius: 8px;\n\t\t\tborder-left-width: 1px;\n\t\t}\n\t\t.pnx-checkbox-btns label:last-of-type {\n\t\t\tborder-top-right-radius: 8px;\n\t\t\tborder-bottom-right-radius: 8px;\n\t\t}\n\t\t.pnx-checkbox-btns input[type="radio"] { display: none; }\n\t\t.pnx-checkbox-btns input[type="radio"]:checked + label {\n\t\t\tbackground-color: var(--widget-bg-active);\n\t\t\tcolor: var(--widget-font-active);\n\t\t}\n\t\t.pnx-checkbox-btns input[type="radio"]:checked + label:first-of-type {\n\t\t\tborder-right-color: white;\n\t\t}\n\n\t\t/* Force user search width */\n\t\t#pnx-filter-search-user::part(container) { width: 100%; }\n\t'])))],MapFilters.properties={"quality-score":{type:Boolean},"user-search":{type:Boolean},"no-date":{type:Boolean},"no-picture-type":{type:Boolean},"no-gps":{type:Boolean},"no-source":{type:Boolean},showZoomIn:{state:!0},minDate:{state:!0},maxDate:{state:!0},type:{state:!0},score:{state:!0},user:{state:!0},gps:{state:!0},source:{state:!0}},customElements.define("pnx-map-filters-menu",MapFilters)},5334:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapLayers});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc=le(7528),du=le(4542),_u=le(5995),Md=le(8591),Ld=le(7343),Nd=le(7172),Rd=le(8629),Od=le(6668),jd=le(8340),Ud=le(5195);class MapLayers extends du.WF{connectedCallback(){super.connectedCallback(),(0,_u.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.onceMapReady)||void 0===bt?void 0:bt.call(vt).then((()=>{var vt,bt;this.theme=this._parent.mapStyleComposer.panoramaxTheme,this._parent.mapStyleComposer.addEventListener("theme-changed",(vt=>this.theme=vt.detail.theme)),this._parent.mapStyleComposer.addEventListener("panoramax-changed",this.requestUpdate.bind(this)),null===(vt=this._parent.map.indoorEqual)||void 0===vt||vt.on("levelschange",(()=>this.requestUpdate())),null===(bt=this._parent.map.indoorEqual)||void 0===bt||bt.on("levelchange",(()=>this.requestUpdate()))}))}))}_onIndoorSwitchChange(vt){var bt,le;null!==(bt=this._parent)&&void 0!==bt&&null!==(le=bt.map)&&void 0!==le&&le.indoorEqual?this._parent.map.indoorEqual.setLevel(vt.target.checked?"0":Ud.DISABLED_LEVEL):(0,Ud.initIndoorEqualOnMap)(this._parent.map,!0)}_onThemeSelect(vt){var bt;this.theme=vt.target.value,null===(bt=this._parent)||void 0===bt||bt.mapStyleComposer.setPanoramaxTheme(this.theme)}render(){var vt,bt,le,Ec,Md,Gd,qd,Hd,Wd,Zd,Yd,Qd,Xd,Kd,Jd,$d,sp,tm,em,im,nm,rm,am,sm,om;const lm=[],cm=(null===(vt=this._parent)||void 0===vt||null===(bt=vt.map)||void 0===bt?void 0:bt.indoorEqual)||!1===(null===(le=this._parent)||void 0===le||null===(Ec=le.map)||void 0===Ec||null===(Md=Ec._options)||void 0===Md||null===(Gd=Md.indoor)||void 0===Gd?void 0:Gd.visible);var um;null!==(qd=this._parent)&&void 0!==qd&&null!==(Hd=qd.mapStyleComposer)&&void 0!==Hd&&null!==(Wd=Hd.hasManyBasemaps)&&void 0!==Wd&&Wd.call(Hd)&&lm.push((0,du.qy)(ls||(ls=(0,kc.A)(["\n\t\t\t\t<h4>"," ","</h4>\n\t\t\t\t<pnx-map-background ._parent=","></pnx-map-background>\n\t\t\t"])),(0,_u.fa)(Nd.faEarthEurope),null===(um=this._parent)||void 0===um?void 0:um._t.pnx.map_background,this._parent));if(cm){var hm;const vt=this._parent.map.indoorEqual;lm.push((0,du.qy)(ho||(ho=(0,kc.A)(["\n\t\t\t\t<pnx-switch\n\t\t\t\t\t.checked=","\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@change=",'\n\t\t\t\t\tstyle="display: block; margin: 15px 0;"\n\t\t\t\t\tname="pnx-level-switch"\n\t\t\t\t>\n\t\t\t\t\t',"\n\t\t\t\t</pnx-switch>\n\t\t\t"])),vt&&vt.level!==Ud.DISABLED_LEVEL,vt&&0===vt.levels.length,this._onIndoorSwitchChange.bind(this),null===(hm=this._parent)||void 0===hm?void 0:hm._t.pnx.indoor_switch))}return lm.push((0,du.qy)(Dl||(Dl=(0,kc.A)(["\n\t\t\t<h4>"," ",'</h4>\n\t\t\t<select id="pnx-map-theme" style="width: 100%;" @change=',">\n\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t","\n\t\t\t</select>\n\t\t"])),(0,_u.fa)(Rd.fy),null===(Zd=this._parent)||void 0===Zd?void 0:Zd._t.pnx.map_theme,this._onThemeSelect,jd.MAP_THEMES_STYLES.default.id,this.theme==jd.MAP_THEMES_STYLES.default.id,null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.map_theme_default,jd.MAP_THEMES_STYLES.age.id,this.theme==jd.MAP_THEMES_STYLES.age.id,null===(Qd=this._parent)||void 0===Qd?void 0:Qd._t.pnx.map_theme_age,jd.MAP_THEMES_STYLES.type.id,this.theme==jd.MAP_THEMES_STYLES.type.id,null===(Xd=this._parent)||void 0===Xd?void 0:Xd._t.pnx.map_theme_type,(null===(Kd=this._parent)||void 0===Kd||null===(Jd=Kd.map)||void 0===Jd||null===($d=Jd._hasQualityScore)||void 0===$d?void 0:$d.call(Jd))&&(0,du.qy)(Fl||(Fl=(0,kc.A)(["\n\t\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t"])),jd.MAP_THEMES_STYLES.score.id,this.theme==jd.MAP_THEMES_STYLES.score.id,null===(sp=this._parent)||void 0===sp?void 0:sp._t.pnx.map_theme_score,jd.MAP_THEMES_STYLES.gps.id,this.theme==jd.MAP_THEMES_STYLES.gps.id,null===(tm=this._parent)||void 0===tm?void 0:tm._t.pnx.map_theme_gps))),lm.push((0,du.qy)(sc||(sc=(0,kc.A)(['<div class="legend">\n\t\t\t',"\n\t\t\t\n\t\t\t","\n\t\t\t\n\t\t\t","\n\t\t\t\n\t\t\t","\n\t\t</div>"])),this.theme==jd.MAP_THEMES_STYLES.age.id?(0,du.qy)(uc||(uc=(0,kc.A)(['\n\t\t\t\t<div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t',"\n\t\t\t\t\t</div>\n\t\t\t\t</div>"])),Ld.COLORS.PALETTE_4,null===(em=this._parent)||void 0===em?void 0:em._t.pnx.map_theme_age_4,Ld.COLORS.PALETTE_3,null===(im=this._parent)||void 0===im?void 0:im._t.pnx.map_theme_age_3,Ld.COLORS.PALETTE_2,null===(nm=this._parent)||void 0===nm?void 0:nm._t.pnx.map_theme_age_2,Ld.COLORS.PALETTE_1,null===(rm=this._parent)||void 0===rm?void 0:rm._t.pnx.map_theme_age_1):du.s6,this.theme==jd.MAP_THEMES_STYLES.type.id?(0,du.qy)(mc||(mc=(0,kc.A)(['\n\t\t\t \t<div class="legend-entry">\n\t\t\t \t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t \t\t','\n\t\t\t \t</div>\n\t\t\t \t<div class="legend-entry">\n\t\t\t \t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t \t\t',"\n\t\t\t \t</div>"])),Ld.COLORS.QUALI_1,null===(am=this._parent)||void 0===am?void 0:am._t.pnx.picture_360,Ld.COLORS.QUALI_2,null===(sm=this._parent)||void 0===sm?void 0:sm._t.pnx.picture_flat):du.s6,this.theme==jd.MAP_THEMES_STYLES.score.id?(0,du.qy)(gc||(gc=(0,kc.A)(['<div>\n\t\t\t\t<pnx-quality-score></pnx-quality-score>\n\t\t\t\t<pnx-button\n\t\t\t\t\ttitle="','"\n\t\t\t\t\tkind="superinline"\n\t\t\t\t\t@click=',"\n\t\t\t\t>\n\t\t\t\t\t","\n\t\t\t\t</pnx-button></div>"])),null===(om=this._parent)||void 0===om?void 0:om._t.pnx.metadata_quality_help,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showQualityScoreDoc()}),(0,_u.fa)(Od.iW)):du.s6,this.theme==jd.MAP_THEMES_STYLES.gps.id?(0,du.qy)(Ac||(Ac=(0,kc.A)(['\n\t\t\t\t<div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t',"\n\t\t\t\t\t</div>\n\t\t\t</div>"])),Ld.GPS_VALUES[0].color,Ld.GPS_VALUES[0].label,Ld.GPS_VALUES[2].color,Ld.GPS_VALUES[2].label,Ld.GPS_VALUES[4].color,Ld.GPS_VALUES[4].label,Ld.GPS_VALUES[1].color,Ld.GPS_VALUES[1].label,Ld.GPS_VALUES[3].color,Ld.GPS_VALUES[3].label):du.s6)),lm}}MapLayers.styles=[Md.Op,Md.YC,Md.Lt,(0,du.AH)(Ec||(Ec=(0,kc.A)(["\n\t\t.legend {\n\t\t\tdisplay: flex;\n\t\t\tflex-wrap: wrap;\n\t\t\tmargin-top: 5px;\n\t\t\tjustify-content: space-evenly;\n\t\t}\n\n\t\t.legend-entry {\n\t\t\tmargin: 10px 8px 5px 0px;\n\t\t\tline-height: 12px;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tfont-size: 1.0em;\n\t\t}\n\n\t\t.legend-color {\n\t\t\tdisplay: inline-block;\n\t\t\twidth: 15px;\n\t\t\theight: 15px;\n\t\t\tborder-radius: 3px;\n\t\t\tmargin-right: 5px;\n\t\t}\n\n\t\t.legend-score {\n\t\t\tjustify-content: center;\n\t\t\tgap: 0;\n\t\t}\n\t"])))],MapLayers.properties={theme:{state:!0}},customElements.define("pnx-map-layers-menu",MapLayers)},4749:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapLegend});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(5995);class MapLegend extends sc.WF{constructor(){super(),this.light=!1}connectedCallback(){super.connectedCallback(),(0,uc.onceParentAvailable)(this).then((()=>this.requestUpdate())),(0,uc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt).then((async()=>{this._parent.map.on("styledata",(()=>this.requestUpdate())),this.requestUpdate()}))}))}render(){var vt,bt,le,Dl;const uc=null===(vt=this._parent)||void 0===vt||null===(bt=vt.map)||void 0===bt||null===(le=bt._attribution)||void 0===le?void 0:le._innerContainer,mc=null===(Dl=this._parent)||void 0===Dl?void 0:Dl._t.map.map_data.split("{m}");return this.light?uc&&uc.innerHTML.length>0?uc:sc.s6:(0,sc.qy)(ls||(ls=(0,Fl.A)(["\n\t\t\t\t","\n\t\t\t"])),uc&&uc.innerHTML.length>0?(0,sc.qy)(ho||(ho=(0,Fl.A)(["","","",""])),mc.shift(),uc,mc.shift()):sc.s6)}}MapLegend.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\t:host {\n\t\t\tfont-size: 0.7em;\n\t\t}\n\t\tsmall {\n\t\t\tfont-size: 1em;\n\t\t}\n\t\t.maplibregl-ctrl-attrib-inner {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t"]))),MapLegend.properties={light:{type:Boolean}},customElements.define("pnx-map-legend",MapLegend)},1636:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MiniPictureLegend});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(8591);class MiniPictureLegend extends Fl.WF{connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._onPicChange(this._parent.psv.getPictureMetadata()),this._parent.psv.addEventListener("picture-loaded",(()=>{this._onPicChange(this._parent.psv.getPictureMetadata())})),this._parent.psv.addEventListener("sequence-stopped",(()=>{this._onPicChange(this._parent.psv.getPictureMetadata())}))}))}_onPicChange(vt){this._caption=null===vt||void 0===vt?void 0:vt.caption}render(){var vt,bt;return null!==(vt=this._caption)&&void 0!==vt&&vt.date?(0,Fl.qy)(ls||(ls=(0,Dl.A)(['<div class="pnx-panel">',"</div>"])),this._caption.date.toLocaleDateString((null===(bt=this._parent)||void 0===bt?void 0:bt.lang)||window.navigator.language,{year:"numeric",month:"long",day:"numeric"})):Fl.s6}}MiniPictureLegend.styles=[uc.nd,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t.pnx-panel {\n\t\t\tbottom: 0;\n\t\t\tright: 0;\n\t\t\twidth: unset;\n\t\t\tmin-width: unset;\n\t\t\tborder-radius: 10px;\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-right: none;\n\t\t\tborder-bottom: none;\n\t\t\tpadding: 2px 5px;\n\t\t\tfont-size: 0.7em;\n\t\t}\n\t"])))],MiniPictureLegend.properties={_caption:{state:!0}},customElements.define("pnx-mini-picture-legend",MiniPictureLegend)},3589:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PictureLegend});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc,du,_u=le(7528),Md=le(4542),Ld=le(686),Nd=le(1198),Rd=le(5995),Od=le(8466),jd=le(4336),Ud=le(2593),Gd=le(7879),qd=le(3324),Hd=le(4927),Wd=le(6311),Zd=le(1260),Yd=le(8591),Qd=le(3606),Xd=le(7208);class PictureLegend extends Md.WF{constructor(){super(),this._expanded=!0,this.collapsable=!1,this.light=!1}connectedCallback(){super.connectedCallback(),this._expanded=!this.collapsable,this._prevSearches={},(0,Rd.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._onPicChange(this._parent.psv.getPictureMetadata()),this._parent.psv.addEventListener("picture-loaded",(()=>{this._onPicChange(this._parent.psv.getPictureMetadata())})),this._parent.psv.addEventListener("sequence-stopped",(()=>{this._onPicChange(this._parent.psv.getPictureMetadata())})),this._parent.psv.addEventListener("annotation-focused",(()=>{this._expanded=!0})),this._parent._initParams.getParentPostInit().skipTagsMenuOpening||this._parent.psv.addEventListener("annotations-toggled",(vt=>{vt.detail.visible&&(this._expanded=!0)})),this._parent.psv.getSelectedAnnotations().length>0&&(this._expanded=!0)}))}_onPicChange(vt){if(clearTimeout(this._addrTimer1),this._caption=null===vt||void 0===vt?void 0:vt.caption,vt){var bt;this._visibility=(null===(bt=vt.properties)||void 0===bt?void 0:bt["geovisio:visibility"])||null,"anyone"===this._visibility&&(this._visibility=null);const le="".concat(vt.gps[0].toFixed(4),"/").concat(vt.gps[1].toFixed(4));this._prevSearches[le]?this._addr=this._prevSearches[le]:this._parent.psv._sequencePlaying||(this._addr="",this._addrTimer1=setTimeout((()=>{(0,Qd.reverseGeocodingNominatim)(vt.gps[1],vt.gps[0]).then((vt=>{clearTimeout(this._addrTimer2),this._addr=vt,this._prevSearches[le]=vt}))}),500))}else this._visibility=null,this._addr=""}_onBackClick(){var vt,bt;this._parent.isWidthSmall()&&"map"===this._parent.focus?this._parent.select():null===(vt=(bt=this._parent)._setFocus)||void 0===vt||vt.call(bt,"map")}blockOnEditing(vt){this._blockOnEditor=vt}render(){var vt,bt,le,du,Yd,Qd,Kd,Jd,$d;if(!this._caption)return Md.s6;const sp=(null===(vt=this._parent)||void 0===vt?void 0:vt.lang)||window.navigator.language,tm=(0,Nd.H)({"pnx-hidden":this._expanded}),em=(0,Nd.H)({"pnx-hidden":!this._expanded});var im,nm,rm,am,sm,om;return this.light?(0,Ld.qy)(ls||(ls=(0,_u.A)(['<div class="pnx-picture-legend-light">\n\t\t\t\t',"\n\n\t\t\t\t","\n\n\t\t\t\t","\n\n\t\t\t\t","\n\n\t\t\t\t","\n\t\t\t"])),(null===(im=this._caption.producer)||void 0===im?void 0:im.length)>0?(0,Ld.qy)(ho||(ho=(0,_u.A)(["\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=",'\n\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t>","</a>\n\t\t\t\t</div>"])),(0,Xd.PanoramaxMetaCatalogURL)()+"/?pic="+this._parent.psv.getPictureMetadata().id,null===(nm=this._parent)||void 0===nm?void 0:nm._t.pnx.share_page,this._caption.producer[this._caption.producer.length-1]):Md.s6,(null===(rm=this._caption.producer)||void 0===rm?void 0:rm.length)>0&&this._caption.date?"-":"",this._caption.date?new Intl.DateTimeFormat(sp,{timeZone:this._caption.tz,dateStyle:"short"}).format(this._caption.date):Md.s6,((null===(am=this._caption.producer)||void 0===am?void 0:am.length)>0||this._caption.date)&&null!==(sm=this._caption)&&void 0!==sm&&sm.license?"|":"",null!==(om=this._caption)&&void 0!==om&&om.license?(0,Ld.qy)(Dl||(Dl=(0,_u.A)(["",""])),(0,Ld.Bk)(this._caption.license)):Md.s6):(0,Ld.qy)(Fl||(Fl=(0,_u.A)(["\n\t\t\t<div class=",">\n\t\t\t\t",'\n\n\t\t\t\t<div id="pic-legend-addr" title=',">\n\t\t\t\t\t",'\n\t\t\t\t</div>\n\n\t\t\t\t<div class="headline-buttons">\n\t\t\t\t\t','\n\n\t\t\t\t\t<pnx-button\n\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\tclass=',"\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>\n\t\t\t\t\t\t","\n\t\t\t\t\t</pnx-button>\n\n\t\t\t\t\t<pnx-picture-legend-actions\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t\t._parent=","\n\t\t\t\t\t\t?full=",'\n\t\t\t\t\t></pnx-picture-legend-actions>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div id="pic-legend-info" class=',">\n\t\t\t\t","\n\n\t\t\t\t",'\n\t\t\t</div>\n\n\t\t\t<div id="pic-legend-cta" class=','>\n\t\t\t\t<pnx-button size="sm" @click=',">\n\t\t\t\t\t"," ","\n\t\t\t\t</pnx-button>\n\n\t\t\t\t",'\n\n\t\t\t\t<slot name="editors">\n\t\t\t\t\t<pnx-widget-osmeditors ._parent='," />\n\t\t\t\t</slot>\n\t\t\t</div>\n\n\t\t\t<pnx-picture-metadata\n\t\t\t\tclass=","\n\t\t\t\t.block-editor=","\n\t\t\t\t._parent=","\n\t\t\t></pnx-picture-metadata>\n\n\t\t\t","\n\t\t"])),(0,Nd.H)({headline:!0,"pnx-hidden":this._blockOnEditor}),this._parent._setFocus?(0,Ld.qy)(sc||(sc=(0,_u.A)(['\n\t\t\t\t\t<pnx-button\n\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t@click=',"\n\t\t\t\t\t>\n\t\t\t\t\t\t","\n\t\t\t\t\t</pnx-button>\n\t\t\t\t"])),this._onBackClick,(0,Rd.fa)(Od.Ce)):Md.s6,this._addr||"",(null===(bt=this._addr)||void 0===bt?void 0:bt.length)>0?this._addr:(0,Ld.qy)(uc||(uc=(0,_u.A)(['<span class="pnx-placeholder-loading">&nbsp;</span>']))),this._visibility?(0,Ld.qy)(mc||(mc=(0,_u.A)(['\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass="visibility-badge"\n\t\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</div>\n\t\t\t\t\t"])),null===(le=this._parent)||void 0===le?void 0:le._t.pnx["visibility_title_"+this._visibility],(0,Rd.fa)(qd.aA,{transform:{size:16}}),null===(du=this._parent)||void 0===du?void 0:du._t.pnx["visibility_"+this._visibility]):Md.s6,tm,null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.share,(()=>this._parent._showShareOptions()),(0,Rd.fa)(Zd.faShareNodes),(vt=>vt.stopPropagation()),this._parent,this._expanded,tm,(null===(Qd=this._caption.producer)||void 0===Qd?void 0:Qd.length)>0?(0,Ld.qy)(gc||(gc=(0,_u.A)(['<div class="info-block">\n\t\t\t\t\t',"\n\t\t\t\t\t","\n\t\t\t\t</div>"])),(0,Rd.fa)(Gd.X4),this._caption.producer[this._caption.producer.length-1]):Md.s6,this._caption.date?(0,Ld.qy)(Ac||(Ac=(0,_u.A)(['<div class="info-block">\n\t\t\t\t\t',"\n\t\t\t\t\t","\t\t\t\t</div>"])),(0,Rd.fa)(Hd.BE),this._caption.date.toLocaleDateString((null===(Kd=this._parent)||void 0===Kd?void 0:Kd.lang)||window.navigator.language,{year:"numeric",month:"long",day:"numeric"})):Md.s6,(0,Nd.H)({"pnx-hidden":!this._expanded||this._blockOnEditor}),(()=>this._parent._showShareOptions()),(0,Rd.fa)(Zd.faShareNodes),null===(Jd=this._parent)||void 0===Jd?void 0:Jd._t.pnx.share,this._parent.getAPI()._endpoints.report?(0,Ld.qy)(Ec||(Ec=(0,_u.A)(['\n\t\t\t\t\t\t<pnx-button kind="fullwarn" size="sm" @click=',">\n\t\t\t\t\t\t\t"," ","\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t"])),(()=>this._parent._showReportForm()),(0,Rd.fa)(Wd.JA),null===($d=this._parent)||void 0===$d?void 0:$d._t.pnx.report):Md.s6,this._parent,em,this._blockOnEditor,this._parent,this.collapsable&&!this._blockOnEditor?(0,Ld.qy)(kc||(kc=(0,_u.A)(['<pnx-button\n\t\t\t\tkind="inline"\n\t\t\t\tsize="sm"\n\t\t\t\tid="pic-legend-expand"\n\t\t\t\t@click=',"\n\t\t\t>","</pnx-button>"])),(()=>this._expanded=!this._expanded),this._expanded?(0,Rd.fa)(jd.w2):(0,Rd.fa)(Ud.Jt)):Md.s6)}}PictureLegend.styles=[Yd.qf,Yd.nd,Yd.R,(0,Md.AH)(du||(du=(0,_u.A)(["\n\t\t:host {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tmargin: 0;\n\t\t\tfont-family: var(--font-family);\n\t\t\tflex-wrap: nowrap;\n\t\t}\n\n\t\t@media screen and (min-width: 576px) {\n\t\t\t:host {\n\t\t\t\tmax-height: 70vh;\n\t\t\t}\n\t\t}\n\n\t\t/* Top bar */\n\t\t.headline {\n\t\t\tdisplay: flex;\n\t\t\tgap: 10px;\n\t\t\talign-items: center;\n\t\t\tmargin: 10px 10px 5px 10px;\n\t\t\tjustify-content: space-between;\n\t\t\tflex: 1;\n\t\t}\n\n\t\t.headline-buttons {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\talign-items: center;\n\t\t}\n\n\t\t/* Address line */\n\t\t#pic-legend-addr {\n\t\t\tline-height: 1.2em;\n\t\t\tfont-size: 1em;\n\t\t\tmargin-bottom: 2px;\n\t\t\tflex-grow: 5;\n\t\t\tfont-weight: 800;\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n \t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t#pic-legend-addr span {\n\t\t\tdisplay: inline-block;\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t/* Visibility badge */\n\t\t.visibility-badge {\n\t\t\tcursor: help;\n\t\t\tbackground: var(--blue);\n\t\t\tcolor: var(--white);\n\t\t\tborder-radius: 10px;\n\t\t\theight: 20px;\n\t\t\tdisplay: inline-flex;\n\t\t\tfont-size: 0.8em;\n\t\t\tpadding: 0 5px;\n \t\t\tgap: 3px;\n\t\t\tfont-size: 0.7em;\n \t\t\talign-items: center;\n\t\t}\n\n\t\t.visibility-badge svg {\n\t\t\theight: 1em;\n\t\t}\n\n\t\t/* Minimal info block */\n\t\t#pic-legend-info {\n\t\t\tmargin: 10px;\n\t\t\tdisplay: flex;\n\t\t\tgap: 10px;\n\t\t\tjustify-content: space-around;\n\t\t}\n\t\t.info-block {\n\t\t\tdisplay: flex;\n\t\t\tflex-shrink: 1;\n\t\t\tgap: 5px;\n\t\t\tfont-weight: 600;\n\t\t\tfont-size: 0.85em;\n\t\t\talign-items: center;\n\t\t}\n\t\t.info-block svg { height: 18px; }\n\n\t\t/* Expand button */\n\t\t#pic-legend-expand {\n\t\t\tdisplay: block;\n\t\t\tmargin-top: 5px;\n\t\t\tmax-width: 100%;\n\t\t\tflex: 1;\n\t\t}\n\t\t#pic-legend-expand::part(btn) {\n\t\t\tborder-radius: 10px;\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-top-left-radius: 0;\n\t\t}\n\n\t\t/* Details block */\n\t\tpnx-picture-metadata {\n\t\t\tmargin: 5px 10px;\n\t\t\tdisplay: block;\n\t\t\tbox-sizing: border-box;\n\t\t\tflex: 1;\n\t\t\toverflow-y: auto;\n\t\t}\n\n\t\t/* Details actions */\n\t\t#pic-legend-cta {\n\t\t\tdisplay: flex;\n\t\t\tmargin: 5px 10px;\n\t\t\tborder-bottom-left-radius: 10px;\n\t\t\tborder-bottom-right-radius: 10px;\n\t\t\tgap: 5px;\n\t\t\tflex-wrap: wrap;\n\t\t\tflex: 1;\n\t\t}\n\n\t\t/* More options menu */\n\t\t#pnx-legend-opts { min-width: unset; }\n\n\t\t/* Editors */\n\t\t#pic-legend-editors { margin: 0 10px; }\n\n\t\t/* Light version */\n\t\t.pnx-picture-legend-light {\n\t\t\twidth: max-content;\n\t\t\tfont-size: 10px;\n\t\t}\n\t"])))],PictureLegend.properties={light:{type:Boolean},_caption:{state:!0},_addr:{state:!0},_expanded:{state:!0},_blockOnEditor:{state:!0},_visibility:{state:!0},collapsable:{type:Boolean}},customElements.define("pnx-picture-legend",PictureLegend)},6993:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PictureMetadata});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc,du,_u,Md,Ld,Nd,Rd,Od,jd,Ud,Gd,qd,Hd,Wd=le(7528),Zd=le(4542),Yd=le(686),Qd=le(5995),Xd=le(3520),Kd=le(3233),Jd=le(2480),$d=le(5279),sp=le(4954),tm=le(2077),em=le(5124),im=le(6668),nm=le(6249),rm=le(8591),am=le(508),sm=le(7208),om=le(7343);const missing=()=>(0,Qd.fa)(em.Ev,{styles:{height:"16px"}});class PictureMetadata extends Zd.WF{connectedCallback(){var vt;super.connectedCallback();const gototags=()=>{const vt=this.shadowRoot.querySelector("pnx-tabs");vt&&vt.setAttribute("activeTabIndex",4)};null===(vt=window.navigation)||void 0===vt||vt.addEventListener("navigate",(()=>{this.requestUpdate()})),(0,Qd.onceParentAvailable)(this).then((()=>{var vt,bt,le,ls;this._meta=null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getPictureMetadata(),null===(le=this._parent)||void 0===le||null===(ls=le.oncePSVReady)||void 0===ls||ls.call(le).then((()=>{this._parent.psv.addEventListener("picture-loaded",(()=>{this._meta=this._parent.psv.getPictureMetadata()})),this._parent._initParams.getParentPostInit().skipTagsMenuOpening||(this._parent.psv.addEventListener("annotation-focused",gototags),this._parent.psv.addEventListener("annotations-toggled",(vt=>{vt.detail.visible&&gototags()})),this._parent.psv.getSelectedAnnotations().length>0&&gototags())}))}))}_onQualityScoreClick(){const vt=this.shadowRoot.querySelector("pnx-tabs");vt&&vt.setAttribute("activeTabIndex",3)}_onCaptureDateClick(){const vt=this.shadowRoot.querySelector("pnx-tabs");vt&&vt.setAttribute("activeTabIndex",1)}_toTab(vt,bt){return(0,Yd.qy)(ls||(ls=(0,Wd.A)(['\n\t\t\t<h4 slot="title">','</h4>\n\t\t\t<div slot="content" class="data-blocks">\n\t\t\t\t',"\n\t\t\t</div>\n\t\t"])),vt,bt.filter((vt=>vt)).map((vt=>(0,Yd.qy)(ho||(ho=(0,Wd.A)(['<div class="data-block" style=',">\n\t\t\t\t\t<h5>","</h5>\n\t\t\t\t\t<div style="," @click=",">","</div>\n\t\t\t\t</div>"])),vt.style,vt.title,vt.content_style,vt.click,vt.content))))}render(){var vt,bt,le,ls,ho,Hd,em,rm,lm,cm,um,hm,dm,pm,mm,fm,gm,Am,_m,ym,vm,xm,bm,wm,Em,Mm,Sm,Tm,km,Cm,Im,Dm,Lm,Pm,zm,Nm,Rm,Fm,Om,Bm,jm,Um,Vm,Gm,qm,Hm,Wm,Zm,Ym,Qm,Xm,Km,Jm;if(!this._meta)return Zd.s6;const $m=(null===(vt=this._parent)||void 0===vt?void 0:vt.lang)||window.navigator.language,tg=null===(bt=this._meta)||void 0===bt||null===(le=bt.properties)||void 0===le?void 0:le["pers:interior_orientation"],eg=[tg.camera_manufacturer,tg.camera_model].filter((vt=>vt)).join(" "),ig=null!==tg&&void 0!==tg&&tg.focal_length?"".concat(null===tg||void 0===tg?void 0:tg.focal_length," mm"):missing();let ng=null===tg||void 0===tg?void 0:tg.sensor_array_dimensions;ng&&(ng="".concat(ng[0]," x ").concat(ng[1]," px (").concat(Math.floor(ng[0]*ng[1]/1e6)," Mpx)"));let rg=null===(ls=this._parent)||void 0===ls?void 0:ls._t.pnx.picture_flat,ag=null===(ho=this._parent)||void 0===ho?void 0:ho._t.pnx.picture_flat_long,sg=null===tg||void 0===tg?void 0:tg.field_of_view;var og,lg;null!==sg&&void 0!==sg&&(360===sg?(rg=null===(og=this._parent)||void 0===og?void 0:og._t.pnx.picture_360,ag=null===(lg=this._parent)||void 0===lg?void 0:lg._t.pnx.picture_360_long):rg+=" (".concat(sg,"\xb0)"));const cg=[{title:null===(Hd=this._parent)||void 0===Hd?void 0:Hd._t.pnx.metadata_camera_make,content:(null===tg||void 0===tg?void 0:tg.camera_manufacturer)||missing()},{title:null===(em=this._parent)||void 0===em?void 0:em._t.pnx.metadata_camera_model,content:(null===tg||void 0===tg?void 0:tg.camera_model)||missing()},{title:null===(rm=this._parent)||void 0===rm?void 0:rm._t.pnx.metadata_camera_type,content:rg},{title:null===(lm=this._parent)||void 0===lm?void 0:lm._t.pnx.metadata_camera_resolution,content:ng||missing()},{title:null===(cm=this._parent)||void 0===cm?void 0:cm._t.pnx.metadata_camera_focal_length,content:ig},(null===(um=this._meta)||void 0===um||null===(hm=um.caption)||void 0===hm?void 0:hm.date)&&{title:null===(dm=this._parent)||void 0===dm?void 0:dm._t.pnx.metadata_general_date,content:(0,Yd.qy)(Dl||(Dl=(0,Wd.A)(["\n\t\t\t\t\t<strong>","</strong>\n\t\t\t\t\t<br />","\n\t\t\t\t"])),new Intl.DateTimeFormat($m,{timeZone:this._meta.caption.tz,dateStyle:"short"}).format(this._meta.caption.date),new Intl.DateTimeFormat($m,{timeZone:this._meta.caption.tz,hour:"numeric",minute:"numeric",second:"numeric",fractionalSecondDigits:3,timeZoneName:"longOffset"}).format(this._meta.caption.date))}],ug=void 0!==(null===(pm=this._meta)||void 0===pm||null===(mm=pm.properties)||void 0===mm?void 0:mm["view:azimuth"])&&"".concat(this._meta.properties["view:azimuth"],"\xb0"),hg=[{title:null===(fm=this._parent)||void 0===fm?void 0:fm._t.pnx.metadata_location_coordinates,content:(0,Yd.qy)(Fl||(Fl=(0,Wd.A)(["\n\t\t\t\t\t",", ","\n\t\t\t\t\t<pnx-copy-coordinates\n\t\t\t\t\t\t._parent=","\n\t\t\t\t\t\t.gps=",'\n\t\t\t\t\t\tstyle="margin-left: 10px"\n\t\t\t\t\t></pnx-copy-coordinates>\n\t\t\t\t'])),this._meta.gps[0].toFixed(5),this._meta.gps[1].toFixed(5),this._parent,this._meta.gps),style:"width: 100%"},{title:null===(gm=this._parent)||void 0===gm?void 0:gm._t.pnx.metadata_location_orientation,content:ug||missing()},{title:null===(Am=this._parent)||void 0===Am?void 0:Am._t.pnx.metadata_location_precision,content:(0,am.getGPSPrecision)(this._meta)||missing()}],dg=(null===(_m=this._parent)||void 0===_m||null===(ym=_m.map)||void 0===ym||null===(vm=ym._hasQualityScore)||void 0===vm?void 0:vm.call(ym))||(null===(xm=this._meta)||void 0===xm||null===(bm=xm.properties)||void 0===bm?void 0:bm["quality:horizontal_accuracy"])||(null===(wm=this._meta)||void 0===wm||null===(Em=wm.properties)||void 0===Em?void 0:Em["panoramax:horizontal_pixel_density"]);let pg,mg;if(dg){var fg,gg,Ag,_g,yg,vg,xg,bg,wg,Eg,Mg;const vt=(0,om.getGrade)(om.QUALITYSCORE_GPS_VALUES,null===(fg=this._meta)||void 0===fg||null===(gg=fg.properties)||void 0===gg?void 0:gg["quality:horizontal_accuracy"]),bt=(0,om.getGrade)(360===(null===(Ag=this._meta)||void 0===Ag?void 0:Ag.horizontalFov)?om.QUALITYSCORE_RES_360_VALUES:om.QUALITYSCORE_RES_FLAT_VALUES,null===(_g=this._meta)||void 0===_g||null===(yg=_g.properties)||void 0===yg?void 0:yg["panoramax:horizontal_pixel_density"]);mg=Math.round((bt||1)*om.QUALITYSCORE_POND_RES+(vt||1)*om.QUALITYSCORE_POND_GPS),pg=[{title:(0,Yd.qy)(sc||(sc=(0,Wd.A)(["\n\t\t\t\t\t\t",'\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\ttitle="','"\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t"])),null===(vg=this._parent)||void 0===vg?void 0:vg._t.pnx.metadata_quality_score,null===(xg=this._parent)||void 0===xg?void 0:xg._t.pnx.metadata_quality_help,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showQualityScoreDoc()}),(0,Qd.fa)(im.iW)),content:(0,Yd.qy)(uc||(uc=(0,Wd.A)(["<pnx-quality-score grade=",' style="font-size: 16px"></pnx-quality-score>'])),mg),style:"width: 100%"},{title:null===(bg=this._parent)||void 0===bg?void 0:bg._t.pnx.metadata_quality_gps_score,content:(0,Qd.createWebComp)("pnx-grade",{stars:vt,_t:null===(wg=this._parent)||void 0===wg?void 0:wg._t})},{title:null===(Eg=this._parent)||void 0===Eg?void 0:Eg._t.pnx.metadata_quality_resolution_score,content:(0,Qd.createWebComp)("pnx-grade",{stars:bt,_t:null===(Mg=this._parent)||void 0===Mg?void 0:Mg._t})}]}const Sg=Object.entries(this._meta.properties.exif).sort().filter((vt=>{let[,bt]=vt;return bt})).map((vt=>{let[bt,le]=vt;return JSON.stringify(le).includes("\\u")&&(le=JSON.stringify(le).replace(/\\u[0-9A-Fa-f]{4}/g,(vt=>" 0x"+parseInt(vt.slice(2),16).toString(16).toUpperCase().padStart(4,"0"))).slice(1,-1).trim()),{title:bt,content:le.length>30?(0,Yd.qy)(mc||(mc=(0,Wd.A)(["<textarea readonly .value=","></textarea>"])),le):le,style:le.length>30?"width: 100%":void 0}}));Sg.unshift({content:(0,Yd.qy)(gc||(gc=(0,Wd.A)(['\n\t\t\t\t<pnx-link-button\n\t\t\t\t\tsize="sm"\n\t\t\t\t\ttarget="_blank"\n\t\t\t\t\thref="https://exiv2.org/metadata.html"\n\t\t\t\t\ttitle=',"\n\t\t\t\t>"," ","</pnx-link-button>\n\t\t\t"])),null===(Mm=this._parent)||void 0===Mm?void 0:Mm._t.pnx.metadata_exif_doc_title,(0,Qd.fa)(im.iW),null===(Sm=this._parent)||void 0===Sm?void 0:Sm._t.pnx.metadata_exif_doc),style:"width: 100%"});const Tg=[(null===(Tm=this._meta)||void 0===Tm||null===(km=Tm.caption)||void 0===km||null===(Cm=km.producer)||void 0===Cm?void 0:Cm.length)>0&&{title:null===(Im=this._parent)||void 0===Im?void 0:Im._t.pnx.metadata_general_author,content:(0,Yd.qy)(Ac||(Ac=(0,Wd.A)(["\n\t\t\t\t\t<strong>","</strong>\n\t\t\t\t\t","\n\t\t\t\t"])),this._meta.caption.producer[this._meta.caption.producer.length-1],this._meta.caption.producer.length>1?(0,Yd.qy)(Ec||(Ec=(0,Wd.A)(["<br />",""])),this._meta.caption.producer.slice(0,-1).join(", ")):Zd.s6)},(null===(Dm=this._meta)||void 0===Dm||null===(Lm=Dm.caption)||void 0===Lm?void 0:Lm.date)&&{title:null===(Pm=this._parent)||void 0===Pm?void 0:Pm._t.pnx.metadata_general_date,click:this._onCaptureDateClick,content_style:"cursor: pointer",content:(0,Yd.qy)(kc||(kc=(0,Wd.A)(["\n\t\t\t\t\t<strong>","</strong>\n\t\t\t\t\t<br />","\n\t\t\t\t"])),new Intl.DateTimeFormat($m,{timeZone:this._meta.caption.tz,dateStyle:"long"}).format(this._meta.caption.date),new Intl.DateTimeFormat($m,{timeZone:this._meta.caption.tz,hour:"numeric",minute:"numeric",second:"numeric"}).format(this._meta.caption.date))},tg&&{title:null===(zm=this._parent)||void 0===zm?void 0:zm._t.pnx.metadata_camera,content:(0,Yd.qy)(du||(du=(0,Wd.A)(["\n\t\t\t\t\t<strong>","</strong>\n\t\t\t\t\t<br />","\n\t\t\t\t"])),eg.length>0?eg:missing(),ag)},(null===(Nm=this._meta)||void 0===Nm||null===(Rm=Nm.caption)||void 0===Rm?void 0:Rm.license)&&{title:null===(Fm=this._parent)||void 0===Fm?void 0:Fm._t.pnx.metadata_general_license,content:(0,Yd.qy)(_u||(_u=(0,Wd.A)(["",""])),(0,Yd.Bk)(this._meta.caption.license))},dg&&{title:null===(Om=this._parent)||void 0===Om?void 0:Om._t.pnx.metadata_quality,click:this._onQualityScoreClick,content:(0,Yd.qy)(Md||(Md=(0,Wd.A)(["<pnx-quality-score\n\t\t\t\t\tgrade=",'\n\t\t\t\t\tstyle="font-size: 14px; cursor: pointer"\n\t\t\t\t/>'])),mg)},{title:null===(Bm=this._parent)||void 0===Bm?void 0:Bm._t.pnx.metadata_general_copy_id,content_style:"display: flex; gap: 5px;",content:(0,Yd.qy)(Ld||(Ld=(0,Wd.A)(['\n\t\t\t\t\t<pnx-copy-button\n\t\t\t\t\t\tkind="outline"\n\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\t._t=',"\n\t\t\t\t\t\ttext=","\n\t\t\t\t\t\ttitle=",'\n\t\t\t\t\t\tstyle="flex: 1"\n\t\t\t\t\t>\n\t\t\t\t\t\t'," ",'\n\t\t\t\t\t</pnx-copy-button>\n\t\t\t\t\t<pnx-copy-button\n\t\t\t\t\t\tkind="outline"\n\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\t._t=',"\n\t\t\t\t\t\ttext=","\n\t\t\t\t\t\ttitle=",'\n\t\t\t\t\t\tstyle="flex: 1"\n\t\t\t\t\t>\n\t\t\t\t\t\t'," ","\n\t\t\t\t\t</pnx-copy-button>\n\t\t\t\t"])),null===(jm=this._parent)||void 0===jm?void 0:jm._t,this._meta.id,this._meta.id,(0,Qd.fa)($d.jb),null===(Um=this._parent)||void 0===Um?void 0:Um._t.pnx.metadata_general_picid,null===(Vm=this._parent)||void 0===Vm?void 0:Vm._t,this._meta.sequence.id,this._meta.sequence.id,(0,Qd.fa)(sp.yv),null===(Gm=this._parent)||void 0===Gm?void 0:Gm._t.pnx.metadata_general_seqid)},(null===(qm=this._meta)||void 0===qm?void 0:qm.origInstance)&&{title:null===(Hm=this._parent)||void 0===Hm?void 0:Hm._t.pnx.metadata_general_instance,content:(0,Yd.qy)(Nd||(Nd=(0,Wd.A)(["<strong>\n\t\t\t\t\t<a href=",' target="_blank" style="text-decoration: none">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc=','\n\t\t\t\t\t\t\tstyle="height: 30px; max-width: 150px; vertical-align: middle"\n\t\t\t\t\t\t\talt=""\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span style="text-decoration: underline">\n\t\t\t\t\t\t\t',"\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</strong>"])),this._meta.origInstance.href+window.location.search,(0,sm.PanoramaxMetaCatalogURL)()+"/api/instances/"+this._meta.origInstance.instance_name+"/logo",this._meta.origInstance.instance_name||this._meta.origInstance.href.replace(/^http.?:\/\//,""))}];return(0,Yd.qy)(Rd||(Rd=(0,Wd.A)(["<pnx-tabs .hideNav=",">\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t",'\n\n\t\t\t<h4 slot="title">'," ",'</h4>\n\t\t\t<div slot="content" class="data-blocks">\n\t\t\t\t<pnx-semantics-metadata ._parent=',"></pnx-semantics-metadata>\n\t\t\t</div>\n\n\t\t\t","\n\t\t</pnx-tabs>"])),this["block-editor"],this._toTab((0,Yd.qy)(Od||(Od=(0,Wd.A)([""," ",""])),(0,Qd.fa)($d.jb),null===(Wm=this._parent)||void 0===Wm?void 0:Wm._t.pnx.metadata_summary),Tg),this._toTab((0,Yd.qy)(jd||(jd=(0,Wd.A)([""," ",""])),(0,Qd.fa)(Jd.rw),null===(Zm=this._parent)||void 0===Zm?void 0:Zm._t.pnx.metadata_camera),cg),this._toTab((0,Yd.qy)(Ud||(Ud=(0,Wd.A)([""," ",""])),(0,Qd.fa)(Xd.faLocationDot),null===(Ym=this._parent)||void 0===Ym?void 0:Ym._t.pnx.metadata_location),hg),dg?this._toTab((0,Yd.qy)(Gd||(Gd=(0,Wd.A)([""," ",""])),(0,Qd.fa)(Kd.B9),null===(Qm=this._parent)||void 0===Qm?void 0:Qm._t.pnx.metadata_quality),pg):Zd.s6,(0,Qd.fa)(nm.DX),null===(Xm=this._parent)||void 0===Xm?void 0:Xm._t.pnx.semantics_title,this._parent,null!==(Km=this._meta.properties)&&void 0!==Km&&Km.exif?this._toTab((0,Yd.qy)(qd||(qd=(0,Wd.A)([""," ",""])),(0,Qd.fa)(tm.DD),null===(Jm=this._parent)||void 0===Jm?void 0:Jm._t.pnx.metadata_exif),Sg):Zd.s6)}}PictureMetadata.styles=[rm.Op,rm.YC,rm.PC,rm.R,rm.Tk,(0,Zd.AH)(Hd||(Hd=(0,Wd.A)(['\n\t\tdiv[slot="content"] {\n\t\t\tpadding: 5px 10px;\n\t\t\tbackground-color: #ededed;\n\t\t}\n\n\t\t.data-block {\n\t\t\tmin-width: 50%;\n\t\t}\n\n\t\tpnx-semantics-table {\n\t\t\toverflow-x: auto;\n \t\t\tdisplay: block;\n\t\t}\n\t'])))],PictureMetadata.properties={_meta:{state:!0},"block-editor":{type:Boolean}},customElements.define("pnx-picture-metadata",PictureMetadata)},499:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PlayerOptions});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(8591),uc=le(7744),mc=le(325),gc=le(9243),Ac=le(9048),Ec=le(5995);class PlayerOptions extends Fl.WF{connectedCallback(){super.connectedCallback(),(0,Ec.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.addEventListener("transition-duration-changed",(vt=>{this.renderRoot.querySelector("#pnx-player-speed").value=Ac.Vf-vt.detail.value}))}))}_onSpeedChange(vt){var bt,le;const ls=Ac.Vf-vt.target.value;null===(bt=this._parent)||void 0===bt||null===(le=bt.psv)||void 0===le||le.setTransitionDuration(ls)}_onContrastClick(){const vt=this.renderRoot.querySelector("#pnx-player-contrast");var bt,le,ls,ho;"true"==vt.getAttribute("active")?(vt.removeAttribute("active"),null===(bt=this._parent)||void 0===bt||null===(le=bt.psv)||void 0===le||le.setHigherContrast(!1)):(vt.setAttribute("active","true"),null===(ls=this._parent)||void 0===ls||null===(ho=ls.psv)||void 0===ho||ho.setHigherContrast(!0))}render(){var vt,bt,le,ho;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<div class="pnx-input-range" title="','">\n\t\t\t\t','\n\t\t\t\t<input\n\t\t\t\t\tid="pnx-player-speed"\n\t\t\t\t\ttype="range" name="speed"\n\t\t\t\t\tmin="0" max="','"\n\t\t\t\t\tvalue="','"\n\t\t\t\t\ttitle="','"\n\t\t\t\t\tstyle="width: 100%;"\n\t\t\t\t\t@change=',"\n\t\t\t\t/>\n\t\t\t\t",'\n\t\t\t</div>\n\t\t\t<pnx-button\n\t\t\t\tid="pnx-player-contrast"\n\t\t\t\ttitle="','"\n\t\t\t\tkind="outline"\n\t\t\t\t@click=',"\n\t\t\t>\n\t\t\t\t","\n\t\t\t</pnx-button>\n\t\t"])),null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.sequence_speed,(0,Ec.fa)(gc.rO),Ac.Vf-100,Ac.Vf-(null===(bt=this._parent)||void 0===bt?void 0:bt.psv.getTransitionDuration()),null===(le=this._parent)||void 0===le?void 0:le._t.pnx.sequence_speed,this._onSpeedChange,(0,Ec.fa)(uc.KM),null===(ho=this._parent)||void 0===ho?void 0:ho._t.pnx.contrast,this._onContrastClick,(0,Ec.fa)(mc.rC))}}PlayerOptions.styles=[sc.Op,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tgap: 15px;\n\t\t\tpadding: 5px 15px;\n\t\t}\n\n\t\t.pnx-input-range {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: space-between;\n\t\t\tgap: 10px;\n\t\t\talign-items: center;\n\t\t\twidth: 100%;\n\t\t}\n\t"])))],customElements.define("pnx-player-options",PlayerOptions)},5187:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>QualityScoreDoc});var ls,ho=le(7528),Dl=le(4542),Fl=le(8591),sc=le(5995),uc=le(3233),mc=le(7704);class QualityScoreDoc extends Dl.WF{render(){var vt,bt,le,Fl,gc,Ac,Ec,kc,du;return(0,Dl.qy)(ls||(ls=(0,ho.A)(["\n\t\t\t<h4>"," ","</h4>\n\t\t\t<p>","</p>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-quality-score grade=""></pnx-quality-score>\n\t\t\t<p>',"</p>\n\t\t\t<p>","</p>\n\t\t\t<ul>\n\t\t\t\t<li>","</li>\n\t\t\t\t<li>","</li>\n\t\t\t</ul>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-link-button\n\t\t\t\thref="https://docs.panoramax.fr/pictures-metadata/quality_score/"\n\t\t\t\ttarget="_blank"\n\t\t\t\tkind="outline"\n\t\t\t\tstyle="width: 100%"\n\t\t\t>'," ","</pnx-link-button>\n\t\t"])),(0,sc.fa)(uc.B9),null===(vt=this._t)||void 0===vt?void 0:vt.pnx.filter_qualityscore,null===(bt=this._t)||void 0===bt?void 0:bt.pnx.qualityscore_doc_1,null===(le=this._t)||void 0===le?void 0:le.pnx.qualityscore_doc_2,null===(Fl=this._t)||void 0===Fl?void 0:Fl.pnx.qualityscore_doc_3,null===(gc=this._t)||void 0===gc?void 0:gc.pnx.qualityscore_doc_4,null===(Ac=this._t)||void 0===Ac?void 0:Ac.pnx.qualityscore_doc_41,null===(Ec=this._t)||void 0===Ec?void 0:Ec.pnx.qualityscore_doc_42,null===(kc=this._t)||void 0===kc?void 0:kc.pnx.qualityscore_doc_5,(0,sc.fa)(mc.A),null===(du=this._t)||void 0===du?void 0:du.pnx.popup_details_link)}}QualityScoreDoc.styles=[Fl.YC,Fl.Op,Fl.lk],customElements.define("pnx-quality-score-doc",QualityScoreDoc)},9588:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ReportForm});var ls,ho,Dl,Fl,sc,uc,mc,gc=le(7528),Ac=le(4542),Ec=le(8591),kc=le(5995),du=le(4881),_u=le(6311),Md=le(7516),Ld=le(2975),Nd=le(1708),Rd=le(7343);const Od=["","blur_missing","blur_excess","inappropriate","privacy","picture_low_quality","mislocated","copyright","other"];class ReportForm extends Ac.WF{_onSubmit(vt){var bt,le,ls,ho;vt.preventDefault();const Dl=null===(bt=this._parent)||void 0===bt||null===(le=bt.psv)||void 0===le?void 0:le.getPictureMetadata(),Fl=Object.fromEntries(new FormData(vt.target)),sc={issue:Fl.issue,picture_id:Fl["whole-sequence"]?null:null===Dl||void 0===Dl?void 0:Dl.id,reporter_comments:Fl.comments,reporter_email:Fl.email,sequence_id:null===Dl||void 0===Dl||null===(ls=Dl.sequence)||void 0===ls?void 0:ls.id};this.mode="wait",null===(ho=this._parent)||void 0===ho||ho.getAPI().sendReport(sc).then((()=>{this.mode="success"})).catch((vt=>{console.error(vt),this.mode="failure",this.failure=vt}))}render(){var vt,bt,le,mc,Ec,jd,Ud,Gd,qd,Hd;const Wd=(0,Rd.getUserAccount)();var Zd,Yd,Qd,Xd;return this.mode?(0,Ac.qy)(ls||(ls=(0,gc.A)(["\n\t\t\t\t<h4>"," ","</h4>\n\t\t\t\t<p>\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t</p>\n\t\t\t"])),(0,kc.fa)(_u.JA),null===(Zd=this._parent)||void 0===Zd?void 0:Zd._t.pnx.report,"wait"===this.mode?null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.report_wait:Ac.s6,"success"===this.mode?null===(Qd=this._parent)||void 0===Qd?void 0:Qd._t.pnx.report_success:Ac.s6,"failure"===this.mode?null===(Xd=this._parent)||void 0===Xd?void 0:Xd._t.pnx.report_failure.replace("{e}",this.failure):Ac.s6):(0,Ac.qy)(ho||(ho=(0,gc.A)(["\n\t\t\t<h4>"," ","</h4>\n\n\t\t\t","\n\n\t\t\t<form @submit=",'>\n\t\t\t\t<div class="group">\n\t\t\t\t\t<label for="issue">'," ",'</label>\n\t\t\t\t\t<select name="issue" id="issue" required class="pnx-100w">\n\t\t\t\t\t\t','\n\t\t\t\t\t</select>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="group group-inline">\n\t\t\t\t\t<input name="whole-sequence" id="whole-sequence" type="checkbox" />\n\t\t\t\t\t<label for="whole-sequence">','</label>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="group">\n\t\t\t\t\t<label for="comments">'," ",'</label>\n\t\t\t\t\t<textarea name="comments" id="comments" placeholder=',"></textarea>\n\t\t\t\t</div>\n\n\t\t\t\t",'\n\n\t\t\t\t<pnx-button type="submit" style="width: 100%">\n\t\t\t\t\t'," ","\n\t\t\t\t</pnx-button>\n\t\t\t</form>\n\t\t"])),(0,kc.fa)(_u.JA),null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.report,Wd&&null!==(bt=this._parent)&&void 0!==bt&&bt._t?(0,Ac.qy)(Dl||(Dl=(0,gc.A)(["\n\t\t\t\t<p>","</p>\n\t\t\t"])),null===(le=this._parent)||void 0===le?void 0:le._t.pnx.report_auth.replace("{a}",Wd.name)):Ac.s6,this._onSubmit.bind(this),(0,kc.fa)(Md.faCircleInfo),null===(mc=this._parent)||void 0===mc?void 0:mc._t.pnx.report_nature_label,Od.map((vt=>{var bt;return(0,Ac.qy)(Fl||(Fl=(0,gc.A)(["\n\t\t\t\t\t\t\t<option\n\t\t\t\t\t\t\t\tvalue=","\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t"])),vt,""===vt?(0,Ac.qy)(sc||(sc=(0,gc.A)(["disabled selected hidden"]))):Ac.s6,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.report_nature[vt])})),null===(Ec=this._parent)||void 0===Ec?void 0:Ec._t.pnx.report_whole_sequence,(0,kc.fa)(Ld.Be),null===(jd=this._parent)||void 0===jd?void 0:jd._t.pnx.report_details,null===(Ud=this._parent)||void 0===Ud?void 0:Ud._t.pnx.report_details_placeholder,Wd?Ac.s6:(0,Ac.qy)(uc||(uc=(0,gc.A)(['\n\t\t\t\t\t<div class="group">\n\t\t\t\t\t\t<label for="email">'," ",'</label>\n\t\t\t\t\t\t<input type="email" name="email" id="email" placeholder=',' class="pnx-100w" />\n\t\t\t\t\t</div>\n\t\t\t\t'])),(0,kc.fa)(du.Hz),null===(Gd=this._parent)||void 0===Gd?void 0:Gd._t.pnx.report_email,null===(qd=this._parent)||void 0===qd?void 0:qd._t.pnx.report_email_placeholder),(0,kc.fa)(Nd.is),null===(Hd=this._parent)||void 0===Hd?void 0:Hd._t.pnx.report_submit)}}ReportForm.styles=[Ec.YC,Ec.Op,Ec.Lt,Ec.PC,Ec.hF,(0,Ac.AH)(mc||(mc=(0,gc.A)(["\n\t\t.group {\n\t\t\tmargin-bottom: 10px;\n\t\t}\n\n\t\t.group:not(.group-inline) label {\n\t\t\tmargin-bottom: 5px;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t"])))],ReportForm.properties={mode:{state:!0},failure:{state:!0}},customElements.define("pnx-report-form",ReportForm)},5457:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsDoc});var ls,ho=le(7528),Dl=le(4542),Fl=le(8591),sc=le(5995),uc=le(6249),mc=le(7704);class SemanticsDoc extends Dl.WF{render(){var vt,bt,le,Fl,gc,Ac;return(0,Dl.qy)(ls||(ls=(0,ho.A)(["\n\t\t\t<h4>"," ","</h4>\n\t\t\t<p>",'</p>\n\t\t\t<ul style="padding-left: 1.5em;">\n\t\t\t\t<li>',"</li>\n\t\t\t\t<li>","</li>\n\t\t\t</ul>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-link-button\n\t\t\t\thref="https://docs.panoramax.fr/tags/"\n\t\t\t\ttarget="_blank"\n\t\t\t\tkind="outline"\n\t\t\t\tstyle="width: 100%"\n\t\t\t>'," ","</pnx-link-button>\n\t\t"])),(0,sc.fa)(uc.DX),null===(vt=this._t)||void 0===vt?void 0:vt.pnx.semantics_title,null===(bt=this._t)||void 0===bt?void 0:bt.pnx.semantics_doc_info1,null===(le=this._t)||void 0===le?void 0:le.pnx.semantics_doc_info1u1,null===(Fl=this._t)||void 0===Fl?void 0:Fl.pnx.semantics_doc_info2,null===(gc=this._t)||void 0===gc?void 0:gc.pnx.semantics_doc_info3,(0,sc.fa)(mc.A),null===(Ac=this._t)||void 0===Ac?void 0:Ac.pnx.popup_details_link)}}SemanticsDoc.styles=[Fl.YC,Fl.Op,Fl.lk],customElements.define("pnx-semantics-doc",SemanticsDoc)},7959:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsDownload});var ls,ho=le(7528),Dl=le(4542),Fl=le(8591),sc=le(5995),uc=le(6516);class SemanticsDownload extends Dl.WF{render(){var vt,bt,le;return(0,Dl.qy)(ls||(ls=(0,ho.A)(["\n\t\t\t<h4>"," ","</h4>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-link-button\n\t\t\t\thref="https://docs.panoramax.fr/federated-catalog/data_export/"\n\t\t\t\ttarget="_blank"\n\t\t\t\tkind="outline"\n\t\t\t\tstyle="width: 100%"\n\t\t\t>',"</pnx-link-button>\n\t\t"])),(0,sc.fa)(uc.cb),null===(vt=this._t)||void 0===vt?void 0:vt.pnx.semantics_download_title,null===(bt=this._t)||void 0===bt?void 0:bt.pnx.semantics_download_info,null===(le=this._t)||void 0===le?void 0:le.pnx.semantics_download_cta)}}SemanticsDownload.styles=[Fl.YC,Fl.Op],customElements.define("pnx-semantics-download",SemanticsDownload)},3728:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsFilters});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(5995),mc=le(6668),gc=le(6516),Ac=le(4005);class SemanticsFilters extends sc.WF{constructor(){super(),this.showZoomIn=!0,this._layers=[],(0,uc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt).then((async()=>{this._parent.map.on("zoomend",this._onMapZoom.bind(this)),this._parent.map.on("styledata",(()=>{this._onLayersChange(),this.requestUpdate()})),this._onMapZoom(),this._onLayersChange()}))}))}_layersToSet(vt){return vt.map((vt=>vt.source+"/"+this._parent.mapStyleComposer.dataOverlays.has(vt.source))).sort().join("|")}_onLayersChange(){clearTimeout(this._debouncedChange),this._debouncedChange=setTimeout((()=>{var vt,bt;const le=null===(vt=this._parent)||void 0===vt||null===(bt=vt.map)||void 0===bt?void 0:bt.getSemanticOverlays();this._layersToSet(le)!=this._layersToSet(this._layers)&&(this._layers=le,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{layers:le}})))}),10)}_onMapZoom(){this._showZoomIn=this._parent.map.getZoom()<Ac.lU}render(){var vt,bt,le;if(this._layers&&0!==this._layers.length)return(0,sc.qy)(ls||(ls=(0,Fl.A)(['\n\t\t\t<div class="pnx-tags-zoomin ','">\n\t\t\t\t','\n\t\t\t</div>\n\n\t\t\t<div class="pnx-tags-cta">\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="full"\n\t\t\t\t\tsize="sm"\n\t\t\t\t\t@click=',"\n\t\t\t\t>"," ",'</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tid="pnx-semfilt-doc"\n\t\t\t\t\tkind="superinline"\n\t\t\t\t\tsize="md"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>","</pnx-button>\n\t\t\t</div>\n\n\t\t\t","\n\t\t"])),this._showZoomIn?"":"hidden",null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.semantics_zoom_in,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showSemanticsDownload()}),(0,uc.fa)(gc.cb),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_download,null===(le=this._parent)||void 0===le?void 0:le._t.pnx.semantics_doc,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showSemanticsDoc()}),(0,uc.fa)(mc.iW),this._layers.filter((vt=>vt.metadata)).map((vt=>{var bt;return(0,sc.qy)(ho||(ho=(0,Fl.A)(["\n\t\t\t\t<pnx-switch\n\t\t\t\t\tname=","\n\t\t\t\t\t.checked=","\n\t\t\t\t\t@change=","\n\t\t\t\t>","</pnx-switch>\n\t\t\t"])),"pnx-semfilt-"+vt.id,this._parent.mapStyleComposer.dataOverlays.has(vt.source),(bt=>this._parent.mapStyleComposer.switchDataOverlayVisibility(vt.source,bt.target.checked)),(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_overlays[vt.id])||vt.metadata.name||vt.id)})))}}SemanticsFilters.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\t.pnx-tags-zoomin {\n\t\t\tz-index: 131;\n\t\t\tbackground-color: rgba(255,255,255,0.8);\n\t\t\ttext-align: center;\n\t\t\tfont-weight: 800;\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tleft: 0;\n\t\t\tbottom: 0;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-items: center;\n\t\t\tborder-radius: 25px;\n\t\t}\n\t\t.pnx-tags-zoomin.hidden {\n\t\t\tdisplay: none;\n\t\t}\n\t\t.pnx-tags-cta {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n \t\t\tjustify-content: end;\n\t\t}\n\t\tpnx-switch {\n\t\t\tdisplay: block;\n\t\t\tmargin: 5px 0;\n\t\t}\n\t"]))),SemanticsFilters.properties={_showZoomIn:{state:!0},_layers:{state:!0}},customElements.define("pnx-map-semantics-filters-menu",SemanticsFilters)},9671:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsList});var ls,ho,Dl,Fl,sc,uc,mc=le(7528),gc=le(4542),Ac=le(8591),Ec=le(5995),kc=le(2283),du=le(1187),_u=le(7321),Md=le(4692),Ld=le(8466),Nd=le(4954),Rd=le(7428),Od=le(4189),jd=le(174);le(8983);class SemanticsList extends gc.WF{constructor(){super(),this._meta={},this._seqMeta={},this._selectedEntry=null,this._annotPresets={},this._picPresets=[],this._seqPresets=[],this._entries=null,this.editable=!1,(0,Ec.moreIcons)()}connectedCallback(){super.connectedCallback(),this._onPicChange(),(0,Ec.onceParentAvailable)(this).then((()=>{var vt,bt,le,ls;null===(vt=this._parent.psv)||void 0===vt||vt.addEventListener("picture-loaded",this._onPicChange.bind(this)),null===(bt=this._parent.psv)||void 0===bt||bt.addEventListener("annotation-focused",(vt=>this.showAnnotation(vt.detail.annotationId))),null===(le=this._parent.psv)||void 0===le||le.addEventListener("annotations-unfocused",(()=>this._onListItemClick(null))),null===(ls=this._parent.psv)||void 0===ls||ls.addEventListener("semantics-unfocused",(()=>this._onListItemClick(null)));const ho=this._parent.psv.getSelectedAnnotations();ho.length>0&&this.showAnnotation(ho[0])}))}showAnnotation(vt){this._entries?this._onListItemClick(this._entries.find((bt=>"annotation"===bt.type&&bt.annotation.id==vt))):setTimeout((()=>this.showAnnotation(vt)),200)}showTagsGroup(vt){this._entries?this._onListItemClick(this._entries.find((bt=>{if("annotation"===(null===bt||void 0===bt?void 0:bt.type))return!1;for(let le=0;le<vt.length;le++)if(!bt.tagGroup.semantics.find((bt=>vt[le].key===bt.key&&vt[le].value===bt.value)))return!1;return!0}))):setTimeout((()=>this.showTagsGroup(vt)),200)}_onPicChange(){var vt,bt,le,ls,ho;(this._meta=null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getPictureMetadata(),this._getSeqMeta(),delete this._prevPsvView,this._selectedEntry=null,this._entries=null,this.dispatchEvent(new CustomEvent("select",{detail:{item:null}})),this._meta&&null!==(le=this._parent)&&void 0!==le&&le.presetsManager)&&(this._annotPresets={},this._picPresets=[],this._parent.presetsManager.getPresets(this._meta.properties).then((vt=>{this._picPresets=vt,this._computeEntries()})),(null===(ls=this._meta.properties)||void 0===ls||null===(ho=ls.annotations)||void 0===ho?void 0:ho.length)>0&&Promise.all(this._meta.properties.annotations.map((vt=>this._parent.presetsManager.getPreset(vt).then((bt=>{this._annotPresets[vt.id]=bt}))))).then((()=>this._computeEntries())))}async _getSeqMeta(){var vt,bt,le,ls;const ho=null===(vt=this._meta)||void 0===vt||null===(bt=vt.sequence)||void 0===bt?void 0:bt.id;if(ho&&!this._parent._sequencesMetadata[ho]&&(this._parent._sequencesMetadata[ho]=await this._parent.getAPI().getSequenceMetadata(ho)),this._seqMeta=this._parent._sequencesMetadata[ho],this._seqPresets=[],(null===(le=this._seqMeta)||void 0===le||null===(ls=le.semantics)||void 0===ls?void 0:ls.length)>0){const vt=await this._parent.presetsManager.getPresets(this._seqMeta);this._seqPresets=vt,this._computeEntries()}}_getGroupedTags(vt,bt,le,ls){const ho=[],groupToList=(vt,bt)=>{const le=[{key:bt,value:vt.value}];return vt.qualifiers&&vt.qualifiers.forEach((vt=>le.push({key:vt.key,value:vt.value}))),le},Dl=(0,kc.groupByPrefix)(vt),Fl=[];var sc;(Dl.forEach((vt=>{const le={};vt.tags.forEach((Dl=>{const sc=""!=vt.prefix?"".concat(vt.prefix,"|").concat(Dl.key):Dl.key;if(le["".concat(sc,"=").concat(Dl.value)])return void groupToList(Dl,sc).forEach((vt=>le["".concat(sc,"=").concat(Dl.value)].push(vt)));const uc=ls.find((vt=>["*",Dl.value].includes(vt.tags[sc])));if(uc){var mc;const vt=groupToList(Dl,sc);let ls=0;Object.entries(uc.tags).forEach((bt=>{let[ho,Dl]=bt,Fl=Dl;var uc;"*"===Dl&&(Fl=null===(uc=this._meta.properties.semantics.find((vt=>vt.key===sc)))||void 0===uc?void 0:uc.value);le[ho+"="+Fl]=vt,ls++})),ho.push({title:uc.name,icon:uc.iconify||"fa6-solid:cube",associatedTags:((null===(mc=Dl.qualifiers)||void 0===mc?void 0:mc.length)||0)+ls,tagGroup:{semantics:vt},type:bt})}else Fl.push({key:sc,value:Dl.value})}))})),Fl.length>0)&&ho.push({title:null===(sc=this._parent)||void 0===sc?void 0:sc._t.pnx.semantics_features_default_title.replace("{nb}",le++),icon:"fa6-solid:tag",associatedTags:Fl.length,tagGroup:{semantics:Fl},type:bt});return[ho,le]}_computeEntries(){var vt,bt,le,ls,ho;let Dl=1,Fl=[],sc=[];(null===(vt=this._seqMeta)||void 0===vt||null===(bt=vt.semantics)||void 0===bt?void 0:bt.length)>0&&([Fl,Dl]=this._getGroupedTags(this._seqMeta.semantics,"seqtags",Dl,this._seqPresets)),[sc,Dl]=this._getGroupedTags(null===(le=this._meta.properties)||void 0===le?void 0:le.semantics,"pictags",Dl,this._picPresets),Fl=Fl.concat(sc),Fl=Fl.concat((null===(ls=this._meta.properties)||void 0===ls||null===(ho=ls.annotations)||void 0===ho?void 0:ho.map((vt=>{var bt,le,ls;return{title:(null===(bt=this._annotPresets[vt.id])||void 0===bt?void 0:bt.name)||(null===(le=this._parent)||void 0===le?void 0:le._t.pnx.semantics_features_default_title.replace("{nb}",Dl++)),icon:(null===(ls=this._annotPresets[vt.id])||void 0===ls?void 0:ls.iconify)||"fa6-solid:cube",associatedTags:vt.semantics.filter((vt=>"delete"!==vt.action)).length,type:"annotation",annotation:vt}})))||[]),this._entries=Fl}_onListItemHover(vt){"annotation"===(null===vt||void 0===vt?void 0:vt.type)?(this._prevPsvView||(this._prevPsvView=[this._parent.psv.getZoomLevel(),this._parent.psv.getPosition()]),this._parent.psv.focusOnAnnotation(vt.annotation.id,void 0,!0)):(this._parent.psv.unfocusAnnotation(),this._prevPsvView&&(this._parent.psv.zoom(this._prevPsvView[0]),this._parent.psv.rotate(this._prevPsvView[1]),delete this._prevPsvView))}_onListItemClick(vt){this._selectedEntry=vt,this._onListItemHover(vt),this.dispatchEvent(new CustomEvent("select",{detail:{item:vt}}))}_onItemEditClick(vt){vt.stopPropagation(),this.dispatchEvent(new CustomEvent("edit-click",{detail:{item:this._selectedEntry}}))}_onItemDeleteClick(vt){vt.stopPropagation(),this.dispatchEvent(new CustomEvent("delete-click",{detail:{item:this._selectedEntry}}))}render(){if(!this._meta)return gc.s6;var vt,bt,le,uc,Ac,Ud,Gd,qd,Hd;if(this._selectedEntry)return(0,gc.qy)(ls||(ls=(0,mc.A)(['<div class="annotation">\n\t\t\t\t<pnx-list-item\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>\n\t\t\t\t\t",'\n\t\t\t\t\t<iconify-icon\n\t\t\t\t\t\tslot="icon"\n\t\t\t\t\t\ticon=','\n\t\t\t\t\t\tstyle="font-size: 1.5em"\n\t\t\t\t\t></iconify-icon>\n\n\t\t\t\t\t<pnx-copy-button\n\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\ttext=','\n\t\t\t\t\t\tslot="action"\n\t\t\t\t\t\t._t=',"\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t>\n\t\t\t\t\t\t","\n\t\t\t\t\t\t","\n\t\t\t\t\t</pnx-copy-button>\n\t\t\t\t\t\n\t\t\t\t\t","\n\t\t\t\t</pnx-list-item>\n\t\t\t\t<pnx-semantics-table\n\t\t\t\t\t._t=","\n\t\t\t\t\t.source=","\n\t\t\t\t/>\n\t\t\t</div>"])),this._selectedEntry.title,(()=>this._onListItemClick(null)),(0,Ec.fa)(Ld.Ce,{transform:{size:24},attributes:{slot:"icon"}}),this._selectedEntry.icon,(0,kc.semanticsToString)(null===(vt=(null===(bt=this._selectedEntry)||void 0===bt?void 0:bt.annotation)||(null===(le=this._selectedEntry)||void 0===le?void 0:le.tagGroup))||void 0===vt?void 0:vt.semantics),null===(uc=this._parent)||void 0===uc?void 0:uc._t,null===(Ac=this._parent)||void 0===Ac?void 0:Ac._t.pnx.semantics_copy,(0,Ec.fa)(Od.jP,{transform:{size:18}}),(0,Ec.fa)(jd.e6,{attributes:{slot:"oncopy"},transform:{size:18}}),this.editable&&"seqtags"!==this._selectedEntry.type?(0,gc.qy)(ho||(ho=(0,mc.A)(['\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\ttitle=','\n\t\t\t\t\t\t\tslot="action"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t",'\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\ttitle=','\n\t\t\t\t\t\t\tslot="action"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</pnx-button>"])),null===(Ud=this._parent)||void 0===Ud?void 0:Ud._t.pnx.semantics_edit,this._onItemEditClick,(0,Ec.fa)(_u.hp,{transform:{size:18}}),null===(Gd=this._parent)||void 0===Gd?void 0:Gd._t.pnx.semantics_delete_annotation,this._onItemDeleteClick,(0,Ec.fa)(Md.yL,{transform:{size:18}})):gc.s6,null===(qd=this._parent)||void 0===qd?void 0:qd._t,"annotation"===(null===(Hd=this._selectedEntry)||void 0===Hd?void 0:Hd.type)?this._selectedEntry.annotation:this._selectedEntry.tagGroup);{var Wd,Zd,Yd;const vt={seqtags:null===(Wd=this._parent)||void 0===Wd?void 0:Wd._t.pnx.semantics_sequence_tags,pictags:null===(Zd=this._parent)||void 0===Zd?void 0:Zd._t.pnx.semantics_picture_tags,annotation:null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.semantics_annotation_tags};return(0,gc.qy)(Dl||(Dl=(0,mc.A)(['<div class="list">\n\t\t\t\t',"\n\t\t\t</div>"])),(this._entries||[]).map((bt=>(0,gc.qy)(Fl||(Fl=(0,mc.A)(["\n\t\t\t\t\t<pnx-list-item\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t\ttooltip=","\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t\t@mouseover=","\n\t\t\t\t\t\t@mouseout=",'\n\t\t\t\t\t>\n\t\t\t\t\t\t<iconify-icon\n\t\t\t\t\t\t\tslot="icon"\n\t\t\t\t\t\t\ticon=','\n\t\t\t\t\t\t\tstyle="font-size: 1.5em"\n\t\t\t\t\t\t></iconify-icon>\n\t\t\t\t\t\t',"\n\t\t\t\t\t\t","\n\t\t\t\t\t\t","\n\t\t\t\t\t\t","\n\t\t\t\t\t</pnx-list-item>\n\t\t\t\t"])),bt.title,vt[bt.type],(()=>this._onListItemClick(bt)),(()=>this._onListItemHover(bt)),(()=>this._onListItemHover(null)),bt.icon,bt.associatedTags>1?(0,gc.qy)(sc||(sc=(0,mc.A)(['\n\t\t\t\t\t\t\t<span slot="icon" class="pnx-badge-count">',"</span>\n\t\t\t\t\t\t"])),bt.associatedTags):gc.s6,"annotation"===(null===bt||void 0===bt?void 0:bt.type)?(0,Ec.fa)(Rd.Cw,{transform:{size:20},styles:{"margin-right":"20px"},attributes:{slot:"action"}}):gc.s6,"seqtags"===(null===bt||void 0===bt?void 0:bt.type)?(0,Ec.fa)(Nd.yv,{transform:{size:20},styles:{"margin-right":"20px"},attributes:{slot:"action"}}):gc.s6,(0,Ec.fa)(du.Xk,{transform:{size:20},attributes:{slot:"action"}})))))}}}SemanticsList.styles=[Ac.Op,Ac.wS,Ac.Fj,(0,gc.AH)(uc||(uc=(0,mc.A)(["\n\t\t.annotation { background: var(--white); }\n\t\tpnx-list-item {\n\t\t\tdisplay: block;\n\t\t\tmargin: 5px 0;\n\t\t}\n\t"])))],SemanticsList.properties={editable:{type:Boolean},_meta:{state:!0},_seqMeta:{state:!0},_entries:{state:!0},_selectedEntry:{state:!0},_annotPresets:{state:!0},_picPresets:{state:!0},_seqPresets:{state:!0}},customElements.define("pnx-semantics-list",SemanticsList)},7694:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsMetadata});var ls,ho,Dl,Fl,sc,uc,mc=le(7528),gc=le(4542),Ac=le(5995),Ec=le(2255),kc=le(3624),du=le(1319),_u=le(700),Md=le(6668),Ld=le(8591),Nd=le(7343);class SemanticsMetadata extends gc.WF{constructor(){super(),this._meta={},this._prevPSVPicNav=null,this._authUrl=null,this._showLinks=!0,this._addTag=!1,this._editTag=null,this._addTagGeom=null,this._editTagSem=null}connectedCallback(){super.connectedCallback(),(0,Ac.onceParentAvailable)(this).then((()=>{var vt,bt,le,ls;this._meta=null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getPictureMetadata(),null===(le=this._parent)||void 0===le||null===(ls=le.oncePSVReady)||void 0===ls||ls.call(le).then((()=>{this._parent.psv.addEventListener("picture-loaded",(()=>{this._meta=this._parent.psv.getPictureMetadata()})),this._parent.psv.addEventListener("annotation-focused",(()=>{const vt=this.shadowRoot.querySelector("pnx-tabs");vt&&vt.setAttribute("activeTabIndex",4)}))})),this._parent.getAPI().getAuthURL().then((vt=>this._authUrl=vt))}))}_blockPicChange(vt){var bt,le,ls,ho;null===(bt=this._parent)||void 0===bt||null===(le=bt.legend)||void 0===le||null===(ls=le.renderRoot.querySelector("pnx-picture-legend"))||void 0===ls||ls.blockOnEditing(vt),null!==(ho=this._parent)&&void 0!==ho&&ho.mini&&(this._parent.mini.style.display=vt?"none":null);const Dl=this._parent.renderRoot.querySelector("pnx-annotations-switch");Dl&&(Dl.style.display=vt?"none":null),vt?(this._prevPSVPicNav=this._parent.psv.getPicturesNavigation(),this._parent.psv.setPicturesNavigation("pic"),this._parent._disableKeyboard(),window.addEventListener("beforeunload",this._onBrowserQuit)):(this._parent.psv.setPicturesNavigation(this._prevPSVPicNav),this._parent._enableKeyboard(),window.removeEventListener("beforeunload",this._onBrowserQuit))}_onBrowserQuit(vt){vt.preventDefault(),vt.returnValue=!0}_checkCanEdit(){var vt,bt;const le=!this._meta.origInstance||(null===(vt=this._parent)||void 0===vt||null===(bt=vt.api)||void 0===bt?void 0:bt._endpoint.startsWith(this._meta.origInstance.href));if(le&&null!==(0,Nd.getUserAccount)())return!0;var ls,ho;if(!le&&confirm(((null===(ls=this._parent)||void 0===ls?void 0:ls._t.pnx.semantics_login_needed)||"").replace("{n}",this._meta.origInstance.instance_name||this._meta.origInstance.href)))window.location.href=this._meta.origInstance.href+window.location.search.replace(/&?nav=pic/,"");else{if(!le||!confirm(((null===(ho=this._parent)||void 0===ho?void 0:ho._t.pnx.semantics_login_needed)||"").replace("{n}",this._parent.getAPI()._metadata.name)))return!1;window.location.href=this._authUrl.replace("<CBURL>",encodeURIComponent(window.location.href))}}_startAddTag(){this._checkCanEdit()&&(this._blockPicChange(!0),this._addTag=!0,this._editTag=!1,this._addTagGeom=null,this._editTagSem=null,this._addTagGeomListener=vt=>{var bt;null===(bt=this.renderRoot.querySelector("#pnx-sem-editor"))||void 0===bt||bt.forceInput(),this._addTagGeom=vt.detail.shape},this._parent.psv.addEventListener("annotation-drawn",this._addTagGeomListener),this._parent.psv.startDrawAnnotation())}_onTagSemChange(vt){this._editTagSem=vt.detail}_onSaveTag(){var vt;const bt=this.renderRoot.querySelector("#pnx-sem-editor");var le;if(bt&&bt.checkValidity()&&this._editTagSem&&this._editTagSem.delta&&0!==this._editTagSem.delta.length){if("annotation"===(null===(vt=this._editTag)||void 0===vt?void 0:vt.type))null===(le=this._parent)||void 0===le||le.api.editPictureAnnotation(this._editTag.annotation.id,this._editTagSem.delta).then((vt=>{const bt=this._meta.properties.annotations.findIndex((bt=>bt.id===vt.id));this._meta.properties.annotations[bt]=vt,this._onCancelEditTag(vt)})).catch((vt=>{var bt;console.error("Can't send annotation",vt),this._onCancelEditTag(this._editTag.annotation),alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail)}));else if(this._addTag&&this._addTagGeom){var ls;this._parent.psv.fixDrawAnnotation(),null===(ls=this._parent)||void 0===ls||ls.api.createPictureAnnotation(this._meta,this._addTagGeom,this._editTagSem.delta).then((vt=>{this._meta.properties.annotations.push(vt),this._onCancelEditTag(vt,!0)})).catch((vt=>{var bt;console.error("Can't send annotation",vt),alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail),this._onCancelEditTag()}))}else if(this._addTag||this._editTag&&"annotation"!==this._editTag.type){var ho;null===(ho=this._parent)||void 0===ho||ho.api.sendPictureSemantics(this._meta,this._editTagSem.delta).then((vt=>{this._meta.properties.semantics=vt.properties.semantics,this._onCancelEditTag(this._editTagSem.delta)})).catch((vt=>{var bt;alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail),console.error("Can't send semantics",vt),this._onCancelEditTag()}))}}else bt.reportValidity()}_onEraseDrawnAnnotation(){this._parent.psv.stopDrawAnnotation(),this._addTagGeom=null,this._parent.psv.startDrawAnnotation()}_onEditTag(vt){var bt,le;this._checkCanEdit()&&(this._blockPicChange(!0),this._addTag=!1,this._addTagGeom=null,this._editTagSem="annotation"===(null===(bt=vt.detail.item)||void 0===bt?void 0:bt.type)?{semantics:vt.detail.item.annotation.semantics}:vt.detail.item.tagGroup,this._editTag=vt.detail.item,"annotation"===(null===(le=vt.detail.item)||void 0===le?void 0:le.type)&&this._parent.psv.focusOnAnnotation(vt.detail.item.annotation.id,!0))}_onCancelEditTag(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.renderRoot.querySelector("#pnx-sem-editor").reset(),this._addTag=!1,this._addTagGeom=null,this._editTag=null,bt||this._parent.psv.stopDrawAnnotation(),this._blockPicChange(!1),this.getUpdateComplete().then((()=>{const bt=this.renderRoot.querySelector("#pnx-sem-list");vt&&bt&&(vt.id?bt.showAnnotation(vt.id):bt.showTagsGroup(vt))}))}_onDeleteTag(vt){var bt;if(this._checkCanEdit()&&confirm(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_delete_annotation_confirm)){const bt=vt.detail.item;if("annotation"===(null===bt||void 0===bt?void 0:bt.type)){var le;null===(le=this._parent)||void 0===le||le.api.deletePictureAnnotation(bt.annotation.id).then((()=>{var vt;const le=Object.assign({},this._meta);le.properties.annotations=this._meta.properties.annotations.filter((vt=>vt.id!=bt.annotation.id)),this._meta=le,this._parent.psv.toggleAllAnnotations(!0),null===(vt=this.renderRoot.querySelector("pnx-semantics-list"))||void 0===vt||vt._onPicChange()})).catch((vt=>{var bt;console.error("Can't send annotation",vt),alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail)}))}else{var ls;const vt=bt.tagGroup.semantics.map((vt=>Object.assign({action:"delete"},vt)));null===(ls=this._parent)||void 0===ls||ls.api.sendPictureSemantics(this._meta,vt).then((vt=>{var bt;this._meta.properties.semantics=vt.properties.semantics,null===(bt=this.renderRoot.querySelector("pnx-semantics-list"))||void 0===bt||bt._onPicChange()})).catch((vt=>{var bt;alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail),console.error("Can't send semantics",vt)}))}}}render(){var vt,bt,le,uc,Ld,Rd,Od,jd,Ud,Gd;if(null===(vt=this._meta)||void 0===vt||!vt.properties)return;const qd=!this._meta.origInstance&&(this._authUrl||null!==(0,Nd.getUserAccount)());return(0,gc.qy)(ls||(ls=(0,mc.A)(["\n\t\t\t","\n\t\t"])),this._addTag||this._editTag?(0,gc.qy)(ho||(ho=(0,mc.A)(['\n\t\t\t\t<div class="data-block">\n\t\t\t\t\t<h5>\n\t\t\t\t\t\t','\n\n\t\t\t\t\t\t<pnx-button-group>\n\t\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\t\tkind="fullsuccess"\n\t\t\t\t\t\t\t\tstyle="margin-right: 3px"\n\t\t\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t\t\t@click=","\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t",'\n\t\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\t\tkind="fullwarn"\n\t\t\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t\t\t@click=","\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t</pnx-button-group>\n\t\t\t\t\t</h5>\n\t\t\t\t\t<div>\n\t\t\t\t\t\t","\n\t\t\t\t\t\t",'\n\n\t\t\t\t\t\t<pnx-semantics-editor\n\t\t\t\t\t\t\tid="pnx-sem-editor"\n\t\t\t\t\t\t\tstyle="display: block; margin-top: 5px"\n\t\t\t\t\t\t\t.semantics=',"\n\t\t\t\t\t\t\t._t=","\n\t\t\t\t\t\t\t@change=","\n\t\t\t\t\t\t></pnx-semantics-editor>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t"])),this._addTag?null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_add_annotation:null===(le=this._parent)||void 0===le?void 0:le._t.pnx.semantics_edit,null===(uc=this._parent)||void 0===uc?void 0:uc._t.pnx.semantics_save,this._onSaveTag,(0,Ac.fa)(Ec.jk),null===(Ld=this._parent)||void 0===Ld?void 0:Ld._t.pnx.semantics_undo,(()=>{var vt;return this._onCancelEditTag((null===(vt=this._editTag)||void 0===vt?void 0:vt.annotation)||this._editTag)}),(0,Ac.fa)(kc.GR),this._addTag?null===(Rd=this._parent)||void 0===Rd?void 0:Rd._t.pnx.semantics_draw_annotation:gc.s6,this._addTag&&this._addTagGeom?(0,gc.qy)(Dl||(Dl=(0,mc.A)(['<pnx-button\n\t\t\t\t\t\t\t\tkind="full"\n\t\t\t\t\t\t\t\tstyle="margin-top: 5px; width: 100%"\n\t\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t"," ","\n\t\t\t\t\t\t</pnx-button>"])),this._onEraseDrawnAnnotation,(0,Ac.fa)(_u.IP),null===(Od=this._parent)||void 0===Od?void 0:Od._t.pnx.semantics_erase_annotation):gc.s6,(null===(jd=this._editTagSem)||void 0===jd?void 0:jd.semantics)||[],this._parent._t,this._onTagSemChange):(0,gc.qy)(Fl||(Fl=(0,mc.A)(["\n\t\t\t\t",'\n\t\t\t\t\n\t\t\t\t<pnx-semantics-list\n\t\t\t\t\tid="pnx-sem-list"\n\t\t\t\t\t.editable=',"\n\t\t\t\t\t@select=","\n\t\t\t\t\t@edit-click=","\n\t\t\t\t\t@delete-click=","\n\t\t\t\t\t._parent=","\n\t\t\t\t/>\n\t\t\t"])),this._showLinks?(0,gc.qy)(sc||(sc=(0,mc.A)(['\n\t\t\t\t\t<div class="top-btns">\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="full"\n\t\t\t\t\t\t\tsize="md"\n\t\t\t\t\t\t\tstyle="flex: 2 1"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t"," ",'\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="full"\n\t\t\t\t\t\t\tsize="md"\n\t\t\t\t\t\t\tstyle="flex: 1 1"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>"," ","</pnx-button>\n\t\t\t\t\t</div>\n\t\t\t\t"])),this._startAddTag,(0,Ac.fa)(du.jk),null===(Ud=this._parent)||void 0===Ud?void 0:Ud._t.pnx.semantics_add_annotation,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showSemanticsDoc()}),(0,Ac.fa)(Md.iW),null===(Gd=this._parent)||void 0===Gd?void 0:Gd._t.pnx.semantics_doc):gc.s6,qd,(vt=>this._showLinks=null==vt.detail.item),this._onEditTag,this._onDeleteTag,this._parent))}}SemanticsMetadata.styles=[Ld.R,Ld.Tk,(0,gc.AH)(uc||(uc=(0,mc.A)(["\n\t\t.top-btns, pnx-semantics-list {\n\t\t\tfont-size: 0.8em;\n\t\t}\n\t\t.top-btns {\n\t\t\tdisplay: flex;\n\t\t\tmargin: 5px 0;\n\t\t\tgap: 5px;\n\t\t}\n\t\t.top-btns > * {\n\t\t\toverflow: hidden;\n\t\t}\n\t\t.top-btns > *::part(btn) {\n\t\t\theight: unset;\n\t\t}\n\t\t.data-block {\n\t\t\twidth: 100%;\n\t\t}\n\t\t.data-block h5 {\n\t\t\tjustify-content: space-between;\n\t\t}\n\t"])))],SemanticsMetadata.properties={_meta:{state:!0},_prevPSVPicNav:{state:!0},_authUrl:{state:!0},_showLinks:{state:!0},_addTag:{state:!0},_editTag:{state:!0},_addTagGeom:{state:!0},_editTagSem:{state:!0}},customElements.define("pnx-semantics-metadata",SemanticsMetadata)},3765:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ShareMenu});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(8591),mc=le(2e3),gc=le(7516),Ac=le(6002),Ec=le(7964);class ShareMenu extends Fl.WF{constructor(){super(),this._onUrlChange()}connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._onUrlChange(),this._parent.urlHandler.addEventListener("url-changed",this._onUrlChange.bind(this))}))}_onUrlChange(){var vt,bt;const le=(this["base-url"]||window.location.href).replace(/\/$/,"");this._url=(null===(vt=this._parent)||void 0===vt||null===(bt=vt.urlHandler)||void 0===bt?void 0:bt.nextShortLink(le))||le}render(){var vt,bt,le,ho,uc,kc;const du='<iframe src="'.concat(this._url,'" style="border: none; width: 500px; height: 300px"></iframe>');return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["\n\t\t\t<h4>"," ",'</h4>\n\t\t\t<pnx-tabs>\n\t\t\t\t<h4 slot="title">'," ",'</h4>\n\t\t\t\t<div slot="content">\n\t\t\t\t\t<div class="links">\n\t\t\t\t\t\t<input type="text" readonly value=',' style="flex: 2" />\n\t\t\t\t\t\t<pnx-copy-button ._t='," text=",'></pnx-copy-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t\t\n\t\t\t\t<h4 slot="title">'," ",'</h4>\n\t\t\t\t<div slot="content">\n\t\t\t\t\t<div class="embed">\n\t\t\t\t\t\t<pnx-link-button\n\t\t\t\t\t\t\thref="https://docs.panoramax.fr/web-viewer/03_URL_settings/"\n\t\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t'," ","\n\t\t\t\t\t\t</pnx-link-button>\n\t\t\t\t\t\t<textarea readonly .value=","></textarea>\n\t\t\t\t\t\t<pnx-copy-button\n\t\t\t\t\t\t\t._t=","\n\t\t\t\t\t\t\ttext=",'\n\t\t\t\t\t\t\tstyle="width: 100%"\n\t\t\t\t\t\t></pnx-copy-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</pnx-tabs>'])),(0,sc.fa)(Ac.QO),null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.share,(0,sc.fa)(Ec.CQ),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.share_page,this._url,null===(le=this._parent)||void 0===le?void 0:le._t,this._url,(0,sc.fa)(mc.e5),null===(ho=this._parent)||void 0===ho?void 0:ho._t.pnx.share_embed,(0,sc.fa)(gc.faCircleInfo),null===(uc=this._parent)||void 0===uc?void 0:uc._t.pnx.share_embed_docs,du,null===(kc=this._parent)||void 0===kc?void 0:kc._t,du)}}ShareMenu.styles=[uc.Op,uc.hF,uc.PC,uc.YC,(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\tdiv[slot="content"] {\n\t\t\tmargin-top: 10px;\n\t\t}\n\t\t.links {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t}\n\t\t.embed {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\talign-items: center;\n\t\t\tflex-direction: column;\n\t\t}\n\t'])))],ShareMenu.properties={_url:{state:!0},"base-url":{type:String}},customElements.define("pnx-share-menu",ShareMenu)},8794:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{LocationPrecisionDoc:()=>ls.A,MapBackground:()=>ho.A,MapFilters:()=>Dl.A,MapLayers:()=>Fl.A,MapLegend:()=>sc.A,MiniPictureLegend:()=>uc.A,PictureLegend:()=>mc.A,PictureMetadata:()=>gc.A,PlayerOptions:()=>Ac.A,QualityScoreDoc:()=>Ec.A,ReportForm:()=>kc.A,SemanticsDoc:()=>du.A,SemanticsDownload:()=>_u.A,SemanticsFilters:()=>Md.A,SemanticsList:()=>Ld.A,SemanticsMetadata:()=>Nd.A,Share:()=>Rd.A});var ls=le(5537),ho=le(5036),Dl=le(3581),Fl=le(5334),sc=le(4749),uc=le(1636),mc=le(3589),gc=le(6993),Ac=le(499),Ec=le(5187),kc=le(9588),du=le(5457),_u=le(7959),Md=le(3728),Ld=le(9671),Nd=le(7694),Rd=le(3765)},8591:(vt,bt,le)=>{"use strict";le.d(bt,{BQ:()=>tm,Fj:()=>$d,HM:()=>Qd,Lt:()=>Zd,Op:()=>Hd,PC:()=>Wd,R:()=>qd,Tk:()=>nm,YC:()=>Kd,hF:()=>Yd,kq:()=>Xd,lk:()=>rm,nd:()=>Gd,qf:()=>sp,s0:()=>Jd,tp:()=>em,wS:()=>im});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc,du,_u,Md,Ld,Nd,Rd,Od,jd=le(7528),Ud=le(4542);const Gd=(0,Ud.AH)(ls||(ls=(0,jd.A)(["\n\t.pnx-panel {\n\t\tposition: absolute;\n\t\ttransition: opacity 0.2s 0.1s;\n\t\tborder-radius: 25px;\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tbackground-color: var(--widget-bg);\n\t\tcolor: var(--widget-font);\n\t\tmin-width: 250px;\n\t\tbox-sizing: border-box;\n\t\tfont-family: var(--font-family);\n\t}\n\n\t.pnx-panel.pnx-hidden {\n\t\topacity: 0;\n\t\tdisplay: block !important;\n\t\tpointer-events: none;\n\t}\n\n\t.pnx-panel.pnx-padded {\n\t\tpadding: 15px;\n\t}\n"]))),qd=(0,Ud.AH)(ho||(ho=(0,jd.A)(["\n\t.pnx-hidden { display: none !important; }\n"]))),Hd=(0,Ud.AH)(Dl||(Dl=(0,jd.A)(["\n\t.svg-inline--fa {\n\t\tdisplay: var(--fa-display, inline-block);\n\t\theight: 1em;\n\t\toverflow: visible;\n\t\tvertical-align: -0.125em;\n\t}\n\tsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\n\t\toverflow: visible;\n\t\tbox-sizing: content-box;\n\t}\n\t@keyframes fa-spin {\n\t\tfrom {transform:rotate(0deg);}\n\t\tto {transform:rotate(360deg);}\n\t}\n\t.fa-spin {\n\t\tanimation: fa-spin 2s infinite linear;\n\t}\n"]))),Wd=(0,Ud.AH)(Fl||(Fl=(0,jd.A)(["\n\ttextarea {\n\t\tbackground-color: var(--widget-bg);\n\t\tcolor: var(--widget-font);\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tborder-radius: 10px;\n\t\tpadding: 5px;\n\t\twidth: 100%;\n\t\tbox-sizing: border-box;\n\t\tfont-family: var(--font-family);\n\t\tresize: vertical;\n\t}\n"]))),Zd=(0,Ud.AH)(sc||(sc=(0,jd.A)(["\n\tselect {\n\t\tbackground-color: var(--widget-bg);\n\t\tcolor: var(--widget-font);\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tborder-radius: 20px;\n\t\tfont-size: 16px;\n\t\tpadding: 2px 10px;\n\t\tfont-family: var(--font-family);\n\t}\n\n\tselect[disabled] {\n\t\tbackground-color: var(--widget-bg-inactive);\n\t}\n\n\tselect.pnx-100w {\n\t\twidth: 100%;\n\t\tbox-sizing: border-box;\n\t}\n"]))),Yd=(0,Ud.AH)(uc||(uc=(0,jd.A)(["\n\tinput {\n\t\tbackground-color: var(--widget-bg);\n\t\tcolor: var(--widget-font);\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tborder-radius: 20px;\n\t\tfont-size: 16px;\n\t\tpadding: 2px 10px;\n\t\tfont-family: var(--font-family);\n\t}\n\n\tinput.pnx-100w {\n\t\twidth: 100%;\n\t\tbox-sizing: border-box;\n\t}\n"]))),Qd=(0,Ud.AH)(mc||(mc=(0,jd.A)(["\n\t:host {\n\t\tdisplay: inline-flex;\n\t}\n\t\n\t/* Common properties */\n\t.pnx-btn {\n\t\twhite-space: nowrap;\n\t\tfont-size: 1em;\n\t\tfont-family: var(--font-family);\n\t\tflex-grow: 1;\n\t\tflex-shrink: 1;\n\t\ttext-align: center;\n\t\tpadding: 5px;\n\t\tfont-weight: 600;\n\t\tflex-basis: 30%;\n\t\tline-height: 18px;\n\t\tjustify-content: center;\n\t\tborder-radius: 8px;\n\t\tcursor: pointer;\n\t\ttext-decoration: none;\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tgap: 5px;\n\t\tposition: relative;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmin-width: 26px;\n\t}\n\n\t.pnx-btn:disabled { color: var(--widget-bg-inactive); }\n\n\t.pnx-btn.pnx-btn-active,\n\t.pnx-btn.pnx-btn-active:hover,\n\t.pnx-btn.pnx-btn-full.pnx-btn-active:hover,\n\t.pnx-btn.pnx-btn-outline.pnx-btn-active:hover {\n\t\tbackground-color: var(--widget-bg-active);\n\t\tborder-color: var(--widget-bg-active);\n\t\tcolor: var(--widget-font-active);\n\t}\n\n\t.pnx-btn .svg-inline--fa,\n\t.pnx-btn ::slotted(.svg-inline--fa),\n\t.pnx-btn slot .svg-inline--fa {\n\t\theight: 16px;\n\t\tpointer-events: none;\n\t}\n\n\t/* Sizing */\n\t.pnx-btn-sm {\n\t\tborder-radius: 6px;\n\t\tline-height: 12px;\n\t\tfont-size: 12px;\n\t\tmin-width: unset;\n\t}\n\n\t.pnx-btn.pnx-btn-sm .svg-inline--fa,\n\t.pnx-btn.pnx-btn-sm ::slotted(.svg-inline--fa) {\n\t\theight: 12px;\n\t}\n\n\t.pnx-btn-l {\n\t\tborder-radius: 12px;\n\t\theight: 24px;\n\t\tline-height: 24px;\n\t\tfont-size: 20px;\n\t\tmin-width: 24px;\n\t}\n\n\t.pnx-btn-xl {\n\t\tborder-radius: 20px;\n\t\theight: 40px;\n\t\tline-height: 40px;\n\t\tfont-size: 16px;\n\t\tfont-weight: 500;\n\t\tmin-width: 40px;\n\t\tpadding: 0 10px;\n\t\tgap: 8px;\n\t}\n\n\t.pnx-btn.pnx-btn-xl .svg-inline--fa,\n\t.pnx-btn.pnx-btn-xl ::slotted(.svg-inline--fa) {\n\t\theight: 16px;\n\t}\n\n\t.pnx-btn-xxl {\n\t\tborder-radius: 28px;\n\t\theight: 56px;\n\t\tline-height: 56px;\n\t\tfont-size: 24px;\n\t\tmin-width: 56px;\n\t}\n\n\t.pnx-btn.pnx-btn-xxl .svg-inline--fa,\n\t.pnx-btn.pnx-btn-xxl ::slotted(.svg-inline--fa) {\n\t\theight: 24px;\n\t}\n\n\t/* Fully-filled style */\n\t.pnx-btn-full {\n\t\tbackground-color: var(--widget-bg-primary);\n\t\tcolor: var(--widget-font-direct);\n\t\tborder: none;\n\t}\n\n\t.pnx-btn-full:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-primary-hover);\n\t}\n\n\t/* Fully-filled warning style */\n\t.pnx-btn-fullwarn {\n\t\tbackground-color: var(--widget-bg-warn);\n\t\tcolor: var(--widget-font-warn);\n\t\tborder: none;\n\t}\n\n\t.pnx-btn-fullwarn:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-warn);\n\t}\n\n\t/* Fully-filled success style */\n\t.pnx-btn-fullsuccess {\n\t\tbackground-color: var(--widget-bg-success);\n\t\tcolor: var(--widget-font-success);\n\t\tborder: none;\n\t}\n\n\t.pnx-btn-fullsuccess:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-success);\n\t}\n\n\t/* Outline style */\n\t.pnx-btn-outline {\n\t\tborder: 1px solid var(--widget-border-btn);\n\t\tcolor: var(--widget-font-direct);\n\t\tbackground-color: var(--widget-bg);\n\t}\n\n\t.pnx-btn-outline:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-hover);\n\t}\n\n\t/* Flat style */\n\t.pnx-btn-flat,\n\t.pnx-btn-flat.pnx-btn-active,\n\t.pnx-btn-flat.pnx-btn-active:hover,\n\t.pnx-btn-flat:not(:disabled):hover {\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tcolor: var(--widget-font);\n\t\tbackground-color: var(--widget-bg);\n\t}\n\n\t.pnx-btn-flat:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-hover);\n\t}\n\n\t/* Superflat style */\n\t.pnx-btn-superflat,\n\t.pnx-btn-superflat.pnx-btn-active,\n\t.pnx-btn-superflat.pnx-btn-active:hover,\n\t.pnx-btn-superflat:not(:disabled):hover {\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tcolor: var(--widget-font-direct);\n\t\tbackground-color: var(--widget-bg);\n\t}\n\n\t.pnx-btn-superflat:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-hover);\n\t}\n\n\t/* Inline style */\n\t.pnx-btn-inline,\n\t.pnx-btn-inline.pnx-btn-active,\n\t.pnx-btn-inline.pnx-btn-active:hover,\n\t.pnx-btn-inline:not(:disabled):hover,\n\t.pnx-btn-superinline,\n\t.pnx-btn-superinline.pnx-btn-active,\n\t.pnx-btn-superinline.pnx-btn-active:hover,\n\t.pnx-btn-superinline:not(:disabled):hover {\n\t\tborder: none;\n\t\tcolor: var(--widget-font);\n\t\tbackground: none;\n\t}\n\n\t.pnx-btn-inline:not(:disabled):hover,\n\t.pnx-btn-superinline:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-hover);\n\t}\n\n\t/* Superinline style */\n\t.pnx-btn-superinline,\n\t.pnx-btn-superinline.pnx-btn-active,\n\t.pnx-btn-superinline.pnx-btn-active:hover,\n\t.pnx-btn-superinline:not(:disabled):hover {\n\t\tcolor: var(--widget-font-direct);\n\t}\n"]))),Xd=(0,Ud.AH)(gc||(gc=(0,jd.A)(['\n\tpnx-button-group > pnx-button {\n\t\tdisplay: inline-flex;\n\t}\n\n\tpnx-button-group > pnx-button::part(btn) {\n\t\theight: unset;\n\t}\n\n\t/* Togglable in group */\n\tpnx-button-group > pnx-togglable-group > pnx-button {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t}\n\n\t/* Row */\n\tpnx-button-group[dir="row"] > :not(:first-child):not(:last-child)::part(btn),\n\tpnx-button-group[dir="row"] > :not(:first-child):not(:last-child) > ::part(btn) {\n\t\tborder-radius: 0;\n\t\tborder-left: none;\n\t\tborder-right: none;\n\t}\n\n\tpnx-button-group[dir="row"] > :first-child::part(btn),\n\tpnx-button-group[dir="row"] > :first-child > ::part(btn) {\n\t\tborder-top-right-radius: 0;\n\t\tborder-bottom-right-radius: 0;\n\t\tborder-right: none;\n\t}\n\n\tpnx-button-group[dir="row"] > :last-child::part(btn),\n\tpnx-button-group[dir="row"] > :last-child > ::part(btn) {\n\t\tborder-top-left-radius: 0;\n\t\tborder-bottom-left-radius: 0;\n\t\tborder-left: none;\n\t}\n\n\t/* Column */\n\tpnx-button-group[dir="column"] > :not(:first-child):not(:last-child)::part(btn),\n\tpnx-button-group[dir="column"] > :not(:first-child):not(:last-child) > ::part(btn) {\n\t\tborder-radius: 0;\n\t\tborder-top: none;\n\t\tborder-bottom: none;\n\t}\n\n\tpnx-button-group[dir="column"] > :first-child::part(btn),\n\tpnx-button-group[dir="column"] > :first-child > ::part(btn) {\n\t\tborder-bottom-right-radius: 0;\n\t\tborder-bottom-left-radius: 0;\n\t\tborder-bottom: none;\n\t}\n\n\tpnx-button-group[dir="column"] > :last-child::part(btn),\n\tpnx-button-group[dir="column"] > :last-child > ::part(btn) {\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t\tborder-top: none;\n\t}\n']))),Kd=(0,Ud.AH)(Ac||(Ac=(0,jd.A)(['\n\th1, h2, h3, h4, h5, h6 {\n\t\tfont-family: var(--font-family);\n\t}\n\t\n\th3 {\n\t\tfont-size: 1.1em;\n\t\tline-height: 1.1em;\n\t\tfont-weight: 500;\n\t\tmargin: 10px 0 10px 0;\n\t}\n\n\th4 {\n\t\tfont-size: 1.0em;\n\t\tline-height: 1.0em;\n\t\tfont-weight: 500;\n\t\tmargin: 15px 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: flex-start;\n\t\tgap: 5px;\n\t}\n\n\th4:first-of-type { margin-top: 0; }\n\n\th4 > svg.svg-inline--fa {\n\t\theight: 18px;\n\t}\n\n\th4[slot="title"] {\n\t\tmargin: 0;\n\t\tjustify-content: center;\n\t\tfont-size: 0.8em;\n\t\tline-height: 2em;\n\t\tpadding: 0.5em 0;\n\t}\n\th4[slot="title"] svg.svg-inline--fa {\n\t\theight: 14px;\n\t}\n']))),Jd=(0,Ud.AH)(Ec||(Ec=(0,jd.A)(["\n\t.pnx-active-icon {\n\t\tbox-sizing: border-box;\n\t\tbackground-color: var(--orange);\n\t\tborder: 3px solid #fff;\n\t\tborder-radius: 8px;\n\t\theight: 15px;\n\t\tleft: 20px;\n\t\tposition: absolute;\n\t\ttop: 5px;\n\t\twidth: 15px;\n\t}\n"]))),$d=(0,Ud.AH)(kc||(kc=(0,jd.A)(["\n\t.pnx-badge-count {\n\t\tbox-sizing: border-box;\n\t\tbackground-color: var(--grey-pale);\n\t\tborder-radius: 8px;\n\t\tright: -6px;\n\t\tposition: absolute;\n\t\ttop: -6px;\n\t\twidth: 12px;\n\t\theight: 12px;\n\t\tfont-size: 10px;\n\t\ttext-align: center;\n\t\tline-height: 12px;\n\t\tfont-weight: 800;\n\t}\n"]))),sp=(0,Ud.AH)(du||(du=(0,jd.A)(["\n\t@keyframes animatedBackground {\n\t\tfrom {\n\t\t\tbackground-position: 0 0;\n\t\t}\n\t\tto {\n\t\t\tbackground-position: 1000px 0;\n\t\t}\n\t}\n\n\t.pnx-placeholder-loading {\n\t\twidth: 100px;\n\t\theight: 100px;\n\t\tbackground-image: linear-gradient(\n\t\t\t90deg,\n\t\t\t#e4e4e4 0%,\n\t\t\t#f1f1f1 40%,\n\t\t\t#ededed 60%,\n\t\t\t#e4e4e4 100%\n\t\t);\n\t\tbackground-position: 0px 0px;\n\t\tbackground-repeat: repeat;\n\t\tanimation: animatedBackground 5s linear infinite;\n\t}\n"]))),tm=((0,Ud.AH)(_u||(_u=(0,jd.A)(["\n\tdetails summary {\n\t\tfont-size: 1.0em;\n\t\tline-height: 1.0em;\n\t\tfont-weight: 500;\n\t\tmargin: 15px 0;\n\t\tcursor: pointer;\n\t}\n\n\tdetails summary svg {\n\t\theight: 18px;\n\t\tvertical-align: sub;\n\t\tmargin-right: 2px;\n\t}\n"]))),(0,Ud.AH)(Md||(Md=(0,jd.A)(["\n\t@media print {\n\t\t.pnx-print-hidden { display: none !important; }\n\t}\n"])))),em=(0,Ud.AH)(Ld||(Ld=(0,jd.A)(["\n\ttable {\n\t\tborder-collapse: collapse;\n\t\tfont-size: 0.9rem;\n\t\twidth: 100%;\n\t\tmax-width: 100%;\n\t\tfont-family: var(--font-family);\n\t\tbackground: var(--white);\n\t}\n\n\tth, td {\n\t\tpadding: 10px;\n\t\ttext-align: left;\n\t\tborder-bottom: 1px solid #ddd;\n\t}\n\n\tth { font-weight: 600; }\n"]))),im=(0,Ud.AH)(Nd||(Nd=(0,jd.A)(["\n\ticonify-icon {\n\t\tdisplay: inline-block;\n\t\twidth: 1em;\n\t\theight: 1em;\n\t}\n"]))),nm=(0,Ud.AH)(Rd||(Rd=(0,jd.A)(["\n\t.data-block {\n\t\tdisplay: inline-block;\n\t\tmargin: 8px 0;\n\t\tbox-sizing: border-box;\n\t\tvertical-align: top;\n\t}\n\t.data-block h5 {\n\t\tfont-size: 0.8em;\n\t\tfont-weight: 400;\n\t\tcolor: var(--blue-dark);\n\t\tmargin: 0 0 5px 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tgap: 5px;\n\t}\n\t.data-block h5 pnx-button { vertical-align: middle; }\n\t.data-block h5 svg.svg-inline--fa { height: 14px; }\n\t.data-block div {\n\t\tfont-size: 0.8em;\n\t}\n"]))),rm=(0,Ud.AH)(Od||(Od=(0,jd.A)(["\n\th4 {\n\t\tfont-size: 1.3em;\n\t\tfont-weight: 600;\n\t\tborder-bottom: 3px solid var(--grey-pale);\n\t\tpadding-bottom: 10px;\n \t\tpadding-top: 5px;\n\t}\n"])))},6254:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>AnnotationsSwitch});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(6249),mc=le(6311),gc=le(508),Ac=le(1198),Ec=le(8591),kc=le(7343);class AnnotationsSwitch extends Fl.WF{constructor(){super(),this._annotationsToggled=!1,this._warnNoAnnot=!1,this._warnNoAnnotTooltip=!1,this.size="xl"}connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>{this._parent.onceReady().then((()=>{this._parent.psv.addEventListener("annotations-toggled",(vt=>{this._annotationsToggled=vt.detail.visible,this._persistAnnotationsLocalStorage(this._annotationsToggled)})),this._warnNoAnnot=!(0,gc.hasAnnotations)(this._parent.psv.getPictureMetadata()),this._parent.psv.addEventListener("picture-loaded",(()=>{this._warnNoAnnot=!(0,gc.hasAnnotations)(this._parent.psv.getPictureMetadata())}))})),this._parent.onceFirstPicLoaded().then((()=>{this._annotationsToggled=this._parent.psv.areAnnotationsVisible()||!1,this._persistAnnotationsLocalStorage(this._annotationsToggled)}))}))}_persistAnnotationsLocalStorage(vt){localStorage.setItem(kc.DISABLE_ANNOTATIONS_PARAM,vt?"false":"true")}_onClick(){!this._annotationsToggled&&this._warnNoAnnot&&(this._warnNoAnnotTooltip=!0,setTimeout((()=>this._warnNoAnnotTooltip=!1),2e3)),this._persistAnnotationsLocalStorage(!this._annotationsToggled),this._parent.psv.toggleAllAnnotations(!this._annotationsToggled)}render(){var vt,bt,le;const ho={"pnx-panel":!0,"pnx-hidden":!this._warnNoAnnotTooltip};return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-button\n\t\t\t\tkind="superflat"\n\t\t\t\tsize=','\n\t\t\t\tstyle="vertical-align: middle"\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t\ttitle=',"\n\t\t\t\tactive=","\n\t\t\t\t@click=","\n\t\t\t>\n\t\t\t\t","\n\t\t\t\t","\n\t\t\t</pnx-button>\n\t\t\t<div\n\t\t\t\tclass=","\n\t\t\t\t@click=","\n\t\t\t>\n\t\t\t\t","\n\t\t\t</div>\n\t\t"])),this.size,this._annotationsToggled?null===(vt=this._parent._t)||void 0===vt?void 0:vt.pnx.semantics_hide_annotations:null===(bt=this._parent._t)||void 0===bt?void 0:bt.pnx.semantics_show_annotations,this._annotationsToggled?"":Fl.s6,this._onClick,(0,sc.fa)(uc.DX,{styles:{height:"20px"}}),this._warnNoAnnot?(0,sc.fa)(mc.JA,{classes:"pnx-annotations-switch-empty"}):Fl.s6,(0,Ac.H)(ho),(()=>this._warnNoAnnotTooltip=!1),null===(le=this._parent._t)||void 0===le?void 0:le.pnx.semantics_zero_annotations)}}AnnotationsSwitch.styles=[Ec.nd,(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\t.pnx-panel {\n\t\t\tpadding: 5px;\n\t\t\tmargin-top: 5px;\n\t\t\twidth: max-content;\n \t\t\tmin-width: unset;\n\t\t}\n\n\t\t/* Custom button look */\n\t\tpnx-button::part(btn) {\n\t\t\tborder-radius: 8px;\n\t\t\theight: 26px;\n\t\t\twidth: 26px;\n\t\t}\n\n\t\tpnx-button[size="xl"]::part(btn) {\n\t\t\tborder-radius: 8px;\n\t\t\theight: 38px;\n\t\t\twidth: 38px;\n\t\t}\n\n\t\tpnx-button[active]::part(btn),\n\t\tpnx-button[active]:hover::part(btn) {\n\t\t\tbackground-color: var(--widget-bg-active) !important;\n\t\t\tborder-color: var(--widget-bg-active) !important;\n\t\t\tcolor: var(--widget-font-active) !important;\n\t\t}\n\n\t\t/* No-annotations badge */\n\t\t.pnx-annotations-switch-empty {\n\t\t\tposition: absolute;\n\t\t\ttop: 1px;\n\t\t\tright: 1px;\n\t\t\tcolor: var(--orange);\n\t\t\theight: 8px;\n\t\t}\n\n\t\tpnx-button[size="xl"] .pnx-annotations-switch-empty {\n\t\t\ttop: 2px;\n\t\t\tright: 2px;\n\t\t\theight: 12px;\n\t\t}\n\n\t\tpnx-button[active] .pnx-annotations-switch-empty {\n\t\t\tcolor: var(--yellow);\n\t\t}\n\t'])))],AnnotationsSwitch.properties={size:{type:String},_annotationsToggled:{state:!0},_warnNoAnnot:{state:!0},_warnNoAnnotTooltip:{state:!0}},customElements.define("pnx-annotations-switch",AnnotationsSwitch)},4450:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Button});var ls=le(4542),ho=le(8591);class Button extends ls.WF{constructor(){super(),this.active=!1,this.disabled=!1,this.kind="full",this.size="md"}connectedCallback(){super.connectedCallback(),"submit"===this.type&&this.addEventListener("click",(()=>{var vt;return null===(vt=this.closest("FORM"))||void 0===vt?void 0:vt.requestSubmit()}))}render(){const vt=document.createElement("button");vt.setAttribute("part","btn"),this.constructor.observedAttributes.filter((vt=>void 0!==this[vt]&&!1!==this[vt]&&!["active","kind","size"].includes(vt))).forEach((bt=>vt.setAttribute(bt,this[bt]))),vt.classList.add("pnx-btn","pnx-btn-".concat(this.kind),"pnx-btn-".concat(this.size)),this.active&&vt.classList.add("pnx-btn-active");const bt=document.createElement("slot");return vt.appendChild(bt),vt}}Button.styles=ho.HM,Button.properties={active:{type:Boolean},kind:{type:String},size:{type:String},disabled:{type:Boolean},type:{type:String},title:{type:String}},customElements.define("pnx-button",Button)},7679:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ButtonGroup});var ls,ho,Dl=le(7528),Fl=le(4542);le(1870);class ButtonGroup extends Fl.WF{constructor(){super(),this.dir="row",this.size="md"}render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['<div class="'," ",'">\n\t\t\t<slot></slot>\n\t\t</div>'])),this.dir,this.size)}}ButtonGroup.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\tdiv {\n\t\t\tdisplay: flex;\n\t\t\tflex-wrap: nowrap;\n\t\t\talign-items: stretch;\n\t\t\talign-content: stretch;\n\t\t\tjustify-content: center;\n\t\t}\n\n\t\tdiv.row { flex-direction: row; }\n\t\tdiv.column { flex-direction: column; }\n\n\t\tdiv.xl { line-height: 38px; font-size: 20px; }\n\t\tdiv.row.xl { height: 38px; }\n\t\tdiv.column.xl { width: 38px; }\n\n\t\tdiv.row ::slotted(*) { height: 100%; min-width: 24px; }\n\t\tdiv.column ::slotted(*) { width: 100%; min-height: 24px; }\n\n\t\tdiv.row.xl ::slotted(*) { min-width: 38px; }\n\t\tdiv.column.xl ::slotted(*) { min-height: 38px; }\n\t"]))),ButtonGroup.properties={dir:{type:String},size:{type:String}},customElements.define("pnx-button-group",ButtonGroup)},1903:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>CopyButton});var ls,ho,Dl,Fl,sc=le(7528),uc=le(4542),mc=le(5995),gc=le(174),Ac=le(4189),Ec=le(8591),kc=le(1198);class CopyButton extends uc.WF{constructor(){super(),this.data="",this.input="",this.unstyled=!1,this.kind="full",this.size="md",this._active=!1,this.addEventListener("click",this._onClick)}_onClick(vt){var bt;let le;if(vt.stopPropagation(),""!==this.input){const vt=document.getElementById(this.input);le=vt.innerText||vt.value}else""!==this.text&&(le=this.text);null!==(bt=navigator)&&void 0!==bt&&bt.clipboard?(navigator.clipboard.writeText(le),this._active=!0,setTimeout((()=>this._active=!1),2e3)):alert("Clipboard is not available")}render(){var vt,bt;const le={"pnx-btn":!this.unstyled,"pnx-btn-full":!this.unstyled,"pnx-btn-active":!this.unstyled&&this._active,"pnx-btn-unstyled":this.unstyled,["pnx-btn-".concat(this.kind)]:!this.unstyled,["pnx-btn-".concat(this.size)]:!this.unstyled};return(0,uc.qy)(ls||(ls=(0,sc.A)(["<button title="," class=",' part="btn">\n\t\t\t',"\n\t\t</button>"])),this.title,(0,kc.H)(le),this._active?(0,uc.qy)(ho||(ho=(0,sc.A)(['<slot name="oncopy">'," ","</slot>"])),(null===(vt=this._t)||void 0===vt?void 0:vt.pnx.copied)||"",(0,mc.fa)(gc.e6)):(0,uc.qy)(Dl||(Dl=(0,sc.A)(["<slot>"," ","</slot>"])),(0,mc.fa)(Ac.jP),(null===(bt=this._t)||void 0===bt?void 0:bt.pnx.copy)||""))}}CopyButton.styles=[Ec.Op,Ec.HM,(0,uc.AH)(Fl||(Fl=(0,sc.A)(["\n\t\t.pnx-btn-unstyled {\n\t\t\tborder: none;\n\t\t\tbackground: none;\n\t\t\tfont-family: var(--font-family);\n\t\t\tfont-size: 1em;\n\t\t\tcolor: var(--widget-font);\n\t\t\tcursor: pointer;\n\t\t\tpadding: 0;\n\t\t\tmargin: 0;\n\t\t}\n\t"])))],CopyButton.properties={text:{type:String},input:{type:String},kind:{type:String},size:{type:String},unstyled:{type:Boolean},title:{type:String},_active:{state:!0,type:Boolean}},customElements.define("pnx-copy-button",CopyButton)},5051:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Grade});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(4780),mc=le(7325),gc=le(8591);class Grade extends Fl.WF{constructor(){super(),this.stars=0}render(){var vt;const bt=this.stars||0,le=[];for(let ls=1;ls<=bt;ls++)le.push((0,sc.fa)(uc.yy));for(let ls=bt+1;ls<=5;ls++)le.push((0,sc.fa)(mc.yy));return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["<span>\n\t\t\t","\n\t\t</span> (",")"])),le,this.stars?this.stars+"/5":(null===(vt=this._t)||void 0===vt?void 0:vt.pnx.metadata_quality_missing)||"?")}}Grade.styles=[gc.Op,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\tspan { color: var(--orange); }\n\t"])))],Grade.properties={stars:{type:Number}},customElements.define("pnx-grade",Grade)},9041:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>GradeFilter});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(4780);class GradeFilter extends Fl.WF{constructor(){super(),this.grade=0,this.input="",this.labels={}}_onInput(){const vt=[];for(let bt of this.renderRoot.querySelectorAll("input"))bt.checked&&vt.push(bt.value);this.grade=vt.join(","),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0}))}render(){const vt="".concat(this.grade).split(",").map((vt=>parseInt(vt))).filter((vt=>!isNaN(vt)));return[5,4,3,2,1].map((bt=>{var le;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<input\n\t\t\t\tid="',"-",'"\n\t\t\t\ttype="checkbox"\n\t\t\t\tname=',"\n\t\t\t\tvalue=",'\n\t\t\t\t@change="','"\n\t\t\t\t.checked=','\n\t\t\t/>\n\t\t\t<label\n\t\t\t\tfor="',"-",'"\n\t\t\t\ttitle=',"\n\t\t\t>\n\t\t\t\t"," ","\n\t\t\t</label>\n\t\t"])),this.input,bt,this.input,bt,this._onInput,vt.includes(bt),this.input,bt,null!==(le=this.labels)&&void 0!==le&&le[bt]?this.labels[bt]:null,bt,(0,sc.fa)(uc.yy))}))}}GradeFilter.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\t:host {\n\t\t\tgap: 0;\n\t\t\talign-items: stretch;\n\t\t\tdisplay: flex;\n\t\t}\n\t\tlabel {\n\t\t\tdisplay: inline-flex;\n\t\t\tpadding: 2px 7px;\n\t\t\tbackground: none;\n\t\t\tborder: 1px solid var(--widget-border-btn);\n\t\t\tcolor: var(--widget-font-direct);\n\t\t\tcursor: pointer;\n\t\t\tfont-size: 16px;\n\t\t\ttext-decoration: none;\n\t\t\tborder-left-width: 0px;\n\t\t}\n\t\tlabel:hover {\n\t\t\tbackground-color: var(--widget-bg-hover);\n\t\t}\n\t\tlabel:first-of-type {\n\t\t\tborder-top-left-radius: 8px;\n\t\t\tborder-bottom-left-radius: 8px;\n\t\t\tborder-left-width: 1px;\n\t\t}\n\t\tlabel:last-of-type {\n\t\t\tborder-top-right-radius: 8px;\n\t\t\tborder-bottom-right-radius: 8px;\n\t\t}\n\t\tlabel svg {\n\t\t\tdisplay: block;\n\t\t\twidth: 0.8em;\n\t\t}\n\t\tinput[type="checkbox"] { display: none; }\n\t\tinput[type="checkbox"]:checked + label {\n\t\t\tbackground-color: var(--widget-bg-active);\n\t\t\tcolor: var(--widget-font-active);\n\t\t}\n\t\tinput[type="checkbox"]:checked + label:first-of-type {\n\t\t\tborder-right-color: white;\n\t\t}\n\t']))),GradeFilter.properties={grade:{type:String},input:{type:String},labels:{type:Object}},customElements.define("pnx-grade-filter",GradeFilter)},259:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>IconSwitch});var ls,ho,Dl=le(7528),Fl=le(4542);class IconSwitch extends Fl.WF{constructor(){super(),this.checked=!1,this.disabled=!1,this.name="pnx-icon-switch-1"}_onChange(vt){this.checked=vt.target.checked,this.dispatchEvent(new Event("change"))}render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<label class="toggle" for=','>\n\t\t\t\t<span class="toggle-label">\n\t\t\t\t\t<slot name="label-left"></slot>\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\tclass="toggle-checkbox"\n\t\t\t\t\ttype="checkbox"\n\t\t\t\t\tid=',"\n\t\t\t\t\tname=","\n\t\t\t\t\t.checked=","\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@change=",'\n\t\t\t\t/>\n\t\t\t\t<div class="toggle-switch">\n\t\t\t\t\t<span class="toggle-icon icon-left">\n\t\t\t\t\t\t<slot name="icon-left"></slot>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class="toggle-icon icon-right">\n\t\t\t\t\t\t<slot name="icon-right"></slot>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t\t<span class="toggle-label">\n\t\t\t\t\t<slot name="label-right"></slot>\n\t\t\t\t</span>\n\t\t\t</label>\n\t\t'])),this.name,this.name,this.name,this.checked,this.disabled,this._onChange.bind(this))}}IconSwitch.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\t.toggle {\n\t\t\tcursor: pointer;\n\t\t\tdisplay: flex;\n\t\t\talign-items: flex-start;\n\t\t\tjustify-content: center;\n\t\t}\n\n\t\t.toggle-switch {\n\t\t\tdisplay: inline-block;\n\t\t\tbackground: var(--widget-option-left);\n\t\t\tborder-radius: 11px;\n\t\t\twidth: 42px;\n\t\t\tmin-width: 42px;\n\t\t\tmax-width: 42px;\n\t\t\theight: 22px;\n\t\t\tmin-height: 22px;\n\t\t\tmax-height: 22px;\n\t\t\tposition: relative;\n\t\t\tvertical-align: middle;\n\t\t\ttransition: background 0.25s;\n\t\t\tflex: 1;\n\t\t}\n\t\t.toggle-switch:before, .toggle-switch:after {\n\t\t\tcontent: "";\n\t\t}\n\t\t.toggle-switch:before {\n\t\t\tdisplay: block;\n\t\t\tbackground: linear-gradient(to bottom, #fff 0%, #eee 100%);\n\t\t\tborder-radius: 50%;\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);\n\t\t\twidth: 16px;\n\t\t\theight: 16px;\n\t\t\tposition: absolute;\n\t\t\ttop: 3px;\n\t\t\tleft: 3px;\n\t\t\ttransition: left 0.25s;\n\t\t}\n\t\t.toggle:hover .toggle-switch:before {\n\t\t\tbackground: linear-gradient(to bottom, #fff 0%, #fff 100%);\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5);\n\t\t}\n\t\t.toggle-checkbox:checked + .toggle-switch {\n\t\t\tbackground: var(--widget-option-right);\n\t\t}\n\t\t.toggle-checkbox:disabled + .toggle-switch:before,\n\t\t.toggle-checkbox:disabled:hover + .toggle-switch:before {\n\t\t\tbackground: var(--grey-pale);\n\t\t\tbox-shadow: none;\n\t\t}\n\t\t.toggle-checkbox:disabled + .toggle-switch {\n\t\t\tbackground: var(--grey);\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);\n\t\t}\n\t\t.toggle-checkbox:checked + .toggle-switch:before {\n\t\t\tleft: 22px;\n\t\t}\n\n\t\t.toggle-icon {\n\t\t\tpointer-events: none;\n\t\t\theight: 22px;\n\t\t\twidth: 22px;\n\t\t\tposition: absolute;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-items: center;\n\t\t\tline-height: 11px;\n\t\t\tfont-size: 11px;\n\t\t\topacity: 1;\n\t\t\ttransition: opacity 0.15s 0.1s;\n\t\t}\n\n\t\t.toggle-icon.icon-left {\n\t\t\tleft: 0;\n\t\t\tcolor: var(--widget-option-left);\n\t\t}\n\t\t.toggle-icon.icon-right {\n\t\t\tright: 0;\n\t\t\tcolor: var(--widget-option-right);\n\t\t}\n\n\t\t.toggle-checkbox:checked + .toggle-switch .toggle-icon.icon-left,\n\t\t.toggle-checkbox:not(:checked) + .toggle-switch .toggle-icon.icon-right {\n\t\t\topacity: 0;\n\t\t\ttransition: opacity 0s;\n\t\t}\n\n\t\t.toggle-checkbox {\n\t\t\tposition: absolute;\n\t\t\tvisibility: hidden;\n\t\t}\n\n\t\t.toggle-label {\n\t\t\tmargin-left: 5px;\n\t\t\tmargin-right: 5px;\n\t\t\tposition: relative;\n\t\t\tflex: 2;\n\t\t\ttext-align: center;\n\t\t\tfont-size: 0.9em;\n\t\t\tline-height: 22px;\n\t\t}\n\t']))),IconSwitch.properties={checked:{type:Boolean,reflect:!0},disabled:{type:Boolean,reflect:!0},name:{type:String}},customElements.define("pnx-icon-switch",IconSwitch)},438:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>LinkButton});var ls=le(4542),ho=le(8591);class LinkButton extends ls.WF{constructor(){super(),this.kind="full",this.size="md"}render(){const vt=document.createElement("a");vt.setAttribute("part","btn"),this.constructor.observedAttributes.filter((vt=>void 0!==this[vt])).forEach((bt=>vt.setAttribute(bt,this[bt]))),vt.classList.add("pnx-btn","pnx-btn-".concat(this.kind),"pnx-btn-".concat(this.size));const bt=document.createElement("slot");return vt.appendChild(bt),vt}}LinkButton.styles=ho.HM,LinkButton.properties={href:{type:String},target:{type:String},title:{type:String},download:{type:String},class:{type:String},kind:{type:String},size:{type:String}},customElements.define("pnx-link-button",LinkButton)},5271:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ListGroup});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(8591);class ListGroup extends Fl.WF{render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["<slot></slot>"])))}}ListGroup.styles=[sc.nd,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host ::slotted(*) {\n\t\t\ttext-decoration: none;\n\t\t\tborder: none;\n\t\t\tborder-bottom: 1px solid var(--widget-border-div);\n\t\t\tbackground: none;\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t\tcolor: var(--widget-font);\n\t\t\tfont-family: var(--font-family);\n\t\t\tcursor: pointer;\n\t\t\tfont-size: 1em;\n\t\t\tfont-weight: 400;\n\t\t\tline-height: 18px;\n\t\t\tpadding: 5px 10px;\n \t\t\tmin-width: 150px;\n\t\t\twidth: 100%;\n\t\t\ttext-align: left;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\t:host ::slotted(*:hover) {\n\t\t\tbackground-color: var(--widget-bg-hover);\n\t\t}\n\n\t\t:host ::slotted(*:first-child) {\n\t\t\tborder-top-left-radius: 5px;\n\t\t\tborder-top-right-radius: 5px;\n\t\t}\n\n\t\t:host ::slotted(*:last-child) {\n\t\t\tborder: none;\n\t\t\tborder-bottom-left-radius: 5px;\n\t\t\tborder-bottom-right-radius: 5px;\n\t\t}\n\t"])))],customElements.define("pnx-list-group",ListGroup)},5525:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ListItem});var ls,ho,Dl=le(7528),Fl=le(4542);class ListItem extends Fl.WF{render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<div class="list-item" title=','>\n\t\t\t\t<div class="icon">\n\t\t\t\t\t<slot name="icon"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="content">\n\t\t\t\t\t<div class="title">','</div>\n\t\t\t\t\t<div class="subtitle">','</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="action">\n\t\t\t\t\t<slot name="action"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t'])),this.tooltip,this.title,this.subtitle)}}ListItem.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t.list-item {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tpadding: 8px 16px;\n\t\t\tcursor: pointer;\n\t\t\tborder-bottom: 1px solid #ddd;\n\t\t\tfont-family: var(--font-family);\n\t\t\tbackground: var(--white);\n\t\t\tmin-height: 40px;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\t\t.list-item:hover { background: var(--widget-bg-hover); }\n\t\t.icon {\n\t\t\tmargin-right: 16px;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tgap: 10px;\n\t\t\tposition: relative;\n\t\t}\n\t\t.action {\n\t\t\tmargin-left: 16px;\n\t\t\tdisplay: flex;\n \t\t\tgap: 5px;\n\t\t}\n\t\t.content {\n\t\t\tflex: 1;\n\t\t}\n\t\t.title {\n\t\t\tfont-weight: 600;\n\t\t}\n\t\t.subtitle {\n\t\t\tfont-size: 0.9em;\n\t\t\tcolor: var(--grey-dark);\n\t\t}\n\t"]))),ListItem.properties={title:{type:String},subtitle:{type:String},tooltip:{type:String}},customElements.define("pnx-list-item",ListItem)},3109:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Loader});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac=le(7528),Ec=le(4542),kc=le(2305),du=le(5975),_u=le(7343);class Loader extends Ec.WF{constructor(){super(),this.visible=!0,this["no-label"]=!1,this._mode="loading",this._isLabelFun=!1,this.value=-1}connectedCallback(){super.connectedCallback(),this._nextLabel()}isVisible(){return this.visible}dismiss(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(clearTimeout(this._loaderLabelChanger),vt){var sc;!0!==vt&&console.error(vt);let gc=[null===(sc=this._parent)||void 0===sc?void 0:sc._t.pnx.error,(0,Ec.qy)(ls||(ls=(0,Ac.A)(["<br />"])))];var uc,mc;if(bt&&gc.push(bt,(0,Ec.qy)(ho||(ho=(0,Ac.A)(["<br />"])))),le)gc.push((0,Ec.qy)(Dl||(Dl=(0,Ac.A)(['<pnx-button kind="full">',"</pnx-button>"])),null===(uc=this._parent)||void 0===uc?void 0:uc._t.pnx.error_click)),this.addEventListener("click",le);else gc.push((0,Ec.qy)(Fl||(Fl=(0,Ac.A)(["<small>","</small>"])),null===(mc=this._parent)||void 0===mc?void 0:mc._t.pnx.error_retry));this._mode="error",this._label=gc;const kc=bt||"Panoramax JS had a blocking exception",du=new CustomEvent("broken",{detail:{error:kc}});throw this._parent.dispatchEvent(du),new Error(kc)}{this.value=100,this._mode="done",this.visible=!1,this.style.transition="all 0.5s",setTimeout((()=>this.parentNode.removeChild(this)),2e3);const vt=new CustomEvent("ready");this._parent.dispatchEvent(vt),le&&le()}}_nextLabel(){var vt,bt,le,ls;this._isLabelFun?this._label=null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.loading_labels_fun[(0,_u.inRangeRandom)(0,(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.loading_labels_fun.length)-1)]:(this._label=null===(le=this._parent)||void 0===le?void 0:le._t.pnx.loading_labels_serious[(0,_u.inRangeRandom)(0,(null===(ls=this._parent)||void 0===ls?void 0:ls._t.pnx.loading_labels_serious.length)-1)],this._isLabelFun=!0);this._loaderLabelChanger=setTimeout(this._nextLabel.bind(this),(0,_u.inRangeRandom)(500,1500))}render(){var vt;return"error"==this._mode?(0,Ec.qy)(sc||(sc=(0,Ac.A)(['\n\t\t\t\t<img class="logo-dead" src=',' alt="" title='," />\n\t\t\t\t","\n\t\t\t"])),kc,null===(vt=this._parent)||void 0===vt?void 0:vt._t.map.loading,this._label):(0,Ec.qy)(uc||(uc=(0,Ac.A)(["\n\t\t\t<pnx-progress-bar .value=","></pnx-progress-bar>\n\t\t\t","\n\t\t"])),this.value,this["no-label"]?Ec.s6:(0,Ec.qy)(mc||(mc=(0,Ac.A)(['<div class="label">',"</div>"])),this._label))}}Loader.styles=(0,Ec.AH)(gc||(gc=(0,Ac.A)(["\n\t\t:host {\n\t\t\tposition: absolute;\n\t\t\tinset: 0;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: center;\n\t\t\tgap: 10px;\n\t\t\talign-items: center;\n\t\t\tbackground-image: url('","');\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-size: cover;\n\t\t\tbackground-position: center; \n\t\t\tz-index: 200;\n\t\t\tfont-family: var(--font-family);\n\t\t\tfont-weight: 550;\n\t\t\tcolor: var(--black);\n\t\t\tfont-size: 1.4em;\n\t\t\ttext-align: center;\n\t\t\tvisibility: hidden;\n\t\t\topacity: 0;\n\t\t}\n\t\t:host(*[visible]) {\n\t\t\tvisibility: visible;\n\t\t\topacity: 1;\n\t\t}\n\n\t\tdiv.label {\n\t\t\tbackground-color: rgba(255,255,255,0.5);\n\t\t\tbox-shadow: white 0 0 10px;\n\t\t\tpadding: 3px 10px;\n\t\t\tborder-radius: 50px;\n\t\t}\n\t\t/* Logo */\n\t\timg.logo-dead { width: 100px; }\n\t"])),(0,Ec.iz)(du)),Loader.properties={_mode:{state:!0},_label:{state:!0},_isLabelFun:{state:!0},visible:{type:Boolean,reflect:!0},"no-label":{type:Boolean},value:{type:Number}},customElements.define("pnx-loader",Loader)},5642:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Map});var ls=le(9379),ho=(le(3041),le(8340)),Dl=le(6883),Fl=le(270),sc=le(4005),uc=le(1435),mc=le(5195),gc=(le(6795),le(927)),Ac=le.n(gc),Ec=le(2968),kc=le.n(Ec),du=le(748);Ac().workerClass=kc(),Ac().addProtocol("pmtiles",(new du.Zs).tile),Ac().addProtocol("panora",(new uc.A).tile()),Ac().addProtocol("panoras",(new uc.A).tile());class Map extends Ac().Map{constructor(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};var ho;(super((0,ls.A)({container:bt,style:vt.mapStyleComposer.getMapStyle(),center:[0,0],zoom:0,maxZoom:24,attributionControl:!1,dragRotate:!1,pitchWithRotate:!1,touchZoomRotate:!0,touchPitch:!1,doubleClickZoom:!1,canvasContextAttributes:{preserveDrawingBuffer:!vt.isWidthSmall()},transformRequest:vt.api._getMapRequestTransform(),locale:vt._t.maplibre,hash:!1},le)),this._semMapProtocol=new sc.Ay(vt),Ac().addProtocol("sem",this._semMapProtocol.tile()),this._loadMarkerImages(),this._parent=vt,this._parent.mapStyleComposer.map=this,this._options=le,this.getContainer().classList.add("pnx-map"),void 0===le.touchZoomRotate)&&(null===this||void 0===this||null===(ho=this.touchZoomRotate)||void 0===ho||ho.disableRotation());this._options.raster&&(this._options.background=this._options.background||"streets"),(0,mc.initIndoorEqualOnMap)(this,![void 0,mc.DISABLED_LEVEL].includes(this._options.level)),this._attribution=new(Ac().AttributionControl)((0,ls.A)({compact:!1},le.attributionControl)),this.addControl(this._attribution),this._initMapPosition(),this._picMarker=this._getPictureMarker(),this._picMarkerPreview=this._getPictureMarker(!1),this._picPreviewTimer=null,this._picPopup=new(Ac().Popup)({closeButton:!1,closeOnClick:!this._parent.isWidthSmall(),offset:15}),this._picThumbUrl={},this._seqPictures={},this._parent.addEventListener("select",this._parent.mapStyleComposer.updateMapStyle.bind(this._parent.mapStyleComposer)),this._parent.mapStyleComposer.addEventListener("panoramax-changed",this._onPanoramaxChanged.bind(this)),setTimeout((()=>{var vt;!this.loaded()&&null!==(vt=this._parent)&&void 0!==vt&&vt.loader.isVisible()&&this._parent.loader.dismiss({},this._parent._t.map.slow_loading,(async()=>{await this._postLoad(),this._parent.loader.dismiss()}))}),15e3),this.waitForEnoughMapLoaded().then((async()=>await this._postLoad()))}async _postLoad(){this.resize(),this.on("dblclick",(()=>clearTimeout(this._gridFocus))),this.on("click",(vt=>{var bt,le;(clearTimeout(this._gridFocus),!1===vt.defaultPrevented)&&(this._dropPreview(),null!==(bt=(le=this._parent).isMapWide)&&void 0!==bt&&bt.call(le)&&(this._gridFocus=setTimeout((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.grid)||void 0===bt?void 0:bt.toggleAway()}),250)))}));const untoggleGridWidgets=()=>{var vt,bt,le,ls;null!==(vt=(bt=this._parent).isMapWide)&&void 0!==vt&&vt.call(bt)&&null!==(le=this._parent)&&void 0!==le&&null!==(ls=le.grid)&&void 0!==ls&&ls._hidden&&(clearTimeout(this._gridFocus),this._parent.grid.toggleAway(!0))};this.on("mousemove",untoggleGridWidgets),this.on("touchmove",untoggleGridWidgets),this.fire("ready")}_dropPreview(vt){clearTimeout(this._picDropPreviewTimer),vt?this._picDropPreviewTimer=setTimeout(this._dropPreview.bind(this),250):(clearTimeout(this._picPreviewTimer),delete this._picPopup._picId,delete this._picPopup._loading,this._picPopup.remove(),this._picMarkerPreview.remove())}destroy(){this.remove(),delete this._semMapProtocol,delete this._parent,delete this._options,delete this._attribution,delete this._picMarker,delete this._picMarkerPreview,delete this._picPreviewTimer,delete this._picPopup,delete this._picThumbUrl,delete this._seqPictures}waitForEnoughMapLoaded(){return new Promise((vt=>{let bt=0,le=0,ls=0,ho=0;const onSourceDataLoading=vt=>{"source"===vt.dataType&&vt.tile&&(vt.sourceId.startsWith("geovisio")?le++:bt++)},onSourceData=vt=>{"source"===vt.dataType&&vt.tile&&(vt.sourceId.startsWith("geovisio")?(ho++,vt.isSourceLoaded&&(ho=le)):(ls++,vt.isSourceLoaded&&(ls=bt))),checkEnoughLoaded()},checkEnoughLoaded=()=>{ls/bt>=.75&&(0===le||ho/le>=.75)&&(this.off("sourcedata",onSourceData),this.off("sourcedataloading",onSourceDataLoading),vt())};this.on("sourcedataloading",onSourceDataLoading),this.on("sourcedata",onSourceData)}))}_initMapPosition(){!(0,ho.isNullCoordinates)(this._options.center)||this._options.zoom&&0!==this._options.zoom||this._options.hash||this._parent.onceAPIReady().then((()=>{var vt,bt;let le=null===(vt=this._parent)||void 0===vt||null===(bt=vt.api)||void 0===bt?void 0:bt.getDataBbox();if(le)try{le=new(Ac().LngLatBounds)(le),this.loaded()?this.fitBounds(le,{animate:!1}):this.waitForEnoughMapLoaded().then((()=>this.fitBounds(le,{animate:!1})))}catch(ls){console.warn("Received invalid bbox: "+le)}}))}addSource(vt,bt){this._parent.mapStyleComposer.registerSource(vt,bt),super.addSource(vt,bt)}addLayer(vt,bt){this._parent.mapStyleComposer.registerLayer(vt,bt),super.addLayer(vt,bt)}_loadMarkerImages(){[{id:"pnx-marker",img:Dl}].forEach((vt=>{const bt=new Image(64,64);bt.onload=()=>this.addImage(vt.id,bt),bt.src=vt.img}))}_hasQualityScore(){var vt,bt,le,ls;const ho=(null===(vt=this.getStyle())||void 0===vt||null===(bt=vt.metadata)||void 0===bt?void 0:bt["panoramax:fields"])||{};return(null===ho||void 0===ho||null===(le=ho.pictures)||void 0===le?void 0:le.includes("gps_accuracy"))&&(null===ho||void 0===ho||null===(ls=ho.pictures)||void 0===ls?void 0:ls.includes("h_pixel_density"))}_hasGridStats(){var vt,bt,le,ls,ho,Dl;const Fl=(null===(vt=this.getStyle())||void 0===vt||null===(bt=vt.metadata)||void 0===bt?void 0:bt["panoramax:fields"])||{};return(null===Fl||void 0===Fl||null===(le=Fl.grid)||void 0===le?void 0:le.includes("nb_360_pictures"))&&(null===Fl||void 0===Fl||null===(ls=Fl.grid)||void 0===ls?void 0:ls.includes("nb_flat_pictures"))&&(null===Fl||void 0===Fl||null===(ho=Fl.grid)||void 0===ho?void 0:ho.includes("coef_360_pictures"))&&(null===Fl||void 0===Fl||null===(Dl=Fl.grid)||void 0===Dl?void 0:Dl.includes("coef_flat_pictures"))}_hasLoggedGridStats(){var vt,bt,le,ls,ho;const Dl=(null===(vt=this.getStyle())||void 0===vt||null===(bt=vt.metadata)||void 0===bt?void 0:bt["panoramax:fields"])||{};return(null===Dl||void 0===Dl||null===(le=Dl.grid)||void 0===le?void 0:le.includes("logged_coef_360_pictures"))&&(null===Dl||void 0===Dl||null===(ls=Dl.grid)||void 0===ls?void 0:ls.includes("logged_coef_flat_pictures"))&&(null===Dl||void 0===Dl||null===(ho=Dl.grid)||void 0===ho?void 0:ho.includes("logged_coef"))}reloadVectorTiles(){Object.values(this._parent.mapStyleComposer.layerRanges.panoramax).forEach((vt=>{Object.keys(vt.sources).forEach((vt=>{const bt=this.getSource(vt);bt.setTiles(bt.tiles)}))}))}displayPictureMarker(vt,bt,le){let ls=arguments.length>3&&void 0!==arguments[3]&&arguments[3],Dl=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null;this._picMarkerPreview.remove(),void 0!==vt&&void 0!==bt?(this._picMarker.setLngLat([vt,bt]).setRotation(le).addTo(this),this._picMarker.picId=Dl):this._picMarker.remove(),this._parent.mapStyleComposer.updateMapStyle(),ls||void 0===vt||void 0===bt||this.jumpTo({center:[vt,bt],zoom:this.getZoom()<ho.TILES_PICTURES_ZOOM+2?ho.TILES_PICTURES_ZOOM+2:this.getZoom()})}_onPanoramaxChanged(){var vt,bt,le;const ls=this._parent.mapStyleComposer,Dl=null===(vt=ls.layerRanges.panoramax[ls.panoramax].layers.find((vt=>vt.id.endsWith("_pictures"))))||void 0===vt?void 0:vt.id,Fl=null===(bt=ls.layerRanges.panoramax[ls.panoramax].layers.find((vt=>vt.id.endsWith("_sequences_plus"))))||void 0===bt?void 0:bt.id,sc=null===(le=ls.layerRanges.panoramax[ls.panoramax].layers.find((vt=>vt.id.endsWith("_grid"))))||void 0===le?void 0:le.id;Dl&&Fl||console.error("Panoramax source not loaded"),this.on("mousemove",Dl,(vt=>{this.getCanvas().style.cursor="pointer";const bt=Object.assign({},vt);this._attachPreviewToPictures(bt,Dl)})),this.on("mouseleave",Dl,(()=>{this.getCanvas().style.cursor=""})),this.on("click",Dl,this._onPictureClick.bind(this)),this.on("mousemove",Fl,(vt=>{if(!(this.getZoom()>=ho.TILES_PICTURES_ZOOM)&&(this._onSequenceHover(vt),this.getCanvas().style.cursor="pointer",vt.features[0].properties.id)){const bt=Object.assign({},vt);this._attachPreviewToPictures(bt,Fl)}})),this.on("mouseleave",Fl,(()=>{this.getCanvas().style.cursor="",this._dropPreview(!0)})),this.on("click",Fl,(vt=>{vt.preventDefault(),this._onSequenceClick(vt)})),sc&&(this.on("mousemove",sc,(vt=>{if(this.getZoom()<=ho.TILES_PICTURES_ZOOM+1){this.getCanvas().style.cursor="pointer";const bt=Object.assign({},vt);this._attachPreviewToPictures(bt,sc)}})),this.on("mouseleave",sc,(()=>{this._dropPreview(),this.getCanvas().style.cursor=""})),this.on("click",sc,(vt=>{vt.preventDefault(),this.flyTo({center:vt.lngLat,zoom:ho.TILES_PICTURES_ZOOM-6})})))}_attachPreviewToPictures(vt,bt){var le,ls;let Dl=vt.features.pop();if(!Dl||Dl.properties.id==this._picPopup._picId)return;clearTimeout(this._picPreviewTimer),clearTimeout(this._picDropPreviewTimer),this._picPopup._loading=Dl.properties.id,this._picPopup._picId=Dl.properties.id,delete this._picPopup._seqId,vt.lngLat||(vt.lngLat=this.getCenter());let Fl=null;if(bt.includes("_pictures")&&"Point"===Dl.geometry.type)Fl=Dl;else if(this.getZoom()<ho.TILES_PICTURES_ZOOM&&bt.includes("_sequences")&&"LineString"===Dl.geometry.type){let bt=null;for(let le=0;le<Dl.geometry.coordinates.length;le++){let ls=vt.lngLat.distanceTo(new(Ac().LngLat)(...Dl.geometry.coordinates[le]));(!bt||ls<bt)&&(Fl={type:"Feature",geometry:{type:"Point",coordinates:Dl.geometry.coordinates[le]},properties:{first_sequence:Dl.properties.id,collection:Dl.properties.id}},bt=ls)}}var sc,uc,mc,gc;Fl&&void 0!==Fl.properties.heading?(this._picPopup._seqId=Fl.properties.first_sequence,null===(sc=(uc=this._picMarkerPreview).setLngLat)||void 0===sc||sc.call(uc,Fl.geometry.coordinates).setRotation(Fl.properties.heading||0).addTo(this)):null===(mc=this._picMarkerPreview)||void 0===mc||null===(gc=mc.remove)||void 0===gc||gc.call(mc);let Ec=Fl?Fl.geometry.coordinates:vt.lngLat;this._picPopup.setLngLat(Ec).addTo(this),Fl||this._picThumbUrl[Dl.properties.id]||this._picPopup.setDOMContent((0,ho.getThumbGif)(this._parent._t));const displayThumb=vt=>{if(this._picPopup._loading===Dl.properties.id)if(vt){let bt=document.createElement("img");bt.classList.add("pnx-map-thumb"),bt.alt=this._parent._t.map.thumbnail;let le=new Image;if(le.src=vt,le.addEventListener("load",(()=>{this._picPopup._loading===Dl.properties.id&&(Dl.properties.hidden?bt.children[0].src=le.src:bt.src=le.src,this._picPopup.setDOMContent(bt),delete this._picPopup._loading)})),Dl.properties.hidden){const vt=document.createElement("div");vt.classList.add("pnx-map-thumb-legend"),vt.appendChild(document.createTextNode(this._parent._t.map.not_public));const le=document.createElement("div");le.appendChild(bt),le.appendChild(vt),bt=le}}else this._picPopup.remove()};var kc,du;this._picPopup._loading===Dl.properties.id&&(this._picThumbUrl[(null===(le=Fl)||void 0===le||null===(ls=le.properties)||void 0===ls?void 0:ls.id)||Dl.properties.id]?displayThumb(this._picThumbUrl[(null===(kc=Fl)||void 0===kc||null===(du=kc.properties)||void 0===du?void 0:du.id)||Dl.properties.id]):(clearTimeout(this._picPreviewTimer),this._picPreviewTimer=setTimeout((()=>{this._picPopup._loading===Dl.properties.id&&(Fl?Fl.properties.id?this._getPictureThumbURL(Fl.properties.id,Fl.properties.collection).then(displayThumb):this._getSequenceThumbURL(Dl.properties.collection,Ec).then(displayThumb):bt.endsWith("_grid")?this._getThumbURL(Ec).then(displayThumb):bt.includes("_sequences")&&this._getSequenceThumbURL(Dl.properties.id,Ec).then(displayThumb))}),50)))}_getThumbURL(vt){return this._parent.getAPI().getPicturesAroundCoordinates(vt.lat,vt.lng,.1,1).then((vt=>{var bt;const le=null===vt||void 0===vt||null===(bt=vt.features)||void 0===bt?void 0:bt.pop();return le?this._parent.getAPI().findThumbnailInPictureFeature(le):null}))}_getSequenceThumbURL(vt,bt){return bt?this._parent.getAPI().getPicturesAroundCoordinates(bt.lat||bt[1],bt.lng||bt[0],1,1,vt).then((bt=>{var le;return(null===bt||void 0===bt||null===(le=bt.features)||void 0===le?void 0:le.length)>0?this._parent.getAPI().findThumbnailInPictureFeature(bt.features[0]):this._parent.getAPI().getPictureThumbnailURLForSequence(vt)})):this._parent.getAPI().getPictureThumbnailURLForSequence(vt)}_getPictureThumbURL(vt,bt){let le=Promise.resolve();return vt&&(void 0!==this._picThumbUrl[vt]?le="string"===typeof this._picThumbUrl[vt]?Promise.resolve(this._picThumbUrl[vt]):this._picThumbUrl[vt]:(this._picThumbUrl[vt]=this._parent.getAPI().getPictureThumbnailURL(vt,bt).then((bt=>bt?(this._picThumbUrl[vt]=bt,bt):(this._picThumbUrl[vt]=null,null))).catch((()=>{this._picThumbUrl[vt]=null})),le=this._picThumbUrl[vt])),le}_getPictureMarker(){let vt=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];const bt=document.createElement("img");return bt.src=vt?Fl:Dl,bt.alt="",new(Ac().Marker)({element:bt,picId:null}).setDraggable(vt&&this._options.picMarkerDraggable)}_onSequenceHover(vt){var bt;vt.preventDefault(),vt.features.length>0&&null!==(bt=vt.features[0].properties)&&void 0!==bt&&bt.id&&this.fire("sequence-hover",{seqId:vt.features[0].properties.id})}_onSequenceClick(vt){var bt;if(vt.preventDefault(),vt.originalEvent.stopImmediatePropagation(),"pic"!==(null===(bt=this._parent.psv)||void 0===bt?void 0:bt.getPicturesNavigation())&&vt.features.length>0){var le;let bt=vt.features[0];vt.features.length>1&&this._picPopup._seqId&&(bt=vt.features.find((vt=>vt.properties.id===this._picPopup._seqId))||bt),null!==(le=bt.properties)&&void 0!==le&&le.id&&this.fire("sequence-click",{seqId:bt.properties.id,coordinates:vt.lngLat})}}_onPictureClick(vt){var bt,le,ls;if(vt.preventDefault(),vt.originalEvent.stopImmediatePropagation(),"pic"===(null===(bt=this._parent.psv)||void 0===bt?void 0:bt.getPicturesNavigation()))return;const ho=this.queryRenderedFeatures(vt.point);if(ho.length>1&&ho.find((vt=>{var bt;return null===vt||void 0===vt||null===(bt=vt.source)||void 0===bt?void 0:bt.startsWith("sem-")})))return;const Dl=(null===vt||void 0===vt||null===(le=vt.features)||void 0===le?void 0:le.length)>0?vt.features[0]:null;if(null!==Dl&&void 0!==Dl&&null!==(ls=Dl.properties)&&void 0!==ls&&ls.id){let bt=null;try{Dl.properties.sequences&&(Array.isArray(Dl.properties.sequences)||(Dl.properties.sequences=JSON.parse(Dl.properties.sequences)),bt=Dl.properties.sequences.pop())}catch(vt){console.log("Sequence ID is not available in vector tiles for picture "+Dl.properties.id)}this.fire("picture-click",{picId:Dl.properties.id,seqId:bt,feature:Dl})}}addEventListener(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};null!==le&&void 0!==le&&le.once?this.once(vt,bt):this.on(vt,bt)}}},2771:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapMore});var ls=le(9379),ho=le(5642),Dl=le(2283),Fl=le(4005);class MapMore extends ho.A{constructor(vt,bt){super(vt,bt,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),this._options.theme&&this._parent.mapStyleComposer.setPanoramaxTheme(this._options.theme),this._featuresRestrict={pictures:{},sequences:{}}}async _postLoad(){this._parent.api._endpoints.queryables&&Dl.SEMANTICS_OVERLAYS.forEach((vt=>this.addSemanticOverlay(...vt))),await super._postLoad()}setFilters(vt){const bt=this._parent.mapStyleComposer.panoramaxFilters,le=Object.assign({featuresRestrictions:bt.featuresRestrictions},vt);this._parent.mapStyleComposer.setPanoramaxFilters(le),vt.theme&&this._parent.mapStyleComposer.setPanoramaxTheme(vt.theme)}restrictVisibleFeatures(vt,bt,le){this._featuresRestrict[bt]={rule:vt,features:le};const ls=this._parent.mapStyleComposer.panoramaxFilters,ho=Object.assign({},ls,{featuresRestrictions:this._featuresRestrict});this._parent.mapStyleComposer.setPanoramaxFilters(ho)}addSemanticOverlay(vt,bt,le){let ho=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(!this._parent.getAPI()._endpoints.queryables)throw new Error("Semantics overlay are not available on API");const Dl="sem-"+vt,sc="none"!==le.layout.visibility,uc={sources:{[Dl]:{type:"vector",tiles:["sem:///".concat(bt,"/{z}/{x}/{y}")],minzoom:Fl.lU,maxzoom:Fl.nu}},layers:[(0,ls.A)({id:vt,source:Dl,"source-layer":"layer"},JSON.parse(JSON.stringify(le)))],sprite:Object.entries(ho||{}).map((vt=>{let[bt,le]=vt;return{id:bt,url:le}}))};delete uc.layers[0].layout.visibility,this._parent.mapStyleComposer.addDataOverlay(Dl,uc,sc),this.on("click",vt,(vt=>{var bt;if(vt.preventDefault(),(null===vt||void 0===vt||null===(bt=vt.features)||void 0===bt?void 0:bt.length)>0){const bt=vt.features[0];this._parent.select(bt.properties.seqid,bt.properties.picid),this._parent.psv.addEventListener("picture-loaded",(()=>{var vt,bt;const le=this._parent.psv.getPictureMetadata();1===(null===(vt=le.properties)||void 0===vt||null===(bt=vt.annotations)||void 0===bt?void 0:bt.length)&&this._parent.psv.focusOnAnnotation(le.properties.annotations[0].id)}),{once:!0})}}))}getSemanticOverlays(){return Object.entries(this._parent.mapStyleComposer.layerRanges.dataOverlays).filter((vt=>{let[bt]=vt;return bt.startsWith("sem-")})).map((vt=>{let[,bt]=vt;return bt.layers[0]}))}toggleAllSemanticOverlays(vt){Object.keys(this._parent.mapStyleComposer.layerRanges.dataOverlays).filter((vt=>vt.startsWith("sem-"))).forEach((bt=>this._parent.mapStyleComposer.switchDataOverlayVisibility(bt,vt)))}}},9048:(vt,bt,le)=>{"use strict";le.d(bt,{Ay:()=>Photo,LM:()=>_u,Vf:()=>Md,cS:()=>du});var ls=le(9379),ho=(le(5003),le(5975)),Dl=le(2305),Fl=le(7343),sc=le(508),uc=(le(3961),le(1080),le(2710),le(1575),le(1545)),mc=le(3348),gc=le(4991),Ac=le(3727);const Ec={baseUrl:ho,width:1280,cols:2,rows:1,tileUrl:()=>null},kc={id:Fl.BASE_PANORAMA_ID,caption:"",panorama:Ec,links:[],gps:[0,0],sequence:{},sphereCorrection:{},horizontalFov:360,properties:{}},du=30,_u=250,Md=3e3,Ld="draw-annotation-1",Nd="draw-annotation-2",Rd="draw-annotation-r",Od="rgb(224, 64, 251)",jd="rgb(224, 64, 251, 0.5)",Ud="rgb(123, 31, 162)",Gd="rgba(123, 31, 162, 0.5)";uc.jM.useNewAnglesOrder=!0;class Photo extends uc.jM{constructor(vt,bt){var le;let ho=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};super((0,ls.A)({container:bt,adapter:[Ac.A,{showErrorTile:!1,baseBlur:!1,resolution:vt.isWidthSmall()?32:64,shouldGoFast:(null===ho||void 0===ho?void 0:ho.shouldGoFast)||(()=>!1),useXmpData:!1}],withCredentials:vt.api._getPSVWithCredentials(),requestHeaders:null===vt||void 0===vt||null===(le=vt["fetch-options"])||void 0===le?void 0:le.headers,panorama:Ec,lang:vt._t.psv,minFov:5,loadingTxt:"&nbsp;",navbar:null,rendererParameters:{preserveDrawingBuffer:!vt.isWidthSmall()},plugins:[[mc.$,{dataMode:"server",positionMode:"gps",renderMode:"3d",preload:!0,getNode:()=>{},transitionOptions:()=>{},arrowsPosition:{linkOverlapAngle:Math.PI/6}}],[gc.b,{}]]},ho)),this._parent=vt,this._options=ho,bt.classList.add("pnx-psv"),this._shouldGoFast=(null===ho||void 0===ho?void 0:ho.shouldGoFast)||(()=>!1),this._transitionDuration=(null===ho||void 0===ho?void 0:ho.transitionDuration)||_u,this._myVTour=this.getPlugin(mc.$),this._myVTour.datasource.nodeResolver=this._getNodeFromAPI.bind(this),this._myVTour.config.transitionOptions=this._psvNodeTransition.bind(this),this._clearArrows=this._myVTour.arrowsRenderer.clear.bind(this._myVTour.arrowsRenderer),this._myVTour.arrowsRenderer.clear=()=>{},this._myMarkers=this.getPlugin(gc.b),this._annotationsVisible=!0===this._options.displayAnnotations,this._drawingAnnotation=null,this._sequencePlaying=!1,this._picturesNavigation=this._options.picturesNavigation||"any",this._picturesSequences={},this._myVTour.addEventListener("enter-arrow",this._onEnterArrow.bind(this)),this._myVTour.addEventListener("leave-arrow",this._onLeaveArrow.bind(this)),this._myVTour.addEventListener("node-changed",this._onNodeChanged.bind(this)),this._myMarkers.addEventListener("select-marker",this._onSelectMarker.bind(this)),this.addEventListener("position-updated",this._onPositionUpdated.bind(this)),this.addEventListener("zoom-updated",this._onZoomUpdated.bind(this)),this.addEventListener("dblclick",this._onDoubleClick.bind(this)),this._parent.addEventListener("select",this._onSelect.bind(this)),this.loader.size=150,this.loader.color="rgba(61, 61, 61, 0.5)",this.loader.textColor="rgba(255, 255, 255, 0.7)",this.loader.border=5,this.loader.thickness=10,this.loader.canvas.setAttribute("viewBox","0 0 150 150"),this.loader.__updateContent(),this._options.position&&!this._parent.picture&&this.goToPosition(...this._options.position)}async _getNodeFromAPI(vt){var bt,le;if((0,Fl.isNullId)(vt))return kc;const ls=await fetch(this._parent.getAPI().getPictureMetadataUrl(vt,this._picturesSequences[vt]),this._parent.getAPI()._getFetchOptions());let ho=await ls.json();if(ho.features&&(ho=ho.features.pop()),!ho||0===Object.keys(ho).length||!ls.ok)throw this._parent.loader&&this._parent.loader.dismiss(!0,this._parent._t.pnx.error_pic),new Error("Picture with ID "+vt+" was not found");this._picturesSequences[vt]=ho.collection;const Dl=(0,sc.apiFeatureToPSVNode)(ho,this._parent._t,this._parent._isInternetFast,this._picturesNavFilter.bind(this),this._parent.getAPI().cleanResourceURL.bind(this._parent.getAPI()));var uc,mc;null!==Dl&&void 0!==Dl&&null!==(bt=Dl.sequence)&&void 0!==bt&&bt.prevPic&&(this._picturesSequences[null===Dl||void 0===Dl||null===(uc=Dl.sequence)||void 0===uc?void 0:uc.prevPic]=ho.collection);null!==Dl&&void 0!==Dl&&null!==(le=Dl.sequence)&&void 0!==le&&le.nextPic&&(this._picturesSequences[null===Dl||void 0===Dl||null===(mc=Dl.sequence)||void 0===mc?void 0:mc.nextPic]=ho.collection);return Dl}_psvNodeTransition(vt,bt,le){var ho,Dl,sc;let uc={};const mc=this._shouldGoFast()?0:Math.min(_u,this._transitionDuration),gc=mc>100,Ac=null!=(le||(null===bt||void 0===bt?void 0:bt.links.find((bt=>bt.nodeId==vt.id)))),Ec=bt&&vt.sequence.id===bt.sequence.id,kc=((null===bt||void 0===bt||null===(ho=bt.properties)||void 0===ho?void 0:ho["view:azimuth"])||0)*(Math.PI/180),Md=((null===vt||void 0===vt||null===(Dl=vt.properties)||void 0===Dl?void 0:Dl["view:azimuth"])||0)*(Math.PI/180),Ld=(0,Fl.getRelativeHeading)(vt)*(Math.PI/180);this.setOption("maxFov",Math.min(3*vt.horizontalFov/4,90));const Nd={showLoader:!1,effect:"none",speed:0,rotation:!1,rotateTo:{pitch:0,yaw:-Ld},zoomTo:du};if(360==vt.horizontalFov)uc=bt?(0,Fl.getDistance)(bt.gps,vt.gps)>=.001?Nd:{speed:mc,effect:Ac&&gc?"fade":"none",rotation:Ac&&Ec&&gc,rotateTo:this.getPosition()}:Nd;else if(Ec){const vt=this.getPosition().yaw,le=bt.horizontalFov*(Math.PI/180)/2,ls=vt<=le||vt>=2*Math.PI-le,ho=Math.abs(kc-Md)<=Math.PI/4;uc={speed:mc,effect:Ac&&ho&&gc?"fade":"none",rotation:Ac&&ho&&gc,rotateTo:ls?this.getPosition():{pitch:0,yaw:0},zoomTo:ls?this.getZoomLevel():du}}else uc=Object.assign(Nd,{rotateTo:{pitch:0,yaw:0}});"fade"===uc.effect&&uc.speed>=150?setTimeout(this._clearArrows,uc.speed-100):this._clearArrows();const Rd=new CustomEvent("picture-loading",{detail:(0,ls.A)((0,ls.A)({},Object.assign({},this.getXYZ(),uc.rotateTo?{x:180*(Md+uc.rotateTo.yaw)/Math.PI}:null,uc.zoomTo?{z:uc.zoomTo}:null)),{},{picId:vt.id,lon:vt.gps[0],lat:vt.gps[1],first:(null===(sc=this._parent._initParams)||void 0===sc?void 0:sc.getParentPostInit().picture)==vt.id})});return this.dispatchEvent(Rd),uc}_onEnterArrow(vt){const bt=vt.link,le=vt.node;let ls;le&&(ls=360===le.horizontalFov?(this.getPictureOriginalHeading()+180*this.getPosition().yaw/Math.PI)%360:this.getPictureOriginalHeading());const ho=new CustomEvent("picture-preview-started",{detail:{picId:bt.nodeId,coordinates:bt.gps,direction:ls}});this.dispatchEvent(ho)}_onLeaveArrow(vt){const bt=vt.link,le=new CustomEvent("picture-preview-stopped",{detail:{picId:bt.nodeId}});this.dispatchEvent(le)}_onPositionUpdated(vt){let{position:bt}=vt;const le=(0,Fl.positionToXYZ)(bt,this.getZoomLevel());le.x+=this.getPictureOriginalHeading(),le.x=le.x%360;const ls=new CustomEvent("view-rotated",{detail:le});this.dispatchEvent(ls),this._onTilesStartLoading()}_onZoomUpdated(vt){let{zoomLevel:bt}=vt;const le=new CustomEvent("view-rotated",{detail:(0,ls.A)((0,ls.A)({},this.getXY()),{},{z:bt})});this.dispatchEvent(le),this._onTilesStartLoading()}_onDoubleClick(){this.unfocusAnnotation(!1,!0)}_onNodeChanged(vt){for(let ls of document.getElementsByClassName("pnx-psv-tour-arrows"))ls.classList.remove("pnx-clicked");if(vt.node.id){var bt,le,ho;const Dl=(null===(bt=this._parent._initParams)||void 0===bt?void 0:bt.getParentPostInit().picture)==vt.node.id;this._parent.select(null===(le=vt.node)||void 0===le||null===(ho=le.sequence)||void 0===ho?void 0:ho.id,vt.node.id);const Fl=this.getPictureMetadata();if(!Fl)return void this.dispatchEvent(new CustomEvent("picture-loaded",{detail:{}}));this._prevSequence=Fl.sequence.id;const sc=new CustomEvent("picture-loaded",{detail:(0,ls.A)((0,ls.A)({},this.getXYZ()),{},{picId:vt.node.id,lon:Fl.gps[0],lat:Fl.gps[1],first:Dl})});this.dispatchEvent(sc),Fl.panorama.hdUrl?(this.setOption("downloadUrl",Fl.panorama.hdUrl),this.setOption("downloadName",vt.node.id+".jpg")):this.setOption("downloadUrl",null),this._annotationsVisible&&this.toggleAllAnnotations(!0)}this._onTilesStartLoading()}_onSelectMarker(vt){var bt;if(vt.marker&&null!==(bt=vt.marker.id)&&void 0!==bt&&bt.startsWith("annotation-")){if(this.getSelectedAnnotations().find((vt=>{var bt,le,ls;return null===(bt=this._myMarkers.markers["annotation-"+vt])||void 0===bt||null===(le=bt.config)||void 0===le||null===(ls=le.data)||void 0===ls?void 0:ls.blockFocus})))return;this.focusOnAnnotation(vt.marker.data.id)}}_onTilesStartLoading(){this._tilesQueueTimer&&(clearInterval(this._tilesQueueTimer),delete this._tilesQueueTimer),this._tilesQueueTimer=setInterval((()=>{if(0===Object.keys(this.adapter.queue.tasks).length){if(this._myVTour.state.currentNode){const vt=new CustomEvent("picture-tiles-loaded",{detail:{picId:this._myVTour.state.currentNode.id}});this.dispatchEvent(vt)}clearInterval(this._tilesQueueTimer),delete this._tilesQueueTimer}}),100)}getPictureMetadata(){var vt,bt,le;return(0,Fl.isNullId)(null===(vt=this._myVTour)||void 0===vt||null===(bt=vt.state)||void 0===bt||null===(le=bt.currentNode)||void 0===le?void 0:le.id)?null:this._myVTour.state.currentNode?Object.assign({},this._myVTour.state.currentNode):null}getPictureId(){var vt,bt,le,ls,ho;const Dl=(null===(vt=this._myVTour)||void 0===vt||null===(bt=vt.state)||void 0===bt?void 0:bt.loadingNode)||(null===(le=this._myVTour)||void 0===le||null===(ls=le.state)||void 0===ls||null===(ho=ls.currentNode)||void 0===ho?void 0:ho.id);return(0,Fl.isNullId)(Dl)?null:Dl}_onSelect(vt){if(!this._parent.getAPI())return(this._parent.onceAllAPIsReady.bind(this._parent)||this._parent.onceAPIReady.bind(this._parent))().then((()=>this._onSelect(vt)));vt.detail.seqId&&(this._picturesSequences[vt.detail.picId]=vt.detail.seqId),vt.detail.seqId&&!vt.detail.picId?(this.loader.show(),this._parent.getAPI().getSequenceItems(vt.detail.seqId,null,null,1).then((bt=>{var le;if((null===bt||void 0===bt||null===(le=bt.features)||void 0===le?void 0:le.length)>0){const le=bt.features[0].id;this._picturesSequences[le]=vt.detail.seqId,this._parent.select(vt.detail.seqId,le)}})).catch((vt=>this.showErrorOverlay(vt,this._parent._t.pnx.error_pic,!0)))):vt.detail.picId?this.getPictureId()!==vt.detail.picId&&(this.loader.show(),this._myVTour.setCurrentNode(vt.detail.picId).catch((vt=>{this.showErrorOverlay(vt,this._parent._t.pnx.error_pic,!0)}))):(this._myVTour.setCurrentNode(null),this._myVTour.state.currentNode.id=null,this._myVTour.state.loadingNode=null)}goToNextPicture(){if(!this.getPictureMetadata())throw new Error("No picture currently selected");if("pic"==this._picturesNavigation)throw new Error("Pictures navigation is locked to current picture");const vt=this.getPictureMetadata().sequence.nextPic;if(!vt)throw new Error("No next picture available");this._parent.select(this.getPictureMetadata().sequence.id,vt)}goToPrevPicture(){if(!this.getPictureMetadata())throw new Error("No picture currently selected");if("pic"==this._picturesNavigation)throw new Error("Pictures navigation is locked to current picture");const vt=this.getPictureMetadata().sequence.prevPic;if(!vt)throw new Error("No previous picture available");this._parent.select(this.getPictureMetadata().sequence.id,vt)}async goToPosition(vt,bt){if("pic"==this._picturesNavigation)throw new Error("Pictures navigation is locked to current picture");return this._parent.getAPI().getPicturesAroundCoordinates(vt,bt).then((vt=>{if(vt.features.length>0){const bt=vt.features.pop();return this._parent.select(null===bt||void 0===bt?void 0:bt.collection,bt.id),bt.id}return Promise.reject(new Error("No picture found nearby given coordinates"))}))}getXY(){const vt=(0,Fl.positionToXYZ)(this.getPosition());return vt.x=(vt.x+this.getPictureOriginalHeading())%360,vt}getXYZ(){const vt=this.getXY();return vt.z=this.getZoomLevel(),vt}getPictureOriginalHeading(){var vt,bt;return(null===(vt=this.getPictureMetadata())||void 0===vt||null===(bt=vt.properties)||void 0===bt?void 0:bt["view:azimuth"])||0}getPictureRelativeHeading(){return(0,Fl.getRelativeHeading)(this.getPictureMetadata())}clearPictureMetadataCache(){var vt,bt,le,ls;const ho=null===(vt=this.getPictureMetadata())||void 0===vt?void 0:vt.id,Dl=null===(bt=this.getPictureMetadata())||void 0===bt||null===(le=bt.sequence)||void 0===le?void 0:le.id;null===(ls=this._myVTour.state.currentTooltip)||void 0===ls||ls.hide(),this._myVTour.state.currentTooltip=null,this._myVTour.state.currentNode=null,this._myVTour.state.preload={},this._myVTour.datasource.nodes={},ho&&this._parent.select(Dl,ho)}setXYZ(vt,bt,le){const ls=(0,Fl.xyzToPosition)(vt-this.getPictureOriginalHeading(),bt,le);this.rotate({yaw:ls.yaw,pitch:ls.pitch}),this.zoom(ls.zoom)}setHigherContrast(vt){this.renderer.renderer.toneMapping=vt?3:0,this.renderer.renderer.toneMappingExposure=vt?2:1,this.needsUpdate()}getTransitionDuration(){return this._transitionDuration}setTransitionDuration(vt){if((vt=parseFloat(vt))<100||vt>Md)throw new Error("Invalid transition duration (should be between 100 and "+Md+")");this._transitionDuration=vt;const bt=new CustomEvent("transition-duration-changed",{detail:{value:vt}});this.dispatchEvent(bt)}setPanorama(vt,bt){if(vt.baseUrl.startsWith("data:"))return Promise.resolve();const onFailure=vt=>{var bt;return this.showErrorOverlay(vt,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.error_pic,!0)};try{return super.setPanorama(vt,bt).catch(onFailure)}catch(le){onFailure(le)}}showErrorOverlay(vt,bt,le){var ls,ho,Fl,sc;null!==(ls=this._parent)&&void 0!==ls&&ls.loader.isVisible()||!this.overlay.isVisible()?null===(ho=this._parent)||void 0===ho||ho.loader.dismiss(vt,bt,le?()=>{var vt;null===(vt=this._parent)||void 0===vt||vt.loader.dismiss(),this.overlay.hide()}:void 0):(console.error(vt),this.overlay.show({image:'<img style="width: 200px" src="'.concat(Dl,'" alt="" />'),title:null===(Fl=this._parent)||void 0===Fl?void 0:Fl._t.pnx.error,text:bt+"<br />"+(null===(sc=this._parent)||void 0===sc?void 0:sc._t.pnx.error_click),dissmisable:le}))}playSequence(){this._sequencePlaying=!0,this.container.classList.add("pnx-psv-playing");const vt=new Event("sequence-playing",{bubbles:!0,composed:!0});this.dispatchEvent(vt);const nextPicturePlay=()=>{if(this._sequencePlaying){this.addEventListener("picture-loaded",(()=>{this._playTimer=setTimeout((()=>{nextPicturePlay()}),this.getTransitionDuration())}),{once:!0});try{this.goToNextPicture()}catch(vt){this.stopSequence()}}};this.addEventListener("click",(()=>this.stopSequence())),nextPicturePlay()}stopSequence(){this._sequencePlaying=!1,this.container.classList.remove("pnx-psv-playing"),this._playTimer&&(clearTimeout(this._playTimer),delete this._playTimer),this.forceRefresh();const vt=new Event("sequence-stopped",{bubbles:!0,composed:!0});this.dispatchEvent(vt)}isSequencePlaying(){return this._sequencePlaying}toggleSequencePlaying(){this.isSequencePlaying()?this.stopSequence():this.playSequence()}getPicturesNavigation(){return this._picturesNavigation}setPicturesNavigation(vt){"none"===vt&&(vt="pic"),this._picturesNavigation=vt;const bt=this.container.querySelector(".psv-virtual-tour-arrows");bt&&(bt.style.display="pic"==vt?"none":null);const le=new CustomEvent("pictures-navigation-changed",{detail:{value:vt}});this.dispatchEvent(le)}_picturesNavFilter(vt){switch(this._picturesNavigation){case"seq":return["next","prev"].includes(vt.rel);case"pic":case"none":return!1;default:return!0}}areAnnotationsVisible(){return this._annotationsVisible}getSelectedAnnotations(){return Object.keys(this._myMarkers.markers).filter((vt=>{var bt,le,ls;return vt.startsWith("annotation-")&&(null===(bt=this._myMarkers.markers[vt])||void 0===bt||null===(le=bt.config)||void 0===le||null===(ls=le.data)||void 0===ls?void 0:ls.selected)})).map((vt=>vt.replace("annotation-","")))}toggleAllAnnotations(vt){const bt=this.getPictureMetadata(),le=this._annotationsVisible==vt;if(!bt)throw this._myMarkers.clearMarkers(),new Error("No picture currently selected");if(vt){var ls;let vt=bt.properties.annotations||[];0===(null===(ls=vt)||void 0===ls?void 0:ls.length)&&console.warn("No annotation available on picture",bt.id),vt=vt.map((vt=>{if(!bt.properties["pers:interior_orientation"].sensor_array_dimensions)return console.warn("Picture lacks pers:interior_orientation.sensor_array_dimensions property, can't compute marker"),null;const le=vt.shape.coordinates.map((vt=>vt.map((vt=>{var le;const ls=null===(le=bt.panorama)||void 0===le?void 0:le.cropData,ho={textureX:vt[0]+((null===ls||void 0===ls?void 0:ls.croppedX)||0),textureY:vt[1]+((null===ls||void 0===ls?void 0:ls.croppedY)||0)};return this.dataHelper.textureCoordsToSphericalCoords(ho)}))));return{id:"annotation-".concat(vt.id),polygon:le,data:{id:vt.id},className:"pnx-psv-annotation",svgStyle:{stroke:"var(--orange)",strokeWidth:"3px",fill:"var(--orange-transparent)",cursor:"pointer"},tooltip:this._parent._t.pnx.semantics_annotation_tooltip}})),this._myMarkers.setMarkers(vt)}else this._myMarkers.clearMarkers();this._annotationsVisible=vt,le||this.dispatchEvent(new CustomEvent("annotations-toggled",{detail:{visible:vt}}))}focusOnAnnotation(vt){let bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1],le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const ls=this.getSelectedAnnotations();if(vt&&1===ls.length&&ls[0]===vt)return;this.areAnnotationsVisible()||this.toggleAllAnnotations(!0),this.unfocusAnnotation(!0);const ho="annotation-".concat(vt);if(this._myMarkers.markers[ho]){if(this._myMarkers.updateMarker({id:ho,svgStyle:{stroke:"var(--red)",strokeWidth:"3px",fill:"var(--red-transparent)"},data:{selected:!0,blockFocus:bt}}),this._myMarkers.gotoMarker(ho,0),this.zoom(65),!le){const bt=new CustomEvent("annotation-focused",{detail:{annotationId:vt}});this.dispatchEvent(bt)}}else setTimeout((()=>this.focusOnAnnotation(vt,bt,le)),100)}unfocusAnnotation(){let vt=arguments.length>0&&void 0!==arguments[0]&&arguments[0],bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const le=this.getSelectedAnnotations();if(le.length>0){let ls=0;le.forEach((vt=>{var le,ho,Dl;const Fl="annotation-"+vt;bt&&null!==(le=this._myMarkers.markers[Fl])&&void 0!==le&&null!==(ho=le.config)&&void 0!==ho&&null!==(Dl=ho.data)&&void 0!==Dl&&Dl.blockFocus?ls++:this._myMarkers.updateMarker({id:Fl,svgStyle:{stroke:"var(--orange)",strokeWidth:"3px",fill:"var(--orange-transparent)"},data:{selected:!1,blockFocus:!1}})})),!vt&&ls<le.length&&this.dispatchEvent(new Event("annotations-unfocused"))}}startDrawAnnotation(){this.toggleAllAnnotations(!1),this._drawingAnnotation=[],this._drawingMoves=0,this._myMarkers.addMarker({id:Rd,polygon:[{yaw:0,pitch:0},{yaw:0,pitch:0},{yaw:0,pitch:0}],svgStyle:{fill:Gd,stroke:Ud,strokeWidth:"2px"},visible:!1}),this._myMarkers.addMarker({id:Ld,circle:5,position:{yaw:0,pitch:0},style:{cursor:"pointer"},svgStyle:{fill:jd,stroke:Od,strokeWidth:"3px"}}),this._myMarkers.addMarker({id:Nd,circle:5,position:{yaw:0,pitch:0},style:{cursor:"pointer"},svgStyle:{fill:jd,stroke:Od,strokeWidth:"3px"},visible:!1});const firstMove=vt=>{const bt=this.getPositionFromEvent(vt);bt&&this._myMarkers.markers[Ld]&&(this._myMarkers.updateMarker({id:Ld,position:bt,style:{cursor:"grab"}}),2==this._drawingAnnotation.length&&this._myMarkers.markers[Rd]&&this._myMarkers.updateMarker({id:Rd,polygon:[bt,{yaw:bt.yaw,pitch:this._drawingAnnotation[1].pitch},this._drawingAnnotation[1],{yaw:this._drawingAnnotation[1].yaw,pitch:bt.pitch}]}))},secMove=vt=>{const bt=this.getPositionFromEvent(vt);bt&&this._myMarkers.markers[Nd]&&(this._myMarkers.updateMarker({id:Nd,position:bt,style:{cursor:"grab"}}),this._drawingAnnotation.length>=1&&this._myMarkers.markers[Rd]&&this._myMarkers.updateMarker({id:Rd,polygon:[this._drawingAnnotation[0],{yaw:this._drawingAnnotation[0].yaw,pitch:bt.pitch},bt,{yaw:bt.yaw,pitch:this._drawingAnnotation[0].pitch}]}))};this._drawListeners=[firstMove,secMove],this.parent.addEventListener("mousemove",firstMove),this._drawingMoves=1,this._drawListenerClick=vt=>{let bt=!1;if(2!==this._drawingMoves&&vt.marker.id===Ld?0==this._drawingAnnotation.length?(this._drawingAnnotation.push({yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch}),this.parent.removeEventListener("mousemove",firstMove),this._myMarkers.updateMarker({id:Ld,style:{cursor:"pointer"}}),this._myMarkers.updateMarker({id:Nd,visible:!0,position:{yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch}}),this._myMarkers.updateMarker({id:Rd,visible:!0}),this.parent.addEventListener("mousemove",secMove),this._drawingMoves=2):0===this._drawingMoves?(this.parent.addEventListener("mousemove",firstMove),this._drawingMoves=1):(this._drawingAnnotation[0]={yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch},this.parent.removeEventListener("mousemove",firstMove),this._myMarkers.updateMarker({id:Ld,style:{cursor:"pointer"}}),this._drawingMoves=0,bt=!0):1!==this._drawingMoves&&vt.marker.id===Nd&&(1==this._drawingAnnotation.length?(this._drawingAnnotation.push({yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch}),this.parent.removeEventListener("mousemove",secMove),this._myMarkers.updateMarker({id:Nd,style:{cursor:"pointer"}}),this._drawingMoves=0,bt=!0):2===this._drawingMoves?(this._drawingAnnotation[1]={yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch},this.parent.removeEventListener("mousemove",secMove),this._myMarkers.updateMarker({id:Nd,style:{cursor:"pointer"}}),this._drawingMoves=0,bt=!0):(this.parent.addEventListener("mousemove",secMove),this._drawingMoves=2)),bt){var le,ls;const vt=this.dataHelper.sphericalCoordsToTextureCoords(this._drawingAnnotation[0]),bt=this.dataHelper.sphericalCoordsToTextureCoords(this._drawingAnnotation[1]);let ho=[vt.textureX,vt.textureY,bt.textureX,bt.textureY];const Dl=null===(le=this.getPictureMetadata())||void 0===le||null===(ls=le.panorama)||void 0===ls?void 0:ls.cropData;if(Dl&&(ho[0]-=Dl.croppedX,ho[1]-=Dl.croppedY,ho[2]-=Dl.croppedX,ho[3]-=Dl.croppedY,(ho[0]<0||ho[0]>Dl.croppedWidth||ho[1]<0||ho[1]>Dl.croppedHeight||ho[2]<0||ho[2]>Dl.croppedWidth||ho[3]<0||ho[3]>Dl.croppedHeight)&&(ho=null)),ho[0]>=ho[2]&&ho[1]>=ho[3]){let vt=ho[0],bt=ho[2],le=ho[1];ho=[bt,ho[3],vt,le]}const Fl=new CustomEvent("annotation-drawn",{detail:{shape:ho}});this.dispatchEvent(Fl)}},this._myMarkers.addEventListener("select-marker",this._drawListenerClick)}fixDrawAnnotation(){[Ld,Nd].forEach((vt=>{try{this._myMarkers.removeMarker(vt)}catch(bt){}})),(this._drawListeners||[]).forEach((vt=>this.parent.removeEventListener("mousemove",vt))),this._myMarkers.removeEventListener("select-marker",this._drawListenerClick),this._myMarkers.updateMarker({id:Rd,svgStyle:{stroke:"var(--red)",strokeWidth:"3px",fill:"var(--red-transparent)",cursor:"pointer"}}),this._drawingMoves=0}stopDrawAnnotation(){[Ld,Nd,Rd].forEach((vt=>{try{this._myMarkers.removeMarker(vt)}catch(bt){}})),(this._drawListeners||[]).forEach((vt=>this.parent.removeEventListener("mousemove",vt))),this._myMarkers.removeEventListener("select-marker",this._drawListenerClick),delete this._drawingMoves,this._drawingAnnotation=null}getPositionFromEvent(vt){const bt=this.container.getBoundingClientRect(),le=vt.clientX-bt.left,ls=vt.clientY-bt.top,ho=this.renderer.getIntersections({x:le,y:ls}).find((vt=>vt.object.userData[uc.aH.VIEWER_DATA]));if(ho)return this.dataHelper.vector3ToSphericalCoords(ho.point)}forceRefresh(){var vt;const bt=this._myVTour.getCurrentNode();if(bt&&bt.panorama.baseUrl!==(null===bt||void 0===bt||null===(vt=bt.panorama)||void 0===vt?void 0:vt.origBaseUrl)){const vt=this.getZoomLevel(),le=this.getPosition();this._myVTour.state.currentNode=null,this._myVTour.setCurrentNode(bt.id,{zoomTo:vt,rotateTo:le,fadeIn:!1,speed:0,rotation:!1})}bt&&bt.panorama.rows>1&&this.adapter.__refresh()}}},4374:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Popup});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(8591),mc=le(6627);class Popup extends Fl.WF{constructor(){super(),this.visible=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("click",(vt=>{vt.target===this&&this.close()})),document.addEventListener("keyup",(vt=>{"Escape"===vt.key&&this.visible&&this.close()}))}attributeChangedCallback(vt,bt,le){super.attributeChangedCallback(vt,bt,le),"visible"==vt&&(""!==le&&!0!==le||this.dispatchEvent(new Event("open")))}close(){this.visible=!1,this.dispatchEvent(new Event("close"))}render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<div class="pnx-panel pnx-padded">\n\t\t\t\t<pnx-button\n\t\t\t\t\tclass="btn-close"\n\t\t\t\t\tkind="inline"\n\t\t\t\t\tsize="l"\n\t\t\t\t\t@click=',"\n\t\t\t\t>\n\t\t\t\t\t","\n\t\t\t\t</pnx-button>\n\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t"])),this.close.bind(this),(0,sc.fa)(mc.faXmark))}}Popup.styles=[uc.nd,uc.Op,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t/* Backdrop */\n\t\t:host {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tleft: 0;\n\t\t\tbottom: 0;\n\t\t\topacity: 0;\n\t\t\tvisibility: hidden;\n\t\t\tpointer-events: none;\n\t\t\ttransition: all 0.2s;\n\t\t\tbackground: rgba(0, 0, 0, 0.85);\n\t\t}\n\t\t:host(*[visible]) {\n\t\t\topacity: 1;\n\t\t\tvisibility: visible;\n\t\t\tpointer-events: unset;\n\t\t\tz-index: 200;\n\t\t}\n\n\t\t/* Content backgroud */\n\t\t.pnx-panel {\n\t\t\tbox-sizing: border-box;\n\t\t\tposition: relative;\n\t\t\twidth: 90%;\n\t\t\tmax-height: 90%;\n\t\t\tmax-width: 400px;\n\t\t\toverflow-y: auto;\n\t\t}\n\n\t\t.btn-close {\n\t\t\tposition: absolute;\n\t\t\ttop: 15px;\n\t\t\tright: 15px;\n\t\t}\n\t"])))],Popup.properties={visible:{type:Boolean,reflect:!0}},customElements.define("pnx-popup",Popup)},4364:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ProgressBar});var ls,ho,Dl=le(7528),Fl=le(4542);class ProgressBar extends Fl.WF{render(){var vt;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["\n\t\t\t<progress\n\t\t\t\tvalue=","\n\t\t\t\tclass=",'\n\t\t\t\tmax="100"\n\t\t\t\ttitle=',"\n\t\t\t></progress>\n\t\t"])),this.value>=0?this.value:Fl.s6,this.value>=0?Fl.s6:"indeterminate",null===(vt=this._t)||void 0===vt?void 0:vt.map.loading)}}ProgressBar.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\tprogress {\n\t\t\tmax-width: 80vh;\n\t\t\twidth: 300px;\n\t\t\theight: 16px;\n\t\t\tappearance: none;\n\t\t\t-webkit-appearance: none;\n\t\t\tborder: 1px solid var(--grey-semi-dark);\n\t\t\tbackground-color: var(--grey);\n\t\t\tborder-radius: 8px;\n\t\t\toverflow: hidden;\n\t\t\tpadding: 3px;\n\t\t\tbox-sizing: border-box;\n\t\t\tdisplay: block;\n\t\t}\n\n\t\tprogress::-webkit-progress-bar {\n\t\t\tbackground-color: var(--grey);\n\t\t}\n\n\t\t/* Don\'t merge with -moz below, for some f*ing reason a list selector doesn\'t work with Chrome */\n\t\tprogress::-webkit-progress-value {\n\t\t\tbackground-color: var(--blue);\n\t\t\tborder-radius: 5px;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\tprogress::-moz-progress-bar {\n\t\t\tbackground-color: var(--blue);\n\t\t\tborder-radius: 5px;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\tprogress[value=""]::-moz-progress-bar,\n\t\tprogress:not([value])::-moz-progress-bar {\n\t\t\tanimation: indeterminateAnimation 1.5s infinite linear;\n\t\t}\n\n\t\tprogress.indeterminate {\n\t\t\tposition: relative;\n\t\t\tbackground-color: var(--grey);\n\t\t\toverflow: hidden;\n\t\t}\n\n\t\tprogress.indeterminate::after {\n\t\t\tcontent: "";\n\t\t\tposition: absolute;\n\t\t\tleft: 3px;\n\t\t\ttop: 3px;\n\t\t\tbottom: 3px;\n\t\t\twidth: 20%;\n\t\t\tbackground-color: var(--blue);\n\t\t\tborder-radius: 5px;\n\t\t\tanimation: indeterminateAnimation 1.5s infinite linear;\n\t\t\tpointer-events: none;\n\t\t}\n\n\t\t@keyframes indeterminateAnimation {\n\t\t\t0% { margin-left: 0%; width: 2%; }\n\t\t\t15% { margin-left: 0%; width: 20%; }\n\t\t\t50% { margin-left: 40%; width: 20%; }\n\t\t\t85% { margin-left: 80%; width: 20%; }\n\t\t\t100% { margin-left: 98%; width: 2%; }\n\t\t}\n\t']))),ProgressBar.properties={value:{type:Number}},customElements.define("pnx-progress-bar",ProgressBar)},2675:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>QualityScore});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(7343);class QualityScore extends sc.WF{constructor(){super(),this.grade=0,this.input=!1}_onInput(){const vt=[];for(let bt of this.renderRoot.querySelectorAll("input"))bt.checked&&vt.push(bt.value);this.grade=vt.join(","),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0}))}render(){const vt="".concat(this.grade).split(",").map((vt=>parseInt(vt))).filter((vt=>!isNaN(vt)));return this.input?uc.QUALITYSCORE_VALUES.map(((bt,le)=>{var ho;return(0,sc.qy)(ls||(ls=(0,Fl.A)(['\n\t\t\t\t<input\n\t\t\t\t\tid="',"-",'"\n\t\t\t\t\ttype="checkbox"\n\t\t\t\t\tname="qualityscore"\n\t\t\t\t\tvalue="','"\n\t\t\t\t\t@change="','"\n\t\t\t\t\t.checked=','\n\t\t\t\t/>\n\t\t\t\t<label\n\t\t\t\t\tfor="',"-",'"\n\t\t\t\t\ttitle="','"\n\t\t\t\t\tstyle="background-color: ','"\n\t\t\t\t>\n\t\t\t\t\t',"\n\t\t\t\t</label>\n\t\t\t"])),this.input,bt.label,5-le,this._onInput,vt.includes(5-le),this.input,bt.label,null===(ho=this._t)||void 0===ho?void 0:ho.pnx.filter_qualityscore_help,bt.color,bt.label)})):uc.QUALITYSCORE_VALUES.map(((bt,le)=>(0,sc.qy)(ho||(ho=(0,Fl.A)(['\n\t\t\t\t<span class="','" style="background-color: ','">\n\t\t\t\t\t',"\n\t\t\t\t</span>\n\t\t\t"])),vt.includes(5-le)?"selected":"",bt.color,bt.label)))}}QualityScore.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(['\n\t\t:host {\n\t\t\tgap: 0px;\n\t\t\tjustify-content: center;\n\t\t\theight: 2em;\n\t\t\tfont-size: 18px;\n\t\t\tdisplay: inline-flex;\n\t\t\talign-items: center;\n\t\t\tcolor: white;\n\t\t}\n\t\n\t\t/* Single letter */\n\t\tspan, label {\n\t\t\twidth: 1.2em;\n\t\t\theight: 1.5em;\n\t\t\tline-height: 1.5em;\n\t\t\tdisplay: inline-block;\n\t\t\tborder: 0.05em solid white;\n\t\t\ttext-align: center;\n\t\t\tbackground-color: gray;\n\t\t\tcolor: rgba(255,255,255,0.9);\n\t\t\tfont-family: var(--font-family);\n\t\t\tfont-weight: 800;\n\t\t\tvertical-align: middle;\n\t\t}\n\n\t\t/* Rounded corners for first/last */\n\t\tspan:first-of-type, label:first-of-type {\n\t\t\tborder-top-left-radius: 0.4em;\n\t\t\tborder-bottom-left-radius: 0.4em;\n\t\t}\n\n\t\tspan:last-of-type, label:last-of-type {\n\t\t\tborder-top-right-radius: 0.4em;\n\t\t\tborder-bottom-right-radius: 0.4em;\n\t\t}\n\n\t\t/* Selected letter */\n\t\t.selected, input[type="checkbox"]:checked + label {\n\t\t\tfont-size: 1.3em;\n\t\t\theight: 1.6em;\n\t\t\tline-height: 1.6em;\n\t\t\tborder-radius: 0.3em !important;\n\t\t}\n\n\t\t/* Clickable letter for input */\n\t\tlabel { cursor: pointer; }\n\n\t\tlabel:hover {\n\t\t\tfont-size: 1.2em;\n\t\t\theight: 1.6em;\n\t\t\tline-height: 1.6em;\n\t\t\tborder-radius: 0.3em !important;\n\t\t}\n\n\t\tinput[type="checkbox"] { display: none; }\n\t']))),QualityScore.properties={grade:{type:String,reflect:!0},input:{type:String}},customElements.define("pnx-quality-score",QualityScore)},3409:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SearchBar});var ls,ho,Dl,Fl,sc,uc,mc=le(7528),gc=le(4542),Ac=le(1198),Ec=le(4901),kc=le(5995),du=le(8591),_u=le(4011),Md=le(7761),Ld=le(3444),Nd=le(6627);class SearchBar extends gc.WF{constructor(){super(),this.reduceable=!1,this.reduced=!1,this.placeholder=gc.s6,this.size="md",this._icon="search",this._results=null,this["no-menu-closure"]=!1,this._throttler=null,delete this._lastSearch}connectedCallback(){super.connectedCallback(),this["no-menu-closure"]||(0,kc.listenForMenuClosure)(this,this.reset.bind(this))}attributeChangedCallback(vt,bt,le){super.attributeChangedCallback(vt,bt,le),"value"===vt&&([null,void 0,"","null"].includes(le)?this._icon="search":this._icon="empty")}_onIconClick(){["empty","warn"].includes(this._icon)&&this.reset(),this.reduceable&&"search"==this._icon&&(this.reduced=!this.reduced)}_onInputChange(vt){this.value=vt.target.value,this._throttledSearch()}_onResultClick(vt){this.dispatchEvent(new CustomEvent("result",{bubbles:!0,composed:!0,detail:vt})),this._results=null,this._throttler&&(clearTimeout(this._throttler),this._throttler=null),!this.reduceable&&vt?(this.value=null===vt||void 0===vt?void 0:vt.title,this._icon="empty"):(this.value="",this._icon="search",this.reduceable&&(this.reduced=!0))}_throttledSearch(){this._throttler&&(clearTimeout(this._throttler),delete this._throttler),this._throttler=setTimeout(this._search.bind(this),500)}_search(){this.value&&0!=this.value.length?this.searcher?(this._icon="loading",this._results=null,this.searcher(this.value).then((vt=>{if("loading"===this._icon)if(this._icon="empty",vt&&0!=vt.length)if(!0===vt)this._results=null;else{var bt;if(this._results=vt,!this["no-menu-closure"])null===(bt=this._parent)||void 0===bt||bt.dispatchEvent(new CustomEvent("menu-opened",{detail:{menu:this}}))}else this._results=[]})).catch((vt=>{console.error(vt),this._icon="warn"}))):console.warn("No search handler defined"):this.reset()}reset(){this._onResultClick(null)}render(){var vt,bt;const le={sb:!0,"sb-xxl":"xxl"===this.size,"sb-reduceable":this.reduceable,"sb-reduced":this.reduced};return(0,gc.qy)(ls||(ls=(0,mc.A)(["<div\n\t\t\tid=","\n\t\t\tclass=",'\n\t\t\tpart="container"\n\t\t>\n\t\t\t<slot name="pre" class=','></slot>\n\n\t\t\t<input\n\t\t\t\tid="','-input"\n\t\t\t\ttype="text"\n\t\t\t\tplaceholder=','\n\t\t\t\tautocomplete="off"\n\t\t\t\t@change=',"\n\t\t\t\t@keypress=","\n\t\t\t\t@paste=","\n\t\t\t\t@input=","\n\t\t\t\t.value=",'\n\t\t\t\tpart="input"\n\t\t\t/>\n\n\t\t\t<span\n\t\t\t\tclass="sb-icon"\n\t\t\t\t@click=',"\n\t\t\t>\n\t\t\t\t","\n\t\t\t\t","\n\t\t\t\t","\n\t\t\t\t","\n\t\t\t</span>\n\n\t\t\t","\n\t\t</div>"])),this.id,(0,Ac.H)(le),(0,Ac.H)({"sb-reduced":this.reduced}),this.id,this.placeholder,this._onInputChange.bind(this),this._onInputChange.bind(this),this._onInputChange.bind(this),this._onInputChange.bind(this),this.value||"",this._onIconClick.bind(this),"search"==this._icon?(0,kc.fa)(Md.$U):gc.s6,"loading"==this._icon?(0,kc.fa)(Ld.s4,{classes:["fa-spin"]}):gc.s6,"empty"==this._icon?(0,kc.fa)(Nd.faXmark):gc.s6,"warn"==this._icon?(0,kc.fa)(_u.lE):gc.s6,!this.reduced&&this._results?(0,gc.qy)(ho||(ho=(0,mc.A)(['\n\t\t\t\t<div class="sb-results">\n\t\t\t\t\t',"\n\n\t\t\t\t\t","\n\t\t\t\t</div>\n\t\t\t"])),0===this._results.length?(0,gc.qy)(Dl||(Dl=(0,mc.A)(['\n\t\t\t\t\t\t<div class="sb-empty">',"</div>\n\t\t\t\t\t"])),null===(vt=this._parent)||void 0===vt||null===(bt=vt._t)||void 0===bt?void 0:bt.pnx.search_empty):gc.s6,(0,Ec.T)(this._results,(vt=>(0,gc.qy)(Fl||(Fl=(0,mc.A)(['\n\t\t\t\t\t\t<div class="sb-result" @click=',">\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</div>\n\t\t\t\t\t"])),(()=>this._onResultClick(vt)),vt.title,vt.subtitle&&""!=vt.subtitle?(0,gc.qy)(sc||(sc=(0,mc.A)(["<br /><small>","</small>"])),vt.subtitle):gc.s6)))):gc.s6)}}SearchBar.styles=[du.Op,(0,gc.AH)(uc||(uc=(0,mc.A)(["\n\t\t/* Container */\n\t\t.sb {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: space-between;\n\t\t\tgap: 5px;\n\t\t\tborder: 1px solid var(--widget-border-div);\n\t\t\tborder-radius: 5px;\n\t\t\tbackground-color: var(--widget-bg);\n\t\t\tcolor: var(--widget-font);\n\t\t\theight: 30px;\n\t\t\tborder-radius: 20px;\n\t\t\tposition: relative;\n\t\t\tpadding: 0 0 0 10px;\n\t\t\twidth: fit-content;\n\t\t\tmax-width: 100%;\n\t\t\tbox-sizing: border-box;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\t\t.sb.sb-xxl {\n\t\t\theight: 40px;\n\t\t\tline-height: 40px;\n\t\t}\n\t\t.sb.sb-reduceable {\n\t\t\twidth: 360px;\n\t\t}\n\t\t.sb.sb-reduceable.sb-reduced {\n\t\t\twidth: fit-content;\n\t\t\tpadding: 0;\n\t\t\tgap: 0;\n\t\t}\n\n\t\t/* Text field */\n\t\t.sb input {\n\t\t\tbackground: none;\n\t\t\tborder: none !important;\n\t\t\toutline: none;\n\t\t\theight: 20px;\n\t\t\twidth: 100%;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\t\t.sb.sb-xxl input {\n\t\t\tfont-size: 1.1em;\n\t\t}\n\t\t.sb.sb-reduceable.sb-reduced input {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t/* Status icon */\n\t\t.sb-icon {\n\t\t\tcursor: pointer;\n\t\t\theight: 30px;\n\t\t\tline-height: 30px;\n\t\t\twidth: 30px;\n\t\t\tmin-width: 30px;\n\t\t\ttext-align: center;\n\t\t}\n\t\t.sb.sb-xxl .sb-icon {\n\t\t\theight: 40px;\n\t\t\tline-height: 40px;\n\t\t\twidth: 40px;\n\t\t\tmin-width: 40px;\n\t\t}\n\t\t.sb-icon svg {\n\t\t\tpointer-events: none;\n\t\t\twidth: 14px;\n\t\t\theight: 14px;\n\t\t}\n\n\t\t/* Search results */\n\t\t.sb-results {\n\t\t\tposition: absolute;\n\t\t\ttop: 35px;\n\t\t\tlist-style: none;\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tmax-width: calc(100% - 20px);\n\t\t\tborder: 1px solid var(--widget-border-div);\n\t\t\tborder-radius: 10px;\n\t\t\tbackground-color: var(--widget-bg);\n\t\t\tcolor: var(--widget-font);\n\t\t\tz-index: 130;\n\t\t\tfont-size: 1.05em;\n \t\t\tline-height: normal;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\t\t.sb.sb-xxl .sb-results {\n\t\t\ttop: 45px;\n\t\t}\n\t\t.sb-result,\n\t\t.sb-empty {\n\t\t\tdisplay: block;\n\t\t\tpadding: 5px 15px;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tcursor: pointer;\n\t\t\tborder-radius: 0;\n\t\t}\n\t\t.sb-result:hover {\n\t\t\tbackground-color: var(--widget-bg-hover);\n\t\t}\n\t\t.sb-result:first-child {\n\t\t\tborder-top-right-radius: 10px;\n\t\t\tborder-top-left-radius: 10px;\n\t\t\tpadding-top: 15px;\n\t\t}\n\t\t.sb-result:last-child {\n\t\t\tborder-bottom-right-radius: 10px;\n\t\t\tborder-bottom-left-radius: 10px;\n\t\t\tpadding-bottom: 15px;\n\t\t}\n\t"])))],SearchBar.properties={id:{type:String},placeholder:{type:String},reduceable:{type:Boolean,reflect:!0},reduced:{type:Boolean,reflect:!0},value:{type:String},size:{type:String},_icon:{state:!0},_results:{state:!0},searcher:{type:Function},"no-menu-closure":{type:Boolean}},customElements.define("pnx-search-bar",SearchBar)},8780:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsEditor});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(9039),uc=le(2283),mc=le(8591),gc=le(2614),Ac=le.n(gc);class SemanticsEditor extends Fl.WF{constructor(){super(),this.semantics=null,this._valid=!0,this._firstSemantics=null,this.rows=3}connectedCallback(){super.connectedCallback(),this._firstSemantics=null===this.semantics?[]:Ac().parse(Ac().stringify(this.semantics))}getDiff(){return(0,uc.computeDiffTags)(this._firstSemantics||[],this.semantics)}checkValidity(){return this._valid}reportValidity(){var vt;null===(vt=this.renderRoot.querySelector("textarea"))||void 0===vt||vt.reportValidity()}reset(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;this.semantics=null,this._valid=!0;const bt=this.renderRoot.querySelector("textarea");null===bt||void 0===bt||bt.setCustomValidity(""),null===bt||void 0===bt||bt.reportValidity(),this._firstSemantics=vt,this.semantics=vt}forceInput(){const vt=this.renderRoot.querySelector("textarea");this._onInput({target:vt}),this._onBlur({target:vt})}_onInput(vt){const bt=vt.target;try{this.semantics=(0,uc.parseSemanticsString)(bt.value)||[],this._valid=!0}catch(le){"Invalid tags"!==le.message&&console.error(le),this._valid=!1}}_onBlur(vt){const bt=vt.target.checkValidity();if(this._valid)vt.target.setCustomValidity(""),this.dispatchEvent(new CustomEvent("change",{detail:{semantics:this.semantics||[],delta:(0,uc.computeDiffTags)(this._firstSemantics||[],this.semantics)}}));else if(bt){var le;vt.target.setCustomValidity((null===(le=this._t)||void 0===le?void 0:le.pnx.semantics_editor_error)||"Invalid syntax"),vt.target.reportValidity()}}render(){var vt;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<textarea\n\t\t\t\tpart="text"\n\t\t\t\tautocomplete="off"\n\t\t\t\tautocorrect="off"\n\t\t\t\tautocapitalize="off"\n\t\t\t\tspellcheck="false"\n\t\t\t\tplaceholder=',"\n\t\t\t\t@input=","\n \t\t\t\t@blur=","\n\t\t\t\trows=","\n\t\t\t\t.value=","\n\t\t\t></textarea>\n\t\t"])),(null===(vt=this._t)||void 0===vt?void 0:vt.pnx.semantics_editor_example)||"key1=value1\nprefix|key2=value2",this._onInput,this._onBlur,this.rows,(0,uc.semanticsToString)(this.semantics))}}SemanticsEditor.styles=[mc.PC,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\ttextarea:invalid {\n\t\t\tborder: 2px solid var(--red);\n\t\t\tbackground-color:var(--beige);\n\t\t}\n\t"])))],SemanticsEditor.properties={semantics:{converter:sc.A.GetJSONConverter(),reflect:!0},rows:{type:Number},_valid:{state:!0},_t:{converter:sc.A.GetJSONConverter()},_firstSemantics:{state:!0}},customElements.define("pnx-semantics-editor",SemanticsEditor)},2373:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsTable});var ls,ho,Dl,Fl,sc,uc,mc,gc=le(7528),Ac=le(4542),Ec=le(8591),kc=le(2283);class SemanticsTable extends Ac.WF{render(){if(!this.source)return Ac.s6;const vt=(0,kc.groupByPrefix)(this.source.semantics);return(0,Ac.qy)(ls||(ls=(0,gc.A)(["<table>\n\t\t\t<thead>\n\t\t\t\t<tr><th>","</th><th>","</th></tr>\n\t\t\t</thead>\n\t\t\t<tbody>\n\t\t\t\t","\n\t\t\t</tbody>\n\t\t</table>"])),this._t.pnx.semantics_key,this._t.pnx.semantics_value,vt.map((vt=>vt.tags.map((bt=>(0,Ac.qy)(ho||(ho=(0,gc.A)(["\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t"])),""!=vt.prefix?vt.logo?(0,Ac.qy)(Dl||(Dl=(0,gc.A)(["<img src=",' class="prefix-logo" alt='," title="," />"])),vt.logo,vt.prefix,vt.title):(0,Ac.qy)(Fl||(Fl=(0,gc.A)(["<small>(",")</small>"])),vt.prefix):Ac.s6,vt.key_transform?vt.key_transform(bt,this._t):bt.key,vt.value_transform?vt.value_transform(bt,this._t):bt.value,bt.qualifiers?(0,Ac.qy)(sc||(sc=(0,gc.A)(['<div class="qualifiers">\n\t\t\t\t\t\t\t\t<b>',"</b>\n\t\t\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</div>"])),this._t.pnx.semantics_qualifiers,bt.qualifiers.map((vt=>(0,Ac.qy)(uc||(uc=(0,gc.A)(["<li>"," = ","</li>"])),vt.subkey,vt.value)))):Ac.s6))))))}}SemanticsTable.styles=[Ec.tp,(0,Ac.AH)(mc||(mc=(0,gc.A)(["\n\t\t:host { display: block; }\n\t\tth:first-child, td:first-child { width: 40%; }\n\t\ttd { vertical-align: top; }\n\n\t\ttd small { color: var(--grey-semi-dark); }\n\t\ttd a small { color: unset; }\n\t\t.qualifiers { margin-top: 5px; }\n\t\t.qualifiers > b { margin: 8px 0; }\n\t\t.qualifiers ul {\n\t\t\tlist-style: none;\n\t\t\tmargin: 0px 0px 0px 15px;\n\t\t\tpadding: 0;\n\t\t}\n\n\t\timg.prefix-logo {\n\t\t\tmax-width: 15px;\n\t\t\tmax-height: 15px;\n\t\t\taspect-ratio: 1;\n\t\t\tvertical-align: middle;\n\t\t}\n\t"])))],SemanticsTable.properties={source:{type:Object}},customElements.define("pnx-semantics-table",SemanticsTable)},1578:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Switch});var ls,ho,Dl=le(7528),Fl=le(4542);class Switch extends Fl.WF{constructor(){super(),this.checked=!1,this.disabled=!1,this.name="pnx-switch-1"}_onChange(vt){this.checked=vt.target.checked,this.dispatchEvent(new Event("change"))}render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<label class="toggle" for=','>\n\t\t\t\t<input\n\t\t\t\t\tclass="toggle-checkbox"\n\t\t\t\t\ttype="checkbox"\n\t\t\t\t\tid=',"\n\t\t\t\t\tname=","\n\t\t\t\t\t.checked=","\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@change=",'\n\t\t\t\t/>\n\t\t\t\t<div class="toggle-switch"></div>\n\t\t\t\t<span class="toggle-label">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</span>\n\t\t\t</label>\n\t\t'])),this.name,this.name,this.name,this.checked,this.disabled,this._onChange)}}Switch.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\t.toggle {\n\t\t\tcursor: pointer;\n\t\t\tdisplay: inline-block;\n\t\t}\n\n\t\t.toggle-switch {\n\t\t\tdisplay: inline-block;\n\t\t\tbackground: #ccc;\n\t\t\tborder-radius: 11px;\n\t\t\twidth: 42px;\n\t\t\theight: 22px;\n\t\t\tposition: relative;\n\t\t\tvertical-align: middle;\n\t\t\ttransition: background 0.25s;\n\t\t}\n\t\t.toggle-switch:before, .toggle-switch:after {\n\t\t\tcontent: "";\n\t\t}\n\t\t.toggle-switch:before {\n\t\t\tdisplay: block;\n\t\t\tbackground: linear-gradient(to bottom, #fff 0%, #eee 100%);\n\t\t\tborder-radius: 50%;\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);\n\t\t\twidth: 16px;\n\t\t\theight: 16px;\n\t\t\tposition: absolute;\n\t\t\ttop: 3px;\n\t\t\tleft: 3px;\n\t\t\ttransition: left 0.25s;\n\t\t}\n\t\t.toggle:hover .toggle-switch:before {\n\t\t\tbackground: linear-gradient(to bottom, #fff 0%, #fff 100%);\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5);\n\t\t}\n\t\t.toggle-checkbox:checked + .toggle-switch {\n\t\t\tbackground: var(--widget-bg-active);\n\t\t}\n\t\t.toggle-checkbox:disabled + .toggle-switch:before,\n\t\t.toggle-checkbox:disabled:hover + .toggle-switch:before {\n\t\t\tbackground: var(--grey-pale);\n\t\t\tbox-shadow: none;\n\t\t}\n\t\t.toggle-checkbox:disabled + .toggle-switch {\n\t\t\tbackground: var(--grey);\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);\n\t\t}\n\t\t.toggle-checkbox:checked + .toggle-switch:before {\n\t\t\tleft: 23px;\n\t\t}\n\n\t\t.toggle-checkbox {\n\t\t\tposition: absolute;\n\t\t\tvisibility: hidden;\n\t\t}\n\n\t\t.toggle-label {\n\t\t\tmargin-left: 5px;\n\t\t\tposition: relative;\n\t\t\ttop: 2px;\n\t\t}\n\t']))),Switch.properties={checked:{type:Boolean,reflect:!0},disabled:{type:Boolean,reflect:!0},name:{type:String}},customElements.define("pnx-switch",Switch)},5202:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>TogglableGroup});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(8591),uc=le(5995),mc=le(1198);class TogglableGroup extends Fl.WF{constructor(){super(),this._opened=!1}open(){var vt;this._opened=!0,null===(vt=this._parent)||void 0===vt||vt.dispatchEvent(new CustomEvent("menu-opened",{detail:{menu:this}})),this.adjustMenuPosition(this._btn),this._chevron&&(this._chevron.style.rotate="180deg")}close(){this._opened=!1,this._chevron&&(this._chevron.style.rotate="")}connectedCallback(){super.connectedCallback(),(0,uc.listenForMenuClosure)(this,this.close.bind(this))}handleButtonSlotChange(vt){this._btn=vt.target.assignedNodes().pop(),this._btn&&(this._chevron=this._btn.querySelector("svg.fa-chevron-down"),this._chevron&&(this._chevron.style.transition="rotate 0.2s",this._chevron.style.rotate=this._opened?"180deg":""),this._btn.addEventListener("click",(()=>{this._opened?this.close():this.open()})))}adjustMenuPosition(vt){const bt=this.shadowRoot.querySelector("div[part='menu']");bt.style.top=null,bt.style.bottom=null,bt.style.right=null,bt.style.left=null,bt.style.overflowY=null,bt.style.marginTop=null;const le=vt.getBoundingClientRect();let ls=bt.getBoundingClientRect();const ho=ls.right<=window.innerWidth-10,Dl=ls.bottom<=window.innerHeight-10;ho&&Dl?bt.style.top="".concat(le.bottom+5,"px"):ho||Dl?Dl?ho||(bt.style.marginTop="".concat(5,"px"),bt.style.right="".concat(window.innerWidth-le.right,"px")):(bt.style.bottom="".concat(10,"px"),bt.style.top="".concat(le.bottom+5,"px"),bt.style.overflowY="auto"):(bt.style.right="".concat(window.innerWidth-le.left+5,"px"),bt.style.bottom="".concat(window.innerHeight-le.bottom,"px"),ls=bt.getBoundingClientRect(),ls.top-10<0&&(bt.style.bottom="".concat(10,"px"),bt.style.top="".concat(le.top,"px"),bt.style.overflowY="auto"))}render(){const vt={"pnx-panel":!0,"pnx-panel-fixed":!0,"pnx-hidden":!this._opened,"pnx-padded":"false"!==this.padded};return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['<div class="container" @click=','>\n\t\t\t<slot name="button" @slotchange=',"></slot>\n\t\t\t<div class=",' part="menu">\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t</div>'])),(vt=>vt.stopPropagation()),this.handleButtonSlotChange,(0,mc.H)(vt))}}TogglableGroup.styles=[sc.nd,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\tdiv.container {\n\t\t\tposition: relative;\n\t\t\theight: 100%;\n\t\t}\n\n\t\t.pnx-panel { z-index: 130; }\n\t\t.pnx-panel-fixed { position: fixed; }\n\t"])))],TogglableGroup.properties={_opened:{state:!0},padded:{type:String}},customElements.define("pnx-togglable-group",TogglableGroup)},7091:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{AnnotationsSwitch:()=>ls.A,Button:()=>Dl.A,ButtonGroup:()=>ho.A,CopyButton:()=>Fl.A,Grade:()=>sc.A,GradeFilter:()=>uc.A,IconSwitch:()=>mc.A,LinkButton:()=>gc.A,ListGroup:()=>Ac.A,ListItem:()=>Ec.A,Loader:()=>kc.A,Map:()=>du.A,MapMore:()=>_u.A,Photo:()=>Md.Ay,Popup:()=>Ld.A,ProgressBar:()=>Nd.A,QualityScore:()=>Rd.A,SearchBar:()=>Od.A,SemanticsEditor:()=>jd.A,SemanticsTable:()=>Ud.A,Switch:()=>Gd.A,TogglableGroup:()=>qd.A,widgets:()=>Hd});var ls=le(6254),ho=le(7679),Dl=le(4450),Fl=le(1903),sc=le(5051),uc=le(9041),mc=le(259),gc=le(438),Ac=le(5271),Ec=le(5525),kc=le(3109),du=le(5642),_u=le(2771),Md=le(9048),Ld=le(4374),Nd=le(4364),Rd=le(2675),Od=le(3409),jd=le(8780),Ud=le(2373),Gd=le(1578),qd=le(5202),Hd=le(222)},5114:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>CopyCoordinates});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(7343),mc=le(5995),gc=le(2593),Ac=le(8591);class CopyCoordinates extends sc.WF{render(){var vt,bt;const le=(0,uc.degToDms)(this.gps[0]),Dl=le.d<0?"".concat(Math.abs(le.d),"\xb0").concat(le.m,"'").concat(le.s,'"W'):"".concat(le.d,"\xb0").concat(le.m,"'").concat(le.s,'"E'),Ac=(0,uc.degToDms)(this.gps[1]),Ec=Ac.d<0?"".concat(Math.abs(Ac.d),"\xb0").concat(Ac.m,"'").concat(Ac.s,'"S'):"".concat(Ac.d,"\xb0").concat(Ac.m,"'").concat(Ac.s,'"N'),kc={ddeclatlon:"".concat(this.gps[1].toFixed(5),", ").concat(this.gps[0].toFixed(5)),ddeclonlat:"".concat(this.gps[0].toFixed(5),", ").concat(this.gps[1].toFixed(5)),ddmslonlat:"".concat(Dl,", ").concat(Ec),ddmslatlon:"".concat(Ec,", ").concat(Dl)};return(0,sc.qy)(ls||(ls=(0,Fl.A)(['<pnx-button-group style="display: inline-block; vertical-align: baseline" dir="row">\n\t\t\t<pnx-copy-button\n\t\t\t\tsize="sm"\n\t\t\t\ttext=',"\n\t\t\t\ttitle=",'\n\t\t\t></pnx-copy-button>\n\n\t\t\t<pnx-togglable-group padded="false" ._parent=','>\n\t\t\t\t<pnx-button\n\t\t\t\t\tsize="sm"\n\t\t\t\t\tslot="button"\n\t\t\t\t\ttitle=',"\n\t\t\t\t>","</pnx-button>\n\t\t\t\t<pnx-list-group>\n\t\t\t\t\t","\n\t\t\t\t</pnx-list-group>\n\t\t\t</pnx-togglable-group>\n\t\t</pnx-button-group>"])),kc.ddeclonlat,null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.metadata_location_copy.replace("{v}",kc.ddeclonlat),this._parent,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.metadata_location_copy_more,(0,mc.fa)(gc.Jt),Object.values(kc).map((vt=>{var bt;return(0,sc.qy)(ho||(ho=(0,Fl.A)(["\n\t\t\t\t\t\t<pnx-copy-button unstyled text="," ._t=",">\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</pnx-copy-button>\n\t\t\t\t\t"])),vt,this._parent._t,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.metadata_location_copy.replace("{v}",vt))})))}}CopyCoordinates.styles=[Ac.kq,(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\tpnx-togglable-group::part(menu) {\n\t\t\tborder-radius: 5px;\n\t\t\tmin-width: unset;\n\t\t}\n\t"])))],CopyCoordinates.properties={gps:{type:Array}},customElements.define("pnx-copy-coordinates",CopyCoordinates)},2603:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>GeoSearch});var ls,ho=le(7528),Dl=le(927),Fl=le.n(Dl),sc=le(4542),uc=le(3606),mc=le(5995);le(3630);const gc={ban:uc.forwardGeocodingBAN,standard:uc.forwardGeocodingStandard,nominatim:uc.forwardGeocodingNominatim};class GeoSearch extends sc.WF{constructor(){super(),this.geocoder="nominatim",this._geolocateCtrl=new(Fl().GeolocateControl)({positionOptions:{enableHighAccuracy:!0,timeout:6e4,maximumAge:3e5},showAccuracyCircle:!0,showUserLocation:!0,trackUserLocation:!0})}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._geocoderEngine=gc[this.geocoder]||(vt=>gc.standard(vt,this.geocoder)),(0,mc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.onceMapReady)||void 0===bt?void 0:bt.call(vt).then((()=>{this._geolocate||(this._geolocate=this._geolocateCtrl.onAdd(this._parent.map),this._geolocate.setAttribute("slot","pre"))}))}))}_onInput(vt){const bt=vt.match(/([-+]?\d{1,2}\.\d+),\s*([-+]?\d{1,3}\.\d+)/),le=vt.match(/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/);if(bt){const vt=parseFloat(bt[1]),le=parseFloat(bt[2]);return this._parent.map.jumpTo({center:[le,vt],zoom:16}),Promise.resolve(!0)}return le?(this._parent.select(null,vt),Promise.resolve(!0)):this._geocoderEngine({query:vt,limit:5,proximity:this._parent.map.getCenter().lat+","+this._parent.map.getCenter().lng}).then((vt=>vt=vt.features.map((vt=>({title:vt.place_name.split(",")[0],subtitle:vt.place_name.split(",").slice(1).join(", "),data:vt})))))}_onSelect(vt){const bt=vt.detail;var le,ls;bt&&(bt.data.bounds?null===(le=this._parent)||void 0===le||le.map.fitBounds(bt.data.bounds,{animate:!1}):null===(ls=this._parent)||void 0===ls||ls.map.jumpTo({center:bt.data.center,zoom:bt.data.zoom||13}))}render(){var vt,bt;const le=(null===(vt=this._parent)||void 0===vt?void 0:vt.isWidthSmall())||!1;return(0,sc.qy)(ls||(ls=(0,ho.A)(['\n\t\t\t<pnx-search-bar\n\t\t\t\tid="pnx-widget-search-bar"\n\t\t\t\tplaceholder=',"\n\t\t\t\t._parent=","\n\t\t\t\t.searcher=","\n\t\t\t\t.reduceable=","\n\t\t\t\t.reduced=",'\n\t\t\t\tsize="xxl"\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t\t@result=',"\n\t\t\t>\n\t\t\t\t","\n\t\t\t</pnx-search-bar>\n\t\t"])),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.search_address,this._parent,this._onInput.bind(this),le,le,this._onSelect.bind(this),this._geolocate)}}GeoSearch.properties={geocoder:{type:String},_geolocate:{state:!0}},customElements.define("pnx-widget-geosearch",GeoSearch)},4385:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Legend});var ls,ho,Dl,Fl,sc=le(7528),uc=le(4542),mc=le(8591),gc=le(5995),Ac=le(6668),Ec=le(5940),kc=le(1198),du=le(7208);class Legend extends uc.WF{constructor(){super(),this.light=!1}connectedCallback(){super.connectedCallback(),(0,gc.onceParentAvailable)(this).then((()=>this.requestUpdate()))}render(){var vt,bt,le,Fl;const mc={"pnx-panel":!0,"pnx-padded":"map"==this.focus,"pnx-legend-light":this.light};return(0,uc.qy)(ls||(ls=(0,sc.A)(["<div class=",' part="panel">\n\t\t\t<div\n\t\t\t\tclass="presentation"\n\t\t\t\tstyle=','\n\t\t\t>\n\t\t\t\t<img class="logo" src=',' alt="" />\n\n\t\t\t\t',"\n\t\t\t</div>\n\t\t\t<pnx-picture-legend\n\t\t\t\t._parent=","\n\t\t\t\tstyle=","\n\t\t\t\tcollapsable\n\t\t\t\tlight=",'\n\t\t\t>\n\t\t\t\t<slot slot="editors" name="editors">\n\t\t\t\t\t<pnx-widget-osmeditors ._parent='," />\n\t\t\t\t</slot>\n\t\t\t</pnx-picture-legend>\n\t\t\t<pnx-map-legend\n\t\t\t\t._parent=","\n\t\t\t\tstyle=","\n\t\t\t\tlight=","\n\t\t\t></pnx-map-legend>\n\t\t</div>"])),(0,kc.H)(mc),!this.light&&"map"!=this.focus&&this.picture?"display: none":"",Ec,this.light?(0,uc.qy)(ho||(ho=(0,sc.A)(["\n\t\t\t\t\t&copy; <a\n\t\t\t\t\t\thref=","\n\t\t\t\t\t\ttitle=",'\n\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t>',"</a> |\n\t\t\t\t"])),(0,du.PanoramaxWebsiteURL)(),null===(vt=this._parent)||void 0===vt?void 0:vt._t.map.more_panoramax,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.panoramax):(0,uc.qy)(Dl||(Dl=(0,sc.A)(["\n\t\t\t\t\t<div>\n\t\t\t\t\t\t","\n\t\t\t\t\t\t<pnx-link-button\n\t\t\t\t\t\t\ttitle=",'\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\thref=','\n\t\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t',"\n\t\t\t\t\t\t</pnx-link-button>\n\t\t\t\t\t</div>\n\t\t\t\t"])),null===(le=this._parent)||void 0===le?void 0:le._t.pnx.whats_panoramax,null===(Fl=this._parent)||void 0===Fl?void 0:Fl._t.map.more_panoramax,(0,du.PanoramaxWebsiteURL)(),(0,gc.fa)(Ac.iW)),this._parent,"map"==this.focus?"display: none":"",this.light||uc.s6,this._parent,this._parent,"map"!=this.focus?"display: none":"",this.light||uc.s6)}}Legend.styles=[mc.nd,(0,uc.AH)(Fl||(Fl=(0,sc.A)(['\n\t\t:host {\n\t\t\tpointer-events: none;\n\t\t}\n\t\t.pnx-panel[part="panel"] {\n\t\t\tborder-radius: 10px;\n\t\t\tposition: relative;\n\t\t\tmax-width: 450px;\n\t\t\tz-index: 121; /* To appear above mini component */\n\t\t\tmin-width: unset;\n\t\t\tpointer-events: auto;\n\t\t}\n\t\t.pnx-panel[part="panel"].pnx-padded {\n\t\t\tpadding: 10px;\n\t\t\twidth: 250px;\n\t\t}\n\t\t.presentation {\n\t\t\tfont-size: 0.85em;\n\t\t\tline-height: 1em;\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\talign-items: center;\n\t\t}\n\t\t.logo {\n\t\t\twidth: 45px;\n\t\t}\n\t\tpnx-map-legend {\n\t\t\tdisplay: block;\n\t\t\tmargin-top: 5px;\n\t\t}\n\n\t\t/* Lighter/smaller version */\n\t\t.pnx-panel[part="panel"].pnx-legend-light {\n\t\t\tdisplay: flex;\n\t\t\tgap: 3px;\n\t\t\tpadding: 3px 8px 3px 3px;\n\t\t\twidth: unset;\n\t\t\tmin-width: unset;\n\t\t\talign-items: center;\n\t\t\tfont-size: 10px;\n\t\t\tmargin-right: -10px;\n\t\t\tmargin-bottom: -10px;\n\t\t\tborder-radius: 0;\n\t\t\tborder-top-left-radius: 5px;\n\t\t\tborder-right: none;\n \t\t\tborder-bottom: none;\n\t\t}\n\t\t.pnx-legend-light a,\n\t\t.pnx-legend-light .presentation {\n\t\t\tfont-size: 10px;\n\t\t}\n\t\t.pnx-legend-light .logo {\n\t\t\twidth: 15px;\n\t\t}\n\n\t\t.pnx-legend-light pnx-map-legend {\n\t\t\twidth: max-content;\n\t\t\tmargin-top: unset;\n\t\t\tfont-size: 10px;\n\t\t}\n\t'])))],Legend.properties={focus:{type:String},picture:{type:String},light:{type:Boolean}},customElements.define("pnx-widget-legend",Legend)},6996:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>LevelSelect});var ls,ho,Dl,Fl,sc,uc,mc=le(7528),gc=le(4542),Ac=le(5995),Ec=le(5195),kc=le(4420),du=le(7261),_u=le(3624);le(1870),le(1811);class LevelSelect extends gc.WF{createRenderRoot(){return this}connectedCallback(){var vt,bt;super.connectedCallback(),(0,Ac.onceParentAvailable)(this).then(null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt)).then((()=>{this._parent.map.indoorEqual.on("levelchange",(()=>this.requestUpdate())),this._parent.map.indoorEqual.on("levelschange",(()=>this.requestUpdate()))}))}updated(vt){super.updated(vt),this._expanded&&(null!==vt&&void 0!==vt&&vt.has("_expanded")?this._scrollToCurrentLevel(!1,"instant"):this._scrollToCurrentLevel(!0,"smooth"))}_scrollToCurrentLevel(vt,bt){const le=this.renderRoot.querySelector(".pnx-level-active");setTimeout((()=>null===le||void 0===le?void 0:le.scrollIntoView({behavior:bt,block:"center",container:"nearest"})),vt?0:50)}render(){var vt,bt,le,Md,Ld,Nd,Rd,Od;const jd=this._parent.map.indoorEqual;if(jd.level===Ec.DISABLED_LEVEL||0===jd.levels.length)return gc.s6;const Ud=jd.levels.findIndex((vt=>vt==jd.level)),Gd=Ud>0?Ud-1:null,qd=null!==Gd?jd.levels[Gd]:null,Hd=Ud<jd.levels.length-1?Ud+1:null,Wd=null!==Hd?jd.levels[Hd]:null;return(0,gc.qy)(ls||(ls=(0,mc.A)(['\n\t\t\t<pnx-button-group\n\t\t\t\tdir="column"\n\t\t\t\tsize="xl"\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t>\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\t@click=',"\n\t\t\t\t\t.disabled=",'\n\t\t\t\t\tclass="pnx-level-minimal"\n\t\t\t\t\ttitle=',"\n\t\t\t\t>","</pnx-button>\n\n\t\t\t\t",'\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\t@click=',"\n\t\t\t\t\t.disabled=",'\n\t\t\t\t\tclass="pnx-level-minimal"\n\t\t\t\t\ttitle=',"\n\t\t\t\t>","</pnx-button>\n\n\t\t\t\t","\n\t\t\t</pnx-button-group>\n\t\t"])),(()=>jd.setLevel(qd)),null===qd,null===(vt=this._parent)||void 0===vt||null===(bt=vt._t)||void 0===bt?void 0:bt.pnx.indoor_selector_levelup,(0,Ac.fa)(kc.S$),this._expanded?(0,gc.qy)(ho||(ho=(0,mc.A)(['\n\t\t\t\t\t<pnx-button-group\n\t\t\t\t\t\tdir="column"\n\t\t\t\t\t\tsize="xl"\n\t\t\t\t\t\tclass="pnx-print-hidden pnx-level-scroller"\n\t\t\t\t\t>\n\t\t\t\t\t\t',"\n\t\t\t\t\t</pnx-button-group>\n\t\t\t\t"])),jd.levels.map((vt=>(0,gc.qy)(Dl||(Dl=(0,mc.A)(['\n\t\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\t\tkind="superflat"\n\t\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t\t\tclass=","\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t"])),(()=>jd.setLevel(vt)),vt.length>2?"pnx-level-long":null,jd.level==vt?(0,gc.qy)(Fl||(Fl=(0,mc.A)(['<span class="pnx-level-active">',"</span>"])),vt):vt)))):(0,gc.qy)(sc||(sc=(0,mc.A)(['\n\t\t\t\t\t<pnx-button\n\t\t\t\t\t\tkind="superflat"\n\t\t\t\t\t\tclass="pnx-level-minimal"\n\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>","</pnx-button>\n\t\t\t\t"])),null===(le=this._parent)||void 0===le||null===(Md=le._t)||void 0===Md?void 0:Md.pnx.indoor_selector_expand,jd.levels.length>1?()=>this._expanded=!0:null,jd.level),(()=>jd.setLevel(Wd)),null===Wd,null===(Ld=this._parent)||void 0===Ld||null===(Nd=Ld._t)||void 0===Nd?void 0:Nd.pnx.indoor_selector_leveldown,(0,Ac.fa)(du.xB),this._expanded?(0,gc.qy)(uc||(uc=(0,mc.A)(['\n\t\t\t\t\t<pnx-button\n\t\t\t\t\t\tkind="flat"\n\t\t\t\t\t\tclass="pnx-level-shrink"\n\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t>","</pnx-button>\n\t\t\t\t"])),(()=>this._expanded=!1),null===(Rd=this._parent)||void 0===Rd||null===(Od=Rd._t)||void 0===Od?void 0:Od.pnx.indoor_selector_shrink,(0,Ac.fa)(_u.GR)):gc.s6)}}LevelSelect.properties={_expanded:{state:!0}},customElements.define("pnx-level-select",LevelSelect)},4529:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapFiltersButton});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(1904),mc=le(2593),gc=le(6627),Ac=le(8591);class MapFiltersButton extends Fl.WF{constructor(){super(),this["user-search"]=!1,this["quality-score"]=!1,this["no-date"]=!1,this["no-picture-type"]=!1,this["no-gps"]=!1,this["no-source"]=!1,this._active=!1}connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.onceMapReady)||void 0===bt?void 0:bt.call(vt).then((()=>{this._active=this._isActive(),this._parent.mapStyleComposer.addEventListener("filters-changed",(()=>this._active=this._isActive())),this._parent.mapStyleComposer.addEventListener("panoramax-changed",(()=>this._active=this._isActive()))}))}))}_isActive(){return Object.entries(this._parent.mapStyleComposer.panoramaxFilters).filter((vt=>{let[bt,le]=vt;return bt&&le&&!["featuresRestrictions","theme"].includes(bt)})).length>0||this._parent.mapStyleComposer.isPanoramaxEndpointSingleUser()}render(){var vt,bt;const le=null===(vt=this._parent)||void 0===vt?void 0:vt.isWidthSmall(),Ac=(0,sc.fa)(gc.faXmark,{styles:{"pointer-events":"auto"}});return Ac.addEventListener("click",(vt=>{vt.stopPropagation(),this.shadowRoot.querySelector("pnx-map-filters-menu")._onReset(),this.shadowRoot.querySelector("#pnx-widget-filter")._opened=!1})),(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-togglable-group\n\t\t\t\tid="pnx-widget-filter"\n\t\t\t\tpadded="false"\n\t\t\t\tclass="pnx-only-map pnx-print-hidden"\n\t\t\t\t._parent=','\n\t\t\t>\n\t\t\t\t<pnx-button kind="flat" size="xl" slot="button">\n\t\t\t\t\t',"\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t\t",'\n\t\t\t\t</pnx-button>\n\t\t\t\t<pnx-map-filters-menu\n\t\t\t\t\tid="pnx-map-filters-menu"\n\t\t\t\t\t._parent=',"\n\t\t\t\t\tuser-search=","\n\t\t\t\t\tquality-score=","\n\t\t\t\t\t.no-date=","\n\t\t\t\t\t.no-picture-type=","\n\t\t\t\t\t.no-gps=","\n\t\t\t\t\t.no-source=","\n\t\t\t\t></pnx-map-filters-menu>\n\t\t\t</pnx-togglable-group>\n\t\t"])),this._parent,(0,sc.fa)(uc._$),this._active?(0,Fl.qy)(ho||(ho=(0,Dl.A)(['<span class="pnx-active-icon"></span>']))):Fl.s6,le?Fl.s6:null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.filters,le?Fl.s6:this._active?Ac:(0,sc.fa)(mc.Jt),this._parent,this["user-search"],this["quality-score"],this["no-date"],this["no-picture-type"],this["no-gps"],this["no-source"])}}MapFiltersButton.styles=[Ac.s0],MapFiltersButton.properties={"quality-score":{type:Boolean},"user-search":{type:Boolean},"no-date":{type:Boolean},"no-picture-type":{type:Boolean},"no-gps":{type:Boolean},"no-source":{type:Boolean},_active:{state:!0}},customElements.define("pnx-widget-mapfilters",MapFiltersButton)},1614:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapLayersButton});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(4220),mc=le(2593),gc=le(6627),Ac=le(8591);class MapLayersButton extends Fl.WF{constructor(){super(),this._active=!1}connectedCallback(){super.connectedCallback();const vt=[void 0,null,"","default"];(0,sc.onceParentAvailable)(this).then((()=>{var bt,le;return null===(bt=this._parent)||void 0===bt||null===(le=bt.onceMapReady)||void 0===le?void 0:le.call(bt).then((()=>{this._active=!vt.includes(this._parent.mapStyleComposer.panoramaxTheme),this._parent.mapStyleComposer.addEventListener("theme-changed",(bt=>{this._active=!vt.includes(bt.detail.theme)}))}))}))}render(){var vt,bt;const le=null===(vt=this._parent)||void 0===vt?void 0:vt.isWidthSmall(),Ac=(0,sc.fa)(gc.faXmark,{styles:{"pointer-events":"auto"}});return Ac.addEventListener("click",(vt=>{vt.stopPropagation();const bt=this.shadowRoot.querySelector("pnx-map-layers-menu");bt.shadowRoot.querySelector("#pnx-map-theme").value="default",bt._onThemeSelect({target:{value:"default"}}),this.shadowRoot.querySelector("#pnx-widget-map-layers")._opened=!1})),(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-togglable-group\n\t\t\t\tid="pnx-widget-map-layers"\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t\t._parent=','\n\t\t\t>\n\t\t\t\t<pnx-button kind="flat" size="xl" slot="button">\n\t\t\t\t\t',"\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t\t",'\n\t\t\t\t</pnx-button>\n\t\t\t\t<pnx-map-layers-menu\n\t\t\t\t\tid="pnx-map-layers-menu"\n\t\t\t\t\t._parent=',"\n\t\t\t\t></pnx-map-layers-menu>\n\t\t\t</pnx-togglable-group>\n\t\t"])),this._parent,(0,sc.fa)(uc.qI),this._active?(0,Fl.qy)(ho||(ho=(0,Dl.A)(['<span class="pnx-active-icon"></span>']))):Fl.s6,le?Fl.s6:null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.layers,le?Fl.s6:this._active?Ac:(0,sc.fa)(mc.Jt),this._parent)}}MapLayersButton.styles=[Ac.s0],MapLayersButton.properties={_active:{state:!0}},customElements.define("pnx-widget-maplayers",MapLayersButton)},5789:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>OSMEditors});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(5995),mc=le(7343),gc=le(7208),Ac=le(3520),Ec=le(6787),kc=le(7704);const du="http://127.0.0.1:8111";class OSMEditors extends sc.WF{constructor(){super(),this._josm=!1}connectedCallback(){super.connectedCallback(),(0,uc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._parent.onceFirstPicLoaded().then(this._onPictureLoad.bind(this)),this._parent.psv.addEventListener("picture-loaded",this._onPictureLoad.bind(this))}))}_onPictureLoad(){var vt,bt;this._pic=null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getPictureMetadata()}_toggleJOSMLive(){var vt,bt,le,ls,ho,Dl;(this._josm=!this._josm,this._josm)?fetch(du+"/version").then((()=>{var vt,bt,le,ls,ho,Dl,Fl,sc,uc;const gc=(0,mc.josmBboxParameters)(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt||null===(le=bt.getPictureMetadata)||void 0===le?void 0:le.call(bt));if(gc){const vt="".concat(du,"/load_and_zoom?").concat(gc);fetch(vt).catch((vt=>{console.warn(vt),this._toggleJOSMLive()}))}this._josmListener=()=>{var vt,bt,le;const ls=(0,mc.josmBboxParameters)(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt||null===(le=bt.getPictureMetadata)||void 0===le?void 0:le.call(bt));if(ls){const vt="".concat(du,"/zoom?").concat(ls);fetch(vt).catch((vt=>{console.warn(vt),this._toggleJOSMLive()}))}},null===(ls=this._parent)||void 0===ls||null===(ho=ls.psv)||void 0===ho||null===(Dl=ho.addEventListener)||void 0===Dl||Dl.call(ho,"picture-loaded",this._josmListener),null===(Fl=this._parent)||void 0===Fl||null===(sc=Fl.psv)||void 0===sc||null===(uc=sc.addEventListener)||void 0===uc||uc.call(sc,"picture-loading",this._josmListener)})).catch((vt=>{var bt;console.warn(vt),alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.error_josm),this._toggleJOSMLive()})):this._josmListener&&(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt||null===(le=bt.removeEventListener)||void 0===le||le.call(bt,"picture-loading",this._josmListener),null===(ls=this._parent)||void 0===ls||null===(ho=ls.psv)||void 0===ho||null===(Dl=ho.removeEventListener)||void 0===Dl||Dl.call(ho,"picture-loaded",this._josmListener),delete this._josmListener)}render(){var vt,bt;if(!this._pic)return sc.s6;if(null!==(vt=this._parent)&&void 0!==vt&&vt.isWidthSmall())return(0,sc.qy)(ls||(ls=(0,Fl.A)(['\n\t\t\t\t<pnx-link-button\n\t\t\t\t\tsize="sm"\n\t\t\t\t\thref="geo:',",",';u=3"\n\t\t\t\t>\n\t\t\t\t\t'," ","\n\t\t\t\t</pnx-link-button>\n\t\t\t"])),this._pic.gps[1],this._pic.gps[0],(0,uc.fa)(kc.A),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.geo_uri);{var le,Dl,mc,du;const vt={map:"19/".concat(this._pic.gps[1],"/").concat(this._pic.gps[0]),source:"Panoramax",photo_overlay:"panoramax",photo:"panoramax/".concat(this._pic.id)},bt=vt&&"".concat((0,gc.IdEditorURL)(),"#").concat(new URLSearchParams(vt).toString());return(0,sc.qy)(ho||(ho=(0,Fl.A)(['\n\t\t\t\t<pnx-link-button\n\t\t\t\t\tsize="sm"\n\t\t\t\t\thref=','\n\t\t\t\t\ttarget="_blank"\n\t\t\t\t\ttitle="','"\n\t\t\t\t>\n\t\t\t\t\t'," ",'\n\t\t\t\t</pnx-link-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tid="pnx-edit-josm"\n\t\t\t\t\tsize="sm"\n\t\t\t\t\tactive=',"\n\t\t\t\t\t@click=",'\n\t\t\t\t\ttitle="','"\n\t\t\t\t>\n\t\t\t\t\t'," ","\n\t\t\t\t</pnx-button>\n\t\t\t"])),bt,null===(le=this._parent)||void 0===le?void 0:le._t.pnx.contribute_id,(0,uc.fa)(Ac.faLocationDot),null===(Dl=this._parent)||void 0===Dl?void 0:Dl._t.pnx.id,this._josm?"":sc.s6,this._toggleJOSMLive,null===(mc=this._parent)||void 0===mc?void 0:mc._t.pnx.josm_live,(0,uc.fa)(Ec.hU),null===(du=this._parent)||void 0===du?void 0:du._t.pnx.josm)}}}OSMEditors.properties={_pic:{state:!0},_josm:{state:!0}},OSMEditors.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\t:host { display: inline-flex; gap: 5px; }\n\t\t:host > * { flex: 1; }\n\t\tpnx-link-button::part(btn) { height: auto; }\n\t"]))),customElements.define("pnx-widget-osmeditors",OSMEditors)},8806:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PictureLegendActions});var ls,ho,Dl,Fl,sc,uc=le(7528),mc=le(4542),gc=le(5995),Ac=le(3613),Ec=le(8591);class PictureLegendActions extends mc.WF{constructor(){super(),this.full=!1}connectedCallback(){super.connectedCallback(),(0,gc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._meta=this._parent.psv.getPictureMetadata(),this._parent.psv.addEventListener("picture-loaded",(()=>{this._meta=this._parent.psv.getPictureMetadata()}))}))}_onPrint(){this._closeGroup(),window.print()}_closeGroup(){this.renderRoot.querySelector("#pic-legend-headline-menu").close()}render(){var vt,bt,le,sc,Ec,kc,du,_u,Md,Ld,Nd,Rd,Od,jd;return(0,mc.qy)(ls||(ls=(0,uc.A)(['<pnx-togglable-group padded="false" id="pic-legend-headline-menu" ._parent=','>\n\t\t\t<pnx-button slot="button" kind="inline">','</pnx-button>\n\t\t\t<pnx-list-group class="pnx-print-hidden" @click=',">\n\t\t\t\t",'\n\n\t\t\t\t<a\n\t\t\t\t\tdownload\n\t\t\t\t\ttarget="_blank"\n\t\t\t\t\thref=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>","</a>\n\n\t\t\t\t","\n\n\t\t\t\t","\n\t\t\t</pnx-list-group>\n\t\t</pnx-togglable-group>"])),this._parent,(0,gc.fa)(Ac.v),this._closeMenu,this._meta?(0,mc.qy)(ho||(ho=(0,uc.A)(["<pnx-copy-button ._t="," text="," unstyled>\n\t\t\t\t\t","\n\t\t\t\t</pnx-copy-button>"])),null===(vt=this._parent)||void 0===vt?void 0:vt._t,this._meta.id,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.metadata_general_copy_picid):mc.s6,null===(le=this._meta)||void 0===le||null===(sc=le.panorama)||void 0===sc?void 0:sc.hdUrl,this._closeGroup,null===(Ec=this._parent)||void 0===Ec?void 0:Ec._t.pnx.share_image,this._parent.isWidthSmall()?mc.s6:(0,mc.qy)(Dl||(Dl=(0,uc.A)(["<button @click=",">\n\t\t\t\t\t","\n\t\t\t\t</button>"])),this._onPrint,null===(kc=this._parent)||void 0===kc?void 0:kc._t.pnx.share_print),(null===(du=this._parent)||void 0===du||null===(_u=du.api)||void 0===_u?void 0:_u.getRSSURL())&&(0,mc.qy)(Fl||(Fl=(0,uc.A)(['\n\t\t\t\t\t<a\n\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t\thref=',"\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>\n\t\t\t\t\t\t","\n\t\t\t\t\t</a>\n\t\t\t\t"])),null===(Md=this._parent)||void 0===Md?void 0:Md.api.getRSSURL(null===(Ld=this._parent)||void 0===Ld||null===(Nd=Ld.map)||void 0===Nd||null===(Rd=Nd.getBounds)||void 0===Rd?void 0:Rd.call(Nd)),null===(Od=this._parent)||void 0===Od?void 0:Od._t.pnx.share_rss_title,this._closeGroup,null===(jd=this._parent)||void 0===jd?void 0:jd._t.pnx.share_rss))}}PictureLegendActions.styles=[Ec.BQ,(0,mc.AH)(sc||(sc=(0,uc.A)(["\n\t\tpnx-togglable-group::part(menu) {\n\t\t\tborder-radius: 5px;\n\t\t\tmin-width: unset;\n\t\t}\n\t"])))],PictureLegendActions.properties={full:{type:Boolean},_meta:{state:!0}},customElements.define("pnx-picture-legend-actions",PictureLegendActions)},8305:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Player});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(1705),mc=le(6386),gc=le(7472),Ac=le(5431),Ec=le(6533);le(1230);class Player extends Fl.WF{constructor(){super(),this.playing=!1,this.size="xl",this.more="depends",this._activePrev=!0,this._activePlay=!0,this._activeNext=!0}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.oncePSVReady)||void 0===bt?void 0:bt.call(vt).then((()=>{this._parent.psv.addEventListener("sequence-playing",(()=>this.playing=!0)),this._parent.psv.addEventListener("sequence-stopped",(()=>this.playing=!1)),this._parent.psv.addEventListener("picture-loaded",this._changeActiveStates.bind(this)),this._parent.psv.addEventListener("pictures-navigation-changed",this._changeActiveStates.bind(this)),this._changeActiveStates()}))}))}_changeActiveStates(){var vt,bt,le,ls,ho,Dl;"pic"===(null===(vt=(bt=this._parent.psv).getPicturesNavigation)||void 0===vt?void 0:vt.call(bt))?(this._activeNext=!1,this._activePlay=!1,this._activePrev=!1):(this._activePrev=null!=(null===(le=this._parent.psv.getPictureMetadata())||void 0===le||null===(ls=le.sequence)||void 0===ls?void 0:ls.prevPic),null!=(null===(ho=this._parent.psv.getPictureMetadata())||void 0===ho||null===(Dl=ho.sequence)||void 0===Dl?void 0:Dl.nextPic)?(this._activeNext=!0,this._activePlay=!0):(this._activeNext=!1,this._activePlay=!1));this.requestUpdate()}_onPlayClick(){var vt,bt,le,ls,ho,Dl;null!==(vt=this._parent)&&void 0!==vt&&null!==(bt=vt.psv)&&void 0!==bt&&bt.isSequencePlaying()?(this.playing=!1,null===(le=this._parent)||void 0===le||null===(ls=le.psv)||void 0===ls||ls.stopSequence()):(this.playing=!0,null===(ho=this._parent)||void 0===ho||null===(Dl=ho.psv)||void 0===Dl||Dl.playSequence())}render(){var vt,bt,le,kc,du,_u,Md,Ld;return null!==(vt=this._parent)&&void 0!==vt&&null!==(bt=vt.psv)&&void 0!==bt&&bt.addEventListener?(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-button-group\n\t\t\t\tid="pnx-widget-player"\n\t\t\t\tdir="row"\n\t\t\t\tsize=','\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t\tstyle=','\n\t\t\t>\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\tid="pnx-player-prev"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t\t.disabled=","\n\t\t\t\t>",'</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\tid="pnx-player-play"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@click=","\n\t\t\t\t>",'</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\tid="pnx-player-next"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@click=","\n\t\t\t\t>","</pnx-button>\n\n\t\t\t\t","\n\t\t\t</pnx-button-group>\n\t\t"])),this.size,this._activePrev||this._activePlay||this._activeNext?"":"display: none",null===(le=this._parent)||void 0===le?void 0:le._t.pnx.sequence_prev,(()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.goToPrevPicture()}),!this._activePrev,(0,sc.fa)(uc.TH),this.playing?null===(kc=this._parent)||void 0===kc?void 0:kc._t.pnx.sequence_pause:null===(du=this._parent)||void 0===du?void 0:du._t.pnx.sequence_play,!this._activePlay,this._onPlayClick.bind(this),this.playing?(0,sc.fa)(gc.G1):(0,sc.fa)(mc.ij),null===(_u=this._parent)||void 0===_u?void 0:_u._t.pnx.sequence_next,!this._activeNext,(()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.goToNextPicture()}),(0,sc.fa)(Ac.vF),"never"===this.more||"always"!==this.more&&null!==(Md=this._parent)&&void 0!==Md&&Md.isWidthSmall()?Fl.s6:(0,Fl.qy)(ho||(ho=(0,Dl.A)(['\n\t\t\t\t\t<pnx-togglable-group padded="false" ._parent=','>\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="flat"\n\t\t\t\t\t\t\tid="pnx-player-more"\n\t\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t\tclass=",'\n\t\t\t\t\t\t\tslot="button"\n\t\t\t\t\t\t>',"</pnx-button>\n\n\t\t\t\t\t\t<pnx-player-options ._parent=","></pnx-player-options>\n\t\t\t\t\t</pnx-togglable-group>\n\t\t\t\t"])),this._parent,null===(Ld=this._parent)||void 0===Ld?void 0:Ld._t.pnx.sequence_more,"depends"===this.more?"pnx-xs-hidden":"",(0,sc.fa)(Ec.faEllipsisVertical),this._parent)):Fl.s6}}Player.properties={playing:{type:Boolean,reflect:!0},size:{type:String},more:{type:String},_activePrev:{state:!0},_activePlay:{state:!0},_activeNext:{state:!0}},customElements.define("pnx-widget-player",Player)},6524:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsFiltersButton});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(2593),mc=le(6627),gc=le(6249),Ac=le(8591);class SemanticsFiltersButton extends Fl.WF{constructor(){super(),(0,sc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt).then((()=>{var vt,bt,le,ls;null===(vt=this._parent)||void 0===vt||null===(bt=vt.mapStyleComposer)||void 0===bt||bt.addEventListener("dataoverlay-added",(()=>this.requestUpdate())),null===(le=this._parent)||void 0===le||null===(ls=le.map)||void 0===ls||ls.addEventListener("styledata",(()=>this.requestUpdate()))}))}))}render(){var vt,bt,le,Ac;const Ec=null===(vt=this._parent.map)||void 0===vt||null===(bt=vt.getSemanticOverlays)||void 0===bt?void 0:bt.call(vt);if(!Ec||0===Ec.length)return;const kc=Ec.filter((vt=>vt.metadata&&this._parent.mapStyleComposer.dataOverlays.has(vt.source))).length>0,du=null===(le=this._parent)||void 0===le?void 0:le.isWidthSmall(),_u=(0,sc.fa)(mc.faXmark,{styles:{"pointer-events":"auto"}});return _u.addEventListener("click",(vt=>{var bt,le;vt.stopPropagation(),null===(bt=this._parent)||void 0===bt||null===(le=bt.map)||void 0===le||le.toggleAllSemanticOverlays(!1)})),(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-togglable-group\n\t\t\t\tid="pnx-widget-semantics-filter"\n\t\t\t\tclass="pnx-only-map pnx-print-hidden"\n\t\t\t\t._parent=','\n\t\t\t>\n\t\t\t\t<pnx-button kind="flat" size="xl" slot="button">\n\t\t\t\t\t',"\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t\t",'\n\t\t\t\t</pnx-button>\n\t\t\t\t<pnx-map-semantics-filters-menu\n\t\t\t\t\tid="pnx-map-semantics-filters-menu"\n\t\t\t\t\t._parent=',"\n\t\t\t\t\t@change=","\n\t\t\t\t></pnx-map-semantics-filters-menu>\n\t\t\t</pnx-togglable-group>\n\t\t"])),this._parent,(0,sc.fa)(gc.DX),kc?(0,Fl.qy)(ho||(ho=(0,Dl.A)(['<span class="pnx-active-icon"></span>']))):Fl.s6,du?Fl.s6:null===(Ac=this._parent)||void 0===Ac?void 0:Ac._t.pnx.semantics_title,du?Fl.s6:kc?_u:(0,sc.fa)(uc.Jt),this._parent,this._onLayersChange)}}SemanticsFiltersButton.styles=[Ac.s0],customElements.define("pnx-widget-semantics-filters",SemanticsFiltersButton)},3023:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Zoom});var ls,ho=le(7528),Dl=le(4542),Fl=le(9048),sc=le(3407),uc=le(5995),mc=le(1372),gc=le(7290);le(1870);class Zoom extends Dl.WF{createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),(0,uc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.oncePSVReady)||void 0===bt?void 0:bt.call(vt).then((()=>{var vt,bt;this._lastWantedZoom=(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getZoomLevel())||Fl.cS}))}))}_onClick(vt,bt){if(this._parent.map&&this._parent.isMapWide())bt?this._parent.map.zoomIn({},{originalEvent:vt}):this._parent.map.zoomOut({},{originalEvent:vt});else{this._parent.lastPsvAnim&&this._parent.lastPsvAnim.cancel();const vt=bt?Math.min(100,this._lastWantedZoom+sc.$p):Math.max(0,this._lastWantedZoom-sc.$p);this._parent.lastPsvAnim=this._parent.psv.animate({speed:Fl.LM,zoom:vt}),this._lastWantedZoom=vt}}render(){var vt,bt;return(0,Dl.qy)(ls||(ls=(0,ho.A)(['\n\t\t\t<pnx-button-group\n\t\t\t\tid="pnx-widget-zoom"\n\t\t\t\tdir="column"\n\t\t\t\tsize="xl"\n\t\t\t\tclass="pnx-mobile-hidden pnx-print-hidden"\n\t\t\t>\n\t\t\t\t<pnx-button\n\t\t\t\t\tid="pnx-zoom-in"\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>",'</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tid="pnx-zoom-out"\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>","</pnx-button>\n\t\t\t</pnx-button-group>\n\t\t"])),null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.zoomIn,(vt=>this._onClick(vt,!0)),(0,uc.fa)(mc.QL),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.zoomOut,(vt=>this._onClick(vt,!1)),(0,uc.fa)(gc.EZ))}}Zoom.properties={_lastWantedZoom:{state:!0}},customElements.define("pnx-widget-zoom",Zoom)},222:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{CopyCoordinates:()=>ls.A,GeoSearch:()=>ho.A,Legend:()=>Dl.A,LevelSelect:()=>Fl.A,MapFiltersButton:()=>sc.A,MapLayersButton:()=>uc.A,OSMEditors:()=>mc.A,PictureLegendActions:()=>gc.A,Player:()=>Ac.A,SemanticsFiltersButton:()=>Ec.A,Zoom:()=>kc.A});var ls=le(5114),ho=le(2603),Dl=le(4385),Fl=le(6996),sc=le(4529),uc=le(1614),mc=le(5789),gc=le(8806),Ac=le(8305),Ec=le(6524),kc=le(3023)},5254:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>API});var ls=le(9379),ho=le(7343);class API extends EventTarget{constructor(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(super(),null===vt||void 0===vt||"string"!==typeof vt){const vt=new Error("endpoint parameter is empty or not a valid string");throw this.dispatchEvent(new CustomEvent("broken",{detail:{error:vt}})),vt}if(vt.startsWith("/")&&(vt=window.location.href.split("/").slice(0,3).join("/")+vt),!API.isValidHttpUrl(vt)){const bt=new Error("endpoint parameter is not a valid URL: ".concat(vt));throw this.dispatchEvent(new CustomEvent("broken",{detail:{error:bt}})),bt}this._endpoint=vt,this._isReady=0,this._dataBbox=null,this._fetchOpts=(null===bt||void 0===bt?void 0:bt.fetch)||{},this._metadata={},this._configuration=null,bt.skipReadLanding||(this._readLanding=fetch(vt,this._getFetchOptions()).then((vt=>vt.json())).then((vt=>this._parseLanding(vt,bt))).catch((vt=>(this._isReady=-1,console.error(vt),this.dispatchEvent(new CustomEvent("broken",{detail:{error:vt}})),Promise.reject("Viewer failed to communicate with API")))).then((()=>(this._isReady=1,this.dispatchEvent(new Event("ready")),"API is ready"))))}onceReady(){return-1==this._isReady?Promise.reject("Viewer failed to communicate with API"):1==this._isReady?Promise.resolve("API is ready"):this._readLanding}isReady(){return 1==this._isReady}getAvailableFeatures(){return Object.entries(this._endpoints).filter((vt=>null!==vt[1])).map((vt=>vt[0]))}getUnavailableFeatures(){return Object.entries(this._endpoints).filter((vt=>null===vt[1])).map((vt=>vt[0]))}_parseLanding(vt,bt){var le,ls;if(this._endpoints={collections:null,search:null,style:null,user_style:null,tiles:(null===bt||void 0===bt?void 0:bt.tiles)||null,user_tiles:null,user_search:null,collection_preview:null,item_preview:null,rss:null,report:null,queryables:null},!vt||!vt.links||!Array.isArray(vt.links))throw new Error("API Landing page doesn't contain 'links' list");if(!vt.stac_version.startsWith("1."))throw new Error("API is not in a supported STAC version (Panoramax viewer supports only 1.x, API is ".concat(vt.stac_version,")"));this._metadata.name=vt.title||"Unnamed",this._metadata.stac_version=vt.stac_version,this._metadata.geovisio_version=vt.geovisio_version;const ho=[],Dl=[];if([{rel:"search",type:"application/geo+json",endpointId:"search",mandatory:!0,missingIssue:"No direct access to pictures metadata."},{rel:"data",type:"application/json",endpointId:"collections",mandatory:!0,missingIssue:"No way for viewer to access sequences."},{rel:"data",type:"application/rss+xml",endpointId:"rss"},{rel:"xyz",type:"application/vnd.mapbox-vector-tile",endpointId:"tiles"},{rel:"xyz-style",type:"application/json",endpointId:"style"},{rel:"user-xyz-style",type:"application/json",endpointId:"user_style"},{rel:"user-xyz",type:"application/vnd.mapbox-vector-tile",endpointId:"user_tiles"},{rel:"user-search",type:"application/json",endpointId:"user_search",missingIssue:"Filter map data by user name will not be available."},{rel:"collection-preview",type:"image/jpeg",endpointId:"collection_preview",missingIssue:"Display of thumbnail could be slower."},{rel:"item-preview",type:"image/jpeg",endpointId:"item_preview",missingIssue:"Display of thumbnail could be slower."},{rel:"report",type:"application/json",endpointId:"report"},{rel:"http://www.opengis.net/def/rel/ogc/1.0/queryables",type:"application/schema+json",endpointId:"queryables",missingIssue:"Tags map overlay will not be available."}].forEach((bt=>{const le=vt.links.find((vt=>vt.rel==bt.rel&&vt.type==bt.type));if(le){if(!API.isValidHttpUrl(le.href))throw new Error("API endpoint '".concat(le.rel,"' (").concat(le.type,") is not a valid URL: ").concat(le.href));this._endpoints[bt.endpointId]||(this._endpoints[bt.endpointId]=le.href)}else if(!this._endpoints[bt.endpointId]){let vt="API doesn't offer a '".concat(bt.rel,"' (").concat(bt.type,") endpoint in its links");bt.missingIssue&&(vt+="\n".concat(bt.missingIssue)),bt.mandatory?ho.push(vt):bt.missingIssue&&Dl.push(vt)}})),this._endpoints.style||this._endpoints.tiles||Dl.push("API doesn't offer 'xyz' or 'xyz-style' endpoints in its links.\nMap widget will not be available."),this._endpoints.user_style||this._endpoints.user_tiles||Dl.push("API doesn't offer 'user-xyz' or 'user-xyz-style' endpoints in its links.\nFilter map data by user ID will not be available."),Dl.forEach((vt=>console.warn(vt))),ho.length>0)throw new Error(ho.join("\n"));const Fl=null===vt||void 0===vt||null===(le=vt.extent)||void 0===le||null===(ls=le.spatial)||void 0===ls?void 0:ls.bbox;this._dataBbox=Fl&&Array.isArray(Fl)&&Fl.length>0&&Array.isArray(Fl[0])&&4===Fl[0].length?[[Fl[0][0],Fl[0][1]],[Fl[0][2],Fl[0][3]]]:null}_getFetchOptions(){let vt=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const bt=Object.assign({},this._fetchOpts);return vt||(bt.signal=AbortSignal.timeout(15e3)),bt}_getMapRequestTransform(){const vt=this._getFetchOptions();return delete vt.signal,bt=>{if(bt.startsWith(this._endpoint)){if(Object.keys(vt).length>0)return(0,ls.A)({url:bt},vt)}else if(bt.includes("data.geopf.fr")&&bt.includes("@2x"))return{url:bt.replace("@2x","")}}}_getPSVWithCredentials(){return"include"===this._getFetchOptions().credentials?vt=>vt.startsWith(this._endpoint):void 0}cleanResourceURL(vt){if(!vt)return;const bt=new URL(this._endpoint);return vt.startsWith("/")?bt.protocol+"//"+bt.host+vt:vt.startsWith("./")?this._endpoint+vt.substring(1):vt}async getSequenceItems(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,ls=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;if(!this.isReady())throw new Error("API is not ready to use");try{return API.isIdValid(vt),fetch(bt||"".concat(this._endpoints.collections,"/").concat(vt,"/items").concat(ls?"?limit="+ls:""),this._getFetchOptions(!0)).then((vt=>vt.json())).then((bt=>{let ho=bt;le&&(ho.features=le.features.concat(ho.features));const Dl=bt.links.find((vt=>"next"===vt.rel));return!ls&&Dl?this.getSequenceItems(vt,Dl.href,ho):ho}))}catch(ho){return Promise.reject(ho)}}getPicturesAroundCoordinatesUrl(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:5e-4,ls=arguments.length>3?arguments[3]:void 0,ho=arguments.length>4?arguments[4]:void 0;if(!this.isReady())throw new Error("API is not ready to use");if(isNaN(parseFloat(vt))||isNaN(parseFloat(bt)))throw new Error("lat and lon parameters should be valid numbers");const Dl=[bt-le,vt-le,bt+le,vt+le].map((vt=>vt.toFixed(7))).join(","),Fl=ls?"&limit=".concat(ls):"",sc=ho?"&collections=".concat(ho):"";return"".concat(this._endpoints.search,"?bbox=").concat(Dl).concat(Fl).concat(sc)}getPicturesAroundCoordinates(vt,bt,le,ls,ho){return fetch(this.getPicturesAroundCoordinatesUrl(vt,bt,le,ls,ho),this._getFetchOptions()).then((vt=>vt.json()))}getPictureMetadataUrl(vt,bt){if(!this.isReady())throw new Error("API is not ready to use");if(API.isIdValid(vt))return bt?"".concat(this._endpoints.collections,"/").concat(bt,"/items/").concat(vt):"".concat(this._endpoints.search,"?ids=").concat(vt)}findThumbnailInPictureFeature(vt){if(!this.isReady())throw new Error("API is not ready to use");if(!vt||!vt.assets)return null;let bt=null;for(let le of Object.values(vt.assets)){if(le.roles.includes("thumbnail")&&"image/jpeg"==le.type&&API.isValidHttpUrl(le.href))return this.cleanResourceURL(le.href);le.roles.includes("visual")&&"image/jpeg"==le.type&&API.isValidHttpUrl(le.href)&&(bt=this.cleanResourceURL(le.href))}return bt}getPictureThumbnailURLForSequence(vt,bt){if(!this.isReady())throw new Error("API is not ready to use");if(this._endpoints.collection_preview)return Promise.resolve(this._endpoints.collection_preview.replace("{id}",vt));if(bt&&Array.isArray(bt.links)&&bt.links.length>0){let vt=bt.links.find((vt=>"preview"===vt.rel&&"image/jpeg"===vt.type));if(vt&&API.isValidHttpUrl(vt.href))return Promise.resolve(vt.href)}const le="".concat(this._endpoints.search,"?limit=1&collections=").concat(vt);return fetch(le,this._getFetchOptions()).then((vt=>vt.json())).then((vt=>Array.isArray(vt.features)&&0!=vt.features.length?this.findThumbnailInPictureFeature(vt.features.pop()):null))}getPictureThumbnailURL(vt,bt){if(!this.isReady())throw new Error("API is not ready to use");return vt?this._endpoints.item_preview?Promise.resolve(this._endpoints.item_preview.replace("{id}",vt)):vt&&bt?fetch("".concat(this._endpoints.collections,"/").concat(bt,"/items/").concat(vt),this._getFetchOptions()).then((vt=>vt.json())).then((vt=>vt?this.findThumbnailInPictureFeature(vt):null)):fetch("".concat(this._endpoints.search,"?ids=").concat(vt),this._getFetchOptions()).then((vt=>vt.json())).then((vt=>vt&&Array.isArray(vt.features)&&0!=vt.features.length?this.findThumbnailInPictureFeature(vt.features.pop()):null)):Promise.resolve(null)}getRSSURL(vt){if(!this.isReady())throw new Error("API is not ready to use");if(this._endpoints.rss){let bt=this._endpoints.rss;return vt&&(bt+=bt.includes("?")?"&":"?",bt+="bbox="+[vt.getWest(),vt.getSouth(),vt.getEast(),vt.getNorth()].join(",")),bt}return null}getSequenceMetadataUrl(vt){if(!this.isReady())throw new Error("API is not ready to use");return"".concat(this._endpoints.collections,"/").concat(vt)}getSequenceMetadata(vt){if(!this.isReady())throw new Error("API is not ready to use");return fetch(this.getSequenceMetadataUrl(vt),this._getFetchOptions()).then((vt=>vt.json()))}getDataBbox(){if(!this.isReady())throw new Error("API is not ready to use");return this._dataBbox}searchUsers(vt){if(!this.isReady())throw new Error("API is not ready to use");if(!this._endpoints.user_search)throw new Error("User search is not available");return fetch("".concat(this._endpoints.user_search,"?q=").concat(vt),this._getFetchOptions()).then((vt=>vt.json())).then((vt=>(null===vt||void 0===vt?void 0:vt.features)||null))}getUserName(vt){if(!this.isReady())throw new Error("API is not ready to use");if(!this._endpoints.user_search)throw new Error("User search is not available");return fetch(this._endpoints.user_search.replace(/\/search$/,"/".concat(vt)),this._getFetchOptions()).then((vt=>vt.json())).then((vt=>(null===vt||void 0===vt?void 0:vt.label)||(null===vt||void 0===vt?void 0:vt.name)||null))}sendReport(vt){if(!this.isReady())throw new Error("API is not ready to use");if(!this._endpoints.report)throw new Error("Report sending is not available");const bt=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"POST",body:JSON.stringify(vt),headers:{"Content-Type":"application/json"}});return fetch(this._endpoints.report,bt).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return vt.json()}))}sendPictureSemantics(vt,bt){var le;if(!this.isReady())throw new Error("API is not ready to use");if(null===vt||void 0===vt||null===(le=vt.sequence)||void 0===le||!le.id||null===vt||void 0===vt||!vt.id)throw new Error("Missing IDs from picture");let ho=this.getPictureMetadataUrl(vt.id,vt.sequence.id);null!==vt&&void 0!==vt&&vt.origInstance&&(ho="".concat(vt.origInstance.href,"/api/collections/").concat(vt.sequence.id,"/items/").concat(vt.id));const Dl=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"PATCH",body:JSON.stringify({semantics:bt}),headers:{"Content-Type":"application/json"}});return fetch(ho,Dl).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return vt.json()}))}createPictureAnnotation(vt,bt,le){var ho;if(!this.isReady())throw new Error("API is not ready to use");if(null===vt||void 0===vt||null===(ho=vt.sequence)||void 0===ho||!ho.id||null===vt||void 0===vt||!vt.id)throw new Error("Missing IDs from picture");let Dl=this.getPictureMetadataUrl(vt.id,vt.sequence.id)+"/annotations";null!==vt&&void 0!==vt&&vt.origInstance&&(Dl="".concat(vt.origInstance.href,"/api/collections/").concat(vt.sequence.id,"/items/").concat(vt.id,"/annotations"));const Fl=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"POST",body:JSON.stringify({semantics:le,shape:bt}),headers:{"Content-Type":"application/json"}});return fetch(Dl,Fl).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return vt.json()}))}editPictureAnnotation(vt,bt){if(!this.isReady())throw new Error("API is not ready to use");let le="".concat(this._endpoint,"/annotations/").concat(vt);const ho=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"PATCH",body:JSON.stringify({semantics:bt}),headers:{"Content-Type":"application/json"}});return fetch(le,ho).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return vt.json()}))}deletePictureAnnotation(vt){if(!this.isReady())throw new Error("API is not ready to use");let bt="".concat(this._endpoint,"/annotations/").concat(vt);const le=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"DELETE"});return fetch(bt,le).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return!0}))}getAuthURL(){var vt,bt;return this._configuration?Promise.resolve(!(null===(vt=this._configuration)||void 0===vt||null===(bt=vt.auth)||void 0===bt||!bt.enabled)&&"".concat(this._endpoint,"/auth/login?next_url=<CBURL>")):null===this._configuration?fetch(this._endpoint+"/configuration",this._getFetchOptions()).then((vt=>vt.json())).then((vt=>(this._configuration=vt,this.getAuthURL()))).catch((()=>(this._configuration=!1,!1))):Promise.resolve(!1)}static isValidHttpUrl(vt){let bt;try{bt=new URL(vt)}catch(le){return!1}return"http:"===bt.protocol||"https:"===bt.protocol}static isIdValid(vt){if((0,ho.isNullId)(vt))throw new Error("id should be a valid picture unique identifier");return!0}}},2118:(vt,bt,le)=>{"use strict";le.d(bt,{Ay:()=>InitParameters,Qm:()=>Dl,Vy:()=>alterPSVState,ai:()=>alterPhotoViewerState,iz:()=>alterViewerState,mK:()=>alterMapState});var ls=le(9379),ho=le(8340);const Dl={minDate:"date_from",maxDate:"date_to",pic_type:"pic_type",camera:"camera",theme:"theme",qualityscore:"pic_score",gps:"gps"},Fl=Object.fromEntries(Object.entries(Dl).map((vt=>[vt[1],vt[0]]))),sc=["none","null","false",!1],uc=["antialias","bearing","bearingSnap","bounds","boxZoom","clickTolerance","collectResourceTiming","cooperativeGestures","crossSourceCollisions","doubleClickZoom","dragPan","dragRotate","fadeDuration","failIfMajorPerformanceCaveat","fitBoundsOptions","hash","interactive","localIdeographFontFamily","locale","logoPosition","maplibreLogo","maxBounds","maxCanvasSize","maxPitch","maxTileCacheSize","maxTileCacheZoomLevels","maxZoom","minPitch","minZoom","pitch","pitchWithRotate","pixelRatio","preserveDrawingBuffer","refreshExpiredTiles","renderWorldCopies","scrollZoom","touchPitch","touchZoomRotate","trackResize","transformCameraUpdate","transformRequest","validateStyle"];class InitParameters{constructor(){var vt,bt,le,ho,Dl,Fl,mc,gc;let Ac=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},Ec=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},kc=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};"false"===Ac["url-parameters"]&&(Ec={});let du={};"object"===typeof(null===Ac||void 0===Ac?void 0:Ac["psv-options"])&&(du=Ac["psv-options"]);let _u={};"object"===typeof(null===Ac||void 0===Ac?void 0:Ac["map-options"])&&(_u=Ac["map-options"]);let Md={};"object"===typeof(null===kc||void 0===kc?void 0:kc.map)&&(Md=kc.map);let Ld=Ec.map&&"none"!==Ec.map?getMapPositionFromString(Ec.map):null,Nd=!sc.includes(Ec.map)&&!sc.includes(Ac["map-options"]),Rd=Ec.focus||Ac.focus,Od=Ec.pic||Ac.picture,jd=Ec.seq||Ac.sequence,Ud=Ec.users||Ac["endpoint-to-use"]||Md.endpoint,Gd=Ec.speed||(null===(vt=du)||void 0===vt?void 0:vt.transitionDuration),qd=Ec.nav||(null===(bt=du)||void 0===bt?void 0:bt.picturesNavigation),Hd=Ec.theme||_u.theme||(null===(le=Md)||void 0===le?void 0:le.theme),Wd=Ec.background||_u.background||(null===(ho=Md)||void 0===ho?void 0:ho.background),Zd=(null===Ld||void 0===Ld?void 0:Ld.center)||!Od&&(_u.center||(null===(Dl=Md)||void 0===Dl?void 0:Dl.center))||[0,0],Yd=(null===Ld||void 0===Ld?void 0:Ld.zoom)||_u.zoom||(null===(Fl=Md)||void 0===Fl?void 0:Fl.zoom),Qd=(null===Ld||void 0===Ld?void 0:Ld.pitch)||_u.pitch,Xd=(null===Ld||void 0===Ld?void 0:Ld.bearing)||_u.bearing,Kd=Ec.level||(null===(mc=_u.indoor)||void 0===mc?void 0:mc.level),Jd=Ac.geocoder,$d=Ac.widgets,sp=Ac["fetch-options"],tm=Ac.style,em=Ac.lang,im=Ac.endpoint,nm=_u.raster,rm=_u.indoor,am=_u.attributionControl,sm=(om=_u,Object.fromEntries(Object.entries(om).filter((vt=>{let[bt]=vt;return uc.includes(bt)}))));var om;let lm=Ac["keyboard-shortcuts"],cm=Ac["skip-tags-menu-opening"],um="false"===(null===kc||void 0===kc?void 0:kc.disableAnnotations)||(null===(gc=du)||void 0===gc?void 0:gc.displayAnnotations)||!1,hm=Ec.xyz,dm=Ec.date_from,pm=Ec.date_to,mm=Ec.pic_type,fm=Ec.camera,gm=Ec.pic_score,Am=Ec.gps,_m=Ec.overlay,ym=Ec.xywh,vm=Ec.annot;!Nd||Od||jd?["map","pic"].includes(Rd)?"map"!==Rd||Nd||(console.warn("Parameter focus can't be 'map' as map is disabled"),Rd="pic"):(console.warn("Invalid value for parameter focus:",Rd),Rd=!Nd||Od||jd?"pic":"map"):Rd="map","aerial"!=Wd||nm||(console.warn("Parameter background can't be 'aerial' as no aerial imagery is available"),Wd="streets"),Kd&&!rm&&console.error("Can't set indoor level if indoor= plugin is not available"),!um&&vm&&(um=!0),vm&&!Od&&console.error("Parameter annot can only be used in combination with 'picture'"),this._parentInit={map:Nd,fetchOptions:sp,style:tm,lang:em,endpoint:im},this._parentPostInit={focus:Rd,picture:Od,sequence:jd,geocoder:Jd,widgets:$d,users:Ud,forceFocus:!0,keyboardShortcuts:!0,willLoadPicture:void 0!==(Od||jd),skipTagsMenuOpening:"true"===cm},this._psvInit=Object.assign(Object.fromEntries(Object.entries(du).filter((vt=>{let[bt]=vt;return!["transitionDuration","picturesNavigation","displayAnnotations"].includes(bt)}))),{displayAnnotations:um}),this._psvAny={transitionDuration:Gd,picturesNavigation:qd},this._psvPostInit={xyz:hm,xywh:ym,annotation:vm},this._mapInit=(0,ls.A)({raster:nm,indoor:rm,attributionControl:am},sm),this._mapAny={theme:Hd,background:Wd,center:Zd,zoom:Yd,pitch:Qd,bearing:Xd,level:Kd},this._mapPostInit={date_from:dm,date_to:pm,pic_type:mm,camera:fm,pic_score:gm,gps:Am,overlay:_m},"false"===lm&&(this._psvInit.keyboard=!1,this._psvInit.keyboardActions={},this._mapInit.keyboard=!1,this._parentPostInit.keyboardShortcuts=!1)}_sanitize(vt){return Object.fromEntries(Object.entries(vt).filter((vt=>{let[,bt]=vt;return void 0!==bt})))}getParentInit(){return this._sanitize(this._parentInit)}getParentPostInit(){return this._sanitize(this._parentPostInit)}getPSVInit(){return this._sanitize(Object.assign({},this._psvInit,this._psvAny))}getPSVPostInit(){return this._sanitize(Object.assign({},this._psvPostInit,this._psvAny))}getMapInit(){return this._sanitize(Object.assign({},this._mapInit,this._mapAny))}getMapPostInit(){return this._sanitize(Object.assign({},this._mapPostInit,this._mapAny))}static GetComponentProperties(vt,bt){const le={};for(let ls in vt.properties){vt.properties[ls].state||null==bt[ls]||(le[ls]=bt[ls])}return le}}function getMapPositionFromString(vt,bt){const le=(vt||"").split("/");if(le.length>=3&&!le.some((vt=>isNaN(vt)))){const vt={center:[+le[2],+le[1]],zoom:+le[0],pitch:+(le[4]||0)};return bt&&(vt.bearing=bt.dragRotate.isEnabled()&&bt.touchZoomRotate.isEnabled()?+(le[3]||0):bt.getBearing()),vt}return null}function alterPSVState(vt,bt){bt.xyz&&vt.addEventListener("picture-loaded",(()=>{const le=function(vt){const bt=(vt||"").split("/");return 3!==bt.length||bt.some((vt=>isNaN(vt)))?null:{x:+bt[0],y:+bt[1],z:+bt[2]}}(bt.xyz);vt.setXYZ(le.x,le.y,le.z)}),{once:!0}),bt.xywh&&vt.addEventListener("picture-loaded",(()=>{const le=function(vt,bt){let le=(vt||"").split(",");if(4!==le.length||le.some((vt=>isNaN(vt))))return null;{var ls,ho,Dl,Fl;let[vt,mc,gc,Ac]=le.map((vt=>parseFloat(vt))),Ec=bt.panorama.basePanoData;if("function"===typeof Ec){var sc,uc;const vt=null===bt||void 0===bt||null===(sc=bt.properties)||void 0===sc||null===(uc=sc["pers:interior_orientation"])||void 0===uc?void 0:uc.sensor_array_dimensions;Ec=vt&&2==vt.length?Ec({width:vt[0],height:vt[1]}):null}if(null===(ls=Ec)||void 0===ls||!ls.fullWidth||null===(ho=Ec)||void 0===ho||!ho.fullHeight)return null;const kc=(null===(Dl=Ec)||void 0===Dl?void 0:Dl.croppedX)||0,du=(null===(Fl=Ec)||void 0===Fl?void 0:Fl.croppedY)||0,_u=kc+vt+gc/2-Ec.fullWidth/2,Md=-(du+mc+Ac/2-Ec.fullHeight/2),Ld=_u/Ec.fullWidth,Nd=Md/Ec.fullHeight,Rd=(gc/Ec.fullWidth+Ac/Ec.fullHeight)/2;return{yaw:2*Ld*Math.PI,pitch:Nd*Math.PI,z:100*(1-Rd)}}}(bt.xywh,vt.getPictureMetadata());vt.rotate(le),vt.zoom(le.z)}),{once:!0}),bt.annotation&&(vt.getPictureMetadata()?vt.focusOnAnnotation(bt.annotation):vt.addEventListener("picture-loaded",(()=>{vt.focusOnAnnotation(bt.annotation)}),{once:!0}));let le=bt.transitionDuration||bt.speed;void 0!==le&&vt.setTransitionDuration(le);let ls=bt.picturesNavigation||bt.nav;["none","pic","any","seq"].includes(ls)&&vt.setPicturesNavigation(ls)}async function alterMapState(vt,bt){var le;const ls=getMapPositionFromString(bt.map,vt);ls&&vt.jumpTo(ls),null===(le=vt.setFilters)||void 0===le||le.call(vt,function(vt){const bt={};for(let le in Fl)vt[le]&&(bt[Fl[le]]=vt[le]);if(bt.qualityscore){let vt=bt.qualityscore.split("");const le={A:5,B:4,C:3,D:2,E:1};bt.qualityscore=vt.map((vt=>le[vt]))}return bt}(bt)),["aerial","streets"].includes(bt.background)&&vt._parent.mapStyleComposer.switchBasemap(bt.background),bt.overlay&&bt.overlay.split(",").forEach((bt=>vt._parent.mapStyleComposer.switchDataOverlayVisibility("sem-"+bt,!0)))}function alterPhotoViewerState(vt,bt){let le=bt.picture||bt.pic,ls=bt.sequence||bt.seq||null;if(le){const bt=le.split(";");bt.length>1&&console.warn("Multiple picture IDs passed in URL, only first one kept"),vt.select(1===bt.length?ls:null,bt[0],!0)}else ls?vt.select(ls,null,!0):vt.select()}function alterViewerState(vt,bt){alterPhotoViewerState(vt,bt),"map"===bt.focus&&null!==vt&&void 0!==vt&&vt.map?(vt.setPopup(!1),vt._setFocus("map",null,bt.forceFocus)):"pic"===bt.focus&&null!==vt&&void 0!==vt&&vt.mini?(vt.setPopup(!1),vt._setFocus("pic",null,bt.forceFocus)):bt.focus&&"meta"===bt.focus&&null!==vt&&void 0!==vt&&vt.mini&&vt._setFocus("pic",null,bt.forceFocus),null!=bt.users&&((0,ho.isPanoramaxEndpointSingleUser)(bt.users)?vt.mapStyleComposer._createPanoramaxEndpointForUser(bt.users):vt.mapStyleComposer.switchPanoramaxEndpoint(bt.users))}},4997:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapStyleComposer});var ls=le(8340),ho=le(4964),Dl=le(7343);class MapStyleComposer extends EventTarget{constructor(vt){super(),this._parent=vt,this.map=null,this._mapUpdateDebounce=null,this.layerRanges={basemaps:{},dataUnderlays:{},panoramax:{},dataOverlays:{}},this.basemap=null,this.dataUnderlays=new Set,this.panoramax=null,this.dataOverlays=new Set,this.detachedSources={},this.panoramaxTheme=ls.MAP_THEMES_STYLES.default.id,this.panoramaxFilters={}}getMapStyle(){let vt={},bt=[],le=[],Dl={},Fl=[];const preserveFilters=vt=>(this.map&&(vt||[]).filter((vt=>this.map.getLayer(vt.id))).forEach((vt=>{const bt=this.map.getFilter(vt.id);bt&&(vt.filter=bt)})),vt),addLayers=vt=>{(vt||[]).forEach((vt=>{(0,ls.isLabelLayer)(vt)?le.push(vt):bt.push(vt)}))},addSprite=(vt,bt)=>{Array.isArray(vt)?Fl=Fl.concat(vt):"object"===typeof vt&&null!=vt?Fl.push(vt):"string"===typeof vt&&Fl.push({id:bt,url:vt})};var sc;(Object.entries(this.detachedSources).forEach((bt=>{let[le,ls]=bt;return vt[le]=ls})),this.basemap&&this.layerRanges.basemaps[this.basemap])&&(vt=Object.assign(vt,this.layerRanges.basemaps[this.basemap].sources),addLayers(this.layerRanges.basemaps[this.basemap].layers),Dl=this.layerRanges.basemaps[this.basemap].metadata||{},addSprite(this.layerRanges.basemaps[this.basemap].sprite,this.basemap),null!==(sc=Dl)&&void 0!==sc&&sc["panoramax:locales"]||(Dl["panoramax:locales"]=["fr","en","de","es","ru","pt","zh","hi","latin"]));if([...this.dataUnderlays].forEach((bt=>{this.layerRanges.dataUnderlays[bt]&&(vt=Object.assign(vt,this.layerRanges.dataUnderlays[bt].sources),addLayers(preserveFilters(this.layerRanges.dataUnderlays[bt].layers)),addSprite(this.layerRanges.dataUnderlays[bt].sprite,bt))})),this.panoramax&&this.layerRanges.panoramax[this.panoramax]){Dl=Object.assign(Dl,this.layerRanges.panoramax[this.panoramax].metadata),vt=Object.assign(vt,this.layerRanges.panoramax[this.panoramax].sources),addSprite(this.layerRanges.panoramax[this.panoramax].sprite,this.panoramax);let bt=this._applyPanoramaxThemeOnLayers(this.layerRanges.panoramax[this.panoramax]);bt=this._applyPanoramaxFiltersOnLayers(bt),addLayers(bt)}if([...this.dataOverlays].forEach((bt=>{this.layerRanges.dataOverlays[bt]&&(vt=Object.assign(vt,this.layerRanges.dataOverlays[bt].sources),addLayers(preserveFilters(this.layerRanges.dataOverlays[bt].layers)),addSprite(this.layerRanges.dataOverlays[bt].sprite,bt))})),Dl["panoramax:locales"]){let vt=this._parent.lang||(0,ho.autoDetectLocale)(Dl["panoramax:locales"],"latin");vt.includes("-")&&(vt=vt.split("-")[0]),vt.includes("_")&&(vt=vt.split("_")[0]),le.forEach((bt=>{bt.layout["text-field"].includes("name:latin")&&(bt.layout["text-field"]=["coalesce",["get","name:".concat(vt)],["get","name:latin"],["get","name"]])}))}const uc=le.find((vt=>"place_label_city"==vt.id));let mc=le.find((vt=>"place_label_capital"==vt.id));return uc&&!mc&&(uc.paint={"text-color":"hsl(0, 0%, 0%)","text-halo-blur":0,"text-halo-color":"hsla(0, 0%, 100%, 1)","text-halo-width":3},uc.layout["text-letter-spacing"]=.1,mc=JSON.parse(JSON.stringify(uc)),mc.id="place_label_capital",mc.filter=mc.filter.filter((vt=>!(">"===vt[0]&&"capital"==vt[1]))),mc.filter.push(["<=","capital",2]),uc.filter.find((vt=>">"===vt[0]&&"capital"==vt[1]))||uc.filter.push([">","capital",2]),le.push(mc)),vt.plan_ign&&(vt.plan_ign.maxzoom=18),{version:8,name:"Panoramax Map Style",sources:vt,layers:bt.concat(le).filter((vt=>vt.id)),metadata:Dl,sprite:Fl.length>0?Fl:void 0}}updateMapStyle(){let vt=arguments.length>0&&void 0!==arguments[0]&&arguments[0];clearTimeout(this._mapUpdateDebounce),this._mapUpdateDebounce=setTimeout((()=>{var bt,le,ls;(null===(bt=this.map)||void 0===bt||bt.setStyle(this.getMapStyle(),{diff:!0}),vt)&&(this.map._semMapProtocol.clearCache(),Object.entries((null===(le=this.map)||void 0===le||null===(ls=le.getStyle())||void 0===ls?void 0:ls.sources)||{}).filter((vt=>{let[,bt]=vt;return bt.tiles&&bt.tiles[0].startsWith("sem")})).forEach((vt=>{let[bt]=vt;const le=this.map.getSource(bt);le.setTiles(le.tiles)})))}),10)}registerSource(vt,bt){let le=!1;const ls=Object.keys(this.layerRanges);for(let ho=0;ho<ls.length;ho++){const bt=this.layerRanges[ls[ho]],Dl=Object.keys(bt);for(let ls=0;ls<Dl.length;ls++){if(Dl[ls]===vt){le=!0;break}}if(le)break}le||("indoorequal"===vt&&(bt.attribution='<a href="https://indoorequal.org/" target="_blank">\xa9 indoor=</a>'),this.detachedSources[vt]=bt)}registerLayer(vt,bt){var le,ls,ho,Dl;let Fl="dataOverlays";if(("indoorequal"===vt.source||bt)&&(Fl="dataUnderlays"),"indoorequal"===vt.source&&"indoor-heat"===vt.id&&!1===(null===(le=this._parent)||void 0===le||null===(ls=le._initParams)||void 0===ls||null===(ho=ls.getMapInit())||void 0===ho||null===(Dl=ho.indoor)||void 0===Dl?void 0:Dl.heatmap))return;let sc=!1;if(Object.values(this.layerRanges[Fl]).forEach((bt=>{bt.sources[vt.source]&&(bt.layers||(bt.layers=[]),bt.layers.push(vt),sc=!0)})),sc)return;let uc={sources:{},layers:[vt]};this.detachedSources[vt.source]&&(uc.sources[vt.source]=this.detachedSources[vt.source],delete this.detachedSources[vt.source],"dataOverlays"===Fl?this.addDataOverlay(vt.id,uc,!0):"dataUnderlays"===Fl&&this.addDataUnderlay(vt.id,uc,!0))}async waitFor(vt,bt){return this.layerRanges[vt][bt]?Promise.resolve():new Promise((vt=>setTimeout(vt,250))).then((()=>this.waitFor(vt,bt)))}async addBasemap(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];"string"===typeof bt&&(bt=await fetch(bt).then((vt=>vt.json()))),this.layerRanges.basemaps[vt]=bt,this.dispatchEvent(new CustomEvent("basemap-added",{detail:{basemap:vt}})),le&&this.switchBasemap(vt)}async switchBasemap(vt){vt&&!this.layerRanges.basemaps[vt]&&await this.waitFor("basemaps",vt),this.basemap!==vt&&vt&&(this.basemap=vt,this.updateMapStyle(),this.dispatchEvent(new CustomEvent("basemap-changed",{detail:{basemap:vt}})))}hasManyBasemaps(){return Object.keys(this.layerRanges.basemaps).length>=2}addDataUnderlay(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.layerRanges.dataUnderlays[vt]=bt,this.dispatchEvent(new CustomEvent("dataunderlay-added",{detail:{dataUnderlay:vt}})),le&&this.switchDataUnderlayVisibility(vt,!0)}async switchDataUnderlayVisibility(vt,bt){vt&&!this.layerRanges.dataUnderlays[vt]&&await this.waitFor("dataUnderlays",vt),bt?this.dataUnderlays.add(vt):this.dataUnderlays.delete(vt),this.updateMapStyle(),this.dispatchEvent(new CustomEvent("dataunderlay-changed",{detail:{dataUnderlay:vt,visible:bt}}))}addPanoramaxEndpoint(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];Object.values((null===bt||void 0===bt?void 0:bt.sources)||{}).filter((vt=>vt.tiles)).forEach((vt=>vt.tiles=vt.tiles.map((vt=>vt.replace(/^http/,"panora"))))),this.layerRanges.panoramax[vt]=bt,this.layerRanges.panoramax[vt].layers=(0,ls.getPanoramaxLayers)(bt),this.dispatchEvent(new CustomEvent("panoramax-added",{detail:{endpoint:vt}})),le&&this.switchPanoramaxEndpoint(vt)}async switchPanoramaxEndpoint(vt){vt&&!this.layerRanges.panoramax[vt]&&await this.waitFor("panoramax",vt),vt&&vt!==this.panoramax&&(this.panoramax=vt,this.updateMapStyle(!0),this.dispatchEvent(new CustomEvent("panoramax-changed",{detail:{endpoint:vt}})))}isPanoramaxEndpointSingleUser(){return(0,ls.isPanoramaxEndpointSingleUser)(this.panoramax)}setPanoramaxTheme(vt){vt!==this.panoramaxTheme&&(this.panoramaxTheme=vt,this.updateMapStyle(),this.dispatchEvent(new CustomEvent("theme-changed",{detail:{theme:vt}})))}setPanoramaxFilters(vt){this.panoramaxFilters=vt,this.updateMapStyle(),this.dispatchEvent(new CustomEvent("filters-changed",{detail:vt}))}addDataOverlay(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.layerRanges.dataOverlays[vt]=bt,this.dispatchEvent(new CustomEvent("dataoverlay-added",{detail:{dataOverlay:vt}})),le&&this.switchDataOverlayVisibility(vt,!0)}async switchDataOverlayVisibility(vt,bt){vt&&!this.layerRanges.dataOverlays[vt]&&await this.waitFor("dataOverlays",vt),bt?this.dataOverlays.add(vt):this.dataOverlays.delete(vt),this.updateMapStyle(),this.dispatchEvent(new CustomEvent("dataoverlay-changed",{detail:{dataOverlay:vt,visible:bt}}))}async _createPanoramaxEndpointFromAPI(vt,bt){let le,ls=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];bt._endpoints.style?le=bt._endpoints.style:bt._endpoints.tiles&&(le={sources:{geovisio:{tiles:[bt._endpoints.tiles]}}}),le&&"string"===typeof le&&(le=await fetch(le,bt._getFetchOptions()).then((vt=>vt.json()))),le&&le.sources&&this.addPanoramaxEndpoint(vt,le,ls)}async _createPanoramaxEndpointForUser(vt){if(!(0,ls.isPanoramaxEndpointSingleUser)(vt))return;if(this.layerRanges.panoramax[vt])return void this.switchPanoramaxEndpoint(vt);let bt,le,ho;vt.startsWith("metacatalog_")?(le=this._parent.apiMC,ho=vt.replace(/^metacatalog_/,"")):(le=this._parent.api,ho=vt),le._endpoints.user_style?bt=le._endpoints.user_style.replace(/\{userId\}/g,ho):le._endpoints.user_tiles&&(bt={sources:{["geovisio_".concat(ho)]:{tiles:[le._endpoints.user_tiles.replace(/\{userId\}/g,ho)]}}}),bt&&"string"===typeof bt&&(bt=await fetch(bt,le._getFetchOptions()).then((vt=>vt.json()))),bt&&bt.sources&&this.addPanoramaxEndpoint(vt,bt,!0)}_createRasterBasemap(vt){return this.addBasemap("aerial",{sources:{[ls.RASTER_LAYER_ID]:vt},layers:[{id:ls.RASTER_LAYER_ID,type:"raster",source:ls.RASTER_LAYER_ID}]}),ls.RASTER_LAYER_ID}_applyPanoramaxThemeOnLayers(vt){var bt,le,ho,Fl,sc,uc,mc,gc;const Ac=this._parent.psv?(null===(bt=this._parent.psv)||void 0===bt||null===(le=bt._myVTour)||void 0===le||null===(ho=le.state)||void 0===ho?void 0:ho.loadingNode)||(null===(Fl=this._parent.psv)||void 0===Fl||null===(sc=Fl._myVTour)||void 0===sc||null===(uc=sc.state)||void 0===uc||null===(mc=uc.currentNode)||void 0===mc?void 0:mc.id):this._parent.picture,Ec=this._parent.psv?Ac?null===(gc=this._parent.psv)||void 0===gc?void 0:gc._picturesSequences[Ac]:null:this._parent.sequence;return vt.layers=vt.layers.map((bt=>{const le=bt.id.endsWith("_pictures"),ho=bt.id.endsWith("_sequences"),Fl=bt.id.endsWith("_grid");if(bt.layout||(bt.layout={}),bt.paint||(bt.paint={}),le||ho){const vt=["case",["==",["get","hidden"],!0],90];ho&&Ec?vt.push(["==",["get","id"],Ec],100):le&&Ec&&vt.push(["in",Ec,["get","sequences"]],100),vt.push(...ls.MAP_THEMES_STYLES[this.panoramaxTheme].sort),vt.push(10),bt.layout["".concat(le?"circle":"line","-sort-key")]=vt;const Fl=["case",["==",["get","hidden"],!0],Dl.COLORS.HIDDEN];ho&&Ec?Fl.push(["==",["get","id"],Ec],Dl.COLORS.SELECTED):le&&Ec&&Fl.push(["in",Ec,["get","sequences"]],Dl.COLORS.SELECTED),Fl.push(...ls.MAP_THEMES_STYLES[this.panoramaxTheme].color),bt.paint["".concat(le?"circle":"line","-color")]=Fl,le&&(bt.paint["circle-stroke-color"]=Fl)}if(Fl){let le="coef";this.panoramaxFilters.pic_type&&(le="flat"==this.panoramaxFilters.pic_type?"coef_flat_pictures":"coef_360_pictures",(0,ls.hasStyleLoggedGridStats)(vt)&&(0,Dl.getUserAccount)()&&(le="logged_"+le)),bt=(0,ls.switchCoefValue)(bt,le)}return bt})),vt.layers}_applyPanoramaxFiltersOnLayers(vt){const bt=this.panoramaxFilters;return vt.forEach((vt=>{var le,ho,Dl,Fl;const sc=vt.id.endsWith("_pictures"),uc=vt.id.endsWith("_sequences")||vt.id.endsWith("_sequences_plus");if(!sc&&!uc)return;let mc=[];if(bt.minDate&&""!==bt.minDate&&(sc?mc.push([">=",["get","ts"],bt.minDate]):uc&&mc.push([">=",["get","date"],bt.minDate])),bt.maxDate&&""!==bt.maxDate&&(uc&&mc.push(["<=",["get","date"],bt.maxDate]),sc)){let vt=new Date(bt.maxDate);vt.setDate(vt.getDate()+1),vt=vt.toISOString().split("T")[0],mc.push(["<=",["get","ts"],vt])}bt.pic_type&&""!==bt.pic_type&&(bt.pic_type="flat"===bt.pic_type?"flat":"equirectangular",(uc||sc)&&mc.push(["==",["get","type"],bt.pic_type])),bt.qualityscore&&bt.qualityscore.length>0&&(uc||sc)&&mc.push(["in",ls.MAP_EXPR_QUALITYSCORE,["literal",bt.qualityscore]]),bt.gps&&bt.gps.length>0&&(uc||sc)&&mc.push(["in",ls.MAP_EXPR_QUALITYSCORE_GPS,["literal",bt.gps]]),sc&&null!==(le=bt.featuresRestrictions)&&void 0!==le&&le.pictures&&(null===(ho=bt.featuresRestrictions.pictures.features)||void 0===ho?void 0:ho.length)>=0&&("keep"===bt.featuresRestrictions.pictures.rule?mc.push(["in",["get","id"],["literal",bt.featuresRestrictions.pictures.features]]):bt.featuresRestrictions.pictures.features.length>0&&mc.push(["!",["in",["get","id"],["literal",bt.featuresRestrictions.pictures.features]]])),uc&&null!==(Dl=bt.featuresRestrictions)&&void 0!==Dl&&Dl.sequences&&(null===(Fl=bt.featuresRestrictions.sequences.features)||void 0===Fl?void 0:Fl.length)>=0&&("keep"===bt.featuresRestrictions.sequences.rule?mc.push(["in",["get","id"],["literal",bt.featuresRestrictions.sequences.features]]):bt.featuresRestrictions.sequences.features.length>0&&mc.push(["!",["in",["get","id"],["literal",bt.featuresRestrictions.sequences.features]]])),0==mc.length?mc=["literal",!0]:(mc.unshift("all"),sc&&(mc=["step",["zoom"],!0,ls.TILES_PICTURES_ZOOM,mc])),mc&&(vt.filter=mc)})),vt}}},1435:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PanoraMapProtocol});var ls=le(99),ho=le(8293),Dl=le(8552);class PanoraMapProtocol{tile(){return(vt,bt)=>{bt=bt||new AbortController;const le=vt.url.replace(/^panora/,"http");return fetch(le,{signal:bt.signal}).then((vt=>vt.arrayBuffer())).then((vt=>new ho.cW(new ls.A(vt)))).then((vt=>(!vt.layers.pictures||vt.layers.pictures.length>=5e3||Object.values(vt.layers).forEach((vt=>{const bt=vt.feature.bind(vt);vt.feature=vt=>{const le=bt(vt);return le.properties.uncrowded=!0,le}})),vt))).then((vt=>(0,Dl.bL)(vt).buffer)).then((vt=>({data:vt})))}}}},3727:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PhotoAdapter});var ls=le(3890);class PhotoAdapter extends ls.D{constructor(vt,bt){super(vt,bt),this._shouldGoFast=bt.shouldGoFast||(()=>!0)}loadTexture(vt,bt){return vt.origBaseUrl?vt.baseUrl=vt.origBaseUrl:vt.origBaseUrl=vt.baseUrl,this._shouldGoFast()&&vt.thumbUrl&&!vt.hdLoaded&&1==vt.rows&&(vt.baseUrl=vt.thumbUrl),super.loadTexture(vt,bt).then((bt=>(vt.baseUrl===vt.origBaseUrl&&(vt.hdLoaded=!0),bt))).catch((vt=>{console.error("Can't load texture",vt)}))}__loadTiles(vt){this._shouldGoFast()||super.__loadTiles(vt)}}},4207:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PresetManager});var ls=le(7208);const ho={fas:"fa7-solid"},Dl={};class PresetManager{constructor(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._ready=!1,this._presets=null,this._translations={},bt||this._load(vt)}async _load(vt){var bt,le;vt=(null===(bt=vt)||void 0===bt?void 0:bt.substring(0,2))||(null===(le=window.navigator.languages[0])||void 0===le?void 0:le.substring(0,2));try{var Fl,sc;const[bt,le,gc]=await Promise.all([fetch("".concat((0,ls.PanoramaxPresetsURL)(),"/translations/en.min.json")),vt?fetch("".concat((0,ls.PanoramaxPresetsURL)(),"/translations/").concat(vt,".min.json")):Promise.resolve({ok:!0}),fetch("".concat((0,ls.PanoramaxPresetsURL)(),"/presets.min.json"))]);if(!bt||!le||!gc||!bt.ok||!le.ok||!gc.ok)throw this._ready=-1,new Error("Presets service is not available");var uc,mc;if(this._presets=await gc.json(),this._translations.en=null===(Fl=await bt.json())||void 0===Fl||null===(sc=Fl.en)||void 0===sc?void 0:sc.presets,vt)this._translations[vt]=null===(uc=await le.json())||void 0===uc||null===(mc=uc[vt])||void 0===mc?void 0:mc.presets;Object.entries(this._presets).forEach((bt=>{var le,ls,Fl,sc,uc,mc;let[gc,Ac]=bt;if(null!==(le=this._translations[vt])&&void 0!==le&&null!==(ls=le.presets)&&void 0!==ls&&null!==(Fl=ls[gc])&&void 0!==Fl&&Fl.name?Ac.name=this._translations[vt].presets[gc].name:null!==(sc=this._translations.en)&&void 0!==sc&&null!==(uc=sc.presets)&&void 0!==uc&&null!==(mc=uc[gc])&&void 0!==mc&&mc.name&&(Ac.name=this._translations.en.presets[gc].name),Ac.icon){const vt=Ac.icon.split("-")[0],bt=ho[vt];Ac.iconify=bt?Ac.icon.replace(vt+"-",bt+":"):Ac.icon.split("-")[0]+":"+Ac.icon.split("-").slice(1).join("-"),Dl[Ac.iconify]&&(Ac.iconify=Dl[Ac.iconify])}})),this._ready=!0}catch(gc){console.error("Presets service throws an error:",gc),this._ready=-1}}async onceReady(){return this._ready?-1===this._ready?Promise.reject():Promise.resolve():(await new Promise((vt=>setTimeout(vt,250))),this.onceReady())}async getPreset(vt){return this.getPresets(vt).then((vt=>vt.shift()))}async getPresets(vt){return this.onceReady().then((()=>{const bt=Object.values(this._presets).filter((bt=>{if(0===Object.keys(bt.tags).length)return!1;for(let le in bt.tags){const ls=bt.tags[le];if(!vt.semantics.find((vt=>"delete"!==vt.action&&vt.key===le&&("*"===ls||ls===vt.value))))return!1}return!0}));return bt.sort(((vt,bt)=>{const le=Object.keys(vt.tags).length,ls=Object.keys(bt.tags).length;if(le>ls)return-1;if(le===ls){const le=Object.values(vt.tags).filter((vt=>"*"===vt)).length,ls=Object.values(bt.tags).filter((vt=>"*"===vt)).length;return le<ls?-1:le>ls?1:0}return 1})),bt}))}}},4005:(vt,bt,le)=>{"use strict";le.d(bt,{Ay:()=>SemanticsMapProtocol,lU:()=>Dl,nu:()=>Fl});var ls=le(2964),ho=le(8552);const Dl=15,Fl=19,sc={15:100,16:300,17:500,18:800,19:1e3};class SemanticsMapProtocol{constructor(vt){this.tiles=new Map,this._parent=vt}clearCache(){this.tiles=new Map}_tileToBbox(vt,bt,le){const ls=Math.pow(2,le),ho=vt/ls*360-180,Dl=(vt+1)/ls*360-180,Fl=180*Math.atan(Math.sinh(Math.PI*(1-2*bt/ls)))/Math.PI;return[ho,180*Math.atan(Math.sinh(Math.PI*(1-2*(bt+1)/ls)))/Math.PI,Dl,Fl]}_semanticsToBasicProps(vt){var bt,le,ls,ho;const Dl={},setOrAppend=vt=>{Dl[vt.key]?Dl[vt.key].add(vt.value):Dl[vt.key]=new Set([vt.value])};return((null===(bt=vt.properties)||void 0===bt||null===(le=bt.collection)||void 0===le?void 0:le.semantics)||[]).forEach(setOrAppend),((null===(ls=vt.properties)||void 0===ls?void 0:ls.semantics)||[]).forEach(setOrAppend),((null===(ho=vt.properties)||void 0===ho?void 0:ho.annotations)||[]).forEach((vt=>vt.semantics.forEach(setOrAppend))),Object.keys(Dl).forEach((vt=>Dl[vt]=[...Dl[vt]].join(";"))),Dl.picid=vt.id,Dl.seqid=vt.collection,Dl}tile(){return async(vt,bt)=>{bt=bt||new AbortController;const le=vt.url.match(/^sem:\/\/\/(.+)\/(\d+)\/(\d+)\/(\d+)/);if(!le)throw new Error("Invalid URL");if(this.tiles.has(vt.url))return{data:this.tiles.get(vt.url).buffer.slice(0)};const[uc,mc,gc,Ac,Ec]=le,kc=this._tileToBbox(parseInt(Ac),parseInt(Ec),parseInt(gc)),du="".concat(this._parent.getAPI()._endpoint,"/search?bbox=").concat(kc.join(","),"&limit=").concat(sc[parseInt(gc)],"&sortby=id&filter=").concat(encodeURIComponent(mc));return fetch(du,{signal:bt.signal}).then((vt=>vt.json())).then((bt=>{if(bt.features){if(bt.type="FeatureCollection",0===bt.features.length){const bt=new Uint8Array;return this.tiles.set(vt.url,bt),{data:bt.buffer.slice(0)}}bt.features=bt.features.map((vt=>({type:vt.type,geometry:vt.geometry,id:vt.id,properties:this._semanticsToBasicProps(vt)})))}const le=(0,ls.A)(bt,{minZoom:Dl,maxZoom:Fl}).getTile(gc,Ac,Ec);if(!le)throw new Error("Can't create tile");const sc=(0,ho.O7)({layer:le},{version:2});return this.tiles.set(vt.url,sc),{data:sc.buffer.slice(0)}}))}}}},4451:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>URLHandler});var ls=le(2118);const ho=["speed","nav","focus","pic","xyz","map","background","users","s","xywh","annot","seq","overlay","level"].concat(Object.values(ls.Qm)),Dl=["focus-changed","pictures-navigation-changed"],Fl=["position-updated","zoom-updated","view-rotated","picture-loaded","transition-duration-changed","annotation-focused","annotations-unfocused"],sc=["moveend","zoomend","boxzoomend","styledata"],uc=["filters-changed","theme-changed","panoramax-changed","basemap-changed"];class URLHandler extends EventTarget{constructor(vt){super(),this._parent=vt,this._delay=null}listenToChanges(){var vt;(window.addEventListener("popstate",this._onURLChange.bind(this),!1),Dl.forEach((vt=>this._parent.addEventListener(vt,this._onParentChange.bind(this)))),Fl.forEach((vt=>this._parent.psv.addEventListener(vt,this._onParentChange.bind(this)))),this._parent.map)&&(sc.forEach((vt=>this._parent.map.on(vt,this._onParentChange.bind(this)))),uc.forEach((vt=>this._parent.mapStyleComposer.addEventListener(vt,this._onParentChange.bind(this)))),null===(vt=this._parent.map.indoorEqual)||void 0===vt||vt.on("levelchange",this._onParentChange.bind(this)))}destroy(){window.removeEventListener("popstate",this._onURLChange)}nextURLParams(){var vt;let bt={};"number"==typeof this._parent.psv.getTransitionDuration()&&(bt.speed=this._parent.psv.getTransitionDuration()),[null,"any"].includes(this._parent.psv.getPicturesNavigation())||(bt.nav=this._parent.psv.getPicturesNavigation()),this._parent.psv.getPictureId()&&(bt.pic=this._parent.psv.getPictureId());const le=this._parent.psv.getPictureMetadata();var ho;le&&(bt.xyz=this.currentPSVString(),null!==(ho=le.sequence)&&void 0!==ho&&ho.id&&(bt.seq=le.sequence.id));const Dl=this._parent.psv.getSelectedAnnotations();if((null===Dl||void 0===Dl?void 0:Dl.length)>0&&(bt.annot=Dl[0]),null!==(vt=this._parent.map)&&void 0!==vt&&vt.loaded){var Fl,sc,uc,mc,gc,Ac;if(bt.map=this.currentMapString(),bt.focus="pic",this._parent.isMapWide()&&(bt.focus="map"),null!==(Fl=this._parent.mapStyleComposer)&&void 0!==Fl&&null!==(sc=Fl.hasManyBasemaps)&&void 0!==sc&&sc.call(Fl)&&null!==(uc=this._parent.mapStyleComposer)&&void 0!==uc&&uc.basemap&&(bt.background=this._parent.mapStyleComposer.basemap),null!==(mc=this._parent.mapStyleComposer)&&void 0!==mc&&mc.panoramax&&(bt.users=this._parent.mapStyleComposer.panoramax),this._parent.mapStyleComposer.panoramaxFilters){for(let vt in ls.Qm)this._parent.mapStyleComposer.panoramaxFilters[vt]&&(bt[ls.Qm[vt]]=this._parent.mapStyleComposer.panoramaxFilters[vt]);if(bt.pic_score)if(Array.isArray(bt.pic_score)||(bt.pic_score=bt.pic_score.split(",")),5===bt.pic_score.length)delete bt.pic_score;else{const vt=[null,"E","D","C","B","A"];bt.pic_score=bt.pic_score.map((bt=>vt[bt])).join("")}Array.isArray(bt.gps)&&5===bt.gps.length&&delete bt.gps}if(null!==(gc=this._parent.map)&&void 0!==gc&&gc.getSemanticOverlays){const vt=this._parent.map.getSemanticOverlays().filter((vt=>this._parent.mapStyleComposer.dataOverlays.has(vt.source))).map((vt=>vt.id));vt.length>0&&(bt.overlay=vt.join(","))}null!==(Ac=this._parent.map)&&void 0!==Ac&&Ac.indoorEqual&&(bt.level=this._parent.map.indoorEqual.level)}return bt}nextURLString(){let vt="";return Object.entries(this.nextURLParams()).sort(((vt,bt)=>vt[0].localeCompare(bt[0]))).forEach((bt=>{let[le,ls]=bt,ho=!1;const Dl=vt.split("&").map((vt=>{const bt=vt.split("=")[0];return bt===le?(ho=!0,"".concat(bt,"=").concat(ls)):vt})).filter((vt=>vt));ho||Dl.push("".concat(le,"=").concat(ls)),vt="".concat(Dl.join("&"))})),"?".concat(vt).replace(/^\?+/,"?")}currentURLParams(){const vt=(arguments.length>0&&void 0!==arguments[0]&&arguments[0]?window.location.hash:window.location.search).replace(/^[?#]/,"").replace(/&amp;/g,"&");let bt={};if(vt.split("&").map((vt=>vt.split("="))).filter((vt=>void 0!==vt[0]&&vt[0].length>0&&ho.includes(vt[0]))).forEach((vt=>{bt[vt[0]]=vt[1]})),bt.s){const vt=Object.fromEntries(decodeURIComponent(bt.s).split(";").map((vt=>[vt[0],vt.substring(1)])));bt={},"m"===vt.f?bt.focus="map":"p"===vt.f?bt.focus="pic":"t"===vt.f&&(bt.focus="meta"),""!==vt.s&&(bt.speed=100*parseFloat(vt.s)),"a"===vt.n?bt.nav="any":"s"===vt.n&&(bt.nav="seq"),["n","p"].includes(vt.n)&&(bt.nav="pic"),""!==vt.p&&(bt.pic=vt.p),""!==vt.a&&(bt.annot=vt.a),""!==vt.c&&(bt.xyz=vt.c),""!==vt.m&&(bt.map=vt.m),""!==vt.d&&(bt.date_from=vt.d),""!==vt.e&&(bt.date_to=vt.e),"f"===vt.t?bt.pic_type="flat":"e"===vt.t&&(bt.pic_type="equirectangular"),""!==vt.k&&(bt.camera=vt.k),"d"===vt.v?bt.theme="default":"a"===vt.v?bt.theme="age":"t"===vt.v?bt.theme="type":"s"===vt.v?bt.theme="score":"g"===vt.v&&(bt.theme="gps"),"s"===vt.b?bt.background="streets":"a"===vt.b&&(bt.background="aerial"),""!==vt.u&&(bt.users=vt.u),""!==vt.q&&(bt.pic_score=vt.q),""!==vt.g&&(bt.gps=vt.g),""!==vt.o&&(bt.overlay=vt.o),""!==vt.l&&(bt.level=vt.l)}return bt}currentMapString(){var vt;if(null===(vt=this._parent.map)||void 0===vt||!vt.loaded)return"";const bt=this._parent.map.getCenter(),le=Math.round(100*this._parent.map.getZoom())/100,ls=Math.ceil((le*Math.LN2+Math.log(512/360/.5))/Math.LN10),ho=Math.pow(10,ls),Dl=Math.round(bt.lng*ho)/ho,Fl=Math.round(bt.lat*ho)/ho,sc=this._parent.map.getBearing(),uc=this._parent.map.getPitch();let mc="".concat(le,"/").concat(Fl,"/").concat(Dl);return(sc||uc)&&(mc+="/".concat(Math.round(10*sc)/10)),uc&&(mc+="/".concat(Math.round(uc))),mc}currentPSVString(){const vt=this._parent.psv.getXYZ(),bt=vt.x.toFixed(2),le=vt.y.toFixed(2),ls=Math.round(vt.z||0);return"".concat(bt,"/").concat(le,"/").concat(ls)}_onURLChange(){let vt=this.currentURLParams();"Viewer"===this._parent.getClassName()?(0,ls.iz)(this._parent,vt):(0,ls.ai)(this._parent,vt),(0,ls.Vy)(this._parent.psv,vt),this._parent.map&&(0,ls.mK)(this._parent.map,vt)}nextShortLink(vt){const bt=new URL(vt),le=this.nextURLParams(),ls={f:(le.focus||"").substring(0,1),s:isNaN(parseInt(le.speed))?void 0:Math.floor(parseInt(le.speed)/100),n:(le.nav||"").substring(0,1),p:le.pic,c:le.xyz,m:le.map,d:le.date_from,e:le.date_to,t:(le.pic_type||"").substring(0,1),k:le.camera,v:(le.theme||"").substring(0,1),b:(le.background||"").substring(0,1),u:le.users,q:le.pic_score,a:le.annot,g:le.gps,o:le.overlay,l:le.level},ho=Object.entries(ls).filter((vt=>{let[,bt]=vt;return void 0!=bt&&""!=bt})).map((vt=>{let[bt,le]=vt;return"".concat(bt).concat(le)})).join(";");return bt.search="s=".concat(ho),bt}getUnmanagedParameters(vt){return new URLSearchParams(Array.from(vt.searchParams).filter((vt=>{let[bt]=vt;return!ho.includes(bt)}))).toString()}_onParentChange(){this._delay&&(clearTimeout(this._delay),this._delay=null),this._delay=setTimeout((()=>{var vt,bt,le;const ls=new URL(window.location.href),ho=new URL(window.location.href),Dl=this.getUnmanagedParameters(ls);if(ho.search=this._parent?this.nextURLString()+(Dl.length>0?"&"+Dl:""):"",Object.keys(this.currentURLParams(!0)).length>0&&(ho.hash=""),ls.search==ho.search)return;const Fl=this.currentURLParams().pic||"",sc=(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt||null===(le=bt.getPictureId)||void 0===le?void 0:le.call(bt))||"";try{if(Fl!=sc?window.history.pushState(window.history.state,null,ho.href):window.history.replaceState(window.history.state,null,ho.href),this._parent){const vt=new CustomEvent("url-changed",{detail:{url:ho.href}});this.dispatchEvent(vt)}}catch(uc){}}),500)}}},3606:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{forwardGeocodingBAN:()=>forwardGeocodingBAN,forwardGeocodingNominatim:()=>forwardGeocodingNominatim,forwardGeocodingStandard:()=>forwardGeocodingStandard,reverseGeocodingNominatim:()=>reverseGeocodingNominatim});var ls=le(7208);const ho={house:20,housenumber:20,street:18,locality:15,district:13,municipality:12,city:12,county:8,region:7,state:7,country:5};function geocoderParamsToURLString(vt){let bt={};return Object.entries(vt).filter((vt=>void 0!==vt[1]&&null!==vt[1])).forEach((vt=>bt[vt[0]]=vt[1])),new URLSearchParams(bt).toString()}function forwardGeocodingNominatim(vt){const bt={q:vt.query,countrycodes:vt.countries,limit:vt.limit,viewbox:vt.bbox};return fetch("".concat((0,ls.NominatimBaseUrl)(),"/search?").concat(geocoderParamsToURLString(bt),"&format=geocodejson&addressdetails=1")).then((vt=>vt.json())).then((vt=>{const bt={features:[]},le=[];return(vt.features||[]).forEach((vt=>{var ls,Dl,Fl;const sc=geocodeJsonToPlaceName(null===(ls=vt.properties)||void 0===ls?void 0:ls.geocoding)||(null===(Dl=vt.properties)||void 0===Dl||null===(Fl=Dl.geocoding)||void 0===Fl?void 0:Fl.label);var uc,mc;le.includes(sc)||(bt.features.push({place_type:["place"],place_name:sc,center:vt.geometry.coordinates,zoom:ho[null===(uc=vt.properties)||void 0===uc||null===(mc=uc.geocoding)||void 0===mc?void 0:mc.type]}),le.push(sc))})),bt}))}function reverseGeocodingNominatim(vt,bt){return fetch("".concat((0,ls.NominatimBaseUrl)(),"/reverse?lat=").concat(vt,"&lon=").concat(bt,"&zoom=18&format=geocodejson")).then((vt=>vt.json())).then((vt=>{var bt,le,ls;return geocodeJsonToPlaceName(null===vt||void 0===vt||null===(bt=vt.features)||void 0===bt||null===(le=bt.shift())||void 0===le||null===(ls=le.properties)||void 0===ls?void 0:ls.geocoding)}))}function forwardGeocodingBAN(vt){return forwardGeocodingStandard(vt,(0,ls.AdresseDataGouvBaseURL)())}function geocodeJsonToPlaceName(vt){if(!vt||"object"!=typeof vt)return"";let bt=vt.name,le=[],ls=[];switch(vt.type){case"hamlet":case"croft":case"isolated_dwelling":case"neighbourhood":case"allotments":case"quarter":case"farm":case"farmyard":case"industrial":case"commercial":case"retail":case"city_block":case"residential":case"locality":case"district":ls.push(vt.city),ls.push(vt.county),ls.push(vt.state),ls.push(vt.country);break;case"city":case"region":ls.push(vt.county),ls.push(vt.state),ls.push(vt.country);break;case"country":break;case"house":case"housenumber":le.push(vt.housenumber),le.push(vt.street),le.push(vt.locality),le.push(vt.district),ls.push(vt.city),ls.push(vt.county),ls.push(vt.state),ls.push(vt.country);break;default:le.push(vt.street),le.push(vt.locality),le.push(vt.district),ls.push(vt.city),ls.push(vt.county),ls.push(vt.state),ls.push(vt.country)}return le=le.filter((vt=>vt)),le=le.filter(((vt,ls)=>vt!=bt&&(0===ls||le[ls-1]!==vt))),le=le.length>0?vt.housenumber?le.slice(0,2).join(" "):le.shift():null,le===bt&&(le=null),ls=ls.filter((vt=>vt)),ls=ls.filter(((vt,ho)=>vt!=bt&&(!le||!le.includes(vt))&&(0===ho||ls[ho-1]!==vt))),[bt,le,ls.shift()].filter((vt=>vt)).join(", ")}function forwardGeocodingStandard(vt,bt){const le={q:vt.query,limit:vt.limit};if("string"===typeof vt.proximity){const[bt,ls]=vt.proximity.split(",").map((vt=>parseFloat(vt.trim())));le.lat=bt,le.lon=ls}return fetch("".concat(bt,"/?").concat(geocoderParamsToURLString(le))).then((vt=>vt.json())).then((vt=>{const bt={features:[]},le=[];return(vt.features||[]).forEach((vt=>{const ls=geocodeJsonToPlaceName(vt.properties);le.includes(ls)||"other"==vt.properties.type||(bt.features.push({place_type:["place"],place_name:ls,center:vt.geometry.coordinates,zoom:ho[vt.properties.type]}),le.push(ls))})),bt}))}},4964:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{autoDetectLocale:()=>autoDetectLocale,getBestLabel:()=>getBestLabel,getTranslations:()=>getTranslations});var ls=le(3087),ho=le(4149),Dl=le(369),Fl=le(389),sc=le(9946),uc=le(8302),mc=le(5222),gc=le(6909),Ac=le(4895),Ec=le(3979),kc=le(6920),du=le(9026),_u=le(8010),Md=le(6611),Ld=le(991),Nd=le(7304),Rd=le(8230),Od=le(6984);const jd="en",Ud={be:ls,da:ho,de:Dl,eo:sc,en:Fl,es:uc,fr:mc,hu:gc,it:Ac,ja:Ec,nl:kc,pl:du,pt:_u,"pt-br":Md,sv:Ld,tr:Nd,uk:Rd,"zh-hant":Od,zh:Od};function autoDetectLocale(vt,bt){vt=vt.map((vt=>vt.toLowerCase()));for(const le of window.navigator.languages){let bt=le.toLowerCase();switch(bt){case"zh-tw":case"zh-hk":case"zh-mo":bt="zh-hant";break;case"zh-cn":case"zh-sg":bt="zh-hans";break;default:bt.length>2&&!vt.includes(bt)&&(bt=le.substring(0,2))}const ls=vt.find((vt=>vt===bt));if(ls)return ls}return bt}function getTranslations(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const bt=JSON.parse(JSON.stringify(Fl));let le;if(vt||(vt=autoDetectLocale(Object.keys(Ud),jd)),Ud[vt]&&"en"!==vt&&(le=Ud[vt]),vt.length>2){const bt=vt.substring(0,2);Ud[bt]&&(le=Ud[bt])}return le&&Object.entries(le).forEach((vt=>{let[le,ls]=vt;Object.entries(ls).forEach((vt=>{let[ls,ho]=vt;Array.isArray(ho)&&(ho=ho.filter((vt=>null!=vt))),bt[le][ls]=ho}))})),bt.PREF_LANG=vt,bt}function getBestLabel(vt,bt){return bt=bt?bt.toLowerCase():null,vt=Object.fromEntries(Object.entries(vt).map((vt=>{let[bt,le]=vt;return[bt.toLowerCase(),le]}))),bt||(bt=autoDetectLocale(Object.keys(vt),jd)),vt[bt]?vt[bt]:bt.length>2&&vt[bt.substring(0,2)]?vt[bt.substring(0,2)]:vt[jd]||""}},2030:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{API:()=>Ec.A,InitParameters:()=>kc.Ay,MapStyleComposer:()=>du.A,PhotoAdapter:()=>_u.A,PresetsManager:()=>Md.A,URLHandler:()=>Ld.A,geocoder:()=>ls,i18n:()=>ho,indoor:()=>Dl,map:()=>Fl,picture:()=>sc,semantics:()=>uc,services:()=>mc,utils:()=>gc,widgets:()=>Ac});var ls=le(3606),ho=le(4964),Dl=le(5195),Fl=le(8340),sc=le(508),uc=le(2283),mc=le(7208),gc=le(7343),Ac=le(5995),Ec=le(5254),kc=le(2118),du=le(4997),_u=le(3727),Md=le(4207),Ld=le(4451)},5195:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{DISABLED_LEVEL:()=>Dl,initIndoorEqualOnMap:()=>initIndoorEqualOnMap,isIndoorEqualAvailable:()=>isIndoorEqualAvailable});var ls=le(7208),ho=le(5995);const Dl="-1000",Fl="levels";function isIndoorEqualAvailable(){try{return IndoorEqual,!0}catch(vt){return!1}}function initIndoorEqualOnMap(vt){let bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(vt._options.indoor)if(isIndoorEqualAvailable()){if(!bt&&!1===vt._options.indoor.visible)return;vt.indoorEqual=new IndoorEqual(vt,vt._options.indoor),vt.addControl(vt.indoorEqual),vt.indoorEqual.loadSprite((0,ls.IndoorEqualSpritesURL)()),vt.indoorEqual._refreshAfterLevelsUpdate=function(){this.levels.includes(this.level)||this.level==Dl||this.setLevel("0")};const le="sem-"+Fl;vt.indoorEqual._updateLevels=function(){if(this.map.isSourceLoaded(this.source.sourceId)&&this.map.isSourceLoaded(le)){let vt=new Set;this.map.querySourceFeatures(this.source.sourceId,{sourceLayer:"area"}).forEach((bt=>{"level"!==bt.properties.class&&void 0!==bt.properties.level&&vt.add(bt.properties.level.toString())})),this.map.querySourceFeatures(le,{sourceLayer:"layer"}).forEach((bt=>{void 0!==bt.properties["osm|level"]&&vt.add(bt.properties["osm|level"].toString())})),vt.size>0&&vt.add("0"),0!==vt.symmetricDifference(new Set(this.levels)).size&&(this.levels=[...vt].sort(((vt,bt)=>parseFloat(vt)-parseFloat(bt))).reverse(),this._emitLevelsChange(),this._refreshAfterLevelsUpdate())}},vt._indoorFeaturesIDs={pictures:{},sequences:{}},vt.on("sourcedata",Fl,(bt=>{bt.sourceId===le&&(bt.features.forEach((bt=>{vt._indoorFeaturesIDs.pictures[bt.properties["osm|level"]]||(vt._indoorFeaturesIDs.pictures[bt.properties["osm|level"]]=new Set),vt._indoorFeaturesIDs.sequences[bt.properties["osm|level"]]||(vt._indoorFeaturesIDs.sequences[bt.properties["osm|level"]]=new Set),vt._indoorFeaturesIDs.pictures[bt.properties["osm|level"]].add(bt.properties.picid),vt._indoorFeaturesIDs.sequences[bt.properties["osm|level"]].add(bt.properties.seqid)})),updateIndoorLevelFilteringThrottled())}));const postMapLoad=()=>{var le,ls,ho,sc,uc;if(null===(le=vt.addSemanticOverlay)||void 0===le||le.call(vt,Fl,'"semantics.osm|level" IS NOT NULL',{type:"circle",layout:{visibility:"visible"},paint:{"circle-opacity":0}}),bt&&(null===(ls=vt._parent._initParams)||void 0===ls||null===(ho=ls.getMapPostInit())||void 0===ho?void 0:ho.level)===Dl)vt.indoorEqual.setLevel("0");else if(![null,void 0,""].includes(null===(sc=vt._parent._initParams)||void 0===sc||null===(uc=sc.getMapPostInit())||void 0===uc?void 0:uc.level)){var mc,gc;vt.indoorEqual.setLevel(null===(mc=vt._parent._initParams)||void 0===mc||null===(gc=mc.getMapPostInit())||void 0===gc?void 0:gc.level)}};if(vt.isStyleLoaded())postMapLoad();else{const bt=setInterval((()=>{vt.isStyleLoaded()&&(postMapLoad(),clearInterval(bt))}),250)}let sc;vt._parent.grid.appendChild((0,ho.createWebComp)("pnx-level-select",{slot:"bottom-right",_parent:vt._parent,class:"pnx-only-map pnx-print-hidden"}));const updateIndoorLevelFiltering=()=>{if(vt.indoorEqual.level===Dl)vt.restrictVisibleFeatures("hide","pictures",[]),vt.restrictVisibleFeatures("hide","sequences",[]);else if("0"===vt.indoorEqual.level){const bt=new Set;Object.entries(vt._indoorFeaturesIDs.pictures).forEach((vt=>{let[le,ls]=vt;"0"!=le&&ls.forEach((vt=>bt.add(vt)))})),vt.restrictVisibleFeatures("hide","pictures",[...bt]);let le=new Set;Object.entries(vt._indoorFeaturesIDs.sequences).forEach((vt=>{let[bt,ls]=vt;"0"!=bt&&(le=le.union(ls))})),vt._indoorFeaturesIDs.sequences[0]&&(le=le.difference(vt._indoorFeaturesIDs.sequences[0])),vt.restrictVisibleFeatures("hide","sequences",[...le])}else vt.restrictVisibleFeatures("keep","pictures",vt._indoorFeaturesIDs.pictures[vt.indoorEqual.level]?[...vt._indoorFeaturesIDs.pictures[vt.indoorEqual.level]]:[]),vt.restrictVisibleFeatures("keep","sequences",vt._indoorFeaturesIDs.sequences[vt.indoorEqual.level]?[...vt._indoorFeaturesIDs.sequences[vt.indoorEqual.level]]:[])},updateIndoorLevelFilteringThrottled=()=>{sc&&(clearTimeout(sc),sc=void 0),sc=setTimeout(updateIndoorLevelFiltering,250)};vt.indoorEqual.on("levelchange",updateIndoorLevelFilteringThrottled)}else console.error("The indoor= plugin is not enabled. Please add the maplibre-gl-indoorequal before calling 'indoor' option of Panoramax Viewer.")}},8340:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{MAP_EXPR_QUALITYSCORE:()=>_u,MAP_EXPR_QUALITYSCORE_GPS:()=>du,MAP_THEMES_STYLES:()=>jd,RASTER_LAYER_ID:()=>Fl,TILES_PICTURES_SYMBOL_ZOOM:()=>uc,TILES_PICTURES_ZOOM:()=>sc,VECTOR_STYLES:()=>Ac,VECTOR_STYLES_NOCROWD:()=>Ec,getMapParamsFromLocalStorage:()=>getMapParamsFromLocalStorage,getPanoramaxLayers:()=>getPanoramaxLayers,getThumbGif:()=>getThumbGif,hasStyleLoggedGridStats:()=>hasStyleLoggedGridStats,initMapKeyboardHandler:()=>initMapKeyboardHandler,isLabelLayer:()=>isLabelLayer,isNullCoordinates:()=>isNullCoordinates,isPanoramaxEndpointSingleUser:()=>isPanoramaxEndpointSingleUser,linkMapAndPhoto:()=>linkMapAndPhoto,mapFiltersFormValues:()=>mapFiltersFormValues,mapFiltersToLayersFilters:()=>mapFiltersToLayersFilters,saveMapParamsToLocalStorage:()=>saveMapParamsToLocalStorage,switchCoefValue:()=>switchCoefValue});var ls=le(9379),ho=le(6883),Dl=le(7343);const Fl="pnx-aerial",sc=15,uc=19,mc=["!",["has","uncrowded"]],gc=["==",["get","type"],"equirectangular"];function getVectorStyles(vt){return{PICTURES:{paint:{"circle-radius":["interpolate",["linear"],["zoom"],sc,0,sc+.5,vt?1:["case",mc,0,1],sc+1.5,vt?2:["case",mc,0,2],sc+2,vt?4:["case",mc,1,4],sc+3,vt?5:["case",mc,3,5],sc+5,vt?7:["case",mc,5,7],sc+7,vt?7:["case",mc,7,7]],"circle-opacity":["interpolate",["linear"],["zoom"],sc,0,sc+.5,vt?1:["case",mc,0,1],sc+1.5,vt?1:["case",mc,0,1],sc+2,1],"circle-stroke-opacity":["case",["all",mc,gc],.2,gc,.4,0],"circle-stroke-width":["interpolate",["linear"],["zoom"],sc+2.5,0,sc+3.5,vt?["case",gc,10,2]:["case",["all",mc,gc],0,gc,10,mc,0,2],sc+4.5,vt?["case",gc,10,2]:["case",["all",mc,gc],10,gc,10,mc,0,2]]},layout:{}},SEQUENCES:{paint:{"line-width":["interpolate",["linear"],["zoom"],0,.5,10,1.5,sc-.5,1.5,sc+.5,vt?2:["case",mc,.5,2],22,vt?4:["case",mc,1,4]]},layout:{"line-cap":"square"}},SEQUENCES_PLUS:{paint:{"line-width":["interpolate",["linear"],["zoom"],0,15,sc+1,30],"line-opacity":0,"line-color":"#ff0000"},layout:{"line-cap":"square"}},GRID:{layout:{"circle-sort-key":["get","coef"]},paint:{"circle-color":["interpolate",["linear"],["get","coef"],0,"#FFA726",.5,"#E65100",1,"#3E2723"],"circle-opacity":["interpolate",["linear"],["zoom"],4,.5,5,1,6.75,1,7,0],"circle-radius":["interpolate",["linear"],["zoom"],1,["match",["get","coef"],0,0,1],5,["match",["get","coef"],0,0,2.5],7,["match",["get","coef"],0,0,7]]}}}}const Ac=getVectorStyles(!1),Ec=getVectorStyles(!0),kc=["case",["==",["get","type"],"equirectangular"],["case",["has","h_pixel_density"],["step",["get","h_pixel_density"],...Dl.QUALITYSCORE_RES_360_VALUES],1],["case",["has","h_pixel_density"],["step",["get","h_pixel_density"],...Dl.QUALITYSCORE_RES_FLAT_VALUES],1]],du=["case",["has","gps_accuracy"],["step",["get","gps_accuracy"],...Dl.QUALITYSCORE_GPS_VALUES],1],_u=["round",["+",["*",kc,Dl.QUALITYSCORE_POND_RES],["*",du,Dl.QUALITYSCORE_POND_GPS]]],Md=864e5,toDate=vt=>new Date(vt).toISOString().split("T")[0],Ld=Date.now(),Nd=toDate(Ld-30*Md),Rd=toDate(Ld-365*Md),Od=toDate(Ld-730*Md),jd={default:{id:"default",sort:[],color:[Dl.COLORS.BASE]},age:{id:"age",sort:[["!",["any",["has","date"],["has","ts"]]],0,[">=",["coalesce",["get","date"],["get","ts"]],Nd],50,[">=",["coalesce",["get","date"],["get","ts"]],Rd],49,[">=",["coalesce",["get","date"],["get","ts"]],Od],48],color:[["!",["any",["has","date"],["has","ts"]]],Dl.COLORS.BASE,[">=",["coalesce",["get","date"],["get","ts"]],Nd],Dl.COLORS.PALETTE_4,[">=",["coalesce",["get","date"],["get","ts"]],Rd],Dl.COLORS.PALETTE_3,[">=",["coalesce",["get","date"],["get","ts"]],Od],Dl.COLORS.PALETTE_2,Dl.COLORS.PALETTE_1]},type:{id:"type",sort:[["!",["has","type"]],0,["==",["get","type"],"equirectangular"],50],color:[["!",["has","type"]],Dl.COLORS.BASE,["==",["get","type"],"equirectangular"],Dl.COLORS.QUALI_1,Dl.COLORS.QUALI_2]},score:{id:"score",sort:[["==",_u,5],80,["==",_u,4],65,["==",_u,3],50,["==",_u,2],35,["==",_u,1],20],color:[["==",_u,5],Dl.QUALITYSCORE_VALUES[0].color,["==",_u,4],Dl.QUALITYSCORE_VALUES[1].color,["==",_u,3],Dl.QUALITYSCORE_VALUES[2].color,["==",_u,2],Dl.QUALITYSCORE_VALUES[3].color,Dl.QUALITYSCORE_VALUES[4].color]},gps:{id:"gps",sort:[["==",du,5],80,["==",du,4],65,["==",du,3],50,["==",du,2],35,["==",du,1],20],color:[["==",du,5],Dl.GPS_VALUES[0].color,["==",du,4],Dl.GPS_VALUES[1].color,["==",du,3],Dl.GPS_VALUES[2].color,["==",du,2],Dl.GPS_VALUES[3].color,Dl.GPS_VALUES[4].color]}};function getThumbGif(vt){const bt=document.createElement("img");return bt.src=ho,bt.alt=vt.loading,bt.title=vt.loading,bt.classList.add("pnx-map-thumb","pnx-map-thumb-loader"),bt}function isNullCoordinates(vt){return null===vt||void 0===vt||Array.isArray(vt)&&(2===vt.length&&0===vt[0]&&0===vt[1]||vt.length<2)}function isLabelLayer(vt){var bt;return"symbol"===vt.type&&void 0!==(null===vt||void 0===vt||null===(bt=vt.layout)||void 0===bt?void 0:bt["text-field"])&&(void 0===vt.minzoom||vt.minzoom<15)}function hasStyleLoggedGridStats(vt){var bt,le,ls,ho;const Dl=(null===vt||void 0===vt||null===(bt=vt.metadata)||void 0===bt?void 0:bt["panoramax:fields"])||{};return(null===Dl||void 0===Dl||null===(le=Dl.grid)||void 0===le?void 0:le.includes("logged_coef_360_pictures"))&&(null===Dl||void 0===Dl||null===(ls=Dl.grid)||void 0===ls?void 0:ls.includes("logged_coef_flat_pictures"))&&(null===Dl||void 0===Dl||null===(ho=Dl.grid)||void 0===ho?void 0:ho.includes("logged_coef"))||!1}function getPanoramaxLayers(vt){var bt,le;const ho=Object.keys(vt.sources)[0],Fl="vector"===vt.sources[ho].type,sc=Fl?Ac:Ec,uc=[{id:"".concat(ho,"_sequences"),type:"line",source:ho,"source-layer":Fl?"sequences":void 0,layout:(0,ls.A)({},sc.SEQUENCES.layout),paint:(0,ls.A)((0,ls.A)({},sc.SEQUENCES.paint),{},{"line-color":Dl.COLORS.BASE})},{id:"".concat(ho,"_sequences_plus"),type:"line",source:ho,"source-layer":Fl?"sequences":void 0,layout:(0,ls.A)({},sc.SEQUENCES_PLUS.layout),paint:(0,ls.A)({},sc.SEQUENCES_PLUS.paint)},{id:"".concat(ho,"_pictures"),type:"circle",source:ho,"source-layer":Fl?"pictures":void 0,layout:(0,ls.A)({},sc.PICTURES.layout),paint:(0,ls.A)((0,ls.A)({},sc.PICTURES.paint),{},{"circle-color":Dl.COLORS.BASE})}];return null!==vt&&void 0!==vt&&null!==(bt=vt.metadata)&&void 0!==bt&&null!==(le=bt["panoramax:fields"])&&void 0!==le&&le.grid&&uc.push({id:"".concat(ho,"_grid"),type:"circle",source:ho,"source-layer":"grid",layout:(0,ls.A)({},sc.GRID.layout),paint:(0,ls.A)({},sc.GRID.paint)}),uc}function mapFiltersFormValues(vt,bt,le){const ls=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-filter-date-from"),ho=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-filter-date-end"),Dl=null===vt||void 0===vt?void 0:vt.shadowRoot.querySelectorAll("input[name='pnx-filter-type']"),Fl=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-pictures-source");let sc="";for(let gc=0;gc<Dl.length;gc++){const vt=Dl[gc];if(vt.checked){sc=vt.value;break}}let uc=[],mc=[];if(le){const bt=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-filter-qualityscore");uc=((null===bt||void 0===bt?void 0:bt.grade)||"").split(",").map((vt=>parseInt(vt))).filter((vt=>!isNaN(vt)));const le=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-filter-gps");mc=((null===le||void 0===le?void 0:le.grade)||"").split(",").map((vt=>parseInt(vt))).filter((vt=>!isNaN(vt)))}return{minDate:null===ls||void 0===ls?void 0:ls.value,maxDate:null===ho||void 0===ho?void 0:ho.value,pic_type:sc,theme:null===bt||void 0===bt?void 0:bt.value,qualityscore:uc,gps:mc,source:null!==Fl&&void 0!==Fl&&Fl.checked?"local":"metacatalog"}}function mapFiltersToLayersFilters(vt){var bt,le;let ls=arguments.length>1&&void 0!==arguments[1]&&arguments[1],ho=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,Dl={},Fl=[],uc=[],mc=!1;if(vt.minDate&&""!==vt.minDate&&(Dl.minDate=vt.minDate,Fl.push([">=",["get","date"],vt.minDate]),uc.push([">=",["get","ts"],vt.minDate])),vt.maxDate&&""!==vt.maxDate){Dl.maxDate=vt.maxDate,Fl.push(["<=",["get","date"],vt.maxDate]);let bt=new Date(vt.maxDate);bt.setDate(bt.getDate()+1),bt=bt.toISOString().split("T")[0],uc.push(["<=",["get","ts"],bt])}if(vt.pic_type&&""!==vt.pic_type&&(Dl.pic_type="flat"===vt.pic_type?"flat":"equirectangular",Fl.push(["==",["get","type"],Dl.pic_type]),uc.push(["==",["get","type"],Dl.pic_type])),ls&&(mc=!0),vt.camera&&""!==vt.camera){Dl.camera=vt.camera;const bt=vt.camera.toLowerCase().trim()+" ",le=vt.camera.toLowerCase().trim()+"zzzzzzzzzzzzzzzzzzzz",ls=["collator",{"case-sensitive":!1,"diacritic-sensitive":!1}];Fl.push([">=",["get","model"],bt,ls]),Fl.push(["<=",["get","model"],le,ls]),uc.push([">=",["get","model"],bt,ls]),uc.push(["<=",["get","model"],le,ls])}return vt.qualityscore&&vt.qualityscore.length>0&&(Dl.qualityscore=vt.qualityscore,Fl.push(["in",_u,["literal",Dl.qualityscore]]),uc.push(["in",_u,["literal",Dl.qualityscore]])),vt.gps&&vt.gps.length>0&&(Dl.gps=vt.gps,Fl.push(["in",du,["literal",Dl.gps]]),uc.push(["in",du,["literal",Dl.gps]])),vt.theme&&jd[vt.theme]&&(Dl.theme=vt.theme,mc=!0),null!==ho&&void 0!==ho&&ho.pictures&&(null===(bt=ho.pictures.features)||void 0===bt?void 0:bt.length)>=0&&("keep"===ho.pictures.rule?uc.push(["in",["get","id"],["literal",ho.pictures.features]]):ho.pictures.features.length>0&&uc.push(["!",["in",["get","id"],["literal",ho.pictures.features]]])),null!==ho&&void 0!==ho&&ho.sequences&&(null===(le=ho.sequences.features)||void 0===le?void 0:le.length)>=0&&("keep"===ho.sequences.rule?Fl.push(["in",["get","id"],["literal",ho.sequences.features]]):ho.sequences.features.length>0&&Fl.push(["!",["in",["get","id"],["literal",ho.sequences.features]]])),0==Fl.length?Fl=null:Fl.unshift("all"),0==uc.length?uc=null:(uc.unshift("all"),uc=["step",["zoom"],!0,sc,uc]),{mapFilters:Dl,mapSeqFilters:Fl,mapPicFilters:uc,reloadMapStyle:mc}}function isPanoramaxEndpointSingleUser(vt){return!["default","metacatalog","",null,void 0].includes(vt)}function switchCoefValue(vt,bt){if(Array.isArray(vt))return vt.map((vt=>switchCoefValue(vt,bt)));if("object"===typeof vt&&null!==vt){const le={};for(const ls in vt)le[ls]=switchCoefValue(vt[ls],bt);return le}return"string"===typeof vt&&(vt.startsWith("coef")||vt.startsWith("logged_coef"))?bt:vt}function linkMapAndPhoto(vt){const onPicLoad=bt=>{var le,ls,ho,Fl,sc,uc;(0,Dl.isNullId)(bt.detail.picId)?(vt.map.displayPictureMarker(),null!==vt&&void 0!==vt&&null!==(le=vt.isMapWide)&&void 0!==le&&le.call(vt)&&(null===vt||void 0===vt||null===(ls=vt.mini)||void 0===ls||ls.setAttribute("collapsed",""))):(vt.map.displayPictureMarker(bt.detail.lon,bt.detail.lat,vt.psv.getXY().x,bt.detail.first&&!isNullCoordinates(null===(ho=vt._initParams)||void 0===ho||null===(Fl=ho.getMapPostInit())||void 0===Fl?void 0:Fl.center),bt.detail.picId),null!==vt&&void 0!==vt&&null!==(sc=vt.isMapWide)&&void 0!==sc&&sc.call(vt)&&(null===vt||void 0===vt||null===(uc=vt.mini)||void 0===uc||uc.removeAttribute("collapsed")))};vt.psv.addEventListener("picture-loading",onPicLoad),vt.psv.addEventListener("picture-loaded",onPicLoad),vt.psv.addEventListener("view-rotated",(()=>{let bt=vt.psv.getPosition().yaw*(180/Math.PI);bt+=vt.psv.getPictureOriginalHeading(),vt.map._picMarker.setRotation(bt)})),vt.psv.addEventListener("picture-preview-started",(bt=>{vt.map._picMarkerPreview.setLngLat(bt.detail.coordinates).setRotation(bt.detail.direction||0).addTo(vt.map)})),vt.psv.addEventListener("picture-preview-stopped",(()=>{vt.map._picMarkerPreview.remove()})),vt.psv.addEventListener("picture-loaded",(bt=>{vt.isWidthSmall()&&vt._picPopup&&bt.detail.picId==vt._picPopup._picId&&vt._picPopup.remove()})),vt.map.on("picture-click",(bt=>{vt.select(bt.seqId,bt.picId),!vt.psv._myVTour.state.currentNode&&null!==vt&&void 0!==vt&&vt._setFocus&&vt._setFocus("pic")})),vt.map.on("sequence-click",(bt=>{var le;((null===(le=vt.getAPI)||void 0===le?void 0:le.call(vt))||vt.api).getPicturesAroundCoordinates(bt.coordinates.lat,bt.coordinates.lng,.01,1,bt.seqId).then((bt=>{var le,ls;(null===bt||void 0===bt||null===(le=bt.features)||void 0===le?void 0:le.length)>0&&(vt.select(null===(ls=bt.features[0])||void 0===ls?void 0:ls.collection,bt.features[0].id),!vt.psv.getPictureMetadata()&&null!==vt&&void 0!==vt&&vt._setFocus&&vt._setFocus("pic"))}))})),vt._setFocus&&(vt.psv.addEventListener("dblclick",(()=>{vt.isMapWide()&&vt._setFocus("pic")})),vt.map.on("dblclick",(()=>{vt.isMapWide()?"any"===vt.psv.getPicturesNavigation()&&vt.select():vt._setFocus("map")})))}function initMapKeyboardHandler(vt){vt.map.keyboard.keydown=function(bt){if(bt.altKey||bt.ctrlKey||bt.metaKey)return;switch(bt.key){case"*":case"5":return void vt.moveCenter();case"PageUp":case"9":return void vt.psv.goToNextPicture();case"PageDown":case"3":return void vt.psv.goToPrevPicture();case"Home":case"7":return bt.stopPropagation(),void vt._toggleFocus();case"End":case"1":return void vt.mini.toggleAttribute("collapsed");case" ":case"0":return void vt.psv.toggleSequencePlaying()}let le=0,ls=0,ho=0,Dl=0,Fl=0;switch(bt.keyCode){case 61:case 107:case 171:case 187:le=1;break;case 189:case 109:case 173:le=-1;break;case 37:case 100:bt.shiftKey?ls=-1:(bt.preventDefault(),Dl=-1);break;case 39:case 102:bt.shiftKey?ls=1:(bt.preventDefault(),Dl=1);break;case 38:case 104:bt.shiftKey?ho=1:(bt.preventDefault(),Fl=-1);break;case 40:case 98:bt.shiftKey?ho=-1:(bt.preventDefault(),Fl=1);break;default:return}return this._rotationDisabled&&(ls=0,ho=0),{cameraAnimation:vt=>{const sc=this._tr;vt.easeTo({duration:300,easeId:"keyboardHandler",easing:vt=>vt*(2-vt),zoom:le?Math.round(sc.zoom)+le*(bt.shiftKey?2:1):sc.zoom,bearing:sc.bearing+ls*this._bearingStep,pitch:sc.pitch+ho*this._pitchStep,offset:[-Dl*this._panStep,-Fl*this._panStep],center:sc.center},{originalEvent:bt})}}}.bind(vt.map.keyboard)}const Ud="pnx-map-parameters";function getMapParamsFromLocalStorage(){const vt=localStorage.getItem(Ud);if(!vt)return{};try{return JSON.parse(vt)}catch(bt){return console.warn("Can't read map parameters stored in localStorage",bt),{}}}function saveMapParamsToLocalStorage(vt){const save=()=>localStorage.setItem(Ud,JSON.stringify({center:Object.fromEntries(Object.entries(vt.getCenter()).map((vt=>{let[bt,le]=vt;return[bt,le.toFixed(7)]}))),zoom:vt.getZoom().toFixed(1),background:vt._parent.mapStyleComposer.basemap,theme:vt._parent.mapStyleComposer.panoramaxTheme,endpoint:vt._parent.mapStyleComposer.panoramax}));vt._parent.mapStyleComposer.addEventListener("filters-changed",save),vt._parent.mapStyleComposer.addEventListener("theme-changed",save),vt._parent.mapStyleComposer.addEventListener("basemap-changed",save),vt._parent.mapStyleComposer.addEventListener("panoramax-changed",save),vt.on("moveend",save),vt.on("zoomend",save),vt.on("dragend",save),vt.on("boxzoomend",save)}},508:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{apiFeatureToPSVNode:()=>apiFeatureToPSVNode,filterRelatedPicsLinks:()=>filterRelatedPicsLinks,getCroppedPanoData:()=>getCroppedPanoData,getExifFloat:()=>getExifFloat,getGPSPrecision:()=>getGPSPrecision,getHashTags:()=>getHashTags,getNodeCaption:()=>getNodeCaption,getSphereCorrection:()=>getSphereCorrection,hasAnnotations:()=>hasAnnotations,sortPicturesInDirection:()=>sortPicturesInDirection});var ls=le(8407),ho=le(6830),Dl=le(7343);const Fl=(0,Dl.svgToPSVLink)(ls,"white"),sc=(0,Dl.svgToPSVLink)(ho,Dl.COLORS.NEXT);function getExifFloat(vt){if(!([null,void 0,""].includes(vt)||"string"===typeof vt&&""===vt.trim())){if("number"===typeof vt)return vt;if("string"!==typeof vt);else{if(/^-?\d+(\.\d+)?\/-?\d+(\.\d+)?$/.test(vt)){const bt=vt.split("/").map((vt=>parseFloat(vt)));return bt[0]/bt[1]}try{return parseFloat(vt)}catch(bt){}}}}function getGPSPrecision(vt){var bt,le,ls,ho,Dl;let Fl=null;const sc=(null===vt||void 0===vt||null===(bt=vt.properties)||void 0===bt?void 0:bt["quality:horizontal_accuracy"])||getExifFloat(null===vt||void 0===vt||null===(le=vt.properties)||void 0===le||null===(ls=le.exif)||void 0===ls?void 0:ls["Exif.GPSInfo.GPSHPositioningError"]),uc=getExifFloat(null===vt||void 0===vt||null===(ho=vt.properties)||void 0===ho||null===(Dl=ho.exif)||void 0===Dl?void 0:Dl["Exif.GPSInfo.GPSDOP"]);return void 0!==sc?Fl="".concat(sc," m"):void 0!==uc&&(Fl=uc<1?"ideal":uc<2?"excellent":uc<5?"good":uc<10?"moderate":uc<20?"fair":"poor"),Fl}function getSphereCorrection(vt){var bt,le,ls,ho;let Dl=null===(bt=vt.properties)||void 0===bt?void 0:bt["view:azimuth"];if(void 0===Dl){var Fl,sc;const bt=getExifFloat(null===(Fl=vt.properties)||void 0===Fl||null===(sc=Fl.exif)||void 0===sc?void 0:sc["Exif.GPSInfo.GPSImgDirection"]);void 0!==bt&&(Dl=bt)}Dl=Dl||0;let uc=null===(le=vt.properties)||void 0===le?void 0:le["pers:yaw"],mc=["Xmp.GPano.PoseHeadingDegrees","Xmp.Camera.Yaw","Exif.MpfInfo.MPFYawAngle"];if(void 0===uc)for(let Nd of mc){var gc,Ac;const bt=getExifFloat(null===(gc=vt.properties)||void 0===gc||null===(Ac=gc.exif)||void 0===Ac?void 0:Ac[Nd]);if(void 0!==bt){uc=bt;break}}uc=uc||0,Math.round(Dl)===Math.round(uc)&&uc>0&&console.warn("Picture with UUID",vt.id,"has same GPS Image direction and Yaw, could cause rendering issues");let Ec=null===(ls=vt.properties)||void 0===ls?void 0:ls["pers:pitch"];if(mc=["Xmp.GPano.PosePitchDegrees","Xmp.Camera.Pitch","Exif.MpfInfo.MPFPitchAngle"],void 0===Ec)for(let Nd of mc){var kc,du;const bt=getExifFloat(null===(kc=vt.properties)||void 0===kc||null===(du=kc.exif)||void 0===du?void 0:du[Nd]);if(void 0!==bt){Ec=bt;break}}Ec=Ec||0;let _u=null===(ho=vt.properties)||void 0===ho?void 0:ho["pers:roll"];if(mc=["Xmp.GPano.PoseRollDegrees","Xmp.Camera.Roll","Exif.MpfInfo.MPFRollAngle"],void 0===_u)for(let Nd of mc){var Md,Ld;const bt=getExifFloat(null===(Md=vt.properties)||void 0===Md||null===(Ld=Md.exif)||void 0===Ld?void 0:Ld[Nd]);if(void 0!==bt){_u=bt;break}}return _u=_u||0,0!==Ec&&0!==_u?{pan:uc*Math.PI/180,tilt:-Ec*Math.PI/180,roll:_u*Math.PI/180}:{}}function getCroppedPanoData(vt,bt){var le,ls,ho;let Dl;var Fl,sc;if(null!==(le=vt.properties)&&void 0!==le&&le["pers:interior_orientation"]&&(null!==(Fl=vt.properties["pers:interior_orientation"])&&void 0!==Fl&&Fl.visible_area&&null!==(sc=vt.properties["pers:interior_orientation"])&&void 0!==sc&&sc.sensor_array_dimensions)){const bt=vt.properties["pers:interior_orientation"].visible_area,le=vt.properties["pers:interior_orientation"].sensor_array_dimensions;try{Dl={fullWidth:parseInt(le[0]),fullHeight:parseInt(le[1]),croppedX:parseInt(bt[0]),croppedY:parseInt(bt[1]),croppedWidth:parseInt(le[0])-parseInt(bt[2])-parseInt(bt[0]),croppedHeight:parseInt(le[1])-parseInt(bt[3])-parseInt(bt[1])}}catch(_u){console.warn("Invalid pers:interior_orientation values for cropped panorama "+vt.id)}}if(!Dl&&null!==(ls=vt.properties)&&void 0!==ls&&ls.exif)try{var uc,mc,gc,Ac,Ec,kc;Dl={fullWidth:parseInt(null===(uc=vt.properties.exif)||void 0===uc?void 0:uc["Xmp.GPano.FullPanoWidthPixels"]),fullHeight:parseInt(null===(mc=vt.properties.exif)||void 0===mc?void 0:mc["Xmp.GPano.FullPanoHeightPixels"]),croppedX:parseInt(null===(gc=vt.properties.exif)||void 0===gc?void 0:gc["Xmp.GPano.CroppedAreaLeftPixels"]),croppedY:parseInt(null===(Ac=vt.properties.exif)||void 0===Ac?void 0:Ac["Xmp.GPano.CroppedAreaTopPixels"]),croppedWidth:parseInt(null===(Ec=vt.properties.exif)||void 0===Ec?void 0:Ec["Xmp.GPano.CroppedAreaImageWidthPixels"]),croppedHeight:parseInt(null===(kc=vt.properties.exif)||void 0===kc?void 0:kc["Xmp.GPano.CroppedAreaImageHeightPixels"])},Dl.croppedWidth>Dl.fullWidth&&(Dl.fullWidth=Dl.croppedWidth),Dl.croppedHeight>Dl.fullHeight&&(Dl.fullHeight=Dl.croppedHeight)}catch(_u){console.warn("Invalid XMP.GPano values for cropped panorama "+vt.id)}if(Dl&&(Dl=Object.fromEntries(Object.entries(Dl||{}).filter((vt=>!isNaN(vt[1])))),(!Dl.fullWidth&&!Dl.croppedWidth&&Dl.fullHeight&&!Dl.croppedHeight||Dl.fullWidth&&!Dl.croppedWidth&&!Dl.fullHeight&&!Dl.croppedHeight||Dl.fullWidth&&!Dl.croppedWidth&&Dl.fullHeight&&!Dl.croppedHeight||Dl.fullWidth==Dl.croppedWidth&&Dl.fullHeight==Dl.croppedHeight)&&(Dl={})),null!==(ho=Dl)&&void 0!==ho&&ho.fullWidth&&null!==bt&&void 0!==bt&&bt.width){var du;let vt=bt.width/((null===(du=Dl)||void 0===du?void 0:du.croppedWidth)||Dl.fullWidth);Dl={fullWidth:void 0!==Dl.fullWidth?Math.floor(Dl.fullWidth*vt):void 0,fullHeight:void 0!==Dl.fullHeight?Math.floor(Dl.fullHeight*vt):void 0,croppedWidth:void 0!==Dl.croppedWidth?Math.floor(Dl.croppedWidth*vt):void 0,croppedHeight:void 0!==Dl.croppedHeight?Math.floor(Dl.croppedHeight*vt):void 0,croppedX:void 0!==Dl.croppedX?Math.floor(Dl.croppedX*vt):void 0,croppedY:void 0!==Dl.croppedY?Math.floor(Dl.croppedY*vt):void 0}}return Dl||{}}function sortPicturesInDirection(vt){return(bt,le)=>"related"!=bt.rel&&"related"!=le.rel?0:"related"!=bt.rel?-1:"related"!=le.rel?1:bt.date==le.date?(0,Dl.getDistance)(vt,bt.geometry.coordinates)-(0,Dl.getDistance)(vt,le.geometry.coordinates):le.date.localeCompare(bt.date)}function getNodeCaption(vt,bt){var le,ls,ho;const Dl={};if(null!==vt&&void 0!==vt&&null!==(le=vt.properties)&&void 0!==le&&le.datetimetz){Dl.date=new Date(vt.properties.datetimetz);const bt=vt.properties.datetimetz.match(/([+-]\d{2}):(\d{2})$|Z$/);bt&&("Z"===bt[0]?Dl.tz="UTC":Dl.tz=bt[0])}else null!==vt&&void 0!==vt&&null!==(ls=vt.properties)&&void 0!==ls&&ls.datetime&&(Dl.date=new Date(vt.properties.datetime));if(null!==vt&&void 0!==vt&&vt.providers){var Fl;const bt=null===vt||void 0===vt||null===(Fl=vt.providers)||void 0===Fl?void 0:Fl.filter((vt=>{var bt;return null===vt||void 0===vt||null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("producer")}));if((null===bt||void 0===bt?void 0:bt.length)>=0){const vt={};bt.map((vt=>vt.name)).forEach((bt=>{const le=bt.toLowerCase().replace(/\s/g,"");vt[le]?vt[le].push(bt):vt[le]=[bt]})),Dl.producer=[],Object.values(vt).forEach((vt=>{const bt=vt[0],le=vt.find((vt=>vt.toLowerCase()!=vt));Dl.producer.push(le||bt)}))}}if(null!==vt&&void 0!==vt&&null!==(ho=vt.properties)&&void 0!==ho&&ho.license&&(Dl.license=vt.properties.license,null!==vt&&void 0!==vt&&vt.links)){const le=vt.links.find((vt=>"license"===(null===vt||void 0===vt?void 0:vt.rel)));le&&(Dl.license='<a href="'.concat(le.href,'" title="').concat(bt.pnx.metadata_general_license_link,'" target="_blank">').concat(Dl.license,"</a>"))}return Dl}function apiFeatureToPSVNode(vt,bt){var le,ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc,du,_u,Md,Ld;let Nd=arguments.length>2&&void 0!==arguments[2]&&arguments[2],Rd=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,Od=arguments.length>4&&void 0!==arguments[4]?arguments[4]:vt=>vt;const jd=null!=(null===(le=vt.properties)||void 0===le||null===(ls=le["pers:interior_orientation"])||void 0===ls?void 0:ls.field_of_view);let Ud=jd?parseInt(vt.properties["pers:interior_orientation"].field_of_view):70;const Gd=360===Ud,qd=Od((Object.values(vt.assets).find((vt=>{var bt;return null===vt||void 0===vt||null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("data")}))||{}).href),Hd=null===vt||void 0===vt||null===(ho=vt.properties)||void 0===ho||null===(Dl=ho["tiles:tile_matrix_sets"])||void 0===Dl?void 0:Dl.geovisio,Wd=null===(Fl=vt.links)||void 0===Fl||null===(sc=Fl.find)||void 0===sc?void 0:sc.call(Fl,(vt=>"prev"===(null===vt||void 0===vt?void 0:vt.rel)&&"application/geo+json"===(null===vt||void 0===vt?void 0:vt.type))),Zd=null===(uc=vt.links)||void 0===uc||null===(mc=uc.find)||void 0===mc?void 0:mc.call(uc,(vt=>"next"===(null===vt||void 0===vt?void 0:vt.rel)&&"application/geo+json"===(null===vt||void 0===vt?void 0:vt.type))),Yd=Object.values(vt.assets).find((vt=>{var bt;return(null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("visual"))&&"image/webp"===vt.type})),Qd=Object.values(vt.assets).find((vt=>{var bt;return(null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("visual"))&&"image/jpeg"===vt.type})),Xd=Od((Yd||Qd).href),Kd=Od(null===(gc=Object.values(vt.assets).find((vt=>{var bt;return(null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("thumbnail"))&&"image/jpeg"===vt.type})))||void 0===gc?void 0:gc.href),Jd=(null===vt||void 0===vt||null===(Ac=vt.asset_templates)||void 0===Ac?void 0:Ac.tiles_webp)||(null===vt||void 0===vt||null===(Ec=vt.asset_templates)||void 0===Ec?void 0:Ec.tiles),$d=getCroppedPanoData(vt),sp=null===(kc=vt.links)||void 0===kc||null===(du=kc.find)||void 0===du?void 0:du.call(kc,(vt=>"via"===(null===vt||void 0===vt?void 0:vt.rel)&&"application/json"===(null===vt||void 0===vt?void 0:vt.type))),tm=null===(_u=vt.properties)||void 0===_u||null===(Md=_u["pers:interior_orientation"])||void 0===Md?void 0:Md.sensor_array_dimensions;let em;if(Object.keys($d).length>0)em={baseUrl:Nd?qd:Xd,origBaseUrl:Nd?qd:Xd,hdUrl:qd,thumbUrl:Kd,basePanoData:Nd?$d:bt=>getCroppedPanoData(vt,bt),cropData:$d,width:$d.fullWidth,cols:2,rows:1,tileUrl:()=>null};else if(Gd&&Hd)em={baseUrl:Xd,origBaseUrl:Xd,basePanoData:vt=>({fullWidth:vt.width,fullHeight:vt.height}),hdUrl:qd,thumbUrl:Kd,cols:Hd&&Hd.tileMatrix[0].matrixWidth,rows:Hd&&Hd.tileMatrix[0].matrixHeight,width:Hd&&Hd.tileMatrix[0].matrixWidth*Hd.tileMatrix[0].tileWidth,tileUrl:Hd&&((vt,bt)=>Od(Jd.href.replace(/\{TileCol\}/g,vt).replace(/\{TileRow\}/g,bt)))};else{const getFlatCrop=vt=>{vt.width<vt.height&&!jd&&(Ud=35);const bt=Ud*vt.height/vt.width,le=360*vt.width/Ud,ls=180*vt.height/bt;return{fullWidth:Math.floor(le),fullHeight:Math.floor(ls),croppedWidth:vt.width,croppedHeight:vt.height,croppedX:Math.floor((le-vt.width)/2),croppedY:Math.floor((ls-vt.height)/2)}};let vt=tm?getFlatCrop({width:tm[0],height:tm[1]}):null;em={baseUrl:Nd?qd:Xd,origBaseUrl:Nd?qd:Xd,hdUrl:qd,thumbUrl:Kd,basePanoData:getFlatCrop,cropData:vt,width:(null===vt||void 0===vt?void 0:vt.fullWidth)||2,cols:2,rows:1,tileUrl:()=>null}}null!==(Ld=vt.properties)&&void 0!==Ld&&Ld.semantics&&(vt.properties.semantics=vt.properties.semantics.filter((vt=>Object.keys(vt).length>0)));return{id:vt.id,caption:getNodeCaption(vt,bt),panorama:em,links:filterRelatedPicsLinks(vt,Rd),gps:vt.geometry.coordinates,sequence:{id:vt.collection,nextPic:Zd?Zd.id:void 0,prevPic:Wd?Wd.id:void 0},sphereCorrection:getSphereCorrection(vt),horizontalFov:Ud,origInstance:sp,properties:vt.properties}}function filterRelatedPicsLinks(vt){var bt;let le=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;const ls=vt.links.filter((vt=>["next","prev","related"].includes(null===vt||void 0===vt?void 0:vt.rel)&&"application/geo+json"===(null===vt||void 0===vt?void 0:vt.type))).filter((vt=>!le||le(vt))).map((vt=>(vt.datetime&&(vt.date=vt.datetime.split("T")[0]),vt))),ho=vt.geometry.coordinates,uc=[],mc={N:[],ENE:[],ESE:[],S:[],WSW:[],WNW:[]};for(let Fl of ls){mc[(0,Dl.getSimplifiedAngle)(ho,Fl.geometry.coordinates)].push(Fl)}for(let Dl in mc){const vt=mc[Dl];0!=vt.length&&(vt.sort(sortPicturesInDirection(ho)),uc.push(vt.shift()))}let arrowStyle=vt=>"related"===vt.rel?{element:(0,Dl.getArrow)(sc),size:{width:128/3,height:128}}:{element:(0,Dl.getArrow)(Fl),size:{width:75,height:75}};const gc=-((null===(bt=vt.properties)||void 0===bt?void 0:bt["view:azimuth"])||0)*(Math.PI/180);return uc.map((vt=>({nodeId:vt.id,gps:vt.geometry.coordinates,arrowStyle:arrowStyle(vt),linkOffset:{yaw:gc}})))}function getHashTags(vt){var bt;if(null===vt||void 0===vt||null===(bt=vt.properties)||void 0===bt||!bt.semantics)return[];const le=vt.properties.semantics.filter((vt=>"hashtags"===vt.key)),ls=[];return le.forEach((vt=>vt.value.split(";").forEach((vt=>ls.push(vt.trim()))))),ls}function hasAnnotations(vt){var bt,le;return(null===vt||void 0===vt||null===(bt=vt.properties)||void 0===bt||null===(le=bt.annotations)||void 0===le?void 0:le.length)>0}},2283:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{SEMANTICS_OVERLAYS:()=>Ac,computeDiffTags:()=>computeDiffTags,decodeBasicTag:()=>decodeBasicTag,decodeKey:()=>decodeKey,groupByPrefix:()=>groupByPrefix,parseSemanticsString:()=>parseSemanticsString,semanticsToString:()=>semanticsToString});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(1760),uc=le(9472),mc=le(7208),gc=le(4964);const Ac=[["features",'"semantics" IS NOT NULL',{metadata:{name:"All features"},type:"circle",layout:{visibility:"none"},paint:{"circle-radius":4,"circle-color":"#00897B"}}],["tfsigns",'"semantics.osm|traffic_sign" IS NOT NULL',{metadata:{name:"Traffic signs"},type:"symbol",layout:{visibility:"none","icon-overlap":"never","icon-image":["case",["in",";",["get","osm|traffic_sign"]],"pnx-tfsigns-fr:0_many",["==",["slice",["get","osm|traffic_sign"],0,2],"FR"],["concat","pnx-tfsigns-fr:",["slice",["get","osm|traffic_sign"],3]],["==",["get","osm|traffic_sign"],"yes"],"pnx-tfsigns-fr:0_unknown",["has","osm|traffic_sign"],"pnx-tfsigns-fr:0_unknown",""]}},{"pnx-tfsigns-fr":"".concat((0,mc.PanoramaxPresetsURL)(),"/sprites/trafficsigns_fr")}]];function valToValLink(vt,bt,le){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["<a href=",' target="_blank" title=',">","</a>"])),bt,le,vt)}const Ec=["highway","building","amenity","landuse","natural","waterway","leisure","shop","railway","tourism","barrier","boundary","place","power"],kc={};function getWDLabel(vt,bt){if(kc[vt])return Promise.resolve(kc[vt]);{const le=vt.startsWith("P")?"properties/".concat(vt):"items/".concat(vt,"/labels");return fetch("".concat((0,mc.WikidataAPIURL)(),"/entities/").concat(le)).then((vt=>vt.json())).then((le=>(kc[vt]=(0,gc.getBestLabel)(le.labels||le,bt.PREF_LANG),kc[vt])))}}const du={"":{title:"Panoramax",value_transform:(vt,bt)=>"osm"===vt.key?valToValLink(vt.value,"".concat((0,mc.OSMURL)(),"/").concat(vt.value),bt.pnx.semantics_value_show_osm):vt.value},osm:{title:"OpenStreetMap",logo:sc,key_transform:(vt,bt)=>valToValLink(vt.key,"".concat((0,mc.OSMWikiURL)(),"/Key:").concat(vt.key),bt.pnx.semantics_key_doc),value_transform:(vt,bt)=>Ec.includes(vt.key)?valToValLink(vt.value,"".concat((0,mc.OSMWikiURL)(),"/Tag:").concat(vt.key,"=").concat(vt.value),bt.pnx.semantics_value_doc):vt.value},wd:{title:"Wikidata",logo:uc,key_transform:(vt,bt)=>{const le="".concat((0,mc.WikidataURL)(),"/Property:").concat(vt.key);if(bt.pnx.semantics_wikidata_properties[vt.key])return valToValLink((0,Fl.qy)(ho||(ho=(0,Dl.A)([""," <small>(",")</small>"])),bt.pnx.semantics_wikidata_properties[vt.key],vt.key),le,bt.pnx.semantics_key_doc);{const ls=document.createElement("span");return ls.innerText=vt.key,getWDLabel(vt.key,bt).then((bt=>{ls.innerHTML="".concat(bt," <small>(").concat(vt.key,")</small>")})),valToValLink(ls,le,bt.pnx.semantics_key_doc)}},value_transform:(vt,bt)=>{const le=document.createElement("span");return le.innerText=vt.value,getWDLabel(vt.value,bt).then((bt=>{le.innerHTML="".concat(bt," <small>(").concat(vt.value,")</small>")})),valToValLink(le,"".concat((0,mc.WikidataURL)(),"/").concat(vt.value),bt.pnx.semantics_value_doc)}},exif:{title:"EXIF"}};function decodeBasicTag(vt){const bt=(vt||"").lastIndexOf("=");if(bt<0)return null;const le=decodeKey(vt.substring(0,bt));return le.subkey.indexOf("=")>=0?null:{key:le,value:vt.substring(bt+1)}}function decodeKey(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const bt=vt.match(/^(?:([a-z_]+)\|)?([^[]+)(?:\[(.*)\])?$/);if(!bt)return{prefix:"",subkey:vt,qualifies:null};const[,le,ls,ho]=bt;return{key:vt,prefix:le||"",subkey:ls,qualifies:decodeBasicTag(ho)}}function parseSemanticsString(vt){const bt=vt.split("\n").map((vt=>{const bt=decodeBasicTag(vt);return bt&&bt.key.key.length<=256&&bt.value.length<=2048?{key:bt.key.key,value:bt.value}:null}));if(bt.findIndex((vt=>!vt))>=0){if(0===vt.trim().length&&1===bt.length)return[];throw new Error("Invalid tags")}return bt}function semanticsToString(vt){return(vt||[]).map((vt=>"".concat(vt.key,"=").concat(vt.value))).join("\n")}function computeDiffTags(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const le=[];return(bt||[]).filter((bt=>void 0===vt.find((vt=>vt.key==bt.key&&vt.value==bt.value)))).forEach((vt=>le.push({key:vt.key,value:vt.value,action:"add"}))),(vt||[]).filter((vt=>void 0===bt.find((bt=>vt.key==bt.key&&vt.value==bt.value)))).forEach((vt=>le.push({key:vt.key,value:vt.value,action:"delete"}))),le}function groupByPrefix(vt){const bt={},le=[];return vt.forEach((vt=>{if("delete"===vt.action)return;const ls=decodeKey(vt.key);ls.qualifies?le.push(Object.assign({},vt,ls)):(bt[ls.prefix]||(bt[ls.prefix]=[]),bt[ls.prefix].push(ls.prefix.length>0?{key:ls.subkey,value:vt.value}:vt))})),le.forEach((vt=>{var le;let{key:ls,prefix:ho,subkey:Dl,qualifies:Fl,value:sc}=vt;const uc=null===(le=bt[Fl.key.prefix])||void 0===le?void 0:le.find((vt=>vt.key===Fl.key.subkey&&(!Fl.value||Fl.value===vt.value)));uc&&(uc.qualifiers||(uc.qualifiers=[]),uc.qualifiers.push({key:ls,prefix:ho,subkey:Dl,value:sc}))})),Object.entries(bt).map((vt=>{let[bt,le]=vt;return du[bt]?Object.assign({prefix:bt,tags:le},du[bt]):{prefix:bt,title:bt,tags:le}}))}},7208:(vt,bt,le)=>{"use strict";function MapTiles(){return"https://panoramax.openstreetmap.fr/pmtiles/basic.json"}function PanoramaxWebsiteURL(){return"https://panoramax.fr"}function PanoramaxPresetsURL(){return"https://presets.panoramax.fr"}function PanoramaxMetaCatalogURL(){return"https://explore.panoramax.fr"}function TemakiIconURL(vt){return"https://raw.githubusercontent.com/rapideditor/temaki/refs/heads/main/icons/".concat(vt,".svg")}function WikidataURL(){return"https://www.wikidata.org/wiki"}function WikidataAPIURL(){return"https://www.wikidata.org/w/rest.php/wikibase/v1"}function IdEditorURL(){return"https://www.openstreetmap.org/edit?editor=id"}function OSMWikiURL(){return"https://wiki.openstreetmap.org/wiki"}function OSMURL(){return"https://openstreetmap.org"}function IndoorEqualSpritesURL(){return"https://files.pavie.info/depot/remote/indoorequal/indoorequal"}function InternetFastThreshold(){return 10}function InternetFastTestFile(){return"https://panoramax.openstreetmap.fr/images/05/ca/2c/98/0111-4baf-b6f3-587bb8847d2e.jpg"}function AdresseDataGouvBaseURL(){return"https://data.geopf.fr/geocodage/search"}function NominatimBaseUrl(){return"https://nominatim.openstreetmap.org"}le.r(bt),le.d(bt,{AdresseDataGouvBaseURL:()=>AdresseDataGouvBaseURL,IdEditorURL:()=>IdEditorURL,IndoorEqualSpritesURL:()=>IndoorEqualSpritesURL,InternetFastTestFile:()=>InternetFastTestFile,InternetFastThreshold:()=>InternetFastThreshold,MapTiles:()=>MapTiles,NominatimBaseUrl:()=>NominatimBaseUrl,OSMURL:()=>OSMURL,OSMWikiURL:()=>OSMWikiURL,PanoramaxMetaCatalogURL:()=>PanoramaxMetaCatalogURL,PanoramaxPresetsURL:()=>PanoramaxPresetsURL,PanoramaxWebsiteURL:()=>PanoramaxWebsiteURL,TemakiIconURL:()=>TemakiIconURL,WikidataAPIURL:()=>WikidataAPIURL,WikidataURL:()=>WikidataURL})},7343:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{BASE_PANORAMA_ID:()=>Dl,COLORS:()=>Fl,COLORS_HEX:()=>sc,DISABLE_ANNOTATIONS_PARAM:()=>ho,GPS_VALUES:()=>du,QUALITYSCORE_GPS_VALUES:()=>Ac,QUALITYSCORE_POND_GPS:()=>kc,QUALITYSCORE_POND_RES:()=>Ec,QUALITYSCORE_RES_360_VALUES:()=>gc,QUALITYSCORE_RES_FLAT_VALUES:()=>mc,QUALITYSCORE_VALUES:()=>uc,degToDms:()=>degToDms,getArrow:()=>getArrow,getAzimuth:()=>getAzimuth,getCookie:()=>getCookie,getDistance:()=>getDistance,getGrade:()=>getGrade,getRelativeHeading:()=>getRelativeHeading,getSimplifiedAngle:()=>getSimplifiedAngle,getUserAccount:()=>getUserAccount,inRangeRandom:()=>inRangeRandom,isInIframe:()=>isInIframe,isInternetFast:()=>isInternetFast,isNullId:()=>isNullId,josmBboxParameters:()=>josmBboxParameters,positionToXYZ:()=>positionToXYZ,svgToPSVLink:()=>svgToPSVLink,xyzToPosition:()=>xyzToPosition});var ls=le(7208);const ho="pnx-disable-annotations",Dl="geovisio-fake-id-0",Fl={BASE:"#FF6F00",SELECTED:"#1E88E5",HIDDEN:"#34495E",NEXT:"#ffab40",QUALI_1:"#00695C",QUALI_2:"#fd8d3c",PALETTE_1:"#fecc5c",PALETTE_2:"#fd8d3c",PALETTE_3:"#f03b20",PALETTE_4:"#bd0026"},sc=Object.fromEntries(Object.entries(Fl).map((vt=>(vt[1]=parseInt(vt[1].slice(1),16),vt)))),uc=[{color:"#007f4e",label:"A"},{color:"#72b043",label:"B"},{color:"#b5be2f",label:"C"},{color:"#f8cc1b",label:"D"},{color:"#f6a020",label:"E"}],mc=[1,10,2,15,3,30,4],gc=[3,15,4,30,5],Ac=[5,.5,4,2.01,3,5.01,2,10.01,1],Ec=.8,kc=.2,du=[{color:"#4A148C",label:"<= ".concat(Ac[1]," m")},{color:"#7B1FA2",label:"".concat(Math.round(Ac[1])," - ").concat(Math.round(Ac[3])," m")},{color:"#9C27B0",label:"".concat(Math.round(Ac[3])," - ").concat(Math.round(Ac[5])," m")},{color:"#BA68C8",label:"".concat(Math.round(Ac[5])," - ").concat(Math.round(Ac[7])," m")},{color:"#EA80FC",label:"> ".concat(Math.round(Ac[7])," m")}];function isNullId(vt){return[null,void 0,"",Dl].includes(vt)}function getGrade(vt,bt){if(null===bt||void 0===bt||""===bt)return null;for(let le=0;le<vt.length;le+=2){const ls=vt[le];if(bt<vt[le+1])return ls}return vt[vt.length-1]}function getDistance(vt,bt){const le=vt[0]-bt[0],ls=vt[1]-bt[1];return Math.sqrt(le*le+ls*ls)}function svgToPSVLink(vt,bt){try{const le=atob(vt.replace(/^data:image\/svg\+xml;base64,/,"")),ls=(new DOMParser).parseFromString(le,"image/svg+xml").childNodes[0],ho=document.createElement("button");return ho.appendChild(ls),ho.classList.add("pnx-psv-tour-arrows","pnx-print-hidden"),ho.style.color=bt,ho}catch(le){const bt=document.createElement("img");return bt.src=vt,bt.alt="",bt}}function getArrow(vt){const bt=vt.cloneNode(!0);return bt.addEventListener("pointerup",(()=>bt.classList.add("pnx-clicked"))),bt}function getAzimuth(vt,bt){return(Math.atan2(bt[0]-vt[0],bt[1]-vt[1])*(180/Math.PI)+360)%360}function getRelativeHeading(vt){var bt,le;if(!vt)throw new Error("No picture selected");let ls,ho;const Dl=vt.properties["view:azimuth"];if(null!==vt&&void 0!==vt&&null!==(bt=vt.sequence)&&void 0!==bt&&bt.prevPic){var Fl;const bt=null===vt||void 0===vt||null===(Fl=vt.links)||void 0===Fl?void 0:Fl.find((bt=>bt.nodeId===vt.sequence.prevPic));bt&&(ls=(Dl-getAzimuth(bt.gps,vt.gps)+180)%360-180)}if(null!==vt&&void 0!==vt&&null!==(le=vt.sequence)&&void 0!==le&&le.nextPic){var sc;const bt=null===vt||void 0===vt||null===(sc=vt.links)||void 0===sc?void 0:sc.find((bt=>bt.nodeId===vt.sequence.nextPic));bt&&(ho=(Dl-getAzimuth(vt.gps,bt.gps)+180)%360-180)}return void 0!==ls?ls:void 0!==ho?ho:0}function getSimplifiedAngle(vt,bt){const le=Math.atan2(bt[0]-vt[0],bt[1]-vt[1])*(180/Math.PI);return Math.abs(le)<30?"N":le>=30&&le<90?"ENE":le>=90&&le<150?"ESE":Math.abs(le)>=150?"S":le<=-30&&le>-90?"WNW":le<=-90&&le>-150?"WSW":void 0}function positionToXYZ(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;const le={x:vt.yaw*(180/Math.PI),y:vt.pitch*(180/Math.PI)};return void 0!==bt&&(le.z=bt),le}function xyzToPosition(vt,bt,le){return{yaw:vt/(180/Math.PI),pitch:bt/(180/Math.PI),zoom:le}}function degToDms(vt){const bt=vt<0?Math.ceil(vt):Math.floor(vt),le=60*Math.abs(vt-bt),ls=Math.floor(le);return{d:bt,m:ls,s:parseFloat((60*(le-ls)).toFixed(3))}}function josmBboxParameters(vt){if(vt){var bt;const le=vt.gps,ls=null===vt||void 0===vt||null===(bt=vt.properties)||void 0===bt?void 0:bt["view:azimuth"],ho=2e-4,Dl={left:le[0]-(null===ls||ls>=180?ho:0),right:le[0]+(null===ls||ls<=180?ho:0),top:le[1]+(null===ls||ls<=90||ls>=270?ho:0),bottom:le[1]-(null===ls||ls>=90&&ls<=270?ho:0),changeset_source:"Panoramax"};return Object.entries(Dl).map((vt=>vt.join("="))).join("&")}return null}function isInIframe(){try{return window.self!==window.top}catch(vt){return!0}}const _u="pnx-internet-fast";function isInternetFast(){try{const vt=navigator.connection.downlink;return Promise.resolve(vt>=(0,ls.InternetFastThreshold)())}catch(vt){try{const vt=sessionStorage.getItem(_u);if(["true","false"].includes(vt))return Promise.resolve("true"===vt);const bt=(new Date).getTime();return fetch("".concat((0,ls.InternetFastTestFile)(),"?nocache=").concat(bt)).then((async vt=>[vt,await vt.blob()])).then((vt=>{let[le,ho]=vt;const Dl=8*parseInt(le.headers.get("Content-Length")||ho.size)/1024/1024/(((new Date).getTime()-bt)/1e3)>=(0,ls.InternetFastThreshold)();return sessionStorage.setItem(_u,Dl?"true":"false"),Dl})).catch((vt=>(console.warn("Failed to run speedtest",vt),!1)))}catch(vt){return Promise.resolve(!1)}}}function getCookie(vt){var bt,le,ls;const ho=null===(bt=document.cookie)||void 0===bt||null===(le=bt.split(";"))||void 0===le||null===(ls=le.find((bt=>bt.trimStart().startsWith("".concat(vt,"=")))))||void 0===ls?void 0:ls.split("=");if(ho)return ho.shift(),ho.join("=")}function getUserAccount(){const vt=getCookie("session"),bt=getCookie("user_id"),le=getCookie("user_name");return vt&&bt&&le?{id:bt,name:le}:null}function inRangeRandom(vt,bt){const le=new Uint32Array(1);crypto.getRandomValues(le);let ls=le[0]/4294967296;return vt=Math.ceil(vt),bt=Math.floor(bt),Math.floor(ls*(bt-vt+1))+vt}},5995:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{createWebComp:()=>createWebComp,fa:()=>fa,listenForMenuClosure:()=>listenForMenuClosure,moreIcons:()=>moreIcons,onceParentAvailable:()=>onceParentAvailable});var ls=le(3710),ho=le(8983),Dl=le(7208);function fa(vt,bt){return(0,ls.Kk)(vt,bt).node[0]}function moreIcons(){(0,ho.c8)((async vt=>{const bt=await fetch((0,Dl.TemakiIconURL)(vt));return bt.ok?{body:await bt.text()}:null}),"temaki")}function createWebComp(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const le=document.createElement(vt);return Object.entries(bt).forEach((vt=>{let[bt,ls]=vt;bt.startsWith("_")?le[bt]=ls:bt.startsWith("fn")?le[bt.substring(2)]=ls:bt.startsWith("on")?le.addEventListener(bt.substring(2),ls):ls&&le.setAttribute(bt,ls)})),le}function listenForMenuClosure(vt,bt){var le,ls,ho,Dl,Fl,sc,uc;null===(le=vt._parent)||void 0===le||le.addEventListener("menu-opened",(le=>{le.detail.menu!=vt&&bt()})),null===(ls=vt._parent)||void 0===ls||null===(ho=ls.onceMapReady)||void 0===ho||ho.call(ls).then((()=>{var le,ls;null===(le=vt._parent.map)||void 0===le||null===(ls=le.on)||void 0===ls||ls.call(le,"click",(()=>bt()))})),null===(Dl=vt._parent)||void 0===Dl||null===(Fl=Dl.oncePSVReady)||void 0===Fl||Fl.call(Dl).then((()=>{vt._parent.psv.addEventListener("click",(()=>bt()))})),null===(sc=vt._parent)||void 0===sc||null===(uc=sc.onceReady)||void 0===uc||uc.call(sc).then((()=>{var le;null===(le=vt._parent.legend)||void 0===le||le.addEventListener("click",(()=>bt()))}))}function lookForParent(vt){return vt._parent?vt._parent:vt===document.body?null:vt.parentNode?lookForParent(vt.parentNode):vt.host?lookForParent(vt.host):void 0}function onceParentAvailable(vt){return vt._parent?Promise.resolve(vt._parent):new Promise((bt=>{const le=setInterval((()=>{const ls=lookForParent(vt);ls&&(vt._parent=ls,clearInterval(le),bt(vt._parent))}),100)}))}},7325:(vt,bt)=>{"use strict";var le="star",ls=[11088,61446],ho="f005",Dl="M287.9 0c9.2 0 17.6 5.2 21.6 13.5l68.6 141.3 153.2 22.6c9 1.3 16.5 7.6 19.3 16.3s.5 18.1-5.9 24.5L433.6 328.4l26.2 155.6c1.5 9-2.2 18.1-9.7 23.5s-17.3 6-25.3 1.7l-137-73.2L151 509.1c-8.1 4.3-17.9 3.7-25.3-1.7s-11.2-14.5-9.7-23.5l26.2-155.6L31.1 218.2c-6.5-6.4-8.7-15.9-5.9-24.5s10.3-14.9 19.3-16.3l153.2-22.6L266.3 13.5C270.4 5.2 278.7 0 287.9 0zm0 79L235.4 187.2c-3.5 7.1-10.2 12.1-18.1 13.3L99 217.9 184.9 303c5.5 5.5 8.1 13.3 6.8 21L171.4 443.7l105.2-56.2c7.1-3.8 15.6-3.8 22.6 0l105.2 56.2L384.2 324.1c-1.3-7.7 1.2-15.5 6.8-21l85.9-85.1L358.6 200.5c-7.8-1.2-14.6-6.1-18.1-13.3L287.9 79z";bt.mw={prefix:"far",iconName:le,icon:[576,512,ls,ho,Dl]},bt.yy=bt.mw},8466:(vt,bt)=>{"use strict";var le="arrow-left",ls=[8592],ho="f060",Dl="M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.2 288 416 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-306.7 0L214.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.Ce=bt.mw},6069:(vt,bt)=>{"use strict";var le="arrow-right",ls=[8594],ho="f061",Dl="M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.dm=bt.mw},4881:(vt,bt)=>{"use strict";var le=[61946],ls="M256 64C150 64 64 150 64 256s86 192 192 192c17.7 0 32 14.3 32 32s-14.3 32-32 32C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256l0 32c0 53-43 96-96 96c-29.3 0-55.6-13.2-73.2-33.9C320 371.1 289.5 384 256 384c-70.7 0-128-57.3-128-128s57.3-128 128-128c27.9 0 53.7 8.9 74.7 24.1c5.7-5 13.1-8.1 21.3-8.1c17.7 0 32 14.3 32 32l0 80 0 32c0 17.7 14.3 32 32 32s32-14.3 32-32l0-32c0-106-86-192-192-192zm64 192a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z";bt.mw={prefix:"fas",iconName:"at",icon:[512,512,le,"40",ls]},bt.Hz=bt.mw},1705:(vt,bt)=>{"use strict";var le="backward",ls=[9194],ho="f04a",Dl="M459.5 440.6c9.5 7.9 22.8 9.7 34.1 4.4s18.4-16.6 18.4-29l0-320c0-12.4-7.2-23.7-18.4-29s-24.5-3.6-34.1 4.4L288 214.3l0 41.7 0 41.7L459.5 440.6zM256 352l0-96 0-128 0-32c0-12.4-7.2-23.7-18.4-29s-24.5-3.6-34.1 4.4l-192 160C4.2 237.5 0 246.5 0 256s4.2 18.5 11.5 24.6l192 160c9.5 7.9 22.8 9.7 34.1 4.4s18.4-16.6 18.4-29l0-64z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.TH=bt.mw},9186:(vt,bt)=>{"use strict";var le="calendar",ls=[128197,128198],ho="f133",Dl="M96 32l0 32L48 64C21.5 64 0 85.5 0 112l0 48 448 0 0-48c0-26.5-21.5-48-48-48l-48 0 0-32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 32L160 64l0-32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192L0 192 0 464c0 26.5 21.5 48 48 48l352 0c26.5 0 48-21.5 48-48l0-272z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.ok=bt.mw},4927:(vt,bt,le)=>{"use strict";var ls=le(1577);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.BE=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},1577:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="calendar-days",ls=["calendar-alt"],ho="f073",Dl="M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zm64 80l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm128 0l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM64 400l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zm112 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16z";bt.definition={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.faCalendarDays=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=448,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},2480:(vt,bt)=>{"use strict";var le="camera",ls=[62258,"camera-alt"],ho="f030",Dl="M149.1 64.8L138.7 96 64 96C28.7 96 0 124.7 0 160L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64l-74.7 0L362.9 64.8C356.4 45.2 338.1 32 317.4 32L194.6 32c-20.7 0-39 13.2-45.5 32.8zM256 192a96 96 0 1 1 0 192 96 96 0 1 1 0-192z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.rw=bt.mw},7261:(vt,bt)=>{"use strict";var le="caret-down",ls=[],ho="f0d7",Dl="M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,ho,Dl]},bt.xB=bt.mw},4420:(vt,bt)=>{"use strict";var le="caret-up",ls=[],ho="f0d8",Dl="M182.6 137.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8l256 0c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-128-128z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,ho,Dl]},bt.S$=bt.mw},174:(vt,bt)=>{"use strict";var le="check",ls=[10003,10004],ho="f00c",Dl="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.e6=bt.mw},2593:(vt,bt)=>{"use strict";var le="chevron-down",ls=[],ho="f078",Dl="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.Jt=bt.mw},1187:(vt,bt)=>{"use strict";var le="chevron-right",ls=[9002],ho="f054",Dl="M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,ho,Dl]},bt.Xk=bt.mw},4336:(vt,bt)=>{"use strict";var le="chevron-up",ls=[],ho="f077",Dl="M233.4 105.4c12.5-12.5 32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L256 173.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l192-192z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.w2=bt.mw},4011:(vt,bt)=>{"use strict";var le="circle-exclamation",ls=["exclamation-circle"],ho="f06a",Dl="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24l0 112c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-112c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.lE=bt.mw},7516:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="circle-info",ls=["info-circle"],ho="f05a",Dl="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336l24 0 0-64-24 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l48 0c13.3 0 24 10.7 24 24l0 88 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-80 0c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z";bt.definition={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.faCircleInfo=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=512,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},3444:(vt,bt)=>{"use strict";var le="circle-notch",ls=[],ho="f1ce",Dl="M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8C121.8 95.6 64 169.1 64 256c0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1c-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256c0 141.4-114.6 256-256 256S0 397.4 0 256C0 140 77.1 42.1 182.9 10.6c16.9-5 34.8 4.6 39.8 21.5z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.s4=bt.mw},2975:(vt,bt)=>{"use strict";var le="comment-dots",ls=[128172,62075,"commenting"],ho="f4ad",Dl="M256 448c141.4 0 256-93.1 256-208S397.4 32 256 32S0 125.1 0 240c0 45.1 17.7 86.8 47.7 120.9c-1.9 24.5-11.4 46.3-21.4 62.9c-5.5 9.2-11.1 16.6-15.2 21.6c-2.1 2.5-3.7 4.4-4.9 5.7c-.6 .6-1 1.1-1.3 1.4l-.3 .3c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0s0 0 0 0c-4.6 4.6-5.9 11.4-3.4 17.4c2.5 6 8.3 9.9 14.8 9.9c28.7 0 57.6-8.9 81.6-19.3c22.9-10 42.4-21.9 54.3-30.6c31.8 11.5 67 17.9 104.1 17.9zM128 208a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.Be=bt.mw},4189:(vt,bt)=>{"use strict";var le="copy",ls=[],ho="f0c5",Dl="M208 0L332.1 0c12.7 0 24.9 5.1 33.9 14.1l67.9 67.9c9 9 14.1 21.2 14.1 33.9L448 336c0 26.5-21.5 48-48 48l-192 0c-26.5 0-48-21.5-48-48l0-288c0-26.5 21.5-48 48-48zM48 128l80 0 0 64-64 0 0 256 192 0 0-32 64 0 0 48c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 176c0-26.5 21.5-48 48-48z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.jP=bt.mw},6516:(vt,bt)=>{"use strict";var le="download",ls=[],ho="f019",Dl="M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 242.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L288 274.7 288 32zM64 352c-35.3 0-64 28.7-64 64l0 32c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-32c0-35.3-28.7-64-64-64l-101.5 0-45.3 45.3c-25 25-65.5 25-90.5 0L165.5 352 64 352zm368 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.cb=bt.mw},7172:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="earth-europe",ls=["globe-europe"],ho="f7a2",Dl="M266.3 48.3L232.5 73.6c-5.4 4-8.5 10.4-8.5 17.1l0 9.1c0 6.8 5.5 12.3 12.3 12.3c2.4 0 4.8-.7 6.8-2.1l41.8-27.9c2-1.3 4.4-2.1 6.8-2.1l1 0c6.2 0 11.3 5.1 11.3 11.3c0 3-1.2 5.9-3.3 8l-19.9 19.9c-5.8 5.8-12.9 10.2-20.7 12.8l-26.5 8.8c-5.8 1.9-9.6 7.3-9.6 13.4c0 3.7-1.5 7.3-4.1 10l-17.9 17.9c-6.4 6.4-9.9 15-9.9 24l0 4.3c0 16.4 13.6 29.7 29.9 29.7c11 0 21.2-6.2 26.1-16l4-8.1c2.4-4.8 7.4-7.9 12.8-7.9c4.5 0 8.7 2.1 11.4 5.7l16.3 21.7c2.1 2.9 5.5 4.5 9.1 4.5c8.4 0 13.9-8.9 10.1-16.4l-1.1-2.3c-3.5-7 0-15.5 7.5-18l21.2-7.1c7.6-2.5 12.7-9.6 12.7-17.6c0-10.3 8.3-18.6 18.6-18.6l29.4 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-20.7 0c-7.2 0-14.2 2.9-19.3 8l-4.7 4.7c-2.1 2.1-3.3 5-3.3 8c0 6.2 5.1 11.3 11.3 11.3l11.3 0c6 0 11.8 2.4 16 6.6l6.5 6.5c1.8 1.8 2.8 4.3 2.8 6.8s-1 5-2.8 6.8l-7.5 7.5C386 262 384 266.9 384 272s2 10 5.7 13.7L408 304c10.2 10.2 24.1 16 38.6 16l7.3 0c6.5-20.2 10-41.7 10-64c0-111.4-87.6-202.4-197.7-207.7zm172 307.9c-3.7-2.6-8.2-4.1-13-4.1c-6 0-11.8-2.4-16-6.6L396 332c-7.7-7.7-18-12-28.9-12c-9.7 0-19.2-3.5-26.6-9.8L314 287.4c-11.6-9.9-26.4-15.4-41.7-15.4l-20.9 0c-12.6 0-25 3.7-35.5 10.7L188.5 301c-17.8 11.9-28.5 31.9-28.5 53.3l0 3.2c0 17 6.7 33.3 18.7 45.3l16 16c8.5 8.5 20 13.3 32 13.3l21.3 0c13.3 0 24 10.7 24 24c0 2.5 .4 5 1.1 7.3c71.3-5.8 132.5-47.6 165.2-107.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM187.3 100.7c-6.2-6.2-16.4-6.2-22.6 0l-32 32c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l32-32c6.2-6.2 6.2-16.4 0-22.6z";bt.definition={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.faEarthEurope=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=512,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},3613:(vt,bt,le)=>{"use strict";var ls=le(6533);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.v=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},6533:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="ellipsis-vertical",ls=["ellipsis-v"],ho="f142",Dl="M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z";bt.definition={prefix:"fas",iconName:le,icon:[128,512,ls,ho,Dl]},bt.faEllipsisVertical=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=128,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},700:(vt,bt)=>{"use strict";var le="eraser",ls=[],ho="f12d",Dl="M290.7 57.4L57.4 290.7c-25 25-25 65.5 0 90.5l80 80c12 12 28.3 18.7 45.3 18.7L288 480l9.4 0L512 480c17.7 0 32-14.3 32-32s-14.3-32-32-32l-124.1 0L518.6 285.3c25-25 25-65.5 0-90.5L381.3 57.4c-25-25-65.5-25-90.5 0zM297.4 416l-9.4 0-105.4 0-80-80L227.3 211.3 364.7 348.7 297.4 416z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.IP=bt.mw},7704:(vt,bt,le)=>{"use strict";var ls=le(7144);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.A=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},2255:(vt,bt)=>{"use strict";var le="floppy-disk",ls=[128190,128426,"save"],ho="f0c7",Dl="M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-242.7c0-17-6.7-33.3-18.7-45.3L352 50.7C340 38.7 323.7 32 306.7 32L64 32zm0 96c0-17.7 14.3-32 32-32l192 0c17.7 0 32 14.3 32 32l0 64c0 17.7-14.3 32-32 32L96 224c-17.7 0-32-14.3-32-32l0-64zM224 288a64 64 0 1 1 0 128 64 64 0 1 1 0-128z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.jk=bt.mw},5431:(vt,bt)=>{"use strict";var le="forward",ls=[9193],ho="f04e",Dl="M52.5 440.6c-9.5 7.9-22.8 9.7-34.1 4.4S0 428.4 0 416L0 96C0 83.6 7.2 72.3 18.4 67s24.5-3.6 34.1 4.4L224 214.3l0 41.7 0 41.7L52.5 440.6zM256 352l0-96 0-128 0-32c0-12.4 7.2-23.7 18.4-29s24.5-3.6 34.1 4.4l192 160c7.3 6.1 11.5 15.1 11.5 24.6s-4.2 18.5-11.5 24.6l-192 160c-9.5 7.9-22.8 9.7-34.1 4.4s-18.4-16.6-18.4-29l0-64z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.vF=bt.mw},2045:(vt,bt,le)=>{"use strict";var ls=le(7172);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.B$=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},5279:(vt,bt)=>{"use strict";var le="image",ls=[],ho="f03e",Dl="M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM323.8 202.5c-4.5-6.6-11.9-10.5-19.8-10.5s-15.4 3.9-19.8 10.5l-87 127.6L170.7 297c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6l96 0 32 0 208 0c8.9 0 17.1-4.9 21.2-12.8s3.6-17.4-1.4-24.7l-120-176zM112 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.jb=bt.mw},4954:(vt,bt)=>{"use strict";var le="images",ls=[],ho="f302",Dl="M160 32c-35.3 0-64 28.7-64 64l0 224c0 35.3 28.7 64 64 64l352 0c35.3 0 64-28.7 64-64l0-224c0-35.3-28.7-64-64-64L160 32zM396 138.7l96 144c4.9 7.4 5.4 16.8 1.2 24.6S480.9 320 472 320l-144 0-48 0-80 0c-9.2 0-17.6-5.3-21.6-13.6s-2.9-18.2 2.9-25.4l64-80c4.6-5.7 11.4-9 18.7-9s14.2 3.3 18.7 9l17.3 21.6 56-84C360.5 132 368 128 376 128s15.5 4 20 10.7zM192 128a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM48 120c0-13.3-10.7-24-24-24S0 106.7 0 120L0 344c0 75.1 60.9 136 136 136l320 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-320 0c-48.6 0-88-39.4-88-88l0-224z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.yv=bt.mw},6668:(vt,bt,le)=>{"use strict";var ls=le(7516);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.iW=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},4220:(vt,bt)=>{"use strict";var le="layer-group",ls=[],ho="f5fd",Dl="M264.5 5.2c14.9-6.9 32.1-6.9 47 0l218.6 101c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 149.8C37.4 145.8 32 137.3 32 128s5.4-17.9 13.9-21.8L264.5 5.2zM476.9 209.6l53.2 24.6c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 277.8C37.4 273.8 32 265.3 32 256s5.4-17.9 13.9-21.8l53.2-24.6 152 70.2c23.4 10.8 50.4 10.8 73.8 0l152-70.2zm-152 198.2l152-70.2 53.2 24.6c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 405.8C37.4 401.8 32 393.3 32 384s5.4-17.9 13.9-21.8l53.2-24.6 152 70.2c23.4 10.8 50.4 10.8 73.8 0z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.qI=bt.mw},325:(vt,bt)=>{"use strict";var le="lightbulb",ls=[128161],ho="f0eb",Dl="M272 384c9.6-31.9 29.5-59.1 49.2-86.2c0 0 0 0 0 0c5.2-7.1 10.4-14.2 15.4-21.4c19.8-28.5 31.4-63 31.4-100.3C368 78.8 289.2 0 192 0S16 78.8 16 176c0 37.3 11.6 71.9 31.4 100.3c5 7.2 10.2 14.3 15.4 21.4c0 0 0 0 0 0c19.8 27.1 39.7 54.4 49.2 86.2l160 0zM192 512c44.2 0 80-35.8 80-80l0-16-160 0 0 16c0 44.2 35.8 80 80 80zM112 176c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-61.9 50.1-112 112-112c8.8 0 16 7.2 16 16s-7.2 16-16 16c-44.2 0-80 35.8-80 80z";bt.mw={prefix:"fas",iconName:le,icon:[384,512,ls,ho,Dl]},bt.rC=bt.mw},7964:(vt,bt)=>{"use strict";var le="link",ls=[128279,"chain"],ho="f0c1",Dl="M579.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L422.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C206.5 251.2 213 330 263 380c56.5 56.5 148 56.5 204.5 0L579.8 267.7zM60.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C74 372 74 321 105.5 289.5L217.7 177.2c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C433.5 260.8 427 182 377 132c-56.5-56.5-148-56.5-204.5 0L60.2 244.3z";bt.mw={prefix:"fas",iconName:le,icon:[640,512,ls,ho,Dl]},bt.CQ=bt.mw},3520:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="location-dot",ls=["map-marker-alt"],ho="f3c5",Dl="M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z";bt.definition={prefix:"fas",iconName:le,icon:[384,512,ls,ho,Dl]},bt.faLocationDot=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=384,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},7761:(vt,bt)=>{"use strict";var le="magnifying-glass",ls=[128269,"search"],ho="f002",Dl="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.$U=bt.mw},2e3:(vt,bt)=>{"use strict";var le=[128506,62072],ls="f279",ho="M384 476.1L192 421.2l0-385.3L384 90.8l0 385.3zm32-1.2l0-386.5L543.1 37.5c15.8-6.3 32.9 5.3 32.9 22.3l0 334.8c0 9.8-6 18.6-15.1 22.3L416 474.8zM15.1 95.1L160 37.2l0 386.5L32.9 474.5C17.1 480.8 0 469.2 0 452.2L0 117.4c0-9.8 6-18.6 15.1-22.3z";bt.mw={prefix:"fas",iconName:"map",icon:[576,512,le,ls,ho]},bt.e5=bt.mw},6655:(vt,bt,le)=>{"use strict";var ls=le(3520);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.Pc=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},3233:(vt,bt)=>{"use strict";var le="medal",ls=[127941],ho="f5a2",Dl="M4.1 38.2C1.4 34.2 0 29.4 0 24.6C0 11 11 0 24.6 0L133.9 0c11.2 0 21.7 5.9 27.4 15.5l68.5 114.1c-48.2 6.1-91.3 28.6-123.4 61.9L4.1 38.2zm503.7 0L405.6 191.5c-32.1-33.3-75.2-55.8-123.4-61.9L350.7 15.5C356.5 5.9 366.9 0 378.1 0L487.4 0C501 0 512 11 512 24.6c0 4.8-1.4 9.6-4.1 13.6zM80 336a176 176 0 1 1 352 0A176 176 0 1 1 80 336zm184.4-94.9c-3.4-7-13.3-7-16.8 0l-22.4 45.4c-1.4 2.8-4 4.7-7 5.1L168 298.9c-7.7 1.1-10.7 10.5-5.2 16l36.3 35.4c2.2 2.2 3.2 5.2 2.7 8.3l-8.6 49.9c-1.3 7.6 6.7 13.5 13.6 9.9l44.8-23.6c2.7-1.4 6-1.4 8.7 0l44.8 23.6c6.9 3.6 14.9-2.2 13.6-9.9l-8.6-49.9c-.5-3 .5-6.1 2.7-8.3l36.3-35.4c5.6-5.4 2.5-14.8-5.2-16l-50.1-7.3c-3-.4-5.7-2.4-7-5.1l-22.4-45.4z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.B9=bt.mw},7290:(vt,bt)=>{"use strict";var le="minus",ls=[8211,8722,10134,"subtract"],ho="f068",Dl="M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.EZ=bt.mw},8629:(vt,bt)=>{"use strict";var le="palette",ls=[127912],ho="f53f",Dl="M512 256c0 .9 0 1.8 0 2.7c-.4 36.5-33.6 61.3-70.1 61.3L344 320c-26.5 0-48 21.5-48 48c0 3.4 .4 6.7 1 9.9c2.1 10.2 6.5 20 10.8 29.9c6.1 13.8 12.1 27.5 12.1 42c0 31.8-21.6 60.7-53.4 62c-3.5 .1-7 .2-10.6 .2C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256zM128 288a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm0-96a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm96 96a32 32 0 1 0 0-64 32 32 0 1 0 0 64z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.fy=bt.mw},9683:(vt,bt)=>{"use strict";var le="panorama",ls=[],ho="e209",Dl="M45.6 32C20.4 32 0 52.4 0 77.6L0 434.4C0 459.6 20.4 480 45.6 480c5.1 0 10-.8 14.7-2.4C74.6 472.8 177.6 440 320 440s245.4 32.8 259.6 37.6c4.7 1.6 9.7 2.4 14.7 2.4c25.2 0 45.6-20.4 45.6-45.6l0-356.7C640 52.4 619.6 32 594.4 32c-5 0-10 .8-14.7 2.4C565.4 39.2 462.4 72 320 72S74.6 39.2 60.4 34.4C55.6 32.8 50.7 32 45.6 32zM96 160a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm272 0c7.9 0 15.4 3.9 19.8 10.5L512.3 353c5.4 8 5.6 18.4 .4 26.5s-14.7 12.3-24.2 10.7C442.7 382.4 385.2 376 320 376c-65.6 0-123.4 6.5-169.3 14.4c-9.8 1.7-19.7-2.9-24.7-11.5s-4.3-19.4 1.9-27.2L197.3 265c4.6-5.7 11.4-9 18.7-9s14.2 3.3 18.7 9l26.4 33.1 87-127.6c4.5-6.6 11.9-10.5 19.8-10.5z";bt.mw={prefix:"fas",iconName:le,icon:[640,512,ls,ho,Dl]},bt.pt=bt.mw},1708:(vt,bt)=>{"use strict";var le="paper-plane",ls=[61913],ho="f1d8",Dl="M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480l0-83.6c0-4 1.5-7.8 4.2-10.8L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.is=bt.mw},7472:(vt,bt)=>{"use strict";var le="pause",ls=[9208],ho="f04c",Dl="M48 64C21.5 64 0 85.5 0 112L0 400c0 26.5 21.5 48 48 48l32 0c26.5 0 48-21.5 48-48l0-288c0-26.5-21.5-48-48-48L48 64zm192 0c-26.5 0-48 21.5-48 48l0 288c0 26.5 21.5 48 48 48l32 0c26.5 0 48-21.5 48-48l0-288c0-26.5-21.5-48-48-48l-32 0z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,ho,Dl]},bt.G1=bt.mw},7321:(vt,bt)=>{"use strict";var le=[128394],ls="f304",ho="M362.7 19.3L314.3 67.7 444.3 197.7l48.4-48.4c25-25 25-65.5 0-90.5L453.3 19.3c-25-25-65.5-25-90.5 0zm-71 71L58.6 323.5c-10.4 10.4-18 23.3-22.2 37.4L1 481.2C-1.5 489.7 .8 498.8 7 505s15.3 8.5 23.7 6.1l120.3-35.4c14.1-4.2 27-11.8 37.4-22.2L421.7 220.3 291.7 90.3z";bt.mw={prefix:"fas",iconName:"pen",icon:[512,512,le,ls,ho]},bt.hp=bt.mw},9243:(vt,bt)=>{"use strict";var le="person-biking",ls=[128692,"biking"],ho="f84a",Dl="M400 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm27.2 64l-61.8-48.8c-17.3-13.6-41.7-13.8-59.1-.3l-83.1 64.2c-30.7 23.8-28.5 70.8 4.3 91.6L288 305.1 288 416c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128c0-10.7-5.3-20.7-14.2-26.6L295 232.9l60.3-48.5L396 217c5.7 4.5 12.7 7 20 7l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-52.8 0zM56 384a72 72 0 1 1 144 0A72 72 0 1 1 56 384zm200 0A128 128 0 1 0 0 384a128 128 0 1 0 256 0zm184 0a72 72 0 1 1 144 0 72 72 0 1 1 -144 0zm200 0a128 128 0 1 0 -256 0 128 128 0 1 0 256 0z";bt.mw={prefix:"fas",iconName:le,icon:[640,512,ls,ho,Dl]},bt.rO=bt.mw},6386:(vt,bt)=>{"use strict";var le="play",ls=[9654],ho="f04b",Dl="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80L0 432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z";bt.mw={prefix:"fas",iconName:le,icon:[384,512,ls,ho,Dl]},bt.ij=bt.mw},1372:(vt,bt)=>{"use strict";var le="plus",ls=[10133,61543,"add"],ho="M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,"2b",ho]},bt.QL=bt.mw},1319:(vt,bt,le)=>{"use strict";var ls=le(2587);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.jk=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},5124:(vt,bt)=>{"use strict";var le="question",ls=[10067,10068,61736],ho="M80 160c0-35.3 28.7-64 64-64l32 0c35.3 0 64 28.7 64 64l0 3.6c0 21.8-11.1 42.1-29.4 53.8l-42.2 27.1c-25.2 16.2-40.4 44.1-40.4 74l0 1.4c0 17.7 14.3 32 32 32s32-14.3 32-32l0-1.4c0-8.2 4.2-15.8 11-20.2l42.2-27.1c36.6-23.6 58.8-64.1 58.8-107.7l0-3.6c0-70.7-57.3-128-128-128l-32 0C73.3 32 16 89.3 16 160c0 17.7 14.3 32 32 32s32-14.3 32-32zm80 320a40 40 0 1 0 0-80 40 40 0 1 0 0 80z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,"3f",ho]},bt.Ev=bt.mw},7744:(vt,bt)=>{"use strict";var le="rocket",ls=[],ho="f135",Dl="M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2l0 82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9l0-107.2c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.KM=bt.mw},6787:(vt,bt)=>{"use strict";var le="satellite-dish",ls=[128225],ho="f7c0",Dl="M192 32c0-17.7 14.3-32 32-32C383.1 0 512 128.9 512 288c0 17.7-14.3 32-32 32s-32-14.3-32-32C448 164.3 347.7 64 224 64c-17.7 0-32-14.3-32-32zM60.6 220.6L164.7 324.7l28.4-28.4c-.7-2.6-1.1-5.4-1.1-8.3c0-17.7 14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32c-2.9 0-5.6-.4-8.3-1.1l-28.4 28.4L291.4 451.4c14.5 14.5 11.8 38.8-7.3 46.3C260.5 506.9 234.9 512 208 512C93.1 512 0 418.9 0 304c0-26.9 5.1-52.5 14.4-76.1c7.5-19 31.8-21.8 46.3-7.3zM224 96c106 0 192 86 192 192c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-70.7-57.3-128-128-128c-17.7 0-32-14.3-32-32s14.3-32 32-32z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.hU=bt.mw},2077:(vt,bt)=>{"use strict";var le="scroll",ls=[128220],ho="f70e",Dl="M0 80l0 48c0 17.7 14.3 32 32 32l16 0 48 0 0-80c0-26.5-21.5-48-48-48S0 53.5 0 80zM112 32c10 13.4 16 30 16 48l0 304c0 35.3 28.7 64 64 64s64-28.7 64-64l0-5.3c0-32.4 26.3-58.7 58.7-58.7L480 320l0-192c0-53-43-96-96-96L112 32zM464 480c61.9 0 112-50.1 112-112c0-8.8-7.2-16-16-16l-245.3 0c-14.7 0-26.7 11.9-26.7 26.7l0 5.3c0 53-43 96-96 96l176 0 96 0z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.DD=bt.mw},6002:(vt,bt,le)=>{"use strict";var ls=le(1260);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.QO=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},1260:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="share-nodes",ls=["share-alt"],ho="f1e0",Dl="M352 224c53 0 96-43 96-96s-43-96-96-96s-96 43-96 96c0 4 .2 8 .7 11.9l-94.1 47C145.4 170.2 121.9 160 96 160c-53 0-96 43-96 96s43 96 96 96c25.9 0 49.4-10.2 66.6-26.9l94.1 47c-.5 3.9-.7 7.8-.7 11.9c0 53 43 96 96 96s96-43 96-96s-43-96-96-96c-25.9 0-49.4 10.2-66.6 26.9l-94.1-47c.5-3.9 .7-7.8 .7-11.9s-.2-8-.7-11.9l94.1-47C302.6 213.8 326.1 224 352 224z";bt.definition={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.faShareNodes=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=448,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},1904:(vt,bt)=>{"use strict";var le="sliders",ls=["sliders-h"],ho="f1de",Dl="M0 416c0 17.7 14.3 32 32 32l54.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L480 448c17.7 0 32-14.3 32-32s-14.3-32-32-32l-246.7 0c-12.3-28.3-40.5-48-73.3-48s-61 19.7-73.3 48L32 384c-17.7 0-32 14.3-32 32zm128 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM320 256a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm32-80c-32.8 0-61 19.7-73.3 48L32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l246.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48l54.7 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-54.7 0c-12.3-28.3-40.5-48-73.3-48zM192 128a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm73.3-64C253 35.7 224.8 16 192 16s-61 19.7-73.3 48L32 64C14.3 64 0 78.3 0 96s14.3 32 32 32l86.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L480 128c17.7 0 32-14.3 32-32s-14.3-32-32-32L265.3 64z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt._$=bt.mw},2587:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="square-plus",ls=[61846,"plus-square"],ho="f0fe",Dl="M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM200 344l0-64-64 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l64 0 0-64c0-13.3 10.7-24 24-24s24 10.7 24 24l0 64 64 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-64 0 0 64c0 13.3-10.7 24-24 24s-24-10.7-24-24z";bt.definition={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.faSquarePlus=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=448,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},4780:(vt,bt)=>{"use strict";var le="star",ls=[11088,61446],ho="f005",Dl="M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.yy=bt.mw},6249:(vt,bt)=>{"use strict";var le="tags",ls=[],ho="f02c",Dl="M345 39.1L472.8 168.4c52.4 53 52.4 138.2 0 191.2L360.8 472.9c-9.3 9.4-24.5 9.5-33.9 .2s-9.5-24.5-.2-33.9L438.6 325.9c33.9-34.3 33.9-89.4 0-123.7L310.9 72.9c-9.3-9.4-9.2-24.6 .2-33.9s24.6-9.2 33.9 .2zM0 229.5L0 80C0 53.5 21.5 32 48 32l149.5 0c17 0 33.3 6.7 45.3 18.7l168 168c25 25 25 65.5 0 90.5L277.3 442.7c-25 25-65.5 25-90.5 0l-168-168C6.7 262.7 0 246.5 0 229.5zM144 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.DX=bt.mw},3624:(vt,bt,le)=>{"use strict";var ls=le(6627);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.GR=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},4692:(vt,bt)=>{"use strict";var le="trash",ls=[],ho="f1f8",Dl="M135.2 17.7L128 32 32 32C14.3 32 0 46.3 0 64S14.3 96 32 96l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-96 0-7.2-14.3C307.4 6.8 296.3 0 284.2 0L163.8 0c-12.1 0-23.2 6.8-28.6 17.7zM416 128L32 128 53.2 467c1.6 25.3 22.6 45 47.9 45l245.8 0c25.3 0 46.3-19.7 47.9-45L416 128z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.yL=bt.mw},6311:(vt,bt)=>{"use strict";var le="triangle-exclamation",ls=[9888,"exclamation-triangle","warning"],ho="f071",Dl="M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.JA=bt.mw},7144:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="up-right-from-square",ls=["external-link-alt"],ho="f35d",Dl="M352 0c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9L370.7 96 201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L416 141.3l41.4 41.4c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6l0-128c0-17.7-14.3-32-32-32L352 0zM80 32C35.8 32 0 67.8 0 112L0 432c0 44.2 35.8 80 80 80l320 0c44.2 0 80-35.8 80-80l0-112c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 112c0 8.8-7.2 16-16 16L80 448c-8.8 0-16-7.2-16-16l0-320c0-8.8 7.2-16 16-16l112 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L80 32z";bt.definition={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.faUpRightFromSquare=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=512,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},7879:(vt,bt)=>{"use strict";var le="user",ls=[128100,62144],ho="f007",Dl="M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l388.6 0c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304l-91.4 0z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.X4=bt.mw},3324:(vt,bt)=>{"use strict";var le="user-lock",ls=[],ho="f502",Dl="M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l362.8 0c-5.4-9.4-8.6-20.3-8.6-32l0-128c0-2.1 .1-4.2 .3-6.3c-31-26-71-41.7-114.6-41.7l-91.4 0zM528 240c17.7 0 32 14.3 32 32l0 48-64 0 0-48c0-17.7 14.3-32 32-32zm-80 32l0 48c-17.7 0-32 14.3-32 32l0 128c0 17.7 14.3 32 32 32l160 0c17.7 0 32-14.3 32-32l0-128c0-17.7-14.3-32-32-32l0-48c0-44.2-35.8-80-80-80s-80 35.8-80 80z";bt.mw={prefix:"fas",iconName:le,icon:[640,512,ls,ho,Dl]},bt.aA=bt.mw},7428:(vt,bt)=>{"use strict";var le="vector-square",ls=[],ho="f5cb",Dl="M368 80l32 0 0 32-32 0 0-32zM352 32c-17.7 0-32 14.3-32 32L128 64c0-17.7-14.3-32-32-32L32 32C14.3 32 0 46.3 0 64l0 64c0 17.7 14.3 32 32 32l0 192c-17.7 0-32 14.3-32 32l0 64c0 17.7 14.3 32 32 32l64 0c17.7 0 32-14.3 32-32l192 0c0 17.7 14.3 32 32 32l64 0c17.7 0 32-14.3 32-32l0-64c0-17.7-14.3-32-32-32l0-192c17.7 0 32-14.3 32-32l0-64c0-17.7-14.3-32-32-32l-64 0zM96 160c17.7 0 32-14.3 32-32l192 0c0 17.7 14.3 32 32 32l0 192c-17.7 0-32 14.3-32 32l-192 0c0-17.7-14.3-32-32-32l0-192zM48 400l32 0 0 32-32 0 0-32zm320 32l0-32 32 0 0 32-32 0zM48 112l0-32 32 0 0 32-32 0z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.Cw=bt.mw},6627:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="xmark",ls=[128473,10005,10006,10060,215,"close","multiply","remove","times"],ho="f00d",Dl="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z";bt.definition={prefix:"fas",iconName:le,icon:[384,512,ls,ho,Dl]},bt.faXmark=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=384,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},1545:(vt,bt,le)=>{"use strict";le.d(bt,{AZ:()=>im,GR:()=>vg,IJ:()=>Ag,Np:()=>Eg,Qw:()=>fg,S:()=>registerButton,TL:()=>jg,Wp:()=>Gd,aH:()=>sc,e6:()=>qd,jM:()=>AA,rx:()=>nm,uj:()=>bg,zY:()=>Ug});var ls=le(8168),ho=le(9435),Dl=le(9408),Fl=Object.defineProperty,__export=(vt,bt)=>{for(var le in bt)Fl(vt,le,{get:bt[le],enumerable:!0})},sc={};__export(sc,{ACTIONS:()=>Nd,ANIMATION_MIN_DURATION:()=>mc,CAPTURE_EVENTS_CLASS:()=>Ld,CTRLZOOM_TIMEOUT:()=>du,DBLCLICK_DELAY:()=>Ac,EASINGS:()=>Ud,ICONS:()=>jd,IDS:()=>Rd,KEY_CODES:()=>Od,LONGTOUCH_DELAY:()=>Ec,MOVE_THRESHOLD:()=>gc,SPHERE_RADIUS:()=>_u,TWOFINGERSOVERLAY_DELAY:()=>kc,VIEWER_DATA:()=>Md});var uc,mc=500,gc=4,Ac=300,Ec=500,kc=100,du=2e3,_u=10,Md="photoSphereViewer",Ld="psv--capture-event",Nd=(vt=>(vt.ROTATE_UP="ROTATE_UP",vt.ROTATE_DOWN="ROTATE_DOWN",vt.ROTATE_RIGHT="ROTATE_RIGHT",vt.ROTATE_LEFT="ROTATE_LEFT",vt.ZOOM_IN="ZOOM_IN",vt.ZOOM_OUT="ZOOM_OUT",vt))(Nd||{}),Rd={MENU:"menu",TWO_FINGERS:"twoFingers",CTRL_ZOOM:"ctrlZoom",ERROR:"error",DESCRIPTION:"description"},Od={Enter:"Enter",Control:"Control",Escape:"Escape",Space:" ",PageUp:"PageUp",PageDown:"PageDown",ArrowLeft:"ArrowLeft",ArrowUp:"ArrowUp",ArrowRight:"ArrowRight",ArrowDown:"ArrowDown",Delete:"Delete",Plus:"+",Minus:"-"},jd={arrow:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="40 40 432 432"><g transform="rotate(0, 256, 256)"><path fill="currentColor" d="M425.23 210.55H227.39a5 5 0 01-3.53-8.53l56.56-56.57a45.5 45.5 0 000-64.28 45.15 45.15 0 00-32.13-13.3 45.15 45.15 0 00-32.14 13.3L41.32 256l174.83 174.83a45.15 45.15 0 0032.14 13.3 45.15 45.15 0 0032.13-13.3 45.5 45.5 0 000-64.28l-56.57-56.57a5 5 0 013.54-8.53h197.84c25.06 0 45.45-20.39 45.45-45.45s-20.4-45.45-45.45-45.45z"/></g>\x3c!-- Created by Flatart from the Noun Project --\x3e</svg>\n',close:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><g fill="currentColor" transform=" translate(50, 50) rotate(45)"><rect x="-5" y="-65" width="10" height="130"/><rect x="-65" y="-5" width="130" height="10"/></g></svg>',download:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M83.3 35.6h-17V3H32.2v32.6H16.6l33.6 32.7 33-32.7z"/><path fill="currentColor" d="M83.3 64.2v16.3H16.6V64.2H-.1v32.6H100V64.2H83.3z"/>\x3c!--Created by Michael Zenaty from the Noun Project--\x3e</svg>\n',fullscreenIn:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M100 40H87.1V18.8h-21V6H100zM100 93.2H66V80.3h21.1v-21H100zM34 93.2H0v-34h12.9v21.1h21zM12.9 40H0V6h34v12.9H12.8z"/>\x3c!--Created by Garrett Knoll from the Noun Project--\x3e</svg>\n',fullscreenOut:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M66 7h13v21h21v13H66zM66 60.3h34v12.9H79v21H66zM0 60.3h34v34H21V73.1H0zM21 7h13v34H0V28h21z"/>\x3c!--Created by Garrett Knoll from the Noun Project--\x3e</svg>\n',info:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="currentColor" d="M28.3 26.1c-1 2.6-1.9 4.8-2.6 7-2.5 7.4-5 14.7-7.2 22-1.3 4.4.5 7.2 4.3 7.8 1.3.2 2.8.2 4.2-.1 8.2-2 11.9-8.6 15.7-15.2l-2.2 2a18.8 18.8 0 0 1-7.4 5.2 2 2 0 0 1-1.6-.2c-.2-.1 0-1 0-1.4l.8-1.8L41.9 28c.5-1.4.9-3 .7-4.4-.2-2.6-3-4.4-6.3-4.4-8.8.2-15 4.5-19.5 11.8-.2.3-.2.6-.3 1.3 3.7-2.8 6.8-6.1 11.8-6.2z"/><circle fill="currentColor" cx="39.3" cy="9.2" r="8.2"/>\x3c!--Created by Arafat Uddin from the Noun Project--\x3e</svg>\n',menu:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="10 10 80 80"><g fill="currentColor"><circle r="10" cx="20" cy="20"/><circle r="10" cx="50" cy="20"/><circle r="10" cx="80" cy="20"/><circle r="10" cx="20" cy="50"/><circle r="10" cx="50" cy="50"/><circle r="10" cx="80" cy="50"/><circle r="10" cx="20" cy="80"/><circle r="10" cx="50" cy="80"/><circle r="10" cx="80" cy="80"/></g>\x3c!-- Created by Richard Kun\xe1k from the Noun Project--\x3e</svg>\n',zoomIn:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="currentColor" d="M14.043 12.22a7.738 7.738 0 1 0-1.823 1.822l4.985 4.985c.503.504 1.32.504 1.822 0a1.285 1.285 0 0 0 0-1.822l-4.984-4.985zm-6.305 1.043a5.527 5.527 0 1 1 0-11.053 5.527 5.527 0 0 1 0 11.053z"/><path fill="currentColor" d="M8.728 4.009H6.744v2.737H4.006V8.73h2.738v2.736h1.984V8.73h2.737V6.746H8.728z"/>\x3c!--Created by Ryan Canning from the Noun Project--\x3e</svg>\n',zoomOut:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="currentColor" d="M14.043 12.22a7.738 7.738 0 1 0-1.823 1.822l4.985 4.985c.503.504 1.32.504 1.822 0a1.285 1.285 0 0 0 0-1.822l-4.984-4.985zm-6.305 1.043a5.527 5.527 0 1 1 0-11.053 5.527 5.527 0 0 1 0 11.053z"/><path fill="currentColor" d="M4.006 6.746h7.459V8.73H4.006z"/>\x3c!--Created by Ryan Canning from the Noun Project--\x3e</svg>\n'},Ud={linear:vt=>vt,inQuad:vt=>vt*vt,outQuad:vt=>vt*(2-vt),inOutQuad:vt=>vt<.5?2*vt*vt:(4-2*vt)*vt-1,inCubic:vt=>vt*vt*vt,outCubic:vt=>--vt*vt*vt+1,inOutCubic:vt=>vt<.5?4*vt*vt*vt:(vt-1)*(2*vt-2)*(2*vt-2)+1,inQuart:vt=>vt*vt*vt*vt,outQuart:vt=>1- --vt*vt*vt*vt,inOutQuart:vt=>vt<.5?8*vt*vt*vt*vt:1-8*--vt*vt*vt*vt,inQuint:vt=>vt*vt*vt*vt*vt,outQuint:vt=>1+--vt*vt*vt*vt*vt,inOutQuint:vt=>vt<.5?16*vt*vt*vt*vt*vt:1+16*--vt*vt*vt*vt*vt,inSine:vt=>1-Math.cos(vt*(Math.PI/2)),outSine:vt=>Math.sin(vt*(Math.PI/2)),inOutSine:vt=>.5-.5*Math.cos(Math.PI*vt),inExpo:vt=>Math.pow(2,10*(vt-1)),outExpo:vt=>1-Math.pow(2,-10*vt),inOutExpo:vt=>(vt=2*vt-1)<0?.5*Math.pow(2,10*vt):1-.5*Math.pow(2,-10*vt),inCirc:vt=>1-Math.sqrt(1-vt*vt),outCirc:vt=>Math.sqrt(1-(vt-1)*(vt-1)),inOutCirc:vt=>(vt*=2)<1?.5-.5*Math.sqrt(1-vt*vt):.5+.5*Math.sqrt(1-(vt-=2)*vt)},Gd={};function wrap(vt,bt){let le=vt%bt;return le<0&&(le+=bt),le}function sum(vt){return vt.reduce(((vt,bt)=>vt+bt),0)}function distance(vt,bt){return Math.sqrt(Math.pow(vt.x-bt.x,2)+Math.pow(vt.y-bt.y,2))}function angle(vt,bt){return Math.atan2(bt.y-vt.y,bt.x-vt.x)}function getShortestArc(vt,bt){return[0,2*Math.PI,2*-Math.PI].reduce(((le,ls)=>{const ho=bt-vt+ls;return Math.abs(ho)<Math.abs(le)?ho:le}),1/0)}function getAngle(vt,bt){return Math.acos(Math.cos(vt.pitch)*Math.cos(bt.pitch)*Math.cos(vt.yaw-bt.yaw)+Math.sin(vt.pitch)*Math.sin(bt.pitch))}function greatArcDistance(vt,bt){let[le,ls]=vt,[ho,Dl]=bt;le-ho>Math.PI?le-=2*Math.PI:le-ho<-Math.PI&&(le+=2*Math.PI);const Fl=(ho-le)*Math.cos((ls+Dl)/2),sc=Dl-ls;return Math.sqrt(Fl*Fl+sc*sc)}function getElement(vt){return"string"===typeof vt?vt.match(/^[a-z]/i)?document.getElementById(vt):document.querySelector(vt):vt}function toggleClass(vt,bt,le){void 0===le?vt.classList.toggle(bt):le?vt.classList.add(bt):le||vt.classList.remove(bt)}function addClasses(vt,bt){vt.classList.add(...bt.split(" ").filter((vt=>!!vt)))}function removeClasses(vt,bt){vt.classList.remove(...bt.split(" ").filter((vt=>!!vt)))}function hasParent(vt,bt){let le=vt;do{if(le===bt)return!0;le=le.parentElement}while(le);return!1}function getClosest(vt,bt){if(null==vt||!vt.matches)return null;let le=vt;do{if(le.matches(bt))return le;le=le.parentElement}while(le);return null}function getEventTarget(vt){return(null==vt?void 0:vt.composedPath()[0])||null}function getMatchingTarget(vt,bt){return vt?vt.composedPath().find((vt=>(vt instanceof HTMLElement||vt instanceof SVGElement)&&vt.matches(bt))):null}function getPosition(vt){let bt=0,le=0,ls=vt;for(;ls;)bt+=ls.offsetLeft-ls.scrollLeft+ls.clientLeft,le+=ls.offsetTop-ls.scrollTop+ls.clientTop,ls=ls.offsetParent;return bt-=window.scrollX,le-=window.scrollY,{x:bt,y:le}}function getStyleProperty(vt,bt){return window.getComputedStyle(vt).getPropertyValue(bt)}function getTouchData(vt){if(vt.touches.length<2)return null;const bt={x:vt.touches[0].clientX,y:vt.touches[0].clientY},le={x:vt.touches[1].clientX,y:vt.touches[1].clientY};return{distance:distance(bt,le),angle:angle(bt,le),center:{x:(bt.x+le.x)/2,y:(bt.y+le.y)/2}}}function isFullscreenEnabled(vt,bt){return void 0===bt&&(bt=!1),bt?vt===uc:document.fullscreenElement===vt}function requestFullscreen(vt,bt){void 0===bt&&(bt=!1),bt?(uc=vt,vt.classList.add("psv-fullscreen-emulation"),document.dispatchEvent(new Event("fullscreenchange"))):vt.requestFullscreen()}function exitFullscreen(vt){void 0===vt&&(vt=!1),vt?(uc.classList.remove("psv-fullscreen-emulation"),uc=null,document.dispatchEvent(new Event("fullscreenchange"))):document.exitFullscreen()}function keyPressMatch(vt,bt){let le,ls=!1,ho=!1,Dl=!1,Fl=!1;return"+"===bt?le=bt:bt.split("+").forEach((vt=>{switch(vt){case"Shift":ls=!0;break;case"Ctrl":ho=!0;break;case"Alt":Dl=!0;break;case"Meta":Fl=!0;break;case"Space":le=" ";break;case"Plus":le="+";break;case"Minus":le="-";break;default:le=vt}})),ls===vt.shiftKey&&ho===vt.ctrlKey&&Dl===vt.altKey&&Fl===vt.metaKey&&le===vt.key}function dasherize(vt){return vt.replace(/[A-Z](?:(?=[^A-Z])|[A-Z]*(?=[A-Z][^A-Z]|$))/g,((vt,bt)=>(bt>0?"-":"")+vt.toLowerCase()))}function throttle(vt,bt){let le=!1;return function(){for(var ls=arguments.length,ho=new Array(ls),Dl=0;Dl<ls;Dl++)ho[Dl]=arguments[Dl];le||(le=!0,setTimeout((()=>{vt.apply(this,ho),le=!1}),bt))}}function isPlainObject(vt){if("object"!==typeof vt||null===vt||"[object Object]"!==Object.prototype.toString.call(vt))return!1;if(null===Object.getPrototypeOf(vt))return!0;let bt=vt;for(;null!==Object.getPrototypeOf(bt);)bt=Object.getPrototypeOf(bt);return Object.getPrototypeOf(vt)===bt}function deepmerge(vt,bt){const le=bt;return function merge(vt,bt){return Array.isArray(bt)?(vt&&Array.isArray(vt)?vt.length=0:vt=[],bt.forEach(((bt,le)=>{vt[le]=merge(null,bt)}))):"object"===typeof bt?(vt&&!Array.isArray(vt)||(vt={}),Object.keys(bt).forEach((ls=>{"__proto__"!==ls&&("object"===typeof bt[ls]&&bt[ls]&&isPlainObject(bt[ls])?bt[ls]!==le&&(vt[ls]?merge(vt[ls],bt[ls]):vt[ls]=merge(null,bt[ls])):vt[ls]=bt[ls])}))):vt=bt,vt}(vt,bt)}function clone(vt){return deepmerge(null,vt)}function isEmpty(vt){return!vt||0===Object.keys(vt).length&&vt.constructor===Object}function isNil(vt){return null===vt||void 0===vt}function firstNonNull(){for(var vt=arguments.length,bt=new Array(vt),le=0;le<vt;le++)bt[le]=arguments[le];for(const ls of bt)if(!isNil(ls))return ls;return null}function deepEqual(vt,bt){if(vt===bt)return!0;if(isObject(vt)&&isObject(bt)){if(Object.keys(vt).length!==Object.keys(bt).length)return!1;for(const le of Object.keys(vt))if(!deepEqual(vt[le],bt[le]))return!1;return!0}return!1}function isObject(vt){return"object"===typeof vt&&null!==vt}__export(Gd,{Animation:()=>Kd,Dynamic:()=>Jd,MultiDynamic:()=>$d,PressHandler:()=>sp,Slider:()=>em,SliderDirection:()=>tm,addClasses:()=>addClasses,angle:()=>angle,applyEulerInverse:()=>applyEulerInverse,checkClosedShadowDom:()=>checkClosedShadowDom,checkStylesheet:()=>checkStylesheet,checkVersion:()=>checkVersion,cleanCssPosition:()=>cleanCssPosition,clone:()=>clone,createTexture:()=>createTexture,cssPositionIsOrdered:()=>cssPositionIsOrdered,dasherize:()=>dasherize,deepEqual:()=>deepEqual,deepmerge:()=>deepmerge,distance:()=>distance,exitFullscreen:()=>exitFullscreen,firstNonNull:()=>firstNonNull,getAbortError:()=>getAbortError,getAngle:()=>getAngle,getClosest:()=>getClosest,getConfigParser:()=>getConfigParser,getElement:()=>getElement,getEventTarget:()=>getEventTarget,getMatchingTarget:()=>getMatchingTarget,getPosition:()=>getPosition,getShortestArc:()=>getShortestArc,getStyleProperty:()=>getStyleProperty,getTouchData:()=>getTouchData,getXMPValue:()=>getXMPValue,greatArcDistance:()=>greatArcDistance,hasParent:()=>hasParent,invertResolvableBoolean:()=>invertResolvableBoolean,isAbortError:()=>isAbortError,isEmpty:()=>isEmpty,isExtendedPosition:()=>isExtendedPosition,isFullscreenEnabled:()=>isFullscreenEnabled,isNil:()=>isNil,isPlainObject:()=>isPlainObject,keyPressMatch:()=>keyPressMatch,logWarn:()=>logWarn,mergePanoData:()=>mergePanoData,parseAngle:()=>parseAngle,parsePoint:()=>parsePoint,parseSpeed:()=>parseSpeed,removeClasses:()=>removeClasses,requestFullscreen:()=>requestFullscreen,resolveBoolean:()=>resolveBoolean,speedToDuration:()=>speedToDuration,sum:()=>sum,throttle:()=>throttle,toggleClass:()=>toggleClass,wrap:()=>wrap});var qd=class _PSVError extends Error{constructor(vt,bt){super(bt&&bt instanceof Error?vt+": "+bt.message:vt),this.name="PSVError",null==Error.captureStackTrace||Error.captureStackTrace(this,_PSVError)}};function resolveBoolean(vt,bt){isPlainObject(vt)?(bt(vt.initial,!0),vt.promise.then((vt=>bt(vt,!1)))):bt(vt,!0)}function invertResolvableBoolean(vt){return{initial:!vt.initial,promise:vt.promise.then((vt=>!vt))}}function getAbortError(){const vt=new Error("Loading was aborted.");return vt.name="AbortError",vt}function isAbortError(vt){return"AbortError"===(null==vt?void 0:vt.name)}function logWarn(vt){console.warn("PhotoSphereViewer: "+vt)}function isExtendedPosition(vt){return!(!vt||Array.isArray(vt))&&[["textureX","textureY"],["yaw","pitch"]].some((bt=>{let[le,ls]=bt;return void 0!==vt[le]&&void 0!==vt[ls]}))}function getXMPValue(vt,bt,le){void 0===le&&(le=!0);let ls=vt.match("<GPano:"+bt+">(.*)</GPano:"+bt+">");if(null!==ls){const vt=le?parseInt(ls[1],10):parseFloat(ls[1]);return isNaN(vt)?null:vt}if(ls=vt.match("GPano:"+bt+'="(.*?)"'),null!==ls){const vt=le?parseInt(ls[1],10):parseFloat(ls[1]);return isNaN(vt)?null:vt}return null}var Hd={top:"0%",bottom:"100%",left:"0%",right:"100%",center:"50%"},Wd=["left","center","right"],Zd=["top","center","bottom"],Yd=[...Wd,...Zd],Qd="center";function parsePoint(vt){if(!vt)return{x:.5,y:.5};if("object"===typeof vt)return vt;let bt=vt.toLocaleLowerCase().split(" ").slice(0,2);1===bt.length&&(bt=Hd[bt[0]]?[bt[0],Qd]:[bt[0],bt[0]]);const le="left"!==bt[1]&&"right"!==bt[1]&&"top"!==bt[0]&&"bottom"!==bt[0];bt=bt.map((vt=>Hd[vt]||vt)),le||bt.reverse();const ls=bt.join(" ").match(/^([0-9.]+)% ([0-9.]+)%$/);return ls?{x:parseFloat(ls[1])/100,y:parseFloat(ls[2])/100}:{x:.5,y:.5}}function cleanCssPosition(vt,bt){let{allowCenter:le,cssOrder:ls}=void 0===bt?{allowCenter:!0,cssOrder:!0}:bt;return vt?("string"===typeof vt&&(vt=vt.split(" ")),1===vt.length&&(vt[0]===Qd?vt=[Qd,Qd]:-1!==Wd.indexOf(vt[0])?vt=[Qd,vt[0]]:-1!==Zd.indexOf(vt[0])&&(vt=[vt[0],Qd])),2!==vt.length||-1===Yd.indexOf(vt[0])||-1===Yd.indexOf(vt[1])?(logWarn("Unparsable position "+vt),null):le||vt[0]!==Qd||vt[1]!==Qd?(ls&&!cssPositionIsOrdered(vt)&&(vt=[vt[1],vt[0]]),vt[1]===Qd&&-1!==Wd.indexOf(vt[0])&&(vt=[Qd,vt[0]]),vt[0]===Qd&&-1!==Zd.indexOf(vt[1])&&(vt=[vt[1],Qd]),vt):(logWarn("Invalid position center center"),null)):null}function cssPositionIsOrdered(vt){return-1!==Zd.indexOf(vt[0])&&-1!==Wd.indexOf(vt[1])}function parseSpeed(vt){let bt;if("string"===typeof vt){const le=vt.toString().trim();let ls=parseFloat(le.replace(/^(-?[0-9]+(?:\.[0-9]*)?).*$/,"$1"));const Dl=le.replace(/^-?[0-9]+(?:\.[0-9]*)?(.*)$/,"$1").trim();switch(Dl.match(/(pm|per minute)$/)&&(ls/=60),Dl){case"dpm":case"degrees per minute":case"dps":case"degrees per second":bt=ho.cj9.degToRad(ls);break;case"rdpm":case"radians per minute":case"rdps":case"radians per second":bt=ls;break;case"rpm":case"revolutions per minute":case"rps":case"revolutions per second":bt=ls*Math.PI*2;break;default:throw new qd('Unknown speed unit "'+Dl+'"')}}else bt=vt;return bt}function speedToDuration(vt,bt){if("number"!==typeof vt){const le=parseSpeed(vt);return bt/Math.abs(le)*1e3}return Math.abs(vt)}function parseAngle(vt,bt,le){let ls;if(void 0===bt&&(bt=!1),void 0===le&&(le=bt),"string"===typeof vt){const bt=vt.toLowerCase().trim().match(/^(-?[0-9]+(?:\.[0-9]*)?)(.*)$/);if(!bt)throw new qd('Unknown angle "'+vt+'"');const le=parseFloat(bt[1]),Dl=bt[2];if(Dl)switch(Dl){case"deg":case"degs":ls=ho.cj9.degToRad(le);break;case"rad":case"rads":ls=le;break;default:throw new qd('Unknown angle unit "'+Dl+'"')}else ls=le}else{if("number"!==typeof vt||isNaN(vt))throw new qd('Unknown angle "'+vt+'"');ls=vt}return ls=wrap(bt?ls+Math.PI:ls,2*Math.PI),bt?ho.cj9.clamp(ls-Math.PI,-Math.PI/(le?2:1),Math.PI/(le?2:1)):ls}function createTexture(vt,bt){void 0===bt&&(bt=!1);const le=new ho.gPd(vt);return le.needsUpdate=!0,le.minFilter=bt?ho.$_I:ho.k6q,le.generateMipmaps=bt,le.anisotropy=bt?2:1,le}var Xd=new ho.PTz;function applyEulerInverse(vt,bt){Xd.setFromEuler(bt).invert(),vt.applyQuaternion(Xd)}function getConfigParser(vt,bt){const parser=function(le){const ho=clone((0,ls.A)({},vt,le)),Dl={};for(let[ls,Fl]of Object.entries(ho)){if(bt&&ls in bt)Fl=bt[ls](Fl,{rawConfig:ho,defValue:vt[ls]});else if(!(ls in vt)){logWarn("Unknown option "+ls);continue}Dl[ls]=Fl}return Dl};return parser.defaults=vt,parser.parsers=bt||{},parser}function checkStylesheet(vt,bt){"true"!==getStyleProperty(vt,"--psv-"+bt+"-loaded")&&console.error('PhotoSphereViewer: stylesheet "@photo-sphere-viewer/'+bt+'/index.css" is not loaded')}function checkVersion(vt,bt,le){bt&&bt!==le&&console.error("PhotoSphereViewer: @photo-sphere-viewer/"+vt+" is in version "+bt+" but @photo-sphere-viewer/core is in version "+le)}function checkClosedShadowDom(vt){do{if(vt instanceof ShadowRoot&&"closed"===vt.mode)return void console.error("PhotoSphereViewer: closed shadow DOM detected, the viewer might not work as expected");vt=vt.parentNode}while(vt)}function mergePanoData(vt,bt,le,ls){const ho={isEquirectangular:!0,fullWidth:firstNonNull(null==le?void 0:le.fullWidth,null==ls?void 0:ls.fullWidth),fullHeight:firstNonNull(null==le?void 0:le.fullHeight,null==ls?void 0:ls.fullHeight),croppedWidth:firstNonNull(null==le?void 0:le.croppedWidth,null==ls?void 0:ls.croppedWidth,vt),croppedHeight:firstNonNull(null==le?void 0:le.croppedHeight,null==ls?void 0:ls.croppedHeight,bt),croppedX:firstNonNull(null==le?void 0:le.croppedX,null==ls?void 0:ls.croppedX),croppedY:firstNonNull(null==le?void 0:le.croppedY,null==ls?void 0:ls.croppedY),poseHeading:firstNonNull(null==le?void 0:le.poseHeading,null==ls?void 0:ls.poseHeading,0),posePitch:firstNonNull(null==le?void 0:le.posePitch,null==ls?void 0:ls.posePitch,0),poseRoll:firstNonNull(null==le?void 0:le.poseRoll,null==ls?void 0:ls.poseRoll,0),initialHeading:null==ls?void 0:ls.initialHeading,initialPitch:null==ls?void 0:ls.initialPitch,initialFov:null==ls?void 0:ls.initialFov};if(ho.croppedWidth!==vt){const bt=vt/ho.croppedWidth;["fullWidth","fullHeight","croppedWidth","croppedHeight","croppedX","croppedY"].forEach((vt=>{ho[vt]&&(ho[vt]=Math.round(ho[vt]*bt))}))}return ho.fullWidth||ho.fullHeight||(ho.fullWidth=Math.max(ho.croppedWidth,2*ho.croppedHeight),ho.fullHeight=Math.round(ho.fullWidth/2)),ho.fullWidth||(ho.fullWidth=2*ho.fullHeight),ho.fullHeight||(ho.fullHeight=Math.round(ho.fullWidth/2)),null===ho.croppedX&&(ho.croppedX=Math.round((ho.fullWidth-vt)/2)),null===ho.croppedY&&(ho.croppedY=Math.round((ho.fullHeight-bt)/2)),Math.abs(ho.fullWidth-2*ho.fullHeight)>1&&(logWarn("Invalid panoData, fullWidth should be twice fullHeight"),ho.fullHeight=Math.round(ho.fullWidth/2)),ho.croppedX+ho.croppedWidth>ho.fullWidth&&(logWarn("Invalid panoData, croppedX + croppedWidth > fullWidth"),ho.croppedX=ho.fullWidth-ho.croppedWidth),ho.croppedY+ho.croppedHeight>ho.fullHeight&&(logWarn("Invalid panoData, croppedY + croppedHeight > fullHeight"),ho.croppedY=ho.fullHeight-ho.croppedHeight),ho.croppedX<0&&(logWarn("Invalid panoData, croppedX < 0"),ho.croppedX=0),ho.croppedY<0&&(logWarn("Invalid panoData, croppedY < 0"),ho.croppedY=0),ho}var Kd=class{constructor(vt){this.easing=Ud.linear,this.callbacks=[],this.resolved=!1,this.cancelled=!1,this.options=vt,vt?(vt.easing&&(this.easing="function"===typeof vt.easing?vt.easing:Ud[vt.easing]||Ud.linear),this.delayTimeout=setTimeout((()=>{this.delayTimeout=void 0,this.animationFrame=window.requestAnimationFrame((vt=>this.__run(vt)))}),vt.delay||0)):this.resolved=!0}__run(vt){if(this.cancelled)return;this.start||(this.start=vt);const bt=(vt-this.start)/this.options.duration,le={};if(bt<1){for(const[vt,ls]of Object.entries(this.options.properties))if(ls){const ho=ls.start+(ls.end-ls.start)*this.easing(bt);le[vt]=ho}this.options.onTick(le,bt),this.animationFrame=window.requestAnimationFrame((vt=>this.__run(vt)))}else{for(const[vt,bt]of Object.entries(this.options.properties))bt&&(le[vt]=bt.end);this.options.onTick(le,1),this.__resolve(!0),this.animationFrame=void 0}}__resolve(vt){vt?this.resolved=!0:this.cancelled=!0,this.callbacks.forEach((bt=>bt(vt))),this.callbacks.length=0}then(vt){return this.resolved||this.cancelled?Promise.resolve(this.resolved).then(vt):new Promise((vt=>{this.callbacks.push(vt)})).then(vt)}cancel(){this.cancelled||this.resolved||(this.__resolve(!1),this.delayTimeout&&(window.clearTimeout(this.delayTimeout),this.delayTimeout=void 0),this.animationFrame&&(window.cancelAnimationFrame(this.animationFrame),this.animationFrame=void 0))}},Jd=class{constructor(vt,bt){if(this.fn=vt,this.mode=0,this.speed=0,this.speedMult=0,this.currentSpeed=0,this.target=0,this.__current=0,this.min=bt.min,this.max=bt.max,this.wrap=bt.wrap,this.current=bt.defaultValue,this.wrap&&0!==this.min)throw new qd("invalid config");this.fn&&this.fn(this.current)}get current(){return this.__current}set current(vt){this.__current=vt}setSpeed(vt){this.speed=vt}goto(vt,bt){void 0===bt&&(bt=1),this.mode=2,this.target=this.wrap?wrap(vt,this.max):ho.cj9.clamp(vt,this.min,this.max),this.speedMult=bt}step(vt,bt){void 0===bt&&(bt=1),0===bt?this.setValue(this.current+vt):(2!==this.mode&&(this.target=this.current),this.goto(this.target+vt,bt))}roll(vt,bt){void 0===vt&&(vt=!1),void 0===bt&&(bt=1),this.mode=1,this.target=vt?-1/0:1/0,this.speedMult=bt}stop(){this.mode=0}setValue(vt){return this.target=this.wrap?wrap(vt,this.max):ho.cj9.clamp(vt,this.min,this.max),this.mode=0,this.currentSpeed=0,this.target!==this.current&&(this.current=this.target,this.fn&&this.fn(this.current),!0)}update(vt){if(2===this.mode){this.wrap&&Math.abs(this.target-this.current)>this.max/2&&(this.current=this.current<this.target?this.current+this.max:this.current-this.max);const vt=this.currentSpeed*this.currentSpeed/(this.speed*this.speedMult*4);Math.abs(this.target-this.current)<=vt&&(this.mode=0)}let bt=0===this.mode?0:this.speed*this.speedMult;this.target<this.current&&(bt=-bt),this.currentSpeed<bt?this.currentSpeed=Math.min(bt,this.currentSpeed+vt/1e3*this.speed*this.speedMult*2):this.currentSpeed>bt&&(this.currentSpeed=Math.max(bt,this.currentSpeed-vt/1e3*this.speed*this.speedMult*2));let le=null;return this.current>this.target&&this.currentSpeed?le=Math.max(this.target,this.current+this.currentSpeed*vt/1e3):this.current<this.target&&this.currentSpeed&&(le=Math.min(this.target,this.current+this.currentSpeed*vt/1e3)),null!==le&&(le=this.wrap?wrap(le,this.max):ho.cj9.clamp(le,this.min,this.max),le!==this.current)&&(this.current=le,this.fn&&this.fn(this.current),!0)}},$d=class{constructor(vt,bt){this.fn=vt,this.dynamics=bt,this.fn&&this.fn(this.current)}get current(){return Object.entries(this.dynamics).reduce(((vt,bt)=>{let[le,ls]=bt;return vt[le]=ls.current,vt}),{})}setSpeed(vt){for(const bt of Object.values(this.dynamics))bt.setSpeed(vt)}goto(vt,bt){void 0===bt&&(bt=1);for(const[le,ls]of Object.entries(vt))this.dynamics[le].goto(ls,bt)}step(vt,bt){if(void 0===bt&&(bt=1),0===bt)this.setValue(Object.keys(vt).reduce(((bt,le)=>(bt[le]=vt[le]+this.dynamics[le].current,bt)),{}));else for(const[le,ls]of Object.entries(vt))this.dynamics[le].step(ls,bt)}roll(vt,bt){void 0===bt&&(bt=1);for(const[le,ls]of Object.entries(vt))this.dynamics[le].roll(ls,bt)}stop(){for(const vt of Object.values(this.dynamics))vt.stop()}setValue(vt){let bt=!1;for(const[le,ls]of Object.entries(vt))bt=this.dynamics[le].setValue(ls)||bt;return bt&&this.fn&&this.fn(this.current),bt}update(vt){let bt=!1;for(const le of Object.values(this.dynamics))bt=le.update(vt)||bt;return bt&&this.fn&&this.fn(this.current),bt}},sp=class{constructor(vt){void 0===vt&&(vt=200),this.delay=vt,this.time=0,this.delay=vt}get pending(){return 0!==this.time}down(vt){this.timeout&&(clearTimeout(this.timeout),this.timeout=void 0),this.time=(new Date).getTime(),this.data=vt}up(vt){if(!this.time)return;Date.now()-this.time<this.delay?this.timeout=setTimeout((()=>{vt(this.data),this.timeout=void 0,this.time=0,this.data=void 0}),this.delay):(vt(this.data),this.time=0,this.data=void 0)}},tm=(vt=>(vt.VERTICAL="VERTICAL",vt.HORIZONTAL="HORIZONTAL",vt))(tm||{}),em=class{constructor(vt,bt,le){this.container=vt,this.direction=bt,this.listener=le,this.mousedown=!1,this.mouseover=!1,this.container.addEventListener("click",this),this.container.addEventListener("mousedown",this),this.container.addEventListener("mouseenter",this),this.container.addEventListener("mouseleave",this),this.container.addEventListener("touchstart",this),this.container.addEventListener("mousemove",this,!0),this.container.addEventListener("touchmove",this,!0),window.addEventListener("mouseup",this),window.addEventListener("touchend",this)}get isVertical(){return"VERTICAL"===this.direction}get isHorizontal(){return"HORIZONTAL"===this.direction}destroy(){window.removeEventListener("mouseup",this),window.removeEventListener("touchend",this)}handleEvent(vt){switch(vt.type){case"click":vt.stopPropagation();break;case"mousedown":this.__onMouseDown(vt);break;case"mouseenter":this.__onMouseEnter(vt);break;case"mouseleave":this.__onMouseLeave(vt);break;case"touchstart":this.__onTouchStart(vt);break;case"mousemove":this.__onMouseMove(vt);break;case"touchmove":this.__onTouchMove(vt);break;case"mouseup":this.__onMouseUp(vt);break;case"touchend":this.__onTouchEnd(vt)}}__onMouseDown(vt){this.mousedown=!0,this.__update(vt.clientX,vt.clientY,!0)}__onMouseEnter(vt){this.mouseover=!0,this.__update(vt.clientX,vt.clientY,!0)}__onTouchStart(vt){this.mouseover=!0,this.mousedown=!0;const bt=vt.changedTouches[0];this.__update(bt.clientX,bt.clientY,!0)}__onMouseMove(vt){(this.mousedown||this.mouseover)&&(vt.stopPropagation(),this.__update(vt.clientX,vt.clientY,!0))}__onTouchMove(vt){if(this.mousedown||this.mouseover){vt.stopPropagation();const bt=vt.changedTouches[0];this.__update(bt.clientX,bt.clientY,!0)}}__onMouseUp(vt){this.mousedown&&(this.mousedown=!1,this.__update(vt.clientX,vt.clientY,!1))}__onMouseLeave(vt){this.mouseover&&(this.mouseover=!1,this.__update(vt.clientX,vt.clientY,!0))}__onTouchEnd(vt){if(this.mousedown){this.mouseover=!1,this.mousedown=!1;const bt=vt.changedTouches[0];this.__update(bt.clientX,bt.clientY,!1)}}__update(vt,bt,le){const ls=this.container.getBoundingClientRect();let Dl;Dl=this.isVertical?ho.cj9.clamp((ls.bottom-bt)/ls.height,0,1):ho.cj9.clamp((vt-ls.left)/ls.width,0,1),this.listener({value:Dl,click:!le,mousedown:this.mousedown,mouseover:this.mouseover,cursor:{clientX:vt,clientY:bt}})}},im={};__export(im,{BeforeAnimateEvent:()=>om,BeforeRenderEvent:()=>cm,BeforeRotateEvent:()=>hm,ClickEvent:()=>pm,ConfigChangedEvent:()=>fm,DoubleClickEvent:()=>Am,FullscreenEvent:()=>ym,HideNotificationEvent:()=>xm,HideOverlayEvent:()=>wm,HidePanelEvent:()=>Mm,HideTooltipEvent:()=>Tm,KeypressEvent:()=>Cm,LoadProgressEvent:()=>Dm,ObjectEnterEvent:()=>ug,ObjectEvent:()=>lg,ObjectHoverEvent:()=>mg,ObjectLeaveEvent:()=>dg,PanoramaErrorEvent:()=>Fm,PanoramaLoadEvent:()=>Pm,PanoramaLoadedEvent:()=>Nm,PositionUpdatedEvent:()=>Um,ReadyEvent:()=>Hm,RenderEvent:()=>Zm,RollUpdatedEvent:()=>Gm,ShowNotificationEvent:()=>Qm,ShowOverlayEvent:()=>Km,ShowPanelEvent:()=>$m,ShowTooltipEvent:()=>eg,SizeUpdatedEvent:()=>ng,StopAllEvent:()=>ag,TransitionDoneEvent:()=>Bm,ViewerEvent:()=>am,ZoomUpdatedEvent:()=>og});var nm=class extends Event{constructor(vt,bt){void 0===bt&&(bt=!1),super(vt,{cancelable:bt})}},rm=class extends EventTarget{dispatchEvent(vt){return super.dispatchEvent(vt)}addEventListener(vt,bt,le){super.addEventListener(vt,bt,le)}removeEventListener(vt,bt,le){super.removeEventListener(vt,bt,le)}},am=class extends nm{},sm=class _BeforeAnimateEvent extends am{constructor(vt,bt){super(_BeforeAnimateEvent.type,!0),this.position=vt,this.zoomLevel=bt}};sm.type="before-animate";var om=sm,lm=class _BeforeRenderEvent extends am{constructor(vt,bt){super(_BeforeRenderEvent.type),this.timestamp=vt,this.elapsed=bt}};lm.type="before-render";var cm=lm,um=class _BeforeRotateEvent extends am{constructor(vt){super(_BeforeRotateEvent.type,!0),this.position=vt}};um.type="before-rotate";var hm=um,dm=class _ClickEvent extends am{constructor(vt){super(_ClickEvent.type),this.data=vt}};dm.type="click";var pm=dm,mm=class _ConfigChangedEvent extends am{constructor(vt){super(_ConfigChangedEvent.type),this.options=vt}containsOptions(){for(var vt=arguments.length,bt=new Array(vt),le=0;le<vt;le++)bt[le]=arguments[le];return bt.some((vt=>this.options.includes(vt)))}};mm.type="config-changed";var fm=mm,gm=class _DoubleClickEvent extends am{constructor(vt){super(_DoubleClickEvent.type),this.data=vt}};gm.type="dblclick";var Am=gm,_m=class _FullscreenEvent extends am{constructor(vt){super(_FullscreenEvent.type),this.fullscreenEnabled=vt}};_m.type="fullscreen";var ym=_m,vm=class _HideNotificationEvent extends am{constructor(vt){super(_HideNotificationEvent.type),this.notificationId=vt}};vm.type="hide-notification";var xm=vm,bm=class _HideOverlayEvent extends am{constructor(vt){super(_HideOverlayEvent.type),this.overlayId=vt}};bm.type="hide-overlay";var wm=bm,Em=class _HidePanelEvent extends am{constructor(vt){super(_HidePanelEvent.type),this.panelId=vt}};Em.type="hide-panel";var Mm=Em,Sm=class _HideTooltipEvent extends am{constructor(vt){super(_HideTooltipEvent.type),this.tooltipData=vt}};Sm.type="hide-tooltip";var Tm=Sm,km=class _KeypressEvent extends am{constructor(vt,bt){super(_KeypressEvent.type,!0),this.key=vt,this.originalEvent=bt}matches(vt){return keyPressMatch(this.originalEvent,vt)}};km.type="key-press";var Cm=km,Im=class _LoadProgressEvent extends am{constructor(vt){super(_LoadProgressEvent.type),this.progress=vt}};Im.type="load-progress";var Dm=Im,Lm=class _PanoramaLoadEvent extends am{constructor(vt){super(_PanoramaLoadEvent.type),this.panorama=vt}};Lm.type="panorama-load";var Pm=Lm,zm=class _PanoramaLoadedEvent extends am{constructor(vt){super(_PanoramaLoadedEvent.type),this.data=vt}};zm.type="panorama-loaded";var Nm=zm,Rm=class _PanoramaErrorEvent extends am{constructor(vt,bt){super(_PanoramaErrorEvent.type),this.panorama=vt,this.error=bt}};Rm.type="panorama-error";var Fm=Rm,Om=class _TransitionDoneEvent extends am{constructor(vt){super(_TransitionDoneEvent.type),this.completed=vt}};Om.type="transition-done";var Bm=Om,jm=class _PositionUpdatedEvent extends am{constructor(vt){super(_PositionUpdatedEvent.type),this.position=vt}};jm.type="position-updated";var Um=jm,Vm=class _RollUpdatedEvent extends am{constructor(vt){super(_RollUpdatedEvent.type),this.roll=vt}};Vm.type="roll-updated";var Gm=Vm,qm=class _ReadyEvent extends am{constructor(){super(_ReadyEvent.type)}};qm.type="ready";var Hm=qm,Wm=class _RenderEvent extends am{constructor(){super(_RenderEvent.type)}};Wm.type="render";var Zm=Wm,Ym=class _ShowNotificationEvent extends am{constructor(vt){super(_ShowNotificationEvent.type),this.notificationId=vt}};Ym.type="show-notification";var Qm=Ym,Xm=class _ShowOverlayEvent extends am{constructor(vt){super(_ShowOverlayEvent.type),this.overlayId=vt}};Xm.type="show-overlay";var Km=Xm,Jm=class _ShowPanelEvent extends am{constructor(vt){super(_ShowPanelEvent.type),this.panelId=vt}};Jm.type="show-panel";var $m=Jm,tg=class _ShowTooltipEvent extends am{constructor(vt,bt){super(_ShowTooltipEvent.type),this.tooltip=vt,this.tooltipData=bt}};tg.type="show-tooltip";var eg=tg,ig=class _SizeUpdatedEvent extends am{constructor(vt){super(_SizeUpdatedEvent.type),this.size=vt}};ig.type="size-updated";var ng=ig,rg=class _StopAllEvent extends am{constructor(){super(_StopAllEvent.type)}};rg.type="stop-all";var ag=rg,sg=class _ZoomUpdatedEvent extends am{constructor(vt){super(_ZoomUpdatedEvent.type),this.zoomLevel=vt}};sg.type="zoom-updated";var og=sg,lg=class extends am{constructor(vt,bt,le,ls,ho){super(vt),this.originalEvent=bt,this.object=le,this.viewerPoint=ls,this.userDataKey=ho}},cg=class _ObjectEnterEvent extends lg{constructor(vt,bt,le,ls){super(_ObjectEnterEvent.type,vt,bt,le,ls)}};cg.type="enter-object";var ug=cg,hg=class _ObjectLeaveEvent extends lg{constructor(vt,bt,le,ls){super(_ObjectLeaveEvent.type,vt,bt,le,ls)}};hg.type="leave-object";var dg=hg,pg=class _ObjectHoverEvent extends lg{constructor(vt,bt,le,ls){super(_ObjectHoverEvent.type,vt,bt,le,ls)}};pg.type="hover-object";var mg=pg,fg=class{constructor(vt){this.viewer=vt}init(){}destroy(){}supportsTransition(vt){return!1}supportsPreload(vt){return!1}textureCoordsToSphericalCoords(vt,bt){throw new qd("Current adapter does not support texture coordinates.")}sphericalCoordsToTextureCoords(vt,bt){throw new qd("Current adapter does not support texture coordinates.")}};function adapterInterop(vt){if(vt)for(const[,bt]of[["_",vt],...Object.entries(vt)])if(bt.prototype instanceof fg)return checkVersion(bt.id,bt.VERSION,"5.14.1"),bt;return null}fg.supportsDownload=!1;var gg=Md+"_touchSupport",Ag={loaded:!1,pixelRatio:1,isWebGLSupported:!1,maxTextureWidth:0,isTouchEnabled:null,__maxCanvasWidth:null,isIphone:!1,get maxCanvasWidth(){return null===this.__maxCanvasWidth&&(this.__maxCanvasWidth=function(vt){let bt=vt,le=!1;const ls=document.createElement("canvas"),ho=ls.getContext("2d");ls.width=1,ls.height=1;for(;bt>1024&&!le;){const vt=document.createElement("canvas"),ls=vt.getContext("2d");vt.width=bt,vt.height=bt/2;try{ls.fillStyle="white",ls.fillRect(bt-1,bt/2-1,1,1),ho.drawImage(vt,bt-1,bt/2-1,1,1,0,0,1,1),ho.getImageData(0,0,1,1).data[0]>0&&(le=!0)}catch(Dl){}vt.width=0,vt.height=0,le||(bt/=2)}if(le)return bt;throw new qd("Unable to detect system capabilities")}(this.maxTextureWidth)),this.__maxCanvasWidth},load(){if(!this.loaded){const vt=function(){try{return document.createElement("canvas").getContext("webgl2")}catch(vt){return null}}();this.pixelRatio=window.devicePixelRatio||1,this.isWebGLSupported=!!vt,this.maxTextureWidth=vt?vt.getParameter(vt.MAX_TEXTURE_SIZE):0,this.isTouchEnabled=function(){let vt="ontouchstart"in window||navigator.maxTouchPoints>0;gg in localStorage&&(vt="true"===localStorage[gg]);const bt=new Promise((bt=>{const clear=()=>{window.removeEventListener("mousedown",listenerMouse),window.removeEventListener("touchstart",listenerTouch),clearTimeout(le)},listenerMouse=()=>{clear(),localStorage[gg]=!1,bt(!1)},listenerTouch=()=>{clear(),localStorage[gg]=!0,bt(!0)},listenerTimeout=()=>{clear(),localStorage[gg]=vt,bt(vt)};window.addEventListener("mousedown",listenerMouse,!1),window.addEventListener("touchstart",listenerTouch,!1);const le=setTimeout(listenerTimeout,1e4)}));return{initial:vt,promise:bt}}(),this.isIphone=/iPhone/i.test(navigator.userAgent),this.loaded=!0}if(!Ag.isWebGLSupported)throw new qd("WebGL 2 is not supported.");if(0===Ag.maxTextureWidth)throw new qd("Unable to detect system capabilities")}};var _g=getConfigParser({resolution:64,useXmpData:!0,blur:!1},{resolution:vt=>{if(!vt||!ho.cj9.isPowerOfTwo(vt))throw new qd("EquirectangularAdapter resolution must be power of two.");return vt}}),yg=class _EquirectangularAdapter extends fg{static withConfig(vt){return[_EquirectangularAdapter,vt]}constructor(vt,bt){super(vt),this.config=_g(bt),this.SPHERE_SEGMENTS=this.config.resolution,this.SPHERE_HORIZONTAL_SEGMENTS=this.SPHERE_SEGMENTS/2}supportsTransition(){return!0}supportsPreload(){return!0}textureCoordsToSphericalCoords(vt,bt){if(isNil(vt.textureX)||isNil(vt.textureY))throw new qd("Texture position is missing 'textureX' or 'textureY'");const le=(vt.textureX+bt.croppedX)/bt.fullWidth*Math.PI*2,ls=(vt.textureY+bt.croppedY)/bt.fullHeight*Math.PI;return{yaw:le>=Math.PI?le-Math.PI:le+Math.PI,pitch:Math.PI/2-ls}}sphericalCoordsToTextureCoords(vt,bt){const le=vt.yaw/Math.PI/2*bt.fullWidth,ls=vt.pitch/Math.PI*bt.fullHeight;let ho=Math.round(vt.yaw<Math.PI?le+bt.fullWidth/2:le-bt.fullWidth/2)-bt.croppedX,Dl=Math.round(bt.fullHeight/2-ls)-bt.croppedY;return(ho<0||ho>bt.croppedWidth||Dl<0||Dl>bt.croppedHeight)&&(ho=Dl=void 0),{textureX:ho,textureY:Dl}}async loadTexture(vt,bt,le,ho){if(void 0===bt&&(bt=!0),void 0===ho&&(ho=this.config.useXmpData),"string"!==typeof vt&&("object"!==typeof vt||!vt.path))return Promise.reject(new qd("Invalid panorama url, are you using the right adapter?"));let Dl;Dl="string"===typeof vt?{path:vt,data:le}:(0,ls.A)({data:le},vt);const Fl=await this.viewer.textureLoader.loadFile(Dl.path,bt?vt=>this.viewer.textureLoader.dispatchProgress(vt):null,Dl.path),sc=ho?await this.loadXMP(Fl):null,uc=await this.viewer.textureLoader.blobToImage(Fl);"function"===typeof Dl.data&&(Dl.data=Dl.data(uc,sc));const mc=mergePanoData(uc.width,uc.height,Dl.data,sc);return{panorama:vt,texture:this.createEquirectangularTexture(uc),panoData:mc,cacheKey:Dl.path}}async loadXMP(vt){const bt=await this.loadBlobAsString(vt),le=bt.indexOf("<x:xmpmeta");if(-1===le)return null;const ls=bt.indexOf("</x:xmpmeta>",le);if(-1===ls)return null;const ho=bt.substring(le,ls);return ho.includes("GPano:")?{fullWidth:getXMPValue(ho,"FullPanoWidthPixels"),fullHeight:getXMPValue(ho,"FullPanoHeightPixels"),croppedWidth:getXMPValue(ho,"CroppedAreaImageWidthPixels"),croppedHeight:getXMPValue(ho,"CroppedAreaImageHeightPixels"),croppedX:getXMPValue(ho,"CroppedAreaLeftPixels"),croppedY:getXMPValue(ho,"CroppedAreaTopPixels"),poseHeading:getXMPValue(ho,"PoseHeadingDegrees",!1),posePitch:getXMPValue(ho,"PosePitchDegrees",!1),poseRoll:getXMPValue(ho,"PoseRollDegrees",!1),initialHeading:getXMPValue(ho,"InitialViewHeadingDegrees",!1),initialPitch:getXMPValue(ho,"InitialViewPitchDegrees",!1),initialFov:getXMPValue(ho,"InitialHorizontalFOVDegrees",!1)}:null}loadBlobAsString(vt){return new Promise(((bt,le)=>{const ls=new FileReader;ls.onload=()=>bt(ls.result),ls.onerror=le,ls.readAsText(vt)}))}createEquirectangularTexture(vt){if(this.config.blur||vt.width>Ag.maxTextureWidth){const bt=Math.min(1,Ag.maxCanvasWidth/vt.width),le=new OffscreenCanvas(Math.floor(vt.width*bt),Math.floor(vt.height*bt)),ls=le.getContext("2d");return this.config.blur&&(ls.filter="blur("+le.width/2048+"px)"),ls.drawImage(vt,0,0,le.width,le.height),createTexture(le)}return createTexture(vt)}createMesh(vt){const bt=vt.croppedX/vt.fullWidth*2*Math.PI,le=vt.croppedWidth/vt.fullWidth*2*Math.PI,ls=vt.croppedY/vt.fullHeight*Math.PI,Dl=vt.croppedHeight/vt.fullHeight*Math.PI,Fl=new ho.Gu$(_u,Math.round(this.SPHERE_SEGMENTS/(2*Math.PI)*le),Math.round(this.SPHERE_HORIZONTAL_SEGMENTS/Math.PI*Dl),-Math.PI/2+bt,le,ls,Dl).scale(-1,1,1),sc=new ho.V9B({depthTest:!1,depthWrite:!1});return new ho.eaF(Fl,sc)}setTexture(vt,bt){vt.material.map=bt.texture}setTextureOpacity(vt,bt){vt.material.opacity=bt,vt.material.transparent=bt<1}disposeTexture(vt){let{texture:bt}=vt;bt.dispose()}disposeMesh(vt){vt.geometry.dispose(),vt.material.dispose()}};yg.id="equirectangular",yg.VERSION="5.14.1",yg.supportsDownload=!0;var vg=yg,xg=class _DualFisheyeAdapter extends vg{static withConfig(vt){return[_DualFisheyeAdapter,vt]}constructor(vt,bt){var le;super(vt,{resolution:null!=(le=null==bt?void 0:bt.resolution)?le:64,useXmpData:!1})}async loadTexture(vt,bt){const le=await super.loadTexture(vt,bt,null,!1);return le.panoData=null,le}createMesh(){const vt=new ho.Gu$(_u,this.SPHERE_SEGMENTS,this.SPHERE_HORIZONTAL_SEGMENTS).scale(-1,1,1).toNonIndexed(),bt=vt.getAttribute("uv"),le=vt.getAttribute("normal");for(let ho=0;ho<bt.count;ho++)for(let vt=0;vt<3;vt++){const ls=3*ho+vt,Dl=le.getX(ls),Fl=le.getY(ls),sc=le.getZ(ls),uc=.947;if(ho<bt.count/6){const vt=0===Dl&&0===sc?1:Math.acos(Fl)/Math.sqrt(Dl*Dl+sc*sc)*(2/Math.PI);bt.setXY(ls,Dl*(uc/4)*vt+1/4,sc*(uc/2)*vt+.5)}else{const vt=0===Dl&&0===sc?1:Math.acos(-Fl)/Math.sqrt(Dl*Dl+sc*sc)*(2/Math.PI);bt.setXY(ls,uc/4*-Dl*vt+3/4,sc*(uc/2)*vt+.5)}}vt.rotateX(-Math.PI/2),vt.rotateY(Math.PI);const ls=new ho.V9B({depthTest:!1,depthWrite:!1});return new ho.eaF(vt,ls)}};xg.id="dual-fisheye",xg.VERSION="5.14.1";var bg=class _AbstractComponent{constructor(vt,bt){var le;this.parent=vt,this.children=[],this.state={visible:!0},this.viewer=vt instanceof _AbstractComponent?vt.viewer:vt,this.container=document.createElement(null!=(le=bt.tagName)?le:"div"),this.container.className=bt.className||"",this.parent.children.push(this),this.parent.container.appendChild(this.container)}destroy(){this.parent.container.removeChild(this.container);const vt=this.parent.children.indexOf(this);-1!==vt&&this.parent.children.splice(vt,1),this.children.slice().forEach((vt=>vt.destroy())),this.children.length=0}toggle(vt){void 0===vt&&(vt=!this.isVisible()),vt?this.show():this.hide()}hide(vt){this.container.style.display="none",this.state.visible=!1}show(vt){this.container.style.display="",this.state.visible=!0}isVisible(){return this.state.visible}},wg=getConfigParser({id:null,tagName:null,className:null,title:null,hoverScale:!1,collapsable:!1,tabbable:!0,icon:null,iconActive:null}),Eg=class extends bg{constructor(vt,bt){var le;(super(vt,{tagName:bt.tagName,className:"psv-button "+(bt.hoverScale?"psv-button--hover-scale":"")+" "+(bt.className||"")}),this.state={visible:!0,enabled:!0,supported:!0,collapsed:!1,active:!1,width:0},this.config=wg(bt),bt.id||(this.config.id=this.constructor.id),bt.icon&&this.__setIcon(bt.icon),this.state.width=this.container.offsetWidth,this.config.title)?this.container.title=null!=(le=this.viewer.config.lang[this.config.title])?le:this.config.title:this.id&&this.id in this.viewer.config.lang&&(this.container.title=this.viewer.config.lang[this.id]);bt.tabbable&&(this.container.tabIndex=0),this.container.addEventListener("click",(vt=>{this.state.enabled&&this.onClick(),vt.stopPropagation()})),this.container.addEventListener("keydown",(vt=>{vt.key===Od.Enter&&this.state.enabled&&(this.onClick(),vt.stopPropagation())}))}get id(){return this.config.id}get title(){return this.container.title}get content(){return this.container.innerHTML}get width(){return this.state.width}get collapsable(){return this.config.collapsable}show(vt){void 0===vt&&(vt=!0),this.isVisible()||(this.state.visible=!0,this.state.collapsed||(this.container.style.display=""),vt&&this.viewer.navbar.autoSize())}hide(vt){void 0===vt&&(vt=!0),this.isVisible()&&(this.state.visible=!1,this.container.style.display="none",vt&&this.viewer.navbar.autoSize())}checkSupported(){resolveBoolean(this.isSupported(),((vt,bt)=>{this.state&&(this.state.supported=vt,bt?vt||this.hide():this.toggle(vt))}))}autoSize(){}isSupported(){return!0}toggleActive(vt){void 0===vt&&(vt=!this.state.active),vt!==this.state.active&&(this.state.active=vt,toggleClass(this.container,"psv-button--active",this.state.active),this.config.iconActive&&this.__setIcon(this.state.active?this.config.iconActive:this.config.icon))}disable(){this.container.classList.add("psv-button--disabled"),this.state.enabled=!1}enable(){this.container.classList.remove("psv-button--disabled"),this.state.enabled=!0}collapse(){this.state.collapsed=!0,this.container.style.display="none"}uncollapse(){this.state.collapsed=!1,this.state.visible&&(this.container.style.display="")}__setIcon(vt){this.container.innerHTML=vt,addClasses(this.container.querySelector("svg"),"psv-button-svg")}},Mg=class extends Eg{constructor(vt,bt){var le;super(vt,{id:null!=(le=bt.id)?le:"psvButton-"+Math.random().toString(36).substring(2),className:"psv-custom-button "+(bt.className||""),hoverScale:!1,collapsable:!1!==bt.collapsable,tabbable:!1!==bt.tabbable,title:bt.title}),this.customOnClick=bt.onClick,bt.content&&("string"===typeof bt.content?this.container.innerHTML=bt.content:(this.container.classList.add("psv-custom-button--no-padding"),bt.content.style.height="100%",null==bt.content.attachViewer||bt.content.attachViewer(this.viewer),this.container.appendChild(bt.content))),this.state.width=this.container.offsetWidth,bt.disabled&&this.disable(),!1===bt.visible&&this.hide()}onClick(){var vt;null==(vt=this.customOnClick)||vt.call(this,this.viewer)}},Sg=class extends Eg{constructor(vt){super(vt,{className:"psv-description-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:jd.info}),this.mode=0,this.viewer.addEventListener(xm.type,this),this.viewer.addEventListener(Qm.type,this),this.viewer.addEventListener(Mm.type,this),this.viewer.addEventListener($m.type,this),this.viewer.addEventListener(fm.type,this)}destroy(){this.viewer.removeEventListener(xm.type,this),this.viewer.removeEventListener(Qm.type,this),this.viewer.removeEventListener(Mm.type,this),this.viewer.removeEventListener($m.type,this),this.viewer.removeEventListener(fm.type,this),super.destroy()}handleEvent(vt){if(vt instanceof fm)return void(vt.containsOptions("description")&&this.autoSize(!0));if(!this.mode)return;let bt=!1;vt instanceof xm?bt=1===this.mode:vt instanceof Qm?bt=1===this.mode&&vt.notificationId!==Rd.DESCRIPTION:vt instanceof Mm?bt=2===this.mode:vt instanceof $m&&(bt=2===this.mode&&vt.panelId!==Rd.DESCRIPTION),bt&&(this.toggleActive(!1),this.mode=0)}onClick(){this.mode?this.__close():this.__open()}hide(vt){super.hide(vt),this.mode&&this.__close()}autoSize(vt){if(void 0===vt&&(vt=!1),vt){const vt=this.viewer.navbar.getButton("caption",!1),bt=vt&&!vt.isVisible(),le=!!this.viewer.config.description;bt||le?this.show(!1):this.hide(!1)}}__close(){switch(this.mode){case 1:this.viewer.notification.hide(Rd.DESCRIPTION);break;case 2:this.viewer.panel.hide(Rd.DESCRIPTION)}}__open(){this.toggleActive(!0),this.viewer.config.description?(this.mode=2,this.viewer.panel.show({id:Rd.DESCRIPTION,content:(this.viewer.config.caption?"<p>"+this.viewer.config.caption+"</p>":"")+this.viewer.config.description})):(this.mode=1,this.viewer.notification.show({id:Rd.DESCRIPTION,content:this.viewer.config.caption}))}};Sg.id="description";var Tg=class extends Eg{constructor(vt){super(vt,{tagName:"a",className:"psv-download-button",hoverScale:!0,collapsable:!0,tabbable:!0,icon:jd.download}),this.viewer.addEventListener(fm.type,this),this.viewer.addEventListener(Nm.type,this)}destroy(){this.viewer.removeEventListener(fm.type,this),this.viewer.removeEventListener(Nm.type,this),super.destroy()}handleEvent(vt){vt instanceof fm?(vt.containsOptions("downloadUrl")&&this.checkSupported(),vt.containsOptions("downloadUrl","downloadName")&&this.__update()):vt instanceof Nm&&this.__update()}onClick(){}checkSupported(){this.viewer.adapter.constructor.supportsDownload||this.viewer.config.downloadUrl?this.show():this.hide()}__update(){const vt=this.container;vt.href=this.viewer.config.downloadUrl||this.viewer.config.panorama,vt.target="_blank",vt.href.startsWith("data:")&&!this.viewer.config.downloadName?vt.download="panorama."+vt.href.substring(0,vt.href.indexOf(";")).split("/").pop():vt.download=this.viewer.config.downloadName||vt.href.split("/").pop()}};Tg.id="download";var kg=class extends Eg{constructor(vt){super(vt,{className:"psv-fullscreen-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:jd.fullscreenIn,iconActive:jd.fullscreenOut}),this.viewer.addEventListener(ym.type,this)}destroy(){this.viewer.removeEventListener(ym.type,this),super.destroy()}handleEvent(vt){vt instanceof ym&&this.toggleActive(vt.fullscreenEnabled)}onClick(){this.viewer.toggleFullscreen()}};kg.id="fullscreen";var Cg=class extends Eg{constructor(vt){super(vt,{className:"psv-menu-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:jd.menu}),this.viewer.addEventListener($m.type,this),this.viewer.addEventListener(Mm.type,this),super.hide()}destroy(){this.viewer.removeEventListener($m.type,this),this.viewer.removeEventListener(Mm.type,this),super.destroy()}handleEvent(vt){vt instanceof $m?this.toggleActive(vt.panelId===Rd.MENU):vt instanceof Mm&&this.toggleActive(!1)}onClick(){this.state.active?this.__hideMenu():this.__showMenu()}hide(vt){super.hide(vt),this.__hideMenu()}show(vt){super.show(vt),this.state.active&&this.__showMenu()}__showMenu(){var vt,bt;this.viewer.panel.show({id:Rd.MENU,content:(vt=this.viewer.navbar.collapsed,bt=this.viewer.config.lang.menu,'\n<div class="psv-panel-menu psv-panel-menu--stripped">\n <h1 class="psv-panel-menu-title">'+jd.menu+" "+bt+'</h1>\n <ul class="psv-panel-menu-list">\n '+vt.map((vt=>'\n <li data-psv-button="'+vt.id+'" class="psv-panel-menu-item" tabindex="0">\n <span class="psv-panel-menu-item-icon">'+vt.content+'</span>\n <span class="psv-panel-menu-item-label">'+vt.title+"</span>\n </li>\n ")).join("")+"\n </ul>\n</div>\n"),noMargin:!0,clickHandler:vt=>{const bt=vt?getClosest(vt,".psv-panel-menu-item"):void 0,le=bt?bt.dataset.psvButton:void 0;le&&(this.viewer.navbar.getButton(le).onClick(),this.__hideMenu())}})}__hideMenu(){this.viewer.panel.hide(Rd.MENU)}};function getIcon(vt){let bt=0;switch(vt){case 0:bt=90;break;case 1:bt=-90;break;case 3:bt=180;break;default:bt=0}return jd.arrow.replace("rotate(0","rotate("+bt)}Cg.id="menu";var Ig=class extends Eg{constructor(vt,bt){super(vt,{className:"psv-move-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:getIcon(bt)}),this.direction=bt,this.handler=new sp,this.container.addEventListener("mousedown",this),this.container.addEventListener("keydown",this),this.container.addEventListener("keyup",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this)}destroy(){this.__onMouseUp(),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(vt){switch(vt.type){case"mousedown":this.__onMouseDown();break;case"mouseup":case"touchend":this.__onMouseUp();break;case"keydown":vt.key===Od.Enter&&this.__onMouseDown();break;case"keyup":vt.key===Od.Enter&&this.__onMouseUp()}}onClick(){}isSupported(){return invertResolvableBoolean(Ag.isTouchEnabled)}__onMouseDown(){if(!this.state.enabled)return;const vt={};switch(this.direction){case 0:vt.pitch=!1;break;case 1:vt.pitch=!0;break;case 3:vt.yaw=!1;break;default:vt.yaw=!0}this.viewer.stopAll(),this.viewer.dynamics.position.roll(vt),this.handler.down()}__onMouseUp(){this.state.enabled&&this.handler.up((()=>{this.viewer.dynamics.position.stop(),this.viewer.resetIdleTimer()}))}};Ig.groupId="move";var Dg=class extends Ig{constructor(vt){super(vt,1)}};Dg.id="moveDown";var Lg=class extends Ig{constructor(vt){super(vt,2)}};Lg.id="moveLeft";var Pg=class extends Ig{constructor(vt){super(vt,3)}};Pg.id="moveRight";var zg=class extends Ig{constructor(vt){super(vt,0)}};zg.id="moveUp";var Ng=class extends Eg{constructor(vt,bt,le){super(vt,{className:"psv-zoom-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:bt}),this.direction=le,this.handler=new sp,this.container.addEventListener("mousedown",this),this.container.addEventListener("keydown",this),this.container.addEventListener("keyup",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this)}destroy(){this.__onMouseUp(),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(vt){switch(vt.type){case"mousedown":this.__onMouseDown();break;case"mouseup":case"touchend":this.__onMouseUp();break;case"keydown":vt.key===Od.Enter&&this.__onMouseDown();break;case"keyup":vt.key===Od.Enter&&this.__onMouseUp()}}onClick(){}isSupported(){return invertResolvableBoolean(Ag.isTouchEnabled)}__onMouseDown(){this.state.enabled&&(this.viewer.dynamics.zoom.roll(1===this.direction),this.handler.down())}__onMouseUp(){this.state.enabled&&this.handler.up((()=>this.viewer.dynamics.zoom.stop()))}};Ng.groupId="zoom";var Rg=class extends Ng{constructor(vt){super(vt,jd.zoomIn,0)}};Rg.id="zoomIn";var Fg=class extends Ng{constructor(vt){super(vt,jd.zoomOut,1)}};Fg.id="zoomOut";var Og=class extends Eg{constructor(vt){super(vt,{className:"psv-zoom-range",hoverScale:!1,collapsable:!1,tabbable:!1}),this.zoomRange=document.createElement("div"),this.zoomRange.className="psv-zoom-range-line",this.container.appendChild(this.zoomRange),this.zoomValue=document.createElement("div"),this.zoomValue.className="psv-zoom-range-handle",this.zoomRange.appendChild(this.zoomValue),this.slider=new em(this.container,"HORIZONTAL",(vt=>this.__onSliderUpdate(vt))),this.mediaMinWidth=parseInt(getStyleProperty(this.container,"max-width"),10),this.viewer.addEventListener(og.type,this),this.viewer.state.ready?this.__moveZoomValue(this.viewer.getZoomLevel()):this.viewer.addEventListener(Hm.type,this)}destroy(){this.slider.destroy(),this.viewer.removeEventListener(og.type,this),this.viewer.removeEventListener(Hm.type,this),super.destroy()}handleEvent(vt){vt instanceof og?this.__moveZoomValue(vt.zoomLevel):vt instanceof Hm&&this.__moveZoomValue(this.viewer.getZoomLevel())}onClick(){}isSupported(){return invertResolvableBoolean(Ag.isTouchEnabled)}autoSize(){this.state.supported&&(this.viewer.state.size.width<=this.mediaMinWidth&&this.state.visible?this.hide(!1):this.viewer.state.size.width>this.mediaMinWidth&&!this.state.visible&&this.show(!1))}__moveZoomValue(vt){this.zoomValue.style.left=vt/100*this.zoomRange.offsetWidth-this.zoomValue.offsetWidth/2+"px"}__onSliderUpdate(vt){vt.mousedown&&this.viewer.zoom(100*vt.value)}};Og.id="zoomRange",Og.groupId="zoom";var Bg=class extends rm{constructor(vt){super(),this.viewer=vt}init(){}destroy(){}},jg=class extends Bg{constructor(vt,bt){super(vt),this.config=this.constructor.configParser(bt)}setOption(vt,bt){this.setOptions({[vt]:bt})}setOptions(vt){const bt=(0,ls.A)({},this.config,vt),le=this.constructor,ho=le.configParser,Dl=le.readonlyOptions,Fl=le.id;for(let[ls,sc]of Object.entries(vt))ls in ho.defaults?Dl.includes(ls)?logWarn(Fl+': Option "'+ls+'" cannot be updated'):(ls in ho.parsers&&(sc=ho.parsers[ls](sc,{rawConfig:bt,defValue:ho.defaults[ls]})),this.config[ls]=sc):logWarn(Fl+': Unknown option "'+ls+'"')}};function pluginInterop(vt){if(vt)for(const[,bt]of[["_",vt],...Object.entries(vt)])if(bt.prototype instanceof Bg)return checkVersion(bt.id,bt.VERSION,"5.14.1"),bt;return null}jg.readonlyOptions=[];var Ug={panorama:null,container:null,adapter:[vg,null],plugins:[],caption:null,description:null,downloadUrl:null,downloadName:null,loadingImg:null,loadingTxt:"",size:null,fisheye:0,minFov:30,maxFov:90,defaultZoomLvl:50,defaultYaw:0,defaultPitch:0,sphereCorrection:null,moveSpeed:1,zoomSpeed:1,moveInertia:.8,mousewheel:!0,mousemove:!0,mousewheelCtrlKey:!1,touchmoveTwoFingers:!1,panoData:null,requestHeaders:null,canvasBackground:"#000",defaultTransition:{speed:1500,rotation:!0,effect:"fade"},rendererParameters:{alpha:!0,antialias:!0},withCredentials:()=>!1,navbar:["zoom","move","download","description","caption","fullscreen"],lang:{zoom:"Zoom",zoomOut:"Zoom out",zoomIn:"Zoom in",moveUp:"Move up",moveDown:"Move down",moveLeft:"Move left",moveRight:"Move right",description:"Description",download:"Download",fullscreen:"Fullscreen",loading:"Loading...",menu:"Menu",close:"Close",twoFingers:"Use two fingers to navigate",ctrlZoom:"Use ctrl + scroll to zoom the image",loadError:"The panorama cannot be loaded",webglError:"Your browser does not seem to support WebGL"},keyboard:"fullscreen",keyboardActions:{[Od.ArrowUp]:"ROTATE_UP",[Od.ArrowDown]:"ROTATE_DOWN",[Od.ArrowRight]:"ROTATE_RIGHT",[Od.ArrowLeft]:"ROTATE_LEFT",[Od.PageUp]:"ZOOM_IN",[Od.PageDown]:"ZOOM_OUT",[Od.Plus]:"ZOOM_IN",[Od.Minus]:"ZOOM_OUT"}},Vg={panorama:"Use setPanorama method to change the panorama",panoData:"Use setPanorama method to change the panorama",container:"Cannot change viewer container",adapter:"Cannot change adapter",plugins:"Cannot change plugins"},Gg={container:vt=>{if(!vt)throw new qd("No value given for container.");return vt},adapter:(vt,bt)=>{let{defValue:le}=bt;if(!(vt=vt?Array.isArray(vt)?[adapterInterop(vt[0]),vt[1]]:[adapterInterop(vt),null]:le)[0])throw new qd("An undefined value was given for adapter.");if(!vt[0].id)throw new qd("Adapter has no id.");return vt},defaultYaw:vt=>parseAngle(vt),defaultPitch:vt=>parseAngle(vt,!0),defaultZoomLvl:vt=>ho.cj9.clamp(vt,0,100),minFov:(vt,bt)=>{let{rawConfig:le}=bt;return le.maxFov<vt&&(logWarn("maxFov cannot be lower than minFov"),vt=le.maxFov),ho.cj9.clamp(vt,1,179)},maxFov:(vt,bt)=>{let{rawConfig:le}=bt;return vt<le.minFov&&(vt=le.minFov),ho.cj9.clamp(vt,1,179)},moveInertia:(vt,bt)=>{let{defValue:le}=bt;return!0===vt?le:!1===vt?0:vt},lang:vt=>(0,ls.A)({},Ug.lang,vt),fisheye:vt=>!0===vt?1:!1===vt?0:vt,requestHeaders:vt=>vt&&"object"===typeof vt?()=>vt:"function"===typeof vt?vt:null,withCredentials:vt=>"boolean"===typeof vt?()=>vt:"function"===typeof vt?vt:()=>!1,defaultTransition:(vt,bt)=>{let{defValue:le}=bt;return null===vt||0===vt.speed?null:(0,ls.A)({},le,vt)},rendererParameters:(vt,bt)=>{let{defValue:le}=bt;return(0,ls.A)({},vt,le)},plugins:vt=>vt.map(((vt,bt)=>{if(!(vt=Array.isArray(vt)?[pluginInterop(vt[0]),vt[1]]:[pluginInterop(vt),null])[0])throw new qd("An undefined value was given for plugin "+bt+".");if(!vt[0].id)throw new qd("Plugin "+bt+" has no id.");return vt})),navbar:vt=>!1===vt?null:!0===vt?clone(Ug.navbar):"string"===typeof vt?vt.split(/[ ,]/):vt},qg=getConfigParser(Ug,Gg),Hg=class extends Eg{constructor(vt){super(vt,{className:"psv-caption",hoverScale:!1,collapsable:!1,tabbable:!0}),this.contentWidth=0,this.state.width=0,this.contentElt=document.createElement("div"),this.contentElt.className="psv-caption-content",this.container.appendChild(this.contentElt),this.setCaption(this.viewer.config.caption)}hide(){this.contentElt.style.display="none",this.state.visible=!1}show(){this.contentElt.style.display="",this.state.visible=!0}onClick(){}setCaption(vt){this.show(),this.contentElt.innerHTML=null!=vt?vt:"",this.contentElt.innerHTML?this.contentWidth=this.contentElt.offsetWidth:this.contentWidth=0,this.autoSize()}autoSize(){this.toggle(this.container.offsetWidth>=this.contentWidth),this.__refreshButton()}__refreshButton(){var vt;null==(vt=this.viewer.navbar.getButton(Sg.id,!1))||vt.autoSize(!0)}};Hg.id="caption";var Wg={},Zg={};function registerButton(vt,bt){if(!vt.id)throw new qd("Button id is required");if(Wg[vt.id]=vt,vt.groupId&&(Zg[vt.groupId]=Zg[vt.groupId]||[]).push(vt),bt){const le=Ug.navbar;switch(bt){case"start":le.unshift(vt.id);break;case"end":le.push(vt.id);break;default:{const[ls,ho]=bt.split(":"),Dl=le.indexOf(ls);if(!ls||!ho||-1===Dl)throw new qd("Invalid defaultPosition "+bt);le.splice(Dl+("right"===ho?1:0),0,vt.id)}}}}[Fg,Og,Rg,Sg,Hg,Tg,kg,Lg,Pg,zg,Dg].forEach((vt=>registerButton(vt)));var Yg=class extends bg{constructor(vt){super(vt,{className:"psv-navbar "+Ld}),this.collapsed=[],this.state.visible=!1}show(){this.viewer.container.classList.add("psv--has-navbar"),this.container.classList.add("psv-navbar--open"),this.state.visible=!0}hide(){this.viewer.container.classList.remove("psv--has-navbar"),this.container.classList.remove("psv-navbar--open"),this.state.visible=!1}setButtons(vt){this.children.slice().forEach((vt=>vt.destroy())),this.children.length=0,-1!==vt.indexOf(Hg.id)&&-1===vt.indexOf(Sg.id)&&vt.splice(vt.indexOf(Hg.id),0,Sg.id),vt.forEach((vt=>{"object"===typeof vt?new Mg(this,vt):Wg[vt]?new Wg[vt](this):Zg[vt]?Zg[vt].forEach((vt=>{new vt(this)})):logWarn("Unknown button "+vt)})),new Cg(this),this.children.forEach((vt=>{vt instanceof Eg&&vt.checkSupported()})),this.autoSize()}setCaption(vt){this.children.some((bt=>bt instanceof Hg&&(bt.setCaption(vt),!0)))}getButton(vt,bt){void 0===bt&&(bt=!0);const le=this.children.find((bt=>bt instanceof Eg&&bt.id===vt));return!le&&bt&&logWarn('button "'+vt+'" not found in the navbar'),le}focusButton(vt){var bt,le;this.isVisible()&&(null==(bt=(null==(le=this.getButton(vt,!1))?void 0:le.container)||this.container.firstElementChild)||bt.focus())}autoSize(){var vt;this.children.forEach((vt=>{vt instanceof Eg&&vt.autoSize()}));const bt=this.container.offsetWidth;let le=0;const ls=[];this.children.forEach((vt=>{vt.isVisible()&&vt instanceof Eg&&(le+=vt.width,vt.collapsable&&ls.push(vt))})),0!==le&&(bt<le&&ls.length>0?(ls.forEach((vt=>vt.collapse())),this.collapsed=ls,this.getButton(Cg.id).show(!1)):bt>=le&&this.collapsed.length>0&&(this.collapsed.forEach((vt=>vt.uncollapse())),this.collapsed=[],this.getButton(Cg.id).hide(!1)),null==(vt=this.getButton(Hg.id,!1))||vt.autoSize())}};ho.l2R.enabled=!1;var Qg={enabled:!0,maxItems:10,ttl:600,items:{},purgeInterval:null,init(){ho.l2R.enabled&&(logWarn("ThreeJS cache should be disabled"),ho.l2R.enabled=!1),!this.purgeInterval&&this.enabled&&(this.purgeInterval=setInterval((()=>this.purge()),6e4))},add(vt,bt,le){var ls;this.enabled&&bt&&(this.items[bt]=null!=(ls=this.items[bt])?ls:{files:{},lastAccess:null},this.items[bt].files[vt]=le,this.items[bt].lastAccess=Date.now())},get(vt,bt){if(this.enabled&&bt&&this.items[bt])return this.items[bt].lastAccess=Date.now(),this.items[bt].files[vt]},remove(vt,bt){this.enabled&&bt&&this.items[bt]&&(delete this.items[bt].files[vt],0===Object.keys(this.items[bt].files).length&&delete this.items[bt])},purge(){Object.entries(this.items).sort(((vt,bt)=>{let[,le]=vt,[,ls]=bt;return ls.lastAccess-le.lastAccess})).forEach(((vt,bt)=>{let[le,{lastAccess:ls}]=vt;bt>0&&(Date.now()-ls>=1e3*this.ttl||bt>=this.maxItems)&&delete this.items[le]}))}},Xg=class extends bg{constructor(vt){super(vt,{className:"psv-loader-container"}),this.loader=document.createElement("div"),this.loader.className="psv-loader",this.container.appendChild(this.loader),this.size=this.loader.offsetWidth,this.canvas=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.canvas.setAttribute("class","psv-loader-canvas"),this.canvas.setAttribute("viewBox","0 0 "+this.size+" "+this.size),this.loader.appendChild(this.canvas),this.textColor=getStyleProperty(this.loader,"color"),this.color=getStyleProperty(this.canvas,"color"),this.border=parseInt(getStyleProperty(this.loader,"--psv-loader-border"),10),this.thickness=parseInt(getStyleProperty(this.loader,"--psv-loader-tickness"),10);const bt=this.size/2;this.canvas.innerHTML='\n <circle cx="'+bt+'" cy="'+bt+'" r="'+bt+'" fill="'+this.color+'"/>\n <path d="" fill="none" stroke="'+this.textColor+'" stroke-width="'+this.thickness+'" stroke-linecap="round"/>\n ',this.viewer.addEventListener(fm.type,this),this.__updateContent(),this.hide()}destroy(){this.viewer.removeEventListener(fm.type,this),super.destroy()}handleEvent(vt){vt instanceof fm&&vt.containsOptions("loadingImg","loadingTxt","lang")&&this.__updateContent()}setProgress(vt){this.container.classList.remove("psv-loader--undefined");const bt=ho.cj9.clamp(vt,0,99.999)/100*Math.PI*2,le=this.size/2,ls=le,Dl=this.thickness/2+this.border,Fl=(this.size-this.thickness)/2-this.border,sc=Math.sin(bt)*Fl+le,uc=-Math.cos(bt)*Fl+le,mc=vt>50?"1":"0";this.canvas.querySelector("path").setAttributeNS(null,"d","M "+ls+" "+Dl+" A "+Fl+" "+Fl+" 0 "+mc+" 1 "+sc+" "+uc)}showUndefined(){this.show(),this.setProgress(25),this.container.classList.add("psv-loader--undefined")}__updateContent(){const vt=this.loader.querySelector(".psv-loader-image, .psv-loader-text");let bt;if(vt&&this.loader.removeChild(vt),this.viewer.config.loadingImg?(bt=document.createElement("img"),bt.className="psv-loader-image",bt.src=this.viewer.config.loadingImg):null!==this.viewer.config.loadingTxt&&(bt=document.createElement("div"),bt.className="psv-loader-text",bt.innerHTML=this.viewer.config.loadingTxt||this.viewer.config.lang.loading),bt){const vt=Math.round(Math.sqrt(2*Math.pow(this.size/2-this.thickness/2-this.border,2)));bt.style.maxWidth=vt+"px",bt.style.maxHeight=vt+"px",this.loader.appendChild(bt)}}},Kg=class extends bg{constructor(vt){super(vt,{className:"psv-notification"}),this.state={visible:!1,contentId:null,timeout:null},this.content=document.createElement("div"),this.content.className="psv-notification-content",this.container.appendChild(this.content),this.content.addEventListener("click",(()=>this.hide()))}isVisible(vt){return this.state.visible&&(!vt||!this.state.contentId||this.state.contentId===vt)}toggle(){throw new qd("Notification cannot be toggled")}show(vt){this.state.timeout&&(clearTimeout(this.state.timeout),this.state.timeout=null),"string"===typeof vt&&(vt={content:vt}),this.state.contentId=vt.id||null,this.content.innerHTML=vt.content,this.container.classList.add("psv-notification--visible"),this.state.visible=!0,this.viewer.dispatchEvent(new Qm(this.state.contentId)),vt.timeout&&(this.state.timeout=setTimeout((()=>this.hide(this.state.contentId)),vt.timeout))}hide(vt){if(this.isVisible(vt)){const vt=this.state.contentId;this.container.classList.remove("psv-notification--visible"),this.state.visible=!1,this.state.contentId=null,this.viewer.dispatchEvent(new xm(vt))}}},Jg=class extends bg{constructor(vt){super(vt,{className:"psv-overlay "+Ld}),this.state={visible:!1,contentId:null,dismissible:!0},this.image=document.createElement("div"),this.image.className="psv-overlay-image",this.container.appendChild(this.image),this.title=document.createElement("div"),this.title.className="psv-overlay-title",this.container.appendChild(this.title),this.text=document.createElement("div"),this.text.className="psv-overlay-text",this.container.appendChild(this.text),this.container.addEventListener("click",this),this.viewer.addEventListener(Cm.type,this),super.hide()}destroy(){this.viewer.removeEventListener(Cm.type,this),super.destroy()}handleEvent(vt){"click"===vt.type?this.isVisible()&&this.state.dismissible&&(this.hide(),vt.stopPropagation()):vt instanceof Cm&&this.isVisible()&&this.state.dismissible&&vt.matches(Od.Escape)&&(this.hide(),vt.preventDefault())}isVisible(vt){return this.state.visible&&(!vt||!this.state.contentId||this.state.contentId===vt)}toggle(){throw new qd("Overlay cannot be toggled")}show(vt){"string"===typeof vt&&(vt={title:vt}),this.state.contentId=vt.id||null,this.state.dismissible=!1!==vt.dismissible,this.image.innerHTML=vt.image||"",this.title.innerHTML=vt.title||"",this.text.innerHTML=vt.text||"",super.show(),this.viewer.dispatchEvent(new Km(this.state.contentId))}hide(vt){if(this.isVisible(vt)){const vt=this.state.contentId;super.hide(),this.state.contentId=null,this.viewer.dispatchEvent(new wm(vt))}}},$g="psv-panel-content--no-interaction",tA=class extends bg{constructor(vt){super(vt,{className:"psv-panel "+Ld}),this.state={visible:!1,contentId:null,mouseX:0,mouseY:0,mousedown:!1,clickHandler:null,keyHandler:null,width:{}};const bt=document.createElement("div");bt.className="psv-panel-resizer",this.container.appendChild(bt);const le=document.createElement("div");le.className="psv-panel-close-button",le.innerHTML=jd.close,le.title=vt.config.lang.close,this.container.appendChild(le),this.content=document.createElement("div"),this.content.className="psv-panel-content",this.container.appendChild(this.content),le.addEventListener("click",(()=>this.hide())),bt.addEventListener("mousedown",this),bt.addEventListener("touchstart",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this),this.viewer.container.addEventListener("mousemove",this),this.viewer.container.addEventListener("touchmove",this),this.viewer.addEventListener(Cm.type,this)}destroy(){this.viewer.removeEventListener(Cm.type,this),this.viewer.container.removeEventListener("mousemove",this),this.viewer.container.removeEventListener("touchmove",this),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(vt){switch(vt.type){case"mousedown":this.__onMouseDown(vt);break;case"touchstart":this.__onTouchStart(vt);break;case"mousemove":this.__onMouseMove(vt);break;case"touchmove":this.__onTouchMove(vt);break;case"mouseup":this.__onMouseUp(vt);break;case"touchend":this.__onTouchEnd(vt);break;case Cm.type:this.__onKeyPress(vt)}}isVisible(vt){return this.state.visible&&(!vt||!this.state.contentId||this.state.contentId===vt)}toggle(){throw new qd("Panel cannot be toggled")}show(vt){"string"===typeof vt&&(vt={content:vt});const bt=this.isVisible(vt.id);this.state.contentId=vt.id||null,this.state.visible=!0,this.state.clickHandler&&(this.content.removeEventListener("click",this.state.clickHandler),this.content.removeEventListener("keydown",this.state.keyHandler),this.state.clickHandler=null,this.state.keyHandler=null),vt.id&&this.state.width[vt.id]?this.container.style.width=this.state.width[vt.id]:vt.width?this.container.style.width=vt.width:this.container.style.width=null,this.content.innerHTML=vt.content,this.content.scrollTop=0,this.container.classList.add("psv-panel--open"),toggleClass(this.content,"psv-panel-content--no-margin",!0===vt.noMargin),vt.clickHandler&&(this.state.clickHandler=bt=>{vt.clickHandler(getEventTarget(bt))},this.state.keyHandler=bt=>{bt.key===Od.Enter&&vt.clickHandler(getEventTarget(bt))},this.content.addEventListener("click",this.state.clickHandler),this.content.addEventListener("keydown",this.state.keyHandler),bt||setTimeout((()=>{var vt;null==(vt=this.content.querySelector("a,button,[tabindex]"))||vt.focus()}),300)),this.viewer.dispatchEvent(new $m(this.state.contentId))}hide(vt){if(this.isVisible(vt)){const vt=this.state.contentId;this.state.visible=!1,this.state.contentId=null,this.content.innerHTML=null,this.container.classList.remove("psv-panel--open"),this.state.clickHandler&&(this.content.removeEventListener("click",this.state.clickHandler),this.content.removeEventListener("keydown",this.state.keyHandler),this.state.clickHandler=null,this.state.keyHandler=null),this.viewer.dispatchEvent(new Mm(vt))}}__onMouseDown(vt){vt.stopPropagation(),this.__startResize(vt.clientX,vt.clientY)}__onTouchStart(vt){if(vt.stopPropagation(),1===vt.touches.length){const bt=vt.touches[0];this.__startResize(bt.clientX,bt.clientY)}}__onMouseUp(vt){this.state.mousedown&&(vt.stopPropagation(),this.state.mousedown=!1,this.content.classList.remove($g))}__onTouchEnd(vt){this.state.mousedown&&(vt.stopPropagation(),0===vt.touches.length&&(this.state.mousedown=!1,this.content.classList.remove($g)))}__onMouseMove(vt){this.state.mousedown&&(vt.stopPropagation(),this.__resize(vt.clientX,vt.clientY))}__onTouchMove(vt){if(this.state.mousedown){const bt=vt.touches[0];this.__resize(bt.clientX,bt.clientY)}}__onKeyPress(vt){this.isVisible()&&vt.matches(Od.Escape)&&(this.hide(),vt.preventDefault())}__startResize(vt,bt){this.state.mouseX=vt,this.state.mouseY=bt,this.state.mousedown=!0,this.content.classList.add($g)}__resize(vt,bt){const le=vt,ls=bt,ho=Math.max(200,this.container.offsetWidth-(le-this.state.mouseX))+"px";this.state.contentId&&(this.state.width[this.state.contentId]=ho),this.container.style.width=ho,this.state.mouseX=le,this.state.mouseY=ls}},eA=class extends bg{constructor(vt,bt){super(vt,{className:"psv-tooltip"}),this.state={visible:!0,arrow:0,border:0,state:0,width:0,height:0,pos:"",config:null,data:null,hideTimeout:null},this.content=document.createElement("div"),this.content.className="psv-tooltip-content",this.container.appendChild(this.content),this.arrow=document.createElement("div"),this.arrow.className="psv-tooltip-arrow",this.container.appendChild(this.arrow),this.container.addEventListener("transitionend",this),this.container.addEventListener("touchdown",(vt=>vt.stopPropagation())),this.container.addEventListener("mousedown",(vt=>vt.stopPropagation())),this.container.style.top="-1000px",this.container.style.left="-1000px",this.show(bt)}handleEvent(vt){"transitionend"===vt.type&&this.__onTransitionEnd(vt)}destroy(){clearTimeout(this.state.hideTimeout),delete this.state.data,super.destroy()}toggle(){throw new qd("Tooltip cannot be toggled")}show(vt){if(0!==this.state.state)throw new qd("Initialized tooltip cannot be re-initialized");vt.className&&addClasses(this.container,vt.className),vt.style&&Object.assign(this.container.style,vt.style),this.state.state=3,this.update(vt.content,vt),this.state.data=vt.data,this.state.state=1,this.viewer.dispatchEvent(new eg(this,this.state.data)),this.__waitImages()}update(vt,bt){this.content.innerHTML=vt;const le=this.container.getBoundingClientRect();this.state.width=le.right-le.left,this.state.height=le.bottom-le.top,this.state.arrow=parseInt(getStyleProperty(this.arrow,"border-top-width"),10),this.state.border=parseInt(getStyleProperty(this.container,"border-top-left-radius"),10),this.move(null!=bt?bt:this.state.config),this.__waitImages()}move(vt){var bt,le,ls;if(1!==this.state.state&&3!==this.state.state)throw new qd("Uninitialized tooltip cannot be moved");vt.box=null!=(bt=null!=(le=vt.box)?le:null==(ls=this.state.config)?void 0:ls.box)?bt:{width:0,height:0},this.state.config=vt;const ho=this.container,Dl=this.arrow,Fl={posClass:cleanCssPosition(vt.position,{allowCenter:!1,cssOrder:!1})||["top","center"],width:this.state.width,height:this.state.height,top:0,left:0,arrowTop:0,arrowLeft:0};this.__computeTooltipPosition(Fl,vt);let sc=null,uc=null;if(Fl.top<0?sc="bottom":Fl.top+Fl.height>this.viewer.state.size.height&&(sc="top"),Fl.left<0?uc="right":Fl.left+Fl.width>this.viewer.state.size.width&&(uc="left"),uc||sc){const bt=cssPositionIsOrdered(Fl.posClass);sc&&(Fl.posClass[bt?0:1]=sc),uc&&(Fl.posClass[bt?1:0]=uc),this.__computeTooltipPosition(Fl,vt)}ho.style.top=Fl.top+"px",ho.style.left=Fl.left+"px",Dl.style.top=Fl.arrowTop+"px",Dl.style.left=Fl.arrowLeft+"px";const mc=Fl.posClass.join("-");mc!==this.state.pos&&(ho.classList.remove("psv-tooltip--"+this.state.pos),this.state.pos=mc,ho.classList.add("psv-tooltip--"+this.state.pos))}hide(){this.container.classList.remove("psv-tooltip--visible"),this.state.state=2,this.viewer.dispatchEvent(new Tm(this.state.data));const vt=parseFloat(getStyleProperty(this.container,"transition-duration"));this.state.hideTimeout=setTimeout((()=>{this.destroy()}),2*vt)}__onTransitionEnd(vt){if("transform"===vt.propertyName)switch(this.state.state){case 1:this.container.classList.add("psv-tooltip--visible"),this.state.state=3;break;case 2:this.state.state=0,this.destroy()}}__computeTooltipPosition(vt,bt){const le=this.state.arrow,ls=bt.top,ho=vt.height,Dl=bt.left,Fl=vt.width,sc=le+this.state.border,uc=bt.box.width/2+2*le,mc=bt.box.height/2+2*le;switch(vt.posClass.join("-")){case"top-left":vt.top=ls-mc-ho,vt.left=Dl+sc-Fl,vt.arrowTop=ho,vt.arrowLeft=Fl-sc-le;break;case"top-center":vt.top=ls-mc-ho,vt.left=Dl-Fl/2,vt.arrowTop=ho,vt.arrowLeft=Fl/2-le;break;case"top-right":vt.top=ls-mc-ho,vt.left=Dl-sc,vt.arrowTop=ho,vt.arrowLeft=le;break;case"bottom-left":vt.top=ls+mc,vt.left=Dl+sc-Fl,vt.arrowTop=2*-le,vt.arrowLeft=Fl-sc-le;break;case"bottom-center":vt.top=ls+mc,vt.left=Dl-Fl/2,vt.arrowTop=2*-le,vt.arrowLeft=Fl/2-le;break;case"bottom-right":vt.top=ls+mc,vt.left=Dl-sc,vt.arrowTop=2*-le,vt.arrowLeft=le;break;case"left-top":vt.top=ls+sc-ho,vt.left=Dl-uc-Fl,vt.arrowTop=ho-sc-le,vt.arrowLeft=Fl;break;case"center-left":vt.top=ls-ho/2,vt.left=Dl-uc-Fl,vt.arrowTop=ho/2-le,vt.arrowLeft=Fl;break;case"left-bottom":vt.top=ls-sc,vt.left=Dl-uc-Fl,vt.arrowTop=le,vt.arrowLeft=Fl;break;case"right-top":vt.top=ls+sc-ho,vt.left=Dl+uc,vt.arrowTop=ho-sc-le,vt.arrowLeft=2*-le;break;case"center-right":vt.top=ls-ho/2,vt.left=Dl+uc,vt.arrowTop=ho/2-le,vt.arrowLeft=2*-le;break;case"right-bottom":vt.top=ls-sc,vt.left=Dl+uc,vt.arrowTop=le,vt.arrowLeft=2*-le}}__waitImages(){const vt=this.content.querySelectorAll("img");if(vt.length>0){const bt=[];vt.forEach((vt=>{vt.complete||bt.push(new Promise((bt=>{vt.onload=bt,vt.onerror=bt})))})),bt.length&&Promise.all(bt).then((()=>{if(1===this.state.state||3===this.state.state){const vt=this.container.getBoundingClientRect();this.state.width=vt.right-vt.left,this.state.height=vt.bottom-vt.top,this.move(this.state.config)}}))}}},iA=class{constructor(vt){this.viewer=vt,this.config=vt.config,this.state=vt.state}destroy(){}},nA=new ho.Pq0,rA=new ho.O9p(0,0,0,"ZXY"),aA=class extends iA{constructor(vt){super(vt)}fovToZoomLevel(vt){const bt=Math.round((vt-this.config.minFov)/(this.config.maxFov-this.config.minFov)*100);return ho.cj9.clamp(bt-2*(bt-50),0,100)}zoomLevelToFov(vt){return this.config.maxFov+vt/100*(this.config.minFov-this.config.maxFov)}vFovToHFov(vt){return ho.cj9.radToDeg(2*Math.atan(Math.tan(ho.cj9.degToRad(vt)/2)*this.state.aspect))}hFovToVFov(vt){return ho.cj9.radToDeg(2*Math.atan(Math.tan(ho.cj9.degToRad(vt)/2)/this.state.aspect))}getAnimationProperties(vt,bt,le){const ls=!isNil(bt),ho=!isNil(le),Dl={};let Fl=null;if(ls){const le=this.viewer.getPosition(),ls=getShortestArc(le.yaw,bt.yaw);Dl.yaw={start:le.yaw,end:le.yaw+ls},Dl.pitch={start:le.pitch,end:bt.pitch},Fl=speedToDuration(vt,getAngle(le,bt))}if(ho){const bt=this.viewer.getZoomLevel(),ls=Math.abs(le-bt);Dl.zoom={start:bt,end:le},null===Fl&&(Fl=speedToDuration(vt,Math.PI/4*ls/100))}return Fl=null===Fl?"number"===typeof vt?vt:mc:Math.max(mc,Fl),{duration:Fl,properties:Dl}}getTransitionOptions(vt){var bt;let le;const ho=null!=(bt=this.config.defaultTransition)?bt:Ug.defaultTransition;return le=!1===vt.transition||null===vt.transition?null:!0===vt.transition?(0,ls.A)({},ho):"object"===typeof vt.transition?(0,ls.A)({},ho,vt.transition):this.config.defaultTransition,le}textureCoordsToSphericalCoords(vt){var bt;if(null==(bt=this.state.textureData)||!bt.panoData)throw new qd("Current adapter does not support texture coordinates or no texture has been loaded");const le=this.viewer.adapter.textureCoordsToSphericalCoords(vt,this.state.textureData.panoData);return rA.equals(this.viewer.renderer.panoramaPose)&&rA.equals(this.viewer.renderer.sphereCorrection)?le:(this.sphericalCoordsToVector3(le,nA),nA.applyEuler(this.viewer.renderer.panoramaPose),nA.applyEuler(this.viewer.renderer.sphereCorrection),this.vector3ToSphericalCoords(nA))}sphericalCoordsToTextureCoords(vt){var bt;if(null==(bt=this.state.textureData)||!bt.panoData)throw new qd("Current adapter does not support texture coordinates or no texture has been loaded");return rA.equals(this.viewer.renderer.panoramaPose)&&rA.equals(this.viewer.renderer.sphereCorrection)||(this.sphericalCoordsToVector3(vt,nA),applyEulerInverse(nA,this.viewer.renderer.sphereCorrection),applyEulerInverse(nA,this.viewer.renderer.panoramaPose),vt=this.vector3ToSphericalCoords(nA)),this.viewer.adapter.sphericalCoordsToTextureCoords(vt,this.state.textureData.panoData)}sphericalCoordsToVector3(vt,bt,le){return void 0===le&&(le=_u),bt||(bt=new ho.Pq0),bt.x=le*-Math.cos(vt.pitch)*Math.sin(vt.yaw),bt.y=le*Math.sin(vt.pitch),bt.z=le*Math.cos(vt.pitch)*Math.cos(vt.yaw),bt}vector3ToSphericalCoords(vt){const bt=Math.acos(vt.y/Math.sqrt(vt.x*vt.x+vt.y*vt.y+vt.z*vt.z)),le=Math.atan2(vt.x,vt.z);return{yaw:le<0?-le:2*Math.PI-le,pitch:Math.PI/2-bt}}viewerCoordsToVector3(vt){const bt=this.viewer.renderer.getIntersections(vt).filter((vt=>vt.object.userData[Md]));return bt.length?bt[0].point:null}viewerCoordsToSphericalCoords(vt){const bt=this.viewerCoordsToVector3(vt);return bt?this.vector3ToSphericalCoords(bt):null}vector3ToViewerCoords(vt){const bt=vt.clone();return bt.project(this.viewer.renderer.camera),{x:Math.round((bt.x+1)/2*this.state.size.width),y:Math.round((1-bt.y)/2*this.state.size.height)}}sphericalCoordsToViewerCoords(vt){return this.sphericalCoordsToVector3(vt,nA),this.vector3ToViewerCoords(nA)}isPointVisible(vt){let bt,le;if(vt instanceof ho.Pq0)bt=vt,le=this.vector3ToViewerCoords(vt);else{if(!isExtendedPosition(vt))return!1;bt=this.sphericalCoordsToVector3(vt,nA),le=this.vector3ToViewerCoords(bt)}return bt.dot(this.viewer.state.direction)>0&&le.x>=0&&le.x<=this.viewer.state.size.width&&le.y>=0&&le.y<=this.viewer.state.size.height}cleanPosition(vt){if("yaw"in vt||"pitch"in vt){if(!("yaw"in vt)||!("pitch"in vt))throw new qd("Position is missing 'yaw' or 'pitch'");return{yaw:parseAngle(vt.yaw),pitch:parseAngle(vt.pitch,!0)}}return this.textureCoordsToSphericalCoords(vt)}cleanSphereCorrection(vt){return{pan:parseAngle((null==vt?void 0:vt.pan)||0),tilt:parseAngle((null==vt?void 0:vt.tilt)||0,!0),roll:parseAngle((null==vt?void 0:vt.roll)||0,!0,!1)}}cleanPanoramaPose(vt){return{pan:ho.cj9.degToRad((null==vt?void 0:vt.poseHeading)||0),tilt:ho.cj9.degToRad((null==vt?void 0:vt.posePitch)||0),roll:ho.cj9.degToRad((null==vt?void 0:vt.poseRoll)||0)}}cleanPanoramaOptions(vt,bt){return null!=bt&&bt.isEquirectangular?(isNil(vt.zoom)&&!isNil(bt.initialFov)&&(vt=(0,ls.A)({},vt,{zoom:this.fovToZoomLevel(this.hFovToVFov(bt.initialFov))})),!isNil(vt.position)||isNil(bt.initialHeading)||isNil(bt.initialPitch)||(vt=(0,ls.A)({},vt,{position:{yaw:parseAngle(bt.initialHeading),pitch:parseAngle(bt.initialPitch,!0)}})),vt):vt}},sA=class _Step{constructor(){this.$=_Step.IDLE}is(){for(var vt=arguments.length,bt=new Array(vt),le=0;le<vt;le++)bt[le]=arguments[le];return bt.some((vt=>this.$&vt))}set(vt){this.$=vt}add(vt){this.$|=vt}remove(vt){this.$&=~vt}};sA.IDLE=0,sA.CLICK=1,sA.MOVING=2;var oA=sA,lA=class extends iA{constructor(vt){super(vt),this.data={startMouseX:0,startMouseY:0,mouseX:0,mouseY:0,pinchDist:0,moveDelta:{yaw:0,pitch:0,zoom:0},accumulatorFactor:0,ctrlKeyDown:!1,dblclickData:null,dblclickTimeout:null,longtouchTimeout:null,twofingersTimeout:null,ctrlZoomTimeout:null},this.step=new oA,this.keyHandler=new sp,this.resizeObserver=new ResizeObserver(throttle((()=>this.viewer.autoSize()),50)),this.moveThreshold=gc*Ag.pixelRatio}init(){window.addEventListener("keydown",this,{passive:!1}),window.addEventListener("keyup",this),this.viewer.container.addEventListener("mousedown",this),window.addEventListener("mousemove",this,{passive:!1}),window.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchstart",this,{passive:!1}),window.addEventListener("touchmove",this,{passive:!1}),window.addEventListener("touchend",this,{passive:!1}),this.viewer.container.addEventListener("wheel",this,{passive:!1}),document.addEventListener("fullscreenchange",this),this.resizeObserver.observe(this.viewer.container),this.viewer.addEventListener(cm.type,this),this.viewer.addEventListener(ag.type,this)}destroy(){window.removeEventListener("keydown",this),window.removeEventListener("keyup",this),this.viewer.container.removeEventListener("mousedown",this),window.removeEventListener("mousemove",this),window.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchstart",this),window.removeEventListener("touchmove",this),window.removeEventListener("touchend",this),this.viewer.container.removeEventListener("wheel",this),document.removeEventListener("fullscreenchange",this),this.resizeObserver.disconnect(),this.viewer.removeEventListener(cm.type,this),this.viewer.removeEventListener(ag.type,this),clearTimeout(this.data.dblclickTimeout),clearTimeout(this.data.longtouchTimeout),clearTimeout(this.data.twofingersTimeout),clearTimeout(this.data.ctrlZoomTimeout),super.destroy()}handleEvent(vt){switch(vt.type){case"keydown":this.__onKeyDown(vt);break;case"keyup":this.__onKeyUp();break;case"mousemove":this.__onMouseMove(vt);break;case"mouseup":this.__onMouseUp(vt);break;case"touchmove":this.__onTouchMove(vt);break;case"touchend":this.__onTouchEnd(vt);break;case"fullscreenchange":this.__onFullscreenChange();break;case cm.type:this.__applyMoveDelta();break;case ag.type:this.__clearMoveDelta()}if(!getMatchingTarget(vt,"."+Ld))switch(vt.type){case"mousedown":this.__onMouseDown(vt);break;case"touchstart":this.__onTouchStart(vt);break;case"wheel":this.__onMouseWheel(vt)}}__onKeyDown(vt){if(this.config.mousewheelCtrlKey&&(this.data.ctrlKeyDown=vt.key===Od.Control,this.data.ctrlKeyDown&&(clearTimeout(this.data.ctrlZoomTimeout),this.viewer.overlay.hide(Rd.CTRL_ZOOM))),this.viewer.dispatchEvent(new Cm(vt.key,vt))&&this.state.keyboardEnabled&&this.config.keyboardActions&&!this.keyHandler.pending)for(const[bt,le]of Object.entries(this.config.keyboardActions))if(keyPressMatch(vt,bt)){if("function"===typeof le)le(this.viewer,vt);else{switch("ZOOM_IN"!==le&&"ZOOM_OUT"!==le&&this.viewer.stopAll(),le){case"ROTATE_UP":this.viewer.dynamics.position.roll({pitch:!1});break;case"ROTATE_DOWN":this.viewer.dynamics.position.roll({pitch:!0});break;case"ROTATE_RIGHT":this.viewer.dynamics.position.roll({yaw:!1});break;case"ROTATE_LEFT":this.viewer.dynamics.position.roll({yaw:!0});break;case"ZOOM_IN":this.viewer.dynamics.zoom.roll(!1);break;case"ZOOM_OUT":this.viewer.dynamics.zoom.roll(!0)}this.keyHandler.down(le)}return void vt.preventDefault()}}__onKeyUp(){this.data.ctrlKeyDown=!1,this.state.keyboardEnabled&&this.keyHandler.up((vt=>{"ZOOM_IN"===vt||"ZOOM_OUT"===vt?this.viewer.dynamics.zoom.stop():(this.viewer.dynamics.position.stop(),this.viewer.resetIdleTimer())}))}__onMouseDown(vt){this.step.add(oA.CLICK),this.data.startMouseX=vt.clientX,this.data.startMouseY=vt.clientY,this.config.mousemove&&vt.preventDefault()}__onMouseUp(vt){this.step.is(oA.CLICK,oA.MOVING)&&this.__stopMove(vt.clientX,vt.clientY,vt,2===vt.button)}__onMouseMove(vt){this.config.mousemove&&this.step.is(oA.CLICK,oA.MOVING)&&(vt.preventDefault(),this.__doMove(vt.clientX,vt.clientY)),this.__handleObjectsEvents(vt)}__onTouchStart(vt){1===vt.touches.length?(this.step.add(oA.CLICK),this.data.startMouseX=vt.touches[0].clientX,this.data.startMouseY=vt.touches[0].clientY,this.data.longtouchTimeout||(this.data.longtouchTimeout=setTimeout((()=>{const bt=vt.touches[0];this.__stopMove(bt.clientX,bt.clientY,vt,!0),this.data.longtouchTimeout=null}),Ec))):2===vt.touches.length&&(this.step.set(oA.IDLE),this.__cancelLongTouch(),this.config.mousemove&&(this.__cancelTwoFingersOverlay(),this.__startMoveZoom(vt),vt.preventDefault()))}__onTouchEnd(vt){if(this.__cancelLongTouch(),this.step.is(oA.CLICK,oA.MOVING))if(vt.preventDefault(),this.__cancelTwoFingersOverlay(),1===vt.touches.length)this.__stopMove(this.data.mouseX,this.data.mouseY);else if(0===vt.touches.length){const bt=vt.changedTouches[0];this.__stopMove(bt.clientX,bt.clientY,vt)}}__onTouchMove(vt){if(this.__cancelLongTouch(),this.config.mousemove)if(1===vt.touches.length){if(this.config.touchmoveTwoFingers)this.step.is(oA.CLICK)&&!this.data.twofingersTimeout&&(this.data.twofingersTimeout=setTimeout((()=>{this.viewer.overlay.show({id:Rd.TWO_FINGERS,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M33.38 33.2a1.96 1.96 0 0 0 1.5-3.23 10.61 10.61 0 0 1 7.18-17.51c.7-.06 1.31-.49 1.61-1.12a13.02 13.02 0 0 1 11.74-7.43c7.14 0 12.96 5.8 12.96 12.9 0 3.07-1.1 6.05-3.1 8.38-.7.82-.61 2.05.21 2.76.83.7 2.07.6 2.78-.22a16.77 16.77 0 0 0 4.04-10.91C72.3 7.54 64.72 0 55.4 0a16.98 16.98 0 0 0-14.79 8.7 14.6 14.6 0 0 0-12.23 14.36c0 3.46 1.25 6.82 3.5 9.45.4.45.94.69 1.5.69m45.74 43.55a22.13 22.13 0 0 1-5.23 12.4c-4 4.55-9.53 6.86-16.42 6.86-12.6 0-20.1-10.8-20.17-10.91a1.82 1.82 0 0 0-.08-.1c-5.3-6.83-14.55-23.82-17.27-28.87-.05-.1 0-.21.02-.23a6.3 6.3 0 0 1 8.24 1.85l9.38 12.59a1.97 1.97 0 0 0 3.54-1.17V25.34a4 4 0 0 1 1.19-2.87 3.32 3.32 0 0 1 2.4-.95c1.88.05 3.4 1.82 3.4 3.94v24.32a1.96 1.96 0 0 0 3.93 0v-33.1a3.5 3.5 0 0 1 7 0v35.39a1.96 1.96 0 0 0 3.93 0v-.44c.05-2.05 1.6-3.7 3.49-3.7 1.93 0 3.5 1.7 3.5 3.82v5.63c0 .24.04.48.13.71l.1.26a1.97 1.97 0 0 0 3.76-.37c.33-1.78 1.77-3.07 3.43-3.07 1.9 0 3.45 1.67 3.5 3.74l-1.77 18.1zM77.39 51c-1.25 0-2.45.32-3.5.9v-.15c0-4.27-3.33-7.74-7.42-7.74-1.26 0-2.45.33-3.5.9V16.69a7.42 7.42 0 0 0-14.85 0v1.86a7 7 0 0 0-3.28-.94 7.21 7.21 0 0 0-5.26 2.07 7.92 7.92 0 0 0-2.38 5.67v37.9l-5.83-7.82a10.2 10.2 0 0 0-13.35-2.92 4.1 4.1 0 0 0-1.53 5.48C20 64.52 28.74 80.45 34.07 87.34c.72 1.04 9.02 12.59 23.4 12.59 7.96 0 14.66-2.84 19.38-8.2a26.06 26.06 0 0 0 6.18-14.6l1.78-18.2v-.2c0-4.26-3.32-7.73-7.42-7.73z"/>\x3c!--Created by AomAm from the Noun Project--\x3e</svg>\n',title:this.config.lang.twoFingers})}),kc));else if(this.step.is(oA.CLICK,oA.MOVING)){vt.preventDefault();const bt=vt.touches[0];this.__doMove(bt.clientX,bt.clientY)}}else this.__doMoveZoom(vt),this.__cancelTwoFingersOverlay()}__cancelLongTouch(){this.data.longtouchTimeout&&(clearTimeout(this.data.longtouchTimeout),this.data.longtouchTimeout=null)}__cancelTwoFingersOverlay(){this.config.touchmoveTwoFingers&&(this.data.twofingersTimeout&&(clearTimeout(this.data.twofingersTimeout),this.data.twofingersTimeout=null),this.viewer.overlay.hide(Rd.TWO_FINGERS))}__onMouseWheel(vt){if(!this.config.mousewheel||!vt.deltaY)return;if(this.config.mousewheelCtrlKey&&!this.data.ctrlKeyDown)return this.viewer.overlay.show({id:Rd.CTRL_ZOOM,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="10 17 79 79"><path fill="currentColor" d="M38.1 29.27c-.24 0-.44.2-.44.45v10.7a.45.45 0 00.9 0v-10.7c0-.25-.2-.45-.45-.45zm10.2 26.66a11.54 11.54 0 01-8.48-6.14.45.45 0 10-.8.41 12.45 12.45 0 009.22 6.62.45.45 0 00.07-.9zm24.55-13.08a23.04 23.04 0 00-22.56-23v7.07l-.01.05a2.83 2.83 0 012.39 2.78v14.03l.09-.02h8.84v-9.22a.45.45 0 11.9 0v9.22h10.35v-.9zm0 27.33V44.66H62.5c-.02 2.01-.52 4-1.47 5.76a.45.45 0 01-.61.18.45.45 0 01-.19-.61 11.54 11.54 0 001.36-5.33h-8.83l-.1-.01a2.83 2.83 0 01-2.83 2.84h-.04-.04a2.83 2.83 0 01-2.83-2.83v-14.9a2.82 2.82 0 012.47-2.8v-7.11a23.04 23.04 0 00-22.57 23v.91h14.72V29.88a8.2 8.2 0 015.02-7.57c.22-.1.5.01.59.24.1.23-.01.5-.24.6a7.3 7.3 0 00-4.47 6.73v13.88h3.9a.45.45 0 110 .9h-3.9v.15a7.32 7.32 0 0011.23 6.17.45.45 0 01.49.76 8.22 8.22 0 01-12.62-6.93v-.15H26.82v25.52a23.04 23.04 0 0023.01 23.01 23.04 23.04 0 0023.02-23.01zm1.8-27.33v27.33A24.85 24.85 0 0149.84 95a24.85 24.85 0 01-24.82-24.82V42.85a24.85 24.85 0 0124.82-24.82 24.85 24.85 0 0124.83 24.82zM57.98 29.88v9.36a.45.45 0 11-.9 0v-9.36a7.28 7.28 0 00-3.4-6.17.45.45 0 01.49-.76 8.18 8.18 0 013.8 6.93z"/>\x3c!-- Created by Icon Island from the Noun Project --\x3e</svg>\n',title:this.config.lang.ctrlZoom}),clearTimeout(this.data.ctrlZoomTimeout),void(this.data.ctrlZoomTimeout=setTimeout((()=>this.viewer.overlay.hide(Rd.CTRL_ZOOM)),du));vt.preventDefault(),vt.stopPropagation();const bt=vt.deltaY/Math.abs(vt.deltaY)*5*this.config.zoomSpeed;0!==bt&&this.viewer.dynamics.zoom.step(-bt,5)}__onFullscreenChange(){const vt=this.viewer.isFullscreenEnabled();"fullscreen"===this.config.keyboard&&(vt?this.viewer.startKeyboardControl():this.viewer.stopKeyboardControl()),this.viewer.dispatchEvent(new ym(vt))}__resetMove(){this.step.set(oA.IDLE),this.data.mouseX=0,this.data.mouseY=0,this.data.startMouseX=0,this.data.startMouseY=0}__startMoveZoom(vt){this.viewer.stopAll(),this.__resetMove();const bt=getTouchData(vt);this.step.set(oA.MOVING),this.data.accumulatorFactor=this.config.moveInertia,({distance:this.data.pinchDist,center:{x:this.data.mouseX,y:this.data.mouseY}}=bt)}__stopMove(vt,bt,le,ls){void 0===ls&&(ls=!1),this.step.is(oA.CLICK)&&!this.__moveThresholdReached(vt,bt)&&this.__doClick(vt,bt,le,ls),this.config.moveInertia&&(this.data.accumulatorFactor=Math.pow(this.config.moveInertia,.5)),this.__resetMove(),this.viewer.resetIdleTimer()}__doClick(vt,bt,le,ls){void 0===ls&&(ls=!1);const ho=this.viewer.container.getBoundingClientRect(),Dl=vt-ho.left,Fl=bt-ho.top,sc=this.viewer.renderer.getIntersections({x:Dl,y:Fl}),uc=sc.find((vt=>vt.object.userData[Md]));if(uc){const ho=this.viewer.dataHelper.vector3ToSphericalCoords(uc.point),gc={rightclick:ls,originalEvent:le,target:getEventTarget(le),clientX:vt,clientY:bt,viewerX:Dl,viewerY:Fl,yaw:ho.yaw,pitch:ho.pitch,objects:sc.map((vt=>vt.object)).filter((vt=>!vt.userData[Md]))};try{const vt=this.viewer.dataHelper.sphericalCoordsToTextureCoords(gc);Object.assign(gc,vt)}catch(mc){}this.data.dblclickTimeout?(Math.abs(this.data.dblclickData.clientX-gc.clientX)<this.moveThreshold&&Math.abs(this.data.dblclickData.clientY-gc.clientY)<this.moveThreshold&&this.viewer.dispatchEvent(new Am(this.data.dblclickData)),clearTimeout(this.data.dblclickTimeout),this.data.dblclickTimeout=null,this.data.dblclickData=null):(this.viewer.dispatchEvent(new pm(gc)),this.data.dblclickData=clone(gc),this.data.dblclickTimeout=setTimeout((()=>{this.data.dblclickTimeout=null,this.data.dblclickData=null}),Ac))}}__handleObjectsEvents(vt){if(!isEmpty(this.state.objectsObservers)&&vt.composedPath().includes(this.viewer.container)){const bt=getPosition(this.viewer.container),le={x:vt.clientX-bt.x,y:vt.clientY-bt.y},ls=this.viewer.renderer.getIntersections(le),emit=(bt,ls,ho)=>{this.viewer.dispatchEvent(new ho(vt,bt,le,ls))};for(const[vt,ho]of Object.entries(this.state.objectsObservers)){const bt=ls.find((bt=>bt.object.userData[vt]));bt?(ho&&bt.object!==ho&&(emit(ho,vt,dg),this.state.objectsObservers[vt]=null),ho?emit(bt.object,vt,mg):(this.state.objectsObservers[vt]=bt.object,emit(bt.object,vt,ug))):ho&&(emit(ho,vt,dg),this.state.objectsObservers[vt]=null)}}}__doMove(vt,bt){if(this.step.is(oA.CLICK)&&this.__moveThresholdReached(vt,bt))this.viewer.stopAll(),this.__resetMove(),this.step.set(oA.MOVING),this.data.mouseX=vt,this.data.mouseY=bt,this.data.accumulatorFactor=this.config.moveInertia;else if(this.step.is(oA.MOVING)){const le=(vt-this.data.mouseX)*Math.cos(this.state.roll)-(bt-this.data.mouseY)*Math.sin(this.state.roll),ls=(bt-this.data.mouseY)*Math.cos(this.state.roll)+(vt-this.data.mouseX)*Math.sin(this.state.roll),Dl={yaw:this.config.moveSpeed*(le/this.state.size.width)*ho.cj9.degToRad(this.state.hFov),pitch:this.config.moveSpeed*(ls/this.state.size.height)*ho.cj9.degToRad(this.state.vFov)};this.data.moveDelta.yaw+=Dl.yaw,this.data.moveDelta.pitch+=Dl.pitch,this.data.mouseX=vt,this.data.mouseY=bt}}__moveThresholdReached(vt,bt){return Math.abs(vt-this.data.startMouseX)>=this.moveThreshold||Math.abs(bt-this.data.startMouseY)>=this.moveThreshold}__doMoveZoom(vt){if(this.step.is(oA.MOVING)){vt.preventDefault();const bt=getTouchData(vt);this.__doMove(bt.center.x,bt.center.y),this.data.moveDelta.zoom+=this.config.zoomSpeed*((bt.distance-this.data.pinchDist)/Ag.pixelRatio),this.data.pinchDist=bt.distance}}__applyMoveDelta(){const vt=.001;if(Math.abs(this.data.moveDelta.yaw)>0||Math.abs(this.data.moveDelta.pitch)>0){const bt=this.viewer.getPosition();this.viewer.rotate({yaw:bt.yaw-this.data.moveDelta.yaw*(1-this.config.moveInertia),pitch:bt.pitch+this.data.moveDelta.pitch*(1-this.config.moveInertia)}),this.data.moveDelta.yaw*=this.data.accumulatorFactor,this.data.moveDelta.pitch*=this.data.accumulatorFactor,Math.abs(this.data.moveDelta.yaw)<=vt&&(this.data.moveDelta.yaw=0),Math.abs(this.data.moveDelta.pitch)<=vt&&(this.data.moveDelta.pitch=0)}if(Math.abs(this.data.moveDelta.zoom)>0){const bt=this.viewer.getZoomLevel();this.viewer.zoom(bt+this.data.moveDelta.zoom*(1-this.config.moveInertia)),this.data.moveDelta.zoom*=this.config.moveInertia,Math.abs(this.data.moveDelta.zoom)<=vt&&(this.data.moveDelta.zoom=0)}}__clearMoveDelta(){this.data.moveDelta.yaw=0,this.data.moveDelta.pitch=0,this.data.moveDelta.zoom=0}};ho.ppV.enabled=!1;var cA=new ho.I9Y,uA=new ho.kn4,hA=new ho.NRn,dA=class extends iA{constructor(vt){super(vt),this.frustumNeedsUpdate=!0,this.renderer=new Dl.JeP(this.config.rendererParameters),this.renderer.setPixelRatio(Ag.pixelRatio),this.renderer.outputColorSpace=ho.Zr2,this.renderer.toneMapping=ho.kyO,this.renderer.domElement.className="psv-canvas",this.renderer.domElement.style.background=this.config.canvasBackground,this.scene=new ho.Z58,this.camera=new ho.ubm(50,16/9,.1,2*_u),this.camera.matrixAutoUpdate=!1;const bt=new ho.eaF(new ho.Gu$(_u).scale(-1,1,1),new ho.V9B({opacity:0,transparent:!0,depthTest:!1,depthWrite:!1}));bt.userData={[Md]:!0},this.scene.add(bt),this.raycaster=new ho.tBo,this.frustum=new ho.PPD,this.container=document.createElement("div"),this.container.className="psv-canvas-container",this.container.appendChild(this.renderer.domElement),this.viewer.container.appendChild(this.container),this.container.addEventListener("contextmenu",(vt=>vt.preventDefault())),this.viewer.addEventListener(ng.type,this),this.viewer.addEventListener(og.type,this),this.viewer.addEventListener(Um.type,this),this.viewer.addEventListener(Gm.type,this),this.viewer.addEventListener(fm.type,this),this.hide()}get panoramaPose(){return this.mesh.rotation}get sphereCorrection(){return this.meshContainer.rotation}init(){this.show(),this.renderer.setAnimationLoop((vt=>this.__renderLoop(vt)))}destroy(){this.renderer.setAnimationLoop(null),this.cleanScene(this.scene),this.renderer.dispose(),this.viewer.container.removeChild(this.container),this.viewer.removeEventListener(ng.type,this),this.viewer.removeEventListener(og.type,this),this.viewer.removeEventListener(Um.type,this),this.viewer.removeEventListener(Gm.type,this),this.viewer.removeEventListener(fm.type,this),super.destroy()}handleEvent(vt){switch(vt.type){case ng.type:this.__onSizeUpdated();break;case og.type:this.__onZoomUpdated();break;case Um.type:case Gm.type:this.__onPositionUpdated();break;case fm.type:vt.containsOptions("fisheye")&&this.__onPositionUpdated(),vt.containsOptions("canvasBackground")&&(this.renderer.domElement.style.background=this.config.canvasBackground)}}hide(){this.container.style.opacity="0"}show(){this.container.style.opacity="1"}setCustomRenderer(vt){this.customRenderer=vt?vt(this.renderer):null,this.viewer.needsUpdate()}__onSizeUpdated(){this.renderer.setSize(this.state.size.width,this.state.size.height),this.camera.aspect=this.state.aspect,this.camera.updateProjectionMatrix(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__onZoomUpdated(){this.camera.fov=this.state.vFov,this.camera.updateProjectionMatrix(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__onPositionUpdated(){this.camera.position.set(0,0,0),this.camera.lookAt(this.state.direction),this.config.fisheye&&this.camera.position.copy(this.state.direction).multiplyScalar(this.config.fisheye/2).negate(),this.camera.rotateZ(-this.state.roll),this.camera.updateMatrix(),this.camera.updateMatrixWorld(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__renderLoop(vt){const bt=this.timestamp?vt-this.timestamp:0;this.timestamp=vt,this.viewer.dispatchEvent(new cm(vt,bt)),this.viewer.dynamics.update(bt),(this.state.needsUpdate||this.state.continuousUpdateCount>0)&&(this.state.needsUpdate=!1,(this.customRenderer||this.renderer).render(this.scene,this.camera),this.viewer.dispatchEvent(new Zm))}setTexture(vt){this.meshContainer||(this.meshContainer=new ho.YJl,this.scene.add(this.meshContainer)),this.state.textureData&&this.viewer.adapter.disposeTexture(this.state.textureData),this.mesh&&(this.meshContainer.remove(this.mesh),this.viewer.adapter.disposeMesh(this.mesh)),this.mesh=this.viewer.adapter.createMesh(vt.panoData),this.viewer.adapter.setTexture(this.mesh,vt,!1),this.meshContainer.add(this.mesh),this.state.textureData=vt,this.viewer.needsUpdate()}setPanoramaPose(vt,bt){void 0===bt&&(bt=this.mesh);const le=this.viewer.dataHelper.cleanPanoramaPose(vt);bt.rotation.set(-le.tilt,le.pan,le.roll,"YXZ")}setSphereCorrection(vt,bt){void 0===bt&&(bt=this.meshContainer);const le=this.viewer.dataHelper.cleanSphereCorrection(vt);bt.rotation.set(le.tilt,le.pan,le.roll,"YXZ")}transition(vt,bt,le){const Dl="fade"===le.effect||le.rotation,Fl=!isNil(bt.position),sc=!isNil(bt.zoom),uc=new om(Fl?this.viewer.dataHelper.cleanPosition(bt.position):void 0,bt.zoom);this.viewer.dispatchEvent(uc);const mc=new ho.YJl,gc=this.viewer.adapter.createMesh(vt.panoData);if(this.viewer.adapter.setTexture(gc,vt,!0),this.viewer.adapter.setTextureOpacity(gc,0),this.setPanoramaPose(vt.panoData,gc),this.setSphereCorrection(bt.sphereCorrection,mc),Fl&&!le.rotation){const vt=this.viewer.getPosition(),bt=new ho.Pq0(0,1,0);mc.rotateOnWorldAxis(bt,uc.position.yaw-vt.yaw);const le=new ho.Pq0(0,1,0).cross(this.camera.getWorldDirection(new ho.Pq0)).normalize();mc.rotateOnWorldAxis(le,uc.position.pitch-vt.pitch)}mc.add(gc),this.scene.add(mc),this.renderer.setRenderTarget(new ho.nWS),this.renderer.render(this.scene,this.camera),this.renderer.setRenderTarget(null);const{duration:Ac,properties:Ec}=this.viewer.dataHelper.getAnimationProperties(le.speed,le.rotation?uc.position:null,Dl?uc.zoomLevel:null),kc=new Kd({properties:(0,ls.A)({},Ec,{opacity:{start:0,end:1}}),duration:Ac,easing:"inOutCubic",onTick:vt=>{switch(le.effect){case"fade":this.viewer.adapter.setTextureOpacity(gc,vt.opacity);break;case"black":case"white":vt.opacity<.5?this.renderer.toneMappingExposure="black"===le.effect?ho.cj9.mapLinear(vt.opacity,0,.5,1,0):ho.cj9.mapLinear(vt.opacity,0,.5,1,5):(this.renderer.toneMappingExposure="black"===le.effect?ho.cj9.mapLinear(vt.opacity,.5,1,0,1):ho.cj9.mapLinear(vt.opacity,.5,1,5,1),this.mesh.visible=!1,this.viewer.adapter.setTextureOpacity(gc,1),sc&&!Dl&&this.viewer.dynamics.zoom.setValue(uc.zoomLevel))}Fl&&le.rotation&&this.viewer.dynamics.position.setValue({yaw:vt.yaw,pitch:vt.pitch}),sc&&Dl&&this.viewer.dynamics.zoom.setValue(vt.zoom),this.viewer.needsUpdate()}});return kc.then((ls=>{mc.remove(gc),this.scene.remove(mc),ls?(this.viewer.adapter.disposeTexture(this.state.textureData),this.meshContainer.remove(this.mesh),this.viewer.adapter.disposeMesh(this.mesh),this.mesh=gc,this.meshContainer.add(gc),this.state.textureData=vt,this.setPanoramaPose(vt.panoData),this.setSphereCorrection(bt.sphereCorrection),Fl&&!le.rotation&&this.viewer.rotate(bt.position)):(this.viewer.adapter.disposeTexture(vt),this.viewer.adapter.disposeMesh(gc))})),kc}getIntersections(vt){var bt;cA.x=2*vt.x/this.state.size.width-1,cA.y=-2*vt.y/this.state.size.height+1,this.raycaster.setFromCamera(cA,this.camera);const le=this.raycaster.intersectObjects(this.scene.children,!0).filter((vt=>vt.object.visible)).filter((vt=>vt.object.isMesh&&!!vt.object.userData));return null!=(bt=this.customRenderer)&&bt.getIntersections&&le.push(...this.customRenderer.getIntersections(this.raycaster,cA)),le}isObjectVisible(vt){if(!vt)return!1;if(this.frustumNeedsUpdate&&(uA.multiplyMatrices(this.camera.projectionMatrix,this.camera.matrixWorldInverse),this.frustum.setFromProjectionMatrix(uA),this.frustumNeedsUpdate=!1),vt.isVector3)return this.frustum.containsPoint(vt);if(vt.isMesh&&vt.geometry){const bt=vt;return bt.geometry.boundingBox||bt.geometry.computeBoundingBox(),hA.copy(bt.geometry.boundingBox).applyMatrix4(bt.matrixWorld),this.frustum.intersectsBox(hA)}return!!vt.isObject3D&&this.frustum.intersectsObject(vt)}addObject(vt){this.scene.add(vt)}removeObject(vt){this.scene.remove(vt)}cleanScene(vt){const disposeMaterial=vt=>{var bt;null==(bt=vt.map)||bt.dispose(),vt.uniforms&&Object.values(vt.uniforms).forEach((vt=>{var bt;null==(bt=vt.value)||null==bt.dispose||bt.dispose()})),vt.dispose()};vt.traverse((bt=>{var le;null==(le=bt.geometry)||le.dispose(),bt.material&&(Array.isArray(bt.material)?bt.material.forEach((vt=>{disposeMaterial(vt)})):disposeMaterial(bt.material)),bt instanceof ho.Z58||null==bt.dispose||bt.dispose(),bt!==vt&&this.cleanScene(bt)}))}},pA=class extends ho.$NF{constructor(){super(...arguments),this._abortController=new AbortController}abort(){return this._abortController.abort(),this._abortController=new AbortController,this}load(vt,bt,le,ls){const ho=this._abortController.signal,Dl=super.load(vt,(vt=>{removeEventListeners(),bt(vt)}),le,(vt=>{if(removeEventListeners(),ho.aborted){const vt=new Error;vt.name="AbortError",vt.message="The operation was aborted.",ls(vt)}else ls(vt)}));function onAbortSignal(){Dl.src=""}function removeEventListeners(){ho.removeEventListener("abort",onAbortSignal,!1)}return ho.addEventListener("abort",onAbortSignal,!1),Dl}},mA=class extends iA{constructor(vt){super(vt),this.fileLoader=new ho.Y9S,this.fileLoader.setResponseType("blob"),this.imageLoader=new pA}destroy(){this.abortLoading(),super.destroy()}abortLoading(){var vt,bt;null==(vt=(bt=this.fileLoader).abort)||vt.call(bt),this.imageLoader.abort()}loadFile(vt,bt,le){const ls=Qg.get(vt,le);if(ls){if(ls instanceof Blob)return null==bt||bt(100),Promise.resolve(ls);Qg.remove(vt,le)}this.config.requestHeaders&&this.fileLoader.setRequestHeader(this.config.requestHeaders(vt)),this.fileLoader.setWithCredentials(this.config.withCredentials(vt));let ho=0;return null==bt||bt(ho),this.fileLoader.loadAsync(vt,(vt=>{if(vt.lengthComputable){const le=vt.loaded/vt.total*100;le>ho&&(ho=le,null==bt||bt(ho))}})).then((ls=>(ho=100,null==bt||bt(ho),Qg.add(vt,le,ls),ls)))}loadImage(vt,bt,le){const ls=Qg.get(vt,le);return ls?(null==bt||bt(100),ls instanceof Blob?this.blobToImage(ls):Promise.resolve(ls)):bt||this.config.requestHeaders?this.loadFile(vt,bt,le).then((vt=>this.blobToImage(vt))):(this.imageLoader.setWithCredentials(this.config.withCredentials(vt)),this.imageLoader.loadAsync(vt).then((bt=>(Qg.add(vt,le,bt),bt))))}blobToImage(vt){return new Promise(((bt,le)=>{const ls=document.createElement("img");ls.onload=()=>{URL.revokeObjectURL(ls.src),bt(ls)},ls.onerror=le,ls.src=URL.createObjectURL(vt)}))}preloadPanorama(vt){return this.viewer.adapter.supportsPreload(vt)?this.viewer.adapter.loadTexture(vt,!1):Promise.reject(new qd("Current adapter does not support preload"))}dispatchProgress(vt){this.viewer.loader.setProgress(vt),this.viewer.dispatchEvent(new Dm(Math.round(vt)))}},fA=class extends iA{constructor(vt){super(vt),this.zoom=new Jd((vt=>{this.viewer.state.vFov=this.viewer.dataHelper.zoomLevelToFov(vt),this.viewer.state.hFov=this.viewer.dataHelper.vFovToHFov(this.viewer.state.vFov),this.viewer.dispatchEvent(new og(vt))}),{defaultValue:this.viewer.config.defaultZoomLvl,min:0,max:100,wrap:!1}),this.position=new $d((vt=>{this.viewer.dataHelper.sphericalCoordsToVector3(vt,this.viewer.state.direction),this.viewer.dispatchEvent(new Um(vt))}),{yaw:new Jd(null,{defaultValue:this.config.defaultYaw,min:0,max:2*Math.PI,wrap:!0}),pitch:new Jd(null,{defaultValue:this.config.defaultPitch,min:-Math.PI/2,max:Math.PI/2,wrap:!1})}),this.roll=new Jd((vt=>{this.viewer.state.roll=vt,this.viewer.dispatchEvent(new Gm(vt))}),{defaultValue:0,min:-Math.PI,max:Math.PI,wrap:!1}),this.updateSpeeds()}updateSpeeds(){this.zoom.setSpeed(50*this.config.zoomSpeed),this.position.setSpeed(ho.cj9.degToRad(50*this.config.moveSpeed)),this.roll.setSpeed(ho.cj9.degToRad(50*this.config.moveSpeed))}update(vt){this.zoom.update(vt),this.position.update(vt),this.roll.update(vt)}},gA=class{constructor(){this.ready=!1,this.needsUpdate=!1,this.continuousUpdateCount=0,this.keyboardEnabled=!1,this.direction=new ho.Pq0(0,0,_u),this.roll=0,this.vFov=60,this.hFov=60,this.aspect=1,this.animation=null,this.transitionAnimation=null,this.loadingPromise=null,this.idleTime=-1,this.objectsObservers={},this.size={width:0,height:0}}},AA=class extends rm{constructor(vt){var bt,le;if(super(),this.plugins={},this.children=[],this.parent=getElement(vt.container),!this.parent)throw new qd('"container" element not found.');this.parent[Md]=this,this.container=document.createElement("div"),this.container.classList.add("psv-container"),this.parent.appendChild(this.container),checkClosedShadowDom(this.parent),checkStylesheet(this.container,"core"),this.state=new gA,this.config=qg(vt),this.__setSize(this.config.size),this.overlay=new Jg(this);try{Ag.load()}catch(ls){return console.error(ls),void this.showError(this.config.lang.webglError)}Qg.init(),this.adapter=new this.config.adapter[0](this,this.config.adapter[1]),this.renderer=new dA(this),this.textureLoader=new mA(this),this.eventsHandler=new lA(this),this.dataHelper=new aA(this),this.dynamics=new fA(this),null==(bt=(le=this.adapter).init)||bt.call(le),this.loader=new Xg(this),this.navbar=new Yg(this),this.panel=new tA(this),this.notification=new Kg(this),this.autoSize(),this.setCursor(null),resolveBoolean(Ag.isTouchEnabled,(vt=>{toggleClass(this.container,"psv--is-touch",vt)})),this.config.plugins.forEach((vt=>{let[bt,le]=vt;this.plugins[bt.id]=new bt(this,le)}));for(const ho of Object.values(this.plugins))null==ho.init||ho.init();this.config.navbar&&this.navbar.setButtons(this.config.navbar),this.state.loadingPromise||(this.config.panorama?this.setPanorama(this.config.panorama,{sphereCorrection:this.config.sphereCorrection,panoData:this.config.panoData}):this.loader.show())}destroy(){var vt,bt,le,ls,ho,Dl;this.stopAll(),this.stopKeyboardControl(),this.exitFullscreen();for(const[Fl,sc]of Object.entries(this.plugins))sc.destroy(),delete this.plugins[Fl];this.children.slice().forEach((vt=>vt.destroy())),this.children.length=0,null==(vt=this.eventsHandler)||vt.destroy(),null==(bt=this.renderer)||bt.destroy(),null==(le=this.textureLoader)||le.destroy(),null==(ls=this.dataHelper)||ls.destroy(),null==(ho=this.adapter)||ho.destroy(),null==(Dl=this.dynamics)||Dl.destroy(),this.parent.removeChild(this.container),delete this.parent[Md]}init(){this.eventsHandler.init(),this.renderer.init(),this.config.navbar&&this.navbar.show(),"always"===this.config.keyboard&&this.startKeyboardControl(),this.resetIdleTimer(),this.state.ready=!0,this.dispatchEvent(new Hm)}resetIdleTimer(){this.state.idleTime=performance.now()}disableIdleTimer(){this.state.idleTime=-1}getPlugin(vt){if("string"===typeof vt)return this.plugins[vt];{const bt=pluginInterop(vt);return bt?this.plugins[bt.id]:null}}getPosition(){return this.dataHelper.cleanPosition(this.dynamics.position.current)}getZoomLevel(){return this.dynamics.zoom.current}getSize(){return(0,ls.A)({},this.state.size)}isFullscreenEnabled(){return isFullscreenEnabled(this.parent,Ag.isIphone)}needsUpdate(){this.state.needsUpdate=!0}needsContinuousUpdate(vt){vt?this.state.continuousUpdateCount++:this.state.continuousUpdateCount>0&&this.state.continuousUpdateCount--}autoSize(){this.container.clientWidth===this.state.size.width&&this.container.clientHeight===this.state.size.height||(this.state.size.width=Math.round(this.container.clientWidth),this.state.size.height=Math.round(this.container.clientHeight),this.state.aspect=this.state.size.width/this.state.size.height,this.state.hFov=this.dataHelper.vFovToHFov(this.state.vFov),this.dispatchEvent(new ng(this.getSize())),this.navbar.autoSize())}setPanorama(vt,bt){var le;void 0===bt&&(bt={}),this.textureLoader.abortLoading(),null==(le=this.state.transitionAnimation)||le.cancel();const ls=this.dataHelper.getTransitionOptions(bt);void 0===bt.showLoader&&(bt.showLoader=!0),void 0===bt.caption&&(bt.caption=this.config.caption),void 0===bt.description&&(bt.description=this.config.description),bt.panoData||"function"!==typeof this.config.panoData||(bt.panoData=this.config.panoData),this.hideError(),this.resetIdleTimer(),this.config.panorama=vt,this.config.caption=bt.caption,this.config.description=bt.description,this.config.sphereCorrection=bt.sphereCorrection,"function"===typeof this.config.panoData&&"function"!==typeof bt.panoData||(this.config.panoData=bt.panoData);const done=bt=>{if(isAbortError(bt))return!1;if(this.loader.hide(),this.state.loadingPromise=null,bt)throw this.navbar.setCaption(null),this.showError(this.config.lang.loadError),console.error(bt),this.dispatchEvent(new Fm(vt,bt)),bt;return this.navbar.setCaption(this.config.caption),!0};this.navbar.setCaption("<em>"+this.config.lang.loading+"</em>"),!bt.showLoader&&this.state.ready||this.loader.show(),this.dispatchEvent(new Pm(vt));const ho=this.adapter.loadTexture(this.config.panorama,!0,bt.panoData).then((vt=>{if(vt.panorama!==this.config.panorama)throw this.adapter.disposeTexture(vt),getAbortError();const le=this.dataHelper.cleanPanoramaOptions(bt,vt.panoData);return isNil(le.zoom)&&isNil(le.position)||this.stopAll(),{textureData:vt,cleanOptions:le}}));return ls&&this.state.ready&&this.adapter.supportsTransition(this.config.panorama)?this.state.loadingPromise=ho.then((vt=>{let{textureData:bt,cleanOptions:le}=vt;return this.loader.hide(),this.dispatchEvent(new Nm(bt)),this.state.transitionAnimation=this.renderer.transition(bt,le,ls),this.state.transitionAnimation})).then((vt=>{if(this.state.transitionAnimation=null,this.dispatchEvent(new Bm(vt)),!vt)throw getAbortError()})).then((()=>done()),(vt=>done(vt))):this.state.loadingPromise=ho.then((vt=>{let{textureData:le,cleanOptions:ls}=vt;this.renderer.show(),this.renderer.setTexture(le),this.renderer.setPanoramaPose(le.panoData),this.renderer.setSphereCorrection(bt.sphereCorrection),this.state.ready||this.init(),this.dispatchEvent(new Nm(le)),isNil(ls.zoom)||this.zoom(ls.zoom),isNil(ls.position)||this.rotate(ls.position)})).then((()=>done()),(vt=>done(vt))),this.state.loadingPromise}setOptions(vt){const bt=(0,ls.A)({},this.config,vt);for(let[le,ls]of Object.entries(vt))if(le in Ug)if(le in Vg)logWarn(Vg[le]);else switch(le in Gg&&(ls=Gg[le](ls,{rawConfig:bt,defValue:Ug[le]})),this.config[le]=ls,le){case"mousemove":this.state.cursorOverride||this.setCursor(null);break;case"caption":this.navbar.setCaption(this.config.caption);break;case"size":this.resize(this.config.size);break;case"sphereCorrection":this.renderer.setSphereCorrection(this.config.sphereCorrection);break;case"navbar":case"lang":this.navbar.setButtons(this.config.navbar);break;case"moveSpeed":case"zoomSpeed":this.dynamics.updateSpeeds();break;case"minFov":case"maxFov":this.dynamics.zoom.setValue(this.dataHelper.fovToZoomLevel(this.state.vFov)),this.dispatchEvent(new og(this.getZoomLevel()));break;case"keyboard":"always"===this.config.keyboard?this.startKeyboardControl():this.stopKeyboardControl()}else logWarn("Unknown option "+le);this.needsUpdate(),this.dispatchEvent(new fm(Object.keys(vt)))}setOption(vt,bt){this.setOptions({[vt]:bt})}showError(vt){this.overlay.show({id:Rd.ERROR,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="15 15 70 70"><path fill="currentColor" d="M50,16.2c-18.6,0-33.8,15.1-33.8,33.8S31.4,83.7,50,83.7S83.8,68.6,83.8,50S68.6,16.2,50,16.2z M50,80.2c-16.7,0-30.2-13.6-30.2-30.2S33.3,19.7,50,19.7S80.3,33.3,80.3,50S66.7,80.2,50,80.2z"/><rect fill="currentColor" x="48" y="31.7" width="4" height="28"/><rect fill="currentColor" x="48" y="63.2" width="4" height="5"/>\x3c!--Created by Shastry from the Noun Project--\x3e</svg>\n',title:vt,dismissible:!1})}hideError(){this.overlay.hide(Rd.ERROR)}rotate(vt){const bt=new hm(this.dataHelper.cleanPosition(vt));this.dispatchEvent(bt),bt.defaultPrevented||this.dynamics.position.setValue(bt.position)}zoom(vt){this.dynamics.zoom.setValue(vt)}zoomIn(vt){void 0===vt&&(vt=1),this.dynamics.zoom.step(vt)}zoomOut(vt){void 0===vt&&(vt=1),this.dynamics.zoom.step(-vt)}animate(vt){const bt=isExtendedPosition(vt),le=!isNil(vt.zoom),ls=new om(bt?this.dataHelper.cleanPosition(vt):void 0,vt.zoom);if(this.dispatchEvent(ls),ls.defaultPrevented)return;this.stopAll();const{duration:ho,properties:Dl}=this.dataHelper.getAnimationProperties(vt.speed,ls.position,ls.zoomLevel);return ho?(this.state.animation=new Kd({properties:Dl,duration:ho,easing:vt.easing||"inOutSine",onTick:vt=>{bt&&this.dynamics.position.setValue({yaw:vt.yaw,pitch:vt.pitch}),le&&this.dynamics.zoom.setValue(vt.zoom)}}),this.state.animation.then((()=>{this.state.animation=null,this.resetIdleTimer()})),this.state.animation):(bt&&this.rotate(ls.position),le&&this.zoom(ls.zoomLevel),new Kd(null))}stopAnimation(){return this.state.animation?(this.state.animation.cancel(),this.state.animation):Promise.resolve()}resize(vt){this.__setSize(vt),this.autoSize()}__setSize(vt){["width","height"].forEach((bt=>{null!=vt&&vt[bt]&&(/^[0-9.]+$/.test(vt[bt])&&(vt[bt]+="px"),this.parent.style[bt]=vt[bt])}))}enterFullscreen(){this.isFullscreenEnabled()||requestFullscreen(this.parent,Ag.isIphone)}exitFullscreen(){this.isFullscreenEnabled()&&exitFullscreen(Ag.isIphone)}toggleFullscreen(){this.isFullscreenEnabled()?this.exitFullscreen():this.enterFullscreen()}startKeyboardControl(){this.state.keyboardEnabled=!0}stopKeyboardControl(){this.state.keyboardEnabled=!1}createTooltip(vt){return new eA(this,vt)}setCursor(vt){this.state.cursorOverride=vt,this.container.style.cursor=vt||(this.config.mousemove?"move":"default")}observeObjects(vt){this.state.objectsObservers[vt]||(this.state.objectsObservers[vt]=null)}unobserveObjects(vt){delete this.state.objectsObservers[vt]}stopAll(){return this.dispatchEvent(new ag),this.disableIdleTimer(),this.stopAnimation()}}},3890:(vt,bt,le)=>{"use strict";le.d(bt,{D:()=>Ec});var ls=le(8168),ho=le(1545),Dl=le(9435),Fl=class{constructor(vt,bt,le){this.id=vt,this.priority=bt,this.fn=le,this.status=1}start(){return this.status=2,this.fn(this).then((()=>{this.status=4}),(()=>{this.status=5}))}cancel(){this.status=3}isCancelled(){return 3===this.status}},sc=class{constructor(vt){void 0===vt&&(vt=8),this.concurency=vt,this.runningTasks={},this.tasks={}}enqueue(vt){this.tasks[vt.id]=vt}clear(){Object.values(this.tasks).forEach((vt=>vt.cancel())),this.tasks={},this.runningTasks={}}setPriority(vt,bt){const le=this.tasks[vt];le&&(le.priority=bt,0===le.status&&(le.status=1))}disableAllTasks(){Object.values(this.tasks).forEach((vt=>{vt.status=0}))}start(){if(Object.keys(this.runningTasks).length>=this.concurency)return;const vt=Object.values(this.tasks).filter((vt=>1===vt.status)).sort(((vt,bt)=>bt.priority-vt.priority)).pop();vt&&(this.runningTasks[vt.id]=!0,vt.start().then((()=>{vt.isCancelled()||(delete this.tasks[vt.id],delete this.runningTasks[vt.id],this.start())})),this.start())}};var uc=["dodgerblue","limegreen","indianred"];function isMultiTiles(vt){return!!vt.levels}function computeTileConfig(vt,bt,le){return(0,ls.A)({},vt,{level:bt,colSize:vt.width/vt.cols,rowSize:vt.width/2/vt.rows,facesByCol:le.SPHERE_SEGMENTS/vt.cols,facesByRow:le.SPHERE_HORIZONTAL_SEGMENTS/vt.rows})}function getTileConfig(vt,bt,le,ho,Dl){let Fl,sc;return isMultiTiles(vt)?(ho?(sc=vt.levels.findIndex((vt=>{const ls=vt.width/360*bt,Dl=vt.width/2/180*le;return ls>=ho.width&&Dl>=ho.height})),-1===sc&&(sc=vt.levels.length-1)):sc=0,Fl=vt.levels[sc]):(sc=0,Fl=(0,ls.A)({},vt)),computeTileConfig(Fl,sc,Dl)}function getTileConfigByIndex(vt,bt,le){return isMultiTiles(vt)&&vt.levels[bt]?computeTileConfig(vt.levels[bt],bt,le):null}function checkTile(vt,bt){if(!vt.width||!vt.cols||!vt.rows)throw new ho.e6("Invalid panorama configuration, are you using the right adapter?");if(vt.cols>bt.SPHERE_SEGMENTS)throw new ho.e6("Panorama cols must not be greater than "+bt.SPHERE_SEGMENTS+".");if(vt.rows>bt.SPHERE_HORIZONTAL_SEGMENTS)throw new ho.e6("Panorama rows must not be greater than "+bt.SPHERE_HORIZONTAL_SEGMENTS+".");if(!Dl.cj9.isPowerOfTwo(vt.cols)||!Dl.cj9.isPowerOfTwo(vt.rows))throw new ho.e6("Panorama cols and rows must be powers of 2.")}function getCacheKey(vt,bt){for(let le=0;le<bt.cols;le++){const ls=vt.tileUrl(le,bt.rows/2,bt.level);if(ls)return ls}return vt.tileUrl.toString()}function tileId(vt){return vt.col+"x"+vt.row+"/"+vt.config.level}function meshes(vt){return vt.children}var mc=ho.Wp.getConfigParser({resolution:64,showErrorTile:!0,baseBlur:!0,antialias:!0,debug:!1,useXmpData:!1}),gc=new Dl.Pq0,Ac=class _EquirectangularTilesAdapter extends ho.Qw{constructor(vt,bt){super(vt),this.state={tileConfig:null,tiles:{},faces:{},geom:null,materials:[],errorMaterial:null,inTransition:!1},this.queue=new sc,this.config=mc(bt),this.adapter=new ho.GR(this.viewer,{resolution:this.config.resolution,blur:this.config.baseBlur}),this.SPHERE_SEGMENTS=this.config.resolution,this.SPHERE_HORIZONTAL_SEGMENTS=this.SPHERE_SEGMENTS/2,this.NB_VERTICES=2*this.SPHERE_SEGMENTS*3+(this.SPHERE_HORIZONTAL_SEGMENTS-2)*this.SPHERE_SEGMENTS*6,this.NB_GROUPS=this.SPHERE_SEGMENTS*this.SPHERE_HORIZONTAL_SEGMENTS,this.viewer.config.requestHeaders&&ho.Wp.logWarn('EquirectangularTilesAdapter fallbacks to file loader because "requestHeaders" where provided. Consider removing "requestHeaders" if you experience performances issues.')}static withConfig(vt){return[_EquirectangularTilesAdapter,vt]}init(){super.init(),this.viewer.addEventListener(ho.AZ.TransitionDoneEvent.type,this),this.viewer.addEventListener(ho.AZ.PositionUpdatedEvent.type,this),this.viewer.addEventListener(ho.AZ.ZoomUpdatedEvent.type,this)}destroy(){var vt,bt,le;this.viewer.removeEventListener(ho.AZ.TransitionDoneEvent.type,this),this.viewer.removeEventListener(ho.AZ.PositionUpdatedEvent.type,this),this.viewer.removeEventListener(ho.AZ.ZoomUpdatedEvent.type,this),this.__cleanup(),null==(vt=this.state.errorMaterial)||null==(bt=vt.map)||bt.dispose(),null==(le=this.state.errorMaterial)||le.dispose(),this.adapter.destroy(),delete this.adapter,delete this.state.geom,delete this.state.errorMaterial,super.destroy()}handleEvent(vt){switch(vt.type){case ho.AZ.PositionUpdatedEvent.type:case ho.AZ.ZoomUpdatedEvent.type:this.__refresh();break;case ho.AZ.TransitionDoneEvent.type:this.state.inTransition=!1,vt.completed&&this.__switchMesh(this.viewer.renderer.mesh)}}supportsTransition(vt){return!!vt.baseUrl}supportsPreload(vt){return!!vt.baseUrl}textureCoordsToSphericalCoords(vt,bt){return this.adapter.textureCoordsToSphericalCoords(vt,bt)}sphericalCoordsToTextureCoords(vt,bt){return this.adapter.sphericalCoordsToTextureCoords(vt,bt)}async loadTexture(vt,bt){void 0===bt&&(bt=!0),function(vt,bt){if("object"!==typeof vt||!vt.tileUrl)throw new ho.e6("Invalid panorama configuration, are you using the right adapter?");isMultiTiles(vt)?(vt.levels.forEach((vt=>{checkTile(vt,bt),"zoomRange"in vt&&ho.Wp.logWarn('EquirectangularTilesAdapter: "zoomRange" property is deprecated and must be removed')})),vt.levels.sort(((vt,bt)=>vt.width-bt.width))):checkTile(vt,bt)}(vt,this);const le=getTileConfig(vt,0,0,null,this),Dl={isEquirectangular:!0,fullWidth:le.width,fullHeight:le.width/2,croppedWidth:le.width,croppedHeight:le.width/2,croppedX:0,croppedY:0,poseHeading:0,posePitch:0,poseRoll:0};if(vt.baseUrl){const le=await this.adapter.loadTexture(vt.baseUrl,bt,vt.basePanoData,!0);return{panorama:vt,panoData:(0,ls.A)({},Dl,{baseData:le.panoData}),cacheKey:le.cacheKey,texture:le.texture}}return{panorama:vt,panoData:(0,ls.A)({},Dl,{baseData:null}),cacheKey:getCacheKey(vt,le),texture:null}}createMesh(vt){var bt;const le=this.adapter.createMesh(null!=(bt=vt.baseData)?bt:vt),ls=new Dl.Gu$(ho.aH.SPHERE_RADIUS,this.SPHERE_SEGMENTS,this.SPHERE_HORIZONTAL_SEGMENTS,-Math.PI/2).scale(-1,1,1).toNonIndexed();ls.clearGroups();let Fl=0,sc=0;for(;Fl<3*this.SPHERE_SEGMENTS;Fl+=3)ls.addGroup(Fl,3,sc++);for(;Fl<this.NB_VERTICES-3*this.SPHERE_SEGMENTS;Fl+=6)ls.addGroup(Fl,6,sc++);for(;Fl<this.NB_VERTICES;Fl+=3)ls.addGroup(Fl,3,sc++);const uc=[],mc=new Dl.V9B({opacity:0,transparent:!0,depthTest:!1,depthWrite:!1});for(let ho=0;ho<this.NB_GROUPS;ho++)uc.push(mc);const gc=new Dl.eaF(ls,uc);gc.renderOrder=1;const Ac=new Dl.YJl;return Ac.add(le),Ac.add(gc),Ac}setTexture(vt,bt,le){const[ls]=meshes(vt);bt.texture?this.adapter.setTexture(ls,{panorama:bt.panorama.baseUrl,texture:bt.texture,panoData:bt.panoData.baseData}):ls.visible=!1,le?this.state.inTransition=!0:this.__switchMesh(vt)}setTextureOpacity(vt,bt){const[le]=meshes(vt);this.adapter.setTextureOpacity(le,bt)}disposeTexture(vt){let{texture:bt}=vt;null==bt||bt.dispose()}disposeMesh(vt){const[bt,le]=meshes(vt);bt.geometry.dispose(),bt.material.dispose(),le.geometry.dispose(),le.material.forEach((vt=>{var bt;null==(bt=vt.map)||bt.dispose(),vt.dispose()}))}__refresh(){if(!this.state.geom||this.state.inTransition)return;const vt=this.viewer.config.panorama,bt=getTileConfig(vt,this.viewer.state.hFov,this.viewer.state.vFov,this.viewer.state.size,this),le=this.state.geom.getAttribute("position"),ls={};for(let ho=0;ho<this.NB_VERTICES;ho+=1)if(gc.fromBufferAttribute(le,ho),gc.applyEuler(this.viewer.renderer.sphereCorrection),this.viewer.renderer.isObjectVisible(gc)){let le;le=ho<3*this.SPHERE_SEGMENTS?Math.floor(ho/3):ho<this.NB_VERTICES-3*this.SPHERE_SEGMENTS?Math.floor((ho/3-this.SPHERE_SEGMENTS)/2)+this.SPHERE_SEGMENTS:Math.floor((ho-this.NB_VERTICES-3*this.SPHERE_SEGMENTS)/3)+this.SPHERE_HORIZONTAL_SEGMENTS*(this.SPHERE_SEGMENTS-1);const Dl=Math.floor(le/this.SPHERE_SEGMENTS),Fl=le-Dl*this.SPHERE_SEGMENTS;let sc=bt;for(;sc;){const bt=Math.floor(Dl/sc.facesByRow),le=Math.floor(Fl/sc.facesByCol);let ho=gc.angleTo(this.viewer.state.direction);0!==bt&&bt!==sc.rows-1||(ho*=2);const uc={row:bt,col:le,angle:ho,config:sc,url:null},mc=tileId(uc);if(ls[mc]){ls[mc].angle=Math.min(ls[mc].angle,ho);break}if(uc.url=vt.tileUrl(le,bt,sc.level),uc.url){ls[mc]=uc;break}sc=getTileConfigByIndex(vt,sc.level-1,this)}}this.state.tileConfig=bt,this.__loadTiles(Object.values(ls))}__loadTiles(vt){this.queue.disableAllTasks(),vt.forEach((vt=>{const bt=tileId(vt);this.state.tiles[bt]?this.queue.setPriority(bt,vt.angle):(this.state.tiles[bt]=!0,this.queue.enqueue(new Fl(bt,vt.angle,(bt=>this.__loadTile(vt,bt)))))})),this.queue.start()}__loadTile(vt,bt){return this.viewer.textureLoader.loadImage(vt.url,null,this.viewer.state.textureData.cacheKey).then((le=>{if(!bt.isCancelled()){this.config.debug&&(le=function(vt,bt,le){const ls=document.createElement("canvas");ls.width=vt.width,ls.height=vt.height;const ho=ls.getContext("2d");ho.fillStyle=uc[bt%uc.length],ho.fillRect(0,0,ls.width,ls.height),ho.globalCompositeOperation="multiply",ho.drawImage(vt,0,0);const Dl=vt.width/7;return ho.globalCompositeOperation="source-over",ho.fillStyle="white",ho.font=Dl+"px monospace",ho.textAlign="center",le.split("\n").forEach(((bt,le)=>{ho.fillText(bt,vt.width/2,vt.height/2+Dl*(.3+le))})),ls}(le,vt.config.level,tileId(vt)));const bt=this.config.antialias&&vt.config.level>0,ls=new Dl.V9B({map:ho.Wp.createTexture(le,bt)});this.__swapMaterial(vt,ls,!1),this.viewer.needsUpdate()}})).catch((le=>{ho.Wp.isAbortError(le)||bt.isCancelled()||!this.config.showErrorTile||(this.state.errorMaterial||(this.state.errorMaterial=function(){const vt=new OffscreenCanvas(512,512),bt=vt.getContext("2d");return bt.fillStyle="#333",bt.fillRect(0,0,vt.width,vt.height),bt.font=vt.width/5+"px serif",bt.fillStyle="#a22",bt.textAlign="center",bt.textBaseline="middle",bt.fillText("\u26a0",vt.width/2,vt.height/2),new Dl.V9B({map:ho.Wp.createTexture(vt)})}()),this.__swapMaterial(vt,this.state.errorMaterial,!0),this.viewer.needsUpdate())}))}__swapMaterial(vt,bt,le){const ls=this.state.geom.getAttribute("uv");for(let ho=0;ho<vt.config.facesByCol;ho++)for(let Dl=0;Dl<vt.config.facesByRow;Dl++){const Fl=vt.col*vt.config.facesByCol+ho,sc=vt.row*vt.config.facesByRow+Dl,uc=0===sc,mc=sc===this.SPHERE_HORIZONTAL_SEGMENTS-1;let gc;if(gc=uc?3*Fl:mc?this.NB_VERTICES-3*this.SPHERE_SEGMENTS+3*Fl:3*this.SPHERE_SEGMENTS+(sc-1)*this.SPHERE_SEGMENTS*6+6*Fl,le&&this.state.faces[gc]>-1)continue;if(this.state.faces[gc]>vt.config.level)continue;this.state.faces[gc]=le?-1:vt.config.level;const Ac=this.state.geom.groups.find((vt=>vt.start===gc)).materialIndex;this.state.materials[Ac]=bt;const Ec=1-Dl/vt.config.facesByRow,kc=1-(Dl+1)/vt.config.facesByRow,du=ho/vt.config.facesByCol,_u=(ho+1)/vt.config.facesByCol;uc?(ls.setXY(gc,(du+_u)/2,Ec),ls.setXY(gc+1,du,kc),ls.setXY(gc+2,_u,kc)):mc?(ls.setXY(gc,_u,Ec),ls.setXY(gc+1,du,Ec),ls.setXY(gc+2,(du+_u)/2,kc)):(ls.setXY(gc,_u,Ec),ls.setXY(gc+1,du,Ec),ls.setXY(gc+2,_u,kc),ls.setXY(gc+3,du,Ec),ls.setXY(gc+4,du,kc),ls.setXY(gc+5,_u,kc))}ls.needsUpdate=!0}__switchMesh(vt){const[,bt]=meshes(vt);if(this.__cleanup(),this.state.materials=bt.material,this.state.geom=bt.geometry,this.config.debug){const vt=function(vt){const bt=new Dl.XJ7(vt),le=new Dl.DXC(bt);return le.material.depthTest=!1,le.material.depthWrite=!1,le.material.opacity=.25,le.material.transparent=!0,le}(this.state.geom);this.viewer.renderer.addObject(vt),this.viewer.renderer.setSphereCorrection(this.viewer.config.sphereCorrection,vt)}setTimeout((()=>this.__refresh()))}__cleanup(){this.queue.clear(),this.state.tiles={},this.state.faces={},this.state.materials=[],this.state.inTransition=!1}};Ac.id="equirectangular-tiles",Ac.VERSION="5.14.1",Ac.supportsDownload=!1;var Ec=Ac},4991:(vt,bt,le)=>{"use strict";le.d(bt,{b:()=>Im});var ls=le(8168),ho=le(1545),Dl=le(9435),Fl=Object.defineProperty;((vt,bt)=>{for(var le in bt)Fl(vt,le,{get:bt[le],enumerable:!0})})({},{EnterMarkerEvent:()=>_u,GotoMarkerDoneEvent:()=>Ac,HideMarkersEvent:()=>Gd,LeaveMarkerEvent:()=>kc,MarkerVisibilityEvent:()=>mc,MarkersPluginEvent:()=>sc,RenderMarkersListEvent:()=>Qd,SelectMarkerEvent:()=>Ld,SelectMarkerListEvent:()=>Rd,SetMarkersEvent:()=>Hd,ShowMarkersEvent:()=>Zd,UnselectMarkerEvent:()=>jd});var sc=class extends ho.rx{},uc=class _MarkerVisibilityEvent extends sc{constructor(vt,bt){super(_MarkerVisibilityEvent.type),this.marker=vt,this.visible=bt}};uc.type="marker-visibility";var mc=uc,gc=class _GotoMarkerDoneEvent extends sc{constructor(vt){super(_GotoMarkerDoneEvent.type),this.marker=vt}};gc.type="goto-marker-done";var Ac=gc,Ec=class _LeaveMarkerEvent extends sc{constructor(vt){super(_LeaveMarkerEvent.type),this.marker=vt}};Ec.type="leave-marker";var kc=Ec,du=class _EnterMarkerEvent extends sc{constructor(vt){super(_EnterMarkerEvent.type),this.marker=vt}};du.type="enter-marker";var _u=du,Md=class _SelectMarkerEvent extends sc{constructor(vt,bt,le){super(_SelectMarkerEvent.type),this.marker=vt,this.doubleClick=bt,this.rightClick=le}};Md.type="select-marker";var Ld=Md,Nd=class _SelectMarkerListEvent extends sc{constructor(vt){super(_SelectMarkerListEvent.type),this.marker=vt}};Nd.type="select-marker-list";var Rd=Nd,Od=class _UnselectMarkerEvent extends sc{constructor(vt){super(_UnselectMarkerEvent.type),this.marker=vt}};Od.type="unselect-marker";var jd=Od,Ud=class _HideMarkersEvent extends sc{constructor(){super(_HideMarkersEvent.type)}};Ud.type="hide-markers";var Gd=Ud,qd=class _SetMarkersEvent extends sc{constructor(vt){super(_SetMarkersEvent.type),this.markers=vt}};qd.type="set-markers";var Hd=qd,Wd=class _ShowMarkersEvent extends sc{constructor(){super(_ShowMarkersEvent.type)}};Wd.type="show-markers";var Zd=Wd,Yd=class _RenderMarkersListEvent extends sc{constructor(vt){super(_RenderMarkersListEvent.type),this.markers=vt}};Yd.type="render-markers-list";var Qd=Yd,Xd=class extends ho.Np{constructor(vt){super(vt,{className:"psv-markers-button",icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="10 9 81 81"><path fill="currentColor" d="M50.5 90S22.9 51.9 22.9 36.6 35.2 9 50.5 9s27.6 12.4 27.6 27.6S50.5 90 50.5 90zm0-66.3c-6.1 0-11 4.9-11 11s4.9 11 11 11 11-4.9 11-11-4.9-11-11-11z"/>\x3c!--Created by Rohith M S from the Noun Project--\x3e</svg>\n',hoverScale:!0,collapsable:!0,tabbable:!0}),this.plugin=this.viewer.getPlugin("markers"),this.plugin&&(this.plugin.addEventListener(Zd.type,this),this.plugin.addEventListener(Gd.type,this),this.toggleActive(!0))}destroy(){this.plugin&&(this.plugin.removeEventListener(Zd.type,this),this.plugin.removeEventListener(Gd.type,this)),super.destroy()}isSupported(){return!!this.plugin}handleEvent(vt){vt instanceof Zd?this.toggleActive(!0):vt instanceof Gd&&this.toggleActive(!1)}onClick(){this.plugin.toggleAllMarkers()}};Xd.id="markers";var Kd='<svg xmlns="http://www.w3.org/2000/svg" viewBox="9 9 81 81"><path fill="currentColor" d="M37.5 90S9.9 51.9 9.9 36.6 22.2 9 37.5 9s27.6 12.4 27.6 27.6S37.5 90 37.5 90zm0-66.3c-6.1 0-11 4.9-11 11s4.9 11 11 11 11-4.9 11-11-4.9-11-11-11zM86.7 55H70c-1.8 0-3.3-1.5-3.3-3.3s1.5-3.3 3.3-3.3h16.7c1.8 0 3.3 1.5 3.3 3.3S88.5 55 86.7 55zm0-25h-15a3.3 3.3 0 0 1-3.3-3.3c0-1.8 1.5-3.3 3.3-3.3h15c1.8 0 3.3 1.5 3.3 3.3 0 1.8-1.5 3.3-3.3 3.3zM56.5 73h30c1.8 0 3.3 1.5 3.3 3.3 0 1.8-1.5 3.3-3.3 3.3h-30a3.3 3.3 0 0 1-3.3-3.3 3.2 3.2 0 0 1 3.3-3.3z"/>\x3c!--Created by Rohith M S from the Noun Project--\x3e</svg>\n',Jd="http://www.w3.org/2000/svg",$d="psvMarker",sp=ho.Wp.dasherize($d),tm="marker",em="markersList",im={amount:2,duration:100,easing:"linear"},MARKERS_LIST_TEMPLATE=(vt,bt)=>'\n<div class="psv-panel-menu psv-panel-menu--stripped">\n <h1 class="psv-panel-menu-title">'+Kd+" "+bt+'</h1>\n <ul class="psv-panel-menu-list">\n '+vt.map((vt=>"\n <li data-"+sp+'="'+vt.id+'" class="psv-panel-menu-item" tabindex="0">\n '+("image"===vt.type?'<span class="psv-panel-menu-item-icon"><img src="'+vt.definition+'"/></span>':"")+'\n <span class="psv-panel-menu-item-label">'+vt.getListContent()+"</span>\n </li>\n ")).join("")+"\n </ul>\n</div>\n",nm=class extends ho.Np{constructor(vt){super(vt,{className:" psv-markers-list-button",icon:Kd,hoverScale:!0,collapsable:!0,tabbable:!0}),this.plugin=this.viewer.getPlugin("markers"),this.plugin&&(this.viewer.addEventListener(ho.AZ.ShowPanelEvent.type,this),this.viewer.addEventListener(ho.AZ.HidePanelEvent.type,this))}destroy(){this.viewer.removeEventListener(ho.AZ.ShowPanelEvent.type,this),this.viewer.removeEventListener(ho.AZ.HidePanelEvent.type,this),super.destroy()}isSupported(){return!!this.plugin}handleEvent(vt){vt instanceof ho.AZ.ShowPanelEvent?this.toggleActive(vt.panelId===em):vt instanceof ho.AZ.HidePanelEvent&&this.toggleActive(!1)}onClick(){this.plugin.toggleMarkersList()}};nm.id="markersList";var rm=new Dl.Pq0,am=new Dl.PTz,sm=new Dl.Pq0,om=class extends Dl.B69{constructor(vt){void 0===vt&&(vt=document.createElement("div")),super(),this.isCSS3DObject=!0,this.element=vt,this.element.style.position="absolute",this.element.style.pointerEvents="auto",this.element.style.userSelect="none",this.element.setAttribute("draggable",!1),this.addEventListener("removed",(function(){this.traverse((function(vt){vt.element instanceof vt.element.ownerDocument.defaultView.Element&&null!==vt.element.parentNode&&vt.element.remove()}))}))}copy(vt,bt){return super.copy(vt,bt),this.element=vt.element.cloneNode(!0),this}},lm=new Dl.kn4,cm=new Dl.kn4,um=class{constructor(vt){void 0===vt&&(vt={});const bt=this;let le,ls,ho,Dl;const Fl={camera:{style:""},objects:new WeakMap},sc=void 0!==vt.element?vt.element:document.createElement("div");sc.style.overflow="hidden",this.domElement=sc;const uc=document.createElement("div");uc.style.transformOrigin="0 0",uc.style.pointerEvents="none",sc.appendChild(uc);const mc=document.createElement("div");function epsilon(vt){return Math.abs(vt)<1e-10?0:vt}function getCameraCSSMatrix(vt){const bt=vt.elements;return"matrix3d("+epsilon(bt[0])+","+epsilon(-bt[1])+","+epsilon(bt[2])+","+epsilon(bt[3])+","+epsilon(bt[4])+","+epsilon(-bt[5])+","+epsilon(bt[6])+","+epsilon(bt[7])+","+epsilon(bt[8])+","+epsilon(-bt[9])+","+epsilon(bt[10])+","+epsilon(bt[11])+","+epsilon(bt[12])+","+epsilon(-bt[13])+","+epsilon(bt[14])+","+epsilon(bt[15])+")"}function getObjectCSSMatrix(vt){const bt=vt.elements;return"translate(-50%,-50%)"+("matrix3d("+epsilon(bt[0])+","+epsilon(bt[1])+","+epsilon(bt[2])+","+epsilon(bt[3])+","+epsilon(-bt[4])+","+epsilon(-bt[5])+","+epsilon(-bt[6])+","+epsilon(-bt[7])+","+epsilon(bt[8])+","+epsilon(bt[9])+","+epsilon(bt[10])+","+epsilon(bt[11])+","+epsilon(bt[12])+","+epsilon(bt[13])+","+epsilon(bt[14])+","+epsilon(bt[15])+")")}function hideObject(vt){vt.isCSS3DObject&&(vt.element.style.display="none");for(let bt=0,le=vt.children.length;bt<le;bt++)hideObject(vt.children[bt])}function renderObject(vt,le,ls,ho){if(!1!==vt.visible){if(vt.isCSS3DObject){const ho=!0===vt.layers.test(ls.layers),Dl=vt.element;if(Dl.style.display=!0===ho?"":"none",!0===ho){let ho;vt.onBeforeRender(bt,le,ls),vt.isCSS3DSprite?(lm.copy(ls.matrixWorldInverse),lm.transpose(),0!==vt.rotation2D&&lm.multiply(cm.makeRotationZ(vt.rotation2D)),vt.matrixWorld.decompose(rm,am,sm),lm.setPosition(rm),lm.scale(sm),lm.elements[3]=0,lm.elements[7]=0,lm.elements[11]=0,lm.elements[15]=1,ho=getObjectCSSMatrix(lm)):ho=getObjectCSSMatrix(vt.matrixWorld);const sc=Fl.objects.get(vt);if(void 0===sc||sc.style!==ho){Dl.style.transform=ho;const bt={style:ho};Fl.objects.set(vt,bt)}Dl.parentNode!==mc&&mc.appendChild(Dl),vt.onAfterRender(bt,le,ls)}}for(let bt=0,Dl=vt.children.length;bt<Dl;bt++)renderObject(vt.children[bt],le,ls,ho)}else hideObject(vt)}mc.style.transformStyle="preserve-3d",uc.appendChild(mc),this.getSize=function(){return{width:le,height:ls}},this.render=function(vt,bt){const sc=bt.projectionMatrix.elements[5]*Dl;let gc,Ac;bt.view&&bt.view.enabled?(uc.style.transform="translate( "+-bt.view.offsetX*(le/bt.view.width)+"px, "+-bt.view.offsetY*(ls/bt.view.height)+"px )",uc.style.transform+="scale( "+bt.view.fullWidth/bt.view.width+", "+bt.view.fullHeight/bt.view.height+" )"):uc.style.transform="",!0===vt.matrixWorldAutoUpdate&&vt.updateMatrixWorld(),null===bt.parent&&!0===bt.matrixWorldAutoUpdate&&bt.updateMatrixWorld(),bt.isOrthographicCamera&&(gc=-(bt.right+bt.left)/2,Ac=(bt.top+bt.bottom)/2);const Ec=bt.view&&bt.view.enabled?bt.view.height/bt.view.fullHeight:1,kc=bt.isOrthographicCamera?"scale( "+Ec+" )scale("+sc+")translate("+epsilon(gc)+"px,"+epsilon(Ac)+"px)"+getCameraCSSMatrix(bt.matrixWorldInverse):"scale( "+Ec+" )translateZ("+sc+"px)"+getCameraCSSMatrix(bt.matrixWorldInverse),du=(bt.isPerspectiveCamera?"perspective("+sc+"px) ":"")+kc+"translate("+ho+"px,"+Dl+"px)";Fl.camera.style!==du&&(mc.style.transform=du,Fl.camera.style=du),renderObject(vt,vt,bt,kc)},this.setSize=function(vt,bt){le=vt,ls=bt,ho=le/2,Dl=ls/2,sc.style.width=vt+"px",sc.style.height=bt+"px",uc.style.width=vt+"px",uc.style.height=bt+"px",mc.style.width=vt+"px",mc.style.height=bt+"px"}}},hm=class{constructor(vt){this.viewer=vt,this.element=document.createElement("div"),this.element.className="psv-markers-css3d-container",this.renderer=new um({element:this.element}),this.scene=new Dl.Z58,this.intersectionObserver=new IntersectionObserver((vt=>{vt.forEach((vt=>{const bt=vt.target[$d];bt.config.visible&&(bt.viewportIntersection=vt.isIntersecting)}))}),{root:this.element}),vt.addEventListener(ho.AZ.ReadyEvent.type,this,{once:!0}),vt.addEventListener(ho.AZ.SizeUpdatedEvent.type,this),vt.addEventListener(ho.AZ.RenderEvent.type,this)}handleEvent(vt){switch(vt.type){case ho.AZ.ReadyEvent.type:case ho.AZ.SizeUpdatedEvent.type:this.updateSize();break;case ho.AZ.RenderEvent.type:this.render()}}destroy(){this.viewer.removeEventListener(ho.AZ.ReadyEvent.type,this),this.viewer.removeEventListener(ho.AZ.SizeUpdatedEvent.type,this),this.viewer.removeEventListener(ho.AZ.RenderEvent.type,this),this.intersectionObserver.disconnect()}updateSize(){const vt=this.viewer.getSize();this.renderer.setSize(vt.width,vt.height)}render(){this.renderer.render(this.scene,this.viewer.renderer.camera)}addObject(vt){this.scene.add(vt.threeElement),this.intersectionObserver.observe(vt.domElement)}removeObject(vt){this.scene.remove(vt.threeElement),this.intersectionObserver.unobserve(vt.domElement)}},dm=(vt=>(vt.image="image",vt.html="html",vt.element="element",vt.imageLayer="imageLayer",vt.videoLayer="videoLayer",vt.elementLayer="elementLayer",vt.polygon="polygon",vt.polygonPixels="polygonPixels",vt.polyline="polyline",vt.polylinePixels="polylinePixels",vt.square="square",vt.rect="rect",vt.circle="circle",vt.ellipse="ellipse",vt.path="path",vt))(dm||{});function getMarkerType(vt,bt){void 0===bt&&(bt=!1);const le=[];if(Object.keys(dm).forEach((bt=>{vt[bt]&&le.push(bt)})),0===le.length&&!bt)throw new ho.e6("missing marker content, either "+Object.keys(dm).join(", "));if(le.length>1)throw new ho.e6("multiple marker content, either "+Object.keys(dm).join(", "));return le[0]}var pm=class{constructor(vt,bt,le){if(this.viewer=vt,this.plugin=bt,this.state={anchor:null,visible:!1,staticTooltip:!1,position:null,position2D:null,positions3D:null,size:null},!le.id)throw new ho.e6("missing marker id");this.type=getMarkerType(le),this.createElement(),this.update(le)}get id(){return this.config.id}get data(){return this.config.data}get domElement(){return null}get threeElement(){return null}get video(){return null}destroy(){delete this.viewer,delete this.plugin,delete this.element,this.hideTooltip()}is3d(){return!1}isNormal(){return!1}isPoly(){return!1}isSvg(){return!1}isCss3d(){return!1}update(vt){const bt=getMarkerType(vt,!0);if(void 0!==bt&&bt!==this.type)throw new ho.e6("cannot change marker "+vt.id+" type");if(this.config=ho.Wp.deepmerge(this.config,vt),"string"===typeof this.config.tooltip&&(this.config.tooltip={content:this.config.tooltip}),this.config.tooltip&&!this.config.tooltip.trigger&&(this.config.tooltip.trigger="hover"),ho.Wp.isNil(this.config.visible)&&(this.config.visible=!0),ho.Wp.isNil(this.config.zIndex)&&(this.config.zIndex=1),ho.Wp.isNil(this.config.opacity)&&(this.config.opacity=1),this.config.rotation){const vt=this.config.rotation;this.config.rotation="object"===typeof vt?{yaw:vt.yaw?ho.Wp.parseAngle(vt.yaw,!0,!1):0,pitch:vt.pitch?ho.Wp.parseAngle(vt.pitch,!0,!1):0,roll:vt.roll?ho.Wp.parseAngle(vt.roll,!0,!1):0}:{yaw:0,pitch:0,roll:ho.Wp.parseAngle(vt,!0,!1)}}else this.config.rotation={yaw:0,pitch:0,roll:0};this.state.anchor=ho.Wp.parsePoint(this.config.anchor)}getListContent(){var vt;return this.config.listContent?this.config.listContent:null!=(vt=this.config.tooltip)&&vt.content?this.config.tooltip.content:this.config.html?this.config.html:this.id}showTooltip(vt,bt,le){var Dl;if(void 0===le&&(le=!1),this.state.visible&&null!=(Dl=this.config.tooltip)&&Dl.content&&this.state.position2D){const Dl=(0,ls.A)({},this.config.tooltip,{style:{pointerEvents:this.state.staticTooltip?"auto":"none"},data:this,top:0,left:0});if(this.isPoly()||this.is3d()||this.isCss3d())if(vt||bt){const le=ho.Wp.getPosition(this.viewer.container);Dl.top=bt-le.y+10,Dl.left=vt-le.x,Dl.box={width:20,height:20}}else Dl.top=this.state.position2D.y,Dl.left=this.state.position2D.x;else{const vt=this.viewer.dataHelper.vector3ToViewerCoords(this.state.positions3D[0]);let bt=this.state.size.width,le=this.state.size.height;this.config.hoverScale&&!this.state.staticTooltip&&(bt*=this.config.hoverScale.amount,le*=this.config.hoverScale.amount),Dl.top=vt.y-le*this.state.anchor.y+le/2,Dl.left=vt.x-bt*this.state.anchor.x+bt/2,Dl.box={width:bt,height:le}}this.tooltip?le?this.tooltip.update(this.config.tooltip.content,Dl):this.tooltip.move(Dl):this.tooltip=this.viewer.createTooltip(Dl)}}hideTooltip(){this.tooltip&&(this.tooltip.hide(),this.tooltip=null)}},mm=class extends pm{get domElement(){return this.element}constructor(vt,bt,le){super(vt,bt,le)}afterCreateElement(){this.element[$d]=this}destroy(){delete this.element[$d],super.destroy()}update(vt){super.update(vt);const bt=this.domElement;bt.id="psv-marker-"+this.config.id,bt.setAttribute("class","psv-marker"),this.state.visible&&bt.classList.add("psv-marker--visible"),this.config.tooltip&&bt.classList.add("psv-marker--has-tooltip"),this.config.content&&bt.classList.add("psv-marker--has-content"),this.config.className&&ho.Wp.addClasses(bt,this.config.className),bt.style.opacity=""+this.config.opacity,bt.style.zIndex=""+(30+this.config.zIndex),this.config.style&&Object.assign(bt.style,this.config.style)}},fm=class extends mm{constructor(vt,bt,le){super(vt,bt,le)}afterCreateElement(){super.afterCreateElement(),this.domElement.addEventListener("transitionend",(()=>{this.domElement.style.transition=""}))}render(vt){let{viewerPosition:bt,zoomLevel:le,hoveringMarker:ls}=vt;this.__updateSize();const ho=this.viewer.dataHelper.vector3ToViewerCoords(this.state.positions3D[0]);ho.x-=this.state.size.width*this.state.anchor.x,ho.y-=this.state.size.height*this.state.anchor.y;return this.state.positions3D[0].dot(this.viewer.state.direction)>0&&ho.x+this.state.size.width>=0&&ho.x-this.state.size.width<=this.viewer.state.size.width&&ho.y+this.state.size.height>=0&&ho.y-this.state.size.height<=this.viewer.state.size.height?(this.domElement.style.translate=ho.x+"px "+ho.y+"px 0px",this.applyScale({zoomLevel:le,viewerPosition:bt,mouseover:this===ls}),ho):null}update(vt){if(super.update(vt),!ho.Wp.isExtendedPosition(this.config.position))throw new ho.e6("missing marker "+this.id+" position");try{this.state.position=this.viewer.dataHelper.cleanPosition(this.config.position)}catch(le){throw new ho.e6("invalid marker "+this.id+" position",le)}this.state.positions3D=[this.viewer.dataHelper.sphericalCoordsToVector3(this.state.position)];const bt=this.domElement;bt.classList.add("psv-marker--normal"),this.config.scale&&Array.isArray(this.config.scale)&&(this.config.scale={zoom:this.config.scale}),"boolean"===typeof this.config.hoverScale?this.config.hoverScale=this.config.hoverScale?this.plugin.config.defaultHoverScale||im:null:"number"===typeof this.config.hoverScale?this.config.hoverScale={amount:this.config.hoverScale}:this.config.hoverScale||(this.config.hoverScale=this.plugin.config.defaultHoverScale),this.config.hoverScale&&(this.config.hoverScale=(0,ls.A)({},this.plugin.config.defaultHoverScale,this.config.hoverScale)),bt.style.rotate=0!==this.config.rotation.roll?Dl.cj9.radToDeg(this.config.rotation.roll)+"deg":null,bt.style.transformOrigin=100*this.state.anchor.x+"% "+100*this.state.anchor.y+"%"}__updateSize(){if(!this.needsUpdateSize)return;const vt=this.domElement,bt=!this.state.visible||!this.state.size;if(bt&&vt.classList.add("psv-marker--transparent"),this.isSvg()){const bt=vt.firstElementChild.getBoundingClientRect();this.state.size={width:bt.width,height:bt.height}}else this.state.size={width:vt.offsetWidth,height:vt.offsetHeight};bt&&vt.classList.remove("psv-marker--transparent"),this.isSvg()&&(vt.style.width=this.state.size.width+"px",vt.style.height=this.state.size.height+"px"),"element"!==this.type&&(this.needsUpdateSize=!1)}applyScale(vt){let{zoomLevel:bt,viewerPosition:le,mouseover:ls}=vt;null!==ls&&this.config.hoverScale&&(this.domElement.style.transition="scale "+this.config.hoverScale.duration+"ms "+this.config.hoverScale.easing);let Fl=1;if("function"===typeof this.config.scale)Fl=this.config.scale(bt,le);else if(this.config.scale){if(Array.isArray(this.config.scale.zoom)){const[vt,le]=this.config.scale.zoom;Fl*=vt+(le-vt)*ho.aH.EASINGS.inQuad(bt/100)}if(Array.isArray(this.config.scale.yaw)){const[vt,bt]=this.config.scale.yaw,ls=Dl.cj9.degToRad(this.viewer.state.hFov)/2,sc=Math.abs(ho.Wp.getShortestArc(this.state.position.yaw,le.yaw));Fl*=bt+(vt-bt)*ho.aH.EASINGS.outQuad(Math.max(0,(ls-sc)/ls))}}ls&&this.config.hoverScale&&(Fl*=this.config.hoverScale.amount),this.domElement.style.scale=""+Fl}},gm=class extends Dl.BKk{get map(){return this.uniforms.map.value}set map(vt){this.uniforms.map.value=vt}set alpha(vt){this.uniforms.alpha.value=vt}get offset(){return this.uniforms.offset.value}get repeat(){return this.uniforms.repeat.value}set chromaKey(vt){if(this.uniforms.keying.value=!0===(null==vt?void 0:vt.enabled),null!=vt&&vt.enabled){var bt,le,ls;if("object"===typeof vt.color&&"r"in vt.color)this.uniforms.color.value.set(vt.color.r/255,vt.color.g/255,vt.color.b/255);else this.uniforms.color.value.set(null!=(ls=vt.color)?ls:65280);this.uniforms.similarity.value=null!=(bt=vt.similarity)?bt:.2,this.uniforms.smoothness.value=null!=(le=vt.smoothness)?le:.2}}constructor(vt){var bt;super({transparent:!0,depthTest:!1,depthWrite:!1,uniforms:{map:{value:null==vt?void 0:vt.map},repeat:{value:new Dl.I9Y(1,1)},offset:{value:new Dl.I9Y(0,0)},alpha:{value:null!=(bt=null==vt?void 0:vt.alpha)?bt:1},keying:{value:!1},color:{value:new Dl.Q1f(65280)},similarity:{value:.2},smoothness:{value:.2},spill:{value:.1}},vertexShader:"varying vec2 vUv;\nuniform vec2 repeat;\nuniform vec2 offset;\n\nvoid main() {\n vUv = uv * repeat + offset;\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}\n",fragmentShader:"// https://www.8thwall.com/playground/chromakey-threejs\n\nuniform sampler2D map;\nuniform float alpha;\nuniform bool keying;\nuniform vec3 color;\nuniform float similarity;\nuniform float smoothness;\nuniform float spill;\n\nvarying vec2 vUv;\n\nvec2 RGBtoUV(vec3 rgb) {\n return vec2(\n rgb.r * -0.169 + rgb.g * -0.331 + rgb.b * 0.5 + 0.5,\n rgb.r * 0.5 + rgb.g * -0.419 + rgb.b * -0.081 + 0.5\n );\n}\n\nvoid main(void) {\n gl_FragColor = texture2D(map, vUv);\n\n if (keying) {\n float chromaDist = distance(RGBtoUV(gl_FragColor.rgb), RGBtoUV(color));\n\n float baseMask = chromaDist - similarity;\n float fullMask = pow(clamp(baseMask / smoothness, 0., 1.), 1.5);\n gl_FragColor.a *= fullMask * alpha;\n\n float spillVal = pow(clamp(baseMask / spill, 0., 1.), 1.5);\n float desat = clamp(gl_FragColor.r * 0.2126 + gl_FragColor.g * 0.7152 + gl_FragColor.b * 0.0722, 0., 1.);\n gl_FragColor.rgb = mix(vec3(desat, desat, desat), gl_FragColor.rgb, spillVal);\n } else {\n gl_FragColor.a *= alpha;\n }\n}\n"}),this.chromaKey=null==vt?void 0:vt.chromaKey}};function greatArcIntermediaryPoint(vt,bt,le){const[ls,Dl]=vt,[Fl,sc]=bt,uc=ho.Wp.greatArcDistance(vt,bt),mc=Math.sin((1-le)*uc)/Math.sin(uc),gc=Math.sin(le*uc)/Math.sin(uc),Ac=mc*Math.cos(Dl)*Math.cos(ls)+gc*Math.cos(sc)*Math.cos(Fl),Ec=mc*Math.cos(Dl)*Math.sin(ls)+gc*Math.cos(sc)*Math.sin(Fl),kc=mc*Math.sin(Dl)+gc*Math.sin(sc);return[Math.atan2(Ec,Ac),Math.atan2(kc,Math.sqrt(Ac*Ac+Ec*Ec))]}function getPolygonCenter(vt){return vt.reduce(((vt,bt)=>vt.add(bt)),new Dl.Pq0).normalize()}function getPolylineCenter(vt){const bt=function(vt){const bt=[vt[0]];let le=0;for(let ls=1;ls<vt.length;ls++){const ho=vt[ls-1][0]-vt[ls][0];ho>Math.PI?le+=1:ho<-Math.PI&&(le-=1),bt.push([vt[ls][0]+2*le*Math.PI,vt[ls][1]])}return bt}(vt);let le=0;const ls=[];for(let Fl=0;Fl<bt.length-1;Fl++){const vt=ho.Wp.greatArcDistance(bt[Fl],bt[Fl+1])*ho.aH.SPHERE_RADIUS;ls.push(vt),le+=vt}let Dl=0;for(let ho=0;ho<bt.length-1;ho++){if(Dl+ls[ho]>le/2){const vt=(le/2-Dl)/ls[ho];return greatArcIntermediaryPoint(bt[ho],bt[ho+1],vt)}Dl+=ls[ho]}return bt[Math.round(bt.length/2)]}var Am=new Dl.Pq0,_m=new Dl.Pq0,ym=new Dl.Pq0,vm=new Dl.Pq0,xm=new Dl.Pq0,bm=new Dl.Pq0;function getGreatCircleIntersection(vt,bt,le){Am.copy(le).normalize(),_m.crossVectors(vt,bt).normalize(),ym.crossVectors(_m,vt).normalize(),vm.copy(vt).multiplyScalar(-Am.dot(ym)),xm.copy(ym).multiplyScalar(Am.dot(vt));const ls=(new Dl.Pq0).addVectors(vm,xm).normalize();return bm.crossVectors(ls,Am),ls.applyAxisAngle(bm,.01).multiplyScalar(ho.aH.SPHERE_RADIUS)}var wm=class extends pm{get threeElement(){return this.element}get threeMesh(){return this.threeElement.children[0]}get video(){return"videoLayer"===this.type?this.threeMesh.material.map.image:null}constructor(vt,bt,le){super(vt,bt,le)}is3d(){return!0}createElement(){const vt=new gm({alpha:0}),bt=new Dl.bdM(1,1),le=new Dl.eaF(bt,vt);le.userData={[$d]:this},Object.defineProperty(le,"visible",{enumerable:!0,get:function(){return this.userData[$d].config.visible},set:function(vt){this.userData[$d].config.visible=vt}}),this.element=(new Dl.YJl).add(le),"videoLayer"===this.type&&this.viewer.needsContinuousUpdate(!0)}destroy(){delete this.threeMesh.userData[$d],"videoLayer"===this.type&&(this.video.pause(),this.viewer.needsContinuousUpdate(!1)),super.destroy()}render(){return this.viewer.renderer.isObjectVisible(this.threeMesh)?this.viewer.dataHelper.sphericalCoordsToViewerCoords(this.state.position):null}update(vt){super.update(vt);const bt=this.threeMesh,le=bt.parent,ls=bt.material;if(ho.Wp.isExtendedPosition(this.config.position)){try{this.state.position=this.viewer.dataHelper.cleanPosition(this.config.position)}catch(gc){throw new ho.e6("invalid marker "+this.id+" position",gc)}if(!this.config.size)throw new ho.e6("missing marker "+this.id+" size");this.state.size=this.config.size,bt.scale.set(this.config.size.width/100,this.config.size.height/100,1),bt.position.set(bt.scale.x*(.5-this.state.anchor.x),bt.scale.y*(this.state.anchor.y-.5),0),bt.rotation.set(0,0,0),this.viewer.dataHelper.sphericalCoordsToVector3(this.state.position,le.position),le.lookAt(0,le.position.y,0),bt.rotateY(-this.config.rotation.yaw),bt.rotateX(-this.config.rotation.pitch),bt.rotateZ(-this.config.rotation.roll);const vt=bt.geometry.getAttribute("position");this.state.positions3D=[0,1,3,2].map((le=>{const ls=new Dl.Pq0;return ls.fromBufferAttribute(vt,le),bt.localToWorld(ls)}))}else{var Fl;if(4!==(null==(Fl=this.config.position)?void 0:Fl.length))throw new ho.e6("missing marker "+this.id+" position");let vt;try{vt=this.config.position.map((vt=>this.viewer.dataHelper.cleanPosition(vt)))}catch(gc){throw new ho.e6("invalid marker "+this.id+" position",gc)}const le=vt.map((vt=>this.viewer.dataHelper.sphericalCoordsToVector3(vt))),Dl=getPolygonCenter(le);this.state.position=this.viewer.dataHelper.vector3ToSphericalCoords(Dl),this.state.positions3D=le;const sc=bt.geometry.getAttribute("position");[le[0],le[1],le[3],le[2]].forEach(((vt,bt)=>{sc.setX(bt,vt.x),sc.setY(bt,vt.y),sc.setZ(bt,vt.z)})),sc.needsUpdate=!0,this.__setTextureWrap(ls)}switch(this.type){case"videoLayer":if(this.definition!==this.config.videoLayer){var sc,uc;null==(sc=ls.map)||sc.dispose();const vt=function(vt){let{src:bt,withCredentials:le,muted:ls,autoplay:ho}=vt;const Dl=document.createElement("video");return Dl.crossOrigin=le?"use-credentials":"anonymous",Dl.loop=!0,Dl.playsInline=!0,Dl.autoplay=ho,Dl.muted=ls,Dl.preload="metadata",bt instanceof MediaStream?Dl.srcObject=bt:Dl.src=bt,Dl}({src:this.config.videoLayer,withCredentials:this.viewer.config.withCredentials(this.config.videoLayer),muted:!0,autoplay:null==(uc=this.config.autoplay)||uc}),le=new Dl.Nv2(vt);ls.map=le,ls.alpha=0,vt.addEventListener("loadedmetadata",(()=>{this.viewer&&(ls.alpha=this.config.opacity,ho.Wp.isExtendedPosition(this.config.position)||(bt.material.userData[$d]={width:vt.videoWidth,height:vt.videoHeight},this.__setTextureWrap(ls)))}),{once:!0}),vt.autoplay&&vt.play(),this.definition=this.config.videoLayer}else ls.alpha=this.config.opacity;break;case"imageLayer":if(this.definition!==this.config.imageLayer){var mc;null==(mc=ls.map)||mc.dispose();const vt=new Dl.gPd;ls.map=vt,ls.alpha=0,this.viewer.textureLoader.loadImage(this.config.imageLayer).then((le=>{this.viewer&&(ho.Wp.isExtendedPosition(this.config.position)||(bt.material.userData[$d]={width:le.width,height:le.height},this.__setTextureWrap(ls)),vt.image=le,vt.anisotropy=4,vt.needsUpdate=!0,ls.alpha=this.config.opacity,this.viewer.needsUpdate())})),this.definition=this.config.imageLayer}else ls.alpha=this.config.opacity}ls.chromaKey=this.config.chromaKey,bt.renderOrder=1e3+this.config.zIndex,bt.geometry.boundingBox=null}__setTextureWrap(vt){const bt=vt.userData[$d];if(!bt||!bt.height||!bt.width)return vt.repeat.set(1,1),void vt.offset.set(0,0);const le=this.config.position.map((vt=>this.viewer.dataHelper.cleanPosition(vt))),ls=(ho.Wp.greatArcDistance([le[0].yaw,le[0].pitch],[le[1].yaw,le[1].pitch])+ho.Wp.greatArcDistance([le[3].yaw,le[3].pitch],[le[2].yaw,le[2].pitch]))/(ho.Wp.greatArcDistance([le[1].yaw,le[1].pitch],[le[2].yaw,le[2].pitch])+ho.Wp.greatArcDistance([le[0].yaw,le[0].pitch],[le[3].yaw,le[3].pitch])),Dl=bt.width/bt.height;let Fl=0,sc=0;ls<Dl?Fl=Dl-ls:sc=1/Dl-1/ls,vt.repeat.set(1-Fl,1-sc),vt.offset.set(Fl/2,sc/2)}},Em=class extends mm{constructor(vt,bt,le){super(vt,bt,le),this.viewportIntersection=!1}get threeElement(){return this.object}isCss3d(){return!0}createElement(){this.element=document.createElement("div"),this.object=new om(this.element),this.object.userData={[$d]:this},Object.defineProperty(this.object,"visible",{enumerable:!0,get:function(){return this.userData[$d].config.visible},set:function(vt){this.userData[$d].config.visible=vt}}),this.afterCreateElement()}destroy(){delete this.object.userData[$d],delete this.object,super.destroy()}render(vt){let{viewerPosition:bt,zoomLevel:le}=vt;const ls=this.domElement;this.state.size={width:ls.offsetWidth,height:ls.offsetHeight};if(this.state.positions3D[0].dot(this.viewer.state.direction)>0&&this.viewportIntersection){var ho,Dl;const vt=this.viewer.dataHelper.sphericalCoordsToViewerCoords(this.state.position);return null==(ho=(Dl=this.config.elementLayer).updateMarker)||ho.call(Dl,{marker:this,position:vt,viewerPosition:bt,zoomLevel:le,viewerSize:this.viewer.state.size}),vt}return null}update(vt){if(super.update(vt),!ho.Wp.isExtendedPosition(this.config.position))throw new ho.e6("missing marker "+this.id+" position");try{this.state.position=this.viewer.dataHelper.cleanPosition(this.config.position)}catch(ls){throw new ho.e6("invalid marker "+this.id+" position",ls)}this.state.positions3D=[this.viewer.dataHelper.sphericalCoordsToVector3(this.state.position)];const bt=this.threeElement,le=this.domElement;le.classList.add("psv-marker--css3d"),le.childNodes.forEach((vt=>vt.remove())),le.appendChild(this.config.elementLayer),this.config.elementLayer.style.display="block",bt.position.copy(this.state.positions3D[0]).multiplyScalar(100),bt.lookAt(0,100*this.state.positions3D[0].y,0),bt.rotateY(-this.config.rotation.yaw),bt.rotateX(-this.config.rotation.pitch),bt.rotateZ(-this.config.rotation.roll)}},Mm=class extends fm{constructor(vt,bt,le){super(vt,bt,le)}isNormal(){return!0}createElement(){this.element=document.createElement("div"),this.afterCreateElement()}render(vt){const bt=super.render(vt);var le,ls;bt&&"element"===this.type&&(null==(le=(ls=this.config.element).updateMarker)||le.call(ls,{marker:this,position:bt,viewerPosition:vt.viewerPosition,zoomLevel:vt.zoomLevel,viewerSize:this.viewer.state.size}));return bt}update(vt){super.update(vt);const bt=this.domElement;if(this.config.image&&!this.config.size)throw new ho.e6("missing marker "+this.id+" size");switch(this.config.size?(this.needsUpdateSize=!1,this.state.size=this.config.size,bt.style.width=this.config.size.width+"px",bt.style.height=this.config.size.height+"px"):this.needsUpdateSize=!0,this.type){case"image":this.definition=this.config.image,bt.style.backgroundImage='url("'+this.config.image+'")';break;case"html":this.definition=this.config.html,bt.innerHTML=this.config.html;break;case"element":this.definition!==this.config.element&&(this.definition=this.config.element,bt.childNodes.forEach((vt=>vt.remove())),bt.appendChild(this.config.element),this.config.element.style.display="block")}}},Sm=class extends mm{constructor(vt,bt,le){super(vt,bt,le)}createElement(){this.element=document.createElementNS(Jd,"path"),this.element[$d]=this}isPoly(){return!0}get isPixels(){return"polygonPixels"===this.type||"polylinePixels"===this.type}get isPolygon(){return"polygon"===this.type||"polygonPixels"===this.type}get isPolyline(){return"polyline"===this.type||"polylinePixels"===this.type}get coords(){return this.definition}render(){const vt=this.__getAllPolyPositions();if(vt[0].length>(this.isPolygon?2:1)){const bt=this.viewer.dataHelper.sphericalCoordsToViewerCoords(this.state.position),le=vt.filter((vt=>vt.length>0)).map((vt=>{let le="M";return le+=vt.map((vt=>vt.x-bt.x+","+(vt.y-bt.y))).join("L"),this.isPolygon&&(le+="Z"),le})).join(" ");return this.domElement.setAttributeNS(null,"d",le),this.domElement.setAttributeNS(null,"transform","translate("+bt.x+" "+bt.y+")"),bt}return null}update(vt){super.update(vt);const bt=this.domElement;bt.classList.add("psv-marker--poly"),this.config.svgStyle?(Object.entries(this.config.svgStyle).forEach((vt=>{let[le,ls]=vt;bt.setAttributeNS(null,ho.Wp.dasherize(le),ls)})),this.isPolyline&&!this.config.svgStyle.fill&&bt.setAttributeNS(null,"fill","none")):this.isPolygon?bt.setAttributeNS(null,"fill","rgba(0,0,0,0.5)"):this.isPolyline&&(bt.setAttributeNS(null,"fill","none"),bt.setAttributeNS(null,"stroke","rgb(0,0,0)"));try{let vt=this.config[this.type];if(!Array.isArray(vt[0])&&"object"!==typeof vt[0])for(let bt=0;bt<vt.length;bt++)vt.splice(bt,2,[vt[bt],vt[bt+1]]);if(Array.isArray(vt[0][0])||"object"===typeof vt[0][0]||(vt=[vt]),this.isPolyline&&vt.length>1)throw new ho.e6("polylines cannot have holes");this.isPixels?this.definition=vt.map((vt=>vt.map((vt=>{let bt;return bt=ho.Wp.isExtendedPosition(vt)?this.viewer.dataHelper.cleanPosition(vt):this.viewer.dataHelper.textureCoordsToSphericalCoords({textureX:vt[0],textureY:vt[1]}),[bt.yaw,bt.pitch]})))):this.definition=vt.map((vt=>vt.map((vt=>{let bt;return bt=ho.Wp.isExtendedPosition(vt)?this.viewer.dataHelper.cleanPosition(vt):this.viewer.dataHelper.cleanPosition({yaw:vt[0],pitch:vt[1]}),[bt.yaw,bt.pitch]}))))}catch(le){throw new ho.e6("invalid marker "+this.id+" position",le)}if(this.positions3D=this.coords.map((vt=>vt.map((vt=>this.viewer.dataHelper.sphericalCoordsToVector3({yaw:vt[0],pitch:vt[1]}))))),this.isPolygon){const vt=getPolygonCenter(this.positions3D[0]);this.state.position=this.viewer.dataHelper.vector3ToSphericalCoords(vt)}else{const vt=getPolylineCenter(this.coords[0]);this.state.position={yaw:vt[0],pitch:vt[1]}}this.state.positions3D=this.positions3D[0]}__getAllPolyPositions(){return this.positions3D.map((vt=>this.__getPolyPositions(vt)))}__getPolyPositions(vt){const bt=vt.length,le=vt.map((vt=>({vector:vt,visible:vt.dot(this.viewer.state.direction)>0}))),ls=[];return le.forEach(((vt,ho)=>{if(!vt.visible){[0===ho?le[bt-1]:le[ho-1],ho===bt-1?le[0]:le[ho+1]].forEach((bt=>{bt.visible&&ls.push({visible:bt.vector,invisible:vt.vector,index:ho})}))}})),ls.reverse().forEach((vt=>{le.splice(vt.index,0,{vector:getGreatCircleIntersection(vt.visible,vt.invisible,this.viewer.state.direction),visible:!0})})),le.filter((vt=>vt.visible)).map((vt=>this.viewer.dataHelper.vector3ToViewerCoords(vt.vector)))}},Tm=class extends fm{get svgElement(){return this.domElement.firstElementChild}constructor(vt,bt,le){super(vt,bt,le)}isSvg(){return!0}createElement(){const vt="square"===this.type?"rect":this.type,bt=document.createElementNS(Jd,vt);this.element=document.createElementNS(Jd,"svg"),this.element.appendChild(bt),this.afterCreateElement()}update(vt){super.update(vt);const bt=this.svgElement;switch(this.needsUpdateSize=!0,this.type){case"square":this.definition={x:0,y:0,width:this.config.square,height:this.config.square};break;case"rect":Array.isArray(this.config.rect)?this.definition={x:0,y:0,width:this.config.rect[0],height:this.config.rect[1]}:this.definition={x:0,y:0,width:this.config.rect.width,height:this.config.rect.height};break;case"circle":this.definition={cx:this.config.circle,cy:this.config.circle,r:this.config.circle};break;case"ellipse":Array.isArray(this.config.ellipse)?this.definition={cx:this.config.ellipse[0],cy:this.config.ellipse[1],rx:this.config.ellipse[0],ry:this.config.ellipse[1]}:this.definition={cx:this.config.ellipse.rx,cy:this.config.ellipse.ry,rx:this.config.ellipse.rx,ry:this.config.ellipse.ry};break;case"path":this.definition={d:this.config.path}}Object.entries(this.definition).forEach((vt=>{let[le,ls]=vt;bt.setAttributeNS(null,le,ls)})),this.config.svgStyle?Object.entries(this.config.svgStyle).forEach((vt=>{let[le,ls]=vt;bt.setAttributeNS(null,ho.Wp.dasherize(le),ls)})):bt.setAttributeNS(null,"fill","rgba(0,0,0,0.5)")}},km=ho.Wp.getConfigParser({clickEventOnMarker:!1,gotoMarkerSpeed:"8rpm",markers:null,defaultHoverScale:null},{defaultHoverScale:vt=>vt?(!0===vt&&(vt=im),"number"===typeof vt&&(vt={amount:vt}),(0,ls.A)({},im,vt)):null});var Cm=class _MarkersPlugin extends ho.TL{constructor(vt,bt){super(vt,bt),this.markers={},this.state={allVisible:!0,showAllTooltips:!1,currentMarker:null,hoveringMarker:null,needsReRender:!1,lastClientX:null,lastClientY:null},this.container=document.createElement("div"),this.container.className="psv-markers",this.viewer.container.appendChild(this.container),this.container.addEventListener("contextmenu",(vt=>vt.preventDefault())),this.svgContainer=document.createElementNS(Jd,"svg"),this.svgContainer.setAttribute("class","psv-markers-svg-container"),this.container.appendChild(this.svgContainer),this.css3DContainer=new hm(vt),this.container.appendChild(this.css3DContainer.element),this.container.addEventListener("mouseenter",this,!0),this.container.addEventListener("mouseleave",this,!0),this.container.addEventListener("mousemove",this,!0)}static withConfig(vt){return[_MarkersPlugin,vt]}init(){super.init(),ho.Wp.checkStylesheet(this.viewer.container,"markers-plugin"),this.viewer.addEventListener(ho.AZ.ClickEvent.type,this),this.viewer.addEventListener(ho.AZ.DoubleClickEvent.type,this),this.viewer.addEventListener(ho.AZ.RenderEvent.type,this),this.viewer.addEventListener(ho.AZ.ConfigChangedEvent.type,this),this.viewer.addEventListener(ho.AZ.ObjectEnterEvent.type,this),this.viewer.addEventListener(ho.AZ.ObjectHoverEvent.type,this),this.viewer.addEventListener(ho.AZ.ObjectLeaveEvent.type,this),this.viewer.addEventListener(ho.AZ.ReadyEvent.type,this,{once:!0})}destroy(){this.clearMarkers(!1),this.viewer.unobserveObjects($d),this.viewer.removeEventListener(ho.AZ.ClickEvent.type,this),this.viewer.removeEventListener(ho.AZ.DoubleClickEvent.type,this),this.viewer.removeEventListener(ho.AZ.RenderEvent.type,this),this.viewer.removeEventListener(ho.AZ.ObjectEnterEvent.type,this),this.viewer.removeEventListener(ho.AZ.ObjectHoverEvent.type,this),this.viewer.removeEventListener(ho.AZ.ObjectLeaveEvent.type,this),this.viewer.removeEventListener(ho.AZ.ReadyEvent.type,this),this.css3DContainer.destroy(),this.viewer.container.removeChild(this.container),super.destroy()}handleEvent(vt){var bt;switch(vt.type){case ho.AZ.ReadyEvent.type:this.config.markers&&(this.setMarkers(this.config.markers),delete this.config.markers);break;case ho.AZ.RenderEvent.type:this.renderMarkers();break;case ho.AZ.ClickEvent.type:this.__onClick(vt,!1);break;case ho.AZ.DoubleClickEvent.type:this.__onClick(vt,!0);break;case ho.AZ.ObjectEnterEvent.type:case ho.AZ.ObjectLeaveEvent.type:case ho.AZ.ObjectHoverEvent.type:if(vt.userDataKey===$d){const le=vt.originalEvent,ls=vt.object.userData[$d];switch(vt.type){case ho.AZ.ObjectEnterEvent.type:null!=(bt=ls.config.style)&&bt.cursor?this.viewer.setCursor(ls.config.style.cursor):(ls.config.tooltip||ls.config.content)&&this.viewer.setCursor("pointer"),this.__onEnterMarker(le,ls);break;case ho.AZ.ObjectLeaveEvent.type:this.viewer.setCursor(null),this.__onLeaveMarker(ls);break;case ho.AZ.ObjectHoverEvent.type:this.__onHoverMarker(le,ls)}}break;case"mouseenter":{const bt=this.__getTargetMarker(ho.Wp.getEventTarget(vt));this.__onEnterMarker(vt,bt);break}case"mouseleave":{const bt=this.__getTargetMarker(ho.Wp.getEventTarget(vt));this.__onLeaveMarker(bt);break}case"mousemove":{const bt=this.__getTargetMarker(ho.Wp.getEventTarget(vt),!0);this.__onHoverMarker(vt,bt);break}}}toggleAllMarkers(){this.state.allVisible?this.hideAllMarkers():this.showAllMarkers()}showAllMarkers(){this.state.allVisible=!0,Object.values(this.markers).forEach((vt=>{vt.config.visible=!0})),this.renderMarkers(),this.dispatchEvent(new Zd)}hideAllMarkers(){this.state.allVisible=!1,Object.values(this.markers).forEach((vt=>{vt.config.visible=!1})),this.renderMarkers(),this.dispatchEvent(new Gd)}toggleAllTooltips(){this.state.showAllTooltips?this.hideAllTooltips():this.showAllTooltips()}showAllTooltips(){this.state.showAllTooltips=!0,Object.values(this.markers).forEach((vt=>{vt.state.staticTooltip=!0,vt.showTooltip()}))}hideAllTooltips(){this.state.showAllTooltips=!1,Object.values(this.markers).forEach((vt=>{vt.state.staticTooltip=!1,vt.hideTooltip()}))}getNbMarkers(){return Object.keys(this.markers).length}getMarkers(){return Object.values(this.markers)}addMarker(vt,bt){if(void 0===bt&&(bt=!0),this.markers[vt.id])throw new ho.e6('marker "'+vt.id+'" already exists');const le=new(function(vt){switch(getMarkerType(vt,!1)){case"image":case"html":case"element":return Mm;case"imageLayer":case"videoLayer":return wm;case"elementLayer":return Em;case"polygon":case"polyline":case"polygonPixels":case"polylinePixels":return Sm;case"square":case"rect":case"circle":case"ellipse":case"path":return Tm;default:throw new ho.e6("invalid marker type")}}(vt))(this.viewer,this,vt);le.isPoly()?this.svgContainer.appendChild(le.domElement):le.isCss3d()?this.css3DContainer.addObject(le):le.is3d()?this.viewer.renderer.addObject(le.threeElement):this.container.appendChild(le.domElement),this.markers[le.id]=le,this.state.showAllTooltips&&(le.state.staticTooltip=!0),bt&&this.__afterChangeMarkers()}getMarker(vt){const bt="object"===typeof vt?vt.id:vt;if(!this.markers[bt])throw new ho.e6('cannot find marker "'+bt+'"');return this.markers[bt]}getCurrentMarker(){return this.state.currentMarker}updateMarker(vt,bt){void 0===bt&&(bt=!0);const le=this.getMarker(vt.id);var ls;(le.update(vt),bt)&&(this.__afterChangeMarkers(),(le===this.state.hoveringMarker&&"hover"===(null==(ls=le.config.tooltip)?void 0:ls.trigger)||le.state.staticTooltip)&&le.showTooltip(this.state.lastClientX,this.state.lastClientY,!0))}removeMarker(vt,bt){void 0===bt&&(bt=!0);const le=this.getMarker(vt);le.isPoly()?this.svgContainer.removeChild(le.domElement):le.isCss3d()?this.css3DContainer.removeObject(le):le.is3d()?this.viewer.renderer.removeObject(le.threeElement):this.container.removeChild(le.domElement),this.state.hoveringMarker===le&&(this.state.hoveringMarker=null),this.state.currentMarker===le&&(this.state.currentMarker=null),le.destroy(),delete this.markers[le.id],bt&&this.__afterChangeMarkers()}removeMarkers(vt,bt){void 0===bt&&(bt=!0),vt.forEach((vt=>this.removeMarker(vt,!1))),bt&&this.__afterChangeMarkers()}setMarkers(vt,bt){void 0===bt&&(bt=!0),this.clearMarkers(!1),null==vt||vt.forEach((vt=>{this.addMarker(vt,!1)})),bt&&this.__afterChangeMarkers()}clearMarkers(vt){void 0===vt&&(vt=!0),Object.keys(this.markers).forEach((vt=>{this.removeMarker(vt,!1)})),vt&&this.__afterChangeMarkers()}gotoMarker(vt,bt){void 0===bt&&(bt=this.config.gotoMarkerSpeed);const le=this.getMarker(vt);return bt?this.viewer.animate((0,ls.A)({},le.state.position,{zoom:le.config.zoomLvl,speed:bt})).then((()=>{this.dispatchEvent(new Ac(le))})):(this.viewer.rotate(le.state.position),ho.Wp.isNil(le.config.zoomLvl)||this.viewer.zoom(le.config.zoomLvl),this.dispatchEvent(new Ac(le)),Promise.resolve())}hideMarker(vt){this.toggleMarker(vt,!1)}showMarker(vt){this.toggleMarker(vt,!0)}showMarkerTooltip(vt){const bt=this.getMarker(vt);bt.state.staticTooltip=!0,bt.showTooltip()}hideMarkerTooltip(vt){const bt=this.getMarker(vt);bt.state.staticTooltip=!1,bt.hideTooltip()}toggleMarker(vt,bt){const le=this.getMarker(vt);le.config.visible=ho.Wp.isNil(bt)?!le.config.visible:bt,this.renderMarkers()}showMarkerPanel(vt){const bt=this.getMarker(vt);bt.config.content?this.viewer.panel.show({id:tm,content:bt.config.content}):this.hideMarkerPanel()}hideMarkerPanel(){this.viewer.panel.hide(tm)}toggleMarkersList(){this.viewer.panel.isVisible(em)?this.hideMarkersList():this.showMarkersList()}showMarkersList(){let vt=[];Object.values(this.markers).forEach((bt=>{bt.config.visible&&!bt.config.hideList&&vt.push(bt)}));const bt=new Qd(vt);this.dispatchEvent(bt),vt=bt.markers,this.viewer.panel.show({id:em,content:MARKERS_LIST_TEMPLATE(vt,this.viewer.config.lang[Xd.id]),noMargin:!0,clickHandler:vt=>{const bt=ho.Wp.getClosest(vt,".psv-panel-menu-item"),le=bt?bt.dataset[$d]:void 0;if(le){const vt=this.getMarker(le);this.dispatchEvent(new Rd(vt)),this.gotoMarker(vt.id),this.hideMarkersList()}}})}hideMarkersList(){this.viewer.panel.hide(em)}renderMarkers(){if(this.state.needsReRender)return void(this.state.needsReRender=!1);const vt=this.viewer.getZoomLevel(),bt=this.viewer.getPosition(),le=this.state.hoveringMarker;Object.values(this.markers).forEach((ls=>{let Dl=ls.config.visible,Fl=!1,sc=null;Dl&&(sc=ls.render({viewerPosition:bt,zoomLevel:vt,hoveringMarker:le}),Dl=!!sc),Fl=ls.state.visible!==Dl,ls.state.visible=Dl,ls.state.position2D=sc,ls.domElement&&ho.Wp.toggleClass(ls.domElement,"psv-marker--visible",Dl),Dl?ls.state.staticTooltip?ls.showTooltip():ls!==this.state.hoveringMarker&&ls.hideTooltip():ls.hideTooltip(),Fl&&(this.dispatchEvent(new mc(ls,Dl)),(ls.is3d()||ls.isCss3d())&&(this.state.needsReRender=!0))})),this.state.needsReRender&&this.viewer.needsUpdate()}__getTargetMarker(vt,bt){if(void 0===bt&&(bt=!1),vt instanceof Node){const le=bt?ho.Wp.getClosest(vt,".psv-marker"):vt;return le?le[$d]:void 0}return Array.isArray(vt)?vt.map((vt=>vt.userData[$d])).filter((vt=>!!vt)).sort(((vt,bt)=>bt.config.zIndex-vt.config.zIndex))[0]:null}__onEnterMarker(vt,bt){var le;bt&&(this.state.hoveringMarker=bt,this.state.lastClientX=vt.clientX,this.state.lastClientY=vt.clientY,this.dispatchEvent(new _u(bt)),bt instanceof fm&&bt.applyScale({zoomLevel:this.viewer.getZoomLevel(),viewerPosition:this.viewer.getPosition(),mouseover:!0}),bt.state.staticTooltip||"hover"!==(null==(le=bt.config.tooltip)?void 0:le.trigger)||bt.showTooltip(vt.clientX,vt.clientY))}__onLeaveMarker(vt){var bt;vt&&(this.dispatchEvent(new kc(vt)),vt instanceof fm&&vt.applyScale({zoomLevel:this.viewer.getZoomLevel(),viewerPosition:this.viewer.getPosition(),mouseover:!1}),this.state.hoveringMarker=null,vt.state.staticTooltip||"hover"!==(null==(bt=vt.config.tooltip)?void 0:bt.trigger)?vt.state.staticTooltip&&vt.showTooltip():vt.hideTooltip())}__onHoverMarker(vt,bt){var le;bt&&(this.state.lastClientX=vt.clientX,this.state.lastClientY=vt.clientY,(bt.isPoly()||bt.is3d()||bt.isCss3d())&&"hover"===(null==(le=bt.config.tooltip)?void 0:le.trigger)&&bt.showTooltip(vt.clientX,vt.clientY))}__onClick(vt,bt){const le=this.__getTargetMarker(vt.data.objects),ls=this.__getTargetMarker(vt.data.target,!0)||le;var ho,Dl;this.state.currentMarker&&this.state.currentMarker!==ls&&(this.dispatchEvent(new jd(this.state.currentMarker)),this.viewer.panel.hide(tm),this.state.showAllTooltips||"click"!==(null==(ho=this.state.currentMarker.config.tooltip)?void 0:ho.trigger)||this.hideMarkerTooltip(this.state.currentMarker.id),this.state.currentMarker=null);ls&&(this.state.currentMarker=ls,this.dispatchEvent(new Ld(ls,bt,vt.data.rightclick)),this.config.clickEventOnMarker?vt.data.marker=ls:vt.stopImmediatePropagation(),this.markers[ls.id]&&!vt.data.rightclick&&("click"===(null==(Dl=ls.config.tooltip)?void 0:Dl.trigger)?ls.tooltip?this.hideMarkerTooltip(ls.id):this.showMarkerTooltip(ls.id):this.showMarkerPanel(ls.id)))}__afterChangeMarkers(){this.__refreshUi(),this.__checkObjectsObserver(),this.viewer.needsUpdate(),this.dispatchEvent(new Hd(this.getMarkers()))}__refreshUi(){var vt,bt;const le=Object.values(this.markers).filter((vt=>!vt.config.hideList)).length;0===le?(this.viewer.panel.hide(tm),this.viewer.panel.hide(em)):this.viewer.panel.isVisible(em)?this.showMarkersList():this.viewer.panel.isVisible(tm)&&(this.state.currentMarker?this.showMarkerPanel(this.state.currentMarker.id):this.viewer.panel.hide()),null==(vt=this.viewer.navbar.getButton(Xd.id,!1))||vt.toggle(le>0),null==(bt=this.viewer.navbar.getButton(nm.id,!1))||bt.toggle(le>0)}__checkObjectsObserver(){Object.values(this.markers).some((vt=>vt.is3d()))?this.viewer.observeObjects($d):this.viewer.unobserveObjects($d)}};Cm.id="markers",Cm.VERSION="5.14.1",Cm.configParser=km,Cm.readonlyOptions=["markers"];var Im=Cm;ho.zY.lang[Xd.id]="Markers",ho.zY.lang[nm.id]="Markers list",(0,ho.S)(Xd,"caption:left"),(0,ho.S)(nm,"caption:left")},3348:(vt,bt,le)=>{"use strict";le.d(bt,{$:()=>nm});var ls=le(8168),ho=le(1545),Dl=le(9435),Fl=Object.defineProperty;((vt,bt)=>{for(var le in bt)Fl(vt,le,{get:bt[le],enumerable:!0})})({},{EnterArrowEvent:()=>gc,LeaveArrowEvent:()=>Ec,NodeChangedEvent:()=>uc});var sc=class _NodeChangedEvent extends ho.rx{constructor(vt,bt){super(_NodeChangedEvent.type),this.node=vt,this.data=bt}};sc.type="node-changed";var uc=sc,mc=class _EnterArrowEvent extends ho.rx{constructor(vt,bt){super(_EnterArrowEvent.type),this.link=vt,this.node=bt}};mc.type="enter-arrow";var gc=mc,Ac=class _LeaveArrowEvent extends ho.rx{constructor(vt,bt){super(_LeaveArrowEvent.type),this.link=vt,this.node=bt}};Ac.type="leave-arrow";var Ec=Ac,kc=class extends Dl.B69{constructor(vt){void 0===vt&&(vt=document.createElement("div")),super(),this.isCSS2DObject=!0,this.element=vt,this.element.style.position="absolute",this.element.style.userSelect="none",this.element.setAttribute("draggable",!1),this.center=new Dl.I9Y(.5,.5),this.addEventListener("removed",(function(){this.traverse((function(vt){vt.element instanceof vt.element.ownerDocument.defaultView.Element&&null!==vt.element.parentNode&&vt.element.remove()}))}))}copy(vt,bt){return super.copy(vt,bt),this.element=vt.element.cloneNode(!0),this.center=vt.center,this}},du=new Dl.Pq0,_u=new Dl.kn4,Md=new Dl.kn4,Ld=new Dl.Pq0,Nd=new Dl.Pq0,Rd=class{constructor(vt){void 0===vt&&(vt={});const bt=this;let le,ls,ho,Dl;const Fl={objects:new WeakMap},sc=void 0!==vt.element?vt.element:document.createElement("div");function hideObject(vt){vt.isCSS2DObject&&(vt.element.style.display="none");for(let bt=0,le=vt.children.length;bt<le;bt++)hideObject(vt.children[bt])}function renderObject(vt,le,ls){if(!1!==vt.visible){if(vt.isCSS2DObject){du.setFromMatrixPosition(vt.matrixWorld),du.applyMatrix4(Md);const uc=du.z>=-1&&du.z<=1&&!0===vt.layers.test(ls.layers),mc=vt.element;mc.style.display=!0===uc?"":"none",!0===uc&&(vt.onBeforeRender(bt,le,ls),mc.style.transform="translate("+-100*vt.center.x+"%,"+-100*vt.center.y+"%)translate("+(du.x*ho+ho)+"px,"+(-du.y*Dl+Dl)+"px)",mc.parentNode!==sc&&sc.appendChild(mc),vt.onAfterRender(bt,le,ls));const gc={distanceToCameraSquared:getDistanceToSquared(ls,vt)};Fl.objects.set(vt,gc)}for(let bt=0,ho=vt.children.length;bt<ho;bt++)renderObject(vt.children[bt],le,ls)}else hideObject(vt)}function getDistanceToSquared(vt,bt){return Ld.setFromMatrixPosition(vt.matrixWorld),Nd.setFromMatrixPosition(bt.matrixWorld),Ld.distanceToSquared(Nd)}sc.style.overflow="hidden",this.domElement=sc,this.getSize=function(){return{width:le,height:ls}},this.render=function(vt,bt){!0===vt.matrixWorldAutoUpdate&&vt.updateMatrixWorld(),null===bt.parent&&!0===bt.matrixWorldAutoUpdate&&bt.updateMatrixWorld(),_u.copy(bt.matrixWorldInverse),Md.multiplyMatrices(bt.projectionMatrix,_u),renderObject(vt,vt,bt),function(vt){const bt=function(vt){const bt=[];return vt.traverseVisible((function(vt){vt.isCSS2DObject&&bt.push(vt)})),bt}(vt).sort((function(vt,bt){if(vt.renderOrder!==bt.renderOrder)return bt.renderOrder-vt.renderOrder;return Fl.objects.get(vt).distanceToCameraSquared-Fl.objects.get(bt).distanceToCameraSquared})),le=bt.length;for(let ls=0,ho=bt.length;ls<ho;ls++)bt[ls].element.style.zIndex=le-ls}(vt)},this.setSize=function(vt,bt){le=vt,ls=bt,ho=le/2,Dl=ls/2,sc.style.width=vt+"px",sc.style.height=bt+"px"}}},Od=new Dl.Pq0,jd=new Dl.PTz,Ud=new Dl.Pq0,Gd=class extends Dl.B69{constructor(vt){void 0===vt&&(vt=document.createElement("div")),super(),this.isCSS3DObject=!0,this.element=vt,this.element.style.position="absolute",this.element.style.pointerEvents="auto",this.element.style.userSelect="none",this.element.setAttribute("draggable",!1),this.addEventListener("removed",(function(){this.traverse((function(vt){vt.element instanceof vt.element.ownerDocument.defaultView.Element&&null!==vt.element.parentNode&&vt.element.remove()}))}))}copy(vt,bt){return super.copy(vt,bt),this.element=vt.element.cloneNode(!0),this}},qd=new Dl.kn4,Hd=new Dl.kn4,Wd=class{constructor(vt){void 0===vt&&(vt={});const bt=this;let le,ls,ho,Dl;const Fl={camera:{style:""},objects:new WeakMap},sc=void 0!==vt.element?vt.element:document.createElement("div");sc.style.overflow="hidden",this.domElement=sc;const uc=document.createElement("div");uc.style.transformOrigin="0 0",uc.style.pointerEvents="none",sc.appendChild(uc);const mc=document.createElement("div");function epsilon(vt){return Math.abs(vt)<1e-10?0:vt}function getCameraCSSMatrix(vt){const bt=vt.elements;return"matrix3d("+epsilon(bt[0])+","+epsilon(-bt[1])+","+epsilon(bt[2])+","+epsilon(bt[3])+","+epsilon(bt[4])+","+epsilon(-bt[5])+","+epsilon(bt[6])+","+epsilon(bt[7])+","+epsilon(bt[8])+","+epsilon(-bt[9])+","+epsilon(bt[10])+","+epsilon(bt[11])+","+epsilon(bt[12])+","+epsilon(-bt[13])+","+epsilon(bt[14])+","+epsilon(bt[15])+")"}function getObjectCSSMatrix(vt){const bt=vt.elements;return"translate(-50%,-50%)"+("matrix3d("+epsilon(bt[0])+","+epsilon(bt[1])+","+epsilon(bt[2])+","+epsilon(bt[3])+","+epsilon(-bt[4])+","+epsilon(-bt[5])+","+epsilon(-bt[6])+","+epsilon(-bt[7])+","+epsilon(bt[8])+","+epsilon(bt[9])+","+epsilon(bt[10])+","+epsilon(bt[11])+","+epsilon(bt[12])+","+epsilon(bt[13])+","+epsilon(bt[14])+","+epsilon(bt[15])+")")}function hideObject(vt){vt.isCSS3DObject&&(vt.element.style.display="none");for(let bt=0,le=vt.children.length;bt<le;bt++)hideObject(vt.children[bt])}function renderObject(vt,le,ls,ho){if(!1!==vt.visible){if(vt.isCSS3DObject){const ho=!0===vt.layers.test(ls.layers),Dl=vt.element;if(Dl.style.display=!0===ho?"":"none",!0===ho){let ho;vt.onBeforeRender(bt,le,ls),vt.isCSS3DSprite?(qd.copy(ls.matrixWorldInverse),qd.transpose(),0!==vt.rotation2D&&qd.multiply(Hd.makeRotationZ(vt.rotation2D)),vt.matrixWorld.decompose(Od,jd,Ud),qd.setPosition(Od),qd.scale(Ud),qd.elements[3]=0,qd.elements[7]=0,qd.elements[11]=0,qd.elements[15]=1,ho=getObjectCSSMatrix(qd)):ho=getObjectCSSMatrix(vt.matrixWorld);const sc=Fl.objects.get(vt);if(void 0===sc||sc.style!==ho){Dl.style.transform=ho;const bt={style:ho};Fl.objects.set(vt,bt)}Dl.parentNode!==mc&&mc.appendChild(Dl),vt.onAfterRender(bt,le,ls)}}for(let bt=0,Dl=vt.children.length;bt<Dl;bt++)renderObject(vt.children[bt],le,ls,ho)}else hideObject(vt)}mc.style.transformStyle="preserve-3d",uc.appendChild(mc),this.getSize=function(){return{width:le,height:ls}},this.render=function(vt,bt){const sc=bt.projectionMatrix.elements[5]*Dl;let gc,Ac;bt.view&&bt.view.enabled?(uc.style.transform="translate( "+-bt.view.offsetX*(le/bt.view.width)+"px, "+-bt.view.offsetY*(ls/bt.view.height)+"px )",uc.style.transform+="scale( "+bt.view.fullWidth/bt.view.width+", "+bt.view.fullHeight/bt.view.height+" )"):uc.style.transform="",!0===vt.matrixWorldAutoUpdate&&vt.updateMatrixWorld(),null===bt.parent&&!0===bt.matrixWorldAutoUpdate&&bt.updateMatrixWorld(),bt.isOrthographicCamera&&(gc=-(bt.right+bt.left)/2,Ac=(bt.top+bt.bottom)/2);const Ec=bt.view&&bt.view.enabled?bt.view.height/bt.view.fullHeight:1,kc=bt.isOrthographicCamera?"scale( "+Ec+" )scale("+sc+")translate("+epsilon(gc)+"px,"+epsilon(Ac)+"px)"+getCameraCSSMatrix(bt.matrixWorldInverse):"scale( "+Ec+" )translateZ("+sc+"px)"+getCameraCSSMatrix(bt.matrixWorldInverse),du=(bt.isPerspectiveCamera?"perspective("+sc+"px) ":"")+kc+"translate("+ho+"px,"+Dl+"px)";Fl.camera.style!==du&&(mc.style.transform=du,Fl.camera.style=du),renderObject(vt,vt,bt,kc)},this.setSize=function(vt,bt){le=vt,ls=bt,ho=le/2,Dl=ls/2,sc.style.width=vt+"px",sc.style.height=bt+"px",uc.style.width=vt+"px",uc.style.height=bt+"px",mc.style.width=vt+"px",mc.style.height=bt+"px"}}},Zd="tourLink",Yd="__tour-link__",Qd={className:"psv-virtual-tour-tooltip",content:'<div class="psv-virtual-tour-loader"><div></div><div></div><div></div></div>'},Xd={element:()=>{const vt=document.createElement("button");return vt.className="psv-virtual-tour-arrow",vt.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">\n <path fill-rule="even-odd" fill="currentColor" d="\n M50,50 m45,0\n a45,45 0 1,0 -90,0\n a45,45 0 1,0 90,0\n\n M50,50 m38,0\n a38,38 0 0,1 -76,0\n a38,38 0 0,1 76,0\n\n M50,50 m30,0\n a30,30 0 1,0 -60,0\n a30,30 0 1,0 60,0\n \n M50,40 m2.5,-2.5\n l17.5,17.5\n a 2.5,2.5 0 0 1 -5,5\n l-15,-15\n l-15,15\n a 2.5,2.5 0 0 1 -5,-5\n l17.5,-17.5\n a 3.5,3.5 0 0 1 5,0\n "/>\n</svg>',vt},size:{width:80,height:80}},Kd="arrow",Jd=class extends ho.uj{constructor(vt,bt){super(vt,{className:"psv-virtual-tour-arrows"}),this.plugin=bt,this.renderer=this.is3D?new Wd({element:this.container}):new Rd({element:this.container}),this.camera=this.is3D?new Dl.ubm(30,1):null,this.scene=new Dl.Z58,this.viewer.addEventListener(ho.AZ.ReadyEvent.type,this,{once:!0}),this.viewer.addEventListener(ho.AZ.PositionUpdatedEvent.type,this),this.viewer.addEventListener(ho.AZ.SizeUpdatedEvent.type,this),this.viewer.addEventListener(ho.AZ.RenderEvent.type,this),this.viewer.addEventListener(ho.AZ.ClickEvent.type,this),this.container.addEventListener("mouseenter",this,!0),this.container.addEventListener("mouseleave",this,!0),this.container.addEventListener("mousemove",this,!0),this.container.addEventListener("contextmenu",(vt=>vt.preventDefault()))}get is3D(){return this.plugin.is3D}get arrowsPosition(){return this.plugin.config.arrowsPosition}get arrowStyle(){return this.plugin.config.arrowStyle}init(){var vt,bt;this.is3D&&(this.gallery=this.viewer.getPlugin("gallery"),null==(vt=this.gallery)||vt.addEventListener("show-gallery",this),null==(bt=this.gallery)||bt.addEventListener("hide-gallery",this))}destroy(){var vt,bt;this.viewer.removeEventListener(ho.AZ.ReadyEvent.type,this),this.viewer.removeEventListener(ho.AZ.PositionUpdatedEvent.type,this),this.viewer.removeEventListener(ho.AZ.SizeUpdatedEvent.type,this),this.viewer.removeEventListener(ho.AZ.RenderEvent.type,this),this.viewer.removeEventListener(ho.AZ.ClickEvent.type,this),null==(vt=this.gallery)||vt.removeEventListener("show-gallery",this),null==(bt=this.gallery)||bt.removeEventListener("hide-gallery",this),super.destroy()}handleEvent(vt){switch(vt.type){case ho.AZ.ReadyEvent.type:case ho.AZ.SizeUpdatedEvent.type:case ho.AZ.PositionUpdatedEvent.type:this.__updateCamera();break;case ho.AZ.RenderEvent.type:this.render();break;case ho.AZ.ClickEvent.type:{if(vt.data.rightclick)break;const bt=this.__getTargetLink(vt.data.target,!0);bt&&this.plugin.setCurrentNode(bt.nodeId,null,bt);break}case"mouseenter":{const bt=this.__getTargetLink(ho.Wp.getEventTarget(vt));bt&&this.plugin.__onEnterArrow(bt,vt);break}case"mouseleave":{const bt=this.__getTargetLink(ho.Wp.getEventTarget(vt));bt&&this.plugin.__onLeaveArrow(bt);break}case"mousemove":this.__getTargetLink(ho.Wp.getEventTarget(vt),!0)&&this.plugin.__onHoverArrow(vt);break;case"hide-gallery":this.__onToggleGallery(!1);break;case"show-gallery":vt.fullscreen||this.__onToggleGallery(!0)}}__updateCamera(){const vt=this.viewer.getSize();if(this.renderer.setSize(vt.width,vt.height),this.is3D){const bt=this.viewer.getPosition();bt.pitch=Dl.cj9.clamp(bt.pitch,-this.arrowsPosition.maxPitch,-this.arrowsPosition.minPitch),this.viewer.dataHelper.sphericalCoordsToVector3(bt,this.camera.position,2*vt.height).negate(),this.camera.lookAt(0,0,0),this.camera.translateY(vt.height/3),this.camera.updateProjectionMatrix()}}render(){if(this.is3D){const vt=this.viewer.getPosition(),bt=[];let le=Number.MAX_SAFE_INTEGER;this.scene.children.forEach((ls=>{const Dl=ls.userData[Kd];if(Dl.conflict){const Fl=Math.abs(ho.Wp.getShortestArc(vt.yaw,Dl.yaw));le=Math.min(le,Fl),bt.push([ls,Fl])}})),bt.forEach((vt=>{let[bt,ls]=vt;const ho=ls!==le;bt.element.style.opacity=ho?"0.5":null,bt.element.style.zIndex=ho?"-1":null})),this.renderer.render(this.scene,this.camera)}else this.renderer.render(this.scene,this.viewer.renderer.camera)}clear(){this.scene.clear()}__buildArrowElement(vt,bt){if(null!=bt&&bt.image){const vt=document.createElement("img");return vt.src=bt.image,vt}if(null!=bt&&bt.element)return"function"===typeof bt.element?bt.element(vt):bt.element}addLinkArrow(vt,bt,le){void 0===le&&(le=1);let Dl=this.__buildArrowElement(vt,vt.arrowStyle);Dl||(Dl=this.__buildArrowElement(vt,this.arrowStyle)),Dl[Zd]=vt;const Fl=(0,ls.A)({},this.arrowStyle,vt.arrowStyle);if(Dl.classList.add("psv-virtual-tour-link"),Fl.className&&ho.Wp.addClasses(Dl,Fl.className),Fl.style&&Object.assign(Dl.style,Fl.style),this.is3D){Dl.style.width=1.5*Fl.size.width+"px",Dl.style.height=1.5*Fl.size.height+"px";let vt=!1;this.scene.children.forEach((le=>{const ls=le.userData[Kd];Math.abs(ho.Wp.getShortestArc(ls.yaw,bt.yaw))<this.arrowsPosition.linkOverlapAngle&&(ls.conflict=!0,vt=!0)}));const ls=new Gd(Dl);ls.userData[Kd]={yaw:bt.yaw,conflict:vt},ls.rotation.set(-Math.PI/2,0,Math.PI-bt.yaw),this.viewer.dataHelper.sphericalCoordsToVector3({yaw:bt.yaw,pitch:0},ls.position,100*le),this.scene.add(ls)}else{Dl.style.width=Fl.size.width+"px",Dl.style.height=Fl.size.height+"px",Dl.style.pointerEvents="auto";const vt=new kc(Dl);this.viewer.dataHelper.sphericalCoordsToVector3(bt,vt.position),this.scene.add(vt)}}__getTargetLink(vt,bt){void 0===bt&&(bt=!1);const le=bt?ho.Wp.getClosest(vt,".psv-virtual-tour-link"):vt;return le?le[Zd]:void 0}__onToggleGallery(vt){this.container.style.marginBottom=vt?this.viewer.container.querySelector(".psv-gallery").offsetHeight+"px":""}},$d=class{constructor(vt,bt){this.plugin=vt,this.viewer=bt,this.nodes={}}destroy(){}checkNode(vt){var bt,le;if(!vt.id)throw new ho.e6("No id given for node");if(!vt.panorama)throw new ho.e6("No panorama provided for node "+vt.id);if(this.plugin.isGps&&!((null==(bt=vt.gps)?void 0:bt.length)>=2))throw new ho.e6("No GPS position provided for node "+vt.id);if(!this.plugin.isGps&&null!=(le=vt.markers)&&le.some((vt=>vt.gps&&!vt.position)))throw new ho.e6("Cannot use GPS positioning for markers in manual mode");vt.links||(ho.Wp.logWarn("Node "+vt.id+" has no links"),vt.links=[])}checkLink(vt,bt){if(!bt.nodeId)throw new ho.e6("Link of node "+vt.id+" has no target id");if(bt.nodeId===vt.id)throw new ho.e6("Node "+vt.id+" links to itself");if(!this.plugin.isGps&&!ho.Wp.isExtendedPosition(bt.position))throw new ho.e6("No position provided for link "+bt.nodeId+" of node "+vt.id);if(this.plugin.isGps&&!bt.gps)throw new ho.e6("No GPS position provided for link "+bt.nodeId+" of node "+vt.id)}},sp=class extends $d{async loadNode(vt){if(this.nodes[vt])return this.nodes[vt];throw new ho.e6("Node "+vt+" not found")}setNodes(vt){if(null==vt||!vt.length)throw new ho.e6("No nodes provided");const bt={},le={};vt.forEach((vt=>{if(this.checkNode(vt),bt[vt.id])throw new ho.e6("Duplicate node "+vt.id);bt[vt.id]=vt})),vt.forEach((vt=>{this.__checkLinks(vt,bt),vt.links.forEach((vt=>{le[vt.nodeId]=!0}))})),vt.forEach((vt=>{le[vt.id]||ho.Wp.logWarn("Node "+vt.id+" is never linked to")})),this.nodes=bt}updateNode(vt){if(!vt.id)throw new ho.e6("No id given for node");const bt=this.nodes[vt.id];if(!bt)throw new ho.e6("Node "+vt.id+" does not exist");return Object.assign(bt,vt),this.checkNode(bt),this.__checkLinks(bt,this.nodes),bt}__checkLinks(vt,bt){vt.links.forEach((le=>{if(!bt[le.nodeId])throw new ho.e6("Target node "+le.nodeId+" of node "+vt.id+" does not exists");le.gps=le.gps||bt[le.nodeId].gps,this.checkLink(vt,le)}))}},tm=class extends $d{constructor(vt,bt){if(super(vt,bt),!vt.config.getNode)throw new ho.e6("Missing getNode() option.");this.nodeResolver=vt.config.getNode}async loadNode(vt){if(this.nodes[vt])return this.nodes[vt];{const bt=await this.nodeResolver(vt);return this.checkNode(bt),bt.links.forEach((vt=>{this.checkLink(bt,vt)})),this.nodes[vt]=bt,bt}}clearCache(){this.nodes={}}};function gpsToSpherical(vt,bt){var le,ls;const Dl=gpsDegToRad(vt),Fl=gpsDegToRad(bt),sc=null!=(le=vt[2])?le:0,uc=null!=(ls=bt[2])?ls:0;let mc=0;sc!==uc&&(mc=Math.atan((uc-sc)/function(vt,bt){return 6371e3*ho.Wp.greatArcDistance(vt,bt)}(Dl,Fl)));const gc=function(vt,bt){const[le,ls]=vt,[ho,Dl]=bt,Fl=Math.sin(ho-le)*Math.cos(Dl),sc=Math.cos(ls)*Math.sin(Dl)-Math.sin(ls)*Math.cos(Dl)*Math.cos(ho-le);return Math.atan2(Fl,sc)}(Dl,Fl);return{yaw:gc,pitch:mc}}function gpsDegToRad(vt){return[Dl.cj9.degToRad(vt[0]),Dl.cj9.degToRad(vt[1])]}var em=ho.Wp.getConfigParser({dataMode:"client",positionMode:"manual",renderMode:"3d",nodes:null,getNode:null,startNodeId:null,preload:!1,transitionOptions:{showLoader:!0,speed:"20rpm",effect:"fade",rotation:!0},linksOnCompass:!0,showLinkTooltip:!0,getLinkTooltip:null,arrowStyle:Xd,arrowsPosition:{minPitch:.3,maxPitch:Math.PI/2,linkOverlapAngle:Math.PI/4,linkPitchOffset:-.1},map:null},{dataMode(vt){if("client"!==vt&&"server"!==vt)throw new ho.e6("VirtualTourPlugin: invalid dataMode");return vt},positionMode(vt){if("gps"!==vt&&"manual"!==vt)throw new ho.e6("VirtualTourPlugin: invalid positionMode");return vt},renderMode(vt){if("3d"!==vt&&"2d"!==vt)throw new ho.e6("VirtualTourPlugin: invalid renderMode");return vt},arrowsPosition(vt,bt){let{defValue:le}=bt;return(0,ls.A)({},le,vt)},arrowStyle(vt,bt){let{defValue:le}=bt;return(0,ls.A)({},le,vt)},map(vt,bt){let{rawConfig:le}=bt;if(vt){if("server"===le.dataMode)return ho.Wp.logWarn("VirtualTourPlugin: The map cannot be used in server side mode"),null;if(!vt.imageUrl)return ho.Wp.logWarn('VirtualTourPlugin: configuring the map requires at least "imageUrl"'),null;"recenter"in vt||(vt.recenter=!0)}return vt}}),im=class _VirtualTourPlugin extends ho.TL{constructor(vt,bt){super(vt,bt),this.state={currentNode:null,currentTooltip:null,loadingNode:null,preload:{}},this.arrowsRenderer=new Jd(this.viewer,this)}get is3D(){return"3d"===this.config.renderMode}get isServerSide(){return"server"===this.config.dataMode}get isGps(){return"gps"===this.config.positionMode}static withConfig(vt){return[_VirtualTourPlugin,vt]}init(){var vt,bt;super.init(),this.arrowsRenderer.init(),ho.Wp.checkStylesheet(this.viewer.container,"virtual-tour-plugin"),this.markers=this.viewer.getPlugin("markers"),this.compass=this.viewer.getPlugin("compass"),null!=(vt=this.markers)&&vt.config.markers&&(ho.Wp.logWarn("No default markers can be configured on the MarkersPlugin when using the VirtualTourPlugin. Consider defining `markers` on each tour node."),delete this.markers.config.markers),this.isGps&&(this.plan=this.viewer.getPlugin("plan")),this.isServerSide||(this.gallery=this.viewer.getPlugin("gallery"),this.map=this.viewer.getPlugin("map"),this.config.map&&!this.map&&ho.Wp.logWarn("The map is configured on the VirtualTourPlugin but the MapPlugin is not loaded.")),this.datasource=this.isServerSide?new tm(this,this.viewer):new sp(this,this.viewer),this.map&&(this.map.addEventListener("select-hotspot",this),this.map.setImage(this.config.map.imageUrl)),null==(bt=this.plan)||bt.addEventListener("select-hotspot",this),this.isServerSide?this.config.startNodeId&&this.setCurrentNode(this.config.startNodeId):this.config.nodes&&(this.setNodes(this.config.nodes,this.config.startNodeId),delete this.config.nodes)}destroy(){var vt,bt;null==(vt=this.map)||vt.removeEventListener("select-hotspot",this),null==(bt=this.plan)||bt.removeEventListener("select-hotspot",this),this.datasource.destroy(),this.arrowsRenderer.destroy(),delete this.datasource,delete this.markers,delete this.compass,delete this.gallery,delete this.arrowsRenderer,super.destroy()}handleEvent(vt){if(vt instanceof ho.AZ.ClickEvent){var bt;const le=null==(bt=vt.data.objects.find((vt=>vt.userData[Zd])))?void 0:bt.userData[Zd];le&&this.setCurrentNode(le.nodeId,null,le)}else if("select-hotspot"===vt.type){const bt=vt.hotspotId;bt.startsWith(Yd)&&this.setCurrentNode(bt.substring(13))}}getCurrentNode(){return this.state.currentNode}setNodes(vt,bt){if(this.isServerSide)throw new ho.e6("Cannot set nodes in server side mode");this.__hideTooltip(),this.state.currentNode=null,this.datasource.setNodes(vt),bt?this.datasource.nodes[bt]||(bt=vt[0].id,ho.Wp.logWarn("startNodeId not found is provided nodes, resetted to "+bt)):bt=vt[0].id,this.setCurrentNode(bt),this.__setGalleryItems(),this.__setMapHotspots(),this.__setPlanHotspots()}setCurrentNode(vt,bt,le){var Dl;if(vt===(null==(Dl=this.state.currentNode)?void 0:Dl.id)&&(null==bt||!bt.forceUpdate))return Promise.resolve(!0);null!=bt&&bt.forceUpdate&&this.isServerSide&&this.datasource.clearCache(),this.viewer.hideError(),this.state.loadingNode=vt;const Fl=this.state.currentNode,sc=Fl&&le?this.__getLinkPosition(Fl,le):null;return Promise.resolve(this.state.preload[vt]).then((()=>{if(this.state.loadingNode!==vt)throw ho.Wp.getAbortError();return this.datasource.loadNode(vt)})).then((Dl=>{var uc,mc,gc;if(this.state.loadingNode!==vt)throw ho.Wp.getAbortError();const Ac=(0,ls.A)({},em.defaults.transitionOptions,{rotateTo:sc,zoomTo:sc?this.viewer.getZoomLevel():null},"function"===typeof this.config.transitionOptions?this.config.transitionOptions(Dl,Fl,le):this.config.transitionOptions,bt);return Ac.effect||(Ac.effect="none"),this.viewer.panel.hide("description"),this.__hideTooltip(),this.arrowsRenderer.clear(),null!=(uc=this.gallery)&&uc.config.hideOnClick&&this.gallery.hide(),null!=(mc=this.map)&&mc.config.minimizeOnHotspotClick&&this.map.minimize(),null!=(gc=this.plan)&&gc.config.minimizeOnHotspotClick&&this.plan.minimize(),Ac.rotation&&"none"===Ac.effect?this.viewer.animate((0,ls.A)({},Ac.rotateTo,{zoom:Ac.zoomTo,speed:Ac.speed})).then((()=>[Dl,Ac])):Promise.resolve([Dl,Ac])})).then((bt=>{var le;let[ls,Dl]=bt;if(this.state.loadingNode!==vt)throw ho.Wp.getAbortError();var Fl;(null==(le=this.markers)||le.clearMarkers(),this.config.linksOnCompass)&&(null==(Fl=this.compass)||Fl.clearHotspots());return this.viewer.setPanorama(ls.panorama,{caption:ls.caption,description:ls.description,panoData:ls.panoData,sphereCorrection:ls.sphereCorrection,showLoader:Dl.showLoader,position:Dl.rotateTo,zoom:Dl.zoomTo,transition:"none"!==Dl.effect&&{effect:Dl.effect,rotation:Dl.rotation,speed:Dl.speed}}).then((vt=>{if(!vt)throw ho.Wp.getAbortError();return ls}))})).then((bt=>{var ls,Dl;if(this.state.loadingNode!==vt)throw ho.Wp.getAbortError();(this.state.currentNode=bt,this.map)&&this.map.setCenter(null!=(Dl=this.__getNodeMapPosition(bt))?Dl:this.map.config.center,this.config.map.recenter);return null==(ls=this.plan)||ls.setCoordinates(bt.gps),this.__addNodeMarkers(bt),this.__renderLinks(bt),this.__preload(bt),this.state.loadingNode=null,this.dispatchEvent(new uc(bt,{fromNode:Fl,fromLink:le,fromLinkPosition:sc})),this.viewer.resetIdleTimer(),!0})).catch((vt=>{if(ho.Wp.isAbortError(vt))return!1;throw this.viewer.showError(this.viewer.config.lang.loadError),this.viewer.loader.hide(),this.viewer.navbar.setCaption(""),this.state.loadingNode=null,vt}))}async gotoLink(vt,bt){void 0===bt&&(bt="8rpm");const le=this.getLinkPosition(vt);bt?await this.viewer.animate((0,ls.A)({},le,{speed:bt})):this.viewer.rotate(le)}getLinkPosition(vt){var bt;const le=null==(bt=this.state.currentNode)?void 0:bt.links.find((bt=>bt.nodeId===vt));if(!le)throw new ho.e6('Cannot find link "'+vt+'"');return this.__getLinkPosition(this.state.currentNode,le)}updateNode(vt){var bt;if(this.isServerSide)throw new ho.e6("Cannot update node in server side mode");const le=this.datasource.updateNode(vt);if((vt.name||vt.thumbnail||vt.panorama)&&this.__setGalleryItems(),(vt.name||vt.gps||vt.map)&&this.__setMapHotspots(),(vt.name||vt.gps||vt.plan)&&this.__setPlanHotspots(),(null==(bt=this.state.currentNode)?void 0:bt.id)===le.id){if(this.__hideTooltip(),vt.panorama||vt.panoData||vt.sphereCorrection)return void this.setCurrentNode(le.id,{forceUpdate:!0});var ls,Dl;if(vt.caption&&this.viewer.setOption("caption",le.caption),vt.description&&this.viewer.setOption("description",le.description),(vt.links||vt.gps)&&this.__renderLinks(le),vt.gps)null==(ls=this.plan)||ls.setCoordinates(le.gps);if(vt.map||vt.gps)null==(Dl=this.map)||Dl.setCenter(this.__getNodeMapPosition(le));(vt.markers||vt.gps)&&this.__addNodeMarkers(le)}}__setGalleryItems(){this.gallery&&this.gallery.setItems(Object.values(this.datasource.nodes).filter((vt=>!1!==vt.showInGallery)).map((vt=>({id:vt.id,panorama:vt.panorama,name:vt.name,thumbnail:vt.thumbnail}))),(vt=>{this.setCurrentNode(vt)}))}__setMapHotspots(){this.map&&this.map.setHotspots(Object.values(this.datasource.nodes).filter((vt=>!1!==vt.map)).map((vt=>(0,ls.A)({tooltip:vt.name},vt.map||{},this.__getNodeMapPosition(vt),{id:Yd+vt.id}))))}__setPlanHotspots(){this.plan&&this.plan.setHotspots(Object.values(this.datasource.nodes).filter((vt=>!1!==vt.plan)).map((vt=>(0,ls.A)({tooltip:vt.name},vt.plan||{},{coordinates:vt.gps,id:Yd+vt.id}))))}__renderLinks(vt){this.arrowsRenderer.clear();const bt=[];var le;(vt.links.forEach((le=>{var ls,ho,Dl,Fl,sc;const uc=this.__getLinkPosition(vt,le);uc.yaw+=null!=(ls=null==(ho=le.linkOffset)?void 0:ho.yaw)?ls:0,uc.pitch+=null!=(Dl=null==(Fl=le.linkOffset)?void 0:Fl.pitch)?Dl:0,this.isGps&&!this.is3D&&(uc.pitch+=this.config.arrowsPosition.linkPitchOffset),bt.push(uc),this.arrowsRenderer.addLinkArrow(le,uc,null==(sc=le.linkOffset)?void 0:sc.depth)})),this.arrowsRenderer.render(),this.config.linksOnCompass)&&(null==(le=this.compass)||le.setHotspots(bt))}__getLinkPosition(vt,bt){return this.isGps?gpsToSpherical(vt.gps,bt.gps):this.viewer.dataHelper.cleanPosition(bt.position)}async __getTooltipContent(vt){const bt=await this.datasource.loadNode(vt.nodeId),le=[];(bt.name||bt.thumbnail||bt.caption)&&(bt.name&&le.push("<h3>"+bt.name+"</h3>"),bt.thumbnail&&le.push('<img src="'+bt.thumbnail+'">'),bt.caption&&le.push("<p>"+bt.caption+"</p>"));let ls=le.join("");return this.config.getLinkTooltip&&(ls=this.config.getLinkTooltip(ls,vt,bt)),ls}__onEnterArrow(vt,bt){var le,Dl;const Fl=ho.Wp.getPosition(this.viewer.container),sc={x:bt.clientX-Fl.x,y:bt.clientY-Fl.y};this.config.showLinkTooltip&&(this.state.currentTooltip=this.viewer.createTooltip((0,ls.A)({},Qd,{left:sc.x,top:sc.y,box:{width:20,height:20}})),this.__getTooltipContent(vt).then((vt=>{vt?this.state.currentTooltip.update(vt):this.__hideTooltip()}))),null==(le=this.map)||le.setActiveHotspot(Yd+vt.nodeId),null==(Dl=this.plan)||Dl.setActiveHotspot(Yd+vt.nodeId),this.dispatchEvent(new gc(vt,this.state.currentNode))}__onHoverArrow(vt){var bt;const le=ho.Wp.getPosition(this.viewer.container),ls={x:vt.clientX-le.x,y:vt.clientY-le.y};null==(bt=this.state.currentTooltip)||bt.move({left:ls.x,top:ls.y})}__onLeaveArrow(vt){var bt,le;this.__hideTooltip(),null==(bt=this.map)||bt.setActiveHotspot(null),null==(le=this.plan)||le.setActiveHotspot(null),this.dispatchEvent(new Ec(vt,this.state.currentNode))}__hideTooltip(){var vt;null==(vt=this.state.currentTooltip)||vt.hide(),this.state.currentTooltip=null}__preload(vt){this.config.preload&&(this.state.preload[vt.id]=!0,this.state.currentNode.links.filter((vt=>!this.state.preload[vt.nodeId])).filter((vt=>"function"!==typeof this.config.preload||this.config.preload(this.state.currentNode,vt))).forEach((vt=>{this.state.preload[vt.nodeId]=this.datasource.loadNode(vt.nodeId).then((vt=>this.viewer.textureLoader.preloadPanorama(vt.panorama))).then((()=>{this.state.preload[vt.nodeId]=!0})).catch((()=>{delete this.state.preload[vt.nodeId]}))})))}__addNodeMarkers(vt){vt.markers&&(this.markers?this.markers.setMarkers(vt.markers.map((bt=>{var le,ls;bt.gps&&this.isGps&&(bt.position=gpsToSpherical(vt.gps,bt.gps),null!=(le=bt.data)&&le.map&&Object.assign(bt.data.map,this.__getGpsMapPosition(bt.gps)),null!=(ls=bt.data)&&ls.plan&&(bt.data.plan.coordinates=bt.gps));return bt}))):ho.Wp.logWarn("Node "+vt.id+" markers ignored because the plugin is not loaded."))}__getNodeMapPosition(vt){const bt=this.__getGpsMapPosition(vt.gps);return bt||(vt.map?{x:vt.map.x,y:vt.map.y}:null)}__getGpsMapPosition(vt){const bt=this.config.map;return this.isGps&&bt&&bt.extent&&bt.size?{x:Dl.cj9.mapLinear(vt[0],bt.extent[0],bt.extent[2],0,bt.size.width),y:Dl.cj9.mapLinear(vt[1],bt.extent[1],bt.extent[3],0,bt.size.height)}:null}};im.id="virtual-tour",im.VERSION="5.14.1",im.configParser=em,im.readonlyOptions=Object.keys(em.defaults);var nm=im},3336:(vt,bt,le)=>{"use strict";le.d(bt,{Rq:()=>decompressSync});var ls=Uint8Array,ho=Uint16Array,Dl=Int32Array,Fl=new ls([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),sc=new ls([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),uc=new ls([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),freb=function(vt,bt){for(var le=new ho(31),ls=0;ls<31;++ls)le[ls]=bt+=1<<vt[ls-1];var Fl=new Dl(le[30]);for(ls=1;ls<30;++ls)for(var sc=le[ls];sc<le[ls+1];++sc)Fl[sc]=sc-le[ls]<<5|ls;return{b:le,r:Fl}},mc=freb(Fl,2),gc=mc.b,Ac=mc.r;gc[28]=258,Ac[258]=28;for(var Ec=freb(sc,0),kc=Ec.b,du=(Ec.r,new ho(32768)),_u=0;_u<32768;++_u){var Md=(43690&_u)>>1|(21845&_u)<<1;Md=(61680&(Md=(52428&Md)>>2|(13107&Md)<<2))>>4|(3855&Md)<<4,du[_u]=((65280&Md)>>8|(255&Md)<<8)>>1}var hMap=function(vt,bt,le){for(var ls=vt.length,Dl=0,Fl=new ho(bt);Dl<ls;++Dl)vt[Dl]&&++Fl[vt[Dl]-1];var sc,uc=new ho(bt);for(Dl=1;Dl<bt;++Dl)uc[Dl]=uc[Dl-1]+Fl[Dl-1]<<1;if(le){sc=new ho(1<<bt);var mc=15-bt;for(Dl=0;Dl<ls;++Dl)if(vt[Dl])for(var gc=Dl<<4|vt[Dl],Ac=bt-vt[Dl],Ec=uc[vt[Dl]-1]++<<Ac,kc=Ec|(1<<Ac)-1;Ec<=kc;++Ec)sc[du[Ec]>>mc]=gc}else for(sc=new ho(ls),Dl=0;Dl<ls;++Dl)vt[Dl]&&(sc[Dl]=du[uc[vt[Dl]-1]++]>>15-vt[Dl]);return sc},Ld=new ls(288);for(_u=0;_u<144;++_u)Ld[_u]=8;for(_u=144;_u<256;++_u)Ld[_u]=9;for(_u=256;_u<280;++_u)Ld[_u]=7;for(_u=280;_u<288;++_u)Ld[_u]=8;var Nd=new ls(32);for(_u=0;_u<32;++_u)Nd[_u]=5;var Rd=hMap(Ld,9,1),Od=hMap(Nd,5,1),max=function(vt){for(var bt=vt[0],le=1;le<vt.length;++le)vt[le]>bt&&(bt=vt[le]);return bt},bits=function(vt,bt,le){var ls=bt/8|0;return(vt[ls]|vt[ls+1]<<8)>>(7&bt)&le},bits16=function(vt,bt){var le=bt/8|0;return(vt[le]|vt[le+1]<<8|vt[le+2]<<16)>>(7&bt)},shft=function(vt){return(vt+7)/8|0},slc=function(vt,bt,le){return(null==bt||bt<0)&&(bt=0),(null==le||le>vt.length)&&(le=vt.length),new ls(vt.subarray(bt,le))},jd=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],err=function(vt,bt,le){var ls=new Error(bt||jd[vt]);if(ls.code=vt,Error.captureStackTrace&&Error.captureStackTrace(ls,err),!le)throw ls;return ls},inflt=function(vt,bt,le,ho){var Dl=vt.length,mc=ho?ho.length:0;if(!Dl||bt.f&&!bt.l)return le||new ls(0);var Ac=!le,Ec=Ac||2!=bt.i,du=bt.i;Ac&&(le=new ls(3*Dl));var cbuf=function(vt){var bt=le.length;if(vt>bt){var ho=new ls(Math.max(2*bt,vt));ho.set(le),le=ho}},_u=bt.f||0,Md=bt.p||0,Ld=bt.b||0,Nd=bt.l,jd=bt.d,Ud=bt.m,Gd=bt.n,qd=8*Dl;do{if(!Nd){_u=bits(vt,Md,1);var Hd=bits(vt,Md+1,3);if(Md+=3,!Hd){var Wd=vt[(im=shft(Md)+4)-4]|vt[im-3]<<8,Zd=im+Wd;if(Zd>Dl){du&&err(0);break}Ec&&cbuf(Ld+Wd),le.set(vt.subarray(im,Zd),Ld),bt.b=Ld+=Wd,bt.p=Md=8*Zd,bt.f=_u;continue}if(1==Hd)Nd=Rd,jd=Od,Ud=9,Gd=5;else if(2==Hd){var Yd=bits(vt,Md,31)+257,Qd=bits(vt,Md+10,15)+4,Xd=Yd+bits(vt,Md+5,31)+1;Md+=14;for(var Kd=new ls(Xd),Jd=new ls(19),$d=0;$d<Qd;++$d)Jd[uc[$d]]=bits(vt,Md+3*$d,7);Md+=3*Qd;var sp=max(Jd),tm=(1<<sp)-1,em=hMap(Jd,sp,1);for($d=0;$d<Xd;){var im,nm=em[bits(vt,Md,tm)];if(Md+=15&nm,(im=nm>>4)<16)Kd[$d++]=im;else{var rm=0,am=0;for(16==im?(am=3+bits(vt,Md,3),Md+=2,rm=Kd[$d-1]):17==im?(am=3+bits(vt,Md,7),Md+=3):18==im&&(am=11+bits(vt,Md,127),Md+=7);am--;)Kd[$d++]=rm}}var sm=Kd.subarray(0,Yd),om=Kd.subarray(Yd);Ud=max(sm),Gd=max(om),Nd=hMap(sm,Ud,1),jd=hMap(om,Gd,1)}else err(1);if(Md>qd){du&&err(0);break}}Ec&&cbuf(Ld+131072);for(var lm=(1<<Ud)-1,cm=(1<<Gd)-1,um=Md;;um=Md){var hm=(rm=Nd[bits16(vt,Md)&lm])>>4;if((Md+=15&rm)>qd){du&&err(0);break}if(rm||err(2),hm<256)le[Ld++]=hm;else{if(256==hm){um=Md,Nd=null;break}var dm=hm-254;if(hm>264){var pm=Fl[$d=hm-257];dm=bits(vt,Md,(1<<pm)-1)+gc[$d],Md+=pm}var mm=jd[bits16(vt,Md)&cm],fm=mm>>4;mm||err(3),Md+=15&mm;om=kc[fm];if(fm>3){pm=sc[fm];om+=bits16(vt,Md)&(1<<pm)-1,Md+=pm}if(Md>qd){du&&err(0);break}Ec&&cbuf(Ld+131072);var gm=Ld+dm;if(Ld<om){var Am=mc-om,_m=Math.min(om,gm);for(Am+Ld<0&&err(3);Ld<_m;++Ld)le[Ld]=ho[Am+Ld]}for(;Ld<gm;++Ld)le[Ld]=le[Ld-om]}}bt.l=Nd,bt.p=um,bt.b=Ld,bt.f=_u,Nd&&(_u=1,bt.m=Ud,bt.d=jd,bt.n=Gd)}while(!_u);return Ld!=le.length&&Ac?slc(le,0,Ld):le.subarray(0,Ld)},Ud=new ls(0),gzs=function(vt){31==vt[0]&&139==vt[1]&&8==vt[2]||err(6,"invalid gzip data");var bt=vt[3],le=10;4&bt&&(le+=2+(vt[10]|vt[11]<<8));for(var ls=(bt>>3&1)+(bt>>4&1);ls>0;ls-=!vt[le++]);return le+(2&bt)},gzl=function(vt){var bt=vt.length;return(vt[bt-4]|vt[bt-3]<<8|vt[bt-2]<<16|vt[bt-1]<<24)>>>0},zls=function(vt,bt){return(8!=(15&vt[0])||vt[0]>>4>7||(vt[0]<<8|vt[1])%31)&&err(6,"invalid zlib data"),(vt[1]>>5&1)==+!bt&&err(6,"invalid zlib data: "+(32&vt[1]?"need":"unexpected")+" dictionary"),2+(vt[1]>>3&4)};function inflateSync(vt,bt){return inflt(vt,{i:2},bt&&bt.out,bt&&bt.dictionary)}function gunzipSync(vt,bt){var le=gzs(vt);return le+8>vt.length&&err(6,"invalid gzip data"),inflt(vt.subarray(le,-8),{i:2},bt&&bt.out||new ls(gzl(vt)),bt&&bt.dictionary)}function unzlibSync(vt,bt){return inflt(vt.subarray(zls(vt,bt&&bt.dictionary),-4),{i:2},bt&&bt.out,bt&&bt.dictionary)}function decompressSync(vt,bt){return 31==vt[0]&&139==vt[1]&&8==vt[2]?gunzipSync(vt,bt):8!=(15&vt[0])||vt[0]>>4>7||(vt[0]<<8|vt[1])%31?inflateSync(vt,bt):unzlibSync(vt,bt)}var Gd="undefined"!=typeof TextDecoder&&new TextDecoder;try{Gd.decode(Ud,{stream:!0})}catch(qd){}"function"==typeof queueMicrotask?queueMicrotask:"function"==typeof setTimeout&&setTimeout},2614:function(vt){vt.exports=function(){"use strict";function createCommonjsModule(vt,bt){return vt(bt={exports:{}},bt.exports),bt.exports}var vt=createCommonjsModule((function(vt){var bt=vt.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=bt)})),bt=createCommonjsModule((function(vt){var bt=vt.exports={version:"2.6.5"};"number"==typeof __e&&(__e=bt)})),le=(bt.version,function(vt){return"object"===typeof vt?null!==vt:"function"===typeof vt}),_anObject=function(vt){if(!le(vt))throw TypeError(vt+" is not an object!");return vt},_fails=function(vt){try{return!!vt()}catch(bt){return!0}},ls=!_fails((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})),ho=vt.document,Dl=le(ho)&&le(ho.createElement),_domCreate=function(vt){return Dl?ho.createElement(vt):{}},Fl=!ls&&!_fails((function(){return 7!=Object.defineProperty(_domCreate("div"),"a",{get:function(){return 7}}).a})),_toPrimitive=function(vt,bt){if(!le(vt))return vt;var ls,ho;if(bt&&"function"==typeof(ls=vt.toString)&&!le(ho=ls.call(vt)))return ho;if("function"==typeof(ls=vt.valueOf)&&!le(ho=ls.call(vt)))return ho;if(!bt&&"function"==typeof(ls=vt.toString)&&!le(ho=ls.call(vt)))return ho;throw TypeError("Can't convert object to primitive value")},sc=Object.defineProperty,uc={f:ls?Object.defineProperty:function(vt,bt,le){if(_anObject(vt),bt=_toPrimitive(bt,!0),_anObject(le),Fl)try{return sc(vt,bt,le)}catch(ls){}if("get"in le||"set"in le)throw TypeError("Accessors not supported!");return"value"in le&&(vt[bt]=le.value),vt}},_propertyDesc=function(vt,bt){return{enumerable:!(1&vt),configurable:!(2&vt),writable:!(4&vt),value:bt}},mc=ls?function(vt,bt,le){return uc.f(vt,bt,_propertyDesc(1,le))}:function(vt,bt,le){return vt[bt]=le,vt},gc={}.hasOwnProperty,_has=function(vt,bt){return gc.call(vt,bt)},Ac=0,Ec=Math.random(),_uid=function(vt){return"Symbol(".concat(void 0===vt?"":vt,")_",(++Ac+Ec).toString(36))},kc=!1,du=createCommonjsModule((function(le){var ls="__core-js_shared__",ho=vt[ls]||(vt[ls]={});(le.exports=function(vt,bt){return ho[vt]||(ho[vt]=void 0!==bt?bt:{})})("versions",[]).push({version:bt.version,mode:kc?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})})),_u=du("native-function-to-string",Function.toString),Md=createCommonjsModule((function(le){var ls=_uid("src"),ho="toString",Dl=(""+_u).split(ho);bt.inspectSource=function(vt){return _u.call(vt)},(le.exports=function(bt,le,ho,Fl){var sc="function"==typeof ho;sc&&(_has(ho,"name")||mc(ho,"name",le)),bt[le]!==ho&&(sc&&(_has(ho,ls)||mc(ho,ls,bt[le]?""+bt[le]:Dl.join(String(le)))),bt===vt?bt[le]=ho:Fl?bt[le]?bt[le]=ho:mc(bt,le,ho):(delete bt[le],mc(bt,le,ho)))})(Function.prototype,ho,(function(){return"function"==typeof this&&this[ls]||_u.call(this)}))})),_aFunction=function(vt){if("function"!=typeof vt)throw TypeError(vt+" is not a function!");return vt},_ctx=function(vt,bt,le){if(_aFunction(vt),void 0===bt)return vt;switch(le){case 1:return function(le){return vt.call(bt,le)};case 2:return function(le,ls){return vt.call(bt,le,ls)};case 3:return function(le,ls,ho){return vt.call(bt,le,ls,ho)}}return function(){return vt.apply(bt,arguments)}},Ld="prototype",$export=function(le,ls,ho){var Dl,Fl,sc,uc,gc=le&$export.F,Ac=le&$export.G,Ec=le&$export.S,kc=le&$export.P,du=le&$export.B,_u=Ac?vt:Ec?vt[ls]||(vt[ls]={}):(vt[ls]||{})[Ld],Nd=Ac?bt:bt[ls]||(bt[ls]={}),Rd=Nd[Ld]||(Nd[Ld]={});for(Dl in Ac&&(ho=ls),ho)sc=((Fl=!gc&&_u&&void 0!==_u[Dl])?_u:ho)[Dl],uc=du&&Fl?_ctx(sc,vt):kc&&"function"==typeof sc?_ctx(Function.call,sc):sc,_u&&Md(_u,Dl,sc,le&$export.U),Nd[Dl]!=sc&&mc(Nd,Dl,uc),kc&&Rd[Dl]!=sc&&(Rd[Dl]=sc)};vt.core=bt,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128;var Nd,Rd=$export,Od=Math.ceil,jd=Math.floor,_toInteger=function(vt){return isNaN(vt=+vt)?0:(vt>0?jd:Od)(vt)},_defined=function(vt){if(void 0==vt)throw TypeError("Can't call method on "+vt);return vt},Ud=(Nd=!1,function(vt,bt){var le,ls,ho=String(_defined(vt)),Dl=_toInteger(bt),Fl=ho.length;return Dl<0||Dl>=Fl?Nd?"":void 0:(le=ho.charCodeAt(Dl))<55296||le>56319||Dl+1===Fl||(ls=ho.charCodeAt(Dl+1))<56320||ls>57343?Nd?ho.charAt(Dl):le:Nd?ho.slice(Dl,Dl+2):ls-56320+(le-55296<<10)+65536});Rd(Rd.P,"String",{codePointAt:function(vt){return Ud(this,vt)}}),bt.String.codePointAt;var Gd=Math.max,qd=Math.min,_toAbsoluteIndex=function(vt,bt){return(vt=_toInteger(vt))<0?Gd(vt+bt,0):qd(vt,bt)},Hd=String.fromCharCode,Wd=String.fromCodePoint;Rd(Rd.S+Rd.F*(!!Wd&&1!=Wd.length),"String",{fromCodePoint:function(vt){for(var bt,le=arguments,ls=[],ho=arguments.length,Dl=0;ho>Dl;){if(bt=+le[Dl++],_toAbsoluteIndex(bt,1114111)!==bt)throw RangeError(bt+" is not a valid code point");ls.push(bt<65536?Hd(bt):Hd(55296+((bt-=65536)>>10),bt%1024+56320))}return ls.join("")}}),bt.String.fromCodePoint;var Zd,Yd,Qd,Xd,Kd,Jd,$d,sp,tm,em,im,nm,rm,am,sm={Space_Separator:/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,ID_Start:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,ID_Continue:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},om={isSpaceSeparator:function(vt){return"string"===typeof vt&&sm.Space_Separator.test(vt)},isIdStartChar:function(vt){return"string"===typeof vt&&(vt>="a"&&vt<="z"||vt>="A"&&vt<="Z"||"$"===vt||"_"===vt||sm.ID_Start.test(vt))},isIdContinueChar:function(vt){return"string"===typeof vt&&(vt>="a"&&vt<="z"||vt>="A"&&vt<="Z"||vt>="0"&&vt<="9"||"$"===vt||"_"===vt||"\u200c"===vt||"\u200d"===vt||sm.ID_Continue.test(vt))},isDigit:function(vt){return"string"===typeof vt&&/[0-9]/.test(vt)},isHexDigit:function(vt){return"string"===typeof vt&&/[0-9A-Fa-f]/.test(vt)}},parse=function(vt,bt){Zd=String(vt),Yd="start",Qd=[],Xd=0,Kd=1,Jd=0,$d=void 0,sp=void 0,tm=void 0;do{$d=lex(),cm[Yd]()}while("eof"!==$d.type);return"function"===typeof bt?internalize({"":tm},"",bt):tm};function internalize(vt,bt,le){var ls=vt[bt];if(null!=ls&&"object"===typeof ls)if(Array.isArray(ls))for(var ho=0;ho<ls.length;ho++){var Dl=String(ho),Fl=internalize(ls,Dl,le);void 0===Fl?delete ls[Dl]:Object.defineProperty(ls,Dl,{value:Fl,writable:!0,enumerable:!0,configurable:!0})}else for(var sc in ls){var uc=internalize(ls,sc,le);void 0===uc?delete ls[sc]:Object.defineProperty(ls,sc,{value:uc,writable:!0,enumerable:!0,configurable:!0})}return le.call(vt,bt,ls)}function lex(){for(em="default",im="",nm=!1,rm=1;;){am=peek();var vt=lm[em]();if(vt)return vt}}function peek(){if(Zd[Xd])return String.fromCodePoint(Zd.codePointAt(Xd))}function read(){var vt=peek();return"\n"===vt?(Kd++,Jd=0):vt?Jd+=vt.length:Jd++,vt&&(Xd+=vt.length),vt}var lm={default:function(){switch(am){case"\t":case"\v":case"\f":case" ":case"\xa0":case"\ufeff":case"\n":case"\r":case"\u2028":case"\u2029":return void read();case"/":return read(),void(em="comment");case void 0:return read(),newToken("eof")}if(!om.isSpaceSeparator(am))return lm[Yd]();read()},comment:function(){switch(am){case"*":return read(),void(em="multiLineComment");case"/":return read(),void(em="singleLineComment")}throw invalidChar(read())},multiLineComment:function(){switch(am){case"*":return read(),void(em="multiLineCommentAsterisk");case void 0:throw invalidChar(read())}read()},multiLineCommentAsterisk:function(){switch(am){case"*":return void read();case"/":return read(),void(em="default");case void 0:throw invalidChar(read())}read(),em="multiLineComment"},singleLineComment:function(){switch(am){case"\n":case"\r":case"\u2028":case"\u2029":return read(),void(em="default");case void 0:return read(),newToken("eof")}read()},value:function(){switch(am){case"{":case"[":return newToken("punctuator",read());case"n":return read(),literal("ull"),newToken("null",null);case"t":return read(),literal("rue"),newToken("boolean",!0);case"f":return read(),literal("alse"),newToken("boolean",!1);case"-":case"+":return"-"===read()&&(rm=-1),void(em="sign");case".":return im=read(),void(em="decimalPointLeading");case"0":return im=read(),void(em="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return im=read(),void(em="decimalInteger");case"I":return read(),literal("nfinity"),newToken("numeric",1/0);case"N":return read(),literal("aN"),newToken("numeric",NaN);case'"':case"'":return nm='"'===read(),im="",void(em="string")}throw invalidChar(read())},identifierNameStartEscape:function(){if("u"!==am)throw invalidChar(read());read();var vt=unicodeEscape();switch(vt){case"$":case"_":break;default:if(!om.isIdStartChar(vt))throw invalidIdentifier()}im+=vt,em="identifierName"},identifierName:function(){switch(am){case"$":case"_":case"\u200c":case"\u200d":return void(im+=read());case"\\":return read(),void(em="identifierNameEscape")}if(!om.isIdContinueChar(am))return newToken("identifier",im);im+=read()},identifierNameEscape:function(){if("u"!==am)throw invalidChar(read());read();var vt=unicodeEscape();switch(vt){case"$":case"_":case"\u200c":case"\u200d":break;default:if(!om.isIdContinueChar(vt))throw invalidIdentifier()}im+=vt,em="identifierName"},sign:function(){switch(am){case".":return im=read(),void(em="decimalPointLeading");case"0":return im=read(),void(em="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return im=read(),void(em="decimalInteger");case"I":return read(),literal("nfinity"),newToken("numeric",rm*(1/0));case"N":return read(),literal("aN"),newToken("numeric",NaN)}throw invalidChar(read())},zero:function(){switch(am){case".":return im+=read(),void(em="decimalPoint");case"e":case"E":return im+=read(),void(em="decimalExponent");case"x":case"X":return im+=read(),void(em="hexadecimal")}return newToken("numeric",0*rm)},decimalInteger:function(){switch(am){case".":return im+=read(),void(em="decimalPoint");case"e":case"E":return im+=read(),void(em="decimalExponent")}if(!om.isDigit(am))return newToken("numeric",rm*Number(im));im+=read()},decimalPointLeading:function(){if(om.isDigit(am))return im+=read(),void(em="decimalFraction");throw invalidChar(read())},decimalPoint:function(){switch(am){case"e":case"E":return im+=read(),void(em="decimalExponent")}return om.isDigit(am)?(im+=read(),void(em="decimalFraction")):newToken("numeric",rm*Number(im))},decimalFraction:function(){switch(am){case"e":case"E":return im+=read(),void(em="decimalExponent")}if(!om.isDigit(am))return newToken("numeric",rm*Number(im));im+=read()},decimalExponent:function(){switch(am){case"+":case"-":return im+=read(),void(em="decimalExponentSign")}if(om.isDigit(am))return im+=read(),void(em="decimalExponentInteger");throw invalidChar(read())},decimalExponentSign:function(){if(om.isDigit(am))return im+=read(),void(em="decimalExponentInteger");throw invalidChar(read())},decimalExponentInteger:function(){if(!om.isDigit(am))return newToken("numeric",rm*Number(im));im+=read()},hexadecimal:function(){if(om.isHexDigit(am))return im+=read(),void(em="hexadecimalInteger");throw invalidChar(read())},hexadecimalInteger:function(){if(!om.isHexDigit(am))return newToken("numeric",rm*Number(im));im+=read()},string:function(){switch(am){case"\\":return read(),void(im+=escape());case'"':return nm?(read(),newToken("string",im)):void(im+=read());case"'":return nm?void(im+=read()):(read(),newToken("string",im));case"\n":case"\r":throw invalidChar(read());case"\u2028":case"\u2029":separatorChar(am);break;case void 0:throw invalidChar(read())}im+=read()},start:function(){switch(am){case"{":case"[":return newToken("punctuator",read())}em="value"},beforePropertyName:function(){switch(am){case"$":case"_":return im=read(),void(em="identifierName");case"\\":return read(),void(em="identifierNameStartEscape");case"}":return newToken("punctuator",read());case'"':case"'":return nm='"'===read(),void(em="string")}if(om.isIdStartChar(am))return im+=read(),void(em="identifierName");throw invalidChar(read())},afterPropertyName:function(){if(":"===am)return newToken("punctuator",read());throw invalidChar(read())},beforePropertyValue:function(){em="value"},afterPropertyValue:function(){switch(am){case",":case"}":return newToken("punctuator",read())}throw invalidChar(read())},beforeArrayValue:function(){if("]"===am)return newToken("punctuator",read());em="value"},afterArrayValue:function(){switch(am){case",":case"]":return newToken("punctuator",read())}throw invalidChar(read())},end:function(){throw invalidChar(read())}};function newToken(vt,bt){return{type:vt,value:bt,line:Kd,column:Jd}}function literal(vt){for(var bt=0,le=vt;bt<le.length;bt+=1){var ls=le[bt];if(peek()!==ls)throw invalidChar(read());read()}}function escape(){switch(peek()){case"b":return read(),"\b";case"f":return read(),"\f";case"n":return read(),"\n";case"r":return read(),"\r";case"t":return read(),"\t";case"v":return read(),"\v";case"0":if(read(),om.isDigit(peek()))throw invalidChar(read());return"\0";case"x":return read(),hexEscape();case"u":return read(),unicodeEscape();case"\n":case"\u2028":case"\u2029":return read(),"";case"\r":return read(),"\n"===peek()&&read(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case void 0:throw invalidChar(read())}return read()}function hexEscape(){var vt="",bt=peek();if(!om.isHexDigit(bt))throw invalidChar(read());if(vt+=read(),bt=peek(),!om.isHexDigit(bt))throw invalidChar(read());return vt+=read(),String.fromCodePoint(parseInt(vt,16))}function unicodeEscape(){for(var vt="",bt=4;bt-- >0;){var le=peek();if(!om.isHexDigit(le))throw invalidChar(read());vt+=read()}return String.fromCodePoint(parseInt(vt,16))}var cm={start:function(){if("eof"===$d.type)throw invalidEOF();push()},beforePropertyName:function(){switch($d.type){case"identifier":case"string":return sp=$d.value,void(Yd="afterPropertyName");case"punctuator":return void pop();case"eof":throw invalidEOF()}},afterPropertyName:function(){if("eof"===$d.type)throw invalidEOF();Yd="beforePropertyValue"},beforePropertyValue:function(){if("eof"===$d.type)throw invalidEOF();push()},beforeArrayValue:function(){if("eof"===$d.type)throw invalidEOF();"punctuator"!==$d.type||"]"!==$d.value?push():pop()},afterPropertyValue:function(){if("eof"===$d.type)throw invalidEOF();switch($d.value){case",":return void(Yd="beforePropertyName");case"}":pop()}},afterArrayValue:function(){if("eof"===$d.type)throw invalidEOF();switch($d.value){case",":return void(Yd="beforeArrayValue");case"]":pop()}},end:function(){}};function push(){var vt;switch($d.type){case"punctuator":switch($d.value){case"{":vt={};break;case"[":vt=[]}break;case"null":case"boolean":case"numeric":case"string":vt=$d.value}if(void 0===tm)tm=vt;else{var bt=Qd[Qd.length-1];Array.isArray(bt)?bt.push(vt):Object.defineProperty(bt,sp,{value:vt,writable:!0,enumerable:!0,configurable:!0})}if(null!==vt&&"object"===typeof vt)Qd.push(vt),Yd=Array.isArray(vt)?"beforeArrayValue":"beforePropertyName";else{var le=Qd[Qd.length-1];Yd=null==le?"end":Array.isArray(le)?"afterArrayValue":"afterPropertyValue"}}function pop(){Qd.pop();var vt=Qd[Qd.length-1];Yd=null==vt?"end":Array.isArray(vt)?"afterArrayValue":"afterPropertyValue"}function invalidChar(vt){return syntaxError(void 0===vt?"JSON5: invalid end of input at "+Kd+":"+Jd:"JSON5: invalid character '"+formatChar(vt)+"' at "+Kd+":"+Jd)}function invalidEOF(){return syntaxError("JSON5: invalid end of input at "+Kd+":"+Jd)}function invalidIdentifier(){return syntaxError("JSON5: invalid identifier character at "+Kd+":"+(Jd-=5))}function separatorChar(vt){console.warn("JSON5: '"+formatChar(vt)+"' in strings is not valid ECMAScript; consider escaping")}function formatChar(vt){var bt={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(bt[vt])return bt[vt];if(vt<" "){var le=vt.charCodeAt(0).toString(16);return"\\x"+("00"+le).substring(le.length)}return vt}function syntaxError(vt){var bt=new SyntaxError(vt);return bt.lineNumber=Kd,bt.columnNumber=Jd,bt}return{parse:parse,stringify:function(vt,bt,le){var ls,ho,Dl,Fl=[],sc="",uc="";if(null==bt||"object"!==typeof bt||Array.isArray(bt)||(le=bt.space,Dl=bt.quote,bt=bt.replacer),"function"===typeof bt)ho=bt;else if(Array.isArray(bt)){ls=[];for(var mc=0,gc=bt;mc<gc.length;mc+=1){var Ac=gc[mc],Ec=void 0;"string"===typeof Ac?Ec=Ac:("number"===typeof Ac||Ac instanceof String||Ac instanceof Number)&&(Ec=String(Ac)),void 0!==Ec&&ls.indexOf(Ec)<0&&ls.push(Ec)}}return le instanceof Number?le=Number(le):le instanceof String&&(le=String(le)),"number"===typeof le?le>0&&(le=Math.min(10,Math.floor(le)),uc=" ".substr(0,le)):"string"===typeof le&&(uc=le.substr(0,10)),serializeProperty("",{"":vt});function serializeProperty(vt,bt){var le=bt[vt];switch(null!=le&&("function"===typeof le.toJSON5?le=le.toJSON5(vt):"function"===typeof le.toJSON&&(le=le.toJSON(vt))),ho&&(le=ho.call(bt,vt,le)),le instanceof Number?le=Number(le):le instanceof String?le=String(le):le instanceof Boolean&&(le=le.valueOf()),le){case null:return"null";case!0:return"true";case!1:return"false"}return"string"===typeof le?quoteString(le,!1):"number"===typeof le?String(le):"object"===typeof le?Array.isArray(le)?serializeArray(le):serializeObject(le):void 0}function quoteString(vt){for(var bt={"'":.1,'"':.2},le={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"},ls="",ho=0;ho<vt.length;ho++){var Fl=vt[ho];switch(Fl){case"'":case'"':bt[Fl]++,ls+=Fl;continue;case"\0":if(om.isDigit(vt[ho+1])){ls+="\\x00";continue}}if(le[Fl])ls+=le[Fl];else if(Fl<" "){var sc=Fl.charCodeAt(0).toString(16);ls+="\\x"+("00"+sc).substring(sc.length)}else ls+=Fl}var uc=Dl||Object.keys(bt).reduce((function(vt,le){return bt[vt]<bt[le]?vt:le}));return uc+(ls=ls.replace(new RegExp(uc,"g"),le[uc]))+uc}function serializeObject(vt){if(Fl.indexOf(vt)>=0)throw TypeError("Converting circular structure to JSON5");Fl.push(vt);var bt=sc;sc+=uc;for(var le,ho,Dl=[],mc=0,gc=ls||Object.keys(vt);mc<gc.length;mc+=1){var Ac=gc[mc],Ec=serializeProperty(Ac,vt);if(void 0!==Ec){var kc=serializeKey(Ac)+":";""!==uc&&(kc+=" "),kc+=Ec,Dl.push(kc)}}if(0===Dl.length)le="{}";else if(""===uc)le="{"+(ho=Dl.join(","))+"}";else{var du=",\n"+sc;ho=Dl.join(du),le="{\n"+sc+ho+",\n"+bt+"}"}return Fl.pop(),sc=bt,le}function serializeKey(vt){if(0===vt.length)return quoteString(vt,!0);var bt=String.fromCodePoint(vt.codePointAt(0));if(!om.isIdStartChar(bt))return quoteString(vt,!0);for(var le=bt.length;le<vt.length;le++)if(!om.isIdContinueChar(String.fromCodePoint(vt.codePointAt(le))))return quoteString(vt,!0);return vt}function serializeArray(vt){if(Fl.indexOf(vt)>=0)throw TypeError("Converting circular structure to JSON5");Fl.push(vt);var bt=sc;sc+=uc;for(var le,ls=[],ho=0;ho<vt.length;ho++){var Dl=serializeProperty(String(ho),vt);ls.push(void 0!==Dl?Dl:"null")}if(0===ls.length)le="[]";else if(""===uc)le="["+ls.join(",")+"]";else{var mc=",\n"+sc,gc=ls.join(mc);le="[\n"+sc+gc+",\n"+bt+"]"}return Fl.pop(),sc=bt,le}}}}()},1865:()=>{},3961:()=>{},2710:()=>{},1575:()=>{},1080:()=>{},6795:()=>{},3638:()=>{},7776:()=>{},7365:()=>{},970:()=>{},9616:()=>{},1870:()=>{},3041:()=>{},5003:()=>{},3630:()=>{},1811:()=>{},1230:()=>{},8407:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKCXZpZXdCb3g9IjAgMCA2NCA2NCIKCXdpZHRoPSI2NCIgaGVpZ2h0PSI2NCIKCXhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKCXhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aAoJZD0iTSAyNy4zNTk0ODYsMTIuNjU1MTMgMS40MzE2MzQ5LDQzLjQ5OTE3IGMgLTMuMjk5OTA4MiwzLjkwNjAxNCAtMC41Mzg3NjA0Niw5Ljk2NzA3IDQuNjQ2ODA5Nyw5Ljk2NzA3IEggNTcuOTM0MTQ2IGMgNS4xMTgyMjUsMCA3Ljk0NjcxOCwtNS45OTM3MTEgNC42NDY4MSwtOS45NjcwNyBMIDM2LjY1MzEwNSwxMi42NTUxMyBjIC0yLjQyNDQyMiwtMi44Mjg0OTMxIC02Ljg2OTE5NywtMi44Mjg0OTMxIC05LjI5MzYxOSwwIHoiCglzdHlsZT0iZmlsbDogY3VycmVudENvbG9yO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjY3MzQ1MSIgLz4KPC9zdmc+Cg=="},6830:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgdmlld0JveD0iMCAwIDY0IDE5MiIgd2lkdGg9IjY0IiBoZWlnaHQ9IjE5MiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZQoJY3g9IjMyIgoJY3k9IjMyIgoJcj0iMjkuODk3ODA2IgoJc3R5bGU9ImZpbGw6IGN1cnJlbnRDb2xvcjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6I2ZmZmZmZjtzdHJva2Utd2lkdGg6NC4yMDQzOTtzdHJva2UtbWl0ZXJsaW1pdDo0O3N0cm9rZS1kYXNoYXJyYXk6bm9uZTtzdHJva2Utb3BhY2l0eToxIiAvPgo8cGF0aCBkPSJtIDM0LjI3OTg3MywyMC4yNjIxNzEgNi43MTE0NDIsNi43MTQyOTQgYyAwLjg5MTQ2NSwwLjg5MTQ2NSAyLjMzOTk4NiwwLjg5MTQ2NSAzLjIzMTQ1MSwwIDAuODkxNDY2LC0wLjg5MTQ2NSAwLjg5MTQ2NiwtMi4zMzk5ODUgMCwtMy4yMzE0NSAtOS42NjI5MDIsLTkuNjY1ODI5IC0zLjc5NDI4NSwtMy43OTQyODYgLTguMTgwMjk3LC04LjE4MDI5OCAtMS4wNzEzOTYsLTEuMDc0MzIyIC0yLjUyNTY5NiwtMS42NzcxNjUgLTQuMDM5OTcyLC0xLjY3NzE2NSAtMS41MTcxMjksMCAtMi45Njg1NzYsMC42MDI4NTggLTQuMDQyODI1LDEuNjc3MTY1IGwgLTguMTgwMjk4LDguMTgwMjk4IGMgLTAuODk0MzE3LDAuODkxNDY1IC0wLjg5NDMxNywyLjMzOTk4NiAwLDMuMjMxNDUgMC44OTE0NjYsMC44OTE0NjUgMi4zMzk5ODcsMC44OTE0NjUgMy4yMzE0NTIsMCBsIDYuNjk3MTA2LC02LjY5NDI1MyB2IDI3LjcwMzk0MyBjIDAsMCAtMC4xMDk3MDYsMi4xMjYyOTIgMi4yODU5NzEsMi4xMjYyOTIgMi4zOTU2NzYsMCAyLjI4NTk3LC0yLjEyNjI5MiAyLjI4NTk3LC0yLjEyNjI5MiB6IiBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpldmVub2RkO3N0cm9rZS13aWR0aDowLjczMTQyOSIgLz4KPC9zdmc+Cg=="},7534:vt=>{"use strict";vt.exports="data:image/jpeg;base64,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"},6810:vt=>{"use strict";vt.exports="data:image/jpeg;base64,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"},5975:vt=>{"use strict";vt.exports="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAlgCWAAD/2wBDAA0JCgsKCA0LCgsODg0PEyAVExISEyccHhcgLikxMC4pLSwzOko+MzZGNywtQFdBRkxOUlNSMj5aYVpQYEpRUk//2wBDAQ4ODhMREyYVFSZPNS01T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0//wgARCAQACAADAREAAhEBAxEB/8QAGgABAQEBAQEBAAAAAAAAAAAAAAECAwQFBv/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAf04AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAACkKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAApAUAAAAAAAEAAABAAAAAAACkKAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABQCFAAAAAAAIAAACAAAAEKAAAAAACgAAAAAAAoAAAAAABAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAKAAAAAAACFIACAAgAAAAAABQAUAAAAAAAAAAFAAAAIAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAABQAAAACAAgICAAAAAAoKACggIAUAAAAoAAAAKAAACAAAAEKQoAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAEKAAUAAEAAIACAEAABQUAAAAAAgAABSFIUApAUhQCgAAAgAIAAAAAUAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAACgAhAUhQAAUEKAAQoABAAACgEAAAABACEABSAAApAUAAoBQCgEAAIAACkIUAFAABSFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAUAEBAUAAAFAAIUAAEKQhQQoBQQoABCAgIQhQQFAAAKCAoBSFANAAAgAABCkKACFIUhQUAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUEBQQgBSggABQAACAEABSgAAAAAAAEAIQyZBCgAFIACgoKCgA0CFIAAAAQAAAAAAFABQCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhQACAFAAAIUAAEBQACAoAAAABAUAEAKAAZKQhkwACkKCgpAUoBTRAACApAACAhSgAgNGSlBAUFAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAoABk0AAAAAAQAAAAhCgpQAAAQEKAQgBTB0KCGQUwQoBAUyCggANFBSgAhAAAAUgBQClOYNFBQQhClBQCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEKACAgABQCkAAAAAAKCEMlKCEABDZSgAAhAUpCAoKQoIAQgMlANgAyAQpSEBQUhDRkhsgIAUpSkAIUAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAQpAAAUAAAAAEAKAQhCghSApClICkNAgKQ0AAAAAAAAAQGQUhQCFABQZMEOhopyNGiFBSEABSgAgAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACApCkAAAAAABSAAAAgICAgAABCg0aKZMlKQpClKAAAAAAAQFAIYIDRAQpSlBCEKU0CFMGSFBsyUEKCgAoABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACFBCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAKACAFIAAQEAIACAFNGgAACHMEKbKUEBAUoAIAQoAIZKDQMAhTQBkyaNgoBADkU2YICgoKCgFAKAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAFAAAAAAAIUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABQAQAAAAAgAAAIUpSEIQoIDIKDRAACEIaOhACFIDRAQpCmSlAIZKCAgNg0QEKQpAQGSmiAApQUAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAABAAAQpQQgIQApAACghSFKQhCgAA0ClIUAAhDZAYKUAyZIADR0BCmDJTJkGzJSlKUApQCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAgBQAAAAAQpAAQFBQAAACAFAAAAAAAAAAAAAAAAAAAAAAAIAAAACFAAAAAAAAAIAUAyAAQEKAUFAIQoABCFBDRClIAZKaKCkMlIZBQYBClNlIcikBo2cjIABToCgpQUAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAUAAAAAgABCkKUAAAgAAKAAAAAAAAAAAAAAAAAAAAAAQAAAAAEKAAAAAAAACAoIQAAFAIUEAAIUAAEAAKCFAIClNAgKYIUhoGCGgQpopQAQpDmZMmjAOhohDRQUoBQAAAAAAAAAAAAAAAAAAAAAAAAAQAoIAUAAAAEBQAAAAAAAQApCgAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAIAAAAQAoABAAAACAAAApSmSHQEKAQwQGjYMlBQAAAAAAAQ8pSg0UpSlBQUAAAAAAAAAAAAAAAAAAAAAAAAAAEBQQFAAAAAAAAAAAABACgAAAAAAAAAAAAAAAAAAAAAAAEAAAAAABCgAAAAAAEKCAAAAAAhQAAAACAEAAAKAQA2CggAIUpACFKAAAAAAADBDIIClNApQUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKAAAAAAAAAACAFIAUAAAAAAAAAAAAAAAAAAAAAAAAgAIACkABCkBQCgAAAAAEAAKQAAAFBTIKQpACAhQAACAAGigyaAIUgBAUoKAAAACApCgHEhSg0ClBQAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAFAAAIAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAABAAQFIACFIUApCgo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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgAEEgEkkgAAgAAEEgEAgEAAEggAgEgEkkAkAggkAEgkkAEEAAggkggkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgEgEkkAkAgAAAkkgAAAAAAAAAEggEEEEgkkEEEkkAgkAAgEgAAAAkgEgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAkgAAAgAAEgAAEAAAAAEgAEkAAAAggkEEEAAAgEkAkEkAgkkEkEgEggEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkAAEAAAAAAEkkEAEEgAAAEEkkkAAAkgAEEgAAEkAggEkgEkgEkkAkAgEkggkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAgkAgEEkgAAkAAEkgkkkEAAAEkEkEEAkgAgkkggAggggEEkAgAEEkgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgkEkEgEgAAkkgEAAAAAEkAAAAEgEAAAAAAAAAEEkkAAAkAkkAgEggkgAAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkEEgAAkkkgkkkgggkkkEkEgAAkgkAAAAAAAEgAEkkkEgkgkAgkAggEEEEgEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkgkkkAAkgkkEEAkkkggAAAEEggEEEAAggEkEEEggEEgEAEAkkgEEEEgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgkAggAEkkgAAkEgAEggEAEkAEkAgEEkAkggkAggEkgEgkkEEAEAgEkAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAEkAAEkgEkEkAEgggEAAAggAEAgAEAkggkEAEEkgAkgEAAggAgEgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkgAAAAAEEAEggAAAAkgAAAAAAAAAAAAAAAAAAAAAAAkgAAAgAkgEgAAAAggggAAEEgggkEAEgEkgEEAAAgkAAkEgAAgAgAkAEkgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAggAAAAAkkkEgAAAkkkAAAAAAAAAAAAAAAAAAAAAAEkkkAAEAAAAEgAAAkAEkEgggEkAgAEkAEAgEgkAkEAgEgkAgAEEEggAEgkAgAAAAAAAAAAAAAAAAAAAAAAAAAEkAkgAAAAEgAAAAAAAEkEAAAAAAAAAAAAAAAAAAAAAAEkkAAAAAAAAEAAAAAkkgAEkAgEAAEgkgkkEAgEAEkAAkgAAAAAAAAgkAkgggAAAAAAAAAAAAAAAAAAAAAAAAAAEgEgAAAAAAAAAAAAEkAAAAAAAAAAAAAAAAAAAAAAAAEkkkEAAEAAkgAAAEAAkEkkEgAEAgEgEgkkEEkEAAAgAAgAAAAAAAAEkEkEAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAAAAAAAAkgkgAAAAAAAAAAAAAAAAAAAAAAAAkgkkEgEEkkAEkAAgEAkEkkAggkEEgAggAgkEAEgAkkAAkAAAAAgEAEEEEggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkgAAAkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkAEgEgkgggkEAAEkkgEkkkEkEkAEAEEAgAkkAgkgkkkggAAAAggEkEAggkkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAkkAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkEgEgAEkkgggEkgkEAgEEEkAAAkEAEkAgEAAkEEAgAEkgAAkgEgAAAAgEgkAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEEkAEEAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAEgggggEEgAEgEkkAkAEkkAgAEkAAkkAEkEEEEkAEAgAkgAAgkAAAAAAgggAkkAAAAAAAAAAAAAAAAAAAAAEAAAAAAAEgAkAAEAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAEgkgEkAggkgAAkggAkAgAkEEEkgAAEEgkAAEEkkAAAAkkEAggkAkgAAgEEggAEkAAAAAAAAAAAAAAAAAAEkkEAEAAAAEkkAAEgAAEgAAAAAAAAAAAAAAAAAEAAAAAAAAEkEAgAAkkAEAEkAgkAEAAkkAgEkAAAEgkkgggEAkEAAEEEgAgkggEAEAAEgEEgkgAAAAAAAAAAAAAAAAAAAgEAAkAAAAkkAAAAAAkkkAAAEgAAAAAAAAAAkkAAAAAAAAEEEEgAEAgEkAAggkgEkgEEEEkEkAAAEgAEEEgkkEAAgEEAAAkAAgEAAAggAEAkEEkgAAAAAAAAAAAAAAAkkAAgkEAAAEkkAAAAAAgAgAAAEAAAAAAAAAAAkgAAAAAAAEEEgggAgAgkAAEgEEEgkEAkEgkkEEgEkkkEgEEgAAEAEEgEggEgkAAgAggkAAkAggAgAAAgEAAAAAAAAAAkgAAgEgAAAEAkAAAAAEgAAAAAAAAAAAAAAAAEAAAAAAAAEEAkggkgAAAAkEEAggkEgAgEAAAkEAgEkkkkkkkAAAAAEggggAgEAAAAAkEkkkgEgEAkEEkkgAAAAAAEgEAkkkAgAgAAAgAAAAAAAAAAAAAEgAAAAAAAAAAgAAAAkAAAEEAkkAAAAAAAEkAAAAggkAAkEEgAkAEkkkkAEgAAAAAAAkgAggEkEAgkkgggkkgkAgkAkkkkgAAkkggAEgkAAgAgkkkkEAAAAAAAAAAAEkAEAEAAAAAAAAAAAAAkkAAAgAAkgAAAAAAAAAEAgEgEEgAAkkkEgAgAkkAEkgAAAAAAAAkAkEkggkAEAEgkgkAEAkAkgkkkAAAkgAkkEgkEgEEEEkEAAAAAAAAAAAAAAkggEgAkAAAAAAAAAAEAgAAgkkAAkAAAEgAAAEAkkEAEAkAAAgEkAgEAEEkgkgAAAAAAEkgAgEgEggAgEkAkkAggAEgEgkEgAAAkAEkkkkgEEAAkgAgAAAAAAAAAAAAgAkkAgAAAAAAAAAAAAAgkkAkAEkgAgAAAAAAgAEAgAAAEgAAAEggAkAEAAkkAAAAAAAAAEggkkEggEgggAkEEkggAAkkkkEkkAEkAkggAAkkAAgkkEEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgAkgkgAEkAAAAAAAEAAAkgAAAAAAAgAAggkgAEAEkkAkAAAAAAAAkAEAgAkAAkkkgAkAgEkAAEggAkkkkkAEgAAEgkkAgEEkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkAAkAAAgEEEAgAAgAAAAgAEAAAAAAEggEkAAkAEEEAAEkAAAAAEAEgkkEkEgAEEkgAAAEAAEAgAgkAEkkAAgAAEggAEAEEgkkkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAEgEEEAgkEAgkggEAEAAAAAggEkAkkEgAEgkgAAkgAAAEEEkggAEkkEEkAggAEAgAgkAkAEgkEkgkkkEAgEEAAAkkggEAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgkAAAkEEkEkAAAkkgAAAgAggkAEgAgkgkgkgAAkgAEgkkEEEkAAkkgEkkggkgAAAAkkkAEkggAAAkEkAAAAAAAAEkkgAAAAAAAAkAkkEkgAkgkEgAAAAAAAAAAAAAggEAggAEEAgAAgEEAEAgAAAAgAAAAAAAkAkAkggggAkkkAgAAEgkAAggkkAkEAkAEAAkgEkEkkAkEAEkkkAAAAAAAAAEEgAAAAAEgkgEgkAAEkEkEgkkkkAAAAAAAEEAAAkgAAAEkkAAEEEkgEgAAgAAAEgAkAAEEEgkAEkEkgAAgEgEkkAkEgAAAAAAAgEAAEkggkkEkkEkkgkAAEEgAAEgAkgkgAAAAggAAgkAgAAAEAgEgAAgkkEgAAAAAgkAAAkkgEgEkkgAggEkAggAEgAAAEgEkAAAAEEkEEkkkkkkkAAEkggkAEEEAEAAEgAAAkAAAEkkEEAAgkggAgAEgkgAgAkAAAAAAAAAAkgkkkgEgkgAkkkgEkkAEgAAAAAEgkkkgEAgEggggggAAAEEEgAAgAAAgEgEAggkgkkkEAkkgAEEgggggEkggAAAEAAEAAAAAAEkggkgAEggggAAAAkkEgAAAAAEkgAAEEgAAEggEEgEkgAgAAAAAAAAAAAgEkkkkkkkgEgAkgggAAAAEEEAEgAAgEAgAEkkgAEEgAAkkEgEAEEAAAgAkgAkgAAAAAgAAkAAAkkkkEkgAAAAAAAgAgkAAAAEgAkAEkkAkggAAAkAEgAAAAAAAAAAAEAAAEkkkkkkkgEAEgEgAgAkEkEEkAAAggAAAkkEAAAkEgkgkkkAggkkAEkggAggAAAgAgkkAgEEkgkAgkkkgAAAAAEgAAAkAAAEEEEgEkkkkkkkkgkgkkgAAAAAAAEAAEkkAkEkkEEkkkEgAkEAAAAAkAAAAAAEAgAggkgEAggAkAkEkAgEEAAEAkgkAAgkEAAAEAgAEgkEAEkkkkAgAAAAAAAgAAAgkgAAEkgEkgAkEkkkkEkEkEEkgAAEkgEkEkgkkkEkkEkEkkAEAgEAAggkAEkAAgAAggAgkggkgEgAEEkAAAEkAAAEAgkAAAAEgggkEkAEEAkEAAAgkkkAAAAAAAAgAAAgkAkAkEEkkAAAEgEkkAAEEkEgkkkkkgEgAgEkggEkEgAkkkgggkkgEEkEkgEkAkAkAAAAEggAggEgkgAAEAgkAEAAAkgEAkgEgEAAAAkAAAAAgkEkAgAEAAAAEAEgAAEAgAEAEgkkgAAAAAAAgEAAAkkkkAkkAAEkgAEAEgAkkkAAkkgkAgEkAkEEAAAAkAEkAEEAEkAAAEAgkAAAkEEAAAgkAEEggEkAAAAgAEgEEggAAAEkEEgkgAAAkgEEAEAAAAEgkkkggkkkggAAAAAEggAAgAEEkgEEAAkEkAAEkgAAAEkkkAgkEAAAkAAEgAAkkkgAEAgAgEggEgAAAAAAEAkAgkEkggAEEkkgAAAAAAAAAAEkEAAAEkAgkAEAggAAEAkAAAgAkkkkkkkkAggAEkkkgAgAkEEAAkAAkAkkkkAAAAAAgkAEkkEEAAAAAAAAAAEEAAEAEEkkAAAAAgEgkAgAEkAEAgEkAggEgggAAAEgkEEggAAAEkEgEEEgkAkAAAEEkgEkkgAEkkkkkkAkgEkkgAAAAAAEAAAEkgEkEkgAAAAEkggAgEAEAAAAEAEgAEAEkkAEEkgAEkkgEAkAEkkkkEgkAEAkEkkgEgkEgAgggkgAAAAAAgAEkAEgAEEAAEgkgAkAAAAkggAkkkkgkkkAkAkEEkkkAkEEAEgAkkkkkAAAEAggEAkAgEAkAAAkAEAAAggggAkgEgkEEEEgEAgAkEAkkAkEAEAAAkgAggAAEkAAAAAAggkEEEEAAAAAkAAgAEkggAAEAAgkAEgAAAAkkkAEAgEAgkkgAAEEEkkkkAAkAEEggEggAAggAkgAgggAkkgAgAkkgEgEkgEEAEgkEEEAAEAEAAAAgEgEkkEkEAAkAEAkEkkgEkkkEAEAAEEEEkgAAAAAAAAAAEEkEkAAAEEgAgkAAAAgkgEEEkkkAAAkEAkAEkAEAAEgAAggkEAgEkkEEAEEAAEAkgEEEgAEkkEAgkAkAEAkkAAkgkkAAkkkkAgEAAgEkgAAkEAEEgEgkkAAAAgAAAAAAAkAgAAAEgkkgAAEkAAAAAAkEAkkgAAAEgEkEkEEAEggggAgAkEkEkAEgkkAAEAgkEgAkgAAgEEAEkAgkkgEAAEkgggkEkkEEEgAgkkkgAEEkkAkkEkEgAAAAAkgAAAAAAEgEkkkkgAgAAAgEkkAAAAAAgkAEgAAEkAkgAgkggAgkkEAkEkkkggAEAgAEkkAEkkAAEEAAEgAkkEEkgAAkkAkAgEgAkkgAAkkkAAkEkgEkAAAkkggAAAAAAAggAAAAAEAAAEkAgEAAAAEgEEAgAAAEEkEkkEAgkkAkkgEkgkAAkgEAggkAAkAAgAEgggEkEAEkEEEgkAggEEkEEkAAkkkkggAAAkAggAAAAAAAAEAAAkAAAAAAAAAAAAEAgAkggAgAAAAgEAAAAAAAAAAEAAkAAEAAAgEAEgkggkkEgAkgEgkAAgEkkkAEAAgEkAAkkEEkAkAkgAkEkAEEgAEgEkkEgEkgEkgkAAAAAAAAAEgAAAAAAAAAAAAAAAgkkAAAAAkAAAAAAkAAAAAAAAAkgkkgAkEkAkAEkEEAkkgEgEkgAEkkgkAAkEgkggEkAEgkgkEEEAkggEEkkgEkAkggkkgkgAgkAAEkAAAAAAAAAEgAAAAAAAAAAAAAAAAAAAEgEkAkkkkkAgkgAAAAAAAAAAAAAkggAAAAgAAgkAAEgEEkEAgEEAgEAgkgggggEgkAEkgAEkgkkkggAgEkkEkgEkkgkkkkkkkAAAAAAAEkEgAggAAkAAEkAAAAAAAEAgkAEAAAAAAAEEgAAAAAAAAAAAEAEgAgAAAAgEgEAAgEgEEAAgAgAkkkkgAEkgEkgkkgEgEEgkAkEAEAEkEAgAkkgkgEkkkkkkgAAgAAAAAggggkEkEEgkgAkAkEAAkkAgEEkEEAkkAEAgAAAAAAAAAEEEEggggggAAAkgkkAgkAgAAAkkkgEkgAgAgAEkkAEkEEEEAEAgggEAEkEEgkkAkEgggAgkkkEEAggEkEAEggggAAAgAgAkkkEAEAAgAAEAEAgkkAgggkkggkAAAAAAEkkAEAkEkggEkAkkkkkkgkkkkkkkgkkkkkkAkkkkkgEgkgEEAgggkkkkEEEkkAAgEAgggEgkEkkkAkAEkkAggEEEkkAkkkggkkgkkgEAgEkAgEAAkggEEEAkEAgggkkEkAkggAkEEgkAEkkggkAAAAEgEAAAgggAkggkAgkEEggkAEgEkAAgkkEEEgAAAEkEAggEEEkkAggAkEEAgkggAEkggAggEkkggEAEEEkAggAkEkAAgAkAggEAAkEgkAkgkAgkgEggAgAEEgEkEgAkEEkAggkggAkEAAEAAgEAkkEEEEgEAggkEEEAgggkgEkgEEkgEEkEkAkAEAEkAkkAkEAAEkkEEEkEAggkEggAkEEAkEAkAgAkEgEkEkkEkgAkkAAAkAgkAgAEgAgkAggkkAEEAAAEEkEAgkkkAEkEkgEkkAggEgAgkkEEAkAkgAAEEkgAgEAggAAAEkkkkgAAEAEkEgggEEkAgkEkkgkAAgEAEEkAgkkggAEEEAAggkEkAEAAEAEEEkEAEgkkgEEAgEgEAkAEEEAEEkAgkEgEAkEEkkgkkAgEAkkEggAkggEEEkgkgkEAkkkkAAEgkAgkgEEgggAEAggAkEAkAEAkAEAAAAgEkkkEEEAAEgkgAAggAgEAkgAgEAgkEkggAkEAkgAEkAkgkAEkgAAkAAAEkEgAkkkggAAkAAkkkkAkAkEgkEEEkkAAEAkgAgEkgAggkgkEkEEAgAEkgEkkgkAggAEEkAAgAgEkAEAkkAkAAEEgkkEAgkkEggkEkgEgAkggEEAEEkAEgkAEAkAkAkEEkAgAAEEkAkAEEEEkgEAAEkEgkgEAAEkgEgAgEEkgAgkkEggggEEAEAgAgAgEkgAEkEgkAkgAEkEgkggkEkAAEEggAkEAkEgEAAAkEAEgggEEgEkggggEAkEgEggAggkkAgAkgEgEEgkkEgEgkEEkAEAkAEgAkggkAEkgEAEEkEEAgEEEAgkEkAkEkkEgAkAgAAgAEEggAEkkkEkgkAkAgEkkEAAEAkEkEEkkAAkEgAAAgEgEEgEkkAgkEEkAEAEAkkkgAAkkgEgEkAEAkkAgAgEEkgAEAkEEkgAEggAgkAkkkEkEgAkggkEAgkgAAgkEkAEEgkEgkEEAgkgkAkkkAAgEgkgEkEAAAgAEEgAkAgAkAgEAEkkEEgggkgEkAEAEgkkEgkEkkEAkgkgkkAEEkEgAgAkkgggkAkgAkEgEgkkEEkEAEAkAAgEAkkgkgAkkkkkkEEEgAAEkEEAEkkgEgAgAkggkEkAEAkgEggAAEEkgAkgAgEkEAkEAEkgEEAEgAkAEgAkkEkAAAkAAAEgggEAEgAkAkAEgEkAgAEAggkAAAgggAgAgkAAEEEAAkAAkEEggEAkgEgEAkAAgkAkgkEgAkkEgEgEkEgEEAkgkgkEgAAEkggkkEEkkAkEEkkgEgAEgkEgkEAgAAAEggkEkAkkggEEkgEEEAAAAkkkggkkkkAkkkEAgkAkEgkEEAgEEgAAgEgkgAkkkkkgEkkEkgkAAkAkgEkkEAEgkkgAEkgkggkgAEkkAggAgAEkEggEkAgAgkggAgAAAAgAEgAkgkkkggggEEkAkkkAgkAEEAgggEAAkEEEEkEgkkAEggkEgEgkgkEggEkggEAAggAEkAgAkkkgkgkEkkgAkgEEggEgEAAkAkAgAAkAkAkEAAAgEkAgAAEAAAEkAAEAkEkAkAAEAgEEAEAkkEEggkgEkkgkkggkAkkgkAkgAkEgEkAkEkEkggkgAAEkggAAAkgAgggkAgkEgEAEgkAEkEEkAEgkggAkgEEAgAgkgEgEEEAEgkEggAgAAAAAAAAkEAAkAggEgkkEkAAgAEgkkgggAAgAAAkgkEEAgkEEEEgggkAAgAEkEAkEkAgkEgkEgkEgkEkgEEkAkkgEkgAEEEgAAAAgAgggggkggAEkAAgEgEAAgEggkkEgAAAEggEEgEgEkEgAEEEAEEEkkEAkkkAkAAggAEEAAkEEkkEEkkkggkgEgAkAgAgAgAggAgkAEAgEkgEkgEggEggAAgAkkkAEAEAgEAkAkgAkAEkgkgAgkgEAAkEkgAAAAAEgkAAAkAEAEkAAAAgAAAkggkEAEAgAEkAggkEEAgEkEEAkEkAAEgEggAkEkkAAEgAkgAAgkkkggAgEggEAEgEkEkEEEggkgEAgAkkgEkgEgAEgkAEgAgAEkAkgAgAAAAEAEgAAEkAEAEEAgAEEkAkkkAggEkkAgkAAkEAgEAgEgAAEEEgkgAkkEAkkEAEAkAEgggkEEgAgkAAggAEEgAgEAEkkEgEEEgEkEggggEAkgEgAkAAEkgAkkkkEAgAAAEAgEkAEAkAEgkEAkAkAEAgAgAgEEkkEkgAEEEgEAEgEEEEkkgAkAEgAEEEgAkkgAgAkkEAAkkAAggkggkAEEAEAgAkEkAAAAEkgAgAEAkAgAgEAkggkEgAEAgEEEEkAAgEkEgEAgAkgEkkkAkAAEEkAAgEgEEEEEkggEgkggEgEAgkgkEkAkkgkAgkEAEAgEgAEAAAAAggkgAEAkEEgkkAggggAgEAgkEAkkggkkkkkAAkAEAkEEkgEggkEAkgEAAkAEkkAEgAkggkAkkgAgEAEAkEgAAkEgkEEEkgEkAAEgAEgEggEkkEgAgkggAgAEkAAAkAAkgAgkEgkgAkAEkEkgkEAkEEEAkEgkgEEgkAEEgkkgkgAAAgAgAggkAgEAAAggkkgAkAAEkEkAEkEAkkAAEEEEAkggkgkEkAgAAEEgggkAgAkkggAAAgAAgkgEkgkEEkkEkEAgkAkEgAgAkAEAkgkEkgEkAEAkggEgEAAAkAkkgkkggkEkkAAAAggAgkAEEgAkkgAgkEAkggEkgkkgEAEkggggkgEEggEAAgEAEkkAAkkEAAgAgkEEAgAEkAAkkkEEEEEEAggEAkgAAgkAAgkgkkEkkkAgkkgAEkEEgEEkEgAAAAgAAEEEAkAkAkkAEgAAkkEkkEAAAAkgEEgEAgkEAAEgAgggkggAkAAkkgAEkEEkEEEgAAgkgAggAkkAEEAAEEEEEkAggkgggkAEAEkkkgAkkAAEgAgkEAgkAkAkAAAkEkkgAAkgkAgkEEkEgkEgEEkEkkgAAAAAEkEAggAEAkEEkEgEAEAEkAEkAAEkgkEkAgggAAkEgAAgEkkEkAAgEAEkEgkgggggkgkAkggkAkEEkkAkEgkgkAEAAgAEgEAgkkgkgEgEgggEEEgkEEkAAgAkEkkkEAAAEggkgAggEkggkkEEAAAAAAAgAAkkkEkkkgAgAgEkAkEggkkAgEAkAkgkAkEAEAEgAAggEAkEEEEgEkEEkgkkAgAAAEgEEkAgEkAkgkgEkEAEgkEgEkAgAEkkEkgAkAkAkEAgkAgEEEEEEkgAAAAAEAAAEkggkkAkgAgEAAggEkkEkkEgEAgggEAAAAgkEkAEgEgEkgAgAkAgEAkAgkgkEkAgkkkEAAEEgAgAgAggkAAggkkEgEAAgEkkkkkkkEEEAkkkAgAAkEkEEkkgAAAAAAkEkkkkkEEkAkAgAAggAggEgAEggAkgggkEEgkAEEgkkEgAEgkEEgAkAkEkgkAgkggEAkEkkkAgkAggggEkEEEgEEgAgEkgEgkEgkkgkgkEkkkkAAEkkkAAAAAAAAAAAEEgkggEEgkkAkAEEAEAgkgAAAEkAgkEkEgEAgAgAEgAAEggEkAEkgAAEkkEAEkAkAgAAkAAAAgkEAEgAggEkEEAEEAAkEEAggAAkgEkkkkEkgEggEkAEkgAAAAAAAAEkkkkkgkkAkkgkgAkAEgEEkgAAAkkgEEgEAEAkAEEkAEgggAkgAAgEkEkgEkEAkEgkEEkkkkkEEAEEkgAkkkEkkkEEEAAAgkggkAkkEgAkkEkgAEkggEgEgAAAAAAAAAgkkgAEEEAAkEkkEgggkAgEAAAAAAAgkkEgkEggAgkEEEEEkEAAkEkEEgAAkEEAgEAEAkkEkkEkEEgEgEAEkkAgkkkEgAAkgEgEAkAkkggkAEkkAkggAAEAEkkEgEAgkkAEAgEggAEkkEkgkkEkAgAAAAAAAAkgAEggEEggEkgkAkAAggkAgkEEkgEEEkEEkAEAkAkEgEEkAEAAgAAkgAEkgAAAAggEgAAEkEAkEAgEkEkgEkkEkAAgAgkkkkgAAAAAgEkkgkEAAEEkgEkEAgAAAAAAAAEkAkAkEAgEEEAAEEkEgkEAkgkggkggkAAAEEEgEkEAAAEEgAEEgkgkAAAkAkkAAAAAAAAAEkEgAggkAAkAAAEkkAEkkEkkgEAAAAEAEkAkkkEkAEkkEkkkAAAAAAAEAgkkEAgEgEEEgEgEAEgEAAAgAAgAEkEgAkAEkgkEgkAEgkggEgAgAgggEkEAgkAAAAAAAAAAAEggkAkEAAAAAAEkkkkkkkEggAEAAkkkAkgkkgkkgAgAEkAEEAAAAAAAAggkkEAkgkEEEAEgAEAkkAgEkkkAAAEkgEgEEEkgAAAEEkgEEAgAgEgggggkkAAAAAAAAAAAAAEkEkAAAAAAAAAAEgkEAkkgkAEkkEkkkkgAkEEgkkgkkgAEAAAAAAAAkEEkgkkkAgAkAEAAEkgEgkEkEAEkgEEEkAgAkEgAgAgEEkgAkkgkEkkAgEEEgAAAAAAAAAAAAAkAAAAAAAAAAAAAAAgAgggAAAkkkkEkgkAEEkkkkAkgAgkEAAAAAAAAAEkkkkAEkAAAAAEgEAEAgkkAEEEgkgEgEgEEAgEEkggkEggkEkAAgAEkAEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgggAEAkggkgAAkEkEAEEAEgEkAEAAAAAAAAAkgEgkkEkAAgEEkAkEEgAAAAkkEkAgEgAgkAEEgAAkEkkEAAkkEAAgkkkAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkEEAAgkEgAAggEkEEkEEggEEgAAAAAAAAAkkAkggEAkgAkgEEkgEgEAAkkEEEAkEgAAkEEAkAkkEgAAkkAEkgEAAEggAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkgkkEkgEAgAEEkgEkEEggkgAAAAAAAAAAAgAEkgAEkgkgkkkkAkAAEEgEEEgAkkAAkAAAEAEEggkgAAAAkgggggkAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEEkEkEkgkEkEAkAEEAEAAAAAAAAAAAAAkEEkgkgEkAAgEgkgEgEgAEgkkkkkkEkAEEgEkEEgkAEkkAgggkAEAgggAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkAkAgkkEkkEkkgAAkkgkgEAAAAAAAAAAAAkkAkkEgEEggkAgAkAggAEkgkkAkkgAgkAAkkEkkEEEAkgkgkAkAkkEgEkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAgkkEkggEgkkkEEgkAkAkAAAAAAAAAAAAkkkkkAAAAkkEAEkkgkAAEAAAAgAEAkgEgkEEkgkggEgAAAggkEgkAgkkEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEkEgEgEEgAEkAkkAAgEggAAAAAAAAAAAAEEAgAgkgEEEgAgAggEgEEEAgAEkEkAEEkkgkEEgEAEEggAgkgggkEkEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgkEAAkAAkAAkgAAAAAAAAAAAAAAAAAAAAEkkEAAAkgEAgkggkEkkEEgEAgEgAAEEEkAgAgggAAkgAkkAkAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAgkgAgggAggkAEEgAgEAkgkkAkgAAAEEkEEEgEEgkggEgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAgkgAAAEAgAkkEEEgEkggAAEggkkAAkkggEAAkgggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkkgkgEggggEgEkAEEEAgAgAkEgkgAgAEkgAkkEkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAggEkgEgkkgkkEEEkkkAEEEkgkAAAEggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAgEkgkgAEAgEAkgAAAkggAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAgEAEkAAkkAEgAgAkgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEkkAEEkAAkkkgkEgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/8QAFREBAQAAAAAAAAAAAAAAAAAAAOD/2gAIAQMBAT8Qv/8Af//EABURAQEAAAAAAAAAAAAAAAAAAADg/9oACAECAQE/EL//AH//xAAtEAEAAgIBAwMEAgMBAQEBAQABABEhMUFRYXEQgZGh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"},2305:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iNDgiCiAgIGhlaWdodD0iNDgiCiAgIHZpZXdCb3g9IjAgMCAxMi43IDEyLjciCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzUiCiAgIHhtbDpzcGFjZT0icHJlc2VydmUiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnMKICAgICBpZD0iZGVmczIiPjxmaWx0ZXIKICAgICAgIHN0eWxlPSJjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM6c1JHQjsiCiAgICAgICBpZD0iZmlsdGVyMTM0NSIKICAgICAgIHg9Ii0wLjIzMTQ0MzgiCiAgICAgICB5PSItMC4yMzE0NDM4IgogICAgICAgd2lkdGg9IjEuNDYyODg3NiIKICAgICAgIGhlaWdodD0iMS40NjI4ODc2Ij48ZmVGbG9vZAogICAgICAgICBmbG9vZC1vcGFjaXR5PSIwLjQ5ODAzOSIKICAgICAgICAgZmxvb2QtY29sb3I9InJnYigwLDAsMCkiCiAgICAgICAgIHJlc3VsdD0iZmxvb2QiCiAgICAgICAgIGlkPSJmZUZsb29kMTMzNSIgLz48ZmVDb21wb3NpdGUKICAgICAgICAgaW49ImZsb29kIgogICAgICAgICBpbjI9IlNvdXJjZUdyYXBoaWMiCiAgICAgICAgIG9wZXJhdG9yPSJpbiIKICAgICAgICAgcmVzdWx0PSJjb21wb3NpdGUxIgogICAgICAgICBpZD0iZmVDb21wb3NpdGUxMzM3IiAvPjxmZUdhdXNzaWFuQmx1cgogICAgICAgICBpbj0iY29tcG9zaXRlMSIKICAgICAgICAgc3RkRGV2aWF0aW9uPSIwLjUiCiAgICAgICAgIHJlc3VsdD0iYmx1ciIKICAgICAgICAgaWQ9ImZlR2F1c3NpYW5CbHVyMTMzOSIgLz48ZmVPZmZzZXQKICAgICAgICAgZHg9IjAiCiAgICAgICAgIGR5PSIwIgogICAgICAgICByZXN1bHQ9Im9mZnNldCIKICAgICAgICAgaWQ9ImZlT2Zmc2V0MTM0MSIgLz48ZmVDb21wb3NpdGUKICAgICAgICAgaW49IlNvdXJjZUdyYXBoaWMiCiAgICAgICAgIGluMj0ib2Zmc2V0IgogICAgICAgICBvcGVyYXRvcj0ib3ZlciIKICAgICAgICAgcmVzdWx0PSJjb21wb3NpdGUyIgogICAgICAgICBpZD0iZmVDb21wb3NpdGUxMzQzIiAvPjwvZmlsdGVyPjxmaWx0ZXIKICAgICAgIHN0eWxlPSJjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM6c1JHQjsiCiAgICAgICBpZD0iZmlsdGVyMTM4OSIKICAgICAgIHg9Ii0wLjE5MDM0NTU2IgogICAgICAgeT0iLTAuMTkwMzQ1NTYiCiAgICAgICB3aWR0aD0iMS4zODA2OTExIgogICAgICAgaGVpZ2h0PSIxLjM4MDY5MTEiPjxmZUZsb29kCiAgICAgICAgIGZsb29kLW9wYWNpdHk9IjAuNDk4MDM5IgogICAgICAgICBmbG9vZC1jb2xvcj0icmdiKDAsMCwwKSIKICAgICAgICAgcmVzdWx0PSJmbG9vZCIKICAgICAgICAgaWQ9ImZlRmxvb2QxMzc5IiAvPjxmZUNvbXBvc2l0ZQogICAgICAgICBpbj0iZmxvb2QiCiAgICAgICAgIGluMj0iU291cmNlR3JhcGhpYyIKICAgICAgICAgb3BlcmF0b3I9ImluIgogICAgICAgICByZXN1bHQ9ImNvbXBvc2l0ZTEiCiAgICAgICAgIGlkPSJmZUNvbXBvc2l0ZTEzODEiIC8+PGZlR2F1c3NpYW5CbHVyCiAgICAgICAgIGluPSJjb21wb3NpdGUxIgogICAgICAgICBzdGREZXZpYXRpb249IjAuNSIKICAgICAgICAgcmVzdWx0PSJibHVyIgogICAgICAgICBpZD0iZmVHYXVzc2lhbkJsdXIxMzgzIiAvPjxmZU9mZnNldAogICAgICAgICBkeD0iMCIKICAgICAgICAgZHk9IjAiCiAgICAgICAgIHJlc3VsdD0ib2Zmc2V0IgogICAgICAgICBpZD0iZmVPZmZzZXQxMzg1IiAvPjxmZUNvbXBvc2l0ZQogICAgICAgICBpbj0iU291cmNlR3JhcGhpYyIKICAgICAgICAgaW4yPSJvZmZzZXQiCiAgICAgICAgIG9wZXJhdG9yPSJvdmVyIgogICAgICAgICByZXN1bHQ9ImNvbXBvc2l0ZTIiCiAgICAgICAgIGlkPSJmZUNvbXBvc2l0ZTEzODciIC8+PC9maWx0ZXI+PC9kZWZzPjxnCiAgICAgaWQ9ImxheWVyMSI+PHBhdGgKICAgICAgIHN0eWxlPSJmaWxsOiNiZjY3NGM7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjAuNjYxNDU4O3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjE7ZmlsdGVyOnVybCgjZmlsdGVyMTM4OSkiCiAgICAgICBpZD0icGF0aDYzNDIiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgtMC4yMzAxOTA4OSwtMC44NTkwOTM3MywwLjg1OTA5MjQ2LC0wLjIzMDE5NTY0LDAuOTYxNzMwODMsMC43NjEzNjk0MykiCiAgICAgICBkPSJNIC0xLjI1Nzg5MjYsMS45MTE3NjY4IEEgOC4wNDE4NDI1LDguMDQxODQyNSAwIDAgMSAtOS4yOTk3MzUxLDkuOTUzNjA5MiBWIDEuOTExNzY2OCBaIiAvPjxjaXJjbGUKICAgICAgIHN0eWxlPSJmaWxsOiNiZTYyMWM7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjAuODg3ODc7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MTtmaWx0ZXI6dXJsKCNmaWx0ZXIxMzQ1KSIKICAgICAgIGlkPSJwYXRoODQ2IgogICAgICAgY3g9IjcuOTI3NzA3MiIKICAgICAgIGN5PSI1LjQ3NTg1MjUiCiAgICAgICByPSIzLjU1MTQ3NzciCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjc3MDI0MTc3LDAuNDQ0Njk5MzMsLTAuNDQ0Njk5MzMsMC43NzAyNDE3NywwLjk2MTczMDgzLDAuNzYxMzY5NDMpIiAvPjxnCiAgICAgICBpZD0iZzg5MiIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDEuMTc4NDYzOSwwLDAsMS4xNzg0NjM5LC0wLjgzNjc2ODYyLC0xLjY1OTk1MjIpIj48cGF0aAogICAgICAgICBkPSJNIDMuNTk5NjY3OCw5LjQxMDYyNTIgSCA1Ljc4MjQ4MDMgViA5LjgwNzUwMDEgSCAzLjU5OTY2NzggWiIKICAgICAgICAgaWQ9InBhdGgyNTQiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMjY0NTgzIiAvPjxwYXRoCiAgICAgICAgIGQ9Ik0gNC4xMjgzMDUzLDguMjcwMDA2NCAzLjgzMDExOTksOC4wMDQ4OTM5IDQuMDk1MjMyNCw3LjcwNjcwODUgMy43OTg2MzQ1LDcuNDQyOTE4OSAzLjUzMzUyMiw3Ljc0MTEwNDMgMy4yMzUzMzY2LDcuNDc1OTkxOCAyLjk3MTU0Nyw3Ljc3MjU4OTggMy4yNjk3MzI0LDguMDM3NzAyMyAzLjAwNDYxOTksOC4zMzU4ODc3IDMuMzAxMjE3OCw4LjU5OTY3NzIgMy41NjYzMzAzLDguMzAxNDkxOCAzLjg2NDUxNTcsOC41NjY2MDQzIFoiCiAgICAgICAgIGlkPSJwYXRoMjU2IgogICAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjI2NDU4MyIgLz48cGF0aAogICAgICAgICBkPSJNIDYuMjc4MDQ0OSw3LjcwNjk3MzEgNS45ODE0NDcsNy40NDMxODM1IDUuNzE2MzM0NSw3Ljc0MTM2ODkgNS40MTgxNDkxLDcuNDc2MjU2NCA1LjE1NDM1OTUsNy43NzI4NTQzIDUuNDUyNTQ0OSw4LjAzNzk2NjggNS4xODc0MzI0LDguMzM2MTUyMiA1LjQ4NDAzMDMsOC41OTk5NDE4IDUuNzQ5MTQyOCw4LjMwMTc1NjQgNi4wNDczMjgyLDguNTY2ODY4OSA2LjMxMTExNzgsOC4yNzAyNzEgNi4wMTI5MzI0LDguMDA1MTU4NSBaIgogICAgICAgICBpZD0icGF0aDI1OCIKICAgICAgICAgc3R5bGU9ImZpbGw6I2ZmZmZmZjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4yNjQ1ODMiIC8+PC9nPjwvZz48L3N2Zz4K"},6883:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjQ4IgogICBoZWlnaHQ9IjQ4IgogICB2aWV3Qm94PSIwIDAgNDggNDgiCiAgIHZlcnNpb249IjEuMSIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aAogICAgIGQ9Im0gOC4wMjIyOTI0LDcuODU5Nzk3NyBhIDIyLjU5NDEwNywyMi41OTQxMDcgMCAwIDEgMzEuOTU1NTYzNiwwLjAwMjcgTCAyNC4wMDE0MDksMjMuODM4OTE2IFoiCiAgICAgc3R5bGU9ImZpbGw6I2JmMzYwYztmaWxsLW9wYWNpdHk6MTtzdHJva2U6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Mi41MDAwMztzdHJva2UtbWl0ZXJsaW1pdDo0O3N0cm9rZS1kYXNoYXJyYXk6bm9uZTtzdHJva2Utb3BhY2l0eToxIiAvPgogIDxjaXJjbGUKICAgICBjeD0iMjQiCiAgICAgY3k9IjI0IgogICAgIHI9IjkuOTc3NzU2NSIKICAgICBzdHlsZT0iZmlsbDojZmY2ZjAwO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTojZmZmZmZmO3N0cm9rZS13aWR0aDoyLjQ5NDQ5O3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjEiIC8+Cjwvc3ZnPgo="},270:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjQ4IgogICBoZWlnaHQ9IjQ4IgogICB2aWV3Qm94PSIwIDAgMTIuNyAxMi43IgogICB2ZXJzaW9uPSIxLjEiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczEiIC8+CiAgPHBhdGgKICAgICBkPSJNLTMuMDA3LS4wMDVhNS45NzggNS45NzggMCAwIDEtNS45NzkgNS45NzhWLS4wMDV6IgogICAgIHN0eWxlPSJmaWxsOiMxYTIzN2U7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiNmZmY7c3Ryb2tlLXdpZHRoOjAuNjYxNDU4O3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjEiCiAgICAgdHJhbnNmb3JtPSJyb3RhdGUoLTEzNSkiLz4KICA8Y2lyY2xlCiAgICAgY3g9IjYuMzUiCiAgICAgY3k9IjYuNTQ1IgogICAgIHI9IjIuNjQiCiAgICAgc3R5bGU9ImZpbGw6IzFlODhlNTtmaWxsLW9wYWNpdHk6MTtzdHJva2U6I2ZmZjtzdHJva2Utd2lkdGg6MC42NjAwMjc7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MSIgLz4KPC9zdmc+Cg=="},1760:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMjQwbW0iCiAgIGhlaWdodD0iMjM5Ljk5ODY5bW0iCiAgIHZpZXdCb3g9IjAgMCAyNDAgMjM5Ljk5ODY5IgogICBpZD0ic3ZnNjc0MyIKICAgdmVyc2lvbj0iMS4xIgogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxIiAvPgogIDxnCiAgICAgaWQ9ImxheWVyMSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzAsLTI3LjAwMDY1NikiPgogICAgPGcKICAgICAgIGlkPSJnNzQyNiIKICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyMi4xNDIsLTUzLjk3MjkwNikiPgogICAgICA8cGF0aAogICAgICAgICBzdHlsZT0iZGlzcGxheTppbmxpbmU7ZmlsbDojNzZjNTUxO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDozLjYxNTMyIgogICAgICAgICBpZD0icGF0aDMzNDQ5IgogICAgICAgICBkPSJtIC04MS4wNjMwOTUsMjA4Ljk0NjA5IGMgLTExLjkwNjMzOSw5LjkyNDIxIC0yNy4xOTQ4ODUsMTUuODk4NyAtNDMuODYwNjM1LDE1Ljg5ODcgLTQuOTU4NTQsMCAtOS43ODcyOCwtMC41NTE1OCAtMTQuNDUwNTksLTEuNTU1MDQgbCAtNC43OTg0Miw1Ljg0NDYgYyAtMTAuNjY0NDksLTIuODU3MzYgLTIwLjM4NDI5LC03Ljk0MDQzIC0yOC42MzI2LC0xNC43NDU3OCBsIC0xMi44OTU1OSwxMi45MjIxMiAxLjU4MTc3LDkuNTQzNDcgLTQ3Ljk2MzQ3LDQ3Ljk4OTY1IDQuNjM4MjcsMS43Njg1IDQ1LjA0MDMyLC0xNy4xNTY1OCA0NS4wNDAyLDE3LjE1NjU4IDQ1LjA0MDMxMiwtMTcuMTU2NTggMTcuMTU4NTQ0LC00NS4wMzk3NiB6IiAvPgogICAgICA8cGF0aAogICAgICAgICBkPSJtIC0yNzIuNDg0OTUsODkuMjk0NjI2IDE3LjE1ODUsNDUuMDQwMjc0IC0xNy4xNTg1LDQ1LjAzOTkzIDE3LjE1ODUsNDUuMDM5NzIgLTE3LjE1ODUsNDUuMDM5NzcgMTAuNTM2MzQsNC4wMjI2NyA1Ny4yMzg1LC01Ny4yMTEwMiAxMC4yNjc2NCwxLjU4MTY5IDEyLjQ2NjczLC0xMi40NjY2OSBjIC03LjM1NTE5LC04LjUyMjIxIC0xMi44NjE3MywtMTguNjkwMiAtMTUuODcwMjcsLTI5LjkyMDMyIGwgNS44NDQ2LC00Ljc5ODQyIGMgLTEuMDA1MzEsLTQuNjYzMjMgLTEuNTU1MDMsLTkuNDkxODkgLTEuNTU1MDMsLTE0LjQ1MDQ0IDAsLTI0Ljc2OTg0IDEzLjIxMDQzLC00Ni41MzQ3MiAzMi45NDg5MywtNTguNjA2NTM0IGwgLTIxLjc5NjkzLC04LjMxMDYzIC00NS4wNDAxOSwxNy4xNTg1NDQgeiIKICAgICAgICAgaWQ9InBhdGgzMzQ0NyIKICAgICAgICAgc3R5bGU9ImRpc3BsYXk6aW5saW5lO2ZpbGw6Izc2YzU1MTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6My42MTUzMiIgLz4KICAgICAgPHBhdGgKICAgICAgICAgc3R5bGU9ImRpc3BsYXk6aW5saW5lO2ZpbGw6IzU5YTMzNjtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6My42MTUzMiIKICAgICAgICAgaWQ9InBhdGgzMzQ1MSIKICAgICAgICAgZD0ibSAtODEuMDYzMDk1LDIwOC45NDYwOSBjIC0xMS45MDYzMzksOS45MjQyMSAtMjcuMTk0ODg1LDE1Ljg5ODcgLTQzLjg2MDYzNSwxNS44OTg3IC00Ljk1ODU0LDAgLTkuNzg3MjgsLTAuNTUxNTggLTE0LjQ1MDU5LC0xLjU1NTA0IGwgLTQuNzk4NDIsNS44NDQ2IC0yOC42Nzc0NCwtMTUuMTEyMjggLTEyLjg1MDc1LDEzLjI4ODYyIDEuNTgxNzcsOS41NDM0NyA0Ni44NTI4NCw3LjA1Nzk5IC0wLjA5ODIsNDIuNzAwMTYgNDUuMDQwMzEzLC0xNy4xNTY1OCAxNy4xNTg1NDQsLTQ1LjAzOTc2IHoiIC8+CiAgICAgIDxlbGxpcHNlCiAgICAgICAgIHN0eWxlPSJvcGFjaXR5OjE7ZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxMi43MDQ4O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1kYXNob2Zmc2V0OjA7c3Ryb2tlLW9wYWNpdHk6MTttYXJrZXI6bm9uZSIKICAgICAgICAgaWQ9ImVsbGlwc2UzMzQ1MyIKICAgICAgICAgY3g9Ii0xMjIuODMxNjUiCiAgICAgICAgIGN5PSIxNTUuNzA5NTUiCiAgICAgICAgIHJ4PSI1OS44MDE5MjkiCiAgICAgICAgIHJ5PSI2MC45MjkxOTkiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIHN0eWxlPSJvcGFjaXR5OjE7ZmlsbDojY2NjY2NjO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxMi43MDQ4O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1kYXNob2Zmc2V0OjA7c3Ryb2tlLW9wYWNpdHk6MTttYXJrZXI6bm9uZSIKICAgICAgICAgZD0ibSAtNzAuODY3NTQzLDE3OS43NzEyOCBjIC00LjAyMTYxNSwtNjYuNzcwOTQgLTcwLjE4MjM2NywtODMuMzExMTQyIC0xMTAuNDk5NTY3LC00NS43NzAwNCAyMS4wMzY3NywtMjguNTY3MDkgNDguMDUyNzksLTQ2LjA0NTE5NyA3OC41NjYzOCwtMzMuNDA2MDIgMzAuNTEzNjIsMTIuNjM5MTMgNDEuNzk3NzkzLDQ1Ljk4MTczIDMxLjkzMzE4Nyw3OS4xNzYwNiB6IgogICAgICAgICBpZD0icGF0aDMzNDU1IiAvPgogICAgICA8cGF0aAogICAgICAgICBpZD0icGF0aDMzNDU3IgogICAgICAgICBkPSJtIC03My4zOTU1NzUsMTAyLjIyNzI2IGMgLTI4LjMzODE4NSwtMjguMzM4MjY0IC03NC4yODM2NjUsLTI4LjMzODI2NCAtMTAyLjYyMTg5NSwwIC0xNy45Mzc3OSwxNy45Mzc3NiAtMjQuNDg1MjMsNDIuOTEzMjcgLTE5LjcxNDEzLDY2LjAyODgzIGwgLTExLjI3NDg1LDguMTY5MzcgYyA1LjEzNDc3LDEzLjYxNzU2IDEyLjEzMTcsMjEuODU3NCAxNi45MTI0MSwyNi4yOTYzIGwgLTEwLjIyODM5LDEwLjIyODM0IGggLTEwLjgwMjUyIGwgLTgxLjAxNzA1LDgxLjAxNjU0IDI3LjAwNTgzLDI3LjAwNTYxIDgxLjAxNzAxLC04MS4wMTY4MyB2IC0xMC44MDIyNSBsIDEwLjE5NDY0LC0xMC4xOTQyNSBjIDQuNTYxNjIsNC43NTI0NCAxMi42OTk5NywxMS4zODEzOCAyNS43NTY4NiwxNi4zMDQ2OSBsIDcuODY1NDMsLTEwLjkwMzg2IGMgMjMuMzU4NTgsNS4xMjE5NyA0OC43NDIyNDUsLTEuMzQ3MDEgNjYuOTA2NDk4LC0xOS41MTE1IDI4LjMzODM4NiwtMjguMzM3MzIgMjguMzM4MTksLTc0LjI4Mjc2IDEuNTdlLTQsLTEwMi42MjA5OSB6IG0gLTEyLjk2MjgzNSwxMi45NjI5NiBjIDIxLjE3OTA5NSwyMS4xNzkyMSAyMS4xNzkwOTUsNTUuNTE2ODUgMCw3Ni42OTU3OSAtMjEuMTc5MDIsMjEuMTc4OTcgLTU1LjUxNzIxLDIxLjE3ODk3IC03Ni42OTYzLDAgLTIxLjE3ODk4LC0yMS4xNzg5NCAtMjEuMTc4OTgsLTU1LjUxNjU4IDAsLTc2LjY5NTc5IDIxLjE3OTI5LC0yMS4xNzkyMTYgNTUuNTE3MjgsLTIxLjE3OTIxNiA3Ni42OTYzLDAgeiIKICAgICAgICAgc3R5bGU9ImNvbG9yOiMwMDAwMDA7ZGlzcGxheTppbmxpbmU7b3ZlcmZsb3c6dmlzaWJsZTt2aXNpYmlsaXR5OnZpc2libGU7ZmlsbDojMmYyZjJmO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDo3Ljc2MDU5O21hcmtlcjpub25lO2VuYWJsZS1iYWNrZ3JvdW5kOmFjY3VtdWxhdGUiIC8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4K"},5940:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNC4wLjIsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYWxxdWVfMSIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIzNDMuMjU3NTdtbSIgaGVpZ2h0PSIzNDMuMjU3NTdtbSIgdmlld0JveD0iMCAwIDEyOTcuMzUxNSAxMjk3LjM1MTMiIHhtbDpzcGFjZT0icHJlc2VydmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIiB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPjxtZXRhZGF0YSBpZD0ibWV0YWRhdGExMTgiPjxyZGY6UkRGPjxjYzpXb3JrIHJkZjphYm91dD0iIj48ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD48ZGM6dHlwZSByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIi8+PC9jYzpXb3JrPjwvcmRmOlJERj48L21ldGFkYXRhPjxkZWZzIGlkPSJkZWZzNzIiPjxyZWN0IHg9IjExNTAuMzg0MyIgeT0iMjI5Mi44MTYyIiB3aWR0aD0iMjEwNy44ODc5IiBoZWlnaHQ9IjcwMS44ODcxNSIgaWQ9InJlY3QxNDE4MjMiLz48cmVjdCB4PSI0MTEuODgyNjkiIHk9IjEyNjEuNjEwOCIgd2lkdGg9IjgxNS4zNDY2OCIgaGVpZ2h0PSIxODEuOTI5MTEiIGlkPSJyZWN0NjY3NzUiLz48cmVjdCB4PSIyNTMuMDIwMDgiIHk9IjEyMTMuMDM1MiIgd2lkdGg9IjIyMDkuNzE5NyIgaGVpZ2h0PSI1ODMuNjU3NjUiIGlkPSJyZWN0NjAyNzkiLz48cmVjdCB4PSIxMTUwLjM4NDMiIHk9IjIyOTIuODE2MiIgd2lkdGg9IjI1NTEuMDA4MSIgaGVpZ2h0PSI3MDEuMzkxMzYiIGlkPSJyZWN0MTQxODIzLTEiLz48bGluZWFyR3JhZGllbnQgeTI9IjYyLjI4ODYwMSIgeDI9IjI0OC42OTE4IiB5MT0iMjMxLjcxMTQiIHgxPSIzNDYuNTA4MjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoNi42MzI2NzYxLDAsMCw2LjYzMjY3NjEsLTEyMjEuNDA3OSwtNzEzLjY0NjY3KSI+CgkJPHN0b3AgaWQ9InN0b3A0IiBzdHlsZT0ic3RvcC1jb2xvcjojOEYyQTg1IiBvZmZzZXQ9IjAiLz4KCQk8c3RvcCBpZD0ic3RvcDYiIHN0eWxlPSJzdG9wLWNvbG9yOiMyNTcwQjYiIG9mZnNldD0iMSIvPgoJPC9saW5lYXJHcmFkaWVudD48L2RlZnM+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgaWQ9InN0eWxlMiI+Cgkuc3Qwe2ZpbGw6dXJsKCNTVkdJRF8xXyk7fQoJLnN0MXtmaWxsOiNGRkZGRkY7fQoJLnN0MntkaXNwbGF5Om5vbmU7ZmlsbDpub25lO3N0cm9rZTojRTYyMDU0O3N0cm9rZS13aWR0aDo3LjU7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fQo8L3N0eWxlPgoKPHRleHQgeT0iLTIyNDguODE4OCIgc3R5bGU9ImZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXNpemU6NDBweDtsaW5lLWhlaWdodDoxMjUlO2ZvbnQtZmFtaWx5OlNhbnM7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7d2hpdGUtc3BhY2U6cHJlO3NoYXBlLWluc2lkZTp1cmwoI3JlY3Q2MDI3OSk7ZGlzcGxheTppbmxpbmU7ZmlsbDojMDAwMDAwO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxcHg7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlLW9wYWNpdHk6MSIgaWQ9InRleHQ2MDI3NyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdHJhbnNmb3JtPSJtYXRyaXgoMC45OTk5OTg4OSwwLDAsMC45OTk5OTg4OSwtMTY0LjcxOTkxLC0xNjUuMTg0NjcpIi8+PHRleHQgeT0iLTQzMjQuMTkzNCIgeD0iMzA0LjA2ODE1IiBzdHlsZT0iZm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc2l6ZTo4OS44MDU4cHg7bGluZS1oZWlnaHQ6MjAwJTtmb250LWZhbWlseTpTYW5zO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O3doaXRlLXNwYWNlOnByZTtzaGFwZS1pbnNpZGU6dXJsKCNyZWN0NjY3NzUpO2Rpc3BsYXk6aW5saW5lO2ZpbGw6IzAwMDAwMDtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6Mi4yNDUxNXB4O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1vcGFjaXR5OjEiIGlkPSJ0ZXh0NjY3NzMiIHhtbDpzcGFjZT0icHJlc2VydmUiIHRyYW5zZm9ybT0ibWF0cml4KDAuOTk5OTk4ODksMCwwLDAuOTk5OTk4ODksLTE2NC43MTk5MSwtMTY1LjE4NDY3KSIvPjx0ZXh0IHk9Ii0yMjQ4LjUxNzMiIHg9Ii0xMjEuNjY4NjkiIHN0eWxlPSJmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjQwcHg7bGluZS1oZWlnaHQ6MDtmb250LWZhbWlseTpTYW5zO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O3doaXRlLXNwYWNlOnByZTtzaGFwZS1pbnNpZGU6dXJsKCNyZWN0MTQxODIzKTtkaXNwbGF5OmlubGluZTtmaWxsOiMwMDAwMDA7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjFweDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2Utb3BhY2l0eToxIiBpZD0idGV4dDE0MTgyMSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdHJhbnNmb3JtPSJtYXRyaXgoMC45OTk5OTg4OSwwLDAsMC45OTk5OTg4OSwtMTY0LjcxOTkxLC0xNjUuMTg0NjcpIi8+PHRleHQgeT0iLTMxODEuMTczMSIgeD0iLTE1OC44Mzk4NCIgc3R5bGU9ImZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXNpemU6NDBweDtsaW5lLWhlaWdodDowO2ZvbnQtZmFtaWx5OlNhbnM7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7d2hpdGUtc3BhY2U6cHJlO3NoYXBlLWluc2lkZTp1cmwoI3JlY3QxNDE4MjMtMSk7ZGlzcGxheTppbmxpbmU7ZmlsbDojMDAwMDAwO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxcHg7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlLW9wYWNpdHk6MSIgaWQ9InRleHQxNDE4MjEtMCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdHJhbnNmb3JtPSJtYXRyaXgoMC45OTk5OTg4OSwwLDAsMC45OTk5OTg4OSwtMTY0LjcxOTkxLC0xNjUuMTg0NjcpIi8+PHBhdGggc3R5bGU9ImRpc3BsYXk6bm9uZTtmaWxsOm5vbmU7c3Ryb2tlOiNlNjIwNTQ7c3Ryb2tlLXdpZHRoOjQ5Ljc0NTE7c3Ryb2tlLW1pdGVybGltaXQ6MTAiIGlkPSJwYXRoNDkiIGQ9Im0gMTA2NS44NzEsNTAzLjQyMDExIGMgLTE5LjIzNDcsMCAtMzUuMTUzMSwtMTUuOTE4NDIgLTM1LjE1MzEsLTM1LjE1MzE4IFYgMzM0LjI4Njg3IEggODcwLjg3MDMyIGMgLTE5LjIzNDc2LDAgLTM1LjE1MzE5LC0xNS45MTg0MiAtMzUuMTUzMTksLTM1LjE1MzE4IDAsLTE5LjIzNDc2IDE1LjkxODQzLC0zNS4xNTMxOSAzNS4xNTMxOSwtMzUuMTUzMTkgSCAxMDY1Ljg3MSBjIDE5LjIzNDgsMCAzNS4xNTMyLDE1LjkxODQzIDM1LjE1MzIsMzUuMTUzMTkgdiAxNjkuMTMzMjQgYyAwLjY2MzMsMTkuMjM0NzYgLTE1LjI1NTEsMzUuMTUzMTggLTM1LjE1MzIsMzUuMTUzMTggeiIgY2xhc3M9InN0MiIvPjxwYXRoIHN0eWxlPSJkaXNwbGF5Om5vbmU7ZmlsbDpub25lO3N0cm9rZTojZTYyMDU0O3N0cm9rZS13aWR0aDo0OS43NDUxO3N0cm9rZS1taXRlcmxpbWl0OjEwIiBpZD0icGF0aDUzIiBkPSJNIDQyNi40ODEwMiwxMDMyLjcwNzcgSCAyMzEuNDgwMzQgYyAtMTkuMjM0NzYsMCAtMzUuMTUzMTgsLTE1LjkxODUgLTM1LjE1MzE4LC0zNS4xNTMyMiBWIDgyOC40MjEyNCBjIDAsLTE5LjIzNDc2IDE1LjkxODQyLC0zNS4xNTMxOCAzNS4xNTMxOCwtMzUuMTUzMTggMTkuMjM0NzYsMCAzNS4xNTMxOCwxNS45MTg0MiAzNS4xNTMxOCwzNS4xNTMxOCB2IDEzMy4zMTY3OSBoIDE1OS44NDc1IGMgMTkuMjM0NzYsMCAzNS4xNTMxOCwxNS45MTg0MiAzNS4xNTMxOCwzNS4xNTMxOCAwLDE5LjIzNDc5IC0xNS4yNTUxNSwzNS44MTY0OSAtMzUuMTUzMTgsMzUuODE2NDkgeiIgY2xhc3M9InN0MiIvPjxwYXRoIHN0eWxlPSJkaXNwbGF5Om5vbmU7ZmlsbDpub25lO3N0cm9rZTojZTYyMDU0O3N0cm9rZS13aWR0aDo0OS43NDUxO3N0cm9rZS1taXRlcmxpbWl0OjEwIiBpZD0icGF0aDU3IiBkPSJtIDIzMS40ODAzNCw1MDMuNDIwMTEgYyAtMTkuMjM0NzYsMCAtMzUuMTUzMTgsLTE1LjkxODQyIC0zNS4xNTMxOCwtMzUuMTUzMTggViAyOTkuMTMzNjkgYyAwLC0xOS4yMzQ3NiAxNS45MTg0MiwtMzUuMTUzMTkgMzUuMTUzMTgsLTM1LjE1MzE5IGggMTk1LjAwMDY4IGMgMTkuMjM0NzYsMCAzNS4xNTMxOCwxNS45MTg0MyAzNS4xNTMxOCwzNS4xNTMxOSAwLDE5LjIzNDc2IC0xNS45MTg0MiwzNS4xNTMxOCAtMzUuMTUzMTgsMzUuMTUzMTggaCAtMTU5Ljg0NzUgdiAxMzMuMzE2NzkgYyAwLjY2MzI3LDE5Ljg5ODAzIC0xNS4yNTUxNSwzNS44MTY0NSAtMzUuMTUzMTgsMzUuODE2NDUgeiIgY2xhc3M9InN0MiIvPjxwYXRoIHN0eWxlPSJkaXNwbGF5Om5vbmU7ZmlsbDpub25lO3N0cm9rZTojZTYyMDU0O3N0cm9rZS13aWR0aDo0OS43NDUxO3N0cm9rZS1taXRlcmxpbWl0OjEwIiBpZD0icGF0aDYxIiBkPSJNIDEwNjUuODcxLDEwMzIuNzA3NyBIIDg3MC44NzAzMiBjIC0xOS4yMzQ3NiwwIC0zNS4xNTMxOSwtMTUuOTE4NSAtMzUuMTUzMTksLTM1LjE1MzIyIDAsLTE5LjIzNDc2IDE1LjkxODQzLC0zNS4xNTMxOCAzNS4xNTMxOSwtMzUuMTUzMTggSCAxMDMwLjcxNzkgViA4MjkuMDg0NTEgYyAwLC0xOS4yMzQ3NiAxNS45MTg0LC0zNS4xNTMxOSAzNS4xNTMxLC0zNS4xNTMxOSAxOS4yMzQ4LDAgMzUuMTUzMiwxNS45MTg0MyAzNS4xNTMyLDM1LjE1MzE5IHYgMTY5LjEzMzI0IGMgMC42NjMzLDE4LjU3MTQ1IC0xNS4yNTUxLDM0LjQ4OTk1IC0zNS4xNTMyLDM0LjQ4OTk1IHoiIGNsYXNzPSJzdDIiLz48ZyBpZD0iZzEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDMuODAwODQsMzg3LjMxOSkiPjxjaXJjbGUgc3R5bGU9ImZpbGw6dXJsKCNTVkdJRF8xXyk7c3Ryb2tlLXdpZHRoOjYuNjMyNjgiIGlkPSJjaXJjbGU5IiByPSI2NDguNjc1NzIiIGN5PSIyNjEuMzU2NzIiIGN4PSI3NTIuNDc2NTYiIGNsYXNzPSJzdDAiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDExIiBkPSJtIDQ2NS4yODE2MywxOTkuNjcyODMgYyAtMC42NjMyNywwIC0xLjMyNjUzLDAgLTEuOTg5OCwwIGwgLTM2LjQ3OTcyLC0xMC42MTIyOCBjIC0yLjY1MzA3LC0wLjY2MzI3IC00LjY0Mjg3LC0zLjMxNjM0IC00LjY0Mjg3LC02LjYzMjY4IHYgLTQ5LjA4MTggYyAwLC0xLjk4OTggMS4zMjY1MywtMy45Nzk2MSAyLjY1MzA3LC01LjMwNjE0IDEuOTg5OCwtMS4zMjY1NCAzLjk3OTYsLTEuMzI2NTQgNS45Njk0MSwtMC42NjMyNyBsIDM2LjQ3OTcyLDEzLjI2NTM1IGMgMi42NTMwNywwLjY2MzI3IDQuNjQyODcsMy4zMTYzNCA0LjY0Mjg3LDUuOTY5NDEgdiA0Ni40Mjg3MyBjIDAsMS45ODk4MSAtMC42NjMyNywzLjk3OTYxIC0yLjY1MzA3LDUuMzA2MTQgLTEuMzI2NTQsMC42NjMyNyAtMi42NTMwNywxLjMyNjU0IC0zLjk3OTYxLDEuMzI2NTQgeiBtIC0yOS44NDcwNCwtMjIuNTUxMSAyMy4yMTQzNyw2LjYzMjY4IHYgLTMzLjE2MzM4IGwgLTIzLjIxNDM3LC04LjYyMjQ4IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDEzIiBkPSJtIDQ2NS4yODE2MywyOTIuNTMwMjkgYyAtMC42NjMyNywwIC0wLjY2MzI3LDAgLTEuMzI2NTMsMCBsIC0zNi40Nzk3MiwtNy45NTkyMSBjIC0zLjMxNjM0LC0wLjY2MzI2IC01LjMwNjE0LC0zLjMxNjMzIC01LjMwNjE0LC02LjYzMjY3IFYgMjI4Ljg1NjYgYyAwLC0xLjk4OTggMC42NjMyNywtMy45Nzk2IDIuNjUzMDcsLTUuMzA2MTQgMS4zMjY1MywtMS4zMjY1MyAzLjk3OTYsLTEuOTg5OCA1Ljk2OTQxLC0xLjMyNjUzIGwgMzYuNDc5NzIsOS4yODU3NCBjIDIuNjUzMDcsMC42NjMyNyA1LjMwNjE0LDMuMzE2MzQgNS4zMDYxNCw2LjYzMjY4IHYgNDcuNzU1MjcgYyAwLDEuOTg5OCAtMC42NjMyNywzLjk3OTYgLTIuNjUzMDcsNS4zMDYxNCAtMS45ODk4MSwwLjY2MzI3IC0zLjMxNjM0LDEuMzI2NTMgLTQuNjQyODgsMS4zMjY1MyB6IG0gLTI5Ljg0NzA0LC0xOS44OTgwMiAyMy4yMTQzNyw1LjMwNjE0IHYgLTM0LjQ4OTkyIGwgLTIzLjIxNDM3LC01Ljk2OTQxIHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDE1IiBkPSJtIDUyNS42Mzg5OCwzMDYuNDU4OTEgYyAtMC42NjMyNiwwIC0xLjMyNjUzLDAgLTEuMzI2NTMsMCBsIC0zNi40Nzk3MiwtOC42MjI0NyBjIC0zLjMxNjM0LC0wLjY2MzI3IC01LjMwNjE0LC0zLjMxNjM0IC01LjMwNjE0LC02LjYzMjY4IHYgLTQ4LjQxODU0IGMgMCwtMS45ODk4IDAuNjYzMjcsLTMuOTc5NiAyLjY1MzA3LC01LjMwNjE0IDEuOTg5OCwtMS4zMjY1MyAzLjk3OTYxLC0xLjk4OTggNS45Njk0MSwtMS4zMjY1MyBsIDM2LjQ3OTcyLDkuMjg1NzQgYyAyLjY1MzA3LDAuNjYzMjcgNS4zMDYxNCwzLjMxNjM0IDUuMzA2MTQsNi42MzI2OCB2IDQ3Ljc1NTI3IGMgMCwxLjk4OTggLTAuNjYzMjcsMy45Nzk2IC0yLjY1MzA3LDUuMzA2MTQgLTEuOTg5OCwwLjY2MzI3IC0zLjMxNjM0LDEuMzI2NTMgLTQuNjQyODgsMS4zMjY1MyB6IG0gLTI5Ljg0NzA0LC0yMC41NjEyOSAyMy4yMTQzNyw1LjMwNjE0IHYgLTM0LjQ4OTkyIGwgLTIzLjIxNDM3LC01Ljk2OTQxIHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDE3IiBkPSJtIDYwOS44NzM5NywyODUuMjM0MzUgYyAtMC42NjMyNywwIC0xLjMyNjUzLDAgLTEuOTg5OCwwIGwgLTQzLjExMjQsLTE0LjU5MTg5IGMgLTIuNjUzMDcsLTAuNjYzMjYgLTMuOTc5NiwtMy4zMTYzMyAtMy45Nzk2LC01LjMwNjE0IHYgLTMwLjUxMDMxIGMgMCwtMS45ODk4IDAuNjYzMjcsLTMuOTc5NiAyLjY1MzA3LC00LjY0Mjg3IDEuMzI2NTMsLTEuMzI2NTQgMy4zMTYzNCwtMS4zMjY1NCA1LjMwNjE0LC0wLjY2MzI3IGwgNDMuMTEyMzksMTUuOTE4NDIgYyAxLjk4OTgxLDAuNjYzMjcgMy45Nzk2MSwzLjMxNjM0IDMuOTc5NjEsNS4zMDYxNCB2IDI5LjE4Mzc4IGMgMCwxLjk4OTggLTAuNjYzMjcsMy4zMTYzNCAtMi42NTMwNyw0LjY0Mjg3IC0wLjY2MzI3LDAgLTEuOTg5OCwwLjY2MzI3IC0zLjMxNjM0LDAuNjYzMjcgeiBtIC0zNy4xNDI5OCwtMjQuNTQwOSAzMS44MzY4NCwxMC42MTIyOCB2IC0xNy4yNDQ5NiBsIC0zMS44MzY4NCwtMTEuOTM4ODEgeiIgY2xhc3M9InN0MSIvPjxwYXRoIHN0eWxlPSJmaWxsOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjYuNjMyNjgiIGlkPSJwYXRoMTkiIGQ9Im0gNjM4LjM5NDQ4LDM1MC4yMzQ1OCBjIC0wLjY2MzI3LDAgLTAuNjYzMjcsMCAtMS4zMjY1NCwwIGwgLTQxLjc4NTg2LC05Ljk0OTAyIGMgLTIuNjUzMDcsLTAuNjYzMjcgLTQuNjQyODcsLTIuNjUzMDcgLTQuNjQyODcsLTUuMzA2MTQgdiAtMzEuMTczNTggYyAwLC0xLjk4OTggMC42NjMyNywtMy4zMTYzMyAxLjk4OTgsLTQuNjQyODcgMS4zMjY1NCwtMS4zMjY1MyAzLjMxNjM0LC0xLjMyNjUzIDUuMzA2MTQsLTAuNjYzMjcgbCA0MS43ODU4NiwxMS4yNzU1NSBjIDIuNjUzMDcsMC42NjMyNyAzLjk3OTYxLDIuNjUzMDcgMy45Nzk2MSw1LjMwNjE0IHYgMjkuODQ3MDUgYyAwLDEuOTg5OCAtMC42NjMyNywzLjMxNjMzIC0xLjk4OTgsNC42NDI4NyAtMC42NjMyNywwIC0xLjk4OTgxLDAuNjYzMjcgLTMuMzE2MzQsMC42NjMyNyB6IG0gLTM1LjgxNjQ1LC0yMC41NjEzIDMwLjUxMDMxLDcuMjk1OTQgViAzMTkuMDYxIGwgLTMwLjUxMDMxLC03Ljk1OTIxIHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDIxIiBkPSJtIDUyNS42Mzg5OCwyMTguMjQ0MzIgYyAtMC42NjMyNiwwIC0xLjMyNjUzLDAgLTEuOTg5OCwwIGwgLTM3LjE0Mjk4LC05Ljk0OTAxIGMgLTIuNjUzMDcsLTAuNjYzMjcgLTQuNjQyODgsLTMuMzE2MzQgLTQuNjQyODgsLTYuNjMyNjggdiAtNDkuMDgxOCBjIDAsLTEuOTg5OCAxLjMyNjU0LC0zLjk3OTYxIDIuNjUzMDcsLTUuMzA2MTQgMS45ODk4MSwtMS4zMjY1NCAzLjk3OTYxLC0xLjMyNjU0IDUuOTY5NDEsLTAuNjYzMjcgbCAzNy4xNDI5OSwxMy4yNjUzNSBjIDIuNjUzMDcsMC42NjMyNyA0LjY0Mjg3LDMuMzE2MzQgNC42NDI4Nyw1Ljk2OTQxIHYgNDUuNzY1NDcgYyAwLDEuOTg5OCAtMC42NjMyNywzLjk3OTYgLTIuNjUzMDcsNS4zMDYxNCAtMS4zMjY1MywwLjY2MzI2IC0yLjY1MzA3LDEuMzI2NTMgLTMuOTc5NjEsMS4zMjY1MyB6IG0gLTMwLjUxMDMxLC0yMS44ODc4MyAyMy44Nzc2NCw2LjYzMjY4IHYgLTMyLjUwMDEyIGwgLTIzLjg3NzY0LC04LjYyMjQ3IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDIzIiBkPSJtIDY5MC43OTI2MiwzNTYuODY3MjUgYyAtOC42MjI0OCwwIC0xNS4yNTUxNiwtNy45NTkyMSAtMTUuMjU1MTYsLTE3LjI0NDk2IDAsLTkuMjg1NzQgNi42MzI2OCwtMTcuMjQ0OTUgMTUuMjU1MTYsLTE3LjI0NDk1IDguNjIyNDgsMCAxNS4yNTUxNSw3Ljk1OTIxIDE1LjI1NTE1LDE3LjI0NDk1IDAsOS4yODU3NSAtNi42MzI2NywxNy4yNDQ5NiAtMTUuMjU1MTUsMTcuMjQ0OTYgeiBtIDAsLTI1LjIwNDE3IGMgLTMuMzE2MzQsMCAtNS45Njk0MSwzLjMxNjM0IC01Ljk2OTQxLDcuOTU5MjEgMCw0LjY0Mjg4IDIuNjUzMDcsNy45NTkyMiA1Ljk2OTQxLDcuOTU5MjIgMy4zMTYzNCwwIDUuOTY5NDEsLTMuMzE2MzQgNS45Njk0MSwtNy45NTkyMiAwLC00LjY0Mjg3IC0yLjY1MzA3LC03Ljk1OTIxIC01Ljk2OTQxLC03Ljk1OTIxIHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDI1IiBkPSJtIDEwNDEuNjYxMiwxOTkuNjcyODMgYyAtMS4zMjY1LDAgLTIuNjUzMSwtMC42NjMyNyAtMy45Nzk2LC0xLjMyNjU0IC0xLjk4OTgsLTEuMzI2NTMgLTIuNjUzMSwtMy4zMTYzMyAtMi42NTMxLC01LjMwNjE0IHYgLTQ2LjQyODczIGMgMCwtMi42NTMwNyAxLjk4OTgsLTUuMzA2MTQgNC42NDI5LC01Ljk2OTQxIGwgMzYuNDc5NywtMTMuMjY1MzUgYyAxLjk4OTgsLTAuNjYzMjcgMy45Nzk2LC0wLjY2MzI3IDUuOTY5NCwwLjY2MzI3IDEuOTg5OCwxLjMyNjUzIDIuNjUzMSwzLjMxNjM0IDIuNjUzMSw1LjMwNjE0IHYgNDkuMDgxOCBjIDAsMi42NTMwNyAtMS45ODk4LDUuMzA2MTQgLTQuNjQyOSw2LjYzMjY4IGwgLTM2LjQ3OTcsMTAuNjEyMjggYyAtMC42NjMzLDAgLTEuMzI2NSwwIC0xLjk4OTgsMCB6IG0gNi42MzI3LC00OC40MTg1NCB2IDMzLjE2MzM4IGwgMjMuMjE0MywtNi42MzI2NyB2IC0zNC40ODk5MiB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgyNyIgZD0ibSAxMDQxLjY2MTIsMjkyLjUzMDI5IGMgLTEuMzI2NSwwIC0yLjY1MzEsLTAuNjYzMjYgLTMuOTc5NiwtMS4zMjY1MyAtMS4zMjY2LC0xLjMyNjU0IC0yLjY1MzEsLTMuMzE2MzQgLTIuNjUzMSwtNS4zMDYxNCB2IC00Ny43NTUyNyBjIDAsLTMuMzE2MzQgMS45ODk4LC01Ljk2OTQxIDUuMzA2MiwtNi42MzI2OCBsIDM2LjQ3OTcsLTkuMjg1NzQgYyAxLjk4OTgsLTAuNjYzMjcgMy45Nzk2LDAgNS45Njk0LDEuMzI2NTMgMS4zMjY1LDEuMzI2NTQgMi42NTMsMy4zMTYzNCAyLjY1Myw1LjMwNjE0IHYgNDkuMDgxODEgYyAwLDMuMzE2MzQgLTEuOTg5OCw1Ljk2OTQxIC01LjMwNjEsNi42MzI2NyBsIC0zNi40Nzk3LDcuOTU5MjEgYyAtMS4zMjY1LDAgLTEuMzI2NSwwIC0xLjk4OTgsMCB6IG0gNi42MzI3LC00OS4wODE4IHYgMzQuNDg5OTIgbCAyMy4yMTQzLC01LjMwNjE0IHYgLTM1LjE1MzE5IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDI5IiBkPSJtIDk4MS45NjcxLDMwNi40NTg5MSBjIC0xLjMyNjUzLDAgLTIuNjUzMDcsLTAuNjYzMjYgLTMuOTc5NjEsLTEuMzI2NTMgLTEuMzI2NTMsLTEuMzI2NTQgLTIuNjUzMDcsLTMuMzE2MzQgLTIuNjUzMDcsLTUuMzA2MTQgdiAtNDcuNzU1MjcgYyAwLC0zLjMxNjM0IDEuOTg5ODEsLTUuOTY5NDEgNS4zMDYxNSwtNi42MzI2OCBsIDM2LjQ3OTczLC05LjI4NTc0IGMgMS45ODk4LC0wLjY2MzI3IDMuOTc5NiwwIDUuOTY5NCwxLjMyNjUzIDEuMzI2NSwxLjMyNjU0IDIuNjUzMSwzLjMxNjM0IDIuNjUzMSw1LjMwNjE0IHYgNDguNDE4NTQgYyAwLDMuMzE2MzQgLTEuOTg5OCw1Ljk2OTQxIC01LjMwNjIsNi42MzI2OCBsIC0zNi40Nzk3LDguNjIyNDcgYyAtMC42NjMyNiwwIC0xLjMyNjUzLDAgLTEuOTg5OCwwIHogbSA2LjYzMjY4LC00OS4wODE4IHYgMzQuNDg5OTIgbCAyMy4yMTQzMiwtNS4zMDYxNCB2IC0zNC40ODk5MiB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgzMSIgZD0ibSA4OTcuMDY4ODUsMjg1LjIzNDM1IGMgLTEuMzI2NTQsMCAtMi42NTMwNywtMC42NjMyNyAtMy4zMTYzNCwtMS4zMjY1MyAtMS4zMjY1NCwtMS4zMjY1NCAtMi42NTMwNywtMi42NTMwNyAtMi42NTMwNywtNC42NDI4OCB2IC0yOS4xODM3NyBjIDAsLTIuNjUzMDcgMS4zMjY1MywtNC42NDI4OCAzLjk3OTYsLTUuMzA2MTQgbCA0My43NzU2NywtMTUuOTE4NDMgYyAxLjk4OTgsLTAuNjYzMjYgMy45Nzk2LC0wLjY2MzI2IDUuMzA2MTQsMC42NjMyNyAxLjMyNjUzLDEuMzI2NTQgMi42NTMwNywyLjY1MzA3IDIuNjUzMDcsNC42NDI4NyB2IDMwLjUxMDMxIGMgMCwyLjY1MzA4IC0xLjMyNjU0LDQuNjQyODggLTMuOTc5NjEsNS4zMDYxNSBsIC00My43NzU2NiwxNC41OTE4OCBjIC0wLjY2MzI3LDAuNjYzMjcgLTEuMzI2NTQsMC42NjMyNyAtMS45ODk4LDAuNjYzMjcgeiBtIDUuOTY5NCwtMzEuMTczNTggdiAxNy4yNDQ5NiBsIDMyLjUwMDEyLC0xMC42MTIyOCB2IC0xNy45MDgyMyB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgzMyIgZD0ibSA4NjUuODk1MjcsMzQ5LjU3MTMxIGMgLTEuMzI2NTQsLTEuMzI2NTQgLTEuOTg5OCwtMi42NTMwNyAtMS45ODk4LC00LjY0Mjg3IHYgLTI5Ljg0NzA1IGMgMCwtMi42NTMwNyAxLjk4OTgsLTQuNjQyODcgMy45Nzk2LC01LjMwNjE0IGwgNDEuNzg1ODYsLTExLjI3NTU1IGMgMS45ODk4LC0wLjY2MzI2IDMuMzE2MzQsMCA1LjMwNjE0LDAuNjYzMjcgMS4zMjY1NCwxLjMyNjU0IDEuOTg5OCwyLjY1MzA3IDEuOTg5OCw0LjY0Mjg3IHYgMzEuMTczNTggYyAwLDIuNjUzMDcgLTEuOTg5OCw1LjMwNjE0IC00LjY0Mjg3LDUuMzA2MTQgbCAtNDEuNzg1ODYsOS45NDkwMiBjIC0wLjY2MzI3LDAuNjYzMjYgLTMuOTc5NiwwIC00LjY0Mjg3LC0wLjY2MzI3IHogbSA5LjI4NTc1LC0yOS44NDcwNCB2IDE3LjkwODIyIGwgMzAuNTEwMzEsLTcuMjk1OTQgdiAtMTkuMjM0NzYgeiIgY2xhc3M9InN0MSIvPjxwYXRoIHN0eWxlPSJmaWxsOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjYuNjMyNjgiIGlkPSJwYXRoMzUiIGQ9Im0gOTgxLjk2NzEsMjE4LjI0NDMyIGMgLTEuMzI2NTMsMCAtMi42NTMwNywtMC42NjMyNyAtMy45Nzk2MSwtMS4zMjY1MyAtMS4zMjY1MywtMS4zMjY1NCAtMi42NTMwNywtMy4zMTYzNCAtMi42NTMwNywtNS4zMDYxNCB2IC00NS43NjU0NyBjIDAsLTIuNjUzMDcgMS45ODk4MSwtNS4zMDYxNCA0LjY0Mjg4LC01Ljk2OTQxIGwgMzYuNDc5NywtMTMuMjY1MzUgYyAxLjk4OTgsLTAuNjYzMjcgMy45Nzk2LC0wLjY2MzI3IDUuOTY5NCwwLjY2MzI3IDEuOTg5OCwxLjMyNjUzIDIuNjUzMSwzLjMxNjM0IDIuNjUzMSw1LjMwNjE0IHYgNDkuMDgxOCBjIDAsMy4zMTYzNCAtMS45ODk4LDUuMzA2MTQgLTQuNjQyOSw2LjYzMjY4IGwgLTM2LjQ3OTcsOS45NDkwMSBjIC0wLjY2MzI2LDAgLTEuMzI2NTMsMCAtMS45ODk4LDAgeiBtIDYuNjMyNjgsLTQ3Ljc1NTI3IHYgMzIuNTAwMTIgbCAyMy4yMTQzMiwtNi42MzI2OCB2IC0zNC40ODk5MSB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgzNyIgZD0ibSA4MTYuODEzNDcsMzU2Ljg2NzI1IGMgLTguNjIyNDgsMCAtMTUuMjU1MTYsLTcuOTU5MjEgLTE1LjI1NTE2LC0xNy4yNDQ5NiAwLC05LjI4NTc0IDYuNjMyNjgsLTE3LjI0NDk1IDE1LjI1NTE2LC0xNy4yNDQ5NSA4LjYyMjQ3LDAgMTUuMjU1MTUsNy45NTkyMSAxNS4yNTUxNSwxNy4yNDQ5NSAwLDkuMjg1NzUgLTYuNjMyNjgsMTcuMjQ0OTYgLTE1LjI1NTE1LDE3LjI0NDk2IHogbSAwLC0yNS4yMDQxNyBjIC0zLjMxNjM0LDAgLTUuOTY5NDEsMy4zMTYzNCAtNS45Njk0MSw3Ljk1OTIxIDAsNC42NDI4OCAyLjY1MzA3LDcuOTU5MjIgNS45Njk0MSw3Ljk1OTIyIDMuMzE2MzMsMCA1Ljk2OTQsLTMuMzE2MzQgNS45Njk0LC03Ljk1OTIyIDAsLTQuNjQyODcgLTIuNjUzMDcsLTcuOTU5MjEgLTUuOTY5NCwtNy45NTkyMSB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgzOSIgZD0ibSAxMjc1Ljc5NDcsLTEzLjIzNjA3NCBjIDAsLTEuMzI2NTM1IDAsLTEuOTg5ODAzIDAsLTMuMzE2MzM4IC0xLjMyNjYsLTMuMzE2MzM4IC01LjMwNjIsLTUuMzA2MTQxIC04LjYyMjUsLTMuOTc5NjA2IGwgLTM3LjE0MywxMy45Mjg2MjAzIFYgNy4zMjUyMjIxIDEzLjk1Nzg5OCBsIDMyLjUwMDEsLTE1LjI1NTE1NDkgViA1MjkuMzE2ODMgaCAtMzIuNTAwMSB2IDEzLjI2NTM1IGggMzkuMTMyOCBjIDMuOTc5NiwwIDYuNjMyNywtMi42NTMwNyA3LjI5NTksLTYuNjMyNjcgViAtMTEuOTA5NTM5IGMgMCwwIDAsLTAuNjYzMjY3IC0wLjY2MzIsLTEuMzI2NTM1IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDQxIiBkPSJtIDExMDguNjUxMiw1My4wOTA2ODcgdiAtMTMuOTI4NjIgbCAtMzMuMTYzNCwxMi42MDIwODUgYyAtMC42NjMyLDAgLTAuNjYzMiwwLjY2MzI2OCAtMS4zMjY1LDAuNjYzMjY4IDAsMCAtMTEzLjQxODc2LDY5LjY0MzEgLTExNS40MDg1Nyw3MC45Njk2MyAtMS45ODk4LDEuMzI2NTQgLTMuOTc5NiwzLjMxNjM0IC0zLjk3OTYsNS45Njk0MSB2IDM3LjgwNjI2IGwgLTEwOS40MzkxNiw2NS4wMDAyMiBjIC0xLjk4OTgsMC42NjMyNyAtMy4zMTYzNCwzLjMxNjM0IC0zLjMxNjM0LDUuMzA2MTQgbCAtMC42NjMyNiwzMS44MzY4NSAtNTkuNjk0MDksMzUuMTUzMTggYyAtMy4zMTYzNCwxLjk4OTggLTEuOTg5OCw2LjYzMjY4IC0xLjk4OTgsOS45NDkwMiAwLDMuMzE2MzMgMCw3Mi4yOTYxNiAwLDcyLjI5NjE2IGwgLTI1LjIwNDE3LC05LjI4NTc0IGMgLTEuMzI2NTQsLTAuNjYzMjcgLTMuMzE2MzQsLTAuNjYzMjcgLTQuNjQyODcsMCBsIC0yMi41NTExLDkuMjg1NzQgYyAwLDAgMCwtNzEuNjMyOSAwLC03Mi4yOTYxNiAwLC0zLjk3OTYxIDAuNjYzMjcsLTcuMjk1OTUgLTIuNjUzMDcsLTkuMjg1NzUgbCAtNTkuNjk0MDksLTM1LjE1MzE4IC0wLjY2MzI2LC0zMS44MzY4NSBjIDAsLTEuOTg5OCAtMS4zMjY1NCwtMy45Nzk2MSAtMy4zMTYzNCwtNS4zMDYxNCBMIDU1Mi4xNjk2OSwxNjguNDk5MjUgdiAtMzkuMTMyNzkgYyAwLC0yLjY1MzA3IC0xLjMyNjU0LC00LjY0Mjg3IC0zLjk3OTYxLC01Ljk2OTQxIGwgLTguNjIyNDgsLTMuOTc5NiAtMTMwLjY2MzcxLC03OC45Mjg4NDcgYyAtMC42NjMyNywwIC0wLjY2MzI3LC0wLjY2MzI2OCAtMS4zMjY1NCwtMC42NjMyNjggbCAtOS4yODU3NSwtMy45Nzk2MDYgdiAxNC41OTE4ODggbCAzLjk3OTYxLDEuOTg5ODAzIDMxLjE3MzU4LDE5Ljg5ODAyOCAtMjUuMjA0MTcsLTExLjI3NTU1IGMgLTAuNjYzMjcsMCAtMC42NjMyNywwIC0wLjY2MzI3LDAgbCAtOS4yODU3NSwtNS4zMDYxNCB2IDE1LjkxODQyMiA0NTguOTgxMTkgMTMuMjY1MzUgaCA1Ljk2OTQxIGMgMS45ODk4LDAgMy4zMTYzNCwtMC42NjMyNyA1LjMwNjE0LC0xLjk4OTggMS45ODk4MSwtMS4zMjY1NCAzNDIuOTA5MzYsLTE1MC41NjE3NSAzNDIuOTA5MzYsLTE1MC41NjE3NSAwLDAgMzQ2Ljg4ODk5LDE1MS44ODgyOCAzNDguODc4NzksMTUyLjU1MTU1IDEuOTg5OCwwLjY2MzI3IDcuMjk1OSwwIDcuMjk1OSwwIFYgNTMwLjY0MzM3IDcxLjY2MjE4IDU3LjczMzU2IGwgLTYwLjM1NzMsMjYuNTMwNzA1IDMxLjgzNjgsLTE5Ljg5ODAyOCB6IE0gNTAyLjQyNDYyLDQ4NS41NDExNyA0NTEuMzUzMDEsNTA4LjA5MjI3IFYgMzQzLjYwMTkgbCA1MS4wNzE2MSw5LjI4NTc1IHogbSAzNS44MTY0NSwtMjkwLjUxMTIxIHYgMjczLjkyOTUyIGwgLTIyLjU1MTEsOS45NDkwMSBWIDM0Ny41ODE1MSBjIDAsLTMuMzE2MzQgLTEuOTg5OCwtNS45Njk0MSAtNS4zMDYxNCwtNi42MzI2OCBsIC02NC4zMzY5NiwtMTEuMjc1NTUgYyAtMS45ODk4LC0wLjY2MzI3IC0zLjk3OTYsMCAtNS4zMDYxNCwxLjMyNjU0IC0xLjk4OTgsMS4zMjY1MyAtMi42NTMwNywzLjMxNjMzIC0yLjY1MzA3LDUuMzA2MTQgdiAxNzcuMDkyNDUgbCAtMjYuNTMwNywxMS45Mzg4MiBWIDc2Ljk2ODMyMSBsIDExOS4zODgxNyw1My4wNjE0MDkgNy4yOTU5NCwzLjk3OTYxIHogbSAxMy45Mjg2MiwtMTEuMjc1NTUgNDcuMDkyLDI3Ljg1NzI0IC00Ny4wOTIsLTIwLjU2MTMgeiBtIDM1LjgxNjQ1LDE4My43MjUxMiAyNy44NTcyNCwzLjk3OTYxIDAuNjYzMjcsNjMuMDEwNDIgLTI3Ljg1NzI0LDExLjkzODgyIHogbSA2MS42ODM4OSwtNzYuOTM5MDQgYyAwLDAuNjYzMjcgMCwxLjk4OTggMCwyLjY1MzA3IHYgMTI2LjY4NDEyIGwgLTIyLjU1MTEsOS45NDkwMSAtMC42NjMyNywtNjMuMDEwNDIgYyAwLC0zLjMxNjM0IC0xLjk4OTgsLTUuMzA2MTQgLTQuNjQyODcsLTUuOTY5NDEgTCA1ODIuNjgsMzU0Ljg3NzQ1IGMgLTEuOTg5OCwwIC0zLjMxNjM0LDAgLTQuNjQyODcsMS4zMjY1MyAtMS4zMjY1NCwxLjMyNjU0IC0xLjk4OTgxLDIuNjUzMDggLTEuOTg5ODEsNC42NDI4OCBsIDAuNjYzMjcsOTAuODY3NjYgLTI0LjU0MDksMTAuNjEyMjggViAyMDQuOTc4OTcgbCA5Ny41MDAzNCw0My4xMTIzOSB6IG0gMTMuMjY1MzUsLTUuOTY5NDEgMTEuOTM4ODIsNy4yOTU5NSAtMTEuOTM4ODIsLTMuOTc5NjEgeiBtIDMzLjE2MzM4LDExNS40MDg1NyAtMTEuMjc1NTUsNS4zMDYxNCB2IC0zMS4xNzM1OCBsIDExLjI3NTU1LDEuMzI2NTQgeiBtIDE3LjkwODIzLC03Ljk1OTIxIC04LjYyMjQ4LDMuMzE2MzMgViAzNzAuMTMyNiBjIDAsLTIuNjUzMDcgLTEuOTg5ODEsLTQuNjQyODcgLTQuNjQyODgsLTQuNjQyODcgbCAtMjAuNTYxMjksLTEuMzI2NTMgYyAtMS4zMjY1NCwwIC0yLjY1MzA3LDAuNjYzMjYgLTMuMzE2MzQsMS4zMjY1MyAtMC42NjMyNywwLjY2MzI3IC0xLjMyNjU0LDEuOTg5OCAtMS4zMjY1NCwzLjMxNjM0IHYgNDAuNDU5MzIgbCAtMTIuNjAyMDgsNS4zMDYxNCBWIDMwMi40NzkzMSBsIDUxLjA3MTYxLDE3LjI0NDk2IHogbSAxMDguMTEyNjIsMTEuOTM4ODEgLTExLjI3NTU1LC01LjMwNjE0IHYgLTI0LjU0MDkgbCAxMS4yNzU1NSwtMC42NjMyNyB6IG0gMjEuODg3ODMsOS45NDkwMiAtMTMuMjY1MzUsLTUuOTY5NDEgdiAtMzkuMTMyNzkgYyAwLC0xLjMyNjU0IC0wLjY2MzI3LC0yLjY1MzA3IC0xLjMyNjU0LC0zLjMxNjM0IC0wLjY2MzI3LC0wLjY2MzI3IC0xLjk4OTgsLTEuMzI2NTMgLTMuMzE2MzQsLTEuMzI2NTMgbCAtMjAuNTYxMjksMS4zMjY1MyBjIC0yLjY1MzA3LDAgLTQuNjQyODgsMS45ODk4IC00LjY0Mjg4LDQuNjQyODcgdiAyNC41NDA5MSBsIC03Ljk1OTIxLC0zLjMxNjM0IHYgLTcyLjk1OTQ0IGwgNTEuMDcxNjEsLTE2LjU4MTY5IHogbSAwLC0xMjUuMzU3NTggLTIyLjU1MTEsNy4yOTU5NCAyMi41NTExLC0xMy4yNjUzNSB6IG0gNzIuMjk2MTcsMTU3LjE5NDQyIC0yNy44NTcyNCwtMTIuNjAyMDggMC42NjMyNywtNjMuNjczNjkgMjcuODU3MjMsLTMuOTc5NjEgeiBtIDM4LjQ2OTUyLDE3LjI0NDk2IC0yNy4xOTM5NywtMTEuOTM4ODIgMC42NjMyNiwtOTEuNTMwOTMgYyAwLC0xLjk4OTggLTAuNjYzMjYsLTMuMzE2MzQgLTEuOTg5OCwtNC42NDI4NyAtMS4zMjY1MywtMS4zMjY1NCAtMi42NTMwNywtMS4zMjY1NCAtNC42NDI4NywtMS4zMjY1NCBsIC0zOS4xMzI3OSw1Ljk2OTQxIGMgLTIuNjUzMDcsMC42NjMyNyAtNC42NDI4NywzLjMxNjM0IC00LjY0Mjg3LDUuOTY5NDEgbCAtMC42NjMyNyw2My4wMTA0MiAtMTkuODk4MDMsLTguNjIyNDcgdiAtMTI2LjY4NDEyIC00NS4xMDIyIGwgOTcuNTAwMzQsLTQzLjExMjM5IHogbSAwLC0yNzEuOTM5NzIgLTU3LjA0MTAyLDI1LjIwNDE3IDU3LjA0MTAyLC0zMy44MjY2NSB6IE0gMTAwMS44NjUxLDQ4NC44Nzc5IFYgMzUwLjg5Nzg0IGwgNTEuMDcxNiwtOC42MjI0NyBWIDUwNi43NjU3MyBaIE0gMTA5NC43MjI2LDc3LjYzMTU4OSBWIDUyNi4wMDA0OSBsIC0yOC41MjA1LC0xMi42MDIwOCBWIDMzNC45Nzk0MiBjIDAsLTEuOTg5OCAtMS4zMjY1LC0zLjk3OTYgLTIuNjUzMSwtNS4zMDYxNCAtMS4zMjY1LC0xLjMyNjUzIC0zLjMxNjMsLTEuOTg5OCAtNS4zMDYxLC0xLjMyNjUzIGwgLTY0LjMzNjk4LDExLjI3NTU0IGMgLTMuMzE2MzQsMC42NjMyNyAtNS4zMDYxNCwzLjMxNjM0IC01LjMwNjE0LDYuNjMyNjggdiAxMzIuNjUzNTIgbCAtMTkuODk4MDMsLTguNjIyNDggLTAuNjYzMjcsLTMzNS42MTM0MSB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGg0MyIgZD0iTSAyNDMuMDg2OTgsLTAuNjMzOTg5MjUgMjc0LjkyMzgzLDEzLjk1Nzg5OCBWIDkuOTc4MjkyNSAtMy45NTAzMjczIGwgLTI4LjUyMDUxLC05Ljk0OTAxMzcgLTcuMjk1OTQsLTMuMzE2MzM4IGMgLTIuNjUzMDcsLTAuNjYzMjY4IC00LjY0Mjg4LC0wLjY2MzI2OCAtNi42MzI2OCwwLjY2MzI2NyAtMS45ODk4LDAuNjYzMjY4IC0zLjMxNjM0LDMuMzE2MzM4IC0zLjMxNjM0LDUuMzA2MTQxIFYgNTM2LjYxMjc3IGMgMCwzLjk3OTYxIDIuNjUzMDcsNi42MzI2OCA2LjYzMjY4LDYuNjMyNjggaCAzOS4xMzI3OSBWIDUyOS45ODAxIGggLTMxLjgzNjg1IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDUxIiBkPSJtIDExNjkuNjcxOCwxMTguMDkwOTEgYyAtMjAuNTYxMywwIC0zNy4xNDMsLTE2LjU4MTY5IC0zNy4xNDMsLTM3LjE0Mjk4MyBWIC01MS4wNDIzMjggSCA5NzQuNjcxMTYgYyAtMjAuNTYxMywwIC0zNy4xNDI5OSwtMTYuNTgxNjkgLTM3LjE0Mjk5LC0zNy4xNDI5ODYgMCwtMjAuNTYxMjk2IDE2LjU4MTY5LC0zNy4xNDI5ODYgMzcuMTQyOTksLTM3LjE0Mjk4NiBoIDE5NS4wMDA2NCBjIDIwLjU2MTMsMCAzNy4xNDMsMTYuNTgxNjkgMzcuMTQzLDM3LjE0Mjk4NiBWIDgwLjk0NzkyNyBjIDAsMjAuNTYxMjkzIC0xNi41ODE3LDM3LjE0Mjk4MyAtMzcuMTQzLDM3LjE0Mjk4MyB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGg1NSIgZD0iTSA1MzAuMjgxODYsNjQ3LjM3ODQ3IEggMzM1LjI4MTE4IGMgLTIwLjU2MTMsMCAtMzcuMTQyOTksLTE2LjU4MTY5IC0zNy4xNDI5OSwtMzcuMTQyOTkgViA0NDEuMTAyMjQgYyAwLC0yMC41NjEzIDE2LjU4MTY5LC0zNy4xNDI5OSAzNy4xNDI5OSwtMzcuMTQyOTkgMjAuNTYxMywwIDM3LjE0Mjk5LDE2LjU4MTY5IDM3LjE0Mjk5LDM3LjE0Mjk5IHYgMTMxLjk5MDI1IGggMTU3Ljg1NzY5IGMgMjAuNTYxMjksMCAzNy4xNDI5OCwxNi41ODE2OSAzNy4xNDI5OCwzNy4xNDI5OSAwLDIwLjU2MTMgLTE2LjU4MTY5LDM3LjE0Mjk5IC0zNy4xNDI5OCwzNy4xNDI5OSB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGg1OSIgZD0ibSAzMzUuMjgxMTgsMTE4LjA5MDkxIGMgLTIwLjU2MTMsMCAtMzcuMTQyOTksLTE2LjU4MTY5IC0zNy4xNDI5OSwtMzcuMTQyOTgzIFYgLTg4LjE4NTMxNCBjIDAsLTIwLjU2MTI5NiAxNi41ODE2OSwtMzcuMTQyOTg2IDM3LjE0Mjk5LC0zNy4xNDI5ODYgaCAxOTUuMDAwNjggYyAyMC41NjEyOSwwIDM3LjE0Mjk4LDE2LjU4MTY5IDM3LjE0Mjk4LDM3LjE0Mjk4NiAwLDIwLjU2MTI5NiAtMTYuNTgxNjksMzcuMTQyOTg2IC0zNy4xNDI5OCwzNy4xNDI5ODYgSCAzNzIuNDI0MTcgViA4MC45NDc5MjcgYyAwLDIwLjU2MTI5MyAtMTYuNTgxNjksMzcuMTQyOTgzIC0zNy4xNDI5OSwzNy4xNDI5ODMgeiIgY2xhc3M9InN0MSIvPjxwYXRoIHN0eWxlPSJmaWxsOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjYuNjMyNjgiIGlkPSJwYXRoNjMiIGQ9Ik0gMTE2OS42NzE4LDY0Ny4zNzg0NyBIIDk3NC42NzExNiBjIC0yMC41NjEzLDAgLTM3LjE0Mjk5LC0xNi41ODE2OSAtMzcuMTQyOTksLTM3LjE0Mjk5IDAsLTIwLjU2MTMgMTYuNTgxNjksLTM3LjE0Mjk5IDM3LjE0Mjk5LC0zNy4xNDI5OSBIIDExMzIuNTI4OCBWIDQ0MS4xMDIyNCBjIDAsLTIwLjU2MTMgMTYuNTgxNywtMzcuMTQyOTkgMzcuMTQzLC0zNy4xNDI5OSAyMC41NjEzLDAgMzcuMTQzLDE2LjU4MTY5IDM3LjE0MywzNy4xNDI5OSB2IDE2OS4xMzMyNCBjIDAsMjAuNTYxMyAtMTYuNTgxNywzNy4xNDI5OSAtMzcuMTQzLDM3LjE0Mjk5IHoiIGNsYXNzPSJzdDEiLz48L2c+PC9zdmc+"},1462:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgdmVyc2lvbj0iMS4xIgogICB4PSIwcHgiCiAgIHk9IjBweCIKICAgdmlld0JveD0iMCAwIDkwLjQ1NTAwMiA5MC40NTIwMDMiCiAgIGlkPSJzdmcxMCIKICAgd2lkdGg9IjkwLjQ1NTAwMiIKICAgaGVpZ2h0PSI5MC40NTIwMDMiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDIuNTEyLDkwLjQ1IGggOC4wMTIgMTIuODM0IGMgMC4wMDgsMCAwLjAxNCwwLjAwMiAwLjAyLDAuMDAyIGggMTUuNDIzIGMgMC4wMDgsMCAwLjAxNCwtMC4wMDIgMC4wMiwtMC4wMDIgaCAxLjE2NCBjIDEuMzg3LDAgMi41MTIsLTEuMTI1IDIuNTEyLC0yLjUxMiBWIDUyLjgxMyBsIDI3LjUyLC0yNy41MTYgdiAxOS4xMDkgYyAwLDEuMzg2IDEuMTI1LDIuNTEyIDIuNTE0LDIuNTEyIDEuMzg3LDAgMi41MTIsLTEuMTI2IDIuNTEyLC0yLjUxMiBWIDE5LjIzMyBjIDAsLTEuMzg3IC0xLjEyNSwtMi41MTQgLTIuNTEyLC0yLjUxNCBIIDQ3LjM1NiBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNyAtMi41MTQsMi41MTQgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxNCwyLjUxMiBIIDY2LjQ2MyBMIDQwLjIyNiw0Ny45NzcgYyAtMC4wOCwtMC4wMDggLTAuMTYsLTAuMDIzIC0wLjI0MiwtMC4wMjMgSCAyLjUxMiBDIDEuMTI1LDQ3Ljk1NCAwLDQ5LjA3OSAwLDUwLjQ2NiB2IDEuMTg4IDE1LjQyNCAxMi44NTQgOC4wMDggYyAwLDEuMzg1IDEuMTI1LDIuNTEgMi41MTIsMi41MSB6IE0gNS4wMjUsNzkuOTMgViA2Ny4wNzcgNTIuOTc3IEggMzcuNDcxIFYgODUuNDI0IEggMTAuNTIzIDUuMDI1IFoiCiAgICAgaWQ9InBhdGgxIgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDY3LjA3OCw5MC40NTIgYyAxLjM4OSwwIDIuNTE0LC0xLjEyNSAyLjUxNCwtMi41MTQgMCwtMS4zODcgLTEuMTI1LC0yLjUxMiAtMi41MTQsLTIuNTEyIEggNTEuNjU1IGMgLTEuMzg3LDAgLTIuNTEyLDEuMTI1IC0yLjUxMiwyLjUxMiAwLDEuMzg5IDEuMTI1LDIuNTE0IDIuNTEyLDIuNTE0IHoiCiAgICAgaWQ9InBhdGgyIgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDkwLjQ1NSw3OS45MyBjIDAsLTEuMzg3IC0xLjEyNSwtMi41MTIgLTIuNTE0LC0yLjUxMiAtMS4zODcsMCAtMi41MTIsMS4xMjUgLTIuNTEyLDIuNTEyIHYgNS40OTYgaCAtNS40OTYgYyAtMS4zODksMCAtMi41MTIsMS4xMjUgLTIuNTEyLDIuNTEyIDAsMS4zODkgMS4xMjMsMi41MTQgMi41MTIsMi41MTQgaCA4LjAwOCBjIDEuMzg5LDAgMi41MTQsLTEuMTI1IDIuNTE0LC0yLjUxNCB6IgogICAgIGlkPSJwYXRoMyIKICAgICBzdHlsZT0iZmlsbDojMjk1NGU5O2ZpbGwtb3BhY2l0eToxIiAvPgogIDxwYXRoCiAgICAgZD0ibSA4Ny45NDIsNDEuMzExIGMgMS4zODcsMCAyLjUxMiwtMS4xMjcgMi41MTIsLTIuNTE0IFYgMjMuMzczIGMgMCwtMS4zODcgLTEuMTI1LC0yLjUxMiAtMi41MTIsLTIuNTEyIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgdiAxNS40MjQgYyAwLDEuMzg3IDEuMTI1LDIuNTE0IDIuNTE0LDIuNTE0IHoiCiAgICAgaWQ9InBhdGg0IgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDg1LjQyOCw2Ny4wNzUgYyAwLDEuMzg3IDEuMTI1LDIuNTEyIDIuNTE0LDIuNTEyIDEuMzg3LDAgMi41MTIsLTEuMTI1IDIuNTEyLC0yLjUxMiBWIDUxLjY1MSBjIDAsLTEuMzg3IC0xLjEyNSwtMi41MTIgLTIuNTEyLC0yLjUxMiAtMS4zODksMCAtMi41MTQsMS4xMjUgLTIuNTE0LDIuNTEyIHoiCiAgICAgaWQ9InBhdGg1IgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDg3Ljk0MiwwIGggLTguMDA4IGMgLTEuMzg5LDAgLTIuNTEyLDEuMTI3IC0yLjUxMiwyLjUxNCAwLDEuMzg3IDEuMTIzLDIuNTEyIDIuNTEyLDIuNTEyIGggNS40OTQgdiA1LjQ5NiBjIDAsMS4zODcgMS4xMjUsMi41MTQgMi41MTQsMi41MTQgMS4zODcsMCAyLjUxMiwtMS4xMjcgMi41MTIsLTIuNTE0IFYgMi41MTQgQyA5MC40NTMsMS4xMjcgODkuMzI4LDAgODcuOTQyLDAgWiIKICAgICBpZD0icGF0aDYiCiAgICAgc3R5bGU9ImZpbGw6IzI5NTRlOTtmaWxsLW9wYWNpdHk6MSIgLz4KICA8cGF0aAogICAgIGQ9Im0gMjMuMzc3LDUuMDI0IGggMTUuNDIyIGMgMS4zODksMCAyLjUxNCwtMS4xMjUgMi41MTQsLTIuNTEyIEMgNDEuMzEzLDEuMTI1IDQwLjE4OCwwIDM4Ljc5OSwwIEggMjMuMzc3IGMgLTEuMzg5LDAgLTIuNTE0LDEuMTI1IC0yLjUxNCwyLjUxMiAwLDEuMzg3IDEuMTI1LDIuNTEyIDIuNTE0LDIuNTEyIHoiCiAgICAgaWQ9InBhdGg3IgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDUxLjY1Myw1LjAyNCBoIDE1LjQyNCBjIDEuMzg5LDAgMi41MTQsLTEuMTI1IDIuNTE0LC0yLjUxMiBDIDY5LjU5MSwxLjEyNSA2OC40NjYsMCA2Ny4wNzcsMCBIIDUxLjY1MyBjIC0xLjM4NywwIC0yLjUxMiwxLjEyNSAtMi41MTIsMi41MTIgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxMiwyLjUxMiB6IgogICAgIGlkPSJwYXRoOCIKICAgICBzdHlsZT0iZmlsbDojMjk1NGU5O2ZpbGwtb3BhY2l0eToxIiAvPgogIDxwYXRoCiAgICAgZD0ibSAyLjUxMiwxMy4wMzMgYyAxLjM4OSwwIDIuNTE0LC0xLjEyNSAyLjUxNCwtMi41MTQgViA1LjAyNCBoIDUuNDk4IGMgMS4zODcsMCAyLjUxMiwtMS4xMjUgMi41MTIsLTIuNTEyIEMgMTMuMDM2LDEuMTI1IDExLjkxMSwwIDEwLjUyNCwwIEggMi41MTIgQyAxLjEyNSwwIDAsMS4xMjUgMCwyLjUxMiB2IDguMDA4IGMgMCwxLjM4OCAxLjEyNSwyLjUxMyAyLjUxMiwyLjUxMyB6IgogICAgIGlkPSJwYXRoOSIKICAgICBzdHlsZT0iZmlsbDojMjk1NGU5O2ZpbGwtb3BhY2l0eToxIiAvPgogIDxwYXRoCiAgICAgZD0ibSAyLjUxMiw0MS4zMTEgYyAxLjM4OSwwIDIuNTE0LC0xLjEyNSAyLjUxNCwtMi41MTIgViAyMy4zNzUgQyA1LjAyNiwyMS45ODggMy45MDEsMjAuODYzIDIuNTEyLDIwLjg2MyAxLjEyNSwyMC44NjMgMCwyMS45ODggMCwyMy4zNzUgdiAxNS40MjQgYyAwLDEuMzg3IDEuMTI1LDIuNTEyIDIuNTEyLDIuNTEyIHoiCiAgICAgaWQ9InBhdGgxMCIKICAgICBzdHlsZT0iZmlsbDojMjk1NGU5O2ZpbGwtb3BhY2l0eToxIiAvPgo8L3N2Zz4K"},5721:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgdmVyc2lvbj0iMS4xIgogICB4PSIwcHgiCiAgIHk9IjBweCIKICAgdmlld0JveD0iMCAwIDkwLjE2OTk5OCA5MC4xNzE5OTciCiAgIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDkxIDkxIgogICBpZD0ic3ZnMTIiCiAgIHdpZHRoPSI5MC4xNjk5OTgiCiAgIGhlaWdodD0iOTAuMTcxOTk3IgogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxIiAvPgogIDxwYXRoCiAgICAgZD0ibSA0NS44MzIsMTguMDM5IGMgLTEuMzg4LDAgLTIuNTEzLDEuMTI1IC0yLjUxMywyLjUxMiBWIDQ1LjY0IGMgMCwxLjM5IDEuMTI1LDIuNTE1IDIuNTEzLDIuNTE1IGggMjUuMDg5IGMgMS4zODksMCAyLjUxMiwtMS4xMjUgMi41MTIsLTIuNTE1IDAsLTEuMzg2IC0xLjEyMywtMi41MTEgLTIuNTEyLC0yLjUxMSBIIDUxLjg5NCBMIDc5LjM4NiwxNS42MzUgYyAwLjk4MiwtMC45OCAwLjk4MiwtMi41NyAwLC0zLjU1MyAtMC45OCwtMC45OCAtMi41NzIsLTAuOTggLTMuNTUzLDAgTCA0OC4zNDMsMzkuNTc2IFYgMjAuNTUxIGMgMCwtMS4zODcgLTEuMTI1LC0yLjUxMiAtMi41MTEsLTIuNTEyIHoiCiAgICAgaWQ9InBhdGgxIiAvPgogIDxwYXRoCiAgICAgZD0ibSAyLjUxMiw5MC4xNzEgaCAwLjAwMiA3Ljk4MiAxMi44MDggMTUuMzcyIDEuMTgyIGMgMS4zODgsMCAyLjUxNCwtMS4xMjUgMi41MTQsLTIuNTE0IHYgLTM3LjM1IGMgMCwtMS4zODcgLTEuMTI2LC0yLjUxMiAtMi41MTQsLTIuNTEyIEggMi41MTQgYyAtMS4zODksMCAtMi41MTMsMS4xMjUgLTIuNTEzLDIuNTEyIHYgMS4xNyBDIDAuMDAxLDUxLjQ4MSAwLDUxLjQ4NyAwLDUxLjQ5MSB2IDE1LjM3MyBjIDAsMC4wMDYgMC4wMDEsMC4wMSAwLjAwMSwwLjAxNiBWIDc5LjY2MSBDIDAuMDAxLDc5LjY2NSAwLDc5LjY3MSAwLDc5LjY3NSB2IDcuOTgyIGMgMCwxLjM4OSAxLjEyNCwyLjUxNCAyLjUxMiwyLjUxNCB6IE0gNS4wMjYsNTIuODE5IEggMzcuMzQ1IFYgODUuMTQ1IEggMjMuMzA0IDEwLjQ5NyA1LjAyNiBaIgogICAgIGlkPSJwYXRoMiIgLz4KICA8cGF0aAogICAgIGQ9Im0gNTEuNDg3LDg1LjE0NSBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgMCwxLjM4OSAxLjEyNSwyLjUxNCAyLjUxNCwyLjUxNCBIIDY2Ljg2IGMgMS4zODcsMCAyLjUxMiwtMS4xMjUgMi41MTIsLTIuNTE0IDAsLTEuMzg3IC0xLjEyNSwtMi41MTIgLTIuNTEyLC0yLjUxMiB6IgogICAgIGlkPSJwYXRoMyIgLz4KICA8cGF0aAogICAgIGQ9Im0gODcuNjU3LDc3LjE2MyBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgdiA1LjQ3MSBoIC01LjQ2OSBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgMCwxLjM4OSAxLjEyNSwyLjUxNCAyLjUxNCwyLjUxNCBoIDcuOTgzIGMgMS4zODcsMCAyLjUxMiwtMS4xMjUgMi41MTIsLTIuNTE0IHYgLTcuOTgyIGMgMCwtMS4zODggLTEuMTI1LC0yLjUxMyAtMi41MTIsLTIuNTEzIHoiCiAgICAgaWQ9InBhdGg0IiAvPgogIDxwYXRoCiAgICAgZD0ibSA4Ny42NTcsNDguOTc5IGMgLTEuMzg5LDAgLTIuNTE0LDEuMTI1IC0yLjUxNCwyLjUxMiB2IDE1LjM3MyBjIDAsMS4zODcgMS4xMjUsMi41MTQgMi41MTQsMi41MTQgMS4zODcsMCAyLjUxMiwtMS4xMjcgMi41MTIsLTIuNTE0IFYgNTEuNDkxIGMgMCwtMS4zODcgLTEuMTI1LC0yLjUxMiAtMi41MTIsLTIuNTEyIHoiCiAgICAgaWQ9InBhdGg1IiAvPgogIDxwYXRoCiAgICAgZD0ibSA4Ny42NTcsMjAuNzk1IGMgLTEuMzg5LDAgLTIuNTE0LDEuMTI1IC0yLjUxNCwyLjUxMiBWIDM4LjY4IGMgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxNCwyLjUxMiAxLjM4NywwIDIuNTEyLC0xLjEyNSAyLjUxMiwtMi41MTIgViAyMy4zMDcgYyAwLC0xLjM4NyAtMS4xMjUsLTIuNTEyIC0yLjUxMiwtMi41MTIgeiIKICAgICBpZD0icGF0aDYiIC8+CiAgPHBhdGgKICAgICBkPSJtIDg3LjY1NywwLjAwMiBoIC03Ljk4MiBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxNCwyLjUxMiBoIDUuNDY5IHYgNS40NzEgYyAwLDEuMzg3IDEuMTI1LDIuNTEyIDIuNTE0LDIuNTEyIDEuMzg3LDAgMi41MTIsLTEuMTI1IDIuNTEyLC0yLjUxMiBWIDIuNTE0IEMgOTAuMTY5LDEuMTI3IDg5LjA0NCwwLjAwMiA4Ny42NTcsMC4wMDIgWiIKICAgICBpZD0icGF0aDciIC8+CiAgPHBhdGgKICAgICBkPSJtIDM4LjY3OCw1LjAyNCBjIDEuMzg5LDAgMi41MTMsLTEuMTI1IDIuNTEzLC0yLjUxMiBDIDQxLjE5MSwxLjEyNSA0MC4wNjcsMCAzOC42NzgsMCBIIDIzLjMwNSBjIC0xLjM4NywwIC0yLjUxMiwxLjEyNSAtMi41MTIsMi41MTIgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxMiwyLjUxMiB6IgogICAgIGlkPSJwYXRoOCIgLz4KICA8cGF0aAogICAgIGQ9Im0gNjYuODYsNS4wMjQgYyAxLjM4OSwwIDIuNTE0LC0xLjEyNSAyLjUxNCwtMi41MTIgQyA2OS4zNzQsMS4xMjUgNjguMjQ5LDAgNjYuODYsMCBIIDUxLjQ4OSBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxNCwyLjUxMiB6IgogICAgIGlkPSJwYXRoOSIgLz4KICA8cGF0aAogICAgIGQ9Im0gMi41MTIsMTMuMDA2IGMgMS4zODksMCAyLjUxMywtMS4xMjUgMi41MTMsLTIuNTEyIHYgLTUuNDcgaCA1LjQ2OCBjIDEuMzg5LDAgMi41MTMsLTEuMTI1IDIuNTEzLC0yLjUxMiBDIDEzLjAwNiwxLjEyNSAxMS44ODIsMCAxMC40OTMsMCBIIDIuNTEzIEMgMS4xMjUsMCAxMGUtNCwxLjEyNSAxMGUtNCwyLjUxMiB2IDcuOTgyIEMgMCwxMS44ODEgMS4xMjQsMTMuMDA2IDIuNTEyLDEzLjAwNiBaIgogICAgIGlkPSJwYXRoMTAiIC8+CiAgPHBhdGgKICAgICBkPSJtIDIuNTEyLDQxLjE5MiBjIDEuMzg5LDAgMi41MTMsLTEuMTI1IDIuNTEzLC0yLjUxMiBWIDIzLjMwNyBDIDUuMDI1LDIxLjkyIDMuOTAxLDIwLjc5NSAyLjUxMiwyMC43OTUgMS4xMjQsMjAuNzk1IDAsMjEuOTIgMCwyMy4zMDcgViAzOC42OCBjIDAsMS4zODcgMS4xMjQsMi41MTIgMi41MTIsMi41MTIgeiIKICAgICBpZD0icGF0aDExIiAvPgo8L3N2Zz4K"},9472:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAxOCI+PHBhdGggZD0iTTIuNSAxaDF2MTZoLTF6bTIgMGgzdjE2aC0zem00IDBoM3YxNmgtM3oiIGZpbGw9IiM5MDAiLz48cGF0aCBkPSJNMTIuNSAxaDF2MTZoLTF6bTIgMGgxdjE2aC0xem0xMiAwaDF2MTZoLTF6bTIgMGgxdjE2aC0xeiIgZmlsbD0iIzM5NiIvPjxwYXRoIGQ9Ik0xNi41IDFoM3YxNmgtM3ptNCAwaDF2MTZoLTF6bTIgMGgzdjE2aC0zeiIgZmlsbD0iIzA2OSIvPjwvc3ZnPg=="},4634:vt=>{function _extends(){return vt.exports=_extends=Object.assign?Object.assign.bind():function(vt){for(var bt=1;bt<arguments.length;bt++){var le=arguments[bt];for(var ls in le)({}).hasOwnProperty.call(le,ls)&&(vt[ls]=le[ls])}return vt},vt.exports.__esModule=!0,vt.exports.default=vt.exports,_extends.apply(null,arguments)}vt.exports=_extends,vt.exports.__esModule=!0,vt.exports.default=vt.exports},2968:(vt,bt,le)=>{var ls=le(4634).default;
12
+ !function(vt,bt){"object"===typeof exports&&"object"===typeof module?module.exports=bt():"function"===typeof define&&define.amd?define("Panoramax",[],bt):"object"===typeof exports?exports.Panoramax=bt():vt.Panoramax=bt()}(this,(()=>(()=>{var vt={9039:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Basic});var ls,ho=le(7528),Dl=le(4542),Fl=le(5254),sc=le(4964),uc=le(5995),mc=le(7343),gc=le(2614),Ac=le.n(gc),Ec=le(8330);le(1865),le(3638);class Basic extends Dl.WF{constructor(){let vt=arguments.length>0&&void 0!==arguments[0]&&arguments[0];super(),this.lang=this.getAttribute("lang")||null,this.endpoint=this.getAttribute("endpoint")||null,this.picture=this.getAttribute("picture")||null,this.sequence=this.getAttribute("sequence")||null,console.info("\ud83d\udcf7 Panoramax ".concat(this.getClassName()," - Version ").concat(Ec.rE," (").concat("1207750",")\n\n\ud83c\udd98 Issues can be reported at ").concat(Ec.Jk.O)),vt||(this._isInternetFast=null,(0,mc.isInternetFast)().then((vt=>this._isInternetFast=vt)))}connectedCallback(){super.connectedCallback(),this._t=(0,sc.getTranslations)(this.lang),this.loader=(0,uc.createWebComp)("pnx-loader",{_parent:this,"no-label":(0,mc.isInIframe)()}),this._loadsAPI&&this.endpoint&&this._loadsAPI===this.endpoint||this.api&&this.api._endpoint===this.endpoint||!this.endpoint||((this._loadsAPI||this.api)&&(delete this.api,delete this._loadsAPI),this._setupAPI()),Object.entries({map:"map-options",psv:"psv-options",fetchOptions:"fetch-options",mapstyle:"map-style"}).forEach((vt=>{let[bt,le]=vt;this.getAttribute(bt)&&console.error('Component attribute "'.concat(bt,'" has been renamed into "').concat(le,'". Old attribute "').concat(bt,'" is ignored.'))})),(0,mc.isInIframe)()&&this.classList.add("pnx-iframed")}_setupAPI(){if(this.loader=this.loader||(0,uc.createWebComp)("pnx-loader",{_parent:this}),!this.endpoint)return void console.warn("No endpoint is defined");this._loadsAPI=this.endpoint;let vt=this.endpoint;try{this.api=new Fl.A(this.endpoint,{fetch:this["fetch-options"]}),this.api.onceReady().then((()=>{if(vt!=this._loadsAPI||!this.api)return;let bt=this.api.getUnavailableFeatures(),le=this.api.getAvailableFeatures();le=0===bt.length?"\u2705 All features available":"\u2705 Available features: "+le.join(", "),bt=0===bt.length?"":"\ud83d\udeab Unavailable features: "+bt.join(", "),console.info('\ud83c\udf10 Connected to API "'.concat(this.api._metadata.name,'" (').concat(this.api._endpoint,")\n\u2139\ufe0f API runs STAC ").concat(this.api._metadata.stac_version," ").concat(this.api._metadata.geovisio_version?"& GeoVisio "+this.api._metadata.geovisio_version:"","\n ").concat(le,"\n ").concat(bt,"\n").trim())})).catch((vt=>this.loader.dismiss(vt,this._t.pnx.error_api))).finally((()=>delete this._loadsAPI))}catch(le){var bt;delete this._loadsAPI,null!==(bt=this.loader)&&void 0!==bt&&bt.dismiss?this.loader.dismiss(le,this._t.pnx.error_api):console.error(le)}}onceReady(){throw new Error("You must override this method on sub-class")}onceAPIReady(){return this.api?this.api.onceReady():new Promise((vt=>setTimeout(vt,250))).then(this.onceAPIReady.bind(this))}createRenderRoot(){return this}attributeChangedCallback(vt,bt,le){if(super.attributeChangedCallback(vt,bt,le),"endpoint"===vt&&(this._loadsAPI&&le&&this._loadsAPI===le||this.api&&this.api._endpoint===le||!le||((this._loadsAPI||this.api)&&(delete this.api,delete this._loadsAPI),this._setupAPI())),["picture","sequence"].includes(vt)){let ls,ho,Dl,Fl;"picture"===vt?(ls=this.sequence,Dl=this.sequence,ho=le,Fl=bt):(ls=le,Dl=bt,ho=this.picture,Fl=this.picture),this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{seqId:ls,picId:ho,prevSeqId:Dl,prevPicId:Fl}}))}}getClassName(){return"Basic"}select(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;arguments.length>2&&void 0!==arguments[2]&&arguments[2]&&(this.picture=null,this.sequence=null),this.picture=bt,this.sequence=vt}isWidthSmall(){return(null===this||void 0===this?void 0:this.offsetWidth)<576}isHeightSmall(){return(null===this||void 0===this?void 0:this.offsetHeight)<400}render(){return(0,Dl.qy)(ls||(ls=(0,ho.A)(["<p>Should not be used directly, use Viewer/CoverageMap/Editor instead</p>"])))}getSubComponentsNames(){return["loader","api"]}getAPI(){return this.api}addEventListener(vt,bt,le){let ls=vt.split(":").shift();if(ls&&this.getSubComponentsNames().includes(ls)){var ho;const Dl=vt.substring(ls.length+1);null!==(ho=this[ls])&&void 0!==ho&&ho.addEventListener?this[ls].addEventListener(Dl,bt,le):setTimeout((()=>this.addEventListener(vt,bt,le)),50)}else super.addEventListener(vt,bt,le)}static GetJSONConverter(){return{fromAttribute:vt=>null===vt||void 0===vt||""===vt?null:"object"===typeof vt||Array.isArray(vt)?vt:Ac().parse(vt),toAttribute:vt=>null===vt||void 0===vt||""===vt?"":"string"===typeof vt?vt:Ac().stringify(vt)}}}Basic.properties={picture:{type:String,reflect:!0},sequence:{type:String,reflect:!0},"fetch-options":{converter:Basic.GetJSONConverter()},lang:{type:String},endpoint:{type:String}}},153:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>CoverageMap});var ls=le(9379),ho=le(9039),Dl=le(5642),Fl=le(927),sc=(le(7776),le(2118)),uc=le(7208),mc=le(4997);class CoverageMap extends ho.A{constructor(){super(),this["map-style"]=this.getAttribute("map-style")||(0,uc.MapTiles)();try{this["map-style"]=JSON.parse(this["map-style"])}catch(vt){}this.mapStyleComposer=new mc.A(this),this.mapStyleComposer.addBasemap("streets",this["map-style"],!0),this._mapContainer=document.createElement("div"),this.onceAPIReady().then((()=>{this.loader.setAttribute("value",30),this._initParams=new sc.Ay(sc.Ay.GetComponentProperties(CoverageMap,this));const vt=this.user&&""!=this.user;this.mapStyleComposer._createPanoramaxEndpointFromAPI("default",this.api,!vt),vt&&this.mapStyleComposer._createPanoramaxEndpointForUser(this.user),this._initMap()}))}attributeChangedCallback(vt,bt,le){var ls;super.attributeChangedCallback(vt,bt,le),"user"===vt&&1===(null===(ls=this.api)||void 0===ls?void 0:ls._isReady)&&(le&&""!=le?this.mapStyleComposer._createPanoramaxEndpointForUser(le):this.mapStyleComposer.switchPanoramaxEndpoint("default"))}disconnectedCallback(){var vt;super.disconnectedCallback(),null===(vt=this.map)||void 0===vt||vt.destroy()}getClassName(){return"CoverageMap"}onceReady(){return this.map&&this.map.waitForEnoughMapLoaded?this.map.waitForEnoughMapLoaded():new Promise((vt=>setTimeout(vt,100))).then(this.onceReady.bind(this))}render(){return[this.loader,this._mapContainer]}getSubComponentsNames(){return super.getSubComponentsNames().concat(["map","mapStyleComposer"])}_initMap(){this.map=new Dl.A(this,this._mapContainer,Object.assign({},this._initParams.getMapInit(),{hash:!0})),this.map.addControl(new Fl.NavigationControl({showCompass:!1})),this.loader.setAttribute("value",70),this.addEventListener("select",this._onSelect.bind(this)),this.map.on("picture-click",(vt=>this.select(vt.seqId,vt.picId))),this.map.on("sequence-click",(vt=>this.select(vt.seqId))),this.map.waitForEnoughMapLoaded().then((async()=>{await(0,sc.mK)(this.map,this._initParams.getMapPostInit()),this.loader.dismiss()}))}_onSelect(vt){if(vt.detail.picId||vt.detail.seqId){const bt=this.map.getLayersOrder().find((bt=>bt.endsWith(vt.detail.picId?"pictures":"sequences"))),le=this.map.queryRenderedFeatures({layers:[bt],filter:["==",["get","id"],vt.detail.picId||vt.detail.seqId]});le.length>=0&&null!=le[0]&&this.map._attachPreviewToPictures({features:le},bt)}}}CoverageMap.properties=(0,ls.A)({"map-options":{converter:ho.A.GetJSONConverter()},"map-style":{type:String},user:{type:String}},ho.A.properties),customElements.define("pnx-coverage-map",CoverageMap)},1752:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Editor});var ls=le(9379),ho=(le(7365),le(9039)),Dl=le(5642),Fl=le(9048),sc=le(508),uc=le(8340),mc=le(1545),gc=le(5995),Ac=le(4997),Ec=le(7208);const kc="sequence-headings";class Editor extends ho.A{constructor(){super(),this.raster=null,this.background="streets",this["map-style"]=this.getAttribute("map-style")||(0,Ec.MapTiles)();try{this["map-style"]=JSON.parse(this["map-style"])}catch(vt){}this.mapStyleComposer=new Ac.A(this),this.mapStyleComposer.addBasemap("streets",this["map-style"],!0),this._psvContainer=document.createElement("div"),this._psvContainer.setAttribute("slot","bg"),this._mapContainer=document.createElement("div"),this._mapContainer.setAttribute("slot","bg"),this.grid=(0,gc.createWebComp)("pnx-cornered-grid"),this.grid.appendChild(this._psvContainer),this.grid.appendChild(this._mapContainer),this.onceAPIReady().then((()=>{this.loader.setAttribute("value",30),this.sequence||this.loader.dismiss({},"No sequence is selected"),this.addEventListener("select",this._onSelect.bind(this)),this._initPSV(),this._initMap()}))}disconnectedCallback(){var vt,bt;super.disconnectedCallback(),null===(vt=this.map)||void 0===vt||vt.destroy(),null===(bt=this.psv)||void 0===bt||bt.destroy()}getClassName(){return"Editor"}onceReady(){var vt,bt;return this.map&&this.psv&&null!==(vt=(bt=this.map).loaded)&&void 0!==vt&&vt.call(bt)?Promise.resolve():new Promise((vt=>setTimeout(vt,100))).then(this.onceReady.bind(this))}connectedCallback(){if(super.connectedCallback(),this._moveChildToGrid(),window.addEventListener("DOMContentLoaded",(()=>{this._moveChildToGrid()}),{once:!0}),this.raster){const vt=this.mapStyleComposer._createRasterBasemap(this.raster);"aerial"===this.background&&this.mapStyleComposer.switchBasemap(vt)}}render(){return[this.loader,this.grid]}getSubComponentsNames(){return super.getSubComponentsNames().concat(["map","psv","grid","mapStyleComposer"])}_initPSV(){try{this.psv=new Fl.Ay(this,this._psvContainer),this.psv._myVTour.datasource.nodeResolver=this._getNode.bind(this),this.grid.appendChild((0,gc.createWebComp)("pnx-widget-player",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:"xl",more:"never"}))}catch(vt){let bt=mc.IJ.isWebGLSupported?this._t.pnx.error_psv:this._t.pnx.error_webgl;this.loader.dismiss(vt,bt)}}_initMap(){try{this.map=new Dl.A(this,this._mapContainer,{background:this.background,zoom:15,picMarkerDraggable:!0}),(0,uc.linkMapAndPhoto)(this),this.loader.setAttribute("value",50),this._loadSequence(),this.map.once("load",(()=>{this.mapStyleComposer.hasManyBasemaps()&&this._addMapBackgroundWidget()}));const vt=this.map._picMarker.setRotation.bind(this.map._picMarker);this.map._picMarker.setRotation=bt=>(bt=void 0===this._lastRelHeading?bt:bt+this._lastRelHeading-this.psv.getPictureRelativeHeading(),vt(bt))}catch(vt){this.loader.dismiss(vt,this._t.pnx.error_psv)}}_loadSequence(){return this.loader.setAttribute("value",60),this.api.getSequenceItems(this.sequence).then((vt=>{this.loader.setAttribute("value",80),this._sequenceData=vt.features;const bt={type:"FeatureCollection",features:[{id:this.sequence,type:"Feature",properties:{id:this.sequence},geometry:{type:"LineString",coordinates:vt.features.map((vt=>vt.geometry.coordinates))}},...vt.features.map((vt=>(vt.properties.id=vt.id,vt.properties.sequences=[this.sequence],vt)))]};if(this.map.once("styledata",(()=>this.loader.dismiss())),this.mapStyleComposer.addPanoramaxEndpoint("default",{sources:{geovisio:{type:"geojson",data:bt}}},!0),this.picture){const bt=vt.features.find((vt=>vt.id===this.picture));bt?(this.select(this.sequence,this.picture,!0),this.map.jumpTo({center:bt.geometry.coordinates,zoom:18})):console.log("Picture with ID",bt,"was not found")}else{const bt=[...vt.features[0].geometry.coordinates,...vt.features[0].geometry.coordinates];for(let le=1;le<vt.features.length;le++){const ls=vt.features[le].geometry.coordinates;ls[0]<bt[0]&&(bt[0]=ls[0]),ls[1]<bt[1]&&(bt[1]=ls[1]),ls[0]>bt[2]&&(bt[2]=ls[0]),ls[1]>bt[3]&&(bt[3]=ls[1])}this.map.fitBounds(bt,{animate:!1})}})).catch((vt=>this.loader.dismiss(vt,this._t.pnx.error_api)))}_getNode(vt){const bt=this._sequenceData.find((bt=>bt.properties.id===vt)),le=bt?(0,sc.apiFeatureToPSVNode)(bt,this._t,this._isInternetFast,void 0,(vt=>this.api.cleanResourceURL(vt))):null;return le&&delete le.links,le}_addMapBackgroundWidget(){const vt=(0,gc.createWebComp)("pnx-map-background",{_parent:this,size:"sm",slot:"bottom-left"});this.grid.appendChild(vt)}_moveChildToGrid(){Array.from(this.querySelectorAll("[slot]")).forEach((vt=>{var bt;null!==(bt=vt.tagName)&&void 0!==bt&&bt.toLowerCase().startsWith("pnx-")&&(vt._parent=this,vt._t=this._t),this.grid.appendChild(vt)}))}previewSequenceHeadingChange(vt){const bt=void 0!==this.map.getLayer(kc);if(this.map._picMarkerPreview.remove(),void 0===vt)return delete this._lastRelHeading,bt&&this.map.setLayoutProperty(kc,"visibility","none"),void(this.picture&&this.map._picMarker.setRotation(this.psv.getXY().x));this._lastRelHeading=vt,bt||this.map.addLayer({id:kc,type:"symbol",source:"geovisio",layout:{"icon-image":"pnx-marker","icon-overlap":"always","icon-size":.8}});const le=-this.psv.getPictureRelativeHeading();this.map.setLayoutProperty(kc,"visibility","visible"),this.map.setLayoutProperty(kc,"icon-rotate",["+",["get","view:azimuth"],le,vt]);const ls=[["==",["geometry-type"],"Point"]];this.picture&&ls.push(["!=",["get","id"],this.picture]),this.map.setFilter(kc,["all",...ls]),this.picture&&this.map._picMarker.setRotation(this.psv.getXY().x)}_onSelect(){void 0!==this._lastRelHeading&&this.previewSequenceHeadingChange(this._lastRelHeading)}}Editor.properties=(0,ls.A)({raster:{converter:ho.A.GetJSONConverter()},background:{type:String},"map-style":{type:String}},ho.A.properties),customElements.define("pnx-editor",Editor)},3407:(vt,bt,le)=>{"use strict";le.d(bt,{$p:()=>Ec,Ay:()=>PhotoViewer,RD:()=>du});var ls=le(9379),ho=(le(970),le(1545)),Dl=le(4451),Fl=le(9039),sc=le(9048),uc=le(5995),mc=le(7343),gc=le(2118),Ac=le(4207);const Ec=20,kc=Math.PI/6,du=["pnx-mini","pnx-widget-player","pnx-widget-zoom"];class PhotoViewer extends Fl.A{constructor(){super(),this["psv-options"]={},this["url-parameters"]=this.getAttribute("url-parameters")||"true",this["keyboard-shortcuts"]=this.getAttribute("keyboard-shortcuts")||"true",this["skip-tags-menu-opening"]="true"!==(this.getAttribute("skip-tags-menu-opening")||"false"),this["share-base-url"]=this.getAttribute("share-base-url")||null,this.widgets=this.getAttribute("widgets")||"true",this.grid=(0,uc.createWebComp)("pnx-cornered-grid"),this.psvContainer=document.createElement("div"),this.psvContainer.setAttribute("slot","bg"),this.grid.appendChild(this.psvContainer),this.popup=(0,uc.createWebComp)("pnx-popup",{_parent:this,onclose:this._onPopupClose.bind(this)}),this.tabindex=0,this._sequencesMetadata={}}_createInitParamsHandler(){var vt,bt;this._initParams=new gc.Ay(gc.Ay.GetComponentProperties(PhotoViewer,this),Object.assign({},null===(vt=this.urlHandler)||void 0===vt?void 0:vt.currentURLParams(),null===(bt=this.urlHandler)||void 0===bt?void 0:bt.currentURLParams(!0)),{disableAnnotations:localStorage.getItem(mc.DISABLE_ANNOTATIONS_PARAM)})}_initWidgets(){"false"!==this._initParams.getParentPostInit().widgets&&((0,mc.isInIframe)()||(this.grid.appendChild((0,uc.createWebComp)("pnx-widget-player",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:this.isHeightSmall()?"md":"xl"})),this.grid.appendChild((0,uc.createWebComp)("pnx-annotations-switch",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:this.isHeightSmall()?"md":"xl"}))),(0,mc.isInIframe)()?(this.legend=(0,uc.createWebComp)("pnx-widget-legend",{slot:"bottom-right",light:!0,_parent:this,focus:this._initParams.getParentPostInit().focus,picture:this._initParams.getParentPostInit().picture}),this.grid.appendChild(this.legend)):this.isWidthSmall()?(this.legend=(0,uc.createWebComp)("pnx-picture-legend",{_parent:this}),this.bottomDrawer=(0,uc.createWebComp)("pnx-bottom-drawer",{slot:"bottom",_parent:this,class:this._initParams.getParentPostInit().willLoadPicture?void 0:"pnx-hidden"}),this.bottomDrawer.appendChild(this.legend),this.grid.appendChild(this.bottomDrawer),this.addEventListener("select",(vt=>{(0,mc.isNullId)(vt.detail.picId)?this.bottomDrawer.classList.add("pnx-hidden"):this.bottomDrawer.classList.remove("pnx-hidden")}))):(this.legend=(0,uc.createWebComp)("pnx-widget-legend",{slot:this.isWidthSmall()?void 0:"top-left",_parent:this,focus:this._initParams.getParentPostInit().focus,picture:this._initParams.getParentPostInit().picture}),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-zoom",{slot:"bottom-right",class:"pnx-print-hidden",_parent:this})),this.grid.appendChild(this.legend)))}connectedCallback(){super.connectedCallback(),this.presetsManager=new Ac.A(this.lang),"false"!==this["url-parameters"]&&(this.urlHandler=new Dl.A(this),this.onceReady().then((()=>{this.urlHandler.listenToChanges(),this.urlHandler._onParentChange()}))),this.onceAPIReady().then(this._postAPIInit.bind(this)),this._moveChildToGrid(),window.addEventListener("DOMContentLoaded",(()=>{this._moveChildToGrid()}),{once:!0})}disconnectedCallback(){var vt,bt;super.disconnectedCallback(),null===(vt=this.urlHandler)||void 0===vt||vt.destroy(),null===(bt=this.psv)||void 0===bt||bt.destroy(),document.body.removeEventListener("click",this._toggleKeyboardBasedOnFocus),window.removeEventListener("keypress",this._toggleKeyboardBasedOnFocus)}getClassName(){return"PhotoViewer"}onceReady(){return this.oncePSVReady().then((()=>this._initParams.getParentPostInit().willLoadPicture&&!this.psv.getPictureMetadata()?this.onceFirstPicLoaded():Promise.resolve()))}render(){return[this.loader,this.grid,this.popup]}getSubComponentsNames(){return super.getSubComponentsNames().concat(["psv","grid","popup","urlHandler"])}oncePSVReady(){let vt;return new Promise((bt=>{vt=setInterval((()=>{this.psv&&"object"===typeof this.psv&&(this.psv.container?(clearInterval(vt),bt()):this.psv.addEventListener&&this.psv.addEventListener("ready",(()=>{clearInterval(vt),bt()}),{once:!0}))}),250)}))}onceFirstPicLoaded(){return this.oncePSVReady().then((()=>this.psv.getPictureMetadata()?Promise.resolve():new Promise((vt=>{this.psv.addEventListener("picture-loaded",vt,{once:!0})}))))}async _postAPIInit(){this.loader.setAttribute("value",30),this._createInitParamsHandler();const vt=this._initParams.getParentPostInit();this._initPSV(),this._initWidgets(),(0,gc.ai)(this,vt),vt.keyboardShortcuts&&this._handleKeyboardManagement(),vt.willLoadPicture?this.psv.getPictureMetadata()?this.loader.dismiss():this.psv.addEventListener("picture-loaded",(()=>this.loader.dismiss()),{once:!0}):this.loader.dismiss()}_initPSV(){try{this.psv=new sc.Ay(this,this.psvContainer,(0,ls.A)({shouldGoFast:this._psvShouldGoFast.bind(this),keyboard:"always",keyboardActions:(0,ls.A)((0,ls.A)({},ho.zY.keyboardActions),{},{8:"ROTATE_UP",2:"ROTATE_DOWN",4:"ROTATE_LEFT",6:"ROTATE_RIGHT",PageUp:()=>this.psv.goToNextPicture(),9:()=>this.psv.goToNextPicture(),PageDown:()=>this.psv.goToPrevPicture(),3:()=>this.psv.goToPrevPicture(),5:()=>this.moveCenter(),"*":()=>this.moveCenter(),Home:()=>{var vt;return null===(vt=this._toggleFocus)||void 0===vt?void 0:vt.call(this)},7:()=>{var vt;return null===(vt=this._toggleFocus)||void 0===vt?void 0:vt.call(this)},End:()=>this.mini.toggleAttribute("collapsed"),1:()=>this.mini.toggleAttribute("collapsed")," ":()=>this.psv.toggleSequencePlaying(),0:()=>this.psv.toggleSequencePlaying()})},this._initParams.getPSVInit())),this.oncePSVReady().then((()=>{this.loader.setAttribute("value",50),(0,gc.Vy)(this.psv,this._initParams.getPSVPostInit())})),this.psv.addEventListener("sequence-playing",(()=>this.classList.add("pnx-playing"))),this.psv.addEventListener("sequence-stopped",(()=>this.classList.remove("pnx-playing"))),this.psv.addEventListener("dblclick",(()=>clearTimeout(this._gridFocus))),this.psv.addEventListener("click",(vt=>{clearTimeout(this._gridFocus),"CANVAS"===vt.data.target.tagName&&(!this.isMapWide||this.isMapWide&&!this.isMapWide())&&(this._gridFocus=setTimeout((()=>{this.grid.toggleAway()?this.classList.add("pnx-grid-toggled"):this.classList.remove("pnx-grid-toggled")}),250))})),this.psvContainer.addEventListener("mousemove",(()=>{this.grid._hidden&&(clearTimeout(this._gridFocus),this.grid.toggleAway(!0),this.classList.remove("pnx-grid-toggled"))}))}catch(vt){let bt=ho.IJ.isWebGLSupported?this._t.pnx.error_psv:this._t.pnx.error_webgl;this.loader.dismiss(vt,bt)}}_enableKeyboard(){this.psv.startKeyboardControl()}_disableKeyboard(){this.psv.stopKeyboardControl()}_toggleKeyboardBasedOnFocus(vt){const bt=(null===vt||void 0===vt?void 0:vt.target)||document.activeElement;if(this.contains(bt)){for(let vt of this.grid.childNodes)if("bg"!==vt.getAttribute("slot")&&!du.includes(vt.tagName.toLowerCase())&&vt.contains(bt))return void this._disableKeyboard();if(null!==this.popup.getAttribute("visible"))return void this._disableKeyboard();this._enableKeyboard()}else this._disableKeyboard()}_handleKeyboardManagement(){window.addEventListener("click",(vt=>this._toggleKeyboardBasedOnFocus(vt))),window.addEventListener("keypress",this._toggleKeyboardBasedOnFocus.bind(this)),this.popup.addEventListener("open",this._disableKeyboard.bind(this)),this.popup.addEventListener("close",this._enableKeyboard.bind(this)),this.psv.addEventListener("click",this._enableKeyboard.bind(this));for(let vt of this.grid.childNodes)"bg"===vt.getAttribute("slot")||du.includes(vt.tagName.toLowerCase())||(vt.addEventListener("focusin",this._disableKeyboard.bind(this)),vt.addEventListener("focusout",(()=>{null===this.popup.getAttribute("visible")&&this._enableKeyboard()})))}_psvShouldGoFast(){return this.psv._sequencePlaying&&this.psv.getTransitionDuration()<1e3}_moveChildToGrid(){Array.from(this.querySelectorAll("[slot]")).forEach((vt=>{var bt;null!==(bt=vt.tagName)&&void 0!==bt&&bt.toLowerCase().startsWith("pnx-")&&(vt._parent=this,vt._t=this._t),"editors"===vt.getAttribute("slot")?this.onceReady().then((()=>{var bt;return null===(bt=this.legend)||void 0===bt?void 0:bt.appendChild(vt)})):this.grid.appendChild(vt)}))}setPopup(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;vt?this.popup.setAttribute("visible",""):this.popup.removeAttribute("visible"),this.popup.innerHTML="","string"===typeof bt?this.popup.innerHTML=bt:Array.isArray(bt)&&bt.forEach((vt=>this.popup.appendChild(vt)))}_onPopupClose(){this.dispatchEvent(new CustomEvent("focus-changed",{detail:{focus:this.map&&this.isMapWide()?"map":"pic"}}))}_showQualityScoreDoc(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-quality-score-doc",{_t:this._t})])}_showReportForm(){if(!this.psv.getPictureMetadata())throw new Error("No picture currently selected");this.setPopup(!0,[(0,uc.createWebComp)("pnx-report-form",{_parent:this})])}_showShareOptions(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-share-menu",{_parent:this,"base-url":this["share-base-url"]})])}_showSemanticsDoc(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-semantics-doc",{_t:this._t})])}_showSemanticsDownload(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-semantics-download",{_t:this._t})])}moveCenter(){this.psv.getPictureMetadata()&&this._psvAnimate({speed:sc.LM,yaw:0,pitch:0,zoom:sc.cS})}moveLeft(){this._moveToDirection("left")}moveRight(){this._moveToDirection("right")}moveUp(){this._moveToDirection("up")}moveDown(){this._moveToDirection("down")}_moveToDirection(vt){let bt=this.psv.getPosition();switch(vt){case"up":bt.pitch+=kc;break;case"left":bt.yaw-=kc;break;case"down":bt.pitch-=kc;break;case"right":bt.yaw+=kc}this._psvAnimate((0,ls.A)({speed:sc.LM},bt))}_psvAnimate(vt){this._lastPsvAnim&&this._lastPsvAnim.cancel(),this._lastPsvAnim=this.psv.animate(vt)}addEventListener(vt,bt,le){super.addEventListener(vt,bt,le)}}PhotoViewer.properties=(0,ls.A)({"psv-options":{converter:Fl.A.GetJSONConverter()},widgets:{type:String},"url-parameters":{type:String},"keyboard-shortcuts":{type:String},tabindex:{type:Number},"skip-tags-menu-opening":{type:String},"share-base-url":{type:String}},Fl.A.properties),customElements.define("pnx-photo-viewer",PhotoViewer)},8743:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Viewer});var ls=le(9379),ho=(le(9616),le(8340)),Dl=le(3407),Fl=le(2771),sc=le(7343),uc=le(5995),mc=le(7208),gc=le(9683),Ac=le(2e3),Ec=le(2118),kc=le(4997),du=le(5254);const _u=100;class Viewer extends Dl.Ay{constructor(){super(),this["map-options"]=!0,this["map-style"]=this.getAttribute("map-style")||(0,mc.MapTiles)(),this.geocoder=this.getAttribute("geocoder")||"nominatim";try{this["map-style"]=JSON.parse(this["map-style"])}catch(vt){}this.mini=(0,uc.createWebComp)("pnx-mini",{slot:"bottom-left",_parent:this,onexpand:this._onMiniExpand.bind(this),collapsed:!!(0,sc.isNullId)(this.picture)||void 0}),this.mini.addEventListener("expand",this._toggleFocus.bind(this)),this.grid.appendChild(this.mini),this.mapContainer=document.createElement("div"),this.tabindex=0}connectedCallback(){super.connectedCallback(),this.metacatalog=this.getAttribute("metacatalog"),[null,void 0,""].includes(this.metacatalog)&&(this.metacatalog=(0,mc.PanoramaxMetaCatalogURL)()),this["endpoint-to-use"]=this.getAttribute("endpoint-to-use"),this.mapStyleComposer=new kc.A(this),this.mapStyleComposer.addBasemap("streets",this["map-style"],!0)}_createInitParamsHandler(){var vt,bt;this._initParams=new Ec.Ay(Ec.Ay.GetComponentProperties(Viewer,this),Object.assign({},null===(vt=this.urlHandler)||void 0===vt?void 0:vt.currentURLParams(),null===(bt=this.urlHandler)||void 0===bt?void 0:bt.currentURLParams(!0)),{map:(0,ho.getMapParamsFromLocalStorage)(),disableAnnotations:localStorage.getItem(sc.DISABLE_ANNOTATIONS_PARAM)})}_initWidgets(){var vt,bt;"false"!==this._initParams.getParentPostInit().widgets&&(this.grid.appendChild((0,uc.createWebComp)("pnx-widget-zoom",{slot:this.isWidthSmall()?"top-left":"bottom-right",class:this.isWidthSmall()?"pnx-only-map pnx-print-hidden":"pnx-print-hidden",_parent:this})),(0,sc.isInIframe)()?(this.legend=(0,uc.createWebComp)("pnx-widget-legend",{slot:"bottom-right",light:!0,_parent:this,focus:this._initParams.getParentPostInit().focus,picture:this._initParams.getParentPostInit().picture}),this.grid.appendChild(this.legend)):this.isWidthSmall()?(this.legend=(0,uc.createWebComp)("pnx-picture-legend",{_parent:this}),this.bottomDrawer=(0,uc.createWebComp)("pnx-bottom-drawer",{slot:"bottom",_parent:this,class:this._initParams.getParentPostInit().willLoadPicture?void 0:"pnx-hidden"}),this.bottomDrawer.appendChild(this.legend),this.grid.appendChild(this.bottomDrawer),this.addEventListener("select",(vt=>{(0,sc.isNullId)(vt.detail.picId)?this.bottomDrawer.classList.add("pnx-hidden"):this.bottomDrawer.classList.remove("pnx-hidden")}))):(this.legend=(0,uc.createWebComp)("pnx-widget-legend",{slot:this.isWidthSmall()?"top":"top-left",_parent:this,focus:this._initParams.getParentPostInit().focus,picture:this._initParams.getParentPostInit().picture}),this._miniPicLegend=(0,uc.createWebComp)("pnx-mini-picture-legend",{_parent:this}),this.grid.appendChild(this.legend)),(0,sc.isInIframe)()||(this.grid.appendChild((0,uc.createWebComp)("pnx-widget-player",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:this.isHeightSmall()?"md":"xl"})),this.grid.appendChild((0,uc.createWebComp)("pnx-annotations-switch",{slot:"top",_parent:this,class:"pnx-only-psv pnx-print-hidden",size:this.isHeightSmall()?"md":"xl"})),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-geosearch",{slot:this.isWidthSmall()?"top-right":"top-left",_parent:this,class:"pnx-only-map pnx-print-hidden",geocoder:this._initParams.getParentPostInit().geocoder})),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-mapfilters",{slot:this.isWidthSmall()?"top-right":"top-left",_parent:this,"user-search":null!==this.api._endpoints.user_search&&null!==this.api._endpoints.user_tiles,"quality-score":(null===(vt=this.map)||void 0===vt||null===(bt=vt._hasQualityScore)||void 0===bt?void 0:bt.call(vt))||!1,"no-source":!this.hasTwoAPIs(),class:"pnx-only-map pnx-print-hidden"})),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-semantics-filters",{slot:this.isWidthSmall()?"top-right":"top-left",_parent:this,class:"pnx-only-map pnx-print-hidden"})),this.grid.appendChild((0,uc.createWebComp)("pnx-widget-maplayers",{slot:"top-right",_parent:this,class:"pnx-only-map pnx-print-hidden"}))))}disconnectedCallback(){var vt;super.disconnectedCallback(),null===(vt=this.map)||void 0===vt||vt.destroy()}getClassName(){return"Viewer"}getSubComponentsNames(){return super.getSubComponentsNames().concat(["mini","map","mapStyleComposer"])}onceReady(){return Promise.all([this.oncePSVReady(),this.onceMapReady()]).then((()=>this._initParams.getParentPostInit().willLoadPicture&&!this.psv.getPictureMetadata()?this.onceFirstPicLoaded():Promise.resolve()))}onceAPIReady(){return this.api?this.api.onceReady():new Promise((vt=>setTimeout(vt,250))).then(this.onceAPIReady.bind(this))}onceAllAPIsReady(){return this.getAPI()?this.getAPI().onceReady():new Promise((vt=>setTimeout(vt,250))).then(this.onceAllAPIsReady.bind(this))}attributeChangedCallback(vt,bt,le){var ls,ho;if(super.attributeChangedCallback(vt,bt,le),"picture"===vt)if(null===(ls=this.legend)||void 0===ls||null===(ho=ls.setAttribute)||void 0===ho||ho.call(ls,"picture",le),(0,sc.isNullId)(bt)&&!(0,sc.isNullId)(le)&&this.mini.removeAttribute("collapsed"),(0,sc.isNullId)(le))this.map&&this.isMapWide()?this.mini.classList.add("pnx-hidden"):this.map&&!this.isMapWide()&&this._setFocus("map");else if((0,sc.isNullId)(bt)&&this.sequence==this._initParams.getParentPostInit().sequence&&!this._initParams.getParentPostInit().picture){var Dl,Fl;this.mini.classList.remove("pnx-hidden"),this.mini.removeAttribute("collapsed"),"closed"===(null===(Dl=this.bottomDrawer)||void 0===Dl||null===(Fl=Dl.getAttribute)||void 0===Fl?void 0:Fl.call(Dl,"openness"))&&this.bottomDrawer.setAttribute("openness","half-opened")}else{var uc,mc;if(this.mini.classList.remove("pnx-hidden"),(0,sc.isNullId)(bt))this._setFocus("pic"),"closed"===(null===(uc=this.bottomDrawer)||void 0===uc||null===(mc=uc.getAttribute)||void 0===mc?void 0:mc.call(uc,"openness"))&&this.bottomDrawer.setAttribute("openness","half-opened")}"focus"===vt&&this._setFocus(le)}onceMapReady(){if(!this["map-options"])return Promise.resolve();let vt;return new Promise((bt=>{vt=setInterval((()=>{var le,ls,ho;"object"===typeof this.map&&(null!==(le=this.map)&&void 0!==le&&null!==(ls=le.loaded)&&void 0!==ls&&ls.call(le)?(clearInterval(vt),bt()):null!==(ho=this.map)&&void 0!==ho&&ho.once&&this.map.once("render",(()=>{clearInterval(vt),bt()})))}),250)}))}async _initMap(){await new Promise((vt=>{const bt=this._initParams.getMapInit();bt.raster&&this.mapStyleComposer._createRasterBasemap(bt.raster),this.map=new Fl.A(this,this.mapContainer,bt),(0,ho.saveMapParamsToLocalStorage)(this.map),this.map.waitForEnoughMapLoaded().then((()=>{this.loader.setAttribute("value",Math.max(75,parseInt(this.loader.getAttribute("value"))))})),vt()})),await(0,Ec.mK)(this.map,this._initParams.getMapPostInit()),(0,ho.initMapKeyboardHandler)(this),(0,ho.linkMapAndPhoto)(this)}hasTwoAPIs(){return this.apiMC&&this.api||"false"!==this.metacatalog}getAPI(){var vt;let bt=this.mapStyleComposer.panoramax||this["endpoint-to-use"]||(this.hasTwoAPIs()?"metacatalog":"default");return"metacatalog"===bt&&"false"===this.metacatalog&&(bt="default"),null!==(vt=bt)&&void 0!==vt&&vt.startsWith("metacatalog")?this.apiMC:this.api}async _postAPIInit(){this.loader.setAttribute("value",30),this._createInitParamsHandler();const vt=this._initParams.getParentPostInit(),bt=[null,void 0,"","default"].includes(vt.users);await this._lookForMetacatalog(!bt),this.mapStyleComposer._createPanoramaxEndpointFromAPI("default",this.api,bt),this._initPSV(),await this._initMap(),this._initWidgets(),this._moveChildToGrid(),(0,Ec.iz)(this,vt),vt.keyboardShortcuts&&this._handleKeyboardManagement(),vt.willLoadPicture?this.psv.addEventListener("picture-loaded",(()=>{(0,Ec.iz)(this,vt),this.loader.dismiss()}),{once:!0}):this.map.waitForEnoughMapLoaded().then((()=>{this.loader.dismiss()}))}async _lookForMetacatalog(vt){this.hasTwoAPIs()&&(this.apiMC=new du.A(this.metacatalog+"/api"),await this.apiMC.onceReady(),this.mapStyleComposer._createPanoramaxEndpointFromAPI("metacatalog",this.apiMC,vt))}_enableKeyboard(){this.map&&this.isMapWide()?this._enableKeyboardMap():this._enableKeyboardPSV()}_enableKeyboardMap(){this.psv.stopKeyboardControl(),this.map.keyboard.enable()}_enableKeyboardPSV(){this.psv.startKeyboardControl(),this.map.keyboard.disable()}_disableKeyboard(){this.psv.stopKeyboardControl(),this.map.keyboard.disable()}_handleKeyboardManagement(){window.addEventListener("click",(vt=>this._toggleKeyboardBasedOnFocus(vt))),window.addEventListener("keypress",this._toggleKeyboardBasedOnFocus.bind(this)),this.addEventListener("focus-changed",(vt=>{this.popup.getAttribute("visible")?this._disableKeyboard():"map"===vt.detail.focus?this._enableKeyboardMap():this._enableKeyboardPSV()})),this.popup.addEventListener("open",this._disableKeyboard.bind(this)),this.popup.addEventListener("close",this._enableKeyboard.bind(this)),this.psv.addEventListener("click",this._enableKeyboardPSV.bind(this));for(let vt of this.grid.childNodes)"bg"===vt.getAttribute("slot")||Dl.RD.includes(vt.tagName.toLowerCase())||(vt.addEventListener("focusin",this._disableKeyboard.bind(this)),vt.addEventListener("focusout",(()=>{null===this.popup.getAttribute("visible")&&this._enableKeyboard()})))}moveCenter(){const vt=this.psv.getPictureMetadata();vt&&(this.map&&this.isMapWide()?this.map.flyTo({center:vt.gps,zoom:20}):super.moveCenter())}_moveToDirection(vt){if(this.map&&this.isMapWide()){let bt;switch(vt){case"up":bt=[0,-100];break;case"left":bt=[-100,0];break;case"down":bt=[0,_u];break;case"right":bt=[_u,0]}this.map.panBy(bt)}else super._moveToDirection(vt)}isMapWide(){return this.mapContainer.parentNode==this.grid}_setFocus(vt){var bt,le,ls,ho;let Dl=arguments.length>1&&void 0!==arguments[1]&&arguments[1],Fl=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("map"===vt&&!this.map)throw new Error("Map is not enabled");if(!["map","pic"].includes(vt))throw new Error("Invalid focus value (should be pic or map)");if(this.focus=vt,(Fl||("map"!==vt||!this.map||!this.isMapWide())&&("pic"!==vt||this.map&&this.isMapWide()))&&("map"===vt?(this.psvContainer.parentNode==this.grid&&(this.grid.removeChild(this.psvContainer),this.psvContainer.removeAttribute("slot")),this.mapContainer.parentNode==this.mini&&this.mini.removeChild(this.mapContainer),this.mapContainer.setAttribute("slot","bg"),this.grid.appendChild(this.mapContainer),this.mini.appendChild(this.psvContainer),this.mini.icon=(0,uc.fa)(gc.pt),this._miniPicLegend&&this.mini.appendChild(this._miniPicLegend),(0,sc.isNullId)(this.picture)?this.mini.classList.add("pnx-hidden"):this.mini.classList.remove("pnx-hidden"),this.map.getCanvas().focus()):(this.mapContainer.parentNode==this.grid&&(this.grid.removeChild(this.mapContainer),this.mapContainer.removeAttribute("slot")),this.psvContainer.parentNode==this.mini&&(this.mini.removeChild(this.psvContainer),this._miniPicLegend&&this.mini.removeChild(this._miniPicLegend)),this.psvContainer.setAttribute("slot","bg"),this.grid.appendChild(this.psvContainer),this.mini.classList.remove("pnx-hidden"),this.mini.appendChild(this.mapContainer),this.mini.icon=(0,uc.fa)(Ac.e5),this.psvContainer.focus()),null===this||void 0===this||null===(bt=this.map)||void 0===bt||null===(le=bt.resize)||void 0===le||le.call(bt),this.psv.autoSize(),this.psv.forceRefresh(),null===(ls=this.legend)||void 0===ls||null===(ho=ls.setAttribute)||void 0===ho||ho.call(ls,"focus",this.focus),!Dl)){const bt=new CustomEvent("focus-changed",{detail:{focus:vt}});this.dispatchEvent(bt)}}_toggleFocus(){this._setFocus(this.isMapWide()?"pic":"map")}_onMiniExpand(){this.map.resize(),this.psv.autoSize()}_showLocationPrecisionDoc(){this.setPopup(!0,[(0,uc.createWebComp)("pnx-location-precision-doc",{_t:this._t})])}}Viewer.properties=(0,ls.A)({"map-options":{converter:Dl.Ay.GetJSONConverter()},"map-style":{type:String},focus:{type:String,reflect:!0},geocoder:{type:String},tabindex:{type:Number},metacatalog:{type:String},"endpoint-to-use":{type:String}},Dl.Ay.properties),customElements.define("pnx-viewer",Viewer)},3921:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{Basic:()=>ls.A,CoverageMap:()=>ho.A,Editor:()=>Dl.A,PhotoViewer:()=>sc.Ay,Viewer:()=>Fl.A});var ls=le(9039),ho=le(153),Dl=le(1752),Fl=le(8743),sc=le(3407)},9341:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{core:()=>ls,layout:()=>ho,menus:()=>Dl,ui:()=>Fl});var ls=le(3921),ho=le(456),Dl=le(8794),Fl=le(7091)},6784:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>BottomDrawer});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(1198),uc=le(5995);const mc={opened:0,"half-opened":.7,closed:1};class BottomDrawer extends Fl.WF{constructor(){super(),this._isDragging=!1,this.openness="half-opened"}firstUpdated(){super.firstUpdated(),this._boundTouchMove=this._onTouchMove.bind(this),this._boundTouchEnd=this._onTouchEnd.bind(this),this._drawerHeight=window.innerHeight-30;const vt=this._getDrawer();vt&&(vt.style.height="".concat(this._drawerHeight,"px"),vt.style.maxHeight="".concat(this._drawerHeight,"px"),(0,uc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{var vt,bt;null===(vt=this._parent.map)||void 0===vt||vt.addEventListener("click",(()=>this.openness="closed")),null===(bt=this._parent.psv)||void 0===bt||bt.addEventListener("click",(()=>this.openness="closed"))})))}attributeChangedCallback(vt,bt,le){if(super.attributeChangedCallback(vt,bt,le),"openness"===vt){if("opened"!==le){const vt=this.shadowRoot.querySelector(".content");vt&&(vt.scrollTop=0)}const vt=this._getDrawer();vt&&(vt.style.transform=null)}}disconnectedCallback(){super.disconnectedCallback(),this._cleanupTouchListeners()}_getDrawer(){var vt;return null===(vt=this.shadowRoot)||void 0===vt?void 0:vt.querySelector(".drawer")}_onHandleClick(){"opened"===this.openness?this.openness="closed":"half-opened"===this.openness?this.openness="opened":"closed"===this.openness&&(this.openness="half-opened")}_onTouchStart(vt){this._isDragging=!0,this._startFingerY=vt.touches[0].clientY,this._deltaFingerY=0,this._drawerY=this._drawerHeight*mc[this.openness],window.addEventListener("touchmove",this._boundTouchMove,{passive:!0}),window.addEventListener("touchend",this._boundTouchEnd),window.addEventListener("touchcancel",this._boundTouchEnd)}_onTouchMove(vt){if(!this._isDragging)return;const bt=this.shadowRoot.querySelector(".content");bt.scrollHeight>bt.offsetHeight&&bt.scrollTop>0?this._updateDrawerTransform(0):(this._deltaFingerY=vt.touches[0].clientY-this._startFingerY,this._updateDrawerTransform(this._drawerY+this._deltaFingerY))}_onTouchEnd(vt){(this._isDragging&&!(Math.abs(this._deltaFingerY)<30)||vt.target.closest(".handle"))&&(vt.preventDefault(),this._isDragging=!1,0===this._deltaFingerY&&"closed"===this.openness?this.openness="half-opened":this._updateDrawerTransform(this._drawerY+this._deltaFingerY,!0),this._cleanupTouchListeners(),this._startFingerY=null,this._deltaFingerY=null)}_cleanupTouchListeners(){window.removeEventListener("touchmove",this._boundTouchMove),window.removeEventListener("touchend",this._boundTouchEnd),window.removeEventListener("touchcancel",this._boundTouchCancel)}_updateDrawerTransform(vt){let bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const le=this._getDrawer();le&&(vt=Math.max(0,Math.min(vt,this._drawerHeight-30)),bt&&(this._deltaFingerY<0?"closed"===this.openness?Math.abs(this._deltaFingerY)>this._drawerHeight*(1-mc["half-opened"])?this.openness="opened":this.openness="half-opened":this.openness="opened":this.openness="closed",this._drawerY=null,vt=Math.max(0,Math.min(mc[this.openness]*this._drawerHeight,this._drawerHeight-30))),le.style.transform="translateY(".concat(vt,"px)"))}render(){const vt={drawer:!0,[this.openness]:!0,dragging:this._isDragging};return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["\n\t\t\t<div\n\t\t\t\tclass=",'\n\t\t\t\t@touchstart="','"\n\t\t\t\t@touchmove="','"\n\t\t\t\t@touchend="','"\n\t\t\t>\n\t\t\t\t<div class="handle" @click=','>\n\t\t\t\t\t<div class="handle-bar"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="content">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t'])),(0,sc.H)(vt),this._onTouchStart,this._onTouchMove,this._onTouchEnd,this._onHandleClick)}}BottomDrawer.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host {\n\t\t\tposition: fixed;\n\t\t\tbottom: 0;\n\t\t\tleft: 0;\n\t\t\twidth: 100%;\n\t\t\tz-index: 130;\n\t\t\tpointer-events: none;\n\t\t\ttouch-action: none;\n\t\t}\n\n\t\t.drawer {\n\t\t\tbackground: var(--widget-bg);\n\t\t\tborder-top-left-radius: 16px;\n\t\t\tborder-top-right-radius: 16px;\n\t\t\tbox-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\ttransition: transform 0.3s ease;\n\t\t\twill-change: transform;\n\t\t\ttouch-action: auto;\n\t\t\tpointer-events: auto;\n\t\t}\n\n\t\t.drawer.dragging { transition: none; }\n\t\t.drawer.closed { transform: translateY(calc(100% - 30px)); }\n\t\t.drawer.half-opened { transform: translateY(70%); }\n\t\t.drawer.half-opened .content { overflow-y: hidden; }\n\t\t.drawer.opened { transform: translateY(0%); }\n\n\t\t.handle {\n\t\t\theight: 30px;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tcursor: pointer;\n\t\t}\n\n\t\t.handle-bar {\n\t\t\twidth: 40px;\n\t\t\theight: 5px;\n\t\t\tbackground: var(--grey-pale);\n\t\t\tborder-radius: 3px;\n\t\t}\n\n\t\t.content {\n\t\t\toverflow: auto;\n\t\t\tflex: 1;\n\t\t}\n\t"]))),BottomDrawer.properties={_fingerY:{state:!0},_deltaFingerY:{state:!0},_drawerY:{state:!0},_isDragging:{state:!0},_drawerHeight:{state:!0},openness:{type:String,reflect:!0}},customElements.define("pnx-bottom-drawer",BottomDrawer)},7422:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>CorneredGrid});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(1198);class CorneredGrid extends Fl.WF{constructor(){super(),this._hidden=!1}toggleAway(vt){return this._hidden=null===vt||void 0===vt?!this._hidden:!vt,this._hidden}render(){return this.renderRoot.host.className=this._hidden?"toggled":"",(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<div class="bg">\n\t\t\t\t<slot name="bg"></slot>\n\t\t\t</div>\n\t\t\t<div class=','>\n\t\t\t\t<div class="corner left" part="corner-top-left">\n\t\t\t\t\t<slot name="top-left"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="corner middle" part="corner-top">\n\t\t\t\t\t<slot name="top"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="corner right" part="corner-top-right">\n\t\t\t\t\t<slot name="top-right"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class=','>\n\t\t\t\t<div class="corner left" part="corner-bottom-left">\n\t\t\t\t\t<slot name="bottom-left"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="corner middle" part="corner-bottom">\n\t\t\t\t\t<slot name="bottom"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="corner right" part="corner-bottom-right">\n\t\t\t\t\t<slot name="bottom-right"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t'])),(0,sc.H)({row:!0,top:!0,toggled:this._hidden}),(0,sc.H)({row:!0,bottom:!0,toggled:this._hidden}))}}CorneredGrid.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host {\n\t\t\tposition: relative;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tgap: 5px;\n\t\t\tflex-wrap: no-wrap;\n\t\t}\n\n\t\t.bg {\n\t\t\tposition: absolute;\n\t\t\tinset: 0;\n\t\t\tz-index: 0;\n\t\t}\n\n\t\t.row {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\tflex: 1 1 50%;\n\t\t\tpointer-events: none;\n\t\t\ttransition: margin 0.5s ease-in-out;\n\t\t}\n\n\t\t.row.bottom { align-items: flex-end; }\n\n\t\t.row.top.toggled { margin: -100% 0 200% 0; }\n\t\t.row.bottom.toggled { margin: 200% 0 -100% 0; }\n\t\t@media screen and (min-width: 576px) {\n\t\t\t.row.top.toggled { margin: -50% 0 100% 0; }\n\t\t\t.row.bottom.toggled { margin: 100% 0 -50% 0; }\n\t\t}\n\n\t\t.corner {\n\t\t\tposition: relative;\n\t\t\tflex: 1 1 33%;\n\t\t\tdisplay: flex;\n\t\t\tgap: 10px;\n\t\t\theight: min-content;\n\t\t}\n\n\t\t.corner slot {\n\t\t\tpointer-events: auto;\n\t\t\tposition: relative;\n\t\t\tz-index: 120;\n\t\t}\n\n\t\t.row.bottom .corner:not(.middle) { flex-direction: column; }\n\t\t.row.bottom .corner.left { flex-direction: column-reverse; justify-content: flex-start; align-items: flex-start; }\n\t\t.row.bottom .corner.middle { justify-content: center; align-items: flex-end; }\n\t\t.row.bottom .corner.right { justify-content: flex-end; align-items: flex-end; }\n\n\t\t.row.top .corner { flex-direction: row; }\n\t\t.row.top .corner.left { justify-content: flex-start; align-items: flex-start; }\n\t\t.row.top .corner.middle { justify-content: center; }\n\t\t.row.top .corner.right { justify-content: flex-end; align-items: flex-start; }\n\t"]))),CorneredGrid.properties={_hidden:{state:!0}},customElements.define("pnx-cornered-grid",CorneredGrid)},1445:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Mini});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(1462),mc=le(5721);class Mini extends sc.WF{constructor(){super(),this.collapsed=!1,this.icon=null}render(){var vt,bt;const le=(null===(vt=this._parent)||void 0===vt?void 0:vt.isWidthSmall())||(null===(bt=this._parent)||void 0===bt?void 0:bt.isHeightSmall()),onExpand=()=>this.dispatchEvent(new Event("expand",{bubbles:!0,composed:!0}));if(this.collapsed||le){const vt=le?onExpand:()=>this.collapsed=!1;return(0,sc.qy)(ls||(ls=(0,Fl.A)(['<pnx-button\n\t\t\t\tkind="flat"\n\t\t\t\tsize="xxl"\n\t\t\t\tstyle="bottom: 0"\n\t\t\t\t@click=',"\n\t\t\t>","</pnx-button>"])),vt,this.icon)}var Dl,gc,Ac;return(0,sc.qy)(ho||(ho=(0,Fl.A)(['\n\t\t\t\t<slot></slot>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\ttitle=','\n\t\t\t\t\tstyle="top: 0; right: 0"\n\t\t\t\t\t@click=',"\n\t\t\t\t>\n\t\t\t\t\t<img src=",' alt="" />\n\t\t\t\t\t','\n\t\t\t\t</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="flat"\n\t\t\t\t\ttitle=','\n\t\t\t\t\tstyle="bottom: 0; left: 0"\n\t\t\t\t\t@click=',"\n\t\t\t\t>\n\t\t\t\t\t<img src=",' alt="" />\n\t\t\t\t</pnx-button>\n\t\t\t'])),null===(Dl=this._parent)||void 0===Dl?void 0:Dl._t.pnx.expand_info,onExpand,uc,null===(gc=this._parent)||void 0===gc?void 0:gc._t.pnx.expand,null===(Ac=this._parent)||void 0===Ac?void 0:Ac._t.pnx.minimize,(()=>this.collapsed=!0),mc)}}Mini.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(['\n\t\t:host {\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\tinset: 0;\n\t\t\tpointer-events: none;\n\t\t}\n\n\t\tslot {\n\t\t\tz-index: 120;\n\t\t\tpointer-events: auto;\n\t\t}\n\n\t\tpnx-button {\n\t\t\tz-index: 121;\n\t\t\tposition: absolute;\n\t\t\tpointer-events: auto;\n\t\t}\n\n\t\tpnx-button img {\n\t\t\theight: 20px;\n\t\t}\n\n\t\tpnx-button:not([size="xxl"])::part(btn) {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\t']))),Mini.properties={icon:{type:String},collapsed:{type:Boolean,reflect:!0}},customElements.define("pnx-mini",Mini)},5534:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Tabs});var ls,ho,Dl,Fl=le(7528),sc=le(4542);class Tabs extends sc.WF{constructor(){super(),this.activeTabIndex=0,this.hideNav=!1}_getTabs(){var vt;return(null===(vt=this.shadowRoot.querySelector("slot[name='title']"))||void 0===vt?void 0:vt.assignedNodes())||[]}_getContents(){var vt;return(null===(vt=this.shadowRoot.querySelector("slot[name='content']"))||void 0===vt?void 0:vt.assignedNodes())||[]}_changeTab(vt,bt){const le=this._getTabs(),ls=this._getContents();void 0===vt&&void 0===bt||(vt&&(bt=le.findIndex((bt=>bt===vt||bt===vt.parentNode))),!isNaN(bt)&&bt>=0&&bt<le.length&&le.forEach(((vt,le)=>{le==bt?(this.activeTabIndex=le,ls[le].classList.add("active"),vt.classList.add("active")):(ls[le].classList.remove("active"),vt.classList.remove("active"))})))}_handleTabClick(vt){this._changeTab(vt.target)}updated(vt){vt.has("activeTabIndex")&&this._changeTab(void 0,this.activeTabIndex)}render(){return(0,sc.qy)(ls||(ls=(0,Fl.A)(["\n\t\t\t",'\n\t\t\t<div class="contents">\n\t\t\t\t<slot name="content"></slot>\n\t\t\t</div>\n\t\t'])),this.hideNav?sc.s6:(0,sc.qy)(ho||(ho=(0,Fl.A)(['<nav @click="','">\n\t\t\t\t<slot name="title" @slotchange=',"></slot>\n\t\t\t</nav>"])),this._handleTabClick,(()=>this.activeTabIndex=0)))}}Tabs.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\t/* Tabs */\n\t\tnav {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\talign-items: stretch;\n\t\t\toverflow-x: auto;\n\t\t\ttouch-action: pan-x;\n\t\t\tposition: sticky;\n\t\t\ttop: 0;\n\t\t\tbackground: white;\n\t\t\tz-index: 125;\n\t\t}\n\t\tnav ::slotted(*) {\n\t\t\tcolor: var(--grey-dark);\n\t\t\tborder-bottom: 2px solid rgba(0,0,0,0);\n\t\t\tcursor: pointer;\n\t\t\ttransition: all 0.1s;\n\t\t\tflex: 1;\n\t\t}\n\t\tnav ::slotted(*:hover:not(.active)) { background-color: var(--blue-pale); }\n\t\tnav ::slotted(*.active) {\n\t\t\tcolor: var(--blue-dark);\n\t\t\tborder-bottom: 2px solid var(--blue-dark);\n\t\t}\n\n\t\t/* Content */\n\t\t.contents ::slotted(div) { display: none !important; }\n\t\t.contents ::slotted(.active) { display: block !important; }\n\t"]))),Tabs.properties={activeTabIndex:{type:Number,reflect:!0},hideNav:{type:Boolean}},customElements.define("pnx-tabs",Tabs)},456:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{BottomDrawer:()=>ls.A,CorneredGrid:()=>ho.A,Mini:()=>Dl.A,Tabs:()=>Fl.A});var ls=le(6784),ho=le(7422),Dl=le(1445),Fl=le(5534)},5537:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>LocationPrecisionDoc});var ls,ho=le(7528),Dl=le(4542),Fl=le(8591),sc=le(5995),uc=le(6655),mc=le(7704),gc=le(7343);class LocationPrecisionDoc extends Dl.WF{render(){var vt,bt,le,Fl,Ac,Ec;return(0,Dl.qy)(ls||(ls=(0,ho.A)(["\n\t\t\t<h4>"," ","</h4>\n\t\t\t<p>","</p>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-grade-filter grade=""></pnx-grade-filter>\n\t\t\t<p>',"</p>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-link-button\n\t\t\t\thref="https://docs.panoramax.fr/pictures-metadata/quality_score/#gps-position-accuracy"\n\t\t\t\ttarget="_blank"\n\t\t\t\tkind="outline"\n\t\t\t\tstyle="width: 100%"\n\t\t\t>'," ","</pnx-link-button>\n\t\t"])),(0,sc.fa)(uc.Pc),null===(vt=this._t)||void 0===vt?void 0:vt.pnx.filter_gps_precision,null===(bt=this._t)||void 0===bt?void 0:bt.pnx.filter_gps_precision_help_1,null===(le=this._t)||void 0===le?void 0:le.pnx.filter_gps_precision_help_2,null===(Fl=this._t)||void 0===Fl?void 0:Fl.pnx.filter_gps_precision_help_3.replace("{p5}",gc.QUALITYSCORE_GPS_VALUES[1]).replace("{p1}",gc.QUALITYSCORE_GPS_VALUES[7]).replace(/\.01/g,""),null===(Ac=this._t)||void 0===Ac?void 0:Ac.pnx.filter_gps_precision_help_4,(0,sc.fa)(mc.A),null===(Ec=this._t)||void 0===Ec?void 0:Ec.pnx.popup_details_link)}}LocationPrecisionDoc.styles=[Fl.YC,Fl.Op,Fl.lk],customElements.define("pnx-location-precision-doc",LocationPrecisionDoc)},5036:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapBackground});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(7534),uc=le(6810),mc=le(5995);class MapBackground extends Fl.WF{constructor(){super(),this.size="md"}connectedCallback(){super.connectedCallback(),(0,mc.onceParentAvailable)(this).then((()=>{var vt,bt;null===(vt=this._parent.mapStyleComposer)||void 0===vt||vt.addEventListener("basemap-changed",(vt=>{this.bg=vt.detail.basemap})),this.bg=null===(bt=this._parent.mapStyleComposer)||void 0===bt?void 0:bt.basemap}))}_onBgSelect(vt){var bt,le;this.bg=vt.target.value,null===(bt=this._parent)||void 0===bt||null===(le=bt.mapStyleComposer)||void 0===le||le.switchBasemap(this.bg)}render(){var vt,bt;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<input\n\t\t\t\ttype="radio"\n\t\t\t\tid="bg-streets"\n\t\t\t\tname="bg"\n\t\t\t\tvalue="streets"\n\t\t\t\t@change=',"\n\t\t\t\t.checked=",'\n\t\t\t/>\n\t\t\t<label for="bg-streets">\n\t\t\t\t<img src='," class=",' alt="" />\n\t\t\t\t','\n\t\t\t</label>\n\t\t\t<input\n\t\t\t\ttype="radio"\n\t\t\t\tid="bg-aerial"\n\t\t\t\tname="bg"\n\t\t\t\tvalue="aerial"\n\t\t\t\t@change=',"\n\t\t\t\t.checked=",'\n\t\t\t/>\n\t\t\t<label for="bg-aerial">\n\t\t\t\t<img src='," class=",' alt="" />\n\t\t\t\t',"\n\t\t\t</label>\n\t\t"])),this._onBgSelect,"streets"==this.bg,uc,this.size,null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.map_background_streets,this._onBgSelect,"aerial"==this.bg,sc,this.size,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.map_background_aerial)}}MapBackground.styles=[(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host {\n\t\t\tjustify-content: space-evenly;\n\t\t\tbox-sizing: border-box;\n\t\t\tdisplay: flex;\n\t\t\tgap: 10px;\n\t\t}\n\t\tinput { display: none; }\n\t\tlabel { cursor: pointer; }\n\n\t\timg {\n\t\t\twidth: 40px;\n\t\t\tborder-radius: 5px;\n\t\t\tvertical-align: middle;\n\t\t\tmargin-right: 5px;\n\t\t\tborder: 2px solid var(--widget-bg);\n\t\t}\n\n\t\timg.sm {\n\t\t\twidth: 32px;\n\t\t}\n\n\t\tinput:checked + label img {\n\t\t\toutline: 3px solid var(--widget-border-btn);\n\t\t}\n\t"])))],MapBackground.properties={bg:{state:!0},size:{type:String}},customElements.define("pnx-map-background",MapBackground)},3581:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapFilters});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc=le(7528),du=le(4542),_u=le(5995),Md=le(7343),Ld=le(8591),Nd=le(5279),Rd=le(9186),Od=le(6069),jd=le(3233),Ud=le(6668),Gd=le(7879),qd=le(6655),Hd=le(2045),Wd=le(4780),Zd=le(8340);class MapFilters extends du.WF{constructor(){super(),this._formDelay=null,this.showZoomIn=!0}connectedCallback(){super.connectedCallback();for(let vt of this.shadowRoot.querySelectorAll("input"))vt.addEventListener("change",this._onFormChange.bind(this)),vt.addEventListener("keypress",this._onFormChange.bind(this)),vt.addEventListener("paste",this._onFormChange.bind(this)),vt.addEventListener("input",this._onFormChange.bind(this));(0,_u.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt).then((async()=>{this._parent.map.on("zoomend",this._onMapZoom.bind(this)),this._parent.mapStyleComposer.addEventListener("filters-changed",(vt=>this._onParentFilterChange(vt.detail))),this._parent.mapStyleComposer.addEventListener("panoramax-changed",(()=>this._onParentFilterChange(this._parent.mapStyleComposer.panoramaxFilters))),this._onMapZoom(),this._onParentFilterChange(this._parent.mapStyleComposer.panoramaxFilters)}))}))}_onMapZoom(){this.showZoomIn=this._parent.map.getZoom()<7}_onParentFilterChange(vt){var bt;if(this.minDate=(null===vt||void 0===vt?void 0:vt.minDate)||null,this.maxDate=(null===vt||void 0===vt?void 0:vt.maxDate)||null,this.minDate&&this.maxDate&&this.minDate>this.maxDate){const vt=this.minDate;this.minDate=this.maxDate,this.maxDate=vt,this._onFormChange()}if(this.score=Array.isArray(null===vt||void 0===vt?void 0:vt.qualityscore)?vt.qualityscore.join(","):(null===vt||void 0===vt?void 0:vt.qualityscore)||"",this.gps=null!==vt&&void 0!==vt&&vt.gps&&Array.isArray(vt.gps)?vt.gps.join(","):(null===vt||void 0===vt||null===(bt=vt.gps)||void 0===bt?void 0:bt.length)>0?vt.gps:"",this.type="",null!==vt&&void 0!==vt&&vt.pic_type&&""!=vt.pic_type&&(this.type="flat"==vt.pic_type?"flat":"equirectangular"),(0,Zd.isPanoramaxEndpointSingleUser)(this._parent.mapStyleComposer.panoramax)){if(this.source=this._parent.mapStyleComposer.panoramax.startsWith("metacatalog_")?"metacatalog":"default",null==this.user){let vt=this._parent.mapStyleComposer.panoramax.replace("metacatalog_","");this._parent.getAPI().getUserName(vt).then((vt=>{this.user=vt,this.shadowRoot.querySelector("#pnx-filter-search-user").setAttribute("value",vt)}))}}else this.source=this._parent.mapStyleComposer.panoramax,this.user=null}_onSubmit(vt){return vt.preventDefault(),this._onFormChange(),!1}_onFormChange(){this._formDelay&&clearTimeout(this._formDelay),this._formDelay=setTimeout((()=>{var vt,bt,le,ls;this.minDate=null===(vt=this.shadowRoot.querySelector("#pnx-filter-date-from"))||void 0===vt?void 0:vt.value,this.maxDate=null===(bt=this.shadowRoot.querySelector("#pnx-filter-date-end"))||void 0===bt?void 0:bt.value;const ho=this.shadowRoot.querySelector("#pnx-filter-type-flat"),Dl=this.shadowRoot.querySelector("#pnx-filter-type-360");this.type=Dl.checked?"equirectangular":ho.checked?"flat":"",this.score=null===(le=this.shadowRoot.querySelector("#pnx-filter-qualityscore"))||void 0===le?void 0:le.grade,this.gps=null===(ls=this.shadowRoot.querySelector("#pnx-filter-gps"))||void 0===ls?void 0:ls.grade;const Fl=this._parent.mapStyleComposer,sc={minDate:this.minDate,maxDate:this.maxDate,pic_type:this.type,qualityscore:this.score,gps:this.gps,featuresRestrictions:Fl.panoramaxFilters.featuresRestrictions};Fl.setPanoramaxFilters(sc)}),250)}_onSourceChange(vt){this.source=vt.target.checked?"default":"metacatalog",this.user=null,this._onUserSearchResult()}_userSearch(vt){var bt,le;return null===(bt=(le=this._parent).getAPI)||void 0===bt?void 0:bt.call(le).searchUsers(vt).then((vt=>(vt||[]).map((vt=>({title:vt.label,data:vt})))))}_onUserSearchResult(vt){var bt;if(null!==vt&&void 0!==vt&&null!==(bt=vt.detail)&&void 0!==bt&&bt.data){var le;vt.target.classList.add("pnx-filter-active");const bt="metacatalog"===this.source?"metacatalog_"+vt.detail.data.id:vt.detail.data.id;return null===(le=this._parent)||void 0===le?void 0:le.mapStyleComposer._createPanoramaxEndpointForUser(bt)}{var ls;const bt=(null===vt||void 0===vt?void 0:vt.target)||this.shadowRoot.querySelector("#pnx-filter-search-user");return bt&&(bt.classList.remove("pnx-filter-active"),bt.setAttribute("value","")),null===(ls=this._parent)||void 0===ls?void 0:ls.mapStyleComposer.switchPanoramaxEndpoint(this.source)}}_onReset(){var vt,bt,le;null===(vt=this.shadowRoot.querySelector("#pnx-filter-qualityscore"))||void 0===vt||vt.setAttribute("grade",""),null===(bt=this.shadowRoot.querySelector("#pnx-filter-search-user"))||void 0===bt||bt.reset(),null===(le=this.shadowRoot.querySelector("#pnx-filter-gps"))||void 0===le||le.setAttribute("grade",""),this.minDate=null,this.maxDate=null,this.type="",this.score=null,this.user=null,this._onFormChange()}_onDateShortcut(vt){const bt=this.shadowRoot.getElementById("pnx-filter-date-from"),le=this.shadowRoot.getElementById("pnx-filter-date-end");bt&&(bt.value!==vt?bt.value=vt:bt.value=""),le&&(le.value="")}_onMeUserSearch(){var vt,bt,le;const ls=(0,Md.getUserAccount)();if(!ls)return;const ho=this.shadowRoot.getElementById("pnx-filter-search-user");null!==(vt=this._parent)&&void 0!==vt&&null!==(bt=vt.mapStyleComposer)&&void 0!==bt&&null!==(le=bt.panoramax)&&void 0!==le&&le.endsWith(ls.id)?null===ho||void 0===ho||ho._onResultClick():null===ho||void 0===ho||ho._onResultClick({title:ls.name,data:{id:ls.id}})}render(){var vt,bt,le,Ec,Ld,Zd,Yd,Qd,Xd,Kd,Jd,$d,sp,tm,em,im,nm,rm,am,sm,om,lm,cm,um,hm,dm,pm;const mm=(0,Md.getUserAccount)(),fm={1:null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.filter_gps_precision_morethan.replace("{n}",Md.QUALITYSCORE_GPS_VALUES[7]).replace(/\.01/g,""),2:null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.filter_gps_precision_between.replace("{n1}",Md.QUALITYSCORE_GPS_VALUES[5]).replace("{n2}",Md.QUALITYSCORE_GPS_VALUES[7]).replace(/\.01/g,""),3:null===(le=this._parent)||void 0===le?void 0:le._t.pnx.filter_gps_precision_between.replace("{n1}",Md.QUALITYSCORE_GPS_VALUES[3]).replace("{n2}",Md.QUALITYSCORE_GPS_VALUES[5]).replace(/\.01/g,""),4:null===(Ec=this._parent)||void 0===Ec?void 0:Ec._t.pnx.filter_gps_precision_between.replace("{n1}",Md.QUALITYSCORE_GPS_VALUES[1]).replace("{n2}",Md.QUALITYSCORE_GPS_VALUES[3]).replace(/\.01/g,""),5:null===(Ld=this._parent)||void 0===Ld?void 0:Ld._t.pnx.filter_gps_precision_lessthan.replace("{n}",Md.QUALITYSCORE_GPS_VALUES[1]).replace(/\.01/g,"")};let gm=null===(Zd=this._parent.api._metadata)||void 0===Zd?void 0:Zd.name;var Am;gm&&"Unnamed"!==gm||(gm=null===(Am=this._parent)||void 0===Am?void 0:Am._t.pnx.filter_source_local);return(0,du.qy)(ls||(ls=(0,kc.A)(["<form\n\t\t\t@reset=","\n\t\t\t@change=","\n\t\t\t@submit=","\n\t\t>\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\t\t</form>"])),this._onReset,this._onFormChange,this._onSubmit,this["no-source"]?"":(0,du.qy)(ho||(ho=(0,kc.A)(['<div class="pnx-filter-block">\n\t\t\t\t<pnx-icon-switch\n\t\t\t\t\tid="pnx-pictures-source"\n\t\t\t\t\tname="pnx-pictures-source"\n\t\t\t\t\t@change=',"\n\t\t\t\t\t.checked=","\n\t\t\t\t>\n\t\t\t\t\t",'\n\t\t\t\t\t<span slot="label-left">',"</span>\n\t\t\t\t\t",'\n\t\t\t\t\t<span slot="label-right">',"</span>\n\t\t\t\t</pnx-icon-switch>\n\t\t\t</div>"])),this._onSourceChange,"default"===this.source,(0,_u.fa)(Hd.B$,{attributes:{slot:"icon-left"}}),null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.filter_source_world,(0,_u.fa)(Wd.yy,{attributes:{slot:"icon-right"}}),gm),this["no-date"]?"":(0,du.qy)(Dl||(Dl=(0,kc.A)(['<div class="pnx-filter-block">\n\t\t\t\t<div class="pnx-filter-zoomin ','">',"</div>\n\t\t\t\t<h4>"," ",'</h4>\n\t\t\t\t<div class="pnx-input-shortcuts">\n\t\t\t\t\t<button\n\t\t\t\t\t\t@click=',"\n\t\t\t\t\t>","</button>\n\t\t\t\t\t<button\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>","</button>\n\t\t\t\t\t<button\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>",'</button>\n\t\t\t\t</div>\n\t\t\t\t<div class="pnx-input-group">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="date"\n\t\t\t\t\t\tid="pnx-filter-date-from"\n\t\t\t\t\t\t.value=',"\n\t\t\t\t\t\tclass=","\n\t\t\t\t\t/>\n\t\t\t\t\t",'\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="date"\n\t\t\t\t\t\tid="pnx-filter-date-end"\n\t\t\t\t\t\t.value=',"\n\t\t\t\t\t\tclass=","\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>"])),this.showZoomIn?"":"hidden",null===(Qd=this._parent)||void 0===Qd?void 0:Qd._t.pnx.filter_zoom_in,(0,_u.fa)(Rd.ok),null===(Xd=this._parent)||void 0===Xd?void 0:Xd._t.pnx.filter_date,(()=>this._onDateShortcut(new Date((new Date).setMonth((new Date).getMonth()-1)).toISOString().split("T")[0])),null===(Kd=this._parent)||void 0===Kd?void 0:Kd._t.pnx.filter_date_1month,(()=>this._onDateShortcut(new Date((new Date).setMonth((new Date).getMonth()-6)).toISOString().split("T")[0])),null===(Jd=this._parent)||void 0===Jd?void 0:Jd._t.pnx.filter_date_6months,(()=>this._onDateShortcut(new Date((new Date).setFullYear((new Date).getFullYear()-1)).toISOString().split("T")[0])),null===($d=this._parent)||void 0===$d?void 0:$d._t.pnx.filter_date_1year,this.minDate,this.minDate&&""!=this.minDate?"pnx-filter-active":"",(0,_u.fa)(Od.dm),this.maxDate,this.maxDate&&""!=this.maxDate?"pnx-filter-active":""),this["no-picture-type"]?"":(0,du.qy)(Fl||(Fl=(0,kc.A)(['<div class="pnx-filter-block">\n\t\t\t\t<h4>'," ",'</h4>\n\t\t\t\t<div class="pnx-input-group pnx-checkbox-btns" style="justify-content: center;">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="radio"\n\t\t\t\t\t\tid="pnx-filter-type-all"\n\t\t\t\t\t\tname="pnx-filter-type"\n\t\t\t\t\t\tvalue=""\n\t\t\t\t\t\t.checked=','\n\t\t\t\t\t/>\n\t\t\t\t\t<label for="pnx-filter-type-all">','</label>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="radio"\n\t\t\t\t\t\tid="pnx-filter-type-flat"\n\t\t\t\t\t\tname="pnx-filter-type"\n\t\t\t\t\t\tvalue="flat"\n\t\t\t\t\t\t.checked=','\n\t\t\t\t\t/>\n\t\t\t\t\t<label for="pnx-filter-type-flat">','</label>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype="radio"\n\t\t\t\t\t\tid="pnx-filter-type-360"\n\t\t\t\t\t\tname="pnx-filter-type"\n\t\t\t\t\t\tvalue="equirectangular"\n\t\t\t\t\t\t.checked=','\n\t\t\t\t\t/>\n\t\t\t\t\t<label for="pnx-filter-type-360">',"</label>\n\t\t\t\t</div>\n\t\t\t</div>"])),(0,_u.fa)(Nd.jb),null===(sp=this._parent)||void 0===sp?void 0:sp._t.pnx.filter_picture,!this.type||""===this.type,null===(tm=this._parent)||void 0===tm?void 0:tm._t.pnx.picture_all,"flat"===this.type,null===(em=this._parent)||void 0===em?void 0:em._t.pnx.picture_flat,"equirectangular"===this.type,null===(im=this._parent)||void 0===im?void 0:im._t.pnx.picture_360),this["quality-score"]?(0,du.qy)(sc||(sc=(0,kc.A)(['\n\t\t\t\t<div class="pnx-filter-block">\n\t\t\t\t\t<div class="pnx-filter-zoomin ','">',"</div>\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t"," ",'\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\ttitle="','"\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t",'\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t</h4>\n\t\t\t\t\t<div class="pnx-input-group">\n\t\t\t\t\t\t<pnx-quality-score\n\t\t\t\t\t\t\tid="pnx-filter-qualityscore"\n\t\t\t\t\t\t\t._t=','\n\t\t\t\t\t\t\tinput="pnx-filter-qualityscore"\n\t\t\t\t\t\t\tgrade=',"\n\t\t\t\t\t\t\t@change=","\n\t\t\t\t\t\t>\n\t\t\t\t\t\t</pnx-quality-score>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t"])),this.showZoomIn?"":"hidden",null===(nm=this._parent)||void 0===nm?void 0:nm._t.pnx.filter_zoom_in,(0,_u.fa)(jd.B9),null===(rm=this._parent)||void 0===rm?void 0:rm._t.pnx.filter_qualityscore,null===(am=this._parent)||void 0===am?void 0:am._t.pnx.metadata_quality_help,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showQualityScoreDoc()}),(0,_u.fa)(Ud.iW),null===(sm=this._parent)||void 0===sm?void 0:sm._t,this.score,this._onFormChange):du.s6,this["no-gps"]?"":(0,du.qy)(uc||(uc=(0,kc.A)(['\n\t\t\t\t<div class="pnx-filter-block">\n\t\t\t\t\t<div class="pnx-filter-zoomin ','">',"</div>\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t"," ","\n\t\t\t\t\t\t",'\n\t\t\t\t\t</h4>\n\t\t\t\t\t<div class="pnx-input-group">\n\t\t\t\t\t\t<pnx-grade-filter\n\t\t\t\t\t\t\tid="pnx-filter-gps"\n\t\t\t\t\t\t\t._t=','\n\t\t\t\t\t\t\tinput="pnx-filter-gps"\n\t\t\t\t\t\t\tgrade=',"\n\t\t\t\t\t\t\t@change=","\n\t\t\t\t\t\t\t.labels=","\n\t\t\t\t\t\t>\n\t\t\t\t\t\t</pnx-grade-filter>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t"])),this.showZoomIn?"":"hidden",null===(om=this._parent)||void 0===om?void 0:om._t.pnx.filter_zoom_in,(0,_u.fa)(qd.Pc),null===(lm=this._parent)||void 0===lm?void 0:lm._t.pnx.filter_gps_precision,this._parent._showLocationPrecisionDoc?(0,du.qy)(mc||(mc=(0,kc.A)(['\n\t\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\t\ttitle="','"\n\t\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t"])),null===(cm=this._parent)||void 0===cm?void 0:cm._t.pnx.filter_gps_precision_help,(()=>this._parent._showLocationPrecisionDoc()),(0,_u.fa)(Ud.iW)):du.s6,null===(um=this._parent)||void 0===um?void 0:um._t,this.gps,this._onFormChange,fm),this["user-search"]?(0,du.qy)(gc||(gc=(0,kc.A)(['\n\t\t\t\t<div class="pnx-filter-block">\n\t\t\t\t\t<h4>'," ","</h4>\n\t\t\t\t\t",'\n\t\t\t\t\t<pnx-search-bar\n\t\t\t\t\t\tid="pnx-filter-search-user"\n\t\t\t\t\t\tplaceholder=',"\n\t\t\t\t\t\tclass=","\n\t\t\t\t\t\t.value=","\n\t\t\t\t\t\t@result=","\n\t\t\t\t\t\t.searcher=","\n\t\t\t\t\t\t._parent=","\n\t\t\t\t\t\tno-menu-closure\n\t\t\t\t\t>\n\t\t\t\t\t</pnx-search-bar>\n\t\t\t\t</div>\n\t\t\t"])),(0,_u.fa)(Gd.X4),null===(hm=this._parent)||void 0===hm?void 0:hm._t.pnx.filter_user,"default"===this.source&&mm?(0,du.qy)(Ac||(Ac=(0,kc.A)(['\n\t\t\t\t\t\t<div class="pnx-input-shortcuts">\n\t\t\t\t\t\t\t<button @click=',">\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t"])),this._onMeUserSearch,null===(dm=this._parent)||void 0===dm?void 0:dm._t.pnx.filter_user_mypics):du.s6,null===(pm=this._parent)||void 0===pm?void 0:pm._t.pnx.search_user,this.user?"pnx-filter-active":"",this.user,this._onUserSearchResult,this._userSearch.bind(this),this._parent):du.s6)}}MapFilters.styles=[Ld.Op,Ld.YC,(0,du.AH)(Ec||(Ec=(0,kc.A)(['\n\t\t.pnx-input-group {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tgap: 5px;\n\t\t}\n\n\t\t/* Filter block */\n\t\t.pnx-filter-block {\n\t\t\tposition: relative;\n\t\t\tpadding: 10px 15px;\n\t\t\tborder-bottom: 2px solid var(--widget-border-div);\n\t\t}\n\t\t.pnx-filter-block:first-child {\n\t\t\tpadding-top: 15px;\n\t\t}\n\t\t.pnx-filter-block:last-child {\n\t\t\tborder-bottom: none;\n\t\t\tpadding-bottom: 15px;\n\t\t}\n\t\t.pnx-filter-block h4 {\n\t\t\tmargin-bottom: 5px;\n\t\t}\n\t\t.pnx-filter-zoomin {\n\t\t\tz-index: 131;\n\t\t\tbackground-color: rgba(255,255,255,0.8);\n\t\t\ttext-align: center;\n\t\t\tfont-weight: 800;\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tleft: 0;\n\t\t\tbottom: 0;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-items: center;\n\t\t\tborder-radius: 25px;\n\t\t}\n\t\t.pnx-filter-zoomin.hidden {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t/* Input styles */\n\t\t.pnx-filter-active,\n\t\tpnx-search-bar.pnx-filter-active::part(container),\n\t\tpnx-search-bar.pnx-filter-active::part(input) {\n\t\t\tbackground-color: var(--widget-bg-active) !important;\n\t\t\tborder-color: var(--widget-bg-active) !important;\n\t\t\tcolor: var(--widget-font-active) !important;\n\t\t}\n\t\tinput[type=date] {\n\t\t\tmin-width: 0;\n\t\t\tflex-grow: 2;\n\t\t\tpadding: 2px 0;\n\t\t\ttext-align: center;\n\t\t\tbackground-color: var(--widget-bg);\n\t\t\tcolor: var(--widget-font);\n\t\t\tborder: 1px solid var(--widget-border-div);\n\t\t\tborder-radius: 20px;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\n\t\t/* Input shortcuts */\n\t\t.pnx-input-shortcuts {\n\t\t\tmargin-top: 0px;\n\t\t\tmargin-bottom: 5px;\n\t\t}\n\t\t.pnx-input-shortcuts button {\n\t\t\tborder: none;\n\t\t\tfont-size: 0.75em;\n\t\t\tpadding: 2px 6px;\n\t\t\tvertical-align: middle;\n\t\t\tbackground-color: var(--grey-pale);\n\t\t\tcolor: var(--black);\n\t\t\tborder-radius: 10px;\n\t\t\tcursor: pointer;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\t\t.pnx-input-shortcuts button:hover {\n\t\t\tbackground-color: #d9dcd9;\n\t\t}\n\n\t\t/* Checkbox looking like buttons */\n\t\t.pnx-input-group.pnx-checkbox-btns {\n\t\t\tgap: 0;\n\t\t\talign-items: stretch;\n\t\t}\n\t\t.pnx-checkbox-btns label {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding: 2px 7px;\n\t\t\tbackground: none;\n\t\t\tborder: 1px solid var(--widget-border-btn);\n\t\t\tcolor: var(--widget-font-direct);\n\t\t\tcursor: pointer;\n\t\t\tfont-size: 16px;\n\t\t\ttext-decoration: none;\n\t\t\tborder-left-width: 0px;\n\t\t}\n\t\t.pnx-checkbox-btns label:hover {\n\t\t\tbackground-color: var(--widget-bg-hover);\n\t\t}\n\t\t.pnx-checkbox-btns label:first-of-type {\n\t\t\tborder-top-left-radius: 8px;\n\t\t\tborder-bottom-left-radius: 8px;\n\t\t\tborder-left-width: 1px;\n\t\t}\n\t\t.pnx-checkbox-btns label:last-of-type {\n\t\t\tborder-top-right-radius: 8px;\n\t\t\tborder-bottom-right-radius: 8px;\n\t\t}\n\t\t.pnx-checkbox-btns input[type="radio"] { display: none; }\n\t\t.pnx-checkbox-btns input[type="radio"]:checked + label {\n\t\t\tbackground-color: var(--widget-bg-active);\n\t\t\tcolor: var(--widget-font-active);\n\t\t}\n\t\t.pnx-checkbox-btns input[type="radio"]:checked + label:first-of-type {\n\t\t\tborder-right-color: white;\n\t\t}\n\n\t\t/* Force user search width */\n\t\t#pnx-filter-search-user::part(container) { width: 100%; }\n\t'])))],MapFilters.properties={"quality-score":{type:Boolean},"user-search":{type:Boolean},"no-date":{type:Boolean},"no-picture-type":{type:Boolean},"no-gps":{type:Boolean},"no-source":{type:Boolean},showZoomIn:{state:!0},minDate:{state:!0},maxDate:{state:!0},type:{state:!0},score:{state:!0},user:{state:!0},gps:{state:!0},source:{state:!0}},customElements.define("pnx-map-filters-menu",MapFilters)},5334:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapLayers});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc=le(7528),du=le(4542),_u=le(5995),Md=le(8591),Ld=le(7343),Nd=le(7172),Rd=le(8629),Od=le(6668),jd=le(8340),Ud=le(5195);class MapLayers extends du.WF{connectedCallback(){super.connectedCallback(),(0,_u.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.onceMapReady)||void 0===bt?void 0:bt.call(vt).then((()=>{var vt,bt;this.theme=this._parent.mapStyleComposer.panoramaxTheme,this._parent.mapStyleComposer.addEventListener("theme-changed",(vt=>this.theme=vt.detail.theme)),this._parent.mapStyleComposer.addEventListener("panoramax-changed",this.requestUpdate.bind(this)),null===(vt=this._parent.map.indoorEqual)||void 0===vt||vt.on("levelschange",(()=>this.requestUpdate())),null===(bt=this._parent.map.indoorEqual)||void 0===bt||bt.on("levelchange",(()=>this.requestUpdate()))}))}))}_onIndoorSwitchChange(vt){var bt,le;null!==(bt=this._parent)&&void 0!==bt&&null!==(le=bt.map)&&void 0!==le&&le.indoorEqual?this._parent.map.indoorEqual.setLevel(vt.target.checked?"0":Ud.DISABLED_LEVEL):(0,Ud.initIndoorEqualOnMap)(this._parent.map,!0)}_onThemeSelect(vt){var bt;this.theme=vt.target.value,null===(bt=this._parent)||void 0===bt||bt.mapStyleComposer.setPanoramaxTheme(this.theme)}render(){var vt,bt,le,Ec,Md,Gd,qd,Hd,Wd,Zd,Yd,Qd,Xd,Kd,Jd,$d,sp,tm,em,im,nm,rm,am,sm,om;const lm=[],cm=(null===(vt=this._parent)||void 0===vt||null===(bt=vt.map)||void 0===bt?void 0:bt.indoorEqual)||!1===(null===(le=this._parent)||void 0===le||null===(Ec=le.map)||void 0===Ec||null===(Md=Ec._options)||void 0===Md||null===(Gd=Md.indoor)||void 0===Gd?void 0:Gd.visible);var um;null!==(qd=this._parent)&&void 0!==qd&&null!==(Hd=qd.mapStyleComposer)&&void 0!==Hd&&null!==(Wd=Hd.hasManyBasemaps)&&void 0!==Wd&&Wd.call(Hd)&&lm.push((0,du.qy)(ls||(ls=(0,kc.A)(["\n\t\t\t\t<h4>"," ","</h4>\n\t\t\t\t<pnx-map-background ._parent=","></pnx-map-background>\n\t\t\t"])),(0,_u.fa)(Nd.faEarthEurope),null===(um=this._parent)||void 0===um?void 0:um._t.pnx.map_background,this._parent));if(cm){var hm;const vt=this._parent.map.indoorEqual;lm.push((0,du.qy)(ho||(ho=(0,kc.A)(["\n\t\t\t\t<pnx-switch\n\t\t\t\t\t.checked=","\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@change=",'\n\t\t\t\t\tstyle="display: block; margin: 15px 0;"\n\t\t\t\t\tname="pnx-level-switch"\n\t\t\t\t>\n\t\t\t\t\t',"\n\t\t\t\t</pnx-switch>\n\t\t\t"])),vt&&vt.level!==Ud.DISABLED_LEVEL,vt&&0===vt.levels.length,this._onIndoorSwitchChange.bind(this),null===(hm=this._parent)||void 0===hm?void 0:hm._t.pnx.indoor_switch))}return lm.push((0,du.qy)(Dl||(Dl=(0,kc.A)(["\n\t\t\t<h4>"," ",'</h4>\n\t\t\t<select id="pnx-map-theme" style="width: 100%;" @change=',">\n\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t","\n\t\t\t</select>\n\t\t"])),(0,_u.fa)(Rd.fy),null===(Zd=this._parent)||void 0===Zd?void 0:Zd._t.pnx.map_theme,this._onThemeSelect,jd.MAP_THEMES_STYLES.default.id,this.theme==jd.MAP_THEMES_STYLES.default.id,null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.map_theme_default,jd.MAP_THEMES_STYLES.age.id,this.theme==jd.MAP_THEMES_STYLES.age.id,null===(Qd=this._parent)||void 0===Qd?void 0:Qd._t.pnx.map_theme_age,jd.MAP_THEMES_STYLES.type.id,this.theme==jd.MAP_THEMES_STYLES.type.id,null===(Xd=this._parent)||void 0===Xd?void 0:Xd._t.pnx.map_theme_type,(null===(Kd=this._parent)||void 0===Kd||null===(Jd=Kd.map)||void 0===Jd||null===($d=Jd._hasQualityScore)||void 0===$d?void 0:$d.call(Jd))&&(0,du.qy)(Fl||(Fl=(0,kc.A)(["\n\t\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t\t<option value="," .selected=",">","</option>\n\t\t\t\t"])),jd.MAP_THEMES_STYLES.score.id,this.theme==jd.MAP_THEMES_STYLES.score.id,null===(sp=this._parent)||void 0===sp?void 0:sp._t.pnx.map_theme_score,jd.MAP_THEMES_STYLES.gps.id,this.theme==jd.MAP_THEMES_STYLES.gps.id,null===(tm=this._parent)||void 0===tm?void 0:tm._t.pnx.map_theme_gps))),lm.push((0,du.qy)(sc||(sc=(0,kc.A)(['<div class="legend">\n\t\t\t',"\n\t\t\t\n\t\t\t","\n\t\t\t\n\t\t\t","\n\t\t\t\n\t\t\t","\n\t\t</div>"])),this.theme==jd.MAP_THEMES_STYLES.age.id?(0,du.qy)(uc||(uc=(0,kc.A)(['\n\t\t\t\t<div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t',"\n\t\t\t\t\t</div>\n\t\t\t\t</div>"])),Ld.COLORS.PALETTE_4,null===(em=this._parent)||void 0===em?void 0:em._t.pnx.map_theme_age_4,Ld.COLORS.PALETTE_3,null===(im=this._parent)||void 0===im?void 0:im._t.pnx.map_theme_age_3,Ld.COLORS.PALETTE_2,null===(nm=this._parent)||void 0===nm?void 0:nm._t.pnx.map_theme_age_2,Ld.COLORS.PALETTE_1,null===(rm=this._parent)||void 0===rm?void 0:rm._t.pnx.map_theme_age_1):du.s6,this.theme==jd.MAP_THEMES_STYLES.type.id?(0,du.qy)(mc||(mc=(0,kc.A)(['\n\t\t\t \t<div class="legend-entry">\n\t\t\t \t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t \t\t','\n\t\t\t \t</div>\n\t\t\t \t<div class="legend-entry">\n\t\t\t \t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t \t\t',"\n\t\t\t \t</div>"])),Ld.COLORS.QUALI_1,null===(am=this._parent)||void 0===am?void 0:am._t.pnx.picture_360,Ld.COLORS.QUALI_2,null===(sm=this._parent)||void 0===sm?void 0:sm._t.pnx.picture_flat):du.s6,this.theme==jd.MAP_THEMES_STYLES.score.id?(0,du.qy)(gc||(gc=(0,kc.A)(['<div>\n\t\t\t\t<pnx-quality-score></pnx-quality-score>\n\t\t\t\t<pnx-button\n\t\t\t\t\ttitle="','"\n\t\t\t\t\tkind="superinline"\n\t\t\t\t\t@click=',"\n\t\t\t\t>\n\t\t\t\t\t","\n\t\t\t\t</pnx-button></div>"])),null===(om=this._parent)||void 0===om?void 0:om._t.pnx.metadata_quality_help,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showQualityScoreDoc()}),(0,_u.fa)(Od.iW)):du.s6,this.theme==jd.MAP_THEMES_STYLES.gps.id?(0,du.qy)(Ac||(Ac=(0,kc.A)(['\n\t\t\t\t<div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t','\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="legend-entry">\n\t\t\t\t\t\t<span class="legend-color" style="background-color: ','"></span>\n\t\t\t\t\t\t',"\n\t\t\t\t\t</div>\n\t\t\t</div>"])),Ld.GPS_VALUES[0].color,Ld.GPS_VALUES[0].label,Ld.GPS_VALUES[2].color,Ld.GPS_VALUES[2].label,Ld.GPS_VALUES[4].color,Ld.GPS_VALUES[4].label,Ld.GPS_VALUES[1].color,Ld.GPS_VALUES[1].label,Ld.GPS_VALUES[3].color,Ld.GPS_VALUES[3].label):du.s6)),lm}}MapLayers.styles=[Md.Op,Md.YC,Md.Lt,(0,du.AH)(Ec||(Ec=(0,kc.A)(["\n\t\t.legend {\n\t\t\tdisplay: flex;\n\t\t\tflex-wrap: wrap;\n\t\t\tmargin-top: 5px;\n\t\t\tjustify-content: space-evenly;\n\t\t}\n\n\t\t.legend-entry {\n\t\t\tmargin: 10px 8px 5px 0px;\n\t\t\tline-height: 12px;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tfont-size: 1.0em;\n\t\t}\n\n\t\t.legend-color {\n\t\t\tdisplay: inline-block;\n\t\t\twidth: 15px;\n\t\t\theight: 15px;\n\t\t\tborder-radius: 3px;\n\t\t\tmargin-right: 5px;\n\t\t}\n\n\t\t.legend-score {\n\t\t\tjustify-content: center;\n\t\t\tgap: 0;\n\t\t}\n\t"])))],MapLayers.properties={theme:{state:!0}},customElements.define("pnx-map-layers-menu",MapLayers)},4749:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapLegend});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(5995);class MapLegend extends sc.WF{constructor(){super(),this.light=!1}connectedCallback(){super.connectedCallback(),(0,uc.onceParentAvailable)(this).then((()=>this.requestUpdate())),(0,uc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt).then((async()=>{this._parent.map.on("styledata",(()=>this.requestUpdate())),this.requestUpdate()}))}))}render(){var vt,bt,le,Dl;const uc=null===(vt=this._parent)||void 0===vt||null===(bt=vt.map)||void 0===bt||null===(le=bt._attribution)||void 0===le?void 0:le._innerContainer,mc=null===(Dl=this._parent)||void 0===Dl?void 0:Dl._t.map.map_data.split("{m}");return this.light?uc&&uc.innerHTML.length>0?uc:sc.s6:(0,sc.qy)(ls||(ls=(0,Fl.A)(["\n\t\t\t\t","\n\t\t\t"])),uc&&uc.innerHTML.length>0?(0,sc.qy)(ho||(ho=(0,Fl.A)(["","","",""])),mc.shift(),uc,mc.shift()):sc.s6)}}MapLegend.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\t:host {\n\t\t\tfont-size: 0.7em;\n\t\t}\n\t\tsmall {\n\t\t\tfont-size: 1em;\n\t\t}\n\t\t.maplibregl-ctrl-attrib-inner {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t"]))),MapLegend.properties={light:{type:Boolean}},customElements.define("pnx-map-legend",MapLegend)},1636:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MiniPictureLegend});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(8591);class MiniPictureLegend extends Fl.WF{connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._onPicChange(this._parent.psv.getPictureMetadata()),this._parent.psv.addEventListener("picture-loaded",(()=>{this._onPicChange(this._parent.psv.getPictureMetadata())})),this._parent.psv.addEventListener("sequence-stopped",(()=>{this._onPicChange(this._parent.psv.getPictureMetadata())}))}))}_onPicChange(vt){this._caption=null===vt||void 0===vt?void 0:vt.caption}render(){var vt,bt;return null!==(vt=this._caption)&&void 0!==vt&&vt.date?(0,Fl.qy)(ls||(ls=(0,Dl.A)(['<div class="pnx-panel">',"</div>"])),this._caption.date.toLocaleDateString((null===(bt=this._parent)||void 0===bt?void 0:bt.lang)||window.navigator.language,{year:"numeric",month:"long",day:"numeric"})):Fl.s6}}MiniPictureLegend.styles=[uc.nd,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t.pnx-panel {\n\t\t\tbottom: 0;\n\t\t\tright: 0;\n\t\t\twidth: unset;\n\t\t\tmin-width: unset;\n\t\t\tborder-radius: 10px;\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-right: none;\n\t\t\tborder-bottom: none;\n\t\t\tpadding: 2px 5px;\n\t\t\tfont-size: 0.7em;\n\t\t}\n\t"])))],MiniPictureLegend.properties={_caption:{state:!0}},customElements.define("pnx-mini-picture-legend",MiniPictureLegend)},3589:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PictureLegend});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc,du,_u=le(7528),Md=le(4542),Ld=le(686),Nd=le(1198),Rd=le(5995),Od=le(8466),jd=le(4336),Ud=le(2593),Gd=le(7879),qd=le(3324),Hd=le(4927),Wd=le(6311),Zd=le(1260),Yd=le(8591),Qd=le(3606),Xd=le(7208);class PictureLegend extends Md.WF{constructor(){super(),this._expanded=!0,this.collapsable=!1,this.light=!1}connectedCallback(){super.connectedCallback(),this._expanded=!this.collapsable,this._prevSearches={},(0,Rd.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._onPicChange(this._parent.psv.getPictureMetadata()),this._parent.psv.addEventListener("picture-loaded",(()=>{this._onPicChange(this._parent.psv.getPictureMetadata())})),this._parent.psv.addEventListener("sequence-stopped",(()=>{this._onPicChange(this._parent.psv.getPictureMetadata())})),this._parent.psv.addEventListener("annotation-focused",(()=>{this._expanded=!0})),this._parent._initParams.getParentPostInit().skipTagsMenuOpening||this._parent.psv.addEventListener("annotations-toggled",(vt=>{vt.detail.visible&&(this._expanded=!0)})),this._parent.psv.getSelectedAnnotations().length>0&&(this._expanded=!0)}))}_onPicChange(vt){if(clearTimeout(this._addrTimer1),this._caption=null===vt||void 0===vt?void 0:vt.caption,vt){var bt;this._visibility=(null===(bt=vt.properties)||void 0===bt?void 0:bt["geovisio:visibility"])||null,"anyone"===this._visibility&&(this._visibility=null);const le="".concat(vt.gps[0].toFixed(4),"/").concat(vt.gps[1].toFixed(4));this._prevSearches[le]?this._addr=this._prevSearches[le]:this._parent.psv._sequencePlaying||(this._addr="",this._addrTimer1=setTimeout((()=>{(0,Qd.reverseGeocodingNominatim)(vt.gps[1],vt.gps[0]).then((vt=>{clearTimeout(this._addrTimer2),this._addr=vt,this._prevSearches[le]=vt}))}),500))}else this._visibility=null,this._addr=""}_onBackClick(){var vt,bt;this._parent.isWidthSmall()&&"map"===this._parent.focus?this._parent.select():null===(vt=(bt=this._parent)._setFocus)||void 0===vt||vt.call(bt,"map")}blockOnEditing(vt){this._blockOnEditor=vt}render(){var vt,bt,le,du,Yd,Qd,Kd,Jd,$d;if(!this._caption)return Md.s6;const sp=(null===(vt=this._parent)||void 0===vt?void 0:vt.lang)||window.navigator.language,tm=(0,Nd.H)({"pnx-hidden":this._expanded}),em=(0,Nd.H)({"pnx-hidden":!this._expanded});var im,nm,rm,am,sm,om;return this.light?(0,Ld.qy)(ls||(ls=(0,_u.A)(['<div class="pnx-picture-legend-light">\n\t\t\t\t',"\n\n\t\t\t\t","\n\n\t\t\t\t","\n\n\t\t\t\t","\n\n\t\t\t\t","\n\t\t\t"])),(null===(im=this._caption.producer)||void 0===im?void 0:im.length)>0?(0,Ld.qy)(ho||(ho=(0,_u.A)(["\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=",'\n\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t>","</a>\n\t\t\t\t</div>"])),(0,Xd.PanoramaxMetaCatalogURL)()+"/?pic="+this._parent.psv.getPictureMetadata().id,null===(nm=this._parent)||void 0===nm?void 0:nm._t.pnx.share_page,this._caption.producer[this._caption.producer.length-1]):Md.s6,(null===(rm=this._caption.producer)||void 0===rm?void 0:rm.length)>0&&this._caption.date?"-":"",this._caption.date?new Intl.DateTimeFormat(sp,{timeZone:this._caption.tz,dateStyle:"short"}).format(this._caption.date):Md.s6,((null===(am=this._caption.producer)||void 0===am?void 0:am.length)>0||this._caption.date)&&null!==(sm=this._caption)&&void 0!==sm&&sm.license?"|":"",null!==(om=this._caption)&&void 0!==om&&om.license?(0,Ld.qy)(Dl||(Dl=(0,_u.A)(["",""])),(0,Ld.Bk)(this._caption.license)):Md.s6):(0,Ld.qy)(Fl||(Fl=(0,_u.A)(["\n\t\t\t<div class=",">\n\t\t\t\t",'\n\n\t\t\t\t<div id="pic-legend-addr" title=',">\n\t\t\t\t\t",'\n\t\t\t\t</div>\n\n\t\t\t\t<div class="headline-buttons">\n\t\t\t\t\t','\n\n\t\t\t\t\t<pnx-button\n\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\tclass=',"\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>\n\t\t\t\t\t\t","\n\t\t\t\t\t</pnx-button>\n\n\t\t\t\t\t<pnx-picture-legend-actions\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t\t._parent=","\n\t\t\t\t\t\t?full=",'\n\t\t\t\t\t></pnx-picture-legend-actions>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div id="pic-legend-info" class=',">\n\t\t\t\t","\n\n\t\t\t\t",'\n\t\t\t</div>\n\n\t\t\t<div id="pic-legend-cta" class=','>\n\t\t\t\t<pnx-button size="sm" @click=',">\n\t\t\t\t\t"," ","\n\t\t\t\t</pnx-button>\n\n\t\t\t\t",'\n\n\t\t\t\t<slot name="editors">\n\t\t\t\t\t<pnx-widget-osmeditors ._parent='," />\n\t\t\t\t</slot>\n\t\t\t</div>\n\n\t\t\t<pnx-picture-metadata\n\t\t\t\tclass=","\n\t\t\t\t.block-editor=","\n\t\t\t\t._parent=","\n\t\t\t></pnx-picture-metadata>\n\n\t\t\t","\n\t\t"])),(0,Nd.H)({headline:!0,"pnx-hidden":this._blockOnEditor}),this._parent._setFocus?(0,Ld.qy)(sc||(sc=(0,_u.A)(['\n\t\t\t\t\t<pnx-button\n\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t@click=',"\n\t\t\t\t\t>\n\t\t\t\t\t\t","\n\t\t\t\t\t</pnx-button>\n\t\t\t\t"])),this._onBackClick,(0,Rd.fa)(Od.Ce)):Md.s6,this._addr||"",(null===(bt=this._addr)||void 0===bt?void 0:bt.length)>0?this._addr:(0,Ld.qy)(uc||(uc=(0,_u.A)(['<span class="pnx-placeholder-loading">&nbsp;</span>']))),this._visibility?(0,Ld.qy)(mc||(mc=(0,_u.A)(['\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass="visibility-badge"\n\t\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</div>\n\t\t\t\t\t"])),null===(le=this._parent)||void 0===le?void 0:le._t.pnx["visibility_title_"+this._visibility],(0,Rd.fa)(qd.aA,{transform:{size:16}}),null===(du=this._parent)||void 0===du?void 0:du._t.pnx["visibility_"+this._visibility]):Md.s6,tm,null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.share,(()=>this._parent._showShareOptions()),(0,Rd.fa)(Zd.faShareNodes),(vt=>vt.stopPropagation()),this._parent,this._expanded,tm,(null===(Qd=this._caption.producer)||void 0===Qd?void 0:Qd.length)>0?(0,Ld.qy)(gc||(gc=(0,_u.A)(['<div class="info-block">\n\t\t\t\t\t',"\n\t\t\t\t\t","\n\t\t\t\t</div>"])),(0,Rd.fa)(Gd.X4),this._caption.producer[this._caption.producer.length-1]):Md.s6,this._caption.date?(0,Ld.qy)(Ac||(Ac=(0,_u.A)(['<div class="info-block">\n\t\t\t\t\t',"\n\t\t\t\t\t","\t\t\t\t</div>"])),(0,Rd.fa)(Hd.BE),this._caption.date.toLocaleDateString((null===(Kd=this._parent)||void 0===Kd?void 0:Kd.lang)||window.navigator.language,{year:"numeric",month:"long",day:"numeric"})):Md.s6,(0,Nd.H)({"pnx-hidden":!this._expanded||this._blockOnEditor}),(()=>this._parent._showShareOptions()),(0,Rd.fa)(Zd.faShareNodes),null===(Jd=this._parent)||void 0===Jd?void 0:Jd._t.pnx.share,this._parent.getAPI()._endpoints.report?(0,Ld.qy)(Ec||(Ec=(0,_u.A)(['\n\t\t\t\t\t\t<pnx-button kind="fullwarn" size="sm" @click=',">\n\t\t\t\t\t\t\t"," ","\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t"])),(()=>this._parent._showReportForm()),(0,Rd.fa)(Wd.JA),null===($d=this._parent)||void 0===$d?void 0:$d._t.pnx.report):Md.s6,this._parent,em,this._blockOnEditor,this._parent,this.collapsable&&!this._blockOnEditor?(0,Ld.qy)(kc||(kc=(0,_u.A)(['<pnx-button\n\t\t\t\tkind="inline"\n\t\t\t\tsize="sm"\n\t\t\t\tid="pic-legend-expand"\n\t\t\t\t@click=',"\n\t\t\t>","</pnx-button>"])),(()=>this._expanded=!this._expanded),this._expanded?(0,Rd.fa)(jd.w2):(0,Rd.fa)(Ud.Jt)):Md.s6)}}PictureLegend.styles=[Yd.qf,Yd.nd,Yd.R,(0,Md.AH)(du||(du=(0,_u.A)(["\n\t\t:host {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tmargin: 0;\n\t\t\tfont-family: var(--font-family);\n\t\t\tflex-wrap: nowrap;\n\t\t}\n\n\t\t@media screen and (min-width: 576px) {\n\t\t\t:host {\n\t\t\t\tmax-height: 70vh;\n\t\t\t}\n\t\t}\n\n\t\t/* Top bar */\n\t\t.headline {\n\t\t\tdisplay: flex;\n\t\t\tgap: 10px;\n\t\t\talign-items: center;\n\t\t\tmargin: 10px 10px 5px 10px;\n\t\t\tjustify-content: space-between;\n\t\t\tflex: 1;\n\t\t}\n\n\t\t.headline-buttons {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\talign-items: center;\n\t\t}\n\n\t\t/* Address line */\n\t\t#pic-legend-addr {\n\t\t\tline-height: 1.2em;\n\t\t\tfont-size: 1em;\n\t\t\tmargin-bottom: 2px;\n\t\t\tflex-grow: 5;\n\t\t\tfont-weight: 800;\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n \t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t#pic-legend-addr span {\n\t\t\tdisplay: inline-block;\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t/* Visibility badge */\n\t\t.visibility-badge {\n\t\t\tcursor: help;\n\t\t\tbackground: var(--blue);\n\t\t\tcolor: var(--white);\n\t\t\tborder-radius: 10px;\n\t\t\theight: 20px;\n\t\t\tdisplay: inline-flex;\n\t\t\tfont-size: 0.8em;\n\t\t\tpadding: 0 5px;\n \t\t\tgap: 3px;\n\t\t\tfont-size: 0.7em;\n \t\t\talign-items: center;\n\t\t}\n\n\t\t.visibility-badge svg {\n\t\t\theight: 1em;\n\t\t}\n\n\t\t/* Minimal info block */\n\t\t#pic-legend-info {\n\t\t\tmargin: 10px;\n\t\t\tdisplay: flex;\n\t\t\tgap: 10px;\n\t\t\tjustify-content: space-around;\n\t\t}\n\t\t.info-block {\n\t\t\tdisplay: flex;\n\t\t\tflex-shrink: 1;\n\t\t\tgap: 5px;\n\t\t\tfont-weight: 600;\n\t\t\tfont-size: 0.85em;\n\t\t\talign-items: center;\n\t\t}\n\t\t.info-block svg { height: 18px; }\n\n\t\t/* Expand button */\n\t\t#pic-legend-expand {\n\t\t\tdisplay: block;\n\t\t\tmargin-top: 5px;\n\t\t\tmax-width: 100%;\n\t\t\tflex: 1;\n\t\t}\n\t\t#pic-legend-expand::part(btn) {\n\t\t\tborder-radius: 10px;\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-top-left-radius: 0;\n\t\t}\n\n\t\t/* Details block */\n\t\tpnx-picture-metadata {\n\t\t\tmargin: 5px 10px;\n\t\t\tdisplay: block;\n\t\t\tbox-sizing: border-box;\n\t\t\tflex: 1;\n\t\t\toverflow-y: auto;\n\t\t}\n\n\t\t/* Details actions */\n\t\t#pic-legend-cta {\n\t\t\tdisplay: flex;\n\t\t\tmargin: 5px 10px;\n\t\t\tborder-bottom-left-radius: 10px;\n\t\t\tborder-bottom-right-radius: 10px;\n\t\t\tgap: 5px;\n\t\t\tflex-wrap: wrap;\n\t\t\tflex: 1;\n\t\t}\n\n\t\t/* More options menu */\n\t\t#pnx-legend-opts { min-width: unset; }\n\n\t\t/* Editors */\n\t\t#pic-legend-editors { margin: 0 10px; }\n\n\t\t/* Light version */\n\t\t.pnx-picture-legend-light {\n\t\t\twidth: max-content;\n\t\t\tfont-size: 10px;\n\t\t}\n\t"])))],PictureLegend.properties={light:{type:Boolean},_caption:{state:!0},_addr:{state:!0},_expanded:{state:!0},_blockOnEditor:{state:!0},_visibility:{state:!0},collapsable:{type:Boolean}},customElements.define("pnx-picture-legend",PictureLegend)},6993:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PictureMetadata});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc,du,_u,Md,Ld,Nd,Rd,Od,jd,Ud,Gd,qd,Hd,Wd=le(7528),Zd=le(4542),Yd=le(686),Qd=le(5995),Xd=le(3520),Kd=le(3233),Jd=le(2480),$d=le(5279),sp=le(4954),tm=le(2077),em=le(5124),im=le(6668),nm=le(6249),rm=le(8591),am=le(508),sm=le(7208),om=le(7343);const missing=()=>(0,Qd.fa)(em.Ev,{styles:{height:"16px"}});class PictureMetadata extends Zd.WF{connectedCallback(){var vt;super.connectedCallback();const gototags=()=>{const vt=this.shadowRoot.querySelector("pnx-tabs");vt&&vt.setAttribute("activeTabIndex",4)};null===(vt=window.navigation)||void 0===vt||vt.addEventListener("navigate",(()=>{this.requestUpdate()})),(0,Qd.onceParentAvailable)(this).then((()=>{var vt,bt,le,ls;this._meta=null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getPictureMetadata(),null===(le=this._parent)||void 0===le||null===(ls=le.oncePSVReady)||void 0===ls||ls.call(le).then((()=>{this._parent.psv.addEventListener("picture-loaded",(()=>{this._meta=this._parent.psv.getPictureMetadata()})),this._parent._initParams.getParentPostInit().skipTagsMenuOpening||(this._parent.psv.addEventListener("annotation-focused",gototags),this._parent.psv.addEventListener("annotations-toggled",(vt=>{vt.detail.visible&&gototags()})),this._parent.psv.getSelectedAnnotations().length>0&&gototags())}))}))}_onQualityScoreClick(){const vt=this.shadowRoot.querySelector("pnx-tabs");vt&&vt.setAttribute("activeTabIndex",3)}_onCaptureDateClick(){const vt=this.shadowRoot.querySelector("pnx-tabs");vt&&vt.setAttribute("activeTabIndex",1)}_toTab(vt,bt){return(0,Yd.qy)(ls||(ls=(0,Wd.A)(['\n\t\t\t<h4 slot="title">','</h4>\n\t\t\t<div slot="content" class="data-blocks">\n\t\t\t\t',"\n\t\t\t</div>\n\t\t"])),vt,bt.filter((vt=>vt)).map((vt=>(0,Yd.qy)(ho||(ho=(0,Wd.A)(['<div class="data-block" style=',">\n\t\t\t\t\t<h5>","</h5>\n\t\t\t\t\t<div style="," @click=",">","</div>\n\t\t\t\t</div>"])),vt.style,vt.title,vt.content_style,vt.click,vt.content))))}render(){var vt,bt,le,ls,ho,Hd,em,rm,lm,cm,um,hm,dm,pm,mm,fm,gm,Am,_m,ym,vm,xm,bm,wm,Em,Mm,Sm,Tm,km,Cm,Im,Dm,Lm,Pm,zm,Nm,Rm,Fm,Om,Bm,jm,Um,Vm,Gm,qm,Hm,Wm,Zm,Ym,Qm,Xm,Km,Jm;if(!this._meta)return Zd.s6;const $m=(null===(vt=this._parent)||void 0===vt?void 0:vt.lang)||window.navigator.language,tg=null===(bt=this._meta)||void 0===bt||null===(le=bt.properties)||void 0===le?void 0:le["pers:interior_orientation"],eg=[tg.camera_manufacturer,tg.camera_model].filter((vt=>vt)).join(" "),ig=null!==tg&&void 0!==tg&&tg.focal_length?"".concat(null===tg||void 0===tg?void 0:tg.focal_length," mm"):missing();let ng=null===tg||void 0===tg?void 0:tg.sensor_array_dimensions;ng&&(ng="".concat(ng[0]," x ").concat(ng[1]," px (").concat(Math.floor(ng[0]*ng[1]/1e6)," Mpx)"));let rg=null===(ls=this._parent)||void 0===ls?void 0:ls._t.pnx.picture_flat,ag=null===(ho=this._parent)||void 0===ho?void 0:ho._t.pnx.picture_flat_long,sg=null===tg||void 0===tg?void 0:tg.field_of_view;var og,lg;null!==sg&&void 0!==sg&&(360===sg?(rg=null===(og=this._parent)||void 0===og?void 0:og._t.pnx.picture_360,ag=null===(lg=this._parent)||void 0===lg?void 0:lg._t.pnx.picture_360_long):rg+=" (".concat(sg,"\xb0)"));const cg=[{title:null===(Hd=this._parent)||void 0===Hd?void 0:Hd._t.pnx.metadata_camera_make,content:(null===tg||void 0===tg?void 0:tg.camera_manufacturer)||missing()},{title:null===(em=this._parent)||void 0===em?void 0:em._t.pnx.metadata_camera_model,content:(null===tg||void 0===tg?void 0:tg.camera_model)||missing()},{title:null===(rm=this._parent)||void 0===rm?void 0:rm._t.pnx.metadata_camera_type,content:rg},{title:null===(lm=this._parent)||void 0===lm?void 0:lm._t.pnx.metadata_camera_resolution,content:ng||missing()},{title:null===(cm=this._parent)||void 0===cm?void 0:cm._t.pnx.metadata_camera_focal_length,content:ig},(null===(um=this._meta)||void 0===um||null===(hm=um.caption)||void 0===hm?void 0:hm.date)&&{title:null===(dm=this._parent)||void 0===dm?void 0:dm._t.pnx.metadata_general_date,content:(0,Yd.qy)(Dl||(Dl=(0,Wd.A)(["\n\t\t\t\t\t<strong>","</strong>\n\t\t\t\t\t<br />","\n\t\t\t\t"])),new Intl.DateTimeFormat($m,{timeZone:this._meta.caption.tz,dateStyle:"short"}).format(this._meta.caption.date),new Intl.DateTimeFormat($m,{timeZone:this._meta.caption.tz,hour:"numeric",minute:"numeric",second:"numeric",fractionalSecondDigits:3,timeZoneName:"longOffset"}).format(this._meta.caption.date))}],ug=void 0!==(null===(pm=this._meta)||void 0===pm||null===(mm=pm.properties)||void 0===mm?void 0:mm["view:azimuth"])&&"".concat(this._meta.properties["view:azimuth"],"\xb0"),hg=[{title:null===(fm=this._parent)||void 0===fm?void 0:fm._t.pnx.metadata_location_coordinates,content:(0,Yd.qy)(Fl||(Fl=(0,Wd.A)(["\n\t\t\t\t\t",", ","\n\t\t\t\t\t<pnx-copy-coordinates\n\t\t\t\t\t\t._parent=","\n\t\t\t\t\t\t.gps=",'\n\t\t\t\t\t\tstyle="margin-left: 10px"\n\t\t\t\t\t></pnx-copy-coordinates>\n\t\t\t\t'])),this._meta.gps[0].toFixed(5),this._meta.gps[1].toFixed(5),this._parent,this._meta.gps),style:"width: 100%"},{title:null===(gm=this._parent)||void 0===gm?void 0:gm._t.pnx.metadata_location_orientation,content:ug||missing()},{title:null===(Am=this._parent)||void 0===Am?void 0:Am._t.pnx.metadata_location_precision,content:(0,am.getGPSPrecision)(this._meta)||missing()}],dg=(null===(_m=this._parent)||void 0===_m||null===(ym=_m.map)||void 0===ym||null===(vm=ym._hasQualityScore)||void 0===vm?void 0:vm.call(ym))||(null===(xm=this._meta)||void 0===xm||null===(bm=xm.properties)||void 0===bm?void 0:bm["quality:horizontal_accuracy"])||(null===(wm=this._meta)||void 0===wm||null===(Em=wm.properties)||void 0===Em?void 0:Em["panoramax:horizontal_pixel_density"]);let pg,mg;if(dg){var fg,gg,Ag,_g,yg,vg,xg,bg,wg,Eg,Mg;const vt=(0,om.getGrade)(om.QUALITYSCORE_GPS_VALUES,null===(fg=this._meta)||void 0===fg||null===(gg=fg.properties)||void 0===gg?void 0:gg["quality:horizontal_accuracy"]),bt=(0,om.getGrade)(360===(null===(Ag=this._meta)||void 0===Ag?void 0:Ag.horizontalFov)?om.QUALITYSCORE_RES_360_VALUES:om.QUALITYSCORE_RES_FLAT_VALUES,null===(_g=this._meta)||void 0===_g||null===(yg=_g.properties)||void 0===yg?void 0:yg["panoramax:horizontal_pixel_density"]);mg=Math.round((bt||1)*om.QUALITYSCORE_POND_RES+(vt||1)*om.QUALITYSCORE_POND_GPS),pg=[{title:(0,Yd.qy)(sc||(sc=(0,Wd.A)(["\n\t\t\t\t\t\t",'\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\ttitle="','"\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t"])),null===(vg=this._parent)||void 0===vg?void 0:vg._t.pnx.metadata_quality_score,null===(xg=this._parent)||void 0===xg?void 0:xg._t.pnx.metadata_quality_help,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showQualityScoreDoc()}),(0,Qd.fa)(im.iW)),content:(0,Yd.qy)(uc||(uc=(0,Wd.A)(["<pnx-quality-score grade=",' style="font-size: 16px"></pnx-quality-score>'])),mg),style:"width: 100%"},{title:null===(bg=this._parent)||void 0===bg?void 0:bg._t.pnx.metadata_quality_gps_score,content:(0,Qd.createWebComp)("pnx-grade",{stars:vt,_t:null===(wg=this._parent)||void 0===wg?void 0:wg._t})},{title:null===(Eg=this._parent)||void 0===Eg?void 0:Eg._t.pnx.metadata_quality_resolution_score,content:(0,Qd.createWebComp)("pnx-grade",{stars:bt,_t:null===(Mg=this._parent)||void 0===Mg?void 0:Mg._t})}]}const Sg=Object.entries(this._meta.properties.exif).sort().filter((vt=>{let[,bt]=vt;return bt})).map((vt=>{let[bt,le]=vt;return JSON.stringify(le).includes("\\u")&&(le=JSON.stringify(le).replace(/\\u[0-9A-Fa-f]{4}/g,(vt=>" 0x"+parseInt(vt.slice(2),16).toString(16).toUpperCase().padStart(4,"0"))).slice(1,-1).trim()),{title:bt,content:le.length>30?(0,Yd.qy)(mc||(mc=(0,Wd.A)(["<textarea readonly .value=","></textarea>"])),le):le,style:le.length>30?"width: 100%":void 0}}));Sg.unshift({content:(0,Yd.qy)(gc||(gc=(0,Wd.A)(['\n\t\t\t\t<pnx-link-button\n\t\t\t\t\tsize="sm"\n\t\t\t\t\ttarget="_blank"\n\t\t\t\t\thref="https://exiv2.org/metadata.html"\n\t\t\t\t\ttitle=',"\n\t\t\t\t>"," ","</pnx-link-button>\n\t\t\t"])),null===(Mm=this._parent)||void 0===Mm?void 0:Mm._t.pnx.metadata_exif_doc_title,(0,Qd.fa)(im.iW),null===(Sm=this._parent)||void 0===Sm?void 0:Sm._t.pnx.metadata_exif_doc),style:"width: 100%"});const Tg=[(null===(Tm=this._meta)||void 0===Tm||null===(km=Tm.caption)||void 0===km||null===(Cm=km.producer)||void 0===Cm?void 0:Cm.length)>0&&{title:null===(Im=this._parent)||void 0===Im?void 0:Im._t.pnx.metadata_general_author,content:(0,Yd.qy)(Ac||(Ac=(0,Wd.A)(["\n\t\t\t\t\t<strong>","</strong>\n\t\t\t\t\t","\n\t\t\t\t"])),this._meta.caption.producer[this._meta.caption.producer.length-1],this._meta.caption.producer.length>1?(0,Yd.qy)(Ec||(Ec=(0,Wd.A)(["<br />",""])),this._meta.caption.producer.slice(0,-1).join(", ")):Zd.s6)},(null===(Dm=this._meta)||void 0===Dm||null===(Lm=Dm.caption)||void 0===Lm?void 0:Lm.date)&&{title:null===(Pm=this._parent)||void 0===Pm?void 0:Pm._t.pnx.metadata_general_date,click:this._onCaptureDateClick,content_style:"cursor: pointer",content:(0,Yd.qy)(kc||(kc=(0,Wd.A)(["\n\t\t\t\t\t<strong>","</strong>\n\t\t\t\t\t<br />","\n\t\t\t\t"])),new Intl.DateTimeFormat($m,{timeZone:this._meta.caption.tz,dateStyle:"long"}).format(this._meta.caption.date),new Intl.DateTimeFormat($m,{timeZone:this._meta.caption.tz,hour:"numeric",minute:"numeric",second:"numeric"}).format(this._meta.caption.date))},tg&&{title:null===(zm=this._parent)||void 0===zm?void 0:zm._t.pnx.metadata_camera,content:(0,Yd.qy)(du||(du=(0,Wd.A)(["\n\t\t\t\t\t<strong>","</strong>\n\t\t\t\t\t<br />","\n\t\t\t\t"])),eg.length>0?eg:missing(),ag)},(null===(Nm=this._meta)||void 0===Nm||null===(Rm=Nm.caption)||void 0===Rm?void 0:Rm.license)&&{title:null===(Fm=this._parent)||void 0===Fm?void 0:Fm._t.pnx.metadata_general_license,content:(0,Yd.qy)(_u||(_u=(0,Wd.A)(["",""])),(0,Yd.Bk)(this._meta.caption.license))},dg&&{title:null===(Om=this._parent)||void 0===Om?void 0:Om._t.pnx.metadata_quality,click:this._onQualityScoreClick,content:(0,Yd.qy)(Md||(Md=(0,Wd.A)(["<pnx-quality-score\n\t\t\t\t\tgrade=",'\n\t\t\t\t\tstyle="font-size: 14px; cursor: pointer"\n\t\t\t\t/>'])),mg)},{title:null===(Bm=this._parent)||void 0===Bm?void 0:Bm._t.pnx.metadata_general_copy_id,content_style:"display: flex; gap: 5px;",content:(0,Yd.qy)(Ld||(Ld=(0,Wd.A)(['\n\t\t\t\t\t<pnx-copy-button\n\t\t\t\t\t\tkind="outline"\n\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\t._t=',"\n\t\t\t\t\t\ttext=","\n\t\t\t\t\t\ttitle=",'\n\t\t\t\t\t\tstyle="flex: 1"\n\t\t\t\t\t>\n\t\t\t\t\t\t'," ",'\n\t\t\t\t\t</pnx-copy-button>\n\t\t\t\t\t<pnx-copy-button\n\t\t\t\t\t\tkind="outline"\n\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\t._t=',"\n\t\t\t\t\t\ttext=","\n\t\t\t\t\t\ttitle=",'\n\t\t\t\t\t\tstyle="flex: 1"\n\t\t\t\t\t>\n\t\t\t\t\t\t'," ","\n\t\t\t\t\t</pnx-copy-button>\n\t\t\t\t"])),null===(jm=this._parent)||void 0===jm?void 0:jm._t,this._meta.id,this._meta.id,(0,Qd.fa)($d.jb),null===(Um=this._parent)||void 0===Um?void 0:Um._t.pnx.metadata_general_picid,null===(Vm=this._parent)||void 0===Vm?void 0:Vm._t,this._meta.sequence.id,this._meta.sequence.id,(0,Qd.fa)(sp.yv),null===(Gm=this._parent)||void 0===Gm?void 0:Gm._t.pnx.metadata_general_seqid)},(null===(qm=this._meta)||void 0===qm?void 0:qm.origInstance)&&{title:null===(Hm=this._parent)||void 0===Hm?void 0:Hm._t.pnx.metadata_general_instance,content:(0,Yd.qy)(Nd||(Nd=(0,Wd.A)(["<strong>\n\t\t\t\t\t<a href=",' target="_blank" style="text-decoration: none">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc=','\n\t\t\t\t\t\t\tstyle="height: 30px; max-width: 150px; vertical-align: middle"\n\t\t\t\t\t\t\talt=""\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span style="text-decoration: underline">\n\t\t\t\t\t\t\t',"\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</strong>"])),this._meta.origInstance.href+window.location.search,(0,sm.PanoramaxMetaCatalogURL)()+"/api/instances/"+this._meta.origInstance.instance_name+"/logo",this._meta.origInstance.instance_name||this._meta.origInstance.href.replace(/^http.?:\/\//,""))}];return(0,Yd.qy)(Rd||(Rd=(0,Wd.A)(["<pnx-tabs .hideNav=",">\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t","\n\n\t\t\t",'\n\n\t\t\t<h4 slot="title">'," ",'</h4>\n\t\t\t<div slot="content" class="data-blocks">\n\t\t\t\t<pnx-semantics-metadata ._parent=',"></pnx-semantics-metadata>\n\t\t\t</div>\n\n\t\t\t","\n\t\t</pnx-tabs>"])),this["block-editor"],this._toTab((0,Yd.qy)(Od||(Od=(0,Wd.A)([""," ",""])),(0,Qd.fa)($d.jb),null===(Wm=this._parent)||void 0===Wm?void 0:Wm._t.pnx.metadata_summary),Tg),this._toTab((0,Yd.qy)(jd||(jd=(0,Wd.A)([""," ",""])),(0,Qd.fa)(Jd.rw),null===(Zm=this._parent)||void 0===Zm?void 0:Zm._t.pnx.metadata_camera),cg),this._toTab((0,Yd.qy)(Ud||(Ud=(0,Wd.A)([""," ",""])),(0,Qd.fa)(Xd.faLocationDot),null===(Ym=this._parent)||void 0===Ym?void 0:Ym._t.pnx.metadata_location),hg),dg?this._toTab((0,Yd.qy)(Gd||(Gd=(0,Wd.A)([""," ",""])),(0,Qd.fa)(Kd.B9),null===(Qm=this._parent)||void 0===Qm?void 0:Qm._t.pnx.metadata_quality),pg):Zd.s6,(0,Qd.fa)(nm.DX),null===(Xm=this._parent)||void 0===Xm?void 0:Xm._t.pnx.semantics_title,this._parent,null!==(Km=this._meta.properties)&&void 0!==Km&&Km.exif?this._toTab((0,Yd.qy)(qd||(qd=(0,Wd.A)([""," ",""])),(0,Qd.fa)(tm.DD),null===(Jm=this._parent)||void 0===Jm?void 0:Jm._t.pnx.metadata_exif),Sg):Zd.s6)}}PictureMetadata.styles=[rm.Op,rm.YC,rm.PC,rm.R,rm.Tk,(0,Zd.AH)(Hd||(Hd=(0,Wd.A)(['\n\t\tdiv[slot="content"] {\n\t\t\tpadding: 5px 10px;\n\t\t\tbackground-color: #ededed;\n\t\t}\n\n\t\t.data-block {\n\t\t\tmin-width: 50%;\n\t\t}\n\n\t\tpnx-semantics-table {\n\t\t\toverflow-x: auto;\n \t\t\tdisplay: block;\n\t\t}\n\t'])))],PictureMetadata.properties={_meta:{state:!0},"block-editor":{type:Boolean}},customElements.define("pnx-picture-metadata",PictureMetadata)},499:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PlayerOptions});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(8591),uc=le(7744),mc=le(325),gc=le(9243),Ac=le(9048),Ec=le(5995);class PlayerOptions extends Fl.WF{connectedCallback(){super.connectedCallback(),(0,Ec.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.addEventListener("transition-duration-changed",(vt=>{this.renderRoot.querySelector("#pnx-player-speed").value=Ac.Vf-vt.detail.value}))}))}_onSpeedChange(vt){var bt,le;const ls=Ac.Vf-vt.target.value;null===(bt=this._parent)||void 0===bt||null===(le=bt.psv)||void 0===le||le.setTransitionDuration(ls)}_onContrastClick(){const vt=this.renderRoot.querySelector("#pnx-player-contrast");var bt,le,ls,ho;"true"==vt.getAttribute("active")?(vt.removeAttribute("active"),null===(bt=this._parent)||void 0===bt||null===(le=bt.psv)||void 0===le||le.setHigherContrast(!1)):(vt.setAttribute("active","true"),null===(ls=this._parent)||void 0===ls||null===(ho=ls.psv)||void 0===ho||ho.setHigherContrast(!0))}render(){var vt,bt,le,ho;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<div class="pnx-input-range" title="','">\n\t\t\t\t','\n\t\t\t\t<input\n\t\t\t\t\tid="pnx-player-speed"\n\t\t\t\t\ttype="range" name="speed"\n\t\t\t\t\tmin="0" max="','"\n\t\t\t\t\tvalue="','"\n\t\t\t\t\ttitle="','"\n\t\t\t\t\tstyle="width: 100%;"\n\t\t\t\t\t@change=',"\n\t\t\t\t/>\n\t\t\t\t",'\n\t\t\t</div>\n\t\t\t<pnx-button\n\t\t\t\tid="pnx-player-contrast"\n\t\t\t\ttitle="','"\n\t\t\t\tkind="outline"\n\t\t\t\t@click=',"\n\t\t\t>\n\t\t\t\t","\n\t\t\t</pnx-button>\n\t\t"])),null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.sequence_speed,(0,Ec.fa)(gc.rO),Ac.Vf-100,Ac.Vf-(null===(bt=this._parent)||void 0===bt?void 0:bt.psv.getTransitionDuration()),null===(le=this._parent)||void 0===le?void 0:le._t.pnx.sequence_speed,this._onSpeedChange,(0,Ec.fa)(uc.KM),null===(ho=this._parent)||void 0===ho?void 0:ho._t.pnx.contrast,this._onContrastClick,(0,Ec.fa)(mc.rC))}}PlayerOptions.styles=[sc.Op,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tgap: 15px;\n\t\t\tpadding: 5px 15px;\n\t\t}\n\n\t\t.pnx-input-range {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: space-between;\n\t\t\tgap: 10px;\n\t\t\talign-items: center;\n\t\t\twidth: 100%;\n\t\t}\n\t"])))],customElements.define("pnx-player-options",PlayerOptions)},5187:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>QualityScoreDoc});var ls,ho=le(7528),Dl=le(4542),Fl=le(8591),sc=le(5995),uc=le(3233),mc=le(7704);class QualityScoreDoc extends Dl.WF{render(){var vt,bt,le,Fl,gc,Ac,Ec,kc,du;return(0,Dl.qy)(ls||(ls=(0,ho.A)(["\n\t\t\t<h4>"," ","</h4>\n\t\t\t<p>","</p>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-quality-score grade=""></pnx-quality-score>\n\t\t\t<p>',"</p>\n\t\t\t<p>","</p>\n\t\t\t<ul>\n\t\t\t\t<li>","</li>\n\t\t\t\t<li>","</li>\n\t\t\t</ul>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-link-button\n\t\t\t\thref="https://docs.panoramax.fr/pictures-metadata/quality_score/"\n\t\t\t\ttarget="_blank"\n\t\t\t\tkind="outline"\n\t\t\t\tstyle="width: 100%"\n\t\t\t>'," ","</pnx-link-button>\n\t\t"])),(0,sc.fa)(uc.B9),null===(vt=this._t)||void 0===vt?void 0:vt.pnx.filter_qualityscore,null===(bt=this._t)||void 0===bt?void 0:bt.pnx.qualityscore_doc_1,null===(le=this._t)||void 0===le?void 0:le.pnx.qualityscore_doc_2,null===(Fl=this._t)||void 0===Fl?void 0:Fl.pnx.qualityscore_doc_3,null===(gc=this._t)||void 0===gc?void 0:gc.pnx.qualityscore_doc_4,null===(Ac=this._t)||void 0===Ac?void 0:Ac.pnx.qualityscore_doc_41,null===(Ec=this._t)||void 0===Ec?void 0:Ec.pnx.qualityscore_doc_42,null===(kc=this._t)||void 0===kc?void 0:kc.pnx.qualityscore_doc_5,(0,sc.fa)(mc.A),null===(du=this._t)||void 0===du?void 0:du.pnx.popup_details_link)}}QualityScoreDoc.styles=[Fl.YC,Fl.Op,Fl.lk],customElements.define("pnx-quality-score-doc",QualityScoreDoc)},9588:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ReportForm});var ls,ho,Dl,Fl,sc,uc,mc,gc=le(7528),Ac=le(4542),Ec=le(8591),kc=le(5995),du=le(4881),_u=le(6311),Md=le(7516),Ld=le(2975),Nd=le(1708),Rd=le(7343);const Od=["","blur_missing","blur_excess","inappropriate","privacy","picture_low_quality","mislocated","copyright","other"];class ReportForm extends Ac.WF{_onSubmit(vt){var bt,le,ls,ho;vt.preventDefault();const Dl=null===(bt=this._parent)||void 0===bt||null===(le=bt.psv)||void 0===le?void 0:le.getPictureMetadata(),Fl=Object.fromEntries(new FormData(vt.target)),sc={issue:Fl.issue,picture_id:Fl["whole-sequence"]?null:null===Dl||void 0===Dl?void 0:Dl.id,reporter_comments:Fl.comments,reporter_email:Fl.email,sequence_id:null===Dl||void 0===Dl||null===(ls=Dl.sequence)||void 0===ls?void 0:ls.id};this.mode="wait",null===(ho=this._parent)||void 0===ho||ho.getAPI().sendReport(sc).then((()=>{this.mode="success"})).catch((vt=>{console.error(vt),this.mode="failure",this.failure=vt}))}render(){var vt,bt,le,mc,Ec,jd,Ud,Gd,qd,Hd;const Wd=(0,Rd.getUserAccount)();var Zd,Yd,Qd,Xd;return this.mode?(0,Ac.qy)(ls||(ls=(0,gc.A)(["\n\t\t\t\t<h4>"," ","</h4>\n\t\t\t\t<p>\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t</p>\n\t\t\t"])),(0,kc.fa)(_u.JA),null===(Zd=this._parent)||void 0===Zd?void 0:Zd._t.pnx.report,"wait"===this.mode?null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.report_wait:Ac.s6,"success"===this.mode?null===(Qd=this._parent)||void 0===Qd?void 0:Qd._t.pnx.report_success:Ac.s6,"failure"===this.mode?null===(Xd=this._parent)||void 0===Xd?void 0:Xd._t.pnx.report_failure.replace("{e}",this.failure):Ac.s6):(0,Ac.qy)(ho||(ho=(0,gc.A)(["\n\t\t\t<h4>"," ","</h4>\n\n\t\t\t","\n\n\t\t\t<form @submit=",'>\n\t\t\t\t<div class="group">\n\t\t\t\t\t<label for="issue">'," ",'</label>\n\t\t\t\t\t<select name="issue" id="issue" required class="pnx-100w">\n\t\t\t\t\t\t','\n\t\t\t\t\t</select>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="group group-inline">\n\t\t\t\t\t<input name="whole-sequence" id="whole-sequence" type="checkbox" />\n\t\t\t\t\t<label for="whole-sequence">','</label>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="group">\n\t\t\t\t\t<label for="comments">'," ",'</label>\n\t\t\t\t\t<textarea name="comments" id="comments" placeholder=',"></textarea>\n\t\t\t\t</div>\n\n\t\t\t\t",'\n\n\t\t\t\t<pnx-button type="submit" style="width: 100%">\n\t\t\t\t\t'," ","\n\t\t\t\t</pnx-button>\n\t\t\t</form>\n\t\t"])),(0,kc.fa)(_u.JA),null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.report,Wd&&null!==(bt=this._parent)&&void 0!==bt&&bt._t?(0,Ac.qy)(Dl||(Dl=(0,gc.A)(["\n\t\t\t\t<p>","</p>\n\t\t\t"])),null===(le=this._parent)||void 0===le?void 0:le._t.pnx.report_auth.replace("{a}",Wd.name)):Ac.s6,this._onSubmit.bind(this),(0,kc.fa)(Md.faCircleInfo),null===(mc=this._parent)||void 0===mc?void 0:mc._t.pnx.report_nature_label,Od.map((vt=>{var bt;return(0,Ac.qy)(Fl||(Fl=(0,gc.A)(["\n\t\t\t\t\t\t\t<option\n\t\t\t\t\t\t\t\tvalue=","\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t"])),vt,""===vt?(0,Ac.qy)(sc||(sc=(0,gc.A)(["disabled selected hidden"]))):Ac.s6,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.report_nature[vt])})),null===(Ec=this._parent)||void 0===Ec?void 0:Ec._t.pnx.report_whole_sequence,(0,kc.fa)(Ld.Be),null===(jd=this._parent)||void 0===jd?void 0:jd._t.pnx.report_details,null===(Ud=this._parent)||void 0===Ud?void 0:Ud._t.pnx.report_details_placeholder,Wd?Ac.s6:(0,Ac.qy)(uc||(uc=(0,gc.A)(['\n\t\t\t\t\t<div class="group">\n\t\t\t\t\t\t<label for="email">'," ",'</label>\n\t\t\t\t\t\t<input type="email" name="email" id="email" placeholder=',' class="pnx-100w" />\n\t\t\t\t\t</div>\n\t\t\t\t'])),(0,kc.fa)(du.Hz),null===(Gd=this._parent)||void 0===Gd?void 0:Gd._t.pnx.report_email,null===(qd=this._parent)||void 0===qd?void 0:qd._t.pnx.report_email_placeholder),(0,kc.fa)(Nd.is),null===(Hd=this._parent)||void 0===Hd?void 0:Hd._t.pnx.report_submit)}}ReportForm.styles=[Ec.YC,Ec.Op,Ec.Lt,Ec.PC,Ec.hF,(0,Ac.AH)(mc||(mc=(0,gc.A)(["\n\t\t.group {\n\t\t\tmargin-bottom: 10px;\n\t\t}\n\n\t\t.group:not(.group-inline) label {\n\t\t\tmargin-bottom: 5px;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t"])))],ReportForm.properties={mode:{state:!0},failure:{state:!0}},customElements.define("pnx-report-form",ReportForm)},5457:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsDoc});var ls,ho=le(7528),Dl=le(4542),Fl=le(8591),sc=le(5995),uc=le(6249),mc=le(7704);class SemanticsDoc extends Dl.WF{render(){var vt,bt,le,Fl,gc,Ac;return(0,Dl.qy)(ls||(ls=(0,ho.A)(["\n\t\t\t<h4>"," ","</h4>\n\t\t\t<p>",'</p>\n\t\t\t<ul style="padding-left: 1.5em;">\n\t\t\t\t<li>',"</li>\n\t\t\t\t<li>","</li>\n\t\t\t</ul>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-link-button\n\t\t\t\thref="https://docs.panoramax.fr/tags/"\n\t\t\t\ttarget="_blank"\n\t\t\t\tkind="outline"\n\t\t\t\tstyle="width: 100%"\n\t\t\t>'," ","</pnx-link-button>\n\t\t"])),(0,sc.fa)(uc.DX),null===(vt=this._t)||void 0===vt?void 0:vt.pnx.semantics_title,null===(bt=this._t)||void 0===bt?void 0:bt.pnx.semantics_doc_info1,null===(le=this._t)||void 0===le?void 0:le.pnx.semantics_doc_info1u1,null===(Fl=this._t)||void 0===Fl?void 0:Fl.pnx.semantics_doc_info2,null===(gc=this._t)||void 0===gc?void 0:gc.pnx.semantics_doc_info3,(0,sc.fa)(mc.A),null===(Ac=this._t)||void 0===Ac?void 0:Ac.pnx.popup_details_link)}}SemanticsDoc.styles=[Fl.YC,Fl.Op,Fl.lk],customElements.define("pnx-semantics-doc",SemanticsDoc)},7959:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsDownload});var ls,ho=le(7528),Dl=le(4542),Fl=le(8591),sc=le(5995),uc=le(6516);class SemanticsDownload extends Dl.WF{render(){var vt,bt,le;return(0,Dl.qy)(ls||(ls=(0,ho.A)(["\n\t\t\t<h4>"," ","</h4>\n\t\t\t<p>",'</p>\n\t\t\t<pnx-link-button\n\t\t\t\thref="https://docs.panoramax.fr/federated-catalog/data_export/"\n\t\t\t\ttarget="_blank"\n\t\t\t\tkind="outline"\n\t\t\t\tstyle="width: 100%"\n\t\t\t>',"</pnx-link-button>\n\t\t"])),(0,sc.fa)(uc.cb),null===(vt=this._t)||void 0===vt?void 0:vt.pnx.semantics_download_title,null===(bt=this._t)||void 0===bt?void 0:bt.pnx.semantics_download_info,null===(le=this._t)||void 0===le?void 0:le.pnx.semantics_download_cta)}}SemanticsDownload.styles=[Fl.YC,Fl.Op],customElements.define("pnx-semantics-download",SemanticsDownload)},3728:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsFilters});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(5995),mc=le(6668),gc=le(6516),Ac=le(4005);class SemanticsFilters extends sc.WF{constructor(){super(),this.showZoomIn=!0,this._layers=[],(0,uc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt).then((async()=>{this._parent.map.on("zoomend",this._onMapZoom.bind(this)),this._parent.map.on("styledata",(()=>{this._onLayersChange(),this.requestUpdate()})),this._parent.mapStyleComposer.addEventListener("dataoverlay-added",this._onLayersChange.bind(this)),this._onMapZoom(),this._onLayersChange()}))}))}_layersToSet(vt){return vt.map((vt=>vt.source+"/"+this._parent.mapStyleComposer.dataOverlays.has(vt.source))).sort().join("|")}_onLayersChange(){clearTimeout(this._debouncedChange),this._debouncedChange=setTimeout((()=>{var vt,bt;const le=null===(vt=this._parent)||void 0===vt||null===(bt=vt.map)||void 0===bt?void 0:bt.getSemanticOverlays();this._layersToSet(le)!=this._layersToSet(this._layers)&&(this._layers=le,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{layers:le}})))}),10)}_onMapZoom(){this._showZoomIn=this._parent.map.getZoom()<Ac.lU}render(){var vt,bt,le;if(this._layers&&0!==this._layers.length)return(0,sc.qy)(ls||(ls=(0,Fl.A)(['\n\t\t\t<div class="pnx-tags-zoomin ','">\n\t\t\t\t','\n\t\t\t</div>\n\n\t\t\t<div class="pnx-tags-cta">\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="full"\n\t\t\t\t\tsize="sm"\n\t\t\t\t\t@click=',"\n\t\t\t\t>"," ",'</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tid="pnx-semfilt-doc"\n\t\t\t\t\tkind="superinline"\n\t\t\t\t\tsize="md"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>","</pnx-button>\n\t\t\t</div>\n\n\t\t\t","\n\t\t"])),this._showZoomIn?"":"hidden",null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.semantics_zoom_in,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showSemanticsDownload()}),(0,uc.fa)(gc.cb),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_download,null===(le=this._parent)||void 0===le?void 0:le._t.pnx.semantics_doc,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showSemanticsDoc()}),(0,uc.fa)(mc.iW),this._layers.filter((vt=>vt.metadata)).map((vt=>{var bt;return(0,sc.qy)(ho||(ho=(0,Fl.A)(["\n\t\t\t\t<pnx-switch\n\t\t\t\t\tname=","\n\t\t\t\t\t.checked=","\n\t\t\t\t\t@change=","\n\t\t\t\t>","</pnx-switch>\n\t\t\t"])),"pnx-semfilt-"+vt.id,this._parent.mapStyleComposer.dataOverlays.has(vt.source),(bt=>this._parent.mapStyleComposer.switchDataOverlayVisibility(vt.source,bt.target.checked)),(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_overlays[vt.id])||vt.metadata.name||vt.id)})))}}SemanticsFilters.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\t.pnx-tags-zoomin {\n\t\t\tz-index: 131;\n\t\t\tbackground-color: rgba(255,255,255,0.8);\n\t\t\ttext-align: center;\n\t\t\tfont-weight: 800;\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tleft: 0;\n\t\t\tbottom: 0;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-items: center;\n\t\t\tborder-radius: 25px;\n\t\t}\n\t\t.pnx-tags-zoomin.hidden {\n\t\t\tdisplay: none;\n\t\t}\n\t\t.pnx-tags-cta {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n \t\t\tjustify-content: end;\n\t\t}\n\t\tpnx-switch {\n\t\t\tdisplay: block;\n\t\t\tmargin: 5px 0;\n\t\t}\n\t"]))),SemanticsFilters.properties={_showZoomIn:{state:!0},_layers:{state:!0}},customElements.define("pnx-map-semantics-filters-menu",SemanticsFilters)},9671:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsList});var ls,ho,Dl,Fl,sc,uc,mc=le(7528),gc=le(4542),Ac=le(8591),Ec=le(5995),kc=le(2283),du=le(1187),_u=le(7321),Md=le(4692),Ld=le(8466),Nd=le(4954),Rd=le(7428),Od=le(4189),jd=le(174);le(8983);class SemanticsList extends gc.WF{constructor(){super(),this._meta={},this._seqMeta={},this._selectedEntry=null,this._annotPresets={},this._picPresets=[],this._seqPresets=[],this._entries=null,this.editable=!1,(0,Ec.moreIcons)()}connectedCallback(){super.connectedCallback(),this._onPicChange(),(0,Ec.onceParentAvailable)(this).then((()=>{var vt,bt,le,ls;null===(vt=this._parent.psv)||void 0===vt||vt.addEventListener("picture-loaded",this._onPicChange.bind(this)),null===(bt=this._parent.psv)||void 0===bt||bt.addEventListener("annotation-focused",(vt=>this.showAnnotation(vt.detail.annotationId))),null===(le=this._parent.psv)||void 0===le||le.addEventListener("annotations-unfocused",(()=>this._onListItemClick(null))),null===(ls=this._parent.psv)||void 0===ls||ls.addEventListener("semantics-unfocused",(()=>this._onListItemClick(null)));const ho=this._parent.psv.getSelectedAnnotations();ho.length>0&&this.showAnnotation(ho[0])}))}showAnnotation(vt){this._entries?this._onListItemClick(this._entries.find((bt=>"annotation"===bt.type&&bt.annotation.id==vt))):setTimeout((()=>this.showAnnotation(vt)),200)}showTagsGroup(vt){this._entries?this._onListItemClick(this._entries.find((bt=>{if("annotation"===(null===bt||void 0===bt?void 0:bt.type))return!1;for(let le=0;le<vt.length;le++)if(!bt.tagGroup.semantics.find((bt=>vt[le].key===bt.key&&vt[le].value===bt.value)))return!1;return!0}))):setTimeout((()=>this.showTagsGroup(vt)),200)}_onPicChange(){var vt,bt,le,ls,ho;(this._meta=null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getPictureMetadata(),this._getSeqMeta(),delete this._prevPsvView,this._selectedEntry=null,this._entries=null,this.dispatchEvent(new CustomEvent("select",{detail:{item:null}})),this._meta&&null!==(le=this._parent)&&void 0!==le&&le.presetsManager)&&(this._annotPresets={},this._picPresets=[],this._parent.presetsManager.getPresets(this._meta.properties).then((vt=>{this._picPresets=vt,this._computeEntries()})),(null===(ls=this._meta.properties)||void 0===ls||null===(ho=ls.annotations)||void 0===ho?void 0:ho.length)>0&&Promise.all(this._meta.properties.annotations.map((vt=>this._parent.presetsManager.getPreset(vt).then((bt=>{this._annotPresets[vt.id]=bt}))))).then((()=>this._computeEntries())))}async _getSeqMeta(){var vt,bt,le,ls;const ho=null===(vt=this._meta)||void 0===vt||null===(bt=vt.sequence)||void 0===bt?void 0:bt.id;if(ho&&!this._parent._sequencesMetadata[ho]&&(this._parent._sequencesMetadata[ho]=await this._parent.getAPI().getSequenceMetadata(ho)),this._seqMeta=this._parent._sequencesMetadata[ho],this._seqPresets=[],(null===(le=this._seqMeta)||void 0===le||null===(ls=le.semantics)||void 0===ls?void 0:ls.length)>0){const vt=await this._parent.presetsManager.getPresets(this._seqMeta);this._seqPresets=vt,this._computeEntries()}}_getGroupedTags(vt,bt,le,ls){const ho=[],groupToList=(vt,bt)=>{const le=[{key:bt,value:vt.value}];return vt.qualifiers&&vt.qualifiers.forEach((vt=>le.push({key:vt.key,value:vt.value}))),le},Dl=(0,kc.groupByPrefix)(vt),Fl=[];var sc;(Dl.forEach((vt=>{const le={};vt.tags.forEach((Dl=>{const sc=""!=vt.prefix?"".concat(vt.prefix,"|").concat(Dl.key):Dl.key;if(le["".concat(sc,"=").concat(Dl.value)])return void groupToList(Dl,sc).forEach((vt=>le["".concat(sc,"=").concat(Dl.value)].push(vt)));const uc=ls.find((vt=>["*",Dl.value].includes(vt.tags[sc])));if(uc){var mc;const vt=groupToList(Dl,sc);let ls=0;Object.entries(uc.tags).forEach((bt=>{let[ho,Dl]=bt,Fl=Dl;var uc;"*"===Dl&&(Fl=null===(uc=this._meta.properties.semantics.find((vt=>vt.key===sc)))||void 0===uc?void 0:uc.value);le[ho+"="+Fl]=vt,ls++})),ho.push({title:uc.name,icon:uc.iconify||"fa6-solid:cube",associatedTags:((null===(mc=Dl.qualifiers)||void 0===mc?void 0:mc.length)||0)+ls,tagGroup:{semantics:vt},type:bt})}else Fl.push({key:sc,value:Dl.value})}))})),Fl.length>0)&&ho.push({title:null===(sc=this._parent)||void 0===sc?void 0:sc._t.pnx.semantics_features_default_title.replace("{nb}",le++),icon:"fa6-solid:tag",associatedTags:Fl.length,tagGroup:{semantics:Fl},type:bt});return[ho,le]}_computeEntries(){var vt,bt,le,ls,ho;let Dl=1,Fl=[],sc=[];(null===(vt=this._seqMeta)||void 0===vt||null===(bt=vt.semantics)||void 0===bt?void 0:bt.length)>0&&([Fl,Dl]=this._getGroupedTags(this._seqMeta.semantics,"seqtags",Dl,this._seqPresets)),[sc,Dl]=this._getGroupedTags(null===(le=this._meta.properties)||void 0===le?void 0:le.semantics,"pictags",Dl,this._picPresets),Fl=Fl.concat(sc),Fl=Fl.concat((null===(ls=this._meta.properties)||void 0===ls||null===(ho=ls.annotations)||void 0===ho?void 0:ho.map((vt=>{var bt,le,ls;return{title:(null===(bt=this._annotPresets[vt.id])||void 0===bt?void 0:bt.name)||(null===(le=this._parent)||void 0===le?void 0:le._t.pnx.semantics_features_default_title.replace("{nb}",Dl++)),icon:(null===(ls=this._annotPresets[vt.id])||void 0===ls?void 0:ls.iconify)||"fa6-solid:cube",associatedTags:vt.semantics.filter((vt=>"delete"!==vt.action)).length,type:"annotation",annotation:vt}})))||[]),this._entries=Fl}_onListItemHover(vt){"annotation"===(null===vt||void 0===vt?void 0:vt.type)?(this._prevPsvView||(this._prevPsvView=[this._parent.psv.getZoomLevel(),this._parent.psv.getPosition()]),this._parent.psv.focusOnAnnotation(vt.annotation.id,void 0,!0)):(this._parent.psv.unfocusAnnotation(),this._prevPsvView&&(this._parent.psv.zoom(this._prevPsvView[0]),this._parent.psv.rotate(this._prevPsvView[1]),delete this._prevPsvView))}_onListItemClick(vt){this._selectedEntry=vt,this._onListItemHover(vt),this.dispatchEvent(new CustomEvent("select",{detail:{item:vt}}))}_onItemEditClick(vt){vt.stopPropagation(),this.dispatchEvent(new CustomEvent("edit-click",{detail:{item:this._selectedEntry}}))}_onItemDeleteClick(vt){vt.stopPropagation(),this.dispatchEvent(new CustomEvent("delete-click",{detail:{item:this._selectedEntry}}))}render(){if(!this._meta)return gc.s6;var vt,bt,le,uc,Ac,Ud,Gd,qd,Hd;if(this._selectedEntry)return(0,gc.qy)(ls||(ls=(0,mc.A)(['<div class="annotation">\n\t\t\t\t<pnx-list-item\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>\n\t\t\t\t\t",'\n\t\t\t\t\t<iconify-icon\n\t\t\t\t\t\tslot="icon"\n\t\t\t\t\t\ticon=','\n\t\t\t\t\t\tstyle="font-size: 1.5em"\n\t\t\t\t\t></iconify-icon>\n\n\t\t\t\t\t<pnx-copy-button\n\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\ttext=','\n\t\t\t\t\t\tslot="action"\n\t\t\t\t\t\t._t=',"\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t>\n\t\t\t\t\t\t","\n\t\t\t\t\t\t","\n\t\t\t\t\t</pnx-copy-button>\n\t\t\t\t\t\n\t\t\t\t\t","\n\t\t\t\t</pnx-list-item>\n\t\t\t\t<pnx-semantics-table\n\t\t\t\t\t._t=","\n\t\t\t\t\t.source=","\n\t\t\t\t/>\n\t\t\t</div>"])),this._selectedEntry.title,(()=>this._onListItemClick(null)),(0,Ec.fa)(Ld.Ce,{transform:{size:24},attributes:{slot:"icon"}}),this._selectedEntry.icon,(0,kc.semanticsToString)(null===(vt=(null===(bt=this._selectedEntry)||void 0===bt?void 0:bt.annotation)||(null===(le=this._selectedEntry)||void 0===le?void 0:le.tagGroup))||void 0===vt?void 0:vt.semantics),null===(uc=this._parent)||void 0===uc?void 0:uc._t,null===(Ac=this._parent)||void 0===Ac?void 0:Ac._t.pnx.semantics_copy,(0,Ec.fa)(Od.jP,{transform:{size:18}}),(0,Ec.fa)(jd.e6,{attributes:{slot:"oncopy"},transform:{size:18}}),this.editable&&"seqtags"!==this._selectedEntry.type?(0,gc.qy)(ho||(ho=(0,mc.A)(['\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\ttitle=','\n\t\t\t\t\t\t\tslot="action"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t",'\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\ttitle=','\n\t\t\t\t\t\t\tslot="action"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</pnx-button>"])),null===(Ud=this._parent)||void 0===Ud?void 0:Ud._t.pnx.semantics_edit,this._onItemEditClick,(0,Ec.fa)(_u.hp,{transform:{size:18}}),null===(Gd=this._parent)||void 0===Gd?void 0:Gd._t.pnx.semantics_delete_annotation,this._onItemDeleteClick,(0,Ec.fa)(Md.yL,{transform:{size:18}})):gc.s6,null===(qd=this._parent)||void 0===qd?void 0:qd._t,"annotation"===(null===(Hd=this._selectedEntry)||void 0===Hd?void 0:Hd.type)?this._selectedEntry.annotation:this._selectedEntry.tagGroup);{var Wd,Zd,Yd;const vt={seqtags:null===(Wd=this._parent)||void 0===Wd?void 0:Wd._t.pnx.semantics_sequence_tags,pictags:null===(Zd=this._parent)||void 0===Zd?void 0:Zd._t.pnx.semantics_picture_tags,annotation:null===(Yd=this._parent)||void 0===Yd?void 0:Yd._t.pnx.semantics_annotation_tags};return(0,gc.qy)(Dl||(Dl=(0,mc.A)(['<div class="list">\n\t\t\t\t',"\n\t\t\t</div>"])),(this._entries||[]).map((bt=>(0,gc.qy)(Fl||(Fl=(0,mc.A)(["\n\t\t\t\t\t<pnx-list-item\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t\ttooltip=","\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t\t@mouseover=","\n\t\t\t\t\t\t@mouseout=",'\n\t\t\t\t\t>\n\t\t\t\t\t\t<iconify-icon\n\t\t\t\t\t\t\tslot="icon"\n\t\t\t\t\t\t\ticon=','\n\t\t\t\t\t\t\tstyle="font-size: 1.5em"\n\t\t\t\t\t\t></iconify-icon>\n\t\t\t\t\t\t',"\n\t\t\t\t\t\t","\n\t\t\t\t\t\t","\n\t\t\t\t\t\t","\n\t\t\t\t\t</pnx-list-item>\n\t\t\t\t"])),bt.title,vt[bt.type],(()=>this._onListItemClick(bt)),(()=>this._onListItemHover(bt)),(()=>this._onListItemHover(null)),bt.icon,bt.associatedTags>1?(0,gc.qy)(sc||(sc=(0,mc.A)(['\n\t\t\t\t\t\t\t<span slot="icon" class="pnx-badge-count">',"</span>\n\t\t\t\t\t\t"])),bt.associatedTags):gc.s6,"annotation"===(null===bt||void 0===bt?void 0:bt.type)?(0,Ec.fa)(Rd.Cw,{transform:{size:20},styles:{"margin-right":"20px"},attributes:{slot:"action"}}):gc.s6,"seqtags"===(null===bt||void 0===bt?void 0:bt.type)?(0,Ec.fa)(Nd.yv,{transform:{size:20},styles:{"margin-right":"20px"},attributes:{slot:"action"}}):gc.s6,(0,Ec.fa)(du.Xk,{transform:{size:20},attributes:{slot:"action"}})))))}}}SemanticsList.styles=[Ac.Op,Ac.wS,Ac.Fj,(0,gc.AH)(uc||(uc=(0,mc.A)(["\n\t\t.annotation { background: var(--white); }\n\t\tpnx-list-item {\n\t\t\tdisplay: block;\n\t\t\tmargin: 5px 0;\n\t\t}\n\t"])))],SemanticsList.properties={editable:{type:Boolean},_meta:{state:!0},_seqMeta:{state:!0},_entries:{state:!0},_selectedEntry:{state:!0},_annotPresets:{state:!0},_picPresets:{state:!0},_seqPresets:{state:!0}},customElements.define("pnx-semantics-list",SemanticsList)},7694:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsMetadata});var ls,ho,Dl,Fl,sc,uc,mc=le(7528),gc=le(4542),Ac=le(5995),Ec=le(2255),kc=le(3624),du=le(1319),_u=le(700),Md=le(6668),Ld=le(8591),Nd=le(7343);class SemanticsMetadata extends gc.WF{constructor(){super(),this._meta={},this._prevPSVPicNav=null,this._authUrl=null,this._showLinks=!0,this._addTag=!1,this._editTag=null,this._addTagGeom=null,this._editTagSem=null}connectedCallback(){super.connectedCallback(),(0,Ac.onceParentAvailable)(this).then((()=>{var vt,bt,le,ls;this._meta=null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getPictureMetadata(),null===(le=this._parent)||void 0===le||null===(ls=le.oncePSVReady)||void 0===ls||ls.call(le).then((()=>{this._parent.psv.addEventListener("picture-loaded",(()=>{this._meta=this._parent.psv.getPictureMetadata()})),this._parent.psv.addEventListener("annotation-focused",(()=>{const vt=this.shadowRoot.querySelector("pnx-tabs");vt&&vt.setAttribute("activeTabIndex",4)}))})),this._parent.getAPI().getAuthURL().then((vt=>this._authUrl=vt))}))}_blockPicChange(vt){var bt,le,ls,ho;null===(bt=this._parent)||void 0===bt||null===(le=bt.legend)||void 0===le||null===(ls=le.renderRoot.querySelector("pnx-picture-legend"))||void 0===ls||ls.blockOnEditing(vt),null!==(ho=this._parent)&&void 0!==ho&&ho.mini&&(this._parent.mini.style.display=vt?"none":null);const Dl=this._parent.renderRoot.querySelector("pnx-annotations-switch");Dl&&(Dl.style.display=vt?"none":null),vt?(this._prevPSVPicNav=this._parent.psv.getPicturesNavigation(),this._parent.psv.setPicturesNavigation("pic"),this._parent._disableKeyboard(),window.addEventListener("beforeunload",this._onBrowserQuit)):(this._parent.psv.setPicturesNavigation(this._prevPSVPicNav),this._parent._enableKeyboard(),window.removeEventListener("beforeunload",this._onBrowserQuit))}_onBrowserQuit(vt){vt.preventDefault(),vt.returnValue=!0}_checkCanEdit(){var vt,bt;const le=!this._meta.origInstance||(null===(vt=this._parent)||void 0===vt||null===(bt=vt.api)||void 0===bt?void 0:bt._endpoint.startsWith(this._meta.origInstance.href));if(le&&null!==(0,Nd.getUserAccount)())return!0;var ls,ho;if(!le&&confirm(((null===(ls=this._parent)||void 0===ls?void 0:ls._t.pnx.semantics_login_needed)||"").replace("{n}",this._meta.origInstance.instance_name||this._meta.origInstance.href)))window.location.href=this._meta.origInstance.href+window.location.search.replace(/&?nav=pic/,"");else{if(!le||!confirm(((null===(ho=this._parent)||void 0===ho?void 0:ho._t.pnx.semantics_login_needed)||"").replace("{n}",this._parent.getAPI()._metadata.name)))return!1;window.location.href=this._authUrl.replace("<CBURL>",encodeURIComponent(window.location.href))}}_startAddTag(){this._checkCanEdit()&&(this._blockPicChange(!0),this._addTag=!0,this._editTag=!1,this._addTagGeom=null,this._editTagSem=null,this._addTagGeomListener=vt=>{var bt;null===(bt=this.renderRoot.querySelector("#pnx-sem-editor"))||void 0===bt||bt.forceInput(),this._addTagGeom=vt.detail.shape},this._parent.psv.addEventListener("annotation-drawn",this._addTagGeomListener),this._parent.psv.startDrawAnnotation())}_onTagSemChange(vt){this._editTagSem=vt.detail}_onSaveTag(){var vt;const bt=this.renderRoot.querySelector("#pnx-sem-editor");var le;if(bt&&bt.checkValidity()&&this._editTagSem&&this._editTagSem.delta&&0!==this._editTagSem.delta.length){if("annotation"===(null===(vt=this._editTag)||void 0===vt?void 0:vt.type))null===(le=this._parent)||void 0===le||le.api.editPictureAnnotation(this._editTag.annotation.id,this._editTagSem.delta).then((vt=>{const bt=this._meta.properties.annotations.findIndex((bt=>bt.id===vt.id));this._meta.properties.annotations[bt]=vt,this._onCancelEditTag(vt)})).catch((vt=>{var bt;console.error("Can't send annotation",vt),this._onCancelEditTag(this._editTag.annotation),alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail)}));else if(this._addTag&&this._addTagGeom){var ls;this._parent.psv.fixDrawAnnotation(),null===(ls=this._parent)||void 0===ls||ls.api.createPictureAnnotation(this._meta,this._addTagGeom,this._editTagSem.delta).then((vt=>{this._meta.properties.annotations.push(vt),this._onCancelEditTag(vt,!0)})).catch((vt=>{var bt;console.error("Can't send annotation",vt),alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail),this._onCancelEditTag()}))}else if(this._addTag||this._editTag&&"annotation"!==this._editTag.type){var ho;null===(ho=this._parent)||void 0===ho||ho.api.sendPictureSemantics(this._meta,this._editTagSem.delta).then((vt=>{this._meta.properties.semantics=vt.properties.semantics,this._onCancelEditTag(this._editTagSem.delta)})).catch((vt=>{var bt;alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail),console.error("Can't send semantics",vt),this._onCancelEditTag()}))}}else bt.reportValidity()}_onEraseDrawnAnnotation(){this._parent.psv.stopDrawAnnotation(),this._addTagGeom=null,this._parent.psv.startDrawAnnotation()}_onEditTag(vt){var bt,le;this._checkCanEdit()&&(this._blockPicChange(!0),this._addTag=!1,this._addTagGeom=null,this._editTagSem="annotation"===(null===(bt=vt.detail.item)||void 0===bt?void 0:bt.type)?{semantics:vt.detail.item.annotation.semantics}:vt.detail.item.tagGroup,this._editTag=vt.detail.item,"annotation"===(null===(le=vt.detail.item)||void 0===le?void 0:le.type)&&this._parent.psv.focusOnAnnotation(vt.detail.item.annotation.id,!0))}_onCancelEditTag(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.renderRoot.querySelector("#pnx-sem-editor").reset(),this._addTag=!1,this._addTagGeom=null,this._editTag=null,bt||this._parent.psv.stopDrawAnnotation(),this._blockPicChange(!1),this.getUpdateComplete().then((()=>{const bt=this.renderRoot.querySelector("#pnx-sem-list");vt&&bt&&(vt.id?bt.showAnnotation(vt.id):bt.showTagsGroup(vt))}))}_onDeleteTag(vt){var bt;if(this._checkCanEdit()&&confirm(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_delete_annotation_confirm)){const bt=vt.detail.item;if("annotation"===(null===bt||void 0===bt?void 0:bt.type)){var le;null===(le=this._parent)||void 0===le||le.api.deletePictureAnnotation(bt.annotation.id).then((()=>{var vt;const le=Object.assign({},this._meta);le.properties.annotations=this._meta.properties.annotations.filter((vt=>vt.id!=bt.annotation.id)),this._meta=le,this._parent.psv.toggleAllAnnotations(!0),null===(vt=this.renderRoot.querySelector("pnx-semantics-list"))||void 0===vt||vt._onPicChange()})).catch((vt=>{var bt;console.error("Can't send annotation",vt),alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail)}))}else{var ls;const vt=bt.tagGroup.semantics.map((vt=>Object.assign({action:"delete"},vt)));null===(ls=this._parent)||void 0===ls||ls.api.sendPictureSemantics(this._meta,vt).then((vt=>{var bt;this._meta.properties.semantics=vt.properties.semantics,null===(bt=this.renderRoot.querySelector("pnx-semantics-list"))||void 0===bt||bt._onPicChange()})).catch((vt=>{var bt;alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_send_fail),console.error("Can't send semantics",vt)}))}}}render(){var vt,bt,le,uc,Ld,Rd,Od,jd,Ud,Gd;if(null===(vt=this._meta)||void 0===vt||!vt.properties)return;const qd=!this._meta.origInstance&&(this._authUrl||null!==(0,Nd.getUserAccount)());return(0,gc.qy)(ls||(ls=(0,mc.A)(["\n\t\t\t","\n\t\t"])),this._addTag||this._editTag?(0,gc.qy)(ho||(ho=(0,mc.A)(['\n\t\t\t\t<div class="data-block">\n\t\t\t\t\t<h5>\n\t\t\t\t\t\t','\n\n\t\t\t\t\t\t<pnx-button-group>\n\t\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\t\tkind="fullsuccess"\n\t\t\t\t\t\t\t\tstyle="margin-right: 3px"\n\t\t\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t\t\t@click=","\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t",'\n\t\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\t\tkind="fullwarn"\n\t\t\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t\t\t@click=","\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t</pnx-button-group>\n\t\t\t\t\t</h5>\n\t\t\t\t\t<div>\n\t\t\t\t\t\t","\n\t\t\t\t\t\t",'\n\n\t\t\t\t\t\t<pnx-semantics-editor\n\t\t\t\t\t\t\tid="pnx-sem-editor"\n\t\t\t\t\t\t\tstyle="display: block; margin-top: 5px"\n\t\t\t\t\t\t\t.semantics=',"\n\t\t\t\t\t\t\t._t=","\n\t\t\t\t\t\t\t@change=","\n\t\t\t\t\t\t></pnx-semantics-editor>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t"])),this._addTag?null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.semantics_add_annotation:null===(le=this._parent)||void 0===le?void 0:le._t.pnx.semantics_edit,null===(uc=this._parent)||void 0===uc?void 0:uc._t.pnx.semantics_save,this._onSaveTag,(0,Ac.fa)(Ec.jk),null===(Ld=this._parent)||void 0===Ld?void 0:Ld._t.pnx.semantics_undo,(()=>{var vt;return this._onCancelEditTag((null===(vt=this._editTag)||void 0===vt?void 0:vt.annotation)||this._editTag)}),(0,Ac.fa)(kc.GR),this._addTag?null===(Rd=this._parent)||void 0===Rd?void 0:Rd._t.pnx.semantics_draw_annotation:gc.s6,this._addTag&&this._addTagGeom?(0,gc.qy)(Dl||(Dl=(0,mc.A)(['<pnx-button\n\t\t\t\t\t\t\t\tkind="full"\n\t\t\t\t\t\t\t\tstyle="margin-top: 5px; width: 100%"\n\t\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t"," ","\n\t\t\t\t\t\t</pnx-button>"])),this._onEraseDrawnAnnotation,(0,Ac.fa)(_u.IP),null===(Od=this._parent)||void 0===Od?void 0:Od._t.pnx.semantics_erase_annotation):gc.s6,(null===(jd=this._editTagSem)||void 0===jd?void 0:jd.semantics)||[],this._parent._t,this._onTagSemChange):(0,gc.qy)(Fl||(Fl=(0,mc.A)(["\n\t\t\t\t",'\n\t\t\t\t\n\t\t\t\t<pnx-semantics-list\n\t\t\t\t\tid="pnx-sem-list"\n\t\t\t\t\t.editable=',"\n\t\t\t\t\t@select=","\n\t\t\t\t\t@edit-click=","\n\t\t\t\t\t@delete-click=","\n\t\t\t\t\t._parent=","\n\t\t\t\t/>\n\t\t\t"])),this._showLinks?(0,gc.qy)(sc||(sc=(0,mc.A)(['\n\t\t\t\t\t<div class="top-btns">\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="full"\n\t\t\t\t\t\t\tsize="md"\n\t\t\t\t\t\t\tstyle="flex: 2 1"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t"," ",'\n\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="full"\n\t\t\t\t\t\t\tsize="md"\n\t\t\t\t\t\t\tstyle="flex: 1 1"\n\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t>"," ","</pnx-button>\n\t\t\t\t\t</div>\n\t\t\t\t"])),this._startAddTag,(0,Ac.fa)(du.jk),null===(Ud=this._parent)||void 0===Ud?void 0:Ud._t.pnx.semantics_add_annotation,(()=>{var vt;return null===(vt=this._parent)||void 0===vt?void 0:vt._showSemanticsDoc()}),(0,Ac.fa)(Md.iW),null===(Gd=this._parent)||void 0===Gd?void 0:Gd._t.pnx.semantics_doc):gc.s6,qd,(vt=>this._showLinks=null==vt.detail.item),this._onEditTag,this._onDeleteTag,this._parent))}}SemanticsMetadata.styles=[Ld.R,Ld.Tk,(0,gc.AH)(uc||(uc=(0,mc.A)(["\n\t\t.top-btns, pnx-semantics-list {\n\t\t\tfont-size: 0.8em;\n\t\t}\n\t\t.top-btns {\n\t\t\tdisplay: flex;\n\t\t\tmargin: 5px 0;\n\t\t\tgap: 5px;\n\t\t}\n\t\t.top-btns > * {\n\t\t\toverflow: hidden;\n\t\t}\n\t\t.top-btns > *::part(btn) {\n\t\t\theight: unset;\n\t\t}\n\t\t.data-block {\n\t\t\twidth: 100%;\n\t\t}\n\t\t.data-block h5 {\n\t\t\tjustify-content: space-between;\n\t\t}\n\t"])))],SemanticsMetadata.properties={_meta:{state:!0},_prevPSVPicNav:{state:!0},_authUrl:{state:!0},_showLinks:{state:!0},_addTag:{state:!0},_editTag:{state:!0},_addTagGeom:{state:!0},_editTagSem:{state:!0}},customElements.define("pnx-semantics-metadata",SemanticsMetadata)},3765:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ShareMenu});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(8591),mc=le(2e3),gc=le(7516),Ac=le(6002),Ec=le(7964);class ShareMenu extends Fl.WF{constructor(){super(),this._onUrlChange()}connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._onUrlChange(),this._parent.urlHandler.addEventListener("url-changed",this._onUrlChange.bind(this))}))}_onUrlChange(){var vt,bt;const le=(this["base-url"]||window.location.href).replace(/\/$/,"");this._url=(null===(vt=this._parent)||void 0===vt||null===(bt=vt.urlHandler)||void 0===bt?void 0:bt.nextShortLink(le))||le}render(){var vt,bt,le,ho,uc,kc;const du='<iframe src="'.concat(this._url,'" style="border: none; width: 500px; height: 300px"></iframe>');return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["\n\t\t\t<h4>"," ",'</h4>\n\t\t\t<pnx-tabs>\n\t\t\t\t<h4 slot="title">'," ",'</h4>\n\t\t\t\t<div slot="content">\n\t\t\t\t\t<div class="links">\n\t\t\t\t\t\t<input type="text" readonly value=',' style="flex: 2" />\n\t\t\t\t\t\t<pnx-copy-button ._t='," text=",'></pnx-copy-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t\t\n\t\t\t\t<h4 slot="title">'," ",'</h4>\n\t\t\t\t<div slot="content">\n\t\t\t\t\t<div class="embed">\n\t\t\t\t\t\t<pnx-link-button\n\t\t\t\t\t\t\thref="https://docs.panoramax.fr/web-viewer/03_URL_settings/"\n\t\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t'," ","\n\t\t\t\t\t\t</pnx-link-button>\n\t\t\t\t\t\t<textarea readonly .value=","></textarea>\n\t\t\t\t\t\t<pnx-copy-button\n\t\t\t\t\t\t\t._t=","\n\t\t\t\t\t\t\ttext=",'\n\t\t\t\t\t\t\tstyle="width: 100%"\n\t\t\t\t\t\t></pnx-copy-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</pnx-tabs>'])),(0,sc.fa)(Ac.QO),null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.share,(0,sc.fa)(Ec.CQ),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.share_page,this._url,null===(le=this._parent)||void 0===le?void 0:le._t,this._url,(0,sc.fa)(mc.e5),null===(ho=this._parent)||void 0===ho?void 0:ho._t.pnx.share_embed,(0,sc.fa)(gc.faCircleInfo),null===(uc=this._parent)||void 0===uc?void 0:uc._t.pnx.share_embed_docs,du,null===(kc=this._parent)||void 0===kc?void 0:kc._t,du)}}ShareMenu.styles=[uc.Op,uc.hF,uc.PC,uc.YC,(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\tdiv[slot="content"] {\n\t\t\tmargin-top: 10px;\n\t\t}\n\t\t.links {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t}\n\t\t.embed {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\talign-items: center;\n\t\t\tflex-direction: column;\n\t\t}\n\t'])))],ShareMenu.properties={_url:{state:!0},"base-url":{type:String}},customElements.define("pnx-share-menu",ShareMenu)},8794:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{LocationPrecisionDoc:()=>ls.A,MapBackground:()=>ho.A,MapFilters:()=>Dl.A,MapLayers:()=>Fl.A,MapLegend:()=>sc.A,MiniPictureLegend:()=>uc.A,PictureLegend:()=>mc.A,PictureMetadata:()=>gc.A,PlayerOptions:()=>Ac.A,QualityScoreDoc:()=>Ec.A,ReportForm:()=>kc.A,SemanticsDoc:()=>du.A,SemanticsDownload:()=>_u.A,SemanticsFilters:()=>Md.A,SemanticsList:()=>Ld.A,SemanticsMetadata:()=>Nd.A,Share:()=>Rd.A});var ls=le(5537),ho=le(5036),Dl=le(3581),Fl=le(5334),sc=le(4749),uc=le(1636),mc=le(3589),gc=le(6993),Ac=le(499),Ec=le(5187),kc=le(9588),du=le(5457),_u=le(7959),Md=le(3728),Ld=le(9671),Nd=le(7694),Rd=le(3765)},8591:(vt,bt,le)=>{"use strict";le.d(bt,{BQ:()=>tm,Fj:()=>$d,HM:()=>Qd,Lt:()=>Zd,Op:()=>Hd,PC:()=>Wd,R:()=>qd,Tk:()=>nm,YC:()=>Kd,hF:()=>Yd,kq:()=>Xd,lk:()=>rm,nd:()=>Gd,qf:()=>sp,s0:()=>Jd,tp:()=>em,wS:()=>im});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc,du,_u,Md,Ld,Nd,Rd,Od,jd=le(7528),Ud=le(4542);const Gd=(0,Ud.AH)(ls||(ls=(0,jd.A)(["\n\t.pnx-panel {\n\t\tposition: absolute;\n\t\ttransition: opacity 0.2s 0.1s;\n\t\tborder-radius: 25px;\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tbackground-color: var(--widget-bg);\n\t\tcolor: var(--widget-font);\n\t\tmin-width: 250px;\n\t\tbox-sizing: border-box;\n\t\tfont-family: var(--font-family);\n\t}\n\n\t.pnx-panel.pnx-hidden {\n\t\topacity: 0;\n\t\tdisplay: block !important;\n\t\tpointer-events: none;\n\t}\n\n\t.pnx-panel.pnx-padded {\n\t\tpadding: 15px;\n\t}\n"]))),qd=(0,Ud.AH)(ho||(ho=(0,jd.A)(["\n\t.pnx-hidden { display: none !important; }\n"]))),Hd=(0,Ud.AH)(Dl||(Dl=(0,jd.A)(["\n\t.svg-inline--fa {\n\t\tdisplay: var(--fa-display, inline-block);\n\t\theight: 1em;\n\t\toverflow: visible;\n\t\tvertical-align: -0.125em;\n\t}\n\tsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\n\t\toverflow: visible;\n\t\tbox-sizing: content-box;\n\t}\n\t@keyframes fa-spin {\n\t\tfrom {transform:rotate(0deg);}\n\t\tto {transform:rotate(360deg);}\n\t}\n\t.fa-spin {\n\t\tanimation: fa-spin 2s infinite linear;\n\t}\n"]))),Wd=(0,Ud.AH)(Fl||(Fl=(0,jd.A)(["\n\ttextarea {\n\t\tbackground-color: var(--widget-bg);\n\t\tcolor: var(--widget-font);\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tborder-radius: 10px;\n\t\tpadding: 5px;\n\t\twidth: 100%;\n\t\tbox-sizing: border-box;\n\t\tfont-family: var(--font-family);\n\t\tresize: vertical;\n\t}\n"]))),Zd=(0,Ud.AH)(sc||(sc=(0,jd.A)(["\n\tselect {\n\t\tbackground-color: var(--widget-bg);\n\t\tcolor: var(--widget-font);\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tborder-radius: 20px;\n\t\tfont-size: 16px;\n\t\tpadding: 2px 10px;\n\t\tfont-family: var(--font-family);\n\t}\n\n\tselect[disabled] {\n\t\tbackground-color: var(--widget-bg-inactive);\n\t}\n\n\tselect.pnx-100w {\n\t\twidth: 100%;\n\t\tbox-sizing: border-box;\n\t}\n"]))),Yd=(0,Ud.AH)(uc||(uc=(0,jd.A)(["\n\tinput {\n\t\tbackground-color: var(--widget-bg);\n\t\tcolor: var(--widget-font);\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tborder-radius: 20px;\n\t\tfont-size: 16px;\n\t\tpadding: 2px 10px;\n\t\tfont-family: var(--font-family);\n\t}\n\n\tinput.pnx-100w {\n\t\twidth: 100%;\n\t\tbox-sizing: border-box;\n\t}\n"]))),Qd=(0,Ud.AH)(mc||(mc=(0,jd.A)(["\n\t:host {\n\t\tdisplay: inline-flex;\n\t}\n\t\n\t/* Common properties */\n\t.pnx-btn {\n\t\twhite-space: nowrap;\n\t\tfont-size: 1em;\n\t\tfont-family: var(--font-family);\n\t\tflex-grow: 1;\n\t\tflex-shrink: 1;\n\t\ttext-align: center;\n\t\tpadding: 5px;\n\t\tfont-weight: 600;\n\t\tflex-basis: 30%;\n\t\tline-height: 18px;\n\t\tjustify-content: center;\n\t\tborder-radius: 8px;\n\t\tcursor: pointer;\n\t\ttext-decoration: none;\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tgap: 5px;\n\t\tposition: relative;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tmin-width: 26px;\n\t}\n\n\t.pnx-btn:disabled { color: var(--widget-bg-inactive); }\n\n\t.pnx-btn.pnx-btn-active,\n\t.pnx-btn.pnx-btn-active:hover,\n\t.pnx-btn.pnx-btn-full.pnx-btn-active:hover,\n\t.pnx-btn.pnx-btn-outline.pnx-btn-active:hover {\n\t\tbackground-color: var(--widget-bg-active);\n\t\tborder-color: var(--widget-bg-active);\n\t\tcolor: var(--widget-font-active);\n\t}\n\n\t.pnx-btn .svg-inline--fa,\n\t.pnx-btn ::slotted(.svg-inline--fa),\n\t.pnx-btn slot .svg-inline--fa {\n\t\theight: 16px;\n\t\tpointer-events: none;\n\t}\n\n\t/* Sizing */\n\t.pnx-btn-sm {\n\t\tborder-radius: 6px;\n\t\tline-height: 12px;\n\t\tfont-size: 12px;\n\t\tmin-width: unset;\n\t}\n\n\t.pnx-btn.pnx-btn-sm .svg-inline--fa,\n\t.pnx-btn.pnx-btn-sm ::slotted(.svg-inline--fa) {\n\t\theight: 12px;\n\t}\n\n\t.pnx-btn-l {\n\t\tborder-radius: 12px;\n\t\theight: 24px;\n\t\tline-height: 24px;\n\t\tfont-size: 20px;\n\t\tmin-width: 24px;\n\t}\n\n\t.pnx-btn-xl {\n\t\tborder-radius: 20px;\n\t\theight: 40px;\n\t\tline-height: 40px;\n\t\tfont-size: 16px;\n\t\tfont-weight: 500;\n\t\tmin-width: 40px;\n\t\tpadding: 0 10px;\n\t\tgap: 8px;\n\t}\n\n\t.pnx-btn.pnx-btn-xl .svg-inline--fa,\n\t.pnx-btn.pnx-btn-xl ::slotted(.svg-inline--fa) {\n\t\theight: 16px;\n\t}\n\n\t.pnx-btn-xxl {\n\t\tborder-radius: 28px;\n\t\theight: 56px;\n\t\tline-height: 56px;\n\t\tfont-size: 24px;\n\t\tmin-width: 56px;\n\t}\n\n\t.pnx-btn.pnx-btn-xxl .svg-inline--fa,\n\t.pnx-btn.pnx-btn-xxl ::slotted(.svg-inline--fa) {\n\t\theight: 24px;\n\t}\n\n\t/* Fully-filled style */\n\t.pnx-btn-full {\n\t\tbackground-color: var(--widget-bg-primary);\n\t\tcolor: var(--widget-font-direct);\n\t\tborder: none;\n\t}\n\n\t.pnx-btn-full:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-primary-hover);\n\t}\n\n\t/* Fully-filled warning style */\n\t.pnx-btn-fullwarn {\n\t\tbackground-color: var(--widget-bg-warn);\n\t\tcolor: var(--widget-font-warn);\n\t\tborder: none;\n\t}\n\n\t.pnx-btn-fullwarn:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-warn);\n\t}\n\n\t/* Fully-filled success style */\n\t.pnx-btn-fullsuccess {\n\t\tbackground-color: var(--widget-bg-success);\n\t\tcolor: var(--widget-font-success);\n\t\tborder: none;\n\t}\n\n\t.pnx-btn-fullsuccess:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-success);\n\t}\n\n\t/* Outline style */\n\t.pnx-btn-outline {\n\t\tborder: 1px solid var(--widget-border-btn);\n\t\tcolor: var(--widget-font-direct);\n\t\tbackground-color: var(--widget-bg);\n\t}\n\n\t.pnx-btn-outline:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-hover);\n\t}\n\n\t/* Flat style */\n\t.pnx-btn-flat,\n\t.pnx-btn-flat.pnx-btn-active,\n\t.pnx-btn-flat.pnx-btn-active:hover,\n\t.pnx-btn-flat:not(:disabled):hover {\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tcolor: var(--widget-font);\n\t\tbackground-color: var(--widget-bg);\n\t}\n\n\t.pnx-btn-flat:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-hover);\n\t}\n\n\t/* Superflat style */\n\t.pnx-btn-superflat,\n\t.pnx-btn-superflat.pnx-btn-active,\n\t.pnx-btn-superflat.pnx-btn-active:hover,\n\t.pnx-btn-superflat:not(:disabled):hover {\n\t\tborder: 1px solid var(--widget-border-div);\n\t\tcolor: var(--widget-font-direct);\n\t\tbackground-color: var(--widget-bg);\n\t}\n\n\t.pnx-btn-superflat:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-hover);\n\t}\n\n\t/* Inline style */\n\t.pnx-btn-inline,\n\t.pnx-btn-inline.pnx-btn-active,\n\t.pnx-btn-inline.pnx-btn-active:hover,\n\t.pnx-btn-inline:not(:disabled):hover,\n\t.pnx-btn-superinline,\n\t.pnx-btn-superinline.pnx-btn-active,\n\t.pnx-btn-superinline.pnx-btn-active:hover,\n\t.pnx-btn-superinline:not(:disabled):hover {\n\t\tborder: none;\n\t\tcolor: var(--widget-font);\n\t\tbackground: none;\n\t}\n\n\t.pnx-btn-inline:not(:disabled):hover,\n\t.pnx-btn-superinline:not(:disabled):hover {\n\t\tbackground-color: var(--widget-bg-hover);\n\t}\n\n\t/* Superinline style */\n\t.pnx-btn-superinline,\n\t.pnx-btn-superinline.pnx-btn-active,\n\t.pnx-btn-superinline.pnx-btn-active:hover,\n\t.pnx-btn-superinline:not(:disabled):hover {\n\t\tcolor: var(--widget-font-direct);\n\t}\n"]))),Xd=(0,Ud.AH)(gc||(gc=(0,jd.A)(['\n\tpnx-button-group > pnx-button {\n\t\tdisplay: inline-flex;\n\t}\n\n\tpnx-button-group > pnx-button::part(btn) {\n\t\theight: unset;\n\t}\n\n\t/* Togglable in group */\n\tpnx-button-group > pnx-togglable-group > pnx-button {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t}\n\n\t/* Row */\n\tpnx-button-group[dir="row"] > :not(:first-child):not(:last-child)::part(btn),\n\tpnx-button-group[dir="row"] > :not(:first-child):not(:last-child) > ::part(btn) {\n\t\tborder-radius: 0;\n\t\tborder-left: none;\n\t\tborder-right: none;\n\t}\n\n\tpnx-button-group[dir="row"] > :first-child::part(btn),\n\tpnx-button-group[dir="row"] > :first-child > ::part(btn) {\n\t\tborder-top-right-radius: 0;\n\t\tborder-bottom-right-radius: 0;\n\t\tborder-right: none;\n\t}\n\n\tpnx-button-group[dir="row"] > :last-child::part(btn),\n\tpnx-button-group[dir="row"] > :last-child > ::part(btn) {\n\t\tborder-top-left-radius: 0;\n\t\tborder-bottom-left-radius: 0;\n\t\tborder-left: none;\n\t}\n\n\t/* Column */\n\tpnx-button-group[dir="column"] > :not(:first-child):not(:last-child)::part(btn),\n\tpnx-button-group[dir="column"] > :not(:first-child):not(:last-child) > ::part(btn) {\n\t\tborder-radius: 0;\n\t\tborder-top: none;\n\t\tborder-bottom: none;\n\t}\n\n\tpnx-button-group[dir="column"] > :first-child::part(btn),\n\tpnx-button-group[dir="column"] > :first-child > ::part(btn) {\n\t\tborder-bottom-right-radius: 0;\n\t\tborder-bottom-left-radius: 0;\n\t\tborder-bottom: none;\n\t}\n\n\tpnx-button-group[dir="column"] > :last-child::part(btn),\n\tpnx-button-group[dir="column"] > :last-child > ::part(btn) {\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t\tborder-top: none;\n\t}\n']))),Kd=(0,Ud.AH)(Ac||(Ac=(0,jd.A)(['\n\th1, h2, h3, h4, h5, h6 {\n\t\tfont-family: var(--font-family);\n\t}\n\t\n\th3 {\n\t\tfont-size: 1.1em;\n\t\tline-height: 1.1em;\n\t\tfont-weight: 500;\n\t\tmargin: 10px 0 10px 0;\n\t}\n\n\th4 {\n\t\tfont-size: 1.0em;\n\t\tline-height: 1.0em;\n\t\tfont-weight: 500;\n\t\tmargin: 15px 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: flex-start;\n\t\tgap: 5px;\n\t}\n\n\th4:first-of-type { margin-top: 0; }\n\n\th4 > svg.svg-inline--fa {\n\t\theight: 18px;\n\t}\n\n\th4[slot="title"] {\n\t\tmargin: 0;\n\t\tjustify-content: center;\n\t\tfont-size: 0.8em;\n\t\tline-height: 2em;\n\t\tpadding: 0.5em 0;\n\t}\n\th4[slot="title"] svg.svg-inline--fa {\n\t\theight: 14px;\n\t}\n']))),Jd=(0,Ud.AH)(Ec||(Ec=(0,jd.A)(["\n\t.pnx-active-icon {\n\t\tbox-sizing: border-box;\n\t\tbackground-color: var(--orange);\n\t\tborder: 3px solid #fff;\n\t\tborder-radius: 8px;\n\t\theight: 15px;\n\t\tleft: 20px;\n\t\tposition: absolute;\n\t\ttop: 5px;\n\t\twidth: 15px;\n\t}\n"]))),$d=(0,Ud.AH)(kc||(kc=(0,jd.A)(["\n\t.pnx-badge-count {\n\t\tbox-sizing: border-box;\n\t\tbackground-color: var(--grey-pale);\n\t\tborder-radius: 8px;\n\t\tright: -6px;\n\t\tposition: absolute;\n\t\ttop: -6px;\n\t\twidth: 12px;\n\t\theight: 12px;\n\t\tfont-size: 10px;\n\t\ttext-align: center;\n\t\tline-height: 12px;\n\t\tfont-weight: 800;\n\t}\n"]))),sp=(0,Ud.AH)(du||(du=(0,jd.A)(["\n\t@keyframes animatedBackground {\n\t\tfrom {\n\t\t\tbackground-position: 0 0;\n\t\t}\n\t\tto {\n\t\t\tbackground-position: 1000px 0;\n\t\t}\n\t}\n\n\t.pnx-placeholder-loading {\n\t\twidth: 100px;\n\t\theight: 100px;\n\t\tbackground-image: linear-gradient(\n\t\t\t90deg,\n\t\t\t#e4e4e4 0%,\n\t\t\t#f1f1f1 40%,\n\t\t\t#ededed 60%,\n\t\t\t#e4e4e4 100%\n\t\t);\n\t\tbackground-position: 0px 0px;\n\t\tbackground-repeat: repeat;\n\t\tanimation: animatedBackground 5s linear infinite;\n\t}\n"]))),tm=((0,Ud.AH)(_u||(_u=(0,jd.A)(["\n\tdetails summary {\n\t\tfont-size: 1.0em;\n\t\tline-height: 1.0em;\n\t\tfont-weight: 500;\n\t\tmargin: 15px 0;\n\t\tcursor: pointer;\n\t}\n\n\tdetails summary svg {\n\t\theight: 18px;\n\t\tvertical-align: sub;\n\t\tmargin-right: 2px;\n\t}\n"]))),(0,Ud.AH)(Md||(Md=(0,jd.A)(["\n\t@media print {\n\t\t.pnx-print-hidden { display: none !important; }\n\t}\n"])))),em=(0,Ud.AH)(Ld||(Ld=(0,jd.A)(["\n\ttable {\n\t\tborder-collapse: collapse;\n\t\tfont-size: 0.9rem;\n\t\twidth: 100%;\n\t\tmax-width: 100%;\n\t\tfont-family: var(--font-family);\n\t\tbackground: var(--white);\n\t}\n\n\tth, td {\n\t\tpadding: 10px;\n\t\ttext-align: left;\n\t\tborder-bottom: 1px solid #ddd;\n\t}\n\n\tth { font-weight: 600; }\n"]))),im=(0,Ud.AH)(Nd||(Nd=(0,jd.A)(["\n\ticonify-icon {\n\t\tdisplay: inline-block;\n\t\twidth: 1em;\n\t\theight: 1em;\n\t}\n"]))),nm=(0,Ud.AH)(Rd||(Rd=(0,jd.A)(["\n\t.data-block {\n\t\tdisplay: inline-block;\n\t\tmargin: 8px 0;\n\t\tbox-sizing: border-box;\n\t\tvertical-align: top;\n\t}\n\t.data-block h5 {\n\t\tfont-size: 0.8em;\n\t\tfont-weight: 400;\n\t\tcolor: var(--blue-dark);\n\t\tmargin: 0 0 5px 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tgap: 5px;\n\t}\n\t.data-block h5 pnx-button { vertical-align: middle; }\n\t.data-block h5 svg.svg-inline--fa { height: 14px; }\n\t.data-block div {\n\t\tfont-size: 0.8em;\n\t}\n"]))),rm=(0,Ud.AH)(Od||(Od=(0,jd.A)(["\n\th4 {\n\t\tfont-size: 1.3em;\n\t\tfont-weight: 600;\n\t\tborder-bottom: 3px solid var(--grey-pale);\n\t\tpadding-bottom: 10px;\n \t\tpadding-top: 5px;\n\t}\n"])))},6254:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>AnnotationsSwitch});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(6249),mc=le(6311),gc=le(508),Ac=le(1198),Ec=le(8591),kc=le(7343);class AnnotationsSwitch extends Fl.WF{constructor(){super(),this._annotationsToggled=!1,this._warnNoAnnot=!1,this._warnNoAnnotTooltip=!1,this.size="xl"}connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>{this._parent.onceReady().then((()=>{this._parent.psv.addEventListener("annotations-toggled",(vt=>{this._annotationsToggled=vt.detail.visible,this._persistAnnotationsLocalStorage(this._annotationsToggled)})),this._warnNoAnnot=!(0,gc.hasAnnotations)(this._parent.psv.getPictureMetadata()),this._parent.psv.addEventListener("picture-loaded",(()=>{this._warnNoAnnot=!(0,gc.hasAnnotations)(this._parent.psv.getPictureMetadata())}))})),this._parent.onceFirstPicLoaded().then((()=>{this._annotationsToggled=this._parent.psv.areAnnotationsVisible()||!1,this._persistAnnotationsLocalStorage(this._annotationsToggled)}))}))}_persistAnnotationsLocalStorage(vt){localStorage.setItem(kc.DISABLE_ANNOTATIONS_PARAM,vt?"false":"true")}_onClick(){!this._annotationsToggled&&this._warnNoAnnot&&(this._warnNoAnnotTooltip=!0,setTimeout((()=>this._warnNoAnnotTooltip=!1),2e3)),this._persistAnnotationsLocalStorage(!this._annotationsToggled),this._parent.psv.toggleAllAnnotations(!this._annotationsToggled)}render(){var vt,bt,le;const ho={"pnx-panel":!0,"pnx-hidden":!this._warnNoAnnotTooltip};return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-button\n\t\t\t\tkind="superflat"\n\t\t\t\tsize=','\n\t\t\t\tstyle="vertical-align: middle"\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t\ttitle=',"\n\t\t\t\tactive=","\n\t\t\t\t@click=","\n\t\t\t>\n\t\t\t\t","\n\t\t\t\t","\n\t\t\t</pnx-button>\n\t\t\t<div\n\t\t\t\tclass=","\n\t\t\t\t@click=","\n\t\t\t>\n\t\t\t\t","\n\t\t\t</div>\n\t\t"])),this.size,this._annotationsToggled?null===(vt=this._parent._t)||void 0===vt?void 0:vt.pnx.semantics_hide_annotations:null===(bt=this._parent._t)||void 0===bt?void 0:bt.pnx.semantics_show_annotations,this._annotationsToggled?"":Fl.s6,this._onClick,(0,sc.fa)(uc.DX,{styles:{height:"20px"}}),this._warnNoAnnot?(0,sc.fa)(mc.JA,{classes:"pnx-annotations-switch-empty"}):Fl.s6,(0,Ac.H)(ho),(()=>this._warnNoAnnotTooltip=!1),null===(le=this._parent._t)||void 0===le?void 0:le.pnx.semantics_zero_annotations)}}AnnotationsSwitch.styles=[Ec.nd,(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\t.pnx-panel {\n\t\t\tpadding: 5px;\n\t\t\tmargin-top: 5px;\n\t\t\twidth: max-content;\n \t\t\tmin-width: unset;\n\t\t}\n\n\t\t/* Custom button look */\n\t\tpnx-button::part(btn) {\n\t\t\tborder-radius: 8px;\n\t\t\theight: 26px;\n\t\t\twidth: 26px;\n\t\t}\n\n\t\tpnx-button[size="xl"]::part(btn) {\n\t\t\tborder-radius: 8px;\n\t\t\theight: 38px;\n\t\t\twidth: 38px;\n\t\t}\n\n\t\tpnx-button[active]::part(btn),\n\t\tpnx-button[active]:hover::part(btn) {\n\t\t\tbackground-color: var(--widget-bg-active) !important;\n\t\t\tborder-color: var(--widget-bg-active) !important;\n\t\t\tcolor: var(--widget-font-active) !important;\n\t\t}\n\n\t\t/* No-annotations badge */\n\t\t.pnx-annotations-switch-empty {\n\t\t\tposition: absolute;\n\t\t\ttop: 1px;\n\t\t\tright: 1px;\n\t\t\tcolor: var(--orange);\n\t\t\theight: 8px;\n\t\t}\n\n\t\tpnx-button[size="xl"] .pnx-annotations-switch-empty {\n\t\t\ttop: 2px;\n\t\t\tright: 2px;\n\t\t\theight: 12px;\n\t\t}\n\n\t\tpnx-button[active] .pnx-annotations-switch-empty {\n\t\t\tcolor: var(--yellow);\n\t\t}\n\t'])))],AnnotationsSwitch.properties={size:{type:String},_annotationsToggled:{state:!0},_warnNoAnnot:{state:!0},_warnNoAnnotTooltip:{state:!0}},customElements.define("pnx-annotations-switch",AnnotationsSwitch)},4450:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Button});var ls=le(4542),ho=le(8591);class Button extends ls.WF{constructor(){super(),this.active=!1,this.disabled=!1,this.kind="full",this.size="md"}connectedCallback(){super.connectedCallback(),"submit"===this.type&&this.addEventListener("click",(()=>{var vt;return null===(vt=this.closest("FORM"))||void 0===vt?void 0:vt.requestSubmit()}))}render(){const vt=document.createElement("button");vt.setAttribute("part","btn"),this.constructor.observedAttributes.filter((vt=>void 0!==this[vt]&&!1!==this[vt]&&!["active","kind","size"].includes(vt))).forEach((bt=>vt.setAttribute(bt,this[bt]))),vt.classList.add("pnx-btn","pnx-btn-".concat(this.kind),"pnx-btn-".concat(this.size)),this.active&&vt.classList.add("pnx-btn-active");const bt=document.createElement("slot");return vt.appendChild(bt),vt}}Button.styles=ho.HM,Button.properties={active:{type:Boolean},kind:{type:String},size:{type:String},disabled:{type:Boolean},type:{type:String},title:{type:String}},customElements.define("pnx-button",Button)},7679:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ButtonGroup});var ls,ho,Dl=le(7528),Fl=le(4542);le(1870);class ButtonGroup extends Fl.WF{constructor(){super(),this.dir="row",this.size="md"}render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['<div class="'," ",'">\n\t\t\t<slot></slot>\n\t\t</div>'])),this.dir,this.size)}}ButtonGroup.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\tdiv {\n\t\t\tdisplay: flex;\n\t\t\tflex-wrap: nowrap;\n\t\t\talign-items: stretch;\n\t\t\talign-content: stretch;\n\t\t\tjustify-content: center;\n\t\t}\n\n\t\tdiv.row { flex-direction: row; }\n\t\tdiv.column { flex-direction: column; }\n\n\t\tdiv.xl { line-height: 38px; font-size: 20px; }\n\t\tdiv.row.xl { height: 38px; }\n\t\tdiv.column.xl { width: 38px; }\n\n\t\tdiv.row ::slotted(*) { height: 100%; min-width: 24px; }\n\t\tdiv.column ::slotted(*) { width: 100%; min-height: 24px; }\n\n\t\tdiv.row.xl ::slotted(*) { min-width: 38px; }\n\t\tdiv.column.xl ::slotted(*) { min-height: 38px; }\n\t"]))),ButtonGroup.properties={dir:{type:String},size:{type:String}},customElements.define("pnx-button-group",ButtonGroup)},1903:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>CopyButton});var ls,ho,Dl,Fl,sc=le(7528),uc=le(4542),mc=le(5995),gc=le(174),Ac=le(4189),Ec=le(8591),kc=le(1198);class CopyButton extends uc.WF{constructor(){super(),this.data="",this.input="",this.unstyled=!1,this.kind="full",this.size="md",this._active=!1,this.addEventListener("click",this._onClick)}_onClick(vt){var bt;let le;if(vt.stopPropagation(),""!==this.input){const vt=document.getElementById(this.input);le=vt.innerText||vt.value}else""!==this.text&&(le=this.text);null!==(bt=navigator)&&void 0!==bt&&bt.clipboard?(navigator.clipboard.writeText(le),this._active=!0,setTimeout((()=>this._active=!1),2e3)):alert("Clipboard is not available")}render(){var vt,bt;const le={"pnx-btn":!this.unstyled,"pnx-btn-full":!this.unstyled,"pnx-btn-active":!this.unstyled&&this._active,"pnx-btn-unstyled":this.unstyled,["pnx-btn-".concat(this.kind)]:!this.unstyled,["pnx-btn-".concat(this.size)]:!this.unstyled};return(0,uc.qy)(ls||(ls=(0,sc.A)(["<button title="," class=",' part="btn">\n\t\t\t',"\n\t\t</button>"])),this.title,(0,kc.H)(le),this._active?(0,uc.qy)(ho||(ho=(0,sc.A)(['<slot name="oncopy">'," ","</slot>"])),(null===(vt=this._t)||void 0===vt?void 0:vt.pnx.copied)||"",(0,mc.fa)(gc.e6)):(0,uc.qy)(Dl||(Dl=(0,sc.A)(["<slot>"," ","</slot>"])),(0,mc.fa)(Ac.jP),(null===(bt=this._t)||void 0===bt?void 0:bt.pnx.copy)||""))}}CopyButton.styles=[Ec.Op,Ec.HM,(0,uc.AH)(Fl||(Fl=(0,sc.A)(["\n\t\t.pnx-btn-unstyled {\n\t\t\tborder: none;\n\t\t\tbackground: none;\n\t\t\tfont-family: var(--font-family);\n\t\t\tfont-size: 1em;\n\t\t\tcolor: var(--widget-font);\n\t\t\tcursor: pointer;\n\t\t\tpadding: 0;\n\t\t\tmargin: 0;\n\t\t}\n\t"])))],CopyButton.properties={text:{type:String},input:{type:String},kind:{type:String},size:{type:String},unstyled:{type:Boolean},title:{type:String},_active:{state:!0,type:Boolean}},customElements.define("pnx-copy-button",CopyButton)},5051:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Grade});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(4780),mc=le(7325),gc=le(8591);class Grade extends Fl.WF{constructor(){super(),this.stars=0}render(){var vt;const bt=this.stars||0,le=[];for(let ls=1;ls<=bt;ls++)le.push((0,sc.fa)(uc.yy));for(let ls=bt+1;ls<=5;ls++)le.push((0,sc.fa)(mc.yy));return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["<span>\n\t\t\t","\n\t\t</span> (",")"])),le,this.stars?this.stars+"/5":(null===(vt=this._t)||void 0===vt?void 0:vt.pnx.metadata_quality_missing)||"?")}}Grade.styles=[gc.Op,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\tspan { color: var(--orange); }\n\t"])))],Grade.properties={stars:{type:Number}},customElements.define("pnx-grade",Grade)},9041:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>GradeFilter});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(4780);class GradeFilter extends Fl.WF{constructor(){super(),this.grade=0,this.input="",this.labels={}}_onInput(){const vt=[];for(let bt of this.renderRoot.querySelectorAll("input"))bt.checked&&vt.push(bt.value);this.grade=vt.join(","),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0}))}render(){const vt="".concat(this.grade).split(",").map((vt=>parseInt(vt))).filter((vt=>!isNaN(vt)));return[5,4,3,2,1].map((bt=>{var le;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<input\n\t\t\t\tid="',"-",'"\n\t\t\t\ttype="checkbox"\n\t\t\t\tname=',"\n\t\t\t\tvalue=",'\n\t\t\t\t@change="','"\n\t\t\t\t.checked=','\n\t\t\t/>\n\t\t\t<label\n\t\t\t\tfor="',"-",'"\n\t\t\t\ttitle=',"\n\t\t\t>\n\t\t\t\t"," ","\n\t\t\t</label>\n\t\t"])),this.input,bt,this.input,bt,this._onInput,vt.includes(bt),this.input,bt,null!==(le=this.labels)&&void 0!==le&&le[bt]?this.labels[bt]:null,bt,(0,sc.fa)(uc.yy))}))}}GradeFilter.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\t:host {\n\t\t\tgap: 0;\n\t\t\talign-items: stretch;\n\t\t\tdisplay: flex;\n\t\t}\n\t\tlabel {\n\t\t\tdisplay: inline-flex;\n\t\t\tpadding: 2px 7px;\n\t\t\tbackground: none;\n\t\t\tborder: 1px solid var(--widget-border-btn);\n\t\t\tcolor: var(--widget-font-direct);\n\t\t\tcursor: pointer;\n\t\t\tfont-size: 16px;\n\t\t\ttext-decoration: none;\n\t\t\tborder-left-width: 0px;\n\t\t}\n\t\tlabel:hover {\n\t\t\tbackground-color: var(--widget-bg-hover);\n\t\t}\n\t\tlabel:first-of-type {\n\t\t\tborder-top-left-radius: 8px;\n\t\t\tborder-bottom-left-radius: 8px;\n\t\t\tborder-left-width: 1px;\n\t\t}\n\t\tlabel:last-of-type {\n\t\t\tborder-top-right-radius: 8px;\n\t\t\tborder-bottom-right-radius: 8px;\n\t\t}\n\t\tlabel svg {\n\t\t\tdisplay: block;\n\t\t\twidth: 0.8em;\n\t\t}\n\t\tinput[type="checkbox"] { display: none; }\n\t\tinput[type="checkbox"]:checked + label {\n\t\t\tbackground-color: var(--widget-bg-active);\n\t\t\tcolor: var(--widget-font-active);\n\t\t}\n\t\tinput[type="checkbox"]:checked + label:first-of-type {\n\t\t\tborder-right-color: white;\n\t\t}\n\t']))),GradeFilter.properties={grade:{type:String},input:{type:String},labels:{type:Object}},customElements.define("pnx-grade-filter",GradeFilter)},259:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>IconSwitch});var ls,ho,Dl=le(7528),Fl=le(4542);class IconSwitch extends Fl.WF{constructor(){super(),this.checked=!1,this.disabled=!1,this.name="pnx-icon-switch-1"}_onChange(vt){this.checked=vt.target.checked,this.dispatchEvent(new Event("change"))}render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<label class="toggle" for=','>\n\t\t\t\t<span class="toggle-label">\n\t\t\t\t\t<slot name="label-left"></slot>\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\tclass="toggle-checkbox"\n\t\t\t\t\ttype="checkbox"\n\t\t\t\t\tid=',"\n\t\t\t\t\tname=","\n\t\t\t\t\t.checked=","\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@change=",'\n\t\t\t\t/>\n\t\t\t\t<div class="toggle-switch">\n\t\t\t\t\t<span class="toggle-icon icon-left">\n\t\t\t\t\t\t<slot name="icon-left"></slot>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class="toggle-icon icon-right">\n\t\t\t\t\t\t<slot name="icon-right"></slot>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t\t<span class="toggle-label">\n\t\t\t\t\t<slot name="label-right"></slot>\n\t\t\t\t</span>\n\t\t\t</label>\n\t\t'])),this.name,this.name,this.name,this.checked,this.disabled,this._onChange.bind(this))}}IconSwitch.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\t.toggle {\n\t\t\tcursor: pointer;\n\t\t\tdisplay: flex;\n\t\t\talign-items: flex-start;\n\t\t\tjustify-content: center;\n\t\t}\n\n\t\t.toggle-switch {\n\t\t\tdisplay: inline-block;\n\t\t\tbackground: var(--widget-option-left);\n\t\t\tborder-radius: 11px;\n\t\t\twidth: 42px;\n\t\t\tmin-width: 42px;\n\t\t\tmax-width: 42px;\n\t\t\theight: 22px;\n\t\t\tmin-height: 22px;\n\t\t\tmax-height: 22px;\n\t\t\tposition: relative;\n\t\t\tvertical-align: middle;\n\t\t\ttransition: background 0.25s;\n\t\t\tflex: 1;\n\t\t}\n\t\t.toggle-switch:before, .toggle-switch:after {\n\t\t\tcontent: "";\n\t\t}\n\t\t.toggle-switch:before {\n\t\t\tdisplay: block;\n\t\t\tbackground: linear-gradient(to bottom, #fff 0%, #eee 100%);\n\t\t\tborder-radius: 50%;\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);\n\t\t\twidth: 16px;\n\t\t\theight: 16px;\n\t\t\tposition: absolute;\n\t\t\ttop: 3px;\n\t\t\tleft: 3px;\n\t\t\ttransition: left 0.25s;\n\t\t}\n\t\t.toggle:hover .toggle-switch:before {\n\t\t\tbackground: linear-gradient(to bottom, #fff 0%, #fff 100%);\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5);\n\t\t}\n\t\t.toggle-checkbox:checked + .toggle-switch {\n\t\t\tbackground: var(--widget-option-right);\n\t\t}\n\t\t.toggle-checkbox:disabled + .toggle-switch:before,\n\t\t.toggle-checkbox:disabled:hover + .toggle-switch:before {\n\t\t\tbackground: var(--grey-pale);\n\t\t\tbox-shadow: none;\n\t\t}\n\t\t.toggle-checkbox:disabled + .toggle-switch {\n\t\t\tbackground: var(--grey);\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);\n\t\t}\n\t\t.toggle-checkbox:checked + .toggle-switch:before {\n\t\t\tleft: 22px;\n\t\t}\n\n\t\t.toggle-icon {\n\t\t\tpointer-events: none;\n\t\t\theight: 22px;\n\t\t\twidth: 22px;\n\t\t\tposition: absolute;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-items: center;\n\t\t\tline-height: 11px;\n\t\t\tfont-size: 11px;\n\t\t\topacity: 1;\n\t\t\ttransition: opacity 0.15s 0.1s;\n\t\t}\n\n\t\t.toggle-icon.icon-left {\n\t\t\tleft: 0;\n\t\t\tcolor: var(--widget-option-left);\n\t\t}\n\t\t.toggle-icon.icon-right {\n\t\t\tright: 0;\n\t\t\tcolor: var(--widget-option-right);\n\t\t}\n\n\t\t.toggle-checkbox:checked + .toggle-switch .toggle-icon.icon-left,\n\t\t.toggle-checkbox:not(:checked) + .toggle-switch .toggle-icon.icon-right {\n\t\t\topacity: 0;\n\t\t\ttransition: opacity 0s;\n\t\t}\n\n\t\t.toggle-checkbox {\n\t\t\tposition: absolute;\n\t\t\tvisibility: hidden;\n\t\t}\n\n\t\t.toggle-label {\n\t\t\tmargin-left: 5px;\n\t\t\tmargin-right: 5px;\n\t\t\tposition: relative;\n\t\t\tflex: 2;\n\t\t\ttext-align: center;\n\t\t\tfont-size: 0.9em;\n\t\t\tline-height: 22px;\n\t\t}\n\t']))),IconSwitch.properties={checked:{type:Boolean,reflect:!0},disabled:{type:Boolean,reflect:!0},name:{type:String}},customElements.define("pnx-icon-switch",IconSwitch)},438:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>LinkButton});var ls=le(4542),ho=le(8591);class LinkButton extends ls.WF{constructor(){super(),this.kind="full",this.size="md"}render(){const vt=document.createElement("a");vt.setAttribute("part","btn"),this.constructor.observedAttributes.filter((vt=>void 0!==this[vt])).forEach((bt=>vt.setAttribute(bt,this[bt]))),vt.classList.add("pnx-btn","pnx-btn-".concat(this.kind),"pnx-btn-".concat(this.size));const bt=document.createElement("slot");return vt.appendChild(bt),vt}}LinkButton.styles=ho.HM,LinkButton.properties={href:{type:String},target:{type:String},title:{type:String},download:{type:String},class:{type:String},kind:{type:String},size:{type:String}},customElements.define("pnx-link-button",LinkButton)},5271:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ListGroup});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(8591);class ListGroup extends Fl.WF{render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["<slot></slot>"])))}}ListGroup.styles=[sc.nd,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t:host ::slotted(*) {\n\t\t\ttext-decoration: none;\n\t\t\tborder: none;\n\t\t\tborder-bottom: 1px solid var(--widget-border-div);\n\t\t\tbackground: none;\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t\tcolor: var(--widget-font);\n\t\t\tfont-family: var(--font-family);\n\t\t\tcursor: pointer;\n\t\t\tfont-size: 1em;\n\t\t\tfont-weight: 400;\n\t\t\tline-height: 18px;\n\t\t\tpadding: 5px 10px;\n \t\t\tmin-width: 150px;\n\t\t\twidth: 100%;\n\t\t\ttext-align: left;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\t:host ::slotted(*:hover) {\n\t\t\tbackground-color: var(--widget-bg-hover);\n\t\t}\n\n\t\t:host ::slotted(*:first-child) {\n\t\t\tborder-top-left-radius: 5px;\n\t\t\tborder-top-right-radius: 5px;\n\t\t}\n\n\t\t:host ::slotted(*:last-child) {\n\t\t\tborder: none;\n\t\t\tborder-bottom-left-radius: 5px;\n\t\t\tborder-bottom-right-radius: 5px;\n\t\t}\n\t"])))],customElements.define("pnx-list-group",ListGroup)},5525:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ListItem});var ls,ho,Dl=le(7528),Fl=le(4542);class ListItem extends Fl.WF{render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<div class="list-item" title=','>\n\t\t\t\t<div class="icon">\n\t\t\t\t\t<slot name="icon"></slot>\n\t\t\t\t</div>\n\t\t\t\t<div class="content">\n\t\t\t\t\t<div class="title">','</div>\n\t\t\t\t\t<div class="subtitle">','</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="action">\n\t\t\t\t\t<slot name="action"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t'])),this.tooltip,this.title,this.subtitle)}}ListItem.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t.list-item {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tpadding: 8px 16px;\n\t\t\tcursor: pointer;\n\t\t\tborder-bottom: 1px solid #ddd;\n\t\t\tfont-family: var(--font-family);\n\t\t\tbackground: var(--white);\n\t\t\tmin-height: 40px;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\t\t.list-item:hover { background: var(--widget-bg-hover); }\n\t\t.icon {\n\t\t\tmargin-right: 16px;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tgap: 10px;\n\t\t\tposition: relative;\n\t\t}\n\t\t.action {\n\t\t\tmargin-left: 16px;\n\t\t\tdisplay: flex;\n \t\t\tgap: 5px;\n\t\t}\n\t\t.content {\n\t\t\tflex: 1;\n\t\t}\n\t\t.title {\n\t\t\tfont-weight: 600;\n\t\t}\n\t\t.subtitle {\n\t\t\tfont-size: 0.9em;\n\t\t\tcolor: var(--grey-dark);\n\t\t}\n\t"]))),ListItem.properties={title:{type:String},subtitle:{type:String},tooltip:{type:String}},customElements.define("pnx-list-item",ListItem)},3109:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Loader});var ls,ho,Dl,Fl,sc,uc,mc,gc,Ac=le(7528),Ec=le(4542),kc=le(2305),du=le(5975),_u=le(7343);class Loader extends Ec.WF{constructor(){super(),this.visible=!0,this["no-label"]=!1,this._mode="loading",this._isLabelFun=!1,this.value=-1}connectedCallback(){super.connectedCallback(),this._nextLabel()}isVisible(){return this.visible}dismiss(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(clearTimeout(this._loaderLabelChanger),vt){var sc;!0!==vt&&console.error(vt);let gc=[null===(sc=this._parent)||void 0===sc?void 0:sc._t.pnx.error,(0,Ec.qy)(ls||(ls=(0,Ac.A)(["<br />"])))];var uc,mc;if(bt&&gc.push(bt,(0,Ec.qy)(ho||(ho=(0,Ac.A)(["<br />"])))),le)gc.push((0,Ec.qy)(Dl||(Dl=(0,Ac.A)(['<pnx-button kind="full">',"</pnx-button>"])),null===(uc=this._parent)||void 0===uc?void 0:uc._t.pnx.error_click)),this.addEventListener("click",le);else gc.push((0,Ec.qy)(Fl||(Fl=(0,Ac.A)(["<small>","</small>"])),null===(mc=this._parent)||void 0===mc?void 0:mc._t.pnx.error_retry));this._mode="error",this._label=gc;const kc=bt||"Panoramax JS had a blocking exception",du=new CustomEvent("broken",{detail:{error:kc}});throw this._parent.dispatchEvent(du),new Error(kc)}{this.value=100,this._mode="done",this.visible=!1,this.style.transition="all 0.5s",setTimeout((()=>this.parentNode.removeChild(this)),2e3);const vt=new CustomEvent("ready");this._parent.dispatchEvent(vt),le&&le()}}_nextLabel(){var vt,bt,le,ls;this._isLabelFun?this._label=null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.loading_labels_fun[(0,_u.inRangeRandom)(0,(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.loading_labels_fun.length)-1)]:(this._label=null===(le=this._parent)||void 0===le?void 0:le._t.pnx.loading_labels_serious[(0,_u.inRangeRandom)(0,(null===(ls=this._parent)||void 0===ls?void 0:ls._t.pnx.loading_labels_serious.length)-1)],this._isLabelFun=!0);this._loaderLabelChanger=setTimeout(this._nextLabel.bind(this),(0,_u.inRangeRandom)(500,1500))}render(){var vt;return"error"==this._mode?(0,Ec.qy)(sc||(sc=(0,Ac.A)(['\n\t\t\t\t<img class="logo-dead" src=',' alt="" title='," />\n\t\t\t\t","\n\t\t\t"])),kc,null===(vt=this._parent)||void 0===vt?void 0:vt._t.map.loading,this._label):(0,Ec.qy)(uc||(uc=(0,Ac.A)(["\n\t\t\t<pnx-progress-bar .value=","></pnx-progress-bar>\n\t\t\t","\n\t\t"])),this.value,this["no-label"]?Ec.s6:(0,Ec.qy)(mc||(mc=(0,Ac.A)(['<div class="label">',"</div>"])),this._label))}}Loader.styles=(0,Ec.AH)(gc||(gc=(0,Ac.A)(["\n\t\t:host {\n\t\t\tposition: absolute;\n\t\t\tinset: 0;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: center;\n\t\t\tgap: 10px;\n\t\t\talign-items: center;\n\t\t\tbackground-image: url('","');\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-size: cover;\n\t\t\tbackground-position: center; \n\t\t\tz-index: 200;\n\t\t\tfont-family: var(--font-family);\n\t\t\tfont-weight: 550;\n\t\t\tcolor: var(--black);\n\t\t\tfont-size: 1.4em;\n\t\t\ttext-align: center;\n\t\t\tvisibility: hidden;\n\t\t\topacity: 0;\n\t\t}\n\t\t:host(*[visible]) {\n\t\t\tvisibility: visible;\n\t\t\topacity: 1;\n\t\t}\n\n\t\tdiv.label {\n\t\t\tbackground-color: rgba(255,255,255,0.5);\n\t\t\tbox-shadow: white 0 0 10px;\n\t\t\tpadding: 3px 10px;\n\t\t\tborder-radius: 50px;\n\t\t}\n\t\t/* Logo */\n\t\timg.logo-dead { width: 100px; }\n\t"])),(0,Ec.iz)(du)),Loader.properties={_mode:{state:!0},_label:{state:!0},_isLabelFun:{state:!0},visible:{type:Boolean,reflect:!0},"no-label":{type:Boolean},value:{type:Number}},customElements.define("pnx-loader",Loader)},5642:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Map});var ls=le(9379),ho=(le(3041),le(8340)),Dl=le(6883),Fl=le(270),sc=le(4005),uc=le(1435),mc=le(5195),gc=(le(6795),le(927)),Ac=le.n(gc),Ec=le(2968),kc=le.n(Ec),du=le(748);Ac().workerClass=kc(),Ac().addProtocol("pmtiles",(new du.Zs).tile),Ac().addProtocol("panora",(new uc.A).tile()),Ac().addProtocol("panoras",(new uc.A).tile());class Map extends Ac().Map{constructor(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};var ho;(super((0,ls.A)({container:bt,style:vt.mapStyleComposer.getMapStyle(),center:[0,0],zoom:0,maxZoom:24,attributionControl:!1,dragRotate:!1,pitchWithRotate:!1,touchZoomRotate:!0,touchPitch:!1,doubleClickZoom:!1,canvasContextAttributes:{preserveDrawingBuffer:!vt.isWidthSmall()},transformRequest:vt.api._getMapRequestTransform(),locale:vt._t.maplibre,hash:!1},le)),this._semMapProtocol=new sc.Ay(vt),Ac().addProtocol("sem",this._semMapProtocol.tile()),this._loadMarkerImages(),this._parent=vt,this._parent.mapStyleComposer.map=this,this._options=le,this.getContainer().classList.add("pnx-map"),void 0===le.touchZoomRotate)&&(null===this||void 0===this||null===(ho=this.touchZoomRotate)||void 0===ho||ho.disableRotation());this._options.raster&&(this._options.background=this._options.background||"streets"),(0,mc.initIndoorEqualOnMap)(this,![void 0,mc.DISABLED_LEVEL].includes(this._options.level)),this._attribution=new(Ac().AttributionControl)((0,ls.A)({compact:!1},le.attributionControl)),this.addControl(this._attribution),this._initMapPosition(),this._picMarker=this._getPictureMarker(),this._picMarkerPreview=this._getPictureMarker(!1),this._picPreviewTimer=null,this._picPopup=new(Ac().Popup)({closeButton:!1,closeOnClick:!this._parent.isWidthSmall(),offset:15}),this._picThumbUrl={},this._seqPictures={},this._parent.addEventListener("select",this._parent.mapStyleComposer.updateMapStyle.bind(this._parent.mapStyleComposer)),this._parent.mapStyleComposer.addEventListener("panoramax-changed",this._onPanoramaxChanged.bind(this)),setTimeout((()=>{var vt;!this.loaded()&&null!==(vt=this._parent)&&void 0!==vt&&vt.loader.isVisible()&&this._parent.loader.dismiss({},this._parent._t.map.slow_loading,(async()=>{await this._postLoad(),this._parent.loader.dismiss()}))}),15e3),this.waitForEnoughMapLoaded().then((async()=>await this._postLoad()))}async _postLoad(){this.resize(),this.on("dblclick",(()=>clearTimeout(this._gridFocus))),this.on("click",(vt=>{var bt,le;(clearTimeout(this._gridFocus),!1===vt.defaultPrevented)&&(this._dropPreview(),null!==(bt=(le=this._parent).isMapWide)&&void 0!==bt&&bt.call(le)&&(this._gridFocus=setTimeout((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.grid)||void 0===bt?void 0:bt.toggleAway()}),250)))}));const untoggleGridWidgets=()=>{var vt,bt,le,ls;null!==(vt=(bt=this._parent).isMapWide)&&void 0!==vt&&vt.call(bt)&&null!==(le=this._parent)&&void 0!==le&&null!==(ls=le.grid)&&void 0!==ls&&ls._hidden&&(clearTimeout(this._gridFocus),this._parent.grid.toggleAway(!0))};this.on("mousemove",untoggleGridWidgets),this.on("touchmove",untoggleGridWidgets),this.fire("ready")}_dropPreview(vt){clearTimeout(this._picDropPreviewTimer),vt?this._picDropPreviewTimer=setTimeout(this._dropPreview.bind(this),250):(clearTimeout(this._picPreviewTimer),delete this._picPopup._picId,delete this._picPopup._loading,this._picPopup.remove(),this._picMarkerPreview.remove())}destroy(){this.remove(),delete this._semMapProtocol,delete this._parent,delete this._options,delete this._attribution,delete this._picMarker,delete this._picMarkerPreview,delete this._picPreviewTimer,delete this._picPopup,delete this._picThumbUrl,delete this._seqPictures}waitForEnoughMapLoaded(){return new Promise((vt=>{let bt=0,le=0,ls=0,ho=0;const onSourceDataLoading=vt=>{"source"===vt.dataType&&vt.tile&&(vt.sourceId.startsWith("geovisio")?le++:bt++)},onSourceData=vt=>{"source"===vt.dataType&&vt.tile&&(vt.sourceId.startsWith("geovisio")?(ho++,vt.isSourceLoaded&&(ho=le)):(ls++,vt.isSourceLoaded&&(ls=bt))),checkEnoughLoaded()},checkEnoughLoaded=()=>{ls/bt>=.75&&(0===le||ho/le>=.75)&&(this.off("sourcedata",onSourceData),this.off("sourcedataloading",onSourceDataLoading),vt())};this.on("sourcedataloading",onSourceDataLoading),this.on("sourcedata",onSourceData)}))}_initMapPosition(){!(0,ho.isNullCoordinates)(this._options.center)||this._options.zoom&&0!==this._options.zoom||this._options.hash||this._parent.onceAPIReady().then((()=>{var vt,bt;let le=null===(vt=this._parent)||void 0===vt||null===(bt=vt.api)||void 0===bt?void 0:bt.getDataBbox();if(le)try{le=new(Ac().LngLatBounds)(le),this.loaded()?this.fitBounds(le,{animate:!1}):this.waitForEnoughMapLoaded().then((()=>this.fitBounds(le,{animate:!1})))}catch(ls){console.warn("Received invalid bbox: "+le)}}))}addSource(vt,bt){this._parent.mapStyleComposer.registerSource(vt,bt),super.addSource(vt,bt)}addLayer(vt,bt){this._parent.mapStyleComposer.registerLayer(vt,bt),super.addLayer(vt,bt)}_loadMarkerImages(){[{id:"pnx-marker",img:Dl}].forEach((vt=>{const bt=new Image(64,64);bt.onload=()=>this.addImage(vt.id,bt),bt.src=vt.img}))}_hasQualityScore(){var vt,bt,le,ls;const ho=(null===(vt=this.getStyle())||void 0===vt||null===(bt=vt.metadata)||void 0===bt?void 0:bt["panoramax:fields"])||{};return(null===ho||void 0===ho||null===(le=ho.pictures)||void 0===le?void 0:le.includes("gps_accuracy"))&&(null===ho||void 0===ho||null===(ls=ho.pictures)||void 0===ls?void 0:ls.includes("h_pixel_density"))}_hasGridStats(){var vt,bt,le,ls,ho,Dl;const Fl=(null===(vt=this.getStyle())||void 0===vt||null===(bt=vt.metadata)||void 0===bt?void 0:bt["panoramax:fields"])||{};return(null===Fl||void 0===Fl||null===(le=Fl.grid)||void 0===le?void 0:le.includes("nb_360_pictures"))&&(null===Fl||void 0===Fl||null===(ls=Fl.grid)||void 0===ls?void 0:ls.includes("nb_flat_pictures"))&&(null===Fl||void 0===Fl||null===(ho=Fl.grid)||void 0===ho?void 0:ho.includes("coef_360_pictures"))&&(null===Fl||void 0===Fl||null===(Dl=Fl.grid)||void 0===Dl?void 0:Dl.includes("coef_flat_pictures"))}_hasLoggedGridStats(){var vt,bt,le,ls,ho;const Dl=(null===(vt=this.getStyle())||void 0===vt||null===(bt=vt.metadata)||void 0===bt?void 0:bt["panoramax:fields"])||{};return(null===Dl||void 0===Dl||null===(le=Dl.grid)||void 0===le?void 0:le.includes("logged_coef_360_pictures"))&&(null===Dl||void 0===Dl||null===(ls=Dl.grid)||void 0===ls?void 0:ls.includes("logged_coef_flat_pictures"))&&(null===Dl||void 0===Dl||null===(ho=Dl.grid)||void 0===ho?void 0:ho.includes("logged_coef"))}reloadVectorTiles(){Object.values(this._parent.mapStyleComposer.layerRanges.panoramax).forEach((vt=>{Object.keys(vt.sources).forEach((vt=>{const bt=this.getSource(vt);bt.setTiles(bt.tiles)}))}))}displayPictureMarker(vt,bt,le){let ls=arguments.length>3&&void 0!==arguments[3]&&arguments[3],Dl=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null;this._picMarkerPreview.remove(),void 0!==vt&&void 0!==bt?(this._picMarker.setLngLat([vt,bt]).setRotation(le).addTo(this),this._picMarker.picId=Dl):this._picMarker.remove(),this._parent.mapStyleComposer.updateMapStyle(),ls||void 0===vt||void 0===bt||this.jumpTo({center:[vt,bt],zoom:this.getZoom()<ho.TILES_PICTURES_ZOOM+2?ho.TILES_PICTURES_ZOOM+2:this.getZoom()})}_onPanoramaxChanged(){var vt,bt,le;const ls=this._parent.mapStyleComposer,Dl=null===(vt=ls.layerRanges.panoramax[ls.panoramax].layers.find((vt=>vt.id.endsWith("_pictures"))))||void 0===vt?void 0:vt.id,Fl=null===(bt=ls.layerRanges.panoramax[ls.panoramax].layers.find((vt=>vt.id.endsWith("_sequences_plus"))))||void 0===bt?void 0:bt.id,sc=null===(le=ls.layerRanges.panoramax[ls.panoramax].layers.find((vt=>vt.id.endsWith("_grid"))))||void 0===le?void 0:le.id;Dl&&Fl||console.error("Panoramax source not loaded"),this.on("mousemove",Dl,(vt=>{this.getCanvas().style.cursor="pointer";const bt=Object.assign({},vt);this._attachPreviewToPictures(bt,Dl)})),this.on("mouseleave",Dl,(()=>{this.getCanvas().style.cursor=""})),this.on("click",Dl,this._onPictureClick.bind(this)),this.on("mousemove",Fl,(vt=>{if(!(this.getZoom()>=ho.TILES_PICTURES_ZOOM)&&(this._onSequenceHover(vt),this.getCanvas().style.cursor="pointer",vt.features[0].properties.id)){const bt=Object.assign({},vt);this._attachPreviewToPictures(bt,Fl)}})),this.on("mouseleave",Fl,(()=>{this.getCanvas().style.cursor="",this._dropPreview(!0)})),this.on("click",Fl,(vt=>{vt.preventDefault(),this._onSequenceClick(vt)})),sc&&(this.on("mousemove",sc,(vt=>{if(this.getZoom()<=ho.TILES_PICTURES_ZOOM+1){this.getCanvas().style.cursor="pointer";const bt=Object.assign({},vt);this._attachPreviewToPictures(bt,sc)}})),this.on("mouseleave",sc,(()=>{this._dropPreview(),this.getCanvas().style.cursor=""})),this.on("click",sc,(vt=>{vt.preventDefault(),this.flyTo({center:vt.lngLat,zoom:ho.TILES_PICTURES_ZOOM-6})})))}_attachPreviewToPictures(vt,bt){var le,ls;let Dl=vt.features.pop();if(!Dl||Dl.properties.id==this._picPopup._picId)return;clearTimeout(this._picPreviewTimer),clearTimeout(this._picDropPreviewTimer),this._picPopup._loading=Dl.properties.id,this._picPopup._picId=Dl.properties.id,delete this._picPopup._seqId,vt.lngLat||(vt.lngLat=this.getCenter());let Fl=null;if(bt.includes("_pictures")&&"Point"===Dl.geometry.type)Fl=Dl;else if(this.getZoom()<ho.TILES_PICTURES_ZOOM&&bt.includes("_sequences")&&"LineString"===Dl.geometry.type){let bt=null;for(let le=0;le<Dl.geometry.coordinates.length;le++){let ls=vt.lngLat.distanceTo(new(Ac().LngLat)(...Dl.geometry.coordinates[le]));(!bt||ls<bt)&&(Fl={type:"Feature",geometry:{type:"Point",coordinates:Dl.geometry.coordinates[le]},properties:{first_sequence:Dl.properties.id,collection:Dl.properties.id}},bt=ls)}}var sc,uc,mc,gc;Fl&&void 0!==Fl.properties.heading?(this._picPopup._seqId=Fl.properties.first_sequence,null===(sc=(uc=this._picMarkerPreview).setLngLat)||void 0===sc||sc.call(uc,Fl.geometry.coordinates).setRotation(Fl.properties.heading||0).addTo(this)):null===(mc=this._picMarkerPreview)||void 0===mc||null===(gc=mc.remove)||void 0===gc||gc.call(mc);let Ec=Fl?Fl.geometry.coordinates:vt.lngLat;this._picPopup.setLngLat(Ec).addTo(this),Fl||this._picThumbUrl[Dl.properties.id]||this._picPopup.setDOMContent((0,ho.getThumbGif)(this._parent._t));const displayThumb=vt=>{if(this._picPopup._loading===Dl.properties.id)if(vt){let bt=document.createElement("img");bt.classList.add("pnx-map-thumb"),bt.alt=this._parent._t.map.thumbnail;let le=new Image;if(le.src=vt,le.addEventListener("load",(()=>{this._picPopup._loading===Dl.properties.id&&(Dl.properties.hidden?bt.children[0].src=le.src:bt.src=le.src,this._picPopup.setDOMContent(bt),delete this._picPopup._loading)})),Dl.properties.hidden){const vt=document.createElement("div");vt.classList.add("pnx-map-thumb-legend"),vt.appendChild(document.createTextNode(this._parent._t.map.not_public));const le=document.createElement("div");le.appendChild(bt),le.appendChild(vt),bt=le}}else this._picPopup.remove()};var kc,du;this._picPopup._loading===Dl.properties.id&&(this._picThumbUrl[(null===(le=Fl)||void 0===le||null===(ls=le.properties)||void 0===ls?void 0:ls.id)||Dl.properties.id]?displayThumb(this._picThumbUrl[(null===(kc=Fl)||void 0===kc||null===(du=kc.properties)||void 0===du?void 0:du.id)||Dl.properties.id]):(clearTimeout(this._picPreviewTimer),this._picPreviewTimer=setTimeout((()=>{this._picPopup._loading===Dl.properties.id&&(Fl?Fl.properties.id?this._getPictureThumbURL(Fl.properties.id,Fl.properties.collection).then(displayThumb):this._getSequenceThumbURL(Dl.properties.collection,Ec).then(displayThumb):bt.endsWith("_grid")?this._getThumbURL(Ec).then(displayThumb):bt.includes("_sequences")&&this._getSequenceThumbURL(Dl.properties.id,Ec).then(displayThumb))}),50)))}_getThumbURL(vt){return this._parent.getAPI().getPicturesAroundCoordinates(vt.lat,vt.lng,.1,1).then((vt=>{var bt;const le=null===vt||void 0===vt||null===(bt=vt.features)||void 0===bt?void 0:bt.pop();return le?this._parent.getAPI().findThumbnailInPictureFeature(le):null}))}_getSequenceThumbURL(vt,bt){return bt?this._parent.getAPI().getPicturesAroundCoordinates(bt.lat||bt[1],bt.lng||bt[0],1,1,vt).then((bt=>{var le;return(null===bt||void 0===bt||null===(le=bt.features)||void 0===le?void 0:le.length)>0?this._parent.getAPI().findThumbnailInPictureFeature(bt.features[0]):this._parent.getAPI().getPictureThumbnailURLForSequence(vt)})):this._parent.getAPI().getPictureThumbnailURLForSequence(vt)}_getPictureThumbURL(vt,bt){let le=Promise.resolve();return vt&&(void 0!==this._picThumbUrl[vt]?le="string"===typeof this._picThumbUrl[vt]?Promise.resolve(this._picThumbUrl[vt]):this._picThumbUrl[vt]:(this._picThumbUrl[vt]=this._parent.getAPI().getPictureThumbnailURL(vt,bt).then((bt=>bt?(this._picThumbUrl[vt]=bt,bt):(this._picThumbUrl[vt]=null,null))).catch((()=>{this._picThumbUrl[vt]=null})),le=this._picThumbUrl[vt])),le}_getPictureMarker(){let vt=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];const bt=document.createElement("img");return bt.src=vt?Fl:Dl,bt.alt="",new(Ac().Marker)({element:bt,picId:null}).setDraggable(vt&&this._options.picMarkerDraggable)}_onSequenceHover(vt){var bt;vt.preventDefault(),vt.features.length>0&&null!==(bt=vt.features[0].properties)&&void 0!==bt&&bt.id&&this.fire("sequence-hover",{seqId:vt.features[0].properties.id})}_onSequenceClick(vt){var bt;if(vt.preventDefault(),vt.originalEvent.stopImmediatePropagation(),"pic"!==(null===(bt=this._parent.psv)||void 0===bt?void 0:bt.getPicturesNavigation())&&vt.features.length>0){var le;let bt=vt.features[0];vt.features.length>1&&this._picPopup._seqId&&(bt=vt.features.find((vt=>vt.properties.id===this._picPopup._seqId))||bt),null!==(le=bt.properties)&&void 0!==le&&le.id&&this.fire("sequence-click",{seqId:bt.properties.id,coordinates:vt.lngLat})}}_onPictureClick(vt){var bt,le,ls;if(vt.preventDefault(),vt.originalEvent.stopImmediatePropagation(),"pic"===(null===(bt=this._parent.psv)||void 0===bt?void 0:bt.getPicturesNavigation()))return;const ho=this.queryRenderedFeatures(vt.point);if(ho.length>1&&ho.find((vt=>{var bt;return null===vt||void 0===vt||null===(bt=vt.source)||void 0===bt?void 0:bt.startsWith("sem-")})))return;const Dl=(null===vt||void 0===vt||null===(le=vt.features)||void 0===le?void 0:le.length)>0?vt.features[0]:null;if(null!==Dl&&void 0!==Dl&&null!==(ls=Dl.properties)&&void 0!==ls&&ls.id){let bt=null;try{Dl.properties.sequences&&(Array.isArray(Dl.properties.sequences)||(Dl.properties.sequences=JSON.parse(Dl.properties.sequences)),bt=Dl.properties.sequences.pop())}catch(vt){console.log("Sequence ID is not available in vector tiles for picture "+Dl.properties.id)}this.fire("picture-click",{picId:Dl.properties.id,seqId:bt,feature:Dl})}}addEventListener(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};null!==le&&void 0!==le&&le.once?this.once(vt,bt):this.on(vt,bt)}}},2771:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapMore});var ls=le(9379),ho=le(5642),Dl=le(2283),Fl=le(4005);class MapMore extends ho.A{constructor(vt,bt){super(vt,bt,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),this._options.theme&&this._parent.mapStyleComposer.setPanoramaxTheme(this._options.theme),this._featuresRestrict={pictures:{},sequences:{}}}async _postLoad(){this._parent.api._endpoints.queryables&&Dl.SEMANTICS_OVERLAYS.forEach((vt=>this.addSemanticOverlay(...vt))),await super._postLoad()}setFilters(vt){const bt=this._parent.mapStyleComposer.panoramaxFilters,le=Object.assign({featuresRestrictions:bt.featuresRestrictions},vt);this._parent.mapStyleComposer.setPanoramaxFilters(le),vt.theme&&this._parent.mapStyleComposer.setPanoramaxTheme(vt.theme)}restrictVisibleFeatures(vt,bt,le){this._featuresRestrict[bt]={rule:vt,features:le};const ls=this._parent.mapStyleComposer.panoramaxFilters,ho=Object.assign({},ls,{featuresRestrictions:this._featuresRestrict});this._parent.mapStyleComposer.setPanoramaxFilters(ho)}addSemanticOverlay(vt,bt,le){let ho=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(!this._parent.getAPI()._endpoints.queryables)throw new Error("Semantics overlay are not available on API");const Dl="sem-"+vt,sc="none"!==le.layout.visibility,uc={sources:{[Dl]:{type:"vector",tiles:["sem:///".concat(bt,"/{z}/{x}/{y}")],minzoom:Fl.lU,maxzoom:Fl.nu}},layers:[(0,ls.A)({id:vt,source:Dl,"source-layer":"layer"},JSON.parse(JSON.stringify(le)))],sprite:Object.entries(ho||{}).map((vt=>{let[bt,le]=vt;return{id:bt,url:le}}))};delete uc.layers[0].layout.visibility,this._parent.mapStyleComposer.addDataOverlay(Dl,uc,sc),this.on("click",vt,(vt=>{var bt;if(vt.preventDefault(),(null===vt||void 0===vt||null===(bt=vt.features)||void 0===bt?void 0:bt.length)>0){const bt=vt.features[0];this._parent.select(bt.properties.seqid,bt.properties.picid),this._parent.psv.addEventListener("picture-loaded",(()=>{var vt,bt;const le=this._parent.psv.getPictureMetadata();1===(null===(vt=le.properties)||void 0===vt||null===(bt=vt.annotations)||void 0===bt?void 0:bt.length)&&this._parent.psv.focusOnAnnotation(le.properties.annotations[0].id)}),{once:!0})}}))}getSemanticOverlays(){return Object.entries(this._parent.mapStyleComposer.layerRanges.dataOverlays).filter((vt=>{let[bt]=vt;return bt.startsWith("sem-")})).map((vt=>{let[,bt]=vt;return bt.layers[0]}))}toggleAllSemanticOverlays(vt){Object.keys(this._parent.mapStyleComposer.layerRanges.dataOverlays).filter((vt=>vt.startsWith("sem-"))).forEach((bt=>this._parent.mapStyleComposer.switchDataOverlayVisibility(bt,vt)))}}},9048:(vt,bt,le)=>{"use strict";le.d(bt,{Ay:()=>Photo,LM:()=>_u,Vf:()=>Md,cS:()=>du});var ls=le(9379),ho=(le(5003),le(5975)),Dl=le(2305),Fl=le(7343),sc=le(508),uc=(le(3961),le(1080),le(2710),le(1575),le(1545)),mc=le(3348),gc=le(4991),Ac=le(3727);const Ec={baseUrl:ho,width:1280,cols:2,rows:1,tileUrl:()=>null},kc={id:Fl.BASE_PANORAMA_ID,caption:"",panorama:Ec,links:[],gps:[0,0],sequence:{},sphereCorrection:{},horizontalFov:360,properties:{}},du=30,_u=250,Md=3e3,Ld="draw-annotation-1",Nd="draw-annotation-2",Rd="draw-annotation-r",Od="rgb(224, 64, 251)",jd="rgb(224, 64, 251, 0.5)",Ud="rgb(123, 31, 162)",Gd="rgba(123, 31, 162, 0.5)";uc.jM.useNewAnglesOrder=!0;class Photo extends uc.jM{constructor(vt,bt){var le;let ho=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};super((0,ls.A)({container:bt,adapter:[Ac.A,{showErrorTile:!1,baseBlur:!1,resolution:vt.isWidthSmall()?32:64,shouldGoFast:(null===ho||void 0===ho?void 0:ho.shouldGoFast)||(()=>!1),useXmpData:!1}],withCredentials:vt.api._getPSVWithCredentials(),requestHeaders:null===vt||void 0===vt||null===(le=vt["fetch-options"])||void 0===le?void 0:le.headers,panorama:Ec,lang:vt._t.psv,minFov:5,loadingTxt:"&nbsp;",navbar:null,rendererParameters:{preserveDrawingBuffer:!vt.isWidthSmall()},plugins:[[mc.$,{dataMode:"server",positionMode:"gps",renderMode:"3d",preload:!0,getNode:()=>{},transitionOptions:()=>{},arrowsPosition:{linkOverlapAngle:Math.PI/6}}],[gc.b,{}]]},ho)),this._parent=vt,this._options=ho,bt.classList.add("pnx-psv"),this._shouldGoFast=(null===ho||void 0===ho?void 0:ho.shouldGoFast)||(()=>!1),this._transitionDuration=(null===ho||void 0===ho?void 0:ho.transitionDuration)||_u,this._myVTour=this.getPlugin(mc.$),this._myVTour.datasource.nodeResolver=this._getNodeFromAPI.bind(this),this._myVTour.config.transitionOptions=this._psvNodeTransition.bind(this),this._clearArrows=this._myVTour.arrowsRenderer.clear.bind(this._myVTour.arrowsRenderer),this._myVTour.arrowsRenderer.clear=()=>{},this._myMarkers=this.getPlugin(gc.b),this._annotationsVisible=!0===this._options.displayAnnotations,this._drawingAnnotation=null,this._sequencePlaying=!1,this._picturesNavigation=this._options.picturesNavigation||"any",this._picturesSequences={},this._myVTour.addEventListener("enter-arrow",this._onEnterArrow.bind(this)),this._myVTour.addEventListener("leave-arrow",this._onLeaveArrow.bind(this)),this._myVTour.addEventListener("node-changed",this._onNodeChanged.bind(this)),this._myMarkers.addEventListener("select-marker",this._onSelectMarker.bind(this)),this.addEventListener("position-updated",this._onPositionUpdated.bind(this)),this.addEventListener("zoom-updated",this._onZoomUpdated.bind(this)),this.addEventListener("dblclick",this._onDoubleClick.bind(this)),this._parent.addEventListener("select",this._onSelect.bind(this)),this.loader.size=150,this.loader.color="rgba(61, 61, 61, 0.5)",this.loader.textColor="rgba(255, 255, 255, 0.7)",this.loader.border=5,this.loader.thickness=10,this.loader.canvas.setAttribute("viewBox","0 0 150 150"),this.loader.__updateContent(),this._options.position&&!this._parent.picture&&this.goToPosition(...this._options.position)}async _getNodeFromAPI(vt){var bt,le;if((0,Fl.isNullId)(vt))return kc;const ls=await fetch(this._parent.getAPI().getPictureMetadataUrl(vt,this._picturesSequences[vt]),this._parent.getAPI()._getFetchOptions());let ho=await ls.json();if(ho.features&&(ho=ho.features.pop()),!ho||0===Object.keys(ho).length||!ls.ok)throw this._parent.loader&&this._parent.loader.dismiss(!0,this._parent._t.pnx.error_pic),new Error("Picture with ID "+vt+" was not found");this._picturesSequences[vt]=ho.collection;const Dl=(0,sc.apiFeatureToPSVNode)(ho,this._parent._t,this._parent._isInternetFast,this._picturesNavFilter.bind(this),this._parent.getAPI().cleanResourceURL.bind(this._parent.getAPI()));var uc,mc;null!==Dl&&void 0!==Dl&&null!==(bt=Dl.sequence)&&void 0!==bt&&bt.prevPic&&(this._picturesSequences[null===Dl||void 0===Dl||null===(uc=Dl.sequence)||void 0===uc?void 0:uc.prevPic]=ho.collection);null!==Dl&&void 0!==Dl&&null!==(le=Dl.sequence)&&void 0!==le&&le.nextPic&&(this._picturesSequences[null===Dl||void 0===Dl||null===(mc=Dl.sequence)||void 0===mc?void 0:mc.nextPic]=ho.collection);return Dl}_psvNodeTransition(vt,bt,le){var ho,Dl,sc;let uc={};const mc=this._shouldGoFast()?0:Math.min(_u,this._transitionDuration),gc=mc>100,Ac=null!=(le||(null===bt||void 0===bt?void 0:bt.links.find((bt=>bt.nodeId==vt.id)))),Ec=bt&&vt.sequence.id===bt.sequence.id,kc=((null===bt||void 0===bt||null===(ho=bt.properties)||void 0===ho?void 0:ho["view:azimuth"])||0)*(Math.PI/180),Md=((null===vt||void 0===vt||null===(Dl=vt.properties)||void 0===Dl?void 0:Dl["view:azimuth"])||0)*(Math.PI/180),Ld=(0,Fl.getRelativeHeading)(vt)*(Math.PI/180);this.setOption("maxFov",Math.min(3*vt.horizontalFov/4,90));const Nd={showLoader:!1,effect:"none",speed:0,rotation:!1,rotateTo:{pitch:0,yaw:-Ld},zoomTo:du};if(360==vt.horizontalFov)uc=bt?(0,Fl.getDistance)(bt.gps,vt.gps)>=.001?Nd:{speed:mc,effect:Ac&&gc?"fade":"none",rotation:Ac&&Ec&&gc,rotateTo:this.getPosition()}:Nd;else if(Ec){const vt=this.getPosition().yaw,le=bt.horizontalFov*(Math.PI/180)/2,ls=vt<=le||vt>=2*Math.PI-le,ho=Math.abs(kc-Md)<=Math.PI/4;uc={speed:mc,effect:Ac&&ho&&gc?"fade":"none",rotation:Ac&&ho&&gc,rotateTo:ls?this.getPosition():{pitch:0,yaw:0},zoomTo:ls?this.getZoomLevel():du}}else uc=Object.assign(Nd,{rotateTo:{pitch:0,yaw:0}});"fade"===uc.effect&&uc.speed>=150?setTimeout(this._clearArrows,uc.speed-100):this._clearArrows();const Rd=new CustomEvent("picture-loading",{detail:(0,ls.A)((0,ls.A)({},Object.assign({},this.getXYZ(),uc.rotateTo?{x:180*(Md+uc.rotateTo.yaw)/Math.PI}:null,uc.zoomTo?{z:uc.zoomTo}:null)),{},{picId:vt.id,lon:vt.gps[0],lat:vt.gps[1],first:(null===(sc=this._parent._initParams)||void 0===sc?void 0:sc.getParentPostInit().picture)==vt.id})});return this.dispatchEvent(Rd),uc}_onEnterArrow(vt){const bt=vt.link,le=vt.node;let ls;le&&(ls=360===le.horizontalFov?(this.getPictureOriginalHeading()+180*this.getPosition().yaw/Math.PI)%360:this.getPictureOriginalHeading());const ho=new CustomEvent("picture-preview-started",{detail:{picId:bt.nodeId,coordinates:bt.gps,direction:ls}});this.dispatchEvent(ho)}_onLeaveArrow(vt){const bt=vt.link,le=new CustomEvent("picture-preview-stopped",{detail:{picId:bt.nodeId}});this.dispatchEvent(le)}_onPositionUpdated(vt){let{position:bt}=vt;const le=(0,Fl.positionToXYZ)(bt,this.getZoomLevel());le.x+=this.getPictureOriginalHeading(),le.x=le.x%360;const ls=new CustomEvent("view-rotated",{detail:le});this.dispatchEvent(ls),this._onTilesStartLoading()}_onZoomUpdated(vt){let{zoomLevel:bt}=vt;const le=new CustomEvent("view-rotated",{detail:(0,ls.A)((0,ls.A)({},this.getXY()),{},{z:bt})});this.dispatchEvent(le),this._onTilesStartLoading()}_onDoubleClick(){this.unfocusAnnotation(!1,!0)}_onNodeChanged(vt){for(let ls of document.getElementsByClassName("pnx-psv-tour-arrows"))ls.classList.remove("pnx-clicked");if(vt.node.id){var bt,le,ho;const Dl=(null===(bt=this._parent._initParams)||void 0===bt?void 0:bt.getParentPostInit().picture)==vt.node.id;this._parent.select(null===(le=vt.node)||void 0===le||null===(ho=le.sequence)||void 0===ho?void 0:ho.id,vt.node.id);const Fl=this.getPictureMetadata();if(!Fl)return void this.dispatchEvent(new CustomEvent("picture-loaded",{detail:{}}));this._prevSequence=Fl.sequence.id;const sc=new CustomEvent("picture-loaded",{detail:(0,ls.A)((0,ls.A)({},this.getXYZ()),{},{picId:vt.node.id,lon:Fl.gps[0],lat:Fl.gps[1],first:Dl})});this.dispatchEvent(sc),Fl.panorama.hdUrl?(this.setOption("downloadUrl",Fl.panorama.hdUrl),this.setOption("downloadName",vt.node.id+".jpg")):this.setOption("downloadUrl",null),this._annotationsVisible&&this.toggleAllAnnotations(!0)}this._onTilesStartLoading()}_onSelectMarker(vt){var bt;if(vt.marker&&null!==(bt=vt.marker.id)&&void 0!==bt&&bt.startsWith("annotation-")){if(this.getSelectedAnnotations().find((vt=>{var bt,le,ls;return null===(bt=this._myMarkers.markers["annotation-"+vt])||void 0===bt||null===(le=bt.config)||void 0===le||null===(ls=le.data)||void 0===ls?void 0:ls.blockFocus})))return;this.focusOnAnnotation(vt.marker.data.id)}}_onTilesStartLoading(){this._tilesQueueTimer&&(clearInterval(this._tilesQueueTimer),delete this._tilesQueueTimer),this._tilesQueueTimer=setInterval((()=>{if(0===Object.keys(this.adapter.queue.tasks).length){if(this._myVTour.state.currentNode){const vt=new CustomEvent("picture-tiles-loaded",{detail:{picId:this._myVTour.state.currentNode.id}});this.dispatchEvent(vt)}clearInterval(this._tilesQueueTimer),delete this._tilesQueueTimer}}),100)}getPictureMetadata(){var vt,bt,le;return(0,Fl.isNullId)(null===(vt=this._myVTour)||void 0===vt||null===(bt=vt.state)||void 0===bt||null===(le=bt.currentNode)||void 0===le?void 0:le.id)?null:this._myVTour.state.currentNode?Object.assign({},this._myVTour.state.currentNode):null}getPictureId(){var vt,bt,le,ls,ho;const Dl=(null===(vt=this._myVTour)||void 0===vt||null===(bt=vt.state)||void 0===bt?void 0:bt.loadingNode)||(null===(le=this._myVTour)||void 0===le||null===(ls=le.state)||void 0===ls||null===(ho=ls.currentNode)||void 0===ho?void 0:ho.id);return(0,Fl.isNullId)(Dl)?null:Dl}_onSelect(vt){if(!this._parent.getAPI())return(this._parent.onceAllAPIsReady.bind(this._parent)||this._parent.onceAPIReady.bind(this._parent))().then((()=>this._onSelect(vt)));vt.detail.seqId&&(this._picturesSequences[vt.detail.picId]=vt.detail.seqId),vt.detail.seqId&&!vt.detail.picId?(this.loader.show(),this._parent.getAPI().getSequenceItems(vt.detail.seqId,null,null,1).then((bt=>{var le;if((null===bt||void 0===bt||null===(le=bt.features)||void 0===le?void 0:le.length)>0){const le=bt.features[0].id;this._picturesSequences[le]=vt.detail.seqId,this._parent.select(vt.detail.seqId,le)}})).catch((vt=>this.showErrorOverlay(vt,this._parent._t.pnx.error_pic,!0)))):vt.detail.picId?this.getPictureId()!==vt.detail.picId&&(this.loader.show(),this._myVTour.setCurrentNode(vt.detail.picId).catch((vt=>{this.showErrorOverlay(vt,this._parent._t.pnx.error_pic,!0)}))):(this._myVTour.setCurrentNode(null),this._myVTour.state.currentNode.id=null,this._myVTour.state.loadingNode=null)}goToNextPicture(){if(!this.getPictureMetadata())throw new Error("No picture currently selected");if("pic"==this._picturesNavigation)throw new Error("Pictures navigation is locked to current picture");const vt=this.getPictureMetadata().sequence.nextPic;if(!vt)throw new Error("No next picture available");this._parent.select(this.getPictureMetadata().sequence.id,vt)}goToPrevPicture(){if(!this.getPictureMetadata())throw new Error("No picture currently selected");if("pic"==this._picturesNavigation)throw new Error("Pictures navigation is locked to current picture");const vt=this.getPictureMetadata().sequence.prevPic;if(!vt)throw new Error("No previous picture available");this._parent.select(this.getPictureMetadata().sequence.id,vt)}async goToPosition(vt,bt){if("pic"==this._picturesNavigation)throw new Error("Pictures navigation is locked to current picture");return this._parent.getAPI().getPicturesAroundCoordinates(vt,bt).then((vt=>{if(vt.features.length>0){const bt=vt.features.pop();return this._parent.select(null===bt||void 0===bt?void 0:bt.collection,bt.id),bt.id}return Promise.reject(new Error("No picture found nearby given coordinates"))}))}getXY(){const vt=(0,Fl.positionToXYZ)(this.getPosition());return vt.x=(vt.x+this.getPictureOriginalHeading())%360,vt}getXYZ(){const vt=this.getXY();return vt.z=this.getZoomLevel(),vt}getPictureOriginalHeading(){var vt,bt;return(null===(vt=this.getPictureMetadata())||void 0===vt||null===(bt=vt.properties)||void 0===bt?void 0:bt["view:azimuth"])||0}getPictureRelativeHeading(){return(0,Fl.getRelativeHeading)(this.getPictureMetadata())}clearPictureMetadataCache(){var vt,bt,le,ls;const ho=null===(vt=this.getPictureMetadata())||void 0===vt?void 0:vt.id,Dl=null===(bt=this.getPictureMetadata())||void 0===bt||null===(le=bt.sequence)||void 0===le?void 0:le.id;null===(ls=this._myVTour.state.currentTooltip)||void 0===ls||ls.hide(),this._myVTour.state.currentTooltip=null,this._myVTour.state.currentNode=null,this._myVTour.state.preload={},this._myVTour.datasource.nodes={},ho&&this._parent.select(Dl,ho)}setXYZ(vt,bt,le){const ls=(0,Fl.xyzToPosition)(vt-this.getPictureOriginalHeading(),bt,le);this.rotate({yaw:ls.yaw,pitch:ls.pitch}),this.zoom(ls.zoom)}setHigherContrast(vt){this.renderer.renderer.toneMapping=vt?3:0,this.renderer.renderer.toneMappingExposure=vt?2:1,this.needsUpdate()}getTransitionDuration(){return this._transitionDuration}setTransitionDuration(vt){if((vt=parseFloat(vt))<100||vt>Md)throw new Error("Invalid transition duration (should be between 100 and "+Md+")");this._transitionDuration=vt;const bt=new CustomEvent("transition-duration-changed",{detail:{value:vt}});this.dispatchEvent(bt)}setPanorama(vt,bt){if(vt.baseUrl.startsWith("data:"))return Promise.resolve();const onFailure=vt=>{var bt;return this.showErrorOverlay(vt,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.error_pic,!0)};try{return super.setPanorama(vt,bt).catch(onFailure)}catch(le){onFailure(le)}}showErrorOverlay(vt,bt,le){var ls,ho,Fl,sc;null!==(ls=this._parent)&&void 0!==ls&&ls.loader.isVisible()||!this.overlay.isVisible()?null===(ho=this._parent)||void 0===ho||ho.loader.dismiss(vt,bt,le?()=>{var vt;null===(vt=this._parent)||void 0===vt||vt.loader.dismiss(),this.overlay.hide()}:void 0):(console.error(vt),this.overlay.show({image:'<img style="width: 200px" src="'.concat(Dl,'" alt="" />'),title:null===(Fl=this._parent)||void 0===Fl?void 0:Fl._t.pnx.error,text:bt+"<br />"+(null===(sc=this._parent)||void 0===sc?void 0:sc._t.pnx.error_click),dissmisable:le}))}playSequence(){this._sequencePlaying=!0,this.container.classList.add("pnx-psv-playing");const vt=new Event("sequence-playing",{bubbles:!0,composed:!0});this.dispatchEvent(vt);const nextPicturePlay=()=>{if(this._sequencePlaying){this.addEventListener("picture-loaded",(()=>{this._playTimer=setTimeout((()=>{nextPicturePlay()}),this.getTransitionDuration())}),{once:!0});try{this.goToNextPicture()}catch(vt){this.stopSequence()}}};this.addEventListener("click",(()=>this.stopSequence())),nextPicturePlay()}stopSequence(){this._sequencePlaying=!1,this.container.classList.remove("pnx-psv-playing"),this._playTimer&&(clearTimeout(this._playTimer),delete this._playTimer),this.forceRefresh();const vt=new Event("sequence-stopped",{bubbles:!0,composed:!0});this.dispatchEvent(vt)}isSequencePlaying(){return this._sequencePlaying}toggleSequencePlaying(){this.isSequencePlaying()?this.stopSequence():this.playSequence()}getPicturesNavigation(){return this._picturesNavigation}setPicturesNavigation(vt){"none"===vt&&(vt="pic"),this._picturesNavigation=vt;const bt=this.container.querySelector(".psv-virtual-tour-arrows");bt&&(bt.style.display="pic"==vt?"none":null);const le=new CustomEvent("pictures-navigation-changed",{detail:{value:vt}});this.dispatchEvent(le)}_picturesNavFilter(vt){switch(this._picturesNavigation){case"seq":return["next","prev"].includes(vt.rel);case"pic":case"none":return!1;default:return!0}}areAnnotationsVisible(){return this._annotationsVisible}getSelectedAnnotations(){return Object.keys(this._myMarkers.markers).filter((vt=>{var bt,le,ls;return vt.startsWith("annotation-")&&(null===(bt=this._myMarkers.markers[vt])||void 0===bt||null===(le=bt.config)||void 0===le||null===(ls=le.data)||void 0===ls?void 0:ls.selected)})).map((vt=>vt.replace("annotation-","")))}toggleAllAnnotations(vt){const bt=this.getPictureMetadata(),le=this._annotationsVisible==vt;if(!bt)throw this._myMarkers.clearMarkers(),new Error("No picture currently selected");if(vt){var ls;let vt=bt.properties.annotations||[];0===(null===(ls=vt)||void 0===ls?void 0:ls.length)&&console.warn("No annotation available on picture",bt.id),vt=vt.map((vt=>{if(!bt.properties["pers:interior_orientation"].sensor_array_dimensions)return console.warn("Picture lacks pers:interior_orientation.sensor_array_dimensions property, can't compute marker"),null;const le=vt.shape.coordinates.map((vt=>vt.map((vt=>{var le;const ls=null===(le=bt.panorama)||void 0===le?void 0:le.cropData,ho={textureX:vt[0]+((null===ls||void 0===ls?void 0:ls.croppedX)||0),textureY:vt[1]+((null===ls||void 0===ls?void 0:ls.croppedY)||0)};return this.dataHelper.textureCoordsToSphericalCoords(ho)}))));return{id:"annotation-".concat(vt.id),polygon:le,data:{id:vt.id},className:"pnx-psv-annotation",svgStyle:{stroke:"var(--orange)",strokeWidth:"3px",fill:"var(--orange-transparent)",cursor:"pointer"},tooltip:this._parent._t.pnx.semantics_annotation_tooltip}})),this._myMarkers.setMarkers(vt)}else this._myMarkers.clearMarkers();this._annotationsVisible=vt,le||this.dispatchEvent(new CustomEvent("annotations-toggled",{detail:{visible:vt}}))}focusOnAnnotation(vt){let bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1],le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const ls=this.getSelectedAnnotations();if(vt&&1===ls.length&&ls[0]===vt)return;this.areAnnotationsVisible()||this.toggleAllAnnotations(!0),this.unfocusAnnotation(!0);const ho="annotation-".concat(vt);if(this._myMarkers.markers[ho]){if(this._myMarkers.updateMarker({id:ho,svgStyle:{stroke:"var(--red)",strokeWidth:"3px",fill:"var(--red-transparent)"},data:{selected:!0,blockFocus:bt}}),this._myMarkers.gotoMarker(ho,0),this.zoom(65),!le){const bt=new CustomEvent("annotation-focused",{detail:{annotationId:vt}});this.dispatchEvent(bt)}}else setTimeout((()=>this.focusOnAnnotation(vt,bt,le)),100)}unfocusAnnotation(){let vt=arguments.length>0&&void 0!==arguments[0]&&arguments[0],bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const le=this.getSelectedAnnotations();if(le.length>0){let ls=0;le.forEach((vt=>{var le,ho,Dl;const Fl="annotation-"+vt;bt&&null!==(le=this._myMarkers.markers[Fl])&&void 0!==le&&null!==(ho=le.config)&&void 0!==ho&&null!==(Dl=ho.data)&&void 0!==Dl&&Dl.blockFocus?ls++:this._myMarkers.updateMarker({id:Fl,svgStyle:{stroke:"var(--orange)",strokeWidth:"3px",fill:"var(--orange-transparent)"},data:{selected:!1,blockFocus:!1}})})),!vt&&ls<le.length&&this.dispatchEvent(new Event("annotations-unfocused"))}}startDrawAnnotation(){this.toggleAllAnnotations(!1),this._drawingAnnotation=[],this._drawingMoves=0,this._myMarkers.addMarker({id:Rd,polygon:[{yaw:0,pitch:0},{yaw:0,pitch:0},{yaw:0,pitch:0}],svgStyle:{fill:Gd,stroke:Ud,strokeWidth:"2px"},visible:!1}),this._myMarkers.addMarker({id:Ld,circle:5,position:{yaw:0,pitch:0},style:{cursor:"pointer"},svgStyle:{fill:jd,stroke:Od,strokeWidth:"3px"}}),this._myMarkers.addMarker({id:Nd,circle:5,position:{yaw:0,pitch:0},style:{cursor:"pointer"},svgStyle:{fill:jd,stroke:Od,strokeWidth:"3px"},visible:!1});const firstMove=vt=>{const bt=this.getPositionFromEvent(vt);bt&&this._myMarkers.markers[Ld]&&(this._myMarkers.updateMarker({id:Ld,position:bt,style:{cursor:"grab"}}),2==this._drawingAnnotation.length&&this._myMarkers.markers[Rd]&&this._myMarkers.updateMarker({id:Rd,polygon:[bt,{yaw:bt.yaw,pitch:this._drawingAnnotation[1].pitch},this._drawingAnnotation[1],{yaw:this._drawingAnnotation[1].yaw,pitch:bt.pitch}]}))},secMove=vt=>{const bt=this.getPositionFromEvent(vt);bt&&this._myMarkers.markers[Nd]&&(this._myMarkers.updateMarker({id:Nd,position:bt,style:{cursor:"grab"}}),this._drawingAnnotation.length>=1&&this._myMarkers.markers[Rd]&&this._myMarkers.updateMarker({id:Rd,polygon:[this._drawingAnnotation[0],{yaw:this._drawingAnnotation[0].yaw,pitch:bt.pitch},bt,{yaw:bt.yaw,pitch:this._drawingAnnotation[0].pitch}]}))};this._drawListeners=[firstMove,secMove],this.parent.addEventListener("mousemove",firstMove),this._drawingMoves=1,this._drawListenerClick=vt=>{let bt=!1;if(2!==this._drawingMoves&&vt.marker.id===Ld?0==this._drawingAnnotation.length?(this._drawingAnnotation.push({yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch}),this.parent.removeEventListener("mousemove",firstMove),this._myMarkers.updateMarker({id:Ld,style:{cursor:"pointer"}}),this._myMarkers.updateMarker({id:Nd,visible:!0,position:{yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch}}),this._myMarkers.updateMarker({id:Rd,visible:!0}),this.parent.addEventListener("mousemove",secMove),this._drawingMoves=2):0===this._drawingMoves?(this.parent.addEventListener("mousemove",firstMove),this._drawingMoves=1):(this._drawingAnnotation[0]={yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch},this.parent.removeEventListener("mousemove",firstMove),this._myMarkers.updateMarker({id:Ld,style:{cursor:"pointer"}}),this._drawingMoves=0,bt=!0):1!==this._drawingMoves&&vt.marker.id===Nd&&(1==this._drawingAnnotation.length?(this._drawingAnnotation.push({yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch}),this.parent.removeEventListener("mousemove",secMove),this._myMarkers.updateMarker({id:Nd,style:{cursor:"pointer"}}),this._drawingMoves=0,bt=!0):2===this._drawingMoves?(this._drawingAnnotation[1]={yaw:vt.marker.config.position.yaw,pitch:vt.marker.config.position.pitch},this.parent.removeEventListener("mousemove",secMove),this._myMarkers.updateMarker({id:Nd,style:{cursor:"pointer"}}),this._drawingMoves=0,bt=!0):(this.parent.addEventListener("mousemove",secMove),this._drawingMoves=2)),bt){var le,ls;const vt=this.dataHelper.sphericalCoordsToTextureCoords(this._drawingAnnotation[0]),bt=this.dataHelper.sphericalCoordsToTextureCoords(this._drawingAnnotation[1]);let ho=[vt.textureX,vt.textureY,bt.textureX,bt.textureY];const Dl=null===(le=this.getPictureMetadata())||void 0===le||null===(ls=le.panorama)||void 0===ls?void 0:ls.cropData;if(Dl&&(ho[0]-=Dl.croppedX,ho[1]-=Dl.croppedY,ho[2]-=Dl.croppedX,ho[3]-=Dl.croppedY,(ho[0]<0||ho[0]>Dl.croppedWidth||ho[1]<0||ho[1]>Dl.croppedHeight||ho[2]<0||ho[2]>Dl.croppedWidth||ho[3]<0||ho[3]>Dl.croppedHeight)&&(ho=null)),ho[0]>=ho[2]&&ho[1]>=ho[3]){let vt=ho[0],bt=ho[2],le=ho[1];ho=[bt,ho[3],vt,le]}const Fl=new CustomEvent("annotation-drawn",{detail:{shape:ho}});this.dispatchEvent(Fl)}},this._myMarkers.addEventListener("select-marker",this._drawListenerClick)}fixDrawAnnotation(){[Ld,Nd].forEach((vt=>{try{this._myMarkers.removeMarker(vt)}catch(bt){}})),(this._drawListeners||[]).forEach((vt=>this.parent.removeEventListener("mousemove",vt))),this._myMarkers.removeEventListener("select-marker",this._drawListenerClick),this._myMarkers.updateMarker({id:Rd,svgStyle:{stroke:"var(--red)",strokeWidth:"3px",fill:"var(--red-transparent)",cursor:"pointer"}}),this._drawingMoves=0}stopDrawAnnotation(){[Ld,Nd,Rd].forEach((vt=>{try{this._myMarkers.removeMarker(vt)}catch(bt){}})),(this._drawListeners||[]).forEach((vt=>this.parent.removeEventListener("mousemove",vt))),this._myMarkers.removeEventListener("select-marker",this._drawListenerClick),delete this._drawingMoves,this._drawingAnnotation=null}getPositionFromEvent(vt){const bt=this.container.getBoundingClientRect(),le=vt.clientX-bt.left,ls=vt.clientY-bt.top,ho=this.renderer.getIntersections({x:le,y:ls}).find((vt=>vt.object.userData[uc.aH.VIEWER_DATA]));if(ho)return this.dataHelper.vector3ToSphericalCoords(ho.point)}forceRefresh(){var vt;const bt=this._myVTour.getCurrentNode();if(bt&&bt.panorama.baseUrl!==(null===bt||void 0===bt||null===(vt=bt.panorama)||void 0===vt?void 0:vt.origBaseUrl)){const vt=this.getZoomLevel(),le=this.getPosition();this._myVTour.state.currentNode=null,this._myVTour.setCurrentNode(bt.id,{zoomTo:vt,rotateTo:le,fadeIn:!1,speed:0,rotation:!1})}bt&&bt.panorama.rows>1&&this.adapter.__refresh()}}},4374:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Popup});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(8591),mc=le(6627);class Popup extends Fl.WF{constructor(){super(),this.visible=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("click",(vt=>{vt.target===this&&this.close()})),document.addEventListener("keyup",(vt=>{"Escape"===vt.key&&this.visible&&this.close()}))}attributeChangedCallback(vt,bt,le){super.attributeChangedCallback(vt,bt,le),"visible"==vt&&(""!==le&&!0!==le||this.dispatchEvent(new Event("open")))}close(){this.visible=!1,this.dispatchEvent(new Event("close"))}render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<div class="pnx-panel pnx-padded">\n\t\t\t\t<pnx-button\n\t\t\t\t\tclass="btn-close"\n\t\t\t\t\tkind="inline"\n\t\t\t\t\tsize="l"\n\t\t\t\t\t@click=',"\n\t\t\t\t>\n\t\t\t\t\t","\n\t\t\t\t</pnx-button>\n\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t"])),this.close.bind(this),(0,sc.fa)(mc.faXmark))}}Popup.styles=[uc.nd,uc.Op,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\t/* Backdrop */\n\t\t:host {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tleft: 0;\n\t\t\tbottom: 0;\n\t\t\topacity: 0;\n\t\t\tvisibility: hidden;\n\t\t\tpointer-events: none;\n\t\t\ttransition: all 0.2s;\n\t\t\tbackground: rgba(0, 0, 0, 0.85);\n\t\t}\n\t\t:host(*[visible]) {\n\t\t\topacity: 1;\n\t\t\tvisibility: visible;\n\t\t\tpointer-events: unset;\n\t\t\tz-index: 200;\n\t\t}\n\n\t\t/* Content backgroud */\n\t\t.pnx-panel {\n\t\t\tbox-sizing: border-box;\n\t\t\tposition: relative;\n\t\t\twidth: 90%;\n\t\t\tmax-height: 90%;\n\t\t\tmax-width: 400px;\n\t\t\toverflow-y: auto;\n\t\t}\n\n\t\t.btn-close {\n\t\t\tposition: absolute;\n\t\t\ttop: 15px;\n\t\t\tright: 15px;\n\t\t}\n\t"])))],Popup.properties={visible:{type:Boolean,reflect:!0}},customElements.define("pnx-popup",Popup)},4364:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>ProgressBar});var ls,ho,Dl=le(7528),Fl=le(4542);class ProgressBar extends Fl.WF{render(){var vt;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["\n\t\t\t<progress\n\t\t\t\tvalue=","\n\t\t\t\tclass=",'\n\t\t\t\tmax="100"\n\t\t\t\ttitle=',"\n\t\t\t></progress>\n\t\t"])),this.value>=0?this.value:Fl.s6,this.value>=0?Fl.s6:"indeterminate",null===(vt=this._t)||void 0===vt?void 0:vt.map.loading)}}ProgressBar.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\tprogress {\n\t\t\tmax-width: 80vh;\n\t\t\twidth: 300px;\n\t\t\theight: 16px;\n\t\t\tappearance: none;\n\t\t\t-webkit-appearance: none;\n\t\t\tborder: 1px solid var(--grey-semi-dark);\n\t\t\tbackground-color: var(--grey);\n\t\t\tborder-radius: 8px;\n\t\t\toverflow: hidden;\n\t\t\tpadding: 3px;\n\t\t\tbox-sizing: border-box;\n\t\t\tdisplay: block;\n\t\t}\n\n\t\tprogress::-webkit-progress-bar {\n\t\t\tbackground-color: var(--grey);\n\t\t}\n\n\t\t/* Don\'t merge with -moz below, for some f*ing reason a list selector doesn\'t work with Chrome */\n\t\tprogress::-webkit-progress-value {\n\t\t\tbackground-color: var(--blue);\n\t\t\tborder-radius: 5px;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\tprogress::-moz-progress-bar {\n\t\t\tbackground-color: var(--blue);\n\t\t\tborder-radius: 5px;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\tprogress[value=""]::-moz-progress-bar,\n\t\tprogress:not([value])::-moz-progress-bar {\n\t\t\tanimation: indeterminateAnimation 1.5s infinite linear;\n\t\t}\n\n\t\tprogress.indeterminate {\n\t\t\tposition: relative;\n\t\t\tbackground-color: var(--grey);\n\t\t\toverflow: hidden;\n\t\t}\n\n\t\tprogress.indeterminate::after {\n\t\t\tcontent: "";\n\t\t\tposition: absolute;\n\t\t\tleft: 3px;\n\t\t\ttop: 3px;\n\t\t\tbottom: 3px;\n\t\t\twidth: 20%;\n\t\t\tbackground-color: var(--blue);\n\t\t\tborder-radius: 5px;\n\t\t\tanimation: indeterminateAnimation 1.5s infinite linear;\n\t\t\tpointer-events: none;\n\t\t}\n\n\t\t@keyframes indeterminateAnimation {\n\t\t\t0% { margin-left: 0%; width: 2%; }\n\t\t\t15% { margin-left: 0%; width: 20%; }\n\t\t\t50% { margin-left: 40%; width: 20%; }\n\t\t\t85% { margin-left: 80%; width: 20%; }\n\t\t\t100% { margin-left: 98%; width: 2%; }\n\t\t}\n\t']))),ProgressBar.properties={value:{type:Number}},customElements.define("pnx-progress-bar",ProgressBar)},2675:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>QualityScore});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(7343);class QualityScore extends sc.WF{constructor(){super(),this.grade=0,this.input=!1}_onInput(){const vt=[];for(let bt of this.renderRoot.querySelectorAll("input"))bt.checked&&vt.push(bt.value);this.grade=vt.join(","),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0}))}render(){const vt="".concat(this.grade).split(",").map((vt=>parseInt(vt))).filter((vt=>!isNaN(vt)));return this.input?uc.QUALITYSCORE_VALUES.map(((bt,le)=>{var ho;return(0,sc.qy)(ls||(ls=(0,Fl.A)(['\n\t\t\t\t<input\n\t\t\t\t\tid="',"-",'"\n\t\t\t\t\ttype="checkbox"\n\t\t\t\t\tname="qualityscore"\n\t\t\t\t\tvalue="','"\n\t\t\t\t\t@change="','"\n\t\t\t\t\t.checked=','\n\t\t\t\t/>\n\t\t\t\t<label\n\t\t\t\t\tfor="',"-",'"\n\t\t\t\t\ttitle="','"\n\t\t\t\t\tstyle="background-color: ','"\n\t\t\t\t>\n\t\t\t\t\t',"\n\t\t\t\t</label>\n\t\t\t"])),this.input,bt.label,5-le,this._onInput,vt.includes(5-le),this.input,bt.label,null===(ho=this._t)||void 0===ho?void 0:ho.pnx.filter_qualityscore_help,bt.color,bt.label)})):uc.QUALITYSCORE_VALUES.map(((bt,le)=>(0,sc.qy)(ho||(ho=(0,Fl.A)(['\n\t\t\t\t<span class="','" style="background-color: ','">\n\t\t\t\t\t',"\n\t\t\t\t</span>\n\t\t\t"])),vt.includes(5-le)?"selected":"",bt.color,bt.label)))}}QualityScore.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(['\n\t\t:host {\n\t\t\tgap: 0px;\n\t\t\tjustify-content: center;\n\t\t\theight: 2em;\n\t\t\tfont-size: 18px;\n\t\t\tdisplay: inline-flex;\n\t\t\talign-items: center;\n\t\t\tcolor: white;\n\t\t}\n\t\n\t\t/* Single letter */\n\t\tspan, label {\n\t\t\twidth: 1.2em;\n\t\t\theight: 1.5em;\n\t\t\tline-height: 1.5em;\n\t\t\tdisplay: inline-block;\n\t\t\tborder: 0.05em solid white;\n\t\t\ttext-align: center;\n\t\t\tbackground-color: gray;\n\t\t\tcolor: rgba(255,255,255,0.9);\n\t\t\tfont-family: var(--font-family);\n\t\t\tfont-weight: 800;\n\t\t\tvertical-align: middle;\n\t\t}\n\n\t\t/* Rounded corners for first/last */\n\t\tspan:first-of-type, label:first-of-type {\n\t\t\tborder-top-left-radius: 0.4em;\n\t\t\tborder-bottom-left-radius: 0.4em;\n\t\t}\n\n\t\tspan:last-of-type, label:last-of-type {\n\t\t\tborder-top-right-radius: 0.4em;\n\t\t\tborder-bottom-right-radius: 0.4em;\n\t\t}\n\n\t\t/* Selected letter */\n\t\t.selected, input[type="checkbox"]:checked + label {\n\t\t\tfont-size: 1.3em;\n\t\t\theight: 1.6em;\n\t\t\tline-height: 1.6em;\n\t\t\tborder-radius: 0.3em !important;\n\t\t}\n\n\t\t/* Clickable letter for input */\n\t\tlabel { cursor: pointer; }\n\n\t\tlabel:hover {\n\t\t\tfont-size: 1.2em;\n\t\t\theight: 1.6em;\n\t\t\tline-height: 1.6em;\n\t\t\tborder-radius: 0.3em !important;\n\t\t}\n\n\t\tinput[type="checkbox"] { display: none; }\n\t']))),QualityScore.properties={grade:{type:String,reflect:!0},input:{type:String}},customElements.define("pnx-quality-score",QualityScore)},3409:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SearchBar});var ls,ho,Dl,Fl,sc,uc,mc=le(7528),gc=le(4542),Ac=le(1198),Ec=le(4901),kc=le(5995),du=le(8591),_u=le(4011),Md=le(7761),Ld=le(3444),Nd=le(6627);class SearchBar extends gc.WF{constructor(){super(),this.reduceable=!1,this.reduced=!1,this.placeholder=gc.s6,this.size="md",this._icon="search",this._results=null,this["no-menu-closure"]=!1,this._throttler=null,delete this._lastSearch}connectedCallback(){super.connectedCallback(),this["no-menu-closure"]||(0,kc.listenForMenuClosure)(this,this.reset.bind(this))}attributeChangedCallback(vt,bt,le){super.attributeChangedCallback(vt,bt,le),"value"===vt&&([null,void 0,"","null"].includes(le)?this._icon="search":this._icon="empty")}_onIconClick(){["empty","warn"].includes(this._icon)&&this.reset(),this.reduceable&&"search"==this._icon&&(this.reduced=!this.reduced)}_onInputChange(vt){this.value=vt.target.value,this._throttledSearch()}_onResultClick(vt){this.dispatchEvent(new CustomEvent("result",{bubbles:!0,composed:!0,detail:vt})),this._results=null,this._throttler&&(clearTimeout(this._throttler),this._throttler=null),!this.reduceable&&vt?(this.value=null===vt||void 0===vt?void 0:vt.title,this._icon="empty"):(this.value="",this._icon="search",this.reduceable&&(this.reduced=!0))}_throttledSearch(){this._throttler&&(clearTimeout(this._throttler),delete this._throttler),this._throttler=setTimeout(this._search.bind(this),500)}_search(){this.value&&0!=this.value.length?this.searcher?(this._icon="loading",this._results=null,this.searcher(this.value).then((vt=>{if("loading"===this._icon)if(this._icon="empty",vt&&0!=vt.length)if(!0===vt)this._results=null;else{var bt;if(this._results=vt,!this["no-menu-closure"])null===(bt=this._parent)||void 0===bt||bt.dispatchEvent(new CustomEvent("menu-opened",{detail:{menu:this}}))}else this._results=[]})).catch((vt=>{console.error(vt),this._icon="warn"}))):console.warn("No search handler defined"):this.reset()}reset(){this._onResultClick(null)}render(){var vt,bt;const le={sb:!0,"sb-xxl":"xxl"===this.size,"sb-reduceable":this.reduceable,"sb-reduced":this.reduced};return(0,gc.qy)(ls||(ls=(0,mc.A)(["<div\n\t\t\tid=","\n\t\t\tclass=",'\n\t\t\tpart="container"\n\t\t>\n\t\t\t<slot name="pre" class=','></slot>\n\n\t\t\t<input\n\t\t\t\tid="','-input"\n\t\t\t\ttype="text"\n\t\t\t\tplaceholder=','\n\t\t\t\tautocomplete="off"\n\t\t\t\t@change=',"\n\t\t\t\t@keypress=","\n\t\t\t\t@paste=","\n\t\t\t\t@input=","\n\t\t\t\t.value=",'\n\t\t\t\tpart="input"\n\t\t\t/>\n\n\t\t\t<span\n\t\t\t\tclass="sb-icon"\n\t\t\t\t@click=',"\n\t\t\t>\n\t\t\t\t","\n\t\t\t\t","\n\t\t\t\t","\n\t\t\t\t","\n\t\t\t</span>\n\n\t\t\t","\n\t\t</div>"])),this.id,(0,Ac.H)(le),(0,Ac.H)({"sb-reduced":this.reduced}),this.id,this.placeholder,this._onInputChange.bind(this),this._onInputChange.bind(this),this._onInputChange.bind(this),this._onInputChange.bind(this),this.value||"",this._onIconClick.bind(this),"search"==this._icon?(0,kc.fa)(Md.$U):gc.s6,"loading"==this._icon?(0,kc.fa)(Ld.s4,{classes:["fa-spin"]}):gc.s6,"empty"==this._icon?(0,kc.fa)(Nd.faXmark):gc.s6,"warn"==this._icon?(0,kc.fa)(_u.lE):gc.s6,!this.reduced&&this._results?(0,gc.qy)(ho||(ho=(0,mc.A)(['\n\t\t\t\t<div class="sb-results">\n\t\t\t\t\t',"\n\n\t\t\t\t\t","\n\t\t\t\t</div>\n\t\t\t"])),0===this._results.length?(0,gc.qy)(Dl||(Dl=(0,mc.A)(['\n\t\t\t\t\t\t<div class="sb-empty">',"</div>\n\t\t\t\t\t"])),null===(vt=this._parent)||void 0===vt||null===(bt=vt._t)||void 0===bt?void 0:bt.pnx.search_empty):gc.s6,(0,Ec.T)(this._results,(vt=>(0,gc.qy)(Fl||(Fl=(0,mc.A)(['\n\t\t\t\t\t\t<div class="sb-result" @click=',">\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</div>\n\t\t\t\t\t"])),(()=>this._onResultClick(vt)),vt.title,vt.subtitle&&""!=vt.subtitle?(0,gc.qy)(sc||(sc=(0,mc.A)(["<br /><small>","</small>"])),vt.subtitle):gc.s6)))):gc.s6)}}SearchBar.styles=[du.Op,(0,gc.AH)(uc||(uc=(0,mc.A)(["\n\t\t/* Container */\n\t\t.sb {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: space-between;\n\t\t\tgap: 5px;\n\t\t\tborder: 1px solid var(--widget-border-div);\n\t\t\tborder-radius: 5px;\n\t\t\tbackground-color: var(--widget-bg);\n\t\t\tcolor: var(--widget-font);\n\t\t\theight: 30px;\n\t\t\tborder-radius: 20px;\n\t\t\tposition: relative;\n\t\t\tpadding: 0 0 0 10px;\n\t\t\twidth: fit-content;\n\t\t\tmax-width: 100%;\n\t\t\tbox-sizing: border-box;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\t\t.sb.sb-xxl {\n\t\t\theight: 40px;\n\t\t\tline-height: 40px;\n\t\t}\n\t\t.sb.sb-reduceable {\n\t\t\twidth: 360px;\n\t\t}\n\t\t.sb.sb-reduceable.sb-reduced {\n\t\t\twidth: fit-content;\n\t\t\tpadding: 0;\n\t\t\tgap: 0;\n\t\t}\n\n\t\t/* Text field */\n\t\t.sb input {\n\t\t\tbackground: none;\n\t\t\tborder: none !important;\n\t\t\toutline: none;\n\t\t\theight: 20px;\n\t\t\twidth: 100%;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\t\t.sb.sb-xxl input {\n\t\t\tfont-size: 1.1em;\n\t\t}\n\t\t.sb.sb-reduceable.sb-reduced input {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t/* Status icon */\n\t\t.sb-icon {\n\t\t\tcursor: pointer;\n\t\t\theight: 30px;\n\t\t\tline-height: 30px;\n\t\t\twidth: 30px;\n\t\t\tmin-width: 30px;\n\t\t\ttext-align: center;\n\t\t}\n\t\t.sb.sb-xxl .sb-icon {\n\t\t\theight: 40px;\n\t\t\tline-height: 40px;\n\t\t\twidth: 40px;\n\t\t\tmin-width: 40px;\n\t\t}\n\t\t.sb-icon svg {\n\t\t\tpointer-events: none;\n\t\t\twidth: 14px;\n\t\t\theight: 14px;\n\t\t}\n\n\t\t/* Search results */\n\t\t.sb-results {\n\t\t\tposition: absolute;\n\t\t\ttop: 35px;\n\t\t\tlist-style: none;\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tmax-width: calc(100% - 20px);\n\t\t\tborder: 1px solid var(--widget-border-div);\n\t\t\tborder-radius: 10px;\n\t\t\tbackground-color: var(--widget-bg);\n\t\t\tcolor: var(--widget-font);\n\t\t\tz-index: 130;\n\t\t\tfont-size: 1.05em;\n \t\t\tline-height: normal;\n\t\t\tfont-family: var(--font-family);\n\t\t}\n\t\t.sb.sb-xxl .sb-results {\n\t\t\ttop: 45px;\n\t\t}\n\t\t.sb-result,\n\t\t.sb-empty {\n\t\t\tdisplay: block;\n\t\t\tpadding: 5px 15px;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tcursor: pointer;\n\t\t\tborder-radius: 0;\n\t\t}\n\t\t.sb-result:hover {\n\t\t\tbackground-color: var(--widget-bg-hover);\n\t\t}\n\t\t.sb-result:first-child {\n\t\t\tborder-top-right-radius: 10px;\n\t\t\tborder-top-left-radius: 10px;\n\t\t\tpadding-top: 15px;\n\t\t}\n\t\t.sb-result:last-child {\n\t\t\tborder-bottom-right-radius: 10px;\n\t\t\tborder-bottom-left-radius: 10px;\n\t\t\tpadding-bottom: 15px;\n\t\t}\n\t"])))],SearchBar.properties={id:{type:String},placeholder:{type:String},reduceable:{type:Boolean,reflect:!0},reduced:{type:Boolean,reflect:!0},value:{type:String},size:{type:String},_icon:{state:!0},_results:{state:!0},searcher:{type:Function},"no-menu-closure":{type:Boolean}},customElements.define("pnx-search-bar",SearchBar)},8780:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsEditor});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(9039),uc=le(2283),mc=le(8591),gc=le(2614),Ac=le.n(gc);class SemanticsEditor extends Fl.WF{constructor(){super(),this.semantics=null,this._valid=!0,this._firstSemantics=null,this.rows=3}connectedCallback(){super.connectedCallback(),this._firstSemantics=null===this.semantics?[]:Ac().parse(Ac().stringify(this.semantics))}getDiff(){return(0,uc.computeDiffTags)(this._firstSemantics||[],this.semantics)}checkValidity(){return this._valid}reportValidity(){var vt;null===(vt=this.renderRoot.querySelector("textarea"))||void 0===vt||vt.reportValidity()}reset(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;this.semantics=null,this._valid=!0;const bt=this.renderRoot.querySelector("textarea");null===bt||void 0===bt||bt.setCustomValidity(""),null===bt||void 0===bt||bt.reportValidity(),this._firstSemantics=vt,this.semantics=vt}forceInput(){const vt=this.renderRoot.querySelector("textarea");this._onInput({target:vt}),this._onBlur({target:vt})}_onInput(vt){const bt=vt.target;try{this.semantics=(0,uc.parseSemanticsString)(bt.value)||[],this._valid=!0}catch(le){"Invalid tags"!==le.message&&console.error(le),this._valid=!1}}_onBlur(vt){const bt=vt.target.checkValidity();if(this._valid)vt.target.setCustomValidity(""),this.dispatchEvent(new CustomEvent("change",{detail:{semantics:this.semantics||[],delta:(0,uc.computeDiffTags)(this._firstSemantics||[],this.semantics)}}));else if(bt){var le;vt.target.setCustomValidity((null===(le=this._t)||void 0===le?void 0:le.pnx.semantics_editor_error)||"Invalid syntax"),vt.target.reportValidity()}}render(){var vt;return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<textarea\n\t\t\t\tpart="text"\n\t\t\t\tautocomplete="off"\n\t\t\t\tautocorrect="off"\n\t\t\t\tautocapitalize="off"\n\t\t\t\tspellcheck="false"\n\t\t\t\tplaceholder=',"\n\t\t\t\t@input=","\n \t\t\t\t@blur=","\n\t\t\t\trows=","\n\t\t\t\t.value=","\n\t\t\t></textarea>\n\t\t"])),(null===(vt=this._t)||void 0===vt?void 0:vt.pnx.semantics_editor_example)||"key1=value1\nprefix|key2=value2",this._onInput,this._onBlur,this.rows,(0,uc.semanticsToString)(this.semantics))}}SemanticsEditor.styles=[mc.PC,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\ttextarea:invalid {\n\t\t\tborder: 2px solid var(--red);\n\t\t\tbackground-color:var(--beige);\n\t\t}\n\t"])))],SemanticsEditor.properties={semantics:{converter:sc.A.GetJSONConverter(),reflect:!0},rows:{type:Number},_valid:{state:!0},_t:{converter:sc.A.GetJSONConverter()},_firstSemantics:{state:!0}},customElements.define("pnx-semantics-editor",SemanticsEditor)},2373:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsTable});var ls,ho,Dl,Fl,sc,uc,mc,gc=le(7528),Ac=le(4542),Ec=le(8591),kc=le(2283);class SemanticsTable extends Ac.WF{render(){if(!this.source)return Ac.s6;const vt=(0,kc.groupByPrefix)(this.source.semantics);return(0,Ac.qy)(ls||(ls=(0,gc.A)(["<table>\n\t\t\t<thead>\n\t\t\t\t<tr><th>","</th><th>","</th></tr>\n\t\t\t</thead>\n\t\t\t<tbody>\n\t\t\t\t","\n\t\t\t</tbody>\n\t\t</table>"])),this._t.pnx.semantics_key,this._t.pnx.semantics_value,vt.map((vt=>vt.tags.map((bt=>(0,Ac.qy)(ho||(ho=(0,gc.A)(["\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t"])),""!=vt.prefix?vt.logo?(0,Ac.qy)(Dl||(Dl=(0,gc.A)(["<img src=",' class="prefix-logo" alt='," title="," />"])),vt.logo,vt.prefix,vt.title):(0,Ac.qy)(Fl||(Fl=(0,gc.A)(["<small>(",")</small>"])),vt.prefix):Ac.s6,vt.key_transform?vt.key_transform(bt,this._t):bt.key,vt.value_transform?vt.value_transform(bt,this._t):bt.value,bt.qualifiers?(0,Ac.qy)(sc||(sc=(0,gc.A)(['<div class="qualifiers">\n\t\t\t\t\t\t\t\t<b>',"</b>\n\t\t\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</div>"])),this._t.pnx.semantics_qualifiers,bt.qualifiers.map((vt=>(0,Ac.qy)(uc||(uc=(0,gc.A)(["<li>"," = ","</li>"])),vt.subkey,vt.value)))):Ac.s6))))))}}SemanticsTable.styles=[Ec.tp,(0,Ac.AH)(mc||(mc=(0,gc.A)(["\n\t\t:host { display: block; }\n\t\tth:first-child, td:first-child { width: 40%; }\n\t\ttd { vertical-align: top; }\n\n\t\ttd small { color: var(--grey-semi-dark); }\n\t\ttd a small { color: unset; }\n\t\t.qualifiers { margin-top: 5px; }\n\t\t.qualifiers > b { margin: 8px 0; }\n\t\t.qualifiers ul {\n\t\t\tlist-style: none;\n\t\t\tmargin: 0px 0px 0px 15px;\n\t\t\tpadding: 0;\n\t\t}\n\n\t\timg.prefix-logo {\n\t\t\tmax-width: 15px;\n\t\t\tmax-height: 15px;\n\t\t\taspect-ratio: 1;\n\t\t\tvertical-align: middle;\n\t\t}\n\t"])))],SemanticsTable.properties={source:{type:Object}},customElements.define("pnx-semantics-table",SemanticsTable)},1578:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Switch});var ls,ho,Dl=le(7528),Fl=le(4542);class Switch extends Fl.WF{constructor(){super(),this.checked=!1,this.disabled=!1,this.name="pnx-switch-1"}_onChange(vt){this.checked=vt.target.checked,this.dispatchEvent(new Event("change"))}render(){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<label class="toggle" for=','>\n\t\t\t\t<input\n\t\t\t\t\tclass="toggle-checkbox"\n\t\t\t\t\ttype="checkbox"\n\t\t\t\t\tid=',"\n\t\t\t\t\tname=","\n\t\t\t\t\t.checked=","\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@change=",'\n\t\t\t\t/>\n\t\t\t\t<div class="toggle-switch"></div>\n\t\t\t\t<span class="toggle-label">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</span>\n\t\t\t</label>\n\t\t'])),this.name,this.name,this.name,this.checked,this.disabled,this._onChange)}}Switch.styles=(0,Fl.AH)(ho||(ho=(0,Dl.A)(['\n\t\t.toggle {\n\t\t\tcursor: pointer;\n\t\t\tdisplay: inline-block;\n\t\t}\n\n\t\t.toggle-switch {\n\t\t\tdisplay: inline-block;\n\t\t\tbackground: #ccc;\n\t\t\tborder-radius: 11px;\n\t\t\twidth: 42px;\n\t\t\theight: 22px;\n\t\t\tposition: relative;\n\t\t\tvertical-align: middle;\n\t\t\ttransition: background 0.25s;\n\t\t}\n\t\t.toggle-switch:before, .toggle-switch:after {\n\t\t\tcontent: "";\n\t\t}\n\t\t.toggle-switch:before {\n\t\t\tdisplay: block;\n\t\t\tbackground: linear-gradient(to bottom, #fff 0%, #eee 100%);\n\t\t\tborder-radius: 50%;\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);\n\t\t\twidth: 16px;\n\t\t\theight: 16px;\n\t\t\tposition: absolute;\n\t\t\ttop: 3px;\n\t\t\tleft: 3px;\n\t\t\ttransition: left 0.25s;\n\t\t}\n\t\t.toggle:hover .toggle-switch:before {\n\t\t\tbackground: linear-gradient(to bottom, #fff 0%, #fff 100%);\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5);\n\t\t}\n\t\t.toggle-checkbox:checked + .toggle-switch {\n\t\t\tbackground: var(--widget-bg-active);\n\t\t}\n\t\t.toggle-checkbox:disabled + .toggle-switch:before,\n\t\t.toggle-checkbox:disabled:hover + .toggle-switch:before {\n\t\t\tbackground: var(--grey-pale);\n\t\t\tbox-shadow: none;\n\t\t}\n\t\t.toggle-checkbox:disabled + .toggle-switch {\n\t\t\tbackground: var(--grey);\n\t\t\tbox-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);\n\t\t}\n\t\t.toggle-checkbox:checked + .toggle-switch:before {\n\t\t\tleft: 23px;\n\t\t}\n\n\t\t.toggle-checkbox {\n\t\t\tposition: absolute;\n\t\t\tvisibility: hidden;\n\t\t}\n\n\t\t.toggle-label {\n\t\t\tmargin-left: 5px;\n\t\t\tposition: relative;\n\t\t\ttop: 2px;\n\t\t}\n\t']))),Switch.properties={checked:{type:Boolean,reflect:!0},disabled:{type:Boolean,reflect:!0},name:{type:String}},customElements.define("pnx-switch",Switch)},5202:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>TogglableGroup});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(8591),uc=le(5995),mc=le(1198);class TogglableGroup extends Fl.WF{constructor(){super(),this._opened=!1}open(){var vt;this._opened=!0,null===(vt=this._parent)||void 0===vt||vt.dispatchEvent(new CustomEvent("menu-opened",{detail:{menu:this}})),this.adjustMenuPosition(this._btn),this._chevron&&(this._chevron.style.rotate="180deg")}close(){this._opened=!1,this._chevron&&(this._chevron.style.rotate="")}connectedCallback(){super.connectedCallback(),(0,uc.listenForMenuClosure)(this,this.close.bind(this))}handleButtonSlotChange(vt){this._btn=vt.target.assignedNodes().pop(),this._btn&&(this._chevron=this._btn.querySelector("svg.fa-chevron-down"),this._chevron&&(this._chevron.style.transition="rotate 0.2s",this._chevron.style.rotate=this._opened?"180deg":""),this._btn.addEventListener("click",(()=>{this._opened?this.close():this.open()})))}adjustMenuPosition(vt){const bt=this.shadowRoot.querySelector("div[part='menu']");bt.style.top=null,bt.style.bottom=null,bt.style.right=null,bt.style.left=null,bt.style.overflowY=null,bt.style.marginTop=null;const le=vt.getBoundingClientRect();let ls=bt.getBoundingClientRect();const ho=ls.right<=window.innerWidth-10,Dl=ls.bottom<=window.innerHeight-10;ho&&Dl?bt.style.top="".concat(le.bottom+5,"px"):ho||Dl?Dl?ho||(bt.style.marginTop="".concat(5,"px"),bt.style.right="".concat(window.innerWidth-le.right,"px")):(bt.style.bottom="".concat(10,"px"),bt.style.top="".concat(le.bottom+5,"px"),bt.style.overflowY="auto"):(bt.style.right="".concat(window.innerWidth-le.left+5,"px"),bt.style.bottom="".concat(window.innerHeight-le.bottom,"px"),ls=bt.getBoundingClientRect(),ls.top-10<0&&(bt.style.bottom="".concat(10,"px"),bt.style.top="".concat(le.top,"px"),bt.style.overflowY="auto"))}render(){const vt={"pnx-panel":!0,"pnx-panel-fixed":!0,"pnx-hidden":!this._opened,"pnx-padded":"false"!==this.padded};return(0,Fl.qy)(ls||(ls=(0,Dl.A)(['<div class="container" @click=','>\n\t\t\t<slot name="button" @slotchange=',"></slot>\n\t\t\t<div class=",' part="menu">\n\t\t\t\t<slot></slot>\n\t\t\t</div>\n\t\t</div>'])),(vt=>vt.stopPropagation()),this.handleButtonSlotChange,(0,mc.H)(vt))}}TogglableGroup.styles=[sc.nd,(0,Fl.AH)(ho||(ho=(0,Dl.A)(["\n\t\tdiv.container {\n\t\t\tposition: relative;\n\t\t\theight: 100%;\n\t\t}\n\n\t\t.pnx-panel { z-index: 130; }\n\t\t.pnx-panel-fixed { position: fixed; }\n\t"])))],TogglableGroup.properties={_opened:{state:!0},padded:{type:String}},customElements.define("pnx-togglable-group",TogglableGroup)},7091:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{AnnotationsSwitch:()=>ls.A,Button:()=>Dl.A,ButtonGroup:()=>ho.A,CopyButton:()=>Fl.A,Grade:()=>sc.A,GradeFilter:()=>uc.A,IconSwitch:()=>mc.A,LinkButton:()=>gc.A,ListGroup:()=>Ac.A,ListItem:()=>Ec.A,Loader:()=>kc.A,Map:()=>du.A,MapMore:()=>_u.A,Photo:()=>Md.Ay,Popup:()=>Ld.A,ProgressBar:()=>Nd.A,QualityScore:()=>Rd.A,SearchBar:()=>Od.A,SemanticsEditor:()=>jd.A,SemanticsTable:()=>Ud.A,Switch:()=>Gd.A,TogglableGroup:()=>qd.A,widgets:()=>Hd});var ls=le(6254),ho=le(7679),Dl=le(4450),Fl=le(1903),sc=le(5051),uc=le(9041),mc=le(259),gc=le(438),Ac=le(5271),Ec=le(5525),kc=le(3109),du=le(5642),_u=le(2771),Md=le(9048),Ld=le(4374),Nd=le(4364),Rd=le(2675),Od=le(3409),jd=le(8780),Ud=le(2373),Gd=le(1578),qd=le(5202),Hd=le(222)},5114:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>CopyCoordinates});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(7343),mc=le(5995),gc=le(2593),Ac=le(8591);class CopyCoordinates extends sc.WF{render(){var vt,bt;const le=(0,uc.degToDms)(this.gps[0]),Dl=le.d<0?"".concat(Math.abs(le.d),"\xb0").concat(le.m,"'").concat(le.s,'"W'):"".concat(le.d,"\xb0").concat(le.m,"'").concat(le.s,'"E'),Ac=(0,uc.degToDms)(this.gps[1]),Ec=Ac.d<0?"".concat(Math.abs(Ac.d),"\xb0").concat(Ac.m,"'").concat(Ac.s,'"S'):"".concat(Ac.d,"\xb0").concat(Ac.m,"'").concat(Ac.s,'"N'),kc={ddeclatlon:"".concat(this.gps[1].toFixed(5),", ").concat(this.gps[0].toFixed(5)),ddeclonlat:"".concat(this.gps[0].toFixed(5),", ").concat(this.gps[1].toFixed(5)),ddmslonlat:"".concat(Dl,", ").concat(Ec),ddmslatlon:"".concat(Ec,", ").concat(Dl)};return(0,sc.qy)(ls||(ls=(0,Fl.A)(['<pnx-button-group style="display: inline-block; vertical-align: baseline" dir="row">\n\t\t\t<pnx-copy-button\n\t\t\t\tsize="sm"\n\t\t\t\ttext=',"\n\t\t\t\ttitle=",'\n\t\t\t></pnx-copy-button>\n\n\t\t\t<pnx-togglable-group padded="false" ._parent=','>\n\t\t\t\t<pnx-button\n\t\t\t\t\tsize="sm"\n\t\t\t\t\tslot="button"\n\t\t\t\t\ttitle=',"\n\t\t\t\t>","</pnx-button>\n\t\t\t\t<pnx-list-group>\n\t\t\t\t\t","\n\t\t\t\t</pnx-list-group>\n\t\t\t</pnx-togglable-group>\n\t\t</pnx-button-group>"])),kc.ddeclonlat,null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.metadata_location_copy.replace("{v}",kc.ddeclonlat),this._parent,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.metadata_location_copy_more,(0,mc.fa)(gc.Jt),Object.values(kc).map((vt=>{var bt;return(0,sc.qy)(ho||(ho=(0,Fl.A)(["\n\t\t\t\t\t\t<pnx-copy-button unstyled text="," ._t=",">\n\t\t\t\t\t\t\t","\n\t\t\t\t\t\t</pnx-copy-button>\n\t\t\t\t\t"])),vt,this._parent._t,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.metadata_location_copy.replace("{v}",vt))})))}}CopyCoordinates.styles=[Ac.kq,(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\tpnx-togglable-group::part(menu) {\n\t\t\tborder-radius: 5px;\n\t\t\tmin-width: unset;\n\t\t}\n\t"])))],CopyCoordinates.properties={gps:{type:Array}},customElements.define("pnx-copy-coordinates",CopyCoordinates)},2603:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>GeoSearch});var ls,ho=le(7528),Dl=le(927),Fl=le.n(Dl),sc=le(4542),uc=le(3606),mc=le(5995);le(3630);const gc={ban:uc.forwardGeocodingBAN,standard:uc.forwardGeocodingStandard,nominatim:uc.forwardGeocodingNominatim};class GeoSearch extends sc.WF{constructor(){super(),this.geocoder="nominatim",this._geolocateCtrl=new(Fl().GeolocateControl)({positionOptions:{enableHighAccuracy:!0,timeout:6e4,maximumAge:3e5},showAccuracyCircle:!0,showUserLocation:!0,trackUserLocation:!0})}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._geocoderEngine=gc[this.geocoder]||(vt=>gc.standard(vt,this.geocoder)),(0,mc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.onceMapReady)||void 0===bt?void 0:bt.call(vt).then((()=>{this._geolocate||(this._geolocate=this._geolocateCtrl.onAdd(this._parent.map),this._geolocate.setAttribute("slot","pre"))}))}))}_onInput(vt){const bt=vt.match(/([-+]?\d{1,2}\.\d+),\s*([-+]?\d{1,3}\.\d+)/),le=vt.match(/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/);if(bt){const vt=parseFloat(bt[1]),le=parseFloat(bt[2]);return this._parent.map.jumpTo({center:[le,vt],zoom:16}),Promise.resolve(!0)}return le?(this._parent.select(null,vt),Promise.resolve(!0)):this._geocoderEngine({query:vt,limit:5,proximity:this._parent.map.getCenter().lat+","+this._parent.map.getCenter().lng}).then((vt=>vt=vt.features.map((vt=>({title:vt.place_name.split(",")[0],subtitle:vt.place_name.split(",").slice(1).join(", "),data:vt})))))}_onSelect(vt){const bt=vt.detail;var le,ls;bt&&(bt.data.bounds?null===(le=this._parent)||void 0===le||le.map.fitBounds(bt.data.bounds,{animate:!1}):null===(ls=this._parent)||void 0===ls||ls.map.jumpTo({center:bt.data.center,zoom:bt.data.zoom||13}))}render(){var vt,bt;const le=(null===(vt=this._parent)||void 0===vt?void 0:vt.isWidthSmall())||!1;return(0,sc.qy)(ls||(ls=(0,ho.A)(['\n\t\t\t<pnx-search-bar\n\t\t\t\tid="pnx-widget-search-bar"\n\t\t\t\tplaceholder=',"\n\t\t\t\t._parent=","\n\t\t\t\t.searcher=","\n\t\t\t\t.reduceable=","\n\t\t\t\t.reduced=",'\n\t\t\t\tsize="xxl"\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t\t@result=',"\n\t\t\t>\n\t\t\t\t","\n\t\t\t</pnx-search-bar>\n\t\t"])),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.search_address,this._parent,this._onInput.bind(this),le,le,this._onSelect.bind(this),this._geolocate)}}GeoSearch.properties={geocoder:{type:String},_geolocate:{state:!0}},customElements.define("pnx-widget-geosearch",GeoSearch)},4385:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Legend});var ls,ho,Dl,Fl,sc=le(7528),uc=le(4542),mc=le(8591),gc=le(5995),Ac=le(6668),Ec=le(5940),kc=le(1198),du=le(7208);class Legend extends uc.WF{constructor(){super(),this.light=!1}connectedCallback(){super.connectedCallback(),(0,gc.onceParentAvailable)(this).then((()=>this.requestUpdate()))}render(){var vt,bt,le,Fl;const mc={"pnx-panel":!0,"pnx-padded":"map"==this.focus,"pnx-legend-light":this.light};return(0,uc.qy)(ls||(ls=(0,sc.A)(["<div class=",' part="panel">\n\t\t\t<div\n\t\t\t\tclass="presentation"\n\t\t\t\tstyle=','\n\t\t\t>\n\t\t\t\t<img class="logo" src=',' alt="" />\n\n\t\t\t\t',"\n\t\t\t</div>\n\t\t\t<pnx-picture-legend\n\t\t\t\t._parent=","\n\t\t\t\tstyle=","\n\t\t\t\tcollapsable\n\t\t\t\tlight=",'\n\t\t\t>\n\t\t\t\t<slot slot="editors" name="editors">\n\t\t\t\t\t<pnx-widget-osmeditors ._parent='," />\n\t\t\t\t</slot>\n\t\t\t</pnx-picture-legend>\n\t\t\t<pnx-map-legend\n\t\t\t\t._parent=","\n\t\t\t\tstyle=","\n\t\t\t\tlight=","\n\t\t\t></pnx-map-legend>\n\t\t</div>"])),(0,kc.H)(mc),!this.light&&"map"!=this.focus&&this.picture?"display: none":"",Ec,this.light?(0,uc.qy)(ho||(ho=(0,sc.A)(["\n\t\t\t\t\t&copy; <a\n\t\t\t\t\t\thref=","\n\t\t\t\t\t\ttitle=",'\n\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t>',"</a> |\n\t\t\t\t"])),(0,du.PanoramaxWebsiteURL)(),null===(vt=this._parent)||void 0===vt?void 0:vt._t.map.more_panoramax,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.panoramax):(0,uc.qy)(Dl||(Dl=(0,sc.A)(["\n\t\t\t\t\t<div>\n\t\t\t\t\t\t","\n\t\t\t\t\t\t<pnx-link-button\n\t\t\t\t\t\t\ttitle=",'\n\t\t\t\t\t\t\tkind="superinline"\n\t\t\t\t\t\t\thref=','\n\t\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t\t\tsize="sm"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t',"\n\t\t\t\t\t\t</pnx-link-button>\n\t\t\t\t\t</div>\n\t\t\t\t"])),null===(le=this._parent)||void 0===le?void 0:le._t.pnx.whats_panoramax,null===(Fl=this._parent)||void 0===Fl?void 0:Fl._t.map.more_panoramax,(0,du.PanoramaxWebsiteURL)(),(0,gc.fa)(Ac.iW)),this._parent,"map"==this.focus?"display: none":"",this.light||uc.s6,this._parent,this._parent,"map"!=this.focus?"display: none":"",this.light||uc.s6)}}Legend.styles=[mc.nd,(0,uc.AH)(Fl||(Fl=(0,sc.A)(['\n\t\t:host {\n\t\t\tpointer-events: none;\n\t\t}\n\t\t.pnx-panel[part="panel"] {\n\t\t\tborder-radius: 10px;\n\t\t\tposition: relative;\n\t\t\tmax-width: 450px;\n\t\t\tz-index: 121; /* To appear above mini component */\n\t\t\tmin-width: unset;\n\t\t\tpointer-events: auto;\n\t\t}\n\t\t.pnx-panel[part="panel"].pnx-padded {\n\t\t\tpadding: 10px;\n\t\t\twidth: 250px;\n\t\t}\n\t\t.presentation {\n\t\t\tfont-size: 0.85em;\n\t\t\tline-height: 1em;\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\talign-items: center;\n\t\t}\n\t\t.logo {\n\t\t\twidth: 45px;\n\t\t}\n\t\tpnx-map-legend {\n\t\t\tdisplay: block;\n\t\t\tmargin-top: 5px;\n\t\t}\n\n\t\t/* Lighter/smaller version */\n\t\t.pnx-panel[part="panel"].pnx-legend-light {\n\t\t\tdisplay: flex;\n\t\t\tgap: 3px;\n\t\t\tpadding: 3px 8px 3px 3px;\n\t\t\twidth: unset;\n\t\t\tmin-width: unset;\n\t\t\talign-items: center;\n\t\t\tfont-size: 10px;\n\t\t\tmargin-right: -10px;\n\t\t\tmargin-bottom: -10px;\n\t\t\tborder-radius: 0;\n\t\t\tborder-top-left-radius: 5px;\n\t\t\tborder-right: none;\n \t\t\tborder-bottom: none;\n\t\t}\n\t\t.pnx-legend-light a,\n\t\t.pnx-legend-light .presentation {\n\t\t\tfont-size: 10px;\n\t\t}\n\t\t.pnx-legend-light .logo {\n\t\t\twidth: 15px;\n\t\t}\n\n\t\t.pnx-legend-light pnx-map-legend {\n\t\t\twidth: max-content;\n\t\t\tmargin-top: unset;\n\t\t\tfont-size: 10px;\n\t\t}\n\t'])))],Legend.properties={focus:{type:String},picture:{type:String},light:{type:Boolean}},customElements.define("pnx-widget-legend",Legend)},6996:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>LevelSelect});var ls,ho,Dl,Fl,sc,uc,mc=le(7528),gc=le(4542),Ac=le(5995),Ec=le(5195),kc=le(4420),du=le(7261),_u=le(3624);le(1870),le(1811);class LevelSelect extends gc.WF{createRenderRoot(){return this}connectedCallback(){var vt,bt;super.connectedCallback(),(0,Ac.onceParentAvailable)(this).then(null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt)).then((()=>{this._parent.map.indoorEqual.on("levelchange",(()=>this.requestUpdate())),this._parent.map.indoorEqual.on("levelschange",(()=>this.requestUpdate()))}))}updated(vt){super.updated(vt),this._expanded&&(null!==vt&&void 0!==vt&&vt.has("_expanded")?this._scrollToCurrentLevel(!1,"instant"):this._scrollToCurrentLevel(!0,"smooth"))}_scrollToCurrentLevel(vt,bt){const le=this.renderRoot.querySelector(".pnx-level-active");setTimeout((()=>null===le||void 0===le?void 0:le.scrollIntoView({behavior:bt,block:"center",container:"nearest"})),vt?0:50)}render(){var vt,bt,le,Md,Ld,Nd,Rd,Od;const jd=this._parent.map.indoorEqual;if(jd.level===Ec.DISABLED_LEVEL||0===jd.levels.length)return gc.s6;const Ud=jd.levels.findIndex((vt=>vt==jd.level)),Gd=Ud>0?Ud-1:null,qd=null!==Gd?jd.levels[Gd]:null,Hd=Ud<jd.levels.length-1?Ud+1:null,Wd=null!==Hd?jd.levels[Hd]:null;return(0,gc.qy)(ls||(ls=(0,mc.A)(['\n\t\t\t<pnx-button-group\n\t\t\t\tdir="column"\n\t\t\t\tsize="xl"\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t>\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\t@click=',"\n\t\t\t\t\t.disabled=",'\n\t\t\t\t\tclass="pnx-level-minimal"\n\t\t\t\t\ttitle=',"\n\t\t\t\t>","</pnx-button>\n\n\t\t\t\t",'\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\t@click=',"\n\t\t\t\t\t.disabled=",'\n\t\t\t\t\tclass="pnx-level-minimal"\n\t\t\t\t\ttitle=',"\n\t\t\t\t>","</pnx-button>\n\n\t\t\t\t","\n\t\t\t</pnx-button-group>\n\t\t"])),(()=>jd.setLevel(qd)),null===qd,null===(vt=this._parent)||void 0===vt||null===(bt=vt._t)||void 0===bt?void 0:bt.pnx.indoor_selector_levelup,(0,Ac.fa)(kc.S$),this._expanded?(0,gc.qy)(ho||(ho=(0,mc.A)(['\n\t\t\t\t\t<pnx-button-group\n\t\t\t\t\t\tdir="column"\n\t\t\t\t\t\tsize="xl"\n\t\t\t\t\t\tclass="pnx-print-hidden pnx-level-scroller"\n\t\t\t\t\t>\n\t\t\t\t\t\t',"\n\t\t\t\t\t</pnx-button-group>\n\t\t\t\t"])),jd.levels.map((vt=>(0,gc.qy)(Dl||(Dl=(0,mc.A)(['\n\t\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\t\tkind="superflat"\n\t\t\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\t\t\tclass=","\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t","\n\t\t\t\t\t\t\t</pnx-button>\n\t\t\t\t\t\t"])),(()=>jd.setLevel(vt)),vt.length>2?"pnx-level-long":null,jd.level==vt?(0,gc.qy)(Fl||(Fl=(0,mc.A)(['<span class="pnx-level-active">',"</span>"])),vt):vt)))):(0,gc.qy)(sc||(sc=(0,mc.A)(['\n\t\t\t\t\t<pnx-button\n\t\t\t\t\t\tkind="superflat"\n\t\t\t\t\t\tclass="pnx-level-minimal"\n\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>","</pnx-button>\n\t\t\t\t"])),null===(le=this._parent)||void 0===le||null===(Md=le._t)||void 0===Md?void 0:Md.pnx.indoor_selector_expand,jd.levels.length>1?()=>this._expanded=!0:null,jd.level),(()=>jd.setLevel(Wd)),null===Wd,null===(Ld=this._parent)||void 0===Ld||null===(Nd=Ld._t)||void 0===Nd?void 0:Nd.pnx.indoor_selector_leveldown,(0,Ac.fa)(du.xB),this._expanded?(0,gc.qy)(uc||(uc=(0,mc.A)(['\n\t\t\t\t\t<pnx-button\n\t\t\t\t\t\tkind="flat"\n\t\t\t\t\t\tclass="pnx-level-shrink"\n\t\t\t\t\t\t@click=',"\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t>","</pnx-button>\n\t\t\t\t"])),(()=>this._expanded=!1),null===(Rd=this._parent)||void 0===Rd||null===(Od=Rd._t)||void 0===Od?void 0:Od.pnx.indoor_selector_shrink,(0,Ac.fa)(_u.GR)):gc.s6)}}LevelSelect.properties={_expanded:{state:!0}},customElements.define("pnx-level-select",LevelSelect)},4529:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapFiltersButton});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(1904),mc=le(2593),gc=le(6627),Ac=le(8591);class MapFiltersButton extends Fl.WF{constructor(){super(),this["user-search"]=!1,this["quality-score"]=!1,this["no-date"]=!1,this["no-picture-type"]=!1,this["no-gps"]=!1,this["no-source"]=!1,this._active=!1}connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.onceMapReady)||void 0===bt?void 0:bt.call(vt).then((()=>{this._active=this._isActive(),this._parent.mapStyleComposer.addEventListener("filters-changed",(()=>this._active=this._isActive())),this._parent.mapStyleComposer.addEventListener("panoramax-changed",(()=>this._active=this._isActive()))}))}))}_isActive(){return Object.entries(this._parent.mapStyleComposer.panoramaxFilters).filter((vt=>{let[bt,le]=vt;return bt&&le&&!["featuresRestrictions","theme"].includes(bt)})).length>0||this._parent.mapStyleComposer.isPanoramaxEndpointSingleUser()}render(){var vt,bt;const le=null===(vt=this._parent)||void 0===vt?void 0:vt.isWidthSmall(),Ac=(0,sc.fa)(gc.faXmark,{styles:{"pointer-events":"auto"}});return Ac.addEventListener("click",(vt=>{vt.stopPropagation(),this.shadowRoot.querySelector("pnx-map-filters-menu")._onReset(),this.shadowRoot.querySelector("#pnx-widget-filter")._opened=!1})),(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-togglable-group\n\t\t\t\tid="pnx-widget-filter"\n\t\t\t\tpadded="false"\n\t\t\t\tclass="pnx-only-map pnx-print-hidden"\n\t\t\t\t._parent=','\n\t\t\t>\n\t\t\t\t<pnx-button kind="flat" size="xl" slot="button">\n\t\t\t\t\t',"\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t\t",'\n\t\t\t\t</pnx-button>\n\t\t\t\t<pnx-map-filters-menu\n\t\t\t\t\tid="pnx-map-filters-menu"\n\t\t\t\t\t._parent=',"\n\t\t\t\t\tuser-search=","\n\t\t\t\t\tquality-score=","\n\t\t\t\t\t.no-date=","\n\t\t\t\t\t.no-picture-type=","\n\t\t\t\t\t.no-gps=","\n\t\t\t\t\t.no-source=","\n\t\t\t\t></pnx-map-filters-menu>\n\t\t\t</pnx-togglable-group>\n\t\t"])),this._parent,(0,sc.fa)(uc._$),this._active?(0,Fl.qy)(ho||(ho=(0,Dl.A)(['<span class="pnx-active-icon"></span>']))):Fl.s6,le?Fl.s6:null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.filters,le?Fl.s6:this._active?Ac:(0,sc.fa)(mc.Jt),this._parent,this["user-search"],this["quality-score"],this["no-date"],this["no-picture-type"],this["no-gps"],this["no-source"])}}MapFiltersButton.styles=[Ac.s0],MapFiltersButton.properties={"quality-score":{type:Boolean},"user-search":{type:Boolean},"no-date":{type:Boolean},"no-picture-type":{type:Boolean},"no-gps":{type:Boolean},"no-source":{type:Boolean},_active:{state:!0}},customElements.define("pnx-widget-mapfilters",MapFiltersButton)},1614:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapLayersButton});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(4220),mc=le(2593),gc=le(6627),Ac=le(8591);class MapLayersButton extends Fl.WF{constructor(){super(),this._active=!1}connectedCallback(){super.connectedCallback();const vt=[void 0,null,"","default"];(0,sc.onceParentAvailable)(this).then((()=>{var bt,le;return null===(bt=this._parent)||void 0===bt||null===(le=bt.onceMapReady)||void 0===le?void 0:le.call(bt).then((()=>{this._active=!vt.includes(this._parent.mapStyleComposer.panoramaxTheme),this._parent.mapStyleComposer.addEventListener("theme-changed",(bt=>{this._active=!vt.includes(bt.detail.theme)}))}))}))}render(){var vt,bt;const le=null===(vt=this._parent)||void 0===vt?void 0:vt.isWidthSmall(),Ac=(0,sc.fa)(gc.faXmark,{styles:{"pointer-events":"auto"}});return Ac.addEventListener("click",(vt=>{vt.stopPropagation();const bt=this.shadowRoot.querySelector("pnx-map-layers-menu");bt.shadowRoot.querySelector("#pnx-map-theme").value="default",bt._onThemeSelect({target:{value:"default"}}),this.shadowRoot.querySelector("#pnx-widget-map-layers")._opened=!1})),(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-togglable-group\n\t\t\t\tid="pnx-widget-map-layers"\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t\t._parent=','\n\t\t\t>\n\t\t\t\t<pnx-button kind="flat" size="xl" slot="button">\n\t\t\t\t\t',"\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t\t",'\n\t\t\t\t</pnx-button>\n\t\t\t\t<pnx-map-layers-menu\n\t\t\t\t\tid="pnx-map-layers-menu"\n\t\t\t\t\t._parent=',"\n\t\t\t\t></pnx-map-layers-menu>\n\t\t\t</pnx-togglable-group>\n\t\t"])),this._parent,(0,sc.fa)(uc.qI),this._active?(0,Fl.qy)(ho||(ho=(0,Dl.A)(['<span class="pnx-active-icon"></span>']))):Fl.s6,le?Fl.s6:null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.layers,le?Fl.s6:this._active?Ac:(0,sc.fa)(mc.Jt),this._parent)}}MapLayersButton.styles=[Ac.s0],MapLayersButton.properties={_active:{state:!0}},customElements.define("pnx-widget-maplayers",MapLayersButton)},5789:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>OSMEditors});var ls,ho,Dl,Fl=le(7528),sc=le(4542),uc=le(5995),mc=le(7343),gc=le(7208),Ac=le(3520),Ec=le(6787),kc=le(7704);const du="http://127.0.0.1:8111";class OSMEditors extends sc.WF{constructor(){super(),this._josm=!1}connectedCallback(){super.connectedCallback(),(0,uc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._parent.onceFirstPicLoaded().then(this._onPictureLoad.bind(this)),this._parent.psv.addEventListener("picture-loaded",this._onPictureLoad.bind(this))}))}_onPictureLoad(){var vt,bt;this._pic=null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getPictureMetadata()}_toggleJOSMLive(){var vt,bt,le,ls,ho,Dl;(this._josm=!this._josm,this._josm)?fetch(du+"/version").then((()=>{var vt,bt,le,ls,ho,Dl,Fl,sc,uc;const gc=(0,mc.josmBboxParameters)(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt||null===(le=bt.getPictureMetadata)||void 0===le?void 0:le.call(bt));if(gc){const vt="".concat(du,"/load_and_zoom?").concat(gc);fetch(vt).catch((vt=>{console.warn(vt),this._toggleJOSMLive()}))}this._josmListener=()=>{var vt,bt,le;const ls=(0,mc.josmBboxParameters)(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt||null===(le=bt.getPictureMetadata)||void 0===le?void 0:le.call(bt));if(ls){const vt="".concat(du,"/zoom?").concat(ls);fetch(vt).catch((vt=>{console.warn(vt),this._toggleJOSMLive()}))}},null===(ls=this._parent)||void 0===ls||null===(ho=ls.psv)||void 0===ho||null===(Dl=ho.addEventListener)||void 0===Dl||Dl.call(ho,"picture-loaded",this._josmListener),null===(Fl=this._parent)||void 0===Fl||null===(sc=Fl.psv)||void 0===sc||null===(uc=sc.addEventListener)||void 0===uc||uc.call(sc,"picture-loading",this._josmListener)})).catch((vt=>{var bt;console.warn(vt),alert(null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.error_josm),this._toggleJOSMLive()})):this._josmListener&&(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt||null===(le=bt.removeEventListener)||void 0===le||le.call(bt,"picture-loading",this._josmListener),null===(ls=this._parent)||void 0===ls||null===(ho=ls.psv)||void 0===ho||null===(Dl=ho.removeEventListener)||void 0===Dl||Dl.call(ho,"picture-loaded",this._josmListener),delete this._josmListener)}render(){var vt,bt;if(!this._pic)return sc.s6;if(null!==(vt=this._parent)&&void 0!==vt&&vt.isWidthSmall())return(0,sc.qy)(ls||(ls=(0,Fl.A)(['\n\t\t\t\t<pnx-link-button\n\t\t\t\t\tsize="sm"\n\t\t\t\t\thref="geo:',",",';u=3"\n\t\t\t\t>\n\t\t\t\t\t'," ","\n\t\t\t\t</pnx-link-button>\n\t\t\t"])),this._pic.gps[1],this._pic.gps[0],(0,uc.fa)(kc.A),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.geo_uri);{var le,Dl,mc,du;const vt={map:"19/".concat(this._pic.gps[1],"/").concat(this._pic.gps[0]),source:"Panoramax",photo_overlay:"panoramax",photo:"panoramax/".concat(this._pic.id)},bt=vt&&"".concat((0,gc.IdEditorURL)(),"#").concat(new URLSearchParams(vt).toString());return(0,sc.qy)(ho||(ho=(0,Fl.A)(['\n\t\t\t\t<pnx-link-button\n\t\t\t\t\tsize="sm"\n\t\t\t\t\thref=','\n\t\t\t\t\ttarget="_blank"\n\t\t\t\t\ttitle="','"\n\t\t\t\t>\n\t\t\t\t\t'," ",'\n\t\t\t\t</pnx-link-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tid="pnx-edit-josm"\n\t\t\t\t\tsize="sm"\n\t\t\t\t\tactive=',"\n\t\t\t\t\t@click=",'\n\t\t\t\t\ttitle="','"\n\t\t\t\t>\n\t\t\t\t\t'," ","\n\t\t\t\t</pnx-button>\n\t\t\t"])),bt,null===(le=this._parent)||void 0===le?void 0:le._t.pnx.contribute_id,(0,uc.fa)(Ac.faLocationDot),null===(Dl=this._parent)||void 0===Dl?void 0:Dl._t.pnx.id,this._josm?"":sc.s6,this._toggleJOSMLive,null===(mc=this._parent)||void 0===mc?void 0:mc._t.pnx.josm_live,(0,uc.fa)(Ec.hU),null===(du=this._parent)||void 0===du?void 0:du._t.pnx.josm)}}}OSMEditors.properties={_pic:{state:!0},_josm:{state:!0}},OSMEditors.styles=(0,sc.AH)(Dl||(Dl=(0,Fl.A)(["\n\t\t:host { display: inline-flex; gap: 5px; }\n\t\t:host > * { flex: 1; }\n\t\tpnx-link-button::part(btn) { height: auto; }\n\t"]))),customElements.define("pnx-widget-osmeditors",OSMEditors)},8806:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PictureLegendActions});var ls,ho,Dl,Fl,sc,uc=le(7528),mc=le(4542),gc=le(5995),Ac=le(3613),Ec=le(8591);class PictureLegendActions extends mc.WF{constructor(){super(),this.full=!1}connectedCallback(){super.connectedCallback(),(0,gc.onceParentAvailable)(this).then((()=>this._parent.onceReady())).then((()=>{this._meta=this._parent.psv.getPictureMetadata(),this._parent.psv.addEventListener("picture-loaded",(()=>{this._meta=this._parent.psv.getPictureMetadata()}))}))}_onPrint(){this._closeGroup(),window.print()}_closeGroup(){this.renderRoot.querySelector("#pic-legend-headline-menu").close()}render(){var vt,bt,le,sc,Ec,kc,du,_u,Md,Ld,Nd,Rd,Od,jd;return(0,mc.qy)(ls||(ls=(0,uc.A)(['<pnx-togglable-group padded="false" id="pic-legend-headline-menu" ._parent=','>\n\t\t\t<pnx-button slot="button" kind="inline">','</pnx-button>\n\t\t\t<pnx-list-group class="pnx-print-hidden" @click=',">\n\t\t\t\t",'\n\n\t\t\t\t<a\n\t\t\t\t\tdownload\n\t\t\t\t\ttarget="_blank"\n\t\t\t\t\thref=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>","</a>\n\n\t\t\t\t","\n\n\t\t\t\t","\n\t\t\t</pnx-list-group>\n\t\t</pnx-togglable-group>"])),this._parent,(0,gc.fa)(Ac.v),this._closeMenu,this._meta?(0,mc.qy)(ho||(ho=(0,uc.A)(["<pnx-copy-button ._t="," text="," unstyled>\n\t\t\t\t\t","\n\t\t\t\t</pnx-copy-button>"])),null===(vt=this._parent)||void 0===vt?void 0:vt._t,this._meta.id,null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.metadata_general_copy_picid):mc.s6,null===(le=this._meta)||void 0===le||null===(sc=le.panorama)||void 0===sc?void 0:sc.hdUrl,this._closeGroup,null===(Ec=this._parent)||void 0===Ec?void 0:Ec._t.pnx.share_image,this._parent.isWidthSmall()?mc.s6:(0,mc.qy)(Dl||(Dl=(0,uc.A)(["<button @click=",">\n\t\t\t\t\t","\n\t\t\t\t</button>"])),this._onPrint,null===(kc=this._parent)||void 0===kc?void 0:kc._t.pnx.share_print),(null===(du=this._parent)||void 0===du||null===(_u=du.api)||void 0===_u?void 0:_u.getRSSURL())&&(0,mc.qy)(Fl||(Fl=(0,uc.A)(['\n\t\t\t\t\t<a\n\t\t\t\t\t\ttarget="_blank"\n\t\t\t\t\t\thref=',"\n\t\t\t\t\t\ttitle=","\n\t\t\t\t\t\t@click=","\n\t\t\t\t\t>\n\t\t\t\t\t\t","\n\t\t\t\t\t</a>\n\t\t\t\t"])),null===(Md=this._parent)||void 0===Md?void 0:Md.api.getRSSURL(null===(Ld=this._parent)||void 0===Ld||null===(Nd=Ld.map)||void 0===Nd||null===(Rd=Nd.getBounds)||void 0===Rd?void 0:Rd.call(Nd)),null===(Od=this._parent)||void 0===Od?void 0:Od._t.pnx.share_rss_title,this._closeGroup,null===(jd=this._parent)||void 0===jd?void 0:jd._t.pnx.share_rss))}}PictureLegendActions.styles=[Ec.BQ,(0,mc.AH)(sc||(sc=(0,uc.A)(["\n\t\tpnx-togglable-group::part(menu) {\n\t\t\tborder-radius: 5px;\n\t\t\tmin-width: unset;\n\t\t}\n\t"])))],PictureLegendActions.properties={full:{type:Boolean},_meta:{state:!0}},customElements.define("pnx-picture-legend-actions",PictureLegendActions)},8305:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Player});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(1705),mc=le(6386),gc=le(7472),Ac=le(5431),Ec=le(6533);le(1230);class Player extends Fl.WF{constructor(){super(),this.playing=!1,this.size="xl",this.more="depends",this._activePrev=!0,this._activePlay=!0,this._activeNext=!0}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),(0,sc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.oncePSVReady)||void 0===bt?void 0:bt.call(vt).then((()=>{this._parent.psv.addEventListener("sequence-playing",(()=>this.playing=!0)),this._parent.psv.addEventListener("sequence-stopped",(()=>this.playing=!1)),this._parent.psv.addEventListener("picture-loaded",this._changeActiveStates.bind(this)),this._parent.psv.addEventListener("pictures-navigation-changed",this._changeActiveStates.bind(this)),this._changeActiveStates()}))}))}_changeActiveStates(){var vt,bt,le,ls,ho,Dl;"pic"===(null===(vt=(bt=this._parent.psv).getPicturesNavigation)||void 0===vt?void 0:vt.call(bt))?(this._activeNext=!1,this._activePlay=!1,this._activePrev=!1):(this._activePrev=null!=(null===(le=this._parent.psv.getPictureMetadata())||void 0===le||null===(ls=le.sequence)||void 0===ls?void 0:ls.prevPic),null!=(null===(ho=this._parent.psv.getPictureMetadata())||void 0===ho||null===(Dl=ho.sequence)||void 0===Dl?void 0:Dl.nextPic)?(this._activeNext=!0,this._activePlay=!0):(this._activeNext=!1,this._activePlay=!1));this.requestUpdate()}_onPlayClick(){var vt,bt,le,ls,ho,Dl;null!==(vt=this._parent)&&void 0!==vt&&null!==(bt=vt.psv)&&void 0!==bt&&bt.isSequencePlaying()?(this.playing=!1,null===(le=this._parent)||void 0===le||null===(ls=le.psv)||void 0===ls||ls.stopSequence()):(this.playing=!0,null===(ho=this._parent)||void 0===ho||null===(Dl=ho.psv)||void 0===Dl||Dl.playSequence())}render(){var vt,bt,le,kc,du,_u,Md,Ld;return null!==(vt=this._parent)&&void 0!==vt&&null!==(bt=vt.psv)&&void 0!==bt&&bt.addEventListener?(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-button-group\n\t\t\t\tid="pnx-widget-player"\n\t\t\t\tdir="row"\n\t\t\t\tsize=','\n\t\t\t\tclass="pnx-print-hidden"\n\t\t\t\tstyle=','\n\t\t\t>\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\tid="pnx-player-prev"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t\t.disabled=","\n\t\t\t\t>",'</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\tid="pnx-player-play"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@click=","\n\t\t\t\t>",'</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\tid="pnx-player-next"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t.disabled=","\n\t\t\t\t\t@click=","\n\t\t\t\t>","</pnx-button>\n\n\t\t\t\t","\n\t\t\t</pnx-button-group>\n\t\t"])),this.size,this._activePrev||this._activePlay||this._activeNext?"":"display: none",null===(le=this._parent)||void 0===le?void 0:le._t.pnx.sequence_prev,(()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.goToPrevPicture()}),!this._activePrev,(0,sc.fa)(uc.TH),this.playing?null===(kc=this._parent)||void 0===kc?void 0:kc._t.pnx.sequence_pause:null===(du=this._parent)||void 0===du?void 0:du._t.pnx.sequence_play,!this._activePlay,this._onPlayClick.bind(this),this.playing?(0,sc.fa)(gc.G1):(0,sc.fa)(mc.ij),null===(_u=this._parent)||void 0===_u?void 0:_u._t.pnx.sequence_next,!this._activeNext,(()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.goToNextPicture()}),(0,sc.fa)(Ac.vF),"never"===this.more||"always"!==this.more&&null!==(Md=this._parent)&&void 0!==Md&&Md.isWidthSmall()?Fl.s6:(0,Fl.qy)(ho||(ho=(0,Dl.A)(['\n\t\t\t\t\t<pnx-togglable-group padded="false" ._parent=','>\n\t\t\t\t\t\t<pnx-button\n\t\t\t\t\t\t\tkind="flat"\n\t\t\t\t\t\t\tid="pnx-player-more"\n\t\t\t\t\t\t\ttitle=',"\n\t\t\t\t\t\t\tclass=",'\n\t\t\t\t\t\t\tslot="button"\n\t\t\t\t\t\t>',"</pnx-button>\n\n\t\t\t\t\t\t<pnx-player-options ._parent=","></pnx-player-options>\n\t\t\t\t\t</pnx-togglable-group>\n\t\t\t\t"])),this._parent,null===(Ld=this._parent)||void 0===Ld?void 0:Ld._t.pnx.sequence_more,"depends"===this.more?"pnx-xs-hidden":"",(0,sc.fa)(Ec.faEllipsisVertical),this._parent)):Fl.s6}}Player.properties={playing:{type:Boolean,reflect:!0},size:{type:String},more:{type:String},_activePrev:{state:!0},_activePlay:{state:!0},_activeNext:{state:!0}},customElements.define("pnx-widget-player",Player)},6524:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>SemanticsFiltersButton});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(5995),uc=le(2593),mc=le(6627),gc=le(6249),Ac=le(8591);class SemanticsFiltersButton extends Fl.WF{constructor(){super(),(0,sc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=(bt=this._parent).onceMapReady)||void 0===vt?void 0:vt.call(bt).then((()=>{var vt,bt,le,ls;null===(vt=this._parent)||void 0===vt||null===(bt=vt.mapStyleComposer)||void 0===bt||bt.addEventListener("dataoverlay-added",(()=>this.requestUpdate())),null===(le=this._parent)||void 0===le||null===(ls=le.map)||void 0===ls||ls.addEventListener("styledata",(()=>this.requestUpdate()))}))}))}render(){var vt,bt,le,Ac;const Ec=null===(vt=this._parent.map)||void 0===vt||null===(bt=vt.getSemanticOverlays)||void 0===bt?void 0:bt.call(vt);if(!Ec||0===Ec.length)return;const kc=Ec.filter((vt=>vt.metadata&&this._parent.mapStyleComposer.dataOverlays.has(vt.source))).length>0,du=null===(le=this._parent)||void 0===le?void 0:le.isWidthSmall(),_u=(0,sc.fa)(mc.faXmark,{styles:{"pointer-events":"auto"}});return _u.addEventListener("click",(vt=>{var bt,le;vt.stopPropagation(),null===(bt=this._parent)||void 0===bt||null===(le=bt.map)||void 0===le||le.toggleAllSemanticOverlays(!1)})),(0,Fl.qy)(ls||(ls=(0,Dl.A)(['\n\t\t\t<pnx-togglable-group\n\t\t\t\tid="pnx-widget-semantics-filter"\n\t\t\t\tclass="pnx-only-map pnx-print-hidden"\n\t\t\t\t._parent=','\n\t\t\t>\n\t\t\t\t<pnx-button kind="flat" size="xl" slot="button">\n\t\t\t\t\t',"\n\t\t\t\t\t","\n\t\t\t\t\t","\n\t\t\t\t\t",'\n\t\t\t\t</pnx-button>\n\t\t\t\t<pnx-map-semantics-filters-menu\n\t\t\t\t\tid="pnx-map-semantics-filters-menu"\n\t\t\t\t\t._parent=',"\n\t\t\t\t\t@change=","\n\t\t\t\t></pnx-map-semantics-filters-menu>\n\t\t\t</pnx-togglable-group>\n\t\t"])),this._parent,(0,sc.fa)(gc.DX),kc?(0,Fl.qy)(ho||(ho=(0,Dl.A)(['<span class="pnx-active-icon"></span>']))):Fl.s6,du?Fl.s6:null===(Ac=this._parent)||void 0===Ac?void 0:Ac._t.pnx.semantics_title,du?Fl.s6:kc?_u:(0,sc.fa)(uc.Jt),this._parent,this._onLayersChange)}}SemanticsFiltersButton.styles=[Ac.s0],customElements.define("pnx-widget-semantics-filters",SemanticsFiltersButton)},3023:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>Zoom});var ls,ho=le(7528),Dl=le(4542),Fl=le(9048),sc=le(3407),uc=le(5995),mc=le(1372),gc=le(7290);le(1870);class Zoom extends Dl.WF{createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),(0,uc.onceParentAvailable)(this).then((()=>{var vt,bt;return null===(vt=this._parent)||void 0===vt||null===(bt=vt.oncePSVReady)||void 0===bt?void 0:bt.call(vt).then((()=>{var vt,bt;this._lastWantedZoom=(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt?void 0:bt.getZoomLevel())||Fl.cS}))}))}_onClick(vt,bt){if(this._parent.map&&this._parent.isMapWide())bt?this._parent.map.zoomIn({},{originalEvent:vt}):this._parent.map.zoomOut({},{originalEvent:vt});else{this._parent.lastPsvAnim&&this._parent.lastPsvAnim.cancel();const vt=bt?Math.min(100,this._lastWantedZoom+sc.$p):Math.max(0,this._lastWantedZoom-sc.$p);this._parent.lastPsvAnim=this._parent.psv.animate({speed:Fl.LM,zoom:vt}),this._lastWantedZoom=vt}}render(){var vt,bt;return(0,Dl.qy)(ls||(ls=(0,ho.A)(['\n\t\t\t<pnx-button-group\n\t\t\t\tid="pnx-widget-zoom"\n\t\t\t\tdir="column"\n\t\t\t\tsize="xl"\n\t\t\t\tclass="pnx-mobile-hidden pnx-print-hidden"\n\t\t\t>\n\t\t\t\t<pnx-button\n\t\t\t\t\tid="pnx-zoom-in"\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>",'</pnx-button>\n\n\t\t\t\t<pnx-button\n\t\t\t\t\tid="pnx-zoom-out"\n\t\t\t\t\tkind="superflat"\n\t\t\t\t\ttitle=',"\n\t\t\t\t\t@click=","\n\t\t\t\t>","</pnx-button>\n\t\t\t</pnx-button-group>\n\t\t"])),null===(vt=this._parent)||void 0===vt?void 0:vt._t.pnx.zoomIn,(vt=>this._onClick(vt,!0)),(0,uc.fa)(mc.QL),null===(bt=this._parent)||void 0===bt?void 0:bt._t.pnx.zoomOut,(vt=>this._onClick(vt,!1)),(0,uc.fa)(gc.EZ))}}Zoom.properties={_lastWantedZoom:{state:!0}},customElements.define("pnx-widget-zoom",Zoom)},222:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{CopyCoordinates:()=>ls.A,GeoSearch:()=>ho.A,Legend:()=>Dl.A,LevelSelect:()=>Fl.A,MapFiltersButton:()=>sc.A,MapLayersButton:()=>uc.A,OSMEditors:()=>mc.A,PictureLegendActions:()=>gc.A,Player:()=>Ac.A,SemanticsFiltersButton:()=>Ec.A,Zoom:()=>kc.A});var ls=le(5114),ho=le(2603),Dl=le(4385),Fl=le(6996),sc=le(4529),uc=le(1614),mc=le(5789),gc=le(8806),Ac=le(8305),Ec=le(6524),kc=le(3023)},5254:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>API});var ls=le(9379),ho=le(7343);class API extends EventTarget{constructor(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(super(),null===vt||void 0===vt||"string"!==typeof vt){const vt=new Error("endpoint parameter is empty or not a valid string");throw this.dispatchEvent(new CustomEvent("broken",{detail:{error:vt}})),vt}if(vt.startsWith("/")&&(vt=window.location.href.split("/").slice(0,3).join("/")+vt),!API.isValidHttpUrl(vt)){const bt=new Error("endpoint parameter is not a valid URL: ".concat(vt));throw this.dispatchEvent(new CustomEvent("broken",{detail:{error:bt}})),bt}this._endpoint=vt,this._isReady=0,this._dataBbox=null,this._fetchOpts=(null===bt||void 0===bt?void 0:bt.fetch)||{},this._metadata={},this._configuration=null,bt.skipReadLanding||(this._readLanding=fetch(vt,this._getFetchOptions()).then((vt=>vt.json())).then((vt=>this._parseLanding(vt,bt))).catch((vt=>(this._isReady=-1,console.error(vt),this.dispatchEvent(new CustomEvent("broken",{detail:{error:vt}})),Promise.reject("Viewer failed to communicate with API")))).then((()=>(this._isReady=1,this.dispatchEvent(new Event("ready")),"API is ready"))))}onceReady(){return-1==this._isReady?Promise.reject("Viewer failed to communicate with API"):1==this._isReady?Promise.resolve("API is ready"):this._readLanding}isReady(){return 1==this._isReady}getAvailableFeatures(){return Object.entries(this._endpoints).filter((vt=>null!==vt[1])).map((vt=>vt[0]))}getUnavailableFeatures(){return Object.entries(this._endpoints).filter((vt=>null===vt[1])).map((vt=>vt[0]))}_parseLanding(vt,bt){var le,ls;if(this._endpoints={collections:null,search:null,style:null,user_style:null,tiles:(null===bt||void 0===bt?void 0:bt.tiles)||null,user_tiles:null,user_search:null,collection_preview:null,item_preview:null,rss:null,report:null,queryables:null},!vt||!vt.links||!Array.isArray(vt.links))throw new Error("API Landing page doesn't contain 'links' list");if(!vt.stac_version.startsWith("1."))throw new Error("API is not in a supported STAC version (Panoramax viewer supports only 1.x, API is ".concat(vt.stac_version,")"));this._metadata.name=vt.title||"Unnamed",this._metadata.stac_version=vt.stac_version,this._metadata.geovisio_version=vt.geovisio_version;const ho=[],Dl=[];if([{rel:"search",type:"application/geo+json",endpointId:"search",mandatory:!0,missingIssue:"No direct access to pictures metadata."},{rel:"data",type:"application/json",endpointId:"collections",mandatory:!0,missingIssue:"No way for viewer to access sequences."},{rel:"data",type:"application/rss+xml",endpointId:"rss"},{rel:"xyz",type:"application/vnd.mapbox-vector-tile",endpointId:"tiles"},{rel:"xyz-style",type:"application/json",endpointId:"style"},{rel:"user-xyz-style",type:"application/json",endpointId:"user_style"},{rel:"user-xyz",type:"application/vnd.mapbox-vector-tile",endpointId:"user_tiles"},{rel:"user-search",type:"application/json",endpointId:"user_search",missingIssue:"Filter map data by user name will not be available."},{rel:"collection-preview",type:"image/jpeg",endpointId:"collection_preview",missingIssue:"Display of thumbnail could be slower."},{rel:"item-preview",type:"image/jpeg",endpointId:"item_preview",missingIssue:"Display of thumbnail could be slower."},{rel:"report",type:"application/json",endpointId:"report"},{rel:"http://www.opengis.net/def/rel/ogc/1.0/queryables",type:"application/schema+json",endpointId:"queryables",missingIssue:"Tags map overlay will not be available."}].forEach((bt=>{const le=vt.links.find((vt=>vt.rel==bt.rel&&vt.type==bt.type));if(le){if(!API.isValidHttpUrl(le.href))throw new Error("API endpoint '".concat(le.rel,"' (").concat(le.type,") is not a valid URL: ").concat(le.href));this._endpoints[bt.endpointId]||(this._endpoints[bt.endpointId]=le.href)}else if(!this._endpoints[bt.endpointId]){let vt="API doesn't offer a '".concat(bt.rel,"' (").concat(bt.type,") endpoint in its links");bt.missingIssue&&(vt+="\n".concat(bt.missingIssue)),bt.mandatory?ho.push(vt):bt.missingIssue&&Dl.push(vt)}})),this._endpoints.style||this._endpoints.tiles||Dl.push("API doesn't offer 'xyz' or 'xyz-style' endpoints in its links.\nMap widget will not be available."),this._endpoints.user_style||this._endpoints.user_tiles||Dl.push("API doesn't offer 'user-xyz' or 'user-xyz-style' endpoints in its links.\nFilter map data by user ID will not be available."),Dl.forEach((vt=>console.warn(vt))),ho.length>0)throw new Error(ho.join("\n"));const Fl=null===vt||void 0===vt||null===(le=vt.extent)||void 0===le||null===(ls=le.spatial)||void 0===ls?void 0:ls.bbox;this._dataBbox=Fl&&Array.isArray(Fl)&&Fl.length>0&&Array.isArray(Fl[0])&&4===Fl[0].length?[[Fl[0][0],Fl[0][1]],[Fl[0][2],Fl[0][3]]]:null}_getFetchOptions(){let vt=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const bt=Object.assign({},this._fetchOpts);return vt||(bt.signal=AbortSignal.timeout(15e3)),bt}_getMapRequestTransform(){const vt=this._getFetchOptions();return delete vt.signal,bt=>{if(bt.startsWith(this._endpoint)){if(Object.keys(vt).length>0)return(0,ls.A)({url:bt},vt)}else if(bt.includes("data.geopf.fr")&&bt.includes("@2x"))return{url:bt.replace("@2x","")}}}_getPSVWithCredentials(){return"include"===this._getFetchOptions().credentials?vt=>vt.startsWith(this._endpoint):void 0}cleanResourceURL(vt){if(!vt)return;const bt=new URL(this._endpoint);return vt.startsWith("/")?bt.protocol+"//"+bt.host+vt:vt.startsWith("./")?this._endpoint+vt.substring(1):vt}async getSequenceItems(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,ls=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;if(!this.isReady())throw new Error("API is not ready to use");try{return API.isIdValid(vt),fetch(bt||"".concat(this._endpoints.collections,"/").concat(vt,"/items").concat(ls?"?limit="+ls:""),this._getFetchOptions(!0)).then((vt=>vt.json())).then((bt=>{let ho=bt;le&&(ho.features=le.features.concat(ho.features));const Dl=bt.links.find((vt=>"next"===vt.rel));return!ls&&Dl?this.getSequenceItems(vt,Dl.href,ho):ho}))}catch(ho){return Promise.reject(ho)}}getPicturesAroundCoordinatesUrl(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]?arguments[2]:5e-4,ls=arguments.length>3?arguments[3]:void 0,ho=arguments.length>4?arguments[4]:void 0;if(!this.isReady())throw new Error("API is not ready to use");if(isNaN(parseFloat(vt))||isNaN(parseFloat(bt)))throw new Error("lat and lon parameters should be valid numbers");const Dl=[bt-le,vt-le,bt+le,vt+le].map((vt=>vt.toFixed(7))).join(","),Fl=ls?"&limit=".concat(ls):"",sc=ho?"&collections=".concat(ho):"";return"".concat(this._endpoints.search,"?bbox=").concat(Dl).concat(Fl).concat(sc)}getPicturesAroundCoordinates(vt,bt,le,ls,ho){return fetch(this.getPicturesAroundCoordinatesUrl(vt,bt,le,ls,ho),this._getFetchOptions()).then((vt=>vt.json()))}getPictureMetadataUrl(vt,bt){if(!this.isReady())throw new Error("API is not ready to use");if(API.isIdValid(vt))return bt?"".concat(this._endpoints.collections,"/").concat(bt,"/items/").concat(vt):"".concat(this._endpoints.search,"?ids=").concat(vt)}findThumbnailInPictureFeature(vt){if(!this.isReady())throw new Error("API is not ready to use");if(!vt||!vt.assets)return null;let bt=null;for(let le of Object.values(vt.assets)){if(le.roles.includes("thumbnail")&&"image/jpeg"==le.type&&API.isValidHttpUrl(le.href))return this.cleanResourceURL(le.href);le.roles.includes("visual")&&"image/jpeg"==le.type&&API.isValidHttpUrl(le.href)&&(bt=this.cleanResourceURL(le.href))}return bt}getPictureThumbnailURLForSequence(vt,bt){if(!this.isReady())throw new Error("API is not ready to use");if(this._endpoints.collection_preview)return Promise.resolve(this._endpoints.collection_preview.replace("{id}",vt));if(bt&&Array.isArray(bt.links)&&bt.links.length>0){let vt=bt.links.find((vt=>"preview"===vt.rel&&"image/jpeg"===vt.type));if(vt&&API.isValidHttpUrl(vt.href))return Promise.resolve(vt.href)}const le="".concat(this._endpoints.search,"?limit=1&collections=").concat(vt);return fetch(le,this._getFetchOptions()).then((vt=>vt.json())).then((vt=>Array.isArray(vt.features)&&0!=vt.features.length?this.findThumbnailInPictureFeature(vt.features.pop()):null))}getPictureThumbnailURL(vt,bt){if(!this.isReady())throw new Error("API is not ready to use");return vt?this._endpoints.item_preview?Promise.resolve(this._endpoints.item_preview.replace("{id}",vt)):vt&&bt?fetch("".concat(this._endpoints.collections,"/").concat(bt,"/items/").concat(vt),this._getFetchOptions()).then((vt=>vt.json())).then((vt=>vt?this.findThumbnailInPictureFeature(vt):null)):fetch("".concat(this._endpoints.search,"?ids=").concat(vt),this._getFetchOptions()).then((vt=>vt.json())).then((vt=>vt&&Array.isArray(vt.features)&&0!=vt.features.length?this.findThumbnailInPictureFeature(vt.features.pop()):null)):Promise.resolve(null)}getRSSURL(vt){if(!this.isReady())throw new Error("API is not ready to use");if(this._endpoints.rss){let bt=this._endpoints.rss;return vt&&(bt+=bt.includes("?")?"&":"?",bt+="bbox="+[vt.getWest(),vt.getSouth(),vt.getEast(),vt.getNorth()].join(",")),bt}return null}getSequenceMetadataUrl(vt){if(!this.isReady())throw new Error("API is not ready to use");return"".concat(this._endpoints.collections,"/").concat(vt)}getSequenceMetadata(vt){if(!this.isReady())throw new Error("API is not ready to use");return fetch(this.getSequenceMetadataUrl(vt),this._getFetchOptions()).then((vt=>vt.json()))}getDataBbox(){if(!this.isReady())throw new Error("API is not ready to use");return this._dataBbox}searchUsers(vt){if(!this.isReady())throw new Error("API is not ready to use");if(!this._endpoints.user_search)throw new Error("User search is not available");return fetch("".concat(this._endpoints.user_search,"?q=").concat(vt),this._getFetchOptions()).then((vt=>vt.json())).then((vt=>(null===vt||void 0===vt?void 0:vt.features)||null))}getUserName(vt){if(!this.isReady())throw new Error("API is not ready to use");if(!this._endpoints.user_search)throw new Error("User search is not available");return fetch(this._endpoints.user_search.replace(/\/search$/,"/".concat(vt)),this._getFetchOptions()).then((vt=>vt.json())).then((vt=>(null===vt||void 0===vt?void 0:vt.label)||(null===vt||void 0===vt?void 0:vt.name)||null))}sendReport(vt){if(!this.isReady())throw new Error("API is not ready to use");if(!this._endpoints.report)throw new Error("Report sending is not available");const bt=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"POST",body:JSON.stringify(vt),headers:{"Content-Type":"application/json"}});return fetch(this._endpoints.report,bt).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return vt.json()}))}sendPictureSemantics(vt,bt){var le;if(!this.isReady())throw new Error("API is not ready to use");if(null===vt||void 0===vt||null===(le=vt.sequence)||void 0===le||!le.id||null===vt||void 0===vt||!vt.id)throw new Error("Missing IDs from picture");let ho=this.getPictureMetadataUrl(vt.id,vt.sequence.id);null!==vt&&void 0!==vt&&vt.origInstance&&(ho="".concat(vt.origInstance.href,"/api/collections/").concat(vt.sequence.id,"/items/").concat(vt.id));const Dl=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"PATCH",body:JSON.stringify({semantics:bt}),headers:{"Content-Type":"application/json"}});return fetch(ho,Dl).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return vt.json()}))}createPictureAnnotation(vt,bt,le){var ho;if(!this.isReady())throw new Error("API is not ready to use");if(null===vt||void 0===vt||null===(ho=vt.sequence)||void 0===ho||!ho.id||null===vt||void 0===vt||!vt.id)throw new Error("Missing IDs from picture");let Dl=this.getPictureMetadataUrl(vt.id,vt.sequence.id)+"/annotations";null!==vt&&void 0!==vt&&vt.origInstance&&(Dl="".concat(vt.origInstance.href,"/api/collections/").concat(vt.sequence.id,"/items/").concat(vt.id,"/annotations"));const Fl=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"POST",body:JSON.stringify({semantics:le,shape:bt}),headers:{"Content-Type":"application/json"}});return fetch(Dl,Fl).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return vt.json()}))}editPictureAnnotation(vt,bt){if(!this.isReady())throw new Error("API is not ready to use");let le="".concat(this._endpoint,"/annotations/").concat(vt);const ho=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"PATCH",body:JSON.stringify({semantics:bt}),headers:{"Content-Type":"application/json"}});return fetch(le,ho).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return vt.json()}))}deletePictureAnnotation(vt){if(!this.isReady())throw new Error("API is not ready to use");let bt="".concat(this._endpoint,"/annotations/").concat(vt);const le=(0,ls.A)((0,ls.A)({},this._getFetchOptions()),{},{method:"DELETE"});return fetch(bt,le).then((async vt=>{if(vt.status>=400){let le=await vt.text();try{le=JSON.parse(le).message}catch(bt){}return Promise.reject(le)}return!0}))}getAuthURL(){var vt,bt;return this._configuration?Promise.resolve(!(null===(vt=this._configuration)||void 0===vt||null===(bt=vt.auth)||void 0===bt||!bt.enabled)&&"".concat(this._endpoint,"/auth/login?next_url=<CBURL>")):null===this._configuration?fetch(this._endpoint+"/configuration",this._getFetchOptions()).then((vt=>vt.json())).then((vt=>(this._configuration=vt,this.getAuthURL()))).catch((()=>(this._configuration=!1,!1))):Promise.resolve(!1)}static isValidHttpUrl(vt){let bt;try{bt=new URL(vt)}catch(le){return!1}return"http:"===bt.protocol||"https:"===bt.protocol}static isIdValid(vt){if((0,ho.isNullId)(vt))throw new Error("id should be a valid picture unique identifier");return!0}}},2118:(vt,bt,le)=>{"use strict";le.d(bt,{Ay:()=>InitParameters,Qm:()=>Dl,Vy:()=>alterPSVState,ai:()=>alterPhotoViewerState,iz:()=>alterViewerState,mK:()=>alterMapState});var ls=le(9379),ho=le(8340);const Dl={minDate:"date_from",maxDate:"date_to",pic_type:"pic_type",camera:"camera",theme:"theme",qualityscore:"pic_score",gps:"gps"},Fl=Object.fromEntries(Object.entries(Dl).map((vt=>[vt[1],vt[0]]))),sc=["none","null","false",!1],uc=["antialias","bearing","bearingSnap","bounds","boxZoom","clickTolerance","collectResourceTiming","cooperativeGestures","crossSourceCollisions","doubleClickZoom","dragPan","dragRotate","fadeDuration","failIfMajorPerformanceCaveat","fitBoundsOptions","hash","interactive","localIdeographFontFamily","locale","logoPosition","maplibreLogo","maxBounds","maxCanvasSize","maxPitch","maxTileCacheSize","maxTileCacheZoomLevels","maxZoom","minPitch","minZoom","pitch","pitchWithRotate","pixelRatio","preserveDrawingBuffer","refreshExpiredTiles","renderWorldCopies","scrollZoom","touchPitch","touchZoomRotate","trackResize","transformCameraUpdate","transformRequest","validateStyle"];class InitParameters{constructor(){var vt,bt,le,ho,Dl,Fl,mc,gc;let Ac=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},Ec=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},kc=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};"false"===Ac["url-parameters"]&&(Ec={});let du={};"object"===typeof(null===Ac||void 0===Ac?void 0:Ac["psv-options"])&&(du=Ac["psv-options"]);let _u={};"object"===typeof(null===Ac||void 0===Ac?void 0:Ac["map-options"])&&(_u=Ac["map-options"]);let Md={};"object"===typeof(null===kc||void 0===kc?void 0:kc.map)&&(Md=kc.map);let Ld=Ec.map&&"none"!==Ec.map?getMapPositionFromString(Ec.map):null,Nd=!sc.includes(Ec.map)&&!sc.includes(Ac["map-options"]),Rd=Ec.focus||Ac.focus,Od=Ec.pic||Ac.picture,jd=Ec.seq||Ac.sequence,Ud=Ec.users||Ac["endpoint-to-use"]||Md.endpoint,Gd=Ec.speed||(null===(vt=du)||void 0===vt?void 0:vt.transitionDuration),qd=Ec.nav||(null===(bt=du)||void 0===bt?void 0:bt.picturesNavigation),Hd=Ec.theme||_u.theme||(null===(le=Md)||void 0===le?void 0:le.theme),Wd=Ec.background||_u.background||(null===(ho=Md)||void 0===ho?void 0:ho.background),Zd=(null===Ld||void 0===Ld?void 0:Ld.center)||!Od&&(_u.center||(null===(Dl=Md)||void 0===Dl?void 0:Dl.center))||[0,0],Yd=(null===Ld||void 0===Ld?void 0:Ld.zoom)||_u.zoom||(null===(Fl=Md)||void 0===Fl?void 0:Fl.zoom),Qd=(null===Ld||void 0===Ld?void 0:Ld.pitch)||_u.pitch,Xd=(null===Ld||void 0===Ld?void 0:Ld.bearing)||_u.bearing,Kd=Ec.level||(null===(mc=_u.indoor)||void 0===mc?void 0:mc.level),Jd=Ac.geocoder,$d=Ac.widgets,sp=Ac["fetch-options"],tm=Ac.style,em=Ac.lang,im=Ac.endpoint,nm=_u.raster,rm=_u.indoor,am=_u.attributionControl,sm=(om=_u,Object.fromEntries(Object.entries(om).filter((vt=>{let[bt]=vt;return uc.includes(bt)}))));var om;let lm=Ac["keyboard-shortcuts"],cm=Ac["skip-tags-menu-opening"],um="false"===(null===kc||void 0===kc?void 0:kc.disableAnnotations)||(null===(gc=du)||void 0===gc?void 0:gc.displayAnnotations)||!1,hm=Ec.xyz,dm=Ec.date_from,pm=Ec.date_to,mm=Ec.pic_type,fm=Ec.camera,gm=Ec.pic_score,Am=Ec.gps,_m=Ec.overlay,ym=Ec.xywh,vm=Ec.annot;!Nd||Od||jd?["map","pic"].includes(Rd)?"map"!==Rd||Nd||(console.warn("Parameter focus can't be 'map' as map is disabled"),Rd="pic"):(console.warn("Invalid value for parameter focus:",Rd),Rd=!Nd||Od||jd?"pic":"map"):Rd="map","aerial"!=Wd||nm||(console.warn("Parameter background can't be 'aerial' as no aerial imagery is available"),Wd="streets"),Kd&&!rm&&console.error("Can't set indoor level if indoor= plugin is not available"),!um&&vm&&(um=!0),vm&&!Od&&console.error("Parameter annot can only be used in combination with 'picture'"),this._parentInit={map:Nd,fetchOptions:sp,style:tm,lang:em,endpoint:im},this._parentPostInit={focus:Rd,picture:Od,sequence:jd,geocoder:Jd,widgets:$d,users:Ud,forceFocus:!0,keyboardShortcuts:!0,willLoadPicture:void 0!==(Od||jd),skipTagsMenuOpening:"true"===cm},this._psvInit=Object.assign(Object.fromEntries(Object.entries(du).filter((vt=>{let[bt]=vt;return!["transitionDuration","picturesNavigation","displayAnnotations"].includes(bt)}))),{displayAnnotations:um}),this._psvAny={transitionDuration:Gd,picturesNavigation:qd},this._psvPostInit={xyz:hm,xywh:ym,annotation:vm},this._mapInit=(0,ls.A)({raster:nm,indoor:rm,attributionControl:am},sm),this._mapAny={theme:Hd,background:Wd,center:Zd,zoom:Yd,pitch:Qd,bearing:Xd,level:Kd},this._mapPostInit={date_from:dm,date_to:pm,pic_type:mm,camera:fm,pic_score:gm,gps:Am,overlay:_m},"false"===lm&&(this._psvInit.keyboard=!1,this._psvInit.keyboardActions={},this._mapInit.keyboard=!1,this._parentPostInit.keyboardShortcuts=!1)}_sanitize(vt){return Object.fromEntries(Object.entries(vt).filter((vt=>{let[,bt]=vt;return void 0!==bt})))}getParentInit(){return this._sanitize(this._parentInit)}getParentPostInit(){return this._sanitize(this._parentPostInit)}getPSVInit(){return this._sanitize(Object.assign({},this._psvInit,this._psvAny))}getPSVPostInit(){return this._sanitize(Object.assign({},this._psvPostInit,this._psvAny))}getMapInit(){return this._sanitize(Object.assign({},this._mapInit,this._mapAny))}getMapPostInit(){return this._sanitize(Object.assign({},this._mapPostInit,this._mapAny))}static GetComponentProperties(vt,bt){const le={};for(let ls in vt.properties){vt.properties[ls].state||null==bt[ls]||(le[ls]=bt[ls])}return le}}function getMapPositionFromString(vt,bt){const le=(vt||"").split("/");if(le.length>=3&&!le.some((vt=>isNaN(vt)))){const vt={center:[+le[2],+le[1]],zoom:+le[0],pitch:+(le[4]||0)};return bt&&(vt.bearing=bt.dragRotate.isEnabled()&&bt.touchZoomRotate.isEnabled()?+(le[3]||0):bt.getBearing()),vt}return null}function alterPSVState(vt,bt){bt.xyz&&vt.addEventListener("picture-loaded",(()=>{const le=function(vt){const bt=(vt||"").split("/");return 3!==bt.length||bt.some((vt=>isNaN(vt)))?null:{x:+bt[0],y:+bt[1],z:+bt[2]}}(bt.xyz);vt.setXYZ(le.x,le.y,le.z)}),{once:!0}),bt.xywh&&vt.addEventListener("picture-loaded",(()=>{const le=function(vt,bt){let le=(vt||"").split(",");if(4!==le.length||le.some((vt=>isNaN(vt))))return null;{var ls,ho,Dl,Fl;let[vt,mc,gc,Ac]=le.map((vt=>parseFloat(vt))),Ec=bt.panorama.basePanoData;if("function"===typeof Ec){var sc,uc;const vt=null===bt||void 0===bt||null===(sc=bt.properties)||void 0===sc||null===(uc=sc["pers:interior_orientation"])||void 0===uc?void 0:uc.sensor_array_dimensions;Ec=vt&&2==vt.length?Ec({width:vt[0],height:vt[1]}):null}if(null===(ls=Ec)||void 0===ls||!ls.fullWidth||null===(ho=Ec)||void 0===ho||!ho.fullHeight)return null;const kc=(null===(Dl=Ec)||void 0===Dl?void 0:Dl.croppedX)||0,du=(null===(Fl=Ec)||void 0===Fl?void 0:Fl.croppedY)||0,_u=kc+vt+gc/2-Ec.fullWidth/2,Md=-(du+mc+Ac/2-Ec.fullHeight/2),Ld=_u/Ec.fullWidth,Nd=Md/Ec.fullHeight,Rd=(gc/Ec.fullWidth+Ac/Ec.fullHeight)/2;return{yaw:2*Ld*Math.PI,pitch:Nd*Math.PI,z:100*(1-Rd)}}}(bt.xywh,vt.getPictureMetadata());vt.rotate(le),vt.zoom(le.z)}),{once:!0}),bt.annotation&&(vt.getPictureMetadata()?vt.focusOnAnnotation(bt.annotation):vt.addEventListener("picture-loaded",(()=>{vt.focusOnAnnotation(bt.annotation)}),{once:!0}));let le=bt.transitionDuration||bt.speed;void 0!==le&&vt.setTransitionDuration(le);let ls=bt.picturesNavigation||bt.nav;["none","pic","any","seq"].includes(ls)&&vt.setPicturesNavigation(ls)}async function alterMapState(vt,bt){var le;const ls=getMapPositionFromString(bt.map,vt);ls&&vt.jumpTo(ls),null===(le=vt.setFilters)||void 0===le||le.call(vt,function(vt){const bt={};for(let le in Fl)vt[le]&&(bt[Fl[le]]=vt[le]);if(bt.qualityscore){let vt=bt.qualityscore.split("");const le={A:5,B:4,C:3,D:2,E:1};bt.qualityscore=vt.map((vt=>le[vt]))}return bt}(bt)),["aerial","streets"].includes(bt.background)&&vt._parent.mapStyleComposer.switchBasemap(bt.background),bt.overlay&&bt.overlay.split(",").forEach((bt=>vt._parent.mapStyleComposer.switchDataOverlayVisibility("sem-"+bt,!0)))}function alterPhotoViewerState(vt,bt){let le=bt.picture||bt.pic,ls=bt.sequence||bt.seq||null;if(le){const bt=le.split(";");bt.length>1&&console.warn("Multiple picture IDs passed in URL, only first one kept"),vt.select(1===bt.length?ls:null,bt[0],!0)}else ls?vt.select(ls,null,!0):vt.select()}function alterViewerState(vt,bt){alterPhotoViewerState(vt,bt),"map"===bt.focus&&null!==vt&&void 0!==vt&&vt.map?(vt.setPopup(!1),vt._setFocus("map",null,bt.forceFocus)):"pic"===bt.focus&&null!==vt&&void 0!==vt&&vt.mini?(vt.setPopup(!1),vt._setFocus("pic",null,bt.forceFocus)):bt.focus&&"meta"===bt.focus&&null!==vt&&void 0!==vt&&vt.mini&&vt._setFocus("pic",null,bt.forceFocus),null!=bt.users&&((0,ho.isPanoramaxEndpointSingleUser)(bt.users)?vt.mapStyleComposer._createPanoramaxEndpointForUser(bt.users):vt.mapStyleComposer.switchPanoramaxEndpoint(bt.users))}},4997:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>MapStyleComposer});var ls=le(8340),ho=le(4964),Dl=le(7343);class MapStyleComposer extends EventTarget{constructor(vt){super(),this._parent=vt,this.map=null,this._mapUpdateDebounce=null,this.layerRanges={basemaps:{},dataUnderlays:{},panoramax:{},dataOverlays:{}},this.basemap=null,this.dataUnderlays=new Set,this.panoramax=null,this.dataOverlays=new Set,this.detachedSources={},this.panoramaxTheme=ls.MAP_THEMES_STYLES.default.id,this.panoramaxFilters={}}getMapStyle(){let vt={},bt=[],le=[],Dl={},Fl=[];const preserveFilters=vt=>(this.map&&(vt||[]).filter((vt=>this.map.getLayer(vt.id))).forEach((vt=>{const bt=this.map.getFilter(vt.id);bt&&(vt.filter=bt)})),vt),addLayers=vt=>{(vt||[]).forEach((vt=>{(0,ls.isLabelLayer)(vt)?le.push(vt):bt.push(vt)}))},addSprite=(vt,bt)=>{Array.isArray(vt)?Fl=Fl.concat(vt):"object"===typeof vt&&null!=vt?Fl.push(vt):"string"===typeof vt&&Fl.push({id:bt,url:vt})};var sc;(Object.entries(this.detachedSources).forEach((bt=>{let[le,ls]=bt;return vt[le]=ls})),this.basemap&&this.layerRanges.basemaps[this.basemap])&&(vt=Object.assign(vt,this.layerRanges.basemaps[this.basemap].sources),addLayers(this.layerRanges.basemaps[this.basemap].layers),Dl=this.layerRanges.basemaps[this.basemap].metadata||{},addSprite(this.layerRanges.basemaps[this.basemap].sprite,this.basemap),null!==(sc=Dl)&&void 0!==sc&&sc["panoramax:locales"]||(Dl["panoramax:locales"]=["fr","en","de","es","ru","pt","zh","hi","latin"]));if([...this.dataUnderlays].forEach((bt=>{this.layerRanges.dataUnderlays[bt]&&(vt=Object.assign(vt,this.layerRanges.dataUnderlays[bt].sources),addLayers(preserveFilters(this.layerRanges.dataUnderlays[bt].layers)),addSprite(this.layerRanges.dataUnderlays[bt].sprite,bt))})),this.panoramax&&this.layerRanges.panoramax[this.panoramax]){Dl=Object.assign(Dl,this.layerRanges.panoramax[this.panoramax].metadata),vt=Object.assign(vt,this.layerRanges.panoramax[this.panoramax].sources),addSprite(this.layerRanges.panoramax[this.panoramax].sprite,this.panoramax);let bt=this._applyPanoramaxThemeOnLayers(this.layerRanges.panoramax[this.panoramax]);bt=this._applyPanoramaxFiltersOnLayers(bt),addLayers(bt)}if([...this.dataOverlays].forEach((bt=>{this.layerRanges.dataOverlays[bt]&&(vt=Object.assign(vt,this.layerRanges.dataOverlays[bt].sources),addLayers(preserveFilters(this.layerRanges.dataOverlays[bt].layers)),addSprite(this.layerRanges.dataOverlays[bt].sprite,bt))})),Dl["panoramax:locales"]){let vt=this._parent.lang||(0,ho.autoDetectLocale)(Dl["panoramax:locales"],"latin");vt.includes("-")&&(vt=vt.split("-")[0]),vt.includes("_")&&(vt=vt.split("_")[0]),le.forEach((bt=>{bt.layout["text-field"].includes("name:latin")&&(bt.layout["text-field"]=["coalesce",["get","name:".concat(vt)],["get","name:latin"],["get","name"]])}))}const uc=le.find((vt=>"place_label_city"==vt.id));let mc=le.find((vt=>"place_label_capital"==vt.id));return uc&&!mc&&(uc.paint={"text-color":"hsl(0, 0%, 0%)","text-halo-blur":0,"text-halo-color":"hsla(0, 0%, 100%, 1)","text-halo-width":3},uc.layout["text-letter-spacing"]=.1,mc=JSON.parse(JSON.stringify(uc)),mc.id="place_label_capital",mc.filter=mc.filter.filter((vt=>!(">"===vt[0]&&"capital"==vt[1]))),mc.filter.push(["<=","capital",2]),uc.filter.find((vt=>">"===vt[0]&&"capital"==vt[1]))||uc.filter.push([">","capital",2]),le.push(mc)),vt.plan_ign&&(vt.plan_ign.maxzoom=18),{version:8,name:"Panoramax Map Style",sources:vt,layers:bt.concat(le).filter((vt=>vt.id)),metadata:Dl,sprite:Fl.length>0?Fl:void 0}}updateMapStyle(){let vt=arguments.length>0&&void 0!==arguments[0]&&arguments[0];clearTimeout(this._mapUpdateDebounce),this._mapUpdateDebounce=setTimeout((()=>{var bt,le,ls;(null===(bt=this.map)||void 0===bt||bt.setStyle(this.getMapStyle(),{diff:!0}),vt)&&(this.map._semMapProtocol.clearCache(),Object.entries((null===(le=this.map)||void 0===le||null===(ls=le.getStyle())||void 0===ls?void 0:ls.sources)||{}).filter((vt=>{let[,bt]=vt;return bt.tiles&&bt.tiles[0].startsWith("sem")})).forEach((vt=>{let[bt]=vt;const le=this.map.getSource(bt);le.setTiles(le.tiles)})))}),10)}registerSource(vt,bt){let le=!1;const ls=Object.keys(this.layerRanges);for(let ho=0;ho<ls.length;ho++){const bt=this.layerRanges[ls[ho]],Dl=Object.keys(bt);for(let ls=0;ls<Dl.length;ls++){if(Dl[ls]===vt){le=!0;break}}if(le)break}le||("indoorequal"===vt&&(bt.attribution='<a href="https://indoorequal.org/" target="_blank">\xa9 indoor=</a>'),this.detachedSources[vt]=bt)}registerLayer(vt,bt){var le,ls,ho,Dl;let Fl="dataOverlays";if(("indoorequal"===vt.source||bt)&&(Fl="dataUnderlays"),"indoorequal"===vt.source&&"indoor-heat"===vt.id&&!1===(null===(le=this._parent)||void 0===le||null===(ls=le._initParams)||void 0===ls||null===(ho=ls.getMapInit())||void 0===ho||null===(Dl=ho.indoor)||void 0===Dl?void 0:Dl.heatmap))return;let sc=!1;if(Object.values(this.layerRanges[Fl]).forEach((bt=>{bt.sources[vt.source]&&(bt.layers||(bt.layers=[]),bt.layers.push(vt),sc=!0)})),sc)return;let uc={sources:{},layers:[vt]};this.detachedSources[vt.source]&&(uc.sources[vt.source]=this.detachedSources[vt.source],delete this.detachedSources[vt.source],"dataOverlays"===Fl?this.addDataOverlay(vt.id,uc,!0):"dataUnderlays"===Fl&&this.addDataUnderlay(vt.id,uc,!0))}async waitFor(vt,bt){return this.layerRanges[vt][bt]?Promise.resolve():new Promise((vt=>setTimeout(vt,250))).then((()=>this.waitFor(vt,bt)))}async addBasemap(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];"string"===typeof bt&&(bt=await fetch(bt).then((vt=>vt.json()))),this.layerRanges.basemaps[vt]=bt,this.dispatchEvent(new CustomEvent("basemap-added",{detail:{basemap:vt}})),le&&this.switchBasemap(vt)}async switchBasemap(vt){vt&&!this.layerRanges.basemaps[vt]&&await this.waitFor("basemaps",vt),this.basemap!==vt&&vt&&(this.basemap=vt,this.updateMapStyle(),this.dispatchEvent(new CustomEvent("basemap-changed",{detail:{basemap:vt}})))}hasManyBasemaps(){return Object.keys(this.layerRanges.basemaps).length>=2}addDataUnderlay(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.layerRanges.dataUnderlays[vt]=bt,this.dispatchEvent(new CustomEvent("dataunderlay-added",{detail:{dataUnderlay:vt}})),le&&this.switchDataUnderlayVisibility(vt,!0)}async switchDataUnderlayVisibility(vt,bt){vt&&!this.layerRanges.dataUnderlays[vt]&&await this.waitFor("dataUnderlays",vt),bt?this.dataUnderlays.add(vt):this.dataUnderlays.delete(vt),this.updateMapStyle(),this.dispatchEvent(new CustomEvent("dataunderlay-changed",{detail:{dataUnderlay:vt,visible:bt}}))}addPanoramaxEndpoint(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];Object.values((null===bt||void 0===bt?void 0:bt.sources)||{}).filter((vt=>vt.tiles)).forEach((vt=>vt.tiles=vt.tiles.map((vt=>vt.replace(/^http/,"panora"))))),this.layerRanges.panoramax[vt]=bt,this.layerRanges.panoramax[vt].layers=(0,ls.getPanoramaxLayers)(bt),this.dispatchEvent(new CustomEvent("panoramax-added",{detail:{endpoint:vt}})),le&&this.switchPanoramaxEndpoint(vt)}async switchPanoramaxEndpoint(vt){vt&&!this.layerRanges.panoramax[vt]&&await this.waitFor("panoramax",vt),vt&&vt!==this.panoramax&&(this.panoramax=vt,this.updateMapStyle(!0),this.dispatchEvent(new CustomEvent("panoramax-changed",{detail:{endpoint:vt}})))}isPanoramaxEndpointSingleUser(){return(0,ls.isPanoramaxEndpointSingleUser)(this.panoramax)}setPanoramaxTheme(vt){vt!==this.panoramaxTheme&&(this.panoramaxTheme=vt,this.updateMapStyle(),this.dispatchEvent(new CustomEvent("theme-changed",{detail:{theme:vt}})))}setPanoramaxFilters(vt){this.panoramaxFilters=vt,this.updateMapStyle(),this.dispatchEvent(new CustomEvent("filters-changed",{detail:vt}))}addDataOverlay(vt,bt){let le=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.layerRanges.dataOverlays[vt]=bt,this.dispatchEvent(new CustomEvent("dataoverlay-added",{detail:{dataOverlay:vt}})),le&&this.switchDataOverlayVisibility(vt,!0)}async switchDataOverlayVisibility(vt,bt){vt&&!this.layerRanges.dataOverlays[vt]&&await this.waitFor("dataOverlays",vt),bt?this.dataOverlays.add(vt):this.dataOverlays.delete(vt),this.updateMapStyle(),this.dispatchEvent(new CustomEvent("dataoverlay-changed",{detail:{dataOverlay:vt,visible:bt}}))}async _createPanoramaxEndpointFromAPI(vt,bt){let le,ls=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];bt._endpoints.style?le=bt._endpoints.style:bt._endpoints.tiles&&(le={sources:{geovisio:{tiles:[bt._endpoints.tiles]}}}),le&&"string"===typeof le&&(le=await fetch(le,bt._getFetchOptions()).then((vt=>vt.json()))),le&&le.sources&&this.addPanoramaxEndpoint(vt,le,ls)}async _createPanoramaxEndpointForUser(vt){if(!(0,ls.isPanoramaxEndpointSingleUser)(vt))return;if(this.layerRanges.panoramax[vt])return void this.switchPanoramaxEndpoint(vt);let bt,le,ho;vt.startsWith("metacatalog_")?(le=this._parent.apiMC,ho=vt.replace(/^metacatalog_/,"")):(le=this._parent.api,ho=vt),le._endpoints.user_style?bt=le._endpoints.user_style.replace(/\{userId\}/g,ho):le._endpoints.user_tiles&&(bt={sources:{["geovisio_".concat(ho)]:{tiles:[le._endpoints.user_tiles.replace(/\{userId\}/g,ho)]}}}),bt&&"string"===typeof bt&&(bt=await fetch(bt,le._getFetchOptions()).then((vt=>vt.json()))),bt&&bt.sources&&this.addPanoramaxEndpoint(vt,bt,!0)}_createRasterBasemap(vt){return this.addBasemap("aerial",{sources:{[ls.RASTER_LAYER_ID]:vt},layers:[{id:ls.RASTER_LAYER_ID,type:"raster",source:ls.RASTER_LAYER_ID}]}),ls.RASTER_LAYER_ID}_applyPanoramaxThemeOnLayers(vt){var bt,le,ho,Fl,sc,uc,mc,gc;const Ac=this._parent.psv?(null===(bt=this._parent.psv)||void 0===bt||null===(le=bt._myVTour)||void 0===le||null===(ho=le.state)||void 0===ho?void 0:ho.loadingNode)||(null===(Fl=this._parent.psv)||void 0===Fl||null===(sc=Fl._myVTour)||void 0===sc||null===(uc=sc.state)||void 0===uc||null===(mc=uc.currentNode)||void 0===mc?void 0:mc.id):this._parent.picture,Ec=this._parent.psv?Ac?null===(gc=this._parent.psv)||void 0===gc?void 0:gc._picturesSequences[Ac]:null:this._parent.sequence;return vt.layers=vt.layers.map((bt=>{const le=bt.id.endsWith("_pictures"),ho=bt.id.endsWith("_sequences"),Fl=bt.id.endsWith("_grid");if(bt.layout||(bt.layout={}),bt.paint||(bt.paint={}),le||ho){const vt=["case",["==",["get","hidden"],!0],90];ho&&Ec?vt.push(["==",["get","id"],Ec],100):le&&Ec&&vt.push(["in",Ec,["get","sequences"]],100),vt.push(...ls.MAP_THEMES_STYLES[this.panoramaxTheme].sort),vt.push(10),bt.layout["".concat(le?"circle":"line","-sort-key")]=vt;const Fl=["case",["==",["get","hidden"],!0],Dl.COLORS.HIDDEN];ho&&Ec?Fl.push(["==",["get","id"],Ec],Dl.COLORS.SELECTED):le&&Ec&&Fl.push(["in",Ec,["get","sequences"]],Dl.COLORS.SELECTED),Fl.push(...ls.MAP_THEMES_STYLES[this.panoramaxTheme].color),bt.paint["".concat(le?"circle":"line","-color")]=Fl,le&&(bt.paint["circle-stroke-color"]=Fl)}if(Fl){let le="coef";this.panoramaxFilters.pic_type&&(le="flat"==this.panoramaxFilters.pic_type?"coef_flat_pictures":"coef_360_pictures",(0,ls.hasStyleLoggedGridStats)(vt)&&(0,Dl.getUserAccount)()&&(le="logged_"+le)),bt=(0,ls.switchCoefValue)(bt,le)}return bt})),vt.layers}_applyPanoramaxFiltersOnLayers(vt){const bt=this.panoramaxFilters;return vt.forEach((vt=>{var le,ho,Dl,Fl;const sc=vt.id.endsWith("_pictures"),uc=vt.id.endsWith("_sequences")||vt.id.endsWith("_sequences_plus");if(!sc&&!uc)return;let mc=[];if(bt.minDate&&""!==bt.minDate&&(sc?mc.push([">=",["get","ts"],bt.minDate]):uc&&mc.push([">=",["get","date"],bt.minDate])),bt.maxDate&&""!==bt.maxDate&&(uc&&mc.push(["<=",["get","date"],bt.maxDate]),sc)){let vt=new Date(bt.maxDate);vt.setDate(vt.getDate()+1),vt=vt.toISOString().split("T")[0],mc.push(["<=",["get","ts"],vt])}bt.pic_type&&""!==bt.pic_type&&(bt.pic_type="flat"===bt.pic_type?"flat":"equirectangular",(uc||sc)&&mc.push(["==",["get","type"],bt.pic_type])),bt.qualityscore&&bt.qualityscore.length>0&&(uc||sc)&&mc.push(["in",ls.MAP_EXPR_QUALITYSCORE,["literal",bt.qualityscore]]),bt.gps&&bt.gps.length>0&&(uc||sc)&&mc.push(["in",ls.MAP_EXPR_QUALITYSCORE_GPS,["literal",bt.gps]]),sc&&null!==(le=bt.featuresRestrictions)&&void 0!==le&&le.pictures&&(null===(ho=bt.featuresRestrictions.pictures.features)||void 0===ho?void 0:ho.length)>=0&&("keep"===bt.featuresRestrictions.pictures.rule?mc.push(["in",["get","id"],["literal",bt.featuresRestrictions.pictures.features]]):bt.featuresRestrictions.pictures.features.length>0&&mc.push(["!",["in",["get","id"],["literal",bt.featuresRestrictions.pictures.features]]])),uc&&null!==(Dl=bt.featuresRestrictions)&&void 0!==Dl&&Dl.sequences&&(null===(Fl=bt.featuresRestrictions.sequences.features)||void 0===Fl?void 0:Fl.length)>=0&&("keep"===bt.featuresRestrictions.sequences.rule?mc.push(["in",["get","id"],["literal",bt.featuresRestrictions.sequences.features]]):bt.featuresRestrictions.sequences.features.length>0&&mc.push(["!",["in",["get","id"],["literal",bt.featuresRestrictions.sequences.features]]])),0==mc.length?mc=["literal",!0]:(mc.unshift("all"),sc&&(mc=["step",["zoom"],!0,ls.TILES_PICTURES_ZOOM,mc])),mc&&(vt.filter=mc)})),vt}}},1435:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PanoraMapProtocol});var ls=le(99),ho=le(8293),Dl=le(8552);class PanoraMapProtocol{tile(){return(vt,bt)=>{bt=bt||new AbortController;const le=vt.url.replace(/^panora/,"http");return fetch(le,{signal:bt.signal}).then((vt=>vt.arrayBuffer())).then((vt=>new ho.cW(new ls.A(vt)))).then((vt=>(!vt.layers.pictures||vt.layers.pictures.length>=5e3||Object.values(vt.layers).forEach((vt=>{const bt=vt.feature.bind(vt);vt.feature=vt=>{const le=bt(vt);return le.properties.uncrowded=!0,le}})),vt))).then((vt=>(0,Dl.bL)(vt).buffer)).then((vt=>({data:vt})))}}}},3727:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PhotoAdapter});var ls=le(3890);class PhotoAdapter extends ls.D{constructor(vt,bt){super(vt,bt),this._shouldGoFast=bt.shouldGoFast||(()=>!0)}loadTexture(vt,bt){return vt.origBaseUrl?vt.baseUrl=vt.origBaseUrl:vt.origBaseUrl=vt.baseUrl,this._shouldGoFast()&&vt.thumbUrl&&!vt.hdLoaded&&1==vt.rows&&(vt.baseUrl=vt.thumbUrl),super.loadTexture(vt,bt).then((bt=>(vt.baseUrl===vt.origBaseUrl&&(vt.hdLoaded=!0),bt))).catch((vt=>{console.error("Can't load texture",vt)}))}__loadTiles(vt){this._shouldGoFast()||super.__loadTiles(vt)}}},4207:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>PresetManager});var ls=le(7208);const ho={fas:"fa7-solid"},Dl={};class PresetManager{constructor(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._ready=!1,this._presets=null,this._translations={},bt||this._load(vt)}async _load(vt){var bt,le;vt=(null===(bt=vt)||void 0===bt?void 0:bt.substring(0,2))||(null===(le=window.navigator.languages[0])||void 0===le?void 0:le.substring(0,2));try{var Fl,sc;const[bt,le,gc]=await Promise.all([fetch("".concat((0,ls.PanoramaxPresetsURL)(),"/translations/en.min.json")),vt?fetch("".concat((0,ls.PanoramaxPresetsURL)(),"/translations/").concat(vt,".min.json")):Promise.resolve({ok:!0}),fetch("".concat((0,ls.PanoramaxPresetsURL)(),"/presets.min.json"))]);if(!bt||!le||!gc||!bt.ok||!le.ok||!gc.ok)throw this._ready=-1,new Error("Presets service is not available");var uc,mc;if(this._presets=await gc.json(),this._translations.en=null===(Fl=await bt.json())||void 0===Fl||null===(sc=Fl.en)||void 0===sc?void 0:sc.presets,vt)this._translations[vt]=null===(uc=await le.json())||void 0===uc||null===(mc=uc[vt])||void 0===mc?void 0:mc.presets;Object.entries(this._presets).forEach((bt=>{var le,ls,Fl,sc,uc,mc;let[gc,Ac]=bt;if(null!==(le=this._translations[vt])&&void 0!==le&&null!==(ls=le.presets)&&void 0!==ls&&null!==(Fl=ls[gc])&&void 0!==Fl&&Fl.name?Ac.name=this._translations[vt].presets[gc].name:null!==(sc=this._translations.en)&&void 0!==sc&&null!==(uc=sc.presets)&&void 0!==uc&&null!==(mc=uc[gc])&&void 0!==mc&&mc.name&&(Ac.name=this._translations.en.presets[gc].name),Ac.icon){const vt=Ac.icon.split("-")[0],bt=ho[vt];Ac.iconify=bt?Ac.icon.replace(vt+"-",bt+":"):Ac.icon.split("-")[0]+":"+Ac.icon.split("-").slice(1).join("-"),Dl[Ac.iconify]&&(Ac.iconify=Dl[Ac.iconify])}})),this._ready=!0}catch(gc){console.error("Presets service throws an error:",gc),this._ready=-1}}async onceReady(){return this._ready?-1===this._ready?Promise.reject():Promise.resolve():(await new Promise((vt=>setTimeout(vt,250))),this.onceReady())}async getPreset(vt){return this.getPresets(vt).then((vt=>vt.shift()))}async getPresets(vt){return this.onceReady().then((()=>{const bt=Object.values(this._presets).filter((bt=>{if(0===Object.keys(bt.tags).length)return!1;for(let le in bt.tags){const ls=bt.tags[le];if(!vt.semantics.find((vt=>"delete"!==vt.action&&vt.key===le&&("*"===ls||ls===vt.value))))return!1}return!0}));return bt.sort(((vt,bt)=>{const le=Object.keys(vt.tags).length,ls=Object.keys(bt.tags).length;if(le>ls)return-1;if(le===ls){const le=Object.values(vt.tags).filter((vt=>"*"===vt)).length,ls=Object.values(bt.tags).filter((vt=>"*"===vt)).length;return le<ls?-1:le>ls?1:0}return 1})),bt}))}}},4005:(vt,bt,le)=>{"use strict";le.d(bt,{Ay:()=>SemanticsMapProtocol,lU:()=>Dl,nu:()=>Fl});var ls=le(2964),ho=le(8552);const Dl=15,Fl=19,sc={15:100,16:300,17:500,18:800,19:1e3};class SemanticsMapProtocol{constructor(vt){this.tiles=new Map,this._parent=vt}clearCache(){this.tiles=new Map}_tileToBbox(vt,bt,le){const ls=Math.pow(2,le),ho=vt/ls*360-180,Dl=(vt+1)/ls*360-180,Fl=180*Math.atan(Math.sinh(Math.PI*(1-2*bt/ls)))/Math.PI;return[ho,180*Math.atan(Math.sinh(Math.PI*(1-2*(bt+1)/ls)))/Math.PI,Dl,Fl]}_semanticsToBasicProps(vt){var bt,le,ls,ho;const Dl={},setOrAppend=vt=>{Dl[vt.key]?Dl[vt.key].add(vt.value):Dl[vt.key]=new Set([vt.value])};return((null===(bt=vt.properties)||void 0===bt||null===(le=bt.collection)||void 0===le?void 0:le.semantics)||[]).forEach(setOrAppend),((null===(ls=vt.properties)||void 0===ls?void 0:ls.semantics)||[]).forEach(setOrAppend),((null===(ho=vt.properties)||void 0===ho?void 0:ho.annotations)||[]).forEach((vt=>vt.semantics.forEach(setOrAppend))),Object.keys(Dl).forEach((vt=>Dl[vt]=[...Dl[vt]].join(";"))),Dl.picid=vt.id,Dl.seqid=vt.collection,Dl}tile(){return async(vt,bt)=>{bt=bt||new AbortController;const le=vt.url.match(/^sem:\/\/\/(.+)\/(\d+)\/(\d+)\/(\d+)/);if(!le)throw new Error("Invalid URL");if(this.tiles.has(vt.url))return{data:this.tiles.get(vt.url).buffer.slice(0)};const[uc,mc,gc,Ac,Ec]=le,kc=this._tileToBbox(parseInt(Ac),parseInt(Ec),parseInt(gc)),du="".concat(this._parent.getAPI()._endpoint,"/search?bbox=").concat(kc.join(","),"&limit=").concat(sc[parseInt(gc)],"&sortby=id&filter=").concat(encodeURIComponent(mc));return fetch(du,{signal:bt.signal}).then((vt=>vt.json())).then((bt=>{if(bt.features){if(bt.type="FeatureCollection",0===bt.features.length){const bt=new Uint8Array;return this.tiles.set(vt.url,bt),{data:bt.buffer.slice(0)}}bt.features=bt.features.map((vt=>({type:vt.type,geometry:vt.geometry,id:vt.id,properties:this._semanticsToBasicProps(vt)})))}const le=(0,ls.A)(bt,{minZoom:Dl,maxZoom:Fl}).getTile(gc,Ac,Ec);if(!le)throw new Error("Can't create tile");const sc=(0,ho.O7)({layer:le},{version:2});return this.tiles.set(vt.url,sc),{data:sc.buffer.slice(0)}}))}}}},4451:(vt,bt,le)=>{"use strict";le.d(bt,{A:()=>URLHandler});var ls=le(2118);const ho=["speed","nav","focus","pic","xyz","map","background","users","s","xywh","annot","seq","overlay","level"].concat(Object.values(ls.Qm)),Dl=["focus-changed","pictures-navigation-changed"],Fl=["position-updated","zoom-updated","view-rotated","picture-loaded","transition-duration-changed","annotation-focused","annotations-unfocused"],sc=["moveend","zoomend","boxzoomend","styledata"],uc=["filters-changed","theme-changed","panoramax-changed","basemap-changed"];class URLHandler extends EventTarget{constructor(vt){super(),this._parent=vt,this._delay=null}listenToChanges(){var vt;(window.addEventListener("popstate",this._onURLChange.bind(this),!1),Dl.forEach((vt=>this._parent.addEventListener(vt,this._onParentChange.bind(this)))),Fl.forEach((vt=>this._parent.psv.addEventListener(vt,this._onParentChange.bind(this)))),this._parent.map)&&(sc.forEach((vt=>this._parent.map.on(vt,this._onParentChange.bind(this)))),uc.forEach((vt=>this._parent.mapStyleComposer.addEventListener(vt,this._onParentChange.bind(this)))),null===(vt=this._parent.map.indoorEqual)||void 0===vt||vt.on("levelchange",this._onParentChange.bind(this)))}destroy(){window.removeEventListener("popstate",this._onURLChange)}nextURLParams(){var vt;let bt={};"number"==typeof this._parent.psv.getTransitionDuration()&&(bt.speed=this._parent.psv.getTransitionDuration()),[null,"any"].includes(this._parent.psv.getPicturesNavigation())||(bt.nav=this._parent.psv.getPicturesNavigation()),this._parent.psv.getPictureId()&&(bt.pic=this._parent.psv.getPictureId());const le=this._parent.psv.getPictureMetadata();var ho;le&&(bt.xyz=this.currentPSVString(),null!==(ho=le.sequence)&&void 0!==ho&&ho.id&&(bt.seq=le.sequence.id));const Dl=this._parent.psv.getSelectedAnnotations();if((null===Dl||void 0===Dl?void 0:Dl.length)>0&&(bt.annot=Dl[0]),null!==(vt=this._parent.map)&&void 0!==vt&&vt.loaded){var Fl,sc,uc,mc,gc,Ac;if(bt.map=this.currentMapString(),bt.focus="pic",this._parent.isMapWide()&&(bt.focus="map"),null!==(Fl=this._parent.mapStyleComposer)&&void 0!==Fl&&null!==(sc=Fl.hasManyBasemaps)&&void 0!==sc&&sc.call(Fl)&&null!==(uc=this._parent.mapStyleComposer)&&void 0!==uc&&uc.basemap&&(bt.background=this._parent.mapStyleComposer.basemap),null!==(mc=this._parent.mapStyleComposer)&&void 0!==mc&&mc.panoramax&&(bt.users=this._parent.mapStyleComposer.panoramax),this._parent.mapStyleComposer.panoramaxFilters){for(let vt in ls.Qm)this._parent.mapStyleComposer.panoramaxFilters[vt]&&(bt[ls.Qm[vt]]=this._parent.mapStyleComposer.panoramaxFilters[vt]);if(bt.pic_score)if(Array.isArray(bt.pic_score)||(bt.pic_score=bt.pic_score.split(",")),5===bt.pic_score.length)delete bt.pic_score;else{const vt=[null,"E","D","C","B","A"];bt.pic_score=bt.pic_score.map((bt=>vt[bt])).join("")}Array.isArray(bt.gps)&&5===bt.gps.length&&delete bt.gps}if(null!==(gc=this._parent.map)&&void 0!==gc&&gc.getSemanticOverlays){const vt=this._parent.map.getSemanticOverlays().filter((vt=>this._parent.mapStyleComposer.dataOverlays.has(vt.source))).map((vt=>vt.id));vt.length>0&&(bt.overlay=vt.join(","))}null!==(Ac=this._parent.map)&&void 0!==Ac&&Ac.indoorEqual&&(bt.level=this._parent.map.indoorEqual.level)}return bt}nextURLString(){let vt="";return Object.entries(this.nextURLParams()).sort(((vt,bt)=>vt[0].localeCompare(bt[0]))).forEach((bt=>{let[le,ls]=bt,ho=!1;const Dl=vt.split("&").map((vt=>{const bt=vt.split("=")[0];return bt===le?(ho=!0,"".concat(bt,"=").concat(ls)):vt})).filter((vt=>vt));ho||Dl.push("".concat(le,"=").concat(ls)),vt="".concat(Dl.join("&"))})),"?".concat(vt).replace(/^\?+/,"?")}currentURLParams(){const vt=(arguments.length>0&&void 0!==arguments[0]&&arguments[0]?window.location.hash:window.location.search).replace(/^[?#]/,"").replace(/&amp;/g,"&");let bt={};if(vt.split("&").map((vt=>vt.split("="))).filter((vt=>void 0!==vt[0]&&vt[0].length>0&&ho.includes(vt[0]))).forEach((vt=>{bt[vt[0]]=vt[1]})),bt.s){const vt=Object.fromEntries(decodeURIComponent(bt.s).split(";").map((vt=>[vt[0],vt.substring(1)])));bt={},"m"===vt.f?bt.focus="map":"p"===vt.f?bt.focus="pic":"t"===vt.f&&(bt.focus="meta"),""!==vt.s&&(bt.speed=100*parseFloat(vt.s)),"a"===vt.n?bt.nav="any":"s"===vt.n&&(bt.nav="seq"),["n","p"].includes(vt.n)&&(bt.nav="pic"),""!==vt.p&&(bt.pic=vt.p),""!==vt.a&&(bt.annot=vt.a),""!==vt.c&&(bt.xyz=vt.c),""!==vt.m&&(bt.map=vt.m),""!==vt.d&&(bt.date_from=vt.d),""!==vt.e&&(bt.date_to=vt.e),"f"===vt.t?bt.pic_type="flat":"e"===vt.t&&(bt.pic_type="equirectangular"),""!==vt.k&&(bt.camera=vt.k),"d"===vt.v?bt.theme="default":"a"===vt.v?bt.theme="age":"t"===vt.v?bt.theme="type":"s"===vt.v?bt.theme="score":"g"===vt.v&&(bt.theme="gps"),"s"===vt.b?bt.background="streets":"a"===vt.b&&(bt.background="aerial"),""!==vt.u&&(bt.users=vt.u),""!==vt.q&&(bt.pic_score=vt.q),""!==vt.g&&(bt.gps=vt.g),""!==vt.o&&(bt.overlay=vt.o),""!==vt.l&&(bt.level=vt.l)}return bt}currentMapString(){var vt;if(null===(vt=this._parent.map)||void 0===vt||!vt.loaded)return"";const bt=this._parent.map.getCenter(),le=Math.round(100*this._parent.map.getZoom())/100,ls=Math.ceil((le*Math.LN2+Math.log(512/360/.5))/Math.LN10),ho=Math.pow(10,ls),Dl=Math.round(bt.lng*ho)/ho,Fl=Math.round(bt.lat*ho)/ho,sc=this._parent.map.getBearing(),uc=this._parent.map.getPitch();let mc="".concat(le,"/").concat(Fl,"/").concat(Dl);return(sc||uc)&&(mc+="/".concat(Math.round(10*sc)/10)),uc&&(mc+="/".concat(Math.round(uc))),mc}currentPSVString(){const vt=this._parent.psv.getXYZ(),bt=vt.x.toFixed(2),le=vt.y.toFixed(2),ls=Math.round(vt.z||0);return"".concat(bt,"/").concat(le,"/").concat(ls)}_onURLChange(){let vt=this.currentURLParams();"Viewer"===this._parent.getClassName()?(0,ls.iz)(this._parent,vt):(0,ls.ai)(this._parent,vt),(0,ls.Vy)(this._parent.psv,vt),this._parent.map&&(0,ls.mK)(this._parent.map,vt)}nextShortLink(vt){const bt=new URL(vt),le=this.nextURLParams(),ls={f:(le.focus||"").substring(0,1),s:isNaN(parseInt(le.speed))?void 0:Math.floor(parseInt(le.speed)/100),n:(le.nav||"").substring(0,1),p:le.pic,c:le.xyz,m:le.map,d:le.date_from,e:le.date_to,t:(le.pic_type||"").substring(0,1),k:le.camera,v:(le.theme||"").substring(0,1),b:(le.background||"").substring(0,1),u:le.users,q:le.pic_score,a:le.annot,g:le.gps,o:le.overlay,l:le.level},ho=Object.entries(ls).filter((vt=>{let[,bt]=vt;return void 0!=bt&&""!=bt})).map((vt=>{let[bt,le]=vt;return"".concat(bt).concat(le)})).join(";");return bt.search="s=".concat(ho),bt}getUnmanagedParameters(vt){return new URLSearchParams(Array.from(vt.searchParams).filter((vt=>{let[bt]=vt;return!ho.includes(bt)}))).toString()}_onParentChange(){this._delay&&(clearTimeout(this._delay),this._delay=null),this._delay=setTimeout((()=>{var vt,bt,le;const ls=new URL(window.location.href),ho=new URL(window.location.href),Dl=this.getUnmanagedParameters(ls);if(ho.search=this._parent?this.nextURLString()+(Dl.length>0?"&"+Dl:""):"",Object.keys(this.currentURLParams(!0)).length>0&&(ho.hash=""),ls.search==ho.search)return;const Fl=this.currentURLParams().pic||"",sc=(null===(vt=this._parent)||void 0===vt||null===(bt=vt.psv)||void 0===bt||null===(le=bt.getPictureId)||void 0===le?void 0:le.call(bt))||"";try{if(Fl!=sc?window.history.pushState(window.history.state,null,ho.href):window.history.replaceState(window.history.state,null,ho.href),this._parent){const vt=new CustomEvent("url-changed",{detail:{url:ho.href}});this.dispatchEvent(vt)}}catch(uc){}}),500)}}},3606:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{forwardGeocodingBAN:()=>forwardGeocodingBAN,forwardGeocodingNominatim:()=>forwardGeocodingNominatim,forwardGeocodingStandard:()=>forwardGeocodingStandard,reverseGeocodingNominatim:()=>reverseGeocodingNominatim});var ls=le(7208);const ho={house:20,housenumber:20,street:18,locality:15,district:13,municipality:12,city:12,county:8,region:7,state:7,country:5};function geocoderParamsToURLString(vt){let bt={};return Object.entries(vt).filter((vt=>void 0!==vt[1]&&null!==vt[1])).forEach((vt=>bt[vt[0]]=vt[1])),new URLSearchParams(bt).toString()}function forwardGeocodingNominatim(vt){const bt={q:vt.query,countrycodes:vt.countries,limit:vt.limit,viewbox:vt.bbox};return fetch("".concat((0,ls.NominatimBaseUrl)(),"/search?").concat(geocoderParamsToURLString(bt),"&format=geocodejson&addressdetails=1")).then((vt=>vt.json())).then((vt=>{const bt={features:[]},le=[];return(vt.features||[]).forEach((vt=>{var ls,Dl,Fl;const sc=geocodeJsonToPlaceName(null===(ls=vt.properties)||void 0===ls?void 0:ls.geocoding)||(null===(Dl=vt.properties)||void 0===Dl||null===(Fl=Dl.geocoding)||void 0===Fl?void 0:Fl.label);var uc,mc;le.includes(sc)||(bt.features.push({place_type:["place"],place_name:sc,center:vt.geometry.coordinates,zoom:ho[null===(uc=vt.properties)||void 0===uc||null===(mc=uc.geocoding)||void 0===mc?void 0:mc.type]}),le.push(sc))})),bt}))}function reverseGeocodingNominatim(vt,bt){return fetch("".concat((0,ls.NominatimBaseUrl)(),"/reverse?lat=").concat(vt,"&lon=").concat(bt,"&zoom=18&format=geocodejson")).then((vt=>vt.json())).then((vt=>{var bt,le,ls;return geocodeJsonToPlaceName(null===vt||void 0===vt||null===(bt=vt.features)||void 0===bt||null===(le=bt.shift())||void 0===le||null===(ls=le.properties)||void 0===ls?void 0:ls.geocoding)}))}function forwardGeocodingBAN(vt){return forwardGeocodingStandard(vt,(0,ls.AdresseDataGouvBaseURL)())}function geocodeJsonToPlaceName(vt){if(!vt||"object"!=typeof vt)return"";let bt=vt.name,le=[],ls=[];switch(vt.type){case"hamlet":case"croft":case"isolated_dwelling":case"neighbourhood":case"allotments":case"quarter":case"farm":case"farmyard":case"industrial":case"commercial":case"retail":case"city_block":case"residential":case"locality":case"district":ls.push(vt.city),ls.push(vt.county),ls.push(vt.state),ls.push(vt.country);break;case"city":case"region":ls.push(vt.county),ls.push(vt.state),ls.push(vt.country);break;case"country":break;case"house":case"housenumber":le.push(vt.housenumber),le.push(vt.street),le.push(vt.locality),le.push(vt.district),ls.push(vt.city),ls.push(vt.county),ls.push(vt.state),ls.push(vt.country);break;default:le.push(vt.street),le.push(vt.locality),le.push(vt.district),ls.push(vt.city),ls.push(vt.county),ls.push(vt.state),ls.push(vt.country)}return le=le.filter((vt=>vt)),le=le.filter(((vt,ls)=>vt!=bt&&(0===ls||le[ls-1]!==vt))),le=le.length>0?vt.housenumber?le.slice(0,2).join(" "):le.shift():null,le===bt&&(le=null),ls=ls.filter((vt=>vt)),ls=ls.filter(((vt,ho)=>vt!=bt&&(!le||!le.includes(vt))&&(0===ho||ls[ho-1]!==vt))),[bt,le,ls.shift()].filter((vt=>vt)).join(", ")}function forwardGeocodingStandard(vt,bt){const le={q:vt.query,limit:vt.limit};if("string"===typeof vt.proximity){const[bt,ls]=vt.proximity.split(",").map((vt=>parseFloat(vt.trim())));le.lat=bt,le.lon=ls}return fetch("".concat(bt,"/?").concat(geocoderParamsToURLString(le))).then((vt=>vt.json())).then((vt=>{const bt={features:[]},le=[];return(vt.features||[]).forEach((vt=>{const ls=geocodeJsonToPlaceName(vt.properties);le.includes(ls)||"other"==vt.properties.type||(bt.features.push({place_type:["place"],place_name:ls,center:vt.geometry.coordinates,zoom:ho[vt.properties.type]}),le.push(ls))})),bt}))}},4964:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{autoDetectLocale:()=>autoDetectLocale,getBestLabel:()=>getBestLabel,getTranslations:()=>getTranslations});var ls=le(3087),ho=le(4149),Dl=le(369),Fl=le(389),sc=le(9946),uc=le(8302),mc=le(5222),gc=le(6909),Ac=le(4895),Ec=le(3979),kc=le(6920),du=le(9026),_u=le(8010),Md=le(6611),Ld=le(991),Nd=le(7304),Rd=le(8230),Od=le(6984);const jd="en",Ud={be:ls,da:ho,de:Dl,eo:sc,en:Fl,es:uc,fr:mc,hu:gc,it:Ac,ja:Ec,nl:kc,pl:du,pt:_u,"pt-br":Md,sv:Ld,tr:Nd,uk:Rd,"zh-hant":Od,zh:Od};function autoDetectLocale(vt,bt){vt=vt.map((vt=>vt.toLowerCase()));for(const le of window.navigator.languages){let bt=le.toLowerCase();switch(bt){case"zh-tw":case"zh-hk":case"zh-mo":bt="zh-hant";break;case"zh-cn":case"zh-sg":bt="zh-hans";break;default:bt.length>2&&!vt.includes(bt)&&(bt=le.substring(0,2))}const ls=vt.find((vt=>vt===bt));if(ls)return ls}return bt}function getTranslations(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const bt=JSON.parse(JSON.stringify(Fl));let le;if(vt||(vt=autoDetectLocale(Object.keys(Ud),jd)),Ud[vt]&&"en"!==vt&&(le=Ud[vt]),vt.length>2){const bt=vt.substring(0,2);Ud[bt]&&(le=Ud[bt])}return le&&Object.entries(le).forEach((vt=>{let[le,ls]=vt;Object.entries(ls).forEach((vt=>{let[ls,ho]=vt;Array.isArray(ho)&&(ho=ho.filter((vt=>null!=vt))),bt[le][ls]=ho}))})),bt.PREF_LANG=vt,bt}function getBestLabel(vt,bt){return bt=bt?bt.toLowerCase():null,vt=Object.fromEntries(Object.entries(vt).map((vt=>{let[bt,le]=vt;return[bt.toLowerCase(),le]}))),bt||(bt=autoDetectLocale(Object.keys(vt),jd)),vt[bt]?vt[bt]:bt.length>2&&vt[bt.substring(0,2)]?vt[bt.substring(0,2)]:vt[jd]||""}},2030:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{API:()=>Ec.A,InitParameters:()=>kc.Ay,MapStyleComposer:()=>du.A,PhotoAdapter:()=>_u.A,PresetsManager:()=>Md.A,URLHandler:()=>Ld.A,geocoder:()=>ls,i18n:()=>ho,indoor:()=>Dl,map:()=>Fl,picture:()=>sc,semantics:()=>uc,services:()=>mc,utils:()=>gc,widgets:()=>Ac});var ls=le(3606),ho=le(4964),Dl=le(5195),Fl=le(8340),sc=le(508),uc=le(2283),mc=le(7208),gc=le(7343),Ac=le(5995),Ec=le(5254),kc=le(2118),du=le(4997),_u=le(3727),Md=le(4207),Ld=le(4451)},5195:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{DISABLED_LEVEL:()=>Dl,initIndoorEqualOnMap:()=>initIndoorEqualOnMap,isIndoorEqualAvailable:()=>isIndoorEqualAvailable});var ls=le(7208),ho=le(5995);const Dl="-1000",Fl="levels";function isIndoorEqualAvailable(){try{return IndoorEqual,!0}catch(vt){return!1}}function initIndoorEqualOnMap(vt){let bt=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(vt._options.indoor)if(isIndoorEqualAvailable()){if(!bt&&!1===vt._options.indoor.visible)return;vt.indoorEqual=new IndoorEqual(vt,vt._options.indoor),vt.addControl(vt.indoorEqual),vt.indoorEqual.loadSprite((0,ls.IndoorEqualSpritesURL)()),vt.indoorEqual._refreshAfterLevelsUpdate=function(){this.levels.includes(this.level)||this.level==Dl||this.setLevel("0")};const le="sem-"+Fl;vt.indoorEqual._updateLevels=function(){if(this.map.isSourceLoaded(this.source.sourceId)&&this.map.isSourceLoaded(le)){let vt=new Set;this.map.querySourceFeatures(this.source.sourceId,{sourceLayer:"area"}).forEach((bt=>{"level"!==bt.properties.class&&void 0!==bt.properties.level&&vt.add(bt.properties.level.toString())})),this.map.querySourceFeatures(le,{sourceLayer:"layer"}).forEach((bt=>{void 0!==bt.properties["osm|level"]&&vt.add(bt.properties["osm|level"].toString())})),vt.size>0&&vt.add("0"),0!==vt.symmetricDifference(new Set(this.levels)).size&&(this.levels=[...vt].sort(((vt,bt)=>parseFloat(vt)-parseFloat(bt))).reverse(),this._emitLevelsChange(),this._refreshAfterLevelsUpdate())}},vt._indoorFeaturesIDs={pictures:{},sequences:{}},vt.on("sourcedata",Fl,(bt=>{bt.sourceId===le&&(bt.features.forEach((bt=>{vt._indoorFeaturesIDs.pictures[bt.properties["osm|level"]]||(vt._indoorFeaturesIDs.pictures[bt.properties["osm|level"]]=new Set),vt._indoorFeaturesIDs.sequences[bt.properties["osm|level"]]||(vt._indoorFeaturesIDs.sequences[bt.properties["osm|level"]]=new Set),vt._indoorFeaturesIDs.pictures[bt.properties["osm|level"]].add(bt.properties.picid),vt._indoorFeaturesIDs.sequences[bt.properties["osm|level"]].add(bt.properties.seqid)})),updateIndoorLevelFilteringThrottled())}));const postMapLoad=()=>{var le,ls,ho,sc,uc;if(null===(le=vt.addSemanticOverlay)||void 0===le||le.call(vt,Fl,'"semantics.osm|level" IS NOT NULL',{type:"circle",layout:{visibility:"visible"},paint:{"circle-opacity":0}}),bt&&(null===(ls=vt._parent._initParams)||void 0===ls||null===(ho=ls.getMapPostInit())||void 0===ho?void 0:ho.level)===Dl)vt.indoorEqual.setLevel("0");else if(![null,void 0,""].includes(null===(sc=vt._parent._initParams)||void 0===sc||null===(uc=sc.getMapPostInit())||void 0===uc?void 0:uc.level)){var mc,gc;vt.indoorEqual.setLevel(null===(mc=vt._parent._initParams)||void 0===mc||null===(gc=mc.getMapPostInit())||void 0===gc?void 0:gc.level)}};if(vt.isStyleLoaded())postMapLoad();else{const bt=setInterval((()=>{vt.isStyleLoaded()&&(postMapLoad(),clearInterval(bt))}),250)}let sc;vt._parent.grid.appendChild((0,ho.createWebComp)("pnx-level-select",{slot:"bottom-right",_parent:vt._parent,class:"pnx-only-map pnx-print-hidden"}));const updateIndoorLevelFiltering=()=>{if(vt.indoorEqual.level===Dl)vt.restrictVisibleFeatures("hide","pictures",[]),vt.restrictVisibleFeatures("hide","sequences",[]);else if("0"===vt.indoorEqual.level){const bt=new Set;Object.entries(vt._indoorFeaturesIDs.pictures).forEach((vt=>{let[le,ls]=vt;"0"!=le&&ls.forEach((vt=>bt.add(vt)))})),vt.restrictVisibleFeatures("hide","pictures",[...bt]);let le=new Set;Object.entries(vt._indoorFeaturesIDs.sequences).forEach((vt=>{let[bt,ls]=vt;"0"!=bt&&(le=le.union(ls))})),vt._indoorFeaturesIDs.sequences[0]&&(le=le.difference(vt._indoorFeaturesIDs.sequences[0])),vt.restrictVisibleFeatures("hide","sequences",[...le])}else vt.restrictVisibleFeatures("keep","pictures",vt._indoorFeaturesIDs.pictures[vt.indoorEqual.level]?[...vt._indoorFeaturesIDs.pictures[vt.indoorEqual.level]]:[]),vt.restrictVisibleFeatures("keep","sequences",vt._indoorFeaturesIDs.sequences[vt.indoorEqual.level]?[...vt._indoorFeaturesIDs.sequences[vt.indoorEqual.level]]:[])},updateIndoorLevelFilteringThrottled=()=>{sc&&(clearTimeout(sc),sc=void 0),sc=setTimeout(updateIndoorLevelFiltering,250)};vt.indoorEqual.on("levelchange",updateIndoorLevelFilteringThrottled)}else console.error("The indoor= plugin is not enabled. Please add the maplibre-gl-indoorequal before calling 'indoor' option of Panoramax Viewer.")}},8340:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{MAP_EXPR_QUALITYSCORE:()=>_u,MAP_EXPR_QUALITYSCORE_GPS:()=>du,MAP_THEMES_STYLES:()=>jd,RASTER_LAYER_ID:()=>Fl,TILES_PICTURES_SYMBOL_ZOOM:()=>uc,TILES_PICTURES_ZOOM:()=>sc,VECTOR_STYLES:()=>Ac,VECTOR_STYLES_NOCROWD:()=>Ec,getMapParamsFromLocalStorage:()=>getMapParamsFromLocalStorage,getPanoramaxLayers:()=>getPanoramaxLayers,getThumbGif:()=>getThumbGif,hasStyleLoggedGridStats:()=>hasStyleLoggedGridStats,initMapKeyboardHandler:()=>initMapKeyboardHandler,isLabelLayer:()=>isLabelLayer,isNullCoordinates:()=>isNullCoordinates,isPanoramaxEndpointSingleUser:()=>isPanoramaxEndpointSingleUser,linkMapAndPhoto:()=>linkMapAndPhoto,mapFiltersFormValues:()=>mapFiltersFormValues,mapFiltersToLayersFilters:()=>mapFiltersToLayersFilters,saveMapParamsToLocalStorage:()=>saveMapParamsToLocalStorage,switchCoefValue:()=>switchCoefValue});var ls=le(9379),ho=le(6883),Dl=le(7343);const Fl="pnx-aerial",sc=15,uc=19,mc=["!",["has","uncrowded"]],gc=["==",["get","type"],"equirectangular"];function getVectorStyles(vt){return{PICTURES:{paint:{"circle-radius":["interpolate",["linear"],["zoom"],sc,0,sc+.5,vt?1:["case",mc,0,1],sc+1.5,vt?2:["case",mc,0,2],sc+2,vt?4:["case",mc,1,4],sc+3,vt?5:["case",mc,3,5],sc+5,vt?7:["case",mc,5,7],sc+7,vt?7:["case",mc,7,7]],"circle-opacity":["interpolate",["linear"],["zoom"],sc,0,sc+.5,vt?1:["case",mc,0,1],sc+1.5,vt?1:["case",mc,0,1],sc+2,1],"circle-stroke-opacity":["case",["all",mc,gc],.2,gc,.4,0],"circle-stroke-width":["interpolate",["linear"],["zoom"],sc+2.5,0,sc+3.5,vt?["case",gc,10,2]:["case",["all",mc,gc],0,gc,10,mc,0,2],sc+4.5,vt?["case",gc,10,2]:["case",["all",mc,gc],10,gc,10,mc,0,2]]},layout:{}},SEQUENCES:{paint:{"line-width":["interpolate",["linear"],["zoom"],0,.5,10,1.5,sc-.5,1.5,sc+.5,vt?2:["case",mc,.5,2],22,vt?4:["case",mc,1,4]]},layout:{"line-cap":"square"}},SEQUENCES_PLUS:{paint:{"line-width":["interpolate",["linear"],["zoom"],0,15,sc+1,30],"line-opacity":0,"line-color":"#ff0000"},layout:{"line-cap":"square"}},GRID:{layout:{"circle-sort-key":["get","coef"]},paint:{"circle-color":["interpolate",["linear"],["get","coef"],0,"#FFA726",.5,"#E65100",1,"#3E2723"],"circle-opacity":["interpolate",["linear"],["zoom"],4,.5,5,1,6.75,1,7,0],"circle-radius":["interpolate",["linear"],["zoom"],1,["match",["get","coef"],0,0,1],5,["match",["get","coef"],0,0,2.5],7,["match",["get","coef"],0,0,7]]}}}}const Ac=getVectorStyles(!1),Ec=getVectorStyles(!0),kc=["case",["==",["get","type"],"equirectangular"],["case",["has","h_pixel_density"],["step",["get","h_pixel_density"],...Dl.QUALITYSCORE_RES_360_VALUES],1],["case",["has","h_pixel_density"],["step",["get","h_pixel_density"],...Dl.QUALITYSCORE_RES_FLAT_VALUES],1]],du=["case",["has","gps_accuracy"],["step",["get","gps_accuracy"],...Dl.QUALITYSCORE_GPS_VALUES],1],_u=["round",["+",["*",kc,Dl.QUALITYSCORE_POND_RES],["*",du,Dl.QUALITYSCORE_POND_GPS]]],Md=864e5,toDate=vt=>new Date(vt).toISOString().split("T")[0],Ld=Date.now(),Nd=toDate(Ld-30*Md),Rd=toDate(Ld-365*Md),Od=toDate(Ld-730*Md),jd={default:{id:"default",sort:[],color:[Dl.COLORS.BASE]},age:{id:"age",sort:[["!",["any",["has","date"],["has","ts"]]],0,[">=",["coalesce",["get","date"],["get","ts"]],Nd],50,[">=",["coalesce",["get","date"],["get","ts"]],Rd],49,[">=",["coalesce",["get","date"],["get","ts"]],Od],48],color:[["!",["any",["has","date"],["has","ts"]]],Dl.COLORS.BASE,[">=",["coalesce",["get","date"],["get","ts"]],Nd],Dl.COLORS.PALETTE_4,[">=",["coalesce",["get","date"],["get","ts"]],Rd],Dl.COLORS.PALETTE_3,[">=",["coalesce",["get","date"],["get","ts"]],Od],Dl.COLORS.PALETTE_2,Dl.COLORS.PALETTE_1]},type:{id:"type",sort:[["!",["has","type"]],0,["==",["get","type"],"equirectangular"],50],color:[["!",["has","type"]],Dl.COLORS.BASE,["==",["get","type"],"equirectangular"],Dl.COLORS.QUALI_1,Dl.COLORS.QUALI_2]},score:{id:"score",sort:[["==",_u,5],80,["==",_u,4],65,["==",_u,3],50,["==",_u,2],35,["==",_u,1],20],color:[["==",_u,5],Dl.QUALITYSCORE_VALUES[0].color,["==",_u,4],Dl.QUALITYSCORE_VALUES[1].color,["==",_u,3],Dl.QUALITYSCORE_VALUES[2].color,["==",_u,2],Dl.QUALITYSCORE_VALUES[3].color,Dl.QUALITYSCORE_VALUES[4].color]},gps:{id:"gps",sort:[["==",du,5],80,["==",du,4],65,["==",du,3],50,["==",du,2],35,["==",du,1],20],color:[["==",du,5],Dl.GPS_VALUES[0].color,["==",du,4],Dl.GPS_VALUES[1].color,["==",du,3],Dl.GPS_VALUES[2].color,["==",du,2],Dl.GPS_VALUES[3].color,Dl.GPS_VALUES[4].color]}};function getThumbGif(vt){const bt=document.createElement("img");return bt.src=ho,bt.alt=vt.loading,bt.title=vt.loading,bt.classList.add("pnx-map-thumb","pnx-map-thumb-loader"),bt}function isNullCoordinates(vt){return null===vt||void 0===vt||Array.isArray(vt)&&(2===vt.length&&0===vt[0]&&0===vt[1]||vt.length<2)}function isLabelLayer(vt){var bt;return"symbol"===vt.type&&void 0!==(null===vt||void 0===vt||null===(bt=vt.layout)||void 0===bt?void 0:bt["text-field"])&&(void 0===vt.minzoom||vt.minzoom<15)}function hasStyleLoggedGridStats(vt){var bt,le,ls,ho;const Dl=(null===vt||void 0===vt||null===(bt=vt.metadata)||void 0===bt?void 0:bt["panoramax:fields"])||{};return(null===Dl||void 0===Dl||null===(le=Dl.grid)||void 0===le?void 0:le.includes("logged_coef_360_pictures"))&&(null===Dl||void 0===Dl||null===(ls=Dl.grid)||void 0===ls?void 0:ls.includes("logged_coef_flat_pictures"))&&(null===Dl||void 0===Dl||null===(ho=Dl.grid)||void 0===ho?void 0:ho.includes("logged_coef"))||!1}function getPanoramaxLayers(vt){var bt,le;const ho=Object.keys(vt.sources)[0],Fl="vector"===vt.sources[ho].type,sc=Fl?Ac:Ec,uc=[{id:"".concat(ho,"_sequences"),type:"line",source:ho,"source-layer":Fl?"sequences":void 0,layout:(0,ls.A)({},sc.SEQUENCES.layout),paint:(0,ls.A)((0,ls.A)({},sc.SEQUENCES.paint),{},{"line-color":Dl.COLORS.BASE})},{id:"".concat(ho,"_sequences_plus"),type:"line",source:ho,"source-layer":Fl?"sequences":void 0,layout:(0,ls.A)({},sc.SEQUENCES_PLUS.layout),paint:(0,ls.A)({},sc.SEQUENCES_PLUS.paint)},{id:"".concat(ho,"_pictures"),type:"circle",source:ho,"source-layer":Fl?"pictures":void 0,layout:(0,ls.A)({},sc.PICTURES.layout),paint:(0,ls.A)((0,ls.A)({},sc.PICTURES.paint),{},{"circle-color":Dl.COLORS.BASE})}];return null!==vt&&void 0!==vt&&null!==(bt=vt.metadata)&&void 0!==bt&&null!==(le=bt["panoramax:fields"])&&void 0!==le&&le.grid&&uc.push({id:"".concat(ho,"_grid"),type:"circle",source:ho,"source-layer":"grid",layout:(0,ls.A)({},sc.GRID.layout),paint:(0,ls.A)({},sc.GRID.paint)}),uc}function mapFiltersFormValues(vt,bt,le){const ls=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-filter-date-from"),ho=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-filter-date-end"),Dl=null===vt||void 0===vt?void 0:vt.shadowRoot.querySelectorAll("input[name='pnx-filter-type']"),Fl=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-pictures-source");let sc="";for(let gc=0;gc<Dl.length;gc++){const vt=Dl[gc];if(vt.checked){sc=vt.value;break}}let uc=[],mc=[];if(le){const bt=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-filter-qualityscore");uc=((null===bt||void 0===bt?void 0:bt.grade)||"").split(",").map((vt=>parseInt(vt))).filter((vt=>!isNaN(vt)));const le=null===vt||void 0===vt?void 0:vt.shadowRoot.getElementById("pnx-filter-gps");mc=((null===le||void 0===le?void 0:le.grade)||"").split(",").map((vt=>parseInt(vt))).filter((vt=>!isNaN(vt)))}return{minDate:null===ls||void 0===ls?void 0:ls.value,maxDate:null===ho||void 0===ho?void 0:ho.value,pic_type:sc,theme:null===bt||void 0===bt?void 0:bt.value,qualityscore:uc,gps:mc,source:null!==Fl&&void 0!==Fl&&Fl.checked?"local":"metacatalog"}}function mapFiltersToLayersFilters(vt){var bt,le;let ls=arguments.length>1&&void 0!==arguments[1]&&arguments[1],ho=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,Dl={},Fl=[],uc=[],mc=!1;if(vt.minDate&&""!==vt.minDate&&(Dl.minDate=vt.minDate,Fl.push([">=",["get","date"],vt.minDate]),uc.push([">=",["get","ts"],vt.minDate])),vt.maxDate&&""!==vt.maxDate){Dl.maxDate=vt.maxDate,Fl.push(["<=",["get","date"],vt.maxDate]);let bt=new Date(vt.maxDate);bt.setDate(bt.getDate()+1),bt=bt.toISOString().split("T")[0],uc.push(["<=",["get","ts"],bt])}if(vt.pic_type&&""!==vt.pic_type&&(Dl.pic_type="flat"===vt.pic_type?"flat":"equirectangular",Fl.push(["==",["get","type"],Dl.pic_type]),uc.push(["==",["get","type"],Dl.pic_type])),ls&&(mc=!0),vt.camera&&""!==vt.camera){Dl.camera=vt.camera;const bt=vt.camera.toLowerCase().trim()+" ",le=vt.camera.toLowerCase().trim()+"zzzzzzzzzzzzzzzzzzzz",ls=["collator",{"case-sensitive":!1,"diacritic-sensitive":!1}];Fl.push([">=",["get","model"],bt,ls]),Fl.push(["<=",["get","model"],le,ls]),uc.push([">=",["get","model"],bt,ls]),uc.push(["<=",["get","model"],le,ls])}return vt.qualityscore&&vt.qualityscore.length>0&&(Dl.qualityscore=vt.qualityscore,Fl.push(["in",_u,["literal",Dl.qualityscore]]),uc.push(["in",_u,["literal",Dl.qualityscore]])),vt.gps&&vt.gps.length>0&&(Dl.gps=vt.gps,Fl.push(["in",du,["literal",Dl.gps]]),uc.push(["in",du,["literal",Dl.gps]])),vt.theme&&jd[vt.theme]&&(Dl.theme=vt.theme,mc=!0),null!==ho&&void 0!==ho&&ho.pictures&&(null===(bt=ho.pictures.features)||void 0===bt?void 0:bt.length)>=0&&("keep"===ho.pictures.rule?uc.push(["in",["get","id"],["literal",ho.pictures.features]]):ho.pictures.features.length>0&&uc.push(["!",["in",["get","id"],["literal",ho.pictures.features]]])),null!==ho&&void 0!==ho&&ho.sequences&&(null===(le=ho.sequences.features)||void 0===le?void 0:le.length)>=0&&("keep"===ho.sequences.rule?Fl.push(["in",["get","id"],["literal",ho.sequences.features]]):ho.sequences.features.length>0&&Fl.push(["!",["in",["get","id"],["literal",ho.sequences.features]]])),0==Fl.length?Fl=null:Fl.unshift("all"),0==uc.length?uc=null:(uc.unshift("all"),uc=["step",["zoom"],!0,sc,uc]),{mapFilters:Dl,mapSeqFilters:Fl,mapPicFilters:uc,reloadMapStyle:mc}}function isPanoramaxEndpointSingleUser(vt){return!["default","metacatalog","",null,void 0].includes(vt)}function switchCoefValue(vt,bt){if(Array.isArray(vt))return vt.map((vt=>switchCoefValue(vt,bt)));if("object"===typeof vt&&null!==vt){const le={};for(const ls in vt)le[ls]=switchCoefValue(vt[ls],bt);return le}return"string"===typeof vt&&(vt.startsWith("coef")||vt.startsWith("logged_coef"))?bt:vt}function linkMapAndPhoto(vt){const onPicLoad=bt=>{var le,ls,ho,Fl,sc,uc;(0,Dl.isNullId)(bt.detail.picId)?(vt.map.displayPictureMarker(),null!==vt&&void 0!==vt&&null!==(le=vt.isMapWide)&&void 0!==le&&le.call(vt)&&(null===vt||void 0===vt||null===(ls=vt.mini)||void 0===ls||ls.setAttribute("collapsed",""))):(vt.map.displayPictureMarker(bt.detail.lon,bt.detail.lat,vt.psv.getXY().x,bt.detail.first&&!isNullCoordinates(null===(ho=vt._initParams)||void 0===ho||null===(Fl=ho.getMapPostInit())||void 0===Fl?void 0:Fl.center),bt.detail.picId),null!==vt&&void 0!==vt&&null!==(sc=vt.isMapWide)&&void 0!==sc&&sc.call(vt)&&(null===vt||void 0===vt||null===(uc=vt.mini)||void 0===uc||uc.removeAttribute("collapsed")))};vt.psv.addEventListener("picture-loading",onPicLoad),vt.psv.addEventListener("picture-loaded",onPicLoad),vt.psv.addEventListener("view-rotated",(()=>{let bt=vt.psv.getPosition().yaw*(180/Math.PI);bt+=vt.psv.getPictureOriginalHeading(),vt.map._picMarker.setRotation(bt)})),vt.psv.addEventListener("picture-preview-started",(bt=>{vt.map._picMarkerPreview.setLngLat(bt.detail.coordinates).setRotation(bt.detail.direction||0).addTo(vt.map)})),vt.psv.addEventListener("picture-preview-stopped",(()=>{vt.map._picMarkerPreview.remove()})),vt.psv.addEventListener("picture-loaded",(bt=>{vt.isWidthSmall()&&vt._picPopup&&bt.detail.picId==vt._picPopup._picId&&vt._picPopup.remove()})),vt.map.on("picture-click",(bt=>{vt.select(bt.seqId,bt.picId),!vt.psv._myVTour.state.currentNode&&null!==vt&&void 0!==vt&&vt._setFocus&&vt._setFocus("pic")})),vt.map.on("sequence-click",(bt=>{var le;((null===(le=vt.getAPI)||void 0===le?void 0:le.call(vt))||vt.api).getPicturesAroundCoordinates(bt.coordinates.lat,bt.coordinates.lng,.01,1,bt.seqId).then((bt=>{var le,ls;(null===bt||void 0===bt||null===(le=bt.features)||void 0===le?void 0:le.length)>0&&(vt.select(null===(ls=bt.features[0])||void 0===ls?void 0:ls.collection,bt.features[0].id),!vt.psv.getPictureMetadata()&&null!==vt&&void 0!==vt&&vt._setFocus&&vt._setFocus("pic"))}))})),vt._setFocus&&(vt.psv.addEventListener("dblclick",(()=>{vt.isMapWide()&&vt._setFocus("pic")})),vt.map.on("dblclick",(()=>{vt.isMapWide()?"any"===vt.psv.getPicturesNavigation()&&vt.select():vt._setFocus("map")})))}function initMapKeyboardHandler(vt){vt.map.keyboard.keydown=function(bt){if(bt.altKey||bt.ctrlKey||bt.metaKey)return;switch(bt.key){case"*":case"5":return void vt.moveCenter();case"PageUp":case"9":return void vt.psv.goToNextPicture();case"PageDown":case"3":return void vt.psv.goToPrevPicture();case"Home":case"7":return bt.stopPropagation(),void vt._toggleFocus();case"End":case"1":return void vt.mini.toggleAttribute("collapsed");case" ":case"0":return void vt.psv.toggleSequencePlaying()}let le=0,ls=0,ho=0,Dl=0,Fl=0;switch(bt.keyCode){case 61:case 107:case 171:case 187:le=1;break;case 189:case 109:case 173:le=-1;break;case 37:case 100:bt.shiftKey?ls=-1:(bt.preventDefault(),Dl=-1);break;case 39:case 102:bt.shiftKey?ls=1:(bt.preventDefault(),Dl=1);break;case 38:case 104:bt.shiftKey?ho=1:(bt.preventDefault(),Fl=-1);break;case 40:case 98:bt.shiftKey?ho=-1:(bt.preventDefault(),Fl=1);break;default:return}return this._rotationDisabled&&(ls=0,ho=0),{cameraAnimation:vt=>{const sc=this._tr;vt.easeTo({duration:300,easeId:"keyboardHandler",easing:vt=>vt*(2-vt),zoom:le?Math.round(sc.zoom)+le*(bt.shiftKey?2:1):sc.zoom,bearing:sc.bearing+ls*this._bearingStep,pitch:sc.pitch+ho*this._pitchStep,offset:[-Dl*this._panStep,-Fl*this._panStep],center:sc.center},{originalEvent:bt})}}}.bind(vt.map.keyboard)}const Ud="pnx-map-parameters";function getMapParamsFromLocalStorage(){const vt=localStorage.getItem(Ud);if(!vt)return{};try{return JSON.parse(vt)}catch(bt){return console.warn("Can't read map parameters stored in localStorage",bt),{}}}function saveMapParamsToLocalStorage(vt){const save=()=>localStorage.setItem(Ud,JSON.stringify({center:Object.fromEntries(Object.entries(vt.getCenter()).map((vt=>{let[bt,le]=vt;return[bt,le.toFixed(7)]}))),zoom:vt.getZoom().toFixed(1),background:vt._parent.mapStyleComposer.basemap,theme:vt._parent.mapStyleComposer.panoramaxTheme,endpoint:vt._parent.mapStyleComposer.panoramax}));vt._parent.mapStyleComposer.addEventListener("filters-changed",save),vt._parent.mapStyleComposer.addEventListener("theme-changed",save),vt._parent.mapStyleComposer.addEventListener("basemap-changed",save),vt._parent.mapStyleComposer.addEventListener("panoramax-changed",save),vt.on("moveend",save),vt.on("zoomend",save),vt.on("dragend",save),vt.on("boxzoomend",save)}},508:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{apiFeatureToPSVNode:()=>apiFeatureToPSVNode,filterRelatedPicsLinks:()=>filterRelatedPicsLinks,getCroppedPanoData:()=>getCroppedPanoData,getExifFloat:()=>getExifFloat,getGPSPrecision:()=>getGPSPrecision,getHashTags:()=>getHashTags,getNodeCaption:()=>getNodeCaption,getSphereCorrection:()=>getSphereCorrection,hasAnnotations:()=>hasAnnotations,sortPicturesInDirection:()=>sortPicturesInDirection});var ls=le(8407),ho=le(6830),Dl=le(7343);const Fl=(0,Dl.svgToPSVLink)(ls,"white"),sc=(0,Dl.svgToPSVLink)(ho,Dl.COLORS.NEXT);function getExifFloat(vt){if(!([null,void 0,""].includes(vt)||"string"===typeof vt&&""===vt.trim())){if("number"===typeof vt)return vt;if("string"!==typeof vt);else{if(/^-?\d+(\.\d+)?\/-?\d+(\.\d+)?$/.test(vt)){const bt=vt.split("/").map((vt=>parseFloat(vt)));return bt[0]/bt[1]}try{return parseFloat(vt)}catch(bt){}}}}function getGPSPrecision(vt){var bt,le,ls,ho,Dl;let Fl=null;const sc=(null===vt||void 0===vt||null===(bt=vt.properties)||void 0===bt?void 0:bt["quality:horizontal_accuracy"])||getExifFloat(null===vt||void 0===vt||null===(le=vt.properties)||void 0===le||null===(ls=le.exif)||void 0===ls?void 0:ls["Exif.GPSInfo.GPSHPositioningError"]),uc=getExifFloat(null===vt||void 0===vt||null===(ho=vt.properties)||void 0===ho||null===(Dl=ho.exif)||void 0===Dl?void 0:Dl["Exif.GPSInfo.GPSDOP"]);return void 0!==sc?Fl="".concat(sc," m"):void 0!==uc&&(Fl=uc<1?"ideal":uc<2?"excellent":uc<5?"good":uc<10?"moderate":uc<20?"fair":"poor"),Fl}function getSphereCorrection(vt){var bt,le,ls,ho;let Dl=null===(bt=vt.properties)||void 0===bt?void 0:bt["view:azimuth"];if(void 0===Dl){var Fl,sc;const bt=getExifFloat(null===(Fl=vt.properties)||void 0===Fl||null===(sc=Fl.exif)||void 0===sc?void 0:sc["Exif.GPSInfo.GPSImgDirection"]);void 0!==bt&&(Dl=bt)}Dl=Dl||0;let uc=null===(le=vt.properties)||void 0===le?void 0:le["pers:yaw"],mc=["Xmp.GPano.PoseHeadingDegrees","Xmp.Camera.Yaw","Exif.MpfInfo.MPFYawAngle"];if(void 0===uc)for(let Nd of mc){var gc,Ac;const bt=getExifFloat(null===(gc=vt.properties)||void 0===gc||null===(Ac=gc.exif)||void 0===Ac?void 0:Ac[Nd]);if(void 0!==bt){uc=bt;break}}uc=uc||0,Math.round(Dl)===Math.round(uc)&&uc>0&&console.warn("Picture with UUID",vt.id,"has same GPS Image direction and Yaw, could cause rendering issues");let Ec=null===(ls=vt.properties)||void 0===ls?void 0:ls["pers:pitch"];if(mc=["Xmp.GPano.PosePitchDegrees","Xmp.Camera.Pitch","Exif.MpfInfo.MPFPitchAngle"],void 0===Ec)for(let Nd of mc){var kc,du;const bt=getExifFloat(null===(kc=vt.properties)||void 0===kc||null===(du=kc.exif)||void 0===du?void 0:du[Nd]);if(void 0!==bt){Ec=bt;break}}Ec=Ec||0;let _u=null===(ho=vt.properties)||void 0===ho?void 0:ho["pers:roll"];if(mc=["Xmp.GPano.PoseRollDegrees","Xmp.Camera.Roll","Exif.MpfInfo.MPFRollAngle"],void 0===_u)for(let Nd of mc){var Md,Ld;const bt=getExifFloat(null===(Md=vt.properties)||void 0===Md||null===(Ld=Md.exif)||void 0===Ld?void 0:Ld[Nd]);if(void 0!==bt){_u=bt;break}}return _u=_u||0,0!==Ec&&0!==_u?{pan:uc*Math.PI/180,tilt:-Ec*Math.PI/180,roll:_u*Math.PI/180}:{}}function getCroppedPanoData(vt,bt){var le,ls,ho;let Dl;var Fl,sc;if(null!==(le=vt.properties)&&void 0!==le&&le["pers:interior_orientation"]&&(null!==(Fl=vt.properties["pers:interior_orientation"])&&void 0!==Fl&&Fl.visible_area&&null!==(sc=vt.properties["pers:interior_orientation"])&&void 0!==sc&&sc.sensor_array_dimensions)){const bt=vt.properties["pers:interior_orientation"].visible_area,le=vt.properties["pers:interior_orientation"].sensor_array_dimensions;try{Dl={fullWidth:parseInt(le[0]),fullHeight:parseInt(le[1]),croppedX:parseInt(bt[0]),croppedY:parseInt(bt[1]),croppedWidth:parseInt(le[0])-parseInt(bt[2])-parseInt(bt[0]),croppedHeight:parseInt(le[1])-parseInt(bt[3])-parseInt(bt[1])}}catch(_u){console.warn("Invalid pers:interior_orientation values for cropped panorama "+vt.id)}}if(!Dl&&null!==(ls=vt.properties)&&void 0!==ls&&ls.exif)try{var uc,mc,gc,Ac,Ec,kc;Dl={fullWidth:parseInt(null===(uc=vt.properties.exif)||void 0===uc?void 0:uc["Xmp.GPano.FullPanoWidthPixels"]),fullHeight:parseInt(null===(mc=vt.properties.exif)||void 0===mc?void 0:mc["Xmp.GPano.FullPanoHeightPixels"]),croppedX:parseInt(null===(gc=vt.properties.exif)||void 0===gc?void 0:gc["Xmp.GPano.CroppedAreaLeftPixels"]),croppedY:parseInt(null===(Ac=vt.properties.exif)||void 0===Ac?void 0:Ac["Xmp.GPano.CroppedAreaTopPixels"]),croppedWidth:parseInt(null===(Ec=vt.properties.exif)||void 0===Ec?void 0:Ec["Xmp.GPano.CroppedAreaImageWidthPixels"]),croppedHeight:parseInt(null===(kc=vt.properties.exif)||void 0===kc?void 0:kc["Xmp.GPano.CroppedAreaImageHeightPixels"])},Dl.croppedWidth>Dl.fullWidth&&(Dl.fullWidth=Dl.croppedWidth),Dl.croppedHeight>Dl.fullHeight&&(Dl.fullHeight=Dl.croppedHeight)}catch(_u){console.warn("Invalid XMP.GPano values for cropped panorama "+vt.id)}if(Dl&&(Dl=Object.fromEntries(Object.entries(Dl||{}).filter((vt=>!isNaN(vt[1])))),(!Dl.fullWidth&&!Dl.croppedWidth&&Dl.fullHeight&&!Dl.croppedHeight||Dl.fullWidth&&!Dl.croppedWidth&&!Dl.fullHeight&&!Dl.croppedHeight||Dl.fullWidth&&!Dl.croppedWidth&&Dl.fullHeight&&!Dl.croppedHeight||Dl.fullWidth==Dl.croppedWidth&&Dl.fullHeight==Dl.croppedHeight)&&(Dl={})),null!==(ho=Dl)&&void 0!==ho&&ho.fullWidth&&null!==bt&&void 0!==bt&&bt.width){var du;let vt=bt.width/((null===(du=Dl)||void 0===du?void 0:du.croppedWidth)||Dl.fullWidth);Dl={fullWidth:void 0!==Dl.fullWidth?Math.floor(Dl.fullWidth*vt):void 0,fullHeight:void 0!==Dl.fullHeight?Math.floor(Dl.fullHeight*vt):void 0,croppedWidth:void 0!==Dl.croppedWidth?Math.floor(Dl.croppedWidth*vt):void 0,croppedHeight:void 0!==Dl.croppedHeight?Math.floor(Dl.croppedHeight*vt):void 0,croppedX:void 0!==Dl.croppedX?Math.floor(Dl.croppedX*vt):void 0,croppedY:void 0!==Dl.croppedY?Math.floor(Dl.croppedY*vt):void 0}}return Dl||{}}function sortPicturesInDirection(vt){return(bt,le)=>"related"!=bt.rel&&"related"!=le.rel?0:"related"!=bt.rel?-1:"related"!=le.rel?1:bt.date==le.date?(0,Dl.getDistance)(vt,bt.geometry.coordinates)-(0,Dl.getDistance)(vt,le.geometry.coordinates):le.date.localeCompare(bt.date)}function getNodeCaption(vt,bt){var le,ls,ho;const Dl={};if(null!==vt&&void 0!==vt&&null!==(le=vt.properties)&&void 0!==le&&le.datetimetz){Dl.date=new Date(vt.properties.datetimetz);const bt=vt.properties.datetimetz.match(/([+-]\d{2}):(\d{2})$|Z$/);bt&&("Z"===bt[0]?Dl.tz="UTC":Dl.tz=bt[0])}else null!==vt&&void 0!==vt&&null!==(ls=vt.properties)&&void 0!==ls&&ls.datetime&&(Dl.date=new Date(vt.properties.datetime));if(null!==vt&&void 0!==vt&&vt.providers){var Fl;const bt=null===vt||void 0===vt||null===(Fl=vt.providers)||void 0===Fl?void 0:Fl.filter((vt=>{var bt;return null===vt||void 0===vt||null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("producer")}));if((null===bt||void 0===bt?void 0:bt.length)>=0){const vt={};bt.map((vt=>vt.name)).forEach((bt=>{const le=bt.toLowerCase().replace(/\s/g,"");vt[le]?vt[le].push(bt):vt[le]=[bt]})),Dl.producer=[],Object.values(vt).forEach((vt=>{const bt=vt[0],le=vt.find((vt=>vt.toLowerCase()!=vt));Dl.producer.push(le||bt)}))}}if(null!==vt&&void 0!==vt&&null!==(ho=vt.properties)&&void 0!==ho&&ho.license&&(Dl.license=vt.properties.license,null!==vt&&void 0!==vt&&vt.links)){const le=vt.links.find((vt=>"license"===(null===vt||void 0===vt?void 0:vt.rel)));le&&(Dl.license='<a href="'.concat(le.href,'" title="').concat(bt.pnx.metadata_general_license_link,'" target="_blank">').concat(Dl.license,"</a>"))}return Dl}function apiFeatureToPSVNode(vt,bt){var le,ls,ho,Dl,Fl,sc,uc,mc,gc,Ac,Ec,kc,du,_u,Md,Ld;let Nd=arguments.length>2&&void 0!==arguments[2]&&arguments[2],Rd=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,Od=arguments.length>4&&void 0!==arguments[4]?arguments[4]:vt=>vt;const jd=null!=(null===(le=vt.properties)||void 0===le||null===(ls=le["pers:interior_orientation"])||void 0===ls?void 0:ls.field_of_view);let Ud=jd?parseInt(vt.properties["pers:interior_orientation"].field_of_view):70;const Gd=360===Ud,qd=Od((Object.values(vt.assets).find((vt=>{var bt;return null===vt||void 0===vt||null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("data")}))||{}).href),Hd=null===vt||void 0===vt||null===(ho=vt.properties)||void 0===ho||null===(Dl=ho["tiles:tile_matrix_sets"])||void 0===Dl?void 0:Dl.geovisio,Wd=null===(Fl=vt.links)||void 0===Fl||null===(sc=Fl.find)||void 0===sc?void 0:sc.call(Fl,(vt=>"prev"===(null===vt||void 0===vt?void 0:vt.rel)&&"application/geo+json"===(null===vt||void 0===vt?void 0:vt.type))),Zd=null===(uc=vt.links)||void 0===uc||null===(mc=uc.find)||void 0===mc?void 0:mc.call(uc,(vt=>"next"===(null===vt||void 0===vt?void 0:vt.rel)&&"application/geo+json"===(null===vt||void 0===vt?void 0:vt.type))),Yd=Object.values(vt.assets).find((vt=>{var bt;return(null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("visual"))&&"image/webp"===vt.type})),Qd=Object.values(vt.assets).find((vt=>{var bt;return(null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("visual"))&&"image/jpeg"===vt.type})),Xd=Od((Yd||Qd).href),Kd=Od(null===(gc=Object.values(vt.assets).find((vt=>{var bt;return(null===(bt=vt.roles)||void 0===bt?void 0:bt.includes("thumbnail"))&&"image/jpeg"===vt.type})))||void 0===gc?void 0:gc.href),Jd=(null===vt||void 0===vt||null===(Ac=vt.asset_templates)||void 0===Ac?void 0:Ac.tiles_webp)||(null===vt||void 0===vt||null===(Ec=vt.asset_templates)||void 0===Ec?void 0:Ec.tiles),$d=getCroppedPanoData(vt),sp=null===(kc=vt.links)||void 0===kc||null===(du=kc.find)||void 0===du?void 0:du.call(kc,(vt=>"via"===(null===vt||void 0===vt?void 0:vt.rel)&&"application/json"===(null===vt||void 0===vt?void 0:vt.type))),tm=null===(_u=vt.properties)||void 0===_u||null===(Md=_u["pers:interior_orientation"])||void 0===Md?void 0:Md.sensor_array_dimensions;let em;if(Object.keys($d).length>0)em={baseUrl:Nd?qd:Xd,origBaseUrl:Nd?qd:Xd,hdUrl:qd,thumbUrl:Kd,basePanoData:Nd?$d:bt=>getCroppedPanoData(vt,bt),cropData:$d,width:$d.fullWidth,cols:2,rows:1,tileUrl:()=>null};else if(Gd&&Hd)em={baseUrl:Xd,origBaseUrl:Xd,basePanoData:vt=>({fullWidth:vt.width,fullHeight:vt.height}),hdUrl:qd,thumbUrl:Kd,cols:Hd&&Hd.tileMatrix[0].matrixWidth,rows:Hd&&Hd.tileMatrix[0].matrixHeight,width:Hd&&Hd.tileMatrix[0].matrixWidth*Hd.tileMatrix[0].tileWidth,tileUrl:Hd&&((vt,bt)=>Od(Jd.href.replace(/\{TileCol\}/g,vt).replace(/\{TileRow\}/g,bt)))};else{const getFlatCrop=vt=>{vt.width<vt.height&&!jd&&(Ud=35);const bt=Ud*vt.height/vt.width,le=360*vt.width/Ud,ls=180*vt.height/bt;return{fullWidth:Math.floor(le),fullHeight:Math.floor(ls),croppedWidth:vt.width,croppedHeight:vt.height,croppedX:Math.floor((le-vt.width)/2),croppedY:Math.floor((ls-vt.height)/2)}};let vt=tm?getFlatCrop({width:tm[0],height:tm[1]}):null;em={baseUrl:Nd?qd:Xd,origBaseUrl:Nd?qd:Xd,hdUrl:qd,thumbUrl:Kd,basePanoData:getFlatCrop,cropData:vt,width:(null===vt||void 0===vt?void 0:vt.fullWidth)||2,cols:2,rows:1,tileUrl:()=>null}}null!==(Ld=vt.properties)&&void 0!==Ld&&Ld.semantics&&(vt.properties.semantics=vt.properties.semantics.filter((vt=>Object.keys(vt).length>0)));return{id:vt.id,caption:getNodeCaption(vt,bt),panorama:em,links:filterRelatedPicsLinks(vt,Rd),gps:vt.geometry.coordinates,sequence:{id:vt.collection,nextPic:Zd?Zd.id:void 0,prevPic:Wd?Wd.id:void 0},sphereCorrection:getSphereCorrection(vt),horizontalFov:Ud,origInstance:sp,properties:vt.properties}}function filterRelatedPicsLinks(vt){var bt;let le=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;const ls=vt.links.filter((vt=>["next","prev","related"].includes(null===vt||void 0===vt?void 0:vt.rel)&&"application/geo+json"===(null===vt||void 0===vt?void 0:vt.type))).filter((vt=>!le||le(vt))).map((vt=>(vt.datetime&&(vt.date=vt.datetime.split("T")[0]),vt))),ho=vt.geometry.coordinates,uc=[],mc={N:[],ENE:[],ESE:[],S:[],WSW:[],WNW:[]};for(let Fl of ls){mc[(0,Dl.getSimplifiedAngle)(ho,Fl.geometry.coordinates)].push(Fl)}for(let Dl in mc){const vt=mc[Dl];0!=vt.length&&(vt.sort(sortPicturesInDirection(ho)),uc.push(vt.shift()))}let arrowStyle=vt=>"related"===vt.rel?{element:(0,Dl.getArrow)(sc),size:{width:128/3,height:128}}:{element:(0,Dl.getArrow)(Fl),size:{width:75,height:75}};const gc=-((null===(bt=vt.properties)||void 0===bt?void 0:bt["view:azimuth"])||0)*(Math.PI/180);return uc.map((vt=>({nodeId:vt.id,gps:vt.geometry.coordinates,arrowStyle:arrowStyle(vt),linkOffset:{yaw:gc}})))}function getHashTags(vt){var bt;if(null===vt||void 0===vt||null===(bt=vt.properties)||void 0===bt||!bt.semantics)return[];const le=vt.properties.semantics.filter((vt=>"hashtags"===vt.key)),ls=[];return le.forEach((vt=>vt.value.split(";").forEach((vt=>ls.push(vt.trim()))))),ls}function hasAnnotations(vt){var bt,le;return(null===vt||void 0===vt||null===(bt=vt.properties)||void 0===bt||null===(le=bt.annotations)||void 0===le?void 0:le.length)>0}},2283:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{SEMANTICS_OVERLAYS:()=>Ac,computeDiffTags:()=>computeDiffTags,decodeBasicTag:()=>decodeBasicTag,decodeKey:()=>decodeKey,groupByPrefix:()=>groupByPrefix,parseSemanticsString:()=>parseSemanticsString,semanticsToString:()=>semanticsToString});var ls,ho,Dl=le(7528),Fl=le(4542),sc=le(1760),uc=le(9472),mc=le(7208),gc=le(4964);const Ac=[["features",'"semantics" IS NOT NULL',{metadata:{name:"All features"},type:"circle",layout:{visibility:"none"},paint:{"circle-radius":4,"circle-color":"#00897B"}}],["tfsigns",'"semantics.osm|traffic_sign" IS NOT NULL',{metadata:{name:"Traffic signs"},type:"symbol",layout:{visibility:"none","icon-overlap":"never","icon-image":["case",["in",";",["get","osm|traffic_sign"]],"pnx-tfsigns-fr:0_many",["==",["slice",["get","osm|traffic_sign"],0,2],"FR"],["concat","pnx-tfsigns-fr:",["slice",["get","osm|traffic_sign"],3]],["==",["get","osm|traffic_sign"],"yes"],"pnx-tfsigns-fr:0_unknown",["has","osm|traffic_sign"],"pnx-tfsigns-fr:0_unknown",""]}},{"pnx-tfsigns-fr":"".concat((0,mc.PanoramaxPresetsURL)(),"/sprites/trafficsigns_fr")}]];function valToValLink(vt,bt,le){return(0,Fl.qy)(ls||(ls=(0,Dl.A)(["<a href=",' target="_blank" title=',">","</a>"])),bt,le,vt)}const Ec=["highway","building","amenity","landuse","natural","waterway","leisure","shop","railway","tourism","barrier","boundary","place","power"],kc={};function getWDLabel(vt,bt){if(kc[vt])return Promise.resolve(kc[vt]);{const le=vt.startsWith("P")?"properties/".concat(vt):"items/".concat(vt,"/labels");return fetch("".concat((0,mc.WikidataAPIURL)(),"/entities/").concat(le)).then((vt=>vt.json())).then((le=>(kc[vt]=(0,gc.getBestLabel)(le.labels||le,bt.PREF_LANG),kc[vt])))}}const du={"":{title:"Panoramax",value_transform:(vt,bt)=>"osm"===vt.key?valToValLink(vt.value,"".concat((0,mc.OSMURL)(),"/").concat(vt.value),bt.pnx.semantics_value_show_osm):vt.value},osm:{title:"OpenStreetMap",logo:sc,key_transform:(vt,bt)=>valToValLink(vt.key,"".concat((0,mc.OSMWikiURL)(),"/Key:").concat(vt.key),bt.pnx.semantics_key_doc),value_transform:(vt,bt)=>Ec.includes(vt.key)?valToValLink(vt.value,"".concat((0,mc.OSMWikiURL)(),"/Tag:").concat(vt.key,"=").concat(vt.value),bt.pnx.semantics_value_doc):vt.value},wd:{title:"Wikidata",logo:uc,key_transform:(vt,bt)=>{const le="".concat((0,mc.WikidataURL)(),"/Property:").concat(vt.key);if(bt.pnx.semantics_wikidata_properties[vt.key])return valToValLink((0,Fl.qy)(ho||(ho=(0,Dl.A)([""," <small>(",")</small>"])),bt.pnx.semantics_wikidata_properties[vt.key],vt.key),le,bt.pnx.semantics_key_doc);{const ls=document.createElement("span");return ls.innerText=vt.key,getWDLabel(vt.key,bt).then((bt=>{ls.innerHTML="".concat(bt," <small>(").concat(vt.key,")</small>")})),valToValLink(ls,le,bt.pnx.semantics_key_doc)}},value_transform:(vt,bt)=>{const le=document.createElement("span");return le.innerText=vt.value,getWDLabel(vt.value,bt).then((bt=>{le.innerHTML="".concat(bt," <small>(").concat(vt.value,")</small>")})),valToValLink(le,"".concat((0,mc.WikidataURL)(),"/").concat(vt.value),bt.pnx.semantics_value_doc)}},exif:{title:"EXIF"}};function decodeBasicTag(vt){const bt=(vt||"").lastIndexOf("=");if(bt<0)return null;const le=decodeKey(vt.substring(0,bt));return le.subkey.indexOf("=")>=0?null:{key:le,value:vt.substring(bt+1)}}function decodeKey(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const bt=vt.match(/^(?:([a-z_]+)\|)?([^[]+)(?:\[(.*)\])?$/);if(!bt)return{prefix:"",subkey:vt,qualifies:null};const[,le,ls,ho]=bt;return{key:vt,prefix:le||"",subkey:ls,qualifies:decodeBasicTag(ho)}}function parseSemanticsString(vt){const bt=vt.split("\n").map((vt=>{const bt=decodeBasicTag(vt);return bt&&bt.key.key.length<=256&&bt.value.length<=2048?{key:bt.key.key,value:bt.value}:null}));if(bt.findIndex((vt=>!vt))>=0){if(0===vt.trim().length&&1===bt.length)return[];throw new Error("Invalid tags")}return bt}function semanticsToString(vt){return(vt||[]).map((vt=>"".concat(vt.key,"=").concat(vt.value))).join("\n")}function computeDiffTags(){let vt=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const le=[];return(bt||[]).filter((bt=>void 0===vt.find((vt=>vt.key==bt.key&&vt.value==bt.value)))).forEach((vt=>le.push({key:vt.key,value:vt.value,action:"add"}))),(vt||[]).filter((vt=>void 0===bt.find((bt=>vt.key==bt.key&&vt.value==bt.value)))).forEach((vt=>le.push({key:vt.key,value:vt.value,action:"delete"}))),le}function groupByPrefix(vt){const bt={},le=[];return vt.forEach((vt=>{if("delete"===vt.action)return;const ls=decodeKey(vt.key);ls.qualifies?le.push(Object.assign({},vt,ls)):(bt[ls.prefix]||(bt[ls.prefix]=[]),bt[ls.prefix].push(ls.prefix.length>0?{key:ls.subkey,value:vt.value}:vt))})),le.forEach((vt=>{var le;let{key:ls,prefix:ho,subkey:Dl,qualifies:Fl,value:sc}=vt;const uc=null===(le=bt[Fl.key.prefix])||void 0===le?void 0:le.find((vt=>vt.key===Fl.key.subkey&&(!Fl.value||Fl.value===vt.value)));uc&&(uc.qualifiers||(uc.qualifiers=[]),uc.qualifiers.push({key:ls,prefix:ho,subkey:Dl,value:sc}))})),Object.entries(bt).map((vt=>{let[bt,le]=vt;return du[bt]?Object.assign({prefix:bt,tags:le},du[bt]):{prefix:bt,title:bt,tags:le}}))}},7208:(vt,bt,le)=>{"use strict";function MapTiles(){return"https://panoramax.openstreetmap.fr/pmtiles/basic.json"}function PanoramaxWebsiteURL(){return"https://panoramax.fr"}function PanoramaxPresetsURL(){return"https://presets.panoramax.fr"}function PanoramaxMetaCatalogURL(){return"https://explore.panoramax.fr"}function TemakiIconURL(vt){return"https://raw.githubusercontent.com/rapideditor/temaki/refs/heads/main/icons/".concat(vt,".svg")}function WikidataURL(){return"https://www.wikidata.org/wiki"}function WikidataAPIURL(){return"https://www.wikidata.org/w/rest.php/wikibase/v1"}function IdEditorURL(){return"https://www.openstreetmap.org/edit?editor=id"}function OSMWikiURL(){return"https://wiki.openstreetmap.org/wiki"}function OSMURL(){return"https://openstreetmap.org"}function IndoorEqualSpritesURL(){return"https://files.pavie.info/depot/remote/indoorequal/indoorequal"}function InternetFastThreshold(){return 10}function InternetFastTestFile(){return"https://panoramax.openstreetmap.fr/images/05/ca/2c/98/0111-4baf-b6f3-587bb8847d2e.jpg"}function AdresseDataGouvBaseURL(){return"https://data.geopf.fr/geocodage/search"}function NominatimBaseUrl(){return"https://nominatim.openstreetmap.org"}le.r(bt),le.d(bt,{AdresseDataGouvBaseURL:()=>AdresseDataGouvBaseURL,IdEditorURL:()=>IdEditorURL,IndoorEqualSpritesURL:()=>IndoorEqualSpritesURL,InternetFastTestFile:()=>InternetFastTestFile,InternetFastThreshold:()=>InternetFastThreshold,MapTiles:()=>MapTiles,NominatimBaseUrl:()=>NominatimBaseUrl,OSMURL:()=>OSMURL,OSMWikiURL:()=>OSMWikiURL,PanoramaxMetaCatalogURL:()=>PanoramaxMetaCatalogURL,PanoramaxPresetsURL:()=>PanoramaxPresetsURL,PanoramaxWebsiteURL:()=>PanoramaxWebsiteURL,TemakiIconURL:()=>TemakiIconURL,WikidataAPIURL:()=>WikidataAPIURL,WikidataURL:()=>WikidataURL})},7343:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{BASE_PANORAMA_ID:()=>Dl,COLORS:()=>Fl,COLORS_HEX:()=>sc,DISABLE_ANNOTATIONS_PARAM:()=>ho,GPS_VALUES:()=>du,QUALITYSCORE_GPS_VALUES:()=>Ac,QUALITYSCORE_POND_GPS:()=>kc,QUALITYSCORE_POND_RES:()=>Ec,QUALITYSCORE_RES_360_VALUES:()=>gc,QUALITYSCORE_RES_FLAT_VALUES:()=>mc,QUALITYSCORE_VALUES:()=>uc,degToDms:()=>degToDms,getArrow:()=>getArrow,getAzimuth:()=>getAzimuth,getCookie:()=>getCookie,getDistance:()=>getDistance,getGrade:()=>getGrade,getRelativeHeading:()=>getRelativeHeading,getSimplifiedAngle:()=>getSimplifiedAngle,getUserAccount:()=>getUserAccount,inRangeRandom:()=>inRangeRandom,isInIframe:()=>isInIframe,isInternetFast:()=>isInternetFast,isNullId:()=>isNullId,josmBboxParameters:()=>josmBboxParameters,positionToXYZ:()=>positionToXYZ,svgToPSVLink:()=>svgToPSVLink,xyzToPosition:()=>xyzToPosition});var ls=le(7208);const ho="pnx-disable-annotations",Dl="geovisio-fake-id-0",Fl={BASE:"#FF6F00",SELECTED:"#1E88E5",HIDDEN:"#34495E",NEXT:"#ffab40",QUALI_1:"#00695C",QUALI_2:"#fd8d3c",PALETTE_1:"#fecc5c",PALETTE_2:"#fd8d3c",PALETTE_3:"#f03b20",PALETTE_4:"#bd0026"},sc=Object.fromEntries(Object.entries(Fl).map((vt=>(vt[1]=parseInt(vt[1].slice(1),16),vt)))),uc=[{color:"#007f4e",label:"A"},{color:"#72b043",label:"B"},{color:"#b5be2f",label:"C"},{color:"#f8cc1b",label:"D"},{color:"#f6a020",label:"E"}],mc=[1,10,2,15,3,30,4],gc=[3,15,4,30,5],Ac=[5,.5,4,2.01,3,5.01,2,10.01,1],Ec=.8,kc=.2,du=[{color:"#4A148C",label:"<= ".concat(Ac[1]," m")},{color:"#7B1FA2",label:"".concat(Math.round(Ac[1])," - ").concat(Math.round(Ac[3])," m")},{color:"#9C27B0",label:"".concat(Math.round(Ac[3])," - ").concat(Math.round(Ac[5])," m")},{color:"#BA68C8",label:"".concat(Math.round(Ac[5])," - ").concat(Math.round(Ac[7])," m")},{color:"#EA80FC",label:"> ".concat(Math.round(Ac[7])," m")}];function isNullId(vt){return[null,void 0,"",Dl].includes(vt)}function getGrade(vt,bt){if(null===bt||void 0===bt||""===bt)return null;for(let le=0;le<vt.length;le+=2){const ls=vt[le];if(bt<vt[le+1])return ls}return vt[vt.length-1]}function getDistance(vt,bt){const le=vt[0]-bt[0],ls=vt[1]-bt[1];return Math.sqrt(le*le+ls*ls)}function svgToPSVLink(vt,bt){try{const le=atob(vt.replace(/^data:image\/svg\+xml;base64,/,"")),ls=(new DOMParser).parseFromString(le,"image/svg+xml").childNodes[0],ho=document.createElement("button");return ho.appendChild(ls),ho.classList.add("pnx-psv-tour-arrows","pnx-print-hidden"),ho.style.color=bt,ho}catch(le){const bt=document.createElement("img");return bt.src=vt,bt.alt="",bt}}function getArrow(vt){const bt=vt.cloneNode(!0);return bt.addEventListener("pointerup",(()=>bt.classList.add("pnx-clicked"))),bt}function getAzimuth(vt,bt){return(Math.atan2(bt[0]-vt[0],bt[1]-vt[1])*(180/Math.PI)+360)%360}function getRelativeHeading(vt){var bt,le;if(!vt)throw new Error("No picture selected");let ls,ho;const Dl=vt.properties["view:azimuth"];if(null!==vt&&void 0!==vt&&null!==(bt=vt.sequence)&&void 0!==bt&&bt.prevPic){var Fl;const bt=null===vt||void 0===vt||null===(Fl=vt.links)||void 0===Fl?void 0:Fl.find((bt=>bt.nodeId===vt.sequence.prevPic));bt&&(ls=(Dl-getAzimuth(bt.gps,vt.gps)+180)%360-180)}if(null!==vt&&void 0!==vt&&null!==(le=vt.sequence)&&void 0!==le&&le.nextPic){var sc;const bt=null===vt||void 0===vt||null===(sc=vt.links)||void 0===sc?void 0:sc.find((bt=>bt.nodeId===vt.sequence.nextPic));bt&&(ho=(Dl-getAzimuth(vt.gps,bt.gps)+180)%360-180)}return void 0!==ls?ls:void 0!==ho?ho:0}function getSimplifiedAngle(vt,bt){const le=Math.atan2(bt[0]-vt[0],bt[1]-vt[1])*(180/Math.PI);return Math.abs(le)<30?"N":le>=30&&le<90?"ENE":le>=90&&le<150?"ESE":Math.abs(le)>=150?"S":le<=-30&&le>-90?"WNW":le<=-90&&le>-150?"WSW":void 0}function positionToXYZ(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;const le={x:vt.yaw*(180/Math.PI),y:vt.pitch*(180/Math.PI)};return void 0!==bt&&(le.z=bt),le}function xyzToPosition(vt,bt,le){return{yaw:vt/(180/Math.PI),pitch:bt/(180/Math.PI),zoom:le}}function degToDms(vt){const bt=vt<0?Math.ceil(vt):Math.floor(vt),le=60*Math.abs(vt-bt),ls=Math.floor(le);return{d:bt,m:ls,s:parseFloat((60*(le-ls)).toFixed(3))}}function josmBboxParameters(vt){if(vt){var bt;const le=vt.gps,ls=null===vt||void 0===vt||null===(bt=vt.properties)||void 0===bt?void 0:bt["view:azimuth"],ho=2e-4,Dl={left:le[0]-(null===ls||ls>=180?ho:0),right:le[0]+(null===ls||ls<=180?ho:0),top:le[1]+(null===ls||ls<=90||ls>=270?ho:0),bottom:le[1]-(null===ls||ls>=90&&ls<=270?ho:0),changeset_source:"Panoramax"};return Object.entries(Dl).map((vt=>vt.join("="))).join("&")}return null}function isInIframe(){try{return window.self!==window.top}catch(vt){return!0}}const _u="pnx-internet-fast";function isInternetFast(){try{const vt=navigator.connection.downlink;return Promise.resolve(vt>=(0,ls.InternetFastThreshold)())}catch(vt){try{const vt=sessionStorage.getItem(_u);if(["true","false"].includes(vt))return Promise.resolve("true"===vt);const bt=(new Date).getTime();return fetch("".concat((0,ls.InternetFastTestFile)(),"?nocache=").concat(bt)).then((async vt=>[vt,await vt.blob()])).then((vt=>{let[le,ho]=vt;const Dl=8*parseInt(le.headers.get("Content-Length")||ho.size)/1024/1024/(((new Date).getTime()-bt)/1e3)>=(0,ls.InternetFastThreshold)();return sessionStorage.setItem(_u,Dl?"true":"false"),Dl})).catch((vt=>(console.warn("Failed to run speedtest",vt),!1)))}catch(vt){return Promise.resolve(!1)}}}function getCookie(vt){var bt,le,ls;const ho=null===(bt=document.cookie)||void 0===bt||null===(le=bt.split(";"))||void 0===le||null===(ls=le.find((bt=>bt.trimStart().startsWith("".concat(vt,"=")))))||void 0===ls?void 0:ls.split("=");if(ho)return ho.shift(),ho.join("=")}function getUserAccount(){const vt=getCookie("session"),bt=getCookie("user_id"),le=getCookie("user_name");return vt&&bt&&le?{id:bt,name:le}:null}function inRangeRandom(vt,bt){const le=new Uint32Array(1);crypto.getRandomValues(le);let ls=le[0]/4294967296;return vt=Math.ceil(vt),bt=Math.floor(bt),Math.floor(ls*(bt-vt+1))+vt}},5995:(vt,bt,le)=>{"use strict";le.r(bt),le.d(bt,{createWebComp:()=>createWebComp,fa:()=>fa,listenForMenuClosure:()=>listenForMenuClosure,moreIcons:()=>moreIcons,onceParentAvailable:()=>onceParentAvailable});var ls=le(3710),ho=le(8983),Dl=le(7208);function fa(vt,bt){return(0,ls.Kk)(vt,bt).node[0]}function moreIcons(){(0,ho.c8)((async vt=>{const bt=await fetch((0,Dl.TemakiIconURL)(vt));return bt.ok?{body:await bt.text()}:null}),"temaki")}function createWebComp(vt){let bt=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const le=document.createElement(vt);return Object.entries(bt).forEach((vt=>{let[bt,ls]=vt;bt.startsWith("_")?le[bt]=ls:bt.startsWith("fn")?le[bt.substring(2)]=ls:bt.startsWith("on")?le.addEventListener(bt.substring(2),ls):ls&&le.setAttribute(bt,ls)})),le}function listenForMenuClosure(vt,bt){var le,ls,ho,Dl,Fl,sc,uc;null===(le=vt._parent)||void 0===le||le.addEventListener("menu-opened",(le=>{le.detail.menu!=vt&&bt()})),null===(ls=vt._parent)||void 0===ls||null===(ho=ls.onceMapReady)||void 0===ho||ho.call(ls).then((()=>{var le,ls;null===(le=vt._parent.map)||void 0===le||null===(ls=le.on)||void 0===ls||ls.call(le,"click",(()=>bt()))})),null===(Dl=vt._parent)||void 0===Dl||null===(Fl=Dl.oncePSVReady)||void 0===Fl||Fl.call(Dl).then((()=>{vt._parent.psv.addEventListener("click",(()=>bt()))})),null===(sc=vt._parent)||void 0===sc||null===(uc=sc.onceReady)||void 0===uc||uc.call(sc).then((()=>{var le;null===(le=vt._parent.legend)||void 0===le||le.addEventListener("click",(()=>bt()))}))}function lookForParent(vt){return vt._parent?vt._parent:vt===document.body?null:vt.parentNode?lookForParent(vt.parentNode):vt.host?lookForParent(vt.host):void 0}function onceParentAvailable(vt){return vt._parent?Promise.resolve(vt._parent):new Promise((bt=>{const le=setInterval((()=>{const ls=lookForParent(vt);ls&&(vt._parent=ls,clearInterval(le),bt(vt._parent))}),100)}))}},7325:(vt,bt)=>{"use strict";var le="star",ls=[11088,61446],ho="f005",Dl="M287.9 0c9.2 0 17.6 5.2 21.6 13.5l68.6 141.3 153.2 22.6c9 1.3 16.5 7.6 19.3 16.3s.5 18.1-5.9 24.5L433.6 328.4l26.2 155.6c1.5 9-2.2 18.1-9.7 23.5s-17.3 6-25.3 1.7l-137-73.2L151 509.1c-8.1 4.3-17.9 3.7-25.3-1.7s-11.2-14.5-9.7-23.5l26.2-155.6L31.1 218.2c-6.5-6.4-8.7-15.9-5.9-24.5s10.3-14.9 19.3-16.3l153.2-22.6L266.3 13.5C270.4 5.2 278.7 0 287.9 0zm0 79L235.4 187.2c-3.5 7.1-10.2 12.1-18.1 13.3L99 217.9 184.9 303c5.5 5.5 8.1 13.3 6.8 21L171.4 443.7l105.2-56.2c7.1-3.8 15.6-3.8 22.6 0l105.2 56.2L384.2 324.1c-1.3-7.7 1.2-15.5 6.8-21l85.9-85.1L358.6 200.5c-7.8-1.2-14.6-6.1-18.1-13.3L287.9 79z";bt.mw={prefix:"far",iconName:le,icon:[576,512,ls,ho,Dl]},bt.yy=bt.mw},8466:(vt,bt)=>{"use strict";var le="arrow-left",ls=[8592],ho="f060",Dl="M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.2 288 416 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-306.7 0L214.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.Ce=bt.mw},6069:(vt,bt)=>{"use strict";var le="arrow-right",ls=[8594],ho="f061",Dl="M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.dm=bt.mw},4881:(vt,bt)=>{"use strict";var le=[61946],ls="M256 64C150 64 64 150 64 256s86 192 192 192c17.7 0 32 14.3 32 32s-14.3 32-32 32C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256l0 32c0 53-43 96-96 96c-29.3 0-55.6-13.2-73.2-33.9C320 371.1 289.5 384 256 384c-70.7 0-128-57.3-128-128s57.3-128 128-128c27.9 0 53.7 8.9 74.7 24.1c5.7-5 13.1-8.1 21.3-8.1c17.7 0 32 14.3 32 32l0 80 0 32c0 17.7 14.3 32 32 32s32-14.3 32-32l0-32c0-106-86-192-192-192zm64 192a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z";bt.mw={prefix:"fas",iconName:"at",icon:[512,512,le,"40",ls]},bt.Hz=bt.mw},1705:(vt,bt)=>{"use strict";var le="backward",ls=[9194],ho="f04a",Dl="M459.5 440.6c9.5 7.9 22.8 9.7 34.1 4.4s18.4-16.6 18.4-29l0-320c0-12.4-7.2-23.7-18.4-29s-24.5-3.6-34.1 4.4L288 214.3l0 41.7 0 41.7L459.5 440.6zM256 352l0-96 0-128 0-32c0-12.4-7.2-23.7-18.4-29s-24.5-3.6-34.1 4.4l-192 160C4.2 237.5 0 246.5 0 256s4.2 18.5 11.5 24.6l192 160c9.5 7.9 22.8 9.7 34.1 4.4s18.4-16.6 18.4-29l0-64z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.TH=bt.mw},9186:(vt,bt)=>{"use strict";var le="calendar",ls=[128197,128198],ho="f133",Dl="M96 32l0 32L48 64C21.5 64 0 85.5 0 112l0 48 448 0 0-48c0-26.5-21.5-48-48-48l-48 0 0-32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 32L160 64l0-32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192L0 192 0 464c0 26.5 21.5 48 48 48l352 0c26.5 0 48-21.5 48-48l0-272z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.ok=bt.mw},4927:(vt,bt,le)=>{"use strict";var ls=le(1577);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.BE=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},1577:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="calendar-days",ls=["calendar-alt"],ho="f073",Dl="M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zm64 80l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm128 0l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM64 400l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zm112 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16z";bt.definition={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.faCalendarDays=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=448,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},2480:(vt,bt)=>{"use strict";var le="camera",ls=[62258,"camera-alt"],ho="f030",Dl="M149.1 64.8L138.7 96 64 96C28.7 96 0 124.7 0 160L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64l-74.7 0L362.9 64.8C356.4 45.2 338.1 32 317.4 32L194.6 32c-20.7 0-39 13.2-45.5 32.8zM256 192a96 96 0 1 1 0 192 96 96 0 1 1 0-192z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.rw=bt.mw},7261:(vt,bt)=>{"use strict";var le="caret-down",ls=[],ho="f0d7",Dl="M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,ho,Dl]},bt.xB=bt.mw},4420:(vt,bt)=>{"use strict";var le="caret-up",ls=[],ho="f0d8",Dl="M182.6 137.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8l256 0c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-128-128z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,ho,Dl]},bt.S$=bt.mw},174:(vt,bt)=>{"use strict";var le="check",ls=[10003,10004],ho="f00c",Dl="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.e6=bt.mw},2593:(vt,bt)=>{"use strict";var le="chevron-down",ls=[],ho="f078",Dl="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.Jt=bt.mw},1187:(vt,bt)=>{"use strict";var le="chevron-right",ls=[9002],ho="f054",Dl="M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,ho,Dl]},bt.Xk=bt.mw},4336:(vt,bt)=>{"use strict";var le="chevron-up",ls=[],ho="f077",Dl="M233.4 105.4c12.5-12.5 32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L256 173.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l192-192z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.w2=bt.mw},4011:(vt,bt)=>{"use strict";var le="circle-exclamation",ls=["exclamation-circle"],ho="f06a",Dl="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24l0 112c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-112c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.lE=bt.mw},7516:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="circle-info",ls=["info-circle"],ho="f05a",Dl="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336l24 0 0-64-24 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l48 0c13.3 0 24 10.7 24 24l0 88 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-80 0c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z";bt.definition={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.faCircleInfo=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=512,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},3444:(vt,bt)=>{"use strict";var le="circle-notch",ls=[],ho="f1ce",Dl="M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8C121.8 95.6 64 169.1 64 256c0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1c-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256c0 141.4-114.6 256-256 256S0 397.4 0 256C0 140 77.1 42.1 182.9 10.6c16.9-5 34.8 4.6 39.8 21.5z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.s4=bt.mw},2975:(vt,bt)=>{"use strict";var le="comment-dots",ls=[128172,62075,"commenting"],ho="f4ad",Dl="M256 448c141.4 0 256-93.1 256-208S397.4 32 256 32S0 125.1 0 240c0 45.1 17.7 86.8 47.7 120.9c-1.9 24.5-11.4 46.3-21.4 62.9c-5.5 9.2-11.1 16.6-15.2 21.6c-2.1 2.5-3.7 4.4-4.9 5.7c-.6 .6-1 1.1-1.3 1.4l-.3 .3c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0s0 0 0 0c-4.6 4.6-5.9 11.4-3.4 17.4c2.5 6 8.3 9.9 14.8 9.9c28.7 0 57.6-8.9 81.6-19.3c22.9-10 42.4-21.9 54.3-30.6c31.8 11.5 67 17.9 104.1 17.9zM128 208a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.Be=bt.mw},4189:(vt,bt)=>{"use strict";var le="copy",ls=[],ho="f0c5",Dl="M208 0L332.1 0c12.7 0 24.9 5.1 33.9 14.1l67.9 67.9c9 9 14.1 21.2 14.1 33.9L448 336c0 26.5-21.5 48-48 48l-192 0c-26.5 0-48-21.5-48-48l0-288c0-26.5 21.5-48 48-48zM48 128l80 0 0 64-64 0 0 256 192 0 0-32 64 0 0 48c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 176c0-26.5 21.5-48 48-48z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.jP=bt.mw},6516:(vt,bt)=>{"use strict";var le="download",ls=[],ho="f019",Dl="M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 242.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L288 274.7 288 32zM64 352c-35.3 0-64 28.7-64 64l0 32c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-32c0-35.3-28.7-64-64-64l-101.5 0-45.3 45.3c-25 25-65.5 25-90.5 0L165.5 352 64 352zm368 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.cb=bt.mw},7172:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="earth-europe",ls=["globe-europe"],ho="f7a2",Dl="M266.3 48.3L232.5 73.6c-5.4 4-8.5 10.4-8.5 17.1l0 9.1c0 6.8 5.5 12.3 12.3 12.3c2.4 0 4.8-.7 6.8-2.1l41.8-27.9c2-1.3 4.4-2.1 6.8-2.1l1 0c6.2 0 11.3 5.1 11.3 11.3c0 3-1.2 5.9-3.3 8l-19.9 19.9c-5.8 5.8-12.9 10.2-20.7 12.8l-26.5 8.8c-5.8 1.9-9.6 7.3-9.6 13.4c0 3.7-1.5 7.3-4.1 10l-17.9 17.9c-6.4 6.4-9.9 15-9.9 24l0 4.3c0 16.4 13.6 29.7 29.9 29.7c11 0 21.2-6.2 26.1-16l4-8.1c2.4-4.8 7.4-7.9 12.8-7.9c4.5 0 8.7 2.1 11.4 5.7l16.3 21.7c2.1 2.9 5.5 4.5 9.1 4.5c8.4 0 13.9-8.9 10.1-16.4l-1.1-2.3c-3.5-7 0-15.5 7.5-18l21.2-7.1c7.6-2.5 12.7-9.6 12.7-17.6c0-10.3 8.3-18.6 18.6-18.6l29.4 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-20.7 0c-7.2 0-14.2 2.9-19.3 8l-4.7 4.7c-2.1 2.1-3.3 5-3.3 8c0 6.2 5.1 11.3 11.3 11.3l11.3 0c6 0 11.8 2.4 16 6.6l6.5 6.5c1.8 1.8 2.8 4.3 2.8 6.8s-1 5-2.8 6.8l-7.5 7.5C386 262 384 266.9 384 272s2 10 5.7 13.7L408 304c10.2 10.2 24.1 16 38.6 16l7.3 0c6.5-20.2 10-41.7 10-64c0-111.4-87.6-202.4-197.7-207.7zm172 307.9c-3.7-2.6-8.2-4.1-13-4.1c-6 0-11.8-2.4-16-6.6L396 332c-7.7-7.7-18-12-28.9-12c-9.7 0-19.2-3.5-26.6-9.8L314 287.4c-11.6-9.9-26.4-15.4-41.7-15.4l-20.9 0c-12.6 0-25 3.7-35.5 10.7L188.5 301c-17.8 11.9-28.5 31.9-28.5 53.3l0 3.2c0 17 6.7 33.3 18.7 45.3l16 16c8.5 8.5 20 13.3 32 13.3l21.3 0c13.3 0 24 10.7 24 24c0 2.5 .4 5 1.1 7.3c71.3-5.8 132.5-47.6 165.2-107.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM187.3 100.7c-6.2-6.2-16.4-6.2-22.6 0l-32 32c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l32-32c6.2-6.2 6.2-16.4 0-22.6z";bt.definition={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.faEarthEurope=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=512,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},3613:(vt,bt,le)=>{"use strict";var ls=le(6533);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.v=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},6533:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="ellipsis-vertical",ls=["ellipsis-v"],ho="f142",Dl="M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z";bt.definition={prefix:"fas",iconName:le,icon:[128,512,ls,ho,Dl]},bt.faEllipsisVertical=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=128,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},700:(vt,bt)=>{"use strict";var le="eraser",ls=[],ho="f12d",Dl="M290.7 57.4L57.4 290.7c-25 25-25 65.5 0 90.5l80 80c12 12 28.3 18.7 45.3 18.7L288 480l9.4 0L512 480c17.7 0 32-14.3 32-32s-14.3-32-32-32l-124.1 0L518.6 285.3c25-25 25-65.5 0-90.5L381.3 57.4c-25-25-65.5-25-90.5 0zM297.4 416l-9.4 0-105.4 0-80-80L227.3 211.3 364.7 348.7 297.4 416z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.IP=bt.mw},7704:(vt,bt,le)=>{"use strict";var ls=le(7144);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.A=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},2255:(vt,bt)=>{"use strict";var le="floppy-disk",ls=[128190,128426,"save"],ho="f0c7",Dl="M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-242.7c0-17-6.7-33.3-18.7-45.3L352 50.7C340 38.7 323.7 32 306.7 32L64 32zm0 96c0-17.7 14.3-32 32-32l192 0c17.7 0 32 14.3 32 32l0 64c0 17.7-14.3 32-32 32L96 224c-17.7 0-32-14.3-32-32l0-64zM224 288a64 64 0 1 1 0 128 64 64 0 1 1 0-128z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.jk=bt.mw},5431:(vt,bt)=>{"use strict";var le="forward",ls=[9193],ho="f04e",Dl="M52.5 440.6c-9.5 7.9-22.8 9.7-34.1 4.4S0 428.4 0 416L0 96C0 83.6 7.2 72.3 18.4 67s24.5-3.6 34.1 4.4L224 214.3l0 41.7 0 41.7L52.5 440.6zM256 352l0-96 0-128 0-32c0-12.4 7.2-23.7 18.4-29s24.5-3.6 34.1 4.4l192 160c7.3 6.1 11.5 15.1 11.5 24.6s-4.2 18.5-11.5 24.6l-192 160c-9.5 7.9-22.8 9.7-34.1 4.4s-18.4-16.6-18.4-29l0-64z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.vF=bt.mw},2045:(vt,bt,le)=>{"use strict";var ls=le(7172);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.B$=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},5279:(vt,bt)=>{"use strict";var le="image",ls=[],ho="f03e",Dl="M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM323.8 202.5c-4.5-6.6-11.9-10.5-19.8-10.5s-15.4 3.9-19.8 10.5l-87 127.6L170.7 297c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6l96 0 32 0 208 0c8.9 0 17.1-4.9 21.2-12.8s3.6-17.4-1.4-24.7l-120-176zM112 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.jb=bt.mw},4954:(vt,bt)=>{"use strict";var le="images",ls=[],ho="f302",Dl="M160 32c-35.3 0-64 28.7-64 64l0 224c0 35.3 28.7 64 64 64l352 0c35.3 0 64-28.7 64-64l0-224c0-35.3-28.7-64-64-64L160 32zM396 138.7l96 144c4.9 7.4 5.4 16.8 1.2 24.6S480.9 320 472 320l-144 0-48 0-80 0c-9.2 0-17.6-5.3-21.6-13.6s-2.9-18.2 2.9-25.4l64-80c4.6-5.7 11.4-9 18.7-9s14.2 3.3 18.7 9l17.3 21.6 56-84C360.5 132 368 128 376 128s15.5 4 20 10.7zM192 128a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM48 120c0-13.3-10.7-24-24-24S0 106.7 0 120L0 344c0 75.1 60.9 136 136 136l320 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-320 0c-48.6 0-88-39.4-88-88l0-224z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.yv=bt.mw},6668:(vt,bt,le)=>{"use strict";var ls=le(7516);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.iW=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},4220:(vt,bt)=>{"use strict";var le="layer-group",ls=[],ho="f5fd",Dl="M264.5 5.2c14.9-6.9 32.1-6.9 47 0l218.6 101c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 149.8C37.4 145.8 32 137.3 32 128s5.4-17.9 13.9-21.8L264.5 5.2zM476.9 209.6l53.2 24.6c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 277.8C37.4 273.8 32 265.3 32 256s5.4-17.9 13.9-21.8l53.2-24.6 152 70.2c23.4 10.8 50.4 10.8 73.8 0l152-70.2zm-152 198.2l152-70.2 53.2 24.6c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 405.8C37.4 401.8 32 393.3 32 384s5.4-17.9 13.9-21.8l53.2-24.6 152 70.2c23.4 10.8 50.4 10.8 73.8 0z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.qI=bt.mw},325:(vt,bt)=>{"use strict";var le="lightbulb",ls=[128161],ho="f0eb",Dl="M272 384c9.6-31.9 29.5-59.1 49.2-86.2c0 0 0 0 0 0c5.2-7.1 10.4-14.2 15.4-21.4c19.8-28.5 31.4-63 31.4-100.3C368 78.8 289.2 0 192 0S16 78.8 16 176c0 37.3 11.6 71.9 31.4 100.3c5 7.2 10.2 14.3 15.4 21.4c0 0 0 0 0 0c19.8 27.1 39.7 54.4 49.2 86.2l160 0zM192 512c44.2 0 80-35.8 80-80l0-16-160 0 0 16c0 44.2 35.8 80 80 80zM112 176c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-61.9 50.1-112 112-112c8.8 0 16 7.2 16 16s-7.2 16-16 16c-44.2 0-80 35.8-80 80z";bt.mw={prefix:"fas",iconName:le,icon:[384,512,ls,ho,Dl]},bt.rC=bt.mw},7964:(vt,bt)=>{"use strict";var le="link",ls=[128279,"chain"],ho="f0c1",Dl="M579.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L422.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C206.5 251.2 213 330 263 380c56.5 56.5 148 56.5 204.5 0L579.8 267.7zM60.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C74 372 74 321 105.5 289.5L217.7 177.2c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C433.5 260.8 427 182 377 132c-56.5-56.5-148-56.5-204.5 0L60.2 244.3z";bt.mw={prefix:"fas",iconName:le,icon:[640,512,ls,ho,Dl]},bt.CQ=bt.mw},3520:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="location-dot",ls=["map-marker-alt"],ho="f3c5",Dl="M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z";bt.definition={prefix:"fas",iconName:le,icon:[384,512,ls,ho,Dl]},bt.faLocationDot=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=384,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},7761:(vt,bt)=>{"use strict";var le="magnifying-glass",ls=[128269,"search"],ho="f002",Dl="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.$U=bt.mw},2e3:(vt,bt)=>{"use strict";var le=[128506,62072],ls="f279",ho="M384 476.1L192 421.2l0-385.3L384 90.8l0 385.3zm32-1.2l0-386.5L543.1 37.5c15.8-6.3 32.9 5.3 32.9 22.3l0 334.8c0 9.8-6 18.6-15.1 22.3L416 474.8zM15.1 95.1L160 37.2l0 386.5L32.9 474.5C17.1 480.8 0 469.2 0 452.2L0 117.4c0-9.8 6-18.6 15.1-22.3z";bt.mw={prefix:"fas",iconName:"map",icon:[576,512,le,ls,ho]},bt.e5=bt.mw},6655:(vt,bt,le)=>{"use strict";var ls=le(3520);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.Pc=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},3233:(vt,bt)=>{"use strict";var le="medal",ls=[127941],ho="f5a2",Dl="M4.1 38.2C1.4 34.2 0 29.4 0 24.6C0 11 11 0 24.6 0L133.9 0c11.2 0 21.7 5.9 27.4 15.5l68.5 114.1c-48.2 6.1-91.3 28.6-123.4 61.9L4.1 38.2zm503.7 0L405.6 191.5c-32.1-33.3-75.2-55.8-123.4-61.9L350.7 15.5C356.5 5.9 366.9 0 378.1 0L487.4 0C501 0 512 11 512 24.6c0 4.8-1.4 9.6-4.1 13.6zM80 336a176 176 0 1 1 352 0A176 176 0 1 1 80 336zm184.4-94.9c-3.4-7-13.3-7-16.8 0l-22.4 45.4c-1.4 2.8-4 4.7-7 5.1L168 298.9c-7.7 1.1-10.7 10.5-5.2 16l36.3 35.4c2.2 2.2 3.2 5.2 2.7 8.3l-8.6 49.9c-1.3 7.6 6.7 13.5 13.6 9.9l44.8-23.6c2.7-1.4 6-1.4 8.7 0l44.8 23.6c6.9 3.6 14.9-2.2 13.6-9.9l-8.6-49.9c-.5-3 .5-6.1 2.7-8.3l36.3-35.4c5.6-5.4 2.5-14.8-5.2-16l-50.1-7.3c-3-.4-5.7-2.4-7-5.1l-22.4-45.4z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.B9=bt.mw},7290:(vt,bt)=>{"use strict";var le="minus",ls=[8211,8722,10134,"subtract"],ho="f068",Dl="M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.EZ=bt.mw},8629:(vt,bt)=>{"use strict";var le="palette",ls=[127912],ho="f53f",Dl="M512 256c0 .9 0 1.8 0 2.7c-.4 36.5-33.6 61.3-70.1 61.3L344 320c-26.5 0-48 21.5-48 48c0 3.4 .4 6.7 1 9.9c2.1 10.2 6.5 20 10.8 29.9c6.1 13.8 12.1 27.5 12.1 42c0 31.8-21.6 60.7-53.4 62c-3.5 .1-7 .2-10.6 .2C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256zM128 288a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm0-96a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm96 96a32 32 0 1 0 0-64 32 32 0 1 0 0 64z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.fy=bt.mw},9683:(vt,bt)=>{"use strict";var le="panorama",ls=[],ho="e209",Dl="M45.6 32C20.4 32 0 52.4 0 77.6L0 434.4C0 459.6 20.4 480 45.6 480c5.1 0 10-.8 14.7-2.4C74.6 472.8 177.6 440 320 440s245.4 32.8 259.6 37.6c4.7 1.6 9.7 2.4 14.7 2.4c25.2 0 45.6-20.4 45.6-45.6l0-356.7C640 52.4 619.6 32 594.4 32c-5 0-10 .8-14.7 2.4C565.4 39.2 462.4 72 320 72S74.6 39.2 60.4 34.4C55.6 32.8 50.7 32 45.6 32zM96 160a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm272 0c7.9 0 15.4 3.9 19.8 10.5L512.3 353c5.4 8 5.6 18.4 .4 26.5s-14.7 12.3-24.2 10.7C442.7 382.4 385.2 376 320 376c-65.6 0-123.4 6.5-169.3 14.4c-9.8 1.7-19.7-2.9-24.7-11.5s-4.3-19.4 1.9-27.2L197.3 265c4.6-5.7 11.4-9 18.7-9s14.2 3.3 18.7 9l26.4 33.1 87-127.6c4.5-6.6 11.9-10.5 19.8-10.5z";bt.mw={prefix:"fas",iconName:le,icon:[640,512,ls,ho,Dl]},bt.pt=bt.mw},1708:(vt,bt)=>{"use strict";var le="paper-plane",ls=[61913],ho="f1d8",Dl="M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480l0-83.6c0-4 1.5-7.8 4.2-10.8L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.is=bt.mw},7472:(vt,bt)=>{"use strict";var le="pause",ls=[9208],ho="f04c",Dl="M48 64C21.5 64 0 85.5 0 112L0 400c0 26.5 21.5 48 48 48l32 0c26.5 0 48-21.5 48-48l0-288c0-26.5-21.5-48-48-48L48 64zm192 0c-26.5 0-48 21.5-48 48l0 288c0 26.5 21.5 48 48 48l32 0c26.5 0 48-21.5 48-48l0-288c0-26.5-21.5-48-48-48l-32 0z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,ho,Dl]},bt.G1=bt.mw},7321:(vt,bt)=>{"use strict";var le=[128394],ls="f304",ho="M362.7 19.3L314.3 67.7 444.3 197.7l48.4-48.4c25-25 25-65.5 0-90.5L453.3 19.3c-25-25-65.5-25-90.5 0zm-71 71L58.6 323.5c-10.4 10.4-18 23.3-22.2 37.4L1 481.2C-1.5 489.7 .8 498.8 7 505s15.3 8.5 23.7 6.1l120.3-35.4c14.1-4.2 27-11.8 37.4-22.2L421.7 220.3 291.7 90.3z";bt.mw={prefix:"fas",iconName:"pen",icon:[512,512,le,ls,ho]},bt.hp=bt.mw},9243:(vt,bt)=>{"use strict";var le="person-biking",ls=[128692,"biking"],ho="f84a",Dl="M400 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm27.2 64l-61.8-48.8c-17.3-13.6-41.7-13.8-59.1-.3l-83.1 64.2c-30.7 23.8-28.5 70.8 4.3 91.6L288 305.1 288 416c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128c0-10.7-5.3-20.7-14.2-26.6L295 232.9l60.3-48.5L396 217c5.7 4.5 12.7 7 20 7l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-52.8 0zM56 384a72 72 0 1 1 144 0A72 72 0 1 1 56 384zm200 0A128 128 0 1 0 0 384a128 128 0 1 0 256 0zm184 0a72 72 0 1 1 144 0 72 72 0 1 1 -144 0zm200 0a128 128 0 1 0 -256 0 128 128 0 1 0 256 0z";bt.mw={prefix:"fas",iconName:le,icon:[640,512,ls,ho,Dl]},bt.rO=bt.mw},6386:(vt,bt)=>{"use strict";var le="play",ls=[9654],ho="f04b",Dl="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80L0 432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z";bt.mw={prefix:"fas",iconName:le,icon:[384,512,ls,ho,Dl]},bt.ij=bt.mw},1372:(vt,bt)=>{"use strict";var le="plus",ls=[10133,61543,"add"],ho="M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,"2b",ho]},bt.QL=bt.mw},1319:(vt,bt,le)=>{"use strict";var ls=le(2587);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.jk=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},5124:(vt,bt)=>{"use strict";var le="question",ls=[10067,10068,61736],ho="M80 160c0-35.3 28.7-64 64-64l32 0c35.3 0 64 28.7 64 64l0 3.6c0 21.8-11.1 42.1-29.4 53.8l-42.2 27.1c-25.2 16.2-40.4 44.1-40.4 74l0 1.4c0 17.7 14.3 32 32 32s32-14.3 32-32l0-1.4c0-8.2 4.2-15.8 11-20.2l42.2-27.1c36.6-23.6 58.8-64.1 58.8-107.7l0-3.6c0-70.7-57.3-128-128-128l-32 0C73.3 32 16 89.3 16 160c0 17.7 14.3 32 32 32s32-14.3 32-32zm80 320a40 40 0 1 0 0-80 40 40 0 1 0 0 80z";bt.mw={prefix:"fas",iconName:le,icon:[320,512,ls,"3f",ho]},bt.Ev=bt.mw},7744:(vt,bt)=>{"use strict";var le="rocket",ls=[],ho="f135",Dl="M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2l0 82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9l0-107.2c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.KM=bt.mw},6787:(vt,bt)=>{"use strict";var le="satellite-dish",ls=[128225],ho="f7c0",Dl="M192 32c0-17.7 14.3-32 32-32C383.1 0 512 128.9 512 288c0 17.7-14.3 32-32 32s-32-14.3-32-32C448 164.3 347.7 64 224 64c-17.7 0-32-14.3-32-32zM60.6 220.6L164.7 324.7l28.4-28.4c-.7-2.6-1.1-5.4-1.1-8.3c0-17.7 14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32c-2.9 0-5.6-.4-8.3-1.1l-28.4 28.4L291.4 451.4c14.5 14.5 11.8 38.8-7.3 46.3C260.5 506.9 234.9 512 208 512C93.1 512 0 418.9 0 304c0-26.9 5.1-52.5 14.4-76.1c7.5-19 31.8-21.8 46.3-7.3zM224 96c106 0 192 86 192 192c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-70.7-57.3-128-128-128c-17.7 0-32-14.3-32-32s14.3-32 32-32z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.hU=bt.mw},2077:(vt,bt)=>{"use strict";var le="scroll",ls=[128220],ho="f70e",Dl="M0 80l0 48c0 17.7 14.3 32 32 32l16 0 48 0 0-80c0-26.5-21.5-48-48-48S0 53.5 0 80zM112 32c10 13.4 16 30 16 48l0 304c0 35.3 28.7 64 64 64s64-28.7 64-64l0-5.3c0-32.4 26.3-58.7 58.7-58.7L480 320l0-192c0-53-43-96-96-96L112 32zM464 480c61.9 0 112-50.1 112-112c0-8.8-7.2-16-16-16l-245.3 0c-14.7 0-26.7 11.9-26.7 26.7l0 5.3c0 53-43 96-96 96l176 0 96 0z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.DD=bt.mw},6002:(vt,bt,le)=>{"use strict";var ls=le(1260);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.QO=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},1260:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="share-nodes",ls=["share-alt"],ho="f1e0",Dl="M352 224c53 0 96-43 96-96s-43-96-96-96s-96 43-96 96c0 4 .2 8 .7 11.9l-94.1 47C145.4 170.2 121.9 160 96 160c-53 0-96 43-96 96s43 96 96 96c25.9 0 49.4-10.2 66.6-26.9l94.1 47c-.5 3.9-.7 7.8-.7 11.9c0 53 43 96 96 96s96-43 96-96s-43-96-96-96c-25.9 0-49.4 10.2-66.6 26.9l-94.1-47c.5-3.9 .7-7.8 .7-11.9s-.2-8-.7-11.9l94.1-47C302.6 213.8 326.1 224 352 224z";bt.definition={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.faShareNodes=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=448,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},1904:(vt,bt)=>{"use strict";var le="sliders",ls=["sliders-h"],ho="f1de",Dl="M0 416c0 17.7 14.3 32 32 32l54.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L480 448c17.7 0 32-14.3 32-32s-14.3-32-32-32l-246.7 0c-12.3-28.3-40.5-48-73.3-48s-61 19.7-73.3 48L32 384c-17.7 0-32 14.3-32 32zm128 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM320 256a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm32-80c-32.8 0-61 19.7-73.3 48L32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l246.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48l54.7 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-54.7 0c-12.3-28.3-40.5-48-73.3-48zM192 128a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm73.3-64C253 35.7 224.8 16 192 16s-61 19.7-73.3 48L32 64C14.3 64 0 78.3 0 96s14.3 32 32 32l86.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L480 128c17.7 0 32-14.3 32-32s-14.3-32-32-32L265.3 64z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt._$=bt.mw},2587:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="square-plus",ls=[61846,"plus-square"],ho="f0fe",Dl="M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM200 344l0-64-64 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l64 0 0-64c0-13.3 10.7-24 24-24s24 10.7 24 24l0 64 64 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-64 0 0 64c0 13.3-10.7 24-24 24s-24-10.7-24-24z";bt.definition={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.faSquarePlus=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=448,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},4780:(vt,bt)=>{"use strict";var le="star",ls=[11088,61446],ho="f005",Dl="M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z";bt.mw={prefix:"fas",iconName:le,icon:[576,512,ls,ho,Dl]},bt.yy=bt.mw},6249:(vt,bt)=>{"use strict";var le="tags",ls=[],ho="f02c",Dl="M345 39.1L472.8 168.4c52.4 53 52.4 138.2 0 191.2L360.8 472.9c-9.3 9.4-24.5 9.5-33.9 .2s-9.5-24.5-.2-33.9L438.6 325.9c33.9-34.3 33.9-89.4 0-123.7L310.9 72.9c-9.3-9.4-9.2-24.6 .2-33.9s24.6-9.2 33.9 .2zM0 229.5L0 80C0 53.5 21.5 32 48 32l149.5 0c17 0 33.3 6.7 45.3 18.7l168 168c25 25 25 65.5 0 90.5L277.3 442.7c-25 25-65.5 25-90.5 0l-168-168C6.7 262.7 0 246.5 0 229.5zM144 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.DX=bt.mw},3624:(vt,bt,le)=>{"use strict";var ls=le(6627);bt.mw={prefix:ls.prefix,iconName:ls.iconName,icon:[ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData]},bt.GR=bt.mw,ls.prefix,ls.iconName,ls.width,ls.height,ls.aliases,ls.unicode,ls.svgPathData,ls.aliases},4692:(vt,bt)=>{"use strict";var le="trash",ls=[],ho="f1f8",Dl="M135.2 17.7L128 32 32 32C14.3 32 0 46.3 0 64S14.3 96 32 96l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-96 0-7.2-14.3C307.4 6.8 296.3 0 284.2 0L163.8 0c-12.1 0-23.2 6.8-28.6 17.7zM416 128L32 128 53.2 467c1.6 25.3 22.6 45 47.9 45l245.8 0c25.3 0 46.3-19.7 47.9-45L416 128z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.yL=bt.mw},6311:(vt,bt)=>{"use strict";var le="triangle-exclamation",ls=[9888,"exclamation-triangle","warning"],ho="f071",Dl="M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z";bt.mw={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.JA=bt.mw},7144:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="up-right-from-square",ls=["external-link-alt"],ho="f35d",Dl="M352 0c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9L370.7 96 201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L416 141.3l41.4 41.4c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6l0-128c0-17.7-14.3-32-32-32L352 0zM80 32C35.8 32 0 67.8 0 112L0 432c0 44.2 35.8 80 80 80l320 0c44.2 0 80-35.8 80-80l0-112c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 112c0 8.8-7.2 16-16 16L80 448c-8.8 0-16-7.2-16-16l0-320c0-8.8 7.2-16 16-16l112 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L80 32z";bt.definition={prefix:"fas",iconName:le,icon:[512,512,ls,ho,Dl]},bt.faUpRightFromSquare=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=512,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},7879:(vt,bt)=>{"use strict";var le="user",ls=[128100,62144],ho="f007",Dl="M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l388.6 0c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304l-91.4 0z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.X4=bt.mw},3324:(vt,bt)=>{"use strict";var le="user-lock",ls=[],ho="f502",Dl="M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l362.8 0c-5.4-9.4-8.6-20.3-8.6-32l0-128c0-2.1 .1-4.2 .3-6.3c-31-26-71-41.7-114.6-41.7l-91.4 0zM528 240c17.7 0 32 14.3 32 32l0 48-64 0 0-48c0-17.7 14.3-32 32-32zm-80 32l0 48c-17.7 0-32 14.3-32 32l0 128c0 17.7 14.3 32 32 32l160 0c17.7 0 32-14.3 32-32l0-128c0-17.7-14.3-32-32-32l0-48c0-44.2-35.8-80-80-80s-80 35.8-80 80z";bt.mw={prefix:"fas",iconName:le,icon:[640,512,ls,ho,Dl]},bt.aA=bt.mw},7428:(vt,bt)=>{"use strict";var le="vector-square",ls=[],ho="f5cb",Dl="M368 80l32 0 0 32-32 0 0-32zM352 32c-17.7 0-32 14.3-32 32L128 64c0-17.7-14.3-32-32-32L32 32C14.3 32 0 46.3 0 64l0 64c0 17.7 14.3 32 32 32l0 192c-17.7 0-32 14.3-32 32l0 64c0 17.7 14.3 32 32 32l64 0c17.7 0 32-14.3 32-32l192 0c0 17.7 14.3 32 32 32l64 0c17.7 0 32-14.3 32-32l0-64c0-17.7-14.3-32-32-32l0-192c17.7 0 32-14.3 32-32l0-64c0-17.7-14.3-32-32-32l-64 0zM96 160c17.7 0 32-14.3 32-32l192 0c0 17.7 14.3 32 32 32l0 192c-17.7 0-32 14.3-32 32l-192 0c0-17.7-14.3-32-32-32l0-192zM48 400l32 0 0 32-32 0 0-32zm320 32l0-32 32 0 0 32-32 0zM48 112l0-32 32 0 0 32-32 0z";bt.mw={prefix:"fas",iconName:le,icon:[448,512,ls,ho,Dl]},bt.Cw=bt.mw},6627:(vt,bt)=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var le="xmark",ls=[128473,10005,10006,10060,215,"close","multiply","remove","times"],ho="f00d",Dl="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z";bt.definition={prefix:"fas",iconName:le,icon:[384,512,ls,ho,Dl]},bt.faXmark=bt.definition,bt.prefix="fas",bt.iconName=le,bt.width=384,bt.height=512,bt.ligatures=ls,bt.unicode=ho,bt.svgPathData=Dl,bt.aliases=ls},1545:(vt,bt,le)=>{"use strict";le.d(bt,{AZ:()=>im,GR:()=>vg,IJ:()=>Ag,Np:()=>Eg,Qw:()=>fg,S:()=>registerButton,TL:()=>jg,Wp:()=>Gd,aH:()=>sc,e6:()=>qd,jM:()=>AA,rx:()=>nm,uj:()=>bg,zY:()=>Ug});var ls=le(8168),ho=le(9435),Dl=le(9408),Fl=Object.defineProperty,__export=(vt,bt)=>{for(var le in bt)Fl(vt,le,{get:bt[le],enumerable:!0})},sc={};__export(sc,{ACTIONS:()=>Nd,ANIMATION_MIN_DURATION:()=>mc,CAPTURE_EVENTS_CLASS:()=>Ld,CTRLZOOM_TIMEOUT:()=>du,DBLCLICK_DELAY:()=>Ac,EASINGS:()=>Ud,ICONS:()=>jd,IDS:()=>Rd,KEY_CODES:()=>Od,LONGTOUCH_DELAY:()=>Ec,MOVE_THRESHOLD:()=>gc,SPHERE_RADIUS:()=>_u,TWOFINGERSOVERLAY_DELAY:()=>kc,VIEWER_DATA:()=>Md});var uc,mc=500,gc=4,Ac=300,Ec=500,kc=100,du=2e3,_u=10,Md="photoSphereViewer",Ld="psv--capture-event",Nd=(vt=>(vt.ROTATE_UP="ROTATE_UP",vt.ROTATE_DOWN="ROTATE_DOWN",vt.ROTATE_RIGHT="ROTATE_RIGHT",vt.ROTATE_LEFT="ROTATE_LEFT",vt.ZOOM_IN="ZOOM_IN",vt.ZOOM_OUT="ZOOM_OUT",vt))(Nd||{}),Rd={MENU:"menu",TWO_FINGERS:"twoFingers",CTRL_ZOOM:"ctrlZoom",ERROR:"error",DESCRIPTION:"description"},Od={Enter:"Enter",Control:"Control",Escape:"Escape",Space:" ",PageUp:"PageUp",PageDown:"PageDown",ArrowLeft:"ArrowLeft",ArrowUp:"ArrowUp",ArrowRight:"ArrowRight",ArrowDown:"ArrowDown",Delete:"Delete",Plus:"+",Minus:"-"},jd={arrow:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="40 40 432 432"><g transform="rotate(0, 256, 256)"><path fill="currentColor" d="M425.23 210.55H227.39a5 5 0 01-3.53-8.53l56.56-56.57a45.5 45.5 0 000-64.28 45.15 45.15 0 00-32.13-13.3 45.15 45.15 0 00-32.14 13.3L41.32 256l174.83 174.83a45.15 45.15 0 0032.14 13.3 45.15 45.15 0 0032.13-13.3 45.5 45.5 0 000-64.28l-56.57-56.57a5 5 0 013.54-8.53h197.84c25.06 0 45.45-20.39 45.45-45.45s-20.4-45.45-45.45-45.45z"/></g>\x3c!-- Created by Flatart from the Noun Project --\x3e</svg>\n',close:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><g fill="currentColor" transform=" translate(50, 50) rotate(45)"><rect x="-5" y="-65" width="10" height="130"/><rect x="-65" y="-5" width="130" height="10"/></g></svg>',download:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M83.3 35.6h-17V3H32.2v32.6H16.6l33.6 32.7 33-32.7z"/><path fill="currentColor" d="M83.3 64.2v16.3H16.6V64.2H-.1v32.6H100V64.2H83.3z"/>\x3c!--Created by Michael Zenaty from the Noun Project--\x3e</svg>\n',fullscreenIn:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M100 40H87.1V18.8h-21V6H100zM100 93.2H66V80.3h21.1v-21H100zM34 93.2H0v-34h12.9v21.1h21zM12.9 40H0V6h34v12.9H12.8z"/>\x3c!--Created by Garrett Knoll from the Noun Project--\x3e</svg>\n',fullscreenOut:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M66 7h13v21h21v13H66zM66 60.3h34v12.9H79v21H66zM0 60.3h34v34H21V73.1H0zM21 7h13v34H0V28h21z"/>\x3c!--Created by Garrett Knoll from the Noun Project--\x3e</svg>\n',info:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="currentColor" d="M28.3 26.1c-1 2.6-1.9 4.8-2.6 7-2.5 7.4-5 14.7-7.2 22-1.3 4.4.5 7.2 4.3 7.8 1.3.2 2.8.2 4.2-.1 8.2-2 11.9-8.6 15.7-15.2l-2.2 2a18.8 18.8 0 0 1-7.4 5.2 2 2 0 0 1-1.6-.2c-.2-.1 0-1 0-1.4l.8-1.8L41.9 28c.5-1.4.9-3 .7-4.4-.2-2.6-3-4.4-6.3-4.4-8.8.2-15 4.5-19.5 11.8-.2.3-.2.6-.3 1.3 3.7-2.8 6.8-6.1 11.8-6.2z"/><circle fill="currentColor" cx="39.3" cy="9.2" r="8.2"/>\x3c!--Created by Arafat Uddin from the Noun Project--\x3e</svg>\n',menu:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="10 10 80 80"><g fill="currentColor"><circle r="10" cx="20" cy="20"/><circle r="10" cx="50" cy="20"/><circle r="10" cx="80" cy="20"/><circle r="10" cx="20" cy="50"/><circle r="10" cx="50" cy="50"/><circle r="10" cx="80" cy="50"/><circle r="10" cx="20" cy="80"/><circle r="10" cx="50" cy="80"/><circle r="10" cx="80" cy="80"/></g>\x3c!-- Created by Richard Kun\xe1k from the Noun Project--\x3e</svg>\n',zoomIn:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="currentColor" d="M14.043 12.22a7.738 7.738 0 1 0-1.823 1.822l4.985 4.985c.503.504 1.32.504 1.822 0a1.285 1.285 0 0 0 0-1.822l-4.984-4.985zm-6.305 1.043a5.527 5.527 0 1 1 0-11.053 5.527 5.527 0 0 1 0 11.053z"/><path fill="currentColor" d="M8.728 4.009H6.744v2.737H4.006V8.73h2.738v2.736h1.984V8.73h2.737V6.746H8.728z"/>\x3c!--Created by Ryan Canning from the Noun Project--\x3e</svg>\n',zoomOut:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="currentColor" d="M14.043 12.22a7.738 7.738 0 1 0-1.823 1.822l4.985 4.985c.503.504 1.32.504 1.822 0a1.285 1.285 0 0 0 0-1.822l-4.984-4.985zm-6.305 1.043a5.527 5.527 0 1 1 0-11.053 5.527 5.527 0 0 1 0 11.053z"/><path fill="currentColor" d="M4.006 6.746h7.459V8.73H4.006z"/>\x3c!--Created by Ryan Canning from the Noun Project--\x3e</svg>\n'},Ud={linear:vt=>vt,inQuad:vt=>vt*vt,outQuad:vt=>vt*(2-vt),inOutQuad:vt=>vt<.5?2*vt*vt:(4-2*vt)*vt-1,inCubic:vt=>vt*vt*vt,outCubic:vt=>--vt*vt*vt+1,inOutCubic:vt=>vt<.5?4*vt*vt*vt:(vt-1)*(2*vt-2)*(2*vt-2)+1,inQuart:vt=>vt*vt*vt*vt,outQuart:vt=>1- --vt*vt*vt*vt,inOutQuart:vt=>vt<.5?8*vt*vt*vt*vt:1-8*--vt*vt*vt*vt,inQuint:vt=>vt*vt*vt*vt*vt,outQuint:vt=>1+--vt*vt*vt*vt*vt,inOutQuint:vt=>vt<.5?16*vt*vt*vt*vt*vt:1+16*--vt*vt*vt*vt*vt,inSine:vt=>1-Math.cos(vt*(Math.PI/2)),outSine:vt=>Math.sin(vt*(Math.PI/2)),inOutSine:vt=>.5-.5*Math.cos(Math.PI*vt),inExpo:vt=>Math.pow(2,10*(vt-1)),outExpo:vt=>1-Math.pow(2,-10*vt),inOutExpo:vt=>(vt=2*vt-1)<0?.5*Math.pow(2,10*vt):1-.5*Math.pow(2,-10*vt),inCirc:vt=>1-Math.sqrt(1-vt*vt),outCirc:vt=>Math.sqrt(1-(vt-1)*(vt-1)),inOutCirc:vt=>(vt*=2)<1?.5-.5*Math.sqrt(1-vt*vt):.5+.5*Math.sqrt(1-(vt-=2)*vt)},Gd={};function wrap(vt,bt){let le=vt%bt;return le<0&&(le+=bt),le}function sum(vt){return vt.reduce(((vt,bt)=>vt+bt),0)}function distance(vt,bt){return Math.sqrt(Math.pow(vt.x-bt.x,2)+Math.pow(vt.y-bt.y,2))}function angle(vt,bt){return Math.atan2(bt.y-vt.y,bt.x-vt.x)}function getShortestArc(vt,bt){return[0,2*Math.PI,2*-Math.PI].reduce(((le,ls)=>{const ho=bt-vt+ls;return Math.abs(ho)<Math.abs(le)?ho:le}),1/0)}function getAngle(vt,bt){return Math.acos(Math.cos(vt.pitch)*Math.cos(bt.pitch)*Math.cos(vt.yaw-bt.yaw)+Math.sin(vt.pitch)*Math.sin(bt.pitch))}function greatArcDistance(vt,bt){let[le,ls]=vt,[ho,Dl]=bt;le-ho>Math.PI?le-=2*Math.PI:le-ho<-Math.PI&&(le+=2*Math.PI);const Fl=(ho-le)*Math.cos((ls+Dl)/2),sc=Dl-ls;return Math.sqrt(Fl*Fl+sc*sc)}function getElement(vt){return"string"===typeof vt?vt.match(/^[a-z]/i)?document.getElementById(vt):document.querySelector(vt):vt}function toggleClass(vt,bt,le){void 0===le?vt.classList.toggle(bt):le?vt.classList.add(bt):le||vt.classList.remove(bt)}function addClasses(vt,bt){vt.classList.add(...bt.split(" ").filter((vt=>!!vt)))}function removeClasses(vt,bt){vt.classList.remove(...bt.split(" ").filter((vt=>!!vt)))}function hasParent(vt,bt){let le=vt;do{if(le===bt)return!0;le=le.parentElement}while(le);return!1}function getClosest(vt,bt){if(null==vt||!vt.matches)return null;let le=vt;do{if(le.matches(bt))return le;le=le.parentElement}while(le);return null}function getEventTarget(vt){return(null==vt?void 0:vt.composedPath()[0])||null}function getMatchingTarget(vt,bt){return vt?vt.composedPath().find((vt=>(vt instanceof HTMLElement||vt instanceof SVGElement)&&vt.matches(bt))):null}function getPosition(vt){let bt=0,le=0,ls=vt;for(;ls;)bt+=ls.offsetLeft-ls.scrollLeft+ls.clientLeft,le+=ls.offsetTop-ls.scrollTop+ls.clientTop,ls=ls.offsetParent;return bt-=window.scrollX,le-=window.scrollY,{x:bt,y:le}}function getStyleProperty(vt,bt){return window.getComputedStyle(vt).getPropertyValue(bt)}function getTouchData(vt){if(vt.touches.length<2)return null;const bt={x:vt.touches[0].clientX,y:vt.touches[0].clientY},le={x:vt.touches[1].clientX,y:vt.touches[1].clientY};return{distance:distance(bt,le),angle:angle(bt,le),center:{x:(bt.x+le.x)/2,y:(bt.y+le.y)/2}}}function isFullscreenEnabled(vt,bt){return void 0===bt&&(bt=!1),bt?vt===uc:document.fullscreenElement===vt}function requestFullscreen(vt,bt){void 0===bt&&(bt=!1),bt?(uc=vt,vt.classList.add("psv-fullscreen-emulation"),document.dispatchEvent(new Event("fullscreenchange"))):vt.requestFullscreen()}function exitFullscreen(vt){void 0===vt&&(vt=!1),vt?(uc.classList.remove("psv-fullscreen-emulation"),uc=null,document.dispatchEvent(new Event("fullscreenchange"))):document.exitFullscreen()}function keyPressMatch(vt,bt){let le,ls=!1,ho=!1,Dl=!1,Fl=!1;return"+"===bt?le=bt:bt.split("+").forEach((vt=>{switch(vt){case"Shift":ls=!0;break;case"Ctrl":ho=!0;break;case"Alt":Dl=!0;break;case"Meta":Fl=!0;break;case"Space":le=" ";break;case"Plus":le="+";break;case"Minus":le="-";break;default:le=vt}})),ls===vt.shiftKey&&ho===vt.ctrlKey&&Dl===vt.altKey&&Fl===vt.metaKey&&le===vt.key}function dasherize(vt){return vt.replace(/[A-Z](?:(?=[^A-Z])|[A-Z]*(?=[A-Z][^A-Z]|$))/g,((vt,bt)=>(bt>0?"-":"")+vt.toLowerCase()))}function throttle(vt,bt){let le=!1;return function(){for(var ls=arguments.length,ho=new Array(ls),Dl=0;Dl<ls;Dl++)ho[Dl]=arguments[Dl];le||(le=!0,setTimeout((()=>{vt.apply(this,ho),le=!1}),bt))}}function isPlainObject(vt){if("object"!==typeof vt||null===vt||"[object Object]"!==Object.prototype.toString.call(vt))return!1;if(null===Object.getPrototypeOf(vt))return!0;let bt=vt;for(;null!==Object.getPrototypeOf(bt);)bt=Object.getPrototypeOf(bt);return Object.getPrototypeOf(vt)===bt}function deepmerge(vt,bt){const le=bt;return function merge(vt,bt){return Array.isArray(bt)?(vt&&Array.isArray(vt)?vt.length=0:vt=[],bt.forEach(((bt,le)=>{vt[le]=merge(null,bt)}))):"object"===typeof bt?(vt&&!Array.isArray(vt)||(vt={}),Object.keys(bt).forEach((ls=>{"__proto__"!==ls&&("object"===typeof bt[ls]&&bt[ls]&&isPlainObject(bt[ls])?bt[ls]!==le&&(vt[ls]?merge(vt[ls],bt[ls]):vt[ls]=merge(null,bt[ls])):vt[ls]=bt[ls])}))):vt=bt,vt}(vt,bt)}function clone(vt){return deepmerge(null,vt)}function isEmpty(vt){return!vt||0===Object.keys(vt).length&&vt.constructor===Object}function isNil(vt){return null===vt||void 0===vt}function firstNonNull(){for(var vt=arguments.length,bt=new Array(vt),le=0;le<vt;le++)bt[le]=arguments[le];for(const ls of bt)if(!isNil(ls))return ls;return null}function deepEqual(vt,bt){if(vt===bt)return!0;if(isObject(vt)&&isObject(bt)){if(Object.keys(vt).length!==Object.keys(bt).length)return!1;for(const le of Object.keys(vt))if(!deepEqual(vt[le],bt[le]))return!1;return!0}return!1}function isObject(vt){return"object"===typeof vt&&null!==vt}__export(Gd,{Animation:()=>Kd,Dynamic:()=>Jd,MultiDynamic:()=>$d,PressHandler:()=>sp,Slider:()=>em,SliderDirection:()=>tm,addClasses:()=>addClasses,angle:()=>angle,applyEulerInverse:()=>applyEulerInverse,checkClosedShadowDom:()=>checkClosedShadowDom,checkStylesheet:()=>checkStylesheet,checkVersion:()=>checkVersion,cleanCssPosition:()=>cleanCssPosition,clone:()=>clone,createTexture:()=>createTexture,cssPositionIsOrdered:()=>cssPositionIsOrdered,dasherize:()=>dasherize,deepEqual:()=>deepEqual,deepmerge:()=>deepmerge,distance:()=>distance,exitFullscreen:()=>exitFullscreen,firstNonNull:()=>firstNonNull,getAbortError:()=>getAbortError,getAngle:()=>getAngle,getClosest:()=>getClosest,getConfigParser:()=>getConfigParser,getElement:()=>getElement,getEventTarget:()=>getEventTarget,getMatchingTarget:()=>getMatchingTarget,getPosition:()=>getPosition,getShortestArc:()=>getShortestArc,getStyleProperty:()=>getStyleProperty,getTouchData:()=>getTouchData,getXMPValue:()=>getXMPValue,greatArcDistance:()=>greatArcDistance,hasParent:()=>hasParent,invertResolvableBoolean:()=>invertResolvableBoolean,isAbortError:()=>isAbortError,isEmpty:()=>isEmpty,isExtendedPosition:()=>isExtendedPosition,isFullscreenEnabled:()=>isFullscreenEnabled,isNil:()=>isNil,isPlainObject:()=>isPlainObject,keyPressMatch:()=>keyPressMatch,logWarn:()=>logWarn,mergePanoData:()=>mergePanoData,parseAngle:()=>parseAngle,parsePoint:()=>parsePoint,parseSpeed:()=>parseSpeed,removeClasses:()=>removeClasses,requestFullscreen:()=>requestFullscreen,resolveBoolean:()=>resolveBoolean,speedToDuration:()=>speedToDuration,sum:()=>sum,throttle:()=>throttle,toggleClass:()=>toggleClass,wrap:()=>wrap});var qd=class _PSVError extends Error{constructor(vt,bt){super(bt&&bt instanceof Error?vt+": "+bt.message:vt),this.name="PSVError",null==Error.captureStackTrace||Error.captureStackTrace(this,_PSVError)}};function resolveBoolean(vt,bt){isPlainObject(vt)?(bt(vt.initial,!0),vt.promise.then((vt=>bt(vt,!1)))):bt(vt,!0)}function invertResolvableBoolean(vt){return{initial:!vt.initial,promise:vt.promise.then((vt=>!vt))}}function getAbortError(){const vt=new Error("Loading was aborted.");return vt.name="AbortError",vt}function isAbortError(vt){return"AbortError"===(null==vt?void 0:vt.name)}function logWarn(vt){console.warn("PhotoSphereViewer: "+vt)}function isExtendedPosition(vt){return!(!vt||Array.isArray(vt))&&[["textureX","textureY"],["yaw","pitch"]].some((bt=>{let[le,ls]=bt;return void 0!==vt[le]&&void 0!==vt[ls]}))}function getXMPValue(vt,bt,le){void 0===le&&(le=!0);let ls=vt.match("<GPano:"+bt+">(.*)</GPano:"+bt+">");if(null!==ls){const vt=le?parseInt(ls[1],10):parseFloat(ls[1]);return isNaN(vt)?null:vt}if(ls=vt.match("GPano:"+bt+'="(.*?)"'),null!==ls){const vt=le?parseInt(ls[1],10):parseFloat(ls[1]);return isNaN(vt)?null:vt}return null}var Hd={top:"0%",bottom:"100%",left:"0%",right:"100%",center:"50%"},Wd=["left","center","right"],Zd=["top","center","bottom"],Yd=[...Wd,...Zd],Qd="center";function parsePoint(vt){if(!vt)return{x:.5,y:.5};if("object"===typeof vt)return vt;let bt=vt.toLocaleLowerCase().split(" ").slice(0,2);1===bt.length&&(bt=Hd[bt[0]]?[bt[0],Qd]:[bt[0],bt[0]]);const le="left"!==bt[1]&&"right"!==bt[1]&&"top"!==bt[0]&&"bottom"!==bt[0];bt=bt.map((vt=>Hd[vt]||vt)),le||bt.reverse();const ls=bt.join(" ").match(/^([0-9.]+)% ([0-9.]+)%$/);return ls?{x:parseFloat(ls[1])/100,y:parseFloat(ls[2])/100}:{x:.5,y:.5}}function cleanCssPosition(vt,bt){let{allowCenter:le,cssOrder:ls}=void 0===bt?{allowCenter:!0,cssOrder:!0}:bt;return vt?("string"===typeof vt&&(vt=vt.split(" ")),1===vt.length&&(vt[0]===Qd?vt=[Qd,Qd]:-1!==Wd.indexOf(vt[0])?vt=[Qd,vt[0]]:-1!==Zd.indexOf(vt[0])&&(vt=[vt[0],Qd])),2!==vt.length||-1===Yd.indexOf(vt[0])||-1===Yd.indexOf(vt[1])?(logWarn("Unparsable position "+vt),null):le||vt[0]!==Qd||vt[1]!==Qd?(ls&&!cssPositionIsOrdered(vt)&&(vt=[vt[1],vt[0]]),vt[1]===Qd&&-1!==Wd.indexOf(vt[0])&&(vt=[Qd,vt[0]]),vt[0]===Qd&&-1!==Zd.indexOf(vt[1])&&(vt=[vt[1],Qd]),vt):(logWarn("Invalid position center center"),null)):null}function cssPositionIsOrdered(vt){return-1!==Zd.indexOf(vt[0])&&-1!==Wd.indexOf(vt[1])}function parseSpeed(vt){let bt;if("string"===typeof vt){const le=vt.toString().trim();let ls=parseFloat(le.replace(/^(-?[0-9]+(?:\.[0-9]*)?).*$/,"$1"));const Dl=le.replace(/^-?[0-9]+(?:\.[0-9]*)?(.*)$/,"$1").trim();switch(Dl.match(/(pm|per minute)$/)&&(ls/=60),Dl){case"dpm":case"degrees per minute":case"dps":case"degrees per second":bt=ho.cj9.degToRad(ls);break;case"rdpm":case"radians per minute":case"rdps":case"radians per second":bt=ls;break;case"rpm":case"revolutions per minute":case"rps":case"revolutions per second":bt=ls*Math.PI*2;break;default:throw new qd('Unknown speed unit "'+Dl+'"')}}else bt=vt;return bt}function speedToDuration(vt,bt){if("number"!==typeof vt){const le=parseSpeed(vt);return bt/Math.abs(le)*1e3}return Math.abs(vt)}function parseAngle(vt,bt,le){let ls;if(void 0===bt&&(bt=!1),void 0===le&&(le=bt),"string"===typeof vt){const bt=vt.toLowerCase().trim().match(/^(-?[0-9]+(?:\.[0-9]*)?)(.*)$/);if(!bt)throw new qd('Unknown angle "'+vt+'"');const le=parseFloat(bt[1]),Dl=bt[2];if(Dl)switch(Dl){case"deg":case"degs":ls=ho.cj9.degToRad(le);break;case"rad":case"rads":ls=le;break;default:throw new qd('Unknown angle unit "'+Dl+'"')}else ls=le}else{if("number"!==typeof vt||isNaN(vt))throw new qd('Unknown angle "'+vt+'"');ls=vt}return ls=wrap(bt?ls+Math.PI:ls,2*Math.PI),bt?ho.cj9.clamp(ls-Math.PI,-Math.PI/(le?2:1),Math.PI/(le?2:1)):ls}function createTexture(vt,bt){void 0===bt&&(bt=!1);const le=new ho.gPd(vt);return le.needsUpdate=!0,le.minFilter=bt?ho.$_I:ho.k6q,le.generateMipmaps=bt,le.anisotropy=bt?2:1,le}var Xd=new ho.PTz;function applyEulerInverse(vt,bt){Xd.setFromEuler(bt).invert(),vt.applyQuaternion(Xd)}function getConfigParser(vt,bt){const parser=function(le){const ho=clone((0,ls.A)({},vt,le)),Dl={};for(let[ls,Fl]of Object.entries(ho)){if(bt&&ls in bt)Fl=bt[ls](Fl,{rawConfig:ho,defValue:vt[ls]});else if(!(ls in vt)){logWarn("Unknown option "+ls);continue}Dl[ls]=Fl}return Dl};return parser.defaults=vt,parser.parsers=bt||{},parser}function checkStylesheet(vt,bt){"true"!==getStyleProperty(vt,"--psv-"+bt+"-loaded")&&console.error('PhotoSphereViewer: stylesheet "@photo-sphere-viewer/'+bt+'/index.css" is not loaded')}function checkVersion(vt,bt,le){bt&&bt!==le&&console.error("PhotoSphereViewer: @photo-sphere-viewer/"+vt+" is in version "+bt+" but @photo-sphere-viewer/core is in version "+le)}function checkClosedShadowDom(vt){do{if(vt instanceof ShadowRoot&&"closed"===vt.mode)return void console.error("PhotoSphereViewer: closed shadow DOM detected, the viewer might not work as expected");vt=vt.parentNode}while(vt)}function mergePanoData(vt,bt,le,ls){const ho={isEquirectangular:!0,fullWidth:firstNonNull(null==le?void 0:le.fullWidth,null==ls?void 0:ls.fullWidth),fullHeight:firstNonNull(null==le?void 0:le.fullHeight,null==ls?void 0:ls.fullHeight),croppedWidth:firstNonNull(null==le?void 0:le.croppedWidth,null==ls?void 0:ls.croppedWidth,vt),croppedHeight:firstNonNull(null==le?void 0:le.croppedHeight,null==ls?void 0:ls.croppedHeight,bt),croppedX:firstNonNull(null==le?void 0:le.croppedX,null==ls?void 0:ls.croppedX),croppedY:firstNonNull(null==le?void 0:le.croppedY,null==ls?void 0:ls.croppedY),poseHeading:firstNonNull(null==le?void 0:le.poseHeading,null==ls?void 0:ls.poseHeading,0),posePitch:firstNonNull(null==le?void 0:le.posePitch,null==ls?void 0:ls.posePitch,0),poseRoll:firstNonNull(null==le?void 0:le.poseRoll,null==ls?void 0:ls.poseRoll,0),initialHeading:null==ls?void 0:ls.initialHeading,initialPitch:null==ls?void 0:ls.initialPitch,initialFov:null==ls?void 0:ls.initialFov};if(ho.croppedWidth!==vt){const bt=vt/ho.croppedWidth;["fullWidth","fullHeight","croppedWidth","croppedHeight","croppedX","croppedY"].forEach((vt=>{ho[vt]&&(ho[vt]=Math.round(ho[vt]*bt))}))}return ho.fullWidth||ho.fullHeight||(ho.fullWidth=Math.max(ho.croppedWidth,2*ho.croppedHeight),ho.fullHeight=Math.round(ho.fullWidth/2)),ho.fullWidth||(ho.fullWidth=2*ho.fullHeight),ho.fullHeight||(ho.fullHeight=Math.round(ho.fullWidth/2)),null===ho.croppedX&&(ho.croppedX=Math.round((ho.fullWidth-vt)/2)),null===ho.croppedY&&(ho.croppedY=Math.round((ho.fullHeight-bt)/2)),Math.abs(ho.fullWidth-2*ho.fullHeight)>1&&(logWarn("Invalid panoData, fullWidth should be twice fullHeight"),ho.fullHeight=Math.round(ho.fullWidth/2)),ho.croppedX+ho.croppedWidth>ho.fullWidth&&(logWarn("Invalid panoData, croppedX + croppedWidth > fullWidth"),ho.croppedX=ho.fullWidth-ho.croppedWidth),ho.croppedY+ho.croppedHeight>ho.fullHeight&&(logWarn("Invalid panoData, croppedY + croppedHeight > fullHeight"),ho.croppedY=ho.fullHeight-ho.croppedHeight),ho.croppedX<0&&(logWarn("Invalid panoData, croppedX < 0"),ho.croppedX=0),ho.croppedY<0&&(logWarn("Invalid panoData, croppedY < 0"),ho.croppedY=0),ho}var Kd=class{constructor(vt){this.easing=Ud.linear,this.callbacks=[],this.resolved=!1,this.cancelled=!1,this.options=vt,vt?(vt.easing&&(this.easing="function"===typeof vt.easing?vt.easing:Ud[vt.easing]||Ud.linear),this.delayTimeout=setTimeout((()=>{this.delayTimeout=void 0,this.animationFrame=window.requestAnimationFrame((vt=>this.__run(vt)))}),vt.delay||0)):this.resolved=!0}__run(vt){if(this.cancelled)return;this.start||(this.start=vt);const bt=(vt-this.start)/this.options.duration,le={};if(bt<1){for(const[vt,ls]of Object.entries(this.options.properties))if(ls){const ho=ls.start+(ls.end-ls.start)*this.easing(bt);le[vt]=ho}this.options.onTick(le,bt),this.animationFrame=window.requestAnimationFrame((vt=>this.__run(vt)))}else{for(const[vt,bt]of Object.entries(this.options.properties))bt&&(le[vt]=bt.end);this.options.onTick(le,1),this.__resolve(!0),this.animationFrame=void 0}}__resolve(vt){vt?this.resolved=!0:this.cancelled=!0,this.callbacks.forEach((bt=>bt(vt))),this.callbacks.length=0}then(vt){return this.resolved||this.cancelled?Promise.resolve(this.resolved).then(vt):new Promise((vt=>{this.callbacks.push(vt)})).then(vt)}cancel(){this.cancelled||this.resolved||(this.__resolve(!1),this.delayTimeout&&(window.clearTimeout(this.delayTimeout),this.delayTimeout=void 0),this.animationFrame&&(window.cancelAnimationFrame(this.animationFrame),this.animationFrame=void 0))}},Jd=class{constructor(vt,bt){if(this.fn=vt,this.mode=0,this.speed=0,this.speedMult=0,this.currentSpeed=0,this.target=0,this.__current=0,this.min=bt.min,this.max=bt.max,this.wrap=bt.wrap,this.current=bt.defaultValue,this.wrap&&0!==this.min)throw new qd("invalid config");this.fn&&this.fn(this.current)}get current(){return this.__current}set current(vt){this.__current=vt}setSpeed(vt){this.speed=vt}goto(vt,bt){void 0===bt&&(bt=1),this.mode=2,this.target=this.wrap?wrap(vt,this.max):ho.cj9.clamp(vt,this.min,this.max),this.speedMult=bt}step(vt,bt){void 0===bt&&(bt=1),0===bt?this.setValue(this.current+vt):(2!==this.mode&&(this.target=this.current),this.goto(this.target+vt,bt))}roll(vt,bt){void 0===vt&&(vt=!1),void 0===bt&&(bt=1),this.mode=1,this.target=vt?-1/0:1/0,this.speedMult=bt}stop(){this.mode=0}setValue(vt){return this.target=this.wrap?wrap(vt,this.max):ho.cj9.clamp(vt,this.min,this.max),this.mode=0,this.currentSpeed=0,this.target!==this.current&&(this.current=this.target,this.fn&&this.fn(this.current),!0)}update(vt){if(2===this.mode){this.wrap&&Math.abs(this.target-this.current)>this.max/2&&(this.current=this.current<this.target?this.current+this.max:this.current-this.max);const vt=this.currentSpeed*this.currentSpeed/(this.speed*this.speedMult*4);Math.abs(this.target-this.current)<=vt&&(this.mode=0)}let bt=0===this.mode?0:this.speed*this.speedMult;this.target<this.current&&(bt=-bt),this.currentSpeed<bt?this.currentSpeed=Math.min(bt,this.currentSpeed+vt/1e3*this.speed*this.speedMult*2):this.currentSpeed>bt&&(this.currentSpeed=Math.max(bt,this.currentSpeed-vt/1e3*this.speed*this.speedMult*2));let le=null;return this.current>this.target&&this.currentSpeed?le=Math.max(this.target,this.current+this.currentSpeed*vt/1e3):this.current<this.target&&this.currentSpeed&&(le=Math.min(this.target,this.current+this.currentSpeed*vt/1e3)),null!==le&&(le=this.wrap?wrap(le,this.max):ho.cj9.clamp(le,this.min,this.max),le!==this.current)&&(this.current=le,this.fn&&this.fn(this.current),!0)}},$d=class{constructor(vt,bt){this.fn=vt,this.dynamics=bt,this.fn&&this.fn(this.current)}get current(){return Object.entries(this.dynamics).reduce(((vt,bt)=>{let[le,ls]=bt;return vt[le]=ls.current,vt}),{})}setSpeed(vt){for(const bt of Object.values(this.dynamics))bt.setSpeed(vt)}goto(vt,bt){void 0===bt&&(bt=1);for(const[le,ls]of Object.entries(vt))this.dynamics[le].goto(ls,bt)}step(vt,bt){if(void 0===bt&&(bt=1),0===bt)this.setValue(Object.keys(vt).reduce(((bt,le)=>(bt[le]=vt[le]+this.dynamics[le].current,bt)),{}));else for(const[le,ls]of Object.entries(vt))this.dynamics[le].step(ls,bt)}roll(vt,bt){void 0===bt&&(bt=1);for(const[le,ls]of Object.entries(vt))this.dynamics[le].roll(ls,bt)}stop(){for(const vt of Object.values(this.dynamics))vt.stop()}setValue(vt){let bt=!1;for(const[le,ls]of Object.entries(vt))bt=this.dynamics[le].setValue(ls)||bt;return bt&&this.fn&&this.fn(this.current),bt}update(vt){let bt=!1;for(const le of Object.values(this.dynamics))bt=le.update(vt)||bt;return bt&&this.fn&&this.fn(this.current),bt}},sp=class{constructor(vt){void 0===vt&&(vt=200),this.delay=vt,this.time=0,this.delay=vt}get pending(){return 0!==this.time}down(vt){this.timeout&&(clearTimeout(this.timeout),this.timeout=void 0),this.time=(new Date).getTime(),this.data=vt}up(vt){if(!this.time)return;Date.now()-this.time<this.delay?this.timeout=setTimeout((()=>{vt(this.data),this.timeout=void 0,this.time=0,this.data=void 0}),this.delay):(vt(this.data),this.time=0,this.data=void 0)}},tm=(vt=>(vt.VERTICAL="VERTICAL",vt.HORIZONTAL="HORIZONTAL",vt))(tm||{}),em=class{constructor(vt,bt,le){this.container=vt,this.direction=bt,this.listener=le,this.mousedown=!1,this.mouseover=!1,this.container.addEventListener("click",this),this.container.addEventListener("mousedown",this),this.container.addEventListener("mouseenter",this),this.container.addEventListener("mouseleave",this),this.container.addEventListener("touchstart",this),this.container.addEventListener("mousemove",this,!0),this.container.addEventListener("touchmove",this,!0),window.addEventListener("mouseup",this),window.addEventListener("touchend",this)}get isVertical(){return"VERTICAL"===this.direction}get isHorizontal(){return"HORIZONTAL"===this.direction}destroy(){window.removeEventListener("mouseup",this),window.removeEventListener("touchend",this)}handleEvent(vt){switch(vt.type){case"click":vt.stopPropagation();break;case"mousedown":this.__onMouseDown(vt);break;case"mouseenter":this.__onMouseEnter(vt);break;case"mouseleave":this.__onMouseLeave(vt);break;case"touchstart":this.__onTouchStart(vt);break;case"mousemove":this.__onMouseMove(vt);break;case"touchmove":this.__onTouchMove(vt);break;case"mouseup":this.__onMouseUp(vt);break;case"touchend":this.__onTouchEnd(vt)}}__onMouseDown(vt){this.mousedown=!0,this.__update(vt.clientX,vt.clientY,!0)}__onMouseEnter(vt){this.mouseover=!0,this.__update(vt.clientX,vt.clientY,!0)}__onTouchStart(vt){this.mouseover=!0,this.mousedown=!0;const bt=vt.changedTouches[0];this.__update(bt.clientX,bt.clientY,!0)}__onMouseMove(vt){(this.mousedown||this.mouseover)&&(vt.stopPropagation(),this.__update(vt.clientX,vt.clientY,!0))}__onTouchMove(vt){if(this.mousedown||this.mouseover){vt.stopPropagation();const bt=vt.changedTouches[0];this.__update(bt.clientX,bt.clientY,!0)}}__onMouseUp(vt){this.mousedown&&(this.mousedown=!1,this.__update(vt.clientX,vt.clientY,!1))}__onMouseLeave(vt){this.mouseover&&(this.mouseover=!1,this.__update(vt.clientX,vt.clientY,!0))}__onTouchEnd(vt){if(this.mousedown){this.mouseover=!1,this.mousedown=!1;const bt=vt.changedTouches[0];this.__update(bt.clientX,bt.clientY,!1)}}__update(vt,bt,le){const ls=this.container.getBoundingClientRect();let Dl;Dl=this.isVertical?ho.cj9.clamp((ls.bottom-bt)/ls.height,0,1):ho.cj9.clamp((vt-ls.left)/ls.width,0,1),this.listener({value:Dl,click:!le,mousedown:this.mousedown,mouseover:this.mouseover,cursor:{clientX:vt,clientY:bt}})}},im={};__export(im,{BeforeAnimateEvent:()=>om,BeforeRenderEvent:()=>cm,BeforeRotateEvent:()=>hm,ClickEvent:()=>pm,ConfigChangedEvent:()=>fm,DoubleClickEvent:()=>Am,FullscreenEvent:()=>ym,HideNotificationEvent:()=>xm,HideOverlayEvent:()=>wm,HidePanelEvent:()=>Mm,HideTooltipEvent:()=>Tm,KeypressEvent:()=>Cm,LoadProgressEvent:()=>Dm,ObjectEnterEvent:()=>ug,ObjectEvent:()=>lg,ObjectHoverEvent:()=>mg,ObjectLeaveEvent:()=>dg,PanoramaErrorEvent:()=>Fm,PanoramaLoadEvent:()=>Pm,PanoramaLoadedEvent:()=>Nm,PositionUpdatedEvent:()=>Um,ReadyEvent:()=>Hm,RenderEvent:()=>Zm,RollUpdatedEvent:()=>Gm,ShowNotificationEvent:()=>Qm,ShowOverlayEvent:()=>Km,ShowPanelEvent:()=>$m,ShowTooltipEvent:()=>eg,SizeUpdatedEvent:()=>ng,StopAllEvent:()=>ag,TransitionDoneEvent:()=>Bm,ViewerEvent:()=>am,ZoomUpdatedEvent:()=>og});var nm=class extends Event{constructor(vt,bt){void 0===bt&&(bt=!1),super(vt,{cancelable:bt})}},rm=class extends EventTarget{dispatchEvent(vt){return super.dispatchEvent(vt)}addEventListener(vt,bt,le){super.addEventListener(vt,bt,le)}removeEventListener(vt,bt,le){super.removeEventListener(vt,bt,le)}},am=class extends nm{},sm=class _BeforeAnimateEvent extends am{constructor(vt,bt){super(_BeforeAnimateEvent.type,!0),this.position=vt,this.zoomLevel=bt}};sm.type="before-animate";var om=sm,lm=class _BeforeRenderEvent extends am{constructor(vt,bt){super(_BeforeRenderEvent.type),this.timestamp=vt,this.elapsed=bt}};lm.type="before-render";var cm=lm,um=class _BeforeRotateEvent extends am{constructor(vt){super(_BeforeRotateEvent.type,!0),this.position=vt}};um.type="before-rotate";var hm=um,dm=class _ClickEvent extends am{constructor(vt){super(_ClickEvent.type),this.data=vt}};dm.type="click";var pm=dm,mm=class _ConfigChangedEvent extends am{constructor(vt){super(_ConfigChangedEvent.type),this.options=vt}containsOptions(){for(var vt=arguments.length,bt=new Array(vt),le=0;le<vt;le++)bt[le]=arguments[le];return bt.some((vt=>this.options.includes(vt)))}};mm.type="config-changed";var fm=mm,gm=class _DoubleClickEvent extends am{constructor(vt){super(_DoubleClickEvent.type),this.data=vt}};gm.type="dblclick";var Am=gm,_m=class _FullscreenEvent extends am{constructor(vt){super(_FullscreenEvent.type),this.fullscreenEnabled=vt}};_m.type="fullscreen";var ym=_m,vm=class _HideNotificationEvent extends am{constructor(vt){super(_HideNotificationEvent.type),this.notificationId=vt}};vm.type="hide-notification";var xm=vm,bm=class _HideOverlayEvent extends am{constructor(vt){super(_HideOverlayEvent.type),this.overlayId=vt}};bm.type="hide-overlay";var wm=bm,Em=class _HidePanelEvent extends am{constructor(vt){super(_HidePanelEvent.type),this.panelId=vt}};Em.type="hide-panel";var Mm=Em,Sm=class _HideTooltipEvent extends am{constructor(vt){super(_HideTooltipEvent.type),this.tooltipData=vt}};Sm.type="hide-tooltip";var Tm=Sm,km=class _KeypressEvent extends am{constructor(vt,bt){super(_KeypressEvent.type,!0),this.key=vt,this.originalEvent=bt}matches(vt){return keyPressMatch(this.originalEvent,vt)}};km.type="key-press";var Cm=km,Im=class _LoadProgressEvent extends am{constructor(vt){super(_LoadProgressEvent.type),this.progress=vt}};Im.type="load-progress";var Dm=Im,Lm=class _PanoramaLoadEvent extends am{constructor(vt){super(_PanoramaLoadEvent.type),this.panorama=vt}};Lm.type="panorama-load";var Pm=Lm,zm=class _PanoramaLoadedEvent extends am{constructor(vt){super(_PanoramaLoadedEvent.type),this.data=vt}};zm.type="panorama-loaded";var Nm=zm,Rm=class _PanoramaErrorEvent extends am{constructor(vt,bt){super(_PanoramaErrorEvent.type),this.panorama=vt,this.error=bt}};Rm.type="panorama-error";var Fm=Rm,Om=class _TransitionDoneEvent extends am{constructor(vt){super(_TransitionDoneEvent.type),this.completed=vt}};Om.type="transition-done";var Bm=Om,jm=class _PositionUpdatedEvent extends am{constructor(vt){super(_PositionUpdatedEvent.type),this.position=vt}};jm.type="position-updated";var Um=jm,Vm=class _RollUpdatedEvent extends am{constructor(vt){super(_RollUpdatedEvent.type),this.roll=vt}};Vm.type="roll-updated";var Gm=Vm,qm=class _ReadyEvent extends am{constructor(){super(_ReadyEvent.type)}};qm.type="ready";var Hm=qm,Wm=class _RenderEvent extends am{constructor(){super(_RenderEvent.type)}};Wm.type="render";var Zm=Wm,Ym=class _ShowNotificationEvent extends am{constructor(vt){super(_ShowNotificationEvent.type),this.notificationId=vt}};Ym.type="show-notification";var Qm=Ym,Xm=class _ShowOverlayEvent extends am{constructor(vt){super(_ShowOverlayEvent.type),this.overlayId=vt}};Xm.type="show-overlay";var Km=Xm,Jm=class _ShowPanelEvent extends am{constructor(vt){super(_ShowPanelEvent.type),this.panelId=vt}};Jm.type="show-panel";var $m=Jm,tg=class _ShowTooltipEvent extends am{constructor(vt,bt){super(_ShowTooltipEvent.type),this.tooltip=vt,this.tooltipData=bt}};tg.type="show-tooltip";var eg=tg,ig=class _SizeUpdatedEvent extends am{constructor(vt){super(_SizeUpdatedEvent.type),this.size=vt}};ig.type="size-updated";var ng=ig,rg=class _StopAllEvent extends am{constructor(){super(_StopAllEvent.type)}};rg.type="stop-all";var ag=rg,sg=class _ZoomUpdatedEvent extends am{constructor(vt){super(_ZoomUpdatedEvent.type),this.zoomLevel=vt}};sg.type="zoom-updated";var og=sg,lg=class extends am{constructor(vt,bt,le,ls,ho){super(vt),this.originalEvent=bt,this.object=le,this.viewerPoint=ls,this.userDataKey=ho}},cg=class _ObjectEnterEvent extends lg{constructor(vt,bt,le,ls){super(_ObjectEnterEvent.type,vt,bt,le,ls)}};cg.type="enter-object";var ug=cg,hg=class _ObjectLeaveEvent extends lg{constructor(vt,bt,le,ls){super(_ObjectLeaveEvent.type,vt,bt,le,ls)}};hg.type="leave-object";var dg=hg,pg=class _ObjectHoverEvent extends lg{constructor(vt,bt,le,ls){super(_ObjectHoverEvent.type,vt,bt,le,ls)}};pg.type="hover-object";var mg=pg,fg=class{constructor(vt){this.viewer=vt}init(){}destroy(){}supportsTransition(vt){return!1}supportsPreload(vt){return!1}textureCoordsToSphericalCoords(vt,bt){throw new qd("Current adapter does not support texture coordinates.")}sphericalCoordsToTextureCoords(vt,bt){throw new qd("Current adapter does not support texture coordinates.")}};function adapterInterop(vt){if(vt)for(const[,bt]of[["_",vt],...Object.entries(vt)])if(bt.prototype instanceof fg)return checkVersion(bt.id,bt.VERSION,"5.14.1"),bt;return null}fg.supportsDownload=!1;var gg=Md+"_touchSupport",Ag={loaded:!1,pixelRatio:1,isWebGLSupported:!1,maxTextureWidth:0,isTouchEnabled:null,__maxCanvasWidth:null,isIphone:!1,get maxCanvasWidth(){return null===this.__maxCanvasWidth&&(this.__maxCanvasWidth=function(vt){let bt=vt,le=!1;const ls=document.createElement("canvas"),ho=ls.getContext("2d");ls.width=1,ls.height=1;for(;bt>1024&&!le;){const vt=document.createElement("canvas"),ls=vt.getContext("2d");vt.width=bt,vt.height=bt/2;try{ls.fillStyle="white",ls.fillRect(bt-1,bt/2-1,1,1),ho.drawImage(vt,bt-1,bt/2-1,1,1,0,0,1,1),ho.getImageData(0,0,1,1).data[0]>0&&(le=!0)}catch(Dl){}vt.width=0,vt.height=0,le||(bt/=2)}if(le)return bt;throw new qd("Unable to detect system capabilities")}(this.maxTextureWidth)),this.__maxCanvasWidth},load(){if(!this.loaded){const vt=function(){try{return document.createElement("canvas").getContext("webgl2")}catch(vt){return null}}();this.pixelRatio=window.devicePixelRatio||1,this.isWebGLSupported=!!vt,this.maxTextureWidth=vt?vt.getParameter(vt.MAX_TEXTURE_SIZE):0,this.isTouchEnabled=function(){let vt="ontouchstart"in window||navigator.maxTouchPoints>0;gg in localStorage&&(vt="true"===localStorage[gg]);const bt=new Promise((bt=>{const clear=()=>{window.removeEventListener("mousedown",listenerMouse),window.removeEventListener("touchstart",listenerTouch),clearTimeout(le)},listenerMouse=()=>{clear(),localStorage[gg]=!1,bt(!1)},listenerTouch=()=>{clear(),localStorage[gg]=!0,bt(!0)},listenerTimeout=()=>{clear(),localStorage[gg]=vt,bt(vt)};window.addEventListener("mousedown",listenerMouse,!1),window.addEventListener("touchstart",listenerTouch,!1);const le=setTimeout(listenerTimeout,1e4)}));return{initial:vt,promise:bt}}(),this.isIphone=/iPhone/i.test(navigator.userAgent),this.loaded=!0}if(!Ag.isWebGLSupported)throw new qd("WebGL 2 is not supported.");if(0===Ag.maxTextureWidth)throw new qd("Unable to detect system capabilities")}};var _g=getConfigParser({resolution:64,useXmpData:!0,blur:!1},{resolution:vt=>{if(!vt||!ho.cj9.isPowerOfTwo(vt))throw new qd("EquirectangularAdapter resolution must be power of two.");return vt}}),yg=class _EquirectangularAdapter extends fg{static withConfig(vt){return[_EquirectangularAdapter,vt]}constructor(vt,bt){super(vt),this.config=_g(bt),this.SPHERE_SEGMENTS=this.config.resolution,this.SPHERE_HORIZONTAL_SEGMENTS=this.SPHERE_SEGMENTS/2}supportsTransition(){return!0}supportsPreload(){return!0}textureCoordsToSphericalCoords(vt,bt){if(isNil(vt.textureX)||isNil(vt.textureY))throw new qd("Texture position is missing 'textureX' or 'textureY'");const le=(vt.textureX+bt.croppedX)/bt.fullWidth*Math.PI*2,ls=(vt.textureY+bt.croppedY)/bt.fullHeight*Math.PI;return{yaw:le>=Math.PI?le-Math.PI:le+Math.PI,pitch:Math.PI/2-ls}}sphericalCoordsToTextureCoords(vt,bt){const le=vt.yaw/Math.PI/2*bt.fullWidth,ls=vt.pitch/Math.PI*bt.fullHeight;let ho=Math.round(vt.yaw<Math.PI?le+bt.fullWidth/2:le-bt.fullWidth/2)-bt.croppedX,Dl=Math.round(bt.fullHeight/2-ls)-bt.croppedY;return(ho<0||ho>bt.croppedWidth||Dl<0||Dl>bt.croppedHeight)&&(ho=Dl=void 0),{textureX:ho,textureY:Dl}}async loadTexture(vt,bt,le,ho){if(void 0===bt&&(bt=!0),void 0===ho&&(ho=this.config.useXmpData),"string"!==typeof vt&&("object"!==typeof vt||!vt.path))return Promise.reject(new qd("Invalid panorama url, are you using the right adapter?"));let Dl;Dl="string"===typeof vt?{path:vt,data:le}:(0,ls.A)({data:le},vt);const Fl=await this.viewer.textureLoader.loadFile(Dl.path,bt?vt=>this.viewer.textureLoader.dispatchProgress(vt):null,Dl.path),sc=ho?await this.loadXMP(Fl):null,uc=await this.viewer.textureLoader.blobToImage(Fl);"function"===typeof Dl.data&&(Dl.data=Dl.data(uc,sc));const mc=mergePanoData(uc.width,uc.height,Dl.data,sc);return{panorama:vt,texture:this.createEquirectangularTexture(uc),panoData:mc,cacheKey:Dl.path}}async loadXMP(vt){const bt=await this.loadBlobAsString(vt),le=bt.indexOf("<x:xmpmeta");if(-1===le)return null;const ls=bt.indexOf("</x:xmpmeta>",le);if(-1===ls)return null;const ho=bt.substring(le,ls);return ho.includes("GPano:")?{fullWidth:getXMPValue(ho,"FullPanoWidthPixels"),fullHeight:getXMPValue(ho,"FullPanoHeightPixels"),croppedWidth:getXMPValue(ho,"CroppedAreaImageWidthPixels"),croppedHeight:getXMPValue(ho,"CroppedAreaImageHeightPixels"),croppedX:getXMPValue(ho,"CroppedAreaLeftPixels"),croppedY:getXMPValue(ho,"CroppedAreaTopPixels"),poseHeading:getXMPValue(ho,"PoseHeadingDegrees",!1),posePitch:getXMPValue(ho,"PosePitchDegrees",!1),poseRoll:getXMPValue(ho,"PoseRollDegrees",!1),initialHeading:getXMPValue(ho,"InitialViewHeadingDegrees",!1),initialPitch:getXMPValue(ho,"InitialViewPitchDegrees",!1),initialFov:getXMPValue(ho,"InitialHorizontalFOVDegrees",!1)}:null}loadBlobAsString(vt){return new Promise(((bt,le)=>{const ls=new FileReader;ls.onload=()=>bt(ls.result),ls.onerror=le,ls.readAsText(vt)}))}createEquirectangularTexture(vt){if(this.config.blur||vt.width>Ag.maxTextureWidth){const bt=Math.min(1,Ag.maxCanvasWidth/vt.width),le=new OffscreenCanvas(Math.floor(vt.width*bt),Math.floor(vt.height*bt)),ls=le.getContext("2d");return this.config.blur&&(ls.filter="blur("+le.width/2048+"px)"),ls.drawImage(vt,0,0,le.width,le.height),createTexture(le)}return createTexture(vt)}createMesh(vt){const bt=vt.croppedX/vt.fullWidth*2*Math.PI,le=vt.croppedWidth/vt.fullWidth*2*Math.PI,ls=vt.croppedY/vt.fullHeight*Math.PI,Dl=vt.croppedHeight/vt.fullHeight*Math.PI,Fl=new ho.Gu$(_u,Math.round(this.SPHERE_SEGMENTS/(2*Math.PI)*le),Math.round(this.SPHERE_HORIZONTAL_SEGMENTS/Math.PI*Dl),-Math.PI/2+bt,le,ls,Dl).scale(-1,1,1),sc=new ho.V9B({depthTest:!1,depthWrite:!1});return new ho.eaF(Fl,sc)}setTexture(vt,bt){vt.material.map=bt.texture}setTextureOpacity(vt,bt){vt.material.opacity=bt,vt.material.transparent=bt<1}disposeTexture(vt){let{texture:bt}=vt;bt.dispose()}disposeMesh(vt){vt.geometry.dispose(),vt.material.dispose()}};yg.id="equirectangular",yg.VERSION="5.14.1",yg.supportsDownload=!0;var vg=yg,xg=class _DualFisheyeAdapter extends vg{static withConfig(vt){return[_DualFisheyeAdapter,vt]}constructor(vt,bt){var le;super(vt,{resolution:null!=(le=null==bt?void 0:bt.resolution)?le:64,useXmpData:!1})}async loadTexture(vt,bt){const le=await super.loadTexture(vt,bt,null,!1);return le.panoData=null,le}createMesh(){const vt=new ho.Gu$(_u,this.SPHERE_SEGMENTS,this.SPHERE_HORIZONTAL_SEGMENTS).scale(-1,1,1).toNonIndexed(),bt=vt.getAttribute("uv"),le=vt.getAttribute("normal");for(let ho=0;ho<bt.count;ho++)for(let vt=0;vt<3;vt++){const ls=3*ho+vt,Dl=le.getX(ls),Fl=le.getY(ls),sc=le.getZ(ls),uc=.947;if(ho<bt.count/6){const vt=0===Dl&&0===sc?1:Math.acos(Fl)/Math.sqrt(Dl*Dl+sc*sc)*(2/Math.PI);bt.setXY(ls,Dl*(uc/4)*vt+1/4,sc*(uc/2)*vt+.5)}else{const vt=0===Dl&&0===sc?1:Math.acos(-Fl)/Math.sqrt(Dl*Dl+sc*sc)*(2/Math.PI);bt.setXY(ls,uc/4*-Dl*vt+3/4,sc*(uc/2)*vt+.5)}}vt.rotateX(-Math.PI/2),vt.rotateY(Math.PI);const ls=new ho.V9B({depthTest:!1,depthWrite:!1});return new ho.eaF(vt,ls)}};xg.id="dual-fisheye",xg.VERSION="5.14.1";var bg=class _AbstractComponent{constructor(vt,bt){var le;this.parent=vt,this.children=[],this.state={visible:!0},this.viewer=vt instanceof _AbstractComponent?vt.viewer:vt,this.container=document.createElement(null!=(le=bt.tagName)?le:"div"),this.container.className=bt.className||"",this.parent.children.push(this),this.parent.container.appendChild(this.container)}destroy(){this.parent.container.removeChild(this.container);const vt=this.parent.children.indexOf(this);-1!==vt&&this.parent.children.splice(vt,1),this.children.slice().forEach((vt=>vt.destroy())),this.children.length=0}toggle(vt){void 0===vt&&(vt=!this.isVisible()),vt?this.show():this.hide()}hide(vt){this.container.style.display="none",this.state.visible=!1}show(vt){this.container.style.display="",this.state.visible=!0}isVisible(){return this.state.visible}},wg=getConfigParser({id:null,tagName:null,className:null,title:null,hoverScale:!1,collapsable:!1,tabbable:!0,icon:null,iconActive:null}),Eg=class extends bg{constructor(vt,bt){var le;(super(vt,{tagName:bt.tagName,className:"psv-button "+(bt.hoverScale?"psv-button--hover-scale":"")+" "+(bt.className||"")}),this.state={visible:!0,enabled:!0,supported:!0,collapsed:!1,active:!1,width:0},this.config=wg(bt),bt.id||(this.config.id=this.constructor.id),bt.icon&&this.__setIcon(bt.icon),this.state.width=this.container.offsetWidth,this.config.title)?this.container.title=null!=(le=this.viewer.config.lang[this.config.title])?le:this.config.title:this.id&&this.id in this.viewer.config.lang&&(this.container.title=this.viewer.config.lang[this.id]);bt.tabbable&&(this.container.tabIndex=0),this.container.addEventListener("click",(vt=>{this.state.enabled&&this.onClick(),vt.stopPropagation()})),this.container.addEventListener("keydown",(vt=>{vt.key===Od.Enter&&this.state.enabled&&(this.onClick(),vt.stopPropagation())}))}get id(){return this.config.id}get title(){return this.container.title}get content(){return this.container.innerHTML}get width(){return this.state.width}get collapsable(){return this.config.collapsable}show(vt){void 0===vt&&(vt=!0),this.isVisible()||(this.state.visible=!0,this.state.collapsed||(this.container.style.display=""),vt&&this.viewer.navbar.autoSize())}hide(vt){void 0===vt&&(vt=!0),this.isVisible()&&(this.state.visible=!1,this.container.style.display="none",vt&&this.viewer.navbar.autoSize())}checkSupported(){resolveBoolean(this.isSupported(),((vt,bt)=>{this.state&&(this.state.supported=vt,bt?vt||this.hide():this.toggle(vt))}))}autoSize(){}isSupported(){return!0}toggleActive(vt){void 0===vt&&(vt=!this.state.active),vt!==this.state.active&&(this.state.active=vt,toggleClass(this.container,"psv-button--active",this.state.active),this.config.iconActive&&this.__setIcon(this.state.active?this.config.iconActive:this.config.icon))}disable(){this.container.classList.add("psv-button--disabled"),this.state.enabled=!1}enable(){this.container.classList.remove("psv-button--disabled"),this.state.enabled=!0}collapse(){this.state.collapsed=!0,this.container.style.display="none"}uncollapse(){this.state.collapsed=!1,this.state.visible&&(this.container.style.display="")}__setIcon(vt){this.container.innerHTML=vt,addClasses(this.container.querySelector("svg"),"psv-button-svg")}},Mg=class extends Eg{constructor(vt,bt){var le;super(vt,{id:null!=(le=bt.id)?le:"psvButton-"+Math.random().toString(36).substring(2),className:"psv-custom-button "+(bt.className||""),hoverScale:!1,collapsable:!1!==bt.collapsable,tabbable:!1!==bt.tabbable,title:bt.title}),this.customOnClick=bt.onClick,bt.content&&("string"===typeof bt.content?this.container.innerHTML=bt.content:(this.container.classList.add("psv-custom-button--no-padding"),bt.content.style.height="100%",null==bt.content.attachViewer||bt.content.attachViewer(this.viewer),this.container.appendChild(bt.content))),this.state.width=this.container.offsetWidth,bt.disabled&&this.disable(),!1===bt.visible&&this.hide()}onClick(){var vt;null==(vt=this.customOnClick)||vt.call(this,this.viewer)}},Sg=class extends Eg{constructor(vt){super(vt,{className:"psv-description-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:jd.info}),this.mode=0,this.viewer.addEventListener(xm.type,this),this.viewer.addEventListener(Qm.type,this),this.viewer.addEventListener(Mm.type,this),this.viewer.addEventListener($m.type,this),this.viewer.addEventListener(fm.type,this)}destroy(){this.viewer.removeEventListener(xm.type,this),this.viewer.removeEventListener(Qm.type,this),this.viewer.removeEventListener(Mm.type,this),this.viewer.removeEventListener($m.type,this),this.viewer.removeEventListener(fm.type,this),super.destroy()}handleEvent(vt){if(vt instanceof fm)return void(vt.containsOptions("description")&&this.autoSize(!0));if(!this.mode)return;let bt=!1;vt instanceof xm?bt=1===this.mode:vt instanceof Qm?bt=1===this.mode&&vt.notificationId!==Rd.DESCRIPTION:vt instanceof Mm?bt=2===this.mode:vt instanceof $m&&(bt=2===this.mode&&vt.panelId!==Rd.DESCRIPTION),bt&&(this.toggleActive(!1),this.mode=0)}onClick(){this.mode?this.__close():this.__open()}hide(vt){super.hide(vt),this.mode&&this.__close()}autoSize(vt){if(void 0===vt&&(vt=!1),vt){const vt=this.viewer.navbar.getButton("caption",!1),bt=vt&&!vt.isVisible(),le=!!this.viewer.config.description;bt||le?this.show(!1):this.hide(!1)}}__close(){switch(this.mode){case 1:this.viewer.notification.hide(Rd.DESCRIPTION);break;case 2:this.viewer.panel.hide(Rd.DESCRIPTION)}}__open(){this.toggleActive(!0),this.viewer.config.description?(this.mode=2,this.viewer.panel.show({id:Rd.DESCRIPTION,content:(this.viewer.config.caption?"<p>"+this.viewer.config.caption+"</p>":"")+this.viewer.config.description})):(this.mode=1,this.viewer.notification.show({id:Rd.DESCRIPTION,content:this.viewer.config.caption}))}};Sg.id="description";var Tg=class extends Eg{constructor(vt){super(vt,{tagName:"a",className:"psv-download-button",hoverScale:!0,collapsable:!0,tabbable:!0,icon:jd.download}),this.viewer.addEventListener(fm.type,this),this.viewer.addEventListener(Nm.type,this)}destroy(){this.viewer.removeEventListener(fm.type,this),this.viewer.removeEventListener(Nm.type,this),super.destroy()}handleEvent(vt){vt instanceof fm?(vt.containsOptions("downloadUrl")&&this.checkSupported(),vt.containsOptions("downloadUrl","downloadName")&&this.__update()):vt instanceof Nm&&this.__update()}onClick(){}checkSupported(){this.viewer.adapter.constructor.supportsDownload||this.viewer.config.downloadUrl?this.show():this.hide()}__update(){const vt=this.container;vt.href=this.viewer.config.downloadUrl||this.viewer.config.panorama,vt.target="_blank",vt.href.startsWith("data:")&&!this.viewer.config.downloadName?vt.download="panorama."+vt.href.substring(0,vt.href.indexOf(";")).split("/").pop():vt.download=this.viewer.config.downloadName||vt.href.split("/").pop()}};Tg.id="download";var kg=class extends Eg{constructor(vt){super(vt,{className:"psv-fullscreen-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:jd.fullscreenIn,iconActive:jd.fullscreenOut}),this.viewer.addEventListener(ym.type,this)}destroy(){this.viewer.removeEventListener(ym.type,this),super.destroy()}handleEvent(vt){vt instanceof ym&&this.toggleActive(vt.fullscreenEnabled)}onClick(){this.viewer.toggleFullscreen()}};kg.id="fullscreen";var Cg=class extends Eg{constructor(vt){super(vt,{className:"psv-menu-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:jd.menu}),this.viewer.addEventListener($m.type,this),this.viewer.addEventListener(Mm.type,this),super.hide()}destroy(){this.viewer.removeEventListener($m.type,this),this.viewer.removeEventListener(Mm.type,this),super.destroy()}handleEvent(vt){vt instanceof $m?this.toggleActive(vt.panelId===Rd.MENU):vt instanceof Mm&&this.toggleActive(!1)}onClick(){this.state.active?this.__hideMenu():this.__showMenu()}hide(vt){super.hide(vt),this.__hideMenu()}show(vt){super.show(vt),this.state.active&&this.__showMenu()}__showMenu(){var vt,bt;this.viewer.panel.show({id:Rd.MENU,content:(vt=this.viewer.navbar.collapsed,bt=this.viewer.config.lang.menu,'\n<div class="psv-panel-menu psv-panel-menu--stripped">\n <h1 class="psv-panel-menu-title">'+jd.menu+" "+bt+'</h1>\n <ul class="psv-panel-menu-list">\n '+vt.map((vt=>'\n <li data-psv-button="'+vt.id+'" class="psv-panel-menu-item" tabindex="0">\n <span class="psv-panel-menu-item-icon">'+vt.content+'</span>\n <span class="psv-panel-menu-item-label">'+vt.title+"</span>\n </li>\n ")).join("")+"\n </ul>\n</div>\n"),noMargin:!0,clickHandler:vt=>{const bt=vt?getClosest(vt,".psv-panel-menu-item"):void 0,le=bt?bt.dataset.psvButton:void 0;le&&(this.viewer.navbar.getButton(le).onClick(),this.__hideMenu())}})}__hideMenu(){this.viewer.panel.hide(Rd.MENU)}};function getIcon(vt){let bt=0;switch(vt){case 0:bt=90;break;case 1:bt=-90;break;case 3:bt=180;break;default:bt=0}return jd.arrow.replace("rotate(0","rotate("+bt)}Cg.id="menu";var Ig=class extends Eg{constructor(vt,bt){super(vt,{className:"psv-move-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:getIcon(bt)}),this.direction=bt,this.handler=new sp,this.container.addEventListener("mousedown",this),this.container.addEventListener("keydown",this),this.container.addEventListener("keyup",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this)}destroy(){this.__onMouseUp(),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(vt){switch(vt.type){case"mousedown":this.__onMouseDown();break;case"mouseup":case"touchend":this.__onMouseUp();break;case"keydown":vt.key===Od.Enter&&this.__onMouseDown();break;case"keyup":vt.key===Od.Enter&&this.__onMouseUp()}}onClick(){}isSupported(){return invertResolvableBoolean(Ag.isTouchEnabled)}__onMouseDown(){if(!this.state.enabled)return;const vt={};switch(this.direction){case 0:vt.pitch=!1;break;case 1:vt.pitch=!0;break;case 3:vt.yaw=!1;break;default:vt.yaw=!0}this.viewer.stopAll(),this.viewer.dynamics.position.roll(vt),this.handler.down()}__onMouseUp(){this.state.enabled&&this.handler.up((()=>{this.viewer.dynamics.position.stop(),this.viewer.resetIdleTimer()}))}};Ig.groupId="move";var Dg=class extends Ig{constructor(vt){super(vt,1)}};Dg.id="moveDown";var Lg=class extends Ig{constructor(vt){super(vt,2)}};Lg.id="moveLeft";var Pg=class extends Ig{constructor(vt){super(vt,3)}};Pg.id="moveRight";var zg=class extends Ig{constructor(vt){super(vt,0)}};zg.id="moveUp";var Ng=class extends Eg{constructor(vt,bt,le){super(vt,{className:"psv-zoom-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:bt}),this.direction=le,this.handler=new sp,this.container.addEventListener("mousedown",this),this.container.addEventListener("keydown",this),this.container.addEventListener("keyup",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this)}destroy(){this.__onMouseUp(),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(vt){switch(vt.type){case"mousedown":this.__onMouseDown();break;case"mouseup":case"touchend":this.__onMouseUp();break;case"keydown":vt.key===Od.Enter&&this.__onMouseDown();break;case"keyup":vt.key===Od.Enter&&this.__onMouseUp()}}onClick(){}isSupported(){return invertResolvableBoolean(Ag.isTouchEnabled)}__onMouseDown(){this.state.enabled&&(this.viewer.dynamics.zoom.roll(1===this.direction),this.handler.down())}__onMouseUp(){this.state.enabled&&this.handler.up((()=>this.viewer.dynamics.zoom.stop()))}};Ng.groupId="zoom";var Rg=class extends Ng{constructor(vt){super(vt,jd.zoomIn,0)}};Rg.id="zoomIn";var Fg=class extends Ng{constructor(vt){super(vt,jd.zoomOut,1)}};Fg.id="zoomOut";var Og=class extends Eg{constructor(vt){super(vt,{className:"psv-zoom-range",hoverScale:!1,collapsable:!1,tabbable:!1}),this.zoomRange=document.createElement("div"),this.zoomRange.className="psv-zoom-range-line",this.container.appendChild(this.zoomRange),this.zoomValue=document.createElement("div"),this.zoomValue.className="psv-zoom-range-handle",this.zoomRange.appendChild(this.zoomValue),this.slider=new em(this.container,"HORIZONTAL",(vt=>this.__onSliderUpdate(vt))),this.mediaMinWidth=parseInt(getStyleProperty(this.container,"max-width"),10),this.viewer.addEventListener(og.type,this),this.viewer.state.ready?this.__moveZoomValue(this.viewer.getZoomLevel()):this.viewer.addEventListener(Hm.type,this)}destroy(){this.slider.destroy(),this.viewer.removeEventListener(og.type,this),this.viewer.removeEventListener(Hm.type,this),super.destroy()}handleEvent(vt){vt instanceof og?this.__moveZoomValue(vt.zoomLevel):vt instanceof Hm&&this.__moveZoomValue(this.viewer.getZoomLevel())}onClick(){}isSupported(){return invertResolvableBoolean(Ag.isTouchEnabled)}autoSize(){this.state.supported&&(this.viewer.state.size.width<=this.mediaMinWidth&&this.state.visible?this.hide(!1):this.viewer.state.size.width>this.mediaMinWidth&&!this.state.visible&&this.show(!1))}__moveZoomValue(vt){this.zoomValue.style.left=vt/100*this.zoomRange.offsetWidth-this.zoomValue.offsetWidth/2+"px"}__onSliderUpdate(vt){vt.mousedown&&this.viewer.zoom(100*vt.value)}};Og.id="zoomRange",Og.groupId="zoom";var Bg=class extends rm{constructor(vt){super(),this.viewer=vt}init(){}destroy(){}},jg=class extends Bg{constructor(vt,bt){super(vt),this.config=this.constructor.configParser(bt)}setOption(vt,bt){this.setOptions({[vt]:bt})}setOptions(vt){const bt=(0,ls.A)({},this.config,vt),le=this.constructor,ho=le.configParser,Dl=le.readonlyOptions,Fl=le.id;for(let[ls,sc]of Object.entries(vt))ls in ho.defaults?Dl.includes(ls)?logWarn(Fl+': Option "'+ls+'" cannot be updated'):(ls in ho.parsers&&(sc=ho.parsers[ls](sc,{rawConfig:bt,defValue:ho.defaults[ls]})),this.config[ls]=sc):logWarn(Fl+': Unknown option "'+ls+'"')}};function pluginInterop(vt){if(vt)for(const[,bt]of[["_",vt],...Object.entries(vt)])if(bt.prototype instanceof Bg)return checkVersion(bt.id,bt.VERSION,"5.14.1"),bt;return null}jg.readonlyOptions=[];var Ug={panorama:null,container:null,adapter:[vg,null],plugins:[],caption:null,description:null,downloadUrl:null,downloadName:null,loadingImg:null,loadingTxt:"",size:null,fisheye:0,minFov:30,maxFov:90,defaultZoomLvl:50,defaultYaw:0,defaultPitch:0,sphereCorrection:null,moveSpeed:1,zoomSpeed:1,moveInertia:.8,mousewheel:!0,mousemove:!0,mousewheelCtrlKey:!1,touchmoveTwoFingers:!1,panoData:null,requestHeaders:null,canvasBackground:"#000",defaultTransition:{speed:1500,rotation:!0,effect:"fade"},rendererParameters:{alpha:!0,antialias:!0},withCredentials:()=>!1,navbar:["zoom","move","download","description","caption","fullscreen"],lang:{zoom:"Zoom",zoomOut:"Zoom out",zoomIn:"Zoom in",moveUp:"Move up",moveDown:"Move down",moveLeft:"Move left",moveRight:"Move right",description:"Description",download:"Download",fullscreen:"Fullscreen",loading:"Loading...",menu:"Menu",close:"Close",twoFingers:"Use two fingers to navigate",ctrlZoom:"Use ctrl + scroll to zoom the image",loadError:"The panorama cannot be loaded",webglError:"Your browser does not seem to support WebGL"},keyboard:"fullscreen",keyboardActions:{[Od.ArrowUp]:"ROTATE_UP",[Od.ArrowDown]:"ROTATE_DOWN",[Od.ArrowRight]:"ROTATE_RIGHT",[Od.ArrowLeft]:"ROTATE_LEFT",[Od.PageUp]:"ZOOM_IN",[Od.PageDown]:"ZOOM_OUT",[Od.Plus]:"ZOOM_IN",[Od.Minus]:"ZOOM_OUT"}},Vg={panorama:"Use setPanorama method to change the panorama",panoData:"Use setPanorama method to change the panorama",container:"Cannot change viewer container",adapter:"Cannot change adapter",plugins:"Cannot change plugins"},Gg={container:vt=>{if(!vt)throw new qd("No value given for container.");return vt},adapter:(vt,bt)=>{let{defValue:le}=bt;if(!(vt=vt?Array.isArray(vt)?[adapterInterop(vt[0]),vt[1]]:[adapterInterop(vt),null]:le)[0])throw new qd("An undefined value was given for adapter.");if(!vt[0].id)throw new qd("Adapter has no id.");return vt},defaultYaw:vt=>parseAngle(vt),defaultPitch:vt=>parseAngle(vt,!0),defaultZoomLvl:vt=>ho.cj9.clamp(vt,0,100),minFov:(vt,bt)=>{let{rawConfig:le}=bt;return le.maxFov<vt&&(logWarn("maxFov cannot be lower than minFov"),vt=le.maxFov),ho.cj9.clamp(vt,1,179)},maxFov:(vt,bt)=>{let{rawConfig:le}=bt;return vt<le.minFov&&(vt=le.minFov),ho.cj9.clamp(vt,1,179)},moveInertia:(vt,bt)=>{let{defValue:le}=bt;return!0===vt?le:!1===vt?0:vt},lang:vt=>(0,ls.A)({},Ug.lang,vt),fisheye:vt=>!0===vt?1:!1===vt?0:vt,requestHeaders:vt=>vt&&"object"===typeof vt?()=>vt:"function"===typeof vt?vt:null,withCredentials:vt=>"boolean"===typeof vt?()=>vt:"function"===typeof vt?vt:()=>!1,defaultTransition:(vt,bt)=>{let{defValue:le}=bt;return null===vt||0===vt.speed?null:(0,ls.A)({},le,vt)},rendererParameters:(vt,bt)=>{let{defValue:le}=bt;return(0,ls.A)({},vt,le)},plugins:vt=>vt.map(((vt,bt)=>{if(!(vt=Array.isArray(vt)?[pluginInterop(vt[0]),vt[1]]:[pluginInterop(vt),null])[0])throw new qd("An undefined value was given for plugin "+bt+".");if(!vt[0].id)throw new qd("Plugin "+bt+" has no id.");return vt})),navbar:vt=>!1===vt?null:!0===vt?clone(Ug.navbar):"string"===typeof vt?vt.split(/[ ,]/):vt},qg=getConfigParser(Ug,Gg),Hg=class extends Eg{constructor(vt){super(vt,{className:"psv-caption",hoverScale:!1,collapsable:!1,tabbable:!0}),this.contentWidth=0,this.state.width=0,this.contentElt=document.createElement("div"),this.contentElt.className="psv-caption-content",this.container.appendChild(this.contentElt),this.setCaption(this.viewer.config.caption)}hide(){this.contentElt.style.display="none",this.state.visible=!1}show(){this.contentElt.style.display="",this.state.visible=!0}onClick(){}setCaption(vt){this.show(),this.contentElt.innerHTML=null!=vt?vt:"",this.contentElt.innerHTML?this.contentWidth=this.contentElt.offsetWidth:this.contentWidth=0,this.autoSize()}autoSize(){this.toggle(this.container.offsetWidth>=this.contentWidth),this.__refreshButton()}__refreshButton(){var vt;null==(vt=this.viewer.navbar.getButton(Sg.id,!1))||vt.autoSize(!0)}};Hg.id="caption";var Wg={},Zg={};function registerButton(vt,bt){if(!vt.id)throw new qd("Button id is required");if(Wg[vt.id]=vt,vt.groupId&&(Zg[vt.groupId]=Zg[vt.groupId]||[]).push(vt),bt){const le=Ug.navbar;switch(bt){case"start":le.unshift(vt.id);break;case"end":le.push(vt.id);break;default:{const[ls,ho]=bt.split(":"),Dl=le.indexOf(ls);if(!ls||!ho||-1===Dl)throw new qd("Invalid defaultPosition "+bt);le.splice(Dl+("right"===ho?1:0),0,vt.id)}}}}[Fg,Og,Rg,Sg,Hg,Tg,kg,Lg,Pg,zg,Dg].forEach((vt=>registerButton(vt)));var Yg=class extends bg{constructor(vt){super(vt,{className:"psv-navbar "+Ld}),this.collapsed=[],this.state.visible=!1}show(){this.viewer.container.classList.add("psv--has-navbar"),this.container.classList.add("psv-navbar--open"),this.state.visible=!0}hide(){this.viewer.container.classList.remove("psv--has-navbar"),this.container.classList.remove("psv-navbar--open"),this.state.visible=!1}setButtons(vt){this.children.slice().forEach((vt=>vt.destroy())),this.children.length=0,-1!==vt.indexOf(Hg.id)&&-1===vt.indexOf(Sg.id)&&vt.splice(vt.indexOf(Hg.id),0,Sg.id),vt.forEach((vt=>{"object"===typeof vt?new Mg(this,vt):Wg[vt]?new Wg[vt](this):Zg[vt]?Zg[vt].forEach((vt=>{new vt(this)})):logWarn("Unknown button "+vt)})),new Cg(this),this.children.forEach((vt=>{vt instanceof Eg&&vt.checkSupported()})),this.autoSize()}setCaption(vt){this.children.some((bt=>bt instanceof Hg&&(bt.setCaption(vt),!0)))}getButton(vt,bt){void 0===bt&&(bt=!0);const le=this.children.find((bt=>bt instanceof Eg&&bt.id===vt));return!le&&bt&&logWarn('button "'+vt+'" not found in the navbar'),le}focusButton(vt){var bt,le;this.isVisible()&&(null==(bt=(null==(le=this.getButton(vt,!1))?void 0:le.container)||this.container.firstElementChild)||bt.focus())}autoSize(){var vt;this.children.forEach((vt=>{vt instanceof Eg&&vt.autoSize()}));const bt=this.container.offsetWidth;let le=0;const ls=[];this.children.forEach((vt=>{vt.isVisible()&&vt instanceof Eg&&(le+=vt.width,vt.collapsable&&ls.push(vt))})),0!==le&&(bt<le&&ls.length>0?(ls.forEach((vt=>vt.collapse())),this.collapsed=ls,this.getButton(Cg.id).show(!1)):bt>=le&&this.collapsed.length>0&&(this.collapsed.forEach((vt=>vt.uncollapse())),this.collapsed=[],this.getButton(Cg.id).hide(!1)),null==(vt=this.getButton(Hg.id,!1))||vt.autoSize())}};ho.l2R.enabled=!1;var Qg={enabled:!0,maxItems:10,ttl:600,items:{},purgeInterval:null,init(){ho.l2R.enabled&&(logWarn("ThreeJS cache should be disabled"),ho.l2R.enabled=!1),!this.purgeInterval&&this.enabled&&(this.purgeInterval=setInterval((()=>this.purge()),6e4))},add(vt,bt,le){var ls;this.enabled&&bt&&(this.items[bt]=null!=(ls=this.items[bt])?ls:{files:{},lastAccess:null},this.items[bt].files[vt]=le,this.items[bt].lastAccess=Date.now())},get(vt,bt){if(this.enabled&&bt&&this.items[bt])return this.items[bt].lastAccess=Date.now(),this.items[bt].files[vt]},remove(vt,bt){this.enabled&&bt&&this.items[bt]&&(delete this.items[bt].files[vt],0===Object.keys(this.items[bt].files).length&&delete this.items[bt])},purge(){Object.entries(this.items).sort(((vt,bt)=>{let[,le]=vt,[,ls]=bt;return ls.lastAccess-le.lastAccess})).forEach(((vt,bt)=>{let[le,{lastAccess:ls}]=vt;bt>0&&(Date.now()-ls>=1e3*this.ttl||bt>=this.maxItems)&&delete this.items[le]}))}},Xg=class extends bg{constructor(vt){super(vt,{className:"psv-loader-container"}),this.loader=document.createElement("div"),this.loader.className="psv-loader",this.container.appendChild(this.loader),this.size=this.loader.offsetWidth,this.canvas=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.canvas.setAttribute("class","psv-loader-canvas"),this.canvas.setAttribute("viewBox","0 0 "+this.size+" "+this.size),this.loader.appendChild(this.canvas),this.textColor=getStyleProperty(this.loader,"color"),this.color=getStyleProperty(this.canvas,"color"),this.border=parseInt(getStyleProperty(this.loader,"--psv-loader-border"),10),this.thickness=parseInt(getStyleProperty(this.loader,"--psv-loader-tickness"),10);const bt=this.size/2;this.canvas.innerHTML='\n <circle cx="'+bt+'" cy="'+bt+'" r="'+bt+'" fill="'+this.color+'"/>\n <path d="" fill="none" stroke="'+this.textColor+'" stroke-width="'+this.thickness+'" stroke-linecap="round"/>\n ',this.viewer.addEventListener(fm.type,this),this.__updateContent(),this.hide()}destroy(){this.viewer.removeEventListener(fm.type,this),super.destroy()}handleEvent(vt){vt instanceof fm&&vt.containsOptions("loadingImg","loadingTxt","lang")&&this.__updateContent()}setProgress(vt){this.container.classList.remove("psv-loader--undefined");const bt=ho.cj9.clamp(vt,0,99.999)/100*Math.PI*2,le=this.size/2,ls=le,Dl=this.thickness/2+this.border,Fl=(this.size-this.thickness)/2-this.border,sc=Math.sin(bt)*Fl+le,uc=-Math.cos(bt)*Fl+le,mc=vt>50?"1":"0";this.canvas.querySelector("path").setAttributeNS(null,"d","M "+ls+" "+Dl+" A "+Fl+" "+Fl+" 0 "+mc+" 1 "+sc+" "+uc)}showUndefined(){this.show(),this.setProgress(25),this.container.classList.add("psv-loader--undefined")}__updateContent(){const vt=this.loader.querySelector(".psv-loader-image, .psv-loader-text");let bt;if(vt&&this.loader.removeChild(vt),this.viewer.config.loadingImg?(bt=document.createElement("img"),bt.className="psv-loader-image",bt.src=this.viewer.config.loadingImg):null!==this.viewer.config.loadingTxt&&(bt=document.createElement("div"),bt.className="psv-loader-text",bt.innerHTML=this.viewer.config.loadingTxt||this.viewer.config.lang.loading),bt){const vt=Math.round(Math.sqrt(2*Math.pow(this.size/2-this.thickness/2-this.border,2)));bt.style.maxWidth=vt+"px",bt.style.maxHeight=vt+"px",this.loader.appendChild(bt)}}},Kg=class extends bg{constructor(vt){super(vt,{className:"psv-notification"}),this.state={visible:!1,contentId:null,timeout:null},this.content=document.createElement("div"),this.content.className="psv-notification-content",this.container.appendChild(this.content),this.content.addEventListener("click",(()=>this.hide()))}isVisible(vt){return this.state.visible&&(!vt||!this.state.contentId||this.state.contentId===vt)}toggle(){throw new qd("Notification cannot be toggled")}show(vt){this.state.timeout&&(clearTimeout(this.state.timeout),this.state.timeout=null),"string"===typeof vt&&(vt={content:vt}),this.state.contentId=vt.id||null,this.content.innerHTML=vt.content,this.container.classList.add("psv-notification--visible"),this.state.visible=!0,this.viewer.dispatchEvent(new Qm(this.state.contentId)),vt.timeout&&(this.state.timeout=setTimeout((()=>this.hide(this.state.contentId)),vt.timeout))}hide(vt){if(this.isVisible(vt)){const vt=this.state.contentId;this.container.classList.remove("psv-notification--visible"),this.state.visible=!1,this.state.contentId=null,this.viewer.dispatchEvent(new xm(vt))}}},Jg=class extends bg{constructor(vt){super(vt,{className:"psv-overlay "+Ld}),this.state={visible:!1,contentId:null,dismissible:!0},this.image=document.createElement("div"),this.image.className="psv-overlay-image",this.container.appendChild(this.image),this.title=document.createElement("div"),this.title.className="psv-overlay-title",this.container.appendChild(this.title),this.text=document.createElement("div"),this.text.className="psv-overlay-text",this.container.appendChild(this.text),this.container.addEventListener("click",this),this.viewer.addEventListener(Cm.type,this),super.hide()}destroy(){this.viewer.removeEventListener(Cm.type,this),super.destroy()}handleEvent(vt){"click"===vt.type?this.isVisible()&&this.state.dismissible&&(this.hide(),vt.stopPropagation()):vt instanceof Cm&&this.isVisible()&&this.state.dismissible&&vt.matches(Od.Escape)&&(this.hide(),vt.preventDefault())}isVisible(vt){return this.state.visible&&(!vt||!this.state.contentId||this.state.contentId===vt)}toggle(){throw new qd("Overlay cannot be toggled")}show(vt){"string"===typeof vt&&(vt={title:vt}),this.state.contentId=vt.id||null,this.state.dismissible=!1!==vt.dismissible,this.image.innerHTML=vt.image||"",this.title.innerHTML=vt.title||"",this.text.innerHTML=vt.text||"",super.show(),this.viewer.dispatchEvent(new Km(this.state.contentId))}hide(vt){if(this.isVisible(vt)){const vt=this.state.contentId;super.hide(),this.state.contentId=null,this.viewer.dispatchEvent(new wm(vt))}}},$g="psv-panel-content--no-interaction",tA=class extends bg{constructor(vt){super(vt,{className:"psv-panel "+Ld}),this.state={visible:!1,contentId:null,mouseX:0,mouseY:0,mousedown:!1,clickHandler:null,keyHandler:null,width:{}};const bt=document.createElement("div");bt.className="psv-panel-resizer",this.container.appendChild(bt);const le=document.createElement("div");le.className="psv-panel-close-button",le.innerHTML=jd.close,le.title=vt.config.lang.close,this.container.appendChild(le),this.content=document.createElement("div"),this.content.className="psv-panel-content",this.container.appendChild(this.content),le.addEventListener("click",(()=>this.hide())),bt.addEventListener("mousedown",this),bt.addEventListener("touchstart",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this),this.viewer.container.addEventListener("mousemove",this),this.viewer.container.addEventListener("touchmove",this),this.viewer.addEventListener(Cm.type,this)}destroy(){this.viewer.removeEventListener(Cm.type,this),this.viewer.container.removeEventListener("mousemove",this),this.viewer.container.removeEventListener("touchmove",this),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(vt){switch(vt.type){case"mousedown":this.__onMouseDown(vt);break;case"touchstart":this.__onTouchStart(vt);break;case"mousemove":this.__onMouseMove(vt);break;case"touchmove":this.__onTouchMove(vt);break;case"mouseup":this.__onMouseUp(vt);break;case"touchend":this.__onTouchEnd(vt);break;case Cm.type:this.__onKeyPress(vt)}}isVisible(vt){return this.state.visible&&(!vt||!this.state.contentId||this.state.contentId===vt)}toggle(){throw new qd("Panel cannot be toggled")}show(vt){"string"===typeof vt&&(vt={content:vt});const bt=this.isVisible(vt.id);this.state.contentId=vt.id||null,this.state.visible=!0,this.state.clickHandler&&(this.content.removeEventListener("click",this.state.clickHandler),this.content.removeEventListener("keydown",this.state.keyHandler),this.state.clickHandler=null,this.state.keyHandler=null),vt.id&&this.state.width[vt.id]?this.container.style.width=this.state.width[vt.id]:vt.width?this.container.style.width=vt.width:this.container.style.width=null,this.content.innerHTML=vt.content,this.content.scrollTop=0,this.container.classList.add("psv-panel--open"),toggleClass(this.content,"psv-panel-content--no-margin",!0===vt.noMargin),vt.clickHandler&&(this.state.clickHandler=bt=>{vt.clickHandler(getEventTarget(bt))},this.state.keyHandler=bt=>{bt.key===Od.Enter&&vt.clickHandler(getEventTarget(bt))},this.content.addEventListener("click",this.state.clickHandler),this.content.addEventListener("keydown",this.state.keyHandler),bt||setTimeout((()=>{var vt;null==(vt=this.content.querySelector("a,button,[tabindex]"))||vt.focus()}),300)),this.viewer.dispatchEvent(new $m(this.state.contentId))}hide(vt){if(this.isVisible(vt)){const vt=this.state.contentId;this.state.visible=!1,this.state.contentId=null,this.content.innerHTML=null,this.container.classList.remove("psv-panel--open"),this.state.clickHandler&&(this.content.removeEventListener("click",this.state.clickHandler),this.content.removeEventListener("keydown",this.state.keyHandler),this.state.clickHandler=null,this.state.keyHandler=null),this.viewer.dispatchEvent(new Mm(vt))}}__onMouseDown(vt){vt.stopPropagation(),this.__startResize(vt.clientX,vt.clientY)}__onTouchStart(vt){if(vt.stopPropagation(),1===vt.touches.length){const bt=vt.touches[0];this.__startResize(bt.clientX,bt.clientY)}}__onMouseUp(vt){this.state.mousedown&&(vt.stopPropagation(),this.state.mousedown=!1,this.content.classList.remove($g))}__onTouchEnd(vt){this.state.mousedown&&(vt.stopPropagation(),0===vt.touches.length&&(this.state.mousedown=!1,this.content.classList.remove($g)))}__onMouseMove(vt){this.state.mousedown&&(vt.stopPropagation(),this.__resize(vt.clientX,vt.clientY))}__onTouchMove(vt){if(this.state.mousedown){const bt=vt.touches[0];this.__resize(bt.clientX,bt.clientY)}}__onKeyPress(vt){this.isVisible()&&vt.matches(Od.Escape)&&(this.hide(),vt.preventDefault())}__startResize(vt,bt){this.state.mouseX=vt,this.state.mouseY=bt,this.state.mousedown=!0,this.content.classList.add($g)}__resize(vt,bt){const le=vt,ls=bt,ho=Math.max(200,this.container.offsetWidth-(le-this.state.mouseX))+"px";this.state.contentId&&(this.state.width[this.state.contentId]=ho),this.container.style.width=ho,this.state.mouseX=le,this.state.mouseY=ls}},eA=class extends bg{constructor(vt,bt){super(vt,{className:"psv-tooltip"}),this.state={visible:!0,arrow:0,border:0,state:0,width:0,height:0,pos:"",config:null,data:null,hideTimeout:null},this.content=document.createElement("div"),this.content.className="psv-tooltip-content",this.container.appendChild(this.content),this.arrow=document.createElement("div"),this.arrow.className="psv-tooltip-arrow",this.container.appendChild(this.arrow),this.container.addEventListener("transitionend",this),this.container.addEventListener("touchdown",(vt=>vt.stopPropagation())),this.container.addEventListener("mousedown",(vt=>vt.stopPropagation())),this.container.style.top="-1000px",this.container.style.left="-1000px",this.show(bt)}handleEvent(vt){"transitionend"===vt.type&&this.__onTransitionEnd(vt)}destroy(){clearTimeout(this.state.hideTimeout),delete this.state.data,super.destroy()}toggle(){throw new qd("Tooltip cannot be toggled")}show(vt){if(0!==this.state.state)throw new qd("Initialized tooltip cannot be re-initialized");vt.className&&addClasses(this.container,vt.className),vt.style&&Object.assign(this.container.style,vt.style),this.state.state=3,this.update(vt.content,vt),this.state.data=vt.data,this.state.state=1,this.viewer.dispatchEvent(new eg(this,this.state.data)),this.__waitImages()}update(vt,bt){this.content.innerHTML=vt;const le=this.container.getBoundingClientRect();this.state.width=le.right-le.left,this.state.height=le.bottom-le.top,this.state.arrow=parseInt(getStyleProperty(this.arrow,"border-top-width"),10),this.state.border=parseInt(getStyleProperty(this.container,"border-top-left-radius"),10),this.move(null!=bt?bt:this.state.config),this.__waitImages()}move(vt){var bt,le,ls;if(1!==this.state.state&&3!==this.state.state)throw new qd("Uninitialized tooltip cannot be moved");vt.box=null!=(bt=null!=(le=vt.box)?le:null==(ls=this.state.config)?void 0:ls.box)?bt:{width:0,height:0},this.state.config=vt;const ho=this.container,Dl=this.arrow,Fl={posClass:cleanCssPosition(vt.position,{allowCenter:!1,cssOrder:!1})||["top","center"],width:this.state.width,height:this.state.height,top:0,left:0,arrowTop:0,arrowLeft:0};this.__computeTooltipPosition(Fl,vt);let sc=null,uc=null;if(Fl.top<0?sc="bottom":Fl.top+Fl.height>this.viewer.state.size.height&&(sc="top"),Fl.left<0?uc="right":Fl.left+Fl.width>this.viewer.state.size.width&&(uc="left"),uc||sc){const bt=cssPositionIsOrdered(Fl.posClass);sc&&(Fl.posClass[bt?0:1]=sc),uc&&(Fl.posClass[bt?1:0]=uc),this.__computeTooltipPosition(Fl,vt)}ho.style.top=Fl.top+"px",ho.style.left=Fl.left+"px",Dl.style.top=Fl.arrowTop+"px",Dl.style.left=Fl.arrowLeft+"px";const mc=Fl.posClass.join("-");mc!==this.state.pos&&(ho.classList.remove("psv-tooltip--"+this.state.pos),this.state.pos=mc,ho.classList.add("psv-tooltip--"+this.state.pos))}hide(){this.container.classList.remove("psv-tooltip--visible"),this.state.state=2,this.viewer.dispatchEvent(new Tm(this.state.data));const vt=parseFloat(getStyleProperty(this.container,"transition-duration"));this.state.hideTimeout=setTimeout((()=>{this.destroy()}),2*vt)}__onTransitionEnd(vt){if("transform"===vt.propertyName)switch(this.state.state){case 1:this.container.classList.add("psv-tooltip--visible"),this.state.state=3;break;case 2:this.state.state=0,this.destroy()}}__computeTooltipPosition(vt,bt){const le=this.state.arrow,ls=bt.top,ho=vt.height,Dl=bt.left,Fl=vt.width,sc=le+this.state.border,uc=bt.box.width/2+2*le,mc=bt.box.height/2+2*le;switch(vt.posClass.join("-")){case"top-left":vt.top=ls-mc-ho,vt.left=Dl+sc-Fl,vt.arrowTop=ho,vt.arrowLeft=Fl-sc-le;break;case"top-center":vt.top=ls-mc-ho,vt.left=Dl-Fl/2,vt.arrowTop=ho,vt.arrowLeft=Fl/2-le;break;case"top-right":vt.top=ls-mc-ho,vt.left=Dl-sc,vt.arrowTop=ho,vt.arrowLeft=le;break;case"bottom-left":vt.top=ls+mc,vt.left=Dl+sc-Fl,vt.arrowTop=2*-le,vt.arrowLeft=Fl-sc-le;break;case"bottom-center":vt.top=ls+mc,vt.left=Dl-Fl/2,vt.arrowTop=2*-le,vt.arrowLeft=Fl/2-le;break;case"bottom-right":vt.top=ls+mc,vt.left=Dl-sc,vt.arrowTop=2*-le,vt.arrowLeft=le;break;case"left-top":vt.top=ls+sc-ho,vt.left=Dl-uc-Fl,vt.arrowTop=ho-sc-le,vt.arrowLeft=Fl;break;case"center-left":vt.top=ls-ho/2,vt.left=Dl-uc-Fl,vt.arrowTop=ho/2-le,vt.arrowLeft=Fl;break;case"left-bottom":vt.top=ls-sc,vt.left=Dl-uc-Fl,vt.arrowTop=le,vt.arrowLeft=Fl;break;case"right-top":vt.top=ls+sc-ho,vt.left=Dl+uc,vt.arrowTop=ho-sc-le,vt.arrowLeft=2*-le;break;case"center-right":vt.top=ls-ho/2,vt.left=Dl+uc,vt.arrowTop=ho/2-le,vt.arrowLeft=2*-le;break;case"right-bottom":vt.top=ls-sc,vt.left=Dl+uc,vt.arrowTop=le,vt.arrowLeft=2*-le}}__waitImages(){const vt=this.content.querySelectorAll("img");if(vt.length>0){const bt=[];vt.forEach((vt=>{vt.complete||bt.push(new Promise((bt=>{vt.onload=bt,vt.onerror=bt})))})),bt.length&&Promise.all(bt).then((()=>{if(1===this.state.state||3===this.state.state){const vt=this.container.getBoundingClientRect();this.state.width=vt.right-vt.left,this.state.height=vt.bottom-vt.top,this.move(this.state.config)}}))}}},iA=class{constructor(vt){this.viewer=vt,this.config=vt.config,this.state=vt.state}destroy(){}},nA=new ho.Pq0,rA=new ho.O9p(0,0,0,"ZXY"),aA=class extends iA{constructor(vt){super(vt)}fovToZoomLevel(vt){const bt=Math.round((vt-this.config.minFov)/(this.config.maxFov-this.config.minFov)*100);return ho.cj9.clamp(bt-2*(bt-50),0,100)}zoomLevelToFov(vt){return this.config.maxFov+vt/100*(this.config.minFov-this.config.maxFov)}vFovToHFov(vt){return ho.cj9.radToDeg(2*Math.atan(Math.tan(ho.cj9.degToRad(vt)/2)*this.state.aspect))}hFovToVFov(vt){return ho.cj9.radToDeg(2*Math.atan(Math.tan(ho.cj9.degToRad(vt)/2)/this.state.aspect))}getAnimationProperties(vt,bt,le){const ls=!isNil(bt),ho=!isNil(le),Dl={};let Fl=null;if(ls){const le=this.viewer.getPosition(),ls=getShortestArc(le.yaw,bt.yaw);Dl.yaw={start:le.yaw,end:le.yaw+ls},Dl.pitch={start:le.pitch,end:bt.pitch},Fl=speedToDuration(vt,getAngle(le,bt))}if(ho){const bt=this.viewer.getZoomLevel(),ls=Math.abs(le-bt);Dl.zoom={start:bt,end:le},null===Fl&&(Fl=speedToDuration(vt,Math.PI/4*ls/100))}return Fl=null===Fl?"number"===typeof vt?vt:mc:Math.max(mc,Fl),{duration:Fl,properties:Dl}}getTransitionOptions(vt){var bt;let le;const ho=null!=(bt=this.config.defaultTransition)?bt:Ug.defaultTransition;return le=!1===vt.transition||null===vt.transition?null:!0===vt.transition?(0,ls.A)({},ho):"object"===typeof vt.transition?(0,ls.A)({},ho,vt.transition):this.config.defaultTransition,le}textureCoordsToSphericalCoords(vt){var bt;if(null==(bt=this.state.textureData)||!bt.panoData)throw new qd("Current adapter does not support texture coordinates or no texture has been loaded");const le=this.viewer.adapter.textureCoordsToSphericalCoords(vt,this.state.textureData.panoData);return rA.equals(this.viewer.renderer.panoramaPose)&&rA.equals(this.viewer.renderer.sphereCorrection)?le:(this.sphericalCoordsToVector3(le,nA),nA.applyEuler(this.viewer.renderer.panoramaPose),nA.applyEuler(this.viewer.renderer.sphereCorrection),this.vector3ToSphericalCoords(nA))}sphericalCoordsToTextureCoords(vt){var bt;if(null==(bt=this.state.textureData)||!bt.panoData)throw new qd("Current adapter does not support texture coordinates or no texture has been loaded");return rA.equals(this.viewer.renderer.panoramaPose)&&rA.equals(this.viewer.renderer.sphereCorrection)||(this.sphericalCoordsToVector3(vt,nA),applyEulerInverse(nA,this.viewer.renderer.sphereCorrection),applyEulerInverse(nA,this.viewer.renderer.panoramaPose),vt=this.vector3ToSphericalCoords(nA)),this.viewer.adapter.sphericalCoordsToTextureCoords(vt,this.state.textureData.panoData)}sphericalCoordsToVector3(vt,bt,le){return void 0===le&&(le=_u),bt||(bt=new ho.Pq0),bt.x=le*-Math.cos(vt.pitch)*Math.sin(vt.yaw),bt.y=le*Math.sin(vt.pitch),bt.z=le*Math.cos(vt.pitch)*Math.cos(vt.yaw),bt}vector3ToSphericalCoords(vt){const bt=Math.acos(vt.y/Math.sqrt(vt.x*vt.x+vt.y*vt.y+vt.z*vt.z)),le=Math.atan2(vt.x,vt.z);return{yaw:le<0?-le:2*Math.PI-le,pitch:Math.PI/2-bt}}viewerCoordsToVector3(vt){const bt=this.viewer.renderer.getIntersections(vt).filter((vt=>vt.object.userData[Md]));return bt.length?bt[0].point:null}viewerCoordsToSphericalCoords(vt){const bt=this.viewerCoordsToVector3(vt);return bt?this.vector3ToSphericalCoords(bt):null}vector3ToViewerCoords(vt){const bt=vt.clone();return bt.project(this.viewer.renderer.camera),{x:Math.round((bt.x+1)/2*this.state.size.width),y:Math.round((1-bt.y)/2*this.state.size.height)}}sphericalCoordsToViewerCoords(vt){return this.sphericalCoordsToVector3(vt,nA),this.vector3ToViewerCoords(nA)}isPointVisible(vt){let bt,le;if(vt instanceof ho.Pq0)bt=vt,le=this.vector3ToViewerCoords(vt);else{if(!isExtendedPosition(vt))return!1;bt=this.sphericalCoordsToVector3(vt,nA),le=this.vector3ToViewerCoords(bt)}return bt.dot(this.viewer.state.direction)>0&&le.x>=0&&le.x<=this.viewer.state.size.width&&le.y>=0&&le.y<=this.viewer.state.size.height}cleanPosition(vt){if("yaw"in vt||"pitch"in vt){if(!("yaw"in vt)||!("pitch"in vt))throw new qd("Position is missing 'yaw' or 'pitch'");return{yaw:parseAngle(vt.yaw),pitch:parseAngle(vt.pitch,!0)}}return this.textureCoordsToSphericalCoords(vt)}cleanSphereCorrection(vt){return{pan:parseAngle((null==vt?void 0:vt.pan)||0),tilt:parseAngle((null==vt?void 0:vt.tilt)||0,!0),roll:parseAngle((null==vt?void 0:vt.roll)||0,!0,!1)}}cleanPanoramaPose(vt){return{pan:ho.cj9.degToRad((null==vt?void 0:vt.poseHeading)||0),tilt:ho.cj9.degToRad((null==vt?void 0:vt.posePitch)||0),roll:ho.cj9.degToRad((null==vt?void 0:vt.poseRoll)||0)}}cleanPanoramaOptions(vt,bt){return null!=bt&&bt.isEquirectangular?(isNil(vt.zoom)&&!isNil(bt.initialFov)&&(vt=(0,ls.A)({},vt,{zoom:this.fovToZoomLevel(this.hFovToVFov(bt.initialFov))})),!isNil(vt.position)||isNil(bt.initialHeading)||isNil(bt.initialPitch)||(vt=(0,ls.A)({},vt,{position:{yaw:parseAngle(bt.initialHeading),pitch:parseAngle(bt.initialPitch,!0)}})),vt):vt}},sA=class _Step{constructor(){this.$=_Step.IDLE}is(){for(var vt=arguments.length,bt=new Array(vt),le=0;le<vt;le++)bt[le]=arguments[le];return bt.some((vt=>this.$&vt))}set(vt){this.$=vt}add(vt){this.$|=vt}remove(vt){this.$&=~vt}};sA.IDLE=0,sA.CLICK=1,sA.MOVING=2;var oA=sA,lA=class extends iA{constructor(vt){super(vt),this.data={startMouseX:0,startMouseY:0,mouseX:0,mouseY:0,pinchDist:0,moveDelta:{yaw:0,pitch:0,zoom:0},accumulatorFactor:0,ctrlKeyDown:!1,dblclickData:null,dblclickTimeout:null,longtouchTimeout:null,twofingersTimeout:null,ctrlZoomTimeout:null},this.step=new oA,this.keyHandler=new sp,this.resizeObserver=new ResizeObserver(throttle((()=>this.viewer.autoSize()),50)),this.moveThreshold=gc*Ag.pixelRatio}init(){window.addEventListener("keydown",this,{passive:!1}),window.addEventListener("keyup",this),this.viewer.container.addEventListener("mousedown",this),window.addEventListener("mousemove",this,{passive:!1}),window.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchstart",this,{passive:!1}),window.addEventListener("touchmove",this,{passive:!1}),window.addEventListener("touchend",this,{passive:!1}),this.viewer.container.addEventListener("wheel",this,{passive:!1}),document.addEventListener("fullscreenchange",this),this.resizeObserver.observe(this.viewer.container),this.viewer.addEventListener(cm.type,this),this.viewer.addEventListener(ag.type,this)}destroy(){window.removeEventListener("keydown",this),window.removeEventListener("keyup",this),this.viewer.container.removeEventListener("mousedown",this),window.removeEventListener("mousemove",this),window.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchstart",this),window.removeEventListener("touchmove",this),window.removeEventListener("touchend",this),this.viewer.container.removeEventListener("wheel",this),document.removeEventListener("fullscreenchange",this),this.resizeObserver.disconnect(),this.viewer.removeEventListener(cm.type,this),this.viewer.removeEventListener(ag.type,this),clearTimeout(this.data.dblclickTimeout),clearTimeout(this.data.longtouchTimeout),clearTimeout(this.data.twofingersTimeout),clearTimeout(this.data.ctrlZoomTimeout),super.destroy()}handleEvent(vt){switch(vt.type){case"keydown":this.__onKeyDown(vt);break;case"keyup":this.__onKeyUp();break;case"mousemove":this.__onMouseMove(vt);break;case"mouseup":this.__onMouseUp(vt);break;case"touchmove":this.__onTouchMove(vt);break;case"touchend":this.__onTouchEnd(vt);break;case"fullscreenchange":this.__onFullscreenChange();break;case cm.type:this.__applyMoveDelta();break;case ag.type:this.__clearMoveDelta()}if(!getMatchingTarget(vt,"."+Ld))switch(vt.type){case"mousedown":this.__onMouseDown(vt);break;case"touchstart":this.__onTouchStart(vt);break;case"wheel":this.__onMouseWheel(vt)}}__onKeyDown(vt){if(this.config.mousewheelCtrlKey&&(this.data.ctrlKeyDown=vt.key===Od.Control,this.data.ctrlKeyDown&&(clearTimeout(this.data.ctrlZoomTimeout),this.viewer.overlay.hide(Rd.CTRL_ZOOM))),this.viewer.dispatchEvent(new Cm(vt.key,vt))&&this.state.keyboardEnabled&&this.config.keyboardActions&&!this.keyHandler.pending)for(const[bt,le]of Object.entries(this.config.keyboardActions))if(keyPressMatch(vt,bt)){if("function"===typeof le)le(this.viewer,vt);else{switch("ZOOM_IN"!==le&&"ZOOM_OUT"!==le&&this.viewer.stopAll(),le){case"ROTATE_UP":this.viewer.dynamics.position.roll({pitch:!1});break;case"ROTATE_DOWN":this.viewer.dynamics.position.roll({pitch:!0});break;case"ROTATE_RIGHT":this.viewer.dynamics.position.roll({yaw:!1});break;case"ROTATE_LEFT":this.viewer.dynamics.position.roll({yaw:!0});break;case"ZOOM_IN":this.viewer.dynamics.zoom.roll(!1);break;case"ZOOM_OUT":this.viewer.dynamics.zoom.roll(!0)}this.keyHandler.down(le)}return void vt.preventDefault()}}__onKeyUp(){this.data.ctrlKeyDown=!1,this.state.keyboardEnabled&&this.keyHandler.up((vt=>{"ZOOM_IN"===vt||"ZOOM_OUT"===vt?this.viewer.dynamics.zoom.stop():(this.viewer.dynamics.position.stop(),this.viewer.resetIdleTimer())}))}__onMouseDown(vt){this.step.add(oA.CLICK),this.data.startMouseX=vt.clientX,this.data.startMouseY=vt.clientY,this.config.mousemove&&vt.preventDefault()}__onMouseUp(vt){this.step.is(oA.CLICK,oA.MOVING)&&this.__stopMove(vt.clientX,vt.clientY,vt,2===vt.button)}__onMouseMove(vt){this.config.mousemove&&this.step.is(oA.CLICK,oA.MOVING)&&(vt.preventDefault(),this.__doMove(vt.clientX,vt.clientY)),this.__handleObjectsEvents(vt)}__onTouchStart(vt){1===vt.touches.length?(this.step.add(oA.CLICK),this.data.startMouseX=vt.touches[0].clientX,this.data.startMouseY=vt.touches[0].clientY,this.data.longtouchTimeout||(this.data.longtouchTimeout=setTimeout((()=>{const bt=vt.touches[0];this.__stopMove(bt.clientX,bt.clientY,vt,!0),this.data.longtouchTimeout=null}),Ec))):2===vt.touches.length&&(this.step.set(oA.IDLE),this.__cancelLongTouch(),this.config.mousemove&&(this.__cancelTwoFingersOverlay(),this.__startMoveZoom(vt),vt.preventDefault()))}__onTouchEnd(vt){if(this.__cancelLongTouch(),this.step.is(oA.CLICK,oA.MOVING))if(vt.preventDefault(),this.__cancelTwoFingersOverlay(),1===vt.touches.length)this.__stopMove(this.data.mouseX,this.data.mouseY);else if(0===vt.touches.length){const bt=vt.changedTouches[0];this.__stopMove(bt.clientX,bt.clientY,vt)}}__onTouchMove(vt){if(this.__cancelLongTouch(),this.config.mousemove)if(1===vt.touches.length){if(this.config.touchmoveTwoFingers)this.step.is(oA.CLICK)&&!this.data.twofingersTimeout&&(this.data.twofingersTimeout=setTimeout((()=>{this.viewer.overlay.show({id:Rd.TWO_FINGERS,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M33.38 33.2a1.96 1.96 0 0 0 1.5-3.23 10.61 10.61 0 0 1 7.18-17.51c.7-.06 1.31-.49 1.61-1.12a13.02 13.02 0 0 1 11.74-7.43c7.14 0 12.96 5.8 12.96 12.9 0 3.07-1.1 6.05-3.1 8.38-.7.82-.61 2.05.21 2.76.83.7 2.07.6 2.78-.22a16.77 16.77 0 0 0 4.04-10.91C72.3 7.54 64.72 0 55.4 0a16.98 16.98 0 0 0-14.79 8.7 14.6 14.6 0 0 0-12.23 14.36c0 3.46 1.25 6.82 3.5 9.45.4.45.94.69 1.5.69m45.74 43.55a22.13 22.13 0 0 1-5.23 12.4c-4 4.55-9.53 6.86-16.42 6.86-12.6 0-20.1-10.8-20.17-10.91a1.82 1.82 0 0 0-.08-.1c-5.3-6.83-14.55-23.82-17.27-28.87-.05-.1 0-.21.02-.23a6.3 6.3 0 0 1 8.24 1.85l9.38 12.59a1.97 1.97 0 0 0 3.54-1.17V25.34a4 4 0 0 1 1.19-2.87 3.32 3.32 0 0 1 2.4-.95c1.88.05 3.4 1.82 3.4 3.94v24.32a1.96 1.96 0 0 0 3.93 0v-33.1a3.5 3.5 0 0 1 7 0v35.39a1.96 1.96 0 0 0 3.93 0v-.44c.05-2.05 1.6-3.7 3.49-3.7 1.93 0 3.5 1.7 3.5 3.82v5.63c0 .24.04.48.13.71l.1.26a1.97 1.97 0 0 0 3.76-.37c.33-1.78 1.77-3.07 3.43-3.07 1.9 0 3.45 1.67 3.5 3.74l-1.77 18.1zM77.39 51c-1.25 0-2.45.32-3.5.9v-.15c0-4.27-3.33-7.74-7.42-7.74-1.26 0-2.45.33-3.5.9V16.69a7.42 7.42 0 0 0-14.85 0v1.86a7 7 0 0 0-3.28-.94 7.21 7.21 0 0 0-5.26 2.07 7.92 7.92 0 0 0-2.38 5.67v37.9l-5.83-7.82a10.2 10.2 0 0 0-13.35-2.92 4.1 4.1 0 0 0-1.53 5.48C20 64.52 28.74 80.45 34.07 87.34c.72 1.04 9.02 12.59 23.4 12.59 7.96 0 14.66-2.84 19.38-8.2a26.06 26.06 0 0 0 6.18-14.6l1.78-18.2v-.2c0-4.26-3.32-7.73-7.42-7.73z"/>\x3c!--Created by AomAm from the Noun Project--\x3e</svg>\n',title:this.config.lang.twoFingers})}),kc));else if(this.step.is(oA.CLICK,oA.MOVING)){vt.preventDefault();const bt=vt.touches[0];this.__doMove(bt.clientX,bt.clientY)}}else this.__doMoveZoom(vt),this.__cancelTwoFingersOverlay()}__cancelLongTouch(){this.data.longtouchTimeout&&(clearTimeout(this.data.longtouchTimeout),this.data.longtouchTimeout=null)}__cancelTwoFingersOverlay(){this.config.touchmoveTwoFingers&&(this.data.twofingersTimeout&&(clearTimeout(this.data.twofingersTimeout),this.data.twofingersTimeout=null),this.viewer.overlay.hide(Rd.TWO_FINGERS))}__onMouseWheel(vt){if(!this.config.mousewheel||!vt.deltaY)return;if(this.config.mousewheelCtrlKey&&!this.data.ctrlKeyDown)return this.viewer.overlay.show({id:Rd.CTRL_ZOOM,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="10 17 79 79"><path fill="currentColor" d="M38.1 29.27c-.24 0-.44.2-.44.45v10.7a.45.45 0 00.9 0v-10.7c0-.25-.2-.45-.45-.45zm10.2 26.66a11.54 11.54 0 01-8.48-6.14.45.45 0 10-.8.41 12.45 12.45 0 009.22 6.62.45.45 0 00.07-.9zm24.55-13.08a23.04 23.04 0 00-22.56-23v7.07l-.01.05a2.83 2.83 0 012.39 2.78v14.03l.09-.02h8.84v-9.22a.45.45 0 11.9 0v9.22h10.35v-.9zm0 27.33V44.66H62.5c-.02 2.01-.52 4-1.47 5.76a.45.45 0 01-.61.18.45.45 0 01-.19-.61 11.54 11.54 0 001.36-5.33h-8.83l-.1-.01a2.83 2.83 0 01-2.83 2.84h-.04-.04a2.83 2.83 0 01-2.83-2.83v-14.9a2.82 2.82 0 012.47-2.8v-7.11a23.04 23.04 0 00-22.57 23v.91h14.72V29.88a8.2 8.2 0 015.02-7.57c.22-.1.5.01.59.24.1.23-.01.5-.24.6a7.3 7.3 0 00-4.47 6.73v13.88h3.9a.45.45 0 110 .9h-3.9v.15a7.32 7.32 0 0011.23 6.17.45.45 0 01.49.76 8.22 8.22 0 01-12.62-6.93v-.15H26.82v25.52a23.04 23.04 0 0023.01 23.01 23.04 23.04 0 0023.02-23.01zm1.8-27.33v27.33A24.85 24.85 0 0149.84 95a24.85 24.85 0 01-24.82-24.82V42.85a24.85 24.85 0 0124.82-24.82 24.85 24.85 0 0124.83 24.82zM57.98 29.88v9.36a.45.45 0 11-.9 0v-9.36a7.28 7.28 0 00-3.4-6.17.45.45 0 01.49-.76 8.18 8.18 0 013.8 6.93z"/>\x3c!-- Created by Icon Island from the Noun Project --\x3e</svg>\n',title:this.config.lang.ctrlZoom}),clearTimeout(this.data.ctrlZoomTimeout),void(this.data.ctrlZoomTimeout=setTimeout((()=>this.viewer.overlay.hide(Rd.CTRL_ZOOM)),du));vt.preventDefault(),vt.stopPropagation();const bt=vt.deltaY/Math.abs(vt.deltaY)*5*this.config.zoomSpeed;0!==bt&&this.viewer.dynamics.zoom.step(-bt,5)}__onFullscreenChange(){const vt=this.viewer.isFullscreenEnabled();"fullscreen"===this.config.keyboard&&(vt?this.viewer.startKeyboardControl():this.viewer.stopKeyboardControl()),this.viewer.dispatchEvent(new ym(vt))}__resetMove(){this.step.set(oA.IDLE),this.data.mouseX=0,this.data.mouseY=0,this.data.startMouseX=0,this.data.startMouseY=0}__startMoveZoom(vt){this.viewer.stopAll(),this.__resetMove();const bt=getTouchData(vt);this.step.set(oA.MOVING),this.data.accumulatorFactor=this.config.moveInertia,({distance:this.data.pinchDist,center:{x:this.data.mouseX,y:this.data.mouseY}}=bt)}__stopMove(vt,bt,le,ls){void 0===ls&&(ls=!1),this.step.is(oA.CLICK)&&!this.__moveThresholdReached(vt,bt)&&this.__doClick(vt,bt,le,ls),this.config.moveInertia&&(this.data.accumulatorFactor=Math.pow(this.config.moveInertia,.5)),this.__resetMove(),this.viewer.resetIdleTimer()}__doClick(vt,bt,le,ls){void 0===ls&&(ls=!1);const ho=this.viewer.container.getBoundingClientRect(),Dl=vt-ho.left,Fl=bt-ho.top,sc=this.viewer.renderer.getIntersections({x:Dl,y:Fl}),uc=sc.find((vt=>vt.object.userData[Md]));if(uc){const ho=this.viewer.dataHelper.vector3ToSphericalCoords(uc.point),gc={rightclick:ls,originalEvent:le,target:getEventTarget(le),clientX:vt,clientY:bt,viewerX:Dl,viewerY:Fl,yaw:ho.yaw,pitch:ho.pitch,objects:sc.map((vt=>vt.object)).filter((vt=>!vt.userData[Md]))};try{const vt=this.viewer.dataHelper.sphericalCoordsToTextureCoords(gc);Object.assign(gc,vt)}catch(mc){}this.data.dblclickTimeout?(Math.abs(this.data.dblclickData.clientX-gc.clientX)<this.moveThreshold&&Math.abs(this.data.dblclickData.clientY-gc.clientY)<this.moveThreshold&&this.viewer.dispatchEvent(new Am(this.data.dblclickData)),clearTimeout(this.data.dblclickTimeout),this.data.dblclickTimeout=null,this.data.dblclickData=null):(this.viewer.dispatchEvent(new pm(gc)),this.data.dblclickData=clone(gc),this.data.dblclickTimeout=setTimeout((()=>{this.data.dblclickTimeout=null,this.data.dblclickData=null}),Ac))}}__handleObjectsEvents(vt){if(!isEmpty(this.state.objectsObservers)&&vt.composedPath().includes(this.viewer.container)){const bt=getPosition(this.viewer.container),le={x:vt.clientX-bt.x,y:vt.clientY-bt.y},ls=this.viewer.renderer.getIntersections(le),emit=(bt,ls,ho)=>{this.viewer.dispatchEvent(new ho(vt,bt,le,ls))};for(const[vt,ho]of Object.entries(this.state.objectsObservers)){const bt=ls.find((bt=>bt.object.userData[vt]));bt?(ho&&bt.object!==ho&&(emit(ho,vt,dg),this.state.objectsObservers[vt]=null),ho?emit(bt.object,vt,mg):(this.state.objectsObservers[vt]=bt.object,emit(bt.object,vt,ug))):ho&&(emit(ho,vt,dg),this.state.objectsObservers[vt]=null)}}}__doMove(vt,bt){if(this.step.is(oA.CLICK)&&this.__moveThresholdReached(vt,bt))this.viewer.stopAll(),this.__resetMove(),this.step.set(oA.MOVING),this.data.mouseX=vt,this.data.mouseY=bt,this.data.accumulatorFactor=this.config.moveInertia;else if(this.step.is(oA.MOVING)){const le=(vt-this.data.mouseX)*Math.cos(this.state.roll)-(bt-this.data.mouseY)*Math.sin(this.state.roll),ls=(bt-this.data.mouseY)*Math.cos(this.state.roll)+(vt-this.data.mouseX)*Math.sin(this.state.roll),Dl={yaw:this.config.moveSpeed*(le/this.state.size.width)*ho.cj9.degToRad(this.state.hFov),pitch:this.config.moveSpeed*(ls/this.state.size.height)*ho.cj9.degToRad(this.state.vFov)};this.data.moveDelta.yaw+=Dl.yaw,this.data.moveDelta.pitch+=Dl.pitch,this.data.mouseX=vt,this.data.mouseY=bt}}__moveThresholdReached(vt,bt){return Math.abs(vt-this.data.startMouseX)>=this.moveThreshold||Math.abs(bt-this.data.startMouseY)>=this.moveThreshold}__doMoveZoom(vt){if(this.step.is(oA.MOVING)){vt.preventDefault();const bt=getTouchData(vt);this.__doMove(bt.center.x,bt.center.y),this.data.moveDelta.zoom+=this.config.zoomSpeed*((bt.distance-this.data.pinchDist)/Ag.pixelRatio),this.data.pinchDist=bt.distance}}__applyMoveDelta(){const vt=.001;if(Math.abs(this.data.moveDelta.yaw)>0||Math.abs(this.data.moveDelta.pitch)>0){const bt=this.viewer.getPosition();this.viewer.rotate({yaw:bt.yaw-this.data.moveDelta.yaw*(1-this.config.moveInertia),pitch:bt.pitch+this.data.moveDelta.pitch*(1-this.config.moveInertia)}),this.data.moveDelta.yaw*=this.data.accumulatorFactor,this.data.moveDelta.pitch*=this.data.accumulatorFactor,Math.abs(this.data.moveDelta.yaw)<=vt&&(this.data.moveDelta.yaw=0),Math.abs(this.data.moveDelta.pitch)<=vt&&(this.data.moveDelta.pitch=0)}if(Math.abs(this.data.moveDelta.zoom)>0){const bt=this.viewer.getZoomLevel();this.viewer.zoom(bt+this.data.moveDelta.zoom*(1-this.config.moveInertia)),this.data.moveDelta.zoom*=this.config.moveInertia,Math.abs(this.data.moveDelta.zoom)<=vt&&(this.data.moveDelta.zoom=0)}}__clearMoveDelta(){this.data.moveDelta.yaw=0,this.data.moveDelta.pitch=0,this.data.moveDelta.zoom=0}};ho.ppV.enabled=!1;var cA=new ho.I9Y,uA=new ho.kn4,hA=new ho.NRn,dA=class extends iA{constructor(vt){super(vt),this.frustumNeedsUpdate=!0,this.renderer=new Dl.JeP(this.config.rendererParameters),this.renderer.setPixelRatio(Ag.pixelRatio),this.renderer.outputColorSpace=ho.Zr2,this.renderer.toneMapping=ho.kyO,this.renderer.domElement.className="psv-canvas",this.renderer.domElement.style.background=this.config.canvasBackground,this.scene=new ho.Z58,this.camera=new ho.ubm(50,16/9,.1,2*_u),this.camera.matrixAutoUpdate=!1;const bt=new ho.eaF(new ho.Gu$(_u).scale(-1,1,1),new ho.V9B({opacity:0,transparent:!0,depthTest:!1,depthWrite:!1}));bt.userData={[Md]:!0},this.scene.add(bt),this.raycaster=new ho.tBo,this.frustum=new ho.PPD,this.container=document.createElement("div"),this.container.className="psv-canvas-container",this.container.appendChild(this.renderer.domElement),this.viewer.container.appendChild(this.container),this.container.addEventListener("contextmenu",(vt=>vt.preventDefault())),this.viewer.addEventListener(ng.type,this),this.viewer.addEventListener(og.type,this),this.viewer.addEventListener(Um.type,this),this.viewer.addEventListener(Gm.type,this),this.viewer.addEventListener(fm.type,this),this.hide()}get panoramaPose(){return this.mesh.rotation}get sphereCorrection(){return this.meshContainer.rotation}init(){this.show(),this.renderer.setAnimationLoop((vt=>this.__renderLoop(vt)))}destroy(){this.renderer.setAnimationLoop(null),this.cleanScene(this.scene),this.renderer.dispose(),this.viewer.container.removeChild(this.container),this.viewer.removeEventListener(ng.type,this),this.viewer.removeEventListener(og.type,this),this.viewer.removeEventListener(Um.type,this),this.viewer.removeEventListener(Gm.type,this),this.viewer.removeEventListener(fm.type,this),super.destroy()}handleEvent(vt){switch(vt.type){case ng.type:this.__onSizeUpdated();break;case og.type:this.__onZoomUpdated();break;case Um.type:case Gm.type:this.__onPositionUpdated();break;case fm.type:vt.containsOptions("fisheye")&&this.__onPositionUpdated(),vt.containsOptions("canvasBackground")&&(this.renderer.domElement.style.background=this.config.canvasBackground)}}hide(){this.container.style.opacity="0"}show(){this.container.style.opacity="1"}setCustomRenderer(vt){this.customRenderer=vt?vt(this.renderer):null,this.viewer.needsUpdate()}__onSizeUpdated(){this.renderer.setSize(this.state.size.width,this.state.size.height),this.camera.aspect=this.state.aspect,this.camera.updateProjectionMatrix(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__onZoomUpdated(){this.camera.fov=this.state.vFov,this.camera.updateProjectionMatrix(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__onPositionUpdated(){this.camera.position.set(0,0,0),this.camera.lookAt(this.state.direction),this.config.fisheye&&this.camera.position.copy(this.state.direction).multiplyScalar(this.config.fisheye/2).negate(),this.camera.rotateZ(-this.state.roll),this.camera.updateMatrix(),this.camera.updateMatrixWorld(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__renderLoop(vt){const bt=this.timestamp?vt-this.timestamp:0;this.timestamp=vt,this.viewer.dispatchEvent(new cm(vt,bt)),this.viewer.dynamics.update(bt),(this.state.needsUpdate||this.state.continuousUpdateCount>0)&&(this.state.needsUpdate=!1,(this.customRenderer||this.renderer).render(this.scene,this.camera),this.viewer.dispatchEvent(new Zm))}setTexture(vt){this.meshContainer||(this.meshContainer=new ho.YJl,this.scene.add(this.meshContainer)),this.state.textureData&&this.viewer.adapter.disposeTexture(this.state.textureData),this.mesh&&(this.meshContainer.remove(this.mesh),this.viewer.adapter.disposeMesh(this.mesh)),this.mesh=this.viewer.adapter.createMesh(vt.panoData),this.viewer.adapter.setTexture(this.mesh,vt,!1),this.meshContainer.add(this.mesh),this.state.textureData=vt,this.viewer.needsUpdate()}setPanoramaPose(vt,bt){void 0===bt&&(bt=this.mesh);const le=this.viewer.dataHelper.cleanPanoramaPose(vt);bt.rotation.set(-le.tilt,le.pan,le.roll,"YXZ")}setSphereCorrection(vt,bt){void 0===bt&&(bt=this.meshContainer);const le=this.viewer.dataHelper.cleanSphereCorrection(vt);bt.rotation.set(le.tilt,le.pan,le.roll,"YXZ")}transition(vt,bt,le){const Dl="fade"===le.effect||le.rotation,Fl=!isNil(bt.position),sc=!isNil(bt.zoom),uc=new om(Fl?this.viewer.dataHelper.cleanPosition(bt.position):void 0,bt.zoom);this.viewer.dispatchEvent(uc);const mc=new ho.YJl,gc=this.viewer.adapter.createMesh(vt.panoData);if(this.viewer.adapter.setTexture(gc,vt,!0),this.viewer.adapter.setTextureOpacity(gc,0),this.setPanoramaPose(vt.panoData,gc),this.setSphereCorrection(bt.sphereCorrection,mc),Fl&&!le.rotation){const vt=this.viewer.getPosition(),bt=new ho.Pq0(0,1,0);mc.rotateOnWorldAxis(bt,uc.position.yaw-vt.yaw);const le=new ho.Pq0(0,1,0).cross(this.camera.getWorldDirection(new ho.Pq0)).normalize();mc.rotateOnWorldAxis(le,uc.position.pitch-vt.pitch)}mc.add(gc),this.scene.add(mc),this.renderer.setRenderTarget(new ho.nWS),this.renderer.render(this.scene,this.camera),this.renderer.setRenderTarget(null);const{duration:Ac,properties:Ec}=this.viewer.dataHelper.getAnimationProperties(le.speed,le.rotation?uc.position:null,Dl?uc.zoomLevel:null),kc=new Kd({properties:(0,ls.A)({},Ec,{opacity:{start:0,end:1}}),duration:Ac,easing:"inOutCubic",onTick:vt=>{switch(le.effect){case"fade":this.viewer.adapter.setTextureOpacity(gc,vt.opacity);break;case"black":case"white":vt.opacity<.5?this.renderer.toneMappingExposure="black"===le.effect?ho.cj9.mapLinear(vt.opacity,0,.5,1,0):ho.cj9.mapLinear(vt.opacity,0,.5,1,5):(this.renderer.toneMappingExposure="black"===le.effect?ho.cj9.mapLinear(vt.opacity,.5,1,0,1):ho.cj9.mapLinear(vt.opacity,.5,1,5,1),this.mesh.visible=!1,this.viewer.adapter.setTextureOpacity(gc,1),sc&&!Dl&&this.viewer.dynamics.zoom.setValue(uc.zoomLevel))}Fl&&le.rotation&&this.viewer.dynamics.position.setValue({yaw:vt.yaw,pitch:vt.pitch}),sc&&Dl&&this.viewer.dynamics.zoom.setValue(vt.zoom),this.viewer.needsUpdate()}});return kc.then((ls=>{mc.remove(gc),this.scene.remove(mc),ls?(this.viewer.adapter.disposeTexture(this.state.textureData),this.meshContainer.remove(this.mesh),this.viewer.adapter.disposeMesh(this.mesh),this.mesh=gc,this.meshContainer.add(gc),this.state.textureData=vt,this.setPanoramaPose(vt.panoData),this.setSphereCorrection(bt.sphereCorrection),Fl&&!le.rotation&&this.viewer.rotate(bt.position)):(this.viewer.adapter.disposeTexture(vt),this.viewer.adapter.disposeMesh(gc))})),kc}getIntersections(vt){var bt;cA.x=2*vt.x/this.state.size.width-1,cA.y=-2*vt.y/this.state.size.height+1,this.raycaster.setFromCamera(cA,this.camera);const le=this.raycaster.intersectObjects(this.scene.children,!0).filter((vt=>vt.object.visible)).filter((vt=>vt.object.isMesh&&!!vt.object.userData));return null!=(bt=this.customRenderer)&&bt.getIntersections&&le.push(...this.customRenderer.getIntersections(this.raycaster,cA)),le}isObjectVisible(vt){if(!vt)return!1;if(this.frustumNeedsUpdate&&(uA.multiplyMatrices(this.camera.projectionMatrix,this.camera.matrixWorldInverse),this.frustum.setFromProjectionMatrix(uA),this.frustumNeedsUpdate=!1),vt.isVector3)return this.frustum.containsPoint(vt);if(vt.isMesh&&vt.geometry){const bt=vt;return bt.geometry.boundingBox||bt.geometry.computeBoundingBox(),hA.copy(bt.geometry.boundingBox).applyMatrix4(bt.matrixWorld),this.frustum.intersectsBox(hA)}return!!vt.isObject3D&&this.frustum.intersectsObject(vt)}addObject(vt){this.scene.add(vt)}removeObject(vt){this.scene.remove(vt)}cleanScene(vt){const disposeMaterial=vt=>{var bt;null==(bt=vt.map)||bt.dispose(),vt.uniforms&&Object.values(vt.uniforms).forEach((vt=>{var bt;null==(bt=vt.value)||null==bt.dispose||bt.dispose()})),vt.dispose()};vt.traverse((bt=>{var le;null==(le=bt.geometry)||le.dispose(),bt.material&&(Array.isArray(bt.material)?bt.material.forEach((vt=>{disposeMaterial(vt)})):disposeMaterial(bt.material)),bt instanceof ho.Z58||null==bt.dispose||bt.dispose(),bt!==vt&&this.cleanScene(bt)}))}},pA=class extends ho.$NF{constructor(){super(...arguments),this._abortController=new AbortController}abort(){return this._abortController.abort(),this._abortController=new AbortController,this}load(vt,bt,le,ls){const ho=this._abortController.signal,Dl=super.load(vt,(vt=>{removeEventListeners(),bt(vt)}),le,(vt=>{if(removeEventListeners(),ho.aborted){const vt=new Error;vt.name="AbortError",vt.message="The operation was aborted.",ls(vt)}else ls(vt)}));function onAbortSignal(){Dl.src=""}function removeEventListeners(){ho.removeEventListener("abort",onAbortSignal,!1)}return ho.addEventListener("abort",onAbortSignal,!1),Dl}},mA=class extends iA{constructor(vt){super(vt),this.fileLoader=new ho.Y9S,this.fileLoader.setResponseType("blob"),this.imageLoader=new pA}destroy(){this.abortLoading(),super.destroy()}abortLoading(){var vt,bt;null==(vt=(bt=this.fileLoader).abort)||vt.call(bt),this.imageLoader.abort()}loadFile(vt,bt,le){const ls=Qg.get(vt,le);if(ls){if(ls instanceof Blob)return null==bt||bt(100),Promise.resolve(ls);Qg.remove(vt,le)}this.config.requestHeaders&&this.fileLoader.setRequestHeader(this.config.requestHeaders(vt)),this.fileLoader.setWithCredentials(this.config.withCredentials(vt));let ho=0;return null==bt||bt(ho),this.fileLoader.loadAsync(vt,(vt=>{if(vt.lengthComputable){const le=vt.loaded/vt.total*100;le>ho&&(ho=le,null==bt||bt(ho))}})).then((ls=>(ho=100,null==bt||bt(ho),Qg.add(vt,le,ls),ls)))}loadImage(vt,bt,le){const ls=Qg.get(vt,le);return ls?(null==bt||bt(100),ls instanceof Blob?this.blobToImage(ls):Promise.resolve(ls)):bt||this.config.requestHeaders?this.loadFile(vt,bt,le).then((vt=>this.blobToImage(vt))):(this.imageLoader.setWithCredentials(this.config.withCredentials(vt)),this.imageLoader.loadAsync(vt).then((bt=>(Qg.add(vt,le,bt),bt))))}blobToImage(vt){return new Promise(((bt,le)=>{const ls=document.createElement("img");ls.onload=()=>{URL.revokeObjectURL(ls.src),bt(ls)},ls.onerror=le,ls.src=URL.createObjectURL(vt)}))}preloadPanorama(vt){return this.viewer.adapter.supportsPreload(vt)?this.viewer.adapter.loadTexture(vt,!1):Promise.reject(new qd("Current adapter does not support preload"))}dispatchProgress(vt){this.viewer.loader.setProgress(vt),this.viewer.dispatchEvent(new Dm(Math.round(vt)))}},fA=class extends iA{constructor(vt){super(vt),this.zoom=new Jd((vt=>{this.viewer.state.vFov=this.viewer.dataHelper.zoomLevelToFov(vt),this.viewer.state.hFov=this.viewer.dataHelper.vFovToHFov(this.viewer.state.vFov),this.viewer.dispatchEvent(new og(vt))}),{defaultValue:this.viewer.config.defaultZoomLvl,min:0,max:100,wrap:!1}),this.position=new $d((vt=>{this.viewer.dataHelper.sphericalCoordsToVector3(vt,this.viewer.state.direction),this.viewer.dispatchEvent(new Um(vt))}),{yaw:new Jd(null,{defaultValue:this.config.defaultYaw,min:0,max:2*Math.PI,wrap:!0}),pitch:new Jd(null,{defaultValue:this.config.defaultPitch,min:-Math.PI/2,max:Math.PI/2,wrap:!1})}),this.roll=new Jd((vt=>{this.viewer.state.roll=vt,this.viewer.dispatchEvent(new Gm(vt))}),{defaultValue:0,min:-Math.PI,max:Math.PI,wrap:!1}),this.updateSpeeds()}updateSpeeds(){this.zoom.setSpeed(50*this.config.zoomSpeed),this.position.setSpeed(ho.cj9.degToRad(50*this.config.moveSpeed)),this.roll.setSpeed(ho.cj9.degToRad(50*this.config.moveSpeed))}update(vt){this.zoom.update(vt),this.position.update(vt),this.roll.update(vt)}},gA=class{constructor(){this.ready=!1,this.needsUpdate=!1,this.continuousUpdateCount=0,this.keyboardEnabled=!1,this.direction=new ho.Pq0(0,0,_u),this.roll=0,this.vFov=60,this.hFov=60,this.aspect=1,this.animation=null,this.transitionAnimation=null,this.loadingPromise=null,this.idleTime=-1,this.objectsObservers={},this.size={width:0,height:0}}},AA=class extends rm{constructor(vt){var bt,le;if(super(),this.plugins={},this.children=[],this.parent=getElement(vt.container),!this.parent)throw new qd('"container" element not found.');this.parent[Md]=this,this.container=document.createElement("div"),this.container.classList.add("psv-container"),this.parent.appendChild(this.container),checkClosedShadowDom(this.parent),checkStylesheet(this.container,"core"),this.state=new gA,this.config=qg(vt),this.__setSize(this.config.size),this.overlay=new Jg(this);try{Ag.load()}catch(ls){return console.error(ls),void this.showError(this.config.lang.webglError)}Qg.init(),this.adapter=new this.config.adapter[0](this,this.config.adapter[1]),this.renderer=new dA(this),this.textureLoader=new mA(this),this.eventsHandler=new lA(this),this.dataHelper=new aA(this),this.dynamics=new fA(this),null==(bt=(le=this.adapter).init)||bt.call(le),this.loader=new Xg(this),this.navbar=new Yg(this),this.panel=new tA(this),this.notification=new Kg(this),this.autoSize(),this.setCursor(null),resolveBoolean(Ag.isTouchEnabled,(vt=>{toggleClass(this.container,"psv--is-touch",vt)})),this.config.plugins.forEach((vt=>{let[bt,le]=vt;this.plugins[bt.id]=new bt(this,le)}));for(const ho of Object.values(this.plugins))null==ho.init||ho.init();this.config.navbar&&this.navbar.setButtons(this.config.navbar),this.state.loadingPromise||(this.config.panorama?this.setPanorama(this.config.panorama,{sphereCorrection:this.config.sphereCorrection,panoData:this.config.panoData}):this.loader.show())}destroy(){var vt,bt,le,ls,ho,Dl;this.stopAll(),this.stopKeyboardControl(),this.exitFullscreen();for(const[Fl,sc]of Object.entries(this.plugins))sc.destroy(),delete this.plugins[Fl];this.children.slice().forEach((vt=>vt.destroy())),this.children.length=0,null==(vt=this.eventsHandler)||vt.destroy(),null==(bt=this.renderer)||bt.destroy(),null==(le=this.textureLoader)||le.destroy(),null==(ls=this.dataHelper)||ls.destroy(),null==(ho=this.adapter)||ho.destroy(),null==(Dl=this.dynamics)||Dl.destroy(),this.parent.removeChild(this.container),delete this.parent[Md]}init(){this.eventsHandler.init(),this.renderer.init(),this.config.navbar&&this.navbar.show(),"always"===this.config.keyboard&&this.startKeyboardControl(),this.resetIdleTimer(),this.state.ready=!0,this.dispatchEvent(new Hm)}resetIdleTimer(){this.state.idleTime=performance.now()}disableIdleTimer(){this.state.idleTime=-1}getPlugin(vt){if("string"===typeof vt)return this.plugins[vt];{const bt=pluginInterop(vt);return bt?this.plugins[bt.id]:null}}getPosition(){return this.dataHelper.cleanPosition(this.dynamics.position.current)}getZoomLevel(){return this.dynamics.zoom.current}getSize(){return(0,ls.A)({},this.state.size)}isFullscreenEnabled(){return isFullscreenEnabled(this.parent,Ag.isIphone)}needsUpdate(){this.state.needsUpdate=!0}needsContinuousUpdate(vt){vt?this.state.continuousUpdateCount++:this.state.continuousUpdateCount>0&&this.state.continuousUpdateCount--}autoSize(){this.container.clientWidth===this.state.size.width&&this.container.clientHeight===this.state.size.height||(this.state.size.width=Math.round(this.container.clientWidth),this.state.size.height=Math.round(this.container.clientHeight),this.state.aspect=this.state.size.width/this.state.size.height,this.state.hFov=this.dataHelper.vFovToHFov(this.state.vFov),this.dispatchEvent(new ng(this.getSize())),this.navbar.autoSize())}setPanorama(vt,bt){var le;void 0===bt&&(bt={}),this.textureLoader.abortLoading(),null==(le=this.state.transitionAnimation)||le.cancel();const ls=this.dataHelper.getTransitionOptions(bt);void 0===bt.showLoader&&(bt.showLoader=!0),void 0===bt.caption&&(bt.caption=this.config.caption),void 0===bt.description&&(bt.description=this.config.description),bt.panoData||"function"!==typeof this.config.panoData||(bt.panoData=this.config.panoData),this.hideError(),this.resetIdleTimer(),this.config.panorama=vt,this.config.caption=bt.caption,this.config.description=bt.description,this.config.sphereCorrection=bt.sphereCorrection,"function"===typeof this.config.panoData&&"function"!==typeof bt.panoData||(this.config.panoData=bt.panoData);const done=bt=>{if(isAbortError(bt))return!1;if(this.loader.hide(),this.state.loadingPromise=null,bt)throw this.navbar.setCaption(null),this.showError(this.config.lang.loadError),console.error(bt),this.dispatchEvent(new Fm(vt,bt)),bt;return this.navbar.setCaption(this.config.caption),!0};this.navbar.setCaption("<em>"+this.config.lang.loading+"</em>"),!bt.showLoader&&this.state.ready||this.loader.show(),this.dispatchEvent(new Pm(vt));const ho=this.adapter.loadTexture(this.config.panorama,!0,bt.panoData).then((vt=>{if(vt.panorama!==this.config.panorama)throw this.adapter.disposeTexture(vt),getAbortError();const le=this.dataHelper.cleanPanoramaOptions(bt,vt.panoData);return isNil(le.zoom)&&isNil(le.position)||this.stopAll(),{textureData:vt,cleanOptions:le}}));return ls&&this.state.ready&&this.adapter.supportsTransition(this.config.panorama)?this.state.loadingPromise=ho.then((vt=>{let{textureData:bt,cleanOptions:le}=vt;return this.loader.hide(),this.dispatchEvent(new Nm(bt)),this.state.transitionAnimation=this.renderer.transition(bt,le,ls),this.state.transitionAnimation})).then((vt=>{if(this.state.transitionAnimation=null,this.dispatchEvent(new Bm(vt)),!vt)throw getAbortError()})).then((()=>done()),(vt=>done(vt))):this.state.loadingPromise=ho.then((vt=>{let{textureData:le,cleanOptions:ls}=vt;this.renderer.show(),this.renderer.setTexture(le),this.renderer.setPanoramaPose(le.panoData),this.renderer.setSphereCorrection(bt.sphereCorrection),this.state.ready||this.init(),this.dispatchEvent(new Nm(le)),isNil(ls.zoom)||this.zoom(ls.zoom),isNil(ls.position)||this.rotate(ls.position)})).then((()=>done()),(vt=>done(vt))),this.state.loadingPromise}setOptions(vt){const bt=(0,ls.A)({},this.config,vt);for(let[le,ls]of Object.entries(vt))if(le in Ug)if(le in Vg)logWarn(Vg[le]);else switch(le in Gg&&(ls=Gg[le](ls,{rawConfig:bt,defValue:Ug[le]})),this.config[le]=ls,le){case"mousemove":this.state.cursorOverride||this.setCursor(null);break;case"caption":this.navbar.setCaption(this.config.caption);break;case"size":this.resize(this.config.size);break;case"sphereCorrection":this.renderer.setSphereCorrection(this.config.sphereCorrection);break;case"navbar":case"lang":this.navbar.setButtons(this.config.navbar);break;case"moveSpeed":case"zoomSpeed":this.dynamics.updateSpeeds();break;case"minFov":case"maxFov":this.dynamics.zoom.setValue(this.dataHelper.fovToZoomLevel(this.state.vFov)),this.dispatchEvent(new og(this.getZoomLevel()));break;case"keyboard":"always"===this.config.keyboard?this.startKeyboardControl():this.stopKeyboardControl()}else logWarn("Unknown option "+le);this.needsUpdate(),this.dispatchEvent(new fm(Object.keys(vt)))}setOption(vt,bt){this.setOptions({[vt]:bt})}showError(vt){this.overlay.show({id:Rd.ERROR,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="15 15 70 70"><path fill="currentColor" d="M50,16.2c-18.6,0-33.8,15.1-33.8,33.8S31.4,83.7,50,83.7S83.8,68.6,83.8,50S68.6,16.2,50,16.2z M50,80.2c-16.7,0-30.2-13.6-30.2-30.2S33.3,19.7,50,19.7S80.3,33.3,80.3,50S66.7,80.2,50,80.2z"/><rect fill="currentColor" x="48" y="31.7" width="4" height="28"/><rect fill="currentColor" x="48" y="63.2" width="4" height="5"/>\x3c!--Created by Shastry from the Noun Project--\x3e</svg>\n',title:vt,dismissible:!1})}hideError(){this.overlay.hide(Rd.ERROR)}rotate(vt){const bt=new hm(this.dataHelper.cleanPosition(vt));this.dispatchEvent(bt),bt.defaultPrevented||this.dynamics.position.setValue(bt.position)}zoom(vt){this.dynamics.zoom.setValue(vt)}zoomIn(vt){void 0===vt&&(vt=1),this.dynamics.zoom.step(vt)}zoomOut(vt){void 0===vt&&(vt=1),this.dynamics.zoom.step(-vt)}animate(vt){const bt=isExtendedPosition(vt),le=!isNil(vt.zoom),ls=new om(bt?this.dataHelper.cleanPosition(vt):void 0,vt.zoom);if(this.dispatchEvent(ls),ls.defaultPrevented)return;this.stopAll();const{duration:ho,properties:Dl}=this.dataHelper.getAnimationProperties(vt.speed,ls.position,ls.zoomLevel);return ho?(this.state.animation=new Kd({properties:Dl,duration:ho,easing:vt.easing||"inOutSine",onTick:vt=>{bt&&this.dynamics.position.setValue({yaw:vt.yaw,pitch:vt.pitch}),le&&this.dynamics.zoom.setValue(vt.zoom)}}),this.state.animation.then((()=>{this.state.animation=null,this.resetIdleTimer()})),this.state.animation):(bt&&this.rotate(ls.position),le&&this.zoom(ls.zoomLevel),new Kd(null))}stopAnimation(){return this.state.animation?(this.state.animation.cancel(),this.state.animation):Promise.resolve()}resize(vt){this.__setSize(vt),this.autoSize()}__setSize(vt){["width","height"].forEach((bt=>{null!=vt&&vt[bt]&&(/^[0-9.]+$/.test(vt[bt])&&(vt[bt]+="px"),this.parent.style[bt]=vt[bt])}))}enterFullscreen(){this.isFullscreenEnabled()||requestFullscreen(this.parent,Ag.isIphone)}exitFullscreen(){this.isFullscreenEnabled()&&exitFullscreen(Ag.isIphone)}toggleFullscreen(){this.isFullscreenEnabled()?this.exitFullscreen():this.enterFullscreen()}startKeyboardControl(){this.state.keyboardEnabled=!0}stopKeyboardControl(){this.state.keyboardEnabled=!1}createTooltip(vt){return new eA(this,vt)}setCursor(vt){this.state.cursorOverride=vt,this.container.style.cursor=vt||(this.config.mousemove?"move":"default")}observeObjects(vt){this.state.objectsObservers[vt]||(this.state.objectsObservers[vt]=null)}unobserveObjects(vt){delete this.state.objectsObservers[vt]}stopAll(){return this.dispatchEvent(new ag),this.disableIdleTimer(),this.stopAnimation()}}},3890:(vt,bt,le)=>{"use strict";le.d(bt,{D:()=>Ec});var ls=le(8168),ho=le(1545),Dl=le(9435),Fl=class{constructor(vt,bt,le){this.id=vt,this.priority=bt,this.fn=le,this.status=1}start(){return this.status=2,this.fn(this).then((()=>{this.status=4}),(()=>{this.status=5}))}cancel(){this.status=3}isCancelled(){return 3===this.status}},sc=class{constructor(vt){void 0===vt&&(vt=8),this.concurency=vt,this.runningTasks={},this.tasks={}}enqueue(vt){this.tasks[vt.id]=vt}clear(){Object.values(this.tasks).forEach((vt=>vt.cancel())),this.tasks={},this.runningTasks={}}setPriority(vt,bt){const le=this.tasks[vt];le&&(le.priority=bt,0===le.status&&(le.status=1))}disableAllTasks(){Object.values(this.tasks).forEach((vt=>{vt.status=0}))}start(){if(Object.keys(this.runningTasks).length>=this.concurency)return;const vt=Object.values(this.tasks).filter((vt=>1===vt.status)).sort(((vt,bt)=>bt.priority-vt.priority)).pop();vt&&(this.runningTasks[vt.id]=!0,vt.start().then((()=>{vt.isCancelled()||(delete this.tasks[vt.id],delete this.runningTasks[vt.id],this.start())})),this.start())}};var uc=["dodgerblue","limegreen","indianred"];function isMultiTiles(vt){return!!vt.levels}function computeTileConfig(vt,bt,le){return(0,ls.A)({},vt,{level:bt,colSize:vt.width/vt.cols,rowSize:vt.width/2/vt.rows,facesByCol:le.SPHERE_SEGMENTS/vt.cols,facesByRow:le.SPHERE_HORIZONTAL_SEGMENTS/vt.rows})}function getTileConfig(vt,bt,le,ho,Dl){let Fl,sc;return isMultiTiles(vt)?(ho?(sc=vt.levels.findIndex((vt=>{const ls=vt.width/360*bt,Dl=vt.width/2/180*le;return ls>=ho.width&&Dl>=ho.height})),-1===sc&&(sc=vt.levels.length-1)):sc=0,Fl=vt.levels[sc]):(sc=0,Fl=(0,ls.A)({},vt)),computeTileConfig(Fl,sc,Dl)}function getTileConfigByIndex(vt,bt,le){return isMultiTiles(vt)&&vt.levels[bt]?computeTileConfig(vt.levels[bt],bt,le):null}function checkTile(vt,bt){if(!vt.width||!vt.cols||!vt.rows)throw new ho.e6("Invalid panorama configuration, are you using the right adapter?");if(vt.cols>bt.SPHERE_SEGMENTS)throw new ho.e6("Panorama cols must not be greater than "+bt.SPHERE_SEGMENTS+".");if(vt.rows>bt.SPHERE_HORIZONTAL_SEGMENTS)throw new ho.e6("Panorama rows must not be greater than "+bt.SPHERE_HORIZONTAL_SEGMENTS+".");if(!Dl.cj9.isPowerOfTwo(vt.cols)||!Dl.cj9.isPowerOfTwo(vt.rows))throw new ho.e6("Panorama cols and rows must be powers of 2.")}function getCacheKey(vt,bt){for(let le=0;le<bt.cols;le++){const ls=vt.tileUrl(le,bt.rows/2,bt.level);if(ls)return ls}return vt.tileUrl.toString()}function tileId(vt){return vt.col+"x"+vt.row+"/"+vt.config.level}function meshes(vt){return vt.children}var mc=ho.Wp.getConfigParser({resolution:64,showErrorTile:!0,baseBlur:!0,antialias:!0,debug:!1,useXmpData:!1}),gc=new Dl.Pq0,Ac=class _EquirectangularTilesAdapter extends ho.Qw{constructor(vt,bt){super(vt),this.state={tileConfig:null,tiles:{},faces:{},geom:null,materials:[],errorMaterial:null,inTransition:!1},this.queue=new sc,this.config=mc(bt),this.adapter=new ho.GR(this.viewer,{resolution:this.config.resolution,blur:this.config.baseBlur}),this.SPHERE_SEGMENTS=this.config.resolution,this.SPHERE_HORIZONTAL_SEGMENTS=this.SPHERE_SEGMENTS/2,this.NB_VERTICES=2*this.SPHERE_SEGMENTS*3+(this.SPHERE_HORIZONTAL_SEGMENTS-2)*this.SPHERE_SEGMENTS*6,this.NB_GROUPS=this.SPHERE_SEGMENTS*this.SPHERE_HORIZONTAL_SEGMENTS,this.viewer.config.requestHeaders&&ho.Wp.logWarn('EquirectangularTilesAdapter fallbacks to file loader because "requestHeaders" where provided. Consider removing "requestHeaders" if you experience performances issues.')}static withConfig(vt){return[_EquirectangularTilesAdapter,vt]}init(){super.init(),this.viewer.addEventListener(ho.AZ.TransitionDoneEvent.type,this),this.viewer.addEventListener(ho.AZ.PositionUpdatedEvent.type,this),this.viewer.addEventListener(ho.AZ.ZoomUpdatedEvent.type,this)}destroy(){var vt,bt,le;this.viewer.removeEventListener(ho.AZ.TransitionDoneEvent.type,this),this.viewer.removeEventListener(ho.AZ.PositionUpdatedEvent.type,this),this.viewer.removeEventListener(ho.AZ.ZoomUpdatedEvent.type,this),this.__cleanup(),null==(vt=this.state.errorMaterial)||null==(bt=vt.map)||bt.dispose(),null==(le=this.state.errorMaterial)||le.dispose(),this.adapter.destroy(),delete this.adapter,delete this.state.geom,delete this.state.errorMaterial,super.destroy()}handleEvent(vt){switch(vt.type){case ho.AZ.PositionUpdatedEvent.type:case ho.AZ.ZoomUpdatedEvent.type:this.__refresh();break;case ho.AZ.TransitionDoneEvent.type:this.state.inTransition=!1,vt.completed&&this.__switchMesh(this.viewer.renderer.mesh)}}supportsTransition(vt){return!!vt.baseUrl}supportsPreload(vt){return!!vt.baseUrl}textureCoordsToSphericalCoords(vt,bt){return this.adapter.textureCoordsToSphericalCoords(vt,bt)}sphericalCoordsToTextureCoords(vt,bt){return this.adapter.sphericalCoordsToTextureCoords(vt,bt)}async loadTexture(vt,bt){void 0===bt&&(bt=!0),function(vt,bt){if("object"!==typeof vt||!vt.tileUrl)throw new ho.e6("Invalid panorama configuration, are you using the right adapter?");isMultiTiles(vt)?(vt.levels.forEach((vt=>{checkTile(vt,bt),"zoomRange"in vt&&ho.Wp.logWarn('EquirectangularTilesAdapter: "zoomRange" property is deprecated and must be removed')})),vt.levels.sort(((vt,bt)=>vt.width-bt.width))):checkTile(vt,bt)}(vt,this);const le=getTileConfig(vt,0,0,null,this),Dl={isEquirectangular:!0,fullWidth:le.width,fullHeight:le.width/2,croppedWidth:le.width,croppedHeight:le.width/2,croppedX:0,croppedY:0,poseHeading:0,posePitch:0,poseRoll:0};if(vt.baseUrl){const le=await this.adapter.loadTexture(vt.baseUrl,bt,vt.basePanoData,!0);return{panorama:vt,panoData:(0,ls.A)({},Dl,{baseData:le.panoData}),cacheKey:le.cacheKey,texture:le.texture}}return{panorama:vt,panoData:(0,ls.A)({},Dl,{baseData:null}),cacheKey:getCacheKey(vt,le),texture:null}}createMesh(vt){var bt;const le=this.adapter.createMesh(null!=(bt=vt.baseData)?bt:vt),ls=new Dl.Gu$(ho.aH.SPHERE_RADIUS,this.SPHERE_SEGMENTS,this.SPHERE_HORIZONTAL_SEGMENTS,-Math.PI/2).scale(-1,1,1).toNonIndexed();ls.clearGroups();let Fl=0,sc=0;for(;Fl<3*this.SPHERE_SEGMENTS;Fl+=3)ls.addGroup(Fl,3,sc++);for(;Fl<this.NB_VERTICES-3*this.SPHERE_SEGMENTS;Fl+=6)ls.addGroup(Fl,6,sc++);for(;Fl<this.NB_VERTICES;Fl+=3)ls.addGroup(Fl,3,sc++);const uc=[],mc=new Dl.V9B({opacity:0,transparent:!0,depthTest:!1,depthWrite:!1});for(let ho=0;ho<this.NB_GROUPS;ho++)uc.push(mc);const gc=new Dl.eaF(ls,uc);gc.renderOrder=1;const Ac=new Dl.YJl;return Ac.add(le),Ac.add(gc),Ac}setTexture(vt,bt,le){const[ls]=meshes(vt);bt.texture?this.adapter.setTexture(ls,{panorama:bt.panorama.baseUrl,texture:bt.texture,panoData:bt.panoData.baseData}):ls.visible=!1,le?this.state.inTransition=!0:this.__switchMesh(vt)}setTextureOpacity(vt,bt){const[le]=meshes(vt);this.adapter.setTextureOpacity(le,bt)}disposeTexture(vt){let{texture:bt}=vt;null==bt||bt.dispose()}disposeMesh(vt){const[bt,le]=meshes(vt);bt.geometry.dispose(),bt.material.dispose(),le.geometry.dispose(),le.material.forEach((vt=>{var bt;null==(bt=vt.map)||bt.dispose(),vt.dispose()}))}__refresh(){if(!this.state.geom||this.state.inTransition)return;const vt=this.viewer.config.panorama,bt=getTileConfig(vt,this.viewer.state.hFov,this.viewer.state.vFov,this.viewer.state.size,this),le=this.state.geom.getAttribute("position"),ls={};for(let ho=0;ho<this.NB_VERTICES;ho+=1)if(gc.fromBufferAttribute(le,ho),gc.applyEuler(this.viewer.renderer.sphereCorrection),this.viewer.renderer.isObjectVisible(gc)){let le;le=ho<3*this.SPHERE_SEGMENTS?Math.floor(ho/3):ho<this.NB_VERTICES-3*this.SPHERE_SEGMENTS?Math.floor((ho/3-this.SPHERE_SEGMENTS)/2)+this.SPHERE_SEGMENTS:Math.floor((ho-this.NB_VERTICES-3*this.SPHERE_SEGMENTS)/3)+this.SPHERE_HORIZONTAL_SEGMENTS*(this.SPHERE_SEGMENTS-1);const Dl=Math.floor(le/this.SPHERE_SEGMENTS),Fl=le-Dl*this.SPHERE_SEGMENTS;let sc=bt;for(;sc;){const bt=Math.floor(Dl/sc.facesByRow),le=Math.floor(Fl/sc.facesByCol);let ho=gc.angleTo(this.viewer.state.direction);0!==bt&&bt!==sc.rows-1||(ho*=2);const uc={row:bt,col:le,angle:ho,config:sc,url:null},mc=tileId(uc);if(ls[mc]){ls[mc].angle=Math.min(ls[mc].angle,ho);break}if(uc.url=vt.tileUrl(le,bt,sc.level),uc.url){ls[mc]=uc;break}sc=getTileConfigByIndex(vt,sc.level-1,this)}}this.state.tileConfig=bt,this.__loadTiles(Object.values(ls))}__loadTiles(vt){this.queue.disableAllTasks(),vt.forEach((vt=>{const bt=tileId(vt);this.state.tiles[bt]?this.queue.setPriority(bt,vt.angle):(this.state.tiles[bt]=!0,this.queue.enqueue(new Fl(bt,vt.angle,(bt=>this.__loadTile(vt,bt)))))})),this.queue.start()}__loadTile(vt,bt){return this.viewer.textureLoader.loadImage(vt.url,null,this.viewer.state.textureData.cacheKey).then((le=>{if(!bt.isCancelled()){this.config.debug&&(le=function(vt,bt,le){const ls=document.createElement("canvas");ls.width=vt.width,ls.height=vt.height;const ho=ls.getContext("2d");ho.fillStyle=uc[bt%uc.length],ho.fillRect(0,0,ls.width,ls.height),ho.globalCompositeOperation="multiply",ho.drawImage(vt,0,0);const Dl=vt.width/7;return ho.globalCompositeOperation="source-over",ho.fillStyle="white",ho.font=Dl+"px monospace",ho.textAlign="center",le.split("\n").forEach(((bt,le)=>{ho.fillText(bt,vt.width/2,vt.height/2+Dl*(.3+le))})),ls}(le,vt.config.level,tileId(vt)));const bt=this.config.antialias&&vt.config.level>0,ls=new Dl.V9B({map:ho.Wp.createTexture(le,bt)});this.__swapMaterial(vt,ls,!1),this.viewer.needsUpdate()}})).catch((le=>{ho.Wp.isAbortError(le)||bt.isCancelled()||!this.config.showErrorTile||(this.state.errorMaterial||(this.state.errorMaterial=function(){const vt=new OffscreenCanvas(512,512),bt=vt.getContext("2d");return bt.fillStyle="#333",bt.fillRect(0,0,vt.width,vt.height),bt.font=vt.width/5+"px serif",bt.fillStyle="#a22",bt.textAlign="center",bt.textBaseline="middle",bt.fillText("\u26a0",vt.width/2,vt.height/2),new Dl.V9B({map:ho.Wp.createTexture(vt)})}()),this.__swapMaterial(vt,this.state.errorMaterial,!0),this.viewer.needsUpdate())}))}__swapMaterial(vt,bt,le){const ls=this.state.geom.getAttribute("uv");for(let ho=0;ho<vt.config.facesByCol;ho++)for(let Dl=0;Dl<vt.config.facesByRow;Dl++){const Fl=vt.col*vt.config.facesByCol+ho,sc=vt.row*vt.config.facesByRow+Dl,uc=0===sc,mc=sc===this.SPHERE_HORIZONTAL_SEGMENTS-1;let gc;if(gc=uc?3*Fl:mc?this.NB_VERTICES-3*this.SPHERE_SEGMENTS+3*Fl:3*this.SPHERE_SEGMENTS+(sc-1)*this.SPHERE_SEGMENTS*6+6*Fl,le&&this.state.faces[gc]>-1)continue;if(this.state.faces[gc]>vt.config.level)continue;this.state.faces[gc]=le?-1:vt.config.level;const Ac=this.state.geom.groups.find((vt=>vt.start===gc)).materialIndex;this.state.materials[Ac]=bt;const Ec=1-Dl/vt.config.facesByRow,kc=1-(Dl+1)/vt.config.facesByRow,du=ho/vt.config.facesByCol,_u=(ho+1)/vt.config.facesByCol;uc?(ls.setXY(gc,(du+_u)/2,Ec),ls.setXY(gc+1,du,kc),ls.setXY(gc+2,_u,kc)):mc?(ls.setXY(gc,_u,Ec),ls.setXY(gc+1,du,Ec),ls.setXY(gc+2,(du+_u)/2,kc)):(ls.setXY(gc,_u,Ec),ls.setXY(gc+1,du,Ec),ls.setXY(gc+2,_u,kc),ls.setXY(gc+3,du,Ec),ls.setXY(gc+4,du,kc),ls.setXY(gc+5,_u,kc))}ls.needsUpdate=!0}__switchMesh(vt){const[,bt]=meshes(vt);if(this.__cleanup(),this.state.materials=bt.material,this.state.geom=bt.geometry,this.config.debug){const vt=function(vt){const bt=new Dl.XJ7(vt),le=new Dl.DXC(bt);return le.material.depthTest=!1,le.material.depthWrite=!1,le.material.opacity=.25,le.material.transparent=!0,le}(this.state.geom);this.viewer.renderer.addObject(vt),this.viewer.renderer.setSphereCorrection(this.viewer.config.sphereCorrection,vt)}setTimeout((()=>this.__refresh()))}__cleanup(){this.queue.clear(),this.state.tiles={},this.state.faces={},this.state.materials=[],this.state.inTransition=!1}};Ac.id="equirectangular-tiles",Ac.VERSION="5.14.1",Ac.supportsDownload=!1;var Ec=Ac},4991:(vt,bt,le)=>{"use strict";le.d(bt,{b:()=>Im});var ls=le(8168),ho=le(1545),Dl=le(9435),Fl=Object.defineProperty;((vt,bt)=>{for(var le in bt)Fl(vt,le,{get:bt[le],enumerable:!0})})({},{EnterMarkerEvent:()=>_u,GotoMarkerDoneEvent:()=>Ac,HideMarkersEvent:()=>Gd,LeaveMarkerEvent:()=>kc,MarkerVisibilityEvent:()=>mc,MarkersPluginEvent:()=>sc,RenderMarkersListEvent:()=>Qd,SelectMarkerEvent:()=>Ld,SelectMarkerListEvent:()=>Rd,SetMarkersEvent:()=>Hd,ShowMarkersEvent:()=>Zd,UnselectMarkerEvent:()=>jd});var sc=class extends ho.rx{},uc=class _MarkerVisibilityEvent extends sc{constructor(vt,bt){super(_MarkerVisibilityEvent.type),this.marker=vt,this.visible=bt}};uc.type="marker-visibility";var mc=uc,gc=class _GotoMarkerDoneEvent extends sc{constructor(vt){super(_GotoMarkerDoneEvent.type),this.marker=vt}};gc.type="goto-marker-done";var Ac=gc,Ec=class _LeaveMarkerEvent extends sc{constructor(vt){super(_LeaveMarkerEvent.type),this.marker=vt}};Ec.type="leave-marker";var kc=Ec,du=class _EnterMarkerEvent extends sc{constructor(vt){super(_EnterMarkerEvent.type),this.marker=vt}};du.type="enter-marker";var _u=du,Md=class _SelectMarkerEvent extends sc{constructor(vt,bt,le){super(_SelectMarkerEvent.type),this.marker=vt,this.doubleClick=bt,this.rightClick=le}};Md.type="select-marker";var Ld=Md,Nd=class _SelectMarkerListEvent extends sc{constructor(vt){super(_SelectMarkerListEvent.type),this.marker=vt}};Nd.type="select-marker-list";var Rd=Nd,Od=class _UnselectMarkerEvent extends sc{constructor(vt){super(_UnselectMarkerEvent.type),this.marker=vt}};Od.type="unselect-marker";var jd=Od,Ud=class _HideMarkersEvent extends sc{constructor(){super(_HideMarkersEvent.type)}};Ud.type="hide-markers";var Gd=Ud,qd=class _SetMarkersEvent extends sc{constructor(vt){super(_SetMarkersEvent.type),this.markers=vt}};qd.type="set-markers";var Hd=qd,Wd=class _ShowMarkersEvent extends sc{constructor(){super(_ShowMarkersEvent.type)}};Wd.type="show-markers";var Zd=Wd,Yd=class _RenderMarkersListEvent extends sc{constructor(vt){super(_RenderMarkersListEvent.type),this.markers=vt}};Yd.type="render-markers-list";var Qd=Yd,Xd=class extends ho.Np{constructor(vt){super(vt,{className:"psv-markers-button",icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="10 9 81 81"><path fill="currentColor" d="M50.5 90S22.9 51.9 22.9 36.6 35.2 9 50.5 9s27.6 12.4 27.6 27.6S50.5 90 50.5 90zm0-66.3c-6.1 0-11 4.9-11 11s4.9 11 11 11 11-4.9 11-11-4.9-11-11-11z"/>\x3c!--Created by Rohith M S from the Noun Project--\x3e</svg>\n',hoverScale:!0,collapsable:!0,tabbable:!0}),this.plugin=this.viewer.getPlugin("markers"),this.plugin&&(this.plugin.addEventListener(Zd.type,this),this.plugin.addEventListener(Gd.type,this),this.toggleActive(!0))}destroy(){this.plugin&&(this.plugin.removeEventListener(Zd.type,this),this.plugin.removeEventListener(Gd.type,this)),super.destroy()}isSupported(){return!!this.plugin}handleEvent(vt){vt instanceof Zd?this.toggleActive(!0):vt instanceof Gd&&this.toggleActive(!1)}onClick(){this.plugin.toggleAllMarkers()}};Xd.id="markers";var Kd='<svg xmlns="http://www.w3.org/2000/svg" viewBox="9 9 81 81"><path fill="currentColor" d="M37.5 90S9.9 51.9 9.9 36.6 22.2 9 37.5 9s27.6 12.4 27.6 27.6S37.5 90 37.5 90zm0-66.3c-6.1 0-11 4.9-11 11s4.9 11 11 11 11-4.9 11-11-4.9-11-11-11zM86.7 55H70c-1.8 0-3.3-1.5-3.3-3.3s1.5-3.3 3.3-3.3h16.7c1.8 0 3.3 1.5 3.3 3.3S88.5 55 86.7 55zm0-25h-15a3.3 3.3 0 0 1-3.3-3.3c0-1.8 1.5-3.3 3.3-3.3h15c1.8 0 3.3 1.5 3.3 3.3 0 1.8-1.5 3.3-3.3 3.3zM56.5 73h30c1.8 0 3.3 1.5 3.3 3.3 0 1.8-1.5 3.3-3.3 3.3h-30a3.3 3.3 0 0 1-3.3-3.3 3.2 3.2 0 0 1 3.3-3.3z"/>\x3c!--Created by Rohith M S from the Noun Project--\x3e</svg>\n',Jd="http://www.w3.org/2000/svg",$d="psvMarker",sp=ho.Wp.dasherize($d),tm="marker",em="markersList",im={amount:2,duration:100,easing:"linear"},MARKERS_LIST_TEMPLATE=(vt,bt)=>'\n<div class="psv-panel-menu psv-panel-menu--stripped">\n <h1 class="psv-panel-menu-title">'+Kd+" "+bt+'</h1>\n <ul class="psv-panel-menu-list">\n '+vt.map((vt=>"\n <li data-"+sp+'="'+vt.id+'" class="psv-panel-menu-item" tabindex="0">\n '+("image"===vt.type?'<span class="psv-panel-menu-item-icon"><img src="'+vt.definition+'"/></span>':"")+'\n <span class="psv-panel-menu-item-label">'+vt.getListContent()+"</span>\n </li>\n ")).join("")+"\n </ul>\n</div>\n",nm=class extends ho.Np{constructor(vt){super(vt,{className:" psv-markers-list-button",icon:Kd,hoverScale:!0,collapsable:!0,tabbable:!0}),this.plugin=this.viewer.getPlugin("markers"),this.plugin&&(this.viewer.addEventListener(ho.AZ.ShowPanelEvent.type,this),this.viewer.addEventListener(ho.AZ.HidePanelEvent.type,this))}destroy(){this.viewer.removeEventListener(ho.AZ.ShowPanelEvent.type,this),this.viewer.removeEventListener(ho.AZ.HidePanelEvent.type,this),super.destroy()}isSupported(){return!!this.plugin}handleEvent(vt){vt instanceof ho.AZ.ShowPanelEvent?this.toggleActive(vt.panelId===em):vt instanceof ho.AZ.HidePanelEvent&&this.toggleActive(!1)}onClick(){this.plugin.toggleMarkersList()}};nm.id="markersList";var rm=new Dl.Pq0,am=new Dl.PTz,sm=new Dl.Pq0,om=class extends Dl.B69{constructor(vt){void 0===vt&&(vt=document.createElement("div")),super(),this.isCSS3DObject=!0,this.element=vt,this.element.style.position="absolute",this.element.style.pointerEvents="auto",this.element.style.userSelect="none",this.element.setAttribute("draggable",!1),this.addEventListener("removed",(function(){this.traverse((function(vt){vt.element instanceof vt.element.ownerDocument.defaultView.Element&&null!==vt.element.parentNode&&vt.element.remove()}))}))}copy(vt,bt){return super.copy(vt,bt),this.element=vt.element.cloneNode(!0),this}},lm=new Dl.kn4,cm=new Dl.kn4,um=class{constructor(vt){void 0===vt&&(vt={});const bt=this;let le,ls,ho,Dl;const Fl={camera:{style:""},objects:new WeakMap},sc=void 0!==vt.element?vt.element:document.createElement("div");sc.style.overflow="hidden",this.domElement=sc;const uc=document.createElement("div");uc.style.transformOrigin="0 0",uc.style.pointerEvents="none",sc.appendChild(uc);const mc=document.createElement("div");function epsilon(vt){return Math.abs(vt)<1e-10?0:vt}function getCameraCSSMatrix(vt){const bt=vt.elements;return"matrix3d("+epsilon(bt[0])+","+epsilon(-bt[1])+","+epsilon(bt[2])+","+epsilon(bt[3])+","+epsilon(bt[4])+","+epsilon(-bt[5])+","+epsilon(bt[6])+","+epsilon(bt[7])+","+epsilon(bt[8])+","+epsilon(-bt[9])+","+epsilon(bt[10])+","+epsilon(bt[11])+","+epsilon(bt[12])+","+epsilon(-bt[13])+","+epsilon(bt[14])+","+epsilon(bt[15])+")"}function getObjectCSSMatrix(vt){const bt=vt.elements;return"translate(-50%,-50%)"+("matrix3d("+epsilon(bt[0])+","+epsilon(bt[1])+","+epsilon(bt[2])+","+epsilon(bt[3])+","+epsilon(-bt[4])+","+epsilon(-bt[5])+","+epsilon(-bt[6])+","+epsilon(-bt[7])+","+epsilon(bt[8])+","+epsilon(bt[9])+","+epsilon(bt[10])+","+epsilon(bt[11])+","+epsilon(bt[12])+","+epsilon(bt[13])+","+epsilon(bt[14])+","+epsilon(bt[15])+")")}function hideObject(vt){vt.isCSS3DObject&&(vt.element.style.display="none");for(let bt=0,le=vt.children.length;bt<le;bt++)hideObject(vt.children[bt])}function renderObject(vt,le,ls,ho){if(!1!==vt.visible){if(vt.isCSS3DObject){const ho=!0===vt.layers.test(ls.layers),Dl=vt.element;if(Dl.style.display=!0===ho?"":"none",!0===ho){let ho;vt.onBeforeRender(bt,le,ls),vt.isCSS3DSprite?(lm.copy(ls.matrixWorldInverse),lm.transpose(),0!==vt.rotation2D&&lm.multiply(cm.makeRotationZ(vt.rotation2D)),vt.matrixWorld.decompose(rm,am,sm),lm.setPosition(rm),lm.scale(sm),lm.elements[3]=0,lm.elements[7]=0,lm.elements[11]=0,lm.elements[15]=1,ho=getObjectCSSMatrix(lm)):ho=getObjectCSSMatrix(vt.matrixWorld);const sc=Fl.objects.get(vt);if(void 0===sc||sc.style!==ho){Dl.style.transform=ho;const bt={style:ho};Fl.objects.set(vt,bt)}Dl.parentNode!==mc&&mc.appendChild(Dl),vt.onAfterRender(bt,le,ls)}}for(let bt=0,Dl=vt.children.length;bt<Dl;bt++)renderObject(vt.children[bt],le,ls,ho)}else hideObject(vt)}mc.style.transformStyle="preserve-3d",uc.appendChild(mc),this.getSize=function(){return{width:le,height:ls}},this.render=function(vt,bt){const sc=bt.projectionMatrix.elements[5]*Dl;let gc,Ac;bt.view&&bt.view.enabled?(uc.style.transform="translate( "+-bt.view.offsetX*(le/bt.view.width)+"px, "+-bt.view.offsetY*(ls/bt.view.height)+"px )",uc.style.transform+="scale( "+bt.view.fullWidth/bt.view.width+", "+bt.view.fullHeight/bt.view.height+" )"):uc.style.transform="",!0===vt.matrixWorldAutoUpdate&&vt.updateMatrixWorld(),null===bt.parent&&!0===bt.matrixWorldAutoUpdate&&bt.updateMatrixWorld(),bt.isOrthographicCamera&&(gc=-(bt.right+bt.left)/2,Ac=(bt.top+bt.bottom)/2);const Ec=bt.view&&bt.view.enabled?bt.view.height/bt.view.fullHeight:1,kc=bt.isOrthographicCamera?"scale( "+Ec+" )scale("+sc+")translate("+epsilon(gc)+"px,"+epsilon(Ac)+"px)"+getCameraCSSMatrix(bt.matrixWorldInverse):"scale( "+Ec+" )translateZ("+sc+"px)"+getCameraCSSMatrix(bt.matrixWorldInverse),du=(bt.isPerspectiveCamera?"perspective("+sc+"px) ":"")+kc+"translate("+ho+"px,"+Dl+"px)";Fl.camera.style!==du&&(mc.style.transform=du,Fl.camera.style=du),renderObject(vt,vt,bt,kc)},this.setSize=function(vt,bt){le=vt,ls=bt,ho=le/2,Dl=ls/2,sc.style.width=vt+"px",sc.style.height=bt+"px",uc.style.width=vt+"px",uc.style.height=bt+"px",mc.style.width=vt+"px",mc.style.height=bt+"px"}}},hm=class{constructor(vt){this.viewer=vt,this.element=document.createElement("div"),this.element.className="psv-markers-css3d-container",this.renderer=new um({element:this.element}),this.scene=new Dl.Z58,this.intersectionObserver=new IntersectionObserver((vt=>{vt.forEach((vt=>{const bt=vt.target[$d];bt.config.visible&&(bt.viewportIntersection=vt.isIntersecting)}))}),{root:this.element}),vt.addEventListener(ho.AZ.ReadyEvent.type,this,{once:!0}),vt.addEventListener(ho.AZ.SizeUpdatedEvent.type,this),vt.addEventListener(ho.AZ.RenderEvent.type,this)}handleEvent(vt){switch(vt.type){case ho.AZ.ReadyEvent.type:case ho.AZ.SizeUpdatedEvent.type:this.updateSize();break;case ho.AZ.RenderEvent.type:this.render()}}destroy(){this.viewer.removeEventListener(ho.AZ.ReadyEvent.type,this),this.viewer.removeEventListener(ho.AZ.SizeUpdatedEvent.type,this),this.viewer.removeEventListener(ho.AZ.RenderEvent.type,this),this.intersectionObserver.disconnect()}updateSize(){const vt=this.viewer.getSize();this.renderer.setSize(vt.width,vt.height)}render(){this.renderer.render(this.scene,this.viewer.renderer.camera)}addObject(vt){this.scene.add(vt.threeElement),this.intersectionObserver.observe(vt.domElement)}removeObject(vt){this.scene.remove(vt.threeElement),this.intersectionObserver.unobserve(vt.domElement)}},dm=(vt=>(vt.image="image",vt.html="html",vt.element="element",vt.imageLayer="imageLayer",vt.videoLayer="videoLayer",vt.elementLayer="elementLayer",vt.polygon="polygon",vt.polygonPixels="polygonPixels",vt.polyline="polyline",vt.polylinePixels="polylinePixels",vt.square="square",vt.rect="rect",vt.circle="circle",vt.ellipse="ellipse",vt.path="path",vt))(dm||{});function getMarkerType(vt,bt){void 0===bt&&(bt=!1);const le=[];if(Object.keys(dm).forEach((bt=>{vt[bt]&&le.push(bt)})),0===le.length&&!bt)throw new ho.e6("missing marker content, either "+Object.keys(dm).join(", "));if(le.length>1)throw new ho.e6("multiple marker content, either "+Object.keys(dm).join(", "));return le[0]}var pm=class{constructor(vt,bt,le){if(this.viewer=vt,this.plugin=bt,this.state={anchor:null,visible:!1,staticTooltip:!1,position:null,position2D:null,positions3D:null,size:null},!le.id)throw new ho.e6("missing marker id");this.type=getMarkerType(le),this.createElement(),this.update(le)}get id(){return this.config.id}get data(){return this.config.data}get domElement(){return null}get threeElement(){return null}get video(){return null}destroy(){delete this.viewer,delete this.plugin,delete this.element,this.hideTooltip()}is3d(){return!1}isNormal(){return!1}isPoly(){return!1}isSvg(){return!1}isCss3d(){return!1}update(vt){const bt=getMarkerType(vt,!0);if(void 0!==bt&&bt!==this.type)throw new ho.e6("cannot change marker "+vt.id+" type");if(this.config=ho.Wp.deepmerge(this.config,vt),"string"===typeof this.config.tooltip&&(this.config.tooltip={content:this.config.tooltip}),this.config.tooltip&&!this.config.tooltip.trigger&&(this.config.tooltip.trigger="hover"),ho.Wp.isNil(this.config.visible)&&(this.config.visible=!0),ho.Wp.isNil(this.config.zIndex)&&(this.config.zIndex=1),ho.Wp.isNil(this.config.opacity)&&(this.config.opacity=1),this.config.rotation){const vt=this.config.rotation;this.config.rotation="object"===typeof vt?{yaw:vt.yaw?ho.Wp.parseAngle(vt.yaw,!0,!1):0,pitch:vt.pitch?ho.Wp.parseAngle(vt.pitch,!0,!1):0,roll:vt.roll?ho.Wp.parseAngle(vt.roll,!0,!1):0}:{yaw:0,pitch:0,roll:ho.Wp.parseAngle(vt,!0,!1)}}else this.config.rotation={yaw:0,pitch:0,roll:0};this.state.anchor=ho.Wp.parsePoint(this.config.anchor)}getListContent(){var vt;return this.config.listContent?this.config.listContent:null!=(vt=this.config.tooltip)&&vt.content?this.config.tooltip.content:this.config.html?this.config.html:this.id}showTooltip(vt,bt,le){var Dl;if(void 0===le&&(le=!1),this.state.visible&&null!=(Dl=this.config.tooltip)&&Dl.content&&this.state.position2D){const Dl=(0,ls.A)({},this.config.tooltip,{style:{pointerEvents:this.state.staticTooltip?"auto":"none"},data:this,top:0,left:0});if(this.isPoly()||this.is3d()||this.isCss3d())if(vt||bt){const le=ho.Wp.getPosition(this.viewer.container);Dl.top=bt-le.y+10,Dl.left=vt-le.x,Dl.box={width:20,height:20}}else Dl.top=this.state.position2D.y,Dl.left=this.state.position2D.x;else{const vt=this.viewer.dataHelper.vector3ToViewerCoords(this.state.positions3D[0]);let bt=this.state.size.width,le=this.state.size.height;this.config.hoverScale&&!this.state.staticTooltip&&(bt*=this.config.hoverScale.amount,le*=this.config.hoverScale.amount),Dl.top=vt.y-le*this.state.anchor.y+le/2,Dl.left=vt.x-bt*this.state.anchor.x+bt/2,Dl.box={width:bt,height:le}}this.tooltip?le?this.tooltip.update(this.config.tooltip.content,Dl):this.tooltip.move(Dl):this.tooltip=this.viewer.createTooltip(Dl)}}hideTooltip(){this.tooltip&&(this.tooltip.hide(),this.tooltip=null)}},mm=class extends pm{get domElement(){return this.element}constructor(vt,bt,le){super(vt,bt,le)}afterCreateElement(){this.element[$d]=this}destroy(){delete this.element[$d],super.destroy()}update(vt){super.update(vt);const bt=this.domElement;bt.id="psv-marker-"+this.config.id,bt.setAttribute("class","psv-marker"),this.state.visible&&bt.classList.add("psv-marker--visible"),this.config.tooltip&&bt.classList.add("psv-marker--has-tooltip"),this.config.content&&bt.classList.add("psv-marker--has-content"),this.config.className&&ho.Wp.addClasses(bt,this.config.className),bt.style.opacity=""+this.config.opacity,bt.style.zIndex=""+(30+this.config.zIndex),this.config.style&&Object.assign(bt.style,this.config.style)}},fm=class extends mm{constructor(vt,bt,le){super(vt,bt,le)}afterCreateElement(){super.afterCreateElement(),this.domElement.addEventListener("transitionend",(()=>{this.domElement.style.transition=""}))}render(vt){let{viewerPosition:bt,zoomLevel:le,hoveringMarker:ls}=vt;this.__updateSize();const ho=this.viewer.dataHelper.vector3ToViewerCoords(this.state.positions3D[0]);ho.x-=this.state.size.width*this.state.anchor.x,ho.y-=this.state.size.height*this.state.anchor.y;return this.state.positions3D[0].dot(this.viewer.state.direction)>0&&ho.x+this.state.size.width>=0&&ho.x-this.state.size.width<=this.viewer.state.size.width&&ho.y+this.state.size.height>=0&&ho.y-this.state.size.height<=this.viewer.state.size.height?(this.domElement.style.translate=ho.x+"px "+ho.y+"px 0px",this.applyScale({zoomLevel:le,viewerPosition:bt,mouseover:this===ls}),ho):null}update(vt){if(super.update(vt),!ho.Wp.isExtendedPosition(this.config.position))throw new ho.e6("missing marker "+this.id+" position");try{this.state.position=this.viewer.dataHelper.cleanPosition(this.config.position)}catch(le){throw new ho.e6("invalid marker "+this.id+" position",le)}this.state.positions3D=[this.viewer.dataHelper.sphericalCoordsToVector3(this.state.position)];const bt=this.domElement;bt.classList.add("psv-marker--normal"),this.config.scale&&Array.isArray(this.config.scale)&&(this.config.scale={zoom:this.config.scale}),"boolean"===typeof this.config.hoverScale?this.config.hoverScale=this.config.hoverScale?this.plugin.config.defaultHoverScale||im:null:"number"===typeof this.config.hoverScale?this.config.hoverScale={amount:this.config.hoverScale}:this.config.hoverScale||(this.config.hoverScale=this.plugin.config.defaultHoverScale),this.config.hoverScale&&(this.config.hoverScale=(0,ls.A)({},this.plugin.config.defaultHoverScale,this.config.hoverScale)),bt.style.rotate=0!==this.config.rotation.roll?Dl.cj9.radToDeg(this.config.rotation.roll)+"deg":null,bt.style.transformOrigin=100*this.state.anchor.x+"% "+100*this.state.anchor.y+"%"}__updateSize(){if(!this.needsUpdateSize)return;const vt=this.domElement,bt=!this.state.visible||!this.state.size;if(bt&&vt.classList.add("psv-marker--transparent"),this.isSvg()){const bt=vt.firstElementChild.getBoundingClientRect();this.state.size={width:bt.width,height:bt.height}}else this.state.size={width:vt.offsetWidth,height:vt.offsetHeight};bt&&vt.classList.remove("psv-marker--transparent"),this.isSvg()&&(vt.style.width=this.state.size.width+"px",vt.style.height=this.state.size.height+"px"),"element"!==this.type&&(this.needsUpdateSize=!1)}applyScale(vt){let{zoomLevel:bt,viewerPosition:le,mouseover:ls}=vt;null!==ls&&this.config.hoverScale&&(this.domElement.style.transition="scale "+this.config.hoverScale.duration+"ms "+this.config.hoverScale.easing);let Fl=1;if("function"===typeof this.config.scale)Fl=this.config.scale(bt,le);else if(this.config.scale){if(Array.isArray(this.config.scale.zoom)){const[vt,le]=this.config.scale.zoom;Fl*=vt+(le-vt)*ho.aH.EASINGS.inQuad(bt/100)}if(Array.isArray(this.config.scale.yaw)){const[vt,bt]=this.config.scale.yaw,ls=Dl.cj9.degToRad(this.viewer.state.hFov)/2,sc=Math.abs(ho.Wp.getShortestArc(this.state.position.yaw,le.yaw));Fl*=bt+(vt-bt)*ho.aH.EASINGS.outQuad(Math.max(0,(ls-sc)/ls))}}ls&&this.config.hoverScale&&(Fl*=this.config.hoverScale.amount),this.domElement.style.scale=""+Fl}},gm=class extends Dl.BKk{get map(){return this.uniforms.map.value}set map(vt){this.uniforms.map.value=vt}set alpha(vt){this.uniforms.alpha.value=vt}get offset(){return this.uniforms.offset.value}get repeat(){return this.uniforms.repeat.value}set chromaKey(vt){if(this.uniforms.keying.value=!0===(null==vt?void 0:vt.enabled),null!=vt&&vt.enabled){var bt,le,ls;if("object"===typeof vt.color&&"r"in vt.color)this.uniforms.color.value.set(vt.color.r/255,vt.color.g/255,vt.color.b/255);else this.uniforms.color.value.set(null!=(ls=vt.color)?ls:65280);this.uniforms.similarity.value=null!=(bt=vt.similarity)?bt:.2,this.uniforms.smoothness.value=null!=(le=vt.smoothness)?le:.2}}constructor(vt){var bt;super({transparent:!0,depthTest:!1,depthWrite:!1,uniforms:{map:{value:null==vt?void 0:vt.map},repeat:{value:new Dl.I9Y(1,1)},offset:{value:new Dl.I9Y(0,0)},alpha:{value:null!=(bt=null==vt?void 0:vt.alpha)?bt:1},keying:{value:!1},color:{value:new Dl.Q1f(65280)},similarity:{value:.2},smoothness:{value:.2},spill:{value:.1}},vertexShader:"varying vec2 vUv;\nuniform vec2 repeat;\nuniform vec2 offset;\n\nvoid main() {\n vUv = uv * repeat + offset;\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}\n",fragmentShader:"// https://www.8thwall.com/playground/chromakey-threejs\n\nuniform sampler2D map;\nuniform float alpha;\nuniform bool keying;\nuniform vec3 color;\nuniform float similarity;\nuniform float smoothness;\nuniform float spill;\n\nvarying vec2 vUv;\n\nvec2 RGBtoUV(vec3 rgb) {\n return vec2(\n rgb.r * -0.169 + rgb.g * -0.331 + rgb.b * 0.5 + 0.5,\n rgb.r * 0.5 + rgb.g * -0.419 + rgb.b * -0.081 + 0.5\n );\n}\n\nvoid main(void) {\n gl_FragColor = texture2D(map, vUv);\n\n if (keying) {\n float chromaDist = distance(RGBtoUV(gl_FragColor.rgb), RGBtoUV(color));\n\n float baseMask = chromaDist - similarity;\n float fullMask = pow(clamp(baseMask / smoothness, 0., 1.), 1.5);\n gl_FragColor.a *= fullMask * alpha;\n\n float spillVal = pow(clamp(baseMask / spill, 0., 1.), 1.5);\n float desat = clamp(gl_FragColor.r * 0.2126 + gl_FragColor.g * 0.7152 + gl_FragColor.b * 0.0722, 0., 1.);\n gl_FragColor.rgb = mix(vec3(desat, desat, desat), gl_FragColor.rgb, spillVal);\n } else {\n gl_FragColor.a *= alpha;\n }\n}\n"}),this.chromaKey=null==vt?void 0:vt.chromaKey}};function greatArcIntermediaryPoint(vt,bt,le){const[ls,Dl]=vt,[Fl,sc]=bt,uc=ho.Wp.greatArcDistance(vt,bt),mc=Math.sin((1-le)*uc)/Math.sin(uc),gc=Math.sin(le*uc)/Math.sin(uc),Ac=mc*Math.cos(Dl)*Math.cos(ls)+gc*Math.cos(sc)*Math.cos(Fl),Ec=mc*Math.cos(Dl)*Math.sin(ls)+gc*Math.cos(sc)*Math.sin(Fl),kc=mc*Math.sin(Dl)+gc*Math.sin(sc);return[Math.atan2(Ec,Ac),Math.atan2(kc,Math.sqrt(Ac*Ac+Ec*Ec))]}function getPolygonCenter(vt){return vt.reduce(((vt,bt)=>vt.add(bt)),new Dl.Pq0).normalize()}function getPolylineCenter(vt){const bt=function(vt){const bt=[vt[0]];let le=0;for(let ls=1;ls<vt.length;ls++){const ho=vt[ls-1][0]-vt[ls][0];ho>Math.PI?le+=1:ho<-Math.PI&&(le-=1),bt.push([vt[ls][0]+2*le*Math.PI,vt[ls][1]])}return bt}(vt);let le=0;const ls=[];for(let Fl=0;Fl<bt.length-1;Fl++){const vt=ho.Wp.greatArcDistance(bt[Fl],bt[Fl+1])*ho.aH.SPHERE_RADIUS;ls.push(vt),le+=vt}let Dl=0;for(let ho=0;ho<bt.length-1;ho++){if(Dl+ls[ho]>le/2){const vt=(le/2-Dl)/ls[ho];return greatArcIntermediaryPoint(bt[ho],bt[ho+1],vt)}Dl+=ls[ho]}return bt[Math.round(bt.length/2)]}var Am=new Dl.Pq0,_m=new Dl.Pq0,ym=new Dl.Pq0,vm=new Dl.Pq0,xm=new Dl.Pq0,bm=new Dl.Pq0;function getGreatCircleIntersection(vt,bt,le){Am.copy(le).normalize(),_m.crossVectors(vt,bt).normalize(),ym.crossVectors(_m,vt).normalize(),vm.copy(vt).multiplyScalar(-Am.dot(ym)),xm.copy(ym).multiplyScalar(Am.dot(vt));const ls=(new Dl.Pq0).addVectors(vm,xm).normalize();return bm.crossVectors(ls,Am),ls.applyAxisAngle(bm,.01).multiplyScalar(ho.aH.SPHERE_RADIUS)}var wm=class extends pm{get threeElement(){return this.element}get threeMesh(){return this.threeElement.children[0]}get video(){return"videoLayer"===this.type?this.threeMesh.material.map.image:null}constructor(vt,bt,le){super(vt,bt,le)}is3d(){return!0}createElement(){const vt=new gm({alpha:0}),bt=new Dl.bdM(1,1),le=new Dl.eaF(bt,vt);le.userData={[$d]:this},Object.defineProperty(le,"visible",{enumerable:!0,get:function(){return this.userData[$d].config.visible},set:function(vt){this.userData[$d].config.visible=vt}}),this.element=(new Dl.YJl).add(le),"videoLayer"===this.type&&this.viewer.needsContinuousUpdate(!0)}destroy(){delete this.threeMesh.userData[$d],"videoLayer"===this.type&&(this.video.pause(),this.viewer.needsContinuousUpdate(!1)),super.destroy()}render(){return this.viewer.renderer.isObjectVisible(this.threeMesh)?this.viewer.dataHelper.sphericalCoordsToViewerCoords(this.state.position):null}update(vt){super.update(vt);const bt=this.threeMesh,le=bt.parent,ls=bt.material;if(ho.Wp.isExtendedPosition(this.config.position)){try{this.state.position=this.viewer.dataHelper.cleanPosition(this.config.position)}catch(gc){throw new ho.e6("invalid marker "+this.id+" position",gc)}if(!this.config.size)throw new ho.e6("missing marker "+this.id+" size");this.state.size=this.config.size,bt.scale.set(this.config.size.width/100,this.config.size.height/100,1),bt.position.set(bt.scale.x*(.5-this.state.anchor.x),bt.scale.y*(this.state.anchor.y-.5),0),bt.rotation.set(0,0,0),this.viewer.dataHelper.sphericalCoordsToVector3(this.state.position,le.position),le.lookAt(0,le.position.y,0),bt.rotateY(-this.config.rotation.yaw),bt.rotateX(-this.config.rotation.pitch),bt.rotateZ(-this.config.rotation.roll);const vt=bt.geometry.getAttribute("position");this.state.positions3D=[0,1,3,2].map((le=>{const ls=new Dl.Pq0;return ls.fromBufferAttribute(vt,le),bt.localToWorld(ls)}))}else{var Fl;if(4!==(null==(Fl=this.config.position)?void 0:Fl.length))throw new ho.e6("missing marker "+this.id+" position");let vt;try{vt=this.config.position.map((vt=>this.viewer.dataHelper.cleanPosition(vt)))}catch(gc){throw new ho.e6("invalid marker "+this.id+" position",gc)}const le=vt.map((vt=>this.viewer.dataHelper.sphericalCoordsToVector3(vt))),Dl=getPolygonCenter(le);this.state.position=this.viewer.dataHelper.vector3ToSphericalCoords(Dl),this.state.positions3D=le;const sc=bt.geometry.getAttribute("position");[le[0],le[1],le[3],le[2]].forEach(((vt,bt)=>{sc.setX(bt,vt.x),sc.setY(bt,vt.y),sc.setZ(bt,vt.z)})),sc.needsUpdate=!0,this.__setTextureWrap(ls)}switch(this.type){case"videoLayer":if(this.definition!==this.config.videoLayer){var sc,uc;null==(sc=ls.map)||sc.dispose();const vt=function(vt){let{src:bt,withCredentials:le,muted:ls,autoplay:ho}=vt;const Dl=document.createElement("video");return Dl.crossOrigin=le?"use-credentials":"anonymous",Dl.loop=!0,Dl.playsInline=!0,Dl.autoplay=ho,Dl.muted=ls,Dl.preload="metadata",bt instanceof MediaStream?Dl.srcObject=bt:Dl.src=bt,Dl}({src:this.config.videoLayer,withCredentials:this.viewer.config.withCredentials(this.config.videoLayer),muted:!0,autoplay:null==(uc=this.config.autoplay)||uc}),le=new Dl.Nv2(vt);ls.map=le,ls.alpha=0,vt.addEventListener("loadedmetadata",(()=>{this.viewer&&(ls.alpha=this.config.opacity,ho.Wp.isExtendedPosition(this.config.position)||(bt.material.userData[$d]={width:vt.videoWidth,height:vt.videoHeight},this.__setTextureWrap(ls)))}),{once:!0}),vt.autoplay&&vt.play(),this.definition=this.config.videoLayer}else ls.alpha=this.config.opacity;break;case"imageLayer":if(this.definition!==this.config.imageLayer){var mc;null==(mc=ls.map)||mc.dispose();const vt=new Dl.gPd;ls.map=vt,ls.alpha=0,this.viewer.textureLoader.loadImage(this.config.imageLayer).then((le=>{this.viewer&&(ho.Wp.isExtendedPosition(this.config.position)||(bt.material.userData[$d]={width:le.width,height:le.height},this.__setTextureWrap(ls)),vt.image=le,vt.anisotropy=4,vt.needsUpdate=!0,ls.alpha=this.config.opacity,this.viewer.needsUpdate())})),this.definition=this.config.imageLayer}else ls.alpha=this.config.opacity}ls.chromaKey=this.config.chromaKey,bt.renderOrder=1e3+this.config.zIndex,bt.geometry.boundingBox=null}__setTextureWrap(vt){const bt=vt.userData[$d];if(!bt||!bt.height||!bt.width)return vt.repeat.set(1,1),void vt.offset.set(0,0);const le=this.config.position.map((vt=>this.viewer.dataHelper.cleanPosition(vt))),ls=(ho.Wp.greatArcDistance([le[0].yaw,le[0].pitch],[le[1].yaw,le[1].pitch])+ho.Wp.greatArcDistance([le[3].yaw,le[3].pitch],[le[2].yaw,le[2].pitch]))/(ho.Wp.greatArcDistance([le[1].yaw,le[1].pitch],[le[2].yaw,le[2].pitch])+ho.Wp.greatArcDistance([le[0].yaw,le[0].pitch],[le[3].yaw,le[3].pitch])),Dl=bt.width/bt.height;let Fl=0,sc=0;ls<Dl?Fl=Dl-ls:sc=1/Dl-1/ls,vt.repeat.set(1-Fl,1-sc),vt.offset.set(Fl/2,sc/2)}},Em=class extends mm{constructor(vt,bt,le){super(vt,bt,le),this.viewportIntersection=!1}get threeElement(){return this.object}isCss3d(){return!0}createElement(){this.element=document.createElement("div"),this.object=new om(this.element),this.object.userData={[$d]:this},Object.defineProperty(this.object,"visible",{enumerable:!0,get:function(){return this.userData[$d].config.visible},set:function(vt){this.userData[$d].config.visible=vt}}),this.afterCreateElement()}destroy(){delete this.object.userData[$d],delete this.object,super.destroy()}render(vt){let{viewerPosition:bt,zoomLevel:le}=vt;const ls=this.domElement;this.state.size={width:ls.offsetWidth,height:ls.offsetHeight};if(this.state.positions3D[0].dot(this.viewer.state.direction)>0&&this.viewportIntersection){var ho,Dl;const vt=this.viewer.dataHelper.sphericalCoordsToViewerCoords(this.state.position);return null==(ho=(Dl=this.config.elementLayer).updateMarker)||ho.call(Dl,{marker:this,position:vt,viewerPosition:bt,zoomLevel:le,viewerSize:this.viewer.state.size}),vt}return null}update(vt){if(super.update(vt),!ho.Wp.isExtendedPosition(this.config.position))throw new ho.e6("missing marker "+this.id+" position");try{this.state.position=this.viewer.dataHelper.cleanPosition(this.config.position)}catch(ls){throw new ho.e6("invalid marker "+this.id+" position",ls)}this.state.positions3D=[this.viewer.dataHelper.sphericalCoordsToVector3(this.state.position)];const bt=this.threeElement,le=this.domElement;le.classList.add("psv-marker--css3d"),le.childNodes.forEach((vt=>vt.remove())),le.appendChild(this.config.elementLayer),this.config.elementLayer.style.display="block",bt.position.copy(this.state.positions3D[0]).multiplyScalar(100),bt.lookAt(0,100*this.state.positions3D[0].y,0),bt.rotateY(-this.config.rotation.yaw),bt.rotateX(-this.config.rotation.pitch),bt.rotateZ(-this.config.rotation.roll)}},Mm=class extends fm{constructor(vt,bt,le){super(vt,bt,le)}isNormal(){return!0}createElement(){this.element=document.createElement("div"),this.afterCreateElement()}render(vt){const bt=super.render(vt);var le,ls;bt&&"element"===this.type&&(null==(le=(ls=this.config.element).updateMarker)||le.call(ls,{marker:this,position:bt,viewerPosition:vt.viewerPosition,zoomLevel:vt.zoomLevel,viewerSize:this.viewer.state.size}));return bt}update(vt){super.update(vt);const bt=this.domElement;if(this.config.image&&!this.config.size)throw new ho.e6("missing marker "+this.id+" size");switch(this.config.size?(this.needsUpdateSize=!1,this.state.size=this.config.size,bt.style.width=this.config.size.width+"px",bt.style.height=this.config.size.height+"px"):this.needsUpdateSize=!0,this.type){case"image":this.definition=this.config.image,bt.style.backgroundImage='url("'+this.config.image+'")';break;case"html":this.definition=this.config.html,bt.innerHTML=this.config.html;break;case"element":this.definition!==this.config.element&&(this.definition=this.config.element,bt.childNodes.forEach((vt=>vt.remove())),bt.appendChild(this.config.element),this.config.element.style.display="block")}}},Sm=class extends mm{constructor(vt,bt,le){super(vt,bt,le)}createElement(){this.element=document.createElementNS(Jd,"path"),this.element[$d]=this}isPoly(){return!0}get isPixels(){return"polygonPixels"===this.type||"polylinePixels"===this.type}get isPolygon(){return"polygon"===this.type||"polygonPixels"===this.type}get isPolyline(){return"polyline"===this.type||"polylinePixels"===this.type}get coords(){return this.definition}render(){const vt=this.__getAllPolyPositions();if(vt[0].length>(this.isPolygon?2:1)){const bt=this.viewer.dataHelper.sphericalCoordsToViewerCoords(this.state.position),le=vt.filter((vt=>vt.length>0)).map((vt=>{let le="M";return le+=vt.map((vt=>vt.x-bt.x+","+(vt.y-bt.y))).join("L"),this.isPolygon&&(le+="Z"),le})).join(" ");return this.domElement.setAttributeNS(null,"d",le),this.domElement.setAttributeNS(null,"transform","translate("+bt.x+" "+bt.y+")"),bt}return null}update(vt){super.update(vt);const bt=this.domElement;bt.classList.add("psv-marker--poly"),this.config.svgStyle?(Object.entries(this.config.svgStyle).forEach((vt=>{let[le,ls]=vt;bt.setAttributeNS(null,ho.Wp.dasherize(le),ls)})),this.isPolyline&&!this.config.svgStyle.fill&&bt.setAttributeNS(null,"fill","none")):this.isPolygon?bt.setAttributeNS(null,"fill","rgba(0,0,0,0.5)"):this.isPolyline&&(bt.setAttributeNS(null,"fill","none"),bt.setAttributeNS(null,"stroke","rgb(0,0,0)"));try{let vt=this.config[this.type];if(!Array.isArray(vt[0])&&"object"!==typeof vt[0])for(let bt=0;bt<vt.length;bt++)vt.splice(bt,2,[vt[bt],vt[bt+1]]);if(Array.isArray(vt[0][0])||"object"===typeof vt[0][0]||(vt=[vt]),this.isPolyline&&vt.length>1)throw new ho.e6("polylines cannot have holes");this.isPixels?this.definition=vt.map((vt=>vt.map((vt=>{let bt;return bt=ho.Wp.isExtendedPosition(vt)?this.viewer.dataHelper.cleanPosition(vt):this.viewer.dataHelper.textureCoordsToSphericalCoords({textureX:vt[0],textureY:vt[1]}),[bt.yaw,bt.pitch]})))):this.definition=vt.map((vt=>vt.map((vt=>{let bt;return bt=ho.Wp.isExtendedPosition(vt)?this.viewer.dataHelper.cleanPosition(vt):this.viewer.dataHelper.cleanPosition({yaw:vt[0],pitch:vt[1]}),[bt.yaw,bt.pitch]}))))}catch(le){throw new ho.e6("invalid marker "+this.id+" position",le)}if(this.positions3D=this.coords.map((vt=>vt.map((vt=>this.viewer.dataHelper.sphericalCoordsToVector3({yaw:vt[0],pitch:vt[1]}))))),this.isPolygon){const vt=getPolygonCenter(this.positions3D[0]);this.state.position=this.viewer.dataHelper.vector3ToSphericalCoords(vt)}else{const vt=getPolylineCenter(this.coords[0]);this.state.position={yaw:vt[0],pitch:vt[1]}}this.state.positions3D=this.positions3D[0]}__getAllPolyPositions(){return this.positions3D.map((vt=>this.__getPolyPositions(vt)))}__getPolyPositions(vt){const bt=vt.length,le=vt.map((vt=>({vector:vt,visible:vt.dot(this.viewer.state.direction)>0}))),ls=[];return le.forEach(((vt,ho)=>{if(!vt.visible){[0===ho?le[bt-1]:le[ho-1],ho===bt-1?le[0]:le[ho+1]].forEach((bt=>{bt.visible&&ls.push({visible:bt.vector,invisible:vt.vector,index:ho})}))}})),ls.reverse().forEach((vt=>{le.splice(vt.index,0,{vector:getGreatCircleIntersection(vt.visible,vt.invisible,this.viewer.state.direction),visible:!0})})),le.filter((vt=>vt.visible)).map((vt=>this.viewer.dataHelper.vector3ToViewerCoords(vt.vector)))}},Tm=class extends fm{get svgElement(){return this.domElement.firstElementChild}constructor(vt,bt,le){super(vt,bt,le)}isSvg(){return!0}createElement(){const vt="square"===this.type?"rect":this.type,bt=document.createElementNS(Jd,vt);this.element=document.createElementNS(Jd,"svg"),this.element.appendChild(bt),this.afterCreateElement()}update(vt){super.update(vt);const bt=this.svgElement;switch(this.needsUpdateSize=!0,this.type){case"square":this.definition={x:0,y:0,width:this.config.square,height:this.config.square};break;case"rect":Array.isArray(this.config.rect)?this.definition={x:0,y:0,width:this.config.rect[0],height:this.config.rect[1]}:this.definition={x:0,y:0,width:this.config.rect.width,height:this.config.rect.height};break;case"circle":this.definition={cx:this.config.circle,cy:this.config.circle,r:this.config.circle};break;case"ellipse":Array.isArray(this.config.ellipse)?this.definition={cx:this.config.ellipse[0],cy:this.config.ellipse[1],rx:this.config.ellipse[0],ry:this.config.ellipse[1]}:this.definition={cx:this.config.ellipse.rx,cy:this.config.ellipse.ry,rx:this.config.ellipse.rx,ry:this.config.ellipse.ry};break;case"path":this.definition={d:this.config.path}}Object.entries(this.definition).forEach((vt=>{let[le,ls]=vt;bt.setAttributeNS(null,le,ls)})),this.config.svgStyle?Object.entries(this.config.svgStyle).forEach((vt=>{let[le,ls]=vt;bt.setAttributeNS(null,ho.Wp.dasherize(le),ls)})):bt.setAttributeNS(null,"fill","rgba(0,0,0,0.5)")}},km=ho.Wp.getConfigParser({clickEventOnMarker:!1,gotoMarkerSpeed:"8rpm",markers:null,defaultHoverScale:null},{defaultHoverScale:vt=>vt?(!0===vt&&(vt=im),"number"===typeof vt&&(vt={amount:vt}),(0,ls.A)({},im,vt)):null});var Cm=class _MarkersPlugin extends ho.TL{constructor(vt,bt){super(vt,bt),this.markers={},this.state={allVisible:!0,showAllTooltips:!1,currentMarker:null,hoveringMarker:null,needsReRender:!1,lastClientX:null,lastClientY:null},this.container=document.createElement("div"),this.container.className="psv-markers",this.viewer.container.appendChild(this.container),this.container.addEventListener("contextmenu",(vt=>vt.preventDefault())),this.svgContainer=document.createElementNS(Jd,"svg"),this.svgContainer.setAttribute("class","psv-markers-svg-container"),this.container.appendChild(this.svgContainer),this.css3DContainer=new hm(vt),this.container.appendChild(this.css3DContainer.element),this.container.addEventListener("mouseenter",this,!0),this.container.addEventListener("mouseleave",this,!0),this.container.addEventListener("mousemove",this,!0)}static withConfig(vt){return[_MarkersPlugin,vt]}init(){super.init(),ho.Wp.checkStylesheet(this.viewer.container,"markers-plugin"),this.viewer.addEventListener(ho.AZ.ClickEvent.type,this),this.viewer.addEventListener(ho.AZ.DoubleClickEvent.type,this),this.viewer.addEventListener(ho.AZ.RenderEvent.type,this),this.viewer.addEventListener(ho.AZ.ConfigChangedEvent.type,this),this.viewer.addEventListener(ho.AZ.ObjectEnterEvent.type,this),this.viewer.addEventListener(ho.AZ.ObjectHoverEvent.type,this),this.viewer.addEventListener(ho.AZ.ObjectLeaveEvent.type,this),this.viewer.addEventListener(ho.AZ.ReadyEvent.type,this,{once:!0})}destroy(){this.clearMarkers(!1),this.viewer.unobserveObjects($d),this.viewer.removeEventListener(ho.AZ.ClickEvent.type,this),this.viewer.removeEventListener(ho.AZ.DoubleClickEvent.type,this),this.viewer.removeEventListener(ho.AZ.RenderEvent.type,this),this.viewer.removeEventListener(ho.AZ.ObjectEnterEvent.type,this),this.viewer.removeEventListener(ho.AZ.ObjectHoverEvent.type,this),this.viewer.removeEventListener(ho.AZ.ObjectLeaveEvent.type,this),this.viewer.removeEventListener(ho.AZ.ReadyEvent.type,this),this.css3DContainer.destroy(),this.viewer.container.removeChild(this.container),super.destroy()}handleEvent(vt){var bt;switch(vt.type){case ho.AZ.ReadyEvent.type:this.config.markers&&(this.setMarkers(this.config.markers),delete this.config.markers);break;case ho.AZ.RenderEvent.type:this.renderMarkers();break;case ho.AZ.ClickEvent.type:this.__onClick(vt,!1);break;case ho.AZ.DoubleClickEvent.type:this.__onClick(vt,!0);break;case ho.AZ.ObjectEnterEvent.type:case ho.AZ.ObjectLeaveEvent.type:case ho.AZ.ObjectHoverEvent.type:if(vt.userDataKey===$d){const le=vt.originalEvent,ls=vt.object.userData[$d];switch(vt.type){case ho.AZ.ObjectEnterEvent.type:null!=(bt=ls.config.style)&&bt.cursor?this.viewer.setCursor(ls.config.style.cursor):(ls.config.tooltip||ls.config.content)&&this.viewer.setCursor("pointer"),this.__onEnterMarker(le,ls);break;case ho.AZ.ObjectLeaveEvent.type:this.viewer.setCursor(null),this.__onLeaveMarker(ls);break;case ho.AZ.ObjectHoverEvent.type:this.__onHoverMarker(le,ls)}}break;case"mouseenter":{const bt=this.__getTargetMarker(ho.Wp.getEventTarget(vt));this.__onEnterMarker(vt,bt);break}case"mouseleave":{const bt=this.__getTargetMarker(ho.Wp.getEventTarget(vt));this.__onLeaveMarker(bt);break}case"mousemove":{const bt=this.__getTargetMarker(ho.Wp.getEventTarget(vt),!0);this.__onHoverMarker(vt,bt);break}}}toggleAllMarkers(){this.state.allVisible?this.hideAllMarkers():this.showAllMarkers()}showAllMarkers(){this.state.allVisible=!0,Object.values(this.markers).forEach((vt=>{vt.config.visible=!0})),this.renderMarkers(),this.dispatchEvent(new Zd)}hideAllMarkers(){this.state.allVisible=!1,Object.values(this.markers).forEach((vt=>{vt.config.visible=!1})),this.renderMarkers(),this.dispatchEvent(new Gd)}toggleAllTooltips(){this.state.showAllTooltips?this.hideAllTooltips():this.showAllTooltips()}showAllTooltips(){this.state.showAllTooltips=!0,Object.values(this.markers).forEach((vt=>{vt.state.staticTooltip=!0,vt.showTooltip()}))}hideAllTooltips(){this.state.showAllTooltips=!1,Object.values(this.markers).forEach((vt=>{vt.state.staticTooltip=!1,vt.hideTooltip()}))}getNbMarkers(){return Object.keys(this.markers).length}getMarkers(){return Object.values(this.markers)}addMarker(vt,bt){if(void 0===bt&&(bt=!0),this.markers[vt.id])throw new ho.e6('marker "'+vt.id+'" already exists');const le=new(function(vt){switch(getMarkerType(vt,!1)){case"image":case"html":case"element":return Mm;case"imageLayer":case"videoLayer":return wm;case"elementLayer":return Em;case"polygon":case"polyline":case"polygonPixels":case"polylinePixels":return Sm;case"square":case"rect":case"circle":case"ellipse":case"path":return Tm;default:throw new ho.e6("invalid marker type")}}(vt))(this.viewer,this,vt);le.isPoly()?this.svgContainer.appendChild(le.domElement):le.isCss3d()?this.css3DContainer.addObject(le):le.is3d()?this.viewer.renderer.addObject(le.threeElement):this.container.appendChild(le.domElement),this.markers[le.id]=le,this.state.showAllTooltips&&(le.state.staticTooltip=!0),bt&&this.__afterChangeMarkers()}getMarker(vt){const bt="object"===typeof vt?vt.id:vt;if(!this.markers[bt])throw new ho.e6('cannot find marker "'+bt+'"');return this.markers[bt]}getCurrentMarker(){return this.state.currentMarker}updateMarker(vt,bt){void 0===bt&&(bt=!0);const le=this.getMarker(vt.id);var ls;(le.update(vt),bt)&&(this.__afterChangeMarkers(),(le===this.state.hoveringMarker&&"hover"===(null==(ls=le.config.tooltip)?void 0:ls.trigger)||le.state.staticTooltip)&&le.showTooltip(this.state.lastClientX,this.state.lastClientY,!0))}removeMarker(vt,bt){void 0===bt&&(bt=!0);const le=this.getMarker(vt);le.isPoly()?this.svgContainer.removeChild(le.domElement):le.isCss3d()?this.css3DContainer.removeObject(le):le.is3d()?this.viewer.renderer.removeObject(le.threeElement):this.container.removeChild(le.domElement),this.state.hoveringMarker===le&&(this.state.hoveringMarker=null),this.state.currentMarker===le&&(this.state.currentMarker=null),le.destroy(),delete this.markers[le.id],bt&&this.__afterChangeMarkers()}removeMarkers(vt,bt){void 0===bt&&(bt=!0),vt.forEach((vt=>this.removeMarker(vt,!1))),bt&&this.__afterChangeMarkers()}setMarkers(vt,bt){void 0===bt&&(bt=!0),this.clearMarkers(!1),null==vt||vt.forEach((vt=>{this.addMarker(vt,!1)})),bt&&this.__afterChangeMarkers()}clearMarkers(vt){void 0===vt&&(vt=!0),Object.keys(this.markers).forEach((vt=>{this.removeMarker(vt,!1)})),vt&&this.__afterChangeMarkers()}gotoMarker(vt,bt){void 0===bt&&(bt=this.config.gotoMarkerSpeed);const le=this.getMarker(vt);return bt?this.viewer.animate((0,ls.A)({},le.state.position,{zoom:le.config.zoomLvl,speed:bt})).then((()=>{this.dispatchEvent(new Ac(le))})):(this.viewer.rotate(le.state.position),ho.Wp.isNil(le.config.zoomLvl)||this.viewer.zoom(le.config.zoomLvl),this.dispatchEvent(new Ac(le)),Promise.resolve())}hideMarker(vt){this.toggleMarker(vt,!1)}showMarker(vt){this.toggleMarker(vt,!0)}showMarkerTooltip(vt){const bt=this.getMarker(vt);bt.state.staticTooltip=!0,bt.showTooltip()}hideMarkerTooltip(vt){const bt=this.getMarker(vt);bt.state.staticTooltip=!1,bt.hideTooltip()}toggleMarker(vt,bt){const le=this.getMarker(vt);le.config.visible=ho.Wp.isNil(bt)?!le.config.visible:bt,this.renderMarkers()}showMarkerPanel(vt){const bt=this.getMarker(vt);bt.config.content?this.viewer.panel.show({id:tm,content:bt.config.content}):this.hideMarkerPanel()}hideMarkerPanel(){this.viewer.panel.hide(tm)}toggleMarkersList(){this.viewer.panel.isVisible(em)?this.hideMarkersList():this.showMarkersList()}showMarkersList(){let vt=[];Object.values(this.markers).forEach((bt=>{bt.config.visible&&!bt.config.hideList&&vt.push(bt)}));const bt=new Qd(vt);this.dispatchEvent(bt),vt=bt.markers,this.viewer.panel.show({id:em,content:MARKERS_LIST_TEMPLATE(vt,this.viewer.config.lang[Xd.id]),noMargin:!0,clickHandler:vt=>{const bt=ho.Wp.getClosest(vt,".psv-panel-menu-item"),le=bt?bt.dataset[$d]:void 0;if(le){const vt=this.getMarker(le);this.dispatchEvent(new Rd(vt)),this.gotoMarker(vt.id),this.hideMarkersList()}}})}hideMarkersList(){this.viewer.panel.hide(em)}renderMarkers(){if(this.state.needsReRender)return void(this.state.needsReRender=!1);const vt=this.viewer.getZoomLevel(),bt=this.viewer.getPosition(),le=this.state.hoveringMarker;Object.values(this.markers).forEach((ls=>{let Dl=ls.config.visible,Fl=!1,sc=null;Dl&&(sc=ls.render({viewerPosition:bt,zoomLevel:vt,hoveringMarker:le}),Dl=!!sc),Fl=ls.state.visible!==Dl,ls.state.visible=Dl,ls.state.position2D=sc,ls.domElement&&ho.Wp.toggleClass(ls.domElement,"psv-marker--visible",Dl),Dl?ls.state.staticTooltip?ls.showTooltip():ls!==this.state.hoveringMarker&&ls.hideTooltip():ls.hideTooltip(),Fl&&(this.dispatchEvent(new mc(ls,Dl)),(ls.is3d()||ls.isCss3d())&&(this.state.needsReRender=!0))})),this.state.needsReRender&&this.viewer.needsUpdate()}__getTargetMarker(vt,bt){if(void 0===bt&&(bt=!1),vt instanceof Node){const le=bt?ho.Wp.getClosest(vt,".psv-marker"):vt;return le?le[$d]:void 0}return Array.isArray(vt)?vt.map((vt=>vt.userData[$d])).filter((vt=>!!vt)).sort(((vt,bt)=>bt.config.zIndex-vt.config.zIndex))[0]:null}__onEnterMarker(vt,bt){var le;bt&&(this.state.hoveringMarker=bt,this.state.lastClientX=vt.clientX,this.state.lastClientY=vt.clientY,this.dispatchEvent(new _u(bt)),bt instanceof fm&&bt.applyScale({zoomLevel:this.viewer.getZoomLevel(),viewerPosition:this.viewer.getPosition(),mouseover:!0}),bt.state.staticTooltip||"hover"!==(null==(le=bt.config.tooltip)?void 0:le.trigger)||bt.showTooltip(vt.clientX,vt.clientY))}__onLeaveMarker(vt){var bt;vt&&(this.dispatchEvent(new kc(vt)),vt instanceof fm&&vt.applyScale({zoomLevel:this.viewer.getZoomLevel(),viewerPosition:this.viewer.getPosition(),mouseover:!1}),this.state.hoveringMarker=null,vt.state.staticTooltip||"hover"!==(null==(bt=vt.config.tooltip)?void 0:bt.trigger)?vt.state.staticTooltip&&vt.showTooltip():vt.hideTooltip())}__onHoverMarker(vt,bt){var le;bt&&(this.state.lastClientX=vt.clientX,this.state.lastClientY=vt.clientY,(bt.isPoly()||bt.is3d()||bt.isCss3d())&&"hover"===(null==(le=bt.config.tooltip)?void 0:le.trigger)&&bt.showTooltip(vt.clientX,vt.clientY))}__onClick(vt,bt){const le=this.__getTargetMarker(vt.data.objects),ls=this.__getTargetMarker(vt.data.target,!0)||le;var ho,Dl;this.state.currentMarker&&this.state.currentMarker!==ls&&(this.dispatchEvent(new jd(this.state.currentMarker)),this.viewer.panel.hide(tm),this.state.showAllTooltips||"click"!==(null==(ho=this.state.currentMarker.config.tooltip)?void 0:ho.trigger)||this.hideMarkerTooltip(this.state.currentMarker.id),this.state.currentMarker=null);ls&&(this.state.currentMarker=ls,this.dispatchEvent(new Ld(ls,bt,vt.data.rightclick)),this.config.clickEventOnMarker?vt.data.marker=ls:vt.stopImmediatePropagation(),this.markers[ls.id]&&!vt.data.rightclick&&("click"===(null==(Dl=ls.config.tooltip)?void 0:Dl.trigger)?ls.tooltip?this.hideMarkerTooltip(ls.id):this.showMarkerTooltip(ls.id):this.showMarkerPanel(ls.id)))}__afterChangeMarkers(){this.__refreshUi(),this.__checkObjectsObserver(),this.viewer.needsUpdate(),this.dispatchEvent(new Hd(this.getMarkers()))}__refreshUi(){var vt,bt;const le=Object.values(this.markers).filter((vt=>!vt.config.hideList)).length;0===le?(this.viewer.panel.hide(tm),this.viewer.panel.hide(em)):this.viewer.panel.isVisible(em)?this.showMarkersList():this.viewer.panel.isVisible(tm)&&(this.state.currentMarker?this.showMarkerPanel(this.state.currentMarker.id):this.viewer.panel.hide()),null==(vt=this.viewer.navbar.getButton(Xd.id,!1))||vt.toggle(le>0),null==(bt=this.viewer.navbar.getButton(nm.id,!1))||bt.toggle(le>0)}__checkObjectsObserver(){Object.values(this.markers).some((vt=>vt.is3d()))?this.viewer.observeObjects($d):this.viewer.unobserveObjects($d)}};Cm.id="markers",Cm.VERSION="5.14.1",Cm.configParser=km,Cm.readonlyOptions=["markers"];var Im=Cm;ho.zY.lang[Xd.id]="Markers",ho.zY.lang[nm.id]="Markers list",(0,ho.S)(Xd,"caption:left"),(0,ho.S)(nm,"caption:left")},3348:(vt,bt,le)=>{"use strict";le.d(bt,{$:()=>nm});var ls=le(8168),ho=le(1545),Dl=le(9435),Fl=Object.defineProperty;((vt,bt)=>{for(var le in bt)Fl(vt,le,{get:bt[le],enumerable:!0})})({},{EnterArrowEvent:()=>gc,LeaveArrowEvent:()=>Ec,NodeChangedEvent:()=>uc});var sc=class _NodeChangedEvent extends ho.rx{constructor(vt,bt){super(_NodeChangedEvent.type),this.node=vt,this.data=bt}};sc.type="node-changed";var uc=sc,mc=class _EnterArrowEvent extends ho.rx{constructor(vt,bt){super(_EnterArrowEvent.type),this.link=vt,this.node=bt}};mc.type="enter-arrow";var gc=mc,Ac=class _LeaveArrowEvent extends ho.rx{constructor(vt,bt){super(_LeaveArrowEvent.type),this.link=vt,this.node=bt}};Ac.type="leave-arrow";var Ec=Ac,kc=class extends Dl.B69{constructor(vt){void 0===vt&&(vt=document.createElement("div")),super(),this.isCSS2DObject=!0,this.element=vt,this.element.style.position="absolute",this.element.style.userSelect="none",this.element.setAttribute("draggable",!1),this.center=new Dl.I9Y(.5,.5),this.addEventListener("removed",(function(){this.traverse((function(vt){vt.element instanceof vt.element.ownerDocument.defaultView.Element&&null!==vt.element.parentNode&&vt.element.remove()}))}))}copy(vt,bt){return super.copy(vt,bt),this.element=vt.element.cloneNode(!0),this.center=vt.center,this}},du=new Dl.Pq0,_u=new Dl.kn4,Md=new Dl.kn4,Ld=new Dl.Pq0,Nd=new Dl.Pq0,Rd=class{constructor(vt){void 0===vt&&(vt={});const bt=this;let le,ls,ho,Dl;const Fl={objects:new WeakMap},sc=void 0!==vt.element?vt.element:document.createElement("div");function hideObject(vt){vt.isCSS2DObject&&(vt.element.style.display="none");for(let bt=0,le=vt.children.length;bt<le;bt++)hideObject(vt.children[bt])}function renderObject(vt,le,ls){if(!1!==vt.visible){if(vt.isCSS2DObject){du.setFromMatrixPosition(vt.matrixWorld),du.applyMatrix4(Md);const uc=du.z>=-1&&du.z<=1&&!0===vt.layers.test(ls.layers),mc=vt.element;mc.style.display=!0===uc?"":"none",!0===uc&&(vt.onBeforeRender(bt,le,ls),mc.style.transform="translate("+-100*vt.center.x+"%,"+-100*vt.center.y+"%)translate("+(du.x*ho+ho)+"px,"+(-du.y*Dl+Dl)+"px)",mc.parentNode!==sc&&sc.appendChild(mc),vt.onAfterRender(bt,le,ls));const gc={distanceToCameraSquared:getDistanceToSquared(ls,vt)};Fl.objects.set(vt,gc)}for(let bt=0,ho=vt.children.length;bt<ho;bt++)renderObject(vt.children[bt],le,ls)}else hideObject(vt)}function getDistanceToSquared(vt,bt){return Ld.setFromMatrixPosition(vt.matrixWorld),Nd.setFromMatrixPosition(bt.matrixWorld),Ld.distanceToSquared(Nd)}sc.style.overflow="hidden",this.domElement=sc,this.getSize=function(){return{width:le,height:ls}},this.render=function(vt,bt){!0===vt.matrixWorldAutoUpdate&&vt.updateMatrixWorld(),null===bt.parent&&!0===bt.matrixWorldAutoUpdate&&bt.updateMatrixWorld(),_u.copy(bt.matrixWorldInverse),Md.multiplyMatrices(bt.projectionMatrix,_u),renderObject(vt,vt,bt),function(vt){const bt=function(vt){const bt=[];return vt.traverseVisible((function(vt){vt.isCSS2DObject&&bt.push(vt)})),bt}(vt).sort((function(vt,bt){if(vt.renderOrder!==bt.renderOrder)return bt.renderOrder-vt.renderOrder;return Fl.objects.get(vt).distanceToCameraSquared-Fl.objects.get(bt).distanceToCameraSquared})),le=bt.length;for(let ls=0,ho=bt.length;ls<ho;ls++)bt[ls].element.style.zIndex=le-ls}(vt)},this.setSize=function(vt,bt){le=vt,ls=bt,ho=le/2,Dl=ls/2,sc.style.width=vt+"px",sc.style.height=bt+"px"}}},Od=new Dl.Pq0,jd=new Dl.PTz,Ud=new Dl.Pq0,Gd=class extends Dl.B69{constructor(vt){void 0===vt&&(vt=document.createElement("div")),super(),this.isCSS3DObject=!0,this.element=vt,this.element.style.position="absolute",this.element.style.pointerEvents="auto",this.element.style.userSelect="none",this.element.setAttribute("draggable",!1),this.addEventListener("removed",(function(){this.traverse((function(vt){vt.element instanceof vt.element.ownerDocument.defaultView.Element&&null!==vt.element.parentNode&&vt.element.remove()}))}))}copy(vt,bt){return super.copy(vt,bt),this.element=vt.element.cloneNode(!0),this}},qd=new Dl.kn4,Hd=new Dl.kn4,Wd=class{constructor(vt){void 0===vt&&(vt={});const bt=this;let le,ls,ho,Dl;const Fl={camera:{style:""},objects:new WeakMap},sc=void 0!==vt.element?vt.element:document.createElement("div");sc.style.overflow="hidden",this.domElement=sc;const uc=document.createElement("div");uc.style.transformOrigin="0 0",uc.style.pointerEvents="none",sc.appendChild(uc);const mc=document.createElement("div");function epsilon(vt){return Math.abs(vt)<1e-10?0:vt}function getCameraCSSMatrix(vt){const bt=vt.elements;return"matrix3d("+epsilon(bt[0])+","+epsilon(-bt[1])+","+epsilon(bt[2])+","+epsilon(bt[3])+","+epsilon(bt[4])+","+epsilon(-bt[5])+","+epsilon(bt[6])+","+epsilon(bt[7])+","+epsilon(bt[8])+","+epsilon(-bt[9])+","+epsilon(bt[10])+","+epsilon(bt[11])+","+epsilon(bt[12])+","+epsilon(-bt[13])+","+epsilon(bt[14])+","+epsilon(bt[15])+")"}function getObjectCSSMatrix(vt){const bt=vt.elements;return"translate(-50%,-50%)"+("matrix3d("+epsilon(bt[0])+","+epsilon(bt[1])+","+epsilon(bt[2])+","+epsilon(bt[3])+","+epsilon(-bt[4])+","+epsilon(-bt[5])+","+epsilon(-bt[6])+","+epsilon(-bt[7])+","+epsilon(bt[8])+","+epsilon(bt[9])+","+epsilon(bt[10])+","+epsilon(bt[11])+","+epsilon(bt[12])+","+epsilon(bt[13])+","+epsilon(bt[14])+","+epsilon(bt[15])+")")}function hideObject(vt){vt.isCSS3DObject&&(vt.element.style.display="none");for(let bt=0,le=vt.children.length;bt<le;bt++)hideObject(vt.children[bt])}function renderObject(vt,le,ls,ho){if(!1!==vt.visible){if(vt.isCSS3DObject){const ho=!0===vt.layers.test(ls.layers),Dl=vt.element;if(Dl.style.display=!0===ho?"":"none",!0===ho){let ho;vt.onBeforeRender(bt,le,ls),vt.isCSS3DSprite?(qd.copy(ls.matrixWorldInverse),qd.transpose(),0!==vt.rotation2D&&qd.multiply(Hd.makeRotationZ(vt.rotation2D)),vt.matrixWorld.decompose(Od,jd,Ud),qd.setPosition(Od),qd.scale(Ud),qd.elements[3]=0,qd.elements[7]=0,qd.elements[11]=0,qd.elements[15]=1,ho=getObjectCSSMatrix(qd)):ho=getObjectCSSMatrix(vt.matrixWorld);const sc=Fl.objects.get(vt);if(void 0===sc||sc.style!==ho){Dl.style.transform=ho;const bt={style:ho};Fl.objects.set(vt,bt)}Dl.parentNode!==mc&&mc.appendChild(Dl),vt.onAfterRender(bt,le,ls)}}for(let bt=0,Dl=vt.children.length;bt<Dl;bt++)renderObject(vt.children[bt],le,ls,ho)}else hideObject(vt)}mc.style.transformStyle="preserve-3d",uc.appendChild(mc),this.getSize=function(){return{width:le,height:ls}},this.render=function(vt,bt){const sc=bt.projectionMatrix.elements[5]*Dl;let gc,Ac;bt.view&&bt.view.enabled?(uc.style.transform="translate( "+-bt.view.offsetX*(le/bt.view.width)+"px, "+-bt.view.offsetY*(ls/bt.view.height)+"px )",uc.style.transform+="scale( "+bt.view.fullWidth/bt.view.width+", "+bt.view.fullHeight/bt.view.height+" )"):uc.style.transform="",!0===vt.matrixWorldAutoUpdate&&vt.updateMatrixWorld(),null===bt.parent&&!0===bt.matrixWorldAutoUpdate&&bt.updateMatrixWorld(),bt.isOrthographicCamera&&(gc=-(bt.right+bt.left)/2,Ac=(bt.top+bt.bottom)/2);const Ec=bt.view&&bt.view.enabled?bt.view.height/bt.view.fullHeight:1,kc=bt.isOrthographicCamera?"scale( "+Ec+" )scale("+sc+")translate("+epsilon(gc)+"px,"+epsilon(Ac)+"px)"+getCameraCSSMatrix(bt.matrixWorldInverse):"scale( "+Ec+" )translateZ("+sc+"px)"+getCameraCSSMatrix(bt.matrixWorldInverse),du=(bt.isPerspectiveCamera?"perspective("+sc+"px) ":"")+kc+"translate("+ho+"px,"+Dl+"px)";Fl.camera.style!==du&&(mc.style.transform=du,Fl.camera.style=du),renderObject(vt,vt,bt,kc)},this.setSize=function(vt,bt){le=vt,ls=bt,ho=le/2,Dl=ls/2,sc.style.width=vt+"px",sc.style.height=bt+"px",uc.style.width=vt+"px",uc.style.height=bt+"px",mc.style.width=vt+"px",mc.style.height=bt+"px"}}},Zd="tourLink",Yd="__tour-link__",Qd={className:"psv-virtual-tour-tooltip",content:'<div class="psv-virtual-tour-loader"><div></div><div></div><div></div></div>'},Xd={element:()=>{const vt=document.createElement("button");return vt.className="psv-virtual-tour-arrow",vt.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">\n <path fill-rule="even-odd" fill="currentColor" d="\n M50,50 m45,0\n a45,45 0 1,0 -90,0\n a45,45 0 1,0 90,0\n\n M50,50 m38,0\n a38,38 0 0,1 -76,0\n a38,38 0 0,1 76,0\n\n M50,50 m30,0\n a30,30 0 1,0 -60,0\n a30,30 0 1,0 60,0\n \n M50,40 m2.5,-2.5\n l17.5,17.5\n a 2.5,2.5 0 0 1 -5,5\n l-15,-15\n l-15,15\n a 2.5,2.5 0 0 1 -5,-5\n l17.5,-17.5\n a 3.5,3.5 0 0 1 5,0\n "/>\n</svg>',vt},size:{width:80,height:80}},Kd="arrow",Jd=class extends ho.uj{constructor(vt,bt){super(vt,{className:"psv-virtual-tour-arrows"}),this.plugin=bt,this.renderer=this.is3D?new Wd({element:this.container}):new Rd({element:this.container}),this.camera=this.is3D?new Dl.ubm(30,1):null,this.scene=new Dl.Z58,this.viewer.addEventListener(ho.AZ.ReadyEvent.type,this,{once:!0}),this.viewer.addEventListener(ho.AZ.PositionUpdatedEvent.type,this),this.viewer.addEventListener(ho.AZ.SizeUpdatedEvent.type,this),this.viewer.addEventListener(ho.AZ.RenderEvent.type,this),this.viewer.addEventListener(ho.AZ.ClickEvent.type,this),this.container.addEventListener("mouseenter",this,!0),this.container.addEventListener("mouseleave",this,!0),this.container.addEventListener("mousemove",this,!0),this.container.addEventListener("contextmenu",(vt=>vt.preventDefault()))}get is3D(){return this.plugin.is3D}get arrowsPosition(){return this.plugin.config.arrowsPosition}get arrowStyle(){return this.plugin.config.arrowStyle}init(){var vt,bt;this.is3D&&(this.gallery=this.viewer.getPlugin("gallery"),null==(vt=this.gallery)||vt.addEventListener("show-gallery",this),null==(bt=this.gallery)||bt.addEventListener("hide-gallery",this))}destroy(){var vt,bt;this.viewer.removeEventListener(ho.AZ.ReadyEvent.type,this),this.viewer.removeEventListener(ho.AZ.PositionUpdatedEvent.type,this),this.viewer.removeEventListener(ho.AZ.SizeUpdatedEvent.type,this),this.viewer.removeEventListener(ho.AZ.RenderEvent.type,this),this.viewer.removeEventListener(ho.AZ.ClickEvent.type,this),null==(vt=this.gallery)||vt.removeEventListener("show-gallery",this),null==(bt=this.gallery)||bt.removeEventListener("hide-gallery",this),super.destroy()}handleEvent(vt){switch(vt.type){case ho.AZ.ReadyEvent.type:case ho.AZ.SizeUpdatedEvent.type:case ho.AZ.PositionUpdatedEvent.type:this.__updateCamera();break;case ho.AZ.RenderEvent.type:this.render();break;case ho.AZ.ClickEvent.type:{if(vt.data.rightclick)break;const bt=this.__getTargetLink(vt.data.target,!0);bt&&this.plugin.setCurrentNode(bt.nodeId,null,bt);break}case"mouseenter":{const bt=this.__getTargetLink(ho.Wp.getEventTarget(vt));bt&&this.plugin.__onEnterArrow(bt,vt);break}case"mouseleave":{const bt=this.__getTargetLink(ho.Wp.getEventTarget(vt));bt&&this.plugin.__onLeaveArrow(bt);break}case"mousemove":this.__getTargetLink(ho.Wp.getEventTarget(vt),!0)&&this.plugin.__onHoverArrow(vt);break;case"hide-gallery":this.__onToggleGallery(!1);break;case"show-gallery":vt.fullscreen||this.__onToggleGallery(!0)}}__updateCamera(){const vt=this.viewer.getSize();if(this.renderer.setSize(vt.width,vt.height),this.is3D){const bt=this.viewer.getPosition();bt.pitch=Dl.cj9.clamp(bt.pitch,-this.arrowsPosition.maxPitch,-this.arrowsPosition.minPitch),this.viewer.dataHelper.sphericalCoordsToVector3(bt,this.camera.position,2*vt.height).negate(),this.camera.lookAt(0,0,0),this.camera.translateY(vt.height/3),this.camera.updateProjectionMatrix()}}render(){if(this.is3D){const vt=this.viewer.getPosition(),bt=[];let le=Number.MAX_SAFE_INTEGER;this.scene.children.forEach((ls=>{const Dl=ls.userData[Kd];if(Dl.conflict){const Fl=Math.abs(ho.Wp.getShortestArc(vt.yaw,Dl.yaw));le=Math.min(le,Fl),bt.push([ls,Fl])}})),bt.forEach((vt=>{let[bt,ls]=vt;const ho=ls!==le;bt.element.style.opacity=ho?"0.5":null,bt.element.style.zIndex=ho?"-1":null})),this.renderer.render(this.scene,this.camera)}else this.renderer.render(this.scene,this.viewer.renderer.camera)}clear(){this.scene.clear()}__buildArrowElement(vt,bt){if(null!=bt&&bt.image){const vt=document.createElement("img");return vt.src=bt.image,vt}if(null!=bt&&bt.element)return"function"===typeof bt.element?bt.element(vt):bt.element}addLinkArrow(vt,bt,le){void 0===le&&(le=1);let Dl=this.__buildArrowElement(vt,vt.arrowStyle);Dl||(Dl=this.__buildArrowElement(vt,this.arrowStyle)),Dl[Zd]=vt;const Fl=(0,ls.A)({},this.arrowStyle,vt.arrowStyle);if(Dl.classList.add("psv-virtual-tour-link"),Fl.className&&ho.Wp.addClasses(Dl,Fl.className),Fl.style&&Object.assign(Dl.style,Fl.style),this.is3D){Dl.style.width=1.5*Fl.size.width+"px",Dl.style.height=1.5*Fl.size.height+"px";let vt=!1;this.scene.children.forEach((le=>{const ls=le.userData[Kd];Math.abs(ho.Wp.getShortestArc(ls.yaw,bt.yaw))<this.arrowsPosition.linkOverlapAngle&&(ls.conflict=!0,vt=!0)}));const ls=new Gd(Dl);ls.userData[Kd]={yaw:bt.yaw,conflict:vt},ls.rotation.set(-Math.PI/2,0,Math.PI-bt.yaw),this.viewer.dataHelper.sphericalCoordsToVector3({yaw:bt.yaw,pitch:0},ls.position,100*le),this.scene.add(ls)}else{Dl.style.width=Fl.size.width+"px",Dl.style.height=Fl.size.height+"px",Dl.style.pointerEvents="auto";const vt=new kc(Dl);this.viewer.dataHelper.sphericalCoordsToVector3(bt,vt.position),this.scene.add(vt)}}__getTargetLink(vt,bt){void 0===bt&&(bt=!1);const le=bt?ho.Wp.getClosest(vt,".psv-virtual-tour-link"):vt;return le?le[Zd]:void 0}__onToggleGallery(vt){this.container.style.marginBottom=vt?this.viewer.container.querySelector(".psv-gallery").offsetHeight+"px":""}},$d=class{constructor(vt,bt){this.plugin=vt,this.viewer=bt,this.nodes={}}destroy(){}checkNode(vt){var bt,le;if(!vt.id)throw new ho.e6("No id given for node");if(!vt.panorama)throw new ho.e6("No panorama provided for node "+vt.id);if(this.plugin.isGps&&!((null==(bt=vt.gps)?void 0:bt.length)>=2))throw new ho.e6("No GPS position provided for node "+vt.id);if(!this.plugin.isGps&&null!=(le=vt.markers)&&le.some((vt=>vt.gps&&!vt.position)))throw new ho.e6("Cannot use GPS positioning for markers in manual mode");vt.links||(ho.Wp.logWarn("Node "+vt.id+" has no links"),vt.links=[])}checkLink(vt,bt){if(!bt.nodeId)throw new ho.e6("Link of node "+vt.id+" has no target id");if(bt.nodeId===vt.id)throw new ho.e6("Node "+vt.id+" links to itself");if(!this.plugin.isGps&&!ho.Wp.isExtendedPosition(bt.position))throw new ho.e6("No position provided for link "+bt.nodeId+" of node "+vt.id);if(this.plugin.isGps&&!bt.gps)throw new ho.e6("No GPS position provided for link "+bt.nodeId+" of node "+vt.id)}},sp=class extends $d{async loadNode(vt){if(this.nodes[vt])return this.nodes[vt];throw new ho.e6("Node "+vt+" not found")}setNodes(vt){if(null==vt||!vt.length)throw new ho.e6("No nodes provided");const bt={},le={};vt.forEach((vt=>{if(this.checkNode(vt),bt[vt.id])throw new ho.e6("Duplicate node "+vt.id);bt[vt.id]=vt})),vt.forEach((vt=>{this.__checkLinks(vt,bt),vt.links.forEach((vt=>{le[vt.nodeId]=!0}))})),vt.forEach((vt=>{le[vt.id]||ho.Wp.logWarn("Node "+vt.id+" is never linked to")})),this.nodes=bt}updateNode(vt){if(!vt.id)throw new ho.e6("No id given for node");const bt=this.nodes[vt.id];if(!bt)throw new ho.e6("Node "+vt.id+" does not exist");return Object.assign(bt,vt),this.checkNode(bt),this.__checkLinks(bt,this.nodes),bt}__checkLinks(vt,bt){vt.links.forEach((le=>{if(!bt[le.nodeId])throw new ho.e6("Target node "+le.nodeId+" of node "+vt.id+" does not exists");le.gps=le.gps||bt[le.nodeId].gps,this.checkLink(vt,le)}))}},tm=class extends $d{constructor(vt,bt){if(super(vt,bt),!vt.config.getNode)throw new ho.e6("Missing getNode() option.");this.nodeResolver=vt.config.getNode}async loadNode(vt){if(this.nodes[vt])return this.nodes[vt];{const bt=await this.nodeResolver(vt);return this.checkNode(bt),bt.links.forEach((vt=>{this.checkLink(bt,vt)})),this.nodes[vt]=bt,bt}}clearCache(){this.nodes={}}};function gpsToSpherical(vt,bt){var le,ls;const Dl=gpsDegToRad(vt),Fl=gpsDegToRad(bt),sc=null!=(le=vt[2])?le:0,uc=null!=(ls=bt[2])?ls:0;let mc=0;sc!==uc&&(mc=Math.atan((uc-sc)/function(vt,bt){return 6371e3*ho.Wp.greatArcDistance(vt,bt)}(Dl,Fl)));const gc=function(vt,bt){const[le,ls]=vt,[ho,Dl]=bt,Fl=Math.sin(ho-le)*Math.cos(Dl),sc=Math.cos(ls)*Math.sin(Dl)-Math.sin(ls)*Math.cos(Dl)*Math.cos(ho-le);return Math.atan2(Fl,sc)}(Dl,Fl);return{yaw:gc,pitch:mc}}function gpsDegToRad(vt){return[Dl.cj9.degToRad(vt[0]),Dl.cj9.degToRad(vt[1])]}var em=ho.Wp.getConfigParser({dataMode:"client",positionMode:"manual",renderMode:"3d",nodes:null,getNode:null,startNodeId:null,preload:!1,transitionOptions:{showLoader:!0,speed:"20rpm",effect:"fade",rotation:!0},linksOnCompass:!0,showLinkTooltip:!0,getLinkTooltip:null,arrowStyle:Xd,arrowsPosition:{minPitch:.3,maxPitch:Math.PI/2,linkOverlapAngle:Math.PI/4,linkPitchOffset:-.1},map:null},{dataMode(vt){if("client"!==vt&&"server"!==vt)throw new ho.e6("VirtualTourPlugin: invalid dataMode");return vt},positionMode(vt){if("gps"!==vt&&"manual"!==vt)throw new ho.e6("VirtualTourPlugin: invalid positionMode");return vt},renderMode(vt){if("3d"!==vt&&"2d"!==vt)throw new ho.e6("VirtualTourPlugin: invalid renderMode");return vt},arrowsPosition(vt,bt){let{defValue:le}=bt;return(0,ls.A)({},le,vt)},arrowStyle(vt,bt){let{defValue:le}=bt;return(0,ls.A)({},le,vt)},map(vt,bt){let{rawConfig:le}=bt;if(vt){if("server"===le.dataMode)return ho.Wp.logWarn("VirtualTourPlugin: The map cannot be used in server side mode"),null;if(!vt.imageUrl)return ho.Wp.logWarn('VirtualTourPlugin: configuring the map requires at least "imageUrl"'),null;"recenter"in vt||(vt.recenter=!0)}return vt}}),im=class _VirtualTourPlugin extends ho.TL{constructor(vt,bt){super(vt,bt),this.state={currentNode:null,currentTooltip:null,loadingNode:null,preload:{}},this.arrowsRenderer=new Jd(this.viewer,this)}get is3D(){return"3d"===this.config.renderMode}get isServerSide(){return"server"===this.config.dataMode}get isGps(){return"gps"===this.config.positionMode}static withConfig(vt){return[_VirtualTourPlugin,vt]}init(){var vt,bt;super.init(),this.arrowsRenderer.init(),ho.Wp.checkStylesheet(this.viewer.container,"virtual-tour-plugin"),this.markers=this.viewer.getPlugin("markers"),this.compass=this.viewer.getPlugin("compass"),null!=(vt=this.markers)&&vt.config.markers&&(ho.Wp.logWarn("No default markers can be configured on the MarkersPlugin when using the VirtualTourPlugin. Consider defining `markers` on each tour node."),delete this.markers.config.markers),this.isGps&&(this.plan=this.viewer.getPlugin("plan")),this.isServerSide||(this.gallery=this.viewer.getPlugin("gallery"),this.map=this.viewer.getPlugin("map"),this.config.map&&!this.map&&ho.Wp.logWarn("The map is configured on the VirtualTourPlugin but the MapPlugin is not loaded.")),this.datasource=this.isServerSide?new tm(this,this.viewer):new sp(this,this.viewer),this.map&&(this.map.addEventListener("select-hotspot",this),this.map.setImage(this.config.map.imageUrl)),null==(bt=this.plan)||bt.addEventListener("select-hotspot",this),this.isServerSide?this.config.startNodeId&&this.setCurrentNode(this.config.startNodeId):this.config.nodes&&(this.setNodes(this.config.nodes,this.config.startNodeId),delete this.config.nodes)}destroy(){var vt,bt;null==(vt=this.map)||vt.removeEventListener("select-hotspot",this),null==(bt=this.plan)||bt.removeEventListener("select-hotspot",this),this.datasource.destroy(),this.arrowsRenderer.destroy(),delete this.datasource,delete this.markers,delete this.compass,delete this.gallery,delete this.arrowsRenderer,super.destroy()}handleEvent(vt){if(vt instanceof ho.AZ.ClickEvent){var bt;const le=null==(bt=vt.data.objects.find((vt=>vt.userData[Zd])))?void 0:bt.userData[Zd];le&&this.setCurrentNode(le.nodeId,null,le)}else if("select-hotspot"===vt.type){const bt=vt.hotspotId;bt.startsWith(Yd)&&this.setCurrentNode(bt.substring(13))}}getCurrentNode(){return this.state.currentNode}setNodes(vt,bt){if(this.isServerSide)throw new ho.e6("Cannot set nodes in server side mode");this.__hideTooltip(),this.state.currentNode=null,this.datasource.setNodes(vt),bt?this.datasource.nodes[bt]||(bt=vt[0].id,ho.Wp.logWarn("startNodeId not found is provided nodes, resetted to "+bt)):bt=vt[0].id,this.setCurrentNode(bt),this.__setGalleryItems(),this.__setMapHotspots(),this.__setPlanHotspots()}setCurrentNode(vt,bt,le){var Dl;if(vt===(null==(Dl=this.state.currentNode)?void 0:Dl.id)&&(null==bt||!bt.forceUpdate))return Promise.resolve(!0);null!=bt&&bt.forceUpdate&&this.isServerSide&&this.datasource.clearCache(),this.viewer.hideError(),this.state.loadingNode=vt;const Fl=this.state.currentNode,sc=Fl&&le?this.__getLinkPosition(Fl,le):null;return Promise.resolve(this.state.preload[vt]).then((()=>{if(this.state.loadingNode!==vt)throw ho.Wp.getAbortError();return this.datasource.loadNode(vt)})).then((Dl=>{var uc,mc,gc;if(this.state.loadingNode!==vt)throw ho.Wp.getAbortError();const Ac=(0,ls.A)({},em.defaults.transitionOptions,{rotateTo:sc,zoomTo:sc?this.viewer.getZoomLevel():null},"function"===typeof this.config.transitionOptions?this.config.transitionOptions(Dl,Fl,le):this.config.transitionOptions,bt);return Ac.effect||(Ac.effect="none"),this.viewer.panel.hide("description"),this.__hideTooltip(),this.arrowsRenderer.clear(),null!=(uc=this.gallery)&&uc.config.hideOnClick&&this.gallery.hide(),null!=(mc=this.map)&&mc.config.minimizeOnHotspotClick&&this.map.minimize(),null!=(gc=this.plan)&&gc.config.minimizeOnHotspotClick&&this.plan.minimize(),Ac.rotation&&"none"===Ac.effect?this.viewer.animate((0,ls.A)({},Ac.rotateTo,{zoom:Ac.zoomTo,speed:Ac.speed})).then((()=>[Dl,Ac])):Promise.resolve([Dl,Ac])})).then((bt=>{var le;let[ls,Dl]=bt;if(this.state.loadingNode!==vt)throw ho.Wp.getAbortError();var Fl;(null==(le=this.markers)||le.clearMarkers(),this.config.linksOnCompass)&&(null==(Fl=this.compass)||Fl.clearHotspots());return this.viewer.setPanorama(ls.panorama,{caption:ls.caption,description:ls.description,panoData:ls.panoData,sphereCorrection:ls.sphereCorrection,showLoader:Dl.showLoader,position:Dl.rotateTo,zoom:Dl.zoomTo,transition:"none"!==Dl.effect&&{effect:Dl.effect,rotation:Dl.rotation,speed:Dl.speed}}).then((vt=>{if(!vt)throw ho.Wp.getAbortError();return ls}))})).then((bt=>{var ls,Dl;if(this.state.loadingNode!==vt)throw ho.Wp.getAbortError();(this.state.currentNode=bt,this.map)&&this.map.setCenter(null!=(Dl=this.__getNodeMapPosition(bt))?Dl:this.map.config.center,this.config.map.recenter);return null==(ls=this.plan)||ls.setCoordinates(bt.gps),this.__addNodeMarkers(bt),this.__renderLinks(bt),this.__preload(bt),this.state.loadingNode=null,this.dispatchEvent(new uc(bt,{fromNode:Fl,fromLink:le,fromLinkPosition:sc})),this.viewer.resetIdleTimer(),!0})).catch((vt=>{if(ho.Wp.isAbortError(vt))return!1;throw this.viewer.showError(this.viewer.config.lang.loadError),this.viewer.loader.hide(),this.viewer.navbar.setCaption(""),this.state.loadingNode=null,vt}))}async gotoLink(vt,bt){void 0===bt&&(bt="8rpm");const le=this.getLinkPosition(vt);bt?await this.viewer.animate((0,ls.A)({},le,{speed:bt})):this.viewer.rotate(le)}getLinkPosition(vt){var bt;const le=null==(bt=this.state.currentNode)?void 0:bt.links.find((bt=>bt.nodeId===vt));if(!le)throw new ho.e6('Cannot find link "'+vt+'"');return this.__getLinkPosition(this.state.currentNode,le)}updateNode(vt){var bt;if(this.isServerSide)throw new ho.e6("Cannot update node in server side mode");const le=this.datasource.updateNode(vt);if((vt.name||vt.thumbnail||vt.panorama)&&this.__setGalleryItems(),(vt.name||vt.gps||vt.map)&&this.__setMapHotspots(),(vt.name||vt.gps||vt.plan)&&this.__setPlanHotspots(),(null==(bt=this.state.currentNode)?void 0:bt.id)===le.id){if(this.__hideTooltip(),vt.panorama||vt.panoData||vt.sphereCorrection)return void this.setCurrentNode(le.id,{forceUpdate:!0});var ls,Dl;if(vt.caption&&this.viewer.setOption("caption",le.caption),vt.description&&this.viewer.setOption("description",le.description),(vt.links||vt.gps)&&this.__renderLinks(le),vt.gps)null==(ls=this.plan)||ls.setCoordinates(le.gps);if(vt.map||vt.gps)null==(Dl=this.map)||Dl.setCenter(this.__getNodeMapPosition(le));(vt.markers||vt.gps)&&this.__addNodeMarkers(le)}}__setGalleryItems(){this.gallery&&this.gallery.setItems(Object.values(this.datasource.nodes).filter((vt=>!1!==vt.showInGallery)).map((vt=>({id:vt.id,panorama:vt.panorama,name:vt.name,thumbnail:vt.thumbnail}))),(vt=>{this.setCurrentNode(vt)}))}__setMapHotspots(){this.map&&this.map.setHotspots(Object.values(this.datasource.nodes).filter((vt=>!1!==vt.map)).map((vt=>(0,ls.A)({tooltip:vt.name},vt.map||{},this.__getNodeMapPosition(vt),{id:Yd+vt.id}))))}__setPlanHotspots(){this.plan&&this.plan.setHotspots(Object.values(this.datasource.nodes).filter((vt=>!1!==vt.plan)).map((vt=>(0,ls.A)({tooltip:vt.name},vt.plan||{},{coordinates:vt.gps,id:Yd+vt.id}))))}__renderLinks(vt){this.arrowsRenderer.clear();const bt=[];var le;(vt.links.forEach((le=>{var ls,ho,Dl,Fl,sc;const uc=this.__getLinkPosition(vt,le);uc.yaw+=null!=(ls=null==(ho=le.linkOffset)?void 0:ho.yaw)?ls:0,uc.pitch+=null!=(Dl=null==(Fl=le.linkOffset)?void 0:Fl.pitch)?Dl:0,this.isGps&&!this.is3D&&(uc.pitch+=this.config.arrowsPosition.linkPitchOffset),bt.push(uc),this.arrowsRenderer.addLinkArrow(le,uc,null==(sc=le.linkOffset)?void 0:sc.depth)})),this.arrowsRenderer.render(),this.config.linksOnCompass)&&(null==(le=this.compass)||le.setHotspots(bt))}__getLinkPosition(vt,bt){return this.isGps?gpsToSpherical(vt.gps,bt.gps):this.viewer.dataHelper.cleanPosition(bt.position)}async __getTooltipContent(vt){const bt=await this.datasource.loadNode(vt.nodeId),le=[];(bt.name||bt.thumbnail||bt.caption)&&(bt.name&&le.push("<h3>"+bt.name+"</h3>"),bt.thumbnail&&le.push('<img src="'+bt.thumbnail+'">'),bt.caption&&le.push("<p>"+bt.caption+"</p>"));let ls=le.join("");return this.config.getLinkTooltip&&(ls=this.config.getLinkTooltip(ls,vt,bt)),ls}__onEnterArrow(vt,bt){var le,Dl;const Fl=ho.Wp.getPosition(this.viewer.container),sc={x:bt.clientX-Fl.x,y:bt.clientY-Fl.y};this.config.showLinkTooltip&&(this.state.currentTooltip=this.viewer.createTooltip((0,ls.A)({},Qd,{left:sc.x,top:sc.y,box:{width:20,height:20}})),this.__getTooltipContent(vt).then((vt=>{vt?this.state.currentTooltip.update(vt):this.__hideTooltip()}))),null==(le=this.map)||le.setActiveHotspot(Yd+vt.nodeId),null==(Dl=this.plan)||Dl.setActiveHotspot(Yd+vt.nodeId),this.dispatchEvent(new gc(vt,this.state.currentNode))}__onHoverArrow(vt){var bt;const le=ho.Wp.getPosition(this.viewer.container),ls={x:vt.clientX-le.x,y:vt.clientY-le.y};null==(bt=this.state.currentTooltip)||bt.move({left:ls.x,top:ls.y})}__onLeaveArrow(vt){var bt,le;this.__hideTooltip(),null==(bt=this.map)||bt.setActiveHotspot(null),null==(le=this.plan)||le.setActiveHotspot(null),this.dispatchEvent(new Ec(vt,this.state.currentNode))}__hideTooltip(){var vt;null==(vt=this.state.currentTooltip)||vt.hide(),this.state.currentTooltip=null}__preload(vt){this.config.preload&&(this.state.preload[vt.id]=!0,this.state.currentNode.links.filter((vt=>!this.state.preload[vt.nodeId])).filter((vt=>"function"!==typeof this.config.preload||this.config.preload(this.state.currentNode,vt))).forEach((vt=>{this.state.preload[vt.nodeId]=this.datasource.loadNode(vt.nodeId).then((vt=>this.viewer.textureLoader.preloadPanorama(vt.panorama))).then((()=>{this.state.preload[vt.nodeId]=!0})).catch((()=>{delete this.state.preload[vt.nodeId]}))})))}__addNodeMarkers(vt){vt.markers&&(this.markers?this.markers.setMarkers(vt.markers.map((bt=>{var le,ls;bt.gps&&this.isGps&&(bt.position=gpsToSpherical(vt.gps,bt.gps),null!=(le=bt.data)&&le.map&&Object.assign(bt.data.map,this.__getGpsMapPosition(bt.gps)),null!=(ls=bt.data)&&ls.plan&&(bt.data.plan.coordinates=bt.gps));return bt}))):ho.Wp.logWarn("Node "+vt.id+" markers ignored because the plugin is not loaded."))}__getNodeMapPosition(vt){const bt=this.__getGpsMapPosition(vt.gps);return bt||(vt.map?{x:vt.map.x,y:vt.map.y}:null)}__getGpsMapPosition(vt){const bt=this.config.map;return this.isGps&&bt&&bt.extent&&bt.size?{x:Dl.cj9.mapLinear(vt[0],bt.extent[0],bt.extent[2],0,bt.size.width),y:Dl.cj9.mapLinear(vt[1],bt.extent[1],bt.extent[3],0,bt.size.height)}:null}};im.id="virtual-tour",im.VERSION="5.14.1",im.configParser=em,im.readonlyOptions=Object.keys(em.defaults);var nm=im},3336:(vt,bt,le)=>{"use strict";le.d(bt,{Rq:()=>decompressSync});var ls=Uint8Array,ho=Uint16Array,Dl=Int32Array,Fl=new ls([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),sc=new ls([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),uc=new ls([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),freb=function(vt,bt){for(var le=new ho(31),ls=0;ls<31;++ls)le[ls]=bt+=1<<vt[ls-1];var Fl=new Dl(le[30]);for(ls=1;ls<30;++ls)for(var sc=le[ls];sc<le[ls+1];++sc)Fl[sc]=sc-le[ls]<<5|ls;return{b:le,r:Fl}},mc=freb(Fl,2),gc=mc.b,Ac=mc.r;gc[28]=258,Ac[258]=28;for(var Ec=freb(sc,0),kc=Ec.b,du=(Ec.r,new ho(32768)),_u=0;_u<32768;++_u){var Md=(43690&_u)>>1|(21845&_u)<<1;Md=(61680&(Md=(52428&Md)>>2|(13107&Md)<<2))>>4|(3855&Md)<<4,du[_u]=((65280&Md)>>8|(255&Md)<<8)>>1}var hMap=function(vt,bt,le){for(var ls=vt.length,Dl=0,Fl=new ho(bt);Dl<ls;++Dl)vt[Dl]&&++Fl[vt[Dl]-1];var sc,uc=new ho(bt);for(Dl=1;Dl<bt;++Dl)uc[Dl]=uc[Dl-1]+Fl[Dl-1]<<1;if(le){sc=new ho(1<<bt);var mc=15-bt;for(Dl=0;Dl<ls;++Dl)if(vt[Dl])for(var gc=Dl<<4|vt[Dl],Ac=bt-vt[Dl],Ec=uc[vt[Dl]-1]++<<Ac,kc=Ec|(1<<Ac)-1;Ec<=kc;++Ec)sc[du[Ec]>>mc]=gc}else for(sc=new ho(ls),Dl=0;Dl<ls;++Dl)vt[Dl]&&(sc[Dl]=du[uc[vt[Dl]-1]++]>>15-vt[Dl]);return sc},Ld=new ls(288);for(_u=0;_u<144;++_u)Ld[_u]=8;for(_u=144;_u<256;++_u)Ld[_u]=9;for(_u=256;_u<280;++_u)Ld[_u]=7;for(_u=280;_u<288;++_u)Ld[_u]=8;var Nd=new ls(32);for(_u=0;_u<32;++_u)Nd[_u]=5;var Rd=hMap(Ld,9,1),Od=hMap(Nd,5,1),max=function(vt){for(var bt=vt[0],le=1;le<vt.length;++le)vt[le]>bt&&(bt=vt[le]);return bt},bits=function(vt,bt,le){var ls=bt/8|0;return(vt[ls]|vt[ls+1]<<8)>>(7&bt)&le},bits16=function(vt,bt){var le=bt/8|0;return(vt[le]|vt[le+1]<<8|vt[le+2]<<16)>>(7&bt)},shft=function(vt){return(vt+7)/8|0},slc=function(vt,bt,le){return(null==bt||bt<0)&&(bt=0),(null==le||le>vt.length)&&(le=vt.length),new ls(vt.subarray(bt,le))},jd=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],err=function(vt,bt,le){var ls=new Error(bt||jd[vt]);if(ls.code=vt,Error.captureStackTrace&&Error.captureStackTrace(ls,err),!le)throw ls;return ls},inflt=function(vt,bt,le,ho){var Dl=vt.length,mc=ho?ho.length:0;if(!Dl||bt.f&&!bt.l)return le||new ls(0);var Ac=!le,Ec=Ac||2!=bt.i,du=bt.i;Ac&&(le=new ls(3*Dl));var cbuf=function(vt){var bt=le.length;if(vt>bt){var ho=new ls(Math.max(2*bt,vt));ho.set(le),le=ho}},_u=bt.f||0,Md=bt.p||0,Ld=bt.b||0,Nd=bt.l,jd=bt.d,Ud=bt.m,Gd=bt.n,qd=8*Dl;do{if(!Nd){_u=bits(vt,Md,1);var Hd=bits(vt,Md+1,3);if(Md+=3,!Hd){var Wd=vt[(im=shft(Md)+4)-4]|vt[im-3]<<8,Zd=im+Wd;if(Zd>Dl){du&&err(0);break}Ec&&cbuf(Ld+Wd),le.set(vt.subarray(im,Zd),Ld),bt.b=Ld+=Wd,bt.p=Md=8*Zd,bt.f=_u;continue}if(1==Hd)Nd=Rd,jd=Od,Ud=9,Gd=5;else if(2==Hd){var Yd=bits(vt,Md,31)+257,Qd=bits(vt,Md+10,15)+4,Xd=Yd+bits(vt,Md+5,31)+1;Md+=14;for(var Kd=new ls(Xd),Jd=new ls(19),$d=0;$d<Qd;++$d)Jd[uc[$d]]=bits(vt,Md+3*$d,7);Md+=3*Qd;var sp=max(Jd),tm=(1<<sp)-1,em=hMap(Jd,sp,1);for($d=0;$d<Xd;){var im,nm=em[bits(vt,Md,tm)];if(Md+=15&nm,(im=nm>>4)<16)Kd[$d++]=im;else{var rm=0,am=0;for(16==im?(am=3+bits(vt,Md,3),Md+=2,rm=Kd[$d-1]):17==im?(am=3+bits(vt,Md,7),Md+=3):18==im&&(am=11+bits(vt,Md,127),Md+=7);am--;)Kd[$d++]=rm}}var sm=Kd.subarray(0,Yd),om=Kd.subarray(Yd);Ud=max(sm),Gd=max(om),Nd=hMap(sm,Ud,1),jd=hMap(om,Gd,1)}else err(1);if(Md>qd){du&&err(0);break}}Ec&&cbuf(Ld+131072);for(var lm=(1<<Ud)-1,cm=(1<<Gd)-1,um=Md;;um=Md){var hm=(rm=Nd[bits16(vt,Md)&lm])>>4;if((Md+=15&rm)>qd){du&&err(0);break}if(rm||err(2),hm<256)le[Ld++]=hm;else{if(256==hm){um=Md,Nd=null;break}var dm=hm-254;if(hm>264){var pm=Fl[$d=hm-257];dm=bits(vt,Md,(1<<pm)-1)+gc[$d],Md+=pm}var mm=jd[bits16(vt,Md)&cm],fm=mm>>4;mm||err(3),Md+=15&mm;om=kc[fm];if(fm>3){pm=sc[fm];om+=bits16(vt,Md)&(1<<pm)-1,Md+=pm}if(Md>qd){du&&err(0);break}Ec&&cbuf(Ld+131072);var gm=Ld+dm;if(Ld<om){var Am=mc-om,_m=Math.min(om,gm);for(Am+Ld<0&&err(3);Ld<_m;++Ld)le[Ld]=ho[Am+Ld]}for(;Ld<gm;++Ld)le[Ld]=le[Ld-om]}}bt.l=Nd,bt.p=um,bt.b=Ld,bt.f=_u,Nd&&(_u=1,bt.m=Ud,bt.d=jd,bt.n=Gd)}while(!_u);return Ld!=le.length&&Ac?slc(le,0,Ld):le.subarray(0,Ld)},Ud=new ls(0),gzs=function(vt){31==vt[0]&&139==vt[1]&&8==vt[2]||err(6,"invalid gzip data");var bt=vt[3],le=10;4&bt&&(le+=2+(vt[10]|vt[11]<<8));for(var ls=(bt>>3&1)+(bt>>4&1);ls>0;ls-=!vt[le++]);return le+(2&bt)},gzl=function(vt){var bt=vt.length;return(vt[bt-4]|vt[bt-3]<<8|vt[bt-2]<<16|vt[bt-1]<<24)>>>0},zls=function(vt,bt){return(8!=(15&vt[0])||vt[0]>>4>7||(vt[0]<<8|vt[1])%31)&&err(6,"invalid zlib data"),(vt[1]>>5&1)==+!bt&&err(6,"invalid zlib data: "+(32&vt[1]?"need":"unexpected")+" dictionary"),2+(vt[1]>>3&4)};function inflateSync(vt,bt){return inflt(vt,{i:2},bt&&bt.out,bt&&bt.dictionary)}function gunzipSync(vt,bt){var le=gzs(vt);return le+8>vt.length&&err(6,"invalid gzip data"),inflt(vt.subarray(le,-8),{i:2},bt&&bt.out||new ls(gzl(vt)),bt&&bt.dictionary)}function unzlibSync(vt,bt){return inflt(vt.subarray(zls(vt,bt&&bt.dictionary),-4),{i:2},bt&&bt.out,bt&&bt.dictionary)}function decompressSync(vt,bt){return 31==vt[0]&&139==vt[1]&&8==vt[2]?gunzipSync(vt,bt):8!=(15&vt[0])||vt[0]>>4>7||(vt[0]<<8|vt[1])%31?inflateSync(vt,bt):unzlibSync(vt,bt)}var Gd="undefined"!=typeof TextDecoder&&new TextDecoder;try{Gd.decode(Ud,{stream:!0})}catch(qd){}"function"==typeof queueMicrotask?queueMicrotask:"function"==typeof setTimeout&&setTimeout},2614:function(vt){vt.exports=function(){"use strict";function createCommonjsModule(vt,bt){return vt(bt={exports:{}},bt.exports),bt.exports}var vt=createCommonjsModule((function(vt){var bt=vt.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=bt)})),bt=createCommonjsModule((function(vt){var bt=vt.exports={version:"2.6.5"};"number"==typeof __e&&(__e=bt)})),le=(bt.version,function(vt){return"object"===typeof vt?null!==vt:"function"===typeof vt}),_anObject=function(vt){if(!le(vt))throw TypeError(vt+" is not an object!");return vt},_fails=function(vt){try{return!!vt()}catch(bt){return!0}},ls=!_fails((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})),ho=vt.document,Dl=le(ho)&&le(ho.createElement),_domCreate=function(vt){return Dl?ho.createElement(vt):{}},Fl=!ls&&!_fails((function(){return 7!=Object.defineProperty(_domCreate("div"),"a",{get:function(){return 7}}).a})),_toPrimitive=function(vt,bt){if(!le(vt))return vt;var ls,ho;if(bt&&"function"==typeof(ls=vt.toString)&&!le(ho=ls.call(vt)))return ho;if("function"==typeof(ls=vt.valueOf)&&!le(ho=ls.call(vt)))return ho;if(!bt&&"function"==typeof(ls=vt.toString)&&!le(ho=ls.call(vt)))return ho;throw TypeError("Can't convert object to primitive value")},sc=Object.defineProperty,uc={f:ls?Object.defineProperty:function(vt,bt,le){if(_anObject(vt),bt=_toPrimitive(bt,!0),_anObject(le),Fl)try{return sc(vt,bt,le)}catch(ls){}if("get"in le||"set"in le)throw TypeError("Accessors not supported!");return"value"in le&&(vt[bt]=le.value),vt}},_propertyDesc=function(vt,bt){return{enumerable:!(1&vt),configurable:!(2&vt),writable:!(4&vt),value:bt}},mc=ls?function(vt,bt,le){return uc.f(vt,bt,_propertyDesc(1,le))}:function(vt,bt,le){return vt[bt]=le,vt},gc={}.hasOwnProperty,_has=function(vt,bt){return gc.call(vt,bt)},Ac=0,Ec=Math.random(),_uid=function(vt){return"Symbol(".concat(void 0===vt?"":vt,")_",(++Ac+Ec).toString(36))},kc=!1,du=createCommonjsModule((function(le){var ls="__core-js_shared__",ho=vt[ls]||(vt[ls]={});(le.exports=function(vt,bt){return ho[vt]||(ho[vt]=void 0!==bt?bt:{})})("versions",[]).push({version:bt.version,mode:kc?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})})),_u=du("native-function-to-string",Function.toString),Md=createCommonjsModule((function(le){var ls=_uid("src"),ho="toString",Dl=(""+_u).split(ho);bt.inspectSource=function(vt){return _u.call(vt)},(le.exports=function(bt,le,ho,Fl){var sc="function"==typeof ho;sc&&(_has(ho,"name")||mc(ho,"name",le)),bt[le]!==ho&&(sc&&(_has(ho,ls)||mc(ho,ls,bt[le]?""+bt[le]:Dl.join(String(le)))),bt===vt?bt[le]=ho:Fl?bt[le]?bt[le]=ho:mc(bt,le,ho):(delete bt[le],mc(bt,le,ho)))})(Function.prototype,ho,(function(){return"function"==typeof this&&this[ls]||_u.call(this)}))})),_aFunction=function(vt){if("function"!=typeof vt)throw TypeError(vt+" is not a function!");return vt},_ctx=function(vt,bt,le){if(_aFunction(vt),void 0===bt)return vt;switch(le){case 1:return function(le){return vt.call(bt,le)};case 2:return function(le,ls){return vt.call(bt,le,ls)};case 3:return function(le,ls,ho){return vt.call(bt,le,ls,ho)}}return function(){return vt.apply(bt,arguments)}},Ld="prototype",$export=function(le,ls,ho){var Dl,Fl,sc,uc,gc=le&$export.F,Ac=le&$export.G,Ec=le&$export.S,kc=le&$export.P,du=le&$export.B,_u=Ac?vt:Ec?vt[ls]||(vt[ls]={}):(vt[ls]||{})[Ld],Nd=Ac?bt:bt[ls]||(bt[ls]={}),Rd=Nd[Ld]||(Nd[Ld]={});for(Dl in Ac&&(ho=ls),ho)sc=((Fl=!gc&&_u&&void 0!==_u[Dl])?_u:ho)[Dl],uc=du&&Fl?_ctx(sc,vt):kc&&"function"==typeof sc?_ctx(Function.call,sc):sc,_u&&Md(_u,Dl,sc,le&$export.U),Nd[Dl]!=sc&&mc(Nd,Dl,uc),kc&&Rd[Dl]!=sc&&(Rd[Dl]=sc)};vt.core=bt,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128;var Nd,Rd=$export,Od=Math.ceil,jd=Math.floor,_toInteger=function(vt){return isNaN(vt=+vt)?0:(vt>0?jd:Od)(vt)},_defined=function(vt){if(void 0==vt)throw TypeError("Can't call method on "+vt);return vt},Ud=(Nd=!1,function(vt,bt){var le,ls,ho=String(_defined(vt)),Dl=_toInteger(bt),Fl=ho.length;return Dl<0||Dl>=Fl?Nd?"":void 0:(le=ho.charCodeAt(Dl))<55296||le>56319||Dl+1===Fl||(ls=ho.charCodeAt(Dl+1))<56320||ls>57343?Nd?ho.charAt(Dl):le:Nd?ho.slice(Dl,Dl+2):ls-56320+(le-55296<<10)+65536});Rd(Rd.P,"String",{codePointAt:function(vt){return Ud(this,vt)}}),bt.String.codePointAt;var Gd=Math.max,qd=Math.min,_toAbsoluteIndex=function(vt,bt){return(vt=_toInteger(vt))<0?Gd(vt+bt,0):qd(vt,bt)},Hd=String.fromCharCode,Wd=String.fromCodePoint;Rd(Rd.S+Rd.F*(!!Wd&&1!=Wd.length),"String",{fromCodePoint:function(vt){for(var bt,le=arguments,ls=[],ho=arguments.length,Dl=0;ho>Dl;){if(bt=+le[Dl++],_toAbsoluteIndex(bt,1114111)!==bt)throw RangeError(bt+" is not a valid code point");ls.push(bt<65536?Hd(bt):Hd(55296+((bt-=65536)>>10),bt%1024+56320))}return ls.join("")}}),bt.String.fromCodePoint;var Zd,Yd,Qd,Xd,Kd,Jd,$d,sp,tm,em,im,nm,rm,am,sm={Space_Separator:/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,ID_Start:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,ID_Continue:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},om={isSpaceSeparator:function(vt){return"string"===typeof vt&&sm.Space_Separator.test(vt)},isIdStartChar:function(vt){return"string"===typeof vt&&(vt>="a"&&vt<="z"||vt>="A"&&vt<="Z"||"$"===vt||"_"===vt||sm.ID_Start.test(vt))},isIdContinueChar:function(vt){return"string"===typeof vt&&(vt>="a"&&vt<="z"||vt>="A"&&vt<="Z"||vt>="0"&&vt<="9"||"$"===vt||"_"===vt||"\u200c"===vt||"\u200d"===vt||sm.ID_Continue.test(vt))},isDigit:function(vt){return"string"===typeof vt&&/[0-9]/.test(vt)},isHexDigit:function(vt){return"string"===typeof vt&&/[0-9A-Fa-f]/.test(vt)}},parse=function(vt,bt){Zd=String(vt),Yd="start",Qd=[],Xd=0,Kd=1,Jd=0,$d=void 0,sp=void 0,tm=void 0;do{$d=lex(),cm[Yd]()}while("eof"!==$d.type);return"function"===typeof bt?internalize({"":tm},"",bt):tm};function internalize(vt,bt,le){var ls=vt[bt];if(null!=ls&&"object"===typeof ls)if(Array.isArray(ls))for(var ho=0;ho<ls.length;ho++){var Dl=String(ho),Fl=internalize(ls,Dl,le);void 0===Fl?delete ls[Dl]:Object.defineProperty(ls,Dl,{value:Fl,writable:!0,enumerable:!0,configurable:!0})}else for(var sc in ls){var uc=internalize(ls,sc,le);void 0===uc?delete ls[sc]:Object.defineProperty(ls,sc,{value:uc,writable:!0,enumerable:!0,configurable:!0})}return le.call(vt,bt,ls)}function lex(){for(em="default",im="",nm=!1,rm=1;;){am=peek();var vt=lm[em]();if(vt)return vt}}function peek(){if(Zd[Xd])return String.fromCodePoint(Zd.codePointAt(Xd))}function read(){var vt=peek();return"\n"===vt?(Kd++,Jd=0):vt?Jd+=vt.length:Jd++,vt&&(Xd+=vt.length),vt}var lm={default:function(){switch(am){case"\t":case"\v":case"\f":case" ":case"\xa0":case"\ufeff":case"\n":case"\r":case"\u2028":case"\u2029":return void read();case"/":return read(),void(em="comment");case void 0:return read(),newToken("eof")}if(!om.isSpaceSeparator(am))return lm[Yd]();read()},comment:function(){switch(am){case"*":return read(),void(em="multiLineComment");case"/":return read(),void(em="singleLineComment")}throw invalidChar(read())},multiLineComment:function(){switch(am){case"*":return read(),void(em="multiLineCommentAsterisk");case void 0:throw invalidChar(read())}read()},multiLineCommentAsterisk:function(){switch(am){case"*":return void read();case"/":return read(),void(em="default");case void 0:throw invalidChar(read())}read(),em="multiLineComment"},singleLineComment:function(){switch(am){case"\n":case"\r":case"\u2028":case"\u2029":return read(),void(em="default");case void 0:return read(),newToken("eof")}read()},value:function(){switch(am){case"{":case"[":return newToken("punctuator",read());case"n":return read(),literal("ull"),newToken("null",null);case"t":return read(),literal("rue"),newToken("boolean",!0);case"f":return read(),literal("alse"),newToken("boolean",!1);case"-":case"+":return"-"===read()&&(rm=-1),void(em="sign");case".":return im=read(),void(em="decimalPointLeading");case"0":return im=read(),void(em="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return im=read(),void(em="decimalInteger");case"I":return read(),literal("nfinity"),newToken("numeric",1/0);case"N":return read(),literal("aN"),newToken("numeric",NaN);case'"':case"'":return nm='"'===read(),im="",void(em="string")}throw invalidChar(read())},identifierNameStartEscape:function(){if("u"!==am)throw invalidChar(read());read();var vt=unicodeEscape();switch(vt){case"$":case"_":break;default:if(!om.isIdStartChar(vt))throw invalidIdentifier()}im+=vt,em="identifierName"},identifierName:function(){switch(am){case"$":case"_":case"\u200c":case"\u200d":return void(im+=read());case"\\":return read(),void(em="identifierNameEscape")}if(!om.isIdContinueChar(am))return newToken("identifier",im);im+=read()},identifierNameEscape:function(){if("u"!==am)throw invalidChar(read());read();var vt=unicodeEscape();switch(vt){case"$":case"_":case"\u200c":case"\u200d":break;default:if(!om.isIdContinueChar(vt))throw invalidIdentifier()}im+=vt,em="identifierName"},sign:function(){switch(am){case".":return im=read(),void(em="decimalPointLeading");case"0":return im=read(),void(em="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return im=read(),void(em="decimalInteger");case"I":return read(),literal("nfinity"),newToken("numeric",rm*(1/0));case"N":return read(),literal("aN"),newToken("numeric",NaN)}throw invalidChar(read())},zero:function(){switch(am){case".":return im+=read(),void(em="decimalPoint");case"e":case"E":return im+=read(),void(em="decimalExponent");case"x":case"X":return im+=read(),void(em="hexadecimal")}return newToken("numeric",0*rm)},decimalInteger:function(){switch(am){case".":return im+=read(),void(em="decimalPoint");case"e":case"E":return im+=read(),void(em="decimalExponent")}if(!om.isDigit(am))return newToken("numeric",rm*Number(im));im+=read()},decimalPointLeading:function(){if(om.isDigit(am))return im+=read(),void(em="decimalFraction");throw invalidChar(read())},decimalPoint:function(){switch(am){case"e":case"E":return im+=read(),void(em="decimalExponent")}return om.isDigit(am)?(im+=read(),void(em="decimalFraction")):newToken("numeric",rm*Number(im))},decimalFraction:function(){switch(am){case"e":case"E":return im+=read(),void(em="decimalExponent")}if(!om.isDigit(am))return newToken("numeric",rm*Number(im));im+=read()},decimalExponent:function(){switch(am){case"+":case"-":return im+=read(),void(em="decimalExponentSign")}if(om.isDigit(am))return im+=read(),void(em="decimalExponentInteger");throw invalidChar(read())},decimalExponentSign:function(){if(om.isDigit(am))return im+=read(),void(em="decimalExponentInteger");throw invalidChar(read())},decimalExponentInteger:function(){if(!om.isDigit(am))return newToken("numeric",rm*Number(im));im+=read()},hexadecimal:function(){if(om.isHexDigit(am))return im+=read(),void(em="hexadecimalInteger");throw invalidChar(read())},hexadecimalInteger:function(){if(!om.isHexDigit(am))return newToken("numeric",rm*Number(im));im+=read()},string:function(){switch(am){case"\\":return read(),void(im+=escape());case'"':return nm?(read(),newToken("string",im)):void(im+=read());case"'":return nm?void(im+=read()):(read(),newToken("string",im));case"\n":case"\r":throw invalidChar(read());case"\u2028":case"\u2029":separatorChar(am);break;case void 0:throw invalidChar(read())}im+=read()},start:function(){switch(am){case"{":case"[":return newToken("punctuator",read())}em="value"},beforePropertyName:function(){switch(am){case"$":case"_":return im=read(),void(em="identifierName");case"\\":return read(),void(em="identifierNameStartEscape");case"}":return newToken("punctuator",read());case'"':case"'":return nm='"'===read(),void(em="string")}if(om.isIdStartChar(am))return im+=read(),void(em="identifierName");throw invalidChar(read())},afterPropertyName:function(){if(":"===am)return newToken("punctuator",read());throw invalidChar(read())},beforePropertyValue:function(){em="value"},afterPropertyValue:function(){switch(am){case",":case"}":return newToken("punctuator",read())}throw invalidChar(read())},beforeArrayValue:function(){if("]"===am)return newToken("punctuator",read());em="value"},afterArrayValue:function(){switch(am){case",":case"]":return newToken("punctuator",read())}throw invalidChar(read())},end:function(){throw invalidChar(read())}};function newToken(vt,bt){return{type:vt,value:bt,line:Kd,column:Jd}}function literal(vt){for(var bt=0,le=vt;bt<le.length;bt+=1){var ls=le[bt];if(peek()!==ls)throw invalidChar(read());read()}}function escape(){switch(peek()){case"b":return read(),"\b";case"f":return read(),"\f";case"n":return read(),"\n";case"r":return read(),"\r";case"t":return read(),"\t";case"v":return read(),"\v";case"0":if(read(),om.isDigit(peek()))throw invalidChar(read());return"\0";case"x":return read(),hexEscape();case"u":return read(),unicodeEscape();case"\n":case"\u2028":case"\u2029":return read(),"";case"\r":return read(),"\n"===peek()&&read(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case void 0:throw invalidChar(read())}return read()}function hexEscape(){var vt="",bt=peek();if(!om.isHexDigit(bt))throw invalidChar(read());if(vt+=read(),bt=peek(),!om.isHexDigit(bt))throw invalidChar(read());return vt+=read(),String.fromCodePoint(parseInt(vt,16))}function unicodeEscape(){for(var vt="",bt=4;bt-- >0;){var le=peek();if(!om.isHexDigit(le))throw invalidChar(read());vt+=read()}return String.fromCodePoint(parseInt(vt,16))}var cm={start:function(){if("eof"===$d.type)throw invalidEOF();push()},beforePropertyName:function(){switch($d.type){case"identifier":case"string":return sp=$d.value,void(Yd="afterPropertyName");case"punctuator":return void pop();case"eof":throw invalidEOF()}},afterPropertyName:function(){if("eof"===$d.type)throw invalidEOF();Yd="beforePropertyValue"},beforePropertyValue:function(){if("eof"===$d.type)throw invalidEOF();push()},beforeArrayValue:function(){if("eof"===$d.type)throw invalidEOF();"punctuator"!==$d.type||"]"!==$d.value?push():pop()},afterPropertyValue:function(){if("eof"===$d.type)throw invalidEOF();switch($d.value){case",":return void(Yd="beforePropertyName");case"}":pop()}},afterArrayValue:function(){if("eof"===$d.type)throw invalidEOF();switch($d.value){case",":return void(Yd="beforeArrayValue");case"]":pop()}},end:function(){}};function push(){var vt;switch($d.type){case"punctuator":switch($d.value){case"{":vt={};break;case"[":vt=[]}break;case"null":case"boolean":case"numeric":case"string":vt=$d.value}if(void 0===tm)tm=vt;else{var bt=Qd[Qd.length-1];Array.isArray(bt)?bt.push(vt):Object.defineProperty(bt,sp,{value:vt,writable:!0,enumerable:!0,configurable:!0})}if(null!==vt&&"object"===typeof vt)Qd.push(vt),Yd=Array.isArray(vt)?"beforeArrayValue":"beforePropertyName";else{var le=Qd[Qd.length-1];Yd=null==le?"end":Array.isArray(le)?"afterArrayValue":"afterPropertyValue"}}function pop(){Qd.pop();var vt=Qd[Qd.length-1];Yd=null==vt?"end":Array.isArray(vt)?"afterArrayValue":"afterPropertyValue"}function invalidChar(vt){return syntaxError(void 0===vt?"JSON5: invalid end of input at "+Kd+":"+Jd:"JSON5: invalid character '"+formatChar(vt)+"' at "+Kd+":"+Jd)}function invalidEOF(){return syntaxError("JSON5: invalid end of input at "+Kd+":"+Jd)}function invalidIdentifier(){return syntaxError("JSON5: invalid identifier character at "+Kd+":"+(Jd-=5))}function separatorChar(vt){console.warn("JSON5: '"+formatChar(vt)+"' in strings is not valid ECMAScript; consider escaping")}function formatChar(vt){var bt={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(bt[vt])return bt[vt];if(vt<" "){var le=vt.charCodeAt(0).toString(16);return"\\x"+("00"+le).substring(le.length)}return vt}function syntaxError(vt){var bt=new SyntaxError(vt);return bt.lineNumber=Kd,bt.columnNumber=Jd,bt}return{parse:parse,stringify:function(vt,bt,le){var ls,ho,Dl,Fl=[],sc="",uc="";if(null==bt||"object"!==typeof bt||Array.isArray(bt)||(le=bt.space,Dl=bt.quote,bt=bt.replacer),"function"===typeof bt)ho=bt;else if(Array.isArray(bt)){ls=[];for(var mc=0,gc=bt;mc<gc.length;mc+=1){var Ac=gc[mc],Ec=void 0;"string"===typeof Ac?Ec=Ac:("number"===typeof Ac||Ac instanceof String||Ac instanceof Number)&&(Ec=String(Ac)),void 0!==Ec&&ls.indexOf(Ec)<0&&ls.push(Ec)}}return le instanceof Number?le=Number(le):le instanceof String&&(le=String(le)),"number"===typeof le?le>0&&(le=Math.min(10,Math.floor(le)),uc=" ".substr(0,le)):"string"===typeof le&&(uc=le.substr(0,10)),serializeProperty("",{"":vt});function serializeProperty(vt,bt){var le=bt[vt];switch(null!=le&&("function"===typeof le.toJSON5?le=le.toJSON5(vt):"function"===typeof le.toJSON&&(le=le.toJSON(vt))),ho&&(le=ho.call(bt,vt,le)),le instanceof Number?le=Number(le):le instanceof String?le=String(le):le instanceof Boolean&&(le=le.valueOf()),le){case null:return"null";case!0:return"true";case!1:return"false"}return"string"===typeof le?quoteString(le,!1):"number"===typeof le?String(le):"object"===typeof le?Array.isArray(le)?serializeArray(le):serializeObject(le):void 0}function quoteString(vt){for(var bt={"'":.1,'"':.2},le={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"},ls="",ho=0;ho<vt.length;ho++){var Fl=vt[ho];switch(Fl){case"'":case'"':bt[Fl]++,ls+=Fl;continue;case"\0":if(om.isDigit(vt[ho+1])){ls+="\\x00";continue}}if(le[Fl])ls+=le[Fl];else if(Fl<" "){var sc=Fl.charCodeAt(0).toString(16);ls+="\\x"+("00"+sc).substring(sc.length)}else ls+=Fl}var uc=Dl||Object.keys(bt).reduce((function(vt,le){return bt[vt]<bt[le]?vt:le}));return uc+(ls=ls.replace(new RegExp(uc,"g"),le[uc]))+uc}function serializeObject(vt){if(Fl.indexOf(vt)>=0)throw TypeError("Converting circular structure to JSON5");Fl.push(vt);var bt=sc;sc+=uc;for(var le,ho,Dl=[],mc=0,gc=ls||Object.keys(vt);mc<gc.length;mc+=1){var Ac=gc[mc],Ec=serializeProperty(Ac,vt);if(void 0!==Ec){var kc=serializeKey(Ac)+":";""!==uc&&(kc+=" "),kc+=Ec,Dl.push(kc)}}if(0===Dl.length)le="{}";else if(""===uc)le="{"+(ho=Dl.join(","))+"}";else{var du=",\n"+sc;ho=Dl.join(du),le="{\n"+sc+ho+",\n"+bt+"}"}return Fl.pop(),sc=bt,le}function serializeKey(vt){if(0===vt.length)return quoteString(vt,!0);var bt=String.fromCodePoint(vt.codePointAt(0));if(!om.isIdStartChar(bt))return quoteString(vt,!0);for(var le=bt.length;le<vt.length;le++)if(!om.isIdContinueChar(String.fromCodePoint(vt.codePointAt(le))))return quoteString(vt,!0);return vt}function serializeArray(vt){if(Fl.indexOf(vt)>=0)throw TypeError("Converting circular structure to JSON5");Fl.push(vt);var bt=sc;sc+=uc;for(var le,ls=[],ho=0;ho<vt.length;ho++){var Dl=serializeProperty(String(ho),vt);ls.push(void 0!==Dl?Dl:"null")}if(0===ls.length)le="[]";else if(""===uc)le="["+ls.join(",")+"]";else{var mc=",\n"+sc,gc=ls.join(mc);le="[\n"+sc+gc+",\n"+bt+"]"}return Fl.pop(),sc=bt,le}}}}()},1865:()=>{},3961:()=>{},2710:()=>{},1575:()=>{},1080:()=>{},6795:()=>{},3638:()=>{},7776:()=>{},7365:()=>{},970:()=>{},9616:()=>{},1870:()=>{},3041:()=>{},5003:()=>{},3630:()=>{},1811:()=>{},1230:()=>{},8407:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKCXZpZXdCb3g9IjAgMCA2NCA2NCIKCXdpZHRoPSI2NCIgaGVpZ2h0PSI2NCIKCXhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKCXhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aAoJZD0iTSAyNy4zNTk0ODYsMTIuNjU1MTMgMS40MzE2MzQ5LDQzLjQ5OTE3IGMgLTMuMjk5OTA4MiwzLjkwNjAxNCAtMC41Mzg3NjA0Niw5Ljk2NzA3IDQuNjQ2ODA5Nyw5Ljk2NzA3IEggNTcuOTM0MTQ2IGMgNS4xMTgyMjUsMCA3Ljk0NjcxOCwtNS45OTM3MTEgNC42NDY4MSwtOS45NjcwNyBMIDM2LjY1MzEwNSwxMi42NTUxMyBjIC0yLjQyNDQyMiwtMi44Mjg0OTMxIC02Ljg2OTE5NywtMi44Mjg0OTMxIC05LjI5MzYxOSwwIHoiCglzdHlsZT0iZmlsbDogY3VycmVudENvbG9yO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjY3MzQ1MSIgLz4KPC9zdmc+Cg=="},6830:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgdmlld0JveD0iMCAwIDY0IDE5MiIgd2lkdGg9IjY0IiBoZWlnaHQ9IjE5MiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZQoJY3g9IjMyIgoJY3k9IjMyIgoJcj0iMjkuODk3ODA2IgoJc3R5bGU9ImZpbGw6IGN1cnJlbnRDb2xvcjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6I2ZmZmZmZjtzdHJva2Utd2lkdGg6NC4yMDQzOTtzdHJva2UtbWl0ZXJsaW1pdDo0O3N0cm9rZS1kYXNoYXJyYXk6bm9uZTtzdHJva2Utb3BhY2l0eToxIiAvPgo8cGF0aCBkPSJtIDM0LjI3OTg3MywyMC4yNjIxNzEgNi43MTE0NDIsNi43MTQyOTQgYyAwLjg5MTQ2NSwwLjg5MTQ2NSAyLjMzOTk4NiwwLjg5MTQ2NSAzLjIzMTQ1MSwwIDAuODkxNDY2LC0wLjg5MTQ2NSAwLjg5MTQ2NiwtMi4zMzk5ODUgMCwtMy4yMzE0NSAtOS42NjI5MDIsLTkuNjY1ODI5IC0zLjc5NDI4NSwtMy43OTQyODYgLTguMTgwMjk3LC04LjE4MDI5OCAtMS4wNzEzOTYsLTEuMDc0MzIyIC0yLjUyNTY5NiwtMS42NzcxNjUgLTQuMDM5OTcyLC0xLjY3NzE2NSAtMS41MTcxMjksMCAtMi45Njg1NzYsMC42MDI4NTggLTQuMDQyODI1LDEuNjc3MTY1IGwgLTguMTgwMjk4LDguMTgwMjk4IGMgLTAuODk0MzE3LDAuODkxNDY1IC0wLjg5NDMxNywyLjMzOTk4NiAwLDMuMjMxNDUgMC44OTE0NjYsMC44OTE0NjUgMi4zMzk5ODcsMC44OTE0NjUgMy4yMzE0NTIsMCBsIDYuNjk3MTA2LC02LjY5NDI1MyB2IDI3LjcwMzk0MyBjIDAsMCAtMC4xMDk3MDYsMi4xMjYyOTIgMi4yODU5NzEsMi4xMjYyOTIgMi4zOTU2NzYsMCAyLjI4NTk3LC0yLjEyNjI5MiAyLjI4NTk3LC0yLjEyNjI5MiB6IiBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpldmVub2RkO3N0cm9rZS13aWR0aDowLjczMTQyOSIgLz4KPC9zdmc+Cg=="},7534:vt=>{"use strict";vt.exports="data:image/jpeg;base64,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"},6810:vt=>{"use strict";vt.exports="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9Pjv/2wBDAQoLCw4NDhwQEBw7KCIoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozv/wgARCABkAGQDAREAAhEBAxEB/8QAGQAAAwEBAQAAAAAAAAAAAAAAAAECAwQG/8QAGAEBAQEBAQAAAAAAAAAAAAAAAAECAwT/2gAMAwEAAhADEAAAAfSc9OxyuyJUBdiVoCHU5oI11Ms0AoQxACNSxS1ZMoiW7CR2qVASUSUTBQVJHmt+mK0FRGupGbVSgMIWD2lUKy5GuVA7NBZ1JRJViCGOoldhVISzLVjEoKHYxK0iUACrJlqyrJlmVkS3ZMOnYwJlC9ZpRBQEmClBa9Z594YyTq5dWkq0QUQ6RjchRK6Y0yVpM6aBqoZ5pVJMoaazlnVWTLdkShVhLEt6yR//xAAgEAACAQQDAQEBAAAAAAAAAAAAARECEBIhIjFCEyBB/9oACAEBAAEFAl2zspX4/knai6HaeN/J5l3hD70edW0edGsdGjVquzzfwefw4OJrEgg1jio1F32yqpUr6UxnShOR28/h7b6IWMI6HaHiu8mdmiDIycy8fx56JENWXZ5v/PN5RjSQiEajicTicSppUfSk+lJ9KY+tJkjJRkhRGjRoUMqiMaDGgxpjGghm4hiTiKyKzmUJzUtQyGQ8cWS5snqWJ6lks8+RdVd//8QAHxEAAgICAQUAAAAAAAAAAAAAABEBExAgQAISITBQ/9oACAEDAQE/AfnTiOCuOtFyWMeGMYyepeS0tLC0WELVMrgrg7IK49MaPVbzj//EACARAAEEAgIDAQAAAAAAAAAAAAABEBFBEyAhMAISMTL/2gAIAQIBAT8BFZNqI2nSmrrolCtVatF/LJ81U4KaGox+JTzpBDK1dEiMrU0n1oJJ7Eata1gghuG4IE8Z4MRiMZiJJJJ1mDIpkU91Mi9CCnLxrLSSU6Cn/8QAHxAAAQMFAQEBAAAAAAAAAAAAAAERMRAgITAyQYGh/9oACAEBAAY/AqNdyO2v7dOqSSdSW5PbWckZ7UHUZyR00pSLspTJ6Z0yRcumdEEHJycnP6e09FrFMocnJyckCkC4ugggixSRbEotP//EACEQAAICAQQDAQEAAAAAAAAAAAABESFBMVFhcRCBkaHw/9oACAEBAAE/IQ0dipuwQS9kYZNCdlTbU2Q2EKBF6UJ1gbx4gJZmj9vGD34pcCce5yMvxBqvoRJlJ2Y4heTsytzsKOskw1OSLO74RvfCN74YNUsx78Y8Z9mNB7WfCjYRDKlYjd8D3HEiSjVkNzdJkZGqLpTQU9yoz9Eo3fso3BpbgQshb1U7p1/QzPj2n/YEXKGwYJ/fhK9DtEosNZEGnTSfYpvITLavgSUozbElEMmjGRWlCJ7icbaX4qq0GpJL6ORDJGl5Je5LjUs0tjc+wm9Ag3Zg6SiRqyT9M21+F4kekSnB6mPZW5lEokSocv6f3Jx/or6o6s6OydrOwl0ok5n05v0cRyvnyUsO68RnoZfB18SO0FrkUnK+nL+jjYLk/mxyBLRFGrwBBMekSbEbVoIWQ50WRtyOUSMtxyhZDL3ZLnVjNTBzBmpgq1OZkuNvUbeoS92Owdn/2gAMAwEAAgADAAAAEMVxqY0ZtIYcMV1Rd5PEldGqdslLcLzs9qXWXrob/Q4/KxMeGEccaQ9mqSlR0Oy4KLg63Hd74XDPwNOc5b9qtX//xAAeEQADAQEBAQEBAQEAAAAAAAAAAREhEEExcVEgYf/aAAgBAwEBPxB/BcbGSsaPSf8ASRjYuOi5N56MX0h6YYMbFYabTTTRtribZppohfOe89/yqnppUK002jZdpfBqm/BJo0hOFmDZdG7xIZ738IxQTITRriY2iqj+EMeGl/nERFSI96lp9J/Clo0x/Jz0g/vfRchGUUUNvjXNEg/B+CEk4fjiFDDRCca4fVrnFGGD8H1vBtFEVFSZA1zwaIGtIhpE0S0iEEk0f//EAB0RAAMAAgMBAQAAAAAAAAAAAAABERAhMUFRYXH/2gAIAQIBAT8QXOC3oSCLEJ7Oqy/C0KBvrCg+Rc6OBs6wxXhWbxF6OU0OQ16aho0PuaFXpr017jllN06xzHXBwmhQ0Rkd4aCVOEJ2ROGzupEoTNCcPwO0fCEqVIKMN0LLsX0qHt6GuBOFQZlEpGRhW7RSF6NH0coNrorhX6XRsXrG6ja4Km9rDT9E0crhYLjD4wcxSokggSTUIIoSoQWj9n7Nm1SPceBIk6KUu6IvdZ+e8bTEnGRwScYspsRwddEZG0UJu4rom4yhNwqFFYbcRWNofZ//xAAmEAEAAgEDBAICAwEAAAAAAAABABEhMUFhUXGBkaHwwdEQ4fGx/9oACAEBAAE/EFjTMLADqjCbQ1/iKm1TwwwHqKBT5nmMEBXiXMGx3Y49Llk1rEHKu0RWl/wgneIukoxrpBrcOY1CmWl9pnxHI1hQ48qjq+tJpKiLSnHtD+zZVr3utYLWqQQZF7FjcWvSV/Qg1qrbTDT1Sq6q7Sra/UBSt9U4n2eJVasNyi42A/jO+u/ceWbmy3p+Jqccxfb/AOEBtZeOY8YDPWFtBfT4lPlmN1MsRRo14iBu6sC2pu7zOCOsGUODQ4hZj0IK6Th4irFTxMFW9SgaPiBdUu11OIXV1NdFluoaSrHaNq0C7xSKKvktEmbbdcTcs1/7NwhV2Gy6vaY/ZdRmg3dG3wTPMZrAvU6aZeofZVedMkdXoIC4A942GD/Ma2r1ERSS9agBRQ8kBK08y6kRXrFQQukq+Y0FEdl7I/C+4HVXpVTI3ja7b7zEUDhsO7t3fcSRcsjaumrwfBMoGaqBUU+IUBqXrxAlDOqRWF1by7Mjyc43lHq5CpQH831C2LXRQWYrAOMEchUEwrf3LE2ebi0u2nmBQRN66wha+yJCwOmZV1N9MMRISKd0iIFxL0gAtzDzexgag9xLRjKbLguxeY2CI0b0jQmvPtEtThtBMTgSU5cc7zRhRWYgXl4wG63M4zHeVF4LFjqjnMaCuLmDiHnTY+dlm9jXMK3NAGff/qfd/qGQuWP8zkfXacHwgnQxtFSkp3JTVRlGoVWNv70gYVSuf6n2+kUFpl5sLraVfuwbRPOZM1KM4lqveUCLB0mVO1MVNNk7Q1qLCjzFirVWhvUVaCjGd4tYXaF0uIHNRbWrKIjwOIBXxQ2/VFwQ0Qr+IRRqvrLt+SN4+aFW9mGeZ/uR7KsW/aaq+vWCv5oujdvviXm1q7z/AHoy5WqgECgAT//Z"},5975:vt=>{"use strict";vt.exports="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAlgCWAAD/2wBDAA0JCgsKCA0LCgsODg0PEyAVExISEyccHhcgLikxMC4pLSwzOko+MzZGNywtQFdBRkxOUlNSMj5aYVpQYEpRUk//2wBDAQ4ODhMREyYVFSZPNS01T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0//wgARCAQACAADAREAAhEBAxEB/8QAGgABAQEBAQEBAAAAAAAAAAAAAAECAwQFBv/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAf04AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAACkKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAApAUAAAAAAAEAAABAAAAAAACkKAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABQCFAAAAAAAIAAACAAAAEKAAAAAACgAAAAAAAoAAAAAABAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAKAAAAAAACFIACAAgAAAAAABQAUAAAAAAAAAAFAAAAIAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAABQAAAACAAgICAAAAAAoKACggIAUAAAAoAAAAKAAACAAAAEKQoAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAEKAAUAAEAAIACAEAABQUAAAAAAgAABSFIUApAUhQCgAAAgAIAAAAAUAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAACgAhAUhQAAUEKAAQoABAAACgEAAAABACEABSAAApAUAAoBQCgEAAIAACkIUAFAABSFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAUAEBAUAAAFAAIUAAEKQhQQoBQQoABCAgIQhQQFAAAKCAoBSFANAAAgAABCkKACFIUhQUAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUEBQQgBSggABQAACAEABSgAAAAAAAEAIQyZBCgAFIACgoKCgA0CFIAAAAQAAAAAAFABQCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhQACAFAAAIUAAEBQACAoAAAABAUAEAKAAZKQhkwACkKCgpAUoBTRAACApAACAhSgAgNGSlBAUFAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAoABk0AAAAAAQAAAAhCgpQAAAQEKAQgBTB0KCGQUwQoBAUyCggANFBSgAhAAAAUgBQClOYNFBQQhClBQCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEKACAgABQCkAAAAAAKCEMlKCEABDZSgAAhAUpCAoKQoIAQgMlANgAyAQpSEBQUhDRkhsgIAUpSkAIUAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAQpAAAUAAAAAEAKAQhCghSApClICkNAgKQ0AAAAAAAAAQGQUhQCFABQZMEOhopyNGiFBSEABSgAgAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACApCkAAAAAABSAAAAgICAgAABCg0aKZMlKQpClKAAAAAAAQFAIYIDRAQpSlBCEKU0CFMGSFBsyUEKCgAoABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACFBCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAKACAFIAAQEAIACAFNGgAACHMEKbKUEBAUoAIAQoAIZKDQMAhTQBkyaNgoBADkU2YICgoKCgFAKAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAFAAAAAAAIUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABQAQAAAAAgAAAIUpSEIQoIDIKDRAACEIaOhACFIDRAQpCmSlAIZKCAgNg0QEKQpAQGSmiAApQUAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAABAAAQpQQgIQApAACghSFKQhCgAA0ClIUAAhDZAYKUAyZIADR0BCmDJTJkGzJSlKUApQCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAgBQAAAAAQpAAQFBQAAACAFAAAAAAAAAAAAAAAAAAAAAAAIAAAACFAAAAAAAAAIAUAyAAQEKAUFAIQoABCFBDRClIAZKaKCkMlIZBQYBClNlIcikBo2cjIABToCgpQUAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAUAAAAAgABCkKUAAAgAAKAAAAAAAAAAAAAAAAAAAAAAQAAAAAEKAAAAAAAACAoIQAAFAIUEAAIUAAEAAKCFAIClNAgKYIUhoGCGgQpopQAQpDmZMmjAOhohDRQUoBQAAAAAAAAAAAAAAAAAAAAAAAAAQAoIAUAAAAEBQAAAAAAAQApCgAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAIAAAAQAoABAAAACAAAApSmSHQEKAQwQGjYMlBQAAAAAAAQ8pSg0UpSlBQUAAAAAAAAAAAAAAAAAAAAAAAAAAEBQQFAAAAAAAAAAAABACgAAAAAAAAAAAAAAAAAAAAAAAEAAAAAABCgAAAAAAEKCAAAAAAhQAAAACAEAAAKAQA2CggAIUpACFKAAAAAAADBDIIClNApQUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKAAAAAAAAAACAFIAUAAAAAAAAAAAAAAAAAAAAAAAAgAIACkABCkBQCgAAAAAEAAKQAAAFBTIKQpACAhQAACAAGigyaAIUgBAUoKAAAACApCgHEhSg0ClBQAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAFAAAIAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAABAAQFIACFIUApCgo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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgAEEgEkkgAAgAAEEgEAgEAAEggAgEgEkkAkAggkAEgkkAEEAAggkggkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgEgEkkAkAgAAAkkgAAAAAAAAAEggEEEEgkkEEEkkAgkAAgEgAAAAkgEgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAkgAAAgAAEgAAEAAAAAEgAEkAAAAggkEEEAAAgEkAkEkAgkkEkEgEggEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkAAEAAAAAAEkkEAEEgAAAEEkkkAAAkgAEEgAAEkAggEkgEkgEkkAkAgEkggkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAgkAgEEkgAAkAAEkgkkkEAAAEkEkEEAkgAgkkggAggggEEkAgAEEkgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgkEkEgEgAAkkgEAAAAAEkAAAAEgEAAAAAAAAAEEkkAAAkAkkAgEggkgAAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkEEgAAkkkgkkkgggkkkEkEgAAkgkAAAAAAAEgAEkkkEgkgkAgkAggEEEEgEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkgkkkAAkgkkEEAkkkggAAAEEggEEEAAggEkEEEggEEgEAEAkkgEEEEgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgkAggAEkkgAAkEgAEggEAEkAEkAgEEkAkggkAggEkgEgkkEEAEAgEkAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAEkAAEkgEkEkAEgggEAAAggAEAgAEAkggkEAEEkgAkgEAAggAgEgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkgAAAAAEEAEggAAAAkgAAAAAAAAAAAAAAAAAAAAAAAkgAAAgAkgEgAAAAggggAAEEgggkEAEgEkgEEAAAgkAAkEgAAgAgAkAEkgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAggAAAAAkkkEgAAAkkkAAAAAAAAAAAAAAAAAAAAAAEkkkAAEAAAAEgAAAkAEkEgggEkAgAEkAEAgEgkAkEAgEgkAgAEEEggAEgkAgAAAAAAAAAAAAAAAAAAAAAAAAAEkAkgAAAAEgAAAAAAAEkEAAAAAAAAAAAAAAAAAAAAAAEkkAAAAAAAAEAAAAAkkgAEkAgEAAEgkgkkEAgEAEkAAkgAAAAAAAAgkAkgggAAAAAAAAAAAAAAAAAAAAAAAAAAEgEgAAAAAAAAAAAAEkAAAAAAAAAAAAAAAAAAAAAAAAEkkkEAAEAAkgAAAEAAkEkkEgAEAgEgEgkkEEkEAAAgAAgAAAAAAAAEkEkEAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAAAAAAAAkgkgAAAAAAAAAAAAAAAAAAAAAAAAkgkkEgEEkkAEkAAgEAkEkkAggkEEgAggAgkEAEgAkkAAkAAAAAgEAEEEEggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkkgAAAkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkAEgEgkgggkEAAEkkgEkkkEkEkAEAEEAgAkkAgkgkkkggAAAAggEkEAggkkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAkkAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkEgEgAEkkgggEkgkEAgEEEkAAAkEAEkAgEAAkEEAgAEkgAAkgEgAAAAgEgkAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEEkAEEAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAEgggggEEgAEgEkkAkAEkkAgAEkAAkkAEkEEEEkAEAgAkgAAgkAAAAAAgggAkkAAAAAAAAAAAAAAAAAAAAAEAAAAAAAEgAkAAEAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAEgkgEkAggkgAAkggAkAgAkEEEkgAAEEgkAAEEkkAAAAkkEAggkAkgAAgEEggAEkAAAAAAAAAAAAAAAAAAEkkEAEAAAAEkkAAEgAAEgAAAAAAAAAAAAAAAAAEAAAAAAAAEkEAgAAkkAEAEkAgkAEAAkkAgEkAAAEgkkgggEAkEAAEEEgAgkggEAEAAEgEEgkgAAAAAAAAAAAAAAAAAAAgEAAkAAAAkkAAAAAAkkkAAAEgAAAAAAAAAAkkAAAAAAAAEEEEgAEAgEkAAggkgEkgEEEEkEkAAAEgAEEEgkkEAAgEEAAAkAAgEAAAggAEAkEEkgAAAAAAAAAAAAAAAkkAAgkEAAAEkkAAAAAAgAgAAAEAAAAAAAAAAAkgAAAAAAAEEEgggAgAgkAAEgEEEgkEAkEgkkEEgEkkkEgEEgAAEAEEgEggEgkAAgAggkAAkAggAgAAAgEAAAAAAAAAAkgAAgEgAAAEAkAAAAAEgAAAAAAAAAAAAAAAAEAAAAAAAAEEAkggkgAAAAkEEAggkEgAgEAAAkEAgEkkkkkkkAAAAAEggggAgEAAAAAkEkkkgEgEAkEEkkgAAAAAAEgEAkkkAgAgAAAgAAAAAAAAAAAAAEgAAAAAAAAAAgAAAAkAAAEEAkkAAAAAAAEkAAAAggkAAkEEgAkAEkkkkAEgAAAAAAAkgAggEkEAgkkgggkkgkAgkAkkkkgAAkkggAEgkAAgAgkkkkEAAAAAAAAAAAEkAEAEAAAAAAAAAAAAAkkAAAgAAkgAAAAAAAAAEAgEgEEgAAkkkEgAgAkkAEkgAAAAAAAAkAkEkggkAEAEgkgkAEAkAkgkkkAAAkgAkkEgkEgEEEEkEAAAAAAAAAAAAAAkggEgAkAAAAAAAAAAEAgAAgkkAAkAAAEgAAAEAkkEAEAkAAAgEkAgEAEEkgkgAAAAAAEkgAgEgEggAgEkAkkAggAEgEgkEgAAAkAEkkkkgEEAAkgAgAAAAAAAAAAAAgAkkAgAAAAAAAAAAAAAgkkAkAEkgAgAAAAAAgAEAgAAAEgAAAEggAkAEAAkkAAAAAAAAAEggkkEggEgggAkEEkggAAkkkkEkkAEkAkggAAkkAAgkkEEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgAkgkgAEkAAAAAAAEAAAkgAAAAAAAgAAggkgAEAEkkAkAAAAAAAAkAEAgAkAAkkkgAkAgEkAAEggAkkkkkAEgAAEgkkAgEEkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkAAkAAAgEEEAgAAgAAAAgAEAAAAAAEggEkAAkAEEEAAEkAAAAAEAEgkkEkEgAEEkgAAAEAAEAgAgkAEkkAAgAAEggAEAEEgkkkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAEgEEEAgkEAgkggEAEAAAAAggEkAkkEgAEgkgAAkgAAAEEEkggAEkkEEkAggAEAgAgkAkAEgkEkgkkkEAgEEAAAkkggEAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgkAAAkEEkEkAAAkkgAAAgAggkAEgAgkgkgkgAAkgAEgkkEEEkAAkkgEkkggkgAAAAkkkAEkggAAAkEkAAAAAAAAEkkgAAAAAAAAkAkkEkgAkgkEgAAAAAAAAAAAAAggEAggAEEAgAAgEEAEAgAAAAgAAAAAAAkAkAkggggAkkkAgAAEgkAAggkkAkEAkAEAAkgEkEkkAkEAEkkkAAAAAAAAAEEgAAAAAEgkgEgkAAEkEkEgkkkkAAAAAAAEEAAAkgAAAEkkAAEEEkgEgAAgAAAEgAkAAEEEgkAEkEkgAAgEgEkkAkEgAAAAAAAgEAAEkggkkEkkEkkgkAAEEgAAEgAkgkgAAAAggAAgkAgAAAEAgEgAAgkkEgAAAAAgkAAAkkgEgEkkgAggEkAggAEgAAAEgEkAAAAEEkEEkkkkkkkAAEkggkAEEEAEAAEgAAAkAAAEkkEEAAgkggAgAEgkgAgAkAAAAAAAAAAkgkkkgEgkgAkkkgEkkAEgAAAAAEgkkkgEAgEggggggAAAEEEgAAgAAAgEgEAggkgkkkEAkkgAEEgggggEkggAAAEAAEAAAAAAEkggkgAEggggAAAAkkEgAAAAAEkgAAEEgAAEggEEgEkgAgAAAAAAAAAAAgEkkkkkkkgEgAkgggAAAAEEEAEgAAgEAgAEkkgAEEgAAkkEgEAEEAAAgAkgAkgAAAAAgAAkAAAkkkkEkgAAAAAAAgAgkAAAAEgAkAEkkAkggAAAkAEgAAAAAAAAAAAEAAAEkkkkkkkgEAEgEgAgAkEkEEkAAAggAAAkkEAAAkEgkgkkkAggkkAEkggAggAAAgAgkkAgEEkgkAgkkkgAAAAAEgAAAkAAAEEEEgEkkkkkkkkgkgkkgAAAAAAAEAAEkkAkEkkEEkkkEgAkEAAAAAkAAAAAAEAgAggkgEAggAkAkEkAgEEAAEAkgkAAgkEAAAEAgAEgkEAEkkkkAgAAAAAAAgAAAgkgAAEkgEkgAkEkkkkEkEkEEkgAAEkgEkEkgkkkEkkEkEkkAEAgEAAggkAEkAAgAAggAgkggkgEgAEEkAAAEkAAAEAgkAAAAEgggkEkAEEAkEAAAgkkkAAAAAAAAgAAAgkAkAkEEkkAAAEgEkkAAEEkEgkkkkkgEgAgEkggEkEgAkkkgggkkgEEkEkgEkAkAkAAAAEggAggEgkgAAEAgkAEAAAkgEAkgEgEAAAAkAAAAAgkEkAgAEAAAAEAEgAAEAgAEAEgkkgAAAAAAAgEAAAkkkkAkkAAEkgAEAEgAkkkAAkkgkAgEkAkEEAAAAkAEkAEEAEkAAAEAgkAAAkEEAAAgkAEEggEkAAAAgAEgEEggAAAEkEEgkgAAAkgEEAEAAAAEgkkkggkkkggAAAAAEggAAgAEEkgEEAAkEkAAEkgAAAEkkkAgkEAAAkAAEgAAkkkgAEAgAgEggEgAAAAAAEAkAgkEkggAEEkkgAAAAAAAAAAEkEAAAEkAgkAEAggAAEAkAAAgAkkkkkkkkAggAEkkkgAgAkEEAAkAAkAkkkkAAAAAAgkAEkkEEAAAAAAAAAAEEAAEAEEkkAAAAAgEgkAgAEkAEAgEkAggEgggAAAEgkEEggAAAEkEgEEEgkAkAAAEEkgEkkgAEkkkkkkAkgEkkgAAAAAAEAAAEkgEkEkgAAAAEkggAgEAEAAAAEAEgAEAEkkAEEkgAEkkgEAkAEkkkkEgkAEAkEkkgEgkEgAgggkgAAAAAAgAEkAEgAEEAAEgkgAkAAAAkggAkkkkgkkkAkAkEEkkkAkEEAEgAkkkkkAAAEAggEAkAgEAkAAAkAEAAAggggAkgEgkEEEEgEAgAkEAkkAkEAEAAAkgAggAAEkAAAAAAggkEEEEAAAAAkAAgAEkggAAEAAgkAEgAAAAkkkAEAgEAgkkgAAEEEkkkkAAkAEEggEggAAggAkgAgggAkkgAgAkkgEgEkgEEAEgkEEEAAEAEAAAAgEgEkkEkEAAkAEAkEkkgEkkkEAEAAEEEEkgAAAAAAAAAAEEkEkAAAEEgAgkAAAAgkgEEEkkkAAAkEAkAEkAEAAEgAAggkEAgEkkEEAEEAAEAkgEEEgAEkkEAgkAkAEAkkAAkgkkAAkkkkAgEAAgEkgAAkEAEEgEgkkAAAAgAAAAAAAkAgAAAEgkkgAAEkAAAAAAkEAkkgAAAEgEkEkEEAEggggAgAkEkEkAEgkkAAEAgkEgAkgAAgEEAEkAgkkgEAAEkgggkEkkEEEgAgkkkgAEEkkAkkEkEgAAAAAkgAAAAAAEgEkkkkgAgAAAgEkkAAAAAAgkAEgAAEkAkgAgkggAgkkEAkEkkkggAEAgAEkkAEkkAAEEAAEgAkkEEkgAAkkAkAgEgAkkgAAkkkAAkEkgEkAAAkkggAAAAAAAggAAAAAEAAAEkAgEAAAAEgEEAgAAAEEkEkkEAgkkAkkgEkgkAAkgEAggkAAkAAgAEgggEkEAEkEEEgkAggEEkEEkAAkkkkggAAAkAggAAAAAAAAEAAAkAAAAAAAAAAAAEAgAkggAgAAAAgEAAAAAAAAAAEAAkAAEAAAgEAEgkggkkEgAkgEgkAAgEkkkAEAAgEkAAkkEEkAkAkgAkEkAEEgAEgEkkEgEkgEkgkAAAAAAAAAEgAAAAAAAAAAAAAAAgkkAAAAAkAAAAAAkAAAAAAAAAkgkkgAkEkAkAEkEEAkkgEgEkgAEkkgkAAkEgkggEkAEgkgkEEEAkggEEkkgEkAkggkkgkgAgkAAEkAAAAAAAAAEgAAAAAAAAAAAAAAAAAAAEgEkAkkkkkAgkgAAAAAAAAAAAAAkggAAAAgAAgkAAEgEEkEAgEEAgEAgkgggggEgkAEkgAEkgkkkggAgEkkEkgEkkgkkkkkkkAAAAAAAEkEgAggAAkAAEkAAAAAAAEAgkAEAAAAAAAEEgAAAAAAAAAAAEAEgAgAAAAgEgEAAgEgEEAAgAgAkkkkgAEkgEkgkkgEgEEgkAkEAEAEkEAgAkkgkgEkkkkkkgAAgAAAAAggggkEkEEgkgAkAkEAAkkAgEEkEEAkkAEAgAAAAAAAAAEEEEggggggAAAkgkkAgkAgAAAkkkgEkgAgAgAEkkAEkEEEEAEAgggEAEkEEgkkAkEgggAgkkkEEAggEkEAEggggAAAgAgAkkkEAEAAgAAEAEAgkkAgggkkggkAAAAAAEkkAEAkEkggEkAkkkkkkgkkkkkkkgkkkkkkAkkkkkgEgkgEEAgggkkkkEEEkkAAgEAgggEgkEkkkAkAEkkAggEEEkkAkkkggkkgkkgEAgEkAgEAAkggEEEAkEAgggkkEkAkggAkEEgkAEkkggkAAAAEgEAAAgggAkggkAgkEEggkAEgEkAAgkkEEEgAAAEkEAggEEEkkAggAkEEAgkggAEkggAggEkkggEAEEEkAggAkEkAAgAkAggEAAkEgkAkgkAgkgEggAgAEEgEkEgAkEEkAggkggAkEAAEAAgEAkkEEEEgEAggkEEEAgggkgEkgEEkgEEkEkAkAEAEkAkkAkEAAEkkEEEkEAggkEggAkEEAkEAkAgAkEgEkEkkEkgAkkAAAkAgkAgAEgAgkAggkkAEEAAAEEkEAgkkkAEkEkgEkkAggEgAgkkEEAkAkgAAEEkgAgEAggAAAEkkkkgAAEAEkEgggEEkAgkEkkgkAAgEAEEkAgkkggAEEEAAggkEkAEAAEAEEEkEAEgkkgEEAgEgEAkAEEEAEEkAgkEgEAkEEkkgkkAgEAkkEggAkggEEEkgkgkEAkkkkAAEgkAgkgEEgggAEAggAkEAkAEAkAEAAAAgEkkkEEEAAEgkgAAggAgEAkgAgEAgkEkggAkEAkgAEkAkgkAEkgAAkAAAEkEgAkkkggAAkAAkkkkAkAkEgkEEEkkAAEAkgAgEkgAggkgkEkEEAgAEkgEkkgkAggAEEkAAgAgEkAEAkkAkAAEEgkkEAgkkEggkEkgEgAkggEEAEEkAEgkAEAkAkAkEEkAgAAEEkAkAEEEEkgEAAEkEgkgEAAEkgEgAgEEkgAgkkEggggEEAEAgAgAgEkgAEkEgkAkgAEkEgkggkEkAAEEggAkEAkEgEAAAkEAEgggEEgEkggggEAkEgEggAggkkAgAkgEgEEgkkEgEgkEEkAEAkAEgAkggkAEkgEAEEkEEAgEEEAgkEkAkEkkEgAkAgAAgAEEggAEkkkEkgkAkAgEkkEAAEAkEkEEkkAAkEgAAAgEgEEgEkkAgkEEkAEAEAkkkgAAkkgEgEkAEAkkAgAgEEkgAEAkEEkgAEggAgkAkkkEkEgAkggkEAgkgAAgkEkAEEgkEgkEEAgkgkAkkkAAgEgkgEkEAAAgAEEgAkAgAkAgEAEkkEEgggkgEkAEAEgkkEgkEkkEAkgkgkkAEEkEgAgAkkgggkAkgAkEgEgkkEEkEAEAkAAgEAkkgkgAkkkkkkEEEgAAEkEEAEkkgEgAgAkggkEkAEAkgEggAAEEkgAkgAgEkEAkEAEkgEEAEgAkAEgAkkEkAAAkAAAEgggEAEgAkAkAEgEkAgAEAggkAAAgggAgAgkAAEEEAAkAAkEEggEAkgEgEAkAAgkAkgkEgAkkEgEgEkEgEEAkgkgkEgAAEkggkkEEkkAkEEkkgEgAEgkEgkEAgAAAEggkEkAkkggEEkgEEEAAAAkkkggkkkkAkkkEAgkAkEgkEEAgEEgAAgEgkgAkkkkkgEkkEkgkAAkAkgEkkEAEgkkgAEkgkggkgAEkkAggAgAEkEggEkAgAgkggAgAAAAgAEgAkgkkkggggEEkAkkkAgkAEEAgggEAAkEEEEkEgkkAEggkEgEgkgkEggEkggEAAggAEkAgAkkkgkgkEkkgAkgEEggEgEAAkAkAgAAkAkAkEAAAgEkAgAAEAAAEkAAEAkEkAkAAEAgEEAEAkkEEggkgEkkgkkggkAkkgkAkgAkEgEkAkEkEkggkgAAEkggAAAkgAgggkAgkEgEAEgkAEkEEkAEgkggAkgEEAgAgkgEgEEEAEgkEggAgAAAAAAAAkEAAkAggEgkkEkAAgAEgkkgggAAgAAAkgkEEAgkEEEEgggkAAgAEkEAkEkAgkEgkEgkEgkEkgEEkAkkgEkgAEEEgAAAAgAgggggkggAEkAAgEgEAAgEggkkEgAAAEggEEgEgEkEgAEEEAEEEkkEAkkkAkAAggAEEAAkEEkkEEkkkggkgEgAkAgAgAgAggAgkAEAgEkgEkgEggEggAAgAkkkAEAEAgEAkAkgAkAEkgkgAgkgEAAkEkgAAAAAEgkAAAkAEAEkAAAAgAAAkggkEAEAgAEkAggkEEAgEkEEAkEkAAEgEggAkEkkAAEgAkgAAgkkkggAgEggEAEgEkEkEEEggkgEAgAkkgEkgEgAEgkAEgAgAEkAkgAgAAAAEAEgAAEkAEAEEAgAEEkAkkkAggEkkAgkAAkEAgEAgEgAAEEEgkgAkkEAkkEAEAkAEgggkEEgAgkAAggAEEgAgEAEkkEgEEEgEkEggggEAkgEgAkAAEkgAkkkkEAgAAAEAgEkAEAkAEgkEAkAkAEAgAgAgEEkkEkgAEEEgEAEgEEEEkkgAkAEgAEEEgAkkgAgAkkEAAkkAAggkggkAEEAEAgAkEkAAAAEkgAgAEAkAgAgEAkggkEgAEAgEEEEkAAgEkEgEAgAkgEkkkAkAAEEkAAgEgEEEEEkggEgkggEgEAgkgkEkAkkgkAgkEAEAgEgAEAAAAAggkgAEAkEEgkkAggggAgEAgkEAkkggkkkkkAAkAEAkEEkgEggkEAkgEAAkAEkkAEgAkggkAkkgAgEAEAkEgAAkEgkEEEkgEkAAEgAEgEggEkkEgAgkggAgAEkAAAkAAkgAgkEgkgAkAEkEkgkEAkEEEAkEgkgEEgkAEEgkkgkgAAAgAgAggkAgEAAAggkkgAkAAEkEkAEkEAkkAAEEEEAkggkgkEkAgAAEEgggkAgAkkggAAAgAAgkgEkgkEEkkEkEAgkAkEgAgAkAEAkgkEkgEkAEAkggEgEAAAkAkkgkkggkEkkAAAAggAgkAEEgAkkgAgkEAkggEkgkkgEAEkggggkgEEggEAAgEAEkkAAkkEAAgAgkEEAgAEkAAkkkEEEEEEAggEAkgAAgkAAgkgkkEkkkAgkkgAEkEEgEEkEgAAAAgAAEEEAkAkAkkAEgAAkkEkkEAAAAkgEEgEAgkEAAEgAgggkggAkAAkkgAEkEEkEEEgAAgkgAggAkkAEEAAEEEEEkAggkgggkAEAEkkkgAkkAAEgAgkEAgkAkAkAAAkEkkgAAkgkAgkEEkEgkEgEEkEkkgAAAAAEkEAggAEAkEEkEgEAEAEkAEkAAEkgkEkAgggAAkEgAAgEkkEkAAgEAEkEgkgggggkgkAkggkAkEEkkAkEgkgkAEAAgAEgEAgkkgkgEgEgggEEEgkEEkAAgAkEkkkEAAAEggkgAggEkggkkEEAAAAAAAgAAkkkEkkkgAgAgEkAkEggkkAgEAkAkgkAkEAEAEgAAggEAkEEEEgEkEEkgkkAgAAAEgEEkAgEkAkgkgEkEAEgkEgEkAgAEkkEkgAkAkAkEAgkAgEEEEEEkgAAAAAEAAAEkggkkAkgAgEAAggEkkEkkEgEAgggEAAAAgkEkAEgEgEkgAgAkAgEAkAgkgkEkAgkkkEAAEEgAgAgAggkAAggkkEgEAAgEkkkkkkkEEEAkkkAgAAkEkEEkkgAAAAAAkEkkkkkEEkAkAgAAggAggEgAEggAkgggkEEgkAEEgkkEgAEgkEEgAkAkEkgkAgkggEAkEkkkAgkAggggEkEEEgEEgAgEkgEgkEgkkgkgkEkkkkAAEkkkAAAAAAAAAAAEEgkggEEgkkAkAEEAEAgkgAAAEkAgkEkEgEAgAgAEgAAEggEkAEkgAAEkkEAEkAkAgAAkAAAAgkEAEgAggEkEEAEEAAkEEAggAAkgEkkkkEkgEggEkAEkgAAAAAAAAEkkkkkgkkAkkgkgAkAEgEEkgAAAkkgEEgEAEAkAEEkAEgggAkgAAgEkEkgEkEAkEgkEEkkkkkEEAEEkgAkkkEkkkEEEAAAgkggkAkkEgAkkEkgAEkggEgEgAAAAAAAAAgkkgAEEEAAkEkkEgggkAgEAAAAAAAgkkEgkEggAgkEEEEEkEAAkEkEEgAAkEEAgEAEAkkEkkEkEEgEgEAEkkAgkkkEgAAkgEgEAkAkkggkAEkkAkggAAEAEkkEgEAgkkAEAgEggAEkkEkgkkEkAgAAAAAAAAkgAEggEEggEkgkAkAAggkAgkEEkgEEEkEEkAEAkAkEgEEkAEAAgAAkgAEkgAAAAggEgAAEkEAkEAgEkEkgEkkEkAAgAgkkkkgAAAAAgEkkgkEAAEEkgEkEAgAAAAAAAAEkAkAkEAgEEEAAEEkEgkEAkgkggkggkAAAEEEgEkEAAAEEgAEEgkgkAAAkAkkAAAAAAAAAEkEgAggkAAkAAAEkkAEkkEkkgEAAAAEAEkAkkkEkAEkkEkkkAAAAAAAEAgkkEAgEgEEEgEgEAEgEAAAgAAgAEkEgAkAEkgkEgkAEgkggEgAgAgggEkEAgkAAAAAAAAAAAEggkAkEAAAAAAEkkkkkkkEggAEAAkkkAkgkkgkkgAgAEkAEEAAAAAAAAggkkEAkgkEEEAEgAEAkkAgEkkkAAAEkgEgEEEkgAAAEEkgEEAgAgEgggggkkAAAAAAAAAAAAAEkEkAAAAAAAAAAEgkEAkkgkAEkkEkkkkgAkEEgkkgkkgAEAAAAAAAAkEEkgkkkAgAkAEAAEkgEgkEkEAEkgEEEkAgAkEgAgAgEEkgAkkgkEkkAgEEEgAAAAAAAAAAAAAkAAAAAAAAAAAAAAAgAgggAAAkkkkEkgkAEEkkkkAkgAgkEAAAAAAAAAEkkkkAEkAAAAAEgEAEAgkkAEEEgkgEgEgEEAgEEkggkEggkEkAAgAEkAEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgggAEAkggkgAAkEkEAEEAEgEkAEAAAAAAAAAkgEgkkEkAAgEEkAkEEgAAAAkkEkAgEgAgkAEEgAAkEkkEAAkkEAAgkkkAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkEEAAgkEgAAggEkEEkEEggEEgAAAAAAAAAkkAkggEAkgAkgEEkgEgEAAkkEEEAkEgAAkEEAkAkkEgAAkkAEkgEAAEggAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkgkkEkgEAgAEEkgEkEEggkgAAAAAAAAAAAgAEkgAEkgkgkkkkAkAAEEgEEEgAkkAAkAAAEAEEggkgAAAAkgggggkAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEEkEkEkgkEkEAkAEEAEAAAAAAAAAAAAAkEEkgkgEkAAgEgkgEgEgAEgkkkkkkEkAEEgEkEEgkAEkkAgggkAEAgggAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkAkAgkkEkkEkkgAAkkgkgEAAAAAAAAAAAAkkAkkEgEEggkAgAkAggAEkgkkAkkgAgkAAkkEkkEEEAkgkgkAkAkkEgEkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAgkkEkggEgkkkEEgkAkAkAAAAAAAAAAAAkkkkkAAAAkkEAEkkgkAAEAAAAgAEAkgEgkEEkgkggEgAAAggkEgkAgkkEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEkEgEgEEgAEkAkkAAgEggAAAAAAAAAAAAEEAgAgkgEEEgAgAggEgEEEAgAEkEkAEEkkgkEEgEAEEggAgkgggkEkEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgkEAAkAAkAAkgAAAAAAAAAAAAAAAAAAAAEkkEAAAkgEAgkggkEkkEEgEAgEgAAEEEkAgAgggAAkgAkkAkAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAgkgAgggAggkAEEgAgEAkgkkAkgAAAEEkEEEgEEgkggEgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAgkgAAAEAgAkkEEEgEkggAAEggkkAAkkggEAAkgggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkkgkgEggggEgEkAEEEAgAgAkEgkgAgAEkgAkkEkgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAggEkgEgkkgkkEEEkkkAEEEkgkAAAEggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAgEkgkgAEAgEAkgAAAkggAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAgEAEkAAkkAEgAgAkgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEkkAEEkAAkkkgkEgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/8QAFREBAQAAAAAAAAAAAAAAAAAAAOD/2gAIAQMBAT8Qv/8Af//EABURAQEAAAAAAAAAAAAAAAAAAADg/9oACAECAQE/EL//AH//xAAtEAEAAgIBAwMEAgMBAQEBAQABABEhMUFRYXEQgZGh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"},2305:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iNDgiCiAgIGhlaWdodD0iNDgiCiAgIHZpZXdCb3g9IjAgMCAxMi43IDEyLjciCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzUiCiAgIHhtbDpzcGFjZT0icHJlc2VydmUiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnMKICAgICBpZD0iZGVmczIiPjxmaWx0ZXIKICAgICAgIHN0eWxlPSJjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM6c1JHQjsiCiAgICAgICBpZD0iZmlsdGVyMTM0NSIKICAgICAgIHg9Ii0wLjIzMTQ0MzgiCiAgICAgICB5PSItMC4yMzE0NDM4IgogICAgICAgd2lkdGg9IjEuNDYyODg3NiIKICAgICAgIGhlaWdodD0iMS40NjI4ODc2Ij48ZmVGbG9vZAogICAgICAgICBmbG9vZC1vcGFjaXR5PSIwLjQ5ODAzOSIKICAgICAgICAgZmxvb2QtY29sb3I9InJnYigwLDAsMCkiCiAgICAgICAgIHJlc3VsdD0iZmxvb2QiCiAgICAgICAgIGlkPSJmZUZsb29kMTMzNSIgLz48ZmVDb21wb3NpdGUKICAgICAgICAgaW49ImZsb29kIgogICAgICAgICBpbjI9IlNvdXJjZUdyYXBoaWMiCiAgICAgICAgIG9wZXJhdG9yPSJpbiIKICAgICAgICAgcmVzdWx0PSJjb21wb3NpdGUxIgogICAgICAgICBpZD0iZmVDb21wb3NpdGUxMzM3IiAvPjxmZUdhdXNzaWFuQmx1cgogICAgICAgICBpbj0iY29tcG9zaXRlMSIKICAgICAgICAgc3RkRGV2aWF0aW9uPSIwLjUiCiAgICAgICAgIHJlc3VsdD0iYmx1ciIKICAgICAgICAgaWQ9ImZlR2F1c3NpYW5CbHVyMTMzOSIgLz48ZmVPZmZzZXQKICAgICAgICAgZHg9IjAiCiAgICAgICAgIGR5PSIwIgogICAgICAgICByZXN1bHQ9Im9mZnNldCIKICAgICAgICAgaWQ9ImZlT2Zmc2V0MTM0MSIgLz48ZmVDb21wb3NpdGUKICAgICAgICAgaW49IlNvdXJjZUdyYXBoaWMiCiAgICAgICAgIGluMj0ib2Zmc2V0IgogICAgICAgICBvcGVyYXRvcj0ib3ZlciIKICAgICAgICAgcmVzdWx0PSJjb21wb3NpdGUyIgogICAgICAgICBpZD0iZmVDb21wb3NpdGUxMzQzIiAvPjwvZmlsdGVyPjxmaWx0ZXIKICAgICAgIHN0eWxlPSJjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM6c1JHQjsiCiAgICAgICBpZD0iZmlsdGVyMTM4OSIKICAgICAgIHg9Ii0wLjE5MDM0NTU2IgogICAgICAgeT0iLTAuMTkwMzQ1NTYiCiAgICAgICB3aWR0aD0iMS4zODA2OTExIgogICAgICAgaGVpZ2h0PSIxLjM4MDY5MTEiPjxmZUZsb29kCiAgICAgICAgIGZsb29kLW9wYWNpdHk9IjAuNDk4MDM5IgogICAgICAgICBmbG9vZC1jb2xvcj0icmdiKDAsMCwwKSIKICAgICAgICAgcmVzdWx0PSJmbG9vZCIKICAgICAgICAgaWQ9ImZlRmxvb2QxMzc5IiAvPjxmZUNvbXBvc2l0ZQogICAgICAgICBpbj0iZmxvb2QiCiAgICAgICAgIGluMj0iU291cmNlR3JhcGhpYyIKICAgICAgICAgb3BlcmF0b3I9ImluIgogICAgICAgICByZXN1bHQ9ImNvbXBvc2l0ZTEiCiAgICAgICAgIGlkPSJmZUNvbXBvc2l0ZTEzODEiIC8+PGZlR2F1c3NpYW5CbHVyCiAgICAgICAgIGluPSJjb21wb3NpdGUxIgogICAgICAgICBzdGREZXZpYXRpb249IjAuNSIKICAgICAgICAgcmVzdWx0PSJibHVyIgogICAgICAgICBpZD0iZmVHYXVzc2lhbkJsdXIxMzgzIiAvPjxmZU9mZnNldAogICAgICAgICBkeD0iMCIKICAgICAgICAgZHk9IjAiCiAgICAgICAgIHJlc3VsdD0ib2Zmc2V0IgogICAgICAgICBpZD0iZmVPZmZzZXQxMzg1IiAvPjxmZUNvbXBvc2l0ZQogICAgICAgICBpbj0iU291cmNlR3JhcGhpYyIKICAgICAgICAgaW4yPSJvZmZzZXQiCiAgICAgICAgIG9wZXJhdG9yPSJvdmVyIgogICAgICAgICByZXN1bHQ9ImNvbXBvc2l0ZTIiCiAgICAgICAgIGlkPSJmZUNvbXBvc2l0ZTEzODciIC8+PC9maWx0ZXI+PC9kZWZzPjxnCiAgICAgaWQ9ImxheWVyMSI+PHBhdGgKICAgICAgIHN0eWxlPSJmaWxsOiNiZjY3NGM7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjAuNjYxNDU4O3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjE7ZmlsdGVyOnVybCgjZmlsdGVyMTM4OSkiCiAgICAgICBpZD0icGF0aDYzNDIiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgtMC4yMzAxOTA4OSwtMC44NTkwOTM3MywwLjg1OTA5MjQ2LC0wLjIzMDE5NTY0LDAuOTYxNzMwODMsMC43NjEzNjk0MykiCiAgICAgICBkPSJNIC0xLjI1Nzg5MjYsMS45MTE3NjY4IEEgOC4wNDE4NDI1LDguMDQxODQyNSAwIDAgMSAtOS4yOTk3MzUxLDkuOTUzNjA5MiBWIDEuOTExNzY2OCBaIiAvPjxjaXJjbGUKICAgICAgIHN0eWxlPSJmaWxsOiNiZTYyMWM7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjAuODg3ODc7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MTtmaWx0ZXI6dXJsKCNmaWx0ZXIxMzQ1KSIKICAgICAgIGlkPSJwYXRoODQ2IgogICAgICAgY3g9IjcuOTI3NzA3MiIKICAgICAgIGN5PSI1LjQ3NTg1MjUiCiAgICAgICByPSIzLjU1MTQ3NzciCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjc3MDI0MTc3LDAuNDQ0Njk5MzMsLTAuNDQ0Njk5MzMsMC43NzAyNDE3NywwLjk2MTczMDgzLDAuNzYxMzY5NDMpIiAvPjxnCiAgICAgICBpZD0iZzg5MiIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDEuMTc4NDYzOSwwLDAsMS4xNzg0NjM5LC0wLjgzNjc2ODYyLC0xLjY1OTk1MjIpIj48cGF0aAogICAgICAgICBkPSJNIDMuNTk5NjY3OCw5LjQxMDYyNTIgSCA1Ljc4MjQ4MDMgViA5LjgwNzUwMDEgSCAzLjU5OTY2NzggWiIKICAgICAgICAgaWQ9InBhdGgyNTQiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlLXdpZHRoOjAuMjY0NTgzIiAvPjxwYXRoCiAgICAgICAgIGQ9Ik0gNC4xMjgzMDUzLDguMjcwMDA2NCAzLjgzMDExOTksOC4wMDQ4OTM5IDQuMDk1MjMyNCw3LjcwNjcwODUgMy43OTg2MzQ1LDcuNDQyOTE4OSAzLjUzMzUyMiw3Ljc0MTEwNDMgMy4yMzUzMzY2LDcuNDc1OTkxOCAyLjk3MTU0Nyw3Ljc3MjU4OTggMy4yNjk3MzI0LDguMDM3NzAyMyAzLjAwNDYxOTksOC4zMzU4ODc3IDMuMzAxMjE3OCw4LjU5OTY3NzIgMy41NjYzMzAzLDguMzAxNDkxOCAzLjg2NDUxNTcsOC41NjY2MDQzIFoiCiAgICAgICAgIGlkPSJwYXRoMjU2IgogICAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjI2NDU4MyIgLz48cGF0aAogICAgICAgICBkPSJNIDYuMjc4MDQ0OSw3LjcwNjk3MzEgNS45ODE0NDcsNy40NDMxODM1IDUuNzE2MzM0NSw3Ljc0MTM2ODkgNS40MTgxNDkxLDcuNDc2MjU2NCA1LjE1NDM1OTUsNy43NzI4NTQzIDUuNDUyNTQ0OSw4LjAzNzk2NjggNS4xODc0MzI0LDguMzM2MTUyMiA1LjQ4NDAzMDMsOC41OTk5NDE4IDUuNzQ5MTQyOCw4LjMwMTc1NjQgNi4wNDczMjgyLDguNTY2ODY4OSA2LjMxMTExNzgsOC4yNzAyNzEgNi4wMTI5MzI0LDguMDA1MTU4NSBaIgogICAgICAgICBpZD0icGF0aDI1OCIKICAgICAgICAgc3R5bGU9ImZpbGw6I2ZmZmZmZjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4yNjQ1ODMiIC8+PC9nPjwvZz48L3N2Zz4K"},6883:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjQ4IgogICBoZWlnaHQ9IjQ4IgogICB2aWV3Qm94PSIwIDAgNDggNDgiCiAgIHZlcnNpb249IjEuMSIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aAogICAgIGQ9Im0gOC4wMjIyOTI0LDcuODU5Nzk3NyBhIDIyLjU5NDEwNywyMi41OTQxMDcgMCAwIDEgMzEuOTU1NTYzNiwwLjAwMjcgTCAyNC4wMDE0MDksMjMuODM4OTE2IFoiCiAgICAgc3R5bGU9ImZpbGw6I2JmMzYwYztmaWxsLW9wYWNpdHk6MTtzdHJva2U6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Mi41MDAwMztzdHJva2UtbWl0ZXJsaW1pdDo0O3N0cm9rZS1kYXNoYXJyYXk6bm9uZTtzdHJva2Utb3BhY2l0eToxIiAvPgogIDxjaXJjbGUKICAgICBjeD0iMjQiCiAgICAgY3k9IjI0IgogICAgIHI9IjkuOTc3NzU2NSIKICAgICBzdHlsZT0iZmlsbDojZmY2ZjAwO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTojZmZmZmZmO3N0cm9rZS13aWR0aDoyLjQ5NDQ5O3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjEiIC8+Cjwvc3ZnPgo="},270:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjQ4IgogICBoZWlnaHQ9IjQ4IgogICB2aWV3Qm94PSIwIDAgMTIuNyAxMi43IgogICB2ZXJzaW9uPSIxLjEiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczEiIC8+CiAgPHBhdGgKICAgICBkPSJNLTMuMDA3LS4wMDVhNS45NzggNS45NzggMCAwIDEtNS45NzkgNS45NzhWLS4wMDV6IgogICAgIHN0eWxlPSJmaWxsOiMxYTIzN2U7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiNmZmY7c3Ryb2tlLXdpZHRoOjAuNjYxNDU4O3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjEiCiAgICAgdHJhbnNmb3JtPSJyb3RhdGUoLTEzNSkiLz4KICA8Y2lyY2xlCiAgICAgY3g9IjYuMzUiCiAgICAgY3k9IjYuNTQ1IgogICAgIHI9IjIuNjQiCiAgICAgc3R5bGU9ImZpbGw6IzFlODhlNTtmaWxsLW9wYWNpdHk6MTtzdHJva2U6I2ZmZjtzdHJva2Utd2lkdGg6MC42NjAwMjc7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MSIgLz4KPC9zdmc+Cg=="},1760:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMjQwbW0iCiAgIGhlaWdodD0iMjM5Ljk5ODY5bW0iCiAgIHZpZXdCb3g9IjAgMCAyNDAgMjM5Ljk5ODY5IgogICBpZD0ic3ZnNjc0MyIKICAgdmVyc2lvbj0iMS4xIgogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxIiAvPgogIDxnCiAgICAgaWQ9ImxheWVyMSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzAsLTI3LjAwMDY1NikiPgogICAgPGcKICAgICAgIGlkPSJnNzQyNiIKICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyMi4xNDIsLTUzLjk3MjkwNikiPgogICAgICA8cGF0aAogICAgICAgICBzdHlsZT0iZGlzcGxheTppbmxpbmU7ZmlsbDojNzZjNTUxO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDozLjYxNTMyIgogICAgICAgICBpZD0icGF0aDMzNDQ5IgogICAgICAgICBkPSJtIC04MS4wNjMwOTUsMjA4Ljk0NjA5IGMgLTExLjkwNjMzOSw5LjkyNDIxIC0yNy4xOTQ4ODUsMTUuODk4NyAtNDMuODYwNjM1LDE1Ljg5ODcgLTQuOTU4NTQsMCAtOS43ODcyOCwtMC41NTE1OCAtMTQuNDUwNTksLTEuNTU1MDQgbCAtNC43OTg0Miw1Ljg0NDYgYyAtMTAuNjY0NDksLTIuODU3MzYgLTIwLjM4NDI5LC03Ljk0MDQzIC0yOC42MzI2LC0xNC43NDU3OCBsIC0xMi44OTU1OSwxMi45MjIxMiAxLjU4MTc3LDkuNTQzNDcgLTQ3Ljk2MzQ3LDQ3Ljk4OTY1IDQuNjM4MjcsMS43Njg1IDQ1LjA0MDMyLC0xNy4xNTY1OCA0NS4wNDAyLDE3LjE1NjU4IDQ1LjA0MDMxMiwtMTcuMTU2NTggMTcuMTU4NTQ0LC00NS4wMzk3NiB6IiAvPgogICAgICA8cGF0aAogICAgICAgICBkPSJtIC0yNzIuNDg0OTUsODkuMjk0NjI2IDE3LjE1ODUsNDUuMDQwMjc0IC0xNy4xNTg1LDQ1LjAzOTkzIDE3LjE1ODUsNDUuMDM5NzIgLTE3LjE1ODUsNDUuMDM5NzcgMTAuNTM2MzQsNC4wMjI2NyA1Ny4yMzg1LC01Ny4yMTEwMiAxMC4yNjc2NCwxLjU4MTY5IDEyLjQ2NjczLC0xMi40NjY2OSBjIC03LjM1NTE5LC04LjUyMjIxIC0xMi44NjE3MywtMTguNjkwMiAtMTUuODcwMjcsLTI5LjkyMDMyIGwgNS44NDQ2LC00Ljc5ODQyIGMgLTEuMDA1MzEsLTQuNjYzMjMgLTEuNTU1MDMsLTkuNDkxODkgLTEuNTU1MDMsLTE0LjQ1MDQ0IDAsLTI0Ljc2OTg0IDEzLjIxMDQzLC00Ni41MzQ3MiAzMi45NDg5MywtNTguNjA2NTM0IGwgLTIxLjc5NjkzLC04LjMxMDYzIC00NS4wNDAxOSwxNy4xNTg1NDQgeiIKICAgICAgICAgaWQ9InBhdGgzMzQ0NyIKICAgICAgICAgc3R5bGU9ImRpc3BsYXk6aW5saW5lO2ZpbGw6Izc2YzU1MTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6My42MTUzMiIgLz4KICAgICAgPHBhdGgKICAgICAgICAgc3R5bGU9ImRpc3BsYXk6aW5saW5lO2ZpbGw6IzU5YTMzNjtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6My42MTUzMiIKICAgICAgICAgaWQ9InBhdGgzMzQ1MSIKICAgICAgICAgZD0ibSAtODEuMDYzMDk1LDIwOC45NDYwOSBjIC0xMS45MDYzMzksOS45MjQyMSAtMjcuMTk0ODg1LDE1Ljg5ODcgLTQzLjg2MDYzNSwxNS44OTg3IC00Ljk1ODU0LDAgLTkuNzg3MjgsLTAuNTUxNTggLTE0LjQ1MDU5LC0xLjU1NTA0IGwgLTQuNzk4NDIsNS44NDQ2IC0yOC42Nzc0NCwtMTUuMTEyMjggLTEyLjg1MDc1LDEzLjI4ODYyIDEuNTgxNzcsOS41NDM0NyA0Ni44NTI4NCw3LjA1Nzk5IC0wLjA5ODIsNDIuNzAwMTYgNDUuMDQwMzEzLC0xNy4xNTY1OCAxNy4xNTg1NDQsLTQ1LjAzOTc2IHoiIC8+CiAgICAgIDxlbGxpcHNlCiAgICAgICAgIHN0eWxlPSJvcGFjaXR5OjE7ZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxMi43MDQ4O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1kYXNob2Zmc2V0OjA7c3Ryb2tlLW9wYWNpdHk6MTttYXJrZXI6bm9uZSIKICAgICAgICAgaWQ9ImVsbGlwc2UzMzQ1MyIKICAgICAgICAgY3g9Ii0xMjIuODMxNjUiCiAgICAgICAgIGN5PSIxNTUuNzA5NTUiCiAgICAgICAgIHJ4PSI1OS44MDE5MjkiCiAgICAgICAgIHJ5PSI2MC45MjkxOTkiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIHN0eWxlPSJvcGFjaXR5OjE7ZmlsbDojY2NjY2NjO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxMi43MDQ4O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1kYXNob2Zmc2V0OjA7c3Ryb2tlLW9wYWNpdHk6MTttYXJrZXI6bm9uZSIKICAgICAgICAgZD0ibSAtNzAuODY3NTQzLDE3OS43NzEyOCBjIC00LjAyMTYxNSwtNjYuNzcwOTQgLTcwLjE4MjM2NywtODMuMzExMTQyIC0xMTAuNDk5NTY3LC00NS43NzAwNCAyMS4wMzY3NywtMjguNTY3MDkgNDguMDUyNzksLTQ2LjA0NTE5NyA3OC41NjYzOCwtMzMuNDA2MDIgMzAuNTEzNjIsMTIuNjM5MTMgNDEuNzk3NzkzLDQ1Ljk4MTczIDMxLjkzMzE4Nyw3OS4xNzYwNiB6IgogICAgICAgICBpZD0icGF0aDMzNDU1IiAvPgogICAgICA8cGF0aAogICAgICAgICBpZD0icGF0aDMzNDU3IgogICAgICAgICBkPSJtIC03My4zOTU1NzUsMTAyLjIyNzI2IGMgLTI4LjMzODE4NSwtMjguMzM4MjY0IC03NC4yODM2NjUsLTI4LjMzODI2NCAtMTAyLjYyMTg5NSwwIC0xNy45Mzc3OSwxNy45Mzc3NiAtMjQuNDg1MjMsNDIuOTEzMjcgLTE5LjcxNDEzLDY2LjAyODgzIGwgLTExLjI3NDg1LDguMTY5MzcgYyA1LjEzNDc3LDEzLjYxNzU2IDEyLjEzMTcsMjEuODU3NCAxNi45MTI0MSwyNi4yOTYzIGwgLTEwLjIyODM5LDEwLjIyODM0IGggLTEwLjgwMjUyIGwgLTgxLjAxNzA1LDgxLjAxNjU0IDI3LjAwNTgzLDI3LjAwNTYxIDgxLjAxNzAxLC04MS4wMTY4MyB2IC0xMC44MDIyNSBsIDEwLjE5NDY0LC0xMC4xOTQyNSBjIDQuNTYxNjIsNC43NTI0NCAxMi42OTk5NywxMS4zODEzOCAyNS43NTY4NiwxNi4zMDQ2OSBsIDcuODY1NDMsLTEwLjkwMzg2IGMgMjMuMzU4NTgsNS4xMjE5NyA0OC43NDIyNDUsLTEuMzQ3MDEgNjYuOTA2NDk4LC0xOS41MTE1IDI4LjMzODM4NiwtMjguMzM3MzIgMjguMzM4MTksLTc0LjI4Mjc2IDEuNTdlLTQsLTEwMi42MjA5OSB6IG0gLTEyLjk2MjgzNSwxMi45NjI5NiBjIDIxLjE3OTA5NSwyMS4xNzkyMSAyMS4xNzkwOTUsNTUuNTE2ODUgMCw3Ni42OTU3OSAtMjEuMTc5MDIsMjEuMTc4OTcgLTU1LjUxNzIxLDIxLjE3ODk3IC03Ni42OTYzLDAgLTIxLjE3ODk4LC0yMS4xNzg5NCAtMjEuMTc4OTgsLTU1LjUxNjU4IDAsLTc2LjY5NTc5IDIxLjE3OTI5LC0yMS4xNzkyMTYgNTUuNTE3MjgsLTIxLjE3OTIxNiA3Ni42OTYzLDAgeiIKICAgICAgICAgc3R5bGU9ImNvbG9yOiMwMDAwMDA7ZGlzcGxheTppbmxpbmU7b3ZlcmZsb3c6dmlzaWJsZTt2aXNpYmlsaXR5OnZpc2libGU7ZmlsbDojMmYyZjJmO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDo3Ljc2MDU5O21hcmtlcjpub25lO2VuYWJsZS1iYWNrZ3JvdW5kOmFjY3VtdWxhdGUiIC8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4K"},5940:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNC4wLjIsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYWxxdWVfMSIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIzNDMuMjU3NTdtbSIgaGVpZ2h0PSIzNDMuMjU3NTdtbSIgdmlld0JveD0iMCAwIDEyOTcuMzUxNSAxMjk3LjM1MTMiIHhtbDpzcGFjZT0icHJlc2VydmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIiB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPjxtZXRhZGF0YSBpZD0ibWV0YWRhdGExMTgiPjxyZGY6UkRGPjxjYzpXb3JrIHJkZjphYm91dD0iIj48ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD48ZGM6dHlwZSByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIi8+PC9jYzpXb3JrPjwvcmRmOlJERj48L21ldGFkYXRhPjxkZWZzIGlkPSJkZWZzNzIiPjxyZWN0IHg9IjExNTAuMzg0MyIgeT0iMjI5Mi44MTYyIiB3aWR0aD0iMjEwNy44ODc5IiBoZWlnaHQ9IjcwMS44ODcxNSIgaWQ9InJlY3QxNDE4MjMiLz48cmVjdCB4PSI0MTEuODgyNjkiIHk9IjEyNjEuNjEwOCIgd2lkdGg9IjgxNS4zNDY2OCIgaGVpZ2h0PSIxODEuOTI5MTEiIGlkPSJyZWN0NjY3NzUiLz48cmVjdCB4PSIyNTMuMDIwMDgiIHk9IjEyMTMuMDM1MiIgd2lkdGg9IjIyMDkuNzE5NyIgaGVpZ2h0PSI1ODMuNjU3NjUiIGlkPSJyZWN0NjAyNzkiLz48cmVjdCB4PSIxMTUwLjM4NDMiIHk9IjIyOTIuODE2MiIgd2lkdGg9IjI1NTEuMDA4MSIgaGVpZ2h0PSI3MDEuMzkxMzYiIGlkPSJyZWN0MTQxODIzLTEiLz48bGluZWFyR3JhZGllbnQgeTI9IjYyLjI4ODYwMSIgeDI9IjI0OC42OTE4IiB5MT0iMjMxLjcxMTQiIHgxPSIzNDYuNTA4MjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoNi42MzI2NzYxLDAsMCw2LjYzMjY3NjEsLTEyMjEuNDA3OSwtNzEzLjY0NjY3KSI+CgkJPHN0b3AgaWQ9InN0b3A0IiBzdHlsZT0ic3RvcC1jb2xvcjojOEYyQTg1IiBvZmZzZXQ9IjAiLz4KCQk8c3RvcCBpZD0ic3RvcDYiIHN0eWxlPSJzdG9wLWNvbG9yOiMyNTcwQjYiIG9mZnNldD0iMSIvPgoJPC9saW5lYXJHcmFkaWVudD48L2RlZnM+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgaWQ9InN0eWxlMiI+Cgkuc3Qwe2ZpbGw6dXJsKCNTVkdJRF8xXyk7fQoJLnN0MXtmaWxsOiNGRkZGRkY7fQoJLnN0MntkaXNwbGF5Om5vbmU7ZmlsbDpub25lO3N0cm9rZTojRTYyMDU0O3N0cm9rZS13aWR0aDo3LjU7c3Ryb2tlLW1pdGVybGltaXQ6MTA7fQo8L3N0eWxlPgoKPHRleHQgeT0iLTIyNDguODE4OCIgc3R5bGU9ImZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXNpemU6NDBweDtsaW5lLWhlaWdodDoxMjUlO2ZvbnQtZmFtaWx5OlNhbnM7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7d2hpdGUtc3BhY2U6cHJlO3NoYXBlLWluc2lkZTp1cmwoI3JlY3Q2MDI3OSk7ZGlzcGxheTppbmxpbmU7ZmlsbDojMDAwMDAwO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxcHg7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlLW9wYWNpdHk6MSIgaWQ9InRleHQ2MDI3NyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdHJhbnNmb3JtPSJtYXRyaXgoMC45OTk5OTg4OSwwLDAsMC45OTk5OTg4OSwtMTY0LjcxOTkxLC0xNjUuMTg0NjcpIi8+PHRleHQgeT0iLTQzMjQuMTkzNCIgeD0iMzA0LjA2ODE1IiBzdHlsZT0iZm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc2l6ZTo4OS44MDU4cHg7bGluZS1oZWlnaHQ6MjAwJTtmb250LWZhbWlseTpTYW5zO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O3doaXRlLXNwYWNlOnByZTtzaGFwZS1pbnNpZGU6dXJsKCNyZWN0NjY3NzUpO2Rpc3BsYXk6aW5saW5lO2ZpbGw6IzAwMDAwMDtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6Mi4yNDUxNXB4O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1vcGFjaXR5OjEiIGlkPSJ0ZXh0NjY3NzMiIHhtbDpzcGFjZT0icHJlc2VydmUiIHRyYW5zZm9ybT0ibWF0cml4KDAuOTk5OTk4ODksMCwwLDAuOTk5OTk4ODksLTE2NC43MTk5MSwtMTY1LjE4NDY3KSIvPjx0ZXh0IHk9Ii0yMjQ4LjUxNzMiIHg9Ii0xMjEuNjY4NjkiIHN0eWxlPSJmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjQwcHg7bGluZS1oZWlnaHQ6MDtmb250LWZhbWlseTpTYW5zO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O3doaXRlLXNwYWNlOnByZTtzaGFwZS1pbnNpZGU6dXJsKCNyZWN0MTQxODIzKTtkaXNwbGF5OmlubGluZTtmaWxsOiMwMDAwMDA7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjFweDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2Utb3BhY2l0eToxIiBpZD0idGV4dDE0MTgyMSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdHJhbnNmb3JtPSJtYXRyaXgoMC45OTk5OTg4OSwwLDAsMC45OTk5OTg4OSwtMTY0LjcxOTkxLC0xNjUuMTg0NjcpIi8+PHRleHQgeT0iLTMxODEuMTczMSIgeD0iLTE1OC44Mzk4NCIgc3R5bGU9ImZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXNpemU6NDBweDtsaW5lLWhlaWdodDowO2ZvbnQtZmFtaWx5OlNhbnM7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7d2hpdGUtc3BhY2U6cHJlO3NoYXBlLWluc2lkZTp1cmwoI3JlY3QxNDE4MjMtMSk7ZGlzcGxheTppbmxpbmU7ZmlsbDojMDAwMDAwO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxcHg7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlLW9wYWNpdHk6MSIgaWQ9InRleHQxNDE4MjEtMCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdHJhbnNmb3JtPSJtYXRyaXgoMC45OTk5OTg4OSwwLDAsMC45OTk5OTg4OSwtMTY0LjcxOTkxLC0xNjUuMTg0NjcpIi8+PHBhdGggc3R5bGU9ImRpc3BsYXk6bm9uZTtmaWxsOm5vbmU7c3Ryb2tlOiNlNjIwNTQ7c3Ryb2tlLXdpZHRoOjQ5Ljc0NTE7c3Ryb2tlLW1pdGVybGltaXQ6MTAiIGlkPSJwYXRoNDkiIGQ9Im0gMTA2NS44NzEsNTAzLjQyMDExIGMgLTE5LjIzNDcsMCAtMzUuMTUzMSwtMTUuOTE4NDIgLTM1LjE1MzEsLTM1LjE1MzE4IFYgMzM0LjI4Njg3IEggODcwLjg3MDMyIGMgLTE5LjIzNDc2LDAgLTM1LjE1MzE5LC0xNS45MTg0MiAtMzUuMTUzMTksLTM1LjE1MzE4IDAsLTE5LjIzNDc2IDE1LjkxODQzLC0zNS4xNTMxOSAzNS4xNTMxOSwtMzUuMTUzMTkgSCAxMDY1Ljg3MSBjIDE5LjIzNDgsMCAzNS4xNTMyLDE1LjkxODQzIDM1LjE1MzIsMzUuMTUzMTkgdiAxNjkuMTMzMjQgYyAwLjY2MzMsMTkuMjM0NzYgLTE1LjI1NTEsMzUuMTUzMTggLTM1LjE1MzIsMzUuMTUzMTggeiIgY2xhc3M9InN0MiIvPjxwYXRoIHN0eWxlPSJkaXNwbGF5Om5vbmU7ZmlsbDpub25lO3N0cm9rZTojZTYyMDU0O3N0cm9rZS13aWR0aDo0OS43NDUxO3N0cm9rZS1taXRlcmxpbWl0OjEwIiBpZD0icGF0aDUzIiBkPSJNIDQyNi40ODEwMiwxMDMyLjcwNzcgSCAyMzEuNDgwMzQgYyAtMTkuMjM0NzYsMCAtMzUuMTUzMTgsLTE1LjkxODUgLTM1LjE1MzE4LC0zNS4xNTMyMiBWIDgyOC40MjEyNCBjIDAsLTE5LjIzNDc2IDE1LjkxODQyLC0zNS4xNTMxOCAzNS4xNTMxOCwtMzUuMTUzMTggMTkuMjM0NzYsMCAzNS4xNTMxOCwxNS45MTg0MiAzNS4xNTMxOCwzNS4xNTMxOCB2IDEzMy4zMTY3OSBoIDE1OS44NDc1IGMgMTkuMjM0NzYsMCAzNS4xNTMxOCwxNS45MTg0MiAzNS4xNTMxOCwzNS4xNTMxOCAwLDE5LjIzNDc5IC0xNS4yNTUxNSwzNS44MTY0OSAtMzUuMTUzMTgsMzUuODE2NDkgeiIgY2xhc3M9InN0MiIvPjxwYXRoIHN0eWxlPSJkaXNwbGF5Om5vbmU7ZmlsbDpub25lO3N0cm9rZTojZTYyMDU0O3N0cm9rZS13aWR0aDo0OS43NDUxO3N0cm9rZS1taXRlcmxpbWl0OjEwIiBpZD0icGF0aDU3IiBkPSJtIDIzMS40ODAzNCw1MDMuNDIwMTEgYyAtMTkuMjM0NzYsMCAtMzUuMTUzMTgsLTE1LjkxODQyIC0zNS4xNTMxOCwtMzUuMTUzMTggViAyOTkuMTMzNjkgYyAwLC0xOS4yMzQ3NiAxNS45MTg0MiwtMzUuMTUzMTkgMzUuMTUzMTgsLTM1LjE1MzE5IGggMTk1LjAwMDY4IGMgMTkuMjM0NzYsMCAzNS4xNTMxOCwxNS45MTg0MyAzNS4xNTMxOCwzNS4xNTMxOSAwLDE5LjIzNDc2IC0xNS45MTg0MiwzNS4xNTMxOCAtMzUuMTUzMTgsMzUuMTUzMTggaCAtMTU5Ljg0NzUgdiAxMzMuMzE2NzkgYyAwLjY2MzI3LDE5Ljg5ODAzIC0xNS4yNTUxNSwzNS44MTY0NSAtMzUuMTUzMTgsMzUuODE2NDUgeiIgY2xhc3M9InN0MiIvPjxwYXRoIHN0eWxlPSJkaXNwbGF5Om5vbmU7ZmlsbDpub25lO3N0cm9rZTojZTYyMDU0O3N0cm9rZS13aWR0aDo0OS43NDUxO3N0cm9rZS1taXRlcmxpbWl0OjEwIiBpZD0icGF0aDYxIiBkPSJNIDEwNjUuODcxLDEwMzIuNzA3NyBIIDg3MC44NzAzMiBjIC0xOS4yMzQ3NiwwIC0zNS4xNTMxOSwtMTUuOTE4NSAtMzUuMTUzMTksLTM1LjE1MzIyIDAsLTE5LjIzNDc2IDE1LjkxODQzLC0zNS4xNTMxOCAzNS4xNTMxOSwtMzUuMTUzMTggSCAxMDMwLjcxNzkgViA4MjkuMDg0NTEgYyAwLC0xOS4yMzQ3NiAxNS45MTg0LC0zNS4xNTMxOSAzNS4xNTMxLC0zNS4xNTMxOSAxOS4yMzQ4LDAgMzUuMTUzMiwxNS45MTg0MyAzNS4xNTMyLDM1LjE1MzE5IHYgMTY5LjEzMzI0IGMgMC42NjMzLDE4LjU3MTQ1IC0xNS4yNTUxLDM0LjQ4OTk1IC0zNS4xNTMyLDM0LjQ4OTk1IHoiIGNsYXNzPSJzdDIiLz48ZyBpZD0iZzEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDMuODAwODQsMzg3LjMxOSkiPjxjaXJjbGUgc3R5bGU9ImZpbGw6dXJsKCNTVkdJRF8xXyk7c3Ryb2tlLXdpZHRoOjYuNjMyNjgiIGlkPSJjaXJjbGU5IiByPSI2NDguNjc1NzIiIGN5PSIyNjEuMzU2NzIiIGN4PSI3NTIuNDc2NTYiIGNsYXNzPSJzdDAiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDExIiBkPSJtIDQ2NS4yODE2MywxOTkuNjcyODMgYyAtMC42NjMyNywwIC0xLjMyNjUzLDAgLTEuOTg5OCwwIGwgLTM2LjQ3OTcyLC0xMC42MTIyOCBjIC0yLjY1MzA3LC0wLjY2MzI3IC00LjY0Mjg3LC0zLjMxNjM0IC00LjY0Mjg3LC02LjYzMjY4IHYgLTQ5LjA4MTggYyAwLC0xLjk4OTggMS4zMjY1MywtMy45Nzk2MSAyLjY1MzA3LC01LjMwNjE0IDEuOTg5OCwtMS4zMjY1NCAzLjk3OTYsLTEuMzI2NTQgNS45Njk0MSwtMC42NjMyNyBsIDM2LjQ3OTcyLDEzLjI2NTM1IGMgMi42NTMwNywwLjY2MzI3IDQuNjQyODcsMy4zMTYzNCA0LjY0Mjg3LDUuOTY5NDEgdiA0Ni40Mjg3MyBjIDAsMS45ODk4MSAtMC42NjMyNywzLjk3OTYxIC0yLjY1MzA3LDUuMzA2MTQgLTEuMzI2NTQsMC42NjMyNyAtMi42NTMwNywxLjMyNjU0IC0zLjk3OTYxLDEuMzI2NTQgeiBtIC0yOS44NDcwNCwtMjIuNTUxMSAyMy4yMTQzNyw2LjYzMjY4IHYgLTMzLjE2MzM4IGwgLTIzLjIxNDM3LC04LjYyMjQ4IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDEzIiBkPSJtIDQ2NS4yODE2MywyOTIuNTMwMjkgYyAtMC42NjMyNywwIC0wLjY2MzI3LDAgLTEuMzI2NTMsMCBsIC0zNi40Nzk3MiwtNy45NTkyMSBjIC0zLjMxNjM0LC0wLjY2MzI2IC01LjMwNjE0LC0zLjMxNjMzIC01LjMwNjE0LC02LjYzMjY3IFYgMjI4Ljg1NjYgYyAwLC0xLjk4OTggMC42NjMyNywtMy45Nzk2IDIuNjUzMDcsLTUuMzA2MTQgMS4zMjY1MywtMS4zMjY1MyAzLjk3OTYsLTEuOTg5OCA1Ljk2OTQxLC0xLjMyNjUzIGwgMzYuNDc5NzIsOS4yODU3NCBjIDIuNjUzMDcsMC42NjMyNyA1LjMwNjE0LDMuMzE2MzQgNS4zMDYxNCw2LjYzMjY4IHYgNDcuNzU1MjcgYyAwLDEuOTg5OCAtMC42NjMyNywzLjk3OTYgLTIuNjUzMDcsNS4zMDYxNCAtMS45ODk4MSwwLjY2MzI3IC0zLjMxNjM0LDEuMzI2NTMgLTQuNjQyODgsMS4zMjY1MyB6IG0gLTI5Ljg0NzA0LC0xOS44OTgwMiAyMy4yMTQzNyw1LjMwNjE0IHYgLTM0LjQ4OTkyIGwgLTIzLjIxNDM3LC01Ljk2OTQxIHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDE1IiBkPSJtIDUyNS42Mzg5OCwzMDYuNDU4OTEgYyAtMC42NjMyNiwwIC0xLjMyNjUzLDAgLTEuMzI2NTMsMCBsIC0zNi40Nzk3MiwtOC42MjI0NyBjIC0zLjMxNjM0LC0wLjY2MzI3IC01LjMwNjE0LC0zLjMxNjM0IC01LjMwNjE0LC02LjYzMjY4IHYgLTQ4LjQxODU0IGMgMCwtMS45ODk4IDAuNjYzMjcsLTMuOTc5NiAyLjY1MzA3LC01LjMwNjE0IDEuOTg5OCwtMS4zMjY1MyAzLjk3OTYxLC0xLjk4OTggNS45Njk0MSwtMS4zMjY1MyBsIDM2LjQ3OTcyLDkuMjg1NzQgYyAyLjY1MzA3LDAuNjYzMjcgNS4zMDYxNCwzLjMxNjM0IDUuMzA2MTQsNi42MzI2OCB2IDQ3Ljc1NTI3IGMgMCwxLjk4OTggLTAuNjYzMjcsMy45Nzk2IC0yLjY1MzA3LDUuMzA2MTQgLTEuOTg5OCwwLjY2MzI3IC0zLjMxNjM0LDEuMzI2NTMgLTQuNjQyODgsMS4zMjY1MyB6IG0gLTI5Ljg0NzA0LC0yMC41NjEyOSAyMy4yMTQzNyw1LjMwNjE0IHYgLTM0LjQ4OTkyIGwgLTIzLjIxNDM3LC01Ljk2OTQxIHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDE3IiBkPSJtIDYwOS44NzM5NywyODUuMjM0MzUgYyAtMC42NjMyNywwIC0xLjMyNjUzLDAgLTEuOTg5OCwwIGwgLTQzLjExMjQsLTE0LjU5MTg5IGMgLTIuNjUzMDcsLTAuNjYzMjYgLTMuOTc5NiwtMy4zMTYzMyAtMy45Nzk2LC01LjMwNjE0IHYgLTMwLjUxMDMxIGMgMCwtMS45ODk4IDAuNjYzMjcsLTMuOTc5NiAyLjY1MzA3LC00LjY0Mjg3IDEuMzI2NTMsLTEuMzI2NTQgMy4zMTYzNCwtMS4zMjY1NCA1LjMwNjE0LC0wLjY2MzI3IGwgNDMuMTEyMzksMTUuOTE4NDIgYyAxLjk4OTgxLDAuNjYzMjcgMy45Nzk2MSwzLjMxNjM0IDMuOTc5NjEsNS4zMDYxNCB2IDI5LjE4Mzc4IGMgMCwxLjk4OTggLTAuNjYzMjcsMy4zMTYzNCAtMi42NTMwNyw0LjY0Mjg3IC0wLjY2MzI3LDAgLTEuOTg5OCwwLjY2MzI3IC0zLjMxNjM0LDAuNjYzMjcgeiBtIC0zNy4xNDI5OCwtMjQuNTQwOSAzMS44MzY4NCwxMC42MTIyOCB2IC0xNy4yNDQ5NiBsIC0zMS44MzY4NCwtMTEuOTM4ODEgeiIgY2xhc3M9InN0MSIvPjxwYXRoIHN0eWxlPSJmaWxsOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjYuNjMyNjgiIGlkPSJwYXRoMTkiIGQ9Im0gNjM4LjM5NDQ4LDM1MC4yMzQ1OCBjIC0wLjY2MzI3LDAgLTAuNjYzMjcsMCAtMS4zMjY1NCwwIGwgLTQxLjc4NTg2LC05Ljk0OTAyIGMgLTIuNjUzMDcsLTAuNjYzMjcgLTQuNjQyODcsLTIuNjUzMDcgLTQuNjQyODcsLTUuMzA2MTQgdiAtMzEuMTczNTggYyAwLC0xLjk4OTggMC42NjMyNywtMy4zMTYzMyAxLjk4OTgsLTQuNjQyODcgMS4zMjY1NCwtMS4zMjY1MyAzLjMxNjM0LC0xLjMyNjUzIDUuMzA2MTQsLTAuNjYzMjcgbCA0MS43ODU4NiwxMS4yNzU1NSBjIDIuNjUzMDcsMC42NjMyNyAzLjk3OTYxLDIuNjUzMDcgMy45Nzk2MSw1LjMwNjE0IHYgMjkuODQ3MDUgYyAwLDEuOTg5OCAtMC42NjMyNywzLjMxNjMzIC0xLjk4OTgsNC42NDI4NyAtMC42NjMyNywwIC0xLjk4OTgxLDAuNjYzMjcgLTMuMzE2MzQsMC42NjMyNyB6IG0gLTM1LjgxNjQ1LC0yMC41NjEzIDMwLjUxMDMxLDcuMjk1OTQgViAzMTkuMDYxIGwgLTMwLjUxMDMxLC03Ljk1OTIxIHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDIxIiBkPSJtIDUyNS42Mzg5OCwyMTguMjQ0MzIgYyAtMC42NjMyNiwwIC0xLjMyNjUzLDAgLTEuOTg5OCwwIGwgLTM3LjE0Mjk4LC05Ljk0OTAxIGMgLTIuNjUzMDcsLTAuNjYzMjcgLTQuNjQyODgsLTMuMzE2MzQgLTQuNjQyODgsLTYuNjMyNjggdiAtNDkuMDgxOCBjIDAsLTEuOTg5OCAxLjMyNjU0LC0zLjk3OTYxIDIuNjUzMDcsLTUuMzA2MTQgMS45ODk4MSwtMS4zMjY1NCAzLjk3OTYxLC0xLjMyNjU0IDUuOTY5NDEsLTAuNjYzMjcgbCAzNy4xNDI5OSwxMy4yNjUzNSBjIDIuNjUzMDcsMC42NjMyNyA0LjY0Mjg3LDMuMzE2MzQgNC42NDI4Nyw1Ljk2OTQxIHYgNDUuNzY1NDcgYyAwLDEuOTg5OCAtMC42NjMyNywzLjk3OTYgLTIuNjUzMDcsNS4zMDYxNCAtMS4zMjY1MywwLjY2MzI2IC0yLjY1MzA3LDEuMzI2NTMgLTMuOTc5NjEsMS4zMjY1MyB6IG0gLTMwLjUxMDMxLC0yMS44ODc4MyAyMy44Nzc2NCw2LjYzMjY4IHYgLTMyLjUwMDEyIGwgLTIzLjg3NzY0LC04LjYyMjQ3IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDIzIiBkPSJtIDY5MC43OTI2MiwzNTYuODY3MjUgYyAtOC42MjI0OCwwIC0xNS4yNTUxNiwtNy45NTkyMSAtMTUuMjU1MTYsLTE3LjI0NDk2IDAsLTkuMjg1NzQgNi42MzI2OCwtMTcuMjQ0OTUgMTUuMjU1MTYsLTE3LjI0NDk1IDguNjIyNDgsMCAxNS4yNTUxNSw3Ljk1OTIxIDE1LjI1NTE1LDE3LjI0NDk1IDAsOS4yODU3NSAtNi42MzI2NywxNy4yNDQ5NiAtMTUuMjU1MTUsMTcuMjQ0OTYgeiBtIDAsLTI1LjIwNDE3IGMgLTMuMzE2MzQsMCAtNS45Njk0MSwzLjMxNjM0IC01Ljk2OTQxLDcuOTU5MjEgMCw0LjY0Mjg4IDIuNjUzMDcsNy45NTkyMiA1Ljk2OTQxLDcuOTU5MjIgMy4zMTYzNCwwIDUuOTY5NDEsLTMuMzE2MzQgNS45Njk0MSwtNy45NTkyMiAwLC00LjY0Mjg3IC0yLjY1MzA3LC03Ljk1OTIxIC01Ljk2OTQxLC03Ljk1OTIxIHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDI1IiBkPSJtIDEwNDEuNjYxMiwxOTkuNjcyODMgYyAtMS4zMjY1LDAgLTIuNjUzMSwtMC42NjMyNyAtMy45Nzk2LC0xLjMyNjU0IC0xLjk4OTgsLTEuMzI2NTMgLTIuNjUzMSwtMy4zMTYzMyAtMi42NTMxLC01LjMwNjE0IHYgLTQ2LjQyODczIGMgMCwtMi42NTMwNyAxLjk4OTgsLTUuMzA2MTQgNC42NDI5LC01Ljk2OTQxIGwgMzYuNDc5NywtMTMuMjY1MzUgYyAxLjk4OTgsLTAuNjYzMjcgMy45Nzk2LC0wLjY2MzI3IDUuOTY5NCwwLjY2MzI3IDEuOTg5OCwxLjMyNjUzIDIuNjUzMSwzLjMxNjM0IDIuNjUzMSw1LjMwNjE0IHYgNDkuMDgxOCBjIDAsMi42NTMwNyAtMS45ODk4LDUuMzA2MTQgLTQuNjQyOSw2LjYzMjY4IGwgLTM2LjQ3OTcsMTAuNjEyMjggYyAtMC42NjMzLDAgLTEuMzI2NSwwIC0xLjk4OTgsMCB6IG0gNi42MzI3LC00OC40MTg1NCB2IDMzLjE2MzM4IGwgMjMuMjE0MywtNi42MzI2NyB2IC0zNC40ODk5MiB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgyNyIgZD0ibSAxMDQxLjY2MTIsMjkyLjUzMDI5IGMgLTEuMzI2NSwwIC0yLjY1MzEsLTAuNjYzMjYgLTMuOTc5NiwtMS4zMjY1MyAtMS4zMjY2LC0xLjMyNjU0IC0yLjY1MzEsLTMuMzE2MzQgLTIuNjUzMSwtNS4zMDYxNCB2IC00Ny43NTUyNyBjIDAsLTMuMzE2MzQgMS45ODk4LC01Ljk2OTQxIDUuMzA2MiwtNi42MzI2OCBsIDM2LjQ3OTcsLTkuMjg1NzQgYyAxLjk4OTgsLTAuNjYzMjcgMy45Nzk2LDAgNS45Njk0LDEuMzI2NTMgMS4zMjY1LDEuMzI2NTQgMi42NTMsMy4zMTYzNCAyLjY1Myw1LjMwNjE0IHYgNDkuMDgxODEgYyAwLDMuMzE2MzQgLTEuOTg5OCw1Ljk2OTQxIC01LjMwNjEsNi42MzI2NyBsIC0zNi40Nzk3LDcuOTU5MjEgYyAtMS4zMjY1LDAgLTEuMzI2NSwwIC0xLjk4OTgsMCB6IG0gNi42MzI3LC00OS4wODE4IHYgMzQuNDg5OTIgbCAyMy4yMTQzLC01LjMwNjE0IHYgLTM1LjE1MzE5IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDI5IiBkPSJtIDk4MS45NjcxLDMwNi40NTg5MSBjIC0xLjMyNjUzLDAgLTIuNjUzMDcsLTAuNjYzMjYgLTMuOTc5NjEsLTEuMzI2NTMgLTEuMzI2NTMsLTEuMzI2NTQgLTIuNjUzMDcsLTMuMzE2MzQgLTIuNjUzMDcsLTUuMzA2MTQgdiAtNDcuNzU1MjcgYyAwLC0zLjMxNjM0IDEuOTg5ODEsLTUuOTY5NDEgNS4zMDYxNSwtNi42MzI2OCBsIDM2LjQ3OTczLC05LjI4NTc0IGMgMS45ODk4LC0wLjY2MzI3IDMuOTc5NiwwIDUuOTY5NCwxLjMyNjUzIDEuMzI2NSwxLjMyNjU0IDIuNjUzMSwzLjMxNjM0IDIuNjUzMSw1LjMwNjE0IHYgNDguNDE4NTQgYyAwLDMuMzE2MzQgLTEuOTg5OCw1Ljk2OTQxIC01LjMwNjIsNi42MzI2OCBsIC0zNi40Nzk3LDguNjIyNDcgYyAtMC42NjMyNiwwIC0xLjMyNjUzLDAgLTEuOTg5OCwwIHogbSA2LjYzMjY4LC00OS4wODE4IHYgMzQuNDg5OTIgbCAyMy4yMTQzMiwtNS4zMDYxNCB2IC0zNC40ODk5MiB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgzMSIgZD0ibSA4OTcuMDY4ODUsMjg1LjIzNDM1IGMgLTEuMzI2NTQsMCAtMi42NTMwNywtMC42NjMyNyAtMy4zMTYzNCwtMS4zMjY1MyAtMS4zMjY1NCwtMS4zMjY1NCAtMi42NTMwNywtMi42NTMwNyAtMi42NTMwNywtNC42NDI4OCB2IC0yOS4xODM3NyBjIDAsLTIuNjUzMDcgMS4zMjY1MywtNC42NDI4OCAzLjk3OTYsLTUuMzA2MTQgbCA0My43NzU2NywtMTUuOTE4NDMgYyAxLjk4OTgsLTAuNjYzMjYgMy45Nzk2LC0wLjY2MzI2IDUuMzA2MTQsMC42NjMyNyAxLjMyNjUzLDEuMzI2NTQgMi42NTMwNywyLjY1MzA3IDIuNjUzMDcsNC42NDI4NyB2IDMwLjUxMDMxIGMgMCwyLjY1MzA4IC0xLjMyNjU0LDQuNjQyODggLTMuOTc5NjEsNS4zMDYxNSBsIC00My43NzU2NiwxNC41OTE4OCBjIC0wLjY2MzI3LDAuNjYzMjcgLTEuMzI2NTQsMC42NjMyNyAtMS45ODk4LDAuNjYzMjcgeiBtIDUuOTY5NCwtMzEuMTczNTggdiAxNy4yNDQ5NiBsIDMyLjUwMDEyLC0xMC42MTIyOCB2IC0xNy45MDgyMyB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgzMyIgZD0ibSA4NjUuODk1MjcsMzQ5LjU3MTMxIGMgLTEuMzI2NTQsLTEuMzI2NTQgLTEuOTg5OCwtMi42NTMwNyAtMS45ODk4LC00LjY0Mjg3IHYgLTI5Ljg0NzA1IGMgMCwtMi42NTMwNyAxLjk4OTgsLTQuNjQyODcgMy45Nzk2LC01LjMwNjE0IGwgNDEuNzg1ODYsLTExLjI3NTU1IGMgMS45ODk4LC0wLjY2MzI2IDMuMzE2MzQsMCA1LjMwNjE0LDAuNjYzMjcgMS4zMjY1NCwxLjMyNjU0IDEuOTg5OCwyLjY1MzA3IDEuOTg5OCw0LjY0Mjg3IHYgMzEuMTczNTggYyAwLDIuNjUzMDcgLTEuOTg5OCw1LjMwNjE0IC00LjY0Mjg3LDUuMzA2MTQgbCAtNDEuNzg1ODYsOS45NDkwMiBjIC0wLjY2MzI3LDAuNjYzMjYgLTMuOTc5NiwwIC00LjY0Mjg3LC0wLjY2MzI3IHogbSA5LjI4NTc1LC0yOS44NDcwNCB2IDE3LjkwODIyIGwgMzAuNTEwMzEsLTcuMjk1OTQgdiAtMTkuMjM0NzYgeiIgY2xhc3M9InN0MSIvPjxwYXRoIHN0eWxlPSJmaWxsOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjYuNjMyNjgiIGlkPSJwYXRoMzUiIGQ9Im0gOTgxLjk2NzEsMjE4LjI0NDMyIGMgLTEuMzI2NTMsMCAtMi42NTMwNywtMC42NjMyNyAtMy45Nzk2MSwtMS4zMjY1MyAtMS4zMjY1MywtMS4zMjY1NCAtMi42NTMwNywtMy4zMTYzNCAtMi42NTMwNywtNS4zMDYxNCB2IC00NS43NjU0NyBjIDAsLTIuNjUzMDcgMS45ODk4MSwtNS4zMDYxNCA0LjY0Mjg4LC01Ljk2OTQxIGwgMzYuNDc5NywtMTMuMjY1MzUgYyAxLjk4OTgsLTAuNjYzMjcgMy45Nzk2LC0wLjY2MzI3IDUuOTY5NCwwLjY2MzI3IDEuOTg5OCwxLjMyNjUzIDIuNjUzMSwzLjMxNjM0IDIuNjUzMSw1LjMwNjE0IHYgNDkuMDgxOCBjIDAsMy4zMTYzNCAtMS45ODk4LDUuMzA2MTQgLTQuNjQyOSw2LjYzMjY4IGwgLTM2LjQ3OTcsOS45NDkwMSBjIC0wLjY2MzI2LDAgLTEuMzI2NTMsMCAtMS45ODk4LDAgeiBtIDYuNjMyNjgsLTQ3Ljc1NTI3IHYgMzIuNTAwMTIgbCAyMy4yMTQzMiwtNi42MzI2OCB2IC0zNC40ODk5MSB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgzNyIgZD0ibSA4MTYuODEzNDcsMzU2Ljg2NzI1IGMgLTguNjIyNDgsMCAtMTUuMjU1MTYsLTcuOTU5MjEgLTE1LjI1NTE2LC0xNy4yNDQ5NiAwLC05LjI4NTc0IDYuNjMyNjgsLTE3LjI0NDk1IDE1LjI1NTE2LC0xNy4yNDQ5NSA4LjYyMjQ3LDAgMTUuMjU1MTUsNy45NTkyMSAxNS4yNTUxNSwxNy4yNDQ5NSAwLDkuMjg1NzUgLTYuNjMyNjgsMTcuMjQ0OTYgLTE1LjI1NTE1LDE3LjI0NDk2IHogbSAwLC0yNS4yMDQxNyBjIC0zLjMxNjM0LDAgLTUuOTY5NDEsMy4zMTYzNCAtNS45Njk0MSw3Ljk1OTIxIDAsNC42NDI4OCAyLjY1MzA3LDcuOTU5MjIgNS45Njk0MSw3Ljk1OTIyIDMuMzE2MzMsMCA1Ljk2OTQsLTMuMzE2MzQgNS45Njk0LC03Ljk1OTIyIDAsLTQuNjQyODcgLTIuNjUzMDcsLTcuOTU5MjEgLTUuOTY5NCwtNy45NTkyMSB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGgzOSIgZD0ibSAxMjc1Ljc5NDcsLTEzLjIzNjA3NCBjIDAsLTEuMzI2NTM1IDAsLTEuOTg5ODAzIDAsLTMuMzE2MzM4IC0xLjMyNjYsLTMuMzE2MzM4IC01LjMwNjIsLTUuMzA2MTQxIC04LjYyMjUsLTMuOTc5NjA2IGwgLTM3LjE0MywxMy45Mjg2MjAzIFYgNy4zMjUyMjIxIDEzLjk1Nzg5OCBsIDMyLjUwMDEsLTE1LjI1NTE1NDkgViA1MjkuMzE2ODMgaCAtMzIuNTAwMSB2IDEzLjI2NTM1IGggMzkuMTMyOCBjIDMuOTc5NiwwIDYuNjMyNywtMi42NTMwNyA3LjI5NTksLTYuNjMyNjcgViAtMTEuOTA5NTM5IGMgMCwwIDAsLTAuNjYzMjY3IC0wLjY2MzIsLTEuMzI2NTM1IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDQxIiBkPSJtIDExMDguNjUxMiw1My4wOTA2ODcgdiAtMTMuOTI4NjIgbCAtMzMuMTYzNCwxMi42MDIwODUgYyAtMC42NjMyLDAgLTAuNjYzMiwwLjY2MzI2OCAtMS4zMjY1LDAuNjYzMjY4IDAsMCAtMTEzLjQxODc2LDY5LjY0MzEgLTExNS40MDg1Nyw3MC45Njk2MyAtMS45ODk4LDEuMzI2NTQgLTMuOTc5NiwzLjMxNjM0IC0zLjk3OTYsNS45Njk0MSB2IDM3LjgwNjI2IGwgLTEwOS40MzkxNiw2NS4wMDAyMiBjIC0xLjk4OTgsMC42NjMyNyAtMy4zMTYzNCwzLjMxNjM0IC0zLjMxNjM0LDUuMzA2MTQgbCAtMC42NjMyNiwzMS44MzY4NSAtNTkuNjk0MDksMzUuMTUzMTggYyAtMy4zMTYzNCwxLjk4OTggLTEuOTg5OCw2LjYzMjY4IC0xLjk4OTgsOS45NDkwMiAwLDMuMzE2MzMgMCw3Mi4yOTYxNiAwLDcyLjI5NjE2IGwgLTI1LjIwNDE3LC05LjI4NTc0IGMgLTEuMzI2NTQsLTAuNjYzMjcgLTMuMzE2MzQsLTAuNjYzMjcgLTQuNjQyODcsMCBsIC0yMi41NTExLDkuMjg1NzQgYyAwLDAgMCwtNzEuNjMyOSAwLC03Mi4yOTYxNiAwLC0zLjk3OTYxIDAuNjYzMjcsLTcuMjk1OTUgLTIuNjUzMDcsLTkuMjg1NzUgbCAtNTkuNjk0MDksLTM1LjE1MzE4IC0wLjY2MzI2LC0zMS44MzY4NSBjIDAsLTEuOTg5OCAtMS4zMjY1NCwtMy45Nzk2MSAtMy4zMTYzNCwtNS4zMDYxNCBMIDU1Mi4xNjk2OSwxNjguNDk5MjUgdiAtMzkuMTMyNzkgYyAwLC0yLjY1MzA3IC0xLjMyNjU0LC00LjY0Mjg3IC0zLjk3OTYxLC01Ljk2OTQxIGwgLTguNjIyNDgsLTMuOTc5NiAtMTMwLjY2MzcxLC03OC45Mjg4NDcgYyAtMC42NjMyNywwIC0wLjY2MzI3LC0wLjY2MzI2OCAtMS4zMjY1NCwtMC42NjMyNjggbCAtOS4yODU3NSwtMy45Nzk2MDYgdiAxNC41OTE4ODggbCAzLjk3OTYxLDEuOTg5ODAzIDMxLjE3MzU4LDE5Ljg5ODAyOCAtMjUuMjA0MTcsLTExLjI3NTU1IGMgLTAuNjYzMjcsMCAtMC42NjMyNywwIC0wLjY2MzI3LDAgbCAtOS4yODU3NSwtNS4zMDYxNCB2IDE1LjkxODQyMiA0NTguOTgxMTkgMTMuMjY1MzUgaCA1Ljk2OTQxIGMgMS45ODk4LDAgMy4zMTYzNCwtMC42NjMyNyA1LjMwNjE0LC0xLjk4OTggMS45ODk4MSwtMS4zMjY1NCAzNDIuOTA5MzYsLTE1MC41NjE3NSAzNDIuOTA5MzYsLTE1MC41NjE3NSAwLDAgMzQ2Ljg4ODk5LDE1MS44ODgyOCAzNDguODc4NzksMTUyLjU1MTU1IDEuOTg5OCwwLjY2MzI3IDcuMjk1OSwwIDcuMjk1OSwwIFYgNTMwLjY0MzM3IDcxLjY2MjE4IDU3LjczMzU2IGwgLTYwLjM1NzMsMjYuNTMwNzA1IDMxLjgzNjgsLTE5Ljg5ODAyOCB6IE0gNTAyLjQyNDYyLDQ4NS41NDExNyA0NTEuMzUzMDEsNTA4LjA5MjI3IFYgMzQzLjYwMTkgbCA1MS4wNzE2MSw5LjI4NTc1IHogbSAzNS44MTY0NSwtMjkwLjUxMTIxIHYgMjczLjkyOTUyIGwgLTIyLjU1MTEsOS45NDkwMSBWIDM0Ny41ODE1MSBjIDAsLTMuMzE2MzQgLTEuOTg5OCwtNS45Njk0MSAtNS4zMDYxNCwtNi42MzI2OCBsIC02NC4zMzY5NiwtMTEuMjc1NTUgYyAtMS45ODk4LC0wLjY2MzI3IC0zLjk3OTYsMCAtNS4zMDYxNCwxLjMyNjU0IC0xLjk4OTgsMS4zMjY1MyAtMi42NTMwNywzLjMxNjMzIC0yLjY1MzA3LDUuMzA2MTQgdiAxNzcuMDkyNDUgbCAtMjYuNTMwNywxMS45Mzg4MiBWIDc2Ljk2ODMyMSBsIDExOS4zODgxNyw1My4wNjE0MDkgNy4yOTU5NCwzLjk3OTYxIHogbSAxMy45Mjg2MiwtMTEuMjc1NTUgNDcuMDkyLDI3Ljg1NzI0IC00Ny4wOTIsLTIwLjU2MTMgeiBtIDM1LjgxNjQ1LDE4My43MjUxMiAyNy44NTcyNCwzLjk3OTYxIDAuNjYzMjcsNjMuMDEwNDIgLTI3Ljg1NzI0LDExLjkzODgyIHogbSA2MS42ODM4OSwtNzYuOTM5MDQgYyAwLDAuNjYzMjcgMCwxLjk4OTggMCwyLjY1MzA3IHYgMTI2LjY4NDEyIGwgLTIyLjU1MTEsOS45NDkwMSAtMC42NjMyNywtNjMuMDEwNDIgYyAwLC0zLjMxNjM0IC0xLjk4OTgsLTUuMzA2MTQgLTQuNjQyODcsLTUuOTY5NDEgTCA1ODIuNjgsMzU0Ljg3NzQ1IGMgLTEuOTg5OCwwIC0zLjMxNjM0LDAgLTQuNjQyODcsMS4zMjY1MyAtMS4zMjY1NCwxLjMyNjU0IC0xLjk4OTgxLDIuNjUzMDggLTEuOTg5ODEsNC42NDI4OCBsIDAuNjYzMjcsOTAuODY3NjYgLTI0LjU0MDksMTAuNjEyMjggViAyMDQuOTc4OTcgbCA5Ny41MDAzNCw0My4xMTIzOSB6IG0gMTMuMjY1MzUsLTUuOTY5NDEgMTEuOTM4ODIsNy4yOTU5NSAtMTEuOTM4ODIsLTMuOTc5NjEgeiBtIDMzLjE2MzM4LDExNS40MDg1NyAtMTEuMjc1NTUsNS4zMDYxNCB2IC0zMS4xNzM1OCBsIDExLjI3NTU1LDEuMzI2NTQgeiBtIDE3LjkwODIzLC03Ljk1OTIxIC04LjYyMjQ4LDMuMzE2MzMgViAzNzAuMTMyNiBjIDAsLTIuNjUzMDcgLTEuOTg5ODEsLTQuNjQyODcgLTQuNjQyODgsLTQuNjQyODcgbCAtMjAuNTYxMjksLTEuMzI2NTMgYyAtMS4zMjY1NCwwIC0yLjY1MzA3LDAuNjYzMjYgLTMuMzE2MzQsMS4zMjY1MyAtMC42NjMyNywwLjY2MzI3IC0xLjMyNjU0LDEuOTg5OCAtMS4zMjY1NCwzLjMxNjM0IHYgNDAuNDU5MzIgbCAtMTIuNjAyMDgsNS4zMDYxNCBWIDMwMi40NzkzMSBsIDUxLjA3MTYxLDE3LjI0NDk2IHogbSAxMDguMTEyNjIsMTEuOTM4ODEgLTExLjI3NTU1LC01LjMwNjE0IHYgLTI0LjU0MDkgbCAxMS4yNzU1NSwtMC42NjMyNyB6IG0gMjEuODg3ODMsOS45NDkwMiAtMTMuMjY1MzUsLTUuOTY5NDEgdiAtMzkuMTMyNzkgYyAwLC0xLjMyNjU0IC0wLjY2MzI3LC0yLjY1MzA3IC0xLjMyNjU0LC0zLjMxNjM0IC0wLjY2MzI3LC0wLjY2MzI3IC0xLjk4OTgsLTEuMzI2NTMgLTMuMzE2MzQsLTEuMzI2NTMgbCAtMjAuNTYxMjksMS4zMjY1MyBjIC0yLjY1MzA3LDAgLTQuNjQyODgsMS45ODk4IC00LjY0Mjg4LDQuNjQyODcgdiAyNC41NDA5MSBsIC03Ljk1OTIxLC0zLjMxNjM0IHYgLTcyLjk1OTQ0IGwgNTEuMDcxNjEsLTE2LjU4MTY5IHogbSAwLC0xMjUuMzU3NTggLTIyLjU1MTEsNy4yOTU5NCAyMi41NTExLC0xMy4yNjUzNSB6IG0gNzIuMjk2MTcsMTU3LjE5NDQyIC0yNy44NTcyNCwtMTIuNjAyMDggMC42NjMyNywtNjMuNjczNjkgMjcuODU3MjMsLTMuOTc5NjEgeiBtIDM4LjQ2OTUyLDE3LjI0NDk2IC0yNy4xOTM5NywtMTEuOTM4ODIgMC42NjMyNiwtOTEuNTMwOTMgYyAwLC0xLjk4OTggLTAuNjYzMjYsLTMuMzE2MzQgLTEuOTg5OCwtNC42NDI4NyAtMS4zMjY1MywtMS4zMjY1NCAtMi42NTMwNywtMS4zMjY1NCAtNC42NDI4NywtMS4zMjY1NCBsIC0zOS4xMzI3OSw1Ljk2OTQxIGMgLTIuNjUzMDcsMC42NjMyNyAtNC42NDI4NywzLjMxNjM0IC00LjY0Mjg3LDUuOTY5NDEgbCAtMC42NjMyNyw2My4wMTA0MiAtMTkuODk4MDMsLTguNjIyNDcgdiAtMTI2LjY4NDEyIC00NS4xMDIyIGwgOTcuNTAwMzQsLTQzLjExMjM5IHogbSAwLC0yNzEuOTM5NzIgLTU3LjA0MTAyLDI1LjIwNDE3IDU3LjA0MTAyLC0zMy44MjY2NSB6IE0gMTAwMS44NjUxLDQ4NC44Nzc5IFYgMzUwLjg5Nzg0IGwgNTEuMDcxNiwtOC42MjI0NyBWIDUwNi43NjU3MyBaIE0gMTA5NC43MjI2LDc3LjYzMTU4OSBWIDUyNi4wMDA0OSBsIC0yOC41MjA1LC0xMi42MDIwOCBWIDMzNC45Nzk0MiBjIDAsLTEuOTg5OCAtMS4zMjY1LC0zLjk3OTYgLTIuNjUzMSwtNS4zMDYxNCAtMS4zMjY1LC0xLjMyNjUzIC0zLjMxNjMsLTEuOTg5OCAtNS4zMDYxLC0xLjMyNjUzIGwgLTY0LjMzNjk4LDExLjI3NTU0IGMgLTMuMzE2MzQsMC42NjMyNyAtNS4zMDYxNCwzLjMxNjM0IC01LjMwNjE0LDYuNjMyNjggdiAxMzIuNjUzNTIgbCAtMTkuODk4MDMsLTguNjIyNDggLTAuNjYzMjcsLTMzNS42MTM0MSB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGg0MyIgZD0iTSAyNDMuMDg2OTgsLTAuNjMzOTg5MjUgMjc0LjkyMzgzLDEzLjk1Nzg5OCBWIDkuOTc4MjkyNSAtMy45NTAzMjczIGwgLTI4LjUyMDUxLC05Ljk0OTAxMzcgLTcuMjk1OTQsLTMuMzE2MzM4IGMgLTIuNjUzMDcsLTAuNjYzMjY4IC00LjY0Mjg4LC0wLjY2MzI2OCAtNi42MzI2OCwwLjY2MzI2NyAtMS45ODk4LDAuNjYzMjY4IC0zLjMxNjM0LDMuMzE2MzM4IC0zLjMxNjM0LDUuMzA2MTQxIFYgNTM2LjYxMjc3IGMgMCwzLjk3OTYxIDIuNjUzMDcsNi42MzI2OCA2LjYzMjY4LDYuNjMyNjggaCAzOS4xMzI3OSBWIDUyOS45ODAxIGggLTMxLjgzNjg1IHoiIGNsYXNzPSJzdDEiLz48cGF0aCBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDo2LjYzMjY4IiBpZD0icGF0aDUxIiBkPSJtIDExNjkuNjcxOCwxMTguMDkwOTEgYyAtMjAuNTYxMywwIC0zNy4xNDMsLTE2LjU4MTY5IC0zNy4xNDMsLTM3LjE0Mjk4MyBWIC01MS4wNDIzMjggSCA5NzQuNjcxMTYgYyAtMjAuNTYxMywwIC0zNy4xNDI5OSwtMTYuNTgxNjkgLTM3LjE0Mjk5LC0zNy4xNDI5ODYgMCwtMjAuNTYxMjk2IDE2LjU4MTY5LC0zNy4xNDI5ODYgMzcuMTQyOTksLTM3LjE0Mjk4NiBoIDE5NS4wMDA2NCBjIDIwLjU2MTMsMCAzNy4xNDMsMTYuNTgxNjkgMzcuMTQzLDM3LjE0Mjk4NiBWIDgwLjk0NzkyNyBjIDAsMjAuNTYxMjkzIC0xNi41ODE3LDM3LjE0Mjk4MyAtMzcuMTQzLDM3LjE0Mjk4MyB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGg1NSIgZD0iTSA1MzAuMjgxODYsNjQ3LjM3ODQ3IEggMzM1LjI4MTE4IGMgLTIwLjU2MTMsMCAtMzcuMTQyOTksLTE2LjU4MTY5IC0zNy4xNDI5OSwtMzcuMTQyOTkgViA0NDEuMTAyMjQgYyAwLC0yMC41NjEzIDE2LjU4MTY5LC0zNy4xNDI5OSAzNy4xNDI5OSwtMzcuMTQyOTkgMjAuNTYxMywwIDM3LjE0Mjk5LDE2LjU4MTY5IDM3LjE0Mjk5LDM3LjE0Mjk5IHYgMTMxLjk5MDI1IGggMTU3Ljg1NzY5IGMgMjAuNTYxMjksMCAzNy4xNDI5OCwxNi41ODE2OSAzNy4xNDI5OCwzNy4xNDI5OSAwLDIwLjU2MTMgLTE2LjU4MTY5LDM3LjE0Mjk5IC0zNy4xNDI5OCwzNy4xNDI5OSB6IiBjbGFzcz0ic3QxIi8+PHBhdGggc3R5bGU9ImZpbGw6I2ZmZmZmZjtzdHJva2Utd2lkdGg6Ni42MzI2OCIgaWQ9InBhdGg1OSIgZD0ibSAzMzUuMjgxMTgsMTE4LjA5MDkxIGMgLTIwLjU2MTMsMCAtMzcuMTQyOTksLTE2LjU4MTY5IC0zNy4xNDI5OSwtMzcuMTQyOTgzIFYgLTg4LjE4NTMxNCBjIDAsLTIwLjU2MTI5NiAxNi41ODE2OSwtMzcuMTQyOTg2IDM3LjE0Mjk5LC0zNy4xNDI5ODYgaCAxOTUuMDAwNjggYyAyMC41NjEyOSwwIDM3LjE0Mjk4LDE2LjU4MTY5IDM3LjE0Mjk4LDM3LjE0Mjk4NiAwLDIwLjU2MTI5NiAtMTYuNTgxNjksMzcuMTQyOTg2IC0zNy4xNDI5OCwzNy4xNDI5ODYgSCAzNzIuNDI0MTcgViA4MC45NDc5MjcgYyAwLDIwLjU2MTI5MyAtMTYuNTgxNjksMzcuMTQyOTgzIC0zNy4xNDI5OSwzNy4xNDI5ODMgeiIgY2xhc3M9InN0MSIvPjxwYXRoIHN0eWxlPSJmaWxsOiNmZmZmZmY7c3Ryb2tlLXdpZHRoOjYuNjMyNjgiIGlkPSJwYXRoNjMiIGQ9Ik0gMTE2OS42NzE4LDY0Ny4zNzg0NyBIIDk3NC42NzExNiBjIC0yMC41NjEzLDAgLTM3LjE0Mjk5LC0xNi41ODE2OSAtMzcuMTQyOTksLTM3LjE0Mjk5IDAsLTIwLjU2MTMgMTYuNTgxNjksLTM3LjE0Mjk5IDM3LjE0Mjk5LC0zNy4xNDI5OSBIIDExMzIuNTI4OCBWIDQ0MS4xMDIyNCBjIDAsLTIwLjU2MTMgMTYuNTgxNywtMzcuMTQyOTkgMzcuMTQzLC0zNy4xNDI5OSAyMC41NjEzLDAgMzcuMTQzLDE2LjU4MTY5IDM3LjE0MywzNy4xNDI5OSB2IDE2OS4xMzMyNCBjIDAsMjAuNTYxMyAtMTYuNTgxNywzNy4xNDI5OSAtMzcuMTQzLDM3LjE0Mjk5IHoiIGNsYXNzPSJzdDEiLz48L2c+PC9zdmc+"},1462:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgdmVyc2lvbj0iMS4xIgogICB4PSIwcHgiCiAgIHk9IjBweCIKICAgdmlld0JveD0iMCAwIDkwLjQ1NTAwMiA5MC40NTIwMDMiCiAgIGlkPSJzdmcxMCIKICAgd2lkdGg9IjkwLjQ1NTAwMiIKICAgaGVpZ2h0PSI5MC40NTIwMDMiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDIuNTEyLDkwLjQ1IGggOC4wMTIgMTIuODM0IGMgMC4wMDgsMCAwLjAxNCwwLjAwMiAwLjAyLDAuMDAyIGggMTUuNDIzIGMgMC4wMDgsMCAwLjAxNCwtMC4wMDIgMC4wMiwtMC4wMDIgaCAxLjE2NCBjIDEuMzg3LDAgMi41MTIsLTEuMTI1IDIuNTEyLC0yLjUxMiBWIDUyLjgxMyBsIDI3LjUyLC0yNy41MTYgdiAxOS4xMDkgYyAwLDEuMzg2IDEuMTI1LDIuNTEyIDIuNTE0LDIuNTEyIDEuMzg3LDAgMi41MTIsLTEuMTI2IDIuNTEyLC0yLjUxMiBWIDE5LjIzMyBjIDAsLTEuMzg3IC0xLjEyNSwtMi41MTQgLTIuNTEyLC0yLjUxNCBIIDQ3LjM1NiBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNyAtMi41MTQsMi41MTQgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxNCwyLjUxMiBIIDY2LjQ2MyBMIDQwLjIyNiw0Ny45NzcgYyAtMC4wOCwtMC4wMDggLTAuMTYsLTAuMDIzIC0wLjI0MiwtMC4wMjMgSCAyLjUxMiBDIDEuMTI1LDQ3Ljk1NCAwLDQ5LjA3OSAwLDUwLjQ2NiB2IDEuMTg4IDE1LjQyNCAxMi44NTQgOC4wMDggYyAwLDEuMzg1IDEuMTI1LDIuNTEgMi41MTIsMi41MSB6IE0gNS4wMjUsNzkuOTMgViA2Ny4wNzcgNTIuOTc3IEggMzcuNDcxIFYgODUuNDI0IEggMTAuNTIzIDUuMDI1IFoiCiAgICAgaWQ9InBhdGgxIgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDY3LjA3OCw5MC40NTIgYyAxLjM4OSwwIDIuNTE0LC0xLjEyNSAyLjUxNCwtMi41MTQgMCwtMS4zODcgLTEuMTI1LC0yLjUxMiAtMi41MTQsLTIuNTEyIEggNTEuNjU1IGMgLTEuMzg3LDAgLTIuNTEyLDEuMTI1IC0yLjUxMiwyLjUxMiAwLDEuMzg5IDEuMTI1LDIuNTE0IDIuNTEyLDIuNTE0IHoiCiAgICAgaWQ9InBhdGgyIgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDkwLjQ1NSw3OS45MyBjIDAsLTEuMzg3IC0xLjEyNSwtMi41MTIgLTIuNTE0LC0yLjUxMiAtMS4zODcsMCAtMi41MTIsMS4xMjUgLTIuNTEyLDIuNTEyIHYgNS40OTYgaCAtNS40OTYgYyAtMS4zODksMCAtMi41MTIsMS4xMjUgLTIuNTEyLDIuNTEyIDAsMS4zODkgMS4xMjMsMi41MTQgMi41MTIsMi41MTQgaCA4LjAwOCBjIDEuMzg5LDAgMi41MTQsLTEuMTI1IDIuNTE0LC0yLjUxNCB6IgogICAgIGlkPSJwYXRoMyIKICAgICBzdHlsZT0iZmlsbDojMjk1NGU5O2ZpbGwtb3BhY2l0eToxIiAvPgogIDxwYXRoCiAgICAgZD0ibSA4Ny45NDIsNDEuMzExIGMgMS4zODcsMCAyLjUxMiwtMS4xMjcgMi41MTIsLTIuNTE0IFYgMjMuMzczIGMgMCwtMS4zODcgLTEuMTI1LC0yLjUxMiAtMi41MTIsLTIuNTEyIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgdiAxNS40MjQgYyAwLDEuMzg3IDEuMTI1LDIuNTE0IDIuNTE0LDIuNTE0IHoiCiAgICAgaWQ9InBhdGg0IgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDg1LjQyOCw2Ny4wNzUgYyAwLDEuMzg3IDEuMTI1LDIuNTEyIDIuNTE0LDIuNTEyIDEuMzg3LDAgMi41MTIsLTEuMTI1IDIuNTEyLC0yLjUxMiBWIDUxLjY1MSBjIDAsLTEuMzg3IC0xLjEyNSwtMi41MTIgLTIuNTEyLC0yLjUxMiAtMS4zODksMCAtMi41MTQsMS4xMjUgLTIuNTE0LDIuNTEyIHoiCiAgICAgaWQ9InBhdGg1IgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDg3Ljk0MiwwIGggLTguMDA4IGMgLTEuMzg5LDAgLTIuNTEyLDEuMTI3IC0yLjUxMiwyLjUxNCAwLDEuMzg3IDEuMTIzLDIuNTEyIDIuNTEyLDIuNTEyIGggNS40OTQgdiA1LjQ5NiBjIDAsMS4zODcgMS4xMjUsMi41MTQgMi41MTQsMi41MTQgMS4zODcsMCAyLjUxMiwtMS4xMjcgMi41MTIsLTIuNTE0IFYgMi41MTQgQyA5MC40NTMsMS4xMjcgODkuMzI4LDAgODcuOTQyLDAgWiIKICAgICBpZD0icGF0aDYiCiAgICAgc3R5bGU9ImZpbGw6IzI5NTRlOTtmaWxsLW9wYWNpdHk6MSIgLz4KICA8cGF0aAogICAgIGQ9Im0gMjMuMzc3LDUuMDI0IGggMTUuNDIyIGMgMS4zODksMCAyLjUxNCwtMS4xMjUgMi41MTQsLTIuNTEyIEMgNDEuMzEzLDEuMTI1IDQwLjE4OCwwIDM4Ljc5OSwwIEggMjMuMzc3IGMgLTEuMzg5LDAgLTIuNTE0LDEuMTI1IC0yLjUxNCwyLjUxMiAwLDEuMzg3IDEuMTI1LDIuNTEyIDIuNTE0LDIuNTEyIHoiCiAgICAgaWQ9InBhdGg3IgogICAgIHN0eWxlPSJmaWxsOiMyOTU0ZTk7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBkPSJtIDUxLjY1Myw1LjAyNCBoIDE1LjQyNCBjIDEuMzg5LDAgMi41MTQsLTEuMTI1IDIuNTE0LC0yLjUxMiBDIDY5LjU5MSwxLjEyNSA2OC40NjYsMCA2Ny4wNzcsMCBIIDUxLjY1MyBjIC0xLjM4NywwIC0yLjUxMiwxLjEyNSAtMi41MTIsMi41MTIgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxMiwyLjUxMiB6IgogICAgIGlkPSJwYXRoOCIKICAgICBzdHlsZT0iZmlsbDojMjk1NGU5O2ZpbGwtb3BhY2l0eToxIiAvPgogIDxwYXRoCiAgICAgZD0ibSAyLjUxMiwxMy4wMzMgYyAxLjM4OSwwIDIuNTE0LC0xLjEyNSAyLjUxNCwtMi41MTQgViA1LjAyNCBoIDUuNDk4IGMgMS4zODcsMCAyLjUxMiwtMS4xMjUgMi41MTIsLTIuNTEyIEMgMTMuMDM2LDEuMTI1IDExLjkxMSwwIDEwLjUyNCwwIEggMi41MTIgQyAxLjEyNSwwIDAsMS4xMjUgMCwyLjUxMiB2IDguMDA4IGMgMCwxLjM4OCAxLjEyNSwyLjUxMyAyLjUxMiwyLjUxMyB6IgogICAgIGlkPSJwYXRoOSIKICAgICBzdHlsZT0iZmlsbDojMjk1NGU5O2ZpbGwtb3BhY2l0eToxIiAvPgogIDxwYXRoCiAgICAgZD0ibSAyLjUxMiw0MS4zMTEgYyAxLjM4OSwwIDIuNTE0LC0xLjEyNSAyLjUxNCwtMi41MTIgViAyMy4zNzUgQyA1LjAyNiwyMS45ODggMy45MDEsMjAuODYzIDIuNTEyLDIwLjg2MyAxLjEyNSwyMC44NjMgMCwyMS45ODggMCwyMy4zNzUgdiAxNS40MjQgYyAwLDEuMzg3IDEuMTI1LDIuNTEyIDIuNTEyLDIuNTEyIHoiCiAgICAgaWQ9InBhdGgxMCIKICAgICBzdHlsZT0iZmlsbDojMjk1NGU5O2ZpbGwtb3BhY2l0eToxIiAvPgo8L3N2Zz4K"},5721:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgdmVyc2lvbj0iMS4xIgogICB4PSIwcHgiCiAgIHk9IjBweCIKICAgdmlld0JveD0iMCAwIDkwLjE2OTk5OCA5MC4xNzE5OTciCiAgIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDkxIDkxIgogICBpZD0ic3ZnMTIiCiAgIHdpZHRoPSI5MC4xNjk5OTgiCiAgIGhlaWdodD0iOTAuMTcxOTk3IgogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxIiAvPgogIDxwYXRoCiAgICAgZD0ibSA0NS44MzIsMTguMDM5IGMgLTEuMzg4LDAgLTIuNTEzLDEuMTI1IC0yLjUxMywyLjUxMiBWIDQ1LjY0IGMgMCwxLjM5IDEuMTI1LDIuNTE1IDIuNTEzLDIuNTE1IGggMjUuMDg5IGMgMS4zODksMCAyLjUxMiwtMS4xMjUgMi41MTIsLTIuNTE1IDAsLTEuMzg2IC0xLjEyMywtMi41MTEgLTIuNTEyLC0yLjUxMSBIIDUxLjg5NCBMIDc5LjM4NiwxNS42MzUgYyAwLjk4MiwtMC45OCAwLjk4MiwtMi41NyAwLC0zLjU1MyAtMC45OCwtMC45OCAtMi41NzIsLTAuOTggLTMuNTUzLDAgTCA0OC4zNDMsMzkuNTc2IFYgMjAuNTUxIGMgMCwtMS4zODcgLTEuMTI1LC0yLjUxMiAtMi41MTEsLTIuNTEyIHoiCiAgICAgaWQ9InBhdGgxIiAvPgogIDxwYXRoCiAgICAgZD0ibSAyLjUxMiw5MC4xNzEgaCAwLjAwMiA3Ljk4MiAxMi44MDggMTUuMzcyIDEuMTgyIGMgMS4zODgsMCAyLjUxNCwtMS4xMjUgMi41MTQsLTIuNTE0IHYgLTM3LjM1IGMgMCwtMS4zODcgLTEuMTI2LC0yLjUxMiAtMi41MTQsLTIuNTEyIEggMi41MTQgYyAtMS4zODksMCAtMi41MTMsMS4xMjUgLTIuNTEzLDIuNTEyIHYgMS4xNyBDIDAuMDAxLDUxLjQ4MSAwLDUxLjQ4NyAwLDUxLjQ5MSB2IDE1LjM3MyBjIDAsMC4wMDYgMC4wMDEsMC4wMSAwLjAwMSwwLjAxNiBWIDc5LjY2MSBDIDAuMDAxLDc5LjY2NSAwLDc5LjY3MSAwLDc5LjY3NSB2IDcuOTgyIGMgMCwxLjM4OSAxLjEyNCwyLjUxNCAyLjUxMiwyLjUxNCB6IE0gNS4wMjYsNTIuODE5IEggMzcuMzQ1IFYgODUuMTQ1IEggMjMuMzA0IDEwLjQ5NyA1LjAyNiBaIgogICAgIGlkPSJwYXRoMiIgLz4KICA8cGF0aAogICAgIGQ9Im0gNTEuNDg3LDg1LjE0NSBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgMCwxLjM4OSAxLjEyNSwyLjUxNCAyLjUxNCwyLjUxNCBIIDY2Ljg2IGMgMS4zODcsMCAyLjUxMiwtMS4xMjUgMi41MTIsLTIuNTE0IDAsLTEuMzg3IC0xLjEyNSwtMi41MTIgLTIuNTEyLC0yLjUxMiB6IgogICAgIGlkPSJwYXRoMyIgLz4KICA8cGF0aAogICAgIGQ9Im0gODcuNjU3LDc3LjE2MyBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgdiA1LjQ3MSBoIC01LjQ2OSBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgMCwxLjM4OSAxLjEyNSwyLjUxNCAyLjUxNCwyLjUxNCBoIDcuOTgzIGMgMS4zODcsMCAyLjUxMiwtMS4xMjUgMi41MTIsLTIuNTE0IHYgLTcuOTgyIGMgMCwtMS4zODggLTEuMTI1LC0yLjUxMyAtMi41MTIsLTIuNTEzIHoiCiAgICAgaWQ9InBhdGg0IiAvPgogIDxwYXRoCiAgICAgZD0ibSA4Ny42NTcsNDguOTc5IGMgLTEuMzg5LDAgLTIuNTE0LDEuMTI1IC0yLjUxNCwyLjUxMiB2IDE1LjM3MyBjIDAsMS4zODcgMS4xMjUsMi41MTQgMi41MTQsMi41MTQgMS4zODcsMCAyLjUxMiwtMS4xMjcgMi41MTIsLTIuNTE0IFYgNTEuNDkxIGMgMCwtMS4zODcgLTEuMTI1LC0yLjUxMiAtMi41MTIsLTIuNTEyIHoiCiAgICAgaWQ9InBhdGg1IiAvPgogIDxwYXRoCiAgICAgZD0ibSA4Ny42NTcsMjAuNzk1IGMgLTEuMzg5LDAgLTIuNTE0LDEuMTI1IC0yLjUxNCwyLjUxMiBWIDM4LjY4IGMgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxNCwyLjUxMiAxLjM4NywwIDIuNTEyLC0xLjEyNSAyLjUxMiwtMi41MTIgViAyMy4zMDcgYyAwLC0xLjM4NyAtMS4xMjUsLTIuNTEyIC0yLjUxMiwtMi41MTIgeiIKICAgICBpZD0icGF0aDYiIC8+CiAgPHBhdGgKICAgICBkPSJtIDg3LjY1NywwLjAwMiBoIC03Ljk4MiBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxNCwyLjUxMiBoIDUuNDY5IHYgNS40NzEgYyAwLDEuMzg3IDEuMTI1LDIuNTEyIDIuNTE0LDIuNTEyIDEuMzg3LDAgMi41MTIsLTEuMTI1IDIuNTEyLC0yLjUxMiBWIDIuNTE0IEMgOTAuMTY5LDEuMTI3IDg5LjA0NCwwLjAwMiA4Ny42NTcsMC4wMDIgWiIKICAgICBpZD0icGF0aDciIC8+CiAgPHBhdGgKICAgICBkPSJtIDM4LjY3OCw1LjAyNCBjIDEuMzg5LDAgMi41MTMsLTEuMTI1IDIuNTEzLC0yLjUxMiBDIDQxLjE5MSwxLjEyNSA0MC4wNjcsMCAzOC42NzgsMCBIIDIzLjMwNSBjIC0xLjM4NywwIC0yLjUxMiwxLjEyNSAtMi41MTIsMi41MTIgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxMiwyLjUxMiB6IgogICAgIGlkPSJwYXRoOCIgLz4KICA8cGF0aAogICAgIGQ9Im0gNjYuODYsNS4wMjQgYyAxLjM4OSwwIDIuNTE0LC0xLjEyNSAyLjUxNCwtMi41MTIgQyA2OS4zNzQsMS4xMjUgNjguMjQ5LDAgNjYuODYsMCBIIDUxLjQ4OSBjIC0xLjM4OSwwIC0yLjUxNCwxLjEyNSAtMi41MTQsMi41MTIgMCwxLjM4NyAxLjEyNSwyLjUxMiAyLjUxNCwyLjUxMiB6IgogICAgIGlkPSJwYXRoOSIgLz4KICA8cGF0aAogICAgIGQ9Im0gMi41MTIsMTMuMDA2IGMgMS4zODksMCAyLjUxMywtMS4xMjUgMi41MTMsLTIuNTEyIHYgLTUuNDcgaCA1LjQ2OCBjIDEuMzg5LDAgMi41MTMsLTEuMTI1IDIuNTEzLC0yLjUxMiBDIDEzLjAwNiwxLjEyNSAxMS44ODIsMCAxMC40OTMsMCBIIDIuNTEzIEMgMS4xMjUsMCAxMGUtNCwxLjEyNSAxMGUtNCwyLjUxMiB2IDcuOTgyIEMgMCwxMS44ODEgMS4xMjQsMTMuMDA2IDIuNTEyLDEzLjAwNiBaIgogICAgIGlkPSJwYXRoMTAiIC8+CiAgPHBhdGgKICAgICBkPSJtIDIuNTEyLDQxLjE5MiBjIDEuMzg5LDAgMi41MTMsLTEuMTI1IDIuNTEzLC0yLjUxMiBWIDIzLjMwNyBDIDUuMDI1LDIxLjkyIDMuOTAxLDIwLjc5NSAyLjUxMiwyMC43OTUgMS4xMjQsMjAuNzk1IDAsMjEuOTIgMCwyMy4zMDcgViAzOC42OCBjIDAsMS4zODcgMS4xMjQsMi41MTIgMi41MTIsMi41MTIgeiIKICAgICBpZD0icGF0aDExIiAvPgo8L3N2Zz4K"},9472:vt=>{"use strict";vt.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAxOCI+PHBhdGggZD0iTTIuNSAxaDF2MTZoLTF6bTIgMGgzdjE2aC0zem00IDBoM3YxNmgtM3oiIGZpbGw9IiM5MDAiLz48cGF0aCBkPSJNMTIuNSAxaDF2MTZoLTF6bTIgMGgxdjE2aC0xem0xMiAwaDF2MTZoLTF6bTIgMGgxdjE2aC0xeiIgZmlsbD0iIzM5NiIvPjxwYXRoIGQ9Ik0xNi41IDFoM3YxNmgtM3ptNCAwaDF2MTZoLTF6bTIgMGgzdjE2aC0zeiIgZmlsbD0iIzA2OSIvPjwvc3ZnPg=="},4634:vt=>{function _extends(){return vt.exports=_extends=Object.assign?Object.assign.bind():function(vt){for(var bt=1;bt<arguments.length;bt++){var le=arguments[bt];for(var ls in le)({}).hasOwnProperty.call(le,ls)&&(vt[ls]=le[ls])}return vt},vt.exports.__esModule=!0,vt.exports.default=vt.exports,_extends.apply(null,arguments)}vt.exports=_extends,vt.exports.__esModule=!0,vt.exports.default=vt.exports},2968:(vt,bt,le)=>{var ls=le(4634).default;
13
13
  /**
14
14
  * MapLibre GL JS
15
15
  * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v5.17.0/LICENSE.txt