<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1910],{91964:function(e,t,s){let n;s.d(t,{Cd:function(){return tb},Ji:function(){return F},Jx:function(){return ep},Zk:function(){return t3},b6:function(){return O}});var o,i,r,a,l,u,p,c,h,d,g=s(57437),m=s(2265),v=s(54887);function f(e){return(f="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&amp;&amp;"function"==typeof Symbol&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?"symbol":typeof e})(e)}function y(e,t,s){var n;return(n=function(e,t){if("object"!=f(e)||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,t||"default");if("object"!=f(n))return n;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"),(t="symbol"==f(n)?n:n+"")in e)?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}function L(e){return e&amp;&amp;e.__esModule&amp;&amp;Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var b=L(l?a:(l=1,a=function(e,t,s,n,o,i,r,a){if(!e){var l;if(void 0===t)l=Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[s,n,o,i,r,a],p=0;(l=Error(t.replace(/%s/g,function(){return u[p++]}))).name="Invariant Violation"}throw l.framesToPop=1,l}})),E=(0,m.createContext)(null);function w(e){google.maps.event.removeListener(e)}function C(){var e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:[];e.forEach(w)}function x(e){var t,s,n,{updaterMap:o,eventMap:i,prevProps:r,nextProps:a,instance:l}=e,u=(t=function(e,t,s){return"function"==typeof a[s]&amp;&amp;e.push(google.maps.event.addListener(l,t,a[s])),e},s=[],Object.keys(i).reduce(function(e,s){return t(e,i[s],s)},s));return n={},function(e,t){Object.keys(e).forEach(s=&gt;t(e[s],s))}(o,(e,t)=&gt;{var s=a[t];s!==r[t]&amp;&amp;(n[t]=s,e(l,s))}),u}var M={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"},k={extraMapTypes(e,t){t.forEach(function(t,s){e.mapTypes.set(String(s),t)})},center(e,t){e.setCenter(t)},clickableIcons(e,t){e.setClickableIcons(t)},heading(e,t){e.setHeading(t)},mapTypeId(e,t){e.setMapTypeId(t)},options(e,t){e.setOptions(t)},streetView(e,t){e.setStreetView(t)},tilt(e,t){e.setTilt(t)},zoom(e,t){e.setZoom(t)}};(0,m.memo)(function(e){var{children:t,options:s,id:n,mapContainerStyle:o,mapContainerClassName:i,center:r,onClick:a,onDblClick:l,onDrag:u,onDragEnd:p,onDragStart:c,onMouseMove:h,onMouseOut:d,onMouseOver:v,onMouseDown:f,onMouseUp:y,onRightClick:L,onCenterChanged:b,onLoad:w,onUnmount:C}=e,[x,M]=(0,m.useState)(null),k=(0,m.useRef)(null),[O,P]=(0,m.useState)(null),[S,j]=(0,m.useState)(null),[I,D]=(0,m.useState)(null),[_,B]=(0,m.useState)(null),[T,R]=(0,m.useState)(null),[z,A]=(0,m.useState)(null),[U,Z]=(0,m.useState)(null),[V,W]=(0,m.useState)(null),[N,H]=(0,m.useState)(null),[G,F]=(0,m.useState)(null),[Y,K]=(0,m.useState)(null),[q,J]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{s&amp;&amp;null!==x&amp;&amp;x.setOptions(s)},[x,s]),(0,m.useEffect)(()=&gt;{null!==x&amp;&amp;void 0!==r&amp;&amp;x.setCenter(r)},[x,r]),(0,m.useEffect)(()=&gt;{x&amp;&amp;l&amp;&amp;(null!==S&amp;&amp;google.maps.event.removeListener(S),j(google.maps.event.addListener(x,"dblclick",l)))},[l]),(0,m.useEffect)(()=&gt;{x&amp;&amp;p&amp;&amp;(null!==I&amp;&amp;google.maps.event.removeListener(I),D(google.maps.event.addListener(x,"dragend",p)))},[p]),(0,m.useEffect)(()=&gt;{x&amp;&amp;c&amp;&amp;(null!==_&amp;&amp;google.maps.event.removeListener(_),B(google.maps.event.addListener(x,"dragstart",c)))},[c]),(0,m.useEffect)(()=&gt;{x&amp;&amp;f&amp;&amp;(null!==T&amp;&amp;google.maps.event.removeListener(T),R(google.maps.event.addListener(x,"mousedown",f)))},[f]),(0,m.useEffect)(()=&gt;{x&amp;&amp;h&amp;&amp;(null!==z&amp;&amp;google.maps.event.removeListener(z),A(google.maps.event.addListener(x,"mousemove",h)))},[h]),(0,m.useEffect)(()=&gt;{x&amp;&amp;d&amp;&amp;(null!==U&amp;&amp;google.maps.event.removeListener(U),Z(google.maps.event.addListener(x,"mouseout",d)))},[d]),(0,m.useEffect)(()=&gt;{x&amp;&amp;v&amp;&amp;(null!==V&amp;&amp;google.maps.event.removeListener(V),W(google.maps.event.addListener(x,"mouseover",v)))},[v]),(0,m.useEffect)(()=&gt;{x&amp;&amp;y&amp;&amp;(null!==N&amp;&amp;google.maps.event.removeListener(N),H(google.maps.event.addListener(x,"mouseup",y)))},[y]),(0,m.useEffect)(()=&gt;{x&amp;&amp;L&amp;&amp;(null!==G&amp;&amp;google.maps.event.removeListener(G),F(google.maps.event.addListener(x,"rightclick",L)))},[L]),(0,m.useEffect)(()=&gt;{x&amp;&amp;a&amp;&amp;(null!==Y&amp;&amp;google.maps.event.removeListener(Y),K(google.maps.event.addListener(x,"click",a)))},[a]),(0,m.useEffect)(()=&gt;{x&amp;&amp;u&amp;&amp;(null!==q&amp;&amp;google.maps.event.removeListener(q),J(google.maps.event.addListener(x,"drag",u)))},[u]),(0,m.useEffect)(()=&gt;{x&amp;&amp;b&amp;&amp;(null!==O&amp;&amp;google.maps.event.removeListener(O),P(google.maps.event.addListener(x,"center_changed",b)))},[a]),(0,m.useEffect)(()=&gt;{var e=null===k.current?null:new google.maps.Map(k.current,s);return M(e),null!==e&amp;&amp;w&amp;&amp;w(e),()=&gt;{null!==e&amp;&amp;C&amp;&amp;C(e)}},[]),(0,g.jsx)("div",{id:n,ref:k,style:o,className:i,children:(0,g.jsx)(E.Provider,{value:x,children:null!==x?t:null})})});class O extends m.PureComponent{constructor(){super(...arguments),y(this,"state",{map:null}),y(this,"registeredEvents",[]),y(this,"mapRef",null),y(this,"getInstance",()=&gt;null===this.mapRef?null:new google.maps.Map(this.mapRef,this.props.options)),y(this,"panTo",e=&gt;{var t=this.getInstance();t&amp;&amp;t.panTo(e)}),y(this,"setMapCallback",()=&gt;{null!==this.state.map&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.map)}),y(this,"getRef",e=&gt;{this.mapRef=e})}componentDidMount(){var e=this.getInstance();this.registeredEvents=x({updaterMap:k,eventMap:M,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{map:e}},this.setMapCallback)}componentDidUpdate(e){null!==this.state.map&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:k,eventMap:M,prevProps:e,nextProps:this.props,instance:this.state.map}))}componentWillUnmount(){null!==this.state.map&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.map),C(this.registeredEvents))}render(){return(0,g.jsx)("div",{id:this.props.id,ref:this.getRef,style:this.props.mapContainerStyle,className:this.props.mapContainerClassName,children:(0,g.jsx)(E.Provider,{value:this.state.map,children:null!==this.state.map?this.props.children:null})})}}function P(e,t,s,n,o,i,r){try{var a=e[i](r),l=a.value}catch(e){return void s(e)}a.done?t(l):Promise.resolve(l).then(n,o)}function S(e){return function(){var t=this,s=arguments;return new Promise(function(n,o){var i=e.apply(t,s);function r(e){P(i,n,o,r,a,"next",e)}function a(e){P(i,n,o,r,a,"throw",e)}r(void 0)})}}function j(e){var{googleMapsApiKey:t,googleMapsClientId:s,version:n="weekly",language:o,region:i,libraries:r,channel:a,mapIds:l,authReferrerPolicy:u}=e,p=[];return b(t&amp;&amp;s||!(t&amp;&amp;s),"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?p.push("key=".concat(t)):s&amp;&amp;p.push("client=".concat(s)),n&amp;&amp;p.push("v=".concat(n)),o&amp;&amp;p.push("language=".concat(o)),i&amp;&amp;p.push("region=".concat(i)),r&amp;&amp;r.length&amp;&amp;p.push("libraries=".concat(r.sort().join(","))),a&amp;&amp;p.push("channel=".concat(a)),l&amp;&amp;l.length&amp;&amp;p.push("map_ids=".concat(l.join(","))),u&amp;&amp;p.push("auth_referrer_policy=".concat(u)),p.push("loading=async"),p.push("callback=initMap"),"https://maps.googleapis.com/maps/api/js?".concat(p.join("&amp;"))}var I="undefined"!=typeof document;function D(e){var{url:t,id:s,nonce:n}=e;return I?new Promise(function(e,o){var i=document.getElementById(s),r=window;if(i){var a=i.getAttribute("data-state");if(i.src===t&amp;&amp;"error"!==a){if("ready"===a)return e(s);var l=r.initMap,u=i.onerror;return r.initMap=function(){l&amp;&amp;l(),e(s)},void(i.onerror=function(e){u&amp;&amp;u(e),o(e)})}i.remove()}var p=document.createElement("script");p.type="text/javascript",p.src=t,p.id=s,p.async=!0,p.nonce=n||"",p.onerror=function(e){p.setAttribute("data-state","error"),o(e)},r.initMap=function(){p.setAttribute("data-state","ready"),e(s)},document.head.appendChild(p)}).catch(e=&gt;{throw console.error("injectScript error: ",e),e}):Promise.reject(Error("document is undefined"))}function _(e){var t=e.href;return!!t&amp;&amp;(0===t.indexOf("https://fonts.googleapis.com/css?family=Roboto")||0===t.indexOf("https://fonts.googleapis.com/css?family=Google+Sans+Text"))||("style"===e.tagName.toLowerCase()&amp;&amp;e.styleSheet&amp;&amp;e.styleSheet.cssText&amp;&amp;0===e.styleSheet.cssText.replace("\r\n","").indexOf(".gm-style")?(e.styleSheet.cssText="",!0):"style"===e.tagName.toLowerCase()&amp;&amp;e.innerHTML&amp;&amp;0===e.innerHTML.replace("\r\n","").indexOf(".gm-style")?(e.innerHTML="",!0):"style"===e.tagName.toLowerCase()&amp;&amp;!e.styleSheet&amp;&amp;!e.innerHTML)}function B(){var e=document.getElementsByTagName("head")[0];if(e){var t=e.insertBefore.bind(e);e.insertBefore=function(s,n){return _(s)||Reflect.apply(t,e,[s,n]),s};var s=e.appendChild.bind(e);e.appendChild=function(t){return _(t)||Reflect.apply(s,e,[t]),t}}}var T=!1;function R(){return(0,g.jsx)("div",{children:"Loading..."})}var z={id:"script-loader",version:"weekly"};class A extends m.PureComponent{constructor(){super(...arguments),y(this,"check",(0,m.createRef)()),y(this,"state",{loaded:!1}),y(this,"cleanupCallback",()=&gt;{delete window.google.maps,this.injectScript()}),y(this,"isCleaningUp",S(function*(){return new Promise(function(e){if(T){if(I)var t=window.setInterval(function(){T||(window.clearInterval(t),e())},1)}else e()})})),y(this,"cleanup",()=&gt;{T=!0;var e=document.getElementById(this.props.id);e&amp;&amp;e.parentNode&amp;&amp;e.parentNode.removeChild(e),Array.prototype.slice.call(document.getElementsByTagName("script")).filter(function(e){return"string"==typeof e.src&amp;&amp;e.src.includes("maps.googleapis")}).forEach(function(e){e.parentNode&amp;&amp;e.parentNode.removeChild(e)}),Array.prototype.slice.call(document.getElementsByTagName("link")).filter(function(e){return"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Google+Sans"===e.href}).forEach(function(e){e.parentNode&amp;&amp;e.parentNode.removeChild(e)}),Array.prototype.slice.call(document.getElementsByTagName("style")).filter(function(e){return void 0!==e.innerText&amp;&amp;e.innerText.length&gt;0&amp;&amp;e.innerText.includes(".gm-")}).forEach(function(e){e.parentNode&amp;&amp;e.parentNode.removeChild(e)})}),y(this,"injectScript",()=&gt;{this.props.preventGoogleFontsLoading&amp;&amp;B(),b(!!this.props.id,'LoadScript requires "id" prop to be a string: %s',this.props.id),D({id:this.props.id,nonce:this.props.nonce,url:j(this.props)}).then(()=&gt;{this.props.onLoad&amp;&amp;this.props.onLoad(),this.setState(function(){return{loaded:!0}})}).catch(e=&gt;{this.props.onError&amp;&amp;this.props.onError(e),console.error("\n          There has been an Error with loading Google Maps API script, please check that you provided correct google API key (".concat(this.props.googleMapsApiKey||"-",") or Client ID (").concat(this.props.googleMapsClientId||"-",") to &lt;LoadScript /&gt;\n          Otherwise it is a Network issue.\n        "))})})}componentDidMount(){if(I){if(window.google&amp;&amp;window.google.maps&amp;&amp;!T){console.error("google api is already presented");return}this.isCleaningUp().then(this.injectScript).catch(function(e){console.error("Error at injecting script after cleaning up: ",e)})}}componentDidUpdate(e){this.props.libraries!==e.libraries&amp;&amp;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"),I&amp;&amp;e.language!==this.props.language&amp;&amp;(this.cleanup(),this.setState(function(){return{loaded:!1}},this.cleanupCallback))}componentWillUnmount(){I&amp;&amp;(this.cleanup(),window.setTimeout(()=&gt;{this.check.current||(delete window.google,T=!1)},1),this.props.onUnmount&amp;&amp;this.props.onUnmount())}render(){return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("div",{ref:this.check}),this.state.loaded?this.props.children:this.props.loadingElement||(0,g.jsx)(R,{})]})}}function U(e,t){if(null==e)return{};var s,n,o=function(e,t){if(null==e)return{};var s={};for(var n in e)if(({}).hasOwnProperty.call(e,n)){if(t.includes(n))continue;s[n]=e[n]}return s}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n&lt;i.length;n++)s=i[n],t.includes(s)||({}).propertyIsEnumerable.call(e,s)&amp;&amp;(o[s]=e[s])}return o}y(A,"defaultProps",z);var Z=["loadingElement","onLoad","onError","onUnmount","children"],V=(0,g.jsx)(R,{});(0,m.memo)(function(e){var{loadingElement:t,onLoad:s,onError:n,onUnmount:o,children:i}=e,{isLoaded:r,loadError:a}=function(e){var{id:t=z.id,version:s=z.version,nonce:n,googleMapsApiKey:o,googleMapsClientId:i,language:r,region:a,libraries:l,preventGoogleFontsLoading:p,channel:c,mapIds:h,authReferrerPolicy:d}=e,g=(0,m.useRef)(!1),[v,f]=(0,m.useState)(!1),[y,L]=(0,m.useState)(void 0);(0,m.useEffect)(function(){return g.current=!0,()=&gt;{g.current=!1}},[]),(0,m.useEffect)(function(){I&amp;&amp;p&amp;&amp;B()},[p]),(0,m.useEffect)(function(){v&amp;&amp;b(!!window.google,"useLoadScript was marked as loaded, but window.google is not present. Something went wrong.")},[v]);var E=j({version:s,googleMapsApiKey:o,googleMapsClientId:i,language:r,region:a,libraries:l,channel:c,mapIds:h,authReferrerPolicy:d});(0,m.useEffect)(function(){if(I){if(window.google&amp;&amp;window.google.maps&amp;&amp;u===E){e();return}D({id:t,url:E,nonce:n}).then(e).catch(function(e){g.current&amp;&amp;L(e),console.warn("\n        There has been an Error with loading Google Maps API script, please check that you provided correct google API key (".concat(o||"-",") or Client ID (").concat(i||"-",")\n        Otherwise it is a Network issue.\n      ")),console.error(e)})}function e(){g.current&amp;&amp;(f(!0),u=E)}},[t,E,n]);var w=(0,m.useRef)();return(0,m.useEffect)(function(){w.current&amp;&amp;l!==w.current&amp;&amp;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"),w.current=l},[l]),{isLoaded:v,loadError:y,url:E}}(U(e,Z));return(0,m.useEffect)(function(){r&amp;&amp;"function"==typeof s&amp;&amp;s()},[r,s]),(0,m.useEffect)(function(){a&amp;&amp;"function"==typeof n&amp;&amp;n(a)},[a,n]),(0,m.useEffect)(function(){return()=&gt;{o&amp;&amp;o()}},[o]),r?i:t||V}),"function"==typeof SuppressedError&amp;&amp;SuppressedError;var W=(o=function e(t,s){if(t===s)return!0;if(t&amp;&amp;s&amp;&amp;"object"==typeof t&amp;&amp;"object"==typeof s){if(t.constructor!==s.constructor)return!1;if(Array.isArray(t)){if((n=t.length)!=s.length)return!1;for(o=n;0!=o--;)if(!e(t[o],s[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===s.source&amp;&amp;t.flags===s.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===s.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===s.toString();if((n=(i=Object.keys(t)).length)!==Object.keys(s).length)return!1;for(o=n;0!=o--;)if(!Object.prototype.hasOwnProperty.call(s,i[o]))return!1;for(o=n;0!=o--;){var n,o,i,r=i[o];if(!e(t[r],s[r]))return!1}return!0}return t!=t&amp;&amp;s!=s}).__esModule&amp;&amp;Object.prototype.hasOwnProperty.call(o,"default")?o.default:o,N="__googleMapsScriptId";(i=p||(p={}))[i.INITIALIZED=0]="INITIALIZED",i[i.LOADING=1]="LOADING",i[i.SUCCESS=2]="SUCCESS",i[i.FAILURE=3]="FAILURE";class H{constructor(e){var{apiKey:t,authReferrerPolicy:s,channel:n,client:o,id:i=N,language:r,libraries:a=[],mapIds:l,nonce:u,region:p,retries:c=3,url:h="https://maps.googleapis.com/maps/api/js",version:d}=e;if(this.callbacks=[],this.done=!1,this.loading=!1,this.errors=[],this.apiKey=t,this.authReferrerPolicy=s,this.channel=n,this.client=o,this.id=i||N,this.language=r,this.libraries=a,this.mapIds=l,this.nonce=u,this.region=p,this.retries=c,this.url=h,this.version=d,H.instance){if(!W(this.options,H.instance.options))throw Error("Loader must not be called again with different options. ".concat(JSON.stringify(this.options)," !== ").concat(JSON.stringify(H.instance.options)));return H.instance}H.instance=this}get options(){return{version:this.version,apiKey:this.apiKey,channel:this.channel,client:this.client,id:this.id,libraries:this.libraries,language:this.language,region:this.region,mapIds:this.mapIds,nonce:this.nonce,url:this.url,authReferrerPolicy:this.authReferrerPolicy}}get status(){return this.errors.length?p.FAILURE:this.done?p.SUCCESS:this.loading?p.LOADING:p.INITIALIZED}get failed(){return this.done&amp;&amp;!this.loading&amp;&amp;this.errors.length&gt;=this.retries+1}createUrl(){var e=this.url;return e+="?callback=__googleMapsCallback&amp;loading=async",this.apiKey&amp;&amp;(e+="&amp;key=".concat(this.apiKey)),this.channel&amp;&amp;(e+="&amp;channel=".concat(this.channel)),this.client&amp;&amp;(e+="&amp;client=".concat(this.client)),this.libraries.length&gt;0&amp;&amp;(e+="&amp;libraries=".concat(this.libraries.join(","))),this.language&amp;&amp;(e+="&amp;language=".concat(this.language)),this.region&amp;&amp;(e+="&amp;region=".concat(this.region)),this.version&amp;&amp;(e+="&amp;v=".concat(this.version)),this.mapIds&amp;&amp;(e+="&amp;map_ids=".concat(this.mapIds.join(","))),this.authReferrerPolicy&amp;&amp;(e+="&amp;auth_referrer_policy=".concat(this.authReferrerPolicy)),e}deleteScript(){var e=document.getElementById(this.id);e&amp;&amp;e.remove()}load(){return this.loadPromise()}loadPromise(){return new Promise((e,t)=&gt;{this.loadCallback(s=&gt;{s?t(s.error):e(window.google)})})}importLibrary(e){return this.execute(),google.maps.importLibrary(e)}loadCallback(e){this.callbacks.push(e),this.execute()}setScript(){if(document.getElementById(this.id)){this.callback();return}var e,t,s={key:this.apiKey,channel:this.channel,client:this.client,libraries:this.libraries.length&amp;&amp;this.libraries,v:this.version,mapIds:this.mapIds,language:this.language,region:this.region,authReferrerPolicy:this.authReferrerPolicy};Object.keys(s).forEach(e=&gt;!s[e]&amp;&amp;delete s[e]),(null===(t=null===(e=null==window?void 0:window.google)||void 0===e?void 0:e.maps)||void 0===t?void 0:t.importLibrary)||(e=&gt;{var t,s,n,o="The Google Maps JavaScript API",i="google",r="importLibrary",a="__ib__",l=document,u=window,p=(u=u[i]||(u[i]={})).maps||(u.maps={}),c=new Set,h=new URLSearchParams,d=()=&gt;t||(t=new Promise((r,u)=&gt;{var d,g,m;return d=this,g=void 0,m=function*(){var d;for(n in yield s=l.createElement("script"),s.id=this.id,h.set("libraries",[...c]+""),e)h.set(n.replace(/[A-Z]/g,e=&gt;"_"+e[0].toLowerCase()),e[n]);h.set("callback",i+".maps."+a),s.src=this.url+"?"+h,p[a]=r,s.onerror=()=&gt;t=u(Error(o+" could not load.")),s.nonce=this.nonce||(null===(d=l.querySelector("script[nonce]"))||void 0===d?void 0:d.nonce)||"",l.head.append(s)},new(g||(g=Promise))(function(e,t){function s(e){try{o(m.next(e))}catch(e){t(e)}}function n(e){try{o(m.throw(e))}catch(e){t(e)}}function o(t){var o;t.done?e(t.value):((o=t.value)instanceof g?o:new g(function(e){e(o)})).then(s,n)}o((m=m.apply(d,[])).next())})}));p[r]?console.warn(o+" only loads once. Ignoring:",e):p[r]=function(e){for(var t=arguments.length,s=Array(t&gt;1?t-1:0),n=1;n&lt;t;n++)s[n-1]=arguments[n];return c.add(e)&amp;&amp;d().then(()=&gt;p[r](e,...s))}})(s);var n=this.libraries.map(e=&gt;this.importLibrary(e));n.length||n.push(this.importLibrary("core")),Promise.all(n).then(()=&gt;this.callback(),e=&gt;{var t=new ErrorEvent("error",{error:e});this.loadErrorCallback(t)})}reset(){this.deleteScript(),this.done=!1,this.loading=!1,this.errors=[],this.onerrorEvent=null}resetIfRetryingFailed(){this.failed&amp;&amp;this.reset()}loadErrorCallback(e){if(this.errors.push(e),this.errors.length&lt;=this.retries){var t=this.errors.length*Math.pow(2,this.errors.length);console.error("Failed to load Google Maps script, retrying in ".concat(t," ms.")),setTimeout(()=&gt;{this.deleteScript(),this.setScript()},t)}else this.onerrorEvent=e,this.callback()}callback(){this.done=!0,this.loading=!1,this.callbacks.forEach(e=&gt;{e(this.onerrorEvent)}),this.callbacks=[]}execute(){if(this.resetIfRetryingFailed(),!this.loading){if(this.done)this.callback();else{if(window.google&amp;&amp;window.google.maps&amp;&amp;window.google.maps.version){console.warn("Google Maps already loaded outside @googlemaps/js-api-loader. This may result in undesirable behavior as options and script parameters may not match."),this.callback();return}this.loading=!0,this.setScript()}}}}var G=["maps"];function F(e){var{id:t=z.id,version:s=z.version,nonce:n,googleMapsApiKey:o,language:i,region:r,libraries:a=G,preventGoogleFontsLoading:l,mapIds:u,authReferrerPolicy:p}=e,c=(0,m.useRef)(!1),[h,d]=(0,m.useState)(!1),[g,v]=(0,m.useState)(void 0);(0,m.useEffect)(function(){return c.current=!0,()=&gt;{c.current=!1}},[]);var f=(0,m.useMemo)(()=&gt;new H({id:t,apiKey:o,version:s,libraries:a,language:i||"en",region:r||"US",mapIds:u||[],nonce:n||"",authReferrerPolicy:p||"origin"}),[t,o,s,a,i,r,u,n,p]);(0,m.useEffect)(function(){h||f.load().then(()=&gt;{c.current&amp;&amp;d(!0)}).catch(e=&gt;{v(e)})},[]),(0,m.useEffect)(()=&gt;{I&amp;&amp;l&amp;&amp;B()},[l]);var y=(0,m.useRef)();return(0,m.useEffect)(()=&gt;{y.current&amp;&amp;a!==y.current&amp;&amp;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"),y.current=a},[a]),{isLoaded:h,loadError:g}}function Y(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function K(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):Y(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}var q={},J={options(e,t){e.setOptions(t)}};(0,m.memo)(function(e){var{options:t,onLoad:s,onUnmount:n}=e,o=(0,m.useContext)(E),[i,r]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==i&amp;&amp;i.setMap(o)},[o]),(0,m.useEffect)(()=&gt;{t&amp;&amp;null!==i&amp;&amp;i.setOptions(t)},[i,t]),(0,m.useEffect)(()=&gt;{var e=new google.maps.TrafficLayer(K(K({},t),{},{map:o}));return r(e),s&amp;&amp;s(e),()=&gt;{null!==i&amp;&amp;(n&amp;&amp;n(i),i.setMap(null))}},[]),null});class X extends m.PureComponent{constructor(){super(...arguments),y(this,"state",{trafficLayer:null}),y(this,"setTrafficLayerCallback",()=&gt;{null!==this.state.trafficLayer&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.trafficLayer)}),y(this,"registeredEvents",[])}componentDidMount(){var e=new google.maps.TrafficLayer(K(K({},this.props.options),{},{map:this.context}));this.registeredEvents=x({updaterMap:J,eventMap:q,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{trafficLayer:e}},this.setTrafficLayerCallback)}componentDidUpdate(e){null!==this.state.trafficLayer&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:J,eventMap:q,prevProps:e,nextProps:this.props,instance:this.state.trafficLayer}))}componentWillUnmount(){null!==this.state.trafficLayer&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.trafficLayer),C(this.registeredEvents),this.state.trafficLayer.setMap(null))}render(){return null}}y(X,"contextType",E),(0,m.memo)(function(e){var{onLoad:t,onUnmount:s}=e,n=(0,m.useContext)(E),[o,i]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==o&amp;&amp;o.setMap(n)},[n]),(0,m.useEffect)(()=&gt;{var e=new google.maps.BicyclingLayer;return i(e),e.setMap(n),t&amp;&amp;t(e),()=&gt;{null!==e&amp;&amp;(s&amp;&amp;s(e),e.setMap(null))}},[]),null});class $ extends m.PureComponent{constructor(){super(...arguments),y(this,"state",{bicyclingLayer:null}),y(this,"setBicyclingLayerCallback",()=&gt;{null!==this.state.bicyclingLayer&amp;&amp;(this.state.bicyclingLayer.setMap(this.context),this.props.onLoad&amp;&amp;this.props.onLoad(this.state.bicyclingLayer))})}componentDidMount(){var e=new google.maps.BicyclingLayer;this.setState(()=&gt;({bicyclingLayer:e}),this.setBicyclingLayerCallback)}componentWillUnmount(){null!==this.state.bicyclingLayer&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.bicyclingLayer),this.state.bicyclingLayer.setMap(null))}render(){return null}}y($,"contextType",E),(0,m.memo)(function(e){var{onLoad:t,onUnmount:s}=e,n=(0,m.useContext)(E),[o,i]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==o&amp;&amp;o.setMap(n)},[n]),(0,m.useEffect)(()=&gt;{var e=new google.maps.TransitLayer;return i(e),e.setMap(n),t&amp;&amp;t(e),()=&gt;{null!==o&amp;&amp;(s&amp;&amp;s(o),o.setMap(null))}},[]),null});class Q extends m.PureComponent{constructor(){super(...arguments),y(this,"state",{transitLayer:null}),y(this,"setTransitLayerCallback",()=&gt;{null!==this.state.transitLayer&amp;&amp;(this.state.transitLayer.setMap(this.context),this.props.onLoad&amp;&amp;this.props.onLoad(this.state.transitLayer))})}componentDidMount(){var e=new google.maps.TransitLayer;this.setState(function(){return{transitLayer:e}},this.setTransitLayerCallback)}componentWillUnmount(){null!==this.state.transitLayer&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.transitLayer),this.state.transitLayer.setMap(null))}render(){return null}}function ee(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function et(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?ee(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):ee(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(Q,"contextType",E);var es={onCircleComplete:"circlecomplete",onMarkerComplete:"markercomplete",onOverlayComplete:"overlaycomplete",onPolygonComplete:"polygoncomplete",onPolylineComplete:"polylinecomplete",onRectangleComplete:"rectanglecomplete"},en={drawingMode(e,t){e.setDrawingMode(t)},options(e,t){e.setOptions(t)}};(0,m.memo)(function(e){var{options:t,drawingMode:s,onCircleComplete:n,onMarkerComplete:o,onOverlayComplete:i,onPolygonComplete:r,onPolylineComplete:a,onRectangleComplete:l,onLoad:u,onUnmount:p}=e,c=(0,m.useContext)(E),[h,d]=(0,m.useState)(null),[g,v]=(0,m.useState)(null),[f,y]=(0,m.useState)(null),[L,w]=(0,m.useState)(null),[C,x]=(0,m.useState)(null),[M,k]=(0,m.useState)(null),[O,P]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==h&amp;&amp;h.setMap(c)},[c]),(0,m.useEffect)(()=&gt;{t&amp;&amp;null!==h&amp;&amp;h.setOptions(t)},[h,t]),(0,m.useEffect)(()=&gt;{null!==h&amp;&amp;h.setDrawingMode(null!=s?s:null)},[h,s]),(0,m.useEffect)(()=&gt;{h&amp;&amp;n&amp;&amp;(null!==g&amp;&amp;google.maps.event.removeListener(g),v(google.maps.event.addListener(h,"circlecomplete",n)))},[h,n]),(0,m.useEffect)(()=&gt;{h&amp;&amp;o&amp;&amp;(null!==f&amp;&amp;google.maps.event.removeListener(f),y(google.maps.event.addListener(h,"markercomplete",o)))},[h,o]),(0,m.useEffect)(()=&gt;{h&amp;&amp;i&amp;&amp;(null!==L&amp;&amp;google.maps.event.removeListener(L),w(google.maps.event.addListener(h,"overlaycomplete",i)))},[h,i]),(0,m.useEffect)(()=&gt;{h&amp;&amp;r&amp;&amp;(null!==C&amp;&amp;google.maps.event.removeListener(C),x(google.maps.event.addListener(h,"polygoncomplete",r)))},[h,r]),(0,m.useEffect)(()=&gt;{h&amp;&amp;a&amp;&amp;(null!==M&amp;&amp;google.maps.event.removeListener(M),k(google.maps.event.addListener(h,"polylinecomplete",a)))},[h,a]),(0,m.useEffect)(()=&gt;{h&amp;&amp;l&amp;&amp;(null!==O&amp;&amp;google.maps.event.removeListener(O),P(google.maps.event.addListener(h,"rectanglecomplete",l)))},[h,l]),(0,m.useEffect)(()=&gt;{b(!!google.maps.drawing,"Did you include prop libraries={['drawing']} in the URL? %s",google.maps.drawing);var e=new google.maps.drawing.DrawingManager(et(et({},t),{},{map:c}));return s&amp;&amp;e.setDrawingMode(s),n&amp;&amp;v(google.maps.event.addListener(e,"circlecomplete",n)),o&amp;&amp;y(google.maps.event.addListener(e,"markercomplete",o)),i&amp;&amp;w(google.maps.event.addListener(e,"overlaycomplete",i)),r&amp;&amp;x(google.maps.event.addListener(e,"polygoncomplete",r)),a&amp;&amp;k(google.maps.event.addListener(e,"polylinecomplete",a)),l&amp;&amp;P(google.maps.event.addListener(e,"rectanglecomplete",l)),d(e),u&amp;&amp;u(e),()=&gt;{null!==h&amp;&amp;(g&amp;&amp;google.maps.event.removeListener(g),f&amp;&amp;google.maps.event.removeListener(f),L&amp;&amp;google.maps.event.removeListener(L),C&amp;&amp;google.maps.event.removeListener(C),M&amp;&amp;google.maps.event.removeListener(M),O&amp;&amp;google.maps.event.removeListener(O),p&amp;&amp;p(h),h.setMap(null))}},[]),null});class eo extends m.PureComponent{constructor(e){super(e),y(this,"registeredEvents",[]),y(this,"state",{drawingManager:null}),y(this,"setDrawingManagerCallback",()=&gt;{null!==this.state.drawingManager&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.drawingManager)}),b(!!google.maps.drawing,"Did you include prop libraries={['drawing']} in the URL? %s",google.maps.drawing)}componentDidMount(){var e=new google.maps.drawing.DrawingManager(et(et({},this.props.options),{},{map:this.context}));this.registeredEvents=x({updaterMap:en,eventMap:es,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{drawingManager:e}},this.setDrawingManagerCallback)}componentDidUpdate(e){null!==this.state.drawingManager&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:en,eventMap:es,prevProps:e,nextProps:this.props,instance:this.state.drawingManager}))}componentWillUnmount(){null!==this.state.drawingManager&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.drawingManager),C(this.registeredEvents),this.state.drawingManager.setMap(null))}render(){return null}}function ei(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function er(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?ei(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):ei(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(eo,"contextType",E);var ea={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"},el={animation(e,t){e.setAnimation(t)},clickable(e,t){e.setClickable(t)},cursor(e,t){e.setCursor(t)},draggable(e,t){e.setDraggable(t)},icon(e,t){e.setIcon(t)},label(e,t){e.setLabel(t)},map(e,t){e.setMap(t)},opacity(e,t){e.setOpacity(t)},options(e,t){e.setOptions(t)},position(e,t){e.setPosition(t)},shape(e,t){e.setShape(t)},title(e,t){e.setTitle(t)},visible(e,t){e.setVisible(t)},zIndex(e,t){e.setZIndex(t)}},eu={};(0,m.memo)(function(e){var{position:t,options:s,clusterer:n,noClustererRedraw:o,children:i,draggable:r,visible:a,animation:l,clickable:u,cursor:p,icon:c,label:h,opacity:d,shape:v,title:f,zIndex:y,onClick:L,onDblClick:b,onDrag:w,onDragEnd:C,onDragStart:x,onMouseOut:M,onMouseOver:k,onMouseUp:O,onMouseDown:P,onRightClick:S,onClickableChanged:j,onCursorChanged:I,onAnimationChanged:D,onDraggableChanged:_,onFlatChanged:B,onIconChanged:T,onPositionChanged:R,onShapeChanged:z,onTitleChanged:A,onVisibleChanged:U,onZindexChanged:Z,onLoad:V,onUnmount:W}=e,N=(0,m.useContext)(E),[H,G]=(0,m.useState)(null),[F,Y]=(0,m.useState)(null),[K,q]=(0,m.useState)(null),[J,X]=(0,m.useState)(null),[$,Q]=(0,m.useState)(null),[ee,et]=(0,m.useState)(null),[es,en]=(0,m.useState)(null),[eo,ei]=(0,m.useState)(null),[ea,el]=(0,m.useState)(null),[ep,ec]=(0,m.useState)(null),[eh,ed]=(0,m.useState)(null),[eg,em]=(0,m.useState)(null),[ev,ef]=(0,m.useState)(null),[ey,eL]=(0,m.useState)(null),[eb,eE]=(0,m.useState)(null),[ew,eC]=(0,m.useState)(null),[ex,eM]=(0,m.useState)(null),[ek,eO]=(0,m.useState)(null),[eP,eS]=(0,m.useState)(null),[ej,eI]=(0,m.useState)(null),[eD,e_]=(0,m.useState)(null),[eB,eT]=(0,m.useState)(null);(0,m.useEffect)(()=&gt;{null!==H&amp;&amp;H.setMap(N)},[N]),(0,m.useEffect)(()=&gt;{void 0!==s&amp;&amp;null!==H&amp;&amp;H.setOptions(s)},[H,s]),(0,m.useEffect)(()=&gt;{void 0!==r&amp;&amp;null!==H&amp;&amp;H.setDraggable(r)},[H,r]),(0,m.useEffect)(()=&gt;{t&amp;&amp;null!==H&amp;&amp;H.setPosition(t)},[H,t]),(0,m.useEffect)(()=&gt;{void 0!==a&amp;&amp;null!==H&amp;&amp;H.setVisible(a)},[H,a]),(0,m.useEffect)(()=&gt;{null==H||H.setAnimation(l)},[H,l]),(0,m.useEffect)(()=&gt;{H&amp;&amp;void 0!==u&amp;&amp;H.setClickable(u)},[H,u]),(0,m.useEffect)(()=&gt;{H&amp;&amp;void 0!==p&amp;&amp;H.setCursor(p)},[H,p]),(0,m.useEffect)(()=&gt;{H&amp;&amp;void 0!==c&amp;&amp;H.setIcon(c)},[H,c]),(0,m.useEffect)(()=&gt;{H&amp;&amp;void 0!==h&amp;&amp;H.setLabel(h)},[H,h]),(0,m.useEffect)(()=&gt;{H&amp;&amp;void 0!==d&amp;&amp;H.setOpacity(d)},[H,d]),(0,m.useEffect)(()=&gt;{H&amp;&amp;void 0!==v&amp;&amp;H.setShape(v)},[H,v]),(0,m.useEffect)(()=&gt;{H&amp;&amp;void 0!==f&amp;&amp;H.setTitle(f)},[H,f]),(0,m.useEffect)(()=&gt;{H&amp;&amp;void 0!==y&amp;&amp;H.setZIndex(y)},[H,y]),(0,m.useEffect)(()=&gt;{H&amp;&amp;b&amp;&amp;(null!==F&amp;&amp;google.maps.event.removeListener(F),Y(google.maps.event.addListener(H,"dblclick",b)))},[b]),(0,m.useEffect)(()=&gt;{H&amp;&amp;C&amp;&amp;(null!==K&amp;&amp;google.maps.event.removeListener(K),q(google.maps.event.addListener(H,"dragend",C)))},[C]),(0,m.useEffect)(()=&gt;{H&amp;&amp;x&amp;&amp;(null!==J&amp;&amp;google.maps.event.removeListener(J),X(google.maps.event.addListener(H,"dragstart",x)))},[x]),(0,m.useEffect)(()=&gt;{H&amp;&amp;P&amp;&amp;(null!==$&amp;&amp;google.maps.event.removeListener($),Q(google.maps.event.addListener(H,"mousedown",P)))},[P]),(0,m.useEffect)(()=&gt;{H&amp;&amp;M&amp;&amp;(null!==ee&amp;&amp;google.maps.event.removeListener(ee),et(google.maps.event.addListener(H,"mouseout",M)))},[M]),(0,m.useEffect)(()=&gt;{H&amp;&amp;k&amp;&amp;(null!==es&amp;&amp;google.maps.event.removeListener(es),en(google.maps.event.addListener(H,"mouseover",k)))},[k]),(0,m.useEffect)(()=&gt;{H&amp;&amp;O&amp;&amp;(null!==eo&amp;&amp;google.maps.event.removeListener(eo),ei(google.maps.event.addListener(H,"mouseup",O)))},[O]),(0,m.useEffect)(()=&gt;{H&amp;&amp;S&amp;&amp;(null!==ea&amp;&amp;google.maps.event.removeListener(ea),el(google.maps.event.addListener(H,"rightclick",S)))},[S]),(0,m.useEffect)(()=&gt;{H&amp;&amp;L&amp;&amp;(null!==ep&amp;&amp;google.maps.event.removeListener(ep),ec(google.maps.event.addListener(H,"click",L)))},[L]),(0,m.useEffect)(()=&gt;{H&amp;&amp;w&amp;&amp;(null!==eh&amp;&amp;google.maps.event.removeListener(eh),ed(google.maps.event.addListener(H,"drag",w)))},[w]),(0,m.useEffect)(()=&gt;{H&amp;&amp;j&amp;&amp;(null!==eg&amp;&amp;google.maps.event.removeListener(eg),em(google.maps.event.addListener(H,"clickable_changed",j)))},[j]),(0,m.useEffect)(()=&gt;{H&amp;&amp;I&amp;&amp;(null!==ev&amp;&amp;google.maps.event.removeListener(ev),ef(google.maps.event.addListener(H,"cursor_changed",I)))},[I]),(0,m.useEffect)(()=&gt;{H&amp;&amp;D&amp;&amp;(null!==ey&amp;&amp;google.maps.event.removeListener(ey),eL(google.maps.event.addListener(H,"animation_changed",D)))},[D]),(0,m.useEffect)(()=&gt;{H&amp;&amp;_&amp;&amp;(null!==eb&amp;&amp;google.maps.event.removeListener(eb),eE(google.maps.event.addListener(H,"draggable_changed",_)))},[_]),(0,m.useEffect)(()=&gt;{H&amp;&amp;B&amp;&amp;(null!==ew&amp;&amp;google.maps.event.removeListener(ew),eC(google.maps.event.addListener(H,"flat_changed",B)))},[B]),(0,m.useEffect)(()=&gt;{H&amp;&amp;T&amp;&amp;(null!==ex&amp;&amp;google.maps.event.removeListener(ex),eM(google.maps.event.addListener(H,"icon_changed",T)))},[T]),(0,m.useEffect)(()=&gt;{H&amp;&amp;R&amp;&amp;(null!==ek&amp;&amp;google.maps.event.removeListener(ek),eO(google.maps.event.addListener(H,"position_changed",R)))},[R]),(0,m.useEffect)(()=&gt;{H&amp;&amp;z&amp;&amp;(null!==eP&amp;&amp;google.maps.event.removeListener(eP),eS(google.maps.event.addListener(H,"shape_changed",z)))},[z]),(0,m.useEffect)(()=&gt;{H&amp;&amp;A&amp;&amp;(null!==ej&amp;&amp;google.maps.event.removeListener(ej),eI(google.maps.event.addListener(H,"title_changed",A)))},[A]),(0,m.useEffect)(()=&gt;{H&amp;&amp;U&amp;&amp;(null!==eD&amp;&amp;google.maps.event.removeListener(eD),e_(google.maps.event.addListener(H,"visible_changed",U)))},[U]),(0,m.useEffect)(()=&gt;{H&amp;&amp;Z&amp;&amp;(null!==eB&amp;&amp;google.maps.event.removeListener(eB),eT(google.maps.event.addListener(H,"zindex_changed",Z)))},[Z]),(0,m.useEffect)(()=&gt;{var e=er(er(er({},s||eu),n?eu:{map:N}),{},{position:t}),i=new google.maps.Marker(e);return n?n.addMarker(i,!!o):i.setMap(N),t&amp;&amp;i.setPosition(t),void 0!==a&amp;&amp;i.setVisible(a),void 0!==r&amp;&amp;i.setDraggable(r),void 0!==u&amp;&amp;i.setClickable(u),"string"==typeof p&amp;&amp;i.setCursor(p),c&amp;&amp;i.setIcon(c),void 0!==h&amp;&amp;i.setLabel(h),void 0!==d&amp;&amp;i.setOpacity(d),v&amp;&amp;i.setShape(v),"string"==typeof f&amp;&amp;i.setTitle(f),"number"==typeof y&amp;&amp;i.setZIndex(y),b&amp;&amp;Y(google.maps.event.addListener(i,"dblclick",b)),C&amp;&amp;q(google.maps.event.addListener(i,"dragend",C)),x&amp;&amp;X(google.maps.event.addListener(i,"dragstart",x)),P&amp;&amp;Q(google.maps.event.addListener(i,"mousedown",P)),M&amp;&amp;et(google.maps.event.addListener(i,"mouseout",M)),k&amp;&amp;en(google.maps.event.addListener(i,"mouseover",k)),O&amp;&amp;ei(google.maps.event.addListener(i,"mouseup",O)),S&amp;&amp;el(google.maps.event.addListener(i,"rightclick",S)),L&amp;&amp;ec(google.maps.event.addListener(i,"click",L)),w&amp;&amp;ed(google.maps.event.addListener(i,"drag",w)),j&amp;&amp;em(google.maps.event.addListener(i,"clickable_changed",j)),I&amp;&amp;ef(google.maps.event.addListener(i,"cursor_changed",I)),D&amp;&amp;eL(google.maps.event.addListener(i,"animation_changed",D)),_&amp;&amp;eE(google.maps.event.addListener(i,"draggable_changed",_)),B&amp;&amp;eC(google.maps.event.addListener(i,"flat_changed",B)),T&amp;&amp;eM(google.maps.event.addListener(i,"icon_changed",T)),R&amp;&amp;eO(google.maps.event.addListener(i,"position_changed",R)),z&amp;&amp;eS(google.maps.event.addListener(i,"shape_changed",z)),A&amp;&amp;eI(google.maps.event.addListener(i,"title_changed",A)),U&amp;&amp;e_(google.maps.event.addListener(i,"visible_changed",U)),Z&amp;&amp;eT(google.maps.event.addListener(i,"zindex_changed",Z)),G(i),V&amp;&amp;V(i),()=&gt;{null!==F&amp;&amp;google.maps.event.removeListener(F),null!==K&amp;&amp;google.maps.event.removeListener(K),null!==J&amp;&amp;google.maps.event.removeListener(J),null!==$&amp;&amp;google.maps.event.removeListener($),null!==ee&amp;&amp;google.maps.event.removeListener(ee),null!==es&amp;&amp;google.maps.event.removeListener(es),null!==eo&amp;&amp;google.maps.event.removeListener(eo),null!==ea&amp;&amp;google.maps.event.removeListener(ea),null!==ep&amp;&amp;google.maps.event.removeListener(ep),null!==eg&amp;&amp;google.maps.event.removeListener(eg),null!==ev&amp;&amp;google.maps.event.removeListener(ev),null!==ey&amp;&amp;google.maps.event.removeListener(ey),null!==eb&amp;&amp;google.maps.event.removeListener(eb),null!==ew&amp;&amp;google.maps.event.removeListener(ew),null!==ex&amp;&amp;google.maps.event.removeListener(ex),null!==ek&amp;&amp;google.maps.event.removeListener(ek),null!==ej&amp;&amp;google.maps.event.removeListener(ej),null!==eD&amp;&amp;google.maps.event.removeListener(eD),null!==eB&amp;&amp;google.maps.event.removeListener(eB),W&amp;&amp;W(i),n?n.removeMarker(i,!!o):i&amp;&amp;i.setMap(null)}},[]);var eR=(0,m.useMemo)(()=&gt;i?m.Children.map(i,e=&gt;(0,m.isValidElement)(e)?(0,m.cloneElement)(e,{anchor:H}):e):null,[i,H]);return(0,g.jsx)(g.Fragment,{children:eR})||null});class ep extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[])}componentDidMount(){var e=this;return S(function*(){var t=er(er(er({},e.props.options||eu),e.props.clusterer?eu:{map:e.context}),{},{position:e.props.position});e.marker=new google.maps.Marker(t),e.props.clusterer?e.props.clusterer.addMarker(e.marker,!!e.props.noClustererRedraw):e.marker.setMap(e.context),e.registeredEvents=x({updaterMap:el,eventMap:ea,prevProps:{},nextProps:e.props,instance:e.marker}),e.props.onLoad&amp;&amp;e.props.onLoad(e.marker)})()}componentDidUpdate(e){this.marker&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:el,eventMap:ea,prevProps:e,nextProps:this.props,instance:this.marker}))}componentWillUnmount(){this.marker&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.marker),C(this.registeredEvents),this.props.clusterer?this.props.clusterer.removeMarker(this.marker,!!this.props.noClustererRedraw):this.marker&amp;&amp;this.marker.setMap(null))}render(){return(this.props.children?m.Children.map(this.props.children,e=&gt;(0,m.isValidElement)(e)?(0,m.cloneElement)(e,{anchor:this.marker}):e):null)||null}}y(ep,"contextType",E);var ec=function(){function e(t,s){t.getClusterer().extend(e,google.maps.OverlayView),this.cluster=t,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.cMouseDownInCluster=null,this.cDraggingMapByCluster=null,this.timeOut=null,this.setMap(t.getMap()),this.onBoundsChanged=this.onBoundsChanged.bind(this),this.onMouseDown=this.onMouseDown.bind(this),this.onClick=this.onClick.bind(this),this.onMouseOver=this.onMouseOver.bind(this),this.onMouseOut=this.onMouseOut.bind(this),this.onAdd=this.onAdd.bind(this),this.onRemove=this.onRemove.bind(this),this.draw=this.draw.bind(this),this.hide=this.hide.bind(this),this.show=this.show.bind(this),this.useStyle=this.useStyle.bind(this),this.setCenter=this.setCenter.bind(this),this.getPosFromLatLng=this.getPosFromLatLng.bind(this)}return e.prototype.onBoundsChanged=function(){this.cDraggingMapByCluster=this.cMouseDownInCluster},e.prototype.onMouseDown=function(){this.cMouseDownInCluster=!0,this.cDraggingMapByCluster=!1},e.prototype.onClick=function(e){if(this.cMouseDownInCluster=!1,!this.cDraggingMapByCluster){var t=this.cluster.getClusterer();if(google.maps.event.trigger(t,"click",this.cluster),google.maps.event.trigger(t,"clusterclick",this.cluster),t.getZoomOnClick()){var s=t.getMaxZoom(),n=this.cluster.getBounds(),o=t.getMap();null!==o&amp;&amp;"fitBounds"in o&amp;&amp;o.fitBounds(n),this.timeOut=window.setTimeout(function(){var e=t.getMap();if(null!==e){"fitBounds"in e&amp;&amp;e.fitBounds(n);var o=e.getZoom()||0;null!==s&amp;&amp;o&gt;s&amp;&amp;e.setZoom(s+1)}},100)}e.cancelBubble=!0,e.stopPropagation&amp;&amp;e.stopPropagation()}},e.prototype.onMouseOver=function(){google.maps.event.trigger(this.cluster.getClusterer(),"mouseover",this.cluster)},e.prototype.onMouseOut=function(){google.maps.event.trigger(this.cluster.getClusterer(),"mouseout",this.cluster)},e.prototype.onAdd=function(){this.div=document.createElement("div"),this.div.className=this.className,this.visible&amp;&amp;this.show(),null===(e=this.getPanes())||void 0===e||e.overlayMouseTarget.appendChild(this.div);var e,t=this.getMap();null!==t&amp;&amp;(this.boundsChangedListener=google.maps.event.addListener(t,"bounds_changed",this.onBoundsChanged),this.div.addEventListener("mousedown",this.onMouseDown),this.div.addEventListener("click",this.onClick),this.div.addEventListener("mouseover",this.onMouseOver),this.div.addEventListener("mouseout",this.onMouseOut))},e.prototype.onRemove=function(){this.div&amp;&amp;this.div.parentNode&amp;&amp;(this.hide(),null!==this.boundsChangedListener&amp;&amp;google.maps.event.removeListener(this.boundsChangedListener),this.div.removeEventListener("mousedown",this.onMouseDown),this.div.removeEventListener("click",this.onClick),this.div.removeEventListener("mouseover",this.onMouseOver),this.div.removeEventListener("mouseout",this.onMouseOut),this.div.parentNode.removeChild(this.div),null!==this.timeOut&amp;&amp;(window.clearTimeout(this.timeOut),this.timeOut=null),this.div=null)},e.prototype.draw=function(){if(this.visible&amp;&amp;null!==this.div&amp;&amp;this.center){var e=this.getPosFromLatLng(this.center);this.div.style.top=null!==e?"".concat(e.y,"px"):"0",this.div.style.left=null!==e?"".concat(e.x,"px"):"0"}},e.prototype.hide=function(){this.div&amp;&amp;(this.div.style.display="none"),this.visible=!1},e.prototype.show=function(){var e,t,s,n,o,i;if(this.div&amp;&amp;this.center){var r=null===this.sums||void 0===this.sums.title||""===this.sums.title?this.cluster.getClusterer().getTitle():this.sums.title,a=this.backgroundPosition.split(" "),l=parseInt((null===(e=a[0])||void 0===e?void 0:e.replace(/^\s+|\s+$/g,""))||"0",10),u=parseInt((null===(t=a[1])||void 0===t?void 0:t.replace(/^\s+|\s+$/g,""))||"0",10),p=this.getPosFromLatLng(this.center);this.div.className=this.className,this.div.setAttribute("style","cursor: pointer; position: absolute; top: ".concat(null!==p?"".concat(p.y,"px"):"0","; left: ").concat(null!==p?"".concat(p.x,"px"):"0","; width: ").concat(this.width,"px; height: ").concat(this.height,"px; "));var c=document.createElement("img");c.alt=r,c.src=this.url,c.width=this.width,c.height=this.height,c.setAttribute("style","position: absolute; top: ".concat(u,"px; left: ").concat(l,"px")),this.cluster.getClusterer().enableRetinaIcons||(c.style.clip="rect(-".concat(u,"px, -").concat(l+this.width,"px, -").concat(u+this.height,", -").concat(l,")"));var h=document.createElement("div");h.setAttribute("style","position: absolute; top: ".concat(this.anchorText[0],"px; left: ").concat(this.anchorText[1],"px; color: ").concat(this.textColor,"; font-size: ").concat(this.textSize,"px; font-family: ").concat(this.fontFamily,"; font-weight: ").concat(this.fontWeight,"; fontStyle: ").concat(this.fontStyle,"; text-decoration: ").concat(this.textDecoration,"; text-align: center; width: ").concat(this.width,"px; line-height: ").concat(this.height,"px")),(null===(s=this.sums)||void 0===s?void 0:s.text)&amp;&amp;(h.innerText="".concat(null===(n=this.sums)||void 0===n?void 0:n.text)),(null===(o=this.sums)||void 0===o?void 0:o.html)&amp;&amp;(h.innerHTML="".concat(null===(i=this.sums)||void 0===i?void 0:i.html)),this.div.innerHTML="",this.div.appendChild(c),this.div.appendChild(h),this.div.title=r,this.div.style.display=""}this.visible=!0},e.prototype.useStyle=function(e){this.sums=e;var t=this.cluster.getClusterer().getStyles(),s=t[Math.min(t.length-1,Math.max(0,e.index-1))];s&amp;&amp;(this.url=s.url,this.height=s.height,this.width=s.width,s.className&amp;&amp;(this.className="".concat(this.clusterClassName," ").concat(s.className)),this.anchorText=s.anchorText||[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")},e.prototype.setCenter=function(e){this.center=e},e.prototype.getPosFromLatLng=function(e){var t=this.getProjection().fromLatLngToDivPixel(e);return null!==t&amp;&amp;(t.x-=this.anchorIcon[1],t.y-=this.anchorIcon[0]),t},e}(),eh=function(){function e(e){this.markerClusterer=e,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 ec(this,this.markerClusterer.getStyles()),this.getSize=this.getSize.bind(this),this.getMarkers=this.getMarkers.bind(this),this.getCenter=this.getCenter.bind(this),this.getMap=this.getMap.bind(this),this.getClusterer=this.getClusterer.bind(this),this.getBounds=this.getBounds.bind(this),this.remove=this.remove.bind(this),this.addMarker=this.addMarker.bind(this),this.isMarkerInClusterBounds=this.isMarkerInClusterBounds.bind(this),this.calculateBounds=this.calculateBounds.bind(this),this.updateIcon=this.updateIcon.bind(this),this.isMarkerAlreadyAdded=this.isMarkerAlreadyAdded.bind(this)}return e.prototype.getSize=function(){return this.markers.length},e.prototype.getMarkers=function(){return this.markers},e.prototype.getCenter=function(){return this.center},e.prototype.getMap=function(){return this.map},e.prototype.getClusterer=function(){return this.markerClusterer},e.prototype.getBounds=function(){for(var e=new google.maps.LatLngBounds(this.center,this.center),t=this.getMarkers(),s=0;s&lt;t.length;s++){var n=t[s].getPosition();n&amp;&amp;e.extend(n)}return e},e.prototype.remove=function(){this.clusterIcon.setMap(null),this.markers=[],delete this.markers},e.prototype.addMarker=function(e){if(this.isMarkerAlreadyAdded(e))return!1;if(this.center){if(this.averageCenter){var t=e.getPosition();if(t){var s=this.markers.length+1;this.center=new google.maps.LatLng((this.center.lat()*(s-1)+t.lat())/s,(this.center.lng()*(s-1)+t.lng())/s),this.calculateBounds()}}}else{var n,t=e.getPosition();t&amp;&amp;(this.center=t,this.calculateBounds())}e.isAdded=!0,this.markers.push(e);var o=this.markers.length,i=this.markerClusterer.getMaxZoom(),r=null===(n=this.map)||void 0===n?void 0:n.getZoom();if(null!==i&amp;&amp;void 0!==r&amp;&amp;r&gt;i)e.getMap()!==this.map&amp;&amp;e.setMap(this.map);else if(o&lt;this.minClusterSize)e.getMap()!==this.map&amp;&amp;e.setMap(this.map);else if(o===this.minClusterSize)for(var a=0,l=this.markers;a&lt;l.length;a++)l[a].setMap(null);else e.setMap(null);return!0},e.prototype.isMarkerInClusterBounds=function(e){if(null!==this.bounds){var t=e.getPosition();if(t)return this.bounds.contains(t)}return!1},e.prototype.calculateBounds=function(){this.bounds=this.markerClusterer.getExtendedBounds(new google.maps.LatLngBounds(this.center,this.center))},e.prototype.updateIcon=function(){var e,t=this.markers.length,s=this.markerClusterer.getMaxZoom(),n=null===(e=this.map)||void 0===e?void 0:e.getZoom();if(null!==s&amp;&amp;void 0!==n&amp;&amp;n&gt;s||t&lt;this.minClusterSize){this.clusterIcon.hide();return}this.center&amp;&amp;this.clusterIcon.setCenter(this.center),this.clusterIcon.useStyle(this.markerClusterer.getCalculator()(this.markers,this.markerClusterer.getStyles().length)),this.clusterIcon.show()},e.prototype.isMarkerAlreadyAdded=function(e){if(this.markers.includes)return this.markers.includes(e);for(var t=0;t&lt;this.markers.length;t++)if(e===this.markers[t])return!0;return!1},e}();function ed(e,t){var s=e.length,n=s.toString().length;return{text:s.toString(),index:Math.min(n,t),title:""}}var eg=[53,56,66,78,90],em=function(){function e(t,s,n){void 0===s&amp;&amp;(s=[]),void 0===n&amp;&amp;(n={}),this.getMinimumClusterSize=this.getMinimumClusterSize.bind(this),this.setMinimumClusterSize=this.setMinimumClusterSize.bind(this),this.getEnableRetinaIcons=this.getEnableRetinaIcons.bind(this),this.setEnableRetinaIcons=this.setEnableRetinaIcons.bind(this),this.addToClosestCluster=this.addToClosestCluster.bind(this),this.getImageExtension=this.getImageExtension.bind(this),this.setImageExtension=this.setImageExtension.bind(this),this.getExtendedBounds=this.getExtendedBounds.bind(this),this.getAverageCenter=this.getAverageCenter.bind(this),this.setAverageCenter=this.setAverageCenter.bind(this),this.getTotalClusters=this.getTotalClusters.bind(this),this.fitMapToMarkers=this.fitMapToMarkers.bind(this),this.getIgnoreHidden=this.getIgnoreHidden.bind(this),this.setIgnoreHidden=this.setIgnoreHidden.bind(this),this.getClusterClass=this.getClusterClass.bind(this),this.setClusterClass=this.setClusterClass.bind(this),this.getTotalMarkers=this.getTotalMarkers.bind(this),this.getZoomOnClick=this.getZoomOnClick.bind(this),this.setZoomOnClick=this.setZoomOnClick.bind(this),this.getBatchSizeIE=this.getBatchSizeIE.bind(this),this.setBatchSizeIE=this.setBatchSizeIE.bind(this),this.createClusters=this.createClusters.bind(this),this.onZoomChanged=this.onZoomChanged.bind(this),this.getImageSizes=this.getImageSizes.bind(this),this.setImageSizes=this.setImageSizes.bind(this),this.getCalculator=this.getCalculator.bind(this),this.setCalculator=this.setCalculator.bind(this),this.removeMarkers=this.removeMarkers.bind(this),this.resetViewport=this.resetViewport.bind(this),this.getImagePath=this.getImagePath.bind(this),this.setImagePath=this.setImagePath.bind(this),this.pushMarkerTo=this.pushMarkerTo.bind(this),this.removeMarker=this.removeMarker.bind(this),this.clearMarkers=this.clearMarkers.bind(this),this.setupStyles=this.setupStyles.bind(this),this.getGridSize=this.getGridSize.bind(this),this.setGridSize=this.setGridSize.bind(this),this.getClusters=this.getClusters.bind(this),this.getMaxZoom=this.getMaxZoom.bind(this),this.setMaxZoom=this.setMaxZoom.bind(this),this.getMarkers=this.getMarkers.bind(this),this.addMarkers=this.addMarkers.bind(this),this.getStyles=this.getStyles.bind(this),this.setStyles=this.setStyles.bind(this),this.addMarker=this.addMarker.bind(this),this.onRemove=this.onRemove.bind(this),this.getTitle=this.getTitle.bind(this),this.setTitle=this.setTitle.bind(this),this.repaint=this.repaint.bind(this),this.onIdle=this.onIdle.bind(this),this.redraw=this.redraw.bind(this),this.onAdd=this.onAdd.bind(this),this.draw=this.draw.bind(this),this.extend=this.extend.bind(this),this.extend(e,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&amp;&amp;(this.zoomOnClick=n.zoomOnClick),this.averageCenter=!1,void 0!==n.averageCenter&amp;&amp;(this.averageCenter=n.averageCenter),this.ignoreHidden=!1,void 0!==n.ignoreHidden&amp;&amp;(this.ignoreHidden=n.ignoreHidden),this.enableRetinaIcons=!1,void 0!==n.enableRetinaIcons&amp;&amp;(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||eg,this.calculator=n.calculator||ed,this.batchSize=n.batchSize||2e3,this.batchSizeIE=n.batchSizeIE||500,this.clusterClass=n.clusterClass||"cluster",-1!==navigator.userAgent.toLowerCase().indexOf("msie")&amp;&amp;(this.batchSize=this.batchSizeIE),this.timerRefStatic=null,this.setupStyles(),this.addMarkers(s,!0),this.setMap(t)}return e.prototype.onZoomChanged=function(){var e,t;this.resetViewport(!1),((null===(e=this.getMap())||void 0===e?void 0:e.getZoom())===(this.get("minZoom")||0)||(null===(t=this.getMap())||void 0===t?void 0:t.getZoom())===this.get("maxZoom"))&amp;&amp;google.maps.event.trigger(this,"idle")},e.prototype.onIdle=function(){this.redraw()},e.prototype.onAdd=function(){var e=this.getMap();this.activeMap=e,this.ready=!0,this.repaint(),null!==e&amp;&amp;(this.listeners=[google.maps.event.addListener(e,"zoom_changed",this.onZoomChanged),google.maps.event.addListener(e,"idle",this.onIdle)])},e.prototype.onRemove=function(){for(var e=0,t=this.markers;e&lt;t.length;e++){var s=t[e];s.getMap()!==this.activeMap&amp;&amp;s.setMap(this.activeMap)}for(var n=0,o=this.clusters;n&lt;o.length;n++)o[n].remove();this.clusters=[];for(var i=0,r=this.listeners;i&lt;r.length;i++){var a=r[i];google.maps.event.removeListener(a)}this.listeners=[],this.activeMap=null,this.ready=!1},e.prototype.draw=function(){},e.prototype.getMap=function(){return null},e.prototype.getPanes=function(){return null},e.prototype.getProjection=function(){return{fromContainerPixelToLatLng:function(){return null},fromDivPixelToLatLng:function(){return null},fromLatLngToContainerPixel:function(){return null},fromLatLngToDivPixel:function(){return null},getVisibleRegion:function(){return null},getWorldWidth:function(){return 0}}},e.prototype.setMap=function(){},e.prototype.addListener=function(){return{remove:function(){}}},e.prototype.bindTo=function(){},e.prototype.get=function(){},e.prototype.notify=function(){},e.prototype.set=function(){},e.prototype.setValues=function(){},e.prototype.unbind=function(){},e.prototype.unbindAll=function(){},e.prototype.setupStyles=function(){if(!(this.styles.length&gt;0))for(var e=0;e&lt;this.imageSizes.length;e++)this.styles.push({url:"".concat(this.imagePath+(e+1),".").concat(this.imageExtension),height:this.imageSizes[e]||0,width:this.imageSizes[e]||0})},e.prototype.fitMapToMarkers=function(){for(var e=this.getMarkers(),t=new google.maps.LatLngBounds,s=0;s&lt;e.length;s++){var n=e[s].getPosition();n&amp;&amp;t.extend(n)}var o=this.getMap();null!==o&amp;&amp;"fitBounds"in o&amp;&amp;o.fitBounds(t)},e.prototype.getGridSize=function(){return this.gridSize},e.prototype.setGridSize=function(e){this.gridSize=e},e.prototype.getMinimumClusterSize=function(){return this.minClusterSize},e.prototype.setMinimumClusterSize=function(e){this.minClusterSize=e},e.prototype.getMaxZoom=function(){return this.maxZoom},e.prototype.setMaxZoom=function(e){this.maxZoom=e},e.prototype.getStyles=function(){return this.styles},e.prototype.setStyles=function(e){this.styles=e},e.prototype.getTitle=function(){return this.title},e.prototype.setTitle=function(e){this.title=e},e.prototype.getZoomOnClick=function(){return this.zoomOnClick},e.prototype.setZoomOnClick=function(e){this.zoomOnClick=e},e.prototype.getAverageCenter=function(){return this.averageCenter},e.prototype.setAverageCenter=function(e){this.averageCenter=e},e.prototype.getIgnoreHidden=function(){return this.ignoreHidden},e.prototype.setIgnoreHidden=function(e){this.ignoreHidden=e},e.prototype.getEnableRetinaIcons=function(){return this.enableRetinaIcons},e.prototype.setEnableRetinaIcons=function(e){this.enableRetinaIcons=e},e.prototype.getImageExtension=function(){return this.imageExtension},e.prototype.setImageExtension=function(e){this.imageExtension=e},e.prototype.getImagePath=function(){return this.imagePath},e.prototype.setImagePath=function(e){this.imagePath=e},e.prototype.getImageSizes=function(){return this.imageSizes},e.prototype.setImageSizes=function(e){this.imageSizes=e},e.prototype.getCalculator=function(){return this.calculator},e.prototype.setCalculator=function(e){this.calculator=e},e.prototype.getBatchSizeIE=function(){return this.batchSizeIE},e.prototype.setBatchSizeIE=function(e){this.batchSizeIE=e},e.prototype.getClusterClass=function(){return this.clusterClass},e.prototype.setClusterClass=function(e){this.clusterClass=e},e.prototype.getMarkers=function(){return this.markers},e.prototype.getTotalMarkers=function(){return this.markers.length},e.prototype.getClusters=function(){return this.clusters},e.prototype.getTotalClusters=function(){return this.clusters.length},e.prototype.addMarker=function(e,t){this.pushMarkerTo(e),t||this.redraw()},e.prototype.addMarkers=function(e,t){for(var s in e)if(Object.prototype.hasOwnProperty.call(e,s)){var n=e[s];n&amp;&amp;this.pushMarkerTo(n)}t||this.redraw()},e.prototype.pushMarkerTo=function(e){var t=this;e.getDraggable()&amp;&amp;google.maps.event.addListener(e,"dragend",function(){t.ready&amp;&amp;(e.isAdded=!1,t.repaint())}),e.isAdded=!1,this.markers.push(e)},e.prototype.removeMarker_=function(e){var t=-1;if(this.markers.indexOf)t=this.markers.indexOf(e);else for(var s=0;s&lt;this.markers.length;s++)if(e===this.markers[s]){t=s;break}return -1!==t&amp;&amp;(e.setMap(null),this.markers.splice(t,1),!0)},e.prototype.removeMarker=function(e,t){var s=this.removeMarker_(e);return!t&amp;&amp;s&amp;&amp;this.repaint(),s},e.prototype.removeMarkers=function(e,t){for(var s=!1,n=0;n&lt;e.length;n++){var o=e[n];s=s||this.removeMarker_(o)}return!t&amp;&amp;s&amp;&amp;this.repaint(),s},e.prototype.clearMarkers=function(){this.resetViewport(!0),this.markers=[]},e.prototype.repaint=function(){var e=this.clusters.slice();this.clusters=[],this.resetViewport(!1),this.redraw(),setTimeout(function(){for(var t=0;t&lt;e.length;t++)e[t].remove()},0)},e.prototype.getExtendedBounds=function(e){var t=this.getProjection(),s=t.fromLatLngToDivPixel(new google.maps.LatLng(e.getNorthEast().lat(),e.getNorthEast().lng()));null!==s&amp;&amp;(s.x+=this.gridSize,s.y-=this.gridSize);var n=t.fromLatLngToDivPixel(new google.maps.LatLng(e.getSouthWest().lat(),e.getSouthWest().lng()));if(null!==n&amp;&amp;(n.x-=this.gridSize,n.y+=this.gridSize),null!==s){var o=t.fromDivPixelToLatLng(s);null!==o&amp;&amp;e.extend(o)}if(null!==n){var i=t.fromDivPixelToLatLng(n);null!==i&amp;&amp;e.extend(i)}return e},e.prototype.redraw=function(){this.createClusters(0)},e.prototype.resetViewport=function(e){for(var t=0,s=this.clusters;t&lt;s.length;t++)s[t].remove();this.clusters=[];for(var n=0,o=this.markers;n&lt;o.length;n++){var i=o[n];i.isAdded=!1,e&amp;&amp;i.setMap(null)}},e.prototype.distanceBetweenPoints=function(e,t){var s=(t.lat()-e.lat())*Math.PI/180,n=(t.lng()-e.lng())*Math.PI/180,o=Math.sin(s/2)*Math.sin(s/2)+Math.cos(e.lat()*Math.PI/180)*Math.cos(t.lat()*Math.PI/180)*Math.sin(n/2)*Math.sin(n/2);return 2*Math.atan2(Math.sqrt(o),Math.sqrt(1-o))*6371},e.prototype.isMarkerInBounds=function(e,t){var s=e.getPosition();return!!s&amp;&amp;t.contains(s)},e.prototype.addToClosestCluster=function(e){for(var t,s=4e4,n=null,o=0,i=this.clusters;o&lt;i.length;o++){var r=(t=i[o]).getCenter(),a=e.getPosition();if(r&amp;&amp;a){var l=this.distanceBetweenPoints(r,a);l&lt;s&amp;&amp;(s=l,n=t)}}n&amp;&amp;n.isMarkerInClusterBounds(e)?n.addMarker(e):((t=new eh(this)).addMarker(e),this.clusters.push(t))},e.prototype.createClusters=function(e){var t=this;if(this.ready){0===e&amp;&amp;(google.maps.event.trigger(this,"clusteringbegin",this),null!==this.timerRefStatic&amp;&amp;(window.clearTimeout(this.timerRefStatic),delete this.timerRefStatic));for(var s=this.getMap(),n=null!==s&amp;&amp;("getBounds"in s)?s.getBounds():null,o=((null==s?void 0:s.getZoom())||0)&gt;3?new google.maps.LatLngBounds(null==n?void 0:n.getSouthWest(),null==n?void 0:n.getNorthEast()):new google.maps.LatLngBounds(new google.maps.LatLng(85.02070771743472,-178.48388434375),new google.maps.LatLng(-85.08136444384544,178.00048865625)),i=this.getExtendedBounds(o),r=Math.min(e+this.batchSize,this.markers.length),a=e;a&lt;r;a++){var l=this.markers[a];l&amp;&amp;!l.isAdded&amp;&amp;this.isMarkerInBounds(l,i)&amp;&amp;(!this.ignoreHidden||this.ignoreHidden&amp;&amp;l.getVisible())&amp;&amp;this.addToClosestCluster(l)}if(r&lt;this.markers.length)this.timerRefStatic=window.setTimeout(function(){t.createClusters(r)},0);else{this.timerRefStatic=null,google.maps.event.trigger(this,"clusteringend",this);for(var u=0,p=this.clusters;u&lt;p.length;u++)p[u].updateIcon()}}},e.prototype.extend=function(e,t){return(function(e){for(var t in e.prototype)this.prototype[t]=e.prototype[t];return this}).apply(e,[t])},e}();function ev(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}var ef={onClick:"click",onClusteringBegin:"clusteringbegin",onClusteringEnd:"clusteringend",onMouseOut:"mouseout",onMouseOver:"mouseover"},ey={averageCenter(e,t){e.setAverageCenter(t)},batchSizeIE(e,t){e.setBatchSizeIE(t)},calculator(e,t){e.setCalculator(t)},clusterClass(e,t){e.setClusterClass(t)},enableRetinaIcons(e,t){e.setEnableRetinaIcons(t)},gridSize(e,t){e.setGridSize(t)},ignoreHidden(e,t){e.setIgnoreHidden(t)},imageExtension(e,t){e.setImageExtension(t)},imagePath(e,t){e.setImagePath(t)},imageSizes(e,t){e.setImageSizes(t)},maxZoom(e,t){e.setMaxZoom(t)},minimumClusterSize(e,t){e.setMinimumClusterSize(t)},styles(e,t){e.setStyles(t)},title(e,t){e.setTitle(t)},zoomOnClick(e,t){e.setZoomOnClick(t)}},eL={};(0,m.memo)(function(e){var{children:t,options:s,averageCenter:n,batchSizeIE:o,calculator:i,clusterClass:r,enableRetinaIcons:a,gridSize:l,ignoreHidden:u,imageExtension:p,imagePath:c,imageSizes:h,maxZoom:d,minimumClusterSize:g,styles:v,title:f,zoomOnClick:L,onClick:b,onClusteringBegin:w,onClusteringEnd:C,onMouseOver:x,onMouseOut:M,onLoad:k,onUnmount:O}=e,[P,S]=(0,m.useState)(null),j=(0,m.useContext)(E),[I,D]=(0,m.useState)(null),[_,B]=(0,m.useState)(null),[T,R]=(0,m.useState)(null),[z,A]=(0,m.useState)(null),[U,Z]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{P&amp;&amp;M&amp;&amp;(null!==z&amp;&amp;google.maps.event.removeListener(z),A(google.maps.event.addListener(P,ef.onMouseOut,M)))},[M]),(0,m.useEffect)(()=&gt;{P&amp;&amp;x&amp;&amp;(null!==U&amp;&amp;google.maps.event.removeListener(U),Z(google.maps.event.addListener(P,ef.onMouseOver,x)))},[x]),(0,m.useEffect)(()=&gt;{P&amp;&amp;b&amp;&amp;(null!==I&amp;&amp;google.maps.event.removeListener(I),D(google.maps.event.addListener(P,ef.onClick,b)))},[b]),(0,m.useEffect)(()=&gt;{P&amp;&amp;w&amp;&amp;(null!==_&amp;&amp;google.maps.event.removeListener(_),B(google.maps.event.addListener(P,ef.onClusteringBegin,w)))},[w]),(0,m.useEffect)(()=&gt;{P&amp;&amp;C&amp;&amp;(null!==T&amp;&amp;google.maps.event.removeListener(T),B(google.maps.event.addListener(P,ef.onClusteringEnd,C)))},[C]),(0,m.useEffect)(()=&gt;{void 0!==n&amp;&amp;null!==P&amp;&amp;ey.averageCenter(P,n)},[P,n]),(0,m.useEffect)(()=&gt;{void 0!==o&amp;&amp;null!==P&amp;&amp;ey.batchSizeIE(P,o)},[P,o]),(0,m.useEffect)(()=&gt;{void 0!==i&amp;&amp;null!==P&amp;&amp;ey.calculator(P,i)},[P,i]),(0,m.useEffect)(()=&gt;{void 0!==r&amp;&amp;null!==P&amp;&amp;ey.clusterClass(P,r)},[P,r]),(0,m.useEffect)(()=&gt;{void 0!==a&amp;&amp;null!==P&amp;&amp;ey.enableRetinaIcons(P,a)},[P,a]),(0,m.useEffect)(()=&gt;{void 0!==l&amp;&amp;null!==P&amp;&amp;ey.gridSize(P,l)},[P,l]),(0,m.useEffect)(()=&gt;{void 0!==u&amp;&amp;null!==P&amp;&amp;ey.ignoreHidden(P,u)},[P,u]),(0,m.useEffect)(()=&gt;{void 0!==p&amp;&amp;null!==P&amp;&amp;ey.imageExtension(P,p)},[P,p]),(0,m.useEffect)(()=&gt;{void 0!==c&amp;&amp;null!==P&amp;&amp;ey.imagePath(P,c)},[P,c]),(0,m.useEffect)(()=&gt;{void 0!==h&amp;&amp;null!==P&amp;&amp;ey.imageSizes(P,h)},[P,h]),(0,m.useEffect)(()=&gt;{void 0!==d&amp;&amp;null!==P&amp;&amp;ey.maxZoom(P,d)},[P,d]),(0,m.useEffect)(()=&gt;{void 0!==g&amp;&amp;null!==P&amp;&amp;ey.minimumClusterSize(P,g)},[P,g]),(0,m.useEffect)(()=&gt;{void 0!==v&amp;&amp;null!==P&amp;&amp;ey.styles(P,v)},[P,v]),(0,m.useEffect)(()=&gt;{void 0!==f&amp;&amp;null!==P&amp;&amp;ey.title(P,f)},[P,f]),(0,m.useEffect)(()=&gt;{void 0!==L&amp;&amp;null!==P&amp;&amp;ey.zoomOnClick(P,L)},[P,L]),(0,m.useEffect)(()=&gt;{if(j){var e=new em(j,[],function(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?ev(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):ev(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}({},s||eL));return n&amp;&amp;ey.averageCenter(e,n),o&amp;&amp;ey.batchSizeIE(e,o),i&amp;&amp;ey.calculator(e,i),r&amp;&amp;ey.clusterClass(e,r),a&amp;&amp;ey.enableRetinaIcons(e,a),l&amp;&amp;ey.gridSize(e,l),u&amp;&amp;ey.ignoreHidden(e,u),p&amp;&amp;ey.imageExtension(e,p),c&amp;&amp;ey.imagePath(e,c),h&amp;&amp;ey.imageSizes(e,h),d&amp;&amp;ey.maxZoom(e,d),g&amp;&amp;ey.minimumClusterSize(e,g),v&amp;&amp;ey.styles(e,v),f&amp;&amp;ey.title(e,f),L&amp;&amp;ey.zoomOnClick(e,L),M&amp;&amp;A(google.maps.event.addListener(e,ef.onMouseOut,M)),x&amp;&amp;Z(google.maps.event.addListener(e,ef.onMouseOver,x)),b&amp;&amp;D(google.maps.event.addListener(e,ef.onClick,b)),w&amp;&amp;B(google.maps.event.addListener(e,ef.onClusteringBegin,w)),C&amp;&amp;R(google.maps.event.addListener(e,ef.onClusteringEnd,C)),S(e),k&amp;&amp;k(e),()=&gt;{null!==z&amp;&amp;google.maps.event.removeListener(z),null!==U&amp;&amp;google.maps.event.removeListener(U),null!==I&amp;&amp;google.maps.event.removeListener(I),null!==_&amp;&amp;google.maps.event.removeListener(_),null!==T&amp;&amp;google.maps.event.removeListener(T),O&amp;&amp;O(e)}}},[]),null!==P&amp;&amp;t(P)||null});class eb extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{markerClusterer:null}),y(this,"setClustererCallback",()=&gt;{null!==this.state.markerClusterer&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.markerClusterer)})}componentDidMount(){if(this.context){var e=new em(this.context,[],this.props.options);this.registeredEvents=x({updaterMap:ey,eventMap:ef,prevProps:{},nextProps:this.props,instance:e}),this.setState(()=&gt;({markerClusterer:e}),this.setClustererCallback)}}componentDidUpdate(e){this.state.markerClusterer&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:ey,eventMap:ef,prevProps:e,nextProps:this.props,instance:this.state.markerClusterer}))}componentWillUnmount(){null!==this.state.markerClusterer&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.markerClusterer),C(this.registeredEvents),this.state.markerClusterer.setMap(null))}render(){return null!==this.state.markerClusterer?this.props.children(this.state.markerClusterer):null}}function eE(e){e.cancelBubble=!0,e.stopPropagation&amp;&amp;e.stopPropagation()}y(eb,"contextType",E);var ew=function(){function e(t){void 0===t&amp;&amp;(t={}),this.getCloseClickHandler=this.getCloseClickHandler.bind(this),this.closeClickHandler=this.closeClickHandler.bind(this),this.createInfoBoxDiv=this.createInfoBoxDiv.bind(this),this.addClickHandler=this.addClickHandler.bind(this),this.getCloseBoxImg=this.getCloseBoxImg.bind(this),this.getBoxWidths=this.getBoxWidths.bind(this),this.setBoxStyle=this.setBoxStyle.bind(this),this.setPosition=this.setPosition.bind(this),this.getPosition=this.getPosition.bind(this),this.setOptions=this.setOptions.bind(this),this.setContent=this.setContent.bind(this),this.setVisible=this.setVisible.bind(this),this.getContent=this.getContent.bind(this),this.getVisible=this.getVisible.bind(this),this.setZIndex=this.setZIndex.bind(this),this.getZIndex=this.getZIndex.bind(this),this.onRemove=this.onRemove.bind(this),this.panBox=this.panBox.bind(this),this.extend=this.extend.bind(this),this.close=this.close.bind(this),this.draw=this.draw.bind(this),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.open=this.open.bind(this),this.extend(e,google.maps.OverlayView),this.content=t.content||"",this.disableAutoPan=t.disableAutoPan||!1,this.maxWidth=t.maxWidth||0,this.pixelOffset=t.pixelOffset||new google.maps.Size(0,0),this.position=t.position||new google.maps.LatLng(0,0),this.zIndex=t.zIndex||null,this.boxClass=t.boxClass||"infoBox",this.boxStyle=t.boxStyle||{},this.closeBoxMargin=t.closeBoxMargin||"2px",this.closeBoxURL=t.closeBoxURL||"http://www.google.com/intl/en_us/mapfiles/close.gif",""===t.closeBoxURL&amp;&amp;(this.closeBoxURL=""),this.infoBoxClearance=t.infoBoxClearance||new google.maps.Size(1,1),void 0===t.visible&amp;&amp;(void 0===t.isHidden?t.visible=!0:t.visible=!t.isHidden),this.isHidden=!t.visible,this.alignBottom=t.alignBottom||!1,this.pane=t.pane||"floatPane",this.enableEventPropagation=t.enableEventPropagation||!1,this.div=null,this.closeListener=null,this.moveListener=null,this.mapListener=null,this.contextListener=null,this.eventListeners=null,this.fixedWidthSet=null}return e.prototype.createInfoBoxDiv=function(){var e=this;if(!this.div){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));var t=this.getPanes();if(null!==t&amp;&amp;t[this.pane].appendChild(this.div),this.addClickHandler(),this.div.style.width)this.fixedWidthSet=!0;else if(0!==this.maxWidth&amp;&amp;this.div.offsetWidth&gt;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=0,o=["mousedown","mouseover","mouseout","mouseup","click","dblclick","touchstart","touchend","touchmove"];n&lt;o.length;n++){var i=o[n];this.eventListeners.push(google.maps.event.addListener(this.div,i,eE))}this.eventListeners.push(google.maps.event.addListener(this.div,"mouseover",function(){e.div&amp;&amp;(e.div.style.cursor="default")}))}this.contextListener=google.maps.event.addListener(this.div,"contextmenu",function(t){t.returnValue=!1,t.preventDefault&amp;&amp;t.preventDefault(),e.enableEventPropagation||eE(t)}),google.maps.event.trigger(this,"domready")}},e.prototype.getCloseBoxImg=function(){var e="";return""!==this.closeBoxURL&amp;&amp;(e='&lt;img alt="" aria-hidden="true" src=\''+this.closeBoxURL+"' align=right style=' position: relative; cursor: pointer; margin: "+this.closeBoxMargin+";'&gt;"),e},e.prototype.addClickHandler=function(){this.closeListener=this.div&amp;&amp;this.div.firstChild&amp;&amp;""!==this.closeBoxURL?google.maps.event.addListener(this.div.firstChild,"click",this.getCloseClickHandler()):null},e.prototype.closeClickHandler=function(e){e.cancelBubble=!0,e.stopPropagation&amp;&amp;e.stopPropagation(),google.maps.event.trigger(this,"closeclick"),this.close()},e.prototype.getCloseClickHandler=function(){return this.closeClickHandler},e.prototype.panBox=function(e){if(this.div&amp;&amp;!e){var t=this.getMap();if(t instanceof google.maps.Map){var s=0,n=0,o=t.getBounds();o&amp;&amp;!o.contains(this.position)&amp;&amp;t.setCenter(this.position);var i=t.getDiv(),r=i.offsetWidth,a=i.offsetHeight,l=this.pixelOffset.width,u=this.pixelOffset.height,p=this.div.offsetWidth,c=this.div.offsetHeight,h=this.infoBoxClearance.width,d=this.infoBoxClearance.height,g=this.getProjection().fromLatLngToContainerPixel(this.position);null!==g&amp;&amp;(g.x&lt;-l+h?s=g.x+l-h:g.x+p+l+h&gt;r&amp;&amp;(s=g.x+p+l+h-r),this.alignBottom?g.y&lt;-u+d+c?n=g.y+u-d-c:g.y+u+d&gt;a&amp;&amp;(n=g.y+u+d-a):g.y&lt;-u+d?n=g.y+u-d:g.y+c+u+d&gt;a&amp;&amp;(n=g.y+c+u+d-a)),0===s&amp;&amp;0===n||t.panBy(s,n)}}},e.prototype.setBoxStyle=function(){if(this.div){this.div.className=this.boxClass,this.div.style.cssText="";var e=this.boxStyle;for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&amp;&amp;(this.div.style[t]=e[t]);if(this.div.style.webkitTransform="translateZ(0)",void 0!==this.div.style.opacity&amp;&amp;""!==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&amp;&amp;(this.div.style.zIndex=this.zIndex+""),this.div.style.overflow||(this.div.style.overflow="auto")}},e.prototype.getBoxWidths=function(){var e={top:0,bottom:0,left:0,right:0};if(!this.div)return e;if(document.defaultView){var t=this.div.ownerDocument,s=t&amp;&amp;t.defaultView?t.defaultView.getComputedStyle(this.div,""):null;s&amp;&amp;(e.top=parseInt(s.borderTopWidth||"",10)||0,e.bottom=parseInt(s.borderBottomWidth||"",10)||0,e.left=parseInt(s.borderLeftWidth||"",10)||0,e.right=parseInt(s.borderRightWidth||"",10)||0)}else if(document.documentElement.currentStyle){var n=this.div.currentStyle;n&amp;&amp;(e.top=parseInt(n.borderTopWidth||"",10)||0,e.bottom=parseInt(n.borderBottomWidth||"",10)||0,e.left=parseInt(n.borderLeftWidth||"",10)||0,e.right=parseInt(n.borderRightWidth||"",10)||0)}return e},e.prototype.onRemove=function(){this.div&amp;&amp;this.div.parentNode&amp;&amp;(this.div.parentNode.removeChild(this.div),this.div=null)},e.prototype.draw=function(){if(this.createInfoBoxDiv(),this.div){var e=this.getProjection().fromLatLngToDivPixel(this.position);null!==e&amp;&amp;(this.div.style.left=e.x+this.pixelOffset.width+"px",this.alignBottom?this.div.style.bottom=-(e.y+this.pixelOffset.height)+"px":this.div.style.top=e.y+this.pixelOffset.height+"px"),this.isHidden?this.div.style.visibility="hidden":this.div.style.visibility="visible"}},e.prototype.setOptions=function(e){void 0===e&amp;&amp;(e={}),void 0!==e.boxClass&amp;&amp;(this.boxClass=e.boxClass,this.setBoxStyle()),void 0!==e.boxStyle&amp;&amp;(this.boxStyle=e.boxStyle,this.setBoxStyle()),void 0!==e.content&amp;&amp;this.setContent(e.content),void 0!==e.disableAutoPan&amp;&amp;(this.disableAutoPan=e.disableAutoPan),void 0!==e.maxWidth&amp;&amp;(this.maxWidth=e.maxWidth),void 0!==e.pixelOffset&amp;&amp;(this.pixelOffset=e.pixelOffset),void 0!==e.alignBottom&amp;&amp;(this.alignBottom=e.alignBottom),void 0!==e.position&amp;&amp;this.setPosition(e.position),void 0!==e.zIndex&amp;&amp;this.setZIndex(e.zIndex),void 0!==e.closeBoxMargin&amp;&amp;(this.closeBoxMargin=e.closeBoxMargin),void 0!==e.closeBoxURL&amp;&amp;(this.closeBoxURL=e.closeBoxURL),void 0!==e.infoBoxClearance&amp;&amp;(this.infoBoxClearance=e.infoBoxClearance),void 0!==e.isHidden&amp;&amp;(this.isHidden=e.isHidden),void 0!==e.visible&amp;&amp;(this.isHidden=!e.visible),void 0!==e.enableEventPropagation&amp;&amp;(this.enableEventPropagation=e.enableEventPropagation),this.div&amp;&amp;this.draw()},e.prototype.setContent=function(e){this.content=e,this.div&amp;&amp;(this.closeListener&amp;&amp;(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.fixedWidthSet||(this.div.style.width=""),"string"==typeof e?this.div.innerHTML=this.getCloseBoxImg()+e:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(e)),this.fixedWidthSet||(this.div.style.width=this.div.offsetWidth+"px","string"==typeof e?this.div.innerHTML=this.getCloseBoxImg()+e:(this.div.innerHTML=this.getCloseBoxImg(),this.div.appendChild(e))),this.addClickHandler()),google.maps.event.trigger(this,"content_changed")},e.prototype.setPosition=function(e){this.position=e,this.div&amp;&amp;this.draw(),google.maps.event.trigger(this,"position_changed")},e.prototype.setVisible=function(e){this.isHidden=!e,this.div&amp;&amp;(this.div.style.visibility=this.isHidden?"hidden":"visible")},e.prototype.setZIndex=function(e){this.zIndex=e,this.div&amp;&amp;(this.div.style.zIndex=e+""),google.maps.event.trigger(this,"zindex_changed")},e.prototype.getContent=function(){return this.content},e.prototype.getPosition=function(){return this.position},e.prototype.getZIndex=function(){return this.zIndex},e.prototype.getVisible=function(){return null!=this.getMap()&amp;&amp;!this.isHidden},e.prototype.show=function(){this.isHidden=!1,this.div&amp;&amp;(this.div.style.visibility="visible")},e.prototype.hide=function(){this.isHidden=!0,this.div&amp;&amp;(this.div.style.visibility="hidden")},e.prototype.open=function(e,t){var s=this;t&amp;&amp;(this.position=t.getPosition(),this.moveListener=google.maps.event.addListener(t,"position_changed",function(){var e=t.getPosition();s.setPosition(e)}),this.mapListener=google.maps.event.addListener(t,"map_changed",function(){s.setMap(t.map)})),this.setMap(e),this.div&amp;&amp;this.panBox()},e.prototype.close=function(){if(this.closeListener&amp;&amp;(google.maps.event.removeListener(this.closeListener),this.closeListener=null),this.eventListeners){for(var e=0,t=this.eventListeners;e&lt;t.length;e++){var s=t[e];google.maps.event.removeListener(s)}this.eventListeners=null}this.moveListener&amp;&amp;(google.maps.event.removeListener(this.moveListener),this.moveListener=null),this.mapListener&amp;&amp;(google.maps.event.removeListener(this.mapListener),this.mapListener=null),this.contextListener&amp;&amp;(google.maps.event.removeListener(this.contextListener),this.contextListener=null),this.setMap(null)},e.prototype.extend=function(e,t){return(function(e){for(var t in e.prototype)Object.prototype.hasOwnProperty.call(this,t)||(this.prototype[t]=e.prototype[t]);return this}).apply(e,[t])},e}(),eC=["position"],ex=["position"];function eM(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function ek(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?eM(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):eM(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}var eO={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},eP={options(e,t){e.setOptions(t)},position(e,t){t instanceof google.maps.LatLng?e.setPosition(t):e.setPosition(new google.maps.LatLng(t.lat,t.lng))},visible(e,t){e.setVisible(t)},zIndex(e,t){e.setZIndex(t)}},eS={};(0,m.memo)(function(e){var{children:t,anchor:s,options:n,position:o,zIndex:i,onCloseClick:r,onDomReady:a,onContentChanged:l,onPositionChanged:u,onZindexChanged:p,onLoad:c,onUnmount:h}=e,d=(0,m.useContext)(E),[g,f]=(0,m.useState)(null),[y,L]=(0,m.useState)(null),[w,C]=(0,m.useState)(null),[x,M]=(0,m.useState)(null),[k,O]=(0,m.useState)(null),[P,S]=(0,m.useState)(null),j=(0,m.useRef)(null);return(0,m.useEffect)(()=&gt;{d&amp;&amp;null!==g&amp;&amp;(g.close(),s?g.open(d,s):g.getPosition()&amp;&amp;g.open(d))},[d,g,s]),(0,m.useEffect)(()=&gt;{n&amp;&amp;null!==g&amp;&amp;g.setOptions(n)},[g,n]),(0,m.useEffect)(()=&gt;{if(o&amp;&amp;null!==g){var e=o instanceof google.maps.LatLng?o:new google.maps.LatLng(o.lat,o.lng);g.setPosition(e)}},[o]),(0,m.useEffect)(()=&gt;{"number"==typeof i&amp;&amp;null!==g&amp;&amp;g.setZIndex(i)},[i]),(0,m.useEffect)(()=&gt;{g&amp;&amp;r&amp;&amp;(null!==y&amp;&amp;google.maps.event.removeListener(y),L(google.maps.event.addListener(g,"closeclick",r)))},[r]),(0,m.useEffect)(()=&gt;{g&amp;&amp;a&amp;&amp;(null!==w&amp;&amp;google.maps.event.removeListener(w),C(google.maps.event.addListener(g,"domready",a)))},[a]),(0,m.useEffect)(()=&gt;{g&amp;&amp;l&amp;&amp;(null!==x&amp;&amp;google.maps.event.removeListener(x),M(google.maps.event.addListener(g,"content_changed",l)))},[l]),(0,m.useEffect)(()=&gt;{g&amp;&amp;u&amp;&amp;(null!==k&amp;&amp;google.maps.event.removeListener(k),O(google.maps.event.addListener(g,"position_changed",u)))},[u]),(0,m.useEffect)(()=&gt;{g&amp;&amp;p&amp;&amp;(null!==P&amp;&amp;google.maps.event.removeListener(P),S(google.maps.event.addListener(g,"zindex_changed",p)))},[p]),(0,m.useEffect)(()=&gt;{if(d){var e,t=n||eS,{position:o}=t,i=U(t,eC);!o||o instanceof google.maps.LatLng||(e=new google.maps.LatLng(o.lat,o.lng));var m=new ew(ek(ek({},i),e?{position:e}:{}));j.current=document.createElement("div"),f(m),r&amp;&amp;L(google.maps.event.addListener(m,"closeclick",r)),a&amp;&amp;C(google.maps.event.addListener(m,"domready",a)),l&amp;&amp;M(google.maps.event.addListener(m,"content_changed",l)),u&amp;&amp;O(google.maps.event.addListener(m,"position_changed",u)),p&amp;&amp;S(google.maps.event.addListener(m,"zindex_changed",p)),m.setContent(j.current),s?m.open(d,s):m.getPosition()?m.open(d):b(!1,"You must provide either an anchor or a position prop for &lt;InfoBox&gt;."),c&amp;&amp;c(m)}return()=&gt;{null!==g&amp;&amp;(y&amp;&amp;google.maps.event.removeListener(y),x&amp;&amp;google.maps.event.removeListener(x),w&amp;&amp;google.maps.event.removeListener(w),k&amp;&amp;google.maps.event.removeListener(k),P&amp;&amp;google.maps.event.removeListener(P),h&amp;&amp;h(g),g.close())}},[]),j.current?(0,v.createPortal)(m.Children.only(t),j.current):null});class ej extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"containerElement",null),y(this,"state",{infoBox:null}),y(this,"open",(e,t)=&gt;{t?null!==this.context&amp;&amp;e.open(this.context,t):e.getPosition()?null!==this.context&amp;&amp;e.open(this.context):b(!1,"You must provide either an anchor or a position prop for &lt;InfoBox&gt;.")}),y(this,"setInfoBoxCallback",()=&gt;{null!==this.state.infoBox&amp;&amp;null!==this.containerElement&amp;&amp;(this.state.infoBox.setContent(this.containerElement),this.open(this.state.infoBox,this.props.anchor),this.props.onLoad&amp;&amp;this.props.onLoad(this.state.infoBox))})}componentDidMount(){var e,t=this.props.options||{},{position:s}=t,n=U(t,ex);!s||s instanceof google.maps.LatLng||(e=new google.maps.LatLng(s.lat,s.lng));var o=new ew(ek(ek({},n),e?{position:e}:{}));this.containerElement=document.createElement("div"),this.registeredEvents=x({updaterMap:eP,eventMap:eO,prevProps:{},nextProps:this.props,instance:o}),this.setState({infoBox:o},this.setInfoBoxCallback)}componentDidUpdate(e){var{infoBox:t}=this.state;null!==t&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:eP,eventMap:eO,prevProps:e,nextProps:this.props,instance:t}))}componentWillUnmount(){var{onUnmount:e}=this.props,{infoBox:t}=this.state;null!==t&amp;&amp;(e&amp;&amp;e(t),C(this.registeredEvents),t.close())}render(){return this.containerElement?(0,v.createPortal)(m.Children.only(this.props.children),this.containerElement):null}}y(ej,"contextType",E);var eI=L(h?c:(h=1,c=function e(t,s){if(t===s)return!0;if(t&amp;&amp;s&amp;&amp;"object"==typeof t&amp;&amp;"object"==typeof s){if(t.constructor!==s.constructor)return!1;if(Array.isArray(t)){if((n=t.length)!=s.length)return!1;for(o=n;0!=o--;)if(!e(t[o],s[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===s.source&amp;&amp;t.flags===s.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===s.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===s.toString();if((n=(i=Object.keys(t)).length)!==Object.keys(s).length)return!1;for(o=n;0!=o--;)if(!Object.prototype.hasOwnProperty.call(s,i[o]))return!1;for(o=n;0!=o--;){var n,o,i,r=i[o];if(!e(t[r],s[r]))return!1}return!0}return t!=t&amp;&amp;s!=s})),eD=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class e_{static from(e){if(!(e instanceof ArrayBuffer))throw Error("Data must be an instance of ArrayBuffer.");var[t,s]=new Uint8Array(e,0,2);if(219!==t)throw Error("Data does not appear to be in a KDBush format.");var n=s&gt;&gt;4;if(1!==n)throw Error("Got v".concat(n," data when expected v").concat(1,"."));var o=eD[15&amp;s];if(!o)throw Error("Unrecognized array type.");var[i]=new Uint16Array(e,2,1),[r]=new Uint32Array(e,4,1);return new e_(r,i,o,e)}constructor(e){var t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:64,s=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:Float64Array,n=arguments.length&gt;3?arguments[3]:void 0;if(isNaN(e)||e&lt;0)throw Error("Unpexpected numItems value: ".concat(e,"."));this.numItems=+e,this.nodeSize=Math.min(Math.max(+t,2),65535),this.ArrayType=s,this.IndexArrayType=e&lt;65536?Uint16Array:Uint32Array;var o=eD.indexOf(this.ArrayType),i=2*e*this.ArrayType.BYTES_PER_ELEMENT,r=e*this.IndexArrayType.BYTES_PER_ELEMENT,a=(8-r%8)%8;if(o&lt;0)throw Error("Unexpected typed array class: ".concat(s,"."));n&amp;&amp;n instanceof ArrayBuffer?(this.data=n,this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+r+a,2*e),this._pos=2*e,this._finished=!0):(this.data=new ArrayBuffer(8+i+r+a),this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+r+a,2*e),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+o]),new Uint16Array(this.data,2,1)[0]=t,new Uint32Array(this.data,4,1)[0]=e)}add(e,t){var s=this._pos&gt;&gt;1;return this.ids[s]=s,this.coords[this._pos++]=e,this.coords[this._pos++]=t,s}finish(){var e=this._pos&gt;&gt;1;if(e!==this.numItems)throw Error("Added ".concat(e," items when expected ").concat(this.numItems,"."));return function e(t,s,n,o,i,r){if(!(i-o&lt;=n)){var a=o+i&gt;&gt;1;(function e(t,s,n,o,i,r){for(;i&gt;o;){if(i-o&gt;600){var a=i-o+1,l=n-o+1,u=Math.log(a),p=.5*Math.exp(2*u/3),c=.5*Math.sqrt(u*p*(a-p)/a)*(l-a/2&lt;0?-1:1),h=Math.max(o,Math.floor(n-l*p/a+c)),d=Math.min(i,Math.floor(n+(a-l)*p/a+c));e(t,s,n,h,d,r)}var g=s[2*n+r],m=o,v=i;for(eB(t,s,o,n),s[2*i+r]&gt;g&amp;&amp;eB(t,s,o,i);m&lt;v;){for(eB(t,s,m,v),m++,v--;s[2*m+r]&lt;g;)m++;for(;s[2*v+r]&gt;g;)v--}s[2*o+r]===g?eB(t,s,o,v):eB(t,s,++v,i),v&lt;=n&amp;&amp;(o=v+1),n&lt;=v&amp;&amp;(i=v-1)}})(t,s,a,o,i,r),e(t,s,n,o,a-1,1-r),e(t,s,n,a+1,i,1-r)}}(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,t,s,n){if(!this._finished)throw Error("Data not yet indexed - call index.finish().");for(var{ids:o,coords:i,nodeSize:r}=this,a=[0,o.length-1,0],l=[];a.length;){var u=a.pop()||0,p=a.pop()||0,c=a.pop()||0;if(p-c&lt;=r){for(var h=c;h&lt;=p;h++){var d=i[2*h],g=i[2*h+1];d&gt;=e&amp;&amp;d&lt;=s&amp;&amp;g&gt;=t&amp;&amp;g&lt;=n&amp;&amp;l.push(o[h])}continue}var m=c+p&gt;&gt;1,v=i[2*m],f=i[2*m+1];v&gt;=e&amp;&amp;v&lt;=s&amp;&amp;f&gt;=t&amp;&amp;f&lt;=n&amp;&amp;l.push(o[m]),(0===u?e&lt;=v:t&lt;=f)&amp;&amp;(a.push(c),a.push(m-1),a.push(1-u)),(0===u?s&gt;=v:n&gt;=f)&amp;&amp;(a.push(m+1),a.push(p),a.push(1-u))}return l}within(e,t,s){if(!this._finished)throw Error("Data not yet indexed - call index.finish().");for(var{ids:n,coords:o,nodeSize:i}=this,r=[0,n.length-1,0],a=[],l=s*s;r.length;){var u=r.pop()||0,p=r.pop()||0,c=r.pop()||0;if(p-c&lt;=i){for(var h=c;h&lt;=p;h++)eR(o[2*h],o[2*h+1],e,t)&lt;=l&amp;&amp;a.push(n[h]);continue}var d=c+p&gt;&gt;1,g=o[2*d],m=o[2*d+1];eR(g,m,e,t)&lt;=l&amp;&amp;a.push(n[d]),(0===u?e-s&lt;=g:t-s&lt;=m)&amp;&amp;(r.push(c),r.push(d-1),r.push(1-u)),(0===u?e+s&gt;=g:t+s&gt;=m)&amp;&amp;(r.push(d+1),r.push(p),r.push(1-u))}return a}}function eB(e,t,s,n){eT(e,s,n),eT(t,2*s,2*n),eT(t,2*s+1,2*n+1)}function eT(e,t,s){var n=e[t];e[t]=e[s],e[s]=n}function eR(e,t,s,n){var o=e-s,i=t-n;return o*o+i*i}var ez={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:e=&gt;e},eA=Math.fround||(n=new Float32Array(1),e=&gt;(n[0]=+e,n[0]));class eU{constructor(e){this.options=Object.assign(Object.create(ez),e),this.trees=Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(e){var{log:t,minZoom:s,maxZoom:n}=this.options;t&amp;&amp;console.time("total time");var o="prepare ".concat(e.length," points");t&amp;&amp;console.time(o),this.points=e;for(var i=[],r=0;r&lt;e.length;r++){var a=e[r];if(a.geometry){var[l,u]=a.geometry.coordinates,p=eA(eW(l)),c=eA(eN(u));i.push(p,c,1/0,r,-1,1),this.options.reduce&amp;&amp;i.push(0)}}var h=this.trees[n+1]=this._createTree(i);t&amp;&amp;console.timeEnd(o);for(var d=n;d&gt;=s;d--){var g=+Date.now();h=this.trees[d]=this._createTree(this._cluster(h,d)),t&amp;&amp;console.log("z%d: %d clusters in %dms",d,h.numItems,+Date.now()-g)}return t&amp;&amp;console.timeEnd("total time"),this}getClusters(e,t){var s=((e[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,e[1])),o=180===e[2]?180:((e[2]+180)%360+360)%360-180,i=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]&gt;=360)s=-180,o=180;else if(s&gt;o){var r=this.getClusters([s,n,180,i],t),a=this.getClusters([-180,n,o,i],t);return r.concat(a)}var l=this.trees[this._limitZoom(t)],u=l.range(eW(s),eN(i),eW(o),eN(n)),p=l.data,c=[];for(var h of u){var d=this.stride*h;c.push(p[d+5]&gt;1?eZ(p,d,this.clusterProps):this.points[p[d+3]])}return c}getChildren(e){var t=this._getOriginId(e),s=this._getOriginZoom(e),n="No cluster with the specified id.",o=this.trees[s];if(!o)throw Error(n);var i=o.data;if(t*this.stride&gt;=i.length)throw Error(n);var r=this.options.radius/(this.options.extent*Math.pow(2,s-1)),a=i[t*this.stride],l=i[t*this.stride+1],u=o.within(a,l,r),p=[];for(var c of u){var h=c*this.stride;i[h+4]===e&amp;&amp;p.push(i[h+5]&gt;1?eZ(i,h,this.clusterProps):this.points[i[h+3]])}if(0===p.length)throw Error(n);return p}getLeaves(e,t,s){t=t||10,s=s||0;var n=[];return this._appendLeaves(n,e,t,s,0),n}getTile(e,t,s){var n=this.trees[this._limitZoom(e)],o=Math.pow(2,e),{extent:i,radius:r}=this.options,a=r/i,l=(s-a)/o,u=(s+1+a)/o,p={features:[]};return this._addTileFeatures(n.range((t-a)/o,l,(t+1+a)/o,u),n.data,t,s,o,p),0===t&amp;&amp;this._addTileFeatures(n.range(1-a/o,l,1,u),n.data,o,s,o,p),t===o-1&amp;&amp;this._addTileFeatures(n.range(0,l,a/o,u),n.data,-1,s,o,p),p.features.length?p:null}getClusterExpansionZoom(e){for(var t=this._getOriginZoom(e)-1;t&lt;=this.options.maxZoom;){var s=this.getChildren(e);if(t++,1!==s.length)break;e=s[0].properties.cluster_id}return t}_appendLeaves(e,t,s,n,o){for(var i of this.getChildren(t)){var r=i.properties;if(r&amp;&amp;r.cluster?o+r.point_count&lt;=n?o+=r.point_count:o=this._appendLeaves(e,r.cluster_id,s,n,o):o&lt;n?o++:e.push(i),e.length===s)break}return o}_createTree(e){for(var t=new e_(e.length/this.stride|0,this.options.nodeSize,Float32Array),s=0;s&lt;e.length;s+=this.stride)t.add(e[s],e[s+1]);return t.finish(),t.data=e,t}_addTileFeatures(e,t,s,n,o,i){for(var r of e){var a=r*this.stride,l=t[a+5]&gt;1,u=void 0,p=void 0,c=void 0;if(l)u=eV(t,a,this.clusterProps),p=t[a],c=t[a+1];else{var h=this.points[t[a+3]];u=h.properties;var[d,g]=h.geometry.coordinates;p=eW(d),c=eN(g)}var m={type:1,geometry:[[Math.round(this.options.extent*(p*o-s)),Math.round(this.options.extent*(c*o-n))]],tags:u},v=void 0;void 0!==(v=l||this.options.generateId?t[a+3]:this.points[t[a+3]].id)&amp;&amp;(m.id=v),i.features.push(m)}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){for(var{radius:s,extent:n,reduce:o,minPoints:i}=this.options,r=s/(n*Math.pow(2,t)),a=e.data,l=[],u=this.stride,p=0;p&lt;a.length;p+=u)if(!(a[p+2]&lt;=t)){a[p+2]=t;var c=a[p],h=a[p+1],d=e.within(a[p],a[p+1],r),g=a[p+5],m=g;for(var v of d){var f=v*u;a[f+2]&gt;t&amp;&amp;(m+=a[f+5])}if(m&gt;g&amp;&amp;m&gt;=i){var y=c*g,L=h*g,b=void 0,E=-1,w=((p/u|0)&lt;&lt;5)+(t+1)+this.points.length;for(var C of d){var x=C*u;if(!(a[x+2]&lt;=t)){a[x+2]=t;var M=a[x+5];y+=a[x]*M,L+=a[x+1]*M,a[x+4]=w,o&amp;&amp;(b||(b=this._map(a,p,!0),E=this.clusterProps.length,this.clusterProps.push(b)),o(b,this._map(a,x)))}}a[p+4]=w,l.push(y/m,L/m,1/0,w,-1,m),o&amp;&amp;l.push(E)}else{for(var k=0;k&lt;u;k++)l.push(a[p+k]);if(m&gt;1)for(var O of d){var P=O*u;if(!(a[P+2]&lt;=t)){a[P+2]=t;for(var S=0;S&lt;u;S++)l.push(a[P+S])}}}}return l}_getOriginId(e){return e-this.points.length&gt;&gt;5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,t,s){if(e[t+5]&gt;1){var n=this.clusterProps[e[t+6]];return s?Object.assign({},n):n}var o=this.points[e[t+3]].properties,i=this.options.map(o);return s&amp;&amp;i===o?Object.assign({},i):i}}function eZ(e,t,s){return{type:"Feature",id:e[t+3],properties:eV(e,t,s),geometry:{type:"Point",coordinates:[(e[t]-.5)*360,360*Math.atan(Math.exp((180-360*e[t+1])*Math.PI/180))/Math.PI-90]}}}function eV(e,t,s){var n=e[t+5],o=n&gt;=1e4?"".concat(Math.round(n/1e3),"k"):n&gt;=1e3?"".concat(Math.round(n/100)/10,"k"):n,i=e[t+6];return Object.assign(-1===i?{}:Object.assign({},s[i]),{cluster:!0,cluster_id:e[t+3],point_count:n,point_count_abbreviated:o})}function eW(e){return e/360+.5}function eN(e){var t=Math.sin(e*Math.PI/180),s=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return s&lt;0?0:s&gt;1?1:s}class eH{static isAdvancedMarkerAvailable(e){return google.maps.marker&amp;&amp;!0===e.getMapCapabilities().isAdvancedMarkersAvailable}static isAdvancedMarker(e){return google.maps.marker&amp;&amp;e instanceof google.maps.marker.AdvancedMarkerElement}static setMap(e,t){this.isAdvancedMarker(e)?e.map=t:e.setMap(t)}static getPosition(e){if(this.isAdvancedMarker(e)){if(e.position){if(e.position instanceof google.maps.LatLng)return e.position;if(e.position.lat&amp;&amp;e.position.lng)return new google.maps.LatLng(e.position.lat,e.position.lng)}return new google.maps.LatLng(null)}return e.getPosition()}static getVisible(e){return!!this.isAdvancedMarker(e)||e.getVisible()}}class eG{constructor(e){var{markers:t,position:s}=e;this.markers=t,s&amp;&amp;(s instanceof google.maps.LatLng?this._position=s:this._position=new google.maps.LatLng(s))}get bounds(){if(0!==this.markers.length||this._position){var e=new google.maps.LatLngBounds(this._position,this._position);for(var t of this.markers)e.extend(eH.getPosition(t));return e}}get position(){return this._position||this.bounds.getCenter()}get count(){return this.markers.filter(e=&gt;eH.getVisible(e)).length}push(e){this.markers.push(e)}delete(){this.marker&amp;&amp;(eH.setMap(this.marker,null),this.marker=void 0),this.markers.length=0}}var eF=(e,t,s)=&gt;{var{northEast:n,southWest:o}=eY(e,t);return eq(eK({northEast:n,southWest:o},s),t)},eY=(e,t)=&gt;({northEast:t.fromLatLngToDivPixel(e.getNorthEast()),southWest:t.fromLatLngToDivPixel(e.getSouthWest())}),eK=(e,t)=&gt;{var{northEast:s,southWest:n}=e;return s.x+=t,s.y-=t,n.x-=t,n.y+=t,{northEast:s,southWest:n}},eq=(e,t)=&gt;{var{northEast:s,southWest:n}=e,o=t.fromDivPixelToLatLng(n),i=t.fromDivPixelToLatLng(s);return new google.maps.LatLngBounds(o,i)};class eJ{constructor(e){var{maxZoom:t=16}=e;this.maxZoom=t}noop(e){var{markers:t}=e;return eX(t)}}var eX=e=&gt;e.map(e=&gt;new eG({position:eH.getPosition(e),markers:[e]}));class e$ extends eJ{constructor(e){var{maxZoom:t,radius:s=60}=e,n=function(e,t){var s={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&amp;&amp;0&gt;t.indexOf(n)&amp;&amp;(s[n]=e[n]);if(null!=e&amp;&amp;"function"==typeof Object.getOwnPropertySymbols)for(var o=0,n=Object.getOwnPropertySymbols(e);o&lt;n.length;o++)0&gt;t.indexOf(n[o])&amp;&amp;Object.prototype.propertyIsEnumerable.call(e,n[o])&amp;&amp;(s[n[o]]=e[n[o]]);return s}(e,["maxZoom","radius"]);super({maxZoom:t}),this.state={zoom:-1},this.superCluster=new eU(Object.assign({maxZoom:this.maxZoom,radius:s},n))}calculate(e){var t=!1,s={zoom:e.map.getZoom()};if(!eI(e.markers,this.markers)){t=!0,this.markers=[...e.markers];var n=this.markers.map(e=&gt;{var t=eH.getPosition(e);return{type:"Feature",geometry:{type:"Point",coordinates:[t.lng(),t.lat()]},properties:{marker:e}}});this.superCluster.load(n)}return!t&amp;&amp;(this.state.zoom&lt;=this.maxZoom||s.zoom&lt;=this.maxZoom)&amp;&amp;(t=!eI(this.state,s)),this.state=s,t&amp;&amp;(this.clusters=this.cluster(e)),{clusters:this.clusters,changed:t}}cluster(e){var{map:t}=e;return this.superCluster.getClusters([-180,-90,180,90],Math.round(t.getZoom())).map(e=&gt;this.transformCluster(e))}transformCluster(e){var{geometry:{coordinates:[t,s]},properties:n}=e;if(n.cluster)return new eG({markers:this.superCluster.getLeaves(n.cluster_id,1/0).map(e=&gt;e.properties.marker),position:{lat:s,lng:t}});var o=n.marker;return new eG({markers:[o],position:eH.getPosition(o)})}}class eQ{constructor(e,t){this.markers={sum:e.length};var s=t.map(e=&gt;e.count),n=s.reduce((e,t)=&gt;e+t,0);this.clusters={count:t.length,markers:{mean:n/t.length,sum:n,min:Math.min(...s),max:Math.max(...s)}}}}class e0{render(e,t,s){var{count:n,position:o}=e,i=n&gt;Math.max(10,t.clusters.markers.mean)?"#ff0000":"#0000ff",r='&lt;svg fill="'.concat(i,'" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 240 240" width="50" height="50"&gt;\n&lt;circle cx="120" cy="120" opacity=".6" r="70" /&gt;\n&lt;circle cx="120" cy="120" opacity=".3" r="90" /&gt;\n&lt;circle cx="120" cy="120" opacity=".2" r="110" /&gt;\n&lt;text x="50%" y="50%" style="fill:#fff" text-anchor="middle" font-size="50" dominant-baseline="middle" font-family="roboto,arial,sans-serif"&gt;').concat(n,"&lt;/text&gt;\n&lt;/svg&gt;"),a="Cluster of ".concat(n," markers"),l=Number(google.maps.Marker.MAX_ZINDEX)+n;if(eH.isAdvancedMarkerAvailable(s)){var u=new DOMParser().parseFromString(r,"image/svg+xml").documentElement;return u.setAttribute("transform","translate(0 25)"),new google.maps.marker.AdvancedMarkerElement({map:s,position:o,zIndex:l,title:a,content:u})}var p={position:o,zIndex:l,title:a,icon:{url:"data:image/svg+xml;base64,".concat(btoa(r)),anchor:new google.maps.Point(25,25)}};return new google.maps.Marker(p)}}class e1{constructor(){!function(e,t){for(var s in t.prototype)e.prototype[s]=t.prototype[s]}(e1,google.maps.OverlayView)}}(r=d||(d={})).CLUSTERING_BEGIN="clusteringbegin",r.CLUSTERING_END="clusteringend",r.CLUSTER_CLICK="click";var e2=(e,t,s)=&gt;{s.fitBounds(t.bounds)};class e3 extends e1{constructor(e){var{map:t,markers:s=[],algorithmOptions:n={},algorithm:o=new e$(n),renderer:i=new e0,onClusterClick:r=e2}=e;super(),this.markers=[...s],this.clusters=[],this.algorithm=o,this.renderer=i,this.onClusterClick=r,t&amp;&amp;this.setMap(t)}addMarker(e,t){!this.markers.includes(e)&amp;&amp;(this.markers.push(e),t||this.render())}addMarkers(e,t){e.forEach(e=&gt;{this.addMarker(e,!0)}),t||this.render()}removeMarker(e,t){var s=this.markers.indexOf(e);return -1!==s&amp;&amp;(eH.setMap(e,null),this.markers.splice(s,1),t||this.render(),!0)}removeMarkers(e,t){var s=!1;return e.forEach(e=&gt;{s=this.removeMarker(e,!0)||s}),s&amp;&amp;!t&amp;&amp;this.render(),s}clearMarkers(e){this.markers.length=0,e||this.render()}render(){var e=this.getMap();if(e instanceof google.maps.Map&amp;&amp;e.getProjection()){google.maps.event.trigger(this,d.CLUSTERING_BEGIN,this);var{clusters:t,changed:s}=this.algorithm.calculate({markers:this.markers,map:e,mapCanvasProjection:this.getProjection()});if(s||void 0==s){var n=new Set;for(var o of t)1==o.markers.length&amp;&amp;n.add(o.markers[0]);var i=[];for(var r of this.clusters)null!=r.marker&amp;&amp;(1==r.markers.length?n.has(r.marker)||eH.setMap(r.marker,null):i.push(r.marker));this.clusters=t,this.renderClusters(),requestAnimationFrame(()=&gt;i.forEach(e=&gt;eH.setMap(e,null)))}google.maps.event.trigger(this,d.CLUSTERING_END,this)}}onAdd(){this.idleListener=this.getMap().addListener("idle",this.render.bind(this)),this.render()}onRemove(){google.maps.event.removeListener(this.idleListener),this.reset()}reset(){this.markers.forEach(e=&gt;eH.setMap(e,null)),this.clusters.forEach(e=&gt;e.delete()),this.clusters=[]}renderClusters(){var e=new eQ(this.markers,this.clusters),t=this.getMap();this.clusters.forEach(s=&gt;{1===s.markers.length?s.marker=s.markers[0]:(s.marker=this.renderer.render(s,e,t),s.markers.forEach(e=&gt;eH.setMap(e,null)),this.onClusterClick&amp;&amp;s.marker.addListener("click",e=&gt;{google.maps.event.trigger(this,d.CLUSTER_CLICK,s),this.onClusterClick(e,s,t)})),eH.setMap(s.marker,t)})}}function e8(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function e5(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?e8(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):e8(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}(0,m.memo)(function(e){var{children:t,options:s}=e,n=function(e){var t,s=(b(!!m.useContext,"useGoogleMap is React hook and requires React version 16.8+"),b(!!(t=(0,m.useContext)(E)),"useGoogleMap needs a GoogleMap available up in the tree"),t),[n,o]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{s&amp;&amp;null===n&amp;&amp;o(new e3(e5(e5({},e),{},{map:s})))},[s]),n}(s);return null!==n?t(n):null});var e6={onCloseClick:"closeclick",onContentChanged:"content_changed",onDomReady:"domready",onPositionChanged:"position_changed",onZindexChanged:"zindex_changed"},e4={options(e,t){e.setOptions(t)},position(e,t){e.setPosition(t)},zIndex(e,t){e.setZIndex(t)}};(0,m.memo)(function(e){var{children:t,anchor:s,options:n,position:o,zIndex:i,onCloseClick:r,onDomReady:a,onContentChanged:l,onPositionChanged:u,onZindexChanged:p,onLoad:c,onUnmount:h}=e,d=(0,m.useContext)(E),[g,f]=(0,m.useState)(null),[y,L]=(0,m.useState)(null),[w,C]=(0,m.useState)(null),[x,M]=(0,m.useState)(null),[k,O]=(0,m.useState)(null),[P,S]=(0,m.useState)(null),j=(0,m.useRef)(null);return(0,m.useEffect)(()=&gt;{null!==g&amp;&amp;(g.close(),s?g.open(d,s):g.getPosition()&amp;&amp;g.open(d))},[d,g,s]),(0,m.useEffect)(()=&gt;{n&amp;&amp;null!==g&amp;&amp;g.setOptions(n)},[g,n]),(0,m.useEffect)(()=&gt;{o&amp;&amp;null!==g&amp;&amp;g.setPosition(o)},[o]),(0,m.useEffect)(()=&gt;{"number"==typeof i&amp;&amp;null!==g&amp;&amp;g.setZIndex(i)},[i]),(0,m.useEffect)(()=&gt;{g&amp;&amp;r&amp;&amp;(null!==y&amp;&amp;google.maps.event.removeListener(y),L(google.maps.event.addListener(g,"closeclick",r)))},[r]),(0,m.useEffect)(()=&gt;{g&amp;&amp;a&amp;&amp;(null!==w&amp;&amp;google.maps.event.removeListener(w),C(google.maps.event.addListener(g,"domready",a)))},[a]),(0,m.useEffect)(()=&gt;{g&amp;&amp;l&amp;&amp;(null!==x&amp;&amp;google.maps.event.removeListener(x),M(google.maps.event.addListener(g,"content_changed",l)))},[l]),(0,m.useEffect)(()=&gt;{g&amp;&amp;u&amp;&amp;(null!==k&amp;&amp;google.maps.event.removeListener(k),O(google.maps.event.addListener(g,"position_changed",u)))},[u]),(0,m.useEffect)(()=&gt;{g&amp;&amp;p&amp;&amp;(null!==P&amp;&amp;google.maps.event.removeListener(P),S(google.maps.event.addListener(g,"zindex_changed",p)))},[p]),(0,m.useEffect)(()=&gt;{var e=new google.maps.InfoWindow(n);return f(e),j.current=document.createElement("div"),r&amp;&amp;L(google.maps.event.addListener(e,"closeclick",r)),a&amp;&amp;C(google.maps.event.addListener(e,"domready",a)),l&amp;&amp;M(google.maps.event.addListener(e,"content_changed",l)),u&amp;&amp;O(google.maps.event.addListener(e,"position_changed",u)),p&amp;&amp;S(google.maps.event.addListener(e,"zindex_changed",p)),e.setContent(j.current),o&amp;&amp;e.setPosition(o),i&amp;&amp;e.setZIndex(i),s?e.open(d,s):e.getPosition()?e.open(d):b(!1,"You must provide either an anchor (typically render it inside a &lt;Marker&gt;) or a position props for &lt;InfoWindow&gt;."),c&amp;&amp;c(e),()=&gt;{y&amp;&amp;google.maps.event.removeListener(y),x&amp;&amp;google.maps.event.removeListener(x),w&amp;&amp;google.maps.event.removeListener(w),k&amp;&amp;google.maps.event.removeListener(k),P&amp;&amp;google.maps.event.removeListener(P),h&amp;&amp;h(e),e.close()}},[]),j.current?(0,v.createPortal)(m.Children.only(t),j.current):null});class e9 extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"containerElement",null),y(this,"state",{infoWindow:null}),y(this,"open",(e,t)=&gt;{t?e.open(this.context,t):e.getPosition()?e.open(this.context):b(!1,"You must provide either an anchor (typically render it inside a &lt;Marker&gt;) or a position props for &lt;InfoWindow&gt;.")}),y(this,"setInfoWindowCallback",()=&gt;{null!==this.state.infoWindow&amp;&amp;null!==this.containerElement&amp;&amp;(this.state.infoWindow.setContent(this.containerElement),this.open(this.state.infoWindow,this.props.anchor),this.props.onLoad&amp;&amp;this.props.onLoad(this.state.infoWindow))})}componentDidMount(){var e=new google.maps.InfoWindow(this.props.options);this.containerElement=document.createElement("div"),this.registeredEvents=x({updaterMap:e4,eventMap:e6,prevProps:{},nextProps:this.props,instance:e}),this.setState(()=&gt;({infoWindow:e}),this.setInfoWindowCallback)}componentDidUpdate(e){null!==this.state.infoWindow&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:e4,eventMap:e6,prevProps:e,nextProps:this.props,instance:this.state.infoWindow}))}componentWillUnmount(){null!==this.state.infoWindow&amp;&amp;(C(this.registeredEvents),this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.infoWindow),this.state.infoWindow.close())}render(){return this.containerElement?(0,v.createPortal)(m.Children.only(this.props.children),this.containerElement):null}}function e7(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function te(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?e7(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):e7(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(e9,"contextType",E);var tt={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},ts={draggable(e,t){e.setDraggable(t)},editable(e,t){e.setEditable(t)},map(e,t){e.setMap(t)},options(e,t){e.setOptions(t)},path(e,t){e.setPath(t)},visible(e,t){e.setVisible(t)}},tn={};(0,m.memo)(function(e){var{options:t,draggable:s,editable:n,visible:o,path:i,onDblClick:r,onDragEnd:a,onDragStart:l,onMouseDown:u,onMouseMove:p,onMouseOut:c,onMouseOver:h,onMouseUp:d,onRightClick:g,onClick:v,onDrag:f,onLoad:y,onUnmount:L}=e,b=(0,m.useContext)(E),[w,C]=(0,m.useState)(null),[x,M]=(0,m.useState)(null),[k,O]=(0,m.useState)(null),[P,S]=(0,m.useState)(null),[j,I]=(0,m.useState)(null),[D,_]=(0,m.useState)(null),[B,T]=(0,m.useState)(null),[R,z]=(0,m.useState)(null),[A,U]=(0,m.useState)(null),[Z,V]=(0,m.useState)(null),[W,N]=(0,m.useState)(null),[H,G]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==w&amp;&amp;w.setMap(b)},[b]),(0,m.useEffect)(()=&gt;{void 0!==t&amp;&amp;null!==w&amp;&amp;w.setOptions(t)},[w,t]),(0,m.useEffect)(()=&gt;{void 0!==s&amp;&amp;null!==w&amp;&amp;w.setDraggable(s)},[w,s]),(0,m.useEffect)(()=&gt;{void 0!==n&amp;&amp;null!==w&amp;&amp;w.setEditable(n)},[w,n]),(0,m.useEffect)(()=&gt;{void 0!==o&amp;&amp;null!==w&amp;&amp;w.setVisible(o)},[w,o]),(0,m.useEffect)(()=&gt;{void 0!==i&amp;&amp;null!==w&amp;&amp;w.setPath(i)},[w,i]),(0,m.useEffect)(()=&gt;{w&amp;&amp;r&amp;&amp;(null!==x&amp;&amp;google.maps.event.removeListener(x),M(google.maps.event.addListener(w,"dblclick",r)))},[r]),(0,m.useEffect)(()=&gt;{w&amp;&amp;a&amp;&amp;(null!==k&amp;&amp;google.maps.event.removeListener(k),O(google.maps.event.addListener(w,"dragend",a)))},[a]),(0,m.useEffect)(()=&gt;{w&amp;&amp;l&amp;&amp;(null!==P&amp;&amp;google.maps.event.removeListener(P),S(google.maps.event.addListener(w,"dragstart",l)))},[l]),(0,m.useEffect)(()=&gt;{w&amp;&amp;u&amp;&amp;(null!==j&amp;&amp;google.maps.event.removeListener(j),I(google.maps.event.addListener(w,"mousedown",u)))},[u]),(0,m.useEffect)(()=&gt;{w&amp;&amp;p&amp;&amp;(null!==D&amp;&amp;google.maps.event.removeListener(D),_(google.maps.event.addListener(w,"mousemove",p)))},[p]),(0,m.useEffect)(()=&gt;{w&amp;&amp;c&amp;&amp;(null!==B&amp;&amp;google.maps.event.removeListener(B),T(google.maps.event.addListener(w,"mouseout",c)))},[c]),(0,m.useEffect)(()=&gt;{w&amp;&amp;h&amp;&amp;(null!==R&amp;&amp;google.maps.event.removeListener(R),z(google.maps.event.addListener(w,"mouseover",h)))},[h]),(0,m.useEffect)(()=&gt;{w&amp;&amp;d&amp;&amp;(null!==A&amp;&amp;google.maps.event.removeListener(A),U(google.maps.event.addListener(w,"mouseup",d)))},[d]),(0,m.useEffect)(()=&gt;{w&amp;&amp;g&amp;&amp;(null!==Z&amp;&amp;google.maps.event.removeListener(Z),V(google.maps.event.addListener(w,"rightclick",g)))},[g]),(0,m.useEffect)(()=&gt;{w&amp;&amp;v&amp;&amp;(null!==W&amp;&amp;google.maps.event.removeListener(W),N(google.maps.event.addListener(w,"click",v)))},[v]),(0,m.useEffect)(()=&gt;{w&amp;&amp;f&amp;&amp;(null!==H&amp;&amp;google.maps.event.removeListener(H),G(google.maps.event.addListener(w,"drag",f)))},[f]),(0,m.useEffect)(()=&gt;{var e=new google.maps.Polyline(te(te({},t||tn),{},{map:b}));return i&amp;&amp;e.setPath(i),void 0!==o&amp;&amp;e.setVisible(o),void 0!==n&amp;&amp;e.setEditable(n),void 0!==s&amp;&amp;e.setDraggable(s),r&amp;&amp;M(google.maps.event.addListener(e,"dblclick",r)),a&amp;&amp;O(google.maps.event.addListener(e,"dragend",a)),l&amp;&amp;S(google.maps.event.addListener(e,"dragstart",l)),u&amp;&amp;I(google.maps.event.addListener(e,"mousedown",u)),p&amp;&amp;_(google.maps.event.addListener(e,"mousemove",p)),c&amp;&amp;T(google.maps.event.addListener(e,"mouseout",c)),h&amp;&amp;z(google.maps.event.addListener(e,"mouseover",h)),d&amp;&amp;U(google.maps.event.addListener(e,"mouseup",d)),g&amp;&amp;V(google.maps.event.addListener(e,"rightclick",g)),v&amp;&amp;N(google.maps.event.addListener(e,"click",v)),f&amp;&amp;G(google.maps.event.addListener(e,"drag",f)),C(e),y&amp;&amp;y(e),()=&gt;{null!==x&amp;&amp;google.maps.event.removeListener(x),null!==k&amp;&amp;google.maps.event.removeListener(k),null!==P&amp;&amp;google.maps.event.removeListener(P),null!==j&amp;&amp;google.maps.event.removeListener(j),null!==D&amp;&amp;google.maps.event.removeListener(D),null!==B&amp;&amp;google.maps.event.removeListener(B),null!==R&amp;&amp;google.maps.event.removeListener(R),null!==A&amp;&amp;google.maps.event.removeListener(A),null!==Z&amp;&amp;google.maps.event.removeListener(Z),null!==W&amp;&amp;google.maps.event.removeListener(W),L&amp;&amp;L(e),e.setMap(null)}},[]),null});class to extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{polyline:null}),y(this,"setPolylineCallback",()=&gt;{null!==this.state.polyline&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.polyline)})}componentDidMount(){var e=new google.maps.Polyline(te(te({},this.props.options),{},{map:this.context}));this.registeredEvents=x({updaterMap:ts,eventMap:tt,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{polyline:e}},this.setPolylineCallback)}componentDidUpdate(e){null!==this.state.polyline&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:ts,eventMap:tt,prevProps:e,nextProps:this.props,instance:this.state.polyline}))}componentWillUnmount(){null!==this.state.polyline&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.polyline),C(this.registeredEvents),this.state.polyline.setMap(null))}render(){return null}}function ti(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tr(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?ti(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):ti(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(to,"contextType",E);var ta={onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},tl={draggable(e,t){e.setDraggable(t)},editable(e,t){e.setEditable(t)},map(e,t){e.setMap(t)},options(e,t){e.setOptions(t)},path(e,t){e.setPath(t)},paths(e,t){e.setPaths(t)},visible(e,t){e.setVisible(t)}};(0,m.memo)(function(e){var{options:t,draggable:s,editable:n,visible:o,path:i,paths:r,onDblClick:a,onDragEnd:l,onDragStart:u,onMouseDown:p,onMouseMove:c,onMouseOut:h,onMouseOver:d,onMouseUp:g,onRightClick:v,onClick:f,onDrag:y,onLoad:L,onUnmount:b,onEdit:w}=e,C=(0,m.useContext)(E),[x,M]=(0,m.useState)(null),[k,O]=(0,m.useState)(null),[P,S]=(0,m.useState)(null),[j,I]=(0,m.useState)(null),[D,_]=(0,m.useState)(null),[B,T]=(0,m.useState)(null),[R,z]=(0,m.useState)(null),[A,U]=(0,m.useState)(null),[Z,V]=(0,m.useState)(null),[W,N]=(0,m.useState)(null),[H,G]=(0,m.useState)(null),[F,Y]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==x&amp;&amp;x.setMap(C)},[C]),(0,m.useEffect)(()=&gt;{void 0!==t&amp;&amp;null!==x&amp;&amp;x.setOptions(t)},[x,t]),(0,m.useEffect)(()=&gt;{void 0!==s&amp;&amp;null!==x&amp;&amp;x.setDraggable(s)},[x,s]),(0,m.useEffect)(()=&gt;{void 0!==n&amp;&amp;null!==x&amp;&amp;x.setEditable(n)},[x,n]),(0,m.useEffect)(()=&gt;{void 0!==o&amp;&amp;null!==x&amp;&amp;x.setVisible(o)},[x,o]),(0,m.useEffect)(()=&gt;{void 0!==i&amp;&amp;null!==x&amp;&amp;x.setPath(i)},[x,i]),(0,m.useEffect)(()=&gt;{void 0!==r&amp;&amp;null!==x&amp;&amp;x.setPaths(r)},[x,r]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof a&amp;&amp;(null!==k&amp;&amp;google.maps.event.removeListener(k),O(google.maps.event.addListener(x,"dblclick",a)))},[a]),(0,m.useEffect)(()=&gt;{x&amp;&amp;(google.maps.event.addListener(x.getPath(),"insert_at",()=&gt;{null==w||w(x)}),google.maps.event.addListener(x.getPath(),"set_at",()=&gt;{null==w||w(x)}),google.maps.event.addListener(x.getPath(),"remove_at",()=&gt;{null==w||w(x)}))},[x,w]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof l&amp;&amp;(null!==P&amp;&amp;google.maps.event.removeListener(P),S(google.maps.event.addListener(x,"dragend",l)))},[l]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof u&amp;&amp;(null!==j&amp;&amp;google.maps.event.removeListener(j),I(google.maps.event.addListener(x,"dragstart",u)))},[u]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof p&amp;&amp;(null!==D&amp;&amp;google.maps.event.removeListener(D),_(google.maps.event.addListener(x,"mousedown",p)))},[p]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof c&amp;&amp;(null!==B&amp;&amp;google.maps.event.removeListener(B),T(google.maps.event.addListener(x,"mousemove",c)))},[c]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof h&amp;&amp;(null!==R&amp;&amp;google.maps.event.removeListener(R),z(google.maps.event.addListener(x,"mouseout",h)))},[h]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof d&amp;&amp;(null!==A&amp;&amp;google.maps.event.removeListener(A),U(google.maps.event.addListener(x,"mouseover",d)))},[d]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof g&amp;&amp;(null!==Z&amp;&amp;google.maps.event.removeListener(Z),V(google.maps.event.addListener(x,"mouseup",g)))},[g]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof v&amp;&amp;(null!==W&amp;&amp;google.maps.event.removeListener(W),N(google.maps.event.addListener(x,"rightclick",v)))},[v]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof f&amp;&amp;(null!==H&amp;&amp;google.maps.event.removeListener(H),G(google.maps.event.addListener(x,"click",f)))},[f]),(0,m.useEffect)(()=&gt;{x&amp;&amp;"function"==typeof y&amp;&amp;(null!==F&amp;&amp;google.maps.event.removeListener(F),Y(google.maps.event.addListener(x,"drag",y)))},[y]),(0,m.useEffect)(()=&gt;{var e=new google.maps.Polygon(tr(tr({},t),{},{map:C}));return i&amp;&amp;e.setPath(i),r&amp;&amp;e.setPaths(r),void 0!==o&amp;&amp;e.setVisible(o),void 0!==n&amp;&amp;e.setEditable(n),void 0!==s&amp;&amp;e.setDraggable(s),a&amp;&amp;O(google.maps.event.addListener(e,"dblclick",a)),l&amp;&amp;S(google.maps.event.addListener(e,"dragend",l)),u&amp;&amp;I(google.maps.event.addListener(e,"dragstart",u)),p&amp;&amp;_(google.maps.event.addListener(e,"mousedown",p)),c&amp;&amp;T(google.maps.event.addListener(e,"mousemove",c)),h&amp;&amp;z(google.maps.event.addListener(e,"mouseout",h)),d&amp;&amp;U(google.maps.event.addListener(e,"mouseover",d)),g&amp;&amp;V(google.maps.event.addListener(e,"mouseup",g)),v&amp;&amp;N(google.maps.event.addListener(e,"rightclick",v)),f&amp;&amp;G(google.maps.event.addListener(e,"click",f)),y&amp;&amp;Y(google.maps.event.addListener(e,"drag",y)),M(e),L&amp;&amp;L(e),()=&gt;{null!==k&amp;&amp;google.maps.event.removeListener(k),null!==P&amp;&amp;google.maps.event.removeListener(P),null!==j&amp;&amp;google.maps.event.removeListener(j),null!==D&amp;&amp;google.maps.event.removeListener(D),null!==B&amp;&amp;google.maps.event.removeListener(B),null!==R&amp;&amp;google.maps.event.removeListener(R),null!==A&amp;&amp;google.maps.event.removeListener(A),null!==Z&amp;&amp;google.maps.event.removeListener(Z),null!==W&amp;&amp;google.maps.event.removeListener(W),null!==H&amp;&amp;google.maps.event.removeListener(H),b&amp;&amp;b(e),e.setMap(null)}},[]),null});class tu extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[])}componentDidMount(){var e=this.props.options||{};this.polygon=new google.maps.Polygon(e),this.polygon.setMap(this.context),this.registeredEvents=x({updaterMap:tl,eventMap:ta,prevProps:{},nextProps:this.props,instance:this.polygon}),this.props.onLoad&amp;&amp;this.props.onLoad(this.polygon)}componentDidUpdate(e){this.polygon&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:tl,eventMap:ta,prevProps:e,nextProps:this.props,instance:this.polygon}))}componentWillUnmount(){this.polygon&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.polygon),C(this.registeredEvents),this.polygon&amp;&amp;this.polygon.setMap(null))}render(){return null}}function tp(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tc(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?tp(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):tp(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(tu,"contextType",E);var th={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"},td={bounds(e,t){e.setBounds(t)},draggable(e,t){e.setDraggable(t)},editable(e,t){e.setEditable(t)},map(e,t){e.setMap(t)},options(e,t){e.setOptions(t)},visible(e,t){e.setVisible(t)}};(0,m.memo)(function(e){var{options:t,bounds:s,draggable:n,editable:o,visible:i,onDblClick:r,onDragEnd:a,onDragStart:l,onMouseDown:u,onMouseMove:p,onMouseOut:c,onMouseOver:h,onMouseUp:d,onRightClick:g,onClick:v,onDrag:f,onBoundsChanged:y,onLoad:L,onUnmount:b}=e,w=(0,m.useContext)(E),[C,x]=(0,m.useState)(null),[M,k]=(0,m.useState)(null),[O,P]=(0,m.useState)(null),[S,j]=(0,m.useState)(null),[I,D]=(0,m.useState)(null),[_,B]=(0,m.useState)(null),[T,R]=(0,m.useState)(null),[z,A]=(0,m.useState)(null),[U,Z]=(0,m.useState)(null),[V,W]=(0,m.useState)(null),[N,H]=(0,m.useState)(null),[G,F]=(0,m.useState)(null),[Y,K]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==C&amp;&amp;C.setMap(w)},[w]),(0,m.useEffect)(()=&gt;{void 0!==t&amp;&amp;null!==C&amp;&amp;C.setOptions(t)},[C,t]),(0,m.useEffect)(()=&gt;{void 0!==n&amp;&amp;null!==C&amp;&amp;C.setDraggable(n)},[C,n]),(0,m.useEffect)(()=&gt;{void 0!==o&amp;&amp;null!==C&amp;&amp;C.setEditable(o)},[C,o]),(0,m.useEffect)(()=&gt;{void 0!==i&amp;&amp;null!==C&amp;&amp;C.setVisible(i)},[C,i]),(0,m.useEffect)(()=&gt;{void 0!==s&amp;&amp;null!==C&amp;&amp;C.setBounds(s)},[C,s]),(0,m.useEffect)(()=&gt;{C&amp;&amp;r&amp;&amp;(null!==M&amp;&amp;google.maps.event.removeListener(M),k(google.maps.event.addListener(C,"dblclick",r)))},[r]),(0,m.useEffect)(()=&gt;{C&amp;&amp;a&amp;&amp;(null!==O&amp;&amp;google.maps.event.removeListener(O),P(google.maps.event.addListener(C,"dragend",a)))},[a]),(0,m.useEffect)(()=&gt;{C&amp;&amp;l&amp;&amp;(null!==S&amp;&amp;google.maps.event.removeListener(S),j(google.maps.event.addListener(C,"dragstart",l)))},[l]),(0,m.useEffect)(()=&gt;{C&amp;&amp;u&amp;&amp;(null!==I&amp;&amp;google.maps.event.removeListener(I),D(google.maps.event.addListener(C,"mousedown",u)))},[u]),(0,m.useEffect)(()=&gt;{C&amp;&amp;p&amp;&amp;(null!==_&amp;&amp;google.maps.event.removeListener(_),B(google.maps.event.addListener(C,"mousemove",p)))},[p]),(0,m.useEffect)(()=&gt;{C&amp;&amp;c&amp;&amp;(null!==T&amp;&amp;google.maps.event.removeListener(T),R(google.maps.event.addListener(C,"mouseout",c)))},[c]),(0,m.useEffect)(()=&gt;{C&amp;&amp;h&amp;&amp;(null!==z&amp;&amp;google.maps.event.removeListener(z),A(google.maps.event.addListener(C,"mouseover",h)))},[h]),(0,m.useEffect)(()=&gt;{C&amp;&amp;d&amp;&amp;(null!==U&amp;&amp;google.maps.event.removeListener(U),Z(google.maps.event.addListener(C,"mouseup",d)))},[d]),(0,m.useEffect)(()=&gt;{C&amp;&amp;g&amp;&amp;(null!==V&amp;&amp;google.maps.event.removeListener(V),W(google.maps.event.addListener(C,"rightclick",g)))},[g]),(0,m.useEffect)(()=&gt;{C&amp;&amp;v&amp;&amp;(null!==N&amp;&amp;google.maps.event.removeListener(N),H(google.maps.event.addListener(C,"click",v)))},[v]),(0,m.useEffect)(()=&gt;{C&amp;&amp;f&amp;&amp;(null!==G&amp;&amp;google.maps.event.removeListener(G),F(google.maps.event.addListener(C,"drag",f)))},[f]),(0,m.useEffect)(()=&gt;{C&amp;&amp;y&amp;&amp;(null!==Y&amp;&amp;google.maps.event.removeListener(Y),K(google.maps.event.addListener(C,"bounds_changed",y)))},[y]),(0,m.useEffect)(()=&gt;{var e=new google.maps.Rectangle(tc(tc({},t),{},{map:w}));return void 0!==i&amp;&amp;e.setVisible(i),void 0!==o&amp;&amp;e.setEditable(o),void 0!==n&amp;&amp;e.setDraggable(n),void 0!==s&amp;&amp;e.setBounds(s),r&amp;&amp;k(google.maps.event.addListener(e,"dblclick",r)),a&amp;&amp;P(google.maps.event.addListener(e,"dragend",a)),l&amp;&amp;j(google.maps.event.addListener(e,"dragstart",l)),u&amp;&amp;D(google.maps.event.addListener(e,"mousedown",u)),p&amp;&amp;B(google.maps.event.addListener(e,"mousemove",p)),c&amp;&amp;R(google.maps.event.addListener(e,"mouseout",c)),h&amp;&amp;A(google.maps.event.addListener(e,"mouseover",h)),d&amp;&amp;Z(google.maps.event.addListener(e,"mouseup",d)),g&amp;&amp;W(google.maps.event.addListener(e,"rightclick",g)),v&amp;&amp;H(google.maps.event.addListener(e,"click",v)),f&amp;&amp;F(google.maps.event.addListener(e,"drag",f)),y&amp;&amp;K(google.maps.event.addListener(e,"bounds_changed",y)),x(e),L&amp;&amp;L(e),()=&gt;{null!==M&amp;&amp;google.maps.event.removeListener(M),null!==O&amp;&amp;google.maps.event.removeListener(O),null!==S&amp;&amp;google.maps.event.removeListener(S),null!==I&amp;&amp;google.maps.event.removeListener(I),null!==_&amp;&amp;google.maps.event.removeListener(_),null!==T&amp;&amp;google.maps.event.removeListener(T),null!==z&amp;&amp;google.maps.event.removeListener(z),null!==U&amp;&amp;google.maps.event.removeListener(U),null!==V&amp;&amp;google.maps.event.removeListener(V),null!==N&amp;&amp;google.maps.event.removeListener(N),null!==G&amp;&amp;google.maps.event.removeListener(G),null!==Y&amp;&amp;google.maps.event.removeListener(Y),b&amp;&amp;b(e),e.setMap(null)}},[]),null});class tg extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{rectangle:null}),y(this,"setRectangleCallback",()=&gt;{null!==this.state.rectangle&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.rectangle)})}componentDidMount(){var e=new google.maps.Rectangle(tc(tc({},this.props.options),{},{map:this.context}));this.registeredEvents=x({updaterMap:td,eventMap:th,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{rectangle:e}},this.setRectangleCallback)}componentDidUpdate(e){null!==this.state.rectangle&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:td,eventMap:th,prevProps:e,nextProps:this.props,instance:this.state.rectangle}))}componentWillUnmount(){null!==this.state.rectangle&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.rectangle),C(this.registeredEvents),this.state.rectangle.setMap(null))}render(){return null}}function tm(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tv(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?tm(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):tm(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(tg,"contextType",E);var tf={onCenterChanged:"center_changed",onRadiusChanged:"radius_changed",onClick:"click",onDblClick:"dblclick",onDrag:"drag",onDragEnd:"dragend",onDragStart:"dragstart",onMouseDown:"mousedown",onMouseMove:"mousemove",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick"},ty={center(e,t){e.setCenter(t)},draggable(e,t){e.setDraggable(t)},editable(e,t){e.setEditable(t)},map(e,t){e.setMap(t)},options(e,t){e.setOptions(t)},radius(e,t){e.setRadius(t)},visible(e,t){e.setVisible(t)}},tL={};(0,m.memo)(function(e){var{options:t,center:s,radius:n,draggable:o,editable:i,visible:r,onDblClick:a,onDragEnd:l,onDragStart:u,onMouseDown:p,onMouseMove:c,onMouseOut:h,onMouseOver:d,onMouseUp:g,onRightClick:v,onClick:f,onDrag:y,onCenterChanged:L,onRadiusChanged:b,onLoad:w,onUnmount:C}=e,x=(0,m.useContext)(E),[M,k]=(0,m.useState)(null),[O,P]=(0,m.useState)(null),[S,j]=(0,m.useState)(null),[I,D]=(0,m.useState)(null),[_,B]=(0,m.useState)(null),[T,R]=(0,m.useState)(null),[z,A]=(0,m.useState)(null),[U,Z]=(0,m.useState)(null),[V,W]=(0,m.useState)(null),[N,H]=(0,m.useState)(null),[G,F]=(0,m.useState)(null),[Y,K]=(0,m.useState)(null),[q,J]=(0,m.useState)(null),[X,$]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==M&amp;&amp;M.setMap(x)},[x]),(0,m.useEffect)(()=&gt;{void 0!==t&amp;&amp;null!==M&amp;&amp;M.setOptions(t)},[M,t]),(0,m.useEffect)(()=&gt;{void 0!==o&amp;&amp;null!==M&amp;&amp;M.setDraggable(o)},[M,o]),(0,m.useEffect)(()=&gt;{void 0!==i&amp;&amp;null!==M&amp;&amp;M.setEditable(i)},[M,i]),(0,m.useEffect)(()=&gt;{void 0!==r&amp;&amp;null!==M&amp;&amp;M.setVisible(r)},[M,r]),(0,m.useEffect)(()=&gt;{"number"==typeof n&amp;&amp;null!==M&amp;&amp;M.setRadius(n)},[M,n]),(0,m.useEffect)(()=&gt;{void 0!==s&amp;&amp;null!==M&amp;&amp;M.setCenter(s)},[M,s]),(0,m.useEffect)(()=&gt;{M&amp;&amp;a&amp;&amp;(null!==O&amp;&amp;google.maps.event.removeListener(O),P(google.maps.event.addListener(M,"dblclick",a)))},[a]),(0,m.useEffect)(()=&gt;{M&amp;&amp;l&amp;&amp;(null!==S&amp;&amp;google.maps.event.removeListener(S),j(google.maps.event.addListener(M,"dragend",l)))},[l]),(0,m.useEffect)(()=&gt;{M&amp;&amp;u&amp;&amp;(null!==I&amp;&amp;google.maps.event.removeListener(I),D(google.maps.event.addListener(M,"dragstart",u)))},[u]),(0,m.useEffect)(()=&gt;{M&amp;&amp;p&amp;&amp;(null!==_&amp;&amp;google.maps.event.removeListener(_),B(google.maps.event.addListener(M,"mousedown",p)))},[p]),(0,m.useEffect)(()=&gt;{M&amp;&amp;c&amp;&amp;(null!==T&amp;&amp;google.maps.event.removeListener(T),R(google.maps.event.addListener(M,"mousemove",c)))},[c]),(0,m.useEffect)(()=&gt;{M&amp;&amp;h&amp;&amp;(null!==z&amp;&amp;google.maps.event.removeListener(z),A(google.maps.event.addListener(M,"mouseout",h)))},[h]),(0,m.useEffect)(()=&gt;{M&amp;&amp;d&amp;&amp;(null!==U&amp;&amp;google.maps.event.removeListener(U),Z(google.maps.event.addListener(M,"mouseover",d)))},[d]),(0,m.useEffect)(()=&gt;{M&amp;&amp;g&amp;&amp;(null!==V&amp;&amp;google.maps.event.removeListener(V),W(google.maps.event.addListener(M,"mouseup",g)))},[g]),(0,m.useEffect)(()=&gt;{M&amp;&amp;v&amp;&amp;(null!==N&amp;&amp;google.maps.event.removeListener(N),H(google.maps.event.addListener(M,"rightclick",v)))},[v]),(0,m.useEffect)(()=&gt;{M&amp;&amp;f&amp;&amp;(null!==G&amp;&amp;google.maps.event.removeListener(G),F(google.maps.event.addListener(M,"click",f)))},[f]),(0,m.useEffect)(()=&gt;{M&amp;&amp;y&amp;&amp;(null!==Y&amp;&amp;google.maps.event.removeListener(Y),K(google.maps.event.addListener(M,"drag",y)))},[y]),(0,m.useEffect)(()=&gt;{M&amp;&amp;L&amp;&amp;(null!==q&amp;&amp;google.maps.event.removeListener(q),J(google.maps.event.addListener(M,"center_changed",L)))},[f]),(0,m.useEffect)(()=&gt;{M&amp;&amp;b&amp;&amp;(null!==X&amp;&amp;google.maps.event.removeListener(X),$(google.maps.event.addListener(M,"radius_changed",b)))},[b]),(0,m.useEffect)(()=&gt;{var e=new google.maps.Circle(tv(tv({},t||tL),{},{map:x}));return"number"==typeof n&amp;&amp;e.setRadius(n),void 0!==s&amp;&amp;e.setCenter(s),"number"==typeof n&amp;&amp;e.setRadius(n),void 0!==r&amp;&amp;e.setVisible(r),void 0!==i&amp;&amp;e.setEditable(i),void 0!==o&amp;&amp;e.setDraggable(o),a&amp;&amp;P(google.maps.event.addListener(e,"dblclick",a)),l&amp;&amp;j(google.maps.event.addListener(e,"dragend",l)),u&amp;&amp;D(google.maps.event.addListener(e,"dragstart",u)),p&amp;&amp;B(google.maps.event.addListener(e,"mousedown",p)),c&amp;&amp;R(google.maps.event.addListener(e,"mousemove",c)),h&amp;&amp;A(google.maps.event.addListener(e,"mouseout",h)),d&amp;&amp;Z(google.maps.event.addListener(e,"mouseover",d)),g&amp;&amp;W(google.maps.event.addListener(e,"mouseup",g)),v&amp;&amp;H(google.maps.event.addListener(e,"rightclick",v)),f&amp;&amp;F(google.maps.event.addListener(e,"click",f)),y&amp;&amp;K(google.maps.event.addListener(e,"drag",y)),L&amp;&amp;J(google.maps.event.addListener(e,"center_changed",L)),b&amp;&amp;$(google.maps.event.addListener(e,"radius_changed",b)),k(e),w&amp;&amp;w(e),()=&gt;{null!==O&amp;&amp;google.maps.event.removeListener(O),null!==S&amp;&amp;google.maps.event.removeListener(S),null!==I&amp;&amp;google.maps.event.removeListener(I),null!==_&amp;&amp;google.maps.event.removeListener(_),null!==T&amp;&amp;google.maps.event.removeListener(T),null!==z&amp;&amp;google.maps.event.removeListener(z),null!==U&amp;&amp;google.maps.event.removeListener(U),null!==V&amp;&amp;google.maps.event.removeListener(V),null!==N&amp;&amp;google.maps.event.removeListener(N),null!==G&amp;&amp;google.maps.event.removeListener(G),null!==q&amp;&amp;google.maps.event.removeListener(q),null!==X&amp;&amp;google.maps.event.removeListener(X),C&amp;&amp;C(e),e.setMap(null)}},[]),null});class tb extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{circle:null}),y(this,"setCircleCallback",()=&gt;{null!==this.state.circle&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.circle)})}componentDidMount(){var e=new google.maps.Circle(tv(tv({},this.props.options),{},{map:this.context}));this.registeredEvents=x({updaterMap:ty,eventMap:tf,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{circle:e}},this.setCircleCallback)}componentDidUpdate(e){null!==this.state.circle&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:ty,eventMap:tf,prevProps:e,nextProps:this.props,instance:this.state.circle}))}componentWillUnmount(){if(null!==this.state.circle){var e;this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.circle),C(this.registeredEvents),null===(e=this.state.circle)||void 0===e||e.setMap(null)}}render(){return null}}function tE(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tw(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?tE(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):tE(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(tb,"contextType",E);var tC={onClick:"click",onDblClick:"dblclick",onMouseDown:"mousedown",onMouseOut:"mouseout",onMouseOver:"mouseover",onMouseUp:"mouseup",onRightClick:"rightclick",onAddFeature:"addfeature",onRemoveFeature:"removefeature",onRemoveProperty:"removeproperty",onSetGeometry:"setgeometry",onSetProperty:"setproperty"},tx={add(e,t){e.add(t)},addgeojson(e,t,s){e.addGeoJson(t,s)},contains(e,t){e.contains(t)},foreach(e,t){e.forEach(t)},loadgeojson(e,t,s,n){e.loadGeoJson(t,s,n)},overridestyle(e,t,s){e.overrideStyle(t,s)},remove(e,t){e.remove(t)},revertstyle(e,t){e.revertStyle(t)},controlposition(e,t){e.setControlPosition(t)},controls(e,t){e.setControls(t)},drawingmode(e,t){e.setDrawingMode(t)},map(e,t){e.setMap(t)},style(e,t){e.setStyle(t)},togeojson(e,t){e.toGeoJson(t)}};(0,m.memo)(function(e){var{options:t,onClick:s,onDblClick:n,onMouseDown:o,onMouseMove:i,onMouseOut:r,onMouseOver:a,onMouseUp:l,onRightClick:u,onAddFeature:p,onRemoveFeature:c,onRemoveProperty:h,onSetGeometry:d,onSetProperty:g,onLoad:v,onUnmount:f}=e,y=(0,m.useContext)(E),[L,b]=(0,m.useState)(null),[w,C]=(0,m.useState)(null),[x,M]=(0,m.useState)(null),[k,O]=(0,m.useState)(null),[P,S]=(0,m.useState)(null),[j,I]=(0,m.useState)(null),[D,_]=(0,m.useState)(null),[B,T]=(0,m.useState)(null),[R,z]=(0,m.useState)(null),[A,U]=(0,m.useState)(null),[Z,V]=(0,m.useState)(null),[W,N]=(0,m.useState)(null),[H,G]=(0,m.useState)(null),[F,Y]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{null!==L&amp;&amp;L.setMap(y)},[y]),(0,m.useEffect)(()=&gt;{L&amp;&amp;n&amp;&amp;(null!==w&amp;&amp;google.maps.event.removeListener(w),C(google.maps.event.addListener(L,"dblclick",n)))},[n]),(0,m.useEffect)(()=&gt;{L&amp;&amp;o&amp;&amp;(null!==x&amp;&amp;google.maps.event.removeListener(x),M(google.maps.event.addListener(L,"mousedown",o)))},[o]),(0,m.useEffect)(()=&gt;{L&amp;&amp;i&amp;&amp;(null!==k&amp;&amp;google.maps.event.removeListener(k),O(google.maps.event.addListener(L,"mousemove",i)))},[i]),(0,m.useEffect)(()=&gt;{L&amp;&amp;r&amp;&amp;(null!==P&amp;&amp;google.maps.event.removeListener(P),S(google.maps.event.addListener(L,"mouseout",r)))},[r]),(0,m.useEffect)(()=&gt;{L&amp;&amp;a&amp;&amp;(null!==j&amp;&amp;google.maps.event.removeListener(j),I(google.maps.event.addListener(L,"mouseover",a)))},[a]),(0,m.useEffect)(()=&gt;{L&amp;&amp;l&amp;&amp;(null!==D&amp;&amp;google.maps.event.removeListener(D),_(google.maps.event.addListener(L,"mouseup",l)))},[l]),(0,m.useEffect)(()=&gt;{L&amp;&amp;u&amp;&amp;(null!==B&amp;&amp;google.maps.event.removeListener(B),T(google.maps.event.addListener(L,"rightclick",u)))},[u]),(0,m.useEffect)(()=&gt;{L&amp;&amp;s&amp;&amp;(null!==R&amp;&amp;google.maps.event.removeListener(R),z(google.maps.event.addListener(L,"click",s)))},[s]),(0,m.useEffect)(()=&gt;{L&amp;&amp;p&amp;&amp;(null!==A&amp;&amp;google.maps.event.removeListener(A),U(google.maps.event.addListener(L,"addfeature",p)))},[p]),(0,m.useEffect)(()=&gt;{L&amp;&amp;c&amp;&amp;(null!==Z&amp;&amp;google.maps.event.removeListener(Z),V(google.maps.event.addListener(L,"removefeature",c)))},[c]),(0,m.useEffect)(()=&gt;{L&amp;&amp;h&amp;&amp;(null!==W&amp;&amp;google.maps.event.removeListener(W),N(google.maps.event.addListener(L,"removeproperty",h)))},[h]),(0,m.useEffect)(()=&gt;{L&amp;&amp;d&amp;&amp;(null!==H&amp;&amp;google.maps.event.removeListener(H),G(google.maps.event.addListener(L,"setgeometry",d)))},[d]),(0,m.useEffect)(()=&gt;{L&amp;&amp;g&amp;&amp;(null!==F&amp;&amp;google.maps.event.removeListener(F),Y(google.maps.event.addListener(L,"setproperty",g)))},[g]),(0,m.useEffect)(()=&gt;{if(null!==y){var e=new google.maps.Data(tw(tw({},t),{},{map:y}));n&amp;&amp;C(google.maps.event.addListener(e,"dblclick",n)),o&amp;&amp;M(google.maps.event.addListener(e,"mousedown",o)),i&amp;&amp;O(google.maps.event.addListener(e,"mousemove",i)),r&amp;&amp;S(google.maps.event.addListener(e,"mouseout",r)),a&amp;&amp;I(google.maps.event.addListener(e,"mouseover",a)),l&amp;&amp;_(google.maps.event.addListener(e,"mouseup",l)),u&amp;&amp;T(google.maps.event.addListener(e,"rightclick",u)),s&amp;&amp;z(google.maps.event.addListener(e,"click",s)),p&amp;&amp;U(google.maps.event.addListener(e,"addfeature",p)),c&amp;&amp;V(google.maps.event.addListener(e,"removefeature",c)),h&amp;&amp;N(google.maps.event.addListener(e,"removeproperty",h)),d&amp;&amp;G(google.maps.event.addListener(e,"setgeometry",d)),g&amp;&amp;Y(google.maps.event.addListener(e,"setproperty",g)),b(e),v&amp;&amp;v(e)}return()=&gt;{L&amp;&amp;(null!==w&amp;&amp;google.maps.event.removeListener(w),null!==x&amp;&amp;google.maps.event.removeListener(x),null!==k&amp;&amp;google.maps.event.removeListener(k),null!==P&amp;&amp;google.maps.event.removeListener(P),null!==j&amp;&amp;google.maps.event.removeListener(j),null!==D&amp;&amp;google.maps.event.removeListener(D),null!==B&amp;&amp;google.maps.event.removeListener(B),null!==R&amp;&amp;google.maps.event.removeListener(R),null!==A&amp;&amp;google.maps.event.removeListener(A),null!==Z&amp;&amp;google.maps.event.removeListener(Z),null!==W&amp;&amp;google.maps.event.removeListener(W),null!==H&amp;&amp;google.maps.event.removeListener(H),null!==F&amp;&amp;google.maps.event.removeListener(F),f&amp;&amp;f(L),L.setMap(null))}},[]),null});class tM extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{data:null}),y(this,"setDataCallback",()=&gt;{null!==this.state.data&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.data)})}componentDidMount(){if(null!==this.context){var e=new google.maps.Data(tw(tw({},this.props.options),{},{map:this.context}));this.registeredEvents=x({updaterMap:tx,eventMap:tC,prevProps:{},nextProps:this.props,instance:e}),this.setState(()=&gt;({data:e}),this.setDataCallback)}}componentDidUpdate(e){null!==this.state.data&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:tx,eventMap:tC,prevProps:e,nextProps:this.props,instance:this.state.data}))}componentWillUnmount(){null!==this.state.data&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.data),C(this.registeredEvents),this.state.data&amp;&amp;this.state.data.setMap(null))}render(){return null}}function tk(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tO(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?tk(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):tk(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(tM,"contextType",E);var tP={onClick:"click",onDefaultViewportChanged:"defaultviewport_changed",onStatusChanged:"status_changed"},tS={options(e,t){e.setOptions(t)},url(e,t){e.setUrl(t)},zIndex(e,t){e.setZIndex(t)}};class tj extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{kmlLayer:null}),y(this,"setKmlLayerCallback",()=&gt;{null!==this.state.kmlLayer&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.kmlLayer)})}componentDidMount(){var e=new google.maps.KmlLayer(tO(tO({},this.props.options),{},{map:this.context}));this.registeredEvents=x({updaterMap:tS,eventMap:tP,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{kmlLayer:e}},this.setKmlLayerCallback)}componentDidUpdate(e){null!==this.state.kmlLayer&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:tS,eventMap:tP,prevProps:e,nextProps:this.props,instance:this.state.kmlLayer}))}componentWillUnmount(){null!==this.state.kmlLayer&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.kmlLayer),C(this.registeredEvents),this.state.kmlLayer.setMap(null))}render(){return null}}function tI(e,t){return"function"==typeof t?t(e.offsetWidth,e.offsetHeight):{x:0,y:0}}function tD(e,t,s,n){var o,i,r,a,l,u,p;return void 0!==s?(i=s instanceof(o=google.maps.LatLngBounds)?s:(u=s,new o(new google.maps.LatLng(u.ne.lat,u.ne.lng),new google.maps.LatLng(u.sw.lat,u.sw.lng))),r=e&amp;&amp;e.fromLatLngToDivPixel(i.getNorthEast()),a=e&amp;&amp;e.fromLatLngToDivPixel(i.getSouthWest()),r&amp;&amp;a?{left:"".concat(a.x+t.x,"px"),top:"".concat(r.y+t.y,"px"),width:"".concat(r.x-a.x-t.x,"px"),height:"".concat(a.y-r.y-t.y,"px")}:{left:"-9999px",top:"-9999px"}):function(e,t,s){var n=e&amp;&amp;e.fromLatLngToDivPixel(s);if(n){var{x:o,y:i}=n;return{left:"".concat(o+t.x,"px"),top:"".concat(i+t.y,"px")}}return{left:"-9999px",top:"-9999px"}}(e,t,n instanceof(l=google.maps.LatLng)?n:new l((p=n).lat,p.lng))}function t_(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tB(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tT(e){return e?(e instanceof google.maps.LatLng?e:new google.maps.LatLng(e.lat,e.lng))+"":""}function tR(e){return e?(e instanceof google.maps.LatLngBounds?e:new google.maps.LatLngBounds(new google.maps.LatLng(e.south,e.east),new google.maps.LatLng(e.north,e.west)))+"":""}y(tj,"contextType",E),(0,m.memo)(function(e){var{position:t,bounds:s,mapPaneName:n,zIndex:o,onLoad:i,onUnmount:r,getPixelPositionOffset:a,children:l}=e,u=(0,m.useContext)(E),p=(0,m.useMemo)(()=&gt;{var e=document.createElement("div");return e.style.position="absolute",e},[]),c=(0,m.useMemo)(()=&gt;(function(e,t,s,n,o){class i extends google.maps.OverlayView{constructor(e,t,s,n){super(),this.container=e,this.pane=t,this.position=s,this.bounds=n}onAdd(){var e,t=null===(e=this.getPanes())||void 0===e?void 0:e[this.pane];null==t||t.appendChild(this.container)}draw(){for(var[e,t]of Object.entries(tD(this.getProjection(),function(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?t_(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):t_(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}({},this.container?tI(this.container,o):{x:0,y:0}),this.bounds,this.position)))this.container.style[e]=t}onRemove(){null!==this.container.parentNode&amp;&amp;this.container.parentNode.removeChild(this.container)}}return new i(e,t,s,n)})(p,n,t,s,a),[p,n,t,s]);return(0,m.useEffect)(()=&gt;(null==i||i(c),null==c||c.setMap(u),()=&gt;{null==r||r(c),null==c||c.setMap(null)}),[u,c]),(0,m.useEffect)(()=&gt;{p.style.zIndex="".concat(o)},[o,p]),v.createPortal(l,p)});class tz extends m.PureComponent{constructor(e){super(e),y(this,"state",{paneEl:null,containerStyle:{position:"absolute"}}),y(this,"updatePane",()=&gt;{var e=this.props.mapPaneName,t=this.overlayView.getPanes();b(!!e,"OverlayView requires props.mapPaneName but got %s",e),t?this.setState({paneEl:t[e]}):this.setState({paneEl:null})}),y(this,"onAdd",()=&gt;{var e,t;this.updatePane(),null===(e=(t=this.props).onLoad)||void 0===e||e.call(t,this.overlayView)}),y(this,"onPositionElement",()=&gt;{var e,t,s,n,o,i=tD(this.overlayView.getProjection(),function(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?tB(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):tB(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}({x:0,y:0},this.containerRef.current?tI(this.containerRef.current,this.props.getPixelPositionOffset):{}),this.props.bounds,this.props.position);o={left:this.state.containerStyle.left,top:this.state.containerStyle.top,width:this.state.containerStyle.width,height:this.state.containerStyle.height},(i.left!==o.left||i.top!==o.top||i.width!==o.height||i.height!==o.height)&amp;&amp;this.setState({containerStyle:{top:null!==(e=i.top)&amp;&amp;void 0!==e?e:0,left:null!==(t=i.left)&amp;&amp;void 0!==t?t:0,width:null!==(s=i.width)&amp;&amp;void 0!==s?s:0,height:null!==(n=i.height)&amp;&amp;void 0!==n?n:0,position:"absolute"}})}),y(this,"draw",()=&gt;{this.onPositionElement()}),y(this,"onRemove",()=&gt;{var e,t;this.setState(()=&gt;({paneEl:null})),null===(e=(t=this.props).onUnmount)||void 0===e||e.call(t,this.overlayView)}),this.containerRef=(0,m.createRef)();var t=new google.maps.OverlayView;t.onAdd=this.onAdd,t.draw=this.draw,t.onRemove=this.onRemove,this.overlayView=t}componentDidMount(){this.overlayView.setMap(this.context)}componentDidUpdate(e){var t=tT(e.position),s=tT(this.props.position),n=tR(e.bounds),o=tR(this.props.bounds);(t!==s||n!==o)&amp;&amp;this.overlayView.draw(),e.mapPaneName!==this.props.mapPaneName&amp;&amp;this.updatePane()}componentWillUnmount(){this.overlayView.setMap(null)}render(){var e=this.state.paneEl;return e?v.createPortal((0,g.jsx)("div",{ref:this.containerRef,style:this.state.containerStyle,children:m.Children.only(this.props.children)}),e):null}}function tA(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tU(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?tA(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):tA(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(tz,"FLOAT_PANE","floatPane"),y(tz,"MAP_PANE","mapPane"),y(tz,"MARKER_LAYER","markerLayer"),y(tz,"OVERLAY_LAYER","overlayLayer"),y(tz,"OVERLAY_MOUSE_TARGET","overlayMouseTarget"),y(tz,"contextType",E);var tZ={onDblClick:"dblclick",onClick:"click"},tV={opacity(e,t){e.setOpacity(t)}};(0,m.memo)(function(e){var{url:t,bounds:s,options:n,visible:o}=e,i=(0,m.useContext)(E),r=new google.maps.LatLngBounds(new google.maps.LatLng(s.south,s.west),new google.maps.LatLng(s.north,s.east)),a=(0,m.useMemo)(()=&gt;new google.maps.GroundOverlay(t,r,n),[]);return(0,m.useEffect)(()=&gt;{null!==a&amp;&amp;a.setMap(i)},[i]),(0,m.useEffect)(()=&gt;{void 0!==t&amp;&amp;null!==a&amp;&amp;(a.set("url",t),a.setMap(i))},[a,t]),(0,m.useEffect)(()=&gt;{void 0!==o&amp;&amp;null!==a&amp;&amp;a.setOpacity(o?1:0)},[a,o]),(0,m.useEffect)(()=&gt;{var e=new google.maps.LatLngBounds(new google.maps.LatLng(s.south,s.west),new google.maps.LatLng(s.north,s.east));void 0!==s&amp;&amp;null!==a&amp;&amp;(a.set("bounds",e),a.setMap(i))},[a,s]),null});class tW extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{groundOverlay:null}),y(this,"setGroundOverlayCallback",()=&gt;{null!==this.state.groundOverlay&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.groundOverlay)})}componentDidMount(){b(!!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");var e=new google.maps.GroundOverlay(this.props.url,this.props.bounds,tU(tU({},this.props.options),{},{map:this.context}));this.registeredEvents=x({updaterMap:tV,eventMap:tZ,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{groundOverlay:e}},this.setGroundOverlayCallback)}componentDidUpdate(e){null!==this.state.groundOverlay&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:tV,eventMap:tZ,prevProps:e,nextProps:this.props,instance:this.state.groundOverlay}))}componentWillUnmount(){this.state.groundOverlay&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.groundOverlay),this.state.groundOverlay.setMap(null))}render(){return null}}function tN(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&amp;&amp;(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,n)}return s}function tH(e){for(var t=1;t&lt;arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?tN(Object(s),!0).forEach(function(t){y(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):tN(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}y(tW,"defaultProps",{onLoad:function(){}}),y(tW,"contextType",E);var tG={},tF={data(e,t){e.setData(t)},map(e,t){e.setMap(t)},options(e,t){e.setOptions(t)}};(0,m.memo)(function(e){var{data:t,onLoad:s,onUnmount:n,options:o}=e,i=(0,m.useContext)(E),[r,a]=(0,m.useState)(null);return(0,m.useEffect)(()=&gt;{google.maps.visualization||b(!!google.maps.visualization,'Did you include prop libraries={["visualization"]} in useJsApiScript? %s',google.maps.visualization)},[]),(0,m.useEffect)(()=&gt;{b(!!t,"data property is required in HeatmapLayer %s",t)},[t]),(0,m.useEffect)(()=&gt;{null!==r&amp;&amp;r.setMap(i)},[i]),(0,m.useEffect)(()=&gt;{o&amp;&amp;null!==r&amp;&amp;r.setOptions(o)},[r,o]),(0,m.useEffect)(()=&gt;{var e=new google.maps.visualization.HeatmapLayer(tH(tH({},o),{},{data:t,map:i}));return a(e),s&amp;&amp;s(e),()=&gt;{null!==r&amp;&amp;(n&amp;&amp;n(r),r.setMap(null))}},[]),null});class tY extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{heatmapLayer:null}),y(this,"setHeatmapLayerCallback",()=&gt;{null!==this.state.heatmapLayer&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.heatmapLayer)})}componentDidMount(){b(!!google.maps.visualization,'Did you include prop libraries={["visualization"]} to &lt;LoadScript /&gt;? %s',google.maps.visualization),b(!!this.props.data,"data property is required in HeatmapLayer %s",this.props.data);var e=new google.maps.visualization.HeatmapLayer(tH(tH({},this.props.options),{},{data:this.props.data,map:this.context}));this.registeredEvents=x({updaterMap:tF,eventMap:tG,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{heatmapLayer:e}},this.setHeatmapLayerCallback)}componentDidUpdate(e){C(this.registeredEvents),this.registeredEvents=x({updaterMap:tF,eventMap:tG,prevProps:e,nextProps:this.props,instance:this.state.heatmapLayer})}componentWillUnmount(){null!==this.state.heatmapLayer&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.heatmapLayer),C(this.registeredEvents),this.state.heatmapLayer.setMap(null))}render(){return null}}y(tY,"contextType",E);var tK={onCloseClick:"closeclick",onPanoChanged:"pano_changed",onPositionChanged:"position_changed",onPovChanged:"pov_changed",onResize:"resize",onStatusChanged:"status_changed",onVisibleChanged:"visible_changed",onZoomChanged:"zoom_changed"},tq={register(e,t,s){e.registerPanoProvider(t,s)},links(e,t){e.setLinks(t)},motionTracking(e,t){e.setMotionTracking(t)},options(e,t){e.setOptions(t)},pano(e,t){e.setPano(t)},position(e,t){e.setPosition(t)},pov(e,t){e.setPov(t)},visible(e,t){e.setVisible(t)},zoom(e,t){e.setZoom(t)}};class tJ extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{streetViewPanorama:null}),y(this,"setStreetViewPanoramaCallback",()=&gt;{null!==this.state.streetViewPanorama&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.streetViewPanorama)})}componentDidMount(){var e,t,s=null!==(e=null===(t=this.context)||void 0===t?void 0:t.getStreetView())&amp;&amp;void 0!==e?e:null;this.registeredEvents=x({updaterMap:tq,eventMap:tK,prevProps:{},nextProps:this.props,instance:s}),this.setState(()=&gt;({streetViewPanorama:s}),this.setStreetViewPanoramaCallback)}componentDidUpdate(e){null!==this.state.streetViewPanorama&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:tq,eventMap:tK,prevProps:e,nextProps:this.props,instance:this.state.streetViewPanorama}))}componentWillUnmount(){null!==this.state.streetViewPanorama&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.streetViewPanorama),C(this.registeredEvents),this.state.streetViewPanorama.setVisible(!1))}render(){return null}}y(tJ,"contextType",E);class tX extends m.PureComponent{constructor(){super(...arguments),y(this,"state",{streetViewService:null}),y(this,"setStreetViewServiceCallback",()=&gt;{null!==this.state.streetViewService&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.streetViewService)})}componentDidMount(){var e=new google.maps.StreetViewService;this.setState(function(){return{streetViewService:e}},this.setStreetViewServiceCallback)}componentWillUnmount(){null!==this.state.streetViewService&amp;&amp;this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.streetViewService)}render(){return null}}y(tX,"contextType",E);var t$={onDirectionsChanged:"directions_changed"},tQ={directions(e,t){e.setDirections(t)},map(e,t){e.setMap(t)},options(e,t){e.setOptions(t)},panel(e,t){e.setPanel(t)},routeIndex(e,t){e.setRouteIndex(t)}};class t0 extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"state",{directionsRenderer:null}),y(this,"setDirectionsRendererCallback",()=&gt;{null!==this.state.directionsRenderer&amp;&amp;(this.state.directionsRenderer.setMap(this.context),this.props.onLoad&amp;&amp;this.props.onLoad(this.state.directionsRenderer))})}componentDidMount(){var e=new google.maps.DirectionsRenderer(this.props.options);this.registeredEvents=x({updaterMap:tQ,eventMap:t$,prevProps:{},nextProps:this.props,instance:e}),this.setState(function(){return{directionsRenderer:e}},this.setDirectionsRendererCallback)}componentDidUpdate(e){null!==this.state.directionsRenderer&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:tQ,eventMap:t$,prevProps:e,nextProps:this.props,instance:this.state.directionsRenderer}))}componentWillUnmount(){null!==this.state.directionsRenderer&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.directionsRenderer),C(this.registeredEvents),this.state.directionsRenderer&amp;&amp;this.state.directionsRenderer.setMap(null))}render(){return null}}y(t0,"contextType",E);var t1={onPlacesChanged:"places_changed"},t2={bounds(e,t){e.setBounds(t)}};class t3 extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"containerElement",(0,m.createRef)()),y(this,"state",{searchBox:null}),y(this,"setSearchBoxCallback",()=&gt;{null!==this.state.searchBox&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.searchBox)})}componentDidMount(){if(b(!!google.maps.places,'You need to provide libraries={["places"]} prop to &lt;LoadScript /&gt; component %s',google.maps.places),null!==this.containerElement&amp;&amp;null!==this.containerElement.current){var e=this.containerElement.current.querySelector("input");if(null!==e){var t=new google.maps.places.SearchBox(e,this.props.options);this.registeredEvents=x({updaterMap:t2,eventMap:t1,prevProps:{},nextProps:this.props,instance:t}),this.setState(function(){return{searchBox:t}},this.setSearchBoxCallback)}}}componentDidUpdate(e){null!==this.state.searchBox&amp;&amp;(C(this.registeredEvents),this.registeredEvents=x({updaterMap:t2,eventMap:t1,prevProps:e,nextProps:this.props,instance:this.state.searchBox}))}componentWillUnmount(){null!==this.state.searchBox&amp;&amp;(this.props.onUnmount&amp;&amp;this.props.onUnmount(this.state.searchBox),C(this.registeredEvents))}render(){return(0,g.jsx)("div",{ref:this.containerElement,children:m.Children.only(this.props.children)})}}y(t3,"contextType",E);var t8={onPlaceChanged:"place_changed"},t5={bounds(e,t){e.setBounds(t)},restrictions(e,t){e.setComponentRestrictions(t)},fields(e,t){e.setFields(t)},options(e,t){e.setOptions(t)},types(e,t){e.setTypes(t)}};class t6 extends m.PureComponent{constructor(){super(...arguments),y(this,"registeredEvents",[]),y(this,"containerElement",(0,m.createRef)()),y(this,"state",{autocomplete:null}),y(this,"setAutocompleteCallback",()=&gt;{null!==this.state.autocomplete&amp;&amp;this.props.onLoad&amp;&amp;this.props.onLoad(this.state.autocomplete)})}componentDidMount(){b(!!google.maps.places,'You need to provide libraries={["places"]} prop to &lt;LoadScript /&gt; component %s',google.maps.places);var e,t=null===(e=this.containerElement.current)||void 0===e?void 0:e.querySelector("input");if(t){var s=new google.maps.places.Autocomplete(t,this.props.options);this.registeredEvents=x({updaterMap:t5,eventMap:t8,prevProps:{},nextProps:this.props,instance:s}),this.setState(()=&gt;({autocomplete:s}),this.setAutocompleteCallback)}}componentDidUpdate(e){C(this.registeredEvents),this.registeredEvents=x({updaterMap:t5,eventMap:t8,prevProps:e,nextProps:this.props,instance:this.state.autocomplete})}componentWillUnmount(){null!==this.state.autocomplete&amp;&amp;C(this.registeredEvents)}render(){return(0,g.jsx)("div",{ref:this.containerElement,className:this.props.className,children:m.Children.only(this.props.children)})}}y(t6,"defaultProps",{className:""}),y(t6,"contextType",E)}}]);</pre></body></html>