1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1255],{37054:function(t,e,s){s.d(e,{b6:function(){return g},KJ:function(){return P},Jx:function(){return A}});var n=s(67294),i=s(73935),o=("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof window?window:"undefined"!==typeof s.g?s.g:"undefined"!==typeof self&&self,function(t,e,s,n,i,o,r,a){if(!t){var p;if(void 0===e)p=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var h=[s,n,i,o,r,a],l=0;(p=new Error(e.replace(/%s/g,(function(){return h[l++]})))).name="Invariant Violation"}throw p.framesToPop=1,p}});const r=(0,n.createContext)(null);const a=(t,e,s,n)=>{const i={};var o,r;return o=t,r=(t,o)=>{const r=s[o];r!==e[o]&&(i[o]=r,t(n,r))},Object.keys(o).forEach((function(t){return r(o[t],t)})),i};function p(t,e,s){var n,i,o;return n=s,i=function(s,n,i){return"function"===typeof t[i]&&s.push(google.maps.event.addListener(e,n,t[i])),s},o=[],Object.keys(n).reduce((function(t,e){return i(t,n[e],e)}),o)}function h(t){google.maps.event.removeListener(t)}function l(t=[]){t.forEach(h)}function c({updaterMap:t,eventMap:e,prevProps:s,nextProps:n,instance:i}){const o=p(n,i,e);return a(t,s,n,i),o}const u={onDblClick:"dblclick",onDragEnd:"dragend",onDragStart:"dragstart",onMapTypeIdChanged:"maptypeid_changed",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseDown:"mousedown",onMouseUp:"mouseup",onRightClick:"rightclick",onTilesLoaded:"tilesloaded",onBoundsChanged:"bounds_changed",onCenterChanged:"center_changed",onClick:"click",onDrag:"drag",onHeadingChanged:"heading_changed",onIdle:"idle",onProjectionChanged:"projection_changed",onResize:"resize",onTiltChanged:"tilt_changed",onZoomChanged:"zoom_changed"},d={extraMapTypes(t,e){e.forEach((function(e,s){t.mapTypes.set(String(s),e)}))},center(t,e){t.setCenter(e)},clickableIcons(t,e){t.setClickableIcons(e)},heading(t,e){t.setHeading(e)},mapTypeId(t,e){t.setMapTypeId(e)},options(t,e){t.setOptions(e)},streetView(t,e){t.setStreetView(e)},tilt(t,e){t.setTilt(e)},zoom(t,e){t.setZoom(e)}};class g extends n.PureComponent{constructor(){super(...arguments),this.state={map:null},this.registeredEvents=[],this.mapRef=null,this.getInstance=()=>null===this.mapRef?null:new google.maps.Map(this.mapRef,this.props.options),this.panTo=t=>{const e=this.getInstance();e&&e.panTo(t)},this.setMapCallback=()=>{null!==this.state.map&&this.props.onLoad&&this.props.onLoad(this.state.map)},this.getRef=t=>{this.mapRef=t}}componentDidMount(){const t=this.getInstance();this.registeredEvents=c({updaterMap:d,eventMap:u,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{map:t}}),this.setMapCallback)}componentDidUpdate(t){null!==this.state.map&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:d,eventMap:u,prevProps:t,nextProps:this.props,instance:this.state.map}))}componentWillUnmount(){null!==this.state.map&&(this.props.onUnmount&&this.props.onUnmount(this.state.map),l(this.registeredEvents))}render(){return n.createElement("div",{id:this.props.id,ref:this.getRef,style:this.props.mapContainerStyle,className:this.props.mapContainerClassName},n.createElement(r.Provider,{value:this.state.map},null!==this.state.map?this.props.children:n.createElement(n.Fragment,null)))}}function m(t,e){var s={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(s[n]=t[n]);if(null!=t&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(s[n[i]]=t[n[i]])}return s}function f(t,e,s,n){return new(s||(s=Promise))((function(i,o){function r(t){try{p(n.next(t))}catch(e){o(e)}}function a(t){try{p(n.throw(t))}catch(e){o(e)}}function p(t){var e;t.done?i(t.value):(e=t.value,e instanceof s?e:new s((function(t){t(e)}))).then(r,a)}p((n=n.apply(t,e||[])).next())}))}const v="undefined"!==typeof document,y=({url:t,id:e,nonce:s})=>v?new Promise((function(n,i){const o=document.getElementById(e),r=window;if(o){const s=o.getAttribute("data-state");if(o.src===t&&"error"!==s){if("ready"===s)return n(e);{const t=r.initMap,s=o.onerror;return r.initMap=function(){t&&t(),n(e)},void(o.onerror=function(t){s&&s(t),i(t)})}}o.remove()}const a=document.createElement("script");a.type="text/javascript",a.src=t,a.id=e,a.async=!0,a.nonce=s,a.onerror=function(t){a.setAttribute("data-state","error"),i(t)},r.initMap=function(){a.setAttribute("data-state","ready"),n(e)},document.head.appendChild(a)})).catch((t=>{throw console.error("injectScript error: ",t),t})):Promise.reject(new Error("document is undefined")),x=t=>!(!t.href||0!==t.href.indexOf("https://fonts.googleapis.com/css?family=Roboto"))||("style"===t.tagName.toLowerCase()&&t.styleSheet&&t.styleSheet.cssText&&0===t.styleSheet.cssText.replace("\r\n","").indexOf(".gm-style")?(t.styleSheet.cssText="",!0):"style"===t.tagName.toLowerCase()&&t.innerHTML&&0===t.innerHTML.replace("\r\n","").indexOf(".gm-style")?(t.innerHTML="",!0):"style"===t.tagName.toLowerCase()&&!t.styleSheet&&!t.innerHTML),C=()=>{const t=document.getElementsByTagName("head")[0],e=t.insertBefore.bind(t);t.insertBefore=function(s,n){x(s)||Reflect.apply(e,t,[s,n])};const s=t.appendChild.bind(t);t.appendChild=function(e){x(e)||Reflect.apply(s,t,[e])}};function M({googleMapsApiKey:t,googleMapsClientId:e,version:s="weekly",language:n,region:i,libraries:r,channel:a,mapIds:p}){const h=[];return o(t&&e||!(t&&e),"You need to specify either googleMapsApiKey or googleMapsClientId for @react-google-maps/api load script to work. You cannot use both at the same time."),t?h.push(`key=${t}`):e&&h.push(`client=${e}`),s&&h.push(`v=${s}`),n&&h.push(`language=${n}`),i&&h.push(`region=${i}`),r&&r.length&&h.push(`libraries=${r.sort().join(",")}`),a&&h.push(`channel=${a}`),p&&p.length&&h.push(`map_ids=${p.join(",")}
1`),h.push("callback=initMap"),`https://maps.googleapis.com/maps/api/js?${h.join("&")}`}let b=!1;function L(){return n.createElement("div",null,"Loading...")}const w={id:"script-loader",version:"weekly"};class P extends n.PureComponent{constructor(){super(...arguments),this.check=n.createRef(),this.state={loaded:!1},this.cleanupCallback=()=>{delete window.google.maps,this.injectScript()},this.isCleaningUp=()=>f(this,void 0,void 0,(function*(){return new Promise((function(t){if(b){if(v){const e=window.setInterval((function(){b||(window.clearInterval(e),t())}),1)}}else t()}))})),this.cleanup=()=>{b=!0;const t=document.getElementById(this.props.id);t&&t.parentNode&&t.parentNode.removeChild(t),Array.prototype.slice.call(document.getElementsByTagName("script")).filter((function(t){return"string"===typeof t.src&&t.src.includes("maps.googleapis")})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)})),Array.prototype.slice.call(document.getElementsByTagName("link")).filter((function(t){return"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Google+Sans"===t.href})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)})),Array.prototype.slice.call(document.getElementsByTagName("style")).filter((function(t){return void 0!==t.innerText&&t.innerText.length>0&&t.innerText.includes(".gm-")})).forEach((function(t){t.parentNode&&t.parentNode.removeChild(t)}))},this.injectScript=()=>{this.props.preventGoogleFontsLoading&&C(),o(!!this.props.id,'LoadScript requires "id" prop to be a string: %s',this.props.id);const t={id:this.props.id,nonce:this.props.nonce,url:M(this.props)};y(t).then((()=>{this.props.onLoad&&this.props.onLoad(),this.setState((function(){return{loaded:!0}}))})).catch((t=>{this.props.onError&&this.props.onError(t),console.error(`\n There has been an Error with loading Google Maps API script, please check that you provided correct google API key (${this.props.googleMapsApiKey||"-"}) or Client ID (${this.props.googleMapsClientId||"-"}) to <LoadScript />\n Otherwise it is a Network issue.\n `)}))}}componentDidMount(){if(v){if(window.google&&window.google.maps&&!b)return void console.error("google api is already presented");this.isCleaningUp().then(this.injectScript).catch((function(t){console.error("Error at injecting script after cleaning up: ",t)}))}}componentDidUpdate(t){this.props.libraries!==t.libraries&&console.warn("Performance warning! LoadScript has been reloaded unintentionally! You should not pass `libraries` prop as new array. Please keep an array of libraries as static class property for Components and PureComponents, or just a const variable outside of component, or somewhere in config files or ENV variables"),v&&t.language!==this.props.language&&(this.cleanup(),this.setState((function(){return{loaded:!1}}),this.cleanupCallback))}componentWillUnmount(){if(v){this.cleanup();const t=()=>{this.check.current||(delete window.google,b=!1)};window.setTimeout(t,1),this.props.onUnmount&&this.props.onUnmount()}}render(){return n.createElement(n.Fragment,null,n.createElement("div",{ref:this.check}),this.state.loaded?this.props.children:this.props.loadingElement||n.createElement(L,null))}}let k;P.defaultProps=w;const E=n.createElement(L,null);n.memo((function(t){var{loadingElement:e,onLoad:s,onError:i,onUnmount:r,children:a}=t,p=m(t,["loadingElement","onLoad","onError","onUnmount","children"]);const{isLoaded:h,loadError:l}=function({id:t=w.id,version:e=w.version,nonce:s,googleMapsApiKey:i,googleMapsClientId:r,language:a,region:p,libraries:h,preventGoogleFontsLoading:l,channel:c,mapIds:u}){const d=n.useRef(!1),[g,m]=n.useState(!1),[f,x]=n.useState(void 0);n.useEffect((function(){return d.current=!0,()=>{d.current=!1}}),[]),n.useEffect((function(){v&&l&&C()}),[l]),n.useEffect((function(){g&&o(!!window.google,"useLoadScript was marked as loaded, but window.google is not present. Something went wrong.")}),[g]);const b=M({version:e,googleMapsApiKey:i,googleMapsClientId:r,language:a,region:p,libraries:h,channel:c,mapIds:u});n.useEffect((function(){function e(){d.current&&(m(!0),k=b)}v&&(window.google&&window.google.maps&&k===b?e():y({id:t,url:b,nonce:s}
1).then(e).catch((function(t){d.current&&x(t),console.warn(`\n There has been an Error with loading Google Maps API script, please check that you provided correct google API key (${i||"-"}) or Client ID (${r||"-"})\n Otherwise it is a Network issue.\n `),console.error(t)})))}),[t,b,s]);const L=n.useRef();return n.useEffect((function(){L.current&&h!==L.current&&console.warn("Performance warning! LoadScript has been reloaded unintentionally! You should not pass `libraries` prop as new array. Please keep an array of libraries as static class property for Components and PureComponents, or just a const variable outside of component, or somewhere in config files or ENV variables"),L.current=h}),[h]),{isLoaded:g,loadError:f,url:b}}(p);return n.useEffect((function(){h&&"function"===typeof s&&s()}),[h,s]),n.useEffect((function(){l&&"function"===typeof i&&i(l)}),[l,i]),n.useEffect((function(){return()=>{r&&r()}}),[r]),h?a:e||E}));const S={},_={options(t,e){t.setOptions(e)}};class I extends n.PureComponent{constructor(){super(...arguments),this.state={trafficLayer:null},this.setTrafficLayerCallback=()=>{null!==this.state.trafficLayer&&this.props.onLoad&&this.props.onLoad(this.state.trafficLayer)},this.registeredEvents=[]}componentDidMount(){const t=new google.maps.TrafficLayer(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=c({updaterMap:_,eventMap:S,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{trafficLayer:t}}),this.setTrafficLayerCallback)}componentDidUpdate(t){null!==this.state.trafficLayer&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:_,eventMap:S,prevProps:t,nextProps:this.props,instance:this.state.trafficLayer}))}componentWillUnmount(){null!==this.state.trafficLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.trafficLayer),l(this.registeredEvents),this.state.trafficLayer.setMap(null))}render(){return null}}I.contextType=r;class D extends n.PureComponent{constructor(){super(...arguments),this.state={bicyclingLayer:null},this.setBicyclingLayerCallback=()=>{null!==this.state.bicyclingLayer&&(this.state.bicyclingLayer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.bicyclingLayer))}}componentDidMount(){const t=new google.maps.BicyclingLayer;this.setState((function(){return{bicyclingLayer:t}}),this.setBicyclingLayerCallback)}componentWillUnmount(){null!==this.state.bicyclingLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.bicyclingLayer),this.state.bicyclingLayer.setMap(null))}render(){return null}}D.contextType=r;class O extends n.PureComponent{constructor(){super(...arguments),this.state={transitLayer:null},this.setTransitLayerCallback=()=>{null!==this.state.transitLayer&&(this.state.transitLayer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.transitLayer))}}componentDidMount(){const t=new google.maps.TransitLayer;this.setState((function(){return{transitLayer:t}}),this.setTransitLayerCallback)}componentWillUnmount(){null!==this.state.transitLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.transitLayer),this.state.transitLayer.setMap(null))}render(){return null}}O.contextType=r;const T={onCircleComplete:"circlecomplete",onMarkerComplete:"markercomplete",onOverlayComplete:"overlaycomplete",onPolygonComplete:"polygoncomplete",onPolylineComplete:"polylinecomplete",onRectangleComplete:"rectanglecomplete"},B={drawingMode(t,e){t.setDrawingMode(e)},options(t,e){t.setOptions(e)}};class U extends n.PureComponent{constructor(t){super(t),this.registeredEvents=[],this.state={drawingManager:null},this.setDrawingManagerCallback=()=>{null!==this.state.drawingManager&&this.props.onLoad&&this.props.onLoad(this.state.drawingManager)},o(!!google.maps.drawing,"Did you include prop libraries={['drawing']} in the URL? %s",google.maps.drawing)}componentDidMount(){const t=new google.maps.drawing.DrawingManager(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=c({updaterMap:B,eventMap:T,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{drawingManager:t}}),this.setDrawingManagerCallback)}componentDidUpdate(t){null!==this.state.drawingManager&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:B,eventMap:T,prevProps:t,nextProps:this.props,instance:this.state.drawingManager}))}componentWillUnmount(){null!==this.state.drawingManager&&(this.props.onUnmount&&this.props.onUnmount(this.state.drawingManager),l(this.registeredEvents),this.state.drawingManager.setMap(null))}render(){return n.createElement(n.Fragment,null)}}U.contextType=r;const z={onAnimationChanged:"animation_changed",onClick:"click",onClickableChanged:"clickable_changed",onCursorChanged:"cursor_changed",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDraggableChanged:"draggable_changed",onDragStart:"dragstart",onFlatChanged:"flat_changed",onIconChanged:"icon_changed",onMouseDown:"mousedown",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onPositionChanged:"position_changed",onRightClick:"rightclick",onShapeChanged:"shape_changed",onTitleChanged:"title_changed",onVisibleChanged:"visible_changed",onZindexChanged:"zindex_changed"},R={animation(t,e){t.setAnimation(e)},clickable(t,e){t.setClickable(e)},cursor(t,e){t.setCursor(e)},draggable(t,e){t.setDraggable(e)},icon(t,e){t.setIcon(e)},label(t,e){t.setLabel(e)},map(t,e){t.setMap(e)},opacity(t,e){t.setOpacity(e)},options(t,e){t.setOptions(e)},position(t,e){t.setPosition(e)},shape(t,e){t.setShape(e)},title(t,e){t.setTitle(e)},visible(t,e){t.setVisible(e)},zIndex(t,e){t.setZIndex(e)}};class A extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[]}componentDidMount(){const t=Object.assign(Object.assign(Object.assign({},this.props.options||{}),this.props.clusterer?{}:{map:this.context}),{position:this.props.position});this.marker=new google.maps.Marker(t),this.props.clusterer?this.props.clusterer.addMarker(this.marker,!!this.props.noClustererRedraw):this.marker.setMap(this.context),this.registeredEvents=c({updaterMap:R,eventMap:z,prevProps:{},nextProps:this.props,instance:this.marker}),this.props.onLoad&&this.props.onLoad(this.marker)}componentDidUpdate(t){this.marker&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:R,eventMap:z,prevProps:t,nextProps:this.props,instance:this.marker}))}componentWillUnmount(){this.marker&&(this.props.onUnmount&&this.props.onUnmount(this.marker),l(this.registeredEvents),this.props.clusterer?this.props.clusterer.removeMarker(this.marker,!!this.props.noClustererRedraw):this.marker&&this.marker.setMap(null))}render(){let t=null;return this.props.children&&(t=n.Children.map(this.props.children,(t=>{if(!n.isValidElement(t))return t;let e=t;return n.cloneElement(e,{anchor:this.marker})}))),t||null}}A.contextType=r;var W=function(){function t(e,s){e.getClusterer().extend(t,google.maps.OverlayView),this.cluster=e,this.clusterClassName=this.cluster.getClusterer().getClusterClass(),this.className=this.clusterClassName,this.styles=s,this.center=void 0,this.div=null,this.sums=null,this.visible=!1,this.boundsChangedListener=null,this.url="",this.height=0,this.width=0,this.anchorText=[0,0],this.anchorIcon=[0,0],this.textColor="black",this.textSize=11,this.textDecoration="none",this.fontWeight="bold",this.fontStyle="normal",this.fontFamily="Arial,sans-serif",this.backgroundPosition="0 0",this.setMap(e.getMap())}return t.prototype.onAdd=function(){var t,e,s=this;this.div=document.createElement("div"),this.div.className=this.className,this.visible&&this.show(),this.getPanes().overlayMouseTarget.appendChild(this.div),this.boundsChangedListener=google.maps.event.addListener(this.getMap(),"boundschanged",(function(){e=t})),google.maps.event.addDomListener(this.div,"mousedown",(function(){t=!0,e=!1})),google.maps.event.addDomListener(this.div,"click",(function(n){if(t=!1,!e){var i=s.cluster.getClusterer();if(google.maps.event.trigger(i,"click",s.cluster),google.maps.event.trigger(i,"clusterclick",s.cluster),i.getZoomOnClick()){var o=i.getMaxZoom(),r=s.cluster.getBounds();i.getMap().fitBounds(r),setTimeout((function(){i.getMap().fitBounds(r),null!==o&&i.getMap().getZoom()>o&&i.getMap().setZoom(o+1)}),100)}n.cancelBubble=!0,n.stopPropagation&&n.stopPropagation()}})),google.maps.event.addDomListener(this.div,"mouseover",(function(){google.maps.event.trigger(s.cluster.getClusterer(),"mouseover",s.cluster)})),google.maps.event.addDomListener(this.div,"mouseout",(function(){google.maps.event.trigger(s.cluster.getClusterer(),"mouseout",s.cluster)}))},t.prototype.onRemove=function(){this.div&&this.div.parentNode&&(this.hide(),null!==this.boundsChangedListener&&google.maps.event.removeListener(this.boundsChangedListener),google.maps.event.clearInstanceListeners(this.div),this.div.parentNode.removeChild(this.div),this.div=null)},t.prototype.draw=function(){if(this.visible&&null!==this.div&&this.center){var t=this.getPosFromLatLng(this.center),e=t.x,s=t.y;this.div.style.top=s+"px",this.div.style.left=e+"px"}},t.prototype.hide=function(){this.div&&(this.div.style.display="none"),this.visible=!1},t.prototype.show=function(){if(this.div&&this.center){var t="",e="",s=this.backgroundPosition.split(" "),n=parseInt(s[0].replace(/^\s+|\s+$/g,""),10),i=parseInt(s[1].replace(/^\s+|\s+$/g,""),10),o=this.getPosFromLatLng(this.center);e=null===this.sums||"undefined"===typeof this.sums.title||""===this.sums.title?this.cluster.getClusterer().getTitle():this.sums.title,this.div.style.cssText=this.createCss(o),t="<img alt='"+e+"' src='"+this.url+"' style='position: absolute; top: "+i+"px; left: "+n+"px; ",this.cluster.getClusterer().enableRetinaIcons||(t+="clip: rect("+-1*i+"px, "+(-1*n+this.width)+"px, "+(-1*i+this.height)+"px, "+-1*n+"px);"),t+="'>",this.div.innerHTML=t+"<div style='position: absolute;top: "+this.anchorText[0]+"px;left: "+this.anchorText[1]+"px;color: "+this.textColor+";font-size: "+this.textSize+"px;font-family: "+this.fontFamily+";font-weight: "+this.fontWeight+";font-style: "+this.fontStyle+";text-decoration: "+this.textDecoration+";text-align: center;width: "+this.width+"px;line-height:"+this.height+"px;'>"+this.sums.text+"</div>",this.div.title=e,this.div.style.display=""}this.visible=!0},t.prototype.useStyle=function(t){this.sums=t;var e=this.cluster.getClusterer().getStyles(),s=e[Math.min(e.length-1,Math.max(0,t.index-1))];this.url=s.url,this.height=s.height,this.width=s.width,s.className&&(this.className=this.clusterClassName+" "+s.className),this.anchorText=s.anch
1orText||[0,0],this.anchorIcon=s.anchorIcon||[this.height/2,this.width/2],this.textColor=s.textColor||"black",this.textSize=s.textSize||11,this.textDecoration=s.textDecoration||"none",this.fontWeight=s.fontWeight||"bold",this.fontStyle=s.fontStyle||"normal",this.fontFamily=s.fontFamily||"Arial,sans-serif",this.backgroundPosition=s.backgroundPosition||"0 0"},t.prototype.setCenter=function(t){this.center=t},t.prototype.createCss=function(t){var e=[];return e.push("cursor: pointer;"),e.push("position: absolute; top: "+t.y+"px; left: "+t.x+"px;"),e.push("width: "+this.width+"px; height: "+this.height+"px;"),e.join("")},t.prototype.getPosFromLatLng=function(t){var e=this.getProjection().fromLatLngToDivPixel(t);return e.x-=this.anchorIcon[1],e.y-=this.anchorIcon[0],e},t}(),V=function(){function t(t){this.markerClusterer=t,this.map=this.markerClusterer.getMap(),this.gridSize=this.markerClusterer.getGridSize(),this.minClusterSize=this.markerClusterer.getMinimumClusterSize(),this.averageCenter=this.markerClusterer.getAverageCenter(),this.markers=[],this.center=void 0,this.bounds=null,this.clusterIcon=new W(this,this.markerClusterer.getStyles())}return t.prototype.getSize=function(){return this.markers.length},t.prototype.getMarkers=function(){return this.markers},t.prototype.getCenter=function(){return this.center},t.prototype.getMap=function(){return this.map},t.prototype.getClusterer=function(){return this.markerClusterer},t.prototype.getBounds=function(){for(var t=new google.maps.LatLngBounds(this.center,this.center),e=this.getMarkers(),s=0;s<e.length;s++){var n=e[s].getPosition();n&&t.extend(n)}return t},t.prototype.remove=function(){this.clusterIcon.setMap(null),this.markers=[],delete this.markers},t.prototype.addMarker=function(t){if(this.isMarkerAlreadyAdded(t))return!1;var e;if(this.center){if(this.averageCenter&&(e=t.getPosition())){var s=this.markers.length+1;this.center=new google.maps.LatLng((this.center.lat()*(s-1)+e.lat())/s,(this.center.lng()*(s-1)+e.lng())/s),this.calculateBounds()}}else(e=t.getPosition())&&(this.center=e,this.calculateBounds());t.isAdded=!0,this.markers.push(t);var n=this.markers.length,i=this.markerClusterer.getMaxZoom(),o=this.map.getZoom();if(null!==i&&"undefined"!==typeof o&&o>i)t.getMap()!==this.map&&t.setMap(this.map);else if(n<this.minClusterSize)t.getMap()!==this.map&&t.setMap(this.map);else if(n===this.minClusterSize)for(var r=0;r<n;r++)this.markers[r].setMap(null);else t.setMap(null);return!0},t.prototype.isMarkerInClusterBounds=function(t){if(null!==this.bounds){var e=t.getPosition();if(e)return this.bounds.contains(e)}return!1},t.prototype.calculateBounds=function(){this.bounds=this.markerClusterer.getExtendedBounds(new google.maps.LatLngBounds(this.center,this.center))},t.prototype.updateIcon=function(){var t=this.markers.length,e=this.markerClusterer.getMaxZoom(),s=this.map.getZoom();null!==e&&"undefined"!==typeof s&&s>e||t<this.minClusterSize?this.clusterIcon.hide():(this.center&&this.clusterIcon.setCenter(this.center),this.clusterIcon.useStyle(this.markerClusterer.getCalculator()(this.markers,this.markerClusterer.getStyles().length)),this.clusterIcon.show())},t.prototype.isMarkerAlreadyAdded=function(t){if(this.markers.includes)return this.markers.includes(t);for(var e=0;e<this.markers.length;e++)if(t===this.markers[e])return!0;return!1},t}(),j=function(t,e){var s=t.length,n=s.toString().length,i=Math.min(n,e);return{text:s.toString(),index:i,title:""}},N=[53,56,66,78,90],Z=function(){function t(e,s,n){void 0===s&&(s=[]),void 0===n&&(n={}),this.extend(t,google.maps.OverlayView),this.markers=[],this.clusters=[],this.listeners=[],this.activeMap=null,this.ready=!1,this.gridSize=n.gridSize||60,this.minClusterSize=n.minimumClusterSize||2,this.maxZoom=n.maxZoom||null,this.styles=n.styles||[],this.title=n.title||"",this.zoomOnClick=!0,void 0!==n.zoomOnClick&&(this.zoomOnClick=n.zoomOnClick),this.averageCenter=!1,void 0!==n.averageCenter&&(this.averageCenter=n.averageCenter),this.ignoreHidden=!1,void 0!==n.ignoreHidden&&(this.ignoreHidden=n.ignoreHidden),this.enableRetinaIcons=!1,void 0!==n.enableRetinaIcons&&(this.enableRetinaIcons=n.enableRetinaIcons),this.imagePath=n.imagePath||"https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m",this.imageExtension=n.imageExtension||"png",this.imageSizes=n.imageSizes||N,this.calculator=n.calculator||j,this.batchSize=n.batchSize||2e3,this.batchSizeIE=n.batchSizeIE||500,this.clusterClass=n.clusterClass||"cluster",-1!==navigator.userAgent.toLowerCase().indexOf("msie")&&(this.batchSize=this.batchSizeIE),this.timerRefStatic=null,this.setupStyles(),this.addMarkers(s,!0),this.setMap(e)}return t.prototype.onAdd=function(){var t=this;this.activeMap=this.getMap(),this.ready=!0,this.repaint(),this.listeners=[google.maps.event.addListener(this.getMap(),"zoom_changed",(function(){t.resetViewport(!1),t.getMap().getZoom()!==(t.get("minZoom")||0)&&t.getMap().getZoom()!==t.get("maxZoom")||google.maps.event.trigger(t,"idle")})),google.maps.event.addListener(this.getMap(),"idle",(function(){t.redraw()}))]},t.prototype.onRemove=function(){for(var t=0;t<this.markers.length;t++)this.markers[t].getMap()!==this.activeMap&&this.markers[t].setMap(this.activeMap);for(t=0;
1t<this.clusters.length;t++)this.clusters[t].remove();this.clusters=[];for(t=0;t<this.listeners.length;t++)google.maps.event.removeListener(this.listeners[t]);this.listeners=[],this.activeMap=null,this.ready=!1},t.prototype.draw=function(){},t.prototype.setupStyles=function(){if(!(this.styles.length>0))for(var t=0;t<this.imageSizes.length;t++)this.styles.push({url:this.imagePath+(t+1)+"."+this.imageExtension,height:this.imageSizes[t],width:this.imageSizes[t]})},t.prototype.fitMapToMarkers=function(){for(var t=this.getMarkers(),e=new google.maps.LatLngBounds,s=0;s<t.length;s++){var n=t[s].getPosition();n&&e.extend(n)}this.getMap().fitBounds(e)},t.prototype.getGridSize=function(){return this.gridSize},t.prototype.setGridSize=function(t){this.gridSize=t},t.prototype.getMinimumClusterSize=function(){return this.minClusterSize},t.prototype.setMinimumClusterSize=function(t){this.minClusterSize=t},t.prototype.getMaxZoom=function(){return this.maxZoom},t.prototype.setMaxZoom=function(t){this.maxZoom=t},t.prototype.getStyles=function(){return this.styles},t.prototype.setStyles=function(t){this.styles=t},t.prototype.getTitle=function(){return this.title},t.prototype.setTitle=function(t){this.title=t},t.prototype.getZoomOnClick=function(){return this.zoomOnClick},t.prototype.setZoomOnClick=function(t){this.zoomOnClick=t},t.prototype.getAverageCenter=function(){return this.averageCenter},t.prototype.setAverageCenter=function(t){this.averageCenter=t},t.prototype.getIgnoreHidden=function(){return this.ignoreHidden},t.prototype.setIgnoreHidden=function(t){this.ignoreHidden=t},t.prototype.getEnableRetinaIcons=function(){return this.enableRetinaIcons},t.prototype.setEnableRetinaIcons=function(t){this.enableRetinaIcons=t},t.prototype.getImageExtension=function(){return this.imageExtension},t.prototype.setImageExtension=function(t){this.imageExtension=t},t.prototype.getImagePath=function(){return this.imagePath},t.prototype.setImagePath=function(t){this.imagePath=t},t.prototype.getImageSizes=function(){return this.imageSizes},t.prototype.setImageSizes=function(t){this.imageSizes=t},t.prototype.getCalculator=function(){return this.calculator},t.prototype.setCalculator=function(t){this.calculator=t},t.prototype.getBatchSizeIE=function(){return this.batchSizeIE},t.prototype.setBatchSizeIE=function(t){this.batchSizeIE=t},t.prototype.getClusterClass=function(){return this.clusterClass},t.prototype.setClusterClass=function(t){this.clusterClass=t},t.prototype.getMarkers=function(){return this.markers},t.prototype.getTotalMarkers=function(){return this.markers.length},t.prototype.getClusters=function(){return this.clusters},t.prototype.getTotalClusters=function(){return this.clusters.length},t.prototype.addMarker=function(t,e){this.pushMarkerTo(t),e||this.redraw()},t.prototype.addMarkers=function(t,e){for(var s in t)t.hasOwnProperty(s)&&this.pushMarkerTo(t[s]);e||this.redraw()},t.prototype.pushMarkerTo=function(t){var e=this;t.getDraggable()&&google.maps.event.addListener(t,"dragend",(function(){e.ready&&(t.isAdded=!1,e.repaint())})),t.isAdded=!1,this.markers.push(t)},t.prototype.removeMarker_=function(t){var e=-1;if(this.markers.indexOf)e=this.markers.indexOf(t);else for(var s=0;s<this.markers.length;s++)if(t===this.markers[s]){e=s;break}return-1!==e&&(t.setMap(null),this.markers.splice(e,1),!0)},t.prototype.removeMarker=function(t,e){var s=this.removeMarker_(t);return!e&&s&&this.repaint(),s},t.prototype.removeMarkers=function(t,e){for(var s=!1,n=0;n<t.length;n++)s=s||this.removeMarker_(t[n]);return!e&&s&&this.repaint(),s},t.prototype.clearMarkers=function(){this.resetViewport(!0),this.markers=[]}
1,t.prototype.repaint=function(){var t=this.clusters.slice();this.clusters=[],this.resetViewport(!1),this.redraw(),setTimeout((function(){for(var e=0;e<t.length;e++)t[e].remove()}),0)},t.prototype.getExtendedBounds=function(t){var e=this.getProjection(),s=e.fromLatLngToDivPixel(new google.maps.LatLng(t.getNorthEast().lat(),t.getNorthEast().lng()));s.x+=this.gridSize,s.y-=this.gridSize;var n=e.fromLatLngToDivPixel(new google.maps.LatLng(t.getSouthWest().lat(),t.getSouthWest().lng()));return n.x-=this.gridSize,n.y+=this.gridSize,t.extend(e.fromDivPixelToLatLng(s)),t.extend(e.fromDivPixelToLatLng(n)),t},t.prototype.redraw=function(){this.createClusters(0)},t.prototype.resetViewport=function(t){for(var e=0;e<this.clusters.length;e++)this.clusters[e].remove();this.clusters=[];for(e=0;e<this.markers.length;e++){var s=this.markers[e];s.isAdded=!1,t&&s.setMap(null)}},t.prototype.distanceBetweenPoints=function(t,e){var s=(e.lat()-t.lat())*Math.PI/180,n=(e.lng()-t.lng())*Math.PI/180,i=Math.sin(s/2)*Math.sin(s/2)+Math.cos(t.lat()*Math.PI/180)*Math.cos(e.lat()*Math.PI/180)*Math.sin(n/2)*Math.sin(n/2);return 2*Math.atan2(Math.sqrt(i),Math.sqrt(1-i))*6371},t.prototype.isMarkerInBounds=function(t,e){var s=t.getPosition();return!!s&&e.contains(s)},t.prototype.addToClosestCluster=function(t){for(var e,s=4e4,n=null,i=0;
1i<this.clusters.length;i++){var o=(e=this.clusters[i]).getCenter(),r=t.getPosition();if(o&&r){var a=this.distanceBetweenPoints(o,r);a<s&&(s=a,n=e)}}n&&n.isMarkerInClusterBounds(t)?n.addMarker(t):((e=new V(this)).addMarker(t),this.clusters.push(e))},t.prototype.createClusters=function(t){var e=this;if(this.ready){0===t&&(google.maps.event.trigger(this,"clusteringbegin",this),null!==this.timerRefStatic&&(window.clearTimeout(this.timerRefStatic),delete this.timerRefStatic));for(var s=this.getMap().getZoom()>3?new google.maps.LatLngBounds(this.getMap().getBounds().getSouthWest(),this.getMap().getBounds().getNorthEast()):new google.maps.LatLngBounds(new google.maps.LatLng(85.02070771743472,-178.48388434375),new google.maps.LatLng(-85.08136444384544,178.00048865625)),n=this.getExtendedBounds(s),i=Math.min(t+this.batchSize,this.markers.length),o=t;o<i;o++){var r=this.markers[o];!r.isAdded&&this.isMarkerInBounds(r,n)&&(!this.ignoreHidden||this.ignoreHidden&&r.getVisible())&&this.addToClosestCluster(r)}if(i<this.markers.length)this.timerRefStatic=window.setTimeout((function(){e.createClusters(i)}),0);else{this.timerRefStatic=null,google.maps.event.trigger(this,"clusteringend",this);for(o=0;
1o<this.clusters.length;o++)this.clusters[o].updateIcon()}}},t.prototype.extend=function(t,e){return function(t){for(var e in t.prototype)this.prototype[e]=t.prototype[e];return this}.apply(t,[e])},t}();const H={onClick:"click",onClusteringBegin:"clusteringbegin",onClusteringEnd:"clusteringend",onMouseOut:"mouseout",onMouseOver:"mouseover"},F={averageCenter(t,e){t.setAverageCenter(e)},batchSizeIE(t,e){t.setBatchSizeIE(e)},calculator(t,e){t.setCalculator(e)},clusterClass(t,e){t.setClusterClass(e)},enableRetinaIcons(t,e){t.setEnableRetinaIcons(e)},gridSize(t,e){t.setGridSize(e)},ignoreHidden(t,e){t.setIgnoreHidden(e)},imageExtension(t,e){t.setImageExtension(e)},imagePath(t,e){t.setImagePath(e)},imageSizes(t,e){t.setImageSizes(e)},maxZoom(t,e){t.setMaxZoom(e)},minimumClusterSize(t,e){t.setMinimumClusterSize(e)},styles(t,e){t.setStyles(e)},title(t,e){t.setTitle(e)},zoomOnClick(t,e){t.setZoomOnClick(e)}};class q extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={markerClusterer:null},this.setClustererCallback=()=>{null!==this.state.markerClusterer&&this.props.onLoad&&this.props.onLoad(this.state.markerClusterer)}}componentDidMount(){if(this.context){const t=new Z(this.context,[],this.props.options);this.registeredEvents=c({updaterMap:F,eventMap:H,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{markerClusterer:t}}),this.setClustererCallback)}}componentDidUpdate(t){this.state.markerClusterer&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:F,eventMap:H,prevProps:t,nextProps:this.props,instance:this.state.markerClusterer}))}componentWillUnmount(){null!==this.state.markerClusterer&&(this.props.onUnmount&&this.props.onUnmount(this.state.markerClusterer),l(this.registeredEvents),this.state.markerClusterer.setMap(null))}render(){return null!==this.state.markerClusterer?this.props.children(this.state.markerClusterer):null}}q.contextType=r;var G=function(){function t(e){void 0===e&&(e={}),this.extend(t,google.maps.OverlayView),this.content=e.content||"",this.disableAutoPan=e.disableAutoPan||!1,this.maxWidth=e.maxWidth||0,this.pixelOffset=e.pixelOffset||new google.maps.Size(0,0),this.position=e.position||new google.maps.LatLng(0,0),this.zIndex=e.zIndex||null,this.boxClass=e.boxClass||"infoBox",this.boxStyle=e.boxStyle||{},this.closeBoxMargin=e.closeBoxMargin||"2px",this.closeBoxURL=e.closeBoxURL||"http://www.google.com/intl/en_us/mapfiles/close.gif",""===e.closeBoxURL&&(this.closeBoxURL=""),this.infoBoxClearance=e.infoBoxClearance||new google.maps.Size(1,1),"undefined"===typeof e.visible&&("undefined"===typeof e.isHidden?e.visible=!0:e.visible=!e.isHidden),this.isHidden=!e.visible,this.alignBottom=e.alignBottom||!1,this.pane=e.pane||"floatPane",this.enableEventPropagation=e.enableEventPropagation||!1,this.div=null,this.closeListener=null,this.moveListener=null,this.mapListener=null,this.contextListener=null,this.eventListeners=null,this.fixedWidthSet=null}return t.prototype.createInfoBoxDiv=function(){var t=this;function e(t){t.cancelBubble=!0,t.stopPropagation&&t.stopPropagation()}if(!this.div){if(this.div=document.createElement("div"),this.setBoxStyle(),"string"===typeof this.content?this.div.innerHTML=this.getCloseBoxImg()+this.content:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(this.content)),this.getPanes()[this.pane].appendChild(this.div),this.addClickHandler(),this.div.style.width)this.fixedWidthSet=!0;else if(0!==this.maxWidth&&this.div.offsetWidth>this.maxWidth)this.div.style.width=this.maxWidth+"px",this.fixedWidthSet=!0;else{var s=this.getBoxWidths();this.div.style.width=this.div.offsetWidth-s.left-s.right+"px",this.fixedWidthSet=!1}if(this.panBox(this.disableAutoPan),!this.enableEventPropagation){this.eventListeners=[];for(var n=["mousedown","mouseover","mouseout","mouseup","click","dblclick","touchstart","touchend","touchmove"],i=0;i<n.length;i++)this.eventListeners.push(google.maps.event.addDomListener(this.div,n[i],e));this.eventListeners.push(google.maps.event.addDomListener(this.div,"mouseover",(function(){t.div&&(t.div.style.cursor="default")})))}this.contextListener=google.maps.event.addDomListener(this.div,"contextmenu",(function(s){s.returnValue=!1,s.preventDefault&&s.preventDefault(),t.enableEventPropagation||e(s)})),google.maps.event.trigger(this,"domready")}},t.prototype.getCloseBoxImg=function(){var t="";return""!==this.closeBoxURL&&(t='<img alt=""',t+=' aria-hidden="true"',t+=" src='"+this.closeBoxURL+"'",t+=" align=right",t+=" style='",t+=" position: relative;",t+=" cursor: pointer;",t+=" margin: "+this.closeBoxMargin+";",t+="'>"),t},t.prototype.addClickHandler=function(){if(this.div&&this.div.firstChild&&""!==this.closeBoxURL){var t=this.div.firstChild;this.closeListener=google.maps.event.addDomListener(t,"click",this.getCloseClickHandler())}else this.closeListener=null},t.prototype.getCloseClickHandler=function(){var t=this;return function(e){e.cancelBubble=!0,e.stopPropagation&&e.stopPropagation(),google.maps.event.trigger(t,"closeclick"),t.close()}},t.prototype.panBox=function(t){if(this.div&&!t){var e=this.getMap();if(e instanceof google.maps.Map){var s=0,n=0,i=e.getBounds();i&&!i.contains(this.position)&&e.setCenter(this.position);var o=e.getDiv(),r=o.offsetWidth,a=o.offsetHeight,p=this.pixelOffset.width,h=this.pixelOffset.height,l=this.div.offsetWidth,c=this.div.offsetHeight,u=this.infoBoxClearance.width,d=this.infoBoxClearance.height,g=this.getProjection().fromLatLngToContainerPixel(this.position);null!==g&&(g.x<-p+u?s=g.x+p-u:g.x+l+p+u>r&&(s=g.x+l+p+u-r),this.alignBottom?g.y<-h+d+c?n=g.y+h-d-c:g.y+h+d>a&&(n=g.y+h+d-a):g.y<-h+d?n=g.y+h-d:g.y+c+h+d>a&&(n=g.y+c+h+d-a)),0===s&&0===n||e.panBy(s,n)}}},t.prototype.setBoxStyle=function(){if(this.div){this.div.className=this.boxClass,this.div.style.cssText="";var t=this.boxStyle;for(var e in t)t.hasOwnProperty(e)&&(this.div.style[e]=t[e]);if(this.div.style.webkitTransform="translateZ(0)","undefined"!==typeof this.div.style.opacity&&""!==this.div.style.opacity){var s=parseFloat(this.div.style.opacity||"");this.div.style.msFilter='"progid:DXImageTransform.Microsoft.Alpha(Opacity='+100*s+')"',this.div.style.filter="alpha(opacity="+100*s+")"}this.div.style.position="absolute",this.div.style.visibility="hidden",null!==this.zIndex&&(this.div.style.zIndex=this.zIndex+""),this.div.style.overflow||(this.div.style.overflow="auto")}},t.prototype.getBoxWidths=function(){var t={top:0,bottom:0,left:0,right:0};if(!this.div)return t;if(document.defaultView&&document.defaultView.getComputedStyle){var e=this.div.ownerDocument,s=e&&e.defaultView?e.defaultView.getComputedStyle(this.div,""):null;s&&(t.top=parseInt(s.borderTopWidth||"",10)||0,t.bottom=parseInt(s.borderBottomWidth||"",10)||0,t.left=parseInt(s.borderLeftWidth||"",10)||0,t.right=parseInt(s.borderRightWidth||"",10)||0)}else if(document.documentElement.currentStyle){var n=this.div.currentStyle;n&&(t.top=parseInt(n.borderTopWidth||"",10)||0,t.bottom=parseInt(n.borderBottomWidth||"",10)||0,t.left=parseInt(n.borderLeftWidth||"",10)||0,t.right=parseInt(n.borderRightWidth||"",10)||0)}return t},t.prototype.onRemove=function(){this.div&&this.div.parentNode&&(this.div.parentNode.removeChild(this.div),this.div=null)},t.prototype.draw=function(){if(this.createInfoBoxDiv(),this.div){var t=this.getProjection().fromLatLngToDivPixel(this.position);null!==t&&(this.div.style.left=t.x+this.pixelOffset.width+"px",this.alignBottom?this.div.style.bottom=-(t.y+this.pixelOffset.height)+"px":this.div.style.top=t.y+this.pixelOffset.height+"px"),this.isHidden?this.div.style.visibility="hidden":this.div.style.visibility="visible"}},t.prototype.setOptions=function(t){void 0===t&&(t={}),"undefined"!==typeof t.boxClass&&(this.boxClass=t.boxClass,this.setBoxStyle()),"undefined"!==typeof t.boxStyle&&(this.boxStyle=t.boxStyle,this.setBoxStyle()),"undefined"!==typeof t.content&&this.setContent(t.content),"undefined"!==typeof t.disableAutoPan&&(this.disableAutoPan=t.disableAutoPan),"undefined"!==typeof t.maxWidth&&(this.maxWidth=t.maxWidth),"undefined"!==typeof t.pixelOffset&&(this.pixelOffset=t.pixelOffset),"undefined"!==typeof t.alignBottom&&(this.alignBottom=t.alignBottom),"undefined"!==typeof t.position&&this.setPosition(t.position),"undefined"!==typeof t.zIndex&&this.setZIndex(t.zIndex),"undefined"!==typeof t.closeBoxMargin&&(this.closeBoxMargin=t.closeBoxMargin),"undefined"!==typeof t.closeBoxURL&&(this.closeBoxURL=t.closeBoxURL),"undefined"!==typeof t.infoBoxClearance&&(this.infoBoxClearance=t.infoBoxClearance),"undefined"!==typeof t.isHidden&&(this.isHidden=t.isHidden),"undefined"!==typeof t.visible&&(this.isHidden=!t.visible),"undefined"!==typeof t.enableEventPropagation&&(this.enableEventPropagation=t.enableEventPropagation),this.div&&this.draw()},t.prototype.setContent=function(t){this.content=t,this.div&&(this.closeListener&&(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.fixedWidthSet||(this.div.style.width=""),"string"===typeof t?this.div.innerHTML=this.getCloseBoxImg()+t:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(t)),this.fixedWidthSet||(this.div.style.width=this.div.offsetWidth+"px","string"===typeof t?this.div.innerHTML=this.getCloseBoxImg()+t:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(t))),this.addClickHandler()),google.maps.event.trigger(this,"content_changed")},t.prototype.setPosition=function(t){this.position=t,this.div&&this.draw(),google.maps.event.trigger(this,"position_changed")},t.prototype.setVisible=function(t){this.isHidden=!t,this.div&&(this.div.style.visibility=this.isHidden?"hidden":"visible")},t.prototype.setZIndex=function(t){this.zIndex=t,this.div&&(this.div.style.zIndex=t+""),google.maps.event.trigger(this,"zindex_changed")},t.prototype.getContent=function(){return this.content},t.prototype.getPosition=function(){return this.position},t.prototype.getZIndex=function(){return this.zIndex},t.prototype.getVisible=function(){var t=this.getMap();return"undefined"!==typeof t&&null!==t&&!this.isHidden},t.prototype.show=function(){this.isHidden=!1,this.div&&(this.div.style.visibility="visible")},t.prototype.hide=function(){this.isHidden=!0,this.div&&(this.div.style.visibility="hidden")},t.prototype.open=function(t,e){var s=this;e&&(this.position=e.getPosition(),this.moveListener=google.maps.event.addListener(e,"position_changed",(function(){var t=e.getPosition();s.setPosition(t)})),this.mapListener=google.maps.event.addListener(e,"map_changed",(function(){s.setMap(e.map)}))),this.setMap(t),this.div&&this.panBox()},t.prototype.close=function(){if(this.closeListener&&(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.eventListeners){for(var t=0;t<this.eventListeners.length;t++)google.maps.event.removeListener(this.eventListeners[t]);this.eventListeners=null}this.moveListener&&(google.maps.event.removeListener(this.moveListener),this.moveListener=null),this.mapListener&&(google.maps.event.removeListener(this.mapListener),this.mapListener=null),this.contextListener&&(google.maps.event.removeListener(this.contextListener),this.contextListener=null),this.setMap(null)},t.prototype.extend=function(t,e){return function(t){for(var e in t.prototype)this.prototype.hasOwnProperty(e)||(this.prototype[e]=t.prototype[e]);return this}.apply(t,[e])},t}();const $={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},Y={options(t,e){t.setOptions(e)},position(t,e){e instanceof google.maps.LatLng?t.setPosition(e):t.setPosition(new google.maps.LatLng(e.lat,e.lng))},visible(t,e){t.setVisible(e)},zIndex(t,e){t.setZIndex(e)}};class K extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=null,this.state={infoBox:null},this.open=(t,e)=>{e?t.open(this.context,e):t.getPosition()?t.open(this.context):o(!1,"You must provide either an anchor or a position prop for <InfoBox>.")},this.setInfoBoxCallback=()=>{const{anchor:t,onLoad:e}=this.props,{infoBox:s}=this.state;null!==s&&null!==this.containerElement&&(s.setContent(this.containerElement),this.open(s,t),e&&e(s))}}componentDidMount(){const{options:t}=this.props,e=t||{},{position:s}=e,n=m(e,["position"]);let i;!s||s instanceof google.maps.LatLng||(i=new google.maps.LatLng(s.lat,s.lng));const o=new G(Object.assign(Object.assign({},n),i?{position:i}:{}));this.containerElement=document.createElement("div"),this.registeredEvents=c({updaterMap:Y,eventMap:$,prevProps:{},nextProps:this.props,instance:o}),this.setState({infoBox:o},this.setInfoBoxCallback)}componentDidUpdate(t){const{infoBox:e}=this.state;null!==e&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:Y,eventMap:$,prevProps:t,nextProps:this.props,instance:e}))}componentWillUnmount(){const{onUnmount:t}=this.props,{infoBox:e}=this.state;null!==e&&(t&&t(e),l(this.registeredEvents),e.close())}render(){return this.containerElement?i.createPortal(n.Children.only(this.props.children),this.containerElement):null}}K.contextType=r;var Q={exports:{}},J={exports:{}};!function(t){function e(t,e,s,n){this.dataset=[],this.epsilon=1,this.minPts=2,this.distance=this._euclideanDistance,this.cluster
1s=[],this.noise=[],this._visited=[],this._assigned=[],this._datasetLength=0,this._init(t,e,s,n)}e.prototype.run=function(t,e,s,n){this._init(t,e,s,n);for(var i=0;i<this._datasetLength;i++)if(1!==this._visited[i]){this._visited[i]=1;var o=this._regionQuery(i);if(o.length<this.minPts)this.noise.push(i);else{var r=this.clusters.length;this.clusters.push([]),this._addToCluster(i,r),this._expandCluster(r,o)}}return this.clusters},e.prototype._init=function(t,e,s,n){if(t){if(!(t instanceof Array))throw Error("Dataset must be of type array, "+typeof t+" given");this.dataset=t,this.clusters=[],this.noise=[],this._datasetLength=t.length,this._visited=new Array(this._datasetLength),this._assigned=new Array(this._datasetLength)}e&&(this.epsilon=e),s&&(this.minPts=s),n&&(this.distance=n)},e.prototype._expandCluster=function(t,e){for(var s=0;s<e.length;s++){var n=e[s];if(1!==this._visited[n]){this._visited[n]=1;var i=this._regionQuery(n);i.length>=this.minPts&&(e=this._mergeArrays(e,i))}1!==this._assigned[n]&&this._addToCluster(n,t)}},e.prototype._addToCluster=function(t,e){this.clusters[e].push(t),this._assigned[t]=1},e.prototype._regionQuery=function(t){for(var e=[],s=0;s<this._datasetLength;s++){this.distance(this.dataset[t],this.dataset[s])<this.epsilon&&e.push(s)}return e},e.prototype._mergeArrays=function(t,e){for(var s=e.length,n=0;n<s;n++){var i=e[n];t.indexOf(i)<0&&t.push(i)}return t},e.prototype._euclideanDistance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;)s+=(t[n]-e[n])*(t[n]-e[n]);return Math.sqrt(s)},t.exports&&(t.exports=e)}(J);var X={exports:{}};!function(t){function e(t,e,s){this.k=3,this.dataset=[],this.assignments=[],this.centroids=[],this.init(t,e,s)}e.prototype.init=function(t,e,s){this.assignments=[],this.centroids=[],"undefined"!==typeof t&&(this.dataset=t),"undefined"!==typeof e&&(this.k=e),"undefined"!==typeof s&&(this.distance=s)},e.prototype.run=function(t,e){this.init(t,e);for(var s=this.dataset.length,n=0;n<this.k;n++)this.centroids[n]=this.randomCentroid();for(var i=!0;i;){i=this.assign();for(var o=0;o<this.k;o++){for(var r=new Array(l),a=0,p=0;p<l;p++)r[p]=0;for(var h=0;h<s;h++){var l=this.dataset[h].length;if(o===this.assignments[h]){for(p=0;p<l;p++)r[p]+=this.dataset[h][p];a++}}if(a>0){for(p=0;p<l;p++)r[p]/=a;this.centroids[o]=r}else this.centroids[o]=this.randomCentroid(),i=!0}}return this.getClusters()},e.prototype.randomCentroid=function(){var t,e,s=this.dataset.length-1;do{e=Math.round(Math.random()*s),t=this.dataset[e]}while(this.centroids.indexOf(t)>=0);return t},e.prototype.assign=function(){for(var t,e=!1,s=this.dataset.length,n=0;n<s;n++)(t=this.argmin(this.dataset[n],this.centroids,this.distance))!=this.assignments[n]&&(this.assignments[n]=t,e=!0);return e},e.prototype.getClusters=function(){for(var t,e=new Array(this.k),s=0;s<this.assignments.length;s++)"undefined"===typeof e[t=this.assignments[s]]&&(e[t]=[]),e[t].push(s);return e},e.prototype.argmin=function(t,e,s){for(var n,i=Number.MAX_VALUE,o=0,r=e.length,a=0;a<r;a++)(n=s(t,e[a]))<i&&(i=n,o=a);return o},e.prototype.distance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;){var i=t[n]-e[n];s+=i*i}return Math.sqrt(s)},t.exports&&(t.exports=e)}(X);var tt,et={exports:{}},st={exports:{}};!function(t){function e(t,e,s){this._queue=[],this._priorities=[],this._sorting="desc",this._init(t,e,s)}e.prototype.insert=function(t,e){for(var s=this._queue.length,n=s;n--;){var i=this._priorities[n];"desc"===this._sorting?e>i&&(s=n):e<i&&(s=n)}this._insertAt(t,e,s)},e.prototype.remove=function(t){for(var e=this._queue.length;e--;){if(t===this._queue[e]){this._queue.splice(e,1),this._priorities.splice(e,1);break}}},e.prototype.forEach=function(t){this._queue.forEach(t)},e.prototype.getElements=function(){return this._queue},e.prototype.getElementPriority=function(t){return this._priorities[t]},e.prototype.getPriorities=function(){return this._priorities},e.prototype.getElementsWithPriorities=function(){for(var t=[],e=0,s=this._queue.length;e<s;e++)t.push([this._queue[e],this._priorities[e]]);return t},e.prototype._init=function(t,e,s){if(t&&e){if(this._queue=[],this._priorities=[],t.length!==e.length)throw new Error("Arrays must have the same length");for(var n=0;n<t.length;n++)this.insert(t[n],e[n])}s&&(this._sorting=s)},e.prototype._insertAt=function(t,e,s){this._queue.length===s?(this._queue.push(t),this._priorities.push(e)):(this._queue.splice(s,0,t),this._priorities.splice(s,0,e))},t.exports&&(t.exports=e)}(st),function(t){if(t.exports)var e=st.exports;function s(t,e,s,n){this.epsilon=1,this.minPts=1,this.distance=this._euclideanDistance,this._reachability=[],this._processed=[],this._coreDistance=0,this._orderedList=[],this._init(t,e,s,n)}s.prototype.run=function(t,s,n,i){this._init(t,s,n,i);for(var o=0,r=this.dataset.length;o<r;o++)if(1!==this._processed[o]){this._processed[o]=1,this.cluster
1s.push([o]);var a=this.clusters.length-1;this._orderedList.push(o);var p=new e(null,null,"asc"),h=this._regionQuery(o);void 0!==this._distanceToCore(o)&&(this._updateQueue(o,h,p),this._expandCluster(a,p))}return this.clusters},s.prototype.getReachabilityPlot=function(){for(var t=[],e=0,s=this._orderedList.length;e<s;e++){var n=this._orderedList[e],i=this._reachability[n];t.push([n,i])}return t},s.prototype._init=function(t,e,s,n){if(t){if(!(t instanceof Array))throw Error("Dataset must be of type array, "+typeof t+" given");this.dataset=t,this.clusters=[],this._reachability=new Array(this.dataset.length),this._processed=new Array(this.dataset.length),this._coreDistance=0,this._orderedList=[]}e&&(this.epsilon=e),s&&(this.minPts=s),n&&(this.distance=n)},s.prototype._updateQueue=function(t,e,s){var n=this;this._coreDistance=this._distanceToCore(t),e.forEach((function(e){if(void 0===n._processed[e]){var i=n.distance(n.dataset[t],n.dataset[e]),o=Math.max(n._coreDistance,i);void 0===n._reachability[e]?(n._reachability[e]=o,s.insert(e,o)):o<n._reachability[e]&&(n._reachability[e]=o,s.remove(e),s.insert(e,o))}}))},s.prototype._expandCluster=function(t,e){for(var s=e.getElements(),n=0,i=s.length;n<i;n++){var o=s[n];if(void 0===this._processed[o]){var r=this._regionQuery(o);this._processed[o]=1,this.clusters[t].push(o),this._orderedList.push(o),void 0!==this._distanceToCore(o)&&(this._updateQueue(o,r,e),this._expandCluster(t,e))}}},s.prototype._distanceToCore=function(t){for(var e=this.epsilon,s=0;s<e;s++){if(this._regionQuery(t,s).length>=this.minPts)return s}},s.prototype._regionQuery=function(t,e){e=e||this.epsilon;for(var s=[],n=0,i=this.dataset.length;n<i;n++)this.distance(this.dataset[t],this.dataset[n])<e&&s.push(n);return s},s.prototype._euclideanDistance=function(t,e){for(var s=0,n=Math.min(t.length,e.length);n--;)s+=(t[n]-e[n])*(t[n]-e[n]);return Math.sqrt(s)},t.exports&&(t.exports=s)}(et),(tt=Q).exports&&(tt.exports={DBSCAN:J.exports,KMEANS:X.exports,OPTICS:et.exports,PriorityQueue:st.exports});var nt={exports:{}};!function(t,e){t.exports=function(){function t(s,n,i,o,r,a){if(!(r-o<=i)){var p=o+r>>1;e(s,n,p,o,r,a%2),t(s,n,i,o,p-1,a+1),t(s,n,i,p+1,r,a+1)}}function e(t,n,i,o,r,a){for(;r>o;){if(r-o>600){var p=r-o+1,h=i-o+1,l=Math.log(p),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(l*c*(p-c)/p)*(h-p/2<0?-1:1);
1e(t,n,i,Math.max(o,Math.floor(i-h*c/p+u)),Math.min(r,Math.floor(i+(p-h)*c/p+u)),a)}var d=n[2*i+a],g=o,m=r;for(s(t,n,o,i),n[2*r+a]>d&&s(t,n,o,r);g<m;){for(s(t,n,g,m),g++,m--;n[2*g+a]<d;)g++;for(;n[2*m+a]>d;)m--}n[2*o+a]===d?s(t,n,o,m):s(t,n,++m,r),m<=i&&(o=m+1),i<=m&&(r=m-1)}}function s(t,e,s,i){n(t,s,i),n(e,2*s,2*i),n(e,2*s+1,2*i+1)}function n(t,e,s){var n=t[e];t[e]=t[s],t[s]=n}function i(t,e,s,n,i,o,r){for(var a,p,h=[0,t.length-1,0],l=[];h.length;){var c=h.pop(),u=h.pop(),d=h.pop();if(u-d<=r)for(var g=d;g<=u;g++)a=e[2*g],p=e[2*g+1],a>=s&&a<=i&&p>=n&&p<=o&&l.push(t[g]);else{var m=Math.floor((d+u)/2);a=e[2*m],p=e[2*m+1],a>=s&&a<=i&&p>=n&&p<=o&&l.push(t[m]);var f=(c+1)%2;(0===c?s<=a:n<=p)&&(h.push(d),h.push(m-1),h.push(f)),(0===c?i>=a:o>=p)&&(h.push(m+1),h.push(u),h.push(f))}}return l}function o(t,e,s,n,i,o){for(var a=[0,t.length-1,0],p=[],h=i*i;a.length;){var l=a.pop(),c=a.pop(),u=a.pop();if(c-u<=o)for(var d=u;d<=c;d++)r(e[2*d],e[2*d+1],s,n)<=h&&p.push(t[d]);else{var g=Math.floor((u+c)/2),m=e[2*g],f=e[2*g+1];r(m,f,s,n)<=h&&p.push(t[g]);var v=(l+1)%2;(0===l?s-i<=m:n-i<=f)&&(a.push(u),a.push(g-1),a.push(v)),(0===l?s+i>=m:n+i>=f)&&(a.push(g+1),a.push(c),a.push(v))}}return p}function r(t,e,s,n){var i=t-s,o=e-n;return i*i+o*o}var a=function(t){return t[0]},p=function(t){return t[1]},h=function(e,s,n,i,o){void 0===s&&(s=a),void 0===n&&(n=p),void 0===i&&(i=64),void 0===o&&(o=Float64Array),this.nodeSize=i,this.points=e;for(var r=e.length<65536?Uint16Array:Uint32Array,h=this.ids=new r(e.length),l=this.coords=new o(2*e.length),c=0;c<e.length;c++)h[c]=c,l[2*c]=s(e[c]),l[2*c+1]=n(e[c]);t(h,l,i,0,h.length-1,0)};h.prototype.range=function(t,e,s,n){return i(this.ids,this.coords,t,e,s,n,this.nodeSize)},h.prototype.within=function(t,e,s){return o(this.ids,this.coords,t,e,s,this.nodeSize)};var l,c={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(t){return t}},u=Math.fround||(l=new Float32Array(1),function(t){return l[0]=+t,l[0]}),d=function(t){this.options=b(Object.create(c),t),this.trees=new Array(this.options.maxZoom+1)};function g(t,e,s,n,i){return{x:u(t),y:u(e),zoom:1/0,id:s,parentId:-1,numPoints:n,properties:i}}function m(t,e){var s=t.geometry.coordinates,n=s[0],i=s[1];return{x:u(y(n)),y:u(x(i)),zoom:1/0,index:e,parentId:-1}}function f(t){return{type:"Feature",id:t.id,properties:v(t),geometry:{type:"Point",coordinates:[C(t.x),M(t.y)]}}}function v(t){var e=t.numPoints,s=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return b(b({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:s})}function y(t){return t/360+.5}function x(t){var e=Math.sin(t*Math.PI/180),s=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return s<0?0:s>1?1:s}function C(t){return 360*(t-.5)}function M(t){var e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function b(t,e){for(var s in e)t[s]=e[s];return t}function L(t){return t.x}function w(t){return t.y}return d.prototype.load=function(t){var e=this.options,s=e.log,n=e.minZoom,i=e.maxZoom,o=e.nodeSize;s&&console.time("total time");var r="prepare "+t.length+" points";s&&console.time(r),this.points=t;for(var a=[],p=0;p<t.length;p++)t[p].geometry&&a.push(m(t[p],p));this.trees[i+1]=new h(a,L,w,o,Float32Array),s&&console.timeEnd(r);for(var l=i;l>=n;l--){var c=+Date.now();a=this._cluster(a,l),this.trees[l]=new h(a,L,w,o,Float32Array),s&&console.log("z%d: %d clusters in %dms",l,a.length,+Date.now()-c)}return s&&console.timeEnd("total time"),this},d.prototype.getClusters=function(t,e){var s=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),i=180===t[2]?180:((t[2]+180)%360+360)%360-180,o=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)s=-180,i=180;else if(s>i){var r=this.getClusters([s,n,180,o],e),a=this.getClusters([-180,n,i,o],e);return r.concat(a)}for(var p=this.trees[this._limitZoom(e)],h=[],l=0,c=p.range(y(s),x(o),y(i),x(n));l<c.length;l+=1){var u=c[l],d=p.points[u];h.push(d.numPoints?f(d):this.points[d.index])}return h},d.prototype.getChildren=function(t){var e=this._getOriginId(t),s=this._getOriginZoom(t),n="No cluster with the specified id.",i=this.trees[s];if(!i)throw new Error(n);var o=i.points[e];if(!o)throw new Error(n);for(var r=this.options.radius/(this.options.extent*Math.pow(2,s-1)),a=[],p=0,h=i.within(o.x,o.y,r);p<h.length;p+=1){var l=h[p],c=i.points[l];c.parentId===t&&a.push(c.numPoints?f(c):this.points[c.index])}if(0===a.length)throw new Error(n);return a},d.prototype.getLeaves=function(t,e,s){e=e||10,s=s||0;var n=[];return this._appendLeaves(n,t,e,s,0),n},d.prototype.getTile=function(t,e,s){var n=this.trees[this._limitZoom(t)],i=Math.pow(2,t),o=this.options,r=o.extent,a=o.radius/r,p=(s-a)/i,h=(s+1+a)/i,l={features:[]};return this._addTileFeatures(n.range((e-a)/i,p,(e+1+a)/i,h),n.points,e,s,i,l),0===e&&this._addTileFeatures(n.range(1-a/i,p,1,h),n.points,i,s,i,l),e===i-1&&this._addTileFeatures(n.range(0,p,a/i,h),n.points,-1,s,i,l),l.features.length?l:null},d.prototype.getClusterExpansionZoom=function(t){for(var e=this._getOriginZoom(t)-1;e<=this.options.maxZoom;){var s=this.getChildren(t);if(e++,1!==s.length)break;t=s[0].properties.cluster_id}return e},d.prototype._appendLeaves=function(t,e,s,n,i){for(var o=0,r=this.getChildren(e);o<r.length;o+=1){var a=r[o],p=a.properties;if(p&&p.cluster?i+p.point_count<=n?i+=p.point_count:i=this._appendLeaves(t,p.cluster_id,s,n,i):i<n?i++:t.push(a),t.length===s)break}return i},d.prototype._addTileFeatures=function(t,e,s,n,i,o){for(var r=0,a=t;r<a.length;r+=1){var p=e[a[r]],h=p.numPoints,l=void 0,c=void 0,u=void 0;if(h)l=v(p),c=p.x,u=p.y;else{var d=this.points[p.index];l=d.properties,c=y(d.geometry.coordinates[0]),u=x(d.geometry.coordinates[1])}var g={type:1,geometry:[[Math.round(this.options.extent*(c*i-s)),Math.round(this.options.extent*(u*i-n))]],tags:l},m=void 0;h?m=p.id:this.options.generateId?m=p.index:this.points[p.index].id&&(m=this.points[p.index].id),void 0!==m&&(g.id=m),o.features.push(g)}},d.prototype._limitZoom=function(t){return Math.max(this.options.minZoom,Math.min(+t,this.options.maxZoom+1))},d.prototype._cluster=function(t,e){for(var s=[],n=this.options,i=n.radius,o=n.extent,r=n.reduce,a=n.minPoints,p=i/(o*Math.pow(2,e)),h=0;h<t.length;h++){var l=t[h];if(!(l.zoom<=e)){l.zoom=e;for(var c=this.trees[e+1],u=c.within(l.x,l.y,p),d=l.numPoints||1,m=d,f=0,v=u;f<v.length;f+=1){var y=v[f],x=c.points[y];x.zoom>e&&(m+=x.numPoints||1)}if(m>d&&m>=a){for(var C=l.x*d,M=l.y*d,b=r&&d>1?this._map(l,!0):null,L=(h<<5)+(e+1)+this.points.length,w=0,P=u;w<P.length;w+=1){var k=P[w],E=c.points[k];if(!(E.zoom<=e)){E.zoom=e;var S=E.numPoints||1;C+=E.x*S,M+=E.y*S,E.parentId=L,r&&(b||(b=this._map(l,!0)),r(b,this._map(E)))}}l.parentId=L,s.push(g(C/m,M/m,L,m,b))}else if(s.push(l),m>1)for(var _=0,I=u;_<I.length;_+=1){var D=I[_],O=c.points[D];O.zoom<=e||(O.zoom=e,s.push(O))}}}return s},d.prototype._getOriginId=function(t){return t-this.points.length>>5},d.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},d.prototype._map=function(t,e){if(t.numPoints)return e?b({},t.properties):t.properties;var s=this.points[t.index].properties,n=this.options.map(s);return e&&n===s?b({},n):n},d}()}(nt);var it;!function(t){t.CLUSTERING_BEGIN="clusteringbegin",t.CLUSTERING_END="clusteringend",t.CLUSTER_CLICK="click"}(it||(it={}));const ot={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},rt={options(t,e){t.setOptions(e)},position(t,e){t.setPosition(e)},zIndex(t,e){t.setZIndex(e)}};class at extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=null,this.state={infoWindow:null},this.open=(t,e)=>{e?t.open(this.context,e):t.getPosition()?t.open(this.context):o(!1,"You must provide either an anchor (typically render it inside a <Marker>) or a position props for <InfoWindow>.")},this.setInfoWindowCallback=()=>{null!==this.state.infoWindow&&null!==this.containerElement&&(this.state.infoWindow.setContent(this.containerElement),this.open(this.state.infoWindow,this.props.anchor),this.props.onLoad&&this.props.onLoad(this.state.infoWindow))}}componentDidMount(){const t=new google.maps.InfoWindow(Object.assign({},this.props.options||{}));this.containerElement=document.createElement("div"),this.registeredEvents=c({updaterMap:rt,eventMap:ot,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{infoWindow:t}}),this.setInfoWindowCallback)}componentDidUpdate(t){null!==this.state.infoWindow&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:rt,eventMap:ot,prevProps:t,nextProps:this.props,instance:this.state.infoWindow}))}componentWillUnmount(){null!==this.state.infoWindow&&(l(this.registeredEvents),this.state.infoWindow.close())}render(){return this.containerElement?i.createPortal(n.Children.only(this.props.children),this.containerElement):n.createElement(n.Fragment,null)}}at.contextType=r;const pt={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},ht={draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},path(t,e){t.setPath(e)},visible(t,e){t.setVisible(e)}};class lt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={polyline:null},this.setPolylineCallback=()=>{null!==this.state.polyline&&this.props.onLoad&&this.props.onLoad(this.state.polyline)}}componentDidMount(){const t=new google.maps.Polyline(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=c({updaterMap:ht,eventMap:pt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{polyline:t}}),this.setPolylineCallback)}componentDidUpdate(t){null!==this.state.polyline&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:ht,eventMap:pt,prevProps:t,nextProps:this.props,instance:this.state.polyline}))}componentWillUnmount(){null!==this.state.polyline&&(this.props.onUnmount&&this.props.onUnmount(this.state.polyline),l(this.registeredEvents),this.state.polyline.setMap(null))}render(){return n.createElement(n.Fragment,null)}}lt.contextType=r;const ct={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},ut={draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},path(t,e){t.setPath(e)},paths(t,e){t.setPaths(e)},visible(t,e){t.setVisible(e)}};class dt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={polygon:null},this.setPolygonCallback=()=>{null!==this.state.polygon&&this.props.onLoad&&this.props.onLoad(this.state.polygon)}}componentDidMount(){const t=new google.maps.Polygon(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=c({updaterMap:ut,eventMap:ct,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{polygon:t}}),this.setPolygonCallback)}componentDidUpdate(t){null!==this.state.polygon&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:ut,eventMap:ct,prevProps:t,nextProps:this.props,instance:this.state.polygon}))}componentWillUnmount(){null!==this.state.polygon&&(this.props.onUnmount&&this.props.onUnmount(this.state.polygon),l(this.registeredEvents),this.state.polygon&&this.state.polygon.setMap(null))}render(){return null}}dt.contextType=r;const gt={onBoundsChanged:"bounds_changed",onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"}
1,mt={bounds(t,e){t.setBounds(e)},draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},visible(t,e){t.setVisible(e)}};class ft extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={rectangle:null},this.setRectangleCallback=()=>{null!==this.state.rectangle&&this.props.onLoad&&this.props.onLoad(this.state.rectangle)}}componentDidMount(){const t=new google.maps.Rectangle(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=c({updaterMap:mt,eventMap:gt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{rectangle:t}}),this.setRectangleCallback)}componentDidUpdate(t){null!==this.state.rectangle&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:mt,eventMap:gt,prevProps:t,nextProps:this.props,instance:this.state.rectangle}))}componentWillUnmount(){null!==this.state.rectangle&&(this.props.onUnmount&&this.props.onUnmount(this.state.rectangle),l(this.registeredEvents),this.state.rectangle.setMap(null))}render(){return n.createElement(n.Fragment,null)}}ft.contextType=r;const vt={onCenterChanged:"center_changed",onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRadiusChanged:"radius_changed",onRightClick:"rightclick"},yt={center(t,e){t.setCenter(e)},draggable(t,e){t.setDraggable(e)},editable(t,e){t.setEditable(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},radius(t,e){t.setRadius(e)},visible(t,e){t.setVisible(e)}};class xt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={circle:null},this.setCircleCallback=()=>{null!==this.state.circle&&this.props.onLoad&&this.props.onLoad(this.state.circle)}}componentDidMount(){const t=new google.maps.Circle(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=c({updaterMap:yt,eventMap:vt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{circle:t}}),this.setCircleCallback)}componentDidUpdate(t){null!==this.state.circle&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:yt,eventMap:vt,prevProps:t,nextProps:this.props,instance:this.state.circle}))}componentWillUnmount(){null!==this.state.circle&&(this.props.onUnmount&&this.props.onUnmount(this.state.circle),l(this.registeredEvents),this.state.circle&&this.state.circle.setMap(null))}render(){return n.createElement(n.Fragment,null)}}xt.contextType=r;const Ct={onAddFeature:"addfeature",onClick:"click",onDblClick:"dblclick",onMouseDown:"mousedown",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRemoveFeature:"removefeature",onRemoveProperty:"removeproperty",onRightClick:"rightclick",onSetGeometry:"setgeometry",onSetProperty:"setproperty"},Mt={add(t,e){t.add(e)},addgeojson(t,e,s){t.addGeoJson(e,s)},contains(t,e){t.contains(e)},foreach(t,e){t.forEach(e)},loadgeojson(t,e,s,n){t.loadGeoJson(e,s,n)},overridestyle(t,e,s){t.overrideStyle(e,s)},remove(t,e){t.remove(e)},revertstyle(t,e){t.revertStyle(e)},controlposition(t,e){t.setControlPosition(e)},controls(t,e){t.setControls(e)},drawingmode(t,e){t.setDrawingMode(e)},map(t,e){t.setMap(e)},style(t,e){t.setStyle(e)},togeojson(t,e){t.toGeoJson(e)}};class bt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={data:null},this.setDataCallback=()=>{null!==this.state.data&&this.props.onLoad&&this.props.onLoad(this.state.data)}}componentDidMount(){const t=new google.maps.Data(Object.assign(Object.assign({},this.props.options||{}),{map:this.context}));this.registeredEvents=c({updaterMap:Mt,eventMap:Ct,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{data:t}}),this.setDataCallback)}componentDidUpdate(t){null!==this.state.data&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:Mt,eventMap:Ct,prevProps:t,nextProps:this.props,instance:this.state.data}))}componentWillUnmount(){null!==this.state.data&&(this.props.onUnmount&&this.props.onUnmount(this.state.data),l(this.registeredEvents),this.state.data&&this.state.data.setMap(null))}render(){return null}}bt.contextType=r;const Lt={onClick:"click",onDefaultViewportChanged:"defaultviewport_changed",onStatusChanged:"status_changed"},wt={options(t,e){t.setOptions(e)},url(t,e){t.setUrl(e)},zIndex(t,e){t.setZIndex(e)}};class Pt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={kmlLayer:null},this.setKmlLayerCallback=()=>{null!==this.state.kmlLayer&&this.props.onLoad&&this.props.onLoad(this.state.kmlLayer)}}componentDidMount(){const t=new google.maps.KmlLayer(Object.assign(Object.assign({},this.props.options),{map:this.context}));this.registeredEvents=c({updaterMap:wt,eventMap:Lt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{kmlLayer:t}}),this.setKmlLayerCallback)}componentDidUpdate(t){null!==this.state.kmlLayer&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:wt,eventMap:Lt,prevProps:t,nextProps:this.props,instance:this.state.kmlLayer}))}componentWillUnmount(){null!==this.state.kmlLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.kmlLayer),l(this.registeredEvents),this.state.kmlLayer.setMap(null))}render(){return null}}Pt.contextType=r;
1const kt=(t,e)=>new e(t.lat,t.lng),Et=(t,e)=>new e(new google.maps.LatLng(t.ne.lat,t.ne.lng),new google.maps.LatLng(t.sw.lat,t.sw.lng)),St=(t,e,s)=>t instanceof e?t:s(t,e);function _t(t){if(!t)return"";return(t instanceof google.maps.LatLng?t:new google.maps.LatLng(t.lat,t.lng))+""}function It(t){if(!t)return"";return(t instanceof google.maps.LatLngBounds?t:new google.maps.LatLngBounds(new google.maps.LatLng(t.south,t.east),new google.maps.LatLng(t.north,t.west)))+""}class Dt extends n.PureComponent{constructor(t){super(t),this.state={paneEl:null,containerStyle:{position:"absolute"}},this.updatePane=()=>{const t=this.props.mapPaneName,e=this.overlayView.getPanes();o(!!t,"OverlayView requires props.mapPaneName but got %s",t),e?this.setState({paneEl:e[t]}):this.setState({paneEl:null})},this.onAdd=()=>{var t,e;this.updatePane(),null===(e=(t=this.props).onLoad)||void 0===e||e.call(t,this.overlayView)},this.onPositionElement=()=>{var t,e;const s=((t,e,s,n)=>void 0!==s?((t,e,s)=>{const n=t&&t.fromLatLngToDivPixel(s.getNorthEast()),i=t&&t.fromLatLngToDivPixel(s.getSouthWest
1());return n&&i?{left:`${i.x+e.x}px`,top:`${n.y+e.y}px`,width:n.x-i.x-e.x+"px",height:i.y-n.y-e.y+"px"}:{left:"-9999px",top:"-9999px"}})(t,e,St(s,google.maps.LatLngBounds,Et)):((t,e,s)=>{const n=t&&t.fromLatLngToDivPixel(s);if(n){const{x:t,y:s}=n;return{left:`${t+e.x}px`,top:`${s+e.y}px`}}return{left:"-9999px",top:"-9999px"}})(t,e,St(n,google.maps.LatLng,kt)))(this.overlayView.getProjection(),Object.assign({x:0,y:0},this.containerRef.current?(t=this.containerRef.current,"function"===typeof(e=this.props.getPixelPositionOffset)?e(t.offsetWidth,t.offsetHeight):{}):{}),this.props.bounds,this.props.position),{left:n,top:i,width:o,height:r}=this.state.containerStyle;var a,p;p={left:n,top:i,width:o,height:r},((a=s).left!==p.left||a.top!==p.top||a.width!==p.height||a.height!==p.height)&&this.setState({containerStyle:Object.assign(Object.assign({},s),{position:"absolute"})})},this.draw=()=>{this.onPositionElement()},this.onRemove=()=>{var t,e;this.setState((()=>({paneEl:null}))),null===(e=(t=this.props).onUnmount)||void 0===e||e.call(t,this.overlayView)},this.containerRef=n.createRef();const e=new google.maps.OverlayView;e.onAdd=this.onAdd,e.draw=this.draw,e.onRemove=this.onRemove,this.overlayView=e}componentDidMount(){this.overlayView.setMap(this.context)}componentDidUpdate(t){const e=_t(t.position),s=_t(this.props.position),n=It(t.bounds),i=It(this.props.bounds);e===s&&n===i||this.overlayView.draw(),t.mapPaneName!==this.props.mapPaneName&&this.updatePane()}componentWillUnmount(){this.overlayView.setMap(null)}render(){const t=this.state.paneEl;return t?i.createPortal(n.createElement("div",{ref:this.containerRef,style:this.state.containerStyle},n.Children.only(this.props.children)),t):null}}Dt.FLOAT_PANE="floatPane",Dt.MAP_PANE="mapPane",Dt.MARKER_LAYER="markerLayer",Dt.OVERLAY_LAYER="overlayLayer",Dt.OVERLAY_MOUSE_TARGET="overlayMouseTarget",Dt.contextType=r;const Ot={onDblClick:"dblclick",onClick:"click"},Tt={opacity(t,e){t.setOpacity(e)}};class Bt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={groundOverlay:null},this.setGroundOverlayCallback=()=>{null!==this.state.groundOverlay&&this.props.onLoad&&this.props.onLoad(this.state.groundOverlay)}}componentDidMount(){o(!!this.props.url||!!this.props.bounds,"For GroundOverlay, url and bounds are passed in to constructor and are immutable after instantiated. This is the behavior of Google Maps JavaScript API v3 ( See https://developers.google.com/maps/documentation/javascript/reference#GroundOverlay) Hence, use the corresponding two props provided by `react-google-maps-api`, url and bounds. In some cases, you'll need the GroundOverlay component to reflect the changes of url and bounds. You can leverage the React's key property to remount the component. Typically, just `key={url}` would serve your need. See https://github.com/tomchentw/react-google-maps/issues/655");const t=new google.maps.GroundOverlay(this.props.url,this.props.bounds,Object.assign(Object.assign({},this.props.options),{map:this.context}));this.registeredEvents=c({updaterMap:Tt,eventMap:Ot,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{groundOverlay:t}}),this.setGroundOverlayCallback)}componentDidUpdate(t){null!==this.state.groundOverlay&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:Tt,eventMap:Ot,prevProps:t,nextProps:this.props,instance:this.state.groundOverlay}))}componentWillUnmount(){this.state.groundOverlay&&(this.props.onUnmount&&this.props.onUnmount(this.state.groundOverlay),this.state.groundOverlay.setMap(null))}render(){return null}}Bt.defaultProps={onLoad:function(){}},Bt.contextType=r;const Ut={},zt={data(t,e){t.setData(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)}};class Rt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={heatmapLayer:null},this.setHeatmapLayerCallback=()=>{null!==this.state.heatmapLayer&&this.props.onLoad&&this.props.onLoad(this.state.heatmapLayer)}}componentDidMount(){o(!!google.maps.visualization,'Did you include prop libraries={["visualization"]} to <LoadScript />? %s',google.maps.visualization),o(!!this.props.data,"data property is required in HeatmapLayer %s",this.props.data);const t=new google.maps.visualization.HeatmapLayer(Object.assign(Object.assign({},this.props.options||{}),{data:this.props.data,map:this.context}));this.registeredEvents=c({updaterMap:zt,eventMap:Ut,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{heatmapLayer:t}}),this.setHeatmapLayerCallback)}componentDidUpdate(t){l(this.registeredEvents),this.registeredEvents=c({updaterMap:zt,eventMap:Ut,prevProps:t,nextProps:this.props,instance:this.state.heatmapLayer})}componentWillUnmount(){null!==this.state.heatmapLayer&&(this.props.onUnmount&&this.props.onUnmount(this.state.heatmapLayer),l(this.registeredEvents),this.state.heatmapLayer.setMap(null))}render(){return null}}Rt.contextType=r;const At={onCloseClick:"closeclick",onPanoChanged:"pano_changed",onPositionChanged:"position_changed",onPovChanged:"pov_changed",onResize:"resize",onStatusChanged:"status_changed",onVisibleChanged:"visible_changed",onZoomChanged:"zoom_changed"}
1,Wt={register(t,e,s){t.registerPanoProvider(e,s)},links(t,e){t.setLinks(e)},motionTracking(t,e){t.setMotionTracking(e)},options(t,e){t.setOptions(e)},pano(t,e){t.setPano(e)},position(t,e){t.setPosition(e)},pov(t,e){t.setPov(e)},visible(t,e){t.setVisible(e)},zoom(t,e){t.setZoom(e)}};class Vt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={streetViewPanorama:null},this.setStreetViewPanoramaCallback=()=>{null!==this.state.streetViewPanorama&&this.props.onLoad&&this.props.onLoad(this.state.streetViewPanorama)}}componentDidMount(){const t=this.context.getStreetView();this.registeredEvents=c({updaterMap:Wt,eventMap:At,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{streetViewPanorama:t}}),this.setStreetViewPanoramaCallback)}componentDidUpdate(t){null!==this.state.streetViewPanorama&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:Wt,eventMap:At,prevProps:t,nextProps:this.props,instance:this.state.streetViewPanorama}))}componentWillUnmount(){null!==this.state.streetViewPanorama&&(this.props.onUnmount&&this.props.onUnmount(this.state.streetViewPanorama),l(this.registeredEvents),this.state.streetViewPanorama.setVisible(!1))}render(){return null}}Vt.contextType=r;class jt extends n.PureComponent{constructor(){super(...arguments),this.state={streetViewService:null},this.setStreetViewServiceCallback=()=>{null!==this.state.streetViewService&&this.props.onLoad&&this.props.onLoad(this.state.streetViewService)}}componentDidMount(){const t=new google.maps.StreetViewService;this.setState((function(){return{streetViewService:t}}),this.setStreetViewServiceCallback)}componentWillUnmount(){null!==this.state.streetViewService&&this.props.onUnmount&&this.props.onUnmount(this.state.streetViewService)}render(){return null}}jt.contextType=r;
1n.PureComponent;const Nt={onDirectionsChanged:"directions_changed"},Zt={directions(t,e){t.setDirections(e)},map(t,e){t.setMap(e)},options(t,e){t.setOptions(e)},panel(t,e){t.setPanel(e)},routeIndex(t,e){t.setRouteIndex(e)}};class Ht extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.state={directionsRenderer:null},this.setDirectionsRendererCallback=()=>{null!==this.state.directionsRenderer&&(this.state.directionsRenderer.setMap(this.context),this.props.onLoad&&this.props.onLoad(this.state.directionsRenderer))}}componentDidMount(){const t=new google.maps.DirectionsRenderer(this.props.options);this.registeredEvents=c({updaterMap:Zt,eventMap:Nt,prevProps:{},nextProps:this.props,instance:t}),this.setState((function(){return{directionsRenderer:t}}),this.setDirectionsRendererCallback)}componentDidUpdate(t){null!==this.state.directionsRenderer&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:Zt,eventMap:Nt,prevProps:t,nextProps:this.props,instance:this.state.directionsRenderer}))}componentWillUnmount(){null!==this.state.directionsRenderer&&(this.props.onUnmount&&this.props.onUnmount(this.state.directionsRenderer),l(this.registeredEvents),this.state.directionsRenderer&&this.state.directionsRenderer.setMap(null))}render(){return n.createElement(n.Fragment,null)}}Ht.contextType=r;
1n.PureComponent;const Ft={onPlacesChanged:"places_changed"},qt={bounds(t,e){t.setBounds(e)}};class Gt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=n.createRef(),this.state={searchBox:null},this.setSearchBoxCallback=()=>{null!==this.state.searchBox&&this.props.onLoad&&this.props.onLoad(this.state.searchBox)}}componentDidMount(){if(o(!!google.maps.places,'You need to provide libraries={["places"]} prop to <LoadScript /> component %s',google.maps.places),null!==this.containerElement&&null!==this.containerElement.current){const t=this.containerElement.current.querySelector("input");if(null!==t){const e=new google.maps.places.SearchBox(t,this.props.options);this.registeredEvents=c({updaterMap:qt,eventMap:Ft,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{searchBox:e}}),this.setSearchBoxCallback)}}}componentDidUpdate(t){null!==this.state.searchBox&&(l(this.registeredEvents),this.registeredEvents=c({updaterMap:qt,eventMap:Ft,prevProps:t,nextProps:this.props,instance:this.state.searchBox}))}componentWillUnmount(){null!==this.state.searchBox&&(this.props.onUnmount&&this.props.onUnmount(this.state.searchBox),l(this.registeredEvents))}render(){return n.createElement("div",{ref:this.containerElement},n.Children.only(this.props.children))}}Gt.contextType=r;const $t={onPlaceChanged:"place_changed"},Yt={bounds(t,e){t.setBounds(e)},restrictions(t,e){t.setComponentRestrictions(e)},fields(t,e){t.setFields(e)},options(t,e){t.setOptions(e)},types(t,e){t.setTypes(e)}};class Kt extends n.PureComponent{constructor(){super(...arguments),this.registeredEvents=[],this.containerElement=n.createRef(),this.state={autocomplete:null},this.setAutocompleteCallback=()=>{null!==this.state.autocomplete&&this.props.onLoad&&this.props.onLoad(this.state.autocomplete)}}componentDidMount(){o(!!google.maps.places,'You need to provide libraries={["places"]} prop to <LoadScript /> component %s',google.maps.places);const t=this.containerElement.current.querySelector("input");if(t){const e=new google.maps.places.Autocomplete(t,this.props.options);this.registeredEvents=c({updaterMap:Yt,eventMap:$t,prevProps:{},nextProps:this.props,instance:e}),this.setState((function(){return{autocomplete:e}}),this.setAutocompleteCallback)}}componentDidUpdate(t){l(this.registeredEvents),this.registeredEvents=c({updaterMap:Yt,eventMap:$t,prevProps:t,nextProps:this.props,instance:this.state.autocomplete})}componentWillUnmount(){null!==this.state.autocomplete&&l(this.registeredEvents)}render(){return n.createElement("div",{ref:this.containerElement,className:this.props.className||""},n.Children.only(this.props.children))}}Kt.contextType=r}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.