>>0))break t;l=0|s[(e=I+(a<<3)|0)>>2],e=0|s[e+4>>2]}}}while(0);if(x=0|Xt(0|n,0|r,5,0),(w=0|T())>>>0<0|!(0|w)&x>>>0<11){M=85;break}if(x=0|Kt(0|n,0|r,6,0),T(),!(x=0|$t(x,8))){M=48;break}do{if(E){for(m=0,e=0,g=0,_=0;;){if(!(0|(a=0|s[(A=h=P+(m<<3)|0)>>2]))&!(0|(A=0|s[A+4>>2])))w=g;else{d=0|nn(0|a,0|A,56),T(),l=1+(d&=7)|0,f=-117440513&A,w=0|nn(0|a,0|A,45),T();t:do{if(0|G(127&w)){if(p=0|nn(0|a,0|A,52),T(),0|(p&=15))for(c=1;;){if(!(!(a&(w=0|rn(7,0,3*(15-c|0)|0)))&!(f&(0|T()))))break t;if(!(c>>>0>>0))break;c=c+1|0}a|=A=0|rn(0|l,0,56),A=0|T()|f,s[(l=h)>>2]=a,s[l+4>>2]=A,l=d+2|0}}while(0);7==(0|l)?(s[(w=x+(e<<3)|0)>>2]=a,s[w+4>>2]=-117440513&A,e=0|Xt(0|e,0|g,1,0),w=0|T()):w=g}if(m=0|Xt(0|m,0|_,1,0),!((0|(_=0|T()))<(0|r)|(0|_)==(0|r)&m>>>0>>0))break;g=w}if(E){if(b=R>>>0>15,v=0|rn(0|R,0,52),y=0|T(),!C){for(a=0,c=0,l=0,A=0;!(0|u)&!(0|o)||(s[(R=t+(a<<3)|0)>>2]=u,s[R+4>>2]=o,a=0|Xt(0|a,0|c,1,0),c=0|T()),l=0|Xt(0|l,0|A,1,0),(0|(A=0|T()))<(0|r)|(0|A)==(0|r)&l>>>0>>0;)u=0|s[(o=I+(l<<3)|0)>>2],o=0|s[o+4>>2];o=w;break}for(a=0,c=0,A=0,l=0;;){do{if(!(!(0|u)&!(0|o))){if(p=0|nn(0|u,0|o,52),T(),b|(0|(p&=15))<(0|R)){M=80;break e}if((0|p)!=(0|R)){if(h=u|v,d=-15728641&o|y,p>>>0>=k>>>0){f=R;do{C=0|rn(7,0,3*(14-f|0)|0),f=f+1|0,h|=C,d=0|T()|d}while(f>>>0>>0)}}else h=u,d=o;g=0|en(0|h,0|d,0|n,0|r),f=0,p=0,_=0|T();do{if((0|f)>(0|r)|(0|f)==(0|r)&p>>>0>n>>>0){M=81;break e}if((-117440513&(m=0|s[4+(C=P+(g<<3)|0)>>2]))==(0|d)&&(0|s[C>>2])==(0|h)){M=65;break}g=0|Jt(0|(C=0|Xt(0|g,0|_,1,0)),0|T(),0|n,0|r),_=0|T(),p=0|Xt(0|p,0|f,1,0),f=0|T(),C=P+(g<<3)|0}while((0|s[C>>2])!=(0|h)||(0|s[C+4>>2])!=(0|d));if(65==(0|M)&&(M=0,!0&100663296==(117440512&m)))break;s[(C=t+(a<<3)|0)>>2]=u,s[C+4>>2]=o,a=0|Xt(0|a,0|c,1,0),c=0|T()}}while(0);if(A=0|Xt(0|A,0|l,1,0),!((0|(l=0|T()))<(0|r)|(0|l)==(0|r)&A>>>0>>0))break;u=0|s[(o=I+(A<<3)|0)>>2],o=0|s[o+4>>2]}o=w}else a=0,o=w}else a=0,e=0,o=0}while(0);if(cn(0|P,0,0|i),ln(0|I,0|x,e<<3),Ht(x),!(0|e)&!(0|o)){M=89;break}t=t+(a<<3)|0,r=o,n=e}if(16==(0|M))!0&!(117440512&o)?(o=4,M=27):M=21;else if(31==(0|M))S(27795,27122,620,27132);else{if(41==(0|M))return Ht(I),Ht(P),10;if(48==(0|M))return Ht(I),Ht(P),13;80==(0|M)?S(27795,27122,711,27132):81==(0|M)?S(27795,27122,723,27132):85==(0|M)&&(ln(0|t,0|I,n<<3),M=89)}return 21==(0|M)?(Ht(I),Ht(P),0|(M=5)):27==(0|M)?(Ht(I),Ht(P),0|(M=o)):89==(0|M)?(Ht(I),Ht(P),0|(M=0)):0},_constructCell:function(e,t,n,i){n|=0,i|=0;var o=0,a=0,A=0,l=0,c=0,u=0;if((e|=0)>>>0>15)return 4;if((t|=0)>>>0>121)return 17;A=0|rn(0|e,0,52),o=0|T(),l=0|rn(0|t,0,45),o=0|o|T()|134225919;e:do{if((0|e)>=1){for(l=1,A=!!(0|r[20528+t|0]),a=-1;;){if((t=0|s[n+(l+-1<<2)>>2])>>>0>6){o=18,t=10;break}if(!(!(0|t)|1^A)){if(1==(0|t)){o=19,t=10;break}A=0}if(c=0|rn(7,0,0|(u=3*(15-l|0)|0)),o&=~T(),a=(t=0|rn(0|t,((0|t)<0)<<31>>31,0|u))|a&~c,o=0|T()|o,!((0|l)<(0|e)))break e;l=l+1|0}if(10==(0|t))return 0|o}else a=-1}while(0);return s[(u=i)>>2]=a,s[u+4>>2]=o,0},_destroyLinkedMultiPolygon:ft,_directedEdgeToBoundary:Ce,_directedEdgeToCells:function(e,t,n){e|=0;var r,i,o,a=0;return r=M,M=M+16|0,a=r,!0&268435456==(2013265920&(t|=0))?(i=-2130706433&t|134217728,s[(o=n|=0)>>2]=e,s[o+4>>2]=i,s[a>>2]=0,t=0|nn(0|e,0|t,56),T(),a=0|O(e,i,7&t,a,n+8|0),M=r,0|a):(M=r,0|(a=6))},_edgeLengthKm:function(e,t,n){n|=0;var r,o=0,a=0,A=0,l=0,u=0,f=0,p=0;if(r=M,M=M+176|0,0|(e=0|Ce(e|=0,t|=0,l=r)))return l=e,A=+i[n>>3],A*=6371.007180918475,i[n>>3]=A,M=r,0|l;if(i[n>>3]=0,(0|(e=0|s[l>>2]))<=1)return l=0,A=0,A*=6371.007180918475,i[n>>3]=A,M=r,0|l;t=e+-1|0,e=0,o=+i[l+8>>3],a=+i[l+16>>3],A=0;do{f=o,o=+i[l+8+((e=e+1|0)<<4)>>3],p=+d(.5*(o-f)),u=a,a=+i[l+8+(e<<4)+8>>3],u=p*p+(u=+d(.5*(a-u)))*(+h(+f)*+h(+o)*u),A+=2*+_(+ +c(+u),+ +c(+(1-u)))}while((0|e)!=(0|t));return i[n>>3]=A,l=0,p=A,p*=6371.007180918475,i[n>>3]=p,M=r,0|l},_edgeLengthM:function(e,t,n){n|=0;var r,o=0,a=0,A=0,l=0,u=0,f=0,p=0;if(r=M,M=M+176|0,0|(e=0|Ce(e|=0,t|=0,l=r)))return l=e,A=+i[n>>3],A*=6371.007180918475,A*=1e3,i[n>>3]=A,M=r,0|l;if(i[n>>3]=0,(0|(e=0|s[l>>2]))<=1)return l=0,A=0,A*=6371.007180918475,A*=1e3,i[n>>3]=A,M=r,0|l;t=e+-1|0,e=0,o=+i[l+8>>3],a=+i[l+16>>3],A=0;do{f=o,o=+i[l+8+((e=e+1|0)<<4)>>3],p=+d(.5*(o-f)),u=a,a=+i[l+8+(e<<4)+8>>3],u=p*p+(u=+d(.5*(a-u)))*(+h(+f)*+h(+o)*u),A+=2*+_(+ +c(+u),+ +c(+(1-u)))}while((0|e)!=(0|t));return i[n>>3]=A,l=0,p=A,p*=6371.007180918475,p*=1e3,i[n>>3]=p,M=r,0|l},_edgeLengthRads:function(e,t,n){n|=0;var r,o=0,a=0,A=0,l=0,u=0,f=0,p=0;if(r=M,M=M+176|0,0|(e=0|Ce(e|=0,t|=0,l=r)))return M=r,0|e;if(i[n>>3]=0,(0|(e=0|s[l>>2]))<=1)return M=r,0;t=e+-1|0,e=0,o=+i[l+8>>3],a=+i[l+16>>3],A=0;do{f=o,o=+i[l+8+((e=e+1|0)<<4)>>3],p=+d(.5*(o-f)),u=a,a=+i[l+8+(e<<4)+8>>3],u=p*p+(u=+d(.5*(a-u)))*(+h(+o)*+h(+f)*u),A+=2*+_(+ +c(+u),+ +c(+(1-u)))}while((0|e)<(0|t));return i[n>>3]=A,M=r,0},_emscripten_replace_memory:function(e){return r=new Int8Array(e),s=new Int32Array(e),i=new Float64Array(e),n=e,!0},_free:Ht,_getBaseCellNumber:Be,_getDirectedEdgeDestination:function(e,t,n){e|=0,t|=0,n|=0;var r,i,o=0;return r=M,M=M+16|0,s[(o=r)>>2]=0,!0&268435456==(2013265920&t)?(i=0|nn(0|e,0|t,56),T(),o=0|O(e,-2130706433&t|134217728,7&i,o,n),M=r,0|o):(M=r,0|(o=6))},_getDirectedEdgeOrigin:function(e,t,n){return e|=0,n|=0,!0&268435456==(2013265920&(t|=0))?(s[n>>2]=e,s[n+4>>2]=-2130706433&t|134217728,0|(n=0)):0|(n=6)},_getHexagonAreaAvgKm2:At,_getHexagonAreaAvgM2:function(e,t){return t|=0,(e|=0)>>>0>15?0|(t=4):(i[t>>3]=+i[20784+(e<<3)>>3],0|(t=0))},_getHexagonEdgeLengthAvgKm:function(e,t){return t|=0,(e|=0)>>>0>15?0|(t=4):(i[t>>3]=+i[20912+(e<<3)>>3],0|(t=0))},_getHexagonEdgeLengthAvgM:function(e,t){return t|=0,(e|=0)>>>0>15?0|(t=4):(i[t>>3]=+i[21040+(e<<3)>>3],0|(t=0))},_getIcosahedronFaces:function e(t,n,r){r|=0;var i,o=0,a=0,A=0,l=0,c=0,u=0,h=0,d=0;i=M,M=M+128|0,h=i+112|0,A=i+96|0,d=i,a=0|nn(0|(t|=0),0|(n|=0),52),T(),c=15&a,s[h>>2]=c,l=0|nn(0|t,0|n,45),T(),l&=127;e:do{if(0|G(l)){if(0|c)for(o=1;;){if(!(!((u=0|rn(7,0,3*(15-o|0)|0))&t)&!((0|T())&n))){a=0;break e}if(!(o>>>0>>0))break;o=o+1|0}if(!(1&a))return u=0|rn(c+1|0,0,52),d=T()|-15728641&n,d=0|e((u|t)&~(h=0|rn(7,0,3*(14-c|0)|0)),d&~T(),r),M=i,0|d;a=1}else a=0}while(0);if(!(o=0|Ke(t,n,A))){a?(Pe(A,h,d),u=5):(Ne(A,h,d),u=6);e:do{if(0|G(l))if(c)for(o=1;;){if(!(!((l=0|rn(7,0,3*(15-o|0)|0))&t)&!((0|T())&n))){t=2;break e}if(!(o>>>0>>0)){t=5;break}o=o+1|0}else t=5;else t=2}while(0);cn(0|r,-1,t<<2);e:do{if(a)for(A=0;;){if(Me(l=d+(A<<4)|0,0|s[h>>2]),l=0|s[l>>2],-1==(0|(c=0|s[r>>2]))|(0|c)==(0|l))o=r;else{a=0;do{if((a=a+1|0)>>>0>=t>>>0){o=1;break e}c=0|s[(o=r+(a<<2)|0)>>2]}while(!(-1==(0|c)|(0|c)==(0|l)))}if(s[o>>2]=l,(A=A+1|0)>>>0>=u>>>0){o=0;break}}else for(A=0;;){if(Ie(l=d+(A<<4)|0,0|s[h>>2],0,1),l=0|s[l>>2],-1==(0|(c=0|s[r>>2]))|(0|c)==(0|l))o=r;else{a=0;do{if((a=a+1|0)>>>0>=t>>>0){o=1;break e}c=0|s[(o=r+(a<<2)|0)>>2]}while(!(-1==(0|c)|(0|c)==(0|l)))}if(s[o>>2]=l,(A=A+1|0)>>>0>=u>>>0){o=0;break}}}while(0)}return M=i,0|o},_getIndexDigit:function(e,t,n,r){return r|=0,((n|=0)-1|0)>>>0>14?0|(r=4):(n=0|nn(0|(e|=0),0|(t|=0),3*(15-n|0)|0),T(),s[r>>2]=7&n,0|(r=0))},_getNumCells:lt,_getPentagons:et,_getRes0Cells:function(e){e|=0;var t=0,n=0,r=0;t=0;do{rn(0|t,0,45),r=134225919|T(),s[(n=e+(t<<3)|0)>>2]=-1,s[n+4>>2]=r,t=t+1|0}while(122!=(0|t));return 0},_getResolution:function(e,t){return t=0|nn(0|(e|=0),0|(t|=0),52),T(),15&t},_greatCircleDistanceKm:at,_greatCircleDistanceM:function(e,t){e|=0;var n,r,s,o=0;return r=+i[(t|=0)>>3],n=+i[e>>3],o=(s=+d(.5*(r-n)))*s+(o=+d(.5*(+i[t+8>>3]-+i[e+8>>3])))*(+h(+r)*+h(+n)*o),2*+_(+ +c(+o),+ +c(+(1-o)))*6371.007180918475*1e3},_greatCircleDistanceRads:function(e,t){e|=0;var n,r,s,o=0;return r=+i[(t|=0)>>3],n=+i[e>>3],o=(s=+d(.5*(r-n)))*s+(o=+d(.5*(+i[t+8>>3]-+i[e+8>>3])))*(+h(+r)*+h(+n)*o),2*+_(+ +c(+o),+ +c(+(1-o)))},_gridDisk:L,_gridDiskDistances:N,_gridDistance:function(e,t,n,r,i){n|=0,r|=0,i|=0;var o,a,A=0,l=0;return a=M,M=M+32|0,l=a,0|(o=0|gt(e|=0,t|=0,e,t,A=a+12|0))?(M=a,0|(l=o)):0|(e=0|gt(e,t,n,r,l))?(M=a,0|(l=e)):(A=0|xe(A,l),s[(l=i)>>2]=A,s[l+4>>2]=((0|A)<0)<<31>>31,M=a,0|(l=0))},_gridPathCells:function(e,t,n,r,i){n|=0,r|=0,i|=0;var o,a,A=0,c=0,u=0,h=0,d=0,f=0,p=0,g=0,m=0,_=0,b=0,v=0,y=0,w=0,x=0,E=0,C=0,k=0;if(a=M,M=M+48|0,c=a+12|0,C=a,!(A=0|gt(e|=0,t|=0,e,t,o=a+24|0))&&!(A=0|gt(e,t,n,r,c))){E=((0|(x=0|xe(o,c)))<0)<<31>>31,s[o>>2]=0,s[o+4>>2]=0,s[o+8>>2]=0,s[c>>2]=0,s[c+4>>2]=0,s[c+8>>2]=0,0|gt(e,t,e,t,o)&&S(27795,27538,692,27747),0|gt(e,t,n,r,c)&&S(27795,27538,697,27747),Ee(o),Ee(c),f=0|x?1/+(0|x):0,n=0|s[o>>2],b=f*+((0|s[c>>2])-n|0),r=0|s[(v=o+4|0)>>2],y=f*+((0|s[c+4>>2])-r|0),A=0|s[(w=o+8|0)>>2],f*=+((0|s[c+8>>2])-A|0),s[C>>2]=n,s[(p=C+4|0)>>2]=r,s[(g=C+8|0)>>2]=A;e:do{if((0|x)<0)A=0;else for(m=0,_=0;;){k=b*(h=+(_>>>0)+4294967296*+(0|m))+ +(0|n),u=y*h+ +(0|r),h=f*h+ +(0|A),n=~~+An(+k),c=~~+An(+u),A=~~+An(+h),k=+l(+(+(0|n)-k)),u=+l(+(+(0|c)-u)),h=+l(+(+(0|A)-h));do{if(!(k>u&k>h)){if(d=0-n|0,u>h){r=d-A|0;break}r=c,A=d-c|0;break}n=0-(c+A)|0,r=c}while(0);if(s[C>>2]=n,s[p>>2]=r,s[g>>2]=A,Te(C),0|(A=0|mt(e,t,C,i+(_<<3)|0)))break e;if(!((0|m)<(0|E)|(0|m)==(0|E)&_>>>0>>0)){A=0;break e}n=0|Xt(0|_,0|m,1,0),m=r=0|T(),_=n,n=0|s[o>>2],r=0|s[v>>2],A=0|s[w>>2]}}while(0);return M=a,0|A}return M=a,0|A},_gridPathCellsSize:function(e,t,n,r,i){n|=0,r|=0,i|=0;var o,a=0,A=0,l=0;return o=M,M=M+32|0,l=o,(a=0|gt(e|=0,t|=0,e,t,A=o+12|0))||(a=0|gt(e,t,n,r,l))?(M=o,0|(l=a)):(r=0|Xt(0|(r=0|xe(A,l)),((0|r)<0)<<31>>31,1,0),A=0|T(),s[(l=i)>>2]=r,s[l+4>>2]=A,M=o,0|(l=0))},_gridRing:function(e,t,n,r){return 0|F(e|=0,t|=0,n|=0,r|=0)?(cn(0|r,0,48*n|0),0|(r=0|function(e,t,n,r){e|=0,t|=0,r|=0;var i,o=0,a=0,A=0,l=0,c=0,u=0,h=0,d=0;if(i=M,M=M+16|0,A=i,!(n|=0))return s[r>>2]=e,s[r+4>>2]=t,M=i,0;do{if((0|n)>=0){if((0|n)>13780509){if(0|(o=0|lt(15,A)))break;o=0|s[(a=A)>>2],a=0|s[a+4>>2]}else h=0|Zt(0|n,0|(o=((0|n)<0)<<31>>31),3,0),a=0|T(),o=0|Xt(0|n,0|o,1,0),o=0|Xt(0|(o=0|Zt(0|h,0|a,0|o,0|T())),0|T(),1,0),a=0|T(),s[(h=A)>>2]=o,s[h+4>>2]=a;if(u=0|$t(o,8)){if(!(h=0|$t(o,4))){Ht(u),o=13;break}if(0|(o=0|D(e,t,n,u,h,o,a,0))){Ht(u),Ht(h);break}if(t=0|s[A>>2],(0|(A=0|s[A+4>>2]))>0|!(0|A)&t>>>0>0){o=0,l=0,c=0;do{!(0|(a=0|s[(e=u+(l<<3)|0)>>2]))&!(0|(e=0|s[e+4>>2]))||(0|s[h+(l<<2)>>2])!=(0|n)||(s[(d=r+(o<<3)|0)>>2]=a,s[d+4>>2]=e,o=o+1|0),l=0|Xt(0|l,0|c,1,0),c=0|T()}while((0|c)<(0|A)|(0|c)==(0|A)&l>>>0>>0)}Ht(u),Ht(h),o=0}else o=13}else o=2}while(0);return M=i,0|o}(e,t,n,r))):0|(r=0)},_gridRingUnsafe:F,_i64Add:Xt,_i64Subtract:Qt,_isPentagon:je,_isResClassIII:function(e,t){return t=0|nn(0|(e|=0),0|(t|=0),52),T(),1&t},_isValidCell:De,_isValidDirectedEdge:Se,_isValidIndex:function(e,t){e|=0;var n=0,s=0,i=0,o=0;if(!0&134217728==(-16777216&(t|=0))&&(s=0|nn(0|e,0|t,52),T(),s&=15,n=0|nn(0|e,0|t,45),T(),(n&=127)>>>0<=121)&&!(613566756&(o=0|rn(0|(i=0|nn(0|e,0|t,0|(o=3*(15^s)|0))),0|T(),0|o))&Qt(-1227133514,-1171,0|o,0|(i=0|T())))&!(4681&i&T())&&15==(0|s)|!(0|(o=0|nn(0|rn(0|~e,0|~t,0|(o=19+(3*s|0)|0)),0|T(),0|o)))&!(0|T())){if(!(0|r[20528+n|0]))return 1;if(!(0|e)&!(0|(n=8191&t)))return 1;if(o=0|sn(0|e,0|n),T(),(63-o|0)%3|0)return 1}return 0|Se(e,t)?0|(o=1):0|(o=1&!!(0|Bt(e,t)))},_isValidVertex:Bt,_latLngToCell:Ye,_llvm_ctlz_i64:sn,_llvm_maxnum_f64:on,_llvm_minnum_f64:an,_llvm_round_f64:An,_localIjToCell:function(e,t,n,r,i){var o,a;return e|=0,t|=0,n|=0,i|=0,a=M,M=M+16|0,o=a,(r|=0)?n=15:(n=0|function(e,t){t|=0;var n,r,i,o=0,a=0,A=0;if(a=0|s[(e|=0)>>2],s[t>>2]=a,A=0|s[e+4>>2],s[(r=t+4|0)>>2]=A,s[(i=t+8|0)>>2]=0,e=(o=(0|A)<(0|a))?a:A,(0|(o=o?A:a))<0){if(-2147483648==(0|o)||((0|e)>0?(2147483647-e|0)<(0|o):(-2147483648-e|0)>(0|o)))return 1;if((0|e)>-1?(-2147483648|e)>=(0|o):(-2147483648^e)<(0|o))return 1}return e=A-a|0,(0|a)<0?(o=0-a|0,s[r>>2]=e,s[i>>2]=o,s[t>>2]=0,a=0):(e=A,o=0),(0|e)<0&&(a=a-e|0,s[t>>2]=a,o=o-e|0,s[i>>2]=o,s[r>>2]=0,e=0),n=a-o|0,A=e-o|0,(0|o)<0?(s[t>>2]=n,s[r>>2]=A,s[i>>2]=0,e=A,A=n,o=0):A=a,(0|(a=(0|o)<(0|(a=(0|e)<(0|A)?e:A))?o:a))<=0||(s[t>>2]=A-a,s[r>>2]=e-a,s[i>>2]=o-a),0}(n,o))||(n=0|mt(e,t,o,i)),M=a,0|n},_malloc:Wt,_maxFaceCount:function(e,t,n){n|=0;var r=0,i=0;if(i=0|nn(0|(e|=0),0|(t|=0),45),T(),!(0|G(127&i)))return i=2,s[n>>2]=i,0;if(i=0|nn(0|e,0|t,52),T(),!(i&=15))return i=5,s[n>>2]=i,0;for(r=1;;){if(!(!((0|rn(7,0,3*(15-r|0)|0))&e)&!((0|T())&t))){r=2,e=6;break}if(!(r>>>0>>0)){r=5,e=6;break}r=r+1|0}return 6==(0|e)?(s[n>>2]=r,0):0},_maxGridDiskSize:function(e,t){t|=0;var n=0,r=0,i=0;return(0|(e|=0))<0?0|(t=2):(0|e)>13780509?0|(t=0|lt(15,t)):(i=0|Zt(0|e,0|(n=((0|e)<0)<<31>>31),3,0),r=0|T(),n=0|Xt(0|e,0|n,1,0),n=0|Xt(0|(n=0|Zt(0|i,0|r,0|n,0|T())),0|T(),1,0),e=0|T(),s[t>>2]=n,s[t+4>>2]=e,0|(t=0))},_maxPolygonToCellsSize:function(e,t,n,r){e|=0,t|=0,r|=0;var i,o=0,a=0,A=0,l=0,c=0;if(i=M,M=M+48|0,o=i+16|0,a=i+8|0,A=i,0|(n=0|Et(n|=0)))return M=i,0|n;if(l=0|s[(c=e)+4>>2],s[(n=a)>>2]=s[c>>2],s[n+4>>2]=l,xt(a,o),!(n=0|te(o,t,A))){if(t=0|s[a>>2],(0|(a=0|s[e+8>>2]))>0){o=0|s[e+12>>2],n=0;do{t=(0|s[o+(n<<3)>>2])+t|0,n=n+1|0}while((0|n)<(0|a))}o=0|s[(n=A)>>2],(0|(n=0|s[n+4>>2]))<(0|(a=((0|t)<0)<<31>>31))|(0|n)==(0|a)&o>>>0>>0?(s[(n=A)>>2]=t,s[n+4>>2]=a,n=a):t=o,l=0|Xt(0|t,0|n,12,0),c=0|T(),s[(n=A)>>2]=l,s[n+4>>2]=c,s[(n=r)>>2]=l,s[n+4>>2]=c,n=0}return M=i,0|n},_maxPolygonToCellsSizeExperimental:function(e,t,n,o){t|=0,n|=0,o|=0;var a,A,c=0,u=0,d=0,f=0,p=0,g=0,m=0,_=0;if(A=M,M=M+48|0,p=A+32|0,f=A+40|0,a=A,!(0|s[(e|=0)>>2]))return s[(g=o)>>2]=0,s[g+4>>2]=0,M=A,0;Oe(p,0,0,0),c=0|s[(d=p)>>2],d=0|s[d+4>>2];do{if(t>>>0>15)s[(g=a)>>2]=0,s[g+4>>2]=0,s[a+8>>2]=4,s[a+12>>2]=-1,n=a+29|0,s[(g=a+16|0)>>2]=0,s[g+4>>2]=0,s[g+8>>2]=0,r[g+12|0]=0,r[0|n]=0|r[0|f],r[n+1|0]=0|r[f+1|0],r[n+2|0]=0|r[f+2|0],n=4,g=9;else{if(0|(n=0|Et(n))){s[(p=a)>>2]=0,s[p+4>>2]=0,s[a+8>>2]=n,s[a+12>>2]=-1,g=a+29|0,s[(p=a+16|0)>>2]=0,s[p+4>>2]=0,s[p+8>>2]=0,r[p+12|0]=0,r[0|g]=0|r[0|f],r[g+1|0]=0|r[f+1|0],r[g+2|0]=0|r[f+2|0],g=9;break}if(!(n=0|$t(1+(0|s[e+8>>2])|0,32))){s[(g=a)>>2]=0,s[g+4>>2]=0,s[a+8>>2]=13,s[a+12>>2]=-1,n=a+29|0,s[(g=a+16|0)>>2]=0,s[g+4>>2]=0,s[g+8>>2]=0,r[g+12|0]=0,r[0|n]=0|r[0|f],r[n+1|0]=0|r[f+1|0],r[n+2|0]=0|r[f+2|0],n=13,g=9;break}Tt(e,n),s[(_=a)>>2]=c,s[_+4>>2]=d,s[(d=a+8|0)>>2]=0,s[a+12>>2]=t,s[a+20>>2]=e,s[a+24>>2]=n,r[a+28|0]=0,r[0|(c=a+29|0)]=0|r[0|f],r[c+1|0]=0|r[f+1|0],r[c+2|0]=0|r[f+2|0],s[a+16>>2]=3,m=+q(n),m*=+Q(n),u=+l(+ +i[n>>3]),u=m/+h(+ +an(+u,+ +l(+ +i[n+8>>3])))*6371.007180918475*6371.007180918475,n=0|s[(c=a+12|0)>>2];e:do{if((0|n)>0)do{if(At(n+-1|0,p),!(u/+i[p>>3]>10))break e;n=(_=0|s[c>>2])-1|0,s[c>>2]=n}while((0|_)>1)}while(0);if(vt(a),s[(c=o)>>2]=0,s[c+4>>2]=0,!(!(0|(n=0|s[(c=a)>>2]))&!(0|(c=0|s[c+4>>2]))))do{Ue(n,c,t,p),f=p,f=0|Xt(0|s[(e=o)>>2],0|s[e+4>>2],0|s[f>>2],0|s[f+4>>2]),e=0|T(),s[(_=o)>>2]=f,s[_+4>>2]=e,vt(a),n=0|s[(_=a)>>2],c=0|s[_+4>>2]}while(!(!(0|n)&!(0|c)));n=0|s[d>>2]}}while(0);return M=A,0|n},_memcpy:ln,_memset:cn,_originToDirectedEdges:function(e,t,n){n|=0;var r,i=0;return r=!(0|je(e|=0,t|=0)),t&=-2130706433,s[(i=n)>>2]=r?e:0,s[i+4>>2]=r?285212672|t:0,s[(i=n+8|0)>>2]=e,s[i+4>>2]=301989888|t,s[(i=n+16|0)>>2]=e,s[i+4>>2]=318767104|t,s[(i=n+24|0)>>2]=e,s[i+4>>2]=335544320|t,s[(i=n+32|0)>>2]=e,s[i+4>>2]=352321536|t,s[(n=n+40|0)>>2]=e,s[n+4>>2]=369098752|t,0},_pentagonCount:function(){return 12},_polygonToCells:function(e,t,n,r){e|=0,t|=0,r|=0;var i,o,a,A,l=0,c=0,u=0,h=0,d=0,f=0,p=0,g=0,m=0,_=0,b=0,v=0,y=0,w=0,x=0,E=0,S=0,C=0,k=0,R=0,P=0,I=0,L=0,N=0,O=0,F=0,U=0;if(A=M,M=M+112|0,i=A+80|0,d=A+72|0,o=A,a=A+56|0,0|(l=0|Et(n|=0)))return M=A,0|l;if(!(U=0|Wt(32+(s[(f=e+8|0)>>2]<<5)|0)))return M=A,13;if(Tt(e,U),!(l=0|Et(n))){if(F=0|s[(O=e)+4>>2],s[(l=d)>>2]=s[O>>2],s[l+4>>2]=F,xt(d,i),l=0|te(i,t,o))O=0,F=0;else{if(l=0|s[d>>2],(0|(c=0|s[f>>2]))>0){u=0|s[e+12>>2],n=0;do{l=(0|s[u+(n<<3)>>2])+l|0,n=n+1|0}while((0|n)!=(0|c));n=l}else n=l;c=0|s[(l=o)>>2],(0|(l=0|s[l+4>>2]))<(0|(u=((0|n)<0)<<31>>31))|(0|l)==(0|u)&c>>>0>>0?(s[(l=o)>>2]=n,s[l+4>>2]=u,l=u):n=c,O=0|Xt(0|n,0|l,12,0),F=0|T(),s[(l=o)>>2]=O,s[l+4>>2]=F,l=0}if(!l){if(!(n=0|$t(O,8)))return Ht(U),M=A,13;if(!(h=0|$t(O,8)))return Ht(U),Ht(n),M=A,13;s[(L=i)>>2]=0,s[L+4>>2]=0,N=0|s[(L=e)+4>>2],s[(l=d)>>2]=s[L>>2],s[l+4>>2]=N,l=0|j(d,O,F,t,i,n,h);e:do{if(l)Ht(n),Ht(h),Ht(U);else{t:do{if((0|s[f>>2])>0){for(u=e+12|0,c=0;l=0|j((0|s[u>>2])+(c<<3)|0,O,F,t,i,n,h),c=c+1|0,!(0|l);)if((0|c)>=(0|s[f>>2]))break t;Ht(n),Ht(h),Ht(U);break e}}while(0);(0|F)>0|!(0|F)&O>>>0>0&&cn(0|h,0,O<<3),L=0|s[(N=i)+4>>2];t:do{if((0|L)>0|!(0|L)&(0|s[N>>2])>>>0>0){R=n,P=h,I=n,L=h,N=n,l=n,S=n,C=h,k=h,n=h;n:for(;;){for(y=0,w=0,x=0,E=0,c=0,u=0;;){d=(h=o)+56|0;do{s[h>>2]=0,h=h+4|0}while((0|h)<(0|d));if(0|B(f=0|s[(t=R+(y<<3)|0)>>2],t=0|s[t+4>>2],1,o,0)){d=(h=o)+56|0;do{s[h>>2]=0,h=h+4|0}while((0|h)<(0|d));0|(h=0|$t(7,4))&&(D(f,t,1,o,h,7,0,0),Ht(h))}for(v=0;;){_=0|s[(b=o+(v<<3)|0)>>2],b=0|s[b+4>>2];r:do{if(!(0|_)&!(0|b))h=c,d=u;else{if(p=0|en(0|_,0|b,0|O,0|F),f=0|T(),!(!(0|(d=0|s[(t=h=r+(p<<3)|0)>>2]))&!(0|(t=0|s[t+4>>2])))){g=0,m=0;do{if((0|g)>(0|F)|(0|g)==(0|F)&m>>>0>O>>>0)break n;if((0|d)==(0|_)&(0|t)==(0|b)){h=c,d=u;break r}p=0|Jt(0|(h=0|Xt(0|p,0|f,1,0)),0|T(),0|O,0|F),f=0|T(),m=0|Xt(0|m,0|g,1,0),g=0|T(),d=0|s[(t=h=r+(p<<3)|0)>>2],t=0|s[t+4>>2]}while(!(!(0|d)&!(0|t)))}if(!(0|_)&!(0|b)){h=c,d=u;break}Ze(_,b,a),0|St(e,U,a)&&(m=0|Xt(0|c,0|u,1,0),u=0|T(),s[(g=h)>>2]=_,s[g+4>>2]=b,s[(c=P+(c<<3)|0)>>2]=_,s[c+4>>2]=b,c=m),h=c,d=u}}while(0);if((v=v+1|0)>>>0>=7)break;c=h,u=d}if(y=0|Xt(0|y,0|w,1,0),w=0|T(),x=0|Xt(0|x,0|E,1,0),E=0|T(),c=0|s[(u=i)>>2],!((0|E)<(0|(u=0|s[u+4>>2]))|(0|E)==(0|u)&x>>>0>>0))break;c=h,u=d}if((0|u)>0|!(0|u)&c>>>0>0){c=0,u=0;do{s[(E=R+(c<<3)|0)>>2]=0,s[E+4>>2]=0,c=0|Xt(0|c,0|u,1,0),u=0|T(),x=0|s[(E=i)+4>>2]}while((0|u)<(0|x)|((0|u)==(0|x)?c>>>0<(0|s[E>>2])>>>0:0))}if(s[(E=i)>>2]=h,s[E+4>>2]=d,!((0|d)>0|!(0|d)&h>>>0>0))break t;v=n,y=k,w=N,x=C,E=P,n=S,k=l,C=I,S=v,l=y,N=L,L=w,I=x,P=R,R=E}Ht(I),Ht(L),Ht(U),l=1;break e}l=h}while(0);Ht(U),Ht(n),Ht(l),l=0}}while(0);return M=A,0|l}}return Ht(U),M=A,0|l},_polygonToCellsExperimental:function(e,t,n,i,o,a){i|=0,o|=0,a|=0;var A,l,c,u=0,h=0,d=0,f=0,p=0,g=0,m=0,_=0;c=M,M=M+160|0,h=c+64|0,p=c+112|0,_=c,function(e,t,n,i){e|=0,t|=0,n|=0,i|=0;var o,a,A,l=0,c=0,u=0,h=0;A=M,M=M+48|0,o=A+40|0,a=A,Oe(c=A+32|0,0,0,0),u=0|s[c>>2],c=0|s[c+4>>2];do{if(n>>>0<=15){if(0|(l=0|Et(i))){s[(i=a)>>2]=0,s[i+4>>2]=0,s[a+8>>2]=l,s[a+12>>2]=-1,u=a+29|0,s[(i=a+16|0)>>2]=0,s[i+4>>2]=0,s[i+8>>2]=0,r[i+12|0]=0,r[0|u]=0|r[0|o],r[u+1|0]=0|r[o+1|0],r[u+2|0]=0|r[o+2|0];break}if(l=0|$t(1+(0|s[t+8>>2])|0,32)){Tt(t,l),s[(h=a)>>2]=u,s[h+4>>2]=c,s[a+8>>2]=0,s[a+12>>2]=n,s[a+16>>2]=i,s[a+20>>2]=t,s[a+24>>2]=l,r[a+28|0]=0,r[0|(u=a+29|0)]=0|r[0|o],r[u+1|0]=0|r[o+1|0],r[u+2|0]=0|r[o+2|0];break}s[(i=a)>>2]=0,s[i+4>>2]=0,s[a+8>>2]=13,s[a+12>>2]=-1,u=a+29|0,s[(i=a+16|0)>>2]=0,s[i+4>>2]=0,s[i+8>>2]=0,r[i+12|0]=0,r[0|u]=0|r[0|o],r[u+1|0]=0|r[o+1|0],r[u+2|0]=0|r[o+2|0];break}s[(u=a)>>2]=0,s[u+4>>2]=0,s[a+8>>2]=4,s[a+12>>2]=-1,h=a+29|0,s[(u=a+16|0)>>2]=0,s[u+4>>2]=0,s[u+8>>2]=0,r[u+12|0]=0,r[0|h]=0|r[0|o],r[h+1|0]=0|r[o+1|0],r[h+2|0]=0|r[o+2|0]}while(0);vt(a),s[e>>2]=s[a>>2],s[e+4>>2]=s[a+4>>2],s[e+8>>2]=s[a+8>>2],s[e+12>>2]=s[a+12>>2],s[e+16>>2]=s[a+16>>2],s[e+20>>2]=s[a+20>>2],s[e+24>>2]=s[a+24>>2],s[e+28>>2]=s[a+28>>2],M=A}(f=c+80|0,e|=0,t|=0,n|=0),tt(h,0|s[(d=f)>>2],0|s[d+4>>2],t),A=0|s[(d=h)>>2],d=0|s[d+4>>2],u=0|s[f+8>>2],s[(g=p+4|0)>>2]=s[f>>2],s[g+4>>2]=s[f+4>>2],s[g+8>>2]=s[f+8>>2],s[g+12>>2]=s[f+12>>2],s[g+16>>2]=s[f+16>>2],s[g+20>>2]=s[f+20>>2],s[g+24>>2]=s[f+24>>2],s[g+28>>2]=s[f+28>>2],s[(g=_)>>2]=A,s[g+4>>2]=d,s[(g=_+8|0)>>2]=u,t=p,n=36+(e=_+12|0)|0;do{s[e>>2]=s[t>>2],e=e+4|0,t=t+4|0}while((0|e)<(0|n));if(s[(p=_+48|0)>>2]=s[h>>2],s[p+4>>2]=s[h+4>>2],s[p+8>>2]=s[h+8>>2],s[p+12>>2]=s[h+12>>2],!(0|A)&!(0|d))return M=c,0|u;n=_+16|0,l=_+24|0,f=_+28|0,u=0,h=0,t=A,e=d;do{if(!((0|u)<(0|o)|(0|u)==(0|o)&h>>>0>>0)){m=4;break}if(d=h,h=0|Xt(0|h,0|u,1,0),u=0|T(),s[(d=a+(d<<3)|0)>>2]=t,s[d+4>>2]=e,rt(p),!(0|(t=0|s[(e=p)>>2]))&!(0|(e=0|s[e+4>>2]))){if(vt(n),!(0|(e=0|s[(t=n)>>2]))&!(0|(t=0|s[t+4>>2]))){m=10;break}nt(e,t,0|s[f>>2],p),t=0|s[(e=p)>>2],e=0|s[e+4>>2]}s[(d=_)>>2]=t,s[d+4>>2]=e}while(!(!(0|t)&!(0|e)));return 4==(0|m)?(0|(t=0|s[(e=_+40|0)>>2])&&Ht(t),s[(m=_+16|0)>>2]=0,s[m+4>>2]=0,s[l>>2]=0,s[_+36>>2]=0,s[f>>2]=-1,s[_+32>>2]=0,s[e>>2]=0,nt(0,0,0,p),s[_>>2]=0,s[_+4>>2]=0,s[g>>2]=0,M=c,0|(_=14)):(10==(0|m)&&(s[_>>2]=0,s[_+4>>2]=0,s[g>>2]=s[l>>2]),_=0|s[g>>2],M=c,0|_)},_readInt64AsDoubleFromPointer:function(e){return+(+((0|s[(e|=0)>>2])>>>0)+4294967296*+(0|s[e+4>>2]))},_res0CellCount:function(){return 122},_round:un,_sbrk:hn,_sizeOfCellBoundary:function(){return 168},_sizeOfCoordIJ:function(){return 8},_sizeOfGeoLoop:function(){return 8},_sizeOfGeoPolygon:function(){return 16},_sizeOfH3Index:function(){return 8},_sizeOfLatLng:function(){return 16},_sizeOfLinkedGeoPolygon:function(){return 12},_uncompactCells:function(e,t,n,r,i,o,a){e|=0,r|=0,i|=0,o|=0;var A,l=0,c=0,u=0,h=0,d=0,f=0,p=0,g=0;if(A=M,M=M+16|0,g=A,!((0|(n|=0))>0|!(0|n)&(t|=0)>>>0>0))return M=A,0;if((0|(a|=0))>=16)return M=A,12;f=0,p=0,d=0,l=0;e:for(;;){if(h=0|nn(0|(c=0|s[(u=e+(f<<3)|0)>>2]),0|(u=0|s[u+4>>2]),52),T(),(15&h)>(0|a)){l=12,c=11;break}if(tt(g,c,u,a),!(0|(u=0|s[(h=g)>>2]))&!(0|(h=0|s[h+4>>2])))c=d;else{c=d;do{if(!((0|l)<(0|o)|(0|l)==(0|o)&c>>>0>>0)){c=10;break e}s[(d=r+(c<<3)|0)>>2]=u,s[d+4>>2]=h,c=0|Xt(0|c,0|l,1,0),l=0|T(),rt(g),u=0|s[(d=g)>>2],h=0|s[d+4>>2]}while(!(!(0|u)&!(0|h)))}if(f=0|Xt(0|f,0|p,1,0),!((0|(p=0|T()))<(0|n)|(0|p)==(0|n)&f>>>0>>0)){l=0,c=11;break}d=c}return 10==(0|c)?(M=A,0|(g=14)):11==(0|c)?(M=A,0|l):0},_uncompactCellsSize:function(e,t,n,r,i){e|=0,t|=0,n|=0,r|=0,i|=0;var o,a,A=0,l=0,c=0,u=0,h=0,d=0;a=M,M=M+16|0,o=a;e:do{if((0|n)>0|!(0|n)&t>>>0>0){for(h=0,l=0,A=0,d=0;;){if(!(!(0|(c=0|s[(u=e+(h<<3)|0)>>2]))&!(0|(u=0|s[u+4>>2]))||(u=!(0|Ue(c,u,r,o)),l=0|Xt(0|s[(c=o)>>2],0|s[c+4>>2],0|l,0|A),A=0|T(),u))){A=12;break}if(h=0|Xt(0|h,0|d,1,0),!((0|(d=0|T()))<(0|n)|(0|d)==(0|n)&h>>>0>>0))break e}return M=a,0|A}l=0,A=0}while(0);return s[i>>2]=l,s[i+4>>2]=A,M=a,0},_vertexToLatLng:function(e,t,n){n|=0;var r,i,o,a,A=0,l=0;return a=M,M=M+192|0,i=a,o=a+168|0,A=0|nn(0|(e|=0),0|(t|=0),56),T(),A&=7,0|(r=0|Ke(e,l=-2130706433&t|134217728,o))?(M=a,0|(l=r)):(t=0|nn(0|e,0|t,52),T(),t&=15,0|je(e,l)?Re(o,t,A,1,i):Le(o,t,A,1,i),l=i+8|0,s[n>>2]=s[l>>2],s[n+4>>2]=s[l+4>>2],s[n+8>>2]=s[l+8>>2],s[n+12>>2]=s[l+12>>2],M=a,0|(l=0))},establishStackSpace:function(e,t){M=e|=0},stackAlloc:function(e){var t;return t=M,M=15+(M=M+(e|=0)|0)&-16,0|t},stackRestore:function(e){M=e|=0},stackSave:function(){return 0|M}}}({Math:Math,Int8Array:Int8Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Float32Array:Float32Array,Float64Array:Float64Array},{b:function(e){A=e},c:function(){return A},d:function(e,t,n,r){ne("Assertion failed: "+b(e)+", at: "+[t?b(t):"unknown filename",n,r?b(r):"unknown function"])},e:function(e){return n.___errno_location&&(p[n.___errno_location()>>2]=e),e},f:G,g:function(e,t,n){d.set(d.subarray(t,t+n),e)},h:function(e){var t=G(),n=16777216,r=2130706432;if(e>r)return!1;for(var s=Math.max(t,16777216);s0))return 0;for(var s=n+r-1,i=0;i=55296&&o<=57343&&(o=65536+((1023&o)<<10)|1023&e.charCodeAt(++i)),o<=127){if(n>=s)break;t[n++]=o}else if(o<=2047){if(n+1>=s)break;t[n++]=192|o>>6,t[n++]=128|63&o}else if(o<=65535){if(n+2>=s)break;t[n++]=224|o>>12,t[n++]=128|o>>6&63,t[n++]=128|63&o}else{if(n+3>=s)break;t[n++]=240|o>>18,t[n++]=128|o>>12&63,t[n++]=128|o>>6&63,t[n++]=128|63&o}}t[n]=0}(e,d,t,n)}(e,t=Q(n),n)}return t},array:function(e){var t,n,r=Q(e.length);return t=e,n=r,h.set(t,n),r}},i=c(e),o=[],a=0;if(r)for(var A=0;A>1]=t;break;case"i32":p[e>>2]=t;break;case"i64":O=[t>>>0,(D=t,+P(D)>=1?D>0?(0|L(+M(D/4294967296),4294967295))>>>0:~~+I((D-+(~~D>>>0))/4294967296)>>>0:0)],p[e>>2]=O[0],p[e+4>>2]=O[1];break;case"float":g[e>>2]=t;break;case"double":m[e>>3]=t;break;default:ne("invalid type for setValue: "+n)}},n.getValue=function(e,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return h[0|e];case"i16":return f[e>>1];case"i32":case"i64":return p[e>>2];case"float":return g[e>>2];case"double":return m[e>>3];default:ne("invalid type for getValue: "+t)}return null},F){j(F)||($=F,F=n.locateFile?n.locateFile($,i):i+$),N++,n.monitorRunDependencies&&n.monitorRunDependencies(N);var K=function(e){e.byteLength&&(e=new Uint8Array(e)),d.set(e,8),n.memoryInitializerRequest&&delete n.memoryInitializerRequest.response,function(){if(N--,n.monitorRunDependencies&&n.monitorRunDependencies(N),0==N&&B){var e=B;B=null,e()}}()},Z=function(){s(F,K,function(){throw"could not load memory initializer "+F})},J=V(F);if(J)K(J.buffer);else if(n.memoryInitializerRequest){var ee=function(){var e=n.memoryInitializerRequest,t=e.response;if(200!==e.status&&0!==e.status){var r=V(n.memoryInitializerRequestURL);if(!r)return void Z();t=r.buffer}K(t)};n.memoryInitializerRequest.response?setTimeout(ee,0):n.memoryInitializerRequest.addEventListener("load",ee)}else Z()}function te(e){function t(){X||(X=!0,l||(x(T),x(S),n.onRuntimeInitialized&&n.onRuntimeInitialized(),function(){if(n.postRun)for("function"==typeof n.postRun&&(n.postRun=[n.postRun]);n.postRun.length;)R(n.postRun.shift());x(C)}()))}N>0||(function(){if(n.preRun)for("function"==typeof n.preRun&&(n.preRun=[n.preRun]);n.preRun.length;)k(n.preRun.shift());x(E)}(),N>0||(n.setStatus?(n.setStatus("Running..."),setTimeout(function(){setTimeout(function(){n.setStatus("")},1),t()},1)):t()))}function ne(e){throw n.onAbort&&n.onAbort(e),o(e+=""),a(e),l=!0,"abort("+e+"). Build with -s ASSERTIONS=1 for more info."}if(B=function e(){X||te(),X||(B=e)},n.run=te,n.abort=ne,n.preInit)for("function"==typeof n.preInit&&(n.preInit=[n.preInit]);n.preInit.length>0;)n.preInit.pop()();return te(),e}("object"==typeof Oe?Oe:{}),Fe="number",Ue={0:"Success",1:"The operation failed but a more specific error is not available",2:"Argument was outside of acceptable range",3:"Latitude or longitude arguments were outside of acceptable range",4:"Resolution argument was outside of acceptable range",5:"Cell argument was not valid",6:"Directed edge argument was not valid",7:"Undirected edge argument was not valid",8:"Vertex argument was not valid",9:"Pentagon distortion was encountered",10:"Duplicate input",11:"Cell arguments were not neighbors",12:"Cell arguments had incompatible resolutions",13:"Memory allocation failed",14:"Bounds of provided memory were insufficient",15:"Mode or flags argument was not valid",16:"Index argument was not valid",17:"Base cell number was outside of acceptable range",18:"Child indexing digits invalid",19:"Child indexing digits refer to a deleted subsequence"},je={1e3:"Unknown unit",1001:"Array length out of bounds",1002:"Got unexpected null value for H3 index"};function Ge(e,t,n){var r=n&&"value"in n,s=new Error((e[t]||"Unknown error")+" (code: "+t+(r?", value: "+n.value:"")+")");return s.code=t,s}function ze(e){if(0!==e)throw function(e,t){return Ge(Ue,e,2===arguments.length?{value:t}:{})}(e)}var Ve={};[["sizeOfH3Index",Fe],["sizeOfLatLng",Fe],["sizeOfCellBoundary",Fe],["sizeOfGeoLoop",Fe],["sizeOfGeoPolygon",Fe],["sizeOfLinkedGeoPolygon",Fe],["sizeOfCoordIJ",Fe],["readInt64AsDoubleFromPointer",Fe],["isValidCell",Fe,[Fe,Fe]],["isValidIndex",Fe,[Fe,Fe]],["latLngToCell",Fe,[Fe,Fe,Fe,Fe]],["cellToLatLng",Fe,[Fe,Fe,Fe]],["cellToBoundary",Fe,[Fe,Fe,Fe]],["maxGridDiskSize",Fe,[Fe,Fe]],["gridDisk",Fe,[Fe,Fe,Fe,Fe]],["gridDiskDistances",Fe,[Fe,Fe,Fe,Fe,Fe]],["gridRing",Fe,[Fe,Fe,Fe,Fe]],["gridRingUnsafe",Fe,[Fe,Fe,Fe,Fe]],["maxPolygonToCellsSize",Fe,[Fe,Fe,Fe,Fe]],["polygonToCells",Fe,[Fe,Fe,Fe,Fe]],["maxPolygonToCellsSizeExperimental",Fe,[Fe,Fe,Fe,Fe]],["polygonToCellsExperimental",Fe,[Fe,Fe,Fe,Fe,Fe,Fe]],["cellsToLinkedMultiPolygon",Fe,[Fe,Fe,Fe]],["destroyLinkedMultiPolygon",null,[Fe]],["compactCells",Fe,[Fe,Fe,Fe,Fe]],["uncompactCells",Fe,[Fe,Fe,Fe,Fe,Fe,Fe]],["uncompactCellsSize",Fe,[Fe,Fe,Fe,Fe,Fe]],["isPentagon",Fe,[Fe,Fe]],["isResClassIII",Fe,[Fe,Fe]],["getBaseCellNumber",Fe,[Fe,Fe]],["getResolution",Fe,[Fe,Fe]],["getIndexDigit",Fe,[Fe,Fe,Fe]],["constructCell",Fe,[Fe,Fe,Fe,Fe]],["maxFaceCount",Fe,[Fe,Fe,Fe]],["getIcosahedronFaces",Fe,[Fe,Fe,Fe]],["cellToParent",Fe,[Fe,Fe,Fe,Fe]],["cellToChildren",Fe,[Fe,Fe,Fe,Fe]],["cellToCenterChild",Fe,[Fe,Fe,Fe,Fe]],["cellToChildrenSize",Fe,[Fe,Fe,Fe,Fe]],["cellToChildPos",Fe,[Fe,Fe,Fe,Fe]],["childPosToCell",Fe,[Fe,Fe,Fe,Fe,Fe,Fe]],["areNeighborCells",Fe,[Fe,Fe,Fe,Fe,Fe]],["cellsToDirectedEdge",Fe,[Fe,Fe,Fe,Fe,Fe]],["getDirectedEdgeOrigin",Fe,[Fe,Fe,Fe]],["getDirectedEdgeDestination",Fe,[Fe,Fe,Fe]],["isValidDirectedEdge",Fe,[Fe,Fe]],["directedEdgeToCells",Fe,[Fe,Fe,Fe]],["originToDirectedEdges",Fe,[Fe,Fe,Fe]],["directedEdgeToBoundary",Fe,[Fe,Fe,Fe]],["gridDistance",Fe,[Fe,Fe,Fe,Fe,Fe]],["gridPathCells",Fe,[Fe,Fe,Fe,Fe,Fe]],["gridPathCellsSize",Fe,[Fe,Fe,Fe,Fe,Fe]],["cellToLocalIj",Fe,[Fe,Fe,Fe,Fe,Fe,Fe]],["localIjToCell",Fe,[Fe,Fe,Fe,Fe,Fe]],["getHexagonAreaAvgM2",Fe,[Fe,Fe]],["getHexagonAreaAvgKm2",Fe,[Fe,Fe]],["getHexagonEdgeLengthAvgM",Fe,[Fe,Fe]],["getHexagonEdgeLengthAvgKm",Fe,[Fe,Fe]],["greatCircleDistanceM",Fe,[Fe,Fe]],["greatCircleDistanceKm",Fe,[Fe,Fe]],["greatCircleDistanceRads",Fe,[Fe,Fe]],["cellAreaM2",Fe,[Fe,Fe,Fe]],["cellAreaKm2",Fe,[Fe,Fe,Fe]],["cellAreaRads2",Fe,[Fe,Fe,Fe]],["edgeLengthM",Fe,[Fe,Fe,Fe]],["edgeLengthKm",Fe,[Fe,Fe,Fe]],["edgeLengthRads",Fe,[Fe,Fe,Fe]],["getNumCells",Fe,[Fe,Fe]],["getRes0Cells",Fe,[Fe]],["res0CellCount",Fe],["getPentagons",Fe,[Fe,Fe]],["pentagonCount",Fe],["cellToVertex",Fe,[Fe,Fe,Fe,Fe]],["cellToVertexes",Fe,[Fe,Fe,Fe]],["vertexToLatLng",Fe,[Fe,Fe,Fe]],["isValidVertex",Fe,[Fe,Fe]]].forEach(function(e){Ve[e[0]]=Oe.cwrap.apply(Oe,e)});var We=16,He=Ve.sizeOfH3Index(),$e=Ve.sizeOfLatLng(),Xe=Ve.sizeOfCellBoundary();Ve.sizeOfGeoPolygon(),Ve.sizeOfGeoLoop(),Ve.sizeOfLinkedGeoPolygon(),Ve.sizeOfCoordIJ();var Qe=/[^0-9a-fA-F]/;function Ye(e){if(e>=0)return e.toString(We);var t=qe(8,(e&=2147483647).toString(We));return(parseInt(t[0],We)+8).toString(We)+t.substring(1)}function qe(e,t){for(var n=e-t.length,r="",s=0;s.85?.9+(o-.85)/.15*.1:.1+(o-.15)/.7*.8;var o;return it(r[Math.min(23,Math.floor(24*i))])}function at({coveragePoints:e,visible:t,terrainEnabled:n=!1,brightness:r=.7}){const{current:s}=w(),[o,a]=_.useState(null),[A,l]=_.useState(!1),c=_.useRef({aborted:!1}),u=_.useRef(0),h=function(e){const[t,n]=_.useState(e);return _.useEffect(()=>{const t=setTimeout(()=>n(e),300);return()=>clearTimeout(t)},[e,300]),t}(e),d=_.useMemo(()=>function(){var e;const t=j();return 24===t.length&&0!==(null==(e=t[0])?void 0:e[0])?t:st}(),[]);_.useEffect(()=>{if(!h||!Array.isArray(h)||0===h.length)return a(null),void(u.current=0);if(h.length===u.current&&o)return;u.current=h.length,c.current.aborted=!0,c.current={aborted:!1};const e=c.current;l(!0);const{cells:t,minQuality:n,maxQuality:r}=function(e){const t=new Map;for(const i of e){if("number"!=typeof i.lat||"number"!=typeof i.lon||isNaN(i.lat)||isNaN(i.lon))continue;const e=Je(i.lat,i.lon,8),n=t.get(e),r=i.weight;n?(n.count++,n.qualitySum+=r):t.set(e,{count:1,qualitySum:r})}const n=[];let r=1/0,s=-1/0;for(const[i,o]of t.entries()){const e=o.qualitySum/o.count;n.push({hexId:i,count:o.count,avgQuality:e}),r=Math.min(r,e),s=Math.max(s,e)}return{cells:n,minQuality:n.length>0?r:0,maxQuality:n.length>0?s:0}}(h);if(0===t.length)return a(null),void l(!1);if(t.length<500){const s=function(e,t,n,r){const s=[];for(const i of e){const e=et(i.hexId).map(([e,t])=>[t,e]);e.push(e[0]);const o=ot(i.avgQuality,t,n,r);s.push({type:"Feature",properties:{color:o,quality:i.avgQuality,count:i.count},geometry:{type:"Polygon",coordinates:[e]}})}return{type:"FeatureCollection",features:s}}(t,n,r,d);return void(e.aborted||(a(s),l(!1)))}return async function(e,t,n,r,s){const i=[];let o=0;for(;o[t,e]);a.push(a[0]);const A=ot(s.avgQuality,t,n,r);i.push({type:"Feature",properties:{color:A,quality:s.avgQuality,count:s.count},geometry:{type:"Polygon",coordinates:[a]}})}orequestAnimationFrame(e))}return{type:"FeatureCollection",features:i}}(t,n,r,d,e).then(t=>{!e.aborted&&t&&a(t)}).finally(()=>{e.aborted||l(!1)}),()=>{e.aborted=!0}},[h,d]),_.useEffect(()=>{var e;const n=null==(e=null==s?void 0:s.getMap)?void 0:e.call(s);if(!n)return;const i=()=>{var e,s;try{const i=n.getLayer(rt),a=n.getSource(nt);if(t&&o&&o.features.length>0){if(a?n.getSource(nt).setData(o):n.addSource(nt,{type:"geojson",data:o}),!i){const t=null==(s=null==(e=n.getStyle())?void 0:e.layers)?void 0:s.find(e=>"symbol"===e.type);n.addLayer({id:rt,type:"fill",source:nt,paint:{"fill-color":["get","color"],"fill-opacity":r}},null==t?void 0:t.id)}}else i&&n.removeLayer(rt),a&&n.removeSource(nt)}catch(i){}};n.isStyleLoaded()?i():n.once("style.load",i)},[s,t,o,n]),_.useEffect(()=>{var e;const n=null==(e=null==s?void 0:s.getMap)?void 0:e.call(s);if(n&&t)try{n.getLayer(rt)&&n.setPaintProperty(rt,"fill-opacity",r)}catch{}},[s,r,t]),_.useEffect(()=>()=>{var e;const t=null==(e=null==s?void 0:s.getMap)?void 0:e.call(s);if(t)try{t.getLayer(rt)&&t.removeLayer(rt),t.getSource(nt)&&t.removeSource(nt)}catch{}},[s]);const f=(null==o?void 0:o.features.length)??0;return f>0&&t?i.jsx("div",{"data-testid":"wardriving-hexlayer-maplibre-active","data-point-count":(null==e?void 0:e.length)||0,"data-cell-count":f,"data-terrain-enabled":n,"data-is-processing":A,style:{display:"none"}}):null}const At="terrain-dem",lt="terrain-hillshade";function ct({enabled:e,exaggeration:t=2}){const{current:n}=w();return _.useEffect(()=>{var r;const s=null==(r=null==n?void 0:n.getMap)?void 0:r.call(n);if(!s)return;const i=()=>{var n,r;try{if(s.getSource(At)||s.addSource(At,{type:"raster-dem",tiles:["https://s3.amazonaws.com/elevation-tiles-prod/terrarium/{z}/{x}/{y}.png"],encoding:"terrarium",tileSize:256,maxzoom:10}),e){if(s.setCenterClampedToGround(!1),s.setTerrain({source:At,exaggeration:t}),!s.getLayer(lt)){const e=null==(r=null==(n=s.getStyle())?void 0:n.layers)?void 0:r.find(e=>"symbol"===e.type);s.addLayer({id:lt,type:"hillshade",source:At,paint:{"hillshade-shadow-color":"rgba(10, 10, 10, 0.5)","hillshade-highlight-color":"rgba(200, 195, 185, 0.4)","hillshade-accent-color":"rgba(80, 65, 55, 0.35)","hillshade-illumination-direction":315,"hillshade-exaggeration":.25}},null==e?void 0:e.id)}s.setMaxPitch(70),s.getPitch()<30&&!s.isMoving()&&setTimeout(()=>{!s.isMoving()&&s.getPitch()<30&&s.easeTo({pitch:45,duration:1e3})},200)}else s.setTerrain(null),s.setCenterClampedToGround(!0),s.getLayer(lt)&&s.removeLayer(lt),s.getPitch()>0&&!s.isMoving()&&s.easeTo({pitch:0,duration:800}),s.setMaxPitch(60)}catch(i){}};return s.isStyleLoaded()?i():s.once("style.load",i),()=>{var e;try{const t=null==(e=null==n?void 0:n.getMap)?void 0:e.call(n);if(!t)return;t.isStyleLoaded()&&(t.setTerrain(null),t.getLayer(lt)&&t.removeLayer(lt))}catch{}}},[n,e,t]),null}function ut(e){return e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2}function ht(e){return e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2}var dt,ft={},pt={};var gt,mt,_t={};var bt,vt,yt=(mt||(mt=1,bt=function(){if(dt)return pt;dt=1;var e=y();function t(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n]/;function f(e){if("boolean"==typeof e||"number"==typeof e)return""+e;e=""+e;var t=d.exec(e);if(t){var n,r="",s=0;for(n=t.index;n"),x(e,o,r),"string"==typeof r?(e.push(f(r)),null):r}var T=/^[a-zA-Z][a-zA-Z:_\.\-\d]*$/,S=new Map;function C(e){var n=S.get(e);if(void 0===n){if(!T.test(e))throw Error(t(65,e));n="<"+e,S.set(e,n)}return n}function k(e,n,r){if(e.push('\x3c!--$?--\x3e')}var R=/[<\u2028\u2029]/g;function P(e){return JSON.stringify(e).replace(R,function(e){switch(e){case"<":return"\\u003c";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw Error("escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React")}})}function I(e,t,n,r){return n.generateStaticMarkup?(e.push(f(t)),!1):(""===t?e=r:(r&&e.push("\x3c!-- --\x3e"),e.push(f(t)),e=!0),e)}var M=Object.assign,L=Symbol.for("react.element"),N=Symbol.for("react.portal"),B=Symbol.for("react.fragment"),D=Symbol.for("react.strict_mode"),O=Symbol.for("react.profiler"),F=Symbol.for("react.provider"),U=Symbol.for("react.context"),j=Symbol.for("react.forward_ref"),G=Symbol.for("react.suspense"),z=Symbol.for("react.suspense_list"),V=Symbol.for("react.memo"),W=Symbol.for("react.lazy"),H=Symbol.for("react.scope"),$=Symbol.for("react.debug_trace_mode"),X=Symbol.for("react.legacy_hidden"),Q=Symbol.for("react.default_value"),Y=Symbol.iterator;function q(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case B:return"Fragment";case N:return"Portal";case O:return"Profiler";case D:return"StrictMode";case G:return"Suspense";case z:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case U:return(e.displayName||"Context")+".Consumer";case F:return(e._context.displayName||"Context")+".Provider";case j:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case V:return null!==(t=e.displayName||null)?t:q(e.type)||"Memo";case W:t=e._payload,e=e._init;try{return q(e(t))}catch(n){}}return null}var K={};function Z(e,t){if(!(e=e.contextTypes))return K;var n,r={};for(n in e)r[n]=t[n];return r}var J=null;function ee(e,n){if(e!==n){e.context._currentValue2=e.parentValue,e=e.parent;var r=n.parent;if(null===e){if(null!==r)throw Error(t(401))}else{if(null===r)throw Error(t(401));ee(e,r)}n.context._currentValue2=n.value}}function te(e){e.context._currentValue2=e.parentValue,null!==(e=e.parent)&&te(e)}function ne(e){var t=e.parent;null!==t&&ne(t),e.context._currentValue2=e.value}function re(e,n){if(e.context._currentValue2=e.parentValue,null===(e=e.parent))throw Error(t(402));e.depth===n.depth?ee(e,n):re(e,n)}function se(e,n){var r=n.parent;if(null===r)throw Error(t(402));e.depth===r.depth?ee(e,r):se(e,r),n.context._currentValue2=n.value}function ie(e){var t=J;t!==e&&(null===t?ne(e):null===e?te(t):t.depth===e.depth?ee(t,e):t.depth>e.depth?re(t,e):se(t,e),J=e)}var oe={isMounted:function(){return!1},enqueueSetState:function(e,t){null!==(e=e._reactInternals).queue&&e.queue.push(t)},enqueueReplaceState:function(e,t){(e=e._reactInternals).replace=!0,e.queue=[t]},enqueueForceUpdate:function(){}};function ae(e,t,n,r){var s=void 0!==e.state?e.state:null;e.updater=oe,e.props=n,e.state=s;var i={queue:[],replace:!1};e._reactInternals=i;var o=t.contextType;if(e.context="object"==typeof o&&null!==o?o._currentValue2:r,"function"==typeof(o=t.getDerivedStateFromProps)&&(s=null==(o=o(n,s))?s:M({},s,o),e.state=s),"function"!=typeof t.getDerivedStateFromProps&&"function"!=typeof e.getSnapshotBeforeUpdate&&("function"==typeof e.UNSAFE_componentWillMount||"function"==typeof e.componentWillMount))if(t=e.state,"function"==typeof e.componentWillMount&&e.componentWillMount(),"function"==typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),t!==e.state&&oe.enqueueReplaceState(e,e.state,null),null!==i.queue&&0>=o,s-=o,{id:1<<32-ce(t)+s|n<>>=0)?32:31-(ue(e)/he|0)|0},ue=Math.log,he=Math.LN2,de="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},fe=null,pe=null,ge=null,me=null,_e=!1,be=!1,ve=0,ye=null,we=0;function xe(){if(null===fe)throw Error(t(321));return fe}function Ee(){if(0"),x(r,c,l),l;case"option":c=A.selectedValue,r.push(C("option"));var h=u=null,d=null,p=null;for(l in i)if(n.call(i,l)){var g=i[l];if(null!=g)switch(l){case"children":u=g;break;case"selected":d=g;break;case"dangerouslySetInnerHTML":p=g;break;case"value":h=g;default:w(r,a,l,g)}}if(null!=c)if(i=null!==h?""+h:function(t){var n="";return e.Children.forEach(t,function(e){null!=e&&(n+=e)}),n}(u),m(c)){for(a=0;a"),x(r,p,u),u;case"textarea":for(u in r.push(C("textarea")),p=c=l=null,i)if(n.call(i,u)&&null!=(h=i[u]))switch(u){case"children":p=h;break;case"value":l=h;break;case"defaultValue":c=h;break;case"dangerouslySetInnerHTML":throw Error(t(91));default:w(r,a,u,h)}if(null===l&&null!==c&&(l=c),r.push(">"),null!=p){if(null!=l)throw Error(t(92));if(m(p)&&1"),null;case"menuitem":for(var _ in r.push(C("menuitem")),i)if(n.call(i,_)&&null!=(l=i[_]))switch(_){case"children":case"dangerouslySetInnerHTML":throw Error(t(400));default:w(r,a,_,l)}return r.push(">"),null;case"title":for(g in r.push(C("title")),l=null,i)if(n.call(i,g)&&null!=(c=i[g]))switch(g){case"children":l=c;break;case"dangerouslySetInnerHTML":throw Error(t(434));default:w(r,a,g,c)}return r.push(">"),l;case"listing":case"pre":for(h in r.push(C(s)),c=l=null,i)if(n.call(i,h)&&null!=(u=i[h]))switch(h){case"children":l=u;break;case"dangerouslySetInnerHTML":c=u;break;default:w(r,a,h,u)}if(r.push(">"),null!=c){if(null!=l)throw Error(t(60));if("object"!=typeof c||!("__html"in c))throw Error(t(61));null!=(i=c.__html)&&("string"==typeof i&&0"),null;case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return E(r,i,s,a);case"html":return 0===A.insertionMode&&r.push(""),E(r,i,s,a);default:if(-1===s.indexOf("-")&&"string"!=typeof i.is)return E(r,i,s,a);for(d in r.push(C(s)),c=l=null,i)if(n.call(i,d)&&null!=(u=i[d]))switch(d){case"children":l=u;break;case"dangerouslySetInnerHTML":c=u;break;case"style":v(r,a,u);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":break;default:o(d)&&"function"!=typeof u&&"symbol"!=typeof u&&r.push(" ",d,'="',f(u),'"')}return r.push(">"),x(r,c,l),l}}((A=s.blockedSegment).chunks,i,a,r.responseState,A.formatContext),A.lastPushedText=!1,c=A.formatContext,A.formatContext=function(e,t,n){switch(t){case"select":return _(1,null!=n.value?n.value:n.defaultValue);case"svg":return _(2,null);case"math":return _(3,null);case"foreignObject":return _(1,null);case"table":return _(4,null);case"thead":case"tbody":case"tfoot":return _(5,null);case"colgroup":return _(7,null);case"tr":return _(6,null)}return 4<=e.insertionMode||0===e.insertionMode?_(1,null):e}(c,i,a),Qe(r,s,l),A.formatContext=c,i){case"area":case"base":case"br":case"col":case"embed":case"hr":case"img":case"input":case"keygen":case"link":case"meta":case"param":case"source":case"track":case"wbr":break;default:A.chunks.push("",i,">")}A.lastPushedText=!1}}function $e(e,n,r){if(n.node=r,"object"==typeof r&&null!==r){switch(r.$$typeof){case L:return void He(e,n,r.type,r.props,r.ref);case N:throw Error(t(257));case W:var s=r._init;return void $e(e,n,r=s(r._payload))}if(m(r))return void Xe(e,n,r);if((s=null===r||"object"!=typeof r?null:"function"==typeof(s=Y&&r[Y]||r["@@iterator"])?s:null)&&(s=s.call(r))){if(!(r=s.next()).done){var i=[];do{i.push(r.value),r=s.next()}while(!r.done);Xe(e,n,i)}return}throw e=Object.prototype.toString.call(r),Error(t(31,"[object Object]"===e?"object with keys {"+Object.keys(r).join(", ")+"}":e))}"string"==typeof r?(s=n.blockedSegment).lastPushedText=I(n.blockedSegment.chunks,r,e.responseState,s.lastPushedText):"number"==typeof r&&((s=n.blockedSegment).lastPushedText=I(n.blockedSegment.chunks,""+r,e.responseState,s.lastPushedText))}function Xe(e,t,n){for(var r=n.length,s=0;s');case 1:r.status=2;var i=!0;s=r.chunks;var o=0;r=r.children;for(var a=0;a")),et(e,n,r),!!e.responseState.generateStaticMarkup||n.push("\x3c!--/$--\x3e");if(0e.progressiveChunkSize)return s.rootSegmentID=e.nextSegmentId++,e.completedBoundaries.push(s),k(n,e.responseState,s.id),et(e,n,r),n.push("\x3c!--/$--\x3e");if(e.responseState.generateStaticMarkup||n.push("\x3c!--$--\x3e"),1!==(r=s.completedSegments).length)throw Error(t(391));return tt(e,n,r[0]),!!e.responseState.generateStaticMarkup||n.push("\x3c!--/$--\x3e")}function nt(e,n,r){return function(e,n,r,s){switch(r.insertionMode){case 0:case 1:return e.push('